@quartzds/core 1.0.0-beta.12 → 1.0.0-beta.120

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 (433) hide show
  1. package/CHANGELOG.md +1895 -0
  2. package/README.md +23 -23
  3. package/components/index.d.ts +50 -0
  4. package/components/index.js +62 -28
  5. package/components/index.js.map +1 -1
  6. package/components/p-5RFBIepu.js +112 -0
  7. package/components/p-5RFBIepu.js.map +1 -0
  8. package/components/p-B03FWheS.js +393 -0
  9. package/components/p-B03FWheS.js.map +1 -0
  10. package/components/p-BkBJDD6Y.js +274 -0
  11. package/components/p-BkBJDD6Y.js.map +1 -0
  12. package/components/p-BkgfW_tl.js +282 -0
  13. package/components/p-BkgfW_tl.js.map +1 -0
  14. package/components/p-Bnc7Puxx.js +164 -0
  15. package/components/p-Bnc7Puxx.js.map +1 -0
  16. package/components/{floating-ui.dom.esm.js → p-Bv2vPjgL.js} +557 -345
  17. package/components/p-Bv2vPjgL.js.map +1 -0
  18. package/components/p-CDRwHAIT.js +105 -0
  19. package/components/p-CDRwHAIT.js.map +1 -0
  20. package/components/p-CFVg7I9T.js +269 -0
  21. package/components/p-CFVg7I9T.js.map +1 -0
  22. package/components/p-CRVPDKfO.js +163 -0
  23. package/components/p-CRVPDKfO.js.map +1 -0
  24. package/components/p-CXP6q9Mr.js +286 -0
  25. package/components/p-CXP6q9Mr.js.map +1 -0
  26. package/components/p-CZRW1LV_.js +28 -0
  27. package/components/p-CZRW1LV_.js.map +1 -0
  28. package/components/p-D2489VzR.js +2133 -0
  29. package/components/p-D2489VzR.js.map +1 -0
  30. package/components/p-DeRqCYmp.js +102 -0
  31. package/components/p-DeRqCYmp.js.map +1 -0
  32. package/components/p-DnZdwX0l.js +149 -0
  33. package/components/p-DnZdwX0l.js.map +1 -0
  34. package/components/p-Dsc0-aXK.js +162 -0
  35. package/components/p-Dsc0-aXK.js.map +1 -0
  36. package/components/p-DwxIJEUj.js +91 -0
  37. package/components/p-DwxIJEUj.js.map +1 -0
  38. package/components/p-U2Q0vF-d.js +96 -0
  39. package/components/p-U2Q0vF-d.js.map +1 -0
  40. package/components/p-eFhV8w2l.js +428 -0
  41. package/components/p-eFhV8w2l.js.map +1 -0
  42. package/components/qds-action-item.d.ts +11 -0
  43. package/components/qds-action-item.js +183 -0
  44. package/components/qds-action-item.js.map +1 -0
  45. package/components/qds-avatar-media.d.ts +11 -0
  46. package/components/qds-avatar-media.js +14 -0
  47. package/components/qds-avatar-media.js.map +1 -0
  48. package/components/qds-badge-counter.d.ts +11 -0
  49. package/components/qds-badge-counter.js +14 -0
  50. package/components/qds-badge-counter.js.map +1 -0
  51. package/components/qds-badge-indicator.d.ts +11 -0
  52. package/components/qds-badge-indicator.js +14 -0
  53. package/components/qds-badge-indicator.js.map +1 -0
  54. package/components/qds-breadcrumb-item.d.ts +11 -0
  55. package/components/qds-breadcrumb-item.js +169 -0
  56. package/components/qds-breadcrumb-item.js.map +1 -0
  57. package/components/qds-button.d.ts +2 -2
  58. package/components/qds-button.js +457 -129
  59. package/components/qds-button.js.map +1 -1
  60. package/components/qds-checkbox.d.ts +2 -2
  61. package/components/qds-checkbox.js +4 -146
  62. package/components/qds-checkbox.js.map +1 -1
  63. package/components/qds-chip.d.ts +11 -0
  64. package/components/qds-chip.js +304 -0
  65. package/components/qds-chip.js.map +1 -0
  66. package/components/qds-dialog.d.ts +2 -2
  67. package/components/qds-dialog.js +179 -93
  68. package/components/qds-dialog.js.map +1 -1
  69. package/components/qds-divider.d.ts +2 -2
  70. package/components/qds-divider.js +4 -39
  71. package/components/qds-divider.js.map +1 -1
  72. package/components/qds-dropdown.d.ts +2 -2
  73. package/components/qds-dropdown.js +4 -249
  74. package/components/qds-dropdown.js.map +1 -1
  75. package/components/qds-form-message.d.ts +2 -2
  76. package/components/qds-form-message.js +100 -50
  77. package/components/qds-form-message.js.map +1 -1
  78. package/components/qds-icon-button.d.ts +11 -0
  79. package/components/qds-icon-button.js +14 -0
  80. package/components/qds-icon-button.js.map +1 -0
  81. package/components/qds-icon-tab.d.ts +11 -0
  82. package/components/qds-icon-tab.js +278 -0
  83. package/components/qds-icon-tab.js.map +1 -0
  84. package/components/qds-icon.d.ts +2 -2
  85. package/components/qds-icon.js +4 -3
  86. package/components/qds-inline-link.d.ts +2 -2
  87. package/components/qds-inline-link.js +171 -74
  88. package/components/qds-inline-link.js.map +1 -1
  89. package/components/qds-input.d.ts +2 -2
  90. package/components/qds-input.js +548 -230
  91. package/components/qds-input.js.map +1 -1
  92. package/components/qds-label.d.ts +2 -2
  93. package/components/qds-label.js +4 -3
  94. package/components/qds-list-item.d.ts +11 -0
  95. package/components/qds-list-item.js +395 -0
  96. package/components/qds-list-item.js.map +1 -0
  97. package/components/qds-loader.d.ts +11 -0
  98. package/components/qds-loader.js +152 -0
  99. package/components/qds-loader.js.map +1 -0
  100. package/components/qds-menu-item.d.ts +11 -0
  101. package/components/qds-menu-item.js +204 -0
  102. package/components/qds-menu-item.js.map +1 -0
  103. package/components/qds-mini-button.d.ts +11 -0
  104. package/components/qds-mini-button.js +14 -0
  105. package/components/qds-mini-button.js.map +1 -0
  106. package/components/qds-progress-bar.d.ts +11 -0
  107. package/components/qds-progress-bar.js +155 -0
  108. package/components/qds-progress-bar.js.map +1 -0
  109. package/components/qds-radio.d.ts +2 -2
  110. package/components/qds-radio.js +4 -99
  111. package/components/qds-radio.js.map +1 -1
  112. package/components/qds-select.d.ts +11 -0
  113. package/components/qds-select.js +363 -0
  114. package/components/qds-select.js.map +1 -0
  115. package/components/qds-standalone-link.d.ts +11 -0
  116. package/components/qds-standalone-link.js +208 -0
  117. package/components/qds-standalone-link.js.map +1 -0
  118. package/components/qds-switch.d.ts +2 -2
  119. package/components/qds-switch.js +257 -105
  120. package/components/qds-switch.js.map +1 -1
  121. package/components/qds-tab.d.ts +11 -0
  122. package/components/qds-tab.js +339 -0
  123. package/components/qds-tab.js.map +1 -0
  124. package/components/qds-tabbar.d.ts +11 -0
  125. package/components/qds-tabbar.js +410 -0
  126. package/components/qds-tabbar.js.map +1 -0
  127. package/components/qds-table-cell.d.ts +11 -0
  128. package/components/qds-table-cell.js +81 -0
  129. package/components/qds-table-cell.js.map +1 -0
  130. package/components/qds-table-head-cell.d.ts +11 -0
  131. package/components/qds-table-head-cell.js +87 -0
  132. package/components/qds-table-head-cell.js.map +1 -0
  133. package/components/qds-table-row.d.ts +11 -0
  134. package/components/qds-table-row.js +48 -0
  135. package/components/qds-table-row.js.map +1 -0
  136. package/components/qds-table.d.ts +11 -0
  137. package/components/qds-table.js +48 -0
  138. package/components/qds-table.js.map +1 -0
  139. package/components/qds-tag.d.ts +11 -0
  140. package/components/qds-tag.js +14 -0
  141. package/components/qds-tag.js.map +1 -0
  142. package/components/qds-textarea.d.ts +2 -2
  143. package/components/qds-textarea.js +352 -193
  144. package/components/qds-textarea.js.map +1 -1
  145. package/components/qds-title.d.ts +2 -2
  146. package/components/qds-title.js +4 -84
  147. package/components/qds-title.js.map +1 -1
  148. package/components/qds-tooltip.d.ts +2 -2
  149. package/components/qds-tooltip.js +4 -315
  150. package/components/qds-tooltip.js.map +1 -1
  151. package/dist/cjs/app-globals-CLoao1by.js +13 -0
  152. package/dist/cjs/app-globals-CLoao1by.js.map +1 -0
  153. package/dist/cjs/controls-DKGeNyr5.js +32 -0
  154. package/dist/cjs/controls-DKGeNyr5.js.map +1 -0
  155. package/dist/cjs/{floating-ui.dom.esm-7f1cac3e.js → floating-ui.dom-Bvzubd50.js} +557 -345
  156. package/dist/cjs/floating-ui.dom-Bvzubd50.js.map +1 -0
  157. package/dist/cjs/helpers-BIL8yXqA.js +303 -0
  158. package/dist/cjs/helpers-BIL8yXqA.js.map +1 -0
  159. package/dist/cjs/index-DIY7gpXM.js +2376 -0
  160. package/dist/cjs/index-DIY7gpXM.js.map +1 -0
  161. package/dist/cjs/index.cjs.js +40 -31
  162. package/dist/cjs/index.cjs.js.map +1 -1
  163. package/dist/cjs/library-CeKRI2f2.js +142 -0
  164. package/dist/cjs/library-CeKRI2f2.js.map +1 -0
  165. package/dist/cjs/loader.cjs.js +9 -10
  166. package/dist/cjs/loader.cjs.js.map +1 -1
  167. package/dist/cjs/qds-action-item.cjs.entry.js +145 -0
  168. package/dist/cjs/qds-action-item.entry.cjs.js.map +1 -0
  169. package/dist/cjs/qds-avatar-media.qds-checkbox.qds-radio.entry.cjs.js.map +1 -0
  170. package/dist/cjs/qds-avatar-media_3.cjs.entry.js +399 -0
  171. package/dist/cjs/qds-badge-counter.qds-badge-indicator.entry.cjs.js.map +1 -0
  172. package/dist/cjs/qds-badge-counter_2.cjs.entry.js +146 -0
  173. package/dist/cjs/qds-breadcrumb-item.cjs.entry.js +129 -0
  174. package/dist/cjs/qds-breadcrumb-item.entry.cjs.js.map +1 -0
  175. package/dist/cjs/qds-button.cjs.entry.js +385 -93
  176. package/dist/cjs/qds-button.entry.cjs.js.map +1 -0
  177. package/dist/cjs/qds-chip.cjs.entry.js +252 -0
  178. package/dist/cjs/qds-chip.entry.cjs.js.map +1 -0
  179. package/dist/cjs/qds-dialog.cjs.entry.js +124 -77
  180. package/dist/cjs/qds-dialog.entry.cjs.js.map +1 -0
  181. package/dist/cjs/qds-divider.qds-icon-button.entry.cjs.js.map +1 -0
  182. package/dist/cjs/qds-divider_2.cjs.entry.js +280 -0
  183. package/dist/cjs/qds-dropdown.cjs.entry.js +373 -209
  184. package/dist/cjs/qds-dropdown.entry.cjs.js.map +1 -0
  185. package/dist/cjs/qds-form-message.cjs.entry.js +70 -27
  186. package/dist/cjs/qds-form-message.entry.cjs.js.map +1 -0
  187. package/dist/cjs/qds-icon-tab.cjs.entry.js +214 -0
  188. package/dist/cjs/qds-icon-tab.entry.cjs.js.map +1 -0
  189. package/dist/cjs/qds-icon.cjs.entry.js +112 -93
  190. package/dist/cjs/qds-icon.entry.cjs.js.map +1 -0
  191. package/dist/cjs/qds-inline-link.cjs.entry.js +137 -49
  192. package/dist/cjs/qds-inline-link.entry.cjs.js.map +1 -0
  193. package/dist/cjs/qds-input.cjs.entry.js +473 -188
  194. package/dist/cjs/qds-input.entry.cjs.js.map +1 -0
  195. package/dist/cjs/qds-label.cjs.entry.js +118 -27
  196. package/dist/cjs/qds-label.entry.cjs.js.map +1 -0
  197. package/dist/cjs/qds-list-item.cjs.entry.js +290 -0
  198. package/dist/cjs/qds-list-item.entry.cjs.js.map +1 -0
  199. package/dist/cjs/qds-loader.cjs.entry.js +126 -0
  200. package/dist/cjs/qds-loader.entry.cjs.js.map +1 -0
  201. package/dist/cjs/qds-menu-item.cjs.entry.js +158 -0
  202. package/dist/cjs/qds-menu-item.entry.cjs.js.map +1 -0
  203. package/dist/cjs/qds-mini-button.cjs.entry.js +132 -0
  204. package/dist/cjs/qds-mini-button.entry.cjs.js.map +1 -0
  205. package/dist/cjs/qds-progress-bar.cjs.entry.js +131 -0
  206. package/dist/cjs/qds-progress-bar.entry.cjs.js.map +1 -0
  207. package/dist/cjs/qds-select.cjs.entry.js +319 -0
  208. package/dist/cjs/qds-select.entry.cjs.js.map +1 -0
  209. package/dist/cjs/qds-standalone-link.cjs.entry.js +169 -0
  210. package/dist/cjs/qds-standalone-link.entry.cjs.js.map +1 -0
  211. package/dist/cjs/qds-switch.cjs.entry.js +221 -67
  212. package/dist/cjs/qds-switch.entry.cjs.js.map +1 -0
  213. package/dist/cjs/qds-tab.cjs.entry.js +265 -0
  214. package/dist/cjs/qds-tab.entry.cjs.js.map +1 -0
  215. package/dist/cjs/qds-tabbar.cjs.entry.js +344 -0
  216. package/dist/cjs/qds-tabbar.entry.cjs.js.map +1 -0
  217. package/dist/cjs/qds-table-cell.cjs.entry.js +61 -0
  218. package/dist/cjs/qds-table-cell.entry.cjs.js.map +1 -0
  219. package/dist/cjs/qds-table-head-cell.cjs.entry.js +65 -0
  220. package/dist/cjs/qds-table-head-cell.entry.cjs.js.map +1 -0
  221. package/dist/cjs/qds-table-row.cjs.entry.js +34 -0
  222. package/dist/cjs/qds-table-row.entry.cjs.js.map +1 -0
  223. package/dist/cjs/qds-table.cjs.entry.js +34 -0
  224. package/dist/cjs/qds-table.entry.cjs.js.map +1 -0
  225. package/dist/cjs/qds-tag.cjs.entry.js +110 -0
  226. package/dist/cjs/qds-tag.entry.cjs.js.map +1 -0
  227. package/dist/cjs/qds-textarea.cjs.entry.js +303 -156
  228. package/dist/cjs/qds-textarea.entry.cjs.js.map +1 -0
  229. package/dist/cjs/qds-title.cjs.entry.js +61 -52
  230. package/dist/cjs/qds-title.entry.cjs.js.map +1 -0
  231. package/dist/cjs/qds-tooltip.cjs.entry.js +334 -263
  232. package/dist/cjs/qds-tooltip.entry.cjs.js.map +1 -0
  233. package/dist/cjs/qds.cjs.js +18 -17
  234. package/dist/cjs/qds.cjs.js.map +1 -1
  235. package/dist/custom-elements.json +12056 -2304
  236. package/dist/docs.d.ts +344 -240
  237. package/dist/docs.json +13125 -3360
  238. package/dist/esm/app-globals-WylVyaRG.js +11 -0
  239. package/dist/esm/app-globals-WylVyaRG.js.map +1 -0
  240. package/dist/esm/controls-CZRW1LV_.js +28 -0
  241. package/dist/esm/controls-CZRW1LV_.js.map +1 -0
  242. package/dist/esm/{floating-ui.dom.esm-c2f3e549.js → floating-ui.dom-Bv2vPjgL.js} +557 -345
  243. package/dist/esm/floating-ui.dom-Bv2vPjgL.js.map +1 -0
  244. package/dist/esm/helpers-BgaJNF9u.js +286 -0
  245. package/dist/esm/helpers-BgaJNF9u.js.map +1 -0
  246. package/dist/esm/index-Hg1Liloy.js +2364 -0
  247. package/dist/esm/index-Hg1Liloy.js.map +1 -0
  248. package/dist/esm/index.js +40 -30
  249. package/dist/esm/index.js.map +1 -1
  250. package/dist/esm/library-CBfntPWH.js +138 -0
  251. package/dist/esm/library-CBfntPWH.js.map +1 -0
  252. package/dist/esm/loader.js +10 -9
  253. package/dist/esm/loader.js.map +1 -1
  254. package/dist/esm/qds-action-item.entry.js +143 -0
  255. package/dist/esm/qds-action-item.entry.js.map +1 -0
  256. package/dist/esm/qds-avatar-media.qds-checkbox.qds-radio.entry.js.map +1 -0
  257. package/dist/esm/qds-avatar-media_3.entry.js +395 -0
  258. package/dist/esm/qds-badge-counter.qds-badge-indicator.entry.js.map +1 -0
  259. package/dist/esm/qds-badge-counter_2.entry.js +143 -0
  260. package/dist/esm/qds-breadcrumb-item.entry.js +127 -0
  261. package/dist/esm/qds-breadcrumb-item.entry.js.map +1 -0
  262. package/dist/esm/qds-button.entry.js +385 -91
  263. package/dist/esm/qds-button.entry.js.map +1 -1
  264. package/dist/esm/qds-chip.entry.js +250 -0
  265. package/dist/esm/qds-chip.entry.js.map +1 -0
  266. package/dist/esm/qds-dialog.entry.js +124 -75
  267. package/dist/esm/qds-dialog.entry.js.map +1 -1
  268. package/dist/esm/qds-divider.qds-icon-button.entry.js.map +1 -0
  269. package/dist/esm/qds-divider_2.entry.js +277 -0
  270. package/dist/esm/qds-dropdown.entry.js +373 -207
  271. package/dist/esm/qds-dropdown.entry.js.map +1 -1
  272. package/dist/esm/qds-form-message.entry.js +70 -25
  273. package/dist/esm/qds-form-message.entry.js.map +1 -1
  274. package/dist/esm/qds-icon-tab.entry.js +212 -0
  275. package/dist/esm/qds-icon-tab.entry.js.map +1 -0
  276. package/dist/esm/qds-icon.entry.js +112 -91
  277. package/dist/esm/qds-icon.entry.js.map +1 -1
  278. package/dist/esm/qds-inline-link.entry.js +137 -47
  279. package/dist/esm/qds-inline-link.entry.js.map +1 -1
  280. package/dist/esm/qds-input.entry.js +473 -186
  281. package/dist/esm/qds-input.entry.js.map +1 -1
  282. package/dist/esm/qds-label.entry.js +118 -25
  283. package/dist/esm/qds-label.entry.js.map +1 -1
  284. package/dist/esm/qds-list-item.entry.js +288 -0
  285. package/dist/esm/qds-list-item.entry.js.map +1 -0
  286. package/dist/esm/qds-loader.entry.js +124 -0
  287. package/dist/esm/qds-loader.entry.js.map +1 -0
  288. package/dist/esm/qds-menu-item.entry.js +156 -0
  289. package/dist/esm/qds-menu-item.entry.js.map +1 -0
  290. package/dist/esm/qds-mini-button.entry.js +130 -0
  291. package/dist/esm/qds-mini-button.entry.js.map +1 -0
  292. package/dist/esm/qds-progress-bar.entry.js +129 -0
  293. package/dist/esm/qds-progress-bar.entry.js.map +1 -0
  294. package/dist/esm/qds-select.entry.js +317 -0
  295. package/dist/esm/qds-select.entry.js.map +1 -0
  296. package/dist/esm/qds-standalone-link.entry.js +167 -0
  297. package/dist/esm/qds-standalone-link.entry.js.map +1 -0
  298. package/dist/esm/qds-switch.entry.js +221 -65
  299. package/dist/esm/qds-switch.entry.js.map +1 -1
  300. package/dist/esm/qds-tab.entry.js +263 -0
  301. package/dist/esm/qds-tab.entry.js.map +1 -0
  302. package/dist/esm/qds-tabbar.entry.js +342 -0
  303. package/dist/esm/qds-tabbar.entry.js.map +1 -0
  304. package/dist/esm/qds-table-cell.entry.js +59 -0
  305. package/dist/esm/qds-table-cell.entry.js.map +1 -0
  306. package/dist/esm/qds-table-head-cell.entry.js +63 -0
  307. package/dist/esm/qds-table-head-cell.entry.js.map +1 -0
  308. package/dist/esm/qds-table-row.entry.js +32 -0
  309. package/dist/esm/qds-table-row.entry.js.map +1 -0
  310. package/dist/esm/qds-table.entry.js +32 -0
  311. package/dist/esm/qds-table.entry.js.map +1 -0
  312. package/dist/esm/qds-tag.entry.js +108 -0
  313. package/dist/esm/qds-tag.entry.js.map +1 -0
  314. package/dist/esm/qds-textarea.entry.js +303 -154
  315. package/dist/esm/qds-textarea.entry.js.map +1 -1
  316. package/dist/esm/qds-title.entry.js +61 -50
  317. package/dist/esm/qds-title.entry.js.map +1 -1
  318. package/dist/esm/qds-tooltip.entry.js +334 -261
  319. package/dist/esm/qds-tooltip.entry.js.map +1 -1
  320. package/dist/esm/qds.js +18 -16
  321. package/dist/esm/qds.js.map +1 -1
  322. package/dist/types/components/action-item/action-item.d.ts +67 -0
  323. package/dist/types/components/avatar-media/avatar-media.d.ts +39 -0
  324. package/dist/types/components/badge-counter/badge-counter.d.ts +40 -0
  325. package/dist/types/components/badge-indicator/badge-indicator.d.ts +36 -0
  326. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +178 -0
  327. package/dist/types/components/button/button.d.ts +282 -198
  328. package/dist/types/components/checkbox/checkbox.d.ts +137 -124
  329. package/dist/types/components/chip/chip.d.ts +109 -0
  330. package/dist/types/components/controls.d.ts +4 -1
  331. package/dist/types/components/dialog/dialog.d.ts +32 -41
  332. package/dist/types/components/divider/divider.d.ts +14 -9
  333. package/dist/types/components/dropdown/dropdown.d.ts +116 -125
  334. package/dist/types/components/form-message/form-message.d.ts +33 -25
  335. package/dist/types/components/icon/icon.d.ts +24 -24
  336. package/dist/types/components/icon/library.d.ts +3 -3
  337. package/dist/types/components/icon/request.d.ts +5 -9
  338. package/dist/types/components/icon-button/icon-button.d.ts +121 -0
  339. package/dist/types/components/icon-tab/icon-tab.d.ts +110 -0
  340. package/dist/types/components/inline-link/inline-link.d.ts +209 -191
  341. package/dist/types/components/input/input.d.ts +431 -368
  342. package/dist/types/components/label/label.d.ts +37 -24
  343. package/dist/types/components/list-item/list-item.d.ts +121 -0
  344. package/dist/types/components/loader/loader.d.ts +32 -0
  345. package/dist/types/components/menu-item/menu-item.d.ts +71 -0
  346. package/dist/types/components/mini-button/mini-button.d.ts +82 -0
  347. package/dist/types/components/progress-bar/progress-bar.d.ts +60 -0
  348. package/dist/types/components/radio/radio.d.ts +90 -95
  349. package/dist/types/components/select/select.d.ts +203 -0
  350. package/dist/types/components/shared.d.ts +6 -0
  351. package/dist/types/components/standalone-link/standalone-link.d.ts +234 -0
  352. package/dist/types/components/switch/switch.d.ts +122 -107
  353. package/dist/types/components/tab/tab.d.ts +155 -0
  354. package/dist/types/components/tabbar/tabbar.d.ts +56 -0
  355. package/dist/types/components/table/table.d.ts +14 -0
  356. package/dist/types/components/table-cell/table-cell.d.ts +33 -0
  357. package/dist/types/components/table-head-cell/table-head-cell.d.ts +50 -0
  358. package/dist/types/components/table-row/table-row.d.ts +14 -0
  359. package/dist/types/components/tag/tag.d.ts +55 -0
  360. package/dist/types/components/textarea/textarea.d.ts +295 -300
  361. package/dist/types/components/title/title.d.ts +39 -32
  362. package/dist/types/components/tooltip/tooltip.d.ts +111 -136
  363. package/dist/types/components.d.ts +4403 -959
  364. package/dist/types/helpers.d.ts +38 -19
  365. package/dist/types/index.d.ts +2 -1
  366. package/dist/types/interface-overrides.d.ts +215 -0
  367. package/dist/types/qds-test.d.ts +22 -11
  368. package/dist/types/stencil-public-runtime.d.ts +109 -17
  369. package/dist/types/utils.d.ts +11 -4
  370. package/dist/vscode.html-custom-data.json +2365 -445
  371. package/hydrate/index.d.ts +73 -18
  372. package/hydrate/index.js +28020 -9256
  373. package/hydrate/index.mjs +28907 -0
  374. package/hydrate/package.json +7 -1
  375. package/loader/cdn.js +3 -4
  376. package/loader/index.cjs.js +3 -4
  377. package/loader/index.d.ts +4 -1
  378. package/loader/index.es2017.js +3 -4
  379. package/loader/index.js +3 -4
  380. package/package.json +23 -180
  381. package/styles/core.css +147 -19
  382. package/components/floating-ui.dom.esm.js.map +0 -1
  383. package/components/helpers.js +0 -175
  384. package/components/helpers.js.map +0 -1
  385. package/components/icon.js +0 -185
  386. package/components/icon.js.map +0 -1
  387. package/components/label.js +0 -55
  388. package/components/label.js.map +0 -1
  389. package/dist/cjs/floating-ui.dom.esm-7f1cac3e.js.map +0 -1
  390. package/dist/cjs/helpers-452256e8.js +0 -185
  391. package/dist/cjs/helpers-452256e8.js.map +0 -1
  392. package/dist/cjs/index-d181f952.js +0 -2039
  393. package/dist/cjs/index-d181f952.js.map +0 -1
  394. package/dist/cjs/library-ad8d9466.js +0 -72
  395. package/dist/cjs/library-ad8d9466.js.map +0 -1
  396. package/dist/cjs/qds-button.cjs.entry.js.map +0 -1
  397. package/dist/cjs/qds-checkbox.cjs.entry.js +0 -116
  398. package/dist/cjs/qds-checkbox.cjs.entry.js.map +0 -1
  399. package/dist/cjs/qds-dialog.cjs.entry.js.map +0 -1
  400. package/dist/cjs/qds-divider.cjs.entry.js +0 -33
  401. package/dist/cjs/qds-divider.cjs.entry.js.map +0 -1
  402. package/dist/cjs/qds-dropdown.cjs.entry.js.map +0 -1
  403. package/dist/cjs/qds-form-message.cjs.entry.js.map +0 -1
  404. package/dist/cjs/qds-icon.cjs.entry.js.map +0 -1
  405. package/dist/cjs/qds-inline-link.cjs.entry.js.map +0 -1
  406. package/dist/cjs/qds-input.cjs.entry.js.map +0 -1
  407. package/dist/cjs/qds-label.cjs.entry.js.map +0 -1
  408. package/dist/cjs/qds-radio.cjs.entry.js +0 -74
  409. package/dist/cjs/qds-radio.cjs.entry.js.map +0 -1
  410. package/dist/cjs/qds-switch.cjs.entry.js.map +0 -1
  411. package/dist/cjs/qds-textarea.cjs.entry.js.map +0 -1
  412. package/dist/cjs/qds-title.cjs.entry.js.map +0 -1
  413. package/dist/cjs/qds-tooltip.cjs.entry.js.map +0 -1
  414. package/dist/esm/floating-ui.dom.esm-c2f3e549.js.map +0 -1
  415. package/dist/esm/helpers-76b84f45.js +0 -175
  416. package/dist/esm/helpers-76b84f45.js.map +0 -1
  417. package/dist/esm/index-d7183092.js +0 -2009
  418. package/dist/esm/index-d7183092.js.map +0 -1
  419. package/dist/esm/library-f36d7d09.js +0 -68
  420. package/dist/esm/library-f36d7d09.js.map +0 -1
  421. package/dist/esm/polyfills/core-js.js +0 -11
  422. package/dist/esm/polyfills/dom.js +0 -79
  423. package/dist/esm/polyfills/es5-html-element.js +0 -1
  424. package/dist/esm/polyfills/index.js +0 -34
  425. package/dist/esm/polyfills/system.js +0 -6
  426. package/dist/esm/qds-checkbox.entry.js +0 -112
  427. package/dist/esm/qds-checkbox.entry.js.map +0 -1
  428. package/dist/esm/qds-divider.entry.js +0 -29
  429. package/dist/esm/qds-divider.entry.js.map +0 -1
  430. package/dist/esm/qds-radio.entry.js +0 -70
  431. package/dist/esm/qds-radio.entry.js.map +0 -1
  432. package/dist/types/components/create-story.d.ts +0 -5
  433. package/loader/package.json +0 -11
