@oiz/stzh-components 2.7.0 → 2.8.0-beta

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 (773) hide show
  1. package/dist/cjs/{app-globals-c9c5ef57.js → app-globals-dff738b3.js} +2 -2
  2. package/dist/cjs/{app-globals-c9c5ef57.js.map → app-globals-dff738b3.js.map} +1 -1
  3. package/dist/cjs/index.cjs.js.map +1 -1
  4. package/dist/cjs/loader.cjs.js +2 -2
  5. package/dist/cjs/{string-utils-a867b99d.js → string-utils-2575ea7f.js} +14 -1
  6. package/dist/cjs/string-utils-2575ea7f.js.map +1 -0
  7. package/dist/cjs/stzh-actions.cjs.entry.js +1 -1
  8. package/dist/cjs/{stzh-sortable.cjs.entry.js → stzh-actionset_4.cjs.entry.js} +567 -3
  9. package/dist/cjs/stzh-actionset_4.cjs.entry.js.map +1 -0
  10. package/dist/cjs/stzh-amount.cjs.entry.js +4 -3
  11. package/dist/cjs/stzh-amount.cjs.entry.js.map +1 -1
  12. package/dist/cjs/stzh-appnav.cjs.entry.js +1 -1
  13. package/dist/cjs/stzh-audio.cjs.entry.js +1 -1
  14. package/dist/cjs/stzh-badge_3.cjs.entry.js +7 -7
  15. package/dist/cjs/stzh-badge_3.cjs.entry.js.map +1 -1
  16. package/dist/cjs/stzh-buttongroup.cjs.entry.js +1 -1
  17. package/dist/cjs/stzh-buttongroup.cjs.entry.js.map +1 -1
  18. package/dist/cjs/stzh-carousel.cjs.entry.js +1 -1
  19. package/dist/cjs/stzh-cell.cjs.entry.js +1 -1
  20. package/dist/cjs/stzh-cell.cjs.entry.js.map +1 -1
  21. package/dist/cjs/stzh-checkbox.cjs.entry.js +1 -1
  22. package/dist/cjs/stzh-checkboxgroup.cjs.entry.js +2 -2
  23. package/dist/cjs/stzh-chip-select.cjs.entry.js +149 -0
  24. package/dist/cjs/stzh-chip-select.cjs.entry.js.map +1 -0
  25. package/dist/cjs/stzh-chip_2.cjs.entry.js +2 -2
  26. package/dist/cjs/stzh-chip_2.cjs.entry.js.map +1 -1
  27. package/dist/cjs/stzh-components.cjs.js +2 -2
  28. package/dist/cjs/stzh-contact.cjs.entry.js +1 -1
  29. package/dist/cjs/stzh-container.cjs.entry.js +1 -1
  30. package/dist/cjs/stzh-container.cjs.entry.js.map +1 -1
  31. package/dist/cjs/stzh-cspace.cjs.entry.js +3 -1
  32. package/dist/cjs/stzh-cspace.cjs.entry.js.map +1 -1
  33. package/dist/cjs/stzh-datalist_2.cjs.entry.js +11 -8
  34. package/dist/cjs/stzh-datalist_2.cjs.entry.js.map +1 -1
  35. package/dist/cjs/stzh-datatable.cjs.entry.js +32 -8
  36. package/dist/cjs/stzh-datatable.cjs.entry.js.map +1 -1
  37. package/dist/cjs/stzh-datepicker_3.cjs.entry.js +6 -5
  38. package/dist/cjs/stzh-datepicker_3.cjs.entry.js.map +1 -1
  39. package/dist/cjs/stzh-details.cjs.entry.js +1 -1
  40. package/dist/cjs/stzh-dialog.cjs.entry.js +2 -2
  41. package/dist/cjs/stzh-dialog.cjs.entry.js.map +1 -1
  42. package/dist/cjs/stzh-dropdown.cjs.entry.js +4 -2
  43. package/dist/cjs/stzh-dropdown.cjs.entry.js.map +1 -1
  44. package/dist/cjs/stzh-figure.cjs.entry.js +1 -1
  45. package/dist/cjs/stzh-footer.cjs.entry.js +1 -1
  46. package/dist/cjs/stzh-ghettobox.cjs.entry.js +108 -0
  47. package/dist/cjs/stzh-ghettobox.cjs.entry.js.map +1 -0
  48. package/dist/cjs/stzh-header.cjs.entry.js +1 -1
  49. package/dist/cjs/stzh-hspace.cjs.entry.js +1 -1
  50. package/dist/cjs/stzh-hspace.cjs.entry.js.map +1 -1
  51. package/dist/cjs/stzh-input.cjs.entry.js +4 -2
  52. package/dist/cjs/stzh-input.cjs.entry.js.map +1 -1
  53. package/dist/cjs/stzh-link.cjs.entry.js +5 -5
  54. package/dist/cjs/stzh-link.cjs.entry.js.map +1 -1
  55. package/dist/cjs/stzh-menu_2.cjs.entry.js +3 -3
  56. package/dist/cjs/stzh-menu_2.cjs.entry.js.map +1 -1
  57. package/dist/cjs/stzh-overlay.cjs.entry.js +1 -1
  58. package/dist/cjs/stzh-overlay.cjs.entry.js.map +1 -1
  59. package/dist/cjs/stzh-pagebottom.cjs.entry.js +1 -1
  60. package/dist/cjs/stzh-pagetitle-hero.cjs.entry.js +1 -1
  61. package/dist/cjs/stzh-pagetitle.cjs.entry.js +1 -1
  62. package/dist/cjs/stzh-pagination.cjs.entry.js +86 -0
  63. package/dist/cjs/stzh-pagination.cjs.entry.js.map +1 -0
  64. package/dist/cjs/stzh-popover.cjs.entry.js +1 -1
  65. package/dist/cjs/stzh-readspeaker.cjs.entry.js +1 -1
  66. package/dist/cjs/stzh-richtext_2.cjs.entry.js +86 -0
  67. package/dist/cjs/stzh-richtext_2.cjs.entry.js.map +1 -0
  68. package/dist/cjs/stzh-row.cjs.entry.js +1 -1
  69. package/dist/cjs/stzh-row.cjs.entry.js.map +1 -1
  70. package/dist/cjs/stzh-section.cjs.entry.js +1 -1
  71. package/dist/cjs/stzh-section.cjs.entry.js.map +1 -1
  72. package/dist/cjs/stzh-share.cjs.entry.js +7 -21
  73. package/dist/cjs/stzh-share.cjs.entry.js.map +1 -1
  74. package/dist/cjs/stzh-skin-portal-mitwirken.cjs.entry.js +1 -1
  75. package/dist/cjs/stzh-skin-portal-mitwirken.cjs.entry.js.map +1 -1
  76. package/dist/cjs/stzh-space.cjs.entry.js +1 -1
  77. package/dist/cjs/stzh-space.cjs.entry.js.map +1 -1
  78. package/dist/cjs/stzh-table.cjs.entry.js +6 -4
  79. package/dist/cjs/stzh-table.cjs.entry.js.map +1 -1
  80. package/dist/cjs/stzh-textandimage.cjs.entry.js +1 -1
  81. package/dist/cjs/stzh-toggle.cjs.entry.js +1 -1
  82. package/dist/cjs/stzh-tooltip.cjs.entry.js +1 -1
  83. package/dist/cjs/stzh-upload.cjs.entry.js +1 -1
  84. package/dist/cjs/stzh-vbz-majorticker.cjs.entry.js +1 -1
  85. package/dist/cjs/stzh-vspace.cjs.entry.js +1 -1
  86. package/dist/cjs/stzh-vspace.cjs.entry.js.map +1 -1
  87. package/dist/cjs/{utils-a2ff9f84.js → utils-916583be.js} +7 -1
  88. package/dist/cjs/utils-916583be.js.map +1 -0
  89. package/dist/collection/assets/i18n/de.json +8 -1
  90. package/dist/collection/assets/i18n/en.json +8 -1
  91. package/dist/collection/collection-manifest.json +1 -0
  92. package/dist/collection/components/stzh-amount/stzh-amount.css +1 -1
  93. package/dist/collection/components/stzh-amount/stzh-amount.js +21 -2
  94. package/dist/collection/components/stzh-amount/stzh-amount.js.map +1 -1
  95. package/dist/collection/components/stzh-button/stzh-button.js +6 -6
  96. package/dist/collection/components/stzh-button/stzh-button.js.map +1 -1
  97. package/dist/collection/components/stzh-buttongroup/stzh-buttongroup.css +11 -6
  98. package/dist/collection/components/stzh-card/stzh-card.css +30 -28
  99. package/dist/collection/components/stzh-card/stzh-card.js +30 -7
  100. package/dist/collection/components/stzh-card/stzh-card.js.map +1 -1
  101. package/dist/collection/components/stzh-cell/stzh-cell.css +0 -5
  102. package/dist/collection/components/stzh-chip/stzh-chip.js +2 -2
  103. package/dist/collection/components/stzh-chip/stzh-chip.js.map +1 -1
  104. package/dist/collection/components/stzh-container/stzh-container.css +0 -8
  105. package/dist/collection/components/stzh-cspace/stzh-cspace.css +103 -133
  106. package/dist/collection/components/stzh-cspace/stzh-cspace.js +46 -2
  107. package/dist/collection/components/stzh-cspace/stzh-cspace.js.map +1 -1
  108. package/dist/collection/components/stzh-datalist-item/stzh-datalist-item.css +5 -0
  109. package/dist/collection/components/stzh-datalist-item/stzh-datalist-item.js +12 -8
  110. package/dist/collection/components/stzh-datalist-item/stzh-datalist-item.js.map +1 -1
  111. package/dist/collection/components/stzh-datatable/stzh-datatable.css +21 -0
  112. package/dist/collection/components/stzh-datatable/stzh-datatable.js +85 -7
  113. package/dist/collection/components/stzh-datatable/stzh-datatable.js.map +1 -1
  114. package/dist/collection/components/stzh-datatable/stzh-datatable.stories.js +41 -14
  115. package/dist/collection/components/stzh-datepicker/stzh-datepicker.js +22 -3
  116. package/dist/collection/components/stzh-datepicker/stzh-datepicker.js.map +1 -1
  117. package/dist/collection/components/stzh-dialog/stzh-dialog.js +1 -1
  118. package/dist/collection/components/stzh-dialog/stzh-dialog.js.map +1 -1
  119. package/dist/collection/components/stzh-dropdown/stzh-dropdown.css +12 -0
  120. package/dist/collection/components/stzh-dropdown/stzh-dropdown.js +20 -0
  121. package/dist/collection/components/stzh-dropdown/stzh-dropdown.js.map +1 -1
  122. package/dist/collection/components/stzh-hspace/stzh-hspace.css +0 -6
  123. package/dist/collection/components/stzh-input/stzh-input.css +16 -1
  124. package/dist/collection/components/stzh-input/stzh-input.js +20 -0
  125. package/dist/collection/components/stzh-input/stzh-input.js.map +1 -1
  126. package/dist/collection/components/stzh-link/stzh-link.js +4 -4
  127. package/dist/collection/components/stzh-link/stzh-link.js.map +1 -1
  128. package/dist/collection/components/stzh-menu-item/stzh-menu-item.js +2 -2
  129. package/dist/collection/components/stzh-menu-item/stzh-menu-item.js.map +1 -1
  130. package/dist/collection/components/stzh-menu-item/stzh-menu-item.stories.js +2 -2
  131. package/dist/collection/components/stzh-overlay/stzh-overlay.js +1 -1
  132. package/dist/collection/components/stzh-overlay/stzh-overlay.js.map +1 -1
  133. package/dist/collection/components/stzh-pagination/stzh-pagination.css +127 -0
  134. package/dist/collection/components/stzh-pagination/stzh-pagination.js +437 -0
  135. package/dist/collection/components/stzh-pagination/stzh-pagination.js.map +1 -0
  136. package/dist/collection/components/stzh-pagination/stzh-pagination.localization.js +2 -0
  137. package/dist/collection/components/stzh-pagination/stzh-pagination.localization.js.map +1 -0
  138. package/dist/collection/components/stzh-pagination/stzh-pagination.stories.js +44 -0
  139. package/dist/collection/components/stzh-richtext/stzh-richtext.css +4 -2
  140. package/dist/collection/components/stzh-richtext/stzh-richtext.js +38 -0
  141. package/dist/collection/components/stzh-richtext/stzh-richtext.js.map +1 -1
  142. package/dist/collection/components/stzh-richtext/stzh-richtext.stories.js +2 -2
  143. package/dist/collection/components/stzh-row/stzh-row.css +0 -5
  144. package/dist/collection/components/stzh-section/stzh-section.css +0 -6
  145. package/dist/collection/components/stzh-share/stzh-share.js +6 -20
  146. package/dist/collection/components/stzh-share/stzh-share.js.map +1 -1
  147. package/dist/collection/components/stzh-skin-portal-mitwirken/stzh-skin-portal-mitwirken.css +53 -0
  148. package/dist/collection/components/stzh-sortable/stzh-sortable.js +1 -1
  149. package/dist/collection/components/stzh-sortable/stzh-sortable.js.map +1 -1
  150. package/dist/collection/components/stzh-space/stzh-space.css +0 -6
  151. package/dist/collection/components/stzh-table/stzh-table.css +21 -0
  152. package/dist/collection/components/stzh-table/stzh-table.js +7 -3
  153. package/dist/collection/components/stzh-table/stzh-table.js.map +1 -1
  154. package/dist/collection/components/stzh-table/stzh-table.stories.js +259 -4
  155. package/dist/collection/components/stzh-textandimage/stzh-textandimage.stories.js +1 -1
  156. package/dist/collection/components/stzh-vspace/stzh-vspace.css +0 -6
  157. package/dist/collection/index.js.map +1 -1
  158. package/dist/collection/utils/string-utils.js +12 -0
  159. package/dist/collection/utils/string-utils.js.map +1 -1
  160. package/dist/collection/utils/utils.js +5 -0
  161. package/dist/collection/utils/utils.js.map +1 -1
  162. package/dist/components/index.js +1 -1
  163. package/dist/components/index2.js.map +1 -1
  164. package/dist/components/string-utils.js +13 -1
  165. package/dist/components/string-utils.js.map +1 -1
  166. package/dist/components/stzh-amount.js +5 -3
  167. package/dist/components/stzh-amount.js.map +1 -1
  168. package/dist/components/stzh-button2.js +6 -6
  169. package/dist/components/stzh-button2.js.map +1 -1
  170. package/dist/components/stzh-buttongroup2.js +1 -1
  171. package/dist/components/stzh-buttongroup2.js.map +1 -1
  172. package/dist/components/stzh-card2.js +31 -8
  173. package/dist/components/stzh-card2.js.map +1 -1
  174. package/dist/components/stzh-cell.js +1 -1
  175. package/dist/components/stzh-cell.js.map +1 -1
  176. package/dist/components/stzh-chip2.js +2 -2
  177. package/dist/components/stzh-chip2.js.map +1 -1
  178. package/dist/components/stzh-contact.js +18 -12
  179. package/dist/components/stzh-contact.js.map +1 -1
  180. package/dist/components/stzh-container.js +1 -1
  181. package/dist/components/stzh-container.js.map +1 -1
  182. package/dist/components/stzh-cspace.js +8 -2
  183. package/dist/components/stzh-cspace.js.map +1 -1
  184. package/dist/components/stzh-datalist-item2.js +23 -14
  185. package/dist/components/stzh-datalist-item2.js.map +1 -1
  186. package/dist/components/stzh-datalist2.js +14 -8
  187. package/dist/components/stzh-datalist2.js.map +1 -1
  188. package/dist/components/stzh-datatable.js +129 -18
  189. package/dist/components/stzh-datatable.js.map +1 -1
  190. package/dist/components/stzh-datepicker2.js +5 -3
  191. package/dist/components/stzh-datepicker2.js.map +1 -1
  192. package/dist/components/stzh-dialog.js +1 -1
  193. package/dist/components/stzh-dialog.js.map +1 -1
  194. package/dist/components/stzh-dropdown2.js +4 -1
  195. package/dist/components/stzh-dropdown2.js.map +1 -1
  196. package/dist/components/stzh-hspace.js +1 -1
  197. package/dist/components/stzh-hspace.js.map +1 -1
  198. package/dist/components/stzh-input2.js +4 -1
  199. package/dist/components/stzh-input2.js.map +1 -1
  200. package/dist/components/stzh-link2.js +4 -4
  201. package/dist/components/stzh-link2.js.map +1 -1
  202. package/dist/components/stzh-menu-item2.js +2 -2
  203. package/dist/components/stzh-menu-item2.js.map +1 -1
  204. package/dist/components/stzh-overlay.js +1 -1
  205. package/dist/components/stzh-overlay.js.map +1 -1
  206. package/dist/components/stzh-pagination.d.ts +11 -0
  207. package/dist/components/stzh-pagination.js +8 -0
  208. package/dist/components/stzh-pagination.js.map +1 -0
  209. package/dist/components/stzh-pagination2.js +151 -0
  210. package/dist/components/stzh-pagination2.js.map +1 -0
  211. package/dist/components/stzh-richtext2.js +5 -1
  212. package/dist/components/stzh-richtext2.js.map +1 -1
  213. package/dist/components/stzh-row.js +1 -1
  214. package/dist/components/stzh-row.js.map +1 -1
  215. package/dist/components/stzh-section.js +1 -1
  216. package/dist/components/stzh-section.js.map +1 -1
  217. package/dist/components/stzh-share2.js +6 -20
  218. package/dist/components/stzh-share2.js.map +1 -1
  219. package/dist/components/stzh-sitemap.js +16 -10
  220. package/dist/components/stzh-sitemap.js.map +1 -1
  221. package/dist/components/stzh-skin-portal-mitwirken.js +1 -1
  222. package/dist/components/stzh-skin-portal-mitwirken.js.map +1 -1
  223. package/dist/components/stzh-sortable2.js +1 -1
  224. package/dist/components/stzh-sortable2.js.map +1 -1
  225. package/dist/components/stzh-space.js +1 -1
  226. package/dist/components/stzh-space.js.map +1 -1
  227. package/dist/components/stzh-table.js +6 -4
  228. package/dist/components/stzh-table.js.map +1 -1
  229. package/dist/components/stzh-vbz-majorticker.js +1 -1
  230. package/dist/components/stzh-vspace.js +1 -1
  231. package/dist/components/stzh-vspace.js.map +1 -1
  232. package/dist/components/utils.js +6 -1
  233. package/dist/components/utils.js.map +1 -1
  234. package/dist/esm/{app-globals-5ab947af.js → app-globals-07e538f3.js} +2 -2
  235. package/dist/esm/{app-globals-5ab947af.js.map → app-globals-07e538f3.js.map} +1 -1
  236. package/dist/esm/index.js.map +1 -1
  237. package/dist/esm/loader.js +2 -2
  238. package/dist/esm/string-utils-3ffa8d6b.js +29 -0
  239. package/dist/esm/string-utils-3ffa8d6b.js.map +1 -0
  240. package/dist/esm/stzh-actions.entry.js +1 -1
  241. package/dist/esm/{stzh-sortable.entry.js → stzh-actionset_4.entry.js} +566 -5
  242. package/dist/esm/stzh-actionset_4.entry.js.map +1 -0
  243. package/dist/esm/stzh-amount.entry.js +4 -3
  244. package/dist/esm/stzh-amount.entry.js.map +1 -1
  245. package/dist/esm/stzh-appnav.entry.js +1 -1
  246. package/dist/esm/stzh-audio.entry.js +1 -1
  247. package/dist/esm/stzh-badge_3.entry.js +7 -7
  248. package/dist/esm/stzh-badge_3.entry.js.map +1 -1
  249. package/dist/esm/stzh-buttongroup.entry.js +1 -1
  250. package/dist/esm/stzh-buttongroup.entry.js.map +1 -1
  251. package/dist/esm/stzh-carousel.entry.js +1 -1
  252. package/dist/esm/stzh-cell.entry.js +1 -1
  253. package/dist/esm/stzh-cell.entry.js.map +1 -1
  254. package/dist/esm/stzh-checkbox.entry.js +1 -1
  255. package/dist/esm/stzh-checkboxgroup.entry.js +2 -2
  256. package/dist/esm/stzh-chip-select.entry.js +145 -0
  257. package/dist/esm/stzh-chip-select.entry.js.map +1 -0
  258. package/dist/esm/stzh-chip_2.entry.js +2 -2
  259. package/dist/esm/stzh-chip_2.entry.js.map +1 -1
  260. package/dist/esm/stzh-components.js +2 -2
  261. package/dist/esm/stzh-contact.entry.js +1 -1
  262. package/dist/esm/stzh-container.entry.js +1 -1
  263. package/dist/esm/stzh-container.entry.js.map +1 -1
  264. package/dist/esm/stzh-cspace.entry.js +3 -1
  265. package/dist/esm/stzh-cspace.entry.js.map +1 -1
  266. package/dist/esm/stzh-datalist_2.entry.js +11 -8
  267. package/dist/esm/stzh-datalist_2.entry.js.map +1 -1
  268. package/dist/esm/stzh-datatable.entry.js +32 -8
  269. package/dist/esm/stzh-datatable.entry.js.map +1 -1
  270. package/dist/esm/stzh-datepicker_3.entry.js +6 -5
  271. package/dist/esm/stzh-datepicker_3.entry.js.map +1 -1
  272. package/dist/esm/stzh-details.entry.js +1 -1
  273. package/dist/esm/stzh-dialog.entry.js +2 -2
  274. package/dist/esm/stzh-dialog.entry.js.map +1 -1
  275. package/dist/esm/stzh-dropdown.entry.js +4 -2
  276. package/dist/esm/stzh-dropdown.entry.js.map +1 -1
  277. package/dist/esm/stzh-figure.entry.js +1 -1
  278. package/dist/esm/stzh-footer.entry.js +1 -1
  279. package/dist/esm/stzh-ghettobox.entry.js +104 -0
  280. package/dist/esm/stzh-ghettobox.entry.js.map +1 -0
  281. package/dist/esm/stzh-header.entry.js +1 -1
  282. package/dist/esm/stzh-hspace.entry.js +1 -1
  283. package/dist/esm/stzh-hspace.entry.js.map +1 -1
  284. package/dist/esm/stzh-input.entry.js +4 -2
  285. package/dist/esm/stzh-input.entry.js.map +1 -1
  286. package/dist/esm/stzh-link.entry.js +5 -5
  287. package/dist/esm/stzh-link.entry.js.map +1 -1
  288. package/dist/esm/stzh-menu_2.entry.js +3 -3
  289. package/dist/esm/stzh-menu_2.entry.js.map +1 -1
  290. package/dist/esm/stzh-overlay.entry.js +1 -1
  291. package/dist/esm/stzh-overlay.entry.js.map +1 -1
  292. package/dist/esm/stzh-pagebottom.entry.js +1 -1
  293. package/dist/esm/stzh-pagetitle-hero.entry.js +1 -1
  294. package/dist/esm/stzh-pagetitle.entry.js +1 -1
  295. package/dist/esm/stzh-pagination.entry.js +82 -0
  296. package/dist/esm/stzh-pagination.entry.js.map +1 -0
  297. package/dist/esm/stzh-popover.entry.js +1 -1
  298. package/dist/esm/stzh-readspeaker.entry.js +1 -1
  299. package/dist/esm/stzh-richtext_2.entry.js +81 -0
  300. package/dist/esm/stzh-richtext_2.entry.js.map +1 -0
  301. package/dist/esm/stzh-row.entry.js +1 -1
  302. package/dist/esm/stzh-row.entry.js.map +1 -1
  303. package/dist/esm/stzh-section.entry.js +1 -1
  304. package/dist/esm/stzh-section.entry.js.map +1 -1
  305. package/dist/esm/stzh-share.entry.js +6 -20
  306. package/dist/esm/stzh-share.entry.js.map +1 -1
  307. package/dist/esm/stzh-skin-portal-mitwirken.entry.js +1 -1
  308. package/dist/esm/stzh-skin-portal-mitwirken.entry.js.map +1 -1
  309. package/dist/esm/stzh-space.entry.js +1 -1
  310. package/dist/esm/stzh-space.entry.js.map +1 -1
  311. package/dist/esm/stzh-table.entry.js +6 -4
  312. package/dist/esm/stzh-table.entry.js.map +1 -1
  313. package/dist/esm/stzh-textandimage.entry.js +1 -1
  314. package/dist/esm/stzh-toggle.entry.js +1 -1
  315. package/dist/esm/stzh-tooltip.entry.js +1 -1
  316. package/dist/esm/stzh-upload.entry.js +1 -1
  317. package/dist/esm/stzh-vbz-majorticker.entry.js +1 -1
  318. package/dist/esm/stzh-vspace.entry.js +1 -1
  319. package/dist/esm/stzh-vspace.entry.js.map +1 -1
  320. package/dist/esm/{utils-51148d9a.js → utils-8f264f12.js} +7 -2
  321. package/dist/esm/utils-8f264f12.js.map +1 -0
  322. package/dist/esm-es5/{app-globals-5ab947af.js → app-globals-07e538f3.js} +2 -2
  323. package/dist/esm-es5/{app-globals-5ab947af.js.map → app-globals-07e538f3.js.map} +1 -1
  324. package/dist/esm-es5/index.js.map +1 -1
  325. package/dist/esm-es5/loader.js +1 -1
  326. package/dist/esm-es5/loader.js.map +1 -1
  327. package/dist/esm-es5/string-utils-3ffa8d6b.js +2 -0
  328. package/dist/esm-es5/string-utils-3ffa8d6b.js.map +1 -0
  329. package/dist/esm-es5/stzh-actions.entry.js +1 -1
  330. package/dist/esm-es5/stzh-actionset_4.entry.js +8 -0
  331. package/dist/esm-es5/stzh-actionset_4.entry.js.map +1 -0
  332. package/dist/esm-es5/stzh-amount.entry.js +1 -1
  333. package/dist/esm-es5/stzh-amount.entry.js.map +1 -1
  334. package/dist/esm-es5/stzh-appnav.entry.js +1 -1
  335. package/dist/esm-es5/stzh-audio.entry.js +1 -1
  336. package/dist/esm-es5/stzh-badge_3.entry.js +1 -1
  337. package/dist/esm-es5/stzh-badge_3.entry.js.map +1 -1
  338. package/dist/esm-es5/stzh-buttongroup.entry.js +1 -1
  339. package/dist/esm-es5/stzh-buttongroup.entry.js.map +1 -1
  340. package/dist/esm-es5/stzh-carousel.entry.js +1 -1
  341. package/dist/esm-es5/stzh-cell.entry.js +1 -1
  342. package/dist/esm-es5/stzh-cell.entry.js.map +1 -1
  343. package/dist/esm-es5/stzh-checkbox.entry.js +1 -1
  344. package/dist/esm-es5/stzh-checkboxgroup.entry.js +1 -1
  345. package/dist/esm-es5/stzh-chip-select.entry.js +2 -0
  346. package/dist/esm-es5/stzh-chip-select.entry.js.map +1 -0
  347. package/dist/esm-es5/stzh-chip_2.entry.js +1 -1
  348. package/dist/esm-es5/stzh-chip_2.entry.js.map +1 -1
  349. package/dist/esm-es5/stzh-components.js +1 -1
  350. package/dist/esm-es5/stzh-components.js.map +1 -1
  351. package/dist/esm-es5/stzh-contact.entry.js +1 -1
  352. package/dist/esm-es5/stzh-container.entry.js +1 -1
  353. package/dist/esm-es5/stzh-container.entry.js.map +1 -1
  354. package/dist/esm-es5/stzh-cspace.entry.js +1 -1
  355. package/dist/esm-es5/stzh-cspace.entry.js.map +1 -1
  356. package/dist/esm-es5/stzh-datalist_2.entry.js +1 -1
  357. package/dist/esm-es5/stzh-datalist_2.entry.js.map +1 -1
  358. package/dist/esm-es5/stzh-datatable.entry.js +1 -1
  359. package/dist/esm-es5/stzh-datatable.entry.js.map +1 -1
  360. package/dist/esm-es5/stzh-datepicker_3.entry.js +1 -1
  361. package/dist/esm-es5/stzh-datepicker_3.entry.js.map +1 -1
  362. package/dist/esm-es5/stzh-details.entry.js +1 -1
  363. package/dist/esm-es5/stzh-dialog.entry.js +1 -1
  364. package/dist/esm-es5/stzh-dialog.entry.js.map +1 -1
  365. package/dist/esm-es5/stzh-dropdown.entry.js +2 -2
  366. package/dist/esm-es5/stzh-dropdown.entry.js.map +1 -1
  367. package/dist/esm-es5/stzh-figure.entry.js +1 -1
  368. package/dist/esm-es5/stzh-footer.entry.js +1 -1
  369. package/dist/esm-es5/stzh-ghettobox.entry.js +2 -0
  370. package/dist/esm-es5/stzh-ghettobox.entry.js.map +1 -0
  371. package/dist/esm-es5/stzh-header.entry.js +1 -1
  372. package/dist/esm-es5/stzh-hspace.entry.js +1 -1
  373. package/dist/esm-es5/stzh-hspace.entry.js.map +1 -1
  374. package/dist/esm-es5/stzh-input.entry.js +1 -1
  375. package/dist/esm-es5/stzh-input.entry.js.map +1 -1
  376. package/dist/esm-es5/stzh-link.entry.js +1 -1
  377. package/dist/esm-es5/stzh-link.entry.js.map +1 -1
  378. package/dist/esm-es5/stzh-menu_2.entry.js +1 -1
  379. package/dist/esm-es5/stzh-menu_2.entry.js.map +1 -1
  380. package/dist/esm-es5/stzh-overlay.entry.js +1 -1
  381. package/dist/esm-es5/stzh-overlay.entry.js.map +1 -1
  382. package/dist/esm-es5/stzh-pagebottom.entry.js +1 -1
  383. package/dist/esm-es5/stzh-pagetitle-hero.entry.js +1 -1
  384. package/dist/esm-es5/stzh-pagetitle.entry.js +1 -1
  385. package/dist/esm-es5/stzh-pagination.entry.js +2 -0
  386. package/dist/esm-es5/stzh-pagination.entry.js.map +1 -0
  387. package/dist/esm-es5/stzh-popover.entry.js +1 -1
  388. package/dist/esm-es5/stzh-readspeaker.entry.js +1 -1
  389. package/dist/esm-es5/stzh-richtext_2.entry.js +2 -0
  390. package/dist/esm-es5/stzh-richtext_2.entry.js.map +1 -0
  391. package/dist/esm-es5/stzh-row.entry.js +1 -1
  392. package/dist/esm-es5/stzh-row.entry.js.map +1 -1
  393. package/dist/esm-es5/stzh-section.entry.js +1 -1
  394. package/dist/esm-es5/stzh-section.entry.js.map +1 -1
  395. package/dist/esm-es5/stzh-share.entry.js +1 -1
  396. package/dist/esm-es5/stzh-share.entry.js.map +1 -1
  397. package/dist/esm-es5/stzh-skin-portal-mitwirken.entry.js +1 -1
  398. package/dist/esm-es5/stzh-skin-portal-mitwirken.entry.js.map +1 -1
  399. package/dist/esm-es5/stzh-space.entry.js +1 -1
  400. package/dist/esm-es5/stzh-space.entry.js.map +1 -1
  401. package/dist/esm-es5/stzh-table.entry.js +1 -1
  402. package/dist/esm-es5/stzh-table.entry.js.map +1 -1
  403. package/dist/esm-es5/stzh-textandimage.entry.js +1 -1
  404. package/dist/esm-es5/stzh-toggle.entry.js +1 -1
  405. package/dist/esm-es5/stzh-tooltip.entry.js +1 -1
  406. package/dist/esm-es5/stzh-upload.entry.js +1 -1
  407. package/dist/esm-es5/stzh-vbz-majorticker.entry.js +1 -1
  408. package/dist/esm-es5/stzh-vspace.entry.js +1 -1
  409. package/dist/esm-es5/stzh-vspace.entry.js.map +1 -1
  410. package/dist/esm-es5/utils-8f264f12.js +2 -0
  411. package/dist/esm-es5/utils-8f264f12.js.map +1 -0
  412. package/dist/stzh-components/assets/i18n/de.json +8 -1
  413. package/dist/stzh-components/assets/i18n/en.json +8 -1
  414. package/dist/stzh-components/index.esm.js.map +1 -1
  415. package/dist/stzh-components/{p-f23f2408.system.entry.js → p-09445156.system.entry.js} +2 -2
  416. package/dist/stzh-components/p-0b5fbb86.system.entry.js +2 -0
  417. package/dist/stzh-components/p-0b5fbb86.system.entry.js.map +1 -0
  418. package/dist/stzh-components/{p-94a5e295.system.entry.js → p-0d302a14.system.entry.js} +2 -2
  419. package/dist/stzh-components/p-1016d03d.system.entry.js +2 -0
  420. package/dist/stzh-components/p-1016d03d.system.entry.js.map +1 -0
  421. package/dist/stzh-components/p-1760118e.entry.js +2 -0
  422. package/dist/stzh-components/{p-a1c02179.entry.js.map → p-1760118e.entry.js.map} +1 -1
  423. package/dist/stzh-components/p-1ad68cac.system.entry.js +2 -0
  424. package/dist/stzh-components/p-1ad68cac.system.entry.js.map +1 -0
  425. package/dist/stzh-components/{p-c901fe72.system.entry.js → p-1d683f3a.system.entry.js} +3 -3
  426. package/dist/stzh-components/p-1d683f3a.system.entry.js.map +1 -0
  427. package/dist/stzh-components/p-1e5f556b.system.entry.js +2 -0
  428. package/dist/stzh-components/p-1e5f556b.system.entry.js.map +1 -0
  429. package/dist/stzh-components/p-1fad78a6.entry.js +2 -0
  430. package/dist/stzh-components/{p-5ee43b56.entry.js.map → p-1fad78a6.entry.js.map} +1 -1
  431. package/dist/stzh-components/p-22a2f4c1.system.js +2 -0
  432. package/dist/stzh-components/p-22a2f4c1.system.js.map +1 -0
  433. package/dist/stzh-components/{p-39a4904e.system.entry.js → p-2614251e.system.entry.js} +2 -2
  434. package/dist/stzh-components/{p-8b62ec27.js → p-26ec7788.js} +2 -2
  435. package/dist/stzh-components/{p-8b62ec27.js.map → p-26ec7788.js.map} +1 -1
  436. package/dist/stzh-components/p-2705720b.entry.js +2 -0
  437. package/dist/stzh-components/p-2705720b.entry.js.map +1 -0
  438. package/dist/stzh-components/{p-799548c4.system.entry.js → p-27489e46.system.entry.js} +2 -2
  439. package/dist/stzh-components/{p-9f4f3882.system.entry.js → p-2d777867.system.entry.js} +2 -2
  440. package/dist/stzh-components/{p-9f4f3882.system.entry.js.map → p-2d777867.system.entry.js.map} +1 -1
  441. package/dist/stzh-components/{p-29ed53a9.system.entry.js → p-2dd983a9.system.entry.js} +2 -2
  442. package/dist/stzh-components/{p-cc1a6af1.system.entry.js → p-2ec243e8.system.entry.js} +2 -2
  443. package/dist/stzh-components/{p-cd0f7b10.entry.js → p-33da1a1c.entry.js} +2 -2
  444. package/dist/stzh-components/p-35a328cc.system.entry.js +2 -0
  445. package/dist/stzh-components/p-35a328cc.system.entry.js.map +1 -0
  446. package/dist/stzh-components/p-3f72c05a.system.js +2 -0
  447. package/dist/stzh-components/p-3f72c05a.system.js.map +1 -0
  448. package/dist/stzh-components/p-40694e20.system.entry.js +2 -0
  449. package/dist/stzh-components/p-40694e20.system.entry.js.map +1 -0
  450. package/dist/stzh-components/{p-6608126b.entry.js → p-4325de93.entry.js} +2 -2
  451. package/dist/stzh-components/{p-bc997ce2.entry.js → p-432d3ec4.entry.js} +2 -2
  452. package/dist/stzh-components/{p-bc997ce2.entry.js.map → p-432d3ec4.entry.js.map} +1 -1
  453. package/dist/stzh-components/{p-517af258.system.entry.js → p-444f765a.system.entry.js} +2 -2
  454. package/dist/stzh-components/p-4bcc414d.system.entry.js +2 -0
  455. package/dist/stzh-components/p-4bcc414d.system.entry.js.map +1 -0
  456. package/dist/stzh-components/{p-9d46101e.entry.js → p-4c4a05b3.entry.js} +2 -2
  457. package/dist/stzh-components/{p-9d46101e.entry.js.map → p-4c4a05b3.entry.js.map} +1 -1
  458. package/dist/stzh-components/{p-7b297848.system.entry.js → p-50652c05.system.entry.js} +2 -2
  459. package/dist/stzh-components/{p-a8c92707.system.entry.js → p-509b0e4c.system.entry.js} +2 -2
  460. package/dist/stzh-components/p-51ccda11.system.entry.js +2 -0
  461. package/dist/stzh-components/p-51ccda11.system.entry.js.map +1 -0
  462. package/dist/stzh-components/{p-a2b49ad8.entry.js → p-52bcb3ab.entry.js} +2 -2
  463. package/dist/stzh-components/{p-4cd7c872.system.entry.js → p-5af33d37.system.entry.js} +2 -2
  464. package/dist/stzh-components/{p-8cb7e2da.system.entry.js → p-5bceda21.system.entry.js} +2 -2
  465. package/dist/stzh-components/{p-c0f971f2.entry.js → p-5df47c3a.entry.js} +8 -8
  466. package/dist/stzh-components/p-5df47c3a.entry.js.map +1 -0
  467. package/dist/stzh-components/{p-edef74c8.system.entry.js → p-62ca262c.system.entry.js} +2 -2
  468. package/dist/stzh-components/{p-edef74c8.system.entry.js.map → p-62ca262c.system.entry.js.map} +1 -1
  469. package/dist/stzh-components/{p-c2a06b4d.system.entry.js → p-62e0ad8d.system.entry.js} +2 -2
  470. package/dist/stzh-components/{p-c2a06b4d.system.entry.js.map → p-62e0ad8d.system.entry.js.map} +1 -1
  471. package/dist/stzh-components/p-67f50e81.system.entry.js +2 -0
  472. package/dist/stzh-components/p-67f50e81.system.entry.js.map +1 -0
  473. package/dist/stzh-components/p-68b00da7.system.entry.js +2 -0
  474. package/dist/stzh-components/p-68b00da7.system.entry.js.map +1 -0
  475. package/dist/stzh-components/{p-eca073df.system.entry.js → p-6ac4713f.system.entry.js} +2 -2
  476. package/dist/stzh-components/{p-b8ad5f47.system.entry.js → p-709bb264.system.entry.js} +2 -2
  477. package/dist/stzh-components/{p-3e5da137.entry.js → p-7463c7b5.entry.js} +2 -2
  478. package/dist/stzh-components/p-75fa2483.entry.js +2 -0
  479. package/dist/stzh-components/p-75fa2483.entry.js.map +1 -0
  480. package/dist/stzh-components/{p-562f4dfa.entry.js → p-78f78684.entry.js} +2 -2
  481. package/dist/stzh-components/p-7992047b.entry.js +2 -0
  482. package/dist/stzh-components/p-7992047b.entry.js.map +1 -0
  483. package/dist/stzh-components/p-7ac51980.system.entry.js +2 -0
  484. package/dist/stzh-components/p-7ac51980.system.entry.js.map +1 -0
  485. package/dist/stzh-components/p-7e5587ee.entry.js +2 -0
  486. package/dist/stzh-components/p-7e5587ee.entry.js.map +1 -0
  487. package/dist/stzh-components/p-8225341e.entry.js +2 -0
  488. package/dist/stzh-components/p-8225341e.entry.js.map +1 -0
  489. package/dist/stzh-components/{p-3dea2f45.entry.js → p-849ec693.entry.js} +2 -2
  490. package/dist/stzh-components/{p-f5c99792.system.entry.js → p-8547ae9e.system.entry.js} +2 -2
  491. package/dist/stzh-components/{p-f5c99792.system.entry.js.map → p-8547ae9e.system.entry.js.map} +1 -1
  492. package/dist/stzh-components/{p-2615433f.system.entry.js → p-88440469.system.entry.js} +2 -2
  493. package/dist/stzh-components/{p-2615433f.system.entry.js.map → p-88440469.system.entry.js.map} +1 -1
  494. package/dist/stzh-components/{p-3aa5623c.entry.js → p-89562c7e.entry.js} +2 -2
  495. package/dist/stzh-components/{p-0f71e85f.entry.js → p-8a44987c.entry.js} +2 -2
  496. package/dist/stzh-components/{p-0f71e85f.entry.js.map → p-8a44987c.entry.js.map} +1 -1
  497. package/dist/stzh-components/p-8a58fa64.entry.js +2 -0
  498. package/dist/stzh-components/p-8a58fa64.entry.js.map +1 -0
  499. package/dist/stzh-components/p-8eaac610.entry.js +2 -0
  500. package/dist/stzh-components/p-8eaac610.entry.js.map +1 -0
  501. package/dist/stzh-components/{p-3184a123.system.entry.js → p-8f6c5346.system.entry.js} +2 -2
  502. package/dist/stzh-components/{p-3184a123.system.entry.js.map → p-8f6c5346.system.entry.js.map} +1 -1
  503. package/dist/stzh-components/{p-45572515.entry.js → p-916f8386.entry.js} +2 -2
  504. package/dist/stzh-components/p-9705d27e.system.entry.js +2 -0
  505. package/dist/stzh-components/{p-9fe69be8.system.entry.js.map → p-9705d27e.system.entry.js.map} +1 -1
  506. package/dist/stzh-components/{p-2d25bcc8.entry.js → p-979390db.entry.js} +2 -2
  507. package/dist/stzh-components/{p-ffdd9cab.system.js → p-9b4e4b9d.system.js} +2 -2
  508. package/dist/stzh-components/{p-ffdd9cab.system.js.map → p-9b4e4b9d.system.js.map} +1 -1
  509. package/dist/stzh-components/p-9c428351.entry.js +2 -0
  510. package/dist/stzh-components/p-9c428351.entry.js.map +1 -0
  511. package/dist/stzh-components/{p-70d7389a.entry.js → p-9f2332f6.entry.js} +2 -2
  512. package/dist/stzh-components/{p-70d7389a.entry.js.map → p-9f2332f6.entry.js.map} +1 -1
  513. package/dist/stzh-components/p-9faae333.entry.js +2 -0
  514. package/dist/stzh-components/p-9faae333.entry.js.map +1 -0
  515. package/dist/stzh-components/{p-e2ff2ef4.entry.js → p-a0008fa2.entry.js} +2 -2
  516. package/dist/stzh-components/{p-05b9e4c2.system.entry.js → p-a26cd855.system.entry.js} +2 -2
  517. package/dist/stzh-components/{p-b792ea2e.system.entry.js → p-a2d5846c.system.entry.js} +2 -2
  518. package/dist/stzh-components/{p-6c219530.entry.js → p-a8e1b13c.entry.js} +2 -2
  519. package/dist/stzh-components/{p-4a299f84.entry.js → p-acbe3680.entry.js} +2 -2
  520. package/dist/stzh-components/p-afdf3a08.system.entry.js +2 -0
  521. package/dist/stzh-components/p-afdf3a08.system.entry.js.map +1 -0
  522. package/dist/stzh-components/{p-35cbff3f.entry.js → p-affbfe00.entry.js} +2 -2
  523. package/dist/stzh-components/p-b33a79ba.system.entry.js +2 -0
  524. package/dist/stzh-components/p-b33a79ba.system.entry.js.map +1 -0
  525. package/dist/stzh-components/{p-7772c262.entry.js → p-b5531053.entry.js} +2 -2
  526. package/dist/stzh-components/{p-bf069354.entry.js → p-b61c752e.entry.js} +2 -2
  527. package/dist/stzh-components/{p-bf069354.entry.js.map → p-b61c752e.entry.js.map} +1 -1
  528. package/dist/stzh-components/p-b989646a.entry.js +2 -0
  529. package/dist/stzh-components/p-b989646a.entry.js.map +1 -0
  530. package/dist/stzh-components/p-bd7f6761.entry.js +2 -0
  531. package/dist/stzh-components/p-bd7f6761.entry.js.map +1 -0
  532. package/dist/stzh-components/p-bda21265.system.entry.js +8 -0
  533. package/dist/stzh-components/p-bda21265.system.entry.js.map +1 -0
  534. package/dist/stzh-components/{p-f599025e.system.entry.js → p-c0aa52aa.system.entry.js} +2 -2
  535. package/dist/stzh-components/p-c2615e7c.system.entry.js +2 -0
  536. package/dist/{esm-es5/stzh-ghettobox_2.entry.js.map → stzh-components/p-c2615e7c.system.entry.js.map} +1 -1
  537. package/dist/stzh-components/{p-d5b4d345.entry.js → p-c323f19e.entry.js} +2 -2
  538. package/dist/stzh-components/p-c323f19e.entry.js.map +1 -0
  539. package/dist/stzh-components/p-c64a7018.system.entry.js +2 -0
  540. package/dist/stzh-components/p-c64a7018.system.entry.js.map +1 -0
  541. package/dist/stzh-components/p-ca6d7215.entry.js +2 -0
  542. package/dist/stzh-components/p-ca6d7215.entry.js.map +1 -0
  543. package/dist/stzh-components/p-d6ffd97e.entry.js +2 -0
  544. package/dist/stzh-components/p-d6ffd97e.entry.js.map +1 -0
  545. package/dist/stzh-components/{p-fefcd0e6.entry.js → p-d7a7560a.entry.js} +2 -2
  546. package/dist/stzh-components/{p-87b4549c.system.entry.js → p-dad99bd2.system.entry.js} +2 -2
  547. package/dist/stzh-components/p-daf17eae.entry.js +2 -0
  548. package/dist/stzh-components/p-daf17eae.entry.js.map +1 -0
  549. package/dist/stzh-components/p-dd137812.entry.js +8 -0
  550. package/dist/stzh-components/p-dd137812.entry.js.map +1 -0
  551. package/dist/stzh-components/{p-b05c240b.system.entry.js → p-e16ee236.system.entry.js} +2 -2
  552. package/dist/stzh-components/p-e5781c90.system.entry.js +2 -0
  553. package/dist/stzh-components/p-e5781c90.system.entry.js.map +1 -0
  554. package/dist/stzh-components/p-e606314e.system.entry.js +2 -0
  555. package/dist/stzh-components/p-e606314e.system.entry.js.map +1 -0
  556. package/dist/stzh-components/{p-bcd5b20e.entry.js → p-e7454abb.entry.js} +2 -2
  557. package/dist/stzh-components/p-e787179c.js +2 -0
  558. package/dist/stzh-components/p-e787179c.js.map +1 -0
  559. package/dist/stzh-components/p-e7d4542e.entry.js +2 -0
  560. package/dist/stzh-components/p-e7d4542e.entry.js.map +1 -0
  561. package/dist/stzh-components/p-eaa65f52.system.js.map +1 -1
  562. package/dist/stzh-components/p-eab77a09.system.entry.js +2 -0
  563. package/dist/stzh-components/p-eab77a09.system.entry.js.map +1 -0
  564. package/dist/stzh-components/{p-6d097e82.system.entry.js → p-ebe979a3.system.entry.js} +2 -2
  565. package/dist/stzh-components/{p-9b7d4e8d.entry.js → p-ef4c12ac.entry.js} +2 -2
  566. package/dist/stzh-components/p-f02d484d.system.js +2 -0
  567. package/dist/stzh-components/{p-b7d68fca.system.js.map → p-f02d484d.system.js.map} +1 -1
  568. package/dist/stzh-components/{p-3cb43903.entry.js → p-f0ac9730.entry.js} +2 -2
  569. package/dist/stzh-components/p-f43f7434.entry.js +2 -0
  570. package/dist/stzh-components/p-f43f7434.entry.js.map +1 -0
  571. package/dist/stzh-components/p-f4ec861e.entry.js +2 -0
  572. package/dist/stzh-components/{p-14e782cb.entry.js.map → p-f4ec861e.entry.js.map} +1 -1
  573. package/dist/stzh-components/{p-8d695d3e.system.entry.js → p-f65b5145.system.entry.js} +2 -2
  574. package/dist/stzh-components/{p-b82351f0.system.entry.js → p-f665752d.system.entry.js} +2 -2
  575. package/dist/stzh-components/p-f879bc5a.system.entry.js +2 -0
  576. package/dist/stzh-components/p-f879bc5a.system.entry.js.map +1 -0
  577. package/dist/stzh-components/{p-c3b260a1.entry.js → p-fb12ec57.entry.js} +2 -2
  578. package/dist/stzh-components/p-fb36e3be.entry.js +2 -0
  579. package/dist/stzh-components/{p-df9460ae.system.entry.js.map → p-fb36e3be.entry.js.map} +1 -1
  580. package/dist/stzh-components/p-fc339100.js +2 -0
  581. package/dist/stzh-components/p-fc339100.js.map +1 -0
  582. package/dist/stzh-components/{p-52e52b49.entry.js → p-fd97e87d.entry.js} +2 -2
  583. package/dist/stzh-components/p-fdabe05c.entry.js +2 -0
  584. package/dist/stzh-components/p-fdabe05c.entry.js.map +1 -0
  585. package/dist/stzh-components/p-fdb1fd0a.entry.js +2 -0
  586. package/dist/stzh-components/p-fdb1fd0a.entry.js.map +1 -0
  587. package/dist/stzh-components/{p-80d581ac.system.entry.js → p-fece12c0.system.entry.js} +2 -2
  588. package/dist/stzh-components/p-fece12c0.system.entry.js.map +1 -0
  589. package/dist/stzh-components/stzh-components.css +740 -1
  590. package/dist/stzh-components/stzh-components.esm.js +1 -1
  591. package/dist/stzh-components/stzh-components.esm.js.map +1 -1
  592. package/dist/stzh-components/stzh-components.js +1 -1
  593. package/dist/types/components/stzh-cspace/stzh-cspace.d.ts +4 -0
  594. package/dist/types/components/stzh-pagination/stzh-pagination.localization.d.ts +8 -0
  595. package/dist/types/components.d.ts +251 -4
  596. package/dist/types/index.d.ts +6 -0
  597. package/dist/types/utils/string-utils.d.ts +1 -0
  598. package/dist/types/utils/utils.d.ts +1 -0
  599. package/dist/vscode-data.json +125 -3
  600. package/package.json +1 -1
  601. package/dist/cjs/string-utils-a867b99d.js.map +0 -1
  602. package/dist/cjs/stzh-actionset.cjs.entry.js +0 -173
  603. package/dist/cjs/stzh-actionset.cjs.entry.js.map +0 -1
  604. package/dist/cjs/stzh-card_3.cjs.entry.js +0 -528
  605. package/dist/cjs/stzh-card_3.cjs.entry.js.map +0 -1
  606. package/dist/cjs/stzh-ghettobox_2.cjs.entry.js +0 -157
  607. package/dist/cjs/stzh-ghettobox_2.cjs.entry.js.map +0 -1
  608. package/dist/cjs/stzh-sortable.cjs.entry.js.map +0 -1
  609. package/dist/cjs/stzh-status.cjs.entry.js +0 -34
  610. package/dist/cjs/stzh-status.cjs.entry.js.map +0 -1
  611. package/dist/cjs/utils-a2ff9f84.js.map +0 -1
  612. package/dist/esm/string-utils-f98ee4e8.js +0 -17
  613. package/dist/esm/string-utils-f98ee4e8.js.map +0 -1
  614. package/dist/esm/stzh-actionset.entry.js +0 -169
  615. package/dist/esm/stzh-actionset.entry.js.map +0 -1
  616. package/dist/esm/stzh-card_3.entry.js +0 -522
  617. package/dist/esm/stzh-card_3.entry.js.map +0 -1
  618. package/dist/esm/stzh-ghettobox_2.entry.js +0 -152
  619. package/dist/esm/stzh-ghettobox_2.entry.js.map +0 -1
  620. package/dist/esm/stzh-sortable.entry.js.map +0 -1
  621. package/dist/esm/stzh-status.entry.js +0 -30
  622. package/dist/esm/stzh-status.entry.js.map +0 -1
  623. package/dist/esm/utils-51148d9a.js.map +0 -1
  624. package/dist/esm-es5/string-utils-f98ee4e8.js +0 -2
  625. package/dist/esm-es5/string-utils-f98ee4e8.js.map +0 -1
  626. package/dist/esm-es5/stzh-actionset.entry.js +0 -2
  627. package/dist/esm-es5/stzh-actionset.entry.js.map +0 -1
  628. package/dist/esm-es5/stzh-card_3.entry.js +0 -2
  629. package/dist/esm-es5/stzh-card_3.entry.js.map +0 -1
  630. package/dist/esm-es5/stzh-ghettobox_2.entry.js +0 -2
  631. package/dist/esm-es5/stzh-sortable.entry.js +0 -8
  632. package/dist/esm-es5/stzh-sortable.entry.js.map +0 -1
  633. package/dist/esm-es5/stzh-status.entry.js +0 -2
  634. package/dist/esm-es5/stzh-status.entry.js.map +0 -1
  635. package/dist/esm-es5/utils-51148d9a.js +0 -2
  636. package/dist/esm-es5/utils-51148d9a.js.map +0 -1
  637. package/dist/stzh-components/p-0515de95.system.entry.js +0 -2
  638. package/dist/stzh-components/p-0515de95.system.entry.js.map +0 -1
  639. package/dist/stzh-components/p-07c0f4ce.entry.js +0 -2
  640. package/dist/stzh-components/p-07c0f4ce.entry.js.map +0 -1
  641. package/dist/stzh-components/p-09191103.system.entry.js +0 -2
  642. package/dist/stzh-components/p-09191103.system.entry.js.map +0 -1
  643. package/dist/stzh-components/p-0e6889d6.system.entry.js +0 -8
  644. package/dist/stzh-components/p-0e6889d6.system.entry.js.map +0 -1
  645. package/dist/stzh-components/p-14e782cb.entry.js +0 -2
  646. package/dist/stzh-components/p-172ba9ba.entry.js +0 -8
  647. package/dist/stzh-components/p-172ba9ba.entry.js.map +0 -1
  648. package/dist/stzh-components/p-2907f1b5.entry.js +0 -2
  649. package/dist/stzh-components/p-2907f1b5.entry.js.map +0 -1
  650. package/dist/stzh-components/p-2f3add2f.system.entry.js +0 -2
  651. package/dist/stzh-components/p-2f3add2f.system.entry.js.map +0 -1
  652. package/dist/stzh-components/p-3290296f.entry.js +0 -2
  653. package/dist/stzh-components/p-3290296f.entry.js.map +0 -1
  654. package/dist/stzh-components/p-343694cb.system.entry.js +0 -2
  655. package/dist/stzh-components/p-343694cb.system.entry.js.map +0 -1
  656. package/dist/stzh-components/p-36b1004d.entry.js +0 -2
  657. package/dist/stzh-components/p-36b1004d.entry.js.map +0 -1
  658. package/dist/stzh-components/p-3d056a49.entry.js +0 -2
  659. package/dist/stzh-components/p-3d056a49.entry.js.map +0 -1
  660. package/dist/stzh-components/p-402ea6f4.entry.js +0 -2
  661. package/dist/stzh-components/p-402ea6f4.entry.js.map +0 -1
  662. package/dist/stzh-components/p-4468e033.system.entry.js +0 -2
  663. package/dist/stzh-components/p-4468e033.system.entry.js.map +0 -1
  664. package/dist/stzh-components/p-53b84310.system.entry.js +0 -2
  665. package/dist/stzh-components/p-53b84310.system.entry.js.map +0 -1
  666. package/dist/stzh-components/p-55061908.entry.js +0 -2
  667. package/dist/stzh-components/p-55061908.entry.js.map +0 -1
  668. package/dist/stzh-components/p-57ba4050.system.entry.js +0 -2
  669. package/dist/stzh-components/p-57ba4050.system.entry.js.map +0 -1
  670. package/dist/stzh-components/p-5aa96b49.system.entry.js +0 -2
  671. package/dist/stzh-components/p-5aa96b49.system.entry.js.map +0 -1
  672. package/dist/stzh-components/p-5c697491.js +0 -2
  673. package/dist/stzh-components/p-5c697491.js.map +0 -1
  674. package/dist/stzh-components/p-5d8ad1f4.system.entry.js +0 -2
  675. package/dist/stzh-components/p-5d8ad1f4.system.entry.js.map +0 -1
  676. package/dist/stzh-components/p-5ee43b56.entry.js +0 -2
  677. package/dist/stzh-components/p-62188444.entry.js +0 -2
  678. package/dist/stzh-components/p-62188444.entry.js.map +0 -1
  679. package/dist/stzh-components/p-693c611c.entry.js +0 -2
  680. package/dist/stzh-components/p-693c611c.entry.js.map +0 -1
  681. package/dist/stzh-components/p-72c69a2e.entry.js +0 -2
  682. package/dist/stzh-components/p-72c69a2e.entry.js.map +0 -1
  683. package/dist/stzh-components/p-78071d97.entry.js +0 -2
  684. package/dist/stzh-components/p-78071d97.entry.js.map +0 -1
  685. package/dist/stzh-components/p-7dc517db.entry.js +0 -2
  686. package/dist/stzh-components/p-7dc517db.entry.js.map +0 -1
  687. package/dist/stzh-components/p-80d581ac.system.entry.js.map +0 -1
  688. package/dist/stzh-components/p-82e886d4.entry.js +0 -2
  689. package/dist/stzh-components/p-82e886d4.entry.js.map +0 -1
  690. package/dist/stzh-components/p-9fe69be8.system.entry.js +0 -2
  691. package/dist/stzh-components/p-a003aa96.system.entry.js +0 -2
  692. package/dist/stzh-components/p-a003aa96.system.entry.js.map +0 -1
  693. package/dist/stzh-components/p-a1c02179.entry.js +0 -2
  694. package/dist/stzh-components/p-a2bdc528.system.entry.js +0 -2
  695. package/dist/stzh-components/p-a2bdc528.system.entry.js.map +0 -1
  696. package/dist/stzh-components/p-a2c076b8.system.entry.js +0 -2
  697. package/dist/stzh-components/p-a2c076b8.system.entry.js.map +0 -1
  698. package/dist/stzh-components/p-a8ccb843.entry.js +0 -2
  699. package/dist/stzh-components/p-a8ccb843.entry.js.map +0 -1
  700. package/dist/stzh-components/p-ab199fd7.system.entry.js +0 -2
  701. package/dist/stzh-components/p-ab199fd7.system.entry.js.map +0 -1
  702. package/dist/stzh-components/p-b295cbcc.system.entry.js +0 -2
  703. package/dist/stzh-components/p-b295cbcc.system.entry.js.map +0 -1
  704. package/dist/stzh-components/p-b5cda655.entry.js +0 -2
  705. package/dist/stzh-components/p-b5cda655.entry.js.map +0 -1
  706. package/dist/stzh-components/p-b7d68fca.system.js +0 -2
  707. package/dist/stzh-components/p-b910e1b7.entry.js +0 -2
  708. package/dist/stzh-components/p-b910e1b7.entry.js.map +0 -1
  709. package/dist/stzh-components/p-c0f971f2.entry.js.map +0 -1
  710. package/dist/stzh-components/p-c901fe72.system.entry.js.map +0 -1
  711. package/dist/stzh-components/p-cb04774b.entry.js +0 -2
  712. package/dist/stzh-components/p-cb04774b.entry.js.map +0 -1
  713. package/dist/stzh-components/p-cc35e963.entry.js +0 -2
  714. package/dist/stzh-components/p-cc35e963.entry.js.map +0 -1
  715. package/dist/stzh-components/p-d3f7e7e2.system.entry.js +0 -2
  716. package/dist/stzh-components/p-d3f7e7e2.system.entry.js.map +0 -1
  717. package/dist/stzh-components/p-d4b7a303.system.js +0 -2
  718. package/dist/stzh-components/p-d4b7a303.system.js.map +0 -1
  719. package/dist/stzh-components/p-d5b4d345.entry.js.map +0 -1
  720. package/dist/stzh-components/p-df9460ae.system.entry.js +0 -2
  721. package/dist/stzh-components/p-e40d6e96.entry.js +0 -2
  722. package/dist/stzh-components/p-e40d6e96.entry.js.map +0 -1
  723. package/dist/stzh-components/p-ebcc510d.system.entry.js +0 -2
  724. package/dist/stzh-components/p-ebcc510d.system.entry.js.map +0 -1
  725. package/dist/stzh-components/p-ee7a68db.js +0 -2
  726. package/dist/stzh-components/p-ee7a68db.js.map +0 -1
  727. package/dist/stzh-components/p-f2d74491.system.entry.js +0 -2
  728. package/dist/stzh-components/p-f2d74491.system.entry.js.map +0 -1
  729. package/dist/stzh-components/p-f58c28ad.system.js +0 -2
  730. package/dist/stzh-components/p-f58c28ad.system.js.map +0 -1
  731. package/dist/stzh-components/p-fda1c56c.system.entry.js +0 -2
  732. package/dist/stzh-components/p-fda1c56c.system.entry.js.map +0 -1
  733. /package/dist/stzh-components/{p-f23f2408.system.entry.js.map → p-09445156.system.entry.js.map} +0 -0
  734. /package/dist/stzh-components/{p-94a5e295.system.entry.js.map → p-0d302a14.system.entry.js.map} +0 -0
  735. /package/dist/stzh-components/{p-39a4904e.system.entry.js.map → p-2614251e.system.entry.js.map} +0 -0
  736. /package/dist/stzh-components/{p-799548c4.system.entry.js.map → p-27489e46.system.entry.js.map} +0 -0
  737. /package/dist/stzh-components/{p-29ed53a9.system.entry.js.map → p-2dd983a9.system.entry.js.map} +0 -0
  738. /package/dist/stzh-components/{p-cc1a6af1.system.entry.js.map → p-2ec243e8.system.entry.js.map} +0 -0
  739. /package/dist/stzh-components/{p-cd0f7b10.entry.js.map → p-33da1a1c.entry.js.map} +0 -0
  740. /package/dist/stzh-components/{p-6608126b.entry.js.map → p-4325de93.entry.js.map} +0 -0
  741. /package/dist/stzh-components/{p-517af258.system.entry.js.map → p-444f765a.system.entry.js.map} +0 -0
  742. /package/dist/stzh-components/{p-7b297848.system.entry.js.map → p-50652c05.system.entry.js.map} +0 -0
  743. /package/dist/stzh-components/{p-a8c92707.system.entry.js.map → p-509b0e4c.system.entry.js.map} +0 -0
  744. /package/dist/stzh-components/{p-a2b49ad8.entry.js.map → p-52bcb3ab.entry.js.map} +0 -0
  745. /package/dist/stzh-components/{p-4cd7c872.system.entry.js.map → p-5af33d37.system.entry.js.map} +0 -0
  746. /package/dist/stzh-components/{p-8cb7e2da.system.entry.js.map → p-5bceda21.system.entry.js.map} +0 -0
  747. /package/dist/stzh-components/{p-eca073df.system.entry.js.map → p-6ac4713f.system.entry.js.map} +0 -0
  748. /package/dist/stzh-components/{p-b8ad5f47.system.entry.js.map → p-709bb264.system.entry.js.map} +0 -0
  749. /package/dist/stzh-components/{p-3e5da137.entry.js.map → p-7463c7b5.entry.js.map} +0 -0
  750. /package/dist/stzh-components/{p-562f4dfa.entry.js.map → p-78f78684.entry.js.map} +0 -0
  751. /package/dist/stzh-components/{p-3dea2f45.entry.js.map → p-849ec693.entry.js.map} +0 -0
  752. /package/dist/stzh-components/{p-3aa5623c.entry.js.map → p-89562c7e.entry.js.map} +0 -0
  753. /package/dist/stzh-components/{p-45572515.entry.js.map → p-916f8386.entry.js.map} +0 -0
  754. /package/dist/stzh-components/{p-2d25bcc8.entry.js.map → p-979390db.entry.js.map} +0 -0
  755. /package/dist/stzh-components/{p-e2ff2ef4.entry.js.map → p-a0008fa2.entry.js.map} +0 -0
  756. /package/dist/stzh-components/{p-05b9e4c2.system.entry.js.map → p-a26cd855.system.entry.js.map} +0 -0
  757. /package/dist/stzh-components/{p-b792ea2e.system.entry.js.map → p-a2d5846c.system.entry.js.map} +0 -0
  758. /package/dist/stzh-components/{p-6c219530.entry.js.map → p-a8e1b13c.entry.js.map} +0 -0
  759. /package/dist/stzh-components/{p-4a299f84.entry.js.map → p-acbe3680.entry.js.map} +0 -0
  760. /package/dist/stzh-components/{p-35cbff3f.entry.js.map → p-affbfe00.entry.js.map} +0 -0
  761. /package/dist/stzh-components/{p-7772c262.entry.js.map → p-b5531053.entry.js.map} +0 -0
  762. /package/dist/stzh-components/{p-f599025e.system.entry.js.map → p-c0aa52aa.system.entry.js.map} +0 -0
  763. /package/dist/stzh-components/{p-fefcd0e6.entry.js.map → p-d7a7560a.entry.js.map} +0 -0
  764. /package/dist/stzh-components/{p-87b4549c.system.entry.js.map → p-dad99bd2.system.entry.js.map} +0 -0
  765. /package/dist/stzh-components/{p-b05c240b.system.entry.js.map → p-e16ee236.system.entry.js.map} +0 -0
  766. /package/dist/stzh-components/{p-bcd5b20e.entry.js.map → p-e7454abb.entry.js.map} +0 -0
  767. /package/dist/stzh-components/{p-6d097e82.system.entry.js.map → p-ebe979a3.system.entry.js.map} +0 -0
  768. /package/dist/stzh-components/{p-9b7d4e8d.entry.js.map → p-ef4c12ac.entry.js.map} +0 -0
  769. /package/dist/stzh-components/{p-3cb43903.entry.js.map → p-f0ac9730.entry.js.map} +0 -0
  770. /package/dist/stzh-components/{p-8d695d3e.system.entry.js.map → p-f65b5145.system.entry.js.map} +0 -0
  771. /package/dist/stzh-components/{p-b82351f0.system.entry.js.map → p-f665752d.system.entry.js.map} +0 -0
  772. /package/dist/stzh-components/{p-c3b260a1.entry.js.map → p-fb12ec57.entry.js.map} +0 -0
  773. /package/dist/stzh-components/{p-52e52b49.entry.js.map → p-fd97e87d.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["stzhInputCss","inputCounter","StzhInput","this","focusedByInput","onClearClick","event","_this","value","input","focus","stzhChange","emit","component","originalEvent","onInput","onRootFocus","setFocus","onFocus","focusEvent","FocusEvent","view","window","bubbles","cancelable","element","dispatchEvent","stzhFocus","onBlur","blurEvent","stzhBlur","class_1","prototype","valueWatcher","newValue","filled","errorWatcher","_error","JSON","parse","e","invalid","length","typeWatcher","types","multiline","includes","Error","concat","renderTextarea","h","class","ref","el","id","inputId","name","rows","disabled","readonly","minlength","maxlength","a11yDescribedby","required","renderInput","type","min","max","step","inputmode","autocomplete","noAutocomplete","undefined","componentWillLoad","error","localization","_b","fetchTranslations","_c","sent","render","buttonRightSlotUsed","hasSlot","descriptionUsed","description","descriptionLongUsed","descriptionLong","errorUsed","classes","clearable","showSpin","_a","stzhComponents","labels","size","Host","tabindex","htmlFor","label","showMarker","$globals","requiredFieldMarker","optionalFieldMarker","requiredFieldText","optionalFieldText","icon","variant","onClick","a11yLabel","clearButtonLabel","StzhInputDescription","classPrefix","moreInfoButtonLabel"],"sources":["src/components/stzh-input/stzh-input.scss?tag=stzh-input&encapsulation=scoped","src/components/stzh-input/stzh-input.tsx"],"sourcesContent":[":host {\n --text-align: left;\n width: 100%;\n}\n\n:host ::slotted([slot=\"button-right\"]),\n.stzh-input__button-right {\n position: absolute;\n top: 0;\n right: 0;\n}\n\n:host ::slotted(stzh-button[slot=\"button-right\"][variant=\"input\"]),\n:host ::slotted([slot=\"button-right\"]) stzh-button[variant=\"input\"],\n.stzh-input__button-right[variant=\"input\"] {\n --border-color: transparent;\n --hover-border-color: transparent;\n}\n\n.stzh-input {\n\t@include input-description;\n\t@include fontSize('milli');\n\n &__field-wrapper {\n position: relative;\n display: flex;\n }\n\n &__input {\n @include font;\n @include fontSize('milli');\n border: 1px solid $formBorderColor;\n transition-property: color, border-color;\n transition-duration: $baseTransitionAnimationSpeed;\n border-radius: $formInputBorderRadius;\n padding: space('xsmall') space('medium');\n width: 100%;\n color: $colorPrimary;\n background: $colorWhite;\n appearance: none;\n text-align: var(--text-align);\n\n @include placeholder {\n color: $formInputPlaceholderColor;\n }\n\n &:hover,\n &:focus {\n color: $colorPrimaryHover;\n border-color: $colorPrimaryHover;\n }\n\n // remove clear button for IE11\n &::-ms-clear {\n display: none;\n }\n\n // prevent ugly autofill background color in chrome\n &:-webkit-autofill {\n background-clip: text;\n }\n\n // show ellipsis for placeholders that are too long\n &:placeholder-shown {\n text-overflow: ellipsis;\n }\n\n // hide search clear icon on chrome\n &[type=\"search\"]::-webkit-search-decoration,\n &[type=\"search\"]::-webkit-search-cancel-button,\n &[type=\"search\"]::-webkit-search-results-button,\n &[type=\"search\"]::-webkit-search-results-decoration {\n -webkit-appearance: none;\n }\n\n /* Normal inputs */\n\n &--input {\n height: $formInputHeight;\n }\n\n /* Textarea */\n\n &--textarea {\n min-height: $formInputHeight;\n resize: vertical;\n }\n }\n\n &__label {\n @include font('heavy');\n @include fontSize('nano');\n @include truncate;\n color: $formColor;\n width: auto;\n position: absolute;\n top: calc(#{$formInputHeight} / 2);\n // padding-left (medium) + border-left\n left: calc(#{space('medium')} + 1px);\n max-width: calc(100% - #{space('medium')} * 2);\n transform: translateY(-50%);\n transition: all $baseTransitionAnimationSpeed;\n pointer-events: none;\n\n &:empty {\n display: none;\n }\n\n &::before {\n content: '';\n display: none;\n background: $colorWhite;\n position: absolute;\n width: 100%;\n z-index: -1;\n left: 0;\n top: 50%;\n // prevent white line not fully overlaping border of input\n margin-top: -0.5px;\n height: 2px;\n }\n }\n\n &__input:hover + &__label,\n &__input:focus + &__label {\n color: $colorPrimaryHover;\n }\n\n &__button-right {\n display: none;\n\n &[disabled]:not([disabled=\"false\"])[variant=\"input\"] {\n --color: #{$formColor};\n --background-color: transparent;\n --border-color: transparent;\n\n --hover-color: #{$colorPrimaryHover};\n --hover-background-color: transparent;\n --hover-border-color: transparent;\n }\n }\n\n /* Clearable / Search input */\n\n &--is-clearable#{&}--is-filled:not(#{&}--is-readonly):not(#{&}--is-disabled) &__button-right,\n &--type-search &__button-right {\n display: block;\n }\n\n &--type-search:not(#{&}--is-filled) &__button-right,\n &--type-search#{&}--is-readonly &__button-right,\n &--type-search#{&}--is-disabled &__button-right {\n pointer-events: none;\n }\n\n /* Filled variant */\n\n &--is-filled &__button-right {\n &.is-search {\n pointer-events: initial;\n }\n }\n\n /* Styles for floating label */\n\n &:not(#{&}--is-readonly):not(#{&}--is-disabled) &__input:focus + &__label,\n &--has-fixed-label &__label,\n &--is-filled &__label,\n &--is-readonly &__label,\n &--is-disabled &__label,\n &--is-invalid &__label {\n display: block;\n top: 0;\n // padding-left (input field medium) - padding-left\n left: calc(#{space('medium')} - #{space('xxsmall')});\n height: 20px; // dividable by two (so before element is always positioned correctly)\n line-height: 20px;\n padding: 0 space('xxsmall');\n max-width: calc(100% - #{space('small')} * 2);\n pointer-events: all;\n\n &:not(:empty)::before {\n display: block;\n }\n }\n\n /* Button Right Variant */\n\n &--has-button-right &__input {\n // distance to icon + icon button width\n padding-right: calc(#{space('xsmall')} + #{$formInputHeight});\n }\n\n &--has-button-right &__label {\n // 100% - ((padding left of normal variant + border 1px) * 2) - icon button width\n max-width: calc(100% - (#{space('medium')} + 1px) * 2 - #{$formInputHeight});\n }\n\n &--has-button-right#{&}:not(#{&}--is-readonly):not(#{&}--is-disabled) &__input:focus + &__label,\n &--has-button-right#{&}--has-fixed-label &__label,\n &--has-button-right#{&}--is-filled &__label,\n &--has-button-right#{&}--is-readonly &__label,\n &--has-button-right#{&}--is-disabled &__label,\n &--has-button-right#{&}--is-invalid &__label {\n // 100% - left distance to text + 1px border + padding label right side - icon button width\n max-width: calc(100% - #{space('medium')} - #{space('xxsmall')} - 1px + #{space('xxsmall')} - #{$formInputHeight});\n }\n\n /* Size variants */\n\n &--size-small {\n @include fontSize('micro');\n }\n\n &--size-small &__input {\n @include fontSize('micro');\n\n &--input {\n height: $formInputHeightSmall;\n }\n\n &--textarea {\n min-height: $formInputHeightSmall;\n }\n }\n\n &--size-small &__label {\n top: calc(#{$formInputHeightSmall} / 2);\n }\n\n &--size-small#{&}:not(#{&}--is-readonly):not(#{&}--is-disabled) &__input:focus + &__label,\n &--size-small#{&}--has-fixed-label &__label,\n &--size-small#{&}--is-filled &__label,\n &--size-small#{&}--is-readonly &__label,\n &--size-small#{&}--is-disabled &__label,\n &--size-small#{&}--is-invalid &__label {\n top: 0;\n }\n\n &--size-small#{&}--has-button-right &__input {\n padding-right: calc(#{space('xxsmall')} + #{$formInputHeightSmall});\n }\n\n &--size-small#{&}--has-button-right &__label {\n max-width: calc(100% - (#{space('medium')} + 1px) * 2 - #{$formInputHeightSmall});\n }\n\n &--size-small#{&}--has-button-right#{&}:not(#{&}--is-readonly):not(#{&}--is-disabled) &__input:focus + &__label,\n &--size-small#{&}--has-button-right#{&}--has-fixed-label &__label,\n &--size-small#{&}--has-button-right#{&}--is-filled &__label,\n &--size-small#{&}--has-button-right#{&}--is-readonly &__label,\n &--size-small#{&}--has-button-right#{&}--is-disabled &__label,\n &--size-small#{&}--has-button-right#{&}--is-invalid &__label {\n max-width: calc(100% - #{space('medium')} - #{space('xxsmall')} - 1px + #{space('xsmall')} - #{$formInputHeightSmall});\n }\n\n /* Spin button */\n\n &:not(#{&}--has-spin) &__input {\n &::-webkit-outer-spin-button,\n &::-webkit-inner-spin-button {\n appearance: none;\n margin: 0;\n }\n\n &[type=number] {\n appearance: textfield;\n }\n }\n\n /* Invalid */\n\n &--is-invalid &__input,\n &--is-invalid &__label,\n &--is-invalid &__input + &__label {\n color: $colorError;\n }\n\n &--is-invalid &__input {\n border-color: $colorError;\n\n @include placeholder {\n color: $colorError;\n }\n }\n\n /* Readonly / Disabled */\n\n &--is-readonly &__input,\n &--is-readonly &__input + &__label,\n &--is-disabled &__input,\n &--is-disabled &__input + &__label {\n color: $formDisabledColor;\n }\n\n &--is-readonly &__input,\n &--is-disabled &__input {\n color: $formDisabledColor;\n border-color: $formDisabledBorderColor;\n background-color: $formDisabledBackgroundColor;\n cursor: not-allowed;\n\n @include placeholder {\n color: $formDisabledColor;\n }\n\n &:hover,\n &:focus {\n border-color: $formDisabledBorderColor;\n }\n }\n\n &--is-readonly &__label,\n &--is-disabled &__label {\n cursor: not-allowed;\n\n &::before {\n background: transparent;\n }\n }\n\n &--is-readonly &__button-right,\n &--is-disabled &__button-right {\n &[disabled]:not([disabled=\"false\"])[variant=\"input\"] {\n --color: #{$formDisabledColor};\n --hover-color: #{$formDisabledColor};\n }\n }\n}\n","import {\n Component,\n Prop,\n Host,\n Event,\n EventEmitter,\n State,\n Method,\n Element,\n h,\n Watch\n} from \"@stencil/core\";\n\nimport {\n StzhInputChangeEvent,\n StzhInputFocusEvent,\n StzhInputBlurEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { fetchTranslations, StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"./stzh-input-description\";\n\nlet inputCounter = 0;\n\n/**\n * @slot - Slot for label content\n * @slot description - Slot for description\n * @slot description-long - Slot for long description (in popover)\n * @slot error - Slot for error\n * @slot button-right - Slot for right button\n */\n@Component({\n tag: \"stzh-input\",\n styleUrl: \"stzh-input.scss\",\n scoped: true\n})\nexport class StzhInput {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Whether the input is a textarea or an input field */\n @Prop() multiline: boolean = false;\n\n /** Rows attribute if input element is textarea */\n @Prop() rows: number;\n\n /** If input field, this defines the type (if `search`, a search icon will be displayed) */\n @Prop() type: \"text\" | \"search\" | \"password\" | \"email\" | \"url\" | \"tel\" | \"number\" = \"text\";\n\n /** If input type is number, this will be the step size */\n @Prop() step: number = 1;\n\n /** If input type is number, this will be the minimum step number */\n @Prop() min: number;\n\n /** If input type is number, this will be the maximum step number */\n @Prop() max: number;\n\n /** If input type is number and this property is true, this will show the spin buttons on hover/focus */\n @Prop({ reflect: true }) showSpin: 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 clearable button is showing when input field has value and is enabled (button-right slot not usable anymore when true) */\n @Prop({ reflect: true }) clearable: boolean = false;\n\n /** Append text to label depending if field is optional/required. true -> show \"(optional)\", false -> show nothing */\n @Prop({ reflect: true }) showMarker: boolean = false;\n\n /** Minimum of characters */\n @Prop() minlength: number;\n\n /** Maxlength of characters */\n @Prop() maxlength: number;\n\n /** The name of the input element */\n @Prop({ reflect: true }) name: string;\n\n /** The value of the input element */\n @Prop({ mutable: true }) value: string = \"\";\n\n /** Description message (use description slot as alternative) */\n @Prop() description: string;\n\n /** Long description message appearing in a popover (use description-long slot as alternative) */\n @Prop() descriptionLong: string;\n\n /** One or multiple error message (use error slot as alternative) */\n @Prop() error: string | string[];\n private _error: string[];\n\n /** Invalid status */\n @Prop({ reflect: true }) invalid: boolean = false;\n\n /** Required status */\n @Prop({ reflect: true }) required: boolean = false;\n\n /**\n * Specify inputmode.\n * See [MDN](https://developer.mozilla.org/de/docs/Web/HTML/Global_attributes/inputmode) for possible values\n */\n @Prop() inputmode: string;\n\n /**\n * Specify what the user agent has to provide as automated assistance.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for possible values\n */\n @Prop() autocomplete: string = \"on\";\n\n /** Whether autocomplete should be turned off */\n @Prop() noAutocomplete: boolean = false;\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** Size variant */\n @Prop({ reflect: true }) size: \"default\" | \"small\" = \"default\";\n\n /** Id for element which describes the input (this will be overwritten if description prop or slot is used, used by stzh-radiogroup) */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Whether the input is filled or not */\n @State() filled: boolean;\n\n @Element() element: HTMLStzhInputElement;\n\n /** Focus input field */\n @Method()\n async setFocus() {\n this.input.focus();\n }\n\n /** Input change event */\n @Event() stzhChange: EventEmitter<StzhInputChangeEvent>;\n\n /** Input focus event */\n @Event() stzhFocus: EventEmitter<StzhInputFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhInputBlurEvent>;\n\n @Watch(\"value\")\n valueWatcher(newValue: string) {\n this.filled = newValue !== \"\";\n }\n\n @Watch(\"error\")\n errorWatcher(newValue: string | string[]) {\n if (typeof newValue === \"string\") {\n try {\n this._error = JSON.parse(newValue);\n } catch (e) {\n if (newValue) {\n this._error = [newValue];\n } else {\n this._error = [];\n }\n }\n } else if (newValue) {\n this._error = newValue;\n } else {\n this._error = [];\n }\n\n this.invalid = this._error.length > 0;\n }\n\n @Watch(\"type\")\n typeWatcher(newValue: string) {\n const types = [\n \"text\", \"search\", \"password\", \"email\", \"url\", \"tel\", \"number\"\n ];\n\n if (!this.multiline && !types.includes(newValue)) {\n throw new Error(`Type ${newValue} not supported`);\n }\n }\n\n private input: HTMLInputElement | HTMLTextAreaElement;\n private inputId: string;\n private focusedByInput: boolean = false;\n\n private onClearClick = (event: MouseEvent) => {\n this.value = \"\";\n this.input.focus();\n\n this.stzhChange.emit({\n component: \"stzh-input\",\n originalEvent: event,\n value: this.value\n });\n }\n\n private onInput = (event: InputEvent) => {\n this.value = this.input.value;\n\n this.stzhChange.emit({\n component: \"stzh-input\",\n originalEvent: event,\n value: this.value\n });\n }\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.setFocus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n const focusEvent = new FocusEvent('focus', {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n this.stzhFocus.emit({\n component: \"stzh-input\",\n originalEvent: event\n });\n }\n\n private onBlur = (event: FocusEvent) => {\n // fixes weird bug where autofill selection doesn't get removed\n this.input.value = this.input.value;\n\n const blurEvent = new FocusEvent('blur', {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(blurEvent);\n this.stzhBlur.emit({\n component: \"stzh-input\",\n originalEvent: event\n });\n }\n\n private renderTextarea(): HTMLTextAreaElement {\n return (\n <textarea\n class=\"stzh-input__input stzh-input__input--textarea\"\n ref={(el) => (this.input = el as HTMLTextAreaElement)}\n id={this.inputId}\n name={this.name}\n value={this.value}\n rows={this.rows}\n disabled={this.disabled}\n readonly={this.readonly}\n minlength={this.minlength}\n maxlength={this.maxlength}\n aria-describedby={`${this.inputId}-description ${this.a11yDescribedby}`}\n aria-required={this.required ? \"true\" : \"false\"}\n aria-invalid={this.invalid ? \"true\" : \"false\"}\n onInput={this.onInput}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n ></textarea>\n );\n }\n\n private renderInput(): HTMLInputElement {\n return (\n <input\n class=\"stzh-input__input stzh-input__input--input\"\n ref={(el) => (this.input = el as HTMLInputElement)}\n id={this.inputId}\n type={this.type}\n name={this.name}\n value={this.value}\n min={this.min}\n max={this.max}\n step={this.step}\n inputmode={this.inputmode}\n disabled={this.disabled}\n readonly={this.readonly}\n minlength={this.minlength}\n maxlength={this.maxlength}\n autocomplete={this.noAutocomplete ? \"off\" : this.autocomplete}\n aria-autocomplete={this.noAutocomplete ? \"none\" : undefined}\n aria-describedby={`${this.inputId}-description ${this.a11yDescribedby}`}\n aria-required={this.required ? \"true\" : \"false\"}\n aria-invalid={this.invalid ? \"true\" : \"false\"}\n onInput={this.onInput}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n />\n );\n }\n\n async componentWillLoad() {\n this.inputId = `stzh-input-${inputCounter++}`;\n this.typeWatcher(this.type);\n this.valueWatcher(this.value);\n this.errorWatcher(this.error);\n\n if (!this.localization) {\n this.localization = await fetchTranslations(this.element, \"input\");\n }\n }\n\n render() {\n const buttonRightSlotUsed = hasSlot(this.element, 'button-right');\n const descriptionUsed = hasSlot(this.element, 'description') || !!this.description;\n const descriptionLongUsed = hasSlot(this.element, 'description-long') || !!this.descriptionLong;\n const errorUsed = hasSlot(this.element, 'error') || !!this.error;\n const classes = {\n \"stzh-input\": true,\n \"stzh-input--has-button-right\": buttonRightSlotUsed\n || this.type === \"search\"\n || (this.clearable && this.filled && !this.readonly && !this.disabled),\n \"stzh-input--has-description\": descriptionUsed,\n \"stzh-input--has-description-long\": descriptionLongUsed,\n \"stzh-input--has-error\": errorUsed,\n \"stzh-input--has-spin\": this.showSpin,\n \"stzh-input--is-invalid\": this.invalid,\n \"stzh-input--is-disabled\": this.disabled,\n \"stzh-input--is-readonly\": this.readonly,\n \"stzh-input--is-required\": this.required,\n \"stzh-input--is-filled\": this.filled,\n \"stzh-input--is-clearable\": this.clearable,\n \"stzh-input--has-fixed-label\": window?.stzhComponents?.labels === \"fixed\",\n [`stzh-input--size-${this.size}`]: !!this.size,\n [`stzh-input--type-${this.type}`]: !!this.type,\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n <div class=\"stzh-input__field-wrapper\">\n {this.multiline ? this.renderTextarea() : this.renderInput()}\n <label class=\"stzh-input__label\" htmlFor={this.inputId}>\n {this.label ? this.label : <slot></slot>}\n {this.showMarker &&\n <span class=\"stzh-input__marker\">\n <span class=\"stzh-input__marker-symbol\" aria-hidden=\"true\">\n {this.required\n ? this.localization.$globals.requiredFieldMarker\n : this.localization.$globals.optionalFieldMarker\n }\n </span>\n <span class=\"stzh-input__marker-text\">\n {this.required\n ? this.localization.$globals.requiredFieldText\n : this.localization.$globals.optionalFieldText\n }\n </span>\n </span>\n }\n </label>\n {this.clearable || this.type === \"search\"\n ?\n <stzh-button\n class=\"stzh-input__button-right\"\n icon={this.disabled || this.readonly || !this.filled ? \"search\" : \"close-circle\"}\n icon-only\n variant=\"input\"\n onClick={this.onClearClick}\n disabled={this.disabled || this.readonly || !this.filled}\n a11yLabel={this.localization.$globals.clearButtonLabel}\n aria-controls={this.inputId}\n ></stzh-button>\n :\n <slot name=\"button-right\"></slot>\n }\n </div>\n <StzhInputDescription\n classPrefix=\"stzh-input\"\n id={`${this.inputId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["stzhInputCss","inputCounter","StzhInput","this","focusedByInput","onClearClick","event","_this","value","input","focus","stzhChange","emit","component","originalEvent","onInput","onRootFocus","setFocus","onFocus","focusEvent","FocusEvent","view","window","bubbles","cancelable","element","dispatchEvent","stzhFocus","onBlur","blurEvent","stzhBlur","class_1","prototype","valueWatcher","newValue","filled","errorWatcher","_error","JSON","parse","e","invalid","length","typeWatcher","types","multiline","includes","Error","concat","renderTextarea","h","class","ref","el","id","inputId","name","rows","disabled","readonly","minlength","maxlength","a11yDescribedby","required","renderInput","type","min","max","step","inputmode","autocomplete","noAutocomplete","undefined","componentWillLoad","error","localization","_b","fetchTranslations","_c","sent","render","buttonRightSlotUsed","hasSlot","descriptionUsed","description","descriptionLongUsed","descriptionLong","errorUsed","classes","clearable","showSpin","_a","stzhComponents","labels","labelHidden","size","Host","tabindex","htmlFor","label","showMarker","$globals","requiredFieldMarker","optionalFieldMarker","requiredFieldText","optionalFieldText","icon","variant","onClick","a11yLabel","clearButtonLabel","StzhInputDescription","classPrefix","moreInfoButtonLabel"],"sources":["src/components/stzh-input/stzh-input.scss?tag=stzh-input&encapsulation=scoped","src/components/stzh-input/stzh-input.tsx"],"sourcesContent":[":host {\n --text-align: left;\n --input-width: 100%;\n --padding: #{space('xsmall')} #{space('medium')};\n width: 100%;\n}\n\n:host ::slotted([slot=\"button-right\"]),\n.stzh-input__button-right {\n position: absolute;\n top: 0;\n right: 0;\n}\n\n:host ::slotted(stzh-button[slot=\"button-right\"][variant=\"input\"]),\n:host ::slotted([slot=\"button-right\"]) stzh-button[variant=\"input\"],\n.stzh-input__button-right[variant=\"input\"] {\n --border-color: transparent;\n --hover-border-color: transparent;\n}\n\n.stzh-input {\n\t@include input-description;\n\t@include fontSize('milli');\n\n &__field-wrapper {\n position: relative;\n display: flex;\n width: var(--input-width);\n }\n\n &__input {\n @include font;\n @include fontSize('milli');\n border: 1px solid $formBorderColor;\n transition-property: color, border-color;\n transition-duration: $baseTransitionAnimationSpeed;\n border-radius: $formInputBorderRadius;\n padding: var(--padding);\n width: 100%;\n color: $colorPrimary;\n background: $colorWhite;\n appearance: none;\n text-align: var(--text-align);\n\n @include placeholder {\n color: $formInputPlaceholderColor;\n }\n\n &:hover,\n &:focus {\n color: $colorPrimaryHover;\n border-color: $colorPrimaryHover;\n }\n\n // remove clear button for IE11\n &::-ms-clear {\n display: none;\n }\n\n // prevent ugly autofill background color in chrome\n &:-webkit-autofill {\n background-clip: text;\n }\n\n // show ellipsis for placeholders that are too long\n &:placeholder-shown {\n text-overflow: ellipsis;\n }\n\n // hide search clear icon on chrome\n &[type=\"search\"]::-webkit-search-decoration,\n &[type=\"search\"]::-webkit-search-cancel-button,\n &[type=\"search\"]::-webkit-search-results-button,\n &[type=\"search\"]::-webkit-search-results-decoration {\n -webkit-appearance: none;\n }\n\n /* Normal inputs */\n\n &--input {\n height: $formInputHeight;\n }\n\n /* Textarea */\n\n &--textarea {\n min-height: $formInputHeight;\n resize: vertical;\n }\n }\n\n &__label {\n @include font('heavy');\n @include fontSize('nano');\n @include truncate;\n color: $formColor;\n width: auto;\n position: absolute;\n top: calc(#{$formInputHeight} / 2);\n // padding-left (medium) + border-left\n left: calc(#{space('medium')} + 1px);\n max-width: calc(100% - #{space('medium')} * 2);\n transform: translateY(-50%);\n transition: all $baseTransitionAnimationSpeed;\n pointer-events: none;\n\n &:empty {\n display: none;\n }\n\n &::before {\n content: '';\n display: none;\n background: $colorWhite;\n position: absolute;\n width: 100%;\n z-index: -1;\n left: 0;\n top: 50%;\n // prevent white line not fully overlaping border of input\n margin-top: -0.5px;\n height: 2px;\n }\n }\n\n &__input:hover + &__label,\n &__input:focus + &__label {\n color: $colorPrimaryHover;\n }\n\n &__button-right {\n display: none;\n\n &[disabled]:not([disabled=\"false\"])[variant=\"input\"] {\n --color: #{$formColor};\n --background-color: transparent;\n --border-color: transparent;\n\n --hover-color: #{$colorPrimaryHover};\n --hover-background-color: transparent;\n --hover-border-color: transparent;\n }\n }\n\n /* Clearable / Search input */\n\n &--is-clearable#{&}--is-filled:not(#{&}--is-readonly):not(#{&}--is-disabled) &__button-right,\n &--type-search &__button-right {\n display: block;\n }\n\n &--type-search:not(#{&}--is-filled) &__button-right,\n &--type-search#{&}--is-readonly &__button-right,\n &--type-search#{&}--is-disabled &__button-right {\n pointer-events: none;\n }\n\n /* Filled variant */\n\n &--is-filled &__button-right {\n &.is-search {\n pointer-events: initial;\n }\n }\n\n /* Styles for floating label */\n\n &:not(#{&}--is-readonly):not(#{&}--is-disabled) &__input:focus + &__label,\n &--has-fixed-label &__label,\n &--is-filled &__label,\n &--is-readonly &__label,\n &--is-disabled &__label,\n &--is-invalid &__label {\n display: block;\n top: 0;\n // padding-left (input field medium) - padding-left\n left: calc(#{space('medium')} - #{space('xxsmall')});\n height: 20px; // dividable by two (so before element is always positioned correctly)\n line-height: 20px;\n padding: 0 space('xxsmall');\n max-width: calc(100% - #{space('small')} * 2);\n pointer-events: all;\n\n &:not(:empty)::before {\n display: block;\n }\n }\n\n /* Button Right Variant */\n\n &--has-button-right &__input {\n // distance to icon + icon button width\n padding-right: calc(#{space('xsmall')} + #{$formInputHeight});\n }\n\n &--has-button-right &__label {\n // 100% - ((padding left of normal variant + border 1px) * 2) - icon button width\n max-width: calc(100% - (#{space('medium')} + 1px) * 2 - #{$formInputHeight});\n }\n\n &--has-button-right#{&}:not(#{&}--is-readonly):not(#{&}--is-disabled) &__input:focus + &__label,\n &--has-button-right#{&}--has-fixed-label &__label,\n &--has-button-right#{&}--is-filled &__label,\n &--has-button-right#{&}--is-readonly &__label,\n &--has-button-right#{&}--is-disabled &__label,\n &--has-button-right#{&}--is-invalid &__label {\n // 100% - left distance to text + 1px border + padding label right side - icon button width\n max-width: calc(100% - #{space('medium')} - #{space('xxsmall')} - 1px + #{space('xxsmall')} - #{$formInputHeight});\n }\n\n /* Size variants */\n\n &--size-small {\n @include fontSize('micro');\n }\n\n &--size-small &__input {\n @include fontSize('micro');\n\n &--input {\n height: $formInputHeightSmall;\n }\n\n &--textarea {\n min-height: $formInputHeightSmall;\n }\n }\n\n &--size-small &__label {\n top: calc(#{$formInputHeightSmall} / 2);\n }\n\n &--size-small#{&}:not(#{&}--is-readonly):not(#{&}--is-disabled) &__input:focus + &__label,\n &--size-small#{&}--has-fixed-label &__label,\n &--size-small#{&}--is-filled &__label,\n &--size-small#{&}--is-readonly &__label,\n &--size-small#{&}--is-disabled &__label,\n &--size-small#{&}--is-invalid &__label {\n top: 0;\n }\n\n &--size-small#{&}--has-button-right &__input {\n padding-right: calc(#{space('xxsmall')} + #{$formInputHeightSmall});\n }\n\n &--size-small#{&}--has-button-right &__label {\n max-width: calc(100% - (#{space('medium')} + 1px) * 2 - #{$formInputHeightSmall});\n }\n\n &--size-small#{&}--has-button-right#{&}:not(#{&}--is-readonly):not(#{&}--is-disabled) &__input:focus + &__label,\n &--size-small#{&}--has-button-right#{&}--has-fixed-label &__label,\n &--size-small#{&}--has-button-right#{&}--is-filled &__label,\n &--size-small#{&}--has-button-right#{&}--is-readonly &__label,\n &--size-small#{&}--has-button-right#{&}--is-disabled &__label,\n &--size-small#{&}--has-button-right#{&}--is-invalid &__label {\n max-width: calc(100% - #{space('medium')} - #{space('xxsmall')} - 1px + #{space('xsmall')} - #{$formInputHeightSmall});\n }\n\n /* Spin button */\n\n &:not(#{&}--has-spin) &__input {\n &::-webkit-outer-spin-button,\n &::-webkit-inner-spin-button {\n appearance: none;\n margin: 0;\n }\n\n &[type=number] {\n appearance: textfield;\n }\n }\n\n /* Hidden label */\n &--has-label-hidden &__label {\n @include visuallyhidden;\n }\n\n /* Invalid */\n\n &--is-invalid &__input,\n &--is-invalid &__label,\n &--is-invalid &__input + &__label {\n color: $colorError;\n }\n\n &--is-invalid &__input {\n border-color: $colorError;\n\n @include placeholder {\n color: $colorError;\n }\n }\n\n /* Readonly / Disabled */\n\n &--is-readonly &__input,\n &--is-readonly &__input + &__label,\n &--is-disabled &__input,\n &--is-disabled &__input + &__label {\n color: $formDisabledColor;\n }\n\n &--is-readonly &__input,\n &--is-disabled &__input {\n color: $formDisabledColor;\n border-color: $formDisabledBorderColor;\n background-color: $formDisabledBackgroundColor;\n cursor: not-allowed;\n\n @include placeholder {\n color: $formDisabledColor;\n }\n\n &:hover,\n &:focus {\n border-color: $formDisabledBorderColor;\n }\n }\n\n &--is-readonly &__label,\n &--is-disabled &__label {\n cursor: not-allowed;\n\n &::before {\n background: transparent;\n }\n }\n\n &--is-readonly &__button-right,\n &--is-disabled &__button-right {\n &[disabled]:not([disabled=\"false\"])[variant=\"input\"] {\n --color: #{$formDisabledColor};\n --hover-color: #{$formDisabledColor};\n }\n }\n}\n","import {\n Component,\n Prop,\n Host,\n Event,\n EventEmitter,\n State,\n Method,\n Element,\n h,\n Watch\n} from \"@stencil/core\";\n\nimport {\n StzhInputChangeEvent,\n StzhInputFocusEvent,\n StzhInputBlurEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { fetchTranslations, StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"./stzh-input-description\";\n\nlet inputCounter = 0;\n\n/**\n * @slot - Slot for label content\n * @slot description - Slot for description\n * @slot description-long - Slot for long description (in popover)\n * @slot error - Slot for error\n * @slot button-right - Slot for right button\n */\n@Component({\n tag: \"stzh-input\",\n styleUrl: \"stzh-input.scss\",\n scoped: true\n})\nexport class StzhInput {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Whether the input is a textarea or an input field */\n @Prop() multiline: boolean = false;\n\n /** Rows attribute if input element is textarea */\n @Prop() rows: number;\n\n /** If input field, this defines the type (if `search`, a search icon will be displayed) */\n @Prop() type: \"text\" | \"search\" | \"password\" | \"email\" | \"url\" | \"tel\" | \"number\" = \"text\";\n\n /** If input type is number, this will be the step size */\n @Prop() step: number = 1;\n\n /** If input type is number, this will be the minimum step number */\n @Prop() min: number;\n\n /** If input type is number, this will be the maximum step number */\n @Prop() max: number;\n\n /** If input type is number and this property is true, this will show the spin buttons on hover/focus */\n @Prop({ reflect: true }) showSpin: 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 clearable button is showing when input field has value and is enabled (button-right slot not usable anymore when true) */\n @Prop({ reflect: true }) clearable: boolean = false;\n\n /** Append text to label depending if field is optional/required. true -> show \"(optional)\", false -> show nothing */\n @Prop({ reflect: true }) showMarker: boolean = false;\n\n /** Minimum of characters */\n @Prop() minlength: number;\n\n /** Maxlength of characters */\n @Prop() maxlength: number;\n\n /** The name of the input element */\n @Prop({ reflect: true }) name: string;\n\n /** The value of the input element */\n @Prop({ mutable: true }) value: string = \"\";\n\n /** Description message (use description slot as alternative) */\n @Prop() description: string;\n\n /** Long description message appearing in a popover (use description-long slot as alternative) */\n @Prop() descriptionLong: string;\n\n /** One or multiple error message (use error slot as alternative) */\n @Prop() error: string | string[];\n private _error: string[];\n\n /** Invalid status */\n @Prop({ reflect: true }) invalid: boolean = false;\n\n /** Required status */\n @Prop({ reflect: true }) required: boolean = false;\n\n /**\n * Specify inputmode.\n * See [MDN](https://developer.mozilla.org/de/docs/Web/HTML/Global_attributes/inputmode) for possible values\n */\n @Prop() inputmode: string;\n\n /**\n * Specify what the user agent has to provide as automated assistance.\n * See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete) for possible values\n */\n @Prop() autocomplete: string = \"on\";\n\n /** Whether autocomplete should be turned off */\n @Prop() noAutocomplete: boolean = false;\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** Whether label should be visually hidden. */\n @Prop() labelHidden: boolean = false;\n\n /** Size variant */\n @Prop({ reflect: true }) size: \"default\" | \"small\" = \"default\";\n\n /** Id for element which describes the input (this will be overwritten if description prop or slot is used, used by stzh-radiogroup) */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Whether the input is filled or not */\n @State() filled: boolean;\n\n @Element() element: HTMLStzhInputElement;\n\n /** Focus input field */\n @Method()\n async setFocus() {\n this.input.focus();\n }\n\n /** Input change event */\n @Event() stzhChange: EventEmitter<StzhInputChangeEvent>;\n\n /** Input focus event */\n @Event() stzhFocus: EventEmitter<StzhInputFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhInputBlurEvent>;\n\n @Watch(\"value\")\n valueWatcher(newValue: string) {\n this.filled = newValue !== \"\";\n }\n\n @Watch(\"error\")\n errorWatcher(newValue: string | string[]) {\n if (typeof newValue === \"string\") {\n try {\n this._error = JSON.parse(newValue);\n } catch (e) {\n if (newValue) {\n this._error = [newValue];\n } else {\n this._error = [];\n }\n }\n } else if (newValue) {\n this._error = newValue;\n } else {\n this._error = [];\n }\n\n this.invalid = this._error.length > 0;\n }\n\n @Watch(\"type\")\n typeWatcher(newValue: string) {\n const types = [\n \"text\", \"search\", \"password\", \"email\", \"url\", \"tel\", \"number\"\n ];\n\n if (!this.multiline && !types.includes(newValue)) {\n throw new Error(`Type ${newValue} not supported`);\n }\n }\n\n private input: HTMLInputElement | HTMLTextAreaElement;\n private inputId: string;\n private focusedByInput: boolean = false;\n\n private onClearClick = (event: MouseEvent) => {\n this.value = \"\";\n this.input.focus();\n\n this.stzhChange.emit({\n component: \"stzh-input\",\n originalEvent: event,\n value: this.value\n });\n }\n\n private onInput = (event: InputEvent) => {\n this.value = this.input.value;\n\n this.stzhChange.emit({\n component: \"stzh-input\",\n originalEvent: event,\n value: this.value\n });\n }\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.setFocus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n const focusEvent = new FocusEvent('focus', {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n this.stzhFocus.emit({\n component: \"stzh-input\",\n originalEvent: event\n });\n }\n\n private onBlur = (event: FocusEvent) => {\n // fixes weird bug where autofill selection doesn't get removed\n this.input.value = this.input.value;\n\n const blurEvent = new FocusEvent('blur', {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(blurEvent);\n this.stzhBlur.emit({\n component: \"stzh-input\",\n originalEvent: event\n });\n }\n\n private renderTextarea(): HTMLTextAreaElement {\n return (\n <textarea\n class=\"stzh-input__input stzh-input__input--textarea\"\n ref={(el) => (this.input = el as HTMLTextAreaElement)}\n id={this.inputId}\n name={this.name}\n value={this.value}\n rows={this.rows}\n disabled={this.disabled}\n readonly={this.readonly}\n minlength={this.minlength}\n maxlength={this.maxlength}\n aria-describedby={`${this.inputId}-description ${this.a11yDescribedby}`}\n aria-required={this.required ? \"true\" : \"false\"}\n aria-invalid={this.invalid ? \"true\" : \"false\"}\n onInput={this.onInput}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n ></textarea>\n );\n }\n\n private renderInput(): HTMLInputElement {\n return (\n <input\n class=\"stzh-input__input stzh-input__input--input\"\n ref={(el) => (this.input = el as HTMLInputElement)}\n id={this.inputId}\n type={this.type}\n name={this.name}\n value={this.value}\n min={this.min}\n max={this.max}\n step={this.step}\n inputmode={this.inputmode}\n disabled={this.disabled}\n readonly={this.readonly}\n minlength={this.minlength}\n maxlength={this.maxlength}\n autocomplete={this.noAutocomplete ? \"off\" : this.autocomplete}\n aria-autocomplete={this.noAutocomplete ? \"none\" : undefined}\n aria-describedby={`${this.inputId}-description ${this.a11yDescribedby}`}\n aria-required={this.required ? \"true\" : \"false\"}\n aria-invalid={this.invalid ? \"true\" : \"false\"}\n onInput={this.onInput}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n />\n );\n }\n\n async componentWillLoad() {\n this.inputId = `stzh-input-${inputCounter++}`;\n this.typeWatcher(this.type);\n this.valueWatcher(this.value);\n this.errorWatcher(this.error);\n\n if (!this.localization) {\n this.localization = await fetchTranslations(this.element, \"input\");\n }\n }\n\n render() {\n const buttonRightSlotUsed = hasSlot(this.element, 'button-right');\n const descriptionUsed = hasSlot(this.element, 'description') || !!this.description;\n const descriptionLongUsed = hasSlot(this.element, 'description-long') || !!this.descriptionLong;\n const errorUsed = hasSlot(this.element, 'error') || !!this.error;\n const classes = {\n \"stzh-input\": true,\n \"stzh-input--has-button-right\": buttonRightSlotUsed\n || this.type === \"search\"\n || (this.clearable && this.filled && !this.readonly && !this.disabled),\n \"stzh-input--has-description\": descriptionUsed,\n \"stzh-input--has-description-long\": descriptionLongUsed,\n \"stzh-input--has-error\": errorUsed,\n \"stzh-input--has-spin\": this.showSpin,\n \"stzh-input--is-invalid\": this.invalid,\n \"stzh-input--is-disabled\": this.disabled,\n \"stzh-input--is-readonly\": this.readonly,\n \"stzh-input--is-required\": this.required,\n \"stzh-input--is-filled\": this.filled,\n \"stzh-input--is-clearable\": this.clearable,\n \"stzh-input--has-fixed-label\": window?.stzhComponents?.labels === \"fixed\",\n \"stzh-input--has-label-hidden\": this.labelHidden,\n [`stzh-input--size-${this.size}`]: !!this.size,\n [`stzh-input--type-${this.type}`]: !!this.type,\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n <div class=\"stzh-input__field-wrapper\">\n {this.multiline ? this.renderTextarea() : this.renderInput()}\n <label class=\"stzh-input__label\" htmlFor={this.inputId}>\n {this.label ? this.label : <slot></slot>}\n {this.showMarker &&\n <span class=\"stzh-input__marker\">\n <span class=\"stzh-input__marker-symbol\" aria-hidden=\"true\">\n {this.required\n ? this.localization.$globals.requiredFieldMarker\n : this.localization.$globals.optionalFieldMarker\n }\n </span>\n <span class=\"stzh-input__marker-text\">\n {this.required\n ? this.localization.$globals.requiredFieldText\n : this.localization.$globals.optionalFieldText\n }\n </span>\n </span>\n }\n </label>\n {this.clearable || this.type === \"search\"\n ?\n <stzh-button\n class=\"stzh-input__button-right\"\n icon={this.disabled || this.readonly || !this.filled ? \"search\" : \"close-circle\"}\n icon-only\n variant=\"input\"\n onClick={this.onClearClick}\n disabled={this.disabled || this.readonly || !this.filled}\n a11yLabel={this.localization.$globals.clearButtonLabel}\n aria-controls={this.inputId}\n ></stzh-button>\n :\n <slot name=\"button-right\"></slot>\n }\n </div>\n <StzhInputDescription\n classPrefix=\"stzh-input\"\n id={`${this.inputId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- var __awaiter=this&&this.__awaiter||function(t,i,e,n){function s(t){return t instanceof e?t:new e((function(i){i(t)}))}return new(e||(e=Promise))((function(e,l){function a(t){try{r(n.next(t))}catch(t){l(t)}}function o(t){try{r(n["throw"](t))}catch(t){l(t)}}function r(t){t.done?e(t.value):s(t.value).then(a,o)}r((n=n.apply(t,i||[])).next())}))};var __generator=this&&this.__generator||function(t,i){var e={label:0,sent:function(){if(l[0]&1)throw l[1];return l[1]},trys:[],ops:[]},n,s,l,a;return a={next:o(0),throw:o(1),return:o(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function o(t){return function(i){return r([t,i])}}function r(o){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,o[0]&&(e=0)),e)try{if(n=1,s&&(l=o[0]&2?s["return"]:o[0]?s["throw"]||((l=s["return"])&&l.call(s),0):s.next)&&!(l=l.call(s,o[1])).done)return l;if(s=0,l)o=[o[0]&2,l.value];switch(o[0]){case 0:case 1:l=o;break;case 4:e.label++;return{value:o[1],done:false};case 5:e.label++;s=o[1];o=[0];continue;case 7:o=e.ops.pop();e.trys.pop();continue;default:if(!(l=e.trys,l=l.length>0&&l[l.length-1])&&(o[0]===6||o[0]===2)){e=0;continue}if(o[0]===3&&(!l||o[1]>l[0]&&o[1]<l[3])){e.label=o[1];break}if(o[0]===6&&e.label<l[1]){e.label=l[1];l=o;break}if(l&&e.label<l[2]){e.label=l[2];e.ops.push(o);break}if(l[2])e.ops.pop();e.trys.pop();continue}o=i.call(t,e)}catch(t){o=[6,t];s=0}finally{n=l=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};import{r as registerInstance,c as createEvent,h,F as Fragment,a as Host,g as getElement}from"./index-67fd55c9.js";import{h as hasSlot}from"./utils-51148d9a.js";import{f as fetchTranslations}from"./translation-utils-2623783f.js";var stzhLinkCss='@charset "UTF-8";.sc-stzh-link-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-link-h{display:none}.sc-stzh-link-h *.sc-stzh-link,.sc-stzh-link-h *.sc-stzh-link::before,.sc-stzh-link-h *.sc-stzh-link::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-link-h{--color:var(--stzh-link-color);--text-decoration-line:underline;--icon-size:var(--stzh-icon-size-medium);--icon-wrapper-height:var(--stzh-link-icon-wrapper-height);--hover-color:var(--stzh-link-hover-color);--hover-text-decoration-line:underline;color:var(--color);display:inline-block}.sc-stzh-link-h .sc-stzh-link-s>stzh-text{--color:initial}[fullwidth].sc-stzh-link-h:not([fullwidth=false]){width:100%;display:block}[size=small].sc-stzh-link-h{--icon-size:var(--stzh-icon-size-small)}[variant=secondary].sc-stzh-link-h{--color:var(--stzh-base-color)}[active].sc-stzh-link-h:not([active=false]){--color:var(--hover-color)}[disabled].sc-stzh-link-h:not([disabled=false]){--color:var(--stzh-color-grey25);--hover-color:var(--stzh-color-grey25)}.sc-stzh-link-h .sc-stzh-link-s>stzh-icon,.stzh-link__icon.sc-stzh-link{--size:var(--icon-size)}.stzh-link.sc-stzh-link{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);font-family:inherit;position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:stretch;justify-content:stretch;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;color:var(--color);-webkit-transition:color var(--stzh-base-transition-animation-speed);transition:color var(--stzh-base-transition-animation-speed);cursor:pointer;width:100%;-webkit-text-decoration-line:none;text-decoration-line:none;background-color:transparent;padding:0;border-radius:var(--stzh-button-border-radius);text-align:left}@media screen and (min-width: 1024px){.stzh-link.sc-stzh-link{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-link.sc-stzh-link:hover{color:var(--hover-color)}.stzh-link.sc-stzh-link:hover .stzh-link__text.sc-stzh-link{-webkit-text-decoration-line:var(--hover-text-decoration-line);text-decoration-line:var(--hover-text-decoration-line)}.stzh-link__vhidden.sc-stzh-link{border:0;clip:rect(0 0 0 0);-webkit-clip-path:inset(100%);clip-path:inset(100%);width:0.0625rem;height:0.0625rem;overflow:hidden;padding:0;position:absolute}.stzh-link__inner.sc-stzh-link{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-positive:1;flex-grow:1}.stzh-link__icon-wrapper.sc-stzh-link{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;width:auto;height:var(--icon-wrapper-height)}.stzh-link__text.sc-stzh-link{-webkit-text-decoration-line:var(--text-decoration-line);text-decoration-line:var(--text-decoration-line)}.stzh-link__icon-wrapper.sc-stzh-link:not(:empty)+.stzh-link__text.sc-stzh-link:not(:empty),.stzh-link__text.sc-stzh-link:not(:empty)+.stzh-link__icon-wrapper.sc-stzh-link:not(:empty){margin-left:var(--stzh-space-xxsmall)}.stzh-link__badge.sc-stzh-link{position:absolute;z-index:1;top:0;right:0}.stzh-link--has-icon-only.sc-stzh-link .stzh-link__text.sc-stzh-link{border:0;clip:rect(0 0 0 0);-webkit-clip-path:inset(100%);clip-path:inset(100%);width:0.0625rem;height:0.0625rem;overflow:hidden;padding:0;position:absolute}.stzh-link--badge-position-link.sc-stzh-link .stzh-link__icon-wrapper.sc-stzh-link{position:static}.stzh-link__badge.sc-stzh-link,.stzh-link--badge-position-link.sc-stzh-link .stzh-link__badge.sc-stzh-link{top:calc(var(--stzh-space-xxsmall) * -1);right:calc(var(--stzh-space-large) * -1)}.stzh-link--badge-position-icon.stzh-link--has-icon.sc-stzh-link .stzh-link__icon-wrapper.sc-stzh-link{position:relative}.stzh-link--badge-position-icon.stzh-link--has-icon.sc-stzh-link .stzh-link__badge.sc-stzh-link{top:calc(var(--stzh-space-xsmall) * -1);right:calc(var(--stzh-space-small) * -1)}.stzh-link--badge-position-icon.stzh-link--has-icon.stzh-link--has-badge.sc-stzh-link .stzh-link__icon-wrapper.sc-stzh-link+.stzh-link__text.sc-stzh-link:not(:empty){margin-left:var(--stzh-space-small)}.stzh-link--size-small.sc-stzh-link{font-size:var(--stzh-font-micro-font-size);line-height:var(--stzh-font-micro-text-line-height)}.stzh-link--size-inherit.sc-stzh-link{font-size:inherit;line-height:inherit;letter-spacing:inherit}.stzh-link--align-left.sc-stzh-link .stzh-link__inner.sc-stzh-link{-ms-flex-pack:start;justify-content:flex-start}.stzh-link--align-right.sc-stzh-link .stzh-link__inner.sc-stzh-link{-ms-flex-pack:end;justify-content:flex-end}.stzh-link--align-center.sc-stzh-link .stzh-link__inner.sc-stzh-link{-ms-flex-pack:center;justify-content:center}.stzh-link--align-space-between.sc-stzh-link .stzh-link__inner.sc-stzh-link{-ms-flex-pack:justify;justify-content:space-between}.stzh-link--is-disabled.sc-stzh-link{cursor:not-allowed}';var StzhLink=function(){function t(t){var i=this;registerInstance(this,t);this.stzhFocus=createEvent(this,"stzhFocus",7);this.stzhBlur=createEvent(this,"stzhBlur",7);this.focusedByInput=false;this.onRootFocus=function(){if(!i.focusedByInput){i.setFocus()}i.focusedByInput=false};this.onFocus=function(t){i.focusedByInput=true;var e=new FocusEvent("focus",{view:window,bubbles:false,cancelable:false});i.element.dispatchEvent(e);i.stzhFocus.emit({component:"stzh-link",originalEvent:t})};this.onBlur=function(t){var e=new FocusEvent("blur",{view:window,bubbles:false,cancelable:false});i.element.dispatchEvent(e);i.stzhBlur.emit({component:"stzh-link",originalEvent:t})};this.localization=undefined;this.icon="";this.iconPosition="left";this.size="default";this.href="";this.rel=undefined;this.target="";this.download=undefined;this.type="button";this.variant="default";this.fullwidth=false;this.textAlign="default";this.badge="";this.badgeType="default";this.badgeEmpty=false;this.badgePosition="icon";this.disabled=false;this.active=false;this.iconOnly=false;this.label="";this.linkAccesskey=undefined;this.a11yLabel=undefined;this.a11yDescribedby="";this.a11yExpanded=undefined;this.a11yDisabled=undefined;this.a11yControls=undefined;this.a11yTabindex=undefined;this.analyticsId=undefined}t.prototype.setFocus=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.link.focus();return[2]}))}))};t.prototype.renderIcon=function(){return h("div",{class:"stzh-link__icon-wrapper"},this.icon?h("stzh-icon",{class:"stzh-link__icon",name:this.icon}):h("slot",{name:"icon"}),(this.badge||this.badgeEmpty)&&h("stzh-badge",{class:"stzh-link__badge",label:this.badge,type:this.badgeType}))};t.prototype.renderContent=function(){var t=this;return h("div",{class:"stzh-link__text"},this.rel&&this.rel.includes("external")&&h("div",{class:"stzh-link__vhidden"},this.localization.$globals.externalLinkLabel),this.download&&h("div",{class:"stzh-link__vhidden"},this.localization.$globals.downloadLinkLabel),h("div",{ref:function(i){return t.text=i}},this.label?this.label:h("slot",null)))};t.prototype.renderInner=function(t){return h(Fragment,null,h("div",{class:"stzh-link__inner"},this.iconPosition==="left"&&this.renderIcon(),this.renderContent(),this.iconPosition==="right"&&this.renderIcon()),(this.badge||this.badgeEmpty)&&!t&&h("stzh-badge",{class:"stzh-link__badge",label:this.badge,type:this.badgeType}))};t.prototype.componentWillLoad=function(){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(i){switch(i.label){case 0:if(!!this.localization)return[3,2];t=this;return[4,fetchTranslations(this.element,"link")];case 1:t.localization=i.sent();i.label=2;case 2:return[2]}}))}))};t.prototype.componentDidRender=function(){var t=this;requestAnimationFrame((function(){t.link.setAttribute("s-object-id",t.analyticsId||t.text.innerText)}))};t.prototype.render=function(){var t;var i=this;var e=hasSlot(this.element,"icon")||!!this.icon;var n=(t={"stzh-link":true,"stzh-link--has-icon":e,"stzh-link--has-icon-only":this.iconOnly,"stzh-link--has-badge":!!this.badge,"stzh-link--is-fullwidth":this.fullwidth,"stzh-link--is-disabled":this.disabled,"stzh-link--is-active":this.active},t["stzh-link--badge-position-".concat(this.badgePosition)]=!!this.badgePosition,t["stzh-link--align-".concat(this.textAlign)]=!!this.textAlign,t["stzh-link--size-".concat(this.size)]=!!this.size,t["stzh-link--".concat(this.variant)]=!!this.variant,t);return h(Host,{tabindex:this.disabled?null:"-1",onFocus:this.onRootFocus},this.href?h("a",{ref:function(t){return i.link=t},href:this.disabled?null:this.href,download:this.download,rel:this.rel,target:this.target,class:n,accessKey:this.linkAccesskey,tabindex:this.a11yTabindex,"aria-label":this.a11yLabel,"aria-describedby":this.a11yDescribedby,"aria-disabled":typeof this.a11yDisabled!=="undefined"?this.a11yDisabled?"true":"false":null,"aria-expanded":typeof this.a11yExpanded!=="undefined"?this.a11yExpanded?"true":"false":null,"aria-controls":this.a11yControls,onFocus:this.onFocus,onBlur:this.onBlur},this.renderInner(e)):h("button",{ref:function(t){return i.link=t},class:n,type:this.type,disabled:this.disabled,accessKey:this.linkAccesskey,tabindex:this.a11yTabindex,"aria-label":this.a11yLabel,"aria-describedby":this.a11yDescribedby,"aria-disabled":typeof this.a11yDisabled!=="undefined"?this.a11yDisabled?"true":"false":null,"aria-expanded":typeof this.a11yExpanded!=="undefined"?this.a11yExpanded?"true":"false":null,"aria-controls":this.a11yControls,onFocus:this.onFocus,onBlur:this.onBlur},this.renderInner(e)))};Object.defineProperty(t.prototype,"element",{get:function(){return getElement(this)},enumerable:false,configurable:true});return t}();StzhLink.style=stzhLinkCss;export{StzhLink as stzh_link};
1
+ var __awaiter=this&&this.__awaiter||function(t,i,e,n){function s(t){return t instanceof e?t:new e((function(i){i(t)}))}return new(e||(e=Promise))((function(e,l){function a(t){try{r(n.next(t))}catch(t){l(t)}}function o(t){try{r(n["throw"](t))}catch(t){l(t)}}function r(t){t.done?e(t.value):s(t.value).then(a,o)}r((n=n.apply(t,i||[])).next())}))};var __generator=this&&this.__generator||function(t,i){var e={label:0,sent:function(){if(l[0]&1)throw l[1];return l[1]},trys:[],ops:[]},n,s,l,a;return a={next:o(0),throw:o(1),return:o(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function o(t){return function(i){return r([t,i])}}function r(o){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,o[0]&&(e=0)),e)try{if(n=1,s&&(l=o[0]&2?s["return"]:o[0]?s["throw"]||((l=s["return"])&&l.call(s),0):s.next)&&!(l=l.call(s,o[1])).done)return l;if(s=0,l)o=[o[0]&2,l.value];switch(o[0]){case 0:case 1:l=o;break;case 4:e.label++;return{value:o[1],done:false};case 5:e.label++;s=o[1];o=[0];continue;case 7:o=e.ops.pop();e.trys.pop();continue;default:if(!(l=e.trys,l=l.length>0&&l[l.length-1])&&(o[0]===6||o[0]===2)){e=0;continue}if(o[0]===3&&(!l||o[1]>l[0]&&o[1]<l[3])){e.label=o[1];break}if(o[0]===6&&e.label<l[1]){e.label=l[1];l=o;break}if(l&&e.label<l[2]){e.label=l[2];e.ops.push(o);break}if(l[2])e.ops.pop();e.trys.pop();continue}o=i.call(t,e)}catch(t){o=[6,t];s=0}finally{n=l=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};import{r as registerInstance,c as createEvent,h,F as Fragment,a as Host,g as getElement}from"./index-67fd55c9.js";import{h as hasSlot}from"./utils-8f264f12.js";import{f as fetchTranslations}from"./translation-utils-2623783f.js";var stzhLinkCss='@charset "UTF-8";.sc-stzh-link-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-link-h{display:none}.sc-stzh-link-h *.sc-stzh-link,.sc-stzh-link-h *.sc-stzh-link::before,.sc-stzh-link-h *.sc-stzh-link::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-link-h{--color:var(--stzh-link-color);--text-decoration-line:underline;--icon-size:var(--stzh-icon-size-medium);--icon-wrapper-height:var(--stzh-link-icon-wrapper-height);--hover-color:var(--stzh-link-hover-color);--hover-text-decoration-line:underline;color:var(--color);display:inline-block}.sc-stzh-link-h .sc-stzh-link-s>stzh-text{--color:initial}[fullwidth].sc-stzh-link-h:not([fullwidth=false]){width:100%;display:block}[size=small].sc-stzh-link-h{--icon-size:var(--stzh-icon-size-small)}[variant=secondary].sc-stzh-link-h{--color:var(--stzh-base-color)}[active].sc-stzh-link-h:not([active=false]){--color:var(--hover-color)}[disabled].sc-stzh-link-h:not([disabled=false]){--color:var(--stzh-color-grey25);--hover-color:var(--stzh-color-grey25)}.sc-stzh-link-h .sc-stzh-link-s>stzh-icon,.stzh-link__icon.sc-stzh-link{--size:var(--icon-size)}.stzh-link.sc-stzh-link{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);font-family:inherit;position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:stretch;justify-content:stretch;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;color:var(--color);-webkit-transition:color var(--stzh-base-transition-animation-speed);transition:color var(--stzh-base-transition-animation-speed);cursor:pointer;width:100%;-webkit-text-decoration-line:none;text-decoration-line:none;background-color:transparent;padding:0;border-radius:var(--stzh-button-border-radius);text-align:left}@media screen and (min-width: 1024px){.stzh-link.sc-stzh-link{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-link.sc-stzh-link:hover{color:var(--hover-color)}.stzh-link.sc-stzh-link:hover .stzh-link__text.sc-stzh-link{-webkit-text-decoration-line:var(--hover-text-decoration-line);text-decoration-line:var(--hover-text-decoration-line)}.stzh-link__vhidden.sc-stzh-link{border:0;clip:rect(0 0 0 0);-webkit-clip-path:inset(100%);clip-path:inset(100%);width:0.0625rem;height:0.0625rem;overflow:hidden;padding:0;position:absolute}.stzh-link__inner.sc-stzh-link{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-positive:1;flex-grow:1}.stzh-link__icon-wrapper.sc-stzh-link{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;width:auto;height:var(--icon-wrapper-height)}.stzh-link__text.sc-stzh-link{-webkit-text-decoration-line:var(--text-decoration-line);text-decoration-line:var(--text-decoration-line)}.stzh-link__icon-wrapper.sc-stzh-link:not(:empty)+.stzh-link__text.sc-stzh-link:not(:empty),.stzh-link__text.sc-stzh-link:not(:empty)+.stzh-link__icon-wrapper.sc-stzh-link:not(:empty){margin-left:var(--stzh-space-xxsmall)}.stzh-link__badge.sc-stzh-link{position:absolute;z-index:1;top:0;right:0}.stzh-link--has-icon-only.sc-stzh-link .stzh-link__text.sc-stzh-link{border:0;clip:rect(0 0 0 0);-webkit-clip-path:inset(100%);clip-path:inset(100%);width:0.0625rem;height:0.0625rem;overflow:hidden;padding:0;position:absolute}.stzh-link--badge-position-link.sc-stzh-link .stzh-link__icon-wrapper.sc-stzh-link{position:static}.stzh-link__badge.sc-stzh-link,.stzh-link--badge-position-link.sc-stzh-link .stzh-link__badge.sc-stzh-link{top:calc(var(--stzh-space-xxsmall) * -1);right:calc(var(--stzh-space-large) * -1)}.stzh-link--badge-position-icon.stzh-link--has-icon.sc-stzh-link .stzh-link__icon-wrapper.sc-stzh-link{position:relative}.stzh-link--badge-position-icon.stzh-link--has-icon.sc-stzh-link .stzh-link__badge.sc-stzh-link{top:calc(var(--stzh-space-xsmall) * -1);right:calc(var(--stzh-space-small) * -1)}.stzh-link--badge-position-icon.stzh-link--has-icon.stzh-link--has-badge.sc-stzh-link .stzh-link__icon-wrapper.sc-stzh-link+.stzh-link__text.sc-stzh-link:not(:empty){margin-left:var(--stzh-space-small)}.stzh-link--size-small.sc-stzh-link{font-size:var(--stzh-font-micro-font-size);line-height:var(--stzh-font-micro-text-line-height)}.stzh-link--size-inherit.sc-stzh-link{font-size:inherit;line-height:inherit;letter-spacing:inherit}.stzh-link--align-left.sc-stzh-link .stzh-link__inner.sc-stzh-link{-ms-flex-pack:start;justify-content:flex-start}.stzh-link--align-right.sc-stzh-link .stzh-link__inner.sc-stzh-link{-ms-flex-pack:end;justify-content:flex-end}.stzh-link--align-center.sc-stzh-link .stzh-link__inner.sc-stzh-link{-ms-flex-pack:center;justify-content:center}.stzh-link--align-space-between.sc-stzh-link .stzh-link__inner.sc-stzh-link{-ms-flex-pack:justify;justify-content:space-between}.stzh-link--is-disabled.sc-stzh-link{cursor:not-allowed}';var StzhLink=function(){function t(t){var i=this;registerInstance(this,t);this.stzhFocus=createEvent(this,"stzhFocus",7);this.stzhBlur=createEvent(this,"stzhBlur",7);this.focusedByInput=false;this.onRootFocus=function(){if(!i.focusedByInput){i.setFocus()}i.focusedByInput=false};this.onFocus=function(t){i.focusedByInput=true;var e=new FocusEvent("focus",{view:window,bubbles:false,cancelable:false});i.element.dispatchEvent(e);i.stzhFocus.emit({component:"stzh-link",originalEvent:t})};this.onBlur=function(t){var e=new FocusEvent("blur",{view:window,bubbles:false,cancelable:false});i.element.dispatchEvent(e);i.stzhBlur.emit({component:"stzh-link",originalEvent:t})};this.localization=undefined;this.icon="";this.iconPosition="left";this.size="default";this.href="";this.rel=undefined;this.target="";this.download=undefined;this.type="button";this.variant="default";this.fullwidth=false;this.textAlign="default";this.badge="";this.badgeType="default";this.badgeEmpty=false;this.badgePosition="icon";this.disabled=false;this.active=false;this.iconOnly=false;this.label="";this.linkAccesskey=undefined;this.a11yLabel=undefined;this.a11yDescribedby="";this.a11yExpanded=undefined;this.a11yDisabled=undefined;this.a11yControls=undefined;this.a11yTabindex=undefined;this.analyticsId=undefined}t.prototype.setFocus=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.link.focus();return[2]}))}))};t.prototype.renderIcon=function(){return h("div",{class:"stzh-link__icon-wrapper"},this.icon?h("stzh-icon",{class:"stzh-link__icon",name:this.icon}):h("slot",{name:"icon"}),(this.badge||this.badgeEmpty)&&h("stzh-badge",{class:"stzh-link__badge",label:this.badge,type:this.badgeType}))};t.prototype.renderContent=function(){var t=this;return h("div",{class:"stzh-link__text"},this.rel&&this.rel.includes("external")&&h("div",{class:"stzh-link__vhidden"},this.localization.$globals.externalLinkLabel),this.download&&h("div",{class:"stzh-link__vhidden"},this.localization.$globals.downloadLinkLabel),h("div",{ref:function(i){return t.text=i}},this.label?this.label:h("slot",null)))};t.prototype.renderInner=function(t){return h(Fragment,null,h("div",{class:"stzh-link__inner"},this.iconPosition==="left"&&this.renderIcon(),this.renderContent(),this.iconPosition==="right"&&this.renderIcon()),(this.badge||this.badgeEmpty)&&!t&&h("stzh-badge",{class:"stzh-link__badge",label:this.badge,type:this.badgeType}))};t.prototype.componentWillLoad=function(){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(i){switch(i.label){case 0:if(!!this.localization)return[3,2];t=this;return[4,fetchTranslations(this.element,"link")];case 1:t.localization=i.sent();i.label=2;case 2:return[2]}}))}))};t.prototype.componentDidRender=function(){var t=this;requestAnimationFrame((function(){t.link.setAttribute("s-object-id",t.analyticsId||t.text.innerText)}))};t.prototype.render=function(){var t;var i=this;var e=hasSlot(this.element,"icon")||!!this.icon;var n=(t={"stzh-link":true,"stzh-link--has-icon":e,"stzh-link--has-icon-only":this.iconOnly,"stzh-link--has-badge":!!this.badge,"stzh-link--is-fullwidth":this.fullwidth,"stzh-link--is-disabled":this.disabled,"stzh-link--is-active":this.active},t["stzh-link--badge-position-".concat(this.badgePosition)]=!!this.badgePosition,t["stzh-link--align-".concat(this.textAlign)]=!!this.textAlign,t["stzh-link--size-".concat(this.size)]=!!this.size,t["stzh-link--".concat(this.variant)]=!!this.variant,t);return h(Host,{tabindex:this.disabled?null:"-1",onFocus:this.onRootFocus},this.href?h("a",{ref:function(t){return i.link=t},href:this.disabled?null:this.href,download:this.download,rel:this.rel,target:this.target,class:n,accessKey:this.linkAccesskey,tabindex:this.a11yTabindex,"aria-label":this.a11yLabel||null,"aria-describedby":this.a11yDescribedby||null,"aria-disabled":typeof this.a11yDisabled!=="undefined"?this.a11yDisabled?"true":"false":null,"aria-expanded":typeof this.a11yExpanded!=="undefined"?this.a11yExpanded?"true":"false":null,"aria-controls":this.a11yControls||null,onFocus:this.onFocus,onBlur:this.onBlur},this.renderInner(e)):h("button",{ref:function(t){return i.link=t},class:n,type:this.type,disabled:this.disabled,accessKey:this.linkAccesskey,tabindex:this.a11yTabindex,"aria-label":this.a11yLabel||null,"aria-describedby":this.a11yDescribedby||null,"aria-disabled":typeof this.a11yDisabled!=="undefined"?this.a11yDisabled?"true":"false":null,"aria-expanded":typeof this.a11yExpanded!=="undefined"?this.a11yExpanded?"true":"false":null,"aria-controls":this.a11yControls||null,onFocus:this.onFocus,onBlur:this.onBlur},this.renderInner(e)))};Object.defineProperty(t.prototype,"element",{get:function(){return getElement(this)},enumerable:false,configurable:true});return t}();StzhLink.style=stzhLinkCss;export{StzhLink as stzh_link};
2
2
  //# sourceMappingURL=stzh-link.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["stzhLinkCss","StzhLink","this","focusedByInput","onRootFocus","_this","setFocus","onFocus","event","focusEvent","FocusEvent","view","window","bubbles","cancelable","element","dispatchEvent","stzhFocus","emit","component","originalEvent","onBlur","blurEvent","stzhBlur","class_1","prototype","link","focus","renderIcon","h","class","icon","name","badge","badgeEmpty","label","type","badgeType","renderContent","rel","includes","localization","$globals","externalLinkLabel","download","downloadLinkLabel","ref","el","text","renderInner","iconUsed","Fragment","iconPosition","componentWillLoad","_a","fetchTranslations","_b","sent","componentDidRender","requestAnimationFrame","setAttribute","analyticsId","innerText","render","hasSlot","classes","iconOnly","fullwidth","disabled","active","concat","badgePosition","textAlign","size","variant","Host","tabindex","href","target","accessKey","linkAccesskey","a11yTabindex","a11yLabel","a11yDescribedby","a11yDisabled","a11yExpanded","a11yControls"],"sources":["src/components/stzh-link/stzh-link.scss?tag=stzh-link&encapsulation=scoped","src/components/stzh-link/stzh-link.tsx"],"sourcesContent":[":host {\n --color: #{$linkColor};\n --text-decoration-line: underline;\n --icon-size: #{iconSize('medium')};\n --icon-wrapper-height: #{$linkIconWrapperHeight};\n\n --hover-color: #{$linkHoverColor};\n --hover-text-decoration-line: underline;\n\n color: var(--color);\n display: inline-block;\n\n ::slotted(stzh-text) {\n --color: initial;\n }\n\n &[fullwidth]:not([fullwidth=\"false\"]) {\n width: 100%;\n display: block;\n }\n\n &[size=\"small\"] {\n --icon-size: #{iconSize('small')};\n }\n\n &[variant=\"secondary\"] {\n --color: #{$baseColor};\n }\n\n &[active]:not([active=\"false\"]) {\n --color: var(--hover-color);\n }\n\n &[disabled]:not([disabled=\"false\"]) {\n --color: #{$colorGrey25};\n --hover-color: #{$colorGrey25};\n }\n}\n\n:host ::slotted(stzh-icon),\n.stzh-link__icon {\n --size: var(--icon-size);\n}\n\n.stzh-link {\n @include fontCurve('p1');\n font-family: inherit;\n position: relative;\n display: flex;\n align-items: center;\n justify-content: stretch;\n appearance: none;\n border: none;\n color: var(--color);\n transition: color $baseTransitionAnimationSpeed;\n cursor: pointer;\n width: 100%;\n text-decoration-line: none;\n background-color: transparent;\n padding: 0;\n border-radius: $buttonBorderRadius;\n text-align: left;\n\n &:hover {\n color: var(--hover-color);\n }\n\n &:hover &__text {\n text-decoration-line: var(--hover-text-decoration-line);\n }\n\n &__vhidden {\n @include visuallyhidden;\n }\n\n &__inner {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-grow: 1;\n }\n\n &__icon-wrapper {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n width: auto;\n height: var(--icon-wrapper-height);\n }\n\n &__text {\n text-decoration-line: var(--text-decoration-line);\n }\n\n &__icon-wrapper:not(:empty) + &__text:not(:empty),\n &__text:not(:empty) + &__icon-wrapper:not(:empty) {\n margin-left: space('xxsmall');\n }\n\n &__badge {\n position: absolute;\n z-index: 1;\n top: 0;\n right: 0;\n }\n\n /* Variant if link only has icon */\n\n &--has-icon-only &__text {\n @include visuallyhidden;\n }\n\n /* Badge positioning variants */\n\n &--badge-position-link &__icon-wrapper {\n position: static;\n }\n\n &__badge,\n &--badge-position-link &__badge {\n top: calc(#{space('xxsmall')} * -1);\n right: calc(#{space('large')} * -1);\n }\n\n &--badge-position-icon#{&}--has-icon &__icon-wrapper {\n position: relative;\n }\n\n &--badge-position-icon#{&}--has-icon &__badge {\n top: calc(#{space('xsmall')} * -1);\n right: calc(#{space('small')} * -1);;\n }\n\n &--badge-position-icon#{&}--has-icon#{&}--has-badge &__icon-wrapper + &__text:not(:empty) {\n margin-left: space('small');\n }\n\n /* Size variants */\n\n &--size-small {\n @include fontSize('micro');\n }\n\n &--size-inherit {\n font-size: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n }\n\n /* Alignment variants */\n\n &--align-left &__inner {\n justify-content: flex-start;\n }\n\n &--align-right &__inner {\n justify-content: flex-end;\n }\n\n &--align-center &__inner {\n justify-content: center;\n }\n\n &--align-space-between &__inner {\n justify-content: space-between;\n }\n\n /* Disabled variant */\n\n &--is-disabled {\n cursor: not-allowed;\n }\n}\n","import {\n Component,\n Host,\n Fragment,\n Element,\n h,\n Prop,\n Method,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhLinkFocusEvent,\n StzhLinkBlurEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { fetchTranslations, StzhLocaleComponent } from \"../../utils/translation-utils\";\n\n/**\n * @slot - Slot for text content\n * @slot icon - Slot for icon element\n */\n@Component({\n tag: \"stzh-link\",\n styleUrl: \"stzh-link.scss\",\n scoped: true\n})\nexport class StzhLink {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Icon (use instead of icon slot) */\n @Prop() icon: string = \"\";\n\n /** Icon Position */\n @Prop({ reflect: true }) iconPosition: \"left\" | \"right\" = \"left\";\n\n /** Size variant */\n @Prop({ reflect: true }) size: \"default\" | \"small\" | \"inherit\" = \"default\";\n\n /** href attribute of the link */\n @Prop() href: string = \"\";\n\n /** Rel (if href is used) */\n @Prop() rel: string;\n\n /** target if the button is used as link (if href used) */\n @Prop() target: string = \"\";\n\n /** Download attribute of link (if `href` used) */\n @Prop() download: string;\n\n /** type of the button, if used as button (if no href used) */\n @Prop() type: \"button\" | \"submit\" | \"reset\" = \"button\";\n\n /** Variant style */\n @Prop({ reflect: true }) variant: \"default\" | \"secondary\" = \"default\";\n\n /** Whether the link is full width */\n @Prop({ reflect: true }) fullwidth: boolean = false;\n\n /** Text alignment */\n @Prop({ reflect: true }) textAlign: \"left\" | \"center\" | \"right\" | \"space-between\" | \"default\" = \"default\";\n\n /** Badge text */\n @Prop() badge: string = \"\";\n\n /** Badge type */\n @Prop({ reflect: true }) badgeType: \"default\" | \"success\" | \"warning\" | \"error\" | \"info\" = \"default\";\n\n /** Whether badge should be displayed empty */\n @Prop({ reflect: true }) badgeEmpty: boolean = false;\n\n /** Badge position */\n @Prop({ reflect: true }) badgePosition: \"icon\" | \"link\" = \"icon\";\n\n /** Disabled status */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Active status */\n @Prop({ reflect: true }) active: boolean = false;\n\n /** Whether only an icon is used inside the link */\n @Prop({ reflect: true }) iconOnly: boolean = false;\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** Access key of link (usually a number e.g. 1) */\n @Prop() linkAccesskey: string;\n\n /** Accessible label for screen readers to replace visible text */\n @Prop({ attribute: \"a11y-label\" }) a11yLabel: string;\n\n /** Id for element which describes the button (this will be overwritten if description prop or slot is used, used by stzh-radiogroup) */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Aria expanded of link/button */\n @Prop({ reflect: true, attribute: \"a11y-expanded\" }) a11yExpanded: boolean;\n\n /** Aria disabled of link/button */\n @Prop({ reflect: true, attribute: \"a11y-disabled\" }) a11yDisabled: boolean;\n\n /** Aria controls of link/button */\n @Prop({ attribute: \"a11y-controls\" }) a11yControls: string;\n\n /** Tabindex of link/button */\n @Prop({ attribute: \"a11y-tabindex\" }) a11yTabindex: string;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the link/button element.\n * Default value will be taken from `label` prop or default slot.\n */\n @Prop() analyticsId: string;\n\n @Element() element: HTMLStzhLinkElement;\n\n /** Focus link */\n @Method()\n async setFocus() {\n this.link.focus();\n }\n\n /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhLinkFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhLinkBlurEvent>;\n\n private link: HTMLButtonElement | HTMLAnchorElement;\n private text: HTMLDivElement;\n private focusedByInput: boolean = false;\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.setFocus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n const focusEvent = new FocusEvent(\"focus\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n this.stzhFocus.emit({\n component: \"stzh-link\",\n originalEvent: event\n });\n }\n\n private onBlur = (event: FocusEvent) => {\n const blurEvent = new FocusEvent(\"blur\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(blurEvent);\n this.stzhBlur.emit({\n component: \"stzh-link\",\n originalEvent: event\n });\n }\n\n private renderIcon(): HTMLInputElement {\n return (\n <div class=\"stzh-link__icon-wrapper\">\n {this.icon ?\n <stzh-icon class=\"stzh-link__icon\" name={this.icon}></stzh-icon>\n :\n <slot name=\"icon\"></slot>\n }\n {(this.badge || this.badgeEmpty) &&\n <stzh-badge class=\"stzh-link__badge\" label={this.badge} type={this.badgeType}></stzh-badge>\n }\n </div>\n );\n }\n\n private renderContent(): HTMLDivElement {\n return (\n <div class=\"stzh-link__text\">\n {this.rel && this.rel.includes('external') && <div class=\"stzh-link__vhidden\">{this.localization.$globals.externalLinkLabel}</div>}\n {this.download && <div class=\"stzh-link__vhidden\">{this.localization.$globals.downloadLinkLabel}</div>}\n <div ref={(el) => (this.text = el as HTMLDivElement)}>{this.label ? this.label : <slot></slot>}</div>\n </div>\n );\n }\n\n private renderInner(iconUsed: boolean): DocumentFragment {\n return (\n <Fragment>\n <div class=\"stzh-link__inner\">\n {this.iconPosition === \"left\" && this.renderIcon()}\n {this.renderContent()}\n {this.iconPosition === \"right\" && this.renderIcon()}\n </div>\n {(this.badge || this.badgeEmpty) && !iconUsed &&\n <stzh-badge class=\"stzh-link__badge\" label={this.badge} type={this.badgeType}></stzh-badge>\n }\n </Fragment>\n );\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await fetchTranslations(this.element, \"link\");\n }\n }\n\n componentDidRender() {\n requestAnimationFrame(() => {\n this.link.setAttribute(\"s-object-id\", this.analyticsId || this.text.innerText);\n });\n }\n\n render() {\n const iconUsed = hasSlot(this.element, \"icon\") || !!this.icon;\n const classes = {\n \"stzh-link\": true,\n \"stzh-link--has-icon\": iconUsed,\n \"stzh-link--has-icon-only\": this.iconOnly,\n \"stzh-link--has-badge\": !!this.badge,\n \"stzh-link--is-fullwidth\": this.fullwidth,\n \"stzh-link--is-disabled\": this.disabled,\n \"stzh-link--is-active\": this.active,\n [`stzh-link--badge-position-${this.badgePosition}`]: !!this.badgePosition,\n [`stzh-link--align-${this.textAlign}`]: !!this.textAlign,\n [`stzh-link--size-${this.size}`]: !!this.size,\n [`stzh-link--${this.variant}`]: !!this.variant,\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n {this.href ?\n <a\n ref={(el) => (this.link = el as HTMLAnchorElement)}\n href={this.disabled ? null : this.href}\n download={this.download}\n rel={this.rel}\n target={this.target}\n class={classes}\n accessKey={this.linkAccesskey}\n tabindex={this.a11yTabindex}\n aria-label={this.a11yLabel}\n aria-describedby={this.a11yDescribedby}\n aria-disabled={typeof this.a11yDisabled !== \"undefined\"\n ? (this.a11yDisabled ? \"true\" : \"false\") : null}\n aria-expanded={typeof this.a11yExpanded !== \"undefined\"\n ? (this.a11yExpanded ? \"true\" : \"false\") : null}\n aria-controls={this.a11yControls}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </a>\n :\n <button\n ref={(el) => (this.link = el as HTMLButtonElement)}\n class={classes}\n type={this.type}\n disabled={this.disabled}\n accessKey={this.linkAccesskey}\n tabindex={this.a11yTabindex}\n aria-label={this.a11yLabel}\n aria-describedby={this.a11yDescribedby}\n aria-disabled={typeof this.a11yDisabled !== \"undefined\"\n ? (this.a11yDisabled ? \"true\" : \"false\") : null}\n aria-expanded={typeof this.a11yExpanded !== \"undefined\"\n ? (this.a11yExpanded ? \"true\" : \"false\") : null}\n aria-controls={this.a11yControls}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </button>\n }\n </Host>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["stzhLinkCss","StzhLink","this","focusedByInput","onRootFocus","_this","setFocus","onFocus","event","focusEvent","FocusEvent","view","window","bubbles","cancelable","element","dispatchEvent","stzhFocus","emit","component","originalEvent","onBlur","blurEvent","stzhBlur","class_1","prototype","link","focus","renderIcon","h","class","icon","name","badge","badgeEmpty","label","type","badgeType","renderContent","rel","includes","localization","$globals","externalLinkLabel","download","downloadLinkLabel","ref","el","text","renderInner","iconUsed","Fragment","iconPosition","componentWillLoad","_a","fetchTranslations","_b","sent","componentDidRender","requestAnimationFrame","setAttribute","analyticsId","innerText","render","hasSlot","classes","iconOnly","fullwidth","disabled","active","concat","badgePosition","textAlign","size","variant","Host","tabindex","href","target","accessKey","linkAccesskey","a11yTabindex","a11yLabel","a11yDescribedby","a11yDisabled","a11yExpanded","a11yControls"],"sources":["src/components/stzh-link/stzh-link.scss?tag=stzh-link&encapsulation=scoped","src/components/stzh-link/stzh-link.tsx"],"sourcesContent":[":host {\n --color: #{$linkColor};\n --text-decoration-line: underline;\n --icon-size: #{iconSize('medium')};\n --icon-wrapper-height: #{$linkIconWrapperHeight};\n\n --hover-color: #{$linkHoverColor};\n --hover-text-decoration-line: underline;\n\n color: var(--color);\n display: inline-block;\n\n ::slotted(stzh-text) {\n --color: initial;\n }\n\n &[fullwidth]:not([fullwidth=\"false\"]) {\n width: 100%;\n display: block;\n }\n\n &[size=\"small\"] {\n --icon-size: #{iconSize('small')};\n }\n\n &[variant=\"secondary\"] {\n --color: #{$baseColor};\n }\n\n &[active]:not([active=\"false\"]) {\n --color: var(--hover-color);\n }\n\n &[disabled]:not([disabled=\"false\"]) {\n --color: #{$colorGrey25};\n --hover-color: #{$colorGrey25};\n }\n}\n\n:host ::slotted(stzh-icon),\n.stzh-link__icon {\n --size: var(--icon-size);\n}\n\n.stzh-link {\n @include fontCurve('p1');\n font-family: inherit;\n position: relative;\n display: flex;\n align-items: center;\n justify-content: stretch;\n appearance: none;\n border: none;\n color: var(--color);\n transition: color $baseTransitionAnimationSpeed;\n cursor: pointer;\n width: 100%;\n text-decoration-line: none;\n background-color: transparent;\n padding: 0;\n border-radius: $buttonBorderRadius;\n text-align: left;\n\n &:hover {\n color: var(--hover-color);\n }\n\n &:hover &__text {\n text-decoration-line: var(--hover-text-decoration-line);\n }\n\n &__vhidden {\n @include visuallyhidden;\n }\n\n &__inner {\n display: flex;\n align-items: center;\n justify-content: center;\n flex-grow: 1;\n }\n\n &__icon-wrapper {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n width: auto;\n height: var(--icon-wrapper-height);\n }\n\n &__text {\n text-decoration-line: var(--text-decoration-line);\n }\n\n &__icon-wrapper:not(:empty) + &__text:not(:empty),\n &__text:not(:empty) + &__icon-wrapper:not(:empty) {\n margin-left: space('xxsmall');\n }\n\n &__badge {\n position: absolute;\n z-index: 1;\n top: 0;\n right: 0;\n }\n\n /* Variant if link only has icon */\n\n &--has-icon-only &__text {\n @include visuallyhidden;\n }\n\n /* Badge positioning variants */\n\n &--badge-position-link &__icon-wrapper {\n position: static;\n }\n\n &__badge,\n &--badge-position-link &__badge {\n top: calc(#{space('xxsmall')} * -1);\n right: calc(#{space('large')} * -1);\n }\n\n &--badge-position-icon#{&}--has-icon &__icon-wrapper {\n position: relative;\n }\n\n &--badge-position-icon#{&}--has-icon &__badge {\n top: calc(#{space('xsmall')} * -1);\n right: calc(#{space('small')} * -1);;\n }\n\n &--badge-position-icon#{&}--has-icon#{&}--has-badge &__icon-wrapper + &__text:not(:empty) {\n margin-left: space('small');\n }\n\n /* Size variants */\n\n &--size-small {\n @include fontSize('micro');\n }\n\n &--size-inherit {\n font-size: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n }\n\n /* Alignment variants */\n\n &--align-left &__inner {\n justify-content: flex-start;\n }\n\n &--align-right &__inner {\n justify-content: flex-end;\n }\n\n &--align-center &__inner {\n justify-content: center;\n }\n\n &--align-space-between &__inner {\n justify-content: space-between;\n }\n\n /* Disabled variant */\n\n &--is-disabled {\n cursor: not-allowed;\n }\n}\n","import {\n Component,\n Host,\n Fragment,\n Element,\n h,\n Prop,\n Method,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhLinkFocusEvent,\n StzhLinkBlurEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { fetchTranslations, StzhLocaleComponent } from \"../../utils/translation-utils\";\n\n/**\n * @slot - Slot for text content\n * @slot icon - Slot for icon element\n */\n@Component({\n tag: \"stzh-link\",\n styleUrl: \"stzh-link.scss\",\n scoped: true\n})\nexport class StzhLink {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Icon (use instead of icon slot) */\n @Prop() icon: string = \"\";\n\n /** Icon Position */\n @Prop({ reflect: true }) iconPosition: \"left\" | \"right\" = \"left\";\n\n /** Size variant */\n @Prop({ reflect: true }) size: \"default\" | \"small\" | \"inherit\" = \"default\";\n\n /** href attribute of the link */\n @Prop() href: string = \"\";\n\n /** Rel (if href is used) */\n @Prop() rel: string;\n\n /** target if the button is used as link (if href used) */\n @Prop() target: string = \"\";\n\n /** Download attribute of link (if `href` used) */\n @Prop() download: string;\n\n /** type of the button, if used as button (if no href used) */\n @Prop() type: \"button\" | \"submit\" | \"reset\" = \"button\";\n\n /** Variant style */\n @Prop({ reflect: true }) variant: \"default\" | \"secondary\" = \"default\";\n\n /** Whether the link is full width */\n @Prop({ reflect: true }) fullwidth: boolean = false;\n\n /** Text alignment */\n @Prop({ reflect: true }) textAlign: \"left\" | \"center\" | \"right\" | \"space-between\" | \"default\" = \"default\";\n\n /** Badge text */\n @Prop() badge: string = \"\";\n\n /** Badge type */\n @Prop({ reflect: true }) badgeType: \"default\" | \"success\" | \"warning\" | \"error\" | \"info\" = \"default\";\n\n /** Whether badge should be displayed empty */\n @Prop({ reflect: true }) badgeEmpty: boolean = false;\n\n /** Badge position */\n @Prop({ reflect: true }) badgePosition: \"icon\" | \"link\" = \"icon\";\n\n /** Disabled status */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Active status */\n @Prop({ reflect: true }) active: boolean = false;\n\n /** Whether only an icon is used inside the link */\n @Prop({ reflect: true }) iconOnly: boolean = false;\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** Access key of link (usually a number e.g. 1) */\n @Prop() linkAccesskey: string;\n\n /** Accessible label for screen readers to replace visible text */\n @Prop({ attribute: \"a11y-label\" }) a11yLabel: string;\n\n /** Id for element which describes the button (this will be overwritten if description prop or slot is used, used by stzh-radiogroup) */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Aria expanded of link/button */\n @Prop({ reflect: true, attribute: \"a11y-expanded\" }) a11yExpanded: boolean;\n\n /** Aria disabled of link/button */\n @Prop({ reflect: true, attribute: \"a11y-disabled\" }) a11yDisabled: boolean;\n\n /** Aria controls of link/button */\n @Prop({ attribute: \"a11y-controls\" }) a11yControls: string;\n\n /** Tabindex of link/button */\n @Prop({ attribute: \"a11y-tabindex\" }) a11yTabindex: string;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the link/button element.\n * Default value will be taken from `label` prop or default slot.\n */\n @Prop() analyticsId: string;\n\n @Element() element: HTMLStzhLinkElement;\n\n /** Focus link */\n @Method()\n async setFocus() {\n this.link.focus();\n }\n\n /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhLinkFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhLinkBlurEvent>;\n\n private link: HTMLButtonElement | HTMLAnchorElement;\n private text: HTMLDivElement;\n private focusedByInput: boolean = false;\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.setFocus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n const focusEvent = new FocusEvent(\"focus\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n this.stzhFocus.emit({\n component: \"stzh-link\",\n originalEvent: event\n });\n }\n\n private onBlur = (event: FocusEvent) => {\n const blurEvent = new FocusEvent(\"blur\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(blurEvent);\n this.stzhBlur.emit({\n component: \"stzh-link\",\n originalEvent: event\n });\n }\n\n private renderIcon(): HTMLInputElement {\n return (\n <div class=\"stzh-link__icon-wrapper\">\n {this.icon ?\n <stzh-icon class=\"stzh-link__icon\" name={this.icon}></stzh-icon>\n :\n <slot name=\"icon\"></slot>\n }\n {(this.badge || this.badgeEmpty) &&\n <stzh-badge class=\"stzh-link__badge\" label={this.badge} type={this.badgeType}></stzh-badge>\n }\n </div>\n );\n }\n\n private renderContent(): HTMLDivElement {\n return (\n <div class=\"stzh-link__text\">\n {this.rel && this.rel.includes('external') && <div class=\"stzh-link__vhidden\">{this.localization.$globals.externalLinkLabel}</div>}\n {this.download && <div class=\"stzh-link__vhidden\">{this.localization.$globals.downloadLinkLabel}</div>}\n <div ref={(el) => (this.text = el as HTMLDivElement)}>{this.label ? this.label : <slot></slot>}</div>\n </div>\n );\n }\n\n private renderInner(iconUsed: boolean): DocumentFragment {\n return (\n <Fragment>\n <div class=\"stzh-link__inner\">\n {this.iconPosition === \"left\" && this.renderIcon()}\n {this.renderContent()}\n {this.iconPosition === \"right\" && this.renderIcon()}\n </div>\n {(this.badge || this.badgeEmpty) && !iconUsed &&\n <stzh-badge class=\"stzh-link__badge\" label={this.badge} type={this.badgeType}></stzh-badge>\n }\n </Fragment>\n );\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await fetchTranslations(this.element, \"link\");\n }\n }\n\n componentDidRender() {\n requestAnimationFrame(() => {\n this.link.setAttribute(\"s-object-id\", this.analyticsId || this.text.innerText);\n });\n }\n\n render() {\n const iconUsed = hasSlot(this.element, \"icon\") || !!this.icon;\n const classes = {\n \"stzh-link\": true,\n \"stzh-link--has-icon\": iconUsed,\n \"stzh-link--has-icon-only\": this.iconOnly,\n \"stzh-link--has-badge\": !!this.badge,\n \"stzh-link--is-fullwidth\": this.fullwidth,\n \"stzh-link--is-disabled\": this.disabled,\n \"stzh-link--is-active\": this.active,\n [`stzh-link--badge-position-${this.badgePosition}`]: !!this.badgePosition,\n [`stzh-link--align-${this.textAlign}`]: !!this.textAlign,\n [`stzh-link--size-${this.size}`]: !!this.size,\n [`stzh-link--${this.variant}`]: !!this.variant,\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n {this.href ?\n <a\n ref={(el) => (this.link = el as HTMLAnchorElement)}\n href={this.disabled ? null : this.href}\n download={this.download}\n rel={this.rel}\n target={this.target}\n class={classes}\n accessKey={this.linkAccesskey}\n tabindex={this.a11yTabindex}\n aria-label={this.a11yLabel || null}\n aria-describedby={this.a11yDescribedby || null}\n aria-disabled={typeof this.a11yDisabled !== \"undefined\"\n ? (this.a11yDisabled ? \"true\" : \"false\") : null}\n aria-expanded={typeof this.a11yExpanded !== \"undefined\"\n ? (this.a11yExpanded ? \"true\" : \"false\") : null}\n aria-controls={this.a11yControls || null}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </a>\n :\n <button\n ref={(el) => (this.link = el as HTMLButtonElement)}\n class={classes}\n type={this.type}\n disabled={this.disabled}\n accessKey={this.linkAccesskey}\n tabindex={this.a11yTabindex}\n aria-label={this.a11yLabel || null}\n aria-describedby={this.a11yDescribedby || null}\n aria-disabled={typeof this.a11yDisabled !== \"undefined\"\n ? (this.a11yDisabled ? \"true\" : \"false\") : null}\n aria-expanded={typeof this.a11yExpanded !== \"undefined\"\n ? (this.a11yExpanded ? \"true\" : \"false\") : null}\n aria-controls={this.a11yControls || null}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </button>\n }\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- var __awaiter=this&&this.__awaiter||function(e,t,n,s){function i(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,r){function o(e){try{h(s.next(e))}catch(e){r(e)}}function a(e){try{h(s["throw"](e))}catch(e){r(e)}}function h(e){e.done?n(e.value):i(e.value).then(o,a)}h((s=s.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var n={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},s,i,r,o;return o={next:a(0),throw:a(1),return:a(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(t){return h([e,t])}}function h(a){if(s)throw new TypeError("Generator is already executing.");while(o&&(o=0,a[0]&&(n=0)),n)try{if(s=1,i&&(r=a[0]&2?i["return"]:a[0]?i["throw"]||((r=i["return"])&&r.call(i),0):i.next)&&!(r=r.call(i,a[1])).done)return r;if(i=0,r)a=[a[0]&2,r.value];switch(a[0]){case 0:case 1:r=a;break;case 4:n.label++;return{value:a[1],done:false};case 5:n.label++;i=a[1];a=[0];continue;case 7:a=n.ops.pop();n.trys.pop();continue;default:if(!(r=n.trys,r=r.length>0&&r[r.length-1])&&(a[0]===6||a[0]===2)){n=0;continue}if(a[0]===3&&(!r||a[1]>r[0]&&a[1]<r[3])){n.label=a[1];break}if(a[0]===6&&n.label<r[1]){n.label=r[1];r=a;break}if(r&&n.label<r[2]){n.label=r[2];n.ops.push(a);break}if(r[2])n.ops.pop();n.trys.pop();continue}a=t.call(e,n)}catch(e){a=[6,e];i=0}finally{s=r=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}};import{r as registerInstance,h,a as Host,c as createEvent,F as Fragment,g as getElement}from"./index-67fd55c9.js";import{h as hasSlot}from"./utils-51148d9a.js";var stzhMenuCss=".sc-stzh-menu-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-menu-h{display:none}.sc-stzh-menu-h *.sc-stzh-menu,.sc-stzh-menu-h *.sc-stzh-menu::before,.sc-stzh-menu-h *.sc-stzh-menu::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-menu-h .sc-stzh-menu-s>stzh-hr{margin-top:var(--stzh-space-xsmall);margin-bottom:var(--stzh-space-xsmall)}.stzh-menu.sc-stzh-menu{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}";var StzhMenu=function(){function e(e){registerInstance(this,e)}e.prototype.render=function(){return h(Host,{role:"menu"},h("div",{class:"stzh-menu"},h("slot",null)))};return e}();StzhMenu.style=stzhMenuCss;var stzhMenuItemCss=".sc-stzh-menu-item-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-menu-item-h{display:none}.sc-stzh-menu-item-h *.sc-stzh-menu-item,.sc-stzh-menu-item-h *.sc-stzh-menu-item::before,.sc-stzh-menu-item-h *.sc-stzh-menu-item::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-menu-item-h{--height:var(--stzh-menu-item-height);--color:var(--stzh-color-grey70);--background-color:transparent;--icon-size:var(--stzh-icon-size-small);--hover-color:var(--stzh-color-grey70);--hover-background-color:var(--stzh-color-grey5)}[active].sc-stzh-menu-item-h:not([active=false]){--color:var(--stzh-color-primary, var(--stzh-color-zueriblue));--hover-color:var(--stzh-color-primary-hover, var(--stzh-color-zueribluedark));--hover-background-color:var(--stzh-color-primary8)}[disabled].sc-stzh-menu-item-h:not([disabled=false]){--color:var(--stzh-color-white);--background-color:var(--stzh-color-grey13);--hover-color:var(--stzh-color-white);--hover-background-color:var(--stzh-color-grey13)}.sc-stzh-menu-item-h .sc-stzh-menu-item-s>stzh-icon,.stzh-menu-item__icon.sc-stzh-menu-item{--size:var(--icon-size)}.stzh-menu-item.sc-stzh-menu-item{font-size:var(--stzh-font-micro-font-size);line-height:var(--stzh-font-micro-text-line-height);font-family:inherit;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:stretch;justify-content:stretch;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-text-decoration-line:none;text-decoration-line:none;border:none;padding:var(--stzh-space-xsmall) var(--stzh-space-medium);padding-left:var(--stzh-space-large);color:var(--color);background-color:var(--background-color);width:100%;height:var(--height);line-height:var(--height);-webkit-transition-duration:var(--stzh-base-transition-animation-speed);transition-duration:var(--stzh-base-transition-animation-speed);-webkit-transition-property:color, background-color, border-color;transition-property:color, background-color, border-color;cursor:pointer}.stzh-menu-item.sc-stzh-menu-item:hover{color:var(--hover-color);background-color:var(--hover-background-color)}.stzh-menu-item__icon-wrapper.sc-stzh-menu-item{position:relative;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;width:auto;height:1em}.stzh-menu-item__badge.sc-stzh-menu-item{position:absolute;z-index:1;top:calc(var(--stzh-space-xsmall) * -1);right:calc(var(--stzh-space-xsmall) * -1)}.stzh-menu-item__icon-wrapper.sc-stzh-menu-item+.stzh-menu-item__text.sc-stzh-menu-item:not(:empty){margin-left:var(--stzh-space-xsmall)}.stzh-menu-item__text.sc-stzh-menu-item{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stzh-menu-item--is-disabled.sc-stzh-menu-item{cursor:not-allowed}";var StzhMenuItem=function(){function e(e){var t=this;registerInstance(this,e);this.stzhFocus=createEvent(this,"stzhFocus",7);this.stzhBlur=createEvent(this,"stzhBlur",7);this.focusedByInput=false;this.onRootFocus=function(){if(!t.focusedByInput){t.setFocus()}t.focusedByInput=false};this.onFocus=function(e){t.focusedByInput=true;var n=new FocusEvent("focus",{view:window,bubbles:false,cancelable:false});t.element.dispatchEvent(n);t.stzhFocus.emit({component:"stzh-menu-item",originalEvent:e})};this.onBlur=function(e){var n=new FocusEvent("blur",{view:window,bubbles:false,cancelable:false});t.element.dispatchEvent(n);t.stzhBlur.emit({component:"stzh-menu-item",originalEvent:e})};this.badge="";this.badgeType="default";this.badgeEmpty=false;this.disabled=false;this.active=false;this.icon="";this.label="";this.href="";this.target="";this.a11yLabel=undefined;this.analyticsId=undefined}e.prototype.setFocus=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){this.menuItem.focus();return[2]}))}))};e.prototype.componentDidRender=function(){var e=this;requestAnimationFrame((function(){e.menuItem.setAttribute("s-object-id",e.analyticsId||e.text.innerText)}))};e.prototype.renderInner=function(e){var t=this;return h(Fragment,null,e&&h("div",{class:"stzh-menu-item__icon-wrapper"},this.icon?h("stzh-icon",{class:"stzh-menu-item__icon",name:this.icon}):h("slot",{name:"icon"}),(this.badge||this.badgeEmpty)&&h("stzh-badge",{class:"stzh-menu-item__badge",label:this.badge,type:this.badgeType})),h("div",{ref:function(e){return t.text=e},class:"stzh-menu-item__text"},this.label?this.label:h("slot",null)))};e.prototype.render=function(){var e=this;var t=hasSlot(this.element,"icon")||!!this.icon;var n={"stzh-menu-item":true,"stzh-menu-item--has-icon":t,"stzh-menu-item--has-badge":!!this.badge,"stzh-menu-item--is-disabled":this.disabled,"stzh-menu-item--is-active":this.active};return h(Host,{role:"menuitem",tabindex:this.disabled?null:"-1",onFocus:this.onRootFocus},this.href?h("a",{ref:function(t){return e.menuItem=t},href:this.disabled?null:this.href,target:this.target,class:n,"aria-label":this.a11yLabel,onFocus:this.onFocus,onBlur:this.onBlur},this.renderInner(t)):h("button",{ref:function(t){return e.menuItem=t},class:n,type:"button",disabled:this.disabled,"aria-label":this.a11yLabel,onFocus:this.onFocus,onBlur:this.onBlur},this.renderInner(t)))};Object.defineProperty(e.prototype,"element",{get:function(){return getElement(this)},enumerable:false,configurable:true});return e}();StzhMenuItem.style=stzhMenuItemCss;export{StzhMenu as stzh_menu,StzhMenuItem as stzh_menu_item};
