@oiz/stzh-components 2.12.0-beta1 → 2.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (322) hide show
  1. package/dist/cjs/{app-globals-749422d7.js → app-globals-5c0c2c46.js} +2 -2
  2. package/dist/cjs/{app-globals-749422d7.js.map → app-globals-5c0c2c46.js.map} +1 -1
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/stzh-actionset_4.cjs.entry.js +4 -2
  5. package/dist/cjs/stzh-actionset_4.cjs.entry.js.map +1 -1
  6. package/dist/cjs/stzh-badge_3.cjs.entry.js +2 -1
  7. package/dist/cjs/stzh-badge_3.cjs.entry.js.map +1 -1
  8. package/dist/cjs/stzh-chip_2.cjs.entry.js +2 -1
  9. package/dist/cjs/stzh-chip_2.cjs.entry.js.map +1 -1
  10. package/dist/cjs/stzh-components.cjs.js +2 -2
  11. package/dist/cjs/stzh-dropdown.cjs.entry.js +25 -1
  12. package/dist/cjs/stzh-dropdown.cjs.entry.js.map +1 -1
  13. package/dist/cjs/stzh-link.cjs.entry.js +2 -1
  14. package/dist/cjs/stzh-link.cjs.entry.js.map +1 -1
  15. package/dist/cjs/stzh-menu_2.cjs.entry.js +2 -1
  16. package/dist/cjs/stzh-menu_2.cjs.entry.js.map +1 -1
  17. package/dist/cjs/stzh-progressbar-item.cjs.entry.js +2 -1
  18. package/dist/cjs/stzh-progressbar-item.cjs.entry.js.map +1 -1
  19. package/dist/cjs/stzh-skiplink.cjs.entry.js +2 -1
  20. package/dist/cjs/stzh-skiplink.cjs.entry.js.map +1 -1
  21. package/dist/cjs/stzh-upload.cjs.entry.js +8 -2
  22. package/dist/cjs/stzh-upload.cjs.entry.js.map +1 -1
  23. package/dist/collection/components/stzh-actionset/stzh-actionset.js.map +1 -1
  24. package/dist/collection/components/stzh-button/stzh-button.js +2 -1
  25. package/dist/collection/components/stzh-button/stzh-button.js.map +1 -1
  26. package/dist/collection/components/stzh-card/stzh-card.css +3 -3
  27. package/dist/collection/components/stzh-card/stzh-card.js +3 -1
  28. package/dist/collection/components/stzh-card/stzh-card.js.map +1 -1
  29. package/dist/collection/components/stzh-chip/stzh-chip.js +2 -1
  30. package/dist/collection/components/stzh-chip/stzh-chip.js.map +1 -1
  31. package/dist/collection/components/stzh-dropdown/stzh-dropdown.js +45 -1
  32. package/dist/collection/components/stzh-dropdown/stzh-dropdown.js.map +1 -1
  33. package/dist/collection/components/stzh-link/stzh-link.js +2 -1
  34. package/dist/collection/components/stzh-link/stzh-link.js.map +1 -1
  35. package/dist/collection/components/stzh-menu-item/stzh-menu-item.js +2 -1
  36. package/dist/collection/components/stzh-menu-item/stzh-menu-item.js.map +1 -1
  37. package/dist/collection/components/stzh-progressbar-item/stzh-progressbar-item.js +2 -1
  38. package/dist/collection/components/stzh-progressbar-item/stzh-progressbar-item.js.map +1 -1
  39. package/dist/collection/components/stzh-radiogroup/stzh-radiogroup.js +2 -4
  40. package/dist/collection/components/stzh-radiogroup/stzh-radiogroup.js.map +1 -1
  41. package/dist/collection/components/stzh-skiplink/stzh-skiplink.js +2 -1
  42. package/dist/collection/components/stzh-skiplink/stzh-skiplink.js.map +1 -1
  43. package/dist/collection/components/stzh-upload/stzh-upload.css +1 -1
  44. package/dist/collection/components/stzh-upload/stzh-upload.js +3 -3
  45. package/dist/collection/components/stzh-upload/stzh-upload.js.map +1 -1
  46. package/dist/collection/libraries/dropzone/dropzone-amd-module.js +7 -1
  47. package/dist/collection/libraries/dropzone/dropzone.js +7 -1
  48. package/dist/collection/libraries/dropzone/min/dropzone-amd-module.min.js +1 -1
  49. package/dist/collection/libraries/dropzone/min/dropzone.min.js +1 -1
  50. package/dist/collection/libraries/tom-select/cjs/tom-select.complete.js +4 -1
  51. package/dist/collection/libraries/tom-select/cjs/tom-select.js +4 -1
  52. package/dist/collection/libraries/tom-select/cjs/tom-select.popular.js +4 -1
  53. package/dist/collection/libraries/tom-select/esm/tom-select.complete.js +4 -1
  54. package/dist/collection/libraries/tom-select/esm/tom-select.js +4 -1
  55. package/dist/collection/libraries/tom-select/esm/tom-select.popular.js +4 -1
  56. package/dist/collection/libraries/tom-select/js/tom-select.base.js +4 -1
  57. package/dist/collection/libraries/tom-select/js/tom-select.base.min.js +30 -30
  58. package/dist/collection/libraries/tom-select/js/tom-select.complete.js +4 -1
  59. package/dist/collection/libraries/tom-select/js/tom-select.complete.min.js +17 -17
  60. package/dist/collection/libraries/tom-select/js/tom-select.popular.js +4 -1
  61. package/dist/collection/libraries/tom-select/js/tom-select.popular.min.js +2 -2
  62. package/dist/components/index.js +1 -1
  63. package/dist/components/stzh-actionset2.js.map +1 -1
  64. package/dist/components/stzh-button2.js +2 -1
  65. package/dist/components/stzh-button2.js.map +1 -1
  66. package/dist/components/stzh-card2.js +4 -2
  67. package/dist/components/stzh-card2.js.map +1 -1
  68. package/dist/components/stzh-chip2.js +2 -1
  69. package/dist/components/stzh-chip2.js.map +1 -1
  70. package/dist/components/stzh-dropdown2.js +27 -2
  71. package/dist/components/stzh-dropdown2.js.map +1 -1
  72. package/dist/components/stzh-link2.js +2 -1
  73. package/dist/components/stzh-link2.js.map +1 -1
  74. package/dist/components/stzh-menu-item2.js +2 -1
  75. package/dist/components/stzh-menu-item2.js.map +1 -1
  76. package/dist/components/stzh-progressbar-item2.js +2 -1
  77. package/dist/components/stzh-progressbar-item2.js.map +1 -1
  78. package/dist/components/stzh-radiogroup2.js +1 -1
  79. package/dist/components/stzh-skiplink.js +2 -1
  80. package/dist/components/stzh-skiplink.js.map +1 -1
  81. package/dist/components/stzh-upload.js +8 -2
  82. package/dist/components/stzh-upload.js.map +1 -1
  83. package/dist/esm/{app-globals-5f5be02f.js → app-globals-bfc779f0.js} +2 -2
  84. package/dist/esm/{app-globals-5f5be02f.js.map → app-globals-bfc779f0.js.map} +1 -1
  85. package/dist/esm/loader.js +2 -2
  86. package/dist/esm/stzh-actionset_4.entry.js +4 -2
  87. package/dist/esm/stzh-actionset_4.entry.js.map +1 -1
  88. package/dist/esm/stzh-badge_3.entry.js +2 -1
  89. package/dist/esm/stzh-badge_3.entry.js.map +1 -1
  90. package/dist/esm/stzh-chip_2.entry.js +2 -1
  91. package/dist/esm/stzh-chip_2.entry.js.map +1 -1
  92. package/dist/esm/stzh-components.js +2 -2
  93. package/dist/esm/stzh-dropdown.entry.js +25 -1
  94. package/dist/esm/stzh-dropdown.entry.js.map +1 -1
  95. package/dist/esm/stzh-link.entry.js +2 -1
  96. package/dist/esm/stzh-link.entry.js.map +1 -1
  97. package/dist/esm/stzh-menu_2.entry.js +2 -1
  98. package/dist/esm/stzh-menu_2.entry.js.map +1 -1
  99. package/dist/esm/stzh-progressbar-item.entry.js +2 -1
  100. package/dist/esm/stzh-progressbar-item.entry.js.map +1 -1
  101. package/dist/esm/stzh-skiplink.entry.js +2 -1
  102. package/dist/esm/stzh-skiplink.entry.js.map +1 -1
  103. package/dist/esm/stzh-upload.entry.js +8 -2
  104. package/dist/esm/stzh-upload.entry.js.map +1 -1
  105. package/dist/esm-es5/{app-globals-5f5be02f.js → app-globals-bfc779f0.js} +2 -2
  106. package/dist/esm-es5/{app-globals-5f5be02f.js.map → app-globals-bfc779f0.js.map} +1 -1
  107. package/dist/esm-es5/loader.js +1 -1
  108. package/dist/esm-es5/loader.js.map +1 -1
  109. package/dist/esm-es5/stzh-actionset_4.entry.js +1 -1
  110. package/dist/esm-es5/stzh-actionset_4.entry.js.map +1 -1
  111. package/dist/esm-es5/stzh-badge_3.entry.js +1 -1
  112. package/dist/esm-es5/stzh-badge_3.entry.js.map +1 -1
  113. package/dist/esm-es5/stzh-chip_2.entry.js +1 -1
  114. package/dist/esm-es5/stzh-chip_2.entry.js.map +1 -1
  115. package/dist/esm-es5/stzh-components.js +1 -1
  116. package/dist/esm-es5/stzh-components.js.map +1 -1
  117. package/dist/esm-es5/stzh-dropdown.entry.js +3 -3
  118. package/dist/esm-es5/stzh-dropdown.entry.js.map +1 -1
  119. package/dist/esm-es5/stzh-link.entry.js +1 -1
  120. package/dist/esm-es5/stzh-link.entry.js.map +1 -1
  121. package/dist/esm-es5/stzh-menu_2.entry.js +1 -1
  122. package/dist/esm-es5/stzh-menu_2.entry.js.map +1 -1
  123. package/dist/esm-es5/stzh-progressbar-item.entry.js +1 -1
  124. package/dist/esm-es5/stzh-progressbar-item.entry.js.map +1 -1
  125. package/dist/esm-es5/stzh-skiplink.entry.js +1 -1
  126. package/dist/esm-es5/stzh-skiplink.entry.js.map +1 -1
  127. package/dist/esm-es5/stzh-upload.entry.js +1 -1
  128. package/dist/esm-es5/stzh-upload.entry.js.map +1 -1
  129. package/dist/stzh-components/{p-7873a639.entry.js → p-01e9b3b5.entry.js} +2 -2
  130. package/dist/stzh-components/p-01e9b3b5.entry.js.map +1 -0
  131. package/dist/stzh-components/{p-0db27707.entry.js → p-03fc4d3d.entry.js} +2 -2
  132. package/dist/stzh-components/p-03fc4d3d.entry.js.map +1 -0
  133. package/dist/stzh-components/{p-f91187c8.entry.js → p-11a57dcd.entry.js} +3 -3
  134. package/dist/stzh-components/p-11a57dcd.entry.js.map +1 -0
  135. package/dist/stzh-components/{p-3ab3a5a7.system.entry.js → p-1a420f1c.system.entry.js} +2 -2
  136. package/dist/stzh-components/p-1a420f1c.system.entry.js.map +1 -0
  137. package/dist/stzh-components/{p-42e25ae1.system.entry.js → p-3048d3ea.system.entry.js} +2 -2
  138. package/dist/stzh-components/p-3048d3ea.system.entry.js.map +1 -0
  139. package/dist/stzh-components/p-4206f3e1.system.entry.js +9 -0
  140. package/dist/stzh-components/p-4206f3e1.system.entry.js.map +1 -0
  141. package/dist/stzh-components/{p-af33b013.entry.js → p-4488789b.entry.js} +2 -2
  142. package/dist/stzh-components/p-4488789b.entry.js.map +1 -0
  143. package/dist/stzh-components/{p-9d0fedfe.system.entry.js → p-710d15c1.system.entry.js} +2 -2
  144. package/dist/stzh-components/p-710d15c1.system.entry.js.map +1 -0
  145. package/dist/stzh-components/{p-ebb38041.system.js → p-9035fa3b.system.js} +2 -2
  146. package/dist/stzh-components/{p-ebb38041.system.js.map → p-9035fa3b.system.js.map} +1 -1
  147. package/dist/stzh-components/{p-68feffea.entry.js → p-919e700b.entry.js} +2 -2
  148. package/dist/stzh-components/p-919e700b.entry.js.map +1 -0
  149. package/dist/stzh-components/{p-d5ee8b1a.entry.js → p-a0d3ec11.entry.js} +2 -2
  150. package/dist/stzh-components/p-a0d3ec11.entry.js.map +1 -0
  151. package/dist/stzh-components/{p-188dd49d.system.entry.js → p-aa0660d8.system.entry.js} +2 -2
  152. package/dist/stzh-components/p-aa0660d8.system.entry.js.map +1 -0
  153. package/dist/stzh-components/{p-54a1fdcc.system.entry.js → p-b19c3193.system.entry.js} +2 -2
  154. package/dist/stzh-components/p-b19c3193.system.entry.js.map +1 -0
  155. package/dist/stzh-components/{p-f73af272.entry.js → p-c70b4f1b.entry.js} +2 -2
  156. package/dist/stzh-components/p-c70b4f1b.entry.js.map +1 -0
  157. package/dist/stzh-components/{p-135d2e40.system.entry.js → p-d80b87dd.system.entry.js} +2 -2
  158. package/dist/stzh-components/p-d80b87dd.system.entry.js.map +1 -0
  159. package/dist/stzh-components/{p-b3d76f2a.system.entry.js → p-df045b3b.system.entry.js} +2 -2
  160. package/dist/stzh-components/p-df045b3b.system.entry.js.map +1 -0
  161. package/dist/stzh-components/{p-7c2aa5e8.entry.js → p-dfa8f780.entry.js} +2 -2
  162. package/dist/stzh-components/p-dfa8f780.entry.js.map +1 -0
  163. package/dist/stzh-components/{p-5e014c0e.js → p-ea2fd8f8.js} +2 -2
  164. package/dist/stzh-components/{p-5e014c0e.js.map → p-ea2fd8f8.js.map} +1 -1
  165. package/dist/stzh-components/{p-509f90d0.system.entry.js → p-ee4f0a17.system.entry.js} +2 -2
  166. package/dist/stzh-components/p-ee4f0a17.system.entry.js.map +1 -0
  167. package/dist/stzh-components/{p-bf7316ab.system.js → p-eed26372.system.js} +2 -2
  168. package/dist/stzh-components/{p-bf7316ab.system.js.map → p-eed26372.system.js.map} +1 -1
  169. package/dist/stzh-components/{p-0164f9d1.entry.js → p-f63cc727.entry.js} +2 -2
  170. package/dist/stzh-components/p-f63cc727.entry.js.map +1 -0
  171. package/dist/stzh-components/stzh-components.esm.js +1 -1
  172. package/dist/stzh-components/stzh-components.esm.js.map +1 -1
  173. package/dist/stzh-components/stzh-components.js +1 -1
  174. package/dist/types/components/stzh-accordion/stzh-accordion.d.ts +15 -0
  175. package/dist/types/components/stzh-accordion-item/stzh-accordion-item.d.ts +73 -0
  176. package/dist/types/components/stzh-actions/stzh-actions.d.ts +16 -0
  177. package/dist/types/components/stzh-actionset/stzh-actionset.d.ts +45 -0
  178. package/dist/types/components/stzh-amount/stzh-amount.d.ts +73 -0
  179. package/dist/types/components/stzh-appnav/stzh-appnav.d.ts +23 -0
  180. package/dist/types/components/stzh-appointments/stzh-appointments.d.ts +74 -0
  181. package/dist/types/components/stzh-audio/stzh-audio.d.ts +58 -0
  182. package/dist/types/components/stzh-button/stzh-button.d.ts +105 -0
  183. package/dist/types/components/stzh-buttongroup/stzh-buttongroup.d.ts +7 -0
  184. package/dist/types/components/stzh-calendar/stzh-calendar.d.ts +88 -0
  185. package/dist/types/components/stzh-card/stzh-card.d.ts +127 -0
  186. package/dist/types/components/stzh-card-list/stzh-card-list.d.ts +31 -0
  187. package/dist/types/components/stzh-carousel/stzh-carousel.d.ts +175 -0
  188. package/dist/types/components/stzh-chart/stzh-chart.d.ts +15 -0
  189. package/dist/types/components/stzh-checkbox/stzh-checkbox.d.ts +57 -0
  190. package/dist/types/components/stzh-checkboxgroup/stzh-checkboxgroup.d.ts +64 -0
  191. package/dist/types/components/stzh-chip/stzh-chip.d.ts +74 -0
  192. package/dist/types/components/stzh-chip-select/stzh-chip-select.d.ts +46 -0
  193. package/dist/types/components/stzh-clamp/stzh-clamp.d.ts +49 -0
  194. package/dist/types/components/stzh-contact/stzh-contact.d.ts +54 -0
  195. package/dist/types/components/stzh-datalist/stzh-datalist.d.ts +51 -0
  196. package/dist/types/components/stzh-datalist-item/stzh-datalist-item.d.ts +62 -0
  197. package/dist/types/components/stzh-datamessagelist/stzh-datamessagelist.d.ts +6 -0
  198. package/dist/types/components/stzh-datamessagelist-item/stzh-datamessagelist-item.d.ts +57 -0
  199. package/dist/types/components/stzh-datatable/stzh-datatable.d.ts +103 -0
  200. package/dist/types/components/stzh-datepicker/stzh-datepicker.d.ts +101 -0
  201. package/dist/types/components/stzh-details/stzh-details.d.ts +35 -0
  202. package/dist/types/components/stzh-dialog/stzh-dialog.d.ts +64 -0
  203. package/dist/types/components/stzh-dropdown/stzh-dropdown.d.ts +177 -0
  204. package/dist/types/components/stzh-figure/stzh-figure.d.ts +21 -0
  205. package/dist/types/components/stzh-flyingfocus/stzh-flyingfocus.d.ts +35 -0
  206. package/dist/types/components/stzh-footer/stzh-footer.d.ts +27 -0
  207. package/dist/types/components/stzh-gallery/stzh-gallery.d.ts +54 -0
  208. package/dist/types/components/stzh-ghettobox/stzh-ghettobox.d.ts +50 -0
  209. package/dist/types/components/stzh-header/stzh-header.d.ts +68 -0
  210. package/dist/types/components/stzh-hr/stzh-hr.d.ts +7 -0
  211. package/dist/types/components/stzh-iframe/stzh-iframe.d.ts +60 -0
  212. package/dist/types/components/stzh-imagecomparison/stzh-imagecomparison.d.ts +29 -0
  213. package/dist/types/components/stzh-input/stzh-input.d.ts +104 -0
  214. package/dist/types/components/stzh-invert/stzh-invert.d.ts +7 -0
  215. package/dist/types/components/stzh-langnav/stzh-langnav.d.ts +19 -0
  216. package/dist/types/components/stzh-link/stzh-link.d.ts +88 -0
  217. package/dist/types/components/stzh-list/stzh-list.d.ts +9 -0
  218. package/dist/types/components/stzh-list-item/stzh-list-item.d.ts +7 -0
  219. package/dist/types/components/stzh-loader/stzh-loader.d.ts +13 -0
  220. package/dist/types/components/stzh-loadingbar/stzh-loadingbar.d.ts +12 -0
  221. package/dist/types/components/stzh-logo/stzh-logo.d.ts +9 -0
  222. package/dist/types/components/stzh-menu-item/stzh-menu-item.d.ts +50 -0
  223. package/dist/types/components/stzh-message/stzh-message.d.ts +37 -0
  224. package/dist/types/components/stzh-metanav/stzh-metanav.d.ts +11 -0
  225. package/dist/types/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.d.ts +33 -0
  226. package/dist/types/components/stzh-monthyearpicker/stzh-monthyearpicker.d.ts +98 -0
  227. package/dist/types/components/stzh-olmap/stzh-olmap.d.ts +124 -0
  228. package/dist/types/components/stzh-overlay/stzh-overlay.d.ts +34 -0
  229. package/dist/types/components/stzh-page-skiplinks/stzh-page-skiplinks.d.ts +11 -0
  230. package/dist/types/components/stzh-pagebottom/stzh-pagebottom.d.ts +29 -0
  231. package/dist/types/components/stzh-pagetitle/stzh-pagetitle.d.ts +15 -0
  232. package/dist/types/components/stzh-pagetitle-hero/stzh-pagetitle-hero.d.ts +25 -0
  233. package/dist/types/components/stzh-pagination/stzh-pagination.d.ts +52 -0
  234. package/dist/types/components/stzh-panorama/stzh-panorama.d.ts +74 -0
  235. package/dist/types/components/stzh-popover/stzh-popover.d.ts +73 -0
  236. package/dist/types/components/stzh-print/stzh-print.d.ts +12 -0
  237. package/dist/types/components/stzh-progressbar/stzh-progressbar.d.ts +59 -0
  238. package/dist/types/components/stzh-progressbar-item/stzh-progressbar-item.d.ts +34 -0
  239. package/dist/types/components/stzh-radio/stzh-radio.d.ts +57 -0
  240. package/dist/types/components/stzh-radiogroup/stzh-radiogroup.d.ts +66 -0
  241. package/dist/types/components/stzh-ratio/stzh-ratio.d.ts +22 -0
  242. package/dist/types/components/stzh-readspeaker/stzh-readspeaker.d.ts +18 -0
  243. package/dist/types/components/stzh-richtext/stzh-richtext.d.ts +22 -0
  244. package/dist/types/components/stzh-saptcha/stzh-saptcha.d.ts +28 -0
  245. package/dist/types/components/stzh-scrollup/stzh-scrollup.d.ts +12 -0
  246. package/dist/types/components/stzh-share/stzh-share.d.ts +21 -0
  247. package/dist/types/components/stzh-show/stzh-show.d.ts +22 -0
  248. package/dist/types/components/stzh-sitemap/stzh-sitemap.d.ts +14 -0
  249. package/dist/types/components/stzh-skiplink/stzh-skiplink.d.ts +38 -0
  250. package/dist/types/components/stzh-sortable/stzh-sortable.d.ts +59 -0
  251. package/dist/types/components/stzh-status/stzh-status.d.ts +14 -0
  252. package/dist/types/components/stzh-sticky/stzh-sticky.d.ts +58 -0
  253. package/dist/types/components/stzh-table/stzh-table.d.ts +43 -0
  254. package/dist/types/components/stzh-textandimage/stzh-textandimage.d.ts +14 -0
  255. package/dist/types/components/stzh-timeline/stzh-timeline.d.ts +23 -0
  256. package/dist/types/components/stzh-timeline-item/stzh-timeline-item.d.ts +78 -0
  257. package/dist/types/components/stzh-timepicker/stzh-timepicker.d.ts +62 -0
  258. package/dist/types/components/stzh-toast/stzh-toast.d.ts +39 -0
  259. package/dist/types/components/stzh-toastbar/stzh-toastbar.d.ts +41 -0
  260. package/dist/types/components/stzh-toggle/stzh-toggle.d.ts +59 -0
  261. package/dist/types/components/stzh-tooltip/stzh-tooltip.d.ts +80 -0
  262. package/dist/types/components/stzh-upload/stzh-upload.d.ts +240 -0
  263. package/dist/types/components/stzh-vbz-carousel/stzh-vbz-carousel.d.ts +14 -0
  264. package/dist/types/components/stzh-vbz-linechip/stzh-vbz-linechip.d.ts +37 -0
  265. package/dist/types/components/stzh-vbz-majorticker/stzh-vbz-majorticker.d.ts +42 -0
  266. package/dist/types/components/stzh-vbz-ticker/stzh-vbz-ticker.d.ts +35 -0
  267. package/dist/types/components/stzh-youtube/stzh-youtube.d.ts +30 -0
  268. package/dist/types/components.d.ts +16 -4
  269. package/dist/types/index.d.ts +900 -0
  270. package/dist/types/libraries/tom-select/types/constants.d.ts +12 -0
  271. package/dist/types/libraries/tom-select/types/contrib/highlight.d.ts +13 -0
  272. package/dist/types/libraries/tom-select/types/contrib/microevent.d.ts +20 -0
  273. package/dist/types/libraries/tom-select/types/contrib/microplugin.d.ts +71 -0
  274. package/dist/types/libraries/tom-select/types/defaults.d.ts +52 -0
  275. package/dist/types/libraries/tom-select/types/getSettings.d.ts +3 -0
  276. package/dist/types/libraries/tom-select/types/plugins/caret_position/plugin.d.ts +16 -0
  277. package/dist/types/libraries/tom-select/types/plugins/change_listener/plugin.d.ts +16 -0
  278. package/dist/types/libraries/tom-select/types/plugins/checkbox_options/plugin.d.ts +16 -0
  279. package/dist/types/libraries/tom-select/types/plugins/clear_button/plugin.d.ts +17 -0
  280. package/dist/types/libraries/tom-select/types/plugins/clear_button/types.d.ts +5 -0
  281. package/dist/types/libraries/tom-select/types/plugins/drag_drop/plugin.d.ts +16 -0
  282. package/dist/types/libraries/tom-select/types/plugins/dropdown_header/plugin.d.ts +17 -0
  283. package/dist/types/libraries/tom-select/types/plugins/dropdown_header/types.d.ts +8 -0
  284. package/dist/types/libraries/tom-select/types/plugins/dropdown_input/plugin.d.ts +16 -0
  285. package/dist/types/libraries/tom-select/types/plugins/input_autogrow/plugin.d.ts +15 -0
  286. package/dist/types/libraries/tom-select/types/plugins/no_active_items/plugin.d.ts +15 -0
  287. package/dist/types/libraries/tom-select/types/plugins/no_backspace_delete/plugin.d.ts +15 -0
  288. package/dist/types/libraries/tom-select/types/plugins/optgroup_columns/plugin.d.ts +16 -0
  289. package/dist/types/libraries/tom-select/types/plugins/remove_button/plugin.d.ts +17 -0
  290. package/dist/types/libraries/tom-select/types/plugins/remove_button/types.d.ts +6 -0
  291. package/dist/types/libraries/tom-select/types/plugins/restore_on_backspace/plugin.d.ts +21 -0
  292. package/dist/types/libraries/tom-select/types/plugins/virtual_scroll/plugin.d.ts +16 -0
  293. package/dist/types/libraries/tom-select/types/tom-select.complete.d.ts +2 -0
  294. package/dist/types/libraries/tom-select/types/tom-select.d.ts +596 -0
  295. package/dist/types/libraries/tom-select/types/tom-select.popular.d.ts +2 -0
  296. package/dist/types/libraries/tom-select/types/types/core.d.ts +48 -0
  297. package/dist/types/libraries/tom-select/types/types/index.d.ts +2 -0
  298. package/dist/types/libraries/tom-select/types/types/settings.d.ts +79 -0
  299. package/dist/types/libraries/tom-select/types/utils.d.ts +76 -0
  300. package/dist/types/libraries/tom-select/types/vanilla.d.ts +76 -0
  301. package/dist/types/types/svg.d.ts +4 -0
  302. package/package.json +1 -1
  303. package/dist/stzh-components/p-0164f9d1.entry.js.map +0 -1
  304. package/dist/stzh-components/p-0db27707.entry.js.map +0 -1
  305. package/dist/stzh-components/p-135d2e40.system.entry.js.map +0 -1
  306. package/dist/stzh-components/p-188dd49d.system.entry.js.map +0 -1
  307. package/dist/stzh-components/p-3ab3a5a7.system.entry.js.map +0 -1
  308. package/dist/stzh-components/p-42e25ae1.system.entry.js.map +0 -1
  309. package/dist/stzh-components/p-509f90d0.system.entry.js.map +0 -1
  310. package/dist/stzh-components/p-54a1fdcc.system.entry.js.map +0 -1
  311. package/dist/stzh-components/p-68feffea.entry.js.map +0 -1
  312. package/dist/stzh-components/p-7873a639.entry.js.map +0 -1
  313. package/dist/stzh-components/p-7c2aa5e8.entry.js.map +0 -1
  314. package/dist/stzh-components/p-97704eb0.system.entry.js +0 -9
  315. package/dist/stzh-components/p-97704eb0.system.entry.js.map +0 -1
  316. package/dist/stzh-components/p-9d0fedfe.system.entry.js.map +0 -1
  317. package/dist/stzh-components/p-af33b013.entry.js.map +0 -1
  318. package/dist/stzh-components/p-b3d76f2a.system.entry.js.map +0 -1
  319. package/dist/stzh-components/p-d5ee8b1a.entry.js.map +0 -1
  320. package/dist/stzh-components/p-f73af272.entry.js.map +0 -1
  321. package/dist/stzh-components/p-f91187c8.entry.js.map +0 -1
  322. package/dist/vscode-data.json +0 -7523
