@six-group/ui-library 0.0.0-insider.82e5ea2 → 0.0.0-insider.83aa3dc

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 (427) hide show
  1. package/dist/cjs/{form-control-b6ca8224.js → form-control-de259450.js} +2 -2
  2. package/dist/cjs/{form-control-b6ca8224.js.map → form-control-de259450.js.map} +1 -1
  3. package/dist/cjs/{index-5bfcf88b.js → index-1f707a55.js} +465 -10
  4. package/dist/cjs/index-1f707a55.js.map +1 -0
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/six-alert.cjs.entry.js +1 -1
  7. package/dist/cjs/six-avatar.cjs.entry.js +2 -2
  8. package/dist/cjs/six-badge.cjs.entry.js +3 -3
  9. package/dist/cjs/six-button.cjs.entry.js +5 -4
  10. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  11. package/dist/cjs/six-card.cjs.entry.js +2 -2
  12. package/dist/cjs/six-checkbox_2.cjs.entry.js +7 -7
  13. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +1 -1
  14. package/dist/cjs/six-datepicker.cjs.entry.js +13 -11
  15. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  16. package/dist/cjs/six-details.cjs.entry.js +4 -4
  17. package/dist/cjs/six-dialog.cjs.entry.js +3 -3
  18. package/dist/cjs/six-drawer.cjs.entry.js +3 -3
  19. package/dist/cjs/six-dropdown_2.cjs.entry.js +14 -5
  20. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  21. package/dist/cjs/six-error-page.cjs.entry.js +2 -2
  22. package/dist/cjs/six-error.cjs.entry.js +3 -3
  23. package/dist/cjs/six-error.cjs.entry.js.map +1 -1
  24. package/dist/cjs/six-file-list-item.cjs.entry.js +1 -1
  25. package/dist/cjs/six-file-list.cjs.entry.js +2 -2
  26. package/dist/cjs/six-file-upload.cjs.entry.js +27 -6
  27. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  28. package/dist/cjs/six-footer.cjs.entry.js +2 -2
  29. package/dist/cjs/six-group-label.cjs.entry.js +3 -3
  30. package/dist/cjs/six-header.cjs.entry.js +22 -15
  31. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  32. package/dist/cjs/six-icon-button.cjs.entry.js +4 -4
  33. package/dist/cjs/six-icon.cjs.entry.js +3 -3
  34. package/dist/cjs/six-input.cjs.entry.js +15 -6
  35. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  36. package/dist/cjs/six-item-picker.cjs.entry.js +1 -1
  37. package/dist/cjs/six-language-switcher.cjs.entry.js +8 -4
  38. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  39. package/dist/cjs/six-layout-grid.cjs.entry.js +2 -2
  40. package/dist/cjs/six-main-container.cjs.entry.js +2 -2
  41. package/dist/cjs/six-menu-divider.cjs.entry.js +2 -2
  42. package/dist/cjs/six-menu-label.cjs.entry.js +2 -2
  43. package/dist/cjs/six-picto.cjs.entry.js +2 -2
  44. package/dist/cjs/six-progress-bar.cjs.entry.js +3 -3
  45. package/dist/cjs/six-progress-ring.cjs.entry.js +2 -2
  46. package/dist/cjs/six-radio.cjs.entry.js +3 -3
  47. package/dist/cjs/six-range.cjs.entry.js +4 -4
  48. package/dist/cjs/six-root.cjs.entry.js +2 -2
  49. package/dist/cjs/six-search-field.cjs.entry.js +2 -2
  50. package/dist/cjs/six-select.cjs.entry.js +68 -43
  51. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  52. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +2 -2
  53. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  54. package/dist/cjs/six-sidebar-item.cjs.entry.js +3 -3
  55. package/dist/cjs/six-sidebar.cjs.entry.js +3 -3
  56. package/dist/cjs/six-spinner.cjs.entry.js +1 -1
  57. package/dist/cjs/six-stage-indicator.cjs.entry.js +1 -1
  58. package/dist/cjs/six-switch.cjs.entry.js +4 -4
  59. package/dist/cjs/six-tab-group.cjs.entry.js +3 -3
  60. package/dist/cjs/six-tab-panel.cjs.entry.js +2 -2
  61. package/dist/cjs/six-tab.cjs.entry.js +3 -3
  62. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  63. package/dist/cjs/six-tag.cjs.entry.js +3 -3
  64. package/dist/cjs/six-textarea.cjs.entry.js +5 -5
  65. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  66. package/dist/cjs/six-tile.cjs.entry.js +4 -4
  67. package/dist/cjs/six-timepicker.cjs.entry.js +1 -1
  68. package/dist/cjs/six-tooltip.cjs.entry.js +3 -3
  69. package/dist/cjs/ui-library.cjs.js +3 -3
  70. package/dist/cjs/ui-library.cjs.js.map +1 -1
  71. package/dist/collection/assets/TRADEMARKS.md +3 -3
  72. package/dist/collection/collection-manifest.json +2 -2
  73. package/dist/collection/components/six-avatar/six-avatar.js +1 -1
  74. package/dist/collection/components/six-badge/six-badge.js +2 -2
  75. package/dist/collection/components/six-button/six-button.css +17 -0
  76. package/dist/collection/components/six-button/six-button.js +5 -4
  77. package/dist/collection/components/six-button/six-button.js.map +1 -1
  78. package/dist/collection/components/six-card/six-card.js +1 -1
  79. package/dist/collection/components/six-checkbox/six-checkbox.css +2 -0
  80. package/dist/collection/components/six-checkbox/six-checkbox.js +2 -2
  81. package/dist/collection/components/six-datepicker/six-datepicker.js +12 -10
  82. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  83. package/dist/collection/components/six-details/six-details.js +3 -3
  84. package/dist/collection/components/six-dialog/six-dialog.js +2 -2
  85. package/dist/collection/components/six-drawer/six-drawer.js +2 -2
  86. package/dist/collection/components/six-error/six-error.css +1 -0
  87. package/dist/collection/components/six-error/six-error.js +1 -1
  88. package/dist/collection/components/six-error-page/six-error-page.js +1 -1
  89. package/dist/collection/components/six-file-list/six-file-list.js +1 -1
  90. package/dist/collection/components/six-file-upload/six-file-upload.css +3 -0
  91. package/dist/collection/components/six-file-upload/six-file-upload.js +64 -5
  92. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  93. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +114 -6
  94. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -1
  95. package/dist/collection/components/six-footer/six-footer.js +1 -1
  96. package/dist/collection/components/six-group-label/six-group-label.js +1 -1
  97. package/dist/collection/components/six-header/six-header.css +9 -0
  98. package/dist/collection/components/six-header/six-header.js +38 -13
  99. package/dist/collection/components/six-header/six-header.js.map +1 -1
  100. package/dist/collection/components/six-icon/six-icon.js +2 -2
  101. package/dist/collection/components/six-icon-button/six-icon-button.js +3 -3
  102. package/dist/collection/components/six-input/six-input.css +1 -0
  103. package/dist/collection/components/six-input/six-input.js +40 -4
  104. package/dist/collection/components/six-input/six-input.js.map +1 -1
  105. package/dist/collection/components/six-language-switcher/six-language-switcher.css +4 -0
  106. package/dist/collection/components/six-language-switcher/six-language-switcher.js +6 -2
  107. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  108. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +12 -12
  109. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -1
  110. package/dist/collection/components/six-layout-grid/six-layout-grid.js +1 -1
  111. package/dist/collection/components/six-main-container/six-main-container.js +1 -1
  112. package/dist/collection/components/six-menu/six-menu.js +13 -4
  113. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  114. package/dist/collection/components/six-menu/test/six-menu.spec.js +1 -1
  115. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -1
  116. package/dist/collection/components/six-menu-divider/six-menu-divider.js +1 -1
  117. package/dist/collection/components/six-menu-item/six-menu-item.js +2 -2
  118. package/dist/collection/components/six-menu-label/six-menu-label.js +1 -1
  119. package/dist/collection/components/six-picto/six-picto.js +1 -1
  120. package/dist/collection/components/six-progress-bar/six-progress-bar.js +2 -2
  121. package/dist/collection/components/six-progress-ring/six-progress-ring.js +1 -1
  122. package/dist/collection/components/six-radio/six-radio.js +2 -2
  123. package/dist/collection/components/six-range/six-range.js +2 -2
  124. package/dist/collection/components/six-root/six-root.js +1 -1
  125. package/dist/collection/components/six-search-field/six-search-field.js +1 -1
  126. package/dist/collection/components/six-select/six-select.js +33 -41
  127. package/dist/collection/components/six-select/six-select.js.map +1 -1
  128. package/dist/collection/components/six-select/test/util.spec.js +23 -1
  129. package/dist/collection/components/six-select/test/util.spec.js.map +1 -1
  130. package/dist/collection/components/six-select/util.js +24 -0
  131. package/dist/collection/components/six-select/util.js.map +1 -1
  132. package/dist/collection/components/six-sidebar/six-sidebar.js +2 -2
  133. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +2 -2
  134. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +1 -0
  135. package/dist/collection/components/six-switch/six-switch.js +2 -2
  136. package/dist/collection/components/six-tab/six-tab.js +2 -2
  137. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  138. package/dist/collection/components/six-tab-group/six-tab-group.js +2 -2
  139. package/dist/collection/components/six-tab-panel/six-tab-panel.js +1 -1
  140. package/dist/collection/components/six-tag/six-tag.js +2 -2
  141. package/dist/collection/components/six-textarea/six-textarea.css +5 -0
  142. package/dist/collection/components/six-textarea/six-textarea.js +2 -2
  143. package/dist/collection/components/six-tile/six-tile.js +3 -3
  144. package/dist/collection/components/six-tooltip/six-tooltip.js +2 -2
  145. package/dist/components/six-avatar.js +1 -1
  146. package/dist/components/six-badge.js +2 -2
  147. package/dist/components/six-button2.js +4 -3
  148. package/dist/components/six-button2.js.map +1 -1
  149. package/dist/components/six-card.js +1 -1
  150. package/dist/components/six-checkbox2.js +3 -3
  151. package/dist/components/six-checkbox2.js.map +1 -1
  152. package/dist/components/six-datepicker.js +12 -10
  153. package/dist/components/six-datepicker.js.map +1 -1
  154. package/dist/components/six-details2.js +3 -3
  155. package/dist/components/six-dialog.js +2 -2
  156. package/dist/components/six-drawer.js +2 -2
  157. package/dist/components/six-error-page.js +1 -1
  158. package/dist/components/six-error2.js +2 -2
  159. package/dist/components/six-error2.js.map +1 -1
  160. package/dist/components/six-file-list.js +1 -1
  161. package/dist/components/six-file-upload.js +38 -8
  162. package/dist/components/six-file-upload.js.map +1 -1
  163. package/dist/components/six-footer.js +1 -1
  164. package/dist/components/six-group-label.js +1 -1
  165. package/dist/components/six-header.js +22 -14
  166. package/dist/components/six-header.js.map +1 -1
  167. package/dist/components/six-icon-button2.js +3 -3
  168. package/dist/components/six-icon2.js +2 -2
  169. package/dist/components/six-input2.js +14 -4
  170. package/dist/components/six-input2.js.map +1 -1
  171. package/dist/components/six-language-switcher.js +7 -3
  172. package/dist/components/six-language-switcher.js.map +1 -1
  173. package/dist/components/six-layout-grid.js +1 -1
  174. package/dist/components/six-main-container.js +1 -1
  175. package/dist/components/six-menu-divider.js +1 -1
  176. package/dist/components/six-menu-item2.js +2 -2
  177. package/dist/components/six-menu-label.js +1 -1
  178. package/dist/components/six-menu2.js +13 -4
  179. package/dist/components/six-menu2.js.map +1 -1
  180. package/dist/components/six-picto2.js +1 -1
  181. package/dist/components/six-progress-bar.js +2 -2
  182. package/dist/components/six-progress-ring.js +1 -1
  183. package/dist/components/six-radio.js +2 -2
  184. package/dist/components/six-range.js +2 -2
  185. package/dist/components/six-root.js +1 -1
  186. package/dist/components/six-search-field.js +1 -1
  187. package/dist/components/six-select.js +66 -41
  188. package/dist/components/six-select.js.map +1 -1
  189. package/dist/components/six-sidebar-item-group.js +1 -1
  190. package/dist/components/six-sidebar-item-group.js.map +1 -1
  191. package/dist/components/six-sidebar-item.js +2 -2
  192. package/dist/components/six-sidebar.js +2 -2
  193. package/dist/components/six-switch.js +2 -2
  194. package/dist/components/six-tab-group.js +2 -2
  195. package/dist/components/six-tab-panel.js +1 -1
  196. package/dist/components/six-tab.js +2 -2
  197. package/dist/components/six-tab.js.map +1 -1
  198. package/dist/components/six-tag.js +2 -2
  199. package/dist/components/six-textarea.js +3 -3
  200. package/dist/components/six-textarea.js.map +1 -1
  201. package/dist/components/six-tile.js +3 -3
  202. package/dist/components/six-tooltip2.js +2 -2
  203. package/dist/components.json +160 -14
  204. package/dist/esm/{form-control-5d3cf9d4.js → form-control-30c5bd8b.js} +2 -2
  205. package/dist/esm/{form-control-5d3cf9d4.js.map → form-control-30c5bd8b.js.map} +1 -1
  206. package/dist/esm/{index-d415464d.js → index-5390c1d6.js} +465 -10
  207. package/dist/esm/index-5390c1d6.js.map +1 -0
  208. package/dist/esm/loader.js +3 -3
  209. package/dist/esm/six-alert.entry.js +1 -1
  210. package/dist/esm/six-avatar.entry.js +2 -2
  211. package/dist/esm/six-badge.entry.js +3 -3
  212. package/dist/esm/six-button.entry.js +5 -4
  213. package/dist/esm/six-button.entry.js.map +1 -1
  214. package/dist/esm/six-card.entry.js +2 -2
  215. package/dist/esm/six-checkbox_2.entry.js +7 -7
  216. package/dist/esm/six-checkbox_2.entry.js.map +1 -1
  217. package/dist/esm/six-datepicker.entry.js +13 -11
  218. package/dist/esm/six-datepicker.entry.js.map +1 -1
  219. package/dist/esm/six-details.entry.js +4 -4
  220. package/dist/esm/six-dialog.entry.js +3 -3
  221. package/dist/esm/six-drawer.entry.js +3 -3
  222. package/dist/esm/six-dropdown_2.entry.js +14 -5
  223. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  224. package/dist/esm/six-error-page.entry.js +2 -2
  225. package/dist/esm/six-error.entry.js +3 -3
  226. package/dist/esm/six-error.entry.js.map +1 -1
  227. package/dist/esm/six-file-list-item.entry.js +1 -1
  228. package/dist/esm/six-file-list.entry.js +2 -2
  229. package/dist/esm/six-file-upload.entry.js +27 -6
  230. package/dist/esm/six-file-upload.entry.js.map +1 -1
  231. package/dist/esm/six-footer.entry.js +2 -2
  232. package/dist/esm/six-group-label.entry.js +3 -3
  233. package/dist/esm/six-header.entry.js +22 -15
  234. package/dist/esm/six-header.entry.js.map +1 -1
  235. package/dist/esm/six-icon-button.entry.js +4 -4
  236. package/dist/esm/six-icon.entry.js +3 -3
  237. package/dist/esm/six-input.entry.js +15 -6
  238. package/dist/esm/six-input.entry.js.map +1 -1
  239. package/dist/esm/six-item-picker.entry.js +1 -1
  240. package/dist/esm/six-language-switcher.entry.js +8 -4
  241. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  242. package/dist/esm/six-layout-grid.entry.js +2 -2
  243. package/dist/esm/six-main-container.entry.js +2 -2
  244. package/dist/esm/six-menu-divider.entry.js +2 -2
  245. package/dist/esm/six-menu-label.entry.js +2 -2
  246. package/dist/esm/six-picto.entry.js +2 -2
  247. package/dist/esm/six-progress-bar.entry.js +3 -3
  248. package/dist/esm/six-progress-ring.entry.js +2 -2
  249. package/dist/esm/six-radio.entry.js +3 -3
  250. package/dist/esm/six-range.entry.js +4 -4
  251. package/dist/esm/six-root.entry.js +2 -2
  252. package/dist/esm/six-search-field.entry.js +2 -2
  253. package/dist/esm/six-select.entry.js +68 -43
  254. package/dist/esm/six-select.entry.js.map +1 -1
  255. package/dist/esm/six-sidebar-item-group.entry.js +2 -2
  256. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  257. package/dist/esm/six-sidebar-item.entry.js +3 -3
  258. package/dist/esm/six-sidebar.entry.js +3 -3
  259. package/dist/esm/six-spinner.entry.js +1 -1
  260. package/dist/esm/six-stage-indicator.entry.js +1 -1
  261. package/dist/esm/six-switch.entry.js +4 -4
  262. package/dist/esm/six-tab-group.entry.js +3 -3
  263. package/dist/esm/six-tab-panel.entry.js +2 -2
  264. package/dist/esm/six-tab.entry.js +3 -3
  265. package/dist/esm/six-tab.entry.js.map +1 -1
  266. package/dist/esm/six-tag.entry.js +3 -3
  267. package/dist/esm/six-textarea.entry.js +5 -5
  268. package/dist/esm/six-textarea.entry.js.map +1 -1
  269. package/dist/esm/six-tile.entry.js +4 -4
  270. package/dist/esm/six-timepicker.entry.js +1 -1
  271. package/dist/esm/six-tooltip.entry.js +3 -3
  272. package/dist/esm/ui-library.js +4 -4
  273. package/dist/esm/ui-library.js.map +1 -1
  274. package/dist/types/components/six-button/six-button.d.ts +1 -1
  275. package/dist/types/components/six-file-upload/six-file-upload.d.ts +8 -0
  276. package/dist/types/components/six-header/six-header.d.ts +3 -1
  277. package/dist/types/components/six-input/six-input.d.ts +9 -1
  278. package/dist/types/components/six-menu/six-menu.d.ts +1 -1
  279. package/dist/types/components/six-select/six-select.d.ts +0 -2
  280. package/dist/types/components/six-select/util.d.ts +2 -0
  281. package/dist/types/components.d.ts +47 -3
  282. package/dist/ui-library/assets/TRADEMARKS.md +3 -3
  283. package/dist/ui-library/p-030fa1fa.entry.js +2 -0
  284. package/dist/ui-library/p-037afc74.entry.js +2 -0
  285. package/dist/ui-library/p-037afc74.entry.js.map +1 -0
  286. package/dist/ui-library/{p-fdf271fd.entry.js → p-047d02ad.entry.js} +2 -2
  287. package/dist/ui-library/p-049c8910.entry.js +2 -0
  288. package/dist/ui-library/p-049c8910.entry.js.map +1 -0
  289. package/dist/ui-library/p-05eb1bab.js +3 -0
  290. package/dist/ui-library/p-05eb1bab.js.map +1 -0
  291. package/dist/ui-library/{p-fe483fc6.entry.js → p-06ba653e.entry.js} +2 -2
  292. package/dist/ui-library/{p-57ab8f42.entry.js → p-07c8de65.entry.js} +2 -2
  293. package/dist/ui-library/p-0c129b61.entry.js +2 -0
  294. package/dist/ui-library/p-0c129b61.entry.js.map +1 -0
  295. package/dist/ui-library/p-11344bb8.entry.js +2 -0
  296. package/dist/ui-library/p-14e5fccc.entry.js +2 -0
  297. package/dist/ui-library/p-14e5fccc.entry.js.map +1 -0
  298. package/dist/ui-library/p-189602e4.entry.js +2 -0
  299. package/dist/ui-library/p-18b9189f.entry.js +2 -0
  300. package/dist/ui-library/p-18b9189f.entry.js.map +1 -0
  301. package/dist/ui-library/p-1adc26f2.entry.js +2 -0
  302. package/dist/ui-library/p-1adc26f2.entry.js.map +1 -0
  303. package/dist/ui-library/{p-81390410.entry.js → p-2386627e.entry.js} +2 -2
  304. package/dist/ui-library/{p-2e7312fc.entry.js → p-32e421a3.entry.js} +2 -2
  305. package/dist/ui-library/p-32e421a3.entry.js.map +1 -0
  306. package/dist/ui-library/p-347e568f.entry.js +2 -0
  307. package/dist/ui-library/p-36d5f98a.entry.js +2 -0
  308. package/dist/ui-library/p-36d5f98a.entry.js.map +1 -0
  309. package/dist/ui-library/p-37433242.entry.js +2 -0
  310. package/dist/ui-library/p-37433242.entry.js.map +1 -0
  311. package/dist/ui-library/{p-9e14b37a.entry.js → p-3b5a76ea.entry.js} +2 -2
  312. package/dist/ui-library/{p-38271a5e.entry.js → p-416b0439.entry.js} +2 -2
  313. package/dist/ui-library/{p-b863dcc4.entry.js → p-419ed003.entry.js} +2 -2
  314. package/dist/ui-library/{p-0054410d.entry.js → p-4963f03c.entry.js} +2 -2
  315. package/dist/ui-library/{p-1903aa37.entry.js → p-4bc7bbdb.entry.js} +2 -2
  316. package/dist/ui-library/{p-e6db01a9.entry.js → p-4d89932f.entry.js} +2 -2
  317. package/dist/ui-library/{p-6ee48e81.js → p-605bdd81.js} +2 -2
  318. package/dist/ui-library/p-63acceb6.entry.js +2 -0
  319. package/dist/ui-library/{p-e924132d.entry.js.map → p-63acceb6.entry.js.map} +1 -1
  320. package/dist/ui-library/{p-71ff0e72.entry.js → p-63ee5e7e.entry.js} +2 -2
  321. package/dist/ui-library/{p-5cde0403.entry.js → p-6b40c40c.entry.js} +2 -2
  322. package/dist/ui-library/p-6b40c40c.entry.js.map +1 -0
  323. package/dist/ui-library/{p-3f8ed1d4.entry.js → p-6f9153be.entry.js} +2 -2
  324. package/dist/ui-library/{p-24c42aab.entry.js → p-7bdd1116.entry.js} +2 -2
  325. package/dist/ui-library/p-7c18b8ca.entry.js +2 -0
  326. package/dist/ui-library/{p-52e2a64b.entry.js → p-8f1d3461.entry.js} +2 -2
  327. package/dist/ui-library/p-96d441e9.entry.js +2 -0
  328. package/dist/ui-library/p-96d441e9.entry.js.map +1 -0
  329. package/dist/ui-library/{p-ad244587.entry.js → p-99f6fe01.entry.js} +2 -2
  330. package/dist/ui-library/p-9cb83369.entry.js +2 -0
  331. package/dist/ui-library/{p-61c91764.entry.js → p-a398e3eb.entry.js} +2 -2
  332. package/dist/ui-library/{p-ab22dafd.entry.js → p-a9e009af.entry.js} +2 -2
  333. package/dist/ui-library/{p-dea8f89c.entry.js → p-b335ed9c.entry.js} +2 -2
  334. package/dist/ui-library/{p-f2320c65.entry.js → p-b5acf54d.entry.js} +2 -2
  335. package/dist/ui-library/{p-b68f4556.entry.js → p-b60c20aa.entry.js} +2 -2
  336. package/dist/ui-library/{p-380ba2b7.entry.js → p-b7c68f74.entry.js} +2 -2
  337. package/dist/ui-library/{p-a69ba529.entry.js → p-c62893e5.entry.js} +2 -2
  338. package/dist/ui-library/{p-b922e8ac.entry.js → p-c6464bfe.entry.js} +2 -2
  339. package/dist/ui-library/{p-b922e8ac.entry.js.map → p-c6464bfe.entry.js.map} +1 -1
  340. package/dist/ui-library/{p-034b3bb1.entry.js → p-cf109cbf.entry.js} +2 -2
  341. package/dist/ui-library/{p-3c582981.entry.js → p-d1a2f84b.entry.js} +2 -2
  342. package/dist/ui-library/{p-716019b6.entry.js → p-d42f1ea9.entry.js} +2 -2
  343. package/dist/ui-library/{p-e9726db2.entry.js → p-d88b9c16.entry.js} +2 -2
  344. package/dist/ui-library/p-d9586999.entry.js +2 -0
  345. package/dist/ui-library/p-e14d78e9.entry.js +2 -0
  346. package/dist/ui-library/p-e14d78e9.entry.js.map +1 -0
  347. package/dist/ui-library/{p-786148a6.entry.js → p-e9b8ad98.entry.js} +2 -2
  348. package/dist/ui-library/{p-3a879e1d.entry.js → p-ebbe9bdc.entry.js} +2 -2
  349. package/dist/ui-library/{p-59744f17.entry.js → p-fe89a7c4.entry.js} +2 -2
  350. package/dist/ui-library/ui-library.esm.js +1 -1
  351. package/dist/ui-library/ui-library.esm.js.map +1 -1
  352. package/package.json +3 -3
  353. package/dist/cjs/index-5bfcf88b.js.map +0 -1
  354. package/dist/collection/components/six-header/assets/six-logo.svg +0 -1
  355. package/dist/collection/components/six-header/test/six-header.spec.js +0 -177
  356. package/dist/collection/components/six-header/test/six-header.spec.js.map +0 -1
  357. package/dist/esm/index-d415464d.js.map +0 -1
  358. package/dist/ui-library/assets/six-logo.svg +0 -1
  359. package/dist/ui-library/p-1a17a806.entry.js +0 -2
  360. package/dist/ui-library/p-1a17a806.entry.js.map +0 -1
  361. package/dist/ui-library/p-1c5e8dec.entry.js +0 -2
  362. package/dist/ui-library/p-23f5dae2.entry.js +0 -2
  363. package/dist/ui-library/p-2b7e2bcb.entry.js +0 -2
  364. package/dist/ui-library/p-2b7e2bcb.entry.js.map +0 -1
  365. package/dist/ui-library/p-2e7312fc.entry.js.map +0 -1
  366. package/dist/ui-library/p-3c05fdf3.entry.js +0 -2
  367. package/dist/ui-library/p-4272021f.entry.js +0 -2
  368. package/dist/ui-library/p-4272021f.entry.js.map +0 -1
  369. package/dist/ui-library/p-499480a2.entry.js +0 -2
  370. package/dist/ui-library/p-50d589eb.entry.js +0 -2
  371. package/dist/ui-library/p-50d589eb.entry.js.map +0 -1
  372. package/dist/ui-library/p-5cde0403.entry.js.map +0 -1
  373. package/dist/ui-library/p-740d3c8b.entry.js +0 -2
  374. package/dist/ui-library/p-740d3c8b.entry.js.map +0 -1
  375. package/dist/ui-library/p-7ad67887.entry.js +0 -2
  376. package/dist/ui-library/p-7ad67887.entry.js.map +0 -1
  377. package/dist/ui-library/p-9a7c45c4.entry.js +0 -2
  378. package/dist/ui-library/p-9a7c45c4.entry.js.map +0 -1
  379. package/dist/ui-library/p-a2dad0ab.entry.js +0 -2
  380. package/dist/ui-library/p-a67b3f42.entry.js +0 -2
  381. package/dist/ui-library/p-a67b3f42.entry.js.map +0 -1
  382. package/dist/ui-library/p-b902eb65.entry.js +0 -2
  383. package/dist/ui-library/p-b902eb65.entry.js.map +0 -1
  384. package/dist/ui-library/p-c297662b.entry.js +0 -2
  385. package/dist/ui-library/p-c297662b.entry.js.map +0 -1
  386. package/dist/ui-library/p-ce59d17f.entry.js +0 -2
  387. package/dist/ui-library/p-e6db442b.entry.js +0 -2
  388. package/dist/ui-library/p-e8d5a789.js +0 -3
  389. package/dist/ui-library/p-e8d5a789.js.map +0 -1
  390. package/dist/ui-library/p-e924132d.entry.js +0 -2
  391. /package/dist/ui-library/{p-499480a2.entry.js.map → p-030fa1fa.entry.js.map} +0 -0
  392. /package/dist/ui-library/{p-fdf271fd.entry.js.map → p-047d02ad.entry.js.map} +0 -0
  393. /package/dist/ui-library/{p-fe483fc6.entry.js.map → p-06ba653e.entry.js.map} +0 -0
  394. /package/dist/ui-library/{p-57ab8f42.entry.js.map → p-07c8de65.entry.js.map} +0 -0
  395. /package/dist/ui-library/{p-e6db442b.entry.js.map → p-11344bb8.entry.js.map} +0 -0
  396. /package/dist/ui-library/{p-1c5e8dec.entry.js.map → p-189602e4.entry.js.map} +0 -0
  397. /package/dist/ui-library/{p-81390410.entry.js.map → p-2386627e.entry.js.map} +0 -0
  398. /package/dist/ui-library/{p-3c05fdf3.entry.js.map → p-347e568f.entry.js.map} +0 -0
  399. /package/dist/ui-library/{p-9e14b37a.entry.js.map → p-3b5a76ea.entry.js.map} +0 -0
  400. /package/dist/ui-library/{p-38271a5e.entry.js.map → p-416b0439.entry.js.map} +0 -0
  401. /package/dist/ui-library/{p-b863dcc4.entry.js.map → p-419ed003.entry.js.map} +0 -0
  402. /package/dist/ui-library/{p-0054410d.entry.js.map → p-4963f03c.entry.js.map} +0 -0
  403. /package/dist/ui-library/{p-1903aa37.entry.js.map → p-4bc7bbdb.entry.js.map} +0 -0
  404. /package/dist/ui-library/{p-e6db01a9.entry.js.map → p-4d89932f.entry.js.map} +0 -0
  405. /package/dist/ui-library/{p-6ee48e81.js.map → p-605bdd81.js.map} +0 -0
  406. /package/dist/ui-library/{p-71ff0e72.entry.js.map → p-63ee5e7e.entry.js.map} +0 -0
  407. /package/dist/ui-library/{p-3f8ed1d4.entry.js.map → p-6f9153be.entry.js.map} +0 -0
  408. /package/dist/ui-library/{p-24c42aab.entry.js.map → p-7bdd1116.entry.js.map} +0 -0
  409. /package/dist/ui-library/{p-a2dad0ab.entry.js.map → p-7c18b8ca.entry.js.map} +0 -0
  410. /package/dist/ui-library/{p-52e2a64b.entry.js.map → p-8f1d3461.entry.js.map} +0 -0
  411. /package/dist/ui-library/{p-ad244587.entry.js.map → p-99f6fe01.entry.js.map} +0 -0
  412. /package/dist/ui-library/{p-ce59d17f.entry.js.map → p-9cb83369.entry.js.map} +0 -0
  413. /package/dist/ui-library/{p-61c91764.entry.js.map → p-a398e3eb.entry.js.map} +0 -0
  414. /package/dist/ui-library/{p-ab22dafd.entry.js.map → p-a9e009af.entry.js.map} +0 -0
  415. /package/dist/ui-library/{p-dea8f89c.entry.js.map → p-b335ed9c.entry.js.map} +0 -0
  416. /package/dist/ui-library/{p-f2320c65.entry.js.map → p-b5acf54d.entry.js.map} +0 -0
  417. /package/dist/ui-library/{p-b68f4556.entry.js.map → p-b60c20aa.entry.js.map} +0 -0
  418. /package/dist/ui-library/{p-380ba2b7.entry.js.map → p-b7c68f74.entry.js.map} +0 -0
  419. /package/dist/ui-library/{p-a69ba529.entry.js.map → p-c62893e5.entry.js.map} +0 -0
  420. /package/dist/ui-library/{p-034b3bb1.entry.js.map → p-cf109cbf.entry.js.map} +0 -0
  421. /package/dist/ui-library/{p-3c582981.entry.js.map → p-d1a2f84b.entry.js.map} +0 -0
  422. /package/dist/ui-library/{p-716019b6.entry.js.map → p-d42f1ea9.entry.js.map} +0 -0
  423. /package/dist/ui-library/{p-e9726db2.entry.js.map → p-d88b9c16.entry.js.map} +0 -0
  424. /package/dist/ui-library/{p-23f5dae2.entry.js.map → p-d9586999.entry.js.map} +0 -0
  425. /package/dist/ui-library/{p-786148a6.entry.js.map → p-e9b8ad98.entry.js.map} +0 -0
  426. /package/dist/ui-library/{p-3a879e1d.entry.js.map → p-ebbe9bdc.entry.js.map} +0 -0
  427. /package/dist/ui-library/{p-59744f17.entry.js.map → p-fe89a7c4.entry.js.map} +0 -0
