@six-group/ui-library 0.0.0-insider.ebd822a → 0.0.0-insider.f015905

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 (1180) hide show
  1. package/README.md +9 -0
  2. package/dist/cjs/error-messages-6e8049a4.js +119 -0
  3. package/dist/cjs/error-messages-6e8049a4.js.map +1 -0
  4. package/dist/cjs/event-listeners-9fb878f1.js +61 -0
  5. package/dist/cjs/event-listeners-9fb878f1.js.map +1 -0
  6. package/dist/cjs/{execution-control-46f388e0.js → execution-control-d728da70.js} +15 -12
  7. package/dist/cjs/execution-control-d728da70.js.map +1 -0
  8. package/dist/cjs/focus-visible-e2c9255a.js +47 -0
  9. package/dist/cjs/focus-visible-e2c9255a.js.map +1 -0
  10. package/dist/cjs/form-9ebaae7c.js +20 -0
  11. package/dist/cjs/form-9ebaae7c.js.map +1 -0
  12. package/dist/cjs/form-control-8d64e974.js +36 -0
  13. package/dist/cjs/form-control-8d64e974.js.map +1 -0
  14. package/dist/cjs/{index-2f6daa5b.js → index-d7748d51.js} +587 -480
  15. package/dist/cjs/index-d7748d51.js.map +1 -0
  16. package/dist/cjs/index.cjs.js +62 -0
  17. package/dist/cjs/index.cjs.js.map +1 -1
  18. package/dist/cjs/loader.cjs.js +3 -12
  19. package/dist/cjs/loader.cjs.js.map +1 -1
  20. package/dist/cjs/modal-3ce015be.js +52 -0
  21. package/dist/cjs/modal-3ce015be.js.map +1 -0
  22. package/dist/cjs/{popover-f743f62b.js → popover-1e7c09f1.js} +109 -101
  23. package/dist/cjs/popover-1e7c09f1.js.map +1 -0
  24. package/dist/cjs/popup-e854acda.js +103 -0
  25. package/dist/cjs/popup-e854acda.js.map +1 -0
  26. package/dist/cjs/scroll-68033901.js +68 -0
  27. package/dist/{esm/scroll-180b53fd.js.map → cjs/scroll-68033901.js.map} +1 -1
  28. package/dist/cjs/six-alert.cjs.entry.js +141 -114
  29. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  30. package/dist/cjs/six-avatar.cjs.entry.js +21 -24
  31. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  32. package/dist/cjs/six-badge.cjs.entry.js +23 -23
  33. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  34. package/dist/cjs/six-button.cjs.entry.js +94 -92
  35. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  36. package/dist/cjs/six-card.cjs.entry.js +8 -8
  37. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  38. package/dist/cjs/six-checkbox_2.cjs.entry.js +190 -0
  39. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +1 -0
  40. package/dist/cjs/six-datepicker.cjs.entry.js +875 -980
  41. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  42. package/dist/cjs/six-details.cjs.entry.js +127 -126
  43. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  44. package/dist/cjs/six-dialog.cjs.entry.js +130 -132
  45. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  46. package/dist/cjs/six-drawer.cjs.entry.js +145 -149
  47. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  48. package/dist/cjs/six-dropdown_2.cjs.entry.js +710 -619
  49. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  50. package/dist/cjs/six-error-page.cjs.entry.js +82 -84
  51. package/dist/cjs/six-error-page.cjs.entry.js.map +1 -1
  52. package/dist/cjs/six-error.cjs.entry.js +21 -0
  53. package/dist/cjs/six-error.cjs.entry.js.map +1 -0
  54. package/dist/cjs/six-file-list-item.cjs.entry.js +34 -34
  55. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  56. package/dist/cjs/six-file-list.cjs.entry.js +7 -7
  57. package/dist/cjs/six-file-list.cjs.entry.js.map +1 -1
  58. package/dist/cjs/six-file-upload.cjs.entry.js +100 -100
  59. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  60. package/dist/cjs/six-footer.cjs.entry.js +8 -8
  61. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  62. package/dist/cjs/six-group-label.cjs.entry.js +43 -42
  63. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  64. package/dist/cjs/six-header.cjs.entry.js +172 -135
  65. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  66. package/dist/cjs/six-icon-button.cjs.entry.js +32 -32
  67. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  68. package/dist/cjs/six-icon.cjs.entry.js +22 -22
  69. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  70. package/dist/cjs/six-input.cjs.entry.js +186 -242
  71. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  72. package/dist/cjs/six-item-picker.cjs.entry.js +413 -336
  73. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  74. package/dist/cjs/six-language-switcher.cjs.entry.js +46 -46
  75. package/dist/cjs/six-language-switcher.cjs.entry.js.map +1 -1
  76. package/dist/cjs/six-layout-grid.cjs.entry.js +21 -19
  77. package/dist/cjs/six-layout-grid.cjs.entry.js.map +1 -1
  78. package/dist/cjs/six-main-container.cjs.entry.js +9 -9
  79. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  80. package/dist/cjs/six-menu-divider.cjs.entry.js +8 -8
  81. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  82. package/dist/cjs/six-menu-label.cjs.entry.js +8 -8
  83. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -1
  84. package/dist/cjs/six-picto.cjs.entry.js +14 -11
  85. package/dist/cjs/six-picto.cjs.entry.js.map +1 -1
  86. package/dist/cjs/six-progress-bar.cjs.entry.js +15 -15
  87. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  88. package/dist/cjs/six-progress-ring.cjs.entry.js +29 -29
  89. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  90. package/dist/cjs/six-radio.cjs.entry.js +104 -113
  91. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  92. package/dist/cjs/six-range.cjs.entry.js +185 -181
  93. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  94. package/dist/cjs/six-root.cjs.entry.js +11 -30
  95. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  96. package/dist/cjs/six-search-field.cjs.entry.js +44 -39
  97. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  98. package/dist/cjs/six-select.cjs.entry.js +494 -393
  99. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  100. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +56 -41
  101. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  102. package/dist/cjs/six-sidebar-item.cjs.entry.js +17 -15
  103. package/dist/cjs/six-sidebar-item.cjs.entry.js.map +1 -1
  104. package/dist/cjs/six-sidebar.cjs.entry.js +176 -155
  105. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  106. package/dist/cjs/six-spinner.cjs.entry.js +15 -15
  107. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -1
  108. package/dist/cjs/six-stage-indicator.cjs.entry.js +22 -0
  109. package/dist/cjs/six-stage-indicator.cjs.entry.js.map +1 -0
  110. package/dist/cjs/six-switch.cjs.entry.js +107 -95
  111. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  112. package/dist/cjs/six-tab-group.cjs.entry.js +226 -213
  113. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  114. package/dist/cjs/six-tab-panel.cjs.entry.js +14 -14
  115. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -1
  116. package/dist/cjs/six-tab.cjs.entry.js +55 -37
  117. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  118. package/dist/cjs/six-tag.cjs.entry.js +55 -36
  119. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  120. package/dist/cjs/six-textarea.cjs.entry.js +182 -205
  121. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  122. package/dist/cjs/six-tile.cjs.entry.js +75 -78
  123. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  124. package/dist/cjs/six-timepicker.cjs.entry.js +344 -405
  125. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  126. package/dist/cjs/six-tooltip.cjs.entry.js +145 -148
  127. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -1
  128. package/dist/cjs/slot-1b1232a1.js +51 -0
  129. package/dist/cjs/slot-1b1232a1.js.map +1 -0
  130. package/dist/cjs/types-d3da200b.js +19 -0
  131. package/dist/cjs/types-d3da200b.js.map +1 -0
  132. package/dist/cjs/ui-library.cjs.js +3 -6
  133. package/dist/cjs/ui-library.cjs.js.map +1 -1
  134. package/dist/collection/collection-manifest.json +54 -55
  135. package/dist/collection/components/six-alert/six-alert.css +5 -1
  136. package/dist/collection/components/six-alert/six-alert.js +383 -336
  137. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  138. package/dist/collection/components/six-alert/test/six-alert.spec.js +25 -0
  139. package/dist/collection/components/six-alert/test/six-alert.spec.js.map +1 -0
  140. package/dist/collection/components/six-avatar/six-avatar.css +2 -2
  141. package/dist/collection/components/six-avatar/six-avatar.js +112 -115
  142. package/dist/collection/components/six-avatar/six-avatar.js.map +1 -1
  143. package/dist/collection/components/six-avatar/test/six-avatar.spec.js +26 -0
  144. package/dist/collection/components/six-avatar/test/six-avatar.spec.js.map +1 -0
  145. package/dist/collection/components/six-badge/six-badge.css +1 -1
  146. package/dist/collection/components/six-badge/six-badge.js +91 -91
  147. package/dist/collection/components/six-badge/six-badge.js.map +1 -1
  148. package/dist/collection/components/six-badge/test/six-badge.spec.js +20 -0
  149. package/dist/collection/components/six-badge/test/six-badge.spec.js.map +1 -0
  150. package/dist/collection/components/six-button/six-button.css +7 -31
  151. package/dist/collection/components/six-button/six-button.js +450 -440
  152. package/dist/collection/components/six-button/six-button.js.map +1 -1
  153. package/dist/collection/components/six-button/test/six-button.spec.js +69 -0
  154. package/dist/collection/components/six-button/test/six-button.spec.js.map +1 -0
  155. package/dist/collection/components/six-card/six-card.css +4 -5
  156. package/dist/collection/components/six-card/six-card.js +16 -16
  157. package/dist/collection/components/six-card/six-card.js.map +1 -1
  158. package/dist/collection/components/six-card/test/six-card.spec.js +18 -0
  159. package/dist/collection/components/six-card/test/six-card.spec.js.map +1 -0
  160. package/dist/collection/components/six-checkbox/six-checkbox.css +10 -2
  161. package/dist/collection/components/six-checkbox/six-checkbox.js +426 -517
  162. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  163. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js +83 -0
  164. package/dist/collection/components/six-checkbox/test/six-checkbox.spec.js.map +1 -0
  165. package/dist/collection/components/six-datepicker/components/day-selection.js +10 -10
  166. package/dist/collection/components/six-datepicker/components/day-selection.js.map +1 -1
  167. package/dist/collection/components/six-datepicker/components/month-selection.js +11 -10
  168. package/dist/collection/components/six-datepicker/components/month-selection.js.map +1 -1
  169. package/dist/collection/components/six-datepicker/components/year-selection.js +11 -8
  170. package/dist/collection/components/six-datepicker/components/year-selection.js.map +1 -1
  171. package/dist/collection/components/six-datepicker/six-date-formats.js +21 -20
  172. package/dist/collection/components/six-datepicker/six-date-formats.js.map +1 -1
  173. package/dist/collection/components/six-datepicker/six-datepicker.css +1 -1
  174. package/dist/collection/components/six-datepicker/six-datepicker.js +1054 -1217
  175. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  176. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js +26 -0
  177. package/dist/collection/components/six-datepicker/test/six-datepicker.spec.js.map +1 -0
  178. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js +14 -14
  179. package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js.map +1 -1
  180. package/dist/collection/components/six-details/six-details.css +4 -6
  181. package/dist/collection/components/six-details/six-details.js +409 -402
  182. package/dist/collection/components/six-details/six-details.js.map +1 -1
  183. package/dist/collection/components/six-details/test/six-details.spec.js +36 -0
  184. package/dist/collection/components/six-details/test/six-details.spec.js.map +1 -0
  185. package/dist/collection/components/six-dialog/six-dialog.css +2 -2
  186. package/dist/collection/components/six-dialog/six-dialog.js +362 -356
  187. package/dist/collection/components/six-dialog/six-dialog.js.map +1 -1
  188. package/dist/collection/components/six-dialog/test/six-dialog.spec.js +34 -0
  189. package/dist/collection/components/six-dialog/test/six-dialog.spec.js.map +1 -0
  190. package/dist/collection/components/six-drawer/six-drawer.css +2 -2
  191. package/dist/collection/components/six-drawer/six-drawer.js +414 -410
  192. package/dist/collection/components/six-drawer/six-drawer.js.map +1 -1
  193. package/dist/collection/components/six-drawer/test/six-drawer.spec.js +34 -0
  194. package/dist/collection/components/six-drawer/test/six-drawer.spec.js.map +1 -0
  195. package/dist/collection/components/six-dropdown/six-dropdown.css +22 -6
  196. package/dist/collection/components/six-dropdown/six-dropdown.js +984 -868
  197. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  198. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +147 -0
  199. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +1 -0
  200. package/dist/collection/components/six-error/six-error.css +5 -0
  201. package/dist/collection/components/six-error/six-error.js +25 -0
  202. package/dist/collection/components/six-error/six-error.js.map +1 -0
  203. package/dist/collection/components/six-error-page/six-error-page.js +178 -180
  204. package/dist/collection/components/six-error-page/six-error-page.js.map +1 -1
  205. package/dist/collection/components/six-error-page/test/six-error-page.spec.js +240 -0
  206. package/dist/collection/components/six-error-page/test/six-error-page.spec.js.map +1 -0
  207. package/dist/collection/components/six-file-list/six-file-list.js +16 -16
  208. package/dist/collection/components/six-file-list/six-file-list.js.map +1 -1
  209. package/dist/collection/components/six-file-list/test/six-file-list.spec.js +67 -0
  210. package/dist/collection/components/six-file-list/test/six-file-list.spec.js.map +1 -0
  211. package/dist/collection/components/six-file-list-item/six-file-list-item.css +1 -1
  212. package/dist/collection/components/six-file-list-item/six-file-list-item.js +196 -194
  213. package/dist/collection/components/six-file-list-item/six-file-list-item.js.map +1 -1
  214. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js +169 -0
  215. package/dist/collection/components/six-file-list-item/test/six-file-list-item.spec.js.map +1 -0
  216. package/dist/collection/components/six-file-upload/six-file-upload.css +1 -4
  217. package/dist/collection/components/six-file-upload/six-file-upload.js +293 -291
  218. package/dist/collection/components/six-file-upload/six-file-upload.js.map +1 -1
  219. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js +103 -0
  220. package/dist/collection/components/six-file-upload/test/six-file-upload.spec.js.map +1 -0
  221. package/dist/collection/components/six-footer/six-footer.css +2 -2
  222. package/dist/collection/components/six-footer/six-footer.js +16 -16
  223. package/dist/collection/components/six-footer/six-footer.js.map +1 -1
  224. package/dist/collection/components/six-footer/test/six-footer.spec.js +21 -0
  225. package/dist/collection/components/six-footer/test/six-footer.spec.js.map +1 -0
  226. package/dist/collection/components/six-group-label/six-group-label.css +5 -2
  227. package/dist/collection/components/six-group-label/six-group-label.js +158 -156
  228. package/dist/collection/components/six-group-label/six-group-label.js.map +1 -1
  229. package/dist/collection/components/six-group-label/test/six-group-label.spec.js +45 -0
  230. package/dist/collection/components/six-group-label/test/six-group-label.spec.js.map +1 -0
  231. package/dist/collection/components/six-header/six-header.css +6 -2
  232. package/dist/collection/components/six-header/six-header.js +444 -380
  233. package/dist/collection/components/six-header/six-header.js.map +1 -1
  234. package/dist/collection/components/six-header/test/six-header.spec.js +177 -0
  235. package/dist/collection/components/six-header/test/six-header.spec.js.map +1 -0
  236. package/dist/collection/components/six-icon/six-icon.css +5 -2
  237. package/dist/collection/components/six-icon/six-icon.js +72 -72
  238. package/dist/collection/components/six-icon/six-icon.js.map +1 -1
  239. package/dist/collection/components/six-icon/test/six-icon.spec.js +20 -0
  240. package/dist/collection/components/six-icon/test/six-icon.spec.js.map +1 -0
  241. package/dist/collection/components/six-icon-button/six-icon-button.css +5 -5
  242. package/dist/collection/components/six-icon-button/six-icon-button.js +133 -133
  243. package/dist/collection/components/six-icon-button/six-icon-button.js.map +1 -1
  244. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js +23 -0
  245. package/dist/collection/components/six-icon-button/test/six-icon-button.spec.js.map +1 -0
  246. package/dist/collection/components/six-input/six-input.css +15 -3
  247. package/dist/collection/components/six-input/six-input.js +970 -1107
  248. package/dist/collection/components/six-input/six-input.js.map +1 -1
  249. package/dist/collection/components/six-input/test/six-input.spec.js +39 -0
  250. package/dist/collection/components/six-input/test/six-input.spec.js.map +1 -0
  251. package/dist/collection/components/six-item-picker/six-item-picker.css +8 -0
  252. package/dist/collection/components/six-item-picker/six-item-picker.js +739 -658
  253. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  254. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js +90 -0
  255. package/dist/collection/components/six-item-picker/test/six-item-picker.spec.js.map +1 -0
  256. package/dist/collection/components/six-item-picker/types.js +9 -7
  257. package/dist/collection/components/six-item-picker/types.js.map +1 -1
  258. package/dist/collection/components/six-language-switcher/six-language-switcher.js +125 -123
  259. package/dist/collection/components/six-language-switcher/six-language-switcher.js.map +1 -1
  260. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js +196 -0
  261. package/dist/collection/components/six-language-switcher/test/six-language-switcher.spec.js.map +1 -0
  262. package/dist/collection/components/six-layout-grid/six-layout-grid.js +56 -54
  263. package/dist/collection/components/six-layout-grid/six-layout-grid.js.map +1 -1
  264. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js +18 -0
  265. package/dist/collection/components/six-layout-grid/test/six-layout-grid.spec.js.map +1 -0
  266. package/dist/collection/components/six-main-container/six-main-container.js +42 -42
  267. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -1
  268. package/dist/collection/components/six-main-container/test/six-main-container.spec.js +22 -0
  269. package/dist/collection/components/six-main-container/test/six-main-container.spec.js.map +1 -0
  270. package/dist/collection/components/six-menu/six-menu.css +8 -7
  271. package/dist/collection/components/six-menu/six-menu.js +391 -359
  272. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  273. package/dist/collection/components/six-menu/test/six-menu.spec.js +93 -0
  274. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -0
  275. package/dist/collection/components/six-menu-divider/six-menu-divider.css +3 -2
  276. package/dist/collection/components/six-menu-divider/six-menu-divider.js +16 -16
  277. package/dist/collection/components/six-menu-divider/six-menu-divider.js.map +1 -1
  278. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js +18 -0
  279. package/dist/collection/components/six-menu-divider/test/six-menu-divider.spec.js.map +1 -0
  280. package/dist/collection/components/six-menu-item/six-menu-item.css +13 -2
  281. package/dist/collection/components/six-menu-item/six-menu-item.js +211 -176
  282. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  283. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js +33 -0
  284. package/dist/collection/components/six-menu-item/test/six-menu-item.spec.js.map +1 -0
  285. package/dist/collection/components/six-menu-label/six-menu-label.css +1 -1
  286. package/dist/collection/components/six-menu-label/six-menu-label.js +16 -16
  287. package/dist/collection/components/six-menu-label/six-menu-label.js.map +1 -1
  288. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js +20 -0
  289. package/dist/collection/components/six-menu-label/test/six-menu-label.spec.js.map +1 -0
  290. package/dist/collection/components/six-picto/six-picto.js +47 -44
  291. package/dist/collection/components/six-picto/six-picto.js.map +1 -1
  292. package/dist/collection/components/six-picto/test/six-picto.spec.js +33 -0
  293. package/dist/collection/components/six-picto/test/six-picto.spec.js.map +1 -0
  294. package/dist/collection/components/six-progress-bar/six-progress-bar.css +1 -1
  295. package/dist/collection/components/six-progress-bar/six-progress-bar.js +65 -65
  296. package/dist/collection/components/six-progress-bar/six-progress-bar.js.map +1 -1
  297. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js +24 -0
  298. package/dist/collection/components/six-progress-bar/test/six-progress-bar.spec.js.map +1 -0
  299. package/dist/collection/components/six-progress-ring/six-progress-ring.css +1 -1
  300. package/dist/collection/components/six-progress-ring/six-progress-ring.js +100 -99
  301. package/dist/collection/components/six-progress-ring/six-progress-ring.js.map +1 -1
  302. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js +26 -0
  303. package/dist/collection/components/six-progress-ring/test/six-progress-ring.spec.js.map +1 -0
  304. package/dist/collection/components/six-radio/six-radio.css +1 -1
  305. package/dist/collection/components/six-radio/six-radio.js +323 -388
  306. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  307. package/dist/collection/components/six-radio/test/six-radio.spec.js +63 -0
  308. package/dist/collection/components/six-radio/test/six-radio.spec.js.map +1 -0
  309. package/dist/collection/components/six-range/six-range.css +5 -2
  310. package/dist/collection/components/six-range/six-range.js +572 -591
  311. package/dist/collection/components/six-range/six-range.js.map +1 -1
  312. package/dist/collection/components/six-range/test/six-range.spec.js +34 -0
  313. package/dist/collection/components/six-range/test/six-range.spec.js.map +1 -0
  314. package/dist/collection/components/six-root/six-root.js +87 -153
  315. package/dist/collection/components/six-root/six-root.js.map +1 -1
  316. package/dist/collection/components/six-root/test/six-root.spec.js +36 -0
  317. package/dist/collection/components/six-root/test/six-root.spec.js.map +1 -0
  318. package/dist/collection/components/six-search-field/six-search-field.css +1 -1
  319. package/dist/collection/components/six-search-field/six-search-field.js +172 -166
  320. package/dist/collection/components/six-search-field/six-search-field.js.map +1 -1
  321. package/dist/collection/components/six-search-field/test/six-search-field.spec.js +22 -0
  322. package/dist/collection/components/six-search-field/test/six-search-field.spec.js.map +1 -0
  323. package/dist/collection/components/six-select/six-select.css +61 -73
  324. package/dist/collection/components/six-select/six-select.js +1106 -1024
  325. package/dist/collection/components/six-select/six-select.js.map +1 -1
  326. package/dist/collection/components/six-select/test/six-select.spec.js +102 -0
  327. package/dist/collection/components/six-select/test/six-select.spec.js.map +1 -0
  328. package/dist/collection/components/six-select/test/util.spec.js +81 -0
  329. package/dist/collection/components/six-select/test/util.spec.js.map +1 -0
  330. package/dist/collection/components/six-select/util.js +52 -0
  331. package/dist/collection/components/six-select/util.js.map +1 -0
  332. package/dist/collection/components/six-sidebar/six-sidebar.css +2 -2
  333. package/dist/collection/components/six-sidebar/six-sidebar.js +470 -435
  334. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  335. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js +22 -0
  336. package/dist/collection/components/six-sidebar/test/six-sidebar.spec.js.map +1 -0
  337. package/dist/collection/components/six-sidebar-item/six-sidebar-item.css +6 -1
  338. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +102 -83
  339. package/dist/collection/components/six-sidebar-item/six-sidebar-item.js.map +1 -1
  340. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js +50 -0
  341. package/dist/collection/components/six-sidebar-item/test/six-sidebar-item.spec.js.map +1 -0
  342. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +12 -1
  343. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +183 -151
  344. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js.map +1 -1
  345. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js +53 -0
  346. package/dist/collection/components/six-sidebar-item-group/test/six-sidebar-item-group.spec.js.map +1 -0
  347. package/dist/collection/components/six-spinner/six-spinner.css +1 -1
  348. package/dist/collection/components/six-spinner/six-spinner.js +48 -47
  349. package/dist/collection/components/six-spinner/six-spinner.js.map +1 -1
  350. package/dist/collection/components/six-spinner/test/six-spinner.spec.js +37 -0
  351. package/dist/collection/components/six-spinner/test/six-spinner.spec.js.map +1 -0
  352. package/dist/collection/components/six-stage-indicator/six-stage-indicator.css +1 -1
  353. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js +46 -45
  354. package/dist/collection/components/six-stage-indicator/six-stage-indicator.js.map +1 -1
  355. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js +117 -0
  356. package/dist/collection/components/six-stage-indicator/test/six-stage-indicator.spec.js.map +1 -0
  357. package/dist/collection/components/six-switch/six-switch.css +81 -1
  358. package/dist/collection/components/six-switch/six-switch.js +389 -378
  359. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  360. package/dist/collection/components/six-switch/test/six-switch.spec.js +73 -0
  361. package/dist/collection/components/six-switch/test/six-switch.spec.js.map +1 -0
  362. package/dist/collection/components/six-tab/six-tab.css +55 -6
  363. package/dist/collection/components/six-tab/six-tab.js +207 -184
  364. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  365. package/dist/collection/components/six-tab-group/six-tab-group.css +1 -32
  366. package/dist/collection/components/six-tab-group/six-tab-group.js +316 -335
  367. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  368. package/dist/collection/components/six-tab-panel/six-tab-panel.css +1 -1
  369. package/dist/collection/components/six-tab-panel/six-tab-panel.js +64 -64
  370. package/dist/collection/components/six-tab-panel/six-tab-panel.js.map +1 -1
  371. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js +20 -0
  372. package/dist/collection/components/six-tab-panel/test/six-tab-panel.spec.js.map +1 -0
  373. package/dist/collection/components/six-tag/six-tag.css +7 -1
  374. package/dist/collection/components/six-tag/six-tag.js +162 -142
  375. package/dist/collection/components/six-tag/six-tag.js.map +1 -1
  376. package/dist/collection/components/six-tag/test/six-tag.spec.js +54 -0
  377. package/dist/collection/components/six-tag/test/six-tag.spec.js.map +1 -0
  378. package/dist/collection/components/six-textarea/six-textarea.css +5 -2
  379. package/dist/collection/components/six-textarea/six-textarea.js +796 -882
  380. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  381. package/dist/collection/components/six-textarea/test/six-textarea.spec.js +119 -0
  382. package/dist/collection/components/six-textarea/test/six-textarea.spec.js.map +1 -0
  383. package/dist/collection/components/six-tile/six-tile.css +2 -2
  384. package/dist/collection/components/six-tile/six-tile.js +300 -299
  385. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  386. package/dist/collection/components/six-tile/test/six-tile.spec.js +69 -0
  387. package/dist/collection/components/six-tile/test/six-tile.spec.js.map +1 -0
  388. package/dist/collection/components/six-timepicker/six-timepicker.css +1 -1
  389. package/dist/collection/components/six-timepicker/six-timepicker.js +829 -911
  390. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  391. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js +496 -0
  392. package/dist/collection/components/six-timepicker/test/six-timepicker.spec.js.map +1 -0
  393. package/dist/collection/components/six-tooltip/six-tooltip.css +2 -2
  394. package/dist/collection/components/six-tooltip/six-tooltip.js +405 -402
  395. package/dist/collection/components/six-tooltip/six-tooltip.js.map +1 -1
  396. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js +28 -0
  397. package/dist/collection/components/six-tooltip/test/six-tooltip.spec.js.map +1 -0
  398. package/dist/collection/functional-components/form-control/form-control.js +20 -19
  399. package/dist/collection/functional-components/form-control/form-control.js.map +1 -1
  400. package/dist/collection/index.js +2 -1
  401. package/dist/collection/index.js.map +1 -1
  402. package/dist/collection/testUtil/delay.js +1 -1
  403. package/dist/collection/testUtil/delay.js.map +1 -1
  404. package/dist/collection/utils/alert.js +54 -0
  405. package/dist/collection/utils/alert.js.map +1 -0
  406. package/dist/collection/utils/animation.js +34 -0
  407. package/dist/collection/utils/animation.js.map +1 -0
  408. package/dist/collection/utils/date-util.js +536 -502
  409. package/dist/collection/utils/date-util.js.map +1 -1
  410. package/dist/collection/utils/date-util.spec.js +995 -0
  411. package/dist/collection/utils/date-util.spec.js.map +1 -0
  412. package/dist/collection/utils/error-messages.js +112 -0
  413. package/dist/collection/utils/error-messages.js.map +1 -0
  414. package/dist/collection/utils/event-listeners.js +53 -37
  415. package/dist/collection/utils/event-listeners.js.map +1 -1
  416. package/dist/collection/utils/execution-control.js +14 -13
  417. package/dist/collection/utils/execution-control.js.map +1 -1
  418. package/dist/collection/utils/focus-visible.js +28 -28
  419. package/dist/collection/utils/focus-visible.js.map +1 -1
  420. package/dist/collection/utils/form.js +15 -0
  421. package/dist/collection/utils/form.js.map +1 -0
  422. package/dist/collection/utils/modal.js +25 -24
  423. package/dist/collection/utils/modal.js.map +1 -1
  424. package/dist/collection/utils/offset.js +4 -4
  425. package/dist/collection/utils/offset.js.map +1 -1
  426. package/dist/collection/utils/popover.js +104 -90
  427. package/dist/collection/utils/popover.js.map +1 -1
  428. package/dist/collection/utils/popup.js +95 -0
  429. package/dist/collection/utils/popup.js.map +1 -0
  430. package/dist/collection/utils/scroll.js +28 -28
  431. package/dist/collection/utils/scroll.js.map +1 -1
  432. package/dist/collection/utils/scroll.spec.js +122 -0
  433. package/dist/collection/utils/scroll.spec.js.map +1 -0
  434. package/dist/collection/utils/slot.js +30 -46
  435. package/dist/collection/utils/slot.js.map +1 -1
  436. package/dist/collection/utils/support.js +10 -10
  437. package/dist/collection/utils/support.js.map +1 -1
  438. package/dist/collection/utils/tabbable.js +17 -17
  439. package/dist/collection/utils/tabbable.js.map +1 -1
  440. package/dist/collection/utils/time.util.js +73 -59
  441. package/dist/collection/utils/time.util.js.map +1 -1
  442. package/dist/collection/utils/time.util.spec.js +368 -0
  443. package/dist/collection/utils/time.util.spec.js.map +1 -0
  444. package/dist/collection/utils/type-check.js +0 -1
  445. package/dist/collection/utils/type-check.js.map +1 -1
  446. package/dist/components/event-listeners.js +53 -37
  447. package/dist/components/event-listeners.js.map +1 -1
  448. package/dist/components/execution-control.js +14 -11
  449. package/dist/components/execution-control.js.map +1 -1
  450. package/dist/components/focus-visible.js +28 -28
  451. package/dist/components/focus-visible.js.map +1 -1
  452. package/dist/components/form-control.js +26 -24
  453. package/dist/components/form-control.js.map +1 -1
  454. package/dist/components/form.js +18 -0
  455. package/dist/components/form.js.map +1 -0
  456. package/dist/components/index.d.ts +6 -0
  457. package/dist/components/index.js +118 -65
  458. package/dist/components/index.js.map +1 -1
  459. package/dist/components/modal.js +35 -34
  460. package/dist/components/modal.js.map +1 -1
  461. package/dist/components/popover.js +108 -100
  462. package/dist/components/popover.js.map +1 -1
  463. package/dist/components/scroll.js +32 -32
  464. package/dist/components/scroll.js.map +1 -1
  465. package/dist/components/six-alert.d.ts +2 -2
  466. package/dist/components/six-alert.js +176 -146
  467. package/dist/components/six-alert.js.map +1 -1
  468. package/dist/components/six-avatar.d.ts +2 -2
  469. package/dist/components/six-avatar.js +45 -48
  470. package/dist/components/six-avatar.js.map +1 -1
  471. package/dist/components/six-badge.d.ts +2 -2
  472. package/dist/components/six-badge.js +40 -40
  473. package/dist/components/six-badge.js.map +1 -1
  474. package/dist/components/six-button.d.ts +2 -2
  475. package/dist/components/six-button.js +1 -140
  476. package/dist/components/six-button.js.map +1 -1
  477. package/dist/components/six-button2.js +146 -0
  478. package/dist/components/six-button2.js.map +1 -0
  479. package/dist/components/six-card.d.ts +2 -2
  480. package/dist/components/six-card.js +21 -21
  481. package/dist/components/six-card.js.map +1 -1
  482. package/dist/components/six-checkbox.d.ts +2 -2
  483. package/dist/components/six-checkbox.js +1 -186
  484. package/dist/components/six-checkbox.js.map +1 -1
  485. package/dist/components/six-checkbox2.js +165 -0
  486. package/dist/components/six-checkbox2.js.map +1 -0
  487. package/dist/components/six-datepicker.d.ts +2 -2
  488. package/dist/components/six-datepicker.js +947 -1045
  489. package/dist/components/six-datepicker.js.map +1 -1
  490. package/dist/components/six-details.d.ts +2 -2
  491. package/dist/components/six-details2.js +158 -155
  492. package/dist/components/six-details2.js.map +1 -1
  493. package/dist/components/six-dialog.d.ts +2 -2
  494. package/dist/components/six-dialog.js +160 -160
  495. package/dist/components/six-dialog.js.map +1 -1
  496. package/dist/components/six-drawer.d.ts +2 -2
  497. package/dist/components/six-drawer.js +177 -179
  498. package/dist/components/six-drawer.js.map +1 -1
  499. package/dist/components/six-dropdown.d.ts +2 -2
  500. package/dist/components/six-dropdown2.js +549 -448
  501. package/dist/components/six-dropdown2.js.map +1 -1
  502. package/dist/components/six-error-page.d.ts +2 -2
  503. package/dist/components/six-error-page.js +106 -108
  504. package/dist/components/six-error-page.js.map +1 -1
  505. package/dist/components/{six-form.d.ts → six-error.d.ts} +4 -4
  506. package/dist/components/six-error.js +8 -0
  507. package/dist/components/six-error.js.map +1 -0
  508. package/dist/components/six-error2.js +32 -0
  509. package/dist/components/six-error2.js.map +1 -0
  510. package/dist/components/six-file-list-item.d.ts +2 -2
  511. package/dist/components/six-file-list-item.js +59 -59
  512. package/dist/components/six-file-list-item.js.map +1 -1
  513. package/dist/components/six-file-list.d.ts +2 -2
  514. package/dist/components/six-file-list.js +20 -20
  515. package/dist/components/six-file-list.js.map +1 -1
  516. package/dist/components/six-file-upload.d.ts +2 -2
  517. package/dist/components/six-file-upload.js +125 -125
  518. package/dist/components/six-file-upload.js.map +1 -1
  519. package/dist/components/six-footer.d.ts +2 -2
  520. package/dist/components/six-footer.js +21 -21
  521. package/dist/components/six-footer.js.map +1 -1
  522. package/dist/components/six-group-label.d.ts +2 -2
  523. package/dist/components/six-group-label.js +71 -61
  524. package/dist/components/six-group-label.js.map +1 -1
  525. package/dist/components/six-header.d.ts +2 -2
  526. package/dist/components/six-header.js +239 -187
  527. package/dist/components/six-header.js.map +1 -1
  528. package/dist/components/six-icon-button.d.ts +2 -2
  529. package/dist/components/six-icon-button2.js +55 -55
  530. package/dist/components/six-icon-button2.js.map +1 -1
  531. package/dist/components/six-icon.d.ts +2 -2
  532. package/dist/components/six-icon2.js +38 -38
  533. package/dist/components/six-icon2.js.map +1 -1
  534. package/dist/components/six-input.d.ts +2 -2
  535. package/dist/components/six-input2.js +253 -304
  536. package/dist/components/six-input2.js.map +1 -1
  537. package/dist/components/six-item-picker.d.ts +2 -2
  538. package/dist/components/six-item-picker2.js +458 -375
  539. package/dist/components/six-item-picker2.js.map +1 -1
  540. package/dist/components/six-language-switcher.d.ts +2 -2
  541. package/dist/components/six-language-switcher.js +64 -62
  542. package/dist/components/six-language-switcher.js.map +1 -1
  543. package/dist/components/six-layout-grid.d.ts +2 -2
  544. package/dist/components/six-layout-grid.js +38 -34
  545. package/dist/components/six-layout-grid.js.map +1 -1
  546. package/dist/components/six-main-container.d.ts +2 -2
  547. package/dist/components/six-main-container.js +24 -24
  548. package/dist/components/six-main-container.js.map +1 -1
  549. package/dist/components/six-menu-divider.d.ts +2 -2
  550. package/dist/components/six-menu-divider.js +21 -21
  551. package/dist/components/six-menu-divider.js.map +1 -1
  552. package/dist/components/six-menu-item.d.ts +2 -2
  553. package/dist/components/six-menu-item2.js +98 -73
  554. package/dist/components/six-menu-item2.js.map +1 -1
  555. package/dist/components/six-menu-label.d.ts +2 -2
  556. package/dist/components/six-menu-label.js +21 -21
  557. package/dist/components/six-menu-label.js.map +1 -1
  558. package/dist/components/six-menu.d.ts +2 -2
  559. package/dist/components/six-menu2.js +255 -232
  560. package/dist/components/six-menu2.js.map +1 -1
  561. package/dist/components/six-picto.d.ts +2 -2
  562. package/dist/components/six-picto2.js +29 -26
  563. package/dist/components/six-picto2.js.map +1 -1
  564. package/dist/components/six-progress-bar.d.ts +2 -2
  565. package/dist/components/six-progress-bar.js +31 -31
  566. package/dist/components/six-progress-bar.js.map +1 -1
  567. package/dist/components/six-progress-ring.d.ts +2 -2
  568. package/dist/components/six-progress-ring.js +48 -46
  569. package/dist/components/six-progress-ring.js.map +1 -1
  570. package/dist/components/six-radio.d.ts +2 -2
  571. package/dist/components/six-radio.js +129 -139
  572. package/dist/components/six-radio.js.map +1 -1
  573. package/dist/components/six-range.d.ts +2 -2
  574. package/dist/components/six-range.js +233 -218
  575. package/dist/components/six-range.js.map +1 -1
  576. package/dist/components/six-root.d.ts +2 -2
  577. package/dist/components/six-root.js +39 -66
  578. package/dist/components/six-root.js.map +1 -1
  579. package/dist/components/six-search-field.d.ts +2 -2
  580. package/dist/components/six-search-field.js +79 -66
  581. package/dist/components/six-search-field.js.map +1 -1
  582. package/dist/components/six-select.d.ts +2 -2
  583. package/dist/components/six-select.js +714 -479
  584. package/dist/components/six-select.js.map +1 -1
  585. package/dist/components/six-sidebar-item-group.d.ts +2 -2
  586. package/dist/components/six-sidebar-item-group.js +87 -71
  587. package/dist/components/six-sidebar-item-group.js.map +1 -1
  588. package/dist/components/six-sidebar-item.d.ts +2 -2
  589. package/dist/components/six-sidebar-item.js +35 -32
  590. package/dist/components/six-sidebar-item.js.map +1 -1
  591. package/dist/components/six-sidebar.d.ts +2 -2
  592. package/dist/components/six-sidebar.js +201 -178
  593. package/dist/components/six-sidebar.js.map +1 -1
  594. package/dist/components/six-spinner.d.ts +2 -2
  595. package/dist/components/six-spinner2.js +30 -30
  596. package/dist/components/six-spinner2.js.map +1 -1
  597. package/dist/components/six-stage-indicator.d.ts +2 -2
  598. package/dist/components/six-stage-indicator2.js +29 -29
  599. package/dist/components/six-stage-indicator2.js.map +1 -1
  600. package/dist/components/six-switch.d.ts +2 -2
  601. package/dist/components/six-switch.js +144 -122
  602. package/dist/components/six-switch.js.map +1 -1
  603. package/dist/components/six-tab-group.d.ts +2 -2
  604. package/dist/components/six-tab-group.js +256 -241
  605. package/dist/components/six-tab-group.js.map +1 -1
  606. package/dist/components/six-tab-panel.d.ts +2 -2
  607. package/dist/components/six-tab-panel.js +30 -30
  608. package/dist/components/six-tab-panel.js.map +1 -1
  609. package/dist/components/six-tab.d.ts +2 -2
  610. package/dist/components/six-tab.js +85 -67
  611. package/dist/components/six-tab.js.map +1 -1
  612. package/dist/components/six-tag.d.ts +2 -2
  613. package/dist/components/six-tag.js +98 -1
  614. package/dist/components/six-tag.js.map +1 -1
  615. package/dist/components/six-textarea.d.ts +2 -2
  616. package/dist/components/six-textarea.js +231 -246
  617. package/dist/components/six-textarea.js.map +1 -1
  618. package/dist/components/six-tile.d.ts +2 -2
  619. package/dist/components/six-tile.js +116 -119
  620. package/dist/components/six-tile.js.map +1 -1
  621. package/dist/components/six-timepicker.d.ts +2 -2
  622. package/dist/components/six-timepicker.js +1 -1
  623. package/dist/components/six-timepicker2.js +508 -515
  624. package/dist/components/six-timepicker2.js.map +1 -1
  625. package/dist/components/six-tooltip.d.ts +2 -2
  626. package/dist/components/six-tooltip2.js +169 -170
  627. package/dist/components/six-tooltip2.js.map +1 -1
  628. package/dist/components/slot.js +31 -31
  629. package/dist/components/slot.js.map +1 -1
  630. package/dist/components.d.ts +341 -88
  631. package/dist/components.json +5090 -1056
  632. package/dist/esm/error-messages-1eaaad23.js +115 -0
  633. package/dist/esm/error-messages-1eaaad23.js.map +1 -0
  634. package/dist/esm/event-listeners-706d4309.js +59 -0
  635. package/dist/esm/event-listeners-706d4309.js.map +1 -0
  636. package/dist/esm/{execution-control-1a60d709.js → execution-control-2ebaf4ef.js} +15 -12
  637. package/dist/esm/execution-control-2ebaf4ef.js.map +1 -0
  638. package/dist/esm/focus-visible-d9dbfeef.js +45 -0
  639. package/dist/esm/focus-visible-d9dbfeef.js.map +1 -0
  640. package/dist/esm/form-4b145b7a.js +18 -0
  641. package/dist/esm/form-4b145b7a.js.map +1 -0
  642. package/dist/esm/form-control-d403a9cf.js +34 -0
  643. package/dist/esm/form-control-d403a9cf.js.map +1 -0
  644. package/dist/esm/{index-5c0f6628.js → index-79d4ef67.js} +587 -480
  645. package/dist/esm/index-79d4ef67.js.map +1 -0
  646. package/dist/esm/index.js +56 -0
  647. package/dist/esm/index.js.map +1 -1
  648. package/dist/esm/loader.js +4 -13
  649. package/dist/esm/loader.js.map +1 -1
  650. package/dist/esm/modal-96526245.js +49 -0
  651. package/dist/esm/modal-96526245.js.map +1 -0
  652. package/dist/esm/{popover-bd2c2fca.js → popover-25996e62.js} +109 -101
  653. package/dist/esm/popover-25996e62.js.map +1 -0
  654. package/dist/esm/popup-7209e9d5.js +98 -0
  655. package/dist/esm/popup-7209e9d5.js.map +1 -0
  656. package/dist/esm/scroll-3e16851e.js +64 -0
  657. package/dist/esm/scroll-3e16851e.js.map +1 -0
  658. package/dist/esm/six-alert.entry.js +141 -114
  659. package/dist/esm/six-alert.entry.js.map +1 -1
  660. package/dist/esm/six-avatar.entry.js +21 -24
  661. package/dist/esm/six-avatar.entry.js.map +1 -1
  662. package/dist/esm/six-badge.entry.js +23 -23
  663. package/dist/esm/six-badge.entry.js.map +1 -1
  664. package/dist/esm/six-button.entry.js +94 -92
  665. package/dist/esm/six-button.entry.js.map +1 -1
  666. package/dist/esm/six-card.entry.js +8 -8
  667. package/dist/esm/six-card.entry.js.map +1 -1
  668. package/dist/esm/six-checkbox_2.entry.js +185 -0
  669. package/dist/esm/six-checkbox_2.entry.js.map +1 -0
  670. package/dist/esm/six-datepicker.entry.js +875 -980
  671. package/dist/esm/six-datepicker.entry.js.map +1 -1
  672. package/dist/esm/six-details.entry.js +127 -126
  673. package/dist/esm/six-details.entry.js.map +1 -1
  674. package/dist/esm/six-dialog.entry.js +130 -132
  675. package/dist/esm/six-dialog.entry.js.map +1 -1
  676. package/dist/esm/six-drawer.entry.js +145 -149
  677. package/dist/esm/six-drawer.entry.js.map +1 -1
  678. package/dist/esm/six-dropdown_2.entry.js +710 -619
  679. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  680. package/dist/esm/six-error-page.entry.js +82 -84
  681. package/dist/esm/six-error-page.entry.js.map +1 -1
  682. package/dist/esm/six-error.entry.js +17 -0
  683. package/dist/esm/six-error.entry.js.map +1 -0
  684. package/dist/esm/six-file-list-item.entry.js +34 -34
  685. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  686. package/dist/esm/six-file-list.entry.js +7 -7
  687. package/dist/esm/six-file-list.entry.js.map +1 -1
  688. package/dist/esm/six-file-upload.entry.js +100 -100
  689. package/dist/esm/six-file-upload.entry.js.map +1 -1
  690. package/dist/esm/six-footer.entry.js +8 -8
  691. package/dist/esm/six-footer.entry.js.map +1 -1
  692. package/dist/esm/six-group-label.entry.js +43 -42
  693. package/dist/esm/six-group-label.entry.js.map +1 -1
  694. package/dist/esm/six-header.entry.js +172 -135
  695. package/dist/esm/six-header.entry.js.map +1 -1
  696. package/dist/esm/six-icon-button.entry.js +32 -32
  697. package/dist/esm/six-icon-button.entry.js.map +1 -1
  698. package/dist/esm/six-icon.entry.js +22 -22
  699. package/dist/esm/six-icon.entry.js.map +1 -1
  700. package/dist/esm/six-input.entry.js +186 -242
  701. package/dist/esm/six-input.entry.js.map +1 -1
  702. package/dist/esm/six-item-picker.entry.js +413 -336
  703. package/dist/esm/six-item-picker.entry.js.map +1 -1
  704. package/dist/esm/six-language-switcher.entry.js +46 -46
  705. package/dist/esm/six-language-switcher.entry.js.map +1 -1
  706. package/dist/esm/six-layout-grid.entry.js +21 -19
  707. package/dist/esm/six-layout-grid.entry.js.map +1 -1
  708. package/dist/esm/six-main-container.entry.js +9 -9
  709. package/dist/esm/six-main-container.entry.js.map +1 -1
  710. package/dist/esm/six-menu-divider.entry.js +8 -8
  711. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  712. package/dist/esm/six-menu-label.entry.js +8 -8
  713. package/dist/esm/six-menu-label.entry.js.map +1 -1
  714. package/dist/esm/six-picto.entry.js +14 -11
  715. package/dist/esm/six-picto.entry.js.map +1 -1
  716. package/dist/esm/six-progress-bar.entry.js +15 -15
  717. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  718. package/dist/esm/six-progress-ring.entry.js +29 -29
  719. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  720. package/dist/esm/six-radio.entry.js +104 -113
  721. package/dist/esm/six-radio.entry.js.map +1 -1
  722. package/dist/esm/six-range.entry.js +185 -181
  723. package/dist/esm/six-range.entry.js.map +1 -1
  724. package/dist/esm/six-root.entry.js +11 -30
  725. package/dist/esm/six-root.entry.js.map +1 -1
  726. package/dist/esm/six-search-field.entry.js +44 -39
  727. package/dist/esm/six-search-field.entry.js.map +1 -1
  728. package/dist/esm/six-select.entry.js +494 -393
  729. package/dist/esm/six-select.entry.js.map +1 -1
  730. package/dist/esm/six-sidebar-item-group.entry.js +56 -41
  731. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  732. package/dist/esm/six-sidebar-item.entry.js +17 -15
  733. package/dist/esm/six-sidebar-item.entry.js.map +1 -1
  734. package/dist/esm/six-sidebar.entry.js +176 -155
  735. package/dist/esm/six-sidebar.entry.js.map +1 -1
  736. package/dist/esm/six-spinner.entry.js +15 -15
  737. package/dist/esm/six-spinner.entry.js.map +1 -1
  738. package/dist/esm/six-stage-indicator.entry.js +18 -0
  739. package/dist/esm/six-stage-indicator.entry.js.map +1 -0
  740. package/dist/esm/six-switch.entry.js +107 -95
  741. package/dist/esm/six-switch.entry.js.map +1 -1
  742. package/dist/esm/six-tab-group.entry.js +226 -213
  743. package/dist/esm/six-tab-group.entry.js.map +1 -1
  744. package/dist/esm/six-tab-panel.entry.js +14 -14
  745. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  746. package/dist/esm/six-tab.entry.js +55 -37
  747. package/dist/esm/six-tab.entry.js.map +1 -1
  748. package/dist/esm/six-tag.entry.js +55 -36
  749. package/dist/esm/six-tag.entry.js.map +1 -1
  750. package/dist/esm/six-textarea.entry.js +182 -205
  751. package/dist/esm/six-textarea.entry.js.map +1 -1
  752. package/dist/esm/six-tile.entry.js +75 -78
  753. package/dist/esm/six-tile.entry.js.map +1 -1
  754. package/dist/esm/six-timepicker.entry.js +344 -405
  755. package/dist/esm/six-timepicker.entry.js.map +1 -1
  756. package/dist/esm/six-tooltip.entry.js +145 -148
  757. package/dist/esm/six-tooltip.entry.js.map +1 -1
  758. package/dist/esm/slot-56531341.js +47 -0
  759. package/dist/esm/slot-56531341.js.map +1 -0
  760. package/dist/esm/types-a07bb999.js +19 -0
  761. package/dist/esm/types-a07bb999.js.map +1 -0
  762. package/dist/esm/ui-library.js +4 -7
  763. package/dist/esm/ui-library.js.map +1 -1
  764. package/dist/types/components/six-alert/six-alert.d.ts +47 -42
  765. package/dist/types/components/six-avatar/six-avatar.d.ts +11 -12
  766. package/dist/types/components/six-badge/six-badge.d.ts +7 -8
  767. package/dist/types/components/six-button/six-button.d.ts +48 -49
  768. package/dist/types/components/six-card/six-card.d.ts +1 -1
  769. package/dist/types/components/six-checkbox/six-checkbox.d.ts +58 -67
  770. package/dist/types/components/six-datepicker/components/day-selection.d.ts +9 -5
  771. package/dist/types/components/six-datepicker/components/month-selection.d.ts +8 -5
  772. package/dist/types/components/six-datepicker/components/year-selection.d.ts +7 -5
  773. package/dist/types/components/six-datepicker/six-date-formats.d.ts +20 -20
  774. package/dist/types/components/six-datepicker/six-datepicker.d.ts +189 -198
  775. package/dist/types/components/six-details/six-details.d.ts +42 -42
  776. package/dist/types/components/six-dialog/six-dialog.d.ts +51 -51
  777. package/dist/types/components/six-drawer/six-drawer.d.ts +58 -59
  778. package/dist/types/components/six-dropdown/six-dropdown.d.ts +131 -116
  779. package/dist/types/components/six-error/six-error.d.ts +9 -0
  780. package/dist/types/components/six-error-page/six-error-page.d.ts +25 -25
  781. package/dist/types/components/six-file-list/six-file-list.d.ts +1 -1
  782. package/dist/types/components/six-file-list-item/six-file-list-item.d.ts +23 -23
  783. package/dist/types/components/six-file-upload/six-file-upload.d.ts +33 -33
  784. package/dist/types/components/six-footer/six-footer.d.ts +1 -1
  785. package/dist/types/components/six-group-label/six-group-label.d.ts +22 -22
  786. package/dist/types/components/six-header/six-header.d.ts +59 -66
  787. package/dist/types/components/six-icon/six-icon.d.ts +5 -5
  788. package/dist/types/components/six-icon-button/six-icon-button.d.ts +18 -18
  789. package/dist/types/components/six-input/six-input.d.ts +112 -129
  790. package/dist/types/components/six-item-picker/six-item-picker.d.ts +97 -93
  791. package/dist/types/components/six-item-picker/types.d.ts +7 -7
  792. package/dist/types/components/six-language-switcher/six-language-switcher.d.ts +15 -15
  793. package/dist/types/components/six-layout-grid/six-layout-grid.d.ts +6 -6
  794. package/dist/types/components/six-main-container/six-main-container.d.ts +4 -4
  795. package/dist/types/components/six-menu/six-menu.d.ts +67 -64
  796. package/dist/types/components/six-menu-divider/six-menu-divider.d.ts +1 -1
  797. package/dist/types/components/six-menu-item/six-menu-item.d.ts +27 -21
  798. package/dist/types/components/six-menu-label/six-menu-label.d.ts +1 -1
  799. package/dist/types/components/six-picto/six-picto.d.ts +6 -6
  800. package/dist/types/components/six-progress-bar/six-progress-bar.d.ts +5 -5
  801. package/dist/types/components/six-progress-ring/six-progress-ring.d.ts +11 -11
  802. package/dist/types/components/six-radio/six-radio.d.ts +38 -49
  803. package/dist/types/components/six-range/six-range.d.ts +75 -83
  804. package/dist/types/components/six-root/six-root.d.ts +10 -23
  805. package/dist/types/components/six-search-field/six-search-field.d.ts +20 -21
  806. package/dist/types/components/six-select/six-select.d.ts +137 -136
  807. package/dist/types/components/six-select/util.d.ts +7 -0
  808. package/dist/types/components/six-sidebar/six-sidebar.d.ts +45 -45
  809. package/dist/types/components/six-sidebar-item/six-sidebar-item.d.ts +12 -7
  810. package/dist/types/components/six-sidebar-item-group/six-sidebar-item-group.d.ts +26 -19
  811. package/dist/types/components/six-spinner/six-spinner.d.ts +6 -5
  812. package/dist/types/components/six-stage-indicator/six-stage-indicator.d.ts +3 -3
  813. package/dist/types/components/six-switch/six-switch.d.ts +49 -45
  814. package/dist/types/components/six-tab/six-tab.d.ts +20 -20
  815. package/dist/types/components/six-tab-group/six-tab-group.d.ts +36 -40
  816. package/dist/types/components/six-tab-panel/six-tab-panel.d.ts +7 -7
  817. package/dist/types/components/six-tag/six-tag.d.ts +20 -14
  818. package/dist/types/components/six-textarea/six-textarea.d.ts +89 -114
  819. package/dist/types/components/six-tile/six-tile.d.ts +31 -32
  820. package/dist/types/components/six-timepicker/six-timepicker.d.ts +156 -170
  821. package/dist/types/components/six-tooltip/six-tooltip.d.ts +55 -57
  822. package/dist/types/components.d.ts +731 -469
  823. package/dist/types/functional-components/form-control/form-control.d.ts +34 -31
  824. package/dist/types/index.d.ts +2 -0
  825. package/dist/types/stencil-public-runtime.d.ts +49 -5
  826. package/dist/types/testUtil/delay.d.ts +1 -1
  827. package/dist/types/types.d.ts +3 -0
  828. package/dist/types/utils/alert.d.ts +10 -0
  829. package/dist/types/utils/animation.d.ts +12 -0
  830. package/dist/types/utils/date-util.d.ts +73 -57
  831. package/dist/types/utils/error-messages.d.ts +44 -0
  832. package/dist/types/utils/event-listeners.d.ts +11 -10
  833. package/dist/types/utils/execution-control.d.ts +1 -3
  834. package/dist/types/utils/focus-visible.d.ts +2 -2
  835. package/dist/types/utils/form.d.ts +1 -0
  836. package/dist/types/utils/modal.d.ts +8 -8
  837. package/dist/types/utils/offset.d.ts +2 -2
  838. package/dist/types/utils/popover.d.ts +22 -22
  839. package/dist/types/utils/popup.d.ts +9 -0
  840. package/dist/types/utils/slot.d.ts +2 -8
  841. package/dist/types/utils/tabbable.d.ts +1 -1
  842. package/dist/types/utils/time.util.d.ts +18 -9
  843. package/dist/types/utils/type-check.d.ts +3 -4
  844. package/dist/types/utils/types.d.ts +1 -1
  845. package/dist/ui-library/index.esm.js +1 -1
  846. package/dist/ui-library/index.esm.js.map +1 -1
  847. package/dist/ui-library/{p-d5633a29.entry.js → p-0440335d.entry.js} +2 -2
  848. package/dist/ui-library/p-0440335d.entry.js.map +1 -0
  849. package/dist/ui-library/p-04cc397c.entry.js +2 -0
  850. package/dist/ui-library/p-04cc397c.entry.js.map +1 -0
  851. package/dist/ui-library/p-06ba4450.js +2 -0
  852. package/dist/ui-library/p-06ba4450.js.map +1 -0
  853. package/dist/ui-library/p-0cebf1d2.js +2 -0
  854. package/dist/ui-library/p-0cebf1d2.js.map +1 -0
  855. package/dist/ui-library/p-0edd3091.entry.js +2 -0
  856. package/dist/ui-library/p-0edd3091.entry.js.map +1 -0
  857. package/dist/ui-library/p-150b7664.entry.js +2 -0
  858. package/dist/ui-library/p-150b7664.entry.js.map +1 -0
  859. package/dist/ui-library/p-1f5840b5.entry.js +2 -0
  860. package/dist/ui-library/p-1f5840b5.entry.js.map +1 -0
  861. package/dist/ui-library/p-28cc013e.entry.js +2 -0
  862. package/dist/ui-library/p-28cc013e.entry.js.map +1 -0
  863. package/dist/ui-library/p-3424bbc0.entry.js +2 -0
  864. package/dist/ui-library/p-3424bbc0.entry.js.map +1 -0
  865. package/dist/ui-library/p-348c68a8.entry.js +2 -0
  866. package/dist/ui-library/p-348c68a8.entry.js.map +1 -0
  867. package/dist/ui-library/p-3723ca06.entry.js +2 -0
  868. package/dist/ui-library/p-3723ca06.entry.js.map +1 -0
  869. package/dist/ui-library/p-37aeac5e.entry.js +2 -0
  870. package/dist/ui-library/p-37aeac5e.entry.js.map +1 -0
  871. package/dist/ui-library/p-3d7fb086.entry.js +2 -0
  872. package/dist/ui-library/p-3d7fb086.entry.js.map +1 -0
  873. package/dist/ui-library/{p-19b50b5a.entry.js → p-457f7373.entry.js} +2 -2
  874. package/dist/ui-library/p-457f7373.entry.js.map +1 -0
  875. package/dist/ui-library/p-4a667f31.entry.js +2 -0
  876. package/dist/ui-library/p-4a667f31.entry.js.map +1 -0
  877. package/dist/ui-library/p-50dae789.entry.js +2 -0
  878. package/dist/ui-library/p-50dae789.entry.js.map +1 -0
  879. package/dist/ui-library/p-546e33d9.entry.js +2 -0
  880. package/dist/ui-library/p-546e33d9.entry.js.map +1 -0
  881. package/dist/ui-library/{p-73597d13.entry.js → p-5db3a705.entry.js} +2 -2
  882. package/dist/ui-library/p-5db3a705.entry.js.map +1 -0
  883. package/dist/ui-library/p-61e66671.js +2 -0
  884. package/dist/ui-library/p-61e66671.js.map +1 -0
  885. package/dist/ui-library/p-6296779b.entry.js +2 -0
  886. package/dist/ui-library/p-6296779b.entry.js.map +1 -0
  887. package/dist/ui-library/p-64b4755d.entry.js +2 -0
  888. package/dist/ui-library/p-64b4755d.entry.js.map +1 -0
  889. package/dist/ui-library/p-6c1b046e.entry.js +2 -0
  890. package/dist/ui-library/p-6c1b046e.entry.js.map +1 -0
  891. package/dist/ui-library/p-7115316e.entry.js +2 -0
  892. package/dist/ui-library/p-7115316e.entry.js.map +1 -0
  893. package/dist/ui-library/p-73dd493f.entry.js +2 -0
  894. package/dist/ui-library/p-73dd493f.entry.js.map +1 -0
  895. package/dist/ui-library/p-7f856f00.js +2 -0
  896. package/dist/ui-library/p-7f856f00.js.map +1 -0
  897. package/dist/ui-library/{p-eb8f05a9.js → p-8227aaed.js} +2 -2
  898. package/dist/ui-library/p-8227aaed.js.map +1 -0
  899. package/dist/ui-library/p-842b492e.js +2 -0
  900. package/dist/ui-library/p-842b492e.js.map +1 -0
  901. package/dist/ui-library/{p-25a3bf57.js → p-862d474e.js} +1 -1
  902. package/dist/ui-library/p-862d474e.js.map +1 -0
  903. package/dist/ui-library/p-870b988d.entry.js +2 -0
  904. package/dist/ui-library/p-870b988d.entry.js.map +1 -0
  905. package/dist/ui-library/{p-19364560.entry.js → p-884c5cf9.entry.js} +2 -2
  906. package/dist/ui-library/p-884c5cf9.entry.js.map +1 -0
  907. package/dist/ui-library/p-8888a367.entry.js +2 -0
  908. package/dist/ui-library/p-8888a367.entry.js.map +1 -0
  909. package/dist/ui-library/p-8bfb4bfc.js +2 -0
  910. package/dist/ui-library/p-8bfb4bfc.js.map +1 -0
  911. package/dist/ui-library/p-8ced18d8.entry.js +2 -0
  912. package/dist/ui-library/p-8ced18d8.entry.js.map +1 -0
  913. package/dist/ui-library/{p-820c23f0.entry.js → p-935c78a7.entry.js} +2 -2
  914. package/dist/ui-library/p-935c78a7.entry.js.map +1 -0
  915. package/dist/ui-library/p-961bd001.entry.js +2 -0
  916. package/dist/ui-library/p-961bd001.entry.js.map +1 -0
  917. package/dist/ui-library/{p-4f8394d7.js → p-998de05d.js} +2 -2
  918. package/dist/ui-library/p-998de05d.js.map +1 -0
  919. package/dist/ui-library/p-9b08068d.entry.js +2 -0
  920. package/dist/ui-library/p-9b08068d.entry.js.map +1 -0
  921. package/dist/ui-library/p-9c79341d.entry.js +2 -0
  922. package/dist/ui-library/p-9c79341d.entry.js.map +1 -0
  923. package/dist/ui-library/p-a1502802.js +2 -0
  924. package/dist/ui-library/p-a1502802.js.map +1 -0
  925. package/dist/ui-library/p-a9c159f2.entry.js +2 -0
  926. package/dist/ui-library/p-a9c159f2.entry.js.map +1 -0
  927. package/dist/ui-library/p-ac57ba5c.entry.js +2 -0
  928. package/dist/ui-library/p-ac57ba5c.entry.js.map +1 -0
  929. package/dist/ui-library/p-af15381b.js +3 -0
  930. package/dist/ui-library/p-af15381b.js.map +1 -0
  931. package/dist/ui-library/p-b1a5f3cd.entry.js +2 -0
  932. package/dist/ui-library/p-b1a5f3cd.entry.js.map +1 -0
  933. package/dist/ui-library/p-b385a241.entry.js +2 -0
  934. package/dist/ui-library/p-b385a241.entry.js.map +1 -0
  935. package/dist/ui-library/p-b74c5d6b.entry.js +2 -0
  936. package/dist/ui-library/p-b74c5d6b.entry.js.map +1 -0
  937. package/dist/ui-library/p-bf2fb53f.entry.js +2 -0
  938. package/dist/ui-library/p-bf2fb53f.entry.js.map +1 -0
  939. package/dist/ui-library/p-c2c7370b.entry.js +2 -0
  940. package/dist/ui-library/p-c2c7370b.entry.js.map +1 -0
  941. package/dist/ui-library/p-caea1eb6.entry.js +2 -0
  942. package/dist/ui-library/p-caea1eb6.entry.js.map +1 -0
  943. package/dist/ui-library/p-d3f5b9a8.entry.js +2 -0
  944. package/dist/ui-library/p-d3f5b9a8.entry.js.map +1 -0
  945. package/dist/ui-library/p-d42b18eb.entry.js +2 -0
  946. package/dist/ui-library/p-d42b18eb.entry.js.map +1 -0
  947. package/dist/ui-library/p-d95e292e.entry.js +2 -0
  948. package/dist/ui-library/p-d95e292e.entry.js.map +1 -0
  949. package/dist/ui-library/p-da7f3dbd.entry.js +2 -0
  950. package/dist/ui-library/p-da7f3dbd.entry.js.map +1 -0
  951. package/dist/ui-library/p-dfb89b6a.entry.js +2 -0
  952. package/dist/ui-library/p-dfb89b6a.entry.js.map +1 -0
  953. package/dist/ui-library/p-e080d5b6.js +2 -0
  954. package/dist/ui-library/p-e080d5b6.js.map +1 -0
  955. package/dist/ui-library/p-e6032375.entry.js +2 -0
  956. package/dist/ui-library/p-e6032375.entry.js.map +1 -0
  957. package/dist/ui-library/p-e60d2324.entry.js +2 -0
  958. package/dist/ui-library/p-e60d2324.entry.js.map +1 -0
  959. package/dist/ui-library/p-e8298c6e.entry.js +2 -0
  960. package/dist/ui-library/p-e8298c6e.entry.js.map +1 -0
  961. package/dist/ui-library/p-ed279165.entry.js +2 -0
  962. package/dist/ui-library/p-ed279165.entry.js.map +1 -0
  963. package/dist/ui-library/p-ed61b75c.entry.js +2 -0
  964. package/dist/ui-library/p-ed61b75c.entry.js.map +1 -0
  965. package/dist/ui-library/p-f136a6b2.js +2 -0
  966. package/dist/ui-library/p-f136a6b2.js.map +1 -0
  967. package/dist/ui-library/p-f1ab3384.entry.js +2 -0
  968. package/dist/ui-library/p-f1ab3384.entry.js.map +1 -0
  969. package/dist/ui-library/p-f4ef481c.entry.js +2 -0
  970. package/dist/ui-library/p-f4ef481c.entry.js.map +1 -0
  971. package/dist/ui-library/p-f8cbb8da.entry.js +2 -0
  972. package/dist/ui-library/p-f8cbb8da.entry.js.map +1 -0
  973. package/dist/ui-library/ui-library.css +1 -10
  974. package/dist/ui-library/ui-library.esm.js +1 -1
  975. package/dist/ui-library/ui-library.esm.js.map +1 -1
  976. package/loader/index.d.ts +1 -1
  977. package/package.json +20 -21
  978. package/dist/cjs/event-listeners-74715e62.js +0 -45
  979. package/dist/cjs/event-listeners-74715e62.js.map +0 -1
  980. package/dist/cjs/execution-control-46f388e0.js.map +0 -1
  981. package/dist/cjs/focus-visible-0b352c74.js +0 -47
  982. package/dist/cjs/focus-visible-0b352c74.js.map +0 -1
  983. package/dist/cjs/form-control-2c17c573.js +0 -34
  984. package/dist/cjs/form-control-2c17c573.js.map +0 -1
  985. package/dist/cjs/index-2f6daa5b.js.map +0 -1
  986. package/dist/cjs/modal-48d42228.js +0 -51
  987. package/dist/cjs/modal-48d42228.js.map +0 -1
  988. package/dist/cjs/popover-f743f62b.js.map +0 -1
  989. package/dist/cjs/scroll-76e6f5d7.js +0 -69
  990. package/dist/cjs/scroll-76e6f5d7.js.map +0 -1
  991. package/dist/cjs/set-attributes_2.cjs.entry.js +0 -71
  992. package/dist/cjs/set-attributes_2.cjs.entry.js.map +0 -1
  993. package/dist/cjs/six-checkbox.cjs.entry.js +0 -159
  994. package/dist/cjs/six-checkbox.cjs.entry.js.map +0 -1
  995. package/dist/cjs/six-form.cjs.entry.js +0 -231
  996. package/dist/cjs/six-form.cjs.entry.js.map +0 -1
  997. package/dist/cjs/six-menu-item.cjs.entry.js +0 -61
  998. package/dist/cjs/six-menu-item.cjs.entry.js.map +0 -1
  999. package/dist/cjs/six-timepicker.types-c19ebff3.js +0 -56
  1000. package/dist/cjs/six-timepicker.types-c19ebff3.js.map +0 -1
  1001. package/dist/cjs/slot-ad537f24.js +0 -52
  1002. package/dist/cjs/slot-ad537f24.js.map +0 -1
  1003. package/dist/cjs/types-64878648.js +0 -17
  1004. package/dist/cjs/types-64878648.js.map +0 -1
  1005. package/dist/collection/components/six-form/six-form.css +0 -11
  1006. package/dist/collection/components/six-form/six-form.js +0 -419
  1007. package/dist/collection/components/six-form/six-form.js.map +0 -1
  1008. package/dist/collection/components/six-timepicker/six-time-format.js +0 -15
  1009. package/dist/collection/components/six-timepicker/six-time-format.js.map +0 -1
  1010. package/dist/collection/components/six-timepicker/six-timepicker.types.js +0 -41
  1011. package/dist/collection/components/six-timepicker/six-timepicker.types.js.map +0 -1
  1012. package/dist/collection/utils/as-array.js +0 -2
  1013. package/dist/collection/utils/as-array.js.map +0 -1
  1014. package/dist/collection/utils/matchers.js +0 -3
  1015. package/dist/collection/utils/matchers.js.map +0 -1
  1016. package/dist/collection/utils/testing.js +0 -39
  1017. package/dist/collection/utils/testing.js.map +0 -1
  1018. package/dist/collection/wrappers/set-attributes/set-attributes.js +0 -72
  1019. package/dist/collection/wrappers/set-attributes/set-attributes.js.map +0 -1
  1020. package/dist/components/set-attributes.d.ts +0 -11
  1021. package/dist/components/set-attributes.js +0 -8
  1022. package/dist/components/set-attributes.js.map +0 -1
  1023. package/dist/components/set-attributes2.js +0 -69
  1024. package/dist/components/set-attributes2.js.map +0 -1
  1025. package/dist/components/six-form.js +0 -252
  1026. package/dist/components/six-form.js.map +0 -1
  1027. package/dist/components/six-tag2.js +0 -77
  1028. package/dist/components/six-tag2.js.map +0 -1
  1029. package/dist/esm/event-listeners-570a24ea.js +0 -43
  1030. package/dist/esm/event-listeners-570a24ea.js.map +0 -1
  1031. package/dist/esm/execution-control-1a60d709.js.map +0 -1
  1032. package/dist/esm/focus-visible-97933ea9.js +0 -45
  1033. package/dist/esm/focus-visible-97933ea9.js.map +0 -1
  1034. package/dist/esm/form-control-3b440ea1.js +0 -32
  1035. package/dist/esm/form-control-3b440ea1.js.map +0 -1
  1036. package/dist/esm/index-5c0f6628.js.map +0 -1
  1037. package/dist/esm/modal-5ebdc320.js +0 -48
  1038. package/dist/esm/modal-5ebdc320.js.map +0 -1
  1039. package/dist/esm/polyfills/css-shim.js +0 -1
  1040. package/dist/esm/popover-bd2c2fca.js.map +0 -1
  1041. package/dist/esm/scroll-180b53fd.js +0 -64
  1042. package/dist/esm/set-attributes_2.entry.js +0 -66
  1043. package/dist/esm/set-attributes_2.entry.js.map +0 -1
  1044. package/dist/esm/six-checkbox.entry.js +0 -155
  1045. package/dist/esm/six-checkbox.entry.js.map +0 -1
  1046. package/dist/esm/six-form.entry.js +0 -227
  1047. package/dist/esm/six-form.entry.js.map +0 -1
  1048. package/dist/esm/six-menu-item.entry.js +0 -57
  1049. package/dist/esm/six-menu-item.entry.js.map +0 -1
  1050. package/dist/esm/six-timepicker.types-e161a447.js +0 -50
  1051. package/dist/esm/six-timepicker.types-e161a447.js.map +0 -1
  1052. package/dist/esm/slot-6f3984c7.js +0 -47
  1053. package/dist/esm/slot-6f3984c7.js.map +0 -1
  1054. package/dist/esm/types-4b10b413.js +0 -17
  1055. package/dist/esm/types-4b10b413.js.map +0 -1
  1056. package/dist/types/components/six-form/six-form.d.ts +0 -69
  1057. package/dist/types/components/six-timepicker/six-time-format.d.ts +0 -13
  1058. package/dist/types/components/six-timepicker/six-timepicker.types.d.ts +0 -36
  1059. package/dist/types/utils/as-array.d.ts +0 -1
  1060. package/dist/types/utils/matchers.d.ts +0 -2
  1061. package/dist/types/utils/popper.d.ts +0 -33
  1062. package/dist/types/utils/testing.d.ts +0 -2
  1063. package/dist/types/wrappers/set-attributes/set-attributes.d.ts +0 -9
  1064. package/dist/ui-library/p-054e12cc.entry.js +0 -2
  1065. package/dist/ui-library/p-054e12cc.entry.js.map +0 -1
  1066. package/dist/ui-library/p-0786fa7c.js +0 -2
  1067. package/dist/ui-library/p-0786fa7c.js.map +0 -1
  1068. package/dist/ui-library/p-097cced4.entry.js +0 -2
  1069. package/dist/ui-library/p-097cced4.entry.js.map +0 -1
  1070. package/dist/ui-library/p-0d79b0c6.entry.js +0 -2
  1071. package/dist/ui-library/p-0d79b0c6.entry.js.map +0 -1
  1072. package/dist/ui-library/p-18e5f772.entry.js +0 -2
  1073. package/dist/ui-library/p-18e5f772.entry.js.map +0 -1
  1074. package/dist/ui-library/p-18ea0c56.js +0 -2
  1075. package/dist/ui-library/p-18ea0c56.js.map +0 -1
  1076. package/dist/ui-library/p-19364560.entry.js.map +0 -1
  1077. package/dist/ui-library/p-19b50b5a.entry.js.map +0 -1
  1078. package/dist/ui-library/p-21859bca.entry.js +0 -2
  1079. package/dist/ui-library/p-21859bca.entry.js.map +0 -1
  1080. package/dist/ui-library/p-25a3bf57.js.map +0 -1
  1081. package/dist/ui-library/p-2e48c8d2.entry.js +0 -2
  1082. package/dist/ui-library/p-2e48c8d2.entry.js.map +0 -1
  1083. package/dist/ui-library/p-308261c4.entry.js +0 -2
  1084. package/dist/ui-library/p-308261c4.entry.js.map +0 -1
  1085. package/dist/ui-library/p-33f7e22b.entry.js +0 -2
  1086. package/dist/ui-library/p-33f7e22b.entry.js.map +0 -1
  1087. package/dist/ui-library/p-4ae91795.entry.js +0 -2
  1088. package/dist/ui-library/p-4ae91795.entry.js.map +0 -1
  1089. package/dist/ui-library/p-4f8394d7.js.map +0 -1
  1090. package/dist/ui-library/p-53a13db5.entry.js +0 -2
  1091. package/dist/ui-library/p-53a13db5.entry.js.map +0 -1
  1092. package/dist/ui-library/p-559c87f0.entry.js +0 -2
  1093. package/dist/ui-library/p-559c87f0.entry.js.map +0 -1
  1094. package/dist/ui-library/p-611e1978.entry.js +0 -2
  1095. package/dist/ui-library/p-611e1978.entry.js.map +0 -1
  1096. package/dist/ui-library/p-63703ba3.entry.js +0 -2
  1097. package/dist/ui-library/p-63703ba3.entry.js.map +0 -1
  1098. package/dist/ui-library/p-6403fd87.entry.js +0 -2
  1099. package/dist/ui-library/p-6403fd87.entry.js.map +0 -1
  1100. package/dist/ui-library/p-6433c0da.entry.js +0 -2
  1101. package/dist/ui-library/p-6433c0da.entry.js.map +0 -1
  1102. package/dist/ui-library/p-6d75f216.entry.js +0 -2
  1103. package/dist/ui-library/p-6d75f216.entry.js.map +0 -1
  1104. package/dist/ui-library/p-73597d13.entry.js.map +0 -1
  1105. package/dist/ui-library/p-79eee01b.js +0 -2
  1106. package/dist/ui-library/p-79eee01b.js.map +0 -1
  1107. package/dist/ui-library/p-7e0cc4ae.entry.js +0 -2
  1108. package/dist/ui-library/p-7e0cc4ae.entry.js.map +0 -1
  1109. package/dist/ui-library/p-820c23f0.entry.js.map +0 -1
  1110. package/dist/ui-library/p-835c3ff7.entry.js +0 -2
  1111. package/dist/ui-library/p-835c3ff7.entry.js.map +0 -1
  1112. package/dist/ui-library/p-8a970a40.entry.js +0 -2
  1113. package/dist/ui-library/p-8a970a40.entry.js.map +0 -1
  1114. package/dist/ui-library/p-90824648.entry.js +0 -2
  1115. package/dist/ui-library/p-90824648.entry.js.map +0 -1
  1116. package/dist/ui-library/p-90dc6af4.entry.js +0 -2
  1117. package/dist/ui-library/p-90dc6af4.entry.js.map +0 -1
  1118. package/dist/ui-library/p-9328e5bc.entry.js +0 -2
  1119. package/dist/ui-library/p-9328e5bc.entry.js.map +0 -1
  1120. package/dist/ui-library/p-97323ad7.entry.js +0 -2
  1121. package/dist/ui-library/p-97323ad7.entry.js.map +0 -1
  1122. package/dist/ui-library/p-9a860acc.js +0 -2
  1123. package/dist/ui-library/p-9a860acc.js.map +0 -1
  1124. package/dist/ui-library/p-9d1d222f.entry.js +0 -2
  1125. package/dist/ui-library/p-9d1d222f.entry.js.map +0 -1
  1126. package/dist/ui-library/p-a1d4f6cf.entry.js +0 -2
  1127. package/dist/ui-library/p-a1d4f6cf.entry.js.map +0 -1
  1128. package/dist/ui-library/p-ac4f4d45.js +0 -3
  1129. package/dist/ui-library/p-ac4f4d45.js.map +0 -1
  1130. package/dist/ui-library/p-af793d04.entry.js +0 -2
  1131. package/dist/ui-library/p-af793d04.entry.js.map +0 -1
  1132. package/dist/ui-library/p-b0e5658f.entry.js +0 -2
  1133. package/dist/ui-library/p-b0e5658f.entry.js.map +0 -1
  1134. package/dist/ui-library/p-b1e66136.js +0 -2
  1135. package/dist/ui-library/p-b1e66136.js.map +0 -1
  1136. package/dist/ui-library/p-b4dfb7cf.js +0 -2
  1137. package/dist/ui-library/p-b4dfb7cf.js.map +0 -1
  1138. package/dist/ui-library/p-b997e43c.entry.js +0 -2
  1139. package/dist/ui-library/p-b997e43c.entry.js.map +0 -1
  1140. package/dist/ui-library/p-baa03951.entry.js +0 -2
  1141. package/dist/ui-library/p-baa03951.entry.js.map +0 -1
  1142. package/dist/ui-library/p-c0cb6436.entry.js +0 -2
  1143. package/dist/ui-library/p-c0cb6436.entry.js.map +0 -1
  1144. package/dist/ui-library/p-c30f9e0b.entry.js +0 -2
  1145. package/dist/ui-library/p-c30f9e0b.entry.js.map +0 -1
  1146. package/dist/ui-library/p-c349d1d4.entry.js +0 -2
  1147. package/dist/ui-library/p-c349d1d4.entry.js.map +0 -1
  1148. package/dist/ui-library/p-c53a63f9.entry.js +0 -2
  1149. package/dist/ui-library/p-c53a63f9.entry.js.map +0 -1
  1150. package/dist/ui-library/p-c640c2d8.entry.js +0 -2
  1151. package/dist/ui-library/p-c640c2d8.entry.js.map +0 -1
  1152. package/dist/ui-library/p-c94d0b07.entry.js +0 -2
  1153. package/dist/ui-library/p-c94d0b07.entry.js.map +0 -1
  1154. package/dist/ui-library/p-d12c6092.js +0 -2
  1155. package/dist/ui-library/p-d12c6092.js.map +0 -1
  1156. package/dist/ui-library/p-d5633a29.entry.js.map +0 -1
  1157. package/dist/ui-library/p-dd3c76f1.entry.js +0 -2
  1158. package/dist/ui-library/p-dd3c76f1.entry.js.map +0 -1
  1159. package/dist/ui-library/p-df655bc9.entry.js +0 -2
  1160. package/dist/ui-library/p-df655bc9.entry.js.map +0 -1
  1161. package/dist/ui-library/p-e19a6c95.entry.js +0 -2
  1162. package/dist/ui-library/p-e19a6c95.entry.js.map +0 -1
  1163. package/dist/ui-library/p-e9e930d2.entry.js +0 -2
  1164. package/dist/ui-library/p-e9e930d2.entry.js.map +0 -1
  1165. package/dist/ui-library/p-eb8f05a9.js.map +0 -1
  1166. package/dist/ui-library/p-edc96efc.entry.js +0 -2
  1167. package/dist/ui-library/p-edc96efc.entry.js.map +0 -1
  1168. package/dist/ui-library/p-f18ba86f.entry.js +0 -2
  1169. package/dist/ui-library/p-f18ba86f.entry.js.map +0 -1
  1170. package/dist/ui-library/p-f4938771.entry.js +0 -2
  1171. package/dist/ui-library/p-f4938771.entry.js.map +0 -1
  1172. package/dist/ui-library/p-f70e2403.entry.js +0 -2
  1173. package/dist/ui-library/p-f70e2403.entry.js.map +0 -1
  1174. package/dist/ui-library/p-f9d345e0.entry.js +0 -2
  1175. package/dist/ui-library/p-f9d345e0.entry.js.map +0 -1
  1176. package/dist/ui-library/p-fed07a1f.entry.js +0 -2
  1177. package/dist/ui-library/p-fed07a1f.entry.js.map +0 -1
  1178. package/dist/ui-library/p-ff0257bf.entry.js +0 -2
  1179. package/dist/ui-library/p-ff0257bf.entry.js.map +0 -1
  1180. package/readme.md +0 -156
