@oiz/stzh-components 3.4.0-beta1 → 3.4.0-beta2

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 (307) hide show
  1. package/dist/cjs/{app-globals-1074eba6.js → app-globals-d9805497.js} +2 -2
  2. package/dist/cjs/{app-globals-1074eba6.js.map → app-globals-d9805497.js.map} +1 -1
  3. package/dist/cjs/index-92254d32.js +40 -16
  4. package/dist/cjs/index.cjs.js.map +1 -1
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/stzh-actions.cjs.entry.js +10 -8
  7. package/dist/cjs/stzh-actions.cjs.entry.js.map +1 -1
  8. package/dist/cjs/stzh-archivelist.cjs.entry.js +6 -16
  9. package/dist/cjs/stzh-archivelist.cjs.entry.js.map +1 -1
  10. package/dist/cjs/{stzh-card_2.cjs.entry.js → stzh-card.cjs.entry.js} +55 -143
  11. package/dist/cjs/stzh-card.cjs.entry.js.map +1 -0
  12. package/dist/cjs/{stzh-sortable.cjs.entry.js → stzh-cardlist_2.cjs.entry.js} +92 -1
  13. package/dist/cjs/stzh-cardlist_2.cjs.entry.js.map +1 -0
  14. package/dist/cjs/{stzh-checkbox_4.cjs.entry.js → stzh-checkbox_3.cjs.entry.js} +4 -91
  15. package/dist/cjs/stzh-checkbox_3.cjs.entry.js.map +1 -0
  16. package/dist/cjs/{stzh-chip_2.cjs.entry.js → stzh-chip.cjs.entry.js} +1 -215
  17. package/dist/cjs/stzh-chip.cjs.entry.js.map +1 -0
  18. package/dist/cjs/stzh-chipgroup.cjs.entry.js +25 -0
  19. package/dist/cjs/stzh-chipgroup.cjs.entry.js.map +1 -0
  20. package/dist/cjs/stzh-chipselect.cjs.entry.js +234 -0
  21. package/dist/cjs/stzh-chipselect.cjs.entry.js.map +1 -0
  22. package/dist/cjs/stzh-components.cjs.js +2 -2
  23. package/dist/cjs/stzh-dropdown.cjs.entry.js +53 -55
  24. package/dist/cjs/stzh-dropdown.cjs.entry.js.map +1 -1
  25. package/dist/cjs/stzh-fieldset.cjs.entry.js +1 -1
  26. package/dist/cjs/stzh-fieldset.cjs.entry.js.map +1 -1
  27. package/dist/cjs/stzh-geo-ref-data.cjs.entry.js +98 -41
  28. package/dist/cjs/stzh-geo-ref-data.cjs.entry.js.map +1 -1
  29. package/dist/cjs/stzh-input.cjs.entry.js +6 -2
  30. package/dist/cjs/stzh-input.cjs.entry.js.map +1 -1
  31. package/dist/cjs/{stzh-chipgroup_2.cjs.entry.js → stzh-message.cjs.entry.js} +1 -18
  32. package/dist/cjs/stzh-message.cjs.entry.js.map +1 -0
  33. package/dist/cjs/stzh-overlay.cjs.entry.js +97 -0
  34. package/dist/cjs/stzh-overlay.cjs.entry.js.map +1 -0
  35. package/dist/cjs/stzh-pi-teaser.cjs.entry.js +1 -1
  36. package/dist/cjs/stzh-pi-teaser.cjs.entry.js.map +1 -1
  37. package/dist/cjs/stzh-poicard.cjs.entry.js +52 -0
  38. package/dist/cjs/stzh-poicard.cjs.entry.js.map +1 -0
  39. package/dist/cjs/stzh-poilist.cjs.entry.js +122 -0
  40. package/dist/cjs/stzh-poilist.cjs.entry.js.map +1 -0
  41. package/dist/cjs/stzh-popover.cjs.entry.js +445 -0
  42. package/dist/cjs/stzh-popover.cjs.entry.js.map +1 -0
  43. package/dist/cjs/stzh-saptcha.cjs.entry.js +10 -9
  44. package/dist/cjs/stzh-saptcha.cjs.entry.js.map +1 -1
  45. package/dist/cjs/stzh-search.cjs.entry.js +52 -3
  46. package/dist/cjs/stzh-search.cjs.entry.js.map +1 -1
  47. package/dist/cjs/stzh-section.cjs.entry.js +1 -1
  48. package/dist/cjs/stzh-section.cjs.entry.js.map +1 -1
  49. package/dist/cjs/{stzh-popover_2.cjs.entry.js → stzh-text.cjs.entry.js} +1 -438
  50. package/dist/cjs/stzh-text.cjs.entry.js.map +1 -0
  51. package/dist/cjs/stzh-vbz-connection-finder.cjs.entry.js +1 -1
  52. package/dist/cjs/stzh-vbz-connection-finder.cjs.entry.js.map +1 -1
  53. package/dist/collection/assets/i18n/de.json +9 -0
  54. package/dist/collection/assets/i18n/en.json +9 -0
  55. package/dist/collection/collection-manifest.json +2 -0
  56. package/dist/collection/components/stzh-actions/stzh-actions.css +27 -0
  57. package/dist/collection/components/stzh-actions/stzh-actions.js +30 -10
  58. package/dist/collection/components/stzh-actions/stzh-actions.js.map +1 -1
  59. package/dist/collection/components/stzh-archivelist/stzh-archivelist.css +3 -0
  60. package/dist/collection/components/stzh-archivelist/stzh-archivelist.js +42 -16
  61. package/dist/collection/components/stzh-archivelist/stzh-archivelist.js.map +1 -1
  62. package/dist/collection/components/stzh-archivelist/stzh-archivelist.stories.js +109 -102
  63. package/dist/collection/components/stzh-card/stzh-card.css +5 -0
  64. package/dist/collection/components/stzh-card/stzh-card.js +72 -51
  65. package/dist/collection/components/stzh-card/stzh-card.js.map +1 -1
  66. package/dist/collection/components/stzh-cardlist/stzh-cardlist.css +5 -0
  67. package/dist/collection/components/stzh-chipselect/stzh-chipselect.css +8 -8
  68. package/dist/collection/components/stzh-chipselect/stzh-chipselect.js +13 -1
  69. package/dist/collection/components/stzh-chipselect/stzh-chipselect.js.map +1 -1
  70. package/dist/collection/components/stzh-dropdown/stzh-dropdown.css +11 -1
  71. package/dist/collection/components/stzh-dropdown/stzh-dropdown.js +89 -55
  72. package/dist/collection/components/stzh-dropdown/stzh-dropdown.js.map +1 -1
  73. package/dist/collection/components/stzh-fieldset/stzh-fieldset.css +120 -0
  74. package/dist/collection/components/stzh-geo-ref-data/stzh-geo-ref-data.css +2 -0
  75. package/dist/collection/components/stzh-geo-ref-data/stzh-geo-ref-data.js +156 -51
  76. package/dist/collection/components/stzh-geo-ref-data/stzh-geo-ref-data.js.map +1 -1
  77. package/dist/collection/components/stzh-geo-ref-data/stzh-geo-ref-data.stories.js +64 -63
  78. package/dist/collection/components/stzh-input/stzh-input.css +6 -0
  79. package/dist/collection/components/stzh-input/stzh-input.js +23 -1
  80. package/dist/collection/components/stzh-input/stzh-input.js.map +1 -1
  81. package/dist/collection/components/stzh-pi-teaser/stzh-pi-teaser.css +18 -3
  82. package/dist/collection/components/stzh-pi-teaser/stzh-pi-teaser.stories.js +30 -29
  83. package/dist/collection/components/stzh-poicard/stzh-poicard.css +231 -0
  84. package/dist/collection/components/stzh-poicard/stzh-poicard.e2e.js +16 -0
  85. package/dist/collection/components/stzh-poicard/stzh-poicard.e2e.js.map +1 -0
  86. package/dist/collection/components/stzh-poicard/stzh-poicard.js +86 -0
  87. package/dist/collection/components/stzh-poicard/stzh-poicard.js.map +1 -0
  88. package/dist/collection/components/stzh-poicard/stzh-poicard.stories.js +117 -0
  89. package/dist/collection/components/stzh-poilist/stzh-poilist.css +210 -0
  90. package/dist/collection/components/stzh-poilist/stzh-poilist.e2e.js +16 -0
  91. package/dist/collection/components/stzh-poilist/stzh-poilist.e2e.js.map +1 -0
  92. package/dist/collection/components/stzh-poilist/stzh-poilist.js +181 -0
  93. package/dist/collection/components/stzh-poilist/stzh-poilist.js.map +1 -0
  94. package/dist/collection/components/stzh-poilist/stzh-poilist.localization.js +2 -0
  95. package/dist/collection/components/stzh-poilist/stzh-poilist.localization.js.map +1 -0
  96. package/dist/collection/components/stzh-poilist/stzh-poilist.stories.js +31 -0
  97. package/dist/collection/components/stzh-richtext/stzh-richtext.stories.js +31 -16
  98. package/dist/collection/components/stzh-saptcha/stzh-saptcha.js +34 -17
  99. package/dist/collection/components/stzh-saptcha/stzh-saptcha.js.map +1 -1
  100. package/dist/collection/components/stzh-saptcha/stzh-saptcha.stories.js +3 -0
  101. package/dist/collection/components/stzh-search/stzh-search.css +4 -4
  102. package/dist/collection/components/stzh-search/stzh-search.js +122 -2
  103. package/dist/collection/components/stzh-search/stzh-search.js.map +1 -1
  104. package/dist/collection/components/stzh-section/stzh-section.css +19 -6
  105. package/dist/collection/components/stzh-vbz-connection-finder/stzh-vbz-connection-finder.js +1 -1
  106. package/dist/collection/components/stzh-vbz-connection-finder/stzh-vbz-connection-finder.js.map +1 -1
  107. package/dist/collection/index.js.map +1 -1
  108. package/dist/collection/pages/jobsearch/jobsearch.e2e.js +16 -0
  109. package/dist/collection/pages/jobsearch/jobsearch.e2e.js.map +1 -0
  110. package/dist/components/index.js +1 -1
  111. package/dist/components/index2.js.map +1 -1
  112. package/dist/components/stzh-actions.js +12 -9
  113. package/dist/components/stzh-actions.js.map +1 -1
  114. package/dist/components/stzh-archivelist.js +20 -22
  115. package/dist/components/stzh-archivelist.js.map +1 -1
  116. package/dist/components/stzh-card2.js +55 -51
  117. package/dist/components/stzh-card2.js.map +1 -1
  118. package/dist/components/stzh-cardlist2.js +1 -1
  119. package/dist/components/stzh-cardlist2.js.map +1 -1
  120. package/dist/components/stzh-chipselect2.js +14 -2
  121. package/dist/components/stzh-chipselect2.js.map +1 -1
  122. package/dist/components/stzh-dropdown2.js +55 -55
  123. package/dist/components/stzh-dropdown2.js.map +1 -1
  124. package/dist/components/stzh-fieldset.js +1 -1
  125. package/dist/components/stzh-fieldset.js.map +1 -1
  126. package/dist/components/stzh-geo-ref-data.js +109 -45
  127. package/dist/components/stzh-geo-ref-data.js.map +1 -1
  128. package/dist/components/stzh-input2.js +7 -2
  129. package/dist/components/stzh-input2.js.map +1 -1
  130. package/dist/components/stzh-pi-teaser.js +1 -1
  131. package/dist/components/stzh-pi-teaser.js.map +1 -1
  132. package/dist/components/stzh-poicard.d.ts +11 -0
  133. package/dist/components/stzh-poicard.js +8 -0
  134. package/dist/components/stzh-poicard.js.map +1 -0
  135. package/dist/components/stzh-poicard2.js +108 -0
  136. package/dist/components/stzh-poicard2.js.map +1 -0
  137. package/dist/components/stzh-poilist.d.ts +11 -0
  138. package/dist/components/stzh-poilist.js +246 -0
  139. package/dist/components/stzh-poilist.js.map +1 -0
  140. package/dist/components/stzh-saptcha.js +13 -14
  141. package/dist/components/stzh-saptcha.js.map +1 -1
  142. package/dist/components/stzh-search.js +57 -3
  143. package/dist/components/stzh-search.js.map +1 -1
  144. package/dist/components/stzh-section.js +1 -1
  145. package/dist/components/stzh-section.js.map +1 -1
  146. package/dist/components/stzh-vbz-connection-finder.js +1 -1
  147. package/dist/components/stzh-vbz-connection-finder.js.map +1 -1
  148. package/dist/esm/{app-globals-fbb949bd.js → app-globals-ca13b6e3.js} +2 -2
  149. package/dist/esm/{app-globals-fbb949bd.js.map → app-globals-ca13b6e3.js.map} +1 -1
  150. package/dist/esm/index-e3050b18.js +40 -16
  151. package/dist/esm/index.js.map +1 -1
  152. package/dist/esm/loader.js +2 -2
  153. package/dist/esm/stzh-actions.entry.js +10 -8
  154. package/dist/esm/stzh-actions.entry.js.map +1 -1
  155. package/dist/esm/stzh-archivelist.entry.js +6 -16
  156. package/dist/esm/stzh-archivelist.entry.js.map +1 -1
  157. package/dist/esm/{stzh-card_2.entry.js → stzh-card.entry.js} +56 -143
  158. package/dist/esm/stzh-card.entry.js.map +1 -0
  159. package/dist/esm/{stzh-sortable.entry.js → stzh-cardlist_2.entry.js} +92 -2
  160. package/dist/esm/stzh-cardlist_2.entry.js.map +1 -0
  161. package/dist/esm/{stzh-checkbox_4.entry.js → stzh-checkbox_3.entry.js} +5 -91
  162. package/dist/esm/stzh-checkbox_3.entry.js.map +1 -0
  163. package/dist/esm/{stzh-chip_2.entry.js → stzh-chip.entry.js} +3 -216
  164. package/dist/esm/stzh-chip.entry.js.map +1 -0
  165. package/dist/esm/stzh-chipgroup.entry.js +21 -0
  166. package/dist/esm/stzh-chipgroup.entry.js.map +1 -0
  167. package/dist/esm/stzh-chipselect.entry.js +230 -0
  168. package/dist/esm/stzh-chipselect.entry.js.map +1 -0
  169. package/dist/esm/stzh-components.js +2 -2
  170. package/dist/esm/stzh-dropdown.entry.js +53 -55
  171. package/dist/esm/stzh-dropdown.entry.js.map +1 -1
  172. package/dist/esm/stzh-fieldset.entry.js +1 -1
  173. package/dist/esm/stzh-fieldset.entry.js.map +1 -1
  174. package/dist/esm/stzh-geo-ref-data.entry.js +98 -41
  175. package/dist/esm/stzh-geo-ref-data.entry.js.map +1 -1
  176. package/dist/esm/stzh-input.entry.js +6 -2
  177. package/dist/esm/stzh-input.entry.js.map +1 -1
  178. package/dist/esm/{stzh-chipgroup_2.entry.js → stzh-message.entry.js} +3 -19
  179. package/dist/esm/stzh-message.entry.js.map +1 -0
  180. package/dist/esm/stzh-overlay.entry.js +93 -0
  181. package/dist/esm/stzh-overlay.entry.js.map +1 -0
  182. package/dist/esm/stzh-pi-teaser.entry.js +1 -1
  183. package/dist/esm/stzh-pi-teaser.entry.js.map +1 -1
  184. package/dist/esm/stzh-poicard.entry.js +48 -0
  185. package/dist/esm/stzh-poicard.entry.js.map +1 -0
  186. package/dist/esm/stzh-poilist.entry.js +118 -0
  187. package/dist/esm/stzh-poilist.entry.js.map +1 -0
  188. package/dist/esm/stzh-popover.entry.js +441 -0
  189. package/dist/esm/stzh-popover.entry.js.map +1 -0
  190. package/dist/esm/stzh-saptcha.entry.js +11 -10
  191. package/dist/esm/stzh-saptcha.entry.js.map +1 -1
  192. package/dist/esm/stzh-search.entry.js +52 -3
  193. package/dist/esm/stzh-search.entry.js.map +1 -1
  194. package/dist/esm/stzh-section.entry.js +1 -1
  195. package/dist/esm/stzh-section.entry.js.map +1 -1
  196. package/dist/esm/{stzh-popover_2.entry.js → stzh-text.entry.js} +3 -439
  197. package/dist/esm/stzh-text.entry.js.map +1 -0
  198. package/dist/esm/stzh-vbz-connection-finder.entry.js +1 -1
  199. package/dist/esm/stzh-vbz-connection-finder.entry.js.map +1 -1
  200. package/dist/stzh-components/assets/i18n/de.json +9 -0
  201. package/dist/stzh-components/assets/i18n/en.json +9 -0
  202. package/dist/stzh-components/index.esm.js.map +1 -1
  203. package/dist/stzh-components/{p-206ec94f.entry.js → p-0846f5a7.entry.js} +2 -2
  204. package/dist/stzh-components/p-0846f5a7.entry.js.map +1 -0
  205. package/dist/stzh-components/p-0d092d58.entry.js +2 -0
  206. package/dist/stzh-components/p-0d092d58.entry.js.map +1 -0
  207. package/dist/stzh-components/{p-38cd406c.entry.js → p-10c2c688.entry.js} +2 -2
  208. package/dist/stzh-components/p-10c2c688.entry.js.map +1 -0
  209. package/dist/stzh-components/{p-23de5712.entry.js → p-1391115f.entry.js} +2 -2
  210. package/dist/stzh-components/{p-23de5712.entry.js.map → p-1391115f.entry.js.map} +1 -1
  211. package/dist/stzh-components/p-1b2fb680.entry.js +9 -0
  212. package/dist/stzh-components/p-1b2fb680.entry.js.map +1 -0
  213. package/dist/stzh-components/p-1e121c5f.entry.js +2 -0
  214. package/dist/stzh-components/p-1e121c5f.entry.js.map +1 -0
  215. package/dist/stzh-components/p-35d842ce.entry.js +2 -0
  216. package/dist/stzh-components/p-35d842ce.entry.js.map +1 -0
  217. package/dist/stzh-components/p-3e2b4d92.entry.js +2 -0
  218. package/dist/stzh-components/p-3e2b4d92.entry.js.map +1 -0
  219. package/dist/stzh-components/p-47cb71af.entry.js +2 -0
  220. package/dist/stzh-components/p-47cb71af.entry.js.map +1 -0
  221. package/dist/stzh-components/p-4e2db8e9.entry.js +8 -0
  222. package/dist/stzh-components/p-4e2db8e9.entry.js.map +1 -0
  223. package/dist/stzh-components/{p-cded8c4a.js → p-57caee36.js} +2 -2
  224. package/dist/stzh-components/p-616ae3be.entry.js +2 -0
  225. package/dist/stzh-components/p-616ae3be.entry.js.map +1 -0
  226. package/dist/stzh-components/{p-15d008ea.entry.js → p-72c9db89.entry.js} +3 -3
  227. package/dist/stzh-components/p-72c9db89.entry.js.map +1 -0
  228. package/dist/stzh-components/p-7bb2eb4e.entry.js +2 -0
  229. package/dist/stzh-components/p-7bb2eb4e.entry.js.map +1 -0
  230. package/dist/stzh-components/p-8c4d543d.entry.js +2 -0
  231. package/dist/stzh-components/p-8c4d543d.entry.js.map +1 -0
  232. package/dist/stzh-components/p-9506f599.entry.js +2 -0
  233. package/dist/stzh-components/p-9506f599.entry.js.map +1 -0
  234. package/dist/stzh-components/p-9b1267a6.entry.js +2 -0
  235. package/dist/stzh-components/p-9b1267a6.entry.js.map +1 -0
  236. package/dist/stzh-components/p-a9216459.entry.js +2 -0
  237. package/dist/stzh-components/p-a9216459.entry.js.map +1 -0
  238. package/dist/stzh-components/p-b2920d7f.entry.js +2 -0
  239. package/dist/stzh-components/p-b2920d7f.entry.js.map +1 -0
  240. package/dist/stzh-components/p-b6f19446.entry.js +2 -0
  241. package/dist/stzh-components/p-b6f19446.entry.js.map +1 -0
  242. package/dist/stzh-components/p-b75800da.entry.js +2 -0
  243. package/dist/stzh-components/p-b75800da.entry.js.map +1 -0
  244. package/dist/stzh-components/{p-d058fc1e.entry.js → p-c4bbdbfe.entry.js} +2 -2
  245. package/dist/stzh-components/p-c4bbdbfe.entry.js.map +1 -0
  246. package/dist/stzh-components/p-c6504f41.entry.js +2 -0
  247. package/dist/stzh-components/p-c6504f41.entry.js.map +1 -0
  248. package/dist/stzh-components/p-d29fd503.entry.js +2 -0
  249. package/dist/stzh-components/p-d29fd503.entry.js.map +1 -0
  250. package/dist/stzh-components/stzh-components.esm.js +1 -1
  251. package/dist/stzh-components/stzh-components.esm.js.map +1 -1
  252. package/dist/types/components/stzh-actions/stzh-actions.d.ts +3 -1
  253. package/dist/types/components/stzh-archivelist/stzh-archivelist.d.ts +4 -0
  254. package/dist/types/components/stzh-card/stzh-card.d.ts +4 -2
  255. package/dist/types/components/stzh-dropdown/stzh-dropdown.d.ts +6 -2
  256. package/dist/types/components/stzh-geo-ref-data/stzh-geo-ref-data.d.ts +16 -2
  257. package/dist/types/components/stzh-input/stzh-input.d.ts +2 -0
  258. package/dist/types/components/stzh-poicard/stzh-poicard.d.ts +14 -0
  259. package/dist/types/components/stzh-poilist/stzh-poilist.d.ts +31 -0
  260. package/dist/types/components/stzh-poilist/stzh-poilist.localization.d.ts +10 -0
  261. package/dist/types/components/stzh-saptcha/stzh-saptcha.d.ts +5 -4
  262. package/dist/types/components/stzh-search/stzh-search.d.ts +13 -0
  263. package/dist/types/components.d.ts +190 -10
  264. package/dist/types/index.d.ts +28 -0
  265. package/dist/vscode-data.json +104 -3
  266. package/package.json +1 -1
  267. package/dist/cjs/stzh-card_2.cjs.entry.js.map +0 -1
  268. package/dist/cjs/stzh-checkbox_4.cjs.entry.js.map +0 -1
  269. package/dist/cjs/stzh-chip_2.cjs.entry.js.map +0 -1
  270. package/dist/cjs/stzh-chipgroup_2.cjs.entry.js.map +0 -1
  271. package/dist/cjs/stzh-popover_2.cjs.entry.js.map +0 -1
  272. package/dist/cjs/stzh-sortable.cjs.entry.js.map +0 -1
  273. package/dist/esm/stzh-card_2.entry.js.map +0 -1
  274. package/dist/esm/stzh-checkbox_4.entry.js.map +0 -1
  275. package/dist/esm/stzh-chip_2.entry.js.map +0 -1
  276. package/dist/esm/stzh-chipgroup_2.entry.js.map +0 -1
  277. package/dist/esm/stzh-popover_2.entry.js.map +0 -1
  278. package/dist/esm/stzh-sortable.entry.js.map +0 -1
  279. package/dist/stzh-components/p-12851c24.entry.js +0 -2
  280. package/dist/stzh-components/p-12851c24.entry.js.map +0 -1
  281. package/dist/stzh-components/p-15d008ea.entry.js.map +0 -1
  282. package/dist/stzh-components/p-1b31cd8a.entry.js +0 -2
  283. package/dist/stzh-components/p-1b31cd8a.entry.js.map +0 -1
  284. package/dist/stzh-components/p-206ec94f.entry.js.map +0 -1
  285. package/dist/stzh-components/p-38cd406c.entry.js.map +0 -1
  286. package/dist/stzh-components/p-50c32fd1.entry.js +0 -2
  287. package/dist/stzh-components/p-50c32fd1.entry.js.map +0 -1
  288. package/dist/stzh-components/p-55349f2e.entry.js +0 -2
  289. package/dist/stzh-components/p-55349f2e.entry.js.map +0 -1
  290. package/dist/stzh-components/p-9c643610.entry.js +0 -2
  291. package/dist/stzh-components/p-9c643610.entry.js.map +0 -1
  292. package/dist/stzh-components/p-9cdd5e6f.entry.js +0 -2
  293. package/dist/stzh-components/p-9cdd5e6f.entry.js.map +0 -1
  294. package/dist/stzh-components/p-a672aaea.entry.js +0 -8
  295. package/dist/stzh-components/p-a672aaea.entry.js.map +0 -1
  296. package/dist/stzh-components/p-a77b49cb.entry.js +0 -2
  297. package/dist/stzh-components/p-a77b49cb.entry.js.map +0 -1
  298. package/dist/stzh-components/p-b509dedd.entry.js +0 -2
  299. package/dist/stzh-components/p-b509dedd.entry.js.map +0 -1
  300. package/dist/stzh-components/p-b870c799.entry.js +0 -2
  301. package/dist/stzh-components/p-b870c799.entry.js.map +0 -1
  302. package/dist/stzh-components/p-d058fc1e.entry.js.map +0 -1
  303. package/dist/stzh-components/p-da043311.entry.js +0 -9
  304. package/dist/stzh-components/p-da043311.entry.js.map +0 -1
  305. package/dist/stzh-components/p-fb077fd5.entry.js +0 -2
  306. package/dist/stzh-components/p-fb077fd5.entry.js.map +0 -1
  307. /package/dist/stzh-components/{p-cded8c4a.js.map → p-57caee36.js.map} +0 -0
