@syncfusion/ej2-dropdowns 24.2.5 → 24.2.7

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 : 24.2.5
3
+ * version : 24.2.7
4
4
  * Copyright Syncfusion Inc. 2001 - 2023. 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-dropdowns@*",
3
- "_id": "@syncfusion/ej2-dropdowns@24.2.4",
3
+ "_id": "@syncfusion/ej2-dropdowns@24.2.6",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-yO2x7003LTxaPl+OD2C6KP4XQaN6kVuzGVKtSz9vBtS2e3EZZpt8GmtRs1QOmMaR47kqD+Cv2ybUx1E3w13pKg==",
5
+ "_integrity": "sha512-kpe97YspOpxho03cZHTvb9PMfHFW1AzulVU2WjKkcu9hWsnO2dDfr3WTTJvuqSAUXNLkk//71q81j3qFdKQ35g==",
6
6
  "_location": "/@syncfusion/ej2-dropdowns",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -34,8 +34,8 @@
34
34
  "/@syncfusion/ej2-spreadsheet",
35
35
  "/@syncfusion/ej2-vue-dropdowns"
36
36
  ],
37
- "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-dropdowns/-/ej2-dropdowns-24.2.4.tgz",
38
- "_shasum": "24edaa5bfef0a2fa7ee08492553773b546b45011",
37
+ "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-dropdowns/-/ej2-dropdowns-24.2.6.tgz",
38
+ "_shasum": "890abdc1d9f968194287b33258c071719ac88f5f",
39
39
  "_spec": "@syncfusion/ej2-dropdowns@*",
40
40
  "_where": "/jenkins/workspace/elease-automation_release_24.1.1/packages/included",
41
41
  "author": {
@@ -43,9 +43,9 @@
43
43
  },
44
44
  "bundleDependencies": false,
45
45
  "dependencies": {
46
- "@syncfusion/ej2-base": "~24.2.5",
46
+ "@syncfusion/ej2-base": "~24.2.7",
47
47
  "@syncfusion/ej2-data": "~24.2.3",
48
- "@syncfusion/ej2-inputs": "~24.2.5",
48
+ "@syncfusion/ej2-inputs": "~24.2.7",
49
49
  "@syncfusion/ej2-lists": "~24.2.4",
50
50
  "@syncfusion/ej2-navigations": "~24.2.4",
51
51
  "@syncfusion/ej2-notifications": "~24.2.4",
@@ -74,7 +74,7 @@
74
74
  "module": "./index.js",
75
75
  "name": "@syncfusion/ej2-dropdowns",
76
76
  "typings": "index.d.ts",
77
- "version": "24.2.5",
77
+ "version": "24.2.7",
78
78
  "sideEffects": false,
79
79
  "homepage": "https://www.syncfusion.com/javascript-ui-controls"
80
80
  }