1
+ var __awaiter=this&&this.__awaiter||function(e,t,n,s){function i(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,r){function o(e){try{h(s.next(e))}catch(e){r(e)}}function a(e){try{h(s["throw"](e))}catch(e){r(e)}}function h(e){e.done?n(e.value):i(e.value).then(o,a)}h((s=s.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var n={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},s,i,r,o;return o={next:a(0),throw:a(1),return:a(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(t){return h([e,t])}}function h(a){if(s)throw new TypeError("Generator is already executing.");while(o&&(o=0,a[0]&&(n=0)),n)try{if(s=1,i&&(r=a[0]&2?i["return"]:a[0]?i["throw"]||((r=i["return"])&&r.call(i),0):i.next)&&!(r=r.call(i,a[1])).done)return r;if(i=0,r)a=[a[0]&2,r.value];switch(a[0]){case 0:case 1:r=a;break;case 4:n.label++;return{value:a[1],done:false};case 5:n.label++;i=a[1];a=[0];continue;case 7:a=n.ops.pop();n.trys.pop();continue;default:if(!(r=n.trys,r=r.length>0&&r[r.length-1])&&(a[0]===6||a[0]===2)){n=0;continue}if(a[0]===3&&(!r||a[1]>r[0]&&a[1]<r[3])){n.label=a[1];break}if(a[0]===6&&n.label<r[1]){n.label=r[1];r=a;break}if(r&&n.label<r[2]){n.label=r[2];n.ops.push(a);break}if(r[2])n.ops.pop();n.trys.pop();continue}a=t.call(e,n)}catch(e){a=[6,e];i=0}finally{s=r=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}};import{r as registerInstance,h,a as Host,c as createEvent,F as Fragment,g as getElement}from"./index-67fd55c9.js";import{h as hasSlot}from"./utils-8f264f12.js";var stzhMenuCss=".sc-stzh-menu-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-menu-h{display:none}.sc-stzh-menu-h *.sc-stzh-menu,.sc-stzh-menu-h *.sc-stzh-menu::before,.sc-stzh-menu-h *.sc-stzh-menu::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-menu-h .sc-stzh-menu-s>stzh-hr{margin-top:var(--stzh-space-xsmall);margin-bottom:var(--stzh-space-xsmall)}.stzh-menu.sc-stzh-menu{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}";var StzhMenu=function(){function e(e){registerInstance(this,e)}e.prototype.render=function(){return h(Host,{role:"menu"},h("div",{class:"stzh-menu"},h("slot",null)))};return e}();StzhMenu.style=stzhMenuCss;var stzhMenuItemCss=".sc-stzh-menu-item-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-menu-item-h{display:none}.sc-stzh-menu-item-h *.sc-stzh-menu-item,.sc-stzh-menu-item-h *.sc-stzh-menu-item::before,.sc-stzh-menu-item-h *.sc-stzh-menu-item::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-menu-item-h{--height:var(--stzh-menu-item-height);--color:var(--stzh-color-grey70);--background-color:transparent;--icon-size:var(--stzh-icon-size-small);--hover-color:var(--stzh-color-grey70);--hover-background-color:var(--stzh-color-grey5)}[active].sc-stzh-menu-item-h:not([active=false]){--color:var(--stzh-color-primary, var(--stzh-color-zueriblue));--hover-color:var(--stzh-color-primary-hover, var(--stzh-color-zueribluedark));--hover-background-color:var(--stzh-color-primary8)}[disabled].sc-stzh-menu-item-h:not([disabled=false]){--color:var(--stzh-color-white);--background-color:var(--stzh-color-grey13);--hover-color:var(--stzh-color-white);--hover-background-color:var(--stzh-color-grey13)}.sc-stzh-menu-item-h .sc-stzh-menu-item-s>stzh-icon,.stzh-menu-item__icon.sc-stzh-menu-item{--size:var(--icon-size)}.stzh-menu-item.sc-stzh-menu-item{font-size:var(--stzh-font-micro-font-size);line-height:var(--stzh-font-micro-text-line-height);font-family:inherit;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:stretch;justify-content:stretch;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-text-decoration-line:none;text-decoration-line:none;border:none;padding:var(--stzh-space-xsmall) var(--stzh-space-medium);padding-left:var(--stzh-space-large);color:var(--color);background-color:var(--background-color);width:100%;height:var(--height);line-height:var(--height);-webkit-transition-duration:var(--stzh-base-transition-animation-speed);transition-duration:var(--stzh-base-transition-animation-speed);-webkit-transition-property:color, background-color, border-color;transition-property:color, background-color, border-color;cursor:pointer}.stzh-menu-item.sc-stzh-menu-item:hover{color:var(--hover-color);background-color:var(--hover-background-color)}.stzh-menu-item__icon-wrapper.sc-stzh-menu-item{position:relative;display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;width:auto;height:1em}.stzh-menu-item__badge.sc-stzh-menu-item{position:absolute;z-index:1;top:calc(var(--stzh-space-xsmall) * -1);right:calc(var(--stzh-space-xsmall) * -1)}.stzh-menu-item__icon-wrapper.sc-stzh-menu-item+.stzh-menu-item__text.sc-stzh-menu-item:not(:empty){margin-left:var(--stzh-space-xsmall)}.stzh-menu-item__text.sc-stzh-menu-item{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stzh-menu-item--is-disabled.sc-stzh-menu-item{cursor:not-allowed}";var StzhMenuItem=function(){function e(e){var t=this;registerInstance(this,e);this.stzhFocus=createEvent(this,"stzhFocus",7);this.stzhBlur=createEvent(this,"stzhBlur",7);this.focusedByInput=false;this.onRootFocus=function(){if(!t.focusedByInput){t.setFocus()}t.focusedByInput=false};this.onFocus=function(e){t.focusedByInput=true;var n=new FocusEvent("focus",{view:window,bubbles:false,cancelable:false});t.element.dispatchEvent(n);t.stzhFocus.emit({component:"stzh-menu-item",originalEvent:e})};this.onBlur=function(e){var n=new FocusEvent("blur",{view:window,bubbles:false,cancelable:false});t.element.dispatchEvent(n);t.stzhBlur.emit({component:"stzh-menu-item",originalEvent:e})};this.badge="";this.badgeType="default";this.badgeEmpty=false;this.disabled=false;this.active=false;this.icon="";this.label="";this.href="";this.target="";this.a11yLabel=undefined;this.analyticsId=undefined}e.prototype.setFocus=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){this.menuItem.focus();return[2]}))}))};e.prototype.componentDidRender=function(){var e=this;requestAnimationFrame((function(){e.menuItem.setAttribute("s-object-id",e.analyticsId||e.text.innerText)}))};e.prototype.renderInner=function(e){var t=this;return h(Fragment,null,e&&h("div",{class:"stzh-menu-item__icon-wrapper"},this.icon?h("stzh-icon",{class:"stzh-menu-item__icon",name:this.icon}):h("slot",{name:"icon"}),(this.badge||this.badgeEmpty)&&h("stzh-badge",{class:"stzh-menu-item__badge",label:this.badge,type:this.badgeType})),h("div",{ref:function(e){return t.text=e},class:"stzh-menu-item__text"},this.label?this.label:h("slot",null)))};e.prototype.render=function(){var e=this;var t=hasSlot(this.element,"icon")||!!this.icon;var n={"stzh-menu-item":true,"stzh-menu-item--has-icon":t,"stzh-menu-item--has-badge":!!this.badge,"stzh-menu-item--is-disabled":this.disabled,"stzh-menu-item--is-active":this.active};return h(Host,{role:"menuitem",tabindex:this.disabled?null:"-1",onFocus:this.onRootFocus},this.href?h("a",{ref:function(t){return e.menuItem=t},href:this.disabled?null:this.href,target:this.target,class:n,"aria-label":this.a11yLabel||null,onFocus:this.onFocus,onBlur:this.onBlur},this.renderInner(t)):h("button",{ref:function(t){return e.menuItem=t},class:n,type:"button",disabled:this.disabled,"aria-label":this.a11yLabel||null,onFocus:this.onFocus,onBlur:this.onBlur},this.renderInner(t)))};Object.defineProperty(e.prototype,"element",{get:function(){return getElement(this)},enumerable:false,configurable:true});return e}();StzhMenuItem.style=stzhMenuItemCss;export{StzhMenu as stzh_menu,StzhMenuItem as stzh_menu_item};
2
2
  //# sourceMappingURL=stzh-menu_2.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["stzhMenuCss","StzhMenu","prototype","render","h","Host","role","class","stzhMenuItemCss","StzhMenuItem","this","focusedByInput","onRootFocus","_this","setFocus","onFocus","event","focusEvent","FocusEvent","view","window","bubbles","cancelable","element","dispatchEvent","stzhFocus","emit","component","originalEvent","onBlur","blurEvent","stzhBlur","class_1","menuItem","focus","componentDidRender","requestAnimationFrame","setAttribute","analyticsId","text","innerText","renderInner","iconUsed","Fragment","icon","name","badge","badgeEmpty","label","type","badgeType","ref","el","hasSlot","classes","disabled","active","tabindex","href","target","a11yLabel"],"sources":["src/components/stzh-menu/stzh-menu.scss?tag=stzh-menu&encapsulation=scoped","src/components/stzh-menu/stzh-menu.tsx","src/components/stzh-menu-item/stzh-menu-item.scss?tag=stzh-menu-item&encapsulation=scoped","src/components/stzh-menu-item/stzh-menu-item.tsx"],"sourcesContent":[":host {\n ::slotted(stzh-hr) {\n margin-top: space('xsmall');\n margin-bottom: space('xsmall');\n }\n}\n\n.stzh-menu {\n display: flex;\n flex-direction: column;\n}\n","import {\n Component,\n Host,\n h,\n} from \"@stencil/core\";\n\n/**\n * @slot - Slot for `stzh-menu-item` elements\n */\n@Component({\n tag: \"stzh-menu\",\n styleUrl: \"stzh-menu.scss\",\n scoped: true\n})\nexport class StzhMenu {\n render() {\n return (\n <Host role=\"menu\">\n <div class=\"stzh-menu\">\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n",":host {\n --height: #{$menuItemHeight};\n --color: #{$colorGrey70};\n --background-color: transparent;\n --icon-size: #{iconSize('small')};\n\n --hover-color: #{$colorGrey70};\n --hover-background-color: #{$colorGrey5};\n\n &[active]:not([active=\"false\"]) {\n --color: #{$colorPrimary};\n --hover-color: #{$colorPrimaryHover};\n --hover-background-color: #{$colorPrimary8};\n }\n\n &[disabled]:not([disabled=\"false\"]) {\n --color: #{$colorWhite};\n --background-color: #{$colorGrey13};\n\n --hover-color: #{$colorWhite};\n --hover-background-color: #{$colorGrey13};\n }\n}\n\n:host ::slotted(stzh-icon),\n.stzh-menu-item__icon {\n --size: var(--icon-size);\n}\n\n.stzh-menu-item {\n @include fontSize('micro');\n font-family: inherit;\n display: flex;\n align-items: center;\n justify-content: stretch;\n appearance: none;\n text-decoration-line: none;\n border: none;\n padding: space('xsmall') space('medium');\n padding-left: space('large');\n color: var(--color);\n background-color: var(--background-color);\n width: 100%;\n height: var(--height);\n line-height: var(--height);\n transition-duration: $baseTransitionAnimationSpeed;\n transition-property: color, background-color, border-color;\n cursor: pointer;\n\n &:hover {\n color: var(--hover-color);\n background-color: var(--hover-background-color);\n }\n\n &__icon-wrapper {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n width: auto;\n height: 1em;\n }\n\n &__badge {\n position: absolute;\n z-index: 1;\n top: calc(#{space('xsmall')} * -1);\n right: calc(#{space('xsmall')} * -1);\n }\n\n &__icon-wrapper + &__text:not(:empty) {\n margin-left: space('xsmall');\n }\n\n &__text {\n @include truncate;\n }\n\n /* Disabled variant */\n\n &--is-disabled {\n cursor: not-allowed;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Method,\n Element,\n Fragment,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhMenuItemFocusEvent,\n StzhMenuItemBlurEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\n\n/**\n * @slot - Slot for any content\n * @slot icon - Slot for `stzh-icon` element\n */\n@Component({\n tag: \"stzh-menu-item\",\n styleUrl: \"stzh-menu-item.scss\",\n scoped: true\n})\nexport class StzhMenuItem {\n /** Badge (only displayed if `icon` property or icon slot is used) */\n @Prop() badge: string = \"\";\n\n /** Badge type */\n @Prop({ reflect: true }) badgeType: \"default\" | \"success\" | \"warning\" | \"error\" | \"info\" = \"default\";\n\n /** Whether badge should be displayed empty */\n @Prop({ reflect: true }) badgeEmpty: boolean = false;\n\n /** Whether the button is disabled */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Whether the button is active */\n @Prop({ reflect: true }) active: boolean = false;\n\n /** Icon (use instead of icon slot) */\n @Prop() icon: string = \"\";\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** `href` if the button should be used as link */\n @Prop() href: string = \"\";\n\n /** Target if the button is used as link (if `href` used) */\n @Prop() target: string = \"\";\n\n /** Accessible label for screen readers to replace visible text */\n @Prop({ attribute: \"a11y-label\" }) a11yLabel: string;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the link/button element.\n * Default value will be taken from `label` prop or default slot.\n */\n @Prop() analyticsId: string;\n\n @Element() element: HTMLStzhMenuItemElement;\n\n /** Focus menu item */\n @Method()\n async setFocus() {\n this.menuItem.focus();\n }\n\n /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhMenuItemFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhMenuItemBlurEvent>;\n\n private menuItem: HTMLButtonElement | HTMLAnchorElement;\n private text: HTMLDivElement;\n\n private focusedByInput: boolean = false;\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.setFocus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n const focusEvent = new FocusEvent(\"focus\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n this.stzhFocus.emit({\n component: \"stzh-menu-item\",\n originalEvent: event\n });\n }\n\n private onBlur = (event: FocusEvent) => {\n const blurEvent = new FocusEvent(\"blur\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(blurEvent);\n this.stzhBlur.emit({\n component: \"stzh-menu-item\",\n originalEvent: event\n });\n }\n\n componentDidRender() {\n requestAnimationFrame(() => {\n this.menuItem.setAttribute(\"s-object-id\", this.analyticsId || this.text.innerText);\n });\n }\n\n private renderInner(iconUsed: boolean): DocumentFragment {\n return (\n <Fragment>\n {iconUsed &&\n <div class=\"stzh-menu-item__icon-wrapper\">\n {this.icon ?\n <stzh-icon class=\"stzh-menu-item__icon\" name={this.icon}></stzh-icon>\n :\n <slot name=\"icon\"></slot>\n }\n {(this.badge || this.badgeEmpty) &&\n <stzh-badge class=\"stzh-menu-item__badge\" label={this.badge} type={this.badgeType}></stzh-badge>\n }\n </div>\n }\n <div\n ref={(el) => (this.text = el as HTMLDivElement)}\n class=\"stzh-menu-item__text\"\n >\n {this.label ? this.label : <slot></slot>}\n </div>\n </Fragment>\n );\n }\n\n render() {\n const iconUsed: boolean = hasSlot(this.element, \"icon\") || !!this.icon;\n const classes = {\n \"stzh-menu-item\": true,\n \"stzh-menu-item--has-icon\": iconUsed,\n \"stzh-menu-item--has-badge\": !!this.badge,\n \"stzh-menu-item--is-disabled\": this.disabled,\n \"stzh-menu-item--is-active\": this.active\n };\n\n return (\n <Host role=\"menuitem\" tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n {this.href ?\n <a\n ref={(el) => (this.menuItem = el as HTMLAnchorElement)}\n href={this.disabled ? null : this.href}\n target={this.target}\n class={classes}\n aria-label={this.a11yLabel}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </a>\n :\n <button\n ref={(el) => (this.menuItem = el as HTMLButtonElement)}\n class={classes}\n type=\"button\"\n disabled={this.disabled}\n aria-label={this.a11yLabel}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </button>\n }\n </Host>\n );\n }\n}\n"],"mappings":"8mDAAA,IAAMA,YAAc,+vB,ICcPC,SAAQ,W,uCACnBA,EAAAC,UAAAC,OAAA,WACE,OACEC,EAACC,KAAI,CAACC,KAAK,QACTF,EAAA,OAAKG,MAAM,aACTH,EAAA,c,WALW,G,2BCdrB,IAAMI,gBAAkB,kjG,IC4BXC,aAAY,W,8IAuDfC,KAAAC,eAA0B,MAE1BD,KAAAE,YAAc,WACpB,IAAKC,EAAKF,eAAgB,CACxBE,EAAKC,U,CAGPD,EAAKF,eAAiB,K,EAGhBD,KAAAK,QAAU,SAACC,GACjBH,EAAKF,eAAiB,KAEtB,IAAMM,EAAa,IAAIC,WAAW,QAAS,CACzCC,KAAMC,OACNC,QAAS,MACTC,WAAY,QAGdT,EAAKU,QAAQC,cAAcP,GAC3BJ,EAAKY,UAAUC,KAAK,CAClBC,UAAW,iBACXC,cAAeZ,G,EAIXN,KAAAmB,OAAS,SAACb,GAChB,IAAMc,EAAY,IAAIZ,WAAW,OAAQ,CACvCC,KAAMC,OACNC,QAAS,MACTC,WAAY,QAGdT,EAAKU,QAAQC,cAAcM,GAC3BjB,EAAKkB,SAASL,KAAK,CACjBC,UAAW,iBACXC,cAAeZ,G,aAzFK,G,eAGmE,U,gBAG5C,M,cAGF,M,YAGF,M,UAGpB,G,WAGC,G,UAGD,G,YAGE,G,oDAgBnBgB,EAAA9B,UAAAY,SAAN,W,qFACEJ,KAAKuB,SAASC,Q,iBAoDhBF,EAAA9B,UAAAiC,mBAAA,eAAAtB,EAAAH,KACE0B,uBAAsB,WACpBvB,EAAKoB,SAASI,aAAa,cAAexB,EAAKyB,aAAezB,EAAK0B,KAAKC,U,KAIpER,EAAA9B,UAAAuC,YAAA,SAAYC,GAAZ,IAAA7B,EAAAH,KACN,OACEN,EAACuC,SAAQ,KACND,GACCtC,EAAA,OAAKG,MAAM,gCACRG,KAAKkC,KACJxC,EAAA,aAAWG,MAAM,uBAAuBsC,KAAMnC,KAAKkC,OAEnDxC,EAAA,QAAMyC,KAAK,UAEXnC,KAAKoC,OAASpC,KAAKqC,aACnB3C,EAAA,cAAYG,MAAM,wBAAwByC,MAAOtC,KAAKoC,MAAOG,KAAMvC,KAAKwC,aAI9E9C,EAAA,OACE+C,IAAK,SAACC,GAAE,OAAMvC,EAAK0B,KAAOa,CAAlB,EACR7C,MAAM,wBAELG,KAAKsC,MAAQtC,KAAKsC,MAAQ5C,EAAA,c,EAMnC4B,EAAA9B,UAAAC,OAAA,eAAAU,EAAAH,KACE,IAAMgC,EAAoBW,QAAQ3C,KAAKa,QAAS,WAAab,KAAKkC,KAClE,IAAMU,EAAU,CACd,iBAAkB,KAClB,2BAA4BZ,EAC5B,8BAA+BhC,KAAKoC,MACpC,8BAA+BpC,KAAK6C,SACpC,4BAA6B7C,KAAK8C,QAGpC,OACEpD,EAACC,KAAI,CAACC,KAAK,WAAWmD,SAAU/C,KAAK6C,SAAW,KAAO,KAAMxC,QAASL,KAAKE,aACxEF,KAAKgD,KACJtD,EAAA,KACE+C,IAAK,SAACC,GAAE,OAAMvC,EAAKoB,SAAWmB,CAAtB,EACRM,KAAMhD,KAAK6C,SAAW,KAAO7C,KAAKgD,KAClCC,OAAQjD,KAAKiD,OACbpD,MAAO+C,EAAO,aACF5C,KAAKkD,UACjB7C,QAASL,KAAKK,QACdc,OAAQnB,KAAKmB,QAEZnB,KAAK+B,YAAYC,IAGpBtC,EAAA,UACE+C,IAAK,SAACC,GAAE,OAAMvC,EAAKoB,SAAWmB,CAAtB,EACR7C,MAAO+C,EACPL,KAAK,SACLM,SAAU7C,KAAK6C,SAAQ,aACX7C,KAAKkD,UACjB7C,QAASL,KAAKK,QACdc,OAAQnB,KAAKmB,QAEZnB,KAAK+B,YAAYC,I,qIAhKL,G"}