@@ -2,113 +2,143 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const index = require('./index-2f6daa5b.js');
6
- const sixTimepicker_types = require('./six-timepicker.types-c19ebff3.js');
7
- const eventListeners = require('./event-listeners-74715e62.js');
8
- const executionControl = require('./execution-control-46f388e0.js');
9
- const slot = require('./slot-ad537f24.js');
5
+ const index = require('./index-d7748d51.js');
6
+ const eventListeners = require('./event-listeners-9fb878f1.js');
7
+ const executionControl = require('./execution-control-d728da70.js');
8
+ const slot = require('./slot-1b1232a1.js');
9
+ const popup = require('./popup-e854acda.js');
10
10
 
11
+ const isString = (value) => typeof value === 'string';
12
+ // only use '==' instead of '===' to also catch undefined and void
13
+ const isNil = (value) => value == null;
14
+
15
+ /* eslint-disable */
11
16
  const i18nDate = {
12
- en: {
13
- months: [
14
- 'January',
15
- 'February',
16
- 'March',
17
- 'April',
18
- 'May',
19
- 'June',
20
- 'July',
21
- 'August',
22
- 'September',
23
- 'October',
24
- 'November',
25
- 'December',
26
- ],
27
- monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
28
- monthsShortGrouped: [
29
- ['Jan', 'Feb', 'Mar', 'Apr'],
30
- ['May', 'Jun', 'Jul', 'Aug'],
31
- ['Sep', 'Oct', 'Nov', 'Dec'],
32
- ],
33
- weekdays: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'],
34
- weekdaysShort: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
35
- weekdaysMin: ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'],
36
- },
37
- de: {
38
- months: [
39
- 'Januar',
40
- 'Februar',
41
- 'März',
42
- 'April',
43
- 'Mai',
44
- 'Juni',
45
- 'Juli',
46
- 'August',
47
- 'September',
48
- 'Oktober',
49
- 'November',
50
- 'Dezember',
51
- ],
52
- monthsShort: ['Jan.', 'Feb.', 'März', 'Apr.', 'Mai', 'Juni', 'Juli', 'Aug.', 'Sep.', 'Okt.', 'Nov.', 'Dez.'],
53
- monthsShortGrouped: [
54
- ['Jan.', 'Feb.', 'März', 'Apr.'],
55
- ['Mai', 'Juni', 'Juli', 'Aug.'],
56
- ['Sep.', 'Okt.', 'Nov.', 'Dez.'],
57
- ],
58
- weekdays: ['Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag'],
59
- weekdaysShort: ['Mo.', 'Di.', 'Mi.', 'Do.', 'Fr.', 'Sa.', 'So.'],
60
- weekdaysMin: ['Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa', 'So'],
61
- },
62
- fr: {
63
- months: [
64
- 'janvier',
65
- 'février',
66
- 'mars',
67
- 'avril',
68
- 'mai',
69
- 'juin',
70
- 'juillet',
71
- 'août',
72
- 'septembre',
73
- 'octobre',
74
- 'novembre',
75
- 'décembre',
76
- ],
77
- monthsShort: ['janv.', 'févr.', 'mars', 'avr.', 'mai', 'juin', 'juil.', 'août', 'sept.', 'oct.', 'nov.', 'déc.'],
78
- monthsShortGrouped: [
79
- ['janv.', 'févr.', 'mars', 'avr.'],
80
- ['mai', 'juin', 'juil.', 'août'],
81
- ['sept.', 'oct.', 'nov.', 'déc.'],
82
- ],
83
- weekdays: ['lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi', 'dimanche'],
84
- weekdaysShort: ['lun.', 'mar.', 'mer.', 'jeu.', 'ven.', 'sam.', 'dim.'],
85
- weekdaysMin: ['lu', 'ma', 'me', 'je', 've', 'sa', 'di'],
86
- },
87
- it: {
88
- months: [
89
- 'gennaio',
90
- 'febbraio',
91
- 'marzo',
92
- 'aprile',
93
- 'maggio',
94
- 'giugno',
95
- 'luglio',
96
- 'agosto',
97
- 'settembre',
98
- 'ottobre',
99
- 'novembre',
100
- 'dicembre',
101
- ],
102
- monthsShort: ['gen', 'feb', 'mar', 'apr', 'mag', 'giu', 'lug', 'ago', 'set', 'ott', 'nov', 'dic'],
103
- monthsShortGrouped: [
104
- ['gen', 'feb', 'mar', 'apr'],
105
- ['mag', 'giu', 'lug', 'ago'],
106
- ['set', 'ott', 'nov', 'dic'],
107
- ],
108
- weekdays: ['lunedì', 'martedì', 'mercoledì', 'giovedì', 'venerdì', 'sabato', 'domenica'],
109
- weekdaysShort: ['lun', 'mar', 'mer', 'gio', 'ven', 'sab', 'dom'],
110
- weekdaysMin: ['lu', 'ma', 'me', 'gi', 've', 'sa', 'do'],
111
- },
17
+ en: {
18
+ months: [
19
+ 'January',
20
+ 'February',
21
+ 'March',
22
+ 'April',
23
+ 'May',
24
+ 'June',
25
+ 'July',
26
+ 'August',
27
+ 'September',
28
+ 'October',
29
+ 'November',
30
+ 'December',
31
+ ],
32
+ monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
33
+ monthsShortGrouped: [
34
+ ['Jan', 'Feb', 'Mar', 'Apr'],
35
+ ['May', 'Jun', 'Jul', 'Aug'],
36
+ ['Sep', 'Oct', 'Nov', 'Dec'],
37
+ ],
38
+ weekdays: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'],
39
+ weekdaysShort: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
40
+ weekdaysMin: ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'],
41
+ },
42
+ de: {
43
+ months: [
44
+ 'Januar',
45
+ 'Februar',
46
+ 'März',
47
+ 'April',
48
+ 'Mai',
49
+ 'Juni',
50
+ 'Juli',
51
+ 'August',
52
+ 'September',
53
+ 'Oktober',
54
+ 'November',
55
+ 'Dezember',
56
+ ],
57
+ monthsShort: ['Jan.', 'Feb.', 'März', 'Apr.', 'Mai', 'Juni', 'Juli', 'Aug.', 'Sep.', 'Okt.', 'Nov.', 'Dez.'],
58
+ monthsShortGrouped: [
59
+ ['Jan.', 'Feb.', 'März', 'Apr.'],
60
+ ['Mai', 'Juni', 'Juli', 'Aug.'],
61
+ ['Sep.', 'Okt.', 'Nov.', 'Dez.'],
62
+ ],
63
+ weekdays: ['Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag', 'Sonntag'],
64
+ weekdaysShort: ['Mo.', 'Di.', 'Mi.', 'Do.', 'Fr.', 'Sa.', 'So.'],
65
+ weekdaysMin: ['Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa', 'So'],
66
+ },
67
+ fr: {
68
+ months: [
69
+ 'janvier',
70
+ 'février',
71
+ 'mars',
72
+ 'avril',
73
+ 'mai',
74
+ 'juin',
75
+ 'juillet',
76
+ 'août',
77
+ 'septembre',
78
+ 'octobre',
79
+ 'novembre',
80
+ 'décembre',
81
+ ],
82
+ monthsShort: ['janv.', 'févr.', 'mars', 'avr.', 'mai', 'juin', 'juil.', 'août', 'sept.', 'oct.', 'nov.', 'déc.'],
83
+ monthsShortGrouped: [
84
+ ['janv.', 'févr.', 'mars', 'avr.'],
85
+ ['mai', 'juin', 'juil.', 'août'],
86
+ ['sept.', 'oct.', 'nov.', 'déc.'],
87
+ ],
88
+ weekdays: ['lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi', 'dimanche'],
89
+ weekdaysShort: ['lun.', 'mar.', 'mer.', 'jeu.', 'ven.', 'sam.', 'dim.'],
90
+ weekdaysMin: ['lu', 'ma', 'me', 'je', 've', 'sa', 'di'],
91
+ },
92
+ it: {
93
+ months: [
94
+ 'gennaio',
95
+ 'febbraio',
96
+ 'marzo',
97
+ 'aprile',
98
+ 'maggio',
99
+ 'giugno',
100
+ 'luglio',
101
+ 'agosto',
102
+ 'settembre',
103
+ 'ottobre',
104
+ 'novembre',
105
+ 'dicembre',
106
+ ],
107
+ monthsShort: ['gen', 'feb', 'mar', 'apr', 'mag', 'giu', 'lug', 'ago', 'set', 'ott', 'nov', 'dic'],
108
+ monthsShortGrouped: [
109
+ ['gen', 'feb', 'mar', 'apr'],
110
+ ['mag', 'giu', 'lug', 'ago'],
111
+ ['set', 'ott', 'nov', 'dic'],
112
+ ],
113
+ weekdays: ['lunedì', 'martedì', 'mercoledì', 'giovedì', 'venerdì', 'sabato', 'domenica'],
114
+ weekdaysShort: ['lun', 'mar', 'mer', 'gio', 'ven', 'sab', 'dom'],
115
+ weekdaysMin: ['lu', 'ma', 'me', 'gi', 've', 'sa', 'do'],
116
+ },
117
+ es: {
118
+ months: [
119
+ 'enero',
120
+ 'febrero',
121
+ 'marzo',
122
+ 'abril',
123
+ 'mayo',
124
+ 'junio',
125
+ 'julio',
126
+ 'agosto',
127
+ 'septiembre',
128
+ 'octubre',
129
+ 'noviembre',
130
+ 'diciembre',
131
+ ],
132
+ monthsShort: ['ene', 'feb', 'mar', 'abr', 'may', 'jun', 'jul', 'ago', 'sep', 'oct', 'nov', 'dic'],
133
+ monthsShortGrouped: [
134
+ ['ene', 'feb', 'mar', 'abr'],
135
+ ['may', 'jun', 'jul', 'ago'],
136
+ ['sep', 'oct', 'nov', 'dic'],
137
+ ],
138
+ weekdays: ['lunes', 'martes', 'miércoles', 'jueves', 'viernes', 'sábado', 'domingo'],
139
+ weekdaysShort: ['lun', 'mar', 'mié', 'jue', 'vie', 'sáb', 'dom'],
140
+ weekdaysMin: ['lu', 'ma', 'mi', 'ju', 'vi', 'sa', 'do'],
141
+ },
112
142
  };