@@ -0,0 +1,79 @@
1
+ import { TomCreateFilter, TomCreate, TomLoadCallback, TomTemplates, TomOption } from './index';
2
+ import { TPluginItem, TPluginHash } from '../contrib/microplugin';
3
+ import * as SifterTypes from '@orchidjs/sifter/dist/types/types';
4
+ export type TomSettings = {
5
+ options?: any[];
6
+ optgroups?: any[];
7
+ items?: string[];
8
+ plugins: string[] | TPluginItem[] | TPluginHash;
9
+ delimiter: string;
10
+ splitOn: RegExp | string;
11
+ persist: boolean;
12
+ diacritics: boolean;
13
+ create: boolean | TomCreate;
14
+ createOnBlur: boolean;
15
+ createFilter: RegExp | string | TomCreateFilter;
16
+ highlight: boolean;
17
+ openOnFocus: boolean;
18
+ shouldOpen: boolean;
19
+ maxOptions: number;
20
+ maxItems: null | number;
21
+ hideSelected: boolean;
22
+ duplicates: boolean;
23
+ addPrecedence: boolean;
24
+ selectOnTab: boolean;
25
+ preload: boolean | string;
26
+ allowEmptyOption: boolean;
27
+ closeAfterSelect: boolean;
28
+ loadThrottle: number;
29
+ loadingClass: string;
30
+ dataAttr: string;
31
+ optgroupField: string;
32
+ valueField: string;
33
+ labelField: string;
34
+ disabledField: string;
35
+ optgroupLabelField: string;
36
+ optgroupValueField: string;
37
+ lockOptgroupOrder: boolean;
38
+ sortField: string | SifterTypes.Sort[] | SifterTypes.SortFn;
39
+ searchField: string[];
40
+ searchConjunction: string;
41
+ nesting: boolean;
42
+ mode: string;
43
+ wrapperClass: string;
44
+ controlClass: string;
45
+ dropdownClass: string;
46
+ dropdownContentClass: string;
47
+ itemClass: string;
48
+ optionClass: string;
49
+ dropdownParent: string;
50
+ controlInput: string | HTMLInputElement;
51
+ copyClassesToDropdown: boolean;
52
+ placeholder: string;
53
+ hidePlaceholder: boolean;
54
+ load: (value: string, callback: TomLoadCallback) => void;
55
+ score?: (query: string) => () => any;
56
+ transformLoadQuery: (inputValue: string) => string;
57
+ shouldLoad: (query: string) => boolean;
58
+ onInitialize: () => void;
59
+ onChange: (value: string | number) => void;
60
+ onItemAdd: (value: string | number, item: HTMLDivElement) => void;
61
+ onItemRemove: (value: string | number, item: HTMLDivElement) => void;
62
+ onClear: () => void;
63
+ onOptionAdd: (value: string | number, data: TomOption) => void;
64
+ onOptionRemove: (value: string | number) => void;
65
+ onOptionClear: () => void;
66
+ onOptionGroupAdd: (value: string | number, data: TomOption) => void;
67
+ onOptionGroupRemove: (value: string | number) => void;
68
+ onOptionGroupClear: () => void;
69
+ onDropdownOpen: (dropdown: HTMLDivElement) => void;
70
+ onDropdownClose: (dropdown: HTMLDivElement) => void;
71
+ onType: (str: string) => void;
72
+ onLoad: (options: TomOption[], optgroups: TomOption[]) => void;
73
+ onFocus: () => void;
74
+ onBlur: () => void;
75
+ onDelete: (values: string[], evt: KeyboardEvent | MouseEvent) => boolean;
76
+ render: TomTemplates;
77
+ firstUrl: (query: string) => any;
78
+ shouldLoadMore: () => boolean;
79
+ };
@@ -0,0 +1,76 @@
1
+ import TomSelect from './tom-select';
2
+ import { TomLoadCallback } from './types/index';
3
+ /**
4
+ * Converts a scalar to its best string representation
5
+ * for hash keys and HTML attribute values.
6
+ *
7
+ * Transformations:
8
+ * 'str' -> 'str'
9
+ * null -> ''
10
+ * undefined -> ''
11
+ * true -> '1'
12
+ * false -> '0'
13
+ * 0 -> '0'
14
+ * 1 -> '1'
15
+ *
16
+ */
17
+ export declare const hash_key: (value: undefined | null | boolean | string | number) => string | null;
18
+ export declare const get_hash: (value: boolean | string | number) => string;
19
+ /**
20
+ * Escapes a string for use within HTML.
21
+ *
22
+ */
23
+ export declare const escape_html: (str: string) => string;
24
+ /**
25
+ * Debounce the user provided load function
26
+ *
27
+ */
28
+ export declare const loadDebounce: (fn: (value: string, callback: TomLoadCallback) => void, delay: number) => (this: TomSelect, value: string, callback: TomLoadCallback) => void;
29
+ /**
30
+ * Debounce all fired events types listed in `types`
31
+ * while executing the provided `fn`.
32
+ *
33
+ */
34
+ export declare const debounce_events: (self: TomSelect, types: string[], fn: () => void) => void;
35
+ /**
36
+ * Determines the current selection within a text input control.
37
+ * Returns an object containing:
38
+ * - start
39
+ * - length
40
+ *
41
+ */
42
+ export declare const getSelection: (input: HTMLInputElement) => {
43
+ start: number;
44
+ length: number;
45
+ };
46
+ /**
47
+ * Prevent default
48
+ *
49
+ */
50
+ export declare const preventDefault: (evt?: Event, stop?: boolean) => void;
51
+ /**
52
+ * Add event helper
53
+ *
54
+ */
55
+ export declare const addEvent: (target: EventTarget, type: string, callback: EventListenerOrEventListenerObject, options?: object) => void;
56
+ /**
57
+ * Return true if the requested key is down
58
+ * Will return false if more than one control character is pressed ( when [ctrl+shift+a] != [ctrl+a] )
59
+ * The current evt may not always set ( eg calling advanceSelection() )
60
+ *
61
+ */
62
+ export declare const isKeyDown: (key_name: keyof (KeyboardEvent | MouseEvent), evt?: KeyboardEvent | MouseEvent) => boolean;
63
+ /**
64
+ * Get the id of an element
65
+ * If the id attribute is not set, set the attribute with the given id
66
+ *
67
+ */
68
+ export declare const getId: (el: Element, id: string) => string;
69
+ /**
70
+ * Returns a string with backslashes added before characters that need to be escaped.
71
+ */
72
+ export declare const addSlashes: (str: string) => string;
73
+ /**
74
+ *
75
+ */
76
+ export declare const append: (parent: Element | DocumentFragment, node: string | Node | null | undefined) => void;
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Return a dom element from either a dom query string, jQuery object, a dom element or html string
3
+ * https://stackoverflow.com/questions/494143/creating-a-new-dom-element-from-an-html-string-using-built-in-dom-methods-or-pro/35385518#35385518
4
+ *
5
+ * param query should be {}
6
+ */
7
+ export declare const getDom: (query: any) => HTMLElement;
8
+ export declare const isHtmlString: (arg: any) => boolean;
9
+ export declare const escapeQuery: (query: string) => string;
10
+ /**
11
+ * Dispatch an event
12
+ *
13
+ */
14
+ export declare const triggerEvent: (dom_el: HTMLElement, event_name: string) => void;
15
+ /**
16
+ * Apply CSS rules to a dom element
17
+ *
18
+ */
19
+ export declare const applyCSS: (dom_el: HTMLElement, css: {
20
+ [key: string]: string | number;
21
+ }) => void;
22
+ /**
23
+ * Add css classes
24
+ *
25
+ */
26
+ export declare const addClasses: (elmts: HTMLElement | HTMLElement[], ...classes: string[] | string[][]) => void;
27
+ /**
28
+ * Remove css classes
29
+ *
30
+ */
31
+ export declare const removeClasses: (elmts: HTMLElement | HTMLElement[], ...classes: string[] | string[][]) => void;
32
+ /**
33
+ * Return arguments
34
+ *
35
+ */
36
+ export declare const classesArray: (args: string[] | string[][]) => string[];
37
+ /**
38
+ * Create an array from arg if it's not already an array
39
+ *
40
+ */
41
+ export declare const castAsArray: (arg: any) => Array<any>;
42
+ /**
43
+ * Get the closest node to the evt.target matching the selector
44
+ * Stops at wrapper
45
+ *
46
+ */
47
+ export declare const parentMatch: (target: null | HTMLElement, selector: string, wrapper?: HTMLElement) => HTMLElement | void;
48
+ /**
49
+ * Get the first or last item from an array
50
+ *
51
+ * > 0 - right (last)
52
+ * <= 0 - left (first)
53
+ *
54
+ */
55
+ export declare const getTail: (list: Array<any> | NodeList, direction?: number) => any;
56
+ /**
57
+ * Return true if an object is empty
58
+ *
59
+ */
60
+ export declare const isEmptyObject: (obj: object) => boolean;
61
+ /**
62
+ * Get the index of an element amongst sibling nodes of the same type
63
+ *
64
+ */
65
+ export declare const nodeIndex: (el: null | Element, amongst?: string) => number;
66
+ /**
67
+ * Set attributes of an element
68
+ *
69
+ */
70
+ export declare const setAttr: (el: Element, attrs: {
71
+ [key: string]: string | number | null;
72
+ }) => void;
73
+ /**
74
+ * Replace a node
75
+ */
76
+ export declare const replaceNode: (existing: Node, replacement: Node) => void;
@@ -0,0 +1,4 @@
1
+ declare module "svg-tag-names" {
2
+ const SvgTagNames: string[];
3
+ export default SvgTagNames;
4
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oiz/stzh-components",
3
- "version": "2.12.0-beta1",
3
+ "version": "2.12.0",
4
4
  "description": "STZH Web Components Library",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -1 +0,0 @@
1
- {"version":3,"names":["stzhChipCss","StzhChip","this","focusedByInput","onRootFocus","setFocus","onFocus","event","focusEvent","FocusEvent","view","window","bubbles","cancelable","element","dispatchEvent","stzhFocus","emit","component","originalEvent","onBlur","blurEvent","stzhBlur","onClick","stzhClick","onRemoveClick","stzhRemove","chip","focus","componentDidRender","requestAnimationFrame","setAttribute","analyticsId","text","innerText","renderInner","h","Fragment","class","icon","name","lines","ref","el","label","counter","render","classes","active","disabled","removable","type","size","variant","Chip","nonInteractive","href","Host","tabindex","removeLabel","removeAnalyticsId","target","a11yTabindex","a11yLabel","a11yDescribedby","stzhClampCss","StzhClamp","updateClamped","textCloneElement","beforeClamped","clamped","scrollHeight","clientHeight","stzhClamp","handleResize","debounceResize","cancelAnimationFrame","handleMutaton","update","handleExpandClick","async","expanded","waitForNextRender","stzhExpand","innerHTML","textElement","Promise","resolve","renderPromiseResolve","componentWillLoad","localization","stzhComponents","utils","fetchTranslations","componentDidLoad","mutationObserver","MutationObserver","observe","childList","subtree","connectedCallback","resizeObserver","ResizeObserver","disconnectedCallback","disconnect","style","toString","linesSmall","linesMedium","linesLarge","linesUltra","showExpandLink","showMore","showLess"],"sources":["src/components/stzh-chip/stzh-chip.scss?tag=stzh-chip&encapsulation=scoped","src/components/stzh-chip/stzh-chip.tsx","src/components/stzh-clamp/stzh-clamp.scss?tag=stzh-clamp","src/components/stzh-clamp/stzh-clamp.tsx"],"sourcesContent":[":host {\n --color: #{$colorPrimary};\n --height: 32px;\n --padding: 0 #{space('medium')};\n --border-color: #{$baseBorderColor};\n --border-radius: 16px;\n --remove-color: #{$baseLeadColor};\n --remove-border-radius: 24px;\n --background-color: #{$colorWhite};\n --icon-size: #{iconSize('small')};\n --icon-color: #{$colorPrimary};\n --icon-gap: #{space('xsmall')};\n --counter-color: #{$colorPrimary60op};\n --counter-gap: #{space('xsmall')};\n\n --hover-color: #{$colorPrimaryHover};\n --hover-border-color: var(--border-color);\n --hover-background-color: #{$colorPrimary8};\n --hover-remove-color: var(--hover-color);\n --hover-remove-background-color: var(--hover-background-color);\n --hover-icon-color: #{$colorPrimaryHover};\n --hover-counter-color: #{$colorPrimaryHover};\n\n display: inline-flex;\n\n @include highContrast() {\n --hover-color: Highlight;\n --hover-border-color: Highlight;\n --hover-background-color: Canvas;\n --hover-remove-color: Highlight;\n --hover-remove-background-color: Canvas;\n --hover-icon-color: Highlight;\n --hover-counter-color: Highlight;\n }\n\n &[size=\"large\"] {\n --height: 40px;\n --border-radius: 20px;\n --padding: 0 #{space('xlarge')};\n }\n\n &[size=\"small\"] {\n --height: 24px;\n --icon-size: #{iconSize('xsmall')};\n --counter-gap: #{space('xxsmall')};\n }\n\n &[variant=\"input\"] {\n --border-color: transparent;\n --background-color: #{$colorGrey5};\n\n --hover-border-color: transparent;\n }\n\n &[variant=\"tag\"] {\n --color: #{$baseColor};\n --icon-color: #{$baseColor};\n --counter-color: #{$baseColor};\n --border-color: transparent;\n --background-color: #{$colorBlack8};\n\n --hover-color: #{$baseColor};\n --hover-border-color: transparent;\n --hover-background-color: #{$colorBlack8};\n --hover-icon-color: #{$baseColor};\n --hover-counter-color: #{$baseColor};\n }\n\n &[variant=\"input\"][size=\"small\"] {\n --padding: 0 #{space('small')};\n --icon-gap: #{space('xxsmall')};\n }\n\n &[variant=\"tag\"][size=\"small\"] {\n --padding: 0 #{space('xsmall')};\n --icon-gap: #{space('xxsmall')};\n }\n\n &[type=\"secondary\"] {\n --color: #{$baseLeadColor};\n --counter-color: #{$colorGrey40};\n }\n\n &[type=\"important\"] {\n --color: #{$colorError};\n --icon-color: #{$colorError};\n --counter-color: #{$colorError};\n\n --hover-color: #{$colorError};\n --hover-icon-color: #{$colorError};\n --hover-counter-color: #{$colorError};\n\n @include highContrast() {\n --hover-color: Highlight;\n --hover-icon-color: Highlight;\n --hover-counter-color: Highlight;\n }\n }\n\n &[active]:not([active=\"false\"]) {\n --color: #{$colorWhite};\n --border-color: transparent;\n --remove-color: #{$colorWhite};\n --background-color: #{$colorPrimary};\n --icon-color: #{$colorWhite};\n --counter-color: #{$colorWhite56};\n\n --hover-color: #{$colorWhite};\n --hover-border-color: transparent;\n --hover-background-color: #{$colorPrimaryHover};\n --hover-remove-color: #{$colorWhite};\n --hover-remove-background-color: #{$colorPrimaryHover};\n --hover-icon-color: #{$colorWhite};\n --hover-counter-color: #{$colorWhite56};\n\n @include highContrast() {\n --color: SelectedItem;\n --border-color: SelectedItem;\n --remove-color: SelectedItem;\n --background-color: Canvas;\n --icon-color: SelectedItem;\n --counter-color: SelectedItem;\n\n --hover-color: Highlight;\n --hover-border-color: Highlight;\n --hover-background-color: Canvas;\n --hover-remove-color: Highlight;\n --hover-remove-background-color: Canvas;\n --hover-icon-color: Highlight;\n --hover-counter-color: Highlight;\n }\n }\n\n &[non-interactive]:not([non-interactive=\"false\"]) {\n --hover-color: var(--color);\n --hover-border-color: var(--border-color);\n --hover-background-color: var(--background-color);\n --hover-icon-color: var(--icon-color);\n --hover-counter-color: var(--counter-color);\n }\n\n &[disabled]:not([disabled=\"false\"]) {\n --color: #{$colorGrey25};\n --border-color: #{$baseBorderColor};\n --remove-color: #{$colorGrey13};\n --background-color: #{$colorWhite};\n --icon-color: #{$colorGrey25};\n --counter-color: #{$colorGrey25};\n\n --hover-color: #{$colorGrey25};\n --hover-border-color: #{$baseBorderColor};\n --hover-background-color: #{$colorWhite};\n --hover-remove-color: #{$colorGrey13};\n --hover-remove-background-color: transparent;\n --hover-icon-color: #{$colorGrey25};\n --hover-counter-color: #{$colorGrey25};\n }\n}\n\n:host ::slotted(stzh-icon),\n.stzh-chip__icon {\n --size: var(--icon-size);\n}\n\n.stzh-chip {\n position: relative;\n\n &__vhidden {\n @include visuallyhidden;\n }\n\n &__button {\n @include fontSize('micro');\n font-family: inherit;\n height: var(--height);\n display: flex;\n flex-direction: row;\n align-items: center;\n border-radius: var(--border-radius);\n padding: var(--padding);\n color: var(--color);\n appearance: none;\n border-width: 1px;\n border-style: solid;\n border-color: var(--border-color);\n background-color: var(--background-color);\n transition-duration: $baseTransitionAnimationSpeed;\n transition-property: color, background-color, border-color;\n text-decoration-line: none;\n\n &.is-button,\n &.is-link {\n cursor: pointer;\n }\n }\n\n &__label {\n text-align: left;\n }\n\n &__icon-wrapper {\n display: flex;\n color: var(--icon-color);\n transition: color $baseTransitionAnimationSpeed;\n flex-shrink: 0;\n\n &:not(:empty) {\n margin-right: var(--icon-gap);\n }\n }\n\n &__counter {\n display: flex;\n font-variant-numeric: tabular-nums;\n margin-left: var(--counter-gap);\n color: var(--counter-color);\n transition: color $baseTransitionAnimationSpeed;\n }\n\n &__remove {\n position: absolute;\n top: 0;\n right: 0;\n appearance: none;\n font-family: inherit;\n border: none;\n background: none;\n padding: 0;\n width: var(--height);\n height: var(--height);\n border-radius: var(--remove-border-radius);\n display: flex;\n justify-content: center;\n align-items: center;\n margin-left: space('xxsmall');\n color: var(--remove-color);\n transition-duration: $baseTransitionAnimationSpeed;\n transition-property: color, background-color, border-color;\n cursor: pointer;\n\n &:hover {\n color: var(--hover-remove-color);\n background-color: var(--hover-remove-background-color);\n }\n }\n\n &__remove-icon {\n --size: #{iconSize('xxsmall')};\n }\n\n &__button:hover,\n &__remove:hover + &__button {\n color: var(--hover-color);\n background-color: var(--hover-background-color);\n border-color: var(--hover-border-color);\n }\n\n &__button:hover &__counter,\n &__remove:hover + &__button &__counter {\n color: var(--hover-counter-color);\n }\n\n &__button:hover &__icon-wrapper,\n &__remove:hover + &__button &__icon-wrapper {\n color: var(--hover-icon-color);\n }\n\n /* Size */\n\n &--size-small &__button {\n @include fontSize('nano');\n }\n\n /* Removeable */\n\n &--is-removable &__button {\n padding-right: calc(var(--height) + #{space('xxsmall')});\n }\n\n /* Disabled */\n\n &--is-disabled &__button,\n &--is-disabled &__remove {\n cursor: not-allowed;\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Event,\n EventEmitter,\n Element,\n Method,\n Fragment\n} from \"@stencil/core\";\n\nimport {\n StzhChipClickEvent,\n StzhChipRemoveEvent,\n StzhChipFocusEvent,\n StzhChipBlurEvent\n} from \"../../index\";\n\n/**\n * @slot - Slot for label\n * @slot icon - Slot for icon\n */\n@Component({\n tag: \"stzh-chip\",\n styleUrl: \"stzh-chip.scss\",\n scoped: true\n})\nexport class StzhChip {\n /** Label */\n @Prop() label: string = \"\";\n\n /** Icon (use instead of icon slot) */\n @Prop() icon: string = \"\";\n\n /** `href` if the chip 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 /** Whether chip is not interactive */\n @Prop({ reflect: true }) nonInteractive: boolean = false;\n\n /** Whether remove button should be shown */\n @Prop({ reflect: true }) removable: boolean = false;\n\n /** Variant */\n @Prop({ reflect: true }) variant: \"tag\" | \"filter\" | \"input\" = \"tag\";\n\n /** Size */\n @Prop({ reflect: true }) size: \"default\" | \"small\" | \"large\" = \"default\";\n\n /** Type */\n @Prop({ reflect: true }) type: \"default\" | \"secondary\" | \"important\" = \"default\";\n\n /** Counter */\n @Prop() counter: string = \"\";\n\n /** Label of remove button for screenreaders */\n @Prop() removeLabel: string = \"\";\n\n /** Active */\n @Prop({ reflect: true }) active: boolean = false;\n\n /** Disabled */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Tabindex of link/button */\n @Prop({ attribute: \"a11y-tabindex\" }) a11yTabindex: 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 link/button */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: 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 /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the remove button element.\n * Default value will be taken from `removeLabel` prop.\n */\n @Prop() removeAnalyticsId: string;\n\n @Element() element: HTMLStzhChipElement;\n\n /** Focus menu item */\n @Method()\n async setFocus() {\n this.chip.focus();\n }\n\n /** Chip click event */\n @Event() stzhClick: EventEmitter<StzhChipClickEvent>;\n\n /** Chip remove event */\n @Event() stzhRemove: EventEmitter<StzhChipRemoveEvent>;\n\n /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhChipFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhChipBlurEvent>;\n\n private chip: HTMLButtonElement | HTMLAnchorElement;\n private text: HTMLElement;\n private focusedByInput: boolean = false;\n\n componentDidRender() {\n requestAnimationFrame(() => {\n this.chip.setAttribute(\"s-object-id\", this.analyticsId || this.text.innerText);\n });\n }\n\n private renderInner(): DocumentFragment {\n return (\n <Fragment>\n <div class=\"stzh-chip__icon-wrapper\">\n {this.icon ?\n <stzh-icon class=\"stzh-chip__icon\" name={this.icon}></stzh-icon>\n :\n <slot name=\"icon\"></slot>\n }\n </div>\n\n <stzh-clamp\n lines={1}\n class=\"stzh-chip__label\"\n ref={(el) => (this.text = el as HTMLElement)}\n >\n {this.label ? this.label : <slot></slot>}\n {this.counter &&\n <span class=\"stzh-chip__vhidden\">\n &nbsp;({this.counter})\n </span>\n }\n </stzh-clamp>\n\n {this.counter &&\n <div class=\"stzh-chip__counter\" aria-hidden=\"true\">\n {this.counter}\n </div>\n }\n </Fragment>\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-chip\",\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-chip\",\n originalEvent: event\n });\n }\n\n private onClick = (event: MouseEvent) => {\n this.stzhClick.emit({\n component: \"stzh-chip\",\n originalEvent: event\n });\n }\n\n private onRemoveClick = (event: MouseEvent) => {\n this.stzhRemove.emit({\n component: \"stzh-chip\",\n originalEvent: event\n });\n }\n\n render() {\n const classes = {\n \"stzh-chip\": true,\n \"stzh-chip--is-active\": this.active,\n \"stzh-chip--is-disabled\": this.disabled,\n \"stzh-chip--is-removable\": this.removable,\n \"stzh-chip--has-counter\": !!this.counter,\n [`stzh-chip--type-${this.type}`]: !!this.type,\n [`stzh-chip--size-${this.size}`]: !!this.size,\n [`stzh-chip--${this.variant}`]: !!this.variant\n };\n\n const Chip = this.nonInteractive ? \"div\" :\n this.href ? \"a\" : \"button\";\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n {this.removable &&\n <button\n class=\"stzh-chip__remove\"\n onClick={this.onRemoveClick}\n disabled={this.disabled}\n aria-label={this.removeLabel}\n type=\"button\"\n s-object-id={this.removeAnalyticsId || this.removeLabel}\n >\n <stzh-icon class=\"stzh-chip__remove-icon\" name=\"close\"></stzh-icon>\n </button>\n }\n\n {this.href ?\n <Chip\n ref={(el) => (this.chip = el as HTMLAnchorElement)}\n class={{\n \"stzh-chip__button\": true,\n \"is-button\": !this.nonInteractive && !this.href,\n \"is-link\": !this.nonInteractive && !!this.href\n }}\n href={this.disabled ? null : this.href}\n target={this.target}\n tabindex={this.a11yTabindex}\n aria-label={this.a11yLabel || null}\n aria-describedby={this.a11yDescribedby || null}\n onClick={this.onClick}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner()}\n </Chip>\n :\n <Chip\n ref={(el) => (this.chip = el as HTMLButtonElement)}\n class={{\n \"stzh-chip__button\": true,\n \"is-button\": !this.nonInteractive && !this.href,\n \"is-link\": !this.nonInteractive && !!this.href\n }}\n disabled={this.disabled}\n type=\"button\"\n tabindex={this.a11yTabindex}\n aria-label={this.a11yLabel || null}\n aria-describedby={this.a11yDescribedby || null}\n onClick={this.onClick}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner()}\n </Chip>\n }\n </div>\n </Host>\n );\n }\n}\n","/**\n * @prop --current-lines: Currently clamped lines number (can be used instead of `lines-{BREAKPOINT}` attributes)\n */\n\nstzh-clamp {\n @include host;\n --current-lines: var(--lines, 0);\n\n @include mq($from: small) {\n --current-lines: var(--lines-small, var(--lines, 0));\n }\n\n @include mq($from: medium) {\n --current-lines: var(--lines-medium, var(--lines-small, var(--lines, 0)));\n }\n\n @include mq($from: large) {\n --current-lines: var(--lines-large, var(--lines-medium, var(--lines-small, var(--lines, 0))));\n }\n\n @include mq($from: ultra) {\n --current-lines: var(--lines-ultra, var(--lines-large, var(--lines-medium, var(--lines-small, var(--lines, 0)))));\n }\n\n width: 100%;\n color: inherit;\n font-family: inherit;\n font-weight: inherit;\n font-style: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n.stzh-clamp {\n position: relative;\n\n &__text {\n @include wordWrap;\n display: -webkit-box;\n -webkit-box-orient: vertical;\n overflow: hidden;\n\n & > *:first-child {\n margin-top: 0 !important;\n }\n\n & > *:last-child {\n margin-bottom: 0 !important;\n }\n\n &.is-clone {\n position: absolute;\n visibility: hidden;\n opacity: 0;\n top: 0;\n left: 0;\n width: 100%;\n }\n }\n\n &__trigger {\n margin-top: space('xxsmall');\n }\n\n &--is-not-expanded &__text,\n &__text.is-clone {\n -webkit-line-clamp: var(--current-lines);\n line-clamp: var(--current-lines);\n }\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n Method,\n Element,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhClampClampEvent,\n StzhClampExpandEvent\n} from \"../../index\";\n\nimport { StzhClampLocalizedText } from \"./stzh-clamp.localization\";\n\n/**\n *\n */\n@Component({\n tag: \"stzh-clamp\",\n styleUrl: \"stzh-clamp.scss\"\n})\nexport class StzhClamp {\n /** Translation strings */\n @Prop() localization: StzhClampLocalizedText;\n\n /** Line number */\n @Prop() lines: number = 1;\n /** Line number above small breakpoint */\n @Prop() linesSmall: number = 0;\n /** Line number above medium breakpoint */\n @Prop() linesMedium: number = 0;\n /** Line number above large breakpoint */\n @Prop() linesLarge: number = 0;\n /** Line number above ultra breakpoint */\n @Prop() linesUltra: number = 0;\n\n /** Whether expand link is shown */\n @Prop() showExpandLink: boolean = false;\n\n /** Whether clamping is expanded */\n @Prop({ mutable: true, reflect: true }) expanded: boolean = false;\n\n /** Whether the text is currently clamped (readonly) */\n @Prop({ mutable: true, reflect: true }) clamped: boolean = false;\n\n @Element() element: HTMLStzhClampElement;\n\n /** Event when clamping state changed */\n @Event() stzhClamp: EventEmitter<StzhClampClampEvent>;\n\n /** Event when expanding state changed */\n @Event() stzhExpand: EventEmitter<StzhClampExpandEvent>;\n\n @Method()\n async update() {\n this.textCloneElement.innerHTML = this.textElement.innerHTML;\n this.updateClamped();\n }\n\n private textElement: HTMLElement;\n private textCloneElement: HTMLElement;\n\n private debounceResize: number;\n private resizeObserver: ResizeObserver;\n private mutationObserver: MutationObserver;\n private renderPromiseResolve: (value?: unknown) => void;\n\n private updateClamped = () => {\n if (!this.textCloneElement) {\n return;\n }\n\n const beforeClamped = this.clamped;\n this.clamped = this.textCloneElement.scrollHeight > this.textCloneElement.clientHeight;\n\n if (beforeClamped !== this.clamped) {\n this.stzhClamp.emit({\n component: \"stzh-clamp\",\n clamped: this.clamped\n });\n }\n }\n\n private handleResize = () => {\n if (this.debounceResize) {\n window.cancelAnimationFrame(this.debounceResize);\n }\n\n this.debounceResize = requestAnimationFrame(this.updateClamped);\n }\n\n private handleMutaton = () => {\n this.update();\n }\n\n private handleExpandClick = async () => {\n this.expanded = !this.expanded;\n await this.waitForNextRender();\n\n this.stzhExpand.emit({\n component: \"stzh-clamp\",\n expanded: this.expanded\n });\n }\n\n waitForNextRender() {\n return new Promise(resolve => this.renderPromiseResolve = resolve);\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"clamp\");\n }\n }\n\n componentDidLoad() {\n this.mutationObserver = new MutationObserver(this.handleMutaton);\n this.mutationObserver.observe(this.textElement, {\n childList: true,\n subtree: true,\n });\n }\n\n componentDidRender() {\n if (this.renderPromiseResolve) {\n this.renderPromiseResolve();\n }\n\n this.update();\n }\n\n connectedCallback() {\n this.resizeObserver = new ResizeObserver(this.handleResize);\n this.resizeObserver.observe(this.element);\n }\n\n disconnectedCallback() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n\n if (this.mutationObserver) {\n this.mutationObserver.disconnect();\n }\n }\n\n render() {\n const classes = {\n \"stzh-clamp\": true,\n \"stzh-clamp--is-not-expanded\": !this.expanded\n };\n\n return (\n <Host\n style={{\n '--lines': this.lines ? this.lines.toString() : null,\n '--lines-small': this.linesSmall ? this.linesSmall.toString() : null,\n '--lines-medium': this.linesMedium ? this.linesMedium.toString() : null,\n '--lines-large': this.linesLarge ? this.linesLarge.toString() : null,\n '--lines-ultra': this.linesUltra ? this.linesUltra.toString() : null,\n }}\n >\n <div class={classes}>\n <div\n ref={(el) => (this.textElement = el as HTMLDivElement)}\n class=\"stzh-clamp__text\"\n >\n <slot></slot>\n </div>\n\n <div\n ref={(el) => (this.textCloneElement = el as HTMLDivElement)}\n class=\"stzh-clamp__text is-clone\"\n aria-hidden=\"true\"\n ></div>\n\n {this.showExpandLink && this.clamped &&\n <stzh-link\n class=\"stzh-clamp__trigger\"\n a11yTabindex=\"-1\"\n aria-hidden=\"true\"\n onClick={this.handleExpandClick}\n >\n {!this.expanded ? this.localization.showMore : this.localization.showLess}\n </stzh-link>\n }\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["stzhSkiplinkCss","StzhSkiplink","this","focusedByInput","onRootFocus","link","focus","onFocus","event","focusEvent","FocusEvent","view","window","bubbles","cancelable","element","dispatchEvent","stzhFocus","emit","component","originalEvent","onBlur","blurEvent","stzhBlur","focusinHandler","focused","focusoutHandler","componentDidRender","requestAnimationFrame","setAttribute","analyticsId","label","text","innerText","render","h","Host","tabindex","ref","el","class","href","accessKey","linkAccesskey","title","linkTitle"],"sources":["src/components/stzh-skiplink/stzh-skiplink.scss?tag=stzh-skiplink&encapsulation=scoped","src/components/stzh-skiplink/stzh-skiplink.tsx"],"sourcesContent":[":host(:not([focused])) {\n // reset any margin or padding (e.g. from stzh-vspace/hspace components)\n // so the host element won't take up any space when link inside is not focuseds\n padding: 0 !important;\n margin: 0 !important;\n}\n\n.stzh-skiplink {\n @include visuallyhiddenFocusable;\n display: inline-block;\n right: 0;\n top: 0;\n white-space: nowrap;\n\tpadding: space('large') space('xxlarge');\n\tborder: solid 1px $colorGrey40;\n\tborder-radius: 2px;\n\tbackground: $colorWhite;\n color: $colorPrimary;\n\ttransition: color $baseTransitionAnimationSpeed;\n text-decoration-line: none;\n\n\t&:hover {\n\t\tcolor: $colorPrimaryHover;\n\t}\n}\n","import {\n Component,\n Host,\n Listen,\n h,\n Prop,\n State,\n Event,\n EventEmitter,\n Element,\n} from \"@stencil/core\";\n\nimport {\n StzhSkiplinkFocusEvent,\n StzhSkiplinkBlurEvent,\n} from \"../../index\";\n\n/**\n * @slot - Slot for any text content\n */\n@Component({\n tag: \"stzh-skiplink\",\n styleUrl: \"stzh-skiplink.scss\",\n scoped: true\n})\nexport class StzhSkiplink {\n /** Label */\n @Prop() label: string = \"\";\n\n /** href for linking to e.g. id of an element to skip to */\n @Prop() href: string;\n\n /** Access key of link (usually a number e.g. 1) */\n @Prop() linkAccesskey: string;\n\n /** Link title for description e.g. how to use skiplink with access key ([ALT + 1]) */\n @Prop() linkTitle: string;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the link element.\n * Default value will be taken from `label` prop or default slot.\n */\n @Prop() analyticsId: string;\n\n /** Whether the skiplink is currently focused */\n @State() focused: boolean = false;\n\n /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhSkiplinkFocusEvent>;\n\n /** Blur event */\n @Event() stzhBlur: EventEmitter<StzhSkiplinkBlurEvent>;\n\n @Element() element: HTMLStzhSkiplinkElement;\n\n @Listen('focusin')\n focusinHandler() {\n this.focused = true;\n }\n\n @Listen('focusout')\n focusoutHandler() {\n this.focused = false;\n }\n\n private link: HTMLAnchorElement;\n private text: HTMLDivElement;\n private focusedByInput: boolean = false;\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.link.focus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n // dispatch native focus event\n const focusEvent = new FocusEvent(\"focus\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n\n // dispatch own focus event for updating flyingfocus position correctly\n this.stzhFocus.emit({\n component: \"stzh-skiplink\",\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\n this.stzhBlur.emit({\n component: \"stzh-skiplink\",\n originalEvent: event\n });\n }\n\n componentDidRender() {\n requestAnimationFrame(() => {\n this.link.setAttribute(\"s-object-id\", this.analyticsId || this.label || this.text.innerText);\n });\n }\n\n render() {\n return (\n <Host focused={this.focused} tabindex=\"-1\" onFocus={this.onRootFocus}>\n <a\n ref={(el) => (this.link = el as HTMLAnchorElement)}\n class=\"stzh-skiplink\"\n href={this.href}\n accessKey={this.linkAccesskey}\n title={this.linkTitle}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n <div ref={(el) => (this.text = el as HTMLDivElement)}>\n {this.label ? this.label : <slot></slot>}\n </div>\n </a>\n </Host>\n );\n }\n}\n"],"mappings":"gEAAA,MAAMA,EAAkB,+xD,MCyBXC,EAAY,M,iGA2CfC,KAAAC,eAA0B,MAE1BD,KAAAE,YAAc,KACpB,IAAKF,KAAKC,eAAgB,CACxBD,KAAKG,KAAKC,O,CAGZJ,KAAKC,eAAiB,KAAK,EAGrBD,KAAAK,QAAWC,IACjBN,KAAKC,eAAiB,KAGtB,MAAMM,EAAa,IAAIC,WAAW,QAAS,CACzCC,KAAMC,OACNC,QAAS,MACTC,WAAY,QAGdZ,KAAKa,QAAQC,cAAcP,GAG3BP,KAAKe,UAAUC,KAAK,CAClBC,UAAW,gBACXC,cAAeZ,GACf,EAGIN,KAAAmB,OAAUb,IAChB,MAAMc,EAAY,IAAIZ,WAAW,OAAQ,CACvCC,KAAMC,OACNC,QAAS,MACTC,WAAY,QAGdZ,KAAKa,QAAQC,cAAcM,GAE3BpB,KAAKqB,SAASL,KAAK,CACjBC,UAAW,gBACXC,cAAeZ,GACf,E,WAlFoB,G,kHAmBI,K,CAW5B,cAAAgB,GACEtB,KAAKuB,QAAU,I,CAIjB,eAAAC,GACExB,KAAKuB,QAAU,K,CAiDjB,kBAAAE,GACEC,uBAAsB,KACpB1B,KAAKG,KAAKwB,aAAa,cAAe3B,KAAK4B,aAAe5B,KAAK6B,OAAS7B,KAAK8B,KAAKC,UAAU,G,CAIhG,MAAAC,GACE,OACEC,EAACC,EAAI,CAACX,QAASvB,KAAKuB,QAASY,SAAS,KAAK9B,QAASL,KAAKE,aACvD+B,EAAA,KACEG,IAAMC,GAAQrC,KAAKG,KAAOkC,EAC1BC,MAAM,gBACNC,KAAMvC,KAAKuC,KACXC,UAAWxC,KAAKyC,cAChBC,MAAO1C,KAAK2C,UACZtC,QAASL,KAAKK,QACdc,OAAQnB,KAAKmB,QAEbc,EAAA,OAAKG,IAAMC,GAAQrC,KAAK8B,KAAOO,GAC5BrC,KAAK6B,MAAQ7B,KAAK6B,MAAQI,EAAA,e"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["stzhSkiplinkCss","StzhSkiplink","exports","this","focusedByInput","onRootFocus","_this","link","focus","onFocus","event","focusEvent","FocusEvent","view","window","bubbles","cancelable","element","dispatchEvent","stzhFocus","emit","component","originalEvent","onBlur","blurEvent","stzhBlur","class_1","prototype","focusinHandler","focused","focusoutHandler","componentDidRender","requestAnimationFrame","setAttribute","analyticsId","label","text","innerText","render","h","Host","tabindex","ref","el","class","href","accessKey","linkAccesskey","title","linkTitle"],"sources":["src/components/stzh-skiplink/stzh-skiplink.scss?tag=stzh-skiplink&encapsulation=scoped","src/components/stzh-skiplink/stzh-skiplink.tsx"],"sourcesContent":[":host(:not([focused])) {\n // reset any margin or padding (e.g. from stzh-vspace/hspace components)\n // so the host element won't take up any space when link inside is not focuseds\n padding: 0 !important;\n margin: 0 !important;\n}\n\n.stzh-skiplink {\n @include visuallyhiddenFocusable;\n display: inline-block;\n right: 0;\n top: 0;\n white-space: nowrap;\n\tpadding: space('large') space('xxlarge');\n\tborder: solid 1px $colorGrey40;\n\tborder-radius: 2px;\n\tbackground: $colorWhite;\n color: $colorPrimary;\n\ttransition: color $baseTransitionAnimationSpeed;\n text-decoration-line: none;\n\n\t&:hover {\n\t\tcolor: $colorPrimaryHover;\n\t}\n}\n","import {\n Component,\n Host,\n Listen,\n h,\n Prop,\n State,\n Event,\n EventEmitter,\n Element,\n} from \"@stencil/core\";\n\nimport {\n StzhSkiplinkFocusEvent,\n StzhSkiplinkBlurEvent,\n} from \"../../index\";\n\n/**\n * @slot - Slot for any text content\n */\n@Component({\n tag: \"stzh-skiplink\",\n styleUrl: \"stzh-skiplink.scss\",\n scoped: true\n})\nexport class StzhSkiplink {\n /** Label */\n @Prop() label: string = \"\";\n\n /** href for linking to e.g. id of an element to skip to */\n @Prop() href: string;\n\n /** Access key of link (usually a number e.g. 1) */\n @Prop() linkAccesskey: string;\n\n /** Link title for description e.g. how to use skiplink with access key ([ALT + 1]) */\n @Prop() linkTitle: string;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the link element.\n * Default value will be taken from `label` prop or default slot.\n */\n @Prop() analyticsId: string;\n\n /** Whether the skiplink is currently focused */\n @State() focused: boolean = false;\n\n /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhSkiplinkFocusEvent>;\n\n /** Blur event */\n @Event() stzhBlur: EventEmitter<StzhSkiplinkBlurEvent>;\n\n @Element() element: HTMLStzhSkiplinkElement;\n\n @Listen('focusin')\n focusinHandler() {\n this.focused = true;\n }\n\n @Listen('focusout')\n focusoutHandler() {\n this.focused = false;\n }\n\n private link: HTMLAnchorElement;\n private text: HTMLDivElement;\n private focusedByInput: boolean = false;\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.link.focus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n // dispatch native focus event\n const focusEvent = new FocusEvent(\"focus\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n\n // dispatch own focus event for updating flyingfocus position correctly\n this.stzhFocus.emit({\n component: \"stzh-skiplink\",\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\n this.stzhBlur.emit({\n component: \"stzh-skiplink\",\n originalEvent: event\n });\n }\n\n componentDidRender() {\n requestAnimationFrame(() => {\n this.link.setAttribute(\"s-object-id\", this.analyticsId || this.label || this.text.innerText);\n });\n }\n\n render() {\n return (\n <Host focused={this.focused} tabindex=\"-1\" onFocus={this.onRootFocus}>\n <a\n ref={(el) => (this.link = el as HTMLAnchorElement)}\n class=\"stzh-skiplink\"\n href={this.href}\n accessKey={this.linkAccesskey}\n title={this.linkTitle}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n <div ref={(el) => (this.text = el as HTMLDivElement)}>\n {this.label ? this.label : <slot></slot>}\n </div>\n </a>\n </Host>\n );\n }\n}\n"],"mappings":"kKAAA,IAAMA,EAAkB,+xD,ICyBXC,EAAYC,EAAA,2B,2GA2CfC,KAAAC,eAA0B,MAE1BD,KAAAE,YAAc,WACpB,IAAKC,EAAKF,eAAgB,CACxBE,EAAKC,KAAKC,O,CAGZF,EAAKF,eAAiB,K,EAGhBD,KAAAM,QAAU,SAACC,GACjBJ,EAAKF,eAAiB,KAGtB,IAAMO,EAAa,IAAIC,WAAW,QAAS,CACzCC,KAAMC,OACNC,QAAS,MACTC,WAAY,QAGdV,EAAKW,QAAQC,cAAcP,GAG3BL,EAAKa,UAAUC,KAAK,CAClBC,UAAW,gBACXC,cAAeZ,G,EAIXP,KAAAoB,OAAS,SAACb,GAChB,IAAMc,EAAY,IAAIZ,WAAW,OAAQ,CACvCC,KAAMC,OACNC,QAAS,MACTC,WAAY,QAGdV,EAAKW,QAAQC,cAAcM,GAE3BlB,EAAKmB,SAASL,KAAK,CACjBC,UAAW,gBACXC,cAAeZ,G,aAjFK,G,kHAmBI,K,CAW5BgB,EAAAC,UAAAC,eAAA,WACEzB,KAAK0B,QAAU,I,EAIjBH,EAAAC,UAAAG,gBAAA,WACE3B,KAAK0B,QAAU,K,EAiDjBH,EAAAC,UAAAI,mBAAA,eAAAzB,EAAAH,KACE6B,uBAAsB,WACpB1B,EAAKC,KAAK0B,aAAa,cAAe3B,EAAK4B,aAAe5B,EAAK6B,OAAS7B,EAAK8B,KAAKC,U,KAItFX,EAAAC,UAAAW,OAAA,eAAAhC,EAAAH,KACE,OACEoC,EAACC,EAAI,CAACX,QAAS1B,KAAK0B,QAASY,SAAS,KAAKhC,QAASN,KAAKE,aACvDkC,EAAA,KACEG,IAAK,SAACC,GAAE,OAAMrC,EAAKC,KAAOoC,CAAlB,EACRC,MAAM,gBACNC,KAAM1C,KAAK0C,KACXC,UAAW3C,KAAK4C,cAChBC,MAAO7C,KAAK8C,UACZxC,QAASN,KAAKM,QACdc,OAAQpB,KAAKoB,QAEbgB,EAAA,OAAKG,IAAK,SAACC,GAAE,OAAMrC,EAAK8B,KAAOO,CAAlB,GACVxC,KAAKgC,MAAQhC,KAAKgC,MAAQI,EAAA,e,4HA1Gd,I"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["stzhMenuCss","StzhMenu","exports","class_1","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_2","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","/**\n * @prop --height: Height of item\n * @prop --icon-size: Size of icon next to item\n * @prop --color: Color of item\n * @prop --background-color: Background color of item\n * @prop --hover-color: Hover color of item\n * @prop --hover-background-color: Hover background color of item\n *\n * @prop --stzh-menu-item-height: **Global**: Height of items\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":"4sDAAA,IAAMA,EAAc,+jC,ICcPC,EAAQC,EAAA,uB,wBACnBC,EAAAC,UAAAC,OAAA,WACE,OACEC,EAACC,EAAI,CAACC,KAAK,QACTF,EAAA,OAAKG,MAAM,aACTH,EAAA,c,WALW,I,UCdrB,IAAMI,EAAkB,g5G,IC4BXC,EAAYT,EAAA,4B,2GAuDfU,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,EAAQ,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,EAAQ3C,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,EAAI,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,4HAhKL,I"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["stzhLinkCss","StzhLink","exports","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","stzhComponents","utils","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":["/**\n * @prop --color: Color of link\n * @prop --hover-color: Hover color of link\n * @prop --icon-size: Size of icon next to link\n * @prop --text-decoration: Text decoration of link\n * @prop --hover-text-decoration: Hover text decoration of link\n *\n * @prop --stzh-link-color: **Global**: Color of link\n * @prop --stzh-link-hover-color: **Global**: Hover color of link\n */\n\n: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 { 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 window.stzhComponents.utils.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":"4sDAAA,IAAMA,EAAc,40L,IC6BPC,EAAQC,EAAA,uB,2GAyGXC,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,YACXC,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,YACXC,cAAeZ,G,wCAxII,G,kBAGmC,O,UAGO,U,UAG1C,G,+BAME,G,kCAMqB,S,aAGc,U,eAGd,M,eAGkD,U,WAGxE,G,eAGmE,U,gBAG5C,M,mBAGW,O,cAGb,M,YAGF,M,cAGE,M,WAGrB,G,2EAS2C,G,2IAyB7DgB,EAAAC,UAAAnB,SAAN,W,qFACEJ,KAAKwB,KAAKC,Q,iBAmDJH,EAAAC,UAAAG,WAAA,WACN,OACEC,EAAA,OAAKC,MAAM,2BACR5B,KAAK6B,KACJF,EAAA,aAAWC,MAAM,kBAAkBE,KAAM9B,KAAK6B,OAE9CF,EAAA,QAAMG,KAAK,UAEX9B,KAAK+B,OAAS/B,KAAKgC,aACnBL,EAAA,cAAYC,MAAM,mBAAmBK,MAAOjC,KAAK+B,MAAOG,KAAMlC,KAAKmC,Y,EAMnEb,EAAAC,UAAAa,cAAA,eAAAjC,EAAAH,KACN,OACE2B,EAAA,OAAKC,MAAM,mBACR5B,KAAKqC,KAAOrC,KAAKqC,IAAIC,SAAS,aAAeX,EAAA,OAAKC,MAAM,sBAAsB5B,KAAKuC,aAAaC,SAASC,mBACzGzC,KAAK0C,UAAYf,EAAA,OAAKC,MAAM,sBAAsB5B,KAAKuC,aAAaC,SAASG,mBAC9EhB,EAAA,OAAKiB,IAAK,SAACC,GAAE,OAAM1C,EAAK2C,KAAOD,CAAlB,GAA0C7C,KAAKiC,MAAQjC,KAAKiC,MAAQN,EAAA,c,EAK/EL,EAAAC,UAAAwB,YAAA,SAAYC,GAClB,OACErB,EAACsB,EAAQ,KACPtB,EAAA,OAAKC,MAAM,oBACR5B,KAAKkD,eAAiB,QAAUlD,KAAK0B,aACrC1B,KAAKoC,gBACLpC,KAAKkD,eAAiB,SAAWlD,KAAK0B,eAEvC1B,KAAK+B,OAAS/B,KAAKgC,cAAgBgB,GACnCrB,EAAA,cAAYC,MAAM,mBAAmBK,MAAOjC,KAAK+B,MAAOG,KAAMlC,KAAKmC,Y,EAMrEb,EAAAC,UAAA4B,kBAAN,W,uHACOnD,KAAKuC,aAAN,YACFa,EAAApD,KAAoB,SAAMU,OAAO2C,eAAeC,MAAMC,kBAAkBvD,KAAKa,QAAS,S,OAAtFuC,EAAKb,aAAeiB,EAAAC,O,mCAIxBnC,EAAAC,UAAAmC,mBAAA,eAAAvD,EAAAH,KACE2D,uBAAsB,WACpBxD,EAAKqB,KAAKoC,aAAa,cAAezD,EAAK0D,aAAe1D,EAAK2C,KAAKgB,U,KAIxExC,EAAAC,UAAAwC,OAAA,W,MAAA,IAAA5D,EAAAH,KACE,IAAMgD,EAAWgB,EAAQhE,KAAKa,QAAS,WAAab,KAAK6B,KACzD,IAAMoC,GAAOb,EAAA,CACX,YAAa,KACb,sBAAuBJ,EACvB,2BAA4BhD,KAAKkE,SACjC,yBAA0BlE,KAAK+B,MAC/B,0BAA2B/B,KAAKmE,UAChC,yBAA0BnE,KAAKoE,SAC/B,uBAAwBpE,KAAKqE,QAC7BjB,EAAC,6BAAAkB,OAA6BtE,KAAKuE,kBAAoBvE,KAAKuE,cAC5DnB,EAAC,oBAAAkB,OAAoBtE,KAAKwE,cAAgBxE,KAAKwE,UAC/CpB,EAAC,mBAAAkB,OAAmBtE,KAAKyE,SAAWzE,KAAKyE,KACzCrB,EAAC,cAAAkB,OAActE,KAAK0E,YAAc1E,KAAK0E,Q,GAGzC,OACE/C,EAACgD,EAAI,CAACC,SAAU5E,KAAKoE,SAAW,KAAO,KAAM/D,QAASL,KAAKE,aACxDF,KAAK6E,KACJlD,EAAA,KACEiB,IAAK,SAACC,GAAE,OAAM1C,EAAKqB,KAAOqB,CAAlB,EACRgC,KAAM7E,KAAKoE,SAAW,KAAOpE,KAAK6E,KAClCnC,SAAU1C,KAAK0C,SACfL,IAAKrC,KAAKqC,IACVyC,OAAQ9E,KAAK8E,OACblD,MAAOqC,EACPc,UAAW/E,KAAKgF,cAChBJ,SAAU5E,KAAKiF,aAAY,aACfjF,KAAKkF,WAAa,KAAI,mBAChBlF,KAAKmF,iBAAmB,KAAI,uBACxBnF,KAAKoF,eAAiB,YACvCpF,KAAKoF,aAAe,OAAS,QAAW,KAAI,uBAC3BpF,KAAKqF,eAAiB,YACvCrF,KAAKqF,aAAe,OAAS,QAAW,KAAI,gBAClCrF,KAAKsF,cAAgB,KACpCjF,QAASL,KAAKK,QACdc,OAAQnB,KAAKmB,QAEZnB,KAAK+C,YAAYC,IAGpBrB,EAAA,UACEiB,IAAK,SAACC,GAAE,OAAM1C,EAAKqB,KAAOqB,CAAlB,EACRjB,MAAOqC,EACP/B,KAAMlC,KAAKkC,KACXkC,SAAUpE,KAAKoE,SACfW,UAAW/E,KAAKgF,cAChBJ,SAAU5E,KAAKiF,aAAY,aACfjF,KAAKkF,WAAa,KAAI,mBAChBlF,KAAKmF,iBAAmB,KAAI,uBACxBnF,KAAKoF,eAAiB,YACvCpF,KAAKoF,aAAe,OAAS,QAAW,KAAI,uBAC3BpF,KAAKqF,eAAiB,YACvCrF,KAAKqF,aAAe,OAAS,QAAW,KAAI,gBAClCrF,KAAKsF,cAAgB,KACpCjF,QAASL,KAAKK,QACdc,OAAQnB,KAAKmB,QAEZnB,KAAK+C,YAAYC,I,4HA/PT,I"}