@six-group/ui-library 3.0.0-beta.1.7 → 4.0.0-beta.0

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 (1002) hide show
  1. package/dist/cjs/{event-listeners-4a8d66d5.js → event-listeners-74715e62.js} +40 -38
  2. package/dist/cjs/event-listeners-74715e62.js.map +1 -0
  3. package/dist/cjs/{execution-control-3bc9c7c4.js → execution-control-46f388e0.js} +37 -35
  4. package/dist/cjs/execution-control-46f388e0.js.map +1 -0
  5. package/dist/cjs/{focus-visible-b08d956f.js → focus-visible-0b352c74.js} +42 -40
  6. package/dist/cjs/focus-visible-0b352c74.js.map +1 -0
  7. package/dist/cjs/{form-control-9e4dffd1.js → form-control-8e2ae807.js} +28 -26
  8. package/dist/cjs/form-control-8e2ae807.js.map +1 -0
  9. package/dist/cjs/{index-341df120.js → index-b3257a77.js} +603 -279
  10. package/dist/cjs/index-b3257a77.js.map +1 -0
  11. package/dist/cjs/index.cjs.js +2 -0
  12. package/dist/cjs/index.cjs.js.map +1 -0
  13. package/dist/cjs/loader.cjs.js +6 -3
  14. package/dist/cjs/loader.cjs.js.map +1 -0
  15. package/dist/cjs/{modal-a9679ddf.js → modal-48d42228.js} +43 -41
  16. package/dist/cjs/modal-48d42228.js.map +1 -0
  17. package/dist/cjs/{popover-e3781f5a.js → popover-f743f62b.js} +100 -99
  18. package/dist/cjs/popover-f743f62b.js.map +1 -0
  19. package/dist/cjs/{scroll-5b8676ba.js → scroll-76e6f5d7.js} +59 -57
  20. package/dist/cjs/scroll-76e6f5d7.js.map +1 -0
  21. package/dist/cjs/set-attributes_2.cjs.entry.js +58 -58
  22. package/dist/cjs/set-attributes_2.cjs.entry.js.map +1 -0
  23. package/dist/cjs/six-alert.cjs.entry.js +127 -132
  24. package/dist/cjs/six-alert.cjs.entry.js.map +1 -0
  25. package/dist/cjs/six-avatar.cjs.entry.js +27 -29
  26. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -0
  27. package/dist/cjs/six-badge.cjs.entry.js +26 -27
  28. package/dist/cjs/six-badge.cjs.entry.js.map +1 -0
  29. package/dist/cjs/six-button.cjs.entry.js +96 -98
  30. package/dist/cjs/six-button.cjs.entry.js.map +1 -0
  31. package/dist/cjs/six-card.cjs.entry.js +11 -9
  32. package/dist/cjs/six-card.cjs.entry.js.map +1 -0
  33. package/dist/cjs/six-checkbox.cjs.entry.js +149 -153
  34. package/dist/cjs/six-checkbox.cjs.entry.js.map +1 -0
  35. package/dist/cjs/six-datepicker.cjs.entry.js +1137 -1190
  36. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -0
  37. package/dist/cjs/six-details.cjs.entry.js +137 -140
  38. package/dist/cjs/six-details.cjs.entry.js.map +1 -0
  39. package/dist/cjs/six-dialog.cjs.entry.js +146 -153
  40. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -0
  41. package/dist/cjs/six-drawer.cjs.entry.js +163 -175
  42. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -0
  43. package/dist/cjs/six-dropdown_3.cjs.entry.js +682 -729
  44. package/dist/cjs/six-dropdown_3.cjs.entry.js.map +1 -0
  45. package/dist/cjs/six-error-page.cjs.entry.js +98 -95
  46. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -0
  47. package/dist/cjs/six-file-list-item.cjs.entry.js +37 -39
  48. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -0
  49. package/dist/cjs/six-file-list.cjs.entry.js +11 -9
  50. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -0
  51. package/dist/cjs/six-file-upload.cjs.entry.js +110 -97
  52. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -0
  53. package/dist/cjs/six-footer.cjs.entry.js +11 -9
  54. package/dist/cjs/six-footer.cjs.entry.js.map +1 -0
  55. package/dist/cjs/six-form.cjs.entry.js +221 -220
  56. package/dist/cjs/six-form.cjs.entry.js.map +1 -0
  57. package/dist/cjs/six-group-label.cjs.entry.js +46 -47
  58. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -0
  59. package/dist/cjs/six-header.cjs.entry.js +150 -150
  60. package/dist/cjs/six-header.cjs.entry.js.map +1 -0
  61. package/dist/cjs/six-icon-button.cjs.entry.js +37 -34
  62. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -0
  63. package/dist/cjs/six-icon.cjs.entry.js +25 -25
  64. package/dist/cjs/six-icon.cjs.entry.js.map +1 -0
  65. package/dist/cjs/six-input.cjs.entry.js +229 -231
  66. package/dist/cjs/six-input.cjs.entry.js.map +1 -0
  67. package/dist/cjs/six-item-picker.cjs.entry.js +347 -362
  68. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -0
  69. package/dist/cjs/six-language-switcher.cjs.entry.js +55 -53
  70. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -0
  71. package/dist/cjs/six-layout-grid.cjs.entry.js +23 -20
  72. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -0
  73. package/dist/cjs/six-main-container.cjs.entry.js +13 -12
  74. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -0
  75. package/dist/cjs/six-menu-divider.cjs.entry.js +11 -9
  76. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -0
  77. package/dist/cjs/six-menu-label.cjs.entry.js +11 -9
  78. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -0
  79. package/dist/cjs/six-picto.cjs.entry.js +15 -16
  80. package/dist/cjs/six-picto.cjs.entry.js.map +1 -0
  81. package/dist/cjs/six-progress-bar.cjs.entry.js +18 -18
  82. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -0
  83. package/dist/cjs/six-progress-ring.cjs.entry.js +33 -32
  84. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -0
  85. package/dist/cjs/six-radio.cjs.entry.js +120 -122
  86. package/dist/cjs/six-radio.cjs.entry.js.map +1 -0
  87. package/dist/cjs/six-range.cjs.entry.js +188 -199
  88. package/dist/cjs/six-range.cjs.entry.js.map +1 -0
  89. package/dist/cjs/six-root.cjs.entry.js +34 -35
  90. package/dist/cjs/six-root.cjs.entry.js.map +1 -0
  91. package/dist/cjs/six-search-field.cjs.entry.js +43 -44
  92. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -0
  93. package/dist/cjs/six-select.cjs.entry.js +422 -448
  94. package/dist/cjs/six-select.cjs.entry.js.map +1 -0
  95. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +44 -43
  96. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -0
  97. package/dist/cjs/six-sidebar-item.cjs.entry.js +18 -19
  98. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -0
  99. package/dist/cjs/six-sidebar.cjs.entry.js +170 -172
  100. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -0
  101. package/dist/cjs/six-spinner.cjs.entry.js +18 -17
  102. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -0
  103. package/dist/cjs/six-switch.cjs.entry.js +101 -101
  104. package/dist/cjs/six-switch.cjs.entry.js.map +1 -0
  105. package/dist/cjs/six-tab-group.cjs.entry.js +227 -227
  106. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -0
  107. package/dist/cjs/six-tab-panel.cjs.entry.js +18 -18
  108. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -0
  109. package/dist/cjs/six-tab.cjs.entry.js +41 -43
  110. package/dist/cjs/six-tab.cjs.entry.js.map +1 -0
  111. package/dist/cjs/six-table-cell_4.cjs.entry.js +77 -72
  112. package/dist/cjs/six-table-cell_4.cjs.entry.js.map +1 -0
  113. package/dist/cjs/six-table.cjs.entry.js +145 -146
  114. package/dist/cjs/six-table.cjs.entry.js.map +1 -0
  115. package/dist/cjs/six-tag.cjs.entry.js +39 -41
  116. package/dist/cjs/six-tag.cjs.entry.js.map +1 -0
  117. package/dist/cjs/six-textarea.cjs.entry.js +209 -212
  118. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -0
  119. package/dist/cjs/six-tile.cjs.entry.js +87 -90
  120. package/dist/cjs/six-tile.cjs.entry.js.map +1 -0
  121. package/dist/cjs/six-timepicker.cjs.entry.js +441 -490
  122. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -0
  123. package/dist/cjs/{six-timepicker.types-c58cc88b.js → six-timepicker.types-c19ebff3.js} +45 -43
  124. package/dist/cjs/six-timepicker.types-c19ebff3.js.map +1 -0
  125. package/dist/cjs/six-tooltip.cjs.entry.js +163 -173
  126. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -0
  127. package/dist/cjs/{slot-8abe833c.js → slot-ad537f24.js} +44 -42
  128. package/dist/cjs/slot-ad537f24.js.map +1 -0
  129. package/dist/cjs/{types-0c28e484.js → types-64878648.js} +14 -12
  130. package/dist/cjs/types-64878648.js.map +1 -0
  131. package/dist/cjs/ui-library.cjs.js +12 -3
  132. package/dist/cjs/ui-library.cjs.js.map +1 -0
  133. package/dist/collection/collection-manifest.json +2 -2
  134. package/dist/collection/components/six-alert/six-alert.js +368 -366
  135. package/dist/collection/components/six-alert/six-alert.js.map +1 -0
  136. package/dist/collection/components/six-avatar/six-avatar.js +131 -131
  137. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -0
  138. package/dist/collection/components/six-badge/six-badge.js +104 -101
  139. package/dist/collection/components/six-badge/six-badge.js.map +1 -0
  140. package/dist/collection/components/six-button/six-button.js +464 -466
  141. package/dist/collection/components/six-button/six-button.js.map +1 -0
  142. package/dist/collection/components/six-card/six-card.js +25 -21
  143. package/dist/collection/components/six-card/six-card.js.map +1 -0
  144. package/dist/collection/components/six-checkbox/six-checkbox.js +541 -550
  145. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -0
  146. package/dist/collection/components/six-datepicker/components/day-selection.js +12 -13
  147. package/dist/collection/components/six-datepicker/components/day-selection.js.map +1 -0
  148. package/dist/collection/components/six-datepicker/components/month-selection.js +12 -12
  149. package/dist/collection/components/six-datepicker/components/month-selection.js.map +1 -0
  150. package/dist/collection/components/six-datepicker/components/year-selection.js +10 -10
  151. package/dist/collection/components/six-datepicker/components/year-selection.js.map +1 -0
  152. package/dist/collection/components/six-datepicker/six-date-formats.js +24 -23
  153. package/dist/collection/components/six-datepicker/six-date-formats.js.map +1 -0
  154. package/dist/collection/components/six-datepicker/six-datepicker.js +1271 -1343
  155. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -0
  156. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js +17 -16
  157. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js.map +1 -0
  158. package/dist/collection/components/six-details/six-details.js +434 -432
  159. package/dist/collection/components/six-details/six-details.js.map +1 -0
  160. package/dist/collection/components/six-dialog/six-dialog.js +397 -401
  161. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -0
  162. package/dist/collection/components/six-drawer/six-drawer.js +449 -458
  163. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -0
  164. package/dist/collection/components/six-dropdown/six-dropdown.js +919 -939
  165. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -0
  166. package/dist/collection/components/six-error-page/six-error-page.js +203 -199
  167. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -0
  168. package/dist/collection/components/six-file-list/six-file-list.js +24 -20
  169. package/dist/collection/components/six-file-list/six-file-list.js.map +1 -0
  170. package/dist/collection/components/six-file-list-item/six-file-list-item.js +204 -203
  171. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -0
  172. package/dist/collection/components/six-file-upload/six-file-upload.js +307 -272
  173. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -0
  174. package/dist/collection/components/six-footer/six-footer.js +25 -21
  175. package/dist/collection/components/six-footer/six-footer.js.map +1 -0
  176. package/dist/collection/components/six-form/six-form.js +419 -408
  177. package/dist/collection/components/six-form/six-form.js.map +1 -0
  178. package/dist/collection/components/six-group-label/six-group-label.js +173 -166
  179. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -0
  180. package/dist/collection/components/six-header/six-header.js +412 -420
  181. package/dist/collection/components/six-header/six-header.js.map +1 -0
  182. package/dist/collection/components/six-icon/six-icon.js +81 -77
  183. package/dist/collection/components/six-icon/six-icon.js.map +1 -0
  184. package/dist/collection/components/six-icon-button/six-icon-button.js +146 -142
  185. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -0
  186. package/dist/collection/components/six-input/six-input.js +1140 -1141
  187. package/dist/collection/components/six-input/six-input.js.map +1 -0
  188. package/dist/collection/components/six-item-picker/six-item-picker.js +681 -688
  189. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -0
  190. package/dist/collection/components/six-item-picker/types.js +14 -13
  191. package/dist/collection/components/six-item-picker/types.js.map +1 -0
  192. package/dist/collection/components/six-language-switcher/six-language-switcher.js +139 -128
  193. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -0
  194. package/dist/collection/components/six-layout-grid/six-layout-grid.js +63 -52
  195. package/dist/collection/components/six-layout-grid/six-layout-grid.js.map +1 -0
  196. package/dist/collection/components/six-main-container/six-main-container.js +55 -53
  197. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -0
  198. package/dist/collection/components/six-menu/six-menu.js +398 -406
  199. package/dist/collection/components/six-menu/six-menu.js.map +1 -0
  200. package/dist/collection/components/six-menu-divider/six-menu-divider.js +27 -22
  201. package/dist/collection/components/six-menu-divider/six-menu-divider.js.map +1 -0
  202. package/dist/collection/components/six-menu-item/six-menu-item.js +198 -177
  203. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -0
  204. package/dist/collection/components/six-menu-label/six-menu-label.js +29 -25
  205. package/dist/collection/components/six-menu-label/six-menu-label.js.map +1 -0
  206. package/dist/collection/components/six-picto/six-picto.js +53 -50
  207. package/dist/collection/components/six-picto/six-picto.js.map +1 -0
  208. package/dist/collection/components/six-progress-bar/six-progress-bar.js +80 -77
  209. package/dist/collection/components/six-progress-bar/six-progress-bar.js.map +1 -0
  210. package/dist/collection/components/six-progress-ring/six-progress-ring.js +114 -111
  211. package/dist/collection/components/six-progress-ring/six-progress-ring.js.map +1 -0
  212. package/dist/collection/components/six-radio/six-radio.js +412 -410
  213. package/dist/collection/components/six-radio/six-radio.js.map +1 -0
  214. package/dist/collection/components/six-range/six-range.js +619 -620
  215. package/dist/collection/components/six-range/six-range.js.map +1 -0
  216. package/dist/collection/components/six-root/six-root.js +165 -167
  217. package/dist/collection/components/six-root/six-root.js.map +1 -0
  218. package/dist/collection/components/six-search-field/six-search-field.js +177 -171
  219. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -0
  220. package/dist/collection/components/six-select/six-select.css +1 -2
  221. package/dist/collection/components/six-select/six-select.js +1081 -1105
  222. package/dist/collection/components/six-select/six-select.js.map +1 -0
  223. package/dist/collection/components/six-sidebar/six-sidebar.js +464 -455
  224. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -0
  225. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +92 -89
  226. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js.map +1 -0
  227. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +159 -158
  228. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -0
  229. package/dist/collection/components/six-spinner/six-spinner.js +58 -55
  230. package/dist/collection/components/six-spinner/six-spinner.js.map +1 -0
  231. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js +49 -46
  232. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js.map +1 -0
  233. package/dist/collection/components/six-switch/six-switch.js +401 -393
  234. package/dist/collection/components/six-switch/six-switch.js.map +1 -0
  235. package/dist/collection/components/six-tab/six-tab.js +202 -198
  236. package/dist/collection/components/six-tab/six-tab.js.map +1 -0
  237. package/dist/collection/components/six-tab-group/six-tab-group.js +368 -362
  238. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -0
  239. package/dist/collection/components/six-tab-panel/six-tab-panel.js +78 -75
  240. package/dist/collection/components/six-tab-panel/six-tab-panel.js.map +1 -0
  241. package/dist/collection/components/six-table/six-table.js +219 -209
  242. package/dist/collection/components/six-table/six-table.js.map +1 -0
  243. package/dist/collection/components/six-table/test/helpers.js +14 -13
  244. package/dist/collection/components/six-table/test/helpers.js.map +1 -0
  245. package/dist/collection/components/six-table/types.js +9 -8
  246. package/dist/collection/components/six-table/types.js.map +1 -0
  247. package/dist/collection/components/six-table/util/filter-by.js +34 -34
  248. package/dist/collection/components/six-table/util/filter-by.js.map +1 -0
  249. package/dist/collection/components/six-table/util/from-data.js +32 -33
  250. package/dist/collection/components/six-table/util/from-data.js.map +1 -0
  251. package/dist/collection/components/six-table/util/is.js +4 -3
  252. package/dist/collection/components/six-table/util/is.js.map +1 -0
  253. package/dist/collection/components/six-table/util/quick-filter-by.js +14 -13
  254. package/dist/collection/components/six-table/util/quick-filter-by.js.map +1 -0
  255. package/dist/collection/components/six-table/util/sort-by.js +25 -25
  256. package/dist/collection/components/six-table/util/sort-by.js.map +1 -0
  257. package/dist/collection/components/six-table-cell/six-table-cell.js +25 -21
  258. package/dist/collection/components/six-table-cell/six-table-cell.js.map +1 -0
  259. package/dist/collection/components/six-table-header/six-table-header.js +25 -21
  260. package/dist/collection/components/six-table-header/six-table-header.js.map +1 -0
  261. package/dist/collection/components/six-table-header-cell/get-next-state.js +7 -7
  262. package/dist/collection/components/six-table-header-cell/get-next-state.js.map +1 -0
  263. package/dist/collection/components/six-table-header-cell/icons.js +12 -12
  264. package/dist/collection/components/six-table-header-cell/icons.js.map +1 -0
  265. package/dist/collection/components/six-table-header-cell/six-table-header-cell.js +179 -174
  266. package/dist/collection/components/six-table-header-cell/six-table-header-cell.js.map +1 -0
  267. package/dist/collection/components/six-table-header-cell/types.js +2 -13
  268. package/dist/collection/components/six-table-header-cell/types.js.map +1 -0
  269. package/dist/collection/components/six-table-header-cell/util/create-model.js +7 -6
  270. package/dist/collection/components/six-table-header-cell/util/create-model.js.map +1 -0
  271. package/dist/collection/components/six-table-header-cell/util/get-next-state.js +7 -7
  272. package/dist/collection/components/six-table-header-cell/util/get-next-state.js.map +1 -0
  273. package/dist/collection/components/six-table-row/six-table-row.js +25 -21
  274. package/dist/collection/components/six-table-row/six-table-row.js.map +1 -0
  275. package/dist/collection/components/six-tag/six-tag.js +159 -157
  276. package/dist/collection/components/six-tag/six-tag.js.map +1 -0
  277. package/dist/collection/components/six-textarea/six-textarea.js +920 -912
  278. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -0
  279. package/dist/collection/components/six-tile/six-tile.js +314 -315
  280. package/dist/collection/components/six-tile/six-tile.js.map +1 -0
  281. package/dist/collection/components/six-timepicker/six-time-format.js +15 -14
  282. package/dist/collection/components/six-timepicker/six-time-format.js.map +1 -0
  283. package/dist/collection/components/six-timepicker/six-timepicker.js +936 -980
  284. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -0
  285. package/dist/collection/components/six-timepicker/six-timepicker.types.js +41 -40
  286. package/dist/collection/components/six-timepicker/six-timepicker.types.js.map +1 -0
  287. package/dist/collection/components/six-tooltip/six-tooltip.js +432 -435
  288. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -0
  289. package/dist/collection/functional-components/form-control/form-control.js +23 -28
  290. package/dist/collection/functional-components/form-control/form-control.js.map +1 -0
  291. package/dist/collection/index.js +2 -1
  292. package/dist/collection/index.js.map +1 -0
  293. package/dist/collection/testUtil/delay.js +4 -3
  294. package/dist/collection/testUtil/delay.js.map +1 -0
  295. package/dist/collection/utils/as-array.js +2 -1
  296. package/dist/collection/utils/as-array.js.map +1 -0
  297. package/dist/collection/utils/date-util.js +713 -712
  298. package/dist/collection/utils/date-util.js.map +1 -0
  299. package/dist/collection/utils/event-listeners.js +40 -39
  300. package/dist/collection/utils/event-listeners.js.map +1 -0
  301. package/dist/collection/utils/execution-control.js +39 -38
  302. package/dist/collection/utils/execution-control.js.map +1 -0
  303. package/dist/collection/utils/focus-visible.js +42 -41
  304. package/dist/collection/utils/focus-visible.js.map +1 -0
  305. package/dist/collection/utils/matchers.js +3 -2
  306. package/dist/collection/utils/matchers.js.map +1 -0
  307. package/dist/collection/utils/modal.js +29 -28
  308. package/dist/collection/utils/modal.js.map +1 -0
  309. package/dist/collection/utils/offset.js +14 -13
  310. package/dist/collection/utils/offset.js.map +1 -0
  311. package/dist/collection/utils/popover.js +114 -113
  312. package/dist/collection/utils/popover.js.map +1 -0
  313. package/dist/collection/utils/scroll.js +48 -47
  314. package/dist/collection/utils/scroll.js.map +1 -0
  315. package/dist/collection/utils/slot.js +60 -59
  316. package/dist/collection/utils/slot.js.map +1 -0
  317. package/dist/collection/utils/support.js +16 -15
  318. package/dist/collection/utils/support.js.map +1 -0
  319. package/dist/collection/utils/tabbable.js +23 -22
  320. package/dist/collection/utils/tabbable.js.map +1 -0
  321. package/dist/collection/utils/testing.js +39 -38
  322. package/dist/collection/utils/testing.js.map +1 -0
  323. package/dist/collection/utils/time.util.js +75 -74
  324. package/dist/collection/utils/time.util.js.map +1 -0
  325. package/dist/collection/utils/type-check.js +6 -5
  326. package/dist/collection/utils/type-check.js.map +1 -0
  327. package/dist/collection/utils/types.js +2 -1
  328. package/dist/collection/utils/types.js.map +1 -0
  329. package/dist/collection/wrappers/set-attributes/set-attributes.js +72 -68
  330. package/dist/collection/wrappers/set-attributes/set-attributes.js.map +1 -0
  331. package/dist/{esm/event-listeners-1bef934e.js → components/event-listeners.js} +40 -38
  332. package/dist/components/event-listeners.js.map +1 -0
  333. package/dist/{esm/execution-control-235f5126.js → components/execution-control.js} +37 -35
  334. package/dist/components/execution-control.js.map +1 -0
  335. package/dist/{esm/focus-visible-4b7946aa.js → components/focus-visible.js} +42 -40
  336. package/dist/components/focus-visible.js.map +1 -0
  337. package/dist/components/form-control.js +32 -0
  338. package/dist/components/form-control.js.map +1 -0
  339. package/dist/components/index.d.ts +39 -0
  340. package/dist/components/index.js +132 -0
  341. package/dist/components/index.js.map +1 -0
  342. package/dist/{esm/modal-e5709f6b.js → components/modal.js} +43 -41
  343. package/dist/components/modal.js.map +1 -0
  344. package/dist/{esm/popover-5a51f84d.js → components/popover.js} +100 -99
  345. package/dist/components/popover.js.map +1 -0
  346. package/dist/{esm/scroll-99b214c2.js → components/scroll.js} +59 -57
  347. package/dist/components/scroll.js.map +1 -0
  348. package/dist/components/set-attributes.d.ts +11 -0
  349. package/dist/components/set-attributes.js +8 -0
  350. package/dist/components/set-attributes.js.map +1 -0
  351. package/dist/components/set-attributes2.js +69 -0
  352. package/dist/components/set-attributes2.js.map +1 -0
  353. package/dist/components/six-alert.d.ts +11 -0
  354. package/dist/components/six-alert.js +172 -0
  355. package/dist/components/six-alert.js.map +1 -0
  356. package/dist/components/six-avatar.d.ts +11 -0
  357. package/dist/components/six-avatar.js +63 -0
  358. package/dist/components/six-avatar.js.map +1 -0
  359. package/dist/components/six-badge.d.ts +11 -0
  360. package/dist/components/six-badge.js +54 -0
  361. package/dist/components/six-badge.js.map +1 -0
  362. package/dist/components/six-button.d.ts +11 -0
  363. package/dist/components/six-button.js +147 -0
  364. package/dist/components/six-button.js.map +1 -0
  365. package/dist/components/six-card.d.ts +11 -0
  366. package/dist/components/six-card.js +35 -0
  367. package/dist/components/six-card.js.map +1 -0
  368. package/dist/components/six-checkbox.d.ts +11 -0
  369. package/dist/components/six-checkbox.js +193 -0
  370. package/dist/components/six-checkbox.js.map +1 -0
  371. package/dist/components/six-datepicker.d.ts +11 -0
  372. package/dist/components/six-datepicker.js +1229 -0
  373. package/dist/components/six-datepicker.js.map +1 -0
  374. package/dist/components/six-details.d.ts +11 -0
  375. package/dist/components/six-details.js +8 -0
  376. package/dist/components/six-details.js.map +1 -0
  377. package/dist/components/six-details2.js +176 -0
  378. package/dist/components/six-details2.js.map +1 -0
  379. package/dist/components/six-dialog.d.ts +11 -0
  380. package/dist/components/six-dialog.js +190 -0
  381. package/dist/components/six-dialog.js.map +1 -0
  382. package/dist/components/six-drawer.d.ts +11 -0
  383. package/dist/components/six-drawer.js +209 -0
  384. package/dist/components/six-drawer.js.map +1 -0
  385. package/dist/components/six-dropdown.d.ts +11 -0
  386. package/dist/components/six-dropdown.js +8 -0
  387. package/dist/components/six-dropdown.js.map +1 -0
  388. package/dist/components/six-dropdown2.js +499 -0
  389. package/dist/components/six-dropdown2.js.map +1 -0
  390. package/dist/components/six-error-page.d.ts +11 -0
  391. package/dist/components/six-error-page.js +134 -0
  392. package/dist/components/six-error-page.js.map +1 -0
  393. package/dist/components/six-file-list-item.d.ts +11 -0
  394. package/dist/components/six-file-list-item.js +74 -0
  395. package/dist/components/six-file-list-item.js.map +1 -0
  396. package/dist/components/six-file-list.d.ts +11 -0
  397. package/dist/components/six-file-list.js +35 -0
  398. package/dist/components/six-file-list.js.map +1 -0
  399. package/dist/components/six-file-upload.d.ts +11 -0
  400. package/dist/components/six-file-upload.js +147 -0
  401. package/dist/components/six-file-upload.js.map +1 -0
  402. package/dist/components/six-footer.d.ts +11 -0
  403. package/dist/components/six-footer.js +35 -0
  404. package/dist/components/six-footer.js.map +1 -0
  405. package/dist/components/six-form.d.ts +11 -0
  406. package/dist/components/six-form.js +252 -0
  407. package/dist/components/six-form.js.map +1 -0
  408. package/dist/components/six-group-label.d.ts +11 -0
  409. package/dist/components/six-group-label.js +78 -0
  410. package/dist/components/six-group-label.js.map +1 -0
  411. package/dist/components/six-header.d.ts +11 -0
  412. package/dist/components/six-header.js +219 -0
  413. package/dist/components/six-header.js.map +1 -0
  414. package/dist/components/six-icon-button.d.ts +11 -0
  415. package/dist/components/six-icon-button.js +8 -0
  416. package/dist/components/six-icon-button.js.map +1 -0
  417. package/dist/components/six-icon-button2.js +70 -0
  418. package/dist/components/six-icon-button2.js.map +1 -0
  419. package/dist/components/six-icon.d.ts +11 -0
  420. package/dist/components/six-icon.js +8 -0
  421. package/dist/components/six-icon.js.map +1 -0
  422. package/dist/components/six-icon2.js +49 -0
  423. package/dist/components/six-icon2.js.map +1 -0
  424. package/dist/components/six-input.d.ts +11 -0
  425. package/dist/components/six-input.js +8 -0
  426. package/dist/components/six-input.js.map +1 -0
  427. package/dist/components/six-input2.js +303 -0
  428. package/dist/components/six-input2.js.map +1 -0
  429. package/dist/components/six-item-picker.d.ts +11 -0
  430. package/dist/components/six-item-picker.js +8 -0
  431. package/dist/components/six-item-picker.js.map +1 -0
  432. package/dist/components/six-item-picker2.js +404 -0
  433. package/dist/components/six-item-picker2.js.map +1 -0
  434. package/dist/components/six-language-switcher.d.ts +11 -0
  435. package/dist/components/six-language-switcher.js +82 -0
  436. package/dist/components/six-language-switcher.js.map +1 -0
  437. package/dist/components/six-layout-grid.d.ts +11 -0
  438. package/dist/components/six-layout-grid.js +49 -0
  439. package/dist/components/six-layout-grid.js.map +1 -0
  440. package/dist/components/six-main-container.d.ts +11 -0
  441. package/dist/components/six-main-container.js +39 -0
  442. package/dist/components/six-main-container.js.map +1 -0
  443. package/dist/components/six-menu-divider.d.ts +11 -0
  444. package/dist/components/six-menu-divider.js +35 -0
  445. package/dist/components/six-menu-divider.js.map +1 -0
  446. package/dist/components/six-menu-item.d.ts +11 -0
  447. package/dist/components/six-menu-item.js +8 -0
  448. package/dist/components/six-menu-item.js.map +1 -0
  449. package/dist/components/six-menu-item2.js +86 -0
  450. package/dist/components/six-menu-item2.js.map +1 -0
  451. package/dist/components/six-menu-label.d.ts +11 -0
  452. package/dist/components/six-menu-label.js +35 -0
  453. package/dist/components/six-menu-label.js.map +1 -0
  454. package/dist/components/six-menu.d.ts +11 -0
  455. package/dist/components/six-menu.js +8 -0
  456. package/dist/components/six-menu.js.map +1 -0
  457. package/dist/components/six-menu2.js +252 -0
  458. package/dist/components/six-menu2.js.map +1 -0
  459. package/dist/components/six-picto.d.ts +11 -0
  460. package/dist/components/six-picto.js +8 -0
  461. package/dist/components/six-picto.js.map +1 -0
  462. package/dist/{custom-elements/index.js → components/six-picto2.js} +30 -9749
  463. package/dist/components/six-picto2.js.map +1 -0
  464. package/dist/components/six-progress-bar.d.ts +11 -0
  465. package/dist/components/six-progress-bar.js +45 -0
  466. package/dist/components/six-progress-bar.js.map +1 -0
  467. package/dist/components/six-progress-ring.d.ts +11 -0
  468. package/dist/components/six-progress-ring.js +61 -0
  469. package/dist/components/six-progress-ring.js.map +1 -0
  470. package/dist/components/six-radio.d.ts +11 -0
  471. package/dist/components/six-radio.js +157 -0
  472. package/dist/components/six-radio.js.map +1 -0
  473. package/dist/components/six-range.d.ts +11 -0
  474. package/dist/components/six-range.js +236 -0
  475. package/dist/components/six-range.js.map +1 -0
  476. package/dist/components/six-root.d.ts +11 -0
  477. package/dist/components/six-root.js +82 -0
  478. package/dist/components/six-root.js.map +1 -0
  479. package/dist/components/six-search-field.d.ts +11 -0
  480. package/dist/components/six-search-field.js +85 -0
  481. package/dist/components/six-search-field.js.map +1 -0
  482. package/dist/components/six-select.d.ts +11 -0
  483. package/dist/components/six-select.js +526 -0
  484. package/dist/components/six-select.js.map +1 -0
  485. package/dist/components/six-sidebar-item-group.d.ts +11 -0
  486. package/dist/components/six-sidebar-item-group.js +88 -0
  487. package/dist/components/six-sidebar-item-group.js.map +1 -0
  488. package/dist/components/six-sidebar-item.d.ts +11 -0
  489. package/dist/components/six-sidebar-item.js +46 -0
  490. package/dist/components/six-sidebar-item.js.map +1 -0
  491. package/dist/components/six-sidebar.d.ts +11 -0
  492. package/dist/components/six-sidebar.js +205 -0
  493. package/dist/components/six-sidebar.js.map +1 -0
  494. package/dist/components/six-spinner.d.ts +11 -0
  495. package/dist/components/six-spinner.js +8 -0
  496. package/dist/components/six-spinner.js.map +1 -0
  497. package/dist/components/six-spinner2.js +41 -0
  498. package/dist/components/six-spinner2.js.map +1 -0
  499. package/dist/components/six-stage-indicator.d.ts +11 -0
  500. package/dist/components/six-stage-indicator.js +8 -0
  501. package/dist/components/six-stage-indicator.js.map +1 -0
  502. package/dist/components/six-stage-indicator2.js +41 -0
  503. package/dist/components/six-stage-indicator2.js.map +1 -0
  504. package/dist/components/six-switch.d.ts +11 -0
  505. package/dist/components/six-switch.js +139 -0
  506. package/dist/components/six-switch.js.map +1 -0
  507. package/dist/components/six-tab-group.d.ts +11 -0
  508. package/dist/components/six-tab-group.js +268 -0
  509. package/dist/components/six-tab-group.js.map +1 -0
  510. package/dist/components/six-tab-panel.d.ts +11 -0
  511. package/dist/components/six-tab-panel.js +45 -0
  512. package/dist/components/six-tab-panel.js.map +1 -0
  513. package/dist/components/six-tab.d.ts +11 -0
  514. package/dist/components/six-tab.js +84 -0
  515. package/dist/components/six-tab.js.map +1 -0
  516. package/dist/components/six-table-cell.d.ts +11 -0
  517. package/dist/components/six-table-cell.js +8 -0
  518. package/dist/components/six-table-cell.js.map +1 -0
  519. package/dist/components/six-table-cell2.js +32 -0
  520. package/dist/components/six-table-cell2.js.map +1 -0
  521. package/dist/components/six-table-header-cell.d.ts +11 -0
  522. package/dist/components/six-table-header-cell.js +8 -0
  523. package/dist/components/six-table-header-cell.js.map +1 -0
  524. package/dist/components/six-table-header-cell2.js +120 -0
  525. package/dist/components/six-table-header-cell2.js.map +1 -0
  526. package/dist/components/six-table-header.d.ts +11 -0
  527. package/dist/components/six-table-header.js +8 -0
  528. package/dist/components/six-table-header.js.map +1 -0
  529. package/dist/components/six-table-header2.js +32 -0
  530. package/dist/components/six-table-header2.js.map +1 -0
  531. package/dist/components/six-table-row.d.ts +11 -0
  532. package/dist/components/six-table-row.js +8 -0
  533. package/dist/components/six-table-row.js.map +1 -0
  534. package/dist/components/six-table-row2.js +32 -0
  535. package/dist/components/six-table-row2.js.map +1 -0
  536. package/dist/components/six-table.d.ts +11 -0
  537. package/dist/components/six-table.js +252 -0
  538. package/dist/components/six-table.js.map +1 -0
  539. package/dist/components/six-tag.d.ts +11 -0
  540. package/dist/components/six-tag.js +8 -0
  541. package/dist/components/six-tag.js.map +1 -0
  542. package/dist/components/six-tag2.js +77 -0
  543. package/dist/components/six-tag2.js.map +1 -0
  544. package/dist/components/six-textarea.d.ts +11 -0
  545. package/dist/components/six-textarea.js +269 -0
  546. package/dist/components/six-textarea.js.map +1 -0
  547. package/dist/components/six-tile.d.ts +11 -0
  548. package/dist/components/six-tile.js +142 -0
  549. package/dist/components/six-tile.js.map +1 -0
  550. package/dist/components/six-timepicker.d.ts +11 -0
  551. package/dist/components/six-timepicker.js +8 -0
  552. package/dist/components/six-timepicker.js.map +1 -0
  553. package/dist/components/six-timepicker2.js +559 -0
  554. package/dist/components/six-timepicker2.js.map +1 -0
  555. package/dist/components/six-tooltip.d.ts +11 -0
  556. package/dist/components/six-tooltip.js +8 -0
  557. package/dist/components/six-tooltip.js.map +1 -0
  558. package/dist/components/six-tooltip2.js +194 -0
  559. package/dist/components/six-tooltip2.js.map +1 -0
  560. package/dist/{esm/slot-5253e199.js → components/slot.js} +44 -42
  561. package/dist/components/slot.js.map +1 -0
  562. package/dist/components.d.ts +27 -0
  563. package/dist/components.json +61 -28
  564. package/dist/esm/event-listeners-570a24ea.js +43 -0
  565. package/dist/esm/event-listeners-570a24ea.js.map +1 -0
  566. package/dist/esm/execution-control-1a60d709.js +40 -0
  567. package/dist/esm/execution-control-1a60d709.js.map +1 -0
  568. package/dist/esm/focus-visible-97933ea9.js +45 -0
  569. package/dist/esm/focus-visible-97933ea9.js.map +1 -0
  570. package/dist/esm/{form-control-17478ad2.js → form-control-bdd1478a.js} +28 -26
  571. package/dist/esm/form-control-bdd1478a.js.map +1 -0
  572. package/dist/esm/{index-a2605a62.js → index-96b1af5d.js} +603 -279
  573. package/dist/esm/index-96b1af5d.js.map +1 -0
  574. package/dist/esm/index.js +2 -0
  575. package/dist/esm/index.js.map +1 -0
  576. package/dist/esm/loader.js +6 -3
  577. package/dist/esm/loader.js.map +1 -0
  578. package/dist/esm/modal-5ebdc320.js +48 -0
  579. package/dist/esm/modal-5ebdc320.js.map +1 -0
  580. package/dist/esm/polyfills/core-js.js +0 -0
  581. package/dist/esm/polyfills/css-shim.js +1 -1
  582. package/dist/esm/polyfills/dom.js +0 -0
  583. package/dist/esm/polyfills/es5-html-element.js +0 -0
  584. package/dist/esm/polyfills/index.js +0 -0
  585. package/dist/esm/polyfills/system.js +0 -0
  586. package/dist/esm/popover-bd2c2fca.js +1897 -0
  587. package/dist/esm/popover-bd2c2fca.js.map +1 -0
  588. package/dist/esm/scroll-180b53fd.js +64 -0
  589. package/dist/esm/scroll-180b53fd.js.map +1 -0
  590. package/dist/esm/set-attributes_2.entry.js +58 -58
  591. package/dist/esm/set-attributes_2.entry.js.map +1 -0
  592. package/dist/esm/six-alert.entry.js +127 -132
  593. package/dist/esm/six-alert.entry.js.map +1 -0
  594. package/dist/esm/six-avatar.entry.js +27 -29
  595. package/dist/esm/six-avatar.entry.js.map +1 -0
  596. package/dist/esm/six-badge.entry.js +26 -27
  597. package/dist/esm/six-badge.entry.js.map +1 -0
  598. package/dist/esm/six-button.entry.js +96 -98
  599. package/dist/esm/six-button.entry.js.map +1 -0
  600. package/dist/esm/six-card.entry.js +11 -9
  601. package/dist/esm/six-card.entry.js.map +1 -0
  602. package/dist/esm/six-checkbox.entry.js +149 -153
  603. package/dist/esm/six-checkbox.entry.js.map +1 -0
  604. package/dist/esm/six-datepicker.entry.js +1137 -1190
  605. package/dist/esm/six-datepicker.entry.js.map +1 -0
  606. package/dist/esm/six-details.entry.js +137 -140
  607. package/dist/esm/six-details.entry.js.map +1 -0
  608. package/dist/esm/six-dialog.entry.js +146 -153
  609. package/dist/esm/six-dialog.entry.js.map +1 -0
  610. package/dist/esm/six-drawer.entry.js +163 -175
  611. package/dist/esm/six-drawer.entry.js.map +1 -0
  612. package/dist/esm/six-dropdown_3.entry.js +682 -729
  613. package/dist/esm/six-dropdown_3.entry.js.map +1 -0
  614. package/dist/esm/six-error-page.entry.js +98 -95
  615. package/dist/esm/six-error-page.entry.js.map +1 -0
  616. package/dist/esm/six-file-list-item.entry.js +37 -39
  617. package/dist/esm/six-file-list-item.entry.js.map +1 -0
  618. package/dist/esm/six-file-list.entry.js +11 -9
  619. package/dist/esm/six-file-list.entry.js.map +1 -0
  620. package/dist/esm/six-file-upload.entry.js +110 -97
  621. package/dist/esm/six-file-upload.entry.js.map +1 -0
  622. package/dist/esm/six-footer.entry.js +11 -9
  623. package/dist/esm/six-footer.entry.js.map +1 -0
  624. package/dist/esm/six-form.entry.js +221 -220
  625. package/dist/esm/six-form.entry.js.map +1 -0
  626. package/dist/esm/six-group-label.entry.js +46 -47
  627. package/dist/esm/six-group-label.entry.js.map +1 -0
  628. package/dist/esm/six-header.entry.js +150 -150
  629. package/dist/esm/six-header.entry.js.map +1 -0
  630. package/dist/esm/six-icon-button.entry.js +37 -34
  631. package/dist/esm/six-icon-button.entry.js.map +1 -0
  632. package/dist/esm/six-icon.entry.js +25 -25
  633. package/dist/esm/six-icon.entry.js.map +1 -0
  634. package/dist/esm/six-input.entry.js +229 -231
  635. package/dist/esm/six-input.entry.js.map +1 -0
  636. package/dist/esm/six-item-picker.entry.js +347 -362
  637. package/dist/esm/six-item-picker.entry.js.map +1 -0
  638. package/dist/esm/six-language-switcher.entry.js +55 -53
  639. package/dist/esm/six-language-switcher.entry.js.map +1 -0
  640. package/dist/esm/six-layout-grid.entry.js +23 -20
  641. package/dist/esm/six-layout-grid.entry.js.map +1 -0
  642. package/dist/esm/six-main-container.entry.js +13 -12
  643. package/dist/esm/six-main-container.entry.js.map +1 -0
  644. package/dist/esm/six-menu-divider.entry.js +11 -9
  645. package/dist/esm/six-menu-divider.entry.js.map +1 -0
  646. package/dist/esm/six-menu-label.entry.js +11 -9
  647. package/dist/esm/six-menu-label.entry.js.map +1 -0
  648. package/dist/esm/six-picto.entry.js +15 -16
  649. package/dist/esm/six-picto.entry.js.map +1 -0
  650. package/dist/esm/six-progress-bar.entry.js +18 -18
  651. package/dist/esm/six-progress-bar.entry.js.map +1 -0
  652. package/dist/esm/six-progress-ring.entry.js +33 -32
  653. package/dist/esm/six-progress-ring.entry.js.map +1 -0
  654. package/dist/esm/six-radio.entry.js +120 -122
  655. package/dist/esm/six-radio.entry.js.map +1 -0
  656. package/dist/esm/six-range.entry.js +188 -199
  657. package/dist/esm/six-range.entry.js.map +1 -0
  658. package/dist/esm/six-root.entry.js +34 -35
  659. package/dist/esm/six-root.entry.js.map +1 -0
  660. package/dist/esm/six-search-field.entry.js +43 -44
  661. package/dist/esm/six-search-field.entry.js.map +1 -0
  662. package/dist/esm/six-select.entry.js +422 -448
  663. package/dist/esm/six-select.entry.js.map +1 -0
  664. package/dist/esm/six-sidebar-item-group.entry.js +44 -43
  665. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -0
  666. package/dist/esm/six-sidebar-item.entry.js +18 -19
  667. package/dist/esm/six-sidebar-item.entry.js.map +1 -0
  668. package/dist/esm/six-sidebar.entry.js +170 -172
  669. package/dist/esm/six-sidebar.entry.js.map +1 -0
  670. package/dist/esm/six-spinner.entry.js +18 -17
  671. package/dist/esm/six-spinner.entry.js.map +1 -0
  672. package/dist/esm/six-switch.entry.js +101 -101
  673. package/dist/esm/six-switch.entry.js.map +1 -0
  674. package/dist/esm/six-tab-group.entry.js +227 -227
  675. package/dist/esm/six-tab-group.entry.js.map +1 -0
  676. package/dist/esm/six-tab-panel.entry.js +18 -18
  677. package/dist/esm/six-tab-panel.entry.js.map +1 -0
  678. package/dist/esm/six-tab.entry.js +41 -43
  679. package/dist/esm/six-tab.entry.js.map +1 -0
  680. package/dist/esm/six-table-cell_4.entry.js +77 -72
  681. package/dist/esm/six-table-cell_4.entry.js.map +1 -0
  682. package/dist/esm/six-table.entry.js +145 -146
  683. package/dist/esm/six-table.entry.js.map +1 -0
  684. package/dist/esm/six-tag.entry.js +39 -41
  685. package/dist/esm/six-tag.entry.js.map +1 -0
  686. package/dist/esm/six-textarea.entry.js +209 -212
  687. package/dist/esm/six-textarea.entry.js.map +1 -0
  688. package/dist/esm/six-tile.entry.js +87 -90
  689. package/dist/esm/six-tile.entry.js.map +1 -0
  690. package/dist/esm/six-timepicker.entry.js +441 -490
  691. package/dist/esm/six-timepicker.entry.js.map +1 -0
  692. package/dist/esm/{six-timepicker.types-cd6bac03.js → six-timepicker.types-e161a447.js} +45 -43
  693. package/dist/esm/six-timepicker.types-e161a447.js.map +1 -0
  694. package/dist/esm/six-tooltip.entry.js +163 -173
  695. package/dist/esm/six-tooltip.entry.js.map +1 -0
  696. package/dist/esm/slot-6f3984c7.js +47 -0
  697. package/dist/esm/slot-6f3984c7.js.map +1 -0
  698. package/dist/esm/{types-a37c1695.js → types-4b10b413.js} +14 -12
  699. package/dist/esm/types-4b10b413.js.map +1 -0
  700. package/dist/esm/ui-library.js +9 -3
  701. package/dist/esm/ui-library.js.map +1 -0
  702. package/dist/types/components/six-alert/six-alert.d.ts +60 -60
  703. package/dist/types/components/six-avatar/six-avatar.d.ts +27 -27
  704. package/dist/types/components/six-badge/six-badge.d.ts +20 -20
  705. package/dist/types/components/six-button/six-button.d.ts +69 -69
  706. package/dist/types/components/six-card/six-card.d.ts +9 -9
  707. package/dist/types/components/six-checkbox/six-checkbox.d.ts +86 -86
  708. package/dist/types/components/six-datepicker/components/day-selection.d.ts +5 -5
  709. package/dist/types/components/six-datepicker/components/month-selection.d.ts +5 -5
  710. package/dist/types/components/six-datepicker/components/year-selection.d.ts +5 -5
  711. package/dist/types/components/six-datepicker/six-date-formats.d.ts +22 -22
  712. package/dist/types/components/six-datepicker/six-datepicker.d.ts +214 -214
  713. package/dist/types/components/six-datepicker/test/six-datepicker.test-helpers.d.ts +1 -1
  714. package/dist/types/components/six-details/six-details.d.ts +61 -61
  715. package/dist/types/components/six-dialog/six-dialog.d.ts +75 -75
  716. package/dist/types/components/six-drawer/six-drawer.d.ts +82 -82
  717. package/dist/types/components/six-dropdown/six-dropdown.d.ts +140 -140
  718. package/dist/types/components/six-error-page/six-error-page.d.ts +27 -27
  719. package/dist/types/components/six-file-list/six-file-list.d.ts +8 -8
  720. package/dist/types/components/six-file-list-item/six-file-list-item.d.ts +35 -35
  721. package/dist/types/components/six-file-upload/six-file-upload.d.ts +49 -42
  722. package/dist/types/components/six-footer/six-footer.d.ts +9 -9
  723. package/dist/types/components/six-form/six-form.d.ts +69 -69
  724. package/dist/types/components/six-group-label/six-group-label.d.ts +37 -37
  725. package/dist/types/components/six-header/six-header.d.ts +90 -90
  726. package/dist/types/components/six-icon/six-icon.d.ts +13 -13
  727. package/dist/types/components/six-icon-button/six-icon-button.d.ts +28 -28
  728. package/dist/types/components/six-input/six-input.d.ts +165 -165
  729. package/dist/types/components/six-item-picker/six-item-picker.d.ts +106 -106
  730. package/dist/types/components/six-item-picker/types.d.ts +11 -11
  731. package/dist/types/components/six-language-switcher/six-language-switcher.d.ts +25 -25
  732. package/dist/types/components/six-layout-grid/six-layout-grid.d.ts +14 -14
  733. package/dist/types/components/six-main-container/six-main-container.d.ts +16 -16
  734. package/dist/types/components/six-menu/six-menu.d.ts +81 -81
  735. package/dist/types/components/six-menu-divider/six-menu-divider.d.ts +11 -11
  736. package/dist/types/components/six-menu-item/six-menu-item.d.ts +39 -36
  737. package/dist/types/components/six-menu-label/six-menu-label.d.ts +13 -13
  738. package/dist/types/components/six-picto/six-picto.d.ts +14 -14
  739. package/dist/types/components/six-progress-bar/six-progress-bar.d.ts +19 -19
  740. package/dist/types/components/six-progress-ring/six-progress-ring.d.ts +24 -24
  741. package/dist/types/components/six-radio/six-radio.d.ts +66 -66
  742. package/dist/types/components/six-range/six-range.d.ts +101 -101
  743. package/dist/types/components/six-root/six-root.d.ts +34 -34
  744. package/dist/types/components/six-search-field/six-search-field.d.ts +32 -32
  745. package/dist/types/components/six-select/six-select.d.ts +164 -163
  746. package/dist/types/components/six-sidebar/six-sidebar.d.ts +55 -55
  747. package/dist/types/components/six-sidebar-item/six-sidebar-item.d.ts +15 -15
  748. package/dist/types/components/six-sidebar-item-group/six-sidebar-item-group.d.ts +26 -26
  749. package/dist/types/components/six-spinner/six-spinner.d.ts +15 -15
  750. package/dist/types/components/six-stage-indicator/six-stage-indicator.d.ts +6 -6
  751. package/dist/types/components/six-switch/six-switch.d.ts +62 -62
  752. package/dist/types/components/six-tab/six-tab.d.ts +35 -35
  753. package/dist/types/components/six-tab-group/six-tab-group.d.ts +62 -62
  754. package/dist/types/components/six-tab-panel/six-tab-panel.d.ts +19 -19
  755. package/dist/types/components/six-table/six-table.d.ts +30 -30
  756. package/dist/types/components/six-table/test/helpers.d.ts +2 -2
  757. package/dist/types/components/six-table/types.d.ts +33 -33
  758. package/dist/types/components/six-table/util/filter-by.d.ts +2 -2
  759. package/dist/types/components/six-table/util/from-data.d.ts +8 -8
  760. package/dist/types/components/six-table/util/is.d.ts +3 -3
  761. package/dist/types/components/six-table/util/quick-filter-by.d.ts +2 -2
  762. package/dist/types/components/six-table/util/sort-by.d.ts +2 -2
  763. package/dist/types/components/six-table-cell/six-table-cell.d.ts +9 -9
  764. package/dist/types/components/six-table-header/six-table-header.d.ts +9 -9
  765. package/dist/types/components/six-table-header-cell/get-next-state.d.ts +2 -2
  766. package/dist/types/components/six-table-header-cell/icons.d.ts +3 -3
  767. package/dist/types/components/six-table-header-cell/six-table-header-cell.d.ts +32 -32
  768. package/dist/types/components/six-table-header-cell/types.d.ts +2 -11
  769. package/dist/types/components/six-table-header-cell/util/create-model.d.ts +4 -4
  770. package/dist/types/components/six-table-header-cell/util/get-next-state.d.ts +3 -3
  771. package/dist/types/components/six-table-row/six-table-row.d.ts +9 -9
  772. package/dist/types/components/six-tag/six-tag.d.ts +30 -30
  773. package/dist/types/components/six-textarea/six-textarea.d.ts +134 -134
  774. package/dist/types/components/six-tile/six-tile.d.ts +40 -40
  775. package/dist/types/components/six-timepicker/six-time-format.d.ts +13 -13
  776. package/dist/types/components/six-timepicker/six-timepicker.d.ts +184 -184
  777. package/dist/types/components/six-timepicker/six-timepicker.types.d.ts +36 -36
  778. package/dist/types/components/six-tooltip/six-tooltip.d.ts +72 -72
  779. package/dist/types/components.d.ts +1254 -106
  780. package/dist/types/functional-components/form-control/form-control.d.ts +34 -34
  781. package/dist/types/index.d.ts +1 -1
  782. package/dist/types/stencil-public-runtime.d.ts +91 -19
  783. package/dist/types/testUtil/delay.d.ts +1 -1
  784. package/dist/types/utils/as-array.d.ts +1 -1
  785. package/dist/types/utils/date-util.d.ts +194 -194
  786. package/dist/types/utils/event-listeners.d.ts +15 -15
  787. package/dist/types/utils/execution-control.d.ts +26 -26
  788. package/dist/types/utils/focus-visible.d.ts +6 -6
  789. package/dist/types/utils/matchers.d.ts +2 -2
  790. package/dist/types/utils/modal.d.ts +13 -13
  791. package/dist/types/utils/offset.d.ts +4 -4
  792. package/dist/types/utils/popover.d.ts +27 -27
  793. package/dist/types/utils/scroll.d.ts +3 -3
  794. package/dist/types/utils/slot.d.ts +9 -9
  795. package/dist/types/utils/support.d.ts +1 -1
  796. package/dist/types/utils/tabbable.d.ts +2 -2
  797. package/dist/types/utils/testing.d.ts +2 -2
  798. package/dist/types/utils/time.util.d.ts +10 -10
  799. package/dist/types/utils/type-check.d.ts +4 -4
  800. package/dist/types/utils/types.d.ts +4 -4
  801. package/dist/types/wrappers/set-attributes/set-attributes.d.ts +9 -9
  802. package/dist/ui-library/index.esm.js +2 -0
  803. package/dist/ui-library/index.esm.js.map +1 -0
  804. package/dist/ui-library/p-00507165.entry.js +2 -0
  805. package/dist/ui-library/p-00507165.entry.js.map +1 -0
  806. package/dist/ui-library/p-028a2c54.entry.js +2 -0
  807. package/dist/ui-library/p-028a2c54.entry.js.map +1 -0
  808. package/dist/ui-library/p-028a2f77.entry.js +2 -0
  809. package/dist/ui-library/p-028a2f77.entry.js.map +1 -0
  810. package/dist/ui-library/p-0786fa7c.js +2 -0
  811. package/dist/ui-library/p-0786fa7c.js.map +1 -0
  812. package/dist/ui-library/p-0c89817e.entry.js +2 -0
  813. package/dist/ui-library/p-0c89817e.entry.js.map +1 -0
  814. package/dist/ui-library/p-0d1fdc4e.entry.js +2 -0
  815. package/dist/ui-library/p-0d1fdc4e.entry.js.map +1 -0
  816. package/dist/ui-library/p-0d9cbb51.entry.js +2 -0
  817. package/dist/ui-library/p-0d9cbb51.entry.js.map +1 -0
  818. package/dist/ui-library/p-12000282.entry.js +2 -0
  819. package/dist/ui-library/p-12000282.entry.js.map +1 -0
  820. package/dist/ui-library/p-1414a242.entry.js +2 -0
  821. package/dist/ui-library/p-1414a242.entry.js.map +1 -0
  822. package/dist/ui-library/p-14db57aa.entry.js +2 -0
  823. package/dist/ui-library/p-14db57aa.entry.js.map +1 -0
  824. package/dist/ui-library/p-16732ac1.entry.js +2 -0
  825. package/dist/ui-library/p-16732ac1.entry.js.map +1 -0
  826. package/dist/ui-library/p-16b99232.js +3 -0
  827. package/dist/ui-library/p-16b99232.js.map +1 -0
  828. package/dist/ui-library/p-18ea0c56.js +2 -0
  829. package/dist/ui-library/p-18ea0c56.js.map +1 -0
  830. package/dist/ui-library/p-232d43a6.entry.js +2 -0
  831. package/dist/ui-library/p-232d43a6.entry.js.map +1 -0
  832. package/dist/ui-library/p-25a3bf57.js +2 -0
  833. package/dist/ui-library/p-25a3bf57.js.map +1 -0
  834. package/dist/ui-library/p-28e6c2eb.entry.js +2 -0
  835. package/dist/ui-library/p-28e6c2eb.entry.js.map +1 -0
  836. package/dist/ui-library/p-2a02734a.entry.js +2 -0
  837. package/dist/ui-library/p-2a02734a.entry.js.map +1 -0
  838. package/dist/ui-library/p-2a61cc66.entry.js +2 -0
  839. package/dist/ui-library/p-2a61cc66.entry.js.map +1 -0
  840. package/dist/ui-library/p-3c100309.js +2 -0
  841. package/dist/ui-library/p-3c100309.js.map +1 -0
  842. package/dist/ui-library/p-3d5cad2d.entry.js +2 -0
  843. package/dist/ui-library/p-3d5cad2d.entry.js.map +1 -0
  844. package/dist/ui-library/p-3e3edcbc.entry.js +2 -0
  845. package/dist/ui-library/p-3e3edcbc.entry.js.map +1 -0
  846. package/dist/ui-library/p-3efe46cf.entry.js +2 -0
  847. package/dist/ui-library/p-3efe46cf.entry.js.map +1 -0
  848. package/dist/ui-library/p-4b44fa83.entry.js +2 -0
  849. package/dist/ui-library/p-4b44fa83.entry.js.map +1 -0
  850. package/dist/ui-library/p-4bcebd5a.entry.js +2 -0
  851. package/dist/ui-library/p-4bcebd5a.entry.js.map +1 -0
  852. package/dist/ui-library/p-4d4829db.entry.js +2 -0
  853. package/dist/ui-library/p-4d4829db.entry.js.map +1 -0
  854. package/dist/ui-library/p-4f8394d7.js +2 -0
  855. package/dist/ui-library/p-4f8394d7.js.map +1 -0
  856. package/dist/ui-library/p-524e5804.entry.js +2 -0
  857. package/dist/ui-library/p-524e5804.entry.js.map +1 -0
  858. package/dist/ui-library/p-52cb61bd.entry.js +2 -0
  859. package/dist/ui-library/p-52cb61bd.entry.js.map +1 -0
  860. package/dist/ui-library/p-55dc28ad.entry.js +2 -0
  861. package/dist/ui-library/p-55dc28ad.entry.js.map +1 -0
  862. package/dist/ui-library/p-57a84d7f.entry.js +2 -0
  863. package/dist/ui-library/p-57a84d7f.entry.js.map +1 -0
  864. package/dist/ui-library/p-5eb21538.entry.js +2 -0
  865. package/dist/ui-library/p-5eb21538.entry.js.map +1 -0
  866. package/dist/ui-library/p-60c5395c.entry.js +2 -0
  867. package/dist/ui-library/p-60c5395c.entry.js.map +1 -0
  868. package/dist/ui-library/p-694829b8.entry.js +2 -0
  869. package/dist/ui-library/p-694829b8.entry.js.map +1 -0
  870. package/dist/ui-library/p-6cc82df5.entry.js +2 -0
  871. package/dist/ui-library/p-6cc82df5.entry.js.map +1 -0
  872. package/dist/ui-library/p-7115416e.entry.js +2 -0
  873. package/dist/ui-library/p-7115416e.entry.js.map +1 -0
  874. package/dist/ui-library/p-788281d0.entry.js +2 -0
  875. package/dist/ui-library/p-788281d0.entry.js.map +1 -0
  876. package/dist/ui-library/p-7cbc261b.entry.js +2 -0
  877. package/dist/ui-library/p-7cbc261b.entry.js.map +1 -0
  878. package/dist/ui-library/p-80f32909.entry.js +2 -0
  879. package/dist/ui-library/p-80f32909.entry.js.map +1 -0
  880. package/dist/ui-library/p-8187701c.entry.js +2 -0
  881. package/dist/ui-library/p-8187701c.entry.js.map +1 -0
  882. package/dist/ui-library/p-94ab37b2.entry.js +2 -0
  883. package/dist/ui-library/p-94ab37b2.entry.js.map +1 -0
  884. package/dist/ui-library/p-9a860acc.js +2 -0
  885. package/dist/ui-library/p-9a860acc.js.map +1 -0
  886. package/dist/ui-library/p-9eba5c71.entry.js +2 -0
  887. package/dist/ui-library/p-9eba5c71.entry.js.map +1 -0
  888. package/dist/ui-library/p-9f9bef35.entry.js +2 -0
  889. package/dist/ui-library/p-9f9bef35.entry.js.map +1 -0
  890. package/dist/ui-library/p-b1683e9c.entry.js +2 -0
  891. package/dist/ui-library/p-b1683e9c.entry.js.map +1 -0
  892. package/dist/ui-library/p-b1e66136.js +2 -0
  893. package/dist/ui-library/p-b1e66136.js.map +1 -0
  894. package/dist/ui-library/p-b3974ad4.entry.js +2 -0
  895. package/dist/ui-library/p-b3974ad4.entry.js.map +1 -0
  896. package/dist/ui-library/p-b4dfb7cf.js +2 -0
  897. package/dist/ui-library/p-b4dfb7cf.js.map +1 -0
  898. package/dist/ui-library/p-b66c5c48.entry.js +2 -0
  899. package/dist/ui-library/p-b66c5c48.entry.js.map +1 -0
  900. package/dist/ui-library/p-ba6e1f0e.entry.js +2 -0
  901. package/dist/ui-library/p-ba6e1f0e.entry.js.map +1 -0
  902. package/dist/ui-library/p-c799a6bf.entry.js +2 -0
  903. package/dist/ui-library/p-c799a6bf.entry.js.map +1 -0
  904. package/dist/ui-library/p-ccee090e.entry.js +2 -0
  905. package/dist/ui-library/p-ccee090e.entry.js.map +1 -0
  906. package/dist/ui-library/p-cf2bdd34.entry.js +2 -0
  907. package/dist/ui-library/p-cf2bdd34.entry.js.map +1 -0
  908. package/dist/ui-library/p-d12c6092.js +2 -0
  909. package/dist/ui-library/p-d12c6092.js.map +1 -0
  910. package/dist/ui-library/p-dd0ac344.entry.js +2 -0
  911. package/dist/ui-library/p-dd0ac344.entry.js.map +1 -0
  912. package/dist/ui-library/p-def4a925.entry.js +2 -0
  913. package/dist/ui-library/p-def4a925.entry.js.map +1 -0
  914. package/dist/ui-library/p-e0bda772.entry.js +2 -0
  915. package/dist/ui-library/p-e0bda772.entry.js.map +1 -0
  916. package/dist/ui-library/p-e1aed7ed.entry.js +2 -0
  917. package/dist/ui-library/p-e1aed7ed.entry.js.map +1 -0
  918. package/dist/ui-library/p-e4b6264b.entry.js +2 -0
  919. package/dist/ui-library/p-e4b6264b.entry.js.map +1 -0
  920. package/dist/ui-library/p-eb1ec1b7.entry.js +2 -0
  921. package/dist/ui-library/p-eb1ec1b7.entry.js.map +1 -0
  922. package/dist/ui-library/p-eb8f05a9.js +2 -0
  923. package/dist/ui-library/p-eb8f05a9.js.map +1 -0
  924. package/dist/ui-library/p-f65aa796.entry.js +2 -0
  925. package/dist/ui-library/p-f65aa796.entry.js.map +1 -0
  926. package/dist/ui-library/p-f68b5c54.entry.js +2 -0
  927. package/dist/ui-library/p-f68b5c54.entry.js.map +1 -0
  928. package/dist/ui-library/p-f9c50f81.entry.js +2 -0
  929. package/dist/ui-library/p-f9c50f81.entry.js.map +1 -0
  930. package/dist/ui-library/ui-library.esm.js +2 -1
  931. package/dist/ui-library/ui-library.esm.js.map +1 -0
  932. package/loader/index.d.ts +9 -0
  933. package/loader/package.json +1 -0
  934. package/package.json +8 -12
  935. package/readme.md +41 -39
  936. package/dist/cjs/types-65e5c95b.js +0 -15
  937. package/dist/custom-elements/index.d.ts +0 -387
  938. package/dist/esm/types-33d15673.js +0 -15
  939. package/dist/ui-library/p-044c6bf9.js +0 -1
  940. package/dist/ui-library/p-0493c926.entry.js +0 -1
  941. package/dist/ui-library/p-1005d1a8.entry.js +0 -1
  942. package/dist/ui-library/p-12cc24c3.js +0 -1
  943. package/dist/ui-library/p-191f958b.js +0 -1
  944. package/dist/ui-library/p-19543c96.entry.js +0 -1
  945. package/dist/ui-library/p-19ff1079.entry.js +0 -1
  946. package/dist/ui-library/p-1b92cc7a.entry.js +0 -1
  947. package/dist/ui-library/p-1c9f0dc6.js +0 -1
  948. package/dist/ui-library/p-2053c61a.entry.js +0 -1
  949. package/dist/ui-library/p-2ff97cdf.entry.js +0 -1
  950. package/dist/ui-library/p-30ebc1e7.js +0 -1
  951. package/dist/ui-library/p-34e6d8e8.js +0 -1
  952. package/dist/ui-library/p-354704e5.entry.js +0 -1
  953. package/dist/ui-library/p-376b8f30.entry.js +0 -1
  954. package/dist/ui-library/p-3a7daff8.entry.js +0 -1
  955. package/dist/ui-library/p-3f577392.entry.js +0 -1
  956. package/dist/ui-library/p-48ea4419.entry.js +0 -1
  957. package/dist/ui-library/p-4cc01afc.entry.js +0 -1
  958. package/dist/ui-library/p-572e3690.js +0 -1
  959. package/dist/ui-library/p-5ead7b2f.entry.js +0 -1
  960. package/dist/ui-library/p-60491176.entry.js +0 -1
  961. package/dist/ui-library/p-6494e92d.entry.js +0 -1
  962. package/dist/ui-library/p-66601906.entry.js +0 -1
  963. package/dist/ui-library/p-68d31736.js +0 -1
  964. package/dist/ui-library/p-6a4f0542.entry.js +0 -1
  965. package/dist/ui-library/p-6f67f986.entry.js +0 -1
  966. package/dist/ui-library/p-76bfa55f.entry.js +0 -1
  967. package/dist/ui-library/p-7735d99f.js +0 -1
  968. package/dist/ui-library/p-7fe09462.entry.js +0 -1
  969. package/dist/ui-library/p-88e1e390.entry.js +0 -1
  970. package/dist/ui-library/p-89f68e76.entry.js +0 -1
  971. package/dist/ui-library/p-8bd0873f.entry.js +0 -1
  972. package/dist/ui-library/p-8e8e922b.entry.js +0 -1
  973. package/dist/ui-library/p-968c5169.entry.js +0 -1
  974. package/dist/ui-library/p-9f2dc381.entry.js +0 -1
  975. package/dist/ui-library/p-a77a6442.entry.js +0 -1
  976. package/dist/ui-library/p-a8c225f2.entry.js +0 -1
  977. package/dist/ui-library/p-a98198bd.entry.js +0 -1
  978. package/dist/ui-library/p-af3d757c.js +0 -1
  979. package/dist/ui-library/p-b391f704.entry.js +0 -1
  980. package/dist/ui-library/p-b9377445.entry.js +0 -1
  981. package/dist/ui-library/p-b9fb8455.entry.js +0 -1
  982. package/dist/ui-library/p-bf110ea9.entry.js +0 -1
  983. package/dist/ui-library/p-c09dc3a9.js +0 -1
  984. package/dist/ui-library/p-c4b22513.entry.js +0 -1
  985. package/dist/ui-library/p-c536792e.entry.js +0 -1
  986. package/dist/ui-library/p-c733dead.js +0 -1
  987. package/dist/ui-library/p-c948d3db.entry.js +0 -1
  988. package/dist/ui-library/p-ce02c34f.entry.js +0 -1
  989. package/dist/ui-library/p-d724bbc9.entry.js +0 -1
  990. package/dist/ui-library/p-e96dcf96.entry.js +0 -1
  991. package/dist/ui-library/p-ea1fcff2.entry.js +0 -1
  992. package/dist/ui-library/p-ea781e94.entry.js +0 -1
  993. package/dist/ui-library/p-eae232c3.entry.js +0 -1
  994. package/dist/ui-library/p-eb0956d2.entry.js +0 -1
  995. package/dist/ui-library/p-ebaea182.entry.js +0 -1
  996. package/dist/ui-library/p-ec1ecc2a.entry.js +0 -1
  997. package/dist/ui-library/p-ed21cc57.entry.js +0 -1
  998. package/dist/ui-library/p-f00c1783.entry.js +0 -1
  999. package/dist/ui-library/p-f0e91e17.entry.js +0 -1
  1000. package/dist/ui-library/p-f9c0cfb7.entry.js +0 -1
  1001. package/dist/ui-library/p-fcd2356c.entry.js +0 -1
  1002. package/dist/ui-library/p-fdb455d7.entry.js +0 -1
