@six-group/ui-library 4.0.3 → 4.1.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 (1092) hide show
  1. package/dist/cjs/error-messages-6e8049a4.js +119 -0
  2. package/dist/cjs/error-messages-6e8049a4.js.map +1 -0
  3. package/dist/cjs/event-listeners-9fb878f1.js +61 -0
  4. package/dist/cjs/event-listeners-9fb878f1.js.map +1 -0
  5. package/dist/cjs/{execution-control-b4707294.js → execution-control-d728da70.js} +15 -15
  6. package/dist/cjs/{execution-control-b4707294.js.map → execution-control-d728da70.js.map} +1 -1
  7. package/dist/cjs/focus-visible-e2c9255a.js +47 -0
  8. package/dist/cjs/{focus-visible-ae2470dd.js.map → focus-visible-e2c9255a.js.map} +1 -1
  9. package/dist/cjs/form-9ebaae7c.js +20 -0
  10. package/dist/cjs/{form-2df8c5bb.js.map → form-9ebaae7c.js.map} +1 -1
  11. package/dist/cjs/form-control-8d64e974.js +36 -0
  12. package/dist/cjs/form-control-8d64e974.js.map +1 -0
  13. package/dist/cjs/{index-900437fc.js → index-d7748d51.js} +418 -657
  14. package/dist/cjs/index-d7748d51.js.map +1 -0
  15. package/dist/cjs/index.cjs.js +55 -87
  16. package/dist/cjs/index.cjs.js.map +1 -1
  17. package/dist/cjs/loader.cjs.js +2 -2
  18. package/dist/cjs/modal-3ce015be.js +52 -0
  19. package/dist/cjs/modal-3ce015be.js.map +1 -0
  20. package/dist/cjs/{popover-2df7e154.js → popover-1e7c09f1.js} +99 -99
  21. package/dist/cjs/popover-1e7c09f1.js.map +1 -0
  22. package/dist/cjs/popup-e854acda.js +103 -0
  23. package/dist/cjs/popup-e854acda.js.map +1 -0
  24. package/dist/cjs/scroll-68033901.js +68 -0
  25. package/dist/cjs/{scroll-2c4200dc.js.map → scroll-68033901.js.map} +1 -1
  26. package/dist/cjs/six-alert.cjs.entry.js +142 -110
  27. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  28. package/dist/cjs/six-avatar.cjs.entry.js +21 -21
  29. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  30. package/dist/cjs/six-badge.cjs.entry.js +23 -23
  31. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  32. package/dist/cjs/six-button.cjs.entry.js +95 -95
  33. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  34. package/dist/cjs/six-card.cjs.entry.js +8 -8
  35. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  36. package/dist/cjs/six-checkbox_2.cjs.entry.js +190 -0
  37. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +1 -0
  38. package/dist/cjs/six-datepicker.cjs.entry.js +860 -834
  39. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  40. package/dist/cjs/six-details.cjs.entry.js +127 -127
  41. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  42. package/dist/cjs/six-dialog.cjs.entry.js +131 -129
  43. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  44. package/dist/cjs/six-drawer.cjs.entry.js +147 -147
  45. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  46. package/dist/cjs/six-dropdown_2.cjs.entry.js +709 -637
  47. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  48. package/dist/cjs/six-error-page.cjs.entry.js +82 -82
  49. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -1
  50. package/dist/cjs/six-error.cjs.entry.js +7 -7
  51. package/dist/cjs/six-error.cjs.entry.js.map +1 -1
  52. package/dist/cjs/six-file-list-item.cjs.entry.js +34 -34
  53. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  54. package/dist/cjs/six-file-list.cjs.entry.js +7 -7
  55. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -1
  56. package/dist/cjs/six-file-upload.cjs.entry.js +99 -99
  57. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  58. package/dist/cjs/six-footer.cjs.entry.js +8 -8
  59. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  60. package/dist/cjs/six-group-label.cjs.entry.js +43 -43
  61. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  62. package/dist/cjs/six-header.cjs.entry.js +171 -156
  63. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  64. package/dist/cjs/six-icon-button.cjs.entry.js +32 -32
  65. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  66. package/dist/cjs/six-icon.cjs.entry.js +22 -22
  67. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  68. package/dist/cjs/six-input.cjs.entry.js +192 -190
  69. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  70. package/dist/cjs/six-item-picker.cjs.entry.js +405 -309
  71. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  72. package/dist/cjs/six-language-switcher.cjs.entry.js +46 -46
  73. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  74. package/dist/cjs/six-layout-grid.cjs.entry.js +20 -20
  75. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -1
  76. package/dist/cjs/six-main-container.cjs.entry.js +9 -9
  77. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  78. package/dist/cjs/six-menu-divider.cjs.entry.js +8 -8
  79. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  80. package/dist/cjs/six-menu-label.cjs.entry.js +8 -8
  81. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -1
  82. package/dist/cjs/six-picto.cjs.entry.js +14 -14
  83. package/dist/cjs/six-picto.cjs.entry.js.map +1 -1
  84. package/dist/cjs/six-progress-bar.cjs.entry.js +15 -15
  85. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  86. package/dist/cjs/six-progress-ring.cjs.entry.js +30 -30
  87. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  88. package/dist/cjs/six-radio.cjs.entry.js +104 -104
  89. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  90. package/dist/cjs/six-range.cjs.entry.js +180 -180
  91. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  92. package/dist/cjs/six-root.cjs.entry.js +11 -30
  93. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  94. package/dist/cjs/six-search-field.cjs.entry.js +44 -44
  95. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  96. package/dist/cjs/six-select.cjs.entry.js +497 -366
  97. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  98. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +56 -46
  99. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  100. package/dist/cjs/six-sidebar-item.cjs.entry.js +17 -15
  101. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -1
  102. package/dist/cjs/six-sidebar.cjs.entry.js +174 -174
  103. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  104. package/dist/cjs/six-spinner.cjs.entry.js +15 -15
  105. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -1
  106. package/dist/cjs/six-stage-indicator.cjs.entry.js +22 -0
  107. package/dist/cjs/six-stage-indicator.cjs.entry.js.map +1 -0
  108. package/dist/cjs/six-switch.cjs.entry.js +107 -107
  109. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  110. package/dist/cjs/six-tab-group.cjs.entry.js +215 -215
  111. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  112. package/dist/cjs/six-tab-panel.cjs.entry.js +14 -14
  113. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -1
  114. package/dist/cjs/six-tab.cjs.entry.js +55 -55
  115. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  116. package/dist/cjs/six-tag.cjs.entry.js +53 -53
  117. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  118. package/dist/cjs/six-textarea.cjs.entry.js +181 -181
  119. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  120. package/dist/cjs/six-tile.cjs.entry.js +77 -77
  121. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  122. package/dist/cjs/six-timepicker.cjs.entry.js +349 -349
  123. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  124. package/dist/cjs/six-tooltip.cjs.entry.js +148 -148
  125. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -1
  126. package/dist/cjs/slot-1b1232a1.js +51 -0
  127. package/dist/cjs/slot-1b1232a1.js.map +1 -0
  128. package/dist/cjs/types-d3da200b.js +19 -0
  129. package/dist/cjs/types-d3da200b.js.map +1 -0
  130. package/dist/cjs/ui-library.cjs.js +3 -3
  131. package/dist/cjs/ui-library.cjs.js.map +1 -1
  132. package/dist/collection/collection-manifest.json +5 -6
  133. package/dist/collection/components/six-alert/six-alert.css +5 -1
  134. package/dist/collection/components/six-alert/six-alert.js +382 -337
  135. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  136. package/dist/collection/components/six-alert/test/six-alert.spec.js +7 -7
  137. package/dist/collection/components/six-alert/test/six-alert.spec.js.map +1 -1
  138. package/dist/collection/components/six-avatar/six-avatar.css +2 -2
  139. package/dist/collection/components/six-avatar/six-avatar.js +111 -111
  140. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -1
  141. package/dist/collection/components/six-avatar/test/six-avatar.spec.js +7 -7
  142. package/dist/collection/components/six-avatar/test/six-avatar.spec.js.map +1 -1
  143. package/dist/collection/components/six-badge/six-badge.css +1 -1
  144. package/dist/collection/components/six-badge/six-badge.js +90 -90
  145. package/dist/collection/components/six-badge/six-badge.js.map +1 -1
  146. package/dist/collection/components/six-badge/test/six-badge.spec.js +7 -7
  147. package/dist/collection/components/six-badge/test/six-badge.spec.js.map +1 -1
  148. package/dist/collection/components/six-button/six-button.css +2 -1
  149. package/dist/collection/components/six-button/six-button.js +447 -446
  150. package/dist/collection/components/six-button/six-button.js.map +1 -1
  151. package/dist/collection/components/six-button/test/six-button.spec.js +44 -44
  152. package/dist/collection/components/six-button/test/six-button.spec.js.map +1 -1
  153. package/dist/collection/components/six-card/six-card.css +4 -5
  154. package/dist/collection/components/six-card/six-card.js +15 -15
  155. package/dist/collection/components/six-card/six-card.js.map +1 -1
  156. package/dist/collection/components/six-card/test/six-card.spec.js +7 -7
  157. package/dist/collection/components/six-card/test/six-card.spec.js.map +1 -1
  158. package/dist/collection/components/six-checkbox/six-checkbox.css +9 -1
  159. package/dist/collection/components/six-checkbox/six-checkbox.js +421 -420
  160. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  161. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js +13 -13
  162. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js.map +1 -1
  163. package/dist/collection/components/six-datepicker/components/day-selection.js +8 -8
  164. package/dist/collection/components/six-datepicker/components/day-selection.js.map +1 -1
  165. package/dist/collection/components/six-datepicker/components/month-selection.js +8 -8
  166. package/dist/collection/components/six-datepicker/components/month-selection.js.map +1 -1
  167. package/dist/collection/components/six-datepicker/components/year-selection.js +8 -8
  168. package/dist/collection/components/six-datepicker/components/year-selection.js.map +1 -1
  169. package/dist/collection/components/six-datepicker/six-date-formats.js +21 -20
  170. package/dist/collection/components/six-datepicker/six-date-formats.js.map +1 -1
  171. package/dist/collection/components/six-datepicker/six-datepicker.css +1 -1
  172. package/dist/collection/components/six-datepicker/six-datepicker.js +1052 -1050
  173. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  174. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js +7 -7
  175. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js.map +1 -1
  176. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js +14 -14
  177. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js.map +1 -1
  178. package/dist/collection/components/six-details/six-details.css +1 -5
  179. package/dist/collection/components/six-details/six-details.js +410 -410
  180. package/dist/collection/components/six-details/six-details.js.map +1 -1
  181. package/dist/collection/components/six-details/test/six-details.spec.js +7 -7
  182. package/dist/collection/components/six-details/test/six-details.spec.js.map +1 -1
  183. package/dist/collection/components/six-dialog/six-dialog.css +2 -2
  184. package/dist/collection/components/six-dialog/six-dialog.js +356 -354
  185. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  186. package/dist/collection/components/six-dialog/test/six-dialog.spec.js +7 -7
  187. package/dist/collection/components/six-dialog/test/six-dialog.spec.js.map +1 -1
  188. package/dist/collection/components/six-drawer/six-drawer.css +2 -2
  189. package/dist/collection/components/six-drawer/six-drawer.js +409 -409
  190. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  191. package/dist/collection/components/six-drawer/test/six-drawer.spec.js +8 -8
  192. package/dist/collection/components/six-drawer/test/six-drawer.spec.js.map +1 -1
  193. package/dist/collection/components/six-dropdown/six-dropdown.css +22 -7
  194. package/dist/collection/components/six-dropdown/six-dropdown.js +983 -891
  195. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  196. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +92 -67
  197. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +1 -1
  198. package/dist/collection/components/six-error/six-error.js +15 -15
  199. package/dist/collection/components/six-error/six-error.js.map +1 -1
  200. package/dist/collection/components/six-error-page/six-error-page.js +177 -177
  201. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -1
  202. package/dist/collection/components/six-error-page/test/six-error-page.spec.js +77 -77
  203. package/dist/collection/components/six-error-page/test/six-error-page.spec.js.map +1 -1
  204. package/dist/collection/components/six-file-list/six-file-list.js +15 -15
  205. package/dist/collection/components/six-file-list/six-file-list.js.map +1 -1
  206. package/dist/collection/components/six-file-list/test/six-file-list.spec.js +16 -16
  207. package/dist/collection/components/six-file-list/test/six-file-list.spec.js.map +1 -1
  208. package/dist/collection/components/six-file-list-item/six-file-list-item.css +1 -1
  209. package/dist/collection/components/six-file-list-item/six-file-list-item.js +195 -195
  210. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  211. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js +42 -42
  212. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js.map +1 -1
  213. package/dist/collection/components/six-file-upload/six-file-upload.css +1 -4
  214. package/dist/collection/components/six-file-upload/six-file-upload.js +291 -291
  215. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  216. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +27 -27
  217. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -1
  218. package/dist/collection/components/six-footer/six-footer.css +2 -2
  219. package/dist/collection/components/six-footer/six-footer.js +15 -15
  220. package/dist/collection/components/six-footer/six-footer.js.map +1 -1
  221. package/dist/collection/components/six-footer/test/six-footer.spec.js +7 -7
  222. package/dist/collection/components/six-footer/test/six-footer.spec.js.map +1 -1
  223. package/dist/collection/components/six-group-label/six-group-label.css +4 -1
  224. package/dist/collection/components/six-group-label/six-group-label.js +155 -155
  225. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -1
  226. package/dist/collection/components/six-group-label/test/six-group-label.spec.js +12 -12
  227. package/dist/collection/components/six-group-label/test/six-group-label.spec.js.map +1 -1
  228. package/dist/collection/components/six-header/six-header.css +6 -2
  229. package/dist/collection/components/six-header/six-header.js +439 -405
  230. package/dist/collection/components/six-header/six-header.js.map +1 -1
  231. package/dist/collection/components/six-header/test/six-header.spec.js +77 -33
  232. package/dist/collection/components/six-header/test/six-header.spec.js.map +1 -1
  233. package/dist/collection/components/six-icon/six-icon.css +5 -2
  234. package/dist/collection/components/six-icon/six-icon.js +71 -71
  235. package/dist/collection/components/six-icon/six-icon.js.map +1 -1
  236. package/dist/collection/components/six-icon/test/six-icon.spec.js +7 -7
  237. package/dist/collection/components/six-icon/test/six-icon.spec.js.map +1 -1
  238. package/dist/collection/components/six-icon-button/six-icon-button.css +1 -1
  239. package/dist/collection/components/six-icon-button/six-icon-button.js +131 -131
  240. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -1
  241. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js +7 -7
  242. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js.map +1 -1
  243. package/dist/collection/components/six-input/six-input.css +13 -1
  244. package/dist/collection/components/six-input/six-input.js +967 -939
  245. package/dist/collection/components/six-input/six-input.js.map +1 -1
  246. package/dist/collection/components/six-input/test/six-input.spec.js +7 -7
  247. package/dist/collection/components/six-input/test/six-input.spec.js.map +1 -1
  248. package/dist/collection/components/six-item-picker/six-item-picker.css +8 -0
  249. package/dist/collection/components/six-item-picker/six-item-picker.js +727 -631
  250. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  251. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js +82 -82
  252. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js.map +1 -1
  253. package/dist/collection/components/six-item-picker/types.js +9 -7
  254. package/dist/collection/components/six-item-picker/types.js.map +1 -1
  255. package/dist/collection/components/six-language-switcher/six-language-switcher.js +124 -124
  256. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  257. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +79 -79
  258. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -1
  259. package/dist/collection/components/six-layout-grid/six-layout-grid.js +54 -54
  260. package/dist/collection/components/six-layout-grid/six-layout-grid.js.map +1 -1
  261. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js +7 -7
  262. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js.map +1 -1
  263. package/dist/collection/components/six-main-container/six-main-container.js +41 -41
  264. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -1
  265. package/dist/collection/components/six-main-container/test/six-main-container.spec.js +7 -7
  266. package/dist/collection/components/six-main-container/test/six-main-container.spec.js.map +1 -1
  267. package/dist/collection/components/six-menu/six-menu.css +8 -7
  268. package/dist/collection/components/six-menu/six-menu.js +388 -366
  269. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  270. package/dist/collection/components/six-menu/test/six-menu.spec.js +41 -41
  271. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -1
  272. package/dist/collection/components/six-menu-divider/six-menu-divider.css +3 -2
  273. package/dist/collection/components/six-menu-divider/six-menu-divider.js +15 -15
  274. package/dist/collection/components/six-menu-divider/six-menu-divider.js.map +1 -1
  275. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js +7 -7
  276. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js.map +1 -1
  277. package/dist/collection/components/six-menu-item/six-menu-item.css +13 -2
  278. package/dist/collection/components/six-menu-item/six-menu-item.js +209 -180
  279. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  280. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js +7 -7
  281. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js.map +1 -1
  282. package/dist/collection/components/six-menu-label/six-menu-label.css +1 -1
  283. package/dist/collection/components/six-menu-label/six-menu-label.js +15 -15
  284. package/dist/collection/components/six-menu-label/six-menu-label.js.map +1 -1
  285. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js +7 -7
  286. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js.map +1 -1
  287. package/dist/collection/components/six-picto/six-picto.js +46 -46
  288. package/dist/collection/components/six-picto/six-picto.js.map +1 -1
  289. package/dist/collection/components/six-picto/test/six-picto.spec.js +13 -13
  290. package/dist/collection/components/six-picto/test/six-picto.spec.js.map +1 -1
  291. package/dist/collection/components/six-progress-bar/six-progress-bar.css +1 -1
  292. package/dist/collection/components/six-progress-bar/six-progress-bar.js +64 -64
  293. package/dist/collection/components/six-progress-bar/six-progress-bar.js.map +1 -1
  294. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js +7 -7
  295. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js.map +1 -1
  296. package/dist/collection/components/six-progress-ring/six-progress-ring.css +1 -1
  297. package/dist/collection/components/six-progress-ring/six-progress-ring.js +100 -100
  298. package/dist/collection/components/six-progress-ring/six-progress-ring.js.map +1 -1
  299. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js +7 -7
  300. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js.map +1 -1
  301. package/dist/collection/components/six-radio/six-radio.css +1 -1
  302. package/dist/collection/components/six-radio/six-radio.js +321 -320
  303. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  304. package/dist/collection/components/six-radio/test/six-radio.spec.js +13 -13
  305. package/dist/collection/components/six-radio/test/six-radio.spec.js.map +1 -1
  306. package/dist/collection/components/six-range/six-range.css +4 -1
  307. package/dist/collection/components/six-range/six-range.js +564 -563
  308. package/dist/collection/components/six-range/six-range.js.map +1 -1
  309. package/dist/collection/components/six-range/test/six-range.spec.js +8 -8
  310. package/dist/collection/components/six-range/test/six-range.spec.js.map +1 -1
  311. package/dist/collection/components/six-root/six-root.js +84 -152
  312. package/dist/collection/components/six-root/six-root.js.map +1 -1
  313. package/dist/collection/components/six-root/test/six-root.spec.js +7 -14
  314. package/dist/collection/components/six-root/test/six-root.spec.js.map +1 -1
  315. package/dist/collection/components/six-search-field/six-search-field.css +1 -1
  316. package/dist/collection/components/six-search-field/six-search-field.js +169 -169
  317. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -1
  318. package/dist/collection/components/six-search-field/test/six-search-field.spec.js +7 -7
  319. package/dist/collection/components/six-search-field/test/six-search-field.spec.js.map +1 -1
  320. package/dist/collection/components/six-select/six-select.css +57 -66
  321. package/dist/collection/components/six-select/six-select.js +1117 -942
  322. package/dist/collection/components/six-select/six-select.js.map +1 -1
  323. package/dist/collection/components/six-select/test/six-select.spec.js +45 -29
  324. package/dist/collection/components/six-select/test/six-select.spec.js.map +1 -1
  325. package/dist/collection/components/six-select/test/util.spec.js +73 -73
  326. package/dist/collection/components/six-select/test/util.spec.js.map +1 -1
  327. package/dist/collection/components/six-select/util.js +34 -34
  328. package/dist/collection/components/six-select/util.js.map +1 -1
  329. package/dist/collection/components/six-sidebar/six-sidebar.css +2 -2
  330. package/dist/collection/components/six-sidebar/six-sidebar.js +466 -464
  331. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  332. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js +7 -7
  333. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js.map +1 -1
  334. package/dist/collection/components/six-sidebar-item/six-sidebar-item.css +6 -1
  335. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +101 -82
  336. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js.map +1 -1
  337. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js +19 -19
  338. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js.map +1 -1
  339. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +8 -1
  340. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +180 -153
  341. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -1
  342. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js +14 -14
  343. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js.map +1 -1
  344. package/dist/collection/components/six-spinner/six-spinner.css +1 -1
  345. package/dist/collection/components/six-spinner/six-spinner.js +47 -46
  346. package/dist/collection/components/six-spinner/six-spinner.js.map +1 -1
  347. package/dist/collection/components/six-spinner/test/six-spinner.spec.js +14 -14
  348. package/dist/collection/components/six-spinner/test/six-spinner.spec.js.map +1 -1
  349. package/dist/collection/components/six-stage-indicator/six-stage-indicator.css +1 -1
  350. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js +45 -45
  351. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js.map +1 -1
  352. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js +37 -37
  353. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js.map +1 -1
  354. package/dist/collection/components/six-switch/six-switch.css +4 -1
  355. package/dist/collection/components/six-switch/six-switch.js +384 -383
  356. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  357. package/dist/collection/components/six-switch/test/six-switch.spec.js +13 -13
  358. package/dist/collection/components/six-switch/test/six-switch.spec.js.map +1 -1
  359. package/dist/collection/components/six-tab/six-tab.css +1 -1
  360. package/dist/collection/components/six-tab/six-tab.js +206 -205
  361. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  362. package/dist/collection/components/six-tab-group/six-tab-group.css +1 -1
  363. package/dist/collection/components/six-tab-group/six-tab-group.js +317 -316
  364. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  365. package/dist/collection/components/six-tab-panel/six-tab-panel.css +1 -1
  366. package/dist/collection/components/six-tab-panel/six-tab-panel.js +63 -63
  367. package/dist/collection/components/six-tab-panel/six-tab-panel.js.map +1 -1
  368. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js +7 -7
  369. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js.map +1 -1
  370. package/dist/collection/components/six-tag/six-tag.css +1 -1
  371. package/dist/collection/components/six-tag/six-tag.js +158 -158
  372. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  373. package/dist/collection/components/six-tag/test/six-tag.spec.js +19 -19
  374. package/dist/collection/components/six-tag/test/six-tag.spec.js.map +1 -1
  375. package/dist/collection/components/six-textarea/six-textarea.css +4 -1
  376. package/dist/collection/components/six-textarea/six-textarea.js +792 -784
  377. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  378. package/dist/collection/components/six-textarea/test/six-textarea.spec.js +94 -94
  379. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +1 -1
  380. package/dist/collection/components/six-tile/six-tile.css +2 -2
  381. package/dist/collection/components/six-tile/six-tile.js +298 -298
  382. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  383. package/dist/collection/components/six-tile/test/six-tile.spec.js +14 -14
  384. package/dist/collection/components/six-tile/test/six-tile.spec.js.map +1 -1
  385. package/dist/collection/components/six-timepicker/six-timepicker.css +1 -1
  386. package/dist/collection/components/six-timepicker/six-timepicker.js +823 -822
  387. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  388. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js +155 -155
  389. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +1 -1
  390. package/dist/collection/components/six-tooltip/six-tooltip.css +1 -1
  391. package/dist/collection/components/six-tooltip/six-tooltip.js +407 -407
  392. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -1
  393. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js +7 -7
  394. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js.map +1 -1
  395. package/dist/collection/functional-components/form-control/form-control.js +19 -19
  396. package/dist/collection/functional-components/form-control/form-control.js.map +1 -1
  397. package/dist/collection/index.js +1 -0
  398. package/dist/collection/index.js.map +1 -1
  399. package/dist/collection/testUtil/delay.js +1 -1
  400. package/dist/collection/testUtil/delay.js.map +1 -1
  401. package/dist/collection/utils/alert.js +54 -0
  402. package/dist/collection/utils/alert.js.map +1 -0
  403. package/dist/collection/utils/animation.js +19 -19
  404. package/dist/collection/utils/animation.js.map +1 -1
  405. package/dist/collection/utils/date-util.js +525 -500
  406. package/dist/collection/utils/date-util.js.map +1 -1
  407. package/dist/collection/utils/date-util.spec.js +984 -984
  408. package/dist/collection/utils/date-util.spec.js.map +1 -1
  409. package/dist/collection/utils/error-messages.js +102 -81
  410. package/dist/collection/utils/error-messages.js.map +1 -1
  411. package/dist/collection/utils/event-listeners.js +51 -51
  412. package/dist/collection/utils/event-listeners.js.map +1 -1
  413. package/dist/collection/utils/execution-control.js +14 -14
  414. package/dist/collection/utils/execution-control.js.map +1 -1
  415. package/dist/collection/utils/focus-visible.js +28 -28
  416. package/dist/collection/utils/focus-visible.js.map +1 -1
  417. package/dist/collection/utils/form.js +12 -12
  418. package/dist/collection/utils/form.js.map +1 -1
  419. package/dist/collection/utils/modal.js +25 -25
  420. package/dist/collection/utils/modal.js.map +1 -1
  421. package/dist/collection/utils/offset.js +4 -4
  422. package/dist/collection/utils/offset.js.map +1 -1
  423. package/dist/collection/utils/popover.js +99 -99
  424. package/dist/collection/utils/popover.js.map +1 -1
  425. package/dist/collection/utils/popup.js +71 -71
  426. package/dist/collection/utils/popup.js.map +1 -1
  427. package/dist/collection/utils/scroll.js +27 -27
  428. package/dist/collection/utils/scroll.js.map +1 -1
  429. package/dist/collection/utils/scroll.spec.js +116 -116
  430. package/dist/collection/utils/scroll.spec.js.map +1 -1
  431. package/dist/collection/utils/slot.js +28 -29
  432. package/dist/collection/utils/slot.js.map +1 -1
  433. package/dist/collection/utils/support.js +10 -10
  434. package/dist/collection/utils/support.js.map +1 -1
  435. package/dist/collection/utils/tabbable.js +17 -17
  436. package/dist/collection/utils/tabbable.js.map +1 -1
  437. package/dist/collection/utils/time.util.js +72 -72
  438. package/dist/collection/utils/time.util.js.map +1 -1
  439. package/dist/collection/utils/time.util.spec.js +353 -353
  440. package/dist/collection/utils/time.util.spec.js.map +1 -1
  441. package/dist/components/event-listeners.js +51 -51
  442. package/dist/components/event-listeners.js.map +1 -1
  443. package/dist/components/execution-control.js +14 -14
  444. package/dist/components/execution-control.js.map +1 -1
  445. package/dist/components/focus-visible.js +28 -28
  446. package/dist/components/focus-visible.js.map +1 -1
  447. package/dist/components/form-control.js +26 -26
  448. package/dist/components/form-control.js.map +1 -1
  449. package/dist/components/form.js +12 -12
  450. package/dist/components/form.js.map +1 -1
  451. package/dist/components/index.d.ts +6 -0
  452. package/dist/components/index.js +112 -150
  453. package/dist/components/index.js.map +1 -1
  454. package/dist/components/modal.js +35 -35
  455. package/dist/components/modal.js.map +1 -1
  456. package/dist/components/popover.js +98 -98
  457. package/dist/components/popover.js.map +1 -1
  458. package/dist/components/scroll.js +31 -31
  459. package/dist/components/scroll.js.map +1 -1
  460. package/dist/components/six-alert.d.ts +2 -2
  461. package/dist/components/six-alert.js +177 -142
  462. package/dist/components/six-alert.js.map +1 -1
  463. package/dist/components/six-avatar.d.ts +2 -2
  464. package/dist/components/six-avatar.js +45 -45
  465. package/dist/components/six-avatar.js.map +1 -1
  466. package/dist/components/six-badge.d.ts +2 -2
  467. package/dist/components/six-badge.js +40 -40
  468. package/dist/components/six-badge.js.map +1 -1
  469. package/dist/components/six-button.d.ts +2 -2
  470. package/dist/components/six-button.js +1 -142
  471. package/dist/components/six-button.js.map +1 -1
  472. package/dist/components/six-button2.js +146 -0
  473. package/dist/components/six-button2.js.map +1 -0
  474. package/dist/components/six-card.d.ts +2 -2
  475. package/dist/components/six-card.js +21 -21
  476. package/dist/components/six-card.js.map +1 -1
  477. package/dist/components/six-checkbox.d.ts +2 -2
  478. package/dist/components/six-checkbox.js +1 -156
  479. package/dist/components/six-checkbox.js.map +1 -1
  480. package/dist/components/six-checkbox2.js +165 -0
  481. package/dist/components/six-checkbox2.js.map +1 -0
  482. package/dist/components/six-datepicker.d.ts +2 -2
  483. package/dist/components/six-datepicker.js +930 -901
  484. package/dist/components/six-datepicker.js.map +1 -1
  485. package/dist/components/six-details.d.ts +2 -2
  486. package/dist/components/six-details2.js +158 -156
  487. package/dist/components/six-details2.js.map +1 -1
  488. package/dist/components/six-dialog.d.ts +2 -2
  489. package/dist/components/six-dialog.js +161 -157
  490. package/dist/components/six-dialog.js.map +1 -1
  491. package/dist/components/six-drawer.d.ts +2 -2
  492. package/dist/components/six-drawer.js +179 -177
  493. package/dist/components/six-drawer.js.map +1 -1
  494. package/dist/components/six-dropdown.d.ts +2 -2
  495. package/dist/components/six-dropdown2.js +552 -469
  496. package/dist/components/six-dropdown2.js.map +1 -1
  497. package/dist/components/six-error-page.d.ts +2 -2
  498. package/dist/components/six-error-page.js +106 -106
  499. package/dist/components/six-error-page.js.map +1 -1
  500. package/dist/components/six-error.d.ts +2 -2
  501. package/dist/components/six-error2.js +20 -20
  502. package/dist/components/six-error2.js.map +1 -1
  503. package/dist/components/six-file-list-item.d.ts +2 -2
  504. package/dist/components/six-file-list-item.js +59 -59
  505. package/dist/components/six-file-list-item.js.map +1 -1
  506. package/dist/components/six-file-list.d.ts +2 -2
  507. package/dist/components/six-file-list.js +20 -20
  508. package/dist/components/six-file-list.js.map +1 -1
  509. package/dist/components/six-file-upload.d.ts +2 -2
  510. package/dist/components/six-file-upload.js +124 -124
  511. package/dist/components/six-file-upload.js.map +1 -1
  512. package/dist/components/six-footer.d.ts +2 -2
  513. package/dist/components/six-footer.js +21 -21
  514. package/dist/components/six-footer.js.map +1 -1
  515. package/dist/components/six-group-label.d.ts +2 -2
  516. package/dist/components/six-group-label.js +70 -67
  517. package/dist/components/six-group-label.js.map +1 -1
  518. package/dist/components/six-header.d.ts +2 -2
  519. package/dist/components/six-header.js +235 -211
  520. package/dist/components/six-header.js.map +1 -1
  521. package/dist/components/six-icon-button.d.ts +2 -2
  522. package/dist/components/six-icon-button2.js +55 -55
  523. package/dist/components/six-icon-button2.js.map +1 -1
  524. package/dist/components/six-icon.d.ts +2 -2
  525. package/dist/components/six-icon2.js +38 -38
  526. package/dist/components/six-icon2.js.map +1 -1
  527. package/dist/components/six-input.d.ts +2 -2
  528. package/dist/components/six-input2.js +257 -249
  529. package/dist/components/six-input2.js.map +1 -1
  530. package/dist/components/six-item-picker.d.ts +2 -2
  531. package/dist/components/six-item-picker2.js +450 -348
  532. package/dist/components/six-item-picker2.js.map +1 -1
  533. package/dist/components/six-language-switcher.d.ts +2 -2
  534. package/dist/components/six-language-switcher.js +64 -62
  535. package/dist/components/six-language-switcher.js.map +1 -1
  536. package/dist/components/six-layout-grid.d.ts +2 -2
  537. package/dist/components/six-layout-grid.js +37 -35
  538. package/dist/components/six-layout-grid.js.map +1 -1
  539. package/dist/components/six-main-container.d.ts +2 -2
  540. package/dist/components/six-main-container.js +24 -24
  541. package/dist/components/six-main-container.js.map +1 -1
  542. package/dist/components/six-menu-divider.d.ts +2 -2
  543. package/dist/components/six-menu-divider.js +21 -21
  544. package/dist/components/six-menu-divider.js.map +1 -1
  545. package/dist/components/six-menu-item.d.ts +2 -2
  546. package/dist/components/six-menu-item2.js +98 -75
  547. package/dist/components/six-menu-item2.js.map +1 -1
  548. package/dist/components/six-menu-label.d.ts +2 -2
  549. package/dist/components/six-menu-label.js +21 -21
  550. package/dist/components/six-menu-label.js.map +1 -1
  551. package/dist/components/six-menu.d.ts +2 -2
  552. package/dist/components/six-menu2.js +236 -220
  553. package/dist/components/six-menu2.js.map +1 -1
  554. package/dist/components/six-picto.d.ts +2 -2
  555. package/dist/components/six-picto2.js +29 -29
  556. package/dist/components/six-picto2.js.map +1 -1
  557. package/dist/components/six-progress-bar.d.ts +2 -2
  558. package/dist/components/six-progress-bar.js +31 -31
  559. package/dist/components/six-progress-bar.js.map +1 -1
  560. package/dist/components/six-progress-ring.d.ts +2 -2
  561. package/dist/components/six-progress-ring.js +49 -47
  562. package/dist/components/six-progress-ring.js.map +1 -1
  563. package/dist/components/six-radio.d.ts +2 -2
  564. package/dist/components/six-radio.js +128 -125
  565. package/dist/components/six-radio.js.map +1 -1
  566. package/dist/components/six-range.d.ts +2 -2
  567. package/dist/components/six-range.js +232 -225
  568. package/dist/components/six-range.js.map +1 -1
  569. package/dist/components/six-root.d.ts +2 -2
  570. package/dist/components/six-root.js +39 -66
  571. package/dist/components/six-root.js.map +1 -1
  572. package/dist/components/six-search-field.d.ts +2 -2
  573. package/dist/components/six-search-field.js +78 -76
  574. package/dist/components/six-search-field.js.map +1 -1
  575. package/dist/components/six-select.d.ts +2 -2
  576. package/dist/components/six-select.js +719 -462
  577. package/dist/components/six-select.js.map +1 -1
  578. package/dist/components/six-sidebar-item-group.d.ts +2 -2
  579. package/dist/components/six-sidebar-item-group.js +87 -76
  580. package/dist/components/six-sidebar-item-group.js.map +1 -1
  581. package/dist/components/six-sidebar-item.d.ts +2 -2
  582. package/dist/components/six-sidebar-item.js +35 -32
  583. package/dist/components/six-sidebar-item.js.map +1 -1
  584. package/dist/components/six-sidebar.d.ts +2 -2
  585. package/dist/components/six-sidebar.js +199 -197
  586. package/dist/components/six-sidebar.js.map +1 -1
  587. package/dist/components/six-spinner.d.ts +2 -2
  588. package/dist/components/six-spinner2.js +30 -30
  589. package/dist/components/six-spinner2.js.map +1 -1
  590. package/dist/components/six-stage-indicator.d.ts +2 -2
  591. package/dist/components/six-stage-indicator2.js +29 -29
  592. package/dist/components/six-stage-indicator2.js.map +1 -1
  593. package/dist/components/six-switch.d.ts +2 -2
  594. package/dist/components/six-switch.js +140 -136
  595. package/dist/components/six-switch.js.map +1 -1
  596. package/dist/components/six-tab-group.d.ts +2 -2
  597. package/dist/components/six-tab-group.js +244 -242
  598. package/dist/components/six-tab-group.js.map +1 -1
  599. package/dist/components/six-tab-panel.d.ts +2 -2
  600. package/dist/components/six-tab-panel.js +30 -30
  601. package/dist/components/six-tab-panel.js.map +1 -1
  602. package/dist/components/six-tab.d.ts +2 -2
  603. package/dist/components/six-tab.js +85 -85
  604. package/dist/components/six-tab.js.map +1 -1
  605. package/dist/components/six-tag.d.ts +2 -2
  606. package/dist/components/six-tag.js +98 -1
  607. package/dist/components/six-tag.js.map +1 -1
  608. package/dist/components/six-textarea.d.ts +2 -2
  609. package/dist/components/six-textarea.js +234 -228
  610. package/dist/components/six-textarea.js.map +1 -1
  611. package/dist/components/six-tile.d.ts +2 -2
  612. package/dist/components/six-tile.js +117 -117
  613. package/dist/components/six-tile.js.map +1 -1
  614. package/dist/components/six-timepicker.d.ts +2 -2
  615. package/dist/components/six-timepicker2.js +490 -488
  616. package/dist/components/six-timepicker2.js.map +1 -1
  617. package/dist/components/six-tooltip.d.ts +2 -2
  618. package/dist/components/six-tooltip2.js +172 -170
  619. package/dist/components/six-tooltip2.js.map +1 -1
  620. package/dist/components/slot.js +29 -30
  621. package/dist/components/slot.js.map +1 -1
  622. package/dist/components.d.ts +1 -21
  623. package/dist/components.json +653 -232
  624. package/dist/esm/error-messages-1eaaad23.js +115 -0
  625. package/dist/esm/error-messages-1eaaad23.js.map +1 -0
  626. package/dist/esm/event-listeners-706d4309.js +59 -0
  627. package/dist/esm/event-listeners-706d4309.js.map +1 -0
  628. package/dist/esm/{execution-control-e0892a05.js → execution-control-2ebaf4ef.js} +15 -15
  629. package/dist/esm/{execution-control-e0892a05.js.map → execution-control-2ebaf4ef.js.map} +1 -1
  630. package/dist/esm/focus-visible-d9dbfeef.js +45 -0
  631. package/dist/esm/{focus-visible-fc6ac671.js.map → focus-visible-d9dbfeef.js.map} +1 -1
  632. package/dist/esm/form-4b145b7a.js +18 -0
  633. package/dist/esm/{form-81252534.js.map → form-4b145b7a.js.map} +1 -1
  634. package/dist/esm/form-control-d403a9cf.js +34 -0
  635. package/dist/esm/form-control-d403a9cf.js.map +1 -0
  636. package/dist/esm/{index-8a74f992.js → index-79d4ef67.js} +418 -657
  637. package/dist/esm/index-79d4ef67.js.map +1 -0
  638. package/dist/esm/index.js +52 -87
  639. package/dist/esm/index.js.map +1 -1
  640. package/dist/esm/loader.js +3 -3
  641. package/dist/esm/modal-96526245.js +49 -0
  642. package/dist/esm/modal-96526245.js.map +1 -0
  643. package/dist/esm/{popover-136d1f73.js → popover-25996e62.js} +99 -99
  644. package/dist/esm/popover-25996e62.js.map +1 -0
  645. package/dist/esm/popup-7209e9d5.js +98 -0
  646. package/dist/esm/popup-7209e9d5.js.map +1 -0
  647. package/dist/esm/scroll-3e16851e.js +64 -0
  648. package/dist/esm/{scroll-774762d6.js.map → scroll-3e16851e.js.map} +1 -1
  649. package/dist/esm/six-alert.entry.js +142 -110
  650. package/dist/esm/six-alert.entry.js.map +1 -1
  651. package/dist/esm/six-avatar.entry.js +21 -21
  652. package/dist/esm/six-avatar.entry.js.map +1 -1
  653. package/dist/esm/six-badge.entry.js +23 -23
  654. package/dist/esm/six-badge.entry.js.map +1 -1
  655. package/dist/esm/six-button.entry.js +95 -95
  656. package/dist/esm/six-button.entry.js.map +1 -1
  657. package/dist/esm/six-card.entry.js +8 -8
  658. package/dist/esm/six-card.entry.js.map +1 -1
  659. package/dist/esm/six-checkbox_2.entry.js +185 -0
  660. package/dist/esm/six-checkbox_2.entry.js.map +1 -0
  661. package/dist/esm/six-datepicker.entry.js +860 -834
  662. package/dist/esm/six-datepicker.entry.js.map +1 -1
  663. package/dist/esm/six-details.entry.js +127 -127
  664. package/dist/esm/six-details.entry.js.map +1 -1
  665. package/dist/esm/six-dialog.entry.js +131 -129
  666. package/dist/esm/six-dialog.entry.js.map +1 -1
  667. package/dist/esm/six-drawer.entry.js +147 -147
  668. package/dist/esm/six-drawer.entry.js.map +1 -1
  669. package/dist/esm/six-dropdown_2.entry.js +709 -637
  670. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  671. package/dist/esm/six-error-page.entry.js +82 -82
  672. package/dist/esm/six-error-page.entry.js.map +1 -1
  673. package/dist/esm/six-error.entry.js +7 -7
  674. package/dist/esm/six-error.entry.js.map +1 -1
  675. package/dist/esm/six-file-list-item.entry.js +34 -34
  676. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  677. package/dist/esm/six-file-list.entry.js +7 -7
  678. package/dist/esm/six-file-list.entry.js.map +1 -1
  679. package/dist/esm/six-file-upload.entry.js +99 -99
  680. package/dist/esm/six-file-upload.entry.js.map +1 -1
  681. package/dist/esm/six-footer.entry.js +8 -8
  682. package/dist/esm/six-footer.entry.js.map +1 -1
  683. package/dist/esm/six-group-label.entry.js +43 -43
  684. package/dist/esm/six-group-label.entry.js.map +1 -1
  685. package/dist/esm/six-header.entry.js +171 -156
  686. package/dist/esm/six-header.entry.js.map +1 -1
  687. package/dist/esm/six-icon-button.entry.js +32 -32
  688. package/dist/esm/six-icon-button.entry.js.map +1 -1
  689. package/dist/esm/six-icon.entry.js +22 -22
  690. package/dist/esm/six-icon.entry.js.map +1 -1
  691. package/dist/esm/six-input.entry.js +192 -190
  692. package/dist/esm/six-input.entry.js.map +1 -1
  693. package/dist/esm/six-item-picker.entry.js +405 -309
  694. package/dist/esm/six-item-picker.entry.js.map +1 -1
  695. package/dist/esm/six-language-switcher.entry.js +46 -46
  696. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  697. package/dist/esm/six-layout-grid.entry.js +20 -20
  698. package/dist/esm/six-layout-grid.entry.js.map +1 -1
  699. package/dist/esm/six-main-container.entry.js +9 -9
  700. package/dist/esm/six-main-container.entry.js.map +1 -1
  701. package/dist/esm/six-menu-divider.entry.js +8 -8
  702. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  703. package/dist/esm/six-menu-label.entry.js +8 -8
  704. package/dist/esm/six-menu-label.entry.js.map +1 -1
  705. package/dist/esm/six-picto.entry.js +14 -14
  706. package/dist/esm/six-picto.entry.js.map +1 -1
  707. package/dist/esm/six-progress-bar.entry.js +15 -15
  708. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  709. package/dist/esm/six-progress-ring.entry.js +30 -30
  710. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  711. package/dist/esm/six-radio.entry.js +104 -104
  712. package/dist/esm/six-radio.entry.js.map +1 -1
  713. package/dist/esm/six-range.entry.js +180 -180
  714. package/dist/esm/six-range.entry.js.map +1 -1
  715. package/dist/esm/six-root.entry.js +11 -30
  716. package/dist/esm/six-root.entry.js.map +1 -1
  717. package/dist/esm/six-search-field.entry.js +44 -44
  718. package/dist/esm/six-search-field.entry.js.map +1 -1
  719. package/dist/esm/six-select.entry.js +497 -366
  720. package/dist/esm/six-select.entry.js.map +1 -1
  721. package/dist/esm/six-sidebar-item-group.entry.js +56 -46
  722. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  723. package/dist/esm/six-sidebar-item.entry.js +17 -15
  724. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  725. package/dist/esm/six-sidebar.entry.js +174 -174
  726. package/dist/esm/six-sidebar.entry.js.map +1 -1
  727. package/dist/esm/six-spinner.entry.js +15 -15
  728. package/dist/esm/six-spinner.entry.js.map +1 -1
  729. package/dist/esm/six-stage-indicator.entry.js +18 -0
  730. package/dist/esm/six-stage-indicator.entry.js.map +1 -0
  731. package/dist/esm/six-switch.entry.js +107 -107
  732. package/dist/esm/six-switch.entry.js.map +1 -1
  733. package/dist/esm/six-tab-group.entry.js +215 -215
  734. package/dist/esm/six-tab-group.entry.js.map +1 -1
  735. package/dist/esm/six-tab-panel.entry.js +14 -14
  736. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  737. package/dist/esm/six-tab.entry.js +55 -55
  738. package/dist/esm/six-tab.entry.js.map +1 -1
  739. package/dist/esm/six-tag.entry.js +53 -53
  740. package/dist/esm/six-tag.entry.js.map +1 -1
  741. package/dist/esm/six-textarea.entry.js +181 -181
  742. package/dist/esm/six-textarea.entry.js.map +1 -1
  743. package/dist/esm/six-tile.entry.js +77 -77
  744. package/dist/esm/six-tile.entry.js.map +1 -1
  745. package/dist/esm/six-timepicker.entry.js +349 -349
  746. package/dist/esm/six-timepicker.entry.js.map +1 -1
  747. package/dist/esm/six-tooltip.entry.js +148 -148
  748. package/dist/esm/six-tooltip.entry.js.map +1 -1
  749. package/dist/esm/slot-56531341.js +47 -0
  750. package/dist/esm/slot-56531341.js.map +1 -0
  751. package/dist/esm/types-a07bb999.js +19 -0
  752. package/dist/esm/types-a07bb999.js.map +1 -0
  753. package/dist/esm/ui-library.js +4 -4
  754. package/dist/esm/ui-library.js.map +1 -1
  755. package/dist/types/components/six-alert/six-alert.d.ts +47 -40
  756. package/dist/types/components/six-avatar/six-avatar.d.ts +11 -11
  757. package/dist/types/components/six-badge/six-badge.d.ts +7 -7
  758. package/dist/types/components/six-button/six-button.d.ts +48 -48
  759. package/dist/types/components/six-card/six-card.d.ts +1 -1
  760. package/dist/types/components/six-checkbox/six-checkbox.d.ts +58 -58
  761. package/dist/types/components/six-datepicker/components/day-selection.d.ts +3 -3
  762. package/dist/types/components/six-datepicker/components/month-selection.d.ts +3 -3
  763. package/dist/types/components/six-datepicker/components/year-selection.d.ts +3 -3
  764. package/dist/types/components/six-datepicker/six-date-formats.d.ts +20 -20
  765. package/dist/types/components/six-datepicker/six-datepicker.d.ts +187 -187
  766. package/dist/types/components/six-details/six-details.d.ts +42 -42
  767. package/dist/types/components/six-dialog/six-dialog.d.ts +51 -50
  768. package/dist/types/components/six-drawer/six-drawer.d.ts +58 -58
  769. package/dist/types/components/six-dropdown/six-dropdown.d.ts +131 -112
  770. package/dist/types/components/six-error/six-error.d.ts +1 -1
  771. package/dist/types/components/six-error-page/six-error-page.d.ts +25 -25
  772. package/dist/types/components/six-file-list/six-file-list.d.ts +1 -1
  773. package/dist/types/components/six-file-list-item/six-file-list-item.d.ts +23 -23
  774. package/dist/types/components/six-file-upload/six-file-upload.d.ts +33 -33
  775. package/dist/types/components/six-footer/six-footer.d.ts +1 -1
  776. package/dist/types/components/six-group-label/six-group-label.d.ts +22 -22
  777. package/dist/types/components/six-header/six-header.d.ts +59 -55
  778. package/dist/types/components/six-icon/six-icon.d.ts +5 -5
  779. package/dist/types/components/six-icon-button/six-icon-button.d.ts +18 -18
  780. package/dist/types/components/six-input/six-input.d.ts +109 -105
  781. package/dist/types/components/six-item-picker/six-item-picker.d.ts +95 -88
  782. package/dist/types/components/six-item-picker/types.d.ts +7 -7
  783. package/dist/types/components/six-language-switcher/six-language-switcher.d.ts +15 -15
  784. package/dist/types/components/six-layout-grid/six-layout-grid.d.ts +6 -6
  785. package/dist/types/components/six-main-container/six-main-container.d.ts +4 -4
  786. package/dist/types/components/six-menu/six-menu.d.ts +67 -63
  787. package/dist/types/components/six-menu-divider/six-menu-divider.d.ts +1 -1
  788. package/dist/types/components/six-menu-item/six-menu-item.d.ts +27 -21
  789. package/dist/types/components/six-menu-label/six-menu-label.d.ts +1 -1
  790. package/dist/types/components/six-picto/six-picto.d.ts +6 -6
  791. package/dist/types/components/six-progress-bar/six-progress-bar.d.ts +5 -5
  792. package/dist/types/components/six-progress-ring/six-progress-ring.d.ts +11 -11
  793. package/dist/types/components/six-radio/six-radio.d.ts +38 -38
  794. package/dist/types/components/six-range/six-range.d.ts +75 -75
  795. package/dist/types/components/six-root/six-root.d.ts +8 -21
  796. package/dist/types/components/six-search-field/six-search-field.d.ts +20 -20
  797. package/dist/types/components/six-select/six-select.d.ts +137 -122
  798. package/dist/types/components/six-select/util.d.ts +1 -1
  799. package/dist/types/components/six-sidebar/six-sidebar.d.ts +45 -45
  800. package/dist/types/components/six-sidebar-item/six-sidebar-item.d.ts +12 -7
  801. package/dist/types/components/six-sidebar-item-group/six-sidebar-item-group.d.ts +25 -19
  802. package/dist/types/components/six-spinner/six-spinner.d.ts +6 -5
  803. package/dist/types/components/six-stage-indicator/six-stage-indicator.d.ts +3 -3
  804. package/dist/types/components/six-switch/six-switch.d.ts +48 -48
  805. package/dist/types/components/six-tab/six-tab.d.ts +20 -20
  806. package/dist/types/components/six-tab-group/six-tab-group.d.ts +35 -35
  807. package/dist/types/components/six-tab-panel/six-tab-panel.d.ts +7 -7
  808. package/dist/types/components/six-tag/six-tag.d.ts +20 -20
  809. package/dist/types/components/six-textarea/six-textarea.d.ts +89 -89
  810. package/dist/types/components/six-tile/six-tile.d.ts +31 -31
  811. package/dist/types/components/six-timepicker/six-timepicker.d.ts +152 -152
  812. package/dist/types/components/six-tooltip/six-tooltip.d.ts +55 -55
  813. package/dist/types/components.d.ts +456 -48
  814. package/dist/types/functional-components/form-control/form-control.d.ts +32 -32
  815. package/dist/types/index.d.ts +1 -0
  816. package/dist/types/stencil-public-runtime.d.ts +34 -3
  817. package/dist/types/types.d.ts +1 -0
  818. package/dist/types/utils/alert.d.ts +10 -0
  819. package/dist/types/utils/date-util.d.ts +58 -50
  820. package/dist/types/utils/error-messages.d.ts +27 -25
  821. package/dist/types/utils/event-listeners.d.ts +11 -11
  822. package/dist/types/utils/focus-visible.d.ts +2 -2
  823. package/dist/types/utils/modal.d.ts +8 -8
  824. package/dist/types/utils/offset.d.ts +2 -2
  825. package/dist/types/utils/popover.d.ts +21 -21
  826. package/dist/types/utils/slot.d.ts +0 -1
  827. package/dist/types/utils/time.util.d.ts +6 -6
  828. package/dist/types/utils/types.d.ts +1 -1
  829. package/dist/ui-library/index.esm.js +1 -1
  830. package/dist/ui-library/index.esm.js.map +1 -1
  831. package/dist/ui-library/p-0440335d.entry.js +2 -0
  832. package/dist/ui-library/{p-dc4f41d8.entry.js.map → p-0440335d.entry.js.map} +1 -1
  833. package/dist/ui-library/p-04cc397c.entry.js +2 -0
  834. package/dist/ui-library/{p-a0f290d0.entry.js.map → p-04cc397c.entry.js.map} +1 -1
  835. package/dist/ui-library/{p-5654e4c7.js → p-06ba4450.js} +1 -1
  836. package/dist/ui-library/p-0cebf1d2.js +2 -0
  837. package/dist/ui-library/p-0cebf1d2.js.map +1 -0
  838. package/dist/ui-library/p-0edd3091.entry.js +2 -0
  839. package/dist/ui-library/{p-b6f47c9d.entry.js.map → p-0edd3091.entry.js.map} +1 -1
  840. package/dist/ui-library/p-150b7664.entry.js +2 -0
  841. package/dist/ui-library/{p-66fe54b3.entry.js.map → p-150b7664.entry.js.map} +1 -1
  842. package/dist/ui-library/p-1f5840b5.entry.js +2 -0
  843. package/dist/ui-library/p-1f5840b5.entry.js.map +1 -0
  844. package/dist/ui-library/p-28cc013e.entry.js +2 -0
  845. package/dist/ui-library/p-28cc013e.entry.js.map +1 -0
  846. package/dist/ui-library/p-3424bbc0.entry.js +2 -0
  847. package/dist/ui-library/p-3424bbc0.entry.js.map +1 -0
  848. package/dist/ui-library/p-348c68a8.entry.js +2 -0
  849. package/dist/ui-library/p-348c68a8.entry.js.map +1 -0
  850. package/dist/ui-library/p-3723ca06.entry.js +2 -0
  851. package/dist/ui-library/p-3723ca06.entry.js.map +1 -0
  852. package/dist/ui-library/p-37aeac5e.entry.js +2 -0
  853. package/dist/ui-library/{p-22c9b8c3.entry.js.map → p-37aeac5e.entry.js.map} +1 -1
  854. package/dist/ui-library/p-3d7fb086.entry.js +2 -0
  855. package/dist/ui-library/p-3d7fb086.entry.js.map +1 -0
  856. package/dist/ui-library/{p-5af44076.entry.js → p-457f7373.entry.js} +2 -2
  857. package/dist/ui-library/{p-5af44076.entry.js.map → p-457f7373.entry.js.map} +1 -1
  858. package/dist/ui-library/p-4a667f31.entry.js +2 -0
  859. package/dist/ui-library/p-4a667f31.entry.js.map +1 -0
  860. package/dist/ui-library/p-50dae789.entry.js +2 -0
  861. package/dist/ui-library/{p-4435ff73.entry.js.map → p-50dae789.entry.js.map} +1 -1
  862. package/dist/ui-library/{p-b351f889.entry.js → p-546e33d9.entry.js} +2 -2
  863. package/dist/ui-library/{p-ac099e6b.entry.js → p-5db3a705.entry.js} +2 -2
  864. package/dist/ui-library/{p-ac099e6b.entry.js.map → p-5db3a705.entry.js.map} +1 -1
  865. package/dist/ui-library/{p-e5020f0d.js → p-61e66671.js} +2 -2
  866. package/dist/ui-library/p-6296779b.entry.js +2 -0
  867. package/dist/ui-library/p-6296779b.entry.js.map +1 -0
  868. package/dist/ui-library/p-64b4755d.entry.js +2 -0
  869. package/dist/ui-library/{p-ee950ce2.entry.js.map → p-64b4755d.entry.js.map} +1 -1
  870. package/dist/ui-library/p-6c1b046e.entry.js +2 -0
  871. package/dist/ui-library/p-6c1b046e.entry.js.map +1 -0
  872. package/dist/ui-library/p-7115316e.entry.js +2 -0
  873. package/dist/ui-library/p-7115316e.entry.js.map +1 -0
  874. package/dist/ui-library/p-73dd493f.entry.js +2 -0
  875. package/dist/ui-library/p-73dd493f.entry.js.map +1 -0
  876. package/dist/ui-library/{p-0fdb185d.js → p-7f856f00.js} +1 -1
  877. package/dist/ui-library/{p-052aa8d3.js → p-8227aaed.js} +1 -1
  878. package/dist/ui-library/{p-8c0971e0.js → p-842b492e.js} +1 -1
  879. package/dist/ui-library/{p-0f510624.js → p-862d474e.js} +1 -1
  880. package/dist/ui-library/p-862d474e.js.map +1 -0
  881. package/dist/ui-library/p-870b988d.entry.js +2 -0
  882. package/dist/ui-library/{p-3f1a5ecb.entry.js.map → p-870b988d.entry.js.map} +1 -1
  883. package/dist/ui-library/{p-13b43e04.entry.js → p-884c5cf9.entry.js} +2 -2
  884. package/dist/ui-library/p-8888a367.entry.js +2 -0
  885. package/dist/ui-library/{p-878226a0.entry.js.map → p-8888a367.entry.js.map} +1 -1
  886. package/dist/ui-library/{p-7d95def3.js → p-8bfb4bfc.js} +1 -1
  887. package/dist/ui-library/p-8ced18d8.entry.js +2 -0
  888. package/dist/ui-library/p-8ced18d8.entry.js.map +1 -0
  889. package/dist/ui-library/{p-dfed33c5.entry.js → p-935c78a7.entry.js} +2 -2
  890. package/dist/ui-library/p-961bd001.entry.js +2 -0
  891. package/dist/ui-library/{p-db34a6cc.entry.js.map → p-961bd001.entry.js.map} +1 -1
  892. package/dist/ui-library/{p-9ace84c7.js → p-998de05d.js} +1 -1
  893. package/dist/ui-library/p-9b08068d.entry.js +2 -0
  894. package/dist/ui-library/p-9b08068d.entry.js.map +1 -0
  895. package/dist/ui-library/p-9c79341d.entry.js +2 -0
  896. package/dist/ui-library/{p-3cc5addb.entry.js.map → p-9c79341d.entry.js.map} +1 -1
  897. package/dist/ui-library/{p-698bb2c8.js → p-a1502802.js} +1 -1
  898. package/dist/ui-library/{p-91b51800.entry.js → p-a9c159f2.entry.js} +2 -2
  899. package/dist/ui-library/p-ac57ba5c.entry.js +2 -0
  900. package/dist/ui-library/{p-a6a9ee96.entry.js.map → p-ac57ba5c.entry.js.map} +1 -1
  901. package/dist/ui-library/p-af15381b.js +3 -0
  902. package/dist/ui-library/p-af15381b.js.map +1 -0
  903. package/dist/ui-library/p-b1a5f3cd.entry.js +2 -0
  904. package/dist/ui-library/p-b1a5f3cd.entry.js.map +1 -0
  905. package/dist/ui-library/p-b385a241.entry.js +2 -0
  906. package/dist/ui-library/{p-cd67da3d.entry.js.map → p-b385a241.entry.js.map} +1 -1
  907. package/dist/ui-library/p-b74c5d6b.entry.js +2 -0
  908. package/dist/ui-library/p-b74c5d6b.entry.js.map +1 -0
  909. package/dist/ui-library/p-bf2fb53f.entry.js +2 -0
  910. package/dist/ui-library/p-bf2fb53f.entry.js.map +1 -0
  911. package/dist/ui-library/p-c2c7370b.entry.js +2 -0
  912. package/dist/ui-library/{p-f1dc3a88.entry.js.map → p-c2c7370b.entry.js.map} +1 -1
  913. package/dist/ui-library/p-caea1eb6.entry.js +2 -0
  914. package/dist/ui-library/{p-7e3ad38a.entry.js.map → p-caea1eb6.entry.js.map} +1 -1
  915. package/dist/ui-library/{p-25bb1752.entry.js → p-d3f5b9a8.entry.js} +2 -2
  916. package/dist/ui-library/p-d42b18eb.entry.js +2 -0
  917. package/dist/ui-library/{p-264d4ea8.entry.js.map → p-d42b18eb.entry.js.map} +1 -1
  918. package/dist/ui-library/p-d95e292e.entry.js +2 -0
  919. package/dist/ui-library/{p-db936ad7.entry.js.map → p-d95e292e.entry.js.map} +1 -1
  920. package/dist/ui-library/p-da7f3dbd.entry.js +2 -0
  921. package/dist/ui-library/p-da7f3dbd.entry.js.map +1 -0
  922. package/dist/ui-library/p-dfb89b6a.entry.js +2 -0
  923. package/dist/ui-library/p-dfb89b6a.entry.js.map +1 -0
  924. package/dist/ui-library/p-e080d5b6.js +2 -0
  925. package/dist/ui-library/p-e080d5b6.js.map +1 -0
  926. package/dist/ui-library/p-e6032375.entry.js +2 -0
  927. package/dist/ui-library/p-e6032375.entry.js.map +1 -0
  928. package/dist/ui-library/p-e60d2324.entry.js +2 -0
  929. package/dist/ui-library/p-e60d2324.entry.js.map +1 -0
  930. package/dist/ui-library/p-e8298c6e.entry.js +2 -0
  931. package/dist/ui-library/{p-a457fee8.entry.js.map → p-e8298c6e.entry.js.map} +1 -1
  932. package/dist/ui-library/p-ed279165.entry.js +2 -0
  933. package/dist/ui-library/p-ed279165.entry.js.map +1 -0
  934. package/dist/ui-library/p-ed61b75c.entry.js +2 -0
  935. package/dist/ui-library/p-ed61b75c.entry.js.map +1 -0
  936. package/dist/ui-library/p-f136a6b2.js +2 -0
  937. package/dist/ui-library/p-f136a6b2.js.map +1 -0
  938. package/dist/ui-library/p-f1ab3384.entry.js +2 -0
  939. package/dist/ui-library/{p-37557787.entry.js.map → p-f1ab3384.entry.js.map} +1 -1
  940. package/dist/ui-library/p-f4ef481c.entry.js +2 -0
  941. package/dist/ui-library/p-f4ef481c.entry.js.map +1 -0
  942. package/dist/ui-library/{p-9b354f5d.entry.js → p-f8cbb8da.entry.js} +2 -2
  943. package/dist/ui-library/ui-library.css +1 -10
  944. package/dist/ui-library/ui-library.esm.js +1 -1
  945. package/dist/ui-library/ui-library.esm.js.map +1 -1
  946. package/package.json +16 -17
  947. package/dist/cjs/event-listeners-fdfe838c.js +0 -61
  948. package/dist/cjs/event-listeners-fdfe838c.js.map +0 -1
  949. package/dist/cjs/focus-visible-ae2470dd.js +0 -47
  950. package/dist/cjs/form-2df8c5bb.js +0 -20
  951. package/dist/cjs/form-control-9769b310.js +0 -36
  952. package/dist/cjs/form-control-9769b310.js.map +0 -1
  953. package/dist/cjs/index-900437fc.js.map +0 -1
  954. package/dist/cjs/modal-d5f074c7.js +0 -52
  955. package/dist/cjs/modal-d5f074c7.js.map +0 -1
  956. package/dist/cjs/popover-2df7e154.js.map +0 -1
  957. package/dist/cjs/popup-f1d9910f.js +0 -103
  958. package/dist/cjs/popup-f1d9910f.js.map +0 -1
  959. package/dist/cjs/scroll-2c4200dc.js +0 -68
  960. package/dist/cjs/set-attributes_2.cjs.entry.js +0 -73
  961. package/dist/cjs/set-attributes_2.cjs.entry.js.map +0 -1
  962. package/dist/cjs/six-checkbox.cjs.entry.js +0 -127
  963. package/dist/cjs/six-checkbox.cjs.entry.js.map +0 -1
  964. package/dist/cjs/six-menu-item.cjs.entry.js +0 -63
  965. package/dist/cjs/six-menu-item.cjs.entry.js.map +0 -1
  966. package/dist/cjs/slot-6e6a400f.js +0 -53
  967. package/dist/cjs/slot-6e6a400f.js.map +0 -1
  968. package/dist/cjs/types-47199040.js +0 -17
  969. package/dist/cjs/types-47199040.js.map +0 -1
  970. package/dist/collection/wrappers/set-attributes/set-attributes.js +0 -74
  971. package/dist/collection/wrappers/set-attributes/set-attributes.js.map +0 -1
  972. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js +0 -16
  973. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js.map +0 -1
  974. package/dist/components/set-attributes.d.ts +0 -11
  975. package/dist/components/set-attributes.js +0 -8
  976. package/dist/components/set-attributes.js.map +0 -1
  977. package/dist/components/set-attributes2.js +0 -71
  978. package/dist/components/set-attributes2.js.map +0 -1
  979. package/dist/components/six-tag2.js +0 -102
  980. package/dist/components/six-tag2.js.map +0 -1
  981. package/dist/esm/event-listeners-f6e5b0ab.js +0 -59
  982. package/dist/esm/event-listeners-f6e5b0ab.js.map +0 -1
  983. package/dist/esm/focus-visible-fc6ac671.js +0 -45
  984. package/dist/esm/form-81252534.js +0 -18
  985. package/dist/esm/form-control-b0febe88.js +0 -34
  986. package/dist/esm/form-control-b0febe88.js.map +0 -1
  987. package/dist/esm/index-8a74f992.js.map +0 -1
  988. package/dist/esm/modal-7d32e141.js +0 -49
  989. package/dist/esm/modal-7d32e141.js.map +0 -1
  990. package/dist/esm/popover-136d1f73.js.map +0 -1
  991. package/dist/esm/popup-7f89a001.js +0 -98
  992. package/dist/esm/popup-7f89a001.js.map +0 -1
  993. package/dist/esm/scroll-774762d6.js +0 -64
  994. package/dist/esm/set-attributes_2.entry.js +0 -68
  995. package/dist/esm/set-attributes_2.entry.js.map +0 -1
  996. package/dist/esm/six-checkbox.entry.js +0 -123
  997. package/dist/esm/six-checkbox.entry.js.map +0 -1
  998. package/dist/esm/six-menu-item.entry.js +0 -59
  999. package/dist/esm/six-menu-item.entry.js.map +0 -1
  1000. package/dist/esm/slot-ad36df3a.js +0 -48
  1001. package/dist/esm/slot-ad36df3a.js.map +0 -1
  1002. package/dist/esm/types-59b455aa.js +0 -17
  1003. package/dist/esm/types-59b455aa.js.map +0 -1
  1004. package/dist/types/wrappers/set-attributes/set-attributes.d.ts +0 -9
  1005. package/dist/ui-library/p-0f510624.js.map +0 -1
  1006. package/dist/ui-library/p-14c1ec31.entry.js +0 -2
  1007. package/dist/ui-library/p-14c1ec31.entry.js.map +0 -1
  1008. package/dist/ui-library/p-15559d38.js +0 -2
  1009. package/dist/ui-library/p-15559d38.js.map +0 -1
  1010. package/dist/ui-library/p-1d5ee1a0.entry.js +0 -2
  1011. package/dist/ui-library/p-1d5ee1a0.entry.js.map +0 -1
  1012. package/dist/ui-library/p-22c9b8c3.entry.js +0 -2
  1013. package/dist/ui-library/p-264d4ea8.entry.js +0 -2
  1014. package/dist/ui-library/p-346f9557.entry.js +0 -2
  1015. package/dist/ui-library/p-346f9557.entry.js.map +0 -1
  1016. package/dist/ui-library/p-37557787.entry.js +0 -2
  1017. package/dist/ui-library/p-3cc5addb.entry.js +0 -2
  1018. package/dist/ui-library/p-3f1a5ecb.entry.js +0 -2
  1019. package/dist/ui-library/p-411ed539.entry.js +0 -2
  1020. package/dist/ui-library/p-411ed539.entry.js.map +0 -1
  1021. package/dist/ui-library/p-4435ff73.entry.js +0 -2
  1022. package/dist/ui-library/p-538f3c50.entry.js +0 -2
  1023. package/dist/ui-library/p-538f3c50.entry.js.map +0 -1
  1024. package/dist/ui-library/p-5800663b.entry.js +0 -2
  1025. package/dist/ui-library/p-5800663b.entry.js.map +0 -1
  1026. package/dist/ui-library/p-59210f0b.js +0 -2
  1027. package/dist/ui-library/p-59210f0b.js.map +0 -1
  1028. package/dist/ui-library/p-5ba3a0fe.entry.js +0 -2
  1029. package/dist/ui-library/p-5ba3a0fe.entry.js.map +0 -1
  1030. package/dist/ui-library/p-613283a7.entry.js +0 -2
  1031. package/dist/ui-library/p-613283a7.entry.js.map +0 -1
  1032. package/dist/ui-library/p-6153045b.js +0 -3
  1033. package/dist/ui-library/p-6153045b.js.map +0 -1
  1034. package/dist/ui-library/p-6197fe2f.entry.js +0 -2
  1035. package/dist/ui-library/p-6197fe2f.entry.js.map +0 -1
  1036. package/dist/ui-library/p-658d9f79.entry.js +0 -2
  1037. package/dist/ui-library/p-658d9f79.entry.js.map +0 -1
  1038. package/dist/ui-library/p-66fe54b3.entry.js +0 -2
  1039. package/dist/ui-library/p-724875b0.entry.js +0 -2
  1040. package/dist/ui-library/p-724875b0.entry.js.map +0 -1
  1041. package/dist/ui-library/p-7afafb9d.entry.js +0 -2
  1042. package/dist/ui-library/p-7afafb9d.entry.js.map +0 -1
  1043. package/dist/ui-library/p-7e3ad38a.entry.js +0 -2
  1044. package/dist/ui-library/p-878226a0.entry.js +0 -2
  1045. package/dist/ui-library/p-95fbdd0b.entry.js +0 -2
  1046. package/dist/ui-library/p-95fbdd0b.entry.js.map +0 -1
  1047. package/dist/ui-library/p-9c1be3fb.entry.js +0 -2
  1048. package/dist/ui-library/p-9c1be3fb.entry.js.map +0 -1
  1049. package/dist/ui-library/p-a0f290d0.entry.js +0 -2
  1050. package/dist/ui-library/p-a2035543.entry.js +0 -2
  1051. package/dist/ui-library/p-a2035543.entry.js.map +0 -1
  1052. package/dist/ui-library/p-a457fee8.entry.js +0 -2
  1053. package/dist/ui-library/p-a55c7258.entry.js +0 -2
  1054. package/dist/ui-library/p-a55c7258.entry.js.map +0 -1
  1055. package/dist/ui-library/p-a6a9ee96.entry.js +0 -2
  1056. package/dist/ui-library/p-ab91c2a9.entry.js +0 -2
  1057. package/dist/ui-library/p-ab91c2a9.entry.js.map +0 -1
  1058. package/dist/ui-library/p-ae601a0f.entry.js +0 -2
  1059. package/dist/ui-library/p-ae601a0f.entry.js.map +0 -1
  1060. package/dist/ui-library/p-b57afbe4.entry.js +0 -2
  1061. package/dist/ui-library/p-b57afbe4.entry.js.map +0 -1
  1062. package/dist/ui-library/p-b6f47c9d.entry.js +0 -2
  1063. package/dist/ui-library/p-c03ebf7d.entry.js +0 -2
  1064. package/dist/ui-library/p-c03ebf7d.entry.js.map +0 -1
  1065. package/dist/ui-library/p-cba69e9d.entry.js +0 -2
  1066. package/dist/ui-library/p-cba69e9d.entry.js.map +0 -1
  1067. package/dist/ui-library/p-cd67da3d.entry.js +0 -2
  1068. package/dist/ui-library/p-cdaed936.entry.js +0 -2
  1069. package/dist/ui-library/p-cdaed936.entry.js.map +0 -1
  1070. package/dist/ui-library/p-d1bda563.entry.js +0 -2
  1071. package/dist/ui-library/p-d1bda563.entry.js.map +0 -1
  1072. package/dist/ui-library/p-db34a6cc.entry.js +0 -2
  1073. package/dist/ui-library/p-db936ad7.entry.js +0 -2
  1074. package/dist/ui-library/p-dc4f41d8.entry.js +0 -2
  1075. package/dist/ui-library/p-e775dcb4.entry.js +0 -2
  1076. package/dist/ui-library/p-e775dcb4.entry.js.map +0 -1
  1077. package/dist/ui-library/p-ee950ce2.entry.js +0 -2
  1078. package/dist/ui-library/p-f1dc3a88.entry.js +0 -2
  1079. /package/dist/ui-library/{p-5654e4c7.js.map → p-06ba4450.js.map} +0 -0
  1080. /package/dist/ui-library/{p-b351f889.entry.js.map → p-546e33d9.entry.js.map} +0 -0
  1081. /package/dist/ui-library/{p-e5020f0d.js.map → p-61e66671.js.map} +0 -0
  1082. /package/dist/ui-library/{p-0fdb185d.js.map → p-7f856f00.js.map} +0 -0
  1083. /package/dist/ui-library/{p-052aa8d3.js.map → p-8227aaed.js.map} +0 -0
  1084. /package/dist/ui-library/{p-8c0971e0.js.map → p-842b492e.js.map} +0 -0
  1085. /package/dist/ui-library/{p-13b43e04.entry.js.map → p-884c5cf9.entry.js.map} +0 -0
  1086. /package/dist/ui-library/{p-7d95def3.js.map → p-8bfb4bfc.js.map} +0 -0
  1087. /package/dist/ui-library/{p-dfed33c5.entry.js.map → p-935c78a7.entry.js.map} +0 -0
  1088. /package/dist/ui-library/{p-9ace84c7.js.map → p-998de05d.js.map} +0 -0
  1089. /package/dist/ui-library/{p-698bb2c8.js.map → p-a1502802.js.map} +0 -0
  1090. /package/dist/ui-library/{p-91b51800.entry.js.map → p-a9c159f2.entry.js.map} +0 -0
  1091. /package/dist/ui-library/{p-25bb1752.entry.js.map → p-d3f5b9a8.entry.js.map} +0 -0
  1092. /package/dist/ui-library/{p-9b354f5d.entry.js.map → p-f8cbb8da.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"six-timepicker.entry.js","mappings":"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","names":[],"sources":["src/utils/time.util.ts","src/components/six-timepicker/six-timepicker.scss?tag=six-timepicker&encapsulation=shadow","src/components/six-timepicker/six-timepicker.tsx"],"sourcesContent":["export type TimePeriod = 'AM' | 'PM';\n\nexport interface Time {\n hours?: number;\n minutes?: number;\n seconds?: number;\n milliseconds?: number;\n has24Hours?: boolean; // true => 24h, false => 12h\n period?: TimePeriod; // only needed for 12-hour clock\n}\n\nexport type TimeProperties = keyof Time;\n\nexport type TimeFormatChar =\n | 'HH' // 24h\n | 'hh' // 12h\n | 'mm' // minutes\n | 'ss' // seconds\n | 'ms' // milliseconds\n | 'aa'; // period (AM/PM)\n\n/*\n * Supported time formats\n */\nexport type TimeFormat =\n | 'HH:mm:ss'\n | 'hh:mm:ss:aa'\n | 'HH:mm:ss:ms'\n | 'hh:mm:ss:ms:aa'\n | 'HH:mm'\n | 'hh:mm:aa'\n | 'HH'\n | 'hh:aa'\n | 'mm'\n | 'ss'\n | 'ms';\n\nexport const getCurrentTimeIn24Hours = (): Time => {\n const now = new Date();\n return {\n hours: now.getHours(),\n minutes: now.getMinutes(),\n seconds: now.getSeconds(),\n milliseconds: now.getMilliseconds(),\n has24Hours: true,\n };\n};\n\nconst HOURS_IN_12_HOUR_CLOCK_FORMAT = 12;\n\nexport const getHoursIn12HourFormat = (hours: number) =>\n hours > HOURS_IN_12_HOUR_CLOCK_FORMAT ? hours - HOURS_IN_12_HOUR_CLOCK_FORMAT : hours;\n\nexport const getCurrentTimeIn12Hours = (): Time => {\n const now = new Date();\n const hours = now.getHours();\n return {\n hours: getHoursIn12HourFormat(hours),\n minutes: now.getMinutes(),\n seconds: now.getSeconds(),\n milliseconds: now.getMilliseconds(),\n has24Hours: false,\n period: hours >= HOURS_IN_12_HOUR_CLOCK_FORMAT ? 'PM' : 'AM',\n };\n};\n\nexport const getCurrentTime = (has24Hours = true): Time => {\n return has24Hours ? getCurrentTimeIn24Hours() : getCurrentTimeIn12Hours();\n};\n\nexport const isValidTimeString = (timeStr: string, format: TimeFormat) => {\n const timeStringParts = timeStr.split(':');\n const timeFormatParts = format.split(':');\n return timeStringParts.length === timeFormatParts.length;\n};\n\nexport const parseTimeString = (timeStr: string, format: TimeFormat): Time => {\n const timeParts = timeStr.split(':');\n const formatParts = format.split(':') as TimeFormatChar[];\n\n if (!isValidTimeString(timeStr, format)) {\n console.error(\n `Timestring did not match expected format.\\nExpected format: ${format}\\nReceived timestring: ${timeStr}`\n );\n }\n\n const time: Time = {};\n\n timeParts.forEach((timeStringPart, i) => {\n const formatStringPart: TimeFormatChar = formatParts[i];\n switch (formatStringPart) {\n case 'HH':\n time.hours = Number(timeStringPart);\n time.has24Hours = true;\n break;\n case 'hh':\n time.hours = Number(timeStringPart);\n time.has24Hours = false;\n break;\n case 'mm':\n time.minutes = Number(timeStringPart);\n break;\n case 'ss':\n time.seconds = Number(timeStringPart);\n break;\n case 'ms':\n time.milliseconds = Number(timeStringPart);\n break;\n case 'aa':\n time.period = timeStringPart.toUpperCase() === 'PM' ? 'PM' : 'AM';\n }\n });\n return time;\n};\n\nexport const createTimeString = (time: Time | undefined, format: TimeFormat): string => {\n if (time == null) {\n return '';\n }\n\n const formatParts = format.split(':') as TimeFormatChar[];\n\n return formatParts\n .map((timeFormatPart) => {\n switch (timeFormatPart) {\n case 'HH':\n case 'hh':\n return String(time.hours).padStart(2, '0');\n case 'mm':\n return String(time.minutes).padStart(2, '0');\n case 'ss':\n return String(time.seconds).padStart(2, '0');\n case 'ms':\n return String(time.milliseconds).padStart(3, '0');\n case 'aa':\n return String(time.period);\n }\n })\n .join(':');\n};\n","@import 'src/global/component';\n\n:host {\n display: block;\n font-family: var(--six-font-family);\n}\n\n.timepicker {\n &_clear {\n display: inline-flex;\n align-items: center;\n font-size: inherit;\n color: var(--six-input-icon-color);\n border: none;\n background: none;\n padding: 0;\n transition: var(--six-transition-fast) color;\n cursor: pointer;\n\n &:hover {\n color: var(--six-input-icon-color-hover);\n }\n\n &:focus {\n outline: none;\n }\n\n &--right {\n right: 0;\n position: absolute;\n }\n\n &--left {\n right: 35px;\n position: absolute;\n }\n }\n\n &__container {\n position: relative;\n }\n\n &__popup {\n display: flex;\n justify-content: center;\n min-width: min-content;\n min-height: 145px;\n background-color: white;\n padding: 0.5em 0.5em 1.5em;\n box-shadow: 0 2px 4px -1px rgb(0 0 0 / 20%), 0 4px 5px 0 rgb(0 0 0 / 14%), 0 1px 10px 0 rgb(0 0 0 / 12%);\n user-select: none;\n position: absolute;\n z-index: var(--six-z-index-dropdown);\n right: 0;\n left: 0;\n\n &--is-up {\n bottom: 100%;\n }\n\n &--is-inline {\n position: initial;\n box-shadow: none;\n border: 1px solid var(--six-color-web-rock-400);\n }\n }\n\n &__separator {\n display: flex;\n align-items: center;\n }\n\n &__item {\n &--wide {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n }\n }\n}\n\n.input--empty .timepicker_clear {\n visibility: hidden;\n}\n\n.input--hide {\n display: none;\n}\n\n// Icon position\n.prefix {\n cursor: pointer;\n\n &--right {\n right: 0;\n display: inline-flex;\n position: absolute;\n font-size: inherit;\n color: var(--six-input-icon-color);\n border: none;\n background: none;\n margin-right: var(--six-input-spacing-medium);\n transition: var(--six-transition-fast) color;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Listen, Method, Prop, State, Watch } from '@stencil/core';\nimport { ItemPickerType } from '../six-item-picker/types';\nimport {\n createTimeString,\n getCurrentTime,\n isValidTimeString,\n parseTimeString,\n Time,\n TimeFormat,\n TimeProperties,\n} from '../../utils/time.util';\nimport { debounce, DEFAULT_DEBOUNCE_FAST, DEFAULT_DEBOUNCE_INSANELY_FAST } from '../../utils/execution-control';\nimport { SixItemPickerChangePayload } from '../six-item-picker/six-item-picker';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\nimport { adjustPopupForHoisting, movePopup } from '../../utils/popup';\n\nexport interface SixTimepickerChange {\n value?: Time;\n valueAsString: string;\n changedProperty?: string;\n}\n\ninterface SixTimeUnitPickerParams {\n min?: number;\n max?: number;\n items?: string[];\n type?: ItemPickerType;\n class?: string;\n paddingLength?: number;\n propertyName: TimeProperties;\n}\n\nconst MIN_POPUP_HEIGHT = 145;\n\n/**\n * @since 2.0.0\n * @status experimental\n *\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part input - The input field\n * @part container - The container of whole component\n * @part popup - The popup of the timepicker component\n *\n */\n@Component({\n tag: 'six-timepicker',\n styleUrl: 'six-timepicker.scss',\n shadow: true,\n})\nexport class SixTimepicker {\n private eventListeners = new EventListeners();\n private popup?: HTMLElement;\n private wrapper?: HTMLElement;\n private inputElement?: HTMLSixInputElement;\n\n @Element() host!: HTMLSixTimepickerElement;\n\n /**\n * Define the time format. Valid formats are:\n *\n * HH:mm:ss\n * hh:mm:ss:aa\n * HH:mm:ss:ms\n * hh:mm:ss:ms:aa\n * HH:mm\n * hh:mm:aa\n * HH\n * hh:aa\n * mm\n * ss\n * ms\n *\n * where HH is the 24 hour format\n * and hh is the 12 hour format\n *\n * Please notice that when using the 12-hour-clock (hh)\n * you always need a period indicator (aa). So the time can be parsed as either am or pm\n * */\n @Prop() format: TimeFormat = 'HH:mm:ss';\n\n /**\n * Define the separator to be shown between the time unit pickers.\n * Please be aware that this property will modify the displayed separator only.\n * The separator for a timestring is always expected to be a colon (eg. '13:52:20')\n * */\n @Prop() separator = ':';\n\n /**\n * The value of the timepicker provided as a string. The string mast match the provided format (or default format)\n */\n @Prop({ mutable: true }) value = '';\n\n /** Indicates whether the timepicker dropdown is open on startup. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** Indicates whether the timepicker should be shown as an inline (always open) component */\n @Prop({ reflect: true }) inline = false;\n\n /**\n * If `true` the user can only select a time via the timepicker but not directly edit the input field.\n */\n @Prop() readonly = false;\n\n /**\n * If `true` the component is disabled.\n */\n @Prop() disabled = false;\n\n /**\n * The enforced placement of the dropdown panel.\n */\n @Prop() placement?: 'top' | 'bottom';\n\n /** Timepicker size. */\n @Prop() size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /**\n * The placeholder defines what text to be shown on the input element\n */\n @Prop() placeholder?: string;\n\n /** The input's error text. Alternatively, you can use the error-text slot. */\n @Prop() errorText: string | string[] = '';\n\n /** The number of error texts to be shown (if the error-text slot isn't used). Defaults to 1 */\n @Prop() errorTextCount?: number;\n\n /** The input's label. Alternatively, you can use the label slot. */\n @Prop() label = '';\n\n /** If this property is set to true and an error message is provided by `errorText`, the error message is displayed. */\n @Prop({ reflect: true }) invalid = false;\n\n /** The input's name attribute. */\n @Prop({ reflect: true }) name = '';\n\n /** Set to true to add a clear button when the input is populated. */\n @Prop() clearable = false;\n\n /** Set the position of the icon */\n @Prop() iconPosition: 'left' | 'right' = 'left';\n\n /**\n * Enable this option to prevent the panel from being clipped when the component is placed inside a container with\n * `overflow: auto|scroll`.\n */\n @Prop() hoist = false;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger faster switching between timeunits (e.g. hours).\n */\n @Prop() timeout = DEFAULT_DEBOUNCE_FAST;\n\n /**\n * Set the amount of time, in milliseconds, to wait between switching to next timeunit (e.g. next hour) when mouse button is held pressed.\n */\n @Prop() interval = DEFAULT_DEBOUNCE_INSANELY_FAST;\n\n /**\n * The defaultTime defines the default setting for the timepicker when you open the popup. Default time must match the provided format.\n */\n @Prop() defaultTime?: string;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger the `six-timepicker-change-debounced` event.\n * If you want your change debounce event to not trigger when keeping the nav button pressed before, make sure debounce\n * is a bit bigger than timeout, otherwise keeping the button pressed will trigger the event twice: once you click\n * (and keep pressed) and once you release\n */\n @Prop() debounce = DEFAULT_DEBOUNCE_FAST;\n\n /**\n * Emitted when the timepicker's value changes\n */\n @Event({ eventName: 'six-timepicker-change' }) sixChange!: EventEmitter<SixTimepickerChange>;\n\n /**\n * Emitted when the timepicker's value changes, but debounced\n */\n @Event({ eventName: 'six-timepicker-change-debounced' }) sixChangeDebounced!: EventEmitter<SixTimepickerChange>;\n\n /**\n * Emitted when the clear button is activated.\n */\n @Event({ eventName: 'six-timepicker-clear' }) sixClear!: EventEmitter<EmptyPayload>;\n\n @State() isPopupContentUp = false;\n\n @State() isDropDownContentUp = false;\n\n @Listen('resize', { target: 'window' })\n async resizeHandler() {\n this.calcIsPopupContentUp();\n this.moveOpenHoistedPopup();\n }\n\n @Listen('scroll', { target: 'window' })\n async scrollHandler() {\n this.calcIsPopupContentUp();\n this.moveOpenHoistedPopup();\n }\n\n /**\n * Update the native input element when the value changes\n */\n @Watch('value')\n protected valueChanged() {\n this.updateValue();\n }\n\n /** Sets focus on the datepickers input. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.inputElement?.setFocus(options);\n }\n\n /*\n * Internally the six-timepicker uses a standardized representation of time, so we don't have a mess,\n * when switching between formats\n */\n @State() private popupValue: Time = {};\n\n connectedCallback() {\n this.eventListeners.forward('six-timepicker-change', 'change', this.host);\n }\n\n componentWillLoad() {\n this.updateValue();\n\n if (this.inline) {\n this.open = true;\n }\n\n if (this.open) {\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n }\n }\n\n componentDidLoad() {\n if (this.inputElement == null) return;\n const inputElement = this.inputElement;\n\n // emit debounced change event\n this.eventListeners.add(\n this.host,\n 'six-timepicker-change',\n debounce((event: Event) => this.sixChangeDebounced.emit((event as CustomEvent).detail), this.debounce)\n );\n\n // update value and popup value based on input-element value\n this.eventListeners.add(\n inputElement,\n 'six-input-input',\n debounce((event: Event) => {\n event.stopPropagation();\n\n // emit empty event if time string is invalid\n if (!isValidTimeString(inputElement.value, this.format)) {\n this.value = inputElement.value;\n this.sixChange.emit({\n value: {},\n valueAsString: '',\n });\n return;\n }\n\n // update value and popup value, and emit the new value\n this.value = inputElement.value;\n this.popupValue = parseTimeString(inputElement.value, this.format);\n this.sixChange.emit({\n value: this.popupValue,\n valueAsString: createTimeString(this.popupValue, this.format),\n });\n }, this.debounce)\n );\n }\n\n componentDidRender() {\n adjustPopupForHoisting(\n this.hoist,\n this.popup,\n this.inputElement,\n this.wrapper,\n MIN_POPUP_HEIGHT,\n (isUp) => (this.isDropDownContentUp = isUp)\n );\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n }\n private updateValue() {\n // normalize value\n if (typeof this.value !== 'string' || !isValidTimeString(this.value, this.format)) {\n this.value = '';\n }\n\n // update popup value\n if (this.value === '') {\n if (this.defaultTime == null) {\n this.popupValue = getCurrentTime(this.is24HourClock());\n } else {\n this.popupValue = parseTimeString(this.defaultTime, this.format);\n }\n } else {\n this.popupValue = parseTimeString(this.value, this.format);\n }\n }\n\n private calcIsPopupContentUp() {\n if (this.inputElement == null || this.wrapper == null) {\n return;\n }\n\n const inputBoundingRect = this.inputElement.getBoundingClientRect();\n const wrapperBoundingRect = this.wrapper.getBoundingClientRect();\n const minPopupHeight = Math.max(wrapperBoundingRect.height, MIN_POPUP_HEIGHT);\n\n const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;\n this.isPopupContentUp = moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + minPopupHeight;\n }\n\n private moveOpenHoistedPopup() {\n movePopup(this.hoist, this.open, this.popup, this.inputElement, this.wrapper, MIN_POPUP_HEIGHT);\n }\n\n private handlePickerChange = (event: CustomEvent<SixItemPickerChangePayload>, property: TimeProperties) => {\n // stop propagation, since the timepicker should not expose the events of the underlying item-picker\n event.stopPropagation();\n if (this.popupValue == null) {\n return;\n }\n\n // update the internal state\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n this.popupValue[property] = event.detail;\n\n const timeString = createTimeString(this.popupValue, this.format);\n\n // update the input value\n this.value = timeString;\n\n // emit change event\n this.sixChange.emit({\n changedProperty: property,\n value: this.popupValue,\n valueAsString: timeString,\n });\n };\n\n private getSixTimeUnitPicker(params: SixTimeUnitPickerParams) {\n return (\n <six-item-picker\n class={params.class}\n timeout={this.timeout}\n interval={this.interval}\n padded\n min={params.min}\n max={params.max}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n value={this.popupValue[params.propertyName]}\n items={params.items}\n type={params.type || ItemPickerType.NUMBER}\n padding-length={params.paddingLength}\n onSix-item-picker-change={(event) => this.handlePickerChange(event, params.propertyName)}\n ></six-item-picker>\n );\n }\n\n private getHour24Picker() {\n if (!this.is24HourClock()) {\n return;\n }\n return this.getSixTimeUnitPicker({ min: 0, max: 23, propertyName: 'hours' });\n }\n\n private is24HourClock() {\n return this.format.includes('HH');\n }\n\n private getHour12Picker() {\n if (!this.is12HourClock()) {\n return;\n }\n return this.getSixTimeUnitPicker({ min: 0, max: 11, propertyName: 'hours' });\n }\n\n private is12HourClock() {\n return this.format.includes('hh');\n }\n\n private getAmPmPicker() {\n if (!this.is12HourClock()) {\n return;\n }\n const items = ['AM', 'PM'];\n return this.getSixTimeUnitPicker({\n items,\n type: ItemPickerType.CUSTOM,\n propertyName: 'period',\n });\n }\n\n private getMinutePicker() {\n if (!this.format.includes('mm')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({ min: 0, max: 59, propertyName: 'minutes' });\n }\n\n private getSecondsPicker() {\n if (!this.format.includes('ss')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({ min: 0, max: 59, propertyName: 'seconds' });\n }\n\n private getMillisecondsPicker() {\n if (!this.format.includes('ms')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({\n min: 0,\n max: 999,\n class: 'timepicker__item--wide',\n paddingLength: 3,\n propertyName: 'milliseconds',\n });\n }\n\n private getSeparator() {\n return (\n <div class=\"timepicker__separator\">\n <span>{this.separator}</span>\n </div>\n );\n }\n\n private getContent() {\n const elementsInOrder = [\n this.getHour24Picker(),\n this.getHour12Picker(),\n this.getMinutePicker(),\n this.getSecondsPicker(),\n this.getMillisecondsPicker(),\n ];\n\n const visibleElements = elementsInOrder.filter((el) => el !== undefined);\n\n return visibleElements.map((el, idx) => {\n if (idx === visibleElements.length - 1) {\n return [el];\n }\n\n return [el, this.getSeparator()];\n });\n }\n\n private openPopup() {\n if (!this.open && !this.disabled) {\n this.open = true;\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n }\n }\n\n private closePopup() {\n if (this.inline) {\n return;\n }\n\n this.open = false;\n this.eventListeners.remove(document, 'mousedown', this.handleDocumentMouseDown);\n }\n\n private handleDocumentMouseDown = (event: Event) => {\n // Close when clicking outside the containing element\n const path = event.composedPath() as EventTarget[];\n if (!path.includes(this.host)) {\n this.closePopup();\n return;\n }\n };\n\n private handleClearClick = (event: MouseEvent) => {\n event.stopPropagation();\n this.value = '';\n this.sixClear.emit();\n this.sixChange.emit({\n value: {},\n valueAsString: '',\n });\n };\n\n private renderClearable() {\n return (\n this.clearable && (\n <button\n slot=\"suffix\"\n class={{\n timepicker_clear: true,\n 'timepicker_clear--right': this.iconPosition === 'left',\n 'timepicker_clear--left': this.iconPosition === 'right',\n }}\n type=\"button\"\n onClick={this.handleClearClick}\n tabindex=\"-1\"\n >\n <six-icon size=\"small\">clear</six-icon>\n </button>\n )\n );\n }\n\n private renderCustomIcon() {\n const icon = hasSlot(this.host, 'custom-icon') ? (\n <slot name=\"custom-icon\"></slot>\n ) : (\n <six-icon size={this.size === 'large' ? 'medium' : this.size}>watch_later</six-icon>\n );\n\n return (\n <span\n slot=\"prefix\"\n part=\"icon\"\n class={{\n prefix: true,\n 'prefix--right': this.iconPosition === 'right',\n }}\n >\n {icon}\n </span>\n );\n }\n\n render() {\n return (\n <div part=\"container\" ref={(el) => (this.wrapper = el)} class=\"timepicker__container\">\n <six-input\n ref={(el) => (this.inputElement = el)}\n part=\"input\"\n onClick={() => this.openPopup()}\n value={this.value}\n placeholder={this.placeholder}\n readonly={this.readonly}\n disabled={this.disabled}\n errorTextCount={this.errorTextCount}\n errorText={this.errorText}\n invalid={this.invalid}\n size={this.size}\n name={this.name}\n label={this.label}\n required={this.required}\n class={{\n 'input--empty': this.value === '',\n 'input--hide': this.inline,\n }}\n >\n {this.renderCustomIcon()}\n {this.renderClearable()}\n {hasSlot(this.host, 'label') ? (\n <span slot=\"label\">\n <slot name=\"label\" />\n </span>\n ) : null}\n {hasSlot(this.host, 'error-text') ? (\n <span slot=\"error-text\">\n <slot name=\"error-text\" />\n </span>\n ) : null}\n </six-input>\n {this.open && (\n <div\n ref={(el) => (this.popup = el)}\n part=\"popup\"\n class={{\n timepicker__popup: true,\n 'timepicker__popup--is-up': this.placement == null ? this.placement === 'top' : this.isPopupContentUp,\n 'timepicker__popup--is-inline': this.inline,\n }}\n >\n {...this.getContent()}\n {this.getAmPmPicker()}\n </div>\n )}\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"six-timepicker.entry.js","mappings":"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","names":[],"sources":["src/utils/time.util.ts","src/components/six-timepicker/six-timepicker.scss?tag=six-timepicker&encapsulation=shadow","src/components/six-timepicker/six-timepicker.tsx"],"sourcesContent":["export type TimePeriod = 'AM' | 'PM';\n\nexport interface Time {\n hours?: number;\n minutes?: number;\n seconds?: number;\n milliseconds?: number;\n has24Hours?: boolean; // true => 24h, false => 12h\n period?: TimePeriod; // only needed for 12-hour clock\n}\n\nexport type TimeProperties = keyof Time;\n\nexport type TimeFormatChar =\n | 'HH' // 24h\n | 'hh' // 12h\n | 'mm' // minutes\n | 'ss' // seconds\n | 'ms' // milliseconds\n | 'aa'; // period (AM/PM)\n\n/*\n * Supported time formats\n */\nexport type TimeFormat =\n | 'HH:mm:ss'\n | 'hh:mm:ss:aa'\n | 'HH:mm:ss:ms'\n | 'hh:mm:ss:ms:aa'\n | 'HH:mm'\n | 'hh:mm:aa'\n | 'HH'\n | 'hh:aa'\n | 'mm'\n | 'ss'\n | 'ms';\n\nexport const getCurrentTimeIn24Hours = (): Time => {\n const now = new Date();\n return {\n hours: now.getHours(),\n minutes: now.getMinutes(),\n seconds: now.getSeconds(),\n milliseconds: now.getMilliseconds(),\n has24Hours: true,\n };\n};\n\nconst HOURS_IN_12_HOUR_CLOCK_FORMAT = 12;\n\nexport const getHoursIn12HourFormat = (hours: number) =>\n hours > HOURS_IN_12_HOUR_CLOCK_FORMAT ? hours - HOURS_IN_12_HOUR_CLOCK_FORMAT : hours;\n\nexport const getCurrentTimeIn12Hours = (): Time => {\n const now = new Date();\n const hours = now.getHours();\n return {\n hours: getHoursIn12HourFormat(hours),\n minutes: now.getMinutes(),\n seconds: now.getSeconds(),\n milliseconds: now.getMilliseconds(),\n has24Hours: false,\n period: hours >= HOURS_IN_12_HOUR_CLOCK_FORMAT ? 'PM' : 'AM',\n };\n};\n\nexport const getCurrentTime = (has24Hours = true): Time => {\n return has24Hours ? getCurrentTimeIn24Hours() : getCurrentTimeIn12Hours();\n};\n\nexport const isValidTimeString = (timeStr: string, format: TimeFormat) => {\n const timeStringParts = timeStr.split(':');\n const timeFormatParts = format.split(':');\n return timeStringParts.length === timeFormatParts.length;\n};\n\nexport const parseTimeString = (timeStr: string, format: TimeFormat): Time => {\n const timeParts = timeStr.split(':');\n const formatParts = format.split(':') as TimeFormatChar[];\n\n if (!isValidTimeString(timeStr, format)) {\n console.error(\n `Timestring did not match expected format.\\nExpected format: ${format}\\nReceived timestring: ${timeStr}`\n );\n }\n\n const time: Time = {};\n\n timeParts.forEach((timeStringPart, i) => {\n const formatStringPart: TimeFormatChar = formatParts[i];\n switch (formatStringPart) {\n case 'HH':\n time.hours = Number(timeStringPart);\n time.has24Hours = true;\n break;\n case 'hh':\n time.hours = Number(timeStringPart);\n time.has24Hours = false;\n break;\n case 'mm':\n time.minutes = Number(timeStringPart);\n break;\n case 'ss':\n time.seconds = Number(timeStringPart);\n break;\n case 'ms':\n time.milliseconds = Number(timeStringPart);\n break;\n case 'aa':\n time.period = timeStringPart.toUpperCase() === 'PM' ? 'PM' : 'AM';\n }\n });\n return time;\n};\n\nexport const createTimeString = (time: Time | undefined, format: TimeFormat): string => {\n if (time == null) {\n return '';\n }\n\n const formatParts = format.split(':') as TimeFormatChar[];\n\n return formatParts\n .map((timeFormatPart) => {\n switch (timeFormatPart) {\n case 'HH':\n case 'hh':\n return String(time.hours).padStart(2, '0');\n case 'mm':\n return String(time.minutes).padStart(2, '0');\n case 'ss':\n return String(time.seconds).padStart(2, '0');\n case 'ms':\n return String(time.milliseconds).padStart(3, '0');\n case 'aa':\n return String(time.period);\n }\n })\n .join(':');\n};\n","@import 'src/global/component';\n\n:host {\n display: block;\n font-family: var(--six-font-family);\n}\n\n.timepicker {\n &_clear {\n display: inline-flex;\n align-items: center;\n font-size: inherit;\n color: var(--six-input-icon-color);\n border: none;\n background: none;\n padding: 0;\n transition: var(--six-transition-fast) color;\n cursor: pointer;\n\n &:hover {\n color: var(--six-input-icon-color-hover);\n }\n\n &:focus {\n outline: none;\n }\n\n &--right {\n right: 0;\n position: absolute;\n }\n\n &--left {\n right: 35px;\n position: absolute;\n }\n }\n\n &__container {\n position: relative;\n }\n\n &__popup {\n display: flex;\n justify-content: center;\n min-width: min-content;\n min-height: 145px;\n background-color: white;\n padding: 0.5em 0.5em 1.5em;\n box-shadow: 0 2px 4px -1px rgb(0 0 0 / 20%), 0 4px 5px 0 rgb(0 0 0 / 14%), 0 1px 10px 0 rgb(0 0 0 / 12%);\n user-select: none;\n position: absolute;\n z-index: var(--six-z-index-dropdown);\n right: 0;\n left: 0;\n\n &--is-up {\n bottom: 100%;\n }\n\n &--is-inline {\n position: initial;\n box-shadow: none;\n border: 1px solid var(--six-color-web-rock-400);\n }\n }\n\n &__separator {\n display: flex;\n align-items: center;\n }\n\n &__item {\n &--wide {\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n }\n }\n}\n\n.input--empty .timepicker_clear {\n visibility: hidden;\n}\n\n.input--hide {\n display: none;\n}\n\n// Icon position\n.prefix {\n cursor: pointer;\n\n &--right {\n right: 0;\n display: inline-flex;\n position: absolute;\n font-size: inherit;\n color: var(--six-input-icon-color);\n border: none;\n background: none;\n margin-right: var(--six-input-spacing-medium);\n transition: var(--six-transition-fast) color;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Listen, Method, Prop, State, Watch } from '@stencil/core';\nimport { ItemPickerType } from '../six-item-picker/types';\nimport {\n createTimeString,\n getCurrentTime,\n isValidTimeString,\n parseTimeString,\n Time,\n TimeFormat,\n TimeProperties,\n} from '../../utils/time.util';\nimport { debounce, DEFAULT_DEBOUNCE_FAST, DEFAULT_DEBOUNCE_INSANELY_FAST } from '../../utils/execution-control';\nimport { SixItemPickerChangePayload } from '../six-item-picker/six-item-picker';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\nimport { adjustPopupForHoisting, movePopup } from '../../utils/popup';\n\nexport interface SixTimepickerChange {\n value?: Time;\n valueAsString: string;\n changedProperty?: string;\n}\n\ninterface SixTimeUnitPickerParams {\n min?: number;\n max?: number;\n items?: string[];\n type?: ItemPickerType;\n class?: string;\n paddingLength?: number;\n propertyName: TimeProperties;\n}\n\nconst MIN_POPUP_HEIGHT = 145;\n\n/**\n * @since 2.0.0\n * @status experimental\n *\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part input - The input field\n * @part container - The container of whole component\n * @part popup - The popup of the timepicker component\n *\n */\n@Component({\n tag: 'six-timepicker',\n styleUrl: 'six-timepicker.scss',\n shadow: true,\n})\nexport class SixTimepicker {\n private eventListeners = new EventListeners();\n private popup?: HTMLElement;\n private wrapper?: HTMLElement;\n private inputElement?: HTMLSixInputElement;\n\n @Element() host!: HTMLSixTimepickerElement;\n\n /**\n * Define the time format. Valid formats are:\n *\n * HH:mm:ss\n * hh:mm:ss:aa\n * HH:mm:ss:ms\n * hh:mm:ss:ms:aa\n * HH:mm\n * hh:mm:aa\n * HH\n * hh:aa\n * mm\n * ss\n * ms\n *\n * where HH is the 24 hour format\n * and hh is the 12 hour format\n *\n * Please notice that when using the 12-hour-clock (hh)\n * you always need a period indicator (aa). So the time can be parsed as either am or pm\n * */\n @Prop() format: TimeFormat = 'HH:mm:ss';\n\n /**\n * Define the separator to be shown between the time unit pickers.\n * Please be aware that this property will modify the displayed separator only.\n * The separator for a timestring is always expected to be a colon (eg. '13:52:20')\n * */\n @Prop() separator = ':';\n\n /**\n * The value of the timepicker provided as a string. The string mast match the provided format (or default format)\n */\n @Prop({ mutable: true }) value = '';\n\n /** Indicates whether the timepicker dropdown is open on startup. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** Indicates whether the timepicker should be shown as an inline (always open) component */\n @Prop({ reflect: true }) inline = false;\n\n /**\n * If `true` the user can only select a time via the timepicker but not directly edit the input field.\n */\n @Prop() readonly = false;\n\n /**\n * If `true` the component is disabled.\n */\n @Prop() disabled = false;\n\n /**\n * The enforced placement of the dropdown panel.\n */\n @Prop() placement?: 'top' | 'bottom';\n\n /** Timepicker size. */\n @Prop() size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /**\n * The placeholder defines what text to be shown on the input element\n */\n @Prop() placeholder?: string;\n\n /** The input's error text. Alternatively, you can use the error-text slot. */\n @Prop() errorText: string | string[] = '';\n\n /** The number of error texts to be shown (if the error-text slot isn't used). Defaults to 1 */\n @Prop() errorTextCount?: number;\n\n /** The input's label. Alternatively, you can use the label slot. */\n @Prop() label = '';\n\n /** If this property is set to true and an error message is provided by `errorText`, the error message is displayed. */\n @Prop({ reflect: true }) invalid = false;\n\n /** The input's name attribute. */\n @Prop({ reflect: true }) name = '';\n\n /** Set to true to add a clear button when the input is populated. */\n @Prop() clearable = false;\n\n /** Set the position of the icon */\n @Prop() iconPosition: 'left' | 'right' = 'left';\n\n /**\n * Enable this option to prevent the panel from being clipped when the component is placed inside a container with\n * `overflow: auto|scroll`.\n */\n @Prop() hoist = false;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger faster switching between timeunits (e.g. hours).\n */\n @Prop() timeout = DEFAULT_DEBOUNCE_FAST;\n\n /**\n * Set the amount of time, in milliseconds, to wait between switching to next timeunit (e.g. next hour) when mouse button is held pressed.\n */\n @Prop() interval = DEFAULT_DEBOUNCE_INSANELY_FAST;\n\n /**\n * The defaultTime defines the default setting for the timepicker when you open the popup. Default time must match the provided format.\n */\n @Prop() defaultTime?: string;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger the `six-timepicker-change-debounced` event.\n * If you want your change debounce event to not trigger when keeping the nav button pressed before, make sure debounce\n * is a bit bigger than timeout, otherwise keeping the button pressed will trigger the event twice: once you click\n * (and keep pressed) and once you release\n */\n @Prop() debounce = DEFAULT_DEBOUNCE_FAST;\n\n /**\n * Emitted when the timepicker's value changes\n */\n @Event({ eventName: 'six-timepicker-change' }) sixChange!: EventEmitter<SixTimepickerChange>;\n\n /**\n * Emitted when the timepicker's value changes, but debounced\n */\n @Event({ eventName: 'six-timepicker-change-debounced' }) sixChangeDebounced!: EventEmitter<SixTimepickerChange>;\n\n /**\n * Emitted when the clear button is activated.\n */\n @Event({ eventName: 'six-timepicker-clear' }) sixClear!: EventEmitter<EmptyPayload>;\n\n @State() isPopupContentUp = false;\n\n @State() isDropDownContentUp = false;\n\n @Listen('resize', { target: 'window' })\n async resizeHandler() {\n this.calcIsPopupContentUp();\n this.moveOpenHoistedPopup();\n }\n\n @Listen('scroll', { target: 'window' })\n async scrollHandler() {\n this.calcIsPopupContentUp();\n this.moveOpenHoistedPopup();\n }\n\n /**\n * Update the native input element when the value changes\n */\n @Watch('value')\n protected valueChanged() {\n this.updateValue();\n }\n\n /** Sets focus on the datepickers input. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.inputElement?.setFocus(options);\n }\n\n /*\n * Internally the six-timepicker uses a standardized representation of time, so we don't have a mess,\n * when switching between formats\n */\n @State() private popupValue: Time = {};\n\n connectedCallback() {\n this.eventListeners.forward('six-timepicker-change', 'change', this.host);\n }\n\n componentWillLoad() {\n this.updateValue();\n\n if (this.inline) {\n this.open = true;\n }\n\n if (this.open) {\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n }\n }\n\n componentDidLoad() {\n if (this.inputElement == null) return;\n const inputElement = this.inputElement;\n\n // emit debounced change event\n this.eventListeners.add(\n this.host,\n 'six-timepicker-change',\n debounce((event: Event) => this.sixChangeDebounced.emit((event as CustomEvent).detail), this.debounce)\n );\n\n // update value and popup value based on input-element value\n this.eventListeners.add(\n inputElement,\n 'six-input-input',\n debounce((event: Event) => {\n event.stopPropagation();\n\n // emit empty event if time string is invalid\n if (!isValidTimeString(inputElement.value, this.format)) {\n this.value = inputElement.value;\n this.sixChange.emit({\n value: {},\n valueAsString: '',\n });\n return;\n }\n\n // update value and popup value, and emit the new value\n this.value = inputElement.value;\n this.popupValue = parseTimeString(inputElement.value, this.format);\n this.sixChange.emit({\n value: this.popupValue,\n valueAsString: createTimeString(this.popupValue, this.format),\n });\n }, this.debounce)\n );\n }\n\n componentDidRender() {\n adjustPopupForHoisting(\n this.hoist,\n this.popup,\n this.inputElement,\n this.wrapper,\n MIN_POPUP_HEIGHT,\n (isUp) => (this.isDropDownContentUp = isUp)\n );\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n }\n private updateValue() {\n // normalize value\n if (typeof this.value !== 'string' || !isValidTimeString(this.value, this.format)) {\n this.value = '';\n }\n\n // update popup value\n if (this.value === '') {\n if (this.defaultTime == null) {\n this.popupValue = getCurrentTime(this.is24HourClock());\n } else {\n this.popupValue = parseTimeString(this.defaultTime, this.format);\n }\n } else {\n this.popupValue = parseTimeString(this.value, this.format);\n }\n }\n\n private calcIsPopupContentUp() {\n if (this.inputElement == null || this.wrapper == null) {\n return;\n }\n\n const inputBoundingRect = this.inputElement.getBoundingClientRect();\n const wrapperBoundingRect = this.wrapper.getBoundingClientRect();\n const minPopupHeight = Math.max(wrapperBoundingRect.height, MIN_POPUP_HEIGHT);\n\n const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;\n this.isPopupContentUp = moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + minPopupHeight;\n }\n\n private moveOpenHoistedPopup() {\n movePopup(this.hoist, this.open, this.popup, this.inputElement, this.wrapper, MIN_POPUP_HEIGHT);\n }\n\n private handlePickerChange = (event: CustomEvent<SixItemPickerChangePayload>, property: TimeProperties) => {\n // stop propagation, since the timepicker should not expose the events of the underlying item-picker\n event.stopPropagation();\n if (this.popupValue == null) {\n return;\n }\n\n // update the internal state\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n this.popupValue[property] = event.detail;\n\n const timeString = createTimeString(this.popupValue, this.format);\n\n // update the input value\n this.value = timeString;\n\n // emit change event\n this.sixChange.emit({\n changedProperty: property,\n value: this.popupValue,\n valueAsString: timeString,\n });\n };\n\n private getSixTimeUnitPicker(params: SixTimeUnitPickerParams) {\n return (\n <six-item-picker\n class={params.class}\n timeout={this.timeout}\n interval={this.interval}\n padded\n min={params.min}\n max={params.max}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n value={this.popupValue[params.propertyName]}\n items={params.items}\n type={params.type || ItemPickerType.NUMBER}\n padding-length={params.paddingLength}\n onSix-item-picker-change={(event) => this.handlePickerChange(event, params.propertyName)}\n ></six-item-picker>\n );\n }\n\n private getHour24Picker() {\n if (!this.is24HourClock()) {\n return;\n }\n return this.getSixTimeUnitPicker({ min: 0, max: 23, propertyName: 'hours' });\n }\n\n private is24HourClock() {\n return this.format.includes('HH');\n }\n\n private getHour12Picker() {\n if (!this.is12HourClock()) {\n return;\n }\n return this.getSixTimeUnitPicker({ min: 0, max: 11, propertyName: 'hours' });\n }\n\n private is12HourClock() {\n return this.format.includes('hh');\n }\n\n private getAmPmPicker() {\n if (!this.is12HourClock()) {\n return;\n }\n const items = ['AM', 'PM'];\n return this.getSixTimeUnitPicker({\n items,\n type: ItemPickerType.CUSTOM,\n propertyName: 'period',\n });\n }\n\n private getMinutePicker() {\n if (!this.format.includes('mm')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({ min: 0, max: 59, propertyName: 'minutes' });\n }\n\n private getSecondsPicker() {\n if (!this.format.includes('ss')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({ min: 0, max: 59, propertyName: 'seconds' });\n }\n\n private getMillisecondsPicker() {\n if (!this.format.includes('ms')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({\n min: 0,\n max: 999,\n class: 'timepicker__item--wide',\n paddingLength: 3,\n propertyName: 'milliseconds',\n });\n }\n\n private getSeparator() {\n return (\n <div class=\"timepicker__separator\">\n <span>{this.separator}</span>\n </div>\n );\n }\n\n private getContent() {\n const elementsInOrder = [\n this.getHour24Picker(),\n this.getHour12Picker(),\n this.getMinutePicker(),\n this.getSecondsPicker(),\n this.getMillisecondsPicker(),\n ];\n\n const visibleElements = elementsInOrder.filter((el) => el !== undefined);\n\n return visibleElements.map((el, idx) => {\n if (idx === visibleElements.length - 1) {\n return [el];\n }\n\n return [el, this.getSeparator()];\n });\n }\n\n private openPopup() {\n if (!this.open && !this.disabled) {\n this.open = true;\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n }\n }\n\n private closePopup() {\n if (this.inline) {\n return;\n }\n\n this.open = false;\n this.eventListeners.remove(document, 'mousedown', this.handleDocumentMouseDown);\n }\n\n private handleDocumentMouseDown = (event: Event) => {\n // Close when clicking outside the containing element\n const path = event.composedPath() as EventTarget[];\n if (!path.includes(this.host)) {\n this.closePopup();\n return;\n }\n };\n\n private handleClearClick = (event: MouseEvent) => {\n event.stopPropagation();\n this.value = '';\n this.sixClear.emit();\n this.sixChange.emit({\n value: {},\n valueAsString: '',\n });\n };\n\n private renderClearable() {\n return (\n this.clearable && (\n <button\n slot=\"suffix\"\n class={{\n timepicker_clear: true,\n 'timepicker_clear--right': this.iconPosition === 'left',\n 'timepicker_clear--left': this.iconPosition === 'right',\n }}\n type=\"button\"\n onClick={this.handleClearClick}\n tabindex=\"-1\"\n >\n <six-icon size=\"small\">clear</six-icon>\n </button>\n )\n );\n }\n\n private renderCustomIcon() {\n const icon = hasSlot(this.host, 'custom-icon') ? (\n <slot name=\"custom-icon\"></slot>\n ) : (\n <six-icon size={this.size === 'large' ? 'medium' : this.size}>watch_later</six-icon>\n );\n\n return (\n <span\n slot=\"prefix\"\n part=\"icon\"\n class={{\n prefix: true,\n 'prefix--right': this.iconPosition === 'right',\n }}\n >\n {icon}\n </span>\n );\n }\n\n render() {\n return (\n <div part=\"container\" ref={(el) => (this.wrapper = el)} class=\"timepicker__container\">\n <six-input\n ref={(el) => (this.inputElement = el)}\n part=\"input\"\n onClick={() => this.openPopup()}\n value={this.value}\n placeholder={this.placeholder}\n readonly={this.readonly}\n disabled={this.disabled}\n errorTextCount={this.errorTextCount}\n errorText={this.errorText}\n invalid={this.invalid}\n size={this.size}\n name={this.name}\n label={this.label}\n required={this.required}\n class={{\n 'input--empty': this.value === '',\n 'input--hide': this.inline,\n }}\n >\n {this.renderCustomIcon()}\n {this.renderClearable()}\n {hasSlot(this.host, 'label') ? (\n <span slot=\"label\">\n <slot name=\"label\" />\n </span>\n ) : null}\n {hasSlot(this.host, 'error-text') ? (\n <span slot=\"error-text\">\n <slot name=\"error-text\" />\n </span>\n ) : null}\n </six-input>\n {this.open && (\n <div\n ref={(el) => (this.popup = el)}\n part=\"popup\"\n class={{\n timepicker__popup: true,\n 'timepicker__popup--is-up': this.placement == null ? this.placement === 'top' : this.isPopupContentUp,\n 'timepicker__popup--is-inline': this.inline,\n }}\n >\n {...this.getContent()}\n {this.getAmPmPicker()}\n </div>\n )}\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,163 +1,163 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-8a74f992.js';
2
- import { P as Popover } from './popover-136d1f73.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-79d4ef67.js';
2
+ import { P as Popover } from './popover-25996e62.js';
3
3
 
4
- const sixTooltipCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{--max-width:20rem;--hide-delay:0s;--hide-duration:0.125s;--hide-timing-function:ease;--show-delay:0.125s;--show-duration:0.125s;--show-timing-function:ease;display:contents}.tooltip-positioner{position:fixed;z-index:var(--six-z-index-tooltip);pointer-events:none}.tooltip{max-width:var(--max-width);border-radius:var(--six-border-radius-medium);background-color:var(--six-tooltip-background-color);font-family:var(--six-font-family);font-size:var(--six-tooltip-font-size);font-weight:var(--six-tooltip-font-weight);line-height:var(--six-tooltip-line-height);color:var(--six-tooltip-color);opacity:0;padding:var(--six-spacing-xxx-small) var(--six-spacing-x-small);transform:scale(0.8);transform-origin:bottom;transition-property:opacity, transform;transition-delay:var(--hide-delay);transition-duration:var(--hide-duration);transition-timing-function:var(--hide-timing-function)}.tooltip::after{content:\"\";position:absolute;width:0;height:0}.tooltip-positioner[data-popper-placement^=top] .tooltip{transform-origin:bottom}.tooltip-positioner[data-popper-placement^=bottom] .tooltip{transform-origin:top}.tooltip-positioner[data-popper-placement^=left] .tooltip{transform-origin:right}.tooltip-positioner[data-popper-placement^=right] .tooltip{transform-origin:left}.tooltip-positioner.popover-visible .tooltip{opacity:1;transform:none;transition-delay:var(--show-delay);transition-duration:var(--show-duration);transition-timing-function:var(--show-timing-function)}.tooltip-positioner[data-popper-placement^=bottom] .tooltip::after{bottom:100%;left:calc(50% - var(--six-tooltip-arrow-size));border-bottom:var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);border-left:var(--six-tooltip-arrow-size) solid transparent;border-right:var(--six-tooltip-arrow-size) solid transparent}.tooltip-positioner[data-popper-placement=bottom-start] .tooltip::after{left:var(--six-tooltip-arrow-start-end-offset)}.tooltip-positioner[data-popper-placement=bottom-end] .tooltip::after{right:var(--six-tooltip-arrow-start-end-offset);left:auto}.tooltip-positioner[data-popper-placement^=top] .tooltip::after{top:100%;left:calc(50% - var(--six-tooltip-arrow-size));border-top:var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);border-left:var(--six-tooltip-arrow-size) solid transparent;border-right:var(--six-tooltip-arrow-size) solid transparent}.tooltip-positioner[data-popper-placement=top-start] .tooltip::after{left:var(--six-tooltip-arrow-start-end-offset)}.tooltip-positioner[data-popper-placement=top-end] .tooltip::after{right:var(--six-tooltip-arrow-start-end-offset);left:auto}.tooltip-positioner[data-popper-placement^=left] .tooltip::after{top:calc(50% - var(--six-tooltip-arrow-size));left:100%;border-left:var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);border-top:var(--six-tooltip-arrow-size) solid transparent;border-bottom:var(--six-tooltip-arrow-size) solid transparent}.tooltip-positioner[data-popper-placement=left-start] .tooltip::after{top:var(--six-tooltip-arrow-start-end-offset)}.tooltip-positioner[data-popper-placement=left-end] .tooltip::after{top:auto;bottom:var(--six-tooltip-arrow-start-end-offset)}.tooltip-positioner[data-popper-placement^=right] .tooltip::after{top:calc(50% - var(--six-tooltip-arrow-size));right:100%;border-right:var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);border-top:var(--six-tooltip-arrow-size) solid transparent;border-bottom:var(--six-tooltip-arrow-size) solid transparent}.tooltip-positioner[data-popper-placement=right-start] .tooltip::after{top:var(--six-tooltip-arrow-start-end-offset)}.tooltip-positioner[data-popper-placement=right-end] .tooltip::after{top:auto;bottom:var(--six-tooltip-arrow-start-end-offset)}";
4
+ const sixTooltipCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{--max-width:20rem;--hide-delay:0s;--hide-duration:0.125s;--hide-timing-function:ease;--show-delay:0.125s;--show-duration:0.125s;--show-timing-function:ease;display:contents}.tooltip-positioner{position:fixed;z-index:var(--six-z-index-tooltip);pointer-events:none}.tooltip{max-width:var(--max-width);border-radius:var(--six-border-radius-medium);background-color:var(--six-tooltip-background-color);font-family:var(--six-font-family);font-size:var(--six-tooltip-font-size);font-weight:var(--six-tooltip-font-weight);line-height:var(--six-tooltip-line-height);color:var(--six-tooltip-color);opacity:0;padding:var(--six-spacing-xxx-small) var(--six-spacing-x-small);transform:scale(0.8);transform-origin:bottom;transition-property:opacity, transform;transition-delay:var(--hide-delay);transition-duration:var(--hide-duration);transition-timing-function:var(--hide-timing-function)}.tooltip::after{content:\"\";position:absolute;width:0;height:0}.tooltip-positioner[data-popper-placement^=top] .tooltip{transform-origin:bottom}.tooltip-positioner[data-popper-placement^=bottom] .tooltip{transform-origin:top}.tooltip-positioner[data-popper-placement^=left] .tooltip{transform-origin:right}.tooltip-positioner[data-popper-placement^=right] .tooltip{transform-origin:left}.tooltip-positioner.popover-visible .tooltip{opacity:1;transform:none;transition-delay:var(--show-delay);transition-duration:var(--show-duration);transition-timing-function:var(--show-timing-function)}.tooltip-positioner[data-popper-placement^=bottom] .tooltip::after{bottom:100%;left:calc(50% - var(--six-tooltip-arrow-size));border-bottom:var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);border-left:var(--six-tooltip-arrow-size) solid transparent;border-right:var(--six-tooltip-arrow-size) solid transparent}.tooltip-positioner[data-popper-placement=bottom-start] .tooltip::after{left:var(--six-tooltip-arrow-start-end-offset)}.tooltip-positioner[data-popper-placement=bottom-end] .tooltip::after{right:var(--six-tooltip-arrow-start-end-offset);left:auto}.tooltip-positioner[data-popper-placement^=top] .tooltip::after{top:100%;left:calc(50% - var(--six-tooltip-arrow-size));border-top:var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);border-left:var(--six-tooltip-arrow-size) solid transparent;border-right:var(--six-tooltip-arrow-size) solid transparent}.tooltip-positioner[data-popper-placement=top-start] .tooltip::after{left:var(--six-tooltip-arrow-start-end-offset)}.tooltip-positioner[data-popper-placement=top-end] .tooltip::after{right:var(--six-tooltip-arrow-start-end-offset);left:auto}.tooltip-positioner[data-popper-placement^=left] .tooltip::after{top:calc(50% - var(--six-tooltip-arrow-size));left:100%;border-left:var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);border-top:var(--six-tooltip-arrow-size) solid transparent;border-bottom:var(--six-tooltip-arrow-size) solid transparent}.tooltip-positioner[data-popper-placement=left-start] .tooltip::after{top:var(--six-tooltip-arrow-start-end-offset)}.tooltip-positioner[data-popper-placement=left-end] .tooltip::after{top:auto;bottom:var(--six-tooltip-arrow-start-end-offset)}.tooltip-positioner[data-popper-placement^=right] .tooltip::after{top:calc(50% - var(--six-tooltip-arrow-size));right:100%;border-right:var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);border-top:var(--six-tooltip-arrow-size) solid transparent;border-bottom:var(--six-tooltip-arrow-size) solid transparent}.tooltip-positioner[data-popper-placement=right-start] .tooltip::after{top:var(--six-tooltip-arrow-start-end-offset)}.tooltip-positioner[data-popper-placement=right-end] .tooltip::after{top:auto;bottom:var(--six-tooltip-arrow-start-end-offset)}";
5
5
 
6
6
  let id = 0;
7
7
  const SixTooltip = class {
8
- constructor(hostRef) {
9
- registerInstance(this, hostRef);
10
- this.sixShow = createEvent(this, "six-tooltip-show", 7);
11
- this.sixAfterShow = createEvent(this, "six-tooltip-after-show", 7);
12
- this.sixHide = createEvent(this, "six-tooltip-hide", 7);
13
- this.sixAfterHide = createEvent(this, "six-tooltip-after-hide", 7);
14
- this.componentId = `tooltip-${++id}`;
15
- this.isVisible = false;
16
- this.handleBlur = () => {
17
- if (this.hasTrigger('focus')) {
18
- this.hide();
19
- }
20
- };
21
- this.handleClick = () => {
22
- if (this.hasTrigger('click')) {
23
- this.open ? this.hide() : this.show();
24
- }
25
- };
26
- this.handleFocus = () => {
27
- if (this.hasTrigger('focus')) {
28
- this.show();
29
- }
30
- };
31
- this.handleKeyDown = (event) => {
32
- // Pressing escape when the target element has focus should dismiss the tooltip
33
- if (this.open && event.key === 'Escape') {
34
- event.stopPropagation();
35
- this.hide();
36
- }
37
- };
38
- this.handleMouseOver = () => {
39
- if (this.hasTrigger('hover')) {
40
- this.show();
41
- }
42
- };
43
- this.handleMouseOut = () => {
44
- if (this.hasTrigger('hover')) {
45
- this.hide();
46
- }
47
- };
48
- this.handleSlotChange = () => {
49
- const oldTarget = this.target;
50
- const newTarget = this.getTarget();
51
- if (newTarget !== oldTarget) {
52
- if (oldTarget != null) {
53
- oldTarget.removeAttribute('aria-describedby');
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ this.sixShow = createEvent(this, "six-tooltip-show", 7);
11
+ this.sixAfterShow = createEvent(this, "six-tooltip-after-show", 7);
12
+ this.sixHide = createEvent(this, "six-tooltip-hide", 7);
13
+ this.sixAfterHide = createEvent(this, "six-tooltip-after-hide", 7);
14
+ this.componentId = `tooltip-${++id}`;
15
+ this.isVisible = false;
16
+ this.handleBlur = () => {
17
+ if (this.hasTrigger('focus')) {
18
+ this.hide();
19
+ }
20
+ };
21
+ this.handleClick = () => {
22
+ if (this.hasTrigger('click')) {
23
+ this.open ? this.hide() : this.show();
24
+ }
25
+ };
26
+ this.handleFocus = () => {
27
+ if (this.hasTrigger('focus')) {
28
+ this.show();
29
+ }
30
+ };
31
+ this.handleKeyDown = (event) => {
32
+ // Pressing escape when the target element has focus should dismiss the tooltip
33
+ if (this.open && event.key === 'Escape') {
34
+ event.stopPropagation();
35
+ this.hide();
36
+ }
37
+ };
38
+ this.handleMouseOver = () => {
39
+ if (this.hasTrigger('hover')) {
40
+ this.show();
41
+ }
42
+ };
43
+ this.handleMouseOut = () => {
44
+ if (this.hasTrigger('hover')) {
45
+ this.hide();
46
+ }
47
+ };
48
+ this.handleSlotChange = () => {
49
+ const oldTarget = this.target;
50
+ const newTarget = this.getTarget();
51
+ if (newTarget !== oldTarget) {
52
+ if (oldTarget != null) {
53
+ oldTarget.removeAttribute('aria-describedby');
54
+ }
55
+ newTarget.setAttribute('aria-describedby', this.componentId);
56
+ }
57
+ };
58
+ this.content = '';
59
+ this.placement = 'top';
60
+ this.disabled = false;
61
+ this.distance = 10;
62
+ this.open = false;
63
+ this.skidding = 0;
64
+ this.trigger = 'hover focus';
65
+ }
66
+ handleOpenChange() {
67
+ this.open ? this.show() : this.hide();
68
+ }
69
+ componentDidLoad() {
70
+ if (this.tooltipPositioner == null)
71
+ return;
72
+ this.target = this.getTarget();
73
+ this.popover = new Popover(this.target, this.tooltipPositioner, { strategy: 'fixed' });
74
+ this.syncOptions();
75
+ this.host.addEventListener('blur', this.handleBlur, true);
76
+ this.host.addEventListener('click', this.handleClick, true);
77
+ this.host.addEventListener('focus', this.handleFocus, true);
78
+ // Show on init if open
79
+ this.tooltipPositioner.hidden = !this.open;
80
+ if (this.open) {
81
+ this.show();
82
+ }
83
+ }
84
+ componentDidUpdate() {
85
+ this.syncOptions();
86
+ }
87
+ disconnectedCallback() {
88
+ if (this.popover != null) {
89
+ this.popover.destroy();
54
90
  }
55
- newTarget.setAttribute('aria-describedby', this.componentId);
56
- }
57
- };
58
- this.content = '';
59
- this.placement = 'top';
60
- this.disabled = false;
61
- this.distance = 10;
62
- this.open = false;
63
- this.skidding = 0;
64
- this.trigger = 'hover focus';
65
- }
66
- handleOpenChange() {
67
- this.open ? this.show() : this.hide();
68
- }
69
- componentDidLoad() {
70
- if (this.tooltipPositioner == null)
71
- return;
72
- this.target = this.getTarget();
73
- this.popover = new Popover(this.target, this.tooltipPositioner, { strategy: 'fixed' });
74
- this.syncOptions();
75
- this.host.addEventListener('blur', this.handleBlur, true);
76
- this.host.addEventListener('click', this.handleClick, true);
77
- this.host.addEventListener('focus', this.handleFocus, true);
78
- // Show on init if open
79
- this.tooltipPositioner.hidden = !this.open;
80
- if (this.open) {
81
- this.show();
91
+ this.host.removeEventListener('blur', this.handleBlur, true);
92
+ this.host.removeEventListener('click', this.handleClick, true);
93
+ this.host.removeEventListener('focus', this.handleFocus, true);
82
94
  }
83
- }
84
- componentDidUpdate() {
85
- this.syncOptions();
86
- }
87
- disconnectedCallback() {
88
- if (this.popover != null) {
89
- this.popover.destroy();
95
+ /** Shows the tooltip. */
96
+ async show() {
97
+ var _a;
98
+ // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher
99
+ if (this.isVisible || this.disabled) {
100
+ return;
101
+ }
102
+ const sixShow = this.sixShow.emit();
103
+ if (sixShow.defaultPrevented) {
104
+ this.open = false;
105
+ return;
106
+ }
107
+ this.isVisible = true;
108
+ this.open = true;
109
+ (_a = this.popover) === null || _a === void 0 ? void 0 : _a.show();
90
110
  }
91
- this.host.removeEventListener('blur', this.handleBlur, true);
92
- this.host.removeEventListener('click', this.handleClick, true);
93
- this.host.removeEventListener('focus', this.handleFocus, true);
94
- }
95
- /** Shows the tooltip. */
96
- async show() {
97
- var _a;
98
- // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher
99
- if (this.isVisible || this.disabled) {
100
- return;
111
+ /** Shows the tooltip. */
112
+ async hide() {
113
+ var _a;
114
+ // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher
115
+ if (!this.isVisible || this.disabled) {
116
+ return;
117
+ }
118
+ const sixHide = this.sixHide.emit();
119
+ if (sixHide.defaultPrevented) {
120
+ this.open = true;
121
+ return;
122
+ }
123
+ this.isVisible = false;
124
+ this.open = false;
125
+ (_a = this.popover) === null || _a === void 0 ? void 0 : _a.hide();
101
126
  }
102
- const sixShow = this.sixShow.emit();
103
- if (sixShow.defaultPrevented) {
104
- this.open = false;
105
- return;
127
+ getTarget() {
128
+ // Get the first child that isn't a <style> or content slot
129
+ const target = [...this.host.children].find((el) => el.tagName.toLowerCase() !== 'style' && el.getAttribute('slot') !== 'content');
130
+ if (target == null) {
131
+ throw new Error('Invalid tooltip target: no child element was found.');
132
+ }
133
+ return target;
106
134
  }
107
- this.isVisible = true;
108
- this.open = true;
109
- (_a = this.popover) === null || _a === void 0 ? void 0 : _a.show();
110
- }
111
- /** Shows the tooltip. */
112
- async hide() {
113
- var _a;
114
- // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher
115
- if (!this.isVisible || this.disabled) {
116
- return;
135
+ hasTrigger(triggerType) {
136
+ const triggers = this.trigger.split(' ');
137
+ return triggers.includes(triggerType);
117
138
  }
118
- const sixHide = this.sixHide.emit();
119
- if (sixHide.defaultPrevented) {
120
- this.open = true;
121
- return;
139
+ syncOptions() {
140
+ if (this.popover == null)
141
+ return;
142
+ this.popover.setOptions({
143
+ placement: this.placement,
144
+ distance: this.distance,
145
+ skidding: this.skidding,
146
+ transitionElement: this.tooltip,
147
+ onAfterHide: () => this.sixAfterHide.emit(),
148
+ onAfterShow: () => this.sixAfterShow.emit(),
149
+ });
122
150
  }
123
- this.isVisible = false;
124
- this.open = false;
125
- (_a = this.popover) === null || _a === void 0 ? void 0 : _a.hide();
126
- }
127
- getTarget() {
128
- // Get the first child that isn't a <style> or content slot
129
- const target = [...this.host.children].find((el) => el.tagName.toLowerCase() !== 'style' && el.getAttribute('slot') !== 'content');
130
- if (target == null) {
131
- throw new Error('Invalid tooltip target: no child element was found.');
151
+ render() {
152
+ return (h(Host, { onKeyDown: this.handleKeyDown, onMouseOver: this.handleMouseOver, onMouseOut: this.handleMouseOut }, h("slot", { onSlotchange: this.handleSlotChange }), h("div", { ref: (el) => (this.tooltipPositioner = el), class: "tooltip-positioner" }, h("div", { part: "base", ref: (el) => (this.tooltip = el), id: this.componentId, class: {
153
+ tooltip: true,
154
+ 'tooltip--open': this.open,
155
+ }, role: "tooltip", "aria-hidden": this.open ? 'false' : 'true' }, h("slot", { name: "content" }, this.content)))));
132
156
  }
133
- return target;
134
- }
135
- hasTrigger(triggerType) {
136
- const triggers = this.trigger.split(' ');
137
- return triggers.includes(triggerType);
138
- }
139
- syncOptions() {
140
- if (this.popover == null)
141
- return;
142
- this.popover.setOptions({
143
- placement: this.placement,
144
- distance: this.distance,
145
- skidding: this.skidding,
146
- transitionElement: this.tooltip,
147
- onAfterHide: () => this.sixAfterHide.emit(),
148
- onAfterShow: () => this.sixAfterShow.emit(),
149
- });
150
- }
151
- render() {
152
- return (h(Host, { onKeyDown: this.handleKeyDown, onMouseOver: this.handleMouseOver, onMouseOut: this.handleMouseOut }, h("slot", { onSlotchange: this.handleSlotChange }), h("div", { ref: (el) => (this.tooltipPositioner = el), class: "tooltip-positioner" }, h("div", { part: "base", ref: (el) => (this.tooltip = el), id: this.componentId, class: {
153
- tooltip: true,
154
- 'tooltip--open': this.open,
155
- }, role: "tooltip", "aria-hidden": this.open ? 'false' : 'true' }, h("slot", { name: "content" }, this.content)))));
156
- }
157
- get host() { return getElement(this); }
158
- static get watchers() { return {
159
- "open": ["handleOpenChange"]
160
- }; }
157
+ get host() { return getElement(this); }
158
+ static get watchers() { return {
159
+ "open": ["handleOpenChange"]
160
+ }; }
161
161
  };
162
162
  SixTooltip.style = sixTooltipCss;
163
163
 
@@ -1 +1 @@
1
- {"file":"six-tooltip.entry.js","mappings":";;;AAAA,MAAM,aAAa,GAAG,uxHAAuxH;;ACI7yH,IAAI,EAAE,GAAG,CAAC,CAAC;MAmBE,UAAU;;;;;;;IACb,gBAAW,GAAG,WAAW,EAAE,EAAE,EAAE,CAAC;IAChC,cAAS,GAAG,KAAK,CAAC;IAmJlB,eAAU,GAAG;MACnB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;OACb;KACF,CAAC;IAEM,gBAAW,GAAG;MACpB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;OACvC;KACF,CAAC;IAEM,gBAAW,GAAG;MACpB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;OACb;KACF,CAAC;IAEM,kBAAa,GAAG,CAAC,KAAoB;;MAE3C,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;QACvC,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,EAAE,CAAC;OACb;KACF,CAAC;IAEM,oBAAe,GAAG;MACxB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;OACb;KACF,CAAC;IAEM,mBAAc,GAAG;MACvB,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;OACb;KACF,CAAC;IAEM,qBAAgB,GAAG;MACzB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;MAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;MAEnC,IAAI,SAAS,KAAK,SAAS,EAAE;QAC3B,IAAI,SAAS,IAAI,IAAI,EAAE;UACrB,SAAS,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;SAC/C;QACD,SAAS,CAAC,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;OAC9D;KACF,CAAC;mBA1LgB,EAAE;qBAkBH,KAAK;oBAGH,KAAK;oBAGL,EAAE;gBAG0B,KAAK;oBAGjC,CAAC;mBAOF,aAAa;;EAG/B,gBAAgB;IACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;GACvC;EAcD,gBAAgB;IACd,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI;MAAE,OAAO;IAC3C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IACvF,IAAI,CAAC,WAAW,EAAE,CAAC;IAEnB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC1D,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC5D,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;;IAG5D,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;IAC3C,IAAI,IAAI,CAAC,IAAI,EAAE;MACb,IAAI,CAAC,IAAI,EAAE,CAAC;KACb;GACF;EAED,kBAAkB;IAChB,IAAI,CAAC,WAAW,EAAE,CAAC;GACpB;EAED,oBAAoB;IAClB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,EAAE;MACxB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;KACxB;IAED,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAC7D,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC/D,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;GAChE;;EAID,MAAM,IAAI;;;IAER,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,EAAE;MACnC,OAAO;KACR;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACpC,IAAI,OAAO,CAAC,gBAAgB,EAAE;MAC5B,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;MAClB,OAAO;KACR;IAED,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACjB,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,EAAE,CAAC;GACtB;;EAID,MAAM,IAAI;;;IAER,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,EAAE;MACpC,OAAO;KACR;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACpC,IAAI,OAAO,CAAC,gBAAgB,EAAE;MAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;MACjB,OAAO;KACR;IAED,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACvB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;IAClB,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,EAAE,CAAC;GACtB;EAEO,SAAS;;IAEf,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CACzC,CAAC,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO,IAAI,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,SAAS,CACvE,CAAC;IAEjB,IAAI,MAAM,IAAI,IAAI,EAAE;MAClB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;KACxE;IAED,OAAO,MAAM,CAAC;GACf;EAoDO,UAAU,CAAC,WAAmB;IACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzC,OAAO,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;GACvC;EAEO,WAAW;IACjB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI;MAAE,OAAO;IAEjC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;MACtB,SAAS,EAAE,IAAI,CAAC,SAAS;MACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;MACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;MACvB,iBAAiB,EAAE,IAAI,CAAC,OAAO;MAC/B,WAAW,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;MAC3C,WAAW,EAAE,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;KAC5C,CAAC,CAAC;GACJ;EAED,MAAM;IACJ,QACE,EAAC,IAAI,IAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC,eAAe,EAAE,UAAU,EAAE,IAAI,CAAC,cAAc,IACrG,YAAM,YAAY,EAAE,IAAI,CAAC,gBAAgB,GAAI,EAC7C,WAAK,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC,EAAE,KAAK,EAAC,oBAAoB,IACzE,WACE,IAAI,EAAC,MAAM,EACX,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,EAChC,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,KAAK,EAAE;QACL,OAAO,EAAE,IAAI;QACb,eAAe,EAAE,IAAI,CAAC,IAAI;OAC3B,EACD,IAAI,EAAC,SAAS,iBACD,IAAI,CAAC,IAAI,GAAG,OAAO,GAAG,MAAM,IAEzC,YAAM,IAAI,EAAC,SAAS,IAAE,IAAI,CAAC,OAAO,CAAQ,CACtC,CACF,CACD,EACP;GACH;;;;;;;;;;","names":[],"sources":["src/components/six-tooltip/six-tooltip.scss?tag=six-tooltip&encapsulation=shadow","src/components/six-tooltip/six-tooltip.tsx"],"sourcesContent":["@import 'src/global/component';\n\n/**\n * @prop --hide-delay: The amount of time to wait before hiding the tooltip.\n * @prop --hide-duration: The amount of time the hide transition takes to complete.\n * @prop --hide-timing-function: The timing function (easing) to use for the hide transition.\n * @prop --max-width: The maximum width of the tooltip.\n * @prop --show-delay: The amount of time to wait before showing the tooltip.\n * @prop --show-duration: The amount of time the show transition takes to complete.\n * @prop --show-timing-function: The timing function (easing) to use for the show transition.\n */\n:host {\n --max-width: 20rem;\n --hide-delay: 0s;\n --hide-duration: 0.125s;\n --hide-timing-function: ease;\n --show-delay: 0.125s;\n --show-duration: 0.125s;\n --show-timing-function: ease;\n\n display: contents;\n}\n\n.tooltip-positioner {\n position: fixed;\n z-index: var(--six-z-index-tooltip);\n pointer-events: none;\n}\n\n.tooltip {\n max-width: var(--max-width);\n border-radius: var(--six-border-radius-medium);\n background-color: var(--six-tooltip-background-color);\n font-family: var(--six-font-family);\n font-size: var(--six-tooltip-font-size);\n font-weight: var(--six-tooltip-font-weight);\n line-height: var(--six-tooltip-line-height);\n color: var(--six-tooltip-color);\n opacity: 0;\n padding: var(--six-spacing-xxx-small) var(--six-spacing-x-small);\n transform: scale(0.8);\n transform-origin: bottom;\n transition-property: opacity, transform;\n transition-delay: var(--hide-delay);\n transition-duration: var(--hide-duration);\n transition-timing-function: var(--hide-timing-function);\n\n &::after {\n content: '';\n position: absolute;\n width: 0;\n height: 0;\n }\n}\n\n.tooltip-positioner {\n &[data-popper-placement^='top'] .tooltip {\n transform-origin: bottom;\n }\n\n &[data-popper-placement^='bottom'] .tooltip {\n transform-origin: top;\n }\n\n &[data-popper-placement^='left'] .tooltip {\n transform-origin: right;\n }\n\n &[data-popper-placement^='right'] .tooltip {\n transform-origin: left;\n }\n\n &.popover-visible .tooltip {\n opacity: 1;\n transform: none;\n transition-delay: var(--show-delay);\n transition-duration: var(--show-duration);\n transition-timing-function: var(--show-timing-function);\n }\n}\n\n// Arrow + bottom\n.tooltip-positioner[data-popper-placement^='bottom'] .tooltip::after {\n bottom: 100%;\n left: calc(50% - var(--six-tooltip-arrow-size));\n border-bottom: var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);\n border-left: var(--six-tooltip-arrow-size) solid transparent;\n border-right: var(--six-tooltip-arrow-size) solid transparent;\n}\n\n.tooltip-positioner[data-popper-placement='bottom-start'] .tooltip::after {\n left: var(--six-tooltip-arrow-start-end-offset);\n}\n\n.tooltip-positioner[data-popper-placement='bottom-end'] .tooltip::after {\n right: var(--six-tooltip-arrow-start-end-offset);\n left: auto;\n}\n\n// Arrow + top\n.tooltip-positioner[data-popper-placement^='top'] .tooltip::after {\n top: 100%;\n left: calc(50% - var(--six-tooltip-arrow-size));\n border-top: var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);\n border-left: var(--six-tooltip-arrow-size) solid transparent;\n border-right: var(--six-tooltip-arrow-size) solid transparent;\n}\n\n.tooltip-positioner[data-popper-placement='top-start'] .tooltip::after {\n left: var(--six-tooltip-arrow-start-end-offset);\n}\n\n.tooltip-positioner[data-popper-placement='top-end'] .tooltip::after {\n right: var(--six-tooltip-arrow-start-end-offset);\n left: auto;\n}\n\n// Arrow + left\n.tooltip-positioner[data-popper-placement^='left'] .tooltip::after {\n top: calc(50% - var(--six-tooltip-arrow-size));\n left: 100%;\n border-left: var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);\n border-top: var(--six-tooltip-arrow-size) solid transparent;\n border-bottom: var(--six-tooltip-arrow-size) solid transparent;\n}\n\n.tooltip-positioner[data-popper-placement='left-start'] .tooltip::after {\n top: var(--six-tooltip-arrow-start-end-offset);\n}\n\n.tooltip-positioner[data-popper-placement='left-end'] .tooltip::after {\n top: auto;\n bottom: var(--six-tooltip-arrow-start-end-offset);\n}\n\n// Arrow + right\n.tooltip-positioner[data-popper-placement^='right'] .tooltip::after {\n top: calc(50% - var(--six-tooltip-arrow-size));\n right: 100%;\n border-right: var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);\n border-top: var(--six-tooltip-arrow-size) solid transparent;\n border-bottom: var(--six-tooltip-arrow-size) solid transparent;\n}\n\n.tooltip-positioner[data-popper-placement='right-start'] .tooltip::after {\n top: var(--six-tooltip-arrow-start-end-offset);\n}\n\n.tooltip-positioner[data-popper-placement='right-end'] .tooltip::after {\n top: auto;\n bottom: var(--six-tooltip-arrow-start-end-offset);\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, Watch } from '@stencil/core';\nimport Popover from '../../utils/popover';\nimport { EmptyPayload } from '../../utils/types';\n\nlet id = 0;\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot - The tooltip's target element. Only the first element will be used as the target.\n * @slot content - The tooltip's content. Alternatively, you can use the content prop.\n *\n * @part base - The component's base wrapper.\n */\n\n@Component({\n tag: 'six-tooltip',\n styleUrl: 'six-tooltip.scss',\n shadow: true,\n})\nexport class SixTooltip {\n private componentId = `tooltip-${++id}`;\n private isVisible = false;\n private popover?: Popover;\n private tooltipPositioner?: HTMLElement;\n private target?: HTMLElement;\n private tooltip?: HTMLElement;\n\n @Element() host!: HTMLSixTooltipElement;\n\n /** The tooltip's content. Alternatively, you can use the content slot. */\n @Prop() content = '';\n\n /**\n * The preferred placement of the tooltip. Note that the actual placement may vary as needed to keep the tooltip\n * inside the viewport.\n */\n @Prop() placement:\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'left'\n | 'left-start'\n | 'left-end' = 'top';\n\n /** Set to true to disable the tooltip, so it won't show when triggered. */\n @Prop() disabled = false;\n\n /** The distance in pixels from which to offset the tooltip away from its target. */\n @Prop() distance = 10;\n\n /** Indicates whether the tooltip is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** The distance in pixels from which to offset the tooltip along its target. */\n @Prop() skidding = 0;\n\n /**\n * Controls how the tooltip is activated. Possible options include `click`, `hover`, `focus`, and `manual`. Multiple\n * options can be passed by separating them with a space. When manual is used, the tooltip must be activated\n * programmatically.\n */\n @Prop() trigger = 'hover focus';\n\n @Watch('open')\n handleOpenChange() {\n this.open ? this.show() : this.hide();\n }\n\n /** Emitted when the tooltip begins to show. Calling `event.preventDefault()` will prevent it from being shown. */\n @Event({ eventName: 'six-tooltip-show' }) sixShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the tooltip has shown and all transitions are complete. */\n @Event({ eventName: 'six-tooltip-after-show' }) sixAfterShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the tooltip begins to hide. Calling `event.preventDefault()` will prevent it from being hidden. */\n @Event({ eventName: 'six-tooltip-hide' }) sixHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the tooltip has hidden and all transitions are complete. */\n @Event({ eventName: 'six-tooltip-after-hide' }) sixAfterHide!: EventEmitter<EmptyPayload>;\n\n componentDidLoad() {\n if (this.tooltipPositioner == null) return;\n this.target = this.getTarget();\n this.popover = new Popover(this.target, this.tooltipPositioner, { strategy: 'fixed' });\n this.syncOptions();\n\n this.host.addEventListener('blur', this.handleBlur, true);\n this.host.addEventListener('click', this.handleClick, true);\n this.host.addEventListener('focus', this.handleFocus, true);\n\n // Show on init if open\n this.tooltipPositioner.hidden = !this.open;\n if (this.open) {\n this.show();\n }\n }\n\n componentDidUpdate() {\n this.syncOptions();\n }\n\n disconnectedCallback() {\n if (this.popover != null) {\n this.popover.destroy();\n }\n\n this.host.removeEventListener('blur', this.handleBlur, true);\n this.host.removeEventListener('click', this.handleClick, true);\n this.host.removeEventListener('focus', this.handleFocus, true);\n }\n\n /** Shows the tooltip. */\n @Method()\n async show() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (this.isVisible || this.disabled) {\n return;\n }\n\n const sixShow = this.sixShow.emit();\n if (sixShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.isVisible = true;\n this.open = true;\n this.popover?.show();\n }\n\n /** Shows the tooltip. */\n @Method()\n async hide() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (!this.isVisible || this.disabled) {\n return;\n }\n\n const sixHide = this.sixHide.emit();\n if (sixHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n this.isVisible = false;\n this.open = false;\n this.popover?.hide();\n }\n\n private getTarget() {\n // Get the first child that isn't a <style> or content slot\n const target = [...this.host.children].find(\n (el) => el.tagName.toLowerCase() !== 'style' && el.getAttribute('slot') !== 'content'\n ) as HTMLElement;\n\n if (target == null) {\n throw new Error('Invalid tooltip target: no child element was found.');\n }\n\n return target;\n }\n\n private handleBlur = () => {\n if (this.hasTrigger('focus')) {\n this.hide();\n }\n };\n\n private handleClick = () => {\n if (this.hasTrigger('click')) {\n this.open ? this.hide() : this.show();\n }\n };\n\n private handleFocus = () => {\n if (this.hasTrigger('focus')) {\n this.show();\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n // Pressing escape when the target element has focus should dismiss the tooltip\n if (this.open && event.key === 'Escape') {\n event.stopPropagation();\n this.hide();\n }\n };\n\n private handleMouseOver = () => {\n if (this.hasTrigger('hover')) {\n this.show();\n }\n };\n\n private handleMouseOut = () => {\n if (this.hasTrigger('hover')) {\n this.hide();\n }\n };\n\n private handleSlotChange = () => {\n const oldTarget = this.target;\n const newTarget = this.getTarget();\n\n if (newTarget !== oldTarget) {\n if (oldTarget != null) {\n oldTarget.removeAttribute('aria-describedby');\n }\n newTarget.setAttribute('aria-describedby', this.componentId);\n }\n };\n\n private hasTrigger(triggerType: string) {\n const triggers = this.trigger.split(' ');\n return triggers.includes(triggerType);\n }\n\n private syncOptions() {\n if (this.popover == null) return;\n\n this.popover.setOptions({\n placement: this.placement,\n distance: this.distance,\n skidding: this.skidding,\n transitionElement: this.tooltip,\n onAfterHide: () => this.sixAfterHide.emit(),\n onAfterShow: () => this.sixAfterShow.emit(),\n });\n }\n\n render() {\n return (\n <Host onKeyDown={this.handleKeyDown} onMouseOver={this.handleMouseOver} onMouseOut={this.handleMouseOut}>\n <slot onSlotchange={this.handleSlotChange} />\n <div ref={(el) => (this.tooltipPositioner = el)} class=\"tooltip-positioner\">\n <div\n part=\"base\"\n ref={(el) => (this.tooltip = el)}\n id={this.componentId}\n class={{\n tooltip: true,\n 'tooltip--open': this.open,\n }}\n role=\"tooltip\"\n aria-hidden={this.open ? 'false' : 'true'}\n >\n <slot name=\"content\">{this.content}</slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"six-tooltip.entry.js","mappings":"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","names":[],"sources":["src/components/six-tooltip/six-tooltip.scss?tag=six-tooltip&encapsulation=shadow","src/components/six-tooltip/six-tooltip.tsx"],"sourcesContent":["@import 'src/global/component';\n\n/**\n * @prop --hide-delay: The amount of time to wait before hiding the tooltip.\n * @prop --hide-duration: The amount of time the hide transition takes to complete.\n * @prop --hide-timing-function: The timing function (easing) to use for the hide transition.\n * @prop --max-width: The maximum width of the tooltip.\n * @prop --show-delay: The amount of time to wait before showing the tooltip.\n * @prop --show-duration: The amount of time the show transition takes to complete.\n * @prop --show-timing-function: The timing function (easing) to use for the show transition.\n */\n:host {\n --max-width: 20rem;\n --hide-delay: 0s;\n --hide-duration: 0.125s;\n --hide-timing-function: ease;\n --show-delay: 0.125s;\n --show-duration: 0.125s;\n --show-timing-function: ease;\n\n display: contents;\n}\n\n.tooltip-positioner {\n position: fixed;\n z-index: var(--six-z-index-tooltip);\n pointer-events: none;\n}\n\n.tooltip {\n max-width: var(--max-width);\n border-radius: var(--six-border-radius-medium);\n background-color: var(--six-tooltip-background-color);\n font-family: var(--six-font-family);\n font-size: var(--six-tooltip-font-size);\n font-weight: var(--six-tooltip-font-weight);\n line-height: var(--six-tooltip-line-height);\n color: var(--six-tooltip-color);\n opacity: 0;\n padding: var(--six-spacing-xxx-small) var(--six-spacing-x-small);\n transform: scale(0.8);\n transform-origin: bottom;\n transition-property: opacity, transform;\n transition-delay: var(--hide-delay);\n transition-duration: var(--hide-duration);\n transition-timing-function: var(--hide-timing-function);\n\n &::after {\n content: '';\n position: absolute;\n width: 0;\n height: 0;\n }\n}\n\n.tooltip-positioner {\n &[data-popper-placement^='top'] .tooltip {\n transform-origin: bottom;\n }\n\n &[data-popper-placement^='bottom'] .tooltip {\n transform-origin: top;\n }\n\n &[data-popper-placement^='left'] .tooltip {\n transform-origin: right;\n }\n\n &[data-popper-placement^='right'] .tooltip {\n transform-origin: left;\n }\n\n &.popover-visible .tooltip {\n opacity: 1;\n transform: none;\n transition-delay: var(--show-delay);\n transition-duration: var(--show-duration);\n transition-timing-function: var(--show-timing-function);\n }\n}\n\n// Arrow + bottom\n.tooltip-positioner[data-popper-placement^='bottom'] .tooltip::after {\n bottom: 100%;\n left: calc(50% - var(--six-tooltip-arrow-size));\n border-bottom: var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);\n border-left: var(--six-tooltip-arrow-size) solid transparent;\n border-right: var(--six-tooltip-arrow-size) solid transparent;\n}\n\n.tooltip-positioner[data-popper-placement='bottom-start'] .tooltip::after {\n left: var(--six-tooltip-arrow-start-end-offset);\n}\n\n.tooltip-positioner[data-popper-placement='bottom-end'] .tooltip::after {\n right: var(--six-tooltip-arrow-start-end-offset);\n left: auto;\n}\n\n// Arrow + top\n.tooltip-positioner[data-popper-placement^='top'] .tooltip::after {\n top: 100%;\n left: calc(50% - var(--six-tooltip-arrow-size));\n border-top: var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);\n border-left: var(--six-tooltip-arrow-size) solid transparent;\n border-right: var(--six-tooltip-arrow-size) solid transparent;\n}\n\n.tooltip-positioner[data-popper-placement='top-start'] .tooltip::after {\n left: var(--six-tooltip-arrow-start-end-offset);\n}\n\n.tooltip-positioner[data-popper-placement='top-end'] .tooltip::after {\n right: var(--six-tooltip-arrow-start-end-offset);\n left: auto;\n}\n\n// Arrow + left\n.tooltip-positioner[data-popper-placement^='left'] .tooltip::after {\n top: calc(50% - var(--six-tooltip-arrow-size));\n left: 100%;\n border-left: var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);\n border-top: var(--six-tooltip-arrow-size) solid transparent;\n border-bottom: var(--six-tooltip-arrow-size) solid transparent;\n}\n\n.tooltip-positioner[data-popper-placement='left-start'] .tooltip::after {\n top: var(--six-tooltip-arrow-start-end-offset);\n}\n\n.tooltip-positioner[data-popper-placement='left-end'] .tooltip::after {\n top: auto;\n bottom: var(--six-tooltip-arrow-start-end-offset);\n}\n\n// Arrow + right\n.tooltip-positioner[data-popper-placement^='right'] .tooltip::after {\n top: calc(50% - var(--six-tooltip-arrow-size));\n right: 100%;\n border-right: var(--six-tooltip-arrow-size) solid var(--six-tooltip-background-color);\n border-top: var(--six-tooltip-arrow-size) solid transparent;\n border-bottom: var(--six-tooltip-arrow-size) solid transparent;\n}\n\n.tooltip-positioner[data-popper-placement='right-start'] .tooltip::after {\n top: var(--six-tooltip-arrow-start-end-offset);\n}\n\n.tooltip-positioner[data-popper-placement='right-end'] .tooltip::after {\n top: auto;\n bottom: var(--six-tooltip-arrow-start-end-offset);\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, Watch } from '@stencil/core';\nimport Popover from '../../utils/popover';\nimport { EmptyPayload } from '../../utils/types';\n\nlet id = 0;\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot - The tooltip's target element. Only the first element will be used as the target.\n * @slot content - The tooltip's content. Alternatively, you can use the content prop.\n *\n * @part base - The component's base wrapper.\n */\n\n@Component({\n tag: 'six-tooltip',\n styleUrl: 'six-tooltip.scss',\n shadow: true,\n})\nexport class SixTooltip {\n private componentId = `tooltip-${++id}`;\n private isVisible = false;\n private popover?: Popover;\n private tooltipPositioner?: HTMLElement;\n private target?: HTMLElement;\n private tooltip?: HTMLElement;\n\n @Element() host!: HTMLSixTooltipElement;\n\n /** The tooltip's content. Alternatively, you can use the content slot. */\n @Prop() content = '';\n\n /**\n * The preferred placement of the tooltip. Note that the actual placement may vary as needed to keep the tooltip\n * inside the viewport.\n */\n @Prop() placement:\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'left'\n | 'left-start'\n | 'left-end' = 'top';\n\n /** Set to true to disable the tooltip, so it won't show when triggered. */\n @Prop() disabled = false;\n\n /** The distance in pixels from which to offset the tooltip away from its target. */\n @Prop() distance = 10;\n\n /** Indicates whether the tooltip is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** The distance in pixels from which to offset the tooltip along its target. */\n @Prop() skidding = 0;\n\n /**\n * Controls how the tooltip is activated. Possible options include `click`, `hover`, `focus`, and `manual`. Multiple\n * options can be passed by separating them with a space. When manual is used, the tooltip must be activated\n * programmatically.\n */\n @Prop() trigger = 'hover focus';\n\n @Watch('open')\n handleOpenChange() {\n this.open ? this.show() : this.hide();\n }\n\n /** Emitted when the tooltip begins to show. Calling `event.preventDefault()` will prevent it from being shown. */\n @Event({ eventName: 'six-tooltip-show' }) sixShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the tooltip has shown and all transitions are complete. */\n @Event({ eventName: 'six-tooltip-after-show' }) sixAfterShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the tooltip begins to hide. Calling `event.preventDefault()` will prevent it from being hidden. */\n @Event({ eventName: 'six-tooltip-hide' }) sixHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the tooltip has hidden and all transitions are complete. */\n @Event({ eventName: 'six-tooltip-after-hide' }) sixAfterHide!: EventEmitter<EmptyPayload>;\n\n componentDidLoad() {\n if (this.tooltipPositioner == null) return;\n this.target = this.getTarget();\n this.popover = new Popover(this.target, this.tooltipPositioner, { strategy: 'fixed' });\n this.syncOptions();\n\n this.host.addEventListener('blur', this.handleBlur, true);\n this.host.addEventListener('click', this.handleClick, true);\n this.host.addEventListener('focus', this.handleFocus, true);\n\n // Show on init if open\n this.tooltipPositioner.hidden = !this.open;\n if (this.open) {\n this.show();\n }\n }\n\n componentDidUpdate() {\n this.syncOptions();\n }\n\n disconnectedCallback() {\n if (this.popover != null) {\n this.popover.destroy();\n }\n\n this.host.removeEventListener('blur', this.handleBlur, true);\n this.host.removeEventListener('click', this.handleClick, true);\n this.host.removeEventListener('focus', this.handleFocus, true);\n }\n\n /** Shows the tooltip. */\n @Method()\n async show() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (this.isVisible || this.disabled) {\n return;\n }\n\n const sixShow = this.sixShow.emit();\n if (sixShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.isVisible = true;\n this.open = true;\n this.popover?.show();\n }\n\n /** Shows the tooltip. */\n @Method()\n async hide() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (!this.isVisible || this.disabled) {\n return;\n }\n\n const sixHide = this.sixHide.emit();\n if (sixHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n this.isVisible = false;\n this.open = false;\n this.popover?.hide();\n }\n\n private getTarget() {\n // Get the first child that isn't a <style> or content slot\n const target = [...this.host.children].find(\n (el) => el.tagName.toLowerCase() !== 'style' && el.getAttribute('slot') !== 'content'\n ) as HTMLElement;\n\n if (target == null) {\n throw new Error('Invalid tooltip target: no child element was found.');\n }\n\n return target;\n }\n\n private handleBlur = () => {\n if (this.hasTrigger('focus')) {\n this.hide();\n }\n };\n\n private handleClick = () => {\n if (this.hasTrigger('click')) {\n this.open ? this.hide() : this.show();\n }\n };\n\n private handleFocus = () => {\n if (this.hasTrigger('focus')) {\n this.show();\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n // Pressing escape when the target element has focus should dismiss the tooltip\n if (this.open && event.key === 'Escape') {\n event.stopPropagation();\n this.hide();\n }\n };\n\n private handleMouseOver = () => {\n if (this.hasTrigger('hover')) {\n this.show();\n }\n };\n\n private handleMouseOut = () => {\n if (this.hasTrigger('hover')) {\n this.hide();\n }\n };\n\n private handleSlotChange = () => {\n const oldTarget = this.target;\n const newTarget = this.getTarget();\n\n if (newTarget !== oldTarget) {\n if (oldTarget != null) {\n oldTarget.removeAttribute('aria-describedby');\n }\n newTarget.setAttribute('aria-describedby', this.componentId);\n }\n };\n\n private hasTrigger(triggerType: string) {\n const triggers = this.trigger.split(' ');\n return triggers.includes(triggerType);\n }\n\n private syncOptions() {\n if (this.popover == null) return;\n\n this.popover.setOptions({\n placement: this.placement,\n distance: this.distance,\n skidding: this.skidding,\n transitionElement: this.tooltip,\n onAfterHide: () => this.sixAfterHide.emit(),\n onAfterShow: () => this.sixAfterShow.emit(),\n });\n }\n\n render() {\n return (\n <Host onKeyDown={this.handleKeyDown} onMouseOver={this.handleMouseOver} onMouseOut={this.handleMouseOut}>\n <slot onSlotchange={this.handleSlotChange} />\n <div ref={(el) => (this.tooltipPositioner = el)} class=\"tooltip-positioner\">\n <div\n part=\"base\"\n ref={(el) => (this.tooltip = el)}\n id={this.componentId}\n class={{\n tooltip: true,\n 'tooltip--open': this.open,\n }}\n role=\"tooltip\"\n aria-hidden={this.open ? 'false' : 'true'}\n >\n <slot name=\"content\">{this.content}</slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}