1
+ {"version":3,"names":["stzhMenuCss","StzhMenu","prototype","render","h","Host","role","class","stzhMenuItemCss","StzhMenuItem","this","focusedByInput","onRootFocus","_this","setFocus","onFocus","event","focusEvent","FocusEvent","view","window","bubbles","cancelable","element","dispatchEvent","stzhFocus","emit","component","originalEvent","onBlur","blurEvent","stzhBlur","class_1","menuItem","focus","componentDidRender","requestAnimationFrame","setAttribute","analyticsId","text","innerText","renderInner","iconUsed","Fragment","icon","name","badge","badgeEmpty","label","type","badgeType","ref","el","hasSlot","classes","disabled","active","tabindex","href","target","a11yLabel"],"sources":["src/components/stzh-menu/stzh-menu.scss?tag=stzh-menu&encapsulation=scoped","src/components/stzh-menu/stzh-menu.tsx","src/components/stzh-menu-item/stzh-menu-item.scss?tag=stzh-menu-item&encapsulation=scoped","src/components/stzh-menu-item/stzh-menu-item.tsx"],"sourcesContent":[":host {\n ::slotted(stzh-hr) {\n margin-top: space('xsmall');\n margin-bottom: space('xsmall');\n }\n}\n\n.stzh-menu {\n display: flex;\n flex-direction: column;\n}\n","import {\n Component,\n Host,\n h,\n} from \"@stencil/core\";\n\n/**\n * @slot - Slot for `stzh-menu-item` elements\n */\n@Component({\n tag: \"stzh-menu\",\n styleUrl: \"stzh-menu.scss\",\n scoped: true\n})\nexport class StzhMenu {\n render() {\n return (\n <Host role=\"menu\">\n <div class=\"stzh-menu\">\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n",":host {\n --height: #{$menuItemHeight};\n --color: #{$colorGrey70};\n --background-color: transparent;\n --icon-size: #{iconSize('small')};\n\n --hover-color: #{$colorGrey70};\n --hover-background-color: #{$colorGrey5};\n\n &[active]:not([active=\"false\"]) {\n --color: #{$colorPrimary};\n --hover-color: #{$colorPrimaryHover};\n --hover-background-color: #{$colorPrimary8};\n }\n\n &[disabled]:not([disabled=\"false\"]) {\n --color: #{$colorWhite};\n --background-color: #{$colorGrey13};\n\n --hover-color: #{$colorWhite};\n --hover-background-color: #{$colorGrey13};\n }\n}\n\n:host ::slotted(stzh-icon),\n.stzh-menu-item__icon {\n --size: var(--icon-size);\n}\n\n.stzh-menu-item {\n @include fontSize('micro');\n font-family: inherit;\n display: flex;\n align-items: center;\n justify-content: stretch;\n appearance: none;\n text-decoration-line: none;\n border: none;\n padding: space('xsmall') space('medium');\n padding-left: space('large');\n color: var(--color);\n background-color: var(--background-color);\n width: 100%;\n height: var(--height);\n line-height: var(--height);\n transition-duration: $baseTransitionAnimationSpeed;\n transition-property: color, background-color, border-color;\n cursor: pointer;\n\n &:hover {\n color: var(--hover-color);\n background-color: var(--hover-background-color);\n }\n\n &__icon-wrapper {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n width: auto;\n height: 1em;\n }\n\n &__badge {\n position: absolute;\n z-index: 1;\n top: calc(#{space('xsmall')} * -1);\n right: calc(#{space('xsmall')} * -1);\n }\n\n &__icon-wrapper + &__text:not(:empty) {\n margin-left: space('xsmall');\n }\n\n &__text {\n @include truncate;\n }\n\n /* Disabled variant */\n\n &--is-disabled {\n cursor: not-allowed;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Method,\n Element,\n Fragment,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhMenuItemFocusEvent,\n StzhMenuItemBlurEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\n\n/**\n * @slot - Slot for any content\n * @slot icon - Slot for `stzh-icon` element\n */\n@Component({\n tag: \"stzh-menu-item\",\n styleUrl: \"stzh-menu-item.scss\",\n scoped: true\n})\nexport class StzhMenuItem {\n /** Badge (only displayed if `icon` property or icon slot is used) */\n @Prop() badge: string = \"\";\n\n /** Badge type */\n @Prop({ reflect: true }) badgeType: \"default\" | \"success\" | \"warning\" | \"error\" | \"info\" = \"default\";\n\n /** Whether badge should be displayed empty */\n @Prop({ reflect: true }) badgeEmpty: boolean = false;\n\n /** Whether the button is disabled */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Whether the button is active */\n @Prop({ reflect: true }) active: boolean = false;\n\n /** Icon (use instead of icon slot) */\n @Prop() icon: string = \"\";\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** `href` if the button should be used as link */\n @Prop() href: string = \"\";\n\n /** Target if the button is used as link (if `href` used) */\n @Prop() target: string = \"\";\n\n /** Accessible label for screen readers to replace visible text */\n @Prop({ attribute: \"a11y-label\" }) a11yLabel: string;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the link/button element.\n * Default value will be taken from `label` prop or default slot.\n */\n @Prop() analyticsId: string;\n\n @Element() element: HTMLStzhMenuItemElement;\n\n /** Focus menu item */\n @Method()\n async setFocus() {\n this.menuItem.focus();\n }\n\n /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhMenuItemFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhMenuItemBlurEvent>;\n\n private menuItem: HTMLButtonElement | HTMLAnchorElement;\n private text: HTMLDivElement;\n\n private focusedByInput: boolean = false;\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.setFocus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n const focusEvent = new FocusEvent(\"focus\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n this.stzhFocus.emit({\n component: \"stzh-menu-item\",\n originalEvent: event\n });\n }\n\n private onBlur = (event: FocusEvent) => {\n const blurEvent = new FocusEvent(\"blur\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(blurEvent);\n this.stzhBlur.emit({\n component: \"stzh-menu-item\",\n originalEvent: event\n });\n }\n\n componentDidRender() {\n requestAnimationFrame(() => {\n this.menuItem.setAttribute(\"s-object-id\", this.analyticsId || this.text.innerText);\n });\n }\n\n private renderInner(iconUsed: boolean): DocumentFragment {\n return (\n <Fragment>\n {iconUsed &&\n <div class=\"stzh-menu-item__icon-wrapper\">\n {this.icon ?\n <stzh-icon class=\"stzh-menu-item__icon\" name={this.icon}></stzh-icon>\n :\n <slot name=\"icon\"></slot>\n }\n {(this.badge || this.badgeEmpty) &&\n <stzh-badge class=\"stzh-menu-item__badge\" label={this.badge} type={this.badgeType}></stzh-badge>\n }\n </div>\n }\n <div\n ref={(el) => (this.text = el as HTMLDivElement)}\n class=\"stzh-menu-item__text\"\n >\n {this.label ? this.label : <slot></slot>}\n </div>\n </Fragment>\n );\n }\n\n render() {\n const iconUsed: boolean = hasSlot(this.element, \"icon\") || !!this.icon;\n const classes = {\n \"stzh-menu-item\": true,\n \"stzh-menu-item--has-icon\": iconUsed,\n \"stzh-menu-item--has-badge\": !!this.badge,\n \"stzh-menu-item--is-disabled\": this.disabled,\n \"stzh-menu-item--is-active\": this.active\n };\n\n return (\n <Host role=\"menuitem\" tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n {this.href ?\n <a\n ref={(el) => (this.menuItem = el as HTMLAnchorElement)}\n href={this.disabled ? null : this.href}\n target={this.target}\n class={classes}\n aria-label={this.a11yLabel || null}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </a>\n :\n <button\n ref={(el) => (this.menuItem = el as HTMLButtonElement)}\n class={classes}\n type=\"button\"\n disabled={this.disabled}\n aria-label={this.a11yLabel || null}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </button>\n }\n </Host>\n );\n }\n}\n"],"mappings":"8mDAAA,IAAMA,YAAc,+vB,ICcPC,SAAQ,W,uCACnBA,EAAAC,UAAAC,OAAA,WACE,OACEC,EAACC,KAAI,CAACC,KAAK,QACTF,EAAA,OAAKG,MAAM,aACTH,EAAA,c,WALW,G,2BCdrB,IAAMI,gBAAkB,kjG,IC4BXC,aAAY,W,8IAuDfC,KAAAC,eAA0B,MAE1BD,KAAAE,YAAc,WACpB,IAAKC,EAAKF,eAAgB,CACxBE,EAAKC,U,CAGPD,EAAKF,eAAiB,K,EAGhBD,KAAAK,QAAU,SAACC,GACjBH,EAAKF,eAAiB,KAEtB,IAAMM,EAAa,IAAIC,WAAW,QAAS,CACzCC,KAAMC,OACNC,QAAS,MACTC,WAAY,QAGdT,EAAKU,QAAQC,cAAcP,GAC3BJ,EAAKY,UAAUC,KAAK,CAClBC,UAAW,iBACXC,cAAeZ,G,EAIXN,KAAAmB,OAAS,SAACb,GAChB,IAAMc,EAAY,IAAIZ,WAAW,OAAQ,CACvCC,KAAMC,OACNC,QAAS,MACTC,WAAY,QAGdT,EAAKU,QAAQC,cAAcM,GAC3BjB,EAAKkB,SAASL,KAAK,CACjBC,UAAW,iBACXC,cAAeZ,G,aAzFK,G,eAGmE,U,gBAG5C,M,cAGF,M,YAGF,M,UAGpB,G,WAGC,G,UAGD,G,YAGE,G,oDAgBnBgB,EAAA9B,UAAAY,SAAN,W,qFACEJ,KAAKuB,SAASC,Q,iBAoDhBF,EAAA9B,UAAAiC,mBAAA,eAAAtB,EAAAH,KACE0B,uBAAsB,WACpBvB,EAAKoB,SAASI,aAAa,cAAexB,EAAKyB,aAAezB,EAAK0B,KAAKC,U,KAIpER,EAAA9B,UAAAuC,YAAA,SAAYC,GAAZ,IAAA7B,EAAAH,KACN,OACEN,EAACuC,SAAQ,KACND,GACCtC,EAAA,OAAKG,MAAM,gCACRG,KAAKkC,KACJxC,EAAA,aAAWG,MAAM,uBAAuBsC,KAAMnC,KAAKkC,OAEnDxC,EAAA,QAAMyC,KAAK,UAEXnC,KAAKoC,OAASpC,KAAKqC,aACnB3C,EAAA,cAAYG,MAAM,wBAAwByC,MAAOtC,KAAKoC,MAAOG,KAAMvC,KAAKwC,aAI9E9C,EAAA,OACE+C,IAAK,SAACC,GAAE,OAAMvC,EAAK0B,KAAOa,CAAlB,EACR7C,MAAM,wBAELG,KAAKsC,MAAQtC,KAAKsC,MAAQ5C,EAAA,c,EAMnC4B,EAAA9B,UAAAC,OAAA,eAAAU,EAAAH,KACE,IAAMgC,EAAoBW,QAAQ3C,KAAKa,QAAS,WAAab,KAAKkC,KAClE,IAAMU,EAAU,CACd,iBAAkB,KAClB,2BAA4BZ,EAC5B,8BAA+BhC,KAAKoC,MACpC,8BAA+BpC,KAAK6C,SACpC,4BAA6B7C,KAAK8C,QAGpC,OACEpD,EAACC,KAAI,CAACC,KAAK,WAAWmD,SAAU/C,KAAK6C,SAAW,KAAO,KAAMxC,QAASL,KAAKE,aACxEF,KAAKgD,KACJtD,EAAA,KACE+C,IAAK,SAACC,GAAE,OAAMvC,EAAKoB,SAAWmB,CAAtB,EACRM,KAAMhD,KAAK6C,SAAW,KAAO7C,KAAKgD,KAClCC,OAAQjD,KAAKiD,OACbpD,MAAO+C,EAAO,aACF5C,KAAKkD,WAAa,KAC9B7C,QAASL,KAAKK,QACdc,OAAQnB,KAAKmB,QAEZnB,KAAK+B,YAAYC,IAGpBtC,EAAA,UACE+C,IAAK,SAACC,GAAE,OAAMvC,EAAKoB,SAAWmB,CAAtB,EACR7C,MAAO+C,EACPL,KAAK,SACLM,SAAU7C,KAAK6C,SAAQ,aACX7C,KAAKkD,WAAa,KAC9B7C,QAASL,KAAKK,QACdc,OAAQnB,KAAKmB,QAEZnB,KAAK+B,YAAYC,I,qIAhKL,G"}
@@ -1,2 +1,2 @@
1
- var __awaiter=this&&this.__awaiter||function(t,e,n,o){function i(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,r){function s(t){try{l(o.next(t))}catch(t){r(t)}}function a(t){try{l(o["throw"](t))}catch(t){r(t)}}function l(t){t.done?n(t.value):i(t.value).then(s,a)}l((o=o.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var n={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},o,i,r,s;return s={next:a(0),throw:a(1),return:a(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function a(t){return function(e){return l([t,e])}}function l(a){if(o)throw new TypeError("Generator is already executing.");while(s&&(s=0,a[0]&&(n=0)),n)try{if(o=1,i&&(r=a[0]&2?i["return"]:a[0]?i["throw"]||((r=i["return"])&&r.call(i),0):i.next)&&!(r=r.call(i,a[1])).done)return r;if(i=0,r)a=[a[0]&2,r.value];switch(a[0]){case 0:case 1:r=a;break;case 4:n.label++;return{value:a[1],done:false};case 5:n.label++;i=a[1];a=[0];continue;case 7:a=n.ops.pop();n.trys.pop();continue;default:if(!(r=n.trys,r=r.length>0&&r[r.length-1])&&(a[0]===6||a[0]===2)){n=0;continue}if(a[0]===3&&(!r||a[1]>r[0]&&a[1]<r[3])){n.label=a[1];break}if(a[0]===6&&n.label<r[1]){n.label=r[1];r=a;break}if(r&&n.label<r[2]){n.label=r[2];n.ops.push(a);break}if(r[2])n.ops.pop();n.trys.pop();continue}a=e.call(t,n)}catch(t){a=[6,t];i=0}finally{o=r=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}};import{r as registerInstance,c as createEvent,h,a as Host,g as getElement}from"./index-67fd55c9.js";import{c as createBaseFocusTrapOptions}from"./overlay-utils-33021971.js";import{c as createFocusTrap}from"./focus-trap.esm-601d164c.js";var stzhOverlayCss=".sc-stzh-overlay-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-overlay-h{display:none}.sc-stzh-overlay-h *.sc-stzh-overlay,.sc-stzh-overlay-h *.sc-stzh-overlay::before,.sc-stzh-overlay-h *.sc-stzh-overlay::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-overlay-h{--backdrop-opacity:0.8}.stzh-overlay.sc-stzh-overlay{display:none;z-index:var(--stzh-z-index-overlay);position:fixed;top:0;left:0;width:100%;height:100%;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:stretch;justify-content:stretch;-ms-flex-align:stretch;align-items:stretch}.stzh-overlay__backdrop.sc-stzh-overlay{z-index:1;background-color:var(--stzh-color-white);opacity:var(--backdrop-opacity);position:absolute;top:0;left:0;width:100%;height:100%}.stzh-overlay__content.sc-stzh-overlay{z-index:2;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;position:relative;-ms-flex-positive:1;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:-ms-flexbox;display:flex}";var CLASS_BODY_OPEN="stzh-overlay-open";var StzhOverlay=function(){function t(t){registerInstance(this,t);this.stzhOpen=createEvent(this,"stzhOpen",7);this.stzhClose=createEvent(this,"stzhClose",7);this.open=false;this.stay=true;this.a11yLabel=""}t.prototype.show=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.open=true;this.stzhOpen.emit({component:"stzh-overlay"});return[2]}))}))};t.prototype.hide=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.open=false;this.stzhClose.emit({component:"stzh-overlay"});return[2]}))}))};t.prototype.getSiblings=function(){var t=this;if(!this.parentElement){return[]}return Array.from(this.parentElement.children).filter((function(e){return e!==t.element}))};t.prototype.disableSiblings=function(){this.getSiblings().forEach((function(t){t.setAttribute("aria-hidden","true")}))};t.prototype.enableSiblings=function(){this.getSiblings().forEach((function(t){t.removeAttribute("aria-hidden")}))};t.prototype.dialogShown=function(){document.body.classList.add(CLASS_BODY_OPEN);this.disableSiblings();if(this.trap){this.trap.activate()}};t.prototype.dialogHidden=function(){document.body.classList.remove(CLASS_BODY_OPEN);this.enableSiblings();if(this.trap){this.trap.deactivate()}};t.prototype.connectedCallback=function(){if(!this.stay&&this.element.parentElement!==document.body){document.body.appendChild(this.element)}this.parentElement=this.element.parentElement};t.prototype.componentDidRender=function(){this.open?this.dialogShown():this.dialogHidden()};t.prototype.componentDidUpdate=function(){this.trap.updateContainerElements(this.element)};t.prototype.componentDidLoad=function(){this.trap=createFocusTrap(this.element,Object.assign({fallbackFocus:this.dialogElement},createBaseFocusTrapOptions()));if(this.open){this.dialogShown()}};t.prototype.disconnectedCallback=function(){this.dialogHidden()};t.prototype.render=function(){var t=this;var e={"stzh-overlay":true,"stzh-overlay--is-open":this.open};return h(Host,null,h("div",{class:e},h("div",{class:"stzh-overlay__backdrop"}),h("div",{class:"stzh-overlay__content"},h("div",{class:"stzh-overlay__content-inner",ref:function(e){return t.dialogElement=e},tabindex:"-1",role:"dialog","aria-label":this.a11yLabel,"aria-hidden":this.open?"false":"true"},h("slot",null)))))};Object.defineProperty(t.prototype,"element",{get:function(){return getElement(this)},enumerable:false,configurable:true});return t}();StzhOverlay.style=stzhOverlayCss;export{StzhOverlay as stzh_overlay};
1
+ var __awaiter=this&&this.__awaiter||function(t,e,n,o){function i(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,r){function s(t){try{l(o.next(t))}catch(t){r(t)}}function a(t){try{l(o["throw"](t))}catch(t){r(t)}}function l(t){t.done?n(t.value):i(t.value).then(s,a)}l((o=o.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var n={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},o,i,r,s;return s={next:a(0),throw:a(1),return:a(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function a(t){return function(e){return l([t,e])}}function l(a){if(o)throw new TypeError("Generator is already executing.");while(s&&(s=0,a[0]&&(n=0)),n)try{if(o=1,i&&(r=a[0]&2?i["return"]:a[0]?i["throw"]||((r=i["return"])&&r.call(i),0):i.next)&&!(r=r.call(i,a[1])).done)return r;if(i=0,r)a=[a[0]&2,r.value];switch(a[0]){case 0:case 1:r=a;break;case 4:n.label++;return{value:a[1],done:false};case 5:n.label++;i=a[1];a=[0];continue;case 7:a=n.ops.pop();n.trys.pop();continue;default:if(!(r=n.trys,r=r.length>0&&r[r.length-1])&&(a[0]===6||a[0]===2)){n=0;continue}if(a[0]===3&&(!r||a[1]>r[0]&&a[1]<r[3])){n.label=a[1];break}if(a[0]===6&&n.label<r[1]){n.label=r[1];r=a;break}if(r&&n.label<r[2]){n.label=r[2];n.ops.push(a);break}if(r[2])n.ops.pop();n.trys.pop();continue}a=e.call(t,n)}catch(t){a=[6,t];i=0}finally{o=r=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}};import{r as registerInstance,c as createEvent,h,a as Host,g as getElement}from"./index-67fd55c9.js";import{c as createBaseFocusTrapOptions}from"./overlay-utils-33021971.js";import{c as createFocusTrap}from"./focus-trap.esm-601d164c.js";var stzhOverlayCss=".sc-stzh-overlay-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-overlay-h{display:none}.sc-stzh-overlay-h *.sc-stzh-overlay,.sc-stzh-overlay-h *.sc-stzh-overlay::before,.sc-stzh-overlay-h *.sc-stzh-overlay::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-overlay-h{--backdrop-opacity:0.8}.stzh-overlay.sc-stzh-overlay{display:none;z-index:var(--stzh-z-index-overlay);position:fixed;top:0;left:0;width:100%;height:100%;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:stretch;justify-content:stretch;-ms-flex-align:stretch;align-items:stretch}.stzh-overlay__backdrop.sc-stzh-overlay{z-index:1;background-color:var(--stzh-color-white);opacity:var(--backdrop-opacity);position:absolute;top:0;left:0;width:100%;height:100%}.stzh-overlay__content.sc-stzh-overlay{z-index:2;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;position:relative;-ms-flex-positive:1;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:-ms-flexbox;display:flex}";var CLASS_BODY_OPEN="stzh-overlay-open";var StzhOverlay=function(){function t(t){registerInstance(this,t);this.stzhOpen=createEvent(this,"stzhOpen",7);this.stzhClose=createEvent(this,"stzhClose",7);this.open=false;this.stay=true;this.a11yLabel=""}t.prototype.show=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.open=true;this.stzhOpen.emit({component:"stzh-overlay"});return[2]}))}))};t.prototype.hide=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.open=false;this.stzhClose.emit({component:"stzh-overlay"});return[2]}))}))};t.prototype.getSiblings=function(){var t=this;if(!this.parentElement){return[]}return Array.from(this.parentElement.children).filter((function(e){return e!==t.element}))};t.prototype.disableSiblings=function(){this.getSiblings().forEach((function(t){t.setAttribute("aria-hidden","true")}))};t.prototype.enableSiblings=function(){this.getSiblings().forEach((function(t){t.removeAttribute("aria-hidden")}))};t.prototype.dialogShown=function(){document.body.classList.add(CLASS_BODY_OPEN);this.disableSiblings();if(this.trap){this.trap.activate()}};t.prototype.dialogHidden=function(){document.body.classList.remove(CLASS_BODY_OPEN);this.enableSiblings();if(this.trap){this.trap.deactivate()}};t.prototype.connectedCallback=function(){if(!this.stay&&this.element.parentElement!==document.body){document.body.appendChild(this.element)}this.parentElement=this.element.parentElement};t.prototype.componentDidRender=function(){this.open?this.dialogShown():this.dialogHidden()};t.prototype.componentDidUpdate=function(){this.trap.updateContainerElements(this.element)};t.prototype.componentDidLoad=function(){this.trap=createFocusTrap(this.element,Object.assign({fallbackFocus:this.dialogElement},createBaseFocusTrapOptions()));if(this.open){this.dialogShown()}};t.prototype.disconnectedCallback=function(){this.dialogHidden()};t.prototype.render=function(){var t=this;var e={"stzh-overlay":true,"stzh-overlay--is-open":this.open};return h(Host,null,h("div",{class:e},h("div",{class:"stzh-overlay__backdrop"}),h("div",{class:"stzh-overlay__content"},h("div",{class:"stzh-overlay__content-inner",ref:function(e){return t.dialogElement=e},tabindex:"-1",role:"dialog","aria-label":this.a11yLabel||null,"aria-hidden":this.open?"false":"true"},h("slot",null)))))};Object.defineProperty(t.prototype,"element",{get:function(){return getElement(this)},enumerable:false,configurable:true});return t}();StzhOverlay.style=stzhOverlayCss;export{StzhOverlay as stzh_overlay};
2
2
  //# sourceMappingURL=stzh-overlay.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["stzhOverlayCss","CLASS_BODY_OPEN","StzhOverlay","class_1","prototype","show","this","open","stzhOpen","emit","component","hide","stzhClose","getSiblings","_this","parentElement","Array","from","children","filter","child","element","disableSiblings","forEach","sibling","setAttribute","enableSiblings","removeAttribute","dialogShown","document","body","classList","add","trap","activate","dialogHidden","remove","deactivate","connectedCallback","stay","appendChild","componentDidRender","componentDidUpdate","updateContainerElements","componentDidLoad","createFocusTrap","Object","assign","fallbackFocus","dialogElement","createBaseFocusTrapOptions","disconnectedCallback","render","classes","h","Host","class","ref","el","tabindex","role","a11yLabel"],"sources":["src/components/stzh-overlay/stzh-overlay.scss?tag=stzh-overlay&encapsulation=scoped","src/components/stzh-overlay/stzh-overlay.tsx"],"sourcesContent":[":host {\n --backdrop-opacity: 0.8;\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: $colorWhite;\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}\n aria-hidden={this.open ? \"false\" : \"true\"}\n >\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"0rDAAA,IAAMA,eAAiB,i7CCoBvB,IAAMC,gBAAkB,oB,IAUXC,YAAW,W,6IAEmB,M,UAGjB,K,eAG+B,E,CAWjDC,EAAAC,UAAAC,KAAN,W,qFACEC,KAAKC,KAAO,KACZD,KAAKE,SAASC,KAAK,CACjBC,UAAW,iB,iBAKTP,EAAAC,UAAAO,KAAN,W,qFACEL,KAAKC,KAAO,MACZD,KAAKM,UAAUH,KAAK,CAClBC,UAAW,iB,iBAQPP,EAAAC,UAAAS,YAAA,eAAAC,EAAAR,KACN,IAAKA,KAAKS,cAAe,CACvB,MAAO,E,CAGT,OAAOC,MAAMC,KAAKX,KAAKS,cAAcG,UAAUC,QAC7C,SAACC,GAAU,OAAAA,IAAUN,EAAKO,OAAf,G,EAIPlB,EAAAC,UAAAkB,gBAAA,WACNhB,KAAKO,cAAcU,SAAQ,SAACC,GAC1BA,EAAQC,aAAa,cAAe,O,KAIhCtB,EAAAC,UAAAsB,eAAA,WACNpB,KAAKO,cAAcU,SAAQ,SAACC,GAC1BA,EAAQG,gBAAgB,c,KAIpBxB,EAAAC,UAAAwB,YAAA,WACNC,SAASC,KAAKC,UAAUC,IAAI/B,iBAC5BK,KAAKgB,kBAEL,GAAIhB,KAAK2B,KAAM,CACb3B,KAAK2B,KAAKC,U,GAIN/B,EAAAC,UAAA+B,aAAA,WACNN,SAASC,KAAKC,UAAUK,OAAOnC,iBAC/BK,KAAKoB,iBAEL,GAAIpB,KAAK2B,KAAM,CACb3B,KAAK2B,KAAKI,Y,GAIdlC,EAAAC,UAAAkC,kBAAA,WACE,IAAKhC,KAAKiC,MAAQjC,KAAKe,QAAQN,gBAAkBc,SAASC,KAAM,CAC9DD,SAASC,KAAKU,YAAYlC,KAAKe,Q,CAGjCf,KAAKS,cAAgBT,KAAKe,QAAQN,a,EAGpCZ,EAAAC,UAAAqC,mBAAA,WACEnC,KAAKC,KAAOD,KAAKsB,cAAgBtB,KAAK6B,c,EAGxChC,EAAAC,UAAAsC,mBAAA,WACEpC,KAAK2B,KAAKU,wBAAwBrC,KAAKe,Q,EAGzClB,EAAAC,UAAAwC,iBAAA,WACEtC,KAAK2B,KAAOY,gBAAgBvC,KAAKe,QAAOyB,OAAAC,OAAA,CACtCC,cAAe1C,KAAK2C,eACjBC,+BAGL,GAAI5C,KAAKC,KAAM,CACbD,KAAKsB,a,GAITzB,EAAAC,UAAA+C,qBAAA,WACE7C,KAAK6B,c,EAGPhC,EAAAC,UAAAgD,OAAA,eAAAtC,EAAAR,KACE,IAAM+C,EAAU,CACd,eAAgB,KAChB,wBAAyB/C,KAAKC,MAGhC,OACE+C,EAACC,KAAI,KACHD,EAAA,OAAKE,MAAOH,GACVC,EAAA,OAAKE,MAAM,2BACXF,EAAA,OAAKE,MAAM,yBACTF,EAAA,OACEE,MAAM,8BACNC,IAAK,SAACC,GAAE,OAAM5C,EAAKmC,cAAgBS,CAA3B,EACRC,SAAS,KACTC,KAAK,SAAQ,aACDtD,KAAKuD,UAAS,cACbvD,KAAKC,KAAO,QAAU,QAEnC+C,EAAA,gB,qIAhIU,G"}