113
143
  /**
114
144
  * Returns a JS Date instance of the exact moment
@@ -119,20 +149,12 @@ const i18nDate = {
119
149
  * ```
120
150
  */
121
151
  const now = () => new Date();
152
+ const removeTime = (date) => new Date(date.getFullYear(), date.getMonth(), date.getDate());
122
153
  /**
123
154
  * Returns `true` if the given date is valid
124
155
  */
125
156
  const isValidDate = (value) => {
126
- if (sixTimepicker_types.isNil(value)) {
127
- return false;
128
- }
129
- if (sixTimepicker_types.isNumber(value)) {
130
- return false;
131
- }
132
- if (sixTimepicker_types.isDate(value)) {
133
- return !isNaN(value.getTime());
134
- }
135
- return new Date(value).toString() !== 'Invalid Date';
157
+ return value instanceof Date && !isNaN(value.getTime()) && new Date(value).toString() !== 'Invalid Date';
136
158
  };
137
159
  /**
138
160
  * Returns the year number of the given date
@@ -142,10 +164,10 @@ const isValidDate = (value) => {
142
164
  * ```
143
165
  */
144
166
  const year = (date) => {
145
- if (date && isValidDate(date)) {
146
- return date.getFullYear();
147
- }
148
- throw new Error('Not a valid date');
167
+ if (date && isValidDate(date)) {
168
+ return date.getFullYear();
169
+ }
170
+ throw new Error('Not a valid date');
149
171
  };
