@sbb-esta/lyne-elements 4.8.1 → 4.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1639) hide show
  1. package/accordion/accordion.component.js +1 -1
  2. package/{accordion.component-DmaGQH3Q.js → accordion.component-Bos7Gwof.js} +17 -17
  3. package/accordion.js +1 -1
  4. package/accordion.pure.js +1 -1
  5. package/action-group/action-group.component.js +1 -1
  6. package/action-group.component-BYif_gBd.js +158 -0
  7. package/action-group.js +1 -1
  8. package/action-group.pure.js +1 -1
  9. package/alert/alert/alert.component.js +1 -1
  10. package/alert/alert-group/alert-group.component.js +1 -1
  11. package/alert/alert-group.js +1 -1
  12. package/alert/alert.js +1 -1
  13. package/{alert-group.component-RV1M1OKy.js → alert-group.component-Es6bBiff.js} +18 -18
  14. package/alert.component-BiAbeeYd.js +169 -0
  15. package/alert.js +2 -2
  16. package/alert.pure.js +2 -2
  17. package/autocomplete/autocomplete-base-element.js +1 -1
  18. package/autocomplete/autocomplete.component.js +1 -1
  19. package/{autocomplete-base-element-DVFCZ4lt.js → autocomplete-base-element-DarHnnYC.js} +35 -35
  20. package/autocomplete.js +1 -1
  21. package/autocomplete.pure.js +1 -1
  22. package/block-link-common-DzGY49Xc.js +57 -0
  23. package/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
  24. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +1 -1
  25. package/breadcrumb/breadcrumb-group.js +1 -1
  26. package/breadcrumb/breadcrumb.js +1 -1
  27. package/{breadcrumb-group.component-CfUyO1sI.js → breadcrumb-group.component-Cc6CHbVy.js} +14 -14
  28. package/breadcrumb.component-C1xO7cgt.js +24 -0
  29. package/breadcrumb.js +2 -2
  30. package/breadcrumb.pure.js +2 -2
  31. package/button/accent-button/accent-button.component.js +1 -1
  32. package/button/accent-button-link/accent-button-link.component.js +1 -1
  33. package/button/accent-button-link.js +1 -2
  34. package/button/accent-button-static/accent-button-static.component.js +1 -1
  35. package/button/accent-button-static.js +1 -2
  36. package/button/accent-button.js +1 -2
  37. package/button/button/button.component.js +1 -1
  38. package/button/button-link/button-link.component.js +1 -1
  39. package/button/button-link.js +1 -2
  40. package/button/button-static/button-static.component.js +1 -1
  41. package/button/button-static.js +1 -2
  42. package/button/button.js +1 -2
  43. package/button/common/button-common.js +2 -87
  44. package/button/common.js +5 -3
  45. package/button/mini-button/mini-button.component.js +1 -1
  46. package/button/mini-button-group/mini-button-group.component.js +1 -1
  47. package/button/mini-button-group.js +2 -3
  48. package/button/mini-button-link/mini-button-link.component.js +1 -1
  49. package/button/mini-button-link.js +2 -3
  50. package/button/mini-button.js +1 -2
  51. package/button/secondary-button/secondary-button.component.js +1 -1
  52. package/button/secondary-button-link/secondary-button-link.component.js +1 -1
  53. package/button/secondary-button-link.js +1 -2
  54. package/button/secondary-button-static/secondary-button-static.component.js +1 -1
  55. package/button/secondary-button-static.js +1 -2
  56. package/button/secondary-button.js +1 -2
  57. package/button/transparent-button/transparent-button.component.js +1 -1
  58. package/button/transparent-button-link/transparent-button-link.component.js +1 -1
  59. package/button/transparent-button-link.js +1 -2
  60. package/button/transparent-button-static/transparent-button-static.component.js +1 -1
  61. package/button/transparent-button-static.js +1 -2
  62. package/button/transparent-button.js +1 -2
  63. package/button-common-yFVzAoGy.js +87 -0
  64. package/button.js +4 -5
  65. package/button.pure.js +4 -5
  66. package/calendar/calendar/calendar.component.js +1 -1
  67. package/calendar/calendar-day/calendar-day.component.js +1 -1
  68. package/calendar/calendar-day.js +1 -1
  69. package/calendar/calendar.js +1 -1
  70. package/calendar/common/calendar-cell-base-element.js +2 -23
  71. package/calendar/common.js +2 -6
  72. package/calendar-cell-base-element-CBaanSU3.js +25 -0
  73. package/{calendar-day.component-Iewo-vBR.js → calendar-day.component-BBszRsGw.js} +12 -12
  74. package/{calendar.component-Cz-OGQu6.js → calendar.component-DhmaJt2k.js} +138 -236
  75. package/calendar.js +2 -2
  76. package/calendar.pure.js +2 -2
  77. package/card/card/card.component.js +1 -1
  78. package/card/card-badge/card-badge.component.js +1 -1
  79. package/card/card-badge.js +1 -1
  80. package/card/card.js +1 -1
  81. package/card/common/card-action-common.js +1 -1
  82. package/card/common.js +1 -1
  83. package/{card-action-common-GpkaNYtV.js → card-action-common-Ct0e9dtO.js} +11 -11
  84. package/card-badge.component-BSOEYrN4.js +65 -0
  85. package/card.component-D14GBu6y.js +62 -0
  86. package/card.js +3 -3
  87. package/card.pure.js +3 -3
  88. package/carousel/carousel/carousel.component.js +1 -1
  89. package/carousel/carousel-item/carousel-item.component.js +1 -1
  90. package/carousel/carousel-item.js +1 -1
  91. package/carousel/carousel-list/carousel-list.component.js +1 -1
  92. package/carousel/carousel-list.js +1 -1
  93. package/carousel/carousel.js +1 -1
  94. package/{carousel-item.component-kv3rY8B-.js → carousel-item.component-DUII_cjr.js} +5 -5
  95. package/{carousel-list.component-DMMk66SP.js → carousel-list.component-C0i7aHTM.js} +5 -5
  96. package/{carousel.component-BA0V2JHI.js → carousel.component-BxKrGk84.js} +12 -12
  97. package/carousel.js +3 -3
  98. package/carousel.pure.js +3 -3
  99. package/checkbox/checkbox.component.js +1 -2
  100. package/checkbox/checkbox.js +1 -2
  101. package/checkbox/common/checkbox-common.js +1 -1
  102. package/checkbox/common.js +1 -1
  103. package/{checkbox-common-J-7Y966k.js → checkbox-common-DdieysTG.js} +4 -3
  104. package/{checkbox.component-Bazdxs9R.js → checkbox.component-ROzxEnPh.js} +18 -18
  105. package/checkbox.js +2 -2
  106. package/checkbox.pure.js +2 -2
  107. package/chip/chip/chip.component.js +1 -1
  108. package/chip/chip-group/chip-group.component.js +1 -1
  109. package/chip/chip-group.js +1 -1
  110. package/chip/chip.js +1 -1
  111. package/{chip-group.component-CbruCoHR.js → chip-group.component-DJzUToem.js} +17 -17
  112. package/chip-label/chip-label.component.js +1 -1
  113. package/chip-label.component-B76PdOCg.js +80 -0
  114. package/chip-label.js +1 -1
  115. package/chip-label.pure.js +1 -1
  116. package/chip.component-Cu5guQs8.js +98 -0
  117. package/chip.js +2 -2
  118. package/chip.pure.js +2 -2
  119. package/clock/clock.component.js +1 -1
  120. package/{clock.component-gZJy4AU4.js → clock.component-DHFuoi2A.js} +12 -12
  121. package/clock.js +1 -1
  122. package/clock.pure.js +1 -1
  123. package/compact-paginator.component-Cyi-t_YD.js +43 -0
  124. package/container/container/container.component.js +1 -1
  125. package/container/container.js +1 -1
  126. package/container/sticky-bar/sticky-bar.component.js +1 -1
  127. package/container/sticky-bar.js +1 -1
  128. package/container.component-CkYADvvc.js +117 -0
  129. package/container.js +2 -2
  130. package/container.pure.js +2 -2
  131. package/core/a11y/focus-trap-controller.js +2 -2
  132. package/core/base-elements/element.js +2 -1
  133. package/core/base-elements/selection-group-base-element.js +1 -1
  134. package/core/base-elements.js +1 -1
  135. package/core/controllers/media-matchers-controller.js +1 -1
  136. package/core/datetime/date-adapter.js +13 -13
  137. package/core/datetime.js +4 -4
  138. package/core/i18n/i18n.js +6 -1
  139. package/core/i18n.js +2 -2
  140. package/core/mixins/panel-mixin.js +2 -110
  141. package/core/mixins.js +4 -9
  142. package/core/styles/core.scss +65 -82
  143. package/core/styles/layout.private.scss +36 -0
  144. package/core/styles/mixins/table.scss +40 -29
  145. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +371 -0
  146. package/core/styles/scrollbar.private.scss +15 -0
  147. package/core/styles/styles.js +2 -0
  148. package/core/styles/table.scss +34 -0
  149. package/core/styles/typography.private.scss +9 -0
  150. package/core/styles.js +2 -5
  151. package/core.css +203 -43
  152. package/core.js +82 -0
  153. package/custom-elements.json +2451 -1455
  154. package/date-input/date-input.component.js +1 -1
  155. package/{date-input.component-Da-aS3jt.js → date-input.component-B3f_GThS.js} +17 -17
  156. package/date-input.js +1 -1
  157. package/date-input.pure.js +1 -1
  158. package/datepicker/common/datepicker-button.js +1 -1
  159. package/datepicker/common.js +1 -1
  160. package/datepicker/datepicker/datepicker.component.js +1 -1
  161. package/datepicker/datepicker-next-day/datepicker-next-day.component.js +4 -4
  162. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +4 -4
  163. package/datepicker/datepicker-toggle/datepicker-toggle.component.js +5 -5
  164. package/datepicker/datepicker.js +1 -1
  165. package/{datepicker-button-Dk2UQkPN.js → datepicker-button-B91ISxhE.js} +8 -7
  166. package/{datepicker.component-DUVgoAGU.js → datepicker.component-DJ_9VBnC.js} +15 -15
  167. package/datepicker.js +2 -2
  168. package/datepicker.pure.js +2 -2
  169. package/development/accordion/accordion.component.d.ts.map +1 -1
  170. package/development/accordion/accordion.component.js +1 -1
  171. package/development/accordion.component-CGTwcntz.js +170 -0
  172. package/development/accordion.js +1 -1
  173. package/development/accordion.pure.js +1 -1
  174. package/development/action-group/action-group.component.d.ts.map +1 -1
  175. package/development/action-group/action-group.component.js +1 -1
  176. package/development/action-group.component-DQ7_kjB9.js +215 -0
  177. package/development/action-group.js +1 -1
  178. package/development/action-group.pure.js +1 -1
  179. package/development/alert/alert/alert.component.d.ts.map +1 -1
  180. package/development/alert/alert/alert.component.js +1 -1
  181. package/development/alert/alert-group/alert-group.component.d.ts.map +1 -1
  182. package/development/alert/alert-group/alert-group.component.js +1 -1
  183. package/development/alert/alert-group.js +1 -1
  184. package/development/alert/alert.js +1 -1
  185. package/development/alert-group.component-DnnPrv5I.js +191 -0
  186. package/development/alert.component-CYb1vnDZ.js +217 -0
  187. package/development/alert.js +2 -2
  188. package/development/alert.pure.js +2 -2
  189. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  190. package/development/autocomplete/autocomplete-base-element.js +1 -1
  191. package/development/autocomplete/autocomplete.component.js +1 -1
  192. package/development/autocomplete-base-element-YwfObJzm.js +678 -0
  193. package/development/autocomplete.js +1 -1
  194. package/development/autocomplete.pure.js +1 -1
  195. package/development/block-link-common-GckvjULA.js +71 -0
  196. package/development/breadcrumb/breadcrumb/breadcrumb.component.d.ts +1 -1
  197. package/development/breadcrumb/breadcrumb/breadcrumb.component.d.ts.map +1 -1
  198. package/development/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
  199. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts.map +1 -1
  200. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +1 -1
  201. package/development/breadcrumb/breadcrumb-group.js +1 -1
  202. package/development/breadcrumb/breadcrumb.js +1 -1
  203. package/development/breadcrumb-group.component-B3Shlng3.js +195 -0
  204. package/development/breadcrumb.component-DxSUxLZO.js +35 -0
  205. package/development/breadcrumb.js +2 -2
  206. package/development/breadcrumb.pure.js +2 -2
  207. package/development/button/accent-button/accent-button.component.d.ts +1 -1
  208. package/development/button/accent-button/accent-button.component.d.ts.map +1 -1
  209. package/development/button/accent-button/accent-button.component.js +2 -2
  210. package/development/button/accent-button-link/accent-button-link.component.d.ts +1 -1
  211. package/development/button/accent-button-link/accent-button-link.component.d.ts.map +1 -1
  212. package/development/button/accent-button-link/accent-button-link.component.js +2 -2
  213. package/development/button/accent-button-link.js +3 -1
  214. package/development/button/accent-button-static/accent-button-static.component.d.ts +1 -1
  215. package/development/button/accent-button-static/accent-button-static.component.d.ts.map +1 -1
  216. package/development/button/accent-button-static/accent-button-static.component.js +2 -2
  217. package/development/button/accent-button-static.js +3 -1
  218. package/development/button/accent-button.js +3 -1
  219. package/development/button/button/button.component.d.ts +1 -1
  220. package/development/button/button/button.component.d.ts.map +1 -1
  221. package/development/button/button/button.component.js +2 -2
  222. package/development/button/button-link/button-link.component.d.ts +1 -1
  223. package/development/button/button-link/button-link.component.d.ts.map +1 -1
  224. package/development/button/button-link/button-link.component.js +2 -2
  225. package/development/button/button-link.js +3 -1
  226. package/development/button/button-static/button-static.component.d.ts +1 -1
  227. package/development/button/button-static/button-static.component.d.ts.map +1 -1
  228. package/development/button/button-static/button-static.component.js +2 -2
  229. package/development/button/button-static.js +3 -1
  230. package/development/button/button.js +3 -1
  231. package/development/button/common/button-common.d.ts +7 -0
  232. package/development/button/common/button-common.d.ts.map +1 -1
  233. package/development/button/common/button-common.js +2 -117
  234. package/development/button/common.d.ts.map +1 -1
  235. package/development/button/common.js +8 -3
  236. package/development/button/mini-button/mini-button.component.js +2 -2
  237. package/development/button/mini-button-group/mini-button-group.component.d.ts.map +1 -1
  238. package/development/button/mini-button-group/mini-button-group.component.js +1 -1
  239. package/development/button/mini-button-group.js +4 -2
  240. package/development/button/mini-button-link/mini-button-link.component.d.ts.map +1 -1
  241. package/development/button/mini-button-link/mini-button-link.component.js +1 -1
  242. package/development/button/mini-button-link.js +4 -2
  243. package/development/button/mini-button.js +3 -1
  244. package/development/button/secondary-button/secondary-button.component.d.ts +1 -1
  245. package/development/button/secondary-button/secondary-button.component.d.ts.map +1 -1
  246. package/development/button/secondary-button/secondary-button.component.js +2 -2
  247. package/development/button/secondary-button-link/secondary-button-link.component.d.ts +1 -1
  248. package/development/button/secondary-button-link/secondary-button-link.component.d.ts.map +1 -1
  249. package/development/button/secondary-button-link/secondary-button-link.component.js +2 -2
  250. package/development/button/secondary-button-link.js +3 -1
  251. package/development/button/secondary-button-static/secondary-button-static.component.d.ts +1 -1
  252. package/development/button/secondary-button-static/secondary-button-static.component.d.ts.map +1 -1
  253. package/development/button/secondary-button-static/secondary-button-static.component.js +2 -2
  254. package/development/button/secondary-button-static.js +3 -1
  255. package/development/button/secondary-button.js +3 -1
  256. package/development/button/transparent-button/transparent-button.component.d.ts +1 -1
  257. package/development/button/transparent-button/transparent-button.component.js +2 -2
  258. package/development/button/transparent-button-link/transparent-button-link.component.d.ts +1 -1
  259. package/development/button/transparent-button-link/transparent-button-link.component.js +2 -2
  260. package/development/button/transparent-button-link.js +3 -1
  261. package/development/button/transparent-button-static/transparent-button-static.component.d.ts +1 -1
  262. package/development/button/transparent-button-static/transparent-button-static.component.js +2 -2
  263. package/development/button/transparent-button-static.js +3 -1
  264. package/development/button/transparent-button.js +3 -1
  265. package/development/button-common-CAu09Yim.js +145 -0
  266. package/development/button.js +5 -6
  267. package/development/button.pure.d.ts +1 -1
  268. package/development/button.pure.d.ts.map +1 -1
  269. package/development/button.pure.js +4 -5
  270. package/development/calendar/calendar/calendar.component.d.ts +1 -12
  271. package/development/calendar/calendar/calendar.component.d.ts.map +1 -1
  272. package/development/calendar/calendar/calendar.component.js +1 -1
  273. package/development/calendar/calendar-day/calendar-day.component.d.ts.map +1 -1
  274. package/development/calendar/calendar-day/calendar-day.component.js +1 -1
  275. package/development/calendar/calendar-day.js +1 -1
  276. package/development/calendar/calendar-month/calendar-month.component.d.ts.map +1 -1
  277. package/development/calendar/calendar-month/calendar-month.component.js +1 -1
  278. package/development/calendar/calendar-weekday/calendar-weekday.component.d.ts.map +1 -1
  279. package/development/calendar/calendar-weekday/calendar-weekday.component.js +1 -1
  280. package/development/calendar/calendar-weeknumber/calendar-weeknumber.component.d.ts.map +1 -1
  281. package/development/calendar/calendar-weeknumber/calendar-weeknumber.component.js +1 -1
  282. package/development/calendar/calendar.js +1 -1
  283. package/development/calendar/common/calendar-cell-base-element.d.ts +2 -1
  284. package/development/calendar/common/calendar-cell-base-element.d.ts.map +1 -1
  285. package/development/calendar/common/calendar-cell-base-element.js +2 -35
  286. package/development/calendar/common.d.ts.map +1 -1
  287. package/development/calendar/common.js +2 -120
  288. package/development/calendar-cell-base-element-BXohfDSl.js +38 -0
  289. package/development/calendar-day.component-DFvRrp2O.js +144 -0
  290. package/development/calendar.component-6p9vsp-V.js +1452 -0
  291. package/development/calendar.js +2 -2
  292. package/development/calendar.pure.js +2 -2
  293. package/development/card/card/card.component.d.ts.map +1 -1
  294. package/development/card/card/card.component.js +1 -1
  295. package/development/card/card-badge/card-badge.component.d.ts.map +1 -1
  296. package/development/card/card-badge/card-badge.component.js +1 -1
  297. package/development/card/card-badge.js +1 -1
  298. package/development/card/card-button/card-button.component.d.ts +1 -1
  299. package/development/card/card-link/card-link.component.d.ts +1 -1
  300. package/development/card/card.js +1 -1
  301. package/development/card/common/card-action-common.js +1 -1
  302. package/development/card/common.js +1 -1
  303. package/development/card-action-common-1FDHbfeR.js +117 -0
  304. package/development/card-badge.component-D4Mes-Gw.js +84 -0
  305. package/development/card.component-DsqIZC_u.js +81 -0
  306. package/development/card.js +3 -3
  307. package/development/card.pure.js +3 -3
  308. package/development/carousel/carousel/carousel.component.d.ts.map +1 -1
  309. package/development/carousel/carousel/carousel.component.js +1 -1
  310. package/development/carousel/carousel-item/carousel-item.component.d.ts.map +1 -1
  311. package/development/carousel/carousel-item/carousel-item.component.js +1 -1
  312. package/development/carousel/carousel-item.js +1 -1
  313. package/development/carousel/carousel-list/carousel-list.component.d.ts.map +1 -1
  314. package/development/carousel/carousel-list/carousel-list.component.js +1 -1
  315. package/development/carousel/carousel-list.js +1 -1
  316. package/development/carousel/carousel.js +1 -1
  317. package/development/carousel-item.component-CIgUJtDJ.js +39 -0
  318. package/development/carousel-list.component-L-nYpHcN.js +136 -0
  319. package/development/carousel.component-Dl48ROSf.js +144 -0
  320. package/development/carousel.js +3 -3
  321. package/development/carousel.pure.js +3 -3
  322. package/development/checkbox/checkbox.component.d.ts +1 -1
  323. package/development/checkbox/checkbox.component.d.ts.map +1 -1
  324. package/development/checkbox/checkbox.component.js +1 -2
  325. package/development/checkbox/checkbox.js +2 -3
  326. package/development/checkbox/common/checkbox-common.d.ts +2 -0
  327. package/development/checkbox/common/checkbox-common.d.ts.map +1 -1
  328. package/development/checkbox/common/checkbox-common.js +2 -2
  329. package/development/checkbox/common.js +2 -2
  330. package/development/checkbox-common-DiTlHvFJ.js +86 -0
  331. package/development/checkbox.component-D3_FFSys.js +161 -0
  332. package/development/checkbox.js +3 -3
  333. package/development/checkbox.pure.js +3 -3
  334. package/development/chip/chip/chip.component.d.ts.map +1 -1
  335. package/development/chip/chip/chip.component.js +1 -1
  336. package/development/chip/chip-group/chip-group.component.d.ts.map +1 -1
  337. package/development/chip/chip-group/chip-group.component.js +1 -1
  338. package/development/chip/chip-group.js +1 -1
  339. package/development/chip/chip.js +1 -1
  340. package/development/chip-group.component-CvpUdzu1.js +409 -0
  341. package/development/chip-label/chip-label.component.d.ts.map +1 -1
  342. package/development/chip-label/chip-label.component.js +1 -1
  343. package/development/chip-label.component-DU8s-hfA.js +103 -0
  344. package/development/chip-label.js +1 -1
  345. package/development/chip-label.pure.js +1 -1
  346. package/development/chip.component-C6v1-PLX.js +118 -0
  347. package/development/chip.js +2 -2
  348. package/development/chip.pure.js +2 -2
  349. package/development/clock/clock.component.d.ts.map +1 -1
  350. package/development/clock/clock.component.js +1 -1
  351. package/development/clock.component-CVPv4mCp.js +290 -0
  352. package/development/clock.js +1 -1
  353. package/development/clock.pure.js +1 -1
  354. package/development/compact-paginator.component-TfDVt_ST.js +51 -0
  355. package/development/container/container/container.component.d.ts.map +1 -1
  356. package/development/container/container/container.component.js +1 -1
  357. package/development/container/container.js +1 -1
  358. package/development/container/sticky-bar/sticky-bar.component.d.ts.map +1 -1
  359. package/development/container/sticky-bar/sticky-bar.component.js +1 -1
  360. package/development/container/sticky-bar.js +1 -1
  361. package/development/container.component-CG_i65Op.js +151 -0
  362. package/development/container.js +2 -2
  363. package/development/container.pure.js +2 -2
  364. package/development/core/a11y/focus-trap-controller.js +3 -3
  365. package/development/core/base-elements/element.d.ts.map +1 -1
  366. package/development/core/base-elements/element.js +6 -2
  367. package/development/core/base-elements/selection-group-base-element.d.ts.map +1 -1
  368. package/development/core/base-elements/selection-group-base-element.js +1 -1
  369. package/development/core/base-elements.js +1 -1
  370. package/development/core/controllers/media-matchers-controller.js +1 -1
  371. package/development/core/datetime/date-adapter.d.ts +9 -2
  372. package/development/core/datetime/date-adapter.d.ts.map +1 -1
  373. package/development/core/datetime/date-adapter.js +11 -4
  374. package/development/core/datetime.js +2 -2
  375. package/development/core/i18n/i18n.d.ts +1 -0
  376. package/development/core/i18n/i18n.d.ts.map +1 -1
  377. package/development/core/i18n/i18n.js +8 -2
  378. package/development/core/i18n.js +2 -2
  379. package/development/core/mixins/panel-mixin.d.ts +1 -0
  380. package/development/core/mixins/panel-mixin.d.ts.map +1 -1
  381. package/development/core/mixins/panel-mixin.js +2 -147
  382. package/development/core/mixins.d.ts.map +1 -1
  383. package/development/core/mixins.js +2 -115
  384. package/development/core/styles/styles.d.ts +2 -0
  385. package/development/core/styles/styles.d.ts.map +1 -0
  386. package/development/core/styles/styles.js +2 -0
  387. package/development/core/styles.d.ts +1 -0
  388. package/development/core/styles.d.ts.map +1 -1
  389. package/development/core/styles.js +2 -11
  390. package/development/core.d.ts +15 -0
  391. package/development/core.d.ts.map +1 -0
  392. package/development/core.js +82 -0
  393. package/development/date-input/date-input.component.d.ts.map +1 -1
  394. package/development/date-input/date-input.component.js +1 -1
  395. package/development/date-input.component-UP1afzgy.js +307 -0
  396. package/development/date-input.js +1 -1
  397. package/development/date-input.pure.js +1 -1
  398. package/development/datepicker/common/datepicker-button.d.ts +2 -0
  399. package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
  400. package/development/datepicker/common/datepicker-button.js +2 -2
  401. package/development/datepicker/common.js +2 -2
  402. package/development/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
  403. package/development/datepicker/datepicker/datepicker.component.js +1 -1
  404. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +2 -2
  405. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +2 -2
  406. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +2 -2
  407. package/development/datepicker/datepicker.js +1 -1
  408. package/development/datepicker-button-CANzGO5m.js +163 -0
  409. package/development/datepicker.component-C8XQVo45.js +213 -0
  410. package/development/datepicker.js +3 -3
  411. package/development/datepicker.pure.js +3 -3
  412. package/development/dialog/dialog/dialog.component.d.ts.map +1 -1
  413. package/development/dialog/dialog/dialog.component.js +1 -1
  414. package/development/dialog/dialog-actions/dialog-actions.component.d.ts.map +1 -1
  415. package/development/dialog/dialog-actions/dialog-actions.component.js +1 -1
  416. package/development/dialog/dialog-actions.js +1 -1
  417. package/development/dialog/dialog-close-button/dialog-close-button.component.d.ts +1 -1
  418. package/development/dialog/dialog-close-button/dialog-close-button.component.d.ts.map +1 -1
  419. package/development/dialog/dialog-close-button/dialog-close-button.component.js +1 -1
  420. package/development/dialog/dialog-close-button.js +1 -1
  421. package/development/dialog/dialog-content/dialog-content.component.d.ts.map +1 -1
  422. package/development/dialog/dialog-content/dialog-content.component.js +1 -1
  423. package/development/dialog/dialog-content.js +1 -1
  424. package/development/dialog/dialog-title/dialog-title.component.d.ts.map +1 -1
  425. package/development/dialog/dialog-title/dialog-title.component.js +1 -1
  426. package/development/dialog/dialog-title.js +1 -1
  427. package/development/dialog/dialog.js +1 -1
  428. package/development/dialog-actions.component-CegGvLGp.js +31 -0
  429. package/development/dialog-close-button.component-C4P-8J8j.js +42 -0
  430. package/development/dialog-content.component-bm8piC0O.js +30 -0
  431. package/development/dialog-title.component-CUAbFzCr.js +29 -0
  432. package/development/dialog.component-TBiL0Sdq.js +237 -0
  433. package/development/dialog.js +5 -5
  434. package/development/dialog.pure.js +5 -5
  435. package/development/divider/divider.component.d.ts.map +1 -1
  436. package/development/divider/divider.component.js +1 -1
  437. package/development/divider.component-Bisnf286.js +77 -0
  438. package/development/divider.js +1 -1
  439. package/development/divider.pure.js +1 -1
  440. package/development/error.component-xD_c9IBA.js +55 -0
  441. package/development/expansion-panel/expansion-panel/expansion-panel.component.d.ts.map +1 -1
  442. package/development/expansion-panel/expansion-panel/expansion-panel.component.js +1 -1
  443. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts.map +1 -1
  444. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
  445. package/development/expansion-panel/expansion-panel-content.js +1 -1
  446. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts.map +1 -1
  447. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +1 -1
  448. package/development/expansion-panel/expansion-panel-header.js +1 -1
  449. package/development/expansion-panel/expansion-panel.js +1 -1
  450. package/development/expansion-panel-content.component-XIsKm8JD.js +43 -0
  451. package/development/expansion-panel-header.component-Bw4uROTe.js +85 -0
  452. package/development/expansion-panel.component-PDUmZe7w.js +322 -0
  453. package/development/expansion-panel.js +3 -3
  454. package/development/expansion-panel.pure.js +3 -3
  455. package/development/file-selector/common/file-selector-common.d.ts +3 -1
  456. package/development/file-selector/common/file-selector-common.d.ts.map +1 -1
  457. package/development/file-selector/common/file-selector-common.js +2 -2
  458. package/development/file-selector/common.js +2 -2
  459. package/development/file-selector/file-selector/file-selector.component.d.ts +1 -1
  460. package/development/file-selector/file-selector/file-selector.component.d.ts.map +1 -1
  461. package/development/file-selector/file-selector/file-selector.component.js +5 -5
  462. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts +1 -1
  463. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +1 -1
  464. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
  465. package/development/file-selector/file-selector-dropzone.js +1 -1
  466. package/development/file-selector-common-C82QR3zb.js +418 -0
  467. package/development/file-selector-dropzone.component-B-cBO4bf.js +112 -0
  468. package/development/file-selector.js +3 -3
  469. package/development/file-selector.pure.js +3 -3
  470. package/development/flip-card/flip-card/flip-card.component.d.ts.map +1 -1
  471. package/development/flip-card/flip-card/flip-card.component.js +1 -1
  472. package/development/flip-card/flip-card-details/flip-card-details.component.d.ts.map +1 -1
  473. package/development/flip-card/flip-card-details/flip-card-details.component.js +1 -1
  474. package/development/flip-card/flip-card-details.js +1 -1
  475. package/development/flip-card/flip-card-summary/flip-card-summary.component.d.ts.map +1 -1
  476. package/development/flip-card/flip-card-summary/flip-card-summary.component.js +1 -1
  477. package/development/flip-card/flip-card-summary.js +1 -1
  478. package/development/flip-card/flip-card.js +1 -1
  479. package/development/flip-card-details.component-iMm7NrgQ.js +57 -0
  480. package/development/flip-card-summary.component-HQ_VAn2j.js +84 -0
  481. package/development/flip-card.component-CJanLtkJ.js +190 -0
  482. package/development/flip-card.js +3 -3
  483. package/development/flip-card.pure.js +3 -3
  484. package/development/footer/footer.component.d.ts.map +1 -1
  485. package/development/footer/footer.component.js +1 -1
  486. package/development/footer.component-BblB5218.js +172 -0
  487. package/development/footer.js +1 -1
  488. package/development/footer.pure.js +1 -1
  489. package/development/form-field/error/error.component.d.ts.map +1 -1
  490. package/development/form-field/error/error.component.js +1 -1
  491. package/development/form-field/error.js +1 -1
  492. package/development/form-field/form-field/form-field.component.d.ts +13 -3
  493. package/development/form-field/form-field/form-field.component.d.ts.map +1 -1
  494. package/development/form-field/form-field/form-field.component.js +1 -1
  495. package/development/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
  496. package/development/form-field/form-field-clear/form-field-clear.component.js +2 -2
  497. package/development/form-field/form-field-text-counter/form-field-text-counter.component.d.ts +27 -0
  498. package/development/form-field/form-field-text-counter/form-field-text-counter.component.d.ts.map +1 -0
  499. package/development/form-field/form-field-text-counter/form-field-text-counter.component.js +113 -0
  500. package/development/form-field/form-field.js +1 -1
  501. package/development/form-field/hint/hint.component.d.ts +23 -0
  502. package/development/form-field/hint/hint.component.d.ts.map +1 -0
  503. package/development/form-field/hint/hint.component.js +2 -0
  504. package/development/form-field.component-BEXX0OcL.js +702 -0
  505. package/development/form-field.d.ts.map +1 -1
  506. package/development/form-field.js +9 -5
  507. package/development/form-field.pure.d.ts +3 -1
  508. package/development/form-field.pure.d.ts.map +1 -1
  509. package/development/form-field.pure.js +5 -3
  510. package/development/header/common/header-action-common.js +1 -1
  511. package/development/header/common.js +1 -1
  512. package/development/header/header/header.component.d.ts +7 -0
  513. package/development/header/header/header.component.d.ts.map +1 -1
  514. package/development/header/header/header.component.js +1 -1
  515. package/development/header/header-button/header-button.component.d.ts +1 -1
  516. package/development/header/header-environment/header-environment.component.d.ts.map +1 -1
  517. package/development/header/header-environment/header-environment.component.js +1 -1
  518. package/development/header/header-environment.js +1 -1
  519. package/development/header/header-link/header-link.component.d.ts +1 -1
  520. package/development/header/header.js +1 -1
  521. package/development/header-action-common-MTYV0dqA.js +80 -0
  522. package/development/header-environment.component-DHqoX_lg.js +53 -0
  523. package/development/header.component-Cg0ZcA1s.js +340 -0
  524. package/development/header.js +3 -3
  525. package/development/header.pure.js +3 -3
  526. package/development/hint.component-BsIzdUOV.js +38 -0
  527. package/development/icon/icon-base.d.ts.map +1 -1
  528. package/development/icon/icon-base.js +1 -1
  529. package/development/icon/icon-name-mixin.js +1 -2
  530. package/development/icon/icon-request.d.ts.map +1 -1
  531. package/development/icon/icon-request.js +3 -2
  532. package/development/icon/icon.component.js +1 -1
  533. package/development/icon-base-DHN9pz2I.js +165 -0
  534. package/development/icon-sidebar/icon-sidebar/icon-sidebar.component.d.ts.map +1 -1
  535. package/development/icon-sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
  536. package/development/icon-sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +1 -1
  537. package/development/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.d.ts.map +1 -1
  538. package/development/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.js +1 -1
  539. package/development/icon-sidebar/icon-sidebar-container.js +1 -1
  540. package/development/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.d.ts.map +1 -1
  541. package/development/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
  542. package/development/icon-sidebar/icon-sidebar-content.js +1 -1
  543. package/development/icon-sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts +1 -1
  544. package/development/icon-sidebar/icon-sidebar.js +1 -1
  545. package/development/icon-sidebar-container.component-BH_R88Rf.js +39 -0
  546. package/development/icon-sidebar-content.component-yoF6FjkW.js +31 -0
  547. package/development/icon-sidebar.component-BGEkfXVs.js +81 -0
  548. package/development/icon-sidebar.js +3 -3
  549. package/development/icon-sidebar.pure.js +3 -3
  550. package/development/icon.js +1 -1
  551. package/development/icon.pure.js +1 -1
  552. package/development/image/image.component.d.ts.map +1 -1
  553. package/development/image/image.component.js +1 -1
  554. package/development/image.component-BD0jc-u-.js +774 -0
  555. package/development/image.js +1 -1
  556. package/development/image.pure.js +1 -1
  557. package/development/inline-link-common-CgTIwFAI.js +18 -0
  558. package/development/journey-header/journey-header.component.d.ts +1 -0
  559. package/development/journey-header/journey-header.component.d.ts.map +1 -1
  560. package/development/journey-header/journey-header.component.js +1 -1
  561. package/development/journey-header.component-BwVODlXk.js +189 -0
  562. package/development/journey-header.js +1 -1
  563. package/development/journey-header.pure.js +1 -1
  564. package/development/lead-container/lead-container.component.d.ts.map +1 -1
  565. package/development/lead-container/lead-container.component.js +1 -1
  566. package/development/lead-container.component-CGVdBWJr.js +40 -0
  567. package/development/lead-container.js +1 -1
  568. package/development/lead-container.pure.js +1 -1
  569. package/development/link/block-link/block-link.component.d.ts +1 -1
  570. package/development/link/block-link/block-link.component.js +2 -2
  571. package/development/link/block-link-button/block-link-button.component.d.ts +1 -1
  572. package/development/link/block-link-button/block-link-button.component.js +2 -2
  573. package/development/link/block-link-button.js +3 -1
  574. package/development/link/block-link-static/block-link-static.component.d.ts +1 -1
  575. package/development/link/block-link-static/block-link-static.component.js +2 -2
  576. package/development/link/block-link-static.js +3 -1
  577. package/development/link/block-link.js +3 -1
  578. package/development/link/common/block-link-common.d.ts +1 -1
  579. package/development/link/common/block-link-common.d.ts.map +1 -1
  580. package/development/link/common/block-link-common.js +1 -2
  581. package/development/link/common/inline-link-common.d.ts +1 -1
  582. package/development/link/common/inline-link-common.d.ts.map +1 -1
  583. package/development/link/common/inline-link-common.js +1 -2
  584. package/development/link/common/link-common.d.ts +5 -1
  585. package/development/link/common/link-common.d.ts.map +1 -1
  586. package/development/link/common/link-common.js +1 -1
  587. package/development/link/common.js +9 -3
  588. package/development/link/link/link.component.d.ts +1 -1
  589. package/development/link/link/link.component.js +2 -2
  590. package/development/link/link-button/link-button.component.d.ts +1 -1
  591. package/development/link/link-button/link-button.component.js +2 -2
  592. package/development/link/link-button.js +3 -1
  593. package/development/link/link-static/link-static.component.d.ts +1 -1
  594. package/development/link/link-static/link-static.component.js +2 -2
  595. package/development/link/link-static.js +3 -1
  596. package/development/link/link.js +3 -1
  597. package/development/link-common-DJ2FfG_Q.js +72 -0
  598. package/development/link-list/common/link-list-base.d.ts +2 -0
  599. package/development/link-list/common/link-list-base.d.ts.map +1 -1
  600. package/development/link-list/common/link-list-base.js +2 -2
  601. package/development/link-list/common.js +2 -2
  602. package/development/link-list/link-list-anchor.js +2 -3
  603. package/development/link-list/link-list.component.d.ts.map +1 -1
  604. package/development/link-list/link-list.component.js +1 -2
  605. package/development/link-list/link-list.js +2 -3
  606. package/development/link-list-anchor/link-list-anchor.component.d.ts.map +1 -1
  607. package/development/link-list-anchor/link-list-anchor.component.js +1 -1
  608. package/development/link-list-anchor.component-Du7kfDZ-.js +29 -0
  609. package/development/link-list-anchor.js +1 -1
  610. package/development/link-list-anchor.pure.js +1 -1
  611. package/development/{link-list-base-BchLGP8G.js → link-list-base-CKMNz30d.js} +4 -20
  612. package/development/link-list.component-DQMg8MdQ.js +102 -0
  613. package/development/link-list.js +4 -4
  614. package/development/link-list.pure.js +3 -3
  615. package/development/link.js +3 -3
  616. package/development/link.pure.d.ts +3 -1
  617. package/development/link.pure.d.ts.map +1 -1
  618. package/development/link.pure.js +3 -4
  619. package/development/loading-indicator/loading-indicator.component.d.ts.map +1 -1
  620. package/development/loading-indicator/loading-indicator.component.js +1 -1
  621. package/development/loading-indicator-circle/loading-indicator-circle.component.d.ts.map +1 -1
  622. package/development/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
  623. package/development/loading-indicator-circle.component-np96Tu5S.js +78 -0
  624. package/development/loading-indicator-circle.js +1 -1
  625. package/development/loading-indicator-circle.pure.js +1 -1
  626. package/development/loading-indicator.component-CgHYNMxB.js +114 -0
  627. package/development/loading-indicator.js +1 -1
  628. package/development/loading-indicator.pure.js +1 -1
  629. package/development/logo/logo.component.d.ts.map +1 -1
  630. package/development/logo/logo.component.js +1 -1
  631. package/development/logo.component-I0yP2SKr.js +117 -0
  632. package/development/logo.js +1 -1
  633. package/development/logo.pure.js +1 -1
  634. package/development/map-container/map-container.component.d.ts.map +1 -1
  635. package/development/map-container/map-container.component.js +1 -1
  636. package/development/map-container.component-D9NWw-wA.js +177 -0
  637. package/development/map-container.js +1 -1
  638. package/development/map-container.pure.js +1 -1
  639. package/development/menu/common/menu-action-common.d.ts.map +1 -1
  640. package/development/menu/common/menu-action-common.js +1 -1
  641. package/development/menu/common.js +1 -1
  642. package/development/menu/menu/menu.component.d.ts.map +1 -1
  643. package/development/menu/menu/menu.component.js +1 -1
  644. package/development/menu/menu.js +1 -1
  645. package/development/menu-action-common-CBZCra6n.js +33 -0
  646. package/development/menu.component-Lh3JbVow.js +374 -0
  647. package/development/menu.js +2 -2
  648. package/development/menu.pure.js +2 -2
  649. package/development/message/message.component.d.ts.map +1 -1
  650. package/development/message/message.component.js +1 -1
  651. package/development/message.component-CeJhYXSC.js +44 -0
  652. package/development/message.js +1 -1
  653. package/development/message.pure.js +1 -1
  654. package/development/mini-button-group.component-B3CA9KG0.js +120 -0
  655. package/development/mini-button-link.component-I3VpWeNU.js +42 -0
  656. package/development/mini-calendar/mini-calendar/mini-calendar.component.d.ts.map +1 -1
  657. package/development/mini-calendar/mini-calendar/mini-calendar.component.js +1 -1
  658. package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.d.ts.map +1 -1
  659. package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +1 -1
  660. package/development/mini-calendar/mini-calendar-day.js +1 -1
  661. package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts.map +1 -1
  662. package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +1 -1
  663. package/development/mini-calendar/mini-calendar-month.js +1 -1
  664. package/development/mini-calendar/mini-calendar.js +1 -1
  665. package/development/mini-calendar-day.component-BUNVO4ZU.js +138 -0
  666. package/development/mini-calendar-month.component-DZXvAhc3.js +104 -0
  667. package/development/mini-calendar.component-BufzKw74.js +188 -0
  668. package/development/mini-calendar.js +3 -3
  669. package/development/mini-calendar.pure.js +3 -3
  670. package/development/navigation/common/navigation-action-common.js +1 -1
  671. package/development/navigation/common.js +1 -1
  672. package/development/navigation/navigation/navigation.component.d.ts.map +1 -1
  673. package/development/navigation/navigation/navigation.component.js +1 -1
  674. package/development/navigation/navigation-button/navigation-button.component.d.ts +1 -1
  675. package/development/navigation/navigation-link/navigation-link.component.d.ts +1 -1
  676. package/development/navigation/navigation-list/navigation-list.component.d.ts.map +1 -1
  677. package/development/navigation/navigation-list/navigation-list.component.js +1 -1
  678. package/development/navigation/navigation-list.js +1 -1
  679. package/development/navigation/navigation-marker/navigation-marker.component.d.ts.map +1 -1
  680. package/development/navigation/navigation-marker/navigation-marker.component.js +1 -1
  681. package/development/navigation/navigation-marker.js +1 -1
  682. package/development/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
  683. package/development/navigation/navigation-section/navigation-section.component.js +1 -1
  684. package/development/navigation/navigation-section.js +1 -1
  685. package/development/navigation/navigation.js +1 -1
  686. package/development/navigation-action-common-DpBp7-eZ.js +91 -0
  687. package/development/navigation-list.component-DqITJqFx.js +94 -0
  688. package/development/navigation-marker.component-BpZdT4xz.js +125 -0
  689. package/development/navigation-section.component-CtZtuacK.js +356 -0
  690. package/development/navigation.component-CTNQ1dix.js +324 -0
  691. package/development/navigation.js +5 -5
  692. package/development/navigation.pure.js +5 -5
  693. package/development/notification/notification.component.d.ts.map +1 -1
  694. package/development/notification/notification.component.js +1 -1
  695. package/development/notification.component-Co9QChXc.js +274 -0
  696. package/development/notification.js +1 -1
  697. package/development/notification.pure.js +1 -1
  698. package/development/optgroup-base-element-BaG2W_AP.js +141 -0
  699. package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  700. package/development/option/optgroup/optgroup-base-element.js +1 -1
  701. package/development/option/optgroup/optgroup.component.js +1 -1
  702. package/development/option/optgroup.js +1 -1
  703. package/development/option/option/option.component.d.ts +1 -1
  704. package/development/option/option/option.component.d.ts.map +1 -1
  705. package/development/option/option/option.component.js +1 -1
  706. package/development/option/option-hint/option-hint.component.d.ts.map +1 -1
  707. package/development/option/option-hint/option-hint.component.js +1 -1
  708. package/development/option/option-hint.js +1 -1
  709. package/development/option/option.js +1 -1
  710. package/development/option-hint.component-BH8dP1fM.js +33 -0
  711. package/development/option.component-CdL7fdzZ.js +130 -0
  712. package/development/option.js +3 -3
  713. package/development/option.pure.js +3 -3
  714. package/development/overlay/overlay-base-element.js +2 -2
  715. package/development/overlay/overlay.component.d.ts.map +1 -1
  716. package/development/overlay/overlay.component.js +1 -1
  717. package/development/overlay.component-M0JuSq4C.js +216 -0
  718. package/development/overlay.js +1 -1
  719. package/development/overlay.pure.js +1 -1
  720. package/development/paginator/common/paginator-common.d.ts.map +1 -1
  721. package/development/paginator/common/paginator-common.js +4 -3
  722. package/development/paginator/compact-paginator/compact-paginator.component.d.ts +1 -1
  723. package/development/paginator/compact-paginator/compact-paginator.component.d.ts.map +1 -1
  724. package/development/paginator/compact-paginator/compact-paginator.component.js +1 -1
  725. package/development/paginator/compact-paginator.js +1 -1
  726. package/development/paginator/paginator/paginator.component.d.ts +1 -1
  727. package/development/paginator/paginator/paginator.component.d.ts.map +1 -1
  728. package/development/paginator/paginator/paginator.component.js +1 -1
  729. package/development/paginator/paginator.js +1 -1
  730. package/development/paginator.component-DAdS2mMm.js +259 -0
  731. package/development/paginator.js +2 -2
  732. package/development/paginator.pure.js +2 -2
  733. package/development/panel-mixin-Dj_rsgL9.js +150 -0
  734. package/development/popover/popover.component.d.ts.map +1 -1
  735. package/development/popover/popover.component.js +1 -1
  736. package/development/popover.component-BCMdJBUR.js +537 -0
  737. package/development/popover.js +1 -1
  738. package/development/popover.pure.js +1 -1
  739. package/development/radio-button/common/radio-button-common.d.ts +2 -0
  740. package/development/radio-button/common/radio-button-common.d.ts.map +1 -1
  741. package/development/radio-button/common/radio-button-common.js +2 -2
  742. package/development/radio-button/common.js +2 -2
  743. package/development/radio-button/radio-button.component.d.ts +1 -1
  744. package/development/radio-button/radio-button.component.d.ts.map +1 -1
  745. package/development/radio-button/radio-button.component.js +1 -2
  746. package/development/radio-button/radio-button.js +2 -3
  747. package/development/radio-button-common-C3-xuY78.js +126 -0
  748. package/development/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  749. package/development/radio-button-group/radio-button-group.component.js +2 -1
  750. package/development/radio-button.component-BrQF2FfA.js +124 -0
  751. package/development/radio-button.js +3 -3
  752. package/development/radio-button.pure.js +3 -3
  753. package/development/{sbb-tokens-Lrm4nvNH.js → sbb-tokens-Cr3wVegh.js} +1 -1
  754. package/development/screen-reader-only/screen-reader-only.component.d.ts.map +1 -1
  755. package/development/screen-reader-only/screen-reader-only.component.js +1 -1
  756. package/development/screen-reader-only.component-B77UuVCI.js +26 -0
  757. package/development/screen-reader-only.js +1 -1
  758. package/development/screen-reader-only.pure.js +1 -1
  759. package/development/select/select.component.d.ts +2 -0
  760. package/development/select/select.component.d.ts.map +1 -1
  761. package/development/select/select.component.js +1 -1
  762. package/development/select.component-CGNEhqzl.js +812 -0
  763. package/development/select.js +1 -1
  764. package/development/select.pure.js +1 -1
  765. package/development/selection-action-panel/selection-action-panel.component.d.ts.map +1 -1
  766. package/development/selection-action-panel/selection-action-panel.component.js +1 -1
  767. package/development/selection-action-panel.component-D6I5wdEL.js +49 -0
  768. package/development/selection-action-panel.js +1 -1
  769. package/development/selection-action-panel.pure.js +1 -1
  770. package/development/selection-expansion-panel/selection-expansion-panel.component.d.ts.map +1 -1
  771. package/development/selection-expansion-panel/selection-expansion-panel.component.js +1 -1
  772. package/development/selection-expansion-panel.component-eO7b_EQF.js +189 -0
  773. package/development/selection-expansion-panel.js +1 -1
  774. package/development/selection-expansion-panel.pure.js +1 -1
  775. package/development/selection-group-base-element-DvDpwhPl.js +154 -0
  776. package/development/sidebar/common/styles.d.ts +3 -0
  777. package/development/sidebar/common/styles.d.ts.map +1 -1
  778. package/development/sidebar/common/styles.js +2 -2
  779. package/development/sidebar/common.js +2 -2
  780. package/development/sidebar/sidebar/sidebar.component.d.ts.map +1 -1
  781. package/development/sidebar/sidebar/sidebar.component.js +1 -1
  782. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +1 -1
  783. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
  784. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.js +1 -1
  785. package/development/sidebar/sidebar-close-button.js +1 -1
  786. package/development/sidebar/sidebar-container/sidebar-container.component.d.ts.map +1 -1
  787. package/development/sidebar/sidebar-container/sidebar-container.component.js +1 -1
  788. package/development/sidebar/sidebar-container.js +1 -1
  789. package/development/sidebar/sidebar-content/sidebar-content.component.d.ts.map +1 -1
  790. package/development/sidebar/sidebar-content/sidebar-content.component.js +1 -1
  791. package/development/sidebar/sidebar-content.js +1 -1
  792. package/development/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
  793. package/development/sidebar/sidebar-title/sidebar-title.component.js +1 -1
  794. package/development/sidebar/sidebar-title.js +1 -1
  795. package/development/sidebar/sidebar.js +1 -1
  796. package/development/sidebar-close-button.component-CYWv39Mu.js +46 -0
  797. package/development/sidebar-container.component-BDSoDAym.js +106 -0
  798. package/development/sidebar-content.component-JcVKpKbK.js +32 -0
  799. package/development/sidebar-title.component-BA_j-Igh.js +72 -0
  800. package/development/sidebar.component-DvRTyNry.js +348 -0
  801. package/development/sidebar.js +5 -5
  802. package/development/sidebar.pure.js +5 -5
  803. package/development/signet/signet.component.d.ts.map +1 -1
  804. package/development/signet/signet.component.js +1 -1
  805. package/development/signet.component-3D2ZsajP.js +122 -0
  806. package/development/signet.js +1 -1
  807. package/development/signet.pure.js +1 -1
  808. package/development/skiplink-list/skiplink-list.component.d.ts.map +1 -1
  809. package/development/skiplink-list/skiplink-list.component.js +1 -1
  810. package/development/skiplink-list.component-EDPOitEB.js +134 -0
  811. package/development/skiplink-list.js +1 -1
  812. package/development/skiplink-list.pure.js +1 -1
  813. package/development/slider/slider.component.d.ts.map +1 -1
  814. package/development/slider/slider.component.js +1 -1
  815. package/development/slider.component-BjfLnUvP.js +346 -0
  816. package/development/slider.js +1 -1
  817. package/development/slider.pure.js +1 -1
  818. package/development/status/status.component.d.ts +1 -1
  819. package/development/status/status.component.d.ts.map +1 -1
  820. package/development/status/status.component.js +1 -1
  821. package/development/status.component-CHC2pBa-.js +111 -0
  822. package/development/status.js +1 -1
  823. package/development/status.pure.js +1 -1
  824. package/development/step-label.component-CJFPHIZa.js +131 -0
  825. package/development/step.component-B-n26urC.js +153 -0
  826. package/development/stepper/step/step.component.d.ts.map +1 -1
  827. package/development/stepper/step/step.component.js +1 -1
  828. package/development/stepper/step-label/step-label.component.d.ts.map +1 -1
  829. package/development/stepper/step-label/step-label.component.js +1 -1
  830. package/development/stepper/step-label.js +1 -1
  831. package/development/stepper/step.js +1 -1
  832. package/development/stepper/stepper/stepper.component.d.ts.map +1 -1
  833. package/development/stepper/stepper/stepper.component.js +1 -1
  834. package/development/stepper/stepper.js +1 -1
  835. package/development/stepper.component-CxOBayI1.js +428 -0
  836. package/development/stepper.js +3 -3
  837. package/development/stepper.pure.js +3 -3
  838. package/development/sticky-bar.component-Dzrdsnxu.js +206 -0
  839. package/development/styles-D2RLaAYK.js +18 -0
  840. package/development/styles-D8-q-irv.js +9 -0
  841. package/development/styles-DCQBzC2C.js +14 -0
  842. package/development/tab-group.component-DRipdAyc.js +272 -0
  843. package/development/tab-label.component-14j2eh4Z.js +243 -0
  844. package/development/tab-nav-bar.component-CgYwCSVY.js +114 -0
  845. package/development/tab.component-DThKG7-a.js +70 -0
  846. package/development/table/table-wrapper/table-wrapper.component.d.ts.map +1 -1
  847. package/development/table/table-wrapper/table-wrapper.component.js +1 -1
  848. package/development/table/table-wrapper.js +1 -1
  849. package/development/table-wrapper.component-D1p7kqCB.js +121 -0
  850. package/development/table.js +1 -1
  851. package/development/table.pure.js +1 -1
  852. package/development/tabs/common/styles.d.ts +2 -0
  853. package/development/tabs/common/styles.d.ts.map +1 -1
  854. package/development/tabs/common/styles.js +2 -2
  855. package/development/tabs/common.js +2 -2
  856. package/development/tabs/tab/tab.component.d.ts.map +1 -1
  857. package/development/tabs/tab/tab.component.js +1 -1
  858. package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  859. package/development/tabs/tab-group/tab-group.component.js +1 -1
  860. package/development/tabs/tab-group.js +1 -1
  861. package/development/tabs/tab-label/tab-label.component.d.ts.map +1 -1
  862. package/development/tabs/tab-label/tab-label.component.js +1 -1
  863. package/development/tabs/tab-label.js +1 -1
  864. package/development/tabs/tab-nav-bar/tab-nav-bar.component.d.ts.map +1 -1
  865. package/development/tabs/tab-nav-bar/tab-nav-bar.component.js +1 -1
  866. package/development/tabs/tab-nav-bar.js +1 -1
  867. package/development/tabs/tab.js +1 -1
  868. package/development/tabs.js +6 -6
  869. package/development/tabs.pure.js +6 -6
  870. package/development/tag/tag/tag.component.d.ts.map +1 -1
  871. package/development/tag/tag/tag.component.js +1 -1
  872. package/development/tag/tag-group/tag-group.component.d.ts.map +1 -1
  873. package/development/tag/tag-group/tag-group.component.js +1 -1
  874. package/development/tag/tag-group.js +1 -1
  875. package/development/tag/tag.js +1 -1
  876. package/development/tag-group.component-Cw46bt0E.js +200 -0
  877. package/development/tag.component-CnNPL6aI.js +245 -0
  878. package/development/tag.js +2 -2
  879. package/development/tag.pure.js +2 -2
  880. package/development/teaser/teaser.component.d.ts.map +1 -1
  881. package/development/teaser/teaser.component.js +1 -1
  882. package/development/teaser-hero/teaser-hero.component.d.ts.map +1 -1
  883. package/development/teaser-hero/teaser-hero.component.js +1 -1
  884. package/development/teaser-hero.component-DNlc8Tbl.js +101 -0
  885. package/development/teaser-hero.js +1 -1
  886. package/development/teaser-hero.pure.js +1 -1
  887. package/development/teaser-product/common/teaser-product-common.d.ts +2 -0
  888. package/development/teaser-product/common/teaser-product-common.d.ts.map +1 -1
  889. package/development/teaser-product/common/teaser-product-common.js +2 -2
  890. package/development/teaser-product/common.js +2 -2
  891. package/development/teaser-product/teaser-product/teaser-product.component.d.ts +1 -1
  892. package/development/teaser-product/teaser-product/teaser-product.component.d.ts.map +1 -1
  893. package/development/teaser-product/teaser-product/teaser-product.component.js +1 -1
  894. package/development/teaser-product/teaser-product-static/teaser-product-static.component.d.ts +1 -1
  895. package/development/teaser-product/teaser-product.js +1 -1
  896. package/development/teaser-product-common-DYX370pm.js +78 -0
  897. package/development/teaser-product.component-CSArA8bH.js +43 -0
  898. package/development/teaser-product.js +3 -3
  899. package/development/teaser-product.pure.js +3 -3
  900. package/development/teaser.component-Cky6kKU0.js +118 -0
  901. package/development/teaser.js +1 -1
  902. package/development/teaser.pure.js +1 -1
  903. package/development/time-input/time-input.component.d.ts.map +1 -1
  904. package/development/time-input/time-input.component.js +1 -1
  905. package/development/time-input.component-BtdSR8kB.js +191 -0
  906. package/development/time-input.js +1 -1
  907. package/development/time-input.pure.js +1 -1
  908. package/development/timetable-form/timetable-form/timetable-form.component.d.ts.map +1 -1
  909. package/development/timetable-form/timetable-form/timetable-form.component.js +1 -1
  910. package/development/timetable-form/timetable-form-details/timetable-form-details.component.d.ts.map +1 -1
  911. package/development/timetable-form/timetable-form-details/timetable-form-details.component.js +1 -1
  912. package/development/timetable-form/timetable-form-details.js +1 -1
  913. package/development/timetable-form/timetable-form-field/timetable-form-field.component.d.ts.map +1 -1
  914. package/development/timetable-form/timetable-form-field/timetable-form-field.component.js +1 -1
  915. package/development/timetable-form/timetable-form-field.js +1 -1
  916. package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.d.ts +1 -1
  917. package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.d.ts.map +1 -1
  918. package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.js +1 -1
  919. package/development/timetable-form/timetable-form-swap-button.js +1 -1
  920. package/development/timetable-form/timetable-form.js +1 -1
  921. package/development/timetable-form-details.component-C8awcdP5.js +26 -0
  922. package/development/timetable-form-field.component-BI24VjkC.js +44 -0
  923. package/development/timetable-form-swap-button.component-BUKUjrpl.js +61 -0
  924. package/development/timetable-form.component-CUG86CSN.js +27 -0
  925. package/development/timetable-form.js +4 -4
  926. package/development/timetable-form.pure.js +4 -4
  927. package/development/timetable-occupancy/timetable-occupancy.component.d.ts.map +1 -1
  928. package/development/timetable-occupancy/timetable-occupancy.component.js +1 -1
  929. package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.d.ts.map +1 -1
  930. package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.js +1 -1
  931. package/development/timetable-occupancy-icon.component-lI7__-G5.js +97 -0
  932. package/development/timetable-occupancy-icon.js +1 -1
  933. package/development/timetable-occupancy-icon.pure.js +1 -1
  934. package/development/timetable-occupancy.component-D_PXXvI9.js +124 -0
  935. package/development/timetable-occupancy.js +1 -1
  936. package/development/timetable-occupancy.pure.js +1 -1
  937. package/development/title/title-base.d.ts.map +1 -1
  938. package/development/title/title-base.js +1 -1
  939. package/development/title/title.component.d.ts.map +1 -1
  940. package/development/title/title.component.js +1 -2
  941. package/development/title-base-CBE_2Hkb.js +102 -0
  942. package/development/title.component-Dk23JVct.js +71 -0
  943. package/development/title.js +2 -2
  944. package/development/title.pure.js +2 -2
  945. package/development/toast/toast.component.d.ts.map +1 -1
  946. package/development/toast/toast.component.js +1 -1
  947. package/development/toast.component-BnbpuU9L.js +274 -0
  948. package/development/toast.js +1 -1
  949. package/development/toast.pure.js +1 -1
  950. package/development/toggle/toggle/toggle.component.d.ts.map +1 -1
  951. package/development/toggle/toggle/toggle.component.js +1 -1
  952. package/development/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
  953. package/development/toggle/toggle-option/toggle-option.component.js +1 -1
  954. package/development/toggle/toggle-option.js +1 -1
  955. package/development/toggle/toggle.js +1 -1
  956. package/development/toggle-check/toggle-check.component.d.ts.map +1 -1
  957. package/development/toggle-check/toggle-check.component.js +1 -1
  958. package/development/toggle-check.component-BG4w_sE8.js +159 -0
  959. package/development/toggle-check.js +1 -1
  960. package/development/toggle-check.pure.js +1 -1
  961. package/development/toggle-option.component-D-F7Fh7i.js +168 -0
  962. package/development/toggle.component-BFYLRN8o.js +254 -0
  963. package/development/toggle.js +2 -2
  964. package/development/toggle.pure.js +2 -2
  965. package/development/tooltip/tooltip.component.d.ts.map +1 -1
  966. package/development/tooltip/tooltip.component.js +1 -1
  967. package/development/tooltip.component-DzSd9VjW.js +378 -0
  968. package/development/tooltip.js +1 -1
  969. package/development/tooltip.pure.js +1 -1
  970. package/development/train/train/train.component.d.ts.map +1 -1
  971. package/development/train/train/train.component.js +1 -1
  972. package/development/train/train-blocked-passage/train-blocked-passage.component.d.ts.map +1 -1
  973. package/development/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
  974. package/development/train/train-blocked-passage.js +1 -1
  975. package/development/train/train-formation/train-formation.component.d.ts.map +1 -1
  976. package/development/train/train-formation/train-formation.component.js +1 -1
  977. package/development/train/train-formation.js +1 -1
  978. package/development/train/train-wagon/train-wagon.component.d.ts.map +1 -1
  979. package/development/train/train-wagon/train-wagon.component.js +1 -1
  980. package/development/train/train-wagon.js +1 -1
  981. package/development/train/train.js +1 -1
  982. package/development/train-blocked-passage.component-BrUJK0gf.js +31 -0
  983. package/development/train-formation.component-vt-nYQXA.js +153 -0
  984. package/development/train-wagon.component-BzA8-S_6.js +336 -0
  985. package/development/train.component-BgpmEDx-.js +231 -0
  986. package/development/train.js +4 -4
  987. package/development/train.pure.js +4 -4
  988. package/development/visual-checkbox/visual-checkbox.component.d.ts.map +1 -1
  989. package/development/visual-checkbox/visual-checkbox.component.js +1 -1
  990. package/development/visual-checkbox.component-rdeoQN40.js +148 -0
  991. package/development/visual-checkbox.js +1 -1
  992. package/development/visual-checkbox.pure.js +1 -1
  993. package/dialog/dialog/dialog.component.js +1 -1
  994. package/dialog/dialog-actions/dialog-actions.component.js +1 -1
  995. package/dialog/dialog-actions.js +1 -1
  996. package/dialog/dialog-close-button/dialog-close-button.component.js +1 -1
  997. package/dialog/dialog-close-button.js +1 -1
  998. package/dialog/dialog-content/dialog-content.component.js +1 -1
  999. package/dialog/dialog-content.js +1 -1
  1000. package/dialog/dialog-title/dialog-title.component.js +1 -1
  1001. package/dialog/dialog-title.js +1 -1
  1002. package/dialog/dialog.js +1 -1
  1003. package/dialog-actions.component-Cp2cISc5.js +17 -0
  1004. package/dialog-close-button.component-CQfIeflt.js +31 -0
  1005. package/dialog-content.component-BTAZtlGb.js +19 -0
  1006. package/dialog-title.component-PVHbhrCM.js +17 -0
  1007. package/{dialog.component-CIPresmM.js → dialog.component-B3oQbMki.js} +12 -12
  1008. package/dialog.js +5 -5
  1009. package/dialog.pure.js +5 -5
  1010. package/divider/divider.component.js +1 -1
  1011. package/{divider.component-B99DkxCv.js → divider.component-D4C31FWl.js} +12 -12
  1012. package/divider.js +1 -1
  1013. package/divider.pure.js +1 -1
  1014. package/error.component-B_D8WUP5.js +44 -0
  1015. package/expansion-panel/expansion-panel/expansion-panel.component.js +1 -1
  1016. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
  1017. package/expansion-panel/expansion-panel-content.js +1 -1
  1018. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +1 -1
  1019. package/expansion-panel/expansion-panel-header.js +1 -1
  1020. package/expansion-panel/expansion-panel.js +1 -1
  1021. package/expansion-panel-content.component--OJYAiBh.js +29 -0
  1022. package/expansion-panel-header.component-B_dQ3ZWT.js +56 -0
  1023. package/expansion-panel.component-BJCjwcoj.js +226 -0
  1024. package/expansion-panel.js +3 -3
  1025. package/expansion-panel.pure.js +3 -3
  1026. package/file-selector/common/file-selector-common.js +1 -1
  1027. package/file-selector/common.js +1 -1
  1028. package/file-selector/file-selector/file-selector.component.js +8 -8
  1029. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
  1030. package/file-selector/file-selector-dropzone.js +1 -1
  1031. package/{file-selector-common-C--h0Yj2.js → file-selector-common-DN4vHMpP.js} +26 -22
  1032. package/file-selector-dropzone.component-CBKsZsC2.js +98 -0
  1033. package/file-selector.js +2 -2
  1034. package/file-selector.pure.js +2 -2
  1035. package/flip-card/flip-card/flip-card.component.js +1 -1
  1036. package/flip-card/flip-card-details/flip-card-details.component.js +1 -1
  1037. package/flip-card/flip-card-details.js +1 -1
  1038. package/flip-card/flip-card-summary/flip-card-summary.component.js +1 -1
  1039. package/flip-card/flip-card-summary.js +1 -1
  1040. package/flip-card/flip-card.js +1 -1
  1041. package/flip-card-details.component-CUaLeEKc.js +45 -0
  1042. package/flip-card-summary.component-T2UMG_YI.js +65 -0
  1043. package/flip-card.component-D7HNqWXz.js +142 -0
  1044. package/flip-card.js +3 -3
  1045. package/flip-card.pure.js +3 -3
  1046. package/footer/footer.component.js +1 -1
  1047. package/footer.component-BM91Utiz.js +129 -0
  1048. package/footer.js +1 -1
  1049. package/footer.pure.js +1 -1
  1050. package/form-field/error/error.component.js +1 -1
  1051. package/form-field/error.js +1 -1
  1052. package/form-field/form-field/form-field.component.js +1 -1
  1053. package/form-field/form-field-clear/form-field-clear.component.js +6 -6
  1054. package/form-field/form-field-text-counter/form-field-text-counter.component.js +82 -0
  1055. package/form-field/form-field.js +1 -1
  1056. package/form-field/hint/hint.component.js +2 -0
  1057. package/form-field.component-D50q1wC0.js +478 -0
  1058. package/form-field.js +7 -5
  1059. package/form-field.pure.js +6 -4
  1060. package/header/common/header-action-common.js +1 -1
  1061. package/header/common.js +1 -1
  1062. package/header/header/header.component.js +1 -1
  1063. package/header/header-environment/header-environment.component.js +1 -1
  1064. package/header/header-environment.js +1 -1
  1065. package/header/header.js +1 -1
  1066. package/header-action-common-DSx5QDWI.js +62 -0
  1067. package/header-environment.component-rUR1XhR5.js +36 -0
  1068. package/header.component-hZqs06Yh.js +232 -0
  1069. package/header.js +3 -3
  1070. package/header.pure.js +3 -3
  1071. package/hint.component-BVUUrSSu.js +24 -0
  1072. package/icon/icon-base.js +1 -1
  1073. package/icon/icon-name-mixin.js +0 -1
  1074. package/icon/icon-request.js +1 -3
  1075. package/icon/icon.component.js +1 -1
  1076. package/{icon-base-C2VxpriZ.js → icon-base-ChhGqAkg.js} +18 -18
  1077. package/icon-sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
  1078. package/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.js +1 -1
  1079. package/icon-sidebar/icon-sidebar-container.js +1 -1
  1080. package/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
  1081. package/icon-sidebar/icon-sidebar-content.js +1 -1
  1082. package/icon-sidebar/icon-sidebar.js +1 -1
  1083. package/{icon-sidebar-container.component-BGhKzy4e.js → icon-sidebar-container.component-BrBnPZP_.js} +5 -5
  1084. package/{icon-sidebar-content.component-Ck5kHeMx.js → icon-sidebar-content.component-DXoyBsGO.js} +5 -5
  1085. package/{icon-sidebar.component-D3vOnYrs.js → icon-sidebar.component-CSUM1GjR.js} +12 -12
  1086. package/icon-sidebar.js +3 -3
  1087. package/icon-sidebar.pure.js +3 -3
  1088. package/icon.js +1 -1
  1089. package/icon.pure.js +1 -1
  1090. package/image/image.component.js +1 -1
  1091. package/{image.component-BcOwT7-U.js → image.component-9ttsTuRh.js} +31 -31
  1092. package/image.js +1 -1
  1093. package/image.pure.js +1 -1
  1094. package/index.d.ts +3 -1
  1095. package/index.js +3 -1
  1096. package/inline-link-common-B5AHg8oa.js +13 -0
  1097. package/journey-header/journey-header.component.js +1 -1
  1098. package/{journey-header.component-CjXBxEor.js → journey-header.component-BBRryMN8.js} +15 -15
  1099. package/journey-header.js +1 -1
  1100. package/journey-header.pure.js +1 -1
  1101. package/lead-container/lead-container.component.js +1 -1
  1102. package/lead-container.component-D9Wotyyl.js +27 -0
  1103. package/lead-container.js +1 -1
  1104. package/lead-container.pure.js +1 -1
  1105. package/link/block-link/block-link.component.js +1 -1
  1106. package/link/block-link-button/block-link-button.component.js +1 -1
  1107. package/link/block-link-button.js +1 -2
  1108. package/link/block-link-static/block-link-static.component.js +1 -1
  1109. package/link/block-link-static.js +1 -2
  1110. package/link/block-link.js +1 -2
  1111. package/link/common/block-link-common.js +1 -2
  1112. package/link/common/inline-link-common.js +1 -2
  1113. package/link/common/link-common.js +1 -1
  1114. package/link/common.js +6 -3
  1115. package/link/link/link.component.js +1 -1
  1116. package/link/link-button/link-button.component.js +1 -1
  1117. package/link/link-button.js +1 -2
  1118. package/link/link-static/link-static.component.js +1 -1
  1119. package/link/link-static.js +1 -2
  1120. package/link/link.js +1 -2
  1121. package/link-common-C-LzCFHg.js +53 -0
  1122. package/link-list/common/link-list-base.js +1 -1
  1123. package/link-list/common.js +1 -1
  1124. package/link-list/link-list-anchor.js +1 -2
  1125. package/link-list/link-list.component.js +1 -2
  1126. package/link-list/link-list.js +1 -2
  1127. package/link-list-anchor/link-list-anchor.component.js +1 -1
  1128. package/link-list-anchor.component-B1hvFA17.js +18 -0
  1129. package/link-list-anchor.js +1 -1
  1130. package/link-list-anchor.pure.js +1 -1
  1131. package/{link-list-base-CrpC5D4u.js → link-list-base-COzF-Lbi.js} +9 -8
  1132. package/link-list.component-AiEJJGPT.js +78 -0
  1133. package/link-list.js +3 -3
  1134. package/link-list.pure.js +2 -2
  1135. package/link.js +3 -3
  1136. package/link.pure.js +3 -4
  1137. package/loading-indicator/loading-indicator.component.js +1 -1
  1138. package/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
  1139. package/loading-indicator-circle.component-BSVoTtX4.js +62 -0
  1140. package/loading-indicator-circle.js +1 -1
  1141. package/loading-indicator-circle.pure.js +1 -1
  1142. package/loading-indicator.component-B85wTVDM.js +92 -0
  1143. package/loading-indicator.js +1 -1
  1144. package/loading-indicator.pure.js +1 -1
  1145. package/logo/logo.component.js +1 -1
  1146. package/{logo.component-CdZe8lrB.js → logo.component-COL1QTWW.js} +15 -15
  1147. package/logo.js +1 -1
  1148. package/logo.pure.js +1 -1
  1149. package/map-container/map-container.component.js +1 -1
  1150. package/map-container.component-CEyz8sfi.js +132 -0
  1151. package/map-container.js +1 -1
  1152. package/map-container.pure.js +1 -1
  1153. package/menu/common/menu-action-common.js +1 -1
  1154. package/menu/common.js +1 -1
  1155. package/menu/menu/menu.component.js +1 -1
  1156. package/menu/menu.js +1 -1
  1157. package/menu-action-common-p5YGaq2r.js +28 -0
  1158. package/{menu.component-elxRPsQz.js → menu.component-DohFZw2N.js} +12 -12
  1159. package/menu.js +2 -2
  1160. package/menu.pure.js +2 -2
  1161. package/message/message.component.js +1 -1
  1162. package/{message.component-DDMr1IXM.js → message.component-BQjnZ5Z3.js} +5 -5
  1163. package/message.js +1 -1
  1164. package/message.pure.js +1 -1
  1165. package/mini-button-group.component-DmxOnls1.js +89 -0
  1166. package/mini-button-link.component-l5MIlgEB.js +30 -0
  1167. package/mini-calendar/mini-calendar/mini-calendar.component.js +1 -1
  1168. package/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +1 -1
  1169. package/mini-calendar/mini-calendar-day.js +1 -1
  1170. package/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +1 -1
  1171. package/mini-calendar/mini-calendar-month.js +1 -1
  1172. package/mini-calendar/mini-calendar.js +1 -1
  1173. package/mini-calendar-day.component-DOMxLDsW.js +106 -0
  1174. package/{mini-calendar-month.component-DTod_RRs.js → mini-calendar-month.component-BAN0k3N6.js} +11 -11
  1175. package/{mini-calendar.component-BCDHUUZG.js → mini-calendar.component-DJfOT7ir.js} +11 -11
  1176. package/mini-calendar.js +3 -3
  1177. package/mini-calendar.pure.js +3 -3
  1178. package/navigation/common/navigation-action-common.js +1 -1
  1179. package/navigation/common.js +1 -1
  1180. package/navigation/navigation/navigation.component.js +1 -1
  1181. package/navigation/navigation-list/navigation-list.component.js +1 -1
  1182. package/navigation/navigation-list.js +1 -1
  1183. package/navigation/navigation-marker/navigation-marker.component.js +1 -1
  1184. package/navigation/navigation-marker.js +1 -1
  1185. package/navigation/navigation-section/navigation-section.component.js +1 -1
  1186. package/navigation/navigation-section.js +1 -1
  1187. package/navigation/navigation.js +1 -1
  1188. package/navigation-action-common-2ix0xrBs.js +64 -0
  1189. package/{navigation-list.component-DnB7FrKG.js → navigation-list.component-BIl68kYy.js} +12 -12
  1190. package/navigation-marker.component-DKxK16IU.js +88 -0
  1191. package/navigation-section.component-CvjXVn5r.js +241 -0
  1192. package/navigation.component-D3xUqPZB.js +212 -0
  1193. package/navigation.js +5 -5
  1194. package/navigation.pure.js +5 -5
  1195. package/notification/notification.component.js +1 -1
  1196. package/notification.component-DjXJFh1G.js +201 -0
  1197. package/notification.js +1 -1
  1198. package/notification.pure.js +1 -1
  1199. package/off-brand-theme.css +267 -81
  1200. package/{optgroup-base-element-C8LeifgF.js → optgroup-base-element-B2WJv9gb.js} +16 -16
  1201. package/option/optgroup/optgroup-base-element.js +1 -1
  1202. package/option/optgroup/optgroup.component.js +1 -1
  1203. package/option/optgroup.js +1 -1
  1204. package/option/option/option.component.js +1 -1
  1205. package/option/option-hint/option-hint.component.js +1 -1
  1206. package/option/option-hint.js +1 -1
  1207. package/option/option.js +1 -1
  1208. package/option-hint.component-CZH1i3mN.js +23 -0
  1209. package/option.component-M-V_tdSC.js +98 -0
  1210. package/option.js +3 -3
  1211. package/option.pure.js +3 -3
  1212. package/overlay/overlay-base-element.js +1 -1
  1213. package/overlay/overlay.component.js +1 -1
  1214. package/overlay.component-CbvHE6Lw.js +164 -0
  1215. package/overlay.js +1 -1
  1216. package/overlay.pure.js +1 -1
  1217. package/package.json +11 -1
  1218. package/paginator/common/paginator-common.js +16 -17
  1219. package/paginator/compact-paginator/compact-paginator.component.js +1 -1
  1220. package/paginator/compact-paginator.js +1 -1
  1221. package/paginator/paginator/paginator.component.js +1 -1
  1222. package/paginator/paginator.js +1 -1
  1223. package/paginator.component-CZt7Epaf.js +206 -0
  1224. package/paginator.js +2 -2
  1225. package/paginator.pure.js +2 -2
  1226. package/panel-mixin-B6dEo538.js +112 -0
  1227. package/popover/popover.component.js +1 -1
  1228. package/{popover.component-CiOGSWOz.js → popover.component-DWNuW4wM.js} +55 -51
  1229. package/popover.js +1 -1
  1230. package/popover.pure.js +1 -1
  1231. package/radio-button/common/radio-button-common.js +1 -1
  1232. package/radio-button/common.js +1 -1
  1233. package/radio-button/radio-button.component.js +1 -2
  1234. package/radio-button/radio-button.js +1 -2
  1235. package/radio-button-common-DP4Izwwf.js +81 -0
  1236. package/radio-button-group/radio-button-group.component.js +1 -1
  1237. package/{radio-button.component-CVPy3eQi.js → radio-button.component-BiGeOI5L.js} +15 -15
  1238. package/radio-button.js +2 -2
  1239. package/radio-button.pure.js +2 -2
  1240. package/safety-theme.css +267 -81
  1241. package/screen-reader-only/screen-reader-only.component.js +1 -1
  1242. package/screen-reader-only.component-Dxj7rAnR.js +16 -0
  1243. package/screen-reader-only.js +1 -1
  1244. package/screen-reader-only.pure.js +1 -1
  1245. package/select/select.component.js +1 -1
  1246. package/{select.component-CsIiislt.js → select.component-DWLdApt_.js} +97 -76
  1247. package/select.js +1 -1
  1248. package/select.pure.js +1 -1
  1249. package/selection-action-panel/selection-action-panel.component.js +1 -1
  1250. package/selection-action-panel.component-C3g4OJY9.js +35 -0
  1251. package/selection-action-panel.js +1 -1
  1252. package/selection-action-panel.pure.js +1 -1
  1253. package/selection-expansion-panel/selection-expansion-panel.component.js +1 -1
  1254. package/selection-expansion-panel.component-CGSkSA6y.js +144 -0
  1255. package/selection-expansion-panel.js +1 -1
  1256. package/selection-expansion-panel.pure.js +1 -1
  1257. package/selection-group-base-element-B2VHp5_l.js +113 -0
  1258. package/sidebar/common/styles.js +2 -2
  1259. package/sidebar/common.js +2 -2
  1260. package/sidebar/sidebar/sidebar.component.js +1 -1
  1261. package/sidebar/sidebar-close-button/sidebar-close-button.component.js +1 -1
  1262. package/sidebar/sidebar-close-button.js +1 -1
  1263. package/sidebar/sidebar-container/sidebar-container.component.js +1 -1
  1264. package/sidebar/sidebar-container.js +1 -1
  1265. package/sidebar/sidebar-content/sidebar-content.component.js +1 -1
  1266. package/sidebar/sidebar-content.js +1 -1
  1267. package/sidebar/sidebar-title/sidebar-title.component.js +1 -1
  1268. package/sidebar/sidebar-title.js +1 -1
  1269. package/sidebar/sidebar.js +1 -1
  1270. package/sidebar-close-button.component-BEYnX3Hk.js +34 -0
  1271. package/{sidebar-container.component-BFxFShTF.js → sidebar-container.component-BGh7mxq4.js} +10 -10
  1272. package/sidebar-content.component-BEI3kpFh.js +20 -0
  1273. package/{sidebar-title.component-BfjxBPpH.js → sidebar-title.component-CvKixoOS.js} +11 -11
  1274. package/{sidebar.component-zRpWDGKR.js → sidebar.component-DxOx02l6.js} +22 -22
  1275. package/sidebar.js +5 -5
  1276. package/sidebar.pure.js +5 -5
  1277. package/signet/signet.component.js +1 -1
  1278. package/signet.component-ImdnCMXV.js +99 -0
  1279. package/signet.js +1 -1
  1280. package/signet.pure.js +1 -1
  1281. package/skiplink-list/skiplink-list.component.js +1 -1
  1282. package/skiplink-list.component-hqQIOxQD.js +100 -0
  1283. package/skiplink-list.js +1 -1
  1284. package/skiplink-list.pure.js +1 -1
  1285. package/slider/slider.component.js +1 -1
  1286. package/{slider.component-CLNsu212.js → slider.component-CoqCppCq.js} +26 -26
  1287. package/slider.js +1 -1
  1288. package/slider.pure.js +1 -1
  1289. package/standard-theme.css +267 -81
  1290. package/status/status.component.js +1 -1
  1291. package/{status.component-CmLdUn37.js → status.component-BFyXTFXH.js} +11 -11
  1292. package/status.js +1 -1
  1293. package/status.pure.js +1 -1
  1294. package/step-label.component-DnQBwnL8.js +80 -0
  1295. package/{step.component-eKVtXlT4.js → step.component-uBZl9yiJ.js} +5 -5
  1296. package/stepper/step/step.component.js +1 -1
  1297. package/stepper/step-label/step-label.component.js +1 -1
  1298. package/stepper/step-label.js +1 -1
  1299. package/stepper/step.js +1 -1
  1300. package/stepper/stepper/stepper.component.js +1 -1
  1301. package/stepper/stepper.js +1 -1
  1302. package/{stepper.component-yWCQtYWc.js → stepper.component-CYLW1eRI.js} +24 -26
  1303. package/stepper.js +3 -3
  1304. package/stepper.pure.js +3 -3
  1305. package/sticky-bar.component-DDBq8uXU.js +141 -0
  1306. package/styles-BUpK1iP2.js +5 -0
  1307. package/styles-CMI5maF5.js +6 -0
  1308. package/styles-Dqjgvm-Y.js +5 -0
  1309. package/{tab-group.component-DE4H3_H4.js → tab-group.component-Doy39cEh.js} +16 -16
  1310. package/tab-label.component-CD56RH1Z.js +165 -0
  1311. package/{tab-nav-bar.component-n5TiTWxE.js → tab-nav-bar.component-7mG-Dk6g.js} +10 -10
  1312. package/{tab.component-BrIEFDxk.js → tab.component-rEJAbgtn.js} +5 -5
  1313. package/table/table-wrapper/table-wrapper.component.js +1 -1
  1314. package/table/table-wrapper.js +1 -1
  1315. package/{table-wrapper.component-CoqozurQ.js → table-wrapper.component-BpMpU8um.js} +14 -14
  1316. package/table.css +64 -38
  1317. package/table.js +1 -1
  1318. package/table.pure.js +1 -1
  1319. package/tabs/common/styles.js +2 -2
  1320. package/tabs/common.js +2 -2
  1321. package/tabs/tab/tab.component.js +1 -1
  1322. package/tabs/tab-group/tab-group.component.js +1 -1
  1323. package/tabs/tab-group.js +1 -1
  1324. package/tabs/tab-label/tab-label.component.js +1 -1
  1325. package/tabs/tab-label.js +1 -1
  1326. package/tabs/tab-nav-bar/tab-nav-bar.component.js +1 -1
  1327. package/tabs/tab-nav-bar.js +1 -1
  1328. package/tabs/tab.js +1 -1
  1329. package/tabs.js +6 -6
  1330. package/tabs.pure.js +6 -6
  1331. package/tag/tag/tag.component.js +1 -1
  1332. package/tag/tag-group/tag-group.component.js +1 -1
  1333. package/tag/tag-group.js +1 -1
  1334. package/tag/tag.js +1 -1
  1335. package/{tag-group.component-DiIp6zS1.js → tag-group.component-DkQVBbQY.js} +17 -19
  1336. package/tag.component-CzYJZuFT.js +170 -0
  1337. package/tag.js +2 -2
  1338. package/tag.pure.js +2 -2
  1339. package/teaser/teaser.component.js +1 -1
  1340. package/teaser-hero/teaser-hero.component.js +1 -1
  1341. package/teaser-hero.component-CHy82SKQ.js +84 -0
  1342. package/teaser-hero.js +1 -1
  1343. package/teaser-hero.pure.js +1 -1
  1344. package/teaser-product/common/teaser-product-common.js +1 -1
  1345. package/teaser-product/common.js +1 -1
  1346. package/teaser-product/teaser-product/teaser-product.component.js +1 -1
  1347. package/teaser-product/teaser-product.js +1 -1
  1348. package/teaser-product-common-Ct19HzVX.js +63 -0
  1349. package/teaser-product.component-Csj9pAne.js +29 -0
  1350. package/teaser-product.js +2 -2
  1351. package/teaser-product.pure.js +2 -2
  1352. package/teaser.component-WZL0vAo9.js +91 -0
  1353. package/teaser.js +1 -1
  1354. package/teaser.pure.js +1 -1
  1355. package/time-input/time-input.component.js +1 -1
  1356. package/{time-input.component-DT1BOC8m.js → time-input.component-CuQ-3YEM.js} +11 -11
  1357. package/time-input.js +1 -1
  1358. package/time-input.pure.js +1 -1
  1359. package/timetable-form/timetable-form/timetable-form.component.js +1 -1
  1360. package/timetable-form/timetable-form-details/timetable-form-details.component.js +1 -1
  1361. package/timetable-form/timetable-form-details.js +1 -1
  1362. package/timetable-form/timetable-form-field/timetable-form-field.component.js +1 -1
  1363. package/timetable-form/timetable-form-field.js +1 -1
  1364. package/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.js +1 -1
  1365. package/timetable-form/timetable-form-swap-button.js +1 -1
  1366. package/timetable-form/timetable-form.js +1 -1
  1367. package/timetable-form-details.component-CBZ7QSAx.js +16 -0
  1368. package/timetable-form-field.component-BKxQQqt7.js +32 -0
  1369. package/timetable-form-swap-button.component-C71eoTQH.js +41 -0
  1370. package/timetable-form.component-CU1FXAZH.js +16 -0
  1371. package/timetable-form.js +4 -4
  1372. package/timetable-form.pure.js +4 -4
  1373. package/timetable-occupancy/timetable-occupancy.component.js +1 -1
  1374. package/timetable-occupancy-icon/timetable-occupancy-icon.component.js +1 -1
  1375. package/{timetable-occupancy-icon.component-ZrzpXaeV.js → timetable-occupancy-icon.component-Ck0VCzxz.js} +10 -10
  1376. package/timetable-occupancy-icon.js +1 -1
  1377. package/timetable-occupancy-icon.pure.js +1 -1
  1378. package/{timetable-occupancy.component-DMztYVmj.js → timetable-occupancy.component-Db9SfiyD.js} +14 -14
  1379. package/timetable-occupancy.js +1 -1
  1380. package/timetable-occupancy.pure.js +1 -1
  1381. package/title/title-base.js +1 -1
  1382. package/title/title.component.js +1 -2
  1383. package/title-base-D72Xo2SW.js +80 -0
  1384. package/title.component-CoMa84Sz.js +54 -0
  1385. package/title.js +2 -2
  1386. package/title.pure.js +2 -2
  1387. package/toast/toast.component.js +1 -1
  1388. package/toast.component-BDE1vYLS.js +193 -0
  1389. package/toast.js +1 -1
  1390. package/toast.pure.js +1 -1
  1391. package/toggle/toggle/toggle.component.js +1 -1
  1392. package/toggle/toggle-option/toggle-option.component.js +1 -1
  1393. package/toggle/toggle-option.js +1 -1
  1394. package/toggle/toggle.js +1 -1
  1395. package/toggle-check/toggle-check.component.js +1 -1
  1396. package/toggle-check.component-B6Ww5pLD.js +119 -0
  1397. package/toggle-check.js +1 -1
  1398. package/toggle-check.pure.js +1 -1
  1399. package/{toggle-option.component-NMfqwd12.js → toggle-option.component-Bw-GXUQK.js} +13 -13
  1400. package/{toggle.component-D1n5S5ev.js → toggle.component-BPpsMMPG.js} +16 -16
  1401. package/toggle.js +2 -2
  1402. package/toggle.pure.js +2 -2
  1403. package/tooltip/tooltip.component.js +1 -1
  1404. package/{tooltip.component-X45T6iQH.js → tooltip.component-BY9mV5Sw.js} +19 -19
  1405. package/tooltip.js +1 -1
  1406. package/tooltip.pure.js +1 -1
  1407. package/train/train/train.component.js +1 -1
  1408. package/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
  1409. package/train/train-blocked-passage.js +1 -1
  1410. package/train/train-formation/train-formation.component.js +1 -1
  1411. package/train/train-formation.js +1 -1
  1412. package/train/train-wagon/train-wagon.component.js +1 -1
  1413. package/train/train-wagon.js +1 -1
  1414. package/train/train.js +1 -1
  1415. package/train-blocked-passage.component-C-ltrsRr.js +23 -0
  1416. package/train-formation.component-y0TGSIGR.js +121 -0
  1417. package/{train-wagon.component-bGA2a-0M.js → train-wagon.component-BwCcF4GD.js} +30 -30
  1418. package/{train.component-V6FLqC82.js → train.component-NTimqCpY.js} +18 -18
  1419. package/train.js +4 -4
  1420. package/train.pure.js +4 -4
  1421. package/visual-checkbox/visual-checkbox.component.js +1 -1
  1422. package/visual-checkbox.component-CJWm74Zi.js +118 -0
  1423. package/visual-checkbox.js +1 -1
  1424. package/visual-checkbox.pure.js +1 -1
  1425. package/action-group.component-KWugkMGf.js +0 -158
  1426. package/alert.component-PPR7hfTi.js +0 -165
  1427. package/block-link-common-BMTrbSfi.js +0 -63
  1428. package/breadcrumb.component-DjkZzGJD.js +0 -24
  1429. package/card-badge.component-D_PI9Ega.js +0 -65
  1430. package/card.component-Dt2YFmd3.js +0 -62
  1431. package/chip-label.component-D9AZdMSJ.js +0 -80
  1432. package/chip.component-DMB36gvC.js +0 -94
  1433. package/common-CI_BB6sF.js +0 -5
  1434. package/compact-paginator.component-BK7xj9tc.js +0 -45
  1435. package/container.component-C-jpJN2k.js +0 -117
  1436. package/development/accordion.component-BIFcgIa0.js +0 -172
  1437. package/development/action-group.component-CuhO6yb9.js +0 -379
  1438. package/development/alert-group.component-BlrlsRB8.js +0 -219
  1439. package/development/alert.component-CJ2yLyOY.js +0 -411
  1440. package/development/autocomplete-base-element-DCfmuVY6.js +0 -960
  1441. package/development/block-link-common-CjBLu4BU.js +0 -145
  1442. package/development/breadcrumb-group.component-zU06d9ni.js +0 -279
  1443. package/development/breadcrumb.component-DvOf-PiO.js +0 -89
  1444. package/development/calendar-day.component-Brz0Wyai.js +0 -178
  1445. package/development/calendar.component-0Pl7qEXL.js +0 -2222
  1446. package/development/card-action-common-DqBn3bPy.js +0 -147
  1447. package/development/card-badge.component-Cs4dow18.js +0 -146
  1448. package/development/card.component-CeOZXXWU.js +0 -258
  1449. package/development/carousel-item.component-DOIXA2QK.js +0 -47
  1450. package/development/carousel-list.component-7Z3dYtAF.js +0 -160
  1451. package/development/carousel.component-Cs0gWroH.js +0 -169
  1452. package/development/checkbox-common-DOS4FkuG.js +0 -147
  1453. package/development/checkbox.component-DBtj7z07.js +0 -193
  1454. package/development/chip-group.component-BIJlU5Dp.js +0 -506
  1455. package/development/chip-label.component-DOCHCxBi.js +0 -165
  1456. package/development/chip.component-D6OL8r_Q.js +0 -191
  1457. package/development/clock.component-DPIVt4d3.js +0 -392
  1458. package/development/common-Da_cep8M.js +0 -565
  1459. package/development/compact-paginator.component-BSTPWGJx.js +0 -96
  1460. package/development/container.component-Co2L3KBb.js +0 -238
  1461. package/development/date-input.component-D6__znuy.js +0 -338
  1462. package/development/datepicker-button-vHP0D4yV.js +0 -167
  1463. package/development/datepicker.component-DW6eq3pC.js +0 -223
  1464. package/development/dialog-actions.component-TcOhbHSS.js +0 -55
  1465. package/development/dialog-close-button.component-Yi7NNtQe.js +0 -48
  1466. package/development/dialog-content.component-CzwHSsCD.js +0 -42
  1467. package/development/dialog-title.component-BjJxddme.js +0 -50
  1468. package/development/dialog.component-CjR644v5.js +0 -403
  1469. package/development/divider.component-D04zdHFf.js +0 -95
  1470. package/development/error.component-DCeTb_sQ.js +0 -93
  1471. package/development/expansion-panel-content.component-P1BVKaUQ.js +0 -77
  1472. package/development/expansion-panel-header.component-BQaFPmqq.js +0 -175
  1473. package/development/expansion-panel.component-sNQCAll-.js +0 -489
  1474. package/development/file-selector-common-4VE7Af0W.js +0 -512
  1475. package/development/file-selector-dropzone.component-COoDZxcq.js +0 -154
  1476. package/development/flip-card-details.component-DZqd1icn.js +0 -85
  1477. package/development/flip-card-summary.component-CTvT-hNh.js +0 -151
  1478. package/development/flip-card.component-CUQYeHRg.js +0 -334
  1479. package/development/footer.component-CLU7iVUY.js +0 -310
  1480. package/development/form-field.component-DoPHu1Yf.js +0 -1009
  1481. package/development/header-action-common-BPwn9nFN.js +0 -346
  1482. package/development/header-environment.component-JltjpGKu.js +0 -101
  1483. package/development/header.component-DEw_zC-n.js +0 -446
  1484. package/development/icon-base-DaK86P0U.js +0 -206
  1485. package/development/icon-sidebar-container.component-6k5VwVGK.js +0 -41
  1486. package/development/icon-sidebar-content.component-ISXOClFX.js +0 -33
  1487. package/development/icon-sidebar.component-DFDKX2cD.js +0 -100
  1488. package/development/image.component-BSJf5qRL.js +0 -820
  1489. package/development/inline-link-common-FwpAjkCL.js +0 -52
  1490. package/development/journey-header.component-D1iaZBcw.js +0 -217
  1491. package/development/lead-container.component-BPGSdIND.js +0 -122
  1492. package/development/link-common-CrLiKO3x.js +0 -124
  1493. package/development/link-list-anchor.component-CMwxD7at.js +0 -77
  1494. package/development/link-list.component-B3l5PRJl.js +0 -194
  1495. package/development/loading-indicator-circle.component-BJRSfYOI.js +0 -144
  1496. package/development/loading-indicator.component-DolzcY0K.js +0 -278
  1497. package/development/logo.component-iu5iL8wQ.js +0 -166
  1498. package/development/map-container.component-DMF2oulu.js +0 -307
  1499. package/development/menu-action-common-CE1gySL_.js +0 -140
  1500. package/development/menu.component-D4nt6M9b.js +0 -620
  1501. package/development/message.component-cyOtXMuM.js +0 -82
  1502. package/development/mini-button-group.component-ytJZBjmr.js +0 -174
  1503. package/development/mini-button-link.component-DZOOdeZt.js +0 -47
  1504. package/development/mini-calendar-day.component-B5SWuVZl.js +0 -213
  1505. package/development/mini-calendar-month.component-Diq4my2u.js +0 -150
  1506. package/development/mini-calendar.component-O44l8sfI.js +0 -192
  1507. package/development/navigation-action-common-CA2aDyJ4.js +0 -178
  1508. package/development/navigation-list.component-Dz0JLuKb.js +0 -124
  1509. package/development/navigation-marker.component-DzRg3INl.js +0 -207
  1510. package/development/navigation-section.component-DnSkQA4r.js +0 -600
  1511. package/development/navigation.component-DZ3EQfeI.js +0 -585
  1512. package/development/notification.component-D1xrOQdE.js +0 -525
  1513. package/development/optgroup-base-element-DVLTejtg.js +0 -181
  1514. package/development/option-hint.component-w-UQdEdu.js +0 -55
  1515. package/development/option.component-BPN2WTiI.js +0 -248
  1516. package/development/overlay.component-Btd42clm.js +0 -411
  1517. package/development/paginator.component-DT-sZuFS.js +0 -492
  1518. package/development/popover.component-DCJdrVsB.js +0 -746
  1519. package/development/radio-button-common-CsjMvmAn.js +0 -231
  1520. package/development/radio-button.component-BTnHGixs.js +0 -137
  1521. package/development/screen-reader-only.component-Btj8mc2x.js +0 -36
  1522. package/development/select.component-DJV8Tjcw.js +0 -1084
  1523. package/development/selection-action-panel.component-B3pNvpeD.js +0 -134
  1524. package/development/selection-expansion-panel.component-B9v1yqif.js +0 -326
  1525. package/development/selection-group-base-element-DrTO_80I.js +0 -220
  1526. package/development/sidebar-close-button.component-DYl0czc_.js +0 -48
  1527. package/development/sidebar-container.component-f4gR6uPU.js +0 -136
  1528. package/development/sidebar-content.component-B70pf9tH.js +0 -37
  1529. package/development/sidebar-title.component-RStE_x3R.js +0 -76
  1530. package/development/sidebar.component-BDUew-xS.js +0 -506
  1531. package/development/signet.component-B9nY5tTL.js +0 -188
  1532. package/development/skiplink-list.component-BvbnZ24-.js +0 -198
  1533. package/development/slider.component-w_WtVNx-.js +0 -479
  1534. package/development/status.component-CD4RXPEj.js +0 -171
  1535. package/development/step-label.component-DbdXrY05.js +0 -298
  1536. package/development/step.component-BZ8GnSvF.js +0 -220
  1537. package/development/stepper.component-C20566P1.js +0 -508
  1538. package/development/sticky-bar.component-DxDHpEgX.js +0 -382
  1539. package/development/styles-BlQUk9lF.js +0 -96
  1540. package/development/styles-TKvcDQkA.js +0 -173
  1541. package/development/tab-group.component-C6jlhxvZ.js +0 -292
  1542. package/development/tab-label.component-C0qpk3p_.js +0 -420
  1543. package/development/tab-nav-bar.component-CbZKhBxs.js +0 -123
  1544. package/development/tab.component-DvEZBqQ6.js +0 -101
  1545. package/development/table-wrapper.component-lmWguT_t.js +0 -133
  1546. package/development/tag-group.component-BW1vj2rN.js +0 -219
  1547. package/development/tag.component-Cfx7YNV5.js +0 -419
  1548. package/development/teaser-hero.component-sUhYQXkN.js +0 -202
  1549. package/development/teaser-product-common-zgX2CF41.js +0 -223
  1550. package/development/teaser-product.component-w8Vjh-RN.js +0 -75
  1551. package/development/teaser.component-BI1diIhL.js +0 -246
  1552. package/development/time-input.component-B15eaxBr.js +0 -222
  1553. package/development/timetable-form-details.component-Bz6nsJEp.js +0 -50
  1554. package/development/timetable-form-field.component-BQHwNBP_.js +0 -119
  1555. package/development/timetable-form-swap-button.component-C111nH5V.js +0 -74
  1556. package/development/timetable-form.component-BwcJd7mP.js +0 -34
  1557. package/development/timetable-occupancy-icon.component-BbPiOTqO.js +0 -101
  1558. package/development/timetable-occupancy.component-COJQPJ-O.js +0 -172
  1559. package/development/title-base-DNSaV9Ar.js +0 -142
  1560. package/development/title.component-BY1lm4Z7.js +0 -115
  1561. package/development/toast.component-TMMY3vo-.js +0 -430
  1562. package/development/toggle-check.component-eyni_u24.js +0 -326
  1563. package/development/toggle-option.component-Cerp56FA.js +0 -216
  1564. package/development/toggle.component-9bozw9C0.js +0 -367
  1565. package/development/tooltip.component-DpeuOb4p.js +0 -480
  1566. package/development/train-blocked-passage.component-YA9rV23T.js +0 -79
  1567. package/development/train-formation.component-Bh2Cx4if.js +0 -303
  1568. package/development/train-wagon.component-DQ12gCZf.js +0 -485
  1569. package/development/train.component-DW4vZtEt.js +0 -294
  1570. package/development/visual-checkbox.component-CA6AKLbO.js +0 -213
  1571. package/dialog-actions.component-QvbasYxg.js +0 -17
  1572. package/dialog-close-button.component-CeZrvBtz.js +0 -27
  1573. package/dialog-content.component-bHJNAgKn.js +0 -19
  1574. package/dialog-title.component-BDHYjDn0.js +0 -17
  1575. package/error.component-DTYppqRY.js +0 -44
  1576. package/expansion-panel-content.component-DCl4nQ8V.js +0 -29
  1577. package/expansion-panel-header.component-jc1Ty5jz.js +0 -56
  1578. package/expansion-panel.component-CGss5cPS.js +0 -226
  1579. package/file-selector-dropzone.component-BFlkqlsq.js +0 -94
  1580. package/flip-card-details.component-BOVK7F1U.js +0 -45
  1581. package/flip-card-summary.component-DVa7wF7x.js +0 -65
  1582. package/flip-card.component-5pxuwGAv.js +0 -138
  1583. package/footer.component-C-mSrCud.js +0 -129
  1584. package/form-field.component-CWj6jfYZ.js +0 -447
  1585. package/header-action-common-W_j0KPr-.js +0 -62
  1586. package/header-environment.component-DduyZo6W.js +0 -36
  1587. package/header.component-DW23EnaO.js +0 -203
  1588. package/inline-link-common-DANB-hT-.js +0 -18
  1589. package/lead-container.component-D9VzZCQa.js +0 -27
  1590. package/link-common-akQv_-UR.js +0 -52
  1591. package/link-list-anchor.component-Qm7h2mHK.js +0 -18
  1592. package/link-list.component-C8zrqHYc.js +0 -78
  1593. package/loading-indicator-circle.component-DfjVqe7n.js +0 -62
  1594. package/loading-indicator.component-DkYs30Nf.js +0 -92
  1595. package/map-container.component-C_wbi6WL.js +0 -128
  1596. package/menu-action-common-vt9j6nkG.js +0 -29
  1597. package/mini-button-group.component-D5Dph1Z7.js +0 -89
  1598. package/mini-button-link.component-BYK_EUud.js +0 -31
  1599. package/mini-calendar-day.component-Tj7wlWj7.js +0 -106
  1600. package/navigation-action-common-D_-gGOYm.js +0 -64
  1601. package/navigation-marker.component-B7hmb9iS.js +0 -88
  1602. package/navigation-section.component-C86pkDLG.js +0 -237
  1603. package/navigation.component-BzgTWUiD.js +0 -208
  1604. package/notification.component-Cor1vQGU.js +0 -197
  1605. package/option-hint.component-kPdwK61Z.js +0 -23
  1606. package/option.component-DF9ZTj12.js +0 -98
  1607. package/overlay.component-CAN3BK7B.js +0 -163
  1608. package/paginator.component-CsSs5q4D.js +0 -206
  1609. package/radio-button-common-QHPueQrm.js +0 -77
  1610. package/screen-reader-only.component-DEOirlKo.js +0 -16
  1611. package/selection-action-panel.component-QfR2kPeM.js +0 -35
  1612. package/selection-expansion-panel.component-BQw9icBM.js +0 -144
  1613. package/selection-group-base-element-Bd6na8dT.js +0 -113
  1614. package/sidebar-close-button.component-D0JS2p5L.js +0 -30
  1615. package/sidebar-content.component-M7FGd8SF.js +0 -20
  1616. package/signet.component-Kwdy4Uor.js +0 -101
  1617. package/skiplink-list.component-BRJk6HvC.js +0 -102
  1618. package/step-label.component-DTkviH8Q.js +0 -82
  1619. package/sticky-bar.component-BqZVKHc7.js +0 -141
  1620. package/styles-CsBiCI23.js +0 -5
  1621. package/styles-DYZWSKeo.js +0 -5
  1622. package/tab-label.component-BnxPGws1.js +0 -165
  1623. package/tag.component-CfK6JwsO.js +0 -170
  1624. package/teaser-hero.component-DjodzcX_.js +0 -80
  1625. package/teaser-product-common-DkumwiRA.js +0 -62
  1626. package/teaser-product.component-DiOhM_rU.js +0 -29
  1627. package/teaser.component-C7sJLVMk.js +0 -91
  1628. package/timetable-form-details.component-DI5Mr8-O.js +0 -16
  1629. package/timetable-form-field.component-2kEWygEC.js +0 -32
  1630. package/timetable-form-swap-button.component-BGP-OsHD.js +0 -37
  1631. package/timetable-form.component-BqdKekNM.js +0 -16
  1632. package/title-base-BDYkc8fG.js +0 -80
  1633. package/title.component-DafVwymI.js +0 -54
  1634. package/toast.component-DbILctK5.js +0 -189
  1635. package/toggle-check.component-CPewUjOg.js +0 -119
  1636. package/train-blocked-passage.component-RIMoX91U.js +0 -23
  1637. package/train-formation.component-B17tc6cx.js +0 -121
  1638. package/visual-checkbox.component-eajUDpKu.js +0 -118
  1639. /package/{sbb-tokens-BtASsKhQ.js → sbb-tokens-CWYlBuxJ.js} +0 -0
