@quartzds/core 1.0.0-beta.123 → 1.0.0-beta.124

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 (178) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/components/index.js +1 -1
  3. package/components/{p-CVuTVnQo.js → p-B6ToH-uM.js} +4 -4
  4. package/components/p-B6ToH-uM.js.map +1 -0
  5. package/components/{p-CbY4T0d2.js → p-BGAgQ6J5.js} +3 -3
  6. package/components/{p-CbY4T0d2.js.map → p-BGAgQ6J5.js.map} +1 -1
  7. package/components/{p-BZlKeCFb.js → p-BPNu4xuI.js} +9 -9
  8. package/components/{p-BZlKeCFb.js.map → p-BPNu4xuI.js.map} +1 -1
  9. package/components/{p-BoSYRCNp.js → p-BceRDckL.js} +4 -4
  10. package/components/{p-BoSYRCNp.js.map → p-BceRDckL.js.map} +1 -1
  11. package/components/{p-BalM52S_.js → p-Bm_hrsjc.js} +6 -3
  12. package/components/p-Bm_hrsjc.js.map +1 -0
  13. package/components/{p-C93kOEAe.js → p-BxrR19WD.js} +5 -5
  14. package/components/{p-C93kOEAe.js.map → p-BxrR19WD.js.map} +1 -1
  15. package/components/{p-CowZ-pDD.js → p-CsIsG3ra.js} +75 -39
  16. package/components/p-CsIsG3ra.js.map +1 -0
  17. package/components/{p-BvRd7jA2.js → p-D5u-bDNf.js} +6 -6
  18. package/components/{p-BvRd7jA2.js.map → p-D5u-bDNf.js.map} +1 -1
  19. package/components/{p-B7s906mS.js → p-DVXvtEPn.js} +6 -6
  20. package/components/{p-B7s906mS.js.map → p-DVXvtEPn.js.map} +1 -1
  21. package/components/{p-yb0Kv4Y6.js → p-De7cAKF1.js} +24 -9
  22. package/components/p-De7cAKF1.js.map +1 -0
  23. package/components/{p-C9R8N06B.js → p-EjoVBa5a.js} +3 -3
  24. package/components/{p-C9R8N06B.js.map → p-EjoVBa5a.js.map} +1 -1
  25. package/components/{p-CKp062X8.js → p-Vtb6GsBy.js} +6 -6
  26. package/components/{p-CKp062X8.js.map → p-Vtb6GsBy.js.map} +1 -1
  27. package/components/qds-action-item.js +3 -3
  28. package/components/qds-avatar-media.js +1 -1
  29. package/components/qds-breadcrumb-item.js +11 -6
  30. package/components/qds-breadcrumb-item.js.map +1 -1
  31. package/components/qds-button.js +9 -9
  32. package/components/qds-button.js.map +1 -1
  33. package/components/qds-checkbox.js +1 -1
  34. package/components/qds-chip.js +4 -4
  35. package/components/qds-dialog.js +5 -5
  36. package/components/qds-dialog.js.map +1 -1
  37. package/components/qds-divider.js +1 -1
  38. package/components/qds-dropdown.js +1 -1
  39. package/components/qds-form-message.js +23 -17
  40. package/components/qds-form-message.js.map +1 -1
  41. package/components/qds-icon-button.js +1 -1
  42. package/components/qds-icon-tab.js +4 -4
  43. package/components/qds-icon.js +1 -1
  44. package/components/qds-inline-link.js +5 -5
  45. package/components/qds-inline-link.js.map +1 -1
  46. package/components/qds-input.js +4 -4
  47. package/components/qds-label.js +2 -2
  48. package/components/qds-list-item.js +16 -13
  49. package/components/qds-list-item.js.map +1 -1
  50. package/components/qds-loader.js +1 -1
  51. package/components/qds-menu-item.js +38 -12
  52. package/components/qds-menu-item.js.map +1 -1
  53. package/components/qds-mini-button.js +1 -1
  54. package/components/qds-progress-bar.js +1 -1
  55. package/components/qds-radio.js +1 -1
  56. package/components/qds-select.js +3 -3
  57. package/components/qds-standalone-link.js +4 -4
  58. package/components/qds-switch.js +5 -5
  59. package/components/qds-tab.js +7 -7
  60. package/components/qds-tabbar.js +59 -38
  61. package/components/qds-tabbar.js.map +1 -1
  62. package/components/qds-table-cell.js +2 -2
  63. package/components/qds-table-head-cell.js +2 -2
  64. package/components/qds-table-row.js +1 -1
  65. package/components/qds-table.js +1 -1
  66. package/components/qds-tag.js +1 -1
  67. package/components/qds-textarea.js +3 -3
  68. package/components/qds-title.js +1 -1
  69. package/components/qds-tooltip.js +1 -1
  70. package/dist/cjs/{helpers-Qs3cpKiI.js → helpers-CPSgo4Ef.js} +8 -2
  71. package/dist/cjs/{helpers-Qs3cpKiI.js.map → helpers-CPSgo4Ef.js.map} +1 -1
  72. package/dist/cjs/loader.cjs.js +1 -1
  73. package/dist/cjs/qds-action-item.cjs.entry.js +1 -1
  74. package/dist/cjs/qds-avatar-media.qds-checkbox.qds-radio.entry.cjs.js.map +1 -1
  75. package/dist/cjs/qds-avatar-media_3.cjs.entry.js +72 -36
  76. package/dist/cjs/qds-breadcrumb-item.cjs.entry.js +9 -4
  77. package/dist/cjs/qds-breadcrumb-item.entry.cjs.js.map +1 -1
  78. package/dist/cjs/qds-button.cjs.entry.js +7 -7
  79. package/dist/cjs/qds-button.entry.cjs.js.map +1 -1
  80. package/dist/cjs/qds-chip.cjs.entry.js +1 -1
  81. package/dist/cjs/qds-dialog.cjs.entry.js +2 -2
  82. package/dist/cjs/qds-dialog.entry.cjs.js.map +1 -1
  83. package/dist/cjs/qds-divider.qds-icon-button.entry.cjs.js.map +1 -1
  84. package/dist/cjs/qds-divider_2.cjs.entry.js +4 -4
  85. package/dist/cjs/qds-dropdown.cjs.entry.js +20 -6
  86. package/dist/cjs/qds-dropdown.entry.cjs.js.map +1 -1
  87. package/dist/cjs/qds-form-message.cjs.entry.js +26 -16
  88. package/dist/cjs/qds-form-message.entry.cjs.js.map +1 -1
  89. package/dist/cjs/qds-icon-tab.cjs.entry.js +1 -1
  90. package/dist/cjs/qds-icon.cjs.entry.js +1 -1
  91. package/dist/cjs/qds-inline-link.cjs.entry.js +4 -4
  92. package/dist/cjs/qds-inline-link.entry.cjs.js.map +1 -1
  93. package/dist/cjs/qds-input.cjs.entry.js +2 -2
  94. package/dist/cjs/qds-label.cjs.entry.js +1 -1
  95. package/dist/cjs/qds-list-item.cjs.entry.js +8 -5
  96. package/dist/cjs/qds-list-item.entry.cjs.js.map +1 -1
  97. package/dist/cjs/qds-menu-item.cjs.entry.js +34 -8
  98. package/dist/cjs/qds-menu-item.entry.cjs.js.map +1 -1
  99. package/dist/cjs/qds-mini-button.cjs.entry.js +2 -2
  100. package/dist/cjs/qds-progress-bar.cjs.entry.js +1 -1
  101. package/dist/cjs/qds-select.cjs.entry.js +2 -2
  102. package/dist/cjs/qds-standalone-link.cjs.entry.js +3 -3
  103. package/dist/cjs/qds-switch.cjs.entry.js +4 -4
  104. package/dist/cjs/qds-tab.cjs.entry.js +4 -4
  105. package/dist/cjs/qds-tabbar.cjs.entry.js +57 -33
  106. package/dist/cjs/qds-tabbar.entry.cjs.js.map +1 -1
  107. package/dist/cjs/qds-table-cell.cjs.entry.js +2 -2
  108. package/dist/cjs/qds-table-head-cell.cjs.entry.js +2 -2
  109. package/dist/cjs/qds-table-row.cjs.entry.js +1 -1
  110. package/dist/cjs/qds-table.cjs.entry.js +1 -1
  111. package/dist/cjs/qds-tag.cjs.entry.js +3 -3
  112. package/dist/cjs/qds-textarea.cjs.entry.js +3 -3
  113. package/dist/cjs/qds-title.cjs.entry.js +3 -3
  114. package/dist/cjs/qds-tooltip.cjs.entry.js +1 -1
  115. package/dist/cjs/qds.cjs.js +1 -1
  116. package/dist/custom-elements.json +224 -70
  117. package/dist/docs.json +48 -6
  118. package/dist/esm/{helpers-Fe2AA6uo.js → helpers-JWnSavo8.js} +6 -3
  119. package/dist/esm/{helpers-Fe2AA6uo.js.map → helpers-JWnSavo8.js.map} +1 -1
  120. package/dist/esm/loader.js +1 -1
  121. package/dist/esm/qds-action-item.entry.js +1 -1
  122. package/dist/esm/qds-avatar-media.qds-checkbox.qds-radio.entry.js.map +1 -1
  123. package/dist/esm/qds-avatar-media_3.entry.js +72 -36
  124. package/dist/esm/qds-breadcrumb-item.entry.js +9 -4
  125. package/dist/esm/qds-breadcrumb-item.entry.js.map +1 -1
  126. package/dist/esm/qds-button.entry.js +7 -7
  127. package/dist/esm/qds-button.entry.js.map +1 -1
  128. package/dist/esm/qds-chip.entry.js +1 -1
  129. package/dist/esm/qds-dialog.entry.js +2 -2
  130. package/dist/esm/qds-dialog.entry.js.map +1 -1
  131. package/dist/esm/qds-divider.qds-icon-button.entry.js.map +1 -1
  132. package/dist/esm/qds-divider_2.entry.js +4 -4
  133. package/dist/esm/qds-dropdown.entry.js +20 -6
  134. package/dist/esm/qds-dropdown.entry.js.map +1 -1
  135. package/dist/esm/qds-form-message.entry.js +26 -16
  136. package/dist/esm/qds-form-message.entry.js.map +1 -1
  137. package/dist/esm/qds-icon-tab.entry.js +1 -1
  138. package/dist/esm/qds-icon.entry.js +1 -1
  139. package/dist/esm/qds-inline-link.entry.js +4 -4
  140. package/dist/esm/qds-inline-link.entry.js.map +1 -1
  141. package/dist/esm/qds-input.entry.js +2 -2
  142. package/dist/esm/qds-label.entry.js +1 -1
  143. package/dist/esm/qds-list-item.entry.js +8 -5
  144. package/dist/esm/qds-list-item.entry.js.map +1 -1
  145. package/dist/esm/qds-menu-item.entry.js +34 -8
  146. package/dist/esm/qds-menu-item.entry.js.map +1 -1
  147. package/dist/esm/qds-mini-button.entry.js +2 -2
  148. package/dist/esm/qds-progress-bar.entry.js +1 -1
  149. package/dist/esm/qds-select.entry.js +2 -2
  150. package/dist/esm/qds-standalone-link.entry.js +3 -3
  151. package/dist/esm/qds-switch.entry.js +4 -4
  152. package/dist/esm/qds-tab.entry.js +4 -4
  153. package/dist/esm/qds-tabbar.entry.js +57 -33
  154. package/dist/esm/qds-tabbar.entry.js.map +1 -1
  155. package/dist/esm/qds-table-cell.entry.js +2 -2
  156. package/dist/esm/qds-table-head-cell.entry.js +2 -2
  157. package/dist/esm/qds-table-row.entry.js +1 -1
  158. package/dist/esm/qds-table.entry.js +1 -1
  159. package/dist/esm/qds-tag.entry.js +3 -3
  160. package/dist/esm/qds-textarea.entry.js +3 -3
  161. package/dist/esm/qds-title.entry.js +3 -3
  162. package/dist/esm/qds-tooltip.entry.js +1 -1
  163. package/dist/esm/qds.js +1 -1
  164. package/dist/types/components/checkbox/checkbox.d.ts +9 -9
  165. package/dist/types/components/dropdown/dropdown.d.ts +1 -0
  166. package/dist/types/components/form-message/form-message.d.ts +2 -0
  167. package/dist/types/components/menu-item/menu-item.d.ts +1 -0
  168. package/dist/types/components/tabbar/tabbar.d.ts +2 -0
  169. package/dist/types/components.d.ts +3 -2
  170. package/dist/types/helpers.d.ts +6 -1
  171. package/dist/vscode.html-custom-data.json +1 -1
  172. package/hydrate/index.js +305 -183
  173. package/hydrate/index.mjs +305 -183
  174. package/package.json +1 -1
  175. package/components/p-BalM52S_.js.map +0 -1
  176. package/components/p-CVuTVnQo.js.map +0 -1
  177. package/components/p-CowZ-pDD.js.map +0 -1
  178. package/components/p-yb0Kv4Y6.js.map +0 -1
@@ -4,8 +4,8 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { p as proxyCustomElement, H, c as createEvent, h } from './p-D2489VzR.js';
7
- import { p as pickFocusEventAttributes, i as invariant, d as determineLinkIcon } from './p-BalM52S_.js';
8
- import { d as defineCustomElement$2 } from './p-C9R8N06B.js';
7
+ import { p as pickFocusEventAttributes, i as invariant, d as determineLinkIcon } from './p-Bm_hrsjc.js';
8
+ import { d as defineCustomElement$2 } from './p-EjoVBa5a.js';
9
9
 