@@ -0,0 +1,410 @@
1
+ /*!
2
+ * SPDX-FileCopyrightText: © 2026 Schneider Electric
3
+ *
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
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-CXP6q9Mr.js';
8
+ import { d as defineCustomElement$7 } from './p-CDRwHAIT.js';
9
+ import { d as defineCustomElement$6 } from './p-U2Q0vF-d.js';
10
+ import { d as defineCustomElement$5 } from './p-DwxIJEUj.js';
11
+ import { d as defineCustomElement$4 } from './p-BkgfW_tl.js';
12
+ import { d as defineCustomElement$3 } from './p-CFVg7I9T.js';
13
+ import { d as defineCustomElement$2 } from './p-B03FWheS.js';
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-layer=main][data-level=root] .qds-tabs{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
+
17
+ // SPDX-FileCopyrightText: © 2024 Schneider Electric
18
+ //
19
+ // SPDX-License-Identifier: Apache-2.0
20
+ var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) {
21
+ if (kind === "a" && !f)
22
+ throw new TypeError("Private accessor was defined without a getter");
23
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
24
+ throw new TypeError("Cannot read private member from an object whose class did not declare it");
25
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
26
+ };
27
+ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
28
+ if (kind === "m")
29
+ throw new TypeError("Private method is not writable");
30
+ if (kind === "a" && !f)
31
+ throw new TypeError("Private accessor was defined without a setter");
32
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
33
+ throw new TypeError("Cannot write private member to an object whose class did not declare it");
34
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
35
+ };
36
+ var _Tabbar_instances, _Tabbar_tabs, _Tabbar_ro, _Tabbar_tabbar, _Tabbar_inheritedAttributes, _Tabbar_computeDividerVisible_get, _Tabbar_scrollToStart, _Tabbar_scrollToEnd, _Tabbar_setActiveTab, _Tabbar_switchTabPanel, _Tabbar_handleTabActivation, _Tabbar_getCurrentTab, _Tabbar_setCurrentTab, _Tabbar_onClick, _Tabbar_onKeyDown, _Tabbar_onMouseDown, _Tabbar_onScroll, _Tabbar_onViewportCrop, _Tabbar_updateTabsCache, _Tabbar_onSlotchange;
37
+ const TAB_SETTINGS = {
38
+ 'main-root': {
39
+ importance: 'standard',
40
+ size: 'large',
41
+ indicatorPosition: 'block-end',
42
+ },
43
+ 'main-section': {
44
+ importance: 'standard',
45
+ size: 'standard',
46
+ indicatorPosition: 'block-end',
47
+ },
48
+ 'popup-root': {
49
+ importance: 'standard',
50
+ size: 'standard',
51
+ indicatorPosition: 'block-end',
52
+ },
53
+ 'main-subsection': {
54
+ importance: 'subdued',
55
+ size: 'small',
56
+ indicatorPosition: 'block-start',
57
+ },
58
+ 'popup-section': {
59
+ importance: 'subdued',
60
+ size: 'small',
61
+ indicatorPosition: 'inline-start',
62
+ },
63
+ 'panel-root': {
64
+ importance: 'standard',
65
+ size: 'small',
66
+ indicatorPosition: 'block-start',
67
+ },
68
+ 'accessory-root': {
69
+ importance: 'subdued',
70
+ size: 'small',
71
+ indicatorPosition: 'block-end',
72
+ },
73
+ };
74
+ const isEnabledTabItem = (item) => {
75
+ if (!(item instanceof H))
76
+ return false;
77
+ const tagName = item.tagName.toLowerCase();
78
+ return ((!item.inert && tagName === 'qds-tab') ||
79
+ item.disabled !== true);
80
+ };
81
+ const Tabbar = /*@__PURE__*/ proxyCustomElement(class Tabbar extends H {
82
+ constructor(registerHost) {
83
+ super();
84
+ if (registerHost !== false) {
85
+ this.__registerHost();
86
+ }
87
+ this.__attachShadow();
88
+ this.showEmitter = createEvent(this, "qdsTabShow", 6);
89
+ this.hideEmitter = createEvent(this, "qdsTabHide", 6);
90
+ _Tabbar_instances.add(this);
91
+ /**
92
+ * The tabbar's layer.
93
+ */
94
+ this.layer = 'main';
95
+ /**
96
+ * The tabbar's level.
97
+ */
98
+ this.level = 'root';
99
+ /**
100
+ * The tabbar's orientation.
101
+ */
102
+ this.orientation = 'horizontal';
103
+ /**
104
+ * Displays a divider line.
105
+ */
106
+ this.showDivider = false;
107
+ /**
108
+ * The alignment of tabs. Only applicable for horizontal orientation.
109
+ */
110
+ this.alignment = 'left';
111
+ this.disableEndArrow = false;
112
+ this.disableStartArrow = false;
113
+ _Tabbar_tabs.set(this, []);
114
+ _Tabbar_ro.set(this, void 0);
115
+ _Tabbar_tabbar.set(this, void 0);
116
+ _Tabbar_inheritedAttributes.set(this, {});
117
+ _Tabbar_scrollToStart.set(this, () => {
118
+ invariant(__classPrivateFieldGet(this, _Tabbar_tabbar, "f"));
119
+ const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl';
120
+ __classPrivateFieldGet(this, _Tabbar_tabbar, "f").scroll({
121
+ left: isRTL
122
+ ? __classPrivateFieldGet(this, _Tabbar_tabbar, "f").scrollLeft + __classPrivateFieldGet(this, _Tabbar_tabbar, "f").clientWidth
123
+ : __classPrivateFieldGet(this, _Tabbar_tabbar, "f").scrollLeft - __classPrivateFieldGet(this, _Tabbar_tabbar, "f").clientWidth,
124
+ });
125
+ });
126
+ _Tabbar_scrollToEnd.set(this, () => {
127
+ invariant(__classPrivateFieldGet(this, _Tabbar_tabbar, "f"));
128
+ const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl';
129
+ __classPrivateFieldGet(this, _Tabbar_tabbar, "f").scroll({
130
+ left: isRTL
131
+ ? __classPrivateFieldGet(this, _Tabbar_tabbar, "f").scrollLeft - __classPrivateFieldGet(this, _Tabbar_tabbar, "f").clientWidth
132
+ : __classPrivateFieldGet(this, _Tabbar_tabbar, "f").scrollLeft + __classPrivateFieldGet(this, _Tabbar_tabbar, "f").clientWidth,
133
+ });
134
+ });
135
+ _Tabbar_onClick.set(this, (event) => {
136
+ const { target } = event;
137
+ if (!(target instanceof H))
138
+ return;
139
+ const tab = target.closest('qds-tab');
140
+ if (!tab || tab.disabled === true || tab.inert)
141
+ return;
142
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_handleTabActivation).call(this, tab);
143
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setActiveTab).call(this, tab);
144
+ });
145
+ _Tabbar_onKeyDown.set(this, (event) => {
146
+ const isVertical = this.orientation === 'vertical';
147
+ const MOVE_SELECTION_KEYS = isVertical
148
+ ? VERTICAL_MOVE_KEYS
149
+ : HORIZONTAL_MOVE_KEYS;
150
+ if (!MOVE_SELECTION_KEYS.has(event.key))
151
+ return;
152
+ const tabs = __classPrivateFieldGet(this, _Tabbar_tabs, "f");
153
+ if (tabs.length === 0)
154
+ return;
155
+ event.preventDefault();
156
+ event.stopPropagation();
157
+ const activeTab = __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_getCurrentTab).call(this);
158
+ let index = activeTab ? tabs.indexOf(activeTab) : 0;
159
+ const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl';
160
+ let nextTab;
161
+ do {
162
+ switch (event.key) {
163
+ case 'ArrowLeft':
164
+ case 'ArrowUp': {
165
+ index = (isRTL ? index < tabs.length - 1 : index > 0)
166
+ ? index - (isRTL ? -1 : 1)
167
+ : isRTL
168
+ ? 0
169
+ : tabs.length - 1;
170
+ break;
171
+ }
172
+ case 'ArrowRight':
173
+ case 'ArrowDown': {
174
+ index = (isRTL ? index > 0 : index < tabs.length - 1)
175
+ ? index + (isRTL ? -1 : 1)
176
+ : isRTL
177
+ ? tabs.length - 1
178
+ : 0;
179
+ break;
180
+ }
181
+ case 'Home': {
182
+ index = isRTL ? tabs.length - 1 : 0;
183
+ break;
184
+ }
185
+ case 'End': {
186
+ index = isRTL ? 0 : tabs.length - 1;
187
+ break;
188
+ }
189
+ }
190
+ nextTab = tabs[index];
191
+ } while (nextTab.disabled === true);
192
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setCurrentTab).call(this, nextTab);
193
+ const target = nextTab.tab;
194
+ target.focus({ preventScroll: true });
195
+ if (!isVertical)
196
+ target.scrollIntoView();
197
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_handleTabActivation).call(this, nextTab);
198
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setActiveTab).call(this, nextTab);
199
+ });
200
+ _Tabbar_onMouseDown.set(this, (event) => {
201
+ const { target } = event;
202
+ if (isEnabledTabItem(target))
203
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setCurrentTab).call(this, target);
204
+ });
205
+ _Tabbar_onScroll.set(this, () => {
206
+ if (!__classPrivateFieldGet(this, _Tabbar_tabbar, "f"))
207
+ return;
208
+ const { clientWidth, scrollWidth, scrollLeft } = __classPrivateFieldGet(this, _Tabbar_tabbar, "f");
209
+ const isRTL = globalThis.getComputedStyle(this.host).direction === 'rtl';
210
+ this.disableStartArrow = scrollLeft === 0;
211
+ this.disableEndArrow = isRTL
212
+ ? scrollWidth + scrollLeft <= clientWidth
213
+ : scrollWidth - clientWidth - scrollLeft <= 1;
214
+ });
215
+ _Tabbar_onViewportCrop.set(this, () => {
216
+ if (!__classPrivateFieldGet(this, _Tabbar_tabbar, "f"))
217
+ return;
218
+ const { scrollWidth, clientWidth } = __classPrivateFieldGet(this, _Tabbar_tabbar, "f");
219
+ if (scrollWidth > clientWidth) {
220
+ __classPrivateFieldGet(this, _Tabbar_onScroll, "f").call(this);
221
+ }
222
+ });
223
+ _Tabbar_onSlotchange.set(this, () => {
224
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_updateTabsCache).call(this);
225
+ if (__classPrivateFieldGet(this, _Tabbar_tabs, "f").length > 0)
226
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setCurrentTab).call(this, __classPrivateFieldGet(this, _Tabbar_tabs, "f")[0]);
227
+ });
228
+ }
229
+ windowResize() {
230
+ __classPrivateFieldGet(this, _Tabbar_onViewportCrop, "f").call(this);
231
+ }
232
+ componentWillLoad() {
233
+ __classPrivateFieldSet(this, _Tabbar_inheritedAttributes, inheritAriaAttributes(this.host), "f");
234
+ const tabs = [
235
+ ...this.host.querySelectorAll('qds-tab'),
236
+ ];
237
+ const preselectedTab = tabs.find((tab) => tab.selected);
238
+ if (preselectedTab)
239
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setActiveTab).call(this, preselectedTab);
240
+ else if (tabs.length > 0)
241
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setActiveTab).call(this, tabs[0]);
242
+ }
243
+ componentDidRender() {
244
+ if (this.activeTab)
245
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_switchTabPanel).call(this, this.activeTab);
246
+ const settings = TAB_SETTINGS[`${this.layer}-${this.level}`];
247
+ if (!settings)
248
+ return;
249
+ for (const tab of this.host.querySelectorAll('qds-tab')) {
250
+ /* eslint-disable @typescript-eslint/no-unsafe-member-access */
251
+ tab.importance = settings.importance;
252
+ tab.size = settings.size;
253
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
254
+ tab.indicatorPosition =
255
+ this.orientation === 'vertical' ? 'inline-end' : tab.indicatorPosition;
256
+ /* eslint-enable @typescript-eslint/no-unsafe-member-access */
257
+ }
258
+ }
259
+ componentDidLoad() {
260
+ invariant(__classPrivateFieldGet(this, _Tabbar_tabbar, "f"));
261
+ __classPrivateFieldSet(this, _Tabbar_ro, new ResizeObserver(__classPrivateFieldGet(this, _Tabbar_onScroll, "f")), "f");
262
+ __classPrivateFieldGet(this, _Tabbar_ro, "f").observe(__classPrivateFieldGet(this, _Tabbar_tabbar, "f"));
263
+ }
264
+ disconnectedCallback() {
265
+ if (__classPrivateFieldGet(this, _Tabbar_ro, "f"))
266
+ __classPrivateFieldGet(this, _Tabbar_ro, "f").disconnect();
267
+ }
268
+ render() {
269
+ return (h("div", { key: 'dbae5f300427dbaeb563eefee8861dc6453e9af8', class: { 'qds-vertical-divider': this.orientation === 'vertical' }, "data-layer": this.layer, "data-level": this.level }, h("div", { key: 'a2ebf55faeaccd30a52d1cb5769574e8f18dfc57', class: "qds-tabbar" }, h("div", { key: '7ddc9b7f553da79b357ab7a1ba193d6fe0ad3d6d', class: {
270
+ 'qds-align-center': true,
271
+ 'qds-hidden': (this.disableEndArrow && this.disableStartArrow) ||
272
+ this.orientation === 'vertical',
273
+ } }, h("qds-icon-button", { key: '77e21e5a713c6f4703301951b599035082a7fecc', 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: '1dcb2e83e1e493347dbcc6ed59dba9fcba9bf60b', class: {
274
+ 'qds-tabs': true,
275
+ 'qds-vertical': this.orientation === 'vertical',
276
+ 'qds-centered': this.alignment === 'centered' &&
277
+ this.orientation === 'horizontal' &&
278
+ this.disableEndArrow &&
279
+ this.disableStartArrow,
280
+ }, role: "tablist", "aria-label": this.tablistDescription, ref: (element) => {
281
+ __classPrivateFieldSet(this, _Tabbar_tabbar, element, "f");
282
+ }, 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: '264bdf5fa1c99ead75ad7ccb96eff791f5b0d85a', onSlotchange: __classPrivateFieldGet(this, _Tabbar_onSlotchange, "f") })), h("div", { key: '9b0d013ea65ccd8b0548b2d70031e0bd29798081', class: {
283
+ 'qds-align-center': true,
284
+ 'qds-hidden': (this.disableEndArrow && this.disableStartArrow) ||
285
+ this.orientation === 'vertical',
286
+ } }, h("qds-icon-button", { key: 'def7674888c88bb34f7fef6921784b2cdafbee8c', 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: '87f1bcf19e2d60fccd4473ef3a91e35e3b77e955', vertical: this.orientation === 'vertical' }))));
287
+ }
288
+ static get delegatesFocus() { return true; }
289
+ get host() { return this; }
290
+ static get style() { return tabbarCss; }
291
+ }, [273, "qds-tabbar", {
292
+ "layer": [1],
293
+ "level": [1],
294
+ "orientation": [1],
295
+ "tablistDescription": [1, "tablist-description"],
296
+ "showDivider": [4, "show-divider"],
297
+ "alignment": [1],
298
+ "disableEndArrow": [32],
299
+ "disableStartArrow": [32],
300
+ "activeTab": [32]
301
+ }, [[9, "resize", "windowResize"]]]);
302
+ _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_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_computeDividerVisible_get = function _Tabbar_computeDividerVisible_get() {
303
+ if (this.layer === 'panel')
304
+ return false;
305
+ if (this.layer === 'main' &&
306
+ this.level === 'subsection' &&
307
+ this.orientation === 'horizontal')
308
+ return false;
309
+ return this.showDivider === true;
310
+ }, _Tabbar_setActiveTab = function _Tabbar_setActiveTab(tab) {
311
+ this.activeTab = tab;
312
+ for (const t of this.host.querySelectorAll('qds-tab')) {
313
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-member-access
314
+ const target = t.tab;
315
+ const isSelected = t === tab;
316
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
317
+ t.selected = isSelected;
318
+ if (target instanceof globalThis.Element)
319
+ target.ariaSelected = isSelected.toString();
320
+ }
321
+ }, _Tabbar_switchTabPanel = function _Tabbar_switchTabPanel(activeTab) {
322
+ for (const tab of __classPrivateFieldGet(this, _Tabbar_tabs, "f")) {
323
+ const panel = resolvePanelElement(tab);
324
+ if (panel) {
325
+ panel.hidden = tab !== activeTab;
326
+ }
327
+ }
328
+ }, _Tabbar_handleTabActivation = function _Tabbar_handleTabActivation(tab) {
329
+ const previousTab = this.activeTab;
330
+ if (previousTab === tab)
331
+ return;
332
+ this.activeTab = tab;
333
+ this.hideEmitter.emit(previousTab);
334
+ this.showEmitter.emit(tab);
335
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_setCurrentTab).call(this, tab);
336
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_switchTabPanel).call(this, tab);
337
+ }, _Tabbar_getCurrentTab = function _Tabbar_getCurrentTab() {
338
+ return __classPrivateFieldGet(this, _Tabbar_tabs, "f").find((tab) => tab.tab.getAttribute('tabindex') === '0');
339
+ }, _Tabbar_setCurrentTab = function _Tabbar_setCurrentTab(tab) {
340
+ for (const t of __classPrivateFieldGet(this, _Tabbar_tabs, "f")) {
341
+ const isCurrent = t === tab;
342
+ componentOnReady(t, (element) => {
343
+ const target = element?.tab;
344
+ if (target === undefined)
345
+ return;
346
+ const isDisabled = target.getAttribute('aria-disabled') === 'true';
347
+ const shouldActivateTab = isCurrent && !isDisabled;
348
+ const tabindex = shouldActivateTab ? '0' : '-1';
349
+ target.setAttribute('tabindex', tabindex);
350
+ if (shouldActivateTab)
351
+ __classPrivateFieldGet(this, _Tabbar_instances, "m", _Tabbar_handleTabActivation).call(this, t);
352
+ });
353
+ }
354
+ }, _Tabbar_updateTabsCache = function _Tabbar_updateTabsCache() {
355
+ const slot = this.host.shadowRoot?.querySelector('slot');
356
+ __classPrivateFieldSet(this, _Tabbar_tabs, slot
357
+ ? [...slot.assignedElements({ flatten: true })].filter((element) => isEnabledTabItem(element))
358
+ : [], "f");
359
+ };
360
+ function defineCustomElement$1() {
361
+ if (typeof customElements === "undefined") {
362
+ return;
363
+ }
364
+ const components = ["qds-tabbar", "qds-badge-counter", "qds-badge-indicator", "qds-divider", "qds-icon", "qds-icon-button", "qds-tooltip"];
365
+ components.forEach(tagName => { switch (tagName) {
366
+ case "qds-tabbar":
367
+ if (!customElements.get(tagName)) {
368
+ customElements.define(tagName, Tabbar);
369
+ }
370
+ break;
371
+ case "qds-badge-counter":
372
+ if (!customElements.get(tagName)) {
373
+ defineCustomElement$7();
374
+ }
375
+ break;
376
+ case "qds-badge-indicator":
377
+ if (!customElements.get(tagName)) {
378
+ defineCustomElement$6();
379
+ }
380
+ break;
381
+ case "qds-divider":
382
+ if (!customElements.get(tagName)) {
383
+ defineCustomElement$5();
384
+ }
385
+ break;
386
+ case "qds-icon":
387
+ if (!customElements.get(tagName)) {
388
+ defineCustomElement$4();
389
+ }
390
+ break;
391
+ case "qds-icon-button":
392
+ if (!customElements.get(tagName)) {
393
+ defineCustomElement$3();
394
+ }
395
+ break;
396
+ case "qds-tooltip":
397
+ if (!customElements.get(tagName)) {
398
+ defineCustomElement$2();
399
+ }
400
+ break;
401
+ } });
402
+ }
403
+
404
+ const QdsTabbar = Tabbar;
405
+ const defineCustomElement = defineCustomElement$1;
406
+
407
+ export { QdsTabbar, defineCustomElement };
408
+ //# sourceMappingURL=qds-tabbar.js.map
409
+
410
+ //# sourceMappingURL=qds-tabbar.js.map
@@ -0,0 +1 @@
1
+ {"file":"qds-tabbar.js","mappings":";;;;;;;;;;;;;;AAAA,MAAM,SAAS,GAAG,6nCAA6nC;;ACA/oC;AACA;AACA;;;;;;;;;;;;;;;;;;AA6BA,MAAM,YAAY,GAGd;AACF,IAAA,WAAW,EAAE;AACX,QAAA,UAAU,EAAE,UAAU;AACtB,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,iBAAiB,EAAE,WAAW;AAC/B,KAAA;AACD,IAAA,cAAc,EAAE;AACd,QAAA,UAAU,EAAE,UAAU;AACtB,QAAA,IAAI,EAAE,UAAU;AAChB,QAAA,iBAAiB,EAAE,WAAW;AAC/B,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,UAAU,EAAE,UAAU;AACtB,QAAA,IAAI,EAAE,UAAU;AAChB,QAAA,iBAAiB,EAAE,WAAW;AAC/B,KAAA;AACD,IAAA,iBAAiB,EAAE;AACjB,QAAA,UAAU,EAAE,SAAS;AACrB,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,iBAAiB,EAAE,aAAa;AACjC,KAAA;AACD,IAAA,eAAe,EAAE;AACf,QAAA,UAAU,EAAE,SAAS;AACrB,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,iBAAiB,EAAE,cAAc;AAClC,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,UAAU,EAAE,UAAU;AACtB,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,iBAAiB,EAAE,aAAa;AACjC,KAAA;AACD,IAAA,gBAAgB,EAAE;AAChB,QAAA,UAAU,EAAE,SAAS;AACrB,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,iBAAiB,EAAE,WAAW;AAC/B,KAAA;CACF;AAED,MAAM,gBAAgB,GAAG,CAAC,IAAa,KAA+B;AACpE,IAAA,IAAI,EAAE,IAAI,YAAYA,CAAW,CAAC;AAAE,QAAA,OAAO,KAAK;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;IAE1C,QACE,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,SAAS;AACpC,QAAA,IAA0B,CAAC,QAAQ,KAAK,IAAI;AAEjD,CAAC;MAYY,MAAM,iBAAAC,kBAAA,CAAA,MAAA,MAAA,SAAAD,CAAA,CAAA;AALnB,IAAA,WAAA,CAAA,YAAA,EAAA;;;;;;;;;AAME;;AAEG;AACY,QAAA,IAAK,CAAA,KAAA,GAAW,MAAM;AAErC;;AAEG;AACY,QAAA,IAAK,CAAA,KAAA,GAAW,MAAM;AAErC;;AAEG;AACY,QAAA,IAAW,CAAA,WAAA,GAAiB,YAAY;AAOvD;;AAEG;AACY,QAAA,IAAW,CAAA,WAAA,GAAa,KAAK;AAE5C;;AAEG;AACqB,QAAA,IAAS,CAAA,SAAA,GAAe,MAAM;AAgBrC,QAAA,IAAe,CAAA,eAAA,GAAG,KAAK;AAEvB,QAAA,IAAiB,CAAA,iBAAA,GAAG,KAAK;AAI1C,QAAA,YAAA,CAAA,GAAA,CAAA,IAAA,EAA6B,EAAE,CAAA;QAE/B,UAA+B,CAAA,GAAA,CAAA,IAAA,EAAA,MAAA,CAAA;QAE/B,cAAqB,CAAA,GAAA,CAAA,IAAA,EAAA,MAAA,CAAA;AAErB,QAAA,2BAAA,CAAA,GAAA,CAAA,IAAA,EAAmC,EAAE,CAAA;AAoI5B,QAAA,qBAAA,CAAA,GAAA,CAAA,IAAA,EAAiB,MAAW;YACnC,SAAS,CAAC,sBAAA,CAAA,IAAI,EAAA,cAAA,EAAA,GAAA,CAAQ,CAAC;AAEvB,YAAA,MAAM,KAAK,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,KAAK;YACxE,sBAAA,CAAA,IAAI,EAAA,cAAA,EAAA,GAAA,CAAQ,CAAC,MAAM,CAAC;AAClB,gBAAA,IAAI,EAAE;sBACF,sBAAA,CAAA,IAAI,EAAQ,cAAA,EAAA,GAAA,CAAA,CAAC,UAAU,GAAG,sBAAA,CAAA,IAAI,EAAQ,cAAA,EAAA,GAAA,CAAA,CAAC;sBACvC,sBAAA,CAAA,IAAI,EAAQ,cAAA,EAAA,GAAA,CAAA,CAAC,UAAU,GAAG,sBAAA,CAAA,IAAI,EAAQ,cAAA,EAAA,GAAA,CAAA,CAAC,WAAW;AACvD,aAAA,CAAC;AACJ,SAAC,CAAA;AAEQ,QAAA,mBAAA,CAAA,GAAA,CAAA,IAAA,EAAe,MAAW;YACjC,SAAS,CAAC,sBAAA,CAAA,IAAI,EAAA,cAAA,EAAA,GAAA,CAAQ,CAAC;AAEvB,YAAA,MAAM,KAAK,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,KAAK;YACxE,sBAAA,CAAA,IAAI,EAAA,cAAA,EAAA,GAAA,CAAQ,CAAC,MAAM,CAAC;AAClB,gBAAA,IAAI,EAAE;sBACF,sBAAA,CAAA,IAAI,EAAQ,cAAA,EAAA,GAAA,CAAA,CAAC,UAAU,GAAG,sBAAA,CAAA,IAAI,EAAQ,cAAA,EAAA,GAAA,CAAA,CAAC;sBACvC,sBAAA,CAAA,IAAI,EAAQ,cAAA,EAAA,GAAA,CAAA,CAAC,UAAU,GAAG,sBAAA,CAAA,IAAI,EAAQ,cAAA,EAAA,GAAA,CAAA,CAAC,WAAW;AACvD,aAAA,CAAC;AACJ,SAAC,CAAA;QA0DQ,eAAW,CAAA,GAAA,CAAA,IAAA,EAAA,CAAC,KAAiB,KAAU;AAC9C,YAAA,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK;AACxB,YAAA,IAAI,EAAE,MAAM,YAAYA,CAAW,CAAC;gBAAE;YACtC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;YACrC,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI,IAAI,GAAG,CAAC,KAAK;gBAAE;AAEhD,YAAA,sBAAA,CAAA,IAAI,EAAqB,iBAAA,EAAA,GAAA,EAAA,2BAAA,CAAA,CAAA,IAAA,CAAzB,IAAI,EAAsB,GAAG,CAAC;AAC9B,YAAA,sBAAA,CAAA,IAAI,EAAc,iBAAA,EAAA,GAAA,EAAA,oBAAA,CAAA,CAAA,IAAA,CAAlB,IAAI,EAAe,GAAG,CAAC;AACzB,SAAC,CAAA;QAEQ,iBAAa,CAAA,GAAA,CAAA,IAAA,EAAA,CAAC,KAAoB,KAAU;AACnD,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,KAAK,UAAU;YAClD,MAAM,mBAAmB,GAAG;AAC1B,kBAAE;kBACA,oBAAoB;YACxB,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;gBAAE;YAEzC,MAAM,IAAI,GAAG,sBAAA,CAAA,IAAI,oBAAM;AACvB,YAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE;YAEvB,KAAK,CAAC,cAAc,EAAE;YACtB,KAAK,CAAC,eAAe,EAAE;AAEvB,YAAA,MAAM,SAAS,GAAG,sBAAA,CAAA,IAAI,gDAAe,CAAnB,IAAA,CAAA,IAAI,CAAiB;AACvC,YAAA,IAAI,KAAK,GAAG,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC;AAEnD,YAAA,MAAM,KAAK,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,KAAK;AAExE,YAAA,IAAI,OAAsC;AAC1C,YAAA,GAAG;AACD,gBAAA,QAAQ,KAAK,CAAC,GAAG;AACf,oBAAA,KAAK,WAAW;oBAChB,KAAK,SAAS,EAAE;AACd,wBAAA,KAAK,GAAG,CAAC,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC;AAClD,8BAAE,KAAK,IAAI,KAAK,GAAG,EAAE,GAAG,CAAC;AACzB,8BAAE;AACA,kCAAE;AACF,kCAAE,IAAI,CAAC,MAAM,GAAG,CAAC;wBACrB;;AAEF,oBAAA,KAAK,YAAY;oBACjB,KAAK,WAAW,EAAE;AAChB,wBAAA,KAAK,GAAG,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;AAClD,8BAAE,KAAK,IAAI,KAAK,GAAG,EAAE,GAAG,CAAC;AACzB,8BAAE;AACA,kCAAE,IAAI,CAAC,MAAM,GAAG;kCACd,CAAC;wBACP;;oBAEF,KAAK,MAAM,EAAE;AACX,wBAAA,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC;wBACnC;;oBAEF,KAAK,KAAK,EAAE;AACV,wBAAA,KAAK,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;wBACnC;;;AAIJ,gBAAA,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;AACvB,aAAC,QAAQ,OAAO,CAAC,QAAQ,KAAK,IAAI;AAElC,YAAA,sBAAA,CAAA,IAAI,EAAe,iBAAA,EAAA,GAAA,EAAA,qBAAA,CAAA,CAAA,IAAA,CAAnB,IAAI,EAAgB,OAAO,CAAC;AAE5B,YAAA,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG;YAC1B,MAAM,CAAC,KAAK,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;AACrC,YAAA,IAAI,CAAC,UAAU;gBAAE,MAAM,CAAC,cAAc,EAAE;AACxC,YAAA,sBAAA,CAAA,IAAI,EAAqB,iBAAA,EAAA,GAAA,EAAA,2BAAA,CAAA,CAAA,IAAA,CAAzB,IAAI,EAAsB,OAAO,CAAC;AAClC,YAAA,sBAAA,CAAA,IAAI,EAAc,iBAAA,EAAA,GAAA,EAAA,oBAAA,CAAA,CAAA,IAAA,CAAlB,IAAI,EAAe,OAAO,CAAC;AAC7B,SAAC,CAAA;QAEQ,mBAAe,CAAA,GAAA,CAAA,IAAA,EAAA,CAAC,KAAiB,KAAU;AAClD,YAAA,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK;YAExB,IAAI,gBAAgB,CAAC,MAAM,CAAC;AAAE,gBAAA,sBAAA,CAAA,IAAI,EAAe,iBAAA,EAAA,GAAA,EAAA,qBAAA,CAAA,CAAA,IAAA,CAAnB,IAAI,EAAgB,MAAM,CAAC;AAC3D,SAAC,CAAA;AAEQ,QAAA,gBAAA,CAAA,GAAA,CAAA,IAAA,EAAY,MAAW;YAC9B,IAAI,CAAC,sBAAA,CAAA,IAAI,EAAQ,cAAA,EAAA,GAAA,CAAA;gBAAE;AAEnB,YAAA,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,sBAAA,CAAA,IAAI,EAAA,cAAA,EAAA,GAAA,CAAQ;AAE7D,YAAA,MAAM,KAAK,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,KAAK;AACxE,YAAA,IAAI,CAAC,iBAAiB,GAAG,UAAU,KAAK,CAAC;YACzC,IAAI,CAAC,eAAe,GAAG;AACrB,kBAAE,WAAW,GAAG,UAAU,IAAI;kBAC5B,WAAW,GAAG,WAAW,GAAG,UAAU,IAAI,CAAC;AACjD,SAAC,CAAA;AAEQ,QAAA,sBAAA,CAAA,GAAA,CAAA,IAAA,EAAkB,MAAW;YACpC,IAAI,CAAC,sBAAA,CAAA,IAAI,EAAQ,cAAA,EAAA,GAAA,CAAA;gBAAE;AAEnB,YAAA,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,sBAAA,CAAA,IAAI,EAAA,cAAA,EAAA,GAAA,CAAQ;AAEjD,YAAA,IAAI,WAAW,GAAG,WAAW,EAAE;AAC7B,gBAAA,sBAAA,CAAA,IAAI,EAAA,gBAAA,EAAA,GAAA,CAAU,CAAd,IAAA,CAAA,IAAI,CAAY;;AAEpB,SAAC,CAAA;AAWQ,QAAA,oBAAA,CAAA,GAAA,CAAA,IAAA,EAAgB,MAAW;AAClC,YAAA,sBAAA,CAAA,IAAI,EAAA,iBAAA,EAAA,GAAA,EAAA,uBAAA,CAAiB,CAArB,IAAA,CAAA,IAAI,CAAmB;YAEvB,IAAI,uBAAA,IAAI,EAAA,YAAA,EAAA,GAAA,CAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,sBAAA,CAAA,IAAI,EAAA,iBAAA,EAAA,GAAA,EAAA,qBAAA,CAAe,CAAnB,IAAA,CAAA,IAAI,EAAgB,sBAAA,CAAA,IAAI,EAAA,YAAA,EAAA,GAAA,CAAM,CAAC,CAAC,CAAC,CAAC;AAC/D,SAAC,CAAA;AACF;IArTW,YAAY,GAAA;AACpB,QAAA,sBAAA,CAAA,IAAI,EAAA,sBAAA,EAAA,GAAA,CAAgB,CAApB,IAAA,CAAA,IAAI,CAAkB;;IAGjB,iBAAiB,GAAA;AACtB,QAAA,sBAAA,CAAA,IAAI,+BAAwB,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAA,GAAA,CAAA;AAE5D,QAAA,MAAM,IAAI,GAAG;AACX,YAAA,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC;SAClB;AACxB,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,QAAQ,CAAC;AACvD,QAAA,IAAI,cAAc;AAAE,YAAA,sBAAA,CAAA,IAAI,EAAc,iBAAA,EAAA,GAAA,EAAA,oBAAA,CAAA,CAAA,IAAA,CAAlB,IAAI,EAAe,cAAc,CAAC;AACjD,aAAA,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;AAAE,YAAA,sBAAA,CAAA,IAAI,EAAc,iBAAA,EAAA,GAAA,EAAA,oBAAA,CAAA,CAAA,IAAA,CAAlB,IAAI,EAAe,IAAI,CAAC,CAAC,CAAC,CAAC;;IAGhD,kBAAkB,GAAA;QACvB,IAAI,IAAI,CAAC,SAAS;AAAE,YAAA,sBAAA,CAAA,IAAI,iDAAgB,CAApB,IAAA,CAAA,IAAI,EAAiB,IAAI,CAAC,SAAS,CAAC;AAExD,QAAA,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,IAAI,CAAC,KAAK,CAAA,CAAA,EAAI,IAAI,CAAC,KAAK,CAAA,CAAE,CAAC;AAC5D,QAAA,IAAI,CAAC,QAAQ;YAAE;AAEf,QAAA,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE;;AAEvD,YAAA,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU;AACpC,YAAA,GAAG,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI;;AAExB,YAAA,GAAG,CAAC,iBAAiB;AACnB,gBAAA,IAAI,CAAC,WAAW,KAAK,UAAU,GAAG,YAAY,GAAG,GAAG,CAAC,iBAAiB;;;;IAKrE,gBAAgB,GAAA;QACrB,SAAS,CAAC,sBAAA,CAAA,IAAI,EAAA,cAAA,EAAA,GAAA,CAAQ,CAAC;QAEvB,sBAAA,CAAA,IAAI,EAAO,UAAA,EAAA,IAAI,cAAc,CAAC,uBAAA,IAAI,EAAA,gBAAA,EAAA,GAAA,CAAU,CAAC,EAAA,GAAA,CAAA;AAC7C,QAAA,sBAAA,CAAA,IAAI,kBAAI,CAAC,OAAO,CAAC,sBAAA,CAAA,IAAI,EAAQ,cAAA,EAAA,GAAA,CAAA,CAAC;;IAGzB,oBAAoB,GAAA;AACzB,QAAA,IAAI,sBAAA,CAAA,IAAI,EAAI,UAAA,EAAA,GAAA,CAAA;YAAE,sBAAA,CAAA,IAAI,EAAA,UAAA,EAAA,GAAA,CAAI,CAAC,UAAU,EAAE;;IAG9B,MAAM,GAAA;QACX,QACE,4DACE,KAAK,EAAE,EAAE,sBAAsB,EAAE,IAAI,CAAC,WAAW,KAAK,UAAU,EAAE,gBACtD,IAAI,CAAC,KAAK,EACV,YAAA,EAAA,IAAI,CAAC,KAAK,EAAA,EAEtB,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,YAAY,EAAA,EACrB,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE;AACL,gBAAA,kBAAkB,EAAE,IAAI;gBACxB,YAAY,EACV,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,iBAAiB;oBAC/C,IAAI,CAAC,WAAW,KAAK,UAAU;AAClC,aAAA,EAAA,EAED,CAAA,CAAA,iBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,IAAI,EAAC,mBAAmB,EACxB,UAAU,EAAC,SAAS,EACpB,QAAQ,EAAC,MAAM,EACf,WAAW,EAAC,MAAM,EAClB,KAAK,EAAC,iBAAiB,EACvB,OAAO,EAAE,uBAAA,IAAI,EAAA,qBAAA,EAAA,GAAA,CAAe,EAC5B,QAAQ,EAAE,IAAI,CAAC,iBAAiB,GAChC,CACE,EACN,CAAA,CAAA,IAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE;AACL,gBAAA,UAAU,EAAE,IAAI;AAChB,gBAAA,cAAc,EAAE,IAAI,CAAC,WAAW,KAAK,UAAU;AAC/C,gBAAA,cAAc,EACZ,IAAI,CAAC,SAAS,KAAK,UAAU;oBAC7B,IAAI,CAAC,WAAW,KAAK,YAAY;AACjC,oBAAA,IAAI,CAAC,eAAe;AACpB,oBAAA,IAAI,CAAC,iBAAiB;AACzB,aAAA,EACD,IAAI,EAAC,SAAS,EAAA,YAAA,EACF,IAAI,CAAC,kBAAkB,EACnC,GAAG,EAAE,CAAC,OAAO,KAAI;gBACf,sBAAA,CAAA,IAAI,EAAA,cAAA,EAAW,OAAO,EAAA,GAAA,CAAA;AACxB,aAAC,EACD,OAAO,EAAE,sBAAA,CAAA,IAAI,EAAS,eAAA,EAAA,GAAA,CAAA,EACtB,SAAS,EAAE,sBAAA,CAAA,IAAI,EAAW,iBAAA,EAAA,GAAA,CAAA,EAC1B,WAAW,EAAE,sBAAA,CAAA,IAAI,EAAa,mBAAA,EAAA,GAAA,CAAA,EAC9B,QAAQ,EAAE,sBAAA,CAAA,IAAI,EAAU,gBAAA,EAAA,GAAA,CAAA,EAAA,GAEpB,sBAAA,CAAA,IAAI,EAAqB,2BAAA,EAAA,GAAA,CAAA,EAAA,EAE7B,CAAA,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAM,YAAY,EAAE,sBAAA,CAAA,IAAI,EAAA,oBAAA,EAAA,GAAA,CAAc,GAAI,CACvC,EACL,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAE;AACL,gBAAA,kBAAkB,EAAE,IAAI;gBACxB,YAAY,EACV,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,iBAAiB;oBAC/C,IAAI,CAAC,WAAW,KAAK,UAAU;AAClC,aAAA,EAAA,EAED,CAAA,CAAA,iBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,IAAI,EAAC,eAAe,EACpB,QAAQ,EAAC,MAAM,EACf,WAAW,EAAC,MAAM,EAClB,UAAU,EAAC,SAAS,EACpB,OAAO,EAAE,sBAAA,CAAA,IAAI,EAAa,mBAAA,EAAA,GAAA,CAAA,EAC1B,QAAQ,EAAE,IAAI,CAAC,eAAe,EAAA,CAC9B,CACE,CACF,EACL,sBAAA,CAAA,IAAI,EAAuB,iBAAA,EAAA,GAAA,EAAA,iCAAA,CAAA,KAC1B,CAAA,CAAA,aAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAa,QAAQ,EAAE,IAAI,CAAC,WAAW,KAAK,UAAU,EAAA,CAAI,CAC3D,CACG;;;;;;;;;;;;;;;;;AA7HR,IAAA,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO;AAAE,QAAA,OAAO,KAAK;AACxC,IAAA,IACE,IAAI,CAAC,KAAK,KAAK,MAAM;QACrB,IAAI,CAAC,KAAK,KAAK,YAAY;QAC3B,IAAI,CAAC,WAAW,KAAK,YAAY;AAEjC,QAAA,OAAO,KAAK;AACd,IAAA,OAAO,IAAI,CAAC,WAAW,KAAK,IAAI;AAClC,CAAC,uDA+Ia,GAAsB,EAAA;AAClC,IAAA,IAAI,CAAC,SAAS,GAAG,GAAG;AAEpB,IAAA,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE;;AAErD,QAAA,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG;AACpB,QAAA,MAAM,UAAU,GAAG,CAAC,KAAK,GAAG;;AAE5B,QAAA,CAAC,CAAC,QAAQ,GAAG,UAAU;AACvB,QAAA,IAAI,MAAM,YAAY,UAAU,CAAC,OAAO;AACtC,YAAA,MAAM,CAAC,YAAY,GAAG,UAAU,CAAC,QAAQ,EAAE;;AAEjD,CAAC,2DAEe,SAA4B,EAAA;AAC1C,IAAA,KAAK,MAAM,GAAG,IAAI,uBAAA,IAAI,EAAA,YAAA,EAAA,GAAA,CAAM,EAAE;AAC5B,QAAA,MAAM,KAAK,GAAG,mBAAmB,CAAC,GAAG,CAAC;QACtC,IAAI,KAAK,EAAE;AACT,YAAA,KAAK,CAAC,MAAM,GAAG,GAAG,KAAK,SAAS;;;AAGtC,CAAC,qEAEoB,GAAsB,EAAA;AACzC,IAAA,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS;IAClC,IAAI,WAAW,KAAK,GAAG;QAAE;AAEzB,IAAA,IAAI,CAAC,SAAS,GAAG,GAAG;AAEpB,IAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;AAElC,IAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;AAC1B,IAAA,sBAAA,CAAA,IAAI,EAAe,iBAAA,EAAA,GAAA,EAAA,qBAAA,CAAA,CAAA,IAAA,CAAnB,IAAI,EAAgB,GAAG,CAAC;AACxB,IAAA,sBAAA,CAAA,IAAI,EAAgB,iBAAA,EAAA,GAAA,EAAA,sBAAA,CAAA,CAAA,IAAA,CAApB,IAAI,EAAiB,GAAG,CAAC;AAC3B,CAAC,EAAA,qBAAA,GAAA,SAAA,qBAAA,GAAA;IAGC,OAAO,sBAAA,CAAA,IAAI,EAAM,YAAA,EAAA,GAAA,CAAA,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC;AAC3E,CAAC,yDAEc,GAAsB,EAAA;AACnC,IAAA,KAAK,MAAM,CAAC,IAAI,uBAAA,IAAI,EAAA,YAAA,EAAA,GAAA,CAAM,EAAE;AAC1B,QAAA,MAAM,SAAS,GAAG,CAAC,KAAK,GAAG;AAE3B,QAAA,gBAAgB,CAAC,CAAC,EAAE,CAAC,OAAsC,KAAI;AAC7D,YAAA,MAAM,MAAM,GAAG,OAAO,EAAE,GAAG;YAC3B,IAAI,MAAM,KAAK,SAAS;gBAAE;YAC1B,MAAM,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,MAAM;AAClE,YAAA,MAAM,iBAAiB,GAAG,SAAS,IAAI,CAAC,UAAU;YAClD,MAAM,QAAQ,GAAG,iBAAiB,GAAG,GAAG,GAAG,IAAI;AAC/C,YAAA,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC;AACzC,YAAA,IAAI,iBAAiB;AAAE,gBAAA,sBAAA,CAAA,IAAI,EAAqB,iBAAA,EAAA,GAAA,EAAA,2BAAA,CAAA,CAAA,IAAA,CAAzB,IAAI,EAAsB,CAAC,CAAC;AACrD,SAAC,CAAC;;AAEN,CAAC,EAAA,uBAAA,GAAA,SAAA,uBAAA,GAAA;AAsGC,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC;AACxD,IAAA,sBAAA,CAAA,IAAI,gBAAS;UACT,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAClD,CAAC,OAAO,KAAK,gBAAgB,CAAC,OAAO,CAAC;AAE1C,UAAE,EAAE,EAAA,GAAA,CAAA;AACR,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","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-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} 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 { Tab } from '../tab/tab'\n\nexport type Layer = 'accessory' | 'main' | 'panel' | 'popup'\nexport type Level = 'root' | 'section' | 'subsection'\nexport type Orientation = 'horizontal' | 'vertical'\nexport type Alignment = 'centered' | 'left'\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 @Prop() public layer?: Layer = 'main'\n\n /**\n * The tabbar's level.\n */\n @Prop() public level?: Level = 'root'\n\n /**\n * The tabbar's orientation.\n */\n @Prop() public orientation?: Orientation = 'horizontal'\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 = 'left'\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 #computeDividerVisible(): boolean {\n if (this.layer === 'panel') return false\n if (\n this.layer === 'main' &&\n this.level === 'subsection' &&\n this.orientation === 'horizontal'\n )\n return false\n return this.showDivider === true\n }\n\n @Listen('resize', { target: 'window' })\n protected windowResize(): void {\n this.#onViewportCrop()\n }\n\n public componentWillLoad(): void {\n this.#inheritedAttributes = inheritAriaAttributes(this.host)\n\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\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 = settings.importance\n tab.size = settings.size\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n tab.indicatorPosition =\n this.orientation === 'vertical' ? 'inline-end' : tab.indicatorPosition\n /* eslint-enable @typescript-eslint/no-unsafe-member-access */\n }\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={{ 'qds-vertical-divider': this.orientation === 'vertical' }}\n data-layer={this.layer}\n data-level={this.level}\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 }}\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': this.orientation === 'vertical',\n 'qds-centered':\n this.alignment === 'centered' &&\n this.orientation === 'horizontal' &&\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 }}\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 vertical={this.orientation === 'vertical'} />\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 #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 = this.orientation === 'vertical'\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 readonly #onSlotchange = (): void => {\n this.#updateTabsCache()\n\n if (this.#tabs.length > 0) this.#setCurrentTab(this.#tabs[0])\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface QdsTableCell extends Components.QdsTableCell, HTMLElement {}
4
+ export const QdsTableCell: {
5
+ prototype: QdsTableCell;
6
+ new (): QdsTableCell;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,81 @@
1
+ /*!
2
+ * SPDX-FileCopyrightText: © 2026 Schneider Electric
3
+ *
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { p as proxyCustomElement, H, h } from './p-D2489VzR.js';
7
+
8
+ const tableCellCss = ":host([hidden]){display:none!important}:host{display:contents}.qds-table-cell{box-sizing:border-box;color:var(--qds-theme-title);font:var(--qds-list-item-standard-title);padding-block:0;padding-inline:var(--qds-list-item-standard-padding-horizontal);text-align:inherit;vertical-align:middle;width:inherit}";
9
+
10
+ const TableCell = /*@__PURE__*/ proxyCustomElement(class TableCell extends H {
11
+ constructor(registerHost) {
12
+ super();
13
+ if (registerHost !== false) {
14
+ this.__registerHost();
15
+ }
16
+ this.__attachShadow();
17
+ this.internals = this.attachInternals();
18
+ }
19
+ colSpanChanged(newValue) {
20
+ this.internals.ariaColSpan =
21
+ newValue === undefined ||
22
+ Number.isNaN(newValue) ||
23
+ newValue < 1 ||
24
+ newValue > 1000
25
+ ? '1'
26
+ : newValue.toString();
27
+ }
28
+ rowSpanChanged(newValue) {
29
+ this.internals.ariaRowSpan =
30
+ newValue === undefined ||
31
+ Number.isNaN(newValue) ||
32
+ newValue < 1 ||
33
+ newValue > 65534
34
+ ? '1'
35
+ : newValue.toString();
36
+ }
37
+ componentWillLoad() {
38
+ this.internals.role = 'cell';
39
+ this.colSpanChanged(this.colSpan);
40
+ this.rowSpanChanged(this.rowSpan);
41
+ }
42
+ render() {
43
+ return (
44
+ // eslint-disable-next-line jsx-a11y/control-has-associated-label
45
+ h("td", { key: '1c90aa486ee26c73cade143b8b281f0d8f93dee7', class: "qds-table-cell", colSpan: this.colSpan, rowSpan: this.rowSpan,
46
+ // eslint-disable-next-line jsx-a11y/no-interactive-element-to-noninteractive-role
47
+ role: "none" }, h("slot", { key: '02b3051cba1bfdc7d1d0be004691eaeb4387c446' })));
48
+ }
49
+ static get watchers() { return {
50
+ "colSpan": ["colSpanChanged"],
51
+ "rowSpan": ["rowSpanChanged"]
52
+ }; }
53
+ static get style() { return tableCellCss; }
54
+ }, [257, "qds-table-cell", {
55
+ "colSpan": [2, "colspan"],
56
+ "rowSpan": [2, "rowspan"]
57
+ }, undefined, {
58
+ "colSpan": ["colSpanChanged"],
59
+ "rowSpan": ["rowSpanChanged"]
60
+ }]);
61
+ function defineCustomElement$1() {
62
+ if (typeof customElements === "undefined") {
63
+ return;
64
+ }
65
+ const components = ["qds-table-cell"];
66
+ components.forEach(tagName => { switch (tagName) {
67
+ case "qds-table-cell":
68
+ if (!customElements.get(tagName)) {
69
+ customElements.define(tagName, TableCell);
70
+ }
71
+ break;
72
+ } });
73
+ }
74
+
75
+ const QdsTableCell = TableCell;
76
+ const defineCustomElement = defineCustomElement$1;
77
+
78
+ export { QdsTableCell, defineCustomElement };
79
+ //# sourceMappingURL=qds-table-cell.js.map
80
+
81
+ //# sourceMappingURL=qds-table-cell.js.map
@@ -0,0 +1 @@
1
+ {"file":"qds-table-cell.js","mappings":";;;;;;;AAAA,MAAM,YAAY,GAAG,mTAAmT;;MCkB3T,SAAS,iBAAAA,kBAAA,CAAA,MAAA,SAAA,SAAAC,CAAA,CAAA;;;;;;;;;AAwBV,IAAA,cAAc,CAAC,QAA4B,EAAA;QACnD,IAAI,CAAC,SAAS,CAAC,WAAW;AACxB,YAAA,QAAQ,KAAK,SAAS;AACtB,gBAAA,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;AACtB,gBAAA,QAAQ,GAAG,CAAC;AACZ,gBAAA,QAAQ,GAAG;AACT,kBAAE;AACF,kBAAE,QAAQ,CAAC,QAAQ,EAAE;;AAIjB,IAAA,cAAc,CAAC,QAA4B,EAAA;QACnD,IAAI,CAAC,SAAS,CAAC,WAAW;AACxB,YAAA,QAAQ,KAAK,SAAS;AACtB,gBAAA,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;AACtB,gBAAA,QAAQ,GAAG,CAAC;AACZ,gBAAA,QAAQ,GAAG;AACT,kBAAE;AACF,kBAAE,QAAQ,CAAC,QAAQ,EAAE;;IAGpB,iBAAiB,GAAA;AACtB,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,MAAM;AAC5B,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;AACjC,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;;IAG5B,MAAM,GAAA;QACX;;QAEE,CAAA,CAAA,IAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EACE,KAAK,EAAC,gBAAgB,EACtB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,OAAO,EAAE,IAAI,CAAC,OAAO;;AAErB,YAAA,IAAI,EAAC,MAAM,EAAA,EAEX,CAAQ,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/table-cell/table-cell.css?tag=qds-table-cell&encapsulation=shadow","src/components/table-cell/table-cell.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: contents;\n}\n\n.qds-table-cell {\n box-sizing: border-box;\n color: var(--qds-theme-title);\n font: var(--qds-list-item-standard-title);\n padding-block: 0;\n padding-inline: var(--qds-list-item-standard-padding-horizontal);\n text-align: inherit;\n vertical-align: middle;\n width: inherit;\n}\n","// SPDX-FileCopyrightText: © 2024 Schneider Electric\n//\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { ComponentInterface } from '@stencil/core'\nimport { AttachInternals, Component, h, Prop, Watch } from '@stencil/core'\n\n/**\n * The `<qds-table-cell>` element defines a cell of a table that contains data.\n * It participates in the *table model*.\n *\n * @see https://quartz.se.com/build/components/table\n */\n@Component({\n tag: 'qds-table-cell',\n shadow: true,\n styleUrl: 'table-cell.css',\n})\nexport class TableCell implements ComponentInterface {\n /**\n * Non-negative integer value that indicates for how many columns the cell\n * extends. Its default value is `1`. Values higher than 1000 will be\n * considered as incorrect and will be set to the default value (1).\n *\n * @webnative\n */\n @Prop({ attribute: 'colspan' }) public readonly colSpan?: number\n\n /**\n * Non-negative integer value that indicates for how many rows the cell\n * extends. Its default value is `1`; if its value is set to `0`, it extends\n * until the end of the table section (`<qds-table-head>` or\n * `<qds-table-body>`, even if implicitly defined), that the cell belongs to.\n * Values higher than 65534 are clipped down to 65534.\n *\n * @webnative\n */\n @Prop({ attribute: 'rowspan' }) public readonly rowSpan?: number\n\n @AttachInternals() private readonly internals!: ElementInternals\n\n @Watch('colSpan')\n protected colSpanChanged(newValue: number | undefined): void {\n this.internals.ariaColSpan =\n newValue === undefined ||\n Number.isNaN(newValue) ||\n newValue < 1 ||\n newValue > 1000\n ? '1'\n : newValue.toString()\n }\n\n @Watch('rowSpan')\n protected rowSpanChanged(newValue: number | undefined): void {\n this.internals.ariaRowSpan =\n newValue === undefined ||\n Number.isNaN(newValue) ||\n newValue < 1 ||\n newValue > 65_534\n ? '1'\n : newValue.toString()\n }\n\n public componentWillLoad(): void {\n this.internals.role = 'cell'\n this.colSpanChanged(this.colSpan)\n this.rowSpanChanged(this.rowSpan)\n }\n\n public render() {\n return (\n // eslint-disable-next-line jsx-a11y/control-has-associated-label\n <td\n class=\"qds-table-cell\"\n colSpan={this.colSpan}\n rowSpan={this.rowSpan}\n // eslint-disable-next-line jsx-a11y/no-interactive-element-to-noninteractive-role\n role=\"none\"\n >\n <slot />\n </td>\n )\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../dist/types/components";
2
+
3
+ interface QdsTableHeadCell extends Components.QdsTableHeadCell, HTMLElement {}
4
+ export const QdsTableHeadCell: {
5
+ prototype: QdsTableHeadCell;
6
+ new (): QdsTableHeadCell;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;