1
+ {"version":3,"names":["stzhOverlayCss","CLASS_BODY_OPEN","StzhOverlay","class_1","prototype","show","this","open","stzhOpen","emit","component","hide","stzhClose","getSiblings","_this","parentElement","Array","from","children","filter","child","element","disableSiblings","forEach","sibling","setAttribute","enableSiblings","removeAttribute","dialogShown","document","body","classList","add","trap","activate","dialogHidden","remove","deactivate","connectedCallback","stay","appendChild","componentDidRender","componentDidUpdate","updateContainerElements","componentDidLoad","createFocusTrap","Object","assign","fallbackFocus","dialogElement","createBaseFocusTrapOptions","disconnectedCallback","render","classes","h","Host","class","ref","el","tabindex","role","a11yLabel"],"sources":["src/components/stzh-overlay/stzh-overlay.scss?tag=stzh-overlay&encapsulation=scoped","src/components/stzh-overlay/stzh-overlay.tsx"],"sourcesContent":[":host {\n --backdrop-opacity: 0.8;\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: $colorWhite;\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"],"mappings":"0rDAAA,IAAMA,eAAiB,i7CCoBvB,IAAMC,gBAAkB,oB,IAUXC,YAAW,W,6IAEmB,M,UAGjB,K,eAG+B,E,CAWjDC,EAAAC,UAAAC,KAAN,W,qFACEC,KAAKC,KAAO,KACZD,KAAKE,SAASC,KAAK,CACjBC,UAAW,iB,iBAKTP,EAAAC,UAAAO,KAAN,W,qFACEL,KAAKC,KAAO,MACZD,KAAKM,UAAUH,KAAK,CAClBC,UAAW,iB,iBAQPP,EAAAC,UAAAS,YAAA,eAAAC,EAAAR,KACN,IAAKA,KAAKS,cAAe,CACvB,MAAO,E,CAGT,OAAOC,MAAMC,KAAKX,KAAKS,cAAcG,UAAUC,QAC7C,SAACC,GAAU,OAAAA,IAAUN,EAAKO,OAAf,G,EAIPlB,EAAAC,UAAAkB,gBAAA,WACNhB,KAAKO,cAAcU,SAAQ,SAACC,GAC1BA,EAAQC,aAAa,cAAe,O,KAIhCtB,EAAAC,UAAAsB,eAAA,WACNpB,KAAKO,cAAcU,SAAQ,SAACC,GAC1BA,EAAQG,gBAAgB,c,KAIpBxB,EAAAC,UAAAwB,YAAA,WACNC,SAASC,KAAKC,UAAUC,IAAI/B,iBAC5BK,KAAKgB,kBAEL,GAAIhB,KAAK2B,KAAM,CACb3B,KAAK2B,KAAKC,U,GAIN/B,EAAAC,UAAA+B,aAAA,WACNN,SAASC,KAAKC,UAAUK,OAAOnC,iBAC/BK,KAAKoB,iBAEL,GAAIpB,KAAK2B,KAAM,CACb3B,KAAK2B,KAAKI,Y,GAIdlC,EAAAC,UAAAkC,kBAAA,WACE,IAAKhC,KAAKiC,MAAQjC,KAAKe,QAAQN,gBAAkBc,SAASC,KAAM,CAC9DD,SAASC,KAAKU,YAAYlC,KAAKe,Q,CAGjCf,KAAKS,cAAgBT,KAAKe,QAAQN,a,EAGpCZ,EAAAC,UAAAqC,mBAAA,WACEnC,KAAKC,KAAOD,KAAKsB,cAAgBtB,KAAK6B,c,EAGxChC,EAAAC,UAAAsC,mBAAA,WACEpC,KAAK2B,KAAKU,wBAAwBrC,KAAKe,Q,EAGzClB,EAAAC,UAAAwC,iBAAA,WACEtC,KAAK2B,KAAOY,gBAAgBvC,KAAKe,QAAOyB,OAAAC,OAAA,CACtCC,cAAe1C,KAAK2C,eACjBC,+BAGL,GAAI5C,KAAKC,KAAM,CACbD,KAAKsB,a,GAITzB,EAAAC,UAAA+C,qBAAA,WACE7C,KAAK6B,c,EAGPhC,EAAAC,UAAAgD,OAAA,eAAAtC,EAAAR,KACE,IAAM+C,EAAU,CACd,eAAgB,KAChB,wBAAyB/C,KAAKC,MAGhC,OACE+C,EAACC,KAAI,KACHD,EAAA,OAAKE,MAAOH,GACVC,EAAA,OAAKE,MAAM,2BACXF,EAAA,OAAKE,MAAM,yBACTF,EAAA,OACEE,MAAM,8BACNC,IAAK,SAACC,GAAE,OAAM5C,EAAKmC,cAAgBS,CAA3B,EACRC,SAAS,KACTC,KAAK,SAAQ,aACDtD,KAAKuD,WAAa,KAAI,cACrBvD,KAAKC,KAAO,QAAU,QAEnC+C,EAAA,gB,qIAhIU,G"}
@@ -1,2 +1,2 @@
1
- import{r as registerInstance,h,a as Host,g as getElement}from"./index-67fd55c9.js";import{h as hasSlot}from"./utils-51148d9a.js";var stzhPagebottomCss=".sc-stzh-pagebottom-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-pagebottom-h{display:none}.sc-stzh-pagebottom-h *.sc-stzh-pagebottom,.sc-stzh-pagebottom-h *.sc-stzh-pagebottom::before,.sc-stzh-pagebottom-h *.sc-stzh-pagebottom::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-pagebottom-h .sc-stzh-pagebottom-s>[slot=logo]{height:2.375rem}.stzh-pagebottom.sc-stzh-pagebottom{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width: 600px){.stzh-pagebottom.sc-stzh-pagebottom{-ms-flex-direction:row;flex-direction:row}}.stzh-pagebottom__share-title.sc-stzh-pagebottom{font-size:var(--stzh-font-curve-caption-default-font-size, var(--stzh-font-nano-font-size));line-height:var(--stzh-font-curve-caption-default-text-line-height, var(--stzh-font-nano-text-line-height));margin-bottom:var(--stzh-space-small)}@media screen and (min-width: 1024px){.stzh-pagebottom__share-title.sc-stzh-pagebottom{font-size:var(--stzh-font-curve-caption-medium-font-size, var(--stzh-font-micro-font-size));line-height:var(--stzh-font-curve-caption-medium-text-line-height, var(--stzh-font-micro-text-line-height))}}@media screen and (min-width: 600px){.stzh-pagebottom__logo.sc-stzh-pagebottom{margin-left:auto}}.stzh-pagebottom__logo-link.sc-stzh-pagebottom:not(:empty){display:block;margin-top:var(--stzh-space-xlarge)}@media screen and (min-width: 600px){.stzh-pagebottom__logo-link.sc-stzh-pagebottom:not(:empty){margin-top:0;margin-left:var(--stzh-space-xlarge)}}.stzh-pagebottom--has-border.sc-stzh-pagebottom{padding-top:var(--stzh-space-xlarge);border-top:0.0625rem solid var(--stzh-base-border-color)}@media screen and (min-width: 1024px){.stzh-pagebottom--has-border.sc-stzh-pagebottom{padding-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-pagebottom--has-border.sc-stzh-pagebottom{padding-top:var(--stzh-space-xxxlarge)}}";var StzhPagebottom=function(){function t(t){registerInstance(this,t);this.shareTitle="";this.shareUrl=undefined;this.shareServices=undefined;this.shareDisabled=false;this.logoHref="https://www.stadt-zuerich.ch";this.logoAnalyticsId=undefined;this.withBorder=false}t.prototype.render=function(){var t=hasSlot(this.element,"logo");var e={"stzh-pagebottom":true,"stzh-pagebottom--has-border":this.withBorder};return h(Host,null,h("div",{class:e},!this.shareDisabled&&h("div",{class:"stzh-pagebottom__share-wrapper"},this.shareTitle&&h("div",{class:"stzh-pagebottom__share-title"},this.shareTitle),h("stzh-share",{url:this.shareUrl,services:this.shareServices})),t&&h("div",{class:"stzh-pagebottom__logo"},h("a",{href:this.logoHref,class:"stzh-pagebottom__logo-link","s-object-id":this.logoAnalyticsId||"Footer Logo"},h("slot",{name:"logo"})))))};Object.defineProperty(t.prototype,"element",{get:function(){return getElement(this)},enumerable:false,configurable:true});return t}();StzhPagebottom.style=stzhPagebottomCss;export{StzhPagebottom as stzh_pagebottom};
1
+ import{r as registerInstance,h,a as Host,g as getElement}from"./index-67fd55c9.js";import{h as hasSlot}from"./utils-8f264f12.js";var stzhPagebottomCss=".sc-stzh-pagebottom-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:normal;color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-pagebottom-h{display:none}.sc-stzh-pagebottom-h *.sc-stzh-pagebottom,.sc-stzh-pagebottom-h *.sc-stzh-pagebottom::before,.sc-stzh-pagebottom-h *.sc-stzh-pagebottom::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-pagebottom-h .sc-stzh-pagebottom-s>[slot=logo]{height:2.375rem}.stzh-pagebottom.sc-stzh-pagebottom{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width: 600px){.stzh-pagebottom.sc-stzh-pagebottom{-ms-flex-direction:row;flex-direction:row}}.stzh-pagebottom__share-title.sc-stzh-pagebottom{font-size:var(--stzh-font-curve-caption-default-font-size, var(--stzh-font-nano-font-size));line-height:var(--stzh-font-curve-caption-default-text-line-height, var(--stzh-font-nano-text-line-height));margin-bottom:var(--stzh-space-small)}@media screen and (min-width: 1024px){.stzh-pagebottom__share-title.sc-stzh-pagebottom{font-size:var(--stzh-font-curve-caption-medium-font-size, var(--stzh-font-micro-font-size));line-height:var(--stzh-font-curve-caption-medium-text-line-height, var(--stzh-font-micro-text-line-height))}}@media screen and (min-width: 600px){.stzh-pagebottom__logo.sc-stzh-pagebottom{margin-left:auto}}.stzh-pagebottom__logo-link.sc-stzh-pagebottom:not(:empty){display:block;margin-top:var(--stzh-space-xlarge)}@media screen and (min-width: 600px){.stzh-pagebottom__logo-link.sc-stzh-pagebottom:not(:empty){margin-top:0;margin-left:var(--stzh-space-xlarge)}}.stzh-pagebottom--has-border.sc-stzh-pagebottom{padding-top:var(--stzh-space-xlarge);border-top:0.0625rem solid var(--stzh-base-border-color)}@media screen and (min-width: 1024px){.stzh-pagebottom--has-border.sc-stzh-pagebottom{padding-top:var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.stzh-pagebottom--has-border.sc-stzh-pagebottom{padding-top:var(--stzh-space-xxxlarge)}}";var StzhPagebottom=function(){function t(t){registerInstance(this,t);this.shareTitle="";this.shareUrl=undefined;this.shareServices=undefined;this.shareDisabled=false;this.logoHref="https://www.stadt-zuerich.ch";this.logoAnalyticsId=undefined;this.withBorder=false}t.prototype.render=function(){var t=hasSlot(this.element,"logo");var e={"stzh-pagebottom":true,"stzh-pagebottom--has-border":this.withBorder};return h(Host,null,h("div",{class:e},!this.shareDisabled&&h("div",{class:"stzh-pagebottom__share-wrapper"},this.shareTitle&&h("div",{class:"stzh-pagebottom__share-title"},this.shareTitle),h("stzh-share",{url:this.shareUrl,services:this.shareServices})),t&&h("div",{class:"stzh-pagebottom__logo"},h("a",{href:this.logoHref,class:"stzh-pagebottom__logo-link","s-object-id":this.logoAnalyticsId||"Footer Logo"},h("slot",{name:"logo"})))))};Object.defineProperty(t.prototype,"element",{get:function(){return getElement(this)},enumerable:false,configurable:true});return t}();StzhPagebottom.style=stzhPagebottomCss;export{StzhPagebottom as stzh_pagebottom};
2
2
  //# sourceMappingURL=stzh-pagebottom.entry.js.map