@oiz/stzh-components 3.0.0-beta5 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (450) hide show
  1. package/dist/cjs/{app-globals-82cc9313.js → app-globals-1d1f8f2e.js} +2 -2
  2. package/dist/cjs/{app-globals-82cc9313.js.map → app-globals-1d1f8f2e.js.map} +1 -1
  3. package/dist/cjs/index-92254d32.js +16 -8
  4. package/dist/cjs/loader.cjs.js +2 -2
  5. package/dist/cjs/stzh-actions.cjs.entry.js +8 -2
  6. package/dist/cjs/stzh-actions.cjs.entry.js.map +1 -1
  7. package/dist/cjs/stzh-badge_3.cjs.entry.js +1 -1
  8. package/dist/cjs/stzh-badge_3.cjs.entry.js.map +1 -1
  9. package/dist/cjs/stzh-breadcrumb_2.cjs.entry.js +1 -1
  10. package/dist/cjs/stzh-breadcrumb_2.cjs.entry.js.map +1 -1
  11. package/dist/cjs/stzh-card_3.cjs.entry.js +2 -0
  12. package/dist/cjs/stzh-card_3.cjs.entry.js.map +1 -1
  13. package/dist/cjs/stzh-carousel.cjs.entry.js +1 -2
  14. package/dist/cjs/stzh-carousel.cjs.entry.js.map +1 -1
  15. package/dist/cjs/stzh-chart.cjs.entry.js +1 -1
  16. package/dist/cjs/stzh-chart.cjs.entry.js.map +1 -1
  17. package/dist/cjs/stzh-checkboxgroup.cjs.entry.js +9 -10
  18. package/dist/cjs/stzh-checkboxgroup.cjs.entry.js.map +1 -1
  19. package/dist/cjs/stzh-components.cjs.js +2 -2
  20. package/dist/cjs/stzh-content.cjs.entry.js +1 -1
  21. package/dist/cjs/stzh-content.cjs.entry.js.map +1 -1
  22. package/dist/cjs/stzh-cspace.cjs.entry.js +1 -1
  23. package/dist/cjs/stzh-cspace.cjs.entry.js.map +1 -1
  24. package/dist/cjs/stzh-cta.cjs.entry.js +1 -1
  25. package/dist/cjs/stzh-cta.cjs.entry.js.map +1 -1
  26. package/dist/cjs/stzh-datalist_2.cjs.entry.js +1 -1
  27. package/dist/cjs/stzh-datalist_2.cjs.entry.js.map +1 -1
  28. package/dist/cjs/stzh-datepicker_3.cjs.entry.js +8 -10
  29. package/dist/cjs/stzh-datepicker_3.cjs.entry.js.map +1 -1
  30. package/dist/cjs/stzh-details.cjs.entry.js +162 -0
  31. package/dist/cjs/stzh-details.cjs.entry.js.map +1 -0
  32. package/dist/cjs/stzh-eventdata.cjs.entry.js +26 -0
  33. package/dist/cjs/stzh-eventdata.cjs.entry.js.map +1 -0
  34. package/dist/cjs/stzh-eventinfo.cjs.entry.js +43 -4
  35. package/dist/cjs/stzh-eventinfo.cjs.entry.js.map +1 -1
  36. package/dist/cjs/stzh-footer.cjs.entry.js +1 -1
  37. package/dist/cjs/stzh-footer.cjs.entry.js.map +1 -1
  38. package/dist/cjs/stzh-gallery.cjs.entry.js +1 -1
  39. package/dist/cjs/stzh-gallery.cjs.entry.js.map +1 -1
  40. package/dist/cjs/stzh-header.cjs.entry.js +0 -1
  41. package/dist/cjs/stzh-header.cjs.entry.js.map +1 -1
  42. package/dist/cjs/stzh-imagecomparison.cjs.entry.js +1 -1
  43. package/dist/cjs/stzh-imagecomparison.cjs.entry.js.map +1 -1
  44. package/dist/cjs/{stzh-details_2.cjs.entry.js → stzh-message.cjs.entry.js} +1 -155
  45. package/dist/cjs/stzh-message.cjs.entry.js.map +1 -0
  46. package/dist/cjs/stzh-monthyearpicker.cjs.entry.js +18 -2
  47. package/dist/cjs/stzh-monthyearpicker.cjs.entry.js.map +1 -1
  48. package/dist/cjs/stzh-pagebottom.cjs.entry.js.map +1 -1
  49. package/dist/cjs/stzh-pagetitle.cjs.entry.js +2 -1
  50. package/dist/cjs/stzh-pagetitle.cjs.entry.js.map +1 -1
  51. package/dist/cjs/stzh-popover_2.cjs.entry.js +1 -1
  52. package/dist/cjs/stzh-popover_2.cjs.entry.js.map +1 -1
  53. package/dist/cjs/stzh-readspeaker.cjs.entry.js +1 -1
  54. package/dist/cjs/stzh-readspeaker.cjs.entry.js.map +1 -1
  55. package/dist/cjs/stzh-search.cjs.entry.js +1 -1
  56. package/dist/cjs/stzh-search.cjs.entry.js.map +1 -1
  57. package/dist/cjs/stzh-skin-portal-mitwirken.cjs.entry.js +1 -1
  58. package/dist/cjs/stzh-skin-portal-mitwirken.cjs.entry.js.map +1 -1
  59. package/dist/cjs/stzh-textandimage.cjs.entry.js +3 -2
  60. package/dist/cjs/stzh-textandimage.cjs.entry.js.map +1 -1
  61. package/dist/collection/assets/i18n/de.json +3 -1
  62. package/dist/collection/assets/i18n/en.json +3 -1
  63. package/dist/collection/collection-manifest.json +1 -0
  64. package/dist/collection/components/stzh-accordion/stzh-accordion.css +3 -3
  65. package/dist/collection/components/stzh-accordion-item/stzh-accordion-item.css +3 -3
  66. package/dist/collection/components/stzh-actions/stzh-actions.css +27 -7
  67. package/dist/collection/components/stzh-actions/stzh-actions.js +8 -1
  68. package/dist/collection/components/stzh-actions/stzh-actions.js.map +1 -1
  69. package/dist/collection/components/stzh-actions/stzh-actions.stories.js +2 -2
  70. package/dist/collection/components/stzh-actionset/stzh-actionset.css +3 -3
  71. package/dist/collection/components/stzh-amount/stzh-amount.css +3 -3
  72. package/dist/collection/components/stzh-anchornav/stzh-anchornav.css +3 -3
  73. package/dist/collection/components/stzh-appointments/stzh-appointments.css +3 -3
  74. package/dist/collection/components/stzh-archivelist/stzh-archivelist.css +3 -3
  75. package/dist/collection/components/stzh-audio/stzh-audio.css +3 -3
  76. package/dist/collection/components/stzh-badge/stzh-badge.css +3 -3
  77. package/dist/collection/components/stzh-banner/stzh-banner.css +3 -3
  78. package/dist/collection/components/stzh-breadcrumb/stzh-breadcrumb.css +8 -3
  79. package/dist/collection/components/stzh-button/stzh-button.css +3 -3
  80. package/dist/collection/components/stzh-buttongroup/stzh-buttongroup.css +3 -3
  81. package/dist/collection/components/stzh-calendar/stzh-calendar.css +3 -3
  82. package/dist/collection/components/stzh-card/stzh-card.css +3 -3
  83. package/dist/collection/components/stzh-card-navigation/stzh-card-navigation.css +3 -3
  84. package/dist/collection/components/stzh-card-navigation/stzh-card-navigation.stories.js +1 -1
  85. package/dist/collection/components/stzh-card-searchresult/stzh-card-searchresult.css +3 -3
  86. package/dist/collection/components/stzh-card-superteaser/stzh-card-superteaser.css +3 -3
  87. package/dist/collection/components/stzh-cardlist/stzh-cardlist.css +3 -3
  88. package/dist/collection/components/stzh-carousel/stzh-carousel.css +8 -3
  89. package/dist/collection/components/stzh-carousel/stzh-carousel.js +0 -1
  90. package/dist/collection/components/stzh-carousel/stzh-carousel.js.map +1 -1
  91. package/dist/collection/components/stzh-cell/stzh-cell.css +3 -3
  92. package/dist/collection/components/stzh-chart/stzh-chart.css +6 -3
  93. package/dist/collection/components/stzh-checkbox/stzh-checkbox.css +3 -3
  94. package/dist/collection/components/stzh-checkboxgroup/stzh-checkboxgroup.css +3 -3
  95. package/dist/collection/components/stzh-checkboxgroup/stzh-checkboxgroup.js +9 -12
  96. package/dist/collection/components/stzh-checkboxgroup/stzh-checkboxgroup.js.map +1 -1
  97. package/dist/collection/components/stzh-checkboxgroup/stzh-checkboxgroup.stories.js +9 -0
  98. package/dist/collection/components/stzh-chip/stzh-chip.css +3 -3
  99. package/dist/collection/components/stzh-chipgroup/stzh-chipgroup.css +3 -3
  100. package/dist/collection/components/stzh-chipselect/stzh-chipselect.css +3 -3
  101. package/dist/collection/components/stzh-chipselect/stzh-chipselect.js +2 -0
  102. package/dist/collection/components/stzh-chipselect/stzh-chipselect.js.map +1 -1
  103. package/dist/collection/components/stzh-chipselect/stzh-chipselect.stories.js +2 -2
  104. package/dist/collection/components/stzh-clamp/stzh-clamp.css +3 -3
  105. package/dist/collection/components/stzh-contact/stzh-contact.css +3 -3
  106. package/dist/collection/components/stzh-container/stzh-container.css +3 -3
  107. package/dist/collection/components/stzh-content/stzh-content.css +7 -5
  108. package/dist/collection/components/stzh-cspace/stzh-cspace.css +9 -9
  109. package/dist/collection/components/stzh-cta/stzh-cta.css +8 -3
  110. package/dist/collection/components/stzh-datalist/stzh-datalist.css +3 -3
  111. package/dist/collection/components/stzh-datalist-item/stzh-datalist-item.css +9 -69
  112. package/dist/collection/components/stzh-datamessagelist/stzh-datamessagelist.css +3 -3
  113. package/dist/collection/components/stzh-datamessagelist-item/stzh-datamessagelist-item.css +3 -3
  114. package/dist/collection/components/stzh-datatable/stzh-datatable.css +3 -3
  115. package/dist/collection/components/stzh-datepicker/stzh-datepicker.css +3 -3
  116. package/dist/collection/components/stzh-daterange/stzh-daterange.css +3 -3
  117. package/dist/collection/components/stzh-details/stzh-details.css +3 -3
  118. package/dist/collection/components/stzh-dialog/stzh-dialog.css +3 -3
  119. package/dist/collection/components/stzh-disturber/stzh-disturber.css +3 -3
  120. package/dist/collection/components/stzh-dropdown/stzh-dropdown.css +3 -3
  121. package/dist/collection/components/stzh-editor/stzh-editor.css +3 -3
  122. package/dist/collection/components/stzh-eventdata/stzh-eventdata.css +210 -0
  123. package/dist/collection/components/stzh-eventdata/stzh-eventdata.e2e.js +18 -0
  124. package/dist/collection/components/stzh-eventdata/stzh-eventdata.e2e.js.map +1 -0
  125. package/dist/collection/components/stzh-eventdata/stzh-eventdata.js +52 -0
  126. package/dist/collection/components/stzh-eventdata/stzh-eventdata.js.map +1 -0
  127. package/dist/collection/components/stzh-eventdata/stzh-eventdata.stories.js +44 -0
  128. package/dist/collection/components/stzh-eventinfo/stzh-eventinfo.css +157 -12
  129. package/dist/collection/components/stzh-eventinfo/stzh-eventinfo.js +122 -4
  130. package/dist/collection/components/stzh-eventinfo/stzh-eventinfo.js.map +1 -1
  131. package/dist/collection/components/stzh-eventinfo/stzh-eventinfo.localization.js.map +1 -1
  132. package/dist/collection/components/stzh-eventinfo/stzh-eventinfo.stories.js +14 -1
  133. package/dist/collection/components/stzh-fieldset/stzh-fieldset.css +3 -3
  134. package/dist/collection/components/stzh-figure/stzh-figure.css +3 -3
  135. package/dist/collection/components/stzh-flyingfocus/stzh-flyingfocus.css +3 -3
  136. package/dist/collection/components/stzh-footer/stzh-footer.css +7 -4
  137. package/dist/collection/components/stzh-gallery/stzh-gallery.css +9 -3
  138. package/dist/collection/components/stzh-ghettobox/stzh-ghettobox.css +3 -3
  139. package/dist/collection/components/stzh-header/stzh-header.css +3 -3
  140. package/dist/collection/components/stzh-header/stzh-header.js +0 -1
  141. package/dist/collection/components/stzh-header/stzh-header.js.map +1 -1
  142. package/dist/collection/components/stzh-heading/stzh-heading.css +3 -3
  143. package/dist/collection/components/stzh-hr/stzh-hr.css +3 -3
  144. package/dist/collection/components/stzh-hspace/stzh-hspace.css +3 -3
  145. package/dist/collection/components/stzh-icon/stzh-icon.css +9 -3
  146. package/dist/collection/components/stzh-iframe/stzh-iframe.css +3 -3
  147. package/dist/collection/components/stzh-imagecomparison/stzh-imagecomparison.css +10 -3
  148. package/dist/collection/components/stzh-input/stzh-input.css +3 -3
  149. package/dist/collection/components/stzh-invert/stzh-invert.css +3 -3
  150. package/dist/collection/components/stzh-link/stzh-link.css +3 -3
  151. package/dist/collection/components/stzh-list/stzh-list.css +3 -3
  152. package/dist/collection/components/stzh-list-item/stzh-list-item.css +3 -3
  153. package/dist/collection/components/stzh-loader/stzh-loader.css +3 -3
  154. package/dist/collection/components/stzh-loadingbar/stzh-loadingbar.css +3 -3
  155. package/dist/collection/components/stzh-menu/stzh-menu.css +3 -3
  156. package/dist/collection/components/stzh-menu-item/stzh-menu-item.css +3 -3
  157. package/dist/collection/components/stzh-message/stzh-message.css +3 -3
  158. package/dist/collection/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.css +3 -3
  159. package/dist/collection/components/stzh-monthyearpicker/stzh-monthyearpicker.css +3 -3
  160. package/dist/collection/components/stzh-monthyearpicker/stzh-monthyearpicker.js +36 -4
  161. package/dist/collection/components/stzh-monthyearpicker/stzh-monthyearpicker.js.map +1 -1
  162. package/dist/collection/components/stzh-olmap/stzh-olmap.css +3 -3
  163. package/dist/collection/components/stzh-overlay/stzh-overlay.css +3 -3
  164. package/dist/collection/components/stzh-page-skiplinks/stzh-page-skiplinks.css +3 -3
  165. package/dist/collection/components/stzh-pagebottom/stzh-pagebottom.css +3 -3
  166. package/dist/collection/components/stzh-pagebottom/stzh-pagebottom.js +0 -1
  167. package/dist/collection/components/stzh-pagebottom/stzh-pagebottom.js.map +1 -1
  168. package/dist/collection/components/stzh-pagecontent/stzh-pagecontent.css +3 -3
  169. package/dist/collection/components/stzh-pagetitle/stzh-pagetitle.css +3 -3
  170. package/dist/collection/components/stzh-pagetitle/stzh-pagetitle.js +2 -1
  171. package/dist/collection/components/stzh-pagetitle/stzh-pagetitle.js.map +1 -1
  172. package/dist/collection/components/stzh-pagetitle-hero/stzh-pagetitle-hero.css +3 -3
  173. package/dist/collection/components/stzh-pagination/stzh-pagination.css +3 -3
  174. package/dist/collection/components/stzh-panorama/stzh-panorama.css +3 -3
  175. package/dist/collection/components/stzh-popover/stzh-popover.css +3 -3
  176. package/dist/collection/components/stzh-print/stzh-print.css +3 -3
  177. package/dist/collection/components/stzh-progressbar/stzh-progressbar.css +3 -3
  178. package/dist/collection/components/stzh-progressbar-item/stzh-progressbar-item.css +3 -3
  179. package/dist/collection/components/stzh-radio/stzh-radio.css +3 -3
  180. package/dist/collection/components/stzh-radiogroup/stzh-radiogroup.css +3 -3
  181. package/dist/collection/components/stzh-radiogroup/stzh-radiogroup.js +8 -12
  182. package/dist/collection/components/stzh-radiogroup/stzh-radiogroup.js.map +1 -1
  183. package/dist/collection/components/stzh-radiogroup/stzh-radiogroup.stories.js +10 -0
  184. package/dist/collection/components/stzh-ratio/stzh-ratio.css +3 -3
  185. package/dist/collection/components/stzh-readspeaker/stzh-readspeaker.css +8 -3
  186. package/dist/collection/components/stzh-richtext/stzh-richtext.css +3 -3
  187. package/dist/collection/components/stzh-row/stzh-row.css +3 -3
  188. package/dist/collection/components/stzh-saptcha/stzh-saptcha.css +3 -3
  189. package/dist/collection/components/stzh-scrollup/stzh-scrollup.css +3 -3
  190. package/dist/collection/components/stzh-search/stzh-search.css +6 -5
  191. package/dist/collection/components/stzh-section/stzh-section.css +3 -3
  192. package/dist/collection/components/stzh-share/stzh-share.css +3 -3
  193. package/dist/collection/components/stzh-show/stzh-show.css +3 -3
  194. package/dist/collection/components/stzh-sitemap/stzh-sitemap.css +3 -3
  195. package/dist/collection/components/stzh-skin-portal-mitwirken/stzh-skin-portal-mitwirken.css +18 -3
  196. package/dist/collection/components/stzh-skin-storybook-preview/stzh-skin-storybook-preview.css +3 -3
  197. package/dist/collection/components/stzh-skiplink/stzh-skiplink.css +3 -3
  198. package/dist/collection/components/stzh-sortable/stzh-sortable.css +3 -3
  199. package/dist/collection/components/stzh-space/stzh-space.css +3 -3
  200. package/dist/collection/components/stzh-status/stzh-status.css +3 -3
  201. package/dist/collection/components/stzh-sticky/stzh-sticky.css +3 -3
  202. package/dist/collection/components/stzh-sticky-actions/stzh-sticky-actions.css +3 -3
  203. package/dist/collection/components/stzh-table/stzh-table.css +3 -3
  204. package/dist/collection/components/stzh-tag/stzh-tag.css +3 -3
  205. package/dist/collection/components/stzh-text/stzh-text.css +4 -4
  206. package/dist/collection/components/stzh-textandimage/stzh-textandimage.css +9 -3
  207. package/dist/collection/components/stzh-textandimage/stzh-textandimage.js +2 -1
  208. package/dist/collection/components/stzh-textandimage/stzh-textandimage.js.map +1 -1
  209. package/dist/collection/components/stzh-textandimage/stzh-textandimage.stories.js +2 -0
  210. package/dist/collection/components/stzh-timeline/stzh-timeline.css +3 -3
  211. package/dist/collection/components/stzh-timeline-item/stzh-timeline-item.css +3 -3
  212. package/dist/collection/components/stzh-timepicker/stzh-timepicker.css +3 -3
  213. package/dist/collection/components/stzh-toast/stzh-toast.css +3 -3
  214. package/dist/collection/components/stzh-toastbar/stzh-toastbar.css +3 -3
  215. package/dist/collection/components/stzh-toggle/stzh-toggle.css +3 -3
  216. package/dist/collection/components/stzh-tooltip/stzh-tooltip.css +3 -3
  217. package/dist/collection/components/stzh-twocolumns/stzh-twocolumns.css +3 -3
  218. package/dist/collection/components/stzh-upload/stzh-upload.css +3 -3
  219. package/dist/collection/components/stzh-vbz-carousel/stzh-vbz-carousel.css +3 -3
  220. package/dist/collection/components/stzh-vbz-linechip/stzh-vbz-linechip.css +3 -3
  221. package/dist/collection/components/stzh-vbz-majorticker/stzh-vbz-majorticker.css +3 -3
  222. package/dist/collection/components/stzh-vbz-ticker/stzh-vbz-ticker.css +3 -3
  223. package/dist/collection/components/stzh-visuallyhidden/stzh-visuallyhidden.css +3 -3
  224. package/dist/collection/components/stzh-vspace/stzh-vspace.css +3 -3
  225. package/dist/collection/components/stzh-youtube/stzh-youtube.css +3 -3
  226. package/dist/collection/pages/website/website.e2e.js +1 -1
  227. package/dist/collection/pages/website/website.e2e.js.map +1 -1
  228. package/dist/components/index.js +1 -1
  229. package/dist/components/stzh-actions.js +8 -2
  230. package/dist/components/stzh-actions.js.map +1 -1
  231. package/dist/components/stzh-breadcrumb2.js +1 -1
  232. package/dist/components/stzh-breadcrumb2.js.map +1 -1
  233. package/dist/components/stzh-carousel2.js +1 -2
  234. package/dist/components/stzh-carousel2.js.map +1 -1
  235. package/dist/components/stzh-chart.js +1 -1
  236. package/dist/components/stzh-chart.js.map +1 -1
  237. package/dist/components/stzh-checkboxgroup.js +10 -12
  238. package/dist/components/stzh-checkboxgroup.js.map +1 -1
  239. package/dist/components/stzh-chipselect2.js +2 -0
  240. package/dist/components/stzh-chipselect2.js.map +1 -1
  241. package/dist/components/stzh-content.js +1 -1
  242. package/dist/components/stzh-content.js.map +1 -1
  243. package/dist/components/stzh-cspace.js +1 -1
  244. package/dist/components/stzh-cspace.js.map +1 -1
  245. package/dist/components/stzh-cta.js +1 -1
  246. package/dist/components/stzh-cta.js.map +1 -1
  247. package/dist/components/stzh-datalist-item2.js +1 -1
  248. package/dist/components/stzh-datalist-item2.js.map +1 -1
  249. package/dist/components/stzh-eventdata.d.ts +11 -0
  250. package/dist/components/stzh-eventdata.js +41 -0
  251. package/dist/components/stzh-eventdata.js.map +1 -0
  252. package/dist/components/stzh-eventinfo.js +50 -8
  253. package/dist/components/stzh-eventinfo.js.map +1 -1
  254. package/dist/components/stzh-footer.js +1 -1
  255. package/dist/components/stzh-footer.js.map +1 -1
  256. package/dist/components/stzh-gallery.js +1 -1
  257. package/dist/components/stzh-gallery.js.map +1 -1
  258. package/dist/components/stzh-header.js +0 -1
  259. package/dist/components/stzh-header.js.map +1 -1
  260. package/dist/components/stzh-icon2.js +1 -1
  261. package/dist/components/stzh-icon2.js.map +1 -1
  262. package/dist/components/stzh-imagecomparison.js +1 -1
  263. package/dist/components/stzh-imagecomparison.js.map +1 -1
  264. package/dist/components/stzh-monthyearpicker.js +19 -2
  265. package/dist/components/stzh-monthyearpicker.js.map +1 -1
  266. package/dist/components/stzh-pagebottom.js.map +1 -1
  267. package/dist/components/stzh-pagetitle.js +2 -1
  268. package/dist/components/stzh-pagetitle.js.map +1 -1
  269. package/dist/components/stzh-radiogroup2.js +8 -11
  270. package/dist/components/stzh-radiogroup2.js.map +1 -1
  271. package/dist/components/stzh-readspeaker.js +1 -1
  272. package/dist/components/stzh-readspeaker.js.map +1 -1
  273. package/dist/components/stzh-search.js +1 -1
  274. package/dist/components/stzh-search.js.map +1 -1
  275. package/dist/components/stzh-skin-portal-mitwirken.js +1 -1
  276. package/dist/components/stzh-skin-portal-mitwirken.js.map +1 -1
  277. package/dist/components/stzh-text2.js +1 -1
  278. package/dist/components/stzh-text2.js.map +1 -1
  279. package/dist/components/stzh-textandimage.js +3 -2
  280. package/dist/components/stzh-textandimage.js.map +1 -1
  281. package/dist/esm/{app-globals-d7eff0a5.js → app-globals-f9c4987b.js} +2 -2
  282. package/dist/esm/{app-globals-d7eff0a5.js.map → app-globals-f9c4987b.js.map} +1 -1
  283. package/dist/esm/index-e3050b18.js +16 -8
  284. package/dist/esm/loader.js +2 -2
  285. package/dist/esm/stzh-actions.entry.js +8 -2
  286. package/dist/esm/stzh-actions.entry.js.map +1 -1
  287. package/dist/esm/stzh-badge_3.entry.js +1 -1
  288. package/dist/esm/stzh-badge_3.entry.js.map +1 -1
  289. package/dist/esm/stzh-breadcrumb_2.entry.js +1 -1
  290. package/dist/esm/stzh-breadcrumb_2.entry.js.map +1 -1
  291. package/dist/esm/stzh-card_3.entry.js +2 -0
  292. package/dist/esm/stzh-card_3.entry.js.map +1 -1
  293. package/dist/esm/stzh-carousel.entry.js +1 -2
  294. package/dist/esm/stzh-carousel.entry.js.map +1 -1
  295. package/dist/esm/stzh-chart.entry.js +1 -1
  296. package/dist/esm/stzh-chart.entry.js.map +1 -1
  297. package/dist/esm/stzh-checkboxgroup.entry.js +9 -10
  298. package/dist/esm/stzh-checkboxgroup.entry.js.map +1 -1
  299. package/dist/esm/stzh-components.js +2 -2
  300. package/dist/esm/stzh-content.entry.js +1 -1
  301. package/dist/esm/stzh-content.entry.js.map +1 -1
  302. package/dist/esm/stzh-cspace.entry.js +1 -1
  303. package/dist/esm/stzh-cspace.entry.js.map +1 -1
  304. package/dist/esm/stzh-cta.entry.js +1 -1
  305. package/dist/esm/stzh-cta.entry.js.map +1 -1
  306. package/dist/esm/stzh-datalist_2.entry.js +1 -1
  307. package/dist/esm/stzh-datalist_2.entry.js.map +1 -1
  308. package/dist/esm/stzh-datepicker_3.entry.js +8 -10
  309. package/dist/esm/stzh-datepicker_3.entry.js.map +1 -1
  310. package/dist/esm/stzh-details.entry.js +158 -0
  311. package/dist/esm/stzh-details.entry.js.map +1 -0
  312. package/dist/esm/stzh-eventdata.entry.js +22 -0
  313. package/dist/esm/stzh-eventdata.entry.js.map +1 -0
  314. package/dist/esm/stzh-eventinfo.entry.js +43 -4
  315. package/dist/esm/stzh-eventinfo.entry.js.map +1 -1
  316. package/dist/esm/stzh-footer.entry.js +1 -1
  317. package/dist/esm/stzh-footer.entry.js.map +1 -1
  318. package/dist/esm/stzh-gallery.entry.js +1 -1
  319. package/dist/esm/stzh-gallery.entry.js.map +1 -1
  320. package/dist/esm/stzh-header.entry.js +0 -1
  321. package/dist/esm/stzh-header.entry.js.map +1 -1
  322. package/dist/esm/stzh-imagecomparison.entry.js +1 -1
  323. package/dist/esm/stzh-imagecomparison.entry.js.map +1 -1
  324. package/dist/esm/{stzh-details_2.entry.js → stzh-message.entry.js} +2 -155
  325. package/dist/esm/stzh-message.entry.js.map +1 -0
  326. package/dist/esm/stzh-monthyearpicker.entry.js +18 -2
  327. package/dist/esm/stzh-monthyearpicker.entry.js.map +1 -1
  328. package/dist/esm/stzh-pagebottom.entry.js.map +1 -1
  329. package/dist/esm/stzh-pagetitle.entry.js +2 -1
  330. package/dist/esm/stzh-pagetitle.entry.js.map +1 -1
  331. package/dist/esm/stzh-popover_2.entry.js +1 -1
  332. package/dist/esm/stzh-popover_2.entry.js.map +1 -1
  333. package/dist/esm/stzh-readspeaker.entry.js +1 -1
  334. package/dist/esm/stzh-readspeaker.entry.js.map +1 -1
  335. package/dist/esm/stzh-search.entry.js +1 -1
  336. package/dist/esm/stzh-search.entry.js.map +1 -1
  337. package/dist/esm/stzh-skin-portal-mitwirken.entry.js +1 -1
  338. package/dist/esm/stzh-skin-portal-mitwirken.entry.js.map +1 -1
  339. package/dist/esm/stzh-textandimage.entry.js +3 -2
  340. package/dist/esm/stzh-textandimage.entry.js.map +1 -1
  341. package/dist/stzh-components/assets/i18n/de.json +3 -1
  342. package/dist/stzh-components/assets/i18n/en.json +3 -1
  343. package/dist/stzh-components/p-14177ccb.entry.js +2 -0
  344. package/dist/stzh-components/p-14177ccb.entry.js.map +1 -0
  345. package/dist/stzh-components/p-161ae3d1.entry.js +2 -0
  346. package/dist/stzh-components/p-161ae3d1.entry.js.map +1 -0
  347. package/dist/stzh-components/{p-93721591.entry.js → p-1a19bc6e.entry.js} +2 -2
  348. package/dist/stzh-components/p-1a19bc6e.entry.js.map +1 -0
  349. package/dist/stzh-components/p-1a3dcde3.entry.js +2 -0
  350. package/dist/stzh-components/p-1a3dcde3.entry.js.map +1 -0
  351. package/dist/stzh-components/p-2096f3c6.entry.js +2 -0
  352. package/dist/stzh-components/p-2096f3c6.entry.js.map +1 -0
  353. package/dist/stzh-components/p-27d5ad01.entry.js +2 -0
  354. package/dist/stzh-components/p-27d5ad01.entry.js.map +1 -0
  355. package/dist/stzh-components/p-3f0d3919.entry.js +2 -0
  356. package/dist/stzh-components/p-3f0d3919.entry.js.map +1 -0
  357. package/dist/stzh-components/p-429d2a9b.entry.js +2 -0
  358. package/dist/stzh-components/p-429d2a9b.entry.js.map +1 -0
  359. package/dist/stzh-components/{p-e5cfdb8a.entry.js → p-5b1bc446.entry.js} +2 -2
  360. package/dist/stzh-components/{p-e5cfdb8a.entry.js.map → p-5b1bc446.entry.js.map} +1 -1
  361. package/dist/stzh-components/{p-0aabd857.entry.js → p-663f31a2.entry.js} +2 -2
  362. package/dist/stzh-components/p-663f31a2.entry.js.map +1 -0
  363. package/dist/stzh-components/{p-1be90089.entry.js → p-6f87ad6e.entry.js} +2 -2
  364. package/dist/stzh-components/{p-1be90089.entry.js.map → p-6f87ad6e.entry.js.map} +1 -1
  365. package/dist/stzh-components/p-7aac960b.entry.js +2 -0
  366. package/dist/stzh-components/p-7aac960b.entry.js.map +1 -0
  367. package/dist/stzh-components/p-8f19c3ec.entry.js +2 -0
  368. package/dist/stzh-components/p-8f19c3ec.entry.js.map +1 -0
  369. package/dist/stzh-components/p-91b360c9.entry.js +2 -0
  370. package/dist/stzh-components/{p-d028e43d.entry.js.map → p-91b360c9.entry.js.map} +1 -1
  371. package/dist/stzh-components/p-91d7c08d.entry.js +2 -0
  372. package/dist/stzh-components/p-91d7c08d.entry.js.map +1 -0
  373. package/dist/stzh-components/{p-f2ec1ede.entry.js → p-929c5234.entry.js} +2 -2
  374. package/dist/stzh-components/{p-f2ec1ede.entry.js.map → p-929c5234.entry.js.map} +1 -1
  375. package/dist/stzh-components/p-94947ab0.entry.js.map +1 -1
  376. package/dist/stzh-components/p-97df1d9f.entry.js +2 -0
  377. package/dist/stzh-components/p-97df1d9f.entry.js.map +1 -0
  378. package/dist/stzh-components/{p-9f9d53a0.entry.js → p-9b19785c.entry.js} +2 -2
  379. package/dist/stzh-components/p-9b19785c.entry.js.map +1 -0
  380. package/dist/stzh-components/{p-1a50b64a.entry.js → p-ab2aee99.entry.js} +2 -2
  381. package/dist/stzh-components/{p-1a50b64a.entry.js.map → p-ab2aee99.entry.js.map} +1 -1
  382. package/dist/stzh-components/p-af7562ba.entry.js +2 -0
  383. package/dist/stzh-components/p-af7562ba.entry.js.map +1 -0
  384. package/dist/stzh-components/{p-0bf70420.entry.js → p-af87b81a.entry.js} +2 -2
  385. package/dist/stzh-components/p-af87b81a.entry.js.map +1 -0
  386. package/dist/stzh-components/p-c9eecee7.entry.js +2 -0
  387. package/dist/stzh-components/p-c9eecee7.entry.js.map +1 -0
  388. package/dist/stzh-components/{p-3fa1c5a4.entry.js → p-ee82f53c.entry.js} +2 -2
  389. package/dist/stzh-components/{p-3fa1c5a4.entry.js.map → p-ee82f53c.entry.js.map} +1 -1
  390. package/dist/stzh-components/p-ef849bb1.entry.js +2 -0
  391. package/dist/stzh-components/p-ef849bb1.entry.js.map +1 -0
  392. package/dist/stzh-components/p-f06b2737.js +2 -0
  393. package/dist/stzh-components/{p-05e8c18d.js.map → p-f06b2737.js.map} +1 -1
  394. package/dist/stzh-components/{p-55cdd473.entry.js → p-f692c5d0.entry.js} +2 -2
  395. package/dist/stzh-components/p-f692c5d0.entry.js.map +1 -0
  396. package/dist/stzh-components/p-f7979f2a.entry.js +2 -0
  397. package/dist/stzh-components/p-f7979f2a.entry.js.map +1 -0
  398. package/dist/stzh-components/p-fdd6e755.entry.js +2 -0
  399. package/dist/stzh-components/p-fdd6e755.entry.js.map +1 -0
  400. package/dist/stzh-components/stzh-components.css +1 -1
  401. package/dist/stzh-components/stzh-components.esm.js +1 -1
  402. package/dist/stzh-components/stzh-components.esm.js.map +1 -1
  403. package/dist/types/components/stzh-actions/stzh-actions.d.ts +1 -0
  404. package/dist/types/components/stzh-checkboxgroup/stzh-checkboxgroup.d.ts +1 -1
  405. package/dist/types/components/stzh-eventdata/stzh-eventdata.d.ts +10 -0
  406. package/dist/types/components/stzh-eventinfo/stzh-eventinfo.d.ts +15 -1
  407. package/dist/types/components/stzh-eventinfo/stzh-eventinfo.localization.d.ts +2 -0
  408. package/dist/types/components/stzh-monthyearpicker/stzh-monthyearpicker.d.ts +3 -2
  409. package/dist/types/components/stzh-pagebottom/stzh-pagebottom.d.ts +0 -1
  410. package/dist/types/components/stzh-radiogroup/stzh-radiogroup.d.ts +1 -1
  411. package/dist/types/components.d.ts +61 -0
  412. package/dist/vscode-data.json +41 -0
  413. package/package.json +1 -1
  414. package/dist/cjs/stzh-details_2.cjs.entry.js.map +0 -1
  415. package/dist/esm/stzh-details_2.entry.js.map +0 -1
  416. package/dist/stzh-components/p-05e8c18d.js +0 -2
  417. package/dist/stzh-components/p-0aabd857.entry.js.map +0 -1
  418. package/dist/stzh-components/p-0bf70420.entry.js.map +0 -1
  419. package/dist/stzh-components/p-3c2d9cff.entry.js +0 -2
  420. package/dist/stzh-components/p-3c2d9cff.entry.js.map +0 -1
  421. package/dist/stzh-components/p-3cd1696a.entry.js +0 -2
  422. package/dist/stzh-components/p-3cd1696a.entry.js.map +0 -1
  423. package/dist/stzh-components/p-400f2932.entry.js +0 -2
  424. package/dist/stzh-components/p-400f2932.entry.js.map +0 -1
  425. package/dist/stzh-components/p-55cdd473.entry.js.map +0 -1
  426. package/dist/stzh-components/p-5f5d14cb.entry.js +0 -2
  427. package/dist/stzh-components/p-5f5d14cb.entry.js.map +0 -1
  428. package/dist/stzh-components/p-836c4cdf.entry.js +0 -2
  429. package/dist/stzh-components/p-836c4cdf.entry.js.map +0 -1
  430. package/dist/stzh-components/p-93721591.entry.js.map +0 -1
  431. package/dist/stzh-components/p-9f9d53a0.entry.js.map +0 -1
  432. package/dist/stzh-components/p-accbac61.entry.js +0 -2
  433. package/dist/stzh-components/p-accbac61.entry.js.map +0 -1
  434. package/dist/stzh-components/p-bd2a2c30.entry.js +0 -2
  435. package/dist/stzh-components/p-bd2a2c30.entry.js.map +0 -1
  436. package/dist/stzh-components/p-beec9a0a.entry.js +0 -2
  437. package/dist/stzh-components/p-beec9a0a.entry.js.map +0 -1
  438. package/dist/stzh-components/p-c774915c.entry.js +0 -2
  439. package/dist/stzh-components/p-c774915c.entry.js.map +0 -1
  440. package/dist/stzh-components/p-d028e43d.entry.js +0 -2
  441. package/dist/stzh-components/p-d56d5fe9.entry.js +0 -2
  442. package/dist/stzh-components/p-d56d5fe9.entry.js.map +0 -1
  443. package/dist/stzh-components/p-ddfb8df0.entry.js +0 -2
  444. package/dist/stzh-components/p-ddfb8df0.entry.js.map +0 -1
  445. package/dist/stzh-components/p-e10aa7bd.entry.js +0 -2
  446. package/dist/stzh-components/p-e10aa7bd.entry.js.map +0 -1
  447. package/dist/stzh-components/p-f50e0102.entry.js +0 -2
  448. package/dist/stzh-components/p-f50e0102.entry.js.map +0 -1
  449. package/dist/stzh-components/p-f86e53a0.entry.js +0 -2
  450. package/dist/stzh-components/p-f86e53a0.entry.js.map +0 -1
