@syncfusion/ej2-navigations 30.2.4 → 30.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.
@@ -8572,11 +8572,11 @@ var Tab = /** @__PURE__ @class */ (function (_super) {
8572
8572
  else if (this.isVertical() && (popIcon.offsetTop < lastChild.offsetTop + lastChild.offsetHeight)) {
8573
8573
  isOverflow = true;
8574
8574
  }
8575
- if (isOverflow) {
8575
+ if (isOverflow && !isNullOrUndefined(ele)) {
8576
8576
  ele.classList.add(CLS_TB_POPUP);
8577
8577
  this.tbPop.insertBefore(ele, selectAll('.' + CLS_TB_POPUP, this.tbPop)[0]);
8578
8578
  }
8579
- return true;
8579
+ return isOverflow;
8580
8580
  };
8581
8581
  Tab.prototype.popupHandler = function (target) {
8582
8582
  var ripEle = target.querySelector('.e-ripple-element');
@@ -8586,21 +8586,24 @@ var Tab = /** @__PURE__ @class */ (function (_super) {
8586
8586
  }
8587
8587
  this.tbItem = selectAll('.' + CLS_TB_ITEMS + ' .' + CLS_TB_ITEM, this.hdrEle);
8588
8588
  var lastChild = this.tbItem[this.tbItem.length - 1];
8589
- if (this.tbItem.length !== 0) {
8589
+ if (this.tbItem.length >= 0) {
8590
8590
  target.classList.remove(CLS_TB_POPUP);
8591
8591
  target.removeAttribute('style');
8592
8592
  this.tbItems.appendChild(target);
8593
8593
  this.actEleId = target.id;
8594
8594
  if (this.checkPopupOverflow(lastChild)) {
8595
- var prevEle = this.tbItems.lastChild.previousElementSibling;
8596
- prevEle = (prevEle && prevEle.classList.contains(CLS_INDICATOR) ? prevEle.previousElementSibling : prevEle);
8597
- if (prevEle) {
8598
- this.checkPopupOverflow(prevEle);
8595
+ for (var i = 0; i < this.tbItems.children.length; i++) {
8596
+ var prevEle = this.tbItems.lastChild.previousElementSibling;
8597
+ prevEle = (prevEle && prevEle.classList.contains(CLS_INDICATOR) ? prevEle.previousElementSibling : prevEle);
8598
+ if (!this.checkPopupOverflow(prevEle ? prevEle : target)) {
8599
+ break;
8600
+ }
8599
8601
  }
8600
8602
  }
8601
8603
  this.isPopup = true;
8602
8604
  }
8603
- return selectAll('.' + CLS_TB_ITEM, this.tbItems).length - 1;
8605
+ var tabItemsLength = selectAll('.' + CLS_TB_ITEM, this.tbItems).length;
8606
+ return tabItemsLength > 0 ? tabItemsLength - 1 : this.getEleIndex(target);
8604
8607
  };
8605
8608
  Tab.prototype.setCloseButton = function (val) {
8606
8609
  var trg = select('.' + CLS_HEADER$1, this.element);
@@ -10169,6 +10172,7 @@ var Tab = /** @__PURE__ @class */ (function (_super) {
10169
10172
  */
10170
10173
  Tab.prototype.getItemIndex = function (tabItemId) {
10171
10174
  var tabIndex;
10175
+ this.tbItem = selectAll('.' + CLS_TB_ITEM, this.getTabHeader());
10172
10176
  for (var i = 0; i < this.tbItem.length; i++) {
10173
10177
  var value = this.tbItem[i].getAttribute('data-id');
10174
10178
  if (tabItemId === value) {
@@ -10737,6 +10741,7 @@ var TreeView = /** @__PURE__ @class */ (function (_super) {
10737
10741
  _this.changeDataSource = false;
10738
10742
  _this.hasTemplate = false;
10739
10743
  _this.isFirstRender = false;
10744
+ _this.batchParentNode = new Set();
10740
10745
  // Specifies whether the node is dropped or not
10741
10746
  _this.isNodeDropped = false;
10742
10747
  _this.isInteracted = false;
@@ -11698,7 +11703,12 @@ var TreeView = /** @__PURE__ @class */ (function (_super) {
11698
11703
  }
11699
11704
  };
11700
11705
  TreeView.prototype.doCheckBoxAction = function (nodes, doCheck) {
11706
+ var _this = this;
11701
11707
  if (!isNullOrUndefined(nodes)) {
11708
+ if (nodes.length > 1 && this.autoCheck) {
11709
+ this.isBatchMode = true;
11710
+ this.batchParentNode = new Set();
11711
+ }
11702
11712
  nodes.reverse();
11703
11713
  for (var len = nodes.length - 1; len >= 0; len--) {
11704
11714
  var liEle = this.getElement(nodes[parseInt(len.toString(), 10)]);
@@ -11741,6 +11751,16 @@ var TreeView = /** @__PURE__ @class */ (function (_super) {
11741
11751
  var checkBox = select('.' + PARENTITEM + ' .' + CHECKBOXWRAP, liEle);
11742
11752
  this.validateCheckNode(checkBox, !doCheck, liEle, null);
11743
11753
  }
11754
+ if (this.isBatchMode && this.autoCheck) {
11755
+ this.isBatchMode = false;
11756
+ Array.from(this.batchParentNode).forEach(function (parentId) {
11757
+ var parentLi = _this.getElement(parentId);
11758
+ if (parentLi) {
11759
+ _this.ensureParentCheckState(parentLi);
11760
+ }
11761
+ });
11762
+ this.batchParentNode.clear();
11763
+ }
11744
11764
  }
11745
11765
  else {
11746
11766
  var checkBoxes = selectAll('.' + CHECKBOXWRAP, this.element);
@@ -13177,7 +13197,16 @@ var TreeView = /** @__PURE__ @class */ (function (_super) {
13177
13197
  if (this.autoCheck) {
13178
13198
  this.ensureChildCheckState(li);
13179
13199
  this.updateOldCheckedData([this.getNodeData(li)]);
13180
- this.ensureParentCheckState(closest(closest(li, '.' + PARENTITEM), '.' + LISTITEM));
13200
+ var parentLi = closest(closest(li, '.' + PARENTITEM), '.' + LISTITEM);
13201
+ if (this.isBatchMode) {
13202
+ var parentId = !isNullOrUndefined(parentLi) ? parentLi.getAttribute('data-uid') : null;
13203
+ if (parentId) {
13204
+ this.batchParentNode.add(parentId);
13205
+ }
13206
+ }
13207
+ else {
13208
+ this.ensureParentCheckState(parentLi);
13209
+ }
13181
13210
  var doCheck = void 0;
13182
13211
  if (eventArgs.action === 'check') {
13183
13212
  doCheck = true;