@@ -1,113 +1,114 @@
1
- //
2
- // A positioning utility for popovers that handles show/hide/transitionEnd events with simple callbacks.
3
- //
4
- // Powered by Popper.js.
5
- //
6
- // NOTE:
7
- //
8
- // - The popover MUST have at least one property that transitions, otherwise transitionEnd won't fire and the popover
9
- // won't be hidden. If transitions are delegated to a child element, set the `transitionElement` property accordingly.
10
- //
11
- // - When the popover is shown, it's assigned `PopoverOptions.visibleClass`. You can use this class to provide different
12
- // transitions for show/hide.
13
- //
14
- // - Popper uses `translate3d` to position elements, so adding a transition to the `transform` property may have an
15
- // undesired effect when the element is shown and when its placement changes.
16
- //
17
- import { createPopper } from '@popperjs/core';
18
- export default class Popover {
19
- constructor(anchor, popover, options) {
20
- this.handleTransitionEnd = this.handleTransitionEnd.bind(this);
21
- this.anchor = anchor;
22
- this.popover = popover;
23
- this.options = Object.assign({
24
- skidding: 0,
25
- distance: 0,
26
- placement: 'bottom-start',
27
- strategy: 'absolute',
28
- transitionElement: this.popover,
29
- visibleClass: 'popover-visible',
30
- onAfterShow: () => { },
31
- onAfterHide: () => { },
32
- onTransitionEnd: () => { },
33
- }, options);
34
- this.isVisible = false;
35
- this.popover.hidden = true;
36
- this.popover.classList.remove(this.options.visibleClass);
37
- this.popover.addEventListener('transitionend', this.handleTransitionEnd);
38
- }
39
- handleTransitionEnd(event) {
40
- const target = event.target;
41
- // Make sure the transition event originates from from the correct element, and not one that has bubbled up
42
- if (target === this.options.transitionElement) {
43
- // This is called before the element is hidden so users can do things like reset scroll. It will fire once for
44
- // every transition property. Use `event.propertyName` to determine which property has finished transitioning.
45
- this.options.onTransitionEnd.call(this, event);
46
- // Make sure we only do this once, since transitionend will fire for every transition
47
- if (!this.isVisible && !this.popover.hidden) {
48
- this.popover.hidden = true;
49
- this.popover.classList.remove(this.options.visibleClass);
50
- this.options.onAfterHide.call(this);
51
- }
52
- }
53
- }
54
- destroy() {
55
- this.popover.removeEventListener('transitionend', this.handleTransitionEnd);
56
- if (this.popper) {
57
- this.popper.destroy();
58
- this.popper = null;
59
- }
60
- }
61
- show() {
62
- this.isVisible = true;
63
- this.popover.hidden = false;
64
- this.popover.clientWidth; // force reflow
65
- requestAnimationFrame(() => this.popover.classList.add(this.options.visibleClass));
66
- if (this.popper) {
67
- this.popper.destroy();
68
- }
69
- this.popper = createPopper(this.anchor, this.popover, {
70
- placement: this.options.placement,
71
- strategy: this.options.strategy,
72
- modifiers: [
73
- {
74
- name: 'flip',
75
- options: {
76
- boundary: 'viewport',
77
- },
78
- },
79
- {
80
- name: 'offset',
81
- options: {
82
- offset: [this.options.skidding, this.options.distance],
83
- },
84
- },
85
- ],
86
- });
87
- this.popover.addEventListener('transitionend', () => this.options.onAfterShow.call(this), { once: true });
88
- // Reposition the menu after it appears in case a modifier kicked in
89
- requestAnimationFrame(() => { var _a; return (_a = this.popper) === null || _a === void 0 ? void 0 : _a.update(); });
90
- }
91
- reposition() {
92
- this.popper.update();
93
- }
94
- hide() {
95
- // Apply the hidden styles and wait for the transition before hiding completely
96
- this.isVisible = false;
97
- this.popover.classList.remove(this.options.visibleClass);
98
- }
99
- setOptions(options) {
100
- this.options = Object.assign(this.options, options);
101
- this.isVisible
102
- ? this.popover.classList.add(this.options.visibleClass)
103
- : this.popover.classList.remove(this.options.visibleClass);
104
- // Update popper options
105
- if (this.popper) {
106
- this.popper.setOptions({
107
- placement: this.options.placement,
108
- strategy: this.options.strategy,
109
- });
110
- requestAnimationFrame(() => this.popper.update());
111
- }
112
- }
113
- }
1
+ //
2
+ // A positioning utility for popovers that handles show/hide/transitionEnd events with simple callbacks.
3
+ //
4
+ // Powered by Popper.js.
5
+ //
6
+ // NOTE:
7
+ //
8
+ // - The popover MUST have at least one property that transitions, otherwise transitionEnd won't fire and the popover
9
+ // won't be hidden. If transitions are delegated to a child element, set the `transitionElement` property accordingly.
10
+ //
11
+ // - When the popover is shown, it's assigned `PopoverOptions.visibleClass`. You can use this class to provide different
12
+ // transitions for show/hide.
13
+ //
14
+ // - Popper uses `translate3d` to position elements, so adding a transition to the `transform` property may have an
15
+ // undesired effect when the element is shown and when its placement changes.
16
+ //
17
+ import { createPopper } from '@popperjs/core';
18
+ export default class Popover {
19
+ constructor(anchor, popover, options) {
20
+ this.handleTransitionEnd = this.handleTransitionEnd.bind(this);
21
+ this.anchor = anchor;
22
+ this.popover = popover;
23
+ this.options = Object.assign({
24
+ skidding: 0,
25
+ distance: 0,
26
+ placement: 'bottom-start',
27
+ strategy: 'absolute',
28
+ transitionElement: this.popover,
29
+ visibleClass: 'popover-visible',
30
+ onAfterShow: () => { },
31
+ onAfterHide: () => { },
32
+ onTransitionEnd: () => { },
33
+ }, options);
34
+ this.isVisible = false;
35
+ this.popover.hidden = true;
36
+ this.popover.classList.remove(this.options.visibleClass);
37
+ this.popover.addEventListener('transitionend', this.handleTransitionEnd);
38
+ }
39
+ handleTransitionEnd(event) {
40
+ const target = event.target;
41
+ // Make sure the transition event originates from from the correct element, and not one that has bubbled up
42
+ if (target === this.options.transitionElement) {
43
+ // This is called before the element is hidden so users can do things like reset scroll. It will fire once for
44
+ // every transition property. Use `event.propertyName` to determine which property has finished transitioning.
45
+ this.options.onTransitionEnd.call(this, event);
46
+ // Make sure we only do this once, since transitionend will fire for every transition
47
+ if (!this.isVisible && !this.popover.hidden) {
48
+ this.popover.hidden = true;
49
+ this.popover.classList.remove(this.options.visibleClass);
50
+ this.options.onAfterHide.call(this);
51
+ }
52
+ }
53
+ }
54
+ destroy() {
55
+ this.popover.removeEventListener('transitionend', this.handleTransitionEnd);
56
+ if (this.popper) {
57
+ this.popper.destroy();
58
+ this.popper = null;
59
+ }
60
+ }
61
+ show() {
62
+ this.isVisible = true;
63
+ this.popover.hidden = false;
64
+ this.popover.clientWidth; // force reflow
65
+ requestAnimationFrame(() => this.popover.classList.add(this.options.visibleClass));
66
+ if (this.popper) {
67
+ this.popper.destroy();
68
+ }
69
+ this.popper = createPopper(this.anchor, this.popover, {
70
+ placement: this.options.placement,
71
+ strategy: this.options.strategy,
72
+ modifiers: [
73
+ {
74
+ name: 'flip',
75
+ options: {
76
+ boundary: 'viewport',
77
+ },
78
+ },
79
+ {
80
+ name: 'offset',
81
+ options: {
82
+ offset: [this.options.skidding, this.options.distance],
83
+ },
84
+ },
85
+ ],
86
+ });
87
+ this.popover.addEventListener('transitionend', () => this.options.onAfterShow.call(this), { once: true });
88
+ // Reposition the menu after it appears in case a modifier kicked in
89
+ requestAnimationFrame(() => { var _a; return (_a = this.popper) === null || _a === void 0 ? void 0 : _a.update(); });
90
+ }
91
+ reposition() {
92
+ this.popper.update();
93
+ }
94
+ hide() {
95
+ // Apply the hidden styles and wait for the transition before hiding completely
96
+ this.isVisible = false;
97
+ this.popover.classList.remove(this.options.visibleClass);
98
+ }
99
+ setOptions(options) {
100
+ this.options = Object.assign(this.options, options);
101
+ this.isVisible
102
+ ? this.popover.classList.add(this.options.visibleClass)
103
+ : this.popover.classList.remove(this.options.visibleClass);
104
+ // Update popper options
105
+ if (this.popper) {
106
+ this.popper.setOptions({
107
+ placement: this.options.placement,
108
+ strategy: this.options.strategy,
109
+ });
110
+ requestAnimationFrame(() => this.popper.update());
111
+ }
112
+ }
113
+ }
114
+ //# sourceMappingURL=popover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"popover.js","sourceRoot":"","sources":["../../src/utils/popover.ts"],"names":[],"mappings":"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","sourcesContent":["//\n// A positioning utility for popovers that handles show/hide/transitionEnd events with simple callbacks.\n//\n// Powered by Popper.js.\n//\n// NOTE:\n//\n// - The popover MUST have at least one property that transitions, otherwise transitionEnd won't fire and the popover\n// won't be hidden. If transitions are delegated to a child element, set the `transitionElement` property accordingly.\n//\n// - When the popover is shown, it's assigned `PopoverOptions.visibleClass`. You can use this class to provide different\n// transitions for show/hide.\n//\n// - Popper uses `translate3d` to position elements, so adding a transition to the `transform` property may have an\n// undesired effect when the element is shown and when its placement changes.\n//\nimport { createPopper } from '@popperjs/core';\nimport { PopperInstance } from './popper';\n\nexport default class Popover {\n anchor: HTMLElement;\n isVisible: boolean;\n popover: HTMLElement;\n popper: PopperInstance;\n options: PopoverOptions;\n\n constructor(anchor: HTMLElement, popover: HTMLElement, options?: PopoverOptions) {\n this.handleTransitionEnd = this.handleTransitionEnd.bind(this);\n\n this.anchor = anchor;\n this.popover = popover;\n this.options = Object.assign(\n {\n skidding: 0,\n distance: 0,\n placement: 'bottom-start',\n strategy: 'absolute',\n transitionElement: this.popover,\n visibleClass: 'popover-visible',\n onAfterShow: () => {},\n onAfterHide: () => {},\n onTransitionEnd: () => {},\n },\n options\n );\n\n this.isVisible = false;\n this.popover.hidden = true;\n this.popover.classList.remove(this.options.visibleClass);\n\n this.popover.addEventListener('transitionend', this.handleTransitionEnd);\n }\n\n private handleTransitionEnd(event: TransitionEvent) {\n const target = event.target as HTMLElement;\n\n // Make sure the transition event originates from from the correct element, and not one that has bubbled up\n if (target === this.options.transitionElement) {\n // This is called before the element is hidden so users can do things like reset scroll. It will fire once for\n // every transition property. Use `event.propertyName` to determine which property has finished transitioning.\n this.options.onTransitionEnd.call(this, event);\n\n // Make sure we only do this once, since transitionend will fire for every transition\n if (!this.isVisible && !this.popover.hidden) {\n this.popover.hidden = true;\n this.popover.classList.remove(this.options.visibleClass);\n this.options.onAfterHide.call(this);\n }\n }\n }\n\n destroy() {\n this.popover.removeEventListener('transitionend', this.handleTransitionEnd);\n\n if (this.popper) {\n this.popper.destroy();\n this.popper = null;\n }\n }\n\n show() {\n this.isVisible = true;\n this.popover.hidden = false;\n this.popover.clientWidth; // force reflow\n requestAnimationFrame(() => this.popover.classList.add(this.options.visibleClass));\n\n if (this.popper) {\n this.popper.destroy();\n }\n\n this.popper = createPopper(this.anchor, this.popover, {\n placement: this.options.placement,\n strategy: this.options.strategy,\n modifiers: [\n {\n name: 'flip',\n options: {\n boundary: 'viewport',\n },\n },\n {\n name: 'offset',\n options: {\n offset: [this.options.skidding, this.options.distance],\n },\n },\n ],\n });\n\n this.popover.addEventListener('transitionend', () => this.options.onAfterShow.call(this), { once: true });\n\n // Reposition the menu after it appears in case a modifier kicked in\n requestAnimationFrame(() => this.popper?.update());\n }\n\n reposition() {\n this.popper.update();\n }\n\n hide() {\n // Apply the hidden styles and wait for the transition before hiding completely\n this.isVisible = false;\n this.popover.classList.remove(this.options.visibleClass);\n }\n\n setOptions(options: PopoverOptions) {\n this.options = Object.assign(this.options, options);\n this.isVisible\n ? this.popover.classList.add(this.options.visibleClass)\n : this.popover.classList.remove(this.options.visibleClass);\n\n // Update popper options\n if (this.popper) {\n this.popper.setOptions({\n placement: this.options.placement,\n strategy: this.options.strategy,\n });\n\n requestAnimationFrame(() => this.popper.update());\n }\n }\n}\n\ninterface PopoverOptions {\n distance?: number;\n placement?:\n | 'auto'\n | 'auto-start'\n | 'auto-end'\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'left'\n | 'left-start'\n | 'left-end';\n skidding?: number;\n strategy?: 'absolute' | 'fixed';\n transitionElement?: HTMLElement;\n visibleClass?: string;\n onAfterShow?: () => any;\n onAfterHide?: () => any;\n onTransitionEnd?: (event: TransitionEvent) => any;\n}\n"]}
@@ -1,47 +1,48 @@
1
- import { getOffset } from './offset';
2
- const locks = new Set();
3
- //
4
- // Prevents body scrolling. Keeps track of which elements requested a lock so multiple levels of locking are possible
5
- // without premature unlocking.
6
- //
7
- export function lockBodyScrolling(lockingEl) {
8
- locks.add(lockingEl);
9
- document.body.classList.add('six-scroll-lock');
10
- }
11
- //
12
- // Unlocks body scrolling. Scrolling will only be unlocked once all elements that requested a lock call this method.
13
- //
14
- export function unlockBodyScrolling(lockingEl) {
15
- locks.delete(lockingEl);
16
- if (locks.size === 0) {
17
- document.body.classList.remove('six-scroll-lock');
18
- }
19
- }
20
- //
21
- // Scrolls an element into view of its container. If the element is already in view, nothing will happen.
22
- //
23
- export function scrollIntoView(element, container, direction = 'vertical', behavior = 'smooth') {
24
- const offset = getOffset(element, container);
25
- const offsetTop = offset.top + container.scrollTop;
26
- const offsetLeft = offset.left + container.scrollLeft;
27
- const minX = container.scrollLeft;
28
- const maxX = container.scrollLeft + container.offsetWidth;
29
- const minY = container.scrollTop;
30
- const maxY = container.scrollTop + container.offsetHeight;
31
- if (direction === 'horizontal' || direction === 'both') {
32
- if (offsetLeft < minX) {
33
- container.scrollTo({ left: offsetLeft, behavior });
34
- }
35
- else if (offsetLeft + element.clientWidth > maxX) {
36
- container.scrollTo({ left: offsetLeft - container.offsetWidth + element.clientWidth, behavior });
37
- }
38
- }
39
- if (direction === 'vertical' || direction === 'both') {
40
- if (offsetTop < minY) {
41
- container.scrollTo({ top: offsetTop, behavior });
42
- }
43
- else if (offsetTop + element.clientHeight > maxY) {
44
- container.scrollTo({ top: offsetTop - container.offsetHeight + element.clientHeight, behavior });
45
- }
46
- }
47
- }
1
+ import { getOffset } from './offset';
2
+ const locks = new Set();
3
+ //
4
+ // Prevents body scrolling. Keeps track of which elements requested a lock so multiple levels of locking are possible
5
+ // without premature unlocking.
6
+ //
7
+ export function lockBodyScrolling(lockingEl) {
8
+ locks.add(lockingEl);
9
+ document.body.classList.add('six-scroll-lock');
10
+ }
11
+ //
12
+ // Unlocks body scrolling. Scrolling will only be unlocked once all elements that requested a lock call this method.
13
+ //
14
+ export function unlockBodyScrolling(lockingEl) {
15
+ locks.delete(lockingEl);
16
+ if (locks.size === 0) {
17
+ document.body.classList.remove('six-scroll-lock');
18
+ }
19
+ }
20
+ //
21
+ // Scrolls an element into view of its container. If the element is already in view, nothing will happen.
22
+ //
23
+ export function scrollIntoView(element, container, direction = 'vertical', behavior = 'smooth') {
24
+ const offset = getOffset(element, container);
25
+ const offsetTop = offset.top + container.scrollTop;
26
+ const offsetLeft = offset.left + container.scrollLeft;
27
+ const minX = container.scrollLeft;
28
+ const maxX = container.scrollLeft + container.offsetWidth;
29
+ const minY = container.scrollTop;
30
+ const maxY = container.scrollTop + container.offsetHeight;
31
+ if (direction === 'horizontal' || direction === 'both') {
32
+ if (offsetLeft < minX) {
33
+ container.scrollTo({ left: offsetLeft, behavior });
34
+ }
35
+ else if (offsetLeft + element.clientWidth > maxX) {
36
+ container.scrollTo({ left: offsetLeft - container.offsetWidth + element.clientWidth, behavior });
37
+ }
38
+ }
39
+ if (direction === 'vertical' || direction === 'both') {
40
+ if (offsetTop < minY) {
41
+ container.scrollTo({ top: offsetTop, behavior });
42
+ }
43
+ else if (offsetTop + element.clientHeight > maxY) {
44
+ container.scrollTo({ top: offsetTop - container.offsetHeight + element.clientHeight, behavior });
45
+ }
46
+ }
47
+ }
48
+ //# sourceMappingURL=scroll.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../src/utils/scroll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;AAExB,EAAE;AACF,qHAAqH;AACrH,+BAA+B;AAC/B,EAAE;AACF,MAAM,UAAU,iBAAiB,CAAC,SAAsB;EACtD,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;EACrB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACjD,CAAC;AAED,EAAE;AACF,oHAAoH;AACpH,EAAE;AACF,MAAM,UAAU,mBAAmB,CAAC,SAAsB;EACxD,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;EAExB,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE;IACpB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;GACnD;AACH,CAAC;AAED,EAAE;AACF,yGAAyG;AACzG,EAAE;AACF,MAAM,UAAU,cAAc,CAC5B,OAAoB,EACpB,SAAsB,EACtB,YAAgD,UAAU,EAC1D,WAA8B,QAAQ;EAEtC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;EAC7C,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC;EACnD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC;EACtD,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC;EAClC,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,WAAW,CAAC;EAC1D,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC;EACjC,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC;EAE1D,IAAI,SAAS,KAAK,YAAY,IAAI,SAAS,KAAK,MAAM,EAAE;IACtD,IAAI,UAAU,GAAG,IAAI,EAAE;MACrB,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;KACpD;SAAM,IAAI,UAAU,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,EAAE;MAClD,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;KAClG;GACF;EAED,IAAI,SAAS,KAAK,UAAU,IAAI,SAAS,KAAK,MAAM,EAAE;IACpD,IAAI,SAAS,GAAG,IAAI,EAAE;MACpB,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;KAClD;SAAM,IAAI,SAAS,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,EAAE;MAClD,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,SAAS,GAAG,SAAS,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;KAClG;GACF;AACH,CAAC","sourcesContent":["import { getOffset } from './offset';\n\nconst locks = new Set();\n\n//\n// Prevents body scrolling. Keeps track of which elements requested a lock so multiple levels of locking are possible\n// without premature unlocking.\n//\nexport function lockBodyScrolling(lockingEl: HTMLElement) {\n locks.add(lockingEl);\n document.body.classList.add('six-scroll-lock');\n}\n\n//\n// Unlocks body scrolling. Scrolling will only be unlocked once all elements that requested a lock call this method.\n//\nexport function unlockBodyScrolling(lockingEl: HTMLElement) {\n locks.delete(lockingEl);\n\n if (locks.size === 0) {\n document.body.classList.remove('six-scroll-lock');\n }\n}\n\n//\n// Scrolls an element into view of its container. If the element is already in view, nothing will happen.\n//\nexport function scrollIntoView(\n element: HTMLElement,\n container: HTMLElement,\n direction: 'horizontal' | 'vertical' | 'both' = 'vertical',\n behavior: 'smooth' | 'auto' = 'smooth'\n) {\n const offset = getOffset(element, container);\n const offsetTop = offset.top + container.scrollTop;\n const offsetLeft = offset.left + container.scrollLeft;\n const minX = container.scrollLeft;\n const maxX = container.scrollLeft + container.offsetWidth;\n const minY = container.scrollTop;\n const maxY = container.scrollTop + container.offsetHeight;\n\n if (direction === 'horizontal' || direction === 'both') {\n if (offsetLeft < minX) {\n container.scrollTo({ left: offsetLeft, behavior });\n } else if (offsetLeft + element.clientWidth > maxX) {\n container.scrollTo({ left: offsetLeft - container.offsetWidth + element.clientWidth, behavior });\n }\n }\n\n if (direction === 'vertical' || direction === 'both') {\n if (offsetTop < minY) {\n container.scrollTo({ top: offsetTop, behavior });\n } else if (offsetTop + element.clientHeight > maxY) {\n container.scrollTo({ top: offsetTop - container.offsetHeight + element.clientHeight, behavior });\n }\n }\n}\n"]}
@@ -1,59 +1,60 @@
1
- //
2
- // Given a slot, this function iterates over all of its assigned element and text nodes and returns the concatenated
3
- // HTML as a string. This is useful because we can't use slot.innerHTML as an alternative.
4
- //
5
- export function getInnerHTML(slot) {
6
- const nodes = slot.assignedNodes({ flatten: true });
7
- let html = '';
8
- [...nodes].map((node) => {
9
- if (node.nodeType === Node.ELEMENT_NODE) {
10
- html += node.outerHTML;
11
- }
12
- if (node.nodeType === Node.TEXT_NODE) {
13
- html += node.textContent;
14
- }
15
- });
16
- return html;
17
- }
18
- //
19
- // Given a slot, this function iterates over all of its assigned text nodes and returns the concatenated text as a
20
- // string. This is useful because we can't use slot.textContent as an alternative.
21
- //
22
- export function getTextContent(slot) {
23
- const nodes = slot ? slot.assignedNodes({ flatten: true }) : [];
24
- let text = '';
25
- [...nodes].map((node) => {
26
- if (node.nodeType === Node.TEXT_NODE) {
27
- text += node.textContent;
28
- }
29
- });
30
- return text;
31
- }
32
- //
33
- // Determines whether an element has a slot. If name is specified, the function will look for a corresponding named
34
- // slot, otherwise it will look for a "default" slot (e.g. a non-empty text node or an element with no slot attribute).
35
- //
36
- export function hasSlot(el, name) {
37
- // Look for a named slot
38
- if (name) {
39
- return el.querySelector(`[slot="${name}"]`) !== null;
40
- }
41
- // Look for a default slot
42
- return Array.from(el.childNodes).some((node) => {
43
- if (node.nodeType === node.TEXT_NODE && node.textContent.trim() !== '') {
44
- return true;
45
- }
46
- if (node.nodeType === node.ELEMENT_NODE) {
47
- const el = node;
48
- if (!el.hasAttribute('slot')) {
49
- return true;
50
- }
51
- }
52
- return false;
53
- });
54
- }
55
- const fromPairs = (acc, [k, v]) => (Object.assign(Object.assign({}, acc), { [k]: v }));
56
- export const getAvailableSlots = (slots) => (host) => Object.values(slots)
57
- .map((name) => [name, hasSlot(host, name)])
58
- .reduce(fromPairs, {});
59
- export const getSlotChildren = (el) => { var _a; return (_a = el.querySelector('slot')) === null || _a === void 0 ? void 0 : _a.assignedElements({ flatten: true }); };
1
+ //
2
+ // Given a slot, this function iterates over all of its assigned element and text nodes and returns the concatenated
3
+ // HTML as a string. This is useful because we can't use slot.innerHTML as an alternative.
4
+ //
5
+ export function getInnerHTML(slot) {
6
+ const nodes = slot.assignedNodes({ flatten: true });
7
+ let html = '';
8
+ [...nodes].map((node) => {
9
+ if (node.nodeType === Node.ELEMENT_NODE) {
10
+ html += node.outerHTML;
11
+ }
12
+ if (node.nodeType === Node.TEXT_NODE) {
13
+ html += node.textContent;
14
+ }
15
+ });
16
+ return html;
17
+ }
18
+ //
19
+ // Given a slot, this function iterates over all of its assigned text nodes and returns the concatenated text as a
20
+ // string. This is useful because we can't use slot.textContent as an alternative.
21
+ //
22
+ export function getTextContent(slot) {
23
+ const nodes = slot ? slot.assignedNodes({ flatten: true }) : [];
24
+ let text = '';
25
+ [...nodes].map((node) => {
26
+ if (node.nodeType === Node.TEXT_NODE) {
27
+ text += node.textContent;
28
+ }
29
+ });
30
+ return text;
31
+ }
32
+ //
33
+ // Determines whether an element has a slot. If name is specified, the function will look for a corresponding named
34
+ // slot, otherwise it will look for a "default" slot (e.g. a non-empty text node or an element with no slot attribute).
35
+ //
36
+ export function hasSlot(el, name) {
37
+ // Look for a named slot
38
+ if (name) {
39
+ return el.querySelector(`[slot="${name}"]`) !== null;
40
+ }
41
+ // Look for a default slot
42
+ return Array.from(el.childNodes).some((node) => {
43
+ if (node.nodeType === node.TEXT_NODE && node.textContent.trim() !== '') {
44
+ return true;
45
+ }
46
+ if (node.nodeType === node.ELEMENT_NODE) {
47
+ const el = node;
48
+ if (!el.hasAttribute('slot')) {
49
+ return true;
50
+ }
51
+ }
52
+ return false;
53
+ });
54
+ }
55
+ const fromPairs = (acc, [k, v]) => (Object.assign(Object.assign({}, acc), { [k]: v }));
56
+ export const getAvailableSlots = (slots) => (host) => Object.values(slots)
57
+ .map((name) => [name, hasSlot(host, name)])
58
+ .reduce(fromPairs, {});
59
+ export const getSlotChildren = (el) => { var _a; return (_a = el.querySelector('slot')) === null || _a === void 0 ? void 0 : _a.assignedElements({ flatten: true }); };
60
+ //# sourceMappingURL=slot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slot.js","sourceRoot":"","sources":["../../src/utils/slot.ts"],"names":[],"mappings":"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","sourcesContent":["//\n// Given a slot, this function iterates over all of its assigned element and text nodes and returns the concatenated\n// HTML as a string. This is useful because we can't use slot.innerHTML as an alternative.\n//\nexport function getInnerHTML(slot: HTMLSlotElement): string {\n const nodes = slot.assignedNodes({ flatten: true });\n let html = '';\n\n [...nodes].map((node) => {\n if (node.nodeType === Node.ELEMENT_NODE) {\n html += (node as HTMLElement).outerHTML;\n }\n\n if (node.nodeType === Node.TEXT_NODE) {\n html += node.textContent;\n }\n });\n\n return html;\n}\n\n//\n// Given a slot, this function iterates over all of its assigned text nodes and returns the concatenated text as a\n// string. This is useful because we can't use slot.textContent as an alternative.\n//\nexport function getTextContent(slot: HTMLSlotElement): string {\n const nodes = slot ? slot.assignedNodes({ flatten: true }) : [];\n let text = '';\n\n [...nodes].map((node) => {\n if (node.nodeType === Node.TEXT_NODE) {\n text += node.textContent;\n }\n });\n\n return text;\n}\n\n//\n// Determines whether an element has a slot. If name is specified, the function will look for a corresponding named\n// slot, otherwise it will look for a \"default\" slot (e.g. a non-empty text node or an element with no slot attribute).\n//\nexport function hasSlot(el: HTMLElement, name?: string) {\n // Look for a named slot\n if (name) {\n return el.querySelector(`[slot=\"${name}\"]`) !== null;\n }\n\n // Look for a default slot\n return Array.from(el.childNodes).some((node) => {\n if (node.nodeType === node.TEXT_NODE && node.textContent.trim() !== '') {\n return true;\n }\n\n if (node.nodeType === node.ELEMENT_NODE) {\n const el = node as HTMLElement;\n if (!el.hasAttribute('slot')) {\n return true;\n }\n }\n\n return false;\n });\n}\n\ntype AvailableSlots<T> = { readonly [K in keyof T]: boolean };\n\nconst fromPairs = <T extends string>(acc, [k, v]: [T, boolean]) => ({ ...acc, [k]: v });\n\nexport const getAvailableSlots =\n <T extends object>(slots: T) =>\n <E extends HTMLElement>(host: E): AvailableSlots<T> =>\n Object.values(slots)\n .map((name) => [name, hasSlot(host, name)])\n .reduce(fromPairs, {} as AvailableSlots<T>);\n\nexport const getSlotChildren = <T extends HTMLElement>(el: HTMLElement) =>\n el.querySelector('slot')?.assignedElements({ flatten: true }) as T[];\n"]}
@@ -1,15 +1,16 @@
1
- //
2
- // Determines if the browser supports focus({ preventScroll })
3
- //
4
- export const isPreventScrollSupported = () => {
5
- let supported = false;
6
- const element = document.createElement('div');
7
- element.focus &&
8
- element.focus({
9
- get preventScroll() {
10
- supported = true;
11
- return false;
12
- },
13
- });
14
- return supported;
15
- };
1
+ //
2
+ // Determines if the browser supports focus({ preventScroll })
3
+ //
4
+ export const isPreventScrollSupported = () => {
5
+ let supported = false;
6
+ const element = document.createElement('div');
7
+ element.focus &&
8
+ element.focus({
9
+ get preventScroll() {
10
+ supported = true;
11
+ return false;
12
+ },
13
+ });
14
+ return supported;
15
+ };
16
+ //# sourceMappingURL=support.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"support.js","sourceRoot":"","sources":["../../src/utils/support.ts"],"names":[],"mappings":"AAAA,EAAE;AACF,8DAA8D;AAC9D,EAAE;AACF,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,EAAE;EAC3C,IAAI,SAAS,GAAG,KAAK,CAAC;EAEtB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;EAC9C,OAAO,CAAC,KAAK;IACX,OAAO,CAAC,KAAK,CAAC;MACZ,IAAI,aAAa;QACf,SAAS,GAAG,IAAI,CAAC;QACjB,OAAO,KAAK,CAAC;MACf,CAAC;KACF,CAAC,CAAC;EAEL,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC","sourcesContent":["//\n// Determines if the browser supports focus({ preventScroll })\n//\nexport const isPreventScrollSupported = () => {\n let supported = false;\n\n const element = document.createElement('div');\n element.focus &&\n element.focus({\n get preventScroll() {\n supported = true;\n return false;\n },\n });\n\n return supported;\n};\n"]}
@@ -1,22 +1,23 @@
1
- export function isTabbable(el) {
2
- const tabIndex = el.tabIndex;
3
- return tabIndex > -1;
4
- }
5
- export function getNearestTabbableElement(el) {
6
- // Check the element
7
- if (isTabbable(el)) {
8
- return el;
9
- }
10
- // Check the element's shadow root
11
- if (el.shadowRoot) {
12
- const tabbableShadowChild = [...el.shadowRoot.children].find(isTabbable);
13
- if (tabbableShadowChild) {
14
- return tabbableShadowChild;
15
- }
16
- }
17
- // Check the element's children
18
- if (el.children) {
19
- return [...el.children].map(getNearestTabbableElement)[0];
20
- }
21
- return null;
22
- }
1
+ export function isTabbable(el) {
2
+ const tabIndex = el.tabIndex;
3
+ return tabIndex > -1;
4
+ }
5
+ export function getNearestTabbableElement(el) {
6
+ // Check the element
7
+ if (isTabbable(el)) {
8
+ return el;
9
+ }
10
+ // Check the element's shadow root
11
+ if (el.shadowRoot) {
12
+ const tabbableShadowChild = [...el.shadowRoot.children].find(isTabbable);
13
+ if (tabbableShadowChild) {
14
+ return tabbableShadowChild;
15
+ }
16
+ }
17
+ // Check the element's children
18
+ if (el.children) {
19
+ return [...el.children].map(getNearestTabbableElement)[0];
20
+ }
21
+ return null;
22
+ }
23
+ //# sourceMappingURL=tabbable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabbable.js","sourceRoot":"","sources":["../../src/utils/tabbable.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,UAAU,CAAC,EAAe;EACxC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC;EAC7B,OAAO,QAAQ,GAAG,CAAC,CAAC,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,EAAe;EACvD,oBAAoB;EACpB,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE;IAClB,OAAO,EAAE,CAAC;GACX;EAED,kCAAkC;EAClC,IAAI,EAAE,CAAC,UAAU,EAAE;IACjB,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAU,CAAgB,CAAC;IACxF,IAAI,mBAAmB,EAAE;MACvB,OAAO,mBAAmB,CAAC;KAC5B;GACF;EAED,+BAA+B;EAC/B,IAAI,EAAE,CAAC,QAAQ,EAAE;IACf,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC;GAC3D;EAED,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["export function isTabbable(el: HTMLElement) {\n const tabIndex = el.tabIndex;\n return tabIndex > -1;\n}\n\nexport function getNearestTabbableElement(el: HTMLElement): HTMLElement {\n // Check the element\n if (isTabbable(el)) {\n return el;\n }\n\n // Check the element's shadow root\n if (el.shadowRoot) {\n const tabbableShadowChild = [...el.shadowRoot.children].find(isTabbable) as HTMLElement;\n if (tabbableShadowChild) {\n return tabbableShadowChild;\n }\n }\n\n // Check the element's children\n if (el.children) {\n return [...el.children].map(getNearestTabbableElement)[0];\n }\n\n return null;\n}\n"]}