@oiz/stzh-components 3.8.0-beta1 → 3.8.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 (298) hide show
  1. package/dist/cjs/{app-globals-02553278.js → app-globals-0e887dd2.js} +2 -2
  2. package/dist/cjs/{app-globals-02553278.js.map → app-globals-0e887dd2.js.map} +1 -1
  3. package/dist/cjs/{axios-69bcb71f.js → axios-bd44344d.js} +51 -96
  4. package/dist/cjs/axios-bd44344d.js.map +1 -0
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/stzh-accordion_3.cjs.entry.js +2 -7
  7. package/dist/cjs/stzh-accordion_3.cjs.entry.js.map +1 -1
  8. package/dist/cjs/stzh-badge_3.cjs.entry.js +1 -1
  9. package/dist/cjs/stzh-badge_3.cjs.entry.js.map +1 -1
  10. package/dist/cjs/stzh-bathstatus-list.cjs.entry.js +1 -1
  11. package/dist/cjs/stzh-checkboxgroup.cjs.entry.js +12 -11
  12. package/dist/cjs/stzh-checkboxgroup.cjs.entry.js.map +1 -1
  13. package/dist/cjs/stzh-chipselect.cjs.entry.js +1 -1
  14. package/dist/cjs/stzh-chipselect.cjs.entry.js.map +1 -1
  15. package/dist/cjs/stzh-components.cjs.js +2 -2
  16. package/dist/cjs/stzh-contact.cjs.entry.js +2 -8
  17. package/dist/cjs/stzh-contact.cjs.entry.js.map +1 -1
  18. package/dist/cjs/stzh-datalist_2.cjs.entry.js +1 -1
  19. package/dist/cjs/stzh-datalist_2.cjs.entry.js.map +1 -1
  20. package/dist/cjs/stzh-dialog.cjs.entry.js +1 -1
  21. package/dist/cjs/stzh-dialog.cjs.entry.js.map +1 -1
  22. package/dist/cjs/stzh-dropdown.cjs.entry.js +1 -1
  23. package/dist/cjs/stzh-dropdown.cjs.entry.js.map +1 -1
  24. package/dist/cjs/stzh-eventdata.cjs.entry.js +1 -1
  25. package/dist/cjs/stzh-eventdata.cjs.entry.js.map +1 -1
  26. package/dist/cjs/stzh-microsite-teaserlist.cjs.entry.js +3 -2
  27. package/dist/cjs/stzh-microsite-teaserlist.cjs.entry.js.map +1 -1
  28. package/dist/cjs/stzh-poilist.cjs.entry.js +1 -1
  29. package/dist/cjs/stzh-progressbar.cjs.entry.js +23 -0
  30. package/dist/cjs/stzh-progressbar.cjs.entry.js.map +1 -1
  31. package/dist/cjs/stzh-search.cjs.entry.js +2 -2
  32. package/dist/cjs/stzh-search.cjs.entry.js.map +1 -1
  33. package/dist/cjs/stzh-upload.cjs.entry.js +23 -10
  34. package/dist/cjs/stzh-upload.cjs.entry.js.map +1 -1
  35. package/dist/cjs/stzh-vbz-majorticker.cjs.entry.js +1 -1
  36. package/dist/cjs/stzh-vbz-ticker.cjs.entry.js +1 -1
  37. package/dist/collection/assets/i18n/de.json +9 -5
  38. package/dist/collection/assets/i18n/en.json +9 -5
  39. package/dist/collection/components/stzh-accordion/stzh-accordion.e2e.js +1 -0
  40. package/dist/collection/components/stzh-accordion/stzh-accordion.e2e.js.map +1 -1
  41. package/dist/collection/components/stzh-accordion/stzh-accordion.stories.js +86 -0
  42. package/dist/collection/components/stzh-accordion-item/stzh-accordion-item.js +2 -7
  43. package/dist/collection/components/stzh-accordion-item/stzh-accordion-item.js.map +1 -1
  44. package/dist/collection/components/stzh-button/stzh-button.css +13 -4
  45. package/dist/collection/components/stzh-button/stzh-button.e2e.js +6 -3
  46. package/dist/collection/components/stzh-button/stzh-button.e2e.js.map +1 -1
  47. package/dist/collection/components/stzh-button/stzh-button.stories.js +191 -15
  48. package/dist/collection/components/stzh-checkboxgroup/stzh-checkboxgroup.js +31 -14
  49. package/dist/collection/components/stzh-checkboxgroup/stzh-checkboxgroup.js.map +1 -1
  50. package/dist/collection/components/stzh-chip/stzh-chip.stories.js +11 -0
  51. package/dist/collection/components/stzh-chipselect/stzh-chipselect.css +1 -6
  52. package/dist/collection/components/stzh-contact/stzh-contact.css +11 -0
  53. package/dist/collection/components/stzh-contact/stzh-contact.js +1 -7
  54. package/dist/collection/components/stzh-contact/stzh-contact.js.map +1 -1
  55. package/dist/collection/components/stzh-datalist/stzh-datalist.e2e.js +1 -0
  56. package/dist/collection/components/stzh-datalist/stzh-datalist.e2e.js.map +1 -1
  57. package/dist/collection/components/stzh-datalist/stzh-datalist.stories.js +32 -0
  58. package/dist/collection/components/stzh-datalist-item/stzh-datalist-item.css +2 -1
  59. package/dist/collection/components/stzh-datepicker/stzh-datepicker.stories.js +1 -1
  60. package/dist/collection/components/stzh-dialog/stzh-dialog.css +2 -1
  61. package/dist/collection/components/stzh-dropdown/stzh-dropdown.css +8 -1
  62. package/dist/collection/components/stzh-dropdown/stzh-dropdown.stories.js +107 -5
  63. package/dist/collection/components/stzh-eventdata/stzh-eventdata.css +0 -5
  64. package/dist/collection/components/stzh-input/stzh-input.stories.js +1 -1
  65. package/dist/collection/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.js +3 -2
  66. package/dist/collection/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.js.map +1 -1
  67. package/dist/collection/components/stzh-progressbar/stzh-progressbar.js +27 -2
  68. package/dist/collection/components/stzh-progressbar/stzh-progressbar.js.map +1 -1
  69. package/dist/collection/components/stzh-search/stzh-search.js +1 -1
  70. package/dist/collection/components/stzh-search/stzh-search.js.map +1 -1
  71. package/dist/collection/components/stzh-search/stzh-search.stories.js +51 -83
  72. package/dist/collection/components/stzh-skiplink/stzh-skiplink.stories.js +0 -1
  73. package/dist/collection/components/stzh-upload/models/stzh-photographing-url-details.dto.js.map +1 -1
  74. package/dist/collection/components/stzh-upload/stzh-upload.css +5 -0
  75. package/dist/collection/components/stzh-upload/stzh-upload.js +26 -10
  76. package/dist/collection/components/stzh-upload/stzh-upload.js.map +1 -1
  77. package/dist/collection/components/stzh-upload/stzh-upload.localization.js.map +1 -1
  78. package/dist/collection/components/stzh-upload/stzh-upload.stories.js +3 -1
  79. package/dist/components/index.js +1 -1
  80. package/dist/components/{p-ed75de26.js → p-16940157.js} +3 -3
  81. package/dist/components/{p-ed75de26.js.map → p-16940157.js.map} +1 -1
  82. package/dist/components/{p-2fe2c81f.js → p-1d21ac10.js} +3 -3
  83. package/dist/components/{p-2fe2c81f.js.map → p-1d21ac10.js.map} +1 -1
  84. package/dist/components/{p-16892790.js → p-345a1e99.js} +51 -96
  85. package/dist/components/p-345a1e99.js.map +1 -0
  86. package/dist/components/{p-3aefa2e3.js → p-37367a31.js} +5 -5
  87. package/dist/components/{p-3aefa2e3.js.map → p-37367a31.js.map} +1 -1
  88. package/dist/components/{p-74755a90.js → p-408a1562.js} +2 -2
  89. package/dist/components/{p-74755a90.js.map → p-408a1562.js.map} +1 -1
  90. package/dist/components/{p-7e9f4f9f.js → p-497e2db0.js} +2 -2
  91. package/dist/components/{p-7e9f4f9f.js.map → p-497e2db0.js.map} +1 -1
  92. package/dist/components/p-4d000b5b.js +265 -0
  93. package/dist/components/p-4d000b5b.js.map +1 -0
  94. package/dist/components/{p-866cf184.js → p-4e5ccabd.js} +2 -2
  95. package/dist/components/{p-866cf184.js.map → p-4e5ccabd.js.map} +1 -1
  96. package/dist/components/{p-bd7d15a6.js → p-541e8c61.js} +2 -2
  97. package/dist/components/{p-bd7d15a6.js.map → p-541e8c61.js.map} +1 -1
  98. package/dist/components/{p-d4aabf9c.js → p-60b9f94a.js} +3 -3
  99. package/dist/components/p-60b9f94a.js.map +1 -0
  100. package/dist/components/{p-82c163e4.js → p-62e6cd61.js} +3 -3
  101. package/dist/components/{p-82c163e4.js.map → p-62e6cd61.js.map} +1 -1
  102. package/dist/components/{p-13c3319c.js → p-6956beb9.js} +2 -2
  103. package/dist/components/{p-13c3319c.js.map → p-6956beb9.js.map} +1 -1
  104. package/dist/components/{p-2a870524.js → p-6c754f8f.js} +3 -8
  105. package/dist/components/p-6c754f8f.js.map +1 -0
  106. package/dist/components/{p-9b0832ca.js → p-70f62e8e.js} +3 -3
  107. package/dist/components/{p-9b0832ca.js.map → p-70f62e8e.js.map} +1 -1
  108. package/dist/components/{p-c9ddf923.js → p-8ed7a61b.js} +2 -2
  109. package/dist/components/{p-c9ddf923.js.map → p-8ed7a61b.js.map} +1 -1
  110. package/dist/components/{p-3890d846.js → p-96416f66.js} +3 -3
  111. package/dist/components/p-96416f66.js.map +1 -0
  112. package/dist/components/{p-435e0ef4.js → p-c73125e2.js} +3 -3
  113. package/dist/components/{p-435e0ef4.js.map → p-c73125e2.js.map} +1 -1
  114. package/dist/components/{p-d1623b2e.js → p-dd072a49.js} +2 -2
  115. package/dist/components/{p-d1623b2e.js.map → p-dd072a49.js.map} +1 -1
  116. package/dist/components/{p-4039ba55.js → p-e5edc56d.js} +2 -2
  117. package/dist/components/{p-4039ba55.js.map → p-e5edc56d.js.map} +1 -1
  118. package/dist/components/{p-e0e4416e.js → p-ebbe78de.js} +2 -2
  119. package/dist/components/p-ebbe78de.js.map +1 -0
  120. package/dist/components/{p-e197115b.js → p-fa14b406.js} +2 -2
  121. package/dist/components/{p-e197115b.js.map → p-fa14b406.js.map} +1 -1
  122. package/dist/components/stzh-accordion-item.js +1 -1
  123. package/dist/components/stzh-actionset.js +1 -1
  124. package/dist/components/stzh-amount.js +3 -3
  125. package/dist/components/stzh-appointments.js +5 -5
  126. package/dist/components/stzh-archivelist.js +1 -1
  127. package/dist/components/stzh-banner.js +1 -1
  128. package/dist/components/stzh-bathstatus-list.js +1 -1
  129. package/dist/components/stzh-button.js +1 -1
  130. package/dist/components/stzh-calendar.js +1 -1
  131. package/dist/components/stzh-card-searchresult.js +3 -3
  132. package/dist/components/stzh-card-superteaser.js +3 -3
  133. package/dist/components/stzh-card.js +1 -1
  134. package/dist/components/stzh-checkboxgroup.js +13 -12
  135. package/dist/components/stzh-checkboxgroup.js.map +1 -1
  136. package/dist/components/stzh-chipselect.js +1 -1
  137. package/dist/components/stzh-contact.js +2 -8
  138. package/dist/components/stzh-contact.js.map +1 -1
  139. package/dist/components/stzh-datalist-item.js +1 -1
  140. package/dist/components/stzh-datalist.js +1 -1
  141. package/dist/components/stzh-datamessagelist-item.js +1 -1
  142. package/dist/components/stzh-datatable.js +7 -7
  143. package/dist/components/stzh-datepicker.js +1 -1
  144. package/dist/components/stzh-dialog.js +1 -1
  145. package/dist/components/stzh-disturber.js +1 -1
  146. package/dist/components/stzh-dropdown.js +1 -1
  147. package/dist/components/stzh-eventdata.js +1 -1
  148. package/dist/components/stzh-eventdata.js.map +1 -1
  149. package/dist/components/stzh-feedreader.js +2 -2
  150. package/dist/components/stzh-gallery.js +1 -1
  151. package/dist/components/stzh-geo-ref-data.js +6 -6
  152. package/dist/components/stzh-ghettobox.js +1 -1
  153. package/dist/components/stzh-header.js +1 -1
  154. package/dist/components/stzh-http-error.js +1 -1
  155. package/dist/components/stzh-iframe.js +1 -1
  156. package/dist/components/stzh-input.js +1 -1
  157. package/dist/components/stzh-message.js +1 -1
  158. package/dist/components/stzh-microsite-teaserlist.js +7 -6
  159. package/dist/components/stzh-microsite-teaserlist.js.map +1 -1
  160. package/dist/components/stzh-monthyearpicker.js +1 -1
  161. package/dist/components/stzh-offline-indicator.js +3 -3
  162. package/dist/components/stzh-pagebottom.js +2 -2
  163. package/dist/components/stzh-pagination.js +1 -1
  164. package/dist/components/stzh-panorama.js +2 -2
  165. package/dist/components/stzh-poilist.js +4 -4
  166. package/dist/components/stzh-progressbar.js +26 -2
  167. package/dist/components/stzh-progressbar.js.map +1 -1
  168. package/dist/components/stzh-readspeaker.js +1 -1
  169. package/dist/components/stzh-saptcha.js +2 -2
  170. package/dist/components/stzh-search.js +6 -6
  171. package/dist/components/stzh-search.js.map +1 -1
  172. package/dist/components/stzh-share.js +1 -1
  173. package/dist/components/stzh-sitemap.js +3 -3
  174. package/dist/components/stzh-timepicker.js +1 -1
  175. package/dist/components/stzh-toast.js +1 -1
  176. package/dist/components/stzh-toastbar.js +1 -1
  177. package/dist/components/stzh-upload.js +31 -15
  178. package/dist/components/stzh-upload.js.map +1 -1
  179. package/dist/components/stzh-vbz-majorticker.js +3 -3
  180. package/dist/components/stzh-vbz-ticker.js +1 -1
  181. package/dist/components/stzh-youtube.js +2 -2
  182. package/dist/esm/{app-globals-30dc1fec.js → app-globals-1e3146bc.js} +2 -2
  183. package/dist/esm/{app-globals-30dc1fec.js.map → app-globals-1e3146bc.js.map} +1 -1
  184. package/dist/esm/{axios-e0a35239.js → axios-0cc95004.js} +51 -96
  185. package/dist/esm/axios-0cc95004.js.map +1 -0
  186. package/dist/esm/loader.js +2 -2
  187. package/dist/esm/stzh-accordion_3.entry.js +2 -7
  188. package/dist/esm/stzh-accordion_3.entry.js.map +1 -1
  189. package/dist/esm/stzh-badge_3.entry.js +1 -1
  190. package/dist/esm/stzh-badge_3.entry.js.map +1 -1
  191. package/dist/esm/stzh-bathstatus-list.entry.js +1 -1
  192. package/dist/esm/stzh-checkboxgroup.entry.js +12 -11
  193. package/dist/esm/stzh-checkboxgroup.entry.js.map +1 -1
  194. package/dist/esm/stzh-chipselect.entry.js +1 -1
  195. package/dist/esm/stzh-chipselect.entry.js.map +1 -1
  196. package/dist/esm/stzh-components.js +2 -2
  197. package/dist/esm/stzh-contact.entry.js +2 -8
  198. package/dist/esm/stzh-contact.entry.js.map +1 -1
  199. package/dist/esm/stzh-datalist_2.entry.js +1 -1
  200. package/dist/esm/stzh-datalist_2.entry.js.map +1 -1
  201. package/dist/esm/stzh-dialog.entry.js +1 -1
  202. package/dist/esm/stzh-dialog.entry.js.map +1 -1
  203. package/dist/esm/stzh-dropdown.entry.js +1 -1
  204. package/dist/esm/stzh-dropdown.entry.js.map +1 -1
  205. package/dist/esm/stzh-eventdata.entry.js +1 -1
  206. package/dist/esm/stzh-eventdata.entry.js.map +1 -1
  207. package/dist/esm/stzh-microsite-teaserlist.entry.js +3 -2
  208. package/dist/esm/stzh-microsite-teaserlist.entry.js.map +1 -1
  209. package/dist/esm/stzh-poilist.entry.js +1 -1
  210. package/dist/esm/stzh-progressbar.entry.js +24 -1
  211. package/dist/esm/stzh-progressbar.entry.js.map +1 -1
  212. package/dist/esm/stzh-search.entry.js +2 -2
  213. package/dist/esm/stzh-search.entry.js.map +1 -1
  214. package/dist/esm/stzh-upload.entry.js +23 -10
  215. package/dist/esm/stzh-upload.entry.js.map +1 -1
  216. package/dist/esm/stzh-vbz-majorticker.entry.js +1 -1
  217. package/dist/esm/stzh-vbz-ticker.entry.js +1 -1
  218. package/dist/stzh-components/assets/i18n/de.json +9 -5
  219. package/dist/stzh-components/assets/i18n/en.json +9 -5
  220. package/dist/stzh-components/p-129faf7d.entry.js +2 -0
  221. package/dist/stzh-components/p-129faf7d.entry.js.map +1 -0
  222. package/dist/stzh-components/{p-68dee00d.entry.js → p-23678dfc.entry.js} +2 -2
  223. package/dist/stzh-components/{p-68dee00d.entry.js.map → p-23678dfc.entry.js.map} +1 -1
  224. package/dist/stzh-components/p-345a1e99.js +2 -0
  225. package/dist/stzh-components/p-345a1e99.js.map +1 -0
  226. package/dist/stzh-components/{p-e5a451a0.entry.js → p-646958e0.entry.js} +2 -2
  227. package/dist/stzh-components/{p-025a5c2e.entry.js → p-66c866e5.entry.js} +2 -2
  228. package/dist/stzh-components/p-66c866e5.entry.js.map +1 -0
  229. package/dist/stzh-components/{p-232d017c.entry.js → p-6a3db3bd.entry.js} +2 -2
  230. package/dist/stzh-components/p-6a3db3bd.entry.js.map +1 -0
  231. package/dist/stzh-components/{p-ef38e1fe.entry.js → p-6f9626d1.entry.js} +2 -2
  232. package/dist/stzh-components/p-6f9626d1.entry.js.map +1 -0
  233. package/dist/stzh-components/p-75143e35.entry.js +2 -0
  234. package/dist/stzh-components/p-75143e35.entry.js.map +1 -0
  235. package/dist/stzh-components/{p-8aab9098.entry.js → p-7c5e34db.entry.js} +2 -2
  236. package/dist/stzh-components/{p-b2986e24.entry.js → p-809076ff.entry.js} +2 -2
  237. package/dist/stzh-components/p-84cedd61.entry.js +2 -0
  238. package/dist/stzh-components/p-84cedd61.entry.js.map +1 -0
  239. package/dist/stzh-components/{p-5bafa548.entry.js → p-84f8307b.entry.js} +2 -2
  240. package/dist/stzh-components/p-84f8307b.entry.js.map +1 -0
  241. package/dist/stzh-components/{p-7b2bd184.entry.js → p-8856651e.entry.js} +2 -2
  242. package/dist/stzh-components/{p-7b2bd184.entry.js.map → p-8856651e.entry.js.map} +1 -1
  243. package/dist/stzh-components/p-8c5fb0e2.entry.js +2 -0
  244. package/dist/stzh-components/{p-f156650a.entry.js.map → p-8c5fb0e2.entry.js.map} +1 -1
  245. package/dist/stzh-components/p-9f91ca1f.entry.js +2 -0
  246. package/dist/stzh-components/p-9f91ca1f.entry.js.map +1 -0
  247. package/dist/stzh-components/p-d41803d1.js +2 -0
  248. package/dist/stzh-components/{p-64ba89a2.js.map → p-d41803d1.js.map} +1 -1
  249. package/dist/stzh-components/{p-6f0cf6e3.entry.js → p-d97fbf1f.entry.js} +2 -2
  250. package/dist/stzh-components/p-fa4595c8.entry.js +2 -0
  251. package/dist/stzh-components/p-fa4595c8.entry.js.map +1 -0
  252. package/dist/stzh-components/p-fcc75797.entry.js +2 -0
  253. package/dist/stzh-components/p-fcc75797.entry.js.map +1 -0
  254. package/dist/stzh-components/stzh-components.esm.js +1 -1
  255. package/dist/stzh-components/stzh-components.esm.js.map +1 -1
  256. package/dist/types/components/stzh-accordion-item/stzh-accordion-item.d.ts +0 -1
  257. package/dist/types/components/stzh-checkboxgroup/stzh-checkboxgroup.d.ts +3 -3
  258. package/dist/types/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.d.ts +2 -2
  259. package/dist/types/components/stzh-progressbar/stzh-progressbar.d.ts +4 -0
  260. package/dist/types/components/stzh-upload/models/stzh-photographing-url-details.dto.d.ts +1 -0
  261. package/dist/types/components/stzh-upload/stzh-upload.d.ts +3 -0
  262. package/dist/types/components/stzh-upload/stzh-upload.localization.d.ts +2 -0
  263. package/dist/types/components.d.ts +8 -0
  264. package/dist/vscode-data.json +4 -0
  265. package/package.json +9 -5
  266. package/dist/cjs/axios-69bcb71f.js.map +0 -1
  267. package/dist/components/p-16892790.js.map +0 -1
  268. package/dist/components/p-20c7b76b.js +0 -265
  269. package/dist/components/p-20c7b76b.js.map +0 -1
  270. package/dist/components/p-2a870524.js.map +0 -1
  271. package/dist/components/p-3890d846.js.map +0 -1
  272. package/dist/components/p-d4aabf9c.js.map +0 -1
  273. package/dist/components/p-e0e4416e.js.map +0 -1
  274. package/dist/esm/axios-e0a35239.js.map +0 -1
  275. package/dist/stzh-components/p-025a5c2e.entry.js.map +0 -1
  276. package/dist/stzh-components/p-11abc40a.entry.js +0 -2
  277. package/dist/stzh-components/p-11abc40a.entry.js.map +0 -1
  278. package/dist/stzh-components/p-16892790.js +0 -2
  279. package/dist/stzh-components/p-16892790.js.map +0 -1
  280. package/dist/stzh-components/p-232d017c.entry.js.map +0 -1
  281. package/dist/stzh-components/p-5ac0220a.entry.js +0 -2
  282. package/dist/stzh-components/p-5ac0220a.entry.js.map +0 -1
  283. package/dist/stzh-components/p-5bafa548.entry.js.map +0 -1
  284. package/dist/stzh-components/p-64ba89a2.js +0 -2
  285. package/dist/stzh-components/p-95427be2.entry.js +0 -2
  286. package/dist/stzh-components/p-95427be2.entry.js.map +0 -1
  287. package/dist/stzh-components/p-973c5df2.entry.js +0 -2
  288. package/dist/stzh-components/p-973c5df2.entry.js.map +0 -1
  289. package/dist/stzh-components/p-aff2ca5f.entry.js +0 -2
  290. package/dist/stzh-components/p-aff2ca5f.entry.js.map +0 -1
  291. package/dist/stzh-components/p-da2c88a2.entry.js +0 -2
  292. package/dist/stzh-components/p-da2c88a2.entry.js.map +0 -1
  293. package/dist/stzh-components/p-ef38e1fe.entry.js.map +0 -1
  294. package/dist/stzh-components/p-f156650a.entry.js +0 -2
  295. /package/dist/stzh-components/{p-e5a451a0.entry.js.map → p-646958e0.entry.js.map} +0 -0
  296. /package/dist/stzh-components/{p-8aab9098.entry.js.map → p-7c5e34db.entry.js.map} +0 -0
  297. /package/dist/stzh-components/{p-b2986e24.entry.js.map → p-809076ff.entry.js.map} +0 -0
  298. /package/dist/stzh-components/{p-6f0cf6e3.entry.js.map → p-d97fbf1f.entry.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["stzhAccordionCss","StzhAccordion","variantWatcher","newValue","this","stzhVariantChange","emit","component","value","openListener","event","accordionItemOpened","target","accordionOpened","closest","multiselectable","detail","element","items","Array","from","querySelectorAll","forEach","item","hide","setItemFocus","accordionItem","action","accordion","filter","disabled","currentIndex","indexOf","length","focus","checkIfNested","parentElement","tagName","toLowerCase","isNested","componentDidLoad","render","classes","h","Host","class","heading","level","stzhAccordionItemCss","ANIMATION_SHOW","keyframes","height","opacity","options","duration","easing","ANIMATION_HIDE","accordionItemCounter","StzhAccordionItem","toggledByMethod","focusedByInput","shiftPressed","handleVariantChange","_event","variant","handleHeaderClick","collapsible","toggle","open","show","onFocus","rootTabindex","stzhFocus","originalEvent","onBlur","stzhBlur","onButtonKeydown","key","ctrlKey","preventDefault","onContentKeydown","_variant","openWatcher","bodyElement","stzhOpen","stopAnimations","hidden","animateTo","shimKeyframesAutoValues","scrollHeight","style","overflow","stzhOpened","stzhClose","stzhClosed","waitForEvent","handleKeydown","handleKeyup","componentWillLoad","accordionItemId","connectedCallback","addEventListener","disconnectedCallback","removeEventListener","hasIcon","hasSlot","icon","iconWrapperElement","Heading","headingLevel","description","subtitle","tabindex","id","onClick","ref","el","buttonElement","onKeyDown","type","analyticsId","name","badge","badgeEmpty","label","badgeType","role","stzhPaginationCss","StzhPagination","gotoPage","newPage","previous","total","stzhChange","page","Number","onRootFocus","input","onInputChange","prev","next","localization","window","stzhComponents","utils","fetchTranslations","size","allowManualInput","Fragment","min","max","labelHidden","onStzhChange","_a","toString","required","descriptionLong","error","a11yDescribedby","invalid","hideOptional","noAutocomplete","totalLabel","replace","a11yDisabled","a11yLabel","prevLabel","selectedPageLabel","nextLabel"],"sources":["src/components/stzh-accordion/stzh-accordion.scss?tag=stzh-accordion&encapsulation=shadow","src/components/stzh-accordion/stzh-accordion.tsx","src/components/stzh-accordion-item/stzh-accordion-item.scss?tag=stzh-accordion-item&encapsulation=shadow","src/components/stzh-accordion-item/stzh-accordion-item.tsx","src/components/stzh-pagination/stzh-pagination.scss?tag=stzh-pagination&encapsulation=scoped","src/components/stzh-pagination/stzh-pagination.tsx"],"sourcesContent":[":host {\n // disable section paddings and margins\n --stzh-section-padding-top: 0px;\n --stzh-section-padding-bottom: 0px;\n --stzh-section-margin-top: 0px;\n --stzh-section-margin-bottom: 0px;\n\n --margin-left: inherit;\n --margin-right: inherit;\n}\n\n.stzh-accordion {\n display: grid;\n gap: space('xsmall');\n margin-left: var(--margin-left);\n margin-right: var(--margin-left);\n\n &__heading {\n @include spaceCurve('margin-bottom', 'small');\n }\n\n /* is nested within another accordion */\n\n &--is-nested {\n @include spaceCurve('margin-left', 'regular', true);\n @include spaceCurve('margin-right', 'regular', true);\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, State, Watch } from \"@stencil/core\";\n\nimport { StzhAccordionItemOpenEvent, StzhAccordionVariant, StzhAccordionVariantChangeEvent } from \"../../index\";\n\n/**\n * @slot - Slot for `stzh-accordion-item` elements\n */\n@Component({\n tag: \"stzh-accordion\",\n styleUrl: \"stzh-accordion.scss\",\n shadow: true,\n})\nexport class StzhAccordion {\n /** Variant */\n @Prop({ reflect: true }) variant: StzhAccordionVariant = \"default\";\n\n /** Heading */\n @Prop({ reflect: true }) heading: string = \"\";\n\n /** Whether folds are collapsible */\n @Prop() collapsible: boolean = true;\n\n /** Whether multiple folds can be opened at once */\n @Prop() multiselectable: boolean = true;\n\n @Element() element: HTMLStzhAccordionElement;\n\n /** Variant change event */\n @Event() stzhVariantChange: EventEmitter<StzhAccordionVariantChangeEvent>;\n\n @State() isNested: boolean;\n\n @Watch(\"variant\")\n variantWatcher(newValue: StzhAccordionVariant) {\n this.stzhVariantChange.emit({\n component: \"stzh-accordion\",\n value: newValue,\n });\n }\n\n @Listen(\"stzhOpen\")\n openListener(event: CustomEvent<StzhAccordionItemOpenEvent>) {\n const accordionItemOpened = event.target as HTMLStzhAccordionItemElement;\n const accordionOpened = accordionItemOpened.closest(\"stzh-accordion\");\n\n if (\n this.multiselectable ||\n (event.detail && event.detail.component !== \"stzh-accordion-item\") ||\n accordionOpened !== this.element\n ) {\n return;\n }\n\n const items: HTMLStzhAccordionItemElement[] = Array.from(accordionOpened.querySelectorAll(\"stzh-accordion-item\"));\n items.forEach(item => {\n if (item !== accordionItemOpened) {\n item.hide();\n }\n });\n }\n\n /** Set focus to accordion item */\n @Method()\n async setItemFocus(accordionItem: HTMLStzhAccordionItemElement, action: string) {\n const accordion = accordionItem.closest(\"stzh-accordion\");\n\n if (accordion !== this.element) {\n return;\n }\n\n const items = (\n Array.from(accordion.querySelectorAll(\":scope > stzh-accordion-item\")) as HTMLStzhAccordionItemElement[]\n ).filter(item => !item.disabled);\n\n const currentIndex = items.indexOf(accordionItem);\n\n if ((action === \"prev\" || action === \"next\") && currentIndex === null) {\n action = action === \"prev\" ? \"last\" : \"first\";\n }\n\n if (action === \"prev\" && currentIndex === 0) {\n action = \"last\";\n }\n\n if (action === \"next\" && currentIndex === items.length - 1) {\n action = \"first\";\n }\n\n if (action === \"prev\") {\n items[currentIndex - 1].focus();\n } else if (action === \"next\") {\n items[currentIndex + 1].focus();\n } else if (action === \"last\") {\n items[items.length - 1].focus();\n } else if (action === \"first\") {\n items[0].focus();\n } else {\n accordionItem.focus();\n }\n }\n\n private checkIfNested() {\n let parentElement = this.element.parentElement;\n\n while (parentElement) {\n if (parentElement.tagName.toLowerCase() === \"stzh-accordion\") {\n this.isNested = true;\n break;\n }\n parentElement = parentElement.parentElement;\n }\n }\n\n componentDidLoad() {\n this.checkIfNested();\n }\n\n render() {\n const classes = {\n \"stzh-accordion\": true,\n \"stzh-accordion--is-nested\": this.isNested,\n };\n\n return (\n <Host>\n <div class={classes}>\n {this.heading && (\n <div class=\"stzh-accordion__heading\">\n <stzh-heading level=\"2\">{this.heading}</stzh-heading>\n </div>\n )}\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n","/**\n * @prop --content-background: Content background\n *\n * @prop --stzh-accordion-content-background: **Global**: Content background\n * @prop --stzh-accordion-button-color: **Global**: Button label background\n */\n\n:host {\n --trigger-size: 18px;\n --trigger-color: currentColor;\n --content-background: #{$accordionContentBackground};\n --icon-size: #{iconSize()};\n --button-color: var(--stzh-accordion-button-color, #{$colorPrimary70});\n --button-background-color: #{$colorSecondary30};\n\n --hover-button-color: var(--button-color);\n --hover-button-background-color: #{$colorSecondary40};\n --hover-trigger-color: var(--trigger-color);\n\n --transition-duration: 200ms;\n\n @media print {\n page-break-inside: avoid;\n break-inside: avoid;\n }\n\n @include highContrast() {\n --trigger-color: CanvasText;\n\n --hover-trigger-color: CanvasText;\n }\n}\n\n/* Table */\n:host(:where([is-variant=\"table\"])) {\n --trigger-size: #{iconSize()};\n --content-background: #{$colorGrey10};\n --button-background-color: #{$colorGrey20};\n --trigger-color: #{$colorBlack};\n\n --hover-button-background-color: #{$colorGrey30};\n\n @include highContrast() {\n --trigger-color: CanvasText;\n\n --hover-trigger-color: CanvasText;\n }\n}\n\n/* Disabled */\n\n:host(:where([disabled]:not([disabled=\"false\"]))) {\n --button-color: #{$colorGrey80};\n --button-background-color: #{$colorGrey20};\n --trigger-color: #{$colorGrey80};\n\n --hover-button-color: var(--button-color);\n --hover-button-background-color: var(--button-background-color);\n --hover-trigger-color: var(--trigger-color);\n}\n\n.stzh-accordion-item {\n &__heading {\n position: relative;\n margin: 0;\n }\n\n &__button {\n @include fontCurve('p1');\n @include spaceCurve('padding-top', 'regular');\n @include spaceCurve('padding-bottom', 'regular');\n font-family: inherit;\n width: 100%;\n appearance: none;\n display: flex;\n align-items: center;\n min-height: 60px;\n color: var(--button-color);\n background-color: var(--button-background-color);\n text-align: left;\n border: none;\n transition-property: background-color;\n transition-duration: var(--transition-duration);\n cursor: pointer;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n\n &:hover {\n color: var(--hover-button-color);\n background-color: var(--hover-button-background-color);\n }\n }\n\n &__button,\n &__content-inner {\n @include spaceCurve('padding-left', 'regular');\n @include spaceCurve('padding-right', 'regular');\n }\n\n &__button-text {\n flex-grow: 1;\n }\n\n &__button-icon {\n &.is-default {\n position: relative;\n display: block;\n width: var(--trigger-size);\n height: var(--trigger-size);\n margin-left: space('medium');\n\n &::before,\n &::after {\n position: absolute;\n top: 50%;\n left: 50%;\n content: '';\n display: block;\n width: var(--trigger-size);\n height: 2.5px;\n transition-property: transform, background-color;\n transition-duration: var(--transition-duration);\n transform-origin: top left;\n background-color: var(--trigger-color);\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n\n &::before {\n transform: rotate(180deg) translate(-50%, -50%);\n }\n\n &::after {\n transform: rotate(90deg) translate(-50%, -50%);\n }\n }\n\n &.is-table {\n --size: var(--trigger-size);\n\n transition-property: transform, color;\n transition-duration: var(--transition-duration);\n color: var(--trigger-color);\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n }\n\n &__button:hover &__button-icon {\n &.is-default {\n &::before,\n &::after {\n background-color: var(--hover-trigger-color);\n }\n }\n\n &.is-table {\n color: var(--hover-trigger-color);\n }\n }\n\n &__content {\n overflow: hidden;\n background-color: var(--content-background);\n\n @media print {\n height: auto !important;\n overflow: visible !important;\n display: block !important;\n }\n }\n\n &__content-inner {\n @include spaceCurve('padding-top', 'medium');\n @include spaceCurve('padding-bottom', 'medium');\n }\n\n &__icon-wrapper {\n --stzh-icon-size: var(--icon-size);\n\n align-self: flex-start;\n }\n\n &__badge {\n position: absolute;\n right: -5px;\n top: -5px;\n }\n\n &__description {\n @include fontCurve('caption');\n }\n\n &__heading-text,\n &__description,\n &__subtitle {\n display: block;\n }\n\n &__subtitle {\n @include fontCurve('p2');\n }\n\n /* Has icon */\n\n &--has-icon &__icon-wrapper {\n margin-right: space('xsmall');\n }\n\n /* Title Variant / Subtitle */\n\n &--title &__heading-text,\n &--has-subtitle &__heading-text {\n @include font('title');\n @include fontCurve('h3', 'heading');\n }\n\n &--title &__subtitle:not(:empty) + &__heading-text,\n &--has-subtitle &__subtitle:not(:empty) + &__heading-text {\n @include spaceCurve('margin-top', 'tiny');\n\n @include mq($from: medium) {\n margin-top: space('xsmall');\n }\n }\n\n /* Open */\n\n &--is-open &__button-icon {\n &.is-default {\n &::before,\n &::after {\n transform: rotate(0) translate(-50%, -50%);\n }\n }\n\n &.is-table {\n transform: rotate(180deg);\n }\n }\n\n /* Table Variant */\n\n &--table &__button,\n &--table &__content-inner {\n padding-left: space('medium');\n padding-right: space('medium');\n }\n\n &__button {\n @include fontSize('milli');\n padding-top: space('medium');\n padding-bottom: space('medium');\n min-height: 56px;\n }\n\n &--table &__content-inner {\n @include spaceCurve('padding-top', 'tiny');\n @include spaceCurve('padding-bottom', 'regular');\n }\n\n &--table &__heading-text {\n @include font('heavy');\n }\n\n /* Disabled */\n\n &--is-disabled &__button {\n cursor: not-allowed;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, State, Watch } from \"@stencil/core\";\n\nimport {\n StzhAccordionItemBlurEvent,\n StzhAccordionItemClosedEvent,\n StzhAccordionItemCloseEvent,\n StzhAccordionItemFocusEvent,\n StzhAccordionItemOpenedEvent,\n StzhAccordionItemOpenEvent,\n StzhAccordionVariant,\n StzhAccordionVariantChangeEvent,\n StzhBadgeType,\n} from \"../../index\";\n\nimport { waitForEvent } from \"../../utils/event-utils\";\nimport { animateTo, shimKeyframesAutoValues, stopAnimations } from \"../../utils/animation-utils\";\nimport { hasSlot } from \"../../utils/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 accordionItemCounter = 0;\n\n/**\n * @slot - Slot for any content\n * @slot icon - Slot for icon element\n */\n@Component({\n tag: \"stzh-accordion-item\",\n styleUrl: \"stzh-accordion-item.scss\",\n shadow: true,\n})\nexport class StzhAccordionItem {\n /** Variant (overwrites variant from accordion parent) */\n @Prop() variant: StzhAccordionVariant;\n\n /** Whether fold is collapsible (overwrites collapsible from accordion parent) */\n @Prop() collapsible: boolean;\n\n /** Whether fold is open */\n @Prop({ mutable: true, reflect: true }) open: boolean = false;\n\n /** Whether fold disabled */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Heading title */\n @Prop() heading: string = \"\";\n\n /** Subtitle */\n @Prop() subtitle: string = \"\";\n\n /** Description */\n @Prop() description: string = \"\";\n\n /** Icon (use instead of icon slot) */\n @Prop() icon: string = \"\";\n\n /** Badge */\n @Prop() badge: string = \"\";\n\n /** Whether badge should be displayed empty */\n @Prop({ reflect: true }) badgeEmpty: boolean = false;\n\n /** Badge type */\n @Prop({ reflect: true }) badgeType: StzhBadgeType = \"default\";\n\n /** Heading level, for accessibility, no visual impact */\n @Prop({ reflect: true }) headingLevel: \"1\" | \"2\" | \"3\" | \"4\" = \"3\";\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the button element.\n * Default value will be taken from `heading` prop.\n */\n @Prop() analyticsId: string;\n\n @Element() element: HTMLStzhAccordionItemElement;\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(\"variant\")\n variantWatcher(newValue: StzhAccordionVariant) {\n if (typeof newValue !== \"undefined\") {\n this._variant = newValue;\n } else if (this.accordion) {\n this._variant = this.accordion.variant;\n }\n }\n\n @Watch(\"open\")\n async openWatcher(newValue: boolean) {\n if (!this.bodyElement) {\n return;\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 /** Show accordion item content */\n @Method()\n async show() {\n if (this.open || this.disabled) {\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 || this.disabled) {\n return;\n }\n\n this.toggledByMethod = true;\n this.open = false;\n return waitForEvent(this.element, \"stzhClosed\");\n }\n\n /** Toggle accordion item content */\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 /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhAccordionItemFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhAccordionItemBlurEvent>;\n\n @Listen(\"keydown\", { target: \"document\", capture: true })\n handleKeydown(event: KeyboardEvent) {\n if (event.key === \"Shift\") {\n this.shiftPressed = true;\n }\n }\n\n @Listen(\"keyup\", { target: \"document\", capture: true })\n handleKeyup(event: KeyboardEvent) {\n if (event.key === \"Shift\") {\n this.shiftPressed = false;\n }\n }\n\n @State() rootTabindex: number = 0;\n @State() _variant: StzhAccordionVariant;\n\n private toggledByMethod: boolean = false;\n private bodyElement: HTMLDivElement;\n // @ts-ignore\n private buttonElement: HTMLButtonElement;\n private iconWrapperElement: HTMLDivElement;\n private accordionItemId: string;\n private accordion: HTMLStzhAccordionElement;\n // @ts-ignore\n private focusedByInput: boolean = false;\n private shiftPressed: boolean = false;\n\n private handleVariantChange = (_event: CustomEvent<StzhAccordionVariantChangeEvent>) => {\n this.variantWatcher(this.variant);\n };\n\n private handleHeaderClick = () => {\n if (typeof this.collapsible !== \"undefined\") {\n if (this.collapsible) {\n this.toggle();\n } else if (!this.open) {\n this.show();\n }\n } else if (!this.accordion || this.accordion.collapsible) {\n this.toggle();\n } else if (!this.open) {\n this.show();\n }\n };\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n if (this.shiftPressed) {\n // user presses currently shift\n this.rootTabindex = -1;\n }\n\n this.stzhFocus.emit({\n component: \"stzh-accordion-item\",\n originalEvent: event,\n });\n };\n\n private onBlur = (event: FocusEvent) => {\n this.rootTabindex = 0;\n\n this.stzhBlur.emit({\n component: \"stzh-accordion-item\",\n originalEvent: event,\n });\n };\n\n private onButtonKeydown = (event: KeyboardEvent) => {\n let action = null;\n\n if (event.key === \"ArrowDown\") {\n action = \"next\";\n } else if (event.key === \"ArrowUp\") {\n action = \"prev\";\n } else if (event.key === \"Home\") {\n action = \"first\";\n } else if (event.key === \"End\") {\n action = \"last\";\n } else if (event.key === \"PageDown\" && event.ctrlKey) {\n action = \"next\";\n } else if (event.key === \"PageUp\" && event.ctrlKey) {\n action = \"prev\";\n }\n\n if (event.key === \"Shift\") {\n this.rootTabindex = -1;\n }\n\n if (action) {\n event.preventDefault();\n this.accordion.setItemFocus(this.element, action);\n }\n };\n\n private onContentKeydown = (event: KeyboardEvent) => {\n if (!event.ctrlKey) {\n return;\n }\n\n let action = null;\n\n if (event.key === \"PageDown\") {\n action = \"next\";\n } else if (event.key === \"PageUp\") {\n action = \"prev\";\n }\n\n if (action) {\n event.preventDefault();\n this.accordion.setItemFocus(this.element, action);\n }\n };\n\n componentWillLoad() {\n this.accordionItemId = `stzh-accordion-item-${accordionItemCounter++}`;\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\n async connectedCallback() {\n this.accordion = this.element.closest(\"stzh-accordion\");\n\n if (this.accordion) {\n this.accordion.addEventListener(\"stzhVariantChange\", this.handleVariantChange);\n }\n\n this.variantWatcher(this.variant);\n }\n\n disconnectedCallback() {\n if (this.accordion) {\n this.accordion.removeEventListener(\"stzhVariantChange\", this.handleVariantChange);\n this.accordion = null;\n }\n }\n\n render() {\n let hasIcon = hasSlot(this.element, \"icon\") || !!this.icon;\n if (this.iconWrapperElement) {\n hasIcon = hasSlot(this.iconWrapperElement, \"icon\") || !!this.icon;\n }\n\n const Heading = `h${this.headingLevel}`;\n const classes = {\n \"stzh-accordion-item\": true,\n \"stzh-accordion-item--has-icon\": hasIcon,\n \"stzh-accordion-item--has-description\": !!this.description,\n \"stzh-accordion-item--has-subtitle\": !!this.subtitle,\n \"stzh-accordion-item--is-open\": this.open,\n \"stzh-accordion-item--is-disabled\": this.disabled,\n [`stzh-accordion-item--${this._variant}`]: !!this._variant,\n };\n\n return (\n <Host tabindex={this.disabled ? null : this.rootTabindex} is-variant={this._variant}>\n <div class={classes}>\n <Heading\n id={`${this.accordionItemId}-header`}\n class=\"stzh-accordion-item__heading\"\n onClick={this.handleHeaderClick}\n >\n <button\n ref={el => (this.buttonElement = el as HTMLButtonElement)}\n class=\"stzh-accordion-item__button\"\n aria-controls={`${this.accordionItemId}-content`}\n aria-expanded={`${this.open ? \"true\" : \"false\"}`}\n disabled={this.disabled}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n onKeyDown={this.onButtonKeydown}\n type=\"button\"\n s-object-id={this.analyticsId || this.heading}\n >\n <span\n class=\"stzh-accordion-item__icon-wrapper\"\n ref={el => (this.iconWrapperElement = el as HTMLDivElement)}\n >\n {this.icon ? (\n <stzh-icon class=\"stzh-accordion-item__icon\" name={this.icon}></stzh-icon>\n ) : (\n <slot name=\"icon\"></slot>\n )}\n </span>\n <span class=\"stzh-accordion-item__button-text\">\n <span class=\"stzh-accordion-item__subtitle\">{this.subtitle}</span>\n <span class=\"stzh-accordion-item__heading-text\">{this.heading}</span>\n <span class=\"stzh-accordion-item__description\">{this.description}</span>\n </span>\n {this._variant === \"table\" ? (\n <stzh-icon name=\"angle-down\" class=\"stzh-accordion-item__button-icon is-table\"></stzh-icon>\n ) : (\n <span class=\"stzh-accordion-item__button-icon is-default\"></span>\n )}\n\n {(this.badge || this.badgeEmpty) && (\n <stzh-badge class=\"stzh-accordion-item__badge\" label={this.badge} type={this.badgeType}></stzh-badge>\n )}\n </button>\n </Heading>\n <div\n id={`${this.accordionItemId}-content`}\n ref={el => (this.bodyElement = el as HTMLDivElement)}\n class=\"stzh-accordion-item__content\"\n aria-labelledby={`${this.accordionItemId}-header`}\n role=\"region\"\n onKeyDown={this.onContentKeydown}\n >\n <div class=\"stzh-accordion-item__content-inner\">\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n",":host {\n --justify-content: inherit;\n --padding-left: calc(#{$formInputHeight} + #{space('medium')});\n\n/* The width property is deprecated. It will be removed with the next major release (breaking change)\n &[width=full] {\n --justify-content: space-between;\n --padding-left: 0;\n }\n*/\n}\n\n.stzh-pagination {\n position: relative;\n display: flex;\n align-items: center;\n gap: space('medium');\n padding-left: var(--padding-left);\n justify-content: var(--justify-content);\n\n &__input {\n --text-align: center;\n --input-width: #{$formInputHeight};\n --padding-top: 0px;\n --padding-bottom: 0px;\n --padding-left: 0px;\n --padding-right: 0px;\n\n position: absolute;\n top: 0;\n left: 0;\n }\n\n &__total {\n @include fontSize('nano');\n color: $colorGrey70;\n }\n\n &--size-small {\n padding-left: calc(#{$formInputHeightSmall} + #{space('medium')});\n }\n\n &--size-small &__input {\n --input-width: #{$formInputHeightSmall};\n }\n}\n","import { Component, Element, Event, EventEmitter, Fragment, h, Host, Method, Prop } from \"@stencil/core\";\n\nimport { StzhInputChangeEvent, StzhPaginationChangeEvent } from \"../../index\";\n\nimport { StzhPaginationLocalizedText } from \"./stzh-pagination.localization\";\n\n/**\n */\n@Component({\n tag: \"stzh-pagination\",\n styleUrl: \"stzh-pagination.scss\",\n scoped: true,\n})\nexport class StzhPagination {\n /** Total pages available. */\n @Prop() total: number = 1;\n\n /** Name of the hidden date picker input. */\n @Prop({ reflect: true }) name: string = \"\";\n\n /** Current page. */\n @Prop({ mutable: true }) value: number = 1;\n\n /** Label for dropdown */\n @Prop() label: string = \"\";\n\n /** Whether label is 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 /** Whether the current page is mutable via input */\n @Prop({ reflect: true }) allowManualInput: boolean = true;\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 /** Size variant */\n @Prop({ reflect: true }) size: \"default\" | \"small\" = \"default\";\n\n /** Width variant. This property is deprecated. It will be removed with the next major release (breaking change) */\n @Prop({ reflect: true }) width: \"default\" | \"full\" = \"default\";\n\n /** Id of the element which describes the input */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Translation strings. */\n @Prop() localization: StzhPaginationLocalizedText;\n\n /** Pagination change event */\n @Event() stzhChange: EventEmitter<StzhPaginationChangeEvent>;\n\n @Element() element: HTMLStzhPaginationElement;\n\n /** Set current page to previous */\n @Method()\n async prev() {\n this.gotoPage(this.value - 1);\n }\n\n /** Set current page to next */\n @Method()\n async next() {\n this.gotoPage(this.value + 1);\n }\n\n private input: HTMLStzhInputElement;\n\n private gotoPage = (newPage: number) => {\n const previous = this.value;\n\n if (newPage >= 1 && newPage <= this.total) {\n this.value = newPage;\n } else if (newPage > this.total) {\n this.value = this.total;\n } else {\n this.value = 1;\n }\n\n if (previous !== this.value) {\n this.stzhChange.emit({\n component: \"stzh-pagination\",\n page: Number(this.value),\n });\n }\n };\n\n private onRootFocus = () => {\n if (this.input) {\n this.input.focus();\n }\n };\n\n private onInputChange = (event: CustomEvent<StzhInputChangeEvent>) => {\n const newPage = Number(event.detail.value) || 1;\n this.gotoPage(newPage);\n };\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"pagination\");\n }\n }\n\n render() {\n const classes = {\n \"stzh-pagination\": true,\n [`stzh-pagination--size-${this.size}`]: !!this.size,\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n {this.allowManualInput ? (\n <Fragment>\n <stzh-input\n class=\"stzh-pagination__input\"\n type=\"number\"\n min={1}\n max={this.total}\n label={this.label || this.localization.label}\n labelHidden={true}\n ref={el => (this.input = el as HTMLStzhInputElement)}\n onStzhChange={this.onInputChange}\n value={this.value?.toString() || \"\"}\n required={this.required}\n disabled={this.disabled}\n description={this.description}\n descriptionLong={this.descriptionLong}\n error={this.error}\n a11yDescribedby={this.a11yDescribedby}\n name={this.name}\n size={this.size}\n invalid={this.invalid}\n hideOptional={true}\n noAutocomplete={true}\n ></stzh-input>\n <div class=\"stzh-pagination__total\">\n {this.localization.totalLabel.replace(/\\{total\\}/gi, this.total.toString())}\n </div>\n </Fragment>\n ) : (\n <div class=\"stzh-pagination__total\">\n {this.value} {this.localization.totalLabel.replace(/\\{total\\}/gi, this.total.toString())}\n </div>\n )}\n <stzh-buttongroup>\n <stzh-button\n variant=\"tertiary\"\n icon=\"angle-left\"\n icon-only\n size={this.size}\n a11yDisabled={this.value <= 1}\n a11yDescribedby={this.a11yDescribedby}\n a11yLabel={`${this.label || this.localization.label}, ${this.localization.prevLabel}, ${\n this.localization.selectedPageLabel\n } ${this.value}`}\n disabled={this.disabled}\n onClick={() => this.prev()}\n ></stzh-button>\n <stzh-button\n variant=\"tertiary\"\n icon=\"angle-right\"\n icon-only\n size={this.size}\n a11yDisabled={this.value >= this.total}\n a11yDescribedby={this.a11yDescribedby}\n a11yLabel={`${this.label || this.localization.label}, ${this.localization.nextLabel}, ${\n this.localization.selectedPageLabel\n } ${this.value}`}\n disabled={this.disabled}\n onClick={() => this.next()}\n ></stzh-button>\n </stzh-buttongroup>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{r as s,c as e,h as t,F as a,a as i,g as r}from"./p-c7bfac7a.js";import{a as h}from"./p-16892790.js";import{r as n,h as l}from"./p-ebd6dda5.js";import{m as c,a as d,r as o}from"./p-10e2901a.js";import{d as m}from"./p-162269b9.js";import"./p-9b063923.js";import"./p-a6d4a8b1.js";const z=':host{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;}:host[hidden],:host[stzh-hidden]{display:none}:host::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}:host *,:host *::before,:host *::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)}:host .has-focus{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}:host .stzh-fylingfocus-focused{outline-style:none !important}:host .stzh-fylingfocus-focused::-moz-focus-inner{border:0 !important}stzh-search{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;--filter-background-color:var(--stzh-search-filter-background-color, var(--stzh-color-grey10));--grid-template-areas:"filters-main filters-main filters-main filters-main" "results results results results"}stzh-search[hidden],stzh-search[stzh-hidden]{display:none}stzh-search::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}stzh-search *,stzh-search *::before,stzh-search *::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)}stzh-search .has-focus{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}stzh-search .stzh-fylingfocus-focused{outline-style:none !important}stzh-search .stzh-fylingfocus-focused::-moz-focus-inner{border:0 !important}@media screen and (min-width: 900px){stzh-search{--grid-template-areas:"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main" "results results results results results results results results"}}@media screen and (min-width: 1260px){stzh-search{--grid-template-areas:"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main" ". . results results results results results results results results . ."}}stzh-search:where([has-aside-filters]:not([hide-aside-filters]:not([hide-aside-filters=false]))){--grid-template-areas:"filters-main filters-main filters-main filters-main" "filters-aside filters-aside filters-aside filters-aside" "results results results results"}@media screen and (min-width: 900px){stzh-search:where([has-aside-filters]:not([hide-aside-filters]:not([hide-aside-filters=false]))){--grid-template-areas:"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main" "filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside" "results results results results results results results results"}}@media screen and (min-width: 1260px){stzh-search:where([has-aside-filters]:not([hide-aside-filters]:not([hide-aside-filters=false]))){--grid-template-areas:"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main" "filters-aside filters-aside filters-aside filters-aside results results results results results results results results"}}@media screen and (min-width: 1260px){stzh-search:where([variant=teaser]:not([has-aside-filters])),stzh-search:where([fullwidth=true]:not([has-aside-filters])){--grid-template-areas:"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main" "results results results results results results results results results results results results"}}.stzh-search{column-gap:var(--stzh-grid-gutter);display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));grid-template-areas:var(--grid-template-areas);}@media screen and (min-width: 600px){.stzh-search{column-gap:var(--stzh-grid-gutter-small)}}@media screen and (min-width: 900px){.stzh-search{column-gap:var(--stzh-grid-gutter-medium)}}@media screen and (min-width: 1260px){.stzh-search{column-gap:var(--stzh-grid-gutter-large)}}@media screen and (min-width: 1600px){.stzh-search{column-gap:var(--stzh-grid-gutter-ultra)}}@media screen and (min-width: 900px){.stzh-search{grid-template-columns:repeat(8, minmax(0, 1fr))}}@media screen and (min-width: 1260px){.stzh-search{grid-template-columns:repeat(12, minmax(0, 1fr))}}.stzh-search__header-heading{margin-bottom:var(--stzh-space-xsmall)}@media screen and (min-width: 600px){.stzh-search__header-heading{margin-bottom:var(--stzh-space-small)}}@media screen and (min-width: 900px){.stzh-search__header-heading{margin-bottom:var(--stzh-space-medium)}}@media screen and (min-width: 1260px){.stzh-search__header-heading{margin-bottom:var(--stzh-space-xlarge)}}.stzh-search__filters-main{grid-area:filters-main}.stzh-search__filters-main:not(:empty){padding:var(--stzh-space-large);background-color:var(--filter-background-color)}@media screen and (min-width: 600px){.stzh-search__filters-main:not(:empty){padding:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__filters-main:not(:empty){padding:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search__filters-main:not(:empty){padding:var(--stzh-space-xxxlarge)}}.stzh-search__filters-aside{grid-area:filters-aside}.stzh-search__filters-aside:not(:empty){padding:var(--stzh-space-large);background-color:var(--filter-background-color)}@media screen and (min-width: 600px){.stzh-search__filters-aside:not(:empty){padding:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__filters-aside:not(:empty){padding:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search__filters-aside:not(:empty){padding:var(--stzh-space-xxxlarge)}}@media screen and (min-width: 1260px){.stzh-search__filters-aside:not(:empty){background-color:transparent;padding:0}}.stzh-search__filters-aside-heading{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-h4-default-font-size, var(--stzh-font-milli-font-size));line-height:var(--stzh-font-curve-h4-default-text-line-height, var(--stzh-font-milli-text-line-height));letter-spacing:var(--stzh-font-curve-h4-default-text-letter-spacing);padding-bottom:var(--stzh-space-xxsmall);color:var(--stzh-color-primary70);display:none}@media screen and (min-width: 600px){.stzh-search__filters-aside-heading{font-size:var(--stzh-font-curve-h4-small-font-size, var(--stzh-font-centi-font-size));line-height:var(--stzh-font-curve-h4-small-text-line-height, var(--stzh-font-centi-text-line-height));letter-spacing:var(--stzh-font-curve-h4-small-text-letter-spacing)}}@media screen and (min-width: 1260px){.stzh-search__filters-aside-heading{font-size:var(--stzh-font-curve-h4-large-font-size, var(--stzh-font-deci-font-size));line-height:var(--stzh-font-curve-h4-large-text-line-height, var(--stzh-font-deci-text-line-height));letter-spacing:var(--stzh-font-curve-h4-large-text-letter-spacing)}}@media screen and (min-width: 1600px){.stzh-search__filters-aside-heading{font-size:var(--stzh-font-curve-h4-ultra-font-size, var(--stzh-font-deca-font-size));line-height:var(--stzh-font-curve-h4-ultra-text-line-height, var(--stzh-font-deca-text-line-height));letter-spacing:var(--stzh-font-curve-h4-ultra-text-letter-spacing, var(--stzh-font-deca-text-letter-spacing))}}@media screen and (min-width: 900px){.stzh-search__filters-aside-heading{padding-bottom:var(--stzh-space-xsmall)}}@media screen and (min-width: 1260px){.stzh-search__filters-aside-heading{padding-bottom:var(--stzh-space-small)}}@media screen and (min-width: 1260px){.stzh-search__filters-aside-heading{display:block}}@media screen and (min-width: 1260px){.stzh-search stzh-button.stzh-search__filters-aside-details-trigger{display:none}}@media screen and (min-width: 1260px){.stzh-search__filters-aside-inner{position:sticky;top:calc(var(--stzh-header-metabar-height, 0px) * var(--stzh-header-is-stuck, 0) + var(--stzh-space-medium));transition:top var(--stzh-base-transition-animation-speed);width:calc(100% + var(--stzh-grid-gutter-large) - var(--stzh-space-xxxxlarge))}}@media screen and (min-width: 1600px){.stzh-search__filters-aside-inner{width:calc(100% + var(--stzh-grid-gutter-ultra) - var(--stzh-space-xxxxlarge))}}.stzh-search__results-wrapper{grid-area:results;display:grid;--stzh-datalist-grid-template-areas:"list list list list list list list list"}.stzh-search__results-header{display:flex;flex-direction:column}@media screen and (min-width: 900px){.stzh-search__results-header{flex-direction:row;align-items:center}}.stzh-search__results-sort{display:flex}.stzh-search__results-heading,.stzh-search__results-empty,.stzh-search__results,.stzh-search__action-more{transition-property:opacity;transition-duration:var(--stzh-base-transition-animation-speed)}.stzh-search__results-text,.stzh-search__results-sort,.stzh-search__results-subscribe{margin-bottom:var(--stzh-space-medium)}@media screen and (min-width: 600px){.stzh-search__results-text,.stzh-search__results-sort,.stzh-search__results-subscribe{margin-bottom:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-search__results-text,.stzh-search__results-sort,.stzh-search__results-subscribe{margin-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 1260px){.stzh-search__results-text,.stzh-search__results-sort,.stzh-search__results-subscribe{margin-bottom:var(--stzh-space-xxlarge)}}.stzh-search__results-heading{margin-bottom:var(--stzh-space-xsmall)}@media screen and (min-width: 600px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-small)}}@media screen and (min-width: 900px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-medium)}}@media screen and (min-width: 1260px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-medium)}}@media screen and (min-width: 900px) and (min-width: 600px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-large)}}@media screen and (min-width: 900px) and (min-width: 900px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px) and (min-width: 1260px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-xxlarge)}}.stzh-search__results-item{display:contents}.stzh-search__actions-wrapper{display:flex;justify-content:center}.stzh-search__actions-wrapper:not(:empty){margin-top:var(--stzh-space-large)}@media screen and (min-width: 600px){.stzh-search__actions-wrapper:not(:empty){margin-top:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__actions-wrapper:not(:empty){margin-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search__actions-wrapper:not(:empty){margin-top:var(--stzh-space-xxxlarge)}}.stzh-search__empty-text{margin-bottom:var(--stzh-space-medium)}@media screen and (min-width: 600px){.stzh-search__empty-text{margin-bottom:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-search__empty-text{margin-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 1260px){.stzh-search__empty-text{margin-bottom:var(--stzh-space-xxlarge)}}.stzh-search__loader{margin-top:var(--stzh-space-large)}@media screen and (min-width: 600px){.stzh-search__loader{margin-top:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__loader{margin-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search__loader{margin-top:var(--stzh-space-xxxlarge)}}.stzh-search__filters-main-chips{margin-top:var(--stzh-space-large)}@media screen and (min-width: 600px){.stzh-search__filters-main-chips{margin-top:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__filters-main-chips{margin-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search__filters-main-chips{margin-top:var(--stzh-space-xxxlarge)}}.stzh-search--teaser .stzh-search__actions-wrapper{justify-content:flex-start}@media screen and (max-width: 1259px){.stzh-search--has-results-shown .stzh-search__results-wrapper{margin-top:var(--stzh-space-xxxxlarge)}}@media screen and (max-width: 1259px) and (min-width: 600px){.stzh-search--has-results-shown .stzh-search__results-wrapper{margin-top:var(--stzh-space-big)}}@media screen and (max-width: 1259px) and (min-width: 900px){.stzh-search--has-results-shown .stzh-search__results-wrapper{margin-top:var(--stzh-space-big)}}@media screen and (max-width: 1259px) and (min-width: 1260px){.stzh-search--has-results-shown .stzh-search__results-wrapper{margin-top:var(--stzh-space-huge)}}@media screen and (min-width: 1260px){.stzh-search--has-results-shown .stzh-search__filters-main,.stzh-search--has-filters-aside .stzh-search__filters-main{margin-bottom:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px) and (min-width: 900px){.stzh-search--has-results-shown .stzh-search__filters-main,.stzh-search--has-filters-aside .stzh-search__filters-main{margin-bottom:var(--stzh-space-xxxlarge)}}@media screen and (min-width: 1260px) and (min-width: 1260px){.stzh-search--has-results-shown .stzh-search__filters-main,.stzh-search--has-filters-aside .stzh-search__filters-main{margin-bottom:var(--stzh-space-xxxxlarge)}}@media screen and (max-width: 1259px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__results-wrapper{margin-top:var(--stzh-space-large)}}@media screen and (max-width: 1259px) and (min-width: 600px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__results-wrapper{margin-top:var(--stzh-space-xlarge)}}@media screen and (max-width: 1259px) and (min-width: 900px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__results-wrapper{margin-top:var(--stzh-space-xxlarge)}}@media screen and (max-width: 1259px) and (min-width: 1260px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__results-wrapper{margin-top:var(--stzh-space-xxxlarge)}}@media screen and (min-width: 1260px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__filters-main,.stzh-search--has-filters-aside.stzh-search--teaser .stzh-search__filters-main{margin-bottom:var(--stzh-space-large)}}@media screen and (min-width: 1260px) and (min-width: 600px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__filters-main,.stzh-search--has-filters-aside.stzh-search--teaser .stzh-search__filters-main{margin-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 1260px) and (min-width: 900px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__filters-main,.stzh-search--has-filters-aside.stzh-search--teaser .stzh-search__filters-main{margin-bottom:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px) and (min-width: 1260px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__filters-main,.stzh-search--has-filters-aside.stzh-search--teaser .stzh-search__filters-main{margin-bottom:var(--stzh-space-xxxlarge)}}.stzh-search--has-filters-main.stzh-search--has-filters-aside .stzh-search__filters-main:not(:empty){padding-bottom:var(--stzh-space-medium)}@media screen and (min-width: 600px){.stzh-search--has-filters-main.stzh-search--has-filters-aside .stzh-search__filters-main:not(:empty){padding-bottom:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-search--has-filters-main.stzh-search--has-filters-aside .stzh-search__filters-main:not(:empty){padding-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 1260px){.stzh-search--has-filters-main.stzh-search--has-filters-aside .stzh-search__filters-main:not(:empty){padding-bottom:var(--stzh-space-xxlarge)}}.stzh-search--has-filters-main.stzh-search--has-filters-aside .stzh-search__filters-aside:not(:empty){padding-top:0px}.stzh-search--has-hidden-main-filters .stzh-search__filters-main{display:none}.stzh-search--has-hidden-aside-filters .stzh-search__filters-aside{display:none}.stzh-search--has-hidden-main-filters .stzh-search__results-wrapper,.stzh-search--has-hidden-main-filters.stzh-search--teaser .stzh-search__results-wrapper{margin-top:0px}.stzh-search--is-loading .stzh-search__results-heading,.stzh-search--is-loading .stzh-search__results-sort,.stzh-search--is-loading .stzh-search__results-empty,.stzh-search--is-loading .stzh-search__results,.stzh-search--is-loading .stzh-search__action-more{opacity:0.5}.stzh-search--is-breakout{--filter-background-color:var(--stzh-color-cobaltblue20);background-color:var(--stzh-color-white)}.stzh-search--is-breakout .stzh-search{padding-left:1.25rem;padding-right:1.25rem}@media screen and (min-width: 600px){.stzh-search--is-breakout .stzh-search{padding-left:2rem;padding-right:2rem}}@media screen and (min-width: 900px){.stzh-search--is-breakout .stzh-search{padding-left:2.5rem;padding-right:2.5rem}}@media screen and (min-width: 1260px){.stzh-search--is-breakout .stzh-search{padding-left:4rem;padding-right:4rem}}@media screen and (min-width: 1600px){.stzh-search--is-breakout .stzh-search{padding-left:calc((100vw - 84.25rem) / 2);padding-right:calc((100vw - 84.25rem) / 2)}}.stzh-search--is-breakout .stzh-search__header-wrapper{background-color:var(--stzh-color-cobaltblue20)}.stzh-search--is-breakout .stzh-search__filters-main{padding-left:1.25rem;padding-right:1.25rem;position:relative;left:50%;right:50%;margin-left:calc(-50vw + var(--stzh-scrollbar-width) / 2);margin-right:calc(-50vw + var(--stzh-scrollbar-width) / 2);width:calc(100vw - var(--stzh-scrollbar-width));max-width:calc(100vw - var(--stzh-scrollbar-width))}@media screen and (min-width: 600px){.stzh-search--is-breakout .stzh-search__filters-main{padding-left:2rem;padding-right:2rem}}@media screen and (min-width: 900px){.stzh-search--is-breakout .stzh-search__filters-main{padding-left:2.5rem;padding-right:2.5rem}}@media screen and (min-width: 1260px){.stzh-search--is-breakout .stzh-search__filters-main{padding-left:4rem;padding-right:4rem}}@media screen and (min-width: 1600px){.stzh-search--is-breakout .stzh-search__filters-main{padding-left:calc((100vw - 84.25rem) / 2);padding-right:calc((100vw - 84.25rem) / 2)}}.stzh-search--is-breakout .stzh-search__header{margin-left:1.25rem;margin-right:1.25rem;padding-top:var(--stzh-space-large);background-color:var(--stzh-color-cobaltblue20);display:flex;justify-content:space-between}@media screen and (min-width: 600px){.stzh-search--is-breakout .stzh-search__header{margin-left:2rem;margin-right:2rem}}@media screen and (min-width: 900px){.stzh-search--is-breakout .stzh-search__header{margin-left:2.5rem;margin-right:2.5rem}}@media screen and (min-width: 1260px){.stzh-search--is-breakout .stzh-search__header{margin-left:4rem;margin-right:4rem}}@media screen and (min-width: 1600px){.stzh-search--is-breakout .stzh-search__header{margin-left:auto;margin-right:auto;max-width:84.25rem}}@media screen and (min-width: 600px){.stzh-search--is-breakout .stzh-search__header{padding-top:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search--is-breakout .stzh-search__header{padding-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search--is-breakout .stzh-search__header{padding-top:var(--stzh-space-xxxlarge)}}';function p(s,e){return`\n <stzh-card-${s.variant==="teaser"?"superteaser":"searchresult"}\n href="{href}"\n dateline="{dateline}"\n tag="{tag}"\n topic="{topic}"\n service="{service}"\n event-location="{eventLocation}"\n hyphens-enabled="${this.hyphensEnabled}"\n ${e.eventDateStart&&'event-date-start="{eventDateStart}"'}\n ${e.eventDateEnd&&'event-date-end="{eventDateEnd}"'}\n download-heading="{downloadHeading}"\n meta='{meta}'\n breadcrumb-items='{breadcrumbItems}'\n download-meta='{downloadMeta}'\n datalist-items='{datalistItems}'\n ${e.imagePosition&&'image-position="{imagePosition}"'}\n ${e.download&&'download="{download}"'}\n style="\n ${e.serviceBackgroundColor?"--service-background-color: {serviceBackgroundColor};":""}\n ${e.serviceColor?"--service-color: {serviceColor};":""}\n "\n >\n <div slot="heading">{heading}</div>\n <div slot="description">{description}</div>\n ${e.image?e.imagePosition==="right"?`<img src="${e.image}" slot="image" />`:`<stzh-ratio ${s.variant==="teaser"?'ratio="2:1"':'ratio="21:9" ratio-small="1:1"'} slot="image"><img src="${e.image}" /></stzh-ratio>`:""}\n </stzh-card-${s.variant==="teaser"?"superteaser":"searchresult"}>\n `}function f(s){return{layout:s.variant==="teaser"?"teasers":"searchresults"}}const u=class{constructor(t){s(this,t);this.stzhOverlayCloseClick=e(this,"stzhOverlayCloseClick",7);this._sortOptions=[];this._showMoreLink=false;this.fetch=async(s=false,e=false)=>{var t,a;this.loading=true;this.error="";if(this.currentController){this.currentController.abort()}if(!this.hasRequiredParams&&!s){this.loading=false;return}let i=this.api.replace(/\{lang\}/gi,this.localization.$locale);let r=this.limit.toString();this.params.set("offset",s?this.results.length.toString():"0");if(e){const s=new URLSearchParams(location.search).get("search");if(s){const e=new URLSearchParams(s).get("limit");if(e){r=e}}}this.params.set("limit",r);this.currentController=new AbortController;let n={};try{const s=await h(i,{params:this.params,signal:this.currentController.signal});n=s.data}catch(s){this.error=this.localization.error}this.resultsHeading=n.resultsHeading||"";this.resultsText=n.resultsText||"";this.totalCount=((t=n.meta)===null||t===void 0?void 0:t.total)||0;if(n.error){this.error=n.message||this.localization.error}if(n.chipResults&&n.chipResults.length){this.chipResultsHeading=(a=n.chipResultsHeading)!==null&&a!==void 0?a:"";this.chipResults=n.chipResults}else{this.chipResultsHeading="";this.chipResults=[]}if(n.results){if(s){this.results=[...this.results,...n.results.map((s=>{var e;return Object.assign(Object.assign({},s),{html:this.renderResultTemplate(s.html||((e=n.templates)===null||e===void 0?void 0:e.result),s)})}))]}else{this.results=n.results.map((s=>{var e;return Object.assign(Object.assign({},s),{html:this.renderResultTemplate(s.html||((e=n.templates)===null||e===void 0?void 0:e.result),s)})}))}}if(!e&&!this.preventUpdateUrl){const s=new URLSearchParams(location.search);const e=new URLSearchParams(this.params);e.delete("offset");e.set("limit",this.results.length.toString());s.set("search",e.toString());window.history.replaceState(null,"",`${location.pathname}?${s}`)}if(e||!this.firstFetched){this.loading=false}else{window.setTimeout((()=>{this.loading=false}),this.debounceTime)}this.firstFetched=true};this.debouncedFetch=m(this.fetch,this.debounceTime);this.onDropdownSortChange=async s=>{const e=s.target;const t=await e.getValue();if(t){this._sortBy=t}await this.updateParams();this.debouncedFetch()};this.handleMainFilterChange=async()=>{if(this.autofetchMainFilters){await this.updateParams();this.debouncedFetch()}};this.handleAsideFilterChange=async()=>{if(this.autofetchAsideFilters){await this.updateParams();this.debouncedFetch()}};this.handleFormSubmit=async s=>{s.preventDefault();await this.updateParams();this.fetch()};this.handleMoreClick=()=>{this.fetch(true)};this.handleMediaChange=()=>{this.isDetailsOpen=c("large").matches};this.handleFormReset=async()=>{requestAnimationFrame((()=>{requestAnimationFrame((async()=>{await this.updateParams()}))}))};this.localization=undefined;this.variant="default";this.autofetchMainFilters=false;this.autofetchAsideFilters=false;this.hideMainFilters=false;this.hideAsideFilters=false;this.hideResultsHeading=false;this.sortBy=undefined;this.sortOptions=[];this.api="";this.debounceTime=500;this.limit=6;this.initialFetch=false;this.preventUpdateUrl=false;this.hyphensEnabled=false;this.templateResult=p;this.templateResultWrapperElement=function(){return"stzh-cardlist"};this.templateResultWrapperProps=f;this.resultHeadingLevel="3";this.emptyText=undefined;this.heading=undefined;this.emptyLinkHref=undefined;this.emptyLinkLabel=undefined;this.subscribeLabel="Subscribe";this.subscribePath=undefined;this.subscribeAdditionalQueryParameters=undefined;this.totalCount=0;this.loading=false;this.error="";this.results=[];this.chipResultsHeading=undefined;this.chipResults=[];this.resultsHeading=undefined;this.resultsText=undefined;this.hasRequiredParams=false;this.firstFetched=false;this.initiallyFetched=false;this.isDetailsOpen=false;this.isStzhAnchornavVisible=false}totalCountWatcher(){this._showMoreLink=this.totalCount>this.results.length}preventUpdateUrlWatcher(){this.updateParams()}sortOptionsWatcher(s){if(typeof s==="string"){this._sortOptions=JSON.parse(s)}else{this._sortOptions=s}}sortByWatcher(s){if(typeof s==="string"){this._sortBy=s}else{this._sortBy=undefined}}renderResultTemplate(s,e){let t=s||(typeof this.templateResult==="function"?this.templateResult(this.element,e):this.templateResult);["href","heading","dateline","description","image","imagePosition","tag","topic","service","serviceColor","serviceBackgroundColor","meta","breadcrumbItems","eventLocation","eventDateStart","eventDateEnd","download","downloadHeading","downloadMeta","datalistItems"].forEach((s=>{const a=new RegExp(`{${s}}`,"gi");let i=e[s]||"";if(["meta","breadcrumbItems","downloadMeta","datalistItems"].includes(s)&&i){i=JSON.stringify(i)}t=t.replace(a,i)}));return t}async updateParams(s=false){const e=()=>{const s=new FormData(this.formElement);this.params=new URLSearchParams(s);this.params.set("variant",this.variant)};if(s){const s=new URLSearchParams(location.search);let e=s.get("search");const t=s.get("q");const a=s.get("query");if(!e){if(a){e=`query=${a}`}else if(t){e=`q=${t}`}}if(e){this.initialFetch=true;const s=new URLSearchParams(e);[...new Set(s.keys())].forEach((e=>{const t=s.getAll(e);const a=Array.from(document.querySelectorAll(`:where(stzh-input,stzh-radiogroup,stzh-chipselect,stzh-amount,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[name="${e}"]`));const i=Array.from(document.querySelectorAll(`:where(stzh-checkboxgroup)[name="${e}"]`));const r=Array.from(document.querySelectorAll(`:where(stzh-dropdown)[name="${e}"]`));a.forEach((s=>{s.value=t[0]}));i.forEach((s=>{s.value=t}));r.forEach((s=>{s.items=t}))}))}}await n();e();let t=true;const a=Array.from(this.element.querySelectorAll(":where(stzh-input)[required]"));const i=Array.from(this.element.querySelectorAll(":where(stzh-dropdown)[required]"));const r=Array.from(this.element.querySelectorAll(":where(stzh-monthyearpicker)[required]"));const h=Array.from(this.element.querySelectorAll(":where(stzh-amount,stzh-radiogroup,stzh-chipselect,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[required]"));const l=Array.from(this.element.querySelectorAll(":where(stzh-checkbox)[required]"));l.forEach((e=>{const a=!e.checked;if(!s){e.invalid=a}if(a){t=false}}));a.forEach((e=>{const a=e.value===""||e.minlength&&e.minlength>e.value.length||e.maxlength&&e.maxlength<e.value.length;if(!s){e.invalid=a}if(a){t=false}}));i.forEach((e=>{const a=e.items.length===0;if(!s){e.invalid=a}if(a){t=false}}));h.forEach((e=>{const a=e.value.toString().length===0;if(!s){e.invalid=a}if(a){t=false}}));r.forEach((e=>{const a=e.value.toString().length===0;if(!s){e.invalidYear=a;e.invalidMonth=a}if(a){t=false}}));this.hasRequiredParams=t}async componentDidLoad(){this.isStzhAnchornavVisible=document.documentElement.style.getPropertyValue("--stzh-anchornav-is-visible")==="1";await this.updateParams(true);if(this.initialFetch){await this.fetch(false,true);this.initiallyFetched=true}else{this.initiallyFetched=true}}async componentWillLoad(){if(!this.localization){this.localization=await window.stzhComponents.utils.fetchTranslations(this.element,"search")}this.isStzhAnchornavVisible=document.documentElement.style.getPropertyValue("--stzh-anchornav-is-visible")==="1";this.sortOptionsWatcher(this.sortOptions);this.sortByWatcher(this.sortBy)}connectedCallback(){d(this.handleMediaChange);this.handleMediaChange()}disconnectedCallback(){o(this.handleMediaChange)}renderResultsText(){return t("stzh-text",{class:"stzh-search__results-text",color:"primary",innerHTML:this.resultsText})}renderSubscribeButton(){const s=new URLSearchParams;let e=this.subscribeAdditionalQueryParameters;if(typeof this.subscribeAdditionalQueryParameters==="string"){try{e=JSON.parse(this.subscribeAdditionalQueryParameters)}catch(s){}}for(const t of e){for(const[e,a]of Object.entries(t)){if(a){s.set(e,a)}}}const a=new URLSearchParams(window.location.search);const i=a.get("search");if(i){const e=new URLSearchParams(i);for(const[t,a]of e.entries()){if(["variant","limit"].indexOf(t)===-1&&a){s.append(t,a)}}}const r=`${this.subscribePath}?${s.toString()}`;return t("div",{class:"stzh-search__results-subscribe"},t("stzh-button",{variant:"secondary",size:"small",href:r},this.subscribeLabel))}render(){const s=l(this.element,"filters-main");const e=l(this.element,"filters-aside");let r=true;if(s){const s=this.element.querySelector("[slot='filters-main'] stzh-chipselect");const e=this.element.querySelector("[slot='filters-main'] stzh-chipgroup");if(!s&&!e){r=false}}else{r=false}const h=(this.hasRequiredParams||this.firstFetched)&&this.firstFetched&&this.initiallyFetched;const n={"stzh-search":true,"stzh-search--has-filters-main":s,"stzh-search--has-filters-aside":e,"stzh-search--has-hidden-main-filters":this.hideMainFilters,"stzh-search--has-hidden-aside-filters":this.hideAsideFilters,"stzh-search--has-results-shown":h,"stzh-search--has-error-shown":!!this.error,"stzh-search--is-loading":this.loading,[`stzh-search--${this.variant}`]:!!this.variant};const c=typeof this.templateResultWrapperElement==="function"?this.templateResultWrapperElement(this.element):this.templateResultWrapperElement;const d=typeof this.templateResultWrapperProps==="function"?this.templateResultWrapperProps(this.element):this.templateResultWrapperProps;return t(i,{"has-aside-filters":e,fullwidth:this.isStzhAnchornavVisible.toString()},t("form",{ref:s=>this.formElement=s,novalidate:true,class:n,onSubmit:this.handleFormSubmit,onReset:this.handleFormReset},t("div",{class:"stzh-search__filters-main",onStzhChange:this.handleMainFilterChange},!!this.heading&&t("stzh-heading",{class:"stzh-search__header-heading",curve:"h2"},this.heading),t("slot",{name:"filters-main"}),!r&&this.chipResults.length>0&&t("div",{class:"stzh-search__filters-main-chips"},this.chipResultsHeading&&t("stzh-text",{font:"heavy",size:"milli",color:"primary"},this.chipResultsHeading),this.chipResults[0].options?t("stzh-chipgroup",null,this.chipResults.map((s=>t("stzh-dropdown",{label:s.label,name:s.value,variant:"filter","no-search":true,"hide-optional":true,inline:true,options:s.options})))):t("stzh-chipselect",{multiple:true,name:"subject",label:this.chipResultsHeading,"label-hidden":true,data:this.chipResults.map((s=>({label:s.label,value:s.value,counter:`${s.amount}`,variant:"filter",size:"small"})))}))),e&&t(a,null,t("div",{class:"stzh-search__filters-aside",onStzhChange:this.handleAsideFilterChange},t("div",{class:"stzh-search__filters-aside-inner"},t("div",{class:"stzh-search__filters-aside-heading"},this.localization.moreFilter),t("stzh-details",{open:this.isDetailsOpen,class:"stzh-search__filters-aside-details"},t("stzh-button",{class:"stzh-search__filters-aside-details-trigger",variant:"tertiary-plain",size:"small",noPaddingLeft:true,showToggleIcon:true,iconPosition:"right",label:this.localization.moreFilter}),t("div",{slot:"content"},t("slot",{name:"filters-aside"})))))),t("div",{class:"stzh-search__results-wrapper"},h&&t(a,null,this.results.length===0?t(a,null,this.variant!=="teaser"&&this.resultsHeading&&!this.hideResultsHeading&&t("stzh-heading",{class:"stzh-search__results-heading",curve:"h3",level:this.resultHeadingLevel,innerHTML:this.resultsHeading}),this.resultsText&&this.renderResultsText(),this.subscribePath&&this.renderSubscribeButton(),this.emptyText&&t("stzh-text",{class:"stzh-search__empty-text",innerHTML:this.emptyText}),this.emptyLinkLabel&&this.emptyLinkHref&&t("div",{class:"stzh-search__empty-link-wrapper"},t("stzh-link",{href:this.emptyLinkHref,label:this.emptyLinkLabel}))):t(a,null,t("div",{class:"stzh-search__results-header"},this.variant!=="teaser"&&this.resultsHeading&&!this.hideResultsHeading&&t("stzh-heading",{class:"stzh-search__results-heading",curve:"h3",level:this.resultHeadingLevel,htmlContent:this.resultsHeading}),this._sortOptions.length>0&&t("div",{class:"stzh-search__results-sort"},t("stzh-dropdown",{"hide-optional":true,inline:true,"no-search":true,"no-wrap":true,class:"stzh-search__results-sort-dropdown",variant:"plain",size:"small",sizeMedium:"tiny",name:"sortby",items:[this._sortBy],options:this._sortOptions,onStzhChange:this.onDropdownSortChange}))),this.resultsText&&this.renderResultsText(),this.subscribePath&&this.renderSubscribeButton(),t(c,Object.assign({class:"stzh-search__results","max-3-columns":e},d),this.results.map((s=>t("div",{class:"stzh-search__results-item",innerHTML:s.html||""})))),t("div",{class:"stzh-search__actions-wrapper"},this._showMoreLink&&t("stzh-button",{variant:"secondary",class:"stzh-search__action-more",label:this.localization.showMore,onClick:this.handleMoreClick,disabled:this.loading,a11yDisabled:this.loading})))),this.error&&t("div",{class:"stzh-search__error"},t("stzh-message",{type:"error",label:this.error})),this.loading&&t("stzh-loader",{class:"stzh-search__loader"})),t("slot",null)))}get element(){return r(this)}static get watchers(){return{totalCount:["totalCountWatcher"],results:["totalCountWatcher"],preventUpdateUrl:["preventUpdateUrlWatcher"],sortOptions:["sortOptionsWatcher"],sortBy:["sortByWatcher"]}}};u.style=z;export{u as stzh_search};
2
- //# sourceMappingURL=p-7b2bd184.entry.js.map
1
+ import{r as s,c as e,h as t,F as a,a as i,g as r}from"./p-c7bfac7a.js";import{a as h}from"./p-345a1e99.js";import{r as n,h as l}from"./p-ebd6dda5.js";import{m as c,a as d,r as o}from"./p-10e2901a.js";import{d as m}from"./p-162269b9.js";import"./p-9b063923.js";import"./p-a6d4a8b1.js";const z=':host{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;}:host[hidden],:host[stzh-hidden]{display:none}:host::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}:host *,:host *::before,:host *::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)}:host .has-focus{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}:host .stzh-fylingfocus-focused{outline-style:none !important}:host .stzh-fylingfocus-focused::-moz-focus-inner{border:0 !important}stzh-search{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;--filter-background-color:var(--stzh-search-filter-background-color, var(--stzh-color-grey10));--grid-template-areas:"filters-main filters-main filters-main filters-main" "results results results results"}stzh-search[hidden],stzh-search[stzh-hidden]{display:none}stzh-search::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}stzh-search *,stzh-search *::before,stzh-search *::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)}stzh-search .has-focus{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}stzh-search .stzh-fylingfocus-focused{outline-style:none !important}stzh-search .stzh-fylingfocus-focused::-moz-focus-inner{border:0 !important}@media screen and (min-width: 900px){stzh-search{--grid-template-areas:"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main" "results results results results results results results results"}}@media screen and (min-width: 1260px){stzh-search{--grid-template-areas:"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main" ". . results results results results results results results results . ."}}stzh-search:where([has-aside-filters]:not([hide-aside-filters]:not([hide-aside-filters=false]))){--grid-template-areas:"filters-main filters-main filters-main filters-main" "filters-aside filters-aside filters-aside filters-aside" "results results results results"}@media screen and (min-width: 900px){stzh-search:where([has-aside-filters]:not([hide-aside-filters]:not([hide-aside-filters=false]))){--grid-template-areas:"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main" "filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside" "results results results results results results results results"}}@media screen and (min-width: 1260px){stzh-search:where([has-aside-filters]:not([hide-aside-filters]:not([hide-aside-filters=false]))){--grid-template-areas:"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main" "filters-aside filters-aside filters-aside filters-aside results results results results results results results results"}}@media screen and (min-width: 1260px){stzh-search:where([variant=teaser]:not([has-aside-filters])),stzh-search:where([fullwidth=true]:not([has-aside-filters])){--grid-template-areas:"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main" "results results results results results results results results results results results results"}}.stzh-search{column-gap:var(--stzh-grid-gutter);display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));grid-template-areas:var(--grid-template-areas);}@media screen and (min-width: 600px){.stzh-search{column-gap:var(--stzh-grid-gutter-small)}}@media screen and (min-width: 900px){.stzh-search{column-gap:var(--stzh-grid-gutter-medium)}}@media screen and (min-width: 1260px){.stzh-search{column-gap:var(--stzh-grid-gutter-large)}}@media screen and (min-width: 1600px){.stzh-search{column-gap:var(--stzh-grid-gutter-ultra)}}@media screen and (min-width: 900px){.stzh-search{grid-template-columns:repeat(8, minmax(0, 1fr))}}@media screen and (min-width: 1260px){.stzh-search{grid-template-columns:repeat(12, minmax(0, 1fr))}}.stzh-search__header-heading{margin-bottom:var(--stzh-space-xsmall)}@media screen and (min-width: 600px){.stzh-search__header-heading{margin-bottom:var(--stzh-space-small)}}@media screen and (min-width: 900px){.stzh-search__header-heading{margin-bottom:var(--stzh-space-medium)}}@media screen and (min-width: 1260px){.stzh-search__header-heading{margin-bottom:var(--stzh-space-xlarge)}}.stzh-search__filters-main{grid-area:filters-main}.stzh-search__filters-main:not(:empty){padding:var(--stzh-space-large);background-color:var(--filter-background-color)}@media screen and (min-width: 600px){.stzh-search__filters-main:not(:empty){padding:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__filters-main:not(:empty){padding:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search__filters-main:not(:empty){padding:var(--stzh-space-xxxlarge)}}.stzh-search__filters-aside{grid-area:filters-aside}.stzh-search__filters-aside:not(:empty){padding:var(--stzh-space-large);background-color:var(--filter-background-color)}@media screen and (min-width: 600px){.stzh-search__filters-aside:not(:empty){padding:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__filters-aside:not(:empty){padding:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search__filters-aside:not(:empty){padding:var(--stzh-space-xxxlarge)}}@media screen and (min-width: 1260px){.stzh-search__filters-aside:not(:empty){background-color:transparent;padding:0}}.stzh-search__filters-aside-heading{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-h4-default-font-size, var(--stzh-font-milli-font-size));line-height:var(--stzh-font-curve-h4-default-text-line-height, var(--stzh-font-milli-text-line-height));letter-spacing:var(--stzh-font-curve-h4-default-text-letter-spacing);padding-bottom:var(--stzh-space-xxsmall);color:var(--stzh-color-primary70);display:none}@media screen and (min-width: 600px){.stzh-search__filters-aside-heading{font-size:var(--stzh-font-curve-h4-small-font-size, var(--stzh-font-centi-font-size));line-height:var(--stzh-font-curve-h4-small-text-line-height, var(--stzh-font-centi-text-line-height));letter-spacing:var(--stzh-font-curve-h4-small-text-letter-spacing)}}@media screen and (min-width: 1260px){.stzh-search__filters-aside-heading{font-size:var(--stzh-font-curve-h4-large-font-size, var(--stzh-font-deci-font-size));line-height:var(--stzh-font-curve-h4-large-text-line-height, var(--stzh-font-deci-text-line-height));letter-spacing:var(--stzh-font-curve-h4-large-text-letter-spacing)}}@media screen and (min-width: 1600px){.stzh-search__filters-aside-heading{font-size:var(--stzh-font-curve-h4-ultra-font-size, var(--stzh-font-deca-font-size));line-height:var(--stzh-font-curve-h4-ultra-text-line-height, var(--stzh-font-deca-text-line-height));letter-spacing:var(--stzh-font-curve-h4-ultra-text-letter-spacing, var(--stzh-font-deca-text-letter-spacing))}}@media screen and (min-width: 900px){.stzh-search__filters-aside-heading{padding-bottom:var(--stzh-space-xsmall)}}@media screen and (min-width: 1260px){.stzh-search__filters-aside-heading{padding-bottom:var(--stzh-space-small)}}@media screen and (min-width: 1260px){.stzh-search__filters-aside-heading{display:block}}@media screen and (min-width: 1260px){.stzh-search stzh-button.stzh-search__filters-aside-details-trigger{display:none}}@media screen and (min-width: 1260px){.stzh-search__filters-aside-inner{position:sticky;top:calc(var(--stzh-header-metabar-height, 0px) * var(--stzh-header-is-stuck, 0) + var(--stzh-space-medium));transition:top var(--stzh-base-transition-animation-speed);width:calc(100% + var(--stzh-grid-gutter-large) - var(--stzh-space-xxxxlarge))}}@media screen and (min-width: 1600px){.stzh-search__filters-aside-inner{width:calc(100% + var(--stzh-grid-gutter-ultra) - var(--stzh-space-xxxxlarge))}}.stzh-search__results-wrapper{grid-area:results;display:grid;--stzh-datalist-grid-template-areas:"list list list list list list list list"}.stzh-search__results-header{display:flex;flex-direction:column}@media screen and (min-width: 900px){.stzh-search__results-header{flex-direction:row;align-items:center}}.stzh-search__results-sort{display:flex}.stzh-search__results-heading,.stzh-search__results-empty,.stzh-search__results,.stzh-search__action-more{transition-property:opacity;transition-duration:var(--stzh-base-transition-animation-speed)}.stzh-search__results-text,.stzh-search__results-sort,.stzh-search__results-subscribe{margin-bottom:var(--stzh-space-medium)}@media screen and (min-width: 600px){.stzh-search__results-text,.stzh-search__results-sort,.stzh-search__results-subscribe{margin-bottom:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-search__results-text,.stzh-search__results-sort,.stzh-search__results-subscribe{margin-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 1260px){.stzh-search__results-text,.stzh-search__results-sort,.stzh-search__results-subscribe{margin-bottom:var(--stzh-space-xxlarge)}}.stzh-search__results-heading{margin-bottom:var(--stzh-space-xsmall)}@media screen and (min-width: 600px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-small)}}@media screen and (min-width: 900px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-medium)}}@media screen and (min-width: 1260px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-medium)}}@media screen and (min-width: 900px) and (min-width: 600px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-large)}}@media screen and (min-width: 900px) and (min-width: 900px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px) and (min-width: 1260px){.stzh-search__results-heading{margin-bottom:var(--stzh-space-xxlarge)}}.stzh-search__results-item{display:contents}.stzh-search__actions-wrapper{display:flex;justify-content:center}.stzh-search__actions-wrapper:not(:empty){margin-top:var(--stzh-space-large)}@media screen and (min-width: 600px){.stzh-search__actions-wrapper:not(:empty){margin-top:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__actions-wrapper:not(:empty){margin-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search__actions-wrapper:not(:empty){margin-top:var(--stzh-space-xxxlarge)}}.stzh-search__empty-text{margin-bottom:var(--stzh-space-medium)}@media screen and (min-width: 600px){.stzh-search__empty-text{margin-bottom:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-search__empty-text{margin-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 1260px){.stzh-search__empty-text{margin-bottom:var(--stzh-space-xxlarge)}}.stzh-search__loader{margin-top:var(--stzh-space-large)}@media screen and (min-width: 600px){.stzh-search__loader{margin-top:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__loader{margin-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search__loader{margin-top:var(--stzh-space-xxxlarge)}}.stzh-search__filters-main-chips{margin-top:var(--stzh-space-large)}@media screen and (min-width: 600px){.stzh-search__filters-main-chips{margin-top:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search__filters-main-chips{margin-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search__filters-main-chips{margin-top:var(--stzh-space-xxxlarge)}}.stzh-search--teaser .stzh-search__actions-wrapper{justify-content:flex-start}@media screen and (max-width: 1259px){.stzh-search--has-results-shown .stzh-search__results-wrapper{margin-top:var(--stzh-space-xxxxlarge)}}@media screen and (max-width: 1259px) and (min-width: 600px){.stzh-search--has-results-shown .stzh-search__results-wrapper{margin-top:var(--stzh-space-big)}}@media screen and (max-width: 1259px) and (min-width: 900px){.stzh-search--has-results-shown .stzh-search__results-wrapper{margin-top:var(--stzh-space-big)}}@media screen and (max-width: 1259px) and (min-width: 1260px){.stzh-search--has-results-shown .stzh-search__results-wrapper{margin-top:var(--stzh-space-huge)}}@media screen and (min-width: 1260px){.stzh-search--has-results-shown .stzh-search__filters-main,.stzh-search--has-filters-aside .stzh-search__filters-main{margin-bottom:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px) and (min-width: 900px){.stzh-search--has-results-shown .stzh-search__filters-main,.stzh-search--has-filters-aside .stzh-search__filters-main{margin-bottom:var(--stzh-space-xxxlarge)}}@media screen and (min-width: 1260px) and (min-width: 1260px){.stzh-search--has-results-shown .stzh-search__filters-main,.stzh-search--has-filters-aside .stzh-search__filters-main{margin-bottom:var(--stzh-space-xxxxlarge)}}@media screen and (max-width: 1259px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__results-wrapper{margin-top:var(--stzh-space-large)}}@media screen and (max-width: 1259px) and (min-width: 600px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__results-wrapper{margin-top:var(--stzh-space-xlarge)}}@media screen and (max-width: 1259px) and (min-width: 900px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__results-wrapper{margin-top:var(--stzh-space-xxlarge)}}@media screen and (max-width: 1259px) and (min-width: 1260px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__results-wrapper{margin-top:var(--stzh-space-xxxlarge)}}@media screen and (min-width: 1260px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__filters-main,.stzh-search--has-filters-aside.stzh-search--teaser .stzh-search__filters-main{margin-bottom:var(--stzh-space-large)}}@media screen and (min-width: 1260px) and (min-width: 600px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__filters-main,.stzh-search--has-filters-aside.stzh-search--teaser .stzh-search__filters-main{margin-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 1260px) and (min-width: 900px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__filters-main,.stzh-search--has-filters-aside.stzh-search--teaser .stzh-search__filters-main{margin-bottom:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px) and (min-width: 1260px){.stzh-search--has-results-shown.stzh-search--teaser .stzh-search__filters-main,.stzh-search--has-filters-aside.stzh-search--teaser .stzh-search__filters-main{margin-bottom:var(--stzh-space-xxxlarge)}}.stzh-search--has-filters-main.stzh-search--has-filters-aside .stzh-search__filters-main:not(:empty){padding-bottom:var(--stzh-space-medium)}@media screen and (min-width: 600px){.stzh-search--has-filters-main.stzh-search--has-filters-aside .stzh-search__filters-main:not(:empty){padding-bottom:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-search--has-filters-main.stzh-search--has-filters-aside .stzh-search__filters-main:not(:empty){padding-bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 1260px){.stzh-search--has-filters-main.stzh-search--has-filters-aside .stzh-search__filters-main:not(:empty){padding-bottom:var(--stzh-space-xxlarge)}}.stzh-search--has-filters-main.stzh-search--has-filters-aside .stzh-search__filters-aside:not(:empty){padding-top:0px}.stzh-search--has-hidden-main-filters .stzh-search__filters-main{display:none}.stzh-search--has-hidden-aside-filters .stzh-search__filters-aside{display:none}.stzh-search--has-hidden-main-filters .stzh-search__results-wrapper,.stzh-search--has-hidden-main-filters.stzh-search--teaser .stzh-search__results-wrapper{margin-top:0px}.stzh-search--is-loading .stzh-search__results-heading,.stzh-search--is-loading .stzh-search__results-sort,.stzh-search--is-loading .stzh-search__results-empty,.stzh-search--is-loading .stzh-search__results,.stzh-search--is-loading .stzh-search__action-more{opacity:0.5}.stzh-search--is-breakout{--filter-background-color:var(--stzh-color-cobaltblue20);background-color:var(--stzh-color-white)}.stzh-search--is-breakout .stzh-search{padding-left:1.25rem;padding-right:1.25rem}@media screen and (min-width: 600px){.stzh-search--is-breakout .stzh-search{padding-left:2rem;padding-right:2rem}}@media screen and (min-width: 900px){.stzh-search--is-breakout .stzh-search{padding-left:2.5rem;padding-right:2.5rem}}@media screen and (min-width: 1260px){.stzh-search--is-breakout .stzh-search{padding-left:4rem;padding-right:4rem}}@media screen and (min-width: 1600px){.stzh-search--is-breakout .stzh-search{padding-left:calc((100vw - 84.25rem) / 2);padding-right:calc((100vw - 84.25rem) / 2)}}.stzh-search--is-breakout .stzh-search__header-wrapper{background-color:var(--stzh-color-cobaltblue20)}.stzh-search--is-breakout .stzh-search__filters-main{padding-left:1.25rem;padding-right:1.25rem;position:relative;left:50%;right:50%;margin-left:calc(-50vw + var(--stzh-scrollbar-width) / 2);margin-right:calc(-50vw + var(--stzh-scrollbar-width) / 2);width:calc(100vw - var(--stzh-scrollbar-width));max-width:calc(100vw - var(--stzh-scrollbar-width))}@media screen and (min-width: 600px){.stzh-search--is-breakout .stzh-search__filters-main{padding-left:2rem;padding-right:2rem}}@media screen and (min-width: 900px){.stzh-search--is-breakout .stzh-search__filters-main{padding-left:2.5rem;padding-right:2.5rem}}@media screen and (min-width: 1260px){.stzh-search--is-breakout .stzh-search__filters-main{padding-left:4rem;padding-right:4rem}}@media screen and (min-width: 1600px){.stzh-search--is-breakout .stzh-search__filters-main{padding-left:calc((100vw - 84.25rem) / 2);padding-right:calc((100vw - 84.25rem) / 2)}}.stzh-search--is-breakout .stzh-search__header{margin-left:1.25rem;margin-right:1.25rem;padding-top:var(--stzh-space-large);background-color:var(--stzh-color-cobaltblue20);display:flex;justify-content:space-between}@media screen and (min-width: 600px){.stzh-search--is-breakout .stzh-search__header{margin-left:2rem;margin-right:2rem}}@media screen and (min-width: 900px){.stzh-search--is-breakout .stzh-search__header{margin-left:2.5rem;margin-right:2.5rem}}@media screen and (min-width: 1260px){.stzh-search--is-breakout .stzh-search__header{margin-left:4rem;margin-right:4rem}}@media screen and (min-width: 1600px){.stzh-search--is-breakout .stzh-search__header{margin-left:auto;margin-right:auto;max-width:84.25rem}}@media screen and (min-width: 600px){.stzh-search--is-breakout .stzh-search__header{padding-top:var(--stzh-space-xlarge)}}@media screen and (min-width: 900px){.stzh-search--is-breakout .stzh-search__header{padding-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-search--is-breakout .stzh-search__header{padding-top:var(--stzh-space-xxxlarge)}}';function p(s,e){return`\n <stzh-card-${s.variant==="teaser"?"superteaser":"searchresult"}\n href="{href}"\n dateline="{dateline}"\n tag="{tag}"\n topic="{topic}"\n service="{service}"\n event-location="{eventLocation}"\n hyphens-enabled="${this.hyphensEnabled}"\n ${e.eventDateStart&&'event-date-start="{eventDateStart}"'}\n ${e.eventDateEnd&&'event-date-end="{eventDateEnd}"'}\n download-heading="{downloadHeading}"\n meta='{meta}'\n breadcrumb-items='{breadcrumbItems}'\n download-meta='{downloadMeta}'\n datalist-items='{datalistItems}'\n ${e.imagePosition&&'image-position="{imagePosition}"'}\n ${e.download&&'download="{download}"'}\n style="\n ${e.serviceBackgroundColor?"--service-background-color: {serviceBackgroundColor};":""}\n ${e.serviceColor?"--service-color: {serviceColor};":""}\n "\n >\n <div slot="heading">{heading}</div>\n <div slot="description">{description}</div>\n ${e.image?e.imagePosition==="right"?`<img src="${e.image}" slot="image" />`:`<stzh-ratio ${s.variant==="teaser"?'ratio="2:1"':'ratio="21:9" ratio-small="1:1"'} slot="image"><img src="${e.image}" /></stzh-ratio>`:""}\n </stzh-card-${s.variant==="teaser"?"superteaser":"searchresult"}>\n `}function f(s){return{layout:s.variant==="teaser"?"teasers":"searchresults"}}const u=class{constructor(t){s(this,t);this.stzhOverlayCloseClick=e(this,"stzhOverlayCloseClick",7);this._sortOptions=[];this._showMoreLink=false;this.fetch=async(s=false,e=false)=>{var t,a;this.loading=true;this.error="";if(this.currentController){this.currentController.abort()}if(!this.hasRequiredParams&&!s){this.loading=false;return}let i=this.api.replace(/\{lang\}/gi,this.localization.$locale);let r=this.limit.toString();this.params.set("offset",s?this.results.length.toString():"0");if(e){const s=new URLSearchParams(location.search).get("search");if(s){const e=new URLSearchParams(s).get("limit");if(e){r=e}}}this.params.set("limit",r);this.currentController=new AbortController;let n={};try{const s=await h(i,{params:this.params,signal:this.currentController.signal});n=s.data}catch(s){this.error=this.localization.error}this.resultsHeading=n.resultsHeading||"";this.resultsText=n.resultsText||"";this.totalCount=((t=n.meta)===null||t===void 0?void 0:t.total)||0;if(n.error){this.error=n.message||this.localization.error}if(n.chipResults&&n.chipResults.length){this.chipResultsHeading=(a=n.chipResultsHeading)!==null&&a!==void 0?a:"";this.chipResults=n.chipResults}else{this.chipResultsHeading="";this.chipResults=[]}if(n.results){if(s){this.results=[...this.results,...n.results.map((s=>{var e;return Object.assign(Object.assign({},s),{html:this.renderResultTemplate(s.html||((e=n.templates)===null||e===void 0?void 0:e.result),s)})}))]}else{this.results=n.results.map((s=>{var e;return Object.assign(Object.assign({},s),{html:this.renderResultTemplate(s.html||((e=n.templates)===null||e===void 0?void 0:e.result),s)})}))}}if(!e&&!this.preventUpdateUrl){const s=new URLSearchParams(location.search);const e=new URLSearchParams(this.params);e.delete("offset");e.set("limit",this.results.length.toString());s.set("search",e.toString());window.history.replaceState(null,"",`${location.pathname}?${s}`)}if(e||!this.firstFetched){this.loading=false}else{window.setTimeout((()=>{this.loading=false}),this.debounceTime)}this.firstFetched=true};this.debouncedFetch=m(this.fetch,this.debounceTime);this.onDropdownSortChange=async s=>{const e=s.target;const t=await e.getValue();if(t){this._sortBy=t}await this.updateParams();this.debouncedFetch()};this.handleMainFilterChange=async()=>{if(this.autofetchMainFilters){await this.updateParams();this.debouncedFetch()}};this.handleAsideFilterChange=async()=>{if(this.autofetchAsideFilters){await this.updateParams();this.debouncedFetch()}};this.handleFormSubmit=async s=>{s.preventDefault();await this.updateParams();this.fetch()};this.handleMoreClick=()=>{this.fetch(true)};this.handleMediaChange=()=>{this.isDetailsOpen=c("large").matches};this.handleFormReset=async()=>{requestAnimationFrame((()=>{requestAnimationFrame((async()=>{await this.updateParams()}))}))};this.localization=undefined;this.variant="default";this.autofetchMainFilters=false;this.autofetchAsideFilters=false;this.hideMainFilters=false;this.hideAsideFilters=false;this.hideResultsHeading=false;this.sortBy=undefined;this.sortOptions=[];this.api="";this.debounceTime=500;this.limit=6;this.initialFetch=false;this.preventUpdateUrl=false;this.hyphensEnabled=false;this.templateResult=p;this.templateResultWrapperElement=function(){return"stzh-cardlist"};this.templateResultWrapperProps=f;this.resultHeadingLevel="3";this.emptyText=undefined;this.heading=undefined;this.emptyLinkHref=undefined;this.emptyLinkLabel=undefined;this.subscribeLabel="Subscribe";this.subscribePath=undefined;this.subscribeAdditionalQueryParameters=undefined;this.totalCount=0;this.loading=false;this.error="";this.results=[];this.chipResultsHeading=undefined;this.chipResults=[];this.resultsHeading=undefined;this.resultsText=undefined;this.hasRequiredParams=false;this.firstFetched=false;this.initiallyFetched=false;this.isDetailsOpen=false;this.isStzhAnchornavVisible=false}totalCountWatcher(){this._showMoreLink=this.totalCount>this.results.length}preventUpdateUrlWatcher(){this.updateParams()}sortOptionsWatcher(s){if(typeof s==="string"){this._sortOptions=JSON.parse(s)}else{this._sortOptions=s}}sortByWatcher(s){if(typeof s==="string"){this._sortBy=s}else{this._sortBy=undefined}}renderResultTemplate(s,e){let t=s||(typeof this.templateResult==="function"?this.templateResult(this.element,e):this.templateResult);["href","heading","dateline","description","image","imagePosition","tag","topic","service","serviceColor","serviceBackgroundColor","meta","breadcrumbItems","eventLocation","eventDateStart","eventDateEnd","download","downloadHeading","downloadMeta","datalistItems"].forEach((s=>{const a=new RegExp(`{${s}}`,"gi");let i=e[s]||"";if(["meta","breadcrumbItems","downloadMeta","datalistItems"].includes(s)&&i){i=JSON.stringify(i)}t=t.replace(a,i)}));return t}async updateParams(s=false){const e=()=>{const s=new FormData(this.formElement);this.params=new URLSearchParams(s);this.params.set("variant",this.variant)};if(s){const s=new URLSearchParams(location.search);let e=s.get("search");const t=s.get("q");const a=s.get("query");if(!e){if(a){e=`query=${a}`}else if(t){e=`q=${t}`}}if(e){this.initialFetch=true;const s=new URLSearchParams(e);[...new Set(s.keys())].forEach((e=>{const t=s.getAll(e);const a=Array.from(document.querySelectorAll(`:where(stzh-input,stzh-radiogroup,stzh-chipselect,stzh-amount,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[name="${e}"]`));const i=Array.from(document.querySelectorAll(`:where(stzh-checkboxgroup)[name="${e}"]`));const r=Array.from(document.querySelectorAll(`:where(stzh-dropdown)[name="${e}"]`));a.forEach((s=>{s.value=t[0]}));i.forEach((s=>{s.value=t}));r.forEach((s=>{s.items=t}))}))}}await n();e();let t=true;const a=Array.from(this.element.querySelectorAll(":where(stzh-input)[required]"));const i=Array.from(this.element.querySelectorAll(":where(stzh-dropdown)[required]"));const r=Array.from(this.element.querySelectorAll(":where(stzh-monthyearpicker)[required]"));const h=Array.from(this.element.querySelectorAll(":where(stzh-amount,stzh-radiogroup,stzh-chipselect,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[required]"));const l=Array.from(this.element.querySelectorAll(":where(stzh-checkbox)[required]"));l.forEach((e=>{const a=!e.checked;if(!s){e.invalid=a}if(a){t=false}}));a.forEach((e=>{const a=e.value===""||e.minlength&&e.minlength>e.value.length||e.maxlength&&e.maxlength<e.value.length;if(!s){e.invalid=a}if(a){t=false}}));i.forEach((e=>{const a=e.items.length===0;if(!s){e.invalid=a}if(a){t=false}}));h.forEach((e=>{const a=e.value.toString().length===0;if(!s){e.invalid=a}if(a){t=false}}));r.forEach((e=>{const a=e.value.toString().length===0;if(!s){e.invalidYear=a;e.invalidMonth=a}if(a){t=false}}));this.hasRequiredParams=t}async componentDidLoad(){this.isStzhAnchornavVisible=document.documentElement.style.getPropertyValue("--stzh-anchornav-is-visible")==="1";await this.updateParams(true);if(this.initialFetch){await this.fetch(false,true);this.initiallyFetched=true}else{this.initiallyFetched=true}}async componentWillLoad(){if(!this.localization){this.localization=await window.stzhComponents.utils.fetchTranslations(this.element,"search")}this.isStzhAnchornavVisible=document.documentElement.style.getPropertyValue("--stzh-anchornav-is-visible")==="1";this.sortOptionsWatcher(this.sortOptions);this.sortByWatcher(this.sortBy)}connectedCallback(){d(this.handleMediaChange);this.handleMediaChange()}disconnectedCallback(){o(this.handleMediaChange)}renderResultsText(){return t("stzh-text",{class:"stzh-search__results-text",color:"primary",innerHTML:this.resultsText})}renderSubscribeButton(){const s=new URLSearchParams;let e=this.subscribeAdditionalQueryParameters;if(typeof this.subscribeAdditionalQueryParameters==="string"){try{e=JSON.parse(this.subscribeAdditionalQueryParameters)}catch(s){}}for(const t of e){for(const[e,a]of Object.entries(t)){if(a){s.set(e,a)}}}const a=new URLSearchParams(window.location.search);const i=a.get("search");if(i){const e=new URLSearchParams(i);for(const[t,a]of e.entries()){if(["variant","limit"].indexOf(t)===-1&&a){s.append(t,a)}}}const r=`${this.subscribePath}?${s.toString()}`;return t("div",{class:"stzh-search__results-subscribe"},t("stzh-button",{variant:"secondary",size:"small",href:r},this.subscribeLabel))}render(){const s=l(this.element,"filters-main");const e=l(this.element,"filters-aside");let r=true;if(s){const s=this.element.querySelector("[slot='filters-main'] stzh-chipselect");const e=this.element.querySelector("[slot='filters-main'] stzh-chipgroup");if(!s&&!e){r=false}}else{r=false}const h=(this.hasRequiredParams||this.firstFetched)&&this.firstFetched&&this.initiallyFetched;const n={"stzh-search":true,"stzh-search--has-filters-main":s,"stzh-search--has-filters-aside":e,"stzh-search--has-hidden-main-filters":this.hideMainFilters,"stzh-search--has-hidden-aside-filters":this.hideAsideFilters,"stzh-search--has-results-shown":h,"stzh-search--has-error-shown":!!this.error,"stzh-search--is-loading":this.loading,[`stzh-search--${this.variant}`]:!!this.variant};const c=typeof this.templateResultWrapperElement==="function"?this.templateResultWrapperElement(this.element):this.templateResultWrapperElement;const d=typeof this.templateResultWrapperProps==="function"?this.templateResultWrapperProps(this.element):this.templateResultWrapperProps;return t(i,{"has-aside-filters":e,fullwidth:this.isStzhAnchornavVisible.toString()},t("form",{ref:s=>this.formElement=s,novalidate:true,class:n,onSubmit:this.handleFormSubmit,onReset:this.handleFormReset},t("div",{class:"stzh-search__filters-main",onStzhChange:this.handleMainFilterChange},!!this.heading&&t("stzh-heading",{class:"stzh-search__header-heading",curve:"h2"},this.heading),t("slot",{name:"filters-main"}),!r&&this.chipResults.length>0&&t("div",{class:"stzh-search__filters-main-chips"},this.chipResultsHeading&&t("stzh-text",{font:"heavy",size:"milli",color:"primary"},this.chipResultsHeading),this.chipResults[0].options?t("stzh-chipgroup",null,this.chipResults.map((s=>t("stzh-dropdown",{label:s.label,name:s.value,variant:"filter",size:"large","no-search":true,"hide-optional":true,inline:true,options:s.options})))):t("stzh-chipselect",{multiple:true,name:"subject",label:this.chipResultsHeading,"label-hidden":true,data:this.chipResults.map((s=>({label:s.label,value:s.value,counter:`${s.amount}`,variant:"filter",size:"small"})))}))),e&&t(a,null,t("div",{class:"stzh-search__filters-aside",onStzhChange:this.handleAsideFilterChange},t("div",{class:"stzh-search__filters-aside-inner"},t("div",{class:"stzh-search__filters-aside-heading"},this.localization.moreFilter),t("stzh-details",{open:this.isDetailsOpen,class:"stzh-search__filters-aside-details"},t("stzh-button",{class:"stzh-search__filters-aside-details-trigger",variant:"tertiary-plain",size:"small",noPaddingLeft:true,showToggleIcon:true,iconPosition:"right",label:this.localization.moreFilter}),t("div",{slot:"content"},t("slot",{name:"filters-aside"})))))),t("div",{class:"stzh-search__results-wrapper"},h&&t(a,null,this.results.length===0?t(a,null,this.variant!=="teaser"&&this.resultsHeading&&!this.hideResultsHeading&&t("stzh-heading",{class:"stzh-search__results-heading",curve:"h3",level:this.resultHeadingLevel,innerHTML:this.resultsHeading}),this.resultsText&&this.renderResultsText(),this.subscribePath&&this.renderSubscribeButton(),this.emptyText&&t("stzh-text",{class:"stzh-search__empty-text",innerHTML:this.emptyText}),this.emptyLinkLabel&&this.emptyLinkHref&&t("div",{class:"stzh-search__empty-link-wrapper"},t("stzh-link",{href:this.emptyLinkHref,label:this.emptyLinkLabel}))):t(a,null,t("div",{class:"stzh-search__results-header"},this.variant!=="teaser"&&this.resultsHeading&&!this.hideResultsHeading&&t("stzh-heading",{class:"stzh-search__results-heading",curve:"h3",level:this.resultHeadingLevel,htmlContent:this.resultsHeading}),this._sortOptions.length>0&&t("div",{class:"stzh-search__results-sort"},t("stzh-dropdown",{"hide-optional":true,inline:true,"no-search":true,"no-wrap":true,class:"stzh-search__results-sort-dropdown",variant:"plain",size:"small",sizeMedium:"tiny",name:"sortby",items:[this._sortBy],options:this._sortOptions,onStzhChange:this.onDropdownSortChange}))),this.resultsText&&this.renderResultsText(),this.subscribePath&&this.renderSubscribeButton(),t(c,Object.assign({class:"stzh-search__results","max-3-columns":e},d),this.results.map((s=>t("div",{class:"stzh-search__results-item",innerHTML:s.html||""})))),t("div",{class:"stzh-search__actions-wrapper"},this._showMoreLink&&t("stzh-button",{variant:"secondary",class:"stzh-search__action-more",label:this.localization.showMore,onClick:this.handleMoreClick,disabled:this.loading,a11yDisabled:this.loading})))),this.error&&t("div",{class:"stzh-search__error"},t("stzh-message",{type:"error",label:this.error})),this.loading&&t("stzh-loader",{class:"stzh-search__loader"})),t("slot",null)))}get element(){return r(this)}static get watchers(){return{totalCount:["totalCountWatcher"],results:["totalCountWatcher"],preventUpdateUrl:["preventUpdateUrlWatcher"],sortOptions:["sortOptionsWatcher"],sortBy:["sortByWatcher"]}}};u.style=z;export{u as stzh_search};
2
+ //# sourceMappingURL=p-8856651e.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["stzhSearchCss","defaultTemplateResult","search","item","variant","this","hyphensEnabled","eventDateStart","eventDateEnd","imagePosition","download","serviceBackgroundColor","serviceColor","image","defaultResultWrapperProps","layout","StzhSearch","_sortOptions","_showMoreLink","fetch","async","append","initial","loading","error","currentController","abort","hasRequiredParams","apiUrl","api","replace","localization","$locale","limit","toString","params","set","results","length","URLSearchParams","location","get","urlLimit","AbortController","data","response","axios","signal","resultsHeading","resultsText","totalCount","_a","meta","total","message","chipResults","chipResultsHeading","_b","map","Object","assign","html","renderResultTemplate","templates","result","preventUpdateUrl","newUrlParams","searchParams","delete","window","history","replaceState","pathname","firstFetched","setTimeout","debounceTime","debouncedFetch","debounce","onDropdownSortChange","event","target","sortBy","getValue","_sortBy","updateParams","handleMainFilterChange","autofetchMainFilters","handleAsideFilterChange","autofetchAsideFilters","handleFormSubmit","preventDefault","handleMoreClick","handleMediaChange","isDetailsOpen","media","matches","handleFormReset","requestAnimationFrame","totalCountWatcher","preventUpdateUrlWatcher","sortOptionsWatcher","newValue","JSON","parse","sortByWatcher","undefined","template","templateResult","element","forEach","property","regex","RegExp","value","includes","stringify","updateByFormElements","formData","FormData","formElement","initialParams","q","query","initialFetch","currentSearchParams","Set","keys","key","values","getAll","valueInputs","Array","from","document","querySelectorAll","valueArrayInputs","itemsArrayInputs","input","items","raf","requiredInputFields","requiredDropdownFields","requiredMonthyearpickers","requiredFields","requiredCheckboxFields","field","invalid","checked","minlength","maxlength","invalidYear","invalidMonth","componentDidLoad","isStzhAnchornavVisible","documentElement","style","getPropertyValue","initiallyFetched","componentWillLoad","stzhComponents","utils","fetchTranslations","sortOptions","connectedCallback","addMediaChangeListener","disconnectedCallback","removeMediaChangeListener","renderResultsText","h","class","color","innerHTML","renderSubscribeButton","subscribeAdditionalQueryParameters","noJson","entry","entries","currentQueryParameters","indexOf","href","subscribePath","size","subscribeLabel","render","filtersMainUsed","hasSlot","filtersAsideUsed","chipsProvided","providedChipselect","querySelector","providedChipgroup","resultsShown","classes","hideMainFilters","hideAsideFilters","WrapperElement","templateResultWrapperElement","wrapperProps","templateResultWrapperProps","Host","fullwidth","ref","el","novalidate","onSubmit","onReset","onStzhChange","heading","curve","name","font","options","chipResult","label","inline","multiple","counter","amount","Fragment","moreFilter","open","noPaddingLeft","showToggleIcon","iconPosition","slot","hideResultsHeading","level","resultHeadingLevel","emptyText","emptyLinkLabel","emptyLinkHref","htmlContent","sizeMedium","showMore","onClick","disabled","a11yDisabled","type"],"sources":["src/components/stzh-search/stzh-search.scss?tag=stzh-search","src/components/stzh-search/stzh-search.tsx"],"sourcesContent":["stzh-search {\n @include host;\n\n --filter-background-color: var(--stzh-search-filter-background-color, #{$colorGrey10});\n\n --grid-template-areas: \"filters-main filters-main filters-main filters-main\" \"results results results results\";\n\n @include mq($from: medium) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"results results results results results results results results\";\n }\n\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \". . results results results results results results results results . .\";\n }\n\n &:where([has-aside-filters]:not([hide-aside-filters]:not([hide-aside-filters=\"false\"]))) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside\" \"results results results results\";\n\n @include mq($from: medium) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside\" \"results results results results results results results results\";\n }\n\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside results results results results results results results results\";\n }\n }\n\n &:where([variant=\"teaser\"]:not([has-aside-filters])),\n &:where([fullwidth=\"true\"]:not([has-aside-filters])) {\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"results results results results results results results results results results results results\";\n }\n }\n}\n\n.stzh-search {\n @include grid;\n grid-template-areas: var(--grid-template-areas);\n\n &__header-heading {\n @include spaceCurve('margin-bottom', 'small');\n }\n\n &__filters-main {\n grid-area: filters-main;\n\n &:not(:empty) {\n @include spaceCurve('padding', 'medium');\n background-color: var(--filter-background-color);\n }\n }\n\n &__filters-aside {\n grid-area: filters-aside;\n\n &:not(:empty) {\n @include spaceCurve('padding', 'medium');\n background-color: var(--filter-background-color);\n\n @include mq($from: large) {\n background-color: transparent;\n padding: 0;\n }\n }\n }\n\n &__filters-aside-heading {\n @include font('heavy');\n @include fontCurve('h4');\n @include spaceCurve('padding-bottom', 'tiny');\n color: $colorPrimary70;\n display: none;\n\n @include mq($from: large) {\n display: block;\n }\n }\n\n stzh-button#{&}__filters-aside-details-trigger {\n @include mq($from: large) {\n display: none;\n }\n }\n\n &__filters-aside-inner {\n @include mq($from: large) {\n position: sticky;\n top: calc(var(--stzh-header-metabar-height, 0px) * var(--stzh-header-is-stuck, 0) + #{space('medium')});\n transition: top $baseTransitionAnimationSpeed;\n width: calc(100% + #{$gridGutterLarge} - #{spaceCurveValue('large', 'large')});\n }\n\n @include mq($from: ultra) {\n width: calc(100% + #{$gridGutterUltra} - #{spaceCurveValue('large', 'large')});\n }\n }\n\n &__results-wrapper {\n grid-area: results;\n display: grid;\n --stzh-datalist-grid-template-areas: \"list list list list list list list list\";\n }\n\n &__results-header {\n display: flex;\n flex-direction: column;\n\n @include mq($from: medium) {\n flex-direction: row;\n align-items: center;\n }\n }\n\n &__results-sort {\n display: flex;\n }\n\n &__results-heading,\n &__results-empty,\n &__results,\n &__action-more {\n transition-property: opacity;\n transition-duration: $baseTransitionAnimationSpeed;\n }\n\n &__results-text,\n &__results-sort,\n &__results-subscribe {\n @include spaceCurve('margin-bottom', 'regular');\n }\n\n &__results-heading {\n @include spaceCurve('margin-bottom', 'small');\n\n @include mq($from: medium) {\n @include spaceCurve('margin-bottom', 'regular');\n }\n }\n\n &__results-item {\n display: contents;\n }\n\n &__actions-wrapper {\n display: flex;\n justify-content: center;\n\n &:not(:empty) {\n @include spaceCurve('margin-top', 'medium');\n }\n }\n\n &__empty-text {\n @include spaceCurve('margin-bottom', 'regular');\n }\n\n &__loader {\n @include spaceCurve('margin-top', 'medium');\n }\n\n &__filters-main-chips {\n @include spaceCurve('margin-top', 'medium');\n }\n\n /* Teaser variant */\n\n &--teaser &__actions-wrapper {\n justify-content: flex-start;\n }\n\n //&--teaser &__filters-main {\n // &:not(:empty) {\n // padding: 0;\n // background-color: transparent;\n // }\n //}\n //\n //&--teaser &__filters-aside {\n // &:not(:empty) {\n // padding: 0;\n // background-color: transparent;\n // }\n //}\n\n /* Has results shown or aside filter */\n\n &--has-results-shown &__results-wrapper {\n @include mq($to: large) {\n @include spaceCurve('margin-top', 'huge');\n }\n }\n\n &--has-results-shown &__filters-main,\n &--has-filters-aside &__filters-main {\n @include mq($from: large) {\n @include spaceCurve('margin-bottom', 'large');\n }\n }\n\n &--has-results-shown#{&}--teaser &__results-wrapper {\n @include mq($to: large) {\n @include spaceCurve('margin-top', 'medium');\n }\n }\n\n &--has-results-shown#{&}--teaser &__filters-main,\n &--has-filters-aside#{&}--teaser &__filters-main {\n @include mq($from: large) {\n @include spaceCurve('margin-bottom', 'medium');\n }\n }\n\n /* Has main and aside filters */\n\n &--has-filters-main#{&}--has-filters-aside &__filters-main {\n &:not(:empty) {\n @include spaceCurve('padding-bottom', 'regular');\n }\n }\n\n &--has-filters-main#{&}--has-filters-aside &__filters-aside {\n &:not(:empty) {\n padding-top: 0px;\n }\n }\n\n /* Has hidden main/aside filters */\n\n &--has-hidden-main-filters &__filters-main {\n display: none;\n }\n\n &--has-hidden-aside-filters &__filters-aside {\n display: none;\n }\n\n &--has-hidden-main-filters &__results-wrapper,\n &--has-hidden-main-filters#{&}--teaser &__results-wrapper {\n margin-top: 0px;\n }\n\n /* Is loading */\n\n &--is-loading &__results-heading,\n &--is-loading &__results-sort,\n &--is-loading &__results-empty,\n &--is-loading &__results,\n &--is-loading &__action-more {\n opacity: 0.5;\n }\n\n /* Is overlay */\n\n &--is-breakout {\n --filter-background-color: var(--stzh-color-cobaltblue20);\n background-color: var(--stzh-color-white);\n }\n\n &--is-breakout & {\n @include containerPadding();\n }\n\n &--is-breakout &__header-wrapper {\n background-color: var(--stzh-color-cobaltblue20);\n }\n\n &--is-breakout &__filters-main {\n @include containerPadding();\n position: relative;\n left: 50%;\n right: 50%;\n margin-left: calc(-50vw + var(--stzh-scrollbar-width) / 2);\n margin-right: calc(-50vw + var(--stzh-scrollbar-width) / 2);\n width: calc(100vw - var(--stzh-scrollbar-width));\n max-width: calc(100vw - var(--stzh-scrollbar-width));\n }\n\n &--is-breakout &__header {\n @include container();\n @include spaceCurve('padding-top', 'medium');\n background-color: var(--stzh-color-cobaltblue20);\n display: flex;\n justify-content: space-between;\n }\n}\n","import { Component, Element, Event, EventEmitter, Fragment, h, Host, Prop, State, Watch } from \"@stencil/core\";\n\nimport {\n StzhDropdownChangeEvent,\n StzhDropdownOption,\n StzhSearchChipsResult,\n StzhSearchOverlayCloseClickEvent,\n StzhSearchResult,\n} from \"../../index\";\n\nimport axios from \"axios\";\nimport { hasSlot, raf } from \"../../utils/utils\";\n\nimport { StzhSearchLocalizedText } from \"./stzh-search.localization\";\n\nimport { addMediaChangeListener, media, removeMediaChangeListener } from \"../../utils/media-utils\";\n\nimport debounce from \"lodash/debounce\";\n\nfunction defaultTemplateResult(search: HTMLStzhSearchElement, item: StzhSearchResult): string {\n return `\n <stzh-card-${search.variant === \"teaser\" ? \"superteaser\" : \"searchresult\"}\n href=\"{href}\"\n dateline=\"{dateline}\"\n tag=\"{tag}\"\n topic=\"{topic}\"\n service=\"{service}\"\n event-location=\"{eventLocation}\"\n hyphens-enabled=\"${this.hyphensEnabled}\"\n ${item.eventDateStart && 'event-date-start=\"{eventDateStart}\"'}\n ${item.eventDateEnd && 'event-date-end=\"{eventDateEnd}\"'}\n download-heading=\"{downloadHeading}\"\n meta='{meta}'\n breadcrumb-items='{breadcrumbItems}'\n download-meta='{downloadMeta}'\n datalist-items='{datalistItems}'\n ${item.imagePosition && 'image-position=\"{imagePosition}\"'}\n ${item.download && 'download=\"{download}\"'}\n style=\"\n ${item.serviceBackgroundColor ? \"--service-background-color: {serviceBackgroundColor};\" : \"\"}\n ${item.serviceColor ? \"--service-color: {serviceColor};\" : \"\"}\n \"\n >\n <div slot=\"heading\">{heading}</div>\n <div slot=\"description\">{description}</div>\n ${\n item.image\n ? item.imagePosition === \"right\"\n ? `<img src=\"${item.image}\" slot=\"image\" />`\n : `<stzh-ratio ${\n search.variant === \"teaser\" ? 'ratio=\"2:1\"' : 'ratio=\"21:9\" ratio-small=\"1:1\"'\n } slot=\"image\"><img src=\"${item.image}\" /></stzh-ratio>`\n : \"\"\n }\n </stzh-card-${search.variant === \"teaser\" ? \"superteaser\" : \"searchresult\"}>\n `;\n}\n\nfunction defaultResultWrapperProps(search: HTMLStzhSearchElement) {\n return {\n layout: search.variant === \"teaser\" ? \"teasers\" : \"searchresults\",\n } as HTMLStzhCardlistElement;\n}\n\n/**\n * @slot - Slot for any content\n * @slot filters-main - Slot for main filters\n * @slot filters-aside - Slot for aside filters\n */\n@Component({\n tag: \"stzh-search\",\n styleUrl: \"stzh-search.scss\",\n})\nexport class StzhSearch {\n /** Translation strings */\n @Prop() localization: StzhSearchLocalizedText;\n\n /** Variant */\n @Prop() variant: \"default\" | \"teaser\" = \"default\";\n\n /** Whether search results should be automatically fetched when a main filters has changed. */\n @Prop() autofetchMainFilters: boolean = false;\n\n /** Whether search results should be automatically fetched when a aside filters has changed. */\n @Prop() autofetchAsideFilters: boolean = false;\n\n /** Whether to hide the main filters slot */\n @Prop({ reflect: true }) hideMainFilters: boolean = false;\n\n /** Whether to hide the aside filters slot */\n @Prop({ reflect: true }) hideAsideFilters: boolean = false;\n\n /** Whether to hide the results heading */\n @Prop({ reflect: true }) hideResultsHeading: boolean = false;\n\n /** Sort by initial value */\n @Prop({ mutable: true }) sortBy: string;\n private _sortBy: string;\n\n /** Sort options */\n @Prop({ mutable: true }) sortOptions: StzhDropdownOption[] | string = [];\n private _sortOptions: StzhDropdownOption[] = [];\n\n /** API URL */\n @Prop() api: string = \"\";\n\n /** Debounce time in ms */\n @Prop() debounceTime: number = 500;\n\n /** Numbers of results shown with each load more action */\n @Prop() limit: number = 6;\n\n /** Whether search request should be fetched initially with set filters */\n @Prop() initialFetch: boolean = false;\n\n /** Whether url query should be updated when filter has changed */\n @Prop() preventUpdateUrl: boolean = false;\n\n /** Automatic Hyphens */\n @Prop({ reflect: true }) hyphensEnabled: boolean = false;\n\n /** Will be overwritten by api result (`templates.result` or `results[x].html`) */\n @Prop() templateResult: string | ((search: HTMLStzhSearchElement, item: StzhSearchResult) => string) =\n defaultTemplateResult;\n\n /** Element used for list wrapper element */\n @Prop() templateResultWrapperElement: string | ((search: HTMLStzhSearchElement) => string) = function () {\n return \"stzh-cardlist\";\n };\n\n /** Properties applied to list wrapper element */\n @Prop() templateResultWrapperProps:\n | { [key: string]: any }\n | ((search: HTMLStzhSearchElement) => { [key: string]: any }) = defaultResultWrapperProps;\n\n /** Heading level of results heading */\n @Prop() resultHeadingLevel: \"1\" | \"2\" | \"3\" | \"4\" = \"3\";\n\n /** Empty text */\n @Prop() emptyText: string;\n\n /** Empty text */\n @Prop() heading: string;\n\n /** Empty link href */\n @Prop() emptyLinkHref: string;\n\n /** Empty link label */\n @Prop() emptyLinkLabel: string;\n\n /** Label for the subscribe button */\n @Prop() subscribeLabel: string = \"Subscribe\";\n\n /** Path which is used as a base for the subscribe button. If not provided, the button won't be rendered. */\n @Prop() subscribePath: string;\n\n /** Query parameters which are being added to the subscribe button path, in addition to the form values. */\n @Prop() subscribeAdditionalQueryParameters: { [key: string]: string }[] | string;\n\n @Element() element: HTMLStzhSearchElement;\n\n @Watch(\"totalCount\")\n @Watch(\"results\")\n totalCountWatcher() {\n this._showMoreLink = this.totalCount > this.results.length;\n }\n\n @Watch(\"preventUpdateUrl\")\n preventUpdateUrlWatcher() {\n this.updateParams();\n }\n\n @Watch(\"sortOptions\")\n sortOptionsWatcher(newValue: StzhDropdownOption[] | string) {\n if (typeof newValue === \"string\") {\n this._sortOptions = JSON.parse(newValue);\n } else {\n this._sortOptions = newValue;\n }\n }\n\n @Watch(\"sortBy\")\n sortByWatcher(newValue: string | undefined) {\n if (typeof newValue === \"string\") {\n this._sortBy = newValue;\n } else {\n this._sortBy = undefined;\n }\n }\n\n @State() totalCount: number = 0;\n private _showMoreLink: boolean = false;\n\n @State() loading: boolean = false;\n @State() error: string = \"\";\n\n @State() results: StzhSearchResult[] = [];\n @State() chipResultsHeading: string;\n @State() chipResults: StzhSearchChipsResult[] = [];\n @State() resultsHeading: string;\n @State() resultsText: string;\n @State() hasRequiredParams: boolean = false;\n @State() firstFetched: boolean = false;\n @State() initiallyFetched: boolean = false;\n @State() isDetailsOpen: boolean = false;\n @State() isStzhAnchornavVisible: boolean = false;\n\n /** Search overlay close click event */\n @Event() stzhOverlayCloseClick: EventEmitter<StzhSearchOverlayCloseClickEvent>;\n\n private currentController: AbortController;\n private params: URLSearchParams;\n private formElement: HTMLFormElement;\n\n private renderResultTemplate(html: string, item: StzhSearchResult) {\n let template =\n html ||\n (typeof this.templateResult === \"function\" ? this.templateResult(this.element, item) : this.templateResult);\n\n [\n \"href\",\n \"heading\",\n \"dateline\",\n \"description\",\n \"image\",\n \"imagePosition\",\n \"tag\",\n \"topic\",\n \"service\",\n \"serviceColor\",\n \"serviceBackgroundColor\",\n \"meta\",\n \"breadcrumbItems\",\n \"eventLocation\",\n \"eventDateStart\",\n \"eventDateEnd\",\n \"download\",\n \"downloadHeading\",\n \"downloadMeta\",\n \"datalistItems\",\n ].forEach(property => {\n const regex = new RegExp(`\\{${property}\\}`, \"gi\");\n let value = item[property] || \"\";\n\n if ([\"meta\", \"breadcrumbItems\", \"downloadMeta\", \"datalistItems\"].includes(property) && value) {\n value = JSON.stringify(value);\n }\n\n template = template.replace(regex, value);\n });\n\n return template;\n }\n\n private async updateParams(initial: boolean = false) {\n const updateByFormElements = () => {\n const formData = new FormData(this.formElement);\n // @ts-ignore\n this.params = new URLSearchParams(formData);\n this.params.set(\"variant\", this.variant);\n };\n\n if (initial) {\n const initialParams = new URLSearchParams(location.search);\n let search = initialParams.get(\"search\");\n const q = initialParams.get(\"q\");\n const query = initialParams.get(\"query\");\n if (!search) {\n if (query) {\n search = `query=${query}`;\n } else if (q) {\n search = `q=${q}`;\n }\n }\n\n if (search) {\n this.initialFetch = true;\n const currentSearchParams = new URLSearchParams(search);\n\n [...new Set(currentSearchParams.keys())].forEach(key => {\n const values = currentSearchParams.getAll(key);\n\n // value as string/number: input, ... / pagination\n const valueInputs = Array.from(\n document.querySelectorAll(\n `:where(stzh-input,stzh-radiogroup,stzh-chipselect,stzh-amount,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[name=\"${key}\"]`\n )\n ) as\n | HTMLStzhInputElement[]\n | HTMLStzhRadiogroupElement[]\n | HTMLStzhChipselectElement[]\n | HTMLStzhAmountElement[]\n | HTMLStzhDatepickerElement[]\n | HTMLStzhMonthyearpickerElement[]\n | HTMLStzhTimepickerElement[]\n | HTMLStzhPaginationElement[]\n | HTMLStzhToggleElement[];\n\n // value as array: checkboxgroup\n const valueArrayInputs = Array.from(\n document.querySelectorAll(`:where(stzh-checkboxgroup)[name=\"${key}\"]`)\n ) as HTMLStzhCheckboxgroupElement[];\n\n // items as array: dropdown\n const itemsArrayInputs = Array.from(document.querySelectorAll(`:where(stzh-dropdown)[name=\"${key}\"]`)) as\n | HTMLStzhDropdownElement[];\n\n valueInputs.forEach(\n (\n input:\n | HTMLStzhInputElement\n | HTMLStzhRadiogroupElement\n | HTMLStzhChipselectElement\n | HTMLStzhAmountElement\n | HTMLStzhDatepickerElement\n | HTMLStzhMonthyearpickerElement\n | HTMLStzhTimepickerElement\n | HTMLStzhPaginationElement\n | HTMLStzhToggleElement\n ) => {\n input.value = values[0];\n }\n );\n\n valueArrayInputs.forEach((input: HTMLStzhCheckboxgroupElement) => {\n input.value = values;\n });\n\n itemsArrayInputs.forEach((input: HTMLStzhDropdownElement) => {\n input.items = values;\n });\n });\n }\n }\n\n await raf();\n updateByFormElements();\n\n let hasRequiredParams = true;\n\n const requiredInputFields = Array.from(this.element.querySelectorAll(\":where(stzh-input)[required]\")) as\n | HTMLStzhInputElement[];\n\n const requiredDropdownFields = Array.from(this.element.querySelectorAll(\":where(stzh-dropdown)[required]\")) as\n | HTMLStzhDropdownElement[];\n\n const requiredMonthyearpickers = Array.from(\n this.element.querySelectorAll(\":where(stzh-monthyearpicker)[required]\")\n ) as HTMLStzhMonthyearpickerElement[];\n\n const requiredFields = Array.from(\n this.element.querySelectorAll(\n \":where(stzh-amount,stzh-radiogroup,stzh-chipselect,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[required]\"\n )\n ) as\n | HTMLStzhAmountElement[]\n | HTMLStzhRadiogroupElement[]\n | HTMLStzhChipselectElement[]\n | HTMLStzhDatepickerElement[]\n | HTMLStzhTimepickerElement[]\n | HTMLStzhPaginationElement[]\n | HTMLStzhToggleElement[];\n\n const requiredCheckboxFields = Array.from(this.element.querySelectorAll(\":where(stzh-checkbox)[required]\")) as\n | HTMLStzhCheckboxElement[];\n\n requiredCheckboxFields.forEach((field: HTMLStzhCheckboxElement) => {\n const invalid = !field.checked;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredInputFields.forEach((field: HTMLStzhInputElement) => {\n const invalid =\n field.value === \"\" ||\n (field.minlength && field.minlength > field.value.length) ||\n (field.maxlength && field.maxlength < field.value.length);\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredDropdownFields.forEach((field: HTMLStzhDropdownElement) => {\n const invalid = field.items.length === 0;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredFields.forEach(\n (\n field:\n | HTMLStzhAmountElement\n | HTMLStzhRadiogroupElement\n | HTMLStzhCheckboxElement\n | HTMLStzhChipselectElement\n | HTMLStzhDatepickerElement\n | HTMLStzhTimepickerElement\n | HTMLStzhPaginationElement\n | HTMLStzhToggleElement\n ) => {\n const invalid = field.value.toString().length === 0;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n }\n );\n\n requiredMonthyearpickers.forEach((field: HTMLStzhMonthyearpickerElement) => {\n const invalid = field.value.toString().length === 0;\n\n if (!initial) {\n field.invalidYear = invalid;\n field.invalidMonth = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n this.hasRequiredParams = hasRequiredParams;\n }\n\n private fetch = async (append: boolean = false, initial: boolean = false) => {\n this.loading = true;\n this.error = \"\";\n\n if (this.currentController) {\n this.currentController.abort();\n }\n\n if (!this.hasRequiredParams && !append) {\n this.loading = false;\n return;\n }\n\n let apiUrl = this.api.replace(/\\{lang\\}/gi, this.localization.$locale);\n let limit = this.limit.toString();\n\n this.params.set(\"offset\", append ? this.results.length.toString() : \"0\");\n\n if (initial) {\n const search = new URLSearchParams(location.search).get(\"search\");\n\n if (search) {\n const urlLimit = new URLSearchParams(search).get(\"limit\");\n\n if (urlLimit) {\n limit = urlLimit;\n }\n }\n }\n\n this.params.set(\"limit\", limit);\n\n this.currentController = new AbortController();\n\n let data: {\n error?: boolean;\n message?: string;\n templates?: {\n result: string;\n };\n meta?: {\n total: number;\n };\n resultsHeading?: string;\n resultsText?: string;\n results?: StzhSearchResult[];\n chipResultsHeading?: string;\n chipResults?: StzhSearchChipsResult[];\n } = {};\n\n try {\n // load data from API\n const response = await axios(apiUrl, {\n params: this.params,\n signal: this.currentController.signal,\n });\n\n data = response.data;\n } catch (error) {\n this.error = this.localization.error;\n }\n\n this.resultsHeading = data.resultsHeading || \"\";\n this.resultsText = data.resultsText || \"\";\n this.totalCount = data.meta?.total || 0;\n\n if (data.error) {\n this.error = data.message || this.localization.error;\n }\n\n if (data.chipResults && data.chipResults.length) {\n this.chipResultsHeading = data.chipResultsHeading ?? \"\";\n this.chipResults = data.chipResults;\n } else {\n this.chipResultsHeading = \"\";\n this.chipResults = [];\n }\n\n if (data.results) {\n if (append) {\n this.results = [\n ...this.results,\n ...data.results.map(item => ({\n ...item,\n html: this.renderResultTemplate(item.html || data.templates?.result, item),\n })),\n ];\n } else {\n this.results = data.results.map(item => ({\n ...item,\n html: this.renderResultTemplate(item.html || data.templates?.result, item),\n }));\n }\n }\n\n if (!initial && !this.preventUpdateUrl) {\n const newUrlParams = new URLSearchParams(location.search);\n const searchParams = new URLSearchParams(this.params);\n\n searchParams.delete(\"offset\");\n searchParams.set(\"limit\", this.results.length.toString());\n newUrlParams.set(\"search\", searchParams.toString());\n\n window.history.replaceState(null, \"\", `${location.pathname}?${newUrlParams}`);\n }\n\n if (initial || !this.firstFetched) {\n this.loading = false;\n } else {\n // to be able to see loading effect we delay turning off loading state\n window.setTimeout(() => {\n this.loading = false;\n }, this.debounceTime);\n }\n\n this.firstFetched = true;\n };\n\n private debouncedFetch = debounce(this.fetch, this.debounceTime);\n\n private onDropdownSortChange = async (event: CustomEvent<StzhDropdownChangeEvent>) => {\n const target: HTMLStzhDropdownElement = event.target as HTMLStzhDropdownElement;\n const sortBy = (await target.getValue()) as string;\n if (sortBy) {\n this._sortBy = sortBy;\n }\n await this.updateParams();\n this.debouncedFetch();\n };\n\n private handleMainFilterChange = async () => {\n if (this.autofetchMainFilters) {\n await this.updateParams();\n this.debouncedFetch();\n }\n };\n\n private handleAsideFilterChange = async () => {\n if (this.autofetchAsideFilters) {\n await this.updateParams();\n this.debouncedFetch();\n }\n };\n\n private handleFormSubmit = async (event: Event) => {\n event.preventDefault();\n\n await this.updateParams();\n this.fetch();\n };\n\n private handleMoreClick = () => {\n this.fetch(true);\n };\n\n private handleMediaChange = () => {\n this.isDetailsOpen = media(\"large\").matches;\n };\n\n private handleFormReset = async () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(async () => {\n await this.updateParams();\n });\n });\n };\n\n async componentDidLoad() {\n this.isStzhAnchornavVisible =\n document.documentElement.style.getPropertyValue(\"--stzh-anchornav-is-visible\") === \"1\";\n\n // update params initially to get hidden filters\n // and set initialFetch to true if search params exist\n await this.updateParams(true);\n\n if (this.initialFetch) {\n await this.fetch(false, true);\n this.initiallyFetched = true;\n } else {\n this.initiallyFetched = true;\n }\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"search\");\n }\n this.isStzhAnchornavVisible =\n document.documentElement.style.getPropertyValue(\"--stzh-anchornav-is-visible\") === \"1\";\n this.sortOptionsWatcher(this.sortOptions);\n this.sortByWatcher(this.sortBy);\n }\n\n connectedCallback() {\n addMediaChangeListener(this.handleMediaChange);\n this.handleMediaChange();\n }\n\n disconnectedCallback() {\n removeMediaChangeListener(this.handleMediaChange);\n }\n\n private renderResultsText(): DocumentFragment {\n return <stzh-text class=\"stzh-search__results-text\" color=\"primary\" innerHTML={this.resultsText}></stzh-text>;\n }\n\n private renderSubscribeButton(): DocumentFragment {\n const params = new URLSearchParams();\n let subscribeAdditionalQueryParameters = this.subscribeAdditionalQueryParameters;\n if (typeof this.subscribeAdditionalQueryParameters === \"string\") {\n try {\n subscribeAdditionalQueryParameters = JSON.parse(this.subscribeAdditionalQueryParameters);\n } catch (noJson) {}\n }\n for (const entry of subscribeAdditionalQueryParameters) {\n for (const [key, value] of Object.entries(entry)) {\n if (value) {\n params.set(key, value);\n }\n }\n }\n const currentQueryParameters = new URLSearchParams(window.location.search);\n const search = currentQueryParameters.get(\"search\");\n if (search) {\n const currentSearchParams = new URLSearchParams(search);\n for (const [key, value] of currentSearchParams.entries()) {\n if ([\"variant\", \"limit\"].indexOf(key) === -1 && value) {\n params.append(key, value);\n }\n }\n }\n const href = `${this.subscribePath}?${params.toString()}`;\n return (\n <div class=\"stzh-search__results-subscribe\">\n <stzh-button variant=\"secondary\" size=\"small\" href={href}>\n {this.subscribeLabel}\n </stzh-button>\n </div>\n );\n }\n\n render() {\n const filtersMainUsed = hasSlot(this.element, \"filters-main\");\n const filtersAsideUsed = hasSlot(this.element, \"filters-aside\");\n let chipsProvided = true;\n if (filtersMainUsed) {\n const providedChipselect = this.element.querySelector(\"[slot='filters-main'] stzh-chipselect\");\n const providedChipgroup = this.element.querySelector(\"[slot='filters-main'] stzh-chipgroup\");\n if (!providedChipselect && !providedChipgroup) {\n chipsProvided = false;\n }\n } else {\n chipsProvided = false;\n }\n\n const resultsShown = (this.hasRequiredParams || this.firstFetched) && this.firstFetched && this.initiallyFetched;\n\n const classes = {\n \"stzh-search\": true,\n \"stzh-search--has-filters-main\": filtersMainUsed,\n \"stzh-search--has-filters-aside\": filtersAsideUsed,\n \"stzh-search--has-hidden-main-filters\": this.hideMainFilters,\n \"stzh-search--has-hidden-aside-filters\": this.hideAsideFilters,\n \"stzh-search--has-results-shown\": resultsShown,\n \"stzh-search--has-error-shown\": !!this.error,\n \"stzh-search--is-loading\": this.loading,\n [`stzh-search--${this.variant}`]: !!this.variant,\n };\n\n const WrapperElement =\n typeof this.templateResultWrapperElement === \"function\"\n ? this.templateResultWrapperElement(this.element)\n : this.templateResultWrapperElement;\n\n const wrapperProps =\n typeof this.templateResultWrapperProps === \"function\"\n ? this.templateResultWrapperProps(this.element)\n : this.templateResultWrapperProps;\n\n return (\n <Host has-aside-filters={filtersAsideUsed} fullwidth={this.isStzhAnchornavVisible.toString()}>\n <form\n ref={el => (this.formElement = el as HTMLFormElement)}\n novalidate\n class={classes}\n onSubmit={this.handleFormSubmit}\n onReset={this.handleFormReset}\n >\n {/* @ts-ignore */}\n <div class=\"stzh-search__filters-main\" onStzhChange={this.handleMainFilterChange}>\n {!!this.heading && (\n <stzh-heading class=\"stzh-search__header-heading\" curve=\"h2\">\n {this.heading}\n </stzh-heading>\n )}\n <slot name=\"filters-main\"></slot>\n {!chipsProvided && this.chipResults.length > 0 && (\n <div class=\"stzh-search__filters-main-chips\">\n {this.chipResultsHeading && (\n <stzh-text font=\"heavy\" size=\"milli\" color=\"primary\">\n {this.chipResultsHeading}\n </stzh-text>\n )}\n {this.chipResults[0].options ? (\n <stzh-chipgroup>\n {this.chipResults.map(chipResult => (\n <stzh-dropdown\n label={chipResult.label}\n name={chipResult.value}\n variant=\"filter\"\n no-search={true}\n hide-optional={true}\n inline={true}\n options={chipResult.options}\n ></stzh-dropdown>\n ))}\n </stzh-chipgroup>\n ) : (\n <stzh-chipselect\n multiple={true}\n name=\"subject\"\n label={this.chipResultsHeading}\n label-hidden={true}\n data={this.chipResults.map(chipResult => ({\n label: chipResult.label,\n value: chipResult.value,\n counter: `${chipResult.amount}`,\n variant: \"filter\",\n size: \"small\",\n }))}\n ></stzh-chipselect>\n )}\n </div>\n )}\n </div>\n\n {filtersAsideUsed && (\n <Fragment>\n {/* @ts-ignore */}\n <div class=\"stzh-search__filters-aside\" onStzhChange={this.handleAsideFilterChange}>\n <div class=\"stzh-search__filters-aside-inner\">\n <div class=\"stzh-search__filters-aside-heading\">{this.localization.moreFilter}</div>\n <stzh-details open={this.isDetailsOpen} class=\"stzh-search__filters-aside-details\">\n <stzh-button\n class=\"stzh-search__filters-aside-details-trigger\"\n variant=\"tertiary-plain\"\n size=\"small\"\n noPaddingLeft={true}\n showToggleIcon={true}\n iconPosition=\"right\"\n label={this.localization.moreFilter}\n ></stzh-button>\n <div slot=\"content\">\n <slot name=\"filters-aside\"></slot>\n </div>\n </stzh-details>\n </div>\n </div>\n </Fragment>\n )}\n\n <div class=\"stzh-search__results-wrapper\">\n {resultsShown && (\n <Fragment>\n {this.results.length === 0 ? (\n <Fragment>\n {this.variant !== \"teaser\" && this.resultsHeading && !this.hideResultsHeading && (\n <stzh-heading\n class=\"stzh-search__results-heading\"\n curve=\"h3\"\n level={this.resultHeadingLevel}\n innerHTML={this.resultsHeading}\n ></stzh-heading>\n )}\n\n {this.resultsText && this.renderResultsText()}\n\n {this.subscribePath && this.renderSubscribeButton()}\n\n {this.emptyText && (\n <stzh-text class=\"stzh-search__empty-text\" innerHTML={this.emptyText}></stzh-text>\n )}\n\n {this.emptyLinkLabel && this.emptyLinkHref && (\n <div class=\"stzh-search__empty-link-wrapper\">\n <stzh-link href={this.emptyLinkHref} label={this.emptyLinkLabel}></stzh-link>\n </div>\n )}\n </Fragment>\n ) : (\n <Fragment>\n <div class=\"stzh-search__results-header\">\n {this.variant !== \"teaser\" && this.resultsHeading && !this.hideResultsHeading && (\n <stzh-heading\n class=\"stzh-search__results-heading\"\n curve=\"h3\"\n level={this.resultHeadingLevel}\n htmlContent={this.resultsHeading}\n ></stzh-heading>\n )}\n {this._sortOptions.length > 0 && (\n <div class=\"stzh-search__results-sort\">\n <stzh-dropdown\n hide-optional\n inline\n no-search\n no-wrap\n class=\"stzh-search__results-sort-dropdown\"\n variant=\"plain\"\n size=\"small\"\n sizeMedium={\"tiny\"}\n name=\"sortby\"\n items={[this._sortBy]}\n options={this._sortOptions}\n onStzhChange={this.onDropdownSortChange}\n ></stzh-dropdown>\n </div>\n )}\n </div>\n\n {this.resultsText && this.renderResultsText()}\n\n {this.subscribePath && this.renderSubscribeButton()}\n\n <WrapperElement class=\"stzh-search__results\" max-3-columns={filtersAsideUsed} {...wrapperProps}>\n {this.results.map(result => (\n <div class=\"stzh-search__results-item\" innerHTML={result.html || \"\"}></div>\n ))}\n </WrapperElement>\n\n <div class=\"stzh-search__actions-wrapper\">\n {this._showMoreLink && (\n <stzh-button\n variant=\"secondary\"\n class=\"stzh-search__action-more\"\n label={this.localization.showMore}\n onClick={this.handleMoreClick}\n disabled={this.loading}\n a11yDisabled={this.loading}\n ></stzh-button>\n )}\n </div>\n </Fragment>\n )}\n </Fragment>\n )}\n\n {this.error && (\n <div class=\"stzh-search__error\">\n <stzh-message type=\"error\" label={this.error}></stzh-message>\n </div>\n )}\n\n {this.loading && <stzh-loader class=\"stzh-search__loader\"></stzh-loader>}\n </div>\n\n <slot></slot>\n </form>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["stzhSearchCss","defaultTemplateResult","search","item","variant","this","hyphensEnabled","eventDateStart","eventDateEnd","imagePosition","download","serviceBackgroundColor","serviceColor","image","defaultResultWrapperProps","layout","StzhSearch","_sortOptions","_showMoreLink","fetch","async","append","initial","loading","error","currentController","abort","hasRequiredParams","apiUrl","api","replace","localization","$locale","limit","toString","params","set","results","length","URLSearchParams","location","get","urlLimit","AbortController","data","response","axios","signal","resultsHeading","resultsText","totalCount","_a","meta","total","message","chipResults","chipResultsHeading","_b","map","Object","assign","html","renderResultTemplate","templates","result","preventUpdateUrl","newUrlParams","searchParams","delete","window","history","replaceState","pathname","firstFetched","setTimeout","debounceTime","debouncedFetch","debounce","onDropdownSortChange","event","target","sortBy","getValue","_sortBy","updateParams","handleMainFilterChange","autofetchMainFilters","handleAsideFilterChange","autofetchAsideFilters","handleFormSubmit","preventDefault","handleMoreClick","handleMediaChange","isDetailsOpen","media","matches","handleFormReset","requestAnimationFrame","totalCountWatcher","preventUpdateUrlWatcher","sortOptionsWatcher","newValue","JSON","parse","sortByWatcher","undefined","template","templateResult","element","forEach","property","regex","RegExp","value","includes","stringify","updateByFormElements","formData","FormData","formElement","initialParams","q","query","initialFetch","currentSearchParams","Set","keys","key","values","getAll","valueInputs","Array","from","document","querySelectorAll","valueArrayInputs","itemsArrayInputs","input","items","raf","requiredInputFields","requiredDropdownFields","requiredMonthyearpickers","requiredFields","requiredCheckboxFields","field","invalid","checked","minlength","maxlength","invalidYear","invalidMonth","componentDidLoad","isStzhAnchornavVisible","documentElement","style","getPropertyValue","initiallyFetched","componentWillLoad","stzhComponents","utils","fetchTranslations","sortOptions","connectedCallback","addMediaChangeListener","disconnectedCallback","removeMediaChangeListener","renderResultsText","h","class","color","innerHTML","renderSubscribeButton","subscribeAdditionalQueryParameters","noJson","entry","entries","currentQueryParameters","indexOf","href","subscribePath","size","subscribeLabel","render","filtersMainUsed","hasSlot","filtersAsideUsed","chipsProvided","providedChipselect","querySelector","providedChipgroup","resultsShown","classes","hideMainFilters","hideAsideFilters","WrapperElement","templateResultWrapperElement","wrapperProps","templateResultWrapperProps","Host","fullwidth","ref","el","novalidate","onSubmit","onReset","onStzhChange","heading","curve","name","font","options","chipResult","label","inline","multiple","counter","amount","Fragment","moreFilter","open","noPaddingLeft","showToggleIcon","iconPosition","slot","hideResultsHeading","level","resultHeadingLevel","emptyText","emptyLinkLabel","emptyLinkHref","htmlContent","sizeMedium","showMore","onClick","disabled","a11yDisabled","type"],"sources":["src/components/stzh-search/stzh-search.scss?tag=stzh-search","src/components/stzh-search/stzh-search.tsx"],"sourcesContent":["stzh-search {\n @include host;\n\n --filter-background-color: var(--stzh-search-filter-background-color, #{$colorGrey10});\n\n --grid-template-areas: \"filters-main filters-main filters-main filters-main\" \"results results results results\";\n\n @include mq($from: medium) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"results results results results results results results results\";\n }\n\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \". . results results results results results results results results . .\";\n }\n\n &:where([has-aside-filters]:not([hide-aside-filters]:not([hide-aside-filters=\"false\"]))) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside\" \"results results results results\";\n\n @include mq($from: medium) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside\" \"results results results results results results results results\";\n }\n\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside results results results results results results results results\";\n }\n }\n\n &:where([variant=\"teaser\"]:not([has-aside-filters])),\n &:where([fullwidth=\"true\"]:not([has-aside-filters])) {\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"results results results results results results results results results results results results\";\n }\n }\n}\n\n.stzh-search {\n @include grid;\n grid-template-areas: var(--grid-template-areas);\n\n &__header-heading {\n @include spaceCurve('margin-bottom', 'small');\n }\n\n &__filters-main {\n grid-area: filters-main;\n\n &:not(:empty) {\n @include spaceCurve('padding', 'medium');\n background-color: var(--filter-background-color);\n }\n }\n\n &__filters-aside {\n grid-area: filters-aside;\n\n &:not(:empty) {\n @include spaceCurve('padding', 'medium');\n background-color: var(--filter-background-color);\n\n @include mq($from: large) {\n background-color: transparent;\n padding: 0;\n }\n }\n }\n\n &__filters-aside-heading {\n @include font('heavy');\n @include fontCurve('h4');\n @include spaceCurve('padding-bottom', 'tiny');\n color: $colorPrimary70;\n display: none;\n\n @include mq($from: large) {\n display: block;\n }\n }\n\n stzh-button#{&}__filters-aside-details-trigger {\n @include mq($from: large) {\n display: none;\n }\n }\n\n &__filters-aside-inner {\n @include mq($from: large) {\n position: sticky;\n top: calc(var(--stzh-header-metabar-height, 0px) * var(--stzh-header-is-stuck, 0) + #{space('medium')});\n transition: top $baseTransitionAnimationSpeed;\n width: calc(100% + #{$gridGutterLarge} - #{spaceCurveValue('large', 'large')});\n }\n\n @include mq($from: ultra) {\n width: calc(100% + #{$gridGutterUltra} - #{spaceCurveValue('large', 'large')});\n }\n }\n\n &__results-wrapper {\n grid-area: results;\n display: grid;\n --stzh-datalist-grid-template-areas: \"list list list list list list list list\";\n }\n\n &__results-header {\n display: flex;\n flex-direction: column;\n\n @include mq($from: medium) {\n flex-direction: row;\n align-items: center;\n }\n }\n\n &__results-sort {\n display: flex;\n }\n\n &__results-heading,\n &__results-empty,\n &__results,\n &__action-more {\n transition-property: opacity;\n transition-duration: $baseTransitionAnimationSpeed;\n }\n\n &__results-text,\n &__results-sort,\n &__results-subscribe {\n @include spaceCurve('margin-bottom', 'regular');\n }\n\n &__results-heading {\n @include spaceCurve('margin-bottom', 'small');\n\n @include mq($from: medium) {\n @include spaceCurve('margin-bottom', 'regular');\n }\n }\n\n &__results-item {\n display: contents;\n }\n\n &__actions-wrapper {\n display: flex;\n justify-content: center;\n\n &:not(:empty) {\n @include spaceCurve('margin-top', 'medium');\n }\n }\n\n &__empty-text {\n @include spaceCurve('margin-bottom', 'regular');\n }\n\n &__loader {\n @include spaceCurve('margin-top', 'medium');\n }\n\n &__filters-main-chips {\n @include spaceCurve('margin-top', 'medium');\n }\n\n /* Teaser variant */\n\n &--teaser &__actions-wrapper {\n justify-content: flex-start;\n }\n\n //&--teaser &__filters-main {\n // &:not(:empty) {\n // padding: 0;\n // background-color: transparent;\n // }\n //}\n //\n //&--teaser &__filters-aside {\n // &:not(:empty) {\n // padding: 0;\n // background-color: transparent;\n // }\n //}\n\n /* Has results shown or aside filter */\n\n &--has-results-shown &__results-wrapper {\n @include mq($to: large) {\n @include spaceCurve('margin-top', 'huge');\n }\n }\n\n &--has-results-shown &__filters-main,\n &--has-filters-aside &__filters-main {\n @include mq($from: large) {\n @include spaceCurve('margin-bottom', 'large');\n }\n }\n\n &--has-results-shown#{&}--teaser &__results-wrapper {\n @include mq($to: large) {\n @include spaceCurve('margin-top', 'medium');\n }\n }\n\n &--has-results-shown#{&}--teaser &__filters-main,\n &--has-filters-aside#{&}--teaser &__filters-main {\n @include mq($from: large) {\n @include spaceCurve('margin-bottom', 'medium');\n }\n }\n\n /* Has main and aside filters */\n\n &--has-filters-main#{&}--has-filters-aside &__filters-main {\n &:not(:empty) {\n @include spaceCurve('padding-bottom', 'regular');\n }\n }\n\n &--has-filters-main#{&}--has-filters-aside &__filters-aside {\n &:not(:empty) {\n padding-top: 0px;\n }\n }\n\n /* Has hidden main/aside filters */\n\n &--has-hidden-main-filters &__filters-main {\n display: none;\n }\n\n &--has-hidden-aside-filters &__filters-aside {\n display: none;\n }\n\n &--has-hidden-main-filters &__results-wrapper,\n &--has-hidden-main-filters#{&}--teaser &__results-wrapper {\n margin-top: 0px;\n }\n\n /* Is loading */\n\n &--is-loading &__results-heading,\n &--is-loading &__results-sort,\n &--is-loading &__results-empty,\n &--is-loading &__results,\n &--is-loading &__action-more {\n opacity: 0.5;\n }\n\n /* Is overlay */\n\n &--is-breakout {\n --filter-background-color: var(--stzh-color-cobaltblue20);\n background-color: var(--stzh-color-white);\n }\n\n &--is-breakout & {\n @include containerPadding();\n }\n\n &--is-breakout &__header-wrapper {\n background-color: var(--stzh-color-cobaltblue20);\n }\n\n &--is-breakout &__filters-main {\n @include containerPadding();\n position: relative;\n left: 50%;\n right: 50%;\n margin-left: calc(-50vw + var(--stzh-scrollbar-width) / 2);\n margin-right: calc(-50vw + var(--stzh-scrollbar-width) / 2);\n width: calc(100vw - var(--stzh-scrollbar-width));\n max-width: calc(100vw - var(--stzh-scrollbar-width));\n }\n\n &--is-breakout &__header {\n @include container();\n @include spaceCurve('padding-top', 'medium');\n background-color: var(--stzh-color-cobaltblue20);\n display: flex;\n justify-content: space-between;\n }\n}\n","import { Component, Element, Event, EventEmitter, Fragment, h, Host, Prop, State, Watch } from \"@stencil/core\";\n\nimport {\n StzhDropdownChangeEvent,\n StzhDropdownOption,\n StzhSearchChipsResult,\n StzhSearchOverlayCloseClickEvent,\n StzhSearchResult,\n} from \"../../index\";\n\nimport axios from \"axios\";\nimport { hasSlot, raf } from \"../../utils/utils\";\n\nimport { StzhSearchLocalizedText } from \"./stzh-search.localization\";\n\nimport { addMediaChangeListener, media, removeMediaChangeListener } from \"../../utils/media-utils\";\n\nimport debounce from \"lodash/debounce\";\n\nfunction defaultTemplateResult(search: HTMLStzhSearchElement, item: StzhSearchResult): string {\n return `\n <stzh-card-${search.variant === \"teaser\" ? \"superteaser\" : \"searchresult\"}\n href=\"{href}\"\n dateline=\"{dateline}\"\n tag=\"{tag}\"\n topic=\"{topic}\"\n service=\"{service}\"\n event-location=\"{eventLocation}\"\n hyphens-enabled=\"${this.hyphensEnabled}\"\n ${item.eventDateStart && 'event-date-start=\"{eventDateStart}\"'}\n ${item.eventDateEnd && 'event-date-end=\"{eventDateEnd}\"'}\n download-heading=\"{downloadHeading}\"\n meta='{meta}'\n breadcrumb-items='{breadcrumbItems}'\n download-meta='{downloadMeta}'\n datalist-items='{datalistItems}'\n ${item.imagePosition && 'image-position=\"{imagePosition}\"'}\n ${item.download && 'download=\"{download}\"'}\n style=\"\n ${item.serviceBackgroundColor ? \"--service-background-color: {serviceBackgroundColor};\" : \"\"}\n ${item.serviceColor ? \"--service-color: {serviceColor};\" : \"\"}\n \"\n >\n <div slot=\"heading\">{heading}</div>\n <div slot=\"description\">{description}</div>\n ${\n item.image\n ? item.imagePosition === \"right\"\n ? `<img src=\"${item.image}\" slot=\"image\" />`\n : `<stzh-ratio ${\n search.variant === \"teaser\" ? 'ratio=\"2:1\"' : 'ratio=\"21:9\" ratio-small=\"1:1\"'\n } slot=\"image\"><img src=\"${item.image}\" /></stzh-ratio>`\n : \"\"\n }\n </stzh-card-${search.variant === \"teaser\" ? \"superteaser\" : \"searchresult\"}>\n `;\n}\n\nfunction defaultResultWrapperProps(search: HTMLStzhSearchElement) {\n return {\n layout: search.variant === \"teaser\" ? \"teasers\" : \"searchresults\",\n } as HTMLStzhCardlistElement;\n}\n\n/**\n * @slot - Slot for any content\n * @slot filters-main - Slot for main filters\n * @slot filters-aside - Slot for aside filters\n */\n@Component({\n tag: \"stzh-search\",\n styleUrl: \"stzh-search.scss\",\n})\nexport class StzhSearch {\n /** Translation strings */\n @Prop() localization: StzhSearchLocalizedText;\n\n /** Variant */\n @Prop() variant: \"default\" | \"teaser\" = \"default\";\n\n /** Whether search results should be automatically fetched when a main filters has changed. */\n @Prop() autofetchMainFilters: boolean = false;\n\n /** Whether search results should be automatically fetched when a aside filters has changed. */\n @Prop() autofetchAsideFilters: boolean = false;\n\n /** Whether to hide the main filters slot */\n @Prop({ reflect: true }) hideMainFilters: boolean = false;\n\n /** Whether to hide the aside filters slot */\n @Prop({ reflect: true }) hideAsideFilters: boolean = false;\n\n /** Whether to hide the results heading */\n @Prop({ reflect: true }) hideResultsHeading: boolean = false;\n\n /** Sort by initial value */\n @Prop({ mutable: true }) sortBy: string;\n private _sortBy: string;\n\n /** Sort options */\n @Prop({ mutable: true }) sortOptions: StzhDropdownOption[] | string = [];\n private _sortOptions: StzhDropdownOption[] = [];\n\n /** API URL */\n @Prop() api: string = \"\";\n\n /** Debounce time in ms */\n @Prop() debounceTime: number = 500;\n\n /** Numbers of results shown with each load more action */\n @Prop() limit: number = 6;\n\n /** Whether search request should be fetched initially with set filters */\n @Prop() initialFetch: boolean = false;\n\n /** Whether url query should be updated when filter has changed */\n @Prop() preventUpdateUrl: boolean = false;\n\n /** Automatic Hyphens */\n @Prop({ reflect: true }) hyphensEnabled: boolean = false;\n\n /** Will be overwritten by api result (`templates.result` or `results[x].html`) */\n @Prop() templateResult: string | ((search: HTMLStzhSearchElement, item: StzhSearchResult) => string) =\n defaultTemplateResult;\n\n /** Element used for list wrapper element */\n @Prop() templateResultWrapperElement: string | ((search: HTMLStzhSearchElement) => string) = function () {\n return \"stzh-cardlist\";\n };\n\n /** Properties applied to list wrapper element */\n @Prop() templateResultWrapperProps:\n | { [key: string]: any }\n | ((search: HTMLStzhSearchElement) => { [key: string]: any }) = defaultResultWrapperProps;\n\n /** Heading level of results heading */\n @Prop() resultHeadingLevel: \"1\" | \"2\" | \"3\" | \"4\" = \"3\";\n\n /** Empty text */\n @Prop() emptyText: string;\n\n /** Empty text */\n @Prop() heading: string;\n\n /** Empty link href */\n @Prop() emptyLinkHref: string;\n\n /** Empty link label */\n @Prop() emptyLinkLabel: string;\n\n /** Label for the subscribe button */\n @Prop() subscribeLabel: string = \"Subscribe\";\n\n /** Path which is used as a base for the subscribe button. If not provided, the button won't be rendered. */\n @Prop() subscribePath: string;\n\n /** Query parameters which are being added to the subscribe button path, in addition to the form values. */\n @Prop() subscribeAdditionalQueryParameters: { [key: string]: string }[] | string;\n\n @Element() element: HTMLStzhSearchElement;\n\n @Watch(\"totalCount\")\n @Watch(\"results\")\n totalCountWatcher() {\n this._showMoreLink = this.totalCount > this.results.length;\n }\n\n @Watch(\"preventUpdateUrl\")\n preventUpdateUrlWatcher() {\n this.updateParams();\n }\n\n @Watch(\"sortOptions\")\n sortOptionsWatcher(newValue: StzhDropdownOption[] | string) {\n if (typeof newValue === \"string\") {\n this._sortOptions = JSON.parse(newValue);\n } else {\n this._sortOptions = newValue;\n }\n }\n\n @Watch(\"sortBy\")\n sortByWatcher(newValue: string | undefined) {\n if (typeof newValue === \"string\") {\n this._sortBy = newValue;\n } else {\n this._sortBy = undefined;\n }\n }\n\n @State() totalCount: number = 0;\n private _showMoreLink: boolean = false;\n\n @State() loading: boolean = false;\n @State() error: string = \"\";\n\n @State() results: StzhSearchResult[] = [];\n @State() chipResultsHeading: string;\n @State() chipResults: StzhSearchChipsResult[] = [];\n @State() resultsHeading: string;\n @State() resultsText: string;\n @State() hasRequiredParams: boolean = false;\n @State() firstFetched: boolean = false;\n @State() initiallyFetched: boolean = false;\n @State() isDetailsOpen: boolean = false;\n @State() isStzhAnchornavVisible: boolean = false;\n\n /** Search overlay close click event */\n @Event() stzhOverlayCloseClick: EventEmitter<StzhSearchOverlayCloseClickEvent>;\n\n private currentController: AbortController;\n private params: URLSearchParams;\n private formElement: HTMLFormElement;\n\n private renderResultTemplate(html: string, item: StzhSearchResult) {\n let template =\n html ||\n (typeof this.templateResult === \"function\" ? this.templateResult(this.element, item) : this.templateResult);\n\n [\n \"href\",\n \"heading\",\n \"dateline\",\n \"description\",\n \"image\",\n \"imagePosition\",\n \"tag\",\n \"topic\",\n \"service\",\n \"serviceColor\",\n \"serviceBackgroundColor\",\n \"meta\",\n \"breadcrumbItems\",\n \"eventLocation\",\n \"eventDateStart\",\n \"eventDateEnd\",\n \"download\",\n \"downloadHeading\",\n \"downloadMeta\",\n \"datalistItems\",\n ].forEach(property => {\n const regex = new RegExp(`\\{${property}\\}`, \"gi\");\n let value = item[property] || \"\";\n\n if ([\"meta\", \"breadcrumbItems\", \"downloadMeta\", \"datalistItems\"].includes(property) && value) {\n value = JSON.stringify(value);\n }\n\n template = template.replace(regex, value);\n });\n\n return template;\n }\n\n private async updateParams(initial: boolean = false) {\n const updateByFormElements = () => {\n const formData = new FormData(this.formElement);\n // @ts-ignore\n this.params = new URLSearchParams(formData);\n this.params.set(\"variant\", this.variant);\n };\n\n if (initial) {\n const initialParams = new URLSearchParams(location.search);\n let search = initialParams.get(\"search\");\n const q = initialParams.get(\"q\");\n const query = initialParams.get(\"query\");\n if (!search) {\n if (query) {\n search = `query=${query}`;\n } else if (q) {\n search = `q=${q}`;\n }\n }\n\n if (search) {\n this.initialFetch = true;\n const currentSearchParams = new URLSearchParams(search);\n\n [...new Set(currentSearchParams.keys())].forEach(key => {\n const values = currentSearchParams.getAll(key);\n\n // value as string/number: input, ... / pagination\n const valueInputs = Array.from(\n document.querySelectorAll(\n `:where(stzh-input,stzh-radiogroup,stzh-chipselect,stzh-amount,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[name=\"${key}\"]`\n )\n ) as\n | HTMLStzhInputElement[]\n | HTMLStzhRadiogroupElement[]\n | HTMLStzhChipselectElement[]\n | HTMLStzhAmountElement[]\n | HTMLStzhDatepickerElement[]\n | HTMLStzhMonthyearpickerElement[]\n | HTMLStzhTimepickerElement[]\n | HTMLStzhPaginationElement[]\n | HTMLStzhToggleElement[];\n\n // value as array: checkboxgroup\n const valueArrayInputs = Array.from(\n document.querySelectorAll(`:where(stzh-checkboxgroup)[name=\"${key}\"]`)\n ) as HTMLStzhCheckboxgroupElement[];\n\n // items as array: dropdown\n const itemsArrayInputs = Array.from(document.querySelectorAll(`:where(stzh-dropdown)[name=\"${key}\"]`)) as\n | HTMLStzhDropdownElement[];\n\n valueInputs.forEach(\n (\n input:\n | HTMLStzhInputElement\n | HTMLStzhRadiogroupElement\n | HTMLStzhChipselectElement\n | HTMLStzhAmountElement\n | HTMLStzhDatepickerElement\n | HTMLStzhMonthyearpickerElement\n | HTMLStzhTimepickerElement\n | HTMLStzhPaginationElement\n | HTMLStzhToggleElement\n ) => {\n input.value = values[0];\n }\n );\n\n valueArrayInputs.forEach((input: HTMLStzhCheckboxgroupElement) => {\n input.value = values;\n });\n\n itemsArrayInputs.forEach((input: HTMLStzhDropdownElement) => {\n input.items = values;\n });\n });\n }\n }\n\n await raf();\n updateByFormElements();\n\n let hasRequiredParams = true;\n\n const requiredInputFields = Array.from(this.element.querySelectorAll(\":where(stzh-input)[required]\")) as\n | HTMLStzhInputElement[];\n\n const requiredDropdownFields = Array.from(this.element.querySelectorAll(\":where(stzh-dropdown)[required]\")) as\n | HTMLStzhDropdownElement[];\n\n const requiredMonthyearpickers = Array.from(\n this.element.querySelectorAll(\":where(stzh-monthyearpicker)[required]\")\n ) as HTMLStzhMonthyearpickerElement[];\n\n const requiredFields = Array.from(\n this.element.querySelectorAll(\n \":where(stzh-amount,stzh-radiogroup,stzh-chipselect,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[required]\"\n )\n ) as\n | HTMLStzhAmountElement[]\n | HTMLStzhRadiogroupElement[]\n | HTMLStzhChipselectElement[]\n | HTMLStzhDatepickerElement[]\n | HTMLStzhTimepickerElement[]\n | HTMLStzhPaginationElement[]\n | HTMLStzhToggleElement[];\n\n const requiredCheckboxFields = Array.from(this.element.querySelectorAll(\":where(stzh-checkbox)[required]\")) as\n | HTMLStzhCheckboxElement[];\n\n requiredCheckboxFields.forEach((field: HTMLStzhCheckboxElement) => {\n const invalid = !field.checked;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredInputFields.forEach((field: HTMLStzhInputElement) => {\n const invalid =\n field.value === \"\" ||\n (field.minlength && field.minlength > field.value.length) ||\n (field.maxlength && field.maxlength < field.value.length);\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredDropdownFields.forEach((field: HTMLStzhDropdownElement) => {\n const invalid = field.items.length === 0;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredFields.forEach(\n (\n field:\n | HTMLStzhAmountElement\n | HTMLStzhRadiogroupElement\n | HTMLStzhCheckboxElement\n | HTMLStzhChipselectElement\n | HTMLStzhDatepickerElement\n | HTMLStzhTimepickerElement\n | HTMLStzhPaginationElement\n | HTMLStzhToggleElement\n ) => {\n const invalid = field.value.toString().length === 0;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n }\n );\n\n requiredMonthyearpickers.forEach((field: HTMLStzhMonthyearpickerElement) => {\n const invalid = field.value.toString().length === 0;\n\n if (!initial) {\n field.invalidYear = invalid;\n field.invalidMonth = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n this.hasRequiredParams = hasRequiredParams;\n }\n\n private fetch = async (append: boolean = false, initial: boolean = false) => {\n this.loading = true;\n this.error = \"\";\n\n if (this.currentController) {\n this.currentController.abort();\n }\n\n if (!this.hasRequiredParams && !append) {\n this.loading = false;\n return;\n }\n\n let apiUrl = this.api.replace(/\\{lang\\}/gi, this.localization.$locale);\n let limit = this.limit.toString();\n\n this.params.set(\"offset\", append ? this.results.length.toString() : \"0\");\n\n if (initial) {\n const search = new URLSearchParams(location.search).get(\"search\");\n\n if (search) {\n const urlLimit = new URLSearchParams(search).get(\"limit\");\n\n if (urlLimit) {\n limit = urlLimit;\n }\n }\n }\n\n this.params.set(\"limit\", limit);\n\n this.currentController = new AbortController();\n\n let data: {\n error?: boolean;\n message?: string;\n templates?: {\n result: string;\n };\n meta?: {\n total: number;\n };\n resultsHeading?: string;\n resultsText?: string;\n results?: StzhSearchResult[];\n chipResultsHeading?: string;\n chipResults?: StzhSearchChipsResult[];\n } = {};\n\n try {\n // load data from API\n const response = await axios(apiUrl, {\n params: this.params,\n signal: this.currentController.signal,\n });\n\n data = response.data;\n } catch (error) {\n this.error = this.localization.error;\n }\n\n this.resultsHeading = data.resultsHeading || \"\";\n this.resultsText = data.resultsText || \"\";\n this.totalCount = data.meta?.total || 0;\n\n if (data.error) {\n this.error = data.message || this.localization.error;\n }\n\n if (data.chipResults && data.chipResults.length) {\n this.chipResultsHeading = data.chipResultsHeading ?? \"\";\n this.chipResults = data.chipResults;\n } else {\n this.chipResultsHeading = \"\";\n this.chipResults = [];\n }\n\n if (data.results) {\n if (append) {\n this.results = [\n ...this.results,\n ...data.results.map(item => ({\n ...item,\n html: this.renderResultTemplate(item.html || data.templates?.result, item),\n })),\n ];\n } else {\n this.results = data.results.map(item => ({\n ...item,\n html: this.renderResultTemplate(item.html || data.templates?.result, item),\n }));\n }\n }\n\n if (!initial && !this.preventUpdateUrl) {\n const newUrlParams = new URLSearchParams(location.search);\n const searchParams = new URLSearchParams(this.params);\n\n searchParams.delete(\"offset\");\n searchParams.set(\"limit\", this.results.length.toString());\n newUrlParams.set(\"search\", searchParams.toString());\n\n window.history.replaceState(null, \"\", `${location.pathname}?${newUrlParams}`);\n }\n\n if (initial || !this.firstFetched) {\n this.loading = false;\n } else {\n // to be able to see loading effect we delay turning off loading state\n window.setTimeout(() => {\n this.loading = false;\n }, this.debounceTime);\n }\n\n this.firstFetched = true;\n };\n\n private debouncedFetch = debounce(this.fetch, this.debounceTime);\n\n private onDropdownSortChange = async (event: CustomEvent<StzhDropdownChangeEvent>) => {\n const target: HTMLStzhDropdownElement = event.target as HTMLStzhDropdownElement;\n const sortBy = (await target.getValue()) as string;\n if (sortBy) {\n this._sortBy = sortBy;\n }\n await this.updateParams();\n this.debouncedFetch();\n };\n\n private handleMainFilterChange = async () => {\n if (this.autofetchMainFilters) {\n await this.updateParams();\n this.debouncedFetch();\n }\n };\n\n private handleAsideFilterChange = async () => {\n if (this.autofetchAsideFilters) {\n await this.updateParams();\n this.debouncedFetch();\n }\n };\n\n private handleFormSubmit = async (event: Event) => {\n event.preventDefault();\n\n await this.updateParams();\n this.fetch();\n };\n\n private handleMoreClick = () => {\n this.fetch(true);\n };\n\n private handleMediaChange = () => {\n this.isDetailsOpen = media(\"large\").matches;\n };\n\n private handleFormReset = async () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(async () => {\n await this.updateParams();\n });\n });\n };\n\n async componentDidLoad() {\n this.isStzhAnchornavVisible =\n document.documentElement.style.getPropertyValue(\"--stzh-anchornav-is-visible\") === \"1\";\n\n // update params initially to get hidden filters\n // and set initialFetch to true if search params exist\n await this.updateParams(true);\n\n if (this.initialFetch) {\n await this.fetch(false, true);\n this.initiallyFetched = true;\n } else {\n this.initiallyFetched = true;\n }\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"search\");\n }\n this.isStzhAnchornavVisible =\n document.documentElement.style.getPropertyValue(\"--stzh-anchornav-is-visible\") === \"1\";\n this.sortOptionsWatcher(this.sortOptions);\n this.sortByWatcher(this.sortBy);\n }\n\n connectedCallback() {\n addMediaChangeListener(this.handleMediaChange);\n this.handleMediaChange();\n }\n\n disconnectedCallback() {\n removeMediaChangeListener(this.handleMediaChange);\n }\n\n private renderResultsText(): DocumentFragment {\n return <stzh-text class=\"stzh-search__results-text\" color=\"primary\" innerHTML={this.resultsText}></stzh-text>;\n }\n\n private renderSubscribeButton(): DocumentFragment {\n const params = new URLSearchParams();\n let subscribeAdditionalQueryParameters = this.subscribeAdditionalQueryParameters;\n if (typeof this.subscribeAdditionalQueryParameters === \"string\") {\n try {\n subscribeAdditionalQueryParameters = JSON.parse(this.subscribeAdditionalQueryParameters);\n } catch (noJson) {}\n }\n for (const entry of subscribeAdditionalQueryParameters) {\n for (const [key, value] of Object.entries(entry)) {\n if (value) {\n params.set(key, value);\n }\n }\n }\n const currentQueryParameters = new URLSearchParams(window.location.search);\n const search = currentQueryParameters.get(\"search\");\n if (search) {\n const currentSearchParams = new URLSearchParams(search);\n for (const [key, value] of currentSearchParams.entries()) {\n if ([\"variant\", \"limit\"].indexOf(key) === -1 && value) {\n params.append(key, value);\n }\n }\n }\n const href = `${this.subscribePath}?${params.toString()}`;\n return (\n <div class=\"stzh-search__results-subscribe\">\n <stzh-button variant=\"secondary\" size=\"small\" href={href}>\n {this.subscribeLabel}\n </stzh-button>\n </div>\n );\n }\n\n render() {\n const filtersMainUsed = hasSlot(this.element, \"filters-main\");\n const filtersAsideUsed = hasSlot(this.element, \"filters-aside\");\n let chipsProvided = true;\n if (filtersMainUsed) {\n const providedChipselect = this.element.querySelector(\"[slot='filters-main'] stzh-chipselect\");\n const providedChipgroup = this.element.querySelector(\"[slot='filters-main'] stzh-chipgroup\");\n if (!providedChipselect && !providedChipgroup) {\n chipsProvided = false;\n }\n } else {\n chipsProvided = false;\n }\n\n const resultsShown = (this.hasRequiredParams || this.firstFetched) && this.firstFetched && this.initiallyFetched;\n\n const classes = {\n \"stzh-search\": true,\n \"stzh-search--has-filters-main\": filtersMainUsed,\n \"stzh-search--has-filters-aside\": filtersAsideUsed,\n \"stzh-search--has-hidden-main-filters\": this.hideMainFilters,\n \"stzh-search--has-hidden-aside-filters\": this.hideAsideFilters,\n \"stzh-search--has-results-shown\": resultsShown,\n \"stzh-search--has-error-shown\": !!this.error,\n \"stzh-search--is-loading\": this.loading,\n [`stzh-search--${this.variant}`]: !!this.variant,\n };\n\n const WrapperElement =\n typeof this.templateResultWrapperElement === \"function\"\n ? this.templateResultWrapperElement(this.element)\n : this.templateResultWrapperElement;\n\n const wrapperProps =\n typeof this.templateResultWrapperProps === \"function\"\n ? this.templateResultWrapperProps(this.element)\n : this.templateResultWrapperProps;\n\n return (\n <Host has-aside-filters={filtersAsideUsed} fullwidth={this.isStzhAnchornavVisible.toString()}>\n <form\n ref={el => (this.formElement = el as HTMLFormElement)}\n novalidate\n class={classes}\n onSubmit={this.handleFormSubmit}\n onReset={this.handleFormReset}\n >\n {/* @ts-ignore */}\n <div class=\"stzh-search__filters-main\" onStzhChange={this.handleMainFilterChange}>\n {!!this.heading && (\n <stzh-heading class=\"stzh-search__header-heading\" curve=\"h2\">\n {this.heading}\n </stzh-heading>\n )}\n <slot name=\"filters-main\"></slot>\n {!chipsProvided && this.chipResults.length > 0 && (\n <div class=\"stzh-search__filters-main-chips\">\n {this.chipResultsHeading && (\n <stzh-text font=\"heavy\" size=\"milli\" color=\"primary\">\n {this.chipResultsHeading}\n </stzh-text>\n )}\n {this.chipResults[0].options ? (\n <stzh-chipgroup>\n {this.chipResults.map(chipResult => (\n <stzh-dropdown\n label={chipResult.label}\n name={chipResult.value}\n variant=\"filter\"\n size=\"large\"\n no-search={true}\n hide-optional={true}\n inline={true}\n options={chipResult.options}\n ></stzh-dropdown>\n ))}\n </stzh-chipgroup>\n ) : (\n <stzh-chipselect\n multiple={true}\n name=\"subject\"\n label={this.chipResultsHeading}\n label-hidden={true}\n data={this.chipResults.map(chipResult => ({\n label: chipResult.label,\n value: chipResult.value,\n counter: `${chipResult.amount}`,\n variant: \"filter\",\n size: \"small\",\n }))}\n ></stzh-chipselect>\n )}\n </div>\n )}\n </div>\n\n {filtersAsideUsed && (\n <Fragment>\n {/* @ts-ignore */}\n <div class=\"stzh-search__filters-aside\" onStzhChange={this.handleAsideFilterChange}>\n <div class=\"stzh-search__filters-aside-inner\">\n <div class=\"stzh-search__filters-aside-heading\">{this.localization.moreFilter}</div>\n <stzh-details open={this.isDetailsOpen} class=\"stzh-search__filters-aside-details\">\n <stzh-button\n class=\"stzh-search__filters-aside-details-trigger\"\n variant=\"tertiary-plain\"\n size=\"small\"\n noPaddingLeft={true}\n showToggleIcon={true}\n iconPosition=\"right\"\n label={this.localization.moreFilter}\n ></stzh-button>\n <div slot=\"content\">\n <slot name=\"filters-aside\"></slot>\n </div>\n </stzh-details>\n </div>\n </div>\n </Fragment>\n )}\n\n <div class=\"stzh-search__results-wrapper\">\n {resultsShown && (\n <Fragment>\n {this.results.length === 0 ? (\n <Fragment>\n {this.variant !== \"teaser\" && this.resultsHeading && !this.hideResultsHeading && (\n <stzh-heading\n class=\"stzh-search__results-heading\"\n curve=\"h3\"\n level={this.resultHeadingLevel}\n innerHTML={this.resultsHeading}\n ></stzh-heading>\n )}\n\n {this.resultsText && this.renderResultsText()}\n\n {this.subscribePath && this.renderSubscribeButton()}\n\n {this.emptyText && (\n <stzh-text class=\"stzh-search__empty-text\" innerHTML={this.emptyText}></stzh-text>\n )}\n\n {this.emptyLinkLabel && this.emptyLinkHref && (\n <div class=\"stzh-search__empty-link-wrapper\">\n <stzh-link href={this.emptyLinkHref} label={this.emptyLinkLabel}></stzh-link>\n </div>\n )}\n </Fragment>\n ) : (\n <Fragment>\n <div class=\"stzh-search__results-header\">\n {this.variant !== \"teaser\" && this.resultsHeading && !this.hideResultsHeading && (\n <stzh-heading\n class=\"stzh-search__results-heading\"\n curve=\"h3\"\n level={this.resultHeadingLevel}\n htmlContent={this.resultsHeading}\n ></stzh-heading>\n )}\n {this._sortOptions.length > 0 && (\n <div class=\"stzh-search__results-sort\">\n <stzh-dropdown\n hide-optional\n inline\n no-search\n no-wrap\n class=\"stzh-search__results-sort-dropdown\"\n variant=\"plain\"\n size=\"small\"\n sizeMedium={\"tiny\"}\n name=\"sortby\"\n items={[this._sortBy]}\n options={this._sortOptions}\n onStzhChange={this.onDropdownSortChange}\n ></stzh-dropdown>\n </div>\n )}\n </div>\n\n {this.resultsText && this.renderResultsText()}\n\n {this.subscribePath && this.renderSubscribeButton()}\n\n <WrapperElement class=\"stzh-search__results\" max-3-columns={filtersAsideUsed} {...wrapperProps}>\n {this.results.map(result => (\n <div class=\"stzh-search__results-item\" innerHTML={result.html || \"\"}></div>\n ))}\n </WrapperElement>\n\n <div class=\"stzh-search__actions-wrapper\">\n {this._showMoreLink && (\n <stzh-button\n variant=\"secondary\"\n class=\"stzh-search__action-more\"\n label={this.localization.showMore}\n onClick={this.handleMoreClick}\n disabled={this.loading}\n a11yDisabled={this.loading}\n ></stzh-button>\n )}\n </div>\n </Fragment>\n )}\n </Fragment>\n )}\n\n {this.error && (\n <div class=\"stzh-search__error\">\n <stzh-message type=\"error\" label={this.error}></stzh-message>\n </div>\n )}\n\n {this.loading && <stzh-loader class=\"stzh-search__loader\"></stzh-loader>}\n </div>\n\n <slot></slot>\n </form>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as t,h as e,a as s,g as a}from"./p-c7bfac7a.js";const n=".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,[stzh-hidden].sc-stzh-eventdata-h{display:none}.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);column-gap:var(--stzh-space-medium)}.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)}";const i=class{constructor(e){t(this,e);this.label=""}render(){const t={"stzh-eventdata":true};return e(s,null,e("div",{class:t},e("div",{class:"stzh-eventdata__label"},this.label?this.label:e("slot",{name:"label"})),e("div",{class:"stzh-eventdata__content"},e("slot",null))))}get element(){return a(this)}};i.style=n;export{i as stzh_eventdata};
2
+ //# sourceMappingURL=p-8c5fb0e2.entry.js.map