@syncfusion/ej2-navigations 33.2.7 → 33.2.8

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 (101) hide show
  1. package/dist/ej2-navigations.min.js +1 -10
  2. package/dist/ej2-navigations.umd.min.js +1 -10
  3. package/dist/ej2-navigations.umd.min.js.map +1 -1
  4. package/dist/es6/ej2-navigations.es2015.js +57 -3
  5. package/dist/es6/ej2-navigations.es2015.js.map +1 -1
  6. package/dist/es6/ej2-navigations.es5.js +57 -3
  7. package/dist/es6/ej2-navigations.es5.js.map +1 -1
  8. package/dist/global/ej2-navigations.min.js +1 -10
  9. package/dist/global/ej2-navigations.min.js.map +1 -1
  10. package/dist/global/index.d.ts +0 -9
  11. package/package.json +1 -1
  12. package/src/accordion/accordion.d.ts +3 -0
  13. package/src/accordion/accordion.js +27 -2
  14. package/src/sidebar/sidebar.d.ts +1 -0
  15. package/src/sidebar/sidebar.js +9 -1
  16. package/src/tab/tab.d.ts +1 -0
  17. package/src/tab/tab.js +21 -0
  18. package/styles/accordion/_layout.scss +10 -4
  19. package/styles/accordion/_material3-dark-definition.scss +1 -1
  20. package/styles/accordion/_material3-definition.scss +1 -1
  21. package/styles/accordion/_tailwind3-definition.scss +1 -1
  22. package/styles/accordion/_theme.scss +0 -4
  23. package/styles/accordion/bds.css +8 -8
  24. package/styles/accordion/bootstrap-dark.css +8 -8
  25. package/styles/accordion/bootstrap.css +8 -8
  26. package/styles/accordion/bootstrap4.css +8 -8
  27. package/styles/accordion/bootstrap5-dark.css +8 -8
  28. package/styles/accordion/bootstrap5.3.css +8 -8
  29. package/styles/accordion/bootstrap5.css +8 -8
  30. package/styles/accordion/fabric-dark.css +8 -8
  31. package/styles/accordion/fabric.css +8 -8
  32. package/styles/accordion/fluent-dark.css +8 -8
  33. package/styles/accordion/fluent.css +8 -8
  34. package/styles/accordion/fluent2.css +8 -16
  35. package/styles/accordion/highcontrast-light.css +8 -8
  36. package/styles/accordion/highcontrast.css +8 -8
  37. package/styles/accordion/material-dark.css +8 -8
  38. package/styles/accordion/material.css +8 -8
  39. package/styles/accordion/material3-dark.css +8 -8
  40. package/styles/accordion/material3.css +8 -8
  41. package/styles/accordion/tailwind-dark.css +8 -8
  42. package/styles/accordion/tailwind.css +8 -8
  43. package/styles/accordion/tailwind3.css +8 -16
  44. package/styles/bds-lite.css +8 -8
  45. package/styles/bds.css +8 -8
  46. package/styles/bootstrap-dark-lite.css +8 -8
  47. package/styles/bootstrap-dark.css +9 -9
  48. package/styles/bootstrap-lite.css +8 -8
  49. package/styles/bootstrap.css +9 -9
  50. package/styles/bootstrap4-lite.css +8 -8
  51. package/styles/bootstrap4.css +8 -8
  52. package/styles/bootstrap5-dark-lite.css +8 -8
  53. package/styles/bootstrap5-dark.css +8 -8
  54. package/styles/bootstrap5-lite.css +8 -8
  55. package/styles/bootstrap5.3-lite.css +8 -8
  56. package/styles/bootstrap5.3.css +8 -8
  57. package/styles/bootstrap5.css +8 -8
  58. package/styles/fabric-dark-lite.css +8 -8
  59. package/styles/fabric-dark.css +9 -9
  60. package/styles/fabric-lite.css +8 -8
  61. package/styles/fabric.css +9 -9
  62. package/styles/fluent-dark-lite.css +8 -8
  63. package/styles/fluent-dark.css +8 -8
  64. package/styles/fluent-lite.css +8 -8
  65. package/styles/fluent.css +8 -8
  66. package/styles/fluent2-lite.css +8 -16
  67. package/styles/fluent2.css +8 -16
  68. package/styles/highcontrast-light-lite.css +8 -8
  69. package/styles/highcontrast-light.css +9 -9
  70. package/styles/highcontrast-lite.css +8 -8
  71. package/styles/highcontrast.css +9 -9
  72. package/styles/material-dark-lite.css +9 -9
  73. package/styles/material-dark.css +10 -10
  74. package/styles/material-lite.css +9 -9
  75. package/styles/material.css +10 -10
  76. package/styles/material3-dark-lite.css +8 -8
  77. package/styles/material3-dark.css +8 -8
  78. package/styles/material3-lite.css +8 -8
  79. package/styles/material3.css +8 -8
  80. package/styles/tailwind-dark-lite.css +8 -8
  81. package/styles/tailwind-dark.css +8 -8
  82. package/styles/tailwind-lite.css +8 -8
  83. package/styles/tailwind.css +8 -8
  84. package/styles/tailwind3-lite.css +8 -16
  85. package/styles/tailwind3.css +8 -16
  86. package/styles/treeview/_bootstrap-dark-definition.scss +1 -1
  87. package/styles/treeview/_bootstrap-definition.scss +1 -1
  88. package/styles/treeview/_fabric-dark-definition.scss +1 -1
  89. package/styles/treeview/_fabric-definition.scss +1 -1
  90. package/styles/treeview/_highcontrast-definition.scss +1 -1
  91. package/styles/treeview/_highcontrast-light-definition.scss +1 -1
  92. package/styles/treeview/_material-dark-definition.scss +2 -2
  93. package/styles/treeview/_material-definition.scss +2 -2
  94. package/styles/treeview/bootstrap-dark.css +1 -1
  95. package/styles/treeview/bootstrap.css +1 -1
  96. package/styles/treeview/fabric-dark.css +1 -1
  97. package/styles/treeview/fabric.css +1 -1
  98. package/styles/treeview/highcontrast-light.css +1 -1
  99. package/styles/treeview/highcontrast.css +1 -1
  100. package/styles/treeview/material-dark.css +2 -2
  101. package/styles/treeview/material.css +2 -2
