@oiz/stzh-components 3.0.0-beta3 → 3.0.0-beta4

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 (258) hide show
  1. package/dist/cjs/{app-globals-0cbebaa1.js → app-globals-5897b76e.js} +39 -14
  2. package/dist/cjs/app-globals-5897b76e.js.map +1 -0
  3. package/dist/cjs/index.cjs.js.map +1 -1
  4. package/dist/cjs/loader.cjs.js +2 -2
  5. package/dist/cjs/stzh-appointments.cjs.entry.js +11 -8
  6. package/dist/cjs/stzh-appointments.cjs.entry.js.map +1 -1
  7. package/dist/cjs/stzh-badge_3.cjs.entry.js +1 -1
  8. package/dist/cjs/stzh-badge_3.cjs.entry.js.map +1 -1
  9. package/dist/cjs/stzh-calendar.cjs.entry.js +1 -1
  10. package/dist/cjs/stzh-calendar.cjs.entry.js.map +1 -1
  11. package/dist/cjs/stzh-card_3.cjs.entry.js +16 -19
  12. package/dist/cjs/stzh-card_3.cjs.entry.js.map +1 -1
  13. package/dist/cjs/stzh-chip.cjs.entry.js +2 -2
  14. package/dist/cjs/stzh-chip.cjs.entry.js.map +1 -1
  15. package/dist/cjs/stzh-components.cjs.js +2 -2
  16. package/dist/cjs/stzh-content.cjs.entry.js +1 -1
  17. package/dist/cjs/stzh-content.cjs.entry.js.map +1 -1
  18. package/dist/cjs/stzh-cspace.cjs.entry.js +1 -1
  19. package/dist/cjs/stzh-cspace.cjs.entry.js.map +1 -1
  20. package/dist/cjs/stzh-cta.cjs.entry.js +1 -1
  21. package/dist/cjs/stzh-cta.cjs.entry.js.map +1 -1
  22. package/dist/cjs/stzh-datamessagelist-item.cjs.entry.js +9 -4
  23. package/dist/cjs/stzh-datamessagelist-item.cjs.entry.js.map +1 -1
  24. package/dist/cjs/stzh-datamessagelist.cjs.entry.js +1 -1
  25. package/dist/cjs/stzh-datamessagelist.cjs.entry.js.map +1 -1
  26. package/dist/cjs/stzh-datepicker_3.cjs.entry.js +1 -1
  27. package/dist/cjs/stzh-datepicker_3.cjs.entry.js.map +1 -1
  28. package/dist/cjs/stzh-dropdown.cjs.entry.js +8 -2
  29. package/dist/cjs/stzh-dropdown.cjs.entry.js.map +1 -1
  30. package/dist/cjs/stzh-header.cjs.entry.js +15 -5
  31. package/dist/cjs/stzh-header.cjs.entry.js.map +1 -1
  32. package/dist/cjs/stzh-iframe.cjs.entry.js +11 -3
  33. package/dist/cjs/stzh-iframe.cjs.entry.js.map +1 -1
  34. package/dist/cjs/stzh-imagecomparison.cjs.entry.js +2 -2
  35. package/dist/cjs/stzh-imagecomparison.cjs.entry.js.map +1 -1
  36. package/dist/cjs/stzh-link.cjs.entry.js +1 -1
  37. package/dist/cjs/stzh-link.cjs.entry.js.map +1 -1
  38. package/dist/cjs/stzh-search.cjs.entry.js +20 -3
  39. package/dist/cjs/stzh-search.cjs.entry.js.map +1 -1
  40. package/dist/cjs/stzh-skin-portal-mitwirken.cjs.entry.js +1 -1
  41. package/dist/cjs/stzh-skin-portal-mitwirken.cjs.entry.js.map +1 -1
  42. package/dist/collection/assets/i18n/de.json +2 -2
  43. package/dist/collection/assets/i18n/en.json +2 -2
  44. package/dist/collection/components/stzh-appointments/stzh-appointments.css +99 -19
  45. package/dist/collection/components/stzh-appointments/stzh-appointments.js +9 -7
  46. package/dist/collection/components/stzh-appointments/stzh-appointments.js.map +1 -1
  47. package/dist/collection/components/stzh-appointments/stzh-appointments.stories.js +7 -1
  48. package/dist/collection/components/stzh-button/stzh-button.css +10 -10
  49. package/dist/collection/components/stzh-calendar/stzh-calendar.css +0 -2
  50. package/dist/collection/components/stzh-card/stzh-card.css +0 -27
  51. package/dist/collection/components/stzh-card/stzh-card.js +12 -94
  52. package/dist/collection/components/stzh-card/stzh-card.js.map +1 -1
  53. package/dist/collection/components/stzh-card/stzh-card.stories.js +0 -17
  54. package/dist/collection/components/stzh-chip/stzh-chip.css +22 -10
  55. package/dist/collection/components/stzh-chip/stzh-chip.js +2 -2
  56. package/dist/collection/components/stzh-chip/stzh-chip.js.map +1 -1
  57. package/dist/collection/components/stzh-chipselect/stzh-chipselect.js +3 -1
  58. package/dist/collection/components/stzh-chipselect/stzh-chipselect.js.map +1 -1
  59. package/dist/collection/components/stzh-content/stzh-content.css +3 -3
  60. package/dist/collection/components/stzh-cspace/stzh-cspace.css +36 -0
  61. package/dist/collection/components/stzh-cta/stzh-cta.css +22 -36
  62. package/dist/collection/components/stzh-datamessagelist/stzh-datamessagelist.css +0 -5
  63. package/dist/collection/components/stzh-datamessagelist/stzh-datamessagelist.stories.js +26 -0
  64. package/dist/collection/components/stzh-datamessagelist-item/stzh-datamessagelist-item.css +26 -16
  65. package/dist/collection/components/stzh-datamessagelist-item/stzh-datamessagelist-item.js +26 -3
  66. package/dist/collection/components/stzh-datamessagelist-item/stzh-datamessagelist-item.js.map +1 -1
  67. package/dist/collection/components/stzh-datepicker/stzh-datepicker.css +18 -3
  68. package/dist/collection/components/stzh-dropdown/stzh-dropdown.css +288 -40
  69. package/dist/collection/components/stzh-dropdown/stzh-dropdown.js +108 -4
  70. package/dist/collection/components/stzh-dropdown/stzh-dropdown.js.map +1 -1
  71. package/dist/collection/components/stzh-header/stzh-header.css +15 -13
  72. package/dist/collection/components/stzh-header/stzh-header.js +19 -6
  73. package/dist/collection/components/stzh-header/stzh-header.js.map +1 -1
  74. package/dist/collection/components/stzh-iframe/stzh-iframe.js +160 -3
  75. package/dist/collection/components/stzh-iframe/stzh-iframe.js.map +1 -1
  76. package/dist/collection/components/stzh-imagecomparison/stzh-imagecomparison.css +12 -17
  77. package/dist/collection/components/stzh-imagecomparison/stzh-imagecomparison.js +1 -1
  78. package/dist/collection/components/stzh-imagecomparison/stzh-imagecomparison.js.map +1 -1
  79. package/dist/collection/components/stzh-link/stzh-link.js +19 -19
  80. package/dist/collection/components/stzh-link/stzh-link.js.map +1 -1
  81. package/dist/collection/components/stzh-search/stzh-search.css +70 -0
  82. package/dist/collection/components/stzh-search/stzh-search.js +72 -3
  83. package/dist/collection/components/stzh-search/stzh-search.js.map +1 -1
  84. package/dist/collection/components/stzh-search/stzh-search.stories.js +3 -0
  85. package/dist/collection/components/stzh-skin-portal-mitwirken/stzh-skin-portal-mitwirken.css +7 -7
  86. package/dist/collection/global/js/helpers/autofocus.js +36 -11
  87. package/dist/collection/global/js/script.js +2 -0
  88. package/dist/collection/index.js.map +1 -1
  89. package/dist/components/index.js +38 -13
  90. package/dist/components/index.js.map +1 -1
  91. package/dist/components/index2.js.map +1 -1
  92. package/dist/components/stzh-appointments.js +11 -9
  93. package/dist/components/stzh-appointments.js.map +1 -1
  94. package/dist/components/stzh-button2.js +1 -1
  95. package/dist/components/stzh-button2.js.map +1 -1
  96. package/dist/components/stzh-calendar2.js +1 -1
  97. package/dist/components/stzh-calendar2.js.map +1 -1
  98. package/dist/components/stzh-card2.js +13 -22
  99. package/dist/components/stzh-card2.js.map +1 -1
  100. package/dist/components/stzh-chip2.js +3 -3
  101. package/dist/components/stzh-chip2.js.map +1 -1
  102. package/dist/components/stzh-chipselect2.js +3 -1
  103. package/dist/components/stzh-chipselect2.js.map +1 -1
  104. package/dist/components/stzh-content.js +1 -1
  105. package/dist/components/stzh-content.js.map +1 -1
  106. package/dist/components/stzh-cspace.js +1 -1
  107. package/dist/components/stzh-cspace.js.map +1 -1
  108. package/dist/components/stzh-cta.js +1 -1
  109. package/dist/components/stzh-cta.js.map +1 -1
  110. package/dist/components/stzh-datamessagelist-item.js +10 -4
  111. package/dist/components/stzh-datamessagelist-item.js.map +1 -1
  112. package/dist/components/stzh-datamessagelist.js +1 -1
  113. package/dist/components/stzh-datamessagelist.js.map +1 -1
  114. package/dist/components/stzh-datepicker2.js +1 -1
  115. package/dist/components/stzh-datepicker2.js.map +1 -1
  116. package/dist/components/stzh-dropdown2.js +12 -2
  117. package/dist/components/stzh-dropdown2.js.map +1 -1
  118. package/dist/components/stzh-header.js +17 -5
  119. package/dist/components/stzh-header.js.map +1 -1
  120. package/dist/components/stzh-iframe2.js +19 -3
  121. package/dist/components/stzh-iframe2.js.map +1 -1
  122. package/dist/components/stzh-imagecomparison.js +2 -2
  123. package/dist/components/stzh-imagecomparison.js.map +1 -1
  124. package/dist/components/stzh-link2.js +2 -2
  125. package/dist/components/stzh-link2.js.map +1 -1
  126. package/dist/components/stzh-search.js +49 -16
  127. package/dist/components/stzh-search.js.map +1 -1
  128. package/dist/components/stzh-skin-portal-mitwirken.js +1 -1
  129. package/dist/components/stzh-skin-portal-mitwirken.js.map +1 -1
  130. package/dist/esm/{app-globals-3c171b79.js → app-globals-6a7ed0f4.js} +39 -14
  131. package/dist/esm/app-globals-6a7ed0f4.js.map +1 -0
  132. package/dist/esm/index.js.map +1 -1
  133. package/dist/esm/loader.js +2 -2
  134. package/dist/esm/stzh-appointments.entry.js +11 -8
  135. package/dist/esm/stzh-appointments.entry.js.map +1 -1
  136. package/dist/esm/stzh-badge_3.entry.js +1 -1
  137. package/dist/esm/stzh-badge_3.entry.js.map +1 -1
  138. package/dist/esm/stzh-calendar.entry.js +1 -1
  139. package/dist/esm/stzh-calendar.entry.js.map +1 -1
  140. package/dist/esm/stzh-card_3.entry.js +16 -19
  141. package/dist/esm/stzh-card_3.entry.js.map +1 -1
  142. package/dist/esm/stzh-chip.entry.js +3 -3
  143. package/dist/esm/stzh-chip.entry.js.map +1 -1
  144. package/dist/esm/stzh-components.js +2 -2
  145. package/dist/esm/stzh-content.entry.js +1 -1
  146. package/dist/esm/stzh-content.entry.js.map +1 -1
  147. package/dist/esm/stzh-cspace.entry.js +1 -1
  148. package/dist/esm/stzh-cspace.entry.js.map +1 -1
  149. package/dist/esm/stzh-cta.entry.js +1 -1
  150. package/dist/esm/stzh-cta.entry.js.map +1 -1
  151. package/dist/esm/stzh-datamessagelist-item.entry.js +9 -4
  152. package/dist/esm/stzh-datamessagelist-item.entry.js.map +1 -1
  153. package/dist/esm/stzh-datamessagelist.entry.js +1 -1
  154. package/dist/esm/stzh-datamessagelist.entry.js.map +1 -1
  155. package/dist/esm/stzh-datepicker_3.entry.js +1 -1
  156. package/dist/esm/stzh-datepicker_3.entry.js.map +1 -1
  157. package/dist/esm/stzh-dropdown.entry.js +8 -2
  158. package/dist/esm/stzh-dropdown.entry.js.map +1 -1
  159. package/dist/esm/stzh-header.entry.js +15 -5
  160. package/dist/esm/stzh-header.entry.js.map +1 -1
  161. package/dist/esm/stzh-iframe.entry.js +11 -3
  162. package/dist/esm/stzh-iframe.entry.js.map +1 -1
  163. package/dist/esm/stzh-imagecomparison.entry.js +2 -2
  164. package/dist/esm/stzh-imagecomparison.entry.js.map +1 -1
  165. package/dist/esm/stzh-link.entry.js +1 -1
  166. package/dist/esm/stzh-link.entry.js.map +1 -1
  167. package/dist/esm/stzh-search.entry.js +20 -3
  168. package/dist/esm/stzh-search.entry.js.map +1 -1
  169. package/dist/esm/stzh-skin-portal-mitwirken.entry.js +1 -1
  170. package/dist/esm/stzh-skin-portal-mitwirken.entry.js.map +1 -1
  171. package/dist/stzh-components/assets/i18n/de.json +2 -2
  172. package/dist/stzh-components/assets/i18n/en.json +2 -2
  173. package/dist/stzh-components/index.esm.js.map +1 -1
  174. package/dist/stzh-components/{p-3ca4f71a.entry.js → p-069e181f.entry.js} +2 -2
  175. package/dist/stzh-components/p-069e181f.entry.js.map +1 -0
  176. package/dist/stzh-components/p-1b78f602.entry.js +2 -0
  177. package/dist/stzh-components/p-1b78f602.entry.js.map +1 -0
  178. package/dist/stzh-components/p-295c8995.entry.js +2 -0
  179. package/dist/stzh-components/p-295c8995.entry.js.map +1 -0
  180. package/dist/stzh-components/p-2bbbc217.entry.js +9 -0
  181. package/dist/stzh-components/{p-b4ce8e10.entry.js.map → p-2bbbc217.entry.js.map} +1 -1
  182. package/dist/stzh-components/p-2d57953a.entry.js +2 -0
  183. package/dist/stzh-components/{p-1252aa01.entry.js.map → p-2d57953a.entry.js.map} +1 -1
  184. package/dist/stzh-components/p-2eb8f323.entry.js +2 -0
  185. package/dist/stzh-components/{p-62b88844.entry.js.map → p-2eb8f323.entry.js.map} +1 -1
  186. package/dist/stzh-components/p-45392fe0.entry.js +2 -0
  187. package/dist/stzh-components/p-45392fe0.entry.js.map +1 -0
  188. package/dist/stzh-components/{p-bd494b47.entry.js → p-523c0bb1.entry.js} +2 -2
  189. package/dist/stzh-components/p-523c0bb1.entry.js.map +1 -0
  190. package/dist/stzh-components/{p-e63dfe12.entry.js → p-5b9b2425.entry.js} +2 -2
  191. package/dist/stzh-components/{p-e63dfe12.entry.js.map → p-5b9b2425.entry.js.map} +1 -1
  192. package/dist/stzh-components/{p-bb87a6e2.entry.js → p-75fec3cd.entry.js} +2 -2
  193. package/dist/stzh-components/{p-bb87a6e2.entry.js.map → p-75fec3cd.entry.js.map} +1 -1
  194. package/dist/stzh-components/p-78eaea8d.js +2 -0
  195. package/dist/stzh-components/p-78eaea8d.js.map +1 -0
  196. package/dist/stzh-components/p-8ab62796.entry.js +2 -0
  197. package/dist/stzh-components/p-8ab62796.entry.js.map +1 -0
  198. package/dist/stzh-components/p-b0626969.entry.js +2 -0
  199. package/dist/stzh-components/p-b0626969.entry.js.map +1 -0
  200. package/dist/stzh-components/p-b34a4e7c.entry.js +2 -0
  201. package/dist/stzh-components/p-b34a4e7c.entry.js.map +1 -0
  202. package/dist/stzh-components/p-b5224e53.entry.js +2 -0
  203. package/dist/stzh-components/p-b5224e53.entry.js.map +1 -0
  204. package/dist/stzh-components/p-d1e6afe2.entry.js +2 -0
  205. package/dist/stzh-components/p-d1e6afe2.entry.js.map +1 -0
  206. package/dist/stzh-components/p-ddfb8df0.entry.js +2 -0
  207. package/dist/stzh-components/p-ddfb8df0.entry.js.map +1 -0
  208. package/dist/stzh-components/p-eb79f3ed.entry.js +2 -0
  209. package/dist/stzh-components/p-eb79f3ed.entry.js.map +1 -0
  210. package/dist/stzh-components/p-f50e0102.entry.js +2 -0
  211. package/dist/stzh-components/p-f50e0102.entry.js.map +1 -0
  212. package/dist/stzh-components/stzh-components.css +1 -1
  213. package/dist/stzh-components/stzh-components.esm.js +1 -1
  214. package/dist/stzh-components/stzh-components.esm.js.map +1 -1
  215. package/dist/types/components/stzh-card/stzh-card.d.ts +1 -5
  216. package/dist/types/components/stzh-datamessagelist-item/stzh-datamessagelist-item.d.ts +2 -0
  217. package/dist/types/components/stzh-dropdown/stzh-dropdown.d.ts +10 -2
  218. package/dist/types/components/stzh-header/stzh-header.d.ts +2 -2
  219. package/dist/types/components/stzh-iframe/stzh-iframe.d.ts +29 -1
  220. package/dist/types/components/stzh-link/stzh-link.d.ts +2 -2
  221. package/dist/types/components/stzh-search/stzh-search.d.ts +10 -0
  222. package/dist/types/components.d.ts +156 -38
  223. package/dist/types/index.d.ts +3 -0
  224. package/dist/vscode-data.json +140 -12
  225. package/package.json +1 -1
  226. package/dist/cjs/app-globals-0cbebaa1.js.map +0 -1
  227. package/dist/collection/patterns/appointments/appointments.e2e.js +0 -18
  228. package/dist/collection/patterns/appointments/appointments.e2e.js.map +0 -1
  229. package/dist/esm/app-globals-3c171b79.js.map +0 -1
  230. package/dist/stzh-components/p-1252aa01.entry.js +0 -2
  231. package/dist/stzh-components/p-18015613.entry.js +0 -2
  232. package/dist/stzh-components/p-18015613.entry.js.map +0 -1
  233. package/dist/stzh-components/p-38d64313.entry.js +0 -2
  234. package/dist/stzh-components/p-38d64313.entry.js.map +0 -1
  235. package/dist/stzh-components/p-39fa126d.js +0 -2
  236. package/dist/stzh-components/p-39fa126d.js.map +0 -1
  237. package/dist/stzh-components/p-3ca4f71a.entry.js.map +0 -1
  238. package/dist/stzh-components/p-4cff0c86.entry.js +0 -2
  239. package/dist/stzh-components/p-4cff0c86.entry.js.map +0 -1
  240. package/dist/stzh-components/p-5e48450d.entry.js +0 -2
  241. package/dist/stzh-components/p-5e48450d.entry.js.map +0 -1
  242. package/dist/stzh-components/p-62b88844.entry.js +0 -2
  243. package/dist/stzh-components/p-69c1826d.entry.js +0 -2
  244. package/dist/stzh-components/p-69c1826d.entry.js.map +0 -1
  245. package/dist/stzh-components/p-7091d652.entry.js +0 -2
  246. package/dist/stzh-components/p-7091d652.entry.js.map +0 -1
  247. package/dist/stzh-components/p-76902b7c.entry.js +0 -2
  248. package/dist/stzh-components/p-76902b7c.entry.js.map +0 -1
  249. package/dist/stzh-components/p-92285350.entry.js +0 -2
  250. package/dist/stzh-components/p-92285350.entry.js.map +0 -1
  251. package/dist/stzh-components/p-93e0ff47.entry.js +0 -2
  252. package/dist/stzh-components/p-93e0ff47.entry.js.map +0 -1
  253. package/dist/stzh-components/p-b4ce8e10.entry.js +0 -9
  254. package/dist/stzh-components/p-bd494b47.entry.js.map +0 -1
  255. package/dist/stzh-components/p-e6785bb1.entry.js +0 -2
  256. package/dist/stzh-components/p-e6785bb1.entry.js.map +0 -1
  257. package/dist/stzh-components/p-fb1d20da.entry.js +0 -2
  258. package/dist/stzh-components/p-fb1d20da.entry.js.map +0 -1