10
10
  const standaloneLinkCss = ":host([hidden]){display:none!important}:host{display:inline-block}:host(:focus-visible){border-radius:var(--qds-control-border-radius);box-shadow:0 0 0 var(--qds-focus-heavy-border-width) var(--qds-theme-focus-border);outline:var(--qds-theme-focus-border-contrast) solid var(--qds-focus-light-border-width);outline-offset:0}.qds-icon-crop{align-items:center;display:flex;justify-content:center}.qds-icon{flex-shrink:0;transform:scaleX(var(--qds-direction-factor,1))}.qds-standalone-link{box-sizing:border-box;display:inline-flex;justify-content:center;-webkit-print-color-adjust:exact;print-color-adjust:exact;width:100%}.qds-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}[data-importance=emphasized],[data-importance=standard]{-webkit-text-decoration:none;text-decoration:none}.qds-visitable[data-importance=emphasized],.qds-visitable[data-importance=standard],[data-importance=emphasized]:active,[data-importance=emphasized]:hover,[data-importance=standard]:active,[data-importance=standard]:hover{-webkit-text-decoration:underline;text-decoration:underline}[data-importance=subdued]{color:var(--qds-theme-link-subdued-default)}.qds-visitable[data-importance=subdued]:visited{color:var(--qds-theme-link-visited-default)}[data-importance=subdued]:hover{color:var(--qds-theme-link-subdued-hover)}[data-importance=subdued]:active{color:var(--qds-theme-link-subdued-pressed)}.qds-visitable[data-importance=subdued]:visited:hover{color:var(--qds-theme-link-visited-hover)}.qds-visitable[data-importance=subdued]:visited:active{color:var(--qds-theme-link-visited-pressed)}[data-importance=standard]{color:var(--qds-theme-link-standard-default)}.qds-visitable[data-importance=standard]:visited{color:var(--qds-theme-link-visited-default)}[data-importance=standard]:hover{color:var(--qds-theme-link-standard-hover)}[data-importance=standard]:active{color:var(--qds-theme-link-standard-pressed)}.qds-visitable[data-importance=standard]:visited:hover{color:var(--qds-theme-link-visited-hover)}.qds-visitable[data-importance=standard]:visited:active{color:var(--qds-theme-link-visited-pressed)}[data-importance=emphasized]{color:var(--qds-theme-link-emphasized-default)}.qds-visitable[data-importance=emphasized]:visited{color:var(--qds-theme-link-visited-default)}[data-importance=emphasized]:hover{color:var(--qds-theme-link-emphasized-hover)}[data-importance=emphasized]:active{color:var(--qds-theme-link-emphasized-pressed)}.qds-visitable[data-importance=emphasized]:visited:hover{color:var(--qds-theme-link-visited-hover)}.qds-visitable[data-importance=emphasized]:visited:active{color:var(--qds-theme-link-visited-pressed)}.qds-disabled{opacity:var(--qds-theme-disabled);pointer-events:none}.qds-standalone-link[data-size=small]{font:var(--qds-control-small-text);gap:var(--qds-control-small-gap-internal);min-height:var(--qds-control-small-height);padding-block:var(--qds-control-small-padding-auto-height)}.qds-icon-crop[data-size=small]{height:var(--qds-control-small-icon-crop-height)}.qds-icon[data-size=small]{height:var(--qds-control-small-icon-size);width:var(--qds-control-small-icon-size)}.qds-standalone-link[data-size=standard]{font:var(--qds-control-standard-text);gap:var(--qds-control-standard-gap-internal);min-height:var(--qds-control-standard-height);padding-block:var(--qds-control-standard-padding-auto-height)}.qds-icon-crop[data-size=standard]{height:var(--qds-control-standard-icon-crop-height)}.qds-icon[data-size=standard]{height:var(--qds-control-standard-icon-size);width:var(--qds-control-standard-icon-size)}.qds-standalone-link[data-size=large]{font:var(--qds-control-large-text);gap:var(--qds-control-large-gap-internal);min-height:var(--qds-control-large-height);padding-block:var(--qds-control-large-padding-auto-height)}.qds-icon-crop[data-size=large]{height:var(--qds-control-large-icon-crop-height)}.qds-icon[data-size=large]{height:var(--qds-control-large-icon-size);width:var(--qds-control-large-icon-size)}";
11
11
 
@@ -122,11 +122,11 @@ const StandaloneLink = /*@__PURE__*/ proxyCustomElement(class StandaloneLink ext
122
122
  __classPrivateFieldGet(this, _StandaloneLink_updateAriaLabelElements, "f").call(this);
123
123
  }
124
124
  render() {
125
- return (h("a", { key: '0e70d2f7b1d663435904b2f1fcc718b39946020d', "aria-hidden": "true", class: {
125
+ return (h("a", { key: '2b62e43bfd05f5bdd1c350081351bd94006f29cc', "aria-hidden": "true", class: {
126
126
  'qds-standalone-link': true,
127
127
  'qds-disabled': this.disabled,
128
128
  'qds-visitable': this.visitable,
129
- }, "data-importance": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedImportance_get), "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get), download: this.download, href: this.href?.toString(), hrefLang: this.hreflang, onBlur: __classPrivateFieldGet(this, _StandaloneLink_onBlur, "f"), onFocus: __classPrivateFieldGet(this, _StandaloneLink_onFocus, "f"), referrerPolicy: this.referrerPolicy, rel: this.rel, tabIndex: -1, target: this.target, ref: __classPrivateFieldGet(this, _StandaloneLink_linkRef, "f") }, this.iconName !== undefined && this.iconName !== '' && (h("span", { key: '952fb52d3129a1bd7e1bb901af8673439f434a1b', class: "qds-icon-crop", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get) }, h("qds-icon", { key: '9fc0f2d475b165e890546f6faad7d9e90ca31df9', class: "qds-icon", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get), library: this.iconLibrary, name: this.iconName }))), h("span", { key: '0213f2cf7a42d5ca9ba4b8083a26966c49bd6eb3', class: "qds-text" }, h("slot", { key: 'f54a7b1f67e7114fa2eac1bd787c7b604c937630', onSlotchange: __classPrivateFieldGet(this, _StandaloneLink_onSlotchange, "f") })), this.linkIcon && (h("span", { key: 'eca6d9db29c904ff24ef63672f448ea9bf69e803', class: "qds-icon-crop", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get) }, h("qds-icon", { key: 'e2610d31880ed6fe83d59c06c437014a54284b26', class: "qds-icon", library: "core", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get), name: this.linkIcon }))), this.importance === 'emphasized' && (h("span", { key: 'a242b2eabb9f7d1c2db2e2e531151e91c32d651e', class: "qds-icon-crop", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get) }, h("qds-icon", { key: '88dc23ac40898d3adfe236dad9fe44136db5efb3', class: "qds-icon", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get), library: "core", name: "next" })))));
129
+ }, "data-importance": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedImportance_get), "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get), download: this.download, href: this.href?.toString(), hrefLang: this.hreflang, onBlur: __classPrivateFieldGet(this, _StandaloneLink_onBlur, "f"), onFocus: __classPrivateFieldGet(this, _StandaloneLink_onFocus, "f"), referrerPolicy: this.referrerPolicy, rel: this.rel, tabIndex: -1, target: this.target, ref: __classPrivateFieldGet(this, _StandaloneLink_linkRef, "f") }, this.iconName !== undefined && this.iconName !== '' && (h("span", { key: 'ab9324da83afb571c47c4dd26b2d26cb1289da55', class: "qds-icon-crop", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get) }, h("qds-icon", { key: 'ee87282c15b9656af82a0469c7bc32bab2dfbfaa', class: "qds-icon", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get), library: this.iconLibrary, name: this.iconName }))), h("span", { key: '4e53119ab88ee2264d811e46ac7da4dc5215312a', class: "qds-text" }, h("slot", { key: 'f4388e7e7ab8a300d10f9c3410a284203bed5817', onSlotchange: __classPrivateFieldGet(this, _StandaloneLink_onSlotchange, "f") })), this.linkIcon && (h("span", { key: '005ac6933014277997e9418ef4dbf030303e5db2', class: "qds-icon-crop", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get) }, h("qds-icon", { key: 'e35052fa041a15dc17f0832fb896f3384ced7895', class: "qds-icon", library: "core", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get), name: this.linkIcon }))), this.importance === 'emphasized' && (h("span", { key: 'fb4e0ed25b26ab1f63d6dcc519d5e9a4567841f0', class: "qds-icon-crop", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get) }, h("qds-icon", { key: '9396024100a0bb6669270d068620799c2d567afe', class: "qds-icon", "data-size": __classPrivateFieldGet(this, _StandaloneLink_instances, "a", _StandaloneLink_computedSize_get), library: "core", name: "next" })))));
130
130
  }
131
131
  get host() { return this; }
132
132
  static get watchers() { return {
@@ -4,9 +4,9 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { p as proxyCustomElement, H, c as createEvent, h } from './p-D2489VzR.js';
7
- import { p as pickFocusEventAttributes } from './p-BalM52S_.js';
7
+ import { p as pickFocusEventAttributes } from './p-Bm_hrsjc.js';
8
8
  import { V as VALID_STATE, C as CUSTOM_ERROR_FLAGS, N as NO_ERROR_FLAGS } from './p-CZRW1LV_.js';
9
- import { d as defineCustomElement$2 } from './p-C9R8N06B.js';
9
+ import { d as defineCustomElement$2 } from './p-EjoVBa5a.js';
10
10
 
11
11
  const switchCss = ":host([hidden]){display:none!important}:host{display:inline-block;outline:none}.qds-knob,.qds-track{-webkit-print-color-adjust:exact;print-color-adjust:exact}.qds-track{align-items:center;background-color:var(--qds-theme-control-toggle-track-default);border-radius:var(--qds-control-rounded-border-radius);box-sizing:border-box;display:flex;flex-shrink:0;padding-inline:var(--qds-control-toggle-track-padding)}.qds-track:hover{background-color:var(--qds-theme-control-toggle-track-hover)}.qds-track:active{background-color:var(--qds-theme-control-toggle-track-pressed)}.qds-knob-container{align-items:center;align-self:stretch;display:flex;flex-direction:column;flex-shrink:0;justify-content:center;padding-block:var(--qds-control-toggle-track-padding)}.qds-knob{background-color:var(--qds-theme-control-background);border-radius:var(--qds-control-rounded-border-radius);box-sizing:border-box;height:100%;margin:0}.qds-indicator{color:var(--qds-theme-control-background);flex-grow:1;justify-content:center;padding-block:var(--qds-control-toggle-track-padding)}.qds-container,.qds-indicator{align-items:center;display:flex}.qds-container{box-sizing:border-box;cursor:pointer}.qds-switch{clip-path:inset(50%);height:1px;margin:0;position:absolute;white-space:nowrap;width:1px}.qds-switch:checked~.qds-track{background-color:var(--qds-theme-signature-color-default);justify-content:flex-end}.qds-switch:checked~.qds-track:hover{background-color:var(--qds-theme-signature-color-hover)}.qds-switch:checked~.qds-track:active{background-color:var(--qds-theme-signature-color-pressed)}:host(:focus-visible) .qds-switch~.qds-track{box-shadow:0 0 0 var(--qds-focus-heavy-border-width) var(--qds-theme-focus-border);outline:var(--qds-theme-focus-border-contrast) solid var(--qds-focus-light-border-width);outline-offset:0}.qds-disabled{opacity:var(--qds-theme-disabled);pointer-events:none}.qds-container[data-size=small]{min-height:var(--qds-control-toggle-small-height)}.qds-inline[data-size=small]{min-height:var(--qds-control-small-height);padding-block:var(--qds-control-small-padding-auto-height)}.qds-track[data-size=small]{height:var(--qds-control-toggle-small-track-height);width:var(--qds-control-toggle-small-track-width)}.qds-knob[data-size=small]{width:var(--qds-control-toggle-small-knob-width)}.qds-indicator[data-size=small]{height:var(--qds-control-small-icon-size);width:var(--qds-control-small-icon-size)}.qds-container[data-size=standard]{min-height:var(--qds-control-toggle-standard-height)}.qds-inline[data-size=standard]{min-height:var(--qds-control-standard-height);padding-block:var(--qds-control-standard-padding-auto-height)}.qds-track[data-size=standard]{height:var(--qds-control-toggle-standard-track-height);width:var(--qds-control-toggle-standard-track-width)}.qds-knob[data-size=standard]{width:var(--qds-control-toggle-standard-knob-width)}.qds-indicator[data-size=standard]{height:var(--qds-control-standard-icon-size);width:var(--qds-control-standard-icon-size)}.qds-container[data-size=large]{min-height:var(--qds-control-toggle-large-height)}.qds-inline[data-size=large]{min-height:var(--qds-control-large-height);padding-block:var(--qds-control-large-padding-auto-height)}.qds-track[data-size=large]{height:var(--qds-control-toggle-large-track-height);width:var(--qds-control-toggle-large-track-width)}.qds-knob[data-size=large]{width:var(--qds-control-toggle-large-knob-width)}.qds-indicator[data-size=large]{height:var(--qds-control-large-icon-size);width:var(--qds-control-large-icon-size)}";
12
12
 
@@ -180,13 +180,13 @@ const Switch = /*@__PURE__*/ proxyCustomElement(class Switch extends H {
180
180
  this.tabindexChanged(this.host.getAttribute('tabindex') ?? '0');
181
181
  }
182
182
  render() {
183
- return (h("div", { key: 'a994ca43fd0e0622278739d7e69b2091ae712b56', class: {
183
+ return (h("div", { key: '5737ac1a3c38df703f7cc795e2032d7575281200', class: {
184
184
  'qds-container': true,
185
185
  'qds-disabled': __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedDisabled_get),
186
186
  'qds-inline': this.inline,
187
- }, "data-size": __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedSize_get), "aria-hidden": "true" }, h("input", { key: '4ad47ff4666f963608114fa23dfcdbea21768716', "aria-hidden": "true",
187
+ }, "data-size": __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedSize_get), "aria-hidden": "true" }, h("input", { key: '1b8f0ce739d5fbdb1d7c4e8edb77feeb64edba47', "aria-hidden": "true",
188
188
  // eslint-disable-next-line jsx-a11y/no-autofocus
189
- autoFocus: this.host.autofocus, checked: this.checked, class: "qds-switch", disabled: this.disabled, type: "checkbox", value: this.value ?? undefined, tabIndex: -1 }), h("div", { key: '62ffdca674fecb443977b8a077f67e74b5be561c', class: "qds-track", "data-size": __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedSize_get) }, !this.noIndicator && __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedChecked_get) && (h("div", { key: '35ace9f745581aa451ddf0618fdae0759cec0a0c', class: "qds-indicator", "data-size": __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedSize_get) }, h("qds-icon", { key: '5c59c47b9a95721441956169344ed8aa7049a049', class: "qds-icon", name: "toggle-on", library: "core" }))), h("div", { key: '193c882652ace39275e13858d7a73e9993271b52', class: "qds-knob-container" }, h("div", { key: 'e0a80c43ed774d3e2a89a9b437f1b3ec0e647937', class: "qds-knob", "data-size": __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedSize_get) })), !this.noIndicator && !__classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedChecked_get) && (h("div", { key: '14f8db236430628094cfd58dd794de83f559cd88', class: "qds-indicator", "data-size": __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedSize_get) }, h("qds-icon", { key: 'c180a31164968b92edac3a9b48d53dbf7cf1cf75', class: "qds-icon", name: "toggle-off", library: "core" }))))));
189
+ autoFocus: this.host.autofocus, checked: this.checked, class: "qds-switch", disabled: this.disabled, type: "checkbox", value: this.value ?? undefined, tabIndex: -1 }), h("div", { key: '4cea0f923dae9b4d6c6ff38d99fa3c2a74e65f02', class: "qds-track", "data-size": __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedSize_get) }, !this.noIndicator && __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedChecked_get) && (h("div", { key: '5ae795102526abb97de7ae5d5d4d6e1559ee3da5', class: "qds-indicator", "data-size": __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedSize_get) }, h("qds-icon", { key: '02085b582084f6c271beb2d1ac46bbd2d993ca96', class: "qds-icon", name: "toggle-on", library: "core" }))), h("div", { key: '8fe61ec49e46a3b99d95c1bcc6bb496bfef988f1', class: "qds-knob-container" }, h("div", { key: '1cdb41690cb3ed4c1cd116274d2c62daf4d29171', class: "qds-knob", "data-size": __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedSize_get) })), !this.noIndicator && !__classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedChecked_get) && (h("div", { key: 'd5ff9b46807d07a3f9f913ed8e50c9e9ed1ae75f', class: "qds-indicator", "data-size": __classPrivateFieldGet(this, _Switch_instances, "a", _Switch_computedSize_get) }, h("qds-icon", { key: '4a4d174e59d16ead1cdafc3a1933c5a898e8a073', class: "qds-icon", name: "toggle-off", library: "core" }))))));
190
190
  }
