@six-group/ui-library 0.0.0-insider.fa2c15f → 0.0.0-insider.fade3a2

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 (677) hide show
  1. package/dist/cjs/app-globals-3a1e7e63.js +7 -0
  2. package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
  3. package/dist/cjs/{form-control-8d64e974.js → form-control-73ff961d.js} +2 -2
  4. package/dist/cjs/{form-control-8d64e974.js.map → form-control-73ff961d.js.map} +1 -1
  5. package/dist/cjs/{index-d7748d51.js → index-b288f7d9.js} +70 -28
  6. package/dist/cjs/index-b288f7d9.js.map +1 -0
  7. package/dist/cjs/loader.cjs.js +5 -3
  8. package/dist/cjs/loader.cjs.js.map +1 -1
  9. package/dist/cjs/{modal-3ce015be.js → modal-bd7fc5bc.js} +1 -18
  10. package/dist/cjs/modal-bd7fc5bc.js.map +1 -0
  11. package/dist/cjs/six-alert.cjs.entry.js +5 -4
  12. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  13. package/dist/cjs/six-avatar.cjs.entry.js +4 -3
  14. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  15. package/dist/cjs/six-badge.cjs.entry.js +5 -4
  16. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  17. package/dist/cjs/six-button.cjs.entry.js +5 -4
  18. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  19. package/dist/cjs/six-card.cjs.entry.js +4 -3
  20. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  21. package/dist/cjs/six-checkbox_2.cjs.entry.js +11 -9
  22. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +1 -1
  23. package/dist/cjs/six-datepicker.cjs.entry.js +29 -3
  24. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  25. package/dist/cjs/six-details.cjs.entry.js +6 -5
  26. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  27. package/dist/cjs/six-dialog.cjs.entry.js +14 -30
  28. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  29. package/dist/cjs/six-drawer.cjs.entry.js +13 -30
  30. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  31. package/dist/cjs/six-dropdown_2.cjs.entry.js +12 -10
  32. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  33. package/dist/cjs/six-error-page.cjs.entry.js +4 -3
  34. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -1
  35. package/dist/cjs/six-error.cjs.entry.js +4 -3
  36. package/dist/cjs/six-error.cjs.entry.js.map +1 -1
  37. package/dist/cjs/six-file-list-item.cjs.entry.js +5 -4
  38. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  39. package/dist/cjs/six-file-list.cjs.entry.js +4 -3
  40. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -1
  41. package/dist/cjs/six-file-upload.cjs.entry.js +11 -9
  42. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  43. package/dist/cjs/six-footer.cjs.entry.js +4 -3
  44. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  45. package/dist/cjs/six-group-label.cjs.entry.js +5 -4
  46. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  47. package/dist/cjs/six-header.cjs.entry.js +13 -12
  48. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  49. package/dist/cjs/six-icon-button.cjs.entry.js +6 -5
  50. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  51. package/dist/cjs/six-icon.cjs.entry.js +5 -4
  52. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  53. package/dist/cjs/six-input.cjs.entry.js +7 -6
  54. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  55. package/dist/cjs/six-item-picker.cjs.entry.js +6 -5
  56. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  57. package/dist/cjs/six-language-switcher.cjs.entry.js +11 -6
  58. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  59. package/dist/cjs/six-layout-grid.cjs.entry.js +4 -3
  60. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -1
  61. package/dist/cjs/six-main-container.cjs.entry.js +4 -3
  62. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  63. package/dist/cjs/six-menu-divider.cjs.entry.js +4 -3
  64. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  65. package/dist/cjs/six-menu-label.cjs.entry.js +4 -3
  66. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -1
  67. package/dist/cjs/six-picto.cjs.entry.js +4 -3
  68. package/dist/cjs/six-picto.cjs.entry.js.map +1 -1
  69. package/dist/cjs/six-progress-bar.cjs.entry.js +5 -4
  70. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  71. package/dist/cjs/six-progress-ring.cjs.entry.js +4 -3
  72. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  73. package/dist/cjs/six-radio.cjs.entry.js +5 -4
  74. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  75. package/dist/cjs/six-range.cjs.entry.js +17 -6
  76. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  77. package/dist/cjs/six-root.cjs.entry.js +4 -3
  78. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  79. package/dist/cjs/six-search-field.cjs.entry.js +4 -3
  80. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  81. package/dist/cjs/six-select.cjs.entry.js +10 -9
  82. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  83. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +4 -3
  84. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  85. package/dist/cjs/six-sidebar-item.cjs.entry.js +5 -4
  86. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -1
  87. package/dist/cjs/six-sidebar.cjs.entry.js +5 -4
  88. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  89. package/dist/cjs/six-spinner.cjs.entry.js +3 -2
  90. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -1
  91. package/dist/cjs/six-stage-indicator.cjs.entry.js +3 -2
  92. package/dist/cjs/six-stage-indicator.cjs.entry.js.map +1 -1
  93. package/dist/cjs/six-switch.cjs.entry.js +6 -5
  94. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  95. package/dist/cjs/six-tab-group.cjs.entry.js +34 -8
  96. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  97. package/dist/cjs/six-tab-panel.cjs.entry.js +4 -3
  98. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -1
  99. package/dist/cjs/six-tab.cjs.entry.js +5 -4
  100. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  101. package/dist/cjs/six-tag.cjs.entry.js +5 -4
  102. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  103. package/dist/cjs/six-textarea.cjs.entry.js +6 -5
  104. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  105. package/dist/cjs/six-tile.cjs.entry.js +6 -5
  106. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  107. package/dist/cjs/six-timepicker.cjs.entry.js +4 -3
  108. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  109. package/dist/cjs/six-tooltip.cjs.entry.js +5 -4
  110. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -1
  111. package/dist/cjs/ui-library.cjs.js +6 -4
  112. package/dist/cjs/ui-library.cjs.js.map +1 -1
  113. package/dist/collection/collection-manifest.json +2 -2
  114. package/dist/collection/components/six-alert/six-alert.js +2 -2
  115. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  116. package/dist/collection/components/six-avatar/six-avatar.js +1 -1
  117. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -1
  118. package/dist/collection/components/six-badge/six-badge.js +2 -2
  119. package/dist/collection/components/six-badge/six-badge.js.map +1 -1
  120. package/dist/collection/components/six-button/six-button.js +2 -2
  121. package/dist/collection/components/six-button/six-button.js.map +1 -1
  122. package/dist/collection/components/six-button/test/six-button.spec.js.map +1 -1
  123. package/dist/collection/components/six-card/six-card.js +1 -1
  124. package/dist/collection/components/six-card/six-card.js.map +1 -1
  125. package/dist/collection/components/six-checkbox/six-checkbox.css +2 -0
  126. package/dist/collection/components/six-checkbox/six-checkbox.js +2 -2
  127. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  128. package/dist/collection/components/six-datepicker/six-datepicker.js +3 -3
  129. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  130. package/dist/collection/components/six-details/six-details.js +3 -3
  131. package/dist/collection/components/six-details/six-details.js.map +1 -1
  132. package/dist/collection/components/six-dialog/six-dialog.js +10 -28
  133. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  134. package/dist/collection/components/six-drawer/six-drawer.js +9 -28
  135. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  136. package/dist/collection/components/six-dropdown/six-dropdown.js +5 -5
  137. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  138. package/dist/collection/components/six-error/six-error.js +1 -1
  139. package/dist/collection/components/six-error/six-error.js.map +1 -1
  140. package/dist/collection/components/six-error-page/six-error-page.js +1 -1
  141. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -1
  142. package/dist/collection/components/six-file-list/six-file-list.js +1 -1
  143. package/dist/collection/components/six-file-list/six-file-list.js.map +1 -1
  144. package/dist/collection/components/six-file-list-item/six-file-list-item.js +2 -2
  145. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  146. package/dist/collection/components/six-file-upload/six-file-upload.css +8 -0
  147. package/dist/collection/components/six-file-upload/six-file-upload.js +25 -6
  148. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  149. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +76 -21
  150. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -1
  151. package/dist/collection/components/six-footer/six-footer.js +1 -1
  152. package/dist/collection/components/six-footer/six-footer.js.map +1 -1
  153. package/dist/collection/components/six-group-label/six-group-label.js +1 -1
  154. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -1
  155. package/dist/collection/components/six-header/six-header.js +10 -10
  156. package/dist/collection/components/six-header/six-header.js.map +1 -1
  157. package/dist/collection/components/six-icon/six-icon.js +2 -2
  158. package/dist/collection/components/six-icon/six-icon.js.map +1 -1
  159. package/dist/collection/components/six-icon-button/six-icon-button.js +3 -3
  160. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -1
  161. package/dist/collection/components/six-input/six-input.js +3 -3
  162. package/dist/collection/components/six-input/six-input.js.map +1 -1
  163. package/dist/collection/components/six-item-picker/six-item-picker.js +3 -3
  164. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  165. package/dist/collection/components/six-language-switcher/six-language-switcher.css +7 -2
  166. package/dist/collection/components/six-language-switcher/six-language-switcher.js +7 -3
  167. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  168. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +20 -20
  169. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -1
  170. package/dist/collection/components/six-layout-grid/six-layout-grid.js +1 -1
  171. package/dist/collection/components/six-layout-grid/six-layout-grid.js.map +1 -1
  172. package/dist/collection/components/six-main-container/six-main-container.js +1 -1
  173. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -1
  174. package/dist/collection/components/six-menu/six-menu.js +2 -2
  175. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  176. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -1
  177. package/dist/collection/components/six-menu-divider/six-menu-divider.js +1 -1
  178. package/dist/collection/components/six-menu-divider/six-menu-divider.js.map +1 -1
  179. package/dist/collection/components/six-menu-item/six-menu-item.js +2 -2
  180. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  181. package/dist/collection/components/six-menu-label/six-menu-label.js +1 -1
  182. package/dist/collection/components/six-menu-label/six-menu-label.js.map +1 -1
  183. package/dist/collection/components/six-picto/six-picto.js +1 -1
  184. package/dist/collection/components/six-picto/six-picto.js.map +1 -1
  185. package/dist/collection/components/six-progress-bar/six-progress-bar.js +2 -2
  186. package/dist/collection/components/six-progress-bar/six-progress-bar.js.map +1 -1
  187. package/dist/collection/components/six-progress-ring/six-progress-ring.js +1 -1
  188. package/dist/collection/components/six-progress-ring/six-progress-ring.js.map +1 -1
  189. package/dist/collection/components/six-radio/six-radio.js +2 -2
  190. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  191. package/dist/collection/components/six-range/six-range.css +1 -1
  192. package/dist/collection/components/six-range/six-range.js +12 -2
  193. package/dist/collection/components/six-range/six-range.js.map +1 -1
  194. package/dist/collection/components/six-root/six-root.js +1 -1
  195. package/dist/collection/components/six-root/six-root.js.map +1 -1
  196. package/dist/collection/components/six-search-field/six-search-field.js +1 -1
  197. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -1
  198. package/dist/collection/components/six-select/six-select.js +6 -6
  199. package/dist/collection/components/six-select/six-select.js.map +1 -1
  200. package/dist/collection/components/six-select/util.js.map +1 -1
  201. package/dist/collection/components/six-sidebar/six-sidebar.js +2 -2
  202. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  203. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +2 -2
  204. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js.map +1 -1
  205. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +1 -0
  206. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -1
  207. package/dist/collection/components/six-switch/six-switch.js +2 -2
  208. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  209. package/dist/collection/components/six-tab/six-tab.js +2 -2
  210. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  211. package/dist/collection/components/six-tab-group/six-tab-group.js +33 -7
  212. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  213. package/dist/collection/components/six-tab-panel/six-tab-panel.js +1 -1
  214. package/dist/collection/components/six-tab-panel/six-tab-panel.js.map +1 -1
  215. package/dist/collection/components/six-tag/six-tag.js +2 -2
  216. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  217. package/dist/collection/components/six-textarea/six-textarea.js +2 -2
  218. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  219. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +1 -1
  220. package/dist/collection/components/six-tile/six-tile.js +3 -3
  221. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  222. package/dist/collection/components/six-timepicker/six-timepicker.js +1 -1
  223. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  224. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +1 -1
  225. package/dist/collection/components/six-tooltip/six-tooltip.js +2 -2
  226. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -1
  227. package/dist/collection/utils/alert.js.map +1 -1
  228. package/dist/collection/utils/date-util.js +25 -0
  229. package/dist/collection/utils/date-util.js.map +1 -1
  230. package/dist/collection/utils/date-util.spec.js.map +1 -1
  231. package/dist/collection/utils/error-messages.js.map +1 -1
  232. package/dist/collection/utils/event-listeners.js.map +1 -1
  233. package/dist/collection/utils/focus-visible.js.map +1 -1
  234. package/dist/collection/utils/form.js.map +1 -1
  235. package/dist/collection/utils/modal.js.map +1 -1
  236. package/dist/collection/utils/popover.js.map +1 -1
  237. package/dist/collection/utils/popup.js.map +1 -1
  238. package/dist/collection/utils/scroll.js.map +1 -1
  239. package/dist/collection/utils/slot.js.map +1 -1
  240. package/dist/collection/utils/tabbable.js.map +1 -1
  241. package/dist/collection/utils/time.util.js.map +1 -1
  242. package/dist/collection/utils/time.util.spec.js.map +1 -1
  243. package/dist/components/modal.js +1 -17
  244. package/dist/components/modal.js.map +1 -1
  245. package/dist/components/six-alert.js +4 -3
  246. package/dist/components/six-alert.js.map +1 -1
  247. package/dist/components/six-avatar.js +3 -2
  248. package/dist/components/six-avatar.js.map +1 -1
  249. package/dist/components/six-badge.js +4 -3
  250. package/dist/components/six-badge.js.map +1 -1
  251. package/dist/components/six-button2.js +4 -3
  252. package/dist/components/six-button2.js.map +1 -1
  253. package/dist/components/six-card.js +3 -2
  254. package/dist/components/six-card.js.map +1 -1
  255. package/dist/components/six-checkbox2.js +5 -4
  256. package/dist/components/six-checkbox2.js.map +1 -1
  257. package/dist/components/six-datepicker.js +28 -2
  258. package/dist/components/six-datepicker.js.map +1 -1
  259. package/dist/components/six-details2.js +5 -4
  260. package/dist/components/six-details2.js.map +1 -1
  261. package/dist/components/six-dialog.js +13 -29
  262. package/dist/components/six-dialog.js.map +1 -1
  263. package/dist/components/six-drawer.js +12 -29
  264. package/dist/components/six-drawer.js.map +1 -1
  265. package/dist/components/six-dropdown2.js +7 -6
  266. package/dist/components/six-dropdown2.js.map +1 -1
  267. package/dist/components/six-error-page.js +3 -2
  268. package/dist/components/six-error-page.js.map +1 -1
  269. package/dist/components/six-error2.js +3 -2
  270. package/dist/components/six-error2.js.map +1 -1
  271. package/dist/components/six-file-list-item.js +4 -3
  272. package/dist/components/six-file-list-item.js.map +1 -1
  273. package/dist/components/six-file-list.js +3 -2
  274. package/dist/components/six-file-list.js.map +1 -1
  275. package/dist/components/six-file-upload.js +19 -10
  276. package/dist/components/six-file-upload.js.map +1 -1
  277. package/dist/components/six-footer.js +3 -2
  278. package/dist/components/six-footer.js.map +1 -1
  279. package/dist/components/six-group-label.js +3 -2
  280. package/dist/components/six-group-label.js.map +1 -1
  281. package/dist/components/six-header.js +12 -11
  282. package/dist/components/six-header.js.map +1 -1
  283. package/dist/components/six-icon-button2.js +5 -4
  284. package/dist/components/six-icon-button2.js.map +1 -1
  285. package/dist/components/six-icon2.js +4 -3
  286. package/dist/components/six-icon2.js.map +1 -1
  287. package/dist/components/six-input2.js +5 -4
  288. package/dist/components/six-input2.js.map +1 -1
  289. package/dist/components/six-item-picker2.js +5 -4
  290. package/dist/components/six-item-picker2.js.map +1 -1
  291. package/dist/components/six-language-switcher.js +10 -5
  292. package/dist/components/six-language-switcher.js.map +1 -1
  293. package/dist/components/six-layout-grid.js +3 -2
  294. package/dist/components/six-layout-grid.js.map +1 -1
  295. package/dist/components/six-main-container.js +3 -2
  296. package/dist/components/six-main-container.js.map +1 -1
  297. package/dist/components/six-menu-divider.js +3 -2
  298. package/dist/components/six-menu-divider.js.map +1 -1
  299. package/dist/components/six-menu-item2.js +4 -3
  300. package/dist/components/six-menu-item2.js.map +1 -1
  301. package/dist/components/six-menu-label.js +3 -2
  302. package/dist/components/six-menu-label.js.map +1 -1
  303. package/dist/components/six-menu2.js +4 -3
  304. package/dist/components/six-menu2.js.map +1 -1
  305. package/dist/components/six-picto2.js +3 -2
  306. package/dist/components/six-picto2.js.map +1 -1
  307. package/dist/components/six-progress-bar.js +4 -3
  308. package/dist/components/six-progress-bar.js.map +1 -1
  309. package/dist/components/six-progress-ring.js +3 -2
  310. package/dist/components/six-progress-ring.js.map +1 -1
  311. package/dist/components/six-radio.js +4 -3
  312. package/dist/components/six-radio.js.map +1 -1
  313. package/dist/components/six-range.js +15 -4
  314. package/dist/components/six-range.js.map +1 -1
  315. package/dist/components/six-root.js +3 -2
  316. package/dist/components/six-root.js.map +1 -1
  317. package/dist/components/six-search-field.js +3 -2
  318. package/dist/components/six-search-field.js.map +1 -1
  319. package/dist/components/six-select.js +8 -7
  320. package/dist/components/six-select.js.map +1 -1
  321. package/dist/components/six-sidebar-item-group.js +3 -2
  322. package/dist/components/six-sidebar-item-group.js.map +1 -1
  323. package/dist/components/six-sidebar-item.js +4 -3
  324. package/dist/components/six-sidebar-item.js.map +1 -1
  325. package/dist/components/six-sidebar.js +4 -3
  326. package/dist/components/six-sidebar.js.map +1 -1
  327. package/dist/components/six-spinner2.js +2 -1
  328. package/dist/components/six-spinner2.js.map +1 -1
  329. package/dist/components/six-stage-indicator2.js +2 -1
  330. package/dist/components/six-stage-indicator2.js.map +1 -1
  331. package/dist/components/six-switch.js +4 -3
  332. package/dist/components/six-switch.js.map +1 -1
  333. package/dist/components/six-tab-group.js +35 -8
  334. package/dist/components/six-tab-group.js.map +1 -1
  335. package/dist/components/six-tab-panel.js +3 -2
  336. package/dist/components/six-tab-panel.js.map +1 -1
  337. package/dist/components/six-tab.js +4 -3
  338. package/dist/components/six-tab.js.map +1 -1
  339. package/dist/components/six-tag.js +4 -3
  340. package/dist/components/six-tag.js.map +1 -1
  341. package/dist/components/six-textarea.js +4 -3
  342. package/dist/components/six-textarea.js.map +1 -1
  343. package/dist/components/six-tile.js +5 -4
  344. package/dist/components/six-tile.js.map +1 -1
  345. package/dist/components/six-timepicker2.js +3 -2
  346. package/dist/components/six-timepicker2.js.map +1 -1
  347. package/dist/components/six-tooltip2.js +4 -3
  348. package/dist/components/six-tooltip2.js.map +1 -1
  349. package/dist/components.json +41 -9
  350. package/dist/esm/app-globals-0f993ce5.js +5 -0
  351. package/dist/esm/app-globals-0f993ce5.js.map +1 -0
  352. package/dist/esm/{form-control-d403a9cf.js → form-control-40c37714.js} +2 -2
  353. package/dist/esm/{form-control-d403a9cf.js.map → form-control-40c37714.js.map} +1 -1
  354. package/dist/esm/{index-79d4ef67.js → index-52a755dc.js} +70 -28
  355. package/dist/esm/index-52a755dc.js.map +1 -0
  356. package/dist/esm/loader.js +6 -4
  357. package/dist/esm/loader.js.map +1 -1
  358. package/dist/esm/{modal-96526245.js → modal-6c1288e3.js} +2 -18
  359. package/dist/esm/modal-6c1288e3.js.map +1 -0
  360. package/dist/esm/six-alert.entry.js +5 -4
  361. package/dist/esm/six-alert.entry.js.map +1 -1
  362. package/dist/esm/six-avatar.entry.js +4 -3
  363. package/dist/esm/six-avatar.entry.js.map +1 -1
  364. package/dist/esm/six-badge.entry.js +5 -4
  365. package/dist/esm/six-badge.entry.js.map +1 -1
  366. package/dist/esm/six-button.entry.js +5 -4
  367. package/dist/esm/six-button.entry.js.map +1 -1
  368. package/dist/esm/six-card.entry.js +4 -3
  369. package/dist/esm/six-card.entry.js.map +1 -1
  370. package/dist/esm/six-checkbox_2.entry.js +11 -9
  371. package/dist/esm/six-checkbox_2.entry.js.map +1 -1
  372. package/dist/esm/six-datepicker.entry.js +29 -3
  373. package/dist/esm/six-datepicker.entry.js.map +1 -1
  374. package/dist/esm/six-details.entry.js +6 -5
  375. package/dist/esm/six-details.entry.js.map +1 -1
  376. package/dist/esm/six-dialog.entry.js +14 -30
  377. package/dist/esm/six-dialog.entry.js.map +1 -1
  378. package/dist/esm/six-drawer.entry.js +13 -30
  379. package/dist/esm/six-drawer.entry.js.map +1 -1
  380. package/dist/esm/six-dropdown_2.entry.js +12 -10
  381. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  382. package/dist/esm/six-error-page.entry.js +4 -3
  383. package/dist/esm/six-error-page.entry.js.map +1 -1
  384. package/dist/esm/six-error.entry.js +4 -3
  385. package/dist/esm/six-error.entry.js.map +1 -1
  386. package/dist/esm/six-file-list-item.entry.js +5 -4
  387. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  388. package/dist/esm/six-file-list.entry.js +4 -3
  389. package/dist/esm/six-file-list.entry.js.map +1 -1
  390. package/dist/esm/six-file-upload.entry.js +11 -9
  391. package/dist/esm/six-file-upload.entry.js.map +1 -1
  392. package/dist/esm/six-footer.entry.js +4 -3
  393. package/dist/esm/six-footer.entry.js.map +1 -1
  394. package/dist/esm/six-group-label.entry.js +5 -4
  395. package/dist/esm/six-group-label.entry.js.map +1 -1
  396. package/dist/esm/six-header.entry.js +13 -12
  397. package/dist/esm/six-header.entry.js.map +1 -1
  398. package/dist/esm/six-icon-button.entry.js +6 -5
  399. package/dist/esm/six-icon-button.entry.js.map +1 -1
  400. package/dist/esm/six-icon.entry.js +5 -4
  401. package/dist/esm/six-icon.entry.js.map +1 -1
  402. package/dist/esm/six-input.entry.js +7 -6
  403. package/dist/esm/six-input.entry.js.map +1 -1
  404. package/dist/esm/six-item-picker.entry.js +6 -5
  405. package/dist/esm/six-item-picker.entry.js.map +1 -1
  406. package/dist/esm/six-language-switcher.entry.js +11 -6
  407. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  408. package/dist/esm/six-layout-grid.entry.js +4 -3
  409. package/dist/esm/six-layout-grid.entry.js.map +1 -1
  410. package/dist/esm/six-main-container.entry.js +4 -3
  411. package/dist/esm/six-main-container.entry.js.map +1 -1
  412. package/dist/esm/six-menu-divider.entry.js +4 -3
  413. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  414. package/dist/esm/six-menu-label.entry.js +4 -3
  415. package/dist/esm/six-menu-label.entry.js.map +1 -1
  416. package/dist/esm/six-picto.entry.js +4 -3
  417. package/dist/esm/six-picto.entry.js.map +1 -1
  418. package/dist/esm/six-progress-bar.entry.js +5 -4
  419. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  420. package/dist/esm/six-progress-ring.entry.js +4 -3
  421. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  422. package/dist/esm/six-radio.entry.js +5 -4
  423. package/dist/esm/six-radio.entry.js.map +1 -1
  424. package/dist/esm/six-range.entry.js +17 -6
  425. package/dist/esm/six-range.entry.js.map +1 -1
  426. package/dist/esm/six-root.entry.js +4 -3
  427. package/dist/esm/six-root.entry.js.map +1 -1
  428. package/dist/esm/six-search-field.entry.js +4 -3
  429. package/dist/esm/six-search-field.entry.js.map +1 -1
  430. package/dist/esm/six-select.entry.js +10 -9
  431. package/dist/esm/six-select.entry.js.map +1 -1
  432. package/dist/esm/six-sidebar-item-group.entry.js +4 -3
  433. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  434. package/dist/esm/six-sidebar-item.entry.js +5 -4
  435. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  436. package/dist/esm/six-sidebar.entry.js +5 -4
  437. package/dist/esm/six-sidebar.entry.js.map +1 -1
  438. package/dist/esm/six-spinner.entry.js +3 -2
  439. package/dist/esm/six-spinner.entry.js.map +1 -1
  440. package/dist/esm/six-stage-indicator.entry.js +3 -2
  441. package/dist/esm/six-stage-indicator.entry.js.map +1 -1
  442. package/dist/esm/six-switch.entry.js +6 -5
  443. package/dist/esm/six-switch.entry.js.map +1 -1
  444. package/dist/esm/six-tab-group.entry.js +34 -8
  445. package/dist/esm/six-tab-group.entry.js.map +1 -1
  446. package/dist/esm/six-tab-panel.entry.js +4 -3
  447. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  448. package/dist/esm/six-tab.entry.js +5 -4
  449. package/dist/esm/six-tab.entry.js.map +1 -1
  450. package/dist/esm/six-tag.entry.js +5 -4
  451. package/dist/esm/six-tag.entry.js.map +1 -1
  452. package/dist/esm/six-textarea.entry.js +6 -5
  453. package/dist/esm/six-textarea.entry.js.map +1 -1
  454. package/dist/esm/six-tile.entry.js +6 -5
  455. package/dist/esm/six-tile.entry.js.map +1 -1
  456. package/dist/esm/six-timepicker.entry.js +4 -3
  457. package/dist/esm/six-timepicker.entry.js.map +1 -1
  458. package/dist/esm/six-tooltip.entry.js +5 -4
  459. package/dist/esm/six-tooltip.entry.js.map +1 -1
  460. package/dist/esm/ui-library.js +7 -5
  461. package/dist/esm/ui-library.js.map +1 -1
  462. package/dist/types/components/six-datepicker/six-datepicker.d.ts +1 -1
  463. package/dist/types/components/six-dialog/six-dialog.d.ts +1 -0
  464. package/dist/types/components/six-file-upload/six-file-upload.d.ts +2 -0
  465. package/dist/types/components/six-range/six-range.d.ts +2 -0
  466. package/dist/types/components/six-tab-group/six-tab-group.d.ts +4 -1
  467. package/dist/types/components.d.ts +10 -2
  468. package/dist/types/utils/date-util.d.ts +9 -1
  469. package/dist/ui-library/{p-870b988d.entry.js → p-01853739.entry.js} +2 -2
  470. package/dist/ui-library/p-01853739.entry.js.map +1 -0
  471. package/dist/ui-library/{p-da7f3dbd.entry.js → p-03900e17.entry.js} +2 -2
  472. package/dist/ui-library/p-03900e17.entry.js.map +1 -0
  473. package/dist/ui-library/p-0a094514.entry.js +2 -0
  474. package/dist/ui-library/p-0a094514.entry.js.map +1 -0
  475. package/dist/ui-library/p-19a1d34c.entry.js +2 -0
  476. package/dist/ui-library/p-19a1d34c.entry.js.map +1 -0
  477. package/dist/ui-library/p-19ca3bd1.entry.js +2 -0
  478. package/dist/ui-library/p-19ca3bd1.entry.js.map +1 -0
  479. package/dist/ui-library/p-1d4cb6e9.entry.js +2 -0
  480. package/dist/ui-library/p-1d4cb6e9.entry.js.map +1 -0
  481. package/dist/ui-library/p-1f1224ae.entry.js +2 -0
  482. package/dist/ui-library/p-1f1224ae.entry.js.map +1 -0
  483. package/dist/ui-library/p-21002de1.entry.js +2 -0
  484. package/dist/ui-library/p-21002de1.entry.js.map +1 -0
  485. package/dist/ui-library/{p-8888a367.entry.js → p-29b75db4.entry.js} +2 -2
  486. package/dist/ui-library/p-29b75db4.entry.js.map +1 -0
  487. package/dist/ui-library/p-338205f4.entry.js +2 -0
  488. package/dist/ui-library/p-338205f4.entry.js.map +1 -0
  489. package/dist/ui-library/p-3827f9e0.entry.js +2 -0
  490. package/dist/ui-library/p-3827f9e0.entry.js.map +1 -0
  491. package/dist/ui-library/p-38a9a590.entry.js +2 -0
  492. package/dist/ui-library/p-38a9a590.entry.js.map +1 -0
  493. package/dist/ui-library/p-3e9324c8.entry.js +2 -0
  494. package/dist/ui-library/p-3e9324c8.entry.js.map +1 -0
  495. package/dist/ui-library/p-3eed2287.entry.js +2 -0
  496. package/dist/ui-library/p-3eed2287.entry.js.map +1 -0
  497. package/dist/ui-library/p-45960b56.entry.js +2 -0
  498. package/dist/ui-library/p-45960b56.entry.js.map +1 -0
  499. package/dist/ui-library/{p-0440335d.entry.js → p-49e5d8bb.entry.js} +2 -2
  500. package/dist/ui-library/p-49e5d8bb.entry.js.map +1 -0
  501. package/dist/ui-library/p-4af73ea9.entry.js +2 -0
  502. package/dist/ui-library/p-4af73ea9.entry.js.map +1 -0
  503. package/dist/ui-library/{p-ed279165.entry.js → p-50dbe99f.entry.js} +2 -2
  504. package/dist/ui-library/p-50dbe99f.entry.js.map +1 -0
  505. package/dist/ui-library/p-52c04973.entry.js +2 -0
  506. package/dist/ui-library/p-52c04973.entry.js.map +1 -0
  507. package/dist/ui-library/{p-caea1eb6.entry.js → p-5f810571.entry.js} +2 -2
  508. package/dist/ui-library/p-5f810571.entry.js.map +1 -0
  509. package/dist/ui-library/p-651293e7.js +2 -0
  510. package/dist/ui-library/p-651293e7.js.map +1 -0
  511. package/dist/ui-library/p-6c96b62e.entry.js +2 -0
  512. package/dist/ui-library/p-6c96b62e.entry.js.map +1 -0
  513. package/dist/ui-library/p-724d0458.entry.js +2 -0
  514. package/dist/ui-library/p-724d0458.entry.js.map +1 -0
  515. package/dist/ui-library/p-7562d5f5.entry.js +2 -0
  516. package/dist/ui-library/p-7562d5f5.entry.js.map +1 -0
  517. package/dist/ui-library/p-756f4acf.entry.js +2 -0
  518. package/dist/ui-library/p-756f4acf.entry.js.map +1 -0
  519. package/dist/ui-library/{p-50dae789.entry.js → p-7a722a13.entry.js} +2 -2
  520. package/dist/ui-library/p-7a722a13.entry.js.map +1 -0
  521. package/dist/ui-library/{p-884c5cf9.entry.js → p-7a9dcb16.entry.js} +2 -2
  522. package/dist/ui-library/p-7a9dcb16.entry.js.map +1 -0
  523. package/dist/ui-library/p-7c2255b5.entry.js +2 -0
  524. package/dist/ui-library/p-7c2255b5.entry.js.map +1 -0
  525. package/dist/ui-library/{p-04cc397c.entry.js → p-7fc0bf6b.entry.js} +2 -2
  526. package/dist/ui-library/p-7fc0bf6b.entry.js.map +1 -0
  527. package/dist/ui-library/p-803915da.entry.js +2 -0
  528. package/dist/ui-library/p-803915da.entry.js.map +1 -0
  529. package/dist/ui-library/p-80476b0f.entry.js +2 -0
  530. package/dist/ui-library/p-80476b0f.entry.js.map +1 -0
  531. package/dist/ui-library/{p-961bd001.entry.js → p-8644f970.entry.js} +2 -2
  532. package/dist/ui-library/p-8644f970.entry.js.map +1 -0
  533. package/dist/ui-library/{p-9c79341d.entry.js → p-8938e9bd.entry.js} +2 -2
  534. package/dist/ui-library/p-8938e9bd.entry.js.map +1 -0
  535. package/dist/ui-library/p-8dff4dcb.entry.js +2 -0
  536. package/dist/ui-library/p-8dff4dcb.entry.js.map +1 -0
  537. package/dist/ui-library/{p-d95e292e.entry.js → p-8f307b55.entry.js} +2 -2
  538. package/dist/ui-library/p-8f307b55.entry.js.map +1 -0
  539. package/dist/ui-library/{p-ac57ba5c.entry.js → p-93ab2efc.entry.js} +2 -2
  540. package/dist/ui-library/p-93ab2efc.entry.js.map +1 -0
  541. package/dist/ui-library/p-9426a37b.entry.js +2 -0
  542. package/dist/ui-library/p-9426a37b.entry.js.map +1 -0
  543. package/dist/ui-library/p-a2a6aaea.entry.js +2 -0
  544. package/dist/ui-library/p-a2a6aaea.entry.js.map +1 -0
  545. package/dist/ui-library/p-a2b8aca7.entry.js +2 -0
  546. package/dist/ui-library/p-a2b8aca7.entry.js.map +1 -0
  547. package/dist/ui-library/{p-61e66671.js → p-aa99a393.js} +2 -2
  548. package/dist/ui-library/p-ab8f9503.entry.js +2 -0
  549. package/dist/ui-library/p-ab8f9503.entry.js.map +1 -0
  550. package/dist/ui-library/p-acc487ec.entry.js +2 -0
  551. package/dist/ui-library/p-acc487ec.entry.js.map +1 -0
  552. package/dist/ui-library/p-ba7424b3.entry.js +2 -0
  553. package/dist/ui-library/p-ba7424b3.entry.js.map +1 -0
  554. package/dist/ui-library/p-c948cf70.entry.js +2 -0
  555. package/dist/ui-library/p-c948cf70.entry.js.map +1 -0
  556. package/dist/ui-library/p-d55db23a.entry.js +2 -0
  557. package/dist/ui-library/p-d55db23a.entry.js.map +1 -0
  558. package/dist/ui-library/p-d717a2f2.entry.js +2 -0
  559. package/dist/ui-library/p-d717a2f2.entry.js.map +1 -0
  560. package/dist/ui-library/p-d7739200.entry.js +2 -0
  561. package/dist/ui-library/p-d7739200.entry.js.map +1 -0
  562. package/dist/ui-library/p-e1255160.js +2 -0
  563. package/dist/ui-library/p-e1255160.js.map +1 -0
  564. package/dist/ui-library/p-e3766acb.entry.js +2 -0
  565. package/dist/ui-library/p-e3766acb.entry.js.map +1 -0
  566. package/dist/ui-library/p-e43e5e45.entry.js +2 -0
  567. package/dist/ui-library/p-e43e5e45.entry.js.map +1 -0
  568. package/dist/ui-library/p-e798314b.entry.js +2 -0
  569. package/dist/ui-library/p-e798314b.entry.js.map +1 -0
  570. package/dist/ui-library/p-f1bb5648.entry.js +2 -0
  571. package/dist/ui-library/p-f1bb5648.entry.js.map +1 -0
  572. package/dist/ui-library/p-f8572492.entry.js +2 -0
  573. package/dist/ui-library/p-f8572492.entry.js.map +1 -0
  574. package/dist/ui-library/p-f93d8a4e.js +3 -0
  575. package/dist/ui-library/p-f93d8a4e.js.map +1 -0
  576. package/dist/ui-library/ui-library.esm.js +1 -1
  577. package/dist/ui-library/ui-library.esm.js.map +1 -1
  578. package/package.json +6 -6
  579. package/dist/cjs/index-d7748d51.js.map +0 -1
  580. package/dist/cjs/modal-3ce015be.js.map +0 -1
  581. package/dist/collection/utils/support.js +0 -16
  582. package/dist/collection/utils/support.js.map +0 -1
  583. package/dist/esm/index-79d4ef67.js.map +0 -1
  584. package/dist/esm/modal-96526245.js.map +0 -1
  585. package/dist/types/utils/support.d.ts +0 -1
  586. package/dist/ui-library/p-0440335d.entry.js.map +0 -1
  587. package/dist/ui-library/p-04cc397c.entry.js.map +0 -1
  588. package/dist/ui-library/p-0edd3091.entry.js +0 -2
  589. package/dist/ui-library/p-0edd3091.entry.js.map +0 -1
  590. package/dist/ui-library/p-150b7664.entry.js +0 -2
  591. package/dist/ui-library/p-150b7664.entry.js.map +0 -1
  592. package/dist/ui-library/p-1f5840b5.entry.js +0 -2
  593. package/dist/ui-library/p-1f5840b5.entry.js.map +0 -1
  594. package/dist/ui-library/p-28cc013e.entry.js +0 -2
  595. package/dist/ui-library/p-28cc013e.entry.js.map +0 -1
  596. package/dist/ui-library/p-3424bbc0.entry.js +0 -2
  597. package/dist/ui-library/p-3424bbc0.entry.js.map +0 -1
  598. package/dist/ui-library/p-348c68a8.entry.js +0 -2
  599. package/dist/ui-library/p-348c68a8.entry.js.map +0 -1
  600. package/dist/ui-library/p-3723ca06.entry.js +0 -2
  601. package/dist/ui-library/p-3723ca06.entry.js.map +0 -1
  602. package/dist/ui-library/p-37aeac5e.entry.js +0 -2
  603. package/dist/ui-library/p-37aeac5e.entry.js.map +0 -1
  604. package/dist/ui-library/p-3d7fb086.entry.js +0 -2
  605. package/dist/ui-library/p-3d7fb086.entry.js.map +0 -1
  606. package/dist/ui-library/p-457f7373.entry.js +0 -2
  607. package/dist/ui-library/p-457f7373.entry.js.map +0 -1
  608. package/dist/ui-library/p-4a667f31.entry.js +0 -2
  609. package/dist/ui-library/p-4a667f31.entry.js.map +0 -1
  610. package/dist/ui-library/p-50dae789.entry.js.map +0 -1
  611. package/dist/ui-library/p-546e33d9.entry.js +0 -2
  612. package/dist/ui-library/p-546e33d9.entry.js.map +0 -1
  613. package/dist/ui-library/p-5db3a705.entry.js +0 -2
  614. package/dist/ui-library/p-5db3a705.entry.js.map +0 -1
  615. package/dist/ui-library/p-6296779b.entry.js +0 -2
  616. package/dist/ui-library/p-6296779b.entry.js.map +0 -1
  617. package/dist/ui-library/p-64b4755d.entry.js +0 -2
  618. package/dist/ui-library/p-64b4755d.entry.js.map +0 -1
  619. package/dist/ui-library/p-6c1b046e.entry.js +0 -2
  620. package/dist/ui-library/p-6c1b046e.entry.js.map +0 -1
  621. package/dist/ui-library/p-7115316e.entry.js +0 -2
  622. package/dist/ui-library/p-7115316e.entry.js.map +0 -1
  623. package/dist/ui-library/p-870b988d.entry.js.map +0 -1
  624. package/dist/ui-library/p-884c5cf9.entry.js.map +0 -1
  625. package/dist/ui-library/p-8888a367.entry.js.map +0 -1
  626. package/dist/ui-library/p-935c78a7.entry.js +0 -2
  627. package/dist/ui-library/p-935c78a7.entry.js.map +0 -1
  628. package/dist/ui-library/p-961bd001.entry.js.map +0 -1
  629. package/dist/ui-library/p-998de05d.js +0 -2
  630. package/dist/ui-library/p-998de05d.js.map +0 -1
  631. package/dist/ui-library/p-9b08068d.entry.js +0 -2
  632. package/dist/ui-library/p-9b08068d.entry.js.map +0 -1
  633. package/dist/ui-library/p-9c79341d.entry.js.map +0 -1
  634. package/dist/ui-library/p-a9c159f2.entry.js +0 -2
  635. package/dist/ui-library/p-a9c159f2.entry.js.map +0 -1
  636. package/dist/ui-library/p-ac57ba5c.entry.js.map +0 -1
  637. package/dist/ui-library/p-af15381b.js +0 -3
  638. package/dist/ui-library/p-af15381b.js.map +0 -1
  639. package/dist/ui-library/p-b1a5f3cd.entry.js +0 -2
  640. package/dist/ui-library/p-b1a5f3cd.entry.js.map +0 -1
  641. package/dist/ui-library/p-b385a241.entry.js +0 -2
  642. package/dist/ui-library/p-b385a241.entry.js.map +0 -1
  643. package/dist/ui-library/p-b74c5d6b.entry.js +0 -2
  644. package/dist/ui-library/p-b74c5d6b.entry.js.map +0 -1
  645. package/dist/ui-library/p-bf2fb53f.entry.js +0 -2
  646. package/dist/ui-library/p-bf2fb53f.entry.js.map +0 -1
  647. package/dist/ui-library/p-c2c7370b.entry.js +0 -2
  648. package/dist/ui-library/p-c2c7370b.entry.js.map +0 -1
  649. package/dist/ui-library/p-caea1eb6.entry.js.map +0 -1
  650. package/dist/ui-library/p-d3f5b9a8.entry.js +0 -2
  651. package/dist/ui-library/p-d3f5b9a8.entry.js.map +0 -1
  652. package/dist/ui-library/p-d42b18eb.entry.js +0 -2
  653. package/dist/ui-library/p-d42b18eb.entry.js.map +0 -1
  654. package/dist/ui-library/p-d769cc36.entry.js +0 -2
  655. package/dist/ui-library/p-d769cc36.entry.js.map +0 -1
  656. package/dist/ui-library/p-d95e292e.entry.js.map +0 -1
  657. package/dist/ui-library/p-da7f3dbd.entry.js.map +0 -1
  658. package/dist/ui-library/p-dfb89b6a.entry.js +0 -2
  659. package/dist/ui-library/p-dfb89b6a.entry.js.map +0 -1
  660. package/dist/ui-library/p-e6032375.entry.js +0 -2
  661. package/dist/ui-library/p-e6032375.entry.js.map +0 -1
  662. package/dist/ui-library/p-e60d2324.entry.js +0 -2
  663. package/dist/ui-library/p-e60d2324.entry.js.map +0 -1
  664. package/dist/ui-library/p-e8298c6e.entry.js +0 -2
  665. package/dist/ui-library/p-e8298c6e.entry.js.map +0 -1
  666. package/dist/ui-library/p-ed279165.entry.js.map +0 -1
  667. package/dist/ui-library/p-ed61b75c.entry.js +0 -2
  668. package/dist/ui-library/p-ed61b75c.entry.js.map +0 -1
  669. package/dist/ui-library/p-ee872c04.entry.js +0 -2
  670. package/dist/ui-library/p-ee872c04.entry.js.map +0 -1
  671. package/dist/ui-library/p-f1ab3384.entry.js +0 -2
  672. package/dist/ui-library/p-f1ab3384.entry.js.map +0 -1
  673. package/dist/ui-library/p-f4ef481c.entry.js +0 -2
  674. package/dist/ui-library/p-f4ef481c.entry.js.map +0 -1
  675. package/dist/ui-library/p-f8cbb8da.entry.js +0 -2
  676. package/dist/ui-library/p-f8cbb8da.entry.js.map +0 -1
  677. /package/dist/ui-library/{p-61e66671.js.map → p-aa99a393.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixSelectCss","id","SixSelect","this","inputId","labelId","helpTextId","errorTextId","eventListeners","EventListeners","activeItemIndex","resizeObserver","ResizeObserver","updateDisplayedValues","handleBlur","hasFocus","sixBlur","emit","handleFocus","sixFocus","handleClearClick","async","event","stopPropagation","clearValues","_a","dropdown","hide","sixChange","value","isSelected","handleKeyDown","virtualScroll","autocomplete","includes","key","items","getVisibleItems","isOpen","multiple","code","ctrlKey","preventDefault","selectAll","activeItem","at","click","_b","show","length","_c","setFocus","_d","handleLabelClick","box","focus","handleMenuSelect","currentItem","detail","item","checked","getItems","forEach","i","syncValueFromItems","handleMenuShow","disabled","mainItems","style","display","checkedItems","getCheckedItems","getValueAsArray","selectionContainerItems","map","h","checkType","onClick","menuItem","target","isChecked","getItemLabel","handleMenuHide","handleSlotChange","hasHelpTextSlot","hasSlot","host","hasLabelSlot","hasErrorTextSlot","syncItemsFromValue","DEFAULT_DEBOUNCE_FAST","handleDisabledChange","handleLabelChange","handleMultipleChange","handleValueChange","Array","isArray","connectedCallback","options","console","error","init","componentWillLoad","componentDidLoad","requestAnimationFrame","autocompleteInput","add","debounce","inputDebounce","join","disconnectedCallback","disconnect","shadowRoot","removeEventListener","removeAll","addEventListener","forward","displayValuesContainer","observe","slot","querySelector","getTextContent","textContent","menu","querySelectorAll","getSelectionContainerItems","filter","values","String","visibleItems","hasDeselectedOptions","option","displayedValues","checkedValues","displayValueOptions","overflowCount","d","showDisplayValue","showSeparator","separator","availableWidth","getWidth","fitCount","computeFitCount","hideOverflowCount","showFittingValues","setOverflowCount","showOverflowCount","render","hasSelection","hasMenuItems","showClear","showExpand","clearable","FormControl","label","helpText","errorText","errorTextCount","size","onLabelClick","required","displayError","invalid","part","ref","el","hoist","matchTriggerWidth","closeOnSelect","containingElement","disableHideOnEnterAndSpace","class","select","pill","onKeyDown","filterPlaceholder","filterDebounce","asyncFilter","select__box","line","role","tabIndex","onBlur","onFocus","placeholder","exportparts","name","tabindex","select__input","select__menu","onSlotchange","selectAllButton","type","selectAllText","selectAllDefaultText","some","opt","element","getBoundingClientRect","width","accumulatedWidth","displayOption","slice","displayValue","index","list","isLast","hideSeparator","hideDisplayValue","displayValueOption","classList","remove","count","lang","getLanguage"],"sources":["src/components/six-select/six-select.scss?tag=six-select&encapsulation=shadow","src/components/six-select/six-select.tsx"],"sourcesContent":["@import 'src/global/component';\n@import '../../functional-components/form-control/form-control';\n@import 'src/global/mixins/hidden';\n@import 'src/global/mixins/hide-scrollbar';\n\n:host,\n.select {\n display: block;\n}\n\n.select__box {\n display: inline-flex;\n align-items: center;\n justify-content: start;\n position: relative;\n width: 100%;\n font-family: var(--six-font-family);\n font-weight: var(--six-input-font-weight);\n font-size: var(--six-input-font-size-medium);\n letter-spacing: var(--six-input-letter-spacing);\n background-color: var(--six-input-background-color);\n border: solid var(--six-border-width) var(--six-input-border-color);\n vertical-align: middle;\n transition: var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;\n cursor: pointer;\n\n &--line {\n border: none;\n border-bottom: solid var(--six-border-width) var(--six-input-border-color);\n }\n\n &--autocomplete {\n border: none;\n overflow: initial;\n }\n}\n\n.select:not(.select--disabled) .select__box:hover {\n background-color: var(--six-input-background-color-hover);\n color: var(--six-input-color-hover);\n\n border-bottom-color: var(--six-input-border-color-hover);\n\n &:not(.select__box--line) {\n border-color: var(--six-input-border-color-hover);\n }\n}\n\n.select:not(.select--disabled) .select__box:focus {\n background-color: var(--six-input-background-color-focus);\n outline: none;\n color: var(--six-input-color-focus);\n\n border-bottom-color: var(--six-input-border-color-focus);\n box-shadow: 0 1px 0 0 var(--six-input-border-color-focus);\n\n &:not(.select__box--line) {\n border-color: var(--six-input-border-color-focus);\n box-shadow: var(--six-input-focus-shadow);\n }\n}\n\n.select--disabled {\n .select__box {\n background-color: var(--six-input-background-color-disabled);\n color: var(--six-input-color-disabled);\n cursor: not-allowed;\n outline: none;\n\n &:not(.select__box--line) {\n border-color: var(--six-input-border-color-disabled);\n }\n }\n\n .select__clear {\n pointer-events: none;\n }\n}\n\n.select--invalid:not(.select--disabled):not(.select--focused) {\n .select__box {\n border-bottom-color: var(--six-input-border-color-danger);\n\n &:not(.input--line) {\n border-color: var(--six-input-border-color-danger);\n }\n }\n}\n\n.display__values {\n display: flex;\n flex: 1 1 auto;\n align-items: center;\n user-select: none;\n overflow: hidden;\n @include hide-scrollbar;\n}\n\n.display__values-values {\n flex: 0 1 auto;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.display__values-and-counter {\n display: flex;\n overflow: hidden;\n}\n\n.select__clear {\n flex-shrink: 0;\n flex-grow: 0;\n display: inline;\n}\n\n.select__icon {\n flex-shrink: 0;\n flex-grow: 0;\n display: inline;\n transition: var(--six-transition-medium) transform ease;\n}\n\n.select--open .select__icon {\n transform: rotate(-180deg);\n}\n\n// Placeholder\n.placeholder {\n color: var(--six-input-placeholder-color);\n}\n\n.select--disabled .placeholder {\n color: var(--six-input-placeholder-color-disabled);\n}\n\n// Hidden input (for form control validation to show)\n.select__hidden-select {\n @include visually-hidden();\n}\n\n.select__input {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Size modifiers\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.select--small {\n .select__box {\n border-radius: var(--six-input-border-radius-small);\n font-size: var(--six-input-font-size-small);\n min-height: var(--six-height-small);\n\n &--line {\n border: none;\n border-bottom: solid var(--six-border-width) var(--six-input-border-color);\n }\n }\n\n .display__values {\n margin: 0 0 0 var(--six-input-spacing-small);\n }\n\n .select__clear {\n margin-right: var(--six-spacing-xxx-small);\n }\n\n .select__icon {\n margin-right: var(--six-spacing-x-small);\n }\n}\n\n.select--medium {\n .select__box {\n border-radius: var(--six-input-border-radius-medium);\n font-size: var(--six-input-font-size-medium);\n min-height: var(--six-height-medium);\n\n &--line {\n border: none;\n border-bottom: solid var(--six-border-width) var(--six-input-border-color);\n }\n }\n\n .display__values {\n margin: 0 0 0 var(--six-input-spacing-medium);\n }\n\n .select__clear {\n margin-right: var(--six-spacing-xxx-small);\n }\n\n .select__icon {\n margin-right: var(--six-spacing-x-small);\n }\n}\n\n.select--large {\n .select__box {\n border-radius: var(--six-input-border-radius-large);\n font-size: var(--six-input-font-size-large);\n min-height: var(--six-height-large);\n\n &--line {\n border: none;\n border-bottom: solid var(--six-border-width) var(--six-input-border-color);\n }\n }\n\n .display__values {\n margin: 0 0 0 var(--six-input-spacing-large);\n }\n\n .select__clear {\n margin-right: var(--six-spacing-xxx-small);\n }\n\n .select__icon {\n margin-right: var(--six-spacing-x-small);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Pill modifier\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.select--pill {\n &.select--small .select__box {\n border-radius: var(--six-height-small);\n }\n\n &.select--medium .select__box {\n border-radius: var(--six-height-medium);\n }\n\n &.select--large .select__box {\n border-radius: var(--six-height-large);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Menu\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n.select {\n &__menu {\n width: 100%;\n\n &--hidden {\n // hide the menu panel if there are no menu items\n display: none;\n }\n }\n}\n\n// fixes problem where six-select height changes when size=\"small\" and clearing button is visible\nsix-icon-button::part(base) {\n padding-top: 0;\n padding-bottom: 0;\n}\n\n.selection-container--border {\n border-bottom: solid var(--six-border-width) var(--six-menu-divider-color);\n padding-top: var(--six-spacing-xx-small);\n padding-bottom: var(--six-spacing-xx-small);\n}\n\n.display-value--hidden {\n display: none;\n}\n\n.overflow-count {\n color: var(--six-color-web-rock-600);\n padding-left: var(--six-spacing-x-small);\n}\n\n.overflow-count-hidden {\n display: none;\n}\n\n.separator--hidden {\n display: none;\n}\n\n.select-all {\n border-top: 1px solid var(--six-color-web-rock-300);\n display: flex;\n justify-content: end;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { getTextContent, hasSlot } from '../../utils/slot';\nimport FormControl from '../../functional-components/form-control/form-control';\nimport { EmptyPayload } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { debounce, DEFAULT_DEBOUNCE_FAST } from '../../utils/execution-control';\nimport { SixMenuItemData } from '../six-menu/six-menu';\nimport { getLanguage } from '../../utils/error-messages';\n\nexport interface SixSelectChangePayload {\n value: string | string[];\n isSelected: boolean;\n}\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 select's options in the form of menu items.\n * @slot label - The select's label. Alternatively, you can use the label prop.\n * @slot help-text - Help text that describes how to use the select.\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part base - The component's base wrapper.\n * @part clear-button - The input's clear button, exported from six-input.\n * @part form-control - The form control that wraps the label, input, and help text.\n * @part help-text - The select's help text.\n * @part icon - The select's icon.\n * @part label - The select's label.\n * @part menu - The select menu, a six-menu element.\n * @part tag - The multiselect option, a six-tag element.\n * @part tags - The container in which multiselect options are rendered.\n */\n\n@Component({\n tag: 'six-select',\n styleUrl: 'six-select.scss',\n shadow: true,\n})\nexport class SixSelect {\n private box?: HTMLElement;\n private menu?: HTMLElement;\n private dropdown?: HTMLSixDropdownElement;\n private displayValuesContainer?: HTMLElement;\n private overflowCount?: HTMLElement;\n private autocompleteInput?: HTMLSixInputElement;\n private inputId = `select-${++id}`;\n private labelId = `select-label-${id}`;\n private helpTextId = `select-help-text-${id}`;\n private errorTextId = `select-error-text-${id}`;\n private eventListeners = new EventListeners();\n private activeItemIndex = -1;\n private resizeObserver = new ResizeObserver(() => this.updateDisplayedValues());\n\n @Element() host!: HTMLSixSelectElement;\n\n @State() hasFocus = false;\n @State() hasHelpTextSlot = false;\n @State() hasLabelSlot = false;\n @State() hasErrorTextSlot = false;\n @State() isOpen = false;\n @State() displayedValues: string[] = [];\n\n /** Menu items shown in the selection container. */\n @State() selectionContainerItems: HTMLSixMenuItemElement[] = [];\n\n /** Set to true to enable multiselect. */\n @Prop() multiple = false;\n\n /** Enables the select all button. */\n @Prop() selectAllButton = false;\n\n /**\n * Custom text for the \"select all\" button. Defaults to \"Select all\" and equivalents in supported languages.\n */\n @Prop() selectAllText?: string;\n\n /**\n * The maximum number of tags to show when `multiple` is true. After the maximum, \"+n\" will be shown to indicate the\n * number of additional items that are selected. Set to -1 to remove the limit.\n *\n * @deprecated: This property is ignored. The component now displays as many items as possible and computes the \"+n\" dynamically.\n */\n @Prop() maxTagsVisible = 3;\n\n /** Set to true to disable the select control. */\n @Prop() disabled = false;\n\n /** The select's name. */\n @Prop() name = '';\n\n /** The select's placeholder text. */\n @Prop() placeholder = '';\n\n /** The filter's placeholder text. */\n @Prop() filterPlaceholder?: string;\n\n /** The debounce for the filter callbacks. */\n @Prop() filterDebounce?: number;\n\n /** The select's size. */\n @Prop() size: 'small' | 'medium' | 'large' = 'medium';\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 /** The value of the control. This will be a string or an array depending on `multiple`. */\n @Prop({ mutable: true }) value: string | string[] = '';\n\n /** Set to true to draw a pill-style select with rounded edges. */\n @Prop() pill = false;\n\n /** The select's help text. Alternatively, you can use the help-text slot. */\n @Prop() helpText = '';\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /** Set to true to add a clear button when the select is populated. */\n @Prop() clearable = false;\n\n /** The label text. */\n @Prop() label = '';\n\n /** The error message shown, if `invalid` is set to true. */\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 /** 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 /** Set to render as line */\n @Prop() line = false;\n\n /** Set to true to allow filtering for entries in the dropdown */\n @Prop() filter = false;\n\n /**\n * Set to true to allow async filtering.\n * When you enter something in the search field the component will only emit an event but not filter any elements itself.\n * You can then simply listen to the 'six-async-filter-fired' event to manage the shown menu-items yourself\n */\n @Prop() asyncFilter = false;\n\n /**\n * Set to true to turn the six-select into an autocomplete.\n */\n @Prop() autocomplete = false;\n\n /** The debounce for when the input changes for autocompletes should be emitted */\n @Prop() inputDebounce = DEFAULT_DEBOUNCE_FAST;\n\n /** Set the options to be shown in the dropdown (alternative to setting the elements via html) */\n @Prop() options: SixMenuItemData[] | null = null;\n\n /** Defines whether the menu list will be rendered virtually i.e. only the elements actually shown (and a couple around)\n * are actually rendered in the DOM. If you use virtual scrolling pass the elements via prop instead of via slot. */\n @Prop() virtualScroll = false;\n\n @Watch('disabled')\n handleDisabledChange() {\n if (this.disabled && this.isOpen) {\n this.dropdown?.hide();\n }\n }\n\n @Watch('helpText')\n @Watch('errorText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n @Watch('multiple')\n handleMultipleChange() {\n // Cast to array | string based on `this.multiple`\n const value = this.getValueAsArray();\n this.value = this.multiple ? value : value[0] || '';\n this.syncItemsFromValue();\n }\n\n @Watch('value')\n async handleValueChange() {\n if (this.multiple && !Array.isArray(this.value)) {\n this.value = [];\n }\n\n if (!this.multiple && typeof this.value !== 'string') {\n this.value = '';\n }\n await this.syncItemsFromValue();\n }\n\n /** Emitted when the control's value changes. */\n @Event({ eventName: 'six-select-change' }) sixChange!: EventEmitter<SixSelectChangePayload>;\n\n /** Emitted when the control gains focus. */\n @Event({ eventName: 'six-select-focus' }) sixFocus!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control loses focus. */\n @Event({ eventName: 'six-select-blur' }) sixBlur!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n if (this.virtualScroll && this.options === null) {\n console.error('Options must be defined when using virtual scrolling');\n }\n this.init();\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n if (this.multiple && this.value != null) {\n this.value = this.getValueAsArray();\n }\n }\n\n componentDidLoad() {\n this.init();\n\n // We need to do an initial sync after the component has rendered, so this will suppress the re-render warning\n requestAnimationFrame(() => this.syncItemsFromValue());\n\n if (this.autocomplete && this.autocompleteInput != null) {\n const autocompleteInput = this.autocompleteInput;\n this.eventListeners.add(\n autocompleteInput,\n 'six-input-input',\n debounce((event) => {\n this.value = autocompleteInput.value;\n this.sixChange.emit({ value: this.value, isSelected: false });\n event.stopPropagation();\n }, this.inputDebounce)\n );\n autocompleteInput.value = Array.isArray(this.value) ? this.value.join(',') : this.value;\n }\n }\n\n disconnectedCallback() {\n this.resizeObserver.disconnect();\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.removeAll();\n }\n\n /** Sets focus on the select. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.hasFocus = true;\n this.box?.focus(options);\n }\n\n private init() {\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.forward('six-select-change', 'change', this.host);\n this.eventListeners.forward('six-select-blur', 'blur', this.host);\n this.eventListeners.forward('six-select-focus', 'focus', this.host);\n if (this.displayValuesContainer) {\n this.resizeObserver.observe(this.displayValuesContainer);\n }\n }\n\n private getItemLabel(item: HTMLSixMenuItemElement): string {\n const slot = item.shadowRoot?.querySelector('slot:not([name])') as HTMLSlotElement;\n if (slot != null) {\n return getTextContent(slot);\n } else {\n // bugfix/COMSLI-203-six-select-value-is-not-updated-if-the-slot-is-changed\n return item.textContent ?? '';\n }\n }\n\n private getItems(): HTMLSixMenuItemElement[] {\n if (this.options !== null && this.menu != null && this.menu.shadowRoot != null) {\n return [...this.menu.shadowRoot.querySelectorAll('six-menu-item')];\n }\n\n return [...this.host.querySelectorAll('six-menu-item')];\n }\n\n private getVisibleItems(): HTMLSixMenuItemElement[] {\n const selectionContainerItems = this.getSelectionContainerItems();\n const mainItems = this.getItems();\n return [...selectionContainerItems, ...mainItems].filter((i) => i.style.display !== 'none');\n }\n\n private getSelectionContainerItems() {\n return [...(this.host.shadowRoot?.querySelectorAll('six-menu-item') || [])];\n }\n\n private getValueAsArray() {\n const values = Array.isArray(this.value) ? this.value : this.value === '' ? [] : [this.value];\n // enforce that the values are converted to 'string' before the value is compared\n return values.map(String);\n }\n\n private handleBlur = () => {\n this.hasFocus = false;\n this.sixBlur.emit();\n };\n\n private handleFocus = () => {\n this.hasFocus = true;\n this.sixFocus.emit();\n };\n\n private handleClearClick = async (event: MouseEvent) => {\n event.stopPropagation();\n await this.clearValues();\n await this.dropdown?.hide();\n this.sixChange.emit({ value: this.value, isSelected: true });\n };\n\n private async clearValues() {\n this.value = this.multiple ? [] : '';\n this.selectionContainerItems = [];\n await this.syncItemsFromValue();\n }\n\n private handleKeyDown = (event: KeyboardEvent) => {\n if (this.virtualScroll || this.autocomplete) {\n return;\n }\n\n if (['Control', 'Escape'].includes(event.key)) {\n return;\n }\n\n const items = this.getVisibleItems();\n\n // Ctrl-A selects all items\n if (this.isOpen && this.multiple && event.code === 'KeyA' && event.ctrlKey) {\n event.preventDefault();\n this.selectAll();\n return;\n }\n\n // Tabbing out of the control closes it\n if (event.key === 'Tab') {\n if (this.isOpen) {\n this.dropdown?.hide();\n }\n return;\n }\n\n if (event.key === ' ' && !this.multiple) {\n return;\n }\n\n // Enter and Space selects the active item\n if (this.activeItemIndex >= 0 && ['Enter', ' '].includes(event.key)) {\n const activeItem = items.at(this.activeItemIndex);\n event.preventDefault();\n activeItem?.click();\n return;\n }\n\n // Move the selection when pressing up or down\n if (['ArrowDown', 'ArrowUp', 'Home', 'End'].includes(event.key)) {\n // Show the menu if it's not already open\n if (!this.isOpen) {\n this.dropdown?.show();\n }\n\n if (items.length > 0) {\n event.preventDefault();\n\n if (event.key === 'ArrowDown') {\n this.activeItemIndex++;\n } else if (event.key === 'ArrowUp') {\n this.activeItemIndex--;\n } else if (event.key === 'Home') {\n this.activeItemIndex = 0;\n } else if (event.key === 'End') {\n this.activeItemIndex = items.length - 1;\n }\n\n if (this.activeItemIndex < 0) this.activeItemIndex = 0;\n if (this.activeItemIndex > items.length - 1) this.activeItemIndex = items.length - 1;\n\n items.at(this.activeItemIndex)?.setFocus();\n }\n }\n\n // All other keys open the menu\n if (!this.isOpen) {\n event.stopPropagation();\n event.preventDefault();\n this.dropdown?.show();\n }\n };\n\n private selectAll() {\n const visibleItems = this.getVisibleItems();\n const hasDeselectedOptions = this.hasDeselectedOptions();\n visibleItems.filter((option) => !option.disabled).forEach((option) => (option.checked = hasDeselectedOptions));\n const checkedItems = visibleItems.filter((option) => option.checked).map((option) => option.value);\n this.value = hasDeselectedOptions ? checkedItems : [];\n this.sixChange.emit({ value: this.value, isSelected: true });\n }\n\n private handleLabelClick = () => {\n this.box?.focus();\n };\n\n private handleMenuSelect = (event: CustomEvent) => {\n const currentItem = event.detail.item as HTMLSixMenuItemElement;\n if (this.multiple) {\n currentItem.checked = !currentItem.checked;\n } else {\n this.getItems().forEach((i) => (i.checked = false));\n currentItem.checked = true;\n }\n this.syncValueFromItems();\n this.sixChange.emit({ value: this.value, isSelected: true });\n };\n\n private handleMenuShow = (event: CustomEvent) => {\n if (this.disabled) {\n event.preventDefault();\n return;\n }\n this.activeItemIndex = -1;\n\n // reset display style of main items\n const mainItems = this.getItems();\n mainItems.forEach((item) => (item.style.display = 'unset'));\n\n // show selected menu items in the selection container and hide them in the main container\n const checkedItems = getCheckedItems(this.getValueAsArray(), mainItems);\n if (!this.virtualScroll && this.multiple) {\n checkedItems.forEach((i) => (i.style.display = 'none'));\n this.selectionContainerItems = checkedItems.map((item) => {\n return (\n <six-menu-item\n key={item.value} // key makes sure the node is not re-used: https://stenciljs.com/docs/templating-jsx#conditionals\n checked={true}\n value={item.value}\n checkType={this.multiple ? 'checkbox' : 'check'}\n onClick={(event) => {\n event.stopPropagation();\n if (!this.disabled) {\n const menuItem = event.target as HTMLSixMenuItemElement;\n const isChecked = menuItem.checked;\n menuItem.checked = !isChecked;\n item.checked = !isChecked;\n this.syncValueFromItems();\n this.sixChange.emit({ value: this.value, isSelected: true });\n }\n }}\n >\n {this.getItemLabel(item)}\n </six-menu-item>\n );\n });\n }\n\n this.isOpen = true;\n };\n\n private handleMenuHide = () => {\n this.isOpen = false;\n };\n\n private handleSlotChange = () => {\n this.hasHelpTextSlot = hasSlot(this.host, 'help-text');\n this.hasLabelSlot = hasSlot(this.host, 'label');\n this.hasErrorTextSlot = hasSlot(this.host, 'error-text');\n this.syncItemsFromValue();\n };\n\n /**\n * Sets the checked state of menu items and renders the displayed values.\n */\n private async syncItemsFromValue() {\n const selectionContainerItems = this.getSelectionContainerItems();\n const mainItems = this.getItems();\n const value = this.getValueAsArray();\n\n selectionContainerItems.forEach((item) => {\n item.checkType = this.multiple ? 'checkbox' : 'check';\n item.checked = value.includes(item.value);\n });\n mainItems.forEach((item) => {\n item.checkType = this.multiple ? 'checkbox' : 'check';\n item.checked = value.includes(item.value);\n });\n\n const checkedItems = getCheckedItems(this.getValueAsArray(), mainItems);\n this.displayedValues = checkedItems.map((i) => this.getItemLabel(i));\n\n if (this.autocomplete && this.autocompleteInput != null) {\n this.autocompleteInput.value = Array.isArray(this.value) ? this.value.join(',') : this.value;\n }\n\n requestAnimationFrame(() => {\n this.updateDisplayedValues();\n });\n }\n\n private syncValueFromItems() {\n const items = this.getItems();\n const checkedValues = items.filter((item) => item.checked).map((item) => item.value);\n if (this.multiple) {\n this.value = checkedValues;\n } else {\n this.value = checkedValues.length > 0 ? checkedValues[0] : '';\n }\n }\n\n private updateDisplayedValues() {\n const displayValueOptions = [...(this.displayValuesContainer?.querySelectorAll('.display-value') ?? [])];\n if (this.displayValuesContainer == null || displayValueOptions.length === 0 || this.overflowCount == null) {\n return;\n }\n\n // Show all options and separators to properly measure all widths.\n displayValueOptions.forEach((d) => {\n showDisplayValue(d);\n showSeparator(d);\n });\n\n // Measure available width. The last separator is added to the available width, because it will be hidden later on.\n const separator = displayValueOptions[displayValueOptions.length - 1].querySelector('.separator');\n if (separator == null) return;\n let availableWidth = getWidth(this.displayValuesContainer) + getWidth(separator);\n\n // Compute how many display value elements fit in the available width\n let { fitCount, overflowCount } = computeFitCount(displayValueOptions, availableWidth);\n\n if (overflowCount === 0) {\n // All items fit, hide overflow count and show all values.\n hideOverflowCount(this.overflowCount);\n showFittingValues(displayValueOptions, fitCount);\n } else {\n // Not all items fit in the available width. Recompute the available width with the overflow-count visible.\n\n // Increment overflow count by one to make sure the elements fit, even if the overflow count increases to the\n // next higher power of ten, e.g. from 9 to 10 or 99 to 100.\n setOverflowCount(this.overflowCount, overflowCount + 1);\n showOverflowCount(this.overflowCount);\n\n // Subtract the overflow count from the available width\n availableWidth = availableWidth - getWidth(this.overflowCount);\n\n // Compute how many display value elements fit in the new available width\n ({ fitCount, overflowCount } = computeFitCount(displayValueOptions, availableWidth));\n\n // Show overflow count and items that fit.\n setOverflowCount(this.overflowCount, overflowCount);\n showFittingValues(displayValueOptions, fitCount);\n }\n }\n\n render() {\n const hasSelection = this.hasSelection();\n const items = this.getItems();\n const hasMenuItems = items.length > 0;\n const hasDeselectedOptions = this.hasDeselectedOptions();\n let showClear = false;\n let showExpand = hasMenuItems;\n if (this.clearable && hasSelection) {\n showClear = true;\n showExpand = false;\n }\n\n return (\n <FormControl\n inputId={this.inputId}\n label={this.label}\n labelId={this.labelId}\n hasLabelSlot={this.hasLabelSlot}\n helpTextId={this.helpTextId}\n helpText={this.helpText}\n hasHelpTextSlot={this.hasHelpTextSlot}\n errorTextId={this.errorTextId}\n errorText={this.errorText}\n errorTextCount={this.errorTextCount}\n hasErrorTextSlot={this.hasErrorTextSlot}\n size={this.size}\n onLabelClick={this.handleLabelClick}\n disabled={this.disabled}\n required={this.required}\n displayError={this.invalid}\n >\n <six-dropdown\n part=\"base\"\n ref={(el) => (this.dropdown = el)}\n hoist={this.hoist}\n matchTriggerWidth={true}\n closeOnSelect={!this.multiple}\n containingElement={this.host}\n disableHideOnEnterAndSpace={this.autocomplete}\n class={{\n select: true,\n 'select--open': this.isOpen,\n 'select--empty': this.value?.length === 0,\n 'select--focused': this.hasFocus,\n 'select--clearable': this.clearable,\n 'select--disabled': this.disabled,\n 'select--multiple': this.multiple,\n 'select--has-tags': this.multiple && hasSelection,\n 'select--placeholder-visible': this.displayedValues.length === 0,\n 'select--small': this.size === 'small',\n 'select--medium': this.size === 'medium',\n 'select--large': this.size === 'large',\n 'select--pill': this.pill,\n 'select--invalid': this.invalid,\n }}\n onKeyDown={this.handleKeyDown}\n onSix-dropdown-show={this.handleMenuShow}\n onSix-dropdown-hide={this.handleMenuHide}\n filterPlaceholder={this.filterPlaceholder}\n filterDebounce={this.filterDebounce}\n filter={this.filter}\n asyncFilter={this.asyncFilter}\n virtualScroll={this.virtualScroll}\n >\n {/* Trigger */}\n <div\n slot=\"trigger\"\n ref={(el) => (this.box = el)}\n id={this.inputId}\n class={{\n select__box: true,\n 'select__box--line': this.line,\n 'select__box--autocomplete': this.autocomplete,\n }}\n role=\"combobox\"\n aria-labelledby={this.labelId}\n aria-describedby={this.helpTextId}\n aria-haspopup=\"true\"\n aria-expanded={this.isOpen ? 'true' : 'false'}\n tabIndex={this.disabled ? -1 : 0}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n >\n {/* Display values */}\n <div class=\"display__values\" ref={(el) => (this.displayValuesContainer = el)}>\n {this.displayedValues.length > 0 ? (\n <span class=\"display__values-and-counter\">\n <span class=\"display__values-values\">\n {this.displayedValues.map((value) => (\n <span key={value} class=\"display-value\">\n {value}\n <span class={{ separator: true }}>, </span>\n </span>\n ))}\n </span>\n <span ref={(el) => (this.overflowCount = el)} class=\"overflow-count\">\n +10\n </span>\n </span>\n ) : (\n <span class=\"placeholder\">{this.placeholder}</span>\n )}\n </div>\n\n {/* Clear */}\n {showClear && (\n <six-icon-button\n exportparts=\"base:clear-button\"\n class=\"select__clear\"\n name=\"clear\"\n size=\"small\"\n onClick={this.handleClearClick}\n tabindex=\"-1\"\n />\n )}\n\n {/* Expand */}\n {showExpand && (\n <span part=\"icon\" class=\"select__icon\">\n <six-icon size=\"medium\">expand_more</six-icon>\n </span>\n )}\n\n {/* Autocomplete */}\n <six-input\n ref={(el) => (this.autocompleteInput = el)}\n class={{\n select__input: true,\n 'select__hidden-select': !this.autocomplete,\n }}\n aria-hidden=\"true\"\n required={this.required}\n onFocus={this.handleFocus}\n clearable={this.clearable}\n placeholder={this.placeholder}\n pill={this.pill}\n disabled={this.disabled}\n size={this.size}\n tabIndex={-1}\n />\n </div>\n\n {/* Selection container */}\n <div\n class={{\n 'selection-container': true,\n 'selection-container--border':\n this.selectionContainerItems.length > 0 && items.length !== this.selectionContainerItems.length,\n }}\n >\n {this.selectionContainerItems}\n </div>\n\n {/* Menu */}\n <six-menu\n ref={(el) => (this.menu = el)}\n part=\"menu\"\n class={{\n select__menu: true,\n 'select__menu--hidden': !hasMenuItems,\n }}\n onSix-menu-item-selected={this.handleMenuSelect}\n items={this.options}\n virtualScroll={this.virtualScroll}\n remove-box-shadow={true}\n disable-keyboard-handling={true}\n >\n <slot onSlotchange={this.handleSlotChange} />\n </six-menu>\n\n {/* Select all */}\n {this.multiple && this.selectAllButton && (\n <div class=\"select-all\" slot=\"dropdown-footer\">\n <six-button type=\"link\" onClick={() => this.selectAll()}>\n {this.selectAllText == null ? selectAllDefaultText(hasDeselectedOptions) : this.selectAllText}\n </six-button>\n </div>\n )}\n </six-dropdown>\n </FormControl>\n );\n }\n\n private hasSelection() {\n return this.multiple ? this.value.length > 0 : this.value !== '';\n }\n\n private hasDeselectedOptions() {\n return this.getVisibleItems().some((opt) => !opt.disabled && !opt.checked);\n }\n}\n\nfunction getCheckedItems(value: string[], items: HTMLSixMenuItemElement[]): HTMLSixMenuItemElement[] {\n return items.filter((item) => value.includes(item.value));\n}\n\nfunction getWidth(element: Element) {\n return element.getBoundingClientRect().width;\n}\n\nfunction computeFitCount(options: Element[], availableWidth: number): { fitCount: number; overflowCount: number } {\n let accumulatedWidth = 0;\n let fitCount = 0;\n\n for (let i = 0; i < options.length; i++) {\n const displayOption = options[i];\n const width = getWidth(displayOption);\n if (i === 0 && width > availableWidth) {\n fitCount = 1;\n break;\n }\n accumulatedWidth += width;\n if (accumulatedWidth > availableWidth) {\n break;\n } else {\n fitCount += 1;\n }\n }\n const overflowCount = options.length - fitCount;\n return { fitCount, overflowCount };\n}\n\nfunction showFittingValues(displayValueOptions: Element[], fitCount: number) {\n if (displayValueOptions.length > 0) {\n // show items that fit\n displayValueOptions.slice(0, fitCount).forEach((displayValue, index, list) => {\n showDisplayValue(displayValue);\n const isLast = index === list.length - 1;\n if (isLast) {\n hideSeparator(displayValue);\n } else {\n showSeparator(displayValue);\n }\n });\n\n // hide the rest\n displayValueOptions.slice(fitCount).forEach((displayValue) => {\n hideDisplayValue(displayValue);\n showSeparator(displayValue);\n });\n }\n}\n\nfunction hideSeparator(displayValueOption: Element) {\n displayValueOption.querySelector('.separator')?.classList.add('separator--hidden');\n}\n\nfunction showSeparator(displayValueOption: Element) {\n displayValueOption.querySelector('.separator')?.classList.remove('separator--hidden');\n}\n\nfunction showDisplayValue(displayValueOption: Element) {\n displayValueOption.classList.remove('display-value--hidden');\n}\n\nfunction hideDisplayValue(displayValueOption: Element) {\n displayValueOption.classList.add('display-value--hidden');\n}\n\nfunction setOverflowCount(overflowCount: Element, count: number) {\n overflowCount.textContent = `+${count}`;\n}\n\nfunction showOverflowCount(overflowCount: Element) {\n overflowCount.classList.remove('overflow-count-hidden');\n}\n\nfunction hideOverflowCount(overflowCount: Element) {\n overflowCount.classList.add('overflow-count-hidden');\n}\n\nfunction selectAllDefaultText(hasDeselectedOptions: boolean) {\n const lang = getLanguage();\n switch (lang) {\n case 'de':\n return hasDeselectedOptions ? 'Alle auswählen' : 'Alle abwählen';\n case 'fr':\n return hasDeselectedOptions ? 'Tout sélectionner' : 'Tout désélectionner';\n case 'it':\n return hasDeselectedOptions ? 'Seleziona tutto' : 'Deseleziona tutto';\n case 'en':\n return hasDeselectedOptions ? 'Select all' : 'Deselect all';\n case 'es':\n return hasDeselectedOptions ? 'Seleccionar todo' : 'Deseleccionar todo';\n }\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r,h as o}from"./p-af15381b.js";const i=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:block}.menu-divider{border-top:solid var(--six-border-width) var(--six-menu-divider-color);margin-top:var(--six-spacing-xx-small);margin-bottom:var(--six-spacing-xx-small)}";const s=class{constructor(o){r(this,o)}render(){return o("div",{part:"base",class:"menu-divider",role:"separator","aria-hidden":"true"})}};s.style=i;export{s as six_menu_divider};
2
- //# sourceMappingURL=p-e6032375.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixMenuDividerCss","SixMenuDivider","render","h","part","class","role"],"sources":["src/components/six-menu-divider/six-menu-divider.scss?tag=six-menu-divider&encapsulation=shadow","src/components/six-menu-divider/six-menu-divider.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: block;\n}\n\n.menu-divider {\n border-top: solid var(--six-border-width) var(--six-menu-divider-color);\n margin-top: var(--six-spacing-xx-small);\n margin-bottom: var(--six-spacing-xx-small);\n}\n","import { Component, h } from '@stencil/core';\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 * @part base - The component's base wrapper.\n */\n\n@Component({\n tag: 'six-menu-divider',\n styleUrl: 'six-menu-divider.scss',\n shadow: true,\n})\nexport class SixMenuDivider {\n render() {\n return <div part=\"base\" class=\"menu-divider\" role=\"separator\" aria-hidden=\"true\" />;\n }\n}\n"],"mappings":"sCAAA,MAAMA,EAAoB,sS,MCgBbC,EAAc,M,yBACzB,MAAAC,GACE,OAAOC,EAAA,OAAKC,KAAK,OAAOC,MAAM,eAAeC,KAAK,YAAW,cAAa,Q"}
@@ -1,2 +0,0 @@
1
- import{r as e,c as i,h as s,H as t,g as r}from"./p-af15381b.js";import{E as h}from"./p-8bfb4bfc.js";import{g as a,h as o}from"./p-0cebf1d2.js";const n=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:block;user-select:none;--search-border-width:1px}::slotted(six-search-field){position:absolute;margin-left:var(--search-border-width);width:calc(100% - 2 * var(--search-border-width))}.six-header{display:flex;width:100%;height:3.75rem;background-color:var(--six-header-background-color);align-items:center;flex-wrap:wrap;box-shadow:var(--six-shadow-medium);border-bottom:var(--six-header-border-with) solid var(--six-header-border-color)}.six-header__logo{width:6rem;margin-top:0.15rem}.six-header__logo--clickable{cursor:pointer}.six-header__placeholder{flex:1}.six-header__menu,.six-header__logo,.six-header__custom,.six-header__search,.six-header__notification,.six-header__app-switcher,.six-header__profile{height:calc(100% - 0.25rem - 1px);padding:0 1.25rem;display:flex;align-items:center;border-bottom:solid 0.25rem transparent}.six-header__menu--open,.six-header__logo--open,.six-header__custom--open,.six-header__search--open,.six-header__notification--open,.six-header__app-switcher--open,.six-header__profile--open{border-bottom:solid 0.25rem var(--six-header-border-color-open)}.six-header__app-switcher-dropdown{display:flex;align-items:center}.six-header__selected-app{cursor:pointer;font-size:0.9rem;font-weight:600;padding-right:0;padding-left:0.3rem}.six-header__selected-app:hover{color:var(--six-header-selected-app-color-hover)}.six-header__search-field{opacity:0;transform:scale(0.9);transition:var(--six-transition-fast) opacity, var(--six-transition-fast) transform;display:none}.six-header__search-field--visible{opacity:1;transform:none;display:block}.six-header__search-field--shift-content.six-header__search-field--visible{height:2.65rem;transition:var(--six-transition-fast) height}.six-header__search-field--shift-content:not(.six-header__search-field--visible){height:0;transition:var(--six-transition-fast) height}";var l;(function(e){e[e["None"]=0]="None";e[e["Search"]=1]="Search";e[e["AppSwitcher"]=2]="AppSwitcher";e[e["Profile"]=3]="Profile"})(l||(l={}));var d;(function(e){e["Search"]="search-field";e["Notifications"]="notifications";e["AppSwitcher"]="app-switcher-menu";e["Profile"]="profile-menu";e["Logo"]="logo"})(d||(d={}));const c=class{constructor(s){e(this,s);this.sixAppNameClicked=i(this,"six-header-app-name-clicked",7);this.sixAppSwitcherSelect=i(this,"six-header-app-switcher-select",7);this.sixProfileSelect=i(this,"six-header-profile-select",7);this.sixHamburgerClick=i(this,"six-header-hamburger-menu-clicked",7);this.sixLogoClick=i(this,"six-header-logo-clicked",7);this.sixSearchFieldToggle=i(this,"six-header-search-field-toggle",7);this.eventListeners=new h;this.setupMenu=e=>{if(e==null)return;this.eventListeners.add(e,"click",(()=>this.sixHamburgerClick.emit()))};this.setupLogo=e=>{if(!this.clickableLogo||e==null)return;this.eventListeners.add(e,"click",(()=>this.sixLogoClick.emit()))};this.setupProfile=e=>{if(e==null)return;this.eventListeners.add(e,"six-dropdown-show",this.selectSection(l.Profile));this.eventListeners.add(e,"six-dropdown-hide",this.selectSection(l.None));this.eventListeners.add(e,"six-menu-item-selected",(e=>{const{name:i,item:s}=e.detail;this.sixProfileSelect.emit({selectedLabel:s.innerText,name:i,item:s})}))};this.setupAppSwitcher=e=>{if(e==null)return;this.eventListeners.add(e,"six-dropdown-show",this.selectSection(l.AppSwitcher));this.eventListeners.add(e,"six-dropdown-hide",this.selectSection(l.None));this.eventListeners.add(e,"six-menu-item-selected",(e=>{const{name:i,item:s}=e.detail;this.selectedApp=s.innerText;this.sixAppSwitcherSelect.emit({selectedLabel:s.innerText,name:i,item:s})}))};this.appNameClicked=()=>this.sixAppNameClicked.emit();this.computeSearchOpenState=()=>{this.selectedSection=this.openSearch?l.Search:l.None};this.shiftContent=false;this.hideHamburgerMenu=false;this.openHamburgerMenu=false;this.openSearch=false;this.clickableLogo=false;this.selectedApp=undefined;this.selectedSection=undefined}handleOpenSearchChange(){this.computeSearchOpenState()}async setSearchOpenState(e){if(this.selectedSection===l.Search&&!e){this.selectedSection=l.None}else if(e&&this.selectedSection!==l.Search){this.selectedSection=l.Search}}async getIsSearchOpen(){return this.selectedSection===l.Search}hasSlot(e){if(this.slots==null){return false}return this.slots[e]}isSectionSelected(e){return e===this.selectedSection}selectSection(e){return()=>this.selectedSection=e}toggleSearch(){const e=this.selectedSection!==l.Search;this.selectedSection=this.selectedSection===l.Search?l.None:l.Search;this.sixSearchFieldToggle.emit({visible:e});if(this.selectedSection===l.Search){setTimeout((async()=>{var e,i;const s=a(this.host,d.Search);(i=(e=s===null||s===void 0?void 0:s.shadowRoot)===null||e===void 0?void 0:e.querySelector("six-input"))===null||i===void 0?void 0:i.setFocus()}),50)}}componentWillLoad(){this.slots={[d.Search]:o(this.host,d.Search),[d.Notifications]:o(this.host,d.Notifications),[d.AppSwitcher]:o(this.host,d.AppSwitcher),[d.Profile]:o(this.host,d.Profile),[d.Logo]:o(this.host,d.Logo)};if(this.hasSlot(d.AppSwitcher)){this.updateSelectedApp()}if(this.hasSlot(d.Search)){this.computeSearchOpenState()}}connectedCallback(){const e=a(this.host,d.AppSwitcher);if(e){this.mutationObserver=new MutationObserver((e=>{if(e.some((e=>e.type==="childList"||e.type==="attributes"))){this.updateSelectedApp()}}));this.mutationObserver.observe(e,{attributes:true,childList:true,subtree:true})}}updateSelectedApp(){var e;const i=a(this.host,d.AppSwitcher);if(i==null){return undefined}const s=Array.from(i.querySelectorAll("six-menu-item"));const t=s.find((e=>e.hasAttribute("checked")&&e.getAttribute("checked")!=="false"));this.selectedApp=(e=t===null||t===void 0?void 0:t.textContent)!==null&&e!==void 0?e:undefined}disconnectedCallback(){var e;this.eventListeners.removeAll();(e=this.mutationObserver)===null||e===void 0?void 0:e.disconnect()}render(){const e=!this.hideHamburgerMenu&&s("section",{class:"six-header__menu"},s("six-icon-button",{name:this.openHamburgerMenu?"menu_open":"menu",ref:this.setupMenu}));const i=this.hasSlot(d.Search)&&s("section",{class:{"six-header__search":true,"six-header__search--open":this.isSectionSelected(l.Search)}},s("six-icon-button",{name:"search",onClick:()=>this.toggleSearch(),"data-testid":"search-trigger"}));const r=this.hasSlot(d.Notifications)&&s("section",{class:"six-header__notification"},s("slot",{name:d.Notifications}));const h=this.hasSlot(d.AppSwitcher)&&s("section",{class:{"six-header__app-switcher":true,"six-header__app-switcher--open":this.isSectionSelected(l.AppSwitcher)}},s("six-dropdown",{distance:13,skidding:20,placement:"bottom-end",ref:this.setupAppSwitcher},s("div",{slot:"trigger",class:"six-header__app-switcher-dropdown"},s("a",{onClick:this.appNameClicked,class:"six-header__selected-app"},this.selectedApp),s("six-icon-button",{name:"apps"})),s("slot",{name:d.AppSwitcher})));const a=this.hasSlot(d.Profile)&&s("section",{class:{"six-header__profile":true,"six-header__profile--open":this.isSectionSelected(l.Profile)}},s("six-dropdown",{distance:17,skidding:20,placement:"bottom-end",ref:this.setupProfile},s("slot",{name:"profile-avatar",slot:"trigger"}),s("slot",{name:"profile-menu"})));const o=this.hasSlot(d.Logo)?s("section",null,s("slot",{name:"logo"})):s("section",{class:{"six-header__logo":true,"six-header__logo--clickable":this.clickableLogo},ref:this.setupLogo},s("svg",{height:"20",viewBox:"0 0 90 26",xmlns:"http://www.w3.org/2000/svg"},s("title",null,"SIX"),s("g",{fill:"#DE3919","fill-rule":"nonzero"},s("path",{d:"m22.798 3.869c1.82-2.168 4.549-3.545 7.6-3.545h6.807v4.961h-6.807c-1.526 0-2.89.689-3.8 1.771l-12.19 14.526c-1.82 2.166-4.549 3.545-7.6 3.545h-6.808v-4.961h6.808c1.525 0 2.889-.689 3.799-1.773l12.191-14.525"}),s("path",{d:"m42.16.324h5.21v24.806h-5.21z"}),s("path",{d:"m66.743 3.869l4.195 4.999 4.195-4.999c1.819-2.168 4.549-3.545 7.6-3.545h6.806v4.961h-6.806c-1.526 0-2.89.689-3.8 1.771l-4.758 5.669 4.758 5.669c.91 1.084 2.274 1.773 3.8 1.773h6.806v4.961h-6.806c-3.051 0-5.781-1.379-7.6-3.545l-4.195-4.999-4.195 4.999c-1.82 2.166-4.55 3.545-7.6 3.545h-6.807v-4.961h6.807c1.525 0 2.889-.689 3.799-1.773l4.758-5.669-4.758-5.669c-.91-1.083-2.274-1.771-3.799-1.771h-6.807v-4.961h6.807c3.05 0 5.78 1.378 7.6 3.545"}))));return s(t,null,s("header",{class:"six-header"},e,o,s("section",{class:"six-header__placeholder"}),s("section",{class:"six-header__custom"},s("slot",null)),i,r,h,a),s("div",{class:{"six-header__search-field":true,"six-header__search-field--visible":this.isSectionSelected(l.Search),"six-header__search-field--shift-content":this.shiftContent}},s("slot",{name:d.Search})))}static get assetsDirs(){return["assets"]}get host(){return r(this)}static get watchers(){return{openSearch:["handleOpenSearchChange"]}}};c.style=n;export{c as six_header};
2
- //# sourceMappingURL=p-e60d2324.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixHeaderCss","Section","Slot","SixHeader","this","eventListeners","EventListeners","setupMenu","el","add","sixHamburgerClick","emit","setupLogo","clickableLogo","sixLogoClick","setupProfile","selectSection","Profile","None","event","name","item","detail","sixProfileSelect","selectedLabel","innerText","setupAppSwitcher","AppSwitcher","selectedApp","sixAppSwitcherSelect","appNameClicked","sixAppNameClicked","computeSearchOpenState","selectedSection","openSearch","Search","handleOpenSearchChange","setSearchOpenState","openState","getIsSearchOpen","hasSlot","slot","slots","isSectionSelected","value","section","toggleSearch","visible","sixSearchFieldToggle","setTimeout","async","getSlot","host","_b","_a","shadowRoot","querySelector","setFocus","componentWillLoad","Notifications","Logo","updateSelectedApp","connectedCallback","appSwitcherSlot","mutationObserver","MutationObserver","mutations","some","mutation","type","observe","attributes","childList","subtree","element","undefined","items","Array","from","querySelectorAll","firstCheckedMenuItem","find","hasAttribute","getAttribute","textContent","disconnectedCallback","removeAll","disconnect","render","hamburgerMenu","hideHamburgerMenu","h","class","openHamburgerMenu","ref","search","onClick","notifications","appSwitcher","distance","skidding","placement","profile","logo","height","viewBox","xmlns","fill","d","Host","shiftContent"],"sources":["src/components/six-header/six-header.scss?tag=six-header&encapsulation=shadow","src/components/six-header/six-header.tsx"],"sourcesContent":["@import 'src/global/component';\n\n$header-height: 3.75rem;\n$border-height: 0.25rem;\n\n:host {\n display: block;\n user-select: none;\n --search-border-width: 1px;\n}\n\n::slotted(six-search-field) {\n position: absolute;\n margin-left: var(--search-border-width);\n width: calc(100% - 2 * var(--search-border-width));\n}\n\n.six-header {\n display: flex;\n width: 100%;\n height: $header-height;\n background-color: var(--six-header-background-color);\n align-items: center;\n flex-wrap: wrap;\n box-shadow: var(--six-shadow-medium);\n border-bottom: var(--six-header-border-with) solid var(--six-header-border-color);\n\n &__logo {\n width: 6rem;\n margin-top: 0.15rem;\n\n &--clickable {\n cursor: pointer;\n }\n }\n\n &__placeholder {\n flex: 1;\n }\n\n &__menu,\n &__logo,\n &__custom,\n &__search,\n &__notification,\n &__app-switcher,\n &__profile {\n height: calc(100% - #{$border-height} - 1px);\n padding: 0 1.25rem;\n display: flex;\n align-items: center;\n border-bottom: solid $border-height transparent;\n\n &--open {\n border-bottom: solid $border-height var(--six-header-border-color-open);\n }\n }\n\n &__app-switcher-dropdown {\n display: flex;\n align-items: center;\n }\n\n &__selected-app {\n cursor: pointer;\n font-size: 0.9rem;\n font-weight: 600;\n padding-right: 0;\n padding-left: 0.3rem;\n &:hover {\n color: var(--six-header-selected-app-color-hover);\n }\n }\n\n &__search-field {\n opacity: 0;\n transform: scale(0.9);\n transition: var(--six-transition-fast) opacity, var(--six-transition-fast) transform;\n display: none;\n\n &--visible {\n opacity: 1;\n transform: none;\n display: block;\n }\n\n &--shift-content.six-header__search-field--visible {\n height: 2.65rem;\n transition: var(--six-transition-fast) height;\n }\n\n &--shift-content:not(.six-header__search-field--visible) {\n height: 0;\n transition: var(--six-transition-fast) height;\n }\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Method, Prop, State, Watch } from '@stencil/core';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { getSlot, hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\n\nexport interface SixHeaderAppSwitcherSelectPayload {\n selectedLabel: string;\n name: string;\n item: HTMLSixMenuItemElement;\n}\n\nexport interface SixHeaderProfileSelectPayload {\n selectedLabel: string;\n name: string;\n item: HTMLSixMenuItemElement;\n}\n\nexport interface SixHeaderSearchFieldToggle {\n visible: boolean;\n}\n\nenum Section {\n None,\n Search,\n AppSwitcher,\n Profile,\n}\n\nenum Slot {\n Search = 'search-field',\n Notifications = 'notifications',\n AppSwitcher = 'app-switcher-menu',\n Profile = 'profile-menu',\n Logo = 'logo',\n}\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define a custom component that is included in the header.\n * @slot search-field - Used to define the search field component in the header.\n * @slot notifications - Used to define the notification component in the header.\n * @slot app-switcher-menu - Used to define the application switcher menu in the header.\n * @slot profile-menu - Used to define the profile menu in the header.\n * @slot profile-avatar - Used to define the avator in the header.\n */\n\n@Component({\n tag: 'six-header',\n styleUrl: 'six-header.scss',\n shadow: true,\n assetsDirs: ['assets'],\n})\nexport class SixHeader {\n /** Indicates if content should be shifted down when search field is visible. */\n @Prop() shiftContent = false;\n\n /** Set whether the hamburger menu should be visible or not */\n @Prop() hideHamburgerMenu = false;\n\n /** Set the hamburger menu icon to open or closed state */\n @Prop() openHamburgerMenu = false;\n\n /** Set the header search to be in an open or closed state */\n @Prop() openSearch = false;\n\n /** Set whether the logo should be clickable */\n @Prop() clickableLogo = false;\n\n @Watch('openSearch')\n handleOpenSearchChange() {\n this.computeSearchOpenState();\n }\n\n /** Sets open state for search */\n @Method()\n async setSearchOpenState(openState: boolean) {\n if (this.selectedSection === Section.Search && !openState) {\n this.selectedSection = Section.None;\n } else if (openState && this.selectedSection !== Section.Search) {\n this.selectedSection = Section.Search;\n }\n }\n\n /** Get open state for search */\n @Method()\n async getIsSearchOpen() {\n return this.selectedSection === Section.Search;\n }\n\n /** Emitted when the name of the selected app is clicked. */\n @Event({ eventName: 'six-header-app-name-clicked' }) sixAppNameClicked!: EventEmitter<EmptyPayload>;\n\n /** Emitted when a menu item is in the app switcher menu is selected. */\n @Event({ eventName: 'six-header-app-switcher-select' })\n sixAppSwitcherSelect!: EventEmitter<SixHeaderAppSwitcherSelectPayload>;\n\n /** Emitted when a menu item is in the profile menu is selected. */\n @Event({ eventName: 'six-header-profile-select' }) sixProfileSelect!: EventEmitter<SixHeaderProfileSelectPayload>;\n\n /** Emitted when the hamburger menu is clicked. */\n @Event({ eventName: 'six-header-hamburger-menu-clicked' }) sixHamburgerClick!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the header logo is clicked. */\n @Event({ eventName: 'six-header-logo-clicked' }) sixLogoClick!: EventEmitter<EmptyPayload>;\n\n /** Emitted when search field is toggled. */\n @Event({ eventName: 'six-header-search-field-toggle' })\n sixSearchFieldToggle!: EventEmitter<SixHeaderSearchFieldToggle>;\n\n @Element() host!: HTMLSixHeaderElement;\n\n private eventListeners = new EventListeners();\n\n private slots?: Record<Slot, boolean>;\n\n private mutationObserver?: MutationObserver;\n\n @State() selectedApp?: string;\n @State() selectedSection?: Section;\n\n private hasSlot(slot: Slot): boolean {\n if (this.slots == null) {\n return false;\n }\n return this.slots[slot];\n }\n\n private isSectionSelected(value: Section) {\n return value === this.selectedSection;\n }\n\n private selectSection(section: Section) {\n return () => (this.selectedSection = section);\n }\n\n private toggleSearch() {\n const visible = this.selectedSection !== Section.Search;\n this.selectedSection = this.selectedSection === Section.Search ? Section.None : Section.Search;\n this.sixSearchFieldToggle.emit({ visible });\n if (this.selectedSection === Section.Search) {\n // setFocus deferred due to https://github.com/ionic-team/stencil/issues/3772\n setTimeout(async () => {\n const slot = getSlot(this.host, Slot.Search);\n slot?.shadowRoot?.querySelector('six-input')?.setFocus();\n }, 50);\n }\n }\n\n private setupMenu = (el?: HTMLSixIconButtonElement) => {\n if (el == null) return;\n\n this.eventListeners.add(el, 'click', () => this.sixHamburgerClick.emit());\n };\n\n private setupLogo = (el?: HTMLElement) => {\n if (!this.clickableLogo || el == null) return;\n\n this.eventListeners.add(el, 'click', () => this.sixLogoClick.emit());\n };\n\n private setupProfile = (el?: HTMLSixDropdownElement) => {\n if (el == null) return;\n\n this.eventListeners.add(el, 'six-dropdown-show', this.selectSection(Section.Profile));\n this.eventListeners.add(el, 'six-dropdown-hide', this.selectSection(Section.None));\n this.eventListeners.add(el, 'six-menu-item-selected', (event: Event) => {\n const { name, item } = (event as CustomEvent).detail;\n this.sixProfileSelect.emit({ selectedLabel: item.innerText, name, item });\n });\n };\n\n private setupAppSwitcher = (el?: HTMLSixDropdownElement) => {\n if (el == null) return;\n\n this.eventListeners.add(el, 'six-dropdown-show', this.selectSection(Section.AppSwitcher));\n this.eventListeners.add(el, 'six-dropdown-hide', this.selectSection(Section.None));\n this.eventListeners.add(el, 'six-menu-item-selected', (event: Event) => {\n const { name, item } = (event as CustomEvent).detail;\n this.selectedApp = item.innerText;\n this.sixAppSwitcherSelect.emit({ selectedLabel: item.innerText, name, item });\n });\n };\n\n private appNameClicked = () => this.sixAppNameClicked.emit();\n\n private computeSearchOpenState = () => {\n this.selectedSection = this.openSearch ? Section.Search : Section.None;\n };\n\n componentWillLoad() {\n this.slots = {\n [Slot.Search]: hasSlot(this.host, Slot.Search),\n [Slot.Notifications]: hasSlot(this.host, Slot.Notifications),\n [Slot.AppSwitcher]: hasSlot(this.host, Slot.AppSwitcher),\n [Slot.Profile]: hasSlot(this.host, Slot.Profile),\n [Slot.Logo]: hasSlot(this.host, Slot.Logo),\n };\n\n if (this.hasSlot(Slot.AppSwitcher)) {\n this.updateSelectedApp();\n }\n\n if (this.hasSlot(Slot.Search)) {\n this.computeSearchOpenState();\n }\n }\n\n connectedCallback() {\n const appSwitcherSlot = getSlot(this.host, Slot.AppSwitcher);\n if (appSwitcherSlot) {\n this.mutationObserver = new MutationObserver((mutations) => {\n if (mutations.some((mutation) => mutation.type === 'childList' || mutation.type === 'attributes')) {\n this.updateSelectedApp();\n }\n });\n this.mutationObserver.observe(appSwitcherSlot, { attributes: true, childList: true, subtree: true });\n }\n }\n\n private updateSelectedApp() {\n // there are more concise ways to select the first checked menu item, but this is one that works for jest\n const element = getSlot(this.host, Slot.AppSwitcher);\n if (element == null) {\n return undefined;\n }\n const items = Array.from(element.querySelectorAll('six-menu-item'));\n const firstCheckedMenuItem = items.find(\n (item) => item.hasAttribute('checked') && item.getAttribute('checked') !== 'false'\n );\n this.selectedApp = firstCheckedMenuItem?.textContent ?? undefined;\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n this.mutationObserver?.disconnect();\n }\n\n render() {\n const hamburgerMenu = !this.hideHamburgerMenu && (\n <section class=\"six-header__menu\">\n <six-icon-button name={this.openHamburgerMenu ? 'menu_open' : 'menu'} ref={this.setupMenu} />\n </section>\n );\n\n const search = this.hasSlot(Slot.Search) && (\n <section\n class={{\n 'six-header__search': true,\n 'six-header__search--open': this.isSectionSelected(Section.Search),\n }}\n >\n <six-icon-button name=\"search\" onClick={() => this.toggleSearch()} data-testid=\"search-trigger\" />\n </section>\n );\n\n const notifications = this.hasSlot(Slot.Notifications) && (\n <section class=\"six-header__notification\">\n <slot name={Slot.Notifications} />\n </section>\n );\n\n const appSwitcher = this.hasSlot(Slot.AppSwitcher) && (\n <section\n class={{\n 'six-header__app-switcher': true,\n 'six-header__app-switcher--open': this.isSectionSelected(Section.AppSwitcher),\n }}\n >\n <six-dropdown distance={13} skidding={20} placement=\"bottom-end\" ref={this.setupAppSwitcher}>\n <div slot=\"trigger\" class=\"six-header__app-switcher-dropdown\">\n <a onClick={this.appNameClicked} class=\"six-header__selected-app\">\n {this.selectedApp}\n </a>\n <six-icon-button name=\"apps\" />\n </div>\n <slot name={Slot.AppSwitcher} />\n </six-dropdown>\n </section>\n );\n\n const profile = this.hasSlot(Slot.Profile) && (\n <section\n class={{\n 'six-header__profile': true,\n 'six-header__profile--open': this.isSectionSelected(Section.Profile),\n }}\n >\n <six-dropdown distance={17} skidding={20} placement=\"bottom-end\" ref={this.setupProfile}>\n <slot name=\"profile-avatar\" slot=\"trigger\" />\n <slot name=\"profile-menu\" />\n </six-dropdown>\n </section>\n );\n\n const logo = this.hasSlot(Slot.Logo) ? (\n <section>\n <slot name=\"logo\" />\n </section>\n ) : (\n <section\n class={{\n 'six-header__logo': true,\n 'six-header__logo--clickable': this.clickableLogo,\n }}\n ref={this.setupLogo}\n >\n <svg height=\"20\" viewBox=\"0 0 90 26\" xmlns=\"http://www.w3.org/2000/svg\">\n <title>SIX</title>\n <g fill=\"#DE3919\" fill-rule=\"nonzero\">\n <path d=\"m22.798 3.869c1.82-2.168 4.549-3.545 7.6-3.545h6.807v4.961h-6.807c-1.526 0-2.89.689-3.8 1.771l-12.19 14.526c-1.82 2.166-4.549 3.545-7.6 3.545h-6.808v-4.961h6.808c1.525 0 2.889-.689 3.799-1.773l12.191-14.525\" />\n <path d=\"m42.16.324h5.21v24.806h-5.21z\" />\n <path d=\"m66.743 3.869l4.195 4.999 4.195-4.999c1.819-2.168 4.549-3.545 7.6-3.545h6.806v4.961h-6.806c-1.526 0-2.89.689-3.8 1.771l-4.758 5.669 4.758 5.669c.91 1.084 2.274 1.773 3.8 1.773h6.806v4.961h-6.806c-3.051 0-5.781-1.379-7.6-3.545l-4.195-4.999-4.195 4.999c-1.82 2.166-4.55 3.545-7.6 3.545h-6.807v-4.961h6.807c1.525 0 2.889-.689 3.799-1.773l4.758-5.669-4.758-5.669c-.91-1.083-2.274-1.771-3.799-1.771h-6.807v-4.961h6.807c3.05 0 5.78 1.378 7.6 3.545\" />\n </g>\n </svg>\n </section>\n );\n\n return (\n <Host>\n <header class=\"six-header\">\n {hamburgerMenu}\n\n {logo}\n\n <section class=\"six-header__placeholder\" />\n\n <section class=\"six-header__custom\">\n <slot />\n </section>\n\n {search}\n\n {notifications}\n\n {appSwitcher}\n\n {profile}\n </header>\n\n <div\n class={{\n 'six-header__search-field': true,\n 'six-header__search-field--visible': this.isSectionSelected(Section.Search),\n 'six-header__search-field--shift-content': this.shiftContent,\n }}\n >\n <slot name={Slot.Search} />\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as t,c as e,h as r,g as o}from"./p-af15381b.js";import{F as i}from"./p-61e66671.js";import{h as a}from"./p-0cebf1d2.js";import{E as s}from"./p-8bfb4bfc.js";const l=':host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}.form-control .form-control__label{display:none}.form-control .form-control__help-text{display:none}.form-control .form-control__error-text{display:none;text-align:left}.form-control--has-label .form-control__label{display:inline-block;color:var(--six-input-label-color);font-weight:var(--six-font-weight-bold);margin-bottom:var(--six-spacing-x-small)}.form-control--has-label .form-control__label__required::after{color:var(--six-color-danger-800);content:"*";transform:scale(1.1);margin-left:var(--six-spacing-xxx-small);position:absolute}.form-control--has-label.form-control--small .form-control__label{font-size:var(--six-input-label-font-size-small)}.form-control--has-label.form-control--medium .form-control__label{font-size:var(--six-input-label-font-size-medium)}.form-control--has-label.form-control--large .form-control_label{font-size:var(--six-input-label-font-size-large)}.form-control--has-help-text .form-control__help-text{display:block;color:var(--six-input-help-text-color);margin-top:var(--six-spacing-x-small)}.form-control--has-help-text .form-control__help-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-help-text.form-control--small .form-control__help-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-help-text.form-control--medium .form-control__help-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-help-text.form-control--large .form-control__help-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--has-error-text .form-control__error-text{display:block;margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text .form-control__error-text ::slotted(*){margin-top:var(--six-spacing-xxx-small)}.form-control--has-error-text.form-control--small .form-control__error-text{font-size:var(--six-input-help-text-font-size-small)}.form-control--has-error-text.form-control--medium .form-control__error-text{font-size:var(--six-input-help-text-font-size-medium)}.form-control--has-error-text.form-control--large .form-control__error-text{font-size:var(--six-input-help-text-font-size-large)}.form-control--disabled .form-control__help-text{color:var(--six-input-help-text-color-disabled)}.form-control--disabled .form-control__label{color:var(--six-input-label-color-disabled)}.form-control--invalid:not(.form-control--disabled) .form-control__label{color:var(--six-input-label-color)}:host{display:block}.textarea{display:flex;align-items:center;position:relative;width:100%;font-family:var(--six-font-family);font-weight:var(--six-input-font-weight);line-height:var(--six-line-height-normal);letter-spacing:var(--six-input-letter-spacing);background-color:var(--six-input-background-color);border:solid var(--six-border-width) var(--six-input-border-color);vertical-align:middle;transition:var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;cursor:text}.textarea:hover:not(.textarea--disabled){background-color:var(--six-input-background-color-hover);border-color:var(--six-input-border-color-hover)}.textarea:hover:not(.textarea--disabled) .textarea__control{color:var(--six-input-color-hover)}.textarea.textarea--focused:not(.textarea--disabled){background-color:var(--six-input-background-color-focus);box-shadow:var(--six-input-focus-shadow);border-color:var(--six-input-border-color-focus);color:var(--six-input-color-focus)}.textarea.textarea--focused:not(.textarea--disabled) .textarea__control{color:var(--six-input-color-focus)}.textarea.textarea--disabled{background-color:var(--six-input-background-color-disabled);border-color:var(--six-input-border-color-disabled);cursor:not-allowed}.textarea.textarea--disabled .textarea__control{color:var(--six-input-color-disabled)}.textarea.textarea--disabled .textarea__control::placeholder{color:var(--six-input-placeholder-color-disabled)}.textarea__control{flex:1 1 auto;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:1.4;color:var(--sl-input-color);border:none;background:none;box-shadow:none;cursor:inherit;-webkit-appearance:none}.textarea__control::-webkit-search-decoration,.textarea__control::-webkit-search-cancel-button,.textarea__control::-webkit-search-results-button,.textarea__control::-webkit-search-results-decoration{-webkit-appearance:none}.textarea__control::placeholder{color:var(--six-input-placeholder-color);user-select:none}.textarea__control:focus{outline:none}.textarea--invalid:not(.textarea--disabled):not(.textarea--focused){border-color:var(--six-input-border-color-danger)}.textarea--small{border-radius:var(--six-input-border-radius-small);font-size:var(--six-input-font-size-small)}.textarea--small .textarea__control{padding:0.5em var(--six-input-spacing-small)}.textarea--medium{border-radius:var(--six-input-border-radius-medium);font-size:var(--six-input-font-size-medium)}.textarea--medium .textarea__control{padding:0.5em var(--six-input-spacing-medium)}.textarea--large{border-radius:var(--six-input-border-radius-large);font-size:var(--six-input-font-size-large)}.textarea--large .textarea__control{padding:0.5em var(--six-input-spacing-large)}.textarea--resize-none .textarea__control{resize:none}.textarea--resize-vertical .textarea__control{resize:vertical}.textarea--resize-auto .textarea__control{height:auto;resize:none}';let n=0;const h=class{constructor(r){t(this,r);this.sixChange=e(this,"six-textarea-change",7);this.sixInput=e(this,"six-textarea-input",7);this.sixFocus=e(this,"six-textarea-focus",7);this.sixBlur=e(this,"six-textarea-blur",7);this.inputId=`textarea-${++n}`;this.labelId=`textarea-label-${n}`;this.helpTextId=`textarea-help-text-${n}`;this.errorTextId=`input-error-text-${n}`;this.eventListeners=new s;this.resizeObserver=new ResizeObserver((()=>this.setTextareaHeight()));this.handleChange=()=>{if(this.nativeTextarea!=null){this.value=this.nativeTextarea.value;this.sixChange.emit()}};this.handleInput=()=>{if(this.nativeTextarea!=null){this.value=this.nativeTextarea.value;this.setTextareaHeight();this.sixInput.emit()}};this.handleBlur=()=>{this.hasFocus=false;this.sixBlur.emit()};this.handleFocus=()=>{this.hasFocus=true;this.sixFocus.emit()};this.handleSlotChange=()=>{this.hasLabelSlot=a(this.host,"label");this.hasHelpTextSlot=a(this.host,"help-text");this.hasErrorTextSlot=a(this.host,"error-text")};this.hasFocus=false;this.hasHelpTextSlot=false;this.hasLabelSlot=false;this.hasErrorTextSlot=false;this.size="medium";this.name="";this.value="";this.helpText="";this.placeholder=undefined;this.rows=4;this.resize="vertical";this.disabled=false;this.readonly=false;this.minlength=undefined;this.maxlength=undefined;this.required=false;this.label="";this.errorText="";this.errorTextCount=undefined;this.invalid=false;this.autocapitalize="off";this.autocorrect="off";this.autocomplete="off";this.autofocus=false;this.spellcheck=false;this.inputmode=undefined}handleLabelChange(){this.handleSlotChange()}handleRowsChange(){this.setTextareaHeight()}handleValueChange(){this.value=this.getValue();if(this.nativeTextarea!=null){if(this.nativeTextarea.value!==this.value){this.nativeTextarea.value=this.value}}}connectedCallback(){var t;(t=this.host.shadowRoot)===null||t===void 0?void 0:t.addEventListener("slotchange",this.handleSlotChange);this.eventListeners.forward("six-textarea-input","input",this.host);this.eventListeners.forward("six-textarea-change","change",this.host);this.eventListeners.forward("six-textarea-focus","focus",this.host);this.eventListeners.forward("six-textarea-blur","blur",this.host)}componentWillLoad(){this.handleSlotChange()}componentDidLoad(){this.setTextareaHeight();if(this.nativeTextarea!=null){this.resizeObserver.observe(this.nativeTextarea)}}disconnectedCallback(){var t;if(this.nativeTextarea!=null){this.resizeObserver.unobserve(this.nativeTextarea)}(t=this.host.shadowRoot)===null||t===void 0?void 0:t.removeEventListener("slotchange",this.handleSlotChange);this.eventListeners.removeAll()}async setFocus(t){var e;(e=this.nativeTextarea)===null||e===void 0?void 0:e.focus(t)}async removeFocus(){var t;(t=this.nativeTextarea)===null||t===void 0?void 0:t.blur()}async select(){var t;return(t=this.nativeTextarea)===null||t===void 0?void 0:t.select()}async setSelectionRange(t,e,r="none"){var o;return(o=this.nativeTextarea)===null||o===void 0?void 0:o.setSelectionRange(t,e,r)}async setRangeText(t,e,r,o="preserve"){if(this.nativeTextarea==null)return;this.nativeTextarea.setRangeText(t,e,r,o);if(this.getValue()!==this.nativeTextarea.value){this.value=this.nativeTextarea.value;this.setTextareaHeight();this.sixChange.emit();this.sixInput.emit()}}setTextareaHeight(){if(this.nativeTextarea==null)return;if(this.resize==="auto"){this.nativeTextarea.style.height="auto";this.nativeTextarea.style.height=this.nativeTextarea.scrollHeight+"px"}else{this.nativeTextarea.style.height=undefined}}getValue(){var t;return((t=this.value)!==null&&t!==void 0?t:"").toString()}render(){return r(i,{inputId:this.inputId,label:this.label,labelId:this.labelId,hasLabelSlot:this.hasLabelSlot,helpTextId:this.helpTextId,helpText:this.helpText,hasHelpTextSlot:this.hasHelpTextSlot,errorTextId:this.errorTextId,errorText:this.errorText,errorTextCount:this.errorTextCount,hasErrorTextSlot:this.hasErrorTextSlot,size:this.size,disabled:this.disabled,required:this.required,displayError:this.invalid},r("div",{part:"base",class:{textarea:true,"textarea--small":this.size==="small","textarea--medium":this.size==="medium","textarea--large":this.size==="large","textarea--disabled":this.disabled,"textarea--focused":this.hasFocus,"textarea--empty":this.getValue().length===0,"textarea--invalid":this.invalid,"textarea--resize-none":this.resize==="none","textarea--resize-vertical":this.resize==="vertical","textarea--resize-auto":this.resize==="auto"}},r("textarea",{part:"textarea",ref:t=>this.nativeTextarea=t,id:this.inputId,class:"textarea__control",name:this.name,placeholder:this.placeholder,disabled:this.disabled,readOnly:this.readonly,rows:this.rows,minLength:this.minlength,maxLength:this.maxlength,value:this.getValue(),autoCapitalize:this.autocapitalize,autoCorrect:this.autocorrect,autoFocus:this.autofocus,spellcheck:this.spellcheck,required:this.required,inputMode:this.inputmode,"aria-labelledby":this.labelId,onChange:this.handleChange,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur})))}get host(){return o(this)}static get watchers(){return{helpText:["handleLabelChange"],errorText:["handleLabelChange"],label:["handleLabelChange"],rows:["handleRowsChange"],value:["handleValueChange"]}}};h.style=l;export{h as six_textarea};
2
- //# sourceMappingURL=p-e8298c6e.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixTextareaCss","id","SixTextarea","this","inputId","labelId","helpTextId","errorTextId","eventListeners","EventListeners","resizeObserver","ResizeObserver","setTextareaHeight","handleChange","nativeTextarea","value","sixChange","emit","handleInput","sixInput","handleBlur","hasFocus","sixBlur","handleFocus","sixFocus","handleSlotChange","hasLabelSlot","hasSlot","host","hasHelpTextSlot","hasErrorTextSlot","handleLabelChange","handleRowsChange","handleValueChange","getValue","connectedCallback","_a","shadowRoot","addEventListener","forward","componentWillLoad","componentDidLoad","observe","disconnectedCallback","unobserve","removeEventListener","removeAll","setFocus","options","focus","removeFocus","blur","select","setSelectionRange","selectionStart","selectionEnd","selectionDirection","setRangeText","replacement","start","end","selectMode","resize","style","height","scrollHeight","undefined","toString","render","h","FormControl","label","helpText","errorText","errorTextCount","size","disabled","required","displayError","invalid","part","class","textarea","length","ref","el","name","placeholder","readOnly","readonly","rows","minLength","minlength","maxLength","maxlength","autoCapitalize","autocapitalize","autoCorrect","autocorrect","autoFocus","autofocus","spellcheck","inputMode","inputmode","onChange","onInput","onFocus","onBlur"],"sources":["src/components/six-textarea/six-textarea.scss?tag=six-textarea&encapsulation=shadow","src/components/six-textarea/six-textarea.tsx"],"sourcesContent":["@import 'src/global/component';\n@import '../../functional-components/form-control/form-control';\n\n:host {\n display: block;\n}\n\n.textarea {\n display: flex;\n align-items: center;\n position: relative;\n width: 100%;\n font-family: var(--six-font-family);\n font-weight: var(--six-input-font-weight);\n line-height: var(--six-line-height-normal);\n letter-spacing: var(--six-input-letter-spacing);\n background-color: var(--six-input-background-color);\n border: solid var(--six-border-width) var(--six-input-border-color);\n vertical-align: middle;\n transition: var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;\n cursor: text;\n\n &:hover:not(.textarea--disabled) {\n background-color: var(--six-input-background-color-hover);\n border-color: var(--six-input-border-color-hover);\n\n .textarea__control {\n color: var(--six-input-color-hover);\n }\n }\n\n &.textarea--focused:not(.textarea--disabled) {\n background-color: var(--six-input-background-color-focus);\n box-shadow: var(--six-input-focus-shadow);\n border-color: var(--six-input-border-color-focus);\n color: var(--six-input-color-focus);\n\n .textarea__control {\n color: var(--six-input-color-focus);\n }\n }\n\n &.textarea--disabled {\n background-color: var(--six-input-background-color-disabled);\n border-color: var(--six-input-border-color-disabled);\n cursor: not-allowed;\n\n .textarea__control {\n color: var(--six-input-color-disabled);\n\n &::placeholder {\n color: var(--six-input-placeholder-color-disabled);\n }\n }\n }\n}\n\n.textarea__control {\n flex: 1 1 auto;\n font-family: inherit;\n font-size: inherit;\n font-weight: inherit;\n line-height: 1.4;\n color: var(--sl-input-color);\n border: none;\n background: none;\n box-shadow: none;\n cursor: inherit;\n -webkit-appearance: none;\n\n &::-webkit-search-decoration,\n &::-webkit-search-cancel-button,\n &::-webkit-search-results-button,\n &::-webkit-search-results-decoration {\n -webkit-appearance: none;\n }\n\n &::placeholder {\n color: var(--six-input-placeholder-color);\n user-select: none;\n }\n\n &:focus {\n outline: none;\n }\n}\n\n.textarea--invalid:not(.textarea--disabled):not(.textarea--focused) {\n border-color: var(--six-input-border-color-danger);\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Size modifiers\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.textarea--small {\n border-radius: var(--six-input-border-radius-small);\n font-size: var(--six-input-font-size-small);\n\n .textarea__control {\n padding: 0.5em var(--six-input-spacing-small);\n }\n}\n\n.textarea--medium {\n border-radius: var(--six-input-border-radius-medium);\n font-size: var(--six-input-font-size-medium);\n\n .textarea__control {\n padding: 0.5em var(--six-input-spacing-medium);\n }\n}\n\n.textarea--large {\n border-radius: var(--six-input-border-radius-large);\n font-size: var(--six-input-font-size-large);\n\n .textarea__control {\n padding: 0.5em var(--six-input-spacing-large);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Resize types\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.textarea--resize-none .textarea__control {\n resize: none;\n}\n\n.textarea--resize-vertical .textarea__control {\n resize: vertical;\n}\n\n.textarea--resize-auto .textarea__control {\n height: auto;\n resize: none;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport FormControl from '../../functional-components/form-control/form-control';\nimport { hasSlot } from '../../utils/slot';\nimport { EventListeners } from '../../utils/event-listeners';\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 label - The textarea's label. Alternatively, you can use the label prop.\n * @slot help-text - Help text that describes how to use the input.\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part base - The component's base wrapper.\n * @part form-control - The form control that wraps the label, textarea, and help text.\n * @part label - The textarea label.\n * @part textarea - The textarea control.\n * @part help-text - The textarea help text.\n */\n@Component({\n tag: 'six-textarea',\n styleUrl: 'six-textarea.scss',\n shadow: true,\n})\nexport class SixTextarea {\n private inputId = `textarea-${++id}`;\n private labelId = `textarea-label-${id}`;\n private helpTextId = `textarea-help-text-${id}`;\n private errorTextId = `input-error-text-${id}`;\n private nativeTextarea?: HTMLTextAreaElement;\n private eventListeners = new EventListeners();\n private resizeObserver = new ResizeObserver(() => this.setTextareaHeight());\n\n @Element() host!: HTMLSixTextareaElement;\n\n @State() hasFocus = false;\n @State() hasHelpTextSlot = false;\n @State() hasLabelSlot = false;\n @State() hasErrorTextSlot = false;\n\n /** The textarea's size. */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** The textarea's name attribute. */\n @Prop({ reflect: true }) name = '';\n\n /** The textarea's value attribute. */\n @Prop({ mutable: true, reflect: true }) value = '';\n\n /** The textarea's help text. Alternatively, you can use the help-text slot. */\n @Prop() helpText = '';\n\n /** The textarea's placeholder text. */\n @Prop() placeholder?: string;\n\n /** The number of rows to display by default. */\n @Prop() rows = 4;\n\n /** Controls how the textarea can be resized. */\n @Prop() resize: 'none' | 'vertical' | 'auto' = 'vertical';\n\n /** Set to true to disable the textarea. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Set to true for a readonly textarea. */\n @Prop({ reflect: true }) readonly = false;\n\n /** The minimum length of input that will be considered valid. */\n @Prop({ reflect: true }) minlength?: number;\n\n /** The maximum length of input that will be considered valid. */\n @Prop({ reflect: true }) maxlength?: number;\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /** The label text. */\n @Prop() label = '';\n\n /** The error message shown, if `invalid` is set to true. */\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 /** 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 textarea's autocaptialize attribute. */\n @Prop() autocapitalize = 'off';\n\n /** The textarea's autocorrect attribute. */\n @Prop() autocorrect: 'on' | 'off' = 'off';\n\n /** The textarea's autocomplete attribute. */\n @Prop() autocomplete = 'off';\n\n /** The textarea's autofocus attribute. */\n @Prop() autofocus = false;\n\n /** The textarea's spellcheck attribute. */\n @Prop() spellcheck = false;\n\n /** The textarea's inputmode attribute. */\n @Prop() inputmode?: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url';\n\n /** Emitted when the control's value changes. Access the new value via event.target.value. */\n @Event({ eventName: 'six-textarea-change' }) sixChange!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control receives input. Access the new value via event.target.value. */\n @Event({ eventName: 'six-textarea-input' }) sixInput!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control gains focus. */\n @Event({ eventName: 'six-textarea-focus' }) sixFocus!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control loses focus. Access the new value via event.target.value. */\n @Event({ eventName: 'six-textarea-blur' }) sixBlur!: EventEmitter<EmptyPayload>;\n\n @Watch('helpText')\n @Watch('errorText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n @Watch('rows')\n handleRowsChange() {\n this.setTextareaHeight();\n }\n\n @Watch('value')\n handleValueChange() {\n this.value = this.getValue();\n if (this.nativeTextarea != null) {\n if (this.nativeTextarea.value !== this.value) {\n this.nativeTextarea.value = this.value;\n }\n }\n }\n\n connectedCallback() {\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.forward('six-textarea-input', 'input', this.host);\n this.eventListeners.forward('six-textarea-change', 'change', this.host);\n this.eventListeners.forward('six-textarea-focus', 'focus', this.host);\n this.eventListeners.forward('six-textarea-blur', 'blur', this.host);\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n componentDidLoad() {\n this.setTextareaHeight();\n if (this.nativeTextarea != null) {\n this.resizeObserver.observe(this.nativeTextarea);\n }\n }\n\n disconnectedCallback() {\n if (this.nativeTextarea != null) {\n this.resizeObserver.unobserve(this.nativeTextarea);\n }\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.removeAll();\n }\n\n /** Sets focus on the textarea. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.nativeTextarea?.focus(options);\n }\n\n /** Removes focus fromt the textarea. */\n @Method()\n async removeFocus() {\n this.nativeTextarea?.blur();\n }\n\n /** Selects all the text in the input. */\n @Method()\n async select() {\n return this.nativeTextarea?.select();\n }\n\n /** Sets the start and end positions of the text selection (0-based). */\n @Method()\n async setSelectionRange(\n selectionStart: number,\n selectionEnd: number,\n selectionDirection: 'forward' | 'backward' | 'none' = 'none'\n ) {\n return this.nativeTextarea?.setSelectionRange(selectionStart, selectionEnd, selectionDirection);\n }\n\n /** Replaces a range of text with a new string. */\n @Method()\n async setRangeText(\n replacement: string,\n start: number,\n end: number,\n selectMode: 'select' | 'start' | 'end' | 'preserve' = 'preserve'\n ) {\n if (this.nativeTextarea == null) return;\n\n this.nativeTextarea.setRangeText(replacement, start, end, selectMode);\n if (this.getValue() !== this.nativeTextarea.value) {\n this.value = this.nativeTextarea.value;\n this.setTextareaHeight();\n this.sixChange.emit();\n this.sixInput.emit();\n }\n }\n\n private handleChange = () => {\n if (this.nativeTextarea != null) {\n this.value = this.nativeTextarea.value;\n this.sixChange.emit();\n }\n };\n\n private handleInput = () => {\n if (this.nativeTextarea != null) {\n this.value = this.nativeTextarea.value;\n this.setTextareaHeight();\n this.sixInput.emit();\n }\n };\n\n private handleBlur = () => {\n this.hasFocus = false;\n this.sixBlur.emit();\n };\n\n private handleFocus = () => {\n this.hasFocus = true;\n this.sixFocus.emit();\n };\n\n private handleSlotChange = () => {\n this.hasLabelSlot = hasSlot(this.host, 'label');\n this.hasHelpTextSlot = hasSlot(this.host, 'help-text');\n this.hasErrorTextSlot = hasSlot(this.host, 'error-text');\n };\n\n private setTextareaHeight() {\n if (this.nativeTextarea == null) return;\n\n if (this.resize === 'auto') {\n this.nativeTextarea.style.height = 'auto';\n this.nativeTextarea.style.height = this.nativeTextarea.scrollHeight + 'px';\n } else {\n (this.nativeTextarea.style.height as string | undefined) = undefined;\n }\n }\n\n private getValue(): string {\n return (this.value ?? '').toString();\n }\n\n render() {\n return (\n <FormControl\n inputId={this.inputId}\n label={this.label}\n labelId={this.labelId}\n hasLabelSlot={this.hasLabelSlot}\n helpTextId={this.helpTextId}\n helpText={this.helpText}\n hasHelpTextSlot={this.hasHelpTextSlot}\n errorTextId={this.errorTextId}\n errorText={this.errorText}\n errorTextCount={this.errorTextCount}\n hasErrorTextSlot={this.hasErrorTextSlot}\n size={this.size}\n disabled={this.disabled}\n required={this.required}\n displayError={this.invalid}\n >\n <div\n part=\"base\"\n class={{\n textarea: true,\n\n // Sizes\n 'textarea--small': this.size === 'small',\n 'textarea--medium': this.size === 'medium',\n 'textarea--large': this.size === 'large',\n\n // States\n 'textarea--disabled': this.disabled,\n 'textarea--focused': this.hasFocus,\n 'textarea--empty': this.getValue().length === 0,\n 'textarea--invalid': this.invalid,\n\n // Modifiers\n 'textarea--resize-none': this.resize === 'none',\n 'textarea--resize-vertical': this.resize === 'vertical',\n 'textarea--resize-auto': this.resize === 'auto',\n }}\n >\n <textarea\n part=\"textarea\"\n ref={(el) => (this.nativeTextarea = el)}\n id={this.inputId}\n class=\"textarea__control\"\n name={this.name}\n placeholder={this.placeholder}\n disabled={this.disabled}\n readOnly={this.readonly}\n rows={this.rows}\n minLength={this.minlength}\n maxLength={this.maxlength}\n value={this.getValue()}\n autoCapitalize={this.autocapitalize}\n autoCorrect={this.autocorrect}\n autoFocus={this.autofocus}\n spellcheck={this.spellcheck}\n required={this.required}\n inputMode={this.inputmode}\n aria-labelledby={this.labelId}\n onChange={this.handleChange}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n </div>\n </FormControl>\n );\n }\n}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixInputCss","ICON_SIZES","large","medium","small","id","SixInput","this","inputId","labelId","helpTextId","errorTextId","eventListeners","EventListeners","handleChange","event","stopPropagation","nativeInput","value","sixChange","emit","handleInput","sixInput","handleBlur","hasFocus","sixBlur","handleFocus","sixFocus","handleClearClick","sixClear","focus","handleKeyDown","hasModifier","metaKey","ctrlKey","shiftKey","altKey","key","setTimeout","defaultPrevented","isComposing","submitForm","host","handlePasswordToggle","isPasswordVisible","handleSlotChange","hasHelpTextSlot","hasSlot","hasLabelSlot","hasErrorSlot","handleLabelChange","handleValueChange","getValue","connectedCallback","_a","shadowRoot","addEventListener","forward","componentWillLoad","disconnectedCallback","removeEventListener","removeAll","setFocus","options","removeFocus","blur","select","setSelectionRange","selectionStart","selectionEnd","selectionDirection","setRangeText","replacement","start","end","selectMode","toString","render","h","FormControl","label","helpText","errorText","errorTextCount","hasErrorTextSlot","size","disabled","required","displayError","invalid","part","class","input","line","pill","dropdownSearch","length","name","ref","el","input__control","input__control__prefix","type","placeholder","readonly","minLength","minlength","maxLength","maxlength","min","max","step","autoCapitalize","autocapitalize","autoComplete","autocomplete","autoCorrect","autocorrect","autoFocus","autofocus","spellcheck","pattern","inputMode","inputmode","onChange","onInput","onFocus","onBlur","onKeyDown","clearable","onClick","tabindex","togglePassword"],"sources":["src/components/six-input/six-input.scss?tag=six-input&encapsulation=shadow","src/components/six-input/six-input.tsx"],"sourcesContent":["@import 'src/global/component';\n@import '../../functional-components/form-control/form-control';\n\n:host {\n display: block;\n}\n\n.input {\n display: inline-flex;\n align-items: stretch;\n justify-content: start;\n position: relative;\n width: 100%;\n font-family: var(--six-font-family);\n font-weight: var(--six-input-font-weight);\n letter-spacing: var(--six-input-letter-spacing);\n background-color: var(--six-input-background-color);\n border: solid var(--six-border-width) var(--six-input-border-color);\n vertical-align: middle;\n overflow: hidden;\n transition: var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;\n cursor: text;\n\n &--line {\n border: none;\n border-bottom: solid var(--six-border-width) var(--six-input-border-color);\n }\n\n &:hover:not(.input--disabled) {\n background-color: var(--six-input-background-color-hover);\n border-color: var(--six-input-border-color-hover);\n\n .input__control {\n color: var(--six-input-color-hover);\n }\n }\n\n &:hover.input--dropdown-search {\n border-color: transparent;\n }\n\n &--dropdown-search {\n border-color: transparent;\n }\n\n &--dropdown-search.input--focused {\n border-color: var(--six-input-border-color);\n }\n\n &.input--focused:not(.input--disabled) {\n background-color: var(--six-input-background-color-focus);\n\n border-bottom-color: var(--six-input-border-color-focus);\n box-shadow: 0 1px 0 0 var(--six-input-border-color-focus);\n\n &:not(.input--line) {\n border-color: var(--six-input-border-color-focus);\n box-shadow: var(--six-input-focus-shadow);\n }\n\n .input__control {\n color: var(--six-input-color-focus);\n }\n }\n\n &.input--disabled {\n background-color: var(--six-input-background-color-disabled);\n border-color: var(--six-input-border-color-disabled);\n cursor: not-allowed;\n\n .input__control {\n color: var(--six-input-color-disabled);\n\n &::placeholder {\n color: var(--six-input-placeholder-color-disabled);\n }\n }\n }\n\n &.input--invalid:not(.input--disabled):not(.input--focused) {\n border-bottom-color: var(--six-input-border-color-danger);\n\n &:not(.input--line) {\n border-color: var(--six-input-border-color-danger);\n }\n }\n}\n\n.input__control {\n flex: 1 1 auto;\n font-family: inherit;\n font-size: inherit;\n font-weight: inherit;\n min-width: 0;\n color: var(--six-input-color);\n border: none;\n background: none;\n box-shadow: none;\n padding: 0;\n margin: 0;\n cursor: inherit;\n -webkit-appearance: none;\n\n &::-webkit-search-decoration,\n &::-webkit-search-cancel-button,\n &::-webkit-search-results-button,\n &::-webkit-search-results-decoration {\n -webkit-appearance: none;\n }\n\n &:-webkit-autofill,\n &:-webkit-autofill:hover,\n &:-webkit-autofill:focus,\n &:-webkit-autofill:active {\n box-shadow: 0 0 0 var(--six-height-large) var(--six-input-background-color-hover) inset !important;\n -webkit-text-fill-color: var(--six-color-primary-500);\n }\n\n &::placeholder {\n color: var(--six-input-placeholder-color);\n user-select: none;\n }\n\n &:focus {\n outline: none;\n }\n\n &::-ms-reveal {\n display: none;\n }\n}\n\n.input__prefix,\n.input__suffix {\n display: inline-flex;\n flex: 0 0 auto;\n align-items: center;\n cursor: default;\n\n ::slotted(six-icon) {\n color: var(--six-input-icon-color);\n }\n}\n\n.input {\n &.input--disabled {\n ::slotted(six-icon) {\n cursor: not-allowed;\n }\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Size modifiers\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.input--small {\n border-radius: var(--six-input-border-radius-small);\n font-size: var(--six-input-font-size-small);\n height: var(--six-height-small);\n\n .input__control {\n height: calc(var(--six-height-small) - var(--six-border-width) * 2);\n margin: 0 var(--six-input-spacing-small);\n }\n\n .input__control__prefix {\n margin: 0 var(--six-input-prefix-spacing-small);\n }\n\n .input__clear,\n .input__password-toggle {\n margin-right: var(--six-input-spacing-small);\n }\n\n .input__prefix ::slotted(*) {\n margin-left: var(--six-input-prefix-spacing-small);\n }\n\n .input__suffix ::slotted(*) {\n margin-right: var(--six-input-prefix-spacing-small);\n }\n}\n\n.input--medium {\n border-radius: var(--six-input-border-radius-medium);\n font-size: var(--six-input-font-size-medium);\n height: var(--six-height-medium);\n\n .input__control {\n height: calc(var(--six-height-medium) - var(--six-border-width) * 2);\n margin: 0 var(--six-input-spacing-medium);\n }\n\n .input__control__prefix {\n margin: 0 var(--six-input-prefix-spacing-medium);\n }\n\n .input__clear,\n .input__password-toggle {\n margin-right: var(--six-input-spacing-medium);\n }\n\n .input__prefix ::slotted(*) {\n margin-left: var(--six-input-prefix-spacing-medium);\n }\n\n .input__suffix ::slotted(*) {\n margin-right: var(--six-input-prefix-spacing-medium);\n }\n}\n\n.input--large {\n border-radius: var(--six-input-border-radius-large);\n font-size: var(--six-input-font-size-large);\n height: var(--six-height-large);\n\n .input__control {\n height: calc(var(--six-height-large) - var(--six-border-width) * 2);\n margin: 0 var(--six-input-spacing-large);\n }\n\n .input__control__prefix {\n margin: 0 var(--six-input-prefix-spacing-large);\n }\n\n .input__clear,\n .input__password-toggle {\n margin-right: var(--six-input-spacing-large);\n }\n\n .input__prefix ::slotted(*) {\n margin-left: var(--six-input-prefix-spacing-large);\n }\n\n .input__suffix ::slotted(*) {\n margin-right: var(--six-input-prefix-spacing-large);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Pill modifier\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.input--pill {\n &.input--small {\n border-radius: var(--six-height-small);\n }\n\n &.input--medium {\n border-radius: var(--six-height-medium);\n }\n\n &.input--large {\n border-radius: var(--six-height-large);\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Clearable + Password Toggle\n////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n.input__clear,\n.input__password-toggle {\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\n.input--empty .input__clear {\n visibility: hidden;\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport FormControl from '../../functional-components/form-control/form-control';\nimport { hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { submitForm } from '../../utils/form';\n\nconst ICON_SIZES: Record<'small' | 'medium' | 'large', 'xSmall' | 'small' | 'medium'> = {\n large: 'medium',\n medium: 'small',\n small: 'xSmall',\n};\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 label - The input's label. Alternatively, you can use the label prop.\n * @slot prefix - Used to prepend an icon or similar element to the input.\n * @slot suffix - Used to append an icon or similar element to the input.\n * @slot clear-icon - An icon to use in lieu of the default clear icon.\n * @slot show-password-icon - An icon to use in lieu of the default show password icon.\n * @slot hide-password-icon - An icon to use in lieu of the default hide password icon.\n * @slot help-text - Help text that describes how to use the input. Alternatively, you can use the help-text prop.\n * @slot error-text - Error text that is shown when the status is set to invalid. Alternatively, you can use the error-text prop.\n *\n * @part base - The component's base wrapper.\n * @part form-control - The form control that wraps the label, input, error-text and help-text.\n * @part label - The input label.\n * @part input - The input control.\n * @part prefix - The input prefix container.\n * @part clear-button - The clear button.\n * @part password-toggle-button - The password toggle button.\n * @part suffix - The input suffix container.\n * @part help-text - The input help text.\n * @part error-text - The input error text.\n */\n\n@Component({\n tag: 'six-input',\n styleUrl: 'six-input.scss',\n shadow: true,\n})\nexport class SixInput {\n private inputId = `input-${++id}`;\n private labelId = `input-label-${id}`;\n private helpTextId = `input-help-text-${id}`;\n private errorTextId = `input-error-text-${id}`;\n private nativeInput?: HTMLInputElement;\n private eventListeners = new EventListeners();\n\n @Element() host!: HTMLSixInputElement;\n\n @State() hasFocus = false;\n @State() hasHelpTextSlot = false;\n @State() hasLabelSlot = false;\n @State() hasErrorSlot = false;\n @State() isPasswordVisible = false;\n\n /** The input's type. */\n @Prop({ reflect: true }) type: 'email' | 'number' | 'password' | 'search' | 'tel' | 'text' | 'url' = 'text';\n\n /** The input's size. */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n\n /** The input's name attribute. */\n @Prop({ reflect: true }) name = '';\n\n /** The input's value attribute. */\n @Prop({ mutable: true, reflect: true }) value = '';\n\n /** Set to true to draw a pill-style input with rounded edges. */\n @Prop({ reflect: true }) pill = false;\n\n /** The input's help text. Alternatively, you can use the help-text slot. */\n @Prop() helpText = '';\n\n /** The input's placeholder text. */\n @Prop() placeholder?: string;\n\n /** Set to true to disable the input. */\n @Prop({ reflect: true }) disabled = false;\n\n /** Set to true to make the input readonly. */\n @Prop({ reflect: true }) readonly = false;\n\n /** The minimum length of input that will be considered valid. */\n @Prop({ reflect: true }) minlength?: number;\n\n /** The maximum length of input that will be considered valid. */\n @Prop({ reflect: true }) maxlength?: number;\n\n /** The input's minimum value. */\n @Prop({ reflect: true }) min?: number;\n\n /** The input's maximum value. */\n @Prop({ reflect: true }) max?: number;\n\n /** The input's step attribute. */\n @Prop({ reflect: true }) step?: number;\n\n /** A pattern to validate input against. */\n @Prop({ reflect: true }) pattern?: string;\n\n /**\n * Internal: Styles the input for the dropdown filter search.\n */\n @Prop() dropdownSearch = false;\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /** The input's autocaptialize attribute. */\n @Prop() autocapitalize = 'off';\n\n /** The input's autocorrect attribute. */\n @Prop() autocorrect: 'on' | 'off' = 'off';\n\n /** The input's autocomplete attribute. */\n @Prop() autocomplete = 'off';\n\n /** The input's autofocus attribute. */\n @Prop() autofocus = false;\n\n /** Enables spell checking on the input. */\n @Prop() spellcheck = false;\n\n /** The label text. */\n @Prop() label = '';\n\n /** The error message shown, if `invalid` is set to true. */\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 /** 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 /** Set to true to add a clear button when the input is populated. */\n @Prop() clearable = false;\n\n /** Set to true to add a password toggle button for password inputs. */\n @Prop() togglePassword = false;\n\n /** The input's inputmode attribute. */\n @Prop() inputmode?: 'none' | 'text' | 'decimal' | 'numeric' | 'tel' | 'search' | 'email' | 'url';\n\n /** Set to render as line */\n @Prop() line = false;\n\n @Watch('helpText')\n @Watch('errorText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n @Watch('value')\n handleValueChange() {\n this.value = this.getValue();\n if (this.nativeInput != null && this.nativeInput.value !== this.value) {\n this.nativeInput.value = this.value;\n }\n }\n\n /** Emitted when the control's value changes. Access the new value via event.target.value. */\n @Event({ eventName: 'six-input-change' }) sixChange!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the clear button is activated. */\n @Event({ eventName: 'six-input-clear' }) sixClear!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control receives input. Access the new value via event.target.value. */\n @Event({ eventName: 'six-input-input' }) sixInput!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control gains focus. */\n @Event({ eventName: 'six-input-focus' }) sixFocus!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control loses focus. Access the new value via event.target.value. */\n @Event({ eventName: 'six-input-blur' }) sixBlur!: EventEmitter<EmptyPayload>;\n\n connectedCallback() {\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.forward('six-input-input', 'input', this.host);\n this.eventListeners.forward('six-input-change', 'change', this.host);\n this.eventListeners.forward('six-input-focus', 'focus', this.host);\n this.eventListeners.forward('six-input-blur', 'blur', this.host);\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n disconnectedCallback() {\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.removeAll();\n }\n\n /** Sets focus on the input. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.nativeInput?.focus(options);\n }\n\n /** Removes focus from the input. */\n @Method()\n async removeFocus() {\n this.nativeInput?.blur();\n }\n\n /** Selects all the text in the input. */\n @Method()\n async select() {\n return this.nativeInput?.select();\n }\n\n /** Sets the start and end positions of the text selection (0-based). */\n @Method()\n async setSelectionRange(\n selectionStart: number,\n selectionEnd: number,\n selectionDirection: 'forward' | 'backward' | 'none' = 'none'\n ) {\n return this.nativeInput?.setSelectionRange(selectionStart, selectionEnd, selectionDirection);\n }\n\n /** Replaces a range of text with a new string. */\n @Method()\n async setRangeText(\n replacement: string,\n start: number,\n end: number,\n selectMode: 'select' | 'start' | 'end' | 'preserve' = 'preserve'\n ) {\n if (this.nativeInput == null) {\n return;\n }\n this.nativeInput.setRangeText(replacement, start, end, selectMode);\n if (this.getValue() !== this.nativeInput.value) {\n this.value = this.nativeInput.value;\n this.sixChange.emit();\n this.sixInput.emit();\n }\n }\n\n private handleChange = (event: Event) => {\n event.stopPropagation();\n if (this.nativeInput != null) {\n this.value = this.nativeInput.value;\n this.sixChange.emit();\n }\n };\n\n private handleInput = (event: Event) => {\n event.stopPropagation();\n if (this.nativeInput != null) {\n this.value = this.nativeInput.value;\n this.sixInput.emit();\n }\n };\n\n private handleBlur = () => {\n this.hasFocus = false;\n this.sixBlur.emit();\n };\n\n private handleFocus = () => {\n this.hasFocus = true;\n this.sixFocus.emit();\n };\n\n private handleClearClick = (event: MouseEvent) => {\n this.value = '';\n this.sixClear.emit();\n this.sixInput.emit();\n this.sixChange.emit();\n if (this.nativeInput != null) {\n this.nativeInput.focus();\n }\n event.stopPropagation();\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n const hasModifier = event.metaKey || event.ctrlKey || event.shiftKey || event.altKey;\n if (event.key === 'Enter' && !hasModifier) {\n setTimeout(() => {\n if (!event.defaultPrevented && !event.isComposing) {\n submitForm(this.host);\n }\n });\n }\n };\n\n private handlePasswordToggle = () => {\n this.isPasswordVisible = !this.isPasswordVisible;\n };\n\n private handleSlotChange = () => {\n this.hasHelpTextSlot = hasSlot(this.host, 'help-text');\n this.hasLabelSlot = hasSlot(this.host, 'label');\n this.hasErrorSlot = hasSlot(this.host, 'error-text');\n };\n\n private getValue(): string {\n return (this.value ?? '').toString();\n }\n\n render() {\n return (\n <FormControl\n inputId={this.inputId}\n label={this.label}\n labelId={this.labelId}\n hasLabelSlot={this.hasLabelSlot}\n helpTextId={this.helpTextId}\n helpText={this.helpText}\n hasHelpTextSlot={this.hasHelpTextSlot}\n errorTextId={this.errorTextId}\n errorText={this.errorText}\n errorTextCount={this.errorTextCount}\n hasErrorTextSlot={this.hasErrorSlot}\n size={this.size}\n disabled={this.disabled}\n required={this.required}\n displayError={this.invalid}\n >\n <div\n part=\"base\"\n class={{\n input: true,\n\n // Sizes\n 'input--small': this.size === 'small',\n 'input--medium': this.size === 'medium',\n 'input--large': this.size === 'large',\n\n // States\n 'input--line': this.line,\n 'input--pill': this.pill,\n 'input--disabled': this.disabled,\n 'input--dropdown-search': this.dropdownSearch,\n 'input--focused': this.hasFocus,\n 'input--empty': this.getValue().length === 0,\n 'input--invalid': this.invalid,\n }}\n >\n <span part=\"prefix\" class=\"input__prefix\">\n <slot name=\"prefix\" />\n </span>\n\n <input\n part=\"input\"\n ref={(el) => (this.nativeInput = el)}\n id={this.inputId}\n size={1} // needed for firefox to overrule the default of 20\n class={{\n input__control: true,\n input__control__prefix: hasSlot(this.host, 'prefix'),\n }}\n type={this.type === 'password' && this.isPasswordVisible ? 'text' : this.type}\n name={this.name}\n placeholder={this.placeholder}\n disabled={this.disabled}\n readonly={this.readonly}\n minLength={this.minlength}\n maxLength={this.maxlength}\n min={this.min}\n max={this.max}\n step={this.step}\n value={this.getValue()}\n autoCapitalize={this.autocapitalize}\n autoComplete={this.autocomplete}\n autoCorrect={this.autocorrect}\n autoFocus={this.autofocus}\n spellcheck={this.spellcheck}\n pattern={this.pattern}\n required={this.required}\n inputMode={this.inputmode}\n aria-labelledby={this.labelId}\n aria-describedby={this.helpTextId}\n aria-invalid={this.invalid ? 'true' : 'false'}\n onChange={this.handleChange}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onKeyDown={this.handleKeyDown}\n data-testid=\"input-control\"\n />\n\n {this.clearable && (\n <button\n part=\"clear-button\"\n class=\"input__clear\"\n type=\"button\"\n onClick={this.handleClearClick}\n tabindex=\"-1\"\n data-testid=\"input-clear-button\"\n >\n <slot name=\"clear-icon\">\n <six-icon size={ICON_SIZES[this.size]}>clear</six-icon>\n </slot>\n </button>\n )}\n\n {this.togglePassword && (\n <button\n part=\"password-toggle-button\"\n class=\"input__password-toggle\"\n type=\"button\"\n onClick={this.handlePasswordToggle}\n tabindex=\"-1\"\n >\n {this.isPasswordVisible ? (\n <slot name=\"show-password-icon\">\n <six-icon size={ICON_SIZES[this.size]}>visibility_off</six-icon>\n </slot>\n ) : (\n <slot name=\"hide-password-icon\">\n <six-icon size={ICON_SIZES[this.size]}>visibility</six-icon>\n </slot>\n )}\n </button>\n )}\n\n <span part=\"suffix\" class=\"input__suffix\">\n <slot name=\"suffix\" />\n </span>\n </div>\n </FormControl>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as i,h as e}from"./p-af15381b.js";const t=':host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:inline-flex;vertical-align:middle}.material-icons{vertical-align:middle;font-weight:normal;font-style:normal;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga";user-select:none}.material-icons-filled{font-family:"Material Icons"}.material-icons-outlined{font-family:"Material Icons Outlined"}.icon--xsmall{font-size:12px}.icon--small{font-size:18px}.icon--medium{font-size:24px}.icon--large{font-size:36px}.icon--xlarge{font-size:48px}.icon--xxlarge{font-size:72px}.icon--xxxlarge{font-size:96px}.icon--inherit{font-size:1.5em}';const o=class{constructor(e){i(this,e);this.size="inherit";this.filled=false}render(){return e("i",{class:{"material-icons":true,"material-icons-outlined":!this.filled,"material-icons-filled":this.filled,"icon--xsmall":this.size==="xSmall","icon--small":this.size==="small","icon--medium":this.size==="medium","icon--large":this.size==="large","icon--xlarge":this.size==="xLarge","icon--xxlarge":this.size==="xxLarge","icon--xxxlarge":this.size==="xxxLarge","icon--inherit":this.size==="inherit"}},e("slot",null))}};o.style=t;export{o as six_icon};
2
- //# sourceMappingURL=p-ed61b75c.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixIconCss","SixIcon","render","h","class","this","filled","size"],"sources":["src/components/six-icon/six-icon.scss?tag=six-icon&encapsulation=shadow","src/components/six-icon/six-icon.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: inline-flex;\n vertical-align: middle;\n}\n\n.material-icons {\n vertical-align: middle;\n font-weight: normal;\n font-style: normal;\n text-transform: none;\n letter-spacing: normal;\n word-wrap: normal;\n white-space: nowrap;\n direction: ltr;\n\n /* Support for all WebKit browsers. */\n -webkit-font-smoothing: antialiased;\n /* Support for Safari and Chrome. */\n text-rendering: optimizeLegibility;\n\n /* Support for Firefox. */\n -moz-osx-font-smoothing: grayscale;\n\n /* Support for IE. */\n font-feature-settings: 'liga';\n\n /* Icon name should not be selectable. */\n user-select: none;\n}\n\n.material-icons-filled {\n font-family: 'Material Icons';\n}\n\n.material-icons-outlined {\n font-family: 'Material Icons Outlined';\n}\n\n.icon {\n &--xsmall {\n font-size: 12px;\n }\n\n &--small {\n font-size: 18px;\n }\n\n &--medium {\n font-size: 24px;\n }\n\n &--large {\n font-size: 36px;\n }\n\n &--xlarge {\n font-size: 48px;\n }\n\n &--xxlarge {\n font-size: 72px;\n }\n\n &--xxxlarge {\n font-size: 96px;\n }\n\n &--inherit {\n font-size: 1.5em;\n }\n}\n","import { Component, h, Prop } from '@stencil/core';\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define the material icon name.\n */\n\n@Component({\n tag: 'six-icon',\n styleUrls: ['six-icon.scss'],\n shadow: true,\n})\nexport class SixIcon {\n /** The icon's size. */\n @Prop({ reflect: true }) size:\n | 'inherit'\n | 'xSmall'\n | 'small'\n | 'medium'\n | 'large'\n | 'xLarge'\n | 'xxLarge'\n | 'xxxLarge' = 'inherit';\n\n /** If set to true the default material outlined icons are not used. */\n @Prop() filled = false;\n\n render() {\n return (\n <i\n class={{\n 'material-icons': true,\n 'material-icons-outlined': !this.filled,\n 'material-icons-filled': this.filled,\n 'icon--xsmall': this.size === 'xSmall',\n 'icon--small': this.size === 'small',\n 'icon--medium': this.size === 'medium',\n 'icon--large': this.size === 'large',\n 'icon--xlarge': this.size === 'xLarge',\n 'icon--xxlarge': this.size === 'xxLarge',\n 'icon--xxxlarge': this.size === 'xxxLarge',\n 'icon--inherit': this.size === 'inherit',\n }}\n >\n <slot></slot>\n </i>\n );\n }\n}\n"],"mappings":"2CAAA,MAAMA,EAAa,szB,MCcNC,EAAO,M,mCAUD,U,YAGA,K,CAEjB,MAAAC,GACE,OACEC,EAAA,KACEC,MAAO,CACL,iBAAkB,KAClB,2BAA4BC,KAAKC,OACjC,wBAAyBD,KAAKC,OAC9B,eAAgBD,KAAKE,OAAS,SAC9B,cAAeF,KAAKE,OAAS,QAC7B,eAAgBF,KAAKE,OAAS,SAC9B,cAAeF,KAAKE,OAAS,QAC7B,eAAgBF,KAAKE,OAAS,SAC9B,gBAAiBF,KAAKE,OAAS,UAC/B,iBAAkBF,KAAKE,OAAS,WAChC,gBAAiBF,KAAKE,OAAS,YAGjCJ,EAAA,a"}
@@ -1,2 +0,0 @@
1
- import{h as t,r as e,c as i,g as s}from"./p-af15381b.js";import{E as r}from"./p-8bfb4bfc.js";import{D as n,d as o,a}from"./p-a1502802.js";import{h}from"./p-0cebf1d2.js";import{m as l,c as d,a as c,b as u}from"./p-f136a6b2.js";const p=t=>typeof t==="string";const m=t=>t==null;const b={en:{months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],monthsShortGrouped:[["Jan","Feb","Mar","Apr"],["May","Jun","Jul","Aug"],["Sep","Oct","Nov","Dec"]],weekdays:["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],weekdaysShort:["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],weekdaysMin:["Mo","Tu","We","Th","Fr","Sa","Su"]},de:{months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],monthsShort:["Jan.","Feb.","März","Apr.","Mai","Juni","Juli","Aug.","Sep.","Okt.","Nov.","Dez."],monthsShortGrouped:[["Jan.","Feb.","März","Apr."],["Mai","Juni","Juli","Aug."],["Sep.","Okt.","Nov.","Dez."]],weekdays:["Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag","Sonntag"],weekdaysShort:["Mo.","Di.","Mi.","Do.","Fr.","Sa.","So."],weekdaysMin:["Mo","Di","Mi","Do","Fr","Sa","So"]},fr:{months:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],monthsShort:["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],monthsShortGrouped:[["janv.","févr.","mars","avr."],["mai","juin","juil.","août"],["sept.","oct.","nov.","déc."]],weekdays:["lundi","mardi","mercredi","jeudi","vendredi","samedi","dimanche"],weekdaysShort:["lun.","mar.","mer.","jeu.","ven.","sam.","dim."],weekdaysMin:["lu","ma","me","je","ve","sa","di"]},it:{months:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],monthsShort:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],monthsShortGrouped:[["gen","feb","mar","apr"],["mag","giu","lug","ago"],["set","ott","nov","dic"]],weekdays:["lunedì","martedì","mercoledì","giovedì","venerdì","sabato","domenica"],weekdaysShort:["lun","mar","mer","gio","ven","sab","dom"],weekdaysMin:["lu","ma","me","gi","ve","sa","do"]}};const f=()=>new Date;const y=t=>new Date(t.getFullYear(),t.getMonth(),t.getDate());const v=t=>t instanceof Date&&!isNaN(t.getTime())&&new Date(t).toString()!=="Invalid Date";const k=t=>{if(t&&v(t)){return t.getFullYear()}throw new Error("Not a valid date")};const g=t=>{if(t&&v(t)){return t.getMonth()}throw new Error("Not a valid date")};const w=t=>{if(t&&v(t)){return t.getDate()}throw new Error("Not a valid date")};const x=t=>{if(t&&v(t)){return t.getHours()}throw new Error("Not a valid date")};const _=t=>{if(t&&v(t)){return t.getMinutes()}throw new Error("Not a valid date")};const M=t=>{if(t&&v(t)){return t.getSeconds()}throw new Error("Not a valid date")};const D=t=>{const e=[6,0,1,2,3,4,5];const i=new Date(t);i.setDate(i.getDate()-e[i.getDay()]);return i};const S=(t,e)=>(t===null||t===void 0?void 0:t.getFullYear())===(e===null||e===void 0?void 0:e.getFullYear());const j=(t,e)=>S(t,e)&&(t===null||t===void 0?void 0:t.getMonth())===(e===null||e===void 0?void 0:e.getMonth());const C=(t,e)=>j(t,e)&&(t===null||t===void 0?void 0:t.getDate())===(e===null||e===void 0?void 0:e.getDate());const O=(t,e)=>C(D(t),D(e));const z=(t,e)=>{if(!p(t)||!p(e)){return false}if(t.length<6||e.length<6){return false}const{day:i,month:s}=U(t,e);if(i>31||s>11||i<=0||s<0){return false}const r=X(t,e);if(m(r)){return false}return r.toString()!=="Invalid Date"};const F=(t,e,i)=>{if(!t){return true}if(e&&t<e){return false}if(i&&i<t){return false}return true};const J=(t,e,i,s=2)=>{const r=s-1;const n=e.charAt(t+r)===i;const o=t+r<e.length;return o&&n};const N=(t,e)=>{let i=String(t);while(i.length<e){i="0"+i}return i};const A=(t,e)=>{if(t==null){return""}let i="";for(let s=0;s<e.length;s++){switch(e.charAt(s)){case"d":if(J(s,e,"d")){i+=N(t.getDate(),2);s++}else{i+=String(t.getDate())}break;case"m":if(J(s,e,"m")){i+=N(t.getMonth()+1,2);s++}else{i+=String(t.getMonth()+1)}break;case"y":if(J(s,e,"y",4)){s+=3;i+=t.getFullYear()}else{i+=(t.getFullYear()%100<10?"0":"")+t.getFullYear()%100;s++}break;case"h":if(J(s,e,"h")){i+=N(t.getHours(),2);s++}else{i+=String(t.getHours())}break;case"M":if(J(s,e,"M")){i+=N(t.getMinutes(),2);s++}else{i+=String(t.getMinutes())}break;case"s":if(J(s,e,"s")){i+=N(t.getSeconds(),2);s++}else{i+=String(t.getSeconds())}break;default:i+=e.charAt(s)}}return i};const E=/(\[[^\[]*\])|(mm|dd|yyyy|yy|hh|MM|ss|.)/g;const T=/\d\d/;const P=/\d{4}/;const B=/[^0-9]/g;const G="year";const I="month";const L="day";const Y="hour";const H="minute";const W="second";const q={};const R=(t,e,i)=>{const s=Array.isArray(t)?t:[t];let r;if(typeof i==="string"){r=t=>{const e=parseInt(t,10);return{[i]:e}}}else{r=i}s.forEach((t=>{q[t]=[e,r]}))};R("yy",T,(t=>{const e=(new Date).getFullYear();const i=Math.floor(e/100);let s=parseInt(t,10);s=(s>68?i-1:i)*100+s;return{[G]:s}}));R("yyyy",P,G);R("mm",T,(t=>({[I]:parseInt(t,10)-1})));R("dd",T,L);R("hh",T,Y);R("MM",T,H);R("ss",T,W);const V=(t,e=new Date)=>{const i=[0,0,1,0,0,0];const s=[e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds()];let r=true;for(let e=0;e<7;e++){if(t[e]===undefined){i[e]=r?s[e]:i[e]}else{i[e]=t[e];r=false}}return i};const $=(t,e,i,s,r,n)=>{if(!(t<100&&t>=0)){return new Date(t,e,i,s,r,n)}const o=new Date(t+400,e,i,s,r,n);if(isFinite(o.getFullYear())){o.setFullYear(t)}return o};const K=(t,e)=>{const i=e.match(E);if(!i){throw new Error}const{length:s}=i;let r={};for(let e=0;e<s;e+=1){const s=i[e];const n=q[s];if(!n){const e=s.replace(/^\[|\]$/g,"");if(t.indexOf(e)===0){t=t.substr(e.length)}else{throw new Error("not match")}}else{const e=n[0];const i=n[1];const s=(e.exec(t)||[])[0];const o=i(s);r=Object.assign(Object.assign({},r),o);t=t.replace(s,"")}}return r};const Q=(t,e)=>{if(t.length===e.length){return t}const i=t.match(B)[0];return t.split(i).map((t=>t.length===1?"0"+t:t)).join(i)};const U=(t,e)=>{const i=Q(t,e);return K(i,e)};const X=(t,e)=>{try{const{backupDate:i=new Date}={};const{year:s,month:r,day:n,hour:o,minute:a,second:h,date:l}=U(t,e);if(l!=null){return l}const d=[s,r,n,o,a,h];const c=V(d,i);return $(...c)}catch(t){return new Date(NaN)}};const Z=t=>{const{firstDateOfBox:e,allowedDates:i,dateFormat:s,selectedDate:r,minDate:n,maxDate:o,pointerDate:a}=t;const h=new Date(e);const l=new Date(e);let d=[];do{let t=[];do{t=[...t,{date:new Date(l),display:A(l,s),dateString:A(l,s),label:w(l).toString(),isToday:C(l,f()),isSelected:r&&C(l,r),isDisabled:!i(l)||!F(l,n,o),isOutdated:a.month!==l.getMonth()||!F(l,n,o)}];l.setDate(l.getDate()+1)}while(O(l,h));d=[...d,t];h.setDate(h.getDate()+7)}while(j(new Date(a.year,a.month,a.day),l));return d};function tt(t,e){const i=5;return[...Array(e).keys()].map((i=>i+t-Math.floor(e/2))).reduce(((t,e,s)=>{if(s%i===0){t.push([])}t[t.length-1].push(e);return t}),[])}var et;(function(t){t["DDMMYYY_DOT"]="dd.mm.yyyy";t["YYYYMMDD_DASH"]="yyyy-mm-dd";t["DDMMYYYY_DASH"]="dd-mm-yyyy";t["DDMMYYYY_SLASH"]="dd/mm/yyyy";t["YYYYMMDD_SLASH"]="yyyy/mm/dd";t["DDMMYY_DOT"]="dd.mm.yy";t["YYMMDD_DASH"]="yy-mm-dd";t["DDMMYY_DASH"]="dd-mm-yy";t["DDMMYY_SLASH"]="dd/mm/yy";t["YYMMDD_SLASH"]="yy/mm/dd";t["DDMMYYY_DOT_TIME"]="dd.mm.yyyy hh:MM:ss";t["YYYYMMDD_DASH_TIME"]="yyyy-mm-dd hh:MM:ss";t["DDMMYYYY_DASH_TIME"]="dd-mm-yyyy hh:MM:ss";t["DDMMYYYY_SLASH_TIME"]="dd/mm/yyyy hh:MM:ss";t["YYYYMMDD_SLASH_TIME"]="yyyy/mm/dd hh:MM:ss";t["DDMMYY_DOT_TIME"]="dd.mm.yy hh:MM:ss";t["YYMMDD_DASH_TIME"]="yy-mm-dd hh:MM:ss";t["DDMMYY_DASH_TIME"]="dd-mm-yy hh:MM:ss";t["DDMMYY_SLASH_TIME"]="dd/mm/yy hh:MM:ss";t["YYMMDD_SLASH_TIME"]="yy/mm/dd hh:MM:ss"})(et||(et={}));const it=e=>{const i=e.locale;const s=t=>i.monthsShort[f().getMonth()]===t;const r=t=>{var s;return((s=e.selectedDate)===null||s===void 0?void 0:s.getMonth())===i.monthsShort.findIndex((e=>e===t))};return t("table",{class:"datepicker-table",part:"month-selection"},t("tbody",null,i.monthsShortGrouped.map((i=>t("tr",{class:"datepicker-table__row"},i.map((i=>t("td",{onClick:()=>e.onClickMonthCell(i),class:{"datepicker-table__cell":true,"datepicker-table__cell--is-today":s(i),"datepicker-table__cell--is-selected":r(i)}},i))))))))};const st=e=>t("table",{class:"datepicker-table",part:"day-selection"},t("thead",{part:"weekday-header"},e.locale.weekdaysMin.map((e=>t("th",{class:"datepicker__cell"},e)))),t("tbody",null,e.calendarGrid.map((i=>t("tr",{class:"datepicker-table__row"},i.map((i=>t("td",{"data-date":i.dateString,onClick:()=>e.onClickDateCell(i),class:{"datepicker-table__cell":true,"datepicker-table__cell--is-today":i.isToday,"datepicker-table__cell--is-selected":i.isSelected,"datepicker-table__cell--is-outdated":i.isOutdated,"datepicker-table__cell--is-disabled":i.isDisabled,"datepicker-table__cell--is-selectable":!i.isDisabled}},i.label))))))));const rt=e=>t("table",{class:"datepicker-table",part:"year-selection"},t("tbody",null,e.yearSelection.map((i=>t("tr",{class:"datepicker-table__row"},i.map((i=>{var s;return t("td",{onClick:()=>e.onClickYearCell(i),class:{"datepicker-table__cell":true,"datepicker-table__cell--is-today":f().getFullYear()===i,"datepicker-table__cell--is-selected":((s=e.selectedDate)===null||s===void 0?void 0:s.getFullYear())===i}},i)})))))));const nt=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:block;font-family:var(--six-font-family)}.datepicker__container{position:relative}.datepicker__popup{min-width:400px;background-color:white;padding:0.5em 0.5em 1.5em;box-shadow:0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);user-select:none;position:absolute;z-index:var(--six-z-index-dropdown);right:0;left:0}.datepicker__popup--is-up{bottom:100%;min-height:382px}.datepicker__popup--is-inline{position:initial;box-shadow:none;border:1px solid var(--six-color-web-rock-400)}.datepicker-header{display:flex;justify-content:space-between;border-bottom:1px solid var(--six-color-web-rock-400);padding:0.5em;margin-bottom:1em}.datepicker-header svg{fill:var(--six-color-web-rock-900);stroke:none}.datepicker-header__btn{cursor:pointer;width:2.5em;height:2.5em;display:flex;vertical-align:middle;align-items:center;justify-content:center}.datepicker-header__btn:hover{background-color:var(--six-color-web-rock-100);border-radius:100%}.datepicker-header__label{display:flex}.datepicker-header__label>div{cursor:pointer;padding:0.5em;display:flex;vertical-align:middle;align-items:center;justify-content:center}.datepicker-header__label>div:hover{background-color:var(--six-color-web-rock-100)}.datepicker-table{width:100%}.datepicker-table__cell{text-align:center;width:2.5rem;height:2.5rem;cursor:pointer}.datepicker-table__cell:hover{background-color:var(--six-color-web-rock-100)}.datepicker-table__cell--is-today{border:1px solid var(--six-color-web-rock-400)}.datepicker-table__cell--is-selected{background-color:var(--six-color-red);color:var(--six-color-white)}.datepicker-table__cell--is-disabled{background-color:var(--six-color-web-rock-200);cursor:initial}.datepicker-table__cell--is-disabled:hover{background-color:var(--six-color-web-rock-200)}.datepicker-table__cell--is-outdated{color:var(--six-color-web-rock-400)}.datepicker-clear{display:inline-flex;align-items:center;font-size:inherit;color:var(--six-input-icon-color);border:none;background:none;padding:0;transition:var(--six-transition-fast) color;cursor:pointer}.datepicker-clear:hover{color:var(--six-input-icon-color-hover)}.datepicker-clear:focus{outline:none}.datepicker-clear--right{right:0;position:absolute}.datepicker-clear--left{right:35px;position:absolute}.input--empty .datepicker-clear{visibility:hidden}.prefix{cursor:pointer}.prefix--right{right:0;display:inline-flex;position:absolute;font-size:inherit;color:var(--six-input-icon-color);border:none;background:none;margin-right:var(--six-input-spacing-medium);transition:var(--six-transition-fast) color}six-timepicker::part(popup){border:none;padding:0.5em 0.5em 0;min-height:0}";const ot=25;const at=400;var ht;(function(t){t["DAY"]="day";t["MONTH"]="month";t["YEAR"]="year"})(ht||(ht={}));const lt=class{constructor(t){e(this,t);this.sixSelect=i(this,"six-datepicker-select",7);this.sixClear=i(this,"six-datepicker-clear",7);this.sixBlur=i(this,"six-datepicker-blur",7);this.eventListeners=new r;this.previousUnit=()=>{if(this.selectionMode===ht.DAY){this.previousMonth()}else if(this.selectionMode===ht.MONTH){this.previousYear()}else if(this.selectionMode===ht.YEAR){this.previousYearGroup()}};this.nextUnit=()=>{if(this.selectionMode===ht.DAY){this.nextMonth()}else if(this.selectionMode===ht.MONTH){this.nextYear()}else if(this.selectionMode===ht.YEAR){this.nextYearGroup()}};this.handleDocumentKeyDown=t=>{var e;const i=t;if(this.open&&i.key==="Escape"){i.stopPropagation();this.closePopup();void((e=this.inputElement)===null||e===void 0?void 0:e.setFocus())}if(i.key==="Tab"){this.closePopup()}};this.handleDocumentMouseDown=t=>{const e=t.composedPath();if(!e.includes(this.container)){this.closePopup();return}};this.handleClearClick=async t=>{t.stopPropagation();await this.select(undefined);this.sixClear.emit()};this.onTimepickerChange=t=>{const e=t.detail.value;const i=new Date;if(this.selectedDate!=null){i.setFullYear(this.selectedDate.getFullYear(),this.selectedDate.getMonth(),this.selectedDate.getDate())}if(e!=null){const t=e.hours;const s=e.minutes;const r=e.seconds;if(t!=null){i.setHours(t,s,r)}}this.updateValue(i);this.updatePointerDates()};this.onClickDateCell=t=>{if(!t.isDisabled){void this.select(t.dateString)}};this.onClickMonthCell=t=>{const e=b[this.locale].monthsShort.findIndex((e=>e===t));this.pointerDate=Object.assign(Object.assign({},this.pointerDate),{month:e});this.selectionMode=ht.DAY};this.onClickYearCell=t=>{this.pointerDate=Object.assign(Object.assign({},this.pointerDate),{year:t});this.selectionMode=ht.DAY};this.handleInputChange=t=>{if(this.inputElement==null){return}t.stopPropagation();const e=this.inputElement.value;if(!z(e,this.dateFormat)){return}const i=X(e,this.dateFormat);if(i===undefined){return}this.updateIfChanged(i);const s=e.replace(/[^\d]/g,"");if(s.length>=6){const t=X(e,this.dateFormat);const i=A(t,this.dateFormat);if(z(i,this.dateFormat)){this.selectedDate=X(i,this.dateFormat);this.updatePointerDates();this.updateValue(this.selectedDate)}}};this.handleOnBlur=t=>{var e,i;if(((e=this.inputElement)===null||e===void 0?void 0:e.value)===""&&v(this.value)){this.value=undefined;this.sixSelect.emit(this.value)}t.stopPropagation();const s=(i=this.inputElement)===null||i===void 0?void 0:i.value;const r=X(s,this.dateFormat);const n=A(this.value,this.dateFormat);if(this.inputElement!=null&&r!=null&&s!==n){this.inputElement.value=n}this.sixBlur.emit(this.value)};this.pointerDate=lt.getCurrentDateAsPointer();this.selectionMode=ht.DAY;this.isDropDownContentUp=false;this.type="date";this.locale="en";this.open=false;this.inline=false;this.readonly=false;this.disabled=false;this.allowedDates=()=>true;this.min=undefined;this.max=undefined;this.closeOnSelect=this.type==="date";this.placement=undefined;this.size="medium";this.required=false;this.defaultDate=undefined;this.placeholder=undefined;this.value=undefined;this.label="";this.errorText="";this.errorTextCount=undefined;this.invalid=false;this.containingElement=undefined;this.dateFormat=et.DDMMYYY_DOT;this.debounce=n;this.name="";this.clearable=false;this.iconPosition="left";this.hoist=false}debounceChanged(){this.sixSelect=o(this.sixSelect,this.debounce)}valueChanged(){if(this.value!=null&&!v(this.value)){console.warn("invalid date value: ",this.value);this.value=undefined;this.sixSelect.emit(this.value)}this.selectedDate=this.value;this.updatePointerDates()}async resizeHandler(){this.updateDropdownDirection();this.moveOpenHoistedPopup();this.adjustPopupPosition()}async scrollHandler(){this.updateDropdownDirection();this.moveOpenHoistedPopup()}moveOpenHoistedPopup(){l(this.hoist,this.open,this.popup,this.inputElement,this.wrapper,at)}get container(){return this.containingElement||this.host}get firstDateOfBox(){const t=new Date(this.pointerDate.year,this.pointerDate.month,1);return D(t)}async setFocus(t){var e;(e=this.inputElement)===null||e===void 0?void 0:e.setFocus(t)}get calendarGrid(){return Z({firstDateOfBox:this.firstDateOfBox,allowedDates:this.allowedDates,dateFormat:this.dateFormat,locale:this.locale,selectedDate:this.selectedDate,minDate:this.min,maxDate:this.max,pointerDate:this.pointerDate})}updateDropdownDirection(){if(this.inputElement==null||this.wrapper==null){return}this.isDropDownContentUp=d(this.inputElement,this.wrapper,at)}getMonthStringForIndex(t){return b[this.locale].months[t]}previousYear(){this.pointerDate=Object.assign(Object.assign({},this.pointerDate),{year:this.pointerDate.year-1})}previousYearGroup(){this.pointerDate=Object.assign(Object.assign({},this.pointerDate),{year:this.pointerDate.year-ot})}previousMonth(){if(this.pointerDate.month===0){this.pointerDate={year:this.pointerDate.year-1,month:11,day:1,hours:0,minutes:0,seconds:0}}else{this.pointerDate={year:this.pointerDate.year,month:this.pointerDate.month-1,day:1,hours:0,minutes:0,seconds:0}}}nextMonth(){if(this.pointerDate.month===11){this.pointerDate={year:this.pointerDate.year+1,month:0,day:1,hours:0,minutes:0,seconds:0}}else{this.pointerDate={year:this.pointerDate.year,month:this.pointerDate.month+1,day:1,hours:0,minutes:0,seconds:0}}}nextYear(){this.pointerDate=Object.assign(Object.assign({},this.pointerDate),{year:this.pointerDate.year+1})}nextYearGroup(){this.pointerDate=Object.assign(Object.assign({},this.pointerDate),{year:this.pointerDate.year+ot})}openCalendar(){if(!this.open&&!this.disabled){this.open=true;this.setupEventListenersForOpenPopup()}}setupEventListenersForOpenPopup(){this.eventListeners.add(document,"keydown",this.handleDocumentKeyDown);this.eventListeners.add(document,"mousedown",this.handleDocumentMouseDown)}closePopup(){if(this.inline){return}this.open=false;this.eventListeners.remove(document,"keydown",this.handleDocumentKeyDown);this.eventListeners.remove(document,"mousedown",this.handleDocumentMouseDown);this.selectionMode=ht.DAY}updatePointerDates(){const t=this.getPointerDate();if(this.differsFromPointerDate(t)){this.pointerDate={year:k(t),month:g(t),day:w(t),hours:x(t),minutes:_(t),seconds:M(t)}}}differsFromPointerDate(t){return this.pointerDate.day!==w(t)||this.pointerDate.month!==g(t)||this.pointerDate.year!==k(t)||this.pointerDate.hours!==x(t)||this.pointerDate.minutes!==_(t)||this.pointerDate.seconds!==M(t)}getPointerDate(){if(this.selectedDate!==undefined&&this.selectedDate!==null){return this.selectedDate}if(this.defaultDate==null){return this.type==="date"?y(f()):f()}else{return X(this.defaultDate,this.dateFormat)}}updateValue(t){this.updateIfChanged(t)}updateIfChanged(t){var e;if(((e=this.value)===null||e===void 0?void 0:e.getTime())===(t===null||t===void 0?void 0:t.getTime())){return}this.value=t;this.sixSelect.emit(this.value)}async select(t){if(t==null){this.updateValue(undefined)}else{const e=X(t,this.dateFormat);e===null||e===void 0?void 0:e.setHours(this.pointerDate.hours,this.pointerDate.minutes,this.pointerDate.seconds);this.updateValue(e)}this.updatePointerDates();if(this.closeOnSelect){this.closePopup()}}componentWillLoad(){this.selectedDate=this.value;this.updatePointerDates();this.updateValue(this.value);if(this.inline){this.open=true}if(this.open){this.setupEventListenersForOpenPopup()}}componentDidLoad(){if(this.inputElement!=null){this.eventListeners.add(this.inputElement,"six-input-input",a(this.handleInputChange,this.debounce));this.eventListeners.add(this.inputElement,"six-input-blur",this.handleOnBlur)}}componentDidRender(){this.adjustPopupPosition()}renderHeader(){return t("header",{class:"datepicker-header",part:"header"},t("div",{class:"datepicker-header__btn prev",onClick:this.previousUnit},t("svg",{viewBox:"0 5 13 13",width:"14",height:"23"},t("path",{d:"M11.67 3.87L9.9 2.1 0 12l9.9 9.9 1.77-1.77L3.54 12z"}))),t("div",{class:"datepicker-header__label"},this.selectionMode===ht.DAY&&t("div",{onClick:()=>this.selectionMode=ht.MONTH},t("span",{class:"datepicker-header__label-month"},this.getMonthStringForIndex(this.pointerDate.month)),t("span",null,t("svg",{viewBox:"-3 -4 24 24",width:"20",height:"20"},t("polyline",{points:"6 9 12 15 18 9"})))),this.selectionMode!==ht.YEAR&&t("div",{onClick:()=>this.selectionMode=ht.YEAR},t("span",{class:"datepicker-header__label-year"},this.pointerDate.year),t("span",null,t("svg",{viewBox:"-3 -4 24 24",width:"20",height:"20"},t("polyline",{points:"6 9 12 15 18 9"})))),this.selectionMode===ht.YEAR&&t("div",null,this.pointerDate.year-Math.floor(ot/2)," –"," ",this.pointerDate.year+Math.floor(ot/2))),t("div",{class:"datepicker-header__btn next",onClick:this.nextUnit},t("svg",{viewBox:"5 5 13 13",width:"14",height:"23"},t("path",{d:"M5.88 4.12L13.76 12l-7.88 7.88L8 22l10-10L8 2z"}))))}renderBody(){switch(this.selectionMode){case ht.DAY:return t(st,{locale:b[this.locale],calendarGrid:this.calendarGrid,onClickDateCell:this.onClickDateCell});case ht.MONTH:return t(it,{locale:b[this.locale],selectedDate:this.selectedDate,onClickMonthCell:this.onClickMonthCell});case ht.YEAR:return t(rt,{selectedDate:this.selectedDate,yearSelection:tt(this.pointerDate.year,ot),onClickYearCell:this.onClickYearCell})}}renderCustomIcon(){const e=h(this.host,"custom-icon")?t("slot",{name:"custom-icon"}):t("six-icon",{size:this.size==="large"?"medium":this.size},"today");return t("span",{slot:"prefix",part:"icon",class:{prefix:true,"prefix--right":this.iconPosition==="right"}},e)}renderClearable(){return this.clearable&&t("button",{slot:"suffix",class:{"datepicker-clear":true,"datepicker-clear--right":this.iconPosition==="left","datepicker-clear--left":this.iconPosition==="right"},type:"button",onClick:this.handleClearClick,tabindex:"-1"},t("six-icon",{size:"small"},"clear"))}render(){var e,i,s;this.adjustPopupPosition();return t("div",{ref:t=>this.wrapper=t,class:"datepicker__container"},t("six-input",{part:"base",value:A(this.value,this.dateFormat),ref:t=>this.inputElement=t,placeholder:this.placeholder,readonly:this.readonly,disabled:this.disabled,name:this.name,label:this.label,required:this.required,errorText:this.errorText,errorTextCount:this.errorTextCount,invalid:this.invalid,onClick:()=>this.openCalendar(),size:this.size,class:{"input--empty":this.value==null}},this.renderCustomIcon(),this.renderClearable(),h(this.host,"label")?t("span",{slot:"label"},t("slot",{name:"label"})):null,h(this.host,"error-text")?t("span",{slot:"error-text"},t("slot",{name:"error-text"})):null),this.open&&t("div",{part:"popup",ref:t=>this.popup=t,class:{datepicker__popup:true,"datepicker__popup--is-up":this.placement!=null?this.placement==="top":this.isDropDownContentUp,"datepicker__popup--is-inline":this.inline}},this.renderHeader(),this.renderBody(),this.type==="date-time"&&t("six-timepicker",{inline:true,"onSix-timepicker-change-debounced":t=>this.onTimepickerChange(t),value:((e=this.selectedDate)===null||e===void 0?void 0:e.getHours())+":"+((i=this.selectedDate)===null||i===void 0?void 0:i.getMinutes())+":"+((s=this.selectedDate)===null||s===void 0?void 0:s.getSeconds())}),t("div",{class:"datepicker__footer"},t("slot",null))))}adjustPopupPosition(){c(this.hoist,this.popup,this.inputElement,this.wrapper,at,(t=>this.isDropDownContentUp=t));u(this.popup)}connectedCallback(){this.eventListeners.forward("six-datepicker-select","change",this.host);this.eventListeners.forward("six-datepicker-blur","blur",this.host)}disconnectedCallback(){this.eventListeners.removeAll()}static getCurrentDateAsPointer(){return{year:k(f()),month:g(f()),day:w(f()),hours:x(f()),minutes:_(f()),seconds:M(f())}}get host(){return s(this)}static get watchers(){return{debounce:["debounceChanged"],value:["valueChanged"]}}};lt.style=nt;export{lt as six_datepicker};
2
- //# sourceMappingURL=p-ee872c04.entry.js.map