@syncfusion/ej2-base 20.2.38 → 20.2.45

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.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 20.2.38
3
+ * version : 20.2.45
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
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "_from": "@syncfusion/ej2-base@*",
3
- "_id": "@syncfusion/ej2-base@20.2.36",
3
+ "_id": "@syncfusion/ej2-base@20.2.43",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-PVVdLzKeoDUW4CQ7OC3O+gWeFMLnll6YsVnM/pJkUYo7ny/CZ6FvlHF7YZvTqcUCM6ndZebEom30WKk4YtKecA==",
5
+ "_integrity": "sha512-rlIi6t1RJQ3BGUhwUK2EGcPTGdUwe4BVsepacfNOeH53j1rzubjHuAleGhh+q29+iU0hdgOL/MbxI+Hv0GK0LQ==",
6
6
  "_location": "/@syncfusion/ej2-base",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -155,8 +155,8 @@
155
155
  "/@syncfusion/ej2-vue-treegrid",
156
156
  "/@syncfusion/ej2-vue-treemap"
157
157
  ],
158
- "_resolved": "http://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-base/-/ej2-base-20.2.36.tgz",
159
- "_shasum": "32d82d3499a3fb502a4e982ec6725dc535c1f06a",
158
+ "_resolved": "http://nexus.syncfusion.com/repository/ej2-hotfix-new/@syncfusion/ej2-base/-/ej2-base-20.2.43.tgz",
159
+ "_shasum": "eeafff15c23602839b4559f93cab0edbc66baadc",
160
160
  "_spec": "@syncfusion/ej2-base@*",
161
161
  "_where": "/jenkins/workspace/automation_release_19.1.0.1-ZPMUBNQ6AUYH6YGEFBPVYMEQLRRW2SLD4XCZ6GATNZJFYJ3RIAOA/packages/included",
162
162
  "author": {
@@ -170,7 +170,7 @@
170
170
  },
171
171
  "bundleDependencies": false,
172
172
  "dependencies": {
173
- "@syncfusion/ej2-icons": "~20.2.38"
173
+ "@syncfusion/ej2-icons": "~20.2.45"
174
174
  },
175
175
  "deprecated": false,
176
176
  "description": "A common package of Essential JS 2 base libraries, methods and class definitions",
@@ -211,6 +211,6 @@
211
211
  "url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
212
212
  },
213
213
  "typings": "index.d.ts",
214
- "version": "20.2.38",
214
+ "version": "20.2.45",
215
215
  "sideEffects": true
216
216
  }
@@ -331,6 +331,9 @@ export declare class Draggable extends Base<HTMLElement> implements INotifyPrope
331
331
  private getProcessedPositionValue;
332
332
  private calculateParentPosition;
333
333
  private intDrag;
334
+ private getScrollParent;
335
+ private getScrollPosition;
336
+ private getPathElements;
334
337
  private triggerOutFunction;
335
338
  private getDragPosition;
336
339
  private getDocumentWidthHeight;
