@six-group/ui-library 0.0.0-insider.49c8d01 → 0.0.0-insider.4b8cb1b

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 (667) hide show
  1. package/dist/cjs/error-messages-6e8049a4.js +119 -0
  2. package/dist/cjs/error-messages-6e8049a4.js.map +1 -0
  3. package/dist/cjs/{form-control-f9bc25dd.js → form-control-8d64e974.js} +2 -2
  4. package/dist/cjs/{form-control-f9bc25dd.js.map → form-control-8d64e974.js.map} +1 -1
  5. package/dist/cjs/{index-3baddcdc.js → index-d7748d51.js} +53 -490
  6. package/dist/cjs/index-d7748d51.js.map +1 -0
  7. package/dist/cjs/index.cjs.js +54 -101
  8. package/dist/cjs/index.cjs.js.map +1 -1
  9. package/dist/cjs/loader.cjs.js +2 -2
  10. package/dist/cjs/{popup-40a9adbb.js → popup-e854acda.js} +2 -2
  11. package/dist/cjs/popup-e854acda.js.map +1 -0
  12. package/dist/cjs/six-alert.cjs.entry.js +26 -3
  13. package/dist/cjs/six-alert.cjs.entry.js.map +1 -1
  14. package/dist/cjs/six-avatar.cjs.entry.js +2 -2
  15. package/dist/cjs/six-avatar.cjs.entry.js.map +1 -1
  16. package/dist/cjs/six-badge.cjs.entry.js +2 -2
  17. package/dist/cjs/six-badge.cjs.entry.js.map +1 -1
  18. package/dist/cjs/six-button.cjs.entry.js +3 -3
  19. package/dist/cjs/six-button.cjs.entry.js.map +1 -1
  20. package/dist/cjs/six-card.cjs.entry.js +2 -2
  21. package/dist/cjs/six-card.cjs.entry.js.map +1 -1
  22. package/dist/cjs/six-checkbox_2.cjs.entry.js +190 -0
  23. package/dist/cjs/six-checkbox_2.cjs.entry.js.map +1 -0
  24. package/dist/cjs/six-datepicker.cjs.entry.js +5 -4
  25. package/dist/cjs/six-datepicker.cjs.entry.js.map +1 -1
  26. package/dist/cjs/six-details.cjs.entry.js +2 -2
  27. package/dist/cjs/six-details.cjs.entry.js.map +1 -1
  28. package/dist/cjs/six-dialog.cjs.entry.js +3 -3
  29. package/dist/cjs/six-dialog.cjs.entry.js.map +1 -1
  30. package/dist/cjs/six-drawer.cjs.entry.js +3 -3
  31. package/dist/cjs/six-drawer.cjs.entry.js.map +1 -1
  32. package/dist/cjs/six-dropdown_2.cjs.entry.js +197 -125
  33. package/dist/cjs/six-dropdown_2.cjs.entry.js.map +1 -1
  34. package/dist/cjs/six-error-page.cjs.entry.js +1 -1
  35. package/dist/cjs/six-error.cjs.entry.js +1 -1
  36. package/dist/cjs/six-file-list-item.cjs.entry.js +2 -2
  37. package/dist/cjs/six-file-list-item.cjs.entry.js.map +1 -1
  38. package/dist/cjs/six-file-list.cjs.entry.js +1 -1
  39. package/dist/cjs/six-file-upload.cjs.entry.js +2 -2
  40. package/dist/cjs/six-file-upload.cjs.entry.js.map +1 -1
  41. package/dist/cjs/six-footer.cjs.entry.js +2 -2
  42. package/dist/cjs/six-footer.cjs.entry.js.map +1 -1
  43. package/dist/cjs/six-group-label.cjs.entry.js +4 -4
  44. package/dist/cjs/six-group-label.cjs.entry.js.map +1 -1
  45. package/dist/cjs/six-header.cjs.entry.js +24 -9
  46. package/dist/cjs/six-header.cjs.entry.js.map +1 -1
  47. package/dist/cjs/six-icon-button.cjs.entry.js +2 -2
  48. package/dist/cjs/six-icon-button.cjs.entry.js.map +1 -1
  49. package/dist/cjs/six-icon.cjs.entry.js +2 -2
  50. package/dist/cjs/six-icon.cjs.entry.js.map +1 -1
  51. package/dist/cjs/six-input.cjs.entry.js +6 -4
  52. package/dist/cjs/six-input.cjs.entry.js.map +1 -1
  53. package/dist/cjs/six-item-picker.cjs.entry.js +2 -2
  54. package/dist/cjs/six-item-picker.cjs.entry.js.map +1 -1
  55. package/dist/cjs/six-language-switcher.cjs.entry.js +1 -1
  56. package/dist/cjs/six-layout-grid.cjs.entry.js +1 -1
  57. package/dist/cjs/six-main-container.cjs.entry.js +1 -1
  58. package/dist/cjs/six-main-container.cjs.entry.js.map +1 -1
  59. package/dist/cjs/six-menu-divider.cjs.entry.js +2 -2
  60. package/dist/cjs/six-menu-divider.cjs.entry.js.map +1 -1
  61. package/dist/cjs/six-menu-label.cjs.entry.js +2 -2
  62. package/dist/cjs/six-menu-label.cjs.entry.js.map +1 -1
  63. package/dist/cjs/six-picto.cjs.entry.js +1 -1
  64. package/dist/cjs/six-progress-bar.cjs.entry.js +2 -2
  65. package/dist/cjs/six-progress-bar.cjs.entry.js.map +1 -1
  66. package/dist/cjs/six-progress-ring.cjs.entry.js +2 -2
  67. package/dist/cjs/six-progress-ring.cjs.entry.js.map +1 -1
  68. package/dist/cjs/six-radio.cjs.entry.js +2 -2
  69. package/dist/cjs/six-radio.cjs.entry.js.map +1 -1
  70. package/dist/cjs/six-range.cjs.entry.js +4 -4
  71. package/dist/cjs/six-range.cjs.entry.js.map +1 -1
  72. package/dist/cjs/six-root.cjs.entry.js +2 -21
  73. package/dist/cjs/six-root.cjs.entry.js.map +1 -1
  74. package/dist/cjs/six-search-field.cjs.entry.js +2 -2
  75. package/dist/cjs/six-search-field.cjs.entry.js.map +1 -1
  76. package/dist/cjs/six-select.cjs.entry.js +300 -169
  77. package/dist/cjs/six-select.cjs.entry.js.map +1 -1
  78. package/dist/cjs/six-sidebar-item-group.cjs.entry.js +3 -3
  79. package/dist/cjs/six-sidebar-item-group.cjs.entry.js.map +1 -1
  80. package/dist/cjs/six-sidebar-item.cjs.entry.js +1 -1
  81. package/dist/cjs/six-sidebar.cjs.entry.js +2 -2
  82. package/dist/cjs/six-sidebar.cjs.entry.js.map +1 -1
  83. package/dist/cjs/six-spinner.cjs.entry.js +3 -3
  84. package/dist/cjs/six-spinner.cjs.entry.js.map +1 -1
  85. package/dist/cjs/six-stage-indicator.cjs.entry.js +22 -0
  86. package/dist/cjs/six-stage-indicator.cjs.entry.js.map +1 -0
  87. package/dist/cjs/six-switch.cjs.entry.js +4 -4
  88. package/dist/cjs/six-switch.cjs.entry.js.map +1 -1
  89. package/dist/cjs/six-tab-group.cjs.entry.js +2 -2
  90. package/dist/cjs/six-tab-group.cjs.entry.js.map +1 -1
  91. package/dist/cjs/six-tab-panel.cjs.entry.js +2 -2
  92. package/dist/cjs/six-tab-panel.cjs.entry.js.map +1 -1
  93. package/dist/cjs/six-tab.cjs.entry.js +2 -2
  94. package/dist/cjs/six-tab.cjs.entry.js.map +1 -1
  95. package/dist/cjs/six-tag.cjs.entry.js +3 -3
  96. package/dist/cjs/six-tag.cjs.entry.js.map +1 -1
  97. package/dist/cjs/six-textarea.cjs.entry.js +4 -4
  98. package/dist/cjs/six-textarea.cjs.entry.js.map +1 -1
  99. package/dist/cjs/six-tile.cjs.entry.js +3 -3
  100. package/dist/cjs/six-tile.cjs.entry.js.map +1 -1
  101. package/dist/cjs/six-timepicker.cjs.entry.js +5 -5
  102. package/dist/cjs/six-timepicker.cjs.entry.js.map +1 -1
  103. package/dist/cjs/six-tooltip.cjs.entry.js +2 -2
  104. package/dist/cjs/six-tooltip.cjs.entry.js.map +1 -1
  105. package/dist/cjs/{slot-9821749e.js → slot-1b1232a1.js} +1 -3
  106. package/dist/cjs/slot-1b1232a1.js.map +1 -0
  107. package/dist/cjs/{types-0a6d66f6.js → types-d3da200b.js} +3 -1
  108. package/dist/cjs/types-d3da200b.js.map +1 -0
  109. package/dist/cjs/ui-library.cjs.js +3 -3
  110. package/dist/cjs/ui-library.cjs.js.map +1 -1
  111. package/dist/collection/collection-manifest.json +4 -5
  112. package/dist/collection/components/six-alert/six-alert.css +5 -1
  113. package/dist/collection/components/six-alert/six-alert.js +42 -6
  114. package/dist/collection/components/six-alert/six-alert.js.map +1 -1
  115. package/dist/collection/components/six-avatar/six-avatar.css +2 -2
  116. package/dist/collection/components/six-badge/six-badge.css +1 -1
  117. package/dist/collection/components/six-button/six-button.css +2 -1
  118. package/dist/collection/components/six-button/six-button.js +3 -2
  119. package/dist/collection/components/six-button/six-button.js.map +1 -1
  120. package/dist/collection/components/six-card/six-card.css +4 -5
  121. package/dist/collection/components/six-checkbox/six-checkbox.css +1 -1
  122. package/dist/collection/components/six-checkbox/six-checkbox.js +3 -2
  123. package/dist/collection/components/six-checkbox/six-checkbox.js.map +1 -1
  124. package/dist/collection/components/six-datepicker/six-date-formats.js +1 -0
  125. package/dist/collection/components/six-datepicker/six-date-formats.js.map +1 -1
  126. package/dist/collection/components/six-datepicker/six-datepicker.css +1 -1
  127. package/dist/collection/components/six-datepicker/six-datepicker.js +6 -4
  128. package/dist/collection/components/six-datepicker/six-datepicker.js.map +1 -1
  129. package/dist/collection/components/six-details/six-details.css +1 -5
  130. package/dist/collection/components/six-details/six-details.js.map +1 -1
  131. package/dist/collection/components/six-dialog/six-dialog.css +2 -2
  132. package/dist/collection/components/six-drawer/six-drawer.css +2 -2
  133. package/dist/collection/components/six-dropdown/six-dropdown.css +22 -7
  134. package/dist/collection/components/six-dropdown/six-dropdown.js +215 -123
  135. package/dist/collection/components/six-dropdown/six-dropdown.js.map +1 -1
  136. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js +54 -29
  137. package/dist/collection/components/six-dropdown/test/six-dropdown.spec.js.map +1 -1
  138. package/dist/collection/components/six-file-list-item/six-file-list-item.css +1 -1
  139. package/dist/collection/components/six-file-upload/six-file-upload.css +1 -4
  140. package/dist/collection/components/six-footer/six-footer.css +2 -2
  141. package/dist/collection/components/six-group-label/six-group-label.css +1 -1
  142. package/dist/collection/components/six-header/six-header.css +6 -2
  143. package/dist/collection/components/six-header/six-header.js +42 -8
  144. package/dist/collection/components/six-header/six-header.js.map +1 -1
  145. package/dist/collection/components/six-header/test/six-header.spec.js +50 -6
  146. package/dist/collection/components/six-header/test/six-header.spec.js.map +1 -1
  147. package/dist/collection/components/six-icon/six-icon.css +5 -2
  148. package/dist/collection/components/six-icon-button/six-icon-button.css +1 -1
  149. package/dist/collection/components/six-input/six-input.css +10 -1
  150. package/dist/collection/components/six-input/six-input.js +44 -16
  151. package/dist/collection/components/six-input/six-input.js.map +1 -1
  152. package/dist/collection/components/six-item-picker/six-item-picker.js.map +1 -1
  153. package/dist/collection/components/six-item-picker/types.js +2 -0
  154. package/dist/collection/components/six-item-picker/types.js.map +1 -1
  155. package/dist/collection/components/six-main-container/six-main-container.js.map +1 -1
  156. package/dist/collection/components/six-menu/six-menu.css +8 -7
  157. package/dist/collection/components/six-menu/six-menu.js +28 -6
  158. package/dist/collection/components/six-menu/six-menu.js.map +1 -1
  159. package/dist/collection/components/six-menu/test/six-menu.spec.js +6 -6
  160. package/dist/collection/components/six-menu/test/six-menu.spec.js.map +1 -1
  161. package/dist/collection/components/six-menu-divider/six-menu-divider.css +3 -2
  162. package/dist/collection/components/six-menu-item/six-menu-item.css +13 -2
  163. package/dist/collection/components/six-menu-item/six-menu-item.js +36 -7
  164. package/dist/collection/components/six-menu-item/six-menu-item.js.map +1 -1
  165. package/dist/collection/components/six-menu-label/six-menu-label.css +1 -1
  166. package/dist/collection/components/six-progress-bar/six-progress-bar.css +1 -1
  167. package/dist/collection/components/six-progress-ring/six-progress-ring.css +1 -1
  168. package/dist/collection/components/six-radio/six-radio.css +1 -1
  169. package/dist/collection/components/six-radio/six-radio.js +3 -2
  170. package/dist/collection/components/six-radio/six-radio.js.map +1 -1
  171. package/dist/collection/components/six-range/six-range.css +1 -1
  172. package/dist/collection/components/six-range/six-range.js +3 -2
  173. package/dist/collection/components/six-range/six-range.js.map +1 -1
  174. package/dist/collection/components/six-root/six-root.js +1 -69
  175. package/dist/collection/components/six-root/six-root.js.map +1 -1
  176. package/dist/collection/components/six-root/test/six-root.spec.js +0 -7
  177. package/dist/collection/components/six-root/test/six-root.spec.js.map +1 -1
  178. package/dist/collection/components/six-search-field/six-search-field.css +1 -1
  179. package/dist/collection/components/six-select/six-select.css +54 -66
  180. package/dist/collection/components/six-select/six-select.js +343 -168
  181. package/dist/collection/components/six-select/six-select.js.map +1 -1
  182. package/dist/collection/components/six-select/test/six-select.spec.js +31 -15
  183. package/dist/collection/components/six-select/test/six-select.spec.js.map +1 -1
  184. package/dist/collection/components/six-sidebar/six-sidebar.css +2 -2
  185. package/dist/collection/components/six-sidebar/six-sidebar.js +6 -4
  186. package/dist/collection/components/six-sidebar/six-sidebar.js.map +1 -1
  187. package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.css +1 -1
  188. package/dist/collection/components/six-spinner/six-spinner.css +1 -1
  189. package/dist/collection/components/six-spinner/six-spinner.js +2 -1
  190. package/dist/collection/components/six-spinner/six-spinner.js.map +1 -1
  191. package/dist/collection/components/six-spinner/test/six-spinner.spec.js +1 -1
  192. package/dist/collection/components/six-spinner/test/six-spinner.spec.js.map +1 -1
  193. package/dist/collection/components/six-stage-indicator/six-stage-indicator.css +1 -1
  194. package/dist/collection/components/six-switch/six-switch.css +1 -1
  195. package/dist/collection/components/six-switch/six-switch.js +3 -2
  196. package/dist/collection/components/six-switch/six-switch.js.map +1 -1
  197. package/dist/collection/components/six-tab/six-tab.css +1 -1
  198. package/dist/collection/components/six-tab/six-tab.js +3 -2
  199. package/dist/collection/components/six-tab/six-tab.js.map +1 -1
  200. package/dist/collection/components/six-tab-group/six-tab-group.css +1 -1
  201. package/dist/collection/components/six-tab-group/six-tab-group.js +3 -2
  202. package/dist/collection/components/six-tab-group/six-tab-group.js.map +1 -1
  203. package/dist/collection/components/six-tab-panel/six-tab-panel.css +1 -1
  204. package/dist/collection/components/six-tag/six-tag.css +1 -1
  205. package/dist/collection/components/six-textarea/six-textarea.css +1 -1
  206. package/dist/collection/components/six-textarea/six-textarea.js +24 -16
  207. package/dist/collection/components/six-textarea/six-textarea.js.map +1 -1
  208. package/dist/collection/components/six-tile/six-tile.css +2 -2
  209. package/dist/collection/components/six-tile/six-tile.js.map +1 -1
  210. package/dist/collection/components/six-timepicker/six-timepicker.css +1 -1
  211. package/dist/collection/components/six-timepicker/six-timepicker.js +3 -2
  212. package/dist/collection/components/six-timepicker/six-timepicker.js.map +1 -1
  213. package/dist/collection/components/six-tooltip/six-tooltip.css +1 -1
  214. package/dist/collection/index.js +1 -0
  215. package/dist/collection/index.js.map +1 -1
  216. package/dist/collection/utils/alert.js +54 -0
  217. package/dist/collection/utils/alert.js.map +1 -0
  218. package/dist/collection/utils/error-messages.js +7 -0
  219. package/dist/collection/utils/error-messages.js.map +1 -1
  220. package/dist/collection/utils/popup.js +1 -1
  221. package/dist/collection/utils/popup.js.map +1 -1
  222. package/dist/collection/utils/slot.js +0 -1
  223. package/dist/collection/utils/slot.js.map +1 -1
  224. package/dist/components/index.js +50 -102
  225. package/dist/components/index.js.map +1 -1
  226. package/dist/components/six-alert.js +25 -2
  227. package/dist/components/six-alert.js.map +1 -1
  228. package/dist/components/six-avatar.js +1 -1
  229. package/dist/components/six-avatar.js.map +1 -1
  230. package/dist/components/six-badge.js +1 -1
  231. package/dist/components/six-badge.js.map +1 -1
  232. package/dist/components/six-button.js +1 -142
  233. package/dist/components/six-button.js.map +1 -1
  234. package/dist/components/six-button2.js +146 -0
  235. package/dist/components/six-button2.js.map +1 -0
  236. package/dist/components/six-card.js +1 -1
  237. package/dist/components/six-card.js.map +1 -1
  238. package/dist/components/six-checkbox.js +1 -161
  239. package/dist/components/six-checkbox.js.map +1 -1
  240. package/dist/components/six-checkbox2.js +165 -0
  241. package/dist/components/six-checkbox2.js.map +1 -0
  242. package/dist/components/six-datepicker.js +2 -1
  243. package/dist/components/six-datepicker.js.map +1 -1
  244. package/dist/components/six-details2.js +1 -1
  245. package/dist/components/six-details2.js.map +1 -1
  246. package/dist/components/six-dialog.js +1 -1
  247. package/dist/components/six-dialog.js.map +1 -1
  248. package/dist/components/six-drawer.js +1 -1
  249. package/dist/components/six-drawer.js.map +1 -1
  250. package/dist/components/six-dropdown2.js +201 -125
  251. package/dist/components/six-dropdown2.js.map +1 -1
  252. package/dist/components/six-file-list-item.js +1 -1
  253. package/dist/components/six-file-list-item.js.map +1 -1
  254. package/dist/components/six-file-upload.js +1 -1
  255. package/dist/components/six-file-upload.js.map +1 -1
  256. package/dist/components/six-footer.js +1 -1
  257. package/dist/components/six-footer.js.map +1 -1
  258. package/dist/components/six-group-label.js +1 -1
  259. package/dist/components/six-group-label.js.map +1 -1
  260. package/dist/components/six-header.js +30 -8
  261. package/dist/components/six-header.js.map +1 -1
  262. package/dist/components/six-icon-button2.js +1 -1
  263. package/dist/components/six-icon-button2.js.map +1 -1
  264. package/dist/components/six-icon2.js +1 -1
  265. package/dist/components/six-icon2.js.map +1 -1
  266. package/dist/components/six-input2.js +4 -1
  267. package/dist/components/six-input2.js.map +1 -1
  268. package/dist/components/six-item-picker2.js +2 -0
  269. package/dist/components/six-item-picker2.js.map +1 -1
  270. package/dist/components/six-main-container.js.map +1 -1
  271. package/dist/components/six-menu-divider.js +1 -1
  272. package/dist/components/six-menu-divider.js.map +1 -1
  273. package/dist/components/six-menu-item2.js +28 -5
  274. package/dist/components/six-menu-item2.js.map +1 -1
  275. package/dist/components/six-menu-label.js +1 -1
  276. package/dist/components/six-menu-label.js.map +1 -1
  277. package/dist/components/six-menu2.js +22 -6
  278. package/dist/components/six-menu2.js.map +1 -1
  279. package/dist/components/six-progress-bar.js +1 -1
  280. package/dist/components/six-progress-bar.js.map +1 -1
  281. package/dist/components/six-progress-ring.js +1 -1
  282. package/dist/components/six-progress-ring.js.map +1 -1
  283. package/dist/components/six-radio.js +1 -1
  284. package/dist/components/six-radio.js.map +1 -1
  285. package/dist/components/six-range.js +1 -1
  286. package/dist/components/six-range.js.map +1 -1
  287. package/dist/components/six-root.js +4 -33
  288. package/dist/components/six-root.js.map +1 -1
  289. package/dist/components/six-search-field.js +1 -1
  290. package/dist/components/six-search-field.js.map +1 -1
  291. package/dist/components/six-select.js +435 -185
  292. package/dist/components/six-select.js.map +1 -1
  293. package/dist/components/six-sidebar-item-group.js +1 -1
  294. package/dist/components/six-sidebar-item-group.js.map +1 -1
  295. package/dist/components/six-sidebar.js +1 -1
  296. package/dist/components/six-sidebar.js.map +1 -1
  297. package/dist/components/six-spinner2.js +2 -2
  298. package/dist/components/six-spinner2.js.map +1 -1
  299. package/dist/components/six-stage-indicator2.js +1 -1
  300. package/dist/components/six-stage-indicator2.js.map +1 -1
  301. package/dist/components/six-switch.js +1 -1
  302. package/dist/components/six-switch.js.map +1 -1
  303. package/dist/components/six-tab-group.js +1 -1
  304. package/dist/components/six-tab-group.js.map +1 -1
  305. package/dist/components/six-tab-panel.js +1 -1
  306. package/dist/components/six-tab-panel.js.map +1 -1
  307. package/dist/components/six-tab.js +1 -1
  308. package/dist/components/six-tab.js.map +1 -1
  309. package/dist/components/six-tag.js +98 -1
  310. package/dist/components/six-tag.js.map +1 -1
  311. package/dist/components/six-textarea.js +1 -1
  312. package/dist/components/six-textarea.js.map +1 -1
  313. package/dist/components/six-tile.js +1 -1
  314. package/dist/components/six-tile.js.map +1 -1
  315. package/dist/components/six-timepicker2.js +2 -2
  316. package/dist/components/six-timepicker2.js.map +1 -1
  317. package/dist/components/six-tooltip2.js +1 -1
  318. package/dist/components/six-tooltip2.js.map +1 -1
  319. package/dist/components/slot.js +1 -2
  320. package/dist/components/slot.js.map +1 -1
  321. package/dist/components.d.ts +1 -21
  322. package/dist/components.json +596 -227
  323. package/dist/esm/error-messages-1eaaad23.js +115 -0
  324. package/dist/esm/error-messages-1eaaad23.js.map +1 -0
  325. package/dist/esm/{form-control-6b30894f.js → form-control-d403a9cf.js} +2 -2
  326. package/dist/esm/{form-control-6b30894f.js.map → form-control-d403a9cf.js.map} +1 -1
  327. package/dist/esm/{index-17d8173e.js → index-79d4ef67.js} +53 -490
  328. package/dist/esm/index-79d4ef67.js.map +1 -0
  329. package/dist/esm/index.js +51 -100
  330. package/dist/esm/index.js.map +1 -1
  331. package/dist/esm/loader.js +3 -3
  332. package/dist/esm/{popup-e8049817.js → popup-7209e9d5.js} +2 -2
  333. package/dist/esm/popup-7209e9d5.js.map +1 -0
  334. package/dist/esm/six-alert.entry.js +26 -3
  335. package/dist/esm/six-alert.entry.js.map +1 -1
  336. package/dist/esm/six-avatar.entry.js +2 -2
  337. package/dist/esm/six-avatar.entry.js.map +1 -1
  338. package/dist/esm/six-badge.entry.js +2 -2
  339. package/dist/esm/six-badge.entry.js.map +1 -1
  340. package/dist/esm/six-button.entry.js +3 -3
  341. package/dist/esm/six-button.entry.js.map +1 -1
  342. package/dist/esm/six-card.entry.js +2 -2
  343. package/dist/esm/six-card.entry.js.map +1 -1
  344. package/dist/esm/six-checkbox_2.entry.js +185 -0
  345. package/dist/esm/six-checkbox_2.entry.js.map +1 -0
  346. package/dist/esm/six-datepicker.entry.js +5 -4
  347. package/dist/esm/six-datepicker.entry.js.map +1 -1
  348. package/dist/esm/six-details.entry.js +2 -2
  349. package/dist/esm/six-details.entry.js.map +1 -1
  350. package/dist/esm/six-dialog.entry.js +3 -3
  351. package/dist/esm/six-dialog.entry.js.map +1 -1
  352. package/dist/esm/six-drawer.entry.js +3 -3
  353. package/dist/esm/six-drawer.entry.js.map +1 -1
  354. package/dist/esm/six-dropdown_2.entry.js +198 -126
  355. package/dist/esm/six-dropdown_2.entry.js.map +1 -1
  356. package/dist/esm/six-error-page.entry.js +1 -1
  357. package/dist/esm/six-error.entry.js +1 -1
  358. package/dist/esm/six-file-list-item.entry.js +2 -2
  359. package/dist/esm/six-file-list-item.entry.js.map +1 -1
  360. package/dist/esm/six-file-list.entry.js +1 -1
  361. package/dist/esm/six-file-upload.entry.js +2 -2
  362. package/dist/esm/six-file-upload.entry.js.map +1 -1
  363. package/dist/esm/six-footer.entry.js +2 -2
  364. package/dist/esm/six-footer.entry.js.map +1 -1
  365. package/dist/esm/six-group-label.entry.js +4 -4
  366. package/dist/esm/six-group-label.entry.js.map +1 -1
  367. package/dist/esm/six-header.entry.js +24 -9
  368. package/dist/esm/six-header.entry.js.map +1 -1
  369. package/dist/esm/six-icon-button.entry.js +2 -2
  370. package/dist/esm/six-icon-button.entry.js.map +1 -1
  371. package/dist/esm/six-icon.entry.js +2 -2
  372. package/dist/esm/six-icon.entry.js.map +1 -1
  373. package/dist/esm/six-input.entry.js +6 -4
  374. package/dist/esm/six-input.entry.js.map +1 -1
  375. package/dist/esm/six-item-picker.entry.js +2 -2
  376. package/dist/esm/six-item-picker.entry.js.map +1 -1
  377. package/dist/esm/six-language-switcher.entry.js +1 -1
  378. package/dist/esm/six-layout-grid.entry.js +1 -1
  379. package/dist/esm/six-main-container.entry.js +1 -1
  380. package/dist/esm/six-main-container.entry.js.map +1 -1
  381. package/dist/esm/six-menu-divider.entry.js +2 -2
  382. package/dist/esm/six-menu-divider.entry.js.map +1 -1
  383. package/dist/esm/six-menu-label.entry.js +2 -2
  384. package/dist/esm/six-menu-label.entry.js.map +1 -1
  385. package/dist/esm/six-picto.entry.js +1 -1
  386. package/dist/esm/six-progress-bar.entry.js +2 -2
  387. package/dist/esm/six-progress-bar.entry.js.map +1 -1
  388. package/dist/esm/six-progress-ring.entry.js +2 -2
  389. package/dist/esm/six-progress-ring.entry.js.map +1 -1
  390. package/dist/esm/six-radio.entry.js +2 -2
  391. package/dist/esm/six-radio.entry.js.map +1 -1
  392. package/dist/esm/six-range.entry.js +4 -4
  393. package/dist/esm/six-range.entry.js.map +1 -1
  394. package/dist/esm/six-root.entry.js +2 -21
  395. package/dist/esm/six-root.entry.js.map +1 -1
  396. package/dist/esm/six-search-field.entry.js +2 -2
  397. package/dist/esm/six-search-field.entry.js.map +1 -1
  398. package/dist/esm/six-select.entry.js +300 -169
  399. package/dist/esm/six-select.entry.js.map +1 -1
  400. package/dist/esm/six-sidebar-item-group.entry.js +3 -3
  401. package/dist/esm/six-sidebar-item-group.entry.js.map +1 -1
  402. package/dist/esm/six-sidebar-item.entry.js +1 -1
  403. package/dist/esm/six-sidebar.entry.js +2 -2
  404. package/dist/esm/six-sidebar.entry.js.map +1 -1
  405. package/dist/esm/six-spinner.entry.js +3 -3
  406. package/dist/esm/six-spinner.entry.js.map +1 -1
  407. package/dist/esm/six-stage-indicator.entry.js +18 -0
  408. package/dist/esm/six-stage-indicator.entry.js.map +1 -0
  409. package/dist/esm/six-switch.entry.js +4 -4
  410. package/dist/esm/six-switch.entry.js.map +1 -1
  411. package/dist/esm/six-tab-group.entry.js +2 -2
  412. package/dist/esm/six-tab-group.entry.js.map +1 -1
  413. package/dist/esm/six-tab-panel.entry.js +2 -2
  414. package/dist/esm/six-tab-panel.entry.js.map +1 -1
  415. package/dist/esm/six-tab.entry.js +2 -2
  416. package/dist/esm/six-tab.entry.js.map +1 -1
  417. package/dist/esm/six-tag.entry.js +3 -3
  418. package/dist/esm/six-tag.entry.js.map +1 -1
  419. package/dist/esm/six-textarea.entry.js +4 -4
  420. package/dist/esm/six-textarea.entry.js.map +1 -1
  421. package/dist/esm/six-tile.entry.js +3 -3
  422. package/dist/esm/six-tile.entry.js.map +1 -1
  423. package/dist/esm/six-timepicker.entry.js +5 -5
  424. package/dist/esm/six-timepicker.entry.js.map +1 -1
  425. package/dist/esm/six-tooltip.entry.js +2 -2
  426. package/dist/esm/six-tooltip.entry.js.map +1 -1
  427. package/dist/esm/{slot-41bc439a.js → slot-56531341.js} +2 -3
  428. package/dist/esm/slot-56531341.js.map +1 -0
  429. package/dist/esm/{types-07748c42.js → types-a07bb999.js} +3 -1
  430. package/dist/esm/types-a07bb999.js.map +1 -0
  431. package/dist/esm/ui-library.js +4 -4
  432. package/dist/esm/ui-library.js.map +1 -1
  433. package/dist/types/components/six-alert/six-alert.d.ts +5 -2
  434. package/dist/types/components/six-dropdown/six-dropdown.d.ts +28 -9
  435. package/dist/types/components/six-header/six-header.d.ts +5 -1
  436. package/dist/types/components/six-input/six-input.d.ts +4 -0
  437. package/dist/types/components/six-menu/six-menu.d.ts +4 -0
  438. package/dist/types/components/six-menu-item/six-menu-item.d.ts +7 -1
  439. package/dist/types/components/six-root/six-root.d.ts +0 -13
  440. package/dist/types/components/six-select/six-select.d.ts +27 -12
  441. package/dist/types/components/six-spinner/six-spinner.d.ts +1 -0
  442. package/dist/types/components.d.ts +68 -56
  443. package/dist/types/index.d.ts +1 -0
  444. package/dist/types/types.d.ts +1 -0
  445. package/dist/types/utils/alert.d.ts +10 -0
  446. package/dist/types/utils/error-messages.d.ts +1 -0
  447. package/dist/types/utils/slot.d.ts +0 -1
  448. package/dist/ui-library/index.esm.js +1 -1
  449. package/dist/ui-library/index.esm.js.map +1 -1
  450. package/dist/ui-library/p-0440335d.entry.js +2 -0
  451. package/dist/ui-library/{p-c12a94ce.entry.js.map → p-0440335d.entry.js.map} +1 -1
  452. package/dist/ui-library/p-04cc397c.entry.js +2 -0
  453. package/dist/ui-library/{p-58661675.entry.js.map → p-04cc397c.entry.js.map} +1 -1
  454. package/dist/ui-library/p-0cebf1d2.js +2 -0
  455. package/dist/ui-library/p-0cebf1d2.js.map +1 -0
  456. package/dist/ui-library/p-0edd3091.entry.js +2 -0
  457. package/dist/ui-library/{p-c021a9c9.entry.js.map → p-0edd3091.entry.js.map} +1 -1
  458. package/dist/ui-library/p-150b7664.entry.js +2 -0
  459. package/dist/ui-library/{p-a4e4620c.entry.js.map → p-150b7664.entry.js.map} +1 -1
  460. package/dist/ui-library/{p-c86aa5b3.entry.js → p-1f5840b5.entry.js} +2 -2
  461. package/dist/ui-library/p-28cc013e.entry.js +2 -0
  462. package/dist/ui-library/p-28cc013e.entry.js.map +1 -0
  463. package/dist/ui-library/p-3424bbc0.entry.js +2 -0
  464. package/dist/ui-library/p-3424bbc0.entry.js.map +1 -0
  465. package/dist/ui-library/p-348c68a8.entry.js +2 -0
  466. package/dist/ui-library/p-348c68a8.entry.js.map +1 -0
  467. package/dist/ui-library/p-3723ca06.entry.js +2 -0
  468. package/dist/ui-library/p-3723ca06.entry.js.map +1 -0
  469. package/dist/ui-library/p-37aeac5e.entry.js +2 -0
  470. package/dist/ui-library/{p-19a61686.entry.js.map → p-37aeac5e.entry.js.map} +1 -1
  471. package/dist/ui-library/p-3d7fb086.entry.js +2 -0
  472. package/dist/ui-library/p-3d7fb086.entry.js.map +1 -0
  473. package/dist/ui-library/{p-74a714c0.entry.js → p-457f7373.entry.js} +2 -2
  474. package/dist/ui-library/{p-74a714c0.entry.js.map → p-457f7373.entry.js.map} +1 -1
  475. package/dist/ui-library/p-4a667f31.entry.js +2 -0
  476. package/dist/ui-library/p-4a667f31.entry.js.map +1 -0
  477. package/dist/ui-library/p-50dae789.entry.js +2 -0
  478. package/dist/ui-library/{p-6aa2929a.entry.js.map → p-50dae789.entry.js.map} +1 -1
  479. package/dist/ui-library/{p-c1675a45.entry.js → p-546e33d9.entry.js} +2 -2
  480. package/dist/ui-library/{p-1d0c5929.entry.js → p-5db3a705.entry.js} +2 -2
  481. package/dist/ui-library/{p-1d0c5929.entry.js.map → p-5db3a705.entry.js.map} +1 -1
  482. package/dist/ui-library/{p-6907a7dc.js → p-61e66671.js} +2 -2
  483. package/dist/ui-library/p-6296779b.entry.js +2 -0
  484. package/dist/ui-library/{p-bdb79948.entry.js.map → p-6296779b.entry.js.map} +1 -1
  485. package/dist/ui-library/p-64b4755d.entry.js +2 -0
  486. package/dist/ui-library/{p-3187bc23.entry.js.map → p-64b4755d.entry.js.map} +1 -1
  487. package/dist/ui-library/p-6c1b046e.entry.js +2 -0
  488. package/dist/ui-library/p-6c1b046e.entry.js.map +1 -0
  489. package/dist/ui-library/p-7115316e.entry.js +2 -0
  490. package/dist/ui-library/p-7115316e.entry.js.map +1 -0
  491. package/dist/ui-library/{p-0861899a.js → p-862d474e.js} +1 -1
  492. package/dist/ui-library/p-862d474e.js.map +1 -0
  493. package/dist/ui-library/p-870b988d.entry.js +2 -0
  494. package/dist/ui-library/{p-479d8087.entry.js.map → p-870b988d.entry.js.map} +1 -1
  495. package/dist/ui-library/{p-d310a6dd.entry.js → p-884c5cf9.entry.js} +2 -2
  496. package/dist/ui-library/p-8888a367.entry.js +2 -0
  497. package/dist/ui-library/{p-ee71e3a3.entry.js.map → p-8888a367.entry.js.map} +1 -1
  498. package/dist/ui-library/{p-816f857d.entry.js → p-935c78a7.entry.js} +2 -2
  499. package/dist/ui-library/p-961bd001.entry.js +2 -0
  500. package/dist/ui-library/{p-fcd57e0a.entry.js.map → p-961bd001.entry.js.map} +1 -1
  501. package/dist/ui-library/{p-bee65dd9.entry.js → p-9b08068d.entry.js} +2 -2
  502. package/dist/ui-library/p-9b08068d.entry.js.map +1 -0
  503. package/dist/ui-library/p-9c79341d.entry.js +2 -0
  504. package/dist/ui-library/{p-3d54ecf2.entry.js.map → p-9c79341d.entry.js.map} +1 -1
  505. package/dist/ui-library/{p-cd35b3c6.entry.js → p-a9c159f2.entry.js} +2 -2
  506. package/dist/ui-library/p-ac57ba5c.entry.js +2 -0
  507. package/dist/ui-library/{p-ada23fe3.entry.js.map → p-ac57ba5c.entry.js.map} +1 -1
  508. package/dist/ui-library/p-ae45f6f4.entry.js +2 -0
  509. package/dist/ui-library/p-ae45f6f4.entry.js.map +1 -0
  510. package/dist/ui-library/p-af15381b.js +3 -0
  511. package/dist/ui-library/p-af15381b.js.map +1 -0
  512. package/dist/ui-library/p-b1a5f3cd.entry.js +2 -0
  513. package/dist/ui-library/p-b1a5f3cd.entry.js.map +1 -0
  514. package/dist/ui-library/p-b385a241.entry.js +2 -0
  515. package/dist/ui-library/{p-b5ac1219.entry.js.map → p-b385a241.entry.js.map} +1 -1
  516. package/dist/ui-library/p-bf2fb53f.entry.js +2 -0
  517. package/dist/ui-library/p-bf2fb53f.entry.js.map +1 -0
  518. package/dist/ui-library/p-c2c7370b.entry.js +2 -0
  519. package/dist/ui-library/{p-911eb578.entry.js.map → p-c2c7370b.entry.js.map} +1 -1
  520. package/dist/ui-library/p-caea1eb6.entry.js +2 -0
  521. package/dist/ui-library/{p-d6838141.entry.js.map → p-caea1eb6.entry.js.map} +1 -1
  522. package/dist/ui-library/{p-d2cf4280.entry.js → p-d3f5b9a8.entry.js} +2 -2
  523. package/dist/ui-library/p-d42b18eb.entry.js +2 -0
  524. package/dist/ui-library/{p-7432d409.entry.js.map → p-d42b18eb.entry.js.map} +1 -1
  525. package/dist/ui-library/p-d769cc36.entry.js +2 -0
  526. package/dist/ui-library/p-d769cc36.entry.js.map +1 -0
  527. package/dist/ui-library/p-d95e292e.entry.js +2 -0
  528. package/dist/ui-library/{p-c07b1240.entry.js.map → p-d95e292e.entry.js.map} +1 -1
  529. package/dist/ui-library/p-da7f3dbd.entry.js +2 -0
  530. package/dist/ui-library/p-da7f3dbd.entry.js.map +1 -0
  531. package/dist/ui-library/p-dfb89b6a.entry.js +2 -0
  532. package/dist/ui-library/p-dfb89b6a.entry.js.map +1 -0
  533. package/dist/ui-library/p-e080d5b6.js +2 -0
  534. package/dist/ui-library/p-e080d5b6.js.map +1 -0
  535. package/dist/ui-library/p-e6032375.entry.js +2 -0
  536. package/dist/ui-library/p-e6032375.entry.js.map +1 -0
  537. package/dist/ui-library/p-e60d2324.entry.js +2 -0
  538. package/dist/ui-library/p-e60d2324.entry.js.map +1 -0
  539. package/dist/ui-library/p-e8298c6e.entry.js +2 -0
  540. package/dist/ui-library/{p-882fbf6f.entry.js.map → p-e8298c6e.entry.js.map} +1 -1
  541. package/dist/ui-library/p-ed279165.entry.js +2 -0
  542. package/dist/ui-library/p-ed279165.entry.js.map +1 -0
  543. package/dist/ui-library/p-ed61b75c.entry.js +2 -0
  544. package/dist/ui-library/p-ed61b75c.entry.js.map +1 -0
  545. package/dist/ui-library/p-ee872c04.entry.js +2 -0
  546. package/dist/ui-library/p-ee872c04.entry.js.map +1 -0
  547. package/dist/ui-library/p-f136a6b2.js +2 -0
  548. package/dist/ui-library/p-f136a6b2.js.map +1 -0
  549. package/dist/ui-library/p-f1ab3384.entry.js +2 -0
  550. package/dist/ui-library/{p-23c02c98.entry.js.map → p-f1ab3384.entry.js.map} +1 -1
  551. package/dist/ui-library/p-f4ef481c.entry.js +2 -0
  552. package/dist/ui-library/p-f4ef481c.entry.js.map +1 -0
  553. package/dist/ui-library/{p-f73a6bdc.entry.js → p-f8cbb8da.entry.js} +2 -2
  554. package/dist/ui-library/ui-library.css +1 -10
  555. package/dist/ui-library/ui-library.esm.js +1 -1
  556. package/dist/ui-library/ui-library.esm.js.map +1 -1
  557. package/package.json +5 -8
  558. package/dist/cjs/index-3baddcdc.js.map +0 -1
  559. package/dist/cjs/popup-40a9adbb.js.map +0 -1
  560. package/dist/cjs/set-attributes_2.cjs.entry.js +0 -73
  561. package/dist/cjs/set-attributes_2.cjs.entry.js.map +0 -1
  562. package/dist/cjs/six-checkbox.cjs.entry.js +0 -127
  563. package/dist/cjs/six-checkbox.cjs.entry.js.map +0 -1
  564. package/dist/cjs/six-menu-item.cjs.entry.js +0 -63
  565. package/dist/cjs/six-menu-item.cjs.entry.js.map +0 -1
  566. package/dist/cjs/slot-9821749e.js.map +0 -1
  567. package/dist/cjs/types-0a6d66f6.js.map +0 -1
  568. package/dist/collection/wrappers/set-attributes/set-attributes.js +0 -74
  569. package/dist/collection/wrappers/set-attributes/set-attributes.js.map +0 -1
  570. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js +0 -16
  571. package/dist/collection/wrappers/set-attributes/test/set-attributes.spec.js.map +0 -1
  572. package/dist/components/set-attributes.d.ts +0 -11
  573. package/dist/components/set-attributes.js +0 -8
  574. package/dist/components/set-attributes.js.map +0 -1
  575. package/dist/components/set-attributes2.js +0 -73
  576. package/dist/components/set-attributes2.js.map +0 -1
  577. package/dist/components/six-tag2.js +0 -102
  578. package/dist/components/six-tag2.js.map +0 -1
  579. package/dist/esm/index-17d8173e.js.map +0 -1
  580. package/dist/esm/popup-e8049817.js.map +0 -1
  581. package/dist/esm/set-attributes_2.entry.js +0 -68
  582. package/dist/esm/set-attributes_2.entry.js.map +0 -1
  583. package/dist/esm/six-checkbox.entry.js +0 -123
  584. package/dist/esm/six-checkbox.entry.js.map +0 -1
  585. package/dist/esm/six-menu-item.entry.js +0 -59
  586. package/dist/esm/six-menu-item.entry.js.map +0 -1
  587. package/dist/esm/slot-41bc439a.js.map +0 -1
  588. package/dist/esm/types-07748c42.js.map +0 -1
  589. package/dist/types/wrappers/set-attributes/set-attributes.d.ts +0 -9
  590. package/dist/ui-library/p-0861899a.js.map +0 -1
  591. package/dist/ui-library/p-0a81b42c.entry.js +0 -2
  592. package/dist/ui-library/p-0a81b42c.entry.js.map +0 -1
  593. package/dist/ui-library/p-0beec94f.js +0 -3
  594. package/dist/ui-library/p-0beec94f.js.map +0 -1
  595. package/dist/ui-library/p-100d5a25.entry.js +0 -2
  596. package/dist/ui-library/p-100d5a25.entry.js.map +0 -1
  597. package/dist/ui-library/p-178f5782.entry.js +0 -2
  598. package/dist/ui-library/p-178f5782.entry.js.map +0 -1
  599. package/dist/ui-library/p-19a61686.entry.js +0 -2
  600. package/dist/ui-library/p-23c02c98.entry.js +0 -2
  601. package/dist/ui-library/p-2eed9d8d.entry.js +0 -2
  602. package/dist/ui-library/p-2eed9d8d.entry.js.map +0 -1
  603. package/dist/ui-library/p-2f9f2532.entry.js +0 -2
  604. package/dist/ui-library/p-2f9f2532.entry.js.map +0 -1
  605. package/dist/ui-library/p-3187bc23.entry.js +0 -2
  606. package/dist/ui-library/p-32e1a5ab.entry.js +0 -2
  607. package/dist/ui-library/p-32e1a5ab.entry.js.map +0 -1
  608. package/dist/ui-library/p-3d54ecf2.entry.js +0 -2
  609. package/dist/ui-library/p-4229f7e8.entry.js +0 -2
  610. package/dist/ui-library/p-4229f7e8.entry.js.map +0 -1
  611. package/dist/ui-library/p-479d8087.entry.js +0 -2
  612. package/dist/ui-library/p-49aa8d1e.entry.js +0 -2
  613. package/dist/ui-library/p-49aa8d1e.entry.js.map +0 -1
  614. package/dist/ui-library/p-58661675.entry.js +0 -2
  615. package/dist/ui-library/p-5d43ea07.entry.js +0 -2
  616. package/dist/ui-library/p-5d43ea07.entry.js.map +0 -1
  617. package/dist/ui-library/p-6aa2929a.entry.js +0 -2
  618. package/dist/ui-library/p-7432d409.entry.js +0 -2
  619. package/dist/ui-library/p-76825395.entry.js +0 -2
  620. package/dist/ui-library/p-76825395.entry.js.map +0 -1
  621. package/dist/ui-library/p-882fbf6f.entry.js +0 -2
  622. package/dist/ui-library/p-88fd4973.entry.js +0 -2
  623. package/dist/ui-library/p-88fd4973.entry.js.map +0 -1
  624. package/dist/ui-library/p-8b750c9e.entry.js +0 -2
  625. package/dist/ui-library/p-8b750c9e.entry.js.map +0 -1
  626. package/dist/ui-library/p-911eb578.entry.js +0 -2
  627. package/dist/ui-library/p-93fcda4a.entry.js +0 -2
  628. package/dist/ui-library/p-93fcda4a.entry.js.map +0 -1
  629. package/dist/ui-library/p-981b3228.entry.js +0 -2
  630. package/dist/ui-library/p-981b3228.entry.js.map +0 -1
  631. package/dist/ui-library/p-9b1ff147.entry.js +0 -2
  632. package/dist/ui-library/p-9b1ff147.entry.js.map +0 -1
  633. package/dist/ui-library/p-a4e4620c.entry.js +0 -2
  634. package/dist/ui-library/p-ada23fe3.entry.js +0 -2
  635. package/dist/ui-library/p-b5ac1219.entry.js +0 -2
  636. package/dist/ui-library/p-ba247565.entry.js +0 -2
  637. package/dist/ui-library/p-ba247565.entry.js.map +0 -1
  638. package/dist/ui-library/p-bdb79948.entry.js +0 -2
  639. package/dist/ui-library/p-bee65dd9.entry.js.map +0 -1
  640. package/dist/ui-library/p-c021a9c9.entry.js +0 -2
  641. package/dist/ui-library/p-c07b1240.entry.js +0 -2
  642. package/dist/ui-library/p-c12a94ce.entry.js +0 -2
  643. package/dist/ui-library/p-c2df8c27.entry.js +0 -2
  644. package/dist/ui-library/p-c2df8c27.entry.js.map +0 -1
  645. package/dist/ui-library/p-d6838141.entry.js +0 -2
  646. package/dist/ui-library/p-dc908cbb.entry.js +0 -2
  647. package/dist/ui-library/p-dc908cbb.entry.js.map +0 -1
  648. package/dist/ui-library/p-dfb6bff6.entry.js +0 -2
  649. package/dist/ui-library/p-dfb6bff6.entry.js.map +0 -1
  650. package/dist/ui-library/p-ee71e3a3.entry.js +0 -2
  651. package/dist/ui-library/p-ef317d69.entry.js +0 -2
  652. package/dist/ui-library/p-ef317d69.entry.js.map +0 -1
  653. package/dist/ui-library/p-f2ef23c4.js +0 -2
  654. package/dist/ui-library/p-f2ef23c4.js.map +0 -1
  655. package/dist/ui-library/p-f385f1c2.entry.js +0 -2
  656. package/dist/ui-library/p-f385f1c2.entry.js.map +0 -1
  657. package/dist/ui-library/p-faa04bb5.js +0 -2
  658. package/dist/ui-library/p-faa04bb5.js.map +0 -1
  659. package/dist/ui-library/p-fcd57e0a.entry.js +0 -2
  660. /package/dist/ui-library/{p-c86aa5b3.entry.js.map → p-1f5840b5.entry.js.map} +0 -0
  661. /package/dist/ui-library/{p-c1675a45.entry.js.map → p-546e33d9.entry.js.map} +0 -0
  662. /package/dist/ui-library/{p-6907a7dc.js.map → p-61e66671.js.map} +0 -0
  663. /package/dist/ui-library/{p-d310a6dd.entry.js.map → p-884c5cf9.entry.js.map} +0 -0
  664. /package/dist/ui-library/{p-816f857d.entry.js.map → p-935c78a7.entry.js.map} +0 -0
  665. /package/dist/ui-library/{p-cd35b3c6.entry.js.map → p-a9c159f2.entry.js.map} +0 -0
  666. /package/dist/ui-library/{p-d2cf4280.entry.js.map → p-d3f5b9a8.entry.js.map} +0 -0
  667. /package/dist/ui-library/{p-f73a6bdc.entry.js.map → p-f8cbb8da.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"six-timepicker.js","sourceRoot":"","sources":["../../../src/components/six-timepicker/six-timepicker.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Listen, Method, Prop, State, Watch } from '@stencil/core';\nimport { ItemPickerType } from '../six-item-picker/types';\nimport {\n createTimeString,\n getCurrentTime,\n isValidTimeString,\n parseTimeString,\n Time,\n TimeFormat,\n TimeProperties,\n} from '../../utils/time.util';\nimport { debounce, DEFAULT_DEBOUNCE_FAST, DEFAULT_DEBOUNCE_INSANELY_FAST } from '../../utils/execution-control';\nimport { SixItemPickerChangePayload } from '../six-item-picker/six-item-picker';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\nimport { adjustPopupForHoisting, movePopup } from '../../utils/popup';\n\nexport interface SixTimepickerChange {\n value?: Time;\n valueAsString: string;\n changedProperty?: string;\n}\n\ninterface SixTimeUnitPickerParams {\n min?: number;\n max?: number;\n items?: string[];\n type?: ItemPickerType;\n class?: string;\n paddingLength?: number;\n propertyName: TimeProperties;\n}\n\nconst MIN_POPUP_HEIGHT = 145;\n\n/**\n * @since 2.0.0\n * @status experimental\n *\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part input - The input field\n * @part container - The container of whole component\n * @part popup - The popup of the timepicker component\n *\n */\n@Component({\n tag: 'six-timepicker',\n styleUrl: 'six-timepicker.scss',\n shadow: true,\n})\nexport class SixTimepicker {\n private eventListeners = new EventListeners();\n private popup?: HTMLElement;\n private wrapper?: HTMLElement;\n private inputElement?: HTMLSixInputElement;\n\n @Element() host!: HTMLSixTimepickerElement;\n\n /**\n * Define the time format. Valid formats are:\n *\n * HH:mm:ss\n * hh:mm:ss:aa\n * HH:mm:ss:ms\n * hh:mm:ss:ms:aa\n * HH:mm\n * hh:mm:aa\n * HH\n * hh:aa\n * mm\n * ss\n * ms\n *\n * where HH is the 24 hour format\n * and hh is the 12 hour format\n *\n * Please notice that when using the 12-hour-clock (hh)\n * you always need a period indicator (aa). So the time can be parsed as either am or pm\n * */\n @Prop() format: TimeFormat = 'HH:mm:ss';\n\n /**\n * Define the separator to be shown between the time unit pickers.\n * Please be aware that this property will modify the displayed separator only.\n * The separator for a timestring is always expected to be a colon (eg. '13:52:20')\n * */\n @Prop() separator = ':';\n\n /**\n * The value of the timepicker provided as a string. The string mast match the provided format (or default format)\n */\n @Prop({ mutable: true }) value = '';\n\n /** Indicates whether the timepicker dropdown is open on startup. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** Indicates whether the timepicker should be shown as an inline (always open) component */\n @Prop({ reflect: true }) inline = false;\n\n /**\n * If `true` the user can only select a time via the timepicker but not directly edit the input field.\n */\n @Prop() readonly = false;\n\n /**\n * If `true` the component is disabled.\n */\n @Prop() disabled = false;\n\n /**\n * The enforced placement of the dropdown panel.\n */\n @Prop() placement?: 'top' | 'bottom';\n\n /** Timepicker size. */\n @Prop() size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /**\n * The placeholder defines what text to be shown on the input element\n */\n @Prop() placeholder?: string;\n\n /** The input's error text. Alternatively, you can use the error-text slot. */\n @Prop() errorText: string | string[] = '';\n\n /** The number of error texts to be shown (if the error-text slot isn't used). Defaults to 1 */\n @Prop() errorTextCount?: number;\n\n /** The input's label. Alternatively, you can use the label slot. */\n @Prop() label = '';\n\n /** If this property is set to true and an error message is provided by `errorText`, the error message is displayed. */\n @Prop({ reflect: true }) invalid = false;\n\n /** The input's name attribute. */\n @Prop({ reflect: true }) name = '';\n\n /** Set to true to add a clear button when the input is populated. */\n @Prop() clearable = false;\n\n /** Set the position of the icon */\n @Prop() iconPosition: 'left' | 'right' = 'left';\n\n /**\n * Enable this option to prevent the panel from being clipped when the component is placed inside a container with\n * `overflow: auto|scroll`.\n */\n @Prop() hoist = false;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger faster switching between timeunits (e.g. hours).\n */\n @Prop() timeout = DEFAULT_DEBOUNCE_FAST;\n\n /**\n * Set the amount of time, in milliseconds, to wait between switching to next timeunit (e.g. next hour) when mouse button is held pressed.\n */\n @Prop() interval = DEFAULT_DEBOUNCE_INSANELY_FAST;\n\n /**\n * The defaultTime defines the default setting for the timepicker when you open the popup. Default time must match the provided format.\n */\n @Prop() defaultTime?: string;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger the `six-timepicker-change-debounced` event.\n * If you want your change debounce event to not trigger when keeping the nav button pressed before, make sure debounce\n * is a bit bigger than timeout, otherwise keeping the button pressed will trigger the event twice: once you click\n * (and keep pressed) and once you release\n */\n @Prop() debounce = DEFAULT_DEBOUNCE_FAST;\n\n /**\n * Emitted when the timepicker's value changes\n */\n @Event({ eventName: 'six-timepicker-change' }) sixChange!: EventEmitter<SixTimepickerChange>;\n\n /**\n * Emitted when the timepicker's value changes, but debounced\n */\n @Event({ eventName: 'six-timepicker-change-debounced' }) sixChangeDebounced!: EventEmitter<SixTimepickerChange>;\n\n /**\n * Emitted when the clear button is activated.\n */\n @Event({ eventName: 'six-timepicker-clear' }) sixClear!: EventEmitter<EmptyPayload>;\n\n @State() isPopupContentUp = false;\n\n @State() isDropDownContentUp = false;\n\n @Listen('resize', { target: 'window' })\n async resizeHandler() {\n this.calcIsPopupContentUp();\n this.moveOpenHoistedPopup();\n }\n\n @Listen('scroll', { target: 'window' })\n async scrollHandler() {\n this.calcIsPopupContentUp();\n this.moveOpenHoistedPopup();\n }\n\n /**\n * Update the native input element when the value changes\n */\n @Watch('value')\n protected valueChanged() {\n this.updateValue();\n }\n\n /** Sets focus on the datepickers input. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.inputElement?.setFocus(options);\n }\n\n /*\n * Internally the six-timepicker uses a standardized representation of time, so we don't have a mess,\n * when switching between formats\n */\n @State() private popupValue: Time = {};\n\n connectedCallback() {\n this.eventListeners.forward('six-timepicker-change', 'change', this.host);\n }\n\n componentWillLoad() {\n this.updateValue();\n\n if (this.inline) {\n this.open = true;\n }\n\n if (this.open) {\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n }\n }\n\n componentDidLoad() {\n if (this.inputElement == null) return;\n const inputElement = this.inputElement;\n\n // emit debounced change event\n this.eventListeners.add(\n this.host,\n 'six-timepicker-change',\n debounce((event: Event) => this.sixChangeDebounced.emit((event as CustomEvent).detail), this.debounce)\n );\n\n // update value and popup value based on input-element value\n this.eventListeners.add(\n inputElement,\n 'six-input-input',\n debounce((event: Event) => {\n event.stopPropagation();\n\n // emit empty event if time string is invalid\n if (!isValidTimeString(inputElement.value, this.format)) {\n this.value = inputElement.value;\n this.sixChange.emit({\n value: {},\n valueAsString: '',\n });\n return;\n }\n\n // update value and popup value, and emit the new value\n this.value = inputElement.value;\n this.popupValue = parseTimeString(inputElement.value, this.format);\n this.sixChange.emit({\n value: this.popupValue,\n valueAsString: createTimeString(this.popupValue, this.format),\n });\n }, this.debounce)\n );\n }\n\n componentDidRender() {\n adjustPopupForHoisting(\n this.hoist,\n this.popup,\n this.inputElement,\n this.wrapper,\n MIN_POPUP_HEIGHT,\n (isUp) => (this.isDropDownContentUp = isUp)\n );\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n }\n private updateValue() {\n // normalize value\n if (typeof this.value !== 'string' || !isValidTimeString(this.value, this.format)) {\n this.value = '';\n }\n\n // update popup value\n if (this.value === '') {\n if (this.defaultTime == null) {\n this.popupValue = getCurrentTime(this.is24HourClock());\n } else {\n this.popupValue = parseTimeString(this.defaultTime, this.format);\n }\n } else {\n this.popupValue = parseTimeString(this.value, this.format);\n }\n }\n\n private calcIsPopupContentUp() {\n if (this.inputElement == null || this.wrapper == null) {\n return;\n }\n\n const inputBoundingRect = this.inputElement.getBoundingClientRect();\n const wrapperBoundingRect = this.wrapper.getBoundingClientRect();\n const minPopupHeight = Math.max(wrapperBoundingRect.height, MIN_POPUP_HEIGHT);\n\n const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;\n this.isPopupContentUp = moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + minPopupHeight;\n }\n\n private moveOpenHoistedPopup() {\n movePopup(this.hoist, this.open, this.popup, this.inputElement, this.wrapper, MIN_POPUP_HEIGHT);\n }\n\n private handlePickerChange = (event: CustomEvent<SixItemPickerChangePayload>, property: TimeProperties) => {\n // stop propagation, since the timepicker should not expose the events of the underlying item-picker\n event.stopPropagation();\n if (this.popupValue == null) {\n return;\n }\n\n // update the internal state\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n this.popupValue[property] = event.detail;\n\n const timeString = createTimeString(this.popupValue, this.format);\n\n // update the input value\n this.value = timeString;\n\n // emit change event\n this.sixChange.emit({\n changedProperty: property,\n value: this.popupValue,\n valueAsString: timeString,\n });\n };\n\n private getSixTimeUnitPicker(params: SixTimeUnitPickerParams) {\n return (\n <six-item-picker\n class={params.class}\n timeout={this.timeout}\n interval={this.interval}\n padded\n min={params.min}\n max={params.max}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n value={this.popupValue[params.propertyName]}\n items={params.items}\n type={params.type || ItemPickerType.NUMBER}\n padding-length={params.paddingLength}\n onSix-item-picker-change={(event) => this.handlePickerChange(event, params.propertyName)}\n ></six-item-picker>\n );\n }\n\n private getHour24Picker() {\n if (!this.is24HourClock()) {\n return;\n }\n return this.getSixTimeUnitPicker({ min: 0, max: 23, propertyName: 'hours' });\n }\n\n private is24HourClock() {\n return this.format.includes('HH');\n }\n\n private getHour12Picker() {\n if (!this.is12HourClock()) {\n return;\n }\n return this.getSixTimeUnitPicker({ min: 0, max: 11, propertyName: 'hours' });\n }\n\n private is12HourClock() {\n return this.format.includes('hh');\n }\n\n private getAmPmPicker() {\n if (!this.is12HourClock()) {\n return;\n }\n const items = ['AM', 'PM'];\n return this.getSixTimeUnitPicker({\n items,\n type: ItemPickerType.CUSTOM,\n propertyName: 'period',\n });\n }\n\n private getMinutePicker() {\n if (!this.format.includes('mm')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({ min: 0, max: 59, propertyName: 'minutes' });\n }\n\n private getSecondsPicker() {\n if (!this.format.includes('ss')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({ min: 0, max: 59, propertyName: 'seconds' });\n }\n\n private getMillisecondsPicker() {\n if (!this.format.includes('ms')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({\n min: 0,\n max: 999,\n class: 'timepicker__item--wide',\n paddingLength: 3,\n propertyName: 'milliseconds',\n });\n }\n\n private getSeparator() {\n return (\n <div class=\"timepicker__separator\">\n <span>{this.separator}</span>\n </div>\n );\n }\n\n private getContent() {\n const elementsInOrder = [\n this.getHour24Picker(),\n this.getHour12Picker(),\n this.getMinutePicker(),\n this.getSecondsPicker(),\n this.getMillisecondsPicker(),\n ];\n\n const visibleElements = elementsInOrder.filter((el) => el !== undefined);\n\n return visibleElements.map((el, idx) => {\n if (idx === visibleElements.length - 1) {\n return [el];\n }\n\n return [el, this.getSeparator()];\n });\n }\n\n private openPopup() {\n if (!this.open && !this.disabled) {\n this.open = true;\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n }\n }\n\n private closePopup() {\n if (this.inline) {\n return;\n }\n\n this.open = false;\n this.eventListeners.remove(document, 'mousedown', this.handleDocumentMouseDown);\n }\n\n private handleDocumentMouseDown = (event: Event) => {\n // Close when clicking outside the containing element\n const path = event.composedPath() as EventTarget[];\n if (!path.includes(this.host)) {\n this.closePopup();\n return;\n }\n };\n\n private handleClearClick = (event: MouseEvent) => {\n event.stopPropagation();\n this.value = '';\n this.sixClear.emit();\n this.sixChange.emit({\n value: {},\n valueAsString: '',\n });\n };\n\n private renderClearable() {\n return (\n this.clearable && (\n <button\n slot=\"suffix\"\n class={{\n timepicker_clear: true,\n 'timepicker_clear--right': this.iconPosition === 'left',\n 'timepicker_clear--left': this.iconPosition === 'right',\n }}\n type=\"button\"\n onClick={this.handleClearClick}\n tabindex=\"-1\"\n >\n <six-icon size=\"small\">clear</six-icon>\n </button>\n )\n );\n }\n\n private renderCustomIcon() {\n const icon = hasSlot(this.host, 'custom-icon') ? (\n <slot name=\"custom-icon\"></slot>\n ) : (\n <six-icon size={this.size === 'large' ? 'medium' : this.size}>watch_later</six-icon>\n );\n\n return (\n <span\n slot=\"prefix\"\n part=\"icon\"\n class={{\n prefix: true,\n 'prefix--right': this.iconPosition === 'right',\n }}\n >\n {icon}\n </span>\n );\n }\n\n render() {\n return (\n <div part=\"container\" ref={(el) => (this.wrapper = el)} class=\"timepicker__container\">\n <six-input\n ref={(el) => (this.inputElement = el)}\n part=\"input\"\n onClick={() => this.openPopup()}\n value={this.value}\n placeholder={this.placeholder}\n readonly={this.readonly}\n disabled={this.disabled}\n errorTextCount={this.errorTextCount}\n errorText={this.errorText}\n invalid={this.invalid}\n size={this.size}\n name={this.name}\n label={this.label}\n required={this.required}\n class={{\n 'input--empty': this.value === '',\n 'input--hide': this.inline,\n }}\n >\n {this.renderCustomIcon()}\n {this.renderClearable()}\n {hasSlot(this.host, 'label') ? (\n <span slot=\"label\">\n <slot name=\"label\" />\n </span>\n ) : null}\n {hasSlot(this.host, 'error-text') ? (\n <span slot=\"error-text\">\n <slot name=\"error-text\" />\n </span>\n ) : null}\n </six-input>\n {this.open && (\n <div\n ref={(el) => (this.popup = el)}\n part=\"popup\"\n class={{\n timepicker__popup: true,\n 'timepicker__popup--is-up': this.placement == null ? this.placement === 'top' : this.isPopupContentUp,\n 'timepicker__popup--is-inline': this.inline,\n }}\n >\n {...this.getContent()}\n {this.getAmPmPicker()}\n </div>\n )}\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"six-timepicker.js","sourceRoot":"","sources":["../../../src/components/six-timepicker/six-timepicker.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, h, Listen, Method, Prop, State, Watch } from '@stencil/core';\nimport { ItemPickerType } from '../six-item-picker/types';\nimport {\n createTimeString,\n getCurrentTime,\n isValidTimeString,\n parseTimeString,\n Time,\n TimeFormat,\n TimeProperties,\n} from '../../utils/time.util';\nimport { debounce, DEFAULT_DEBOUNCE_FAST, DEFAULT_DEBOUNCE_INSANELY_FAST } from '../../utils/execution-control';\nimport { SixItemPickerChangePayload } from '../six-item-picker/six-item-picker';\nimport { EventListeners } from '../../utils/event-listeners';\nimport { hasSlot } from '../../utils/slot';\nimport { EmptyPayload } from '../../utils/types';\nimport { adjustPopupForHoisting, movePopup } from '../../utils/popup';\n\nexport interface SixTimepickerChange {\n value?: Time;\n valueAsString: string;\n changedProperty?: string;\n}\n\ninterface SixTimeUnitPickerParams {\n min?: number;\n max?: number;\n items?: string[];\n type?: ItemPickerType;\n class?: string;\n paddingLength?: number;\n propertyName: TimeProperties;\n}\n\nconst MIN_POPUP_HEIGHT = 145;\n\n/**\n * @since 2.0.0\n * @status experimental\n *\n * @slot error-text - Error text that is shown for validation errors. Alternatively, you can use the error-text prop.\n *\n * @part input - The input field\n * @part container - The container of whole component\n * @part popup - The popup of the timepicker component\n *\n */\n@Component({\n tag: 'six-timepicker',\n styleUrl: 'six-timepicker.scss',\n shadow: true,\n})\nexport class SixTimepicker {\n private eventListeners = new EventListeners();\n private popup?: HTMLElement;\n private wrapper?: HTMLElement;\n private inputElement?: HTMLSixInputElement;\n\n @Element() host!: HTMLSixTimepickerElement;\n\n /**\n * Define the time format. Valid formats are:\n *\n * HH:mm:ss\n * hh:mm:ss:aa\n * HH:mm:ss:ms\n * hh:mm:ss:ms:aa\n * HH:mm\n * hh:mm:aa\n * HH\n * hh:aa\n * mm\n * ss\n * ms\n *\n * where HH is the 24 hour format\n * and hh is the 12 hour format\n *\n * Please notice that when using the 12-hour-clock (hh)\n * you always need a period indicator (aa). So the time can be parsed as either am or pm\n * */\n @Prop() format: TimeFormat = 'HH:mm:ss';\n\n /**\n * Define the separator to be shown between the time unit pickers.\n * Please be aware that this property will modify the displayed separator only.\n * The separator for a timestring is always expected to be a colon (eg. '13:52:20')\n * */\n @Prop() separator = ':';\n\n /**\n * The value of the timepicker provided as a string. The string mast match the provided format (or default format)\n */\n @Prop({ mutable: true }) value = '';\n\n /** Indicates whether the timepicker dropdown is open on startup. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** Indicates whether the timepicker should be shown as an inline (always open) component */\n @Prop({ reflect: true }) inline = false;\n\n /**\n * If `true` the user can only select a time via the timepicker but not directly edit the input field.\n */\n @Prop() readonly = false;\n\n /**\n * If `true` the component is disabled.\n */\n @Prop() disabled = false;\n\n /**\n * The enforced placement of the dropdown panel.\n */\n @Prop() placement?: 'top' | 'bottom';\n\n /** Timepicker size. */\n @Prop() size: 'small' | 'medium' | 'large' = 'medium';\n\n /** Set to true to show an asterisk beneath the label. */\n @Prop() required = false;\n\n /**\n * The placeholder defines what text to be shown on the input element\n */\n @Prop() placeholder?: string;\n\n /** The input's error text. Alternatively, you can use the error-text slot. */\n @Prop() errorText: string | string[] = '';\n\n /** The number of error texts to be shown (if the error-text slot isn't used). Defaults to 1 */\n @Prop() errorTextCount?: number;\n\n /** The input's label. Alternatively, you can use the label slot. */\n @Prop() label = '';\n\n /** If this property is set to true and an error message is provided by `errorText`, the error message is displayed. */\n @Prop({ reflect: true }) invalid = false;\n\n /** The input's name attribute. */\n @Prop({ reflect: true }) name = '';\n\n /** Set to true to add a clear button when the input is populated. */\n @Prop() clearable = false;\n\n /** Set the position of the icon */\n @Prop() iconPosition: 'left' | 'right' = 'left';\n\n /**\n * Enable this option to prevent the panel from being clipped when the component is placed inside a container with\n * `overflow: auto|scroll`.\n */\n @Prop() hoist = false;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger faster switching between timeunits (e.g. hours).\n */\n @Prop() timeout = DEFAULT_DEBOUNCE_FAST;\n\n /**\n * Set the amount of time, in milliseconds, to wait between switching to next timeunit (e.g. next hour) when mouse button is held pressed.\n */\n @Prop() interval = DEFAULT_DEBOUNCE_INSANELY_FAST;\n\n /**\n * The defaultTime defines the default setting for the timepicker when you open the popup. Default time must match the provided format.\n */\n @Prop() defaultTime?: string;\n\n /**\n * Set the amount of time, in milliseconds, to wait to trigger the `six-timepicker-change-debounced` event.\n * If you want your change debounce event to not trigger when keeping the nav button pressed before, make sure debounce\n * is a bit bigger than timeout, otherwise keeping the button pressed will trigger the event twice: once you click\n * (and keep pressed) and once you release\n */\n @Prop() debounce = DEFAULT_DEBOUNCE_FAST;\n\n /**\n * Emitted when the timepicker's value changes\n */\n @Event({ eventName: 'six-timepicker-change' }) sixChange!: EventEmitter<SixTimepickerChange>;\n\n /**\n * Emitted when the timepicker's value changes, but debounced\n */\n @Event({ eventName: 'six-timepicker-change-debounced' }) sixChangeDebounced!: EventEmitter<SixTimepickerChange>;\n\n /**\n * Emitted when the clear button is activated.\n */\n @Event({ eventName: 'six-timepicker-clear' }) sixClear!: EventEmitter<EmptyPayload>;\n\n @State() isPopupContentUp = false;\n\n @State() isDropDownContentUp = false;\n\n @Listen('resize', { target: 'window' })\n async resizeHandler() {\n this.calcIsPopupContentUp();\n this.moveOpenHoistedPopup();\n }\n\n @Listen('scroll', { target: 'window' })\n async scrollHandler() {\n this.calcIsPopupContentUp();\n this.moveOpenHoistedPopup();\n }\n\n /**\n * Update the native input element when the value changes\n */\n @Watch('value')\n protected valueChanged() {\n this.updateValue();\n }\n\n /** Sets focus on the datepickers input. */\n @Method()\n async setFocus(options?: FocusOptions) {\n this.inputElement?.setFocus(options);\n }\n\n /*\n * Internally the six-timepicker uses a standardized representation of time, so we don't have a mess,\n * when switching between formats\n */\n @State() private popupValue: Time = {};\n\n connectedCallback() {\n this.eventListeners.forward('six-timepicker-change', 'change', this.host);\n }\n\n componentWillLoad() {\n this.updateValue();\n\n if (this.inline) {\n this.open = true;\n }\n\n if (this.open) {\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n }\n }\n\n componentDidLoad() {\n if (this.inputElement == null) return;\n const inputElement = this.inputElement;\n\n // emit debounced change event\n this.eventListeners.add(\n this.host,\n 'six-timepicker-change',\n debounce((event: Event) => this.sixChangeDebounced.emit((event as CustomEvent).detail), this.debounce)\n );\n\n // update value and popup value based on input-element value\n this.eventListeners.add(\n inputElement,\n 'six-input-input',\n debounce((event: Event) => {\n event.stopPropagation();\n\n // emit empty event if time string is invalid\n if (!isValidTimeString(inputElement.value, this.format)) {\n this.value = inputElement.value;\n this.sixChange.emit({\n value: {},\n valueAsString: '',\n });\n return;\n }\n\n // update value and popup value, and emit the new value\n this.value = inputElement.value;\n this.popupValue = parseTimeString(inputElement.value, this.format);\n this.sixChange.emit({\n value: this.popupValue,\n valueAsString: createTimeString(this.popupValue, this.format),\n });\n }, this.debounce)\n );\n }\n\n componentDidRender() {\n adjustPopupForHoisting(\n this.hoist,\n this.popup,\n this.inputElement,\n this.wrapper,\n MIN_POPUP_HEIGHT,\n (isUp) => (this.isDropDownContentUp = isUp)\n );\n }\n\n disconnectedCallback() {\n this.eventListeners.removeAll();\n }\n private updateValue() {\n // normalize value\n if (typeof this.value !== 'string' || !isValidTimeString(this.value, this.format)) {\n this.value = '';\n }\n\n // update popup value\n if (this.value === '') {\n if (this.defaultTime == null) {\n this.popupValue = getCurrentTime(this.is24HourClock());\n } else {\n this.popupValue = parseTimeString(this.defaultTime, this.format);\n }\n } else {\n this.popupValue = parseTimeString(this.value, this.format);\n }\n }\n\n private calcIsPopupContentUp() {\n if (this.inputElement == null || this.wrapper == null) {\n return;\n }\n\n const inputBoundingRect = this.inputElement.getBoundingClientRect();\n const wrapperBoundingRect = this.wrapper.getBoundingClientRect();\n const minPopupHeight = Math.max(wrapperBoundingRect.height, MIN_POPUP_HEIGHT);\n\n const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;\n this.isPopupContentUp = moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + minPopupHeight;\n }\n\n private moveOpenHoistedPopup() {\n movePopup(this.hoist, this.open, this.popup, this.inputElement, this.wrapper, MIN_POPUP_HEIGHT);\n }\n\n private handlePickerChange = (event: CustomEvent<SixItemPickerChangePayload>, property: TimeProperties) => {\n // stop propagation, since the timepicker should not expose the events of the underlying item-picker\n event.stopPropagation();\n if (this.popupValue == null) {\n return;\n }\n\n // update the internal state\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n this.popupValue[property] = event.detail;\n\n const timeString = createTimeString(this.popupValue, this.format);\n\n // update the input value\n this.value = timeString;\n\n // emit change event\n this.sixChange.emit({\n changedProperty: property,\n value: this.popupValue,\n valueAsString: timeString,\n });\n };\n\n private getSixTimeUnitPicker(params: SixTimeUnitPickerParams) {\n return (\n <six-item-picker\n class={params.class}\n timeout={this.timeout}\n interval={this.interval}\n padded\n min={params.min}\n max={params.max}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n value={this.popupValue[params.propertyName]}\n items={params.items}\n type={params.type || ItemPickerType.NUMBER}\n padding-length={params.paddingLength}\n onSix-item-picker-change={(event) => this.handlePickerChange(event, params.propertyName)}\n ></six-item-picker>\n );\n }\n\n private getHour24Picker() {\n if (!this.is24HourClock()) {\n return;\n }\n return this.getSixTimeUnitPicker({ min: 0, max: 23, propertyName: 'hours' });\n }\n\n private is24HourClock() {\n return this.format.includes('HH');\n }\n\n private getHour12Picker() {\n if (!this.is12HourClock()) {\n return;\n }\n return this.getSixTimeUnitPicker({ min: 0, max: 11, propertyName: 'hours' });\n }\n\n private is12HourClock() {\n return this.format.includes('hh');\n }\n\n private getAmPmPicker() {\n if (!this.is12HourClock()) {\n return;\n }\n const items = ['AM', 'PM'];\n return this.getSixTimeUnitPicker({\n items,\n type: ItemPickerType.CUSTOM,\n propertyName: 'period',\n });\n }\n\n private getMinutePicker() {\n if (!this.format.includes('mm')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({ min: 0, max: 59, propertyName: 'minutes' });\n }\n\n private getSecondsPicker() {\n if (!this.format.includes('ss')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({ min: 0, max: 59, propertyName: 'seconds' });\n }\n\n private getMillisecondsPicker() {\n if (!this.format.includes('ms')) {\n return;\n }\n\n return this.getSixTimeUnitPicker({\n min: 0,\n max: 999,\n class: 'timepicker__item--wide',\n paddingLength: 3,\n propertyName: 'milliseconds',\n });\n }\n\n private getSeparator() {\n return (\n <div class=\"timepicker__separator\">\n <span>{this.separator}</span>\n </div>\n );\n }\n\n private getContent() {\n const elementsInOrder = [\n this.getHour24Picker(),\n this.getHour12Picker(),\n this.getMinutePicker(),\n this.getSecondsPicker(),\n this.getMillisecondsPicker(),\n ];\n\n const visibleElements = elementsInOrder.filter((el) => el !== undefined);\n\n return visibleElements.map((el, idx) => {\n if (idx === visibleElements.length - 1) {\n return [el];\n }\n\n return [el, this.getSeparator()];\n });\n }\n\n private openPopup() {\n if (!this.open && !this.disabled) {\n this.open = true;\n this.eventListeners.add(document, 'mousedown', this.handleDocumentMouseDown);\n }\n }\n\n private closePopup() {\n if (this.inline) {\n return;\n }\n\n this.open = false;\n this.eventListeners.remove(document, 'mousedown', this.handleDocumentMouseDown);\n }\n\n private handleDocumentMouseDown = (event: Event) => {\n // Close when clicking outside the containing element\n const path = event.composedPath() as EventTarget[];\n if (!path.includes(this.host)) {\n this.closePopup();\n return;\n }\n };\n\n private handleClearClick = (event: MouseEvent) => {\n event.stopPropagation();\n this.value = '';\n this.sixClear.emit();\n this.sixChange.emit({\n value: {},\n valueAsString: '',\n });\n };\n\n private renderClearable() {\n return (\n this.clearable && (\n <button\n slot=\"suffix\"\n class={{\n timepicker_clear: true,\n 'timepicker_clear--right': this.iconPosition === 'left',\n 'timepicker_clear--left': this.iconPosition === 'right',\n }}\n type=\"button\"\n onClick={this.handleClearClick}\n tabindex=\"-1\"\n >\n <six-icon size=\"small\">clear</six-icon>\n </button>\n )\n );\n }\n\n private renderCustomIcon() {\n const icon = hasSlot(this.host, 'custom-icon') ? (\n <slot name=\"custom-icon\"></slot>\n ) : (\n <six-icon size={this.size === 'large' ? 'medium' : this.size}>watch_later</six-icon>\n );\n\n return (\n <span\n slot=\"prefix\"\n part=\"icon\"\n class={{\n prefix: true,\n 'prefix--right': this.iconPosition === 'right',\n }}\n >\n {icon}\n </span>\n );\n }\n\n render() {\n return (\n <div part=\"container\" ref={(el) => (this.wrapper = el)} class=\"timepicker__container\">\n <six-input\n ref={(el) => (this.inputElement = el)}\n part=\"input\"\n onClick={() => this.openPopup()}\n value={this.value}\n placeholder={this.placeholder}\n readonly={this.readonly}\n disabled={this.disabled}\n errorTextCount={this.errorTextCount}\n errorText={this.errorText}\n invalid={this.invalid}\n size={this.size}\n name={this.name}\n label={this.label}\n required={this.required}\n class={{\n 'input--empty': this.value === '',\n 'input--hide': this.inline,\n }}\n >\n {this.renderCustomIcon()}\n {this.renderClearable()}\n {hasSlot(this.host, 'label') ? (\n <span slot=\"label\">\n <slot name=\"label\" />\n </span>\n ) : null}\n {hasSlot(this.host, 'error-text') ? (\n <span slot=\"error-text\">\n <slot name=\"error-text\" />\n </span>\n ) : null}\n </six-input>\n {this.open && (\n <div\n ref={(el) => (this.popup = el)}\n part=\"popup\"\n class={{\n timepicker__popup: true,\n 'timepicker__popup--is-up': this.placement == null ? this.placement === 'top' : this.isPopupContentUp,\n 'timepicker__popup--is-inline': this.inline,\n }}\n >\n {...this.getContent()}\n {this.getAmPmPicker()}\n </div>\n )}\n </div>\n );\n }\n}\n"]}
@@ -3,7 +3,7 @@
3
3
  box-sizing: border-box;
4
4
  }
5
5
  :host *, :host *:before, :host *:after {
6
- box-sizing: inherit;
6
+ box-sizing: border-box;
7
7
  }
8
8
 
9
9
  /**
@@ -1,2 +1,3 @@
1
1
  export * from './utils/error-messages';
2
+ export * from './utils/alert';
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,wBAAwB,CAAC","sourcesContent":["export { Components, JSX } from './components';\nexport * from './utils/error-messages';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC","sourcesContent":["export { Components, JSX } from './components';\nexport * from './utils/error-messages';\nexport * from './utils/alert';\n"]}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Displays an alert on the toast stack with a specified message and optional configuration.
3
+ *
4
+ * @param message - The message to be displayed in the alert.
5
+ * @param alertType - The type of the alert. Valid values are 'primary', 'info', 'success', 'warning', 'danger'. Default is 'info'.
6
+ * @param duration - The duration in milliseconds for which the alert is displayed. If not provided, a default duration is set based on the alert type.
7
+ * @param iconName - The name of the icon to be displayed in the alert. If not provided, a default icon is set based on the alert type.
8
+ */
9
+ export function showAlert(message, alertType, duration, iconName) {
10
+ const type = alertType !== null && alertType !== void 0 ? alertType : 'info';
11
+ const icon = iconName !== null && iconName !== void 0 ? iconName : getIcon(type);
12
+ const alert = Object.assign(document.createElement('six-alert'), {
13
+ type,
14
+ duration: duration !== null && duration !== void 0 ? duration : getDuration(type),
15
+ innerHTML: `<six-icon slot="icon">${icon}</six-icon>${escapeHtml(message)}`,
16
+ closable: true,
17
+ });
18
+ document.body.append(alert);
19
+ alert.toast();
20
+ }
21
+ function escapeHtml(html) {
22
+ const div = document.createElement('div');
23
+ div.textContent = html;
24
+ return div.innerHTML;
25
+ }
26
+ function getIcon(messageType) {
27
+ switch (messageType) {
28
+ case 'primary':
29
+ return 'info';
30
+ case 'info':
31
+ return 'info';
32
+ case 'success':
33
+ return 'check_circle';
34
+ case 'warning':
35
+ return 'warning';
36
+ case 'danger':
37
+ return 'report';
38
+ }
39
+ }
40
+ function getDuration(messageType) {
41
+ switch (messageType) {
42
+ case 'primary':
43
+ return 10000;
44
+ case 'info':
45
+ return 10000;
46
+ case 'success':
47
+ return 10000;
48
+ case 'warning':
49
+ return 20000;
50
+ case 'danger':
51
+ return 20000;
52
+ }
53
+ }
54
+ //# sourceMappingURL=alert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alert.js","sourceRoot":"","sources":["../../src/utils/alert.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,OAAe,EAAE,SAAqB,EAAE,QAAiB,EAAE,QAAiB;IACpG,MAAM,IAAI,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,MAAM,CAAC;IACjC,MAAM,IAAI,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE;QAC/D,IAAI;QACJ,QAAQ,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,WAAW,CAAC,IAAI,CAAC;QACvC,SAAS,EAAE,yBAAyB,IAAI,cAAc,UAAU,CAAC,OAAO,CAAC,EAAE;QAC3E,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IACH,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,KAAK,CAAC,KAAK,EAAE,CAAC;AAChB,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC;IACvB,OAAO,GAAG,CAAC,SAAS,CAAC;AACvB,CAAC;AAED,SAAS,OAAO,CAAC,WAAsB;IACrC,QAAQ,WAAW,EAAE;QACnB,KAAK,SAAS;YACZ,OAAO,MAAM,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC;QACxB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;KACnB;AACH,CAAC;AAED,SAAS,WAAW,CAAC,WAAsB;IACzC,QAAQ,WAAW,EAAE;QACnB,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC;QACf,KAAK,MAAM;YACT,OAAO,KAAK,CAAC;QACf,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC;QACf,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC;KAChB;AACH,CAAC","sourcesContent":["import { AlertType } from '../components/six-alert/six-alert';\n\n/**\n * Displays an alert on the toast stack with a specified message and optional configuration.\n *\n * @param message - The message to be displayed in the alert.\n * @param alertType - The type of the alert. Valid values are 'primary', 'info', 'success', 'warning', 'danger'. Default is 'info'.\n * @param duration - The duration in milliseconds for which the alert is displayed. If not provided, a default duration is set based on the alert type.\n * @param iconName - The name of the icon to be displayed in the alert. If not provided, a default icon is set based on the alert type.\n */\nexport function showAlert(message: string, alertType?: AlertType, duration?: number, iconName?: string): void {\n const type = alertType ?? 'info';\n const icon = iconName ?? getIcon(type);\n const alert = Object.assign(document.createElement('six-alert'), {\n type,\n duration: duration ?? getDuration(type),\n innerHTML: `<six-icon slot=\"icon\">${icon}</six-icon>${escapeHtml(message)}`,\n closable: true,\n });\n document.body.append(alert);\n alert.toast();\n}\n\nfunction escapeHtml(html: string): string {\n const div = document.createElement('div');\n div.textContent = html;\n return div.innerHTML;\n}\n\nfunction getIcon(messageType: AlertType): string {\n switch (messageType) {\n case 'primary':\n return 'info';\n case 'info':\n return 'info';\n case 'success':\n return 'check_circle';\n case 'warning':\n return 'warning';\n case 'danger':\n return 'report';\n }\n}\n\nfunction getDuration(messageType: AlertType): number {\n switch (messageType) {\n case 'primary':\n return 10000;\n case 'info':\n return 10000;\n case 'success':\n return 10000;\n case 'warning':\n return 20000;\n case 'danger':\n return 20000;\n }\n}\n"]}
@@ -35,6 +35,13 @@ export function getErrorMessage(language, error) {
35
35
  return undefined;
36
36
  }
37
37
  }
38
+ export function getLanguage() {
39
+ const documentLang = document.documentElement.lang;
40
+ if (languages.includes(documentLang)) {
41
+ return documentLang;
42
+ }
43
+ return 'de';
44
+ }
38
45
  const translation = {
39
46
  en: {
40
47
  required: 'Please fill out this field.',
@@ -1 +1 @@
1
- {"version":3,"file":"error-messages.js","sourceRoot":"","sources":["../../src/utils/error-messages.ts"],"names":[],"mappings":"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","sourcesContent":["export const languages = ['de', 'fr', 'it', 'en', 'es'] as const;\nexport type Language = (typeof languages)[number];\n\nconst dateFormat = new Intl.DateTimeFormat('de-CH');\n\nexport type ValidationError =\n | { key: 'required' }\n | { key: 'requiredtrue' }\n | { key: 'email'; requiredPattern: string }\n | { key: 'minlength'; requiredLength: number }\n | { key: 'maxlength'; requiredLength: number }\n | { key: 'pattern'; requiredPattern: string }\n | { key: 'min'; min: number }\n | { key: 'max'; max: number }\n | { key: 'mindate'; mindate: Date; actual: Date }\n | { key: 'maxdate'; maxdate: Date; actual: Date }\n | { key: 'invaliddate'; actual: Date }\n | { key: 'custom'; text: string };\n\n/**\n * Returns an error message for the given language and error.\n */\nexport function getErrorMessage(language: Language, error: ValidationError): string | undefined {\n try {\n const message = translation[language][error.key];\n switch (error.key) {\n case 'required':\n case 'requiredtrue':\n case 'email':\n return message;\n case 'minlength':\n case 'maxlength':\n return message.replace('{requiredLength}', String(error.requiredLength));\n case 'pattern':\n return message.replace('{pattern}', String(error.requiredPattern));\n case 'min':\n return message.replace('{min}', String(error.min));\n case 'max':\n return message.replace('{max}', String(error.max));\n case 'mindate':\n return message.replace('{mindate}', dateFormat.format(error.mindate));\n case 'maxdate':\n return message.replace('{maxdate}', dateFormat.format(error.maxdate));\n case 'invaliddate':\n return message;\n case 'custom':\n return error.text;\n }\n } catch (e) {\n console.warn(`no error message in '${language}' for error:`, error);\n return undefined;\n }\n}\n\nconst translation: Record<Language, Record<string, string>> = {\n en: {\n required: 'Please fill out this field.',\n minlength: 'Please enter at least {requiredLength} characters.',\n maxlength: 'Please enter no more than {requiredLength} characters.',\n pattern: 'Please enter a value that matches the pattern: {pattern}.',\n email: 'Please enter a valid email address.',\n min: 'Please enter a value greater than or equal to {min}.',\n max: 'Please enter a value less than or equal to {max}.',\n requiredtrue: 'Please check this field.',\n mindate: 'Please enter a date on or after {mindate}.',\n maxdate: 'Please enter a date on or before {maxdate}.',\n invaliddate: 'Please enter a valid date.',\n },\n fr: {\n required: \"Veuillez remplir ce champ s'il vous plaît.\",\n minlength: 'Veuillez entrer au moins {requiredLength} caractères.',\n maxlength: 'Veuillez entrer au maximum {requiredLength} caractères.',\n pattern: 'Veuillez entrer une valeur qui correspond au format : {pattern}.',\n email: 'Veuillez entrer une adresse email valide.',\n min: 'Veuillez entrer une valeur supérieure ou égale à {min}.',\n max: 'Veuillez entrer une valeur inférieure ou égale à {max}.',\n requiredtrue: \"Veuillez cocher cette case s'il vous plaît.\",\n mindate: 'Veuillez entrer une date le {mindate} ou après.',\n maxdate: 'Veuillez entrer une date le {maxdate} ou avant.',\n invaliddate: 'Veuillez entrer une date valide.',\n },\n de: {\n required: 'Bitte füllen Sie dieses Feld aus.',\n minlength: 'Bitte geben Sie mindestens {requiredLength} Zeichen ein.',\n maxlength: 'Bitte geben Sie höchstens {requiredLength} Zeichen ein.',\n pattern: 'Bitte geben Sie einen Wert ein, der dem Muster entspricht: {pattern}.',\n email: 'Bitte geben Sie eine gültige E-Mail-Adresse ein.',\n min: 'Bitte geben Sie einen Wert größer oder gleich {min} ein.',\n max: 'Bitte geben Sie einen Wert kleiner oder gleich {max} ein.',\n requiredtrue: 'Bitte aktivieren Sie dieses Feld.',\n mindate: 'Bitte geben Sie ein Datum am oder nach dem {mindate} ein.',\n maxdate: 'Bitte geben Sie ein Datum am oder vor dem {maxdate} ein.',\n invaliddate: 'Bitte geben Sie ein gültiges Datum ein.',\n },\n it: {\n required: 'Si prega di compilare questo campo.',\n minlength: 'Si prega di inserire almeno {requiredLength} caratteri.',\n maxlength: 'Si prega di inserire al massimo {requiredLength} caratteri.',\n pattern: 'Si prega di inserire un valore che corrisponde al formato: {pattern}.',\n email: 'Si prega di inserire un indirizzo email valido.',\n min: 'Si prega di inserire un valore maggiore o uguale a {min}.',\n max: 'Si prega di inserire un valore minore o uguale a {max}.',\n requiredtrue: 'Si prega di spuntare questo campo.',\n mindate: 'Si prega di inserire una data il {mindate} o successiva.',\n maxdate: 'Si prega di inserire una data il {maxdate} o precedente.',\n invaliddate: 'Inserisci una data valida.',\n },\n\n es: {\n required: 'Por favor, rellene este campo.',\n minlength: 'Por favor, introduzca al menos {requiredLength} caracteres.',\n maxlength: 'Por favor, introduzca no más de {requiredLength} caracteres.',\n pattern: 'Por favor, introduzca un valor que coincida con el patrón: {pattern}.',\n email: 'Por favor, introduzca una dirección de correo electrónico válida.',\n min: 'Por favor, introduzca un valor mayor o igual a {min}.',\n max: 'Por favor, introduzca un valor menor o igual a {max}.',\n requiredtrue: 'Por favor, marque este campo.',\n mindate: 'Por favor, introduzca una fecha igual o posterior a {mindate}.',\n maxdate: 'Por favor, introduzca una fecha igual o anterior a {maxdate}.',\n invaliddate: 'Por favor, introduzca una fecha válida.',\n },\n};\n"]}
1
+ {"version":3,"file":"error-messages.js","sourceRoot":"","sources":["../../src/utils/error-messages.ts"],"names":[],"mappings":"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","sourcesContent":["export const languages = ['de', 'fr', 'it', 'en', 'es'] as const;\nexport type Language = (typeof languages)[number];\n\nconst dateFormat = new Intl.DateTimeFormat('de-CH');\n\nexport type ValidationError =\n | { key: 'required' }\n | { key: 'requiredtrue' }\n | { key: 'email'; requiredPattern: string }\n | { key: 'minlength'; requiredLength: number }\n | { key: 'maxlength'; requiredLength: number }\n | { key: 'pattern'; requiredPattern: string }\n | { key: 'min'; min: number }\n | { key: 'max'; max: number }\n | { key: 'mindate'; mindate: Date; actual: Date }\n | { key: 'maxdate'; maxdate: Date; actual: Date }\n | { key: 'invaliddate'; actual: Date }\n | { key: 'custom'; text: string };\n\n/**\n * Returns an error message for the given language and error.\n */\nexport function getErrorMessage(language: Language, error: ValidationError): string | undefined {\n try {\n const message = translation[language][error.key];\n switch (error.key) {\n case 'required':\n case 'requiredtrue':\n case 'email':\n return message;\n case 'minlength':\n case 'maxlength':\n return message.replace('{requiredLength}', String(error.requiredLength));\n case 'pattern':\n return message.replace('{pattern}', String(error.requiredPattern));\n case 'min':\n return message.replace('{min}', String(error.min));\n case 'max':\n return message.replace('{max}', String(error.max));\n case 'mindate':\n return message.replace('{mindate}', dateFormat.format(error.mindate));\n case 'maxdate':\n return message.replace('{maxdate}', dateFormat.format(error.maxdate));\n case 'invaliddate':\n return message;\n case 'custom':\n return error.text;\n }\n } catch (e) {\n console.warn(`no error message in '${language}' for error:`, error);\n return undefined;\n }\n}\n\nexport function getLanguage(): Language {\n const documentLang = document.documentElement.lang as Language;\n if (languages.includes(documentLang)) {\n return documentLang;\n }\n return 'de';\n}\n\nconst translation: Record<Language, Record<string, string>> = {\n en: {\n required: 'Please fill out this field.',\n minlength: 'Please enter at least {requiredLength} characters.',\n maxlength: 'Please enter no more than {requiredLength} characters.',\n pattern: 'Please enter a value that matches the pattern: {pattern}.',\n email: 'Please enter a valid email address.',\n min: 'Please enter a value greater than or equal to {min}.',\n max: 'Please enter a value less than or equal to {max}.',\n requiredtrue: 'Please check this field.',\n mindate: 'Please enter a date on or after {mindate}.',\n maxdate: 'Please enter a date on or before {maxdate}.',\n invaliddate: 'Please enter a valid date.',\n },\n fr: {\n required: \"Veuillez remplir ce champ s'il vous plaît.\",\n minlength: 'Veuillez entrer au moins {requiredLength} caractères.',\n maxlength: 'Veuillez entrer au maximum {requiredLength} caractères.',\n pattern: 'Veuillez entrer une valeur qui correspond au format : {pattern}.',\n email: 'Veuillez entrer une adresse email valide.',\n min: 'Veuillez entrer une valeur supérieure ou égale à {min}.',\n max: 'Veuillez entrer une valeur inférieure ou égale à {max}.',\n requiredtrue: \"Veuillez cocher cette case s'il vous plaît.\",\n mindate: 'Veuillez entrer une date le {mindate} ou après.',\n maxdate: 'Veuillez entrer une date le {maxdate} ou avant.',\n invaliddate: 'Veuillez entrer une date valide.',\n },\n de: {\n required: 'Bitte füllen Sie dieses Feld aus.',\n minlength: 'Bitte geben Sie mindestens {requiredLength} Zeichen ein.',\n maxlength: 'Bitte geben Sie höchstens {requiredLength} Zeichen ein.',\n pattern: 'Bitte geben Sie einen Wert ein, der dem Muster entspricht: {pattern}.',\n email: 'Bitte geben Sie eine gültige E-Mail-Adresse ein.',\n min: 'Bitte geben Sie einen Wert größer oder gleich {min} ein.',\n max: 'Bitte geben Sie einen Wert kleiner oder gleich {max} ein.',\n requiredtrue: 'Bitte aktivieren Sie dieses Feld.',\n mindate: 'Bitte geben Sie ein Datum am oder nach dem {mindate} ein.',\n maxdate: 'Bitte geben Sie ein Datum am oder vor dem {maxdate} ein.',\n invaliddate: 'Bitte geben Sie ein gültiges Datum ein.',\n },\n it: {\n required: 'Si prega di compilare questo campo.',\n minlength: 'Si prega di inserire almeno {requiredLength} caratteri.',\n maxlength: 'Si prega di inserire al massimo {requiredLength} caratteri.',\n pattern: 'Si prega di inserire un valore che corrisponde al formato: {pattern}.',\n email: 'Si prega di inserire un indirizzo email valido.',\n min: 'Si prega di inserire un valore maggiore o uguale a {min}.',\n max: 'Si prega di inserire un valore minore o uguale a {max}.',\n requiredtrue: 'Si prega di spuntare questo campo.',\n mindate: 'Si prega di inserire una data il {mindate} o successiva.',\n maxdate: 'Si prega di inserire una data il {maxdate} o precedente.',\n invaliddate: 'Inserisci una data valida.',\n },\n\n es: {\n required: 'Por favor, rellene este campo.',\n minlength: 'Por favor, introduzca al menos {requiredLength} caracteres.',\n maxlength: 'Por favor, introduzca no más de {requiredLength} caracteres.',\n pattern: 'Por favor, introduzca un valor que coincida con el patrón: {pattern}.',\n email: 'Por favor, introduzca una dirección de correo electrónico válida.',\n min: 'Por favor, introduzca un valor mayor o igual a {min}.',\n max: 'Por favor, introduzca un valor menor o igual a {max}.',\n requiredtrue: 'Por favor, marque este campo.',\n mindate: 'Por favor, introduzca una fecha igual o posterior a {mindate}.',\n maxdate: 'Por favor, introduzca una fecha igual o anterior a {maxdate}.',\n invaliddate: 'Por favor, introduzca una fecha válida.',\n },\n};\n"]}
@@ -68,7 +68,7 @@ export function setPopupAsFixPosition(popup) {
68
68
  popup.style.top = popupDimensions['top'] + 'px';
69
69
  popup.style.left = popupDimensions['left'] + 'px';
70
70
  popup.style.width = popupDimensions['width'] + 'px';
71
- popup.style.height = popupDimensions['height'] + 'px';
71
+ popup.style.minHeight = 'fit-content';
72
72
  return popupDimensions;
73
73
  }
74
74
  /*
@@ -1 +1 @@
1
- {"version":3,"file":"popup.js","sourceRoot":"","sources":["../../src/utils/popup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAc,EACd,KAA8B,EAC9B,YAAqC,EACrC,OAAgC,EAChC,cAAsB,EACtB,wBAAiD;IAEjD,IAAI,CAAC,KAAK,IAAI,KAAK,IAAI,IAAI,IAAI,YAAY,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,EAAE;QACtE,OAAO;KACR;IACD,6CAA6C;IAC7C,MAAM,eAAe,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,eAAe,GAAG,YAAY,CAAC,qBAAqB,EAAE,CAAC;IAC7D,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC;IACrC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC;IAErC,MAAM,IAAI,GAAG,uBAAuB,CAAC,YAAY,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IAC5E,sGAAsG;IACtG,IAAI,IAAI,IAAI,QAAQ,GAAG,QAAQ,EAAE;QAC/B,qEAAqE;QACrE,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,QAAQ,GAAG,eAAe,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,IAAI,CAAC;KACrF;IACD,wBAAwB,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CAAC,KAAmB;IAC5D,6FAA6F;IAC7F,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,KAAK,IAAI,IAAI,EAAE;YACjB,OAAO;SACR;QACD,MAAM,eAAe,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAC;QACtD,IACE,eAAe,CAAC,CAAC,GAAG,CAAC;YACrB,MAAM,CAAC,WAAW,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC;YAC/C,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,MAAM,EACrD;YACA,+EAA+E;YAC/E,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAC7B,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,KAAK,CAAC;SACzB;aAAM,IACL,MAAM,CAAC,WAAW,GAAG,eAAe,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM;YAC/D,MAAM,CAAC,WAAW,GAAG,eAAe,CAAC,MAAM;YAC3C,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,eAAe,CAAC,MAAM,EAC1E;YACA,4FAA4F;YAC5F,uCAAuC;YACvC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAC7B,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,WAAW,GAAG,eAAe,CAAC,MAAM,IAAI,CAAC;SACtE;QAED,IACE,MAAM,CAAC,UAAU,GAAG,eAAe,CAAC,CAAC,GAAG,eAAe,CAAC,KAAK;YAC7D,MAAM,CAAC,UAAU,GAAG,eAAe,CAAC,KAAK;YACzC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,eAAe,CAAC,KAAK,EACxE;YACA,kDAAkD;YAClD,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAC7B,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,UAAU,GAAG,eAAe,CAAC,KAAK,IAAI,CAAC;SACrE;IACH,CAAC,EAAE,CAAC,CAAC,CAAC;AACR,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,YAAyB,EACzB,OAAoB,EACpB,cAAsB;IAEtB,MAAM,iBAAiB,GAAG,YAAY,CAAC,qBAAqB,EAAE,CAAC;IAC/D,MAAM,mBAAmB,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACzE,MAAM,cAAc,GAAG,iBAAiB,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC;IACpE,OAAO,cAAc,IAAI,MAAM,CAAC,WAAW,GAAG,iBAAiB,CAAC,MAAM,GAAG,WAAW,CAAC;AACvF,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAkB;IACtD,MAAM,eAAe,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAC;IACtD,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC/B,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAChD,KAAK,CAAC,KAAK,CAAC,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAClD,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IACpD,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,eAAe,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;IACtD,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS,CACvB,KAAc,EACd,IAAa,EACb,KAA8B,EAC9B,YAAqC,EACrC,OAAgC,EAChC,cAAsB;IAEtB,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,YAAY,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,EAAE;QAC/E,OAAO;KACR;IACD,MAAM,uBAAuB,GAAG,KAAK,CAAC,qBAAqB,EAAE,CAAC;IAC9D,MAAM,WAAW,GAAG,uBAAuB,CAAC,MAAM,CAAC;IACnD,MAAM,uBAAuB,GAAG,YAAY,CAAC,qBAAqB,EAAE,CAAC;IACrE,MAAM,QAAQ,GAAG,uBAAuB,CAAC,GAAG,CAAC;IAC7C,MAAM,WAAW,GAAG,uBAAuB,CAAC,MAAM,CAAC;IAEnD,MAAM,IAAI,GAAG,uBAAuB,CAAC,YAAY,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IAE5E,IAAI,IAAI,EAAE;QACR,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,QAAQ,GAAG,WAAW,IAAI,CAAC;KACjD;SAAM;QACL,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,QAAQ,GAAG,WAAW,IAAI,CAAC;KACjD;AACH,CAAC","sourcesContent":["/**\n * If the popup is hoisted we popup is hoisted its position will change to fix to not be clipped of by a containing container.\n * To render the popup correctly we render it normally, and then assign this screenposition to the fixed popup\n */\nexport function adjustPopupForHoisting(\n hoist: boolean,\n popup: HTMLElement | undefined,\n inputElement: HTMLElement | undefined,\n wrapper: HTMLElement | undefined,\n minPopupHeight: number,\n dropdownDirectionChanged: (isUp: boolean) => void\n) {\n if (!hoist || popup == null || inputElement == null || wrapper == null) {\n return;\n }\n // take a snapshot of normally rendered popup\n const popupDimensions = setPopupAsFixPosition(popup);\n const inputDimensions = inputElement.getBoundingClientRect();\n const inputTop = inputDimensions.top;\n const popupTop = popupDimensions.top;\n\n const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);\n // check screen position to check whether the popup should be moved above or below the trigger element\n if (isUp && inputTop < popupTop) {\n // move popup above input field if datepicker is at bottom of screen\n popup.style.top = `${popupTop - popupDimensions.height - inputDimensions.height}px`;\n }\n dropdownDirectionChanged(isUp);\n}\n\n/*\n * For small screens the datepicker popup could be cut-off even though there might still be space within the viewport.\n * This is because the popup is always aligned with the trigger input field. However in the scenario of small screens\n * we should reposition the popup to use the space available.\n */\nexport function adjustPopupForSmallScreens(popup?: HTMLElement) {\n // execute after dropdown has been rendered to make sure the popup reference is correctly set\n setTimeout(() => {\n if (popup == null) {\n return;\n }\n const popupDimensions = popup.getBoundingClientRect();\n if (\n popupDimensions.y < 0 &&\n window.innerHeight - popupDimensions.height > 0 &&\n Math.abs(popupDimensions.y) <= popupDimensions.height\n ) {\n // handle case where popup is cut-off on top but there is still space available\n setPopupAsFixPosition(popup);\n popup.style.top = '0px';\n } else if (\n window.innerHeight < popupDimensions.y + popupDimensions.height &&\n window.innerHeight > popupDimensions.height &&\n Math.abs(popupDimensions.y - window.innerHeight) <= popupDimensions.height\n ) {\n // handle case where popup is cut-off at the bottom but there is still space available above\n // apply screen position to fixed popup\n setPopupAsFixPosition(popup);\n popup.style.top = `${window.innerHeight - popupDimensions.height}px`;\n }\n\n if (\n window.innerWidth < popupDimensions.x + popupDimensions.width &&\n window.innerWidth > popupDimensions.width &&\n Math.abs(popupDimensions.x - window.innerWidth) <= popupDimensions.width\n ) {\n // handle case where popup is cut-off to the right\n setPopupAsFixPosition(popup);\n popup.style.left = `${window.innerWidth - popupDimensions.width}px`;\n }\n }, 0);\n}\n\nexport function calcIsDropDownContentUp(\n inputElement: HTMLElement,\n wrapper: HTMLElement,\n minPopupHeight: number\n): boolean {\n const inputBoundingRect = inputElement.getBoundingClientRect();\n const wrapperBoundingRect = wrapper.getBoundingClientRect();\n const popupHeight = Math.max(wrapperBoundingRect.height, minPopupHeight);\n const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;\n return moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + popupHeight;\n}\n\nexport function setPopupAsFixPosition(popup: HTMLElement): DOMRect {\n const popupDimensions = popup.getBoundingClientRect();\n popup.style.position = 'fixed';\n popup.style.top = popupDimensions['top'] + 'px';\n popup.style.left = popupDimensions['left'] + 'px';\n popup.style.width = popupDimensions['width'] + 'px';\n popup.style.height = popupDimensions['height'] + 'px';\n return popupDimensions;\n}\n\n/*\n * The position of the hoisted datepicker needs to be correctly calculated since the position changes to fixed.\n * Thus if the user scrolls or adjusts the screen size we need to recalculate the datepicker position.\n */\nexport function movePopup(\n hoist: boolean,\n open: boolean,\n popup: HTMLElement | undefined,\n inputElement: HTMLElement | undefined,\n wrapper: HTMLElement | undefined,\n minPopupHeight: number\n) {\n if (!hoist || !open || popup == null || inputElement == null || wrapper == null) {\n return;\n }\n const popupBoundingClientRect = popup.getBoundingClientRect();\n const popupHeight = popupBoundingClientRect.height;\n const inputBoundingClientRect = inputElement.getBoundingClientRect();\n const inputTop = inputBoundingClientRect.top;\n const inputHeight = inputBoundingClientRect.height;\n\n const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);\n\n if (isUp) {\n popup.style.top = `${inputTop - popupHeight}px`;\n } else {\n popup.style.top = `${inputTop + inputHeight}px`;\n }\n}\n"]}
1
+ {"version":3,"file":"popup.js","sourceRoot":"","sources":["../../src/utils/popup.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * If the popup is hoisted we popup is hoisted its position will change to fix to not be clipped of by a containing container.\n * To render the popup correctly we render it normally, and then assign this screenposition to the fixed popup\n */\nexport function adjustPopupForHoisting(\n hoist: boolean,\n popup: HTMLElement | undefined,\n inputElement: HTMLElement | undefined,\n wrapper: HTMLElement | undefined,\n minPopupHeight: number,\n dropdownDirectionChanged: (isUp: boolean) => void\n) {\n if (!hoist || popup == null || inputElement == null || wrapper == null) {\n return;\n }\n // take a snapshot of normally rendered popup\n const popupDimensions = setPopupAsFixPosition(popup);\n const inputDimensions = inputElement.getBoundingClientRect();\n const inputTop = inputDimensions.top;\n const popupTop = popupDimensions.top;\n\n const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);\n // check screen position to check whether the popup should be moved above or below the trigger element\n if (isUp && inputTop < popupTop) {\n // move popup above input field if datepicker is at bottom of screen\n popup.style.top = `${popupTop - popupDimensions.height - inputDimensions.height}px`;\n }\n dropdownDirectionChanged(isUp);\n}\n\n/*\n * For small screens the datepicker popup could be cut-off even though there might still be space within the viewport.\n * This is because the popup is always aligned with the trigger input field. However in the scenario of small screens\n * we should reposition the popup to use the space available.\n */\nexport function adjustPopupForSmallScreens(popup?: HTMLElement) {\n // execute after dropdown has been rendered to make sure the popup reference is correctly set\n setTimeout(() => {\n if (popup == null) {\n return;\n }\n const popupDimensions = popup.getBoundingClientRect();\n if (\n popupDimensions.y < 0 &&\n window.innerHeight - popupDimensions.height > 0 &&\n Math.abs(popupDimensions.y) <= popupDimensions.height\n ) {\n // handle case where popup is cut-off on top but there is still space available\n setPopupAsFixPosition(popup);\n popup.style.top = '0px';\n } else if (\n window.innerHeight < popupDimensions.y + popupDimensions.height &&\n window.innerHeight > popupDimensions.height &&\n Math.abs(popupDimensions.y - window.innerHeight) <= popupDimensions.height\n ) {\n // handle case where popup is cut-off at the bottom but there is still space available above\n // apply screen position to fixed popup\n setPopupAsFixPosition(popup);\n popup.style.top = `${window.innerHeight - popupDimensions.height}px`;\n }\n\n if (\n window.innerWidth < popupDimensions.x + popupDimensions.width &&\n window.innerWidth > popupDimensions.width &&\n Math.abs(popupDimensions.x - window.innerWidth) <= popupDimensions.width\n ) {\n // handle case where popup is cut-off to the right\n setPopupAsFixPosition(popup);\n popup.style.left = `${window.innerWidth - popupDimensions.width}px`;\n }\n }, 0);\n}\n\nexport function calcIsDropDownContentUp(\n inputElement: HTMLElement,\n wrapper: HTMLElement,\n minPopupHeight: number\n): boolean {\n const inputBoundingRect = inputElement.getBoundingClientRect();\n const wrapperBoundingRect = wrapper.getBoundingClientRect();\n const popupHeight = Math.max(wrapperBoundingRect.height, minPopupHeight);\n const moreSpaceInTop = inputBoundingRect.y > window.innerHeight / 2;\n return moreSpaceInTop && window.innerHeight < inputBoundingRect.bottom + popupHeight;\n}\n\nexport function setPopupAsFixPosition(popup: HTMLElement): DOMRect {\n const popupDimensions = popup.getBoundingClientRect();\n popup.style.position = 'fixed';\n popup.style.top = popupDimensions['top'] + 'px';\n popup.style.left = popupDimensions['left'] + 'px';\n popup.style.width = popupDimensions['width'] + 'px';\n popup.style.minHeight = 'fit-content';\n return popupDimensions;\n}\n\n/*\n * The position of the hoisted datepicker needs to be correctly calculated since the position changes to fixed.\n * Thus if the user scrolls or adjusts the screen size we need to recalculate the datepicker position.\n */\nexport function movePopup(\n hoist: boolean,\n open: boolean,\n popup: HTMLElement | undefined,\n inputElement: HTMLElement | undefined,\n wrapper: HTMLElement | undefined,\n minPopupHeight: number\n) {\n if (!hoist || !open || popup == null || inputElement == null || wrapper == null) {\n return;\n }\n const popupBoundingClientRect = popup.getBoundingClientRect();\n const popupHeight = popupBoundingClientRect.height;\n const inputBoundingClientRect = inputElement.getBoundingClientRect();\n const inputTop = inputBoundingClientRect.top;\n const inputHeight = inputBoundingClientRect.height;\n\n const isUp = calcIsDropDownContentUp(inputElement, wrapper, minPopupHeight);\n\n if (isUp) {\n popup.style.top = `${inputTop - popupHeight}px`;\n } else {\n popup.style.top = `${inputTop + inputHeight}px`;\n }\n}\n"]}
@@ -36,7 +36,6 @@ export function hasSlot(el, name) {
36
36
  return false;
37
37
  });
38
38
  }
39
- export const getSlotChildren = (el) => { var _a; return (_a = el.querySelector('slot')) === null || _a === void 0 ? void 0 : _a.assignedElements({ flatten: true }); };
40
39
  export function getSlot(element, slotName) {
41
40
  if (element == null)
42
41
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"slot.js","sourceRoot":"","sources":["../../src/utils/slot.ts"],"names":[],"mappings":"AAAA,EAAE;AACF,kHAAkH;AAClH,kFAAkF;AAClF,EAAE;AACF,MAAM,UAAU,cAAc,CAAC,IAAsB;IACnD,MAAM,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,IAAI,IAAI,GAAG,EAAE,CAAC;IAEd,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACtB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,EAAE;YACpC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC;SAC1B;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,EAAE;AACF,mHAAmH;AACnH,uHAAuH;AACvH,EAAE;AACF,MAAM,UAAU,OAAO,CAAC,EAAe,EAAE,IAAa;IACpD,wBAAwB;IACxB,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,EAAE;QAC/B,OAAO,EAAE,CAAC,aAAa,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC;KACtD;IAED,0BAA0B;IAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;;QAC7C,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,IAAI,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,IAAI,EAAE,MAAK,EAAE,EAAE;YACvE,OAAO,IAAI,CAAC;SACb;QAED,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE;YACvC,MAAM,EAAE,GAAG,IAAmB,CAAC;YAC/B,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;gBAC5B,OAAO,IAAI,CAAC;aACb;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAwB,EAAe,EAAE,EAAE,WACxE,OAAA,MAAA,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,0CAAE,gBAAgB,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAQ,CAAA,EAAA,CAAC;AAEvE,MAAM,UAAU,OAAO,CAAC,OAAsC,EAAE,QAAgB;IAC9E,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO,OAAO,CAAC,aAAa,CAAC,UAAU,QAAQ,IAAI,CAAC,CAAC;AACvD,CAAC","sourcesContent":["//\n// Given a slot, this function iterates over all of its assigned text nodes and returns the concatenated text as a\n// string. This is useful because we can't use slot.textContent as an alternative.\n//\nexport function getTextContent(slot?: HTMLSlotElement): string {\n const nodes = slot != null ? slot.assignedNodes({ flatten: true }) : [];\n let text = '';\n\n [...nodes].map((node) => {\n if (node.nodeType === Node.TEXT_NODE) {\n text += node.textContent;\n }\n });\n\n return text;\n}\n\n//\n// Determines whether an element has a slot. If name is specified, the function will look for a corresponding named\n// slot, otherwise it will look for a \"default\" slot (e.g. a non-empty text node or an element with no slot attribute).\n//\nexport function hasSlot(el: HTMLElement, name?: string): boolean {\n // Look for a named slot\n if (name != null && name !== '') {\n return el.querySelector(`[slot=\"${name}\"]`) !== null;\n }\n\n // Look for a default slot\n return Array.from(el.childNodes).some((node) => {\n if (node.nodeType === node.TEXT_NODE && node.textContent?.trim() !== '') {\n return true;\n }\n\n if (node.nodeType === node.ELEMENT_NODE) {\n const el = node as HTMLElement;\n if (!el.hasAttribute('slot')) {\n return true;\n }\n }\n\n return false;\n });\n}\n\nexport const getSlotChildren = <T extends HTMLElement>(el: HTMLElement) =>\n el.querySelector('slot')?.assignedElements({ flatten: true }) as T[];\n\nexport function getSlot(element: ParentNode | null | undefined, slotName: string): HTMLElement | null {\n if (element == null) return null;\n return element.querySelector(`[slot=\"${slotName}\"]`);\n}\n"]}
1
+ {"version":3,"file":"slot.js","sourceRoot":"","sources":["../../src/utils/slot.ts"],"names":[],"mappings":"AAAA,EAAE;AACF,kHAAkH;AAClH,kFAAkF;AAClF,EAAE;AACF,MAAM,UAAU,cAAc,CAAC,IAAsB;IACnD,MAAM,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,IAAI,IAAI,GAAG,EAAE,CAAC;IAEd,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACtB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,EAAE;YACpC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC;SAC1B;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,EAAE;AACF,mHAAmH;AACnH,uHAAuH;AACvH,EAAE;AACF,MAAM,UAAU,OAAO,CAAC,EAAe,EAAE,IAAa;IACpD,wBAAwB;IACxB,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,EAAE;QAC/B,OAAO,EAAE,CAAC,aAAa,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC;KACtD;IAED,0BAA0B;IAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;;QAC7C,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,IAAI,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,IAAI,EAAE,MAAK,EAAE,EAAE;YACvE,OAAO,IAAI,CAAC;SACb;QAED,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE;YACvC,MAAM,EAAE,GAAG,IAAmB,CAAC;YAC/B,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;gBAC5B,OAAO,IAAI,CAAC;aACb;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,OAAsC,EAAE,QAAgB;IAC9E,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO,OAAO,CAAC,aAAa,CAAC,UAAU,QAAQ,IAAI,CAAC,CAAC;AACvD,CAAC","sourcesContent":["//\n// Given a slot, this function iterates over all of its assigned text nodes and returns the concatenated text as a\n// string. This is useful because we can't use slot.textContent as an alternative.\n//\nexport function getTextContent(slot?: HTMLSlotElement): string {\n const nodes = slot != null ? slot.assignedNodes({ flatten: true }) : [];\n let text = '';\n\n [...nodes].map((node) => {\n if (node.nodeType === Node.TEXT_NODE) {\n text += node.textContent;\n }\n });\n\n return text;\n}\n\n//\n// Determines whether an element has a slot. If name is specified, the function will look for a corresponding named\n// slot, otherwise it will look for a \"default\" slot (e.g. a non-empty text node or an element with no slot attribute).\n//\nexport function hasSlot(el: HTMLElement, name?: string): boolean {\n // Look for a named slot\n if (name != null && name !== '') {\n return el.querySelector(`[slot=\"${name}\"]`) !== null;\n }\n\n // Look for a default slot\n return Array.from(el.childNodes).some((node) => {\n if (node.nodeType === node.TEXT_NODE && node.textContent?.trim() !== '') {\n return true;\n }\n\n if (node.nodeType === node.ELEMENT_NODE) {\n const el = node as HTMLElement;\n if (!el.hasAttribute('slot')) {\n return true;\n }\n }\n\n return false;\n });\n}\n\nexport function getSlot(element: ParentNode | null | undefined, slotName: string): HTMLElement | null {\n if (element == null) return null;\n return element.querySelector(`[slot=\"${slotName}\"]`);\n}\n"]}
@@ -1,4 +1,3 @@
1
- import { SetAttributes } from './set-attributes.js';
2
1
  import { SixAlert } from './six-alert.js';
3
2
  import { SixAvatar } from './six-avatar.js';
4
3
  import { SixBadge } from './six-badge.js';
@@ -37,6 +36,7 @@ import { SixRange } from './six-range.js';
37
36
  import { SixRoot } from './six-root.js';
38
37
  import { SixSearchField } from './six-search-field.js';
39
38
  import { SixSelect } from './six-select.js';
39
+ export { g as getErrorMessage, a as getLanguage, l as languages } from './six-select.js';
40
40
  import { SixSidebar } from './six-sidebar.js';
41
41
  import { SixSidebarItem } from './six-sidebar-item.js';
42
42
  import { SixSidebarItemGroup } from './six-sidebar-item-group.js';
@@ -53,115 +53,63 @@ import { SixTimepicker } from './six-timepicker.js';
53
53
  import { SixTooltip } from './six-tooltip.js';
54
54
  export { getAssetPath, setAssetPath, setNonce, setPlatformOptions } from '@stencil/core/internal/client';
55
55
 
56
- const languages = ['de', 'fr', 'it', 'en', 'es'];
57
- const dateFormat = new Intl.DateTimeFormat('de-CH');
58
56
  /**
59
- * Returns an error message for the given language and error.
57
+ * Displays an alert on the toast stack with a specified message and optional configuration.
58
+ *
59
+ * @param message - The message to be displayed in the alert.
60
+ * @param alertType - The type of the alert. Valid values are 'primary', 'info', 'success', 'warning', 'danger'. Default is 'info'.
61
+ * @param duration - The duration in milliseconds for which the alert is displayed. If not provided, a default duration is set based on the alert type.
62
+ * @param iconName - The name of the icon to be displayed in the alert. If not provided, a default icon is set based on the alert type.
60
63
  */
61
- function getErrorMessage(language, error) {
62
- try {
63
- const message = translation[language][error.key];
64
- switch (error.key) {
65
- case 'required':
66
- case 'requiredtrue':
67
- case 'email':
68
- return message;
69
- case 'minlength':
70
- case 'maxlength':
71
- return message.replace('{requiredLength}', String(error.requiredLength));
72
- case 'pattern':
73
- return message.replace('{pattern}', String(error.requiredPattern));
74
- case 'min':
75
- return message.replace('{min}', String(error.min));
76
- case 'max':
77
- return message.replace('{max}', String(error.max));
78
- case 'mindate':
79
- return message.replace('{mindate}', dateFormat.format(error.mindate));
80
- case 'maxdate':
81
- return message.replace('{maxdate}', dateFormat.format(error.maxdate));
82
- case 'invaliddate':
83
- return message;
84
- case 'custom':
85
- return error.text;
86
- }
64
+ function showAlert(message, alertType, duration, iconName) {
65
+ const type = alertType !== null && alertType !== void 0 ? alertType : 'info';
66
+ const icon = iconName !== null && iconName !== void 0 ? iconName : getIcon(type);
67
+ const alert = Object.assign(document.createElement('six-alert'), {
68
+ type,
69
+ duration: duration !== null && duration !== void 0 ? duration : getDuration(type),
70
+ innerHTML: `<six-icon slot="icon">${icon}</six-icon>${escapeHtml(message)}`,
71
+ closable: true,
72
+ });
73
+ document.body.append(alert);
74
+ alert.toast();
75
+ }
76
+ function escapeHtml(html) {
77
+ const div = document.createElement('div');
78
+ div.textContent = html;
79
+ return div.innerHTML;
80
+ }
81
+ function getIcon(messageType) {
82
+ switch (messageType) {
83
+ case 'primary':
84
+ return 'info';
85
+ case 'info':
86
+ return 'info';
87
+ case 'success':
88
+ return 'check_circle';
89
+ case 'warning':
90
+ return 'warning';
91
+ case 'danger':
92
+ return 'report';
87
93
  }
88
- catch (e) {
89
- console.warn(`no error message in '${language}' for error:`, error);
90
- return undefined;
94
+ }
95
+ function getDuration(messageType) {
96
+ switch (messageType) {
97
+ case 'primary':
98
+ return 10000;
99
+ case 'info':
100
+ return 10000;
101
+ case 'success':
102
+ return 10000;
103
+ case 'warning':
104
+ return 20000;
105
+ case 'danger':
106
+ return 20000;
91
107
  }
92
108
  }
93
- const translation = {
94
- en: {
95
- required: 'Please fill out this field.',
96
- minlength: 'Please enter at least {requiredLength} characters.',
97
- maxlength: 'Please enter no more than {requiredLength} characters.',
98
- pattern: 'Please enter a value that matches the pattern: {pattern}.',
99
- email: 'Please enter a valid email address.',
100
- min: 'Please enter a value greater than or equal to {min}.',
101
- max: 'Please enter a value less than or equal to {max}.',
102
- requiredtrue: 'Please check this field.',
103
- mindate: 'Please enter a date on or after {mindate}.',
104
- maxdate: 'Please enter a date on or before {maxdate}.',
105
- invaliddate: 'Please enter a valid date.',
106
- },
107
- fr: {
108
- required: "Veuillez remplir ce champ s'il vous plaît.",
109
- minlength: 'Veuillez entrer au moins {requiredLength} caractères.',
110
- maxlength: 'Veuillez entrer au maximum {requiredLength} caractères.',
111
- pattern: 'Veuillez entrer une valeur qui correspond au format : {pattern}.',
112
- email: 'Veuillez entrer une adresse email valide.',
113
- min: 'Veuillez entrer une valeur supérieure ou égale à {min}.',
114
- max: 'Veuillez entrer une valeur inférieure ou égale à {max}.',
115
- requiredtrue: "Veuillez cocher cette case s'il vous plaît.",
116
- mindate: 'Veuillez entrer une date le {mindate} ou après.',
117
- maxdate: 'Veuillez entrer une date le {maxdate} ou avant.',
118
- invaliddate: 'Veuillez entrer une date valide.',
119
- },
120
- de: {
121
- required: 'Bitte füllen Sie dieses Feld aus.',
122
- minlength: 'Bitte geben Sie mindestens {requiredLength} Zeichen ein.',
123
- maxlength: 'Bitte geben Sie höchstens {requiredLength} Zeichen ein.',
124
- pattern: 'Bitte geben Sie einen Wert ein, der dem Muster entspricht: {pattern}.',
125
- email: 'Bitte geben Sie eine gültige E-Mail-Adresse ein.',
126
- min: 'Bitte geben Sie einen Wert größer oder gleich {min} ein.',
127
- max: 'Bitte geben Sie einen Wert kleiner oder gleich {max} ein.',
128
- requiredtrue: 'Bitte aktivieren Sie dieses Feld.',
129
- mindate: 'Bitte geben Sie ein Datum am oder nach dem {mindate} ein.',
130
- maxdate: 'Bitte geben Sie ein Datum am oder vor dem {maxdate} ein.',
131
- invaliddate: 'Bitte geben Sie ein gültiges Datum ein.',
132
- },
133
- it: {
134
- required: 'Si prega di compilare questo campo.',
135
- minlength: 'Si prega di inserire almeno {requiredLength} caratteri.',
136
- maxlength: 'Si prega di inserire al massimo {requiredLength} caratteri.',
137
- pattern: 'Si prega di inserire un valore che corrisponde al formato: {pattern}.',
138
- email: 'Si prega di inserire un indirizzo email valido.',
139
- min: 'Si prega di inserire un valore maggiore o uguale a {min}.',
140
- max: 'Si prega di inserire un valore minore o uguale a {max}.',
141
- requiredtrue: 'Si prega di spuntare questo campo.',
142
- mindate: 'Si prega di inserire una data il {mindate} o successiva.',
143
- maxdate: 'Si prega di inserire una data il {maxdate} o precedente.',
144
- invaliddate: 'Inserisci una data valida.',
145
- },
146
- es: {
147
- required: 'Por favor, rellene este campo.',
148
- minlength: 'Por favor, introduzca al menos {requiredLength} caracteres.',
149
- maxlength: 'Por favor, introduzca no más de {requiredLength} caracteres.',
150
- pattern: 'Por favor, introduzca un valor que coincida con el patrón: {pattern}.',
151
- email: 'Por favor, introduzca una dirección de correo electrónico válida.',
152
- min: 'Por favor, introduzca un valor mayor o igual a {min}.',
153
- max: 'Por favor, introduzca un valor menor o igual a {max}.',
154
- requiredtrue: 'Por favor, marque este campo.',
155
- mindate: 'Por favor, introduzca una fecha igual o posterior a {mindate}.',
156
- maxdate: 'Por favor, introduzca una fecha igual o anterior a {maxdate}.',
157
- invaliddate: 'Por favor, introduzca una fecha válida.',
158
- },
159
- };
160
109
 
161
110
  const defineCustomElements = (opts) => {
162
111
  if (typeof customElements !== 'undefined') {
163
112
  [
164
- SetAttributes,
165
113
  SixAlert,
166
114
  SixAvatar,
167
115
  SixBadge,
@@ -222,6 +170,6 @@ const defineCustomElements = (opts) => {
222
170
  }
223
171
  };
224
172
 
225
- export { defineCustomElements, getErrorMessage, languages };
173
+ export { defineCustomElements, showAlert };
226
174
 
227
175
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"file":"index.js","mappings":"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","names":[],"sources":["src/utils/error-messages.ts"],"sourcesContent":["export const languages = ['de', 'fr', 'it', 'en', 'es'] as const;\nexport type Language = (typeof languages)[number];\n\nconst dateFormat = new Intl.DateTimeFormat('de-CH');\n\nexport type ValidationError =\n | { key: 'required' }\n | { key: 'requiredtrue' }\n | { key: 'email'; requiredPattern: string }\n | { key: 'minlength'; requiredLength: number }\n | { key: 'maxlength'; requiredLength: number }\n | { key: 'pattern'; requiredPattern: string }\n | { key: 'min'; min: number }\n | { key: 'max'; max: number }\n | { key: 'mindate'; mindate: Date; actual: Date }\n | { key: 'maxdate'; maxdate: Date; actual: Date }\n | { key: 'invaliddate'; actual: Date }\n | { key: 'custom'; text: string };\n\n/**\n * Returns an error message for the given language and error.\n */\nexport function getErrorMessage(language: Language, error: ValidationError): string | undefined {\n try {\n const message = translation[language][error.key];\n switch (error.key) {\n case 'required':\n case 'requiredtrue':\n case 'email':\n return message;\n case 'minlength':\n case 'maxlength':\n return message.replace('{requiredLength}', String(error.requiredLength));\n case 'pattern':\n return message.replace('{pattern}', String(error.requiredPattern));\n case 'min':\n return message.replace('{min}', String(error.min));\n case 'max':\n return message.replace('{max}', String(error.max));\n case 'mindate':\n return message.replace('{mindate}', dateFormat.format(error.mindate));\n case 'maxdate':\n return message.replace('{maxdate}', dateFormat.format(error.maxdate));\n case 'invaliddate':\n return message;\n case 'custom':\n return error.text;\n }\n } catch (e) {\n console.warn(`no error message in '${language}' for error:`, error);\n return undefined;\n }\n}\n\nconst translation: Record<Language, Record<string, string>> = {\n en: {\n required: 'Please fill out this field.',\n minlength: 'Please enter at least {requiredLength} characters.',\n maxlength: 'Please enter no more than {requiredLength} characters.',\n pattern: 'Please enter a value that matches the pattern: {pattern}.',\n email: 'Please enter a valid email address.',\n min: 'Please enter a value greater than or equal to {min}.',\n max: 'Please enter a value less than or equal to {max}.',\n requiredtrue: 'Please check this field.',\n mindate: 'Please enter a date on or after {mindate}.',\n maxdate: 'Please enter a date on or before {maxdate}.',\n invaliddate: 'Please enter a valid date.',\n },\n fr: {\n required: \"Veuillez remplir ce champ s'il vous plaît.\",\n minlength: 'Veuillez entrer au moins {requiredLength} caractères.',\n maxlength: 'Veuillez entrer au maximum {requiredLength} caractères.',\n pattern: 'Veuillez entrer une valeur qui correspond au format : {pattern}.',\n email: 'Veuillez entrer une adresse email valide.',\n min: 'Veuillez entrer une valeur supérieure ou égale à {min}.',\n max: 'Veuillez entrer une valeur inférieure ou égale à {max}.',\n requiredtrue: \"Veuillez cocher cette case s'il vous plaît.\",\n mindate: 'Veuillez entrer une date le {mindate} ou après.',\n maxdate: 'Veuillez entrer une date le {maxdate} ou avant.',\n invaliddate: 'Veuillez entrer une date valide.',\n },\n de: {\n required: 'Bitte füllen Sie dieses Feld aus.',\n minlength: 'Bitte geben Sie mindestens {requiredLength} Zeichen ein.',\n maxlength: 'Bitte geben Sie höchstens {requiredLength} Zeichen ein.',\n pattern: 'Bitte geben Sie einen Wert ein, der dem Muster entspricht: {pattern}.',\n email: 'Bitte geben Sie eine gültige E-Mail-Adresse ein.',\n min: 'Bitte geben Sie einen Wert größer oder gleich {min} ein.',\n max: 'Bitte geben Sie einen Wert kleiner oder gleich {max} ein.',\n requiredtrue: 'Bitte aktivieren Sie dieses Feld.',\n mindate: 'Bitte geben Sie ein Datum am oder nach dem {mindate} ein.',\n maxdate: 'Bitte geben Sie ein Datum am oder vor dem {maxdate} ein.',\n invaliddate: 'Bitte geben Sie ein gültiges Datum ein.',\n },\n it: {\n required: 'Si prega di compilare questo campo.',\n minlength: 'Si prega di inserire almeno {requiredLength} caratteri.',\n maxlength: 'Si prega di inserire al massimo {requiredLength} caratteri.',\n pattern: 'Si prega di inserire un valore che corrisponde al formato: {pattern}.',\n email: 'Si prega di inserire un indirizzo email valido.',\n min: 'Si prega di inserire un valore maggiore o uguale a {min}.',\n max: 'Si prega di inserire un valore minore o uguale a {max}.',\n requiredtrue: 'Si prega di spuntare questo campo.',\n mindate: 'Si prega di inserire una data il {mindate} o successiva.',\n maxdate: 'Si prega di inserire una data il {maxdate} o precedente.',\n invaliddate: 'Inserisci una data valida.',\n },\n\n es: {\n required: 'Por favor, rellene este campo.',\n minlength: 'Por favor, introduzca al menos {requiredLength} caracteres.',\n maxlength: 'Por favor, introduzca no más de {requiredLength} caracteres.',\n pattern: 'Por favor, introduzca un valor que coincida con el patrón: {pattern}.',\n email: 'Por favor, introduzca una dirección de correo electrónico válida.',\n min: 'Por favor, introduzca un valor mayor o igual a {min}.',\n max: 'Por favor, introduzca un valor menor o igual a {max}.',\n requiredtrue: 'Por favor, marque este campo.',\n mindate: 'Por favor, introduzca una fecha igual o posterior a {mindate}.',\n maxdate: 'Por favor, introduzca una fecha igual o anterior a {maxdate}.',\n invaliddate: 'Por favor, introduzca una fecha válida.',\n },\n};\n"],"version":3}
1
+ {"file":"index.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;;;;;;;;SAQgB,SAAS,CAAC,OAAe,EAAE,SAAqB,EAAE,QAAiB,EAAE,QAAiB;IACpG,MAAM,IAAI,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,MAAM,CAAC;IACjC,MAAM,IAAI,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE;QAC/D,IAAI;QACJ,QAAQ,EAAE,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,WAAW,CAAC,IAAI,CAAC;QACvC,SAAS,EAAE,yBAAyB,IAAI,cAAc,UAAU,CAAC,OAAO,CAAC,EAAE;QAC3E,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IACH,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,KAAK,CAAC,KAAK,EAAE,CAAC;AAChB,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC;IACvB,OAAO,GAAG,CAAC,SAAS,CAAC;AACvB,CAAC;AAED,SAAS,OAAO,CAAC,WAAsB;IACrC,QAAQ,WAAW;QACjB,KAAK,SAAS;YACZ,OAAO,MAAM,CAAC;QAChB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC;QACxB,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;KACnB;AACH,CAAC;AAED,SAAS,WAAW,CAAC,WAAsB;IACzC,QAAQ,WAAW;QACjB,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC;QACf,KAAK,MAAM;YACT,OAAO,KAAK,CAAC;QACf,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC;QACf,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC;QACf,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC;KAChB;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/utils/alert.ts"],"sourcesContent":["import { AlertType } from '../components/six-alert/six-alert';\n\n/**\n * Displays an alert on the toast stack with a specified message and optional configuration.\n *\n * @param message - The message to be displayed in the alert.\n * @param alertType - The type of the alert. Valid values are 'primary', 'info', 'success', 'warning', 'danger'. Default is 'info'.\n * @param duration - The duration in milliseconds for which the alert is displayed. If not provided, a default duration is set based on the alert type.\n * @param iconName - The name of the icon to be displayed in the alert. If not provided, a default icon is set based on the alert type.\n */\nexport function showAlert(message: string, alertType?: AlertType, duration?: number, iconName?: string): void {\n const type = alertType ?? 'info';\n const icon = iconName ?? getIcon(type);\n const alert = Object.assign(document.createElement('six-alert'), {\n type,\n duration: duration ?? getDuration(type),\n innerHTML: `<six-icon slot=\"icon\">${icon}</six-icon>${escapeHtml(message)}`,\n closable: true,\n });\n document.body.append(alert);\n alert.toast();\n}\n\nfunction escapeHtml(html: string): string {\n const div = document.createElement('div');\n div.textContent = html;\n return div.innerHTML;\n}\n\nfunction getIcon(messageType: AlertType): string {\n switch (messageType) {\n case 'primary':\n return 'info';\n case 'info':\n return 'info';\n case 'success':\n return 'check_circle';\n case 'warning':\n return 'warning';\n case 'danger':\n return 'report';\n }\n}\n\nfunction getDuration(messageType: AlertType): number {\n switch (messageType) {\n case 'primary':\n return 10000;\n case 'info':\n return 10000;\n case 'success':\n return 10000;\n case 'warning':\n return 20000;\n case 'danger':\n return 20000;\n }\n}\n"],"version":3}