@oiz/stzh-components 2.6.0-beta → 2.7.0-alpha

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 (308) hide show
  1. package/dist/cjs/{app-globals-b9f31c77.js → app-globals-5dfa53d1.js} +2 -2
  2. package/dist/cjs/{app-globals-b9f31c77.js.map → app-globals-5dfa53d1.js.map} +1 -1
  3. package/dist/cjs/index.cjs.js.map +1 -1
  4. package/dist/cjs/loader.cjs.js +2 -2
  5. package/dist/cjs/stzh-actions.cjs.entry.js +1 -5
  6. package/dist/cjs/stzh-actions.cjs.entry.js.map +1 -1
  7. package/dist/cjs/stzh-actionset.cjs.entry.js +2 -2
  8. package/dist/cjs/stzh-actionset.cjs.entry.js.map +1 -1
  9. package/dist/cjs/stzh-amount.cjs.entry.js +50 -69
  10. package/dist/cjs/stzh-amount.cjs.entry.js.map +1 -1
  11. package/dist/cjs/stzh-badge_3.cjs.entry.js +2 -2
  12. package/dist/cjs/stzh-badge_3.cjs.entry.js.map +1 -1
  13. package/dist/cjs/stzh-checkbox.cjs.entry.js.map +1 -1
  14. package/dist/cjs/stzh-checkboxgroup.cjs.entry.js.map +1 -1
  15. package/dist/cjs/stzh-components.cjs.js +2 -2
  16. package/dist/cjs/stzh-datepicker_3.cjs.entry.js.map +1 -1
  17. package/dist/cjs/stzh-dropdown.cjs.entry.js +60 -25
  18. package/dist/cjs/stzh-dropdown.cjs.entry.js.map +1 -1
  19. package/dist/cjs/stzh-ghettobox_2.cjs.entry.js +1 -1
  20. package/dist/cjs/stzh-ghettobox_2.cjs.entry.js.map +1 -1
  21. package/dist/cjs/stzh-input.cjs.entry.js.map +1 -1
  22. package/dist/cjs/stzh-invert.cjs.entry.js +1 -1
  23. package/dist/cjs/stzh-invert.cjs.entry.js.map +1 -1
  24. package/dist/cjs/stzh-monthyearpicker.cjs.entry.js +191 -0
  25. package/dist/cjs/stzh-monthyearpicker.cjs.entry.js.map +1 -0
  26. package/dist/cjs/stzh-skin-portal-mitwirken.cjs.entry.js +1 -1
  27. package/dist/cjs/stzh-skin-portal-mitwirken.cjs.entry.js.map +1 -1
  28. package/dist/cjs/stzh-timepicker.cjs.entry.js +82 -0
  29. package/dist/cjs/stzh-timepicker.cjs.entry.js.map +1 -0
  30. package/dist/cjs/stzh-toggle.cjs.entry.js.map +1 -1
  31. package/dist/cjs/stzh-upload.cjs.entry.js +19 -7
  32. package/dist/cjs/stzh-upload.cjs.entry.js.map +1 -1
  33. package/dist/cjs/translation-utils-73073e44.js.map +1 -1
  34. package/dist/collection/assets/i18n/de.json +10 -7
  35. package/dist/collection/assets/i18n/en.json +8 -5
  36. package/dist/collection/collection-manifest.json +2 -0
  37. package/dist/collection/components/stzh-actions/stzh-actions.js +1 -5
  38. package/dist/collection/components/stzh-actions/stzh-actions.js.map +1 -1
  39. package/dist/collection/components/stzh-actionset/stzh-actionset.js +2 -2
  40. package/dist/collection/components/stzh-actionset/stzh-actionset.js.map +1 -1
  41. package/dist/collection/components/stzh-amount/stzh-amount.css +1 -0
  42. package/dist/collection/components/stzh-amount/stzh-amount.js +84 -85
  43. package/dist/collection/components/stzh-amount/stzh-amount.js.map +1 -1
  44. package/dist/collection/components/stzh-amount/stzh-amount.localization.js.map +1 -1
  45. package/dist/collection/components/stzh-amount/stzh-amount.stories.js +14 -0
  46. package/dist/collection/components/stzh-button/stzh-button.css +2 -2
  47. package/dist/collection/components/stzh-button/stzh-button.js +1 -1
  48. package/dist/collection/components/stzh-button/stzh-button.js.map +1 -1
  49. package/dist/collection/components/stzh-checkbox/stzh-checkbox.js +1 -1
  50. package/dist/collection/components/stzh-checkbox/stzh-checkbox.js.map +1 -1
  51. package/dist/collection/components/stzh-checkboxgroup/stzh-checkboxgroup.js +1 -1
  52. package/dist/collection/components/stzh-checkboxgroup/stzh-checkboxgroup.js.map +1 -1
  53. package/dist/collection/components/stzh-datepicker/stzh-datepicker.js +2 -2
  54. package/dist/collection/components/stzh-datepicker/stzh-datepicker.js.map +1 -1
  55. package/dist/collection/components/stzh-datepicker/stzh-datepicker.stories.js +3 -0
  56. package/dist/collection/components/stzh-dropdown/stzh-dropdown.css +32 -20
  57. package/dist/collection/components/stzh-dropdown/stzh-dropdown.js +40 -9
  58. package/dist/collection/components/stzh-dropdown/stzh-dropdown.js.map +1 -1
  59. package/dist/collection/components/stzh-ghettobox/stzh-ghettobox.css +4 -4
  60. package/dist/collection/components/stzh-input/stzh-input.js +1 -1
  61. package/dist/collection/components/stzh-input/stzh-input.js.map +1 -1
  62. package/dist/collection/components/stzh-invert/stzh-invert.css +2 -2
  63. package/dist/collection/components/stzh-monthyearpicker/stzh-monthyearpicker.css +123 -0
  64. package/dist/collection/components/stzh-monthyearpicker/stzh-monthyearpicker.js +724 -0
  65. package/dist/collection/components/stzh-monthyearpicker/stzh-monthyearpicker.js.map +1 -0
  66. package/dist/collection/components/stzh-monthyearpicker/stzh-monthyearpicker.localization.js +2 -0
  67. package/dist/collection/components/stzh-monthyearpicker/stzh-monthyearpicker.localization.js.map +1 -0
  68. package/dist/collection/components/stzh-monthyearpicker/stzh-monthyearpicker.stories.js +61 -0
  69. package/dist/collection/components/stzh-radio/stzh-radio.js +1 -1
  70. package/dist/collection/components/stzh-radio/stzh-radio.js.map +1 -1
  71. package/dist/collection/components/stzh-radiogroup/stzh-radiogroup.js +1 -1
  72. package/dist/collection/components/stzh-radiogroup/stzh-radiogroup.js.map +1 -1
  73. package/dist/collection/components/stzh-skin-portal-mitwirken/stzh-skin-portal-mitwirken.css +1 -1
  74. package/dist/collection/components/stzh-timepicker/stzh-timepicker.css +109 -0
  75. package/dist/collection/components/stzh-timepicker/stzh-timepicker.js +438 -0
  76. package/dist/collection/components/stzh-timepicker/stzh-timepicker.js.map +1 -0
  77. package/dist/collection/components/stzh-timepicker/stzh-timepicker.localization.js +2 -0
  78. package/dist/collection/components/stzh-timepicker/stzh-timepicker.localization.js.map +1 -0
  79. package/dist/collection/components/stzh-timepicker/stzh-timepicker.stories.js +45 -0
  80. package/dist/collection/components/stzh-toggle/stzh-toggle.js +1 -1
  81. package/dist/collection/components/stzh-toggle/stzh-toggle.js.map +1 -1
  82. package/dist/collection/components/stzh-upload/stzh-upload.js +53 -3
  83. package/dist/collection/components/stzh-upload/stzh-upload.js.map +1 -1
  84. package/dist/collection/index.js.map +1 -1
  85. package/dist/collection/libraries/dropzone/dropzone-amd-module.js +11 -5
  86. package/dist/collection/libraries/dropzone/dropzone.js +11 -5
  87. package/dist/collection/libraries/dropzone/min/dropzone-amd-module.min.js +1 -1
  88. package/dist/collection/libraries/dropzone/min/dropzone.min.js +1 -1
  89. package/dist/collection/libraries/tom-select/cjs/tom-select.complete.js +47 -18
  90. package/dist/collection/libraries/tom-select/cjs/tom-select.js +47 -18
  91. package/dist/collection/libraries/tom-select/cjs/tom-select.popular.js +47 -18
  92. package/dist/collection/libraries/tom-select/esm/tom-select.complete.js +47 -18
  93. package/dist/collection/libraries/tom-select/esm/tom-select.js +47 -18
  94. package/dist/collection/libraries/tom-select/esm/tom-select.popular.js +47 -18
  95. package/dist/collection/libraries/tom-select/js/tom-select.base.js +47 -18
  96. package/dist/collection/libraries/tom-select/js/tom-select.base.min.js +16 -17
  97. package/dist/collection/libraries/tom-select/js/tom-select.complete.js +47 -18
  98. package/dist/collection/libraries/tom-select/js/tom-select.complete.min.js +12 -13
  99. package/dist/collection/libraries/tom-select/js/tom-select.popular.js +47 -18
  100. package/dist/collection/libraries/tom-select/js/tom-select.popular.min.js +21 -22
  101. package/dist/collection/utils/translation-utils.js.map +1 -1
  102. package/dist/components/index.js +1 -1
  103. package/dist/components/index2.js.map +1 -1
  104. package/dist/components/stzh-actions.js +1 -5
  105. package/dist/components/stzh-actions.js.map +1 -1
  106. package/dist/components/stzh-actionset2.js +2 -2
  107. package/dist/components/stzh-actionset2.js.map +1 -1
  108. package/dist/components/stzh-amount.js +69 -82
  109. package/dist/components/stzh-amount.js.map +1 -1
  110. package/dist/components/stzh-button2.js +2 -2
  111. package/dist/components/stzh-button2.js.map +1 -1
  112. package/dist/components/stzh-buttongroup.js +1 -31
  113. package/dist/components/stzh-buttongroup.js.map +1 -1
  114. package/dist/components/stzh-buttongroup2.js +35 -0
  115. package/dist/components/stzh-buttongroup2.js.map +1 -0
  116. package/dist/components/stzh-checkbox.js.map +1 -1
  117. package/dist/components/stzh-checkboxgroup.js.map +1 -1
  118. package/dist/components/stzh-datepicker2.js.map +1 -1
  119. package/dist/components/stzh-dropdown2.js +61 -25
  120. package/dist/components/stzh-dropdown2.js.map +1 -1
  121. package/dist/components/stzh-ghettobox2.js +1 -1
  122. package/dist/components/stzh-ghettobox2.js.map +1 -1
  123. package/dist/components/stzh-input2.js.map +1 -1
  124. package/dist/components/stzh-invert.js +1 -1
  125. package/dist/components/stzh-invert.js.map +1 -1
  126. package/dist/components/stzh-monthyearpicker.d.ts +11 -0
  127. package/dist/components/stzh-monthyearpicker.js +251 -0
  128. package/dist/components/stzh-monthyearpicker.js.map +1 -0
  129. package/dist/components/stzh-radio2.js.map +1 -1
  130. package/dist/components/stzh-radiogroup2.js.map +1 -1
  131. package/dist/components/stzh-skin-portal-mitwirken.js +1 -1
  132. package/dist/components/stzh-skin-portal-mitwirken.js.map +1 -1
  133. package/dist/components/stzh-timepicker.d.ts +11 -0
  134. package/dist/components/stzh-timepicker.js +132 -0
  135. package/dist/components/stzh-timepicker.js.map +1 -0
  136. package/dist/components/stzh-toggle.js.map +1 -1
  137. package/dist/components/stzh-upload.js +22 -8
  138. package/dist/components/stzh-upload.js.map +1 -1
  139. package/dist/components/translation-utils.js.map +1 -1
  140. package/dist/esm/{app-globals-0c7feedc.js → app-globals-862dc6d0.js} +2 -2
  141. package/dist/esm/{app-globals-0c7feedc.js.map → app-globals-862dc6d0.js.map} +1 -1
  142. package/dist/esm/index.js.map +1 -1
  143. package/dist/esm/loader.js +2 -2
  144. package/dist/esm/stzh-actions.entry.js +1 -5
  145. package/dist/esm/stzh-actions.entry.js.map +1 -1
  146. package/dist/esm/stzh-actionset.entry.js +2 -2
  147. package/dist/esm/stzh-actionset.entry.js.map +1 -1
  148. package/dist/esm/stzh-amount.entry.js +51 -70
  149. package/dist/esm/stzh-amount.entry.js.map +1 -1
  150. package/dist/esm/stzh-badge_3.entry.js +2 -2
  151. package/dist/esm/stzh-badge_3.entry.js.map +1 -1
  152. package/dist/esm/stzh-checkbox.entry.js.map +1 -1
  153. package/dist/esm/stzh-checkboxgroup.entry.js.map +1 -1
  154. package/dist/esm/stzh-components.js +2 -2
  155. package/dist/esm/stzh-datepicker_3.entry.js.map +1 -1
  156. package/dist/esm/stzh-dropdown.entry.js +60 -25
  157. package/dist/esm/stzh-dropdown.entry.js.map +1 -1
  158. package/dist/esm/stzh-ghettobox_2.entry.js +1 -1
  159. package/dist/esm/stzh-ghettobox_2.entry.js.map +1 -1
  160. package/dist/esm/stzh-input.entry.js.map +1 -1
  161. package/dist/esm/stzh-invert.entry.js +1 -1
  162. package/dist/esm/stzh-invert.entry.js.map +1 -1
  163. package/dist/esm/stzh-monthyearpicker.entry.js +187 -0
  164. package/dist/esm/stzh-monthyearpicker.entry.js.map +1 -0
  165. package/dist/esm/stzh-skin-portal-mitwirken.entry.js +1 -1
  166. package/dist/esm/stzh-skin-portal-mitwirken.entry.js.map +1 -1
  167. package/dist/esm/stzh-timepicker.entry.js +78 -0
  168. package/dist/esm/stzh-timepicker.entry.js.map +1 -0
  169. package/dist/esm/stzh-toggle.entry.js.map +1 -1
  170. package/dist/esm/stzh-upload.entry.js +19 -7
  171. package/dist/esm/stzh-upload.entry.js.map +1 -1
  172. package/dist/esm/translation-utils-2623783f.js.map +1 -1
  173. package/dist/esm-es5/{app-globals-0c7feedc.js → app-globals-862dc6d0.js} +2 -2
  174. package/dist/esm-es5/{app-globals-0c7feedc.js.map → app-globals-862dc6d0.js.map} +1 -1
  175. package/dist/esm-es5/index.js.map +1 -1
  176. package/dist/esm-es5/loader.js +1 -1
  177. package/dist/esm-es5/loader.js.map +1 -1
  178. package/dist/esm-es5/stzh-actions.entry.js +1 -1
  179. package/dist/esm-es5/stzh-actions.entry.js.map +1 -1
  180. package/dist/esm-es5/stzh-actionset.entry.js +1 -1
  181. package/dist/esm-es5/stzh-actionset.entry.js.map +1 -1
  182. package/dist/esm-es5/stzh-amount.entry.js +1 -1
  183. package/dist/esm-es5/stzh-amount.entry.js.map +1 -1
  184. package/dist/esm-es5/stzh-badge_3.entry.js +1 -1
  185. package/dist/esm-es5/stzh-badge_3.entry.js.map +1 -1
  186. package/dist/esm-es5/stzh-checkbox.entry.js.map +1 -1
  187. package/dist/esm-es5/stzh-checkboxgroup.entry.js.map +1 -1
  188. package/dist/esm-es5/stzh-components.js +1 -1
  189. package/dist/esm-es5/stzh-components.js.map +1 -1
  190. package/dist/esm-es5/stzh-datepicker_3.entry.js.map +1 -1
  191. package/dist/esm-es5/stzh-dropdown.entry.js +2 -2
  192. package/dist/esm-es5/stzh-dropdown.entry.js.map +1 -1
  193. package/dist/esm-es5/stzh-ghettobox_2.entry.js +1 -1
  194. package/dist/esm-es5/stzh-ghettobox_2.entry.js.map +1 -1
  195. package/dist/esm-es5/stzh-input.entry.js.map +1 -1
  196. package/dist/esm-es5/stzh-invert.entry.js +1 -1
  197. package/dist/esm-es5/stzh-invert.entry.js.map +1 -1
  198. package/dist/esm-es5/stzh-monthyearpicker.entry.js +2 -0
  199. package/dist/esm-es5/stzh-monthyearpicker.entry.js.map +1 -0
  200. package/dist/esm-es5/stzh-skin-portal-mitwirken.entry.js +1 -1
  201. package/dist/esm-es5/stzh-skin-portal-mitwirken.entry.js.map +1 -1
  202. package/dist/esm-es5/stzh-timepicker.entry.js +2 -0
  203. package/dist/esm-es5/stzh-timepicker.entry.js.map +1 -0
  204. package/dist/esm-es5/stzh-toggle.entry.js.map +1 -1
  205. package/dist/esm-es5/stzh-upload.entry.js +1 -1
  206. package/dist/esm-es5/stzh-upload.entry.js.map +1 -1
  207. package/dist/esm-es5/translation-utils-2623783f.js.map +1 -1
  208. package/dist/stzh-components/assets/i18n/de.json +10 -7
  209. package/dist/stzh-components/assets/i18n/en.json +8 -5
  210. package/dist/stzh-components/index.esm.js.map +1 -1
  211. package/dist/stzh-components/{p-8228cd4c.system.entry.js → p-09191103.system.entry.js} +2 -2
  212. package/dist/stzh-components/{p-8228cd4c.system.entry.js.map → p-09191103.system.entry.js.map} +1 -1
  213. package/dist/stzh-components/p-0f328a2d.system.entry.js +2 -0
  214. package/dist/stzh-components/{p-12964da2.system.entry.js.map → p-0f328a2d.system.entry.js.map} +1 -1
  215. package/dist/stzh-components/p-14e782cb.entry.js +2 -0
  216. package/dist/stzh-components/{p-85504842.entry.js.map → p-14e782cb.entry.js.map} +1 -1
  217. package/dist/stzh-components/p-1678e09c.system.js +2 -0
  218. package/dist/stzh-components/{p-8ebb6058.system.js.map → p-1678e09c.system.js.map} +1 -1
  219. package/dist/stzh-components/p-25a09313.js.map +1 -1
  220. package/dist/stzh-components/p-2615433f.system.entry.js +2 -0
  221. package/dist/stzh-components/p-2615433f.system.entry.js.map +1 -0
  222. package/dist/stzh-components/p-2907f1b5.entry.js +2 -0
  223. package/dist/stzh-components/{p-72da8eba.entry.js.map → p-2907f1b5.entry.js.map} +1 -1
  224. package/dist/stzh-components/{p-728cc738.entry.js → p-2d25bcc8.entry.js} +2 -2
  225. package/dist/stzh-components/p-2d25bcc8.entry.js.map +1 -0
  226. package/dist/stzh-components/p-2f3add2f.system.entry.js +2 -0
  227. package/dist/stzh-components/{p-0fa1dc9b.system.entry.js.map → p-2f3add2f.system.entry.js.map} +1 -1
  228. package/dist/stzh-components/p-39a4904e.system.entry.js.map +1 -1
  229. package/dist/stzh-components/p-3aa5623c.entry.js.map +1 -1
  230. package/dist/stzh-components/{p-37cfb2b2.system.js → p-3b4833a0.system.js} +2 -2
  231. package/dist/stzh-components/{p-37cfb2b2.system.js.map → p-3b4833a0.system.js.map} +1 -1
  232. package/dist/stzh-components/p-3cb43903.entry.js.map +1 -1
  233. package/dist/stzh-components/p-49a0420a.entry.js +2 -0
  234. package/dist/stzh-components/{p-8bbb27f2.entry.js.map → p-49a0420a.entry.js.map} +1 -1
  235. package/dist/stzh-components/p-51f1714c.system.entry.js +2 -0
  236. package/dist/stzh-components/p-51f1714c.system.entry.js.map +1 -0
  237. package/dist/stzh-components/p-5aa96b49.system.entry.js +2 -0
  238. package/dist/stzh-components/p-5aa96b49.system.entry.js.map +1 -0
  239. package/dist/stzh-components/p-5d8ad1f4.system.entry.js.map +1 -1
  240. package/dist/stzh-components/{p-6ee544b4.entry.js → p-62188444.entry.js} +2 -2
  241. package/dist/stzh-components/{p-6ee544b4.entry.js.map → p-62188444.entry.js.map} +1 -1
  242. package/dist/stzh-components/{p-e683abe3.system.entry.js → p-6d097e82.system.entry.js} +2 -2
  243. package/dist/stzh-components/p-6d097e82.system.entry.js.map +1 -0
  244. package/dist/stzh-components/p-82e886d4.entry.js.map +1 -1
  245. package/dist/stzh-components/{p-d69b11ec.system.entry.js → p-94a5e295.system.entry.js} +2 -2
  246. package/dist/stzh-components/p-94a5e295.system.entry.js.map +1 -0
  247. package/dist/stzh-components/p-9b7d4e8d.entry.js.map +1 -1
  248. package/dist/stzh-components/p-9d46101e.entry.js +2 -0
  249. package/dist/stzh-components/p-9d46101e.entry.js.map +1 -0
  250. package/dist/stzh-components/p-9f31cf7d.entry.js +2 -0
  251. package/dist/stzh-components/p-9f31cf7d.entry.js.map +1 -0
  252. package/dist/stzh-components/p-9fe69be8.system.entry.js +2 -0
  253. package/dist/stzh-components/{p-479a02fb.system.entry.js.map → p-9fe69be8.system.entry.js.map} +1 -1
  254. package/dist/stzh-components/p-a408bfba.system.js.map +1 -1
  255. package/dist/stzh-components/p-ad33db31.entry.js +2 -0
  256. package/dist/stzh-components/p-ad33db31.entry.js.map +1 -0
  257. package/dist/stzh-components/p-b05c240b.system.entry.js.map +1 -1
  258. package/dist/stzh-components/p-b5cda655.entry.js +2 -0
  259. package/dist/stzh-components/p-b5cda655.entry.js.map +1 -0
  260. package/dist/stzh-components/p-b8ad5f47.system.entry.js.map +1 -1
  261. package/dist/stzh-components/{p-a226d634.js → p-bc82ed48.js} +2 -2
  262. package/dist/stzh-components/{p-a226d634.js.map → p-bc82ed48.js.map} +1 -1
  263. package/dist/stzh-components/{p-5e09547b.entry.js → p-bcd5b20e.entry.js} +2 -2
  264. package/dist/stzh-components/p-bcd5b20e.entry.js.map +1 -0
  265. package/dist/stzh-components/p-c0f971f2.entry.js +9 -0
  266. package/dist/stzh-components/p-c0f971f2.entry.js.map +1 -0
  267. package/dist/stzh-components/p-c901fe72.system.entry.js +9 -0
  268. package/dist/stzh-components/p-c901fe72.system.entry.js.map +1 -0
  269. package/dist/stzh-components/p-cc35e963.entry.js.map +1 -1
  270. package/dist/stzh-components/p-e8545386.system.entry.js +2 -0
  271. package/dist/stzh-components/p-e8545386.system.entry.js.map +1 -0
  272. package/dist/stzh-components/p-eaa65f52.system.js.map +1 -1
  273. package/dist/stzh-components/p-f2d74491.system.entry.js.map +1 -1
  274. package/dist/stzh-components/stzh-components.css +1 -1
  275. package/dist/stzh-components/stzh-components.esm.js +1 -1
  276. package/dist/stzh-components/stzh-components.esm.js.map +1 -1
  277. package/dist/stzh-components/stzh-components.js +1 -1
  278. package/dist/types/components/stzh-amount/stzh-amount.localization.d.ts +0 -2
  279. package/dist/types/components/stzh-monthyearpicker/stzh-monthyearpicker.localization.d.ts +5 -0
  280. package/dist/types/components/stzh-timepicker/stzh-timepicker.localization.d.ts +2 -0
  281. package/dist/types/components.d.ts +454 -22
  282. package/dist/types/index.d.ts +19 -0
  283. package/dist/types/utils/translation-utils.d.ts +1 -0
  284. package/dist/vscode-data.json +282 -8
  285. package/package.json +1 -1
  286. package/dist/stzh-components/p-09a8bcde.system.entry.js +0 -9
  287. package/dist/stzh-components/p-09a8bcde.system.entry.js.map +0 -1
  288. package/dist/stzh-components/p-0fa1dc9b.system.entry.js +0 -2
  289. package/dist/stzh-components/p-12964da2.system.entry.js +0 -2
  290. package/dist/stzh-components/p-2ee0d173.system.entry.js +0 -2
  291. package/dist/stzh-components/p-2ee0d173.system.entry.js.map +0 -1
  292. package/dist/stzh-components/p-30e04d53.entry.js +0 -2
  293. package/dist/stzh-components/p-30e04d53.entry.js.map +0 -1
  294. package/dist/stzh-components/p-427461c5.system.entry.js +0 -2
  295. package/dist/stzh-components/p-427461c5.system.entry.js.map +0 -1
  296. package/dist/stzh-components/p-479a02fb.system.entry.js +0 -2
  297. package/dist/stzh-components/p-5e09547b.entry.js.map +0 -1
  298. package/dist/stzh-components/p-66c1942a.entry.js +0 -2
  299. package/dist/stzh-components/p-66c1942a.entry.js.map +0 -1
  300. package/dist/stzh-components/p-728cc738.entry.js.map +0 -1
  301. package/dist/stzh-components/p-72da8eba.entry.js +0 -2
  302. package/dist/stzh-components/p-85504842.entry.js +0 -2
  303. package/dist/stzh-components/p-8bbb27f2.entry.js +0 -2
  304. package/dist/stzh-components/p-8ebb6058.system.js +0 -2
  305. package/dist/stzh-components/p-c4503250.entry.js +0 -9
  306. package/dist/stzh-components/p-c4503250.entry.js.map +0 -1
  307. package/dist/stzh-components/p-d69b11ec.system.entry.js.map +0 -1
  308. package/dist/stzh-components/p-e683abe3.system.entry.js.map +0 -1