150
172
  /**
151
173
  * Returns the month number of the given date
@@ -155,10 +177,10 @@ const year = (date) => {
155
177
  * ```
156
178
  */
157
179
  const month = (date) => {
158
- if (date && isValidDate(date)) {
159
- return date.getMonth();
160
- }
161
- throw new Error('Not a valid date');
180
+ if (date && isValidDate(date)) {
181
+ return date.getMonth();
182
+ }
183
+ throw new Error('Not a valid date');
162
184
  };
163
185
  /**
164
186
  * Returns the day number of the given date
@@ -168,46 +190,46 @@ const month = (date) => {
168
190
  * ```
169
191
  */
170
192
  const day = (date) => {
171
- if (date && isValidDate(date)) {
172
- return date.getDate();
173
- }
174
- throw new Error('Not a valid date');
193
+ if (date && isValidDate(date)) {
194
+ return date.getDate();
195
+ }
196
+ throw new Error('Not a valid date');
175
197
  };
176
198
  /**
177
199
  * Returns the hours of the given date
178
200
  */
179
201
  const hours = (date) => {
180
- if (date && isValidDate(date)) {
181
- return date.getHours();
182
- }
183
- throw new Error('Not a valid date');
202
+ if (date && isValidDate(date)) {
203
+ return date.getHours();
204
+ }
205
+ throw new Error('Not a valid date');
184
206
  };
