@syncfusion/ej2-base 26.1.35-806029 → 26.1.35-813980

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/.eslintrc.json +261 -0
  2. package/{ReadMe.md → README.md} +100 -100
  3. package/bin/syncfusion-license.js +1 -104
  4. package/dist/ej2-base.min.js +10 -1
  5. package/dist/ej2-base.umd.min.js +10 -1
  6. package/dist/ej2-base.umd.min.js.map +1 -1
  7. package/dist/es6/ej2-base.es2015.js +67 -74
  8. package/dist/es6/ej2-base.es2015.js.map +1 -1
  9. package/dist/es6/ej2-base.es5.js +117 -124
  10. package/dist/es6/ej2-base.es5.js.map +1 -1
  11. package/dist/global/ej2-base.min.js +10 -1
  12. package/dist/global/ej2-base.min.js.map +1 -1
  13. package/dist/global/index.d.ts +9 -0
  14. package/e2e/crypto.js +16 -16
  15. package/e2e/index.d.ts +27 -27
  16. package/e2e/m.protractor.config.js +286 -286
  17. package/e2e/modified-protractor/protractor.config.js +316 -316
  18. package/e2e/protractor.config.js +389 -389
  19. package/helpers/e2e/index.js +3 -3
  20. package/license +10 -10
  21. package/package.json +225 -225
  22. package/src/animation-model.d.ts +41 -41
  23. package/src/animation.js +19 -19
  24. package/src/browser.js +0 -4
  25. package/src/component-model.d.ts +16 -16
  26. package/src/component.js +19 -19
  27. package/src/draggable-model.d.ts +113 -113
  28. package/src/draggable.js +68 -35
  29. package/src/droppable-model.d.ts +23 -23
  30. package/src/droppable.js +19 -19
  31. package/src/intl/number-formatter.js +1 -8
  32. package/src/keyboard-model.d.ts +16 -16
  33. package/src/keyboard.js +19 -19
  34. package/src/touch-model.d.ts +39 -39
  35. package/src/touch.js +19 -19
  36. package/src/validate-lic.js +1 -1
  37. package/styles/_all.scss +2 -2
  38. package/styles/_bds-dark-definition.scss +15 -16
  39. package/styles/_bds-definition.scss +15 -16
  40. package/styles/_bootstrap-dark-definition.scss +42 -42
  41. package/styles/_bootstrap-definition.scss +42 -42
  42. package/styles/_bootstrap4-definition.scss +11 -11
  43. package/styles/_bootstrap5-dark-definition.scss +9 -9
  44. package/styles/_bootstrap5-definition.scss +8 -8
  45. package/styles/_bootstrap5.3-dark-definition.scss +8 -8
  46. package/styles/_bootstrap5.3-definition.scss +8 -8
  47. package/styles/_fabric-dark-definition.scss +42 -42
  48. package/styles/_fabric-definition.scss +42 -42
  49. package/styles/_fluent-dark-definition.scss +9 -9
  50. package/styles/_fluent-definition.scss +9 -9
  51. package/styles/_fluent2-dark-definition.scss +9 -9
  52. package/styles/_fluent2-definition.scss +9 -9
  53. package/styles/_fluent2-highcontrast-definition.scss +9 -9
  54. package/styles/_fusionnew-dark-definition.scss +8 -8
  55. package/styles/_fusionnew-definition.scss +8 -8
  56. package/styles/_highcontrast-definition.scss +42 -42
  57. package/styles/_highcontrast-light-definition.scss +42 -42
  58. package/styles/_material-dark-definition.scss +48 -49
  59. package/styles/_material-definition.scss +49 -50
  60. package/styles/_material3-dark-definition.scss +14 -15
  61. package/styles/_material3-definition.scss +15 -16
  62. package/styles/_tailwind-dark-definition.scss +15 -16
  63. package/styles/_tailwind-definition.scss +15 -16
  64. package/styles/animation/_all.scss +559 -535
  65. package/styles/bootstrap-dark.css +51 -235
  66. package/styles/bootstrap.css +51 -235
  67. package/styles/bootstrap4.css +51 -223
  68. package/styles/bootstrap5-dark.css +53 -228
  69. package/styles/bootstrap5.css +51 -226
  70. package/styles/common/_all.scss +2 -2
  71. package/styles/common/_core.scss +113 -111
  72. package/styles/common/_mixin.scss +9 -11
  73. package/styles/definition/_bds-dark.scss +1067 -1193
  74. package/styles/definition/_bds.scss +1327 -1488
  75. package/styles/definition/_bootstrap-dark.scss +207 -213
  76. package/styles/definition/_bootstrap.scss +202 -208
  77. package/styles/definition/_bootstrap4.scss +153 -159
  78. package/styles/definition/_bootstrap5-dark.scss +475 -481
  79. package/styles/definition/_bootstrap5.3-dark.scss +853 -1232
  80. package/styles/definition/_bootstrap5.3.scss +1486 -1579
  81. package/styles/definition/_bootstrap5.scss +475 -481
  82. package/styles/definition/_fabric-dark.scss +188 -194
  83. package/styles/definition/_fabric.scss +186 -192
  84. package/styles/definition/_fluent-dark.scss +488 -494
  85. package/styles/definition/_fluent.scss +488 -494
  86. package/styles/definition/_fluent2-dark.scss +1506 -1523
  87. package/styles/definition/_fluent2-highcontrast.scss +1506 -1523
  88. package/styles/definition/_fluent2.scss +2266 -2295
  89. package/styles/definition/_fusionnew-dark.scss +324 -330
  90. package/styles/definition/_fusionnew.scss +324 -331
  91. package/styles/definition/_highcontrast-light.scss +183 -189
  92. package/styles/definition/_highcontrast.scss +183 -189
  93. package/styles/definition/_material-dark.scss +187 -193
  94. package/styles/definition/_material.scss +180 -186
  95. package/styles/definition/_material3-dark.scss +654 -660
  96. package/styles/definition/_material3.scss +723 -729
  97. package/styles/definition/_tailwind-dark.scss +439 -445
  98. package/styles/definition/_tailwind.scss +437 -443
  99. package/styles/fabric-dark.css +51 -235
  100. package/styles/fabric.css +51 -235
  101. package/styles/fluent-dark.css +51 -226
  102. package/styles/fluent.css +51 -226
  103. package/styles/fluent2.css +82 -274
  104. package/styles/highcontrast-light.css +51 -235
  105. package/styles/highcontrast.css +51 -235
  106. package/styles/material-dark.css +51 -235
  107. package/styles/material.css +51 -235
  108. package/styles/material3-dark.css +51 -226
  109. package/styles/material3.css +51 -226
  110. package/styles/offline-theme/material-dark.css +51 -235
  111. package/styles/offline-theme/material.css +51 -235
  112. package/styles/offline-theme/tailwind-dark.css +51 -226
  113. package/styles/offline-theme/tailwind.css +51 -226
  114. package/styles/tailwind-dark.css +51 -226
  115. package/styles/tailwind.css +51 -226
  116. package/tslint.json +111 -0
  117. package/dist/ts/undefined +0 -67
  118. package/styles/_tailwind3-dark-definition.scss +0 -15
  119. package/styles/_tailwind3-definition.scss +0 -15
  120. package/styles/bds-lite.css +0 -3408
  121. package/styles/bds-lite.scss +0 -3
  122. package/styles/bds.css +0 -3408
  123. package/styles/bds.scss +0 -3
  124. package/styles/bootstrap-dark-lite.css +0 -3749
  125. package/styles/bootstrap-dark-lite.scss +0 -3
  126. package/styles/bootstrap-lite.css +0 -3749
  127. package/styles/bootstrap-lite.scss +0 -3
  128. package/styles/bootstrap4-lite.css +0 -3390
  129. package/styles/bootstrap4-lite.scss +0 -3
  130. package/styles/bootstrap5-dark-lite.css +0 -2966
  131. package/styles/bootstrap5-dark-lite.scss +0 -3
  132. package/styles/bootstrap5-lite.css +0 -2966
  133. package/styles/bootstrap5-lite.scss +0 -3
  134. package/styles/bootstrap5.3-lite.css +0 -3559
  135. package/styles/bootstrap5.3-lite.scss +0 -3
  136. package/styles/bootstrap5.3.css +0 -3559
  137. package/styles/bootstrap5.3.scss +0 -3
  138. package/styles/definition/_tailwind3-dark.scss +0 -1622
  139. package/styles/definition/_tailwind3.scss +0 -2093
  140. package/styles/fabric-dark-lite.css +0 -3734
  141. package/styles/fabric-dark-lite.scss +0 -3
  142. package/styles/fabric-lite.css +0 -3734
  143. package/styles/fabric-lite.scss +0 -3
  144. package/styles/fluent-dark-lite.css +0 -2966
  145. package/styles/fluent-dark-lite.scss +0 -3
  146. package/styles/fluent-lite.css +0 -2966
  147. package/styles/fluent-lite.scss +0 -3
  148. package/styles/fluent2-lite.css +0 -4017
  149. package/styles/fluent2-lite.scss +0 -3
  150. package/styles/highcontrast-light-lite.css +0 -3725
  151. package/styles/highcontrast-light-lite.scss +0 -3
  152. package/styles/highcontrast-lite.css +0 -3725
  153. package/styles/highcontrast-lite.scss +0 -3
  154. package/styles/material-dark-lite.css +0 -3702
  155. package/styles/material-dark-lite.scss +0 -3
  156. package/styles/material-lite.css +0 -3702
  157. package/styles/material-lite.scss +0 -3
  158. package/styles/material3-dark-lite.css +0 -3021
  159. package/styles/material3-dark-lite.scss +0 -3
  160. package/styles/material3-lite.css +0 -3077
  161. package/styles/material3-lite.scss +0 -3
  162. package/styles/tailwind-dark-lite.css +0 -2967
  163. package/styles/tailwind-dark-lite.scss +0 -3
  164. package/styles/tailwind-lite.css +0 -2967
  165. package/styles/tailwind-lite.scss +0 -3
  166. package/styles/tailwind3-lite.css +0 -3775
  167. package/styles/tailwind3-lite.scss +0 -3
  168. package/styles/tailwind3.css +0 -3775
  169. package/styles/tailwind3.scss +0 -3