191
191
  static get formAssociated() { return true; }
192
192
  get host() { return this; }
@@ -4,12 +4,12 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { p as proxyCustomElement, H, c as createEvent, h } from './p-D2489VzR.js';
7
- import { p as pickFocusEventAttributes, r as resolveTarget } from './p-BalM52S_.js';
7
+ import { p as pickFocusEventAttributes, r as resolveTarget } from './p-Bm_hrsjc.js';
8
8
  import { d as defineCustomElement$6 } from './p-XP2CY_fo.js';
9
9
  import { d as defineCustomElement$5 } from './p-U2Q0vF-d.js';
10
- import { d as defineCustomElement$4 } from './p-C9R8N06B.js';
11
- import { d as defineCustomElement$3 } from './p-C93kOEAe.js';
12
- import { d as defineCustomElement$2 } from './p-CKp062X8.js';
10
+ import { d as defineCustomElement$4 } from './p-EjoVBa5a.js';
11
+ import { d as defineCustomElement$3 } from './p-BxrR19WD.js';
12
+ import { d as defineCustomElement$2 } from './p-Vtb6GsBy.js';
13
13
 
14
14
  const tabCss = ":host([hidden]){display:none!important}:host{display:inline-block;line-height:0}[aria-disabled=true]{opacity:var(--qds-theme-disabled);pointer-events:none}:host(:focus-visible){border-radius:var(--qds-focus-border-radius);outline:var(--qds-theme-focus-border) solid var(--qds-focus-border-width);outline-offset:calc(var(--qds-focus-border-width)*-1 - var(--qds-focus-border-offset))}.qds-target-icon{color:var(--qds-theme-control-text-standard)}.qds-icon,.qds-target-icon{flex-shrink:0}.qds-chevron{transform:rotate(180deg)}.qds-selected:hover{background-color:var(--qds-theme-interactive-background-selected-hover)}.qds-selected:active{background-color:var(--qds-theme-interactive-background-selected-pressed)}.qds-closable-tab,.qds-closable-wrapper,.qds-tab,.qds-texts{display:flex}.qds-texts{flex:1 0;flex-direction:column}.qds-icon,.qds-text{color:var(--qds-theme-title)}.qds-subtitle{color:var(--qds-theme-subtitle);font:var(--qds-nav-element-standard-subtitle)}.qds-closable-wrapper[data-size=small],.qds-tab[data-size=small]{gap:var(--qds-nav-element-small-gap-internal);min-height:var(--qds-nav-element-small-height);padding-inline:var(--qds-nav-element-small-padding-horizontal)}.qds-closable-tab[data-size=small]{gap:var(--qds-nav-element-small-gap-internal)}[data-size=small]>.qds-icon{height:var(--qds-nav-element-small-icon-size);width:var(--qds-nav-element-small-icon-size)}[data-size=small]>.qds-texts{gap:var(--qds-nav-element-small-titles-gap)}[data-size=small] .qds-text{font:var(--qds-nav-element-small-title)}[data-size=small] .qds-subtitle{font:var(--qds-nav-element-small-subtitle)}.qds-target-icon[data-size=small]{height:var(--qds-control-small-icon-size);width:var(--qds-control-small-icon-size)}.qds-closable-wrapper[data-size=standard],.qds-tab[data-size=standard]{gap:var(--qds-nav-element-standard-gap-internal);min-height:var(--qds-nav-element-standard-height);padding-inline:var(--qds-nav-element-standard-padding-horizontal)}.qds-closable-tab[data-size=standard]{gap:var(--qds-nav-element-standard-gap-internal)}[data-size=standard]>.qds-icon{height:var(--qds-nav-element-standard-icon-size);width:var(--qds-nav-element-standard-icon-size)}[data-size=standard]>.qds-texts{gap:var(--qds-nav-element-standard-titles-gap)}[data-size=standard] .qds-text{font:var(--qds-nav-element-standard-title)}[data-size=standard] .qds-subtitle{font:var(--qds-nav-element-standard-subtitle)}.qds-target-icon[data-size=standard]{height:var(--qds-control-standard-icon-size);width:var(--qds-control-standard-icon-size)}.qds-closable-wrapper[data-size=large],.qds-tab[data-size=large]{gap:var(--qds-nav-element-large-gap-internal);min-height:var(--qds-nav-element-large-height);padding-inline:var(--qds-nav-element-large-padding-horizontal)}.qds-closable-tab[data-size=large]{gap:var(--qds-nav-element-large-gap-internal)}[data-size=large]>.qds-icon{height:var(--qds-nav-element-large-icon-size);width:var(--qds-nav-element-large-icon-size)}[data-size=large]>.qds-texts{gap:var(--qds-nav-element-large-titles-gap)}[data-size=large] .qds-text{font:var(--qds-nav-element-large-title)}[data-size=large] .qds-subtext{font:var(--qds-nav-element-large-subtitle)}.qds-target-icon[data-size=large]{height:var(--qds-control-large-icon-size);width:var(--qds-control-large-icon-size)}[data-importance=standard] .qds-selected .qds-icon{color:var(--qds-theme-title)}.qds-selected[data-importance=standard]:after{background-color:var(--qds-theme-signature-color-default)}.qds-selected[data-importance=subdued]:after{background-color:var(\n --qds-theme-nav-element-selection-indicator-background-subdued\n )}.qds-selected[data-importance=standard]:after,.qds-selected[data-importance=subdued]:after{border-radius:var(--qds-signature-line-connection-cap-radius);content:\"\";display:block;position:absolute}.qds-selected.qds-indicator-inline-end[data-importance=standard]:after,.qds-selected.qds-indicator-inline-end[data-importance=subdued]:after,.qds-selected.qds-indicator-inline-start[data-importance=standard]:after,.qds-selected.qds-indicator-inline-start[data-importance=subdued]:after{height:100%;width:var(--qds-signature-line-connection-width)}.qds-selected.qds-indicator-inline-end[data-importance=standard]:after,.qds-selected.qds-indicator-inline-end[data-importance=subdued]:after{inset-inline-end:0}.qds-selected.qds-indicator-inline-start[data-importance=standard]:after,.qds-selected.qds-indicator-inline-start[data-importance=subdued]:after{inset-inline-start:0}.qds-selected.qds-indicator-block-end[data-importance=standard]:after,.qds-selected.qds-indicator-block-end[data-importance=subdued]:after,.qds-selected.qds-indicator-block-start[data-importance=standard]:after,.qds-selected.qds-indicator-block-start[data-importance=subdued]:after{height:var(--qds-signature-line-connection-width);width:100%}.qds-selected.qds-indicator-block-end[data-importance=standard]:after,.qds-selected.qds-indicator-block-end[data-importance=subdued]:after{bottom:0}.qds-selected.qds-indicator-block-start[data-importance=standard]:after,.qds-selected.qds-indicator-block-start[data-importance=subdued]:after{top:0}.qds-selected[data-importance=standard][data-size=standard] .qds-text,.qds-selected[data-importance=subdued][data-size=standard] .qds-text{font:var(--qds-nav-element-standard-title-emphasized)}.qds-selected[data-importance=standard][data-size=small] .qds-text,.qds-selected[data-importance=subdued][data-size=small] .qds-text{font:var(--qds-nav-element-small-title-emphasized)}.qds-selected[data-importance=standard][data-size=large] .qds-text,.qds-selected[data-importance=subdued][data-size=large] .qds-text{font:var(--qds-nav-element-large-title-emphasized)}.qds-tab:focus-visible{border-radius:var(--qds-focus-border-radius);outline:var(--qds-theme-focus-border) solid var(--qds-focus-border-width);outline-offset:calc(var(--qds-focus-border-width)*-1 - var(--qds-focus-border-offset))}.qds-closable-tab{width:100%}.qds-closable-tab:focus-visible{border-radius:var(--qds-focus-border-radius);outline:var(--qds-theme-focus-border) solid var(--qds-focus-border-width)}.qds-closable-tab,.qds-closable-wrapper,.qds-tab{align-items:center;justify-content:center}.qds-closable-tab,.qds-tab{background-color:initial;border:none;cursor:pointer;text-align:initial}.qds-closable-tab:any-link,.qds-tab:any-link{-webkit-text-decoration:none;text-decoration:none}.qds-closable-wrapper,.qds-tab{position:relative}.qds-closable-wrapper:not(.qds-selected):hover,.qds-tab:not(.qds-selected):hover{background-color:var(--qds-theme-interactive-background-hover)}.qds-closable-wrapper:not(.qds-selected):active,.qds-tab:not(.qds-selected):active{background-color:var(--qds-theme-interactive-background-pressed)}";
15
15
 
