@six-group/ui-library 4.2.6 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1265) hide show
  1. package/dist/cjs/{form-control-de259450.js → form-control-b39f1df5.js} +2 -2
  2. package/dist/cjs/{form-control-de259450.js.map → form-control-b39f1df5.js.map} +1 -1
  3. package/dist/cjs/index-417a06c8.js +1948 -0
  4. package/dist/cjs/index-417a06c8.js.map +1 -0
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/six-alert.cjs.entry.js +2 -2
  7. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  8. package/dist/cjs/six-avatar.cjs.entry.js +3 -3
  9. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  10. package/dist/cjs/six-badge.cjs.entry.js +3 -3
  11. package/dist/cjs/six-button.cjs.entry.js +4 -4
  12. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  13. package/dist/cjs/six-card.cjs.entry.js +2 -2
  14. package/dist/cjs/{six-checkbox_2.cjs.entry.js → six-checkbox.cjs.entry.js} +5 -69
  15. package/dist/cjs/six-checkbox.cjs.entry.js.map +1 -0
  16. package/dist/cjs/six-datepicker.cjs.entry.js +4 -4
  17. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  18. package/dist/cjs/six-details.cjs.entry.js +4 -4
  19. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  20. package/dist/cjs/six-dialog.cjs.entry.js +3 -3
  21. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  22. package/dist/cjs/six-drawer.cjs.entry.js +3 -3
  23. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  24. package/dist/cjs/{six-dropdown_2.cjs.entry.js → six-dropdown_3.cjs.entry.js} +73 -9
  25. package/dist/cjs/six-dropdown_3.cjs.entry.js.map +1 -0
  26. package/dist/cjs/six-error-page.cjs.entry.js +2 -2
  27. package/dist/cjs/six-error.cjs.entry.js +2 -2
  28. package/dist/cjs/six-file-list-item.cjs.entry.js +3 -3
  29. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  30. package/dist/cjs/six-file-list.cjs.entry.js +2 -2
  31. package/dist/cjs/six-file-upload.cjs.entry.js +6 -9
  32. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  33. package/dist/cjs/six-footer.cjs.entry.js +2 -2
  34. package/dist/cjs/six-group-label.cjs.entry.js +3 -3
  35. package/dist/cjs/six-header-dropdown-item.cjs.entry.js +45 -0
  36. package/dist/cjs/six-header-dropdown-item.cjs.entry.js.map +1 -0
  37. package/dist/cjs/six-header-item_2.cjs.entry.js +47 -0
  38. package/dist/cjs/six-header-item_2.cjs.entry.js.map +1 -0
  39. package/dist/cjs/six-header-menu-button.cjs.entry.js +23 -0
  40. package/dist/cjs/six-header-menu-button.cjs.entry.js.map +1 -0
  41. package/dist/cjs/six-header.cjs.entry.js +40 -31
  42. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  43. package/dist/cjs/six-icon-button.cjs.entry.js +11 -5
  44. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  45. package/dist/cjs/six-icon.cjs.entry.js +3 -3
  46. package/dist/cjs/six-input.cjs.entry.js +5 -5
  47. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  48. package/dist/cjs/six-item-picker.cjs.entry.js +4 -4
  49. package/dist/cjs/six-language-switcher.cjs.entry.js +2 -2
  50. package/dist/cjs/six-layout-grid.cjs.entry.js +2 -2
  51. package/dist/cjs/six-main-container.cjs.entry.js +2 -2
  52. package/dist/cjs/six-menu-divider.cjs.entry.js +2 -2
  53. package/dist/cjs/six-menu-label.cjs.entry.js +2 -2
  54. package/dist/cjs/six-picto.cjs.entry.js +2 -2
  55. package/dist/cjs/six-progress-bar.cjs.entry.js +4 -4
  56. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  57. package/dist/cjs/six-progress-ring.cjs.entry.js +2 -2
  58. package/dist/cjs/six-radio.cjs.entry.js +3 -3
  59. package/dist/cjs/six-range.cjs.entry.js +4 -4
  60. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  61. package/dist/cjs/six-root.cjs.entry.js +2 -2
  62. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  63. package/dist/cjs/six-search-field.cjs.entry.js +2 -2
  64. package/dist/cjs/six-select.cjs.entry.js +8 -8
  65. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  66. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +3 -3
  67. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  68. package/dist/cjs/six-sidebar-item.cjs.entry.js +4 -4
  69. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -1
  70. package/dist/cjs/six-sidebar.cjs.entry.js +3 -3
  71. package/dist/cjs/six-spinner.cjs.entry.js +1 -1
  72. package/dist/cjs/six-stage-indicator.cjs.entry.js +1 -1
  73. package/dist/cjs/six-switch.cjs.entry.js +4 -4
  74. package/dist/cjs/six-tab-group.cjs.entry.js +3 -3
  75. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  76. package/dist/cjs/six-tab-panel.cjs.entry.js +2 -2
  77. package/dist/cjs/six-tab.cjs.entry.js +3 -3
  78. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  79. package/dist/cjs/six-tag.cjs.entry.js +3 -3
  80. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  81. package/dist/cjs/six-textarea.cjs.entry.js +4 -4
  82. package/dist/cjs/six-tile.cjs.entry.js +6 -6
  83. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  84. package/dist/cjs/six-timepicker.cjs.entry.js +3 -3
  85. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  86. package/dist/cjs/six-tooltip.cjs.entry.js +3 -3
  87. package/dist/cjs/ui-library.cjs.js +10 -10
  88. package/dist/cjs/ui-library.cjs.js.map +1 -1
  89. package/dist/collection/collection-manifest.json +6 -2
  90. package/dist/collection/components/six-alert/six-alert.js +1 -1
  91. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  92. package/dist/collection/components/six-avatar/six-avatar.js +2 -2
  93. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -1
  94. package/dist/collection/components/six-badge/six-badge.js +2 -2
  95. package/dist/collection/components/six-button/six-button.css +0 -4
  96. package/dist/collection/components/six-button/six-button.js +2 -2
  97. package/dist/collection/components/six-button/six-button.js.map +1 -1
  98. package/dist/collection/components/six-card/six-card.js +1 -1
  99. package/dist/collection/components/six-checkbox/six-checkbox.js +2 -2
  100. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  101. package/dist/collection/components/six-datepicker/six-datepicker.js +3 -3
  102. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  103. package/dist/collection/components/six-details/six-details.js +3 -3
  104. package/dist/collection/components/six-details/six-details.js.map +1 -1
  105. package/dist/collection/components/six-dialog/six-dialog.js +2 -2
  106. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  107. package/dist/collection/components/six-drawer/six-drawer.js +2 -2
  108. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  109. package/dist/collection/components/six-dropdown/six-dropdown.js +5 -5
  110. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  111. package/dist/collection/components/six-error/six-error.js +1 -1
  112. package/dist/collection/components/six-error-page/six-error-page.js +1 -1
  113. package/dist/collection/components/six-file-list/six-file-list.js +1 -1
  114. package/dist/collection/components/six-file-list-item/six-file-list-item.js +2 -2
  115. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  116. package/dist/collection/components/six-file-upload/six-file-upload.js +5 -8
  117. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  118. package/dist/collection/components/six-footer/six-footer.js +1 -1
  119. package/dist/collection/components/six-group-label/six-group-label.js +1 -1
  120. package/dist/collection/components/six-header/six-header.css +5 -29
  121. package/dist/collection/components/six-header/six-header.js +115 -47
  122. package/dist/collection/components/six-header/six-header.js.map +1 -1
  123. package/dist/collection/components/six-header-dropdown-item/six-header-dropdown-item.css +15 -0
  124. package/dist/collection/components/six-header-dropdown-item/six-header-dropdown-item.js +53 -0
  125. package/dist/collection/components/six-header-dropdown-item/six-header-dropdown-item.js.map +1 -0
  126. package/dist/collection/components/six-header-item/six-header-item.css +15 -0
  127. package/dist/collection/components/six-header-item/six-header-item.js +51 -0
  128. package/dist/collection/components/six-header-item/six-header-item.js.map +1 -0
  129. package/dist/collection/components/six-header-menu-button/six-header-menu-button.css +27 -0
  130. package/dist/collection/components/six-header-menu-button/six-header-menu-button.js +48 -0
  131. package/dist/collection/components/six-header-menu-button/six-header-menu-button.js.map +1 -0
  132. package/dist/collection/components/six-icon/six-icon.js +2 -2
  133. package/dist/collection/components/six-icon-button/six-icon-button.css +2 -1
  134. package/dist/collection/components/six-icon-button/six-icon-button.js +60 -3
  135. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -1
  136. package/dist/collection/components/six-input/six-input.js +4 -4
  137. package/dist/collection/components/six-input/six-input.js.map +1 -1
  138. package/dist/collection/components/six-item-picker/six-item-picker.js +3 -3
  139. package/dist/collection/components/six-language-switcher/six-language-switcher.js +1 -1
  140. package/dist/collection/components/six-layout-grid/six-layout-grid.js +1 -1
  141. package/dist/collection/components/six-logo/six-logo.css +18 -0
  142. package/dist/collection/components/six-logo/six-logo.js +54 -0
  143. package/dist/collection/components/six-logo/six-logo.js.map +1 -0
  144. package/dist/collection/components/six-main-container/six-main-container.js +1 -1
  145. package/dist/collection/components/six-menu/six-menu.js +2 -2
  146. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  147. package/dist/collection/components/six-menu-divider/six-menu-divider.js +1 -1
  148. package/dist/collection/components/six-menu-item/six-menu-item.js +2 -2
  149. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  150. package/dist/collection/components/six-menu-label/six-menu-label.js +1 -1
  151. package/dist/collection/components/six-picto/six-picto.js +1 -1
  152. package/dist/collection/components/six-progress-bar/six-progress-bar.js +3 -3
  153. package/dist/collection/components/six-progress-bar/six-progress-bar.js.map +1 -1
  154. package/dist/collection/components/six-progress-ring/six-progress-ring.js +1 -1
  155. package/dist/collection/components/six-radio/six-radio.js +2 -2
  156. package/dist/collection/components/six-range/six-range.js +2 -2
  157. package/dist/collection/components/six-range/six-range.js.map +1 -1
  158. package/dist/collection/components/six-root/six-root.js +1 -1
  159. package/dist/collection/components/six-root/six-root.js.map +1 -1
  160. package/dist/collection/components/six-search-field/six-search-field.js +1 -1
  161. package/dist/collection/components/six-select/six-select.js +6 -6
  162. package/dist/collection/components/six-select/six-select.js.map +1 -1
  163. package/dist/collection/components/six-sidebar/six-sidebar.js +2 -2
  164. package/dist/collection/components/six-sidebar-item/six-sidebar-item.css +7 -0
  165. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +2 -2
  166. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +7 -0
  167. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +1 -1
  168. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -1
  169. package/dist/collection/components/six-switch/six-switch.js +2 -2
  170. package/dist/collection/components/six-tab/six-tab.js +2 -2
  171. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  172. package/dist/collection/components/six-tab-group/six-tab-group.js +2 -2
  173. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  174. package/dist/collection/components/six-tab-panel/six-tab-panel.js +1 -1
  175. package/dist/collection/components/six-tag/six-tag.js +2 -2
  176. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  177. package/dist/collection/components/six-textarea/six-textarea.js +4 -4
  178. package/dist/collection/components/six-tile/six-tile.js +5 -5
  179. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  180. package/dist/collection/components/six-timepicker/six-timepicker.js +2 -2
  181. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  182. package/dist/collection/components/six-tooltip/six-tooltip.js +2 -2
  183. package/dist/collection/files/noto-sans-cyrillic-100-italic.woff +0 -0
  184. package/dist/collection/files/noto-sans-cyrillic-100-italic.woff2 +0 -0
  185. package/dist/collection/files/noto-sans-cyrillic-100-normal.woff +0 -0
  186. package/dist/collection/files/noto-sans-cyrillic-100-normal.woff2 +0 -0
  187. package/dist/collection/files/noto-sans-cyrillic-200-italic.woff +0 -0
  188. package/dist/collection/files/noto-sans-cyrillic-200-italic.woff2 +0 -0
  189. package/dist/collection/files/noto-sans-cyrillic-200-normal.woff +0 -0
  190. package/dist/collection/files/noto-sans-cyrillic-200-normal.woff2 +0 -0
  191. package/dist/collection/files/noto-sans-cyrillic-300-italic.woff +0 -0
  192. package/dist/collection/files/noto-sans-cyrillic-300-italic.woff2 +0 -0
  193. package/dist/collection/files/noto-sans-cyrillic-300-normal.woff +0 -0
  194. package/dist/collection/files/noto-sans-cyrillic-300-normal.woff2 +0 -0
  195. package/dist/collection/files/noto-sans-cyrillic-400-italic.woff +0 -0
  196. package/dist/collection/files/noto-sans-cyrillic-400-italic.woff2 +0 -0
  197. package/dist/collection/files/noto-sans-cyrillic-400-normal.woff +0 -0
  198. package/dist/collection/files/noto-sans-cyrillic-400-normal.woff2 +0 -0
  199. package/dist/collection/files/noto-sans-cyrillic-500-italic.woff +0 -0
  200. package/dist/collection/files/noto-sans-cyrillic-500-italic.woff2 +0 -0
  201. package/dist/collection/files/noto-sans-cyrillic-500-normal.woff +0 -0
  202. package/dist/collection/files/noto-sans-cyrillic-500-normal.woff2 +0 -0
  203. package/dist/collection/files/noto-sans-cyrillic-600-italic.woff +0 -0
  204. package/dist/collection/files/noto-sans-cyrillic-600-italic.woff2 +0 -0
  205. package/dist/collection/files/noto-sans-cyrillic-600-normal.woff +0 -0
  206. package/dist/collection/files/noto-sans-cyrillic-600-normal.woff2 +0 -0
  207. package/dist/collection/files/noto-sans-cyrillic-700-italic.woff +0 -0
  208. package/dist/collection/files/noto-sans-cyrillic-700-italic.woff2 +0 -0
  209. package/dist/collection/files/noto-sans-cyrillic-700-normal.woff +0 -0
  210. package/dist/collection/files/noto-sans-cyrillic-700-normal.woff2 +0 -0
  211. package/dist/collection/files/noto-sans-cyrillic-800-italic.woff +0 -0
  212. package/dist/collection/files/noto-sans-cyrillic-800-italic.woff2 +0 -0
  213. package/dist/collection/files/noto-sans-cyrillic-800-normal.woff +0 -0
  214. package/dist/collection/files/noto-sans-cyrillic-800-normal.woff2 +0 -0
  215. package/dist/collection/files/noto-sans-cyrillic-900-italic.woff +0 -0
  216. package/dist/collection/files/noto-sans-cyrillic-900-italic.woff2 +0 -0
  217. package/dist/collection/files/noto-sans-cyrillic-900-normal.woff +0 -0
  218. package/dist/collection/files/noto-sans-cyrillic-900-normal.woff2 +0 -0
  219. package/dist/collection/files/noto-sans-cyrillic-ext-100-italic.woff +0 -0
  220. package/dist/collection/files/noto-sans-cyrillic-ext-100-italic.woff2 +0 -0
  221. package/dist/collection/files/noto-sans-cyrillic-ext-100-normal.woff +0 -0
  222. package/dist/collection/files/noto-sans-cyrillic-ext-100-normal.woff2 +0 -0
  223. package/dist/collection/files/noto-sans-cyrillic-ext-200-italic.woff +0 -0
  224. package/dist/collection/files/noto-sans-cyrillic-ext-200-italic.woff2 +0 -0
  225. package/dist/collection/files/noto-sans-cyrillic-ext-200-normal.woff +0 -0
  226. package/dist/collection/files/noto-sans-cyrillic-ext-200-normal.woff2 +0 -0
  227. package/dist/collection/files/noto-sans-cyrillic-ext-300-italic.woff +0 -0
  228. package/dist/collection/files/noto-sans-cyrillic-ext-300-italic.woff2 +0 -0
  229. package/dist/collection/files/noto-sans-cyrillic-ext-300-normal.woff +0 -0
  230. package/dist/collection/files/noto-sans-cyrillic-ext-300-normal.woff2 +0 -0
  231. package/dist/collection/files/noto-sans-cyrillic-ext-400-italic.woff +0 -0
  232. package/dist/collection/files/noto-sans-cyrillic-ext-400-italic.woff2 +0 -0
  233. package/dist/collection/files/noto-sans-cyrillic-ext-400-normal.woff +0 -0
  234. package/dist/collection/files/noto-sans-cyrillic-ext-400-normal.woff2 +0 -0
  235. package/dist/collection/files/noto-sans-cyrillic-ext-500-italic.woff +0 -0
  236. package/dist/collection/files/noto-sans-cyrillic-ext-500-italic.woff2 +0 -0
  237. package/dist/collection/files/noto-sans-cyrillic-ext-500-normal.woff +0 -0
  238. package/dist/collection/files/noto-sans-cyrillic-ext-500-normal.woff2 +0 -0
  239. package/dist/collection/files/noto-sans-cyrillic-ext-600-italic.woff +0 -0
  240. package/dist/collection/files/noto-sans-cyrillic-ext-600-italic.woff2 +0 -0
  241. package/dist/collection/files/noto-sans-cyrillic-ext-600-normal.woff +0 -0
  242. package/dist/collection/files/noto-sans-cyrillic-ext-600-normal.woff2 +0 -0
  243. package/dist/collection/files/noto-sans-cyrillic-ext-700-italic.woff +0 -0
  244. package/dist/collection/files/noto-sans-cyrillic-ext-700-italic.woff2 +0 -0
  245. package/dist/collection/files/noto-sans-cyrillic-ext-700-normal.woff +0 -0
  246. package/dist/collection/files/noto-sans-cyrillic-ext-700-normal.woff2 +0 -0
  247. package/dist/collection/files/noto-sans-cyrillic-ext-800-italic.woff +0 -0
  248. package/dist/collection/files/noto-sans-cyrillic-ext-800-italic.woff2 +0 -0
  249. package/dist/collection/files/noto-sans-cyrillic-ext-800-normal.woff +0 -0
  250. package/dist/collection/files/noto-sans-cyrillic-ext-800-normal.woff2 +0 -0
  251. package/dist/collection/files/noto-sans-cyrillic-ext-900-italic.woff +0 -0
  252. package/dist/collection/files/noto-sans-cyrillic-ext-900-italic.woff2 +0 -0
  253. package/dist/collection/files/noto-sans-cyrillic-ext-900-normal.woff +0 -0
  254. package/dist/collection/files/noto-sans-cyrillic-ext-900-normal.woff2 +0 -0
  255. package/dist/collection/files/noto-sans-devanagari-100-italic.woff +0 -0
  256. package/dist/collection/files/noto-sans-devanagari-100-italic.woff2 +0 -0
  257. package/dist/collection/files/noto-sans-devanagari-100-normal.woff +0 -0
  258. package/dist/collection/files/noto-sans-devanagari-100-normal.woff2 +0 -0
  259. package/dist/collection/files/noto-sans-devanagari-200-italic.woff +0 -0
  260. package/dist/collection/files/noto-sans-devanagari-200-italic.woff2 +0 -0
  261. package/dist/collection/files/noto-sans-devanagari-200-normal.woff +0 -0
  262. package/dist/collection/files/noto-sans-devanagari-200-normal.woff2 +0 -0
  263. package/dist/collection/files/noto-sans-devanagari-300-italic.woff +0 -0
  264. package/dist/collection/files/noto-sans-devanagari-300-italic.woff2 +0 -0
  265. package/dist/collection/files/noto-sans-devanagari-300-normal.woff +0 -0
  266. package/dist/collection/files/noto-sans-devanagari-300-normal.woff2 +0 -0
  267. package/dist/collection/files/noto-sans-devanagari-400-italic.woff +0 -0
  268. package/dist/collection/files/noto-sans-devanagari-400-italic.woff2 +0 -0
  269. package/dist/collection/files/noto-sans-devanagari-400-normal.woff +0 -0
  270. package/dist/collection/files/noto-sans-devanagari-400-normal.woff2 +0 -0
  271. package/dist/collection/files/noto-sans-devanagari-500-italic.woff +0 -0
  272. package/dist/collection/files/noto-sans-devanagari-500-italic.woff2 +0 -0
  273. package/dist/collection/files/noto-sans-devanagari-500-normal.woff +0 -0
  274. package/dist/collection/files/noto-sans-devanagari-500-normal.woff2 +0 -0
  275. package/dist/collection/files/noto-sans-devanagari-600-italic.woff +0 -0
  276. package/dist/collection/files/noto-sans-devanagari-600-italic.woff2 +0 -0
  277. package/dist/collection/files/noto-sans-devanagari-600-normal.woff +0 -0
  278. package/dist/collection/files/noto-sans-devanagari-600-normal.woff2 +0 -0
  279. package/dist/collection/files/noto-sans-devanagari-700-italic.woff +0 -0
  280. package/dist/collection/files/noto-sans-devanagari-700-italic.woff2 +0 -0
  281. package/dist/collection/files/noto-sans-devanagari-700-normal.woff +0 -0
  282. package/dist/collection/files/noto-sans-devanagari-700-normal.woff2 +0 -0
  283. package/dist/collection/files/noto-sans-devanagari-800-italic.woff +0 -0
  284. package/dist/collection/files/noto-sans-devanagari-800-italic.woff2 +0 -0
  285. package/dist/collection/files/noto-sans-devanagari-800-normal.woff +0 -0
  286. package/dist/collection/files/noto-sans-devanagari-800-normal.woff2 +0 -0
  287. package/dist/collection/files/noto-sans-devanagari-900-italic.woff +0 -0
  288. package/dist/collection/files/noto-sans-devanagari-900-italic.woff2 +0 -0
  289. package/dist/collection/files/noto-sans-devanagari-900-normal.woff +0 -0
  290. package/dist/collection/files/noto-sans-devanagari-900-normal.woff2 +0 -0
  291. package/dist/collection/files/noto-sans-greek-100-italic.woff +0 -0
  292. package/dist/collection/files/noto-sans-greek-100-italic.woff2 +0 -0
  293. package/dist/collection/files/noto-sans-greek-100-normal.woff +0 -0
  294. package/dist/collection/files/noto-sans-greek-100-normal.woff2 +0 -0
  295. package/dist/collection/files/noto-sans-greek-200-italic.woff +0 -0
  296. package/dist/collection/files/noto-sans-greek-200-italic.woff2 +0 -0
  297. package/dist/collection/files/noto-sans-greek-200-normal.woff +0 -0
  298. package/dist/collection/files/noto-sans-greek-200-normal.woff2 +0 -0
  299. package/dist/collection/files/noto-sans-greek-300-italic.woff +0 -0
  300. package/dist/collection/files/noto-sans-greek-300-italic.woff2 +0 -0
  301. package/dist/collection/files/noto-sans-greek-300-normal.woff +0 -0
  302. package/dist/collection/files/noto-sans-greek-300-normal.woff2 +0 -0
  303. package/dist/collection/files/noto-sans-greek-400-italic.woff +0 -0
  304. package/dist/collection/files/noto-sans-greek-400-italic.woff2 +0 -0
  305. package/dist/collection/files/noto-sans-greek-400-normal.woff +0 -0
  306. package/dist/collection/files/noto-sans-greek-400-normal.woff2 +0 -0
  307. package/dist/collection/files/noto-sans-greek-500-italic.woff +0 -0
  308. package/dist/collection/files/noto-sans-greek-500-italic.woff2 +0 -0
  309. package/dist/collection/files/noto-sans-greek-500-normal.woff +0 -0
  310. package/dist/collection/files/noto-sans-greek-500-normal.woff2 +0 -0
  311. package/dist/collection/files/noto-sans-greek-600-italic.woff +0 -0
  312. package/dist/collection/files/noto-sans-greek-600-italic.woff2 +0 -0
  313. package/dist/collection/files/noto-sans-greek-600-normal.woff +0 -0
  314. package/dist/collection/files/noto-sans-greek-600-normal.woff2 +0 -0
  315. package/dist/collection/files/noto-sans-greek-700-italic.woff +0 -0
  316. package/dist/collection/files/noto-sans-greek-700-italic.woff2 +0 -0
  317. package/dist/collection/files/noto-sans-greek-700-normal.woff +0 -0
  318. package/dist/collection/files/noto-sans-greek-700-normal.woff2 +0 -0
  319. package/dist/collection/files/noto-sans-greek-800-italic.woff +0 -0
  320. package/dist/collection/files/noto-sans-greek-800-italic.woff2 +0 -0
  321. package/dist/collection/files/noto-sans-greek-800-normal.woff +0 -0
  322. package/dist/collection/files/noto-sans-greek-800-normal.woff2 +0 -0
  323. package/dist/collection/files/noto-sans-greek-900-italic.woff +0 -0
  324. package/dist/collection/files/noto-sans-greek-900-italic.woff2 +0 -0
  325. package/dist/collection/files/noto-sans-greek-900-normal.woff +0 -0
  326. package/dist/collection/files/noto-sans-greek-900-normal.woff2 +0 -0
  327. package/dist/collection/files/noto-sans-greek-ext-100-italic.woff +0 -0
  328. package/dist/collection/files/noto-sans-greek-ext-100-italic.woff2 +0 -0
  329. package/dist/collection/files/noto-sans-greek-ext-100-normal.woff +0 -0
  330. package/dist/collection/files/noto-sans-greek-ext-100-normal.woff2 +0 -0
  331. package/dist/collection/files/noto-sans-greek-ext-200-italic.woff +0 -0
  332. package/dist/collection/files/noto-sans-greek-ext-200-italic.woff2 +0 -0
  333. package/dist/collection/files/noto-sans-greek-ext-200-normal.woff +0 -0
  334. package/dist/collection/files/noto-sans-greek-ext-200-normal.woff2 +0 -0
  335. package/dist/collection/files/noto-sans-greek-ext-300-italic.woff +0 -0
  336. package/dist/collection/files/noto-sans-greek-ext-300-italic.woff2 +0 -0
  337. package/dist/collection/files/noto-sans-greek-ext-300-normal.woff +0 -0
  338. package/dist/collection/files/noto-sans-greek-ext-300-normal.woff2 +0 -0
  339. package/dist/collection/files/noto-sans-greek-ext-400-italic.woff +0 -0
  340. package/dist/collection/files/noto-sans-greek-ext-400-italic.woff2 +0 -0
  341. package/dist/collection/files/noto-sans-greek-ext-400-normal.woff +0 -0
  342. package/dist/collection/files/noto-sans-greek-ext-400-normal.woff2 +0 -0
  343. package/dist/collection/files/noto-sans-greek-ext-500-italic.woff +0 -0
  344. package/dist/collection/files/noto-sans-greek-ext-500-italic.woff2 +0 -0
  345. package/dist/collection/files/noto-sans-greek-ext-500-normal.woff +0 -0
  346. package/dist/collection/files/noto-sans-greek-ext-500-normal.woff2 +0 -0
  347. package/dist/collection/files/noto-sans-greek-ext-600-italic.woff +0 -0
  348. package/dist/collection/files/noto-sans-greek-ext-600-italic.woff2 +0 -0
  349. package/dist/collection/files/noto-sans-greek-ext-600-normal.woff +0 -0
  350. package/dist/collection/files/noto-sans-greek-ext-600-normal.woff2 +0 -0
  351. package/dist/collection/files/noto-sans-greek-ext-700-italic.woff +0 -0
  352. package/dist/collection/files/noto-sans-greek-ext-700-italic.woff2 +0 -0
  353. package/dist/collection/files/noto-sans-greek-ext-700-normal.woff +0 -0
  354. package/dist/collection/files/noto-sans-greek-ext-700-normal.woff2 +0 -0
  355. package/dist/collection/files/noto-sans-greek-ext-800-italic.woff +0 -0
  356. package/dist/collection/files/noto-sans-greek-ext-800-italic.woff2 +0 -0
  357. package/dist/collection/files/noto-sans-greek-ext-800-normal.woff +0 -0
  358. package/dist/collection/files/noto-sans-greek-ext-800-normal.woff2 +0 -0
  359. package/dist/collection/files/noto-sans-greek-ext-900-italic.woff +0 -0
  360. package/dist/collection/files/noto-sans-greek-ext-900-italic.woff2 +0 -0
  361. package/dist/collection/files/noto-sans-greek-ext-900-normal.woff +0 -0
  362. package/dist/collection/files/noto-sans-greek-ext-900-normal.woff2 +0 -0
  363. package/dist/collection/files/noto-sans-latin-100-italic.woff +0 -0
  364. package/dist/collection/files/noto-sans-latin-100-italic.woff2 +0 -0
  365. package/dist/collection/files/noto-sans-latin-100-normal.woff +0 -0
  366. package/dist/collection/files/noto-sans-latin-100-normal.woff2 +0 -0
  367. package/dist/collection/files/noto-sans-latin-200-italic.woff +0 -0
  368. package/dist/collection/files/noto-sans-latin-200-italic.woff2 +0 -0
  369. package/dist/collection/files/noto-sans-latin-200-normal.woff +0 -0
  370. package/dist/collection/files/noto-sans-latin-200-normal.woff2 +0 -0
  371. package/dist/collection/files/noto-sans-latin-300-italic.woff +0 -0
  372. package/dist/collection/files/noto-sans-latin-300-italic.woff2 +0 -0
  373. package/dist/collection/files/noto-sans-latin-300-normal.woff +0 -0
  374. package/dist/collection/files/noto-sans-latin-300-normal.woff2 +0 -0
  375. package/dist/collection/files/noto-sans-latin-400-italic.woff +0 -0
  376. package/dist/collection/files/noto-sans-latin-400-italic.woff2 +0 -0
  377. package/dist/collection/files/noto-sans-latin-400-normal.woff +0 -0
  378. package/dist/collection/files/noto-sans-latin-400-normal.woff2 +0 -0
  379. package/dist/collection/files/noto-sans-latin-500-italic.woff +0 -0
  380. package/dist/collection/files/noto-sans-latin-500-italic.woff2 +0 -0
  381. package/dist/collection/files/noto-sans-latin-500-normal.woff +0 -0
  382. package/dist/collection/files/noto-sans-latin-500-normal.woff2 +0 -0
  383. package/dist/collection/files/noto-sans-latin-600-italic.woff +0 -0
  384. package/dist/collection/files/noto-sans-latin-600-italic.woff2 +0 -0
  385. package/dist/collection/files/noto-sans-latin-600-normal.woff +0 -0
  386. package/dist/collection/files/noto-sans-latin-600-normal.woff2 +0 -0
  387. package/dist/collection/files/noto-sans-latin-700-italic.woff +0 -0
  388. package/dist/collection/files/noto-sans-latin-700-italic.woff2 +0 -0
  389. package/dist/collection/files/noto-sans-latin-700-normal.woff +0 -0
  390. package/dist/collection/files/noto-sans-latin-700-normal.woff2 +0 -0
  391. package/dist/collection/files/noto-sans-latin-800-italic.woff +0 -0
  392. package/dist/collection/files/noto-sans-latin-800-italic.woff2 +0 -0
  393. package/dist/collection/files/noto-sans-latin-800-normal.woff +0 -0
  394. package/dist/collection/files/noto-sans-latin-800-normal.woff2 +0 -0
  395. package/dist/collection/files/noto-sans-latin-900-italic.woff +0 -0
  396. package/dist/collection/files/noto-sans-latin-900-italic.woff2 +0 -0
  397. package/dist/collection/files/noto-sans-latin-900-normal.woff +0 -0
  398. package/dist/collection/files/noto-sans-latin-900-normal.woff2 +0 -0
  399. package/dist/collection/files/noto-sans-latin-ext-100-italic.woff +0 -0
  400. package/dist/collection/files/noto-sans-latin-ext-100-italic.woff2 +0 -0
  401. package/dist/collection/files/noto-sans-latin-ext-100-normal.woff +0 -0
  402. package/dist/collection/files/noto-sans-latin-ext-100-normal.woff2 +0 -0
  403. package/dist/collection/files/noto-sans-latin-ext-200-italic.woff +0 -0
  404. package/dist/collection/files/noto-sans-latin-ext-200-italic.woff2 +0 -0
  405. package/dist/collection/files/noto-sans-latin-ext-200-normal.woff +0 -0
  406. package/dist/collection/files/noto-sans-latin-ext-200-normal.woff2 +0 -0
  407. package/dist/collection/files/noto-sans-latin-ext-300-italic.woff +0 -0
  408. package/dist/collection/files/noto-sans-latin-ext-300-italic.woff2 +0 -0
  409. package/dist/collection/files/noto-sans-latin-ext-300-normal.woff +0 -0
  410. package/dist/collection/files/noto-sans-latin-ext-300-normal.woff2 +0 -0
  411. package/dist/collection/files/noto-sans-latin-ext-400-italic.woff +0 -0
  412. package/dist/collection/files/noto-sans-latin-ext-400-italic.woff2 +0 -0
  413. package/dist/collection/files/noto-sans-latin-ext-400-normal.woff +0 -0
  414. package/dist/collection/files/noto-sans-latin-ext-400-normal.woff2 +0 -0
  415. package/dist/collection/files/noto-sans-latin-ext-500-italic.woff +0 -0
  416. package/dist/collection/files/noto-sans-latin-ext-500-italic.woff2 +0 -0
  417. package/dist/collection/files/noto-sans-latin-ext-500-normal.woff +0 -0
  418. package/dist/collection/files/noto-sans-latin-ext-500-normal.woff2 +0 -0
  419. package/dist/collection/files/noto-sans-latin-ext-600-italic.woff +0 -0
  420. package/dist/collection/files/noto-sans-latin-ext-600-italic.woff2 +0 -0
  421. package/dist/collection/files/noto-sans-latin-ext-600-normal.woff +0 -0
  422. package/dist/collection/files/noto-sans-latin-ext-600-normal.woff2 +0 -0
  423. package/dist/collection/files/noto-sans-latin-ext-700-italic.woff +0 -0
  424. package/dist/collection/files/noto-sans-latin-ext-700-italic.woff2 +0 -0
  425. package/dist/collection/files/noto-sans-latin-ext-700-normal.woff +0 -0
  426. package/dist/collection/files/noto-sans-latin-ext-700-normal.woff2 +0 -0
  427. package/dist/collection/files/noto-sans-latin-ext-800-italic.woff +0 -0
  428. package/dist/collection/files/noto-sans-latin-ext-800-italic.woff2 +0 -0
  429. package/dist/collection/files/noto-sans-latin-ext-800-normal.woff +0 -0
  430. package/dist/collection/files/noto-sans-latin-ext-800-normal.woff2 +0 -0
  431. package/dist/collection/files/noto-sans-latin-ext-900-italic.woff +0 -0
  432. package/dist/collection/files/noto-sans-latin-ext-900-italic.woff2 +0 -0
  433. package/dist/collection/files/noto-sans-latin-ext-900-normal.woff +0 -0
  434. package/dist/collection/files/noto-sans-latin-ext-900-normal.woff2 +0 -0
  435. package/dist/collection/files/noto-sans-vietnamese-100-italic.woff +0 -0
  436. package/dist/collection/files/noto-sans-vietnamese-100-italic.woff2 +0 -0
  437. package/dist/collection/files/noto-sans-vietnamese-100-normal.woff +0 -0
  438. package/dist/collection/files/noto-sans-vietnamese-100-normal.woff2 +0 -0
  439. package/dist/collection/files/noto-sans-vietnamese-200-italic.woff +0 -0
  440. package/dist/collection/files/noto-sans-vietnamese-200-italic.woff2 +0 -0
  441. package/dist/collection/files/noto-sans-vietnamese-200-normal.woff +0 -0
  442. package/dist/collection/files/noto-sans-vietnamese-200-normal.woff2 +0 -0
  443. package/dist/collection/files/noto-sans-vietnamese-300-italic.woff +0 -0
  444. package/dist/collection/files/noto-sans-vietnamese-300-italic.woff2 +0 -0
  445. package/dist/collection/files/noto-sans-vietnamese-300-normal.woff +0 -0
  446. package/dist/collection/files/noto-sans-vietnamese-300-normal.woff2 +0 -0
  447. package/dist/collection/files/noto-sans-vietnamese-400-italic.woff +0 -0
  448. package/dist/collection/files/noto-sans-vietnamese-400-italic.woff2 +0 -0
  449. package/dist/collection/files/noto-sans-vietnamese-400-normal.woff +0 -0
  450. package/dist/collection/files/noto-sans-vietnamese-400-normal.woff2 +0 -0
  451. package/dist/collection/files/noto-sans-vietnamese-500-italic.woff +0 -0
  452. package/dist/collection/files/noto-sans-vietnamese-500-italic.woff2 +0 -0
  453. package/dist/collection/files/noto-sans-vietnamese-500-normal.woff +0 -0
  454. package/dist/collection/files/noto-sans-vietnamese-500-normal.woff2 +0 -0
  455. package/dist/collection/files/noto-sans-vietnamese-600-italic.woff +0 -0
  456. package/dist/collection/files/noto-sans-vietnamese-600-italic.woff2 +0 -0
  457. package/dist/collection/files/noto-sans-vietnamese-600-normal.woff +0 -0
  458. package/dist/collection/files/noto-sans-vietnamese-600-normal.woff2 +0 -0
  459. package/dist/collection/files/noto-sans-vietnamese-700-italic.woff +0 -0
  460. package/dist/collection/files/noto-sans-vietnamese-700-italic.woff2 +0 -0
  461. package/dist/collection/files/noto-sans-vietnamese-700-normal.woff +0 -0
  462. package/dist/collection/files/noto-sans-vietnamese-700-normal.woff2 +0 -0
  463. package/dist/collection/files/noto-sans-vietnamese-800-italic.woff +0 -0
  464. package/dist/collection/files/noto-sans-vietnamese-800-italic.woff2 +0 -0
  465. package/dist/collection/files/noto-sans-vietnamese-800-normal.woff +0 -0
  466. package/dist/collection/files/noto-sans-vietnamese-800-normal.woff2 +0 -0
  467. package/dist/collection/files/noto-sans-vietnamese-900-italic.woff +0 -0
  468. package/dist/collection/files/noto-sans-vietnamese-900-italic.woff2 +0 -0
  469. package/dist/collection/files/noto-sans-vietnamese-900-normal.woff +0 -0
  470. package/dist/collection/files/noto-sans-vietnamese-900-normal.woff2 +0 -0
  471. package/dist/components/index.js +8 -0
  472. package/dist/components/index.js.map +1 -1
  473. package/dist/components/six-alert.js +1 -1
  474. package/dist/components/six-alert.js.map +1 -1
  475. package/dist/components/six-avatar.js +2 -2
  476. package/dist/components/six-avatar.js.map +1 -1
  477. package/dist/components/six-badge.js +2 -2
  478. package/dist/components/six-button2.js +3 -3
  479. package/dist/components/six-button2.js.map +1 -1
  480. package/dist/components/six-card.js +1 -1
  481. package/dist/components/six-checkbox2.js +2 -2
  482. package/dist/components/six-checkbox2.js.map +1 -1
  483. package/dist/components/six-datepicker.js +3 -3
  484. package/dist/components/six-datepicker.js.map +1 -1
  485. package/dist/components/six-details2.js +3 -3
  486. package/dist/components/six-details2.js.map +1 -1
  487. package/dist/components/six-dialog.js +2 -2
  488. package/dist/components/six-dialog.js.map +1 -1
  489. package/dist/components/six-drawer.js +2 -2
  490. package/dist/components/six-drawer.js.map +1 -1
  491. package/dist/components/six-dropdown2.js +5 -5
  492. package/dist/components/six-dropdown2.js.map +1 -1
  493. package/dist/components/six-error-page.js +1 -1
  494. package/dist/components/six-error2.js +1 -1
  495. package/dist/components/six-file-list-item.js +2 -2
  496. package/dist/components/six-file-list-item.js.map +1 -1
  497. package/dist/components/six-file-list.js +1 -1
  498. package/dist/components/six-file-upload.js +5 -8
  499. package/dist/components/six-file-upload.js.map +1 -1
  500. package/dist/components/six-footer.js +1 -1
  501. package/dist/components/six-group-label.js +1 -1
  502. package/dist/components/six-header-dropdown-item.d.ts +11 -0
  503. package/dist/components/six-header-dropdown-item.js +103 -0
  504. package/dist/components/six-header-dropdown-item.js.map +1 -0
  505. package/dist/components/six-header-item.d.ts +11 -0
  506. package/dist/components/six-header-item.js +8 -0
  507. package/dist/components/six-header-item.js.map +1 -0
  508. package/dist/components/six-header-item2.js +39 -0
  509. package/dist/components/six-header-item2.js.map +1 -0
  510. package/dist/components/six-header-menu-button.d.ts +11 -0
  511. package/dist/components/six-header-menu-button.js +57 -0
  512. package/dist/components/six-header-menu-button.js.map +1 -0
  513. package/dist/components/six-header.js +64 -42
  514. package/dist/components/six-header.js.map +1 -1
  515. package/dist/components/six-icon-button2.js +14 -5
  516. package/dist/components/six-icon-button2.js.map +1 -1
  517. package/dist/components/six-icon2.js +2 -2
  518. package/dist/components/six-input2.js +3 -3
  519. package/dist/components/six-input2.js.map +1 -1
  520. package/dist/components/six-item-picker2.js +3 -3
  521. package/dist/components/six-language-switcher.js +1 -1
  522. package/dist/components/six-layout-grid.js +1 -1
  523. package/dist/components/six-logo.d.ts +11 -0
  524. package/dist/components/six-logo.js +8 -0
  525. package/dist/components/six-logo.js.map +1 -0
  526. package/dist/components/six-logo2.js +42 -0
  527. package/dist/components/six-logo2.js.map +1 -0
  528. package/dist/components/six-main-container.js +1 -1
  529. package/dist/components/six-menu-divider.js +1 -1
  530. package/dist/components/six-menu-item2.js +2 -2
  531. package/dist/components/six-menu-item2.js.map +1 -1
  532. package/dist/components/six-menu-label.js +1 -1
  533. package/dist/components/six-menu2.js +2 -2
  534. package/dist/components/six-menu2.js.map +1 -1
  535. package/dist/components/six-picto2.js +1 -1
  536. package/dist/components/six-progress-bar.js +3 -3
  537. package/dist/components/six-progress-bar.js.map +1 -1
  538. package/dist/components/six-progress-ring.js +1 -1
  539. package/dist/components/six-radio.js +2 -2
  540. package/dist/components/six-range.js +2 -2
  541. package/dist/components/six-range.js.map +1 -1
  542. package/dist/components/six-root.js +1 -1
  543. package/dist/components/six-root.js.map +1 -1
  544. package/dist/components/six-search-field.js +1 -1
  545. package/dist/components/six-select.js +6 -6
  546. package/dist/components/six-select.js.map +1 -1
  547. package/dist/components/six-sidebar-item-group.js +2 -2
  548. package/dist/components/six-sidebar-item-group.js.map +1 -1
  549. package/dist/components/six-sidebar-item.js +3 -3
  550. package/dist/components/six-sidebar-item.js.map +1 -1
  551. package/dist/components/six-sidebar.js +2 -2
  552. package/dist/components/six-switch.js +2 -2
  553. package/dist/components/six-tab-group.js +2 -2
  554. package/dist/components/six-tab-group.js.map +1 -1
  555. package/dist/components/six-tab-panel.js +1 -1
  556. package/dist/components/six-tab.js +2 -2
  557. package/dist/components/six-tab.js.map +1 -1
  558. package/dist/components/six-tag.js +2 -2
  559. package/dist/components/six-tag.js.map +1 -1
  560. package/dist/components/six-textarea.js +2 -2
  561. package/dist/components/six-tile.js +5 -5
  562. package/dist/components/six-tile.js.map +1 -1
  563. package/dist/components/six-timepicker2.js +2 -2
  564. package/dist/components/six-timepicker2.js.map +1 -1
  565. package/dist/components/six-tooltip2.js +2 -2
  566. package/dist/components.d.ts +34 -0
  567. package/dist/components.json +477 -32
  568. package/dist/esm/{form-control-30c5bd8b.js → form-control-ad1710bf.js} +2 -2
  569. package/dist/esm/{form-control-30c5bd8b.js.map → form-control-ad1710bf.js.map} +1 -1
  570. package/dist/esm/index-a7bee415.js +1919 -0
  571. package/dist/esm/index-a7bee415.js.map +1 -0
  572. package/dist/esm/loader.js +3 -3
  573. package/dist/esm/six-alert.entry.js +2 -2
  574. package/dist/esm/six-alert.entry.js.map +1 -1
  575. package/dist/esm/six-avatar.entry.js +3 -3
  576. package/dist/esm/six-avatar.entry.js.map +1 -1
  577. package/dist/esm/six-badge.entry.js +3 -3
  578. package/dist/esm/six-button.entry.js +4 -4
  579. package/dist/esm/six-button.entry.js.map +1 -1
  580. package/dist/esm/six-card.entry.js +2 -2
  581. package/dist/esm/{six-checkbox_2.entry.js → six-checkbox.entry.js} +7 -70
  582. package/dist/esm/six-checkbox.entry.js.map +1 -0
  583. package/dist/esm/six-datepicker.entry.js +4 -4
  584. package/dist/esm/six-datepicker.entry.js.map +1 -1
  585. package/dist/esm/six-details.entry.js +4 -4
  586. package/dist/esm/six-details.entry.js.map +1 -1
  587. package/dist/esm/six-dialog.entry.js +3 -3
  588. package/dist/esm/six-dialog.entry.js.map +1 -1
  589. package/dist/esm/six-drawer.entry.js +3 -3
  590. package/dist/esm/six-drawer.entry.js.map +1 -1
  591. package/dist/esm/{six-dropdown_2.entry.js → six-dropdown_3.entry.js} +73 -10
  592. package/dist/esm/six-dropdown_3.entry.js.map +1 -0
  593. package/dist/esm/six-error-page.entry.js +2 -2
  594. package/dist/esm/six-error.entry.js +2 -2
  595. package/dist/esm/six-file-list-item.entry.js +3 -3
  596. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  597. package/dist/esm/six-file-list.entry.js +2 -2
  598. package/dist/esm/six-file-upload.entry.js +6 -9
  599. package/dist/esm/six-file-upload.entry.js.map +1 -1
  600. package/dist/esm/six-footer.entry.js +2 -2
  601. package/dist/esm/six-group-label.entry.js +3 -3
  602. package/dist/esm/six-header-dropdown-item.entry.js +41 -0
  603. package/dist/esm/six-header-dropdown-item.entry.js.map +1 -0
  604. package/dist/esm/six-header-item_2.entry.js +42 -0
  605. package/dist/esm/six-header-item_2.entry.js.map +1 -0
  606. package/dist/esm/six-header-menu-button.entry.js +19 -0
  607. package/dist/esm/six-header-menu-button.entry.js.map +1 -0
  608. package/dist/esm/six-header.entry.js +40 -31
  609. package/dist/esm/six-header.entry.js.map +1 -1
  610. package/dist/esm/six-icon-button.entry.js +11 -5
  611. package/dist/esm/six-icon-button.entry.js.map +1 -1
  612. package/dist/esm/six-icon.entry.js +3 -3
  613. package/dist/esm/six-input.entry.js +5 -5
  614. package/dist/esm/six-input.entry.js.map +1 -1
  615. package/dist/esm/six-item-picker.entry.js +4 -4
  616. package/dist/esm/six-language-switcher.entry.js +2 -2
  617. package/dist/esm/six-layout-grid.entry.js +2 -2
  618. package/dist/esm/six-main-container.entry.js +2 -2
  619. package/dist/esm/six-menu-divider.entry.js +2 -2
  620. package/dist/esm/six-menu-label.entry.js +2 -2
  621. package/dist/esm/six-picto.entry.js +2 -2
  622. package/dist/esm/six-progress-bar.entry.js +4 -4
  623. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  624. package/dist/esm/six-progress-ring.entry.js +2 -2
  625. package/dist/esm/six-radio.entry.js +3 -3
  626. package/dist/esm/six-range.entry.js +4 -4
  627. package/dist/esm/six-range.entry.js.map +1 -1
  628. package/dist/esm/six-root.entry.js +2 -2
  629. package/dist/esm/six-root.entry.js.map +1 -1
  630. package/dist/esm/six-search-field.entry.js +2 -2
  631. package/dist/esm/six-select.entry.js +8 -8
  632. package/dist/esm/six-select.entry.js.map +1 -1
  633. package/dist/esm/six-sidebar-item-group.entry.js +3 -3
  634. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  635. package/dist/esm/six-sidebar-item.entry.js +4 -4
  636. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  637. package/dist/esm/six-sidebar.entry.js +3 -3
  638. package/dist/esm/six-spinner.entry.js +1 -1
  639. package/dist/esm/six-stage-indicator.entry.js +1 -1
  640. package/dist/esm/six-switch.entry.js +4 -4
  641. package/dist/esm/six-tab-group.entry.js +3 -3
  642. package/dist/esm/six-tab-group.entry.js.map +1 -1
  643. package/dist/esm/six-tab-panel.entry.js +2 -2
  644. package/dist/esm/six-tab.entry.js +3 -3
  645. package/dist/esm/six-tab.entry.js.map +1 -1
  646. package/dist/esm/six-tag.entry.js +3 -3
  647. package/dist/esm/six-tag.entry.js.map +1 -1
  648. package/dist/esm/six-textarea.entry.js +4 -4
  649. package/dist/esm/six-tile.entry.js +6 -6
  650. package/dist/esm/six-tile.entry.js.map +1 -1
  651. package/dist/esm/six-timepicker.entry.js +3 -3
  652. package/dist/esm/six-timepicker.entry.js.map +1 -1
  653. package/dist/esm/six-tooltip.entry.js +3 -3
  654. package/dist/esm/ui-library.js +11 -11
  655. package/dist/esm/ui-library.js.map +1 -1
  656. package/dist/types/components/six-file-upload/six-file-upload.d.ts +1 -1
  657. package/dist/types/components/six-header/six-header.d.ts +79 -18
  658. package/dist/types/components/six-header-dropdown-item/six-header-dropdown-item.d.ts +13 -0
  659. package/dist/types/components/six-header-item/six-header-item.d.ts +15 -0
  660. package/dist/types/components/six-header-menu-button/six-header-menu-button.d.ts +11 -0
  661. package/dist/types/components/six-icon-button/six-icon-button.d.ts +6 -0
  662. package/dist/types/components/six-logo/six-logo.d.ts +9 -0
  663. package/dist/types/components.d.ts +197 -5
  664. package/dist/types/stencil-public-runtime.d.ts +3 -10
  665. package/dist/types/utils/type-check.d.ts +1 -1
  666. package/dist/ui-library/files/noto-sans-cyrillic-100-italic.woff +0 -0
  667. package/dist/ui-library/files/noto-sans-cyrillic-100-italic.woff2 +0 -0
  668. package/dist/ui-library/files/noto-sans-cyrillic-100-normal.woff +0 -0
  669. package/dist/ui-library/files/noto-sans-cyrillic-100-normal.woff2 +0 -0
  670. package/dist/ui-library/files/noto-sans-cyrillic-200-italic.woff +0 -0
  671. package/dist/ui-library/files/noto-sans-cyrillic-200-italic.woff2 +0 -0
  672. package/dist/ui-library/files/noto-sans-cyrillic-200-normal.woff +0 -0
  673. package/dist/ui-library/files/noto-sans-cyrillic-200-normal.woff2 +0 -0
  674. package/dist/ui-library/files/noto-sans-cyrillic-300-italic.woff +0 -0
  675. package/dist/ui-library/files/noto-sans-cyrillic-300-italic.woff2 +0 -0
  676. package/dist/ui-library/files/noto-sans-cyrillic-300-normal.woff +0 -0
  677. package/dist/ui-library/files/noto-sans-cyrillic-300-normal.woff2 +0 -0
  678. package/dist/ui-library/files/noto-sans-cyrillic-400-italic.woff +0 -0
  679. package/dist/ui-library/files/noto-sans-cyrillic-400-italic.woff2 +0 -0
  680. package/dist/ui-library/files/noto-sans-cyrillic-400-normal.woff +0 -0
  681. package/dist/ui-library/files/noto-sans-cyrillic-400-normal.woff2 +0 -0
  682. package/dist/ui-library/files/noto-sans-cyrillic-500-italic.woff +0 -0
  683. package/dist/ui-library/files/noto-sans-cyrillic-500-italic.woff2 +0 -0
  684. package/dist/ui-library/files/noto-sans-cyrillic-500-normal.woff +0 -0
  685. package/dist/ui-library/files/noto-sans-cyrillic-500-normal.woff2 +0 -0
  686. package/dist/ui-library/files/noto-sans-cyrillic-600-italic.woff +0 -0
  687. package/dist/ui-library/files/noto-sans-cyrillic-600-italic.woff2 +0 -0
  688. package/dist/ui-library/files/noto-sans-cyrillic-600-normal.woff +0 -0
  689. package/dist/ui-library/files/noto-sans-cyrillic-600-normal.woff2 +0 -0
  690. package/dist/ui-library/files/noto-sans-cyrillic-700-italic.woff +0 -0
  691. package/dist/ui-library/files/noto-sans-cyrillic-700-italic.woff2 +0 -0
  692. package/dist/ui-library/files/noto-sans-cyrillic-700-normal.woff +0 -0
  693. package/dist/ui-library/files/noto-sans-cyrillic-700-normal.woff2 +0 -0
  694. package/dist/ui-library/files/noto-sans-cyrillic-800-italic.woff +0 -0
  695. package/dist/ui-library/files/noto-sans-cyrillic-800-italic.woff2 +0 -0
  696. package/dist/ui-library/files/noto-sans-cyrillic-800-normal.woff +0 -0
  697. package/dist/ui-library/files/noto-sans-cyrillic-800-normal.woff2 +0 -0
  698. package/dist/ui-library/files/noto-sans-cyrillic-900-italic.woff +0 -0
  699. package/dist/ui-library/files/noto-sans-cyrillic-900-italic.woff2 +0 -0
  700. package/dist/ui-library/files/noto-sans-cyrillic-900-normal.woff +0 -0
  701. package/dist/ui-library/files/noto-sans-cyrillic-900-normal.woff2 +0 -0
  702. package/dist/ui-library/files/noto-sans-cyrillic-ext-100-italic.woff +0 -0
  703. package/dist/ui-library/files/noto-sans-cyrillic-ext-100-italic.woff2 +0 -0
  704. package/dist/ui-library/files/noto-sans-cyrillic-ext-100-normal.woff +0 -0
  705. package/dist/ui-library/files/noto-sans-cyrillic-ext-100-normal.woff2 +0 -0
  706. package/dist/ui-library/files/noto-sans-cyrillic-ext-200-italic.woff +0 -0
  707. package/dist/ui-library/files/noto-sans-cyrillic-ext-200-italic.woff2 +0 -0
  708. package/dist/ui-library/files/noto-sans-cyrillic-ext-200-normal.woff +0 -0
  709. package/dist/ui-library/files/noto-sans-cyrillic-ext-200-normal.woff2 +0 -0
  710. package/dist/ui-library/files/noto-sans-cyrillic-ext-300-italic.woff +0 -0
  711. package/dist/ui-library/files/noto-sans-cyrillic-ext-300-italic.woff2 +0 -0
  712. package/dist/ui-library/files/noto-sans-cyrillic-ext-300-normal.woff +0 -0
  713. package/dist/ui-library/files/noto-sans-cyrillic-ext-300-normal.woff2 +0 -0
  714. package/dist/ui-library/files/noto-sans-cyrillic-ext-400-italic.woff +0 -0
  715. package/dist/ui-library/files/noto-sans-cyrillic-ext-400-italic.woff2 +0 -0
  716. package/dist/ui-library/files/noto-sans-cyrillic-ext-400-normal.woff +0 -0
  717. package/dist/ui-library/files/noto-sans-cyrillic-ext-400-normal.woff2 +0 -0
  718. package/dist/ui-library/files/noto-sans-cyrillic-ext-500-italic.woff +0 -0
  719. package/dist/ui-library/files/noto-sans-cyrillic-ext-500-italic.woff2 +0 -0
  720. package/dist/ui-library/files/noto-sans-cyrillic-ext-500-normal.woff +0 -0
  721. package/dist/ui-library/files/noto-sans-cyrillic-ext-500-normal.woff2 +0 -0
  722. package/dist/ui-library/files/noto-sans-cyrillic-ext-600-italic.woff +0 -0
  723. package/dist/ui-library/files/noto-sans-cyrillic-ext-600-italic.woff2 +0 -0
  724. package/dist/ui-library/files/noto-sans-cyrillic-ext-600-normal.woff +0 -0
  725. package/dist/ui-library/files/noto-sans-cyrillic-ext-600-normal.woff2 +0 -0
  726. package/dist/ui-library/files/noto-sans-cyrillic-ext-700-italic.woff +0 -0
  727. package/dist/ui-library/files/noto-sans-cyrillic-ext-700-italic.woff2 +0 -0
  728. package/dist/ui-library/files/noto-sans-cyrillic-ext-700-normal.woff +0 -0
  729. package/dist/ui-library/files/noto-sans-cyrillic-ext-700-normal.woff2 +0 -0
  730. package/dist/ui-library/files/noto-sans-cyrillic-ext-800-italic.woff +0 -0
  731. package/dist/ui-library/files/noto-sans-cyrillic-ext-800-italic.woff2 +0 -0
  732. package/dist/ui-library/files/noto-sans-cyrillic-ext-800-normal.woff +0 -0
  733. package/dist/ui-library/files/noto-sans-cyrillic-ext-800-normal.woff2 +0 -0
  734. package/dist/ui-library/files/noto-sans-cyrillic-ext-900-italic.woff +0 -0
  735. package/dist/ui-library/files/noto-sans-cyrillic-ext-900-italic.woff2 +0 -0
  736. package/dist/ui-library/files/noto-sans-cyrillic-ext-900-normal.woff +0 -0
  737. package/dist/ui-library/files/noto-sans-cyrillic-ext-900-normal.woff2 +0 -0
  738. package/dist/ui-library/files/noto-sans-devanagari-100-italic.woff +0 -0
  739. package/dist/ui-library/files/noto-sans-devanagari-100-italic.woff2 +0 -0
  740. package/dist/ui-library/files/noto-sans-devanagari-100-normal.woff +0 -0
  741. package/dist/ui-library/files/noto-sans-devanagari-100-normal.woff2 +0 -0
  742. package/dist/ui-library/files/noto-sans-devanagari-200-italic.woff +0 -0
  743. package/dist/ui-library/files/noto-sans-devanagari-200-italic.woff2 +0 -0
  744. package/dist/ui-library/files/noto-sans-devanagari-200-normal.woff +0 -0
  745. package/dist/ui-library/files/noto-sans-devanagari-200-normal.woff2 +0 -0
  746. package/dist/ui-library/files/noto-sans-devanagari-300-italic.woff +0 -0
  747. package/dist/ui-library/files/noto-sans-devanagari-300-italic.woff2 +0 -0
  748. package/dist/ui-library/files/noto-sans-devanagari-300-normal.woff +0 -0
  749. package/dist/ui-library/files/noto-sans-devanagari-300-normal.woff2 +0 -0
  750. package/dist/ui-library/files/noto-sans-devanagari-400-italic.woff +0 -0
  751. package/dist/ui-library/files/noto-sans-devanagari-400-italic.woff2 +0 -0
  752. package/dist/ui-library/files/noto-sans-devanagari-400-normal.woff +0 -0
  753. package/dist/ui-library/files/noto-sans-devanagari-400-normal.woff2 +0 -0
  754. package/dist/ui-library/files/noto-sans-devanagari-500-italic.woff +0 -0
  755. package/dist/ui-library/files/noto-sans-devanagari-500-italic.woff2 +0 -0
  756. package/dist/ui-library/files/noto-sans-devanagari-500-normal.woff +0 -0
  757. package/dist/ui-library/files/noto-sans-devanagari-500-normal.woff2 +0 -0
  758. package/dist/ui-library/files/noto-sans-devanagari-600-italic.woff +0 -0
  759. package/dist/ui-library/files/noto-sans-devanagari-600-italic.woff2 +0 -0
  760. package/dist/ui-library/files/noto-sans-devanagari-600-normal.woff +0 -0
  761. package/dist/ui-library/files/noto-sans-devanagari-600-normal.woff2 +0 -0
  762. package/dist/ui-library/files/noto-sans-devanagari-700-italic.woff +0 -0
  763. package/dist/ui-library/files/noto-sans-devanagari-700-italic.woff2 +0 -0
  764. package/dist/ui-library/files/noto-sans-devanagari-700-normal.woff +0 -0
  765. package/dist/ui-library/files/noto-sans-devanagari-700-normal.woff2 +0 -0
  766. package/dist/ui-library/files/noto-sans-devanagari-800-italic.woff +0 -0
  767. package/dist/ui-library/files/noto-sans-devanagari-800-italic.woff2 +0 -0
  768. package/dist/ui-library/files/noto-sans-devanagari-800-normal.woff +0 -0
  769. package/dist/ui-library/files/noto-sans-devanagari-800-normal.woff2 +0 -0
  770. package/dist/ui-library/files/noto-sans-devanagari-900-italic.woff +0 -0
  771. package/dist/ui-library/files/noto-sans-devanagari-900-italic.woff2 +0 -0
  772. package/dist/ui-library/files/noto-sans-devanagari-900-normal.woff +0 -0
  773. package/dist/ui-library/files/noto-sans-devanagari-900-normal.woff2 +0 -0
  774. package/dist/ui-library/files/noto-sans-greek-100-italic.woff +0 -0
  775. package/dist/ui-library/files/noto-sans-greek-100-italic.woff2 +0 -0
  776. package/dist/ui-library/files/noto-sans-greek-100-normal.woff +0 -0
  777. package/dist/ui-library/files/noto-sans-greek-100-normal.woff2 +0 -0
  778. package/dist/ui-library/files/noto-sans-greek-200-italic.woff +0 -0
  779. package/dist/ui-library/files/noto-sans-greek-200-italic.woff2 +0 -0
  780. package/dist/ui-library/files/noto-sans-greek-200-normal.woff +0 -0
  781. package/dist/ui-library/files/noto-sans-greek-200-normal.woff2 +0 -0
  782. package/dist/ui-library/files/noto-sans-greek-300-italic.woff +0 -0
  783. package/dist/ui-library/files/noto-sans-greek-300-italic.woff2 +0 -0
  784. package/dist/ui-library/files/noto-sans-greek-300-normal.woff +0 -0
  785. package/dist/ui-library/files/noto-sans-greek-300-normal.woff2 +0 -0
  786. package/dist/ui-library/files/noto-sans-greek-400-italic.woff +0 -0
  787. package/dist/ui-library/files/noto-sans-greek-400-italic.woff2 +0 -0
  788. package/dist/ui-library/files/noto-sans-greek-400-normal.woff +0 -0
  789. package/dist/ui-library/files/noto-sans-greek-400-normal.woff2 +0 -0
  790. package/dist/ui-library/files/noto-sans-greek-500-italic.woff +0 -0
  791. package/dist/ui-library/files/noto-sans-greek-500-italic.woff2 +0 -0
  792. package/dist/ui-library/files/noto-sans-greek-500-normal.woff +0 -0
  793. package/dist/ui-library/files/noto-sans-greek-500-normal.woff2 +0 -0
  794. package/dist/ui-library/files/noto-sans-greek-600-italic.woff +0 -0
  795. package/dist/ui-library/files/noto-sans-greek-600-italic.woff2 +0 -0
  796. package/dist/ui-library/files/noto-sans-greek-600-normal.woff +0 -0
  797. package/dist/ui-library/files/noto-sans-greek-600-normal.woff2 +0 -0
  798. package/dist/ui-library/files/noto-sans-greek-700-italic.woff +0 -0
  799. package/dist/ui-library/files/noto-sans-greek-700-italic.woff2 +0 -0
  800. package/dist/ui-library/files/noto-sans-greek-700-normal.woff +0 -0
  801. package/dist/ui-library/files/noto-sans-greek-700-normal.woff2 +0 -0
  802. package/dist/ui-library/files/noto-sans-greek-800-italic.woff +0 -0
  803. package/dist/ui-library/files/noto-sans-greek-800-italic.woff2 +0 -0
  804. package/dist/ui-library/files/noto-sans-greek-800-normal.woff +0 -0
  805. package/dist/ui-library/files/noto-sans-greek-800-normal.woff2 +0 -0
  806. package/dist/ui-library/files/noto-sans-greek-900-italic.woff +0 -0
  807. package/dist/ui-library/files/noto-sans-greek-900-italic.woff2 +0 -0
  808. package/dist/ui-library/files/noto-sans-greek-900-normal.woff +0 -0
  809. package/dist/ui-library/files/noto-sans-greek-900-normal.woff2 +0 -0
  810. package/dist/ui-library/files/noto-sans-greek-ext-100-italic.woff +0 -0
  811. package/dist/ui-library/files/noto-sans-greek-ext-100-italic.woff2 +0 -0
  812. package/dist/ui-library/files/noto-sans-greek-ext-100-normal.woff +0 -0
  813. package/dist/ui-library/files/noto-sans-greek-ext-100-normal.woff2 +0 -0
  814. package/dist/ui-library/files/noto-sans-greek-ext-200-italic.woff +0 -0
  815. package/dist/ui-library/files/noto-sans-greek-ext-200-italic.woff2 +0 -0
  816. package/dist/ui-library/files/noto-sans-greek-ext-200-normal.woff +0 -0
  817. package/dist/ui-library/files/noto-sans-greek-ext-200-normal.woff2 +0 -0
  818. package/dist/ui-library/files/noto-sans-greek-ext-300-italic.woff +0 -0
  819. package/dist/ui-library/files/noto-sans-greek-ext-300-italic.woff2 +0 -0
  820. package/dist/ui-library/files/noto-sans-greek-ext-300-normal.woff +0 -0
  821. package/dist/ui-library/files/noto-sans-greek-ext-300-normal.woff2 +0 -0
  822. package/dist/ui-library/files/noto-sans-greek-ext-400-italic.woff +0 -0
  823. package/dist/ui-library/files/noto-sans-greek-ext-400-italic.woff2 +0 -0
  824. package/dist/ui-library/files/noto-sans-greek-ext-400-normal.woff +0 -0
  825. package/dist/ui-library/files/noto-sans-greek-ext-400-normal.woff2 +0 -0
  826. package/dist/ui-library/files/noto-sans-greek-ext-500-italic.woff +0 -0
  827. package/dist/ui-library/files/noto-sans-greek-ext-500-italic.woff2 +0 -0
  828. package/dist/ui-library/files/noto-sans-greek-ext-500-normal.woff +0 -0
  829. package/dist/ui-library/files/noto-sans-greek-ext-500-normal.woff2 +0 -0
  830. package/dist/ui-library/files/noto-sans-greek-ext-600-italic.woff +0 -0
  831. package/dist/ui-library/files/noto-sans-greek-ext-600-italic.woff2 +0 -0
  832. package/dist/ui-library/files/noto-sans-greek-ext-600-normal.woff +0 -0
  833. package/dist/ui-library/files/noto-sans-greek-ext-600-normal.woff2 +0 -0
  834. package/dist/ui-library/files/noto-sans-greek-ext-700-italic.woff +0 -0
  835. package/dist/ui-library/files/noto-sans-greek-ext-700-italic.woff2 +0 -0
  836. package/dist/ui-library/files/noto-sans-greek-ext-700-normal.woff +0 -0
  837. package/dist/ui-library/files/noto-sans-greek-ext-700-normal.woff2 +0 -0
  838. package/dist/ui-library/files/noto-sans-greek-ext-800-italic.woff +0 -0
  839. package/dist/ui-library/files/noto-sans-greek-ext-800-italic.woff2 +0 -0
  840. package/dist/ui-library/files/noto-sans-greek-ext-800-normal.woff +0 -0
  841. package/dist/ui-library/files/noto-sans-greek-ext-800-normal.woff2 +0 -0
  842. package/dist/ui-library/files/noto-sans-greek-ext-900-italic.woff +0 -0
  843. package/dist/ui-library/files/noto-sans-greek-ext-900-italic.woff2 +0 -0
  844. package/dist/ui-library/files/noto-sans-greek-ext-900-normal.woff +0 -0
  845. package/dist/ui-library/files/noto-sans-greek-ext-900-normal.woff2 +0 -0
  846. package/dist/ui-library/files/noto-sans-latin-100-italic.woff +0 -0
  847. package/dist/ui-library/files/noto-sans-latin-100-italic.woff2 +0 -0
  848. package/dist/ui-library/files/noto-sans-latin-100-normal.woff +0 -0
  849. package/dist/ui-library/files/noto-sans-latin-100-normal.woff2 +0 -0
  850. package/dist/ui-library/files/noto-sans-latin-200-italic.woff +0 -0
  851. package/dist/ui-library/files/noto-sans-latin-200-italic.woff2 +0 -0
  852. package/dist/ui-library/files/noto-sans-latin-200-normal.woff +0 -0
  853. package/dist/ui-library/files/noto-sans-latin-200-normal.woff2 +0 -0
  854. package/dist/ui-library/files/noto-sans-latin-300-italic.woff +0 -0
  855. package/dist/ui-library/files/noto-sans-latin-300-italic.woff2 +0 -0
  856. package/dist/ui-library/files/noto-sans-latin-300-normal.woff +0 -0
  857. package/dist/ui-library/files/noto-sans-latin-300-normal.woff2 +0 -0
  858. package/dist/ui-library/files/noto-sans-latin-400-italic.woff +0 -0
  859. package/dist/ui-library/files/noto-sans-latin-400-italic.woff2 +0 -0
  860. package/dist/ui-library/files/noto-sans-latin-400-normal.woff +0 -0
  861. package/dist/ui-library/files/noto-sans-latin-400-normal.woff2 +0 -0
  862. package/dist/ui-library/files/noto-sans-latin-500-italic.woff +0 -0
  863. package/dist/ui-library/files/noto-sans-latin-500-italic.woff2 +0 -0
  864. package/dist/ui-library/files/noto-sans-latin-500-normal.woff +0 -0
  865. package/dist/ui-library/files/noto-sans-latin-500-normal.woff2 +0 -0
  866. package/dist/ui-library/files/noto-sans-latin-600-italic.woff +0 -0
  867. package/dist/ui-library/files/noto-sans-latin-600-italic.woff2 +0 -0
  868. package/dist/ui-library/files/noto-sans-latin-600-normal.woff +0 -0
  869. package/dist/ui-library/files/noto-sans-latin-600-normal.woff2 +0 -0
  870. package/dist/ui-library/files/noto-sans-latin-700-italic.woff +0 -0
  871. package/dist/ui-library/files/noto-sans-latin-700-italic.woff2 +0 -0
  872. package/dist/ui-library/files/noto-sans-latin-700-normal.woff +0 -0
  873. package/dist/ui-library/files/noto-sans-latin-700-normal.woff2 +0 -0
  874. package/dist/ui-library/files/noto-sans-latin-800-italic.woff +0 -0
  875. package/dist/ui-library/files/noto-sans-latin-800-italic.woff2 +0 -0
  876. package/dist/ui-library/files/noto-sans-latin-800-normal.woff +0 -0
  877. package/dist/ui-library/files/noto-sans-latin-800-normal.woff2 +0 -0
  878. package/dist/ui-library/files/noto-sans-latin-900-italic.woff +0 -0
  879. package/dist/ui-library/files/noto-sans-latin-900-italic.woff2 +0 -0
  880. package/dist/ui-library/files/noto-sans-latin-900-normal.woff +0 -0
  881. package/dist/ui-library/files/noto-sans-latin-900-normal.woff2 +0 -0
  882. package/dist/ui-library/files/noto-sans-latin-ext-100-italic.woff +0 -0
  883. package/dist/ui-library/files/noto-sans-latin-ext-100-italic.woff2 +0 -0
  884. package/dist/ui-library/files/noto-sans-latin-ext-100-normal.woff +0 -0
  885. package/dist/ui-library/files/noto-sans-latin-ext-100-normal.woff2 +0 -0
  886. package/dist/ui-library/files/noto-sans-latin-ext-200-italic.woff +0 -0
  887. package/dist/ui-library/files/noto-sans-latin-ext-200-italic.woff2 +0 -0
  888. package/dist/ui-library/files/noto-sans-latin-ext-200-normal.woff +0 -0
  889. package/dist/ui-library/files/noto-sans-latin-ext-200-normal.woff2 +0 -0
  890. package/dist/ui-library/files/noto-sans-latin-ext-300-italic.woff +0 -0
  891. package/dist/ui-library/files/noto-sans-latin-ext-300-italic.woff2 +0 -0
  892. package/dist/ui-library/files/noto-sans-latin-ext-300-normal.woff +0 -0
  893. package/dist/ui-library/files/noto-sans-latin-ext-300-normal.woff2 +0 -0
  894. package/dist/ui-library/files/noto-sans-latin-ext-400-italic.woff +0 -0
  895. package/dist/ui-library/files/noto-sans-latin-ext-400-italic.woff2 +0 -0
  896. package/dist/ui-library/files/noto-sans-latin-ext-400-normal.woff +0 -0
  897. package/dist/ui-library/files/noto-sans-latin-ext-400-normal.woff2 +0 -0
  898. package/dist/ui-library/files/noto-sans-latin-ext-500-italic.woff +0 -0
  899. package/dist/ui-library/files/noto-sans-latin-ext-500-italic.woff2 +0 -0
  900. package/dist/ui-library/files/noto-sans-latin-ext-500-normal.woff +0 -0
  901. package/dist/ui-library/files/noto-sans-latin-ext-500-normal.woff2 +0 -0
  902. package/dist/ui-library/files/noto-sans-latin-ext-600-italic.woff +0 -0
  903. package/dist/ui-library/files/noto-sans-latin-ext-600-italic.woff2 +0 -0
  904. package/dist/ui-library/files/noto-sans-latin-ext-600-normal.woff +0 -0
  905. package/dist/ui-library/files/noto-sans-latin-ext-600-normal.woff2 +0 -0
  906. package/dist/ui-library/files/noto-sans-latin-ext-700-italic.woff +0 -0
  907. package/dist/ui-library/files/noto-sans-latin-ext-700-italic.woff2 +0 -0
  908. package/dist/ui-library/files/noto-sans-latin-ext-700-normal.woff +0 -0
  909. package/dist/ui-library/files/noto-sans-latin-ext-700-normal.woff2 +0 -0
  910. package/dist/ui-library/files/noto-sans-latin-ext-800-italic.woff +0 -0
  911. package/dist/ui-library/files/noto-sans-latin-ext-800-italic.woff2 +0 -0
  912. package/dist/ui-library/files/noto-sans-latin-ext-800-normal.woff +0 -0
  913. package/dist/ui-library/files/noto-sans-latin-ext-800-normal.woff2 +0 -0
  914. package/dist/ui-library/files/noto-sans-latin-ext-900-italic.woff +0 -0
  915. package/dist/ui-library/files/noto-sans-latin-ext-900-italic.woff2 +0 -0
  916. package/dist/ui-library/files/noto-sans-latin-ext-900-normal.woff +0 -0
  917. package/dist/ui-library/files/noto-sans-latin-ext-900-normal.woff2 +0 -0
  918. package/dist/ui-library/files/noto-sans-vietnamese-100-italic.woff +0 -0
  919. package/dist/ui-library/files/noto-sans-vietnamese-100-italic.woff2 +0 -0
  920. package/dist/ui-library/files/noto-sans-vietnamese-100-normal.woff +0 -0
  921. package/dist/ui-library/files/noto-sans-vietnamese-100-normal.woff2 +0 -0
  922. package/dist/ui-library/files/noto-sans-vietnamese-200-italic.woff +0 -0
  923. package/dist/ui-library/files/noto-sans-vietnamese-200-italic.woff2 +0 -0
  924. package/dist/ui-library/files/noto-sans-vietnamese-200-normal.woff +0 -0
  925. package/dist/ui-library/files/noto-sans-vietnamese-200-normal.woff2 +0 -0
  926. package/dist/ui-library/files/noto-sans-vietnamese-300-italic.woff +0 -0
  927. package/dist/ui-library/files/noto-sans-vietnamese-300-italic.woff2 +0 -0
  928. package/dist/ui-library/files/noto-sans-vietnamese-300-normal.woff +0 -0
  929. package/dist/ui-library/files/noto-sans-vietnamese-300-normal.woff2 +0 -0
  930. package/dist/ui-library/files/noto-sans-vietnamese-400-italic.woff +0 -0
  931. package/dist/ui-library/files/noto-sans-vietnamese-400-italic.woff2 +0 -0
  932. package/dist/ui-library/files/noto-sans-vietnamese-400-normal.woff +0 -0
  933. package/dist/ui-library/files/noto-sans-vietnamese-400-normal.woff2 +0 -0
  934. package/dist/ui-library/files/noto-sans-vietnamese-500-italic.woff +0 -0
  935. package/dist/ui-library/files/noto-sans-vietnamese-500-italic.woff2 +0 -0
  936. package/dist/ui-library/files/noto-sans-vietnamese-500-normal.woff +0 -0
  937. package/dist/ui-library/files/noto-sans-vietnamese-500-normal.woff2 +0 -0
  938. package/dist/ui-library/files/noto-sans-vietnamese-600-italic.woff +0 -0
  939. package/dist/ui-library/files/noto-sans-vietnamese-600-italic.woff2 +0 -0
  940. package/dist/ui-library/files/noto-sans-vietnamese-600-normal.woff +0 -0
  941. package/dist/ui-library/files/noto-sans-vietnamese-600-normal.woff2 +0 -0
  942. package/dist/ui-library/files/noto-sans-vietnamese-700-italic.woff +0 -0
  943. package/dist/ui-library/files/noto-sans-vietnamese-700-italic.woff2 +0 -0
  944. package/dist/ui-library/files/noto-sans-vietnamese-700-normal.woff +0 -0
  945. package/dist/ui-library/files/noto-sans-vietnamese-700-normal.woff2 +0 -0
  946. package/dist/ui-library/files/noto-sans-vietnamese-800-italic.woff +0 -0
  947. package/dist/ui-library/files/noto-sans-vietnamese-800-italic.woff2 +0 -0
  948. package/dist/ui-library/files/noto-sans-vietnamese-800-normal.woff +0 -0
  949. package/dist/ui-library/files/noto-sans-vietnamese-800-normal.woff2 +0 -0
  950. package/dist/ui-library/files/noto-sans-vietnamese-900-italic.woff +0 -0
  951. package/dist/ui-library/files/noto-sans-vietnamese-900-italic.woff2 +0 -0
  952. package/dist/ui-library/files/noto-sans-vietnamese-900-normal.woff +0 -0
  953. package/dist/ui-library/files/noto-sans-vietnamese-900-normal.woff2 +0 -0
  954. package/dist/ui-library/index.esm.js.map +1 -1
  955. package/dist/ui-library/{p-d42f1ea9.entry.js → p-03acec96.entry.js} +2 -2
  956. package/dist/ui-library/{p-d42f1ea9.entry.js.map → p-03acec96.entry.js.map} +1 -1
  957. package/dist/ui-library/p-06ba4450.js.map +1 -1
  958. package/dist/ui-library/{p-b7c68f74.entry.js → p-06d562b7.entry.js} +2 -2
  959. package/dist/ui-library/{p-b7c68f74.entry.js.map → p-06d562b7.entry.js.map} +1 -1
  960. package/dist/ui-library/p-07b6203f.entry.js +2 -0
  961. package/dist/ui-library/{p-7c18b8ca.entry.js.map → p-07b6203f.entry.js.map} +1 -1
  962. package/dist/ui-library/{p-2386627e.entry.js → p-0a6b6429.entry.js} +2 -2
  963. package/dist/ui-library/{p-2386627e.entry.js.map → p-0a6b6429.entry.js.map} +1 -1
  964. package/dist/ui-library/p-0cebf1d2.js.map +1 -1
  965. package/dist/ui-library/p-14d09601.entry.js +2 -0
  966. package/dist/ui-library/{p-11344bb8.entry.js.map → p-14d09601.entry.js.map} +1 -1
  967. package/dist/ui-library/{p-45b0748e.entry.js → p-171df3ad.entry.js} +2 -2
  968. package/dist/ui-library/{p-45b0748e.entry.js.map → p-171df3ad.entry.js.map} +1 -1
  969. package/dist/ui-library/p-1cc3b56d.entry.js +2 -0
  970. package/dist/ui-library/{p-36d5f98a.entry.js.map → p-1cc3b56d.entry.js.map} +1 -1
  971. package/dist/ui-library/{p-7bdd1116.entry.js → p-1cd09d9b.entry.js} +2 -2
  972. package/dist/ui-library/{p-7bdd1116.entry.js.map → p-1cd09d9b.entry.js.map} +1 -1
  973. package/dist/ui-library/{p-416b0439.entry.js → p-1f7a0cb5.entry.js} +2 -2
  974. package/dist/ui-library/{p-416b0439.entry.js.map → p-1f7a0cb5.entry.js.map} +1 -1
  975. package/dist/ui-library/p-2355c444.entry.js +2 -0
  976. package/dist/ui-library/{p-347e568f.entry.js.map → p-2355c444.entry.js.map} +1 -1
  977. package/dist/ui-library/p-281ffc35.entry.js +2 -0
  978. package/dist/ui-library/p-281ffc35.entry.js.map +1 -0
  979. package/dist/ui-library/{p-c62893e5.entry.js → p-2ad904a7.entry.js} +2 -2
  980. package/dist/ui-library/{p-c62893e5.entry.js.map → p-2ad904a7.entry.js.map} +1 -1
  981. package/dist/ui-library/{p-b5acf54d.entry.js → p-30000e86.entry.js} +2 -2
  982. package/dist/ui-library/{p-b5acf54d.entry.js.map → p-30000e86.entry.js.map} +1 -1
  983. package/dist/ui-library/{p-4d89932f.entry.js → p-42cd3588.entry.js} +2 -2
  984. package/dist/ui-library/{p-4d89932f.entry.js.map → p-42cd3588.entry.js.map} +1 -1
  985. package/dist/ui-library/p-48118ce8.js +3 -0
  986. package/dist/ui-library/p-48118ce8.js.map +1 -0
  987. package/dist/ui-library/{p-b335ed9c.entry.js → p-49019d6c.entry.js} +2 -2
  988. package/dist/ui-library/{p-b335ed9c.entry.js.map → p-49019d6c.entry.js.map} +1 -1
  989. package/dist/ui-library/{p-c6464bfe.entry.js → p-4d72b179.entry.js} +2 -2
  990. package/dist/ui-library/{p-c6464bfe.entry.js.map → p-4d72b179.entry.js.map} +1 -1
  991. package/dist/ui-library/{p-d9586999.entry.js → p-4de4ee7a.entry.js} +2 -2
  992. package/dist/ui-library/{p-d9586999.entry.js.map → p-4de4ee7a.entry.js.map} +1 -1
  993. package/dist/ui-library/p-4edde816.entry.js +2 -0
  994. package/dist/ui-library/p-4edde816.entry.js.map +1 -0
  995. package/dist/ui-library/p-4f129bb3.entry.js +2 -0
  996. package/dist/ui-library/p-4f129bb3.entry.js.map +1 -0
  997. package/dist/ui-library/{p-3b5a76ea.entry.js → p-53867d77.entry.js} +2 -2
  998. package/dist/ui-library/{p-3b5a76ea.entry.js.map → p-53867d77.entry.js.map} +1 -1
  999. package/dist/ui-library/p-57ea4cb7.entry.js +2 -0
  1000. package/dist/ui-library/p-57ea4cb7.entry.js.map +1 -0
  1001. package/dist/ui-library/{p-a398e3eb.entry.js → p-5ece7986.entry.js} +2 -2
  1002. package/dist/ui-library/{p-a398e3eb.entry.js.map → p-5ece7986.entry.js.map} +1 -1
  1003. package/dist/ui-library/p-5f491974.entry.js +2 -0
  1004. package/dist/ui-library/p-5f491974.entry.js.map +1 -0
  1005. package/dist/ui-library/{p-b60c20aa.entry.js → p-5fc9cd7b.entry.js} +2 -2
  1006. package/dist/ui-library/{p-b60c20aa.entry.js.map → p-5fc9cd7b.entry.js.map} +1 -1
  1007. package/dist/ui-library/{p-4bc7bbdb.entry.js → p-618bf750.entry.js} +2 -2
  1008. package/dist/ui-library/{p-4bc7bbdb.entry.js.map → p-618bf750.entry.js.map} +1 -1
  1009. package/dist/ui-library/{p-63acceb6.entry.js → p-62a1f514.entry.js} +2 -2
  1010. package/dist/ui-library/{p-63acceb6.entry.js.map → p-62a1f514.entry.js.map} +1 -1
  1011. package/dist/ui-library/p-651293e7.js.map +1 -1
  1012. package/dist/ui-library/p-6513b8ce.entry.js +2 -0
  1013. package/dist/ui-library/{p-189602e4.entry.js.map → p-6513b8ce.entry.js.map} +1 -1
  1014. package/dist/ui-library/{p-47c84904.entry.js → p-6795e0a9.entry.js} +2 -2
  1015. package/dist/ui-library/{p-47c84904.entry.js.map → p-6795e0a9.entry.js.map} +1 -1
  1016. package/dist/ui-library/p-6ec126f7.entry.js +2 -0
  1017. package/dist/ui-library/{p-9cb83369.entry.js.map → p-6ec126f7.entry.js.map} +1 -1
  1018. package/dist/ui-library/p-705e3612.entry.js +2 -0
  1019. package/dist/ui-library/p-705e3612.entry.js.map +1 -0
  1020. package/dist/ui-library/{p-06ba653e.entry.js → p-70fac778.entry.js} +2 -2
  1021. package/dist/ui-library/{p-06ba653e.entry.js.map → p-70fac778.entry.js.map} +1 -1
  1022. package/dist/ui-library/{p-037afc74.entry.js → p-7afdff5c.entry.js} +2 -2
  1023. package/dist/ui-library/p-7afdff5c.entry.js.map +1 -0
  1024. package/dist/ui-library/{p-4963f03c.entry.js → p-7eb9ae75.entry.js} +2 -2
  1025. package/dist/ui-library/{p-4963f03c.entry.js.map → p-7eb9ae75.entry.js.map} +1 -1
  1026. package/dist/ui-library/p-7f856f00.js.map +1 -1
  1027. package/dist/ui-library/p-8227aaed.js.map +1 -1
  1028. package/dist/ui-library/p-842b492e.js.map +1 -1
  1029. package/dist/ui-library/p-862d474e.js.map +1 -1
  1030. package/dist/ui-library/{p-6f9153be.entry.js → p-870139dc.entry.js} +2 -2
  1031. package/dist/ui-library/{p-6f9153be.entry.js.map → p-870139dc.entry.js.map} +1 -1
  1032. package/dist/ui-library/p-8bfb4bfc.js.map +1 -1
  1033. package/dist/ui-library/{p-605bdd81.js → p-a04460e3.js} +2 -2
  1034. package/dist/ui-library/{p-605bdd81.js.map → p-a04460e3.js.map} +1 -1
  1035. package/dist/ui-library/p-a1502802.js.map +1 -1
  1036. package/dist/ui-library/{p-07c8de65.entry.js → p-a20a702a.entry.js} +2 -2
  1037. package/dist/ui-library/{p-07c8de65.entry.js.map → p-a20a702a.entry.js.map} +1 -1
  1038. package/dist/ui-library/p-adc65fc8.entry.js +2 -0
  1039. package/dist/ui-library/p-adc65fc8.entry.js.map +1 -0
  1040. package/dist/ui-library/{p-0c129b61.entry.js → p-afb15ea4.entry.js} +2 -2
  1041. package/dist/ui-library/{p-0c129b61.entry.js.map → p-afb15ea4.entry.js.map} +1 -1
  1042. package/dist/ui-library/p-b361d5da.entry.js +2 -0
  1043. package/dist/ui-library/{p-32e421a3.entry.js.map → p-b361d5da.entry.js.map} +1 -1
  1044. package/dist/ui-library/{p-99f6fe01.entry.js → p-bfb398c6.entry.js} +2 -2
  1045. package/dist/ui-library/{p-99f6fe01.entry.js.map → p-bfb398c6.entry.js.map} +1 -1
  1046. package/dist/ui-library/{p-d88b9c16.entry.js → p-cd65e3b2.entry.js} +2 -2
  1047. package/dist/ui-library/{p-d88b9c16.entry.js.map → p-cd65e3b2.entry.js.map} +1 -1
  1048. package/dist/ui-library/{p-a9e009af.entry.js → p-cd79700c.entry.js} +2 -2
  1049. package/dist/ui-library/{p-a9e009af.entry.js.map → p-cd79700c.entry.js.map} +1 -1
  1050. package/dist/ui-library/{p-419ed003.entry.js → p-cdc9224d.entry.js} +2 -2
  1051. package/dist/ui-library/{p-419ed003.entry.js.map → p-cdc9224d.entry.js.map} +1 -1
  1052. package/dist/ui-library/p-cdc94cd6.entry.js +2 -0
  1053. package/dist/ui-library/p-cdc94cd6.entry.js.map +1 -0
  1054. package/dist/ui-library/{p-8f1d3461.entry.js → p-d46acf21.entry.js} +2 -2
  1055. package/dist/ui-library/{p-8f1d3461.entry.js.map → p-d46acf21.entry.js.map} +1 -1
  1056. package/dist/ui-library/p-d67b8482.entry.js +2 -0
  1057. package/dist/ui-library/{p-030fa1fa.entry.js.map → p-d67b8482.entry.js.map} +1 -1
  1058. package/dist/ui-library/{p-1adc26f2.entry.js → p-db193a32.entry.js} +2 -2
  1059. package/dist/ui-library/{p-1adc26f2.entry.js.map → p-db193a32.entry.js.map} +1 -1
  1060. package/dist/ui-library/p-e080d5b6.js.map +1 -1
  1061. package/dist/ui-library/p-e1255160.js.map +1 -1
  1062. package/dist/ui-library/{p-fe89a7c4.entry.js → p-e1529ef6.entry.js} +2 -2
  1063. package/dist/ui-library/{p-fe89a7c4.entry.js.map → p-e1529ef6.entry.js.map} +1 -1
  1064. package/dist/ui-library/{p-e9b8ad98.entry.js → p-e181944f.entry.js} +2 -2
  1065. package/dist/ui-library/{p-e9b8ad98.entry.js.map → p-e181944f.entry.js.map} +1 -1
  1066. package/dist/ui-library/{p-d1a2f84b.entry.js → p-e6efc08a.entry.js} +2 -2
  1067. package/dist/ui-library/{p-d1a2f84b.entry.js.map → p-e6efc08a.entry.js.map} +1 -1
  1068. package/dist/ui-library/p-ea854ec5.entry.js +2 -0
  1069. package/dist/ui-library/p-ea854ec5.entry.js.map +1 -0
  1070. package/dist/ui-library/{p-63ee5e7e.entry.js → p-f12b22bc.entry.js} +2 -2
  1071. package/dist/ui-library/{p-63ee5e7e.entry.js.map → p-f12b22bc.entry.js.map} +1 -1
  1072. package/dist/ui-library/p-f136a6b2.js.map +1 -1
  1073. package/dist/ui-library/p-f9a1f6ab.entry.js +2 -0
  1074. package/dist/ui-library/p-f9a1f6ab.entry.js.map +1 -0
  1075. package/dist/ui-library/{p-cf109cbf.entry.js → p-ffce31da.entry.js} +2 -2
  1076. package/dist/ui-library/{p-cf109cbf.entry.js.map → p-ffce31da.entry.js.map} +1 -1
  1077. package/dist/ui-library/ui-library.css +1 -1
  1078. package/dist/ui-library/ui-library.esm.js +1 -1
  1079. package/dist/ui-library/ui-library.esm.js.map +1 -1
  1080. package/loader/cdn.js +1 -3
  1081. package/loader/index.cjs.js +1 -3
  1082. package/loader/index.d.ts +3 -0
  1083. package/loader/index.es2017.js +1 -3
  1084. package/loader/index.js +1 -3
  1085. package/package.json +6 -18
  1086. package/dist/cjs/index-1f707a55.js +0 -2718
  1087. package/dist/cjs/index-1f707a55.js.map +0 -1
  1088. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +0 -1
  1089. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +0 -1
  1090. package/dist/collection/components/six-alert/test/six-alert.spec.js +0 -25
  1091. package/dist/collection/components/six-alert/test/six-alert.spec.js.map +0 -1
  1092. package/dist/collection/components/six-avatar/test/six-avatar.spec.js +0 -26
  1093. package/dist/collection/components/six-avatar/test/six-avatar.spec.js.map +0 -1
  1094. package/dist/collection/components/six-badge/test/six-badge.spec.js +0 -20
  1095. package/dist/collection/components/six-badge/test/six-badge.spec.js.map +0 -1
  1096. package/dist/collection/components/six-button/test/six-button.spec.js +0 -69
  1097. package/dist/collection/components/six-button/test/six-button.spec.js.map +0 -1
  1098. package/dist/collection/components/six-card/test/six-card.spec.js +0 -18
  1099. package/dist/collection/components/six-card/test/six-card.spec.js.map +0 -1
  1100. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js +0 -83
  1101. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js.map +0 -1
  1102. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js +0 -26
  1103. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js.map +0 -1
  1104. package/dist/collection/components/six-details/test/six-details.spec.js +0 -36
  1105. package/dist/collection/components/six-details/test/six-details.spec.js.map +0 -1
  1106. package/dist/collection/components/six-dialog/test/six-dialog.spec.js +0 -34
  1107. package/dist/collection/components/six-dialog/test/six-dialog.spec.js.map +0 -1
  1108. package/dist/collection/components/six-drawer/test/six-drawer.spec.js +0 -34
  1109. package/dist/collection/components/six-drawer/test/six-drawer.spec.js.map +0 -1
  1110. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +0 -147
  1111. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +0 -1
  1112. package/dist/collection/components/six-error-page/test/six-error-page.spec.js +0 -240
  1113. package/dist/collection/components/six-error-page/test/six-error-page.spec.js.map +0 -1
  1114. package/dist/collection/components/six-file-list/test/six-file-list.spec.js +0 -67
  1115. package/dist/collection/components/six-file-list/test/six-file-list.spec.js.map +0 -1
  1116. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js +0 -169
  1117. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js.map +0 -1
  1118. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +0 -266
  1119. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +0 -1
  1120. package/dist/collection/components/six-footer/test/six-footer.spec.js +0 -21
  1121. package/dist/collection/components/six-footer/test/six-footer.spec.js.map +0 -1
  1122. package/dist/collection/components/six-group-label/test/six-group-label.spec.js +0 -45
  1123. package/dist/collection/components/six-group-label/test/six-group-label.spec.js.map +0 -1
  1124. package/dist/collection/components/six-icon/test/six-icon.spec.js +0 -20
  1125. package/dist/collection/components/six-icon/test/six-icon.spec.js.map +0 -1
  1126. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js +0 -23
  1127. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js.map +0 -1
  1128. package/dist/collection/components/six-input/test/six-input.spec.js +0 -39
  1129. package/dist/collection/components/six-input/test/six-input.spec.js.map +0 -1
  1130. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js +0 -90
  1131. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js.map +0 -1
  1132. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +0 -196
  1133. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +0 -1
  1134. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js +0 -18
  1135. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js.map +0 -1
  1136. package/dist/collection/components/six-main-container/test/six-main-container.spec.js +0 -22
  1137. package/dist/collection/components/six-main-container/test/six-main-container.spec.js.map +0 -1
  1138. package/dist/collection/components/six-menu/test/six-menu.spec.js +0 -93
  1139. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +0 -1
  1140. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js +0 -18
  1141. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js.map +0 -1
  1142. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js +0 -33
  1143. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js.map +0 -1
  1144. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js +0 -20
  1145. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js.map +0 -1
  1146. package/dist/collection/components/six-picto/test/six-picto.spec.js +0 -33
  1147. package/dist/collection/components/six-picto/test/six-picto.spec.js.map +0 -1
  1148. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js +0 -24
  1149. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js.map +0 -1
  1150. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js +0 -26
  1151. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js.map +0 -1
  1152. package/dist/collection/components/six-radio/test/six-radio.spec.js +0 -63
  1153. package/dist/collection/components/six-radio/test/six-radio.spec.js.map +0 -1
  1154. package/dist/collection/components/six-range/test/six-range.spec.js +0 -34
  1155. package/dist/collection/components/six-range/test/six-range.spec.js.map +0 -1
  1156. package/dist/collection/components/six-root/test/six-root.spec.js +0 -36
  1157. package/dist/collection/components/six-root/test/six-root.spec.js.map +0 -1
  1158. package/dist/collection/components/six-search-field/test/six-search-field.spec.js +0 -22
  1159. package/dist/collection/components/six-search-field/test/six-search-field.spec.js.map +0 -1
  1160. package/dist/collection/components/six-select/test/six-select.spec.js +0 -102
  1161. package/dist/collection/components/six-select/test/six-select.spec.js.map +0 -1
  1162. package/dist/collection/components/six-select/test/util.spec.js +0 -103
  1163. package/dist/collection/components/six-select/test/util.spec.js.map +0 -1
  1164. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js +0 -22
  1165. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js.map +0 -1
  1166. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js +0 -50
  1167. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js.map +0 -1
  1168. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js +0 -53
  1169. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js.map +0 -1
  1170. package/dist/collection/components/six-spinner/test/six-spinner.spec.js +0 -37
  1171. package/dist/collection/components/six-spinner/test/six-spinner.spec.js.map +0 -1
  1172. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js +0 -117
  1173. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js.map +0 -1
  1174. package/dist/collection/components/six-switch/test/six-switch.spec.js +0 -73
  1175. package/dist/collection/components/six-switch/test/six-switch.spec.js.map +0 -1
  1176. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js +0 -20
  1177. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js.map +0 -1
  1178. package/dist/collection/components/six-tag/test/six-tag.spec.js +0 -54
  1179. package/dist/collection/components/six-tag/test/six-tag.spec.js.map +0 -1
  1180. package/dist/collection/components/six-textarea/test/six-textarea.spec.js +0 -119
  1181. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +0 -1
  1182. package/dist/collection/components/six-tile/test/six-tile.spec.js +0 -69
  1183. package/dist/collection/components/six-tile/test/six-tile.spec.js.map +0 -1
  1184. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js +0 -496
  1185. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +0 -1
  1186. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js +0 -28
  1187. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js.map +0 -1
  1188. package/dist/collection/files/file-list.json +0 -308
  1189. package/dist/collection/files/noto-sans-all-100-italic.woff +0 -0
  1190. package/dist/collection/files/noto-sans-all-100-normal.woff +0 -0
  1191. package/dist/collection/files/noto-sans-all-200-italic.woff +0 -0
  1192. package/dist/collection/files/noto-sans-all-200-normal.woff +0 -0
  1193. package/dist/collection/files/noto-sans-all-300-italic.woff +0 -0
  1194. package/dist/collection/files/noto-sans-all-300-normal.woff +0 -0
  1195. package/dist/collection/files/noto-sans-all-400-italic.woff +0 -0
  1196. package/dist/collection/files/noto-sans-all-400-normal.woff +0 -0
  1197. package/dist/collection/files/noto-sans-all-500-italic.woff +0 -0
  1198. package/dist/collection/files/noto-sans-all-500-normal.woff +0 -0
  1199. package/dist/collection/files/noto-sans-all-600-italic.woff +0 -0
  1200. package/dist/collection/files/noto-sans-all-600-normal.woff +0 -0
  1201. package/dist/collection/files/noto-sans-all-700-italic.woff +0 -0
  1202. package/dist/collection/files/noto-sans-all-700-normal.woff +0 -0
  1203. package/dist/collection/files/noto-sans-all-800-italic.woff +0 -0
  1204. package/dist/collection/files/noto-sans-all-800-normal.woff +0 -0
  1205. package/dist/collection/files/noto-sans-all-900-italic.woff +0 -0
  1206. package/dist/collection/files/noto-sans-all-900-normal.woff +0 -0
  1207. package/dist/collection/utils/date-util.spec.js +0 -995
  1208. package/dist/collection/utils/date-util.spec.js.map +0 -1
  1209. package/dist/collection/utils/scroll.spec.js +0 -122
  1210. package/dist/collection/utils/scroll.spec.js.map +0 -1
  1211. package/dist/collection/utils/time.util.spec.js +0 -368
  1212. package/dist/collection/utils/time.util.spec.js.map +0 -1
  1213. package/dist/esm/index-5390c1d6.js +0 -2689
  1214. package/dist/esm/index-5390c1d6.js.map +0 -1
  1215. package/dist/esm/polyfills/core-js.js +0 -11
  1216. package/dist/esm/polyfills/dom.js +0 -79
  1217. package/dist/esm/polyfills/es5-html-element.js +0 -1
  1218. package/dist/esm/polyfills/index.js +0 -34
  1219. package/dist/esm/polyfills/system.js +0 -6
  1220. package/dist/esm/six-checkbox_2.entry.js.map +0 -1
  1221. package/dist/esm/six-dropdown_2.entry.js.map +0 -1
  1222. package/dist/ui-library/files/file-list.json +0 -308
  1223. package/dist/ui-library/files/noto-sans-all-100-italic.woff +0 -0
  1224. package/dist/ui-library/files/noto-sans-all-100-normal.woff +0 -0
  1225. package/dist/ui-library/files/noto-sans-all-200-italic.woff +0 -0
  1226. package/dist/ui-library/files/noto-sans-all-200-normal.woff +0 -0
  1227. package/dist/ui-library/files/noto-sans-all-300-italic.woff +0 -0
  1228. package/dist/ui-library/files/noto-sans-all-300-normal.woff +0 -0
  1229. package/dist/ui-library/files/noto-sans-all-400-italic.woff +0 -0
  1230. package/dist/ui-library/files/noto-sans-all-400-normal.woff +0 -0
  1231. package/dist/ui-library/files/noto-sans-all-500-italic.woff +0 -0
  1232. package/dist/ui-library/files/noto-sans-all-500-normal.woff +0 -0
  1233. package/dist/ui-library/files/noto-sans-all-600-italic.woff +0 -0
  1234. package/dist/ui-library/files/noto-sans-all-600-normal.woff +0 -0
  1235. package/dist/ui-library/files/noto-sans-all-700-italic.woff +0 -0
  1236. package/dist/ui-library/files/noto-sans-all-700-normal.woff +0 -0
  1237. package/dist/ui-library/files/noto-sans-all-800-italic.woff +0 -0
  1238. package/dist/ui-library/files/noto-sans-all-800-normal.woff +0 -0
  1239. package/dist/ui-library/files/noto-sans-all-900-italic.woff +0 -0
  1240. package/dist/ui-library/files/noto-sans-all-900-normal.woff +0 -0
  1241. package/dist/ui-library/p-030fa1fa.entry.js +0 -2
  1242. package/dist/ui-library/p-037afc74.entry.js.map +0 -1
  1243. package/dist/ui-library/p-047d02ad.entry.js +0 -2
  1244. package/dist/ui-library/p-047d02ad.entry.js.map +0 -1
  1245. package/dist/ui-library/p-05eb1bab.js +0 -3
  1246. package/dist/ui-library/p-05eb1bab.js.map +0 -1
  1247. package/dist/ui-library/p-11344bb8.entry.js +0 -2
  1248. package/dist/ui-library/p-14e5fccc.entry.js +0 -2
  1249. package/dist/ui-library/p-14e5fccc.entry.js.map +0 -1
  1250. package/dist/ui-library/p-189602e4.entry.js +0 -2
  1251. package/dist/ui-library/p-32e421a3.entry.js +0 -2
  1252. package/dist/ui-library/p-347e568f.entry.js +0 -2
  1253. package/dist/ui-library/p-36d5f98a.entry.js +0 -2
  1254. package/dist/ui-library/p-37433242.entry.js +0 -2
  1255. package/dist/ui-library/p-37433242.entry.js.map +0 -1
  1256. package/dist/ui-library/p-6b40c40c.entry.js +0 -2
  1257. package/dist/ui-library/p-6b40c40c.entry.js.map +0 -1
  1258. package/dist/ui-library/p-7c18b8ca.entry.js +0 -2
  1259. package/dist/ui-library/p-96d441e9.entry.js +0 -2
  1260. package/dist/ui-library/p-96d441e9.entry.js.map +0 -1
  1261. package/dist/ui-library/p-9cb83369.entry.js +0 -2
  1262. package/dist/ui-library/p-e14d78e9.entry.js +0 -2
  1263. package/dist/ui-library/p-e14d78e9.entry.js.map +0 -1
  1264. package/dist/ui-library/p-ebbe9bdc.entry.js +0 -2
  1265. package/dist/ui-library/p-ebbe9bdc.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"file":"six-datepicker.js","mappings":"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","names":["SixDatepicker"],"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 event.stopPropagation();\n\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 const currentDate = toDate(this.inputElement?.value, this.dateFormat);\n if (isValidDate(currentDate) && this.value?.getTime() !== currentDate?.getTime()) {\n // Set the value if the input field's value has changed. This can happen if the blur occurs\n // before the change event had a chance to fire due to its debouncing.\n this.value = currentDate;\n }\n if (this.inputElement != null) {\n this.inputElement.value = formatDate(this.value, this.dateFormat);\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 debounce={this.debounce}\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"],"version":3}
