@syncfusion/ej2-base 20.3.56 → 20.4.40
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.
- package/.eslintrc.json +16 -1
- package/CHANGELOG.md +2 -18
- package/README.md +4 -5
- package/bin/syncfusion-license.js +1 -1
- package/dist/ej2-base.min.js +2 -2
- package/dist/ej2-base.umd.min.js +2 -2
- package/dist/ej2-base.umd.min.js.map +1 -1
- package/dist/es6/ej2-base.es2015.js +488 -280
- package/dist/es6/ej2-base.es2015.js.map +1 -1
- package/dist/es6/ej2-base.es5.js +276 -209
- package/dist/es6/ej2-base.es5.js.map +1 -1
- package/dist/global/ej2-base.min.js +2 -2
- package/dist/global/ej2-base.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/e2e/modified-protractor/protractor.config.js +316 -0
- package/e2e/protractor.config.js +28 -15
- package/package.json +6 -22
- package/src/animation.d.ts +4 -0
- package/src/animation.js +7 -1
- package/src/base.js +12 -12
- package/src/browser.js +7 -7
- package/src/child-property.js +10 -10
- package/src/component-model.d.ts +1 -1
- package/src/component.js +26 -7
- package/src/dom.js +10 -10
- package/src/draggable-model.d.ts +21 -8
- package/src/draggable.d.ts +24 -6
- package/src/draggable.js +19 -12
- package/src/event-handler.js +6 -6
- package/src/hijri-parser.js +1 -1
- package/src/intl/date-parser.js +4 -4
- package/src/intl/intl-base.js +4 -4
- package/src/intl/number-formatter.js +3 -3
- package/src/intl/parser-base.js +2 -2
- package/src/keyboard.js +4 -4
- package/src/l10n.js +5 -5
- package/src/module-loader.js +2 -2
- package/src/notify-property-change.js +28 -28
- package/src/observer.js +9 -9
- package/src/sanitize-helper.js +2 -2
- package/src/template-engine.js +14 -14
- package/src/template.js +2 -1
- package/src/util.js +30 -28
- package/src/validate-lic.d.ts +3 -0
- package/src/validate-lic.js +69 -37
- package/styles/definition/_bootstrap5-dark.scss +9 -0
- package/styles/definition/_bootstrap5.scss +9 -0
- package/styles/definition/_fluent-dark.scss +9 -0
- package/styles/definition/_fluent.scss +9 -0
- package/styles/definition/_material.scss +3 -0
- package/styles/definition/_tailwind-dark.scss +9 -0
- package/styles/definition/_tailwind.scss +9 -0
package/dist/global/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* filename: index.d.ts
|
|
3
|
-
* version : 20.
|
|
3
|
+
* version : 20.4.40
|
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2020. All rights reserved.
|
|
5
5
|
* Use of this code is subject to the terms of our license.
|
|
6
6
|
* A copy of the current license can be obtained at any time by e-mailing
|
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
var shell = require('shelljs');
|
|
2
|
+
var os = require('os');
|
|
3
|
+
var camelCase = require('pix-diff/lib/camelCase.js');
|
|
4
|
+
var seleniumAddress = 'http://150.107.121.2:4444/wd/hub';
|
|
5
|
+
var request = require('request');
|
|
6
|
+
var config = require('../../../../config.json');
|
|
7
|
+
var RepalceRegex = /"/g;
|
|
8
|
+
var isDashBoardReport = config['dashBoardReport'];
|
|
9
|
+
var timeCal = {};
|
|
10
|
+
var fs = require('fs');
|
|
11
|
+
var enableW3c = '{W3cdisabled}';
|
|
12
|
+
var HtmlScreenshotReporter = require('protractor-jasmine2-screenshot-reporter');
|
|
13
|
+
var reporter = new HtmlScreenshotReporter({
|
|
14
|
+
dest: 'e2e_report/' + config.browsers[0],
|
|
15
|
+
filename: config.browsers[0] + '.html'
|
|
16
|
+
});
|
|
17
|
+
isDashBoardReport = isDashBoardReport === undefined ? true : isDashBoardReport;
|
|
18
|
+
if (isDashBoardReport) {
|
|
19
|
+
var currentRepo = shell.exec('git config --get remote.origin.url', {
|
|
20
|
+
silent: true
|
|
21
|
+
})
|
|
22
|
+
.stdout.split('essential-studio/')[1].replace('.git', '').replace('/', '').trim();
|
|
23
|
+
var components = JSON.stringify(config.components);
|
|
24
|
+
components = components.replace(RepalceRegex, '').replace('[', '').replace(']', '').trim();
|
|
25
|
+
var branch = JSON.stringify(config.branchName);
|
|
26
|
+
branch = branch.replace(RepalceRegex, '').trim();
|
|
27
|
+
var toMail = config.toMailAddress;
|
|
28
|
+
var ccMail = config.ccMailAddress;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
exports.config = {
|
|
32
|
+
allScriptsTimeout: 600000,
|
|
33
|
+
|
|
34
|
+
getPageTimeout: 60000,
|
|
35
|
+
|
|
36
|
+
framework: 'jasmine',
|
|
37
|
+
|
|
38
|
+
jasmineNodeOpts: {
|
|
39
|
+
defaultTimeoutInterval: 100000
|
|
40
|
+
},
|
|
41
|
+
multiCapabilities: [],
|
|
42
|
+
|
|
43
|
+
specs: ['../../../../e2e/tests/**/*.spec.js'],
|
|
44
|
+
|
|
45
|
+
onComplete: function () {
|
|
46
|
+
if (isDashBoardReport) {
|
|
47
|
+
var failurecount = 0;
|
|
48
|
+
var resultjson = require('../../../../jasmine-test-results.json');
|
|
49
|
+
var key = Object.keys(resultjson);
|
|
50
|
+
var totalcount = 0;
|
|
51
|
+
for (var i = 0; i < key.length; i++) {
|
|
52
|
+
var Objects = resultjson[key[i]]["specs"];
|
|
53
|
+
totalcount = totalcount + Objects.length;
|
|
54
|
+
for (var j = 0; j < Objects.length; j++) {
|
|
55
|
+
if (Objects[j].status === "failed") {
|
|
56
|
+
failurecount++;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
ccMail.push("ej2core@syncfusion.com");
|
|
61
|
+
var data = {
|
|
62
|
+
RepositoryName: currentRepo,
|
|
63
|
+
ComponentName: components,
|
|
64
|
+
BranchName: branch,
|
|
65
|
+
StartDate: new Date(),
|
|
66
|
+
EndDate: new Date(),
|
|
67
|
+
Type: "Desktop",
|
|
68
|
+
TotalTestCaseCount: totalcount,
|
|
69
|
+
FailureTestCaseCount: failurecount,
|
|
70
|
+
SuccessTestCaseCount: totalcount - failurecount,
|
|
71
|
+
Browser: browser.browserName,
|
|
72
|
+
toMailAddress: toMail,
|
|
73
|
+
ccMailAddress: ccMail
|
|
74
|
+
};
|
|
75
|
+
var status = failurecount.length ? 'Failure' : 'Success';
|
|
76
|
+
var successCount = totalcount - failurecount;
|
|
77
|
+
var notRun = totalcount - (successCount + failurecount);
|
|
78
|
+
if (fs.existsSync('./testreport')) {
|
|
79
|
+
shell.cd('./testreport');
|
|
80
|
+
shell.exec('Syncfusion.UpdateTestResults.exe /Platform:"JavaScript - EJ2" /Control:"' + components +
|
|
81
|
+
'" /TestingTool:"Selenium" /StartTime:"' + new Date().toLocaleTimeString() + '" /EndTime:"' + new Date().toLocaleTimeString() +
|
|
82
|
+
'" /Status:"' + status + '" /TotalTestCase:' + totalcount +
|
|
83
|
+
' /SuccessCount:' + successCount + ' /FailureCount:' + failurecount + ' /NotRunCount:' + notRun + ' /UpdatedBy:"' + toMail[0] + '"');
|
|
84
|
+
shell.cd('../');
|
|
85
|
+
}
|
|
86
|
+
request({
|
|
87
|
+
url: 'https://ej2services.syncfusion.com/cicentral/api/getE2EReport',
|
|
88
|
+
method: 'POST',
|
|
89
|
+
json: true,
|
|
90
|
+
body: data,
|
|
91
|
+
headers: {
|
|
92
|
+
'authorization': 'ej2centrailzedstatus',
|
|
93
|
+
'content-type': 'application/json'
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
browser.driver.quit();
|
|
99
|
+
console.log(browser.browserName + ' driver closed!');
|
|
100
|
+
},
|
|
101
|
+
beforeLaunch: function () {
|
|
102
|
+
return new Promise(function (resolve) {
|
|
103
|
+
reporter.beforeLaunch(resolve);
|
|
104
|
+
});
|
|
105
|
+
},
|
|
106
|
+
|
|
107
|
+
onPrepare: function () {
|
|
108
|
+
const PixDiff = require('pix-diff');
|
|
109
|
+
const fs = require('fs');
|
|
110
|
+
const path = require('path');
|
|
111
|
+
browser.ignoreSynchronization = true;
|
|
112
|
+
browser.waitForAngularEnabled = false;
|
|
113
|
+
browser.isDesktop = true;
|
|
114
|
+
timeCal['startTime'] = new Date().toLocaleTimeString();
|
|
115
|
+
browser.basePath = require('../../../../protractor.browser.json').basePath;
|
|
116
|
+
|
|
117
|
+
browser.driver.manage().window().setSize(1600, 1200);
|
|
118
|
+
var JSONReporter = require('jasmine-json-test-reporter');
|
|
119
|
+
jasmine.getEnv().addReporter(new JSONReporter({
|
|
120
|
+
file: 'jasmine-test-results.json',
|
|
121
|
+
beautify: true,
|
|
122
|
+
indentationLevel: 4 // used if beautify === true
|
|
123
|
+
}));
|
|
124
|
+
|
|
125
|
+
//move to out off user screen
|
|
126
|
+
browser.driver.manage().window().setPosition(2500, 0);
|
|
127
|
+
|
|
128
|
+
browser.load = function (path) {
|
|
129
|
+
browser.get(browser.basePath + path);
|
|
130
|
+
// browser.wait(function () {
|
|
131
|
+
// return element(By.css('.e-control')).isDisplayed();
|
|
132
|
+
// }, 3000);
|
|
133
|
+
|
|
134
|
+
if (browser.css) {
|
|
135
|
+
browser.injectCss(browser.css);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
browser.loadAsync = function (path) {
|
|
140
|
+
return browser.get(browser.basePath + path);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
browser.getCapabilities().then(function (cap) {
|
|
144
|
+
|
|
145
|
+
browser.browserName = cap.get('browserName');
|
|
146
|
+
|
|
147
|
+
browser.pixResult = PixDiff;
|
|
148
|
+
|
|
149
|
+
browser.pixDiff = new PixDiff({
|
|
150
|
+
basePath: './e2e',
|
|
151
|
+
diffPath: './e2e',
|
|
152
|
+
formatImageName: '{tag}'
|
|
153
|
+
});
|
|
154
|
+
|
|
155
|
+
//override difference path
|
|
156
|
+
browser.pixDiff.diffPath = path.normalize(camelCase('./e2e/Diff/' + browser.browserName));
|
|
157
|
+
//create folder if not present
|
|
158
|
+
createF(browser.pixDiff.diffPath);
|
|
159
|
+
|
|
160
|
+
browser.compareScreen = function (element, fileName, opt) {
|
|
161
|
+
var folderName = fileName;
|
|
162
|
+
var fArr = fileName.split('/');
|
|
163
|
+
if (fArr.length > 1) {
|
|
164
|
+
fArr.splice(-1, 1);
|
|
165
|
+
folderName = fArr.join('/')
|
|
166
|
+
createF(camelCase('e2e/expected/' + browser.pixDiff.browserName + '/' + folderName));
|
|
167
|
+
createF(camelCase('e2e/actual/' + browser.pixDiff.browserName + '/' + folderName));
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
// thresholdType: 'percent',
|
|
171
|
+
// threshold: 0.009,
|
|
172
|
+
var option = {
|
|
173
|
+
imageAPath: '/expected/' + browser.pixDiff.browserName + '/' + fileName, // Use file-path
|
|
174
|
+
imageBPath: '/actual/' + browser.pixDiff.browserName + '/' + fileName,
|
|
175
|
+
filter: ['grayScale'],
|
|
176
|
+
debug: true,
|
|
177
|
+
hideShift: true,
|
|
178
|
+
};
|
|
179
|
+
var doneFn = arguments[arguments.length - 1];
|
|
180
|
+
if (typeof opt === 'object' && Object.keys(opt).length) {
|
|
181
|
+
Object.assign(option, opt);
|
|
182
|
+
}
|
|
183
|
+
browser.pixDiff.saveRegion(element, '/Actual/' + browser.pixDiff.browserName + '/' + fileName, option).then(() => {
|
|
184
|
+
var fPathName = path.resolve(__dirname, '../../../../' + camelCase('e2e/expected/' + browser.pixDiff.browserName + '/' + fileName) + '.png');
|
|
185
|
+
if (!fs.existsSync(fPathName) && fs.existsSync(fPathName.replace("Expected", "Actual"))) {
|
|
186
|
+
fs.copyFileSync(fPathName.replace("Expected", "Actual"), fPathName);
|
|
187
|
+
console.log('Expected Image Created : /expected/' + browser.pixDiff.browserName + '/' + fileName);
|
|
188
|
+
}
|
|
189
|
+
browser.saveCheckImage(element, fileName, option, doneFn);
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
browser.saveCheckImage = function (element, fileName, option, doneFn) {
|
|
194
|
+
browser.pixDiff.checkRegion(element, '/Expected/' + browser.pixDiff.browserName + '/' + fileName, option).then((result) => {
|
|
195
|
+
//
|
|
196
|
+
// * - `RESULT_UNKNOWN`: 0
|
|
197
|
+
// * - `RESULT_DIFFERENT`: 1
|
|
198
|
+
// * - `RESULT_SIMILAR`: 7
|
|
199
|
+
// * - `RESULT_IDENTICAL`: 5
|
|
200
|
+
console.log(JSON.stringify(result));
|
|
201
|
+
expect(result.code).toEqual(browser.pixResult.RESULT_IDENTICAL);
|
|
202
|
+
if (typeof doneFn === 'function') {
|
|
203
|
+
doneFn();
|
|
204
|
+
}
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
browser.waitForEvent = function (id, moduleName, eventName) {
|
|
209
|
+
return browser.executeAsyncScript(function (id, moduleName, eventName, callback) {
|
|
210
|
+
var instances = document.getElementById(id).ej2_instances;
|
|
211
|
+
var instanceObj;
|
|
212
|
+
for (var i = 0; instances && i < instances.length; i++) {
|
|
213
|
+
if (instances[i].getModuleName() == moduleName) {
|
|
214
|
+
instanceObj = instances[i]
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
if (instanceObj) {
|
|
218
|
+
var handler;
|
|
219
|
+
handler = function (e) {
|
|
220
|
+
instanceObj.removeEventListener(eventName, handler);
|
|
221
|
+
callback();
|
|
222
|
+
};
|
|
223
|
+
instanceObj.addEventListener(eventName, handler);
|
|
224
|
+
} else {
|
|
225
|
+
callback();
|
|
226
|
+
}
|
|
227
|
+
}, id, moduleName, eventName);
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
browser.injectScript = function (path, callback) {
|
|
231
|
+
return browser.executeAsyncScript(function (path) {
|
|
232
|
+
var head = document.getElementsByTagName('head')[0];
|
|
233
|
+
var script = document.createElement('script');
|
|
234
|
+
script.type = 'text/javascript';
|
|
235
|
+
script.onload = function () {
|
|
236
|
+
callback();
|
|
237
|
+
}
|
|
238
|
+
script.src = path;
|
|
239
|
+
head.appendChild(script);
|
|
240
|
+
}, browser.basePath + path);
|
|
241
|
+
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
browser.injectCss = function (content) {
|
|
245
|
+
return browser.wait(browser.executeScript(`
|
|
246
|
+
var style = document.createElement('style');
|
|
247
|
+
style.id = 'browsercss';
|
|
248
|
+
if (style.styleSheet) {style.styleSheet.cssText = '` + content + `';}
|
|
249
|
+
else{style.appendChild(document.createTextNode('` + content + `'));}
|
|
250
|
+
document.head.appendChild(style);
|
|
251
|
+
`));
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
});
|
|
255
|
+
jasmine.getEnv().addReporter(reporter);
|
|
256
|
+
|
|
257
|
+
},
|
|
258
|
+
afterLaunch: function (exitCode) {
|
|
259
|
+
return new Promise(function (resolve) {
|
|
260
|
+
reporter.afterLaunch(resolve.bind(this, exitCode));
|
|
261
|
+
});
|
|
262
|
+
},
|
|
263
|
+
};
|
|
264
|
+
|
|
265
|
+
//Browser Configuration
|
|
266
|
+
if (config.browsers && config.browsers.length) {
|
|
267
|
+
for (var i = 0; i < config.browsers.length; i++) {
|
|
268
|
+
var browserName = config.browsers[i];
|
|
269
|
+
if (browserName === 'chrome' && enableW3c === '{W3cenabled}') {
|
|
270
|
+
exports.config.multiCapabilities.push({
|
|
271
|
+
'browserName': browserName,
|
|
272
|
+
'goog:chromeOptions': { //disable w3c here
|
|
273
|
+
w3c: false,
|
|
274
|
+
}
|
|
275
|
+
});
|
|
276
|
+
} else {
|
|
277
|
+
exports.config.multiCapabilities.push({
|
|
278
|
+
'browserName': browserName
|
|
279
|
+
});
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
} else {
|
|
283
|
+
if (os.platform() === 'win32') {
|
|
284
|
+
exports.config.multiCapabilities.push({
|
|
285
|
+
'browserName': 'internet explorer'
|
|
286
|
+
});
|
|
287
|
+
if (Number(os.release().split('.')[0]) >= 10) {
|
|
288
|
+
exports.config.multiCapabilities.push({
|
|
289
|
+
'browserName': 'MicrosoftEdge'
|
|
290
|
+
});
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
exports.config.multiCapabilities.push({
|
|
294
|
+
'browserName': 'firefox'
|
|
295
|
+
});
|
|
296
|
+
if (enableW3c === '{W3cenabled}') {
|
|
297
|
+
exports.config.multiCapabilities.push({
|
|
298
|
+
'browserName': 'chrome',
|
|
299
|
+
'goog:chromeOptions': { //disable w3c here
|
|
300
|
+
w3c: false,
|
|
301
|
+
}
|
|
302
|
+
});
|
|
303
|
+
} else {
|
|
304
|
+
exports.config.multiCapabilities.push({
|
|
305
|
+
'browserName': 'chrome',
|
|
306
|
+
'chromeOptions': {
|
|
307
|
+
'args': ['no-sandbox']
|
|
308
|
+
}
|
|
309
|
+
});
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
exports.config.seleniumAddress = config.seleniumAddress || 'http://localhost:4444/wd/hub/';
|
|
313
|
+
|
|
314
|
+
function createF(path) {
|
|
315
|
+
shell.mkdir('-p', path);
|
|
316
|
+
}
|
package/e2e/protractor.config.js
CHANGED
|
@@ -9,6 +9,11 @@ var isDashBoardReport = config['dashBoardReport'];
|
|
|
9
9
|
var timeCal = {};
|
|
10
10
|
var fs = require('fs');
|
|
11
11
|
var enableW3c = '{W3cdisabled}';
|
|
12
|
+
var HtmlScreenshotReporter = require('protractor-jasmine2-screenshot-reporter');
|
|
13
|
+
var reporter = new HtmlScreenshotReporter({
|
|
14
|
+
dest: 'e2e_report/' + config.browsers[0],
|
|
15
|
+
filename: config.browsers[0] + '.html'
|
|
16
|
+
});
|
|
12
17
|
isDashBoardReport = isDashBoardReport === undefined ? true : isDashBoardReport;
|
|
13
18
|
if (isDashBoardReport) {
|
|
14
19
|
var currentRepo = shell.exec('git config --get remote.origin.url', {
|
|
@@ -23,8 +28,6 @@ if (isDashBoardReport) {
|
|
|
23
28
|
var ccMail = config.ccMailAddress;
|
|
24
29
|
}
|
|
25
30
|
|
|
26
|
-
|
|
27
|
-
|
|
28
31
|
exports.config = {
|
|
29
32
|
allScriptsTimeout: 600000,
|
|
30
33
|
|
|
@@ -68,19 +71,18 @@ exports.config = {
|
|
|
68
71
|
Browser: browser.browserName,
|
|
69
72
|
toMailAddress: toMail,
|
|
70
73
|
ccMailAddress: ccMail
|
|
71
|
-
|
|
72
74
|
};
|
|
73
75
|
var status = failurecount.length ? 'Failure' : 'Success';
|
|
74
76
|
var successCount = totalcount - failurecount;
|
|
75
77
|
var notRun = totalcount - (successCount + failurecount);
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
78
|
+
if (fs.existsSync('./testreport')) {
|
|
79
|
+
shell.cd('./testreport');
|
|
80
|
+
shell.exec('Syncfusion.UpdateTestResults.exe /Platform:"JavaScript - EJ2" /Control:"' + components +
|
|
81
|
+
'" /TestingTool:"Selenium" /StartTime:"' + new Date().toLocaleTimeString() + '" /EndTime:"' + new Date().toLocaleTimeString() +
|
|
82
|
+
'" /Status:"' + status + '" /TotalTestCase:' + totalcount +
|
|
83
|
+
' /SuccessCount:' + successCount + ' /FailureCount:' + failurecount + ' /NotRunCount:' + notRun + ' /UpdatedBy:"' + toMail[0] + '"');
|
|
84
|
+
shell.cd('../');
|
|
85
|
+
}
|
|
84
86
|
request({
|
|
85
87
|
url: 'https://ej2services.syncfusion.com/cicentral/api/getE2EReport',
|
|
86
88
|
method: 'POST',
|
|
@@ -96,6 +98,11 @@ exports.config = {
|
|
|
96
98
|
browser.driver.quit();
|
|
97
99
|
console.log(browser.browserName + ' driver closed!');
|
|
98
100
|
},
|
|
101
|
+
beforeLaunch: function () {
|
|
102
|
+
return new Promise(function (resolve) {
|
|
103
|
+
reporter.beforeLaunch(resolve);
|
|
104
|
+
});
|
|
105
|
+
},
|
|
99
106
|
|
|
100
107
|
onPrepare: function () {
|
|
101
108
|
const PixDiff = require('pix-diff');
|
|
@@ -120,9 +127,9 @@ exports.config = {
|
|
|
120
127
|
|
|
121
128
|
browser.load = function (path) {
|
|
122
129
|
browser.get(browser.basePath + path);
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
130
|
+
browser.wait(function () {
|
|
131
|
+
return element(By.css('.e-control')).isDisplayed();
|
|
132
|
+
}, 3000);
|
|
126
133
|
|
|
127
134
|
if (browser.css) {
|
|
128
135
|
browser.injectCss(browser.css);
|
|
@@ -245,8 +252,14 @@ exports.config = {
|
|
|
245
252
|
}
|
|
246
253
|
|
|
247
254
|
});
|
|
255
|
+
jasmine.getEnv().addReporter(reporter);
|
|
248
256
|
|
|
249
257
|
},
|
|
258
|
+
afterLaunch: function (exitCode) {
|
|
259
|
+
return new Promise(function (resolve) {
|
|
260
|
+
reporter.afterLaunch(resolve.bind(this, exitCode));
|
|
261
|
+
});
|
|
262
|
+
},
|
|
250
263
|
};
|
|
251
264
|
|
|
252
265
|
//Browser Configuration
|
|
@@ -300,4 +313,4 @@ exports.config.seleniumAddress = config.seleniumAddress || 'http://localhost:444
|
|
|
300
313
|
|
|
301
314
|
function createF(path) {
|
|
302
315
|
shell.mkdir('-p', path);
|
|
303
|
-
}
|
|
316
|
+
}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"_from": "@syncfusion/ej2-base@*",
|
|
3
|
-
"_id": "@syncfusion/ej2-base@20.
|
|
3
|
+
"_id": "@syncfusion/ej2-base@20.4.38",
|
|
4
4
|
"_inBundle": false,
|
|
5
|
-
"_integrity": "sha512-
|
|
5
|
+
"_integrity": "sha512-Yn+cPKDnIodXDSfHWnci1YZyGkSVOWtVmZ+zjQIep1bUsJsHrVmn12KLNf8ywC+R+kX8vTfdG+jBXdfPEKawuQ==",
|
|
6
6
|
"_location": "/@syncfusion/ej2-base",
|
|
7
7
|
"_phantomChildren": {},
|
|
8
8
|
"_requested": {
|
|
@@ -33,7 +33,6 @@
|
|
|
33
33
|
"/@syncfusion/ej2-angular-grids",
|
|
34
34
|
"/@syncfusion/ej2-angular-heatmap",
|
|
35
35
|
"/@syncfusion/ej2-angular-image-editor",
|
|
36
|
-
"/@syncfusion/ej2-angular-inplace-editor",
|
|
37
36
|
"/@syncfusion/ej2-angular-inputs",
|
|
38
37
|
"/@syncfusion/ej2-angular-kanban",
|
|
39
38
|
"/@syncfusion/ej2-angular-layouts",
|
|
@@ -42,17 +41,10 @@
|
|
|
42
41
|
"/@syncfusion/ej2-angular-maps",
|
|
43
42
|
"/@syncfusion/ej2-angular-navigations",
|
|
44
43
|
"/@syncfusion/ej2-angular-notifications",
|
|
45
|
-
"/@syncfusion/ej2-angular-pdfviewer",
|
|
46
|
-
"/@syncfusion/ej2-angular-pivotview",
|
|
47
44
|
"/@syncfusion/ej2-angular-popups",
|
|
48
|
-
"/@syncfusion/ej2-angular-progressbar",
|
|
49
|
-
"/@syncfusion/ej2-angular-querybuilder",
|
|
50
45
|
"/@syncfusion/ej2-angular-richtexteditor",
|
|
51
|
-
"/@syncfusion/ej2-angular-schedule",
|
|
52
46
|
"/@syncfusion/ej2-angular-splitbuttons",
|
|
53
|
-
"/@syncfusion/ej2-angular-spreadsheet",
|
|
54
47
|
"/@syncfusion/ej2-angular-treegrid",
|
|
55
|
-
"/@syncfusion/ej2-angular-treemap",
|
|
56
48
|
"/@syncfusion/ej2-barcode-generator",
|
|
57
49
|
"/@syncfusion/ej2-buttons",
|
|
58
50
|
"/@syncfusion/ej2-calendars",
|
|
@@ -97,7 +89,6 @@
|
|
|
97
89
|
"/@syncfusion/ej2-react-grids",
|
|
98
90
|
"/@syncfusion/ej2-react-heatmap",
|
|
99
91
|
"/@syncfusion/ej2-react-image-editor",
|
|
100
|
-
"/@syncfusion/ej2-react-inplace-editor",
|
|
101
92
|
"/@syncfusion/ej2-react-inputs",
|
|
102
93
|
"/@syncfusion/ej2-react-kanban",
|
|
103
94
|
"/@syncfusion/ej2-react-layouts",
|
|
@@ -106,17 +97,10 @@
|
|
|
106
97
|
"/@syncfusion/ej2-react-maps",
|
|
107
98
|
"/@syncfusion/ej2-react-navigations",
|
|
108
99
|
"/@syncfusion/ej2-react-notifications",
|
|
109
|
-
"/@syncfusion/ej2-react-pdfviewer",
|
|
110
|
-
"/@syncfusion/ej2-react-pivotview",
|
|
111
100
|
"/@syncfusion/ej2-react-popups",
|
|
112
|
-
"/@syncfusion/ej2-react-progressbar",
|
|
113
|
-
"/@syncfusion/ej2-react-querybuilder",
|
|
114
101
|
"/@syncfusion/ej2-react-richtexteditor",
|
|
115
|
-
"/@syncfusion/ej2-react-schedule",
|
|
116
102
|
"/@syncfusion/ej2-react-splitbuttons",
|
|
117
|
-
"/@syncfusion/ej2-react-spreadsheet",
|
|
118
103
|
"/@syncfusion/ej2-react-treegrid",
|
|
119
|
-
"/@syncfusion/ej2-react-treemap",
|
|
120
104
|
"/@syncfusion/ej2-richtexteditor",
|
|
121
105
|
"/@syncfusion/ej2-schedule",
|
|
122
106
|
"/@syncfusion/ej2-splitbuttons",
|
|
@@ -159,8 +143,8 @@
|
|
|
159
143
|
"/@syncfusion/ej2-vue-treegrid",
|
|
160
144
|
"/@syncfusion/ej2-vue-treemap"
|
|
161
145
|
],
|
|
162
|
-
"_resolved": "https://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-base/-/ej2-base-20.
|
|
163
|
-
"_shasum": "
|
|
146
|
+
"_resolved": "https://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-base/-/ej2-base-20.4.38.tgz",
|
|
147
|
+
"_shasum": "0d8b78b913c6a527c982dd43e7f91f67fd1de8e1",
|
|
164
148
|
"_spec": "@syncfusion/ej2-base@*",
|
|
165
149
|
"_where": "/jenkins/workspace/ease-automation_release_19.1.0.1/packages/included",
|
|
166
150
|
"author": {
|
|
@@ -174,7 +158,7 @@
|
|
|
174
158
|
},
|
|
175
159
|
"bundleDependencies": false,
|
|
176
160
|
"dependencies": {
|
|
177
|
-
"@syncfusion/ej2-icons": "~20.
|
|
161
|
+
"@syncfusion/ej2-icons": "~20.4.40"
|
|
178
162
|
},
|
|
179
163
|
"deprecated": false,
|
|
180
164
|
"description": "A common package of Essential JS 2 base libraries, methods and class definitions",
|
|
@@ -215,6 +199,6 @@
|
|
|
215
199
|
"url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
|
|
216
200
|
},
|
|
217
201
|
"typings": "index.d.ts",
|
|
218
|
-
"version": "20.
|
|
202
|
+
"version": "20.4.40",
|
|
219
203
|
"sideEffects": true
|
|
220
204
|
}
|
package/src/animation.d.ts
CHANGED
|
@@ -196,10 +196,14 @@ export declare let isRippleEnabled: boolean;
|
|
|
196
196
|
export declare function enableRipple(isRipple: boolean): boolean;
|
|
197
197
|
/**
|
|
198
198
|
* Defines the Modes of Global animation.
|
|
199
|
+
*
|
|
199
200
|
* @private
|
|
200
201
|
*/
|
|
201
202
|
export declare let animationMode: string;
|
|
202
203
|
/**
|
|
203
204
|
* Method for set the Global animation modes for Syncfusion Blazor components.
|
|
205
|
+
*
|
|
206
|
+
* @param {string} value - Specifies the animation mode.
|
|
207
|
+
* @returns {void}
|
|
204
208
|
*/
|
|
205
209
|
export declare function setGlobalAnimation(value: string): void;
|
package/src/animation.js
CHANGED
|
@@ -281,7 +281,9 @@ export { Animation };
|
|
|
281
281
|
export function rippleEffect(element, rippleOptions, done) {
|
|
282
282
|
var rippleModel = getRippleModel(rippleOptions);
|
|
283
283
|
if (rippleModel.rippleFlag === false || (rippleModel.rippleFlag === undefined && !isRippleEnabled)) {
|
|
284
|
-
return (function () {
|
|
284
|
+
return (function () {
|
|
285
|
+
// do nothing.
|
|
286
|
+
});
|
|
285
287
|
}
|
|
286
288
|
element.setAttribute('data-ripple', 'true');
|
|
287
289
|
EventHandler.add(element, 'mousedown', rippleHandler, { parent: element, rippleOptions: rippleModel });
|
|
@@ -425,11 +427,15 @@ export function enableRipple(isRipple) {
|
|
|
425
427
|
}
|
|
426
428
|
/**
|
|
427
429
|
* Defines the Modes of Global animation.
|
|
430
|
+
*
|
|
428
431
|
* @private
|
|
429
432
|
*/
|
|
430
433
|
export var animationMode = '';
|
|
431
434
|
/**
|
|
432
435
|
* Method for set the Global animation modes for Syncfusion Blazor components.
|
|
436
|
+
*
|
|
437
|
+
* @param {string} value - Specifies the animation mode.
|
|
438
|
+
* @returns {void}
|
|
433
439
|
*/
|
|
434
440
|
export function setGlobalAnimation(value) {
|
|
435
441
|
animationMode = value;
|
package/src/base.js
CHANGED
|
@@ -85,8 +85,8 @@ var Base = /** @class */ (function () {
|
|
|
85
85
|
var keys = Object.keys(obj);
|
|
86
86
|
for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
|
|
87
87
|
var key = keys_1[_i];
|
|
88
|
-
if (parent[key] instanceof Array) {
|
|
89
|
-
for (var _a = 0, _b = parent[key]; _a < _b.length; _a++) {
|
|
88
|
+
if (parent["" + key] instanceof Array) {
|
|
89
|
+
for (var _a = 0, _b = parent["" + key]; _a < _b.length; _a++) {
|
|
90
90
|
var obj_1 = _b[_a];
|
|
91
91
|
if (obj_1.dataBind !== undefined) {
|
|
92
92
|
obj_1.dataBind();
|
|
@@ -94,7 +94,7 @@ var Base = /** @class */ (function () {
|
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
96
|
else {
|
|
97
|
-
parent[key].dataBind();
|
|
97
|
+
parent["" + key].dataBind();
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
};
|
|
@@ -129,8 +129,8 @@ var Base = /** @class */ (function () {
|
|
|
129
129
|
newChanges = newChanges ? newChanges : {};
|
|
130
130
|
extend(this.bulkChanges, {}, newChanges, true);
|
|
131
131
|
var sfBlazor = 'sfBlazor';
|
|
132
|
-
if (this.allowServerDataBinding && window[sfBlazor].updateModel) {
|
|
133
|
-
window[sfBlazor].updateModel(this);
|
|
132
|
+
if (this.allowServerDataBinding && window["" + sfBlazor].updateModel) {
|
|
133
|
+
window["" + sfBlazor].updateModel(this);
|
|
134
134
|
this.bulkChanges = {};
|
|
135
135
|
}
|
|
136
136
|
};
|
|
@@ -139,14 +139,14 @@ var Base = /** @class */ (function () {
|
|
|
139
139
|
if (isBlazor()) {
|
|
140
140
|
// tslint:disable-next-line:no-any
|
|
141
141
|
var newChanges = {};
|
|
142
|
-
newChanges[key] = newValue;
|
|
142
|
+
newChanges["" + key] = newValue;
|
|
143
143
|
this.serverDataBind(newChanges);
|
|
144
144
|
}
|
|
145
145
|
if (this.isProtectedOnChange) {
|
|
146
146
|
return;
|
|
147
147
|
}
|
|
148
|
-
this.oldProperties[key] = oldValue;
|
|
149
|
-
this.changedProperties[key] = newValue;
|
|
148
|
+
this.oldProperties["" + key] = oldValue;
|
|
149
|
+
this.changedProperties["" + key] = newValue;
|
|
150
150
|
this.finalUpdate();
|
|
151
151
|
this.finalUpdate = setImmediate(this.dataBind.bind(this));
|
|
152
152
|
};
|
|
@@ -192,7 +192,7 @@ var Base = /** @class */ (function () {
|
|
|
192
192
|
var handler = getValue(eventName, this);
|
|
193
193
|
if (handler) {
|
|
194
194
|
var blazor = 'Blazor';
|
|
195
|
-
if (window[blazor]) {
|
|
195
|
+
if (window["" + blazor]) {
|
|
196
196
|
var promise = handler.call(this, eventProp);
|
|
197
197
|
if (promise && typeof promise.then === 'function') {
|
|
198
198
|
if (!successHandler) {
|
|
@@ -283,7 +283,7 @@ export function getComponent(elem, comp) {
|
|
|
283
283
|
var i;
|
|
284
284
|
var ele = typeof elem === 'string' ? document.getElementById(elem) : elem;
|
|
285
285
|
for (i = 0; i < ele.ej2_instances.length; i++) {
|
|
286
|
-
instance = ele.ej2_instances[i];
|
|
286
|
+
instance = ele.ej2_instances[parseInt(i.toString(), 10)];
|
|
287
287
|
if (typeof comp === 'string') {
|
|
288
288
|
var compName = instance.getModuleName();
|
|
289
289
|
if (comp === compName) {
|
|
@@ -311,9 +311,9 @@ export function removeChildInstance(element) {
|
|
|
311
311
|
// tslint:disable-next-line:no-any
|
|
312
312
|
var childEle = [].slice.call(element.getElementsByClassName('e-control'));
|
|
313
313
|
for (var i = 0; i < childEle.length; i++) {
|
|
314
|
-
var compName = childEle[i].classList[1].split('e-')[1];
|
|
314
|
+
var compName = childEle[parseInt(i.toString(), 10)].classList[1].split('e-')[1];
|
|
315
315
|
// tslint:disable-next-line:no-any
|
|
316
|
-
var compInstance = getComponent(childEle[i], compName);
|
|
316
|
+
var compInstance = getComponent(childEle[parseInt(i.toString(), 10)], compName);
|
|
317
317
|
if (!isUndefined(compInstance)) {
|
|
318
318
|
compInstance.destroy();
|
|
319
319
|
}
|
package/src/browser.js
CHANGED
|
@@ -35,7 +35,7 @@ var Browser = /** @class */ (function () {
|
|
|
35
35
|
var clientInfo = [];
|
|
36
36
|
for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
|
|
37
37
|
var key = keys_1[_i];
|
|
38
|
-
clientInfo = Browser.userAgent.match(REGX_BROWSER[key]);
|
|
38
|
+
clientInfo = Browser.userAgent.match(REGX_BROWSER["" + key]);
|
|
39
39
|
if (clientInfo) {
|
|
40
40
|
browserInfo.name = (clientInfo[1].toLowerCase() === 'opr' ? 'opera' : clientInfo[1].toLowerCase());
|
|
41
41
|
browserInfo.name = (clientInfo[1].toLowerCase() === 'crios' ? 'chrome' : browserInfo.name);
|
|
@@ -77,9 +77,9 @@ var Browser = /** @class */ (function () {
|
|
|
77
77
|
isPointer: 'pointercancel', isTouch: 'touchcancel', isDevice: 'mouseleave'
|
|
78
78
|
}
|
|
79
79
|
};
|
|
80
|
-
return (Browser.isPointer ? events[event].isPointer :
|
|
81
|
-
(Browser.isTouch ? events[event].isTouch + (!Browser.isDevice ? ' ' + events[event].isDevice : '')
|
|
82
|
-
: events[event].isDevice));
|
|
80
|
+
return (Browser.isPointer ? events["" + event].isPointer :
|
|
81
|
+
(Browser.isTouch ? events["" + event].isTouch + (!Browser.isDevice ? ' ' + events["" + event].isDevice : '')
|
|
82
|
+
: events["" + event].isDevice));
|
|
83
83
|
};
|
|
84
84
|
/**
|
|
85
85
|
* To get the Touch start event from browser
|
|
@@ -128,10 +128,10 @@ var Browser = /** @class */ (function () {
|
|
|
128
128
|
browserDetails['isTouch'] = true;
|
|
129
129
|
browserDetails['isPointer'] = true;
|
|
130
130
|
}
|
|
131
|
-
if ('undefined' === typeof browserDetails[key]) {
|
|
132
|
-
return browserDetails[key] = regX.test(Browser.userAgent);
|
|
131
|
+
if ('undefined' === typeof browserDetails["" + key]) {
|
|
132
|
+
return browserDetails["" + key] = regX.test(Browser.userAgent);
|
|
133
133
|
}
|
|
134
|
-
return browserDetails[key];
|
|
134
|
+
return browserDetails["" + key];
|
|
135
135
|
};
|
|
136
136
|
Object.defineProperty(Browser, "userAgent", {
|
|
137
137
|
get: function () {
|