@@ -185,11 +185,11 @@ const Tab = /*@__PURE__*/ proxyCustomElement(class Tab extends H {
185
185
  : __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedAction_get) === 'expandable'
186
186
  ? 'button'
187
187
  : 'div';
188
- return (h("div", { key: '5315497861332b523d44189a04238cee49ccff3a', "aria-disabled": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedDisabled_get) ? 'true' : undefined, class: {
188
+ return (h("div", { key: '7b70ccc733ed75a400bb054cb428eedacf292225', "aria-disabled": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedDisabled_get) ? 'true' : undefined, class: {
189
189
  'qds-closable-wrapper': __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedAction_get) === 'closable',
190
190
  'qds-selected': this.selected,
191
191
  [`qds-indicator-${this.indicatorPosition}`]: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedAction_get) === 'closable',
192
- }, "data-size": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), "data-importance": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedImportance_get) }, h(Tag, { key: '02722d2d5e2460ccdc98371f35d8461ad8e31e4c', ref: __classPrivateFieldGet(this, _Tab_tabRef, "f"), disabled: isLink ? undefined : this.disabled, onBlur: __classPrivateFieldGet(this, _Tab_onBlur, "f"), onFocus: __classPrivateFieldGet(this, _Tab_onFocus, "f"), class: {
192
+ }, "data-size": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), "data-importance": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedImportance_get) }, h(Tag, { key: '28e9f81ef19ba8ba663da7dcaded2a09a31c6747', ref: __classPrivateFieldGet(this, _Tab_tabRef, "f"), disabled: isLink ? undefined : this.disabled, onBlur: __classPrivateFieldGet(this, _Tab_onBlur, "f"), onFocus: __classPrivateFieldGet(this, _Tab_onFocus, "f"), class: {
193
193
  'qds-tab': __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedAction_get) !== 'closable',
194
194
  'qds-closable-tab': __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedAction_get) === 'closable',
195
195
  'qds-selected': this.selected,
@@ -199,7 +199,7 @@ const Tab = /*@__PURE__*/ proxyCustomElement(class Tab extends H {
199
199
  ? 'true'
200
200
  : 'false'
201
201
  : undefined, "data-importance": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedImportance_get), "data-action": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedAction_get), "data-size": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), href: isLink ? this.href : undefined }, ((this.tagText !== undefined && this.tagText !== '') ||
202
- (this.tagIconName !== undefined && this.tagIconName !== '')) && (h("qds-tag", { key: 'a09730df3cc6497e88a6d17de8535eaf74bcd6f8', text: this.tagText, status: this.tagStatus, size: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), importance: this.tagImportance, "icon-library": this.tagIconLibrary, "icon-name": this.tagIconName, "icon-description": this.tagIconDescription })), this.iconName !== undefined && this.iconName !== '' && (h("qds-icon", { key: '9e6ae551c8cdda86e5422ffdad736a7f5176809a', "aria-hidden": "true", class: "qds-icon", library: this.iconLibrary, name: this.iconName })), this.text && __classPrivateFieldGet(this, _Tab_instances, "m", _Tab_renderText).call(this), isIndicator(this.badge) && (h("qds-badge-indicator", { key: '46110fa313decfaaf6231917c77ffca56ec980a8', status: this.badgeIndicatorStatus, description: this.badgeDescription, size: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), strokeRing: true })), isCounter(this.badge) && (h("qds-badge-counter", { key: '3a709e7b62089ff8a3fa2287d1e22caa1e42c900', description: this.badgeDescription, importance: this.badgeCounterImportance, size: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), strokeRing: true, value: this.badge })), __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedAction_get) === 'expandable' && (h("qds-icon", { key: 'e63e61abefbd804a2e78dfd59615521b2d97031c', class: { 'qds-target-icon': true, 'qds-chevron': this.selected }, "data-size": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), library: "core", name: "dropdown" }))), __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedAction_get) === 'closable' && (h("qds-mini-button", { key: '9cd5449bdb62322945325bb9ba698b4e0f1decdd', name: "close", library: "core", text: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_ariaLabel_get), "data-size": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), disabled: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedDisabled_get), onClick: __classPrivateFieldGet(this, _Tab_onIconClick, "f"), tabIndex: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computeCloseButtonTabIndex_get) }))));
202
+ (this.tagIconName !== undefined && this.tagIconName !== '')) && (h("qds-tag", { key: 'ab5ce12308980ea1249d1f1594ada82a119ece87', text: this.tagText, status: this.tagStatus, size: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), importance: this.tagImportance, "icon-library": this.tagIconLibrary, "icon-name": this.tagIconName, "icon-description": this.tagIconDescription })), this.iconName !== undefined && this.iconName !== '' && (h("qds-icon", { key: '97943a87bb21b72b52f1900305227d9781d7ba45', "aria-hidden": "true", class: "qds-icon", library: this.iconLibrary, name: this.iconName })), this.text && __classPrivateFieldGet(this, _Tab_instances, "m", _Tab_renderText).call(this), isIndicator(this.badge) && (h("qds-badge-indicator", { key: 'dab4973edd6ef5ffd9adb7921ceb5312030839e7', status: this.badgeIndicatorStatus, description: this.badgeDescription, size: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), strokeRing: true })), isCounter(this.badge) && (h("qds-badge-counter", { key: 'e0f12eb560604937a4b3aaa2b0edb8f810cc8862', description: this.badgeDescription, importance: this.badgeCounterImportance, size: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), strokeRing: true, value: this.badge })), __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedAction_get) === 'expandable' && (h("qds-icon", { key: 'd5a28c2f63a43b351512aa53dd29ae626ecd5198', class: { 'qds-target-icon': true, 'qds-chevron': this.selected }, "data-size": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), library: "core", name: "dropdown" }))), __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedAction_get) === 'closable' && (h("qds-mini-button", { key: '9f4badb4baa2275d6763de7ed92244a8d1607cfb', name: "close", library: "core", text: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_ariaLabel_get), "data-size": __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedSize_get), disabled: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computedDisabled_get), onClick: __classPrivateFieldGet(this, _Tab_onIconClick, "f"), tabIndex: __classPrivateFieldGet(this, _Tab_instances, "a", _Tab_computeCloseButtonTabIndex_get) }))));
203
203
  }
204
204
  get host() { return this; }
205
205
  static get watchers() { return {
@@ -4,15 +4,15 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { p as proxyCustomElement, H, c as createEvent, h } from './p-D2489VzR.js';
7
- import { i as invariant, V as VERTICAL_MOVE_KEYS, H as HORIZONTAL_MOVE_KEYS, c as inheritAriaAttributes, j as resolvePanelElement, k as componentOnReady } from './p-BalM52S_.js';
7
+ import { i as invariant, V as VERTICAL_MOVE_KEYS, H as HORIZONTAL_MOVE_KEYS, m as resolvePanelElement, n as componentOnReady } from './p-Bm_hrsjc.js';
8
8
  import { d as defineCustomElement$7 } from './p-XP2CY_fo.js';
9
9
  import { d as defineCustomElement$6 } from './p-U2Q0vF-d.js';
10
- import { d as defineCustomElement$5 } from './p-CVuTVnQo.js';
11
- import { d as defineCustomElement$4 } from './p-C9R8N06B.js';
12
- import { d as defineCustomElement$3 } from './p-B7s906mS.js';
13
- import { d as defineCustomElement$2 } from './p-CbY4T0d2.js';
10
+ import { d as defineCustomElement$5 } from './p-B6ToH-uM.js';
11
+ import { d as defineCustomElement$4 } from './p-EjoVBa5a.js';
12
+ import { d as defineCustomElement$3 } from './p-DVXvtEPn.js';
13
+ import { d as defineCustomElement$2 } from './p-BGAgQ6J5.js';
14
14
 
15
- const tabbarCss = ":host([hidden]){display:none!important}:host{display:block}.qds-tabbar,.qds-tabs,.qds-vertical,.qds-vertical-divider{display:flex}.qds-tabbar,.qds-vertical-divider{width:inherit}.qds-arrow-start{transform:scaleX(var(--qds-direction-factor,1)) rotate(180deg)}.qds-align-center{align-content:center}.qds-hidden{display:none}.qds-centered{justify-content:center}.qds-tabs{flex:1;margin-block:0;overflow:auto;padding-inline-start:0;scroll-behavior:smooth}.qds-vertical{flex-direction:column}.qds-vertical-divider{flex-direction:row}[data-size=small]{gap:var(--qds-control-small-gap-siblings-related)}[data-size=standard]{gap:var(--qds-control-standard-gap-siblings-related)}[data-layer=main][data-level=root] .qds-tabs,[data-size=large]{gap:var(--qds-control-large-gap-siblings-related)}[data-layer=main][data-level=section] .qds-tabs{gap:var(--qds-control-standard-gap-siblings-related)}[data-layer=main][data-level=subsection] .qds-tabs{gap:var(--qds-control-small-gap-siblings-related)}[data-layer=popup][data-level=root] .qds-tabs{gap:var(--qds-control-standard-gap-siblings-related)}[data-layer=popup][data-level=section] .qds-tabs{gap:var(--qds-control-small-gap-siblings-related)}:is([data-layer=panel],[data-layer=accessory])[data-level=root] .qds-tabs{gap:var(--qds-control-small-gap-siblings-related)}";
15
+ const tabbarCss = ":host([hidden]){display:none!important}:host{display:block}.qds-tabbar,.qds-tabs,.qds-vertical,.qds-vertical-divider{display:flex}.qds-tabbar,.qds-vertical-divider{width:inherit}.qds-arrow-start{transform:scaleX(var(--qds-direction-factor,1)) rotate(180deg)}.qds-align-center{align-content:center}.qds-hidden{display:none}.qds-centered{justify-content:center}.qds-tabs{flex:1;margin-block:0;overflow:auto;padding-inline-start:0;scroll-behavior:smooth;scrollbar-width:none}.qds-vertical{flex-direction:column}.qds-vertical-divider{flex-direction:row}[data-size=small]{gap:var(--qds-control-small-gap-siblings-related)}[data-size=standard]{gap:var(--qds-control-standard-gap-siblings-related)}[data-layer=main][data-level=root] .qds-tabs,[data-size=large]{gap:var(--qds-control-large-gap-siblings-related)}[data-layer=main][data-level=section] .qds-tabs{gap:var(--qds-control-standard-gap-siblings-related)}[data-layer=main][data-level=subsection] .qds-tabs{gap:var(--qds-control-small-gap-siblings-related)}[data-layer=popup][data-level=root] .qds-tabs{gap:var(--qds-control-standard-gap-siblings-related)}[data-layer=popup][data-level=section] .qds-tabs{gap:var(--qds-control-small-gap-siblings-related)}:is([data-layer=panel],[data-layer=accessory])[data-level=root] .qds-tabs{gap:var(--qds-control-small-gap-siblings-related)}";
16
16
 
17
17
  // SPDX-FileCopyrightText: © 2024 Schneider Electric
18
18
  //
@@ -33,7 +33,8 @@ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) ||
33
33
  throw new TypeError("Cannot write private member to an object whose class did not declare it");
34
34
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
35
35
  };