package/src/draggable.js CHANGED
@@ -510,23 +510,30 @@ var Draggable = /** @class */ (function (_super) {
510
510
  draEleTop -= this.parentScrollY;
511
511
  draEleLeft -= this.parentScrollX;
512
512
  }
513
- if (this.helperElement.classList.contains('e-treeview')) {
514
- var body = document.body;
515
- var html = document.documentElement;
516
- var tempHeight = Math.max(body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight);
517
- var tempWidth = Math.max(body.offsetWidth, html.clientWidth, html.scrollWidth, html.offsetWidth);
518
- if (draEleTop > tempHeight) {
519
- draEleTop = tempHeight;
520
- }
521
- if (draEleLeft > tempWidth) {
522
- draEleLeft = tempWidth;
523
- }
524
- }
525
513
  var dragValue = this.getProcessedPositionValue({ top: draEleTop + 'px', left: draEleLeft + 'px' });
526
514
  setStyleAttribute(helperElement, this.getDragPosition(dragValue));
527
- if (!this.elementInViewport(helperElement) && this.enableAutoScroll) {
515
+ if (!this.elementInViewport(helperElement) && this.enableAutoScroll && !this.helperElement.classList.contains('e-treeview')) {
528
516
  this.helperElement.scrollIntoView();
529
517
  }
518
+ var elements = document.querySelectorAll(':hover');
519
+ if (this.enableAutoScroll && this.helperElement.classList.contains('e-treeview')) {
520
+ if (elements.length === 0) {
521
+ elements = this.getPathElements(evt);
522
+ }
523
+ /* tslint:disable no-any */
524
+ var scrollParent = this.getScrollParent(elements, false);
525
+ if (this.elementInViewport(this.helperElement)) {
526
+ this.getScrollPosition(scrollParent, draEleTop);
527
+ }
528
+ else if (!this.elementInViewport(this.helperElement)) {
529
+ elements = [].slice.call(document.querySelectorAll(':hover'));
530
+ if (elements.length === 0) {
531
+ elements = this.getPathElements(evt);
532
+ }
533
+ scrollParent = this.getScrollParent(elements, true);
534
+ this.getScrollPosition(scrollParent, draEleTop);
535
+ }
536
+ }
530
537
  this.dragProcessStarted = true;
531
538
  this.prevLeft = left;
532
539
  this.prevTop = top;
@@ -535,6 +542,48 @@ var Draggable = /** @class */ (function (_super) {
535
542
  this.pageX = pagex;
536
543
  this.pageY = pagey;
537
544
  };
545
+ /* tslint:disable no-any */
546
+ Draggable.prototype.getScrollParent = function (node, reverse) {
547
+ /* tslint:disable no-any */
548
+ var nodeEl = reverse ? node.reverse() : node;
549
+ var hasScroll;
550
+ for (var i = nodeEl.length - 1; i >= 0; i--) {
551
+ hasScroll = window.getComputedStyle(nodeEl[i])['overflow-y'];
552
+ if ((hasScroll === 'auto' || hasScroll === 'scroll')
553
+ && nodeEl[i].scrollHeight > nodeEl[i].clientHeight) {
554
+ return nodeEl[i];
555
+ }
556
+ }
557
+ hasScroll = window.getComputedStyle(document.scrollingElement)['overflow-y'];
558
+ if (hasScroll === 'visible') {
559
+ document.scrollingElement.style.overflow = 'auto';
560
+ return document.scrollingElement;
561
+ }
562
+ };
563
+ Draggable.prototype.getScrollPosition = function (nodeEle, draEleTop) {
564
+ if (nodeEle && nodeEle === document.scrollingElement) {
565
+ if ((nodeEle.clientHeight - nodeEle.getBoundingClientRect().top - this.helperElement.clientHeight) < draEleTop
566
+ && nodeEle.getBoundingClientRect().height > draEleTop) {
567
+ nodeEle.scrollTop += this.helperElement.clientHeight;
568
+ }
569
+ else if (nodeEle.scrollHeight - nodeEle.clientHeight > draEleTop) {
570
+ nodeEle.scrollTop -= this.helperElement.clientHeight;
571
+ }
572
+ }
573
+ else if (nodeEle && nodeEle !== document.scrollingElement) {
574
+ if ((nodeEle.clientHeight + nodeEle.getBoundingClientRect().top - this.helperElement.clientHeight) < draEleTop) {
575
+ nodeEle.scrollTop += this.helperElement.clientHeight;
576
+ }
577
+ else if (nodeEle.getBoundingClientRect().top > (draEleTop - this.helperElement.clientHeight)) {
578
+ nodeEle.scrollTop -= this.helperElement.clientHeight;
579
+ }
580
+ }
581
+ };
582
+ Draggable.prototype.getPathElements = function (evt) {
583
+ var elementTop = evt.clientX > 0 ? evt.clientX : 0;
584
+ var elementLeft = evt.clientY > 0 ? evt.clientY : 0;
585
+ return document.elementsFromPoint(elementTop, elementLeft);
586
+ };
538
587
  Draggable.prototype.triggerOutFunction = function (evt, eleObj) {
539
588
  this.hoverObject.instance.intOut(evt, eleObj.target);
540
589
  this.hoverObject.instance.dragData[this.scope] = null;
@@ -1,5 +1,6 @@
1
1
  /**
2
2
  * To set license key.
3
+ *
3
4
  * @param {string} key - license key
4
5
  */
5
6
  export declare function registerLicense(key: string): void;
@@ -16,19 +16,19 @@ var LicenseValidator = /** @class */ (function () {
16
16
  noLicense: 'This application was built using a trial version of Syncfusion Essential Studio.' +
17
17
  ' Please include a valid license to permanently remove this license validation message.' +
18
18
  ' You can also obtain a free 30 day evaluation license to temporarily remove this message ' +
19
- 'during the evaluation period. Please refer to this <a style="color:yellow;text-decoration:none;"' +
19
+ 'during the evaluation period. Please refer to this <a class="e-license"' +
20
20
  'href="https://help.syncfusion.com/common/essential-studio/licensing">help topic</a> for more information.',
21
21
  trailExpired: 'Your Syncfusion trial license has expired. Please refer to this ' +
22
- '<a style="color:yellow;text-decoration:none;"' +
22
+ '<a class="e-license"' +
23
23
  'href="https://help.syncfusion.com/common/essential-studio/licensing/licensing-errors#trial-expired">help topic</a> for more information.',
24
24
  versionMismatched: 'The included Syncfusion license (v##LicenseVersion) is invalid for version ' +
25
- '##Requireversion. Please refer to this <a style="color:yellow;text-decoration:none;" ' +
25
+ '##Requireversion. Please refer to this <a class="e-license" ' +
26
26
  'href="https://help.syncfusion.com/es/licensing/version-mismatch/">help topic</a> for more information.',
27
27
  platformMismatched: 'The included Syncfusion license is invalid (Platform mismatch). Please refer' +
28
- ' to this <a style="color:yellow;text-decoration:none;" ' +
28
+ ' to this <a class="e-license" ' +
29
29
  'href="https://help.syncfusion.com/common/essential-studio/licensing/licensing-errors#platform-mismatch">help topic</a> for more information.',
30
30
  invalidKey: 'The included Syncfusion license is invalid. Please refer to this ' +
31
- '<a style="color:yellow;text-decoration:none;" ' +
31
+ '<a class="e-license" ' +
32
32
  'href="https://help.syncfusion.com/common/essential-studio/licensing/licensing-errors#invalid-key">help topic</a> for more information.'
33
33
  };
34
34
  /**
@@ -47,7 +47,7 @@ var LicenseValidator = /** @class */ (function () {
47
47
  * To manage npx licensing operation.
48
48
  */
49
49
  this.npxManager = (function () {
50
- var npxLicKey = "npxKeyReplace";
50
+ var npxLicKey = 'npxKeyReplace';
51
51
  function get() { return npxLicKey; }
52
52
  return {
53
53
  getKey: get
@@ -57,11 +57,11 @@ var LicenseValidator = /** @class */ (function () {
57
57
  }
58
58
  /**
59
59
  * To validate the provided license key.
60
- */
60
+ */
61
61
  LicenseValidator.prototype.validate = function () {
62
62
  if (!this.isValidated && (containerObject && !getValue(convertToChar(bypassKey), containerObject) && !getValue('Blazor', containerObject))) {
63
63
  var validateMsg = void 0;
64
- if ((this.manager && this.manager.getKey()) || (this.npxManager && this.npxManager.getKey() != 'npxKeyReplace')) {
64
+ if ((this.manager && this.manager.getKey()) || (this.npxManager && this.npxManager.getKey() !== 'npxKeyReplace')) {
65
65
  var result = this.getInfoFromKey();
66
66
  if (result && result.length) {
67
67
  for (var _i = 0, result_1 = result; _i < result_1.length; _i++) {
@@ -93,11 +93,10 @@ var LicenseValidator = /** @class */ (function () {
93
93
  else {
94
94
  validateMsg = this.errors.noLicense;
95
95
  }
96
- if (validateMsg && typeof document !== "undefined" && !isNullOrUndefined(document)) {
96
+ if (validateMsg && typeof document !== 'undefined' && !isNullOrUndefined(document)) {
97
97
  var errorDiv = createElement('div', {
98
98
  innerHTML: validateMsg +
99
- '<span style="position:absolute;right: 10px;top:27%;cursor:pointer;"' +
100
- 'onClick=this.parentElement.remove();>' +
99
+ '<span id="license-banner-error" class=".e-license-banner">' +
101
100
  '<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20">' +
102
101
  '<line x1="5" y1="5" x2="15" y2="15" stroke="yellow" stroke-width="2.5" ' +
103
102
  'stroke-miterlimit="10" stroke-linecap="round"></line><line x1="15" y1="5" ' +
@@ -109,6 +108,9 @@ var LicenseValidator = /** @class */ (function () {
109
108
  });
110
109
  errorDiv.setAttribute('id', 'js-licensing');
111
110
  document.body.appendChild(errorDiv);
111
+ document.getElementById('license-banner-error').addEventListener('click', function () {
112
+ document.getElementById('js-licensing').remove();
113
+ });
112
114
  }
113
115
  this.isValidated = true;
114
116
  setValue(convertToChar(bypassKey), this.isValidated, containerObject);
@@ -208,6 +210,7 @@ function convertToChar(cArr) {
208
210
  }
209
211
  /**
210
212
  * To set license key.
213
+ *
211
214
  * @param {string} key - license key
212
215
  */
213
216
  export function registerLicense(key) {