@@ -1 +0,0 @@
1
- <svg viewBox="0 0 90 26" xmlns="http://www.w3.org/2000/svg"><g fill="#DE3919" fill-rule="nonzero"><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"/><path d="m42.16.324h5.21v24.806h-5.21z"/><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"/></g></svg>
@@ -1,2 +0,0 @@
1
- import{r as i,c as t,h as o,g as r}from"./p-e8d5a789.js";import{F as e}from"./p-6ee48e81.js";import{h as s}from"./p-0cebf1d2.js";import{E as n}from"./p-8bfb4bfc.js";import{s as l}from"./p-842b492e.js";const a=':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}.input{display:inline-flex;align-items:stretch;justify-content:start;position:relative;width:100%;font-family:var(--six-font-family);font-weight:var(--six-input-font-weight);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;overflow:hidden;transition:var(--six-transition-fast) color, var(--six-transition-fast) border, var(--six-transition-fast) box-shadow;cursor:text}.input--line{border:none;border-bottom:solid var(--six-border-width) var(--six-input-border-color)}.input:hover:not(.input--disabled){background-color:var(--six-input-background-color-hover);border-color:var(--six-input-border-color-hover)}.input:hover:not(.input--disabled) .input__control{color:var(--six-input-color-hover)}.input:hover.input--dropdown-search{border-color:transparent}.input--dropdown-search{border-color:transparent}.input--dropdown-search.input--focused{border-color:var(--six-input-border-color)}.input.input--focused:not(.input--disabled){background-color:var(--six-input-background-color-focus);border-bottom-color:var(--six-input-border-color-focus);box-shadow:0 1px 0 0 var(--six-input-border-color-focus)}.input.input--focused:not(.input--disabled):not(.input--line){border-color:var(--six-input-border-color-focus);box-shadow:var(--six-input-focus-shadow)}.input.input--focused:not(.input--disabled) .input__control{color:var(--six-input-color-focus)}.input.input--disabled{background-color:var(--six-input-background-color-disabled);border-color:var(--six-input-border-color-disabled);cursor:not-allowed}.input.input--disabled .input__control{color:var(--six-input-color-disabled)}.input.input--disabled .input__control::placeholder{color:var(--six-input-placeholder-color-disabled)}.input.input--invalid:not(.input--disabled):not(.input--focused){border-bottom-color:var(--six-input-border-color-danger)}.input.input--invalid:not(.input--disabled):not(.input--focused):not(.input--line){border-color:var(--six-input-border-color-danger)}.input__control{flex:1 1 auto;font-family:inherit;font-size:inherit;font-weight:inherit;min-width:0;color:var(--six-input-color);border:none;background:none;box-shadow:none;padding:0;margin:0;cursor:inherit;-webkit-appearance:none}.input__control::-webkit-search-decoration,.input__control::-webkit-search-cancel-button,.input__control::-webkit-search-results-button,.input__control::-webkit-search-results-decoration{-webkit-appearance:none}.input__control:-webkit-autofill,.input__control:-webkit-autofill:hover,.input__control:-webkit-autofill:focus,.input__control:-webkit-autofill:active{box-shadow:0 0 0 var(--six-height-large) var(--six-input-background-color-hover) inset !important;-webkit-text-fill-color:var(--six-color-primary-500)}.input__control::placeholder{color:var(--six-input-placeholder-color);user-select:none}.input__control:focus{outline:none}.input__control::-ms-reveal{display:none}.input__prefix,.input__suffix{display:inline-flex;flex:0 0 auto;align-items:center;cursor:default}.input__prefix ::slotted(six-icon),.input__suffix ::slotted(six-icon){color:var(--six-input-icon-color)}.input.input--disabled ::slotted(six-icon){cursor:not-allowed}.input--small{border-radius:var(--six-input-border-radius-small);font-size:var(--six-input-font-size-small);height:var(--six-height-small)}.input--small .input__control{height:calc(var(--six-height-small) - var(--six-border-width) * 2);margin:0 var(--six-input-spacing-small)}.input--small .input__control__prefix{margin:0 var(--six-input-prefix-spacing-small)}.input--small .input__clear,.input--small .input__password-toggle{margin-right:var(--six-input-spacing-small)}.input--small .input__prefix ::slotted(*){margin-left:var(--six-input-prefix-spacing-small)}.input--small .input__suffix ::slotted(*){margin-right:var(--six-input-prefix-spacing-small)}.input--medium{border-radius:var(--six-input-border-radius-medium);font-size:var(--six-input-font-size-medium);height:var(--six-height-medium)}.input--medium .input__control{height:calc(var(--six-height-medium) - var(--six-border-width) * 2);margin:0 var(--six-input-spacing-medium)}.input--medium .input__control__prefix{margin:0 var(--six-input-prefix-spacing-medium)}.input--medium .input__clear,.input--medium .input__password-toggle{margin-right:var(--six-input-spacing-medium)}.input--medium .input__prefix ::slotted(*){margin-left:var(--six-input-prefix-spacing-medium)}.input--medium .input__suffix ::slotted(*){margin-right:var(--six-input-prefix-spacing-medium)}.input--large{border-radius:var(--six-input-border-radius-large);font-size:var(--six-input-font-size-large);height:var(--six-height-large)}.input--large .input__control{height:calc(var(--six-height-large) - var(--six-border-width) * 2);margin:0 var(--six-input-spacing-large)}.input--large .input__control__prefix{margin:0 var(--six-input-prefix-spacing-large)}.input--large .input__clear,.input--large .input__password-toggle{margin-right:var(--six-input-spacing-large)}.input--large .input__prefix ::slotted(*){margin-left:var(--six-input-prefix-spacing-large)}.input--large .input__suffix ::slotted(*){margin-right:var(--six-input-prefix-spacing-large)}.input--pill.input--small{border-radius:var(--six-height-small)}.input--pill.input--medium{border-radius:var(--six-height-medium)}.input--pill.input--large{border-radius:var(--six-height-large)}.input__clear,.input__password-toggle{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}.input__clear:hover,.input__password-toggle:hover{color:var(--six-input-icon-color-hover)}.input__clear:focus,.input__password-toggle:focus{outline:none}.input--empty .input__clear{visibility:hidden}';const u=a;const p={large:"medium",medium:"small",small:"xSmall"};let h=0;const c=class{constructor(o){i(this,o);this.sixChange=t(this,"six-input-change",7);this.sixClear=t(this,"six-input-clear",7);this.sixInput=t(this,"six-input-input",7);this.sixFocus=t(this,"six-input-focus",7);this.sixBlur=t(this,"six-input-blur",7);this.inputId=`input-${++h}`;this.labelId=`input-label-${h}`;this.helpTextId=`input-help-text-${h}`;this.errorTextId=`input-error-text-${h}`;this.eventListeners=new n;this.handleChange=i=>{i.stopPropagation();if(this.nativeInput!=null){this.value=this.nativeInput.value;this.sixChange.emit()}};this.handleInput=i=>{i.stopPropagation();if(this.nativeInput!=null){this.value=this.nativeInput.value;this.sixInput.emit()}};this.handleBlur=()=>{this.hasFocus=false;this.sixBlur.emit()};this.handleFocus=()=>{this.hasFocus=true;this.sixFocus.emit()};this.handleClearClick=i=>{this.value="";this.sixClear.emit();this.sixInput.emit();this.sixChange.emit();if(this.nativeInput!=null){this.nativeInput.focus()}i.stopPropagation()};this.handleKeyDown=i=>{const t=i.metaKey||i.ctrlKey||i.shiftKey||i.altKey;if(i.key==="Enter"&&!t){setTimeout((()=>{if(!i.defaultPrevented&&!i.isComposing){l(this.host)}}))}};this.handlePasswordToggle=()=>{this.isPasswordVisible=!this.isPasswordVisible};this.handleSlotChange=()=>{this.hasHelpTextSlot=s(this.host,"help-text");this.hasLabelSlot=s(this.host,"label");this.hasErrorSlot=s(this.host,"error-text")};this.hasFocus=false;this.hasHelpTextSlot=false;this.hasLabelSlot=false;this.hasErrorSlot=false;this.isPasswordVisible=false;this.type="text";this.size="medium";this.name="";this.value="";this.pill=false;this.helpText="";this.placeholder=undefined;this.disabled=false;this.readonly=false;this.minlength=undefined;this.maxlength=undefined;this.min=undefined;this.max=undefined;this.step=undefined;this.pattern=undefined;this.dropdownSearch=false;this.required=false;this.autocapitalize="off";this.autocorrect="off";this.autocomplete="off";this.autofocus=false;this.spellcheck=false;this.label="";this.errorText="";this.errorTextCount=undefined;this.invalid=false;this.clearable=false;this.togglePassword=false;this.inputmode=undefined;this.line=false}handleLabelChange(){this.handleSlotChange()}handleValueChange(){this.value=this.getValue();if(this.nativeInput!=null&&this.nativeInput.value!==this.value){this.nativeInput.value=this.value}}connectedCallback(){var i;(i=this.host.shadowRoot)===null||i===void 0?void 0:i.addEventListener("slotchange",this.handleSlotChange);this.eventListeners.forward("six-input-input","input",this.host);this.eventListeners.forward("six-input-change","change",this.host);this.eventListeners.forward("six-input-focus","focus",this.host);this.eventListeners.forward("six-input-blur","blur",this.host)}componentWillLoad(){this.handleSlotChange()}disconnectedCallback(){var i;(i=this.host.shadowRoot)===null||i===void 0?void 0:i.removeEventListener("slotchange",this.handleSlotChange);this.eventListeners.removeAll()}async setFocus(i){var t;(t=this.nativeInput)===null||t===void 0?void 0:t.focus(i)}async removeFocus(){var i;(i=this.nativeInput)===null||i===void 0?void 0:i.blur()}async select(){var i;return(i=this.nativeInput)===null||i===void 0?void 0:i.select()}async setSelectionRange(i,t,o="none"){var r;return(r=this.nativeInput)===null||r===void 0?void 0:r.setSelectionRange(i,t,o)}async setRangeText(i,t,o,r="preserve"){if(this.nativeInput==null){return}this.nativeInput.setRangeText(i,t,o,r);if(this.getValue()!==this.nativeInput.value){this.value=this.nativeInput.value;this.sixChange.emit();this.sixInput.emit()}}getValue(){var i;return((i=this.value)!==null&&i!==void 0?i:"").toString()}render(){return o(e,{key:"5710dd4df8e2833ebcea698d46945d07083a4580",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.hasErrorSlot,size:this.size,disabled:this.disabled,required:this.required,displayError:this.invalid},o("div",{key:"b5812726191ae11b8ccac0ac17403299c49348fe",part:"base",class:{input:true,"input--small":this.size==="small","input--medium":this.size==="medium","input--large":this.size==="large","input--line":this.line,"input--pill":this.pill,"input--disabled":this.disabled,"input--dropdown-search":this.dropdownSearch,"input--focused":this.hasFocus,"input--empty":this.getValue().length===0,"input--invalid":this.invalid}},o("span",{key:"6068c91f240cbe044f3b4c43c9b2b2c8e4150bf5",part:"prefix",class:"input__prefix"},o("slot",{key:"36166b5cdb2696d52985c60b7771ebcc943dd750",name:"prefix"})),o("input",{key:"37e14f53d5fc24e14eb93a6522d537722f8c739b",part:"input",ref:i=>this.nativeInput=i,id:this.inputId,size:1,class:{input__control:true,input__control__prefix:s(this.host,"prefix")},type:this.type==="password"&&this.isPasswordVisible?"text":this.type,name:this.name,placeholder:this.placeholder,disabled:this.disabled,readonly:this.readonly,minLength:this.minlength,maxLength:this.maxlength,min:this.min,max:this.max,step:this.step,value:this.getValue(),autoCapitalize:this.autocapitalize,autoComplete:this.autocomplete,autoCorrect:this.autocorrect,autoFocus:this.autofocus,spellcheck:this.spellcheck,pattern:this.pattern,required:this.required,inputMode:this.inputmode,"aria-labelledby":this.labelId,"aria-describedby":this.helpTextId,"aria-invalid":this.invalid?"true":"false",onChange:this.handleChange,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyDown:this.handleKeyDown,"data-testid":"input-control"}),this.clearable&&o("button",{part:"clear-button",class:"input__clear",type:"button",onClick:this.handleClearClick,tabindex:"-1","data-testid":"input-clear-button"},o("slot",{name:"clear-icon"},o("six-icon",{size:p[this.size]},"clear"))),this.togglePassword&&o("button",{part:"password-toggle-button",class:"input__password-toggle",type:"button",onClick:this.handlePasswordToggle,tabindex:"-1"},this.isPasswordVisible?o("slot",{name:"show-password-icon"},o("six-icon",{size:p[this.size]},"visibility_off")):o("slot",{name:"hide-password-icon"},o("six-icon",{size:p[this.size]},"visibility"))),o("span",{key:"f1b2b407390c5f1a00ae30b5853aafc7e2f3738a",part:"suffix",class:"input__suffix"},o("slot",{key:"f7844f40590b6cb4f39e49796272fa8de6754767",name:"suffix"}))))}get host(){return r(this)}static get watchers(){return{helpText:["handleLabelChange"],errorText:["handleLabelChange"],label:["handleLabelChange"],value:["handleValueChange"]}}};c.style=u;export{c as six_input};
2
- //# sourceMappingURL=p-1a17a806.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixInputCss","SixInputStyle0","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 a,h as s,H as t,g as e}from"./p-e8d5a789.js";const o=":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)}.tab-panel{border:solid 1px transparent;padding:20px 20px}";const i=o;let r=0;const d=class{constructor(s){a(this,s);this.componentId=`tab-panel-${++r}`;this.name="";this.active=false}render(){return s(t,{key:"6b8958e2148c21062d9d871ffe7a016b2fa8a1c5",id:this.host.id||this.componentId,style:{display:this.active?"block":"none"}},s("div",{key:"a35fd74db0e878943ccc49d7f33746ac1f5fc221",part:"base",class:"tab-panel",role:"tabpanel","aria-selected":this.active?"true":"false","aria-hidden":this.active?"false":"true"},s("slot",{key:"6de9b87d93c055a9c4de931139c7da3a366a2aa1"})))}get host(){return e(this)}};d.style=i;export{d as six_tab_panel};
2
- //# sourceMappingURL=p-1c5e8dec.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as o,h as r}from"./p-e8d5a789.js";const s=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:block}.six-footer{color:var(--six-color-web-rock-900);padding:var(--six-spacing-x-small) 0;text-align:center;width:100%;background-color:var(--six-footer-background-color);box-shadow:var(--six-shadow-medium-top)}";const t=s;const e=class{constructor(r){o(this,r)}render(){return r("footer",{key:"9b6b9933b76044dd048161ab084af325cc6d181d",class:"six-footer"},r("slot",{key:"f8f0b32271d472da8175d2fc92ca8aef319345fe"}))}};e.style=t;export{e as six_footer};
2
- //# sourceMappingURL=p-23f5dae2.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as i,h as s,g as t}from"./p-e8d5a789.js";import{h as e}from"./p-0cebf1d2.js";const r=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:block}.six-sidebar-item-group{--horizontal-padding:var(--six-spacing-x-large)}.six-sidebar-item-group--childless::part(content){padding:0 !important}.six-sidebar-item-group--subgroup::part(header){background-color:transparent !important}.six-sidebar-item-group__header-icon{margin-left:16px;transform:translate(0px, -3px)}.six-sidebar-details__header{display:flex}.six-sidebar-details__header-icon{margin-right:1em}.six-sidebar-details__link{text-decoration:none;display:block;color:inherit;width:100%}";const a=r;const o=class{constructor(t){i(this,t);this.provideSlot=i=>{if(this.summaryIconHasContent){return s("div",{slot:i},s("slot",{name:i}))}return s("slot",{name:i,onSlotchange:()=>{var s;const t=(s=this.host.shadowRoot)===null||s===void 0?void 0:s.querySelector(`slot[name="${i}"]`);if(t!=null){this.summaryIconHasContent=t.assignedNodes().length>0}}})};this.hasItems=false;this.name="";this.icon="";this.value="";this.open=false;this.summaryIcon=undefined;this.summaryIconHasContent=false;this.href=undefined}connectedCallback(){this.handleSlotChange=this.handleSlotChange.bind(this)}componentWillLoad(){this.handleSlotChange()}handleSlotChange(){this.hasItems=e(this.host)}isSubgroup(){var i;return((i=this.host.parentElement)===null||i===void 0?void 0:i.closest("six-sidebar-item-group"))!=null}renderAsHref(){return this.href!=null&&!this.hasItems}render(){const i=s("six-details",{class:{"six-sidebar-item-group":true,"six-sidebar-item-group--childless":!this.hasItems,"six-sidebar-item-group--subgroup":this.isSubgroup()},inline:true,open:this.open,"summary-icon":this.summaryIcon,hasContent:this.hasItems},s("div",{slot:"summary"},s("div",{class:"six-sidebar-details__header"},this.icon&&s("six-icon",{class:"six-sidebar-details__header-icon"},this.icon),this.name)),this.provideSlot("summary-icon"),s("slot",null));if(this.renderAsHref()){return s("a",{class:"six-sidebar-details__link",href:this.href},i)}else{return i}}get host(){return t(this)}};o.style=a;export{o as six_sidebar_item_group};
2
- //# sourceMappingURL=p-2b7e2bcb.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixSidebarItemGroupCss","SixSidebarItemGroupStyle0","SixSidebarItemGroup","this","provideSlot","name","summaryIconHasContent","h","slot","onSlotchange","_a","host","shadowRoot","querySelector","assignedNodes","length","connectedCallback","handleSlotChange","bind","componentWillLoad","hasItems","hasSlot","isSubgroup","parentElement","closest","renderAsHref","href","render","element","class","inline","open","summaryIcon","hasContent","icon"],"sources":["src/components/six-sidebar-item-group/six-sidebar-item-group.scss?tag=six-sidebar-item-group&encapsulation=shadow","src/components/six-sidebar-item-group/six-sidebar-item-group.tsx"],"sourcesContent":["@import 'src/global/component';\n\n:host {\n display: block;\n}\n\n.six-sidebar-item-group {\n --horizontal-padding: var(--six-spacing-x-large);\n}\n\n.six-sidebar-item-group--childless::part(content) {\n padding: 0 !important;\n}\n\n.six-sidebar-item-group--subgroup::part(header) {\n background-color: transparent !important;\n}\n\n.six-sidebar-item-group__header-icon {\n margin-left: 16px;\n transform: translate(0px, -3px);\n}\n\n.six-sidebar-details__header {\n display: flex;\n}\n\n.six-sidebar-details__header-icon {\n margin-right: 1em;\n}\n\n.six-sidebar-details__link {\n text-decoration: none;\n display: block;\n color: inherit;\n width: 100%;\n}\n","import { Component, Element, h, Prop, State } from '@stencil/core';\nimport { hasSlot } from '../../utils/slot';\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define the nested sidebar [group] items.\n */\n\n@Component({\n tag: 'six-sidebar-item-group',\n styleUrl: 'six-sidebar-item-group.scss',\n shadow: true,\n})\nexport class SixSidebarItemGroup {\n @Element() readonly host!: HTMLSixSidebarItemGroupElement;\n\n @State() hasItems = false;\n\n /** Title of item group */\n @Prop() name = '';\n\n /** Icon of the group */\n @Prop() icon = '';\n\n /** A unique value to store in the sidebar item of the group label. This can be used as a way to identify sidebar items when selected. */\n @Prop({ reflect: true }) value = '';\n\n /** Indicates whether the sidebar is shown */\n @Prop({ reflect: true }) open = false;\n\n /** Custom summary icon name. */\n @Prop() summaryIcon?: string;\n\n @State() summaryIconHasContent = false;\n\n /**\n * Provide if the item should be rendered as anchor tag.\n * Note, that the href is added automatically when using routerLink in Angular.\n */\n @Prop({ reflect: true }) href: string | undefined;\n\n connectedCallback() {\n this.handleSlotChange = this.handleSlotChange.bind(this);\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n private handleSlotChange() {\n this.hasItems = hasSlot(this.host);\n }\n\n private isSubgroup() {\n return this.host.parentElement?.closest('six-sidebar-item-group') != null;\n }\n\n private renderAsHref(): boolean {\n return this.href != null && !this.hasItems;\n }\n\n private provideSlot = (name: string) => {\n if (this.summaryIconHasContent) {\n return (\n <div slot={name}>\n <slot name={name}></slot>\n </div>\n );\n }\n\n return (\n <slot\n name={name}\n onSlotchange={() => {\n const slot = this.host.shadowRoot?.querySelector<HTMLSlotElement>(`slot[name=\"${name}\"]`);\n if (slot != null) {\n this.summaryIconHasContent = slot.assignedNodes().length > 0;\n }\n }}\n ></slot>\n );\n };\n\n render() {\n const element = (\n <six-details\n class={{\n 'six-sidebar-item-group': true,\n 'six-sidebar-item-group--childless': !this.hasItems,\n 'six-sidebar-item-group--subgroup': this.isSubgroup(),\n }}\n inline={true}\n open={this.open}\n summary-icon={this.summaryIcon}\n hasContent={this.hasItems}\n >\n <div slot=\"summary\">\n <div class=\"six-sidebar-details__header\">\n {this.icon && <six-icon class=\"six-sidebar-details__header-icon\">{this.icon}</six-icon>}\n {this.name}\n </div>\n </div>\n {this.provideSlot('summary-icon')}\n <slot />\n </six-details>\n );\n\n if (this.renderAsHref()) {\n return (\n <a class=\"six-sidebar-details__link\" href={this.href}>\n {element}\n </a>\n );\n } else {\n return element;\n }\n }\n}\n"],"mappings":"sFAAA,MAAMA,EAAyB,gnBAC/B,MAAAC,EAAeD,E,MCcFE,EAAmB,M,yBAgDtBC,KAAAC,YAAeC,IACrB,GAAIF,KAAKG,sBAAuB,CAC9B,OACEC,EAAA,OAAKC,KAAMH,GACTE,EAAA,QAAMF,KAAMA,I,CAKlB,OACEE,EAAA,QACEF,KAAMA,EACNI,aAAc,K,MACZ,MAAMD,GAAOE,EAAAP,KAAKQ,KAAKC,cAAU,MAAAF,SAAA,SAAAA,EAAEG,cAA+B,cAAcR,OAChF,GAAIG,GAAQ,KAAM,CAChBL,KAAKG,sBAAwBE,EAAKM,gBAAgBC,OAAS,C,IAGzD,E,cA/DQ,M,UAGL,G,UAGA,G,WAGkB,G,UAGD,M,sDAKC,M,oBAQjC,iBAAAC,GACEb,KAAKc,iBAAmBd,KAAKc,iBAAiBC,KAAKf,K,CAGrD,iBAAAgB,GACEhB,KAAKc,kB,CAGC,gBAAAA,GACNd,KAAKiB,SAAWC,EAAQlB,KAAKQ,K,CAGvB,UAAAW,G,MACN,QAAOZ,EAAAP,KAAKQ,KAAKY,iBAAa,MAAAb,SAAA,SAAAA,EAAEc,QAAQ,4BAA6B,I,CAG/D,YAAAC,GACN,OAAOtB,KAAKuB,MAAQ,OAASvB,KAAKiB,Q,CAyBpC,MAAAO,GACE,MAAMC,EACJrB,EAAA,eACEsB,MAAO,CACL,yBAA0B,KAC1B,qCAAsC1B,KAAKiB,SAC3C,mCAAoCjB,KAAKmB,cAE3CQ,OAAQ,KACRC,KAAM5B,KAAK4B,KAAI,eACD5B,KAAK6B,YACnBC,WAAY9B,KAAKiB,UAEjBb,EAAA,OAAKC,KAAK,WACRD,EAAA,OAAKsB,MAAM,+BACR1B,KAAK+B,MAAQ3B,EAAA,YAAUsB,MAAM,oCAAoC1B,KAAK+B,MACtE/B,KAAKE,OAGTF,KAAKC,YAAY,gBAClBG,EAAA,cAIJ,GAAIJ,KAAKsB,eAAgB,CACvB,OACElB,EAAA,KAAGsB,MAAM,4BAA4BH,KAAMvB,KAAKuB,MAC7CE,E,KAGA,CACL,OAAOA,C"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["isString","value","isNil","i18nDate","en","months","monthsShort","monthsShortGrouped","weekdays","weekdaysShort","weekdaysMin","de","fr","it","es","now","Date","removeTime","date","getFullYear","getMonth","getDate","isValidDate","isNaN","getTime","toString","year","Error","month","day","hours","getHours","minutes","getMinutes","seconds","getSeconds","getFirstDayOfTheWeek","weekdayDiff","setDate","getDay","isSameYear","a","b","isSameMonth","isSameDay","isSameWeek","isValidDateString","datestring","format","length","getDateParts","toDate","isInRange","minDate","maxDate","lookAhead","iFormat","match","increment","followingCharacterMatches","charAt","hasProperLength","formatNumber","len","num","String","formatDate","output","FORMATTING_TOKENS","TWO_NUMERICS_REGEX","FOUR_NUMERICS_REGEX","NON_NUMERIC_REGEX","YEAR","MONTH","DAY","HOUR","MINUTE","SECOND","parseFlags","addParseFlag","token","regex","callback","tokens","Array","isArray","func","input","parseInt","forEach","key","cent","Math","floor","getFullInputArray","backupDate","result","backupArr","useBackup","i","undefined","createDate","hour","minute","second","isFinite","setFullYear","makeParser","dateString","mark","parseTo","word","replace","indexOf","substr","parser","exec","obj","Object","assign","getCleanDateString","dirtyDateString","separator","split","map","s","join","inputArray","e","NaN","createCalendarGrid","calendarGridArguments","firstDateOfBox","allowedDates","dateFormat","selectedDate","pointerDate","weekDatePointer","dayDatePointer","calendar","row","display","label","isToday","isSelected","isDisabled","isOutdated","rangeAround","number","range","itemsPerGroup","keys","n","reduce","curr","item","index","push","SixDateFormats","MonthSelection","monthSelectionParams","locale","isSelectedMonth","_a","findIndex","m","h","class","part","onClick","onClickMonthCell","DaySelection","daySelectionParams","weekday","calendarGrid","cell","onClickDateCell","YearSelection","yearSelectionParams","yearSelection","onClickYearCell","sixDatepickerCss","SixDatepickerStyle0","NUMBER_OF_YEARS_SHOWN","MIN_POPUP_HEIGHT","SelectionMode","SixDatepicker","this","eventListeners","EventListeners","previousUnit","selectionMode","previousMonth","previousYear","previousYearGroup","nextUnit","nextMonth","nextYear","nextYearGroup","handleDocumentKeyDown","event","keyboardEvent","open","stopPropagation","closePopup","inputElement","setFocus","handleDocumentMouseDown","path","composedPath","includes","container","handleClearClick","async","select","sixClear","emit","onTimepickerChange","sixTimepickerChange","time","detail","newDate","setHours","updateValue","updatePointerDates","selectedMonth","monthShort","handleInputChange","inputValue","inputValueDate","updateIfChanged","datesOnly","dateAsString","handleOnBlur","sixSelect","_b","formattedDate","sixBlur","getCurrentDateAsPointer","type","DDMMYYY_DOT","DEFAULT_DEBOUNCE_FAST","debounceChanged","debounceEvent","debounce","valueChanged","console","warn","resizeHandler","updateDropdownDirection","moveOpenHoistedPopup","adjustPopupPosition","scrollHandler","movePopup","hoist","popup","wrapper","containingElement","host","options","min","max","isDropDownContentUp","calcIsDropDownContentUp","getMonthStringForIndex","openCalendar","disabled","setupEventListenersForOpenPopup","add","document","inline","remove","getPointerDate","differsFromPointerDate","defaultDate","closeOnSelect","componentWillLoad","componentDidLoad","componentDidRender","renderHeader","viewBox","width","height","d","points","renderBody","renderCustomIcon","icon","hasSlot","name","size","slot","prefix","iconPosition","renderClearable","clearable","tabindex","render","ref","el","placeholder","readonly","required","errorText","errorTextCount","invalid","datepicker__popup","placement","_c","adjustPopupForHoisting","isUp","adjustPopupForSmallScreens","connectedCallback","forward","disconnectedCallback","removeAll"],"sources":["src/utils/type-check.ts","src/utils/date-util.ts","src/components/six-datepicker/six-date-formats.tsx","src/components/six-datepicker/components/month-selection.tsx","src/components/six-datepicker/components/day-selection.tsx","src/components/six-datepicker/components/year-selection.tsx","src/components/six-datepicker/six-datepicker.scss?tag=six-datepicker&encapsulation=shadow","src/components/six-datepicker/six-datepicker.tsx"],"sourcesContent":["export const isString = (value: unknown): value is string => typeof value === 'string';\n\n// only use '==' instead of '===' to also catch undefined and void\nexport const isNil = (value: unknown): value is undefined | null => value == null;\n\nexport const isDate = (value: unknown): value is Date => value instanceof Date;\n","/* eslint-disable */\n// @ts-nocheck\n\nimport { isDate, isNil, isString } from './type-check';\nimport { SixDateFormats } from '../components/six-datepicker/six-date-formats';\nimport { CalendarCell } from '../components/six-datepicker/six-datepicker';\n\nexport type DateLocale = typeof i18nDate.en;\nexport const i18nDate = {\n en: {\n months: [\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n ],\n monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n monthsShortGrouped: [\n ['Jan', 'Feb', 'Mar', 'Apr'],\n ['May', 'Jun', 'Jul', 'Aug'],\n ['Sep', 'Oct', 'Nov', 'Dec'],\n ],\n weekdays: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'],\n weekdaysShort: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],\n weekdaysMin: ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'],\n },\n de: {\n months: [\n 'Januar',\n 'Februar',\n 'März',\n 'April',\n 'Mai',\n 'Juni',\n 'Juli',\n 'August',\n 'September',\n 'Oktober',\n 'November',\n 'Dezember',\n ],\n monthsShort: ['Jan.', 'Feb.', 'März', 'Apr.', 'Mai', 'Juni', 'Juli', 'Aug.', 'Sep.', 'Okt.', 'Nov.', 'Dez.'],\n monthsShortGrouped: [\n ['Jan.', 'Feb.', 'März', 'Apr.'],\n ['Mai', 'Juni', 'Juli', 'Aug.'],\n ['Sep.', 'Okt.', 'Nov.', 'Dez.'],\n ],\n weekdays: ['Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag'],\n weekdaysShort: ['Mo.', 'Di.', 'Mi.', 'Do.', 'Fr.', 'Sa.', 'So.'],\n weekdaysMin: ['Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa', 'So'],\n },\n fr: {\n months: [\n 'janvier',\n 'février',\n 'mars',\n 'avril',\n 'mai',\n 'juin',\n 'juillet',\n 'août',\n 'septembre',\n 'octobre',\n 'novembre',\n 'décembre',\n ],\n monthsShort: ['janv.', 'févr.', 'mars', 'avr.', 'mai', 'juin', 'juil.', 'août', 'sept.', 'oct.', 'nov.', 'déc.'],\n monthsShortGrouped: [\n ['janv.', 'févr.', 'mars', 'avr.'],\n ['mai', 'juin', 'juil.', 'août'],\n ['sept.', 'oct.', 'nov.', 'déc.'],\n ],\n weekdays: ['lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi', 'dimanche'],\n weekdaysShort: ['lun.', 'mar.', 'mer.', 'jeu.', 'ven.', 'sam.', 'dim.'],\n weekdaysMin: ['lu', 'ma', 'me', 'je', 've', 'sa', 'di'],\n },\n it: {\n months: [\n 'gennaio',\n 'febbraio',\n 'marzo',\n 'aprile',\n 'maggio',\n 'giugno',\n 'luglio',\n 'agosto',\n 'settembre',\n 'ottobre',\n 'novembre',\n 'dicembre',\n ],\n monthsShort: ['gen', 'feb', 'mar', 'apr', 'mag', 'giu', 'lug', 'ago', 'set', 'ott', 'nov', 'dic'],\n monthsShortGrouped: [\n ['gen', 'feb', 'mar', 'apr'],\n ['mag', 'giu', 'lug', 'ago'],\n ['set', 'ott', 'nov', 'dic'],\n ],\n weekdays: ['lunedì', 'martedì', 'mercoledì', 'giovedì', 'venerdì', 'sabato', 'domenica'],\n weekdaysShort: ['lun', 'mar', 'mer', 'gio', 'ven', 'sab', 'dom'],\n weekdaysMin: ['lu', 'ma', 'me', 'gi', 've', 'sa', 'do'],\n },\n es: {\n months: [\n 'enero',\n 'febrero',\n 'marzo',\n 'abril',\n 'mayo',\n 'junio',\n 'julio',\n 'agosto',\n 'septiembre',\n 'octubre',\n 'noviembre',\n 'diciembre',\n ],\n monthsShort: ['ene', 'feb', 'mar', 'abr', 'may', 'jun', 'jul', 'ago', 'sep', 'oct', 'nov', 'dic'],\n monthsShortGrouped: [\n ['ene', 'feb', 'mar', 'abr'],\n ['may', 'jun', 'jul', 'ago'],\n ['sep', 'oct', 'nov', 'dic'],\n ],\n weekdays: ['lunes', 'martes', 'miércoles', 'jueves', 'viernes', 'sábado', 'domingo'],\n weekdaysShort: ['lun', 'mar', 'mié', 'jue', 'vie', 'sáb', 'dom'],\n weekdaysMin: ['lu', 'ma', 'mi', 'ju', 'vi', 'sa', 'do'],\n },\n};\n\n/**\n * Returns a JS Date instance of the exact moment\n *\n * ```typescript\n * const date = now()\n * // Wed Mar 10 2021 20:30:32 GMT+0100 (Central European Standard Time)\n * ```\n */\nexport const now = () => new Date();\n\nexport const removeTime = (date: Date) => new Date(date.getFullYear(), date.getMonth(), date.getDate());\n\nexport const pad = (value: number) => String(value).padStart(2, '0');\n\n/**\n * Returns `true` if the given date is valid\n */\nexport const isValidDate = (value: unknown): boolean => {\n return value instanceof Date && !isNaN(value.getTime()) && new Date(value).toString() !== 'Invalid Date';\n};\n\n/**\n * Returns the year number of the given date\n *\n * ```typescript\n * year(new Date(2020, 0, 1)) // 2020\n * ```\n */\nexport const year = (date: Date | undefined): number => {\n if (date && isValidDate(date)) {\n return date.getFullYear();\n }\n throw new Error('Not a valid date');\n};\n\n/**\n * Returns the month number of the given date\n *\n * ```typescript\n * month(new Date(2020, 0, 1)) // 0\n * ```\n */\nexport const month = (date: Date | undefined): number => {\n if (date && isValidDate(date)) {\n return date.getMonth();\n }\n throw new Error('Not a valid date');\n};\n\n/**\n * Returns the day number of the given date\n *\n * ```typescript\n * day(new Date(2020, 0, 1)) // 1\n * ```\n */\nexport const day = (date: Date | undefined): number => {\n if (date && isValidDate(date)) {\n return date.getDate();\n }\n throw new Error('Not a valid date');\n};\n\n/**\n * Returns the hours of the given date\n */\nexport const hours = (date: Date | undefined): number => {\n if (date && isValidDate(date)) {\n return date.getHours();\n }\n throw new Error('Not a valid date');\n};\n\n/**\n * Returns the minutes of the given date\n */\nexport const minutes = (date: Date | undefined): number => {\n if (date && isValidDate(date)) {\n return date.getMinutes();\n }\n throw new Error('Not a valid date');\n};\n\n/**\n * Returns the seconds of the given date\n */\nexport const seconds = (date: Date | undefined): number => {\n if (date && isValidDate(date)) {\n return date.getSeconds();\n }\n throw new Error('Not a valid date');\n};\n\n/**\n * Returns the first day of the week of the given date.\n */\nexport const getFirstDayOfTheWeek = (date: Date) => {\n const weekdayDiff = [6, 0, 1, 2, 3, 4, 5];\n const day = new Date(date);\n day.setDate(day.getDate() - weekdayDiff[day.getDay()]);\n return day;\n};\n\n/**\n * Returns `true` when the year of the dates are the same\n */\nexport const isSameYear = (a: Date | undefined, b: Date | undefined) => a?.getFullYear() === b?.getFullYear();\n\n/**\n * Returns `true` when the month of the dates are the same\n */\nexport const isSameMonth = (a: Date | undefined, b: Date | undefined) =>\n isSameYear(a, b) && a?.getMonth() === b?.getMonth();\n\n/**\n * Returns `true` when the day of the dates are the same\n */\nexport const isSameDay = (a: Date | undefined, b: Date | undefined) =>\n isSameMonth(a, b) && a?.getDate() === b?.getDate();\n\n/**\n * Returns `true` when the week of the dates are the same\n */\nexport const isSameWeek = (a: Date, b: Date) => isSameDay(getFirstDayOfTheWeek(a), getFirstDayOfTheWeek(b));\n\nconst localDatetime = (date: Date) => new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()));\n\n/**\n * Returns the ISO string `yyyy-mm-dd` of the given date\n *\n * ```typescript\n * isoString(new Date(2020, 0, 13)) // '2020-01-13'\n * ```\n */\nexport const isoString = (date: Date | undefined): string => {\n if (isNil(date) || Date.toString() === 'Invalid Date') {\n return '';\n }\n\n return `${year(date)}-${pad(month(date) + 1)}-${pad(day(date))}`;\n};\n\n/**\n * Returns the ISO string `yyyy-mm-dd` of the given parameters year, month and day\n *\n * ```typescript\n * newDateString(2020, 0, 13) // '2020-01-13'\n * or\n * newDateString(new Date(2020, 0, 13)) // '2020-01-13'\n * ```\n */\nexport const newDateString = (yearOrDate: Date | number, month?: number, day?: number): string => {\n let date;\n if (isDate(yearOrDate)) {\n date = localDatetime(yearOrDate);\n } else {\n date = new Date(Date.UTC(yearOrDate, (month as number) - 1, day as number));\n }\n\n return isoString(date);\n};\n\n/**\n * Returns `true` if the given datestring is valid\n */\nexport const isValidDateString = (datestring: string | undefined, format: string) => {\n if (!isString(datestring) || !isString(format)) {\n return false;\n }\n\n if (datestring.length < 6 || format.length < 6) {\n return false;\n }\n\n const { day, month } = getDateParts(datestring, format);\n\n if (day > 31 || month > 11 || day <= 0 || month < 0) {\n return false;\n }\n\n const date = toDate(datestring, format);\n\n if (isNil(date)) {\n return false;\n }\n\n return date.toString() !== 'Invalid Date';\n};\n\n/**\n * Returns `true` when the given date is not smaller than the minDate and not bigger than the maxDate.\n *\n * ```typescript\n * isInRange(new Date(2020, 1, 1), new Date(2020, 0, 1), new Date(2020, 2, 1)) // true\n * ```\n */\nexport const isInRange = (date: Date | undefined, minDate: Date | undefined, maxDate: Date | undefined): boolean => {\n if (!date) {\n return true;\n }\n\n if (minDate && date < minDate) {\n return false;\n }\n\n if (maxDate && maxDate < date) {\n return false;\n }\n\n return true;\n};\n\nconst validateTwoDates = (\n first: any,\n second: Date | string | undefined,\n validateFn: (irst: Date, second: Date) => boolean\n) => {\n if (isNil(first) && isNil(second)) {\n return false;\n }\n\n const _first: Date = new Date(first as string | Date);\n const _second: Date = new Date(second as string | Date);\n\n if (!isValidDate(_first) || !isValidDate(_second)) {\n return false;\n }\n\n return validateFn(_first, _second);\n};\n\n/**\n * Returns `true` when the given date is not smaller than the before date.\n *\n * ```typescript\n * isBefore(new Date(2020, 1, 1), new Date(2020, 3, 1)) // true\n * ```\n */\nexport const isBefore = (date: any, beforeDate: Date | string | undefined): boolean =>\n validateTwoDates(date, beforeDate, (first, second) => first < second);\n\n/**\n * Returns `true` when the given date is not smaller than the before date.\n *\n * ```typescript\n * isAfter(new Date(2020, 5, 1), new Date(2020, 3, 1)) // true\n * ```\n */\nexport const isAfter = (date: any, afterDate: Date | string | undefined): boolean =>\n validateTwoDates(date, afterDate, (first, second) => first > second);\n\n/**\n * Increases the year of a date and retunrs the result\n *\n * ```typescript\n * increaseYear(new Date(2020, 0, 1), 1) // 2021\n * ```\n */\nexport const increaseYear = (date: Date, years: number): number => year(date) + years;\n\n/**\n * Decreases the year of a date and retunrs the result\n *\n * ```typescript\n * decreaseYear(new Date(2020, 0, 1), 1) // 2019\n * ```\n */\nexport const decreaseYear = (date: Date, years: number): number => year(date) - years;\n\nconst lookAhead = (iFormat: number, format: string, match: string, length = 2) => {\n const increment = length - 1;\n const followingCharacterMatches = format.charAt(iFormat + increment) === match;\n const hasProperLength = iFormat + increment < format.length;\n return hasProperLength && followingCharacterMatches;\n};\n\nconst formatNumber = (value, len) => {\n let num = String(value);\n\n while (num.length < len) {\n num = '0' + num;\n }\n\n return num;\n};\n\nexport const formatDate = (date: Date | undefined | null, format: string): string => {\n if (date == null) {\n return '';\n }\n\n let output = '';\n\n for (let iFormat = 0; iFormat < format.length; iFormat++) {\n switch (format.charAt(iFormat)) {\n case 'd':\n if (lookAhead(iFormat, format, 'd')) {\n output += formatNumber(date.getDate(), 2);\n iFormat++;\n } else {\n output += String(date.getDate());\n }\n break;\n case 'm':\n if (lookAhead(iFormat, format, 'm')) {\n output += formatNumber(date.getMonth() + 1, 2);\n iFormat++;\n } else {\n output += String(date.getMonth() + 1);\n }\n break;\n case 'y':\n if (lookAhead(iFormat, format, 'y', 4)) {\n iFormat += 3;\n output += date.getFullYear();\n } else {\n output += (date.getFullYear() % 100 < 10 ? '0' : '') + (date.getFullYear() % 100);\n iFormat++;\n }\n break;\n case 'h':\n if (lookAhead(iFormat, format, 'h')) {\n output += formatNumber(date.getHours(), 2);\n iFormat++;\n } else {\n output += String(date.getHours());\n }\n break;\n case 'M':\n if (lookAhead(iFormat, format, 'M')) {\n output += formatNumber(date.getMinutes(), 2);\n iFormat++;\n } else {\n output += String(date.getMinutes());\n }\n break;\n case 's':\n if (lookAhead(iFormat, format, 's')) {\n output += formatNumber(date.getSeconds(), 2);\n iFormat++;\n } else {\n output += String(date.getSeconds());\n }\n break;\n default:\n output += format.charAt(iFormat);\n }\n }\n return output;\n};\n\nconst daylightSavingAdjust = (date): Date => {\n if (!date) {\n return null;\n }\n\n date.setHours(date.getHours() > 12 ? date.getHours() + 2 : 0);\n\n return date;\n};\n\nconst getDaysCountInMonth = (month: number, year: number) =>\n 32 - daylightSavingAdjust(new Date(year, month, 32)).getDate();\n\nexport const parseDate = (value: any, format: string, locale: string): Date => {\n if (format == null || value == null) {\n throw 'Invalid arguments';\n }\n\n value = typeof value === 'object' ? value.toString() : value + '';\n if (value === '') {\n return null;\n }\n\n let iFormat;\n let dim;\n let extra;\n let iValue = 0;\n let shortYearCutoff = 100;\n let year = -1;\n let month = -1;\n let day = -1;\n let doy = -1;\n let literal = false;\n let date: Date;\n let lookAhead = (match: string, len = 2) => {\n const increment = len - 1;\n let matches = iFormat + increment < format.length && format.charAt(iFormat + increment) === match;\n if (matches) {\n iFormat += increment;\n }\n return matches;\n };\n let getNumber = (match, len = 2) => {\n let isDoubled = lookAhead(match, len),\n size = match === '@' ? 14 : match === '!' ? 20 : match === 'y' && isDoubled ? 4 : match === 'o' ? 3 : 2,\n minSize = match === 'y' ? size : 1,\n digits = new RegExp('^\\\\d{' + minSize + ',' + size + '}'),\n num = value.substring(iValue).match(digits);\n if (!num) {\n throw 'Missing number at position ' + iValue;\n }\n iValue += num[0].length;\n return parseInt(num[0], 10);\n };\n let getName = (match, shortNames, longNames) => {\n let index = -1;\n let arr = lookAhead(match) ? longNames : shortNames;\n let names = [];\n\n for (let i = 0; i < arr.length; i++) {\n names.push([i, arr[i]]);\n }\n names.sort((a, b) => {\n return -(a[1].length - b[1].length);\n });\n\n for (let i = 0; i < names.length; i++) {\n let name = names[i][1];\n if (value.substr(iValue, name.length).toLowerCase() === name.toLowerCase()) {\n index = names[i][0];\n iValue += name.length;\n break;\n }\n }\n\n if (index !== -1) {\n return index + 1;\n } else {\n throw 'Unknown name at position ' + iValue;\n }\n };\n let checkLiteral = () => {\n if (value.charAt(iValue) !== format.charAt(iFormat)) {\n throw 'Unexpected literal at position ' + iValue;\n }\n iValue++;\n };\n\n for (iFormat = 0; iFormat < format.length; iFormat++) {\n if (literal) {\n if (format.charAt(iFormat) === \"'\" && !lookAhead(\"'\")) {\n literal = false;\n } else {\n checkLiteral();\n }\n } else {\n switch (format.charAt(iFormat)) {\n case 'd':\n day = getNumber('d');\n break;\n case 'D':\n getName('D', i18nDate[locale].weekdaysShort, i18nDate[locale].weekdays);\n break;\n case 'm':\n month = getNumber('m');\n break;\n case 'M':\n month = getName('M', i18nDate[locale].monthsShort, i18nDate[locale].months);\n break;\n case 'y':\n year = getNumber('y', 4);\n break;\n default:\n checkLiteral();\n }\n }\n }\n\n if (iValue < value.length) {\n extra = value.substr(iValue);\n if (!/^\\s+/.test(extra)) {\n throw 'Extra/unparsed characters found in date: ' + extra;\n }\n }\n\n if (year === -1) {\n year = new Date().getFullYear();\n } else if (year < 100) {\n year += new Date().getFullYear() - (new Date().getFullYear() % 100) + (year <= shortYearCutoff ? 0 : -100);\n }\n\n if (doy > -1) {\n month = 1;\n day = doy;\n do {\n dim = getDaysCountInMonth(year, month - 1);\n if (day <= dim) {\n break;\n }\n month++;\n day -= dim;\n } while (true);\n }\n\n date = daylightSavingAdjust(new Date(year, month - 1, day));\n if (date.getFullYear() !== year || date.getMonth() + 1 !== month || date.getDate() !== day) {\n throw 'Invalid date'; // E.g. 31/02/00\n }\n\n return date;\n};\n\nconst FORMATTING_TOKENS = /(\\[[^\\[]*\\])|(mm|dd|yyyy|yy|hh|MM|ss|.)/g;\n\nconst TWO_NUMERICS_REGEX = /\\d\\d/; // 00 - 99\nconst FOUR_NUMERICS_REGEX = /\\d{4}/; // 0000 - 9999\nconst NON_NUMERIC_REGEX = /[^0-9]/g;\n\nconst YEAR = 'year';\nconst MONTH = 'month';\nconst DAY = 'day';\nconst HOUR = 'hour';\nconst MINUTE = 'minute';\nconst SECOND = 'second';\n\ninterface ParseFlagMark {\n year: number;\n month: number;\n day: number;\n hour: number;\n minute: number;\n second: number;\n date: Date;\n}\n\ntype ParseFlagCallBackReturn = any;\n\ntype ParseFlagRegExp = RegExp | ((locale: any) => RegExp);\ntype ParseFlagCallBack = (input: string) => ParseFlagCallBackReturn;\n\ninterface ParseFlag {\n [key: string]: [ParseFlagRegExp, ParseFlagCallBack];\n}\n\nconst parseFlags: ParseFlag = {};\n\nconst addParseFlag = (token: string | string[], regex: ParseFlagRegExp, callback) => {\n const tokens = Array.isArray(token) ? token : [token];\n let func: ParseFlagCallBack;\n if (typeof callback === 'string') {\n func = (input) => {\n const value = parseInt(input, 10);\n return { [callback]: value };\n };\n } else {\n func = callback;\n }\n tokens.forEach((key) => {\n parseFlags[key] = [regex, func];\n });\n};\n\naddParseFlag('yy', TWO_NUMERICS_REGEX, (input) => {\n const year = new Date().getFullYear();\n const cent = Math.floor(year / 100);\n let value = parseInt(input, 10);\n value = (value > 68 ? cent - 1 : cent) * 100 + value;\n return { [YEAR]: value };\n});\naddParseFlag('yyyy', FOUR_NUMERICS_REGEX, YEAR);\naddParseFlag('mm', TWO_NUMERICS_REGEX, (input) => ({ [MONTH]: parseInt(input, 10) - 1 }));\naddParseFlag('dd', TWO_NUMERICS_REGEX, DAY);\naddParseFlag('hh', TWO_NUMERICS_REGEX, HOUR);\naddParseFlag('MM', TWO_NUMERICS_REGEX, MINUTE);\naddParseFlag('ss', TWO_NUMERICS_REGEX, SECOND);\n\ntype DateArgs = [number, number, number, number, number, number];\n\nconst getFullInputArray = (input: Array<number | undefined>, backupDate = new Date()) => {\n const result: DateArgs = [0, 0, 1, 0, 0, 0];\n const backupArr = [\n backupDate.getFullYear(),\n backupDate.getMonth(),\n backupDate.getDate(),\n backupDate.getHours(),\n backupDate.getMinutes(),\n backupDate.getSeconds(),\n ];\n\n let useBackup = true;\n for (let i = 0; i < 7; i++) {\n if (input[i] === undefined) {\n result[i] = useBackup ? backupArr[i] : result[i];\n } else {\n result[i] = input[i]!;\n useBackup = false;\n }\n }\n return result;\n};\n\nconst createDate = (year: number, month: number, day: number, hour: number, minute: number, second: number): Date => {\n if (!(year < 100 && year >= 0)) {\n return new Date(year, month, day, hour, minute, second);\n }\n\n const date = new Date(year + 400, month, day, hour, minute, second);\n if (isFinite(date.getFullYear())) {\n date.setFullYear(year);\n }\n return date;\n};\n\nconst makeParser = (dateString: string, format: string) => {\n const tokens = format.match(FORMATTING_TOKENS);\n if (!tokens) {\n throw new Error();\n }\n const { length } = tokens;\n let mark: Partial<ParseFlagMark> = {};\n for (let i = 0; i < length; i += 1) {\n const token = tokens[i];\n const parseTo = parseFlags[token];\n if (!parseTo) {\n const word = token.replace(/^\\[|\\]$/g, '');\n if (dateString.indexOf(word) === 0) {\n dateString = dateString.substr(word.length);\n } else {\n throw new Error('not match');\n }\n } else {\n const regex = parseTo[0] as RegExp;\n const parser = parseTo[1];\n const value = (regex.exec(dateString) || [])[0];\n const obj = parser(value);\n mark = { ...mark, ...obj };\n dateString = dateString.replace(value, '');\n }\n }\n return mark;\n};\n\nconst getCleanDateString = (dirtyDateString: string, format: string) => {\n if (dirtyDateString.length === format.length) {\n return dirtyDateString;\n }\n\n const separator = dirtyDateString.match(NON_NUMERIC_REGEX)[0];\n\n // pad signle digits to follow supported dateformats\n return dirtyDateString\n .split(separator)\n .map((s) => (s.length === 1 ? '0' + s : s))\n .join(separator);\n};\n\nconst getDateParts: (dirtyDateString: string, format: string) => Partial<ParseFlagMark> = (\n dirtyDateString: string,\n format: string\n) => {\n const dateString = getCleanDateString(dirtyDateString, format);\n\n return makeParser(dateString, format);\n};\n\nexport const toDate = (dirtyDateString: string | undefined, format: string): Date | undefined => {\n try {\n const { backupDate = new Date() } = {};\n const { year, month, day, hour, minute, second, date } = getDateParts(dirtyDateString, format);\n if (date != null) {\n return date;\n }\n const inputArray = [year, month, day, hour, minute, second];\n const result = getFullInputArray(inputArray, backupDate);\n return createDate(...result);\n } catch (e) {\n return new Date(NaN);\n }\n};\n\nexport interface PointerDate {\n year: number;\n month: number;\n day: number;\n hours: number;\n minutes: number;\n seconds: number;\n}\n\nexport interface CalendarGridArgs {\n firstDateOfBox: Date;\n minDate?: Date;\n maxDate?: Date;\n dateFormat: SixDateFormats;\n pointerDate: { month: number; year: number; day: number };\n allowedDates: (date: Date) => boolean;\n locale: 'en' | 'de' | 'fr' | 'it' | 'es';\n selectedDate?: Date;\n}\n\nexport const createCalendarGrid: (calendarGridArguments: CalendarGridArgs) => CalendarCell[][] = (\n calendarGridArguments: CalendarGridArgs\n) => {\n const { firstDateOfBox, allowedDates, dateFormat, selectedDate, minDate, maxDate, pointerDate } =\n calendarGridArguments;\n\n const weekDatePointer = new Date(firstDateOfBox);\n const dayDatePointer = new Date(firstDateOfBox);\n\n let calendar: CalendarCell[][] = [];\n\n do {\n let row: CalendarCell[] = [];\n do {\n row = [\n ...row,\n {\n date: new Date(dayDatePointer),\n display: formatDate(dayDatePointer, dateFormat),\n dateString: formatDate(dayDatePointer, dateFormat),\n label: day(dayDatePointer).toString(),\n isToday: isSameDay(dayDatePointer, now()),\n isSelected: selectedDate && isSameDay(dayDatePointer, selectedDate),\n isDisabled: !allowedDates(dayDatePointer) || !isInRange(dayDatePointer, minDate, maxDate),\n isOutdated: pointerDate.month !== dayDatePointer.getMonth() || !isInRange(dayDatePointer, minDate, maxDate),\n },\n ];\n dayDatePointer.setDate(dayDatePointer.getDate() + 1);\n } while (isSameWeek(dayDatePointer, weekDatePointer));\n calendar = [...calendar, row];\n weekDatePointer.setDate(weekDatePointer.getDate() + 7);\n } while (isSameMonth(new Date(pointerDate.year, pointerDate.month, pointerDate.day), dayDatePointer));\n return calendar;\n};\n\n/**\n * Returns a range of numbers around the given number grouped into buckets of 5.\n * @param number the given number around which you want to get the other numbers\n * @param range range of numbers to include in the result\n */\nexport function rangeAround(number: number, range: number): number[][] {\n const itemsPerGroup = 5;\n return [...Array(range).keys()]\n .map((n) => n + number - Math.floor(range / 2))\n .reduce((curr, item, index) => {\n if (index % itemsPerGroup === 0) {\n curr.push([]);\n }\n curr[curr.length - 1].push(item);\n return curr;\n }, [] as number[][]);\n}\n","// eslint-disable-next-line @stencil-community/ban-exported-const-enums\nexport enum SixDateFormats {\n DDMMYYY_DOT = 'dd.mm.yyyy',\n YYYYMMDD_DASH = 'yyyy-mm-dd',\n DDMMYYYY_DASH = 'dd-mm-yyyy',\n DDMMYYYY_SLASH = 'dd/mm/yyyy',\n YYYYMMDD_SLASH = 'yyyy/mm/dd',\n DDMMYY_DOT = 'dd.mm.yy',\n YYMMDD_DASH = 'yy-mm-dd',\n DDMMYY_DASH = 'dd-mm-yy',\n DDMMYY_SLASH = 'dd/mm/yy',\n YYMMDD_SLASH = 'yy/mm/dd',\n\n DDMMYYY_DOT_TIME = 'dd.mm.yyyy hh:MM:ss',\n YYYYMMDD_DASH_TIME = 'yyyy-mm-dd hh:MM:ss',\n DDMMYYYY_DASH_TIME = 'dd-mm-yyyy hh:MM:ss',\n DDMMYYYY_SLASH_TIME = 'dd/mm/yyyy hh:MM:ss',\n YYYYMMDD_SLASH_TIME = 'yyyy/mm/dd hh:MM:ss',\n DDMMYY_DOT_TIME = 'dd.mm.yy hh:MM:ss',\n YYMMDD_DASH_TIME = 'yy-mm-dd hh:MM:ss',\n DDMMYY_DASH_TIME = 'dd-mm-yy hh:MM:ss',\n DDMMYY_SLASH_TIME = 'dd/mm/yy hh:MM:ss',\n YYMMDD_SLASH_TIME = 'yy/mm/dd hh:MM:ss',\n}\n","import { h } from '@stencil/core';\nimport { DateLocale, now } from '../../../utils/date-util';\n\ninterface MonthSelectionParams {\n locale: DateLocale;\n selectedDate?: Date;\n onClickMonthCell: (month: string) => void;\n}\nexport const MonthSelection = (monthSelectionParams: MonthSelectionParams) => {\n const locale = monthSelectionParams.locale;\n const isToday = (value: string) => locale.monthsShort[now().getMonth()] === value;\n\n const isSelectedMonth = (value: string) =>\n monthSelectionParams.selectedDate?.getMonth() === locale.monthsShort.findIndex((m) => m === value);\n\n return (\n <table class=\"datepicker-table\" part=\"month-selection\">\n <tbody>\n {locale.monthsShortGrouped.map((row: string[]) => (\n <tr class=\"datepicker-table__row\">\n {row.map((month) => (\n <td\n onClick={() => monthSelectionParams.onClickMonthCell(month)}\n class={{\n 'datepicker-table__cell': true,\n 'datepicker-table__cell--is-today': isToday(month),\n 'datepicker-table__cell--is-selected': isSelectedMonth(month),\n }}\n >\n {month}\n </td>\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n );\n};\n","import { h } from '@stencil/core';\nimport { DateLocale } from '../../../utils/date-util';\nimport { CalendarCell } from '../six-datepicker';\n\ninterface DaySelectionParams {\n locale: DateLocale;\n calendarGrid: CalendarCell[][];\n onClickDateCell: (cell: CalendarCell) => void;\n}\nexport const DaySelection = (daySelectionParams: DaySelectionParams) => {\n return (\n <table class=\"datepicker-table\" part=\"day-selection\">\n <thead part=\"weekday-header\">\n {daySelectionParams.locale.weekdaysMin.map((weekday) => (\n <th class=\"datepicker__cell\">{weekday}</th>\n ))}\n </thead>\n <tbody>\n {daySelectionParams.calendarGrid.map((row) => (\n <tr class=\"datepicker-table__row\">\n {row.map((cell) => (\n <td\n data-date={cell.dateString}\n onClick={() => daySelectionParams.onClickDateCell(cell)}\n class={{\n 'datepicker-table__cell': true,\n 'datepicker-table__cell--is-today': cell.isToday,\n 'datepicker-table__cell--is-selected': cell.isSelected,\n 'datepicker-table__cell--is-outdated': cell.isOutdated,\n 'datepicker-table__cell--is-disabled': cell.isDisabled,\n 'datepicker-table__cell--is-selectable': !cell.isDisabled,\n }}\n >\n {cell.label}\n </td>\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n );\n};\n","import { now } from '../../../utils/date-util';\nimport { h } from '@stencil/core';\n\ninterface YearSelectionParams {\n selectedDate?: Date;\n yearSelection: number[][];\n onClickYearCell: (year: number) => void;\n}\nexport const YearSelection = (yearSelectionParams: YearSelectionParams) => {\n return (\n <table class=\"datepicker-table\" part=\"year-selection\">\n <tbody>\n {yearSelectionParams.yearSelection.map((row) => (\n <tr class=\"datepicker-table__row\">\n {row.map((year) => (\n <td\n onClick={() => yearSelectionParams.onClickYearCell(year)}\n class={{\n 'datepicker-table__cell': true,\n 'datepicker-table__cell--is-today': now().getFullYear() === year,\n 'datepicker-table__cell--is-selected': yearSelectionParams.selectedDate?.getFullYear() === year,\n }}\n >\n {year}\n </td>\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n );\n};\n","@import 'src/global/component';\n\n:host {\n display: block;\n font-family: var(--six-font-family);\n}\n\n.datepicker {\n &__container {\n position: relative;\n }\n\n &__popup {\n min-width: 400px;\n background-color: white;\n padding: 0.5em 0.5em 1.5em;\n box-shadow: 0 2px 4px -1px rgb(0 0 0 / 20%), 0 4px 5px 0 rgb(0 0 0 / 14%), 0 1px 10px 0 rgb(0 0 0 / 12%);\n user-select: none;\n position: absolute;\n z-index: var(--six-z-index-dropdown);\n right: 0;\n left: 0;\n\n &--is-up {\n bottom: 100%;\n // fix problem where you would need to jump around with the cursor when switching months and\n // its a dropup since not all months have the same height\n min-height: 382px;\n }\n\n &--is-inline {\n position: initial;\n box-shadow: none;\n border: 1px solid var(--six-color-web-rock-400);\n }\n }\n}\n\n.datepicker-header {\n display: flex;\n justify-content: space-between;\n border-bottom: 1px solid var(--six-color-web-rock-400);\n padding: 0.5em;\n margin-bottom: 1em;\n\n & svg {\n fill: var(--six-color-web-rock-900);\n stroke: none;\n }\n\n &__btn {\n cursor: pointer;\n width: 2.5em;\n height: 2.5em;\n display: flex;\n vertical-align: middle;\n align-items: center;\n justify-content: center;\n\n &:hover {\n background-color: var(--six-color-web-rock-100);\n border-radius: 100%;\n }\n }\n\n &__label {\n display: flex;\n\n & > div {\n cursor: pointer;\n padding: 0.5em;\n display: flex;\n vertical-align: middle;\n align-items: center;\n justify-content: center;\n\n &:hover {\n background-color: var(--six-color-web-rock-100);\n }\n }\n }\n}\n\n.datepicker-table {\n width: 100%;\n\n &__cell {\n text-align: center;\n width: 2.5rem;\n height: 2.5rem;\n cursor: pointer;\n\n &:hover {\n background-color: var(--six-color-web-rock-100);\n }\n\n &--is-today {\n border: 1px solid var(--six-color-web-rock-400);\n }\n\n &--is-selected {\n background-color: var(--six-color-red);\n color: var(--six-color-white);\n }\n\n &--is-disabled {\n background-color: var(--six-color-web-rock-200);\n cursor: initial;\n\n &:hover {\n background-color: var(--six-color-web-rock-200);\n }\n }\n\n &--is-outdated {\n color: var(--six-color-web-rock-400);\n }\n }\n}\n\n// Clearable\n.datepicker-clear {\n display: inline-flex;\n align-items: center;\n font-size: inherit;\n color: var(--six-input-icon-color);\n border: none;\n background: none;\n padding: 0;\n transition: var(--six-transition-fast) color;\n cursor: pointer;\n\n &:hover {\n color: var(--six-input-icon-color-hover);\n }\n\n &:focus {\n outline: none;\n }\n\n &--right {\n right: 0;\n position: absolute;\n }\n\n &--left {\n right: 35px;\n position: absolute;\n }\n}\n\n.input--empty .datepicker-clear {\n visibility: hidden;\n}\n\n// Icon position\n.prefix {\n cursor: pointer;\n\n &--right {\n right: 0;\n display: inline-flex;\n position: absolute;\n font-size: inherit;\n color: var(--six-input-icon-color);\n border: none;\n background: none;\n margin-right: var(--six-input-spacing-medium);\n transition: var(--six-transition-fast) color;\n }\n}\n\n// time-picker\nsix-timepicker::part(popup) {\n border: none;\n padding: 0.5em 0.5em 0;\n min-height: 0;\n}\n","import { Component, Element, Event, EventEmitter, h, Listen, Method, Prop, State, Watch } from '@stencil/core';\nimport {\n createCalendarGrid,\n day,\n formatDate,\n getFirstDayOfTheWeek,\n hours,\n i18nDate,\n isValidDate,\n isValidDateString,\n minutes,\n month,\n now,\n PointerDate,\n rangeAround,\n removeTime,\n seconds,\n toDate,\n year,\n} from '../../utils/date-util';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { debounce, debounceEvent, DEFAULT_DEBOUNCE_FAST } from '../../utils/execution-control';\nimport { hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\nimport { SixDateFormats } from './six-date-formats';\nimport { MonthSelection } from './components/month-selection';\nimport { DaySelection } from './components/day-selection';\nimport { YearSelection } from './components/year-selection';\nimport { SixTimepickerChange } from '../six-timepicker/six-timepicker';\nimport {\n adjustPopupForHoisting,\n adjustPopupForSmallScreens,\n calcIsDropDownContentUp,\n movePopup,\n} from '../../utils/popup';\n\nconst NUMBER_OF_YEARS_SHOWN = 25;\n\nconst MIN_POPUP_HEIGHT = 400;\n\nexport type SixDatepickerSelectPayload = Date | undefined | null;\n\nexport interface CalendarCell {\n date: Date;\n dateString: string;\n display: string;\n isDisabled: boolean;\n isOutdated: boolean;\n isSelected: boolean;\n isToday: boolean;\n label: string;\n}\n\nenum SelectionMode {\n DAY = 'day',\n MONTH = 'month',\n YEAR = 'year',\n}\n\n/**\n * @since 1.0\n * @status stable\n *\n * @slot - Used to define a footer for the date picker.\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n */\n@Component({\n tag: 'six-datepicker',\n styleUrl: 'six-datepicker.scss',\n shadow: true,\n})\nexport class SixDatepicker {\n private eventListeners = new EventListeners();\n private inputElement?: HTMLSixInputElement;\n private popup?: HTMLElement;\n private wrapper?: HTMLElement;\n private selectedDate?: Date;\n\n @Element() host!: HTMLSixDatepickerElement;\n\n @State() private pointerDate = SixDatepicker.getCurrentDateAsPointer();\n @State() selectionMode: SelectionMode = SelectionMode.DAY;\n @State() isDropDownContentUp = false;\n\n /**\n * Set the type.\n */\n @Prop() type: 'date' | 'date-time' = 'date';\n\n /**\n * The language used to render the weekdays and months.\n */\n @Prop() locale: 'en' | 'de' | 'fr' | 'it' | 'es' = 'en';\n\n /** Indicates whether or not the calendar dropdown is open on startup. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** Indicates whether or not the calendar should be shown as an inline (always open) component */\n @Prop({ reflect: true }) inline = false;\n\n /**\n * If `true` the user can only select a date via the component in the popup, but not directly edit the input field.\n */\n @Prop() readonly = false;\n\n /**\n * If `true` the component is disabled.\n */\n @Prop() disabled = false;\n\n /**\n * Callback to determine which date in the datepicker should be selectable.\n * the callback function will get a datestring as an argument, e.g. '2021-07-04'\n *\n * Usage e.g.:\n * const datepicker = document.getElementById('allowed-date-picker');\n * datepicker.allowedDates = datestring => parseInt(datestring.split('-')[2], 10) % 2 === 0;\n */\n @Prop() allowedDates: (date: Date) => boolean = () => true;\n\n /**\n * The minimum datetime allowed. Value must be a date object\n */\n @Prop() min?: Date;\n\n /**\n * The maximum datetime allowed. Value must be a date object\n */\n @Prop() max?: Date;\n\n /**\n * Closes the datepicker dropdown after selection\n */\n @Prop() closeOnSelect = this.type === 'date';\n\n /**\n * The enforced placement of the dropdown panel.\n */\n @Prop() placement?: 'top' | 'bottom';\n\n /** Datepicker size. */\n @Prop() size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /**\n * The date to defines where the datepicker popup starts. The prop accepts ISO 8601 date strings (YYYY-MM-DD).\n */\n @Prop() defaultDate?: string;\n\n /**\n * The placeholder defines what text to be shown on the input element\n */\n @Prop() placeholder?: string;\n\n /**\n * The value of the form field, which accepts a date object.\n */\n @Prop({ mutable: true }) value?: Date;\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 dropdown will close when the user interacts outside of this element (e.g. clicking). */\n @Prop() containingElement?: HTMLElement;\n\n /** Define the dateFormat. Valid formats are:\n * 'dd.mm.yyyy'\n * 'yyyy-mm-dd'\n * 'dd-mm-yyyy'\n * 'dd/mm/yyyy'\n * 'yyyy/mm/dd'\n * 'dd.mm.yy'\n * 'yy-mm-dd'\n * 'dd-mm-yy'\n * 'dd/mm/yy'\n * 'yy/mm/dd'\n * */\n @Prop() dateFormat: SixDateFormats = SixDateFormats.DDMMYYY_DOT;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger the `dateChange` event after each keystroke.\n */\n @Prop() debounce = DEFAULT_DEBOUNCE_FAST;\n\n /** The input's name attribute. */\n @Prop({ reflect: true }) name = '';\n\n /** Set to true to add a clear button when the input is populated. */\n @Prop() clearable = false;\n\n /** Set the position of the icon */\n @Prop() iconPosition: 'left' | 'right' = 'left';\n\n /**\n * Enable this option to prevent the panel from being clipped when the component is placed inside a container with\n * `overflow: auto|scroll`.\n */\n @Prop() hoist = false;\n\n @Watch('debounce')\n protected debounceChanged() {\n this.sixSelect = debounceEvent(this.sixSelect, this.debounce);\n }\n\n /**\n * Update the native input element when the value changes\n */\n @Watch('value')\n protected valueChanged() {\n if (this.value != null && !isValidDate(this.value)) {\n console.warn('invalid date value: ', this.value);\n this.value = undefined;\n this.sixSelect.emit(this.value);\n }\n this.selectedDate = this.value;\n this.updatePointerDates();\n }\n\n /**\n * Emitted when a option got selected.\n */\n @Event({ eventName: 'six-datepicker-select' }) sixSelect!: EventEmitter<SixDatepickerSelectPayload>;\n\n /**\n * Emitted when the clear button is activated.\n */\n @Event({ eventName: 'six-datepicker-clear' }) sixClear!: EventEmitter<EmptyPayload>;\n\n /**\n * Emitted when a option got selected.\n */\n @Event({ eventName: 'six-datepicker-blur' }) sixBlur!: EventEmitter<SixDatepickerSelectPayload>;\n\n @Listen('resize', { target: 'window' })\n async resizeHandler() {\n this.updateDropdownDirection();\n this.moveOpenHoistedPopup();\n this.adjustPopupPosition();\n }\n\n @Listen('scroll', { target: 'window' })\n async scrollHandler() {\n this.updateDropdownDirection();\n this.moveOpenHoistedPopup();\n }\n\n private moveOpenHoistedPopup() {\n movePopup(this.hoist, this.open, this.popup, this.inputElement, this.wrapper, MIN_POPUP_HEIGHT);\n }\n\n get container() {\n return this.containingElement || this.host;\n }\n\n get firstDateOfBox(): Date {\n const date = new Date(this.pointerDate.year, this.pointerDate.month, 1);\n return getFirstDayOfTheWeek(date);\n }\n\n /** Sets focus on the datepickers input. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.inputElement?.setFocus(options);\n }\n\n get calendarGrid() {\n return createCalendarGrid({\n firstDateOfBox: this.firstDateOfBox,\n allowedDates: this.allowedDates,\n dateFormat: this.dateFormat,\n locale: this.locale,\n selectedDate: this.selectedDate,\n minDate: this.min,\n maxDate: this.max,\n pointerDate: this.pointerDate,\n });\n }\n\n private updateDropdownDirection() {\n if (this.inputElement == null || this.wrapper == null) {\n return;\n }\n this.isDropDownContentUp = calcIsDropDownContentUp(this.inputElement, this.wrapper, MIN_POPUP_HEIGHT);\n }\n\n private getMonthStringForIndex(index: number) {\n return i18nDate[this.locale].months[index];\n }\n\n private previousUnit = () => {\n if (this.selectionMode === SelectionMode.DAY) {\n this.previousMonth();\n } else if (this.selectionMode === SelectionMode.MONTH) {\n this.previousYear();\n } else if (this.selectionMode === SelectionMode.YEAR) {\n this.previousYearGroup();\n }\n };\n\n private previousYear() {\n this.pointerDate = { ...this.pointerDate, year: this.pointerDate.year - 1 };\n }\n\n private previousYearGroup() {\n this.pointerDate = { ...this.pointerDate, year: this.pointerDate.year - NUMBER_OF_YEARS_SHOWN };\n }\n\n private previousMonth() {\n if (this.pointerDate.month === 0) {\n this.pointerDate = { year: this.pointerDate.year - 1, month: 11, day: 1, hours: 0, minutes: 0, seconds: 0 };\n } else {\n this.pointerDate = {\n year: this.pointerDate.year,\n month: this.pointerDate.month - 1,\n day: 1,\n hours: 0,\n minutes: 0,\n seconds: 0,\n };\n }\n }\n\n private nextUnit = () => {\n if (this.selectionMode === SelectionMode.DAY) {\n this.nextMonth();\n } else if (this.selectionMode === SelectionMode.MONTH) {\n this.nextYear();\n } else if (this.selectionMode === SelectionMode.YEAR) {\n this.nextYearGroup();\n }\n };\n\n private nextMonth() {\n if (this.pointerDate.month === 11) {\n this.pointerDate = { year: this.pointerDate.year + 1, month: 0, day: 1, hours: 0, minutes: 0, seconds: 0 };\n } else {\n this.pointerDate = {\n year: this.pointerDate.year,\n month: this.pointerDate.month + 1,\n day: 1,\n hours: 0,\n minutes: 0,\n seconds: 0,\n };\n }\n }\n\n private nextYear() {\n this.pointerDate = { ...this.pointerDate, year: this.pointerDate.year + 1 };\n }\n\n private nextYearGroup() {\n this.pointerDate = { ...this.pointerDate, year: this.pointerDate.year + NUMBER_OF_YEARS_SHOWN };\n }\n\n private openCalendar() {\n if (!this.open && !this.disabled) {\n this.open = true;\n this.setupEventListenersForOpenPopup();\n }\n }\n\n private setupEventListenersForOpenPopup() {\n this.eventListeners.add(document, 'keydown', this.handleDocumentKeyDown);\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n }\n\n private handleDocumentKeyDown = (event: Event) => {\n const keyboardEvent = event as KeyboardEvent;\n // Close when escape is pressed\n if (this.open && keyboardEvent.key === 'Escape') {\n keyboardEvent.stopPropagation();\n this.closePopup();\n void this.inputElement?.setFocus();\n }\n\n // Handle tabbing\n if (keyboardEvent.key === 'Tab') {\n this.closePopup();\n }\n };\n\n private handleDocumentMouseDown = (event: Event) => {\n // Close when clicking outside the containing element\n const path = event.composedPath() as EventTarget[];\n if (!path.includes(this.container)) {\n this.closePopup();\n return;\n }\n };\n\n private handleClearClick = async (event: MouseEvent) => {\n event.stopPropagation();\n await this.select(undefined);\n this.sixClear.emit();\n };\n\n private closePopup() {\n if (this.inline) {\n return;\n }\n\n this.open = false;\n this.eventListeners.remove(document, 'keydown', this.handleDocumentKeyDown);\n this.eventListeners.remove(document, 'mousedown', this.handleDocumentMouseDown);\n this.selectionMode = SelectionMode.DAY;\n }\n\n private updatePointerDates() {\n const date = this.getPointerDate();\n if (this.differsFromPointerDate(date)) {\n this.pointerDate = {\n year: year(date),\n month: month(date),\n day: day(date),\n hours: hours(date),\n minutes: minutes(date),\n seconds: seconds(date),\n };\n }\n }\n\n private differsFromPointerDate(date?: Date): boolean {\n return (\n this.pointerDate.day !== day(date) ||\n this.pointerDate.month !== month(date) ||\n this.pointerDate.year !== year(date) ||\n this.pointerDate.hours !== hours(date) ||\n this.pointerDate.minutes !== minutes(date) ||\n this.pointerDate.seconds !== seconds(date)\n );\n }\n\n private getPointerDate(): Date | undefined {\n if (this.selectedDate !== undefined && this.selectedDate !== null) {\n return this.selectedDate;\n }\n if (this.defaultDate == null) {\n return this.type === 'date' ? removeTime(now()) : now();\n } else {\n return toDate(this.defaultDate, this.dateFormat);\n }\n }\n\n private updateValue(newDate?: Date) {\n this.updateIfChanged(newDate);\n }\n\n private updateIfChanged(newDate?: Date) {\n if (this.value?.getTime() === newDate?.getTime()) {\n return;\n }\n this.value = newDate;\n this.sixSelect.emit(this.value);\n }\n\n /**\n * Selects an option\n */\n @Method()\n async select(datestring?: string) {\n if (datestring == null) {\n this.updateValue(undefined);\n } else {\n const newDate = toDate(datestring, this.dateFormat);\n newDate?.setHours(this.pointerDate.hours, this.pointerDate.minutes, this.pointerDate.seconds);\n this.updateValue(newDate);\n }\n\n this.updatePointerDates();\n\n if (this.closeOnSelect) {\n this.closePopup();\n }\n }\n\n private onTimepickerChange = (sixTimepickerChange: CustomEvent<SixTimepickerChange>) => {\n const time = sixTimepickerChange.detail.value;\n const newDate = new Date();\n\n if (this.selectedDate != null) {\n newDate.setFullYear(this.selectedDate.getFullYear(), this.selectedDate.getMonth(), this.selectedDate.getDate());\n }\n\n if (time != null) {\n const hours = time.hours;\n const minutes = time.minutes;\n const seconds = time.seconds;\n if (hours != null) {\n newDate.setHours(hours, minutes, seconds);\n }\n }\n\n this.updateValue(newDate);\n this.updatePointerDates();\n };\n\n private onClickDateCell = (cell: CalendarCell) => {\n if (!cell.isDisabled) {\n void this.select(cell.dateString);\n }\n };\n\n private onClickMonthCell = (selectedMonth: string) => {\n const month = i18nDate[this.locale].monthsShort.findIndex((monthShort) => monthShort === selectedMonth);\n this.pointerDate = { ...this.pointerDate, month };\n this.selectionMode = SelectionMode.DAY;\n };\n\n private onClickYearCell = (year: number) => {\n this.pointerDate = { ...this.pointerDate, year };\n this.selectionMode = SelectionMode.DAY;\n };\n\n private handleInputChange = (event: Event) => {\n if (this.inputElement == null) {\n return;\n }\n event.stopPropagation();\n\n const inputValue = this.inputElement.value;\n if (!isValidDateString(inputValue, this.dateFormat)) {\n return;\n }\n\n const inputValueDate = toDate(inputValue, this.dateFormat);\n\n if (inputValueDate === undefined) {\n return;\n }\n\n this.updateIfChanged(inputValueDate);\n const datesOnly = inputValue.replace(/[^\\d]/g, '');\n if (datesOnly.length >= 6) {\n const date = toDate(inputValue, this.dateFormat);\n const dateAsString = formatDate(date, this.dateFormat);\n if (isValidDateString(dateAsString, this.dateFormat)) {\n this.selectedDate = toDate(dateAsString, this.dateFormat);\n this.updatePointerDates();\n this.updateValue(this.selectedDate);\n }\n }\n };\n\n private handleOnBlur = (event: Event) => {\n // clear the value if the user deleted the date\n if (this.inputElement?.value === '' && isValidDate(this.value)) {\n this.value = undefined;\n this.sixSelect.emit(this.value);\n }\n\n event.stopPropagation();\n const inputValue = this.inputElement?.value;\n const inputValueDate = toDate(inputValue, this.dateFormat);\n const formattedDate = formatDate(this.value, this.dateFormat);\n\n if (this.inputElement != null && inputValueDate != null && inputValue !== formattedDate) {\n // properly format date if necessary\n this.inputElement.value = formattedDate;\n }\n\n this.sixBlur.emit(this.value);\n };\n\n componentWillLoad() {\n this.selectedDate = this.value;\n this.updatePointerDates();\n this.updateValue(this.value);\n\n if (this.inline) {\n this.open = true;\n }\n\n if (this.open) {\n this.setupEventListenersForOpenPopup();\n }\n }\n\n componentDidLoad() {\n if (this.inputElement != null) {\n this.eventListeners.add(this.inputElement, 'six-input-input', debounce(this.handleInputChange, this.debounce));\n this.eventListeners.add(this.inputElement, 'six-input-blur', this.handleOnBlur);\n }\n }\n\n componentDidRender() {\n this.adjustPopupPosition();\n }\n\n private renderHeader() {\n return (\n <header class=\"datepicker-header\" part=\"header\">\n <div class=\"datepicker-header__btn prev\" onClick={this.previousUnit}>\n <svg viewBox=\"0 5 13 13\" width=\"14\" height=\"23\">\n <path d=\"M11.67 3.87L9.9 2.1 0 12l9.9 9.9 1.77-1.77L3.54 12z\" />\n </svg>\n </div>\n\n <div class=\"datepicker-header__label\">\n {this.selectionMode === SelectionMode.DAY && (\n <div onClick={() => (this.selectionMode = SelectionMode.MONTH)}>\n <span class=\"datepicker-header__label-month\">{this.getMonthStringForIndex(this.pointerDate.month)}</span>\n <span>\n <svg viewBox=\"-3 -4 24 24\" width=\"20\" height=\"20\">\n <polyline points=\"6 9 12 15 18 9\" />\n </svg>\n </span>\n </div>\n )}\n\n {this.selectionMode !== SelectionMode.YEAR && (\n <div onClick={() => (this.selectionMode = SelectionMode.YEAR)}>\n <span class=\"datepicker-header__label-year\">{this.pointerDate.year}</span>\n <span>\n <svg viewBox=\"-3 -4 24 24\" width=\"20\" height=\"20\">\n <polyline points=\"6 9 12 15 18 9\" />\n </svg>\n </span>\n </div>\n )}\n\n {this.selectionMode === SelectionMode.YEAR && (\n <div>\n {this.pointerDate.year - Math.floor(NUMBER_OF_YEARS_SHOWN / 2)} –{' '}\n {this.pointerDate.year + Math.floor(NUMBER_OF_YEARS_SHOWN / 2)}\n </div>\n )}\n </div>\n\n <div class=\"datepicker-header__btn next\" onClick={this.nextUnit}>\n <svg viewBox=\"5 5 13 13\" width=\"14\" height=\"23\">\n <path d=\"M5.88 4.12L13.76 12l-7.88 7.88L8 22l10-10L8 2z\" />\n </svg>\n </div>\n </header>\n );\n }\n\n private renderBody() {\n switch (this.selectionMode) {\n case SelectionMode.DAY:\n return (\n <DaySelection\n locale={i18nDate[this.locale]}\n calendarGrid={this.calendarGrid}\n onClickDateCell={this.onClickDateCell}\n />\n );\n case SelectionMode.MONTH:\n return (\n <MonthSelection\n locale={i18nDate[this.locale]}\n selectedDate={this.selectedDate}\n onClickMonthCell={this.onClickMonthCell}\n />\n );\n case SelectionMode.YEAR:\n return (\n <YearSelection\n selectedDate={this.selectedDate}\n yearSelection={rangeAround(this.pointerDate.year, NUMBER_OF_YEARS_SHOWN)}\n onClickYearCell={this.onClickYearCell}\n />\n );\n }\n }\n\n private renderCustomIcon() {\n const icon = hasSlot(this.host, 'custom-icon') ? (\n <slot name=\"custom-icon\"></slot>\n ) : (\n <six-icon size={this.size === 'large' ? 'medium' : this.size}>today</six-icon>\n );\n\n return (\n <span\n slot=\"prefix\"\n part=\"icon\"\n class={{\n prefix: true,\n 'prefix--right': this.iconPosition === 'right',\n }}\n >\n {icon}\n </span>\n );\n }\n\n private renderClearable() {\n return (\n this.clearable && (\n <button\n slot=\"suffix\"\n class={{\n 'datepicker-clear': true,\n 'datepicker-clear--right': this.iconPosition === 'left',\n 'datepicker-clear--left': this.iconPosition === 'right',\n }}\n type=\"button\"\n onClick={this.handleClearClick}\n tabindex=\"-1\"\n >\n <six-icon size=\"small\">clear</six-icon>\n </button>\n )\n );\n }\n\n render() {\n this.adjustPopupPosition();\n\n return (\n <div ref={(el) => (this.wrapper = el)} class=\"datepicker__container\">\n <six-input\n part=\"base\"\n value={formatDate(this.value, this.dateFormat)}\n ref={(el) => (this.inputElement = el)}\n placeholder={this.placeholder}\n readonly={this.readonly}\n disabled={this.disabled}\n name={this.name}\n label={this.label}\n required={this.required}\n errorText={this.errorText}\n errorTextCount={this.errorTextCount}\n invalid={this.invalid}\n onClick={() => this.openCalendar()}\n size={this.size}\n class={{ 'input--empty': this.value == null }}\n >\n {this.renderCustomIcon()}\n {this.renderClearable()}\n {hasSlot(this.host, 'label') ? (\n <span slot=\"label\">\n <slot name=\"label\" />\n </span>\n ) : null}\n {hasSlot(this.host, 'error-text') ? (\n <span slot=\"error-text\">\n <slot name=\"error-text\"></slot>\n </span>\n ) : null}\n </six-input>\n {this.open && (\n <div\n part=\"popup\"\n ref={(el) => (this.popup = el)}\n class={{\n datepicker__popup: true,\n 'datepicker__popup--is-up': this.placement != null ? this.placement === 'top' : this.isDropDownContentUp,\n 'datepicker__popup--is-inline': this.inline,\n }}\n >\n {this.renderHeader()}\n {this.renderBody()}\n {this.type === 'date-time' && (\n <six-timepicker\n inline={true}\n onSix-timepicker-change-debounced={(event) => this.onTimepickerChange(event)}\n value={\n this.selectedDate?.getHours() +\n ':' +\n this.selectedDate?.getMinutes() +\n ':' +\n this.selectedDate?.getSeconds()\n }\n ></six-timepicker>\n )}\n <div class=\"datepicker__footer\">\n <slot />\n </div>\n </div>\n )}\n </div>\n );\n }\n\n private adjustPopupPosition() {\n adjustPopupForHoisting(\n this.hoist,\n this.popup,\n this.inputElement,\n this.wrapper,\n MIN_POPUP_HEIGHT,\n (isUp) => (this.isDropDownContentUp = isUp)\n );\n adjustPopupForSmallScreens(this.popup);\n }\n\n connectedCallback() {\n this.eventListeners.forward('six-datepicker-select', 'change', this.host);\n this.eventListeners.forward('six-datepicker-blur', 'blur', this.host);\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n }\n\n private static getCurrentDateAsPointer(): PointerDate {\n return {\n year: year(now()),\n month: month(now()),\n day: day(now()),\n hours: hours(now()),\n minutes: minutes(now()),\n seconds: seconds(now()),\n };\n }\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as o,h as s,H as r}from"./p-e8d5a789.js";const e=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:inline-block;box-shadow:var(--six-shadow-medium);border:1px solid var(--six-color-web-rock-100);padding:var(--six-spacing-medium)}";const a=e;const i=class{constructor(s){o(this,s)}render(){return s(r,{key:"ccbbf6bcbd5de13bb440629e16bfa95b9715a0d5"},s("slot",{key:"70c3d1760568a36077ae8ed8ff74ce59f19a8843"}))}};i.style=a;export{i as six_card};
2
- //# sourceMappingURL=p-3c05fdf3.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as e,c as a,h as s}from"./p-e8d5a789.js";const t=".language-switcher__container{display:flex}.language-switcher__separator{padding:0 0.25rem}.language-switcher__label{cursor:pointer}.language-switcher__label:hover{color:var(--six-color-web-rock-600)}.language-switcher__label--selected{color:var(--six-color-black);text-decoration:underline}";const r=t;const i=["EN","DE","ES"];const n=class{constructor(s){e(this,s);this.sixChange=a(this,"six-language-switcher-change",7);this.handleLanguageSwitching=(e,a)=>()=>{if(a!==undefined){this.sixChange.emit(a)}else{this.sixChange.emit(e)}this.selected=e};this.selected=undefined;this.languages=i}handleChangesLanguages(e){if(!Array.isArray(e)){throw new Error("languages is expected to be an array")}this.updateSelectedLanguage()}componentWillLoad(){if(this.selected===undefined){this.updateSelectedLanguage()}}updateSelectedLanguage(){const e=this.languages[0];if(typeof e==="string"){this.selected=e;this.sixChange.emit(this.selected)}else{this.selected=e.key;this.sixChange.emit(e.value)}}render(){return s("div",{key:"fa72eaaf2cb5c0f327a0924e12779863f348b59c",part:"container",class:"language-switcher__container"},this.languages.map(((e,a)=>{const t=typeof e==="string"?e:e.key;return s("div",{onClick:this.handleLanguageSwitching(t,typeof e==="string"?e:e.value)},s("span",{part:"label",class:{"language-switcher__label":true,"language-switcher__label--selected":this.selected===t}},t),a<this.languages.length-1&&s("span",{part:"separator",class:"language-switcher__separator"},"|"))})))}static get watchers(){return{languages:["handleChangesLanguages"]}}};n.style=r;export{n as six_language_switcher};
2
- //# sourceMappingURL=p-4272021f.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixLanguageSwitcherCss","SixLanguageSwitcherStyle0","DEFAULT_LANGUAGES","SixLanguageSwitcher","this","handleLanguageSwitching","newLanguage","languageValue","undefined","sixChange","emit","selected","handleChangesLanguages","newValue","Array","isArray","Error","updateSelectedLanguage","componentWillLoad","selectedLanguage","languages","key","value","render","h","part","class","map","lang","index","language","onClick","length"],"sources":["src/components/six-language-switcher/six-language-switcher.scss?tag=six-language-switcher&encapsulation=shadow","src/components/six-language-switcher/six-language-switcher.tsx"],"sourcesContent":[".language-switcher {\n &__container {\n display: flex;\n }\n\n &__separator {\n padding: 0 0.25rem;\n }\n\n &__label {\n cursor: pointer;\n\n &:hover {\n color: var(--six-color-web-rock-600);\n }\n\n &--selected {\n color: var(--six-color-black);\n text-decoration: underline;\n }\n }\n}\n","import { Component, Event, EventEmitter, h, Prop, Watch } from '@stencil/core';\n\n/**\n * @since 2.1.0\n * @status experimental\n **/\n\nexport interface SixLanguageSwitcherInput {\n key: string;\n value: string;\n}\nexport type SixLanguageSwitcherChangePayload = string;\n\nconst DEFAULT_LANGUAGES = ['EN', 'DE', 'ES'];\n\n/*\n * @since 2.2.0\n * @status experimental\n * @part container - The whole component container\n * @part label - The language label\n * @part separator - The separator between the language labels\n */\n@Component({\n tag: 'six-language-switcher',\n styleUrl: 'six-language-switcher.scss',\n shadow: true,\n})\nexport class SixLanguageSwitcher {\n /** The language which should be shown as selected */\n @Prop({ mutable: true, reflect: true }) selected?: string;\n\n /** The languages which should be selectable options. */\n @Prop() languages: string[] | SixLanguageSwitcherInput[] = DEFAULT_LANGUAGES;\n\n @Watch('languages')\n handleChangesLanguages(newValue: string[]) {\n if (!Array.isArray(newValue)) {\n throw new Error('languages is expected to be an array');\n }\n\n this.updateSelectedLanguage();\n }\n /**\n * Emitted when the language switchers value changes\n */\n @Event({ eventName: 'six-language-switcher-change' }) sixChange!: EventEmitter<SixLanguageSwitcherChangePayload>;\n\n componentWillLoad() {\n if (this.selected === undefined) {\n this.updateSelectedLanguage();\n }\n }\n\n private updateSelectedLanguage() {\n const selectedLanguage = this.languages[0];\n if (typeof selectedLanguage === 'string') {\n this.selected = selectedLanguage;\n this.sixChange.emit(this.selected);\n } else {\n this.selected = selectedLanguage.key;\n this.sixChange.emit(selectedLanguage.value);\n }\n }\n\n private handleLanguageSwitching = (newLanguage: string, languageValue?: string) => () => {\n if (languageValue !== undefined) {\n this.sixChange.emit(languageValue);\n } else {\n this.sixChange.emit(newLanguage);\n }\n this.selected = newLanguage;\n };\n\n render() {\n return (\n <div part=\"container\" class=\"language-switcher__container\">\n {this.languages.map((lang, index) => {\n const language = typeof lang === 'string' ? lang : lang.key;\n return (\n <div onClick={this.handleLanguageSwitching(language, typeof lang === 'string' ? lang : lang.value)}>\n <span\n part=\"label\"\n class={{\n 'language-switcher__label': true,\n 'language-switcher__label--selected': this.selected === language,\n }}\n >\n {language}\n </span>\n {index < this.languages.length - 1 && (\n <span part=\"separator\" class=\"language-switcher__separator\">\n |\n </span>\n )}\n </div>\n );\n })}\n </div>\n );\n }\n}\n"],"mappings":"kDAAA,MAAMA,EAAyB,sSAC/B,MAAAC,EAAeD,ECYf,MAAME,EAAoB,CAAC,KAAM,KAAM,M,MAc1BC,EAAmB,M,iFAqCtBC,KAAAC,wBAA0B,CAACC,EAAqBC,IAA2B,KACjF,GAAIA,IAAkBC,UAAW,CAC/BJ,KAAKK,UAAUC,KAAKH,E,KACf,CACLH,KAAKK,UAAUC,KAAKJ,E,CAEtBF,KAAKO,SAAWL,CAAW,E,uCAtC8BJ,C,CAG3D,sBAAAU,CAAuBC,GACrB,IAAKC,MAAMC,QAAQF,GAAW,CAC5B,MAAM,IAAIG,MAAM,uC,CAGlBZ,KAAKa,wB,CAOP,iBAAAC,GACE,GAAId,KAAKO,WAAaH,UAAW,CAC/BJ,KAAKa,wB,EAID,sBAAAA,GACN,MAAME,EAAmBf,KAAKgB,UAAU,GACxC,UAAWD,IAAqB,SAAU,CACxCf,KAAKO,SAAWQ,EAChBf,KAAKK,UAAUC,KAAKN,KAAKO,S,KACpB,CACLP,KAAKO,SAAWQ,EAAiBE,IACjCjB,KAAKK,UAAUC,KAAKS,EAAiBG,M,EAazC,MAAAC,GACE,OACEC,EAAA,OAAAH,IAAA,2CAAKI,KAAK,YAAYC,MAAM,gCACzBtB,KAAKgB,UAAUO,KAAI,CAACC,EAAMC,KACzB,MAAMC,SAAkBF,IAAS,SAAWA,EAAOA,EAAKP,IACxD,OACEG,EAAA,OAAKO,QAAS3B,KAAKC,wBAAwByB,SAAiBF,IAAS,SAAWA,EAAOA,EAAKN,QAC1FE,EAAA,QACEC,KAAK,QACLC,MAAO,CACL,2BAA4B,KAC5B,qCAAsCtB,KAAKO,WAAamB,IAGzDA,GAEFD,EAAQzB,KAAKgB,UAAUY,OAAS,GAC/BR,EAAA,QAAMC,KAAK,YAAYC,MAAM,gCAA8B,KAIzD,I"}
@@ -1,2 +0,0 @@
1
- import{r as t,h as e,H as s,g as a}from"./p-e8d5a789.js";const n=":host{display:grid;grid-template-columns:repeat(var(--no-of-columns), 1fr);grid-column-gap:1rem}";const o=n;const r=class{constructor(e){t(this,e);this.columns=undefined}handleColumnsChange(){if(typeof this.columns!=="number"||this.columns===0){this.columns=12}this.host.style.setProperty("--no-of-columns",String(this.columns))}componentWillLoad(){this.handleColumnsChange()}render(){return e(s,{key:"9ba9e7ea26b16c5a28677cbc19d7afe38e5a70be"},e("slot",{key:"62ee116798886fdca9816688f2775421a9ba497c"}))}get host(){return a(this)}static get watchers(){return{columns:["handleColumnsChange"]}}};r.style=o;export{r as six_layout_grid};
2
- //# sourceMappingURL=p-499480a2.entry.js.map
@@ -1,2 +0,0 @@
1
- import{r as e,c as o,h as t,g as i}from"./p-e8d5a789.js";import{F as s}from"./p-6ee48e81.js";import{h as r,a as l}from"./p-0cebf1d2.js";import{E as n}from"./p-8bfb4bfc.js";const c=':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:inline-block}.checkbox{display:inline-flex;align-items:center;font-family:var(--six-font-family);font-size:var(--six-input-font-size-medium);font-weight:var(--six-input-font-weight);color:var(--six-input-color);vertical-align:middle;cursor:pointer}.checkbox--focused .checkbox__control{outline:var(--six-focus-ring);outline-offset:0}.checkbox__control{position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--six-selection-control-toggle-size);height:var(--six-selection-control-toggle-size);border:solid var(--six-border-width) var(--six-input-border-color);border-radius:0;background-color:var(--six-input-background-color);color:var(--six-checkbox-color);transition:var(--six-transition-fast) border-color, var(--six-transition-fast) background-color, var(--six-transition-fast) color, var(--six-transition-fast) box-shadow}.checkbox__control input[type=checkbox]{position:absolute;opacity:0;padding:0;margin:0;pointer-events:none}.checkbox__control .checkbox__icon{display:inline-flex;width:var(--six-selection-control-toggle-size);height:var(--six-selection-control-toggle-size)}.checkbox__control .checkbox__icon svg{width:100%;height:100%}.checkbox:not(.checkbox--checked):not(.checkbox--disabled) .checkbox__control:hover{border-color:var(--six-input-border-color-hover)}.checkbox--checked .checkbox__control,.checkbox--indeterminate .checkbox__control{border-color:var(--six-selection-control-color);background-color:var(--six-selection-control-color)}.checkbox.checkbox--checked:not(.checkbox--disabled) .checkbox__control:hover,.checkbox.checkbox--indeterminate:not(.checkbox--disabled) .checkbox__control:hover{border-color:var(--six-input-border-color-focus);background-color:var(--six-input-border-color-focus)}.checkbox--disabled{cursor:not-allowed;color:var(--six-input-color-disabled)}.checkbox--disabled .checkbox__control{border-color:var(--six-input-border-color-disabled)}.checkbox--disabled.checkbox--checked .checkbox__control,.checkbox--disabled.checkbox--indeterminate .checkbox__control{background-color:var(--six-selection-control-color-disabled)}.checkbox--invalid:not(.checkbox--disabled) .checkbox__control{border-color:var(--six-input-border-color-danger)}.checkbox__text{line-height:var(--six-selection-control-toggle-size);margin-left:0.5em;user-select:none}';const a=c;let h=0;const d=class{constructor(t){e(this,t);this.sixBlur=o(this,"six-checkbox-blur",7);this.sixChange=o(this,"six-checkbox-change",7);this.sixFocus=o(this,"six-checkbox-focus",7);this.inputId=`checkbox-${++h}`;this.labelId=`checkbox-label-${h}`;this.textId=`checkbox-text-${h}`;this.errorTextId=`input-error-text-${h}`;this.eventListeners=new n;this.handleChange=()=>{if(this.nativeInput!=null){this.checked=this.nativeInput.checked;this.indeterminate=false;this.sixChange.emit()}};this.handleBlur=()=>{this.hasFocus=false;this.sixBlur.emit()};this.handleFocus=()=>{this.hasFocus=true;this.sixFocus.emit()};this.handleMouseDown=e=>{var o;e.preventDefault();(o=this.nativeInput)===null||o===void 0?void 0:o.focus()};this.hasFocus=false;this.hasLabelSlot=false;this.hasErrorSlot=false;this.name="";this.value="on";this.disabled=false;this.required=false;this.label="";this.errorText="";this.errorTextCount=undefined;this.invalid=false;this.checked=false;this.indeterminate=false}handleCheckedChange(){if(this.nativeInput==null)return;this.nativeInput.checked=this.checked;this.checked=this.nativeInput.checked;this.nativeInput.indeterminate=this.indeterminate}handleLabelChange(){this.handleSlotChange()}connectedCallback(){var e;(e=this.host.shadowRoot)===null||e===void 0?void 0:e.addEventListener("slotchange",this.handleSlotChange);this.eventListeners.forward("six-checkbox-change","change",this.host);this.eventListeners.forward("six-checkbox-blur","blur",this.host);this.eventListeners.forward("six-checkbox-focus","focus",this.host)}disconnectedCallback(){var e;(e=this.host.shadowRoot)===null||e===void 0?void 0:e.removeEventListener("slotchange",this.handleSlotChange);this.eventListeners.removeAll()}componentWillLoad(){this.handleSlotChange()}componentDidLoad(){const e=this.nativeInput;if(e==null){return}e.indeterminate=this.indeterminate}async setFocus(e){var o;(o=this.nativeInput)===null||o===void 0?void 0:o.focus(e)}async removeFocus(){var e;(e=this.nativeInput)===null||e===void 0?void 0:e.blur()}handleSlotChange(){this.hasLabelSlot=r(this.host,"label");this.hasErrorSlot=r(this.host,"error-text")}render(){return t(s,{key:"3d86769243701a88970d140cb59d8618006a826c",inputId:this.inputId,label:this.label,labelId:this.labelId,hasLabelSlot:this.hasLabelSlot,errorTextId:this.errorTextId,hasErrorTextSlot:this.hasErrorSlot,errorText:this.errorText,errorTextCount:this.errorTextCount,size:"medium",disabled:this.disabled,required:this.required,displayError:this.invalid},t("label",{key:"29a09dd1e61162652a4c204a47efc21059bfd1be",part:"base",class:{checkbox:true,"checkbox--checked":this.checked,"checkbox--disabled":this.disabled,"checkbox--focused":this.hasFocus,"checkbox--invalid":this.invalid,"checkbox--indeterminate":this.indeterminate},htmlFor:this.inputId,onMouseDown:this.handleMouseDown},t("span",{key:"2ef4936f11b18f13719143b8e9c728a94eba9776",part:"control",class:"checkbox__control"},this.checked&&t("span",{part:"checked-icon",class:"checkbox__icon"},t("svg",{viewBox:"0 0 16 16"},t("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd","stroke-linecap":"round"},t("g",{stroke:"currentColor","stroke-width":"2"},t("g",{transform:"translate(3.428571, 3.428571)"},t("path",{d:"M0,5.71428571 L3.42857143,9.14285714"}),t("path",{d:"M9.14285714,0 L3.42857143,9.14285714"})))))),!this.checked&&this.indeterminate&&t("span",{part:"indeterminate-icon",class:"checkbox__icon"},t("svg",{viewBox:"0 0 16 16"},t("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd","stroke-linecap":"round"},t("g",{stroke:"currentColor","stroke-width":"2"},t("g",{transform:"translate(2.285714, 6.857143)"},t("path",{d:"M10.2857143,1.14285714 L1.14285714,1.14285714"})))))),t("input",{key:"d29de22f85a467a5b479c762e404193285ad50b5",ref:e=>this.nativeInput=e,id:this.inputId,type:"checkbox",name:this.name,value:this.value,checked:this.checked,disabled:this.disabled,required:this.required,role:"checkbox","aria-checked":this.checked?"true":"false","aria-labelledby":this.labelId,onChange:this.handleChange,onBlur:this.handleBlur,onFocus:this.handleFocus})),t("span",{key:"39c4d70a0dc0e5e0bad96ddc9d192e7482eeb736",part:"text",id:this.textId,class:"checkbox__text"},t("slot",{key:"5c97a9611282ee621e4e8f5eadb5fd01891b73e2"}))))}get host(){return i(this)}static get watchers(){return{checked:["handleCheckedChange"],indeterminate:["handleCheckedChange"],errorText:["handleLabelChange"],label:["handleLabelChange"]}}};d.style=a;const x=":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:block}:focus{outline:none}.menu-item{position:relative;display:flex;align-items:stretch;font-family:var(--six-font-sans);font-size:var(--six-font-size-small);font-weight:var(--six-font-weight-normal);line-height:var(--six-line-height-normal);letter-spacing:var(--six-letter-spacing-normal);text-align:left;color:var(--six-input-color);border-radius:var(--six-border-radius-medium);padding:var(--six-spacing-x-small) var(--six-spacing-medium);transition:var(--six-transition-fast) fill;user-select:none;white-space:nowrap;cursor:pointer}.menu-item.menu-item--focused:not(.menu-item--disabled){outline:none;background-color:var(--six-menu-item-background-color)}.menu-item.menu-item--active:not(.menu-item--disabled){outline:none;background-color:var(--six-menu-item-background-color)}.menu-item.menu-item--disabled{outline:none;color:var(--six-input-color-disabled);cursor:not-allowed}.menu-item .menu-item__label{flex:1 1 auto;align-self:center}.menu-item .menu-item__prefix{flex:0 0 auto;display:flex;align-items:center}.menu-item .menu-item__prefix ::slotted(:last-child){margin-right:0.5em}.menu-item .menu-item__suffix{flex:0 0 auto;display:flex;align-items:center}.menu-item .menu-item__suffix ::slotted(:first-child){margin-left:0.5em}.menu-item .menu-item__check{flex:0 0 auto;display:flex;align-items:center;margin-left:var(--six-spacing-small);visibility:hidden;font-size:inherit}.menu-item .menu-item__checkbox{margin-top:-1px}.menu-item--checked .menu-item__check{visibility:visible}";const b=x;const m=class{constructor(o){e(this,o);this.handleCheckboxChange=()=>{this.host.dispatchEvent(new Event("click",{bubbles:true,cancelable:true}))};this.hasFocus=false;this.active=false;this.checkType="check";this.checked=false;this.value="";this.disabled=false}connectedCallback(){this.handleBlur=this.handleBlur.bind(this);this.handleFocus=this.handleFocus.bind(this);this.handleMouseEnter=this.handleMouseEnter.bind(this);this.handleMouseLeave=this.handleMouseLeave.bind(this);this.handleCheckboxChange=this.handleCheckboxChange.bind(this)}async setFocus(e){var o;(o=this.menuItem)===null||o===void 0?void 0:o.focus(e)}async removeFocus(){var e;(e=this.menuItem)===null||e===void 0?void 0:e.blur()}getTextLabel(){return Promise.resolve(l(this.defaultSlot))}handleBlur(){this.hasFocus=false}handleFocus(){this.hasFocus=true}handleMouseEnter(){this.active=true}handleMouseLeave(){this.active=false;this.hasFocus=false}render(){return t("div",{key:"a91c841a6fac9e807f623cd337d9902a6ee98aaa",ref:e=>this.menuItem=e,part:"base",class:{"menu-item":true,"menu-item--checked":this.checked,"menu-item--disabled":this.disabled,"menu-item--focused":this.hasFocus,"menu-item--active":this.active},role:"menuitem","aria-disabled":this.disabled?"true":"false","aria-checked":this.checked?"true":"false",tabIndex:!this.disabled?0:undefined,onFocus:this.handleFocus,onBlur:this.handleBlur,onMouseEnter:this.handleMouseEnter,onMouseLeave:this.handleMouseLeave},this.checkType==="checkbox"&&t("span",{class:"menu-item__checkbox"},t("six-checkbox",{"onSix-checkbox-change":this.handleCheckboxChange,disabled:this.disabled,checked:this.checked})),t("span",{key:"5d4fa9c6c86e1506703cdbe0d295e753ba251302",part:"prefix",class:"menu-item__prefix"},t("slot",{key:"619b262517cddb822a90e7251ce720c8bee09bb9",name:"prefix"})),t("span",{key:"94c554dec6b00e361f84ab42f27c06c94908f9e7",part:"label",class:"menu-item__label"},t("slot",{key:"5e0dded9fd06cd4b1bf3cad28025f97da055326b",ref:e=>this.defaultSlot=e})),t("span",{key:"bd328a4e14592019cc68fc12ef66c9e2561f561f",part:"suffix",class:"menu-item__suffix"},t("slot",{key:"7a46bc384827392a4bc55e424d926de1f8d36766",name:"suffix"})),this.checkType==="check"&&t("span",{part:"checked-icon",class:"menu-item__check"},t("six-icon",{size:"small","aria-hidden":"true"},"check")))}get host(){return i(this)}};m.style=b;export{d as six_checkbox,m as six_menu_item};
2
- //# sourceMappingURL=p-50d589eb.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["sixCheckboxCss","SixCheckboxStyle0","id","SixCheckbox","this","inputId","labelId","textId","errorTextId","eventListeners","EventListeners","handleChange","nativeInput","checked","indeterminate","sixChange","emit","handleBlur","hasFocus","sixBlur","handleFocus","sixFocus","handleMouseDown","event","preventDefault","_a","focus","handleCheckedChange","handleLabelChange","handleSlotChange","connectedCallback","host","shadowRoot","addEventListener","forward","disconnectedCallback","removeEventListener","removeAll","componentWillLoad","componentDidLoad","setFocus","options","removeFocus","blur","hasLabelSlot","hasSlot","hasErrorSlot","render","h","FormControl","key","label","hasErrorTextSlot","errorText","errorTextCount","size","disabled","required","displayError","invalid","part","class","checkbox","htmlFor","onMouseDown","viewBox","stroke","fill","transform","d","ref","el","type","name","value","role","onChange","onBlur","onFocus","sixMenuItemCss","SixMenuItemStyle0","SixMenuItem","handleCheckboxChange","dispatchEvent","Event","bubbles","cancelable","bind","handleMouseEnter","handleMouseLeave","menuItem","getTextLabel","Promise","resolve","getTextContent","defaultSlot","active","tabIndex","undefined","onMouseEnter","onMouseLeave","checkType"],"sources":["src/components/six-checkbox/six-checkbox.scss?tag=six-checkbox&encapsulation=shadow","src/components/six-checkbox/six-checkbox.tsx","src/components/six-menu-item/six-menu-item.scss?tag=six-menu-item&encapsulation=shadow","src/components/six-menu-item/six-menu-item.tsx"],"sourcesContent":["@import 'src/global/component';\n@import '../../functional-components/form-control/form-control';\n\n:host {\n display: inline-block;\n}\n\n.checkbox {\n display: inline-flex;\n align-items: center;\n font-family: var(--six-font-family);\n font-size: var(--six-input-font-size-medium);\n font-weight: var(--six-input-font-weight);\n color: var(--six-input-color);\n vertical-align: middle;\n cursor: pointer;\n}\n\n.checkbox--focused {\n .checkbox__control {\n outline: var(--six-focus-ring);\n outline-offset: 0;\n }\n}\n\n.checkbox__control {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--six-selection-control-toggle-size);\n height: var(--six-selection-control-toggle-size);\n border: solid var(--six-border-width) var(--six-input-border-color);\n border-radius: 0;\n background-color: var(--six-input-background-color);\n color: var(--six-checkbox-color);\n transition: var(--six-transition-fast) border-color, var(--six-transition-fast) background-color,\n var(--six-transition-fast) color, var(--six-transition-fast) box-shadow;\n\n input[type='checkbox'] {\n position: absolute;\n opacity: 0;\n padding: 0;\n margin: 0;\n pointer-events: none;\n }\n\n .checkbox__icon {\n display: inline-flex;\n width: var(--six-selection-control-toggle-size);\n height: var(--six-selection-control-toggle-size);\n\n svg {\n width: 100%;\n height: 100%;\n }\n }\n}\n\n// Hover\n.checkbox:not(.checkbox--checked):not(.checkbox--disabled) .checkbox__control:hover {\n border-color: var(--six-input-border-color-hover);\n}\n\n// Checked/indeterminate\n.checkbox--checked .checkbox__control,\n.checkbox--indeterminate .checkbox__control {\n border-color: var(--six-selection-control-color);\n background-color: var(--six-selection-control-color);\n}\n\n// Checked/indeterminate + hover\n.checkbox.checkbox--checked:not(.checkbox--disabled) .checkbox__control:hover,\n.checkbox.checkbox--indeterminate:not(.checkbox--disabled) .checkbox__control:hover {\n border-color: var(--six-input-border-color-focus);\n background-color: var(--six-input-border-color-focus);\n}\n\n// Disabled\n.checkbox--disabled {\n cursor: not-allowed;\n color: var(--six-input-color-disabled);\n\n .checkbox__control {\n border-color: var(--six-input-border-color-disabled);\n }\n\n &.checkbox--checked .checkbox__control,\n &.checkbox--indeterminate .checkbox__control {\n background-color: var(--six-selection-control-color-disabled);\n }\n}\n\n// Invalid\n.checkbox--invalid:not(.checkbox--disabled) {\n .checkbox__control {\n border-color: var(--six-input-border-color-danger);\n }\n}\n\n.checkbox__text {\n line-height: var(--six-selection-control-toggle-size);\n margin-left: 0.5em;\n user-select: 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 { EmptyPayload } from '../../utils/types';\nimport { EventListeners } from '../../utils/event-listeners';\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 checkbox label.\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 control - The checkbox control.\n * @part checked-icon - The container the wraps the checked icon.\n * @part indeterminate-icon - The container that wraps the indeterminate icon.\n * @part text - The checkbox text rendered to the right.\n */\n\n@Component({\n tag: 'six-checkbox',\n styleUrl: 'six-checkbox.scss',\n shadow: true,\n})\nexport class SixCheckbox {\n private inputId = `checkbox-${++id}`;\n private labelId = `checkbox-label-${id}`;\n private textId = `checkbox-text-${id}`;\n private errorTextId = `input-error-text-${id}`;\n private nativeInput?: HTMLInputElement;\n private eventListeners = new EventListeners();\n\n @Element() host!: HTMLSixCheckboxElement;\n\n @State() hasFocus = false;\n @State() hasLabelSlot = false;\n @State() hasErrorSlot = false;\n\n /** The checkbox's name attribute. */\n @Prop() name = '';\n\n /**\n * The value of the checkbox does not mean if it's checked or not, use the `checked`\n * property for that.\n *\n * The value of a checkbox is analogous to the value of an `<input type=\"checkbox\">`,\n * it's only used when the checkbox participates in a native `<form>`.\n */\n @Prop() value = 'on';\n\n /** Set to true to disable the checkbox. */\n @Prop() disabled = false;\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 /** Set to true to draw the checkbox in a checked state. */\n @Prop({ mutable: true, reflect: true }) checked = false;\n\n /** Set to true to draw the checkbox in an indeterminate state. */\n @Prop({ mutable: true, reflect: true }) indeterminate = false;\n\n /** Emitted when the control loses focus. */\n @Event({ eventName: 'six-checkbox-blur' }) sixBlur!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control's checked state changes. */\n @Event({ eventName: 'six-checkbox-change' }) sixChange!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the control gains focus. */\n @Event({ eventName: 'six-checkbox-focus' }) sixFocus!: EventEmitter<EmptyPayload>;\n\n @Watch('checked')\n @Watch('indeterminate')\n handleCheckedChange() {\n if (this.nativeInput == null) return;\n\n this.nativeInput.checked = this.checked;\n this.checked = this.nativeInput.checked;\n this.nativeInput.indeterminate = this.indeterminate;\n }\n\n @Watch('errorText')\n @Watch('label')\n handleLabelChange() {\n this.handleSlotChange();\n }\n\n connectedCallback() {\n this.host.shadowRoot?.addEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.forward('six-checkbox-change', 'change', this.host);\n this.eventListeners.forward('six-checkbox-blur', 'blur', this.host);\n this.eventListeners.forward('six-checkbox-focus', 'focus', this.host);\n }\n\n disconnectedCallback() {\n this.host.shadowRoot?.removeEventListener('slotchange', this.handleSlotChange);\n this.eventListeners.removeAll();\n }\n\n componentWillLoad() {\n this.handleSlotChange();\n }\n\n componentDidLoad() {\n const nativeInput = this.nativeInput;\n if (nativeInput == null) {\n return;\n }\n\n nativeInput.indeterminate = this.indeterminate;\n }\n\n /** Sets focus on the checkbox. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.nativeInput?.focus(options);\n }\n\n /** Removes focus from the checkbox. */\n @Method()\n async removeFocus() {\n this.nativeInput?.blur();\n }\n\n private handleChange = () => {\n if (this.nativeInput != null) {\n this.checked = this.nativeInput.checked;\n this.indeterminate = false;\n this.sixChange.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 handleMouseDown = (event: MouseEvent) => {\n // Prevent clicks on the label from briefly blurring the input\n event.preventDefault();\n this.nativeInput?.focus();\n };\n\n private handleSlotChange() {\n this.hasLabelSlot = hasSlot(this.host, 'label');\n this.hasErrorSlot = hasSlot(this.host, 'error-text');\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 errorTextId={this.errorTextId}\n hasErrorTextSlot={this.hasErrorSlot}\n errorText={this.errorText}\n errorTextCount={this.errorTextCount}\n size=\"medium\"\n disabled={this.disabled}\n required={this.required}\n displayError={this.invalid}\n >\n <label\n part=\"base\"\n class={{\n checkbox: true,\n 'checkbox--checked': this.checked,\n 'checkbox--disabled': this.disabled,\n 'checkbox--focused': this.hasFocus,\n 'checkbox--invalid': this.invalid,\n 'checkbox--indeterminate': this.indeterminate,\n }}\n htmlFor={this.inputId}\n onMouseDown={this.handleMouseDown}\n >\n <span part=\"control\" class=\"checkbox__control\">\n {this.checked && (\n <span part=\"checked-icon\" class=\"checkbox__icon\">\n <svg viewBox=\"0 0 16 16\">\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\" stroke-linecap=\"round\">\n <g stroke=\"currentColor\" stroke-width=\"2\">\n <g transform=\"translate(3.428571, 3.428571)\">\n <path d=\"M0,5.71428571 L3.42857143,9.14285714\"></path>\n <path d=\"M9.14285714,0 L3.42857143,9.14285714\"></path>\n </g>\n </g>\n </g>\n </svg>\n </span>\n )}\n\n {!this.checked && this.indeterminate && (\n <span part=\"indeterminate-icon\" class=\"checkbox__icon\">\n <svg viewBox=\"0 0 16 16\">\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\" stroke-linecap=\"round\">\n <g stroke=\"currentColor\" stroke-width=\"2\">\n <g transform=\"translate(2.285714, 6.857143)\">\n <path d=\"M10.2857143,1.14285714 L1.14285714,1.14285714\"></path>\n </g>\n </g>\n </g>\n </svg>\n </span>\n )}\n\n <input\n ref={(el) => (this.nativeInput = el)}\n id={this.inputId}\n type=\"checkbox\"\n name={this.name}\n value={this.value}\n checked={this.checked}\n disabled={this.disabled}\n required={this.required}\n role=\"checkbox\"\n aria-checked={this.checked ? 'true' : 'false'}\n aria-labelledby={this.labelId}\n onChange={this.handleChange}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n />\n </span>\n\n <span part=\"text\" id={this.textId} class=\"checkbox__text\">\n <slot />\n </span>\n </label>\n </FormControl>\n );\n }\n}\n","@import 'src/global/component';\n\n:host {\n display: block;\n}\n\n:focus {\n outline: none;\n}\n\n.menu-item {\n position: relative;\n display: flex;\n align-items: stretch;\n font-family: var(--six-font-sans);\n font-size: var(--six-font-size-small);\n font-weight: var(--six-font-weight-normal);\n line-height: var(--six-line-height-normal);\n letter-spacing: var(--six-letter-spacing-normal);\n text-align: left;\n color: var(--six-input-color);\n border-radius: var(--six-border-radius-medium);\n padding: var(--six-spacing-x-small) var(--six-spacing-medium);\n transition: var(--six-transition-fast) fill;\n user-select: none;\n white-space: nowrap;\n cursor: pointer;\n\n &.menu-item--focused:not(.menu-item--disabled) {\n outline: none;\n background-color: var(--six-menu-item-background-color);\n }\n\n &.menu-item--active:not(.menu-item--disabled) {\n outline: none;\n background-color: var(--six-menu-item-background-color);\n }\n\n &.menu-item--disabled {\n outline: none;\n color: var(--six-input-color-disabled);\n cursor: not-allowed;\n }\n\n .menu-item__label {\n flex: 1 1 auto;\n align-self: center;\n }\n\n .menu-item__prefix {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n\n ::slotted(:last-child) {\n margin-right: 0.5em;\n }\n }\n\n .menu-item__suffix {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n\n ::slotted(:first-child) {\n margin-left: 0.5em;\n }\n }\n\n .menu-item__check {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n margin-left: var(--six-spacing-small);\n visibility: hidden;\n font-size: inherit;\n }\n\n .menu-item__checkbox {\n margin-top: -1px;\n }\n}\n\n.menu-item--checked .menu-item__check {\n visibility: visible;\n}\n","import { Component, Element, h, Method, Prop, State } from '@stencil/core';\nimport { getTextContent } from '../../utils/slot';\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 menu item's label.\n * @slot prefix - Used to prepend an icon or similar element to the menu item.\n * @slot suffix - Used to append an icon or similar element to the menu item.\n *\n * @part base - The component's base wrapper.\n * @part checked-icon - The container that wraps the checked icon.\n * @part prefix - The prefix container.\n * @part label - The menu item label.\n * @part suffix - The suffix container.\n */\n\n@Component({\n tag: 'six-menu-item',\n styleUrl: 'six-menu-item.scss',\n shadow: true,\n})\nexport class SixMenuItem {\n private menuItem?: HTMLElement;\n private defaultSlot?: HTMLSlotElement;\n\n @Element() host!: HTMLSixMenuItemElement;\n\n @State() hasFocus = false;\n\n @State() active = false;\n\n /** Defines if the checked state is displayed as a checkbox or a check-icon */\n @Prop() checkType: 'checkbox' | 'check' = 'check';\n\n /** Internal: Draws the item in a checked state. CheckType needs to be set to 'checkbox' or 'check' to show the\n * checked state */\n @Prop({ reflect: true }) checked = false;\n\n /** A unique value to store in the menu item. This can be used as a way to identify menu items when selected. */\n @Prop({ reflect: true }) value = '';\n\n /** Set to true to draw the menu item in a disabled state. */\n @Prop({ reflect: true }) disabled = false;\n\n connectedCallback() {\n this.handleBlur = this.handleBlur.bind(this);\n this.handleFocus = this.handleFocus.bind(this);\n this.handleMouseEnter = this.handleMouseEnter.bind(this);\n this.handleMouseLeave = this.handleMouseLeave.bind(this);\n this.handleCheckboxChange = this.handleCheckboxChange.bind(this);\n }\n\n /** Sets focus on the button. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.menuItem?.focus(options);\n }\n\n /** Removes focus from the button. */\n @Method()\n async removeFocus() {\n this.menuItem?.blur();\n }\n\n /** Returns a text label based on the contents of the menu item's default slot. */\n @Method()\n getTextLabel() {\n return Promise.resolve(getTextContent(this.defaultSlot));\n }\n\n private handleBlur() {\n this.hasFocus = false;\n }\n\n private handleFocus() {\n this.hasFocus = true;\n }\n\n private handleMouseEnter() {\n this.active = true;\n }\n\n private handleMouseLeave() {\n this.active = false;\n this.hasFocus = false;\n }\n\n private handleCheckboxChange = () => {\n this.host.dispatchEvent(new Event('click', { bubbles: true, cancelable: true }));\n };\n\n render() {\n return (\n <div\n ref={(el) => (this.menuItem = el)}\n part=\"base\"\n class={{\n 'menu-item': true,\n 'menu-item--checked': this.checked,\n 'menu-item--disabled': this.disabled,\n 'menu-item--focused': this.hasFocus,\n 'menu-item--active': this.active,\n }}\n role=\"menuitem\"\n aria-disabled={this.disabled ? 'true' : 'false'}\n aria-checked={this.checked ? 'true' : 'false'}\n tabIndex={!this.disabled ? 0 : undefined}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onMouseEnter={this.handleMouseEnter}\n onMouseLeave={this.handleMouseLeave}\n >\n {this.checkType === 'checkbox' && (\n <span class=\"menu-item__checkbox\">\n <six-checkbox\n onSix-checkbox-change={this.handleCheckboxChange}\n disabled={this.disabled}\n checked={this.checked}\n ></six-checkbox>\n </span>\n )}\n\n <span part=\"prefix\" class=\"menu-item__prefix\">\n <slot name=\"prefix\" />\n </span>\n\n <span part=\"label\" class=\"menu-item__label\">\n <slot ref={(el) => (this.defaultSlot = el as HTMLSlotElement)} />\n </span>\n\n <span part=\"suffix\" class=\"menu-item__suffix\">\n <slot name=\"suffix\" />\n </span>\n\n {this.checkType === 'check' && (\n <span part=\"checked-icon\" class=\"menu-item__check\">\n <six-icon size=\"small\" aria-hidden=\"true\">\n check\n </six-icon>\n </span>\n )}\n </div>\n );\n }\n}\n"],"mappings":"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"}