@@ -1,2 +0,0 @@
1
- import{r as t,c as s,h as i,a as e,g as n}from"./p-c7bfac7a.js";import{t as a}from"./p-41529de9.js";import{p as h,a as p}from"./p-23d404e1.js";const o=".sc-stzh-appointments-h{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium);color:var(--stzh-base-color);box-sizing:border-box;display:block}[hidden].sc-stzh-appointments-h{display:none}.sc-stzh-appointments-h::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-appointments-h::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-appointments-h *.sc-stzh-appointments,.sc-stzh-appointments-h *.sc-stzh-appointments::before,.sc-stzh-appointments-h *.sc-stzh-appointments::after{box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness);-webkit-text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink);text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink)}.sc-stzh-appointments-h .has-focus.sc-stzh-appointments{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}.sc-stzh-appointments-h .stzh-fylingfocus-focused.sc-stzh-appointments{outline-style:none !important}.sc-stzh-appointments-h .stzh-fylingfocus-focused.sc-stzh-appointments::-moz-focus-inner{border:0 !important}.stzh-appointments__wrapper.sc-stzh-appointments{display:flex;flex-direction:column}@media screen and (min-width: 900px){.stzh-appointments__wrapper.sc-stzh-appointments{flex-direction:row}}.stzh-appointments__calendar-wrapper.sc-stzh-appointments{display:flex;flex-direction:column}@media screen and (min-width: 900px){.stzh-appointments__calendar-wrapper.sc-stzh-appointments{margin-right:var(--stzh-space-large)}}.stzh-appointments__appointments-wrapper.sc-stzh-appointments{flex-grow:1;display:flex;flex-direction:column}.stzh-appointments__calendar-title-wrapper.sc-stzh-appointments,.stzh-appointments__appointments-title-wrapper.sc-stzh-appointments{display:flex;align-items:flex-start;flex-direction:column;margin-bottom:var(--stzh-space-xsmall)}@media screen and (min-width: 900px){.stzh-appointments__calendar-title-wrapper.sc-stzh-appointments,.stzh-appointments__appointments-title-wrapper.sc-stzh-appointments{flex-direction:row;align-items:center;justify-content:space-between;margin-bottom:var(--stzh-space-medium);height:var(--stzh-space-xxlarge)}}.stzh-appointments__calendar-title.sc-stzh-appointments,.stzh-appointments__appointments-title.sc-stzh-appointments{display:flex}.stzh-appointments__calendar-icon.sc-stzh-appointments,.stzh-appointments__appointments-icon.sc-stzh-appointments{margin-right:var(--stzh-space-xsmall);display:none}@media screen and (min-width: 900px){.stzh-appointments__calendar-icon.sc-stzh-appointments,.stzh-appointments__appointments-icon.sc-stzh-appointments{display:inline-flex}}.stzh-appointments__calendar-content-medium.sc-stzh-appointments,.stzh-appointments__appointments-content.sc-stzh-appointments{background-color:var(--stzh-color-white);border:0.125rem solid var(--stzh-color-grey70)}@media screen and (min-width: 900px){.stzh-appointments__calendar-content.sc-stzh-appointments{display:none}}.stzh-appointments__calendar-content-medium.sc-stzh-appointments{display:none;padding:var(--stzh-space-medium)}@media screen and (min-width: 900px){.stzh-appointments__calendar-content-medium.sc-stzh-appointments{display:block}}.stzh-appointments__appointments-content.sc-stzh-appointments{padding:var(--stzh-space-xlarge);flex-grow:1}.stzh-appointments__more-link.sc-stzh-appointments{margin-top:var(--stzh-space-medium)}.stzh-appointments--has-calendar.sc-stzh-appointments .stzh-appointments__appointments-wrapper.sc-stzh-appointments{margin-top:var(--stzh-space-large)}@media screen and (min-width: 900px){.stzh-appointments--has-calendar.sc-stzh-appointments .stzh-appointments__appointments-wrapper.sc-stzh-appointments{margin-top:0}}";const r=class{constructor(i){t(this,i);this.stzhChange=s(this,"stzhChange",7);this.showMoreLink=false;this.moreItemsLeft=0;this.showCalendar=false;this.showSort=false;this.showSortStart=false;this.showSortPlace=false;this.showAppointmentsTitle=false;this.allAppointsmentOnSameDay=true;this.sortOptions=[];this.isDateDisabled=t=>{const s=!!this._appointments.find((s=>s.start.getFullYear()===t.getFullYear()&&s.start.getMonth()===t.getMonth()&&s.start.getDate()===t.getDate()));return!s};this.onNextActiveDateClick=async()=>{if(this.nextDate){this.currentDate=this.nextDate;const t=await this.datepickerElement.getPopover();if(t){t.hide()}}};this.onMoreClick=()=>{this.showItems=this.stepItems+this.showItems;const t=this.inputElement.querySelector("stzh-radio");t.focus()};this.onDropdownChange=async t=>{const s=t.target;const i=await s.getValue();if(i){this.sortBy=i}};this.onDatepickerChange=t=>{if(t.detail.component!=="stzh-datepicker"||!t.detail.valueAsDate){return}this.currentDate=t.detail.valueAsDate;this.showItems=this._initialShowItems};this.onRadioChange=t=>{this.value=t.detail.value;this.stzhChange.emit({component:"stzh-appointments",value:this.value})};this.localization=undefined;this.sortBy="start";this.appointments=[];this.currentDate=undefined;this.value="";this.name="appointment";this.showItems=5;this.stepItems=5;this.calendarTitle="";this.appointmentsTitle="";this.dateAdapter=undefined}dateAdapterWatcher(t){if(!t){this.dateAdapter=window.stzhComponents.utils.createFormatParseAdapter(this.localization.$formats,this.localization.$globals)}}currentDateWatcher(t){if(!t){this._currentDate=this.dateByValue||this.earliestDate;if(!this.dateByValue){this.setValueToFirstAppointmentOfCurrentDate()}}else if(typeof t==="string"){this._currentDate=h(t);this.setValueToFirstAppointmentOfCurrentDate()}else{this._currentDate=t;this.setValueToFirstAppointmentOfCurrentDate()}}sortByWatcher(){this.setValueToFirstAppointmentOfCurrentDate()}valueWatcher(){this.updateDateByValue();this.currentDateWatcher(this.currentDate)}appointmentsWatcher(t){if(typeof t==="string"){this._appointments=JSON.parse(t)}else{this._appointments=t}this._appointments=this._appointments.map((t=>Object.assign(Object.assign({},t),{start:new Date(t.start),end:new Date(t.end)})));if(this._appointments.length>0){this._appointments.sort(((t,s)=>t["start"]>s["start"]?1:-1));this.earliestDate=this._appointments[0].start;this.latestDate=this._appointments[this._appointments.length-1].start;this.updateDateByValue()}if(this._appointments.length>1){const t=this._appointments[0].start;this.allAppointsmentOnSameDay=this._appointments.map((t=>t.start)).every((s=>`${s.getFullYear()}-${s.getMonth()}-${s.getDate()}`===`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`))}this.showCalendar=!this.allAppointsmentOnSameDay;this.showAppointmentsTitle=this._appointments.length>1;this.currentDateWatcher(this.currentDate)}updateDateByValue(){this.dateByValue=this.value&&this._appointments.find((t=>t.value===this.value)).start}getCurrentDateAppointments(){let t=0;const s=this._appointments.filter(((s,i)=>{const e=s.start.getFullYear()===this._currentDate.getFullYear()&&s.start.getMonth()===this._currentDate.getMonth()&&s.start.getDate()===this._currentDate.getDate();if(e){t=i}return e}));if(this._appointments[t+1]){this.nextDate=this._appointments[t+1].start}else{this.nextDate=null}s.sort(((t,s)=>t[this.sortBy]>s[this.sortBy]?1:-1));return s}setValueToFirstAppointmentOfCurrentDate(){const t=this.getCurrentDateAppointments().filter((t=>!t.disabled));if(t.length>0){this.value=t[0].value;this.stzhChange.emit({component:"stzh-appointments",value:this.value})}}async componentWillLoad(){this._initialShowItems=this.showItems;this.appointmentsWatcher(this.appointments);if(!this.localization){this.localization=await window.stzhComponents.utils.fetchTranslations(this.element,"appointments")}this.dateAdapterWatcher(this.dateAdapter)}componentWillRender(){const t=this.getCurrentDateAppointments();this.appointmentsShown=t.slice(0,this.showItems);this.showMoreLink=this.showItems<t.length;this.moreItemsLeft=t.length-this.showItems;this.showSortStart=t.map((t=>this.dateAdapter.format(t.start,"time"))).filter(((t,s,i)=>i.indexOf(t)==s)).length>1;this.showSortPlace=t.map((t=>t.place)).filter(((t,s,i)=>i.indexOf(t)==s)).length>1;this.sortOptions=[];if(this.showSortStart){this.sortOptions.push({text:this.localization.sortByTime,value:"start"})}if(this.showSortPlace){this.sortOptions.push({text:this.localization.sortByPlace,value:"place"})}this.showSort=this.appointmentsShown.length>1;this._sortBy=this.showSortStart&&!this.showSortPlace&&"start"||!this.showSortStart&&this.showSortPlace&&"place"||this.sortBy}componentDidRender(){if(this.datepickerElement){this.datepickerElement.setDate(this._currentDate)}if(this.datepickerElementMedium){this.datepickerElementMedium.setDate(this._currentDate)}}render(){const t={"stzh-appointments":true,"stzh-appointments--has-calendar":this.showCalendar,"stzh-appointments--has-appointments-title":this.showAppointmentsTitle,"stzh-appointments--has-sort":this.showSort};return i(e,null,i("div",{class:t},i("div",{class:"stzh-appointments__wrapper"},this.showCalendar&&i("div",{class:"stzh-appointments__calendar-wrapper"},i("div",{class:"stzh-appointments__calendar-title-wrapper"},i("div",{class:"stzh-appointments__calendar-title"},i("stzh-icon",{class:"stzh-appointments__calendar-icon",name:"calendar"}),i("stzh-text",{font:"heavy"},this.calendarTitle||this.localization.calendarTitle))),i("div",{class:"stzh-appointments__calendar-content"},i("stzh-datepicker",{"hide-optional":true,ref:t=>this.datepickerElement=t,onStzhChange:this.onDatepickerChange,label:this.localization.datepickerLabel,calendarIsDateDisabled:this.isDateDisabled,calendarMin:p(this.earliestDate),calendarMax:p(this.latestDate)},i("stzh-link",{slot:"action",disabled:!this.nextDate,onClick:this.onNextActiveDateClick},i("stzh-text",{size:"milli"},this.localization.nextDayWithAppointments)))),i("div",{class:"stzh-appointments__calendar-content-medium"},i("stzh-datepicker",{"hide-optional":true,ref:t=>this.datepickerElementMedium=t,onStzhChange:this.onDatepickerChange,inline:true,calendarIsDateDisabled:this.isDateDisabled,calendarMin:p(this.earliestDate),calendarMax:p(this.latestDate)},this.nextDate&&i("stzh-link",{slot:"action",onClick:this.onNextActiveDateClick},i("stzh-text",{size:"milli"},this.localization.nextDayWithAppointments))))),i("div",{class:"stzh-appointments__appointments-wrapper"},this.showAppointmentsTitle&&i("div",{class:"stzh-appointments__appointments-title-wrapper"},i("div",{class:"stzh-appointments__appointments-title"},i("stzh-icon",{class:"stzh-appointments__appointments-icon",name:"clock"}),i("stzh-text",{font:"heavy"},this.appointmentsTitle||this.localization.appointmentsTitle)),this.showSort&&i("div",{class:"stzh-appointments__sort"},i("stzh-dropdown",{"hide-optional":true,inline:true,"no-search":true,class:"stzh-appointments__sort-dropdown",variant:"plain",size:"small",items:[this._sortBy],options:this.sortOptions,onStzhChange:this.onDropdownChange}))),i("div",{class:"stzh-appointments__appointments-content"},i("stzh-radiogroup",{ref:t=>this.inputElement=t,legend:this.localization.inputLegend,"hide-legend":true,name:this.name,value:this.value,preventUpdateProperties:["disabled"]},this.appointmentsShown.map((t=>i("stzh-radio",{onStzhChange:this.onRadioChange,value:t.value,disabled:typeof t.disabled!=="undefined"?t.disabled:false},i("stzh-text",{font:"heavy",size:"milli"},!this.showCalendar&&i("span",null,this.dateAdapter.format(t.start,"dateLong"),", "),this.dateAdapter.formatSpan(t.start,t.end,"time")),i("stzh-text",{size:"milli"},t.caption))))),this.showMoreLink&&i("stzh-link",{class:"stzh-appointments__more-link",onClick:this.onMoreClick},i("stzh-text",{size:"milli"},a(this.localization.moreTextItems,this.moreItemsLeft>this.stepItems?this.stepItems:this.moreItemsLeft))))))))}get element(){return n(this)}static get watchers(){return{dateAdapter:["dateAdapterWatcher"],currentDate:["currentDateWatcher"],sortBy:["sortByWatcher"],value:["valueWatcher"],appointments:["appointmentsWatcher"]}}};r.style=o;export{r as stzh_appointments};
2
- //# sourceMappingURL=p-92285350.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["stzhAppointmentsCss","StzhAppointments","this","showMoreLink","moreItemsLeft","showCalendar","showSort","showSortStart","showSortPlace","showAppointmentsTitle","allAppointsmentOnSameDay","sortOptions","isDateDisabled","date","dateHasAppointment","_appointments","find","appointment","start","getFullYear","getMonth","getDate","onNextActiveDateClick","async","nextDate","currentDate","popover","datepickerElement","getPopover","hide","onMoreClick","showItems","stepItems","radio","inputElement","querySelector","focus","onDropdownChange","event","target","sortBy","getValue","onDatepickerChange","detail","component","valueAsDate","_initialShowItems","onRadioChange","value","stzhChange","emit","dateAdapterWatcher","newValue","dateAdapter","window","stzhComponents","utils","createFormatParseAdapter","localization","$formats","$globals","currentDateWatcher","_currentDate","dateByValue","earliestDate","setValueToFirstAppointmentOfCurrentDate","parseISODate","sortByWatcher","valueWatcher","updateDateByValue","appointmentsWatcher","JSON","parse","map","Object","assign","Date","end","length","sort","a","b","latestDate","firstDate","every","getCurrentDateAppointments","indexOfLastCurrentDayDate","appointmentsCurrentDate","filter","index","dateIsInCurrentDay","appointments","disabled","componentWillLoad","fetchTranslations","element","componentWillRender","appointmentsShown","slice","format","item","pos","self","indexOf","place","push","text","sortByTime","sortByPlace","_sortBy","componentDidRender","setDate","datepickerElementMedium","render","classes","h","Host","class","name","font","calendarTitle","ref","el","onStzhChange","label","datepickerLabel","calendarIsDateDisabled","calendarMin","printISODate","calendarMax","slot","onClick","size","nextDayWithAppointments","inline","appointmentsTitle","variant","items","options","legend","inputLegend","preventUpdateProperties","formatSpan","caption","tc","moreTextItems"],"sources":["src/components/stzh-appointments/stzh-appointments.scss?tag=stzh-appointments&encapsulation=scoped","src/components/stzh-appointments/stzh-appointments.tsx"],"sourcesContent":[".stzh-appointments {\n &__wrapper {\n display: flex;\n flex-direction: column;\n\n @include mq($from: medium) {\n flex-direction: row;\n }\n }\n\n &__calendar-wrapper {\n display: flex;\n flex-direction: column;\n\n @include mq($from: medium) {\n margin-right: space('large');\n }\n }\n\n &__appointments-wrapper {\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n }\n\n &__calendar-title-wrapper,\n &__appointments-title-wrapper {\n display: flex;\n align-items: flex-start;\n flex-direction: column;\n margin-bottom: space('xsmall');\n\n @include mq($from: medium) {\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n margin-bottom: space('medium');\n height: space('xxlarge');\n }\n }\n\n &__calendar-title,\n &__appointments-title {\n display: flex;\n }\n\n &__calendar-icon,\n &__appointments-icon {\n margin-right: space('xsmall');\n display: none;\n\n @include mq($from: medium) {\n display: inline-flex;\n }\n }\n\n &__calendar-content-medium,\n &__appointments-content {\n background-color: $colorWhite;\n border: 2px solid $formBorderColor;\n }\n\n &__calendar-content {\n @include mq($from: medium) {\n display: none;\n }\n }\n\n &__calendar-content-medium {\n display: none;\n padding: space('medium');\n\n @include mq($from: medium) {\n display: block;\n }\n }\n\n &__appointments-content {\n padding: space('xlarge');\n flex-grow: 1;\n }\n\n &__more-link {\n margin-top: space('medium');\n }\n\n &--has-calendar &__appointments-wrapper {\n margin-top: space('large');\n\n @include mq($from: medium) {\n margin-top: 0;\n }\n }\n}\n","import {\n Component,\n Host,\n Element,\n Prop,\n h,\n Watch,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhAppointmentsChangeEvent,\n StzhRadioChangeEvent,\n StzhDatepickerChangeEvent,\n StzhDropdownChangeEvent,\n} from \"../../index\";\n\nimport { tc } from \"../../utils/translation-utils\";\n\nimport { printISODate, parseISODate } from \"../../utils/date-utils\";\nimport { StzhLocaleAdapter } from \"../../utils/date-adapter\";\n\nimport { StzhAppointmentsLocalizedText } from \"./stzh-appointments.localization\"\n\n/**\n * @slot - Slot for any content\n */\n@Component({\n tag: \"stzh-appointments\",\n styleUrl: \"stzh-appointments.scss\",\n scoped: true\n})\nexport class StzhAppointments {\n /** Translation strings */\n @Prop() localization: StzhAppointmentsLocalizedText;\n\n /** Sort by */\n @Prop({ mutable: true }) sortBy: \"start\" | \"place\" = \"start\";\n private _sortBy: \"start\" | \"place\";\n\n /** Initial selected values */\n @Prop() appointments: any[] | string = [];\n private _appointments: any[];\n private appointmentsShown: any[];\n\n /** Current selected date (if undefined, earliest appointment date in list is taken or current selected one by value) */\n @Prop({ mutable: true }) currentDate: Date | string;\n private _currentDate: Date;\n\n /* Selected appointment by value */\n @Prop({ mutable: true }) value: string = \"\";\n\n /* Name of radiogroup form element */\n @Prop({ reflect: true }) name: string = \"appointment\";\n\n /** Nr of items shown */\n @Prop({ mutable: true }) showItems: number = 5;\n private _initialShowItems: number;\n\n /** Nr of items shown when more link is clicked */\n @Prop() stepItems: number = 5;\n\n /** Overwrite default calendar title */\n @Prop() calendarTitle = \"\";\n\n /** Overwrite default appointments title */\n @Prop() appointmentsTitle = \"\";\n\n /**\n * Date adapter, for custom parsing/formatting.\n * Must be an object with a `parse` function which accepts a `string` and returns a `Date`,\n * and a `format` function which accepts a `Date` and returns a `string`.\n */\n @Prop() dateAdapter: StzhLocaleAdapter;\n\n @Element() element: HTMLStzhAppointmentsElement;\n\n /** Appointments change event */\n @Event() stzhChange: EventEmitter<StzhAppointmentsChangeEvent>;\n\n @Watch(\"dateAdapter\")\n dateAdapterWatcher(newValue: StzhLocaleAdapter) {\n if (!newValue) {\n this.dateAdapter = window.stzhComponents.utils.createFormatParseAdapter(\n this.localization.$formats,\n this.localization.$globals\n );\n }\n }\n\n @Watch(\"currentDate\")\n currentDateWatcher(newValue: Date | string) {\n if (!newValue) {\n this._currentDate = this.dateByValue || this.earliestDate;\n\n if (!this.dateByValue) {\n this.setValueToFirstAppointmentOfCurrentDate();\n }\n } else if (typeof newValue === \"string\") {\n this._currentDate = parseISODate(newValue);\n this.setValueToFirstAppointmentOfCurrentDate();\n } else {\n this._currentDate = newValue;\n this.setValueToFirstAppointmentOfCurrentDate();\n }\n }\n\n @Watch(\"sortBy\")\n sortByWatcher() {\n this.setValueToFirstAppointmentOfCurrentDate();\n }\n\n @Watch(\"value\")\n valueWatcher() {\n this.updateDateByValue();\n // update current date if user has not choosen one\n this.currentDateWatcher(this.currentDate);\n }\n\n @Watch(\"appointments\")\n appointmentsWatcher(newValue: any[] | string) {\n if (typeof newValue === \"string\") {\n this._appointments = JSON.parse(newValue);\n } else {\n this._appointments = newValue;\n }\n\n // convert start and end field to date\n this._appointments = this._appointments.map(appointment => ({\n ...appointment,\n start: new Date(appointment.start),\n end: new Date(appointment.end),\n }))\n\n if (this._appointments.length > 0) {\n // sort with start field and find earliest and latest date\n this._appointments.sort((a, b) => a['start'] > b['start'] ? 1 : -1);\n this.earliestDate = this._appointments[0].start;\n this.latestDate = this._appointments[this._appointments.length - 1].start;\n this.updateDateByValue();\n }\n\n // determine whether all appointments are from the same day\n if (this._appointments.length > 1) {\n const firstDate = this._appointments[0].start;\n this.allAppointsmentOnSameDay = this._appointments\n .map(appointment => appointment.start)\n .every(date => `${date.getFullYear()}-${date.getMonth()}-${date.getDate()}`\n === `${firstDate.getFullYear()}-${firstDate.getMonth()}-${firstDate.getDate()}`);\n }\n\n // update flags\n this.showCalendar = !this.allAppointsmentOnSameDay;\n this.showAppointmentsTitle = this._appointments.length > 1;\n\n // update current date if user has not choosen one\n this.currentDateWatcher(this.currentDate);\n }\n\n private dateByValue: Date;\n private earliestDate: Date;\n private latestDate: Date;\n private nextDate: Date;\n\n private showMoreLink: boolean = false;\n private moreItemsLeft: number = 0;\n private showCalendar: boolean = false;\n private showSort: boolean = false;\n private showSortStart: boolean = false;\n private showSortPlace: boolean = false;\n private showAppointmentsTitle: boolean = false;\n private allAppointsmentOnSameDay: boolean = true;\n private sortOptions = [];\n\n private inputElement: HTMLStzhRadiogroupElement;\n private datepickerElement: HTMLStzhDatepickerElement;\n private datepickerElementMedium: HTMLStzhDatepickerElement;\n\n private updateDateByValue() {\n this.dateByValue = this.value\n && this._appointments\n .find(appointment => appointment.value === this.value)\n .start;\n }\n\n private getCurrentDateAppointments() {\n let indexOfLastCurrentDayDate = 0;\n\n // filter to current date appointments that can be shown\n const appointmentsCurrentDate = this._appointments\n .filter((appointment, index) => {\n const dateIsInCurrentDay = appointment.start.getFullYear() === this._currentDate.getFullYear()\n && appointment.start.getMonth() === this._currentDate.getMonth()\n && appointment.start.getDate() === this._currentDate.getDate();\n\n if (dateIsInCurrentDay) {\n indexOfLastCurrentDayDate = index;\n }\n\n return dateIsInCurrentDay;\n });\n\n // find next day with dates or set to null\n if (this._appointments[indexOfLastCurrentDayDate + 1]) {\n this.nextDate = this._appointments[indexOfLastCurrentDayDate + 1].start;\n } else {\n this.nextDate = null;\n }\n\n // sort\n appointmentsCurrentDate.sort((a, b) => a[this.sortBy] > b[this.sortBy] ? 1 : -1);\n return appointmentsCurrentDate;\n }\n\n private setValueToFirstAppointmentOfCurrentDate() {\n // choose the first available appointment from current date\n const appointments = this.getCurrentDateAppointments()\n .filter(appointment => !appointment.disabled)\n\n if (appointments.length > 0) {\n this.value = appointments[0].value;\n this.stzhChange.emit({\n component: \"stzh-appointments\",\n value: this.value\n });\n }\n }\n\n private isDateDisabled = (date: Date) => {\n const dateHasAppointment: boolean = !!this._appointments.find(appointment => {\n return appointment.start.getFullYear() === date.getFullYear()\n && appointment.start.getMonth() === date.getMonth()\n && appointment.start.getDate() === date.getDate();\n });\n\n return !dateHasAppointment;\n }\n\n private onNextActiveDateClick = async () => {\n if (this.nextDate) {\n this.currentDate = this.nextDate;\n\n const popover = await this.datepickerElement.getPopover();\n\n if (popover) {\n popover.hide();\n }\n }\n }\n\n private onMoreClick = () => {\n this.showItems = this.stepItems + this.showItems;\n\n // return focus to radiogroup\n const radio = this.inputElement.querySelector('stzh-radio');\n radio.focus();\n }\n\n private onDropdownChange = async (event: CustomEvent<StzhDropdownChangeEvent>) => {\n const target: HTMLStzhDropdownElement = event.target as HTMLStzhDropdownElement;\n\n const sortBy = await target.getValue() as \"start\" | \"place\" | \"\";\n\n if (sortBy) {\n this.sortBy = sortBy;\n }\n }\n\n private onDatepickerChange = (event: CustomEvent<StzhDatepickerChangeEvent>) => {\n if (event.detail.component !== 'stzh-datepicker' || !event.detail.valueAsDate) {\n return;\n }\n\n this.currentDate = event.detail.valueAsDate;\n // reset number of items that should be shown\n this.showItems = this._initialShowItems;\n }\n\n private onRadioChange = (event: CustomEvent<StzhRadioChangeEvent>) => {\n this.value = event.detail.value;\n this.stzhChange.emit({\n component: \"stzh-appointments\",\n value: this.value\n });\n }\n\n async componentWillLoad() {\n this._initialShowItems = this.showItems;\n this.appointmentsWatcher(this.appointments);\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"appointments\");\n }\n\n this.dateAdapterWatcher(this.dateAdapter);\n }\n\n componentWillRender() {\n const appointments = this.getCurrentDateAppointments();\n\n // slice to max that should be visible\n this.appointmentsShown = appointments.slice(0, this.showItems);\n\n // set flags\n this.showMoreLink = this.showItems < appointments.length;\n this.moreItemsLeft = appointments.length - this.showItems;\n\n // don't show time sort when only one time in the current day\n this.showSortStart = appointments\n .map(appointment => {\n return this.dateAdapter.format(appointment.start, \"time\");\n }).filter((item, pos, self) => {\n return self.indexOf(item) == pos;\n }).length > 1;\n\n // don't show place sort when only one place in the current day\n this.showSortPlace = appointments\n .map(appointment => {\n return appointment.place;\n }).filter((item, pos, self) => {\n return self.indexOf(item) == pos;\n }).length > 1;\n\n this.sortOptions = [];\n\n if (this.showSortStart) {\n this.sortOptions.push({\n text: this.localization.sortByTime,\n value: \"start\"\n });\n }\n\n if (this.showSortPlace) {\n this.sortOptions.push({\n text: this.localization.sortByPlace,\n value: \"place\"\n });\n }\n\n this.showSort = this.appointmentsShown.length > 1;\n\n // determine sort (force alternative sorting if it makes sense)\n this._sortBy =\n (this.showSortStart && !this.showSortPlace && \"start\")\n || (!this.showSortStart && this.showSortPlace && \"place\")\n || this.sortBy;\n }\n\n componentDidRender() {\n // set datepickers values to current date\n if (this.datepickerElement) {\n this.datepickerElement.setDate(this._currentDate);\n }\n\n if (this.datepickerElementMedium) {\n this.datepickerElementMedium.setDate(this._currentDate);\n }\n }\n\n render() {\n const classes = {\n \"stzh-appointments\": true,\n \"stzh-appointments--has-calendar\": this.showCalendar,\n \"stzh-appointments--has-appointments-title\": this.showAppointmentsTitle,\n \"stzh-appointments--has-sort\": this.showSort\n };\n\n return (\n <Host>\n <div class={classes}>\n <div class=\"stzh-appointments__wrapper\">\n {this.showCalendar &&\n <div class=\"stzh-appointments__calendar-wrapper\">\n <div class=\"stzh-appointments__calendar-title-wrapper\">\n <div class=\"stzh-appointments__calendar-title\">\n <stzh-icon class=\"stzh-appointments__calendar-icon\" name=\"calendar\"></stzh-icon>\n <stzh-text font=\"heavy\">{this.calendarTitle || this.localization.calendarTitle}</stzh-text>\n </div>\n </div>\n <div class=\"stzh-appointments__calendar-content\">\n <stzh-datepicker\n hide-optional\n ref={(el) => (this.datepickerElement = el as HTMLStzhDatepickerElement)}\n onStzhChange={this.onDatepickerChange}\n label={this.localization.datepickerLabel}\n calendarIsDateDisabled={this.isDateDisabled}\n calendarMin={printISODate(this.earliestDate)}\n calendarMax={printISODate(this.latestDate)}\n >\n <stzh-link\n slot=\"action\"\n disabled={!this.nextDate}\n onClick={this.onNextActiveDateClick}\n >\n <stzh-text size=\"milli\">\n {this.localization.nextDayWithAppointments}\n </stzh-text>\n </stzh-link>\n </stzh-datepicker>\n </div>\n <div class=\"stzh-appointments__calendar-content-medium\">\n <stzh-datepicker\n hide-optional\n ref={(el) => (this.datepickerElementMedium = el as HTMLStzhDatepickerElement)}\n onStzhChange={this.onDatepickerChange}\n inline\n calendarIsDateDisabled={this.isDateDisabled}\n calendarMin={printISODate(this.earliestDate)}\n calendarMax={printISODate(this.latestDate)}\n >\n {this.nextDate &&\n <stzh-link\n slot=\"action\"\n onClick={this.onNextActiveDateClick}\n >\n <stzh-text size=\"milli\">\n {this.localization.nextDayWithAppointments}\n </stzh-text>\n </stzh-link>\n }\n </stzh-datepicker>\n </div>\n </div>\n }\n <div class=\"stzh-appointments__appointments-wrapper\">\n {this.showAppointmentsTitle &&\n <div class=\"stzh-appointments__appointments-title-wrapper\">\n <div class=\"stzh-appointments__appointments-title\">\n <stzh-icon class=\"stzh-appointments__appointments-icon\" name=\"clock\"></stzh-icon>\n <stzh-text font=\"heavy\">{this.appointmentsTitle || this.localization.appointmentsTitle}</stzh-text>\n </div>\n {this.showSort &&\n <div class=\"stzh-appointments__sort\">\n <stzh-dropdown\n hide-optional\n inline\n no-search\n class=\"stzh-appointments__sort-dropdown\"\n variant=\"plain\"\n size=\"small\"\n items={[this._sortBy]}\n options={this.sortOptions}\n onStzhChange={this.onDropdownChange}\n ></stzh-dropdown>\n </div>\n }\n </div>\n }\n\n <div class=\"stzh-appointments__appointments-content\">\n <stzh-radiogroup\n ref={(el) => this.inputElement = el as HTMLStzhRadiogroupElement}\n legend={this.localization.inputLegend}\n hide-legend\n name={this.name}\n value={this.value}\n preventUpdateProperties={[\"disabled\"]}\n >\n {this.appointmentsShown.map((appointment) =>\n <stzh-radio\n onStzhChange={this.onRadioChange}\n value={appointment.value}\n disabled={typeof appointment.disabled !== \"undefined\" ? appointment.disabled : false}\n >\n <stzh-text font=\"heavy\" size=\"milli\">\n {!this.showCalendar && <span>{this.dateAdapter.format(appointment.start, \"dateLong\")},&nbsp;</span>}\n {this.dateAdapter.formatSpan(appointment.start, appointment.end, \"time\")}\n </stzh-text>\n <stzh-text size=\"milli\">{appointment.caption}</stzh-text>\n </stzh-radio>\n )}\n </stzh-radiogroup>\n\n {this.showMoreLink &&\n <stzh-link\n class=\"stzh-appointments__more-link\"\n onClick={this.onMoreClick}\n >\n <stzh-text size=\"milli\">\n {tc(this.localization.moreTextItems,\n this.moreItemsLeft > this.stepItems\n ? this.stepItems\n : this.moreItemsLeft)}\n </stzh-text>\n </stzh-link>\n }\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{r as t,c as s,h as i,F as r,a as o,g as e}from"./p-c7bfac7a.js";import{a}from"./p-23d404e1.js";import{h}from"./p-7e304ea3.js";import{S as n}from"./p-fc692303.js";import{c as d}from"./p-9b063923.js";const c=".sc-stzh-datepicker-h{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium);color:var(--stzh-base-color);box-sizing:border-box;display:block}[hidden].sc-stzh-datepicker-h{display:none}.sc-stzh-datepicker-h::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-datepicker-h::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-datepicker-h *.sc-stzh-datepicker,.sc-stzh-datepicker-h *.sc-stzh-datepicker::before,.sc-stzh-datepicker-h *.sc-stzh-datepicker::after{box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness);-webkit-text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink);text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink)}.sc-stzh-datepicker-h .has-focus.sc-stzh-datepicker{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}.sc-stzh-datepicker-h .stzh-fylingfocus-focused.sc-stzh-datepicker{outline-style:none !important}.sc-stzh-datepicker-h .stzh-fylingfocus-focused.sc-stzh-datepicker::-moz-focus-inner{border:0 !important}.sc-stzh-datepicker-h{width:100%}[inline].sc-stzh-datepicker-h:not([inline=false]){width:var(--stzh-calendar-width)}.stzh-datepicker__popover.sc-stzh-datepicker{--width:auto}.stzh-datepicker__calendar.is-inline.sc-stzh-datepicker{width:100%}.stzh-datepicker__actions.sc-stzh-datepicker{display:flex;justify-content:flex-end}.stzh-datepicker__actions.sc-stzh-datepicker:not(:empty){margin-right:var(--stzh-space-small)}.stzh-datepicker--has-action.sc-stzh-datepicker .stzh-datepicker__popover.sc-stzh-datepicker{--content-padding:0 0 var(--stzh-space-small) 0}";const l=class{constructor(i){t(this,i);this.stzhChange=s(this,"stzhChange",7);this.handleReset=async()=>{this.value=this.defaultValue};this.onRootFocus=()=>{if(this.input){this.input.focus()}};this.onInputChanged=()=>{const t=this.dateAdapter.parse(this.input.value,"dateInput");if(this.input.value===""||t){const s=this._internalDateAdapter.format(t,"dateInput");if(this.value!==s){this.value=s}else{this.valueWatcher(s)}this.stzhChange.emit({component:"stzh-datepicker",value:this.value,valueAsDate:t})}};this.onCalendarChange=t=>{if(t.detail.component!=="stzh-calendar"){return}this.value=t.detail.valueAsDate&&this._internalDateAdapter.format(t.detail.valueAsDate,"dateInput");this.stzhChange.emit({component:"stzh-datepicker",value:this.value,valueAsDate:t.detail.valueAsDate});if(this.popover){this.popover.hide()}};this.calendarMin="";this.calendarMax="";this.calendarIsDateDisabled=()=>false;this.name="";this.value="";this.calendarValue="";this.inputValue="";this.defaultValue="";this.label="";this.labelHidden=false;this.readonly=false;this.disabled=false;this.description=undefined;this.descriptionLong=undefined;this.error=undefined;this.invalid=false;this.required=false;this.hideOptional=false;this.size="default";this.inline=false;this.dateAdapter=undefined;this.internalDateAdapter="iso";this.localization=undefined;this.buttonLabel=undefined}resetListener(t){if(t.target.contains(this.element)){requestAnimationFrame((()=>{this.handleReset()}))}}createDateFormatters(){if(this.localization){this.dateFormatLong=new Intl.DateTimeFormat(this.localization.$locale,{day:"numeric",month:"long",year:"numeric"})}}valueWatcher(t){if(!this._internalDateAdapter){return}const s=this._internalDateAdapter.parse(t,"dateInput");this.calendarValue=a(s);this.inputValue=this.dateAdapter.format(s,"dateInput");this.updateButtonAccessibleLabel()}dateAdapterWatcher(t){if(!t){this.dateAdapter=window.stzhComponents.utils.createFormatParseAdapter(this.localization.$formats,this.localization.$globals)}}internalDateAdapterWatcher(t){if(t==="iso"||!t){this._internalDateAdapter=window.stzhComponents.utils.createFormatParseAdapter(this.localization.$formatsIso,this.localization.$globals)}else if(t==="legacy"){this._internalDateAdapter=window.stzhComponents.utils.createFormatParseAdapter(this.localization.$formatsLegacy,this.localization.$globals)}else{this._internalDateAdapter=t}}async setDate(t){this.value=this._internalDateAdapter.format(t,"dateInput")}async getPopover(){return this.popover}updateButtonAccessibleLabel(){if(!this.localization){return}try{const t=this._internalDateAdapter.parse(this.value,"dateInput");this.buttonLabel=`${this.label}, ${this.localization.buttonLabel}, ${this.localization.selectedDateMessage} ${this.dateFormatLong.format(t)}`}catch(t){this.buttonLabel=`${this.label}, ${this.localization.buttonLabel}`}}connectedCallback(){this.createDateFormatters()}async componentWillLoad(){if(!this.localization){this.localization=await window.stzhComponents.utils.fetchTranslations(this.element,"datepicker")}this.dateAdapterWatcher(this.dateAdapter);this.internalDateAdapterWatcher(this.internalDateAdapter);this.valueWatcher(this.value);this.defaultValue=this.defaultValue||this.value}render(){const t=h(this.element,"action");const s={"stzh-datepicker":true,"stzh-datepicker--inline":this.inline,"stzh-datepicker--has-action":t};return i(o,{tabindex:this.disabled?null:"-1",onFocus:this.onRootFocus},i("div",{class:s},i("input",{type:"hidden",name:this.name,value:this.value,defaultValue:this.defaultValue}),this.inline&&i(r,null,i("stzh-calendar",{value:this.calendarValue,class:"stzh-datepicker__calendar is-inline",isDateDisabled:this.calendarIsDateDisabled,min:this.calendarMin,max:this.calendarMax,onStzhChange:this.onCalendarChange}),i("div",{class:"stzh-datepicker__actions"},i("slot",{name:"action"}))),!this.inline&&i("stzh-input",{value:this.inputValue,label:this.label,labelHidden:this.labelHidden,ref:t=>this.input=t,noAutocomplete:true,onStzhChanged:this.onInputChanged,readonly:this.readonly,disabled:this.disabled,description:this.description,descriptionLong:this.descriptionLong,error:this.error,invalid:this.invalid,required:this.required,hideOptional:this.hideOptional,size:this.size},i("stzh-popover",{ref:t=>this.popover=t,class:"stzh-datepicker__popover",slot:"button-right",placement:"bottom-end",label:this.label},i("stzh-button",{"icon-only":true,icon:"calendar",size:this.size,disabled:this.disabled,a11yLabel:this.buttonLabel}),i("div",{slot:"content"},i("stzh-calendar",{value:this.calendarValue,class:"stzh-datepicker__calendar is-popover",isDateDisabled:this.calendarIsDateDisabled,min:this.calendarMin,max:this.calendarMax,onStzhChange:this.onCalendarChange}),i("div",{class:"stzh-datepicker__actions"},i("slot",{name:"action"})))))))}get element(){return e(this)}static get watchers(){return{localization:["createDateFormatters"],value:["valueWatcher"],dateAdapter:["dateAdapterWatcher"],internalDateAdapter:["internalDateAdapterWatcher"]}}};l.style=c;const z='.sc-stzh-radio-h{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium);color:var(--stzh-base-color);box-sizing:border-box;display:block}[hidden].sc-stzh-radio-h{display:none}.sc-stzh-radio-h::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-radio-h::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-radio-h *.sc-stzh-radio,.sc-stzh-radio-h *.sc-stzh-radio::before,.sc-stzh-radio-h *.sc-stzh-radio::after{box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness);-webkit-text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink);text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink)}.sc-stzh-radio-h .has-focus.sc-stzh-radio{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}.sc-stzh-radio-h .stzh-fylingfocus-focused.sc-stzh-radio{outline-style:none !important}.sc-stzh-radio-h .stzh-fylingfocus-focused.sc-stzh-radio::-moz-focus-inner{border:0 !important}.sc-stzh-radio-h{display:inline-block}[disabled].sc-stzh-radio-h:not([disabled=false]){--description-color:var(--stzh-color-grey70)}.stzh-radio__marker-symbol.sc-stzh-radio{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium)}.stzh-radio__marker-text.sc-stzh-radio{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-radio__description-wrapper.sc-stzh-radio{display:flex;flex-direction:column-reverse;min-height:var(--description-min-height, var(--stzh-description-min-height, none))}.stzh-radio__error.sc-stzh-radio,.stzh-radio__description.sc-stzh-radio{font-size:var(--stzh-font-nano-font-size);line-height:var(--stzh-font-nano-text-line-height)}.stzh-radio__error.sc-stzh-radio{color:var(--stzh-color-error60)}.stzh-radio__error-list.sc-stzh-radio{list-style:none;margin:0;padding:0}.stzh-radio__description.sc-stzh-radio{display:flex;align-items:flex-start;color:var(--stzh-input-description-color, var(--description-color, var(--stzh-color-coolgrey70)));transition:color var(--stzh-base-transition-animation-speed)}.stzh-radio__description-long.sc-stzh-radio{margin-right:var(--stzh-space-xxsmall);margin-top:0.125rem}@supports (font: -apple-system-body) and (-webkit-appearance: none){.stzh-radio__description-long.sc-stzh-radio{margin-top:0}}.stzh-radio__description-long-popover.sc-stzh-radio{--width:auto;--max-width:27.3125rem}.stzh-radio__description-long-button.sc-stzh-radio{display:flex;justify-content:center;align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;padding:0;border:none;background-color:transparent;border-radius:0.5rem;cursor:pointer}.stzh-radio.sc-stzh-radio stzh-icon.stzh-radio__description-long-icon.sc-stzh-radio{--size:var(--stzh-icon-size-xsmall)}.stzh-radio--has-error.sc-stzh-radio .stzh-radio__error.sc-stzh-radio,.stzh-radio--has-description.sc-stzh-radio .stzh-radio__description.sc-stzh-radio{margin-top:var(--stzh-space-xxxsmall)}.stzh-radio__field-wrapper.sc-stzh-radio{font-size:var(--stzh-font-milli-font-size);line-height:var(--stzh-font-milli-text-line-height);letter-spacing:var(--stzh-font-curve---text-letter-spacing);position:relative;display:flex;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer}.stzh-radio__input.sc-stzh-radio{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;z-index:-1;opacity:0;pointer-events:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--stzh-form-input-border-radius)}.stzh-radio__mark.sc-stzh-radio{border:0.125rem solid var(--stzh-color-black);background-color:var(--stzh-color-white);width:1.5rem;height:1.5rem;flex-shrink:0;border-radius:50%;display:inline-flex;justify-content:center;align-items:center;transition:border-color var(--stzh-base-transition-animation-speed)}.stzh-radio__mark.sc-stzh-radio::before{content:""}.stzh-radio__check.sc-stzh-radio{background-color:currentColor;color:var(--stzh-color-primary70);width:1rem;height:1rem;border-radius:50%;opacity:0;transition-property:color;transition-duration:var(--stzh-base-transition-animation-speed)}@media (forced-colors: active), (-ms-high-contrast: active){.stzh-radio__check.sc-stzh-radio{background-color:ButtonText}}.stzh-radio__label.sc-stzh-radio{--stzh-base-color:initial;display:inline-block;color:var(--stzh-base-color);transition:color var(--stzh-base-transition-animation-speed);margin-left:var(--stzh-space-small);line-height:1.5rem}.stzh-radio__label.sc-stzh-radio:empty{display:none}.stzh-radio__marker.sc-stzh-radio{font-size:var(--stzh-font-micro-font-size);line-height:var(--stzh-font-micro-text-line-height);margin-left:calc(-0.25em + var(--stzh-space-xsmall))}.stzh-radio.sc-stzh-radio:hover .stzh-radio__label.sc-stzh-radio,.stzh-radio__input.sc-stzh-radio:checked~.stzh-radio__label.sc-stzh-radio{color:var(--stzh-color-primary70)}.stzh-radio__input.sc-stzh-radio:checked:hover~.stzh-radio__label.sc-stzh-radio,.stzh-radio__input.sc-stzh-radio:checked:hover~.stzh-radio__mark.sc-stzh-radio .stzh-radio__check.sc-stzh-radio{color:var(--stzh-color-primary90)}.stzh-radio.sc-stzh-radio:hover .stzh-radio__mark.sc-stzh-radio,.stzh-radio__input.sc-stzh-radio:checked~.stzh-radio__mark.sc-stzh-radio{border-color:var(--stzh-color-primary70)}.stzh-radio__input.sc-stzh-radio:checked:hover~.stzh-radio__mark.sc-stzh-radio{border-color:var(--stzh-color-primary90)}.stzh-radio__input.sc-stzh-radio:checked~.stzh-radio__mark.sc-stzh-radio .stzh-radio__check.sc-stzh-radio{opacity:1}.stzh-radio--is-invalid.sc-stzh-radio .stzh-radio__input.sc-stzh-radio~.stzh-radio__label.sc-stzh-radio,.stzh-radio--is-invalid.sc-stzh-radio .stzh-radio__input.sc-stzh-radio~.stzh-radio__mark.sc-stzh-radio .stzh-radio__check.sc-stzh-radio{color:var(--stzh-color-error60)}.stzh-radio--is-invalid.sc-stzh-radio .stzh-radio__input.sc-stzh-radio~.stzh-radio__mark.sc-stzh-radio{border-color:var(--stzh-color-error60)}.stzh-radio--is-disabled.sc-stzh-radio .stzh-radio__field-wrapper.sc-stzh-radio{cursor:not-allowed}.stzh-radio--is-disabled.sc-stzh-radio .stzh-radio__input.sc-stzh-radio~.stzh-radio__label.sc-stzh-radio{color:var(--stzh-color-grey60)}.stzh-radio--is-disabled.sc-stzh-radio .stzh-radio__input.sc-stzh-radio~.stzh-radio__mark.sc-stzh-radio .stzh-radio__check.sc-stzh-radio{color:var(--stzh-color-grey50)}.stzh-radio--is-disabled.sc-stzh-radio .stzh-radio__input.sc-stzh-radio~.stzh-radio__mark.sc-stzh-radio{border-color:var(--stzh-color-grey50)}.stzh-radio--is-disabled.sc-stzh-radio .stzh-radio__mark.sc-stzh-radio{background-color:var(--stzh-color-grey20)}';let p=0;const u=class{constructor(i){t(this,i);this.stzhChange=s(this,"stzhChange",7);this.stzhFocus=s(this,"stzhFocus",7);this.stzhBlur=s(this,"stzhBlur",7);this.focusedByInput=false;this.handleReset=async()=>{this.checked=this.defaultChecked};this.onInput=t=>{this.checked=this.input.checked;this.stzhChange.emit({component:"stzh-radio",originalEvent:t,value:this.value,checked:this.checked})};this.onRootFocus=()=>{if(!this.focusedByInput){this.input.focus()}this.focusedByInput=false};this.onFocus=t=>{this.focusedByInput=true;const s=new FocusEvent("focus",{view:window,bubbles:false,cancelable:false});this.element.dispatchEvent(s);this.stzhFocus.emit({component:"stzh-radio",originalEvent:t})};this.onBlur=t=>{const s=new FocusEvent("blur",{view:window,bubbles:false,cancelable:false});this.element.dispatchEvent(s);this.stzhBlur.emit({component:"stzh-radio",originalEvent:t})};this.localization=undefined;this.disabled=false;this.name="";this.value="";this.invalid=false;this.required=false;this.hideOptional=false;this.checked=false;this.defaultChecked=undefined;this.label="";this.description=undefined;this.descriptionLong=undefined;this.descriptionLongTitle=undefined;this.error=undefined;this.a11yDescribedby=""}resetListener(t){if(t.target.contains(this.element)){requestAnimationFrame((()=>{this.handleReset()}))}}errorWatcher(t){if(typeof t==="string"){try{this._error=JSON.parse(t)}catch(s){if(t){this._error=[t]}else{this._error=[]}}}else if(t){this._error=t}else{this._error=[]}}async componentWillLoad(){this.inputId=`stzh-radio-${p++}`;this.errorWatcher(this.error);this.defaultChecked=typeof this.defaultChecked==="boolean"?this.defaultChecked:this.checked;if(!this.localization){this.localization=await window.stzhComponents.utils.fetchTranslations(this.element,"radio")}}render(){var t;const s=h(this.element,"description")||!!this.description;const r=h(this.element,"description-long")||!!this.descriptionLong;const e=h(this.element,"error")||((t=this._error)===null||t===void 0?void 0:t.length)>0;const a={"stzh-radio":true,"stzh-radio--has-description":s,"stzh-radio--has-description-long":r,"stzh-radio--has-error":e,"stzh-radio--is-required":this.required,"stzh-radio--is-invalid":this.invalid||e,"stzh-radio--is-disabled":this.disabled};return i(o,{"is-invalid":this.invalid||e,tabindex:this.disabled?null:"-1",onFocus:this.onRootFocus},i("div",{class:a},i("label",{class:"stzh-radio__field-wrapper"},i("input",{class:"stzh-radio__input",ref:t=>this.input=t,type:"radio",id:this.inputId,name:this.name,value:this.value,disabled:this.disabled,"aria-describedby":`${this.inputId}-description ${this.a11yDescribedby}`,"aria-required":this.required?"true":"false","aria-invalid":this.invalid?"true":"false",checked:this.checked,defaultChecked:this.defaultChecked,onInput:this.onInput,onFocus:this.onFocus,onBlur:this.onBlur}),i("div",{class:"stzh-radio__mark"},i("div",{class:"stzh-radio__check"})),i("div",{class:"stzh-radio__label"},this.label?this.label:i("slot",null),!this.hideOptional&&i("span",{class:"stzh-radio__marker"},i("span",{class:"stzh-radio__marker-symbol","aria-hidden":"true"},this.required?this.localization.$globals.requiredFieldMarker:this.localization.$globals.optionalFieldMarker),i("span",{class:"stzh-radio__marker-text"},this.required?this.localization.$globals.requiredFieldText:this.localization.$globals.optionalFieldText)))),i(n,{classPrefix:"stzh-radio",id:`${this.inputId}-description`,error:this._error,description:this.description,descriptionLong:this.descriptionLong,descriptionLongTitle:this.descriptionLongTitle,descriptionLongUsed:r,moreInfoButtonLabel:this.localization.$globals.moreInfoButtonLabel})))}get element(){return e(this)}static get watchers(){return{error:["errorWatcher"]}}};u.style=z;const f=".sc-stzh-radiogroup-h{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium);color:var(--stzh-base-color);box-sizing:border-box;display:block}[hidden].sc-stzh-radiogroup-h{display:none}.sc-stzh-radiogroup-h::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-radiogroup-h::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}.sc-stzh-radiogroup-h *.sc-stzh-radiogroup,.sc-stzh-radiogroup-h *.sc-stzh-radiogroup::before,.sc-stzh-radiogroup-h *.sc-stzh-radiogroup::after{box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness);-webkit-text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink);text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink)}.sc-stzh-radiogroup-h .has-focus.sc-stzh-radiogroup{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}.sc-stzh-radiogroup-h .stzh-fylingfocus-focused.sc-stzh-radiogroup{outline-style:none !important}.sc-stzh-radiogroup-h .stzh-fylingfocus-focused.sc-stzh-radiogroup::-moz-focus-inner{border:0 !important}[disabled].sc-stzh-radiogroup-h:not([disabled=false]){--description-color:var(--stzh-color-grey70)}.stzh-radiogroup.sc-stzh-radiogroup{margin:0;padding:0;border:none}.stzh-radiogroup__marker-symbol.sc-stzh-radiogroup{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium)}.stzh-radiogroup__marker-text.sc-stzh-radiogroup{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-radiogroup__description-wrapper.sc-stzh-radiogroup{display:flex;flex-direction:column-reverse;min-height:var(--description-min-height, var(--stzh-description-min-height, none))}.stzh-radiogroup__error.sc-stzh-radiogroup,.stzh-radiogroup__description.sc-stzh-radiogroup{font-size:var(--stzh-font-nano-font-size);line-height:var(--stzh-font-nano-text-line-height)}.stzh-radiogroup__error.sc-stzh-radiogroup{color:var(--stzh-color-error60)}.stzh-radiogroup__error-list.sc-stzh-radiogroup{list-style:none;margin:0;padding:0}.stzh-radiogroup__description.sc-stzh-radiogroup{display:flex;align-items:flex-start;color:var(--stzh-input-description-color, var(--description-color, var(--stzh-color-coolgrey70)));transition:color var(--stzh-base-transition-animation-speed)}.stzh-radiogroup__description-long.sc-stzh-radiogroup{margin-right:var(--stzh-space-xxsmall);margin-top:0.125rem}@supports (font: -apple-system-body) and (-webkit-appearance: none){.stzh-radiogroup__description-long.sc-stzh-radiogroup{margin-top:0}}.stzh-radiogroup__description-long-popover.sc-stzh-radiogroup{--width:auto;--max-width:27.3125rem}.stzh-radiogroup__description-long-button.sc-stzh-radiogroup{display:flex;justify-content:center;align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;padding:0;border:none;background-color:transparent;border-radius:0.5rem;cursor:pointer}.stzh-radiogroup.sc-stzh-radiogroup stzh-icon.stzh-radiogroup__description-long-icon.sc-stzh-radiogroup{--size:var(--stzh-icon-size-xsmall)}.stzh-radiogroup--has-error.sc-stzh-radiogroup .stzh-radiogroup__error.sc-stzh-radiogroup,.stzh-radiogroup--has-description.sc-stzh-radiogroup .stzh-radiogroup__description.sc-stzh-radiogroup{margin-top:var(--stzh-space-xxxsmall)}.stzh-radiogroup__fields.sc-stzh-radiogroup{display:flex;align-items:flex-start;flex-direction:column;gap:var(--stzh-space-medium)}.stzh-radiogroup__legend.sc-stzh-radiogroup{font-family:var(--stzh-font-family-heavy);font-weight:var(--stzh-font-weight-heavy);font-style:var(--stzh-font-style-heavy);font-size:var(--stzh-font-micro-font-size);line-height:var(--stzh-font-micro-text-line-height);color:var(--stzh-heading-color);padding:0;margin-bottom:var(--stzh-space-xsmall)}.stzh-radiogroup__marker.sc-stzh-radiogroup{font-size:var(--stzh-font-nano-font-size);line-height:var(--stzh-font-nano-text-line-height);margin-left:calc(-0.25em + var(--stzh-space-xsmall))}.stzh-radiogroup--hide-legend.sc-stzh-radiogroup .stzh-radiogroup__legend.sc-stzh-radiogroup{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-radiogroup--direction-horizontal.sc-stzh-radiogroup .stzh-radiogroup__fields.sc-stzh-radiogroup{flex-wrap:wrap;flex-direction:row;row-gap:var(--stzh-space-medium);-moz-column-gap:var(--stzh-space-xxlarge);column-gap:var(--stzh-space-xxlarge)}";const g="stzh-radio, stzh-button[type=radio], stzh-card";let m=0;const _=class{constructor(s){t(this,s);this._preventUpdateProperties=[];this.handleReset=async()=>{this.value=this.defaultValue};this.init=()=>{this.radios=Array.from(this.element.querySelectorAll(g));this.updateRadiosProperty("hide-optional",true);this.updateRadiosProperty("a11y-describedby",`${this.radiogroupId}-description`);this.watchValue(this.value);this.watchName(this.name);this.watchDisabled(this.disabled);this.watchInvalid(this.invalid);this.watchRequired(this.required)};this.localization=undefined;this.disabled=false;this.name=undefined;this.legend=undefined;this.hideLegend=false;this.invalid=false;this.required=false;this.hideOptional=false;this.value="";this.defaultValue="";this.direction="vertical";this.description=undefined;this.descriptionLong=undefined;this.descriptionLongTitle=undefined;this.error=undefined;this.checkedRadio=null;this.preventUpdateProperties=[]}watchName(t){this.updateRadiosProperty("name",t)}watchDisabled(t){this.updateRadiosProperty("disabled",t)}watchInvalid(t){this.updateRadiosProperty("invalid",t)}watchRequired(t){this.updateRadiosProperty("required",t)}watchValue(t){this.updateCheckedRadioByValue(t)}errorWatcher(t){if(typeof t==="string"){try{this._error=JSON.parse(t)}catch(s){if(t){this._error=[t]}else{this._error=[]}}}else if(t){this._error=t}else{this._error=[]}}preventUpdatePropertiesWatcher(t){if(typeof t==="string"){this._preventUpdateProperties=JSON.parse(t)}else{this._preventUpdateProperties=t}}resetListener(t){if(t.target.contains(this.element)){requestAnimationFrame((()=>{this.handleReset()}))}}onChange(t){this.value=t.detail.value}updateRadiosProperty(t,s){this.radios.forEach((i=>{if(t==="name"||this._preventUpdateProperties.indexOf(t)===-1){i[d(t)]=s}}))}updateCheckedRadioByValue(t){this.checkedRadio=this.radios.find((s=>s.value===t));if(this.checkedRadio){this.checkedRadio.checked=true}this.uncheckRadios()}uncheckRadios(){this.radios.forEach((t=>{if(!this.checkedRadio||t!==this.checkedRadio){t.checked=false}}))}componentDidLoad(){this.defaultValue=this.defaultValue?this.defaultValue:this.value}async componentWillLoad(){this.radiogroupId=`stzh-radiogroup-${m++}`;this.errorWatcher(this.error);this.preventUpdatePropertiesWatcher(this.preventUpdateProperties);if(!this.localization){this.localization=await window.stzhComponents.utils.fetchTranslations(this.element,"radiogroup")}}componentShouldUpdate(t,s,i){return i!=="checkedRadio"}componentDidRender(){this.init()}connectedCallback(){if(!this.value){this.radios=Array.from(this.element.querySelectorAll(g));const t=this.radios.find((t=>t.checked));if(t){this.value=t.value}}this.observer=new MutationObserver(this.init);this.observer.observe(this.element,{childList:true,subtree:true})}disconnectedCallback(){if(this.observer){this.observer.disconnect()}}render(){var t;const s=h(this.element,"description")||!!this.description;const r=h(this.element,"description-long")||!!this.descriptionLong;const e=h(this.element,"error")||((t=this._error)===null||t===void 0?void 0:t.length)>0;const a={"stzh-radiogroup":true,"stzh-radiogroup--has-description":s,"stzh-radiogroup--has-description-long":r,"stzh-radiogroup--has-error":e,"stzh-radiogroup--is-required":this.required,"stzh-radiogroup--is-disabled":this.disabled,"stzh-radiogroup--is-invalid":this.invalid||e,"stzh-radiogroup--hide-legend":this.hideLegend,[`stzh-radiogroup--direction-${this.direction}`]:!!this.direction};return i(o,{"is-invalid":this.invalid||e},i("fieldset",{class:a},this.legend&&i("legend",{class:"stzh-radiogroup__legend"},this.legend,!this.hideOptional&&i("span",{class:"stzh-radiogroup__marker"},i("span",{class:"stzh-radiogroup__marker-symbol","aria-hidden":"true"},this.required?this.localization.$globals.requiredFieldMarker:this.localization.$globals.optionalFieldMarker),i("span",{class:"stzh-radiogroup__marker-text"},this.required?this.localization.$globals.requiredFieldText:this.localization.$globals.optionalFieldText))),i("div",{class:"stzh-radiogroup__fields"},i("slot",null)),i(n,{classPrefix:"stzh-radiogroup",id:`${this.radiogroupId}-description`,error:this._error,description:this.description,descriptionLong:this.descriptionLong,descriptionLongTitle:this.descriptionLongTitle,descriptionLongUsed:r,moreInfoButtonLabel:this.localization.$globals.moreInfoButtonLabel})))}get element(){return e(this)}static get watchers(){return{name:["watchName"],disabled:["watchDisabled"],invalid:["watchInvalid"],required:["watchRequired"],value:["watchValue"],error:["errorWatcher"],preventUpdateProperties:["preventUpdatePropertiesWatcher"]}}};_.style=f;export{l as stzh_datepicker,u as stzh_radio,_ as stzh_radiogroup};
2
- //# sourceMappingURL=p-93e0ff47.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["stzhDatepickerCss","StzhDatepicker","this","handleReset","async","value","defaultValue","onRootFocus","input","focus","onInputChanged","parsedDate","dateAdapter","parse","formattedDate","_internalDateAdapter","format","valueWatcher","stzhChange","emit","component","valueAsDate","onCalendarChange","event","detail","popover","hide","resetListener","target","contains","element","requestAnimationFrame","createDateFormatters","localization","dateFormatLong","Intl","DateTimeFormat","$locale","day","month","year","newValue","date","calendarValue","printISODate","inputValue","updateButtonAccessibleLabel","dateAdapterWatcher","window","stzhComponents","utils","createFormatParseAdapter","$formats","$globals","internalDateAdapterWatcher","$formatsIso","$formatsLegacy","setDate","getPopover","buttonLabel","label","selectedDateMessage","err","connectedCallback","componentWillLoad","fetchTranslations","internalDateAdapter","render","actionUsed","hasSlot","classes","inline","h","Host","tabindex","disabled","onFocus","class","type","name","Fragment","isDateDisabled","calendarIsDateDisabled","min","calendarMin","max","calendarMax","onStzhChange","labelHidden","ref","el","noAutocomplete","onStzhChanged","readonly","description","descriptionLong","error","invalid","required","hideOptional","size","slot","placement","icon","a11yLabel","stzhRadioCss","radioCounter","StzhRadio","focusedByInput","checked","defaultChecked","onInput","originalEvent","focusEvent","FocusEvent","view","bubbles","cancelable","dispatchEvent","stzhFocus","onBlur","blurEvent","stzhBlur","errorWatcher","_error","JSON","e","inputId","descriptionUsed","descriptionLongUsed","errorUsed","_a","length","id","a11yDescribedby","requiredFieldMarker","optionalFieldMarker","requiredFieldText","optionalFieldText","StzhInputDescription","classPrefix","descriptionLongTitle","moreInfoButtonLabel","stzhRadiogroupCss","SELECTOR_RADIO","radiogroupCounter","StzhRadiogroup","_preventUpdateProperties","init","radios","Array","from","querySelectorAll","updateRadiosProperty","radiogroupId","watchValue","watchName","watchDisabled","watchInvalid","watchRequired","updateCheckedRadioByValue","preventUpdatePropertiesWatcher","onChange","prop","forEach","radio","indexOf","camelCase","checkedRadio","find","uncheckRadios","componentDidLoad","preventUpdateProperties","componentShouldUpdate","_newValue","_oldValue","componentDidRender","observer","MutationObserver","observe","childList","subtree","disconnectedCallback","disconnect","hideLegend","direction","legend"],"sources":["src/components/stzh-datepicker/stzh-datepicker.scss?tag=stzh-datepicker&encapsulation=scoped","src/components/stzh-datepicker/stzh-datepicker.tsx","src/components/stzh-radio/stzh-radio.scss?tag=stzh-radio&encapsulation=scoped","src/components/stzh-radio/stzh-radio.tsx","src/components/stzh-radiogroup/stzh-radiogroup.scss?tag=stzh-radiogroup&encapsulation=scoped","src/components/stzh-radiogroup/stzh-radiogroup.tsx"],"sourcesContent":[":host {\n width: 100%;\n\n &[inline]:not([inline=\"false\"]) {\n width: #{$calendarWidth};\n }\n}\n\n.stzh-datepicker {\n &__popover {\n --width: auto;\n }\n\n &__calendar {\n &.is-inline {\n width: 100%;\n }\n }\n\n &__actions {\n display: flex;\n justify-content: flex-end;\n\n &:not(:empty) {\n margin-right: space('small');\n }\n }\n\n /* Has action */\n\n &--has-action &__popover {\n --content-padding: 0 0 #{space('small')} 0;\n }\n}\n","import {\n Component,\n Prop,\n Host,\n Element,\n h,\n Event,\n EventEmitter,\n Method,\n Watch,\n Fragment,\n State,\n Listen\n} from \"@stencil/core\";\n\nimport {\n StzhCalendarChangeEvent,\n StzhDatepickerChangeEvent\n} from \"../../index\";\n\nimport { StzhCalendarDateDisabledPredicate } from \"../../index\";\n\nimport { printISODate } from \"../../utils/date-utils\"\nimport { StzhLocaleAdapter } from \"../../utils/date-adapter\"\n\nimport { StzhDatepickerLocalizedText } from \"./stzh-datepicker.localization\";\nimport { hasSlot } from \"../../utils/utils\";\n\n/**\n * @slot action - Slot for action below calendar (stzh-link element)\n */\n@Component({\n tag: \"stzh-datepicker\",\n styleUrl: \"stzh-datepicker.scss\",\n scoped: true\n})\nexport class StzhDatepicker {\n /**\n * Minimum date allowed to be picked. Must be in IS0-8601 format: YYYY-MM-DD.\n * This setting can be used alone or together with the max property.\n */\n @Prop() calendarMin: string = \"\"\n\n /**\n * Maximum date allowed to be picked. Must be in IS0-8601 format: YYYY-MM-DD.\n * This setting can be used alone or together with the min property.\n */\n @Prop() calendarMax: string = \"\"\n\n /**\n * Controls which days are disabled and therefore disallowed.\n * For example, this can be used to disallow selection of weekends.\n */\n @Prop() calendarIsDateDisabled: StzhCalendarDateDisabledPredicate = () => false\n\n /** Name of the hidden date picker input. */\n @Prop({ reflect: true }) name: string = \"\";\n\n /** Value of hidden date picker input (current selected date in ISO format). */\n @Prop({ mutable: true }) value: string = \"\";\n @State() calendarValue: string = \"\";\n @State() inputValue: string = \"\";\n\n /** Default value (used by reset) */\n @Prop({ mutable: true }) defaultValue: string = \"\";\n\n /** Label for input field and popover */\n @Prop() label: string = \"\";\n\n /** Whether label is visually hidden. */\n @Prop() labelHidden: boolean = false;\n\n /** Whether the element is readonly or not */\n @Prop({ reflect: true }) readonly: boolean = false;\n\n /** Whether the element is disabled or not */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Description message (use description slot as alternative) */\n @Prop() description: string;\n\n /** Long description message appearing in a popover (use description-long slot as alternative) */\n @Prop() descriptionLong: string;\n\n /** One or multiple error message (use error slot as alternative) */\n @Prop() error: string | string[];\n\n /** Invalid status */\n @Prop({ reflect: true }) invalid: boolean = false;\n\n /** Required status */\n @Prop({ reflect: true }) required: boolean = false;\n\n /** Hide `(optional)` label (or use `required` inside form ot hide it) */\n @Prop({ reflect: true }) hideOptional: boolean = false;\n\n /** Size variant */\n @Prop({ reflect: true }) size: \"default\" | \"small\" = \"default\";\n\n /** Show calendar inline */\n @Prop({ reflect: true }) inline: boolean = false;\n\n /**\n * Date adapter visible date shown to the user, for custom parsing/formatting.\n * Must be object with a `parse` function which accepts a `string` and returns a `Date`,\n * and a `format` function which accepts a `Date` and returns a `string`.\n */\n @Prop() dateAdapter: StzhLocaleAdapter;\n\n /**\n * Date adapter for internal date passed to backend, for custom parsing/formatting.\n * Can be `\"iso\"` (default, date in ISO format) / `\"legacy\"` (date in `d.m.Y` format)\n * or `StzhLocaleAdapter` (must be object with a `parse` function which accepts a `string` and returns a `Date`,\n * and a `format` function which accepts a `Date` and returns a `string`.)\n */\n @Prop() internalDateAdapter: \"iso\" | \"legacy\" | StzhLocaleAdapter = \"iso\";\n private _internalDateAdapter: StzhLocaleAdapter;\n\n /** Translation strings. */\n @Prop() localization: StzhDatepickerLocalizedText;\n\n @State() buttonLabel: string;\n\n @Listen(\"reset\", { target: \"document\" })\n resetListener(event: Event) {\n if ((event.target as HTMLElement).contains(this.element)) {\n requestAnimationFrame(() => {\n this.handleReset();\n });\n }\n }\n\n @Watch(\"localization\")\n createDateFormatters() {\n if (this.localization) {\n this.dateFormatLong = new Intl.DateTimeFormat(this.localization.$locale, {\n day: \"numeric\",\n month: \"long\",\n year: \"numeric\",\n })\n }\n }\n\n /** Update calendar and input when value prop has changed */\n @Watch(\"value\")\n valueWatcher(newValue: string) {\n if (!this._internalDateAdapter) {\n return;\n }\n\n const date = this._internalDateAdapter.parse(newValue, \"dateInput\");\n\n this.calendarValue = printISODate(date);\n this.inputValue = this.dateAdapter.format(date, \"dateInput\");\n\n this.updateButtonAccessibleLabel();\n }\n\n @Watch(\"dateAdapter\")\n dateAdapterWatcher(newValue: StzhLocaleAdapter) {\n if (!newValue) {\n this.dateAdapter = window.stzhComponents.utils.createFormatParseAdapter(\n this.localization.$formats,\n this.localization.$globals\n );\n }\n }\n\n @Watch(\"internalDateAdapter\")\n internalDateAdapterWatcher(newValue: \"iso\" | \"legacy\" | StzhLocaleAdapter) {\n if (newValue === \"iso\" || !newValue) {\n this._internalDateAdapter = window.stzhComponents.utils.createFormatParseAdapter(\n this.localization.$formatsIso,\n this.localization.$globals\n );\n } else if (newValue === \"legacy\") {\n this._internalDateAdapter = window.stzhComponents.utils.createFormatParseAdapter(\n this.localization.$formatsLegacy,\n this.localization.$globals\n );\n } else {\n this._internalDateAdapter = newValue;\n }\n }\n\n /** Set value by a JS Date object */\n @Method()\n async setDate(date: Date) {\n this.value = this._internalDateAdapter.format(date, \"dateInput\");\n }\n\n /** Return internal popover element */\n @Method()\n async getPopover(): Promise<HTMLStzhPopoverElement> {\n return this.popover;\n }\n\n /** Datepicker change event */\n @Event() stzhChange: EventEmitter<StzhDatepickerChangeEvent>;\n\n @Element() element: HTMLStzhDatepickerElement;\n\n /**\n * To format dates exclusively for the benefit of screen readers.\n *\n * We prefer DateTimeFormat over date.toLocaleDateString, as the former has\n * better performance when formatting large number of dates. See:\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString#Performance\n */\n private dateFormatLong: Intl.DateTimeFormat\n\n private input: HTMLStzhInputElement;\n private popover: HTMLStzhPopoverElement;\n // private calendar: HTMLStzhCalendarElement;\n\n private handleReset = async () => {\n this.value = this.defaultValue;\n }\n\n private onRootFocus = () => {\n if (this.input) {\n this.input.focus();\n }\n }\n\n private onInputChanged = () => {\n const parsedDate = this.dateAdapter.parse(this.input.value, \"dateInput\");\n\n if (this.input.value === \"\" || parsedDate) {\n const formattedDate = this._internalDateAdapter.format(parsedDate, \"dateInput\");\n\n if (this.value !== formattedDate) {\n this.value = formattedDate;\n } else {\n this.valueWatcher(formattedDate);\n }\n\n this.stzhChange.emit({\n component: \"stzh-datepicker\",\n value: this.value,\n valueAsDate: parsedDate,\n })\n }\n }\n\n private onCalendarChange = (event: CustomEvent<StzhCalendarChangeEvent>) => {\n if (event.detail.component !== \"stzh-calendar\") {\n return;\n }\n\n this.value = event.detail.valueAsDate\n && this._internalDateAdapter.format(event.detail.valueAsDate, \"dateInput\");\n\n this.stzhChange.emit({\n component: \"stzh-datepicker\",\n value: this.value,\n valueAsDate: event.detail.valueAsDate,\n });\n\n if (this.popover) {\n this.popover.hide();\n }\n }\n\n private updateButtonAccessibleLabel() {\n if (!this.localization) {\n return;\n }\n\n try {\n const valueAsDate = this._internalDateAdapter.parse(this.value, \"dateInput\");\n this.buttonLabel = `${this.label}, ${this.localization.buttonLabel}, ${this.localization.selectedDateMessage} ${this.dateFormatLong.format(valueAsDate)}`;\n } catch (err) {\n this.buttonLabel = `${this.label}, ${this.localization.buttonLabel}`;\n }\n }\n\n connectedCallback() {\n this.createDateFormatters();\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"datepicker\");\n }\n\n this.dateAdapterWatcher(this.dateAdapter);\n this.internalDateAdapterWatcher(this.internalDateAdapter);\n this.valueWatcher(this.value);\n this.defaultValue = this.defaultValue || this.value;\n }\n\n render() {\n const actionUsed = hasSlot(this.element, 'action');\n\n const classes = {\n \"stzh-datepicker\": true,\n \"stzh-datepicker--inline\": this.inline,\n \"stzh-datepicker--has-action\": actionUsed\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n <input\n type=\"hidden\"\n name={this.name}\n value={this.value}\n defaultValue={this.defaultValue}\n />\n\n {this.inline &&\n <Fragment>\n <stzh-calendar\n // ref={(el) => (this.calendar = el as HTMLStzhCalendarElement)}\n value={this.calendarValue}\n class=\"stzh-datepicker__calendar is-inline\"\n isDateDisabled={this.calendarIsDateDisabled}\n min={this.calendarMin}\n max={this.calendarMax}\n onStzhChange={this.onCalendarChange}\n ></stzh-calendar>\n <div class=\"stzh-datepicker__actions\">\n <slot name=\"action\"></slot>\n </div>\n </Fragment>\n }\n\n {!this.inline &&\n <stzh-input\n value={this.inputValue}\n label={this.label}\n labelHidden={this.labelHidden}\n ref={(el) => (this.input = el as HTMLStzhInputElement)}\n noAutocomplete\n onStzhChanged={this.onInputChanged}\n readonly={this.readonly}\n disabled={this.disabled}\n description={this.description}\n descriptionLong={this.descriptionLong}\n error={this.error}\n invalid={this.invalid}\n required={this.required}\n hideOptional={this.hideOptional}\n size={this.size}\n >\n <stzh-popover\n ref={(el) => (this.popover = el as HTMLStzhPopoverElement)}\n class=\"stzh-datepicker__popover\"\n slot=\"button-right\"\n placement=\"bottom-end\"\n label={this.label}\n >\n <stzh-button\n icon-only\n icon=\"calendar\"\n size={this.size}\n disabled={this.disabled}\n a11yLabel={this.buttonLabel}\n ></stzh-button>\n <div slot=\"content\">\n <stzh-calendar\n // ref={(el) => (this.calendar = el as HTMLStzhCalendarElement)}\n value={this.calendarValue}\n class=\"stzh-datepicker__calendar is-popover\"\n isDateDisabled={this.calendarIsDateDisabled}\n min={this.calendarMin}\n max={this.calendarMax}\n onStzhChange={this.onCalendarChange}\n >\n </stzh-calendar>\n <div class=\"stzh-datepicker__actions\">\n <slot name=\"action\"></slot>\n </div>\n </div>\n </stzh-popover>\n </stzh-input>\n }\n </div>\n </Host>\n );\n }\n}\n",":host {\n display: inline-block;\n\n &[disabled]:not([disabled=\"false\"]) {\n --description-color: #{$formDisabledColor};\n }\n}\n\n.stzh-radio {\n\t@include input-description;\n\n &__field-wrapper {\n @include fontSize('milli');\n position: relative;\n display: flex;\n user-select: none;\n cursor: pointer;\n }\n\n &__input {\n @include visuallyhiddenInput;\n border-radius: $formInputBorderRadius;\n }\n\n &__mark {\n @include radio__mark();\n }\n\n &__check {\n @include radio__check();\n }\n\n &__label {\n --stzh-base-color: initial;\n\n display: inline-block;\n color: $baseColor;\n transition: color $baseTransitionAnimationSpeed;\n margin-left: space('small');\n line-height: 24px;\n\n &:empty {\n display: none;\n }\n }\n\n &__marker {\n @include fontSize('micro');\n margin-left: calc(-0.25em + #{space('xsmall')});\n }\n\n /* Hover / Focus / Checked */\n\n &:hover &__label,\n &__input:checked ~ &__label {\n color: $colorPrimary70;\n }\n\n &__input:checked:hover ~ &__label,\n &__input:checked:hover ~ &__mark &__check {\n color: $colorPrimary90;\n }\n\n &:hover &__mark,\n &__input:checked ~ &__mark {\n border-color: $colorPrimary70;\n }\n\n &__input:checked:hover ~ &__mark {\n border-color: $colorPrimary90;\n }\n\n &__input:checked ~ &__mark &__check {\n opacity: 1;\n }\n\n /* Invalid */\n\n &--is-invalid &__input ~ &__label,\n &--is-invalid &__input ~ &__mark &__check {\n color: $colorError60;\n }\n\n &--is-invalid &__input ~ &__mark {\n border-color: $colorError60;\n }\n\n /* Disabled */\n\n\t&--is-disabled &__field-wrapper {\n cursor: not-allowed;\n }\n\n &--is-disabled &__input ~ &__label {\n color: $colorGrey60;\n }\n\n &--is-disabled &__input ~ &__mark &__check {\n color: $colorGrey50;\n }\n\n &--is-disabled &__input ~ &__mark {\n border-color: $colorGrey50;\n }\n\n &--is-disabled &__mark {\n background-color: $colorGrey20;\n }\n}\n","import {\n Host,\n Component,\n Prop,\n Event,\n Element,\n EventEmitter,\n h,\n Watch,\n Listen\n} from \"@stencil/core\";\n\nimport {\n StzhRadioChangeEvent,\n StzhRadioFocusEvent,\n StzhRadioBlurEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"../stzh-input/stzh-input-description\";\n\nlet radioCounter = 0;\n\n/**\n * @slot - Slot for label content\n * @slot description - Slot for description\n * @slot description-long - Slot for long description (in popover)\n * @slot description-long-title - Slot for long description title (in popover) / instead of descriptionLongTitle or description property\n * @slot error - Slot for error\n */\n@Component({\n tag: \"stzh-radio\",\n styleUrl: \"stzh-radio.scss\",\n scoped: true\n})\nexport class StzhRadio {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Whether the element is disabled or not */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** The name of the input element */\n @Prop({ reflect: true }) name: string = \"\";\n\n /** The value of the input element */\n @Prop({ mutable: true }) value: string = \"\";\n\n /** Invalid status */\n @Prop({ reflect: true }) invalid: boolean = false;\n\n /** Required status */\n @Prop({ reflect: true }) required: boolean = false;\n\n /** Hide `(optional)` label (or use `required` inside form ot hide it) */\n @Prop({ reflect: true }) hideOptional: boolean = false;\n\n /** Checked status */\n @Prop({ mutable: true, reflect: true }) checked: boolean = false;\n\n /** Default checked (used by reset) */\n @Prop({ mutable: true }) defaultChecked: boolean;\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** Description message (use description slot as alternative) */\n @Prop() description: string;\n\n /** Long description message appearing in a popover (use description-long slot as alternative) */\n @Prop() descriptionLong: string;\n\n /** Long description title appearing in a popover (use description-long-title slot as or description property alternative) */\n @Prop() descriptionLongTitle: string;\n\n /** One or multiple error message (use error slot as alternative) */\n @Prop() error: string | string[];\n private _error: string[];\n\n /** Id for element which describes the radio button (this will be overwritten if description prop or slot is used, used by stzh-radiogroup) */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Input change event */\n @Event() stzhChange: EventEmitter<StzhRadioChangeEvent>;\n\n /** Input focus event */\n @Event() stzhFocus: EventEmitter<StzhRadioFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhRadioBlurEvent>;\n\n @Listen(\"reset\", { target: \"document\" })\n resetListener(event: Event) {\n if ((event.target as HTMLElement).contains(this.element)) {\n requestAnimationFrame(() => {\n this.handleReset();\n });\n }\n }\n\n @Watch(\"error\")\n errorWatcher(newValue: string | string[]) {\n if (typeof newValue === \"string\") {\n try {\n this._error = JSON.parse(newValue);\n } catch (e) {\n if (newValue) {\n this._error = [newValue];\n } else {\n this._error = [];\n }\n }\n } else if (newValue) {\n this._error = newValue;\n } else {\n this._error = [];\n }\n }\n\n @Element() element: HTMLStzhRadioElement;\n\n private input: HTMLInputElement;\n private inputId: string;\n private focusedByInput: boolean = false;\n\n private handleReset = async () => {\n this.checked = this.defaultChecked;\n }\n\n private onInput = (event: InputEvent) => {\n this.checked = this.input.checked;\n this.stzhChange.emit({\n component: \"stzh-radio\",\n originalEvent: event,\n value: this.value,\n checked: this.checked\n });\n }\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.input.focus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n const focusEvent = new FocusEvent('focus', {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n this.stzhFocus.emit({\n component: \"stzh-radio\",\n originalEvent: event\n });\n }\n\n private onBlur = (event: FocusEvent) => {\n const blurEvent = new FocusEvent('blur', {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(blurEvent);\n this.stzhBlur.emit({\n component: \"stzh-radio\",\n originalEvent: event\n });\n }\n\n async componentWillLoad() {\n this.inputId = `stzh-radio-${radioCounter++}`;\n this.errorWatcher(this.error);\n\n this.defaultChecked = typeof this.defaultChecked === \"boolean\" ? this.defaultChecked : this.checked;\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, 'radio');\n }\n }\n\n render() {\n const descriptionUsed = hasSlot(this.element, 'description') || !!this.description;\n const descriptionLongUsed = hasSlot(this.element, 'description-long') || !!this.descriptionLong;\n const errorUsed = hasSlot(this.element, 'error') || this._error?.length > 0;\n\n const classes = {\n \"stzh-radio\": true,\n \"stzh-radio--has-description\": descriptionUsed,\n \"stzh-radio--has-description-long\": descriptionLongUsed,\n \"stzh-radio--has-error\": errorUsed,\n \"stzh-radio--is-required\": this.required,\n \"stzh-radio--is-invalid\": this.invalid || errorUsed,\n \"stzh-radio--is-disabled\": this.disabled\n };\n\n return (\n <Host is-invalid={this.invalid || errorUsed} tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n <div class={classes}>\n <label class=\"stzh-radio__field-wrapper\">\n <input\n class=\"stzh-radio__input\"\n ref={(el) => (this.input = el as HTMLInputElement)}\n type=\"radio\"\n id={this.inputId}\n name={this.name}\n value={this.value}\n disabled={this.disabled}\n aria-describedby={`${this.inputId}-description ${this.a11yDescribedby}`}\n aria-required={this.required ? \"true\" : \"false\"}\n aria-invalid={this.invalid ? \"true\" : \"false\"}\n checked={this.checked}\n defaultChecked={this.defaultChecked}\n onInput={this.onInput}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n />\n <div class=\"stzh-radio__mark\">\n <div class=\"stzh-radio__check\"></div>\n </div>\n <div class=\"stzh-radio__label\">\n {this.label ? this.label : <slot></slot>}\n {!this.hideOptional &&\n <span class=\"stzh-radio__marker\">\n <span class=\"stzh-radio__marker-symbol\" aria-hidden=\"true\">\n {this.required\n ? this.localization.$globals.requiredFieldMarker\n : this.localization.$globals.optionalFieldMarker\n }\n </span>\n <span class=\"stzh-radio__marker-text\">\n {this.required\n ? this.localization.$globals.requiredFieldText\n : this.localization.$globals.optionalFieldText\n }\n </span>\n </span>\n }\n </div>\n </label>\n <StzhInputDescription\n classPrefix=\"stzh-radio\"\n id={`${this.inputId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongTitle={this.descriptionLongTitle}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </div>\n </Host>\n );\n }\n}\n",":host {\n &[disabled]:not([disabled=\"false\"]) {\n --description-color: #{$formDisabledColor};\n }\n}\n\n.stzh-radiogroup {\n @include input-description;\n margin: 0;\n padding: 0;\n border: none;\n\n &__fields {\n display: flex;\n align-items: flex-start;\n flex-direction: column;\n gap: space('medium');\n }\n\n &__legend {\n @include font('heavy');\n @include fontSize('micro');\n color: $headingColor;\n padding: 0;\n margin-bottom: space('xsmall');\n }\n\n &__marker {\n @include fontSize('nano');\n margin-left: calc(-0.25em + #{space('xsmall')});\n }\n\n &--hide-legend &__legend {\n @include visuallyhidden;\n }\n\n &--direction-horizontal &__fields {\n flex-wrap: wrap;\n flex-direction: row;\n row-gap: space('medium');\n column-gap: space('xxlarge');\n }\n}\n","import {\n Component,\n Prop,\n Element,\n Watch,\n h,\n Listen,\n Host\n} from \"@stencil/core\";\n\nimport { StzhRadioChangeEvent } from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { camelCase } from \"../../utils/string-utils\";\nimport { StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nimport { StzhInputDescription } from \"../stzh-input/stzh-input-description\";\n\nconst SELECTOR_RADIO = 'stzh-radio, stzh-button[type=radio], stzh-card';\n\nlet radiogroupCounter = 0;\n\n/**\n * @slot - Slot for `stzh-radio`, `stzh-button[type=\"radio\"]` or `stzh-card` elements\n * @slot description - Slot for description\n * @slot description-long - Slot for long description (in popover)\n * @slot description-long-title - Slot for long description title (in popover) / instead of descriptionLongTitle or description property\n * @slot error - Slot for error\n */\n@Component({\n tag: \"stzh-radiogroup\",\n styleUrl: \"stzh-radiogroup.scss\",\n scoped: true\n})\nexport class StzhRadiogroup {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Whether the element is disabled or not */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** The name of the input radio elements, will define the radio group. If you have more than one radio group on a page, every group needs to have its own unique name */\n @Prop({ reflect: true }) name: string;\n\n /** The legend */\n @Prop() legend: string;\n\n /** Hide legend to show only for screenreaders */\n @Prop({ reflect: true }) hideLegend: boolean = false;\n\n /** Invalid status */\n @Prop({ reflect: true }) invalid: boolean = false;\n\n /** Required status */\n @Prop({ reflect: true }) required: boolean = false;\n\n /** Hide `(optional)` label (or use `required` inside form ot hide it) */\n @Prop({ reflect: true }) hideOptional: boolean = false;\n\n /** Select a radio by value */\n @Prop({ mutable: true }) value: string = \"\";\n\n /** Default value (used by reset) */\n @Prop({ mutable: true }) defaultValue: string = \"\";\n\n /** Direction */\n @Prop({ reflect: true }) direction: \"vertical\" | \"horizontal\" = \"vertical\";\n\n /** Description message (use description slot as alternative) */\n @Prop() description: string;\n\n /** Long description message appearing in a popover (use description-long slot as alternative) */\n @Prop() descriptionLong: string;\n\n /** Long description title appearing in a popover (use description-long-title slot as or description property alternative) */\n @Prop() descriptionLongTitle: string;\n\n /** One or multiple error message (use error slot as alternative) */\n @Prop() error: string | string[];\n private _error: string[];\n\n /** Current checked radio element (readonly) */\n @Prop() checkedRadio: HTMLStzhRadioElement | null = null;\n\n /** Prevent updating certain properties of radio elements (possible values inside array: disabled, invalid, required, hide-marker) */\n @Prop() preventUpdateProperties: string[] | string = [];\n private _preventUpdateProperties: string[] = [];\n\n /** Host element */\n @Element() element: HTMLElement;\n\n @Watch(\"name\")\n watchName(newValue: string) {\n this.updateRadiosProperty(\"name\", newValue);\n }\n\n @Watch(\"disabled\")\n watchDisabled(newValue: boolean) {\n this.updateRadiosProperty(\"disabled\", newValue);\n }\n\n @Watch(\"invalid\")\n watchInvalid(newValue: boolean) {\n this.updateRadiosProperty(\"invalid\", newValue);\n }\n\n @Watch(\"required\")\n watchRequired(newValue: boolean) {\n this.updateRadiosProperty(\"required\", newValue);\n }\n\n @Watch(\"value\")\n watchValue(newValue: string) {\n this.updateCheckedRadioByValue(newValue);\n }\n\n @Watch(\"error\")\n errorWatcher(newValue: string | string[]) {\n if (typeof newValue === \"string\") {\n try {\n this._error = JSON.parse(newValue);\n } catch (e) {\n if (newValue) {\n this._error = [newValue];\n } else {\n this._error = [];\n }\n }\n } else if (newValue) {\n this._error = newValue;\n } else {\n this._error = [];\n }\n }\n\n @Watch(\"preventUpdateProperties\")\n preventUpdatePropertiesWatcher(newValue: string[] | string) {\n if (typeof newValue === \"string\") {\n this._preventUpdateProperties = JSON.parse(newValue);\n } else {\n this._preventUpdateProperties = newValue;\n }\n }\n\n @Listen(\"reset\", { target: \"document\" })\n resetListener(event: Event) {\n if ((event.target as HTMLElement).contains(this.element)) {\n requestAnimationFrame(() => {\n this.handleReset();\n });\n }\n }\n\n\n @Listen(\"stzhChange\")\n onChange(event: CustomEvent<StzhRadioChangeEvent>) {\n this.value = event.detail.value;\n }\n\n /** Radio elements */\n private radios: HTMLStzhRadioElement[];\n private radiogroupId: string;\n private observer: MutationObserver;\n\n private updateRadiosProperty(prop: string, value: any) {\n this.radios.forEach((radio: HTMLStzhRadioElement) => {\n if (prop === \"name\" || (this._preventUpdateProperties.indexOf(prop) === -1)) {\n radio[camelCase(prop)] = value;\n }\n });\n }\n\n private updateCheckedRadioByValue(value: string) {\n this.checkedRadio = this.radios.find(radio => radio.value === value);\n\n if (this.checkedRadio) {\n this.checkedRadio.checked = true;\n }\n\n this.uncheckRadios();\n }\n\n private uncheckRadios() {\n // make sure that no other radios are checked than the current one or no one\n this.radios.forEach((radio: HTMLStzhRadioElement) => {\n if (!this.checkedRadio || radio !== this.checkedRadio) {\n radio.checked = false;\n }\n });\n }\n\n private handleReset = async () => {\n this.value = this.defaultValue;\n }\n\n private init = () => {\n // update radios\n this.radios = Array.from(this.element.querySelectorAll(SELECTOR_RADIO));\n\n this.updateRadiosProperty(\"hide-optional\", true);\n this.updateRadiosProperty(\"a11y-describedby\", `${this.radiogroupId}-description`);\n\n this.watchValue(this.value);\n this.watchName(this.name);\n this.watchDisabled(this.disabled);\n this.watchInvalid(this.invalid);\n this.watchRequired(this.required);\n }\n\n componentDidLoad() {\n this.defaultValue = this.defaultValue ? this.defaultValue : this.value;\n }\n\n async componentWillLoad() {\n this.radiogroupId = `stzh-radiogroup-${radiogroupCounter++}`;\n this.errorWatcher(this.error);\n this.preventUpdatePropertiesWatcher(this.preventUpdateProperties);\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, 'radiogroup');\n }\n }\n\n componentShouldUpdate(_newValue, _oldValue, prop: string) {\n return prop !== \"checkedRadio\";\n }\n\n componentDidRender() {\n this.init();\n }\n\n connectedCallback() {\n if (!this.value) {\n this.radios = Array.from(this.element.querySelectorAll(SELECTOR_RADIO));\n\n // try to find a checkbox that might has checked set to true\n const checkedRadio = this.radios.find(radio => radio.checked);\n\n if (checkedRadio) {\n this.value = checkedRadio.value;\n }\n }\n\n this.observer = new MutationObserver(this.init);\n this.observer.observe(this.element, {\n childList: true,\n subtree: true,\n });\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n }\n\n render() {\n const descriptionUsed = hasSlot(this.element, 'description') || !!this.description;\n const descriptionLongUsed = hasSlot(this.element, 'description-long') || !!this.descriptionLong;\n const errorUsed = hasSlot(this.element, 'error') || this._error?.length > 0;\n\n const classes = {\n \"stzh-radiogroup\": true,\n \"stzh-radiogroup--has-description\": descriptionUsed,\n \"stzh-radiogroup--has-description-long\": descriptionLongUsed,\n \"stzh-radiogroup--has-error\": errorUsed,\n \"stzh-radiogroup--is-required\": this.required,\n \"stzh-radiogroup--is-disabled\": this.disabled,\n \"stzh-radiogroup--is-invalid\": this.invalid || errorUsed,\n \"stzh-radiogroup--hide-legend\": this.hideLegend,\n [`stzh-radiogroup--direction-${this.direction}`]: !!this.direction\n };\n\n return (\n <Host is-invalid={this.invalid || errorUsed}>\n <fieldset class={classes}>\n {this.legend &&\n <legend class=\"stzh-radiogroup__legend\">\n {this.legend}\n {!this.hideOptional &&\n <span class=\"stzh-radiogroup__marker\">\n <span class=\"stzh-radiogroup__marker-symbol\" aria-hidden=\"true\">\n {this.required\n ? this.localization.$globals.requiredFieldMarker\n : this.localization.$globals.optionalFieldMarker\n }\n </span>\n <span class=\"stzh-radiogroup__marker-text\">\n {this.required\n ? this.localization.$globals.requiredFieldText\n : this.localization.$globals.optionalFieldText\n }\n </span>\n </span>\n }\n </legend>\n }\n <div class=\"stzh-radiogroup__fields\">\n <slot></slot>\n </div>\n <StzhInputDescription\n classPrefix=\"stzh-radiogroup\"\n id={`${this.radiogroupId}-description`}\n error={this._error}\n description={this.description}\n descriptionLong={this.descriptionLong}\n descriptionLongTitle={this.descriptionLongTitle}\n descriptionLongUsed={descriptionLongUsed}\n moreInfoButtonLabel={this.localization.$globals.moreInfoButtonLabel}\n />\n </fieldset>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import{r as t,c as o,h as e,a as r,g as i}from"./p-c7bfac7a.js";import{h as s}from"./p-7e304ea3.js";import{S as n}from"./p-fc692303.js";import"./p-9b063923.js";function l(t,o){t.split(/\s+/).forEach((t=>{o(t)}))}class a{constructor(){this._events=void 0;this._events={}}on(t,o){l(t,(t=>{const e=this._events[t]||[];e.push(o);this._events[t]=e}))}off(t,o){var e=arguments.length;if(e===0){this._events={};return}l(t,(t=>{if(e===1){delete this._events[t];return}const r=this._events[t];if(r===undefined)return;r.splice(r.indexOf(o),1);this._events[t]=r}))}trigger(t,...o){var e=this;l(t,(t=>{const r=e._events[t];if(r===undefined)return;r.forEach((t=>{t.apply(e,o)}))}))}}function d(t){t.plugins={};return class extends t{constructor(...t){super(...t);this.plugins={names:[],settings:{},requested:{},loaded:{}}}static define(o,e){t.plugins[o]={name:o,fn:e}}initializePlugins(t){var o,e;const r=this;const i=[];if(Array.isArray(t)){t.forEach((t=>{if(typeof t==="string"){i.push(t)}else{r.plugins.settings[t.name]=t.options;i.push(t.name)}}))}else if(t){for(o in t){if(t.hasOwnProperty(o)){r.plugins.settings[o]=t[o];i.push(o)}}}while(e=i.shift()){r.require(e)}}loadPlugin(o){var e=this;var r=e.plugins;var i=t.plugins[o];if(!t.plugins.hasOwnProperty(o)){throw new Error('Unable to find "'+o+'" plugin')}r.requested[o]=true;r.loaded[o]=i.fn.apply(e,[e.plugins.settings[o]||{}]);r.names.push(o)}require(t){var o=this;var e=o.plugins;if(!o.plugins.loaded.hasOwnProperty(t)){if(e.requested[t]){throw new Error('Plugin has circular dependency ("'+t+'")')}o.loadPlugin(t)}return e.loaded[t]}}}
2
- /*! @orchidjs/unicode-variants | https://github.com/orchidjs/unicode-variants | Apache License (v2) */const h=t=>{t=t.filter(Boolean);if(t.length<2){return t[0]||""}return v(t)==1?"["+t.join("")+"]":"(?:"+t.join("|")+")"};const c=t=>{if(!u(t)){return t.join("")}let o="";let e=0;const r=()=>{if(e>1){o+="{"+e+"}"}};t.forEach(((i,s)=>{if(i===t[s-1]){e++;return}r();o+=i;e=1}));r();return o};const p=t=>{let o=m(t);return h(o)};const u=t=>new Set(t).size!==t.length;const f=t=>(t+"").replace(/([\$\(\)\*\+\.\?\[\]\^\{\|\}\\])/gu,"\\$1");const v=t=>t.reduce(((t,o)=>Math.max(t,z(o))),0);const z=t=>m(t).length;const m=t=>Array.from(t)
3
- /*! @orchidjs/unicode-variants | https://github.com/orchidjs/unicode-variants | Apache License (v2) */;const w=t=>{if(t.length===1)return[[t]];let o=[];const e=t.substring(1);const r=w(e);r.forEach((function(e){let r=e.slice(0);r[0]=t.charAt(0)+r[0];o.push(r);r=e.slice(0);r.unshift(t.charAt(0));o.push(r)}));return o};
4
- /*! @orchidjs/unicode-variants | https://github.com/orchidjs/unicode-variants | Apache License (v2) */const g=[[0,65535]];const _="[̀-ͯ·ʾʼ]";let b;let y;const x=3;const k={};const O={"/":"⁄∕",0:"߀",a:"ⱥɐɑ",aa:"ꜳ",ae:"æǽǣ",ao:"ꜵ",au:"ꜷ",av:"ꜹꜻ",ay:"ꜽ",b:"ƀɓƃ",c:"ꜿƈȼↄ",d:"đɗɖᴅƌꮷԁɦ",e:"ɛǝᴇɇ",f:"ꝼƒ",g:"ǥɠꞡᵹꝿɢ",h:"ħⱨⱶɥ",i:"ɨı",j:"ɉȷ",k:"ƙⱪꝁꝃꝅꞣ",l:"łƚɫⱡꝉꝇꞁɭ",m:"ɱɯϻ",n:"ꞥƞɲꞑᴎлԉ",o:"øǿɔɵꝋꝍᴑ",oe:"œ",oi:"ƣ",oo:"ꝏ",ou:"ȣ",p:"ƥᵽꝑꝓꝕρ",q:"ꝗꝙɋ",r:"ɍɽꝛꞧꞃ",s:"ßȿꞩꞅʂ",t:"ŧƭʈⱦꞇ",th:"þ",tz:"ꜩ",u:"ʉ",v:"ʋꝟʌ",vy:"ꝡ",w:"ⱳ",y:"ƴɏỿ",z:"ƶȥɀⱬꝣ",hv:"ƕ"};for(let t in O){let o=O[t]||"";for(let e=0;e<o.length;e++){let r=o.substring(e,e+1);k[r]=t}}const S=new RegExp(Object.keys(k).join("|")+"|"+_,"gu");const F=t=>{if(b!==undefined)return;b=T(t||g)};const A=(t,o="NFKD")=>t.normalize(o);const $=t=>m(t).reduce(((t,o)=>t+C(o)),"");const C=t=>{t=A(t).toLowerCase().replace(S,(t=>k[t]||""));return A(t,"NFC")};function*I(t){for(const[o,e]of t){for(let t=o;t<=e;t++){let o=String.fromCharCode(t);let e=$(o);if(e==o.toLowerCase()){continue}if(e.length>x){continue}if(e.length==0){continue}yield{folded:e,composed:o,code_point:t}}}}const j=t=>{const o={};const e=(t,e)=>{const r=o[t]||new Set;const i=new RegExp("^"+p(r)+"$","iu");if(e.match(i)){return}r.add(f(e));o[t]=r};for(let o of I(t)){e(o.folded,o.folded);e(o.folded,o.composed)}return o};const T=t=>{const o=j(t);const e={};let r=[];for(let t in o){let i=o[t];if(i){e[t]=p(i)}if(t.length>1){r.push(f(t))}}r.sort(((t,o)=>o.length-t.length));const i=h(r);y=new RegExp("^"+i,"u");return e};const E=(t,o=1)=>{let e=0;t=t.map((t=>{if(b[t]){e+=t.length}return b[t]||t}));if(e>=o){return c(t)}return""};const L=(t,o=1)=>{o=Math.max(o,t.length-1);return h(w(t).map((t=>E(t,o))))};const R=(t,o=true)=>{let e=t.length>1?1:0;return h(t.map((t=>{let r=[];const i=o?t.length():t.length()-1;for(let o=0;o<i;o++){r.push(L(t.substrs[o]||"",e))}return c(r)})))};const M=(t,o)=>{for(const e of o){if(e.start!=t.start||e.end!=t.end){continue}if(e.substrs.join("")!==t.substrs.join("")){continue}let o=t.parts;const r=t=>{for(const e of o){if(e.start===t.start&&e.substr===t.substr){return false}if(t.length==1||e.length==1){continue}if(t.start<e.start&&t.end>e.start){return true}if(e.start<t.start&&e.end>t.start){return true}}return false};let i=e.parts.filter(r);if(i.length>0){continue}return true}return false};class D{constructor(){this.parts=[];this.substrs=[];this.start=0;this.end=0}add(t){if(t){this.parts.push(t);this.substrs.push(t.substr);this.start=Math.min(t.start,this.start);this.end=Math.max(t.end,this.end)}}last(){return this.parts[this.parts.length-1]}length(){return this.parts.length}clone(t,o){let e=new D;let r=JSON.parse(JSON.stringify(this.parts));let i=r.pop();for(const t of r){e.add(t)}let s=o.substr.substring(0,t-i.start);let n=s.length;e.add({start:i.start,end:i.start+n,length:n,substr:s});return e}}const N=t=>{F();t=$(t);let o="";let e=[new D];for(let r=0;r<t.length;r++){let i=t.substring(r);let s=i.match(y);const n=t.substring(r,r+1);const l=s?s[0]:null;let a=[];let d=new Set;for(const t of e){const o=t.last();if(!o||o.length==1||o.end<=r){if(l){const o=l.length;t.add({start:r,end:r+o,length:o,substr:l});d.add("1")}else{t.add({start:r,end:r+1,length:1,substr:n});d.add("2")}}else if(l){let e=t.clone(r,o);const i=l.length;e.add({start:r,end:r+i,length:i,substr:l});a.push(e)}else{d.add("3")}}if(a.length>0){a=a.sort(((t,o)=>t.length()-o.length()));for(let t of a){if(M(t,e)){continue}e.push(t)}continue}if(r>0&&d.size==1&&!d.has("3")){o+=R(e,false);let t=new D;const r=e[0];if(r){t.add(r.last())}e=[t]}}o+=R(e,true);return o};
5
- /*! sifter.js | https://github.com/orchidjs/sifter.js | Apache License (v2) */const q=(t,o)=>{if(!t)return;return t[o]};const W=(t,o)=>{if(!t)return;var e,r=o.split(".");while((e=r.shift())&&(t=t[e]));return t};const P=(t,o,e)=>{var r,i;if(!t)return 0;t=t+"";if(o.regex==null)return 0;i=t.search(o.regex);if(i===-1)return 0;r=o.string.length/t.length;if(i===0)r+=.5;return r*e};const V=(t,o)=>{var e=t[o];if(typeof e=="function")return e;if(e&&!Array.isArray(e)){t[o]=[e]}};const J=(t,o)=>{if(Array.isArray(t)){t.forEach(o)}else{for(var e in t){if(t.hasOwnProperty(e)){o(t[e],e)}}}};const B=(t,o)=>{if(typeof t==="number"&&typeof o==="number"){return t>o?1:t<o?-1:0}t=$(t+"").toLowerCase();o=$(o+"").toLowerCase();if(t>o)return 1;if(o>t)return-1;return 0};
6
- /*! sifter.js | https://github.com/orchidjs/sifter.js | Apache License (v2) */class H{constructor(t,o){this.items=void 0;this.settings=void 0;this.items=t;this.settings=o||{diacritics:true}}tokenize(t,o,e){if(!t||!t.length)return[];const r=[];const i=t.split(/\s+/);var s;if(e){s=new RegExp("^("+Object.keys(e).map(f).join("|")+"):(.*)$")}i.forEach((t=>{let e;let i=null;let n=null;if(s&&(e=t.match(s))){i=e[1];t=e[2]}if(t.length>0){if(this.settings.diacritics){n=N(t)||null}else{n=f(t)}if(n&&o)n="\\b"+n}r.push({string:t,regex:n?new RegExp(n,"iu"):null,field:i})}));return r}getScoreFunction(t,o){var e=this.prepareSearch(t,o);return this._getScoreFunction(e)}_getScoreFunction(t){const o=t.tokens,e=o.length;if(!e){return function(){return 0}}const r=t.options.fields,i=t.weights,s=r.length,n=t.getAttrFn;if(!s){return function(){return 1}}const l=function(){if(s===1){return function(t,o){const e=r[0].field;return P(n(o,e),t,i[e]||1)}}return function(t,o){var e=0;if(t.field){const r=n(o,t.field);if(!t.regex&&r){e+=1/s}else{e+=P(r,t,1)}}else{J(i,((r,i)=>{e+=P(n(o,i),t,r)}))}return e/s}}();if(e===1){return function(t){return l(o[0],t)}}if(t.options.conjunction==="and"){return function(t){var r,i=0;for(let e of o){r=l(e,t);if(r<=0)return 0;i+=r}return i/e}}else{return function(t){var r=0;J(o,(o=>{r+=l(o,t)}));return r/e}}}getSortFunction(t,o){var e=this.prepareSearch(t,o);return this._getSortFunction(e)}_getSortFunction(t){var o,e=[];const r=this,i=t.options,s=!t.query&&i.sort_empty?i.sort_empty:i.sort;if(typeof s=="function"){return s.bind(this)}const n=function o(e,i){if(e==="$score")return i.score;return t.getAttrFn(r.items[i.id],e)};if(s){for(let o of s){if(t.query||o.field!=="$score"){e.push(o)}}}if(t.query){o=true;for(let t of e){if(t.field==="$score"){o=false;break}}if(o){e.unshift({field:"$score",direction:"desc"})}}else{e=e.filter((t=>t.field!=="$score"))}const l=e.length;if(!l){return null}return function(t,o){var r,i;for(let s of e){i=s.field;let e=s.direction==="desc"?-1:1;r=e*B(n(i,t),n(i,o));if(r)return r}return 0}}prepareSearch(t,o){const e={};var r=Object.assign({},o);V(r,"sort");V(r,"sort_empty");if(r.fields){V(r,"fields");const t=[];r.fields.forEach((o=>{if(typeof o=="string"){o={field:o,weight:1}}t.push(o);e[o.field]="weight"in o?o.weight:1}));r.fields=t}return{options:r,query:t.toLowerCase().trim(),tokens:this.tokenize(t,r.respect_word_boundaries,e),total:0,items:[],weights:e,getAttrFn:r.nesting?W:q}}search(t,o){var e=this,r,i;i=this.prepareSearch(t,o);o=i.options;t=i.query;const s=o.score||e._getScoreFunction(i);if(t.length){J(e.items,((t,e)=>{r=s(t);if(o.filter===false||r>0){i.items.push({score:r,id:e})}}))}else{J(e.items,((t,o)=>{i.items.push({score:1,id:o})}))}const n=e._getSortFunction(i);if(n)i.items.sort(n);i.total=i.items.length;if(typeof o.limit==="number"){i.items=i.items.slice(0,o.limit)}return i}}const K=(t,o)=>{if(Array.isArray(t)){t.forEach(o)}else{for(var e in t){if(t.hasOwnProperty(e)){o(t[e],e)}}}};const G=t=>{if(t.jquery){return t[0]}if(t instanceof HTMLElement){return t}if(U(t)){var o=document.createElement("template");o.innerHTML=t.trim();return o.content.firstChild}return document.querySelector(t)};const U=t=>{if(typeof t==="string"&&t.indexOf("<")>-1){return true}return false};const Y=t=>t.replace(/['"\\]/g,"\\$&");const Q=(t,o)=>{var e=document.createEvent("HTMLEvents");e.initEvent(o,true,false);t.dispatchEvent(e)};const X=(t,o)=>{Object.assign(t.style,o)};const Z=(t,...o)=>{var e=ot(o);t=et(t);t.map((t=>{e.map((o=>{t.classList.add(o)}))}))};const tt=(t,...o)=>{var e=ot(o);t=et(t);t.map((t=>{e.map((o=>{t.classList.remove(o)}))}))};const ot=t=>{var o=[];K(t,(t=>{if(typeof t==="string"){t=t.trim().split(/[\11\12\14\15\40]/)}if(Array.isArray(t)){o=o.concat(t)}}));return o.filter(Boolean)};const et=t=>{if(!Array.isArray(t)){t=[t]}return t};const rt=(t,o,e)=>{if(e&&!e.contains(t)){return}while(t&&t.matches){if(t.matches(o)){return t}t=t.parentNode}};const it=(t,o=0)=>{if(o>0){return t[t.length-1]}return t[0]};const st=t=>Object.keys(t).length===0;const nt=(t,o)=>{if(!t)return-1;o=o||t.nodeName;var e=0;while(t=t.previousElementSibling){if(t.matches(o)){e++}}return e};const lt=(t,o)=>{K(o,((o,e)=>{if(o==null){t.removeAttribute(e)}else{t.setAttribute(e,""+o)}}))};const at=(t,o)=>{if(t.parentNode)t.parentNode.replaceChild(o,t)};const dt=(t,o)=>{if(o===null)return;if(typeof o==="string"){if(!o.length)return;o=new RegExp(o,"i")}const e=t=>{var e=t.data.match(o);if(e&&t.data.length>0){var r=document.createElement("span");r.className="highlight";var i=t.splitText(e.index);i.splitText(e[0].length);var s=i.cloneNode(true);r.appendChild(s);at(i,r);return 1}return 0};const r=t=>{if(t.nodeType===1&&t.childNodes&&!/(script|style)/i.test(t.tagName)&&(t.className!=="highlight"||t.tagName!=="SPAN")){Array.from(t.childNodes).forEach((t=>{i(t)}))}};const i=t=>{if(t.nodeType===3){return e(t)}r(t);return 0};i(t)};const ht=t=>{var o=t.querySelectorAll("span.highlight");Array.prototype.forEach.call(o,(function(t){var o=t.parentNode;o.replaceChild(t.firstChild,t);o.normalize()}))};const ct=65;const pt=13;const ut=27;const ft=37;const vt=38;const zt=39;const mt=40;const wt=8;const gt=46;const _t=9;const bt=typeof navigator==="undefined"?false:/Mac/.test(navigator.userAgent);const yt=bt?"metaKey":"ctrlKey";var xt={options:[],optgroups:[],plugins:[],delimiter:",",splitOn:null,persist:true,diacritics:true,create:null,createOnBlur:false,createFilter:null,highlight:true,openOnFocus:true,shouldOpen:null,maxOptions:50,maxItems:null,hideSelected:null,duplicates:false,addPrecedence:false,selectOnTab:false,preload:null,allowEmptyOption:false,loadThrottle:300,loadingClass:"loading",dataAttr:null,optgroupField:"optgroup",valueField:"value",labelField:"text",disabledField:"disabled",optgroupLabelField:"label",optgroupValueField:"value",lockOptgroupOrder:false,sortField:"$order",searchField:["text"],searchConjunction:"and",mode:null,openDisplay:"block",wrapperClass:"ts-wrapper",controlClass:"ts-control",dropdownClass:"ts-dropdown",dropdownContentClass:"ts-dropdown-content",itemClass:"item",optionClass:"option",dropdownParent:null,controlInput:'<input type="text" autocomplete="off" size="1" />',copyClassesToDropdown:false,placeholder:null,hidePlaceholder:null,transformLoadQuery:function(t){return t.trim()},shouldLoad:function(t){return t.length>0},render:{}};const kt=t=>{if(typeof t==="undefined"||t===null)return null;return Ot(t)};const Ot=t=>{if(typeof t==="boolean")return t?"1":"0";return t+""};const St=t=>(t+"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");const Ft=(t,o)=>{var e;return function(r,i){var s=this;if(e){s.loading=Math.max(s.loading-1,0);clearTimeout(e)}e=setTimeout((function(){e=null;s.loadedSearches[r]=true;t.call(s,r,i)}),o)}};const At=(t,o,e)=>{var r;var i=t.trigger;var s={};t.trigger=function(){var e=arguments[0];if(o.indexOf(e)!==-1){s[e]=arguments}else{return i.apply(t,arguments)}};e.apply(t,[]);t.trigger=i;for(r of o){if(r in s){i.apply(t,s[r])}}};const $t=t=>({start:t.selectionStart||0,length:(t.selectionEnd||0)-(t.selectionStart||0)});const Ct=(t,o=false)=>{if(t){t.preventDefault();if(o){t.stopPropagation()}}};const It=(t,o,e,r)=>{t.addEventListener(o,e,r)};const jt=(t,o)=>{if(!o){return false}if(!o[t]){return false}var e=(o.altKey?1:0)+(o.ctrlKey?1:0)+(o.shiftKey?1:0)+(o.metaKey?1:0);if(e===1){return true}return false};const Tt=(t,o)=>{const e=t.getAttribute("id");if(e){return e}t.setAttribute("id",o);return o};const Et=t=>t.replace(/[\\"']/g,"\\$&");const Lt=(t,o)=>{if(o)t.append(o)};function Rt(t,o){var e=Object.assign({},xt,o);var r=e.dataAttr;var i=e.labelField;var s=e.valueField;var n=e.disabledField;var l=e.optgroupField;var a=e.optgroupLabelField;var d=e.optgroupValueField;var h=t.tagName.toLowerCase();var c=t.getAttribute("placeholder")||t.getAttribute("data-placeholder");if(!c&&!e.allowEmptyOption){let o=t.querySelector('option[value=""]');if(o){c=o.textContent}}var p={placeholder:c,options:[],optgroups:[],items:[],maxItems:null};var u=()=>{var o;var h=p.options;var c={};var u=1;var f=t=>{var o=Object.assign({},t.dataset);var e=r&&o[r];if(typeof e==="string"&&e.length){o=Object.assign(o,JSON.parse(e))}return o};var v=(t,o)=>{var r=kt(t.value);if(r==null)return;if(!r&&!e.allowEmptyOption)return;if(c.hasOwnProperty(r)){if(o){var a=c[r][l];if(!a){c[r][l]=o}else if(!Array.isArray(a)){c[r][l]=[a,o]}else{a.push(o)}}}else{var d=f(t);d[i]=d[i]||t.textContent;d[s]=d[s]||r;d[n]=d[n]||t.disabled;d[l]=d[l]||o;d.$option=t;c[r]=d;h.push(d)}if(t.selected){p.items.push(r)}};var z=t=>{var o,e;e=f(t);e[a]=e[a]||t.getAttribute("label")||"";e[d]=e[d]||u++;e[n]=e[n]||t.disabled;p.optgroups.push(e);o=e[d];K(t.children,(t=>{v(t,o)}))};p.maxItems=t.hasAttribute("multiple")?null:1;K(t.children,(t=>{o=t.tagName.toLowerCase();if(o==="optgroup"){z(t)}else if(o==="option"){v(t)}}))};var f=()=>{const o=t.getAttribute(r);if(!o){var n=t.value.trim()||"";if(!e.allowEmptyOption&&!n.length)return;const o=n.split(e.delimiter);K(o,(t=>{const o={};o[i]=t;o[s]=t;p.options.push(o)}));p.items=o}else{p.options=JSON.parse(o);K(p.options,(t=>{p.items.push(t[s])}))}};if(h==="select"){u()}else{f()}return Object.assign({},xt,p,o)}var Mt=0;class Dt extends(d(a)){constructor(t,o){super();this.control_input=void 0;this.wrapper=void 0;this.dropdown=void 0;this.control=void 0;this.dropdown_content=void 0;this.focus_node=void 0;this.order=0;this.settings=void 0;this.input=void 0;this.tabIndex=void 0;this.is_select_tag=void 0;this.rtl=void 0;this.inputId=void 0;this._destroy=void 0;this.sifter=void 0;this.isOpen=false;this.isDisabled=false;this.isRequired=void 0;this.isInvalid=false;this.isValid=true;this.isLocked=false;this.isFocused=false;this.isInputHidden=false;this.isSetup=false;this.ignoreFocus=false;this.ignoreHover=false;this.hasOptions=false;this.currentResults=void 0;this.lastValue="";this.caretPos=0;this.loading=0;this.loadedSearches={};this.activeOption=null;this.activeItems=[];this.optgroups={};this.options={};this.userOptions={};this.items=[];Mt++;var e;var r=G(t);if(r.tomselect){throw new Error("Tom Select already initialized on this element")}r.tomselect=this;var i=window.getComputedStyle&&window.getComputedStyle(r,null);e=i.getPropertyValue("direction");const s=Rt(r,o);this.settings=s;this.input=r;this.tabIndex=r.tabIndex||0;this.is_select_tag=r.tagName.toLowerCase()==="select";this.rtl=/rtl/i.test(e);this.inputId=Tt(r,"tomselect-"+Mt);this.isRequired=r.required;this.sifter=new H(this.options,{diacritics:s.diacritics});s.mode=s.mode||(s.maxItems===1?"single":"multi");if(typeof s.hideSelected!=="boolean"){s.hideSelected=s.mode==="multi"}if(typeof s.hidePlaceholder!=="boolean"){s.hidePlaceholder=s.mode!=="multi"}var n=s.createFilter;if(typeof n!=="function"){if(typeof n==="string"){n=new RegExp(n)}if(n instanceof RegExp){s.createFilter=t=>n.test(t)}else{s.createFilter=t=>this.settings.duplicates||!this.options[t]}}this.initializePlugins(s.plugins);this.setupCallbacks();this.setupTemplates();const l=G("<div>");const a=G("<div>");const d=this._render("dropdown");const h=G(`<div role="listbox" tabindex="-1">`);const c=this.input.getAttribute("class")||"";const p=s.mode;var u;Z(l,s.wrapperClass,c,p);Z(a,s.controlClass);Lt(l,a);Z(d,s.dropdownClass,p);if(s.copyClassesToDropdown){Z(d,c)}Z(h,s.dropdownContentClass);Lt(d,h);G(s.dropdownParent||l).appendChild(d);if(U(s.controlInput)){u=G(s.controlInput);var f=["autocorrect","autocapitalize","autocomplete"];J(f,(t=>{if(r.getAttribute(t)){lt(u,{[t]:r.getAttribute(t)})}}));u.tabIndex=-1;a.appendChild(u);this.focus_node=u}else if(s.controlInput){u=G(s.controlInput);this.focus_node=u}else{u=G("<input/>");this.focus_node=a}this.wrapper=l;this.dropdown=d;this.dropdown_content=h;this.control=a;this.control_input=u;this.setup()}setup(){const t=this;const o=t.settings;const e=t.control_input;const r=t.dropdown;const i=t.dropdown_content;const s=t.wrapper;const n=t.control;const l=t.input;const a=t.focus_node;const d={passive:true};const h=t.inputId+"-ts-dropdown";lt(i,{id:h});lt(a,{role:"combobox","aria-haspopup":"listbox","aria-expanded":"false","aria-controls":h});const c=Tt(a,t.inputId+"-ts-control");const p="label[for='"+Y(t.inputId)+"']";const u=document.querySelector(p);const v=t.focus.bind(t);const z=l.getAttribute("aria-labelledby");if(u){It(u,"click",v);lt(u,{for:c})}if(z){lt(a,{"aria-labelledby":z});lt(i,{"aria-labelledby":z})}s.style.width=l.style.width;if(t.plugins.names.length){const o="plugin-"+t.plugins.names.join(" plugin-");Z([s,r],o)}if(o.mode==="multi"){lt(i,{"aria-multiselectable":"true"});if(t.is_select_tag){lt(l,{multiple:"multiple"})}}if(o.placeholder){lt(e,{placeholder:o.placeholder})}if(!o.splitOn&&o.delimiter){o.splitOn=new RegExp("\\s*"+f(o.delimiter)+"+\\s*")}if(o.load&&o.loadThrottle){o.load=Ft(o.load,o.loadThrottle)}t.control_input.type=l.type;It(r,"mousemove",(()=>{t.ignoreHover=false}));It(r,"mouseenter",(o=>{var e=rt(o.target,"[data-selectable]",r);if(e)t.onOptionHover(o,e)}),{capture:true});It(r,"click",(o=>{const e=rt(o.target,"[data-selectable]");if(e){t.onOptionSelect(o,e);Ct(o,true)}}));It(n,"click",(o=>{var r=rt(o.target,"[data-ts-item]",n);if(r&&t.onItemSelect(o,r)){Ct(o,true);return}if(e.value!=""){return}t.onClick();Ct(o,true)}));It(a,"keydown",(o=>t.onKeyDown(o)));It(e,"keypress",(o=>t.onKeyPress(o)));It(e,"input",(o=>t.onInput(o)));It(a,"blur",(o=>t.onBlur(o)));It(a,"focus",(o=>t.onFocus(o)));It(e,"paste",(o=>t.onPaste(o)));const m=o=>{const i=o.composedPath()[0];if(!s.contains(i)&&!r.contains(i)){if(t.isFocused){t.blur()}t.inputState();return}if(i==e&&t.isOpen){o.stopPropagation()}else{Ct(o,true)}};const w=()=>{if(t.isOpen){t.positionDropdown()}};It(document,"mousedown",m);It(window,"scroll",w,d);It(window,"resize",w,d);this._destroy=()=>{document.removeEventListener("mousedown",m);window.removeEventListener("scroll",w);window.removeEventListener("resize",w);if(u)u.removeEventListener("click",v)};this.revertSettings={innerHTML:l.innerHTML,tabIndex:l.tabIndex};l.tabIndex=-1;l.insertAdjacentElement("afterend",t.wrapper);t.sync(false);o.items=[];delete o.optgroups;delete o.options;It(l,"invalid",(()=>{if(t.isValid){t.isValid=false;t.isInvalid=true;t.refreshState()}}));t.updateOriginalInput();t.refreshItems();t.close(false);t.inputState();t.isSetup=true;if(l.disabled){t.disable()}else{t.enable()}t.on("change",this.onChange);Z(l,"tomselected","ts-hidden-accessible");t.trigger("initialize");if(o.preload===true){t.preload()}}setupOptions(t=[],o=[]){this.addOptions(t);J(o,(t=>{this.registerOptionGroup(t)}))}setupTemplates(){var t=this;var o=t.settings.labelField;var e=t.settings.optgroupLabelField;var r={optgroup:t=>{let o=document.createElement("div");o.className="optgroup";o.appendChild(t.options);return o},optgroup_header:(t,o)=>'<div class="optgroup-header">'+o(t[e])+"</div>",option:(t,e)=>"<div>"+e(t[o])+"</div>",item:(t,e)=>"<div>"+e(t[o])+"</div>",option_create:(t,o)=>'<div class="create">Add <strong>'+o(t.input)+"</strong>&hellip;</div>",no_results:()=>'<div class="no-results">No results found</div>',loading:()=>'<div class="spinner"></div>',not_loading:()=>{},dropdown:()=>"<div></div>"};t.settings.render=Object.assign({},r,t.settings.render)}setupCallbacks(){var t,o;var e={initialize:"onInitialize",change:"onChange",item_add:"onItemAdd",item_remove:"onItemRemove",item_select:"onItemSelect",clear:"onClear",option_add:"onOptionAdd",option_remove:"onOptionRemove",option_clear:"onOptionClear",optgroup_add:"onOptionGroupAdd",optgroup_remove:"onOptionGroupRemove",optgroup_clear:"onOptionGroupClear",dropdown_open:"onDropdownOpen",dropdown_close:"onDropdownClose",type:"onType",load:"onLoad",focus:"onFocus",blur:"onBlur"};for(t in e){o=this.settings[e[t]];if(o)this.on(t,o)}}sync(t=true){const o=this;const e=t?Rt(o.input,{delimiter:o.settings.delimiter}):o.settings;o.setupOptions(e.options,e.optgroups);o.setValue(e.items||[],true);o.lastQuery=null}onClick(){var t=this;if(t.activeItems.length>0){t.clearActiveItems();t.focus();return}if(t.isFocused&&t.isOpen){t.blur()}else{t.focus()}}onMouseDown(){}onChange(){Q(this.input,"input");Q(this.input,"change")}onPaste(t){var o=this;if(o.isInputHidden||o.isLocked){Ct(t);return}if(!o.settings.splitOn){return}setTimeout((()=>{var t=o.inputValue();if(!t.match(o.settings.splitOn)){return}var e=t.trim().split(o.settings.splitOn);J(e,(t=>{const e=kt(t);if(e){if(this.options[t]){o.addItem(t)}else{o.createItem(t)}}}))}),0)}onKeyPress(t){var o=this;if(o.isLocked){Ct(t);return}var e=String.fromCharCode(t.keyCode||t.which);if(o.settings.create&&o.settings.mode==="multi"&&e===o.settings.delimiter){o.createItem();Ct(t);return}}onKeyDown(t){var o=this;o.ignoreHover=true;if(o.isLocked){if(t.keyCode!==_t){Ct(t)}return}switch(t.keyCode){case ct:if(jt(yt,t)){if(o.control_input.value==""){Ct(t);o.selectAll();return}}break;case ut:if(o.isOpen){Ct(t,true);o.close()}o.clearActiveItems();return;case mt:if(!o.isOpen&&o.hasOptions){o.open()}else if(o.activeOption){let t=o.getAdjacent(o.activeOption,1);if(t)o.setActiveOption(t)}Ct(t);return;case vt:if(o.activeOption){let t=o.getAdjacent(o.activeOption,-1);if(t)o.setActiveOption(t)}Ct(t);return;case pt:if(o.canSelect(o.activeOption)){o.onOptionSelect(t,o.activeOption);Ct(t)}else if(o.settings.create&&o.createItem()){Ct(t)}else if(document.activeElement==o.control_input&&o.isOpen){Ct(t)}return;case ft:o.advanceSelection(-1,t);return;case zt:o.advanceSelection(1,t);return;case _t:if(o.settings.selectOnTab){if(o.canSelect(o.activeOption)){o.onOptionSelect(t,o.activeOption);Ct(t)}if(o.settings.create&&o.createItem()){Ct(t)}}return;case wt:case gt:o.deleteSelection(t);return}if(o.isInputHidden&&!jt(yt,t)){Ct(t)}}onInput(t){var o=this;if(o.isLocked){return}var e=this.settings.transformLoadQuery(this.control_input.value);if(o.lastValue!==e){o.lastValue=e;if(o.settings.shouldLoad.call(o,e)){o.load(e)}o.refreshOptions();o.trigger("type",e)}}onOptionHover(t,o){if(this.ignoreHover)return;this.setActiveOption(o,false)}onFocus(t){var o=this;var e=o.isFocused;if(o.isDisabled){o.blur();Ct(t);return}if(o.ignoreFocus)return;o.isFocused=true;if(o.settings.preload==="focus")o.preload();if(!e)o.trigger("focus");if(!o.activeItems.length){o.showInput();o.refreshOptions(!!o.settings.openOnFocus)}o.refreshState()}onBlur(t){if(document.hasFocus()===false)return;var o=this;if(!o.isFocused)return;o.isFocused=false;o.ignoreFocus=false;var e=()=>{o.close();o.setActiveItem();o.setCaret(o.items.length);o.trigger("blur")};if(o.settings.create&&o.settings.createOnBlur){o.createItem(null,e)}else{e()}}onOptionSelect(t,o){var e,r=this;if(o.parentElement&&o.parentElement.matches("[data-disabled]")){return}if(o.classList.contains("create")){r.createItem(null,(()=>{if(r.settings.closeAfterSelect){r.close()}}))}else{e=o.dataset.value;if(typeof e!=="undefined"){r.lastQuery=null;r.addItem(e);if(r.settings.closeAfterSelect){r.close()}if(!r.settings.hideSelected&&t.type&&/click/.test(t.type)){r.setActiveOption(o)}}}}canSelect(t){if(this.isOpen&&t&&this.dropdown_content.contains(t)){return true}return false}onItemSelect(t,o){var e=this;if(!e.isLocked&&e.settings.mode==="multi"){Ct(t);e.setActiveItem(o,t);return true}return false}canLoad(t){if(!this.settings.load)return false;if(this.loadedSearches.hasOwnProperty(t))return false;return true}load(t){const o=this;if(!o.canLoad(t))return;Z(o.wrapper,o.settings.loadingClass);o.loading++;const e=o.loadCallback.bind(o);o.settings.load.call(o,t,e)}loadCallback(t,o){const e=this;e.loading=Math.max(e.loading-1,0);e.lastQuery=null;e.clearActiveOption();e.setupOptions(t,o);e.refreshOptions(e.isFocused&&!e.isInputHidden);if(!e.loading){tt(e.wrapper,e.settings.loadingClass)}e.trigger("load",t,o)}preload(){var t=this.wrapper.classList;if(t.contains("preloaded"))return;t.add("preloaded");this.load("")}setTextboxValue(t=""){var o=this.control_input;var e=o.value!==t;if(e){o.value=t;Q(o,"update");this.lastValue=t}}getValue(){if(this.settings.mode==="multi"&&this.is_select_tag){return this.items}return this.items.join(this.settings.delimiter)}setValue(t,o){var e=o?[]:["change"];At(this,e,(()=>{this.clear(o);this.addItems(t,o)}))}setMaxItems(t){if(t===0)t=null;this.settings.maxItems=t;this.refreshState()}setActiveItem(t,o){var e=this;var r;var i,s,n,l;var a;if(e.settings.mode==="single")return;if(!t){e.clearActiveItems();if(e.isFocused){e.showInput()}return}r=o&&o.type.toLowerCase();if(r==="click"&&jt("shiftKey",o)&&e.activeItems.length){a=e.getLastActive();s=Array.prototype.indexOf.call(e.control.children,a);n=Array.prototype.indexOf.call(e.control.children,t);if(s>n){l=s;s=n;n=l}for(i=s;i<=n;i++){t=e.control.children[i];if(e.activeItems.indexOf(t)===-1){e.setActiveItemClass(t)}}Ct(o)}else if(r==="click"&&jt(yt,o)||r==="keydown"&&jt("shiftKey",o)){if(t.classList.contains("active")){e.removeActiveItem(t)}else{e.setActiveItemClass(t)}}else{e.clearActiveItems();e.setActiveItemClass(t)}e.hideInput();if(!e.isFocused){e.focus()}}setActiveItemClass(t){const o=this;const e=o.control.querySelector(".last-active");if(e)tt(e,"last-active");Z(t,"active last-active");o.trigger("item_select",t);if(o.activeItems.indexOf(t)==-1){o.activeItems.push(t)}}removeActiveItem(t){var o=this.activeItems.indexOf(t);this.activeItems.splice(o,1);tt(t,"active")}clearActiveItems(){tt(this.activeItems,"active");this.activeItems=[]}setActiveOption(t,o=true){if(t===this.activeOption){return}this.clearActiveOption();if(!t)return;this.activeOption=t;lt(this.focus_node,{"aria-activedescendant":t.getAttribute("id")});if(this.settings.mode==="single"||this.settings.hideSelected){lt(t,{"aria-selected":"true"})}Z(t,"active");if(o)this.scrollToOption(t)}scrollToOption(t,o){if(!t)return;const e=this.dropdown_content;const r=e.clientHeight;const i=e.scrollTop||0;const s=t.offsetHeight;const n=t.getBoundingClientRect().top-e.getBoundingClientRect().top+i;if(n+s>r+i){this.scroll(n-r+s,o)}else if(n<i){this.scroll(n,o)}}scroll(t,o){const e=this.dropdown_content;if(o){e.style.scrollBehavior=o}e.scrollTop=t;e.style.scrollBehavior=""}clearActiveOption(){if(this.activeOption){tt(this.activeOption,"active");if(this.settings.mode==="single"||this.settings.hideSelected){lt(this.activeOption,{"aria-selected":null})}}this.activeOption=null;lt(this.focus_node,{"aria-activedescendant":null})}selectAll(){const t=this;if(t.settings.mode==="single")return;const o=t.controlChildren();if(!o.length)return;t.hideInput();t.close();t.activeItems=o;J(o,(o=>{t.setActiveItemClass(o)}))}inputState(){var t=this;if(!t.control.contains(t.control_input))return;lt(t.control_input,{placeholder:t.settings.placeholder});if(t.activeItems.length>0||!t.isFocused&&t.settings.hidePlaceholder&&t.items.length>0){t.setTextboxValue();t.isInputHidden=true}else{if(t.settings.hidePlaceholder&&t.items.length>0){lt(t.control_input,{placeholder:""})}t.isInputHidden=false}t.wrapper.classList.toggle("input-hidden",t.isInputHidden)}hideInput(){this.inputState()}showInput(){this.inputState()}inputValue(){return this.control_input.value.trim()}focus(){var t=this;if(t.isDisabled)return;t.ignoreFocus=true;if(t.control_input.offsetWidth){t.control_input.focus()}else{t.focus_node.focus()}setTimeout((()=>{t.ignoreFocus=false;t.onFocus()}),0)}blur(){this.focus_node.blur();this.onBlur()}getScoreFunction(t){return this.sifter.getScoreFunction(t,this.getSearchOptions())}getSearchOptions(){var t=this.settings;var o=t.sortField;if(typeof t.sortField==="string"){o=[{field:t.sortField}]}return{fields:t.searchField,conjunction:t.searchConjunction,sort:o,nesting:t.nesting}}search(t){var o,e;var r=this;var i=this.getSearchOptions();if(r.settings.score){e=r.settings.score.call(r,t);if(typeof e!=="function"){throw new Error('Tom Select "score" setting must be a function that returns a function')}}if(t!==r.lastQuery){r.lastQuery=t;o=r.sifter.search(t,Object.assign(i,{score:e}));r.currentResults=o}else{o=Object.assign({},r.currentResults)}if(r.settings.hideSelected){o.items=o.items.filter((t=>{let o=kt(t.id);return!(o&&r.items.indexOf(o)!==-1)}))}return o}refreshOptions(t=true){var o,e,r,i,s,n,l,a,d;var h;const c={};const p=[];var u=this;var f=this.settings.transformLoadQuery(this.control_input.value);const v=f===u.lastQuery||f==""&&u.lastQuery==null;var z=u.search(f);var m=null;var w=u.settings.shouldOpen||false;var g=u.dropdown_content;if(v){m=u.activeOption;if(m){d=m.closest("[data-group]")}}i=z.items.length;if(typeof u.settings.maxOptions==="number"){i=Math.min(i,u.settings.maxOptions)}if(i>0){w=true}for(o=0;o<i;o++){let t=z.items[o];if(!t)continue;let i=t.id;let l=u.options[i];if(l===undefined)continue;let a=Ot(i);let h=u.getOption(a,true);const f=u.items.includes(a);if(!u.settings.hideSelected){h.classList.toggle("selected",f);if(this.settings.mode==="multi"){lt(h,{"aria-selected":f?"true":"false"})}}s=l[u.settings.optgroupField]||"";n=Array.isArray(s)?s:[s];for(e=0,r=n&&n.length;e<r;e++){s=n[e];if(!u.optgroups.hasOwnProperty(s)){s=""}let t=c[s];if(t===undefined){t=document.createDocumentFragment();p.push(s)}if(e>0){h=h.cloneNode(true);if(this.settings.mode==="multi"&&!u.settings.hideSelected){lt(h,{id:l.$id+"-clone-"+e,"aria-selected":f?"true":"false"})}else{lt(h,{id:l.$id+"-clone-"+e,"aria-selected":null})}h.classList.add("ts-cloned");tt(h,"active");if(u.activeOption&&u.activeOption.dataset.value==i){if(d&&d.dataset.group===s.toString()){m=h}}}t.appendChild(h);c[s]=t}}if(u.settings.lockOptgroupOrder){p.sort(((t,o)=>{const e=u.optgroups[t];const r=u.optgroups[o];const i=e&&e.$order||0;const s=r&&r.$order||0;return i-s}))}l=document.createDocumentFragment();J(p,(t=>{let o=c[t];if(!o||!o.children.length)return;let e=u.optgroups[t];if(e!==undefined){let t=document.createDocumentFragment();let r=u.render("optgroup_header",e);Lt(t,r);Lt(t,o);let i=u.render("optgroup",{group:e,options:t});Lt(l,i)}else{Lt(l,o)}}));g.innerHTML="";Lt(g,l);if(u.settings.highlight){ht(g);if(z.query.length&&z.tokens.length){J(z.tokens,(t=>{dt(g,t.regex)}))}}var _=t=>{let o=u.render(t,{input:f});if(o){w=true;g.insertBefore(o,g.firstChild)}return o};if(u.loading){_("loading")}else if(!u.settings.shouldLoad.call(u,f)){_("not_loading")}else if(z.items.length===0){_("no_results")}a=u.canCreate(f);if(a){h=_("option_create")}u.hasOptions=z.items.length>0||a;if(w){if(z.items.length>0){if(!m&&u.settings.mode==="single"&&u.items[0]!=undefined){m=u.getOption(u.items[0])}if(!g.contains(m)){let t=0;if(h&&!u.settings.addPrecedence){t=1}m=u.selectable()[t]}}else if(h){m=h}if(t&&!u.isOpen){u.open();u.scrollToOption(m,"auto")}u.setActiveOption(m)}else{u.clearActiveOption();if(t&&u.isOpen){u.close(false)}}}selectable(){return this.dropdown_content.querySelectorAll("[data-selectable]")}addOption(t,o=false){const e=this;if(Array.isArray(t)){e.addOptions(t,o);return false}const r=kt(t[e.settings.valueField]);if(r===null||e.options.hasOwnProperty(r)){return false}t.$order=t.$order||++e.order;t.$id=e.inputId+"-opt-"+t.$order;e.options[r]=t;e.lastQuery=null;if(o){e.userOptions[r]=o;e.trigger("option_add",r,t)}return r}addOptions(t,o=false){J(t,(t=>{this.addOption(t,o)}))}registerOption(t){return this.addOption(t)}registerOptionGroup(t){var o=kt(t[this.settings.optgroupValueField]);if(o===null)return false;t.$order=t.$order||++this.order;this.optgroups[o]=t;return o}addOptionGroup(t,o){var e;o[this.settings.optgroupValueField]=t;if(e=this.registerOptionGroup(o)){this.trigger("optgroup_add",e,o)}}removeOptionGroup(t){if(this.optgroups.hasOwnProperty(t)){delete this.optgroups[t];this.clearCache();this.trigger("optgroup_remove",t)}}clearOptionGroups(){this.optgroups={};this.clearCache();this.trigger("optgroup_clear")}updateOption(t,o){const e=this;var r;var i;const s=kt(t);const n=kt(o[e.settings.valueField]);if(s===null)return;const l=e.options[s];if(l==undefined)return;if(typeof n!=="string")throw new Error("Value must be set in option data");const a=e.getOption(s);const d=e.getItem(s);o.$order=o.$order||l.$order;delete e.options[s];e.uncacheValue(n);e.options[n]=o;if(a){if(e.dropdown_content.contains(a)){const t=e._render("option",o);at(a,t);if(e.activeOption===a){e.setActiveOption(t)}}a.remove()}if(d){i=e.items.indexOf(s);if(i!==-1){e.items.splice(i,1,n)}r=e._render("item",o);if(d.classList.contains("active"))Z(r,"active");at(d,r)}e.lastQuery=null}removeOption(t,o){const e=this;t=Ot(t);e.uncacheValue(t);delete e.userOptions[t];delete e.options[t];e.lastQuery=null;e.trigger("option_remove",t);e.removeItem(t,o)}clearOptions(t){const o=(t||this.clearFilter).bind(this);this.loadedSearches={};this.userOptions={};this.clearCache();const e={};J(this.options,((t,r)=>{if(o(t,r)){e[r]=t}}));this.options=this.sifter.items=e;this.lastQuery=null;this.trigger("option_clear")}clearFilter(t,o){if(this.items.indexOf(o)>=0){return true}return false}getOption(t,o=false){const e=kt(t);if(e===null)return null;const r=this.options[e];if(r!=undefined){if(r.$div){return r.$div}if(o){return this._render("option",r)}}return null}getAdjacent(t,o,e="option"){var r=this,i;if(!t){return null}if(e=="item"){i=r.controlChildren()}else{i=r.dropdown_content.querySelectorAll("[data-selectable]")}for(let e=0;e<i.length;e++){if(i[e]!=t){continue}if(o>0){return i[e+1]}return i[e-1]}return null}getItem(t){if(typeof t=="object"){return t}var o=kt(t);return o!==null?this.control.querySelector(`[data-value="${Et(o)}"]`):null}addItems(t,o){var e=this;var r=Array.isArray(t)?t:[t];r=r.filter((t=>e.items.indexOf(t)===-1));const i=r[r.length-1];r.forEach((t=>{e.isPending=t!==i;e.addItem(t,o)}))}addItem(t,o){var e=o?[]:["change","dropdown_close"];At(this,e,(()=>{var e,r;const i=this;const s=i.settings.mode;const n=kt(t);if(n&&i.items.indexOf(n)!==-1){if(s==="single"){i.close()}if(s==="single"||!i.settings.duplicates){return}}if(n===null||!i.options.hasOwnProperty(n))return;if(s==="single")i.clear(o);if(s==="multi"&&i.isFull())return;e=i._render("item",i.options[n]);if(i.control.contains(e)){e=e.cloneNode(true)}r=i.isFull();i.items.splice(i.caretPos,0,n);i.insertAtCaret(e);if(i.isSetup){if(!i.isPending&&i.settings.hideSelected){let t=i.getOption(n);let o=i.getAdjacent(t,1);if(o){i.setActiveOption(o)}}if(!i.isPending&&!i.settings.closeAfterSelect){i.refreshOptions(i.isFocused&&s!=="single")}if(i.settings.closeAfterSelect!=false&&i.isFull()){i.close()}else if(!i.isPending){i.positionDropdown()}i.trigger("item_add",n,e);if(!i.isPending){i.updateOriginalInput({silent:o})}}if(!i.isPending||!r&&i.isFull()){i.inputState();i.refreshState()}}))}removeItem(t=null,o){const e=this;t=e.getItem(t);if(!t)return;var r,i;const s=t.dataset.value;r=nt(t);t.remove();if(t.classList.contains("active")){i=e.activeItems.indexOf(t);e.activeItems.splice(i,1);tt(t,"active")}e.items.splice(r,1);e.lastQuery=null;if(!e.settings.persist&&e.userOptions.hasOwnProperty(s)){e.removeOption(s,o)}if(r<e.caretPos){e.setCaret(e.caretPos-1)}e.updateOriginalInput({silent:o});e.refreshState();e.positionDropdown();e.trigger("item_remove",s,t)}createItem(t=null,o=(()=>{})){if(arguments.length===3){o=arguments[2]}if(typeof o!="function"){o=()=>{}}var e=this;var r=e.caretPos;var i;t=t||e.inputValue();if(!e.canCreate(t)){o();return false}e.lock();var s=false;var n=t=>{e.unlock();if(!t||typeof t!=="object")return o();var i=kt(t[e.settings.valueField]);if(typeof i!=="string"){return o()}e.setTextboxValue();e.addOption(t,true);e.setCaret(r);e.addItem(i);o(t);s=true};if(typeof e.settings.create==="function"){i=e.settings.create.call(this,t,n)}else{i={[e.settings.labelField]:t,[e.settings.valueField]:t}}if(!s){n(i)}return true}refreshItems(){var t=this;t.lastQuery=null;if(t.isSetup){t.addItems(t.items)}t.updateOriginalInput();t.refreshState()}refreshState(){const t=this;t.refreshValidityState();const o=t.isFull();const e=t.isLocked;t.wrapper.classList.toggle("rtl",t.rtl);const r=t.wrapper.classList;r.toggle("focus",t.isFocused);r.toggle("disabled",t.isDisabled);r.toggle("required",t.isRequired);r.toggle("invalid",!t.isValid);r.toggle("locked",e);r.toggle("full",o);r.toggle("input-active",t.isFocused&&!t.isInputHidden);r.toggle("dropdown-active",t.isOpen);r.toggle("has-options",st(t.options));r.toggle("has-items",t.items.length>0)}refreshValidityState(){var t=this;if(!t.input.validity){return}t.isValid=t.input.validity.valid;t.isInvalid=!t.isValid}isFull(){return this.settings.maxItems!==null&&this.items.length>=this.settings.maxItems}updateOriginalInput(t={}){const o=this;var e,r;const i=o.input.querySelector('option[value=""]');if(o.is_select_tag){const s=[];const n=o.input.querySelectorAll("option:checked").length;function l(t,e,r){if(!t){t=G('<option value="'+St(e)+'">'+St(r)+"</option>")}if(t!=i){o.input.append(t)}s.push(t);if(t!=i||n>0){t.selected=true}return t}o.input.querySelectorAll("option:checked").forEach((t=>{t.selected=false}));if(o.items.length==0&&o.settings.mode=="single"){l(i,"","")}else{o.items.forEach((t=>{e=o.options[t];r=e[o.settings.labelField]||"";if(s.includes(e.$option)){const e=o.input.querySelector(`option[value="${Et(t)}"]:not(:checked)`);l(e,t,r)}else{e.$option=l(e.$option,t,r)}}))}}else{o.input.value=o.getValue()}if(o.isSetup){if(!t.silent){o.trigger("change",o.getValue())}}}open(){var t=this;if(t.isLocked||t.isOpen||t.settings.mode==="multi"&&t.isFull())return;t.isOpen=true;lt(t.focus_node,{"aria-expanded":"true"});t.refreshState();X(t.dropdown,{visibility:"hidden",display:t.settings.openDisplay});t.positionDropdown();X(t.dropdown,{visibility:"visible",display:t.settings.openDisplay});t.focus();t.trigger("dropdown_open",t.dropdown)}close(t=true){var o=this;var e=o.isOpen;if(t){o.setTextboxValue();if(o.settings.mode==="single"&&o.items.length){o.hideInput()}}o.isOpen=false;lt(o.focus_node,{"aria-expanded":"false"});X(o.dropdown,{display:"none"});if(o.settings.hideSelected){o.clearActiveOption()}o.refreshState();if(e)o.trigger("dropdown_close",o.dropdown)}positionDropdown(){if(this.settings.dropdownParent!=="body"){return}var t=this.control;var o=t.getBoundingClientRect();var e=t.offsetHeight+o.top+window.scrollY;var r=o.left+window.scrollX;X(this.dropdown,{width:o.width+"px",top:e+"px",left:r+"px"})}clear(t){var o=this;if(!o.items.length)return;var e=o.controlChildren();J(e,(t=>{o.removeItem(t,true)}));o.showInput();if(!t)o.updateOriginalInput();o.trigger("clear")}insertAtCaret(t){const o=this;const e=o.caretPos;const r=o.control;r.insertBefore(t,r.children[e]||null);o.setCaret(e+1)}deleteSelection(t){var o,e,r,i;var s=this;o=t&&t.keyCode===wt?-1:1;e=$t(s.control_input);const n=[];if(s.activeItems.length){i=it(s.activeItems,o);r=nt(i);if(o>0){r++}J(s.activeItems,(t=>n.push(t)))}else if((s.isFocused||s.settings.mode==="single")&&s.items.length){const t=s.controlChildren();let r;if(o<0&&e.start===0&&e.length===0){r=t[s.caretPos-1]}else if(o>0&&e.start===s.inputValue().length){r=t[s.caretPos]}if(r!==undefined){n.push(r)}}if(!s.shouldDelete(n,t)){return false}Ct(t,true);if(typeof r!=="undefined"){s.setCaret(r)}while(n.length){s.removeItem(n.pop())}s.showInput();s.positionDropdown();s.refreshOptions(false);return true}shouldDelete(t,o){const e=t.map((t=>t.dataset.value));if(!e.length||typeof this.settings.onDelete==="function"&&this.settings.onDelete(e,o)===false){return false}return true}advanceSelection(t,o){var e,r,i=this;if(i.rtl)t*=-1;if(i.inputValue().length)return;if(jt(yt,o)||jt("shiftKey",o)){e=i.getLastActive(t);if(e){if(!e.classList.contains("active")){r=e}else{r=i.getAdjacent(e,t,"item")}}else if(t>0){r=i.control_input.nextElementSibling}else{r=i.control_input.previousElementSibling}if(r){if(r.classList.contains("active")){i.removeActiveItem(e)}i.setActiveItemClass(r)}}else{i.moveCaret(t)}}moveCaret(t){}getLastActive(t){let o=this.control.querySelector(".last-active");if(o){return o}var e=this.control.querySelectorAll(".active");if(e){return it(e,t)}}setCaret(t){this.caretPos=this.items.length}controlChildren(){return Array.from(this.control.querySelectorAll("[data-ts-item]"))}lock(){this.isLocked=true;this.refreshState()}unlock(){this.isLocked=false;this.refreshState()}disable(){var t=this;t.input.disabled=true;t.control_input.disabled=true;t.focus_node.tabIndex=-1;t.isDisabled=true;this.close();t.lock()}enable(){var t=this;t.input.disabled=false;t.control_input.disabled=false;t.focus_node.tabIndex=t.tabIndex;t.isDisabled=false;t.unlock()}destroy(){var t=this;var o=t.revertSettings;t.trigger("destroy");t.off();t.wrapper.remove();t.dropdown.remove();t.input.innerHTML=o.innerHTML;t.input.tabIndex=o.tabIndex;tt(t.input,"tomselected","ts-hidden-accessible");t._destroy();delete t.input.tomselect}render(t,o){var e,r;const i=this;if(typeof this.settings.render[t]!=="function"){return null}r=i.settings.render[t].call(this,o,St);if(!r){return null}r=G(r);if(t==="option"||t==="option_create"){if(o[i.settings.disabledField]){lt(r,{"aria-disabled":"true"})}else{lt(r,{"data-selectable":""})}}else if(t==="optgroup"){e=o.group[i.settings.optgroupValueField];lt(r,{"data-group":e});if(o.group[i.settings.disabledField]){lt(r,{"data-disabled":""})}}if(t==="option"||t==="item"){const e=Ot(o[i.settings.valueField]);lt(r,{"data-value":e});if(t==="item"){Z(r,i.settings.itemClass);lt(r,{"data-ts-item":""})}else{Z(r,i.settings.optionClass);lt(r,{role:"option",id:o.$id});o.$div=r;i.options[e]=o}}return r}_render(t,o){const e=this.render(t,o);if(e==null){throw"HTMLElement expected"}return e}clearCache(){J(this.options,(t=>{if(t.$div){t.$div.remove();delete t.$div}}))}uncacheValue(t){const o=this.getOption(t);if(o)o.remove()}canCreate(t){return this.settings.create&&t.length>0&&this.settings.createFilter.call(this,t)}hook(t,o,e){var r=this;var i=r[o];r[o]=function(){var o,s;if(t==="after"){o=i.apply(r,arguments)}s=e.apply(r,arguments);if(t==="instead"){return s}if(t==="before"){o=i.apply(r,arguments)}return o}}}
7
- /*! @orchidjs/unicode-variants | https://github.com/orchidjs/unicode-variants | Apache License (v2) */const Nt="[̀-ͯ·ʾʼ]";const qt={};const Wt={"/":"⁄∕",0:"߀",a:"ⱥɐɑ",aa:"ꜳ",ae:"æǽǣ",ao:"ꜵ",au:"ꜷ",av:"ꜹꜻ",ay:"ꜽ",b:"ƀɓƃ",c:"ꜿƈȼↄ",d:"đɗɖᴅƌꮷԁɦ",e:"ɛǝᴇɇ",f:"ꝼƒ",g:"ǥɠꞡᵹꝿɢ",h:"ħⱨⱶɥ",i:"ɨı",j:"ɉȷ",k:"ƙⱪꝁꝃꝅꞣ",l:"łƚɫⱡꝉꝇꞁɭ",m:"ɱɯϻ",n:"ꞥƞɲꞑᴎлԉ",o:"øǿɔɵꝋꝍᴑ",oe:"œ",oi:"ƣ",oo:"ꝏ",ou:"ȣ",p:"ƥᵽꝑꝓꝕρ",q:"ꝗꝙɋ",r:"ɍɽꝛꞧꞃ",s:"ßȿꞩꞅʂ",t:"ŧƭʈⱦꞇ",th:"þ",tz:"ꜩ",u:"ʉ",v:"ʋꝟʌ",vy:"ꝡ",w:"ⱳ",y:"ƴɏỿ",z:"ƶȥɀⱬꝣ",hv:"ƕ"};for(let t in Wt){let o=Wt[t]||"";for(let e=0;e<o.length;e++){let r=o.substring(e,e+1);qt[r]=t}}new RegExp(Object.keys(qt).join("|")+"|"+Nt,"gu");const Pt=t=>{if(t.jquery){return t[0]}if(t instanceof HTMLElement){return t}if(Vt(t)){var o=document.createElement("template");o.innerHTML=t.trim();return o.content.firstChild}return document.querySelector(t)};const Vt=t=>{if(typeof t==="string"&&t.indexOf("<")>-1){return true}return false};const Jt=t=>(t+"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");const Bt=(t,o=false)=>{if(t){t.preventDefault();if(o){t.stopPropagation()}}};const Ht=(t,o,e,r)=>{t.addEventListener(o,e,r)};function Kt(t){const o=Object.assign({label:"&times;",title:"Remove",className:"remove",append:true},t);var e=this;if(!o.append){return}var r='<a href="javascript:void(0)" class="'+o.className+'" tabindex="-1" title="'+Jt(o.title)+'">'+o.label+"</a>";e.hook("after","setupTemplates",(()=>{var t=e.settings.render.item;e.settings.render.item=(o,i)=>{var s=Pt(t.call(e,o,i));var n=Pt(r);s.appendChild(n);Ht(n,"mousedown",(t=>{Bt(t,true)}));Ht(n,"click",(t=>{Bt(t,true);if(e.isLocked)return;if(!e.shouldDelete([s],t))return;e.removeItem(s);e.refreshOptions(false);e.inputState()}));return s}}))}const Gt=t=>{if(typeof t==="undefined"||t===null)return null;return Ut(t)};const Ut=t=>{if(typeof t==="boolean")return t?"1":"0";return t+""};const Yt=(t,o=false)=>{if(t){t.preventDefault();if(o){t.stopPropagation()}}};
8
- /*! @orchidjs/unicode-variants | https://github.com/orchidjs/unicode-variants | Apache License (v2) */const Qt="[̀-ͯ·ʾʼ]";const Xt={};const Zt={"/":"⁄∕",0:"߀",a:"ⱥɐɑ",aa:"ꜳ",ae:"æǽǣ",ao:"ꜵ",au:"ꜷ",av:"ꜹꜻ",ay:"ꜽ",b:"ƀɓƃ",c:"ꜿƈȼↄ",d:"đɗɖᴅƌꮷԁɦ",e:"ɛǝᴇɇ",f:"ꝼƒ",g:"ǥɠꞡᵹꝿɢ",h:"ħⱨⱶɥ",i:"ɨı",j:"ɉȷ",k:"ƙⱪꝁꝃꝅꞣ",l:"łƚɫⱡꝉꝇꞁɭ",m:"ɱɯϻ",n:"ꞥƞɲꞑᴎлԉ",o:"øǿɔɵꝋꝍᴑ",oe:"œ",oi:"ƣ",oo:"ꝏ",ou:"ȣ",p:"ƥᵽꝑꝓꝕρ",q:"ꝗꝙɋ",r:"ɍɽꝛꞧꞃ",s:"ßȿꞩꞅʂ",t:"ŧƭʈⱦꞇ",th:"þ",tz:"ꜩ",u:"ʉ",v:"ʋꝟʌ",vy:"ꝡ",w:"ⱳ",y:"ƴɏỿ",z:"ƶȥɀⱬꝣ",hv:"ƕ"};for(let t in Zt){let o=Zt[t]||"";for(let e=0;e<o.length;e++){let r=o.substring(e,e+1);Xt[r]=t}}new RegExp(Object.keys(Xt).join("|")+"|"+Qt,"gu");const to=t=>{if(t.jquery){return t[0]}if(t instanceof HTMLElement){return t}if(oo(t)){var o=document.createElement("template");o.innerHTML=t.trim();return o.content.firstChild}return document.querySelector(t)};const oo=t=>{if(typeof t==="string"&&t.indexOf("<")>-1){return true}return false};function eo(){var t=this;var o=t.onOptionSelect;t.settings.hideSelected=false;var e=function t(o){setTimeout((()=>{var t=o.querySelector("input");if(t instanceof HTMLInputElement){if(o.classList.contains("selected")){t.checked=true}else{t.checked=false}}}),1)};t.hook("after","setupTemplates",(()=>{var o=t.settings.render.option;t.settings.render.option=(e,r)=>{var i=to(o.call(t,e,r));var s=document.createElement("input");s.addEventListener("click",(function(t){Yt(t)}));s.type="checkbox";const n=Gt(e[t.settings.valueField]);if(n&&t.items.indexOf(n)>-1){s.checked=true}i.prepend(s);return i}}));t.on("item_remove",(o=>{var r=t.getOption(o);if(r){r.classList.remove("selected");e(r)}}));t.on("item_add",(o=>{var r=t.getOption(o);if(r){e(r)}}));t.hook("instead","onOptionSelect",((r,i)=>{if(i.classList.contains("selected")){i.classList.remove("selected");t.removeItem(i.dataset.value);t.refreshOptions();Yt(r,true);return}o.call(t,r,i);e(i)}))}const ro=(t,o,e,r)=>{t.addEventListener(o,e,r)};function io(){var t=this;t.on("initialize",(()=>{var o=document.createElement("span");var e=t.control_input;o.style.cssText="position:absolute; top:-99999px; left:-99999px; width:auto; padding:0; white-space:pre; ";t.wrapper.appendChild(o);var r=["letterSpacing","fontSize","fontFamily","fontWeight","textTransform"];for(const t of r){o.style[t]=e.style[t]}var i=()=>{o.textContent=e.value;e.style.width=o.clientWidth+"px"};i();t.on("update item_add item_remove",i);ro(e,"input",i);ro(e,"keyup",i);ro(e,"blur",i);ro(e,"update",i)}))}function so(){var t=this;var o=t.deleteSelection;this.hook("instead","deleteSelection",(e=>{if(t.activeItems.length){return o.call(t,e)}return false}))}const no='@charset "UTF-8";:host{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium);color:var(--stzh-base-color);box-sizing:border-box;display:block;}:host[hidden]{display:none}:host::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}:host::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}:host *,:host *::before,:host *::after{box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness);-webkit-text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink);text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink)}:host .has-focus{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}:host .stzh-fylingfocus-focused{outline-style:none !important}:host .stzh-fylingfocus-focused::-moz-focus-inner{border:0 !important}stzh-dropdown{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium);color:var(--stzh-base-color);box-sizing:border-box;display:block;--color:var(--stzh-color-secondary60);--border-color:var(--stzh-color-grey70);--border-radius:var(--stzh-form-input-border-radius);--background-color:var(--stzh-color-white);--height:var(--stzh-form-input-height);--label-color:var(--stzh-color-primary);--placeholder-color:var(--stzh-color-grey70);--icon-size:var(--stzh-icon-size-medium);--icon-color:var(--stzh-color-grey80);--icon-angle-size:var(--stzh-icon-size-medium);--icon-angle-color:var(--stzh-color-grey80);--hover-color:var(--stzh-color-secondary60);--hover-border-color:var(--stzh-color-secondary50);--hover-background-color:var(--stzh-color-white);--hover-label-color:var(--stzh-color-primary);--hover-icon-color:var(--stzh-color-primary70);--hover-icon-angle-color:var(--stzh-color-primary70);--focus-color:var(--stzh-color-black);--focus-border-color:var(--stzh-color-secondary50);--focus-background-color:var(--stzh-color-secondary20);--focus-label-color:var(--stzh-color-primary);--focus-icon-color:var(--stzh-color-primary70);--focus-icon-angle-color:var(--stzh-color-primary70);--active-icon-angle-transform:rotate(180deg) translateY(50%);--popover-width:100%;--popover-min-width:initial;--popover-max-width:initial;--popover-height:auto;--popover-min-height:initial;--popover-max-height:calc(4.5 * var(--stzh-menu-item-height));--popover-background-color:var(--stzh-popover-background-color);--popover-box-shadow:var(--stzh-box-shadow-popover);--popover-border-radius:var(--stzh-popover-border-radius);--popover-distance:var(--stzh-space-xsmall);--popover-skidding:0px;position:relative;width:100%;border-radius:var(--border-radius);}stzh-dropdown[hidden]{display:none}stzh-dropdown::-moz-selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}stzh-dropdown::selection{color:var(--stzh-selection-color);background-color:var(--stzh-selection-background-color)}stzh-dropdown *,stzh-dropdown *::before,stzh-dropdown *::after{box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness);-webkit-text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink);text-decoration-skip-ink:var(--stzh-link-text-decoration-skip-ink)}stzh-dropdown .has-focus{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.125rem}stzh-dropdown .stzh-fylingfocus-focused{outline-style:none !important}stzh-dropdown .stzh-fylingfocus-focused::-moz-focus-inner{border:0 !important}stzh-dropdown[variant=plain]{--background-color:transparent;--hover-background-color:transparent;--hover-label-color:var(--stzh-color-primary90);--focus-background-color:transparent;--focus-label-color:var(--stzh-color-primary90)}stzh-dropdown[inline]:not([inline=false]){--popover-width:auto;width:auto}stzh-dropdown[size=small]{--height:var(--stzh-form-input-small-height);--icon-angle-size:var(--stzh-icon-size-small)}stzh-dropdown[is-filled]:not([is-filled=false]){--icon-color:var(--stzh-color-primary70);--icon-angle-color:var(--stzh-color-primary70);--hover-icon-color:var(--stzh-color-primary70);--hover-icon-angle-color:var(--stzh-color-primary70);--focus-icon-angle-color:var(--stzh-color-black);--focus-icon-color:var(--stzh-color-black)}stzh-dropdown[is-invalid]{--color:var(--stzh-color-error60);--border-color:var(--stzh-color-error60);--background-color:var(--stzh-color-white);--label-color:var(--stzh-color-error60);--placeholder-color:var(--stzh-color-error60);--icon-color:var(--stzh-color-error60);--icon-angle-color:var(--stzh-color-error60);--hover-color:var(--stzh-color-error60);--hover-border-color:var(--stzh-color-error60);--hover-background-color:var(--stzh-color-white);--hover-label-color:var(--stzh-color-error60);--hover-icon-color:var(--stzh-color-error60);--hover-icon-angle-color:var(--stzh-color-error60);--focus-color:var(--stzh-color-error60);--focus-border-color:var(--stzh-color-error60);--focus-background-color:var(--stzh-color-white);--focus-label-color:var(--stzh-color-error60);--focus-icon-color:var(--stzh-color-error60);--focus-icon-angle-color:var(--stzh-color-error60)}stzh-dropdown[disabled]:not([disabled=false]){--color:var(--stzh-color-grey70);--border-color:var(--stzh-color-grey70);--background-color:var(--stzh-color-grey10);--label-color:var(--stzh-color-grey70);--placeholder-color:var(--stzh-color-grey70);--description-color:var(--stzh-color-grey70);--icon-color:var(--stzh-color-grey70);--icon-angle-color:var(--stzh-color-grey70);--hover-color:var(--stzh-color-grey70);--hover-border-color:var(--stzh-color-grey70);--hover-background-color:var(--stzh-color-grey10);--hover-label-color:var(--stzh-color-grey70);--hover-icon-color:var(--stzh-color-grey70);--hover-icon-angle-color:var(--stzh-color-grey70);--focus-color:var(--stzh-color-grey70);--focus-border-color:var(--stzh-color-grey70);--focus-background-color:var(--stzh-color-grey10);--focus-label-color:var(--stzh-color-grey70);--focus-icon-color:var(--stzh-color-grey70);--focus-icon-angle-color:var(--stzh-color-grey70)}stzh-dropdown[disabled]:not([disabled=false])[variant=plain]{--background-color:transparent}stzh-dropdown:is(:has(.stzh-dropdown__label:hover)),stzh-dropdown:is(:has(.ts-control:hover)){--color:var(--hover-color);--border-color:var(--hover-border-color);--background-color:var(--hover-background-color);--label-color:var(--hover-label-color);--icon-color:var(--hover-icon-color);--icon-angle-color:var(--hover-icon-angle-color)}stzh-dropdown:is(:has(.ts-control:focus-within)){--color:var(--focus-color);--border-color:var(--focus-border-color);--background-color:var(--focus-background-color);--label-color:var(--focus-label-color);--icon-color:var(--focus-icon-color);--icon-angle-color:var(--focus-icon-angle-color)}.stzh-dropdown{}.stzh-dropdown__marker-symbol{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium)}.stzh-dropdown__marker-text{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-dropdown__description-wrapper{display:flex;flex-direction:column-reverse;min-height:var(--description-min-height, var(--stzh-description-min-height, none))}.stzh-dropdown__error,.stzh-dropdown__description{font-size:var(--stzh-font-nano-font-size);line-height:var(--stzh-font-nano-text-line-height)}.stzh-dropdown__error{color:var(--stzh-color-error60)}.stzh-dropdown__error-list{list-style:none;margin:0;padding:0}.stzh-dropdown__description{display:flex;align-items:flex-start;color:var(--stzh-input-description-color, var(--description-color, var(--stzh-color-coolgrey70)));transition:color var(--stzh-base-transition-animation-speed)}.stzh-dropdown__description-long{margin-right:var(--stzh-space-xxsmall);margin-top:0.125rem}@supports (font: -apple-system-body) and (-webkit-appearance: none){.stzh-dropdown__description-long{margin-top:0}}.stzh-dropdown__description-long-popover{--width:auto;--max-width:27.3125rem}.stzh-dropdown__description-long-button{display:flex;justify-content:center;align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;padding:0;border:none;background-color:transparent;border-radius:0.5rem;cursor:pointer}.stzh-dropdown stzh-icon.stzh-dropdown__description-long-icon{--size:var(--stzh-icon-size-xsmall)}.stzh-dropdown--has-error .stzh-dropdown__error,.stzh-dropdown--has-description .stzh-dropdown__description{margin-top:var(--stzh-space-xxxsmall)}.stzh-dropdown__wrapper{position:relative}.stzh-dropdown .ts-hidden-accessible{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-dropdown .ts-dropdown-content{width:100%;overflow-y:auto;overflow-x:hidden;overflow-scrolling:touch}.stzh-dropdown .ts-control{overflow:hidden;position:relative;display:flex;align-items:center;flex-wrap:wrap;min-height:var(--height);border-radius:var(--border-radius);background-color:var(--background-color);transition-property:border-color, background-color;transition-duration:var(--stzh-base-transition-animation-speed);cursor:pointer}.stzh-dropdown .ts-control>*{vertical-align:baseline;display:inline-block}.stzh-dropdown .ts-control,.stzh-dropdown .ts-control>input,.stzh-dropdown__sizer{font-size:var(--stzh-font-milli-font-size);line-height:var(--stzh-font-milli-text-line-height);letter-spacing:var(--stzh-font-curve---text-letter-spacing);font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium);width:100%;border:0.125rem solid var(--border-color)}.stzh-dropdown .ts-control>input{flex:1 1 auto;display:inline-block;padding:0;min-height:0;max-height:none;max-width:100%;margin:0;text-indent:0;border:0 none;background:none;-webkit-user-select:auto;-moz-user-select:auto;user-select:auto;box-shadow:none;cursor:pointer}.stzh-dropdown .ts-control>input::-webkit-input-placeholder{color:var(--placeholder-color)}.stzh-dropdown .ts-control>input:-moz-placeholder{color:var(--placeholder-color)}.stzh-dropdown .ts-control>input::-moz-placeholder{color:var(--placeholder-color)}.stzh-dropdown .ts-control>input:-ms-input-placeholder{color:var(--placeholder-color)}.stzh-dropdown .ts-control>input::-ms-clear{display:none}.stzh-dropdown .ts-control>input:focus{outline:none}.stzh-dropdown .ts-control>input:-moz-placeholder-shown{text-overflow:ellipsis}.stzh-dropdown .ts-control>input:placeholder-shown{text-overflow:ellipsis}.stzh-dropdown__vhidden{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-dropdown__field-wrapper,.stzh-dropdown__select{position:relative}.stzh-dropdown__select .ts-control>input,.stzh-dropdown__select.single .stzh-dropdown__item,.stzh-dropdown__icon-wrapper,.stzh-dropdown__icon-angle-wrapper{transition:color var(--stzh-base-transition-animation-speed)}.stzh-dropdown__select .ts-control>input,.stzh-dropdown__select.single .stzh-dropdown__item{color:var(--color)}.stzh-dropdown__icon-wrapper{position:absolute;color:var(--icon-color)}.stzh-dropdown__icon-angle-wrapper{color:var(--icon-angle-color)}.stzh-dropdown__sizer{height:var(--height);display:flex;align-items:center;margin-top:calc(var(--height) / -1);pointer-events:none;visibility:hidden}.stzh-dropdown__select.has-items~.stzh-dropdown__sizer{display:none}.stzh-dropdown__select.plugin-input_hide~.stzh-dropdown__sizer{visibility:visible}.stzh-dropdown__select.input-active .ts-control,.stzh-dropdown__select.input-active .ts-control>input{cursor:text}.stzh-dropdown__select.input-hidden .ts-control>input,.stzh-dropdown__select.plugin-input_hide .ts-control>input{opacity:0;position:absolute;left:-625rem}.stzh-dropdown__select.single .ts-control,.stzh-dropdown__select.multi .ts-control,.stzh-dropdown__sizer{padding:var(--stzh-space-xsmall) var(--stzh-space-medium);padding-right:calc(var(--stzh-icon-size-medium) + var(--stzh-space-medium) + var(--stzh-space-xsmall))}.stzh-dropdown__icon-wrapper,.stzh-dropdown__icon-angle-wrapper{display:flex;position:absolute;top:50%;transform:translateY(-50%);pointer-events:none}.stzh-dropdown__icon-wrapper{left:var(--stzh-space-medium)}.stzh-dropdown__icon-angle-wrapper{right:var(--stzh-space-medium)}.stzh-dropdown__icon-wrapper stzh-icon,.stzh-dropdown__icon{--size:var(--icon-size)}.stzh-dropdown__icon-angle-wrapper stzh-icon,.stzh-dropdown__icon-angle{--size:var(--icon-angle-size)}.stzh-dropdown__label{font-family:var(--stzh-font-family-heavy);font-weight:var(--stzh-font-weight-heavy);font-style:var(--stzh-font-style-heavy);font-size:var(--stzh-font-micro-font-size);line-height:var(--stzh-font-micro-text-line-height);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:var(--label-color);display:block;width:auto;max-width:100%;margin-bottom:var(--stzh-space-xxxsmall)}.stzh-dropdown__label:empty{display:none}.stzh-dropdown__marker{font-size:var(--stzh-font-nano-font-size);line-height:var(--stzh-font-nano-text-line-height);margin-left:calc(-0.25em + var(--stzh-space-xsmall))}.stzh-dropdown__option,.stzh-dropdown__create,.stzh-dropdown__no-results,.stzh-dropdown__not-loading{font-size:var(--stzh-font-micro-font-size);line-height:var(--stzh-font-micro-text-line-height);padding:var(--stzh-space-xsmall) var(--stzh-space-medium);padding-right:var(--stzh-space-large)}.stzh-dropdown__option,.stzh-dropdown__create{display:flex;align-items:center;justify-content:stretch;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;-webkit-text-decoration-line:none;text-decoration-line:none;outline:none;border:none;color:var(--stzh-color-black);min-height:var(--stzh-menu-item-height);transition:all var(--stzh-base-transition-animation-speed);cursor:pointer}.stzh-dropdown__option:hover,.stzh-dropdown__option.active,.stzh-dropdown__create:hover,.stzh-dropdown__create.active{background-color:var(--stzh-color-grey20)}.stzh-dropdown__option input,.stzh-dropdown__create input{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-dropdown__option.selected{color:var(--stzh-color-primary70)}.stzh-dropdown__option.selected::before{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;content:"✓"}.stzh-dropdown__option[aria-disabled=true]{cursor:not-allowed;color:var(--stzh-color-grey70);background-color:var(--stzh-color-grey10)}.stzh-dropdown__create{display:block}.stzh-dropdown__option-title{flex-grow:1}.stzh-dropdown__option[data-selectable] .highlight{font-family:var(--stzh-font-family-heavy);font-weight:var(--stzh-font-weight-heavy);font-style:var(--stzh-font-style-heavy)}.stzh-dropdown__option-check{display:none}.stzh-dropdown__no-results{overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.stzh-dropdown__optgroup-header{cursor:default}.stzh-dropdown__loader{display:flex;align-items:center;justify-content:center;height:var(--stzh-menu-item-height)}.stzh-dropdown__dropdown{position:absolute;top:auto;left:auto;margin-top:var(--popover-distance);margin-left:var(--popover-skidding);transform:none;z-index:var(--stzh-z-index-popover);width:var(--popover-width);min-width:var(--popover-min-width);max-width:var(--popover-max-width);height:var(--popover-height);min-height:var(--popover-min-height);max-height:var(--popover-max-height);background-color:var(--popover-background-color);box-shadow:var(--popover-box-shadow);border-radius:var(--popover-border-radius)}.stzh-dropdown__select.plugin-input_autogrow.has-items .ts-control>input{min-width:0}.stzh-dropdown__select.plugin-input_autogrow.has-items.focus .ts-control>input{flex:none;min-width:0.25rem}.stzh-dropdown__select.has-items .ts-control>input{margin:0 0.25rem}.stzh-dropdown__select.has-items .ts-control>input::-webkit-input-placeholder{color:transparent}.stzh-dropdown__select.has-items .ts-control>input:-moz-placeholder{color:transparent}.stzh-dropdown__select.has-items .ts-control>input::-moz-placeholder{color:transparent}.stzh-dropdown__select.has-items .ts-control>input:-ms-input-placeholder{color:transparent}.stzh-dropdown__select.dropdown-active~.stzh-dropdown__icon-angle-wrapper{transform:var(--active-icon-angle-transform)}.stzh-dropdown--is-multiple .stzh-dropdown__option-check{display:inline-flex;opacity:0;transition:opacity var(--stzh-base-transition-animation-speed);margin-left:var(--stzh-space-xsmall)}.stzh-dropdown--is-multiple .stzh-dropdown__option.selected .stzh-dropdown__option-check{opacity:1}.stzh-dropdown--is-multiple .stzh-dropdown__select.multi.has-items .ts-control{padding-top:calc(var(--stzh-space-xsmall) - 0.0625rem);padding-bottom:calc(var(--stzh-space-xsmall) - 0.0625rem)}.stzh-dropdown--is-multiple .stzh-dropdown__select.multi .stzh-dropdown__item{font-size:var(--stzh-font-micro-font-size);line-height:var(--stzh-font-micro-text-line-height);position:relative;height:1.5rem;line-height:1.5rem;display:flex;flex-direction:row;align-items:center;border-radius:0.75rem;padding:0 var(--stzh-space-small);-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;border:0.0625rem solid transparent;color:var(--stzh-color-primary70);background-color:var(--stzh-color-primary10);transition:all var(--stzh-base-transition-animation-speed);margin:var(--stzh-space-xxsmall) var(--stzh-space-xxsmall) var(--stzh-space-xxsmall) 0;cursor:pointer}.stzh-dropdown--is-multiple .stzh-dropdown__select.multi .stzh-dropdown__item:hover{color:var(--stzh-color-primary90);background-color:var(--stzh-color-primary20)}.stzh-dropdown--is-multiple .stzh-dropdown__select.multi .stzh-dropdown__item.active{color:var(--stzh-color-white);background-color:var(--stzh-color-primary70)}.stzh-dropdown--is-multiple .stzh-dropdown__select.plugin-remove_button .stzh-dropdown__item{display:inline-flex;align-items:center;padding-right:calc(1.5rem + var(--stzh-space-xxsmall))}.stzh-dropdown--is-multiple .stzh-dropdown__select.plugin-remove_button .stzh-dropdown__item .remove{position:absolute;top:50%;right:-0.0625rem;transform:translateY(-50%);-webkit-text-decoration-line:none;text-decoration-line:none;width:1.5rem;height:1.5rem;border-radius:1.5rem;display:flex;justify-content:center;align-items:center;margin-left:var(--stzh-space-xxsmall);color:var(--stzh-color-primary70);transition:all var(--stzh-base-transition-animation-speed)}.stzh-dropdown--is-multiple .stzh-dropdown__select.plugin-remove_button .stzh-dropdown__item .remove:hover{color:var(--stzh-color-primary90);background-color:var(--stzh-color-primary30)}.stzh-dropdown--is-multiple .stzh-dropdown__select.plugin-remove_button .stzh-dropdown__remove-icon{--size:var(--stzh-icon-size-xxsmall)}.stzh-dropdown--is-multiple .stzh-dropdown__select.plugin-remove_button .stzh-dropdown__item.active .stzh-dropdown__remove-icon{color:var(--stzh-color-white)}.stzh-dropdown--popover-placement-top .stzh-dropdown__dropdown,.stzh-dropdown--popover-placement-top-end .stzh-dropdown__dropdown,.stzh-dropdown--popover-placement-top-center .stzh-dropdown__dropdown{margin-top:0;top:auto;bottom:100%;margin-bottom:calc(var(--popover-distance) - 1.21875rem)}.stzh-dropdown--popover-placement-top.stzh-dropdown--plain .stzh-dropdown__dropdown,.stzh-dropdown--popover-placement-top-end.stzh-dropdown--plain .stzh-dropdown__dropdown,.stzh-dropdown--popover-placement-top-center.stzh-dropdown--plain .stzh-dropdown__dropdown{margin-bottom:0}.stzh-dropdown--popover-placement-top-end .stzh-dropdown__dropdown,.stzh-dropdown--popover-placement-bottom-end .stzh-dropdown__dropdown{left:auto;right:0}.stzh-dropdown--popover-placement-top-center .stzh-dropdown__dropdown,.stzh-dropdown--popover-placement-bottom-center .stzh-dropdown__dropdown{left:50%;transform:translateX(-50%)}.stzh-dropdown--popover-fullwidth-horizontal .stzh-dropdown__dropdown{left:0;right:0;transform:none}.stzh-dropdown--has-label-hidden .stzh-dropdown__label{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-dropdown--size-small .ts-control,.stzh-dropdown--size-small .stzh-dropdown__sizer{font-size:var(--stzh-font-micro-font-size);line-height:var(--stzh-font-micro-text-line-height)}.stzh-dropdown--size-small .stzh-dropdown__select.single .ts-control,.stzh-dropdown--size-small .stzh-dropdown__select.multi .ts-control,.stzh-dropdown--size-small .stzh-dropdown__sizer{padding:var(--stzh-space-xxsmall) var(--stzh-space-medium);padding-right:calc(var(--stzh-icon-size-small) + var(--stzh-space-medium) + var(--stzh-space-xsmall))}.stzh-dropdown--size-small.stzh-dropdown--is-multiple .stzh-dropdown__select.multi.has-items .ts-control{padding-top:var(--stzh-space-xxsmall);padding-bottom:var(--stzh-space-xxsmall)}.stzh-dropdown--has-icon .stzh-dropdown__select.single .ts-control,.stzh-dropdown--has-icon .stzh-dropdown__select.multi .ts-control,.stzh-dropdown--has-icon .stzh-dropdown__sizer{padding-left:calc(var(--icon-size) + var(--stzh-space-medium) + var(--stzh-space-xsmall))}.stzh-dropdown--plain .stzh-dropdown__select.single .ts-control,.stzh-dropdown--plain .stzh-dropdown__select.multi .ts-control,.stzh-dropdown--plain .stzh-dropdown__sizer{border:none;padding-left:0;padding-right:calc(var(--stzh-icon-size-medium) + var(--stzh-space-xsmall))}.stzh-dropdown--plain .stzh-dropdown__icon-wrapper{left:0}.stzh-dropdown--plain .stzh-dropdown__icon-angle-wrapper{right:0}.stzh-dropdown--plain .stzh-dropdown__label{left:0;max-width:100%;padding:0;z-index:1;position:absolute;margin:0;top:calc(var(--height) / 2);transform:translateY(-50%);transition:all var(--stzh-base-transition-animation-speed);pointer-events:none}.stzh-dropdown--plain .stzh-dropdown__label::before{content:none}.stzh-dropdown--plain .stzh-dropdown__dropdown{margin-top:0}.stzh-dropdown--plain.stzh-dropdown--size-small .stzh-dropdown__select.single .ts-control,.stzh-dropdown--plain.stzh-dropdown--size-small .stzh-dropdown__select.multi .ts-control,.stzh-dropdown--plain.stzh-dropdown--size-small .stzh-dropdown__sizer{padding-right:calc(var(--stzh-icon-size-small) + var(--stzh-space-xsmall))}.stzh-dropdown--plain.stzh-dropdown--has-icon .stzh-dropdown__label{left:calc(var(--icon-size) + var(--stzh-space-medium) + var(--stzh-space-xsmall) + 0.0625rem)}.stzh-dropdown--plain.stzh-dropdown--has-icon .stzh-dropdown__select.single .ts-control,.stzh-dropdown--plain.stzh-dropdown--has-icon .stzh-dropdown__select.multi .ts-control,.stzh-dropdown--plain.stzh-dropdown--has-icon .stzh-dropdown__sizer{padding-left:calc(var(--icon-size) + var(--stzh-space-xsmall))}.stzh-dropdown--plain.stzh-dropdown--has-icon .stzh-dropdown__label{left:calc(var(--icon-size) + var(--stzh-space-xsmall) + 0.0625rem)}.stzh-dropdown--plain.stzh-dropdown--has-focus:not(.stzh-dropdown--has-no-search) .stzh-dropdown__label,.stzh-dropdown--plain.stzh-dropdown--is-filled .stzh-dropdown__label{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-dropdown--has-no-search .ts-control>input{position:absolute;width:0px;height:0px}.stzh-dropdown--has-no-search .stzh-dropdown__select.input-active .ts-control,.stzh-dropdown--has-no-search .stzh-dropdown__select.input-active .ts-control>input{cursor:pointer}.stzh-dropdown--is-disabled .stzh-dropdown__select.multi .stzh-dropdown__item,.stzh-dropdown--is-disabled .stzh-dropdown__select.plugin-remove_button .stzh-dropdown__item .remove{cursor:not-allowed}.stzh-dropdown--is-disabled .stzh-dropdown__select.multi .stzh-dropdown__item,.stzh-dropdown--is-disabled .stzh-dropdown__select.multi .stzh-dropdown__item:hover{color:var(--stzh-color-grey70);background-color:var(--stzh-color-white)}.stzh-dropdown--is-disabled .stzh-dropdown__select.plugin-remove_button .stzh-dropdown__item .remove,.stzh-dropdown--is-disabled .stzh-dropdown__select.plugin-remove_button .stzh-dropdown__item .remove:hover{color:var(--stzh-color-grey70);background-color:transparent}';const lo=function(t){const o=this;o.on("initialize",(()=>{const t=o.control_input;if(t)t.readOnly=true}))};const ao="stzh-dropdown--is-filled";const ho="stzh-dropdown--has-focus";Dt.define("remove_button",Kt);Dt.define("checkbox_options",eo);Dt.define("input_autogrow",io);Dt.define("no_backspace_delete",so);Dt.define("input_readonly",lo);let co=0;const po=class{constructor(e){t(this,e);this.stzhChange=o(this,"stzhChange",7);this.stzhItemAdd=o(this,"stzhItemAdd",7);this.stzhItemRemove=o(this,"stzhItemRemove",7);this.stzhOptionAdd=o(this,"stzhOptionAdd",7);this.stzhOptionRemove=o(this,"stzhOptionRemove",7);this.stzhOpen=o(this,"stzhOpen",7);this.stzhClose=o(this,"stzhClose",7);this.stzhFocus=o(this,"stzhFocus",7);this.stzhBlur=o(this,"stzhBlur",7);this.stzhInit=o(this,"stzhInit",7);this.focusedByInput=false;this.handleReset=()=>{this.items=[...this.defaultItems]};this.onRootFocus=()=>{if(!this.focusedByInput){this.tomSelect.focus()}this.focusedByInput=false};this.options=undefined;this.optgroups=undefined;this.items=undefined;this.defaultItems=undefined;this.searchField=["text"];this.multiple=false;this.inline=false;this.maxOptions=null;this.searchConjunction="and";this.transformLoadQuery="trim";this.allowEmptyOption=false;this.openOnFocus=true;this.closeAfterSelect=null;this.load=null;this.minCharacters=3;this.loadThrottle=300;this.preload=false;this.labelField="text";this.valueField="value";this.value="";this.optgroupField="optgroup";this.optgroupLabelField="label";this.optgroupValueField="value";this.lockOptgroupOrder=undefined;this.name="";this.open=false;this.isOpen=false;this.variant="default";this.size="default";this.disabled=false;this.popoverPlacement="bottom";this.popoverFullwidth="";this.label="";this.labelHidden=false;this.icon="";this.iconAngle="angle-down";this.noSearch=false;this.noBackspaceDelete=false;this.invalid=false;this.required=false;this.hideOptional=false;this.description=undefined;this.descriptionLong=undefined;this.descriptionLongTitle=undefined;this.error=undefined;this.localization=undefined;this.a11yDescribedby=""}resetListener(t){if(t.target.contains(this.element)){requestAnimationFrame((()=>{this.handleReset()}))}}optionsWatcher(t){if(typeof t==="string"){this._options=JSON.parse(t)}else{this._options=t}}itemsWatcher(t){if(typeof t==="string"){this._items=JSON.parse(t)}else{this._items=t}this.value=this._items}searchFieldWatcher(t){if(typeof t==="string"){this._searchField=JSON.parse(t)}else{this._searchField=t}}optgroupsWatcher(t){if(typeof t==="string"){this._optgroups=JSON.parse(t)}else{this._optgroups=t}}errorWatcher(t){if(typeof t==="string"){try{this._error=JSON.parse(t)}catch(o){if(t){this._error=[t]}else{this._error=[]}}}else if(t){this._error=t}else{this._error=[]}}async getValue(){return this.tomSelect.getValue()}async setValue(t,o=false){this.tomSelect.setValue(t,o)}async resetLoadedSearches(){this.tomSelect.loadedSearches={}}async getLoadedSearches(){return this.tomSelect.loadedSearches}async getItems(){return this.tomSelect.items}async loadItems(t){return this.tomSelect.load(t)}async show(){return this.tomSelect.open()}async hide(){return this.tomSelect.close()}updateFilled(){if(this._items.length>0){this.rootElement.classList.add(ao);this.element.setAttribute("is-filled","true")}else{this.rootElement.classList.remove(ao);this.element.removeAttribute("is-filled")}}async componentWillLoad(){this.dropdownId=`stzh-dropdown-${co++}`;this.optionsWatcher(this.options);this.optgroupsWatcher(this.optgroups);this.itemsWatcher(this.items);this.searchFieldWatcher(this.searchField);this.errorWatcher(this.error);this.defaultItems=this.defaultItems||this._items;if(!this.localization){this.localization=await window.stzhComponents.utils.fetchTranslations(this.element,"dropdown")}}componentShouldUpdate(t,o,e){return["isOpen"].includes(e)===false}async componentWillUpdate(){if(this.tomSelect){this.tomSelect.destroy();this.tomSelect=null}}async componentDidRender(){if(this.tomSelect){return}const t={};if(this.noSearch){t["input_readonly"]={}}else{t["input_autogrow"]={}}if(this.noBackspaceDelete){t["no_backspace_delete"]={}}if(this.multiple){t["checkbox_options"]={};t["remove_button"]={title:this.localization.removeButtonTitle,label:'<stzh-icon name="close-big" class="stzh-dropdown__remove-icon"></stzh-icon>'}}const o={dropdownParent:this.dropdownWrapperElement,openDisplay:"flex",plugins:t,maxItems:this.multiple?null:1,maxOptions:this.maxOptions,items:this._items,optgroups:this._optgroups,searchField:this._searchField,searchConjunction:this.searchConjunction,allowEmptyOption:this.allowEmptyOption,closeAfterSelect:this.closeAfterSelect!==null?this.closeAfterSelect:!this.multiple,labelField:this.labelField,valueField:this.valueField,optgroupField:this.optgroupField,optgroupLabelField:this.optgroupLabelField,optgroupValueField:this.optgroupValueField,lockOptgroupOrder:this.lockOptgroupOrder,load:this.load,transformLoadQuery:t=>{if(typeof this.transformLoadQuery==="function"){return this.transformLoadQuery(t)}else if(this.transformLoadQuery==="join"){const o=Array.from(this.tomSelect.controlChildren()).map((t=>t.innerText));return(o.length>0?o.join(" ")+(t?" ":""):"")+t.replace(/\s\s+/g," ")}else if(this.transformLoadQuery==="trim-to-single-ws"){return t.replace(/\s\s+/g," ")}else{return t.trim()}},shouldLoad:t=>t.length>=this.minCharacters,loadThrottle:this.loadThrottle,preload:this.preload,openOnFocus:this.openOnFocus,loadingClass:"is-loading",hideSelected:false,duplicates:false,delimiter:",",copyClassesToDropdown:false,hidePlaceholder:null,render:{option:(t,o)=>`\n <div class="stzh-dropdown__option">\n <span class="stzh-dropdown__option-title">\n ${o(t[this.labelField])}\n </span>\n <stzh-icon name="checkmark" class="stzh-dropdown__option-check"></stzh-icon>\n </div>\n `,item:(t,o)=>`\n <div class="stzh-dropdown__item">\n ${o(t[this.labelField])}\n </div>\n `,option_create:(t,o)=>`\n <div class="stzh-dropdown__create">\n ${this.localization.create.replace(/\{x\}/gi,o(t.input))}&hellip;\n </div>\n `,no_results:(t,o)=>`\n <div class="stzh-dropdown__no-results" id="${this.dropdownId}-no-results">\n ${this.localization.noResults.replace(/\{x\}/gi,o(t.input))}\n </div>`,not_loading:this.load===null?null:(t,o)=>`\n <div class="stzh-dropdown__not-loading" id="${this.dropdownId}-not-loading">\n ${this.localization.notLoading.replace(/\{x\}/gi,o(this.minCharacters.toString()))}\n </div>\n `,optgroup:t=>{let o=document.createElement("div");o.className="stzh-dropdown__optgroup";o.appendChild(t.options);return o},optgroup_header:(t,o)=>`\n <div class="stzh-dropdown__optgroup-header">\n ${o(t.label)}\n </div>\n `,loading:()=>`\n <div class="stzh-dropdown__loader">\n <stzh-loader></stzh-loader>\n </div>\n `,dropdown:()=>`<div class="stzh-dropdown__dropdown"></div>`},onChange:t=>{this._items=this.tomSelect.items;this.updateFilled();this.value=this.multiple?this._items:this._items[0];this.stzhChange.emit({component:"stzh-dropdown",value:t})},onItemAdd:t=>{this._items=this.tomSelect.items;this.stzhItemAdd.emit({component:"stzh-dropdown",value:t})},onItemRemove:t=>{this._items=this.tomSelect.items;this.stzhItemRemove.emit({component:"stzh-dropdown",value:t})},onOptionAdd:t=>{this._options=this.tomSelect.options;this.updateFilled();this.stzhOptionAdd.emit({component:"stzh-dropdown",value:t})},onOptionRemove:t=>{this._options=this.tomSelect.options;this.updateFilled();this.stzhOptionRemove.emit({component:"stzh-dropdown",value:t})},onDropdownOpen:()=>{this.isOpen=true;this.stzhOpen.emit({component:"stzh-dropdown"})},onDropdownClose:()=>{this.isOpen=false;this.stzhClose.emit({component:"stzh-dropdown"})},onFocus:()=>{this.focusedByInput=true;if(this.tomSelect.load&&this.preload==="focus"){this.resetLoadedSearches();if(this.tomSelect.wrapper.classList.contains("preloaded")){this.tomSelect.load("")}}this.rootElement.classList.add(ho);const t=new FocusEvent("focus",{view:window,bubbles:false,cancelable:false});this.element.dispatchEvent(t);this.stzhFocus.emit({component:"stzh-dropdown",originalEvent:{target:this.tomSelect.control}})},onBlur:()=>{this.rootElement.classList.remove(ho);const t=new FocusEvent("blur",{view:window,bubbles:false,cancelable:false});this.element.dispatchEvent(t);this.stzhBlur.emit({component:"stzh-dropdown"})},onInitialize:()=>{this.stzhInit.emit({component:"stzh-dropdown"})},onLoad:()=>{this._options=this.tomSelect.options}};if(this._options){o.options=this._options}if(this._optgroups){o.optgroups=this._optgroups}if(this._items){o.items=this._items}this.tomSelect=new Dt(this.select,o);if(!this.openOnFocus){this.tomSelect.control.addEventListener("click",(()=>{this.tomSelect.open()}))}if(this.open){this.show()}}disconnectedCallback(){if(this.tomSelect){this.tomSelect.destroy();this.tomSelect=null}}render(){var t;const o=s(this.element,"icon")||!!this.icon;const i=s(this.element,"description")||!!this.description;const l=s(this.element,"description-long")||!!this.descriptionLong;const a=s(this.element,"error")||((t=this._error)===null||t===void 0?void 0:t.length)>0;const d={"stzh-dropdown":true,"stzh-dropdown--is-inline":this.inline,"stzh-dropdown--is-multiple":this.multiple,"stzh-dropdown--is-disabled":this.disabled,"stzh-dropdown--is-required":this.required,"stzh-dropdown--is-invalid":this.invalid||a,[ao]:this._items&&this._items.length>0,"stzh-dropdown--has-icon":o,"stzh-dropdown--has-description":i,"stzh-dropdown--has-description-long":l,"stzh-dropdown--has-error":a,"stzh-dropdown--has-no-search":this.noSearch,"stzh-dropdown--has-label-hidden":this.labelHidden,[`stzh-dropdown--popover-placement-${this.popoverPlacement}`]:!!this.popoverPlacement,[`stzh-dropdown--popover-fullwidth-${this.popoverFullwidth}`]:!!this.popoverFullwidth,[`stzh-dropdown--size-${this.size}`]:!!this.size,[`stzh-dropdown--${this.variant}`]:!!this.variant};return e(r,{"is-invalid":this.invalid||a,tabindex:this.disabled?null:"-1",onFocus:this.onRootFocus},e("div",{class:d,ref:t=>this.rootElement=t},e("div",{class:"stzh-dropdown__wrapper"},e("label",{id:`${this.dropdownId}-label`,class:"stzh-dropdown__label",htmlFor:this.dropdownId},this.label?this.label:e("slot",{name:"label"}),!this.hideOptional&&e("span",{class:"stzh-dropdown__marker"},e("span",{class:"stzh-dropdown__marker-symbol","aria-hidden":"true"},this.required?this.localization.$globals.requiredFieldMarker:this.localization.$globals.optionalFieldMarker),e("span",{class:"stzh-dropdown__marker-text"},this.required?this.localization.$globals.requiredFieldText:this.localization.$globals.optionalFieldText))),e("div",{class:"stzh-dropdown__field-wrapper"},e("select",{id:this.dropdownId,class:"stzh-dropdown__select",ref:t=>this.select=t,multiple:this.multiple,name:this.name,disabled:this.disabled,"aria-labelledby":`${this.dropdownId}-label ${this.dropdownId}-not-loading ${this.dropdownId}-no-results ${this.hideOptional&&this.required&&`${this.dropdownId}-required`} ${this.invalid&&`${this.dropdownId}-invalid`} ${this.dropdownId}-description ${this.a11yDescribedby}`},e("slot",null)),e("div",{class:"stzh-dropdown__icon-angle-wrapper"},this.iconAngle?e("stzh-icon",{name:this.iconAngle,class:"stzh-dropdown__icon-angle"}):e("slot",{name:"icon-angle"})),e("div",{class:"stzh-dropdown__icon-wrapper"},this.icon?e("stzh-icon",{class:"stzh-dropdown__icon",name:this.icon}):e("slot",{name:"icon"})),this.hideOptional&&this.required&&e("div",{id:`${this.dropdownId}-required`,class:"stzh-dropdown__vhidden"},this.localization.$globals.requiredFieldText),this.invalid&&e("div",{id:`${this.dropdownId}-invalid`,class:"stzh-dropdown__vhidden"},this.localization.$globals.invalidFieldText))),e("div",{class:"stzh-dropdown__dropdown-wrapper",ref:t=>this.dropdownWrapperElement=t}),e(n,{classPrefix:"stzh-dropdown",id:`${this.dropdownId}-description`,error:this._error,description:this.description,descriptionLong:this.descriptionLong,descriptionLongTitle:this.descriptionLongTitle,descriptionLongUsed:l,moreInfoButtonLabel:this.localization.$globals.moreInfoButtonLabel})))}get element(){return i(this)}static get watchers(){return{options:["optionsWatcher"],items:["itemsWatcher"],searchField:["searchFieldWatcher"],optgroups:["optgroupsWatcher"],error:["errorWatcher"]}}};po.style=no;export{po as stzh_dropdown};
9
- //# sourceMappingURL=p-b4ce8e10.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["stzhIframeCss","COOKIE_PREFIX_CONFIRM","iframeCounter","StzhIframe","this","_src","updateFocus","handleIframeLoad","iframeElement","focus","handleCookiewallCloseClick","view","stzhViewChange","emit","component","value","handleCookiewallConfirmClick","Cookies","set","cookie","expires","cookieExpires","handlePreviewClick","cookieAccepted","get","srcWatcher","newValue","viewWatcher","src","componentWillLoad","iframeId","skipPreviewIfCookieAccepted","skipPreview","stzhPreviewSkip","localization","window","stzhComponents","utils","fetchTranslations","element","componentDidRender","previewButtonElement","confirmButtonElement","render","classes","h","Host","class","ref","el","allow","onLoad","onClick","previewLabel","defaultPreviewLabel","name","previewIcon","id","cookieConfirmText","size","a11yDescribedby","icon","cookieConfirmIcon","label","cookieConfirmLabel","defaultConfirmLabel","confirmCloseLabel"],"sources":["src/components/stzh-iframe/stzh-iframe.scss?tag=stzh-iframe&encapsulation=scoped","src/components/stzh-iframe/stzh-iframe.tsx"],"sourcesContent":[":host {\n position: relative;\n\n ::slotted([slot=\"preview-logo\"]) {\n width: 100%;\n }\n\n ::slotted([slot=\"preview-image\"]) {\n position: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tobject-fit: cover;\n }\n\n ::slotted([slot=\"cookiewall-text\"]) {\n margin: 0;\n\n p {\n margin: 0;\n\n &:not(:last-child) {\n @include spaceCurve('margin-bottom', 'small');\n }\n }\n }\n}\n\n.stzh-iframe {\n &__iframe,\n &__cookiewall,\n &__preview {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n\n &__iframe,\n &__preview {\n\t\tborder: none;\n }\n\n &__preview,\n &__cookiewall {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: space('medium');\n visibility: hidden;\n\n &.is-visible {\n visibility: visible;\n }\n }\n\n &__preview {\n z-index: 1;\n appearance: none;\n cursor: pointer;\n background-color: $colorGrey20;\n }\n\n &__preview-image-wrapper:not(:empty) + &__preview-logo-wrapper {\n display: none;\n }\n\n &__preview-logo-wrapper {\n @include spaceCurve('top', 'medium');\n @include spaceCurve('left', 'medium');\n\t\tposition: absolute;\n\t\twidth: 45%;\n\t}\n\n\t&__preview-run {\n\t\tposition: relative;\n\t\tz-index: 1;\n\t\tappearance: none;\n\t\tborder: none;\n\t\tbackground-color: $colorPrimary;\n color: $colorWhite;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\twidth: $formInputHeightSmall;\n\t\theight: $formInputHeightSmall;\n visibility: hidden;\n transition: background-color $baseTransitionAnimationSpeed;\n\n &.is-visible {\n visibility: visible;\n }\n\n\t\t@include mq($from: medium) {\n\t\t\twidth: $formInputHeight;\n\t\t\theight: $formInputHeight;\n\t\t}\n\t}\n\n &__preview:hover &__preview-run {\n background-color: $colorSecondary60;\n }\n\n &__preview-run-icon {\n @include mq($from: medium) {\n --size: #{iconSize('large')};\n }\n }\n\n\t&__cookiewall {\n @include spaceCurve('padding-left', 'regular');\n @include spaceCurve('padding-right', 'regular');\n z-index: 2;\n\t\ttext-align: center;\n background-color: $colorBlack60op;\n color: $colorWhite;\n\n @include mq($from: medium) {\n @include gridGutter;\n display: grid;\n grid-template-areas: \". content content content content content content .\";\n grid-template-columns: repeat(8, minmax(0, 1fr));\n padding-left: 0;\n padding-right: 0;\n }\n\t}\n\n &__cookiewall-content {\n @include mq($from: medium) {\n grid-area: content;\n }\n }\n\n &__cookiewall-text {\n @include fontSize('milli');\n @include spaceCurve('padding-top', 'small');\n @include spaceCurve('padding-bottom', 'small');\n @include spaceCurve('margin-bottom', 'regular');\n }\n\n\t&__cookiewall-close {\n top: 0;\n right: 0;\n\t\tposition: absolute;\n\t\tappearance: none;\n\t\tborder: none;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tpadding: space('xsmall');\n background-color: transparent;\n color: $colorWhite;\n cursor: pointer;\n\t}\n}\n","import {\n Component,\n Host,\n h,\n Element,\n Prop,\n State,\n Watch,\n Event,\n EventEmitter,\n} from \"@stencil/core\";\n\nimport {\n StzhIframeView,\n StzhIframePreviewSkipEvent,\n StzhIframeViewChangeEvent,\n} from \"../../index\";\nimport { StzhIframeLocalizedText } from \"./stzh-iframe.localization\";\n\nimport Cookies from \"js-cookie\";\n\nconst COOKIE_PREFIX_CONFIRM = \"stzh-components-iframe-confirm\";\n\nlet iframeCounter = 0;\n\n/**\n * @slot preview-logo - Slot for logo\n * @slot preview-image - Slot for preview image\n * @slot cookiewall-text - Slot for cookiewall text\n */\n@Component({\n tag: \"stzh-iframe\",\n styleUrl: \"stzh-iframe.scss\",\n scoped: true\n})\nexport class StzhIframe {\n /** Translation strings */\n @Prop() localization: StzhIframeLocalizedText;\n\n /** `src` of iframe */\n @Prop() src: string = \"\";\n private _src: string | null = null;\n\n /**\n * Cookie name (if not empty, the user will be shown a cookie wall)\n * Will be prefixed with `stzh-components-iframe-confirm-`.\n */\n @Prop() cookie: string;\n\n /**\n * Number of days the cookie is valid for.\n * If omitted or set to null, the cookie expires when browser is closed.\n * Maximum is on year (365 days, is default).\n */\n @Prop() cookieExpires: number | null = 365;\n\n /** Confirm button icon */\n @Prop() cookieConfirmIcon: string;\n\n /** Confirm button label */\n @Prop() cookieConfirmLabel: string;\n\n /** Confirm text (use instead of `cookiewall-text` slot) */\n @Prop() cookieConfirmText: string;\n\n /** Preview label */\n @Prop() previewLabel: string;\n\n /** Preview icon */\n @Prop() previewIcon: string = \"external-link\";\n\n /** Whether preview should be skipped, if user has passed the cookiewall before */\n @Prop() skipPreviewIfCookieAccepted: boolean = false;\n\n /** Whether preview should always be skipped */\n @Prop() skipPreview: boolean = false;\n\n @Element() element: HTMLStzhIframeElement;\n\n @State() view: StzhIframeView = \"preview\";\n\n /** Preview skip (only gets executed if it goes directly to iframe and not cookiewall) */\n @Event() stzhPreviewSkip: EventEmitter<StzhIframePreviewSkipEvent>;\n\n /** View change */\n @Event() stzhViewChange: EventEmitter<StzhIframeViewChangeEvent>;\n\n @Watch(\"src\")\n srcWatcher(newValue: string) {\n if (this.view === \"iframe\") {\n this._src = newValue;\n }\n }\n\n @Watch(\"view\")\n viewWatcher(newValue: StzhIframeView) {\n if (newValue === \"iframe\") {\n this._src = this.src;\n } else {\n this._src = null;\n }\n }\n\n private iframeId: string;\n private iframeElement: HTMLIFrameElement;\n private previewButtonElement: HTMLButtonElement;\n private confirmButtonElement: HTMLStzhButtonElement;\n private updateFocus: boolean = false;\n\n private handleIframeLoad = () => {\n if (this.updateFocus) {\n this.iframeElement.focus();\n this.updateFocus = false;\n }\n }\n\n private handleCookiewallCloseClick = () => {\n this.updateFocus = true;\n this.view = \"preview\";\n\n this.stzhViewChange.emit({\n component: \"stzh-iframe\",\n value: this.view\n });\n }\n\n private handleCookiewallConfirmClick = () => {\n Cookies.set(`${COOKIE_PREFIX_CONFIRM}-${this.cookie}`, \"1\", {\n expires: this.cookieExpires || null\n });\n\n this.updateFocus = true;\n this.view = \"iframe\";\n\n this.stzhViewChange.emit({\n component: \"stzh-iframe\",\n value: this.view\n });\n }\n\n private handlePreviewClick = () => {\n\t\tconst cookieAccepted = Cookies.get(`${COOKIE_PREFIX_CONFIRM}-${this.cookie}`) || false;\n this.updateFocus = true;\n\n if (!this.cookie || cookieAccepted) {\n this.view = \"iframe\";\n } else {\n this.view = \"cookiewall\";\n }\n\n this.stzhViewChange.emit({\n component: \"stzh-iframe\",\n value: this.view\n });\n }\n\n async componentWillLoad() {\n this.iframeId = `stzh-iframe-${iframeCounter++}`;\n\n\t\tconst cookieAccepted = Cookies.get(`${COOKIE_PREFIX_CONFIRM}-${this.cookie}`) || false;\n\n if (\n ((!this.cookie || cookieAccepted) && (this.skipPreviewIfCookieAccepted || this.skipPreview))\n || (!this.cookie && this.skipPreview)\n ) {\n this.stzhPreviewSkip.emit({\n component: \"stzh-iframe\"\n });\n\n this.view = \"iframe\";\n } else if (this.cookie && this.skipPreview) {\n this.view = \"cookiewall\";\n }\n\n this.viewWatcher(this.view);\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"iframe\");\n }\n }\n\n async componentDidRender() {\n if (this.updateFocus) {\n if (this.view === \"iframe\") {\n // wait for iframe load event (handleIframeLoad)\n } else if (this.view === \"preview\") {\n this.previewButtonElement.focus();\n this.updateFocus = false;\n } else if (this.view === \"cookiewall\") {\n this.confirmButtonElement.focus();\n this.updateFocus = false;\n }\n }\n }\n\n render() {\n const classes = {\n \"stzh-iframe\": true,\n };\n\n return (\n <Host>\n <div class={classes}>\n {this.view === \"iframe\" &&\n <iframe\n ref={(el) => (this.iframeElement = el as HTMLIFrameElement)}\n class=\"stzh-iframe__iframe\"\n src={this._src}\n allow=\"autoplay; fullscreen\"\n onLoad={this.handleIframeLoad}\n ></iframe>\n }\n\n <button\n ref={(el) => (this.previewButtonElement = el as HTMLButtonElement)}\n onClick={this.handlePreviewClick}\n aria-label={this.previewLabel || this.localization.defaultPreviewLabel}\n // disabled={this.view === \"cookiewall\"}\n class={{\n \"stzh-iframe__preview\": true,\n \"is-visible\": this.view === \"preview\" || this.view === \"cookiewall\"\n }}\n >\n <div class=\"stzh-iframe__preview-image-wrapper\">\n <slot name=\"preview-image\"></slot>\n </div>\n\n <div class=\"stzh-iframe__preview-logo-wrapper\">\n <slot name=\"preview-logo\"></slot>\n </div>\n\n {this.previewIcon &&\n <div class={{\n \"stzh-iframe__preview-run\": true,\n \"is-visible\": this.view === \"preview\"\n }}>\n <stzh-icon class=\"stzh-iframe__preview-run-icon\" name={this.previewIcon}></stzh-icon>\n </div>\n }\n </button>\n\n {this.cookie &&\n <div\n class={{\n \"stzh-iframe__cookiewall\": true,\n \"is-visible\": this.view === \"cookiewall\"\n }}\n >\n <div class=\"stzh-iframe__cookiewall-content\">\n <div\n class=\"stzh-iframe__cookiewall-text\"\n id={`${this.iframeId}-cookiewall-text`}\n >\n {this.cookieConfirmText ? this.cookieConfirmText : <slot name=\"cookiewall-text\"></slot>}\n </div>\n\n <stzh-button\n ref={(el) => (this.confirmButtonElement = el as HTMLStzhButtonElement)}\n class=\"stzh-iframe__cookiewall-button\"\n size=\"small\"\n a11yDescribedby={`${this.iframeId}-cookiewall-text`}\n icon={this.cookieConfirmIcon}\n label={this.cookieConfirmLabel || this.localization.defaultConfirmLabel}\n onClick={this.handleCookiewallConfirmClick}\n ></stzh-button>\n </div>\n\n {!this.skipPreview &&\n <button\n class=\"stzh-iframe__cookiewall-close\"\n onClick={this.handleCookiewallCloseClick}\n aria-label={this.localization.confirmCloseLabel}\n >\n <stzh-icon class=\"stzh-iframe__cookiewall-close-icon\" name=\"close\"></stzh-icon>\n </button>\n }\n </div>\n }\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}