@six-group/ui-library 0.0.0-insider.fe4db17 → 0.0.0-insider.fea784d

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 (404) hide show
  1. package/dist/cjs/animation-ZgWV0fC6.js +54 -0
  2. package/dist/cjs/animation-ZgWV0fC6.js.map +1 -0
  3. package/dist/cjs/{form-control-Ditp8yHw.js → form-control-CX8QRq9v.js} +3 -3
  4. package/dist/cjs/{form-control-Ditp8yHw.js.map → form-control-CX8QRq9v.js.map} +1 -1
  5. package/dist/cjs/{index-BKTrCUjx.js → index-C8rK7OAe.js} +3 -3
  6. package/dist/{esm/index-D0Go1Zjj.js.map → cjs/index-C8rK7OAe.js.map} +1 -1
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/six-alert.cjs.entry.js +1 -1
  9. package/dist/cjs/six-avatar.cjs.entry.js +3 -3
  10. package/dist/cjs/six-badge.cjs.entry.js +3 -3
  11. package/dist/cjs/six-button.cjs.entry.js +3 -3
  12. package/dist/cjs/six-card.cjs.entry.js +2 -2
  13. package/dist/cjs/six-checkbox_2.cjs.entry.js +4 -4
  14. package/dist/cjs/six-date.cjs.entry.js +3 -3
  15. package/dist/cjs/six-datepicker.cjs.entry.js +1 -1
  16. package/dist/cjs/six-details.cjs.entry.js +4 -4
  17. package/dist/cjs/six-dialog.cjs.entry.js +16 -10
  18. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  19. package/dist/cjs/six-dialog.entry.cjs.js.map +1 -1
  20. package/dist/cjs/six-drawer.cjs.entry.js +16 -10
  21. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  22. package/dist/cjs/six-drawer.entry.cjs.js.map +1 -1
  23. package/dist/cjs/six-dropdown_2.cjs.entry.js +8 -8
  24. package/dist/cjs/six-error-page.cjs.entry.js +1 -1
  25. package/dist/cjs/six-error.cjs.entry.js +1 -1
  26. package/dist/cjs/six-file-list-item.cjs.entry.js +3 -3
  27. package/dist/cjs/six-file-list.cjs.entry.js +1 -1
  28. package/dist/cjs/six-file-upload.cjs.entry.js +5 -5
  29. package/dist/cjs/six-footer.cjs.entry.js +1 -1
  30. package/dist/cjs/six-group-label.cjs.entry.js +2 -2
  31. package/dist/cjs/six-header-dropdown-item.cjs.entry.js +1 -1
  32. package/dist/cjs/six-header-item.cjs.entry.js +1 -1
  33. package/dist/cjs/six-header-menu-button.cjs.entry.js +1 -1
  34. package/dist/cjs/six-header.cjs.entry.js +1 -1
  35. package/dist/cjs/six-icon-button.cjs.entry.js +1 -1
  36. package/dist/cjs/six-icon.cjs.entry.js +1 -1
  37. package/dist/cjs/six-input.cjs.entry.js +5 -5
  38. package/dist/cjs/six-item-picker.cjs.entry.js +1 -1
  39. package/dist/cjs/six-language-switcher.cjs.entry.js +2 -2
  40. package/dist/cjs/six-layout-grid.cjs.entry.js +1 -1
  41. package/dist/cjs/six-logo.cjs.entry.js +1 -1
  42. package/dist/cjs/six-main-container.cjs.entry.js +1 -1
  43. package/dist/cjs/six-menu-divider.cjs.entry.js +1 -1
  44. package/dist/cjs/six-menu-label.cjs.entry.js +1 -1
  45. package/dist/cjs/six-picto.cjs.entry.js +1 -1
  46. package/dist/cjs/six-progress-bar.cjs.entry.js +1 -1
  47. package/dist/cjs/six-progress-ring.cjs.entry.js +1 -1
  48. package/dist/cjs/six-radio.cjs.entry.js +1 -1
  49. package/dist/cjs/six-range.cjs.entry.js +2 -2
  50. package/dist/cjs/six-root.cjs.entry.js +1 -1
  51. package/dist/cjs/six-search-field.cjs.entry.js +2 -2
  52. package/dist/cjs/six-select.cjs.entry.js +8 -8
  53. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +1 -1
  54. package/dist/cjs/six-sidebar-item.cjs.entry.js +1 -1
  55. package/dist/cjs/six-sidebar.cjs.entry.js +1 -1
  56. package/dist/cjs/six-spinner.cjs.entry.js +1 -1
  57. package/dist/cjs/six-stage-indicator.cjs.entry.js +1 -1
  58. package/dist/cjs/six-switch.cjs.entry.js +2 -2
  59. package/dist/cjs/six-tab-group.cjs.entry.js +5 -38
  60. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  61. package/dist/cjs/six-tab-group.entry.cjs.js.map +1 -1
  62. package/dist/cjs/six-tab-panel.cjs.entry.js +1 -1
  63. package/dist/cjs/six-tab.cjs.entry.js +4 -4
  64. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  65. package/dist/cjs/six-tab.entry.cjs.js.map +1 -1
  66. package/dist/cjs/six-tag.cjs.entry.js +1 -1
  67. package/dist/cjs/six-textarea.cjs.entry.js +2 -2
  68. package/dist/cjs/six-tile.cjs.entry.js +1 -1
  69. package/dist/cjs/six-timepicker.cjs.entry.js +1 -1
  70. package/dist/cjs/six-tooltip.cjs.entry.js +1 -1
  71. package/dist/cjs/ui-library.cjs.js +2 -2
  72. package/dist/cjs/ui-library.cjs.js.map +1 -1
  73. package/dist/collection/collection-manifest.json +3 -3
  74. package/dist/collection/components/six-avatar/six-avatar.js +2 -2
  75. package/dist/collection/components/six-badge/six-badge.js +2 -2
  76. package/dist/collection/components/six-button/six-button.js +2 -2
  77. package/dist/collection/components/six-card/six-card.js +1 -1
  78. package/dist/collection/components/six-checkbox/six-checkbox.js +2 -2
  79. package/dist/collection/components/six-date/six-date.js +2 -2
  80. package/dist/collection/components/six-details/six-details.js +3 -3
  81. package/dist/collection/components/six-dialog/six-dialog.js +23 -17
  82. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  83. package/dist/collection/components/six-drawer/six-drawer.js +23 -17
  84. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  85. package/dist/collection/components/six-dropdown/six-dropdown.js +5 -5
  86. package/dist/collection/components/six-file-list-item/six-file-list-item.js +2 -2
  87. package/dist/collection/components/six-file-upload/six-file-upload.js +4 -4
  88. package/dist/collection/components/six-input/six-input.js +3 -3
  89. package/dist/collection/components/six-language-switcher/six-language-switcher.js +1 -1
  90. package/dist/collection/components/six-menu/six-menu.js +2 -2
  91. package/dist/collection/components/six-search-field/six-search-field.js +1 -1
  92. package/dist/collection/components/six-select/six-select.js +6 -6
  93. package/dist/collection/components/six-tab/six-tab.css +12 -0
  94. package/dist/collection/components/six-tab/six-tab.js +2 -2
  95. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  96. package/dist/collection/components/six-tab-group/six-tab-group.js +2 -2
  97. package/dist/collection/utils/animation.js +13 -0
  98. package/dist/collection/utils/animation.js.map +1 -1
  99. package/dist/components/index.js +1 -1
  100. package/dist/components/{p-NtUDAuW7.js → p-9aUb96SZ.js} +14 -14
  101. package/dist/components/{p-NtUDAuW7.js.map → p-9aUb96SZ.js.map} +1 -1
  102. package/dist/components/{p-DV46ui1Q.js → p-BB2rei7y.js} +3 -3
  103. package/dist/components/{p-DV46ui1Q.js.map → p-BB2rei7y.js.map} +1 -1
  104. package/dist/components/{p-CpcN3YG9.js → p-BR2t7cws.js} +4 -4
  105. package/dist/components/{p-CpcN3YG9.js.map → p-BR2t7cws.js.map} +1 -1
  106. package/dist/components/{p-Mse5vRUS.js → p-BSHZAiyG.js} +3 -3
  107. package/dist/components/{p-Mse5vRUS.js.map → p-BSHZAiyG.js.map} +1 -1
  108. package/dist/components/{p-Cemjz04k.js → p-BUN8hFmL.js} +6 -6
  109. package/dist/components/{p-Cemjz04k.js.map → p-BUN8hFmL.js.map} +1 -1
  110. package/dist/components/{p-6HRX2kde.js → p-C28WDWgL.js} +6 -6
  111. package/dist/components/{p-6HRX2kde.js.map → p-C28WDWgL.js.map} +1 -1
  112. package/dist/components/{p-BPRt5Z5f.js → p-CSL17OWk.js} +9 -9
  113. package/dist/components/{p-BPRt5Z5f.js.map → p-CSL17OWk.js.map} +1 -1
  114. package/dist/components/{p-Cr6sHYme.js → p-CWKq6Dyt.js} +3 -3
  115. package/dist/components/{p-Cr6sHYme.js.map → p-CWKq6Dyt.js.map} +1 -1
  116. package/dist/components/{p-D45ehsSM.js → p-Cfyrva2T.js} +7 -7
  117. package/dist/components/{p-D45ehsSM.js.map → p-Cfyrva2T.js.map} +1 -1
  118. package/dist/components/{p-eW-dQ-wI.js → p-Cosz73fX.js} +4 -4
  119. package/dist/components/{p-eW-dQ-wI.js.map → p-Cosz73fX.js.map} +1 -1
  120. package/dist/components/{p-DT1sZALq.js → p-Cs1jspzx.js} +7 -7
  121. package/dist/components/{p-DT1sZALq.js.map → p-Cs1jspzx.js.map} +1 -1
  122. package/dist/components/{p-CYrYPnLQ.js → p-Cs6mMfx-.js} +3 -3
  123. package/dist/components/{p-CYrYPnLQ.js.map → p-Cs6mMfx-.js.map} +1 -1
  124. package/dist/components/{p-BtF2Ym6T.js → p-D512q9rn.js} +17 -4
  125. package/dist/components/p-D512q9rn.js.map +1 -0
  126. package/dist/components/{p-BmW8cpEG.js → p-DIkvCBxr.js} +3 -3
  127. package/dist/components/{p-BmW8cpEG.js.map → p-DIkvCBxr.js.map} +1 -1
  128. package/dist/components/{p-DXhOme6Y.js → p-DYlDF9Rw.js} +3 -3
  129. package/dist/components/{p-DXhOme6Y.js.map → p-DYlDF9Rw.js.map} +1 -1
  130. package/dist/components/{p-BkQKlScF.js → p-DnLdSdN5.js} +7 -7
  131. package/dist/components/{p-BkQKlScF.js.map → p-DnLdSdN5.js.map} +1 -1
  132. package/dist/components/{p-Dl9jKaw7.js → p-DsGIkEDB.js} +9 -9
  133. package/dist/components/{p-Dl9jKaw7.js.map → p-DsGIkEDB.js.map} +1 -1
  134. package/dist/components/{p-CLtU4Br-.js → p-DyYwMIDQ.js} +4 -4
  135. package/dist/components/{p-CLtU4Br-.js.map → p-DyYwMIDQ.js.map} +1 -1
  136. package/dist/components/p-SLlDVtvF.js +51 -0
  137. package/dist/components/p-SLlDVtvF.js.map +1 -0
  138. package/dist/components/six-alert.js +3 -3
  139. package/dist/components/six-avatar.js +4 -4
  140. package/dist/components/six-badge.js +3 -3
  141. package/dist/components/six-button.js +1 -1
  142. package/dist/components/six-card.js +2 -2
  143. package/dist/components/six-checkbox.js +1 -1
  144. package/dist/components/six-date.js +7 -7
  145. package/dist/components/six-datepicker.js +6 -6
  146. package/dist/components/six-details.js +1 -1
  147. package/dist/components/six-dialog.js +18 -12
  148. package/dist/components/six-dialog.js.map +1 -1
  149. package/dist/components/six-drawer.js +18 -12
  150. package/dist/components/six-drawer.js.map +1 -1
  151. package/dist/components/six-dropdown.js +1 -1
  152. package/dist/components/six-error-page.js +2 -2
  153. package/dist/components/six-error.js +1 -1
  154. package/dist/components/six-file-list-item.js +4 -4
  155. package/dist/components/six-file-list.js +1 -1
  156. package/dist/components/six-file-upload.js +8 -8
  157. package/dist/components/six-footer.js +1 -1
  158. package/dist/components/six-group-label.js +3 -3
  159. package/dist/components/six-header-dropdown-item.js +8 -8
  160. package/dist/components/six-header-item.js +1 -1
  161. package/dist/components/six-header-menu-button.js +3 -3
  162. package/dist/components/six-header.js +1 -1
  163. package/dist/components/six-icon-button.js +1 -1
  164. package/dist/components/six-icon.js +1 -1
  165. package/dist/components/six-input.js +1 -1
  166. package/dist/components/six-item-picker.js +1 -1
  167. package/dist/components/six-language-switcher.js +2 -2
  168. package/dist/components/six-layout-grid.js +1 -1
  169. package/dist/components/six-logo.js +1 -1
  170. package/dist/components/six-main-container.js +1 -1
  171. package/dist/components/six-menu-divider.js +1 -1
  172. package/dist/components/six-menu-item.js +1 -1
  173. package/dist/components/six-menu-label.js +1 -1
  174. package/dist/components/six-menu.js +1 -1
  175. package/dist/components/six-picto.js +1 -1
  176. package/dist/components/six-progress-bar.js +1 -1
  177. package/dist/components/six-progress-ring.js +1 -1
  178. package/dist/components/six-radio.js +1 -1
  179. package/dist/components/six-range.js +3 -3
  180. package/dist/components/six-root.js +3 -3
  181. package/dist/components/six-search-field.js +5 -5
  182. package/dist/components/six-select.js +18 -18
  183. package/dist/components/six-sidebar-item-group.js +3 -3
  184. package/dist/components/six-sidebar-item.js +2 -2
  185. package/dist/components/six-sidebar.js +1 -1
  186. package/dist/components/six-spinner.js +1 -1
  187. package/dist/components/six-stage-indicator.js +1 -1
  188. package/dist/components/six-switch.js +3 -3
  189. package/dist/components/six-tab-group.js +6 -39
  190. package/dist/components/six-tab-group.js.map +1 -1
  191. package/dist/components/six-tab-panel.js +1 -1
  192. package/dist/components/six-tab.js +6 -6
  193. package/dist/components/six-tab.js.map +1 -1
  194. package/dist/components/six-tag.js +4 -4
  195. package/dist/components/six-textarea.js +3 -3
  196. package/dist/components/six-tile.js +4 -4
  197. package/dist/components/six-timepicker.js +1 -1
  198. package/dist/components/six-tooltip.js +1 -1
  199. package/dist/components.json +1860 -325
  200. package/dist/esm/animation-SLlDVtvF.js +51 -0
  201. package/dist/esm/animation-SLlDVtvF.js.map +1 -0
  202. package/dist/esm/{form-control-D_uS8E6o.js → form-control-DI6V1ZhR.js} +3 -3
  203. package/dist/esm/{form-control-D_uS8E6o.js.map → form-control-DI6V1ZhR.js.map} +1 -1
  204. package/dist/esm/{index-D0Go1Zjj.js → index-JoG9I7EO.js} +3 -3
  205. package/dist/{cjs/index-BKTrCUjx.js.map → esm/index-JoG9I7EO.js.map} +1 -1
  206. package/dist/esm/loader.js +2 -2
  207. package/dist/esm/six-alert.entry.js +1 -1
  208. package/dist/esm/six-avatar.entry.js +3 -3
  209. package/dist/esm/six-badge.entry.js +3 -3
  210. package/dist/esm/six-button.entry.js +3 -3
  211. package/dist/esm/six-card.entry.js +2 -2
  212. package/dist/esm/six-checkbox_2.entry.js +4 -4
  213. package/dist/esm/six-date.entry.js +3 -3
  214. package/dist/esm/six-datepicker.entry.js +1 -1
  215. package/dist/esm/six-details.entry.js +4 -4
  216. package/dist/esm/six-dialog.entry.js +16 -10
  217. package/dist/esm/six-dialog.entry.js.map +1 -1
  218. package/dist/esm/six-drawer.entry.js +16 -10
  219. package/dist/esm/six-drawer.entry.js.map +1 -1
  220. package/dist/esm/six-dropdown_2.entry.js +8 -8
  221. package/dist/esm/six-error-page.entry.js +1 -1
  222. package/dist/esm/six-error.entry.js +1 -1
  223. package/dist/esm/six-file-list-item.entry.js +3 -3
  224. package/dist/esm/six-file-list.entry.js +1 -1
  225. package/dist/esm/six-file-upload.entry.js +5 -5
  226. package/dist/esm/six-footer.entry.js +1 -1
  227. package/dist/esm/six-group-label.entry.js +2 -2
  228. package/dist/esm/six-header-dropdown-item.entry.js +1 -1
  229. package/dist/esm/six-header-item.entry.js +1 -1
  230. package/dist/esm/six-header-menu-button.entry.js +1 -1
  231. package/dist/esm/six-header.entry.js +1 -1
  232. package/dist/esm/six-icon-button.entry.js +1 -1
  233. package/dist/esm/six-icon.entry.js +1 -1
  234. package/dist/esm/six-input.entry.js +5 -5
  235. package/dist/esm/six-item-picker.entry.js +1 -1
  236. package/dist/esm/six-language-switcher.entry.js +2 -2
  237. package/dist/esm/six-layout-grid.entry.js +1 -1
  238. package/dist/esm/six-logo.entry.js +1 -1
  239. package/dist/esm/six-main-container.entry.js +1 -1
  240. package/dist/esm/six-menu-divider.entry.js +1 -1
  241. package/dist/esm/six-menu-label.entry.js +1 -1
  242. package/dist/esm/six-picto.entry.js +1 -1
  243. package/dist/esm/six-progress-bar.entry.js +1 -1
  244. package/dist/esm/six-progress-ring.entry.js +1 -1
  245. package/dist/esm/six-radio.entry.js +1 -1
  246. package/dist/esm/six-range.entry.js +2 -2
  247. package/dist/esm/six-root.entry.js +1 -1
  248. package/dist/esm/six-search-field.entry.js +2 -2
  249. package/dist/esm/six-select.entry.js +8 -8
  250. package/dist/esm/six-sidebar-item-group.entry.js +1 -1
  251. package/dist/esm/six-sidebar-item.entry.js +1 -1
  252. package/dist/esm/six-sidebar.entry.js +1 -1
  253. package/dist/esm/six-spinner.entry.js +1 -1
  254. package/dist/esm/six-stage-indicator.entry.js +1 -1
  255. package/dist/esm/six-switch.entry.js +2 -2
  256. package/dist/esm/six-tab-group.entry.js +4 -37
  257. package/dist/esm/six-tab-group.entry.js.map +1 -1
  258. package/dist/esm/six-tab-panel.entry.js +1 -1
  259. package/dist/esm/six-tab.entry.js +4 -4
  260. package/dist/esm/six-tab.entry.js.map +1 -1
  261. package/dist/esm/six-tag.entry.js +1 -1
  262. package/dist/esm/six-textarea.entry.js +2 -2
  263. package/dist/esm/six-tile.entry.js +1 -1
  264. package/dist/esm/six-timepicker.entry.js +1 -1
  265. package/dist/esm/six-tooltip.entry.js +1 -1
  266. package/dist/esm/ui-library.js +3 -3
  267. package/dist/esm/ui-library.js.map +1 -1
  268. package/dist/types/components/six-dialog/six-dialog.d.ts +10 -2
  269. package/dist/types/components/six-drawer/six-drawer.d.ts +10 -2
  270. package/dist/types/components.d.ts +620 -6
  271. package/dist/types/stencil-public-runtime.d.ts +19 -0
  272. package/dist/types/utils/animation.d.ts +4 -0
  273. package/dist/ui-library/p-01243b2e.entry.js +2 -0
  274. package/dist/ui-library/p-01243b2e.entry.js.map +1 -0
  275. package/dist/ui-library/{p-79a79513.entry.js → p-09de2bda.entry.js} +2 -2
  276. package/dist/ui-library/{p-0ae9215f.entry.js → p-0eb90caf.entry.js} +2 -2
  277. package/dist/ui-library/{p-22ad5b1e.entry.js → p-14f79bfc.entry.js} +2 -2
  278. package/dist/ui-library/{p-baf698e1.entry.js → p-174dd242.entry.js} +2 -2
  279. package/dist/ui-library/{p-a1f7be27.entry.js → p-18e755bc.entry.js} +2 -2
  280. package/dist/ui-library/{p-6990e5ed.entry.js → p-194037e9.entry.js} +2 -2
  281. package/dist/ui-library/{p-81af96f2.entry.js → p-1cfa2df4.entry.js} +2 -2
  282. package/dist/ui-library/{p-e91aa04b.entry.js → p-22ad3353.entry.js} +2 -2
  283. package/dist/ui-library/{p-ba68b30c.entry.js → p-25ff87fe.entry.js} +2 -2
  284. package/dist/ui-library/{p-df05b23b.entry.js → p-285666de.entry.js} +2 -2
  285. package/dist/ui-library/{p-a534a4bc.entry.js → p-29d79fe3.entry.js} +2 -2
  286. package/dist/ui-library/{p-1e4d1252.entry.js → p-2a245a37.entry.js} +2 -2
  287. package/dist/ui-library/{p-f585a5ab.entry.js → p-2a82de6c.entry.js} +2 -2
  288. package/dist/ui-library/{p-5e70085d.entry.js → p-2fb16281.entry.js} +2 -2
  289. package/dist/ui-library/{p-695e450e.entry.js → p-31c5f8fa.entry.js} +2 -2
  290. package/dist/ui-library/{p-1323f2cb.entry.js → p-336610a9.entry.js} +2 -2
  291. package/dist/ui-library/{p-830ed202.entry.js → p-362ff192.entry.js} +2 -2
  292. package/dist/ui-library/{p-36a316e0.entry.js → p-371ef302.entry.js} +2 -2
  293. package/dist/ui-library/p-39109b96.entry.js +2 -0
  294. package/dist/ui-library/p-39109b96.entry.js.map +1 -0
  295. package/dist/ui-library/{p-b8db5638.entry.js → p-3d49deae.entry.js} +2 -2
  296. package/dist/ui-library/{p-5e5bd309.entry.js → p-3dc98466.entry.js} +2 -2
  297. package/dist/ui-library/{p-82f5b61f.entry.js → p-4152b371.entry.js} +2 -2
  298. package/dist/ui-library/{p-6d212bc0.entry.js → p-494546c8.entry.js} +2 -2
  299. package/dist/ui-library/{p-9b1c8a24.entry.js → p-4f52c56f.entry.js} +2 -2
  300. package/dist/ui-library/{p-d7616f27.entry.js → p-54490d28.entry.js} +2 -2
  301. package/dist/ui-library/p-56e172e0.entry.js +2 -0
  302. package/dist/ui-library/p-56e172e0.entry.js.map +1 -0
  303. package/dist/ui-library/{p-8fe7ecdd.entry.js → p-5b52d097.entry.js} +2 -2
  304. package/dist/ui-library/{p-9f0ed997.entry.js → p-65e53a1b.entry.js} +2 -2
  305. package/dist/ui-library/{p-ae8d75aa.entry.js → p-6607d03a.entry.js} +2 -2
  306. package/dist/ui-library/{p-85aacb7c.entry.js → p-6dd3f54c.entry.js} +2 -2
  307. package/dist/ui-library/{p-5ed5842b.entry.js → p-811ce2a0.entry.js} +2 -2
  308. package/dist/ui-library/p-83d5fa7c.entry.js +2 -0
  309. package/dist/ui-library/p-83d5fa7c.entry.js.map +1 -0
  310. package/dist/ui-library/{p-4a4a0751.entry.js → p-850aff56.entry.js} +2 -2
  311. package/dist/ui-library/{p-01306147.entry.js → p-8884a48b.entry.js} +2 -2
  312. package/dist/ui-library/{p-b09e3895.entry.js → p-91c195d3.entry.js} +2 -2
  313. package/dist/ui-library/{p-537a8953.entry.js → p-9ec79195.entry.js} +2 -2
  314. package/dist/ui-library/{p-IBmarOIS.js → p-Dg9366Gk.js} +2 -2
  315. package/dist/ui-library/{p-IBmarOIS.js.map → p-Dg9366Gk.js.map} +1 -1
  316. package/dist/ui-library/{p-D0Go1Zjj.js → p-JoG9I7EO.js} +1 -1
  317. package/dist/ui-library/{p-D0Go1Zjj.js.map → p-JoG9I7EO.js.map} +1 -1
  318. package/dist/ui-library/p-SLlDVtvF.js +2 -0
  319. package/dist/ui-library/p-SLlDVtvF.js.map +1 -0
  320. package/dist/ui-library/{p-73b64625.entry.js → p-a43843d6.entry.js} +2 -2
  321. package/dist/ui-library/{p-071ed780.entry.js → p-a4b523ed.entry.js} +2 -2
  322. package/dist/ui-library/{p-c2ec443c.entry.js → p-ab043a8c.entry.js} +2 -2
  323. package/dist/ui-library/{p-1e67ac05.entry.js → p-b37d9771.entry.js} +2 -2
  324. package/dist/ui-library/{p-97b78889.entry.js → p-b6244904.entry.js} +2 -2
  325. package/dist/ui-library/{p-243965b4.entry.js → p-c47f11e4.entry.js} +2 -2
  326. package/dist/ui-library/{p-f4e2ddfc.entry.js → p-c90a59fc.entry.js} +2 -2
  327. package/dist/ui-library/{p-f52715e8.entry.js → p-cea7f777.entry.js} +2 -2
  328. package/dist/ui-library/{p-868fab98.entry.js → p-d36ec323.entry.js} +2 -2
  329. package/dist/ui-library/{p-5ad81261.entry.js → p-dc2109d2.entry.js} +2 -2
  330. package/dist/ui-library/{p-0d97e592.entry.js → p-e85be7d2.entry.js} +2 -2
  331. package/dist/ui-library/{p-68c50fb7.entry.js → p-e92df84a.entry.js} +2 -2
  332. package/dist/ui-library/{p-679f1e08.entry.js → p-ea61b009.entry.js} +2 -2
  333. package/dist/ui-library/{p-8d60c1fd.entry.js → p-ed6625e6.entry.js} +2 -2
  334. package/dist/ui-library/{p-9713ecff.entry.js → p-ee980a0f.entry.js} +2 -2
  335. package/dist/ui-library/{p-cc44af70.entry.js → p-f4dd7b57.entry.js} +2 -2
  336. package/dist/ui-library/{p-84964501.entry.js → p-f6423fca.entry.js} +2 -2
  337. package/dist/ui-library/{p-16028bce.entry.js → p-fe7d3665.entry.js} +2 -2
  338. package/dist/ui-library/six-dialog.entry.esm.js.map +1 -1
  339. package/dist/ui-library/six-drawer.entry.esm.js.map +1 -1
  340. package/dist/ui-library/six-tab-group.entry.esm.js.map +1 -1
  341. package/dist/ui-library/six-tab.entry.esm.js.map +1 -1
  342. package/dist/ui-library/ui-library.esm.js +1 -1
  343. package/dist/ui-library/ui-library.esm.js.map +1 -1
  344. package/package.json +7 -8
  345. package/dist/components/p-BtF2Ym6T.js.map +0 -1
  346. package/dist/ui-library/p-0b438d5a.entry.js +0 -2
  347. package/dist/ui-library/p-0b438d5a.entry.js.map +0 -1
  348. package/dist/ui-library/p-798fb03a.entry.js +0 -2
  349. package/dist/ui-library/p-798fb03a.entry.js.map +0 -1
  350. package/dist/ui-library/p-d1bd67af.entry.js +0 -2
  351. package/dist/ui-library/p-d1bd67af.entry.js.map +0 -1
  352. package/dist/ui-library/p-f0c10d20.entry.js +0 -2
  353. package/dist/ui-library/p-f0c10d20.entry.js.map +0 -1
  354. /package/dist/ui-library/{p-79a79513.entry.js.map → p-09de2bda.entry.js.map} +0 -0
  355. /package/dist/ui-library/{p-0ae9215f.entry.js.map → p-0eb90caf.entry.js.map} +0 -0
  356. /package/dist/ui-library/{p-22ad5b1e.entry.js.map → p-14f79bfc.entry.js.map} +0 -0
  357. /package/dist/ui-library/{p-baf698e1.entry.js.map → p-174dd242.entry.js.map} +0 -0
  358. /package/dist/ui-library/{p-a1f7be27.entry.js.map → p-18e755bc.entry.js.map} +0 -0
  359. /package/dist/ui-library/{p-6990e5ed.entry.js.map → p-194037e9.entry.js.map} +0 -0
  360. /package/dist/ui-library/{p-81af96f2.entry.js.map → p-1cfa2df4.entry.js.map} +0 -0
  361. /package/dist/ui-library/{p-e91aa04b.entry.js.map → p-22ad3353.entry.js.map} +0 -0
  362. /package/dist/ui-library/{p-ba68b30c.entry.js.map → p-25ff87fe.entry.js.map} +0 -0
  363. /package/dist/ui-library/{p-df05b23b.entry.js.map → p-285666de.entry.js.map} +0 -0
  364. /package/dist/ui-library/{p-a534a4bc.entry.js.map → p-29d79fe3.entry.js.map} +0 -0
  365. /package/dist/ui-library/{p-1e4d1252.entry.js.map → p-2a245a37.entry.js.map} +0 -0
  366. /package/dist/ui-library/{p-f585a5ab.entry.js.map → p-2a82de6c.entry.js.map} +0 -0
  367. /package/dist/ui-library/{p-5e70085d.entry.js.map → p-2fb16281.entry.js.map} +0 -0
  368. /package/dist/ui-library/{p-695e450e.entry.js.map → p-31c5f8fa.entry.js.map} +0 -0
  369. /package/dist/ui-library/{p-1323f2cb.entry.js.map → p-336610a9.entry.js.map} +0 -0
  370. /package/dist/ui-library/{p-830ed202.entry.js.map → p-362ff192.entry.js.map} +0 -0
  371. /package/dist/ui-library/{p-36a316e0.entry.js.map → p-371ef302.entry.js.map} +0 -0
  372. /package/dist/ui-library/{p-b8db5638.entry.js.map → p-3d49deae.entry.js.map} +0 -0
  373. /package/dist/ui-library/{p-5e5bd309.entry.js.map → p-3dc98466.entry.js.map} +0 -0
  374. /package/dist/ui-library/{p-82f5b61f.entry.js.map → p-4152b371.entry.js.map} +0 -0
  375. /package/dist/ui-library/{p-6d212bc0.entry.js.map → p-494546c8.entry.js.map} +0 -0
  376. /package/dist/ui-library/{p-9b1c8a24.entry.js.map → p-4f52c56f.entry.js.map} +0 -0
  377. /package/dist/ui-library/{p-d7616f27.entry.js.map → p-54490d28.entry.js.map} +0 -0
  378. /package/dist/ui-library/{p-8fe7ecdd.entry.js.map → p-5b52d097.entry.js.map} +0 -0
  379. /package/dist/ui-library/{p-9f0ed997.entry.js.map → p-65e53a1b.entry.js.map} +0 -0
  380. /package/dist/ui-library/{p-ae8d75aa.entry.js.map → p-6607d03a.entry.js.map} +0 -0
  381. /package/dist/ui-library/{p-85aacb7c.entry.js.map → p-6dd3f54c.entry.js.map} +0 -0
  382. /package/dist/ui-library/{p-5ed5842b.entry.js.map → p-811ce2a0.entry.js.map} +0 -0
  383. /package/dist/ui-library/{p-4a4a0751.entry.js.map → p-850aff56.entry.js.map} +0 -0
  384. /package/dist/ui-library/{p-01306147.entry.js.map → p-8884a48b.entry.js.map} +0 -0
  385. /package/dist/ui-library/{p-b09e3895.entry.js.map → p-91c195d3.entry.js.map} +0 -0
  386. /package/dist/ui-library/{p-537a8953.entry.js.map → p-9ec79195.entry.js.map} +0 -0
  387. /package/dist/ui-library/{p-73b64625.entry.js.map → p-a43843d6.entry.js.map} +0 -0
  388. /package/dist/ui-library/{p-071ed780.entry.js.map → p-a4b523ed.entry.js.map} +0 -0
  389. /package/dist/ui-library/{p-c2ec443c.entry.js.map → p-ab043a8c.entry.js.map} +0 -0
  390. /package/dist/ui-library/{p-1e67ac05.entry.js.map → p-b37d9771.entry.js.map} +0 -0
  391. /package/dist/ui-library/{p-97b78889.entry.js.map → p-b6244904.entry.js.map} +0 -0
  392. /package/dist/ui-library/{p-243965b4.entry.js.map → p-c47f11e4.entry.js.map} +0 -0
  393. /package/dist/ui-library/{p-f4e2ddfc.entry.js.map → p-c90a59fc.entry.js.map} +0 -0
  394. /package/dist/ui-library/{p-f52715e8.entry.js.map → p-cea7f777.entry.js.map} +0 -0
  395. /package/dist/ui-library/{p-868fab98.entry.js.map → p-d36ec323.entry.js.map} +0 -0
  396. /package/dist/ui-library/{p-5ad81261.entry.js.map → p-dc2109d2.entry.js.map} +0 -0
  397. /package/dist/ui-library/{p-0d97e592.entry.js.map → p-e85be7d2.entry.js.map} +0 -0
  398. /package/dist/ui-library/{p-68c50fb7.entry.js.map → p-e92df84a.entry.js.map} +0 -0
  399. /package/dist/ui-library/{p-679f1e08.entry.js.map → p-ea61b009.entry.js.map} +0 -0
  400. /package/dist/ui-library/{p-8d60c1fd.entry.js.map → p-ed6625e6.entry.js.map} +0 -0
  401. /package/dist/ui-library/{p-9713ecff.entry.js.map → p-ee980a0f.entry.js.map} +0 -0
  402. /package/dist/ui-library/{p-cc44af70.entry.js.map → p-f4dd7b57.entry.js.map} +0 -0
  403. /package/dist/ui-library/{p-84964501.entry.js.map → p-f6423fca.entry.js.map} +0 -0
  404. /package/dist/ui-library/{p-16028bce.entry.js.map → p-fe7d3665.entry.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixDialogCss","id","SixDialog","constructor","hostRef","this","componentId","willShow","willHide","hasFooter","isVisible","open","label","noHeader","handleCloseClick","hide","handleKeyDown","event","key","handleOverlayClick","sixOverlayDismiss","emit","defaultPrevented","handleSlotChange","hasSlot","host","handleTransitionEnd","target","propertyName","classList","contains","sixAfterShow","sixAfterHide","handleOpenChange","show","connectedCallback","modal","Modal","onFocusOut","_a","panel","focus","componentWillLoad","componentDidLoad","disconnectedCallback","unlockBodyScrolling","dialog","sixShow","activate","lockBodyScrolling","requestAnimationFrame","sixInitialFocus","preventScroll","sixHide","deactivate","render","h","ref","el","part","class","onKeyDown","onTransitionEnd","onClick","role","tabIndex","name","String","fromCharCode","exportparts","onSlotchange"],"sources":["src/components/six-dialog/six-dialog.scss?tag=six-dialog&encapsulation=shadow","src/components/six-dialog/six-dialog.tsx"],"sourcesContent":["@import 'src/global/component';\n@import 'src/global/mixins/hidden';\n\n/**\n * @prop --width: The preferred width of the dialog. Note that the dialog will shrink to accommodate smaller screens.\n */\n:host {\n --width: 31rem;\n\n display: contents;\n}\n\n.dialog {\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: var(--six-z-index-dialog);\n color: var(--six-color-web-rock-900);\n\n &:not(.dialog--visible) {\n @include hidden;\n }\n}\n\n.dialog__panel {\n display: flex;\n flex-direction: column;\n z-index: 2;\n width: var(--width);\n max-width: calc(100% - var(--six-spacing-xx-large));\n max-height: calc(100% - var(--six-spacing-xx-large));\n background-color: var(--six-panel-background-color);\n border-radius: var(--six-border-radius-medium);\n box-shadow: var(--six-shadow-large);\n opacity: 0;\n transform: scale(0.8);\n transition:\n var(--six-transition-medium) opacity,\n var(--six-transition-medium) transform;\n\n &:focus {\n outline: none;\n }\n}\n\n// Ensure there's enough vertical padding for phones that don't update vh when chrome appears (e.g. iPhone)\n@media screen and (max-width: 420px) {\n .dialog__panel {\n max-height: 80vh;\n }\n}\n\n.dialog--open .dialog__panel {\n display: flex;\n opacity: 1;\n transform: none;\n}\n\n.dialog__header {\n flex: 0 0 auto;\n display: flex;\n}\n\n.dialog__title {\n flex: 1 1 auto;\n font-size: var(--six-font-size-x-large);\n font-weight: var(--six-font-weight-bold);\n line-height: var(--six-line-height-dense);\n padding: var(--six-spacing-large) var(--six-spacing-large) var(--six-spacing-small);\n}\n\n.dialog__close {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n font-size: var(--six-font-size-x-large);\n padding: 0 var(--six-spacing-x-small);\n}\n\n.dialog__body {\n flex: 1 1 auto;\n padding: var(--six-spacing-small) var(--six-spacing-large) var(--six-spacing-large);\n overflow: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.dialog__footer {\n flex: 0 0 auto;\n text-align: right;\n padding: var(--six-spacing-large);\n\n ::slotted(six-button:not(:first-of-type)) {\n margin-left: var(--six-spacing-xx-small);\n }\n}\n\n.dialog:not(.dialog--has-footer) .dialog__footer {\n display: none;\n}\n\n.dialog__overlay {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: var(--six-overlay-background-color);\n opacity: 0;\n transition: var(--six-transition-medium) opacity;\n}\n\n.dialog--open .dialog__overlay {\n opacity: 0.8;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { lockBodyScrolling, unlockBodyScrolling } from '../../utils/scroll';\nimport { hasSlot } from '../../utils/slot';\nimport Modal from '../../utils/modal';\nimport { EmptyPayload } from '../../utils/types';\n\nlet id = 0;\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot - The dialog's content.\n * @slot label - The dialog's label. Alternatively, you can use the label prop.\n * @slot footer - The dialog's footer, usually one or more buttons representing various options.\n *\n * @part base - The component's base wrapper.\n * @part overlay - The overlay.\n * @part panel - The dialog panel (where the dialog and its content is rendered).\n * @part header - The dialog header.\n * @part title - The dialog title.\n * @part close-button - The close button.\n * @part body - The dialog body.\n * @part footer - The dialog footer.\n *\n */\n@Component({\n tag: 'six-dialog',\n styleUrl: 'six-dialog.scss',\n shadow: true,\n})\nexport class SixDialog {\n private componentId = `dialog-${++id}`;\n private dialog?: HTMLElement;\n private modal?: Modal;\n private panel?: HTMLElement;\n private willShow = false;\n private willHide = false;\n\n @Element() host!: HTMLSixDialogElement;\n\n @State() hasFooter = false;\n @State() isVisible = false;\n\n /** Indicates whether the dialog is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /**\n * The dialog's label as displayed in the header. You should always include a relevant label even when using\n * `no-header`, as it is required for proper accessibility.\n */\n @Prop() label = '';\n\n /**\n * Set to true to disable the header. This will also remove the default close button, so please ensure you provide an\n * easy, accessible way for users to dismiss the dialog.\n */\n @Prop() noHeader = false;\n\n @Watch('open')\n handleOpenChange() {\n this.open ? this.show() : this.hide();\n }\n\n /** Emitted when the dialog opens. Calling `event.preventDefault()` will prevent it from being opened. */\n @Event({ eventName: 'six-dialog-show' }) sixShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the dialog opens and all transitions are complete. */\n @Event({ eventName: 'six-dialog-after-show' }) sixAfterShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the dialog closes. Calling `event.preventDefault()` will prevent it from being closed. */\n @Event({ eventName: 'six-dialog-hide' }) sixHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the dialog closes and all transitions are complete. */\n @Event({ eventName: 'six-dialog-after-hide' }) sixAfterHide!: EventEmitter<EmptyPayload>;\n\n /**\n * Emitted when the dialog opens and the panel gains focus. Calling `event.preventDefault()` will prevent focus and\n * allow you to set it on a different element in the dialog, such as an input or button.\n */\n @Event({ eventName: 'six-dialog-initial-focus' }) sixInitialFocus!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the overlay is clicked. Calling `event.preventDefault()` will prevent the dialog from closing. */\n @Event({ eventName: 'six-dialog-overlay-dismiss' }) sixOverlayDismiss!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n this.modal = new Modal(this.host, {\n onFocusOut: () => this.panel?.focus(),\n });\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n componentDidLoad() {\n // Show on init if open\n if (this.open) {\n this.show();\n }\n }\n\n disconnectedCallback() {\n unlockBodyScrolling(this.host);\n }\n\n /** Shows the dialog */\n @Method()\n async show() {\n if (this.willShow || this.modal == null || this.panel == null || this.dialog == null) {\n return;\n }\n const panel = this.panel;\n\n const sixShow = this.sixShow.emit();\n if (sixShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.willShow = true;\n this.isVisible = true;\n this.open = true;\n this.modal.activate();\n\n lockBodyScrolling(this.host);\n\n if (this.open) {\n requestAnimationFrame(() => {\n const sixInitialFocus = this.sixInitialFocus.emit();\n if (!sixInitialFocus.defaultPrevented) {\n panel.focus({ preventScroll: true });\n }\n });\n }\n }\n\n /** Hides the dialog */\n @Method()\n async hide() {\n if (this.willHide || this.modal == null) {\n return;\n }\n\n const sixHide = this.sixHide.emit();\n if (sixHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n this.willHide = true;\n this.open = false;\n this.modal.deactivate();\n\n unlockBodyScrolling(this.host);\n }\n\n private handleCloseClick = () => {\n this.hide();\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n this.hide();\n }\n };\n\n private handleOverlayClick = () => {\n const sixOverlayDismiss = this.sixOverlayDismiss.emit();\n\n if (!sixOverlayDismiss.defaultPrevented) {\n this.hide();\n }\n };\n\n private handleSlotChange = () => {\n this.hasFooter = hasSlot(this.host, 'footer');\n };\n\n private handleTransitionEnd = (event: TransitionEvent) => {\n const target = event.target as HTMLElement;\n\n // Ensure we only emit one event when the target element is no longer visible\n if (event.propertyName === 'opacity' && target.classList.contains('dialog__panel')) {\n this.isVisible = this.open;\n this.willShow = false;\n this.willHide = false;\n this.open ? this.sixAfterShow.emit() : this.sixAfterHide.emit();\n }\n };\n\n render() {\n return (\n <div\n ref={(el) => (this.dialog = el)}\n part=\"base\"\n class={{\n dialog: true,\n 'dialog--open': this.open,\n 'dialog--visible': this.isVisible,\n 'dialog--has-footer': this.hasFooter,\n }}\n onKeyDown={this.handleKeyDown}\n onTransitionEnd={this.handleTransitionEnd}\n >\n <div part=\"overlay\" class=\"dialog__overlay\" onClick={this.handleOverlayClick} />\n\n <div\n ref={(el) => (this.panel = el)}\n part=\"panel\"\n class=\"dialog__panel\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-hidden={this.open ? 'false' : 'true'}\n aria-label={this.noHeader ? this.label : null}\n aria-labelledby={!this.noHeader ? `${this.componentId}-title` : null}\n tabIndex={0}\n >\n {!this.noHeader && (\n <header part=\"header\" class=\"dialog__header\">\n <span part=\"title\" class=\"dialog__title\" id={`${this.componentId}-title`}>\n <slot name=\"label\">\n {/* If there's no label, use an invisible character to prevent the heading from collapsing */}\n {this.label || String.fromCharCode(65279)}\n </slot>\n </span>\n <six-icon-button\n exportparts=\"base:close-button\"\n class=\"dialog__close\"\n name=\"close\"\n onClick={this.handleCloseClick}\n />\n </header>\n )}\n\n <div part=\"body\" class=\"dialog__body\">\n <slot />\n </div>\n\n <footer part=\"footer\" class=\"dialog__footer\">\n <slot name=\"footer\" onSlotchange={this.handleSlotChange} />\n </footer>\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as i,g as r}from"./p-D0Go1Zjj.js";import{u as a,l as s}from"./p-BY6hIEFX.js";import{h as o}from"./p-j3oIB5oT.js";import{M as n}from"./p-CfIoyvm-.js";const d=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}:host{--size:25rem;display:contents}.drawer{top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.drawer:not(.drawer--visible){position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;pointer-events:none;visibility:hidden}.drawer--contained{position:absolute;z-index:initial}.drawer--fixed{position:fixed;z-index:var(--six-z-index-drawer)}.drawer__panel{position:absolute;display:flex;flex-direction:column;z-index:2;max-width:100%;max-height:100%;background-color:var(--six-drawer-background-color);color:var(--six-drawer-color);box-shadow:var(--six-shadow-large);transition:var(--six-transition-medium) transform;overflow:auto;pointer-events:all}.drawer__panel:focus{outline:none}.drawer--top .drawer__panel{top:0;right:auto;bottom:auto;left:0;width:100%;height:var(--size);transform:translate(0, -100%)}.drawer--right .drawer__panel{top:0;right:0;bottom:auto;left:auto;width:var(--size);height:100%;transform:translate(100%, 0)}.drawer--bottom .drawer__panel{top:auto;right:auto;bottom:0;left:0;width:100%;height:var(--size);transform:translate(0, 100%)}.drawer--left .drawer__panel{top:0;right:auto;bottom:auto;left:0;width:var(--size);height:100%;transform:translate(-100%, 0)}.drawer--open .drawer__panel{transform:none}.drawer__header{display:flex}.drawer__title{flex:1 1 auto;font-size:var(--six-font-size-large);line-height:var(--six-line-height-dense);padding:var(--six-spacing-large)}.drawer__close{flex:0 0 auto;display:flex;align-items:center;font-size:var(--six-font-size-x-large);padding:0 var(--six-spacing-large)}.drawer__body{flex:1 1 auto;padding:var(--six-spacing-large);overflow:auto;-webkit-overflow-scrolling:touch}.drawer__footer{text-align:right;padding:var(--six-spacing-large)}.drawer__footer ::slotted(six-button:not(:last-of-type)){margin-right:var(--six-spacing-x-small)}.drawer:not(.drawer--has-footer) .drawer__footer{display:none}.drawer__overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--six-overlay-background-color);opacity:0;transition:var(--six-transition-medium) opacity;pointer-events:all}.drawer--contained .drawer__overlay{position:absolute}.drawer--open .drawer__overlay{opacity:0.4}";let h=0;const l=class{constructor(i){t(this,i);this.sixShow=e(this,"six-drawer-show");this.sixAfterShow=e(this,"six-drawer-after-show");this.sixHide=e(this,"six-drawer-hide");this.sixAfterHide=e(this,"six-drawer-after-hide");this.sixInitialFocus=e(this,"six-drawer-initial-focus");this.sixOverlayDismiss=e(this,"six-drawer-overlay-dismiss");this.componentId=`drawer-${++h}`;this.willShow=false;this.willHide=false;this.hasFooter=false;this.isVisible=false;this.open=false;this.label="";this.placement="right";this.contained=false;this.noHeader=false;this.handleCloseClick=()=>{this.hide()};this.handleKeyDown=t=>{if(t.key==="Escape"){this.hide()}};this.handleOverlayClick=()=>{const t=this.sixOverlayDismiss.emit();if(!t.defaultPrevented){this.hide()}};this.handleSlotChange=()=>{this.hasFooter=o(this.host,"footer")};this.handleTransitionEnd=t=>{const e=t.target;if(t.propertyName==="transform"&&e.classList.contains("drawer__panel")){this.resetTransitionVariables()}}}handleOpenChange(){this.open?this.show():this.hide()}connectedCallback(){this.modal=new n(this.host,{onFocusOut:()=>{var t;return this.contained?null:(t=this.panel)===null||t===void 0?void 0:t.focus()}})}componentWillLoad(){this.handleSlotChange();if(this.open){this.show();this.resetTransitionVariables()}}disconnectedCallback(){a(this.host)}async show(){if(this.willShow||this.modal==null||this.panel==null||this.drawer==null){return}const t=this.panel;const e=this.sixShow.emit();if(e.defaultPrevented){this.open=false;return}this.willShow=true;this.isVisible=true;this.open=true;if(!this.contained){this.modal.activate();s(this.host)}if(this.open){requestAnimationFrame((()=>{const e=this.sixInitialFocus.emit();if(!e.defaultPrevented){t.focus({preventScroll:true})}}))}}async hide(){if(this.willHide||this.modal==null){return}const t=this.sixHide.emit();if(t.defaultPrevented){this.open=true;return}this.willHide=true;this.open=false;this.modal.deactivate();a(this.host)}resetTransitionVariables(){this.isVisible=this.open;this.willShow=false;this.willHide=false;this.open?this.sixAfterShow.emit():this.sixAfterHide.emit()}render(){return i("div",{key:"f35600ecd84f97b647ab9cc98d56c360f2f03408",ref:t=>this.drawer=t,part:"base",class:{drawer:true,"drawer--open":this.open,"drawer--visible":this.isVisible,"drawer--top":this.placement==="top","drawer--right":this.placement==="right","drawer--bottom":this.placement==="bottom","drawer--left":this.placement==="left","drawer--contained":this.contained,"drawer--fixed":!this.contained,"drawer--has-footer":this.hasFooter},onKeyDown:this.handleKeyDown,onTransitionEnd:this.handleTransitionEnd},i("div",{key:"178e61c83b4c635041c51c89553ed834f6424cd2",part:"overlay",class:"drawer__overlay",onClick:this.handleOverlayClick,tabIndex:-1}),i("div",{key:"71374a7cae137e002760f3ff5b5ee69ad4ac4675",ref:t=>this.panel=t,part:"panel",class:"drawer__panel",role:"dialog","aria-modal":"true","aria-hidden":this.open?"false":"true","aria-label":this.noHeader?this.label:null,"aria-labelledby":!this.noHeader?`${this.componentId}-title`:null,tabIndex:0},!this.noHeader&&i("header",{key:"3a66c231ad202b211c2df81b74a8a6e937be661b",part:"header",class:"drawer__header"},i("span",{key:"80205d6fccb2510b23473dba6098462221f9d43e",part:"title",class:"drawer__title",id:`${this.componentId}-title`},i("slot",{key:"13d986fb13c2cded9ce9980cf12da1b34de9ef28",name:"label"},this.label||String.fromCharCode(65279))),i("six-icon-button",{key:"d62b14dc24849d16f1dffbba0f98126fc95de336",exportparts:"base:close-button",class:"drawer__close",name:"close",onClick:this.handleCloseClick})),i("div",{key:"d0f5b6df5230e996d6b196095589a6629b271fab",part:"body",class:"drawer__body"},i("slot",{key:"6eda0430f1fe27d28a85a6e689fbb9025ee773e7"})),i("footer",{key:"8c71f25b2bbb980a7aabee038ea4d7a58f177970",part:"footer",class:"drawer__footer"},i("slot",{key:"e7dfb09c1cd30deccfd30ce28849e32cdaebe69f",name:"footer",onSlotchange:this.handleSlotChange}))))}get host(){return r(this)}static get watchers(){return{open:["handleOpenChange"]}}};l.style=d;export{l as six_drawer};
2
- //# sourceMappingURL=p-798fb03a.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixDrawerCss","id","SixDrawer","constructor","hostRef","this","componentId","willShow","willHide","hasFooter","isVisible","open","label","placement","contained","noHeader","handleCloseClick","hide","handleKeyDown","event","key","handleOverlayClick","sixOverlayDismiss","emit","defaultPrevented","handleSlotChange","hasSlot","host","handleTransitionEnd","target","propertyName","classList","contains","resetTransitionVariables","handleOpenChange","show","connectedCallback","modal","Modal","onFocusOut","_a","panel","focus","componentWillLoad","disconnectedCallback","unlockBodyScrolling","drawer","sixShow","activate","lockBodyScrolling","requestAnimationFrame","sixInitialFocus","preventScroll","sixHide","deactivate","sixAfterShow","sixAfterHide","render","h","ref","el","part","class","onKeyDown","onTransitionEnd","onClick","tabIndex","role","name","String","fromCharCode","exportparts","onSlotchange"],"sources":["src/components/six-drawer/six-drawer.scss?tag=six-drawer&encapsulation=shadow","src/components/six-drawer/six-drawer.tsx"],"sourcesContent":["@import 'src/global/component';\n@import 'src/global/mixins/hidden';\n\n/**\n * @prop --size: The preferred size of the drawer. This will be applied to the drawer's width or height depending on its\n * `placement`. Note that the drawer will shrink to accommodate smaller screens.\n */\n:host {\n --size: 25rem;\n\n display: contents;\n}\n\n.drawer {\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n overflow: hidden;\n\n &:not(.drawer--visible) {\n @include hidden;\n }\n}\n\n.drawer--contained {\n position: absolute;\n z-index: initial;\n}\n\n.drawer--fixed {\n position: fixed;\n z-index: var(--six-z-index-drawer);\n}\n\n.drawer__panel {\n position: absolute;\n display: flex;\n flex-direction: column;\n z-index: 2;\n max-width: 100%;\n max-height: 100%;\n background-color: var(--six-drawer-background-color);\n color: var(--six-drawer-color);\n box-shadow: var(--six-shadow-large);\n transition: var(--six-transition-medium) transform;\n overflow: auto;\n pointer-events: all;\n\n &:focus {\n outline: none;\n }\n}\n\n.drawer--top .drawer__panel {\n top: 0;\n right: auto;\n bottom: auto;\n left: 0;\n width: 100%;\n height: var(--size);\n transform: translate(0, -100%);\n}\n\n.drawer--right .drawer__panel {\n top: 0;\n right: 0;\n bottom: auto;\n left: auto;\n width: var(--size);\n height: 100%;\n transform: translate(100%, 0);\n}\n\n.drawer--bottom .drawer__panel {\n top: auto;\n right: auto;\n bottom: 0;\n left: 0;\n width: 100%;\n height: var(--size);\n transform: translate(0, 100%);\n}\n\n.drawer--left .drawer__panel {\n top: 0;\n right: auto;\n bottom: auto;\n left: 0;\n width: var(--size);\n height: 100%;\n transform: translate(-100%, 0);\n}\n\n.drawer--open .drawer__panel {\n // don't use translate here or it will cause problems with popovers inside the drawer e.g. dropdown, select etc.\n transform: none;\n}\n\n.drawer__header {\n display: flex;\n}\n\n.drawer__title {\n flex: 1 1 auto;\n font-size: var(--six-font-size-large);\n line-height: var(--six-line-height-dense);\n padding: var(--six-spacing-large);\n}\n\n.drawer__close {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n font-size: var(--six-font-size-x-large);\n padding: 0 var(--six-spacing-large);\n}\n\n.drawer__body {\n flex: 1 1 auto;\n padding: var(--six-spacing-large);\n overflow: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.drawer__footer {\n text-align: right;\n padding: var(--six-spacing-large);\n\n ::slotted(six-button:not(:last-of-type)) {\n margin-right: var(--six-spacing-x-small);\n }\n}\n\n.drawer:not(.drawer--has-footer) .drawer__footer {\n display: none;\n}\n\n.drawer__overlay {\n display: block;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background-color: var(--six-overlay-background-color);\n opacity: 0;\n transition: var(--six-transition-medium) opacity;\n pointer-events: all;\n}\n\n.drawer--contained .drawer__overlay {\n position: absolute;\n}\n\n.drawer--open .drawer__overlay {\n opacity: 0.4;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { lockBodyScrolling, unlockBodyScrolling } from '../../utils/scroll';\nimport { hasSlot } from '../../utils/slot';\nimport Modal from '../../utils/modal';\nimport { EmptyPayload } from '../../utils/types';\n\nlet id = 0;\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot - The drawer's content.\n * @slot label - The drawer's label. Alternatively, you can use the label prop.\n * @slot footer - The drawer's footer, usually one or more buttons representing various options.\n *\n * @part base - The component's base wrapper.\n * @part overlay - The overlay.\n * @part panel - The drawer panel (where the drawer and its content is rendered).\n * @part header - The drawer header.\n * @part title - The drawer title.\n * @part close-button - The close button.\n * @part body - The drawer body.\n * @part footer - The drawer footer.\n */\n\n@Component({\n tag: 'six-drawer',\n styleUrl: 'six-drawer.scss',\n shadow: true,\n})\nexport class SixDrawer {\n private componentId = `drawer-${++id}`;\n private drawer?: HTMLElement;\n private modal?: Modal;\n private panel?: HTMLElement;\n private willShow = false;\n private willHide = false;\n\n @Element() host!: HTMLSixDrawerElement;\n\n @State() hasFooter = false;\n @State() isVisible = false;\n\n /** Indicates whether the drawer is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /**\n * The drawer's label as displayed in the header. You should always include a relevant label even when using\n * `no-header`, as it is required for proper accessibility.\n */\n @Prop() label = '';\n\n /** The direction from which the drawer will open. */\n @Prop() placement: 'top' | 'right' | 'bottom' | 'left' = 'right';\n\n /**\n * By default, the drawer slides out of its containing block (usually the viewport). To make the drawer slide out of\n * its parent element, set this prop and add `position: relative` to the parent.\n */\n @Prop() contained = false;\n\n /**\n * Removes the header. This will also remove the default close button, so please ensure you provide an easy,\n * accessible way for users to dismiss the drawer.\n */\n @Prop() noHeader = false;\n\n @Watch('open')\n handleOpenChange() {\n this.open ? this.show() : this.hide();\n }\n\n /** Emitted when the drawer opens. Calling `event.preventDefault()` will prevent it from being opened. */\n @Event({ eventName: 'six-drawer-show' }) sixShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the drawer opens and all transitions are complete. */\n @Event({ eventName: 'six-drawer-after-show' }) sixAfterShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the drawer closes. Calling `event.preventDefault()` will prevent it from being closed. */\n @Event({ eventName: 'six-drawer-hide' }) sixHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the drawer closes and all transitions are complete. */\n @Event({ eventName: 'six-drawer-after-hide' }) sixAfterHide!: EventEmitter<EmptyPayload>;\n\n /**\n * Emitted when the drawer opens and the panel gains focus. Calling `event.preventDefault()` will prevent focus and\n * allow you to set it on a different element in the drawer, such as an input or button.\n */\n @Event({ eventName: 'six-drawer-initial-focus' }) sixInitialFocus!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the overlay is clicked. Calling `event.preventDefault()` will prevent the drawer from closing. */\n @Event({ eventName: 'six-drawer-overlay-dismiss' }) sixOverlayDismiss!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n this.modal = new Modal(this.host, {\n onFocusOut: () => (this.contained ? null : this.panel?.focus()),\n });\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n\n // Show on init if open\n if (this.open) {\n this.show();\n // if the sidebar is open by default we need to manually reset the\n // transition variables since there will be no transition event\n this.resetTransitionVariables();\n }\n }\n\n disconnectedCallback() {\n unlockBodyScrolling(this.host);\n }\n\n /** Shows the drawer */\n @Method()\n async show() {\n if (this.willShow || this.modal == null || this.panel == null || this.drawer == null) {\n return;\n }\n const panel = this.panel;\n\n const sixShow = this.sixShow.emit();\n if (sixShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.willShow = true;\n this.isVisible = true;\n this.open = true;\n\n // Lock body scrolling only if the drawer isn't contained\n if (!this.contained) {\n this.modal.activate();\n lockBodyScrolling(this.host);\n }\n\n if (this.open) {\n // Wait for the next frame before setting initial focus so the dialog is technically visible\n requestAnimationFrame(() => {\n const sixInitialFocus = this.sixInitialFocus.emit();\n if (!sixInitialFocus.defaultPrevented) {\n panel.focus({ preventScroll: true });\n }\n });\n }\n }\n\n /** Hides the drawer */\n @Method()\n async hide() {\n if (this.willHide || this.modal == null) {\n return;\n }\n\n const sixHide = this.sixHide.emit();\n if (sixHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n this.willHide = true;\n this.open = false;\n this.modal.deactivate();\n\n unlockBodyScrolling(this.host);\n }\n\n private handleCloseClick = () => {\n this.hide();\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n this.hide();\n }\n };\n\n private handleOverlayClick = () => {\n const sixOverlayDismiss = this.sixOverlayDismiss.emit();\n\n if (!sixOverlayDismiss.defaultPrevented) {\n this.hide();\n }\n };\n\n private handleSlotChange = () => {\n this.hasFooter = hasSlot(this.host, 'footer');\n };\n\n private handleTransitionEnd = (event: TransitionEvent) => {\n const target = event.target as HTMLElement;\n\n // Ensure we only emit one event when the target element is no longer visible\n if (event.propertyName === 'transform' && target.classList.contains('drawer__panel')) {\n this.resetTransitionVariables();\n }\n };\n\n private resetTransitionVariables() {\n this.isVisible = this.open;\n this.willShow = false;\n this.willHide = false;\n this.open ? this.sixAfterShow.emit() : this.sixAfterHide.emit();\n }\n\n render() {\n return (\n <div\n ref={(el) => (this.drawer = el)}\n part=\"base\"\n class={{\n drawer: true,\n 'drawer--open': this.open,\n 'drawer--visible': this.isVisible,\n 'drawer--top': this.placement === 'top',\n 'drawer--right': this.placement === 'right',\n 'drawer--bottom': this.placement === 'bottom',\n 'drawer--left': this.placement === 'left',\n 'drawer--contained': this.contained,\n 'drawer--fixed': !this.contained,\n 'drawer--has-footer': this.hasFooter,\n }}\n onKeyDown={this.handleKeyDown}\n onTransitionEnd={this.handleTransitionEnd}\n >\n <div part=\"overlay\" class=\"drawer__overlay\" onClick={this.handleOverlayClick} tabIndex={-1} />\n\n <div\n ref={(el) => (this.panel = el)}\n part=\"panel\"\n class=\"drawer__panel\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-hidden={this.open ? 'false' : 'true'}\n aria-label={this.noHeader ? this.label : null}\n aria-labelledby={!this.noHeader ? `${this.componentId}-title` : null}\n tabIndex={0}\n >\n {!this.noHeader && (\n <header part=\"header\" class=\"drawer__header\">\n <span part=\"title\" class=\"drawer__title\" id={`${this.componentId}-title`}>\n <slot name=\"label\">\n {/* If there's no label, use an invisible character to prevent the heading from collapsing */}\n {this.label || String.fromCharCode(65279)}\n </slot>\n </span>\n <six-icon-button\n exportparts=\"base:close-button\"\n class=\"drawer__close\"\n name=\"close\"\n onClick={this.handleCloseClick}\n />\n </header>\n )}\n\n <div part=\"body\" class=\"drawer__body\">\n <slot />\n </div>\n\n <footer part=\"footer\" class=\"drawer__footer\">\n <slot name=\"footer\" onSlotchange={this.handleSlotChange} />\n </footer>\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as i,h as a,H as o,g as s}from"./p-D0Go1Zjj.js";const e=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}:host{display:flex}.tab{display:inline-flex;align-items:center;font-family:var(--six-font-family);font-size:var(--six-font-size-small);font-weight:var(--six-font-weight-semibold);color:var(--six-tab-color);padding:var(--six-spacing-medium) var(--six-spacing-large);white-space:nowrap;user-select:none;cursor:pointer;width:100%}.tab:focus{outline:none}.tab:focus-visible{outline:var(--six-focus-ring);outline-offset:calc(-1 * var(--six-focus-ring-width) - var(--six-focus-ring-offset))}.tab.tab--active:not(.tab--disabled){color:var(--six-tab-color-active);font-weight:var(--six-font-weight-bold)}.tab.tab--closable{padding-right:var(--six-spacing-small)}.tab.tab--disabled{color:var(--six-tab-color-disabled);cursor:not-allowed}.tab:hover:not(.tab--disabled){color:var(--six-tab-color-hover)}.tab__close-button{font-size:var(--six-font-size-large);margin-left:var(--six-spacing-xx-small)}.tab__close-button::part(base){padding:var(--six-spacing-xxx-small)}.tab__indicator{position:absolute}.tab__indicator.tab__indicator--active{background-color:var(--six-tab-border-color-active)}.tab--top{margin-bottom:var(--six-spacing-xxx-small)}.tab__indicator--top{width:100%;bottom:0;height:var(--six-tab-border-width)}.tab--bottom{margin-top:var(--six-spacing-xxx-small)}.tab__indicator--bottom{width:100%;top:0;height:var(--six-tab-border-width)}.tab--left{margin-right:var(--six-spacing-xxx-small)}.tab__indicator--left{height:100%;right:0;top:0;width:var(--six-tab-border-width)}.tab--right{margin-left:var(--six-spacing-xxx-small)}.tab__indicator--right{height:100%;left:0;top:0;width:var(--six-tab-border-width)}";let r=0;const b=class{constructor(a){t(this,a);this.sixClose=i(this,"six-tab-close");this.componentId=`tab-${++r}`;this.panel="";this.active=false;this.closable=false;this.disabled=false}connectedCallback(){this.handleCloseClick=this.handleCloseClick.bind(this)}async setFocus(t){var i;(i=this.tab)===null||i===void 0?void 0:i.focus(t)}async removeFocus(){var t;(t=this.tab)===null||t===void 0?void 0:t.blur()}handleCloseClick(){this.sixClose.emit()}render(){var t;const i=this.host.closest("six-tab-group");const s=(t=i===null||i===void 0?void 0:i.placement)!==null&&t!==void 0?t:"top";return a(o,{key:"6b59af3a0794c9ea26b362fa1ea1c0d7513babea",id:this.host.id||this.componentId},a("div",{key:"fdb3e8ffb5523a1e6c0f07287925169a0f5fd07f",part:"base",ref:t=>this.tab=t,class:{tab:true,"tab--top":s==="top","tab--bottom":s==="bottom","tab--left":s==="left","tab--right":s==="right","tab--active":this.active,"tab--closable":this.closable,"tab--disabled":this.disabled},role:"tab","aria-disabled":this.disabled?"true":"false","aria-selected":this.active?"true":"false",tabindex:this.disabled||!this.active?"-1":"0"},a("slot",{key:"907db4032971efbd5a4cfe145db3347404dba051"}),this.closable&&a("six-icon-button",{key:"117fbf10c199b315c8df0f4469b45b63956e156b",name:"close",size:"xSmall",exportparts:"base:close-button",class:"tab__close-button",onClick:this.handleCloseClick,tabIndex:-1,"aria-hidden":"true"})),a("div",{key:"0227ba2ba257cd478488d2b2d6f580bc5e95340b",part:this.active?"active-tab-indicator":"",class:{tab__indicator:true,"tab__indicator--active":this.active,"tab__indicator--top":s==="top","tab__indicator--bottom":s==="bottom","tab__indicator--left":s==="left","tab__indicator--right":s==="right"}}))}get host(){return s(this)}};b.style=e;export{b as six_tab};
2
- //# sourceMappingURL=p-d1bd67af.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixTabCss","id","SixTab","constructor","hostRef","this","componentId","panel","active","closable","disabled","connectedCallback","handleCloseClick","bind","setFocus","options","_a","tab","focus","removeFocus","blur","sixClose","emit","render","tabGroup","host","closest","placement","h","Host","key","part","ref","el","class","role","tabindex","name","size","exportparts","onClick","tabIndex","tab__indicator"],"sources":["src/components/six-tab/six-tab.scss?tag=six-tab&encapsulation=shadow","src/components/six-tab/six-tab.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: flex;\n}\n\n.tab {\n display: inline-flex;\n align-items: center;\n font-family: var(--six-font-family);\n font-size: var(--six-font-size-small);\n font-weight: var(--six-font-weight-semibold);\n color: var(--six-tab-color);\n padding: var(--six-spacing-medium) var(--six-spacing-large);\n white-space: nowrap;\n user-select: none;\n cursor: pointer;\n width: 100%;\n\n &:focus {\n outline: none;\n }\n\n &:focus-visible {\n outline: var(--six-focus-ring);\n outline-offset: calc(-1 * var(--six-focus-ring-width) - var(--six-focus-ring-offset));\n }\n\n &.tab--active:not(.tab--disabled) {\n color: var(--six-tab-color-active);\n font-weight: var(--six-font-weight-bold);\n }\n\n &.tab--closable {\n padding-right: var(--six-spacing-small);\n }\n\n &.tab--disabled {\n color: var(--six-tab-color-disabled);\n cursor: not-allowed;\n }\n\n &:hover:not(.tab--disabled) {\n color: var(--six-tab-color-hover);\n }\n}\n\n.tab__close-button {\n font-size: var(--six-font-size-large);\n margin-left: var(--six-spacing-xx-small);\n\n &::part(base) {\n padding: var(--six-spacing-xxx-small);\n }\n}\n\n// TAB INDICATOR\n.tab__indicator {\n position: absolute;\n &.tab__indicator--active {\n background-color: var(--six-tab-border-color-active);\n }\n}\n\n// TOP\n.tab--top {\n margin-bottom: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--top {\n width: 100%;\n bottom: 0;\n height: var(--six-tab-border-width);\n}\n\n// BOTTOM\n.tab--bottom {\n margin-top: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--bottom {\n width: 100%;\n top: 0;\n height: var(--six-tab-border-width);\n}\n\n// LEFT\n.tab--left {\n margin-right: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--left {\n height: 100%;\n right: 0;\n top: 0;\n width: var(--six-tab-border-width);\n}\n\n// RIGHT\n.tab--right {\n margin-left: var(--six-spacing-xxx-small);\n}\n\n.tab__indicator--right {\n height: 100%;\n left: 0;\n top: 0;\n width: var(--six-tab-border-width);\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Method, Prop } from '@stencil/core';\nimport { EmptyPayload } from '../../utils/types';\n\nlet id = 0;\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot - The tab's label.\n *\n * @part base - The component's base wrapper.\n * @part close-button - The close button, which is the icon button's base wrapper.\n */\n\n@Component({\n tag: 'six-tab',\n styleUrl: 'six-tab.scss',\n shadow: true,\n})\nexport class SixTab {\n private componentId = `tab-${++id}`;\n private tab?: HTMLElement;\n\n @Element() host!: HTMLSixTabElement;\n\n /** The name of the tab panel the tab will control. The panel must be located in the same tab group. */\n @Prop({ reflect: true }) panel = '';\n\n /** Set to true to draw the tab in an active state. */\n @Prop({ reflect: true }) active = false;\n\n /** When true, the tab will be rendered with a close icon. */\n @Prop() closable = false;\n\n /** Set to true to draw the tab in a disabled state. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Emitted when the tab is closable and the close button is activated. */\n @Event({ eventName: 'six-tab-close' }) sixClose!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n this.handleCloseClick = this.handleCloseClick.bind(this);\n }\n\n /** Sets focus to the tab. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.tab?.focus(options);\n }\n\n /** Removes focus from the tab. */\n @Method()\n async removeFocus() {\n this.tab?.blur();\n }\n\n private handleCloseClick() {\n this.sixClose.emit();\n }\n\n render() {\n const tabGroup: HTMLSixTabGroupElement | null = this.host.closest('six-tab-group');\n const placement = tabGroup?.placement ?? 'top';\n return (\n // If the user didn't provide an ID, we'll set one, so we can link tabs and tab panels with aria labels\n <Host id={this.host.id || this.componentId}>\n <div\n part=\"base\"\n ref={(el) => (this.tab = el)}\n class={{\n tab: true,\n\n // Placements\n 'tab--top': placement === 'top',\n 'tab--bottom': placement === 'bottom',\n 'tab--left': placement === 'left',\n 'tab--right': placement === 'right',\n\n // States\n 'tab--active': this.active,\n 'tab--closable': this.closable,\n 'tab--disabled': this.disabled,\n }}\n role=\"tab\"\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-selected={this.active ? 'true' : 'false'}\n tabindex={this.disabled || !this.active ? '-1' : '0'}\n >\n <slot />\n {this.closable && (\n <six-icon-button\n name=\"close\"\n size=\"xSmall\"\n exportparts=\"base:close-button\"\n class=\"tab__close-button\"\n onClick={this.handleCloseClick}\n tabIndex={-1}\n aria-hidden=\"true\"\n />\n )}\n </div>\n <div\n part={this.active ? 'active-tab-indicator' : ''}\n class={{\n tab__indicator: true,\n 'tab__indicator--active': this.active,\n\n // Placements\n 'tab__indicator--top': placement === 'top',\n 'tab__indicator--bottom': placement === 'bottom',\n 'tab__indicator--left': placement === 'left',\n 'tab__indicator--right': placement === 'right',\n }}\n ></div>\n </Host>\n );\n }\n}\n"],"mappings":"gEAAA,MAAMA,EAAY,gzDCGlB,IAAIC,EAAK,E,MAmBIC,EAAM,MALnB,WAAAC,CAAAC,G,gDAMUC,KAAAC,YAAc,SAASL,IAMNI,KAAKE,MAAG,GAGRF,KAAMG,OAAG,MAG1BH,KAAQI,SAAG,MAGMJ,KAAQK,SAAG,KAkFrC,CA7EC,iBAAAC,GACEN,KAAKO,iBAAmBP,KAAKO,iBAAiBC,KAAKR,K,CAKrD,cAAMS,CAASC,G,OACbC,EAAAX,KAAKY,OAAG,MAAAD,SAAA,SAAAA,EAAEE,MAAMH,E,CAKlB,iBAAMI,G,OACJH,EAAAX,KAAKY,OAAK,MAAAD,SAAA,SAAAA,EAAAI,M,CAGJ,gBAAAR,GACNP,KAAKgB,SAASC,M,CAGhB,MAAAC,G,MACE,MAAMC,EAA0CnB,KAAKoB,KAAKC,QAAQ,iBAClE,MAAMC,GAAYX,EAAAQ,IAAA,MAAAA,SAAA,SAAAA,EAAUG,aAAa,MAAAX,SAAA,EAAAA,EAAA,MACzC,OAEEY,EAACC,EAAI,CAAAC,IAAA,2CAAC7B,GAAII,KAAKoB,KAAKxB,IAAMI,KAAKC,aAC7BsB,EACE,OAAAE,IAAA,2CAAAC,KAAK,OACLC,IAAMC,GAAQ5B,KAAKY,IAAMgB,EACzBC,MAAO,CACLjB,IAAK,KAGL,WAAYU,IAAc,MAC1B,cAAeA,IAAc,SAC7B,YAAaA,IAAc,OAC3B,aAAcA,IAAc,QAG5B,cAAetB,KAAKG,OACpB,gBAAiBH,KAAKI,SACtB,gBAAiBJ,KAAKK,UAExByB,KAAK,MAAK,gBACK9B,KAAKK,SAAW,OAAS,QAAO,gBAChCL,KAAKG,OAAS,OAAS,QACtC4B,SAAU/B,KAAKK,WAAaL,KAAKG,OAAS,KAAO,KAEjDoB,EAAQ,QAAAE,IAAA,6CACPzB,KAAKI,UACJmB,EAAA,mBAAAE,IAAA,2CACEO,KAAK,QACLC,KAAK,SACLC,YAAY,oBACZL,MAAM,oBACNM,QAASnC,KAAKO,iBACd6B,UAAU,EAAE,cACA,UAIlBb,EAAA,OAAAE,IAAA,2CACEC,KAAM1B,KAAKG,OAAS,uBAAyB,GAC7C0B,MAAO,CACLQ,eAAgB,KAChB,yBAA0BrC,KAAKG,OAG/B,sBAAuBmB,IAAc,MACrC,yBAA0BA,IAAc,SACxC,uBAAwBA,IAAc,OACtC,wBAAyBA,IAAc,W","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as t,c as o,h as i,g as r}from"./p-D0Go1Zjj.js";import{s}from"./p-BY6hIEFX.js";function e(t,o,i={duration:150,easing:"ease",fill:"both"}){const r=o.getBoundingClientRect();const s=t.getBoundingClientRect();const e=r.left-s.left;const a=r.top-s.top;const l=r.width/s.width;const n=r.height/s.height;t.animate([{transformOrigin:"top left",transform:`translate(${e}px, ${a}px) scale(${l}, ${n})`},{transformOrigin:"top left",transform:"none"}],i)}const a=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}:host{display:block}.tab-group{display:flex;border:solid 1px transparent;border-radius:0}.tab-group .tab-group__tabs{display:flex;position:relative}.tab-group--has-scroll-controls .tab-group__nav-container{position:relative;padding:0 var(--six-spacing-x-large)}.tab-group__scroll-button{display:flex;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;width:var(--six-spacing-x-large)}.tab-group__scroll-button--left{left:0}.tab-group__scroll-button--right{right:0}.tab-group--top{flex-direction:column}.tab-group--top .tab-group__nav-container{order:1}.tab-group--top .tab-group__nav{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tab-group--top .tab-group__nav::-webkit-scrollbar{width:0;height:0}.tab-group--top .tab-group__tabs{flex:1 1 auto;position:relative;flex-direction:row}.tab-group--top .tab-group__body{order:2}.tab-group--bottom{flex-direction:column}.tab-group--bottom .tab-group__nav-container{order:2}.tab-group--bottom .tab-group__nav{display:flex;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tab-group--bottom .tab-group__nav::-webkit-scrollbar{width:0;height:0}.tab-group--bottom .tab-group__tabs{flex:1 1 auto;position:relative;flex-direction:row}.tab-group--bottom .tab-group__body{order:1}.tab-group--left{flex-direction:row}.tab-group--left .tab-group__nav-container{order:1}.tab-group--left .tab-group__tabs{flex:0 0 auto;flex-direction:column}.tab-group--left .tab-group__body{flex:1 1 auto;order:2}.tab-group--right{flex-direction:row}.tab-group--right .tab-group__nav-container{order:2}.tab-group--right .tab-group__tabs{flex:0 0 auto;flex-direction:column}.tab-group--right .tab-group__body{flex:1 1 auto;order:1}";const l=class{constructor(i){t(this,i);this.sixTabShow=o(this,"six-tab-show");this.sixTabHide=o(this,"six-tab-hide");this.hasLeftControl=false;this.hasRightControl=false;this.placement="top";this.noScrollControls=false;this.handleClick=t=>{const o=t.target;const i=o.closest("six-tab");const r=i===null||i===void 0?void 0:i.closest("six-tab-group");if(r!==this.host){return false}if(i!=null){this.setActiveTab(i)}};this.handleKeyDown=t=>{if(this.nav==null)return;const o=t.target;const i=o.closest("six-tab");const r=i===null||i===void 0?void 0:i.closest("six-tab-group");if(r!==this.host){return false}if(["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"].includes(t.key)){const o=document.activeElement;if(o&&o.tagName.toLowerCase()==="six-tab"){const i=this.getAllTabs();let r=i.indexOf(o);if(t.key==="Home"){r=0}else if(t.key==="End"){r=i.length-1}else if(t.key==="ArrowLeft"){r=Math.max(0,r-1)}else if(t.key==="ArrowRight"){r=Math.min(i.length-1,r+1)}i[r].setFocus({preventScroll:true});this.setActiveTab(i[r]);if(["top","bottom"].includes(this.placement)){s(i[r],this.nav,"horizontal")}t.preventDefault()}}};this.handleScrollLeft=()=>{if(this.nav==null)return;this.nav.scroll({left:this.nav.scrollLeft-this.nav.clientWidth,behavior:"smooth"})};this.handleScrollRight=()=>{if(this.nav==null)return;this.nav.scroll({left:this.nav.scrollLeft+this.nav.clientWidth,behavior:"smooth"})}}handleNoScrollControlsChange(){this.updateScrollControls()}componentDidLoad(){if(this.tabGroup==null||this.nav==null)return;const t=new IntersectionObserver(((t,o)=>{if(t[0].intersectionRatio>0){this.setAriaLabels();this.setActiveTab(this.getActiveTab()||this.getAllTabs()[0],false);o.unobserve(t[0].target)}}));t.observe(this.host);this.resizeObserver=new ResizeObserver((()=>this.updateScrollControls()));this.resizeObserver.observe(this.nav);requestAnimationFrame((()=>this.updateScrollControls()));this.nav.addEventListener("scroll",(()=>{if(this.nav==null){return}this.hasRightControl=this.calculateRightControlVisibility();this.hasLeftControl=this.calculateLeftControlVisibility()}));this.mutationObserver=new MutationObserver((t=>{if(t.some((t=>{var o;return!["aria-labelledby","aria-controls"].includes((o=t.attributeName)!==null&&o!==void 0?o:"")}))){setTimeout((()=>this.setAriaLabels()))}}));this.mutationObserver.observe(this.host,{attributes:true,childList:true,subtree:true})}disconnectedCallback(){if(this.mutationObserver==null||this.tabGroup==null||this.nav==null||this.resizeObserver==null){return}this.mutationObserver.disconnect();this.resizeObserver.unobserve(this.nav)}async show(t){const o=this.getAllTabs();const i=o.find((o=>o.panel===t));if(i!=null){this.setActiveTab(i)}}getAllTabs(t=false){var o;const i=(o=this.tabs)===null||o===void 0?void 0:o.querySelector("slot");if(i==null)return[];return[...i.assignedElements()].filter((o=>t?o.tagName.toLowerCase()==="six-tab":o.tagName.toLowerCase()==="six-tab"&&!o.disabled))}getAllPanels(){var t;const o=(t=this.body)===null||t===void 0?void 0:t.querySelector("slot");if(o==null)return[];return[...o.assignedElements()].filter((t=>t.tagName.toLowerCase()==="six-tab-panel"))}getActiveTab(){return this.getAllTabs().find((t=>t.active))}calculateRightControlVisibility(){var t,o,i;if(this.nav==null){return false}return Math.abs((t=this.nav)===null||t===void 0?void 0:t.scrollLeft)+((o=this.nav)===null||o===void 0?void 0:o.clientWidth)<((i=this.nav)===null||i===void 0?void 0:i.scrollWidth)-1}calculateLeftControlVisibility(){var t;if(this.nav==null){return false}return Math.abs((t=this.nav)===null||t===void 0?void 0:t.scrollLeft)>0}updateScrollControls(){if(this.nav==null)return;this.hasRightControl=this.noScrollControls?false:["top","bottom"].includes(this.placement)&&this.calculateRightControlVisibility();this.hasLeftControl=this.noScrollControls?false:["top","bottom"].includes(this.placement)&&this.calculateLeftControlVisibility()}setActiveTab(t,o=true){var i,r,a;if(this.nav==null)return;const l=(i=t===null||t===void 0?void 0:t.shadowRoot)===null||i===void 0?void 0:i.querySelector(".tab__indicator");const n=(a=(r=this.getActiveTab())===null||r===void 0?void 0:r.shadowRoot)===null||a===void 0?void 0:a.querySelector(".tab__indicator");if(n!=null&&l!=null){e(l,n)}if(t!==this.activeTab&&!t.disabled){const i=this.activeTab;this.activeTab=t;this.getAllTabs().map((t=>t.active=t===this.activeTab));this.getAllPanels().map((t=>{var o;return t.active=t.name===((o=this.activeTab)===null||o===void 0?void 0:o.panel)}));if(["top","bottom"].includes(this.placement)){s(this.activeTab,this.nav,"horizontal")}if(o){if(i!=null){this.sixTabHide.emit({name:i.panel})}this.sixTabShow.emit({name:this.activeTab.panel})}}}setAriaLabels(){const t=this.getAllTabs();const o=this.getAllPanels();t.map((t=>{var i,r;const s=o.find((o=>o.name===t.panel));if(s!=null){t.setAttribute("aria-controls",(i=s.getAttribute("id"))!==null&&i!==void 0?i:"");s.setAttribute("aria-labelledby",(r=t.getAttribute("id"))!==null&&r!==void 0?r:"")}}))}render(){return i("div",{key:"8e1680692b65ef2cf91d3dc3ab9dd76cb8359823",part:"base",ref:t=>this.tabGroup=t,class:{"tab-group":true,"tab-group--top":this.placement==="top","tab-group--bottom":this.placement==="bottom","tab-group--left":this.placement==="left","tab-group--right":this.placement==="right","tab-group--has-scroll-controls":this.hasRightControl||this.hasLeftControl},onClick:this.handleClick,onKeyDown:this.handleKeyDown},i("div",{key:"bedb1b223b85cd4cf918a3b396fa7e1867016ca6",class:"tab-group__nav-container"},this.hasLeftControl&&i("six-icon-button",{key:"04a855b42c6258daa8c8759191530be013e6d894",class:"tab-group__scroll-button tab-group__scroll-button--left",exportparts:"base:scroll-button",name:"chevron_left",onClick:this.handleScrollLeft}),i("div",{ref:t=>this.nav=t,key:"nav",part:"nav",class:"tab-group__nav"},i("div",{key:"a7d11be622d317e5d1145f196228f6113c0b50ed",ref:t=>this.tabs=t,part:"tabs",class:"tab-group__tabs",role:"tablist"},i("slot",{key:"5a669e6d813efc6c5416ebf5f281539842d63e02",name:"nav"}))),this.hasRightControl&&i("six-icon-button",{key:"31d61731441ecef93f315153de71d2ea10f5e58b",class:"tab-group__scroll-button tab-group__scroll-button--right",exportparts:"base:scroll-button",name:"chevron_right",onClick:this.handleScrollRight})),i("div",{key:"68bbdc3b94ee2119fa58d3c6a13a9b135bc941ed",ref:t=>this.body=t,part:"body",class:"tab-group__body"},i("slot",{key:"17de99799e669ae5c18afb6da7e2a23c5c3064e5"})))}get host(){return r(this)}static get watchers(){return{noScrollControls:["handleNoScrollControlsChange"]}}};l.style=a;export{l as six_tab_group};
2
- //# sourceMappingURL=p-f0c10d20.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["flipAnimate","element","fromElement","options","duration","easing","fill","dimensionsTo","getBoundingClientRect","dimensionsFrom","deltaX","left","deltaY","top","deltaW","width","deltaH","height","animate","transformOrigin","transform","sixTabGroupCss","SixTabGroup","constructor","hostRef","this","hasLeftControl","hasRightControl","placement","noScrollControls","handleClick","event","target","tab","closest","tabGroup","host","setActiveTab","handleKeyDown","nav","includes","key","activeEl","document","activeElement","tagName","toLowerCase","tabs","getAllTabs","index","indexOf","length","Math","max","min","setFocus","preventScroll","scrollIntoView","preventDefault","handleScrollLeft","scroll","scrollLeft","clientWidth","behavior","handleScrollRight","handleNoScrollControlsChange","updateScrollControls","componentDidLoad","observer","IntersectionObserver","entries","intersectionRatio","setAriaLabels","getActiveTab","unobserve","observe","resizeObserver","ResizeObserver","requestAnimationFrame","addEventListener","calculateRightControlVisibility","calculateLeftControlVisibility","mutationObserver","MutationObserver","mutations","some","mutation","_a","attributeName","setTimeout","attributes","childList","subtree","disconnectedCallback","disconnect","show","panel","find","el","includeDisabled","slot","querySelector","assignedElements","filter","disabled","getAllPanels","body","active","abs","_b","_c","scrollWidth","emitEvents","newIndicator","shadowRoot","oldIndicator","activeTab","previousTab","map","name","sixTabHide","emit","sixTabShow","panels","setAttribute","getAttribute","render","h","part","ref","class","onClick","onKeyDown","exportparts","role"],"sources":["src/utils/animation.ts","src/components/six-tab-group/six-tab-group.scss?tag=six-tab-group&encapsulation=shadow","src/components/six-tab-group/six-tab-group.tsx"],"sourcesContent":["/**\n * Animates a given `element` from the position and dimension of `fromElement` to\n * its current position and dimension. Can be useful to implement the FLIP animation technique.\n *\n * @see {@link https://css-tricks.com/animating-layouts-with-the-flip-technique/} for details on the FLIP technique.\n *\n * @param {Element} element - The element to animate.\n * @param {Element} fromElement - The element representing the initial position and dimensions.\n * @param {KeyframeAnimationOptions} [options={ duration: 150, easing: 'ease', fill: 'both' }] - Optional animation parameters.\n *\n */\nexport function flipAnimate(\n element: Element,\n fromElement: Element,\n options: KeyframeAnimationOptions = {\n duration: 150,\n easing: 'ease',\n fill: 'both',\n }\n) {\n const dimensionsTo = fromElement.getBoundingClientRect();\n const dimensionsFrom = element.getBoundingClientRect();\n\n const deltaX = dimensionsTo.left - dimensionsFrom.left;\n const deltaY = dimensionsTo.top - dimensionsFrom.top;\n const deltaW = dimensionsTo.width / dimensionsFrom.width;\n const deltaH = dimensionsTo.height / dimensionsFrom.height;\n\n element.animate(\n [\n {\n transformOrigin: 'top left',\n transform: `translate(${deltaX}px, ${deltaY}px) scale(${deltaW}, ${deltaH})`,\n },\n {\n transformOrigin: 'top left',\n transform: 'none',\n },\n ],\n options\n );\n}\n","@import 'src/global/component';\n@import 'src/global/mixins/hide-scrollbar';\n\n:host {\n display: block;\n}\n\n.tab-group {\n display: flex;\n border: solid 1px transparent;\n border-radius: 0;\n\n .tab-group__tabs {\n display: flex;\n position: relative;\n }\n}\n\n.tab-group--has-scroll-controls .tab-group__nav-container {\n position: relative;\n padding: 0 var(--six-spacing-x-large);\n}\n\n.tab-group__scroll-button {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n top: 0;\n bottom: 0;\n width: var(--six-spacing-x-large);\n}\n\n.tab-group__scroll-button--left {\n left: 0;\n}\n\n.tab-group__scroll-button--right {\n right: 0;\n}\n\n// TOP\n.tab-group--top {\n flex-direction: column;\n\n .tab-group__nav-container {\n order: 1;\n }\n\n .tab-group__nav {\n display: flex;\n overflow-x: auto;\n @include hide-scrollbar();\n }\n\n .tab-group__tabs {\n flex: 1 1 auto;\n position: relative;\n flex-direction: row;\n }\n\n .tab-group__body {\n order: 2;\n }\n}\n\n// Bottom\n.tab-group--bottom {\n flex-direction: column;\n\n .tab-group__nav-container {\n order: 2;\n }\n\n .tab-group__nav {\n display: flex;\n overflow-x: auto;\n @include hide-scrollbar();\n }\n\n .tab-group__tabs {\n flex: 1 1 auto;\n position: relative;\n flex-direction: row;\n }\n\n .tab-group__body {\n order: 1;\n }\n}\n\n// Left\n\n.tab-group--left {\n flex-direction: row;\n\n .tab-group__nav-container {\n order: 1;\n }\n\n .tab-group__tabs {\n flex: 0 0 auto;\n flex-direction: column;\n }\n\n .tab-group__body {\n flex: 1 1 auto;\n order: 2;\n }\n}\n\n// Right\n.tab-group--right {\n flex-direction: row;\n\n .tab-group__nav-container {\n order: 2;\n }\n\n .tab-group__tabs {\n flex: 0 0 auto;\n flex-direction: column;\n }\n\n .tab-group__body {\n flex: 1 1 auto;\n order: 1;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { scrollIntoView } from '../../utils/scroll';\nimport { flipAnimate } from '../../utils/animation';\n\nexport interface SixTabShowPayload {\n name: string;\n}\n\nexport interface SixTabHidePayload {\n name: string;\n}\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot nav - Used for grouping tabs in the tab group.\n * @slot - Used for grouping tab panels in the tab group.\n *\n * @part base - The component's base wrapper.\n * @part nav - The tab group navigation container.\n * @part tabs - The container that wraps the slotted tabs.\n * @part active-tab-indicator - An element that displays the currently selected tab. This is a child of the tab's container.\n * @part body - The tab group body where tab panels are slotted in.\n * @part scroll-button - The previous and next scroll buttons that appear when tabs are scrollable.\n */\n@Component({\n tag: 'six-tab-group',\n styleUrl: 'six-tab-group.scss',\n shadow: true,\n})\nexport class SixTabGroup {\n private activeTab?: HTMLSixTabElement;\n private body?: HTMLElement;\n private mutationObserver?: MutationObserver;\n private nav?: HTMLElement;\n private resizeObserver?: ResizeObserver;\n private tabGroup?: HTMLElement;\n private tabs?: HTMLElement;\n\n @Element() host!: HTMLSixTabGroupElement;\n\n @State() hasLeftControl = false;\n @State() hasRightControl = false;\n\n /** The placement of the tabs. */\n @Prop() placement: 'top' | 'bottom' | 'left' | 'right' = 'top';\n\n /** Disables the scroll arrows that appear when tabs overflow. */\n @Prop() noScrollControls = false;\n\n @Watch('noScrollControls')\n handleNoScrollControlsChange() {\n this.updateScrollControls();\n }\n\n /** Emitted when a tab is shown. */\n @Event({ eventName: 'six-tab-show' }) sixTabShow!: EventEmitter<SixTabShowPayload>;\n\n /** Emitted when a tab is hidden. */\n @Event({ eventName: 'six-tab-hide' }) sixTabHide!: EventEmitter<SixTabHidePayload>;\n\n componentDidLoad() {\n if (this.tabGroup == null || this.nav == null) return;\n\n // Set initial tab state when the tabs first become visible\n const observer = new IntersectionObserver((entries, observer) => {\n if (entries[0].intersectionRatio > 0) {\n this.setAriaLabels();\n this.setActiveTab(this.getActiveTab() || this.getAllTabs()[0], false);\n observer.unobserve(entries[0].target);\n }\n });\n observer.observe(this.host);\n this.resizeObserver = new ResizeObserver(() => this.updateScrollControls());\n this.resizeObserver.observe(this.nav);\n requestAnimationFrame(() => this.updateScrollControls());\n\n this.nav.addEventListener('scroll', () => {\n if (this.nav == null) {\n return;\n }\n this.hasRightControl = this.calculateRightControlVisibility();\n\n this.hasLeftControl = this.calculateLeftControlVisibility();\n });\n\n // Update aria labels if the DOM changes\n this.mutationObserver = new MutationObserver((mutations) => {\n if (\n mutations.some((mutation) => {\n return !['aria-labelledby', 'aria-controls'].includes(mutation.attributeName ?? '');\n })\n ) {\n setTimeout(() => this.setAriaLabels());\n }\n });\n this.mutationObserver.observe(this.host, { attributes: true, childList: true, subtree: true });\n }\n\n disconnectedCallback() {\n if (this.mutationObserver == null || this.tabGroup == null || this.nav == null || this.resizeObserver == null) {\n return;\n }\n this.mutationObserver.disconnect();\n this.resizeObserver.unobserve(this.nav);\n }\n\n /** Shows the specified tab panel. */\n @Method()\n async show(panel: string) {\n const tabs = this.getAllTabs();\n const tab = tabs.find((el) => el.panel === panel);\n\n if (tab != null) {\n this.setActiveTab(tab);\n }\n }\n\n private getAllTabs(includeDisabled = false): HTMLSixTabElement[] {\n const slot = this.tabs?.querySelector('slot');\n if (slot == null) return [];\n\n return [...slot.assignedElements()].filter((el: Element) => {\n return includeDisabled\n ? el.tagName.toLowerCase() === 'six-tab'\n : el.tagName.toLowerCase() === 'six-tab' && !(el as HTMLSixTabElement).disabled;\n }) as [HTMLSixTabElement];\n }\n\n private getAllPanels(): HTMLSixTabPanelElement[] {\n const slot = this.body?.querySelector('slot');\n if (slot == null) return [];\n return [...slot.assignedElements()].filter((el: Element) => el.tagName.toLowerCase() === 'six-tab-panel') as [\n HTMLSixTabPanelElement,\n ];\n }\n\n private getActiveTab() {\n return this.getAllTabs().find((el) => el.active);\n }\n\n private handleClick = (event: MouseEvent) => {\n const target = event.target as HTMLElement;\n const tab = target.closest('six-tab');\n const tabGroup = tab?.closest('six-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this.host) {\n return false;\n }\n\n if (tab != null) {\n this.setActiveTab(tab);\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.nav == null) return;\n\n const target = event.target as HTMLElement;\n const tab = target.closest('six-tab');\n const tabGroup = tab?.closest('six-tab-group');\n\n // Ensure the target tab is in this tab group\n if (tabGroup !== this.host) {\n return false;\n }\n\n // Move focus left or right\n if (['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {\n const activeEl = document.activeElement as HTMLSixTabElement;\n\n if (activeEl && activeEl.tagName.toLowerCase() === 'six-tab') {\n const tabs = this.getAllTabs();\n let index = tabs.indexOf(activeEl);\n\n if (event.key === 'Home') {\n index = 0;\n } else if (event.key === 'End') {\n index = tabs.length - 1;\n } else if (event.key === 'ArrowLeft') {\n index = Math.max(0, index - 1);\n } else if (event.key === 'ArrowRight') {\n index = Math.min(tabs.length - 1, index + 1);\n }\n\n tabs[index].setFocus({ preventScroll: true });\n this.setActiveTab(tabs[index]);\n\n if (['top', 'bottom'].includes(this.placement)) {\n scrollIntoView(tabs[index], this.nav, 'horizontal');\n }\n\n event.preventDefault();\n }\n }\n };\n\n private handleScrollLeft = () => {\n if (this.nav == null) return;\n\n this.nav.scroll({\n left: this.nav.scrollLeft - this.nav.clientWidth,\n behavior: 'smooth',\n });\n };\n\n private handleScrollRight = () => {\n if (this.nav == null) return;\n\n this.nav.scroll({\n left: this.nav.scrollLeft + this.nav.clientWidth,\n behavior: 'smooth',\n });\n };\n\n private calculateRightControlVisibility() {\n if (this.nav == null) {\n return false;\n }\n return Math.abs(this.nav?.scrollLeft) + this.nav?.clientWidth < this.nav?.scrollWidth - 1;\n }\n\n private calculateLeftControlVisibility() {\n if (this.nav == null) {\n return false;\n }\n return Math.abs(this.nav?.scrollLeft) > 0;\n }\n\n private updateScrollControls() {\n if (this.nav == null) return;\n\n this.hasRightControl = this.noScrollControls\n ? false\n : ['top', 'bottom'].includes(this.placement) && this.calculateRightControlVisibility();\n\n this.hasLeftControl = this.noScrollControls\n ? false\n : ['top', 'bottom'].includes(this.placement) && this.calculateLeftControlVisibility();\n }\n\n private setActiveTab(tab: HTMLSixTabElement, emitEvents = true) {\n if (this.nav == null) return;\n\n const newIndicator = tab?.shadowRoot?.querySelector('.tab__indicator');\n const oldIndicator = this.getActiveTab()?.shadowRoot?.querySelector('.tab__indicator');\n\n if (oldIndicator != null && newIndicator != null) {\n flipAnimate(newIndicator, oldIndicator);\n }\n\n if (tab !== this.activeTab && !tab.disabled) {\n const previousTab = this.activeTab;\n this.activeTab = tab;\n\n // Sync tabs and panels\n this.getAllTabs().map((el) => (el.active = el === this.activeTab));\n this.getAllPanels().map((el) => (el.active = el.name === this.activeTab?.panel));\n\n if (['top', 'bottom'].includes(this.placement)) {\n scrollIntoView(this.activeTab, this.nav, 'horizontal');\n }\n\n // Emit events\n if (emitEvents) {\n if (previousTab != null) {\n this.sixTabHide.emit({ name: previousTab.panel });\n }\n\n this.sixTabShow.emit({ name: this.activeTab.panel });\n }\n }\n }\n\n private setAriaLabels() {\n const tabs = this.getAllTabs();\n const panels = this.getAllPanels();\n\n // Link each tab with its corresponding panel\n tabs.map((tab) => {\n const panel = panels.find((el) => el.name === tab.panel);\n if (panel != null) {\n tab.setAttribute('aria-controls', panel.getAttribute('id') ?? '');\n panel.setAttribute('aria-labelledby', tab.getAttribute('id') ?? '');\n }\n });\n }\n\n render() {\n return (\n <div\n part=\"base\"\n ref={(el) => (this.tabGroup = el)}\n class={{\n 'tab-group': true,\n\n // Placements\n 'tab-group--top': this.placement === 'top',\n 'tab-group--bottom': this.placement === 'bottom',\n 'tab-group--left': this.placement === 'left',\n 'tab-group--right': this.placement === 'right',\n\n 'tab-group--has-scroll-controls': this.hasRightControl || this.hasLeftControl,\n }}\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n >\n <div class=\"tab-group__nav-container\">\n {this.hasLeftControl && (\n <six-icon-button\n class=\"tab-group__scroll-button tab-group__scroll-button--left\"\n exportparts=\"base:scroll-button\"\n name=\"chevron_left\"\n onClick={this.handleScrollLeft}\n />\n )}\n <div ref={(el) => (this.nav = el)} key=\"nav\" part=\"nav\" class=\"tab-group__nav\">\n <div ref={(el) => (this.tabs = el)} part=\"tabs\" class=\"tab-group__tabs\" role=\"tablist\">\n <slot name=\"nav\" />\n </div>\n </div>\n {this.hasRightControl && (\n <six-icon-button\n class=\"tab-group__scroll-button tab-group__scroll-button--right\"\n exportparts=\"base:scroll-button\"\n name=\"chevron_right\"\n onClick={this.handleScrollRight}\n />\n )}\n </div>\n\n <div ref={(el) => (this.body = el)} part=\"body\" class=\"tab-group__body\">\n <slot />\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}