36
- var _Tabbar_instances, _Tabbar_tabs, _Tabbar_ro, _Tabbar_tabbar, _Tabbar_inheritedAttributes, _Tabbar_computedImportance_get, _Tabbar_computedSize_get, _Tabbar_computedPlacement_get, _Tabbar_computeDividerVisible_get, _Tabbar_scrollToStart, _Tabbar_scrollToEnd, _Tabbar_setActiveTab, _Tabbar_switchTabPanel, _Tabbar_handleTabActivation, _Tabbar_getCurrentTab, _Tabbar_setCurrentTab, _Tabbar_isVerticalPlacement, _Tabbar_isHorizontalPlacement, _Tabbar_onClick, _Tabbar_onKeyDown, _Tabbar_onMouseDown, _Tabbar_onScroll, _Tabbar_onViewportCrop, _Tabbar_updateTabsCache, _Tabbar_setTabSettings, _Tabbar_onSlotchange;
36
+ var _Tabbar_instances, _Tabbar_tabs, _Tabbar_ro, _Tabbar_tabbar, _Tabbar_computedImportance_get, _Tabbar_computedSize_get, _Tabbar_computedPlacement_get, _Tabbar_computeDividerVisible_get, _Tabbar_computedAriaOrientation_get, _Tabbar_getTabItems, _Tabbar_scrollToStart, _Tabbar_scrollToEnd, _Tabbar_setActiveTab, _Tabbar_switchTabPanel, _Tabbar_handleTabActivation, _Tabbar_getCurrentTab, _Tabbar_setCurrentTab, _Tabbar_isVerticalPlacement, _Tabbar_isHorizontalPlacement, _Tabbar_isEndOrBottomPlacement, _Tabbar_onClick, _Tabbar_onKeyDown, _Tabbar_onMouseDown, _Tabbar_onScroll, _Tabbar_onViewportCrop, _Tabbar_syncInternalsAccessibility, _Tabbar_updateTabsCache, _Tabbar_setTabSettings, _Tabbar_onSlotchange;
37
+ const TAB_ITEM_SELECTOR = 'qds-icon-tab, qds-tab';
37
38
  const TAB_SETTINGS = {
38
39
  'main-root': {
39
40
  importance: 'standard',
@@ -71,13 +72,14 @@ const TAB_SETTINGS = {
71
72
  indicatorPosition: 'block-end',
72
73
  },
73
74
  };
74
- const isEnabledTabItem = (item) => {
75
+ const isTabItem = (item) => {
75
76
  if (!(item instanceof H))
76
77
  return false;
77
78
  const tagName = item.tagName.toLowerCase();
78
- return ((!item.inert && tagName === 'qds-tab') ||
79
- item.disabled !== true);
79
+ return tagName === 'qds-tab' || tagName === 'qds-icon-tab';
80
80
  };
81
+ const isEnabledTabItem = (item) => isTabItem(item) && !item.inert && item.disabled !== true;
82
+ const getTabTrigger = (tab) => tab.tab;
81
83
  const Tabbar = /*@__PURE__*/ proxyCustomElement(class Tabbar extends H {
82
84
  constructor(registerHost) {
83
85
  super();
@@ -87,6 +89,7 @@ const Tabbar = /*@__PURE__*/ proxyCustomElement(class Tabbar extends H {
87
89
  this.__attachShadow();
88
90
  this.showEmitter = createEvent(this, "qdsTabShow", 6);
89
91
  this.hideEmitter = createEvent(this, "qdsTabHide", 6);
92
+ this.internals = this.attachInternals();
90
93
  _Tabbar_instances.add(this);
91
94
  /**
92
95
  * The tabbar's layer.
@@ -130,7 +133,6 @@ const Tabbar = /*@__PURE__*/ proxyCustomElement(class Tabbar extends H {
130
133
  _Tabbar_tabs.set(this, []);
131
134
  _Tabbar_ro.set(this, void 0);
132
135
  _Tabbar_tabbar.set(this, void 0);
133
- _Tabbar_inheritedAttributes.set(this, {});
134
136
  _Tabbar_scrollToStart.set(this, () => {
135
137
  invariant(__classPrivateFieldGet(this, _Tabbar_tabbar, "f"));
136
138
  const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl';
@@ -151,12 +153,13 @@ const Tabbar = /*@__PURE__*/ proxyCustomElement(class Tabbar extends H {
151
153
  });
152
154
  _Tabbar_isVerticalPlacement.set(this, () => this.placement === 'start' || this.placement === 'end');
153
155
  _Tabbar_isHorizontalPlacement.set(this, () => this.placement === 'top' || this.placement === 'bottom');
156
+ _Tabbar_isEndOrBottomPlacement.set(this, () => this.placement === 'end' || this.placement === 'bottom');
154
157
  _Tabbar_onClick.set(this, (event) => {
155
158
  const { target } = event;
156
159
  if (!(target instanceof H))
157
160
  return;
158
- const tab = target.closest('qds-tab');
159
- if (!tab || tab.disabled === true || tab.inert)
161
+ const tab = target.closest(TAB_ITEM_SELECTOR);
162
+ if (!isEnabledTabItem(tab))
160
163
  return;
161
164
  __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_handleTabActivation).call(this, tab);
162
165
  __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setActiveTab).call(this, tab);
@@ -209,7 +212,7 @@ const Tabbar = /*@__PURE__*/ proxyCustomElement(class Tabbar extends H {
209
212
  nextTab = tabs[index];
210
213
  } while (nextTab.disabled === true);
211
214
  __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setCurrentTab).call(this, nextTab);
212
- const target = nextTab.tab;
215
+ const target = getTabTrigger(nextTab);
213
216
  target.focus({ preventScroll: true });
214
217
  if (!isVertical)
215
218
  target.scrollIntoView();
@@ -218,8 +221,11 @@ const Tabbar = /*@__PURE__*/ proxyCustomElement(class Tabbar extends H {
218
221
  });
219
222
  _Tabbar_onMouseDown.set(this, (event) => {
220
223
  const { target } = event;
221
- if (isEnabledTabItem(target))
222
- __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setCurrentTab).call(this, target);
224
+ if (!(target instanceof H))
225
+ return;
226
+ const tab = target.closest(TAB_ITEM_SELECTOR);
227
+ if (isEnabledTabItem(tab))
228
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setCurrentTab).call(this, tab);
223
229
  });
224
230
  _Tabbar_onScroll.set(this, () => {
225
231
  if (!__classPrivateFieldGet(this, _Tabbar_tabbar, "f"))
@@ -248,15 +254,17 @@ const Tabbar = /*@__PURE__*/ proxyCustomElement(class Tabbar extends H {
248
254
  settingChanged() {
249
255
  __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setTabSettings).call(this);
250
256
  }
257
+ accessibilityChanged() {
258
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_syncInternalsAccessibility).call(this);
259
+ }
251
260
  windowResize() {
252
261
  __classPrivateFieldGet(this, _Tabbar_onViewportCrop, "f").call(this);
253
262
  }
254
263
  componentWillLoad() {
255
264
  this.settingChanged();
256
- __classPrivateFieldSet(this, _Tabbar_inheritedAttributes, inheritAriaAttributes(this.host), "f");
257
- const tabs = [
258
- ...this.host.querySelectorAll('qds-tab'),
259
- ];
265
+ this.internals.role = 'tablist';
266
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_syncInternalsAccessibility).call(this);
267
+ const tabs = __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_getTabItems).call(this);
260
268
  const preselectedTab = tabs.find((tab) => tab.selected);
261
269
  if (preselectedTab)
262
270
  __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setActiveTab).call(this, preselectedTab);
@@ -278,14 +286,14 @@ const Tabbar = /*@__PURE__*/ proxyCustomElement(class Tabbar extends H {
278
286
  __classPrivateFieldGet(this, _Tabbar_ro, "f").disconnect();
279
287
  }
280
288
  render() {
281
- return (h("div", { key: '47ac9cd0bc096758c6c2797393010c0a9693fa88', class: {
289
+ return (h("div", { key: '8591f74558abeec27a6c1e1b311177463cb5992e', class: {
282
290
  'qds-vertical-divider': this.orientation === 'vertical' || __classPrivateFieldGet(this, _Tabbar_isVerticalPlacement, "f").call(this),
283
- }, "data-layer": this.layer, "data-level": this.level, "data-importance": __classPrivateFieldGet(this, _Tabbar_instances, "a", _Tabbar_computedImportance_get) }, h("div", { key: '2421469125db014dfa6be6012daaf06a354e1466', class: "qds-tabbar" }, h("div", { key: '1def1f43dc9ecc8680634fa2d5f330c803c82054', class: {
291
+ }, "data-layer": this.layer, "data-level": this.level, "data-importance": __classPrivateFieldGet(this, _Tabbar_instances, "a", _Tabbar_computedImportance_get) }, __classPrivateFieldGet(this, _Tabbar_instances, "a", _Tabbar_computeDividerVisible_get) && __classPrivateFieldGet(this, _Tabbar_isEndOrBottomPlacement, "f").call(this) && (h("qds-divider", { key: '00282e934dacfb0a0651ee106a668ac52c4d1c5b', vertical: this.orientation === 'vertical' || __classPrivateFieldGet(this, _Tabbar_isVerticalPlacement, "f").call(this) })), h("div", { key: 'e49a2b154315c79b89349d7bd32b4a77964629c7', class: "qds-tabbar" }, h("div", { key: 'e06a929cc8514fc6d3085545aa87af2cd0b2b77b', class: {
284
292
  'qds-align-center': true,
285
293
  'qds-hidden': (this.disableEndArrow && this.disableStartArrow) ||
286
294
  this.orientation === 'vertical' ||
287
295
  __classPrivateFieldGet(this, _Tabbar_isVerticalPlacement, "f").call(this),
288
- } }, h("qds-icon-button", { key: '539fe2ec4cd5a91cf1a35ead239eebd2eda981e4', text: "show previous tab", importance: "subdued", iconName: "next", iconLibrary: "core", class: "qds-arrow-start", onClick: __classPrivateFieldGet(this, _Tabbar_scrollToStart, "f"), disabled: this.disableStartArrow })), h("ul", { key: '05ff03b99f92f9e85f4703dcc6eca96220d6e1ee', class: {
296
+ } }, h("qds-icon-button", { key: '0a41181ab9c9c95cbb28d0767455d3a50651aa00', text: "show previous tab", importance: "subdued", iconName: "next", iconLibrary: "core", class: "qds-arrow-start", onClick: __classPrivateFieldGet(this, _Tabbar_scrollToStart, "f"), disabled: this.disableStartArrow })), h("div", { key: 'b50e60c87c6626b185a2cd13767ff4c550a26e54', class: {
289
297
  'qds-tabs': true,
290
298
  'qds-vertical': this.orientation === 'vertical' || __classPrivateFieldGet(this, _Tabbar_isVerticalPlacement, "f").call(this),
291
299
  'qds-centered': this.alignment === 'center' &&
@@ -293,19 +301,22 @@ const Tabbar = /*@__PURE__*/ proxyCustomElement(class Tabbar extends H {
293
301
  __classPrivateFieldGet(this, _Tabbar_isHorizontalPlacement, "f").call(this)) &&
294
302
  this.disableEndArrow &&
295
303
  this.disableStartArrow,
296
- }, role: "tablist", "aria-label": this.tablistDescription, ref: (element) => {
304
+ }, ref: (element) => {
297
305
  __classPrivateFieldSet(this, _Tabbar_tabbar, element, "f");
298
- }, onClick: __classPrivateFieldGet(this, _Tabbar_onClick, "f"), onKeyDown: __classPrivateFieldGet(this, _Tabbar_onKeyDown, "f"), onMouseDown: __classPrivateFieldGet(this, _Tabbar_onMouseDown, "f"), onScroll: __classPrivateFieldGet(this, _Tabbar_onScroll, "f"), ...__classPrivateFieldGet(this, _Tabbar_inheritedAttributes, "f") }, h("slot", { key: '4ccd64f11587556c7af2b0d4c571ee8162dbba70', onSlotchange: __classPrivateFieldGet(this, _Tabbar_onSlotchange, "f") })), h("div", { key: 'c5b64348ca4c65bb4894ec0dec6b6b89c411f958', class: {
306
+ }, onClick: __classPrivateFieldGet(this, _Tabbar_onClick, "f"), onKeyDown: __classPrivateFieldGet(this, _Tabbar_onKeyDown, "f"), onMouseDown: __classPrivateFieldGet(this, _Tabbar_onMouseDown, "f"), onScroll: __classPrivateFieldGet(this, _Tabbar_onScroll, "f") }, h("slot", { key: 'e688bcf46bebef8086c5b9082025d84bb6701cc9', onSlotchange: __classPrivateFieldGet(this, _Tabbar_onSlotchange, "f") })), h("div", { key: '3ca052fed5793a4ef73ec2ef2c9634c256c883f6', class: {
299
307
  'qds-align-center': true,
300
308
  'qds-hidden': (this.disableEndArrow && this.disableStartArrow) ||
301
309
  this.orientation === 'vertical' ||
302
310
  __classPrivateFieldGet(this, _Tabbar_isVerticalPlacement, "f").call(this),
303
- } }, h("qds-icon-button", { key: 'edcb7e2054454edb2f949332ad62998a2e34a368', text: "show next tab", iconName: "next", iconLibrary: "core", importance: "subdued", onClick: __classPrivateFieldGet(this, _Tabbar_scrollToEnd, "f"), disabled: this.disableEndArrow }))), __classPrivateFieldGet(this, _Tabbar_instances, "a", _Tabbar_computeDividerVisible_get) && (h("qds-divider", { key: 'bfafcfbcaaa50341778498e9887b71a548209178', vertical: this.orientation === 'vertical' || __classPrivateFieldGet(this, _Tabbar_isVerticalPlacement, "f").call(this) }))));
311
+ } }, h("qds-icon-button", { key: 'a43327b519cb85f57c2c671d5c4cbd72c4f40da3', text: "show next tab", iconName: "next", iconLibrary: "core", importance: "subdued", onClick: __classPrivateFieldGet(this, _Tabbar_scrollToEnd, "f"), disabled: this.disableEndArrow }))), __classPrivateFieldGet(this, _Tabbar_instances, "a", _Tabbar_computeDividerVisible_get) && !__classPrivateFieldGet(this, _Tabbar_isEndOrBottomPlacement, "f").call(this) && (h("qds-divider", { key: 'aaa07da25a49b79dec8032435ac25798f5f3664a', vertical: this.orientation === 'vertical' || __classPrivateFieldGet(this, _Tabbar_isVerticalPlacement, "f").call(this) }))));
304
312
  }
305
313
  static get delegatesFocus() { return true; }
306
314
  get host() { return this; }
307
315
  static get watchers() { return {
308
- "importance": ["settingChanged"]
316
+ "importance": ["settingChanged"],
317
+ "orientation": ["accessibilityChanged"],
318
+ "placement": ["accessibilityChanged"],
319
+ "tablistDescription": ["accessibilityChanged"]
309
320
  }; }
310
321
  static get style() { return tabbarCss; }
311
322
  }, [273, "qds-tabbar", {
@@ -322,9 +333,12 @@ const Tabbar = /*@__PURE__*/ proxyCustomElement(class Tabbar extends H {
322
333
  "disableStartArrow": [32],
323
334
  "activeTab": [32]
324
335
  }, [[9, "resize", "windowResize"]], {
325
- "importance": ["settingChanged"]
336
+ "importance": ["settingChanged"],
337
+ "orientation": ["accessibilityChanged"],
338
+ "placement": ["accessibilityChanged"],
339
+ "tablistDescription": ["accessibilityChanged"]
326
340
  }]);
327
- _Tabbar_tabs = new WeakMap(), _Tabbar_ro = new WeakMap(), _Tabbar_tabbar = new WeakMap(), _Tabbar_inheritedAttributes = new WeakMap(), _Tabbar_scrollToStart = new WeakMap(), _Tabbar_scrollToEnd = new WeakMap(), _Tabbar_isVerticalPlacement = new WeakMap(), _Tabbar_isHorizontalPlacement = new WeakMap(), _Tabbar_onClick = new WeakMap(), _Tabbar_onKeyDown = new WeakMap(), _Tabbar_onMouseDown = new WeakMap(), _Tabbar_onScroll = new WeakMap(), _Tabbar_onViewportCrop = new WeakMap(), _Tabbar_onSlotchange = new WeakMap(), _Tabbar_instances = new WeakSet(), _Tabbar_computedImportance_get = function _Tabbar_computedImportance_get() {
341
+ _Tabbar_tabs = new WeakMap(), _Tabbar_ro = new WeakMap(), _Tabbar_tabbar = new WeakMap(), _Tabbar_scrollToStart = new WeakMap(), _Tabbar_scrollToEnd = new WeakMap(), _Tabbar_isVerticalPlacement = new WeakMap(), _Tabbar_isHorizontalPlacement = new WeakMap(), _Tabbar_isEndOrBottomPlacement = new WeakMap(), _Tabbar_onClick = new WeakMap(), _Tabbar_onKeyDown = new WeakMap(), _Tabbar_onMouseDown = new WeakMap(), _Tabbar_onScroll = new WeakMap(), _Tabbar_onViewportCrop = new WeakMap(), _Tabbar_onSlotchange = new WeakMap(), _Tabbar_instances = new WeakSet(), _Tabbar_computedImportance_get = function _Tabbar_computedImportance_get() {
328
342
  return this.importance;
329
343
  }, _Tabbar_computedSize_get = function _Tabbar_computedSize_get() {
330
344
  return this.size ?? undefined;
@@ -354,13 +368,19 @@ _Tabbar_tabs = new WeakMap(), _Tabbar_ro = new WeakMap(), _Tabbar_tabbar = new W
354
368
  (this.orientation === 'horizontal' || __classPrivateFieldGet(this, _Tabbar_isVerticalPlacement, "f").call(this)))
355
369
  return false;
356
370
  return this.showDivider === true;
371
+ }, _Tabbar_computedAriaOrientation_get = function _Tabbar_computedAriaOrientation_get() {
372
+ return this.orientation === 'vertical' || __classPrivateFieldGet(this, _Tabbar_isVerticalPlacement, "f").call(this)
373
+ ? 'vertical'
374
+ : 'horizontal';
375
+ }, _Tabbar_getTabItems = function _Tabbar_getTabItems() {
376
+ return [
377
+ ...this.host.querySelectorAll(TAB_ITEM_SELECTOR),
378
+ ].filter((element) => isTabItem(element));
357
379
  }, _Tabbar_setActiveTab = function _Tabbar_setActiveTab(tab) {
358
380
  this.activeTab = tab;
359
- for (const t of this.host.querySelectorAll('qds-tab')) {
360
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
361
- const target = t.tab;
381
+ for (const t of __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_getTabItems).call(this)) {
382
+ const target = getTabTrigger(t);
362
383
  const isSelected = t === tab;
363
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
364
384
  t.selected = isSelected;
365
385
  if (target instanceof globalThis.Element)
366
386
  target.ariaSelected = isSelected.toString();
@@ -382,12 +402,12 @@ _Tabbar_tabs = new WeakMap(), _Tabbar_ro = new WeakMap(), _Tabbar_tabbar = new W
382
402
  __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setCurrentTab).call(this, tab);
383
403
  __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_switchTabPanel).call(this, tab);
384
404
  }, _Tabbar_getCurrentTab = function _Tabbar_getCurrentTab() {
385
- return __classPrivateFieldGet(this, _Tabbar_tabs, "f").find((tab) => tab.tab.getAttribute('tabindex') === '0');
405
+ return __classPrivateFieldGet(this, _Tabbar_tabs, "f").find((tab) => getTabTrigger(tab).getAttribute('tabindex') === '0');
386
406
  }, _Tabbar_setCurrentTab = function _Tabbar_setCurrentTab(tab) {
387
407
  for (const t of __classPrivateFieldGet(this, _Tabbar_tabs, "f")) {
388
408
  const isCurrent = t === tab;
389
409
  componentOnReady(t, (element) => {
390
- const target = element?.tab;
410
+ const target = element ? getTabTrigger(element) : undefined;
391
411
  if (target === undefined)
392
412
  return;
393
413
  const isDisabled = target.getAttribute('aria-disabled') === 'true';
@@ -398,6 +418,9 @@ _Tabbar_tabs = new WeakMap(), _Tabbar_ro = new WeakMap(), _Tabbar_tabbar = new W
398
418
  __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_handleTabActivation).call(this, t);
399
419
  });
400
420
  }
421
+ }, _Tabbar_syncInternalsAccessibility = function _Tabbar_syncInternalsAccessibility() {
422
+ this.internals.ariaOrientation = __classPrivateFieldGet(this, _Tabbar_instances, "a", _Tabbar_computedAriaOrientation_get);
423
+ this.internals.ariaLabel = this.tablistDescription ?? '';
401
424
  }, _Tabbar_updateTabsCache = function _Tabbar_updateTabsCache() {
402
425
  const slot = this.host.shadowRoot?.querySelector('slot');
403
426
  __classPrivateFieldSet(this, _Tabbar_tabs, slot
@@ -407,15 +430,13 @@ _Tabbar_tabs = new WeakMap(), _Tabbar_ro = new WeakMap(), _Tabbar_tabbar = new W
407
430
  const settings = TAB_SETTINGS[`${this.layer}-${this.level}`];
408
431
  if (!settings)
409
432
  return;
410
- for (const tab of this.host.querySelectorAll('qds-tab')) {
411
- /* eslint-disable @typescript-eslint/no-unsafe-member-access */
433
+ for (const tab of __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_getTabItems).call(this)) {
412
434
  tab.importance = __classPrivateFieldGet(this, _Tabbar_instances, "a", _Tabbar_computedImportance_get) ?? settings.importance;
413
435
  tab.size = __classPrivateFieldGet(this, _Tabbar_instances, "a", _Tabbar_computedSize_get) ?? settings.size;
414
436
  tab.indicatorPosition =
415
437
  this.orientation === 'vertical'
416
438
  ? 'inline-end'
417
439
  : (__classPrivateFieldGet(this, _Tabbar_instances, "a", _Tabbar_computedPlacement_get) ?? settings.indicatorPosition);
418
- /* eslint-enable @typescript-eslint/no-unsafe-member-access */
419
440
  }
420
441
  };
421
442
  function defineCustomElement$1() {
@@ -1 +1 @@
1
- {"file":"qds-tabbar.js","mappings":"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","names":["HTMLElement","__stencil_proxyCustomElement"],"sources":["src/components/tabbar/tabbar.css?tag=qds-tabbar&encapsulation=shadow","src/components/tabbar/tabbar.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: © 2024 Schneider Electric\n *\n * SPDX-License-Identifier: Apache-2.0\n */\n\n@import url('../shared.css');\n\n:host {\n display: block;\n}\n\n.qds-vertical,\n.qds-vertical-divider,\n.qds-tabbar,\n.qds-tabs {\n display: flex;\n}\n\n.qds-vertical-divider,\n.qds-tabbar {\n width: inherit;\n}\n\n.qds-arrow-start {\n transform: scaleX(var(--qds-direction-factor, 1)) rotate(180deg);\n}\n\n.qds-align-center {\n align-content: center;\n}\n\n.qds-hidden {\n display: none;\n}\n\n.qds-centered {\n justify-content: center;\n}\n\n.qds-tabs {\n flex: 1;\n margin-block: 0;\n overflow: auto;\n padding-inline-start: 0;\n scroll-behavior: smooth;\n}\n\n.qds-vertical {\n flex-direction: column;\n}\n\n.qds-vertical-divider {\n flex-direction: row;\n}\n\n[data-size='small'] {\n gap: var(--qds-control-small-gap-siblings-related);\n}\n\n[data-size='standard'] {\n gap: var(--qds-control-standard-gap-siblings-related);\n}\n\n[data-size='large'] {\n gap: var(--qds-control-large-gap-siblings-related);\n}\n\n[data-layer='main'] {\n &[data-level='root'] .qds-tabs {\n gap: var(--qds-control-large-gap-siblings-related);\n }\n\n &[data-level='section'] .qds-tabs {\n gap: var(--qds-control-standard-gap-siblings-related);\n }\n\n &[data-level='subsection'] .qds-tabs {\n gap: var(--qds-control-small-gap-siblings-related);\n }\n}\n\n[data-layer='popup'] {\n &[data-level='root'] .qds-tabs {\n gap: var(--qds-control-standard-gap-siblings-related);\n }\n\n &[data-level='section'] .qds-tabs {\n gap: var(--qds-control-small-gap-siblings-related);\n }\n}\n\n:is([data-layer='panel'], [data-layer='accessory'])[data-level='root']\n .qds-tabs {\n gap: var(--qds-control-small-gap-siblings-related);\n}\n","// SPDX-FileCopyrightText: © 2024 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface, EventEmitter } from '@stencil/core'\nimport {\n Component,\n Element,\n Event,\n h,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core'\n\nimport type { Attributes } from '../../helpers'\nimport {\n componentOnReady,\n HORIZONTAL_MOVE_KEYS,\n inheritAriaAttributes,\n invariant,\n resolvePanelElement,\n VERTICAL_MOVE_KEYS,\n} from '../../helpers'\nimport type { IndicatorPosition } from '../icon-tab/icon-tab'\nimport type { Importance, Size } from '../shared'\nimport type { Tab } from '../tab/tab'\n\nexport type Layer = 'accessory' | 'main' | 'panel' | 'popup'\nexport type Level = 'root' | 'section' | 'subsection'\nexport type TabbarSize = Size | undefined\nexport type TabbarImportance = Exclude<Importance, 'emphasized'> | undefined\nexport type Orientation = 'horizontal' | 'vertical'\nexport type Placement = 'bottom' | 'end' | 'start' | 'top'\nexport type Alignment = 'center' | 'start'\n\nconst TAB_SETTINGS: Record<\n string,\n Pick<Tab, 'importance' | 'indicatorPosition' | 'size'> | undefined\n> = {\n 'main-root': {\n importance: 'standard',\n size: 'large',\n indicatorPosition: 'block-end',\n },\n 'main-section': {\n importance: 'standard',\n size: 'standard',\n indicatorPosition: 'block-end',\n },\n 'popup-root': {\n importance: 'standard',\n size: 'standard',\n indicatorPosition: 'block-end',\n },\n 'main-subsection': {\n importance: 'subdued',\n size: 'small',\n indicatorPosition: 'block-start',\n },\n 'popup-section': {\n importance: 'subdued',\n size: 'small',\n indicatorPosition: 'inline-start',\n },\n 'panel-root': {\n importance: 'standard',\n size: 'small',\n indicatorPosition: 'block-start',\n },\n 'accessory-root': {\n importance: 'subdued',\n size: 'small',\n indicatorPosition: 'block-end',\n },\n}\n\nconst isEnabledTabItem = (item: unknown): item is HTMLQdsTabElement => {\n if (!(item instanceof HTMLElement)) return false\n const tagName = item.tagName.toLowerCase()\n\n return (\n (!item.inert && tagName === 'qds-tab') ||\n (item as HTMLQdsTabElement).disabled !== true\n )\n}\n\n/**\n * `<qds-tabbar>` is the component that facilitates navigation between the groups\n * of related content within the page.\n * It allows users to switch between groups by clicking on Tabs without going to another page.\n */\n@Component({\n tag: 'qds-tabbar',\n shadow: { delegatesFocus: true },\n styleUrl: 'tabbar.css',\n})\nexport class Tabbar implements ComponentInterface {\n /**\n * The tabbar's layer.\n *\n * @deprecated The property layer is deprecated. Please use `size` property instead.\n * Please do not use `layer` and `size` at the same time.\n */\n @Prop() public layer?: Layer = 'main'\n\n /**\n * The tabbar's level.\n *\n * @deprecated The property level is deprecated. Please use `size` property instead.\n * Please do not use `level` and `size` at the same time.\n */\n @Prop() public level?: Level = 'root'\n\n /**\n * The tabbar's size. This controls the size of the tabs within the tabbar.\n */\n @Prop() public size?: Size = 'standard'\n\n /**\n * The tabbar's orientation.\n *\n * @deprecated Please use the `placement` property instead. Do not use\n * `orientation` and `placement` at the same time.\n */\n @Prop() public orientation?: Orientation = 'horizontal'\n\n /**\n * The tabbar's placement.\n */\n @Prop() public placement?: Placement = 'top'\n\n /**\n * the tablist Description\n */\n @Prop() public readonly tablistDescription?: string\n\n /**\n * Displays a divider line.\n */\n @Prop() public showDivider?: boolean = false\n\n /**\n * The alignment of tabs. Only applicable for horizontal orientation.\n */\n @Prop() public readonly alignment?: Alignment = 'start'\n\n /**\n * The importance of the tabbar. This controls the visual emphasis of the tabs within the tabbar.\n */\n @Prop() public importance?: TabbarImportance\n\n /**\n * Emitted when the user selects the tab.\n */\n @Event({ eventName: 'qdsTabShow', cancelable: false })\n private readonly showEmitter!: EventEmitter<HTMLElement>\n\n /**\n * Emitted when the user selects the tab.\n */\n @Event({ eventName: 'qdsTabHide', cancelable: false })\n private readonly hideEmitter!: EventEmitter<HTMLElement>\n\n @Element() private readonly host!: HTMLElement\n\n @State() private disableEndArrow = false\n\n @State() private disableStartArrow = false\n\n @State() private activeTab?: HTMLQdsTabElement\n\n #tabs: HTMLQdsTabElement[] = []\n\n #ro: ResizeObserver | undefined\n\n #tabbar?: HTMLElement\n\n #inheritedAttributes: Attributes = {}\n\n get #computedImportance(): TabbarImportance {\n return this.importance\n }\n\n get #computedSize(): Size | undefined {\n return this.size ?? undefined\n }\n\n get #computedPlacement(): IndicatorPosition | undefined {\n switch (this.placement) {\n case 'top': {\n return 'block-end'\n }\n case 'end': {\n return 'inline-start'\n }\n case 'bottom': {\n return 'block-start'\n }\n case 'start': {\n return 'inline-end'\n }\n default: {\n return undefined\n }\n }\n }\n\n get #computeDividerVisible(): boolean {\n if (this.layer === 'panel') return false\n if (\n this.layer === 'main' &&\n this.level === 'subsection' &&\n (this.orientation === 'horizontal' || this.#isVerticalPlacement())\n )\n return false\n return this.showDivider === true\n }\n\n @Watch('importance')\n protected settingChanged(): void {\n this.#setTabSettings()\n }\n\n @Listen('resize', { target: 'window' })\n protected windowResize(): void {\n this.#onViewportCrop()\n }\n\n public componentWillLoad(): void {\n this.settingChanged()\n this.#inheritedAttributes = inheritAriaAttributes(this.host)\n const tabs = [\n ...this.host.querySelectorAll('qds-tab'),\n ] as HTMLQdsTabElement[]\n const preselectedTab = tabs.find((tab) => tab.selected)\n if (preselectedTab) this.#setActiveTab(preselectedTab)\n else if (tabs.length > 0) this.#setActiveTab(tabs[0])\n }\n\n public componentDidRender(): void {\n if (this.activeTab) this.#switchTabPanel(this.activeTab)\n this.settingChanged()\n }\n\n public componentDidLoad(): void {\n invariant(this.#tabbar)\n\n this.#ro = new ResizeObserver(this.#onScroll)\n this.#ro.observe(this.#tabbar)\n }\n\n public disconnectedCallback(): void {\n if (this.#ro) this.#ro.disconnect()\n }\n\n public render() {\n return (\n <div\n class={{\n 'qds-vertical-divider':\n this.orientation === 'vertical' || this.#isVerticalPlacement(),\n }}\n data-layer={this.layer}\n data-level={this.level}\n data-importance={this.#computedImportance}\n >\n <div class=\"qds-tabbar\">\n <div\n class={{\n 'qds-align-center': true,\n 'qds-hidden':\n (this.disableEndArrow && this.disableStartArrow) ||\n this.orientation === 'vertical' ||\n this.#isVerticalPlacement(),\n }}\n >\n <qds-icon-button\n text=\"show previous tab\"\n importance=\"subdued\"\n iconName=\"next\"\n iconLibrary=\"core\"\n class=\"qds-arrow-start\"\n onClick={this.#scrollToStart}\n disabled={this.disableStartArrow}\n />\n </div>\n <ul\n class={{\n 'qds-tabs': true,\n 'qds-vertical':\n this.orientation === 'vertical' || this.#isVerticalPlacement(),\n 'qds-centered':\n this.alignment === 'center' &&\n (this.orientation === 'horizontal' ||\n this.#isHorizontalPlacement()) &&\n this.disableEndArrow &&\n this.disableStartArrow,\n }}\n role=\"tablist\"\n aria-label={this.tablistDescription}\n ref={(element) => {\n this.#tabbar = element\n }}\n onClick={this.#onClick}\n onKeyDown={this.#onKeyDown}\n onMouseDown={this.#onMouseDown}\n onScroll={this.#onScroll}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...this.#inheritedAttributes}\n >\n <slot onSlotchange={this.#onSlotchange} />\n </ul>\n <div\n class={{\n 'qds-align-center': true,\n 'qds-hidden':\n (this.disableEndArrow && this.disableStartArrow) ||\n this.orientation === 'vertical' ||\n this.#isVerticalPlacement(),\n }}\n >\n <qds-icon-button\n text=\"show next tab\"\n iconName=\"next\"\n iconLibrary=\"core\"\n importance=\"subdued\"\n onClick={this.#scrollToEnd}\n disabled={this.disableEndArrow}\n />\n </div>\n </div>\n {this.#computeDividerVisible && (\n <qds-divider\n vertical={\n this.orientation === 'vertical' || this.#isVerticalPlacement()\n }\n />\n )}\n </div>\n )\n }\n\n readonly #scrollToStart = (): void => {\n invariant(this.#tabbar)\n\n const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl'\n this.#tabbar.scroll({\n left: isRTL\n ? this.#tabbar.scrollLeft + this.#tabbar.clientWidth\n : this.#tabbar.scrollLeft - this.#tabbar.clientWidth,\n })\n }\n\n readonly #scrollToEnd = (): void => {\n invariant(this.#tabbar)\n\n const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl'\n this.#tabbar.scroll({\n left: isRTL\n ? this.#tabbar.scrollLeft - this.#tabbar.clientWidth\n : this.#tabbar.scrollLeft + this.#tabbar.clientWidth,\n })\n }\n\n #setActiveTab(tab: HTMLQdsTabElement): void {\n this.activeTab = tab\n\n for (const t of this.host.querySelectorAll('qds-tab')) {\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access\n const target = t.tab\n const isSelected = t === tab\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n t.selected = isSelected\n if (target instanceof globalThis.Element)\n target.ariaSelected = isSelected.toString()\n }\n }\n\n #switchTabPanel(activeTab: HTMLQdsTabElement): void {\n for (const tab of this.#tabs) {\n const panel = resolvePanelElement(tab)\n if (panel) {\n panel.hidden = tab !== activeTab\n }\n }\n }\n\n #handleTabActivation(tab: HTMLQdsTabElement): void {\n const previousTab = this.activeTab\n if (previousTab === tab) return\n\n this.activeTab = tab\n\n this.hideEmitter.emit(previousTab)\n\n this.showEmitter.emit(tab)\n this.#setCurrentTab(tab)\n this.#switchTabPanel(tab)\n }\n\n #getCurrentTab(): HTMLQdsTabElement | undefined {\n return this.#tabs.find((tab) => tab.tab.getAttribute('tabindex') === '0')\n }\n\n #setCurrentTab(tab: HTMLQdsTabElement): void {\n for (const t of this.#tabs) {\n const isCurrent = t === tab\n\n componentOnReady(t, (element: HTMLQdsTabElement | undefined) => {\n const target = element?.tab\n if (target === undefined) return\n const isDisabled = target.getAttribute('aria-disabled') === 'true'\n const shouldActivateTab = isCurrent && !isDisabled\n const tabindex = shouldActivateTab ? '0' : '-1'\n target.setAttribute('tabindex', tabindex)\n if (shouldActivateTab) this.#handleTabActivation(t)\n })\n }\n }\n\n readonly #isVerticalPlacement = (): boolean =>\n this.placement === 'start' || this.placement === 'end'\n\n readonly #isHorizontalPlacement = (): boolean =>\n this.placement === 'top' || this.placement === 'bottom'\n\n readonly #onClick = (event: MouseEvent): void => {\n const { target } = event\n if (!(target instanceof HTMLElement)) return\n const tab = target.closest('qds-tab')\n if (!tab || tab.disabled === true || tab.inert) return\n\n this.#handleTabActivation(tab)\n this.#setActiveTab(tab)\n }\n\n readonly #onKeyDown = (event: KeyboardEvent): void => {\n const isVertical =\n this.orientation === 'vertical' || this.#isVerticalPlacement()\n const MOVE_SELECTION_KEYS = isVertical\n ? VERTICAL_MOVE_KEYS\n : HORIZONTAL_MOVE_KEYS\n if (!MOVE_SELECTION_KEYS.has(event.key)) return\n\n const tabs = this.#tabs\n if (tabs.length === 0) return\n\n event.preventDefault()\n event.stopPropagation()\n\n const activeTab = this.#getCurrentTab()\n let index = activeTab ? tabs.indexOf(activeTab) : 0\n\n const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl'\n\n let nextTab: HTMLQdsTabElement | undefined\n do {\n switch (event.key) {\n case 'ArrowLeft':\n case 'ArrowUp': {\n index = (isRTL ? index < tabs.length - 1 : index > 0)\n ? index - (isRTL ? -1 : 1)\n : isRTL\n ? 0\n : tabs.length - 1\n break\n }\n case 'ArrowRight':\n case 'ArrowDown': {\n index = (isRTL ? index > 0 : index < tabs.length - 1)\n ? index + (isRTL ? -1 : 1)\n : isRTL\n ? tabs.length - 1\n : 0\n break\n }\n case 'Home': {\n index = isRTL ? tabs.length - 1 : 0\n break\n }\n case 'End': {\n index = isRTL ? 0 : tabs.length - 1\n break\n }\n default:\n }\n nextTab = tabs[index]\n } while (nextTab.disabled === true)\n\n this.#setCurrentTab(nextTab)\n\n const target = nextTab.tab\n target.focus({ preventScroll: true })\n if (!isVertical) target.scrollIntoView()\n this.#handleTabActivation(nextTab)\n this.#setActiveTab(nextTab)\n }\n\n readonly #onMouseDown = (event: MouseEvent): void => {\n const { target } = event\n\n if (isEnabledTabItem(target)) this.#setCurrentTab(target)\n }\n\n readonly #onScroll = (): void => {\n if (!this.#tabbar) return\n\n const { clientWidth, scrollWidth, scrollLeft } = this.#tabbar\n\n const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl'\n this.disableStartArrow = scrollLeft === 0\n this.disableEndArrow = isRTL\n ? scrollWidth + scrollLeft <= clientWidth\n : scrollWidth - clientWidth - scrollLeft <= 1\n }\n\n readonly #onViewportCrop = (): void => {\n if (!this.#tabbar) return\n\n const { scrollWidth, clientWidth } = this.#tabbar\n\n if (scrollWidth > clientWidth) {\n this.#onScroll()\n }\n }\n\n #updateTabsCache(): void {\n const slot = this.host.shadowRoot?.querySelector('slot')\n this.#tabs = slot\n ? [...slot.assignedElements({ flatten: true })].filter<HTMLQdsTabElement>(\n (element) => isEnabledTabItem(element),\n )\n : []\n }\n\n #setTabSettings(): void {\n const settings = TAB_SETTINGS[`${this.layer}-${this.level}`]\n if (!settings) return\n\n for (const tab of this.host.querySelectorAll('qds-tab')) {\n /* eslint-disable @typescript-eslint/no-unsafe-member-access */\n tab.importance = this.#computedImportance ?? settings.importance\n tab.size = this.#computedSize ?? settings.size\n\n tab.indicatorPosition =\n this.orientation === 'vertical'\n ? 'inline-end'\n : (this.#computedPlacement ?? settings.indicatorPosition)\n /* eslint-enable @typescript-eslint/no-unsafe-member-access */\n }\n }\n\n readonly #onSlotchange = (): void => {\n this.#updateTabsCache()\n\n if (this.#tabs.length > 0) this.#setCurrentTab(this.#tabs[0])\n }\n}\n"],"version":3}
1
+ {"file":"qds-tabbar.js","mappings":"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","names":["HTMLElement","__stencil_proxyCustomElement"],"sources":["src/components/tabbar/tabbar.css?tag=qds-tabbar&encapsulation=shadow","src/components/tabbar/tabbar.tsx"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: © 2024 Schneider Electric\n *\n * SPDX-License-Identifier: Apache-2.0\n */\n\n@import url('../shared.css');\n\n:host {\n display: block;\n}\n\n.qds-vertical,\n.qds-vertical-divider,\n.qds-tabbar,\n.qds-tabs {\n display: flex;\n}\n\n.qds-vertical-divider,\n.qds-tabbar {\n width: inherit;\n}\n\n.qds-arrow-start {\n transform: scaleX(var(--qds-direction-factor, 1)) rotate(180deg);\n}\n\n.qds-align-center {\n align-content: center;\n}\n\n.qds-hidden {\n display: none;\n}\n\n.qds-centered {\n justify-content: center;\n}\n\n.qds-tabs {\n flex: 1;\n margin-block: 0;\n overflow: auto;\n padding-inline-start: 0;\n scroll-behavior: smooth;\n scrollbar-width: none;\n}\n\n.qds-vertical {\n flex-direction: column;\n}\n\n.qds-vertical-divider {\n flex-direction: row;\n}\n\n[data-size='small'] {\n gap: var(--qds-control-small-gap-siblings-related);\n}\n\n[data-size='standard'] {\n gap: var(--qds-control-standard-gap-siblings-related);\n}\n\n[data-size='large'] {\n gap: var(--qds-control-large-gap-siblings-related);\n}\n\n[data-layer='main'] {\n &[data-level='root'] .qds-tabs {\n gap: var(--qds-control-large-gap-siblings-related);\n }\n\n &[data-level='section'] .qds-tabs {\n gap: var(--qds-control-standard-gap-siblings-related);\n }\n\n &[data-level='subsection'] .qds-tabs {\n gap: var(--qds-control-small-gap-siblings-related);\n }\n}\n\n[data-layer='popup'] {\n &[data-level='root'] .qds-tabs {\n gap: var(--qds-control-standard-gap-siblings-related);\n }\n\n &[data-level='section'] .qds-tabs {\n gap: var(--qds-control-small-gap-siblings-related);\n }\n}\n\n:is([data-layer='panel'], [data-layer='accessory'])[data-level='root']\n .qds-tabs {\n gap: var(--qds-control-small-gap-siblings-related);\n}\n","// SPDX-FileCopyrightText: © 2024 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface, EventEmitter } from '@stencil/core'\nimport {\n AttachInternals,\n Component,\n Element,\n Event,\n h,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core'\n\nimport {\n componentOnReady,\n HORIZONTAL_MOVE_KEYS,\n invariant,\n resolvePanelElement,\n VERTICAL_MOVE_KEYS,\n} from '../../helpers'\nimport type { IndicatorPosition } from '../icon-tab/icon-tab'\nimport type { Importance, Size } from '../shared'\nimport type { Tab } from '../tab/tab'\n\nexport type Layer = 'accessory' | 'main' | 'panel' | 'popup'\nexport type Level = 'root' | 'section' | 'subsection'\nexport type TabbarSize = Size | undefined\nexport type TabbarImportance = Exclude<Importance, 'emphasized'> | undefined\nexport type Orientation = 'horizontal' | 'vertical'\nexport type Placement = 'bottom' | 'end' | 'start' | 'top'\nexport type Alignment = 'center' | 'start'\n\ntype TabItemElement = HTMLQdsIconTabElement | HTMLQdsTabElement\n\nconst TAB_ITEM_SELECTOR = 'qds-icon-tab, qds-tab'\n\nconst TAB_SETTINGS: Record<\n string,\n Pick<Tab, 'importance' | 'indicatorPosition' | 'size'> | undefined\n> = {\n 'main-root': {\n importance: 'standard',\n size: 'large',\n indicatorPosition: 'block-end',\n },\n 'main-section': {\n importance: 'standard',\n size: 'standard',\n indicatorPosition: 'block-end',\n },\n 'popup-root': {\n importance: 'standard',\n size: 'standard',\n indicatorPosition: 'block-end',\n },\n 'main-subsection': {\n importance: 'subdued',\n size: 'small',\n indicatorPosition: 'block-start',\n },\n 'popup-section': {\n importance: 'subdued',\n size: 'small',\n indicatorPosition: 'inline-start',\n },\n 'panel-root': {\n importance: 'standard',\n size: 'small',\n indicatorPosition: 'block-start',\n },\n 'accessory-root': {\n importance: 'subdued',\n size: 'small',\n indicatorPosition: 'block-end',\n },\n}\n\nconst isTabItem = (item: unknown): item is TabItemElement => {\n if (!(item instanceof HTMLElement)) return false\n\n const tagName = item.tagName.toLowerCase()\n return tagName === 'qds-tab' || tagName === 'qds-icon-tab'\n}\n\nconst isEnabledTabItem = (item: unknown): item is TabItemElement =>\n isTabItem(item) && !item.inert && item.disabled !== true\n\nconst getTabTrigger = (tab: TabItemElement): HTMLElement =>\n (tab as TabItemElement & { tab: HTMLElement }).tab\n\n/**\n * `<qds-tabbar>` is the component that facilitates navigation between the groups\n * of related content within the page.\n * It allows users to switch between groups by clicking on Tabs without going to another page.\n */\n@Component({\n tag: 'qds-tabbar',\n shadow: { delegatesFocus: true },\n styleUrl: 'tabbar.css',\n})\nexport class Tabbar implements ComponentInterface {\n /**\n * The tabbar's layer.\n *\n * @deprecated The property layer is deprecated. Please use `size` property instead.\n * Please do not use `layer` and `size` at the same time.\n */\n @Prop() public layer?: Layer = 'main'\n\n /**\n * The tabbar's level.\n *\n * @deprecated The property level is deprecated. Please use `size` property instead.\n * Please do not use `level` and `size` at the same time.\n */\n @Prop() public level?: Level = 'root'\n\n /**\n * The tabbar's size. This controls the size of the tabs within the tabbar.\n */\n @Prop() public size?: Size = 'standard'\n\n /**\n * The tabbar's orientation.\n *\n * @deprecated Please use the `placement` property instead. Do not use\n * `orientation` and `placement` at the same time.\n */\n @Prop() public orientation?: Orientation = 'horizontal'\n\n /**\n * The tabbar's placement.\n */\n @Prop() public placement?: Placement = 'top'\n\n /**\n * the tablist Description\n */\n @Prop() public readonly tablistDescription?: string\n\n /**\n * Displays a divider line.\n */\n @Prop() public showDivider?: boolean = false\n\n /**\n * The alignment of tabs. Only applicable for horizontal orientation.\n */\n @Prop() public readonly alignment?: Alignment = 'start'\n\n /**\n * The importance of the tabbar. This controls the visual emphasis of the tabs within the tabbar.\n */\n @Prop() public importance?: TabbarImportance\n\n /**\n * Emitted when the user selects the tab.\n */\n @Event({ eventName: 'qdsTabShow', cancelable: false })\n private readonly showEmitter!: EventEmitter<HTMLElement>\n\n /**\n * Emitted when the user selects the tab.\n */\n @Event({ eventName: 'qdsTabHide', cancelable: false })\n private readonly hideEmitter!: EventEmitter<HTMLElement>\n\n @Element() private readonly host!: HTMLElement\n\n @AttachInternals() private readonly internals!: ElementInternals\n\n @State() private disableEndArrow = false\n\n @State() private disableStartArrow = false\n\n @State() private activeTab?: TabItemElement\n\n #tabs: TabItemElement[] = []\n\n #ro: ResizeObserver | undefined\n\n #tabbar?: HTMLElement\n\n get #computedImportance(): TabbarImportance {\n return this.importance\n }\n\n get #computedSize(): Size | undefined {\n return this.size ?? undefined\n }\n\n get #computedPlacement(): IndicatorPosition | undefined {\n switch (this.placement) {\n case 'top': {\n return 'block-end'\n }\n case 'end': {\n return 'inline-start'\n }\n case 'bottom': {\n return 'block-start'\n }\n case 'start': {\n return 'inline-end'\n }\n default: {\n return undefined\n }\n }\n }\n\n get #computeDividerVisible(): boolean {\n if (this.layer === 'panel') return false\n if (\n this.layer === 'main' &&\n this.level === 'subsection' &&\n (this.orientation === 'horizontal' || this.#isVerticalPlacement())\n )\n return false\n return this.showDivider === true\n }\n\n get #computedAriaOrientation(): Orientation {\n return this.orientation === 'vertical' || this.#isVerticalPlacement()\n ? 'vertical'\n : 'horizontal'\n }\n\n @Watch('importance')\n protected settingChanged(): void {\n this.#setTabSettings()\n }\n\n @Watch('orientation')\n @Watch('placement')\n @Watch('tablistDescription')\n protected accessibilityChanged(): void {\n this.#syncInternalsAccessibility()\n }\n\n @Listen('resize', { target: 'window' })\n protected windowResize(): void {\n this.#onViewportCrop()\n }\n\n public componentWillLoad(): void {\n this.settingChanged()\n this.internals.role = 'tablist'\n this.#syncInternalsAccessibility()\n const tabs = this.#getTabItems()\n const preselectedTab = tabs.find((tab) => tab.selected)\n if (preselectedTab) this.#setActiveTab(preselectedTab)\n else if (tabs.length > 0) this.#setActiveTab(tabs[0])\n }\n\n public componentDidRender(): void {\n if (this.activeTab) this.#switchTabPanel(this.activeTab)\n this.settingChanged()\n }\n\n public componentDidLoad(): void {\n invariant(this.#tabbar)\n\n this.#ro = new ResizeObserver(this.#onScroll)\n this.#ro.observe(this.#tabbar)\n }\n\n public disconnectedCallback(): void {\n if (this.#ro) this.#ro.disconnect()\n }\n\n public render() {\n return (\n <div\n class={{\n 'qds-vertical-divider':\n this.orientation === 'vertical' || this.#isVerticalPlacement(),\n }}\n data-layer={this.layer}\n data-level={this.level}\n data-importance={this.#computedImportance}\n >\n {this.#computeDividerVisible && this.#isEndOrBottomPlacement() && (\n <qds-divider\n vertical={\n this.orientation === 'vertical' || this.#isVerticalPlacement()\n }\n />\n )}\n <div class=\"qds-tabbar\">\n <div\n class={{\n 'qds-align-center': true,\n 'qds-hidden':\n (this.disableEndArrow && this.disableStartArrow) ||\n this.orientation === 'vertical' ||\n this.#isVerticalPlacement(),\n }}\n >\n <qds-icon-button\n text=\"show previous tab\"\n importance=\"subdued\"\n iconName=\"next\"\n iconLibrary=\"core\"\n class=\"qds-arrow-start\"\n onClick={this.#scrollToStart}\n disabled={this.disableStartArrow}\n />\n </div>\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions */}\n <div\n class={{\n 'qds-tabs': true,\n 'qds-vertical':\n this.orientation === 'vertical' || this.#isVerticalPlacement(),\n 'qds-centered':\n this.alignment === 'center' &&\n (this.orientation === 'horizontal' ||\n this.#isHorizontalPlacement()) &&\n this.disableEndArrow &&\n this.disableStartArrow,\n }}\n ref={(element) => {\n this.#tabbar = element\n }}\n onClick={this.#onClick}\n onKeyDown={this.#onKeyDown}\n onMouseDown={this.#onMouseDown}\n onScroll={this.#onScroll}\n >\n <slot onSlotchange={this.#onSlotchange} />\n </div>\n <div\n class={{\n 'qds-align-center': true,\n 'qds-hidden':\n (this.disableEndArrow && this.disableStartArrow) ||\n this.orientation === 'vertical' ||\n this.#isVerticalPlacement(),\n }}\n >\n <qds-icon-button\n text=\"show next tab\"\n iconName=\"next\"\n iconLibrary=\"core\"\n importance=\"subdued\"\n onClick={this.#scrollToEnd}\n disabled={this.disableEndArrow}\n />\n </div>\n </div>\n {this.#computeDividerVisible && !this.#isEndOrBottomPlacement() && (\n <qds-divider\n vertical={\n this.orientation === 'vertical' || this.#isVerticalPlacement()\n }\n />\n )}\n </div>\n )\n }\n\n #getTabItems(): TabItemElement[] {\n return [\n ...this.host.querySelectorAll<HTMLElement>(TAB_ITEM_SELECTOR),\n ].filter((element): element is TabItemElement => isTabItem(element))\n }\n\n readonly #scrollToStart = (): void => {\n invariant(this.#tabbar)\n\n const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl'\n this.#tabbar.scroll({\n left: isRTL\n ? this.#tabbar.scrollLeft + this.#tabbar.clientWidth\n : this.#tabbar.scrollLeft - this.#tabbar.clientWidth,\n })\n }\n\n readonly #scrollToEnd = (): void => {\n invariant(this.#tabbar)\n\n const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl'\n this.#tabbar.scroll({\n left: isRTL\n ? this.#tabbar.scrollLeft - this.#tabbar.clientWidth\n : this.#tabbar.scrollLeft + this.#tabbar.clientWidth,\n })\n }\n\n #setActiveTab(tab: TabItemElement): void {\n this.activeTab = tab\n\n for (const t of this.#getTabItems()) {\n const target = getTabTrigger(t)\n const isSelected = t === tab\n t.selected = isSelected\n if (target instanceof globalThis.Element)\n target.ariaSelected = isSelected.toString()\n }\n }\n\n #switchTabPanel(activeTab: TabItemElement): void {\n for (const tab of this.#tabs) {\n const panel = resolvePanelElement(tab)\n if (panel) {\n panel.hidden = tab !== activeTab\n }\n }\n }\n\n #handleTabActivation(tab: TabItemElement): void {\n const previousTab = this.activeTab\n if (previousTab === tab) return\n\n this.activeTab = tab\n\n this.hideEmitter.emit(previousTab)\n\n this.showEmitter.emit(tab)\n this.#setCurrentTab(tab)\n this.#switchTabPanel(tab)\n }\n\n #getCurrentTab(): TabItemElement | undefined {\n return this.#tabs.find(\n (tab) => getTabTrigger(tab).getAttribute('tabindex') === '0',\n )\n }\n\n #setCurrentTab(tab: TabItemElement): void {\n for (const t of this.#tabs) {\n const isCurrent = t === tab\n\n componentOnReady(t, (element: TabItemElement | undefined) => {\n const target = element ? getTabTrigger(element) : undefined\n if (target === undefined) return\n const isDisabled = target.getAttribute('aria-disabled') === 'true'\n const shouldActivateTab = isCurrent && !isDisabled\n const tabindex = shouldActivateTab ? '0' : '-1'\n target.setAttribute('tabindex', tabindex)\n if (shouldActivateTab) this.#handleTabActivation(t)\n })\n }\n }\n\n readonly #isVerticalPlacement = (): boolean =>\n this.placement === 'start' || this.placement === 'end'\n\n readonly #isHorizontalPlacement = (): boolean =>\n this.placement === 'top' || this.placement === 'bottom'\n\n readonly #isEndOrBottomPlacement = (): boolean =>\n this.placement === 'end' || this.placement === 'bottom'\n\n readonly #onClick = (event: MouseEvent): void => {\n const { target } = event\n if (!(target instanceof HTMLElement)) return\n const tab = target.closest(TAB_ITEM_SELECTOR)\n if (!isEnabledTabItem(tab)) return\n\n this.#handleTabActivation(tab)\n this.#setActiveTab(tab)\n }\n\n readonly #onKeyDown = (event: KeyboardEvent): void => {\n const isVertical =\n this.orientation === 'vertical' || this.#isVerticalPlacement()\n const MOVE_SELECTION_KEYS = isVertical\n ? VERTICAL_MOVE_KEYS\n : HORIZONTAL_MOVE_KEYS\n if (!MOVE_SELECTION_KEYS.has(event.key)) return\n\n const tabs = this.#tabs\n if (tabs.length === 0) return\n\n event.preventDefault()\n event.stopPropagation()\n\n const activeTab = this.#getCurrentTab()\n let index = activeTab ? tabs.indexOf(activeTab) : 0\n\n const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl'\n\n let nextTab: TabItemElement | undefined\n do {\n switch (event.key) {\n case 'ArrowLeft':\n case 'ArrowUp': {\n index = (isRTL ? index < tabs.length - 1 : index > 0)\n ? index - (isRTL ? -1 : 1)\n : isRTL\n ? 0\n : tabs.length - 1\n break\n }\n case 'ArrowRight':\n case 'ArrowDown': {\n index = (isRTL ? index > 0 : index < tabs.length - 1)\n ? index + (isRTL ? -1 : 1)\n : isRTL\n ? tabs.length - 1\n : 0\n break\n }\n case 'Home': {\n index = isRTL ? tabs.length - 1 : 0\n break\n }\n case 'End': {\n index = isRTL ? 0 : tabs.length - 1\n break\n }\n default:\n }\n nextTab = tabs[index]\n } while (nextTab.disabled === true)\n\n this.#setCurrentTab(nextTab)\n\n const target = getTabTrigger(nextTab)\n target.focus({ preventScroll: true })\n if (!isVertical) target.scrollIntoView()\n this.#handleTabActivation(nextTab)\n this.#setActiveTab(nextTab)\n }\n\n readonly #onMouseDown = (event: MouseEvent): void => {\n const { target } = event\n if (!(target instanceof HTMLElement)) return\n\n const tab = target.closest(TAB_ITEM_SELECTOR)\n if (isEnabledTabItem(tab)) this.#setCurrentTab(tab)\n }\n\n readonly #onScroll = (): void => {\n if (!this.#tabbar) return\n\n const { clientWidth, scrollWidth, scrollLeft } = this.#tabbar\n\n const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl'\n this.disableStartArrow = scrollLeft === 0\n this.disableEndArrow = isRTL\n ? scrollWidth + scrollLeft <= clientWidth\n : scrollWidth - clientWidth - scrollLeft <= 1\n }\n\n readonly #onViewportCrop = (): void => {\n if (!this.#tabbar) return\n\n const { scrollWidth, clientWidth } = this.#tabbar\n\n if (scrollWidth > clientWidth) {\n this.#onScroll()\n }\n }\n\n #syncInternalsAccessibility(): void {\n this.internals.ariaOrientation = this.#computedAriaOrientation\n this.internals.ariaLabel = this.tablistDescription ?? ''\n }\n\n #updateTabsCache(): void {\n const slot = this.host.shadowRoot?.querySelector('slot')\n this.#tabs = slot\n ? [...slot.assignedElements({ flatten: true })].filter(\n (element): element is TabItemElement => isEnabledTabItem(element),\n )\n : []\n }\n\n #setTabSettings(): void {\n const settings = TAB_SETTINGS[`${this.layer}-${this.level}`]\n if (!settings) return\n\n for (const tab of this.#getTabItems()) {\n tab.importance = this.#computedImportance ?? settings.importance\n tab.size = this.#computedSize ?? settings.size\n\n tab.indicatorPosition =\n this.orientation === 'vertical'\n ? 'inline-end'\n : (this.#computedPlacement ?? settings.indicatorPosition)\n }\n }\n\n readonly #onSlotchange = (): void => {\n this.#updateTabsCache()\n\n if (this.#tabs.length > 0) this.#setCurrentTab(this.#tabs[0])\n }\n}\n"],"version":3}
@@ -58,9 +58,9 @@ const TableCell = /*@__PURE__*/ proxyCustomElement(class TableCell extends H {
58
58
  render() {
59
59
  return (
60
60
  // eslint-disable-next-line jsx-a11y/control-has-associated-label
61
- h("td", { key: '92bc078c48ec5f41e1751a19bdbf2f95eb33d996', class: "qds-table-cell", "data-size": __classPrivateFieldGet(this, _TableCell_instances, "a", _TableCell_computedSize_get), colSpan: this.colSpan, rowSpan: this.rowSpan,
61
+ h("td", { key: 'b44e4c598db5ed018856503d2c74943fbbeb50bf', class: "qds-table-cell", "data-size": __classPrivateFieldGet(this, _TableCell_instances, "a", _TableCell_computedSize_get), colSpan: this.colSpan, rowSpan: this.rowSpan,
62
62
  // eslint-disable-next-line jsx-a11y/no-interactive-element-to-noninteractive-role
63
- role: "none" }, h("slot", { key: 'cf016b76dd2a13a2768180d3f7f8cb22d9189876' })));
63
+ role: "none" }, h("slot", { key: '97f84c5f82f7091d5d5297d2ef265e5ea4e9629f' })));
64
64
  }
65
65
  static get watchers() { return {
66
66
  "colSpan": ["colSpanChanged"],