@@ -1,34 +1,4 @@
1
- import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
-
3
- const stzhButtongroupCss = ".sc-stzh-buttongroup-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-buttongroup-h{display:none}.sc-stzh-buttongroup-h *.sc-stzh-buttongroup,.sc-stzh-buttongroup-h *.sc-stzh-buttongroup::before,.sc-stzh-buttongroup-h *.sc-stzh-buttongroup::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-buttongroup-h .sc-stzh-buttongroup-s>stzh-button:first-child{--border-radius:var(--stzh-button-border-radius) 0px 0px var(--stzh-button-border-radius);--border-width:0.0625rem 0px 0.0625rem 0.0625rem}.sc-stzh-buttongroup-h .sc-stzh-buttongroup-s>stzh-button:last-child{--border-radius:0px var(--stzh-button-border-radius) var(--stzh-button-border-radius) 0px;--border-width:0.0625rem 0.0625rem 0.0625rem 0px}.sc-stzh-buttongroup-h .sc-stzh-buttongroup-s>stzh-button:first-child:last-child{--border-width:0.0625rem;--border-radius:var(--stzh-button-border-radius)}.sc-stzh-buttongroup-h .sc-stzh-buttongroup-s>stzh-button:first-child+stzh-button:last-child{--border-width:0.0625rem}.sc-stzh-buttongroup-h .sc-stzh-buttongroup-s>stzh-button:not(:first-child):not(:last-child){--border-radius:0px}.stzh-buttongroup.sc-stzh-buttongroup{display:-ms-flexbox;display:flex}";
4
-
5
- const StzhButtongroup$1 = /*@__PURE__*/ proxyCustomElement(class StzhButtongroup extends HTMLElement {
6
- constructor() {
7
- super();
8
- this.__registerHost();
9
- }
10
- render() {
11
- const classes = {
12
- "stzh-buttongroup": true
13
- };
14
- return (h(Host, null, h("div", { class: classes }, h("slot", null))));
15
- }
16
- get element() { return this; }
17
- static get style() { return stzhButtongroupCss; }
18
- }, [6, "stzh-buttongroup"]);
19
- function defineCustomElement$1() {
20
- if (typeof customElements === "undefined") {
21
- return;
22
- }
23
- const components = ["stzh-buttongroup"];
24
- components.forEach(tagName => { switch (tagName) {
25
- case "stzh-buttongroup":
26
- if (!customElements.get(tagName)) {
27
- customElements.define(tagName, StzhButtongroup$1);
28
- }
29
- break;
30
- } });
31
- }
1
+ import { S as StzhButtongroup$1, d as defineCustomElement$1 } from './stzh-buttongroup2.js';
32
2
 