@@ -420,7 +420,7 @@ export declare class DropDownList extends DropDownBase implements IInput {
420
420
  protected updateValues(): void;
421
421
  protected onBlurHandler(e: MouseEvent): void;
422
422
  protected focusOutAction(e?: MouseEvent | KeyboardEventArgs): void;
423
- protected onFocusOut(): void;
423
+ protected onFocusOut(e?: MouseEvent | KeyboardEventArgs): void;
424
424
  protected onFocus(e?: FocusEvent | MouseEvent | KeyboardEvent | TouchEvent): void;
425
425
  private resetValueHandler;
426
426
  protected wireEvent(): void;
@@ -523,15 +523,15 @@ var DropDownList = /** @class */ (function (_super) {
523
523
  DropDownList.prototype.focusOutAction = function (e) {
524
524
  this.isInteracted = false;
525
525
  this.focusOut(e);
526
- this.onFocusOut();
526
+ this.onFocusOut(e);
527
527
  };
528
- DropDownList.prototype.onFocusOut = function () {
528
+ DropDownList.prototype.onFocusOut = function (e) {
529
529
  if (!this.enabled) {
530
530
  return;
531
531
  }
532
532
  if (this.isSelected) {
533
533
  this.isSelectCustom = false;
534
- this.onChangeEvent(null);
534
+ this.onChangeEvent(e);
535
535
  }
536
536
  this.floatLabelChange();
537
537
  this.dispatchEvent(this.hiddenElement, 'change');
@@ -1244,7 +1244,7 @@ var DropDownList = /** @class */ (function (_super) {
1244
1244
  this.hidePopup(e);
1245
1245
  this.isInteracted = false;
1246
1246
  if (!isActive) {
1247
- this.onFocusOut();
1247
+ this.onFocusOut(e);
1248
1248
  this.inputWrapper.container.classList.remove(dropDownListClasses.inputFocus);
1249
1249
  }
1250
1250
  }
@@ -1242,7 +1242,7 @@ var DropDownTree = /** @class */ (function (_super) {
1242
1242
  this.ensurePlaceHolder();
1243
1243
  ariaState = state === 'check' ? 'true' : 'false';
1244
1244
  if (!isNOU(ariaState)) {
1245
- wrapper.setAttribute('aria-checked', ariaState);
1245
+ wrapper.parentElement.setAttribute('aria-checked', ariaState);
1246
1246
  }
1247
1247
  };
1248
1248
  DropDownTree.prototype.setLocale = function (unSelect) {
@@ -2033,7 +2033,7 @@ var DropDownTree = /** @class */ (function (_super) {
2033
2033
  }
2034
2034
  if (this.showSelectAll && this.checkBoxElement) {
2035
2035
  var nodes = this.treeObj.element.querySelectorAll('li');
2036
- var checkedNodes = this.treeObj.element.querySelectorAll('li .e-checkbox-wrapper[aria-checked=true]');
2036
+ var checkedNodes = this.treeObj.element.querySelectorAll('li[aria-checked=true]');
2037
2037
  var wrap = closest(this.checkBoxElement, '.' + CHECKBOXWRAP);
2038
2038
  if (wrap && args.action === 'uncheck' && (args.isInteracted || checkedNodes.length === 0 || (!isNOU(args.data[0]) && args.data[0].isChecked === 'false'))) {
2039
2039
  this.isReverseUpdate = true;
@@ -1590,7 +1590,6 @@ var ListBox = /** @class */ (function (_super) {
1590
1590
  if (tListBox.mainList.childElementCount !== tListBox.jsonData.length) {
1591
1591
  tListBox.mainList = tListBox.ulElement;
1592
1592
  }
1593
- fListBox.updateMainList();
1594
1593
  var tJsonData = [].slice.call(tListBox.jsonData);
1595
1594
  tSortData = [].slice.call(tListBox.sortedData);
1596
1595
  this.selectNextList(elems, dataLiIdx, dataIdx, fListBox);
@@ -892,6 +892,20 @@ var Mention = /** @class */ (function (_super) {
892
892
  range.collapse(false);
893
893
  rect = range.getBoundingClientRect().top === 0 ? range.startContainer.getClientRects()[0] : range.getBoundingClientRect();
894
894
  }
895
+ var rectTop = rect.top;
896
+ var rectLeft = rect.left;
897
+ var iframes = document.querySelectorAll('iframe');
898
+ if (iframes.length > 0) {
899
+ for (var i = 0; i < iframes.length; i++) {
900
+ // eslint-disable-next-line security/detect-object-injection
901
+ var iframe = iframes[i];
902
+ if (iframe.contentDocument && iframe.contentDocument.contains(element)) {
903
+ var iframeRect = iframe.getBoundingClientRect();
904
+ rectTop += iframeRect.top;
905
+ rectLeft += iframeRect.left;
906
+ }
907
+ }
908
+ }
895
909
  var doc = document.documentElement;
896
910
  var windowLeft = (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);
897
911
  var windowTop = (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);
@@ -913,23 +927,23 @@ var Mention = /** @class */ (function (_super) {
913
927
  }
914
928
  if (!this.isContentEditable(this.inputElement)) {
915
929
  coordinates = {
916
- top: rect.top + windowTop + span.offsetTop + parseInt(computed.borderTopWidth, 10) +
930
+ top: rectTop + windowTop + span.offsetTop + parseInt(computed.borderTopWidth, 10) +
917
931
  parseInt(computed.fontSize, 10) + 3 - element.scrollTop - (this.isCollided ? 10 : 0),
918
- left: rect.left + windowLeft + span.offsetLeft + parseInt(computed.borderLeftWidth, 10)
932
+ left: rectLeft + windowLeft + span.offsetLeft + parseInt(computed.borderLeftWidth, 10)
919
933
  };
920
934
  document.body.removeChild(div);
921
935
  }
922
936
  else {
923
937
  if (this.collision && this.collision.length > 0 && this.collision.indexOf('right') > -1 && this.collision.indexOf('bottom') === -1) {
924
938
  coordinates = {
925
- top: rect.top + windowTop + parseInt(getComputedStyle(this.inputElement).fontSize, 10),
926
- left: rect.left + windowLeft + width
939
+ top: rectTop + windowTop + parseInt(getComputedStyle(this.inputElement).fontSize, 10),
940
+ left: rectLeft + windowLeft + width
927
941
  };
928
942
  }
929
943
  else {
930
944
  coordinates = {
931
- top: rect.top + windowTop + parseInt(getComputedStyle(this.inputElement).fontSize, 10) - (this.isCollided ? 10 : 0),
932
- left: rect.left + windowLeft + width
945
+ top: rectTop + windowTop + parseInt(getComputedStyle(this.inputElement).fontSize, 10) - (this.isCollided ? 10 : 0),
946
+ left: rectLeft + windowLeft + width
933
947
  };
934
948
  }
935
949
  }
@@ -51,6 +51,7 @@ export declare class MultiSelect extends DropDownBase implements IInput {
51
51
  private focusFirstListItem;
52
52
  private isCustomRendered;
53
53
  private isRemoteSelection;
54
+ private isSelectAllTarget;
54
55
  /**
55
56
  * The `fields` property maps the columns of the data table and binds the data to the component.
56
57
  * * text - Maps the text column from data table for each list item.
@@ -632,7 +632,7 @@ var MultiSelect = /** @class */ (function (_super) {
632
632
  };
633
633
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
634
634
  MultiSelect.prototype.openClick = function (e) {
635
- if (!this.openOnClick && this.mode !== 'CheckBox') {
635
+ if (!this.openOnClick && this.mode !== 'CheckBox' && !this.isPopupOpen()) {
636
636
  if (this.targetElement() !== '') {
637
637
  this.showPopup();
638
638
  }
@@ -1804,7 +1804,7 @@ var MultiSelect = /** @class */ (function (_super) {
1804
1804
  _this.trigger('removed', eventArgs);
1805
1805
  var targetEle_1 = eve && eve.currentTarget;
1806
1806
  var isSelectAll = (targetEle_1 && targetEle_1.classList.contains('e-selectall-parent')) ? true : null;
1807
- if (!_this.changeOnBlur && !isClearAll && (eve && length && !isSelectAll)) {
1807
+ if (!_this.changeOnBlur && !isClearAll && (eve && length && !isSelectAll && _this.isSelectAllTarget)) {
1808
1808
  _this.updateValueState(eve, _this.value, _this.tempValues);
1809
1809
  }
1810
1810
  if (length) {
@@ -2479,6 +2479,7 @@ var MultiSelect = /** @class */ (function (_super) {
2479
2479
  this.backCommand = true;
2480
2480
  this.isCustomRendered = false;
2481
2481
  this.isRemoteSelection = false;
2482
+ this.isSelectAllTarget = true;
2482
2483
  };
2483
2484
  MultiSelect.prototype.updateData = function (delimiterChar, e) {
2484
2485
  var data = '';
@@ -3396,6 +3397,7 @@ var MultiSelect = /** @class */ (function (_super) {
3396
3397
  count_1 = state ? this.maximumSelectionLength - (this.value ? this.value.length : 0) : this.maximumSelectionLength;
3397
3398
  }
3398
3399
  if (!beforeSelectArgs.preventSelectEvent) {
3400
+ this.isSelectAllTarget = (length === index_1 + 1);
3399
3401
  while (index_1 < length && index_1 <= 50 && index_1 < count_1) {
3400
3402
  this.updateListSelection(li[index_1], event, length - index_1);
3401
3403
  if (this.enableGroupCheckBox) {
@@ -3406,6 +3408,7 @@ var MultiSelect = /** @class */ (function (_super) {
3406
3408
  if (length > 50) {
3407
3409
  setTimeout(function () {
3408
3410
  while (index_1 < length && index_1 < count_1) {
3411
+ _this.isSelectAllTarget = (length === index_1 + 1);
3409
3412
  _this.updateListSelection(li[index_1], event, length - index_1);
3410
3413
  if (_this.enableGroupCheckBox) {
3411
3414
  _this.findGroupStart(li[index_1]);
@@ -3418,6 +3421,12 @@ var MultiSelect = /** @class */ (function (_super) {
3418
3421
  _this.isSelectAll = _this.isSelectAll ? !_this.isSelectAll : _this.isSelectAll;
3419
3422
  }
3420
3423
  _this.updateHiddenElement();
3424
+ if (_this.popupWrapper && li[index_1 - 1].classList.contains('e-item-focus')) {
3425
+ var selectAllParent = document.getElementsByClassName('e-selectall-parent')[0];
3426
+ if (selectAllParent && selectAllParent.classList.contains('e-item-focus')) {
3427
+ li[index_1 - 1].classList.remove('e-item-focus');
3428
+ }
3429
+ }
3421
3430
  }, 0);
3422
3431
  }
3423
3432
  }
@@ -3516,7 +3525,7 @@ var MultiSelect = /** @class */ (function (_super) {
3516
3525
  }
3517
3526
  if (this.mode === 'CheckBox') {
3518
3527
  this.updateDelimView();
3519
- if (!(isRemoveAll || this.isSelectAll)) {
3528
+ if (!(isRemoveAll || this.isSelectAll) && this.isSelectAllTarget) {
3520
3529
  this.updateDelimeter(this.delimiterChar, event);
3521
3530
  }
3522
3531
  this.refreshInputHight();