@@ -0,0 +1,93 @@
1
+ import { r as registerInstance, c as createEvent, h, a as Host, g as getElement } from './index-e3050b18.js';
2
+ import { c as createBaseFocusTrapOptions } from './overlay-utils-4da78ee6.js';
3
+ import { c as createFocusTrap } from './focus-trap.esm-5ca3a3f7.js';
4
+
5
+ const stzhOverlayCss = ".sc-stzh-overlay-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-overlay-h{display:none}.sc-stzh-overlay-h::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-overlay-h::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-overlay-h *.sc-stzh-overlay,.sc-stzh-overlay-h *.sc-stzh-overlay::before,.sc-stzh-overlay-h *.sc-stzh-overlay::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-overlay-h .has-focus.sc-stzh-overlay{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}.sc-stzh-overlay-h .stzh-fylingfocus-focused.sc-stzh-overlay{outline-style:none !important}.sc-stzh-overlay-h .stzh-fylingfocus-focused.sc-stzh-overlay::-moz-focus-inner{border:0 !important}.sc-stzh-overlay-h{--backdrop-opacity:var(--stzh-overlay-backdrop-opacity);--backdrop-background-color:var(--stzh-overlay-backdrop-background-color)}.stzh-overlay.sc-stzh-overlay{display:none;z-index:var(--stzh-z-index-overlay);position:fixed;top:0;left:0;width:100%;height:100%;flex-direction:column;justify-content:stretch;align-items:stretch}.stzh-overlay__backdrop.sc-stzh-overlay{z-index:1;background-color:var(--backdrop-background-color);opacity:var(--backdrop-opacity);position:absolute;top:0;left:0;width:100%;height:100%}.stzh-overlay__content.sc-stzh-overlay{z-index:2;display:flex;flex-direction:column;align-items:center;position:relative;flex-grow:1;overflow:auto}.stzh-overlay__content-inner.sc-stzh-overlay{margin-top:auto;margin-bottom:auto;outline:none}.stzh-overlay--is-open.sc-stzh-overlay{display:flex}";
6
+
7
+ const CLASS_BODY_OPEN = "stzh-overlay-open";
8
+ const StzhOverlay = class {
9
+ constructor(hostRef) {
10
+ registerInstance(this, hostRef);
11
+ this.stzhOpen = createEvent(this, "stzhOpen", 7);
12
+ this.stzhClose = createEvent(this, "stzhClose", 7);
13
+ this.open = false;
14
+ this.stay = true;
15
+ this.a11yLabel = "";
16
+ }
17
+ async show() {
18
+ this.open = true;
19
+ this.stzhOpen.emit({
20
+ component: "stzh-overlay"
21
+ });
22
+ }
23
+ async hide() {
24
+ this.open = false;
25
+ this.stzhClose.emit({
26
+ component: "stzh-overlay"
27
+ });
28
+ }
29
+ getSiblings() {
30
+ if (!this.parentElement) {
31
+ return [];
32
+ }
33
+ return Array.from(this.parentElement.children).filter((child) => child !== this.element);
34
+ }
35
+ disableSiblings() {
36
+ this.getSiblings().forEach((sibling) => {
37
+ sibling.setAttribute("aria-hidden", "true");
38
+ });
39
+ }
40
+ enableSiblings() {
41
+ this.getSiblings().forEach((sibling) => {
42
+ sibling.removeAttribute("aria-hidden");
43
+ });
44
+ }
45
+ dialogShown() {
46
+ document.body.classList.add(CLASS_BODY_OPEN);
47
+ this.disableSiblings();
48
+ if (this.trap) {
49
+ this.trap.activate();
50
+ }
51
+ }
52
+ dialogHidden() {
53
+ document.body.classList.remove(CLASS_BODY_OPEN);
54
+ this.enableSiblings();
55
+ if (this.trap) {
56
+ this.trap.deactivate();
57
+ }
58
+ }
59
+ connectedCallback() {
60
+ if (!this.stay && this.element.parentElement !== document.body) {
61
+ document.body.appendChild(this.element);
62
+ }
63
+ this.parentElement = this.element.parentElement;
64
+ }
65
+ componentDidRender() {
66
+ this.open ? this.dialogShown() : this.dialogHidden();
67
+ }
68
+ componentDidUpdate() {
69
+ this.trap.updateContainerElements(this.element);
70
+ }
71
+ componentDidLoad() {
72
+ this.trap = createFocusTrap(this.element, Object.assign({ fallbackFocus: this.dialogElement }, createBaseFocusTrapOptions()));
73
+ if (this.open) {
74
+ this.dialogShown();
75
+ }
76
+ }
77
+ disconnectedCallback() {
78
+ this.dialogHidden();
79
+ }
80
+ render() {
81
+ const classes = {
82
+ "stzh-overlay": true,
83
+ "stzh-overlay--is-open": this.open
84
+ };
85
+ return (h(Host, null, h("div", { class: classes }, h("div", { class: "stzh-overlay__backdrop" }), h("div", { class: "stzh-overlay__content" }, h("div", { class: "stzh-overlay__content-inner", ref: (el) => (this.dialogElement = el), tabindex: "-1", role: "dialog", "aria-label": this.a11yLabel || null, "aria-hidden": this.open ? "false" : "true" }, h("slot", null))))));
86
+ }
87
+ get element() { return getElement(this); }
88
+ };
89
+ StzhOverlay.style = stzhOverlayCss;
90
+
91
+ export { StzhOverlay as stzh_overlay };
92
+
93
+ //# sourceMappingURL=stzh-overlay.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"stzh-overlay.entry.js","mappings":"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","names":[],"sources":["src/components/stzh-overlay/stzh-overlay.scss?tag=stzh-overlay&encapsulation=scoped","src/components/stzh-overlay/stzh-overlay.tsx"],"sourcesContent":["/**\n * @prop --backdrop-opacity: Opacity of overlay backdrop\n * @prop --backdrop-background-color: Background color of overlay backdrop\n *\n * @prop --stzh-overlay-backdrop-opacity: **Global**: Opacity of backdrops\n * @prop --stzh-overlay-backdrop-background-color: **Global**: Background color of backdrops\n */\n\n:host {\n --backdrop-opacity: #{$overlayBackdropOpacity};\n --backdrop-background-color: #{$overlayBackdropBackgroundColor};\n}\n\n.stzh-overlay {\n display: none;\n z-index: $zIndexOverlay;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n flex-direction: column;\n justify-content: stretch;\n align-items: stretch;\n\n &__backdrop {\n z-index: 1;\n background-color: var(--backdrop-background-color);\n opacity: var(--backdrop-opacity);\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n\n &__content {\n z-index: 2;\n display: flex;\n flex-direction: column;\n align-items: center;\n position: relative;\n flex-grow: 1;\n overflow: auto;\n }\n\n &__content-inner {\n // center content vertically\n margin-top: auto;\n margin-bottom: auto;\n outline: none;\n }\n\n &--is-open {\n display: flex;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Method,\n Element\n} from \"@stencil/core\";\n\nimport {\n StzhOverlayOpenEvent,\n StzhOverlayCloseEvent\n} from \"../../index\";\n\nimport { createBaseFocusTrapOptions } from \"../../utils/overlay-utils\";\n\nimport { createFocusTrap, FocusTrap } from 'focus-trap';\n\nconst CLASS_BODY_OPEN = \"stzh-overlay-open\";\n\n/**\n * @slot - Slot for any content\n */\n@Component({\n tag: \"stzh-overlay\",\n styleUrl: \"stzh-overlay.scss\",\n scoped: true\n})\nexport class StzhOverlay {\n /** Whether overlay is open */\n @Prop({ mutable: true }) open: boolean = false;\n\n /** Stay in original position (true) or move to body (false) */\n @Prop() stay: boolean = true;\n\n /** Accessible label for dialog */\n @Prop({ attribute: \"a11y-label\" }) a11yLabel: string = \"\";\n\n /** Dialog open event */\n @Event() stzhOpen: EventEmitter<StzhOverlayOpenEvent>;\n\n /** Dialog close event */\n @Event() stzhClose: EventEmitter<StzhOverlayCloseEvent>;\n\n @Element() element: HTMLStzhOverlayElement;\n\n @Method()\n async show() {\n this.open = true;\n this.stzhOpen.emit({\n component: \"stzh-overlay\"\n });\n }\n\n @Method()\n async hide() {\n this.open = false;\n this.stzhClose.emit({\n component: \"stzh-overlay\"\n });\n }\n\n private trap: FocusTrap;\n private parentElement: HTMLElement;\n private dialogElement: HTMLDivElement;\n\n private getSiblings() {\n if (!this.parentElement) {\n return [];\n }\n\n return Array.from(this.parentElement.children).filter(\n (child) => child !== this.element\n );\n }\n\n private disableSiblings() {\n this.getSiblings().forEach((sibling) => {\n sibling.setAttribute(\"aria-hidden\", \"true\");\n });\n }\n\n private enableSiblings() {\n this.getSiblings().forEach((sibling) => {\n sibling.removeAttribute(\"aria-hidden\");\n });\n }\n\n private dialogShown() {\n document.body.classList.add(CLASS_BODY_OPEN);\n this.disableSiblings();\n\n if (this.trap) {\n this.trap.activate();\n }\n }\n\n private dialogHidden() {\n document.body.classList.remove(CLASS_BODY_OPEN);\n this.enableSiblings();\n\n if (this.trap) {\n this.trap.deactivate();\n }\n }\n\n connectedCallback() {\n if (!this.stay && this.element.parentElement !== document.body) {\n document.body.appendChild(this.element);\n }\n\n this.parentElement = this.element.parentElement;\n }\n\n componentDidRender() {\n this.open ? this.dialogShown() : this.dialogHidden();\n }\n\n componentDidUpdate() {\n this.trap.updateContainerElements(this.element);\n }\n\n componentDidLoad() {\n this.trap = createFocusTrap(this.element, {\n fallbackFocus: this.dialogElement,\n ...createBaseFocusTrapOptions()\n });\n\n if (this.open) {\n this.dialogShown();\n }\n }\n\n disconnectedCallback() {\n this.dialogHidden();\n }\n\n render() {\n const classes = {\n \"stzh-overlay\": true,\n \"stzh-overlay--is-open\": this.open\n };\n\n return (\n <Host>\n <div class={classes}>\n <div class=\"stzh-overlay__backdrop\"></div>\n <div class=\"stzh-overlay__content\">\n <div\n class=\"stzh-overlay__content-inner\"\n ref={(el) => (this.dialogElement = el as HTMLDivElement)}\n tabindex=\"-1\"\n role=\"dialog\"\n aria-label={this.a11yLabel || null}\n aria-hidden={this.open ? \"false\" : \"true\"}\n >\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -2,7 +2,7 @@ import { r as registerInstance, c as createEvent, h, a as Host, g as getElement
2
2
  import { h as hasSlot } from './utils-4f9b3f37.js';