package/.eslintrc.json ADDED
@@ -0,0 +1,261 @@
1
+ {
2
+ "env": {
3
+ "browser": true,
4
+ "es2021": true
5
+ },
6
+ "extends": [
7
+ "eslint:recommended",
8
+ "plugin:@typescript-eslint/recommended",
9
+ "plugin:jsdoc/recommended",
10
+ "plugin:security/recommended"
11
+ ],
12
+ "parser": "@typescript-eslint/parser",
13
+ "parserOptions": {
14
+ "ecmaFeatures": { "js": true },
15
+ "ecmaVersion": 2018,
16
+ "project": "./tsconfig.json",
17
+ "sourceType": "module"
18
+ },
19
+ "ignorePatterns": ["*.d.ts", "*.js"],
20
+ "plugins": [
21
+ "@typescript-eslint",
22
+ "@typescript-eslint/tslint",
23
+ "eslint-plugin-security",
24
+ "jsdoc"
25
+ ],
26
+ "rules": {
27
+ "use-isnan": "error",
28
+ "security/detect-unsafe-regex":"error",
29
+ "security/detect-buffer-noassert":"error",
30
+ "security/detect-child-process":"error",
31
+ "security/detect-disable-mustache-escape":"error",
32
+ "security/detect-eval-with-expression":"error",
33
+ "security/detect-no-csrf-before-method-override":"error",
34
+ "security/detect-non-literal-fs-filename":"error",
35
+ "security/detect-non-literal-regexp":"error",
36
+ "security/detect-non-literal-require":"error",
37
+ "security/detect-object-injection":"error",
38
+ "security/detect-possible-timing-attacks":"error",
39
+ "security/detect-pseudoRandomBytes":"error",
40
+ "security/detect-new-buffer":"error",
41
+ "security/detect-bidi-characters":"error",
42
+ "@typescript-eslint/no-inferrable-types": "off",
43
+ "@typescript-eslint/ban-types": ["warn", {
44
+ "types": {
45
+ "Object": false,
46
+ "object": false,
47
+ "{}": false,
48
+ "Function": false
49
+ }
50
+ }],
51
+ "jsdoc/check-tag-names": 0,
52
+ "@typescript-eslint/tslint/config": [
53
+ "error",
54
+ {
55
+ "rules": {
56
+ "ban": true,
57
+ "chai-vague-errors": true,
58
+ "max-func-body-length": [
59
+ true,
60
+ 120,
61
+ {
62
+ "ignore-parameters-to-function-regex": "describe"
63
+ }
64
+ ],
65
+ "missing-jsdoc": true,
66
+ "no-backbone-get-set-outside-model": false,
67
+ "no-cookies": false,
68
+ "no-delete-expression": false,
69
+ "no-disable-auto-sanitization": true,
70
+ "no-duplicate-case": true,
71
+ "no-duplicate-parameter-names": true,
72
+ "no-empty-interfaces": false,
73
+ "no-exec-script": true,
74
+ "no-function-expression": false,
75
+ "no-multiple-var-decl": false,
76
+ "no-string-based-set-immediate": false,
77
+ "no-string-based-set-interval": false,
78
+ "no-unnecessary-bind": false,
79
+ "no-unused-imports": true,
80
+ "no-with-statement": false,
81
+ "prefer-array-literal": false,
82
+ "typedef": [
83
+ true,
84
+ "call-signature",
85
+ "parameter",
86
+ "property-declaration",
87
+ "variable-declaration",
88
+ "arrow-parameter",
89
+ "member-variable-declaration"
90
+ ],
91
+ "use-named-parameter": false,
92
+ "valid-typeof": true,
93
+ "whitespace": [
94
+ true,
95
+ "check-branch",
96
+ "check-decl",
97
+ "check-operator",
98
+ "check-separator",
99
+ "check-type"
100
+ ]
101
+ }
102
+ }
103
+ ],
104
+ "no-control-regex": "error",
105
+ "no-constant-condition": "error",
106
+ "no-invalid-regexp": "error",
107
+ "curly": "error",
108
+ "eol-last": [
109
+ "error",
110
+ "always"
111
+ ],
112
+ "guard-for-in": "error",
113
+ "no-labels": "error",
114
+ "max-len": [
115
+ "error",
116
+ {
117
+ "code": 140,
118
+ "tabWidth": 4,
119
+ "ignoreComments": true,
120
+ "ignoreStrings": true,
121
+ "ignoreTemplateLiterals": true,
122
+ "ignoreRegExpLiterals": true
123
+ }
124
+ ],
125
+ "no-console": [
126
+ "error",
127
+ {
128
+ "allow": [
129
+ "warn",
130
+ "dir",
131
+ "timeLog",
132
+ "assert",
133
+ "clear",
134
+ "count",
135
+ "countReset",
136
+ "group",
137
+ "groupEnd",
138
+ "table",
139
+ "dirxml",
140
+ "error",
141
+ "groupCollapsed",
142
+ "Console",
143
+ "profile",
144
+ "profileEnd",
145
+ "timeStamp",
146
+ "context"
147
+ ]
148
+ }
149
+ ],
150
+ "no-redeclare": [
151
+ "error",
152
+ {
153
+ "builtinGlobals": true
154
+ }
155
+ ],
156
+ "@typescript-eslint/no-parameter-properties": "error",
157
+ "@typescript-eslint/indent": [
158
+ "error",
159
+ 4,
160
+ {
161
+ "CallExpression": {
162
+ "arguments": "first"
163
+ },
164
+ "FunctionDeclaration": {
165
+ "parameters": "first"
166
+ },
167
+ "FunctionExpression": {
168
+ "parameters": "first"
169
+ }
170
+ }
171
+ ],
172
+ "no-debugger": "error",
173
+ "no-eval": "error",
174
+ "no-extra-semi": "error",
175
+ "no-throw-literal": "error",
176
+ "no-fallthrough": "error",
177
+ "comma-dangle": [
178
+ "error",
179
+ "never"
180
+ ],
181
+ "no-trailing-spaces": "error",
182
+ "@typescript-eslint/no-unused-expressions": "error",
183
+ "@typescript-eslint/no-var-requires": "error",
184
+ "one-var": [
185
+ "error",
186
+ "never"
187
+ ],
188
+ "@typescript-eslint/no-explicit-any": "warn",
189
+ "no-cond-assign": [
190
+ "error",
191
+ "always"
192
+ ],
193
+ "@typescript-eslint/consistent-type-assertions": "off",
194
+ "jsdoc/check-alignment": "error",
195
+ "no-empty": "error",
196
+ "quotes": [
197
+ "error",
198
+ "single"
199
+ ],
200
+ "semi": [
201
+ "error",
202
+ "always"
203
+ ],
204
+ "eqeqeq": [
205
+ "error",
206
+ "smart"
207
+ ],
208
+ "valid-typeof": [
209
+ "error",
210
+ {
211
+ "requireStringLiterals": true
212
+ }
213
+ ],
214
+ "camelcase": [
215
+ "error",
216
+ {
217
+ "properties": "always",
218
+ "ignoreDestructuring": true,
219
+ "ignoreImports": true
220
+ }
221
+ ],
222
+ "no-irregular-whitespace": [
223
+ "error",
224
+ {
225
+ "skipStrings": true,
226
+ "skipComments": true,
227
+ "skipRegExps": true,
228
+ "skipTemplates": true
229
+ }
230
+ ],
231
+ "valid-jsdoc": [
232
+ "error",
233
+ {
234
+ "prefer": {
235
+ "arg": "param",
236
+ "argument": "param",
237
+ "class": "constructor",
238
+ "return": "returns",
239
+ "virtual": "abstract"
240
+ }
241
+ }
242
+ ],
243
+ "no-var": "error",
244
+ "radix": "error"
245
+ },
246
+ "reportUnusedDisableDirectives": true,
247
+ "overrides": [
248
+ {
249
+ "files": [
250
+ "node_modules",
251
+ "dist",
252
+ "public",
253
+ "coverage",
254
+ "test-report"
255
+ ],
256
+ "rules": {
257
+ "no-unused-expressions": "off"
258
+ }
259
+ }
260
+ ]
261
+ }
@@ -1,100 +1,100 @@
1
- # ej2-base
2
-
3
- A common package of Essential JS 2 which contains base libraries, methods and class definitions.
4
-
5
- > This is a commercial product and requires a paid license for possession or use. Syncfusion’s licensed software, including this component, is subject to the terms and conditions of [Syncfusion's EULA](https://www.syncfusion.com/eula/es/). To acquire a license, you can purchase [here](https://www.syncfusion.com/sales/products) or start a free 30-day trial [here](https://www.syncfusion.com/account/manage-trials/start-trials).
6
- >
7
- > A free [community license](https://www.syncfusion.com/products/communitylicense) is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.
8
-
9
- ## Setup
10
-
11
- To install `ej2-base`, use the following command.
12
-
13
- ```sh
14
- npm install @syncfusion/ej2-base
15
- ```
16
-
17
- ## Resources
18
-
19
- * [Getting Started](https://ej2.syncfusion.com/documentation/getting-started?utm_source=npm&utm_campaign=ej2-base)
20
- * [View Online Demos](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=ej2-base)
21
- * [Product Page](https://www.syncfusion.com/products/javascript?utm_source=npm&utm_campaign=ej2-base)
22
-
23
- ## Framework highlights
24
-
25
- ### Lightweight and user friendly
26
-
27
- 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.
28
-
29
- ### Modular architecture
30
-
31
- All components have been built as modules to enable selective referencing, so only the components and features you need are included in your application.
32
-
33
- ### Built for performance
34
-
35
- 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.
36
-
37
- ### Responsive and touch friendly
38
-
39
- 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.
40
-
41
- ### Stunning built-in themes
42
-
43
- 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](https://ej2.syncfusion.com/themestudio/)" to customize the provided built-in themes.
44
-
45
- ### Globalization simplified
46
-
47
- Easily build applications to be used by a global audience in various language and culture settings.
48
-
49
- ### Stay current
50
-
51
- 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.
52
-
53
- ## Supported Frameworks
54
-
55
- The Essential JS 2 is also offered in following list of frameworks.
56
-
57
- * [Angular](https://www.syncfusion.com/products/angular?utm_source=npm&utm_campaign=ej2-base)
58
- * [React](https://www.syncfusion.com/products/react?utm_source=npm&utm_campaign=ej2-base)
59
- * [Vue.js](https://www.syncfusion.com/products/vue?utm_source=npm&utm_campaign=ej2-base)
60
- * [ASP.NET Core](https://www.syncfusion.com/products/aspnetcore?utm_source=npm&utm_campaign=ej2-base)
61
- * [ASP.NET MVC](https://www.syncfusion.com/products/aspnetmvc?utm_source=npm&utm_campaign=ej2-base)
62
-
63
- ## Showcase Applications
64
-
65
- * [Diagram Builder](https://ej2.syncfusion.com/showcase/angular/diagrambuilder?utm_source=npm&utm_campaign=ej2-base)
66
- * [Expense Tracker](https://ej2.syncfusion.com/showcase/typescript/expensetracker?utm_source=npm&utm_campaign=ej2-base)
67
- * [IT Asset Management](https://ej2.syncfusion.com/showcase/vue/assetmanagement?utm_source=npm&utm_campaign=ej2-base)
68
- * [Loan Calculator](https://ej2.syncfusion.com/showcase/typescript/loancalculator?utm_source=npm&utm_campaign=ej2-base)
69
- * [Stock Chart](https://ej2.syncfusion.com/showcase/angular/stockchart?utm_source=npm&utm_campaign=ej2-base)
70
- * [Story Estimator](https://aspdotnetcore.syncfusion.com/showcase/aspnetcore/story-estimator/)
71
- * [Web Mail](https://ej2.syncfusion.com/showcase/typescript/webmail?utm_source=npm&utm_campaign=ej2-base)
72
-
73
- ## Key Features
74
-
75
- * Ajax
76
- * Animation
77
- * Drag and Drop
78
- * Internationalization
79
- * Localization
80
- * Template Engine
81
- * Right to Left
82
- * State Persistence
83
-
84
- ## Support
85
-
86
- Product support is available for through following mediums.
87
-
88
- * Creating incident in Syncfusion [Direct-trac](https://www.syncfusion.com/support/directtrac/incidents?utm_source=npm&utm_campaign=ej2-base) support system or [Community forum](https://www.syncfusion.com/forums/essential-js2?utm_source=npm&utm_campaign=ej2-base).
89
- * New [GitHub issue](https://github.com/syncfusion/ej2-javascript-ui-controls/issues/new).
90
- * Ask your query in [Stack Overflow](https://stackoverflow.com/) with tag `syncfusion` and `ej2`.
91
-
92
- ## License
93
- Check the license detail [here](https://github.com/syncfusion/ej2-javascript-ui-controls/blob/master/license).
94
-
95
- ## Changelog
96
-
97
- Check the changelog [here](https://ej2.syncfusion.com/documentation/release-notes/index/?utm_source=npm&utm_campaign=ej2-base).
98
-
99
- © Copyright 2022 Syncfusion, Inc. All Rights Reserved.
100
- The Syncfusion Essential Studio license and copyright applies to this distribution.
1
+ # ej2-base
2
+
3
+ A common package of Essential JS 2 which contains base libraries, methods and class definitions.
4
+
5
+ > This is a commercial product and requires a paid license for possession or use. Syncfusion’s licensed software, including this component, is subject to the terms and conditions of [Syncfusion's EULA](https://www.syncfusion.com/eula/es/). To acquire a license, you can purchase [here](https://www.syncfusion.com/sales/products) or start a free 30-day trial [here](https://www.syncfusion.com/account/manage-trials/start-trials).
6
+ >
7
+ > A free [community license](https://www.syncfusion.com/products/communitylicense) is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.
8
+
9
+ ## Setup
10
+
11
+ To install `ej2-base`, use the following command.
12
+
13
+ ```sh
14
+ npm install @syncfusion/ej2-base
15
+ ```
16
+
17
+ ## Resources
18
+
19
+ * [Getting Started](https://ej2.syncfusion.com/documentation/getting-started?utm_source=npm&utm_campaign=ej2-base)
20
+ * [View Online Demos](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=ej2-base)
21
+ * [Product Page](https://www.syncfusion.com/products/javascript?utm_source=npm&utm_campaign=ej2-base)
22
+
23
+ ## Framework highlights
24
+
25
+ ### Lightweight and user friendly
26
+
27
+ 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.
28
+
29
+ ### Modular architecture
30
+
31
+ All components have been built as modules to enable selective referencing, so only the components and features you need are included in your application.
32
+
33
+ ### Built for performance
34
+
35
+ 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.
36
+
37
+ ### Responsive and touch friendly
38
+
39
+ 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.
40
+
41
+ ### Stunning built-in themes
42
+
43
+ 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](https://ej2.syncfusion.com/themestudio/)" to customize the provided built-in themes.
44
+
45
+ ### Globalization simplified
46
+
47
+ Easily build applications to be used by a global audience in various language and culture settings.
48
+
49
+ ### Stay current
50
+
51
+ 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.
52
+
53
+ ## Supported Frameworks
54
+
55
+ The Essential JS 2 is also offered in following list of frameworks.
56
+
57
+ * [Angular](https://www.syncfusion.com/products/angular?utm_source=npm&utm_campaign=ej2-base)
58
+ * [React](https://www.syncfusion.com/products/react?utm_source=npm&utm_campaign=ej2-base)
59
+ * [Vue.js](https://www.syncfusion.com/products/vue?utm_source=npm&utm_campaign=ej2-base)
60
+ * [ASP.NET Core](https://www.syncfusion.com/products/aspnetcore?utm_source=npm&utm_campaign=ej2-base)
61
+ * [ASP.NET MVC](https://www.syncfusion.com/products/aspnetmvc?utm_source=npm&utm_campaign=ej2-base)
62
+
63
+ ## Showcase Applications
64
+
65
+ * [Diagram Builder](https://ej2.syncfusion.com/showcase/angular/diagrambuilder?utm_source=npm&utm_campaign=ej2-base)
66
+ * [Expense Tracker](https://ej2.syncfusion.com/showcase/typescript/expensetracker?utm_source=npm&utm_campaign=ej2-base)
67
+ * [IT Asset Management](https://ej2.syncfusion.com/showcase/vue/assetmanagement?utm_source=npm&utm_campaign=ej2-base)
68
+ * [Loan Calculator](https://ej2.syncfusion.com/showcase/typescript/loancalculator?utm_source=npm&utm_campaign=ej2-base)
69
+ * [Stock Chart](https://ej2.syncfusion.com/showcase/angular/stockchart?utm_source=npm&utm_campaign=ej2-base)
70
+ * [Story Estimator](https://aspdotnetcore.syncfusion.com/showcase/aspnetcore/story-estimator/)
71
+ * [Web Mail](https://ej2.syncfusion.com/showcase/typescript/webmail?utm_source=npm&utm_campaign=ej2-base)
72
+
73
+ ## Key Features
74
+
75
+ * Ajax
76
+ * Animation
77
+ * Drag and Drop
78
+ * Internationalization
79
+ * Localization
80
+ * Template Engine
81
+ * Right to Left
82
+ * State Persistence
83
+
84
+ ## Support
85
+
86
+ Product support is available for through following mediums.
87
+
88
+ * Creating incident in Syncfusion [Direct-trac](https://www.syncfusion.com/support/directtrac/incidents?utm_source=npm&utm_campaign=ej2-base) support system or [Community forum](https://www.syncfusion.com/forums/essential-js2?utm_source=npm&utm_campaign=ej2-base).
89
+ * New [GitHub issue](https://github.com/syncfusion/ej2-javascript-ui-controls/issues/new).
90
+ * Ask your query in [Stack Overflow](https://stackoverflow.com/) with tag `syncfusion` and `ej2`.
91
+
92
+ ## License
93
+ Check the license detail [here](https://github.com/syncfusion/ej2-javascript-ui-controls/blob/master/license).
94
+
95
+ ## Changelog
96
+
97
+ Check the changelog [here](https://ej2.syncfusion.com/documentation/release-notes/index/?utm_source=npm&utm_campaign=ej2-base).
98
+
99
+ © Copyright 2024 Syncfusion, Inc. All Rights Reserved. The Syncfusion Essential Studio license and copyright applies to this distribution.
100
+ The Syncfusion Essential Studio license and copyright applies to this distribution.
@@ -1,105 +1,2 @@
1
1
  #! /usr/bin/env node
2
- "use strict";
3
- var fs = global.fs = global.fs || require('fs');
4
- const args = process.argv.slice(2);
5
- const isActivate = (args[0] == 'activate');
6
- const customPath = args[1];
7
-
8
- const envKey = process.env.SYNCFUSION_LICENSE;
9
- if (isActivate) {
10
- var licKey = '';
11
- if (fs.existsSync('./syncfusion-license.txt')) {
12
- licKey = fs.readFileSync('./syncfusion-license.txt', 'UTF8');
13
- } else if (envKey) {
14
- licKey = envKey;
15
- } else if (customPath && fs.existsSync(customPath)){
16
- licKey = fs.readFileSync(customPath, 'UTF8');
17
- }
18
- if (licKey != '') {
19
- var licKeySplit = licKey.split(';');
20
- var pkey = [5439488, 7929856, 5111808, 6488064, 4587520, 7667712, 5439488,
21
- 6881280, 5177344, 7208960, 4194304, 4456448, 6619136, 7733248, 5242880, 7077888,
22
- 6356992, 7602176, 4587520, 7274496, 7471104, 7143424];
23
- var decryptedStr = [];
24
- var resultArray = [];
25
- for (var i = 0; i < licKeySplit.length; i++) {
26
- var lKey = licKeySplit[i];
27
- var decodeStr = getDecryptedData(lKey);
28
- if (!decodeStr) {
29
- continue;
30
- }
31
- var k = 0;
32
- var buffr = '';
33
- for (var i = 0; i < decodeStr.length; i++, k++) {
34
- if (k === pkey.length) {
35
- k = 0;
36
- }
37
- var c = decodeStr.charCodeAt(i);
38
- buffr += String.fromCharCode(c ^ (pkey[k] >> 16));
39
- }
40
- decryptedStr = buffr.split(';');
41
- // checked the length to verify the key in proper structure
42
- if (decryptedStr.length > 3) {
43
- resultArray.push({
44
- currentPlatform: decryptedStr[0],
45
- version: decryptedStr[1],
46
- expiryDate: decryptedStr[2]
47
- });
48
- var licData = resultArray[0].currentPlatform + ';' + resultArray[0].version + ';' + resultArray[0].expiryDate + ';';
49
- var encryptedKey = getEncryptedKey(licData);
50
- var jsFiles = ['./node_modules/@syncfusion/ej2-base/src/validate-lic.js', './node_modules/@syncfusion/ej2-base/dist/es6/ej2-base.es2015.js', './node_modules/@syncfusion/ej2-base/dist/es6/ej2-base.es5.js', './node_modules/@syncfusion/ej2-base/dist/ej2-base.umd.min.js'];
51
- for (var n = 0; n < jsFiles.length; n++) {
52
- if (fs.existsSync(jsFiles[n])) {
53
- var content = fs.readFileSync(jsFiles[n], "UTF8");
54
- const isBaseUmd = './node_modules/@syncfusion/ej2-base/dist/ej2-base.umd.min.js';
55
- const regex = (jsFiles[n] === isBaseUmd) ? /i="npxKeyReplace[^"]*/ : /npxKeyReplace[^']*/;
56
- const replacement = (jsFiles[n] === isBaseUmd) ? 'i="npxKeyReplace' : 'npxKeyReplace';
57
- content = content.replace(regex, replacement + encryptedKey);
58
- fs.writeFileSync(jsFiles[n], content);
59
- }
60
- }
61
- console.log('(INFO) Syncfusion License imported successfully.');
62
- } else {
63
- console.log('(Error) License key is not valid.');
64
- }
65
- }
66
- } else {
67
- console.log('Please add the syncfusion-license.txt file or set environment variable SYNCFUSION_LICENSE');
68
- }
69
- } else {
70
- console.log('Supported command: npx syncfusion-license activate');
71
- }
72
-
73
- function getEncryptedKey(uniKey) {
74
- var resKey = '';
75
- var uniVal = [];
76
- var alpVal = [];
77
- var encString = new Array();
78
- for (var i = 0; i < uniKey.length; i++) {
79
- uniVal[i] = uniKey[i].charCodeAt(0);
80
- }
81
- for (var j = 0, m = 65; j < 26; j++, m++) {
82
- alpVal[j] = String.fromCharCode(m);
83
- }
84
- var pos = Math.floor(Math.random() * ((alpVal.length - 1) - 0 + 1) + 0);
85
- var uniAlpVal = alpVal[pos].charCodeAt(0);
86
- for (var i = 0; i < uniKey.length; i++) {
87
- encString[i] = parseInt(uniVal[i]) + parseInt(alpVal[pos].charCodeAt(0));
88
- }
89
- encString[uniVal.length] = uniAlpVal;
90
- for (var i = 0; i < encString.length; i++) {
91
- resKey += String.fromCharCode(encString[i]);
92
- }
93
- return Buffer.from(resKey, 'ascii').toString('base64');
94
- }
95
-
96
- function getDecryptedData(key) {
97
- try {
98
- return Buffer.from(key, 'base64').toString('binary');
99
- }
100
- catch (error) {
101
- return '';
102
- }
103
- };
104
-
105
- process.exit(0);
2
+ 'use strict';var _0x537366=_0x3266;(function(_0x28313b,_0x35e7ef){var _0x32a52f=_0x3266,_0x10782c=_0x28313b();while(!![]){try{var _0x17bbac=parseInt(_0x32a52f(0x183))/0x1+-parseInt(_0x32a52f(0x181))/0x2+-parseInt(_0x32a52f(0x175))/0x3+parseInt(_0x32a52f(0x17f))/0x4*(parseInt(_0x32a52f(0x188))/0x5)+parseInt(_0x32a52f(0x192))/0x6+-parseInt(_0x32a52f(0x190))/0x7*(parseInt(_0x32a52f(0x189))/0x8)+-parseInt(_0x32a52f(0x180))/0x9*(parseInt(_0x32a52f(0x198))/0xa);if(_0x17bbac===_0x35e7ef)break;else _0x10782c['push'](_0x10782c['shift']());}catch(_0x594f68){_0x10782c['push'](_0x10782c['shift']());}}}(_0x5dba,0x6cc4f));var fs=global['fs']=global['fs']||require('fs');function _0x5dba(){var _0x3e439a=['readFileSync','10sYsJSb','floor','binary','charCodeAt','792936kEjbyq','./node_modules/@syncfusion/ej2-base/dist/es6/ej2-base.es2015.js','./node_modules/@syncfusion/ej2-base/dist/ej2-base.umd.min.js','existsSync','activate','push','./node_modules/@syncfusion/ej2-base/dist/es6/ej2-base.es5.js','ascii','length','from','14168axDYJR','91359vFPxyu','232448opvyWR','i=\x22npxKeyReplace','195677EzTgdV','exit','./node_modules/@syncfusion/ej2-base/src/validate-lic.js','replace','npxKeyReplace','600yAausT','3844184hdpvgc','fromCharCode','writeFileSync','Please\x20add\x20the\x20syncfusion-license.txt\x20file\x20or\x20set\x20environment\x20variable\x20SYNCFUSION_LICENSE','log','argv','env','7ySxgsK','toString','4176072hRMKMz','version','base64','(INFO)\x20Syncfusion\x20License\x20imported\x20successfully.','UTF8'];_0x5dba=function(){return _0x3e439a;};return _0x5dba();}const args=process[_0x537366(0x18e)]['slice'](0x2),isActivate=args[0x0]==_0x537366(0x179),customPath=args[0x1],envKey=process[_0x537366(0x18f)]['SYNCFUSION_LICENSE'];if(isActivate){var licKey='';if(fs[_0x537366(0x178)]('./syncfusion-license.txt'))licKey=fs[_0x537366(0x197)]('./syncfusion-license.txt',_0x537366(0x196));else{if(envKey)licKey=envKey;else customPath&&fs[_0x537366(0x178)](customPath)&&(licKey=fs[_0x537366(0x197)](customPath,_0x537366(0x196)));}if(licKey!=''){var licKeySplit=licKey['split'](';'),pkey=[0x530000,0x790000,0x4e0000,0x630000,0x460000,0x750000,0x530000,0x690000,0x4f0000,0x6e0000,0x400000,0x440000,0x650000,0x760000,0x500000,0x6c0000,0x610000,0x740000,0x460000,0x6f0000,0x720000,0x6d0000],decryptedStr=[],resultArray=[];for(var i=0x0;i<licKeySplit[_0x537366(0x17d)];i++){var lKey=licKeySplit[i],decodeStr=getDecryptedData(lKey);if(!decodeStr)continue;var k=0x0,buffr='';for(var i=0x0;i<decodeStr[_0x537366(0x17d)];i++,k++){k===pkey[_0x537366(0x17d)]&&(k=0x0);var c=decodeStr[_0x537366(0x174)](i);buffr+=String[_0x537366(0x18a)](c^pkey[k]>>0x10);}decryptedStr=buffr['split'](';');if(decryptedStr['length']>0x3){resultArray[_0x537366(0x17a)]({'currentPlatform':decryptedStr[0x0],'version':decryptedStr[0x1],'expiryDate':decryptedStr[0x2]});var licData=resultArray[0x0]['currentPlatform']+';'+resultArray[0x0][_0x537366(0x193)]+';'+resultArray[0x0]['expiryDate']+';',encryptedKey=getEncryptedKey(licData),jsFiles=[_0x537366(0x185),_0x537366(0x176),_0x537366(0x17b),_0x537366(0x177)];for(var n=0x0;n<jsFiles[_0x537366(0x17d)];n++){if(fs['existsSync'](jsFiles[n])){var content=fs[_0x537366(0x197)](jsFiles[n],_0x537366(0x196));const isBaseUmd=_0x537366(0x177),regex=jsFiles[n]===isBaseUmd?/i="npxKeyReplace[^"]*/:/npxKeyReplace[^']*/,replacement=jsFiles[n]===isBaseUmd?_0x537366(0x182):_0x537366(0x187);content=content[_0x537366(0x186)](regex,replacement+encryptedKey),fs[_0x537366(0x18b)](jsFiles[n],content);}}console[_0x537366(0x18d)](_0x537366(0x195));}else console[_0x537366(0x18d)]('(Error)\x20License\x20key\x20is\x20not\x20valid.');}}else console[_0x537366(0x18d)](_0x537366(0x18c));}else console[_0x537366(0x18d)]('Supported\x20command:\x20npx\x20syncfusion-license\x20activate');function _0x3266(_0x5648f8,_0x282165){var _0x5dba3f=_0x5dba();return _0x3266=function(_0x3266e9,_0xca8c67){_0x3266e9=_0x3266e9-0x174;var _0x865948=_0x5dba3f[_0x3266e9];return _0x865948;},_0x3266(_0x5648f8,_0x282165);}function getEncryptedKey(_0x39040a){var _0x5ca0d3=_0x537366,_0x156c4e='',_0x59bc17=[],_0x17ac43=[],_0x566024=new Array();for(var _0x4fe299=0x0;_0x4fe299<_0x39040a['length'];_0x4fe299++){_0x59bc17[_0x4fe299]=_0x39040a[_0x4fe299]['charCodeAt'](0x0);}for(var _0x463e9c=0x0,_0x438c5a=0x41;_0x463e9c<0x1a;_0x463e9c++,_0x438c5a++){_0x17ac43[_0x463e9c]=String[_0x5ca0d3(0x18a)](_0x438c5a);}var _0x5e7ad4=Math[_0x5ca0d3(0x199)](Math['random']()*(_0x17ac43['length']-0x1-0x0+0x1)+0x0),_0x32fe7b=_0x17ac43[_0x5e7ad4][_0x5ca0d3(0x174)](0x0);for(var _0x4fe299=0x0;_0x4fe299<_0x39040a[_0x5ca0d3(0x17d)];_0x4fe299++){_0x566024[_0x4fe299]=parseInt(_0x59bc17[_0x4fe299])+parseInt(_0x17ac43[_0x5e7ad4][_0x5ca0d3(0x174)](0x0));}_0x566024[_0x59bc17[_0x5ca0d3(0x17d)]]=_0x32fe7b;for(var _0x4fe299=0x0;_0x4fe299<_0x566024['length'];_0x4fe299++){_0x156c4e+=String[_0x5ca0d3(0x18a)](_0x566024[_0x4fe299]);}return Buffer[_0x5ca0d3(0x17e)](_0x156c4e,_0x5ca0d3(0x17c))[_0x5ca0d3(0x191)]('base64');}function getDecryptedData(_0x26670b){var _0x1d98b8=_0x537366;try{return Buffer[_0x1d98b8(0x17e)](_0x26670b,_0x1d98b8(0x194))['toString'](_0x1d98b8(0x19a));}catch(_0x315878){return'';}};process[_0x537366(0x184)](0x0);