185
207
  /**
186
208
  * Returns the minutes of the given date
187
209
  */
188
210
  const minutes = (date) => {
189
- if (date && isValidDate(date)) {
190
- return date.getMinutes();
191
- }
192
- throw new Error('Not a valid date');
211
+ if (date && isValidDate(date)) {
212
+ return date.getMinutes();
213
+ }
214
+ throw new Error('Not a valid date');
193
215
  };
194
216
  /**
195
217
  * Returns the seconds of the given date
196
218
  */
197
219
  const seconds = (date) => {
198
- if (date && isValidDate(date)) {
199
- return date.getSeconds();
200
- }
201
- throw new Error('Not a valid date');
220
+ if (date && isValidDate(date)) {
221
+ return date.getSeconds();
222
+ }
223
+ throw new Error('Not a valid date');
202
224
  };
203
225
  /**
204
226
  * Returns the first day of the week of the given date.
205
227
  */
206
228
  const getFirstDayOfTheWeek = (date) => {
207
- const weekdayDiff = [6, 0, 1, 2, 3, 4, 5];
208
- const day = new Date(date);
209
- day.setDate(day.getDate() - weekdayDiff[day.getDay()]);
210
- return day;
229
+ const weekdayDiff = [6, 0, 1, 2, 3, 4, 5];
230
+ const day = new Date(date);
231
+ day.setDate(day.getDate() - weekdayDiff[day.getDay()]);
232
+ return day;
211
233
  };
212
234
  /**
213
235
  * Returns `true` when the year of the dates are the same
@@ -229,21 +251,21 @@ const isSameWeek = (a, b) => isSameDay(getFirstDayOfTheWeek(a), getFirstDayOfThe
229
251
  * Returns `true` if the given datestring is valid
230
252
  */
231
253
  const isValidDateString = (datestring, format) => {
232
- if (!sixTimepicker_types.isString(datestring) || !sixTimepicker_types.isString(format)) {
233
- return false;
234
- }
235
- if (datestring.length < 6 || format.length < 6) {
236
- return false;
237
- }
238
- const { day, month } = getDateParts(datestring, format);
239
- if (day > 31 || month > 11 || day <= 0 || month < 0) {
240
- return false;
241
- }
242
- const date = toDate(datestring, format);
243
- if (sixTimepicker_types.isNil(date)) {
244
- return false;
245
- }
246
- return date.toString() !== 'Invalid Date';
254
+ if (!isString(datestring) || !isString(format)) {
255
+ return false;
256
+ }
257
+ if (datestring.length < 6 || format.length < 6) {
258
+ return false;
259
+ }
260
+ const { day, month } = getDateParts(datestring, format);
261
+ if (day > 31 || month > 11 || day <= 0 || month < 0) {
262
+ return false;
263
+ }
264
+ const date = toDate(datestring, format);
265
+ if (isNil(date)) {
266
+ return false;
267
+ }
268
+ return date.toString() !== 'Invalid Date';
247
269
  };
248
270
  /**
249
271
  * Returns `true` when the given date is not smaller than the minDate and not bigger than the maxDate.
@@ -253,97 +275,97 @@ const isValidDateString = (datestring, format) => {
253
275
  * ```
254
276
  */
255
277
  const isInRange = (date, minDate, maxDate) => {
256
- if (!date) {
278
+ if (!date) {
279
+ return true;
280
+ }
281
+ if (minDate && date < minDate) {
282
+ return false;
283
+ }
284
+ if (maxDate && maxDate < date) {
285
+ return false;
286
+ }
257
287
  return true;
258
- }
259
- if (minDate && date < minDate) {
260
- return false;
261
- }
262
- if (maxDate && maxDate < date) {
263
- return false;
264
- }
265
- return true;
266
288
  };
267
289
  const lookAhead = (iFormat, format, match, length = 2) => {
268
- const increment = length - 1;
269
- const followingCharacterMatches = format.charAt(iFormat + increment) === match;
270
- const hasProperLength = iFormat + increment < format.length;
271
- return hasProperLength && followingCharacterMatches;
290
+ const increment = length - 1;
291
+ const followingCharacterMatches = format.charAt(iFormat + increment) === match;
292
+ const hasProperLength = iFormat + increment < format.length;
293
+ return hasProperLength && followingCharacterMatches;
272
294
  };
273
295
  const formatNumber = (value, len) => {
274
- let num = String(value);
275
- while (num.length < len) {
276
- num = '0' + num;
277
- }
278
- return num;
296
+ let num = String(value);
297
+ while (num.length < len) {
298
+ num = '0' + num;
299
+ }
300
+ return num;
279
301
  };