3
3
  import './string-utils-e252977e.js';
4
4
 
5
- const stzhPiTeaserCss = ".sc-stzh-pi-teaser-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-pi-teaser-h{display:none}.sc-stzh-pi-teaser-h::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-pi-teaser-h::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-pi-teaser-h *.sc-stzh-pi-teaser,.sc-stzh-pi-teaser-h *.sc-stzh-pi-teaser::before,.sc-stzh-pi-teaser-h *.sc-stzh-pi-teaser::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-pi-teaser-h .has-focus.sc-stzh-pi-teaser{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}.sc-stzh-pi-teaser-h .stzh-fylingfocus-focused.sc-stzh-pi-teaser{outline-style:none !important}.sc-stzh-pi-teaser-h .stzh-fylingfocus-focused.sc-stzh-pi-teaser::-moz-focus-inner{border:0 !important}.sc-stzh-pi-teaser-h{--image-background-color:var(--stzh-pi-teaser-image-background-color, var(--stzh-color-primary30));display:flex;flex-direction:column}.stzh-pi-teaser.sc-stzh-pi-teaser{position:relative;flex-grow:1;display:flex;flex-direction:column;background-color:var(--stzh-color-white)}.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{display:flex;flex-grow:1;padding-right:var(--stzh-space-medium);padding-left:var(--stzh-space-medium);padding-top:var(--stzh-space-medium);padding-bottom:var(--stzh-space-xlarge);flex-direction:column;align-items:flex-start}@media screen and (min-width: 900px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-right:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-left:var(--stzh-space-large)}}@media screen and (min-width: 600px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-top:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-top:var(--stzh-space-xlarge)}}@media screen and (min-width: 1260px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 900px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-bottom:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-bottom:var(--stzh-space-xxxlarge)}}.stzh-pi-teaser__image.sc-stzh-pi-teaser{width:100%;display:none}.stzh-pi-teaser__dateline.sc-stzh-pi-teaser{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);color:var(--stzh-color-coolgrey70);margin:0 0 var(--stzh-space-small)}@media screen and (min-width: 900px){.stzh-pi-teaser__dateline.sc-stzh-pi-teaser{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)}}.stzh-pi-teaser__title.sc-stzh-pi-teaser{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-hecto-font-size);line-height:var(--stzh-font-hecto-text-line-height);letter-spacing:var(--stzh-font-hecto-text-letter-spacing);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;color:var(--stzh-color-black);margin:0}.stzh-pi-teaser__title-link.sc-stzh-pi-teaser{display:block;font-family:inherit;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:none;color:var(--stzh-color-black);-webkit-text-decoration-line:none;text-decoration-line:none;transition:color var(--stzh-base-transition-animation-speed);border-radius:var(--stzh-button-border-radius);cursor:pointer}.stzh-pi-teaser__title-link.sc-stzh-pi-teaser::after{content:\"\";display:block;position:absolute;top:0;left:0;width:100%;height:100%}.stzh-pi-teaser__title-link.sc-stzh-pi-teaser::after{z-index:1}.stzh-pi-teaser__lead.sc-stzh-pi-teaser{font-size:var(--stzh-font-milli-font-size);line-height:var(--stzh-font-milli-text-line-height);letter-spacing:var(--stzh-font-curve---text-letter-spacing);margin-top:0;margin-bottom:var(--stzh-space-small)}@media screen and (min-width: 900px){.stzh-pi-teaser__lead.sc-stzh-pi-teaser{margin-bottom:var(--stzh-space-medium)}}@media screen and (min-width: 1260px){.stzh-pi-teaser__lead.sc-stzh-pi-teaser{margin-bottom:var(--stzh-space-large)}}.stzh-pi-teaser__date.sc-stzh-pi-teaser{color:var(--stzh-color-coolgrey70);margin:0;text-align:right;width:100%}.stzh-pi-teaser--has-image.sc-stzh-pi-teaser .stzh-pi-teaser__image.sc-stzh-pi-teaser{display:block}.stzh-pi-teaser--has-image.sc-stzh-pi-teaser .stzh-pi-teaser__lead.sc-stzh-pi-teaser{margin-top:var(--stzh-space-small)}@media screen and (min-width: 900px){.stzh-pi-teaser--has-image.sc-stzh-pi-teaser .stzh-pi-teaser__lead.sc-stzh-pi-teaser{margin-top:var(--stzh-space-medium)}}@media screen and (min-width: 1260px){.stzh-pi-teaser--has-image.sc-stzh-pi-teaser .stzh-pi-teaser__lead.sc-stzh-pi-teaser{margin-top:var(--stzh-space-large)}}.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser{--background-color:var(--image-background-color)}.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__title-wrapper.sc-stzh-pi-teaser{display:flex;flex-direction:column;padding-top:var(--stzh-space-medium);padding-right:var(--stzh-space-medium);padding-bottom:var(--stzh-space-medium);padding-left:var(--stzh-space-medium)}@media screen and (min-width: 900px){.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__title-wrapper.sc-stzh-pi-teaser{padding-top:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__title-wrapper.sc-stzh-pi-teaser{padding-right:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__title-wrapper.sc-stzh-pi-teaser{padding-bottom:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__title-wrapper.sc-stzh-pi-teaser{padding-left:var(--stzh-space-large)}}.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__dateline.sc-stzh-pi-teaser{margin-bottom:var(--stzh-space-xxsmall)}";
5
+ const stzhPiTeaserCss = ".sc-stzh-pi-teaser-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-pi-teaser-h{display:none}.sc-stzh-pi-teaser-h::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-pi-teaser-h::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-pi-teaser-h *.sc-stzh-pi-teaser,.sc-stzh-pi-teaser-h *.sc-stzh-pi-teaser::before,.sc-stzh-pi-teaser-h *.sc-stzh-pi-teaser::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-pi-teaser-h .has-focus.sc-stzh-pi-teaser{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}.sc-stzh-pi-teaser-h .stzh-fylingfocus-focused.sc-stzh-pi-teaser{outline-style:none !important}.sc-stzh-pi-teaser-h .stzh-fylingfocus-focused.sc-stzh-pi-teaser::-moz-focus-inner{border:0 !important}.sc-stzh-pi-teaser-h{--image-background-color:var(--stzh-pi-teaser-image-background-color, var(--stzh-color-primary30));display:flex;flex-direction:column}.stzh-pi-teaser.sc-stzh-pi-teaser{position:relative;flex-grow:1;display:flex;flex-direction:column;background-color:var(--stzh-color-white)}.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{display:flex;flex-grow:1;padding-right:var(--stzh-space-medium);padding-left:var(--stzh-space-medium);padding-top:var(--stzh-space-medium);padding-bottom:var(--stzh-space-xlarge);flex-direction:column;align-items:flex-start}@media screen and (min-width: 900px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-right:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-left:var(--stzh-space-large)}}@media screen and (min-width: 600px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-top:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-top:var(--stzh-space-xlarge)}}@media screen and (min-width: 1260px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 900px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-bottom:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-pi-teaser__wrapper.sc-stzh-pi-teaser{padding-bottom:var(--stzh-space-xxxlarge)}}.stzh-pi-teaser__image.sc-stzh-pi-teaser{width:100%;display:none}.stzh-pi-teaser__dateline.sc-stzh-pi-teaser{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);color:var(--stzh-color-coolgrey70);margin:0 0 var(--stzh-space-small)}@media screen and (min-width: 900px){.stzh-pi-teaser__dateline.sc-stzh-pi-teaser{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)}}.stzh-pi-teaser__title.sc-stzh-pi-teaser{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-deci-font-size);line-height:var(--stzh-font-deci-heading-line-height);letter-spacing:var(--stzh-font-curve---heading-letter-spacing);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;color:var(--stzh-color-black);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;line-height:1 !important}@media screen and (min-width: 1600px){.stzh-pi-teaser__title.sc-stzh-pi-teaser{font-size:var(--stzh-font-deca-font-size);line-height:var(--stzh-font-deca-text-line-height);letter-spacing:var(--stzh-font-deca-text-letter-spacing)}}.stzh-pi-teaser__title-link.sc-stzh-pi-teaser{display:block;font-family:inherit;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:none;color:var(--stzh-color-black);-webkit-text-decoration-line:none;text-decoration-line:none;transition:color var(--stzh-base-transition-animation-speed);border-radius:var(--stzh-button-border-radius);cursor:pointer}.stzh-pi-teaser__title-link.sc-stzh-pi-teaser::after{content:\"\";display:block;position:absolute;top:0;left:0;width:100%;height:100%}.stzh-pi-teaser__title-link.sc-stzh-pi-teaser::after{z-index:1}.stzh-pi-teaser__lead.sc-stzh-pi-teaser{font-size:var(--stzh-font-milli-font-size);line-height:var(--stzh-font-milli-text-line-height);letter-spacing:var(--stzh-font-curve---text-letter-spacing);margin-top:0;margin-bottom:var(--stzh-space-small)}@media screen and (min-width: 900px){.stzh-pi-teaser__lead.sc-stzh-pi-teaser{margin-bottom:var(--stzh-space-medium)}}@media screen and (min-width: 1260px){.stzh-pi-teaser__lead.sc-stzh-pi-teaser{margin-bottom:var(--stzh-space-large)}}.stzh-pi-teaser__date.sc-stzh-pi-teaser{color:var(--stzh-color-coolgrey70);margin:0;text-align:right;width:100%}.stzh-pi-teaser--has-image.sc-stzh-pi-teaser .stzh-pi-teaser__image.sc-stzh-pi-teaser{display:block}.stzh-pi-teaser--has-image.sc-stzh-pi-teaser .stzh-pi-teaser__lead.sc-stzh-pi-teaser{margin-top:var(--stzh-space-small)}@media screen and (min-width: 900px){.stzh-pi-teaser--has-image.sc-stzh-pi-teaser .stzh-pi-teaser__lead.sc-stzh-pi-teaser{margin-top:var(--stzh-space-medium)}}@media screen and (min-width: 1260px){.stzh-pi-teaser--has-image.sc-stzh-pi-teaser .stzh-pi-teaser__lead.sc-stzh-pi-teaser{margin-top:var(--stzh-space-large)}}.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser{--background-color:var(--image-background-color)}.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__title-wrapper.sc-stzh-pi-teaser{display:flex;flex-direction:column;padding-top:var(--stzh-space-medium);padding-right:var(--stzh-space-medium);padding-bottom:var(--stzh-space-medium);padding-left:var(--stzh-space-medium)}@media screen and (min-width: 900px){.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__title-wrapper.sc-stzh-pi-teaser{padding-top:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__title-wrapper.sc-stzh-pi-teaser{padding-right:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__title-wrapper.sc-stzh-pi-teaser{padding-bottom:var(--stzh-space-large)}}@media screen and (min-width: 900px){.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__title-wrapper.sc-stzh-pi-teaser{padding-left:var(--stzh-space-large)}}.stzh-pi-teaser__title-ratio.sc-stzh-pi-teaser .stzh-pi-teaser__dateline.sc-stzh-pi-teaser{margin-bottom:var(--stzh-space-xxsmall)}";
6
6
 