1
+ {"file":"six-datepicker.js","mappings":"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","names":["SixDatepicker"],"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 event.stopPropagation();\n\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 const currentDate = toDate(this.inputElement?.value, this.dateFormat);\n if (isValidDate(currentDate) && this.value?.getTime() !== currentDate?.getTime()) {\n // Set the value if the input field's value has changed. This can happen if the blur occurs\n // before the change event had a chance to fire due to its debouncing.\n this.value = currentDate;\n }\n if (this.inputElement != null) {\n this.inputElement.value = formatDate(this.value, this.dateFormat);\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 debounce={this.debounce}\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"],"version":3}
@@ -126,15 +126,15 @@ const SixDetails = /*@__PURE__*/ proxyCustomElement(class SixDetails extends HTM
126
126
  }
127
127
  render() {
128
128
  const summaryIcon = this.hasContent && (this.summaryIcon || 'expand_more');
129
- return (h("div", { key: '92a28f916e7e652eb51b406dc8877ff64f0f9db5', ref: (el) => (this.details = el), part: "base", class: {
129
+ return (h("div", { key: '790a6c1cdc4bbc6c266f9e24bf7c94d151379115', ref: (el) => (this.details = el), part: "base", class: {
130
130
  details: true,
131
131
  'details--open': this.open,
132
132
  'details--disabled': this.disabled,
133
133
  inline: this.inline,
134
- } }, h("header", { key: '3c08227521ad4a0e75eedf579a26b8bfa3696951', ref: (el) => (this.header = el), part: "header", id: `${this.componentId}-header`, class: "details__header", role: "button", "aria-expanded": this.open ? 'true' : 'false', "aria-controls": `${this.componentId}-content`, "aria-disabled": this.disabled ? 'true' : 'false', tabIndex: this.disabled ? -1 : 0, onClick: this.handleSummaryClick, onKeyDown: this.handleSummaryKeyDown }, h("div", { key: 'c8afed1372b13cf66ef070599e1f8c8a35ec88cf', part: "summary", class: "details__summary" }, h("slot", { key: '451ff79c969e8aef9be619cabc4dc886955de6d6', name: "summary" }, this.summary)), h("span", { key: 'fcd037bf37620c67373d02856ddee1b7544a4bdb', part: "summary-icon", class: {
134
+ } }, h("header", { key: 'e02a32f9923779375d81ee3d79d89aa2ddea38a1', ref: (el) => (this.header = el), part: "header", id: `${this.componentId}-header`, class: "details__header", role: "button", "aria-expanded": this.open ? 'true' : 'false', "aria-controls": `${this.componentId}-content`, "aria-disabled": this.disabled ? 'true' : 'false', tabIndex: this.disabled ? -1 : 0, onClick: this.handleSummaryClick, onKeyDown: this.handleSummaryKeyDown }, h("div", { key: 'd8647eb075674116011662baf9b8baf3130ae0b7', part: "summary", class: "details__summary" }, h("slot", { key: '5e53c611396e795eb725e4ff364127a781544aad', name: "summary" }, this.summary)), h("span", { key: 'a2108bba713114123324ab7e41a250755daa5204', part: "summary-icon", class: {
135
135
  'details__summary-icon': true,
136
136
  'details__summary-icon--animate': this.animateSummaryIcon,
137
- } }, h("slot", { key: '771df5950db728b27f232bf8074d88352ce9a232', name: "summary-icon", onSlotchange: () => (this.animateSummaryIcon = false) }, summaryIcon && h("six-icon", { size: this.summaryIconSize }, summaryIcon)))), h("div", { key: '3a118577721028ce5bcb85846fb07d5fbc3473b9', ref: (el) => (this.body = el), class: "details__body", onTransitionEnd: this.handleBodyTransitionEnd }, h("div", { key: 'f40759fb26ddc69c06dc5e8f3765f5e7dfb20653', part: "content", id: `${this.componentId}-content`, class: "details__content", role: "region", "aria-labelledby": `${this.componentId}-header` }, h("slot", { key: '22822aa5b33578fe54b0850f61f025c6efff1bc0' })))));
137
+ } }, h("slot", { key: '344e5c319ce8e8fe2171afa277a4799c8477178b', name: "summary-icon", onSlotchange: () => (this.animateSummaryIcon = false) }, summaryIcon && h("six-icon", { key: '2b0fc2a643d699fcd17138d8cbf7320957d909b6', size: this.summaryIconSize }, summaryIcon)))), h("div", { key: 'e09bd4d2cb12bc92c595db4ada7d435b24453fb8', ref: (el) => (this.body = el), class: "details__body", onTransitionEnd: this.handleBodyTransitionEnd }, h("div", { key: '065ff7a042f603ccbccd137ecaba36016ccadf6b', part: "content", id: `${this.componentId}-content`, class: "details__content", role: "region", "aria-labelledby": `${this.componentId}-header` }, h("slot", { key: 'c7fa18ef6842f4f8af87e02d7a2e7ae892664276' })))));
138
138
  }