@@ -0,0 +1,774 @@
1
+ import { a as SbbBreakpointUltraMax, c as SbbBreakpointZeroMin, i as SbbBreakpointSmallMin, n as SbbBreakpointLargeMin, o as SbbBreakpointUltraMin, r as SbbBreakpointSmallMax, s as SbbBreakpointZeroMax, t as SbbBreakpointLargeMax } from "./sbb-tokens-Cr3wVegh.js";
2
+ import { __esDecorate, __runInitializers } from "tslib";
3
+ import { html, nothing, unsafeCSS } from "lit";
4
+ import { eventOptions, property } from "lit/decorators.js";
5
+ import { SbbElement } from "./core/base-elements.js";
6
+ import { forceType } from "./core/decorators.js";
7
+ import { boxSizingStyles } from "./core/styles.js";
8
+ //#region src/elements/image/image.scss?inline
9
+ var image_default = ":host {\n --sbb-image-aspect-ratio: 16 / 9;\n --sbb-image-animation-duration: var(\n --sbb-disable-animation-duration,\n var(--sbb-animation-duration-4x)\n );\n --sbb-image-object-fit: cover;\n display: block;\n border-radius: var(--sbb-border-radius-4x);\n}\n\n.sbb-image__img {\n opacity: 0.000001;\n}\n:host(:is(:state(loaded),[state--loaded])) .sbb-image__img {\n opacity: 0.999999;\n}\n:host(:not([skip-lqip])) .sbb-image__img {\n position: absolute;\n inset: 0;\n}\n\n:host(:is(:state(loaded),[state--loaded])) .sbb-image__blurred {\n opacity: 0;\n}\n\npicture {\n display: contents;\n}\n\n:is(.sbb-image__img, .sbb-image__blurred) {\n width: 100%;\n height: 100%;\n object-fit: var(--sbb-image-object-fit);\n object-position: var(--sbb-image-object-position);\n transition: opacity var(--sbb-image-animation-duration) var(--sbb-animation-easing);\n}\n\n.sbb-image__wrapper {\n display: flex;\n position: relative;\n width: 100%;\n height: 100%;\n aspect-ratio: var(--sbb-image-aspect-ratio);\n border-radius: inherit;\n overflow: hidden;\n}";
10
+ //#endregion
11
+ //#region src/elements/image/image.component.ts
12
+ /**
13
+ * we check the structure of the data manually, so it's safe to use `any` as return type
14
+ */
15
+ var imageHelperGetBreakpoints = (jsonString) => {
16
+ if (!jsonString || jsonString.length === 0) return [];
17
+ const logWarning = null;
18
+ let jsonObject;
19
+ try {
20
+ jsonObject = JSON.parse(jsonString);
21
+ } catch {
22
+ logWarning?.();
23
+ return [];
24
+ }
25
+ if (!jsonObject.breakpoints || jsonObject.breakpoints.length === 0) {
26
+ logWarning?.();
27
+ return [];
28
+ }
29
+ if (!Array.isArray(jsonObject.breakpoints)) {
30
+ logWarning?.();
31
+ return [];
32
+ }
33
+ /**
34
+ * 1. make sure that each entry within the breakpoints object contains only allowed keys
35
+ * 2. make sure that all necessary keys are present
36
+ */
37
+ let wrongKeyDetected = false;
38
+ let missingKeyDetected = false;
39
+ const allowedKeys = ["image", "mediaQueries"];
40
+ jsonObject.breakpoints.forEach((breakpoint) => {
41
+ const breakpointKeys = Object.keys(breakpoint);
42
+ breakpointKeys.forEach((breakpointKey) => {
43
+ if (!allowedKeys.includes(breakpointKey)) wrongKeyDetected = true;
44
+ });
45
+ allowedKeys.forEach((allowedKey) => {
46
+ if (!breakpointKeys.includes(allowedKey)) missingKeyDetected = true;
47
+ });
48
+ });
49
+ if (wrongKeyDetected || missingKeyDetected) {
50
+ logWarning?.();
51
+ return [];
52
+ }
53
+ return jsonObject.breakpoints;
54
+ };
55
+ var eventListenerOptions = { passive: true };
56
+ var breakpointMap = {
57
+ "sbb-breakpoint-zero-min": SbbBreakpointZeroMin,
58
+ "sbb-breakpoint-zero-max": SbbBreakpointZeroMax,
59
+ "sbb-breakpoint-small-min": SbbBreakpointSmallMin,
60
+ "sbb-breakpoint-small-max": SbbBreakpointSmallMax,
61
+ "sbb-breakpoint-large-min": SbbBreakpointLargeMin,
62
+ "sbb-breakpoint-large-max": SbbBreakpointLargeMax,
63
+ "sbb-breakpoint-ultra-min": SbbBreakpointUltraMin,
64
+ "sbb-breakpoint-ultra-max": SbbBreakpointUltraMax
65
+ };
66
+ /**
67
+ * It displays an image.
68
+ *
69
+ * @cssprop [--sbb-image-aspect-ratio=auto] - Can be used to override `aspectRatio` property.
70
+ * This way we can have, for example, an image component with an aspect
71
+ * ratio of 4/3 in smaller viewports and 16/9 in larger viewports.
72
+ * @cssprop [--sbb-image-object-position] - Can be used to set the object-position CSS property of the image itself if the image itself is cropped.
73
+ * @cssprop [--sbb-image-object-fit=cover] - Can be used to set the object-fit CSS property of the image itself if the image itself is cropped.
74
+ */
75
+ var SbbImageElement = (() => {
76
+ let _classSuper = SbbElement;
77
+ let _instanceExtraInitializers = [];
78
+ let _alt_decorators;
79
+ let _alt_initializers = [];
80
+ let _alt_extraInitializers = [];
81
+ let _skipLqip_decorators;
82
+ let _skipLqip_initializers = [];
83
+ let _skipLqip_extraInitializers = [];
84
+ let _customFocalPoint_decorators;
85
+ let _customFocalPoint_initializers = [];
86
+ let _customFocalPoint_extraInitializers = [];
87
+ let _decoding_decorators;
88
+ let _decoding_initializers = [];
89
+ let _decoding_extraInitializers = [];
90
+ let _focalPointDebug_decorators;
91
+ let _focalPointDebug_initializers = [];
92
+ let _focalPointDebug_extraInitializers = [];
93
+ let _focalPointX_decorators;
94
+ let _focalPointX_initializers = [];
95
+ let _focalPointX_extraInitializers = [];
96
+ let _focalPointY_decorators;
97
+ let _focalPointY_initializers = [];
98
+ let _focalPointY_extraInitializers = [];
99
+ let _imageSrc_decorators;
100
+ let _imageSrc_initializers = [];
101
+ let _imageSrc_extraInitializers = [];
102
+ let _importance_decorators;
103
+ let _importance_initializers = [];
104
+ let _importance_extraInitializers = [];
105
+ let _loading_decorators;
106
+ let _loading_initializers = [];
107
+ let _loading_extraInitializers = [];
108
+ let _performanceMark_decorators;
109
+ let _performanceMark_initializers = [];
110
+ let _performanceMark_extraInitializers = [];
111
+ let _pictureSizesConfig_decorators;
112
+ let _pictureSizesConfig_initializers = [];
113
+ let _pictureSizesConfig_extraInitializers = [];
114
+ let __imageLoaded_decorators;
115
+ return class SbbImageElement extends _classSuper {
116
+ static {
117
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
118
+ _alt_decorators = [forceType(), property()];
119
+ _skipLqip_decorators = [forceType(), property({
120
+ attribute: "skip-lqip",
121
+ type: Boolean,
122
+ reflect: true
123
+ })];
124
+ _customFocalPoint_decorators = [forceType(), property({
125
+ attribute: "custom-focal-point",
126
+ type: Boolean
127
+ })];
128
+ _decoding_decorators = [property()];
129
+ _focalPointDebug_decorators = [forceType(), property({
130
+ attribute: "focal-point-debug",
131
+ type: Boolean
132
+ })];
133
+ _focalPointX_decorators = [forceType(), property({
134
+ attribute: "focal-point-x",
135
+ type: Number
136
+ })];
137
+ _focalPointY_decorators = [forceType(), property({
138
+ attribute: "focal-point-y",
139
+ type: Number
140
+ })];
141
+ _imageSrc_decorators = [forceType(), property({ attribute: "image-src" })];
142
+ _importance_decorators = [property()];
143
+ _loading_decorators = [property()];
144
+ _performanceMark_decorators = [forceType(), property({ attribute: "performance-mark" })];
145
+ _pictureSizesConfig_decorators = [forceType(), property({ attribute: "picture-sizes-config" })];
146
+ __imageLoaded_decorators = [eventOptions(eventListenerOptions)];
147
+ __esDecorate(this, null, _alt_decorators, {
148
+ kind: "accessor",
149
+ name: "alt",
150
+ static: false,
151
+ private: false,
152
+ access: {
153
+ has: (obj) => "alt" in obj,
154
+ get: (obj) => obj.alt,
155
+ set: (obj, value) => {
156
+ obj.alt = value;
157
+ }
158
+ },
159
+ metadata: _metadata
160
+ }, _alt_initializers, _alt_extraInitializers);
161
+ __esDecorate(this, null, _skipLqip_decorators, {
162
+ kind: "accessor",
163
+ name: "skipLqip",
164
+ static: false,
165
+ private: false,
166
+ access: {
167
+ has: (obj) => "skipLqip" in obj,
168
+ get: (obj) => obj.skipLqip,
169
+ set: (obj, value) => {
170
+ obj.skipLqip = value;
171
+ }
172
+ },
173
+ metadata: _metadata
174
+ }, _skipLqip_initializers, _skipLqip_extraInitializers);
175
+ __esDecorate(this, null, _customFocalPoint_decorators, {
176
+ kind: "accessor",
177
+ name: "customFocalPoint",
178
+ static: false,
179
+ private: false,
180
+ access: {
181
+ has: (obj) => "customFocalPoint" in obj,
182
+ get: (obj) => obj.customFocalPoint,
183
+ set: (obj, value) => {
184
+ obj.customFocalPoint = value;
185
+ }
186
+ },
187
+ metadata: _metadata
188
+ }, _customFocalPoint_initializers, _customFocalPoint_extraInitializers);
189
+ __esDecorate(this, null, _decoding_decorators, {
190
+ kind: "accessor",
191
+ name: "decoding",
192
+ static: false,
193
+ private: false,
194
+ access: {
195
+ has: (obj) => "decoding" in obj,
196
+ get: (obj) => obj.decoding,
197
+ set: (obj, value) => {
198
+ obj.decoding = value;
199
+ }
200
+ },
201
+ metadata: _metadata
202
+ }, _decoding_initializers, _decoding_extraInitializers);
203
+ __esDecorate(this, null, _focalPointDebug_decorators, {
204
+ kind: "accessor",
205
+ name: "focalPointDebug",
206
+ static: false,
207
+ private: false,
208
+ access: {
209
+ has: (obj) => "focalPointDebug" in obj,
210
+ get: (obj) => obj.focalPointDebug,
211
+ set: (obj, value) => {
212
+ obj.focalPointDebug = value;
213
+ }
214
+ },
215
+ metadata: _metadata
216
+ }, _focalPointDebug_initializers, _focalPointDebug_extraInitializers);
217
+ __esDecorate(this, null, _focalPointX_decorators, {
218
+ kind: "accessor",
219
+ name: "focalPointX",
220
+ static: false,
221
+ private: false,
222
+ access: {
223
+ has: (obj) => "focalPointX" in obj,
224
+ get: (obj) => obj.focalPointX,
225
+ set: (obj, value) => {
226
+ obj.focalPointX = value;
227
+ }
228
+ },
229
+ metadata: _metadata
230
+ }, _focalPointX_initializers, _focalPointX_extraInitializers);
231
+ __esDecorate(this, null, _focalPointY_decorators, {
232
+ kind: "accessor",
233
+ name: "focalPointY",
234
+ static: false,
235
+ private: false,
236
+ access: {
237
+ has: (obj) => "focalPointY" in obj,
238
+ get: (obj) => obj.focalPointY,
239
+ set: (obj, value) => {
240
+ obj.focalPointY = value;
241
+ }
242
+ },
243
+ metadata: _metadata
244
+ }, _focalPointY_initializers, _focalPointY_extraInitializers);
245
+ __esDecorate(this, null, _imageSrc_decorators, {
246
+ kind: "accessor",
247
+ name: "imageSrc",
248
+ static: false,
249
+ private: false,
250
+ access: {
251
+ has: (obj) => "imageSrc" in obj,
252
+ get: (obj) => obj.imageSrc,
253
+ set: (obj, value) => {
254
+ obj.imageSrc = value;
255
+ }
256
+ },
257
+ metadata: _metadata
258
+ }, _imageSrc_initializers, _imageSrc_extraInitializers);
259
+ __esDecorate(this, null, _importance_decorators, {
260
+ kind: "accessor",
261
+ name: "importance",
262
+ static: false,
263
+ private: false,
264
+ access: {
265
+ has: (obj) => "importance" in obj,
266
+ get: (obj) => obj.importance,
267
+ set: (obj, value) => {
268
+ obj.importance = value;
269
+ }
270
+ },
271
+ metadata: _metadata
272
+ }, _importance_initializers, _importance_extraInitializers);
273
+ __esDecorate(this, null, _loading_decorators, {
274
+ kind: "accessor",
275
+ name: "loading",
276
+ static: false,
277
+ private: false,
278
+ access: {
279
+ has: (obj) => "loading" in obj,
280
+ get: (obj) => obj.loading,
281
+ set: (obj, value) => {
282
+ obj.loading = value;
283
+ }
284
+ },
285
+ metadata: _metadata
286
+ }, _loading_initializers, _loading_extraInitializers);
287
+ __esDecorate(this, null, _performanceMark_decorators, {
288
+ kind: "accessor",
289
+ name: "performanceMark",
290
+ static: false,
291
+ private: false,
292
+ access: {
293
+ has: (obj) => "performanceMark" in obj,
294
+ get: (obj) => obj.performanceMark,
295
+ set: (obj, value) => {
296
+ obj.performanceMark = value;
297
+ }
298
+ },
299
+ metadata: _metadata
300
+ }, _performanceMark_initializers, _performanceMark_extraInitializers);
301
+ __esDecorate(this, null, _pictureSizesConfig_decorators, {
302
+ kind: "accessor",
303
+ name: "pictureSizesConfig",
304
+ static: false,
305
+ private: false,
306
+ access: {
307
+ has: (obj) => "pictureSizesConfig" in obj,
308
+ get: (obj) => obj.pictureSizesConfig,
309
+ set: (obj, value) => {
310
+ obj.pictureSizesConfig = value;
311
+ }
312
+ },
313
+ metadata: _metadata
314
+ }, _pictureSizesConfig_initializers, _pictureSizesConfig_extraInitializers);
315
+ __esDecorate(this, null, __imageLoaded_decorators, {
316
+ kind: "method",
317
+ name: "_imageLoaded",
318
+ static: false,
319
+ private: false,
320
+ access: {
321
+ has: (obj) => "_imageLoaded" in obj,
322
+ get: (obj) => obj._imageLoaded
323
+ },
324
+ metadata: _metadata
325
+ }, null, _instanceExtraInitializers);
326
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, {
327
+ enumerable: true,
328
+ configurable: true,
329
+ writable: true,
330
+ value: _metadata
331
+ });
332
+ }
333
+ static {
334
+ this.elementName = "sbb-image";
335
+ }
336
+ static {
337
+ this.styles = [boxSizingStyles, unsafeCSS(image_default)];
338
+ }
339
+ static {
340
+ this.events = {
341
+ error: "error",
342
+ load: "load"
343
+ };
344
+ }
345
+ #alt_accessor_storage;
346
+ /**
347
+ * An alt text is not always necessary (e.g. in teaser cards when
348
+ * additional link text is provided). In this case we can leave
349
+ * the value of the alt attribute blank, but the attribute itself
350
+ * still needs to be present. That way we can signal assistive
351
+ * technology, that they can skip the image.
352
+ */
353
+ get alt() {
354
+ return this.#alt_accessor_storage;
355
+ }
356
+ set alt(value) {
357
+ this.#alt_accessor_storage = value;
358
+ }
359
+ #skipLqip_accessor_storage;
360
+ /**
361
+ * If set to false, we show a blurred version of the image as
362
+ * placeholder before the actual image shows up. This will help
363
+ * to improve the perceived loading performance. Read more about
364
+ * the idea of lqip here:
365
+ * https://medium.com/@imgix/lqip-your-images-for-fast-loading-2523d9ee4a62
366
+ */
367
+ get skipLqip() {
368
+ return this.#skipLqip_accessor_storage;
369
+ }
370
+ set skipLqip(value) {
371
+ this.#skipLqip_accessor_storage = value;
372
+ }
373
+ #customFocalPoint_accessor_storage;
374
+ /**
375
+ * Set this to true, if you want to pass a custom focal point
376
+ * for the image. See full documentation here:
377
+ * https://docs.imgix.com/apis/rendering/focalpoint-crop
378
+ */
379
+ get customFocalPoint() {
380
+ return this.#customFocalPoint_accessor_storage;
381
+ }
382
+ set customFocalPoint(value) {
383
+ this.#customFocalPoint_accessor_storage = value;
384
+ }
385
+ #decoding_accessor_storage;
386
+ /**
387
+ * If the lazy property is set to true, the module will automatically
388
+ * change the decoding to async, otherwise the decoding is set to auto
389
+ * which leaves the handling up to the browser. Read more about the
390
+ * decoding attribute here:
391
+ * https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/decoding
392
+ */
393
+ get decoding() {
394
+ return this.#decoding_accessor_storage;
395
+ }
396
+ set decoding(value) {
397
+ this.#decoding_accessor_storage = value;
398
+ }
399
+ #focalPointDebug_accessor_storage;
400
+ /**
401
+ * Set this to true, to receive visual guidance where the custom focal
402
+ * point is currently set.
403
+ */
404
+ get focalPointDebug() {
405
+ return this.#focalPointDebug_accessor_storage;
406
+ }
407
+ set focalPointDebug(value) {
408
+ this.#focalPointDebug_accessor_storage = value;
409
+ }
410
+ #focalPointX_accessor_storage;
411
+ /**
412
+ * Pass in a floating number between 0 (left) and 1 (right).
413
+ */
414
+ get focalPointX() {
415
+ return this.#focalPointX_accessor_storage;
416
+ }
417
+ set focalPointX(value) {
418
+ this.#focalPointX_accessor_storage = value;
419
+ }
420
+ #focalPointY_accessor_storage;
421
+ /**
422
+ * Pass in a floating number between 0 (top) and 1 (bottom).
423
+ */
424
+ get focalPointY() {
425
+ return this.#focalPointY_accessor_storage;
426
+ }
427
+ set focalPointY(value) {
428
+ this.#focalPointY_accessor_storage = value;
429
+ }
430
+ #imageSrc_accessor_storage;
431
+ /**
432
+ * Right now the module is heavily coupled with the image delivery
433
+ * service imgix and depends on the original files being stored
434
+ * inside AEM. You can pass in any https://cdn.img.sbb.ch img
435
+ * src address you find on sbb.ch to play around with it. Just
436
+ * strip the url parameters and paste in the plain file address.
437
+ * If you want to know how to best work with this module with
438
+ * images coming from a different source, please contact the
439
+ * LYNE Core Team.
440
+ */
441
+ get imageSrc() {
442
+ return this.#imageSrc_accessor_storage;
443
+ }
444
+ set imageSrc(value) {
445
+ this.#imageSrc_accessor_storage = value;
446
+ }
447
+ #importance_accessor_storage;
448
+ /**
449
+ * The importance attribute is fairly new attribute which should
450
+ * help the browser decide which resources it should prioritise
451
+ * during page load. We will set the attribute value based on the
452
+ * value, we receive in the loading attribute. 'eager', which we use
453
+ * for the largest image within the initial viewport, will set the
454
+ * attribute value to 'high'. 'lazy', which we use for images below
455
+ * the fold, will set the attribute value to 'low'.
456
+ */
457
+ get importance() {
458
+ return this.#importance_accessor_storage;
459
+ }
460
+ set importance(value) {
461
+ this.#importance_accessor_storage = value;
462
+ }
463
+ #loading_accessor_storage;
464
+ /**
465
+ * With the support of native image lazy loading, we can now
466
+ * decide whether we want to load the image immediately or only
467
+ * once it is close to the visible viewport. The value eager is
468
+ * best used for images within the initial viewport. We want to
469
+ * load these images as fast as possible to improve the Core Web
470
+ * Vitals values. lazy on the other hand works best for images
471
+ * which are further down the page or invisible during the loading
472
+ * of the initial viewport.
473
+ */
474
+ get loading() {
475
+ return this.#loading_accessor_storage;
476
+ }
477
+ set loading(value) {
478
+ this.#loading_accessor_storage = value;
479
+ }
480
+ #performanceMark_accessor_storage;
481
+ /**
482
+ * With `performance.mark` you can log a timestamp associated with
483
+ * the name you define in performanceMark when a certain event is
484
+ * happening. In our case we will log the `performance.mark` into
485
+ * the PerformanceEntry API once the image is fully loaded.
486
+ * Performance monitoring tools like SpeedCurve or Lighthouse are
487
+ * then able to grab these entries from the PerformanceEntry API
488
+ * and give us additional information and insights about our page
489
+ * loading behavior. We are then also able to monitor these
490
+ * values over a long period to see if our performance
491
+ * increases or decreases over time. Best to use lowercase strings
492
+ * here, separate words with underscores or dashes.
493
+ */
494
+ get performanceMark() {
495
+ return this.#performanceMark_accessor_storage;
496
+ }
497
+ set performanceMark(value) {
498
+ this.#performanceMark_accessor_storage = value;
499
+ }
500
+ #pictureSizesConfig_accessor_storage;
501
+ /**
502
+ * With the pictureSizesConfig object, you can pass in information
503
+ * into image about what kind of source elements should get
504
+ * rendered. mediaQueries accepts multiple Media Query entries
505
+ * which can get combined by defining a conditionOperator.
506
+ * Type is: stringified InterfaceImageAttributesSizesConfig-Object
507
+ * An example could look like this:
508
+ * {
509
+ * "breakpoints": [
510
+ * {
511
+ * "image": {
512
+ * "height": "675",
513
+ * "width": "1200"
514
+ * },
515
+ * "mediaQueries": [
516
+ * {
517
+ * "conditionFeature": "min-width",
518
+ * "conditionFeatureValue": {
519
+ * "lyneDesignToken": true,
520
+ * "value": "sbb-breakpoint-large-min"
521
+ * },
522
+ * "conditionOperator": false
523
+ * }
524
+ * ]
525
+ * },
526
+ * {
527
+ * "image": {
528
+ * "height": "549",
529
+ * "width": "976"
530
+ * },
531
+ * "mediaQueries": [
532
+ * {
533
+ * "conditionFeature": "min-width",
534
+ * "conditionFeatureValue": {
535
+ * "lyneDesignToken": true,
536
+ * "value": "sbb-breakpoint-small-min"
537
+ * },
538
+ * "conditionOperator": false
539
+ * }
540
+ * ]
541
+ * },
542
+ * {
543
+ * "image": {
544
+ * "height": "180",
545
+ * "width": "320"
546
+ * },
547
+ * "mediaQueries": [
548
+ * {
549
+ * "conditionFeature": "max-width",
550
+ * "conditionFeatureValue": {
551
+ * "lyneDesignToken": true,
552
+ * "value": "sbb-breakpoint-small-max"
553
+ * },
554
+ * "conditionOperator": "and"
555
+ * },
556
+ * {
557
+ * "conditionFeature": "orientation",
558
+ * "conditionFeatureValue": {
559
+ * "lyneDesignToken": false,
560
+ * "value": "landscape"
561
+ * },
562
+ * "conditionOperator": false
563
+ * }
564
+ * ]
565
+ * }
566
+ * ]
567
+ * }
568
+ */
569
+ get pictureSizesConfig() {
570
+ return this.#pictureSizesConfig_accessor_storage;
571
+ }
572
+ set pictureSizesConfig(value) {
573
+ this.#pictureSizesConfig_accessor_storage = value;
574
+ }
575
+ /** Whether the image is finished loading or failed to load. */
576
+ get complete() {
577
+ return this.shadowRoot?.querySelector?.(".sbb-image__img")?.complete ?? false;
578
+ }
579
+ updated(changedProperties) {
580
+ super.updated(changedProperties);
581
+ if (!this._captionElement) return;
582
+ this._linksInCaption = this._captionElement.querySelectorAll("a");
583
+ if (!this._linksInCaption) return;
584
+ this._addFocusAbilityToLinksInCaption();
585
+ }
586
+ _logPerformanceMarks() {
587
+ if (this.performanceMark) {
588
+ performance.clearMarks(this.performanceMark);
589
+ performance.mark(this.performanceMark);
590
+ }
591
+ }
592
+ _addFocusAbilityToLinksInCaption() {
593
+ this._linksInCaption?.forEach((link) => {
594
+ link.removeAttribute("tabindex");
595
+ });
596
+ }
597
+ _prepareImageUrl(baseUrl, lquip = false) {
598
+ if (!baseUrl || baseUrl === "") return "";
599
+ const isFullyQualifiedUrl = !!baseUrl.match(/^\w+:\/\//);
600
+ const imageUrlObj = isFullyQualifiedUrl ? new URL(baseUrl) : new URL(`http://noop/${baseUrl}`);
601
+ if (lquip) {
602
+ imageUrlObj.searchParams.append("blur", "100");
603
+ imageUrlObj.searchParams.append("w", "100");
604
+ imageUrlObj.searchParams.append("h", "56");
605
+ } else imageUrlObj.searchParams.append("auto", "format,compress,cs=tinysrgb");
606
+ if (this.customFocalPoint) {
607
+ imageUrlObj.searchParams.append("fit", "crop");
608
+ imageUrlObj.searchParams.append("crop", "focalpoint");
609
+ imageUrlObj.searchParams.append("fp-x", this.focalPointX.toString(10));
610
+ imageUrlObj.searchParams.append("fp-y", this.focalPointY.toString(10));
611
+ imageUrlObj.searchParams.append("fp-z", "1");
612
+ }
613
+ if (this.focalPointDebug) imageUrlObj.searchParams.append("fp-debug", "true");
614
+ return isFullyQualifiedUrl ? imageUrlObj.href : imageUrlObj.pathname.substring(1) + imageUrlObj.search;
615
+ }
616
+ _preparePictureSizeConfigs() {
617
+ let pictureSizesConfig;
618
+ if (this.pictureSizesConfig) pictureSizesConfig = this.pictureSizesConfig;
619
+ else pictureSizesConfig = `{
620
+ "breakpoints": [
621
+ {
622
+ "image": {
623
+ "height": 675,
624
+ "width": 1200
625
+ },
626
+ "mediaQueries": [
627
+ {
628
+ "conditionFeature": "min-width",
629
+ "conditionFeatureValue": {
630
+ "lyneDesignToken": true,
631
+ "value": "sbb-breakpoint-large-min"
632
+ },
633
+ "conditionOperator": false
634
+ }
635
+ ]
636
+ },
637
+ {
638
+ "image": {
639
+ "height": 549,
640
+ "width": 976
641
+ },
642
+ "mediaQueries": [
643
+ {
644
+ "conditionFeature": "min-width",
645
+ "conditionFeatureValue": {
646
+ "lyneDesignToken": true,
647
+ "value": "sbb-breakpoint-small-min"
648
+ },
649
+ "conditionOperator": false
650
+ }
651
+ ]
652
+ },
653
+ {
654
+ "image": {
655
+ "height": 180,
656
+ "width": 320
657
+ },
658
+ "mediaQueries": [
659
+ {
660
+ "conditionFeature": "max-width",
661
+ "conditionFeatureValue": {
662
+ "lyneDesignToken": true,
663
+ "value": "sbb-breakpoint-zero-max"
664
+ },
665
+ "conditionOperator": false
666
+ }
667
+ ]
668
+ }
669
+ ]
670
+ }`;
671
+ return imageHelperGetBreakpoints(pictureSizesConfig);
672
+ }
673
+ _createMediaQueryString(mediaQueries) {
674
+ let mediaQuery = "";
675
+ mediaQueries.forEach((mq) => {
676
+ const mqCondition = mq.conditionFeature;
677
+ let mqValue;
678
+ if (mq.conditionFeatureValue.lyneDesignToken) mqValue = breakpointMap[mq.conditionFeatureValue.value] ?? "";
679
+ else mqValue = mq.conditionFeatureValue.value;
680
+ const mqCombiner = mq.conditionOperator ? ` ${mq.conditionOperator} ` : "";
681
+ mediaQuery += `(${mqCondition}: ${mqValue})${mqCombiner}`;
682
+ });
683
+ return mediaQuery;
684
+ }
685
+ _imageLoaded() {
686
+ this._logPerformanceMarks();
687
+ this.internals.states.add("loaded");
688
+ /** Emits each time an image loads. E.g. loading image for a different viewport, triggers the load event again. */
689
+ this.dispatchEvent(new Event("load"));
690
+ }
691
+ render() {
692
+ const imageUrlLQIP = this._prepareImageUrl(this.imageSrc, true);
693
+ const imageUrlWithParams = this._prepareImageUrl(this.imageSrc, false);
694
+ if (this.loading === "lazy") {
695
+ this.decoding = "async";
696
+ this.importance = "low";
697
+ }
698
+ const pictureSizeConfigs = this._preparePictureSizeConfigs();
699
+ /**
700
+ * The alt attribute should always be present for the img element.
701
+ * If it has an empty string as its value, it is simply ignored
702
+ * by assistive technologies. If we leave it out completely,
703
+ * they might try to interpret the img element.
704
+ */
705
+ return html`
706
+ <div class="sbb-image__wrapper">
707
+ ${!this.skipLqip ? html`<img
708
+ alt=""
709
+ class="sbb-image__blurred"
710
+ src=${imageUrlLQIP}
711
+ width="1000"
712
+ height="562"
713
+ loading=${this.loading ?? nothing}
714
+ decoding=${this.decoding ?? nothing}
715
+ />` : nothing}
716
+
717
+ <picture>
718
+ <!-- render picture element sources -->
719
+ ${pictureSizeConfigs.map((config) => {
720
+ const imageHeight = config.image.height;
721
+ const imageWidth = config.image.width;
722
+ return html`
723
+ <source
724
+ media=${`${this._createMediaQueryString(config.mediaQueries)}`}
725
+ sizes=${`${imageWidth}px`}
726
+ srcset=${`${imageUrlWithParams}&w=${imageWidth}&h=${imageHeight}&q=${this._config.nonRetinaQuality} ${imageWidth}w, ${imageUrlWithParams}&w=${imageWidth * 2}&h=${imageHeight * 2}&q=${this._config.retinaQuality} ${imageWidth * 2}w`}
727
+ ></source>`;
728
+ })}
729
+ <img
730
+ alt=${this.alt || ""}
731
+ @load=${this._imageLoaded}
732
+ @error=${() => {
733
+ /** Emits when the image loading ended in an error. */
734
+ return this.dispatchEvent(new Event("error"));
735
+ }}
736
+ class="sbb-image__img"
737
+ src=${this.imageSrc}
738
+ width="1000"
739
+ height="562"
740
+ loading=${this.loading ?? nothing}
741
+ decoding=${this.decoding ?? nothing}
742
+ .fetchPriority=${this.importance ?? nothing}
743
+ />
744
+ </picture>
745
+ </div>
746
+ `;
747
+ }
748
+ constructor() {
749
+ super(...arguments);
750
+ this._captionElement = __runInitializers(this, _instanceExtraInitializers);
751
+ this._config = {
752
+ nonRetinaQuality: "45",
753
+ retinaQuality: "20"
754
+ };
755
+ this.#alt_accessor_storage = __runInitializers(this, _alt_initializers, "");
756
+ this.#skipLqip_accessor_storage = (__runInitializers(this, _alt_extraInitializers), __runInitializers(this, _skipLqip_initializers, false));
757
+ this.#customFocalPoint_accessor_storage = (__runInitializers(this, _skipLqip_extraInitializers), __runInitializers(this, _customFocalPoint_initializers, false));
758
+ this.#decoding_accessor_storage = (__runInitializers(this, _customFocalPoint_extraInitializers), __runInitializers(this, _decoding_initializers, "auto"));
759
+ this.#focalPointDebug_accessor_storage = (__runInitializers(this, _decoding_extraInitializers), __runInitializers(this, _focalPointDebug_initializers, false));
760
+ this.#focalPointX_accessor_storage = (__runInitializers(this, _focalPointDebug_extraInitializers), __runInitializers(this, _focalPointX_initializers, 1));
761
+ this.#focalPointY_accessor_storage = (__runInitializers(this, _focalPointX_extraInitializers), __runInitializers(this, _focalPointY_initializers, 1));
762
+ this.#imageSrc_accessor_storage = (__runInitializers(this, _focalPointY_extraInitializers), __runInitializers(this, _imageSrc_initializers, ""));
763
+ this.#importance_accessor_storage = (__runInitializers(this, _imageSrc_extraInitializers), __runInitializers(this, _importance_initializers, "high"));
764
+ this.#loading_accessor_storage = (__runInitializers(this, _importance_extraInitializers), __runInitializers(this, _loading_initializers, "eager"));
765
+ this.#performanceMark_accessor_storage = (__runInitializers(this, _loading_extraInitializers), __runInitializers(this, _performanceMark_initializers, ""));
766
+ this.#pictureSizesConfig_accessor_storage = (__runInitializers(this, _performanceMark_extraInitializers), __runInitializers(this, _pictureSizesConfig_initializers, ""));
767
+ __runInitializers(this, _pictureSizesConfig_extraInitializers);
768
+ }
769
+ };
770
+ })();
771
+ //#endregion
772
+ export { SbbImageElement as t };
773
+
774
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UuY29tcG9uZW50LUJEMGpjLXUtLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9pbWFnZS9pbWFnZS5zY3NzP2lubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9pbWFnZS9pbWFnZS5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAtLXNiYi1pbWFnZS1hc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgLS1zYmItaW1hZ2UtYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoXG4gICAgLS1zYmItZGlzYWJsZS1hbmltYXRpb24tZHVyYXRpb24sXG4gICAgdmFyKC0tc2JiLWFuaW1hdGlvbi1kdXJhdGlvbi00eClcbiAgKTtcbiAgLS1zYmItaW1hZ2Utb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi1ib3JkZXItcmFkaXVzLTR4KTtcbn1cblxuLnNiYi1pbWFnZV9faW1nIHtcbiAgb3BhY2l0eTogMC4wMDAwMDE7XG5cbiAgOmhvc3QoOnN0YXRlKGxvYWRlZCkpICYge1xuICAgIG9wYWNpdHk6IDAuOTk5OTk5O1xuICB9XG5cbiAgOmhvc3QoOm5vdChbc2tpcC1scWlwXSkpICYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgfVxufVxuXG4uc2JiLWltYWdlX19ibHVycmVkIHtcbiAgOmhvc3QoOnN0YXRlKGxvYWRlZCkpICYge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLy8gQXZvaWRzIHVud2FudGVkIHNwYWNlIG9yIHNtYWxsIGNyb3BwaW5nXG5waWN0dXJlIHtcbiAgZGlzcGxheTogY29udGVudHM7XG59XG5cbi8vIEFmdGVyIHN1Y2Nlc3NmdWwgbG9hZGluZyBhbiBpbWFnZSwgdGhlIGxvYWRlZCBpbWFnZSBpcyBmYWRlZCBpbiBvdmVyIHRoZSBibHVycmVkIGxxaXAgaW1hZ2Ugd2l0aCBhIHNob3J0IHRyYW5zaXRpb24uXG4vLyBUbyBzdXBwb3J0IHRyYW5zcGFyZW50IGltYWdlcywgd2UgbmVlZCBhbHNvIHRvIGZhZGUgb3V0IHRoZSBibHVycmVkIGxxaXAgaW1hZ2UuXG4vLyBUaGlzIGlzIG5vdCBwZXJmZWN0IGluIHRoZSBjYXNlIG9mIGEgbm9uIHRyYW5zcGFyZW50IGltYWdlLCBidXQgZG9lcyBub3QgbG9vayB0aGF0IGJhZC5cbjppcyguc2JiLWltYWdlX19pbWcsIC5zYmItaW1hZ2VfX2JsdXJyZWQpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogdmFyKC0tc2JiLWltYWdlLW9iamVjdC1maXQpO1xuICBvYmplY3QtcG9zaXRpb246IHZhcigtLXNiYi1pbWFnZS1vYmplY3QtcG9zaXRpb24pO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXNiYi1pbWFnZS1hbmltYXRpb24tZHVyYXRpb24pIHZhcigtLXNiYi1hbmltYXRpb24tZWFzaW5nKTtcbn1cblxuLnNiYi1pbWFnZV9fd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYXNwZWN0LXJhdGlvOiB2YXIoLS1zYmItaW1hZ2UtYXNwZWN0LXJhdGlvKTtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiIsImltcG9ydCB7XG4gIFNiYkJyZWFrcG9pbnRMYXJnZU1heCxcbiAgU2JiQnJlYWtwb2ludExhcmdlTWluLFxuICBTYmJCcmVha3BvaW50U21hbGxNYXgsXG4gIFNiYkJyZWFrcG9pbnRTbWFsbE1pbixcbiAgU2JiQnJlYWtwb2ludFVsdHJhTWF4LFxuICBTYmJCcmVha3BvaW50VWx0cmFNaW4sXG4gIFNiYkJyZWFrcG9pbnRaZXJvTWF4LFxuICBTYmJCcmVha3BvaW50WmVyb01pbixcbn0gZnJvbSAnQHNiYi1lc3RhL2x5bmUtZGVzaWduLXRva2Vucyc7XG5pbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5VmFsdWVzLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxuICB1bnNhZmVDU1MsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBldmVudE9wdGlvbnMsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJFbGVtZW50IH0gZnJvbSAnLi4vY29yZS9iYXNlLWVsZW1lbnRzLnRzJztcbmltcG9ydCB7IGZvcmNlVHlwZSB9IGZyb20gJy4uL2NvcmUvZGVjb3JhdG9ycy50cyc7XG5pbXBvcnQgeyBib3hTaXppbmdTdHlsZXMgfSBmcm9tICcuLi9jb3JlL3N0eWxlcy50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2ltYWdlLnNjc3M/aW5saW5lJztcblxuZXhwb3J0IGludGVyZmFjZSBJbnRlcmZhY2VJbWFnZUF0dHJpYnV0ZXNTaXplc0NvbmZpZyB7XG4gIGJyZWFrcG9pbnRzOiBJbnRlcmZhY2VJbWFnZUF0dHJpYnV0ZXNTaXplc0NvbmZpZ0JyZWFrcG9pbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbnRlcmZhY2VJbWFnZUF0dHJpYnV0ZXNTaXplc0NvbmZpZ0JyZWFrcG9pbnQge1xuICBpbWFnZToge1xuICAgIGhlaWdodDogbnVtYmVyO1xuICAgIHdpZHRoOiBudW1iZXI7XG4gIH07XG4gIG1lZGlhUXVlcmllczogSW50ZXJmYWNlSW1hZ2VBdHRyaWJ1dGVzU2l6ZXNDb25maWdNZWRpYVF1ZXJ5W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZXJmYWNlSW1hZ2VBdHRyaWJ1dGVzU2l6ZXNDb25maWdNZWRpYVF1ZXJ5IHtcbiAgY29uZGl0aW9uRmVhdHVyZTogc3RyaW5nO1xuICBjb25kaXRpb25GZWF0dXJlVmFsdWU6IHtcbiAgICBseW5lRGVzaWduVG9rZW46IGJvb2xlYW47XG4gICAgdmFsdWU6IHN0cmluZztcbiAgfTtcbiAgY29uZGl0aW9uT3BlcmF0b3I6IGZhbHNlO1xufVxuXG4vKipcbiAqIHdlIGNoZWNrIHRoZSBzdHJ1Y3R1cmUgb2YgdGhlIGRhdGEgbWFudWFsbHksIHNvIGl0J3Mgc2FmZSB0byB1c2UgYGFueWAgYXMgcmV0dXJuIHR5cGVcbiAqL1xuY29uc3QgaW1hZ2VIZWxwZXJHZXRCcmVha3BvaW50cyA9IChcbiAganNvblN0cmluZzogc3RyaW5nLFxuKTogSW50ZXJmYWNlSW1hZ2VBdHRyaWJ1dGVzU2l6ZXNDb25maWdCcmVha3BvaW50W10gPT4ge1xuICBpZiAoIWpzb25TdHJpbmcgfHwganNvblN0cmluZy5sZW5ndGggPT09IDApIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICAvLyBtYWtlIHN1cmUgdGhhdCB3ZSBoYXZlIGBicmVha3BvaW50c2Aga2V5IGluIG9iamVjdFxuICBjb25zdCBsb2dXYXJuaW5nID0gaW1wb3J0Lm1ldGEuZW52LkRFVlxuICAgID8gKCkgPT5cbiAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICdzYmItaW1hZ2UgZXJyb3I6IGF0dHJpYnV0ZSBicmVha3BvaW50cyBoYXMgd3JvbmcgZGF0YSBmb3JtYXQuIFJlZmVyZW5jZSB0aGUgZG9jdW1lbnRhdGlvbiB0byBzZWUgaG93IHlvdSBzaG91bGQgZm9ybWF0IHRoZSBkYXRhIGZvciB0aGlzIGF0dHJpYnV0ZS4nLFxuICAgICAgICApXG4gICAgOiBudWxsO1xuICBsZXQganNvbk9iamVjdDogSW50ZXJmYWNlSW1hZ2VBdHRyaWJ1dGVzU2l6ZXNDb25maWc7XG5cbiAgdHJ5IHtcbiAgICBqc29uT2JqZWN0ID0gSlNPTi5wYXJzZShqc29uU3RyaW5nKTtcbiAgfSBjYXRjaCB7XG4gICAgbG9nV2FybmluZz8uKCk7XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgaWYgKCFqc29uT2JqZWN0LmJyZWFrcG9pbnRzIHx8IGpzb25PYmplY3QuYnJlYWtwb2ludHMubGVuZ3RoID09PSAwKSB7XG4gICAgbG9nV2FybmluZz8uKCk7XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgLy8gbWFrZSBzdXJlIHdlIGdldCBhbiBhcnJheSBvZiBicmVha3BvaW50c1xuICBpZiAoIUFycmF5LmlzQXJyYXkoanNvbk9iamVjdC5icmVha3BvaW50cykpIHtcbiAgICBsb2dXYXJuaW5nPy4oKTtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICAvKipcbiAgICogMS4gbWFrZSBzdXJlIHRoYXQgZWFjaCBlbnRyeSB3aXRoaW4gdGhlIGJyZWFrcG9pbnRzIG9iamVjdCBjb250YWlucyBvbmx5IGFsbG93ZWQga2V5c1xuICAgKiAyLiBtYWtlIHN1cmUgdGhhdCBhbGwgbmVjZXNzYXJ5IGtleXMgYXJlIHByZXNlbnRcbiAgICovXG4gIGxldCB3cm9uZ0tleURldGVjdGVkID0gZmFsc2U7XG4gIGxldCBtaXNzaW5nS2V5RGV0ZWN0ZWQgPSBmYWxzZTtcblxuICBjb25zdCBhbGxvd2VkS2V5cyA9IFsnaW1hZ2UnLCAnbWVkaWFRdWVyaWVzJ107XG5cbiAganNvbk9iamVjdC5icmVha3BvaW50cy5mb3JFYWNoKChicmVha3BvaW50KSA9PiB7XG4gICAgY29uc3QgYnJlYWtwb2ludEtleXMgPSBPYmplY3Qua2V5cyhicmVha3BvaW50KTtcblxuICAgIGJyZWFrcG9pbnRLZXlzLmZvckVhY2goKGJyZWFrcG9pbnRLZXkpID0+IHtcbiAgICAgIGlmICghYWxsb3dlZEtleXMuaW5jbHVkZXMoYnJlYWtwb2ludEtleSkpIHtcbiAgICAgICAgd3JvbmdLZXlEZXRlY3RlZCA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBhbGxvd2VkS2V5cy5mb3JFYWNoKChhbGxvd2VkS2V5KSA9PiB7XG4gICAgICBpZiAoIWJyZWFrcG9pbnRLZXlzLmluY2x1ZGVzKGFsbG93ZWRLZXkpKSB7XG4gICAgICAgIG1pc3NpbmdLZXlEZXRlY3RlZCA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xuXG4gIGlmICh3cm9uZ0tleURldGVjdGVkIHx8IG1pc3NpbmdLZXlEZXRlY3RlZCkge1xuICAgIGxvZ1dhcm5pbmc/LigpO1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIHJldHVybiBqc29uT2JqZWN0LmJyZWFrcG9pbnRzO1xufTtcblxuY29uc3QgZXZlbnRMaXN0ZW5lck9wdGlvbnMgPSB7XG4gIHBhc3NpdmU6IHRydWUsXG59O1xuXG5jb25zdCBicmVha3BvaW50TWFwOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAnc2JiLWJyZWFrcG9pbnQtemVyby1taW4nOiBTYmJCcmVha3BvaW50WmVyb01pbixcbiAgJ3NiYi1icmVha3BvaW50LXplcm8tbWF4JzogU2JiQnJlYWtwb2ludFplcm9NYXgsXG4gICdzYmItYnJlYWtwb2ludC1zbWFsbC1taW4nOiBTYmJCcmVha3BvaW50U21hbGxNaW4sXG4gICdzYmItYnJlYWtwb2ludC1zbWFsbC1tYXgnOiBTYmJCcmVha3BvaW50U21hbGxNYXgsXG4gICdzYmItYnJlYWtwb2ludC1sYXJnZS1taW4nOiBTYmJCcmVha3BvaW50TGFyZ2VNaW4sXG4gICdzYmItYnJlYWtwb2ludC1sYXJnZS1tYXgnOiBTYmJCcmVha3BvaW50TGFyZ2VNYXgsXG4gICdzYmItYnJlYWtwb2ludC11bHRyYS1taW4nOiBTYmJCcmVha3BvaW50VWx0cmFNaW4sXG4gICdzYmItYnJlYWtwb2ludC11bHRyYS1tYXgnOiBTYmJCcmVha3BvaW50VWx0cmFNYXgsXG59O1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGFuIGltYWdlLlxuICpcbiAqIEBjc3Nwcm9wIFstLXNiYi1pbWFnZS1hc3BlY3QtcmF0aW89YXV0b10gLSBDYW4gYmUgdXNlZCB0byBvdmVycmlkZSBgYXNwZWN0UmF0aW9gIHByb3BlcnR5LlxuICogVGhpcyB3YXkgd2UgY2FuIGhhdmUsIGZvciBleGFtcGxlLCBhbiBpbWFnZSBjb21wb25lbnQgd2l0aCBhbiBhc3BlY3RcbiAqIHJhdGlvIG9mIDQvMyBpbiBzbWFsbGVyIHZpZXdwb3J0cyBhbmQgMTYvOSBpbiBsYXJnZXIgdmlld3BvcnRzLlxuICogQGNzc3Byb3AgWy0tc2JiLWltYWdlLW9iamVjdC1wb3NpdGlvbl0gLSBDYW4gYmUgdXNlZCB0byBzZXQgdGhlIG9iamVjdC1wb3NpdGlvbiBDU1MgcHJvcGVydHkgb2YgdGhlIGltYWdlIGl0c2VsZiBpZiB0aGUgaW1hZ2UgaXRzZWxmIGlzIGNyb3BwZWQuXG4gKiBAY3NzcHJvcCBbLS1zYmItaW1hZ2Utb2JqZWN0LWZpdD1jb3Zlcl0gLSBDYW4gYmUgdXNlZCB0byBzZXQgdGhlIG9iamVjdC1maXQgQ1NTIHByb3BlcnR5IG9mIHRoZSBpbWFnZSBpdHNlbGYgaWYgdGhlIGltYWdlIGl0c2VsZiBpcyBjcm9wcGVkLlxuICovXG5leHBvcnQgY2xhc3MgU2JiSW1hZ2VFbGVtZW50IGV4dGVuZHMgU2JiRWxlbWVudCB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItaW1hZ2UnO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCB1bnNhZmVDU1Moc3R5bGUpXTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgZXJyb3I6ICdlcnJvcicsXG4gICAgbG9hZDogJ2xvYWQnLFxuICB9IGFzIGNvbnN0O1xuXG4gIHByaXZhdGUgX2NhcHRpb25FbGVtZW50PzogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX2xpbmtzSW5DYXB0aW9uPzogTm9kZUxpc3RPZjxIVE1MTGlua0VsZW1lbnQ+O1xuICBwcml2YXRlIF9jb25maWcgPSB7XG4gICAgbm9uUmV0aW5hUXVhbGl0eTogJzQ1JyxcbiAgICByZXRpbmFRdWFsaXR5OiAnMjAnLFxuICB9O1xuXG4gIC8qKlxuICAgKiBBbiBhbHQgdGV4dCBpcyBub3QgYWx3YXlzIG5lY2Vzc2FyeSAoZS5nLiBpbiB0ZWFzZXIgY2FyZHMgd2hlblxuICAgKiBhZGRpdGlvbmFsIGxpbmsgdGV4dCBpcyBwcm92aWRlZCkuIEluIHRoaXMgY2FzZSB3ZSBjYW4gbGVhdmVcbiAgICogdGhlIHZhbHVlIG9mIHRoZSBhbHQgYXR0cmlidXRlIGJsYW5rLCBidXQgdGhlIGF0dHJpYnV0ZSBpdHNlbGZcbiAgICogc3RpbGwgbmVlZHMgdG8gYmUgcHJlc2VudC4gVGhhdCB3YXkgd2UgY2FuIHNpZ25hbCBhc3Npc3RpdmVcbiAgICogdGVjaG5vbG9neSwgdGhhdCB0aGV5IGNhbiBza2lwIHRoZSBpbWFnZS5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgYWx0OiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogSWYgc2V0IHRvIGZhbHNlLCB3ZSBzaG93IGEgYmx1cnJlZCB2ZXJzaW9uIG9mIHRoZSBpbWFnZSBhc1xuICAgKiBwbGFjZWhvbGRlciBiZWZvcmUgdGhlIGFjdHVhbCBpbWFnZSBzaG93cyB1cC4gVGhpcyB3aWxsIGhlbHBcbiAgICogdG8gaW1wcm92ZSB0aGUgcGVyY2VpdmVkIGxvYWRpbmcgcGVyZm9ybWFuY2UuIFJlYWQgbW9yZSBhYm91dFxuICAgKiB0aGUgaWRlYSBvZiBscWlwIGhlcmU6XG4gICAqIGh0dHBzOi8vbWVkaXVtLmNvbS9AaW1naXgvbHFpcC15b3VyLWltYWdlcy1mb3ItZmFzdC1sb2FkaW5nLTI1MjNkOWVlNGE2MlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3NraXAtbHFpcCcsIHR5cGU6IEJvb2xlYW4sIHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIGFjY2Vzc29yIHNraXBMcWlwOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNldCB0aGlzIHRvIHRydWUsIGlmIHlvdSB3YW50IHRvIHBhc3MgYSBjdXN0b20gZm9jYWwgcG9pbnRcbiAgICogZm9yIHRoZSBpbWFnZS4gU2VlIGZ1bGwgZG9jdW1lbnRhdGlvbiBoZXJlOlxuICAgKiBodHRwczovL2RvY3MuaW1naXguY29tL2FwaXMvcmVuZGVyaW5nL2ZvY2FscG9pbnQtY3JvcFxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2N1c3RvbS1mb2NhbC1wb2ludCcsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIGN1c3RvbUZvY2FsUG9pbnQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSWYgdGhlIGxhenkgcHJvcGVydHkgaXMgc2V0IHRvIHRydWUsIHRoZSBtb2R1bGUgd2lsbCBhdXRvbWF0aWNhbGx5XG4gICAqIGNoYW5nZSB0aGUgZGVjb2RpbmcgdG8gYXN5bmMsIG90aGVyd2lzZSB0aGUgZGVjb2RpbmcgaXMgc2V0IHRvIGF1dG9cbiAgICogd2hpY2ggbGVhdmVzIHRoZSBoYW5kbGluZyB1cCB0byB0aGUgYnJvd3Nlci4gUmVhZCBtb3JlIGFib3V0IHRoZVxuICAgKiBkZWNvZGluZyBhdHRyaWJ1dGUgaGVyZTpcbiAgICogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0hUTUxJbWFnZUVsZW1lbnQvZGVjb2RpbmdcbiAgICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyBhY2Nlc3NvciBkZWNvZGluZzogJ3N5bmMnIHwgJ2FzeW5jJyB8ICdhdXRvJyA9ICdhdXRvJztcblxuICAvKipcbiAgICogU2V0IHRoaXMgdG8gdHJ1ZSwgdG8gcmVjZWl2ZSB2aXN1YWwgZ3VpZGFuY2Ugd2hlcmUgdGhlIGN1c3RvbSBmb2NhbFxuICAgKiBwb2ludCBpcyBjdXJyZW50bHkgc2V0LlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ZvY2FsLXBvaW50LWRlYnVnJywgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgYWNjZXNzb3IgZm9jYWxQb2ludERlYnVnOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFBhc3MgaW4gYSBmbG9hdGluZyBudW1iZXIgYmV0d2VlbiAwIChsZWZ0KSBhbmQgMSAocmlnaHQpLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2ZvY2FsLXBvaW50LXgnLCB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIGZvY2FsUG9pbnRYOiBudW1iZXIgPSAxO1xuXG4gIC8qKlxuICAgKiBQYXNzIGluIGEgZmxvYXRpbmcgbnVtYmVyIGJldHdlZW4gMCAodG9wKSBhbmQgMSAoYm90dG9tKS5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdmb2NhbC1wb2ludC15JywgdHlwZTogTnVtYmVyIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBmb2NhbFBvaW50WTogbnVtYmVyID0gMTtcblxuICAvKipcbiAgICogUmlnaHQgbm93IHRoZSBtb2R1bGUgaXMgaGVhdmlseSBjb3VwbGVkIHdpdGggdGhlIGltYWdlIGRlbGl2ZXJ5XG4gICAqIHNlcnZpY2UgaW1naXggYW5kIGRlcGVuZHMgb24gdGhlIG9yaWdpbmFsIGZpbGVzIGJlaW5nIHN0b3JlZFxuICAgKiBpbnNpZGUgQUVNLiBZb3UgY2FuIHBhc3MgaW4gYW55IGh0dHBzOi8vY2RuLmltZy5zYmIuY2ggaW1nXG4gICAqIHNyYyBhZGRyZXNzIHlvdSBmaW5kIG9uIHNiYi5jaCB0byBwbGF5IGFyb3VuZCB3aXRoIGl0LiBKdXN0XG4gICAqIHN0cmlwIHRoZSB1cmwgcGFyYW1ldGVycyBhbmQgcGFzdGUgaW4gdGhlIHBsYWluIGZpbGUgYWRkcmVzcy5cbiAgICogSWYgeW91IHdhbnQgdG8ga25vdyBob3cgdG8gYmVzdCB3b3JrIHdpdGggdGhpcyBtb2R1bGUgd2l0aFxuICAgKiBpbWFnZXMgY29taW5nIGZyb20gYSBkaWZmZXJlbnQgc291cmNlLCBwbGVhc2UgY29udGFjdCB0aGVcbiAgICogTFlORSBDb3JlIFRlYW0uXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnaW1hZ2Utc3JjJyB9KVxuICBwdWJsaWMgYWNjZXNzb3IgaW1hZ2VTcmM6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgaW1wb3J0YW5jZSBhdHRyaWJ1dGUgaXMgZmFpcmx5IG5ldyBhdHRyaWJ1dGUgd2hpY2ggc2hvdWxkXG4gICAqIGhlbHAgdGhlIGJyb3dzZXIgZGVjaWRlIHdoaWNoIHJlc291cmNlcyBpdCBzaG91bGQgcHJpb3JpdGlzZVxuICAgKiBkdXJpbmcgcGFnZSBsb2FkLiBXZSB3aWxsIHNldCB0aGUgYXR0cmlidXRlIHZhbHVlIGJhc2VkIG9uIHRoZVxuICAgKiB2YWx1ZSwgd2UgcmVjZWl2ZSBpbiB0aGUgbG9hZGluZyBhdHRyaWJ1dGUuICdlYWdlcicsIHdoaWNoIHdlIHVzZVxuICAgKiBmb3IgdGhlIGxhcmdlc3QgaW1hZ2Ugd2l0aGluIHRoZSBpbml0aWFsIHZpZXdwb3J0LCB3aWxsIHNldCB0aGVcbiAgICogYXR0cmlidXRlIHZhbHVlIHRvICdoaWdoJy4gJ2xhenknLCB3aGljaCB3ZSB1c2UgZm9yIGltYWdlcyBiZWxvd1xuICAgKiB0aGUgZm9sZCwgd2lsbCBzZXQgdGhlIGF0dHJpYnV0ZSB2YWx1ZSB0byAnbG93Jy5cbiAgICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyBhY2Nlc3NvciBpbXBvcnRhbmNlOiAnYXV0bycgfCAnaGlnaCcgfCAnbG93JyA9ICdoaWdoJztcblxuICAvKipcbiAgICogV2l0aCB0aGUgc3VwcG9ydCBvZiBuYXRpdmUgaW1hZ2UgbGF6eSBsb2FkaW5nLCB3ZSBjYW4gbm93XG4gICAqIGRlY2lkZSB3aGV0aGVyIHdlIHdhbnQgdG8gbG9hZCB0aGUgaW1hZ2UgaW1tZWRpYXRlbHkgb3Igb25seVxuICAgKiBvbmNlIGl0IGlzIGNsb3NlIHRvIHRoZSB2aXNpYmxlIHZpZXdwb3J0LiBUaGUgdmFsdWUgZWFnZXIgaXNcbiAgICogYmVzdCB1c2VkIGZvciBpbWFnZXMgd2l0aGluIHRoZSBpbml0aWFsIHZpZXdwb3J0LiBXZSB3YW50IHRvXG4gICAqIGxvYWQgdGhlc2UgaW1hZ2VzIGFzIGZhc3QgYXMgcG9zc2libGUgdG8gaW1wcm92ZSB0aGUgQ29yZSBXZWJcbiAgICogVml0YWxzIHZhbHVlcy4gbGF6eSBvbiB0aGUgb3RoZXIgaGFuZCB3b3JrcyBiZXN0IGZvciBpbWFnZXNcbiAgICogd2hpY2ggYXJlIGZ1cnRoZXIgZG93biB0aGUgcGFnZSBvciBpbnZpc2libGUgZHVyaW5nIHRoZSBsb2FkaW5nXG4gICAqIG9mIHRoZSBpbml0aWFsIHZpZXdwb3J0LlxuICAgKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIGFjY2Vzc29yIGxvYWRpbmc6ICdlYWdlcicgfCAnbGF6eScgPSAnZWFnZXInO1xuXG4gIC8qKlxuICAgKiBXaXRoIGBwZXJmb3JtYW5jZS5tYXJrYCB5b3UgY2FuIGxvZyBhIHRpbWVzdGFtcCBhc3NvY2lhdGVkIHdpdGhcbiAgICogdGhlIG5hbWUgeW91IGRlZmluZSBpbiBwZXJmb3JtYW5jZU1hcmsgd2hlbiBhIGNlcnRhaW4gZXZlbnQgaXNcbiAgICogaGFwcGVuaW5nLiBJbiBvdXIgY2FzZSB3ZSB3aWxsIGxvZyB0aGUgYHBlcmZvcm1hbmNlLm1hcmtgIGludG9cbiAgICogdGhlIFBlcmZvcm1hbmNlRW50cnkgQVBJIG9uY2UgdGhlIGltYWdlIGlzIGZ1bGx5IGxvYWRlZC5cbiAgICogUGVyZm9ybWFuY2UgbW9uaXRvcmluZyB0b29scyBsaWtlIFNwZWVkQ3VydmUgb3IgTGlnaHRob3VzZSBhcmVcbiAgICogdGhlbiBhYmxlIHRvIGdyYWIgdGhlc2UgZW50cmllcyBmcm9tIHRoZSBQZXJmb3JtYW5jZUVudHJ5IEFQSVxuICAgKiBhbmQgZ2l2ZSB1cyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGFuZCBpbnNpZ2h0cyBhYm91dCBvdXIgcGFnZVxuICAgKiBsb2FkaW5nIGJlaGF2aW9yLiBXZSBhcmUgdGhlbiBhbHNvIGFibGUgdG8gbW9uaXRvciB0aGVzZVxuICAgKiB2YWx1ZXMgb3ZlciBhIGxvbmcgcGVyaW9kIHRvIHNlZSBpZiBvdXIgcGVyZm9ybWFuY2VcbiAgICogaW5jcmVhc2VzIG9yIGRlY3JlYXNlcyBvdmVyIHRpbWUuIEJlc3QgdG8gdXNlIGxvd2VyY2FzZSBzdHJpbmdzXG4gICAqIGhlcmUsIHNlcGFyYXRlIHdvcmRzIHdpdGggdW5kZXJzY29yZXMgb3IgZGFzaGVzLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3BlcmZvcm1hbmNlLW1hcmsnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBwZXJmb3JtYW5jZU1hcms6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBXaXRoIHRoZSBwaWN0dXJlU2l6ZXNDb25maWcgb2JqZWN0LCB5b3UgY2FuIHBhc3MgaW4gaW5mb3JtYXRpb25cbiAgICogaW50byBpbWFnZSBhYm91dCB3aGF0IGtpbmQgb2Ygc291cmNlIGVsZW1lbnRzIHNob3VsZCBnZXRcbiAgICogcmVuZGVyZWQuIG1lZGlhUXVlcmllcyBhY2NlcHRzIG11bHRpcGxlIE1lZGlhIFF1ZXJ5IGVudHJpZXNcbiAgICogd2hpY2ggY2FuIGdldCBjb21iaW5lZCBieSBkZWZpbmluZyBhIGNvbmRpdGlvbk9wZXJhdG9yLlxuICAgKiBUeXBlIGlzOiBzdHJpbmdpZmllZCBJbnRlcmZhY2VJbWFnZUF0dHJpYnV0ZXNTaXplc0NvbmZpZy1PYmplY3RcbiAgICogQW4gZXhhbXBsZSBjb3VsZCBsb29rIGxpa2UgdGhpczpcbiAgICoge1xuICAgKiAgICBcImJyZWFrcG9pbnRzXCI6IFtcbiAgICogICAgICB7XG4gICAqICAgICAgICBcImltYWdlXCI6IHtcbiAgICogICAgICAgICAgXCJoZWlnaHRcIjogXCI2NzVcIixcbiAgICogICAgICAgICAgXCJ3aWR0aFwiOiBcIjEyMDBcIlxuICAgKiAgICAgICAgfSxcbiAgICogICAgICAgIFwibWVkaWFRdWVyaWVzXCI6IFtcbiAgICogICAgICAgICAge1xuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVwiOiBcIm1pbi13aWR0aFwiLFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVZhbHVlXCI6IHtcbiAgICogICAgICAgICAgICAgIFwibHluZURlc2lnblRva2VuXCI6IHRydWUsXG4gICAqICAgICAgICAgICAgICBcInZhbHVlXCI6IFwic2JiLWJyZWFrcG9pbnQtbGFyZ2UtbWluXCJcbiAgICogICAgICAgICAgICB9LFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uT3BlcmF0b3JcIjogZmFsc2VcbiAgICogICAgICAgICAgfVxuICAgKiAgICAgICAgXVxuICAgKiAgICAgIH0sXG4gICAqICAgICAge1xuICAgKiAgICAgICAgXCJpbWFnZVwiOiB7XG4gICAqICAgICAgICAgIFwiaGVpZ2h0XCI6IFwiNTQ5XCIsXG4gICAqICAgICAgICAgIFwid2lkdGhcIjogXCI5NzZcIlxuICAgKiAgICAgICAgfSxcbiAgICogICAgICAgIFwibWVkaWFRdWVyaWVzXCI6IFtcbiAgICogICAgICAgICAge1xuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVwiOiBcIm1pbi13aWR0aFwiLFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVZhbHVlXCI6IHtcbiAgICogICAgICAgICAgICAgIFwibHluZURlc2lnblRva2VuXCI6IHRydWUsXG4gICAqICAgICAgICAgICAgICBcInZhbHVlXCI6IFwic2JiLWJyZWFrcG9pbnQtc21hbGwtbWluXCJcbiAgICogICAgICAgICAgICB9LFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uT3BlcmF0b3JcIjogZmFsc2VcbiAgICogICAgICAgICAgfVxuICAgKiAgICAgICAgXVxuICAgKiAgICAgIH0sXG4gICAqICAgICAge1xuICAgKiAgICAgICAgXCJpbWFnZVwiOiB7XG4gICAqICAgICAgICAgIFwiaGVpZ2h0XCI6IFwiMTgwXCIsXG4gICAqICAgICAgICAgIFwid2lkdGhcIjogXCIzMjBcIlxuICAgKiAgICAgICAgfSxcbiAgICogICAgICAgIFwibWVkaWFRdWVyaWVzXCI6IFtcbiAgICogICAgICAgICAge1xuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVwiOiBcIm1heC13aWR0aFwiLFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVZhbHVlXCI6IHtcbiAgICogICAgICAgICAgICAgIFwibHluZURlc2lnblRva2VuXCI6IHRydWUsXG4gICAqICAgICAgICAgICAgICBcInZhbHVlXCI6IFwic2JiLWJyZWFrcG9pbnQtc21hbGwtbWF4XCJcbiAgICogICAgICAgICAgICB9LFxuICAgKiAgICAgICAgICAgIFwiY29uZGl0aW9uT3BlcmF0b3JcIjogXCJhbmRcIlxuICAgKiAgICAgICAgICB9LFxuICAgKiAgICAgICAgICB7XG4gICAqICAgICAgICAgICAgXCJjb25kaXRpb25GZWF0dXJlXCI6IFwib3JpZW50YXRpb25cIixcbiAgICogICAgICAgICAgICBcImNvbmRpdGlvbkZlYXR1cmVWYWx1ZVwiOiB7XG4gICAqICAgICAgICAgICAgICBcImx5bmVEZXNpZ25Ub2tlblwiOiBmYWxzZSxcbiAgICogICAgICAgICAgICAgIFwidmFsdWVcIjogXCJsYW5kc2NhcGVcIlxuICAgKiAgICAgICAgICAgIH0sXG4gICAqICAgICAgICAgICAgXCJjb25kaXRpb25PcGVyYXRvclwiOiBmYWxzZVxuICAgKiAgICAgICAgICB9XG4gICAqICAgICAgICBdXG4gICAqICAgICAgfVxuICAgKiAgICBdXG4gICAqICB9XG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAncGljdHVyZS1zaXplcy1jb25maWcnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBwaWN0dXJlU2l6ZXNDb25maWc6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBpbWFnZSBpcyBmaW5pc2hlZCBsb2FkaW5nIG9yIGZhaWxlZCB0byBsb2FkLiAqL1xuICBwdWJsaWMgZ2V0IGNvbXBsZXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3I/LjxIVE1MSW1hZ2VFbGVtZW50PignLnNiYi1pbWFnZV9faW1nJyk/LmNvbXBsZXRlID8/IGZhbHNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIudXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoIXRoaXMuX2NhcHRpb25FbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fbGlua3NJbkNhcHRpb24gPSB0aGlzLl9jYXB0aW9uRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsPEhUTUxMaW5rRWxlbWVudD4oJ2EnKTtcblxuICAgIGlmICghdGhpcy5fbGlua3NJbkNhcHRpb24pIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9hZGRGb2N1c0FiaWxpdHlUb0xpbmtzSW5DYXB0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIF9sb2dQZXJmb3JtYW5jZU1hcmtzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnBlcmZvcm1hbmNlTWFyaykge1xuICAgICAgcGVyZm9ybWFuY2UuY2xlYXJNYXJrcyh0aGlzLnBlcmZvcm1hbmNlTWFyayk7XG4gICAgICBwZXJmb3JtYW5jZS5tYXJrKHRoaXMucGVyZm9ybWFuY2VNYXJrKTtcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBfYWRkRm9jdXNBYmlsaXR5VG9MaW5rc0luQ2FwdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9saW5rc0luQ2FwdGlvbj8uZm9yRWFjaCgobGluaykgPT4ge1xuICAgICAgbGluay5yZW1vdmVBdHRyaWJ1dGUoJ3RhYmluZGV4Jyk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9wcmVwYXJlSW1hZ2VVcmwoYmFzZVVybDogc3RyaW5nIHwgdW5kZWZpbmVkLCBscXVpcCA9IGZhbHNlKTogc3RyaW5nIHtcbiAgICBpZiAoIWJhc2VVcmwgfHwgYmFzZVVybCA9PT0gJycpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICAvLyBDcmVhdGluZyBhIFVSTCB3aXRob3V0IGEgc2NoZW1hIHdpbGwgZmFpbCwgYnV0IGlzIGEgdmFsaWQgaW5wdXQgZm9yIGJhc2VVcmwuXG4gICAgLy8gZS5nLiBpbWFnZS1zcmMgY2FuIGJlIGh0dHBzOi8vZXhhbXBsZS5jb20vbXktaW1hZ2UucG5nIG9yIC9teS1pbWFnZS5wbmdcbiAgICBjb25zdCBpc0Z1bGx5UXVhbGlmaWVkVXJsID0gISFiYXNlVXJsLm1hdGNoKC9eXFx3KzpcXC9cXC8vKTtcbiAgICBjb25zdCBpbWFnZVVybE9iaiA9IGlzRnVsbHlRdWFsaWZpZWRVcmwgPyBuZXcgVVJMKGJhc2VVcmwpIDogbmV3IFVSTChgaHR0cDovL25vb3AvJHtiYXNlVXJsfWApO1xuXG4gICAgaWYgKGxxdWlwKSB7XG4gICAgICAvLyBibHVyIGFuZCBzaXplOiA/Ymx1cj0xMDAmdz0xMDAmaD01NlxuICAgICAgaW1hZ2VVcmxPYmouc2VhcmNoUGFyYW1zLmFwcGVuZCgnYmx1cicsICcxMDAnKTtcbiAgICAgIGltYWdlVXJsT2JqLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ3cnLCAnMTAwJyk7XG4gICAgICBpbWFnZVVybE9iai5zZWFyY2hQYXJhbXMuYXBwZW5kKCdoJywgJzU2Jyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIENETiBJbmZvcm1hdGlvbjogaHR0cHM6Ly9kb2NzLmltZ2l4LmNvbS9hcGlzL3JlbmRlcmluZ1xuICAgICAgLy8gcGFyYW0uYXV0bzogP2F1dG89Zm9ybWF0LGNvbXByZXNzLGNzPXRpbnlzcmdiXG4gICAgICBpbWFnZVVybE9iai5zZWFyY2hQYXJhbXMuYXBwZW5kKCdhdXRvJywgJ2Zvcm1hdCxjb21wcmVzcyxjcz10aW55c3JnYicpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmN1c3RvbUZvY2FsUG9pbnQpIHtcbiAgICAgIC8vIGNyb3A6IGAmZml0PWNyb3AmY3JvcD1mb2NhbHBvaW50JmZwLXg9JHt0aGlzLmZvY2FsUG9pbnRYfSZmcC15PSR7dGhpcy5mb2NhbFBvaW50WX0mZnAtej0xYCxcbiAgICAgIGltYWdlVXJsT2JqLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2ZpdCcsICdjcm9wJyk7XG4gICAgICBpbWFnZVVybE9iai5zZWFyY2hQYXJhbXMuYXBwZW5kKCdjcm9wJywgJ2ZvY2FscG9pbnQnKTtcbiAgICAgIGltYWdlVXJsT2JqLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2ZwLXgnLCB0aGlzLmZvY2FsUG9pbnRYLnRvU3RyaW5nKDEwKSk7XG4gICAgICBpbWFnZVVybE9iai5zZWFyY2hQYXJhbXMuYXBwZW5kKCdmcC15JywgdGhpcy5mb2NhbFBvaW50WS50b1N0cmluZygxMCkpO1xuICAgICAgaW1hZ2VVcmxPYmouc2VhcmNoUGFyYW1zLmFwcGVuZCgnZnAteicsICcxJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZm9jYWxQb2ludERlYnVnKSB7XG4gICAgICAvLyBmb2NhbFBvaW50RGVidWc6ICcmZnAtZGVidWc9dHJ1ZSdcbiAgICAgIGltYWdlVXJsT2JqLnNlYXJjaFBhcmFtcy5hcHBlbmQoJ2ZwLWRlYnVnJywgJ3RydWUnKTtcbiAgICB9XG5cbiAgICAvLyBJbiBjYXNlIG9mIFwibm9vcFwiIGhvc3QsIHdlIGRvbid0IHJldHVybiB0aGUgaG9zdCBhbmQgbXVzdCByZW1vdmUgdGhlXG4gICAgLy8gc3RhcnRpbmcgYC9gIG9mIHRoZSBwYXRobmFtZS5cbiAgICByZXR1cm4gaXNGdWxseVF1YWxpZmllZFVybFxuICAgICAgPyBpbWFnZVVybE9iai5ocmVmXG4gICAgICA6IGltYWdlVXJsT2JqLnBhdGhuYW1lLnN1YnN0cmluZygxKSArIGltYWdlVXJsT2JqLnNlYXJjaDtcbiAgfVxuXG4gIHByaXZhdGUgX3ByZXBhcmVQaWN0dXJlU2l6ZUNvbmZpZ3MoKTogSW50ZXJmYWNlSW1hZ2VBdHRyaWJ1dGVzU2l6ZXNDb25maWdCcmVha3BvaW50W10ge1xuICAgIGxldCBwaWN0dXJlU2l6ZXNDb25maWc7XG5cbiAgICBpZiAodGhpcy5waWN0dXJlU2l6ZXNDb25maWcpIHtcbiAgICAgIHBpY3R1cmVTaXplc0NvbmZpZyA9IHRoaXMucGljdHVyZVNpemVzQ29uZmlnO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBkZWZhdWx0IGNvbmZpZ1xuICAgICAgcGljdHVyZVNpemVzQ29uZmlnID0gYHtcbiAgICAgICAgXCJicmVha3BvaW50c1wiOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgXCJpbWFnZVwiOiB7XG4gICAgICAgICAgICAgIFwiaGVpZ2h0XCI6IDY3NSxcbiAgICAgICAgICAgICAgXCJ3aWR0aFwiOiAxMjAwXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgXCJtZWRpYVF1ZXJpZXNcIjogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgXCJjb25kaXRpb25GZWF0dXJlXCI6IFwibWluLXdpZHRoXCIsXG4gICAgICAgICAgICAgICAgXCJjb25kaXRpb25GZWF0dXJlVmFsdWVcIjoge1xuICAgICAgICAgICAgICAgICAgXCJseW5lRGVzaWduVG9rZW5cIjogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIFwidmFsdWVcIjogXCJzYmItYnJlYWtwb2ludC1sYXJnZS1taW5cIlxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXCJjb25kaXRpb25PcGVyYXRvclwiOiBmYWxzZVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBcImltYWdlXCI6IHtcbiAgICAgICAgICAgICAgXCJoZWlnaHRcIjogNTQ5LFxuICAgICAgICAgICAgICBcIndpZHRoXCI6IDk3NlxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFwibWVkaWFRdWVyaWVzXCI6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVwiOiBcIm1pbi13aWR0aFwiLFxuICAgICAgICAgICAgICAgIFwiY29uZGl0aW9uRmVhdHVyZVZhbHVlXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwibHluZURlc2lnblRva2VuXCI6IHRydWUsXG4gICAgICAgICAgICAgICAgICBcInZhbHVlXCI6IFwic2JiLWJyZWFrcG9pbnQtc21hbGwtbWluXCJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFwiY29uZGl0aW9uT3BlcmF0b3JcIjogZmFsc2VcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgXCJpbWFnZVwiOiB7XG4gICAgICAgICAgICAgIFwiaGVpZ2h0XCI6IDE4MCxcbiAgICAgICAgICAgICAgXCJ3aWR0aFwiOiAzMjBcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBcIm1lZGlhUXVlcmllc1wiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcImNvbmRpdGlvbkZlYXR1cmVcIjogXCJtYXgtd2lkdGhcIixcbiAgICAgICAgICAgICAgICBcImNvbmRpdGlvbkZlYXR1cmVWYWx1ZVwiOiB7XG4gICAgICAgICAgICAgICAgICBcImx5bmVEZXNpZ25Ub2tlblwiOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgXCJ2YWx1ZVwiOiBcInNiYi1icmVha3BvaW50LXplcm8tbWF4XCJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFwiY29uZGl0aW9uT3BlcmF0b3JcIjogZmFsc2VcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgICAgfWA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGltYWdlSGVscGVyR2V0QnJlYWtwb2ludHMocGljdHVyZVNpemVzQ29uZmlnKTtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZU1lZGlhUXVlcnlTdHJpbmcoXG4gICAgbWVkaWFRdWVyaWVzOiBJbnRlcmZhY2VJbWFnZUF0dHJpYnV0ZXNTaXplc0NvbmZpZ01lZGlhUXVlcnlbXSxcbiAgKTogc3RyaW5nIHtcbiAgICBsZXQgbWVkaWFRdWVyeSA9ICcnO1xuXG4gICAgbWVkaWFRdWVyaWVzLmZvckVhY2goKG1xKSA9PiB7XG4gICAgICBjb25zdCBtcUNvbmRpdGlvbiA9IG1xLmNvbmRpdGlvbkZlYXR1cmU7XG4gICAgICBsZXQgbXFWYWx1ZTtcblxuICAgICAgaWYgKG1xLmNvbmRpdGlvbkZlYXR1cmVWYWx1ZS5seW5lRGVzaWduVG9rZW4pIHtcbiAgICAgICAgbXFWYWx1ZSA9IGJyZWFrcG9pbnRNYXBbbXEuY29uZGl0aW9uRmVhdHVyZVZhbHVlLnZhbHVlXSA/PyAnJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIG1xVmFsdWUgPSBtcS5jb25kaXRpb25GZWF0dXJlVmFsdWUudmFsdWU7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1xQ29tYmluZXIgPSBtcS5jb25kaXRpb25PcGVyYXRvciA/IGAgJHttcS5jb25kaXRpb25PcGVyYXRvcn0gYCA6ICcnO1xuXG4gICAgICBtZWRpYVF1ZXJ5ICs9IGAoJHttcUNvbmRpdGlvbn06ICR7bXFWYWx1ZX0pJHttcUNvbWJpbmVyfWA7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gbWVkaWFRdWVyeTtcbiAgfVxuXG4gIEBldmVudE9wdGlvbnMoZXZlbnRMaXN0ZW5lck9wdGlvbnMpXG4gIHByaXZhdGUgX2ltYWdlTG9hZGVkKCk6IHZvaWQge1xuICAgIHRoaXMuX2xvZ1BlcmZvcm1hbmNlTWFya3MoKTtcbiAgICB0aGlzLmludGVybmFscy5zdGF0ZXMuYWRkKCdsb2FkZWQnKTtcblxuICAgIC8qKiBFbWl0cyBlYWNoIHRpbWUgYW4gaW1hZ2UgbG9hZHMuIEUuZy4gbG9hZGluZyBpbWFnZSBmb3IgYSBkaWZmZXJlbnQgdmlld3BvcnQsIHRyaWdnZXJzIHRoZSBsb2FkIGV2ZW50IGFnYWluLiAqL1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2xvYWQnKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBjb25zdCBpbWFnZVVybExRSVAgPSB0aGlzLl9wcmVwYXJlSW1hZ2VVcmwodGhpcy5pbWFnZVNyYywgdHJ1ZSk7XG4gICAgY29uc3QgaW1hZ2VVcmxXaXRoUGFyYW1zID0gdGhpcy5fcHJlcGFyZUltYWdlVXJsKHRoaXMuaW1hZ2VTcmMsIGZhbHNlKTtcblxuICAgIGlmICh0aGlzLmxvYWRpbmcgPT09ICdsYXp5Jykge1xuICAgICAgdGhpcy5kZWNvZGluZyA9ICdhc3luYyc7XG4gICAgICB0aGlzLmltcG9ydGFuY2UgPSAnbG93JztcbiAgICB9XG5cbiAgICBjb25zdCBwaWN0dXJlU2l6ZUNvbmZpZ3MgPSB0aGlzLl9wcmVwYXJlUGljdHVyZVNpemVDb25maWdzKCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgYWx0IGF0dHJpYnV0ZSBzaG91bGQgYWx3YXlzIGJlIHByZXNlbnQgZm9yIHRoZSBpbWcgZWxlbWVudC5cbiAgICAgKiBJZiBpdCBoYXMgYW4gZW1wdHkgc3RyaW5nIGFzIGl0cyB2YWx1ZSwgaXQgaXMgc2ltcGx5IGlnbm9yZWRcbiAgICAgKiBieSBhc3Npc3RpdmUgdGVjaG5vbG9naWVzLiBJZiB3ZSBsZWF2ZSBpdCBvdXQgY29tcGxldGVseSxcbiAgICAgKiB0aGV5IG1pZ2h0IHRyeSB0byBpbnRlcnByZXQgdGhlIGltZyBlbGVtZW50LlxuICAgICAqL1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1pbWFnZV9fd3JhcHBlclwiPlxuICAgICAgICAkeyF0aGlzLnNraXBMcWlwXG4gICAgICAgICAgPyBodG1sYDxpbWdcbiAgICAgICAgICAgICAgYWx0PVwiXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItaW1hZ2VfX2JsdXJyZWRcIlxuICAgICAgICAgICAgICBzcmM9JHtpbWFnZVVybExRSVB9XG4gICAgICAgICAgICAgIHdpZHRoPVwiMTAwMFwiXG4gICAgICAgICAgICAgIGhlaWdodD1cIjU2MlwiXG4gICAgICAgICAgICAgIGxvYWRpbmc9JHt0aGlzLmxvYWRpbmcgPz8gbm90aGluZ31cbiAgICAgICAgICAgICAgZGVjb2Rpbmc9JHt0aGlzLmRlY29kaW5nID8/IG5vdGhpbmd9XG4gICAgICAgICAgICAvPmBcbiAgICAgICAgICA6IG5vdGhpbmd9XG5cbiAgICAgICAgPHBpY3R1cmU+XG4gICAgICAgICAgPCEtLSByZW5kZXIgcGljdHVyZSBlbGVtZW50IHNvdXJjZXMgLS0+XG4gICAgICAgICAgJHtwaWN0dXJlU2l6ZUNvbmZpZ3MubWFwKChjb25maWcpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGltYWdlSGVpZ2h0ID0gY29uZmlnLmltYWdlLmhlaWdodDtcbiAgICAgICAgICAgIGNvbnN0IGltYWdlV2lkdGggPSBjb25maWcuaW1hZ2Uud2lkdGg7XG4gICAgICAgICAgICBjb25zdCBtZWRpYVF1ZXJ5ID0gdGhpcy5fY3JlYXRlTWVkaWFRdWVyeVN0cmluZyhjb25maWcubWVkaWFRdWVyaWVzKTtcbiAgICAgICAgICAgIHJldHVybiBodG1sYFxuICAgICAgICAgICAgICA8c291cmNlXG4gICAgICAgICAgICAgICAgbWVkaWE9JHtgJHttZWRpYVF1ZXJ5fWB9XG4gICAgICAgICAgICAgICAgc2l6ZXM9JHtgJHtpbWFnZVdpZHRofXB4YH1cbiAgICAgICAgICAgICAgICBzcmNzZXQ9JHtcbiAgICAgICAgICAgICAgICAgIGAke2ltYWdlVXJsV2l0aFBhcmFtc30mdz0ke2ltYWdlV2lkdGh9Jmg9JHtpbWFnZUhlaWdodH0mcT0ke3RoaXMuX2NvbmZpZy5ub25SZXRpbmFRdWFsaXR5fSAke2ltYWdlV2lkdGh9dywgYCArXG4gICAgICAgICAgICAgICAgICBgJHtpbWFnZVVybFdpdGhQYXJhbXN9Jnc9JHtpbWFnZVdpZHRoICogMn0maD0ke2ltYWdlSGVpZ2h0ICogMn0mcT0ke1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jb25maWcucmV0aW5hUXVhbGl0eVxuICAgICAgICAgICAgICAgICAgfSAke2ltYWdlV2lkdGggKiAyfXdgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA+PC9zb3VyY2U+YDtcbiAgICAgICAgICB9KX1cbiAgICAgICAgICA8aW1nXG4gICAgICAgICAgICBhbHQ9JHt0aGlzLmFsdCB8fCAnJ31cbiAgICAgICAgICAgIEBsb2FkPSR7dGhpcy5faW1hZ2VMb2FkZWR9XG4gICAgICAgICAgICBAZXJyb3I9JHsoKSA9PiB7XG4gICAgICAgICAgICAgIC8qKiBFbWl0cyB3aGVuIHRoZSBpbWFnZSBsb2FkaW5nIGVuZGVkIGluIGFuIGVycm9yLiAqL1xuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnZXJyb3InKSk7XG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgY2xhc3M9XCJzYmItaW1hZ2VfX2ltZ1wiXG4gICAgICAgICAgICBzcmM9JHt0aGlzLmltYWdlU3JjIX1cbiAgICAgICAgICAgIHdpZHRoPVwiMTAwMFwiXG4gICAgICAgICAgICBoZWlnaHQ9XCI1NjJcIlxuICAgICAgICAgICAgbG9hZGluZz0ke3RoaXMubG9hZGluZyA/PyBub3RoaW5nfVxuICAgICAgICAgICAgZGVjb2Rpbmc9JHt0aGlzLmRlY29kaW5nID8/IG5vdGhpbmd9XG4gICAgICAgICAgICAuZmV0Y2hQcmlvcml0eT0ke3RoaXMuaW1wb3J0YW5jZSA/PyBub3RoaW5nfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvcGljdHVyZT5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1pbWFnZSc6IFNiYkltYWdlRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQ2tEQSxJQUFNLDZCQUNKLGVBQ21EO0FBQ25ELEtBQUksQ0FBQyxjQUFjLFdBQVcsV0FBVyxFQUN2QyxRQUFPLEVBQUU7Q0FJWCxNQUFNLGFBS0Y7Q0FDSixJQUFJO0FBRUosS0FBSTtBQUNGLGVBQWEsS0FBSyxNQUFNLFdBQVc7U0FDN0I7QUFDTixnQkFBYztBQUNkLFNBQU8sRUFBRTs7QUFHWCxLQUFJLENBQUMsV0FBVyxlQUFlLFdBQVcsWUFBWSxXQUFXLEdBQUc7QUFDbEUsZ0JBQWM7QUFDZCxTQUFPLEVBQUU7O0FBSVgsS0FBSSxDQUFDLE1BQU0sUUFBUSxXQUFXLFlBQVksRUFBRTtBQUMxQyxnQkFBYztBQUNkLFNBQU8sRUFBRTs7Ozs7O0NBT1gsSUFBSSxtQkFBbUI7Q0FDdkIsSUFBSSxxQkFBcUI7Q0FFekIsTUFBTSxjQUFjLENBQUMsU0FBUyxlQUFlO0FBRTdDLFlBQVcsWUFBWSxTQUFTLGVBQWM7RUFDNUMsTUFBTSxpQkFBaUIsT0FBTyxLQUFLLFdBQVc7QUFFOUMsaUJBQWUsU0FBUyxrQkFBaUI7QUFDdkMsT0FBSSxDQUFDLFlBQVksU0FBUyxjQUFjLENBQ3RDLG9CQUFtQjtJQUVyQjtBQUVGLGNBQVksU0FBUyxlQUFjO0FBQ2pDLE9BQUksQ0FBQyxlQUFlLFNBQVMsV0FBVyxDQUN0QyxzQkFBcUI7SUFFdkI7R0FDRjtBQUVGLEtBQUksb0JBQW9CLG9CQUFvQjtBQUMxQyxnQkFBYztBQUNkLFNBQU8sRUFBRTs7QUFHWCxRQUFPLFdBQVc7O0FBR3BCLElBQU0sdUJBQXVCLEVBQzNCLFNBQVMsTUFDVjtBQUVELElBQU0sZ0JBQXdDO0NBQzVDLDJCQUEyQjtDQUMzQiwyQkFBMkI7Q0FDM0IsNEJBQTRCO0NBQzVCLDRC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