
Product
Rubygems Ecosystem Support Now Generally Available
Socket's Rubygems ecosystem support is moving from beta to GA, featuring enhanced security scanning to detect supply chain threats beyond traditional CVEs in your Ruby dependencies.
@syncfusion/ej2-base
Advanced tools
A common package of Essential JS 2 base libraries, methods and class definitions
@syncfusion/ej2-base is a foundational package for Syncfusion's Essential JS 2 library. It provides core utilities, base classes, and common functionalities that are used across various Syncfusion components. This package is essential for building and managing Syncfusion components in a consistent and efficient manner.
Event Handling
The EventHandler module allows you to add, remove, and manage event listeners on DOM elements. In this example, a click event listener is added to an element with the ID 'myElement'.
const { EventHandler } = require('@syncfusion/ej2-base');
function clickHandler() {
console.log('Element clicked');
}
const element = document.getElementById('myElement');
EventHandler.add(element, 'click', clickHandler);
Data Binding
The DataManager module provides a way to manage and query data collections. In this example, a DataManager is created with a simple array of objects, and a query is executed to find an object with an id of 1.
const { DataManager, Query } = require('@syncfusion/ej2-base');
const data = [
{ id: 1, name: 'John' },
{ id: 2, name: 'Jane' }
];
const dataManager = new DataManager(data);
const query = new Query().where('id', 'equal', 1);
dataManager.executeQuery(query).then((result) => {
console.log(result);
});
Utility Functions
The extend function is a utility that allows you to merge the properties of multiple objects into a single object. In this example, obj1 and obj2 are merged, with properties from obj2 overwriting those in obj1.
const { extend } = require('@syncfusion/ej2-base');
const obj1 = { a: 1, b: 2 };
const obj2 = { b: 3, c: 4 };
const extendedObj = extend({}, obj1, obj2);
console.log(extendedObj); // Output: { a: 1, b: 3, c: 4 }
Lodash is a popular utility library that provides a wide range of functions for common programming tasks such as data manipulation, object handling, and more. It is similar to @syncfusion/ej2-base in terms of providing utility functions, but it is more general-purpose and widely used across different types of projects.
RxJS is a library for reactive programming using Observables, to make it easier to compose asynchronous or callback-based code. While @syncfusion/ej2-base focuses on utilities and base classes for Syncfusion components, RxJS provides powerful tools for handling asynchronous data streams and events.
Underscore is another utility library similar to Lodash, providing functional programming helpers without extending any built-in objects. It offers many of the same utilities as @syncfusion/ej2-base but is more focused on functional programming paradigms.
A common package of Essential® JS 2 which contains base libraries, methods and class definitions.
This is a commercial product and requires a paid license for possession or use. Syncfusion® licensed software, including this component, is subject to the terms and conditions of Syncfusion® EULA. To acquire a license, you can purchase here or start a free 30-day trial here.
A free community license is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.
To install ej2-base
, use the following command.
npm install @syncfusion/ej2-base
The entire Essential® JS 2 framework is built from scratch to be lightweight and modular. Its footprint can be reduced further by including only the specific components and features your application requires.
All components have been built as modules to enable selective referencing, so only the components and features you need are included in your application.
Performance is critical for delivering a good user experience. We ensure that all our components are designed and built to achieve the best performance possible.
All Essential® JS 2 controls are touch friendly and render adaptively based on the device they are on to provide optimal usage experience on phones, tablets and desktops.
Pixel-perfect built-in themes are available in material, bootstrap and fabric design. In addition, it comes with Accessible high-contrast theme and an online tool "Theme Studio" to customize the provided built-in themes.
Easily build applications to be used by a global audience in various language and culture settings.
With our commitment to at least four major updates per year, you receive the most up-to-date functionality and new components in addition to monthly service packs and bug fixes. Custom patches are available as needed.
The Essential® JS 2 is also offered in following list of frameworks.
Product support is available for through following mediums.
syncfusion
and ej2
.Check the license detail here.
Check the changelog here.
© Copyright 2024 Syncfusion<sup>®</sup> Inc. All Rights Reserved.
The Syncfusion<sup>®</sup> Essential<sup>®</sup> Studio license and copyright applies to this distribution.
FAQs
A common package of Essential JS 2 base libraries, methods and class definitions
The npm package @syncfusion/ej2-base receives a total of 170,549 weekly downloads. As such, @syncfusion/ej2-base popularity was classified as popular.
We found that @syncfusion/ej2-base demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket's Rubygems ecosystem support is moving from beta to GA, featuring enhanced security scanning to detect supply chain threats beyond traditional CVEs in your Ruby dependencies.
Research
The Socket Research Team investigates a malicious npm package that appears to be an Advcash integration but triggers a reverse shell during payment success, targeting servers handling transactions.
Security Fundamentals
The Socket Threat Research Team uncovers how threat actors weaponize shell techniques across npm, PyPI, and Go ecosystems to maintain persistence and exfiltrate data.