@@ -6296,6 +6296,7 @@ var CLS_ACRDN_ROOT = 'e-acrdn-root';
6296
6296
  var CLS_ROOT$2 = 'e-accordion';
6297
6297
  var CLS_ITEM$1 = 'e-acrdn-item';
6298
6298
  var CLS_ITEMFOCUS = 'e-item-focus';
6299
+ var CLS_KEYBOARDFOCUS = 'e-focused';
6299
6300
  var CLS_ITEMHIDE = 'e-hide';
6300
6301
  var CLS_HEADER = 'e-acrdn-header';
6301
6302
  var CLS_HEADERICN = 'e-acrdn-header-icon';
@@ -6405,6 +6406,7 @@ var Accordion = /** @__PURE__ @class */ (function (_super) {
6405
6406
  */
6406
6407
  function Accordion(options, element) {
6407
6408
  var _this = _super.call(this, options, element) || this;
6409
+ _this.isKeyboardNavigation = false;
6408
6410
  /**
6409
6411
  * Contains the keyboard configuration of the Accordion.
6410
6412
  */
@@ -6519,6 +6521,9 @@ var Accordion = /** @__PURE__ @class */ (function (_super) {
6519
6521
  };
6520
6522
  Accordion.prototype.unWireEvents = function () {
6521
6523
  EventHandler.remove(this.element, 'click', this.clickHandler);
6524
+ EventHandler.remove(this.element, 'keydown', this.keyDownHandler);
6525
+ EventHandler.remove(document, 'keydown', this.keyDownHandler);
6526
+ EventHandler.remove(this.element, 'mousedown', this.mouseDownHandler);
6522
6527
  if (!isNullOrUndefined(this.keyModule)) {
6523
6528
  this.keyModule.destroy();
6524
6529
  }
@@ -6530,6 +6535,9 @@ var Accordion = /** @__PURE__ @class */ (function (_super) {
6530
6535
  };
6531
6536
  Accordion.prototype.wireEvents = function () {
6532
6537
  EventHandler.add(this.element, 'click', this.clickHandler, this);
6538
+ EventHandler.add(this.element, 'keydown', this.keyDownHandler, this);
6539
+ EventHandler.add(document, 'keydown', this.keyDownHandler, this);
6540
+ EventHandler.add(this.element, 'mousedown', this.mouseDownHandler, this);
6533
6541
  if (!this.isNested && !this.isDestroy) {
6534
6542
  this.removeRippleEffect = rippleEffect(this.element, { selector: '.' + CLS_HEADER });
6535
6543
  }
@@ -6574,10 +6582,27 @@ var Accordion = /** @__PURE__ @class */ (function (_super) {
6574
6582
  return this.itemTemplateFn;
6575
6583
  };
6576
6584
  Accordion.prototype.focusIn = function (e) {
6577
- e.target.parentElement.classList.add(CLS_ITEMFOCUS);
6585
+ var targetItem = e.target.parentElement;
6586
+ targetItem.classList.add(CLS_ITEMFOCUS);
6587
+ if (this.isKeyboardNavigation) {
6588
+ targetItem.classList.add(CLS_KEYBOARDFOCUS);
6589
+ this.isKeyboardNavigation = false;
6590
+ }
6578
6591
  };
6579
6592
  Accordion.prototype.focusOut = function (e) {
6580
- e.target.parentElement.classList.remove(CLS_ITEMFOCUS);
6593
+ var targetItem = e.target.parentElement;
6594
+ targetItem.classList.remove(CLS_ITEMFOCUS);
6595
+ targetItem.classList.remove(CLS_KEYBOARDFOCUS);
6596
+ };
6597
+ Accordion.prototype.keyDownHandler = function (e) {
6598
+ if (e.key === 'Tab' || e.key === 'ArrowUp' || e.key === 'ArrowDown') {
6599
+ this.isKeyboardNavigation = true;
6600
+ }
6601
+ };
6602
+ Accordion.prototype.mouseDownHandler = function (e) {
6603
+ this.isKeyboardNavigation = false;
6604
+ var targetItem = e.target.parentElement;
6605
+ targetItem.classList.remove(CLS_KEYBOARDFOCUS);
6581
6606
  };
6582
6607
  Accordion.prototype.ctrlTemplate = function () {
6583
6608
  this.ctrlTem = this.element.cloneNode(true);
@@ -8397,6 +8422,7 @@ var Tab = /** @__PURE__ @class */ (function (_super) {
8397
8422
  Tab.prototype.refreshOverflow = function () {
8398
8423
  if (!isNullOrUndefined(this.tbObj)) {
8399
8424
  this.tbObj.refreshOverflow();
8425
+ this.updatePopupIconAriaLabel();
8400
8426
  }
8401
8427
  };
8402
8428
  /**
@@ -8563,6 +8589,7 @@ var Tab = /** @__PURE__ @class */ (function (_super) {
8563
8589
  this.hdrEle.setAttribute('aria-labelledby', this.element.getAttribute('aria-labelledby'));
8564
8590
  this.element.removeAttribute('aria-labelledby');
8565
8591
  }
8592
+ this.updatePopupIconAriaLabel();
8566
8593
  this.setCloseButton(this.showCloseButton);
8567
8594
  var toolbarHeader = this.tbObj.element.querySelector('.' + CLS_TB_ITEMS);
8568
8595
  if (!isNullOrUndefined(toolbarHeader)) {
@@ -8571,6 +8598,21 @@ var Tab = /** @__PURE__ @class */ (function (_super) {
8571
8598
  }
8572
8599
  }
8573
8600
  };
8601
+ Tab.prototype.updatePopupIconAriaLabel = function () {
8602
+ if (isNullOrUndefined(this.hdrEle) || isNullOrUndefined(this.tbObj) || this.tbObj.overflowMode !== 'Popup') {
8603
+ return;
8604
+ }
8605
+ var nav = this.hdrEle.querySelector('.' + CLS_HOR_NAV);
8606
+ if (isNullOrUndefined(nav)) {
8607
+ return;
8608
+ }
8609
+ var raw = window.getComputedStyle(nav, '::before').getPropertyValue('content');
8610
+ var beforeText = (raw || '').trim().replace(/^['"]|['"]$/g, '').replace(/\\(["'])/g, '$1').replace(/\\\\/g, '\\');
8611
+ var label = (beforeText && beforeText !== 'none' && beforeText !== 'normal')
8612
+ ? beforeText
8613
+ : 'overflow';
8614
+ nav.setAttribute('aria-label', label);
8615
+ };
8574
8616
  Tab.prototype.createContentElement = function (index) {
8575
8617
  var contentElement = this.createElement('div', {
8576
8618
  id: CLS_CONTENT$1 + this.tabId + '_' + index, className: CLS_ITEM$2,
@@ -10018,11 +10060,13 @@ var Tab = /** @__PURE__ @class */ (function (_super) {
10018
10060
  this.trigger('adding', addArgs, function (tabAddingArgs) {
10019
10061
  if (!tabAddingArgs.cancel) {
10020
10062
  _this.addingTabContent(items, index);
10063
+ _this.updatePopupIconAriaLabel();
10021
10064
  }
10022
10065
  });
10023
10066
  }
10024
10067
  else {
10025
10068
  this.addingTabContent(items, index);
10069
+ this.updatePopupIconAriaLabel();
10026
10070
  }
10027
10071
  if (this.isReact) {
10028
10072
  this.renderReactTemplates();
@@ -10469,6 +10513,7 @@ var Tab = /** @__PURE__ @class */ (function (_super) {
10469
10513
  this.tbObj.overflowMode = newProp.overflowMode;
10470
10514
  this.tbObj.dataBind();
10471
10515
  this.refreshActiveTabBorder();
10516
+ this.updatePopupIconAriaLabel();
10472
10517
  break;
10473
10518
  case 'heightAdjustMode':
10474
10519
  this.setContentHeight(false);
@@ -10637,6 +10682,7 @@ var Tab = /** @__PURE__ @class */ (function (_super) {
10637
10682
  this.select(this.getEleIndex(activeEle));
10638
10683
  }
10639
10684
  this.refreshActiveBorder();
10685
+ this.updatePopupIconAriaLabel();
10640
10686
  };
10641
10687
  __decorate$7([
10642
10688
  Collection([], TabItem)
@@ -16744,6 +16790,7 @@ var Sidebar = /** @__PURE__ @class */ (function (_super) {
16744
16790
  var _this = _super.call(this, options, element) || this;
16745
16791
  _this.documentClickContext = _this.documentclickHandler.bind(_this);
16746
16792
  _this.resizeHandler = _this.resize.bind(_this);
16793
+ _this.preventClose = false;
16747
16794
  return _this;
16748
16795
  }
16749
16796
  Sidebar.prototype.preRender = function () {
@@ -16940,6 +16987,10 @@ var Sidebar = /** @__PURE__ @class */ (function (_super) {
16940
16987
  setTimeout(function () { return _this.setTimeOut(); }, 50);
16941
16988
  }
16942
16989
  EventHandler.add(_this.element, 'transitionend', _this.transitionEnd, _this);
16990
+ _this.preventClose = false;
16991
+ }
16992
+ else {
16993
+ _this.preventClose = true;
16943
16994
  }
16944
16995
  });
16945
16996
  };
@@ -17197,9 +17248,12 @@ var Sidebar = /** @__PURE__ @class */ (function (_super) {
17197
17248
  case 'type':
17198
17249
  this.checkType(false);
17199
17250
  removeClass([this.element], [VISIBILITY]);
17200
- this.addClass();
17251
+ if (!this.preventClose) {
17252
+ this.addClass();
17253
+ }
17201
17254
  addClass([this.element], this.type === 'Auto' ? (Browser.isDevice ? ['e-over'] :
17202
17255
  ['e-push']) : ['e-' + this.type.toLowerCase()]);
17256
+ this.setType(this.type);
17203
17257
  break;
17204
17258
  case 'position':
17205
17259
  this.element.style.transform = '';