@@ -330,10 +330,10 @@ const StzhRadiogroup = class {
330
330
  this.radios = Array.from(this.element.querySelectorAll(SELECTOR_RADIO));
331
331
  this.updateRadiosProperty("hide-optional", true);
332
332
  this.updateRadiosProperty("a11y-describedby", `${this.radiogroupId}-description`);
333
+ this.updateRadiosProperty("invalid", this.invalid || this.errorUsed);
333
334
  this.watchValue(this.value);
334
335
  this.watchName(this.name);
335
336
  this.watchDisabled(this.disabled);
336
- this.watchInvalid(this.invalid);
337
337
  this.watchRequired(this.required);
338
338
  };
339
339
  this.localization = undefined;
@@ -360,9 +360,6 @@ const StzhRadiogroup = class {
360
360
  watchDisabled(newValue) {
361
361
  this.updateRadiosProperty("disabled", newValue);
362
362
  }
363
- watchInvalid(newValue) {
364
- this.updateRadiosProperty("invalid", newValue);
365
- }
366
363
  watchRequired(newValue) {
367
364
  this.updateRadiosProperty("required", newValue);
368
365
  }
@@ -415,6 +412,10 @@ const StzhRadiogroup = class {
415
412
  }
416
413
  });
417
414
  }
415
+ get errorUsed() {
416
+ var _a;
417
+ return utils.hasSlot(this.element, 'error') || ((_a = this._error) === null || _a === void 0 ? void 0 : _a.length) > 0;
418
+ }
418
419
  updateCheckedRadioByValue(value) {
419
420
  this.checkedRadio = this.radios.find(radio => radio.value === value);
420
421
  if (this.checkedRadio) {
@@ -468,22 +469,20 @@ const StzhRadiogroup = class {
468
469
  }
469
470
  }
470
471
  render() {
471
- var _a;
472
472
  const descriptionUsed = utils.hasSlot(this.element, 'description') || !!this.description;
473
473
  const descriptionLongUsed = utils.hasSlot(this.element, 'description-long') || !!this.descriptionLong;
474
- const errorUsed = utils.hasSlot(this.element, 'error') || ((_a = this._error) === null || _a === void 0 ? void 0 : _a.length) > 0;
475
474
  const classes = {
476
475
  "stzh-radiogroup": true,
477
476
  "stzh-radiogroup--has-description": descriptionUsed,
478
477
  "stzh-radiogroup--has-description-long": descriptionLongUsed,
479
- "stzh-radiogroup--has-error": errorUsed,
478
+ "stzh-radiogroup--has-error": this.errorUsed,
480
479
  "stzh-radiogroup--is-required": this.required,
481
480
  "stzh-radiogroup--is-disabled": this.disabled,
482
- "stzh-radiogroup--is-invalid": this.invalid || errorUsed,
481
+ "stzh-radiogroup--is-invalid": this.invalid || this.errorUsed,
483
482
  "stzh-radiogroup--hide-legend": this.hideLegend,
484
483
  [`stzh-radiogroup--direction-${this.direction}`]: !!this.direction
485
484
  };
486
- return (index.h(index.Host, { "is-invalid": this.invalid || errorUsed }, index.h("fieldset", { class: classes }, this.legend &&
485
+ return (index.h(index.Host, { "is-invalid": this.invalid || this.errorUsed }, index.h("fieldset", { class: classes }, this.legend &&
487
486
  index.h("legend", { class: "stzh-radiogroup__legend" }, this.legend, !this.hideOptional &&
488
487
  index.h("span", { class: "stzh-radiogroup__marker" }, index.h("span", { class: "stzh-radiogroup__marker-symbol", "aria-hidden": "true" }, this.required
489
488
  ? this.localization.$globals.requiredFieldMarker
@@ -495,7 +494,6 @@ const StzhRadiogroup = class {
495
494
  static get watchers() { return {
496
495
  "name": ["watchName"],
497
496
  "disabled": ["watchDisabled"],
498
- "invalid": ["watchInvalid"],
499
497
  "required": ["watchRequired"],
500
498
  "value": ["watchValue"],
501
499
  "error": ["errorWatcher"],
@@ -1 +1 @@
1
- {"file":"stzh-datepicker.stzh-radio.stzh-radiogroup.entry.cjs.js","mappings":"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","names":["printISODate","hasSlot","h","Host","Fragment","StzhInputDescription","camelCase"],"sources":["src/components/stzh-datepicker/stzh-datepicker.scss?tag=stzh-datepicker&encapsulation=scoped","src/components/stzh-datepicker/stzh-datepicker.tsx","src/components/stzh-radio/stzh-radio.scss?tag=stzh-radio&encapsulation=scoped","src/components/stzh-radio/stzh-radio.tsx","src/components/stzh-radiogroup/stzh-radiogroup.scss?tag=stzh-radiogroup&encapsulation=scoped","src/components/stzh-radiogroup/stzh-radiogroup.tsx"],"sourcesContent":[":host {\n --calendar-width: #{$calendarWidth};\n\n width: 100%;\n\n &[inline]:not([inline=\"false\"]) {\n width: var(--calendar-width);\n }\n}\n\n.stzh-datepicker {\n &__popover {\n --width: auto;\n }\n\n &__calendar {\n margin-left: auto;\n margin-right: auto;\n\n &.is-inline {\n width: 100%;\n margin-left: 0px;\n margin-right: 0px;\n }\n }\n\n &__actions {\n display: flex;\n width: var(--calendar-width);\n margin-left: auto;\n margin-right: auto;\n\n &.is-inline {\n width: 100%;\n margin-left: 0px;\n margin-right: 0px;\n }\n\n &:not(:empty) {\n padding-left: space('small');\n padding-right: space('small');\n }\n }\n\n /* Has action */\n\n &--has-action &__popover {\n --content-padding: 0 0 #{space('small')} 0;\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 Listen\n} from \"@stencil/core\";\n\nimport {\n StzhCalendarChangeEvent,\n StzhDatepickerChangeEvent\n} from \"../../index\";\n\nimport { StzhCalendarDateDisabledPredicate } from \"../../index\";\n\nimport { printISODate } from \"../../utils/date-utils\"\nimport { StzhLocaleAdapter } from \"../../utils/date-adapter\"\n\nimport { StzhDatepickerLocalizedText } from \"./stzh-datepicker.localization\";\nimport { hasSlot } from \"../../utils/utils\";\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 @State() calendarValue: string = \"\";\n @State() inputValue: string = \"\";\n\n /** Default value (used by reset) */\n @Prop({ mutable: true }) defaultValue: string = \"\";\n\n /** Label for input field and popover */\n @Prop() label: string = \"\";\n\n /** Whether label is visually hidden. */\n @Prop() labelHidden: boolean = false;\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 /** Hide `(optional)` label (or use `required` inside form ot hide it) */\n @Prop({ reflect: true }) hideOptional: boolean = false;\n\n /** Size variant */\n @Prop({ reflect: true }) size: \"default\" | \"small\" = \"default\";\n\n /** Show calendar inline */\n @Prop({ reflect: true }) inline: boolean = false;\n\n /**\n * Date adapter visible date shown to the user, 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 /**\n * Date adapter for internal date passed to backend, for custom parsing/formatting.\n * Can be `\"iso\"` (default, date in ISO format) / `\"legacy\"` (date in `d.m.Y` format)\n * or `StzhLocaleAdapter` (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() internalDateAdapter: \"iso\" | \"legacy\" | StzhLocaleAdapter = \"iso\";\n private _internalDateAdapter: StzhLocaleAdapter;\n\n /** Translation strings. */\n @Prop() localization: StzhDatepickerLocalizedText;\n\n @State() buttonLabel: string;\n\n @Listen(\"reset\", { target: \"document\" })\n resetListener(event: Event) {\n if ((event.target as HTMLElement).contains(this.element)) {\n requestAnimationFrame(() => {\n this.handleReset();\n });\n }\n }\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 if (!this._internalDateAdapter) {\n return;\n }\n\n const date = this._internalDateAdapter.parse(newValue, \"dateInput\");\n\n this.calendarValue = printISODate(date);\n this.inputValue = this.dateAdapter.format(date, \"dateInput\");\n\n this.updateButtonAccessibleLabel();\n }\n\n @Watch(\"dateAdapter\")\n dateAdapterWatcher(newValue: StzhLocaleAdapter) {\n if (!newValue) {\n this.dateAdapter = window.stzhComponents.utils.createFormatParseAdapter(\n this.localization.$formats,\n this.localization.$globals\n );\n }\n }\n\n @Watch(\"internalDateAdapter\")\n internalDateAdapterWatcher(newValue: \"iso\" | \"legacy\" | StzhLocaleAdapter) {\n if (newValue === \"iso\" || !newValue) {\n this._internalDateAdapter = window.stzhComponents.utils.createFormatParseAdapter(\n this.localization.$formatsIso,\n this.localization.$globals\n );\n } else if (newValue === \"legacy\") {\n this._internalDateAdapter = window.stzhComponents.utils.createFormatParseAdapter(\n this.localization.$formatsLegacy,\n this.localization.$globals\n );\n } else {\n this._internalDateAdapter = newValue;\n }\n }\n\n /** Set value by a JS Date object */\n @Method()\n async setDate(date: Date) {\n this.value = this._internalDateAdapter.format(date, \"dateInput\");\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 handleReset = async () => {\n this.value = this.defaultValue;\n }\n\n private onRootFocus = () => {\n if (this.input) {\n this.input.focus();\n }\n }\n\n private onInputChanged = () => {\n const parsedDate = this.dateAdapter.parse(this.input.value, \"dateInput\");\n\n if (this.input.value === \"\" || parsedDate) {\n const formattedDate = this._internalDateAdapter.format(parsedDate, \"dateInput\");\n\n if (this.value !== formattedDate) {\n this.value = formattedDate;\n } else {\n this.valueWatcher(formattedDate);\n }\n\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 if (event.detail.component !== \"stzh-calendar\") {\n return;\n }\n\n this.value = event.detail.valueAsDate\n && this._internalDateAdapter.format(event.detail.valueAsDate, \"dateInput\");\n\n this.stzhChange.emit({\n component: \"stzh-datepicker\",\n value: this.value,\n valueAsDate: event.detail.valueAsDate,\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 = this._internalDateAdapter.parse(this.value, \"dateInput\");\n this.buttonLabel = `${this.label}, ${this.localization.buttonLabel}, ${this.localization.selectedDateMessage} ${this.dateFormatLong.format(valueAsDate)}`;\n } catch (err) {\n this.buttonLabel = `${this.label}, ${this.localization.buttonLabel}`;\n }\n }\n\n connectedCallback() {\n this.createDateFormatters();\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"datepicker\");\n }\n\n this.dateAdapterWatcher(this.dateAdapter);\n this.internalDateAdapterWatcher(this.internalDateAdapter);\n this.valueWatcher(this.value);\n this.defaultValue = this.defaultValue || this.value;\n }\n\n render() {\n const actionUsed = hasSlot(this.element, 'action');\n\n const classes = {\n \"stzh-datepicker\": true,\n \"stzh-datepicker--inline\": this.inline,\n \"stzh-datepicker--has-action\": actionUsed\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 defaultValue={this.defaultValue}\n />\n\n {this.inline &&\n <Fragment>\n <stzh-calendar\n // ref={(el) => (this.calendar = el as HTMLStzhCalendarElement)}\n value={this.calendarValue}\n class=\"stzh-datepicker__calendar is-inline\"\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 value={this.inputValue}\n label={this.label}\n labelHidden={this.labelHidden}\n ref={(el) => (this.input = el as HTMLStzhInputElement)}\n noAutocomplete\n onStzhChanged={this.onInputChanged}\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 hideOptional={this.hideOptional}\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 icon-only\n icon=\"calendar\"\n size={this.size}\n disabled={this.disabled}\n a11yLabel={this.buttonLabel}\n ></stzh-button>\n <div slot=\"content\">\n <stzh-calendar\n // ref={(el) => (this.calendar = el as HTMLStzhCalendarElement)}\n value={this.calendarValue}\n class=\"stzh-datepicker__calendar is-popover\"\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",":host {\n display: inline-block;\n\n &[disabled]:not([disabled=\"false\"]) {\n --description-color: #{$formDisabledColor};\n }\n}\n\n.stzh-radio {\n @include input-description;\n display: grid;\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 @include radio__mark();\n }\n\n &__check {\n @include radio__check();\n }\n\n &__label {\n --stzh-base-color: initial;\n\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 {\n @include fontSize('micro');\n margin-left: calc(-0.25em + #{space('xsmall')});\n }\n\n /* Hover / Focus / Checked */\n\n &:hover &__label,\n &__input:checked ~ &__label {\n color: $colorPrimary70;\n }\n\n &__input:checked:hover ~ &__label,\n &__input:checked:hover ~ &__mark &__check {\n color: $colorPrimary90;\n }\n\n &:hover &__mark,\n &__input:checked ~ &__mark {\n border-color: $colorPrimary70;\n }\n\n &__input:checked:hover ~ &__mark {\n border-color: $colorPrimary90;\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: $colorError60;\n }\n\n &--is-invalid &__input ~ &__mark {\n border-color: $colorError60;\n }\n\n /* Disabled */\n\n\t&--is-disabled &__field-wrapper {\n cursor: not-allowed;\n }\n\n &--is-disabled &__input ~ &__label {\n color: $colorGrey60;\n }\n\n &--is-disabled &__input ~ &__mark &__check {\n color: $colorGrey50;\n }\n\n &--is-disabled &__input ~ &__mark {\n border-color: $colorGrey50;\n }\n\n &--is-disabled &__mark {\n background-color: $colorGrey20;\n }\n}\n","import {\n Host,\n Component,\n Prop,\n Event,\n Element,\n EventEmitter,\n h,\n Watch,\n Listen\n} from \"@stencil/core\";\n\nimport {\n StzhRadioChangeEvent,\n StzhRadioFocusEvent,\n StzhRadioBlurEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"../stzh-input/stzh-input-description\";\n\nlet radioCounter = 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 description-long-title - Slot for long description title (in popover) / instead of descriptionLongTitle or description property\n * @slot error - Slot for error\n */\n@Component({\n tag: \"stzh-radio\",\n styleUrl: \"stzh-radio.scss\",\n scoped: true\n})\nexport class StzhRadio {\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 element */\n @Prop({ reflect: true }) name: string = \"\";\n\n /** The 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 /** Hide `(optional)` label (or use `required` inside form ot hide it) */\n @Prop({ reflect: true }) hideOptional: boolean = false;\n\n /** Checked status */\n @Prop({ mutable: true, reflect: true }) checked: boolean = false;\n\n /** Default checked (used by reset) */\n @Prop({ mutable: true }) defaultChecked: boolean;\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 /** Long description title appearing in a popover (use description-long-title slot as or description property alternative) */\n @Prop() descriptionLongTitle: string;\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 radio button (this will be overwritten if description prop or slot is used, used by stzh-radiogroup) */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Input change event */\n @Event() stzhChange: EventEmitter<StzhRadioChangeEvent>;\n\n /** Input focus event */\n @Event() stzhFocus: EventEmitter<StzhRadioFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhRadioBlurEvent>;\n\n @Listen(\"reset\", { target: \"document\" })\n resetListener(event: Event) {\n if ((event.target as HTMLElement).contains(this.element)) {\n requestAnimationFrame(() => {\n this.handleReset();\n });\n }\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\n @Element() element: HTMLStzhRadioElement;\n\n private input: HTMLInputElement;\n private inputId: string;\n private focusedByInput: boolean = false;\n\n private handleReset = async () => {\n this.checked = this.defaultChecked;\n }\n\n private onInput = (event: InputEvent) => {\n this.checked = this.input.checked;\n this.stzhChange.emit({\n component: \"stzh-radio\",\n originalEvent: event,\n value: this.value,\n checked: this.checked\n });\n }\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.input.focus();\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-radio\",\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-radio\",\n originalEvent: event\n });\n }\n\n async componentWillLoad() {\n this.inputId = `stzh-radio-${radioCounter++}`;\n this.errorWatcher(this.error);\n\n this.defaultChecked = typeof this.defaultChecked === \"boolean\" ? this.defaultChecked : this.checked;\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, 'radio');\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?.length > 0;\n\n const classes = {\n \"stzh-radio\": true,\n \"stzh-radio--has-description\": descriptionUsed,\n \"stzh-radio--has-description-long\": descriptionLongUsed,\n \"stzh-radio--has-error\": errorUsed,\n \"stzh-radio--is-required\": this.required,\n \"stzh-radio--is-invalid\": this.invalid || errorUsed,\n \"stzh-radio--is-disabled\": this.disabled\n };\n\n return (\n <Host is-invalid={this.invalid || errorUsed} tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n <label class=\"stzh-radio__field-wrapper\">\n <input\n class=\"stzh-radio__input\"\n ref={(el) => (this.input = el as HTMLInputElement)}\n type=\"radio\"\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 defaultChecked={this.defaultChecked}\n onInput={this.onInput}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n />\n <div class=\"stzh-radio__mark\">\n <div class=\"stzh-radio__check\"></div>\n </div>\n <div class=\"stzh-radio__label\">\n {this.label ? this.label : <slot></slot>}\n {!this.hideOptional &&\n <span class=\"stzh-radio__marker\">\n <span class=\"stzh-radio__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-radio__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-radio\"\n id={`${this.inputId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongTitle={this.descriptionLongTitle}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </div>\n </Host>\n );\n }\n}\n",":host {\n &[disabled]:not([disabled=\"false\"]) {\n --description-color: #{$formDisabledColor};\n }\n}\n\n.stzh-radiogroup {\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 gap: space('medium');\n }\n\n &__legend {\n @include font('heavy');\n @include fontSize('micro');\n color: $headingColor;\n padding: 0;\n margin-bottom: space('xsmall');\n }\n\n &__marker {\n @include fontSize('nano');\n margin-left: calc(-0.25em + #{space('xsmall')});\n }\n\n &--hide-legend &__legend {\n @include visuallyhidden;\n }\n\n &--direction-horizontal &__fields {\n flex-wrap: wrap;\n flex-direction: row;\n row-gap: space('medium');\n column-gap: space('xxlarge');\n }\n}\n","import {\n Component,\n Prop,\n Element,\n Watch,\n h,\n Listen,\n Host\n} from \"@stencil/core\";\n\nimport { StzhRadioChangeEvent } from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { camelCase } from \"../../utils/string-utils\";\nimport { StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"../stzh-input/stzh-input-description\";\n\nconst SELECTOR_RADIO = 'stzh-radio, stzh-button[type=radio], stzh-card';\n\nlet radiogroupCounter = 0;\n\n/**\n * @slot - Slot for `stzh-radio`, `stzh-button[type=\"radio\"]` or `stzh-card` elements\n * @slot description - Slot for description\n * @slot description-long - Slot for long description (in popover)\n * @slot description-long-title - Slot for long description title (in popover) / instead of descriptionLongTitle or description property\n * @slot error - Slot for error\n */\n@Component({\n tag: \"stzh-radiogroup\",\n styleUrl: \"stzh-radiogroup.scss\",\n scoped: true\n})\nexport class StzhRadiogroup {\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 radio elements, will define the radio group. If you have more than one radio group on a page, every group needs to have its own unique name */\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 /** Required status */\n @Prop({ reflect: true }) required: boolean = false;\n\n /** Hide `(optional)` label (or use `required` inside form ot hide it) */\n @Prop({ reflect: true }) hideOptional: boolean = false;\n\n /** Select a radio by value */\n @Prop({ mutable: true }) value: string = \"\";\n\n /** Default value (used by reset) */\n @Prop({ mutable: true }) defaultValue: 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 /** Long description title appearing in a popover (use description-long-title slot as or description property alternative) */\n @Prop() descriptionLongTitle: 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 radio element (readonly) */\n @Prop() checkedRadio: HTMLStzhRadioElement | null = null;\n\n /** Prevent updating certain properties of radio elements (possible values inside array: disabled, invalid, required, hide-marker) */\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.updateRadiosProperty(\"name\", newValue);\n }\n\n @Watch(\"disabled\")\n watchDisabled(newValue: boolean) {\n this.updateRadiosProperty(\"disabled\", newValue);\n }\n\n @Watch(\"invalid\")\n watchInvalid(newValue: boolean) {\n this.updateRadiosProperty(\"invalid\", newValue);\n }\n\n @Watch(\"required\")\n watchRequired(newValue: boolean) {\n this.updateRadiosProperty(\"required\", newValue);\n }\n\n @Watch(\"value\")\n watchValue(newValue: string) {\n this.updateCheckedRadioByValue(newValue);\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\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(\"reset\", { target: \"document\" })\n resetListener(event: Event) {\n if ((event.target as HTMLElement).contains(this.element)) {\n requestAnimationFrame(() => {\n this.handleReset();\n });\n }\n }\n\n\n @Listen(\"stzhChange\")\n onChange(event: CustomEvent<StzhRadioChangeEvent>) {\n this.value = event.detail.value;\n }\n\n /** Radio elements */\n private radios: HTMLStzhRadioElement[];\n private radiogroupId: string;\n private observer: MutationObserver;\n\n private updateRadiosProperty(prop: string, value: any) {\n this.radios.forEach((radio: HTMLStzhRadioElement) => {\n if (prop === \"name\" || (this._preventUpdateProperties.indexOf(prop) === -1)) {\n radio[camelCase(prop)] = value;\n }\n });\n }\n\n private updateCheckedRadioByValue(value: string) {\n this.checkedRadio = this.radios.find(radio => radio.value === value);\n\n if (this.checkedRadio) {\n this.checkedRadio.checked = true;\n }\n\n this.uncheckRadios();\n }\n\n private uncheckRadios() {\n // make sure that no other radios are checked than the current one or no one\n this.radios.forEach((radio: HTMLStzhRadioElement) => {\n if (!this.checkedRadio || radio !== this.checkedRadio) {\n radio.checked = false;\n }\n });\n }\n\n private handleReset = async () => {\n this.value = this.defaultValue;\n }\n\n private init = () => {\n // update radios\n this.radios = Array.from(this.element.querySelectorAll(SELECTOR_RADIO));\n\n this.updateRadiosProperty(\"hide-optional\", true);\n this.updateRadiosProperty(\"a11y-describedby\", `${this.radiogroupId}-description`);\n\n this.watchValue(this.value);\n this.watchName(this.name);\n this.watchDisabled(this.disabled);\n this.watchInvalid(this.invalid);\n this.watchRequired(this.required);\n }\n\n componentDidLoad() {\n this.defaultValue = this.defaultValue ? this.defaultValue : this.value;\n }\n\n async componentWillLoad() {\n this.radiogroupId = `stzh-radiogroup-${radiogroupCounter++}`;\n this.errorWatcher(this.error);\n this.preventUpdatePropertiesWatcher(this.preventUpdateProperties);\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, 'radiogroup');\n }\n }\n\n componentShouldUpdate(_newValue, _oldValue, prop: string) {\n return prop !== \"checkedRadio\";\n }\n\n componentDidRender() {\n this.init();\n }\n\n connectedCallback() {\n if (!this.value) {\n this.radios = Array.from(this.element.querySelectorAll(SELECTOR_RADIO));\n\n // try to find a checkbox that might has checked set to true\n const checkedRadio = this.radios.find(radio => radio.checked);\n\n if (checkedRadio) {\n this.value = checkedRadio.value;\n }\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?.length > 0;\n\n const classes = {\n \"stzh-radiogroup\": true,\n \"stzh-radiogroup--has-description\": descriptionUsed,\n \"stzh-radiogroup--has-description-long\": descriptionLongUsed,\n \"stzh-radiogroup--has-error\": errorUsed,\n \"stzh-radiogroup--is-required\": this.required,\n \"stzh-radiogroup--is-disabled\": this.disabled,\n \"stzh-radiogroup--is-invalid\": this.invalid || errorUsed,\n \"stzh-radiogroup--hide-legend\": this.hideLegend,\n [`stzh-radiogroup--direction-${this.direction}`]: !!this.direction\n };\n\n return (\n <Host is-invalid={this.invalid || errorUsed}>\n <fieldset class={classes}>\n {this.legend &&\n <legend class=\"stzh-radiogroup__legend\">\n {this.legend}\n {!this.hideOptional &&\n <span class=\"stzh-radiogroup__marker\">\n <span class=\"stzh-radiogroup__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-radiogroup__marker-text\">\n {this.required\n ? this.localization.$globals.requiredFieldText\n : this.localization.$globals.optionalFieldText\n }\n </span>\n </span>\n }\n </legend>\n }\n <div class=\"stzh-radiogroup__fields\">\n <slot></slot>\n </div>\n <StzhInputDescription\n classPrefix=\"stzh-radiogroup\"\n id={`${this.radiogroupId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongTitle={this.descriptionLongTitle}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </fieldset>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"stzh-datepicker.stzh-radio.stzh-radiogroup.entry.cjs.js","mappings":"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","names":["printISODate","hasSlot","h","Host","Fragment","StzhInputDescription","camelCase"],"sources":["src/components/stzh-datepicker/stzh-datepicker.scss?tag=stzh-datepicker&encapsulation=scoped","src/components/stzh-datepicker/stzh-datepicker.tsx","src/components/stzh-radio/stzh-radio.scss?tag=stzh-radio&encapsulation=scoped","src/components/stzh-radio/stzh-radio.tsx","src/components/stzh-radiogroup/stzh-radiogroup.scss?tag=stzh-radiogroup&encapsulation=scoped","src/components/stzh-radiogroup/stzh-radiogroup.tsx"],"sourcesContent":[":host {\n --calendar-width: #{$calendarWidth};\n\n width: 100%;\n\n &[inline]:not([inline=\"false\"]) {\n width: var(--calendar-width);\n }\n}\n\n.stzh-datepicker {\n &__popover {\n --width: auto;\n }\n\n &__calendar {\n margin-left: auto;\n margin-right: auto;\n\n &.is-inline {\n width: 100%;\n margin-left: 0px;\n margin-right: 0px;\n }\n }\n\n &__actions {\n display: flex;\n width: var(--calendar-width);\n margin-left: auto;\n margin-right: auto;\n\n &.is-inline {\n width: 100%;\n margin-left: 0px;\n margin-right: 0px;\n }\n\n &:not(:empty) {\n padding-left: space('small');\n padding-right: space('small');\n }\n }\n\n /* Has action */\n\n &--has-action &__popover {\n --content-padding: 0 0 #{space('small')} 0;\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 Listen\n} from \"@stencil/core\";\n\nimport {\n StzhCalendarChangeEvent,\n StzhDatepickerChangeEvent\n} from \"../../index\";\n\nimport { StzhCalendarDateDisabledPredicate } from \"../../index\";\n\nimport { printISODate } from \"../../utils/date-utils\"\nimport { StzhLocaleAdapter } from \"../../utils/date-adapter\"\n\nimport { StzhDatepickerLocalizedText } from \"./stzh-datepicker.localization\";\nimport { hasSlot } from \"../../utils/utils\";\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 @State() calendarValue: string = \"\";\n @State() inputValue: string = \"\";\n\n /** Default value (used by reset) */\n @Prop({ mutable: true }) defaultValue: string = \"\";\n\n /** Label for input field and popover */\n @Prop() label: string = \"\";\n\n /** Whether label is visually hidden. */\n @Prop() labelHidden: boolean = false;\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 /** Hide `(optional)` label (or use `required` inside form ot hide it) */\n @Prop({ reflect: true }) hideOptional: boolean = false;\n\n /** Size variant */\n @Prop({ reflect: true }) size: \"default\" | \"small\" = \"default\";\n\n /** Show calendar inline */\n @Prop({ reflect: true }) inline: boolean = false;\n\n /**\n * Date adapter visible date shown to the user, 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 /**\n * Date adapter for internal date passed to backend, for custom parsing/formatting.\n * Can be `\"iso\"` (default, date in ISO format) / `\"legacy\"` (date in `d.m.Y` format)\n * or `StzhLocaleAdapter` (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() internalDateAdapter: \"iso\" | \"legacy\" | StzhLocaleAdapter = \"iso\";\n private _internalDateAdapter: StzhLocaleAdapter;\n\n /** Translation strings. */\n @Prop() localization: StzhDatepickerLocalizedText;\n\n @State() buttonLabel: string;\n\n @Listen(\"reset\", { target: \"document\" })\n resetListener(event: Event) {\n if ((event.target as HTMLElement).contains(this.element)) {\n requestAnimationFrame(() => {\n this.handleReset();\n });\n }\n }\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 if (!this._internalDateAdapter) {\n return;\n }\n\n const date = this._internalDateAdapter.parse(newValue, \"dateInput\");\n\n this.calendarValue = printISODate(date);\n this.inputValue = this.dateAdapter.format(date, \"dateInput\");\n\n this.updateButtonAccessibleLabel();\n }\n\n @Watch(\"dateAdapter\")\n dateAdapterWatcher(newValue: StzhLocaleAdapter) {\n if (!newValue) {\n this.dateAdapter = window.stzhComponents.utils.createFormatParseAdapter(\n this.localization.$formats,\n this.localization.$globals\n );\n }\n }\n\n @Watch(\"internalDateAdapter\")\n internalDateAdapterWatcher(newValue: \"iso\" | \"legacy\" | StzhLocaleAdapter) {\n if (newValue === \"iso\" || !newValue) {\n this._internalDateAdapter = window.stzhComponents.utils.createFormatParseAdapter(\n this.localization.$formatsIso,\n this.localization.$globals\n );\n } else if (newValue === \"legacy\") {\n this._internalDateAdapter = window.stzhComponents.utils.createFormatParseAdapter(\n this.localization.$formatsLegacy,\n this.localization.$globals\n );\n } else {\n this._internalDateAdapter = newValue;\n }\n }\n\n /** Set value by a JS Date object */\n @Method()\n async setDate(date: Date) {\n this.value = this._internalDateAdapter.format(date, \"dateInput\");\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 handleReset = async () => {\n this.value = this.defaultValue;\n }\n\n private onRootFocus = () => {\n if (this.input) {\n this.input.focus();\n }\n }\n\n private onInputChanged = () => {\n const parsedDate = this.dateAdapter.parse(this.input.value, \"dateInput\");\n\n if (this.input.value === \"\" || parsedDate) {\n const formattedDate = this._internalDateAdapter.format(parsedDate, \"dateInput\");\n\n if (this.value !== formattedDate) {\n this.value = formattedDate;\n } else {\n this.valueWatcher(formattedDate);\n }\n\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 if (event.detail.component !== \"stzh-calendar\") {\n return;\n }\n\n this.value = event.detail.valueAsDate\n && this._internalDateAdapter.format(event.detail.valueAsDate, \"dateInput\");\n\n this.stzhChange.emit({\n component: \"stzh-datepicker\",\n value: this.value,\n valueAsDate: event.detail.valueAsDate,\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 = this._internalDateAdapter.parse(this.value, \"dateInput\");\n this.buttonLabel = `${this.label}, ${this.localization.buttonLabel}, ${this.localization.selectedDateMessage} ${this.dateFormatLong.format(valueAsDate)}`;\n } catch (err) {\n this.buttonLabel = `${this.label}, ${this.localization.buttonLabel}`;\n }\n }\n\n connectedCallback() {\n this.createDateFormatters();\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"datepicker\");\n }\n\n this.dateAdapterWatcher(this.dateAdapter);\n this.internalDateAdapterWatcher(this.internalDateAdapter);\n this.valueWatcher(this.value);\n this.defaultValue = this.defaultValue || this.value;\n }\n\n render() {\n const actionUsed = hasSlot(this.element, 'action');\n\n const classes = {\n \"stzh-datepicker\": true,\n \"stzh-datepicker--inline\": this.inline,\n \"stzh-datepicker--has-action\": actionUsed\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 defaultValue={this.defaultValue}\n />\n\n {this.inline &&\n <Fragment>\n <stzh-calendar\n // ref={(el) => (this.calendar = el as HTMLStzhCalendarElement)}\n value={this.calendarValue}\n class=\"stzh-datepicker__calendar is-inline\"\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 value={this.inputValue}\n label={this.label}\n labelHidden={this.labelHidden}\n ref={(el) => (this.input = el as HTMLStzhInputElement)}\n noAutocomplete\n onStzhChanged={this.onInputChanged}\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 hideOptional={this.hideOptional}\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 icon-only\n icon=\"calendar\"\n size={this.size}\n disabled={this.disabled}\n a11yLabel={this.buttonLabel}\n ></stzh-button>\n <div slot=\"content\">\n <stzh-calendar\n // ref={(el) => (this.calendar = el as HTMLStzhCalendarElement)}\n value={this.calendarValue}\n class=\"stzh-datepicker__calendar is-popover\"\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",":host {\n display: inline-block;\n\n &[disabled]:not([disabled=\"false\"]) {\n --description-color: #{$formDisabledColor};\n }\n}\n\n.stzh-radio {\n @include input-description;\n display: grid;\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 @include radio__mark();\n }\n\n &__check {\n @include radio__check();\n }\n\n &__label {\n --stzh-base-color: initial;\n\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 {\n @include fontSize('micro');\n margin-left: calc(-0.25em + #{space('xsmall')});\n }\n\n /* Hover / Focus / Checked */\n\n &:hover &__label,\n &__input:checked ~ &__label {\n color: $colorPrimary70;\n }\n\n &__input:checked:hover ~ &__label,\n &__input:checked:hover ~ &__mark &__check {\n color: $colorPrimary90;\n }\n\n &:hover &__mark,\n &__input:checked ~ &__mark {\n border-color: $colorPrimary70;\n }\n\n &__input:checked:hover ~ &__mark {\n border-color: $colorPrimary90;\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: $colorError60;\n }\n\n &--is-invalid &__input ~ &__mark {\n border-color: $colorError60;\n }\n\n /* Disabled */\n\n\t&--is-disabled &__field-wrapper {\n cursor: not-allowed;\n }\n\n &--is-disabled &__input ~ &__label {\n color: $colorGrey60;\n }\n\n &--is-disabled &__input ~ &__mark &__check {\n color: $colorGrey50;\n }\n\n &--is-disabled &__input ~ &__mark {\n border-color: $colorGrey50;\n }\n\n &--is-disabled &__mark {\n background-color: $colorGrey20;\n }\n}\n","import {\n Host,\n Component,\n Prop,\n Event,\n Element,\n EventEmitter,\n h,\n Watch,\n Listen\n} from \"@stencil/core\";\n\nimport {\n StzhRadioChangeEvent,\n StzhRadioFocusEvent,\n StzhRadioBlurEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"../stzh-input/stzh-input-description\";\n\nlet radioCounter = 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 description-long-title - Slot for long description title (in popover) / instead of descriptionLongTitle or description property\n * @slot error - Slot for error\n */\n@Component({\n tag: \"stzh-radio\",\n styleUrl: \"stzh-radio.scss\",\n scoped: true\n})\nexport class StzhRadio {\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 element */\n @Prop({ reflect: true }) name: string = \"\";\n\n /** The 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 /** Hide `(optional)` label (or use `required` inside form ot hide it) */\n @Prop({ reflect: true }) hideOptional: boolean = false;\n\n /** Checked status */\n @Prop({ mutable: true, reflect: true }) checked: boolean = false;\n\n /** Default checked (used by reset) */\n @Prop({ mutable: true }) defaultChecked: boolean;\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 /** Long description title appearing in a popover (use description-long-title slot as or description property alternative) */\n @Prop() descriptionLongTitle: string;\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 radio button (this will be overwritten if description prop or slot is used, used by stzh-radiogroup) */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Input change event */\n @Event() stzhChange: EventEmitter<StzhRadioChangeEvent>;\n\n /** Input focus event */\n @Event() stzhFocus: EventEmitter<StzhRadioFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhRadioBlurEvent>;\n\n @Listen(\"reset\", { target: \"document\" })\n resetListener(event: Event) {\n if ((event.target as HTMLElement).contains(this.element)) {\n requestAnimationFrame(() => {\n this.handleReset();\n });\n }\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\n @Element() element: HTMLStzhRadioElement;\n\n private input: HTMLInputElement;\n private inputId: string;\n private focusedByInput: boolean = false;\n\n private handleReset = async () => {\n this.checked = this.defaultChecked;\n }\n\n private onInput = (event: InputEvent) => {\n this.checked = this.input.checked;\n this.stzhChange.emit({\n component: \"stzh-radio\",\n originalEvent: event,\n value: this.value,\n checked: this.checked\n });\n }\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.input.focus();\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-radio\",\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-radio\",\n originalEvent: event\n });\n }\n\n async componentWillLoad() {\n this.inputId = `stzh-radio-${radioCounter++}`;\n this.errorWatcher(this.error);\n\n this.defaultChecked = typeof this.defaultChecked === \"boolean\" ? this.defaultChecked : this.checked;\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, 'radio');\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?.length > 0;\n\n const classes = {\n \"stzh-radio\": true,\n \"stzh-radio--has-description\": descriptionUsed,\n \"stzh-radio--has-description-long\": descriptionLongUsed,\n \"stzh-radio--has-error\": errorUsed,\n \"stzh-radio--is-required\": this.required,\n \"stzh-radio--is-invalid\": this.invalid || errorUsed,\n \"stzh-radio--is-disabled\": this.disabled\n };\n\n return (\n <Host is-invalid={this.invalid || errorUsed} tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n <label class=\"stzh-radio__field-wrapper\">\n <input\n class=\"stzh-radio__input\"\n ref={(el) => (this.input = el as HTMLInputElement)}\n type=\"radio\"\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 defaultChecked={this.defaultChecked}\n onInput={this.onInput}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n />\n <div class=\"stzh-radio__mark\">\n <div class=\"stzh-radio__check\"></div>\n </div>\n <div class=\"stzh-radio__label\">\n {this.label ? this.label : <slot></slot>}\n {!this.hideOptional &&\n <span class=\"stzh-radio__marker\">\n <span class=\"stzh-radio__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-radio__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-radio\"\n id={`${this.inputId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongTitle={this.descriptionLongTitle}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </div>\n </Host>\n );\n }\n}\n",":host {\n &[disabled]:not([disabled=\"false\"]) {\n --description-color: #{$formDisabledColor};\n }\n}\n\n.stzh-radiogroup {\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 gap: space('medium');\n }\n\n &__legend {\n @include font('heavy');\n @include fontSize('micro');\n color: $headingColor;\n padding: 0;\n margin-bottom: space('xsmall');\n }\n\n &__marker {\n @include fontSize('nano');\n margin-left: calc(-0.25em + #{space('xsmall')});\n }\n\n &--hide-legend &__legend {\n @include visuallyhidden;\n }\n\n &--direction-horizontal &__fields {\n flex-wrap: wrap;\n flex-direction: row;\n row-gap: space('medium');\n column-gap: space('xxlarge');\n }\n}\n","import {\n Component,\n Prop,\n Element,\n Watch,\n h,\n Listen,\n Host\n} from \"@stencil/core\";\n\nimport { StzhRadioChangeEvent } from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { camelCase } from \"../../utils/string-utils\";\nimport { StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"../stzh-input/stzh-input-description\";\n\nconst SELECTOR_RADIO = 'stzh-radio, stzh-button[type=radio], stzh-card';\n\nlet radiogroupCounter = 0;\n\n/**\n * @slot - Slot for `stzh-radio`, `stzh-button[type=\"radio\"]` or `stzh-card` elements\n * @slot description - Slot for description\n * @slot description-long - Slot for long description (in popover)\n * @slot description-long-title - Slot for long description title (in popover) / instead of descriptionLongTitle or description property\n * @slot error - Slot for error\n */\n@Component({\n tag: \"stzh-radiogroup\",\n styleUrl: \"stzh-radiogroup.scss\",\n scoped: true\n})\nexport class StzhRadiogroup {\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 radio elements, will define the radio group. If you have more than one radio group on a page, every group needs to have its own unique name */\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 /** Required status */\n @Prop({ reflect: true }) required: boolean = false;\n\n /** Hide `(optional)` label (or use `required` inside form ot hide it) */\n @Prop({ reflect: true }) hideOptional: boolean = false;\n\n /** Select a radio by value */\n @Prop({ mutable: true }) value: string = \"\";\n\n /** Default value (used by reset) */\n @Prop({ mutable: true }) defaultValue: 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 /** Long description title appearing in a popover (use description-long-title slot as or description property alternative) */\n @Prop() descriptionLongTitle: 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 radio element (readonly) */\n @Prop() checkedRadio: HTMLStzhRadioElement | null = null;\n\n /** Prevent updating certain properties of radio elements (possible values inside array: disabled, invalid, required, hide-marker) */\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.updateRadiosProperty(\"name\", newValue);\n }\n\n @Watch(\"disabled\")\n watchDisabled(newValue: boolean) {\n this.updateRadiosProperty(\"disabled\", newValue);\n }\n\n @Watch(\"required\")\n watchRequired(newValue: boolean) {\n this.updateRadiosProperty(\"required\", newValue);\n }\n\n @Watch(\"value\")\n watchValue(newValue: string) {\n this.updateCheckedRadioByValue(newValue);\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\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(\"reset\", { target: \"document\" })\n resetListener(event: Event) {\n if ((event.target as HTMLElement).contains(this.element)) {\n requestAnimationFrame(() => {\n this.handleReset();\n });\n }\n }\n\n\n @Listen(\"stzhChange\")\n onChange(event: CustomEvent<StzhRadioChangeEvent>) {\n this.value = event.detail.value;\n }\n\n /** Radio elements */\n private radios: HTMLStzhRadioElement[];\n private radiogroupId: string;\n private observer: MutationObserver;\n\n private updateRadiosProperty(prop: string, value: any) {\n this.radios.forEach((radio: HTMLStzhRadioElement) => {\n if (prop === \"name\" || (this._preventUpdateProperties.indexOf(prop) === -1)) {\n radio[camelCase(prop)] = value;\n }\n });\n }\n\n private get errorUsed(): boolean {\n return hasSlot(this.element, 'error') || this._error?.length > 0;\n }\n\n private updateCheckedRadioByValue(value: string) {\n this.checkedRadio = this.radios.find(radio => radio.value === value);\n\n if (this.checkedRadio) {\n this.checkedRadio.checked = true;\n }\n\n this.uncheckRadios();\n }\n\n private uncheckRadios() {\n // make sure that no other radios are checked than the current one or no one\n this.radios.forEach((radio: HTMLStzhRadioElement) => {\n if (!this.checkedRadio || radio !== this.checkedRadio) {\n radio.checked = false;\n }\n });\n }\n\n private handleReset = async () => {\n this.value = this.defaultValue;\n }\n\n private init = () => {\n // update radios\n this.radios = Array.from(this.element.querySelectorAll(SELECTOR_RADIO));\n this.updateRadiosProperty(\"hide-optional\", true);\n this.updateRadiosProperty(\"a11y-describedby\", `${this.radiogroupId}-description`);\n this.updateRadiosProperty(\"invalid\", this.invalid || this.errorUsed);\n\n this.watchValue(this.value);\n this.watchName(this.name);\n this.watchDisabled(this.disabled);\n this.watchRequired(this.required);\n }\n\n componentDidLoad() {\n this.defaultValue = this.defaultValue ? this.defaultValue : this.value;\n }\n\n async componentWillLoad() {\n this.radiogroupId = `stzh-radiogroup-${radiogroupCounter++}`;\n this.errorWatcher(this.error);\n this.preventUpdatePropertiesWatcher(this.preventUpdateProperties);\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, 'radiogroup');\n }\n }\n\n componentShouldUpdate(_newValue, _oldValue, prop: string) {\n return prop !== \"checkedRadio\";\n }\n\n componentDidRender() {\n this.init();\n }\n\n connectedCallback() {\n if (!this.value) {\n this.radios = Array.from(this.element.querySelectorAll(SELECTOR_RADIO));\n\n // try to find a checkbox that might has checked set to true\n const checkedRadio = this.radios.find(radio => radio.checked);\n\n if (checkedRadio) {\n this.value = checkedRadio.value;\n }\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\n const classes = {\n \"stzh-radiogroup\": true,\n \"stzh-radiogroup--has-description\": descriptionUsed,\n \"stzh-radiogroup--has-description-long\": descriptionLongUsed,\n \"stzh-radiogroup--has-error\": this.errorUsed,\n \"stzh-radiogroup--is-required\": this.required,\n \"stzh-radiogroup--is-disabled\": this.disabled,\n \"stzh-radiogroup--is-invalid\": this.invalid || this.errorUsed,\n \"stzh-radiogroup--hide-legend\": this.hideLegend,\n [`stzh-radiogroup--direction-${this.direction}`]: !!this.direction\n };\n\n return (\n <Host is-invalid={this.invalid || this.errorUsed}>\n <fieldset class={classes}>\n {this.legend &&\n <legend class=\"stzh-radiogroup__legend\">\n {this.legend}\n {!this.hideOptional &&\n <span class=\"stzh-radiogroup__marker\">\n <span class=\"stzh-radiogroup__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-radiogroup__marker-text\">\n {this.required\n ? this.localization.$globals.requiredFieldText\n : this.localization.$globals.optionalFieldText\n }\n </span>\n </span>\n }\n </legend>\n }\n <div class=\"stzh-radiogroup__fields\">\n <slot></slot>\n </div>\n <StzhInputDescription\n classPrefix=\"stzh-radiogroup\"\n id={`${this.radiogroupId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongTitle={this.descriptionLongTitle}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </fieldset>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,162 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-92254d32.js');
6
+ const utils = require('./utils-d0fff87f.js');
7
+ const eventUtils = require('./event-utils-20e7b8b1.js');
8
+ const animationUtils = require('./animation-utils-925ee0e0.js');
9
+ require('./string-utils-5dd70320.js');
10
+
11
+ const stzhDetailsCss = ".sc-stzh-details-h{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium);color:var(--stzh-base-color);box-sizing:border-box;display:block}[hidden].sc-stzh-details-h{display:none}.sc-stzh-details-h::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-details-h::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-details-h *.sc-stzh-details,.sc-stzh-details-h *.sc-stzh-details::before,.sc-stzh-details-h *.sc-stzh-details::after{box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness);-webkit-text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink);text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink)}.sc-stzh-details-h .has-focus.sc-stzh-details{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}.sc-stzh-details-h .stzh-fylingfocus-focused.sc-stzh-details{outline-style:none !important}.sc-stzh-details-h .stzh-fylingfocus-focused.sc-stzh-details::-moz-focus-inner{border:0 !important}.sc-stzh-details-h{display:contents;--content-width:var(--stzh-details-content-width, 100%);--content-padding-left:0px;--content-padding-right:var(--stzh-details-content-padding-right, 0px);--content-background:transparent;--content-grid-column:var(--stzh-details-content-grid-column, inherit);--content-border-bottom:none;--content-padding-top:var(--stzh-details-content-padding-top, var(--stzh-space-medium));--content-padding-bottom:0}.stzh-details.sc-stzh-details,.stzh-details__trigger.sc-stzh-details{display:contents}.stzh-details__content.sc-stzh-details{width:var(--content-width);overflow:hidden;background-color:var(--content-background);grid-column:var(--content-grid-column);border-bottom:var(--content-border-bottom)}@media print{.stzh-details__content.sc-stzh-details{height:auto !important;overflow:visible !important;display:block !important}}.stzh-details__content-inner.sc-stzh-details{padding-top:var(--content-padding-top);padding-bottom:var(--content-padding-bottom);padding-left:var(--content-padding-left);padding-right:var(--content-padding-right)}";
12
+
13
+ const ANIMATION_SHOW = {
14
+ keyframes: [
15
+ { height: "0", opacity: "0" },
16
+ { height: "auto", opacity: "1" }
17
+ ],
18
+ options: { duration: 300, easing: "linear" }
19
+ };
20
+ const ANIMATION_HIDE = {
21
+ keyframes: [
22
+ { height: "auto", opacity: "1" },
23
+ { height: "0", opacity: "0" }
24
+ ],
25
+ options: { duration: 300, easing: "linear" }
26
+ };
27
+ let detailsCounter = 0;
28
+ const StzhDetails = class {
29
+ constructor(hostRef) {
30
+ index.registerInstance(this, hostRef);
31
+ this.stzhOpen = index.createEvent(this, "stzhOpen", 7);
32
+ this.stzhOpened = index.createEvent(this, "stzhOpened", 7);
33
+ this.stzhClose = index.createEvent(this, "stzhClose", 7);
34
+ this.stzhClosed = index.createEvent(this, "stzhClosed", 7);
35
+ this.toggledByMethod = false;
36
+ this.onClickTrigger = () => {
37
+ this.toggle();
38
+ };
39
+ this.open = false;
40
+ }
41
+ async openWatcher(newValue) {
42
+ if (!this.triggerElement) {
43
+ return;
44
+ }
45
+ if (this.triggerElement.firstElementChild) {
46
+ const isStzh = utils.isStzhElement(this.triggerElement.firstElementChild);
47
+ this.triggerElement.firstElementChild
48
+ .setAttribute(isStzh ? "a11y-expanded" : "aria-expanded", newValue ? "true" : "false");
49
+ }
50
+ if (newValue) {
51
+ if (this.toggledByMethod) {
52
+ this.stzhOpen.emit({
53
+ component: "stzh-accordion-item"
54
+ });
55
+ }
56
+ await animationUtils.stopAnimations(this.bodyElement);
57
+ this.bodyElement.hidden = false;
58
+ await animationUtils.animateTo(this.bodyElement, animationUtils.shimKeyframesAutoValues(ANIMATION_SHOW.keyframes, {
59
+ height: this.bodyElement.scrollHeight
60
+ }), ANIMATION_SHOW.options);
61
+ this.bodyElement.style.height = "auto";
62
+ this.bodyElement.style.overflow = "visible";
63
+ if (this.toggledByMethod) {
64
+ this.stzhOpened.emit({
65
+ component: "stzh-accordion-item"
66
+ });
67
+ }
68
+ }
69
+ else {
70
+ if (this.toggledByMethod) {
71
+ this.stzhClose.emit({
72
+ component: "stzh-accordion-item"
73
+ });
74
+ }
75
+ await animationUtils.stopAnimations(this.bodyElement);
76
+ this.bodyElement.style.overflow = "hidden";
77
+ await animationUtils.animateTo(this.bodyElement, animationUtils.shimKeyframesAutoValues(ANIMATION_HIDE.keyframes, {
78
+ height: this.bodyElement.scrollHeight
79
+ }), ANIMATION_HIDE.options);
80
+ this.bodyElement.hidden = true;
81
+ this.bodyElement.style.height = "0px";
82
+ if (this.toggledByMethod) {
83
+ this.stzhClosed.emit({
84
+ component: "stzh-accordion-item"
85
+ });
86
+ }
87
+ }
88
+ this.toggledByMethod = false;
89
+ }
90
+ /** Show accordion item content */
91
+ async show() {
92
+ if (this.open) {
93
+ return;
94
+ }
95
+ this.toggledByMethod = true;
96
+ this.open = true;
97
+ return eventUtils.waitForEvent(this.element, "stzhOpened");
98
+ }
99
+ /** Hide accordion item content */
100
+ async hide() {
101
+ if (!this.open) {
102
+ return;
103
+ }
104
+ this.toggledByMethod = true;
105
+ this.open = false;
106
+ return eventUtils.waitForEvent(this.element, "stzhClosed");
107
+ }
108
+ async toggle() {
109
+ if (this.open) {
110
+ return await this.hide();
111
+ }
112
+ else {
113
+ return await this.show();
114
+ }
115
+ }
116
+ componentWillLoad() {
117
+ this.detailsId = `stzh-details-${detailsCounter++}`;
118
+ }
119
+ componentDidLoad() {
120
+ this.bodyElement.hidden = !this.open;
121
+ this.bodyElement.style.height = this.open ? "auto" : "0px";
122
+ this.bodyElement.style.overflow = this.open ? "visible" : "hidden";
123
+ if (this.triggerElement.firstElementChild) {
124
+ const isStzh = utils.isStzhElement(this.triggerElement.firstElementChild);
125
+ this.triggerElement.firstElementChild.setAttribute(isStzh ? "a11y-controls" : "aria-controls", `${this.detailsId}-content`);
126
+ this.triggerElement.firstElementChild.setAttribute(isStzh ? "a11y-expanded" : "aria-expanded", this.open ? "true" : "false");
127
+ }
128
+ }
129
+ connectedCallback() {
130
+ var _a;
131
+ let trigger = (_a = this.triggerElement) === null || _a === void 0 ? void 0 : _a.firstElementChild;
132
+ if (!trigger) {
133
+ const defaultSlot = Array.from(this.element.children)
134
+ .find(child => !child.hasAttribute("slot"));
135
+ trigger = defaultSlot;
136
+ }
137
+ if (trigger) {
138
+ trigger.addEventListener("click", this.onClickTrigger);
139
+ }
140
+ }
141
+ disconnectedCallback() {
142
+ if (this.triggerElement && this.triggerElement.firstElementChild) {
143
+ this.triggerElement.firstElementChild.removeEventListener("click", this.onClickTrigger);
144
+ }
145
+ }
146
+ render() {
147
+ const classes = {
148
+ "stzh-details": true,
149
+ "stzh-details--is-open": this.open
150
+ };
151
+ return (index.h(index.Host, null, index.h("div", { class: classes }, index.h("div", { ref: (el) => (this.triggerElement = el), class: "stzh-details__trigger" }, index.h("slot", null)), index.h("div", { id: `${this.detailsId}-content`, ref: (el) => (this.bodyElement = el), class: "stzh-details__content", "aria-labelledby": `${this.detailsId}-header` }, index.h("div", { class: "stzh-details__content-inner" }, index.h("slot", { name: "content" }))))));
152
+ }
153
+ get element() { return index.getElement(this); }
154
+ static get watchers() { return {
155
+ "open": ["openWatcher"]
156
+ }; }
157
+ };
158
+ StzhDetails.style = stzhDetailsCss;
159
+
160
+ exports.stzh_details = StzhDetails;
161
+
162
+ //# sourceMappingURL=stzh-details.cjs.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"stzh-details.entry.cjs.js","mappings":"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","names":["isStzhElement","stopAnimations","animateTo","shimKeyframesAutoValues","waitForEvent","h","Host"],"sources":["src/components/stzh-details/stzh-details.scss?tag=stzh-details&encapsulation=scoped","src/components/stzh-details/stzh-details.tsx"],"sourcesContent":[":host {\n display: contents;\n\n --content-width: var(--stzh-details-content-width, 100%);\n --content-padding-left: 0px;\n --content-padding-right: var(--stzh-details-content-padding-right, 0px);\n --content-background: transparent;\n --content-grid-column: var(--stzh-details-content-grid-column, inherit);\n --content-border-bottom: none;\n --content-padding-top: var(--stzh-details-content-padding-top, #{space('medium')});\n --content-padding-bottom: 0;\n\n // @include mq($from: medium) {\n // --content-padding-top: var(--stzh-details-content-padding-top, #{spaceCurveValue('medium', 'medium')});\n // }\n\n // @include mq($from: large) {\n // --content-padding-top: var(--stzh-details-content-padding-top, #{spaceCurveValue('medium', 'large')});\n // }\n\n // &[no-padding-top]:not([no-padding-top=\"false\"]) {\n // --content-padding-top: var(--stzh-details-content-padding-top, 0px);\n // }\n\n // &[no-padding-bottom]:not([no-padding-bottom=\"false\"]) {\n // --content-padding-bottom: var(--stzh-details-content-padding-bottom, 0px);\n // }\n}\n\n.stzh-details {\n &,\n &__trigger {\n display: contents;\n }\n\n &__content {\n width: var(--content-width);\n overflow: hidden;\n background-color: var(--content-background);\n grid-column: var(--content-grid-column);\n border-bottom: var(--content-border-bottom);\n\n @media print {\n height: auto !important;\n overflow: visible !important;\n display: block !important;\n }\n }\n\n &__content-inner {\n padding-top: var(--content-padding-top);\n padding-bottom: var(--content-padding-bottom);\n padding-left: var(--content-padding-left);\n padding-right: var(--content-padding-right);\n }\n}\n","import {\n Component,\n Host,\n h,\n Element,\n Prop,\n Method,\n Watch,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhAccordionItemOpenEvent,\n StzhAccordionItemOpenedEvent,\n StzhAccordionItemCloseEvent,\n StzhAccordionItemClosedEvent\n} from \"../../index\";\n\nimport { isStzhElement } from \"../../utils/utils\";\nimport { waitForEvent } from \"../../utils/event-utils\";\nimport { stopAnimations, animateTo, shimKeyframesAutoValues } from \"../../utils/animation-utils\";\n\nconst ANIMATION_SHOW = {\n keyframes: [\n { height: \"0\", opacity: \"0\" },\n { height: \"auto\", opacity: \"1\" }\n ],\n options: { duration: 300, easing: \"linear\" }\n};\n\nconst ANIMATION_HIDE = {\n keyframes: [\n { height: \"auto\", opacity: \"1\" },\n { height: \"0\", opacity: \"0\" }\n ],\n options: { duration: 300, easing: \"linear\" }\n};\n\nlet detailsCounter = 0;\n\n/**\n * @slot - Slot for trigger\n * @slot content - Slot for any content\n */\n@Component({\n tag: \"stzh-details\",\n styleUrl: \"stzh-details.scss\",\n scoped: true\n})\nexport class StzhDetails {\n /** Whether fold is open */\n @Prop({ mutable: true, reflect: true }) open: boolean = false;\n\n // /** Whether to remove top padding */\n // @Prop({ reflect: true }) noPaddingTop: boolean = false;\n\n // /** Whether to remove top padding */\n // @Prop({ reflect: true }) noPaddingBottom: boolean = false;\n\n @Element() element: HTMLStzhDetailsElement;\n\n /** Open event */\n @Event() stzhOpen: EventEmitter<StzhAccordionItemOpenEvent>;\n\n /** Opened event (after animation) */\n @Event() stzhOpened: EventEmitter<StzhAccordionItemOpenedEvent>;\n\n /** Close event */\n @Event() stzhClose: EventEmitter<StzhAccordionItemCloseEvent>;\n\n /** Closed event (after animation) */\n @Event() stzhClosed: EventEmitter<StzhAccordionItemClosedEvent>;\n\n @Watch(\"open\")\n async openWatcher(newValue: boolean) {\n if (!this.triggerElement) {\n return;\n }\n\n if (this.triggerElement.firstElementChild) {\n const isStzh = isStzhElement(this.triggerElement.firstElementChild);\n\n this.triggerElement.firstElementChild\n .setAttribute(isStzh ? \"a11y-expanded\" : \"aria-expanded\", newValue ? \"true\" : \"false\");\n }\n\n if (newValue) {\n if (this.toggledByMethod) {\n this.stzhOpen.emit({\n component: \"stzh-accordion-item\"\n });\n }\n\n await stopAnimations(this.bodyElement);\n this.bodyElement.hidden = false;\n\n await animateTo(\n this.bodyElement,\n shimKeyframesAutoValues(ANIMATION_SHOW.keyframes, {\n height: this.bodyElement.scrollHeight\n }),\n ANIMATION_SHOW.options\n );\n\n this.bodyElement.style.height = \"auto\";\n this.bodyElement.style.overflow = \"visible\";\n\n if (this.toggledByMethod) {\n this.stzhOpened.emit({\n component: \"stzh-accordion-item\"\n });\n }\n } else {\n if (this.toggledByMethod) {\n this.stzhClose.emit({\n component: \"stzh-accordion-item\"\n });\n }\n\n await stopAnimations(this.bodyElement);\n this.bodyElement.style.overflow = \"hidden\";\n\n await animateTo(\n this.bodyElement,\n shimKeyframesAutoValues(ANIMATION_HIDE.keyframes, {\n height: this.bodyElement.scrollHeight\n }),\n ANIMATION_HIDE.options\n );\n\n this.bodyElement.hidden = true;\n this.bodyElement.style.height = \"0px\";\n\n if (this.toggledByMethod) {\n this.stzhClosed.emit({\n component: \"stzh-accordion-item\"\n });\n }\n }\n\n this.toggledByMethod = false;\n }\n\n private toggledByMethod: boolean = false;\n private bodyElement: HTMLDivElement;\n private detailsId: string;\n\n /** Show accordion item content */\n @Method()\n async show() {\n if (this.open) {\n return;\n }\n\n this.toggledByMethod = true;\n this.open = true;\n return waitForEvent(this.element, \"stzhOpened\");\n }\n\n /** Hide accordion item content */\n @Method()\n async hide() {\n if (!this.open) {\n return;\n }\n\n this.toggledByMethod = true;\n this.open = false;\n return waitForEvent(this.element, \"stzhClosed\");\n }\n\n @Method()\n async toggle() {\n if (this.open) {\n return await this.hide();\n } else {\n return await this.show();\n }\n }\n\n private triggerElement: HTMLElement;\n\n private onClickTrigger = () => {\n this.toggle();\n }\n\n componentWillLoad() {\n this.detailsId = `stzh-details-${detailsCounter++}`;\n }\n\n componentDidLoad() {\n this.bodyElement.hidden = !this.open;\n this.bodyElement.style.height = this.open ? \"auto\" : \"0px\";\n this.bodyElement.style.overflow = this.open ? \"visible\" : \"hidden\";\n\n if (this.triggerElement.firstElementChild) {\n const isStzh = isStzhElement(this.triggerElement.firstElementChild);\n this.triggerElement.firstElementChild.setAttribute(isStzh ? \"a11y-controls\" : \"aria-controls\", `${this.detailsId}-content`);\n this.triggerElement.firstElementChild.setAttribute(isStzh ? \"a11y-expanded\" : \"aria-expanded\", this.open ? \"true\" : \"false\");\n }\n }\n\n connectedCallback() {\n let trigger = this.triggerElement?.firstElementChild;\n\n if (!trigger) {\n const defaultSlot = Array.from(this.element.children)\n .find(child => !(child as HTMLElement).hasAttribute(\"slot\")) as HTMLElement\n\n trigger = defaultSlot;\n }\n\n if (trigger) {\n trigger.addEventListener(\"click\", this.onClickTrigger);\n }\n }\n\n disconnectedCallback() {\n if (this.triggerElement && this.triggerElement.firstElementChild) {\n this.triggerElement.firstElementChild.removeEventListener(\"click\", this.onClickTrigger);\n }\n }\n\n render() {\n const classes = {\n \"stzh-details\": true,\n \"stzh-details--is-open\": this.open\n };\n\n return (\n <Host>\n <div class={classes}>\n <div\n ref={(el) => (this.triggerElement = el as HTMLDivElement)}\n class=\"stzh-details__trigger\"\n >\n <slot></slot>\n </div>\n <div\n id={`${this.detailsId}-content`}\n ref={(el) => (this.bodyElement = el as HTMLDivElement)}\n class=\"stzh-details__content\"\n aria-labelledby={`${this.detailsId}-header`}\n >\n <div class=\"stzh-details__content-inner\">\n <slot name=\"content\"></slot>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,26 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const index = require('./index-92254d32.js');
6
+
7
+ const stzhEventdataCss = ".sc-stzh-eventdata-h{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium);color:var(--stzh-base-color);box-sizing:border-box;display:block}[hidden].sc-stzh-eventdata-h{display:none}.sc-stzh-eventdata-h::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-eventdata-h::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-eventdata-h *.sc-stzh-eventdata,.sc-stzh-eventdata-h *.sc-stzh-eventdata::before,.sc-stzh-eventdata-h *.sc-stzh-eventdata::after{box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness);-webkit-text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink);text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink)}.sc-stzh-eventdata-h .has-focus.sc-stzh-eventdata{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}.sc-stzh-eventdata-h .stzh-fylingfocus-focused.sc-stzh-eventdata{outline-style:none !important}.sc-stzh-eventdata-h .stzh-fylingfocus-focused.sc-stzh-eventdata::-moz-focus-inner{border:0 !important}.stzh-eventdata.sc-stzh-eventdata{display:flex;flex-direction:column;row-gap:var(--stzh-space-xsmall);-moz-column-gap:var(--stzh-space-medium);column-gap:var(--stzh-space-medium)}@media screen and (min-width: 600px){.stzh-eventdata.sc-stzh-eventdata{flex-direction:row}}.stzh-eventdata__label.sc-stzh-eventdata{font-family:var(--stzh-font-family-heavy);font-weight:var(--stzh-font-weight-heavy);font-style:var(--stzh-font-style-heavy);font-size:var(--stzh-font-curve-p1-default-font-size, var(--stzh-font-milli-font-size));line-height:var(--stzh-font-curve-p1-default-text-line-height, var(--stzh-font-milli-text-line-height));letter-spacing:var(--stzh-font-curve-p1-default-text-letter-spacing);flex-shrink:0}@media screen and (min-width: 900px){.stzh-eventdata__label.sc-stzh-eventdata{font-size:var(--stzh-font-curve-p1-medium-font-size, var(--stzh-font-centi-font-size));line-height:var(--stzh-font-curve-p1-medium-text-line-height, var(--stzh-font-centi-text-line-height));letter-spacing:var(--stzh-font-curve-p1-medium-text-letter-spacing)}}@media screen and (min-width: 600px){.stzh-eventdata__label.sc-stzh-eventdata{min-width:10rem}}@media screen and (min-width: 900px){.stzh-eventdata__label.sc-stzh-eventdata{min-width:10.875rem}}@media screen and (min-width: 1260px){.stzh-eventdata__label.sc-stzh-eventdata{min-width:11.375rem}}.stzh-eventdata__content.sc-stzh-eventdata{flex-grow:1;display:flex;flex-direction:column;row-gap:var(--stzh-space-xsmall)}";
8
+
9
+ const StzhEventdata = class {
10
+ constructor(hostRef) {
11
+ index.registerInstance(this, hostRef);
12
+ this.label = "";
13
+ }
14
+ render() {
15
+ const classes = {
16
+ "stzh-eventdata": true
17
+ };
18
+ return (index.h(index.Host, null, index.h("div", { class: classes }, index.h("div", { class: "stzh-eventdata__label" }, this.label ? this.label : index.h("slot", { name: "label" })), index.h("div", { class: "stzh-eventdata__content" }, index.h("slot", null)))));
19
+ }
20
+ get element() { return index.getElement(this); }
21
+ };
22
+ StzhEventdata.style = stzhEventdataCss;
23
+
24
+ exports.stzh_eventdata = StzhEventdata;
25
+
26
+ //# sourceMappingURL=stzh-eventdata.cjs.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"stzh-eventdata.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,gBAAgB,GAAG,uqFAAuqF;;MCiBnrF,aAAa;;;iBAEA,EAAE;;EAI1B,MAAM;IACJ,MAAM,OAAO,GAAG;MACd,gBAAgB,EAAE,IAAI;KACvB,CAAC;IAEF,QACEA,QAACC,UAAI,QACHD,iBAAK,KAAK,EAAE,OAAO,IACjBA,iBAAK,KAAK,EAAC,uBAAuB,IAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAGA,kBAAM,IAAI,EAAC,OAAO,GAAQ,CACjD,EACNA,iBAAK,KAAK,EAAC,yBAAyB,IAClCA,qBAAa,CACT,CACF,CACD,EACP;GACH;;;;;;;","names":["h","Host"],"sources":["src/components/stzh-eventdata/stzh-eventdata.scss?tag=stzh-eventdata&encapsulation=scoped","src/components/stzh-eventdata/stzh-eventdata.tsx"],"sourcesContent":[":host {\n\n}\n\n.stzh-eventdata {\n display: flex;\n flex-direction: column;\n row-gap: space('xsmall');\n column-gap: space('medium');\n\n @include mq($from: small) {\n flex-direction: row;\n }\n\n &__label {\n @include font('heavy');\n @include fontCurve('p1');\n flex-shrink: 0;\n\n @include mq($from: small) {\n min-width: 160px;\n }\n\n @include mq($from: medium) {\n min-width: 174px;\n }\n\n @include mq($from: large) {\n min-width: 182px;\n }\n }\n\n &__content {\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n row-gap: space('xsmall');\n }\n}\n","import {\n Component,\n Host,\n h,\n Element,\n Prop,\n} from \"@stencil/core\";\n\n/**\n * @slot - Slot for multiple elements\n * @slot label - Slot for label (alternative for label property)\n */\n@Component({\n tag: \"stzh-eventdata\",\n styleUrl: \"stzh-eventdata.scss\",\n scoped: true\n})\nexport class StzhEventdata {\n /** Label (use label slot as alternative) */\n @Prop() label: string = \"\";\n\n @Element() element: HTMLStzhEventdataElement;\n\n render() {\n const classes = {\n \"stzh-eventdata\": true\n };\n\n return (\n <Host>\n <div class={classes}>\n <div class=\"stzh-eventdata__label\">\n {this.label ? this.label : <slot name=\"label\"></slot>}\n </div>\n <div class=\"stzh-eventdata__content\">\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}