7
7
  const StzhPiTeaser = class {
8
8
  constructor(hostRef) {
@@ -1 +1 @@
1
- {"file":"stzh-pi-teaser.entry.js","mappings":";;;;AAAA,MAAM,eAAe,GAAG,4yNAA4yN;;MCevzN,YAAY;;;;IAqCf,oBAAe,GAAG,CAAC,aAAyB;MAClD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAClB,SAAS,EAAE,gBAAgB;QAC3B,aAAa;QACb,IAAI,EAAE,IAAI,CAAC,IAAI;OAChB,CAAC,CAAC;KACJ,CAAC;;;;oBA5ByB,EAAE;mBAGH,EAAE;wBAGkB,GAAG;gBAG1B,EAAE;gBAGF,EAAE;;EAkBzB,kBAAkB;IAChB,qBAAqB,CAAC;;MACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,KAAI,MAAA,IAAI,CAAC,kBAAkB,0CAAE,SAAS,CAAA,CAAC;MAExE,IAAI,QAAQ,EAAE;QACZ,MAAA,IAAI,CAAC,gBAAgB,0CAAE,YAAY,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;OAC9D;KACF,CAAC,CAAC;GACJ;EAED,aAAa;IACX,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,GAAG,QAAQ,CAAC;IAC7C,QACE,WAAK,KAAK,EAAC,+BAA+B,IACvC,IAAI,CAAC,QAAQ,IAAI,SAAG,KAAK,EAAC,0BAA0B,IAAE,IAAI,CAAC,QAAQ,CAAK,EACzE,EAAC,OAAO,IAAC,KAAK,EAAC,uBAAuB,IACpC,EAAC,SAAS,IACR,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,gBAAgB,GAAG,EAA2C,CAAC,EAChF,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,eAAe,IAE7B,WAAK,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,kBAAkB,GAAG,EAAoB,CAAC,IAC7D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,YAAM,IAAI,EAAC,SAAS,GAAQ,CACvD,CACI,CACJ,CACN,EACN;GACH;EAED,MAAM;IACJ,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpD,MAAM,sBAAsB,GAAG,CAAC,YAAY,CAAC;IAE7C,MAAM,OAAO,GAAG;MACd,gBAAgB,EAAE,IAAI;MACtB,0BAA0B,EAAE,OAAO;MACnC,2BAA2B,EAAE,YAAY;KAC1C,CAAC;IAEF,QACE,EAAC,IAAI,gBAAW,OAAO,IACrB,eAAS,KAAK,EAAE,OAAO,gBAAc,IAAI,CAAC,OAAO,EAAE,IAAI,EAAC,UAAU,IAChE,WAAK,KAAK,EAAC,uBAAuB,IAChC,kBAAY,KAAK,EAAC,KAAK,IACrB,YAAM,IAAI,EAAE,OAAO,GAAS,CACjB,CACT,EACL,sBAAsB,KACrB,kBAAY,KAAK,EAAC,6BAA6B,EAAC,KAAK,EAAE,KAAK,IACzD,IAAI,CAAC,aAAa,EAAE,CACV,CACd,EACD,WAAK,KAAK,EAAC,yBAAyB,IACjC,CAAC,sBAAsB,IAAI,IAAI,CAAC,aAAa,EAAE,EAChD,WAAK,KAAK,EAAC,sBAAsB,IAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,YAAM,IAAI,EAAC,MAAM,GAAQ,CAAO,EAC1F,IAAI,CAAC,IAAI,IAAI,WAAK,KAAK,EAAC,sBAAsB,IAAE,IAAI,CAAC,IAAI,CAAO,CAC7D,CACE,CACL,EACP;GACH;;;;;;;","names":[],"sources":["src/components/stzh-pi-teaser/stzh-pi-teaser.scss?tag=stzh-pi-teaser&encapsulation=scoped","src/components/stzh-pi-teaser/stzh-pi-teaser.tsx"],"sourcesContent":["/**\n * @prop --stzh-pi-teaser-image-background-color: Background color if no image is present\n */\n\n:host {\n --image-background-color: var(--stzh-pi-teaser-image-background-color, #{$colorPrimary30});\n\n display: flex;\n flex-direction: column;\n}\n\n.stzh-pi-teaser {\n position: relative;\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n background-color: var(--stzh-color-white);\n\n &__wrapper {\n display: flex;\n flex-grow: 1;\n @include spaceCurve('padding-right', 'intermediary');\n @include spaceCurve('padding-left', 'intermediary');\n @include spaceCurve('padding-top', 'regular');\n @include spaceCurve('padding-bottom', 'medium');\n flex-direction: column;\n align-items: flex-start;\n }\n\n &__image {\n width: 100%;\n display: none;\n }\n\n &__dateline {\n @include font('heavy');\n @include fontCurve('p1');\n color: var(--stzh-color-coolgrey70);\n margin: 0 0 var(--stzh-space-small);\n }\n\n &__title {\n @include font('heavy');\n @include fontSize('hecto', 'heading');\n @include wordWrap;\n color: var(--stzh-color-black);\n margin: 0;\n }\n\n &__title-link {\n display: block;\n font-family: inherit;\n padding: 0;\n appearance: none;\n background-color: transparent;\n border: none;\n color: var(--stzh-color-black);\n text-decoration-line: none;\n transition: color $baseTransitionAnimationSpeed;\n border-radius: $buttonBorderRadius;\n cursor: pointer;\n\n &::after {\n content: '';\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n\n &::after {\n z-index: 1;\n }\n }\n\n &__lead {\n @include fontSize('milli');\n margin-top: 0;\n @include spaceCurve('margin-bottom', 'small');\n }\n\n &__date {\n color: var(--stzh-color-coolgrey70);\n margin: 0;\n text-align: right;\n width: 100%;\n }\n\n /* Has image */\n &--has-image &__image {\n display: block;\n }\n\n &--has-image &__lead {\n @include spaceCurve('margin-top', 'small');\n }\n\n /* Title ratio styling (no image) */\n &__title-ratio {\n --background-color: var(--image-background-color);\n }\n\n &__title-ratio &__title-wrapper {\n display: flex;\n flex-direction: column;\n @include spaceCurve('padding-top', 'intermediary');\n @include spaceCurve('padding-right', 'intermediary');\n @include spaceCurve('padding-bottom', 'intermediary');\n @include spaceCurve('padding-left', 'intermediary');\n }\n\n &__title-ratio &__dateline {\n margin-bottom: var(--stzh-space-xxsmall);\n }\n}\n\n","import { Component, Element, Event, EventEmitter, h, Host, Prop } from \"@stencil/core\";\n\nimport { StzhPiTeaserClickEvent } from \"../../index\";\nimport { hasSlot } from \"../../utils/utils\";\n\n/**\n * @slot heading - Heading text (alternative for heading property)\n * @slot lead - Lead text (alternative for lead property)\n * @slot image - Image (rendered within ratio 2:1, hence the different slot name to prevent naming collision)\n */\n@Component({\n tag: \"stzh-pi-teaser\",\n styleUrl: \"stzh-pi-teaser.scss\",\n scoped: true,\n})\nexport class StzhPiTeaser {\n /** Href of card */\n @Prop({ reflect: true }) href: string;\n\n /** target if the button is used as link (if href used) */\n @Prop() target: string;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the link elements.\n * Default value will be taken from `heading` prop/slot.\n */\n @Prop() analyticsId: string;\n\n /** Dateline */\n @Prop() dateline: string = \"\";\n\n /** Heading (alternative for heading slot) */\n @Prop() heading: string = \"\";\n\n /** Heading level */\n @Prop() headingLevel: \"1\" | \"2\" | \"3\" | \"4\" = \"3\";\n\n /** Lead text (alternative for lead slot) */\n @Prop() lead: string = \"\";\n\n /** Date */\n @Prop() date: string = \"\";\n\n @Element() element: HTMLStzhListElement;\n\n /** Click event (if href is used) */\n @Event() stzhClick: EventEmitter<StzhPiTeaserClickEvent>;\n\n private titleLinkElement: HTMLAnchorElement | HTMLButtonElement;\n private headingTextElement: HTMLDivElement;\n\n private handleCardClick = (originalEvent: MouseEvent) => {\n this.stzhClick.emit({\n component: \"stzh-pi-teaser\",\n originalEvent,\n href: this.href,\n });\n };\n\n componentDidRender() {\n requestAnimationFrame(() => {\n const objectId = this.analyticsId || this.headingTextElement?.innerText;\n\n if (objectId) {\n this.titleLinkElement?.setAttribute(\"s-object-id\", objectId);\n }\n });\n }\n\n renderHeading(): DocumentFragment {\n const Heading = `h${this.headingLevel}`;\n const TitleLink = this.href ? \"a\" : \"button\";\n return (\n <div class=\"stzh-pi-teaser__title-wrapper\">\n {this.dateline && <p class=\"stzh-pi-teaser__dateline\">{this.dateline}</p>}\n <Heading class=\"stzh-pi-teaser__title\">\n <TitleLink\n ref={el => (this.titleLinkElement = el as HTMLAnchorElement | HTMLButtonElement)}\n class=\"stzh-pi-teaser__title-link\"\n href={this.href}\n target={this.target}\n onClick={this.handleCardClick}\n >\n <div ref={el => (this.headingTextElement = el as HTMLDivElement)}>\n {this.heading ? this.heading : <slot name=\"heading\"></slot>}\n </div>\n </TitleLink>\n </Heading>\n </div>\n );\n }\n\n render() {\n const hasLead = !!this.lead || hasSlot(this.element, \"lead\");\n const hasImageSlot = hasSlot(this.element, \"image\");\n const shouldRenderTitleRatio = !hasImageSlot;\n\n const classes = {\n \"stzh-pi-teaser\": true,\n \"stzh-pi-teaser--has-lead\": hasLead,\n \"stzh-pi-teaser--has-image\": hasImageSlot,\n };\n\n return (\n <Host has-lead={hasLead}>\n <article class={classes} aria-label={this.heading} role=\"listitem\">\n <div class=\"stzh-pi-teaser__image\">\n <stzh-ratio ratio=\"2:1\">\n <slot name={\"image\"}></slot>\n </stzh-ratio>\n </div>\n {shouldRenderTitleRatio && (\n <stzh-ratio class=\"stzh-pi-teaser__title-ratio\" ratio={\"2:1\"}>\n {this.renderHeading()}\n </stzh-ratio>\n )}\n <div class=\"stzh-pi-teaser__wrapper\">\n {!shouldRenderTitleRatio && this.renderHeading()}\n <div class=\"stzh-pi-teaser__lead\">{this.lead ? this.lead : <slot name=\"lead\"></slot>}</div>\n {this.date && <div class=\"stzh-pi-teaser__date\">{this.date}</div>}\n </div>\n </article>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"stzh-pi-teaser.entry.js","mappings":";;;;AAAA,MAAM,eAAe,GAAG,6pOAA6pO;;MCexqO,YAAY;;;;IAqCf,oBAAe,GAAG,CAAC,aAAyB;MAClD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAClB,SAAS,EAAE,gBAAgB;QAC3B,aAAa;QACb,IAAI,EAAE,IAAI,CAAC,IAAI;OAChB,CAAC,CAAC;KACJ,CAAC;;;;oBA5ByB,EAAE;mBAGH,EAAE;wBAGkB,GAAG;gBAG1B,EAAE;gBAGF,EAAE;;EAkBzB,kBAAkB;IAChB,qBAAqB,CAAC;;MACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,KAAI,MAAA,IAAI,CAAC,kBAAkB,0CAAE,SAAS,CAAA,CAAC;MAExE,IAAI,QAAQ,EAAE;QACZ,MAAA,IAAI,CAAC,gBAAgB,0CAAE,YAAY,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;OAC9D;KACF,CAAC,CAAC;GACJ;EAED,aAAa;IACX,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,GAAG,QAAQ,CAAC;IAC7C,QACE,WAAK,KAAK,EAAC,+BAA+B,IACvC,IAAI,CAAC,QAAQ,IAAI,SAAG,KAAK,EAAC,0BAA0B,IAAE,IAAI,CAAC,QAAQ,CAAK,EACzE,EAAC,OAAO,IAAC,KAAK,EAAC,uBAAuB,IACpC,EAAC,SAAS,IACR,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,gBAAgB,GAAG,EAA2C,CAAC,EAChF,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,eAAe,IAE7B,WAAK,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,kBAAkB,GAAG,EAAoB,CAAC,IAC7D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,GAAG,YAAM,IAAI,EAAC,SAAS,GAAQ,CACvD,CACI,CACJ,CACN,EACN;GACH;EAED,MAAM;IACJ,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpD,MAAM,sBAAsB,GAAG,CAAC,YAAY,CAAC;IAE7C,MAAM,OAAO,GAAG;MACd,gBAAgB,EAAE,IAAI;MACtB,0BAA0B,EAAE,OAAO;MACnC,2BAA2B,EAAE,YAAY;KAC1C,CAAC;IAEF,QACE,EAAC,IAAI,gBAAW,OAAO,IACrB,eAAS,KAAK,EAAE,OAAO,gBAAc,IAAI,CAAC,OAAO,EAAE,IAAI,EAAC,UAAU,IAChE,WAAK,KAAK,EAAC,uBAAuB,IAChC,kBAAY,KAAK,EAAC,KAAK,IACrB,YAAM,IAAI,EAAE,OAAO,GAAS,CACjB,CACT,EACL,sBAAsB,KACrB,kBAAY,KAAK,EAAC,6BAA6B,EAAC,KAAK,EAAE,KAAK,IACzD,IAAI,CAAC,aAAa,EAAE,CACV,CACd,EACD,WAAK,KAAK,EAAC,yBAAyB,IACjC,CAAC,sBAAsB,IAAI,IAAI,CAAC,aAAa,EAAE,EAChD,WAAK,KAAK,EAAC,sBAAsB,IAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,YAAM,IAAI,EAAC,MAAM,GAAQ,CAAO,EAC1F,IAAI,CAAC,IAAI,IAAI,WAAK,KAAK,EAAC,sBAAsB,IAAE,IAAI,CAAC,IAAI,CAAO,CAC7D,CACE,CACL,EACP;GACH;;;;;;;","names":[],"sources":["src/components/stzh-pi-teaser/stzh-pi-teaser.scss?tag=stzh-pi-teaser&encapsulation=scoped","src/components/stzh-pi-teaser/stzh-pi-teaser.tsx"],"sourcesContent":["/**\n * @prop --stzh-pi-teaser-image-background-color: Background color if no image is present\n */\n\n:host {\n --image-background-color: var(--stzh-pi-teaser-image-background-color, #{$colorPrimary30});\n\n display: flex;\n flex-direction: column;\n}\n\n.stzh-pi-teaser {\n position: relative;\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n background-color: var(--stzh-color-white);\n\n &__wrapper {\n display: flex;\n flex-grow: 1;\n @include spaceCurve('padding-right', 'intermediary');\n @include spaceCurve('padding-left', 'intermediary');\n @include spaceCurve('padding-top', 'regular');\n @include spaceCurve('padding-bottom', 'medium');\n flex-direction: column;\n align-items: flex-start;\n }\n\n &__image {\n width: 100%;\n display: none;\n }\n\n &__dateline {\n @include font('heavy');\n @include fontCurve('p1');\n color: var(--stzh-color-coolgrey70);\n margin: 0 0 var(--stzh-space-small);\n }\n\n &__title {\n @include font('heavy');\n @include fontSize('deci', 'heading');\n @include wordWrap;\n\n color: var(--stzh-color-black);\n margin: 0;\n\n @include mq($from: ultra) {\n @include fontSize('deca', 'heading');\n }\n\n display: -webkit-box;\n -webkit-line-clamp: 3; /* Limit the text to 3 lines */\n -webkit-box-orient: vertical;\n overflow: hidden;\n text-overflow: ellipsis; /* Adds \"...\" at the end if truncated */\n line-height: 1.0 !important;\n }\n\n &__title-link {\n display: block;\n font-family: inherit;\n padding: 0;\n appearance: none;\n background-color: transparent;\n border: none;\n color: var(--stzh-color-black);\n text-decoration-line: none;\n transition: color $baseTransitionAnimationSpeed;\n border-radius: $buttonBorderRadius;\n cursor: pointer;\n\n &::after {\n content: '';\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n\n &::after {\n z-index: 1;\n }\n }\n\n &__lead {\n @include fontSize('milli');\n margin-top: 0;\n @include spaceCurve('margin-bottom', 'small');\n }\n\n &__date {\n color: var(--stzh-color-coolgrey70);\n margin: 0;\n text-align: right;\n width: 100%;\n }\n\n /* Has image */\n &--has-image &__image {\n display: block;\n }\n\n &--has-image &__lead {\n @include spaceCurve('margin-top', 'small');\n }\n\n /* Title ratio styling (no image) */\n &__title-ratio {\n --background-color: var(--image-background-color);\n }\n\n &__title-ratio &__title-wrapper {\n display: flex;\n flex-direction: column;\n @include spaceCurve('padding-top', 'intermediary');\n @include spaceCurve('padding-right', 'intermediary');\n @include spaceCurve('padding-bottom', 'intermediary');\n @include spaceCurve('padding-left', 'intermediary');\n }\n\n &__title-ratio &__dateline {\n margin-bottom: var(--stzh-space-xxsmall);\n }\n}\n\n","import { Component, Element, Event, EventEmitter, h, Host, Prop } from \"@stencil/core\";\n\nimport { StzhPiTeaserClickEvent } from \"../../index\";\nimport { hasSlot } from \"../../utils/utils\";\n\n/**\n * @slot heading - Heading text (alternative for heading property)\n * @slot lead - Lead text (alternative for lead property)\n * @slot image - Image (rendered within ratio 2:1, hence the different slot name to prevent naming collision)\n */\n@Component({\n tag: \"stzh-pi-teaser\",\n styleUrl: \"stzh-pi-teaser.scss\",\n scoped: true,\n})\nexport class StzhPiTeaser {\n /** Href of card */\n @Prop({ reflect: true }) href: string;\n\n /** target if the button is used as link (if href used) */\n @Prop() target: string;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the link elements.\n * Default value will be taken from `heading` prop/slot.\n */\n @Prop() analyticsId: string;\n\n /** Dateline */\n @Prop() dateline: string = \"\";\n\n /** Heading (alternative for heading slot) */\n @Prop() heading: string = \"\";\n\n /** Heading level */\n @Prop() headingLevel: \"1\" | \"2\" | \"3\" | \"4\" = \"3\";\n\n /** Lead text (alternative for lead slot) */\n @Prop() lead: string = \"\";\n\n /** Date */\n @Prop() date: string = \"\";\n\n @Element() element: HTMLStzhListElement;\n\n /** Click event (if href is used) */\n @Event() stzhClick: EventEmitter<StzhPiTeaserClickEvent>;\n\n private titleLinkElement: HTMLAnchorElement | HTMLButtonElement;\n private headingTextElement: HTMLDivElement;\n\n private handleCardClick = (originalEvent: MouseEvent) => {\n this.stzhClick.emit({\n component: \"stzh-pi-teaser\",\n originalEvent,\n href: this.href,\n });\n };\n\n componentDidRender() {\n requestAnimationFrame(() => {\n const objectId = this.analyticsId || this.headingTextElement?.innerText;\n\n if (objectId) {\n this.titleLinkElement?.setAttribute(\"s-object-id\", objectId);\n }\n });\n }\n\n renderHeading(): DocumentFragment {\n const Heading = `h${this.headingLevel}`;\n const TitleLink = this.href ? \"a\" : \"button\";\n return (\n <div class=\"stzh-pi-teaser__title-wrapper\">\n {this.dateline && <p class=\"stzh-pi-teaser__dateline\">{this.dateline}</p>}\n <Heading class=\"stzh-pi-teaser__title\">\n <TitleLink\n ref={el => (this.titleLinkElement = el as HTMLAnchorElement | HTMLButtonElement)}\n class=\"stzh-pi-teaser__title-link\"\n href={this.href}\n target={this.target}\n onClick={this.handleCardClick}\n >\n <div ref={el => (this.headingTextElement = el as HTMLDivElement)}>\n {this.heading ? this.heading : <slot name=\"heading\"></slot>}\n </div>\n </TitleLink>\n </Heading>\n </div>\n );\n }\n\n render() {\n const hasLead = !!this.lead || hasSlot(this.element, \"lead\");\n const hasImageSlot = hasSlot(this.element, \"image\");\n const shouldRenderTitleRatio = !hasImageSlot;\n\n const classes = {\n \"stzh-pi-teaser\": true,\n \"stzh-pi-teaser--has-lead\": hasLead,\n \"stzh-pi-teaser--has-image\": hasImageSlot,\n };\n\n return (\n <Host has-lead={hasLead}>\n <article class={classes} aria-label={this.heading} role=\"listitem\">\n <div class=\"stzh-pi-teaser__image\">\n <stzh-ratio ratio=\"2:1\">\n <slot name={\"image\"}></slot>\n </stzh-ratio>\n </div>\n {shouldRenderTitleRatio && (\n <stzh-ratio class=\"stzh-pi-teaser__title-ratio\" ratio={\"2:1\"}>\n {this.renderHeading()}\n </stzh-ratio>\n )}\n <div class=\"stzh-pi-teaser__wrapper\">\n {!shouldRenderTitleRatio && this.renderHeading()}\n <div class=\"stzh-pi-teaser__lead\">{this.lead ? this.lead : <slot name=\"lead\"></slot>}</div>\n {this.date && <div class=\"stzh-pi-teaser__date\">{this.date}</div>}\n </div>\n </article>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,48 @@
1
+ import { r as registerInstance, h, a as Host, g as getElement } from './index-e3050b18.js';
2
+
3
+ const stzhPoicardCss = ".sc-stzh-poicard-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-poicard-h{display:none}.sc-stzh-poicard-h::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-poicard-h::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-poicard-h *.sc-stzh-poicard,.sc-stzh-poicard-h *.sc-stzh-poicard::before,.sc-stzh-poicard-h *.sc-stzh-poicard::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-poicard-h .has-focus.sc-stzh-poicard{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}.sc-stzh-poicard-h .stzh-fylingfocus-focused.sc-stzh-poicard{outline-style:none !important}.sc-stzh-poicard-h .stzh-fylingfocus-focused.sc-stzh-poicard::-moz-focus-inner{border:0 !important}.sc-stzh-poicard-h{--background-color:var(--stzh-color-grey10);--hover-background-color:var(--stzh-color-grey20);--title-color:var(--stzh-color-primary70);--title-hover-color:var(--stzh-color-primary80);--title-background-color:var(--stzh-color-secondary20);--title-hover-background-color:var(--stzh-color-secondary30)}.stzh-poicard.sc-stzh-poicard{display:block;background-color:var(--background-color);text-decoration:none;height:100%}.stzh-poicard.sc-stzh-poicard:hover{--title-color:var(--title-hover-color);--title-background-color:var(--title-hover-background-color);--background-color:var(--hover-background-color)}.stzh-poicard__content.sc-stzh-poicard{display:flex;flex-direction:column;gap:var(--stzh-space-small)}.stzh-poicard__content-with-icon.sc-stzh-poicard,.stzh-poicard__content-with-badge.sc-stzh-poicard{display:flex;align-items:center;gap:var(--stzh-space-xxsmall)}.stzh-poicard__content-with-icon.sc-stzh-poicard stzh-text.sc-stzh-poicard{width:auto;--color:var(--stzh-color-primary70)}.stzh-poicard__content-with-icon.sc-stzh-poicard stzh-icon.sc-stzh-poicard{--color:var(--stzh-color-primary70)}.stzh-poicard__content-with-badge.sc-stzh-poicard stzh-text.sc-stzh-poicard{width:auto;--color:var(--stzh-color-grey80)}.stzh-poicard__content-head.sc-stzh-poicard{display:flex;align-items:center;padding:var(--stzh-space-xsmall) var(--stzh-space-medium) var(--stzh-space-small);--color:var(--title-color);background-color:var(--title-background-color)}.stzh-poicard__content-head.sc-stzh-poicard stzh-icon.sc-stzh-poicard{--color:var(--stzh-color-primary)}.stzh-poicard__content-title.sc-stzh-poicard{width:100%;--color:var(--stzh-color-grey80)}.stzh-poicard.sc-stzh-poicard:hover .stzh-poicard__content-title.sc-stzh-poicard{--color:var(--stzh-color-black)}.stzh-poicard__content-body.sc-stzh-poicard{padding:var(--stzh-space-xsmall) var(--stzh-space-medium) var(--stzh-space-medium);display:flex;flex-direction:column;gap:var(--stzh-space-xsmall)}";
4
+
5
+ const StzhPoicard = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.init = () => {
9
+ this.itemWatcher(this.item);
10
+ };
11
+ this.item = "";
12
+ }
13
+ itemWatcher(newValue) {
14
+ if (!newValue) {
15
+ this._item = undefined;
16
+ }
17
+ else if (typeof newValue === "string") {
18
+ try {
19
+ this._item = JSON.parse(newValue);
20
+ }
21
+ catch (e) {
22
+ this._item = undefined;
23
+ }
24
+ }
25
+ else {
26
+ this._item = newValue;
27
+ }
28
+ }
29
+ connectedCallback() {
30
+ this.init();
31
+ }
32
+ render() {
33
+ const classes = {
34
+ "stzh-poicard": true,
35
+ };
36
+ return (h(Host, null, h("a", { class: classes, href: this._item.url, target: "_blank" }, h("div", { class: "stzh-poicard__content" }, h("div", { class: "stzh-poicard__content-head" }, h("stzh-heading", null, this._item.title)), h("div", { class: "stzh-poicard__content-body" }, this._item.distance && (h("div", { class: "stzh-poicard__content-with-icon" }, h("stzh-icon", { name: "pin" }), h("stzh-text", null, this._item.distance))), this._item.temp && (h("div", { class: "stzh-poicard__content-with-icon" }, h("stzh-icon", { name: "thermometer" }), h("stzh-text", null, this._item.temp))), (this._item.statusMessageContent ||
37
+ this._item.statusMessage) && (h("div", { class: "stzh-poicard__content-with-badge" }, this._item.statusMessage && (h("stzh-text", { size: "milli" }, this._item.statusMessage)), this._item.statusMessageContent && (h("stzh-chip", { variant: "tag", size: "small", inverted: true, icon: "", type: this._item.success ? "default" : "error", label: this._item.statusMessageContent })))))))));
38
+ }
39
+ get element() { return getElement(this); }
40
+ static get watchers() { return {
41
+ "item": ["itemWatcher"]
42
+ }; }
43
+ };
44
+ StzhPoicard.style = stzhPoicardCss;
45
+
46
+ export { StzhPoicard as stzh_poicard };
47
+
48
+ //# sourceMappingURL=stzh-poicard.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"stzh-poicard.entry.js","mappings":";;AAAA,MAAM,cAAc,GAAG,8nGAA8nG;;MCWxoG,WAAW;;;IAsBd,SAAI,GAAG;MACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC7B,CAAC;gBApB2C,EAAE;;EAI/C,WAAW,CAAC,QAAsC;IAChD,IAAI,CAAC,QAAQ,EAAE;MACb,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;KACxB;SAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;MACvC,IAAI;QACF,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;OACnC;MAAC,OAAO,CAAC,EAAE;QACV,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;OACxB;KACF;SAAM;MACL,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;KACvB;GACF;EAMD,iBAAiB;IACf,IAAI,CAAC,IAAI,EAAE,CAAC;GACb;EAED,MAAM;IACJ,MAAM,OAAO,GAAG;MACd,cAAc,EAAE,IAAI;KACrB,CAAC;IAEF,QACE,EAAC,IAAI,QACH,SAAG,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAC,QAAQ,IACtD,WAAK,KAAK,EAAC,uBAAuB,IAChC,WAAK,KAAK,EAAC,4BAA4B,IACrC,wBAAe,IAAI,CAAC,KAAK,CAAC,KAAK,CAAgB,CAC3C,EACN,WAAK,KAAK,EAAC,4BAA4B,IACpC,IAAI,CAAC,KAAK,CAAC,QAAQ,KAClB,WAAK,KAAK,EAAC,iCAAiC,IAC1C,iBAAW,IAAI,EAAC,KAAK,GAAa,EAClC,qBAAY,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAa,CACxC,CACP,EAEA,IAAI,CAAC,KAAK,CAAC,IAAI,KACd,WAAK,KAAK,EAAC,iCAAiC,IAC1C,iBAAW,IAAI,EAAC,aAAa,GAAa,EAC1C,qBAAY,IAAI,CAAC,KAAK,CAAC,IAAI,CAAa,CACpC,CACP,EAEA,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB;MAC/B,IAAI,CAAC,KAAK,CAAC,aAAa,MACxB,WAAK,KAAK,EAAC,kCAAkC,IAC1C,IAAI,CAAC,KAAK,CAAC,aAAa,KACvB,iBAAW,IAAI,EAAC,OAAO,IACpB,IAAI,CAAC,KAAK,CAAC,aAAa,CACf,CACb,EACA,IAAI,CAAC,KAAK,CAAC,oBAAoB,KAC9B,iBACE,OAAO,EAAC,KAAK,EACb,IAAI,EAAC,OAAO,EACZ,QAAQ,EAAE,IAAI,EACd,IAAI,EAAC,EAAE,EACP,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,GAAG,OAAO,EAC9C,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,oBAAoB,GAC3B,CACd,CACG,CACP,CACG,CACF,CACJ,CACC,EACP;GACH;;;;;;;;;;","names":[],"sources":["src/components/stzh-poicard/stzh-poicard.scss?tag=stzh-poicard&encapsulation=scoped","src/components/stzh-poicard/stzh-poicard.tsx"],"sourcesContent":[":host {\n --background-color: var(--stzh-color-grey10);\n --hover-background-color: var(--stzh-color-grey20);\n --title-color: var(--stzh-color-primary70);\n --title-hover-color: var(--stzh-color-primary80);\n --title-background-color: var(--stzh-color-secondary20);\n --title-hover-background-color: var(--stzh-color-secondary30);\n}\n\n.stzh-poicard {\n display: block;\n background-color: var(--background-color);\n text-decoration: none;\n height: 100%;\n\n &:hover {\n --title-color: var(--title-hover-color);\n --title-background-color: var(--title-hover-background-color);\n --background-color: var(--hover-background-color);\n }\n\n /* Content */\n\n &__content {\n display: flex;\n flex-direction: column;\n gap: var(--stzh-space-small);\n }\n\n &__content-with-icon,\n &__content-with-badge {\n display: flex;\n align-items: center;\n gap: var(--stzh-space-xxsmall);\n }\n\n &__content-with-icon stzh-text {\n width: auto;\n --color: var(--stzh-color-primary70);\n }\n\n &__content-with-icon stzh-icon {\n --color: var(--stzh-color-primary70);\n }\n\n &__content-with-badge stzh-text {\n width: auto;\n --color: var(--stzh-color-grey80);\n }\n\n /* Content head */\n\n &__content-head {\n display: flex;\n align-items: center;\n padding: var(--stzh-space-xsmall) var(--stzh-space-medium) var(--stzh-space-small);\n --color: var(--title-color);\n background-color: var(--title-background-color);\n }\n\n &__content-head stzh-icon {\n --color: var(--stzh-color-primary);\n }\n\n &__content-title {\n width: 100%;\n --color: var(--stzh-color-grey80);\n }\n\n &:hover &__content-title {\n --color: var(--stzh-color-black);\n }\n\n /* Content Body */\n\n &__content-body {\n padding: var(--stzh-space-xsmall) var(--stzh-space-medium) var(--stzh-space-medium);\n display: flex;\n flex-direction: column;\n gap: var(--stzh-space-xsmall);\n }\n}\n","import { Component, Element, h, Host, Prop, Watch } from \"@stencil/core\";\nimport { StzhPoiCardItemData } from \"../../index\";\n\n/**\n *\n */\n@Component({\n tag: \"stzh-poicard\",\n styleUrl: \"stzh-poicard.scss\",\n scoped: true,\n})\nexport class StzhPoicard {\n @Element() element: HTMLStzhPoicardElement;\n\n /** Socialmediastream item */\n @Prop() item: StzhPoiCardItemData | string = \"\";\n private _item: StzhPoiCardItemData | undefined;\n\n @Watch(\"item\")\n itemWatcher(newValue: StzhPoiCardItemData | string) {\n if (!newValue) {\n this._item = undefined;\n } else if (typeof newValue === \"string\") {\n try {\n this._item = JSON.parse(newValue);\n } catch (e) {\n this._item = undefined;\n }\n } else {\n this._item = newValue;\n }\n }\n\n private init = () => {\n this.itemWatcher(this.item);\n };\n\n connectedCallback() {\n this.init();\n }\n\n render() {\n const classes = {\n \"stzh-poicard\": true,\n };\n\n return (\n <Host>\n <a class={classes} href={this._item.url} target=\"_blank\">\n <div class=\"stzh-poicard__content\">\n <div class=\"stzh-poicard__content-head\">\n <stzh-heading>{this._item.title}</stzh-heading>\n </div>\n <div class=\"stzh-poicard__content-body\">\n {this._item.distance && (\n <div class=\"stzh-poicard__content-with-icon\">\n <stzh-icon name=\"pin\"></stzh-icon>\n <stzh-text>{this._item.distance}</stzh-text>\n </div>\n )}\n\n {this._item.temp && (\n <div class=\"stzh-poicard__content-with-icon\">\n <stzh-icon name=\"thermometer\"></stzh-icon>\n <stzh-text>{this._item.temp}</stzh-text>\n </div>\n )}\n\n {(this._item.statusMessageContent ||\n this._item.statusMessage) && (\n <div class=\"stzh-poicard__content-with-badge\">\n {this._item.statusMessage && (\n <stzh-text size=\"milli\">\n {this._item.statusMessage}\n </stzh-text>\n )}\n {this._item.statusMessageContent && (\n <stzh-chip\n variant=\"tag\"\n size=\"small\"\n inverted={true}\n icon=\"\"\n type={this._item.success ? \"default\" : \"error\"}\n label={this._item.statusMessageContent}\n ></stzh-chip>\n )}\n </div>\n )}\n </div>\n </div>\n </a>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,118 @@
1
+ import { r as registerInstance, h, F as Fragment, a as Host, g as getElement } from './index-e3050b18.js';
2
+ import { a as axios } from './axios-1264ee0b.js';
3
+
4
+ const stzhPoilistCss = ".sc-stzh-poilist-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-poilist-h{display:none}.sc-stzh-poilist-h::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-poilist-h::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-poilist-h *.sc-stzh-poilist,.sc-stzh-poilist-h *.sc-stzh-poilist::before,.sc-stzh-poilist-h *.sc-stzh-poilist::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-poilist-h .has-focus.sc-stzh-poilist{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}.sc-stzh-poilist-h .stzh-fylingfocus-focused.sc-stzh-poilist{outline-style:none !important}.sc-stzh-poilist-h .stzh-fylingfocus-focused.sc-stzh-poilist::-moz-focus-inner{border:0 !important}.stzh-poilist__header.sc-stzh-poilist{margin-bottom:var(--stzh-space-small);display:flex;justify-content:space-between;align-items:center}@media screen and (min-width: 900px){.stzh-poilist__header.sc-stzh-poilist{margin-bottom:var(--stzh-space-medium)}}@media screen and (min-width: 1260px){.stzh-poilist__header.sc-stzh-poilist{margin-bottom:var(--stzh-space-large)}}.stzh-poilist__header.sc-stzh-poilist stzh-text.sc-stzh-poilist{--color:var(--stzh-color-grey80);font-family:var(--stzh-font-family-heavy);font-weight:var(--stzh-font-weight-heavy);font-style:var(--stzh-font-style-heavy)}.stzh-poilist__show-more.sc-stzh-poilist{margin-top:var(--stzh-space-xlarge);display:grid}@media screen and (min-width: 900px){.stzh-poilist__show-more.sc-stzh-poilist{margin-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-poilist__show-more.sc-stzh-poilist{margin-top:var(--stzh-space-xxxlarge)}}@media screen and (min-width: 600px){.stzh-poilist__show-more.sc-stzh-poilist{justify-content:center}}.stzh-poilist.sc-stzh-poilist stzh-dropdown.sc-stzh-poilist{--color:var(--stzh-color-primary90);--icon-color:var(--stzh-color-primary90);--icon-angle-color:var(--stzh-color-primary90)}";
5
+
6
+ const StzhPoilist = class {
7
+ constructor(hostRef) {
8
+ registerInstance(this, hostRef);
9
+ this.handleMoreClick = async () => {
10
+ this.loadingText = this.localization.dataLoading;
11
+ this.isLoading = true;
12
+ this.currentOffset++;
13
+ const { data } = await axios.get(this.getCurrentApiUrl());
14
+ this.meta = data.meta;
15
+ this.items = this.items.concat(data.items);
16
+ this.isLoading = false;
17
+ };
18
+ this.onSortChange = async (e) => {
19
+ this.activeSorting = e.detail.value;
20
+ this.currentOffset = 0;
21
+ this.items = [];
22
+ await this.apiWatcher(this.api);
23
+ };
24
+ this.localization = undefined;
25
+ this.api = undefined;
26
+ this.currentOffset = 0;
27
+ this.meta = undefined;
28
+ this.items = [];
29
+ this.isLoading = true;
30
+ this.dropdownOptions = [];
31
+ this.activeSorting = undefined;
32
+ this.latitude = 47.3714332;
33
+ this.longitude = 8.542093;
34
+ this.geopositionError = "";
35
+ this.loadingText = "";
36
+ }
37
+ async apiWatcher(newValue) {
38
+ this.loadingText = this.localization.dataLoading;
39
+ if (!newValue) {
40
+ return;
41
+ }
42
+ // load data from API
43
+ const { data } = await axios.get(this.getCurrentApiUrl());
44
+ this.meta = data.meta;
45
+ this.items = data.items;
46
+ this.isLoading = false;
47
+ }
48
+ getCurrentApiUrl() {
49
+ return `${this.api}?offset=${this.currentOffset}&sort=${this.activeSorting}:DESC&latitude=${this.latitude}&longitude=${this.longitude}`;
50
+ }
51
+ getNumberOfLoadedItems() {
52
+ if (this.meta.currentPage !== this.meta.totalPages) {
53
+ return this.meta.itemsPerPage * this.meta.currentPage;
54
+ }
55
+ else {
56
+ return this.meta.totalItems;
57
+ }
58
+ }
59
+ async getUserPosition() {
60
+ this.loadingText = this.localization.geopositionLoading;
61
+ try {
62
+ const position = await this.getPositionAsync();
63
+ this.latitude = position.coords.latitude;
64
+ this.longitude = position.coords.longitude;
65
+ }
66
+ catch (geopositionNotFoundException) {
67
+ console.error("geopositionNotFoundException", geopositionNotFoundException);
68
+ this.geopositionError = this.localization.geopositionError;
69
+ }
70
+ }
71
+ getPositionAsync() {
72
+ return new Promise((resolve, reject) => {
73
+ if (navigator.geolocation) {
74
+ navigator.geolocation.getCurrentPosition((position) => resolve(position), (error) => reject(error));
75
+ }
76
+ else {
77
+ reject(new Error("Geolocation is not supported by this browser."));
78
+ }
79
+ });
80
+ }
81
+ async componentWillLoad() {
82
+ if (!this.localization) {
83
+ this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, "poilist");
84
+ }
85
+ this.dropdownOptions = [
86
+ {
87
+ text: this.localization.sortByDistance,
88
+ value: "distance",
89
+ },
90
+ {
91
+ text: this.localization.sortByName,
92
+ value: "name",
93
+ },
94
+ ];
95
+ this.activeSorting = this.dropdownOptions[0].value;
96
+ }
97
+ async componentDidLoad() {
98
+ await this.getUserPosition();
99
+ await this.apiWatcher(this.api);
100
+ }
101
+ render() {
102
+ const classes = {
103
+ "stzh-poilist": true,
104
+ };
105
+ return (h(Host, null, h("div", { class: classes }, h("stzh-overlay", { open: this.isLoading }, h("stzh-loader", { label: this.loadingText })), this.geopositionError && (h("stzh-message", { type: "error", label: this.geopositionError })), (this.items.length > 0 || this.meta) && (h(Fragment, null, h("div", { class: "stzh-poilist__header" }, h("stzh-text", { size: "micro" }, this.getNumberOfLoadedItems(), " ", this.localization.of, " ", this.meta.totalItems), h("stzh-dropdown", { label: "Sortierung", "hide-optional": true, variant: "plain", noSearch: true, inline: true, noWrap: true, onStzhChange: this.onSortChange, items: Array.isArray(this.activeSorting)
106
+ ? this.activeSorting
107
+ : [this.activeSorting], options: this.dropdownOptions })), h("stzh-cardlist", { layout: "teasers" }, this.items.map((item) => (h("stzh-poicard", { item: item })))), this.meta.currentPage !== this.meta.totalPages && (h("div", { class: "stzh-poilist__show-more" }, h("stzh-button", { variant: "secondary", label: this.localization.showMore, onClick: this.handleMoreClick }))))))));
108
+ }
109
+ get element() { return getElement(this); }
110
+ static get watchers() { return {
111
+ "api": ["apiWatcher"]
112
+ }; }
113
+ };
114
+ StzhPoilist.style = stzhPoilistCss;
115
+
116
+ export { StzhPoilist as stzh_poilist };
117
+
118
+ //# sourceMappingURL=stzh-poilist.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"stzh-poilist.entry.js","mappings":"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","names":[],"sources":["src/components/stzh-poilist/stzh-poilist.scss?tag=stzh-poilist&encapsulation=scoped","src/components/stzh-poilist/stzh-poilist.tsx"],"sourcesContent":[":host {\n}\n\n.stzh-poilist {\n &__header {\n @include spaceCurve('margin-bottom', 'small');\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n\n &__header stzh-text {\n --color: var(--stzh-color-grey80);\n @include font(heavy);\n }\n\n &__show-more {\n @include spaceCurve('margin-top', 'medium');\n display: grid;\n\n @include mq($from: small) {\n justify-content: center;\n }\n }\n\n stzh-dropdown {\n --color: var(--stzh-color-primary90);\n --icon-color: var(--stzh-color-primary90);\n --icon-angle-color: var(--stzh-color-primary90);\n }\n}\n","import {\n Component,\n Element,\n Fragment,\n h,\n Host,\n Prop,\n State,\n Watch,\n} from \"@stencil/core\";\n\nimport axios from \"axios\";\n\nimport {\n StzhDropdownChangeEvent,\n StzhDropdownCustomEvent,\n StzhDropdownOption,\n StzhPoiCardItemData,\n StzhPoiListData,\n StzhPoiListMetaData,\n} from \"../../index\";\nimport { StzhPoilistLocalizedText } from \"./stzh-poilist.localization\"; // export type StzhPoiListMetaData = {\n\n@Component({\n tag: \"stzh-poilist\",\n styleUrl: \"stzh-poilist.scss\",\n scoped: true,\n})\nexport class StzhPoilist {\n /** Translation strings */\n @Prop() localization: StzhPoilistLocalizedText;\n\n /** API URL (`{lang}` is replaced in the URL) */\n @Prop() api: string;\n\n @Element() element: HTMLStzhPoilistElement;\n\n @State() currentOffset: number = 0;\n @State() meta: StzhPoiListMetaData;\n @State() items: StzhPoiCardItemData[] = [];\n @State() isLoading: boolean = true;\n\n /** Sorting */\n @State() dropdownOptions: StzhDropdownOption[] = [];\n @State() activeSorting: string | string[];\n\n /** Geoposition (STZH Rathaus by default) */\n @State() latitude: number = 47.3714332;\n @State() longitude: number = 8.542093;\n @State() geopositionError: string = \"\";\n\n @State() loadingText: string = \"\";\n\n @Watch(\"api\")\n async apiWatcher(newValue: string) {\n this.loadingText = this.localization.dataLoading;\n if (!newValue) {\n return;\n }\n\n // load data from API\n const { data } = await axios.get<StzhPoiListData>(this.getCurrentApiUrl());\n this.meta = data.meta;\n this.items = data.items;\n this.isLoading = false;\n }\n\n private getCurrentApiUrl() {\n return `${this.api}?offset=${this.currentOffset}&sort=${this.activeSorting}:DESC&latitude=${this.latitude}&longitude=${this.longitude}`;\n }\n\n private handleMoreClick = async () => {\n this.loadingText = this.localization.dataLoading;\n this.isLoading = true;\n this.currentOffset++;\n const { data } = await axios.get<StzhPoiListData>(this.getCurrentApiUrl());\n this.meta = data.meta;\n this.items = this.items.concat(data.items);\n this.isLoading = false;\n };\n\n private getNumberOfLoadedItems(): number {\n if (this.meta.currentPage !== this.meta.totalPages) {\n return this.meta.itemsPerPage * this.meta.currentPage;\n } else {\n return this.meta.totalItems;\n }\n }\n\n private onSortChange = async (\n e: StzhDropdownCustomEvent<StzhDropdownChangeEvent>\n ) => {\n this.activeSorting = e.detail.value;\n this.currentOffset = 0;\n this.items = [];\n await this.apiWatcher(this.api);\n };\n\n private async getUserPosition() {\n this.loadingText = this.localization.geopositionLoading;\n try {\n const position = await this.getPositionAsync();\n this.latitude = position.coords.latitude;\n this.longitude = position.coords.longitude;\n } catch (geopositionNotFoundException) {\n console.error(\n \"geopositionNotFoundException\",\n geopositionNotFoundException\n );\n this.geopositionError = this.localization.geopositionError;\n }\n }\n\n private getPositionAsync(): Promise<GeolocationPosition> {\n return new Promise((resolve, reject) => {\n if (navigator.geolocation) {\n navigator.geolocation.getCurrentPosition(\n (position) => resolve(position),\n (error) => reject(error)\n );\n } else {\n reject(new Error(\"Geolocation is not supported by this browser.\"));\n }\n });\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(\n this.element,\n \"poilist\"\n );\n }\n this.dropdownOptions = [\n {\n text: this.localization.sortByDistance,\n value: \"distance\",\n },\n {\n text: this.localization.sortByName,\n value: \"name\",\n },\n ];\n this.activeSorting = this.dropdownOptions[0].value;\n }\n\n async componentDidLoad() {\n await this.getUserPosition();\n await this.apiWatcher(this.api);\n }\n\n render() {\n const classes = {\n \"stzh-poilist\": true,\n };\n\n return (\n <Host>\n <div class={classes}>\n <stzh-overlay open={this.isLoading}>\n <stzh-loader label={this.loadingText}></stzh-loader>\n </stzh-overlay>\n\n {this.geopositionError && (\n <stzh-message\n type=\"error\"\n label={this.geopositionError}\n ></stzh-message>\n )}\n\n {(this.items.length > 0 || this.meta) && (\n <Fragment>\n <div class=\"stzh-poilist__header\">\n <stzh-text size=\"micro\">\n {this.getNumberOfLoadedItems()} {this.localization.of}{\" \"}\n {this.meta.totalItems}\n </stzh-text>\n <stzh-dropdown\n label=\"Sortierung\"\n hide-optional={true}\n variant=\"plain\"\n noSearch={true}\n inline={true}\n noWrap={true}\n onStzhChange={this.onSortChange}\n items={\n Array.isArray(this.activeSorting)\n ? this.activeSorting\n : [this.activeSorting]\n }\n options={this.dropdownOptions}\n ></stzh-dropdown>\n </div>\n\n <stzh-cardlist layout=\"teasers\">\n {this.items.map((item) => (\n <stzh-poicard item={item}></stzh-poicard>\n ))}\n </stzh-cardlist>\n\n {this.meta.currentPage !== this.meta.totalPages && (\n <div class=\"stzh-poilist__show-more\">\n <stzh-button\n variant=\"secondary\"\n label={this.localization.showMore}\n onClick={this.handleMoreClick}\n ></stzh-button>\n </div>\n )}\n </Fragment>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}