280
302
  const formatDate = (date, format) => {
281
- if (!date) {
282
- return '';
283
- }
284
- let output = '';
285
- for (let iFormat = 0; iFormat < format.length; iFormat++) {
286
- switch (format.charAt(iFormat)) {
287
- case 'd':
288
- if (lookAhead(iFormat, format, 'd')) {
289
- output += formatNumber(date.getDate(), 2);
290
- iFormat++;
291
- }
292
- else {
293
- output += String(date.getDate());
294
- }
295
- break;
296
- case 'm':
297
- if (lookAhead(iFormat, format, 'm')) {
298
- output += formatNumber(date.getMonth() + 1, 2);
299
- iFormat++;
300
- }
301
- else {
302
- output += String(date.getMonth() + 1);
303
- }
304
- break;
305
- case 'y':
306
- if (lookAhead(iFormat, format, 'y', 4)) {
307
- iFormat += 3;
308
- output += date.getFullYear();
309
- }
310
- else {
311
- output += (date.getFullYear() % 100 < 10 ? '0' : '') + (date.getFullYear() % 100);
312
- iFormat++;
313
- }
314
- break;
315
- case 'h':
316
- if (lookAhead(iFormat, format, 'h')) {
317
- output += formatNumber(date.getHours(), 2);
318
- iFormat++;
319
- }
320
- else {
321
- output += String(date.getHours());
322
- }
323
- break;
324
- case 'M':
325
- if (lookAhead(iFormat, format, 'M')) {
326
- output += formatNumber(date.getMinutes(), 2);
327
- iFormat++;
328
- }
329
- else {
330
- output += String(date.getMinutes());
331
- }
332
- break;
333
- case 's':
334
- if (lookAhead(iFormat, format, 's')) {
335
- output += formatNumber(date.getSeconds(), 2);
336
- iFormat++;
337
- }
338
- else {
339
- output += String(date.getSeconds());
303
+ if (date == null) {
304
+ return '';
305
+ }
306
+ let output = '';
307
+ for (let iFormat = 0; iFormat < format.length; iFormat++) {
308
+ switch (format.charAt(iFormat)) {
309
+ case 'd':
310
+ if (lookAhead(iFormat, format, 'd')) {
311
+ output += formatNumber(date.getDate(), 2);
312
+ iFormat++;
313
+ }
314
+ else {
315
+ output += String(date.getDate());
316
+ }
317
+ break;
318
+ case 'm':
319
+ if (lookAhead(iFormat, format, 'm')) {
320
+ output += formatNumber(date.getMonth() + 1, 2);
321
+ iFormat++;
322
+ }
323
+ else {
324
+ output += String(date.getMonth() + 1);
325
+ }
326
+ break;
327
+ case 'y':
328
+ if (lookAhead(iFormat, format, 'y', 4)) {
329
+ iFormat += 3;
330
+ output += date.getFullYear();
331
+ }
332
+ else {
333
+ output += (date.getFullYear() % 100 < 10 ? '0' : '') + (date.getFullYear() % 100);
334
+ iFormat++;
335
+ }
336
+ break;
337
+ case 'h':
338
+ if (lookAhead(iFormat, format, 'h')) {
339
+ output += formatNumber(date.getHours(), 2);
340
+ iFormat++;
341
+ }
342
+ else {
343
+ output += String(date.getHours());
344
+ }
345
+ break;
346
+ case 'M':
347
+ if (lookAhead(iFormat, format, 'M')) {
348
+ output += formatNumber(date.getMinutes(), 2);
349
+ iFormat++;
350
+ }
351
+ else {
352
+ output += String(date.getMinutes());
353
+ }
354
+ break;
355
+ case 's':
356
+ if (lookAhead(iFormat, format, 's')) {
357
+ output += formatNumber(date.getSeconds(), 2);
358
+ iFormat++;
359
+ }
360
+ else {
361
+ output += String(date.getSeconds());
362
+ }
363
+ break;
364
+ default:
365
+ output += format.charAt(iFormat);
340
366
  }
341
- break;
342
- default:
343
- output += format.charAt(iFormat);
344
367
  }
345
- }
346
- return output;
368
+ return output;
347
369
  };
348
370
  const FORMATTING_TOKENS = /(\[[^\[]*\])|(mm|dd|yyyy|yy|hh|MM|ss|.)/g;
349
371
  const TWO_NUMERICS_REGEX = /\d\d/; // 00 - 99
@@ -357,27 +379,27 @@ const MINUTE = 'minute';
357
379
  const SECOND = 'second';
358
380
  const parseFlags = {};
359
381
  const addParseFlag = (token, regex, callback) => {
360
- const tokens = Array.isArray(token) ? token : [token];
361
- let func;
362
- if (typeof callback === 'string') {
363
- func = (input) => {
364
- const value = parseInt(input, 10);
365
- return { [callback]: value };
366
- };
367
- }
368
- else {
369
- func = callback;
370
- }
371
- tokens.forEach((key) => {
372
- parseFlags[key] = [regex, func];
373
- });
382
+ const tokens = Array.isArray(token) ? token : [token];
383
+ let func;
384
+ if (typeof callback === 'string') {
385
+ func = (input) => {
386
+ const value = parseInt(input, 10);
387
+ return { [callback]: value };
388
+ };
389
+ }
390
+ else {
391
+ func = callback;
392
+ }
393
+ tokens.forEach((key) => {
394
+ parseFlags[key] = [regex, func];
395
+ });
374
396
  };
375
397
  addParseFlag('yy', TWO_NUMERICS_REGEX, (input) => {
376
- const year = new Date().getFullYear();
377
- const cent = Math.floor(year / 100);
378
- let value = parseInt(input, 10);
379
- value = (value > 68 ? cent - 1 : cent) * 100 + value;
380
- return { [YEAR]: value };
398
+ const year = new Date().getFullYear();
399
+ const cent = Math.floor(year / 100);
400
+ let value = parseInt(input, 10);
401
+ value = (value > 68 ? cent - 1 : cent) * 100 + value;
402
+ return { [YEAR]: value };
381
403
  });
382
404
  addParseFlag('yyyy', FOUR_NUMERICS_REGEX, YEAR);
383
405
  addParseFlag('mm', TWO_NUMERICS_REGEX, (input) => ({ [MONTH]: parseInt(input, 10) - 1 }));
@@ -386,769 +408,642 @@ addParseFlag('hh', TWO_NUMERICS_REGEX, HOUR);
386
408
  addParseFlag('MM', TWO_NUMERICS_REGEX, MINUTE);
387
409
  addParseFlag('ss', TWO_NUMERICS_REGEX, SECOND);
388
410
  const getFullInputArray = (input, backupDate = new Date()) => {
389
- const result = [0, 0, 1, 0, 0, 0];
390
- const backupArr = [
391
- backupDate.getFullYear(),
392
- backupDate.getMonth(),
393
- backupDate.getDate(),
394
- backupDate.getHours(),
395
- backupDate.getMinutes(),
396
- backupDate.getSeconds(),
397
- ];
398
- let useBackup = true;
399
- for (let i = 0; i < 7; i++) {
400
- if (input[i] === undefined) {
401
- result[i] = useBackup ? backupArr[i] : result[i];
402
- }
403
- else {
404
- result[i] = input[i];
405
- useBackup = false;
411
+ const result = [0, 0, 1, 0, 0, 0];
412
+ const backupArr = [
413
+ backupDate.getFullYear(),
414
+ backupDate.getMonth(),
415
+ backupDate.getDate(),
416
+ backupDate.getHours(),
417
+ backupDate.getMinutes(),
418
+ backupDate.getSeconds(),
419
+ ];
420
+ let useBackup = true;
421
+ for (let i = 0; i < 7; i++) {
422
+ if (input[i] === undefined) {
423
+ result[i] = useBackup ? backupArr[i] : result[i];
424
+ }
425
+ else {
426
+ result[i] = input[i];
427
+ useBackup = false;
428
+ }
406
429
  }
407
- }
408
- return result;
430
+ return result;
409
431
  };
410
432
  const createDate = (year, month, day, hour, minute, second) => {
411
- if (!(year < 100 && year >= 0)) {
412
- return new Date(year, month, day, hour, minute, second);
413
- }
414
- const date = new Date(year + 400, month, day, hour, minute, second);
415
- if (isFinite(date.getFullYear())) {
416
- date.setFullYear(year);
417
- }
418
- return date;
433
+ if (!(year < 100 && year >= 0)) {
434
+ return new Date(year, month, day, hour, minute, second);
435
+ }
436
+ const date = new Date(year + 400, month, day, hour, minute, second);
437
+ if (isFinite(date.getFullYear())) {
438
+ date.setFullYear(year);
439
+ }
440
+ return date;
419
441
  };
420
442
  const makeParser = (dateString, format) => {
421
- const tokens = format.match(FORMATTING_TOKENS);
422
- if (!tokens) {
423
- throw new Error();
424
- }
425
- const { length } = tokens;
426
- let mark = {};
427
- for (let i = 0; i < length; i += 1) {
428
- const token = tokens[i];
429
- const parseTo = parseFlags[token];
430
- if (!parseTo) {
431
- const word = token.replace(/^\[|\]$/g, '');
432
- if (dateString.indexOf(word) === 0) {
433
- dateString = dateString.substr(word.length);
434
- }
435
- else {
436
- throw new Error('not match');
437
- }
443
+ const tokens = format.match(FORMATTING_TOKENS);
444
+ if (!tokens) {
445
+ throw new Error();
438
446
  }
439
- else {
440
- const regex = parseTo[0];
441
- const parser = parseTo[1];
442
- const value = (regex.exec(dateString) || [])[0];
443
- const obj = parser(value);
444
- mark = Object.assign(Object.assign({}, mark), obj);
445
- dateString = dateString.replace(value, '');
446
- }
447
- }
448
- return mark;
447
+ const { length } = tokens;
448
+ let mark = {};
449
+ for (let i = 0; i < length; i += 1) {
450
+ const token = tokens[i];
451
+ const parseTo = parseFlags[token];
452
+ if (!parseTo) {
453
+ const word = token.replace(/^\[|\]$/g, '');
454
+ if (dateString.indexOf(word) === 0) {
455
+ dateString = dateString.substr(word.length);
456
+ }
457
+ else {
458
+ throw new Error('not match');
459
+ }
460
+ }
461
+ else {
462
+ const regex = parseTo[0];
463
+ const parser = parseTo[1];
464
+ const value = (regex.exec(dateString) || [])[0];
465
+ const obj = parser(value);
466
+ mark = Object.assign(Object.assign({}, mark), obj);
467
+ dateString = dateString.replace(value, '');
468
+ }
469
+ }
470
+ return mark;
449
471
  };
450
472
  const getCleanDateString = (dirtyDateString, format) => {
451
- if (dirtyDateString.length === format.length) {
452
- return dirtyDateString;
453
- }
454
- const separator = dirtyDateString.match(NON_NUMERIC_REGEX)[0];
455
- // pad signle digits to follow supported dateformats
456
- return dirtyDateString
457
- .split(separator)
458
- .map((s) => (s.length === 1 ? '0' + s : s))
459
- .join(separator);
473
+ if (dirtyDateString.length === format.length) {
474
+ return dirtyDateString;
475
+ }
476
+ const separator = dirtyDateString.match(NON_NUMERIC_REGEX)[0];
477
+ // pad signle digits to follow supported dateformats
478
+ return dirtyDateString
479
+ .split(separator)
480
+ .map((s) => (s.length === 1 ? '0' + s : s))
481
+ .join(separator);
460
482
  };
461
483
  const getDateParts = (dirtyDateString, format) => {
462
- const dateString = getCleanDateString(dirtyDateString, format);
463
- return makeParser(dateString, format);
484
+ const dateString = getCleanDateString(dirtyDateString, format);
485
+ return makeParser(dateString, format);
464
486
  };
465
487
  const toDate = (dirtyDateString, format) => {
466
- try {
467
- const { backupDate = new Date() } = {};
468
- const { year, month, day, hour, minute, second, date } = getDateParts(dirtyDateString, format);
469
- if (date) {
470
- return date;
471
- }
472
- const inputArray = [year, month, day, hour, minute, second];
473
- let parsedDate;
474
- const result = getFullInputArray(inputArray, backupDate);
475
- parsedDate = createDate(...result);
476
- return parsedDate;
477
- }
478
- catch (e) {
479
- return new Date(NaN);
480
- }
488
+ try {
489
+ const { backupDate = new Date() } = {};
490
+ const { year, month, day, hour, minute, second, date } = getDateParts(dirtyDateString, format);
491
+ if (date != null) {
492
+ return date;
493
+ }
494
+ const inputArray = [year, month, day, hour, minute, second];
495
+ const result = getFullInputArray(inputArray, backupDate);
496
+ return createDate(...result);
497
+ }
498
+ catch (e) {
499
+ return new Date(NaN);
500
+ }
481
501
  };
482
502
  const createCalendarGrid = (calendarGridArguments) => {
483
- const { firstDateOfBox, allowedDates, dateFormat, selectedDate, minDate, maxDate, pointerDate } = calendarGridArguments;
484
- const weekDatePointer = new Date(firstDateOfBox);
485
- const dayDatePointer = new Date(firstDateOfBox);
486
- let calendar = [];
487
- do {
488
- let row = [];
503
+ const { firstDateOfBox, allowedDates, dateFormat, selectedDate, minDate, maxDate, pointerDate } = calendarGridArguments;
504
+ const weekDatePointer = new Date(firstDateOfBox);
505
+ const dayDatePointer = new Date(firstDateOfBox);
506
+ let calendar = [];
489
507
  do {
490
- row = [
491
- ...row,
492
- {
493
- date: new Date(dayDatePointer),
494
- display: formatDate(dayDatePointer, dateFormat),
495
- dateString: formatDate(dayDatePointer, dateFormat),
496
- label: day(dayDatePointer).toString(),
497
- isToday: isSameDay(dayDatePointer, now()),
498
- isSelected: selectedDate && isSameDay(dayDatePointer, selectedDate),
499
- isDisabled: !allowedDates(dayDatePointer) || !isInRange(dayDatePointer, minDate, maxDate),
500
- isOutdated: pointerDate.month !== dayDatePointer.getMonth() || !isInRange(dayDatePointer, minDate, maxDate),
501
- },
502
- ];
503
- dayDatePointer.setDate(dayDatePointer.getDate() + 1);
504
- } while (isSameWeek(dayDatePointer, weekDatePointer));
505
- calendar = [...calendar, row];
506
- weekDatePointer.setDate(weekDatePointer.getDate() + 7);
507
- } while (isSameMonth(new Date(pointerDate.year, pointerDate.month, pointerDate.day), dayDatePointer));
508
- return calendar;
508
+ let row = [];
509
+ do {
510
+ row = [
511
+ ...row,
512
+ {
513
+ date: new Date(dayDatePointer),
514
+ display: formatDate(dayDatePointer, dateFormat),
515
+ dateString: formatDate(dayDatePointer, dateFormat),
516
+ label: day(dayDatePointer).toString(),
517
+ isToday: isSameDay(dayDatePointer, now()),
518
+ isSelected: selectedDate && isSameDay(dayDatePointer, selectedDate),
519
+ isDisabled: !allowedDates(dayDatePointer) || !isInRange(dayDatePointer, minDate, maxDate),
520
+ isOutdated: pointerDate.month !== dayDatePointer.getMonth() || !isInRange(dayDatePointer, minDate, maxDate),
521
+ },
522
+ ];
523
+ dayDatePointer.setDate(dayDatePointer.getDate() + 1);
524
+ } while (isSameWeek(dayDatePointer, weekDatePointer));
525
+ calendar = [...calendar, row];
526
+ weekDatePointer.setDate(weekDatePointer.getDate() + 7);
527
+ } while (isSameMonth(new Date(pointerDate.year, pointerDate.month, pointerDate.day), dayDatePointer));
528
+ return calendar;
509
529
  };
530
+ /**
531
+ * Returns a range of numbers around the given number grouped into buckets of 5.
532
+ * @param number the given number around which you want to get the other numbers
533
+ * @param range range of numbers to include in the result
534
+ */
535
+ function rangeAround(number, range) {
536
+ const itemsPerGroup = 5;
537
+ return [...Array(range).keys()]
538
+ .map((n) => n + number - Math.floor(range / 2))
539
+ .reduce((curr, item, index) => {
540
+ if (index % itemsPerGroup === 0) {
541
+ curr.push([]);
542
+ }
543
+ curr[curr.length - 1].push(item);
544
+ return curr;
545
+ }, []);
546
+ }
510
547
 
548
+ // eslint-disable-next-line @stencil-community/ban-exported-const-enums
511
549
  var SixDateFormats;
512
550
  (function (SixDateFormats) {
513
- SixDateFormats["DDMMYYY_DOT"] = "dd.mm.yyyy";
514
- SixDateFormats["YYYYMMDD_DASH"] = "yyyy-mm-dd";
515
- SixDateFormats["DDMMYYYY_DASH"] = "dd-mm-yyyy";
516
- SixDateFormats["DDMMYYYY_SLASH"] = "dd/mm/yyyy";
517
- SixDateFormats["YYYYMMDD_SLASH"] = "yyyy/mm/dd";
518
- SixDateFormats["DDMMYY_DOT"] = "dd.mm.yy";
519
- SixDateFormats["YYMMDD_DASH"] = "yy-mm-dd";
520
- SixDateFormats["DDMMYY_DASH"] = "dd-mm-yy";
521
- SixDateFormats["DDMMYY_SLASH"] = "dd/mm/yy";
522
- SixDateFormats["YYMMDD_SLASH"] = "yy/mm/dd";
523
- SixDateFormats["DDMMYYY_DOT_TIME"] = "dd.mm.yyyy hh:MM:ss";
524
- SixDateFormats["YYYYMMDD_DASH_TIME"] = "yyyy-mm-dd hh:MM:ss";
525
- SixDateFormats["DDMMYYYY_DASH_TIME"] = "dd-mm-yyyy hh:MM:ss";
526
- SixDateFormats["DDMMYYYY_SLASH_TIME"] = "dd/mm/yyyy hh:MM:ss";
527
- SixDateFormats["YYYYMMDD_SLASH_TIME"] = "yyyy/mm/dd hh:MM:ss";
528
- SixDateFormats["DDMMYY_DOT_TIME"] = "dd.mm.yy hh:MM:ss";
529
- SixDateFormats["YYMMDD_DASH_TIME"] = "yy-mm-dd hh:MM:ss";
530
- SixDateFormats["DDMMYY_DASH_TIME"] = "dd-mm-yy hh:MM:ss";
531
- SixDateFormats["DDMMYY_SLASH_TIME"] = "dd/mm/yy hh:MM:ss";
532
- SixDateFormats["YYMMDD_SLASH_TIME"] = "yy/mm/dd hh:MM:ss";
551
+ SixDateFormats["DDMMYYY_DOT"] = "dd.mm.yyyy";
552
+ SixDateFormats["YYYYMMDD_DASH"] = "yyyy-mm-dd";
553
+ SixDateFormats["DDMMYYYY_DASH"] = "dd-mm-yyyy";
554
+ SixDateFormats["DDMMYYYY_SLASH"] = "dd/mm/yyyy";
555
+ SixDateFormats["YYYYMMDD_SLASH"] = "yyyy/mm/dd";
556
+ SixDateFormats["DDMMYY_DOT"] = "dd.mm.yy";
557
+ SixDateFormats["YYMMDD_DASH"] = "yy-mm-dd";
558
+ SixDateFormats["DDMMYY_DASH"] = "dd-mm-yy";
559
+ SixDateFormats["DDMMYY_SLASH"] = "dd/mm/yy";
560
+ SixDateFormats["YYMMDD_SLASH"] = "yy/mm/dd";
561
+ SixDateFormats["DDMMYYY_DOT_TIME"] = "dd.mm.yyyy hh:MM:ss";
562
+ SixDateFormats["YYYYMMDD_DASH_TIME"] = "yyyy-mm-dd hh:MM:ss";
563
+ SixDateFormats["DDMMYYYY_DASH_TIME"] = "dd-mm-yyyy hh:MM:ss";
564
+ SixDateFormats["DDMMYYYY_SLASH_TIME"] = "dd/mm/yyyy hh:MM:ss";
565
+ SixDateFormats["YYYYMMDD_SLASH_TIME"] = "yyyy/mm/dd hh:MM:ss";
566
+ SixDateFormats["DDMMYY_DOT_TIME"] = "dd.mm.yy hh:MM:ss";
567
+ SixDateFormats["YYMMDD_DASH_TIME"] = "yy-mm-dd hh:MM:ss";
568
+ SixDateFormats["DDMMYY_DASH_TIME"] = "dd-mm-yy hh:MM:ss";
569
+ SixDateFormats["DDMMYY_SLASH_TIME"] = "dd/mm/yy hh:MM:ss";
570
+ SixDateFormats["YYMMDD_SLASH_TIME"] = "yy/mm/dd hh:MM:ss";
533
571
  })(SixDateFormats || (SixDateFormats = {}));
534
572
 
535
- const MonthSelection = ({ locale, selectedDate, onClickMonthCell }) => {
536
- const isToday = (value) => locale.monthsShort[now().getMonth()] === value;
537
- const isSelectedMonth = (value) => (selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.getMonth()) === locale.monthsShort.findIndex((m) => m === value);
538
- return (index.h("table", { class: "datepicker-table", part: "month-selection" },
539
- index.h("tbody", null, locale.monthsShortGrouped.map((row) => (index.h("tr", { class: "datepicker-table__row" }, row.map((month) => (index.h("td", { onClick: () => onClickMonthCell(month), class: {
540
- 'datepicker-table__cell': true,
541
- 'datepicker-table__cell--is-today': isToday(month),
542
- 'datepicker-table__cell--is-selected': isSelectedMonth(month),
543
- } }, month)))))))));
573
+ const MonthSelection = (monthSelectionParams) => {
574
+ const locale = monthSelectionParams.locale;
575
+ const isToday = (value) => locale.monthsShort[now().getMonth()] === value;
576
+ const isSelectedMonth = (value) => { var _a; return ((_a = monthSelectionParams.selectedDate) === null || _a === void 0 ? void 0 : _a.getMonth()) === locale.monthsShort.findIndex((m) => m === value); };
577
+ return (index.h("table", { class: "datepicker-table", part: "month-selection" },
578
+ index.h("tbody", null, locale.monthsShortGrouped.map((row) => (index.h("tr", { class: "datepicker-table__row" }, row.map((month) => (index.h("td", { onClick: () => monthSelectionParams.onClickMonthCell(month), class: {
579
+ 'datepicker-table__cell': true,
580
+ 'datepicker-table__cell--is-today': isToday(month),
581
+ 'datepicker-table__cell--is-selected': isSelectedMonth(month),
582
+ } }, month)))))))));
544
583
  };
545
584
 
546
- const DaySelection = ({ locale, calendarGrid, onClickDateCell }) => {
547
- return (index.h("table", { class: "datepicker-table", part: "day-selection" },
548
- index.h("thead", { part: "weekday-header" }, locale.weekdaysMin.map((weekday) => (index.h("th", { class: "datepicker__cell" }, weekday)))),
549
- index.h("tbody", null, calendarGrid.map((row) => (index.h("tr", { class: "datepicker-table__row" }, row.map((cell) => (index.h("td", { "data-date": cell.dateString, onClick: () => onClickDateCell(cell), class: {
550
- 'datepicker-table__cell': true,
551
- 'datepicker-table__cell--is-today': cell.isToday,
552
- 'datepicker-table__cell--is-selected': cell.isSelected,
553
- 'datepicker-table__cell--is-outdated': cell.isOutdated,
554
- 'datepicker-table__cell--is-disabled': cell.isDisabled,
555
- 'datepicker-table__cell--is-selectable': !cell.isDisabled,
556
- } }, cell.label)))))))));
585
+ const DaySelection = (daySelectionParams) => {
586
+ return (index.h("table", { class: "datepicker-table", part: "day-selection" },
587
+ index.h("thead", { part: "weekday-header" }, daySelectionParams.locale.weekdaysMin.map((weekday) => (index.h("th", { class: "datepicker__cell" }, weekday)))),
588
+ index.h("tbody", null, daySelectionParams.calendarGrid.map((row) => (index.h("tr", { class: "datepicker-table__row" }, row.map((cell) => (index.h("td", { "data-date": cell.dateString, onClick: () => daySelectionParams.onClickDateCell(cell), class: {
589
+ 'datepicker-table__cell': true,
590
+ 'datepicker-table__cell--is-today': cell.isToday,
591
+ 'datepicker-table__cell--is-selected': cell.isSelected,
592
+ 'datepicker-table__cell--is-outdated': cell.isOutdated,
593
+ 'datepicker-table__cell--is-disabled': cell.isDisabled,
594
+ 'datepicker-table__cell--is-selectable': !cell.isDisabled,
595
+ } }, cell.label)))))))));
557
596
  };
558
597
 
559
- const YearSelection = ({ selectedDate, yearSelection, onClickYearCell }) => {
560
- return (index.h("table", { class: "datepicker-table", part: "year-selection" },
561
- index.h("tbody", null, yearSelection.map((row) => (index.h("tr", { class: "datepicker-table__row" }, row.map((year) => (index.h("td", { onClick: () => onClickYearCell(year), class: {
562
- 'datepicker-table__cell': true,
563
- 'datepicker-table__cell--is-today': now().getFullYear() === year,
564
- 'datepicker-table__cell--is-selected': (selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.getFullYear()) === year,
565
- } }, year)))))))));
598
+ const YearSelection = (yearSelectionParams) => {
599
+ return (index.h("table", { class: "datepicker-table", part: "year-selection" },
600
+ index.h("tbody", null, yearSelectionParams.yearSelection.map((row) => (index.h("tr", { class: "datepicker-table__row" }, row.map((year) => {
601
+ var _a;
602
+ return (index.h("td", { onClick: () => yearSelectionParams.onClickYearCell(year), class: {
603
+ 'datepicker-table__cell': true,
604
+ 'datepicker-table__cell--is-today': now().getFullYear() === year,
605
+ 'datepicker-table__cell--is-selected': ((_a = yearSelectionParams.selectedDate) === null || _a === void 0 ? void 0 : _a.getFullYear()) === year,
606
+ } }, year));
607
+ })))))));
566
608
  };
567
609
 
568
- const sixDatepickerCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:block;font-family:var(--six-font-family)}.datepicker__container{position:relative}.datepicker__popup{min-width:400px;background-color:white;padding:0.5em 0.5em 1.5em;box-shadow:0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);user-select:none;position:absolute;z-index:var(--six-z-index-dropdown);right:0;left:0}.datepicker__popup--is-up{bottom:100%;min-height:382px}.datepicker__popup--is-inline{position:initial;box-shadow:none;border:1px solid var(--six-color-web-rock-400)}.datepicker-header{display:flex;justify-content:space-between;border-bottom:1px solid var(--six-color-web-rock-400);padding:0.5em;margin-bottom:1em}.datepicker-header svg{fill:var(--six-color-web-rock-900);stroke:none}.datepicker-header__btn{cursor:pointer;width:2.5em;height:2.5em;display:flex;vertical-align:middle;align-items:center;justify-content:center}.datepicker-header__btn:hover{background-color:var(--six-color-web-rock-100);border-radius:100%}.datepicker-header__label{display:flex}.datepicker-header__label>div{cursor:pointer;padding:0.5em;display:flex;vertical-align:middle;align-items:center;justify-content:center}.datepicker-header__label>div:hover{background-color:var(--six-color-web-rock-100)}.datepicker-table{width:100%}.datepicker-table__cell{text-align:center;width:2.5rem;height:2.5rem;cursor:pointer}.datepicker-table__cell:hover{background-color:var(--six-color-web-rock-100)}.datepicker-table__cell--is-today{border:1px solid var(--six-color-web-rock-400)}.datepicker-table__cell--is-selected{background-color:var(--six-color-red);color:var(--six-color-white)}.datepicker-table__cell--is-disabled{background-color:var(--six-color-web-rock-200);cursor:initial}.datepicker-table__cell--is-disabled:hover{background-color:var(--six-color-web-rock-200)}.datepicker-table__cell--is-outdated{color:var(--six-color-web-rock-400)}.datepicker-clear{display:inline-flex;align-items:center;font-size:inherit;color:var(--six-input-icon-color);border:none;background:none;padding:0;transition:var(--six-transition-fast) color;cursor:pointer}.datepicker-clear:hover{color:var(--six-input-icon-color-hover)}.datepicker-clear:focus{outline:none}.datepicker-clear--right{right:0;position:absolute}.datepicker-clear--left{right:35px;position:absolute}.input--empty .datepicker-clear{visibility:hidden}.prefix{cursor:pointer}.prefix--right{right:0;display:inline-flex;position:absolute;font-size:inherit;color:var(--six-input-icon-color);border:none;background:none;margin-right:var(--six-input-spacing-medium);transition:var(--six-transition-fast) color}six-timepicker::part(popup){border:none;padding:0.5em 0.5em 0;min-height:0}";
610
+ const sixDatepickerCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:border-box}:host{display:block;font-family:var(--six-font-family)}.datepicker__container{position:relative}.datepicker__popup{min-width:400px;background-color:white;padding:0.5em 0.5em 1.5em;box-shadow:0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);user-select:none;position:absolute;z-index:var(--six-z-index-dropdown);right:0;left:0}.datepicker__popup--is-up{bottom:100%;min-height:382px}.datepicker__popup--is-inline{position:initial;box-shadow:none;border:1px solid var(--six-color-web-rock-400)}.datepicker-header{display:flex;justify-content:space-between;border-bottom:1px solid var(--six-color-web-rock-400);padding:0.5em;margin-bottom:1em}.datepicker-header svg{fill:var(--six-color-web-rock-900);stroke:none}.datepicker-header__btn{cursor:pointer;width:2.5em;height:2.5em;display:flex;vertical-align:middle;align-items:center;justify-content:center}.datepicker-header__btn:hover{background-color:var(--six-color-web-rock-100);border-radius:100%}.datepicker-header__label{display:flex}.datepicker-header__label>div{cursor:pointer;padding:0.5em;display:flex;vertical-align:middle;align-items:center;justify-content:center}.datepicker-header__label>div:hover{background-color:var(--six-color-web-rock-100)}.datepicker-table{width:100%}.datepicker-table__cell{text-align:center;width:2.5rem;height:2.5rem;cursor:pointer}.datepicker-table__cell:hover{background-color:var(--six-color-web-rock-100)}.datepicker-table__cell--is-today{border:1px solid var(--six-color-web-rock-400)}.datepicker-table__cell--is-selected{background-color:var(--six-color-red);color:var(--six-color-white)}.datepicker-table__cell--is-disabled{background-color:var(--six-color-web-rock-200);cursor:initial}.datepicker-table__cell--is-disabled:hover{background-color:var(--six-color-web-rock-200)}.datepicker-table__cell--is-outdated{color:var(--six-color-web-rock-400)}.datepicker-clear{display:inline-flex;align-items:center;font-size:inherit;color:var(--six-input-icon-color);border:none;background:none;padding:0;transition:var(--six-transition-fast) color;cursor:pointer}.datepicker-clear:hover{color:var(--six-input-icon-color-hover)}.datepicker-clear:focus{outline:none}.datepicker-clear--right{right:0;position:absolute}.datepicker-clear--left{right:35px;position:absolute}.input--empty .datepicker-clear{visibility:hidden}.prefix{cursor:pointer}.prefix--right{right:0;display:inline-flex;position:absolute;font-size:inherit;color:var(--six-input-icon-color);border:none;background:none;margin-right:var(--six-input-spacing-medium);transition:var(--six-transition-fast) color}six-timepicker::part(popup){border:none;padding:0.5em 0.5em 0;min-height:0}";
569
611
 
570
612
  const NUMBER_OF_YEARS_SHOWN = 25;
571
613
  const MIN_POPUP_HEIGHT = 400;
572
614
  var SelectionMode;
573
615
  (function (SelectionMode) {
574
- SelectionMode["DAY"] = "day";
575
- SelectionMode["MONTH"] = "month";
576
- SelectionMode["YEAR"] = "year";
616
+ SelectionMode["DAY"] = "day";
617
+ SelectionMode["MONTH"] = "month";
618
+ SelectionMode["YEAR"] = "year";
577
619
  })(SelectionMode || (SelectionMode = {}));
578
- const getYearSelectionAroundYear = (year) => {
579
- const numberOfElementsPerRow = 5;
580
- return Array.from(new Array(NUMBER_OF_YEARS_SHOWN).keys())
581
- .map((n) => n + year - Math.floor(NUMBER_OF_YEARS_SHOWN / 2))
582
- .reduce((curr, item, index) => {
583
- if (index % numberOfElementsPerRow === 0) {
584
- curr.push([]);
585
- }
586
- curr[curr.length - 1].push(item);
587
- return curr;
588
- }, []);
589
- };
590
620
  const SixDatepicker = class {
591
- constructor(hostRef) {
592
- index.registerInstance(this, hostRef);
593
- this.sixSelect = index.createEvent(this, "six-datepicker-select", 7);
594
- this.sixClear = index.createEvent(this, "six-datepicker-clear", 7);
595
- this.sixBlur = index.createEvent(this, "six-datepicker-blur", 7);
596
- this.eventListeners = new eventListeners.EventListeners();
597
- this.selectedDate = null;
598
- this.defaultValue = null;
599
- this.handleDocumentKeyDown = (event) => {
600
- // Close when escape is pressed
601
- if (this.open && event.key === 'Escape') {
602
- event.stopPropagation();
603
- this.closePopup();
604
- void this.inputElement.setFocus();
605
- }
606
- // Handle tabbing
607
- if (event.key === 'Tab') {
608
- this.closePopup();
609
- }
610
- };
611
- this.handleDocumentMouseDown = (event) => {
612
- // Close when clicking outside of the containing element
613
- const path = event.composedPath();
614
- if (!path.includes(this.container)) {
615
- this.closePopup();
616
- return;
617
- }
618
- };
619
- this.onTimepickerChange = (sixTimepickerChange) => {
620
- const time = sixTimepickerChange.detail.value;
621
- const newDate = new Date();
622
- if (this.selectedDate) {
623
- newDate.setFullYear(this.selectedDate.getFullYear(), this.selectedDate.getMonth(), this.selectedDate.getDate());
624
- }
625
- newDate.setHours(time[sixTimepicker_types.SixTimePropertyName.HOURS], time[sixTimepicker_types.SixTimePropertyName.MINUTES], time[sixTimepicker_types.SixTimePropertyName.SECONDS]);
626
- this.updateValue(newDate);
627
- this.updatePointerDates();
628
- };
629
- this.onClickDateCell = (cell) => {
630
- if (!cell.isDisabled) {
631
- void this.select(cell.dateString);
632
- }
633
- };
634
- this.onClickMonthCell = (selectedMonth) => {
635
- const month = i18nDate[this.locale].monthsShort.findIndex((monthShort) => monthShort === selectedMonth);
636
- this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { month });
637
- this.selectionMode = SelectionMode.DAY;
638
- };
639
- this.onClickYearCell = (year) => {
640
- this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { year });
641
- this.selectionMode = SelectionMode.DAY;
642
- };
643
- this.handleInputChange = (event) => {
644
- const inputValue = this.inputElement.value;
645
- if (!isValidDateString(inputValue, this.dateFormat)) {
646
- return;
647
- }
648
- const inputValueDate = toDate(inputValue, this.dateFormat);
649
- if (inputValueDate === undefined) {
650
- return;
651
- }
652
- if (this.min && this.min.getTime() > inputValueDate.getTime()) {
653
- return;
654
- }
655
- if (this.max && this.max.getTime() < inputValueDate.getTime()) {
656
- return;
657
- }
658
- this.updateIfChanged(inputValueDate);
659
- event.stopPropagation();
660
- const datesOnly = inputValue.replace(/[^\d]/g, '');
661
- let isDateValid = !inputValue;
662
- if (inputValue && datesOnly.length >= 6) {
663
- const date = toDate(inputValue, this.dateFormat);
664
- const datestring = formatDate(date, this.dateFormat);
665
- if (isValidDateString(datestring, this.dateFormat)) {
666
- this.selectedDate = toDate(datestring, this.dateFormat);
667
- this.updatePointerDates();
668
- this.updateValue(this.selectedDate);
669
- isDateValid = true;
670
- }
671
- }
672
- this.displayCustomMessage(isDateValid);
673
- };
674
- this.handleOnBlur = (event) => {
675
- // clear the value if the user deleted the date
676
- if (this.inputElement.value === '' && isValidDate(this.value)) {
621
+ constructor(hostRef) {
622
+ index.registerInstance(this, hostRef);
623
+ this.sixSelect = index.createEvent(this, "six-datepicker-select", 7);
624
+ this.sixClear = index.createEvent(this, "six-datepicker-clear", 7);
625
+ this.sixBlur = index.createEvent(this, "six-datepicker-blur", 7);
626
+ this.eventListeners = new eventListeners.EventListeners();
627
+ this.previousUnit = () => {
628
+ if (this.selectionMode === SelectionMode.DAY) {
629
+ this.previousMonth();
630
+ }
631
+ else if (this.selectionMode === SelectionMode.MONTH) {
632
+ this.previousYear();
633
+ }
634
+ else if (this.selectionMode === SelectionMode.YEAR) {
635
+ this.previousYearGroup();
636
+ }
637
+ };
638
+ this.nextUnit = () => {
639
+ if (this.selectionMode === SelectionMode.DAY) {
640
+ this.nextMonth();
641
+ }
642
+ else if (this.selectionMode === SelectionMode.MONTH) {
643
+ this.nextYear();
644
+ }
645
+ else if (this.selectionMode === SelectionMode.YEAR) {
646
+ this.nextYearGroup();
647
+ }
648
+ };
649
+ this.handleDocumentKeyDown = (event) => {
650
+ var _a;
651
+ const keyboardEvent = event;
652
+ // Close when escape is pressed
653
+ if (this.open && keyboardEvent.key === 'Escape') {
654
+ keyboardEvent.stopPropagation();
655
+ this.closePopup();
656
+ void ((_a = this.inputElement) === null || _a === void 0 ? void 0 : _a.setFocus());
657
+ }
658
+ // Handle tabbing
659
+ if (keyboardEvent.key === 'Tab') {
660
+ this.closePopup();
661
+ }
662
+ };
663
+ this.handleDocumentMouseDown = (event) => {
664
+ // Close when clicking outside the containing element
665
+ const path = event.composedPath();
666
+ if (!path.includes(this.container)) {
667
+ this.closePopup();
668
+ return;
669
+ }
670
+ };
671
+ this.handleClearClick = async (event) => {
672
+ event.stopPropagation();
673
+ await this.select(undefined);
674
+ this.sixClear.emit();
675
+ };
676
+ this.onTimepickerChange = (sixTimepickerChange) => {
677
+ const time = sixTimepickerChange.detail.value;
678
+ const newDate = new Date();
679
+ if (this.selectedDate != null) {
680
+ newDate.setFullYear(this.selectedDate.getFullYear(), this.selectedDate.getMonth(), this.selectedDate.getDate());
681
+ }
682
+ if (time != null) {
683
+ const hours = time.hours;
684
+ const minutes = time.minutes;
685
+ const seconds = time.seconds;
686
+ if (hours != null) {
687
+ newDate.setHours(hours, minutes, seconds);
688
+ }
689
+ }
690
+ this.updateValue(newDate);
691
+ this.updatePointerDates();
692
+ };
693
+ this.onClickDateCell = (cell) => {
694
+ if (!cell.isDisabled) {
695
+ void this.select(cell.dateString);
696
+ }
697
+ };
698
+ this.onClickMonthCell = (selectedMonth) => {
699
+ const month = i18nDate[this.locale].monthsShort.findIndex((monthShort) => monthShort === selectedMonth);
700
+ this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { month });
701
+ this.selectionMode = SelectionMode.DAY;
702
+ };
703
+ this.onClickYearCell = (year) => {
704
+ this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { year });
705
+ this.selectionMode = SelectionMode.DAY;
706
+ };
707
+ this.handleInputChange = (event) => {
708
+ if (this.inputElement == null) {
709
+ return;
710
+ }
711
+ event.stopPropagation();
712
+ const inputValue = this.inputElement.value;
713
+ if (!isValidDateString(inputValue, this.dateFormat)) {
714
+ return;
715
+ }
716
+ const inputValueDate = toDate(inputValue, this.dateFormat);
717
+ if (inputValueDate === undefined) {
718
+ return;
719
+ }
720
+ this.updateIfChanged(inputValueDate);
721
+ const datesOnly = inputValue.replace(/[^\d]/g, '');
722
+ if (datesOnly.length >= 6) {
723
+ const date = toDate(inputValue, this.dateFormat);
724
+ const dateAsString = formatDate(date, this.dateFormat);
725
+ if (isValidDateString(dateAsString, this.dateFormat)) {
726
+ this.selectedDate = toDate(dateAsString, this.dateFormat);
727
+ this.updatePointerDates();
728
+ this.updateValue(this.selectedDate);
729
+ }
730
+ }
731
+ };
732
+ this.handleOnBlur = (event) => {
733
+ var _a, _b;
734
+ // clear the value if the user deleted the date
735
+ if (((_a = this.inputElement) === null || _a === void 0 ? void 0 : _a.value) === '' && isValidDate(this.value)) {
736
+ this.value = undefined;
737
+ this.sixSelect.emit(this.value);
738
+ }
739
+ event.stopPropagation();
740
+ const inputValue = (_b = this.inputElement) === null || _b === void 0 ? void 0 : _b.value;
741
+ const inputValueDate = toDate(inputValue, this.dateFormat);
742
+ const formattedDate = formatDate(this.value, this.dateFormat);
743
+ if (this.inputElement != null && inputValueDate != null && inputValue !== formattedDate) {
744
+ // properly format date if necessary
745
+ this.inputElement.value = formattedDate;
746
+ }
747
+ this.sixBlur.emit(this.value);
748
+ };
749
+ this.pointerDate = SixDatepicker.getCurrentDateAsPointer();
750
+ this.selectionMode = SelectionMode.DAY;
751
+ this.isDropDownContentUp = false;
752
+ this.type = 'date';
753
+ this.locale = 'en';
754
+ this.open = false;
755
+ this.inline = false;
756
+ this.readonly = false;
757
+ this.disabled = false;
758
+ this.allowedDates = () => true;
759
+ this.min = undefined;
760
+ this.max = undefined;
761
+ this.closeOnSelect = this.type === 'date';
762
+ this.placement = undefined;
763
+ this.size = 'medium';
764
+ this.required = false;
765
+ this.defaultDate = undefined;
766
+ this.placeholder = undefined;
677
767
  this.value = undefined;
678
- }
679
- event.stopPropagation();
680
- const inputValue = this.inputElement.value;
681
- const inputValueDate = toDate(inputValue, this.dateFormat);
682
- const formattedDate = formatDate(this.value, this.dateFormat);
683
- if (inputValueDate && inputValue !== formattedDate) {
684
- // properly format date if necessary
685
- this.inputElement.value = formattedDate;
686
- }
687
- this.sixBlur.emit(this.value);
688
- };
689
- this.pointerDate = SixDatepicker.getCurrentDateAsPointer();
690
- this.selectionMode = SelectionMode.DAY;
691
- this.isDropDownContentUp = false;
692
- this.type = 'date';
693
- this.locale = 'en';
694
- this.open = false;
695
- this.inline = false;
696
- this.readonly = false;
697
- this.disabled = false;
698
- this.allowedDates = () => true;
699
- this.min = null;
700
- this.max = null;
701
- this.closeOnSelect = this.type === 'date';
702
- this.placement = undefined;
703
- this.size = 'medium';
704
- this.required = undefined;
705
- this.defaultDate = undefined;
706
- this.placeholder = undefined;
707
- this.value = null;
708
- this.containingElement = undefined;
709
- this.dateFormat = SixDateFormats.DDMMYYY_DOT;
710
- this.debounce = executionControl.DEFAULT_DEBOUNCE_FAST;
711
- this.errorOnBlur = false;
712
- this.errorText = '';
713
- this.label = '';
714
- this.name = '';
715
- this.clearable = false;
716
- this.iconPosition = 'left';
717
- this.hoist = false;
718
- }
719
- debounceChanged() {
720
- this.sixSelect = executionControl.debounceEvent(this.sixSelect, this.debounce);
721
- }
722
- /**
723
- * Update the native input element when the value changes
724
- */
725
- valueChanged() {
726
- // map unreadable values to undefined to make the datepicker fault-tolerant
727
- if (this.isValidValue()) {
728
- console.warn('Encountered unreadable date, will map to undefined. Received value', this.value);
729
- this.value = undefined;
730
- return;
731
- }
732
- this.selectedDate = this.value;
733
- this.updatePointerDates();
734
- this.sixSelect.emit(this.value);
735
- }
736
- async resizeHandler() {
737
- this.calcIsDropDownContentUp();
738
- this.moveOpenHoistedPopup();
739
- this.adjustPopupPosition();
740
- }
741
- async scrollHandler() {
742
- this.calcIsDropDownContentUp();
743
- this.moveOpenHoistedPopup();
744
- }
745
- get container() {
746
- return this.containingElement || this.host;
747
- }
748
- get firstDateOfBox() {
749
- const date = new Date(this.pointerDate.year, this.pointerDate.month, 1);
750
- return getFirstDayOfTheWeek(date);
751
- }
752
- /** Checks for validity and shows the browser's validation message if the control is invalid. */
753
- async reportValidity() {
754
- return this.inputElement.reportValidity();
755
- }
756
- /** Checks for validity. */
757
- async checkValidity() {
758
- return this.inputElement.checkValidity();
759
- }
760
- /** Sets a custom validation message. If `message` is not empty, the field will be considered invalid. */
761
- async setCustomValidity(message) {
762
- await this.inputElement.setCustomValidity(message);
763
- }
764
- /** Resets the formcontrol */
765
- async reset() {
766
- this.value = this.defaultValue;
767
- this.inputElement.value = formatDate(this.defaultValue, this.dateFormat);
768
- await this.inputElement.reset();
769
- }
770
- isValidValue() {
771
- if (this.value === undefined || this.value === null) {
772
- return false;
773
- }
774
- if (!(this.value instanceof Date)) {
775
- return true;
776
- }
777
- return this.value instanceof Date && isNaN(this.value);
778
- }
779
- get calendarGrid() {
780
- return createCalendarGrid({
781
- firstDateOfBox: this.firstDateOfBox,
782
- allowedDates: this.allowedDates,
783
- dateFormat: this.dateFormat,
784
- locale: this.locale,
785
- selectedDate: this.selectedDate,
786
- minDate: this.min,
787
- maxDate: this.max,
788
- pointerDate: this.pointerDate,
789
- });
790
- }
791
- calcIsDropDownContentUp() {
792
- if (!this.inputElement || !this.wrapper) {
793
- return;
794
- }
795
- const inputBoundingRect = this.inputElement.getBoundingClientRect();
796
- const wrapperBoundingRect = this.wrapper.getBoundingClientRect();
797
- const minPopupHeight = Math.max(wrapperBoundingRect.height, MIN_POPUP_HEIGHT);
798
- const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;
799
- this.isDropDownContentUp = moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + minPopupHeight;
800
- }
801
- getMonthStringForIndex(index) {
802
- return i18nDate[this.locale].months[index];
803
- }
804
- previousUnit() {
805
- if (this.selectionMode === SelectionMode.DAY) {
806
- this.previousMonth();
807
- }
808
- else if (this.selectionMode === SelectionMode.MONTH) {
809
- this.previousYear();
810
- }
811
- else if (this.selectionMode === SelectionMode.YEAR) {
812
- this.previousYearGroup();
813
- }
814
- }
815
- previousYear() {
816
- this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { year: this.pointerDate.year - 1 });
817
- }
818
- previousYearGroup() {
819
- this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { year: this.pointerDate.year - NUMBER_OF_YEARS_SHOWN });
820
- }
821
- previousMonth() {
822
- if (this.pointerDate.month === 0) {
823
- this.pointerDate = { year: this.pointerDate.year - 1, month: 11, day: 1, hours: 0, minutes: 0, seconds: 0 };
768
+ this.label = '';
769
+ this.errorText = '';
770
+ this.errorTextCount = undefined;
771
+ this.invalid = false;
772
+ this.containingElement = undefined;
773
+ this.dateFormat = SixDateFormats.DDMMYYY_DOT;
774
+ this.debounce = executionControl.DEFAULT_DEBOUNCE_FAST;
775
+ this.name = '';
776
+ this.clearable = false;
777
+ this.iconPosition = 'left';
778
+ this.hoist = false;
824
779
  }
825
- else {
826
- this.pointerDate = {
827
- year: this.pointerDate.year,
828
- month: this.pointerDate.month - 1,
829
- day: 1,
830
- hours: 0,
831
- minutes: 0,
832
- seconds: 0,
833
- };
834
- }
835
- }
836
- nextUnit() {
837
- if (this.selectionMode === SelectionMode.DAY) {
838
- this.nextMonth();
839
- }
840
- else if (this.selectionMode === SelectionMode.MONTH) {
841
- this.nextYear();
842
- }
843
- else if (this.selectionMode === SelectionMode.YEAR) {
844
- this.nextYearGroup();
845
- }
846
- }
847
- nextMonth() {
848
- if (this.pointerDate.month === 11) {
849
- this.pointerDate = { year: this.pointerDate.year + 1, month: 0, day: 1, hours: 0, minutes: 0, seconds: 0 };
780
+ debounceChanged() {
781
+ this.sixSelect = executionControl.debounceEvent(this.sixSelect, this.debounce);
850
782
  }
851
- else {
852
- this.pointerDate = {
853
- year: this.pointerDate.year,
854
- month: this.pointerDate.month + 1,
855
- day: 1,
856
- hours: 0,
857
- minutes: 0,
858
- seconds: 0,
859
- };
860
- }
861
- }
862
- nextYear() {
863
- this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { year: this.pointerDate.year + 1 });
864
- }
865
- nextYearGroup() {
866
- this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { year: this.pointerDate.year + NUMBER_OF_YEARS_SHOWN });
867
- }
868
- openCalendar() {
869
- if (!this.open && !this.disabled) {
870
- this.open = true;
871
- this.setupEventListenersForOpenPopup();
872
- }
873
- }
874
- setupEventListenersForOpenPopup() {
875
- this.eventListeners.add(document, 'keydown', this.handleDocumentKeyDown);
876
- this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);
877
- }
878
- handleClearClick(event) {
879
- event.stopPropagation();
880
- void this.select(undefined);
881
- this.sixClear.emit();
882
- }
883
- closePopup() {
884
- if (this.inline) {
885
- return;
886
- }
887
- this.open = false;
888
- this.eventListeners.remove(document, 'keydown', this.handleDocumentKeyDown);
889
- this.eventListeners.remove(document, 'mousedown', this.handleDocumentMouseDown);
890
- this.selectionMode = SelectionMode.DAY;
891
- }
892
- updatePointerDates() {
893
- const date = this.getPointerDate();
894
- if (this.differsFromPointerDate(date)) {
895
- this.pointerDate = {
896
- year: year(date),
897
- month: month(date),
898
- day: day(date),
899
- hours: hours(date),
900
- minutes: minutes(date),
901
- seconds: seconds(date),
902
- };
903
- }
904
- }
905
- differsFromPointerDate(date) {
906
- return (this.pointerDate.day !== day(date) ||
907
- this.pointerDate.month !== month(date) ||
908
- this.pointerDate.year !== year(date) ||
909
- this.pointerDate.hours !== hours(date) ||
910
- this.pointerDate.minutes !== minutes(date) ||
911
- this.pointerDate.seconds !== seconds(date));
912
- }
913
- getPointerDate() {
914
- if (this.selectedDate !== undefined && this.selectedDate !== null) {
915
- return this.selectedDate;
916
- }
917
- if (sixTimepicker_types.isNil(this.defaultDate)) {
918
- return now();
783
+ /**
784
+ * Update the native input element when the value changes
785
+ */
786
+ valueChanged() {
787
+ if (this.value != null && !isValidDate(this.value)) {
788
+ console.warn('invalid date value: ', this.value);
789
+ this.value = undefined;
790
+ this.sixSelect.emit(this.value);
791
+ }
792
+ this.selectedDate = this.value;
793
+ this.updatePointerDates();
919
794
  }
920
- else {
921
- return this.defaultDate && toDate(this.defaultDate, this.dateFormat);
922
- }
923
- }
924
- updateValue(newDate) {
925
- this.displayCustomMessage(true);
926
- this.updateIfChanged(newDate);
927
- }
928
- updateIfChanged(newDate) {
929
- var _a;
930
- if (((_a = this.value) === null || _a === void 0 ? void 0 : _a.getTime()) === (newDate === null || newDate === void 0 ? void 0 : newDate.getTime())) {
931
- return;
932
- }
933
- this.value = newDate;
934
- }
935
- /**
936
- * Selects an option
937
- */
938
- async select(datestring) {
939
- if (!datestring) {
940
- this.updateValue(undefined);
795
+ async resizeHandler() {
796
+ this.updateDropdownDirection();
797
+ this.moveOpenHoistedPopup();
798
+ this.adjustPopupPosition();
941
799
  }
942
- else {
943
- const newDate = toDate(datestring, this.dateFormat);
944
- newDate.setHours(this.pointerDate.hours, this.pointerDate.minutes, this.pointerDate.seconds);
945
- this.updateValue(newDate);
946
- }
947
- this.updatePointerDates();
948
- if (this.closeOnSelect) {
949
- this.closePopup();
950
- }
951
- }
952
- componentWillLoad() {
953
- this.validateProps();
954
- this.defaultValue = this.value;
955
- this.selectedDate = this.value;
956
- this.updatePointerDates();
957
- this.updateValue(this.value);
958
- if (this.inline) {
959
- this.open = true;
960
- }
961
- if (this.open) {
962
- this.setupEventListenersForOpenPopup();
963
- }
964
- }
965
- validateProps() {
966
- if (this.value !== null && this.value !== undefined && !(this.value instanceof Date)) {
967
- throw new Error('Datepicker no longer supports strings as value. Use a date object instead!');
968
- }
969
- if (this.min !== null && this.min !== undefined && !(this.min instanceof Date)) {
970
- throw new Error('Datepicker no longer supports strings as min. Use a date object instead!');
971
- }
972
- if (this.max !== null && this.max !== undefined && !(this.max instanceof Date)) {
973
- throw new Error('Datepicker no longer supports strings as min. Use a date object instead!');
974
- }
975
- }
976
- componentDidLoad() {
977
- this.eventListeners.add(this.inputElement, 'six-input-input', executionControl.debounce(this.handleInputChange, this.debounce));
978
- this.eventListeners.add(this.inputElement, 'six-input-blur', this.handleOnBlur);
979
- }
980
- renderHeader() {
981
- return (index.h("header", { class: "datepicker-header", part: "header" }, index.h("div", { class: "datepicker-header__btn prev", onClick: () => this.previousUnit() }, index.h("svg", { viewBox: "0 5 13 13", width: "14", height: "23" }, index.h("path", { d: "M11.67 3.87L9.9 2.1 0 12l9.9 9.9 1.77-1.77L3.54 12z" }))), index.h("div", { class: "datepicker-header__label" }, this.selectionMode === SelectionMode.DAY && (index.h("div", { onClick: () => (this.selectionMode = SelectionMode.MONTH) }, index.h("span", { class: "datepicker-header__label-month" }, this.getMonthStringForIndex(this.pointerDate.month)), index.h("span", null, index.h("svg", { viewBox: "-3 -4 24 24", width: "20", height: "20" }, index.h("polyline", { points: "6 9 12 15 18 9" }))))), this.selectionMode !== SelectionMode.YEAR && (index.h("div", { onClick: () => (this.selectionMode = SelectionMode.YEAR) }, index.h("span", { class: "datepicker-header__label-year" }, this.pointerDate.year), index.h("span", null, index.h("svg", { viewBox: "-3 -4 24 24", width: "20", height: "20" }, index.h("polyline", { points: "6 9 12 15 18 9" }))))), this.selectionMode === SelectionMode.YEAR && (index.h("div", null, this.pointerDate.year - Math.floor(NUMBER_OF_YEARS_SHOWN / 2), " \u2013", ' ', this.pointerDate.year + Math.floor(NUMBER_OF_YEARS_SHOWN / 2)))), index.h("div", { class: "datepicker-header__btn next", onClick: () => this.nextUnit() }, index.h("svg", { viewBox: "5 5 13 13", width: "14", height: "23" }, index.h("path", { d: "M5.88 4.12L13.76 12l-7.88 7.88L8 22l10-10L8 2z" })))));
982
- }
983
- renderBody() {
984
- switch (this.selectionMode) {
985
- case SelectionMode.DAY:
986
- return (index.h(DaySelection, { locale: i18nDate[this.locale], calendarGrid: this.calendarGrid, onClickDateCell: this.onClickDateCell }));
987
- case SelectionMode.MONTH:
988
- return (index.h(MonthSelection, { locale: i18nDate[this.locale], selectedDate: this.selectedDate, onClickMonthCell: this.onClickMonthCell }));
989
- case SelectionMode.YEAR:
990
- return (index.h(YearSelection, { selectedDate: this.selectedDate, yearSelection: getYearSelectionAroundYear(this.pointerDate.year), onClickYearCell: this.onClickYearCell }));
991
- }
992
- }
993
- renderCustomIcon() {
994
- const icon = slot.hasSlot(this.host, 'custom-icon') ? (index.h("slot", { name: "custom-icon" })) : (index.h("six-icon", { size: this.size === 'large' ? 'medium' : this.size }, "today"));
995
- return (index.h("span", { slot: "prefix", part: "icon", class: {
996
- prefix: true,
997
- 'prefix--right': this.iconPosition === 'right',
998
- } }, icon));
999
- }
1000
- renderClearable() {
1001
- return (this.clearable && (index.h("button", { slot: "suffix", class: {
1002
- 'datepicker-clear': true,
1003
- 'datepicker-clear--right': this.iconPosition === 'left',
1004
- 'datepicker-clear--left': this.iconPosition === 'right',
1005
- }, type: "button", onClick: this.handleClearClick, tabindex: "-1" }, index.h("six-icon", { size: "small" }, "clear"))));
1006
- }
1007
- render() {
1008
- var _a, _b, _c;
1009
- this.adjustPopupPosition();
1010
- return (index.h("div", { ref: (el) => (this.wrapper = el), class: "datepicker__container" }, index.h("six-input", { part: "base", value: formatDate(this.value, this.dateFormat), ref: (el) => (this.inputElement = el), placeholder: this.placeholder, readonly: this.readonly, disabled: this.disabled, name: this.name, label: this.label, required: this.required, "error-text": this.errorText, "error-on-blur": this.errorOnBlur, onClick: () => this.openCalendar(), size: this.size, class: { 'input--empty': !this.value } }, this.renderCustomIcon(), this.renderClearable(), slot.hasSlot(this.host, 'error-text') ? (index.h("span", { slot: "error-text" }, index.h("slot", { name: "error-text" }))) : null, slot.hasSlot(this.host, 'label') ? (index.h("span", { slot: "label" }, index.h("slot", { name: "label" }))) : null), this.open && (index.h("div", { part: "popup", ref: (el) => (this.popup = el), class: {
1011
- datepicker__popup: true,
1012
- 'datepicker__popup--is-up': this.placement ? this.placement === 'top' : this.isDropDownContentUp,
1013
- 'datepicker__popup--is-inline': this.inline,
1014
- } }, this.renderHeader(), this.renderBody(), this.type === 'date-time' && (index.h("six-timepicker", { inline: true, "onSix-timepicker-change-debounced": (event) => this.onTimepickerChange(event), value: ((_a = this.selectedDate) === null || _a === void 0 ? void 0 : _a.getHours()) +
1015
- ':' +
1016
- ((_b = this.selectedDate) === null || _b === void 0 ? void 0 : _b.getMinutes()) +
1017
- ':' +
1018
- ((_c = this.selectedDate) === null || _c === void 0 ? void 0 : _c.getSeconds()) })), index.h("div", { class: "datepicker__footer" }, index.h("slot", null))))));
1019
- }
1020
- adjustPopupPosition() {
1021
- this.adjustPopupForHoisting();
1022
- this.adjustPopupForSmallScreens();
1023
- }
1024
- /*
1025
- * The position of the hoisted datepicker needs to be correctly calculated since the position changes to fixed.
1026
- * Thus if the user scrolls or adjusts the screen size we need to recalculate the datepicker position.
1027
- */
1028
- moveOpenHoistedPopup() {
1029
- if (!this.hoist || !this.open) {
1030
- return;
1031
- }
1032
- const popupBoundingClientRect = this.popup.getBoundingClientRect();
1033
- const popupHeight = popupBoundingClientRect.height;
1034
- const inputBoundingClientRect = this.inputElement.getBoundingClientRect();
1035
- const inputTop = inputBoundingClientRect.top;
1036
- const inputHeight = inputBoundingClientRect.height;
1037
- this.calcIsDropDownContentUp();
1038
- if (this.isDropDownContentUp) {
1039
- this.popup.style.top = `${inputTop - popupHeight}px`;
800
+ async scrollHandler() {
801
+ this.updateDropdownDirection();
802
+ this.moveOpenHoistedPopup();
1040
803
  }
1041
- else {
1042
- this.popup.style.top = `${inputTop + inputHeight}px`;
1043
- }
1044
- }
1045
- /*
1046
- * For small screens the datepicker popup could be cut-off even though there might still be space within the viewport.
1047
- * This is because the popup is always aligned with the trigger input field. However in the scenario of small screens
1048
- * we should reposition the popup to use the space available.
1049
- */
1050
- adjustPopupForSmallScreens() {
1051
- // execute after dropdown has been rendered to make sure the popup reference is correctly set
1052
- setTimeout(() => {
1053
- if (!this.popup) {
1054
- return;
1055
- }
1056
- const popupBoundingClientRect = this.popup.getBoundingClientRect();
1057
- const setPopupAsFixPosition = () => {
1058
- // apply screen position to fixed popup
1059
- this.popup.style.position = 'fixed';
1060
- ['top', 'left', 'width', 'height'].forEach((property) => {
1061
- this.popup.style[property] = `${popupBoundingClientRect[property]}px`;
804
+ moveOpenHoistedPopup() {
805
+ popup.movePopup(this.hoist, this.open, this.popup, this.inputElement, this.wrapper, MIN_POPUP_HEIGHT);
806
+ }
807
+ get container() {
808
+ return this.containingElement || this.host;
809
+ }
810
+ get firstDateOfBox() {
811
+ const date = new Date(this.pointerDate.year, this.pointerDate.month, 1);
812
+ return getFirstDayOfTheWeek(date);
813
+ }
814
+ /** Sets focus on the datepickers input. */
815
+ async setFocus(options) {
816
+ var _a;
817
+ (_a = this.inputElement) === null || _a === void 0 ? void 0 : _a.setFocus(options);
818
+ }
819
+ get calendarGrid() {
820
+ return createCalendarGrid({
821
+ firstDateOfBox: this.firstDateOfBox,
822
+ allowedDates: this.allowedDates,
823
+ dateFormat: this.dateFormat,
824
+ locale: this.locale,
825
+ selectedDate: this.selectedDate,
826
+ minDate: this.min,
827
+ maxDate: this.max,
828
+ pointerDate: this.pointerDate,
1062
829
  });
1063
- };
1064
- if (popupBoundingClientRect.y < 0 &&
1065
- window.innerHeight - popupBoundingClientRect.height > 0 &&
1066
- Math.abs(popupBoundingClientRect.y) <= popupBoundingClientRect.height) {
1067
- // handle case where popup is cut-off on top but there is still space available
1068
- setPopupAsFixPosition();
1069
- this.popup.style.top = '0px';
1070
- }
1071
- else if (window.innerHeight < popupBoundingClientRect.y + popupBoundingClientRect.height &&
1072
- window.innerHeight > popupBoundingClientRect.height &&
1073
- Math.abs(popupBoundingClientRect.y - window.innerHeight) <= popupBoundingClientRect.height) {
1074
- // handle case where popup is cut-off at the bottom but there is still space available above
1075
- // apply screen position to fixed popup
1076
- setPopupAsFixPosition();
1077
- this.popup.style.top = `${window.innerHeight - popupBoundingClientRect.height}px`;
1078
- }
1079
- if (window.innerWidth < popupBoundingClientRect.x + popupBoundingClientRect.width &&
1080
- window.innerWidth > popupBoundingClientRect.width &&
1081
- Math.abs(popupBoundingClientRect.x - window.innerWidth) <= popupBoundingClientRect.width) {
1082
- // handle case where popup is cut-off to the right
1083
- setPopupAsFixPosition();
1084
- this.popup.style.left = `${window.innerWidth - popupBoundingClientRect.width}px`;
1085
- }
1086
- }, 0);
1087
- }
1088
- /*
1089
- * If the popup is hoisted we popup is hoisted its position will change to fix to not be clipped of by a containing container.
1090
- * To render the popup correctly we render it normally, and then assign this screenposition to the fixed popup
1091
- */
1092
- adjustPopupForHoisting() {
1093
- if (!this.hoist) {
1094
- return;
1095
- }
1096
- // execute after dropdown has been rendered to make sure the popup reference is correctly set
1097
- setTimeout(() => {
1098
- if (!this.popup) {
1099
- return;
1100
- }
1101
- // take a snapshot of normally rendered popup
1102
- const popupBoundingClientRect = this.popup.getBoundingClientRect();
1103
- // apply screen position to fixed popup
1104
- this.popup.style.position = 'fixed';
1105
- ['top', 'left', 'width', 'height'].forEach((property) => {
1106
- this.popup.style[property] = `${popupBoundingClientRect[property]}px`;
1107
- });
1108
- const inputBoundingClientRect = this.inputElement.getBoundingClientRect();
1109
- const inputTop = inputBoundingClientRect.top;
1110
- const popupTop = popupBoundingClientRect.top;
1111
- this.calcIsDropDownContentUp();
1112
- // check screen position to check whether the popup should be moved above or below the trigger element
1113
- if (this.isDropDownContentUp && inputTop < popupTop) {
1114
- // move popup above input field if datepicker is at bottom of screen
1115
- this.popup.style.top = `${popupTop - popupBoundingClientRect.height - inputBoundingClientRect.height}px`;
1116
- }
1117
- }, 0);
1118
- }
1119
- connectedCallback() {
1120
- this.handleClearClick = this.handleClearClick.bind(this);
1121
- }
1122
- disconnectedCallback() {
1123
- this.eventListeners.removeAll();
1124
- }
1125
- displayCustomMessage(valid) {
1126
- if (!this.inputElement) {
1127
- return;
1128
- }
1129
- if (valid) {
1130
- void this.setCustomValidity('');
1131
830
  }
1132
- else {
1133
- const message = this.errorText ? this.errorText : 'Invalid date format';
1134
- void this.setCustomValidity(message);
1135
- }
1136
- }
1137
- static getCurrentDateAsPointer() {
1138
- return {
1139
- year: year(now()),
1140
- month: month(now()),
1141
- day: day(now()),
1142
- hours: hours(now()),
1143
- minutes: minutes(now()),
1144
- seconds: seconds(now()),
1145
- };
1146
- }
1147
- get host() { return index.getElement(this); }
1148
- static get watchers() { return {
1149
- "debounce": ["debounceChanged"],
1150
- "value": ["valueChanged"]
1151
- }; }
831
+ updateDropdownDirection() {
832
+ if (this.inputElement == null || this.wrapper == null) {
833
+ return;
834
+ }
835
+ this.isDropDownContentUp = popup.calcIsDropDownContentUp(this.inputElement, this.wrapper, MIN_POPUP_HEIGHT);
836
+ }
837
+ getMonthStringForIndex(index) {
838
+ return i18nDate[this.locale].months[index];
839
+ }
840
+ previousYear() {
841
+ this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { year: this.pointerDate.year - 1 });
842
+ }
843
+ previousYearGroup() {
844
+ this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { year: this.pointerDate.year - NUMBER_OF_YEARS_SHOWN });
845
+ }
846
+ previousMonth() {
847
+ if (this.pointerDate.month === 0) {
848
+ this.pointerDate = { year: this.pointerDate.year - 1, month: 11, day: 1, hours: 0, minutes: 0, seconds: 0 };
849
+ }
850
+ else {
851
+ this.pointerDate = {
852
+ year: this.pointerDate.year,
853
+ month: this.pointerDate.month - 1,
854
+ day: 1,
855
+ hours: 0,
856
+ minutes: 0,
857
+ seconds: 0,
858
+ };
859
+ }
860
+ }
861
+ nextMonth() {
862
+ if (this.pointerDate.month === 11) {
863
+ this.pointerDate = { year: this.pointerDate.year + 1, month: 0, day: 1, hours: 0, minutes: 0, seconds: 0 };
864
+ }
865
+ else {
866
+ this.pointerDate = {
867
+ year: this.pointerDate.year,
868
+ month: this.pointerDate.month + 1,
869
+ day: 1,
870
+ hours: 0,
871
+ minutes: 0,
872
+ seconds: 0,
873
+ };
874
+ }
875
+ }
876
+ nextYear() {
877
+ this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { year: this.pointerDate.year + 1 });
878
+ }
879
+ nextYearGroup() {
880
+ this.pointerDate = Object.assign(Object.assign({}, this.pointerDate), { year: this.pointerDate.year + NUMBER_OF_YEARS_SHOWN });
881
+ }
882
+ openCalendar() {
883
+ if (!this.open && !this.disabled) {
884
+ this.open = true;
885
+ this.setupEventListenersForOpenPopup();
886
+ }
887
+ }
888
+ setupEventListenersForOpenPopup() {
889
+ this.eventListeners.add(document, 'keydown', this.handleDocumentKeyDown);
890
+ this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);
891
+ }
892
+ closePopup() {
893
+ if (this.inline) {
894
+ return;
895
+ }
896
+ this.open = false;
897
+ this.eventListeners.remove(document, 'keydown', this.handleDocumentKeyDown);
898
+ this.eventListeners.remove(document, 'mousedown', this.handleDocumentMouseDown);
899
+ this.selectionMode = SelectionMode.DAY;
900
+ }
901
+ updatePointerDates() {
902
+ const date = this.getPointerDate();
903
+ if (this.differsFromPointerDate(date)) {
904
+ this.pointerDate = {
905
+ year: year(date),
906
+ month: month(date),
907
+ day: day(date),
908
+ hours: hours(date),
909
+ minutes: minutes(date),
910
+ seconds: seconds(date),
911
+ };
912
+ }
913
+ }
914
+ differsFromPointerDate(date) {
915
+ return (this.pointerDate.day !== day(date) ||
916
+ this.pointerDate.month !== month(date) ||
917
+ this.pointerDate.year !== year(date) ||
918
+ this.pointerDate.hours !== hours(date) ||
919
+ this.pointerDate.minutes !== minutes(date) ||
920
+ this.pointerDate.seconds !== seconds(date));
921
+ }
922
+ getPointerDate() {
923
+ if (this.selectedDate !== undefined && this.selectedDate !== null) {
924
+ return this.selectedDate;
925
+ }
926
+ if (this.defaultDate == null) {
927
+ return this.type === 'date' ? removeTime(now()) : now();
928
+ }
929
+ else {
930
+ return toDate(this.defaultDate, this.dateFormat);
931
+ }
932
+ }
933
+ updateValue(newDate) {
934
+ this.updateIfChanged(newDate);
935
+ }
936
+ updateIfChanged(newDate) {
937
+ var _a;
938
+ if (((_a = this.value) === null || _a === void 0 ? void 0 : _a.getTime()) === (newDate === null || newDate === void 0 ? void 0 : newDate.getTime())) {
939
+ return;
940
+ }
941
+ this.value = newDate;
942
+ this.sixSelect.emit(this.value);
943
+ }
944
+ /**
945
+ * Selects an option
946
+ */
947
+ async select(datestring) {
948
+ if (datestring == null) {
949
+ this.updateValue(undefined);
950
+ }
951
+ else {
952
+ const newDate = toDate(datestring, this.dateFormat);
953
+ newDate === null || newDate === void 0 ? void 0 : newDate.setHours(this.pointerDate.hours, this.pointerDate.minutes, this.pointerDate.seconds);
954
+ this.updateValue(newDate);
955
+ }
956
+ this.updatePointerDates();
957
+ if (this.closeOnSelect) {
958
+ this.closePopup();
959
+ }
960
+ }
961
+ componentWillLoad() {
962
+ this.selectedDate = this.value;
963
+ this.updatePointerDates();
964
+ this.updateValue(this.value);
965
+ if (this.inline) {
966
+ this.open = true;
967
+ }
968
+ if (this.open) {
969
+ this.setupEventListenersForOpenPopup();
970
+ }
971
+ }
972
+ componentDidLoad() {
973
+ if (this.inputElement != null) {
974
+ this.eventListeners.add(this.inputElement, 'six-input-input', executionControl.debounce(this.handleInputChange, this.debounce));
975
+ this.eventListeners.add(this.inputElement, 'six-input-blur', this.handleOnBlur);
976
+ }
977
+ }
978
+ componentDidRender() {
979
+ this.adjustPopupPosition();
980
+ }
981
+ renderHeader() {
982
+ return (index.h("header", { class: "datepicker-header", part: "header" }, index.h("div", { class: "datepicker-header__btn prev", onClick: this.previousUnit }, index.h("svg", { viewBox: "0 5 13 13", width: "14", height: "23" }, index.h("path", { d: "M11.67 3.87L9.9 2.1 0 12l9.9 9.9 1.77-1.77L3.54 12z" }))), index.h("div", { class: "datepicker-header__label" }, this.selectionMode === SelectionMode.DAY && (index.h("div", { onClick: () => (this.selectionMode = SelectionMode.MONTH) }, index.h("span", { class: "datepicker-header__label-month" }, this.getMonthStringForIndex(this.pointerDate.month)), index.h("span", null, index.h("svg", { viewBox: "-3 -4 24 24", width: "20", height: "20" }, index.h("polyline", { points: "6 9 12 15 18 9" }))))), this.selectionMode !== SelectionMode.YEAR && (index.h("div", { onClick: () => (this.selectionMode = SelectionMode.YEAR) }, index.h("span", { class: "datepicker-header__label-year" }, this.pointerDate.year), index.h("span", null, index.h("svg", { viewBox: "-3 -4 24 24", width: "20", height: "20" }, index.h("polyline", { points: "6 9 12 15 18 9" }))))), this.selectionMode === SelectionMode.YEAR && (index.h("div", null, this.pointerDate.year - Math.floor(NUMBER_OF_YEARS_SHOWN / 2), " \u2013", ' ', this.pointerDate.year + Math.floor(NUMBER_OF_YEARS_SHOWN / 2)))), index.h("div", { class: "datepicker-header__btn next", onClick: this.nextUnit }, index.h("svg", { viewBox: "5 5 13 13", width: "14", height: "23" }, index.h("path", { d: "M5.88 4.12L13.76 12l-7.88 7.88L8 22l10-10L8 2z" })))));
983
+ }
984
+ renderBody() {
985
+ switch (this.selectionMode) {
986
+ case SelectionMode.DAY:
987
+ return (index.h(DaySelection, { locale: i18nDate[this.locale], calendarGrid: this.calendarGrid, onClickDateCell: this.onClickDateCell }));
988
+ case SelectionMode.MONTH:
989
+ return (index.h(MonthSelection, { locale: i18nDate[this.locale], selectedDate: this.selectedDate, onClickMonthCell: this.onClickMonthCell }));
990
+ case SelectionMode.YEAR:
991
+ return (index.h(YearSelection, { selectedDate: this.selectedDate, yearSelection: rangeAround(this.pointerDate.year, NUMBER_OF_YEARS_SHOWN), onClickYearCell: this.onClickYearCell }));
992
+ }
993
+ }
994
+ renderCustomIcon() {
995
+ const icon = slot.hasSlot(this.host, 'custom-icon') ? (index.h("slot", { name: "custom-icon" })) : (index.h("six-icon", { size: this.size === 'large' ? 'medium' : this.size }, "today"));
996
+ return (index.h("span", { slot: "prefix", part: "icon", class: {
997
+ prefix: true,
998
+ 'prefix--right': this.iconPosition === 'right',
999
+ } }, icon));
1000
+ }
1001
+ renderClearable() {
1002
+ return (this.clearable && (index.h("button", { slot: "suffix", class: {
1003
+ 'datepicker-clear': true,
1004
+ 'datepicker-clear--right': this.iconPosition === 'left',
1005
+ 'datepicker-clear--left': this.iconPosition === 'right',
1006
+ }, type: "button", onClick: this.handleClearClick, tabindex: "-1" }, index.h("six-icon", { size: "small" }, "clear"))));
1007
+ }
1008
+ render() {
1009
+ var _a, _b, _c;
1010
+ this.adjustPopupPosition();
1011
+ return (index.h("div", { ref: (el) => (this.wrapper = el), class: "datepicker__container" }, index.h("six-input", { part: "base", value: formatDate(this.value, this.dateFormat), ref: (el) => (this.inputElement = el), placeholder: this.placeholder, readonly: this.readonly, disabled: this.disabled, name: this.name, label: this.label, required: this.required, errorText: this.errorText, errorTextCount: this.errorTextCount, invalid: this.invalid, onClick: () => this.openCalendar(), size: this.size, class: { 'input--empty': this.value == null } }, this.renderCustomIcon(), this.renderClearable(), slot.hasSlot(this.host, 'label') ? (index.h("span", { slot: "label" }, index.h("slot", { name: "label" }))) : null, slot.hasSlot(this.host, 'error-text') ? (index.h("span", { slot: "error-text" }, index.h("slot", { name: "error-text" }))) : null), this.open && (index.h("div", { part: "popup", ref: (el) => (this.popup = el), class: {
1012
+ datepicker__popup: true,
1013
+ 'datepicker__popup--is-up': this.placement != null ? this.placement === 'top' : this.isDropDownContentUp,
1014
+ 'datepicker__popup--is-inline': this.inline,
1015
+ } }, this.renderHeader(), this.renderBody(), this.type === 'date-time' && (index.h("six-timepicker", { inline: true, "onSix-timepicker-change-debounced": (event) => this.onTimepickerChange(event), value: ((_a = this.selectedDate) === null || _a === void 0 ? void 0 : _a.getHours()) +
1016
+ ':' +
1017
+ ((_b = this.selectedDate) === null || _b === void 0 ? void 0 : _b.getMinutes()) +
1018
+ ':' +
1019
+ ((_c = this.selectedDate) === null || _c === void 0 ? void 0 : _c.getSeconds()) })), index.h("div", { class: "datepicker__footer" }, index.h("slot", null))))));
1020
+ }
1021
+ adjustPopupPosition() {
1022
+ popup.adjustPopupForHoisting(this.hoist, this.popup, this.inputElement, this.wrapper, MIN_POPUP_HEIGHT, (isUp) => (this.isDropDownContentUp = isUp));
1023
+ popup.adjustPopupForSmallScreens(this.popup);
1024
+ }
1025
+ connectedCallback() {
1026
+ this.eventListeners.forward('six-datepicker-select', 'change', this.host);
1027
+ this.eventListeners.forward('six-datepicker-blur', 'blur', this.host);
1028
+ }
1029
+ disconnectedCallback() {
1030
+ this.eventListeners.removeAll();
1031
+ }
1032
+ static getCurrentDateAsPointer() {
1033
+ return {
1034
+ year: year(now()),
1035
+ month: month(now()),
1036
+ day: day(now()),
1037
+ hours: hours(now()),
1038
+ minutes: minutes(now()),
1039
+ seconds: seconds(now()),
1040
+ };
1041
+ }
1042
+ get host() { return index.getElement(this); }
1043
+ static get watchers() { return {
1044
+ "debounce": ["debounceChanged"],
1045
+ "value": ["valueChanged"]
1046
+ }; }
1152
1047
  };
1153
1048
  SixDatepicker.style = sixDatepickerCss;
1154
1049