139
139
  get host() { return this; }
140
140
  static get watchers() { return {
@@ -1 +1 @@
1
- {"file":"six-details2.js","mappings":"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","names":[],"sources":["src/components/six-details/six-details.scss?tag=six-details&encapsulation=shadow","src/components/six-details/six-details.tsx"],"sourcesContent":["@import 'src/global/component';\n\n/**\n * @prop --hide-duration: The length of the hide transition.\n * @prop --hide-timing-function: The timing function (easing) to use for the hide transition.\n * @prop --show-duration: The length of the show transition.\n * @prop --show-timing-function: The timing function (easing) to use for the show transition.\n * @prop --horizontal-padding: The horizontal padding\n */\n:host {\n --hide-duration: var(--six-transition-medium);\n --hide-timing-function: ease;\n --show-duration: var(--six-transition-medium);\n --show-timing-function: ease;\n --horizontal-padding: var(--six-spacing-medium);\n\n font-family: var(--six-font-family);\n display: block;\n}\n\n.details {\n border: solid var(--six-border-width) var(--six-input-border-color);\n border-radius: var(--six-border-radius-medium);\n color: var(--six-details-color);\n overflow-anchor: none;\n font-size: var(--six-input-font-size-medium);\n\n &:hover:not(.details--disabled):not(.details--open) {\n border-color: var(--six-input-border-color-hover);\n }\n\n &.inline {\n border: none;\n color: var(--six-sidebar-color);\n\n &:hover {\n background-color: var(--six-sidebar-hover-background-color);\n }\n\n &.details--open {\n background-color: var(--six-color-web-rock-50);\n\n &:hover {\n border: none;\n box-shadow: none;\n }\n\n & > .details__header {\n color: var(--six-sidebar-color);\n font-weight: var(--six-font-weight-bold);\n background-color: var(--six-sidebar-header-background-color);\n }\n }\n }\n}\n\n.details--disabled {\n background-color: var(--six-input-background-color-disabled);\n border-color: var(--six-input-border-color-disabled);\n color: var(--six-input-color-disabled);\n}\n\n.details__header {\n display: flex;\n align-items: center;\n border-radius: inherit;\n padding: var(--six-spacing-medium) var(--horizontal-padding);\n user-select: none;\n cursor: pointer;\n\n &:focus {\n outline: none;\n }\n}\n\n.focus-visible .details__header:focus {\n}\n\n.details--disabled .details__header {\n cursor: not-allowed;\n border-width: 1px;\n\n &:focus {\n outline: none;\n box-shadow: none;\n }\n}\n\n.details__summary {\n flex: 1 1 auto;\n display: flex;\n align-items: center;\n}\n\n.details__summary-icon {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n font-size: 1.2em;\n transition: var(--six-transition-medium) transform ease;\n}\n\n.details--open .details__summary-icon--animate {\n transform: rotate(-180deg);\n}\n\n.details__body {\n height: 0;\n overflow: hidden;\n transition-property: height;\n transition-duration: var(--hide-duration);\n transition-timing-function: var(--hide-timing-function);\n}\n\n.details--open .details__body {\n transition-duration: var(--show-duration);\n transition-timing-function: var(--show-timing-function);\n}\n\n.details__content {\n padding: var(--six-spacing-medium);\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { focusVisible } from '../../utils/focus-visible';\nimport { EmptyPayload } from '../../utils/types';\n\nlet id = 0;\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot - The details' content.\n * @slot summary - The details' summary. Alternatively, you can use the summary prop.\n *\n * @part base - The component's base wrapper.\n * @part header - The summary header.\n * @part summary - The details summary.\n * @part summary-icon - The expand/collapse summary icon.\n * @part content - The details content.\n */\n\n@Component({\n tag: 'six-details',\n styleUrl: 'six-details.scss',\n shadow: true,\n})\nexport class SixDetails {\n @Element() readonly host!: HTMLSixDetailsElement;\n\n @State() animateSummaryIcon = true;\n\n private body?: HTMLElement;\n private details?: HTMLElement;\n private header?: HTMLElement;\n private componentId = `details-${++id}`;\n private isVisible = false;\n\n /** Indicates whether the details is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** The summary to show in the details header. If you need to display HTML, use the `summary` slot instead. */\n @Prop() summary = '';\n\n /** The summary icon to show in the details header. If you need to display HTML, use the `summary-icon` slot instead. */\n @Prop() summaryIcon?: string;\n\n /** The icon's size. */\n @Prop({ reflect: true }) summaryIconSize:\n | 'inherit'\n | 'xSmall'\n | 'small'\n | 'medium'\n | 'large'\n | 'xLarge'\n | 'xxLarge'\n | 'xxxLarge' = 'inherit';\n\n /** Set to true to prevent the user from toggling the details. */\n @Prop() disabled = false;\n\n /** Set to true when you want to use six-details inline e.g. in a sidebar */\n @Prop() inline = false;\n\n /** Set to true when you want details without content to be selectable. This is important if you e.g. have a toggled sidebar where some menus have no children */\n @Prop() selectableEmpty = false;\n\n /** Set to false when you want to hide the summary icon and disable the open/close mechanism. Usually not needed, but used internally by 'six-sidebar-item-group' */\n // eslint-disable-next-line @stencil-community/ban-default-true\n @Prop() hasContent = true;\n\n @Watch('open')\n handleOpenChange() {\n if (this.body != null) {\n this.open ? this.show() : this.hide();\n }\n }\n\n /** Emitted when the details opens. Calling `event.preventDefault()` will prevent it from being opened. */\n @Event({ eventName: 'six-details-show' }) sixShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the details opens and all transitions are complete. */\n @Event({ eventName: 'six-details-after-show' }) sixAfterShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the details closes. Calling `event.preventDefault()` will prevent it from being closed. */\n @Event({ eventName: 'six-details-hide' }) sixHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the details closes and all transitions are complete. */\n @Event({ eventName: 'six-details-after-hide' }) sixAfterHide!: EventEmitter<EmptyPayload>;\n\n componentDidLoad() {\n if (this.details == null || this.body == null) return;\n\n focusVisible.observe(this.details);\n this.body.hidden = !this.open;\n\n // Show on init if open\n if (this.open) {\n this.show();\n }\n }\n\n disconnectedCallback() {\n if (this.details != null) {\n focusVisible.unobserve(this.details);\n }\n }\n\n /** Shows the detail body */\n @Method()\n async show() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (this.isVisible || this.body == null) return;\n\n const sixShow = this.sixShow.emit();\n if (sixShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.body.hidden = false;\n\n if (this.body.scrollHeight === 0) {\n // When the scroll height can't be measured, use auto. This prevents a borked open state when the details is open\n // initially, but not immediately visible (i.e. in a tab panel).\n this.body.style.height = 'auto';\n this.body.style.overflow = 'visible';\n } else {\n this.body.style.height = `${this.body.scrollHeight}px`;\n this.body.style.overflow = 'hidden';\n }\n this.isVisible = true;\n this.open = true;\n }\n\n /** Hides the detail body */\n @Method()\n async hide() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (!this.isVisible || this.body == null) return;\n const body = this.body;\n\n const sixHide = this.sixHide.emit();\n if (sixHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n // We can't transition out of `height: auto`, so let's set it to the current height first\n body.style.height = `${body.scrollHeight}px`;\n body.style.overflow = 'hidden';\n\n requestAnimationFrame(() => {\n // tslint:disable-next-line: no-unused-expression\n body.clientWidth; // force a reflow\n body.style.height = '0';\n });\n\n this.isVisible = false;\n this.open = false;\n }\n\n private handleBodyTransitionEnd = (event: TransitionEvent) => {\n if (this.body == null) return;\n const target = event.target as HTMLElement;\n\n // Ensure we only emit one event when the target element is no longer visible\n if (event.propertyName === 'height' && target.classList.contains('details__body')) {\n this.body.style.overflow = this.open ? 'visible' : 'hidden';\n this.body.style.height = this.open ? 'auto' : '0';\n this.open ? this.sixAfterShow.emit() : this.sixAfterHide.emit();\n this.body.hidden = !this.open;\n }\n };\n\n private handleSummaryClick = () => {\n if (!this.disabled && (this.hasContent || this.selectableEmpty)) {\n this.open ? this.hide() : this.show();\n this.header?.focus();\n }\n };\n\n private handleSummaryKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.open ? this.hide() : this.show();\n }\n\n if (event.key === 'ArrowUp' || event.key === 'ArrowLeft') {\n event.preventDefault();\n this.hide();\n }\n\n if (event.key === 'ArrowDown' || event.key === 'ArrowRight') {\n event.preventDefault();\n this.show();\n }\n };\n\n render() {\n const summaryIcon = this.hasContent && (this.summaryIcon || 'expand_more');\n\n return (\n <div\n ref={(el) => (this.details = el)}\n part=\"base\"\n class={{\n details: true,\n 'details--open': this.open,\n 'details--disabled': this.disabled,\n inline: this.inline,\n }}\n >\n <header\n ref={(el) => (this.header = el)}\n part=\"header\"\n id={`${this.componentId}-header`}\n class=\"details__header\"\n role=\"button\"\n aria-expanded={this.open ? 'true' : 'false'}\n aria-controls={`${this.componentId}-content`}\n aria-disabled={this.disabled ? 'true' : 'false'}\n tabIndex={this.disabled ? -1 : 0}\n onClick={this.handleSummaryClick}\n onKeyDown={this.handleSummaryKeyDown}\n >\n <div part=\"summary\" class=\"details__summary\">\n <slot name=\"summary\">{this.summary}</slot>\n </div>\n\n <span\n part=\"summary-icon\"\n class={{\n 'details__summary-icon': true,\n 'details__summary-icon--animate': this.animateSummaryIcon,\n }}\n >\n <slot name=\"summary-icon\" onSlotchange={() => (this.animateSummaryIcon = false)}>\n {summaryIcon && <six-icon size={this.summaryIconSize}>{summaryIcon}</six-icon>}\n </slot>\n </span>\n </header>\n\n <div ref={(el) => (this.body = el)} class=\"details__body\" onTransitionEnd={this.handleBodyTransitionEnd}>\n <div\n part=\"content\"\n id={`${this.componentId}-content`}\n class=\"details__content\"\n role=\"region\"\n aria-labelledby={`${this.componentId}-header`}\n >\n <slot />\n </div>\n </div>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"six-details2.js","mappings":"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","names":[],"sources":["src/components/six-details/six-details.scss?tag=six-details&encapsulation=shadow","src/components/six-details/six-details.tsx"],"sourcesContent":["@import 'src/global/component';\n\n/**\n * @prop --hide-duration: The length of the hide transition.\n * @prop --hide-timing-function: The timing function (easing) to use for the hide transition.\n * @prop --show-duration: The length of the show transition.\n * @prop --show-timing-function: The timing function (easing) to use for the show transition.\n * @prop --horizontal-padding: The horizontal padding\n */\n:host {\n --hide-duration: var(--six-transition-medium);\n --hide-timing-function: ease;\n --show-duration: var(--six-transition-medium);\n --show-timing-function: ease;\n --horizontal-padding: var(--six-spacing-medium);\n\n font-family: var(--six-font-family);\n display: block;\n}\n\n.details {\n border: solid var(--six-border-width) var(--six-input-border-color);\n border-radius: var(--six-border-radius-medium);\n color: var(--six-details-color);\n overflow-anchor: none;\n font-size: var(--six-input-font-size-medium);\n\n &:hover:not(.details--disabled):not(.details--open) {\n border-color: var(--six-input-border-color-hover);\n }\n\n &.inline {\n border: none;\n color: var(--six-sidebar-color);\n\n &:hover {\n background-color: var(--six-sidebar-hover-background-color);\n }\n\n &.details--open {\n background-color: var(--six-color-web-rock-50);\n\n &:hover {\n border: none;\n box-shadow: none;\n }\n\n & > .details__header {\n color: var(--six-sidebar-color);\n font-weight: var(--six-font-weight-bold);\n background-color: var(--six-sidebar-header-background-color);\n }\n }\n }\n}\n\n.details--disabled {\n background-color: var(--six-input-background-color-disabled);\n border-color: var(--six-input-border-color-disabled);\n color: var(--six-input-color-disabled);\n}\n\n.details__header {\n display: flex;\n align-items: center;\n border-radius: inherit;\n padding: var(--six-spacing-medium) var(--horizontal-padding);\n user-select: none;\n cursor: pointer;\n\n &:focus {\n outline: none;\n }\n}\n\n.focus-visible .details__header:focus {\n}\n\n.details--disabled .details__header {\n cursor: not-allowed;\n border-width: 1px;\n\n &:focus {\n outline: none;\n box-shadow: none;\n }\n}\n\n.details__summary {\n flex: 1 1 auto;\n display: flex;\n align-items: center;\n}\n\n.details__summary-icon {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n font-size: 1.2em;\n transition: var(--six-transition-medium) transform ease;\n}\n\n.details--open .details__summary-icon--animate {\n transform: rotate(-180deg);\n}\n\n.details__body {\n height: 0;\n overflow: hidden;\n transition-property: height;\n transition-duration: var(--hide-duration);\n transition-timing-function: var(--hide-timing-function);\n}\n\n.details--open .details__body {\n transition-duration: var(--show-duration);\n transition-timing-function: var(--show-timing-function);\n}\n\n.details__content {\n padding: var(--six-spacing-medium);\n}\n","import { Component, Element, Event, EventEmitter, h, Method, Prop, State, Watch } from '@stencil/core';\nimport { focusVisible } from '../../utils/focus-visible';\nimport { EmptyPayload } from '../../utils/types';\n\nlet id = 0;\n\n/**\n * @since 1.0\n * @status stable\n *\n * Forked from https://github.com/shoelace-style/shoelace version v2.0.0-beta27.\n *\n * @slot - The details' content.\n * @slot summary - The details' summary. Alternatively, you can use the summary prop.\n *\n * @part base - The component's base wrapper.\n * @part header - The summary header.\n * @part summary - The details summary.\n * @part summary-icon - The expand/collapse summary icon.\n * @part content - The details content.\n */\n\n@Component({\n tag: 'six-details',\n styleUrl: 'six-details.scss',\n shadow: true,\n})\nexport class SixDetails {\n @Element() readonly host!: HTMLSixDetailsElement;\n\n @State() animateSummaryIcon = true;\n\n private body?: HTMLElement;\n private details?: HTMLElement;\n private header?: HTMLElement;\n private componentId = `details-${++id}`;\n private isVisible = false;\n\n /** Indicates whether the details is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** The summary to show in the details header. If you need to display HTML, use the `summary` slot instead. */\n @Prop() summary = '';\n\n /** The summary icon to show in the details header. If you need to display HTML, use the `summary-icon` slot instead. */\n @Prop() summaryIcon?: string;\n\n /** The icon's size. */\n @Prop({ reflect: true }) summaryIconSize:\n | 'inherit'\n | 'xSmall'\n | 'small'\n | 'medium'\n | 'large'\n | 'xLarge'\n | 'xxLarge'\n | 'xxxLarge' = 'inherit';\n\n /** Set to true to prevent the user from toggling the details. */\n @Prop() disabled = false;\n\n /** Set to true when you want to use six-details inline e.g. in a sidebar */\n @Prop() inline = false;\n\n /** Set to true when you want details without content to be selectable. This is important if you e.g. have a toggled sidebar where some menus have no children */\n @Prop() selectableEmpty = false;\n\n /** Set to false when you want to hide the summary icon and disable the open/close mechanism. Usually not needed, but used internally by 'six-sidebar-item-group' */\n // eslint-disable-next-line @stencil-community/ban-default-true\n @Prop() hasContent = true;\n\n @Watch('open')\n handleOpenChange() {\n if (this.body != null) {\n this.open ? this.show() : this.hide();\n }\n }\n\n /** Emitted when the details opens. Calling `event.preventDefault()` will prevent it from being opened. */\n @Event({ eventName: 'six-details-show' }) sixShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the details opens and all transitions are complete. */\n @Event({ eventName: 'six-details-after-show' }) sixAfterShow!: EventEmitter<EmptyPayload>;\n\n /** Emitted when the details closes. Calling `event.preventDefault()` will prevent it from being closed. */\n @Event({ eventName: 'six-details-hide' }) sixHide!: EventEmitter<EmptyPayload>;\n\n /** Emitted after the details closes and all transitions are complete. */\n @Event({ eventName: 'six-details-after-hide' }) sixAfterHide!: EventEmitter<EmptyPayload>;\n\n componentDidLoad() {\n if (this.details == null || this.body == null) return;\n\n focusVisible.observe(this.details);\n this.body.hidden = !this.open;\n\n // Show on init if open\n if (this.open) {\n this.show();\n }\n }\n\n disconnectedCallback() {\n if (this.details != null) {\n focusVisible.unobserve(this.details);\n }\n }\n\n /** Shows the detail body */\n @Method()\n async show() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (this.isVisible || this.body == null) return;\n\n const sixShow = this.sixShow.emit();\n if (sixShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.body.hidden = false;\n\n if (this.body.scrollHeight === 0) {\n // When the scroll height can't be measured, use auto. This prevents a borked open state when the details is open\n // initially, but not immediately visible (i.e. in a tab panel).\n this.body.style.height = 'auto';\n this.body.style.overflow = 'visible';\n } else {\n this.body.style.height = `${this.body.scrollHeight}px`;\n this.body.style.overflow = 'hidden';\n }\n this.isVisible = true;\n this.open = true;\n }\n\n /** Hides the detail body */\n @Method()\n async hide() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (!this.isVisible || this.body == null) return;\n const body = this.body;\n\n const sixHide = this.sixHide.emit();\n if (sixHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n // We can't transition out of `height: auto`, so let's set it to the current height first\n body.style.height = `${body.scrollHeight}px`;\n body.style.overflow = 'hidden';\n\n requestAnimationFrame(() => {\n // tslint:disable-next-line: no-unused-expression\n body.clientWidth; // force a reflow\n body.style.height = '0';\n });\n\n this.isVisible = false;\n this.open = false;\n }\n\n private handleBodyTransitionEnd = (event: TransitionEvent) => {\n if (this.body == null) return;\n const target = event.target as HTMLElement;\n\n // Ensure we only emit one event when the target element is no longer visible\n if (event.propertyName === 'height' && target.classList.contains('details__body')) {\n this.body.style.overflow = this.open ? 'visible' : 'hidden';\n this.body.style.height = this.open ? 'auto' : '0';\n this.open ? this.sixAfterShow.emit() : this.sixAfterHide.emit();\n this.body.hidden = !this.open;\n }\n };\n\n private handleSummaryClick = () => {\n if (!this.disabled && (this.hasContent || this.selectableEmpty)) {\n this.open ? this.hide() : this.show();\n this.header?.focus();\n }\n };\n\n private handleSummaryKeyDown = (event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.open ? this.hide() : this.show();\n }\n\n if (event.key === 'ArrowUp' || event.key === 'ArrowLeft') {\n event.preventDefault();\n this.hide();\n }\n\n if (event.key === 'ArrowDown' || event.key === 'ArrowRight') {\n event.preventDefault();\n this.show();\n }\n };\n\n render() {\n const summaryIcon = this.hasContent && (this.summaryIcon || 'expand_more');\n\n return (\n <div\n ref={(el) => (this.details = el)}\n part=\"base\"\n class={{\n details: true,\n 'details--open': this.open,\n 'details--disabled': this.disabled,\n inline: this.inline,\n }}\n >\n <header\n ref={(el) => (this.header = el)}\n part=\"header\"\n id={`${this.componentId}-header`}\n class=\"details__header\"\n role=\"button\"\n aria-expanded={this.open ? 'true' : 'false'}\n aria-controls={`${this.componentId}-content`}\n aria-disabled={this.disabled ? 'true' : 'false'}\n tabIndex={this.disabled ? -1 : 0}\n onClick={this.handleSummaryClick}\n onKeyDown={this.handleSummaryKeyDown}\n >\n <div part=\"summary\" class=\"details__summary\">\n <slot name=\"summary\">{this.summary}</slot>\n </div>\n\n <span\n part=\"summary-icon\"\n class={{\n 'details__summary-icon': true,\n 'details__summary-icon--animate': this.animateSummaryIcon,\n }}\n >\n <slot name=\"summary-icon\" onSlotchange={() => (this.animateSummaryIcon = false)}>\n {summaryIcon && <six-icon size={this.summaryIconSize}>{summaryIcon}</six-icon>}\n </slot>\n </span>\n </header>\n\n <div ref={(el) => (this.body = el)} class=\"details__body\" onTransitionEnd={this.handleBodyTransitionEnd}>\n <div\n part=\"content\"\n id={`${this.componentId}-content`}\n class=\"details__content\"\n role=\"region\"\n aria-labelledby={`${this.componentId}-header`}\n >\n <slot />\n </div>\n </div>\n </div>\n );\n }\n}\n"],"version":3}