33
3
  const StzhButtongroup = StzhButtongroup$1;
34
4
  const defineCustomElement = defineCustomElement$1;
@@ -1 +1 @@
1
- {"file":"stzh-buttongroup.js","mappings":";;AAAA,MAAM,kBAAkB,GAAG,o8CAAo8C;;MCel9CA,iBAAe;;;;;EAG1B,MAAM;IACJ,MAAM,OAAO,GAAG;MACd,kBAAkB,EAAE,IAAI;KACzB,CAAC;IAEF,QACE,EAAC,IAAI,QACH,WAAK,KAAK,EAAE,OAAO,IACjB,eAAa,CACT,CACD,EACP;GACH;;;;;;;;;;;;;;;;;;;;;;;","names":["StzhButtongroup"],"sources":["./src/components/stzh-buttongroup/stzh-buttongroup.scss?tag=stzh-buttongroup&encapsulation=scoped","./src/components/stzh-buttongroup/stzh-buttongroup.tsx"],"sourcesContent":[":host {\n ::slotted(stzh-button) {\n &:first-child {\n --border-radius: #{$buttonBorderRadius 0px 0px $buttonBorderRadius};\n --border-width: 1px 0px 1px 1px;\n }\n\n &:last-child {\n --border-radius: #{0px $buttonBorderRadius $buttonBorderRadius 0px};\n --border-width: 1px 1px 1px 0px;\n }\n\n // only one button\n &:first-child:last-child {\n --border-width: 1px;\n --border-radius: #{$buttonBorderRadius};\n }\n\n // when only two buttons\n &:first-child + stzh-button:last-child {\n --border-width: 1px;\n }\n\n // buttons in the middle\n &:not(:first-child):not(:last-child) {\n --border-radius: 0px;\n }\n }\n}\n\n.stzh-buttongroup {\n display: flex;\n}\n","import {\n Component,\n Host,\n h,\n Element\n} from \"@stencil/core\";\n\n/**\n * @slot - Slot for buttons\n */\n@Component({\n tag: \"stzh-buttongroup\",\n styleUrl: \"stzh-buttongroup.scss\",\n scoped: true\n})\nexport class StzhButtongroup {\n @Element() element: HTMLStzhButtongroupElement;\n\n render() {\n const classes = {\n \"stzh-buttongroup\": true\n };\n\n return (\n <Host>\n <div class={classes}>\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"stzh-buttongroup.js","mappings":";;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}
@@ -0,0 +1,35 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+
3
+ const stzhButtongroupCss = ".sc-stzh-buttongroup-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-buttongroup-h{display:none}.sc-stzh-buttongroup-h *.sc-stzh-buttongroup,.sc-stzh-buttongroup-h *.sc-stzh-buttongroup::before,.sc-stzh-buttongroup-h *.sc-stzh-buttongroup::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-buttongroup-h .sc-stzh-buttongroup-s>stzh-button:first-child{--border-radius:var(--stzh-button-border-radius) 0px 0px var(--stzh-button-border-radius);--border-width:0.0625rem 0px 0.0625rem 0.0625rem}.sc-stzh-buttongroup-h .sc-stzh-buttongroup-s>stzh-button:last-child{--border-radius:0px var(--stzh-button-border-radius) var(--stzh-button-border-radius) 0px;--border-width:0.0625rem 0.0625rem 0.0625rem 0px}.sc-stzh-buttongroup-h .sc-stzh-buttongroup-s>stzh-button:first-child:last-child{--border-width:0.0625rem;--border-radius:var(--stzh-button-border-radius)}.sc-stzh-buttongroup-h .sc-stzh-buttongroup-s>stzh-button:first-child+stzh-button:last-child{--border-width:0.0625rem}.sc-stzh-buttongroup-h .sc-stzh-buttongroup-s>stzh-button:not(:first-child):not(:last-child){--border-radius:0px}.stzh-buttongroup.sc-stzh-buttongroup{display:-ms-flexbox;display:flex}";
4
+
5
+ const StzhButtongroup = /*@__PURE__*/ proxyCustomElement(class StzhButtongroup extends HTMLElement {
6
+ constructor() {
7
+ super();
8
+ this.__registerHost();
9
+ }
10
+ render() {
11
+ const classes = {
12
+ "stzh-buttongroup": true
13
+ };
14
+ return (h(Host, null, h("div", { class: classes }, h("slot", null))));
15
+ }
16
+ get element() { return this; }
17
+ static get style() { return stzhButtongroupCss; }
18
+ }, [6, "stzh-buttongroup"]);
19
+ function defineCustomElement() {
20
+ if (typeof customElements === "undefined") {
21
+ return;
22
+ }
23
+ const components = ["stzh-buttongroup"];
24
+ components.forEach(tagName => { switch (tagName) {
25
+ case "stzh-buttongroup":
26
+ if (!customElements.get(tagName)) {
27
+ customElements.define(tagName, StzhButtongroup);
28
+ }
29
+ break;
30
+ } });
31
+ }
32
+
33
+ export { StzhButtongroup as S, defineCustomElement as d };
34
+
35
+ //# sourceMappingURL=stzh-buttongroup2.js.map
@@ -0,0 +1 @@
1
+ {"file":"stzh-buttongroup2.js","mappings":";;AAAA,MAAM,kBAAkB,GAAG,o8CAAo8C;;MCel9C,eAAe;;;;;EAG1B,MAAM;IACJ,MAAM,OAAO,GAAG;MACd,kBAAkB,EAAE,IAAI;KACzB,CAAC;IAEF,QACE,EAAC,IAAI,QACH,WAAK,KAAK,EAAE,OAAO,IACjB,eAAa,CACT,CACD,EACP;GACH;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["./src/components/stzh-buttongroup/stzh-buttongroup.scss?tag=stzh-buttongroup&encapsulation=scoped","./src/components/stzh-buttongroup/stzh-buttongroup.tsx"],"sourcesContent":[":host {\n ::slotted(stzh-button) {\n &:first-child {\n --border-radius: #{$buttonBorderRadius 0px 0px $buttonBorderRadius};\n --border-width: 1px 0px 1px 1px;\n }\n\n &:last-child {\n --border-radius: #{0px $buttonBorderRadius $buttonBorderRadius 0px};\n --border-width: 1px 1px 1px 0px;\n }\n\n // only one button\n &:first-child:last-child {\n --border-width: 1px;\n --border-radius: #{$buttonBorderRadius};\n }\n\n // when only two buttons\n &:first-child + stzh-button:last-child {\n --border-width: 1px;\n }\n\n // buttons in the middle\n &:not(:first-child):not(:last-child) {\n --border-radius: 0px;\n }\n }\n}\n\n.stzh-buttongroup {\n display: flex;\n}\n","import {\n Component,\n Host,\n h,\n Element\n} from \"@stencil/core\";\n\n/**\n * @slot - Slot for buttons\n */\n@Component({\n tag: \"stzh-buttongroup\",\n styleUrl: \"stzh-buttongroup.scss\",\n scoped: true\n})\nexport class StzhButtongroup {\n @Element() element: HTMLStzhButtongroupElement;\n\n render() {\n const classes = {\n \"stzh-buttongroup\": true\n };\n\n return (\n <Host>\n <div class={classes}>\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"file":"stzh-checkbox.js","mappings":"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","names":["StzhCheckbox"],"sources":["./src/components/stzh-checkbox/stzh-checkbox.scss?tag=stzh-checkbox&encapsulation=scoped","./src/components/stzh-checkbox/stzh-checkbox.tsx"],"sourcesContent":[":host {\n display: inline-block;\n\n ::slotted(stzh-text) {\n --color: inherit;\n }\n}\n\n.stzh-checkbox {\n\t@include input-description;\n\n &__field-wrapper {\n @include fontSize('milli');\n position: relative;\n display: flex;\n user-select: none;\n cursor: pointer;\n }\n\n &__input {\n @include visuallyhiddenInput;\n border-radius: $formInputBorderRadius;\n }\n\n &__mark {\n border: 1px solid $formBorderColor;\n background-color: $colorWhite;\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n border-radius: $formInputBorderRadius;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n transition: border-color $baseTransitionAnimationSpeed;\n }\n\n &__check {\n display: flex;\n flex-direction: column;\n justify-content: center;\n opacity: 0;\n color: $colorPrimary;\n }\n\n &__label {\n display: inline-block;\n color: $baseColor;\n transition: color $baseTransitionAnimationSpeed;\n margin-left: space('small');\n line-height: 24px;\n\n &:empty {\n display: none;\n }\n }\n\n &__marker-symbol {\n @include fontSize('micro');\n }\n\n /* Hover / Focus / Checked */\n\n &:hover &__label,\n &__input:checked:hover ~ &__label,\n &__input:checked:hover ~ &__mark &__check,\n &__input:checked:focus ~ &__mark &__check {\n color: $colorPrimaryHover;\n }\n\n &__input:checked ~ &__label {\n color: $colorPrimary;\n }\n\n &:hover &__mark,\n &__input:focus:hover ~ &__mark,\n &__input:checked:hover ~ &__mark,\n &__input:checked:focus ~ &__mark {\n border-color: $colorPrimaryHover;\n }\n\n &__input:focus ~ &__mark,\n &__input:checked ~ &__mark {\n border-color: $colorPrimary;\n }\n\n &__input:checked ~ &__mark &__check {\n opacity: 1;\n }\n\n /* Invalid */\n\n &--is-invalid &__input ~ &__label,\n &--is-invalid &__input ~ &__mark &__check {\n color: $colorError;\n }\n\n &--is-invalid &__input ~ &__mark {\n border-color: $colorError;\n }\n\n /* Disabled */\n\n\t&--is-disabled &__field-wrapper {\n cursor: not-allowed;\n }\n\n &--is-disabled &__input ~ &__label {\n color: $formDisabledColor;\n }\n\n &--is-disabled &__input ~ &__mark &__check {\n color: $colorGrey70;\n }\n\n &--is-disabled &__input ~ &__mark {\n border-color: $formDisabledBorderColor;\n }\n\n &--is-disabled &__mark {\n background-color: $formDisabledBackgroundColor;\n }\n}\n","import {\n Host,\n Component,\n Prop,\n Event,\n EventEmitter,\n Element,\n Method,\n h,\n Watch\n} from \"@stencil/core\";\n\nimport {\n StzhCheckboxChangeEvent,\n StzhCheckboxFocusEvent,\n StzhCheckboxBlurEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { fetchTranslations, StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"../stzh-input/stzh-input-description\";\n\nimport Check from './assets/check.svg';\n\nlet checkboxCounter = 0;\n\n/**\n * @slot - Slot for label content\n * @slot description - Slot for description\n * @slot description-long - Slot for long description (in popover)\n * @slot error - Slot for error\n */\n@Component({\n tag: \"stzh-checkbox\",\n styleUrl: \"stzh-checkbox.scss\",\n scoped: true\n})\nexport class StzhCheckbox {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Whether the checkbox is disabled */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Name of the input element */\n @Prop({ reflect: true }) name: string = \"\";\n\n /** Value of the input element */\n @Prop({ mutable: true }) value: string = \"\";\n\n /** Invalid status */\n @Prop({ reflect: true }) invalid: boolean = false;\n\n /** Required status */\n @Prop({ reflect: true }) required: boolean = false;\n\n /** Checked status */\n @Prop({ mutable: true, reflect: true }) checked: boolean = false;\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** Description message (use description slot as alternative) */\n @Prop() description: string;\n\n /** Long description message appearing in a popover (use description-long slot as alternative) */\n @Prop() descriptionLong: string;\n\n /** Append text to label depending if field is optional/required. true -> show \"(optional)\", false -> show noting */\n @Prop({ reflect: true }) showMarker: boolean = false;\n\n /** One or multiple error message (use error slot as alternative) */\n @Prop() error: string | string[];\n private _error: string[];\n\n /** Id for element which describes the input (this will be overwritten if description prop or slot is used) */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Focus input field */\n @Method()\n async setFocus() {\n this.input.focus();\n }\n\n /** Change event */\n @Event() stzhChange: EventEmitter<StzhCheckboxChangeEvent>;\n\n /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhCheckboxFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhCheckboxBlurEvent>;\n\n @Watch(\"error\")\n errorWatcher(newValue: string | string[]) {\n if (typeof newValue === \"string\") {\n try {\n this._error = JSON.parse(newValue);\n } catch (e) {\n if (newValue) {\n this._error = [newValue];\n } else {\n this._error = [];\n }\n }\n } else if (newValue) {\n this._error = newValue;\n } else {\n this._error = [];\n }\n\n this.invalid = this._error.length > 0;\n }\n\n @Element() element: HTMLStzhRadioElement;\n\n private input: HTMLInputElement;\n private inputId: string;\n private focusedByInput: boolean = false;\n\n private onInput = (event: InputEvent) => {\n this.checked = this.input.checked;\n this.stzhChange.emit({\n component: \"stzh-checkbox\",\n originalEvent: event,\n value: this.value,\n checked: this.checked\n });\n }\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.setFocus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n const focusEvent = new FocusEvent('focus', {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n this.stzhFocus.emit({\n component: \"stzh-checkbox\",\n originalEvent: event\n });\n }\n\n private onBlur = (event: FocusEvent) => {\n const blurEvent = new FocusEvent('blur', {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(blurEvent);\n this.stzhBlur.emit({\n component: \"stzh-checkbox\",\n originalEvent: event\n });\n }\n\n async componentWillLoad() {\n this.inputId = `stzh-checkbox-${checkboxCounter++}`;\n this.errorWatcher(this.error);\n\n if (!this.localization) {\n this.localization = await fetchTranslations(this.element, 'checkbox');\n }\n }\n\n render() {\n const descriptionUsed = hasSlot(this.element, 'description') || !!this.description;\n const descriptionLongUsed = hasSlot(this.element, 'description-long') || !!this.descriptionLong;\n const errorUsed = hasSlot(this.element, 'error') || !!this.error;\n\n const classes = {\n \"stzh-checkbox\": true,\n \"stzh-checkbox--has-description\": descriptionUsed,\n \"stzh-checkbox--has-description-long\": descriptionLongUsed,\n \"stzh-checkbox--has-error\": errorUsed,\n \"stzh-checkbox--is-required\": this.required,\n \"stzh-checkbox--is-invalid\": this.invalid,\n \"stzh-checkbox--is-disabled\": this.disabled\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n <label class=\"stzh-checkbox__field-wrapper\">\n <input\n class=\"stzh-checkbox__input\"\n ref={(el) => (this.input = el as HTMLInputElement)}\n type=\"checkbox\"\n id={this.inputId}\n name={this.name}\n value={this.value}\n disabled={this.disabled}\n aria-describedby={`${this.inputId}-description ${this.a11yDescribedby}`}\n aria-required={this.required ? \"true\" : \"false\"}\n aria-invalid={this.invalid ? \"true\" : \"false\"}\n checked={this.checked}\n onInput={this.onInput}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n />\n <div class=\"stzh-checkbox__mark\">\n <div class=\"stzh-checkbox__check\" innerHTML={Check} />\n </div>\n <div class=\"stzh-checkbox__label\">\n {this.label ? this.label : <slot></slot>}\n {this.showMarker &&\n <span class=\"stzh-checkbox__marker\">\n <span class=\"stzh-checkbox__marker-symbol\" aria-hidden=\"true\">\n {this.required\n ? this.localization.$globals.requiredFieldMarker\n : this.localization.$globals.optionalFieldMarker\n }\n </span>\n <span class=\"stzh-checkbox__marker-text\">\n {this.required\n ? this.localization.$globals.requiredFieldText\n : this.localization.$globals.optionalFieldText\n }\n </span>\n </span>\n }\n </div>\n </label>\n <StzhInputDescription\n classPrefix=\"stzh-checkbox\"\n id={`${this.inputId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"stzh-checkbox.js","mappings":"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","names":["StzhCheckbox"],"sources":["./src/components/stzh-checkbox/stzh-checkbox.scss?tag=stzh-checkbox&encapsulation=scoped","./src/components/stzh-checkbox/stzh-checkbox.tsx"],"sourcesContent":[":host {\n display: inline-block;\n\n ::slotted(stzh-text) {\n --color: inherit;\n }\n}\n\n.stzh-checkbox {\n\t@include input-description;\n\n &__field-wrapper {\n @include fontSize('milli');\n position: relative;\n display: flex;\n user-select: none;\n cursor: pointer;\n }\n\n &__input {\n @include visuallyhiddenInput;\n border-radius: $formInputBorderRadius;\n }\n\n &__mark {\n border: 1px solid $formBorderColor;\n background-color: $colorWhite;\n width: 24px;\n height: 24px;\n flex-shrink: 0;\n border-radius: $formInputBorderRadius;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n transition: border-color $baseTransitionAnimationSpeed;\n }\n\n &__check {\n display: flex;\n flex-direction: column;\n justify-content: center;\n opacity: 0;\n color: $colorPrimary;\n }\n\n &__label {\n display: inline-block;\n color: $baseColor;\n transition: color $baseTransitionAnimationSpeed;\n margin-left: space('small');\n line-height: 24px;\n\n &:empty {\n display: none;\n }\n }\n\n &__marker-symbol {\n @include fontSize('micro');\n }\n\n /* Hover / Focus / Checked */\n\n &:hover &__label,\n &__input:checked:hover ~ &__label,\n &__input:checked:hover ~ &__mark &__check,\n &__input:checked:focus ~ &__mark &__check {\n color: $colorPrimaryHover;\n }\n\n &__input:checked ~ &__label {\n color: $colorPrimary;\n }\n\n &:hover &__mark,\n &__input:focus:hover ~ &__mark,\n &__input:checked:hover ~ &__mark,\n &__input:checked:focus ~ &__mark {\n border-color: $colorPrimaryHover;\n }\n\n &__input:focus ~ &__mark,\n &__input:checked ~ &__mark {\n border-color: $colorPrimary;\n }\n\n &__input:checked ~ &__mark &__check {\n opacity: 1;\n }\n\n /* Invalid */\n\n &--is-invalid &__input ~ &__label,\n &--is-invalid &__input ~ &__mark &__check {\n color: $colorError;\n }\n\n &--is-invalid &__input ~ &__mark {\n border-color: $colorError;\n }\n\n /* Disabled */\n\n\t&--is-disabled &__field-wrapper {\n cursor: not-allowed;\n }\n\n &--is-disabled &__input ~ &__label {\n color: $formDisabledColor;\n }\n\n &--is-disabled &__input ~ &__mark &__check {\n color: $colorGrey70;\n }\n\n &--is-disabled &__input ~ &__mark {\n border-color: $formDisabledBorderColor;\n }\n\n &--is-disabled &__mark {\n background-color: $formDisabledBackgroundColor;\n }\n}\n","import {\n Host,\n Component,\n Prop,\n Event,\n EventEmitter,\n Element,\n Method,\n h,\n Watch\n} from \"@stencil/core\";\n\nimport {\n StzhCheckboxChangeEvent,\n StzhCheckboxFocusEvent,\n StzhCheckboxBlurEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { fetchTranslations, StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"../stzh-input/stzh-input-description\";\n\nimport Check from './assets/check.svg';\n\nlet checkboxCounter = 0;\n\n/**\n * @slot - Slot for label content\n * @slot description - Slot for description\n * @slot description-long - Slot for long description (in popover)\n * @slot error - Slot for error\n */\n@Component({\n tag: \"stzh-checkbox\",\n styleUrl: \"stzh-checkbox.scss\",\n scoped: true\n})\nexport class StzhCheckbox {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Whether the checkbox is disabled */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Name of the input element */\n @Prop({ reflect: true }) name: string = \"\";\n\n /** Value of the input element */\n @Prop({ mutable: true }) value: string = \"\";\n\n /** Invalid status */\n @Prop({ reflect: true }) invalid: boolean = false;\n\n /** Required status */\n @Prop({ reflect: true }) required: boolean = false;\n\n /** Checked status */\n @Prop({ mutable: true, reflect: true }) checked: boolean = false;\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** Description message (use description slot as alternative) */\n @Prop() description: string;\n\n /** Long description message appearing in a popover (use description-long slot as alternative) */\n @Prop() descriptionLong: string;\n\n /** Append text to label depending if field is optional/required. true -> show \"(optional)\", false -> show nothing */\n @Prop({ reflect: true }) showMarker: boolean = false;\n\n /** One or multiple error message (use error slot as alternative) */\n @Prop() error: string | string[];\n private _error: string[];\n\n /** Id for element which describes the input (this will be overwritten if description prop or slot is used) */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Focus input field */\n @Method()\n async setFocus() {\n this.input.focus();\n }\n\n /** Change event */\n @Event() stzhChange: EventEmitter<StzhCheckboxChangeEvent>;\n\n /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhCheckboxFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhCheckboxBlurEvent>;\n\n @Watch(\"error\")\n errorWatcher(newValue: string | string[]) {\n if (typeof newValue === \"string\") {\n try {\n this._error = JSON.parse(newValue);\n } catch (e) {\n if (newValue) {\n this._error = [newValue];\n } else {\n this._error = [];\n }\n }\n } else if (newValue) {\n this._error = newValue;\n } else {\n this._error = [];\n }\n\n this.invalid = this._error.length > 0;\n }\n\n @Element() element: HTMLStzhRadioElement;\n\n private input: HTMLInputElement;\n private inputId: string;\n private focusedByInput: boolean = false;\n\n private onInput = (event: InputEvent) => {\n this.checked = this.input.checked;\n this.stzhChange.emit({\n component: \"stzh-checkbox\",\n originalEvent: event,\n value: this.value,\n checked: this.checked\n });\n }\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.setFocus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n const focusEvent = new FocusEvent('focus', {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n this.stzhFocus.emit({\n component: \"stzh-checkbox\",\n originalEvent: event\n });\n }\n\n private onBlur = (event: FocusEvent) => {\n const blurEvent = new FocusEvent('blur', {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(blurEvent);\n this.stzhBlur.emit({\n component: \"stzh-checkbox\",\n originalEvent: event\n });\n }\n\n async componentWillLoad() {\n this.inputId = `stzh-checkbox-${checkboxCounter++}`;\n this.errorWatcher(this.error);\n\n if (!this.localization) {\n this.localization = await fetchTranslations(this.element, 'checkbox');\n }\n }\n\n render() {\n const descriptionUsed = hasSlot(this.element, 'description') || !!this.description;\n const descriptionLongUsed = hasSlot(this.element, 'description-long') || !!this.descriptionLong;\n const errorUsed = hasSlot(this.element, 'error') || !!this.error;\n\n const classes = {\n \"stzh-checkbox\": true,\n \"stzh-checkbox--has-description\": descriptionUsed,\n \"stzh-checkbox--has-description-long\": descriptionLongUsed,\n \"stzh-checkbox--has-error\": errorUsed,\n \"stzh-checkbox--is-required\": this.required,\n \"stzh-checkbox--is-invalid\": this.invalid,\n \"stzh-checkbox--is-disabled\": this.disabled\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n <label class=\"stzh-checkbox__field-wrapper\">\n <input\n class=\"stzh-checkbox__input\"\n ref={(el) => (this.input = el as HTMLInputElement)}\n type=\"checkbox\"\n id={this.inputId}\n name={this.name}\n value={this.value}\n disabled={this.disabled}\n aria-describedby={`${this.inputId}-description ${this.a11yDescribedby}`}\n aria-required={this.required ? \"true\" : \"false\"}\n aria-invalid={this.invalid ? \"true\" : \"false\"}\n checked={this.checked}\n onInput={this.onInput}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n />\n <div class=\"stzh-checkbox__mark\">\n <div class=\"stzh-checkbox__check\" innerHTML={Check} />\n </div>\n <div class=\"stzh-checkbox__label\">\n {this.label ? this.label : <slot></slot>}\n {this.showMarker &&\n <span class=\"stzh-checkbox__marker\">\n <span class=\"stzh-checkbox__marker-symbol\" aria-hidden=\"true\">\n {this.required\n ? this.localization.$globals.requiredFieldMarker\n : this.localization.$globals.optionalFieldMarker\n }\n </span>\n <span class=\"stzh-checkbox__marker-text\">\n {this.required\n ? this.localization.$globals.requiredFieldText\n : this.localization.$globals.optionalFieldText\n }\n </span>\n </span>\n }\n </div>\n </label>\n <StzhInputDescription\n classPrefix=\"stzh-checkbox\"\n id={`${this.inputId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"file":"stzh-checkboxgroup.js","mappings":";;;;;;;;AAAA,MAAM,oBAAoB,GAAG,o0IAAo0I;;ACiBj2I,IAAI,oBAAoB,GAAG,CAAC,CAAC;MAahBA,mBAAiB;;;;IAwBpB,WAAM,GAAa,EAAE,CAAC;IAoBtB,6BAAwB,GAAa,EAAE,CAAC;IA+FxC,SAAI,GAAG;MACb,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC;MAC7E,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,EAAE,GAAG,IAAI,CAAC,eAAe,cAAc,CAAC,CAAC;MAEzF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;MAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;MAC1B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;MAClC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;MAChC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KACvC,CAAA;;oBA/I4C,KAAK;;;sBASH,KAAK;mBAGR,KAAK;sBAGF,KAAK;iBAGA,EAAE;qBAIU,UAAU;;;;2BAad,IAAI;mCAGX,EAAE;;EAOvD,SAAS,CAAC,QAAgB;IACxB,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;GACjD;EAGD,aAAa,CAAC,QAAiB;IAC7B,IAAI,CAAC,wBAAwB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;GACrD;EAGD,YAAY,CAAC,QAAiB;IAC5B,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;GACpD;EAGD,eAAe,CAAC,QAAiB;IAC/B,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;GACtD;EAGD,UAAU,CAAC,QAA2B;IACpC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;MAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;KACpC;SAAM;MACL,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;KACxB;IAED,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;GAChD;EAGD,YAAY,CAAC,QAA2B;IACtC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;MAChC,IAAI;QACF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;OACpC;MAAC,OAAO,CAAC,EAAE;QACV,IAAI,QAAQ,EAAE;UACZ,IAAI,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC;SAC1B;aAAM;UACL,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;SAClB;OACF;KACF;SAAM,IAAI,QAAQ,EAAE;MACnB,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;KACxB;SAAM;MACL,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;KAClB;IAED,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;GACvC;EAGD,8BAA8B,CAAC,QAA2B;IACxD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;MAChC,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;KACtD;SAAM;MACL,IAAI,CAAC,wBAAwB,GAAG,QAAQ,CAAC;KAC1C;GACF;EAGD,QAAQ,CAAC,KAA2C;IAClD,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE;MACxB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;KACtC;SAAM;MACL,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;KACzE;IAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;GAC1B;EAOO,wBAAwB,CAAC,IAAY,EAAE,KAAU;IACvD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,QAAiC;MACxD,IAAI,IAAI,KAAK,MAAM,KAAK,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QAC3E,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC;OACnC;KACF,CAAC,CAAC;GACJ;EAEO,4BAA4B,CAAC,KAAe;IAClD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC9F,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;GAC5F;EAaD,MAAM,iBAAiB;IACrB,IAAI,CAAC,eAAe,GAAG,sBAAsB,oBAAoB,EAAE,EAAE,CAAC;IACtE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAElE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;MACtB,IAAI,CAAC,YAAY,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;KAC5E;GACF;EAED,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE,IAAY;IACtD,OAAO,IAAI,KAAK,iBAAiB,CAAC;GACnC;EAED,kBAAkB;IAChB,IAAI,CAAC,IAAI,EAAE,CAAC;GACb;EAED,iBAAiB;IACf,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;MACtB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC;;MAG7E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU;SACzB,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC;SACpC,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC;KACpC;IAED,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE;MAClC,SAAS,EAAE,IAAI;MACf,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;GACJ;EAED,oBAAoB;IAClB,IAAI,IAAI,CAAC,QAAQ,EAAE;MACjB,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;KAC5B;GACF;EAED,MAAM;IACJ,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;IACnF,MAAM,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;IAChG,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;IAEjE,MAAM,OAAO,GAAG;MACd,oBAAoB,EAAE,IAAI;MAC1B,qCAAqC,EAAE,eAAe;MACtD,0CAA0C,EAAE,mBAAmB;MAC/D,+BAA+B,EAAE,SAAS;MAC1C,iCAAiC,EAAE,IAAI,CAAC,QAAQ;MAChD,gCAAgC,EAAE,IAAI,CAAC,OAAO;MAC9C,iCAAiC,EAAE,IAAI,CAAC,UAAU;MAClD,CAAC,iCAAiC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS;KACtE,CAAC;IAEF,QACE,gBAAU,KAAK,EAAE,OAAO,IACrB,IAAI,CAAC,MAAM;MACV,cAAQ,KAAK,EAAC,4BAA4B,IACvC,IAAI,CAAC,MAAM,CACL,EAEX,WAAK,KAAK,EAAC,4BAA4B,IACrC,eAAa,CACT,EACN,EAAC,oBAAoB,IACnB,WAAW,EAAC,oBAAoB,EAChC,EAAE,EAAE,GAAG,IAAI,CAAC,eAAe,cAAc,EACzC,KAAK,EAAE,IAAI,CAAC,MAAM,EAClB,WAAW,EAAE,IAAI,CAAC,WAAW,EAC7B,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,mBAAmB,EAAE,mBAAmB,EACxC,mBAAmB,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,mBAAmB,GACnE,CACO,EACX;GACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["StzhCheckboxgroup"],"sources":["./src/components/stzh-checkboxgroup/stzh-checkboxgroup.scss?tag=stzh-checkboxgroup&encapsulation=scoped","./src/components/stzh-checkboxgroup/stzh-checkboxgroup.tsx"],"sourcesContent":[":host([direction=\"vertical\"]) {\n ::slotted(stzh-checkbox:not(:last-child)) {\n margin-bottom: space('medium');\n }\n}\n\n:host([direction=\"horizontal\"]) {\n ::slotted(stzh-checkbox:not(:last-child)) {\n margin-right: space('large');\n }\n}\n\n.stzh-checkboxgroup {\n @include input-description;\n margin: 0;\n padding: 0;\n border: none;\n\n &__fields {\n display: flex;\n align-items: flex-start;\n flex-direction: column;\n }\n\n &__legend {\n @include font('heavy');\n @include fontSize('nano');\n padding: 0;\n margin-bottom: space('xsmall');\n }\n\n &--hide-legend &__legend {\n @include visuallyhidden;\n }\n\n &--direction-horizontal &__fields {\n flex-direction: row;\n }\n}\n","import {\n Component,\n Prop,\n Element,\n Watch,\n h,\n Listen,\n} from \"@stencil/core\";\n\nimport { hasSlot } from \"../../utils/utils\";\n\nimport { StzhCheckboxChangeEvent } from \"../../index\";\nimport { camelCase } from \"../../utils/string-utils\";\nimport { fetchTranslations, StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"../stzh-input/stzh-input-description\";\n\nlet checkboxgroupCounter = 0;\n\n/**\n * @slot - Slot for `stzh-checkbox` elements\n * @slot description - Slot for description\n * @slot description-long - Slot for long description (in popover)\n * @slot error - Slot for error\n */\n@Component({\n tag: \"stzh-checkboxgroup\",\n styleUrl: \"stzh-checkboxgroup.scss\",\n scoped: true\n})\nexport class StzhCheckboxgroup {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Whether the element is disabled or not */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** The name of the input checkbox elements */\n @Prop({ reflect: true }) name: string;\n\n /** The legend */\n @Prop() legend: string;\n\n /** Hide legend to show only for screenreaders */\n @Prop({ reflect: true }) hideLegend: boolean = false;\n\n /** Invalid status */\n @Prop({ reflect: true }) invalid: boolean = false;\n\n /** Append text to label depending if field is optional/required. true -> show \"(optional)\", false -> show noting */\n @Prop({ reflect: true }) showMarker: boolean = false;\n\n /** Select a checkbox by value */\n @Prop({ mutable: true }) value: string[] | string = \"\";\n private _value: string[] = [];\n\n /** Direction */\n @Prop({ reflect: true }) direction: \"vertical\" | \"horizontal\" = \"vertical\";\n\n /** Description message (use description slot as alternative) */\n @Prop() description: string;\n\n /** Long description message appearing in a popover (use description-long slot as alternative) */\n @Prop() descriptionLong: string;\n\n /** One or multiple error message (use error slot as alternative) */\n @Prop() error: string | string[];\n private _error: string[];\n\n /** Current checked checkbox elements (readonly) */\n @Prop() checkedCheckbox: HTMLStzhCheckboxElement[] | null = null;\n\n /** Prevent updating certain properties of radio elements (possible values inside array: disabled, invalid) */\n @Prop() preventUpdateProperties: string[] | string = [];\n private _preventUpdateProperties: string[] = [];\n\n /** Host element */\n @Element() element: HTMLElement;\n\n @Watch(\"name\")\n watchName(newValue: string) {\n this.updateCheckboxesProperty(\"name\", newValue);\n }\n\n @Watch(\"disabled\")\n watchDisabled(newValue: boolean) {\n this.updateCheckboxesProperty(\"disabled\", newValue);\n }\n\n @Watch(\"invalid\")\n watchInvalid(newValue: boolean) {\n this.updateCheckboxesProperty(\"invalid\", newValue);\n }\n\n @Watch(\"showMarker\")\n watchShowMarker(newValue: boolean) {\n this.updateCheckboxesProperty(\"showMarker\", newValue)\n }\n\n @Watch(\"value\")\n watchValue(newValue: string[] | string) {\n if (typeof newValue === \"string\") {\n this._value = JSON.parse(newValue);\n } else {\n this._value = newValue;\n }\n\n this.updateCheckedCheckboxByValue(this._value);\n }\n\n @Watch(\"error\")\n errorWatcher(newValue: string | string[]) {\n if (typeof newValue === \"string\") {\n try {\n this._error = JSON.parse(newValue);\n } catch (e) {\n if (newValue) {\n this._error = [newValue];\n } else {\n this._error = [];\n }\n }\n } else if (newValue) {\n this._error = newValue;\n } else {\n this._error = [];\n }\n\n this.invalid = this._error.length > 0;\n }\n\n @Watch(\"preventUpdateProperties\")\n preventUpdatePropertiesWatcher(newValue: string[] | string) {\n if (typeof newValue === \"string\") {\n this._preventUpdateProperties = JSON.parse(newValue);\n } else {\n this._preventUpdateProperties = newValue;\n }\n }\n\n @Listen(\"stzhChange\")\n onChange(event: CustomEvent<StzhCheckboxChangeEvent>) {\n if (event.detail.checked) {\n this._value.push(event.detail.value);\n } else {\n this._value = this._value.filter(value => value !== event.detail.value);\n }\n\n this.value = this._value;\n }\n\n /** Checkbox elements */\n private checkboxes: HTMLStzhCheckboxElement[];\n private checkboxgroupId: string;\n private observer: MutationObserver;\n\n private updateCheckboxesProperty(prop: string, value: any) {\n this.checkboxes.forEach((checkbox: HTMLStzhCheckboxElement) => {\n if (prop === \"name\" || (this._preventUpdateProperties.indexOf(prop) === -1)) {\n checkbox[camelCase(prop)] = value;\n }\n });\n }\n\n private updateCheckedCheckboxByValue(value: string[]) {\n this.checkedCheckbox = this.checkboxes.filter(checkbox => value.indexOf(checkbox.value) > -1);\n this.checkboxes.forEach(checkbox => checkbox.checked = value.indexOf(checkbox.value) > -1);\n }\n\n private init = () => {\n this.checkboxes = Array.from(this.element.querySelectorAll(\"stzh-checkbox\"));\n this.updateCheckboxesProperty(\"a11y-describedby\", `${this.checkboxgroupId}-description`);\n\n this.watchValue(this.value);\n this.watchName(this.name);\n this.watchDisabled(this.disabled);\n this.watchInvalid(this.invalid);\n this.watchShowMarker(this.showMarker);\n }\n\n async componentWillLoad() {\n this.checkboxgroupId = `stzh-checkboxgroup-${checkboxgroupCounter++}`;\n this.errorWatcher(this.error);\n this.preventUpdatePropertiesWatcher(this.preventUpdateProperties);\n\n if (!this.localization) {\n this.localization = await fetchTranslations(this.element, 'checkboxgroup');\n }\n }\n\n componentShouldUpdate(_newValue, _oldValue, prop: string) {\n return prop !== \"checkedCheckbox\";\n }\n\n componentDidRender() {\n this.init();\n }\n\n connectedCallback() {\n if (!this.value.length) {\n this.checkboxes = Array.from(this.element.querySelectorAll(\"stzh-checkbox\"));\n\n // try to find checkboxes that might have checked set to true\n this.value = this.checkboxes\n .filter(checkbox => checkbox.checked)\n .map(checkbox => checkbox.value);\n }\n\n this.observer = new MutationObserver(this.init);\n this.observer.observe(this.element, {\n childList: true,\n subtree: true\n });\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n render() {\n const descriptionUsed = hasSlot(this.element, 'description') || !!this.description;\n const descriptionLongUsed = hasSlot(this.element, 'description-long') || !!this.descriptionLong;\n const errorUsed = hasSlot(this.element, 'error') || !!this.error;\n\n const classes = {\n \"stzh-checkboxgroup\": true,\n \"stzh-checkboxgroup--has-description\": descriptionUsed,\n \"stzh-checkboxgroup--has-description-long\": descriptionLongUsed,\n \"stzh-checkboxgroup--has-error\": errorUsed,\n \"stzh-checkboxgroup--is-disabled\": this.disabled,\n \"stzh-checkboxgroup--is-invalid\": this.invalid,\n \"stzh-checkboxgroup--hide-legend\": this.hideLegend,\n [`stzh-checkboxgroup--direction-${this.direction}`]: !!this.direction\n };\n\n return (\n <fieldset class={classes}>\n {this.legend &&\n <legend class=\"stzh-checkboxgroup__legend\">\n {this.legend}\n </legend>\n }\n <div class=\"stzh-checkboxgroup__fields\">\n <slot></slot>\n </div>\n <StzhInputDescription\n classPrefix=\"stzh-checkboxgroup\"\n id={`${this.checkboxgroupId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </fieldset>\n );\n }\n}\n"],"version":3}
1
+ {"file":"stzh-checkboxgroup.js","mappings":"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","names":["StzhCheckboxgroup"],"sources":["./src/components/stzh-checkboxgroup/stzh-checkboxgroup.scss?tag=stzh-checkboxgroup&encapsulation=scoped","./src/components/stzh-checkboxgroup/stzh-checkboxgroup.tsx"],"sourcesContent":[":host([direction=\"vertical\"]) {\n ::slotted(stzh-checkbox:not(:last-child)) {\n margin-bottom: space('medium');\n }\n}\n\n:host([direction=\"horizontal\"]) {\n ::slotted(stzh-checkbox:not(:last-child)) {\n margin-right: space('large');\n }\n}\n\n.stzh-checkboxgroup {\n @include input-description;\n margin: 0;\n padding: 0;\n border: none;\n\n &__fields {\n display: flex;\n align-items: flex-start;\n flex-direction: column;\n }\n\n &__legend {\n @include font('heavy');\n @include fontSize('nano');\n padding: 0;\n margin-bottom: space('xsmall');\n }\n\n &--hide-legend &__legend {\n @include visuallyhidden;\n }\n\n &--direction-horizontal &__fields {\n flex-direction: row;\n }\n}\n","import {\n Component,\n Prop,\n Element,\n Watch,\n h,\n Listen,\n} from \"@stencil/core\";\n\nimport { hasSlot } from \"../../utils/utils\";\n\nimport { StzhCheckboxChangeEvent } from \"../../index\";\nimport { camelCase } from \"../../utils/string-utils\";\nimport { fetchTranslations, StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"../stzh-input/stzh-input-description\";\n\nlet checkboxgroupCounter = 0;\n\n/**\n * @slot - Slot for `stzh-checkbox` elements\n * @slot description - Slot for description\n * @slot description-long - Slot for long description (in popover)\n * @slot error - Slot for error\n */\n@Component({\n tag: \"stzh-checkboxgroup\",\n styleUrl: \"stzh-checkboxgroup.scss\",\n scoped: true\n})\nexport class StzhCheckboxgroup {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Whether the element is disabled or not */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** The name of the input checkbox elements */\n @Prop({ reflect: true }) name: string;\n\n /** The legend */\n @Prop() legend: string;\n\n /** Hide legend to show only for screenreaders */\n @Prop({ reflect: true }) hideLegend: boolean = false;\n\n /** Invalid status */\n @Prop({ reflect: true }) invalid: boolean = false;\n\n /** Append text to label depending if field is optional/required. true -> show \"(optional)\", false -> show nothing */\n @Prop({ reflect: true }) showMarker: boolean = false;\n\n /** Select a checkbox by value */\n @Prop({ mutable: true }) value: string[] | string = \"\";\n private _value: string[] = [];\n\n /** Direction */\n @Prop({ reflect: true }) direction: \"vertical\" | \"horizontal\" = \"vertical\";\n\n /** Description message (use description slot as alternative) */\n @Prop() description: string;\n\n /** Long description message appearing in a popover (use description-long slot as alternative) */\n @Prop() descriptionLong: string;\n\n /** One or multiple error message (use error slot as alternative) */\n @Prop() error: string | string[];\n private _error: string[];\n\n /** Current checked checkbox elements (readonly) */\n @Prop() checkedCheckbox: HTMLStzhCheckboxElement[] | null = null;\n\n /** Prevent updating certain properties of radio elements (possible values inside array: disabled, invalid) */\n @Prop() preventUpdateProperties: string[] | string = [];\n private _preventUpdateProperties: string[] = [];\n\n /** Host element */\n @Element() element: HTMLElement;\n\n @Watch(\"name\")\n watchName(newValue: string) {\n this.updateCheckboxesProperty(\"name\", newValue);\n }\n\n @Watch(\"disabled\")\n watchDisabled(newValue: boolean) {\n this.updateCheckboxesProperty(\"disabled\", newValue);\n }\n\n @Watch(\"invalid\")\n watchInvalid(newValue: boolean) {\n this.updateCheckboxesProperty(\"invalid\", newValue);\n }\n\n @Watch(\"showMarker\")\n watchShowMarker(newValue: boolean) {\n this.updateCheckboxesProperty(\"showMarker\", newValue)\n }\n\n @Watch(\"value\")\n watchValue(newValue: string[] | string) {\n if (typeof newValue === \"string\") {\n this._value = JSON.parse(newValue);\n } else {\n this._value = newValue;\n }\n\n this.updateCheckedCheckboxByValue(this._value);\n }\n\n @Watch(\"error\")\n errorWatcher(newValue: string | string[]) {\n if (typeof newValue === \"string\") {\n try {\n this._error = JSON.parse(newValue);\n } catch (e) {\n if (newValue) {\n this._error = [newValue];\n } else {\n this._error = [];\n }\n }\n } else if (newValue) {\n this._error = newValue;\n } else {\n this._error = [];\n }\n\n this.invalid = this._error.length > 0;\n }\n\n @Watch(\"preventUpdateProperties\")\n preventUpdatePropertiesWatcher(newValue: string[] | string) {\n if (typeof newValue === \"string\") {\n this._preventUpdateProperties = JSON.parse(newValue);\n } else {\n this._preventUpdateProperties = newValue;\n }\n }\n\n @Listen(\"stzhChange\")\n onChange(event: CustomEvent<StzhCheckboxChangeEvent>) {\n if (event.detail.checked) {\n this._value.push(event.detail.value);\n } else {\n this._value = this._value.filter(value => value !== event.detail.value);\n }\n\n this.value = this._value;\n }\n\n /** Checkbox elements */\n private checkboxes: HTMLStzhCheckboxElement[];\n private checkboxgroupId: string;\n private observer: MutationObserver;\n\n private updateCheckboxesProperty(prop: string, value: any) {\n this.checkboxes.forEach((checkbox: HTMLStzhCheckboxElement) => {\n if (prop === \"name\" || (this._preventUpdateProperties.indexOf(prop) === -1)) {\n checkbox[camelCase(prop)] = value;\n }\n });\n }\n\n private updateCheckedCheckboxByValue(value: string[]) {\n this.checkedCheckbox = this.checkboxes.filter(checkbox => value.indexOf(checkbox.value) > -1);\n this.checkboxes.forEach(checkbox => checkbox.checked = value.indexOf(checkbox.value) > -1);\n }\n\n private init = () => {\n this.checkboxes = Array.from(this.element.querySelectorAll(\"stzh-checkbox\"));\n this.updateCheckboxesProperty(\"a11y-describedby\", `${this.checkboxgroupId}-description`);\n\n this.watchValue(this.value);\n this.watchName(this.name);\n this.watchDisabled(this.disabled);\n this.watchInvalid(this.invalid);\n this.watchShowMarker(this.showMarker);\n }\n\n async componentWillLoad() {\n this.checkboxgroupId = `stzh-checkboxgroup-${checkboxgroupCounter++}`;\n this.errorWatcher(this.error);\n this.preventUpdatePropertiesWatcher(this.preventUpdateProperties);\n\n if (!this.localization) {\n this.localization = await fetchTranslations(this.element, 'checkboxgroup');\n }\n }\n\n componentShouldUpdate(_newValue, _oldValue, prop: string) {\n return prop !== \"checkedCheckbox\";\n }\n\n componentDidRender() {\n this.init();\n }\n\n connectedCallback() {\n if (!this.value.length) {\n this.checkboxes = Array.from(this.element.querySelectorAll(\"stzh-checkbox\"));\n\n // try to find checkboxes that might have checked set to true\n this.value = this.checkboxes\n .filter(checkbox => checkbox.checked)\n .map(checkbox => checkbox.value);\n }\n\n this.observer = new MutationObserver(this.init);\n this.observer.observe(this.element, {\n childList: true,\n subtree: true\n });\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n render() {\n const descriptionUsed = hasSlot(this.element, 'description') || !!this.description;\n const descriptionLongUsed = hasSlot(this.element, 'description-long') || !!this.descriptionLong;\n const errorUsed = hasSlot(this.element, 'error') || !!this.error;\n\n const classes = {\n \"stzh-checkboxgroup\": true,\n \"stzh-checkboxgroup--has-description\": descriptionUsed,\n \"stzh-checkboxgroup--has-description-long\": descriptionLongUsed,\n \"stzh-checkboxgroup--has-error\": errorUsed,\n \"stzh-checkboxgroup--is-disabled\": this.disabled,\n \"stzh-checkboxgroup--is-invalid\": this.invalid,\n \"stzh-checkboxgroup--hide-legend\": this.hideLegend,\n [`stzh-checkboxgroup--direction-${this.direction}`]: !!this.direction\n };\n\n return (\n <fieldset class={classes}>\n {this.legend &&\n <legend class=\"stzh-checkboxgroup__legend\">\n {this.legend}\n </legend>\n }\n <div class=\"stzh-checkboxgroup__fields\">\n <slot></slot>\n </div>\n <StzhInputDescription\n classPrefix=\"stzh-checkboxgroup\"\n id={`${this.checkboxgroupId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </fieldset>\n );\n }\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"file":"stzh-datepicker2.js","mappings":"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","names":[],"sources":["./src/components/stzh-datepicker/stzh-datepicker.scss?tag=stzh-datepicker&encapsulation=scoped","./src/components/stzh-datepicker/stzh-datepicker.tsx"],"sourcesContent":[":host {\n width: 100%;\n}\n\n.stzh-datepicker {\n &__popover {\n --padding: #{space('medium')};\n --width: auto;\n }\n\n &__actions {\n display: flex;\n justify-content: flex-end;\n\n &:not(:empty) {\n margin-top: space('xsmall');\n }\n }\n}\n","import {\n Component,\n Prop,\n Host,\n Element,\n h,\n Event,\n EventEmitter,\n Method,\n Watch,\n Fragment,\n State\n} from \"@stencil/core\";\n\nimport {\n StzhCalendarChangeEvent,\n StzhDatepickerChangeEvent\n} from \"../../index\";\n\nimport { StzhCalendarDateDisabledPredicate } from \"../../index\";\n\nimport { fetchTranslations } from \"../../utils/translation-utils\";\nimport { printISODate, parseISODate } from \"../../utils/date-utils\"\nimport { StzhLocaleAdapter, createGlobalAdapter } from \"../../utils/date-adapter\"\n\nimport { StzhDatepickerLocalizedText } from \"./stzh-datepicker.localization\";\n\n/**\n * @slot - Slot to place input, calendar and popover element inside\n */\n@Component({\n tag: \"stzh-datepicker\",\n styleUrl: \"stzh-datepicker.scss\",\n scoped: true\n})\nexport class StzhDatepicker {\n /**\n * Minimum date allowed to be picked. Must be in IS0-8601 format: YYYY-MM-DD.\n * This setting can be used alone or together with the max property.\n */\n @Prop() calendarMin: string = \"\"\n\n /**\n * Maximum date allowed to be picked. Must be in IS0-8601 format: YYYY-MM-DD.\n * This setting can be used alone or together with the min property.\n */\n @Prop() calendarMax: string = \"\"\n\n /**\n * Controls which days are disabled and therefore disallowed.\n * For example, this can be used to disallow selection of weekends.\n */\n @Prop() calendarIsDateDisabled: StzhCalendarDateDisabledPredicate = () => false\n\n /** Name of the hidden date picker input. */\n @Prop({ reflect: true }) name: string = \"\";\n\n /** Value of hidden date picker input (current selected date in ISO format). */\n @Prop({ mutable: true }) value: string = \"\";\n\n /** Label for input field and popover */\n @Prop() label: string = \"\";\n\n /** Whether the element is readonly or not */\n @Prop({ reflect: true }) readonly: boolean = false;\n\n /** Whether the element is disabled or not */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Description message (use description slot as alternative) */\n @Prop() description: string;\n\n /** Long description message appearing in a popover (use description-long slot as alternative) */\n @Prop() descriptionLong: string;\n\n /** One or multiple error message (use error slot as alternative) */\n @Prop() error: string | string[];\n\n /** Invalid status */\n @Prop({ reflect: true }) invalid: boolean = false;\n\n /** Required status */\n @Prop({ reflect: true }) required: boolean = false;\n\n /** Append text to label depending if field is optional/required. true -> show \"(optional)\", false -> show noting */\n @Prop({ reflect: true }) showMarker: boolean = false;\n\n /** Size variant */\n @Prop({ reflect: true }) size: \"default\" | \"small\" = \"default\";\n\n /** Show calendar inline */\n @Prop() inline: boolean = false;\n\n /**\n * Date adapter, for custom parsing/formatting.\n * Must be object with a `parse` function which accepts a `string` and returns a `Date`,\n * and a `format` function which accepts a `Date` and returns a `string`.\n */\n @Prop() dateAdapter: StzhLocaleAdapter;\n\n /** Translation strings. */\n @Prop() localization: StzhDatepickerLocalizedText;\n\n @State() buttonLabel: string;\n\n @Watch(\"localization\")\n createDateFormatters() {\n if (this.localization) {\n this.dateFormatLong = new Intl.DateTimeFormat(this.localization.$locale, {\n day: \"numeric\",\n month: \"long\",\n year: \"numeric\",\n })\n }\n }\n\n /** Update calendar and input when value prop has changed */\n @Watch(\"value\")\n valueWatcher(newValue: string) {\n const date = parseISODate(newValue);\n\n if (this.calendar) {\n this.calendar.value = newValue;\n }\n\n if (this.input) {\n this.input.value = this.dateAdapter.format(date, \"inputdate\");\n }\n\n this.updateButtonAccessibleLabel();\n }\n\n /** Set value by a JS Date object */\n @Method()\n async setDate(date: Date) {\n this.value = printISODate(date);\n }\n\n /** Return internal popover element */\n @Method()\n async getPopover(): Promise<HTMLStzhPopoverElement> {\n return this.popover;\n }\n\n /** Datepicker change event */\n @Event() stzhChange: EventEmitter<StzhDatepickerChangeEvent>;\n\n @Element() element: HTMLStzhDatepickerElement;\n\n /**\n * To format dates exclusively for the benefit of screen readers.\n *\n * We prefer DateTimeFormat over date.toLocaleDateString, as the former has\n * better performance when formatting large number of dates. See:\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString#Performance\n */\n private dateFormatLong: Intl.DateTimeFormat\n\n private input: HTMLStzhInputElement;\n private popover: HTMLStzhPopoverElement;\n private calendar: HTMLStzhCalendarElement;\n\n private onRootFocus = () => {\n if (this.input) {\n this.input.setFocus();\n }\n }\n\n private onInputChange = () => {\n const parsedDate = this.dateAdapter.parse(this.input.value, \"inputdate\")\n\n if (this.input.value === \"\" || parsedDate) {\n const isoDate = printISODate(parsedDate);\n\n if (this.calendar) {\n this.calendar.value = isoDate;\n }\n\n this.value = isoDate;\n this.stzhChange.emit({\n component: \"stzh-datepicker\",\n value: this.value,\n valueAsDate: parsedDate,\n })\n }\n }\n\n private onCalendarChange = (event: CustomEvent<StzhCalendarChangeEvent>) => {\n this.value = event.detail.value;\n this.stzhChange.emit({\n component: \"stzh-datepicker\",\n value: this.value,\n valueAsDate: event.detail.valueAsDate,\n });\n\n if (this.input) {\n this.input.value = event.detail.valueAsDate\n && this.dateAdapter.format(event.detail.valueAsDate, \"inputdate\");\n }\n\n if (this.popover) {\n this.popover.hide();\n }\n }\n\n private updateButtonAccessibleLabel() {\n if (!this.localization) {\n return;\n }\n\n try {\n const valueAsDate = parseISODate(this.value);\n this.buttonLabel = `${this.localization.buttonLabel}, ${this.localization.selectedDateMessage} ${this.dateFormatLong.format(valueAsDate)}`;\n } catch (err) {\n this.buttonLabel = this.localization.buttonLabel;\n }\n }\n\n connectedCallback() {\n this.createDateFormatters();\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await fetchTranslations(this.element, \"datepicker\");\n }\n\n if (!this.dateAdapter) {\n this.dateAdapter = createGlobalAdapter(\n this.localization.$formats,\n this.localization.$globals\n );\n }\n }\n\n componentDidLoad() {\n this.valueWatcher(this.value);\n }\n\n render() {\n const classes = {\n \"stzh-datepicker\": true,\n \"stzh-datepicker--inline\": this.inline\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n <input\n type=\"hidden\"\n name={this.name}\n value={this.value}\n />\n\n {this.inline &&\n <Fragment>\n <stzh-calendar\n ref={(el) => (this.calendar = el as HTMLStzhCalendarElement)}\n isDateDisabled={this.calendarIsDateDisabled}\n min={this.calendarMin}\n max={this.calendarMax}\n onStzhChange={this.onCalendarChange}\n ></stzh-calendar>\n <div class=\"stzh-datepicker__actions\">\n <slot name=\"action\"></slot>\n </div>\n </Fragment>\n }\n\n {!this.inline &&\n <stzh-input\n label={this.label}\n ref={(el) => (this.input = el as HTMLStzhInputElement)}\n noAutocomplete\n onStzhChange={this.onInputChange}\n readonly={this.readonly}\n disabled={this.disabled}\n description={this.description}\n descriptionLong={this.descriptionLong}\n error={this.error}\n invalid={this.invalid}\n required={this.required}\n showMarker={this.showMarker}\n size={this.size}\n >\n <stzh-popover\n ref={(el) => (this.popover = el as HTMLStzhPopoverElement)}\n class=\"stzh-datepicker__popover\"\n slot=\"button-right\"\n placement=\"bottom-end\"\n label={this.label}\n >\n <stzh-button\n variant=\"input\"\n icon-only\n icon=\"calendar\"\n disabled={this.disabled}\n a11yLabel={this.buttonLabel}\n >\n </stzh-button>\n <div slot=\"content\">\n <stzh-calendar\n ref={(el) => (this.calendar = el as HTMLStzhCalendarElement)}\n isDateDisabled={this.calendarIsDateDisabled}\n min={this.calendarMin}\n max={this.calendarMax}\n onStzhChange={this.onCalendarChange}\n >\n </stzh-calendar>\n <div class=\"stzh-datepicker__actions\">\n <slot name=\"action\"></slot>\n </div>\n </div>\n </stzh-popover>\n </stzh-input>\n }\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"stzh-datepicker2.js","mappings":"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","names":[],"sources":["./src/components/stzh-datepicker/stzh-datepicker.scss?tag=stzh-datepicker&encapsulation=scoped","./src/components/stzh-datepicker/stzh-datepicker.tsx"],"sourcesContent":[":host {\n width: 100%;\n}\n\n.stzh-datepicker {\n &__popover {\n --padding: #{space('medium')};\n --width: auto;\n }\n\n &__actions {\n display: flex;\n justify-content: flex-end;\n\n &:not(:empty) {\n margin-top: space('xsmall');\n }\n }\n}\n","import {\n Component,\n Prop,\n Host,\n Element,\n h,\n Event,\n EventEmitter,\n Method,\n Watch,\n Fragment,\n State\n} from \"@stencil/core\";\n\nimport {\n StzhCalendarChangeEvent,\n StzhDatepickerChangeEvent\n} from \"../../index\";\n\nimport { StzhCalendarDateDisabledPredicate } from \"../../index\";\n\nimport { fetchTranslations } from \"../../utils/translation-utils\";\nimport { printISODate, parseISODate } from \"../../utils/date-utils\"\nimport { StzhLocaleAdapter, createGlobalAdapter } from \"../../utils/date-adapter\"\n\nimport { StzhDatepickerLocalizedText } from \"./stzh-datepicker.localization\";\n\n/**\n * @slot action - Slot for action below calendar (stzh-link element)\n */\n@Component({\n tag: \"stzh-datepicker\",\n styleUrl: \"stzh-datepicker.scss\",\n scoped: true\n})\nexport class StzhDatepicker {\n /**\n * Minimum date allowed to be picked. Must be in IS0-8601 format: YYYY-MM-DD.\n * This setting can be used alone or together with the max property.\n */\n @Prop() calendarMin: string = \"\"\n\n /**\n * Maximum date allowed to be picked. Must be in IS0-8601 format: YYYY-MM-DD.\n * This setting can be used alone or together with the min property.\n */\n @Prop() calendarMax: string = \"\"\n\n /**\n * Controls which days are disabled and therefore disallowed.\n * For example, this can be used to disallow selection of weekends.\n */\n @Prop() calendarIsDateDisabled: StzhCalendarDateDisabledPredicate = () => false\n\n /** Name of the hidden date picker input. */\n @Prop({ reflect: true }) name: string = \"\";\n\n /** Value of hidden date picker input (current selected date in ISO format). */\n @Prop({ mutable: true }) value: string = \"\";\n\n /** Label for input field and popover */\n @Prop() label: string = \"\";\n\n /** Whether the element is readonly or not */\n @Prop({ reflect: true }) readonly: boolean = false;\n\n /** Whether the element is disabled or not */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Description message (use description slot as alternative) */\n @Prop() description: string;\n\n /** Long description message appearing in a popover (use description-long slot as alternative) */\n @Prop() descriptionLong: string;\n\n /** One or multiple error message (use error slot as alternative) */\n @Prop() error: string | string[];\n\n /** Invalid status */\n @Prop({ reflect: true }) invalid: boolean = false;\n\n /** Required status */\n @Prop({ reflect: true }) required: boolean = false;\n\n /** Append text to label depending if field is optional/required. true -> show \"(optional)\", false -> show nothing */\n @Prop({ reflect: true }) showMarker: boolean = false;\n\n /** Size variant */\n @Prop({ reflect: true }) size: \"default\" | \"small\" = \"default\";\n\n /** Show calendar inline */\n @Prop() inline: boolean = false;\n\n /**\n * Date adapter, for custom parsing/formatting.\n * Must be object with a `parse` function which accepts a `string` and returns a `Date`,\n * and a `format` function which accepts a `Date` and returns a `string`.\n */\n @Prop() dateAdapter: StzhLocaleAdapter;\n\n /** Translation strings. */\n @Prop() localization: StzhDatepickerLocalizedText;\n\n @State() buttonLabel: string;\n\n @Watch(\"localization\")\n createDateFormatters() {\n if (this.localization) {\n this.dateFormatLong = new Intl.DateTimeFormat(this.localization.$locale, {\n day: \"numeric\",\n month: \"long\",\n year: \"numeric\",\n })\n }\n }\n\n /** Update calendar and input when value prop has changed */\n @Watch(\"value\")\n valueWatcher(newValue: string) {\n const date = parseISODate(newValue);\n\n if (this.calendar) {\n this.calendar.value = newValue;\n }\n\n if (this.input) {\n this.input.value = this.dateAdapter.format(date, \"inputdate\");\n }\n\n this.updateButtonAccessibleLabel();\n }\n\n /** Set value by a JS Date object */\n @Method()\n async setDate(date: Date) {\n this.value = printISODate(date);\n }\n\n /** Return internal popover element */\n @Method()\n async getPopover(): Promise<HTMLStzhPopoverElement> {\n return this.popover;\n }\n\n /** Datepicker change event */\n @Event() stzhChange: EventEmitter<StzhDatepickerChangeEvent>;\n\n @Element() element: HTMLStzhDatepickerElement;\n\n /**\n * To format dates exclusively for the benefit of screen readers.\n *\n * We prefer DateTimeFormat over date.toLocaleDateString, as the former has\n * better performance when formatting large number of dates. See:\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString#Performance\n */\n private dateFormatLong: Intl.DateTimeFormat\n\n private input: HTMLStzhInputElement;\n private popover: HTMLStzhPopoverElement;\n private calendar: HTMLStzhCalendarElement;\n\n private onRootFocus = () => {\n if (this.input) {\n this.input.setFocus();\n }\n }\n\n private onInputChange = () => {\n const parsedDate = this.dateAdapter.parse(this.input.value, \"inputdate\")\n\n if (this.input.value === \"\" || parsedDate) {\n const isoDate = printISODate(parsedDate);\n\n if (this.calendar) {\n this.calendar.value = isoDate;\n }\n\n this.value = isoDate;\n this.stzhChange.emit({\n component: \"stzh-datepicker\",\n value: this.value,\n valueAsDate: parsedDate,\n })\n }\n }\n\n private onCalendarChange = (event: CustomEvent<StzhCalendarChangeEvent>) => {\n this.value = event.detail.value;\n this.stzhChange.emit({\n component: \"stzh-datepicker\",\n value: this.value,\n valueAsDate: event.detail.valueAsDate,\n });\n\n if (this.input) {\n this.input.value = event.detail.valueAsDate\n && this.dateAdapter.format(event.detail.valueAsDate, \"inputdate\");\n }\n\n if (this.popover) {\n this.popover.hide();\n }\n }\n\n private updateButtonAccessibleLabel() {\n if (!this.localization) {\n return;\n }\n\n try {\n const valueAsDate = parseISODate(this.value);\n this.buttonLabel = `${this.localization.buttonLabel}, ${this.localization.selectedDateMessage} ${this.dateFormatLong.format(valueAsDate)}`;\n } catch (err) {\n this.buttonLabel = this.localization.buttonLabel;\n }\n }\n\n connectedCallback() {\n this.createDateFormatters();\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await fetchTranslations(this.element, \"datepicker\");\n }\n\n if (!this.dateAdapter) {\n this.dateAdapter = createGlobalAdapter(\n this.localization.$formats,\n this.localization.$globals\n );\n }\n }\n\n componentDidLoad() {\n this.valueWatcher(this.value);\n }\n\n render() {\n const classes = {\n \"stzh-datepicker\": true,\n \"stzh-datepicker--inline\": this.inline\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n <input\n type=\"hidden\"\n name={this.name}\n value={this.value}\n />\n\n {this.inline &&\n <Fragment>\n <stzh-calendar\n ref={(el) => (this.calendar = el as HTMLStzhCalendarElement)}\n isDateDisabled={this.calendarIsDateDisabled}\n min={this.calendarMin}\n max={this.calendarMax}\n onStzhChange={this.onCalendarChange}\n ></stzh-calendar>\n <div class=\"stzh-datepicker__actions\">\n <slot name=\"action\"></slot>\n </div>\n </Fragment>\n }\n\n {!this.inline &&\n <stzh-input\n label={this.label}\n ref={(el) => (this.input = el as HTMLStzhInputElement)}\n noAutocomplete\n onStzhChange={this.onInputChange}\n readonly={this.readonly}\n disabled={this.disabled}\n description={this.description}\n descriptionLong={this.descriptionLong}\n error={this.error}\n invalid={this.invalid}\n required={this.required}\n showMarker={this.showMarker}\n size={this.size}\n >\n <stzh-popover\n ref={(el) => (this.popover = el as HTMLStzhPopoverElement)}\n class=\"stzh-datepicker__popover\"\n slot=\"button-right\"\n placement=\"bottom-end\"\n label={this.label}\n >\n <stzh-button\n variant=\"input\"\n icon-only\n icon=\"calendar\"\n disabled={this.disabled}\n a11yLabel={this.buttonLabel}\n >\n </stzh-button>\n <div slot=\"content\">\n <stzh-calendar\n ref={(el) => (this.calendar = el as HTMLStzhCalendarElement)}\n isDateDisabled={this.calendarIsDateDisabled}\n min={this.calendarMin}\n max={this.calendarMax}\n onStzhChange={this.onCalendarChange}\n >\n </stzh-calendar>\n <div class=\"stzh-datepicker__actions\">\n <slot name=\"action\"></slot>\n </div>\n </div>\n </stzh-popover>\n </stzh-input>\n }\n </div>\n </Host>\n );\n }\n}\n"],"version":3}