@sbb-esta/lyne-elements 3.0.0-next.0 → 3.0.0-next.2

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 (567) hide show
  1. package/accordion/accordion.component.js +19 -22
  2. package/action-group/action-group.component.js +3 -5
  3. package/alert/alert/alert.component.d.ts +5 -7
  4. package/alert/alert/alert.component.d.ts.map +1 -1
  5. package/alert/alert/alert.component.js +69 -84
  6. package/alert/alert-group/alert-group.component.js +2 -3
  7. package/autocomplete/autocomplete-base-element.js +83 -95
  8. package/autocomplete/autocomplete.component.js +28 -33
  9. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +42 -50
  10. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +1 -1
  11. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -1
  12. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +4 -5
  13. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +17 -20
  14. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +1 -1
  15. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
  16. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +21 -24
  17. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +5 -5
  18. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +27 -31
  19. package/button/mini-button/mini-button.component.js +1 -1
  20. package/button/mini-button-group/mini-button-group.component.js +1 -2
  21. package/calendar/calendar.component.d.ts +0 -5
  22. package/calendar/calendar.component.d.ts.map +1 -1
  23. package/calendar/calendar.component.js +129 -147
  24. package/card/card/card.component.js +12 -12
  25. package/card/card-badge/card-badge.component.js +17 -17
  26. package/card/common/card-action-common.js +20 -22
  27. package/checkbox/checkbox/checkbox.component.js +17 -20
  28. package/checkbox/checkbox-group/checkbox-group.component.js +39 -52
  29. package/checkbox/checkbox-panel/checkbox-panel.component.js +18 -21
  30. package/checkbox/common/checkbox-common.js +13 -15
  31. package/chip/chip-group/chip-group.component.js +66 -80
  32. package/clock/clock.component.js +50 -60
  33. package/container/container/container.component.js +28 -29
  34. package/container/sticky-bar/sticky-bar.component.js +25 -26
  35. package/core/a11y/focus-trap-controller.js +11 -14
  36. package/core/a11y/input-modality-detector.js +15 -16
  37. package/core/a11y/interactivity-checker.js +10 -10
  38. package/core/a11y/live-announcer.js +12 -14
  39. package/core/base-elements/button-base-element.js +58 -63
  40. package/core/base-elements/link-base-element.js +3 -6
  41. package/core/base-elements/open-close-base-element.js +1 -1
  42. package/core/config/config.d.ts.map +1 -1
  43. package/core/controllers/escapable-overlay-controller.js +10 -12
  44. package/core/controllers/id-reference-controller.js +13 -14
  45. package/core/controllers/inert-controller.js +8 -10
  46. package/core/controllers/slot-state-controller.js +16 -26
  47. package/core/datetime/date-adapter.d.ts +1 -1
  48. package/core/datetime/date-adapter.d.ts.map +1 -1
  49. package/core/datetime/date-adapter.js +21 -21
  50. package/core/datetime/native-date-adapter.d.ts +1 -1
  51. package/core/datetime/native-date-adapter.d.ts.map +1 -1
  52. package/core/datetime/native-date-adapter.js +28 -28
  53. package/core/decorators/force-type.js +4 -5
  54. package/core/decorators/id-reference.js +34 -37
  55. package/core/decorators/plain-date.js +16 -19
  56. package/core/dom/breakpoint.js +8 -8
  57. package/core/eventing/event-emitter.js +4 -5
  58. package/core/i18n/i18n.js +41 -41
  59. package/core/mixins/element-internals-mixin.d.ts +21 -0
  60. package/core/mixins/element-internals-mixin.d.ts.map +1 -1
  61. package/core/mixins/element-internals-mixin.js +109 -23
  62. package/core/mixins/form-associated-checkbox-mixin.js +32 -37
  63. package/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
  64. package/core/mixins/form-associated-input-mixin.js +69 -93
  65. package/core/mixins/form-associated-mixin.js +32 -35
  66. package/core/mixins/form-associated-radio-button-mixin.js +3 -5
  67. package/core/mixins/hydration-mixin.js +12 -13
  68. package/core/mixins/named-slot-list-mixin.js +32 -37
  69. package/core/mixins/panel-mixin.js +26 -27
  70. package/core/mixins/readonly-mixin.d.ts.map +1 -1
  71. package/core/mixins/readonly-mixin.js +10 -11
  72. package/core/mixins.js +27 -25
  73. package/core/overlay/position.js +23 -23
  74. package/core/styles/core/mediaqueries.scss +1 -1
  75. package/core/styles/core.scss +70 -37
  76. package/core/styles/mixins/table.scss +1 -24
  77. package/core/styles/mixins/typo.scss +0 -1
  78. package/core/testing/event-spy.js +2 -4
  79. package/core/testing/wait-for-image-ready.js +8 -9
  80. package/core/testing/wait-for-render.js +8 -9
  81. package/core.css +29 -1
  82. package/custom-elements.json +5804 -3207
  83. package/date-input/date-input.component.d.ts +16 -1
  84. package/date-input/date-input.component.d.ts.map +1 -1
  85. package/date-input/date-input.component.js +71 -58
  86. package/datepicker/common/datepicker-button.d.ts +31 -20
  87. package/datepicker/common/datepicker-button.d.ts.map +1 -1
  88. package/datepicker/common/datepicker-button.js +79 -74
  89. package/datepicker/common.d.ts +0 -1
  90. package/datepicker/common.d.ts.map +1 -1
  91. package/datepicker/common.js +3 -5
  92. package/datepicker/datepicker/datepicker.component.d.ts +23 -102
  93. package/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
  94. package/datepicker/datepicker/datepicker.component.js +91 -233
  95. package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts +2 -2
  96. package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
  97. package/datepicker/datepicker-next-day/datepicker-next-day.component.js +27 -18
  98. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts +2 -2
  99. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
  100. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +27 -18
  101. package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts +6 -26
  102. package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
  103. package/datepicker/datepicker-toggle/datepicker-toggle.component.js +36 -145
  104. package/datepicker.js +9 -11
  105. package/development/accordion/accordion.component.js +4 -7
  106. package/development/action-group/action-group.component.js +3 -5
  107. package/development/alert/alert/alert.component.d.ts +5 -7
  108. package/development/alert/alert/alert.component.d.ts.map +1 -1
  109. package/development/alert/alert/alert.component.js +34 -52
  110. package/development/alert/alert-group/alert-group.component.js +2 -3
  111. package/development/autocomplete/autocomplete-base-element.js +20 -32
  112. package/development/autocomplete/autocomplete.component.js +7 -12
  113. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +10 -18
  114. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +1 -1
  115. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -1
  116. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +4 -9
  117. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +1 -1
  118. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +4 -7
  119. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +1 -1
  120. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
  121. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +4 -7
  122. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +2 -2
  123. package/development/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
  124. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +5 -9
  125. package/development/button/accent-button/accent-button.component.js +1 -1
  126. package/development/button/accent-button-link/accent-button-link.component.js +1 -1
  127. package/development/button/accent-button-static/accent-button-static.component.js +1 -1
  128. package/development/button/button/button.component.js +1 -1
  129. package/development/button/button-link/button-link.component.js +1 -1
  130. package/development/button/button-static/button-static.component.js +1 -1
  131. package/development/button/common/button-common.js +1 -1
  132. package/development/button/mini-button/mini-button.component.js +1 -1
  133. package/development/button/mini-button-group/mini-button-group.component.js +2 -3
  134. package/development/button/secondary-button/secondary-button.component.js +1 -1
  135. package/development/button/secondary-button-link/secondary-button-link.component.js +1 -1
  136. package/development/button/secondary-button-static/secondary-button-static.component.js +1 -1
  137. package/development/button/transparent-button/transparent-button.component.js +1 -1
  138. package/development/button/transparent-button-link/transparent-button-link.component.js +1 -1
  139. package/development/button/transparent-button-static/transparent-button-static.component.js +1 -1
  140. package/development/calendar/calendar.component.d.ts +0 -5
  141. package/development/calendar/calendar.component.d.ts.map +1 -1
  142. package/development/calendar/calendar.component.js +20 -44
  143. package/development/card/card/card.component.js +1 -1
  144. package/development/card/card-badge/card-badge.component.js +2 -2
  145. package/development/card/card-button/card-button.component.js +1 -1
  146. package/development/card/card-link/card-link.component.js +1 -1
  147. package/development/card/common/card-action-common.js +4 -6
  148. package/development/checkbox/checkbox/checkbox.component.js +2 -5
  149. package/development/checkbox/checkbox-group/checkbox-group.component.js +8 -21
  150. package/development/checkbox/checkbox-panel/checkbox-panel.component.js +2 -5
  151. package/development/checkbox/common/checkbox-common.js +3 -5
  152. package/development/chip/chip/chip.component.js +1 -1
  153. package/development/chip/chip-group/chip-group.component.js +18 -32
  154. package/development/chip-label/chip-label.component.js +1 -1
  155. package/development/clock/clock.component.js +23 -33
  156. package/development/container/container/container.component.js +2 -3
  157. package/development/container/sticky-bar/sticky-bar.component.js +3 -4
  158. package/development/core/a11y/arrow-navigation.js +1 -1
  159. package/development/core/a11y/fake-event-detection.js +1 -1
  160. package/development/core/a11y/focus-trap-controller.js +6 -9
  161. package/development/core/a11y/focus-visible-within-controller.js +1 -1
  162. package/development/core/a11y/input-modality-detector.js +2 -3
  163. package/development/core/a11y/interactivity-checker.js +2 -2
  164. package/development/core/a11y/live-announcer.js +6 -8
  165. package/development/core/base-elements/action-base-element.js +2 -3
  166. package/development/core/base-elements/button-base-element.js +6 -11
  167. package/development/core/base-elements/link-base-element.js +4 -7
  168. package/development/core/base-elements/open-close-base-element.js +2 -2
  169. package/development/core/config/config.d.ts.map +1 -1
  170. package/development/core/config/config.js +1 -1
  171. package/development/core/controllers/escapable-overlay-controller.js +3 -5
  172. package/development/core/controllers/id-reference-controller.js +2 -3
  173. package/development/core/controllers/inert-controller.js +4 -6
  174. package/development/core/controllers/language-controller.js +1 -1
  175. package/development/core/controllers/media-matchers-controller.js +1 -1
  176. package/development/core/controllers/slot-state-controller.js +8 -18
  177. package/development/core/datetime/date-adapter.d.ts +1 -1
  178. package/development/core/datetime/date-adapter.d.ts.map +1 -1
  179. package/development/core/datetime/date-adapter.js +5 -5
  180. package/development/core/datetime/native-date-adapter.d.ts +1 -1
  181. package/development/core/datetime/native-date-adapter.d.ts.map +1 -1
  182. package/development/core/datetime/native-date-adapter.js +4 -4
  183. package/development/core/decorators/force-type.js +3 -4
  184. package/development/core/decorators/get-override.js +1 -1
  185. package/development/core/decorators/handle-distinct-change.js +1 -1
  186. package/development/core/decorators/host-attributes.js +1 -1
  187. package/development/core/decorators/id-reference.js +4 -7
  188. package/development/core/decorators/plain-date.js +5 -8
  189. package/development/core/decorators/slot-state.js +1 -1
  190. package/development/core/dom/animation.js +1 -1
  191. package/development/core/dom/breakpoint.js +2 -2
  192. package/development/core/dom/host-context.js +1 -1
  193. package/development/core/dom/platform.js +1 -1
  194. package/development/core/dom/scroll.js +1 -1
  195. package/development/core/dom/set-or-remove-attribute.js +1 -1
  196. package/development/core/eventing/composed-path-has-attribute.js +1 -1
  197. package/development/core/eventing/event-emitter.js +2 -3
  198. package/development/core/eventing/form-element-handlers.js +1 -1
  199. package/development/core/eventing/forward-event.js +1 -1
  200. package/development/core/eventing/throttle.js +1 -1
  201. package/development/core/i18n/i18n.js +18 -18
  202. package/development/core/mixins/animation-complete-mixin.js +1 -1
  203. package/development/core/mixins/disabled-mixin.js +1 -1
  204. package/development/core/mixins/element-internals-mixin.d.ts +21 -0
  205. package/development/core/mixins/element-internals-mixin.d.ts.map +1 -1
  206. package/development/core/mixins/element-internals-mixin.js +123 -2
  207. package/development/core/mixins/form-associated-checkbox-mixin.js +6 -9
  208. package/development/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
  209. package/development/core/mixins/form-associated-input-mixin.js +29 -59
  210. package/development/core/mixins/form-associated-mixin.js +6 -9
  211. package/development/core/mixins/form-associated-radio-button-mixin.js +7 -9
  212. package/development/core/mixins/hydration-mixin.js +3 -4
  213. package/development/core/mixins/named-slot-list-mixin.js +4 -7
  214. package/development/core/mixins/negative-mixin.js +1 -1
  215. package/development/core/mixins/panel-mixin.js +2 -3
  216. package/development/core/mixins/readonly-mixin.d.ts.map +1 -1
  217. package/development/core/mixins/readonly-mixin.js +4 -6
  218. package/development/core/mixins/required-mixin.js +1 -1
  219. package/development/core/mixins/update-scheduler-mixin.js +1 -1
  220. package/development/core/mixins.js +4 -2
  221. package/development/core/overlay/overlay-option-panel.js +1 -1
  222. package/development/core/overlay/overlay-trigger-attributes.js +1 -1
  223. package/development/core/overlay/overlay.js +1 -1
  224. package/development/core/overlay/position.js +5 -5
  225. package/development/core/testing/event-spy.js +3 -5
  226. package/development/core/testing/mocha-extensions.js +1 -1
  227. package/development/core/testing/wait-for-condition.js +1 -1
  228. package/development/core/testing/wait-for-image-ready.js +2 -3
  229. package/development/core/testing/wait-for-render.js +2 -3
  230. package/development/date-input/date-input.component.d.ts +16 -1
  231. package/development/date-input/date-input.component.d.ts.map +1 -1
  232. package/development/date-input/date-input.component.js +28 -11
  233. package/development/datepicker/common/datepicker-button.d.ts +31 -20
  234. package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
  235. package/development/datepicker/common/datepicker-button.js +103 -90
  236. package/development/datepicker/common.d.ts +0 -1
  237. package/development/datepicker/common.d.ts.map +1 -1
  238. package/development/datepicker/common.js +4 -6
  239. package/development/datepicker/datepicker/datepicker.component.d.ts +23 -102
  240. package/development/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
  241. package/development/datepicker/datepicker/datepicker.component.js +94 -337
  242. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts +2 -2
  243. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
  244. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +18 -6
  245. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts +2 -2
  246. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
  247. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +18 -6
  248. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts +6 -26
  249. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
  250. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +137 -224
  251. package/development/datepicker.js +3 -5
  252. package/development/dialog/dialog/dialog.component.d.ts +7 -16
  253. package/development/dialog/dialog/dialog.component.d.ts.map +1 -1
  254. package/development/dialog/dialog/dialog.component.js +78 -149
  255. package/development/dialog/dialog-actions/dialog-actions.component.d.ts +2 -2
  256. package/development/dialog/dialog-actions/dialog-actions.component.d.ts.map +1 -1
  257. package/development/dialog/dialog-actions/dialog-actions.component.js +20 -17
  258. package/development/dialog/dialog-content/dialog-content.component.d.ts.map +1 -1
  259. package/development/dialog/dialog-content/dialog-content.component.js +5 -46
  260. package/development/dialog/dialog-title/dialog-title.component.d.ts +2 -26
  261. package/development/dialog/dialog-title/dialog-title.component.d.ts.map +1 -1
  262. package/development/dialog/dialog-title/dialog-title.component.js +12 -179
  263. package/development/divider/divider.component.js +2 -2
  264. package/development/expansion-panel/expansion-panel/expansion-panel.component.js +9 -13
  265. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +2 -2
  266. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +5 -6
  267. package/development/file-selector/common/file-selector-common.js +2 -3
  268. package/development/file-selector/file-selector/file-selector.component.js +1 -1
  269. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
  270. package/development/flip-card/flip-card/flip-card.component.js +7 -13
  271. package/development/flip-card/flip-card-details/flip-card-details.component.js +3 -4
  272. package/development/flip-card/flip-card-summary/flip-card-summary.component.js +3 -4
  273. package/development/footer/footer.component.js +1 -1
  274. package/development/form-error/form-error.component.js +3 -4
  275. package/development/form-field/form-field/form-field.component.d.ts +1 -1
  276. package/development/form-field/form-field/form-field.component.d.ts.map +1 -1
  277. package/development/form-field/form-field/form-field.component.js +39 -67
  278. package/development/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
  279. package/development/form-field/form-field-clear/form-field-clear.component.js +6 -8
  280. package/development/header/common/header-action-common.js +1 -1
  281. package/development/header/header/header.component.js +5 -8
  282. package/development/header/header-button/header-button.component.js +1 -1
  283. package/development/header/header-link/header-link.component.js +1 -1
  284. package/development/icon/icon-base.d.ts +5 -3
  285. package/development/icon/icon-base.d.ts.map +1 -1
  286. package/development/icon/icon-base.js +4 -7
  287. package/development/icon/icon-name-mixin.js +1 -1
  288. package/development/icon/icon-request.js +2 -3
  289. package/development/icon/icon-validate.js +1 -1
  290. package/development/icon/icon.component.d.ts +1 -2
  291. package/development/icon/icon.component.d.ts.map +1 -1
  292. package/development/icon/icon.component.js +8 -19
  293. package/development/image/image.component.js +7 -9
  294. package/development/journey-header/journey-header.component.d.ts +5 -5
  295. package/development/journey-header/journey-header.component.d.ts.map +1 -1
  296. package/development/journey-header/journey-header.component.js +26 -40
  297. package/development/lead-container/lead-container.component.js +1 -1
  298. package/development/link/block-link/block-link.component.js +1 -1
  299. package/development/link/block-link-button/block-link-button.component.js +1 -1
  300. package/development/link/block-link-static/block-link-static.component.js +1 -1
  301. package/development/link/common/block-link-common.js +1 -1
  302. package/development/link/common/inline-link-common.js +1 -1
  303. package/development/link/link/link.component.js +1 -1
  304. package/development/link/link-button/link-button.component.js +1 -1
  305. package/development/link/link-static/link-static.component.js +1 -1
  306. package/development/link-common-DPLJx5Uo.js +1 -1
  307. package/development/link-list/common/link-list-base.js +1 -1
  308. package/development/link-list/link-list/link-list.component.js +1 -1
  309. package/development/link-list/link-list-anchor/link-list-anchor.component.js +1 -1
  310. package/development/loading-indicator/loading-indicator.component.js +1 -1
  311. package/development/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
  312. package/development/logo/logo.component.js +1 -1
  313. package/development/map-container/map-container.component.js +2 -3
  314. package/development/menu/common/menu-action-common.js +1 -1
  315. package/development/menu/menu/menu.component.js +17 -25
  316. package/development/menu/menu-button/menu-button.component.js +1 -1
  317. package/development/menu/menu-link/menu-link.component.js +1 -1
  318. package/development/message/message.component.d.ts +4 -8
  319. package/development/message/message.component.d.ts.map +1 -1
  320. package/development/message/message.component.js +12 -54
  321. package/development/navigation/common/navigation-action-common.js +3 -5
  322. package/development/navigation/navigation/navigation.component.js +19 -35
  323. package/development/navigation/navigation-button/navigation-button.component.js +1 -1
  324. package/development/navigation/navigation-link/navigation-link.component.js +1 -1
  325. package/development/navigation/navigation-list/navigation-list.component.js +1 -1
  326. package/development/navigation/navigation-marker/navigation-marker.component.js +4 -6
  327. package/development/navigation/navigation-section/navigation-section.component.d.ts +1 -1
  328. package/development/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
  329. package/development/navigation/navigation-section/navigation-section.component.js +27 -37
  330. package/development/notification/notification.component.d.ts +7 -9
  331. package/development/notification/notification.component.d.ts.map +1 -1
  332. package/development/notification/notification.component.js +47 -77
  333. package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  334. package/development/option/optgroup/optgroup-base-element.js +8 -14
  335. package/development/option/optgroup/optgroup.component.js +6 -10
  336. package/development/option/option/option-base-element.js +3 -4
  337. package/development/option/option/option.component.js +7 -10
  338. package/development/overlay/overlay-base-element.d.ts +24 -6
  339. package/development/overlay/overlay-base-element.d.ts.map +1 -1
  340. package/development/overlay/overlay-base-element.js +114 -15
  341. package/development/overlay/overlay.component.d.ts +2 -12
  342. package/development/overlay/overlay.component.d.ts.map +1 -1
  343. package/development/overlay/overlay.component.js +33 -98
  344. package/development/paginator/common/paginator-common.js +1 -1
  345. package/development/paginator/compact-paginator/compact-paginator.component.js +1 -1
  346. package/development/paginator/paginator/paginator.component.js +2 -3
  347. package/development/popover/popover/popover.component.d.ts +45 -34
  348. package/development/popover/popover/popover.component.d.ts.map +1 -1
  349. package/development/popover/popover/popover.component.js +215 -172
  350. package/development/popover/popover-trigger/popover-trigger.component.js +1 -1
  351. package/development/popover/popover.js +2 -1
  352. package/development/popover.js +2 -1
  353. package/development/radio-button/common/radio-button-common.js +6 -10
  354. package/development/radio-button/radio-button/radio-button.component.js +2 -5
  355. package/development/radio-button/radio-button-group/radio-button-group.component.d.ts +1 -1
  356. package/development/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  357. package/development/radio-button/radio-button-group/radio-button-group.component.js +8 -24
  358. package/development/radio-button/radio-button-panel/radio-button-panel.component.js +3 -7
  359. package/development/screen-reader-only/screen-reader-only.component.js +1 -1
  360. package/development/select/select.component.js +26 -49
  361. package/development/selection-expansion-panel/selection-expansion-panel.component.js +7 -11
  362. package/development/sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
  363. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.js +1 -1
  364. package/development/sidebar/icon-sidebar-container/icon-sidebar-container.component.js +4 -7
  365. package/development/sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
  366. package/development/sidebar/icon-sidebar-link/icon-sidebar-link.component.js +1 -1
  367. package/development/sidebar/sidebar/sidebar.component.js +9 -16
  368. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +0 -1
  369. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
  370. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.js +3 -8
  371. package/development/sidebar/sidebar-container/sidebar-container.component.js +9 -13
  372. package/development/sidebar/sidebar-content/sidebar-content.component.js +1 -1
  373. package/development/sidebar/sidebar-title/sidebar-title.component.d.ts +2 -0
  374. package/development/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
  375. package/development/sidebar/sidebar-title/sidebar-title.component.js +3 -9
  376. package/development/signet/signet.component.js +1 -1
  377. package/development/skiplink-list/skiplink-list.component.d.ts.map +1 -1
  378. package/development/skiplink-list/skiplink-list.component.js +19 -10
  379. package/development/slider/slider.component.js +4 -6
  380. package/development/status/status.component.d.ts +4 -7
  381. package/development/status/status.component.d.ts.map +1 -1
  382. package/development/status/status.component.js +23 -56
  383. package/development/stepper/step/step.component.d.ts +2 -1
  384. package/development/stepper/step/step.component.d.ts.map +1 -1
  385. package/development/stepper/step/step.component.js +16 -15
  386. package/development/stepper/step-label/step-label.component.d.ts +3 -3
  387. package/development/stepper/step-label/step-label.component.d.ts.map +1 -1
  388. package/development/stepper/step-label/step-label.component.js +16 -17
  389. package/development/stepper/stepper/stepper.component.js +16 -29
  390. package/development/table/table-wrapper/table-wrapper.component.js +2 -7
  391. package/development/tabs/tab/tab.component.js +1 -1
  392. package/development/tabs/tab-group/tab-group.component.js +23 -38
  393. package/development/tabs/tab-label/tab-label.component.js +1 -1
  394. package/development/tag/tag/tag.component.js +7 -13
  395. package/development/tag/tag-group/tag-group.component.js +5 -13
  396. package/development/teaser/teaser.component.d.ts +6 -10
  397. package/development/teaser/teaser.component.d.ts.map +1 -1
  398. package/development/teaser/teaser.component.js +48 -76
  399. package/development/teaser-hero/teaser-hero.component.js +1 -1
  400. package/development/teaser-product/common/teaser-product-common.js +1 -1
  401. package/development/teaser-product/teaser-product/teaser-product.component.js +1 -1
  402. package/development/teaser-product/teaser-product-static/teaser-product-static.component.js +1 -1
  403. package/development/time-input/time-input.component.js +10 -14
  404. package/development/timetable-occupancy/timetable-occupancy.component.js +1 -1
  405. package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.d.ts.map +1 -1
  406. package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.js +2 -5
  407. package/development/title/title-base.d.ts +0 -8
  408. package/development/title/title-base.d.ts.map +1 -1
  409. package/development/title/title-base.js +17 -50
  410. package/development/title/title.component.d.ts +2 -0
  411. package/development/title/title.component.d.ts.map +1 -1
  412. package/development/title/title.component.js +9 -14
  413. package/development/toast/toast.component.d.ts.map +1 -1
  414. package/development/toast/toast.component.js +7 -16
  415. package/development/toggle/toggle/toggle.component.js +28 -30
  416. package/development/toggle/toggle-option/toggle-option.component.d.ts +1 -1
  417. package/development/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
  418. package/development/toggle/toggle-option/toggle-option.component.js +12 -19
  419. package/development/toggle-check/toggle-check.component.js +1 -1
  420. package/development/train/train/train.component.js +1 -1
  421. package/development/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
  422. package/development/train/train-formation/train-formation.component.js +5 -7
  423. package/development/train/train-wagon/train-wagon.component.js +1 -1
  424. package/development/visual-checkbox/visual-checkbox.component.js +1 -1
  425. package/dialog/dialog/dialog.component.d.ts +7 -16
  426. package/dialog/dialog/dialog.component.d.ts.map +1 -1
  427. package/dialog/dialog/dialog.component.js +57 -87
  428. package/dialog/dialog-actions/dialog-actions.component.d.ts +2 -2
  429. package/dialog/dialog-actions/dialog-actions.component.d.ts.map +1 -1
  430. package/dialog/dialog-actions/dialog-actions.component.js +16 -16
  431. package/dialog/dialog-content/dialog-content.component.d.ts.map +1 -1
  432. package/dialog/dialog-content/dialog-content.component.js +14 -19
  433. package/dialog/dialog-title/dialog-title.component.d.ts +2 -26
  434. package/dialog/dialog-title/dialog-title.component.d.ts.map +1 -1
  435. package/dialog/dialog-title/dialog-title.component.js +16 -111
  436. package/divider/divider.component.js +3 -3
  437. package/expansion-panel/expansion-panel/expansion-panel.component.js +5 -9
  438. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
  439. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +30 -31
  440. package/file-selector/common/file-selector-common.js +1 -2
  441. package/flip-card/flip-card/flip-card.component.js +48 -54
  442. package/flip-card/flip-card-details/flip-card-details.component.js +15 -16
  443. package/flip-card/flip-card-summary/flip-card-summary.component.js +19 -20
  444. package/form-error/form-error.component.js +13 -14
  445. package/form-field/form-field/form-field.component.d.ts +1 -1
  446. package/form-field/form-field/form-field.component.d.ts.map +1 -1
  447. package/form-field/form-field/form-field.component.js +149 -168
  448. package/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
  449. package/form-field/form-field-clear/form-field-clear.component.js +19 -21
  450. package/header/header/header.component.js +26 -29
  451. package/icon/icon-base.d.ts +5 -3
  452. package/icon/icon-base.d.ts.map +1 -1
  453. package/icon/icon-base.js +32 -34
  454. package/icon/icon-request.js +10 -11
  455. package/icon/icon.component.d.ts +1 -2
  456. package/icon/icon.component.d.ts.map +1 -1
  457. package/icon/icon.component.js +37 -37
  458. package/icon-sidebar-button-common-CM-ueEhH.js +7 -0
  459. package/image/image.component.js +4 -6
  460. package/journey-header/journey-header.component.d.ts +5 -5
  461. package/journey-header/journey-header.component.d.ts.map +1 -1
  462. package/journey-header/journey-header.component.js +50 -63
  463. package/map-container/map-container.component.js +1 -2
  464. package/menu/menu/menu.component.js +47 -55
  465. package/message/message.component.d.ts +4 -8
  466. package/message/message.component.d.ts.map +1 -1
  467. package/message/message.component.js +18 -47
  468. package/navigation/common/navigation-action-common.js +19 -21
  469. package/navigation/navigation/navigation.component.js +73 -92
  470. package/navigation/navigation-marker/navigation-marker.component.js +26 -28
  471. package/navigation/navigation-section/navigation-section.component.d.ts +1 -1
  472. package/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
  473. package/navigation/navigation-section/navigation-section.component.js +72 -82
  474. package/notification/notification.component.d.ts +7 -9
  475. package/notification/notification.component.d.ts.map +1 -1
  476. package/notification/notification.component.js +77 -95
  477. package/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  478. package/option/optgroup/optgroup-base-element.js +36 -38
  479. package/option/optgroup/optgroup.component.js +16 -20
  480. package/option/option/option-base-element.js +3 -4
  481. package/option/option/option.component.js +26 -29
  482. package/overlay/overlay-base-element.d.ts +24 -6
  483. package/overlay/overlay-base-element.d.ts.map +1 -1
  484. package/overlay/overlay-base-element.js +98 -51
  485. package/overlay/overlay.component.d.ts +2 -12
  486. package/overlay/overlay.component.d.ts.map +1 -1
  487. package/overlay/overlay.component.js +57 -95
  488. package/package.json +1 -1
  489. package/paginator/paginator/paginator.component.js +3 -4
  490. package/popover/popover/popover.component.d.ts +45 -34
  491. package/popover/popover/popover.component.d.ts.map +1 -1
  492. package/popover/popover/popover.component.js +194 -168
  493. package/popover/popover-trigger/popover-trigger.component.js +1 -1
  494. package/popover/popover.js +2 -1
  495. package/popover.js +5 -4
  496. package/radio-button/common/radio-button-common.js +11 -15
  497. package/radio-button/radio-button/radio-button.component.js +16 -19
  498. package/radio-button/radio-button-group/radio-button-group.component.d.ts +1 -1
  499. package/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  500. package/radio-button/radio-button-group/radio-button-group.component.js +27 -43
  501. package/radio-button/radio-button-panel/radio-button-panel.component.js +33 -37
  502. package/select/select.component.js +94 -117
  503. package/selection-expansion-panel/selection-expansion-panel.component.js +35 -39
  504. package/sidebar/common.js +1 -1
  505. package/sidebar/icon-sidebar-container/icon-sidebar-container.component.js +10 -13
  506. package/sidebar/sidebar/sidebar.component.js +62 -69
  507. package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +0 -1
  508. package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
  509. package/sidebar/sidebar-close-button/sidebar-close-button.component.js +18 -18
  510. package/sidebar/sidebar-container/sidebar-container.component.js +29 -33
  511. package/sidebar/sidebar-title/sidebar-title.component.d.ts +2 -0
  512. package/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
  513. package/sidebar/sidebar-title/sidebar-title.component.js +16 -16
  514. package/sidebar.js +1 -1
  515. package/skiplink-list/skiplink-list.component.d.ts.map +1 -1
  516. package/skiplink-list/skiplink-list.component.js +36 -39
  517. package/slider/slider.component.js +11 -13
  518. package/standard-theme.css +29 -26
  519. package/status/status.component.d.ts +4 -7
  520. package/status/status.component.d.ts.map +1 -1
  521. package/status/status.component.js +34 -50
  522. package/stepper/step/step.component.d.ts +2 -1
  523. package/stepper/step/step.component.d.ts.map +1 -1
  524. package/stepper/step/step.component.js +26 -24
  525. package/stepper/step-label/step-label.component.d.ts +3 -3
  526. package/stepper/step-label/step-label.component.d.ts.map +1 -1
  527. package/stepper/step-label/step-label.component.js +15 -15
  528. package/stepper/stepper/stepper.component.js +72 -86
  529. package/table/table-wrapper/table-wrapper.component.js +17 -18
  530. package/table.css +0 -25
  531. package/tabs/tab-group/tab-group.component.js +77 -92
  532. package/tabs/tab-label/tab-label.component.js +12 -12
  533. package/tag/tag/tag.component.js +49 -55
  534. package/tag/tag-group/tag-group.component.js +37 -45
  535. package/teaser/teaser.component.d.ts +6 -10
  536. package/teaser/teaser.component.d.ts.map +1 -1
  537. package/teaser/teaser.component.js +45 -68
  538. package/teaser-product/common.js +1 -1
  539. package/teaser-product/teaser-product/teaser-product.component.js +1 -1
  540. package/teaser-product-common-C8oSkIxy.js +5 -0
  541. package/teaser-product.js +1 -1
  542. package/time-input/time-input.component.js +29 -33
  543. package/timetable-occupancy-icon/timetable-occupancy-icon.component.d.ts.map +1 -1
  544. package/timetable-occupancy-icon/timetable-occupancy-icon.component.js +22 -25
  545. package/title/title-base.d.ts +0 -8
  546. package/title/title-base.d.ts.map +1 -1
  547. package/title/title-base.js +34 -53
  548. package/title/title.component.d.ts +2 -0
  549. package/title/title.component.d.ts.map +1 -1
  550. package/title/title.component.js +9 -9
  551. package/toast/toast.component.d.ts.map +1 -1
  552. package/toast/toast.component.js +6 -9
  553. package/toggle/toggle/toggle.component.js +36 -40
  554. package/toggle/toggle-option/toggle-option.component.d.ts +1 -1
  555. package/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
  556. package/toggle/toggle-option/toggle-option.component.js +44 -51
  557. package/train/train-formation/train-formation.component.js +41 -43
  558. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +0 -530
  559. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +0 -1123
  560. package/datepicker/common/datepicker-association-controllers.d.ts +0 -21
  561. package/datepicker/common/datepicker-association-controllers.d.ts.map +0 -1
  562. package/datepicker/common/datepicker-association-controllers.js +0 -58
  563. package/development/datepicker/common/datepicker-association-controllers.d.ts +0 -21
  564. package/development/datepicker/common/datepicker-association-controllers.d.ts.map +0 -1
  565. package/development/datepicker/common/datepicker-association-controllers.js +0 -82
  566. package/icon-sidebar-button-common-DG8bnrBu.js +0 -7
  567. package/teaser-product-common-CpMAlYEp.js +0 -5
@@ -9,7 +9,6 @@ import { __esDecorate, __runInitializers } from "tslib";
9
9
  import { css, LitElement } from "lit";
10
10
  import { property } from "lit/decorators.js";
11
11
  import { html } from "lit/static-html.js";
12
- import { forceType } from "../core/decorators.js";
13
12
  import { SbbElementInternalsMixin } from "../core/mixins.js";
14
13
  const style = css`*,
15
14
  ::before,
@@ -23,27 +22,14 @@ const style = css`*,
23
22
  var(--sbb-color-charcoal)
24
23
  );
25
24
  display: block;
25
+ color: var(--sbb-title-text-color-normal);
26
26
  }
27
27
 
28
28
  :host([id]) {
29
29
  scroll-margin-block-start: var(--sbb-spacing-fixed-10x);
30
30
  }
31
31
 
32
- .sbb-title {
33
- color: var(--sbb-title-text-color-normal);
34
- }
35
- :host([visually-hidden]) .sbb-title {
36
- border: 0;
37
- clip: rect(0 0 0 0);
38
- height: 1px;
39
- margin: -1px;
40
- overflow: hidden;
41
- padding: 0;
42
- position: absolute;
43
- white-space: nowrap;
44
- width: 1px;
45
- }
46
- :host(:is([level="1"]:not([visual-level]), [visual-level="1"])) .sbb-title {
32
+ :host(:where([level="1"]:not([visual-level]), [visual-level="1"])) {
47
33
  --sbb-title-line-height: var(--sbb-typo-line-height-titles);
48
34
  --sbb-title-margin-block-start: 0;
49
35
  --sbb-title-margin-block-end: 0;
@@ -56,7 +42,8 @@ const style = css`*,
56
42
  font-size: var(--sbb-title-font-size);
57
43
  --sbb-title-font-size: var(--sbb-font-size-title-1);
58
44
  }
59
- :host(:is([level="2"]:not([visual-level]), [visual-level="2"])) .sbb-title {
45
+
46
+ :host(:where([level="2"]:not([visual-level]), [visual-level="2"])) {
60
47
  --sbb-title-line-height: var(--sbb-typo-line-height-titles);
61
48
  --sbb-title-margin-block-start: 0;
62
49
  --sbb-title-margin-block-end: 0;
@@ -69,7 +56,8 @@ const style = css`*,
69
56
  font-size: var(--sbb-title-font-size);
70
57
  --sbb-title-font-size: var(--sbb-font-size-title-2);
71
58
  }
72
- :host(:is([level="3"]:not([visual-level]), [visual-level="3"])) .sbb-title {
59
+
60
+ :host(:where([level="3"]:not([visual-level]), [visual-level="3"])) {
73
61
  --sbb-title-line-height: var(--sbb-typo-line-height-titles);
74
62
  --sbb-title-margin-block-start: 0;
75
63
  --sbb-title-margin-block-end: 0;
@@ -82,7 +70,8 @@ const style = css`*,
82
70
  font-size: var(--sbb-title-font-size);
83
71
  --sbb-title-font-size: var(--sbb-font-size-title-3);
84
72
  }
85
- :host(:is([level="4"]:not([visual-level]), [visual-level="4"])) .sbb-title {
73
+
74
+ :host(:where([level="4"]:not([visual-level]), [visual-level="4"])) {
86
75
  --sbb-title-line-height: var(--sbb-typo-line-height-titles);
87
76
  --sbb-title-margin-block-start: 0;
88
77
  --sbb-title-margin-block-end: 0;
@@ -95,7 +84,8 @@ const style = css`*,
95
84
  font-size: var(--sbb-title-font-size);
96
85
  --sbb-title-font-size: var(--sbb-font-size-title-4);
97
86
  }
98
- :host(:is([level="5"]:not([visual-level]), [visual-level="5"])) .sbb-title {
87
+
88
+ :host(:where([level="5"]:not([visual-level]), [visual-level="5"])) {
99
89
  --sbb-title-line-height: var(--sbb-typo-line-height-titles);
100
90
  --sbb-title-margin-block-start: 0;
101
91
  --sbb-title-margin-block-end: 0;
@@ -107,9 +97,9 @@ const style = css`*,
107
97
  letter-spacing: var(--sbb-typo-letter-spacing-titles);
108
98
  font-size: var(--sbb-title-font-size);
109
99
  --sbb-title-font-size: var(--sbb-font-size-title-5);
110
- --sbb-title-line-height: var(--sbb-typo-line-height-body-text);
111
100
  }
112
- :host(:is([level="6"]:not([visual-level]), [visual-level="6"])) .sbb-title {
101
+
102
+ :host(:where([level="6"]:not([visual-level]), [visual-level="6"])) {
113
103
  --sbb-title-line-height: var(--sbb-typo-line-height-titles);
114
104
  --sbb-title-margin-block-start: 0;
115
105
  --sbb-title-margin-block-end: 0;
@@ -124,7 +114,7 @@ const style = css`*,
124
114
  --sbb-title-line-height: var(--sbb-typo-line-height-body-text);
125
115
  }`;
126
116
  let SbbTitleBase = (() => {
127
- var _level_accessor_storage, _visualLevel_accessor_storage, _visuallyHidden_accessor_storage, _a;
117
+ var _level_accessor_storage, _visualLevel_accessor_storage, _a;
128
118
  let _classSuper = SbbElementInternalsMixin(LitElement);
129
119
  let _level_decorators;
130
120
  let _level_initializers = [];
@@ -132,16 +122,12 @@ let SbbTitleBase = (() => {
132
122
  let _visualLevel_decorators;
133
123
  let _visualLevel_initializers = [];
134
124
  let _visualLevel_extraInitializers = [];
135
- let _visuallyHidden_decorators;
136
- let _visuallyHidden_initializers = [];
137
- let _visuallyHidden_extraInitializers = [];
138
125
  return _a = class extends _classSuper {
139
126
  constructor() {
140
127
  super(...arguments);
141
128
  __privateAdd(this, _level_accessor_storage, __runInitializers(this, _level_initializers, "1"));
142
129
  __privateAdd(this, _visualLevel_accessor_storage, (__runInitializers(this, _level_extraInitializers), __runInitializers(this, _visualLevel_initializers, null)));
143
- __privateAdd(this, _visuallyHidden_accessor_storage, (__runInitializers(this, _visualLevel_extraInitializers), __runInitializers(this, _visuallyHidden_initializers, false)));
144
- __runInitializers(this, _visuallyHidden_extraInitializers);
130
+ __runInitializers(this, _visualLevel_extraInitializers);
145
131
  }
146
132
  /** Title level */
147
133
  get level() {
@@ -157,17 +143,6 @@ let SbbTitleBase = (() => {
157
143
  set visualLevel(value) {
158
144
  __privateSet(this, _visualLevel_accessor_storage, value);
159
145
  }
160
- /**
161
- * Sometimes we need a title in the markup to present a proper hierarchy
162
- * to the screen readers while we do not want to let that title appear
163
- * visually. In this case we set visuallyHidden to true.
164
- */
165
- get visuallyHidden() {
166
- return __privateGet(this, _visuallyHidden_accessor_storage);
167
- }
168
- set visuallyHidden(value) {
169
- __privateSet(this, _visuallyHidden_accessor_storage, value);
170
- }
171
146
  willUpdate(changedProperties) {
172
147
  super.willUpdate(changedProperties);
173
148
  if (changedProperties.has("level")) {
@@ -175,30 +150,22 @@ let SbbTitleBase = (() => {
175
150
  }
176
151
  }
177
152
  render() {
178
- return html`
179
- <div class="sbb-title">
180
- <slot></slot>
181
- </div>
182
- `;
153
+ return html`<slot></slot>`;
183
154
  }
184
- }, _level_accessor_storage = new WeakMap(), _visualLevel_accessor_storage = new WeakMap(), _visuallyHidden_accessor_storage = new WeakMap(), (() => {
155
+ }, _level_accessor_storage = new WeakMap(), _visualLevel_accessor_storage = new WeakMap(), (() => {
185
156
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
186
157
  _level_decorators = [property({ reflect: true })];
187
158
  _visualLevel_decorators = [property({ attribute: "visual-level", reflect: true })];
188
- _visuallyHidden_decorators = [forceType(), property({ attribute: "visually-hidden", reflect: true, type: Boolean })];
189
159
  __esDecorate(_a, null, _level_decorators, { kind: "accessor", name: "level", static: false, private: false, access: { has: (obj) => "level" in obj, get: (obj) => obj.level, set: (obj, value) => {
190
160
  obj.level = value;
191
161
  } }, metadata: _metadata }, _level_initializers, _level_extraInitializers);
192
162
  __esDecorate(_a, null, _visualLevel_decorators, { kind: "accessor", name: "visualLevel", static: false, private: false, access: { has: (obj) => "visualLevel" in obj, get: (obj) => obj.visualLevel, set: (obj, value) => {
193
163
  obj.visualLevel = value;
194
164
  } }, metadata: _metadata }, _visualLevel_initializers, _visualLevel_extraInitializers);
195
- __esDecorate(_a, null, _visuallyHidden_decorators, { kind: "accessor", name: "visuallyHidden", static: false, private: false, access: { has: (obj) => "visuallyHidden" in obj, get: (obj) => obj.visuallyHidden, set: (obj, value) => {
196
- obj.visuallyHidden = value;
197
- } }, metadata: _metadata }, _visuallyHidden_initializers, _visuallyHidden_extraInitializers);
198
165
  if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
199
166
  })(), _a.role = "heading", _a.styles = style, _a;
200
167
  })();
201
168
  export {
202
169
  SbbTitleBase
203
170
  };
204
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGUtYmFzZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3RpdGxlL3RpdGxlLWJhc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0L3N0YXRpYy1odG1sLmpzJztcblxuaW1wb3J0IHsgZm9yY2VUeXBlIH0gZnJvbSAnLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IFNiYkVsZW1lbnRJbnRlcm5hbHNNaXhpbiB9IGZyb20gJy4uL2NvcmUvbWl4aW5zLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vdGl0bGUtY29tbW9uLnNjc3M/bGl0JmlubGluZSc7XG5cbmV4cG9ydCB0eXBlIFNiYlRpdGxlTGV2ZWwgPSAnMScgfCAnMicgfCAnMycgfCAnNCcgfCAnNScgfCAnNic7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSB0aXRsZSB3aXRoIGEgaGVhZGluZyByb2xlLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gcGxhY2UgdGhlIGNvbnRlbnQgb2YgdGhlIHRpdGxlLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2JiVGl0bGVCYXNlIGV4dGVuZHMgU2JiRWxlbWVudEludGVybmFsc01peGluKExpdEVsZW1lbnQpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByb2xlID0gJ2hlYWRpbmcnO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKiogVGl0bGUgbGV2ZWwgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3IgbGV2ZWw6IFNiYlRpdGxlTGV2ZWwgPSAnMSc7XG5cbiAgLyoqIFZpc3VhbCBsZXZlbCBmb3IgdGhlIHRpdGxlLiBPcHRpb25hbCwgaWYgbm90IHNldCwgdGhlIHZhbHVlIG9mIGxldmVsIHdpbGwgYmUgdXNlZC4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndmlzdWFsLWxldmVsJywgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgYWNjZXNzb3IgdmlzdWFsTGV2ZWw6IFNiYlRpdGxlTGV2ZWwgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogU29tZXRpbWVzIHdlIG5lZWQgYSB0aXRsZSBpbiB0aGUgbWFya3VwIHRvIHByZXNlbnQgYSBwcm9wZXIgaGllcmFyY2h5XG4gICAqIHRvIHRoZSBzY3JlZW4gcmVhZGVycyB3aGlsZSB3ZSBkbyBub3Qgd2FudCB0byBsZXQgdGhhdCB0aXRsZSBhcHBlYXJcbiAgICogdmlzdWFsbHkuIEluIHRoaXMgY2FzZSB3ZSBzZXQgdmlzdWFsbHlIaWRkZW4gdG8gdHJ1ZS5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICd2aXN1YWxseS1oaWRkZW4nLCByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciB2aXN1YWxseUhpZGRlbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbGV2ZWwnKSkge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUxldmVsID0gdGhpcy5sZXZlbDtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItdGl0bGVcIj5cbiAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBaUJzQixnQkFBWSxNQUFBOztvQkFBUyx5QkFBeUIsVUFBVTs7Ozs7Ozs7OztBQUF4RCxTQUFBLG1CQUFxQixZQUFvQztBQUFBOztBQUtoRCxrREFBQSxrQkFBQSxNQUFBLHFCQUF1QyxHQUFHO0FBSXZFLHlEQUFBLGtCQUFBLE1BQUEsd0JBQUEsR0FBQSxrQkFBQSxNQUFBLDJCQUFvRCxJQUFJO0FBU3hELDREQUFBLGtCQUFBLE1BQUEsOEJBQUEsR0FBQSxrQkFBQSxNQUFBLDhCQUEwQyxLQUFLOzs7O0lBYmxCLElBQWdCLFFBQTJCO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUEzQyxJQUFnQixNQUEyQixPQUFBO0FBQUEseUJBQUEseUJBQUE7QUFBQSxJQUFBO0FBQUE7QUFBQSxJQUl4RSxJQUFnQixjQUF5QztBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBekQsSUFBZ0IsWUFBeUMsT0FBQTtBQUFBLHlCQUFBLCtCQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQVN6RCxJQUFnQixpQkFBZ0M7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQWhELElBQWdCLGVBQWdDLE9BQUE7QUFBQSx5QkFBQSxrQ0FBQTtBQUFBLElBQUE7QUFBQSxJQUU3QixXQUFXLG1CQUF1QztBQUNuRSxZQUFNLFdBQVcsaUJBQWlCO0FBRTlCLFVBQUEsa0JBQWtCLElBQUksT0FBTyxHQUFHO0FBQzdCLGFBQUEsVUFBVSxZQUFZLEtBQUs7QUFBQSxNQUFBO0FBQUEsSUFDbEM7QUFBQSxJQUdpQixTQUFNO0FBQ2hCLGFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLElBQUE7QUFBQSxLQXhCb0IseUNBSTdCLCtDQVNBOztBQWJDLHdCQUFBLENBQUEsU0FBUyxFQUFFLFNBQVMsS0FBTSxDQUFBLENBQUM7K0JBRzNCLFNBQVMsRUFBRSxXQUFXLGdCQUFnQixTQUFTLEtBQUEsQ0FBTSxDQUFDO0FBUXRELGlDQUFBLENBQUEsYUFDQSxTQUFTLEVBQUUsV0FBVyxtQkFBbUIsU0FBUyxNQUFNLE1BQU0sUUFBUyxDQUFBLENBQUM7QUFaNUIsaUJBQUEsSUFBQSxNQUFBLG1CQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsU0FBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxXQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBQSxPQUFBLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFBLFFBQTJCO0FBQUEsU0FBQSxVQUFBLGFBQUEscUJBQUEsd0JBQUE7QUFJeEQsaUJBQUEsSUFBQSxNQUFBLHlCQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEsZUFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxpQkFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQUEsYUFBQSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBQSxjQUF5QztBQUFBLFNBQUEsVUFBQSxhQUFBLDJCQUFBLDhCQUFBO0FBU3pDLGlCQUFBLElBQUEsTUFBQSw0QkFBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLGtCQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLG9CQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBQSxnQkFBQSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBQSxpQkFBZ0M7QUFBQSxTQUFBLFVBQUEsYUFBQSw4QkFBQSxpQ0FBQTs7UUFqQnpCLEdBQUksT0FBRyxXQUNQLEdBQU0sU0FBbUIsT0FGNUI7OyJ9
171
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGUtYmFzZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3RpdGxlL3RpdGxlLWJhc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCwgUHJvcGVydHlWYWx1ZXMsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBodG1sIH0gZnJvbSAnbGl0L3N0YXRpYy1odG1sLmpzJztcblxuaW1wb3J0IHsgU2JiRWxlbWVudEludGVybmFsc01peGluIH0gZnJvbSAnLi4vY29yZS9taXhpbnMuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90aXRsZS1jb21tb24uc2Nzcz9saXQmaW5saW5lJztcblxuZXhwb3J0IHR5cGUgU2JiVGl0bGVMZXZlbCA9ICcxJyB8ICcyJyB8ICczJyB8ICc0JyB8ICc1JyB8ICc2JztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIHRpdGxlIHdpdGggYSBoZWFkaW5nIHJvbGUuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTYmJUaXRsZUJhc2UgZXh0ZW5kcyBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHJvbGUgPSAnaGVhZGluZyc7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBUaXRsZSBsZXZlbCAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBsZXZlbDogU2JiVGl0bGVMZXZlbCA9ICcxJztcblxuICAvKiogVmlzdWFsIGxldmVsIGZvciB0aGUgdGl0bGUuIE9wdGlvbmFsLCBpZiBub3Qgc2V0LCB0aGUgdmFsdWUgb2YgbGV2ZWwgd2lsbCBiZSB1c2VkLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICd2aXN1YWwtbGV2ZWwnLCByZWZsZWN0OiB0cnVlIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciB2aXN1YWxMZXZlbDogU2JiVGl0bGVMZXZlbCB8IG51bGwgPSBudWxsO1xuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbGV2ZWwnKSkge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuYXJpYUxldmVsID0gdGhpcy5sZXZlbDtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGA8c2xvdD48L3Nsb3Q+YDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFjc0IsZ0JBQVksTUFBQTs7b0JBQVMseUJBQXlCLFVBQVU7Ozs7Ozs7QUFBeEQsU0FBQSxtQkFBcUIsWUFBb0M7QUFBQTs7QUFLaEQsa0RBQUEsa0JBQUEsTUFBQSxxQkFBdUMsR0FBRztBQUl2RSx5REFBQSxrQkFBQSxNQUFBLHdCQUFBLEdBQUEsa0JBQUEsTUFBQSwyQkFBb0QsSUFBSTs7OztJQUozQixJQUFnQixRQUFLO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUFyQixJQUFnQixNQUFLLE9BQUE7QUFBQSx5QkFBQSx5QkFBQTtBQUFBLElBQUE7QUFBQTtBQUFBLElBSWxELElBQWdCLGNBQVc7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQTNCLElBQWdCLFlBQVcsT0FBQTtBQUFBLHlCQUFBLCtCQUFBO0FBQUEsSUFBQTtBQUFBLElBRVIsV0FBVyxtQkFBdUM7QUFDbkUsWUFBTSxXQUFXLGlCQUFpQjtBQUVsQyxVQUFJLGtCQUFrQixJQUFJLE9BQU8sR0FBRztBQUNsQyxhQUFLLFVBQVUsWUFBWSxLQUFLO0FBQUEsTUFBQTtBQUFBLElBQ2xDO0FBQUEsSUFHaUIsU0FBTTtBQUN2QixhQUFPO0FBQUEsSUFBQTtBQUFBLEtBZm9CLHlDQUk3Qjs7QUFKQyx3QkFBQSxDQUFBLFNBQVMsRUFBRSxTQUFTLEtBQUEsQ0FBTSxDQUFDOytCQUczQixTQUFTLEVBQUUsV0FBVyxnQkFBZ0IsU0FBUyxLQUFBLENBQU0sQ0FBQztBQUgxQixpQkFBQSxJQUFBLE1BQUEsbUJBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxTQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLFdBQUEsS0FBQSxLQUFBLENBQUEsUUFBQSxJQUFnQixPQUFLLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFMLFFBQUs7QUFBQSxJQUFBLEtBQUEsVUFBQSxhQUFBLHFCQUFBLHdCQUFBO0FBSWxELGlCQUFBLElBQUEsTUFBQSx5QkFBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLGVBQUEsUUFBQSxPQUFBLFNBQUEsT0FBQSxRQUFBLEVBQUEsS0FBQSxDQUFBLFFBQUEsaUJBQUEsS0FBQSxLQUFBLENBQUEsUUFBQSxJQUFnQixhQUFXLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFYLGNBQVc7QUFBQSxJQUFBLEtBQUEsVUFBQSxhQUFBLDJCQUFBLDhCQUFBOztRQVJKLEdBQUEsT0FBTyxXQUNQLEdBQUEsU0FBeUIsT0FGNUI7OyJ9
@@ -2,6 +2,8 @@ import { CSSResultGroup } from 'lit';
2
2
  import { SbbTitleBase } from './title-base.js';
3
3
  declare const SbbTitleElement_base: import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbNegativeMixinType> & typeof SbbTitleBase;
4
4
  /**
5
+ * @slot - Use the unnamed slot for the content of the title.
6
+ *
5
7
  * @cssprop [--sbb-title-margin-block-start=var(--sbb-spacing-responsive-m)] - Margin block start of the title.
6
8
  * @cssprop [--sbb-title-margin-block-end=var(--sbb-spacing-responsive-s)] - Margin block end of the title.
7
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"title.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/title/title.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK1C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;;AAG/C;;;GAGG;AACH,qBAEM,eAAgB,SAAQ,oBAA8B;IAC1D,OAAuB,MAAM,EAAE,cAAc,CAAgC;CAC9E;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,WAAW,EAAE,eAAe,CAAC;KAC9B;CACF"}
1
+ {"version":3,"file":"title.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/title/title.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK1C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;;AAG/C;;;;;GAKG;AACH,qBAEM,eAAgB,SAAQ,oBAA8B;IAC1D,OAAuB,MAAM,EAAE,cAAc,CAAgC;CAC9E;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,WAAW,EAAE,eAAe,CAAC;KAC9B;CACF"}
@@ -4,8 +4,8 @@ import { SbbNegativeMixin } from "../core/mixins.js";
4
4
  import { SbbTitleBase } from "./title-base.js";
5
5
  import { css } from "lit";
6
6
  const style = css`:host {
7
- --sbb-title-margin-block-start: 0;
8
- --sbb-title-margin-block-end: 0;
7
+ --sbb-title-margin-block-start: var(--sbb-spacing-responsive-m);
8
+ --sbb-title-margin-block-end: var(--sbb-spacing-responsive-s);
9
9
  margin-block: var(--sbb-title-margin-block-start) var(--sbb-title-margin-block-end);
10
10
  }
11
11
 
@@ -13,29 +13,24 @@ const style = css`:host {
13
13
  --sbb-title-text-color-normal: var(--sbb-color-milk);
14
14
  }
15
15
 
16
- :host(:where(:not([visually-hidden]))) {
17
- --sbb-title-margin-block-start: var(--sbb-spacing-responsive-m);
18
- --sbb-title-margin-block-end: var(--sbb-spacing-responsive-s);
19
- }
20
-
21
- :host(:where([level="1"]:not([visual-level]), [visual-level="1"]):where(:not([visually-hidden]))) {
16
+ :host(:where([level="1"]:not([visual-level]), [visual-level="1"])) {
22
17
  --sbb-title-margin-block-start: var(--sbb-spacing-responsive-l);
23
18
  }
24
19
 
25
- :host(:where([level="2"]:not([visual-level]), [visual-level="2"]):where(:not([visually-hidden]))),
26
- :host(:where([level="3"]:not([visual-level]), [visual-level="3"]):where(:not([visually-hidden]))) {
20
+ :host(:where([level="2"]:not([visual-level]), [visual-level="2"])),
21
+ :host(:where([level="3"]:not([visual-level]), [visual-level="3"])) {
27
22
  --sbb-title-margin-block-end: var(--sbb-spacing-responsive-xxxs);
28
23
  }
29
24
 
30
- :host(:where([level="4"]:not([visual-level]), [visual-level="4"]):where(:not([visually-hidden]))) {
25
+ :host(:where([level="4"]:not([visual-level]), [visual-level="4"])) {
31
26
  --sbb-title-margin-block-end: var(--sbb-spacing-fixed-3x);
32
27
  }
33
28
 
34
- :host(:where([level="5"]:not([visual-level]), [visual-level="5"]):where(:not([visually-hidden]))) {
29
+ :host(:where([level="5"]:not([visual-level]), [visual-level="5"])) {
35
30
  --sbb-title-margin-block-end: var(--sbb-spacing-fixed-2x);
36
31
  }
37
32
 
38
- :host(:where([level="6"]:not([visual-level]), [visual-level="6"]):where(:not([visually-hidden]))) {
33
+ :host(:where([level="6"]:not([visual-level]), [visual-level="6"])) {
39
34
  --sbb-title-margin-block-end: var(--sbb-spacing-fixed-1x);
40
35
  }`;
41
36
  let SbbTitleElement = (() => {
@@ -57,4 +52,4 @@ let SbbTitleElement = (() => {
57
52
  export {
58
53
  SbbTitleElement
59
54
  };
60
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGUuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGl0bGUvdGl0bGUuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiTmVnYXRpdmVNaXhpbiB9IGZyb20gJy4uL2NvcmUvbWl4aW5zLmpzJztcblxuaW1wb3J0IHsgU2JiVGl0bGVCYXNlIH0gZnJvbSAnLi90aXRsZS1iYXNlLmpzJztcbmltcG9ydCBzdHlsZSBmcm9tICcuL3RpdGxlLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogQGNzc3Byb3AgWy0tc2JiLXRpdGxlLW1hcmdpbi1ibG9jay1zdGFydD12YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLW0pXSAtIE1hcmdpbiBibG9jayBzdGFydCBvZiB0aGUgdGl0bGUuXG4gKiBAY3NzcHJvcCBbLS1zYmItdGl0bGUtbWFyZ2luLWJsb2NrLWVuZD12YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXMpXSAtIE1hcmdpbiBibG9jayBlbmQgb2YgdGhlIHRpdGxlLlxuICovXG5leHBvcnRcbkBjdXN0b21FbGVtZW50KCdzYmItdGl0bGUnKVxuY2xhc3MgU2JiVGl0bGVFbGVtZW50IGV4dGVuZHMgU2JiTmVnYXRpdmVNaXhpbihTYmJUaXRsZUJhc2UpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW1NiYlRpdGxlQmFzZS5zdHlsZXMsIHN0eWxlXTtcbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10aXRsZSc6IFNiYlRpdGxlRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFjTSxtQkFBZSxNQUFBOzswQkFEcEIsY0FBYyxXQUFXLENBQUM7Ozs7b0JBQ0csaUJBQWlCLFlBQVk7QUFBckMsRUFBQSxtQkFBUSxZQUE4QjtBQUFBOztBQUE1RCxpQkFFQyxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O1FBRHdCLEdBQU0sU0FBbUIsQ0FBQyxhQUFhLFFBQVEsS0FBSyxHQUR2RSxrQkFBZSxZQUFBLHVCQUFBLEdBQUM7OzsifQ==
55
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGUuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdGl0bGUvdGl0bGUuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiTmVnYXRpdmVNaXhpbiB9IGZyb20gJy4uL2NvcmUvbWl4aW5zLmpzJztcblxuaW1wb3J0IHsgU2JiVGl0bGVCYXNlIH0gZnJvbSAnLi90aXRsZS1iYXNlLmpzJztcbmltcG9ydCBzdHlsZSBmcm9tICcuL3RpdGxlLnNjc3M/bGl0JmlubGluZSc7XG5cbi8qKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCBmb3IgdGhlIGNvbnRlbnQgb2YgdGhlIHRpdGxlLlxuICpcbiAqIEBjc3Nwcm9wIFstLXNiYi10aXRsZS1tYXJnaW4tYmxvY2stc3RhcnQ9dmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS1tKV0gLSBNYXJnaW4gYmxvY2sgc3RhcnQgb2YgdGhlIHRpdGxlLlxuICogQGNzc3Byb3AgWy0tc2JiLXRpdGxlLW1hcmdpbi1ibG9jay1lbmQ9dmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS1zKV0gLSBNYXJnaW4gYmxvY2sgZW5kIG9mIHRoZSB0aXRsZS5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLXRpdGxlJylcbmNsYXNzIFNiYlRpdGxlRWxlbWVudCBleHRlbmRzIFNiYk5lZ2F0aXZlTWl4aW4oU2JiVGl0bGVCYXNlKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtTYmJUaXRsZUJhc2Uuc3R5bGVzLCBzdHlsZV07XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGl0bGUnOiBTYmJUaXRsZUVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQWdCTSxtQkFBZSxNQUFBOzswQkFEcEIsY0FBYyxXQUFXLENBQUM7Ozs7b0JBQ0csaUJBQWlCLFlBQVk7QUFBckMsRUFBQSxtQkFBUSxZQUE4QjtBQUFBOztBQUE1RCxpQkFBQSxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O1FBQ3lCLEdBQUEsU0FBeUIsQ0FBQyxhQUFhLFFBQVEsS0FBSyxHQUR2RSxrQkFBQSxZQUFBLHVCQUFBLEdBQWdCOzs7In0=
@@ -1 +1 @@
1
- {"version":3,"file":"toast.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/toast/toast.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAYnE,OAAO,iCAAiC,CAAC;AACzC,OAAO,eAAe,CAAC;AAEvB,KAAK,wBAAwB,GAAG,KAAK,GAAG,QAAQ,CAAC;AACjD,KAAK,0BAA0B,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAC;AAChF,MAAM,MAAM,gBAAgB,GAAG,GAAG,wBAAwB,IAAI,0BAA0B,EAAE,CAAC;;AAK3F;;;;;;;;;;;;;GAaG;AACH,qBAEM,eAAgB,SAAQ,oBAE7B;IACC,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD;;;;OAIG;IACH,SAEgB,OAAO,EAAE,MAAM,CAAK;IAEpC,6CAA6C;IAC7C,SAA6C,QAAQ,EAAE,gBAAgB,CAAmB;IAE1F;;;OAGG;IACH,SAA4B,UAAU,EAAE,QAAQ,GAAG,WAAW,GAAG,KAAK,CAAY;IAElF,OAAO,CAAC,aAAa,CAAC,CAAgC;IACtD,OAAO,CAAC,SAAS,CAAmC;;IAOpC,iBAAiB,IAAI,IAAI;IAQzB,oBAAoB,IAAI,IAAI;cAQzB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAQ5E;;;OAGG;IACI,IAAI,IAAI,IAAI;IAoBnB;;OAEG;IACI,KAAK,IAAI,IAAI;IAkBpB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,wBAAwB;IAIhC;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,mBAAmB;IAyB3B,OAAO,CAAC,oBAAoB;IAS5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;cAQN,MAAM,IAAI,cAAc;CAgC5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,WAAW,EAAE,eAAe,CAAC;KAC9B;CACF"}
1
+ {"version":3,"file":"toast.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/toast/toast.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAYnE,OAAO,iCAAiC,CAAC;AACzC,OAAO,eAAe,CAAC;AAEvB,KAAK,wBAAwB,GAAG,KAAK,GAAG,QAAQ,CAAC;AACjD,KAAK,0BAA0B,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,KAAK,CAAC;AAChF,MAAM,MAAM,gBAAgB,GAAG,GAAG,wBAAwB,IAAI,0BAA0B,EAAE,CAAC;;AAK3F;;;;;;;;;;;;;GAaG;AACH,qBAEM,eAAgB,SAAQ,oBAE7B;IACC,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD;;;;OAIG;IACH,SAEgB,OAAO,EAAE,MAAM,CAAK;IAEpC,6CAA6C;IAC7C,SAA6C,QAAQ,EAAE,gBAAgB,CAAmB;IAE1F;;;OAGG;IACH,SAA4B,UAAU,EAAE,QAAQ,GAAG,WAAW,GAAG,KAAK,CAAY;IAElF,OAAO,CAAC,aAAa,CAAC,CAAgC;IACtD,OAAO,CAAC,SAAS,CAAmC;;IAOpC,iBAAiB,IAAI,IAAI;IAQzB,oBAAoB,IAAI,IAAI;cAQzB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAQ5E;;;OAGG;IACI,IAAI,IAAI,IAAI;IAgBnB;;OAEG;IACI,KAAK,IAAI,IAAI;IAepB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,wBAAwB;IAIhC;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,mBAAmB;IAyB3B,OAAO,CAAC,oBAAoB;IAS5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;cAQN,MAAM,IAAI,cAAc;CAgC5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,WAAW,EAAE,eAAe,CAAC;KAC9B;CACF"}
@@ -195,7 +195,6 @@ let SbbToastElement = (() => {
195
195
  let _politeness_extraInitializers = [];
196
196
  _a = class extends _classSuper {
197
197
  constructor() {
198
- var _a2;
199
198
  super();
200
199
  __privateAdd(this, _timeout_accessor_storage);
201
200
  __privateAdd(this, _position_accessor_storage);
@@ -205,7 +204,7 @@ let SbbToastElement = (() => {
205
204
  __privateSet(this, _politeness_accessor_storage, (__runInitializers(this, _position_extraInitializers), __runInitializers(this, _politeness_initializers, "polite")));
206
205
  this._closeTimeout = __runInitializers(this, _politeness_extraInitializers);
207
206
  this._language = new SbbLanguageController(this);
208
- (_a2 = this.addEventListener) == null ? void 0 : _a2.call(this, "click", (e) => this._onClick(e));
207
+ this.addEventListener?.("click", (e) => this._onClick(e));
209
208
  }
210
209
  /**
211
210
  * The length of time in milliseconds to wait before automatically dismissing the toast.
@@ -248,7 +247,7 @@ let SbbToastElement = (() => {
248
247
  willUpdate(changedProperties) {
249
248
  super.willUpdate(changedProperties);
250
249
  if (changedProperties.has("politeness")) {
251
- this.setAttribute("aria-live", this.politeness);
250
+ this.internals.ariaLive = this.politeness;
252
251
  }
253
252
  }
254
253
  /**
@@ -256,14 +255,10 @@ let SbbToastElement = (() => {
256
255
  * If there are other opened toasts in the page, close them first.
257
256
  */
258
257
  open() {
259
- var _a2;
260
- if (this.state !== "closed") {
258
+ if (this.state !== "closed" || !this.willOpen.emit()) {
261
259
  return;
262
260
  }
263
- if (!this.willOpen.emit()) {
264
- return;
265
- }
266
- (_a2 = this.showPopover) == null ? void 0 : _a2.call(this);
261
+ this.showPopover?.();
267
262
  this.state = "opening";
268
263
  this._closeOtherToasts();
269
264
  if (this._isZeroAnimationDuration()) {
@@ -274,10 +269,7 @@ let SbbToastElement = (() => {
274
269
  * Close the toast.
275
270
  */
276
271
  close() {
277
- if (this.state !== "opened") {
278
- return;
279
- }
280
- if (!this.willClose.emit()) {
272
+ if (this.state !== "opened" || !this.willClose.emit()) {
281
273
  return;
282
274
  }
283
275
  clearTimeout(this._closeTimeout);
@@ -287,9 +279,8 @@ let SbbToastElement = (() => {
287
279
  }
288
280
  }
289
281
  _handleClosing() {
290
- var _a2;
291
282
  this.state = "closed";
292
- (_a2 = this.hidePopover) == null ? void 0 : _a2.call(this);
283
+ this.hidePopover?.();
293
284
  this.didClose.emit();
294
285
  }
295
286
  _handleOpening() {
@@ -406,4 +397,4 @@ let SbbToastElement = (() => {
406
397
  export {
407
398
  SbbToastElement
408
399
  };
409
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdG9hc3QvdG9hc3QuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFByb3BlcnR5VmFsdWVzLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBub3RoaW5nIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYlRyYW5zcGFyZW50QnV0dG9uRWxlbWVudCwgU2JiVHJhbnNwYXJlbnRCdXR0b25MaW5rRWxlbWVudCB9IGZyb20gJy4uL2J1dHRvbi5qcyc7XG5pbXBvcnQgeyBTYmJPcGVuQ2xvc2VCYXNlRWxlbWVudCB9IGZyb20gJy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIgfSBmcm9tICcuLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGZvcmNlVHlwZSB9IGZyb20gJy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBpc0xlYW4sIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uIH0gZnJvbSAnLi4vY29yZS9kb20uanMnO1xuaW1wb3J0IHsgY29tcG9zZWRQYXRoSGFzQXR0cmlidXRlIH0gZnJvbSAnLi4vY29yZS9ldmVudGluZy5qcyc7XG5pbXBvcnQgeyBpMThuQ2xvc2VBbGVydCB9IGZyb20gJy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgeyBTYmJIeWRyYXRpb25NaXhpbiwgU2JiUmVhZG9ubHlNaXhpbiB9IGZyb20gJy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi9pY29uLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiTGlua0J1dHRvbkVsZW1lbnQsIFNiYkxpbmtFbGVtZW50LCBTYmJMaW5rU3RhdGljRWxlbWVudCB9IGZyb20gJy4uL2xpbmsuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90b2FzdC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uL2J1dHRvbi90cmFuc3BhcmVudC1idXR0b24uanMnO1xuaW1wb3J0ICcuLi9kaXZpZGVyLmpzJztcblxudHlwZSBTYmJUb2FzdFBvc2l0aW9uVmVydGljYWwgPSAndG9wJyB8ICdib3R0b20nO1xudHlwZSBTYmJUb2FzdFBvc2l0aW9uSG9yaXpvbnRhbCA9ICdsZWZ0JyB8ICdzdGFydCcgfCAnY2VudGVyJyB8ICdyaWdodCcgfCAnZW5kJztcbmV4cG9ydCB0eXBlIFNiYlRvYXN0UG9zaXRpb24gPSBgJHtTYmJUb2FzdFBvc2l0aW9uVmVydGljYWx9LSR7U2JiVG9hc3RQb3NpdGlvbkhvcml6b250YWx9YDtcblxuLy8gQSBnbG9iYWwgY29sbGVjdGlvbiBvZiBleGlzdGluZyB0b2FzdHNcbmNvbnN0IHRvYXN0UmVmcyA9IG5ldyBTZXQ8U2JiVG9hc3RFbGVtZW50PigpO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgdG9hc3Qgbm90aWZpY2F0aW9uLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGBzYmItdG9hc3RgLlxuICogQHNsb3QgaWNvbiAtIEFzc2lnbiBhIGN1c3RvbSBpY29uIHZpYSBzbG90LlxuICogQHNsb3QgYWN0aW9uIC0gUHJvdmlkZSBhIGN1c3RvbSBhY3Rpb24gZm9yIHRoaXMgdG9hc3QuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLXRvYXN0YCBzdGFydHMgdGhlIG9wZW5pbmcgdHJhbnNpdGlvbi4gQ2FuIGJlIGNhbmNlbGVkLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLXRvYXN0YCBpcyBvcGVuZWQuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi10b2FzdGAgYmVnaW5zIHRoZSBjbG9zaW5nIHRyYW5zaXRpb24uIENhbiBiZSBjYW5jZWxlZC5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZENsb3NlIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItdG9hc3RgIGlzIGNsb3NlZC5cbiAqIEBjc3Nwcm9wIFstLXNiYi10b2FzdC16LWluZGV4PXZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleCldIC0gVG8gc3BlY2lmeSBhIGN1c3RvbSBzdGFjayBvcmRlcixcbiAqIHRoZSBgei1pbmRleGAgY2FuIGJlIG92ZXJyaWRkZW4gYnkgZGVmaW5pbmcgdGhpcyBDU1MgdmFyaWFibGUuIFRoZSBkZWZhdWx0IGB6LWluZGV4YCBvZiB0aGVcbiAqIGNvbXBvbmVudCBpcyBzZXQgdG8gYHZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleClgIHdpdGggYSB2YWx1ZSBvZiBgMTAwMGAuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi10b2FzdCcpXG5jbGFzcyBTYmJUb2FzdEVsZW1lbnQgZXh0ZW5kcyBTYmJJY29uTmFtZU1peGluKFxuICBTYmJIeWRyYXRpb25NaXhpbihTYmJSZWFkb25seU1peGluKFNiYk9wZW5DbG9zZUJhc2VFbGVtZW50KSksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqXG4gICAqIFRoZSBsZW5ndGggb2YgdGltZSBpbiBtaWxsaXNlY29uZHMgdG8gd2FpdCBiZWZvcmUgYXV0b21hdGljYWxseSBkaXNtaXNzaW5nIHRoZSB0b2FzdC5cbiAgICogSWYgMCAoZGVmYXVsdCksIGl0IHN0YXlzIG9wZW4gaW5kZWZpbml0ZWx5LlxuICAgKiBGcm9tIGFjY2Vzc2liaWxpdHkgcGVyc3BlY3RpdmUsIGl0IGlzIHJlY29tbWVuZGVkIHRvIHNldCBhIHRpbWVvdXQgb2YgYXQgbGVhc3QgMjAgc2Vjb25kcy5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIHRpbWVvdXQ6IG51bWJlciA9IDA7XG5cbiAgLyoqIFRoZSBwb3NpdGlvbiB3aGVyZSB0byBwbGFjZSB0aGUgdG9hc3QuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHBvc2l0aW9uOiBTYmJUb2FzdFBvc2l0aW9uID0gJ2JvdHRvbS1jZW50ZXInO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJJQSBwb2xpdGVuZXNzIGxldmVsLlxuICAgKiBDaGVjayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BY2Nlc3NpYmlsaXR5L0FSSUEvQVJJQV9MaXZlX1JlZ2lvbnMjbGl2ZV9yZWdpb25zIGZvciBmdXJ0aGVyIGluZm9cbiAgICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyBhY2Nlc3NvciBwb2xpdGVuZXNzOiAncG9saXRlJyB8ICdhc3NlcnRpdmUnIHwgJ29mZicgPSAncG9saXRlJztcblxuICBwcml2YXRlIF9jbG9zZVRpbWVvdXQ/OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PjtcbiAgcHJpdmF0ZSBfbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdjbGljaycsIChlKSA9PiB0aGlzLl9vbkNsaWNrKGUpKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLnBvcG92ZXIgPSAnbWFudWFsJztcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuXG4gICAgLy8gQWRkIHRoaXMgdG9hc3QgdG8gdGhlIGdsb2JhbCBjb2xsZWN0aW9uXG4gICAgdG9hc3RSZWZzLmFkZCh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBkaXNjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIGNsZWFyVGltZW91dCh0aGlzLl9jbG9zZVRpbWVvdXQpO1xuXG4gICAgLy8gUmVtb3ZlIHRoaXMgaW5zdGFuY2VcbiAgICB0b2FzdFJlZnMuZGVsZXRlKHRoaXMpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdwb2xpdGVuZXNzJykpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdhcmlhLWxpdmUnLCB0aGlzLnBvbGl0ZW5lc3MpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVuIHRoZSB0b2FzdC5cbiAgICogSWYgdGhlcmUgYXJlIG90aGVyIG9wZW5lZCB0b2FzdHMgaW4gdGhlIHBhZ2UsIGNsb3NlIHRoZW0gZmlyc3QuXG4gICAqL1xuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdGF0ZSAhPT0gJ2Nsb3NlZCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMud2lsbE9wZW4uZW1pdCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zaG93UG9wb3Zlcj8uKCk7XG4gICAgdGhpcy5zdGF0ZSA9ICdvcGVuaW5nJztcbiAgICB0aGlzLl9jbG9zZU90aGVyVG9hc3RzKCk7XG5cbiAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZGlyZWN0bHkgc2V0IHRoZSBgb3BlbmVkYCBzdGF0ZS5cbiAgICBpZiAodGhpcy5faXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKSkge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZSB0aGUgdG9hc3QuXG4gICAqL1xuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdvcGVuZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLndpbGxDbG9zZS5lbWl0KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuX2Nsb3NlVGltZW91dCk7XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zaW5nJztcblxuICAgIC8vIElmIHRoZSBhbmltYXRpb24gZHVyYXRpb24gaXMgemVybywgdGhlIGFuaW1hdGlvbmVuZCBldmVudCBpcyBub3QgYWx3YXlzIGZpcmVkIHJlbGlhYmx5LlxuICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBjbG9zZWRgIHN0YXRlLlxuICAgIGlmICh0aGlzLl9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xvc2luZygpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlID0gJ2Nsb3NlZCc7XG4gICAgdGhpcy5oaWRlUG9wb3Zlcj8uKCk7XG4gICAgdGhpcy5kaWRDbG9zZS5lbWl0KCk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVPcGVuaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmVkJztcbiAgICB0aGlzLmRpZE9wZW4uZW1pdCgpO1xuXG4gICAgLy8gU3RhcnQgdGhlIGNvdW50ZG93biB0byBjbG9zZSBpdFxuICAgIGlmICh0aGlzLnRpbWVvdXQpIHtcbiAgICAgIHRoaXMuX2Nsb3NlVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jbG9zZSgpLCB0aGlzLnRpbWVvdXQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENsb3NlIHRoZSB0b2FzdCBvbiBjbGljayBvZiBhbnkgZWxlbWVudCB0aGF0IGhhcyB0aGUgJ3NiYi10b2FzdC1jbG9zZScgYXR0cmlidXRlLlxuICBwcml2YXRlIF9vbkNsaWNrKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGNsb3NlRWxlbWVudCA9IGNvbXBvc2VkUGF0aEhhc0F0dHJpYnV0ZShldmVudCwgJ3NiYi10b2FzdC1jbG9zZScsIHRoaXMpO1xuXG4gICAgaWYgKGNsb3NlRWxlbWVudCAmJiAhY2xvc2VFbGVtZW50Lmhhc0F0dHJpYnV0ZSgnZGlzYWJsZWQnKSkge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1plcm9BbmltYXRpb25EdXJhdGlvbih0aGlzLCAnLS1zYmItdG9hc3QtYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICAvKipcbiAgICogU2xvdHRlZCB0ZXh0IG5vZGVzIGFyZSBub3QgcmVhZCBjb3JyZWN0bHkgYnkgc2NyZWVuIHJlYWRlcnMgb24gQ2hyb21lLlxuICAgKiBUbyBhZGRyZXNzIHRoZSBwcm9ibGVtLCBpZiB0aGVyZSBpcyBhdCBsZWFzdCBhIHJvb3QgdGV4dCBub2RlLFxuICAgKiB3ZSB3cmFwIHRoZSB3aG9sZSBjb250ZW50IGluIGEgPHNwYW4+IHRhZ1xuICAgKi9cbiAgcHJpdmF0ZSBfb25Db250ZW50U2xvdENoYW5nZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBzbG90Tm9kZXMgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxTbG90RWxlbWVudCkuYXNzaWduZWROb2RlcygpO1xuXG4gICAgaWYgKHNsb3ROb2Rlcy5zb21lKChlbCkgPT4gZWwubm9kZVR5cGUgPT09IE5vZGUuVEVYVF9OT0RFKSkge1xuICAgICAgY29uc3Qgc3BhbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcbiAgICAgIHRoaXMucHJlcGVuZChzcGFuKTtcbiAgICAgIHNwYW4uYXBwZW5kKC4uLnNsb3ROb2Rlcyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfb25BY3Rpb25TbG90Q2hhbmdlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHNsb3ROb2RlcyA9IChldmVudC50YXJnZXQgYXMgSFRNTFNsb3RFbGVtZW50KS5hc3NpZ25lZE5vZGVzKCk7XG5cbiAgICAvLyBGb3JjZSB0aGUgdmlzdWFsIHN0YXRlIG9uIHNsb3R0ZWQgYnV0dG9uc1xuICAgIGNvbnN0IGJ1dHRvbnM6IChTYmJUcmFuc3BhcmVudEJ1dHRvbkVsZW1lbnQgfCBTYmJUcmFuc3BhcmVudEJ1dHRvbkxpbmtFbGVtZW50KVtdID1cbiAgICAgIHNsb3ROb2Rlcy5maWx0ZXIoXG4gICAgICAgIChlbCkgPT5cbiAgICAgICAgICBlbC5ub2RlTmFtZSA9PT0gJ1NCQi1UUkFOU1BBUkVOVC1CVVRUT04nIHx8IGVsLm5vZGVOYW1lID09PSAnU0JCLVRSQU5TUEFSRU5ULUJVVFRPTi1MSU5LJyxcbiAgICAgICkgYXMgKFNiYlRyYW5zcGFyZW50QnV0dG9uRWxlbWVudCB8IFNiYlRyYW5zcGFyZW50QnV0dG9uTGlua0VsZW1lbnQpW107XG4gICAgYnV0dG9ucy5mb3JFYWNoKChidG46IFNiYlRyYW5zcGFyZW50QnV0dG9uRWxlbWVudCB8IFNiYlRyYW5zcGFyZW50QnV0dG9uTGlua0VsZW1lbnQpID0+IHtcbiAgICAgIGJ0bi5uZWdhdGl2ZSA9IHRydWU7XG4gICAgICBidG4uc2l6ZSA9IGlzTGVhbigpID8gJ3MnIDogJ20nO1xuICAgIH0pO1xuXG4gICAgLy8gRm9yY2UgbmVnYXRpdmUgb24gaW5saW5lIHNsb3R0ZWQgbGlua3NcbiAgICBjb25zdCBsaW5rcyA9IHNsb3ROb2Rlcy5maWx0ZXIoKGVsKSA9PlxuICAgICAgWydTQkItTElOSycsICdTQkItTElOSy1CVVRUT04nLCAnU0JCLUxJTkstU1RBVElDJ10uaW5jbHVkZXMoZWwubm9kZU5hbWUpLFxuICAgICkgYXMgKFNiYkxpbmtFbGVtZW50IHwgU2JiTGlua0J1dHRvbkVsZW1lbnQgfCBTYmJMaW5rU3RhdGljRWxlbWVudClbXTtcbiAgICBsaW5rcy5mb3JFYWNoKChsaW5rKSA9PiB7XG4gICAgICBsaW5rLm5lZ2F0aXZlID0gdHJ1ZTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEluIHJhcmUgY2FzZXMgaXQgY2FuIGJlIHRoYXQgdGhlIGFuaW1hdGlvbkVuZCBldmVudCBpcyB0cmlnZ2VyZWQgdHdpY2UuXG4gIC8vIFRvIGF2b2lkIGVudGVyaW5nIGEgY29ycnVwdCBzdGF0ZSwgZXhpdCB3aGVuIHN0YXRlIGlzIG5vdCBleHBlY3RlZC5cbiAgcHJpdmF0ZSBfb25Ub2FzdEFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICAvLyBPbiB0b2FzdCBvcGVuZWRcbiAgICBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ29wZW4nICYmIHRoaXMuc3RhdGUgPT09ICdvcGVuaW5nJykge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyAmJiB0aGlzLnN0YXRlID09PSAnY2xvc2luZycpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2luY2Ugd2UgZG8gbm90IHN0YWNrIHRvYXN0cywgd2UgZm9yY2UgdGhlIGNsb3Npbmcgb24gb3RoZXIgZXhpc3Rpbmcgb3BlbmVkIG9uZXNcbiAgICovXG4gIHByaXZhdGUgX2Nsb3NlT3RoZXJUb2FzdHMoKTogdm9pZCB7XG4gICAgdG9hc3RSZWZzLmZvckVhY2goKHQpID0+IHtcbiAgICAgIGlmICh0LmdldEF0dHJpYnV0ZSgnZGF0YS1zdGF0ZScpID09PSAnb3BlbmVkJykge1xuICAgICAgICB0LmNsb3NlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItdG9hc3RfX292ZXJsYXktY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItdG9hc3RcIiBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25Ub2FzdEFuaW1hdGlvbkVuZH0+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi10b2FzdC13cmFwcGVyXCI+XG4gICAgICAgICAgICAke3RoaXMucmVuZGVySWNvblNsb3QoKX1cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItdG9hc3RfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgPHNsb3QgQHNsb3RjaGFuZ2U9JHt0aGlzLl9vbkNvbnRlbnRTbG90Q2hhbmdlfT48L3Nsb3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxzbG90IG5hbWU9XCJhY3Rpb25cIiBAc2xvdGNoYW5nZT0ke3RoaXMuX29uQWN0aW9uU2xvdENoYW5nZX0+PC9zbG90PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItdG9hc3RfX2Nsb3NlXCI+XG4gICAgICAgICAgICA8c2JiLWRpdmlkZXJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItdG9hc3RfX2Nsb3NlLWRpdmlkZXJcIlxuICAgICAgICAgICAgICBvcmllbnRhdGlvbj1cInZlcnRpY2FsXCJcbiAgICAgICAgICAgICAgbmVnYXRpdmVcbiAgICAgICAgICAgID48L3NiYi1kaXZpZGVyPlxuICAgICAgICAgICAgJHshdGhpcy5yZWFkT25seVxuICAgICAgICAgICAgICA/IGh0bWxgPHNiYi10cmFuc3BhcmVudC1idXR0b25cbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLXRvYXN0X19jbG9zZS1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgaWNvbi1uYW1lPVwiY3Jvc3Mtc21hbGxcIlxuICAgICAgICAgICAgICAgICAgbmVnYXRpdmVcbiAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9JHtpMThuQ2xvc2VBbGVydFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICAgICAgICAgIHNiYi10b2FzdC1jbG9zZVxuICAgICAgICAgICAgICAgID48L3NiYi10cmFuc3BhcmVudC1idXR0b24+YFxuICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRvYXN0JzogU2JiVG9hc3RFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiX2EiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF5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
400
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvdG9hc3QvdG9hc3QuY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFByb3BlcnR5VmFsdWVzLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBodG1sLCBub3RoaW5nIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IFNiYlRyYW5zcGFyZW50QnV0dG9uRWxlbWVudCwgU2JiVHJhbnNwYXJlbnRCdXR0b25MaW5rRWxlbWVudCB9IGZyb20gJy4uL2J1dHRvbi5qcyc7XG5pbXBvcnQgeyBTYmJPcGVuQ2xvc2VCYXNlRWxlbWVudCB9IGZyb20gJy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIgfSBmcm9tICcuLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGZvcmNlVHlwZSB9IGZyb20gJy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBpc0xlYW4sIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uIH0gZnJvbSAnLi4vY29yZS9kb20uanMnO1xuaW1wb3J0IHsgY29tcG9zZWRQYXRoSGFzQXR0cmlidXRlIH0gZnJvbSAnLi4vY29yZS9ldmVudGluZy5qcyc7XG5pbXBvcnQgeyBpMThuQ2xvc2VBbGVydCB9IGZyb20gJy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgeyBTYmJIeWRyYXRpb25NaXhpbiwgU2JiUmVhZG9ubHlNaXhpbiB9IGZyb20gJy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi9pY29uLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiTGlua0J1dHRvbkVsZW1lbnQsIFNiYkxpbmtFbGVtZW50LCBTYmJMaW5rU3RhdGljRWxlbWVudCB9IGZyb20gJy4uL2xpbmsuanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi90b2FzdC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uL2J1dHRvbi90cmFuc3BhcmVudC1idXR0b24uanMnO1xuaW1wb3J0ICcuLi9kaXZpZGVyLmpzJztcblxudHlwZSBTYmJUb2FzdFBvc2l0aW9uVmVydGljYWwgPSAndG9wJyB8ICdib3R0b20nO1xudHlwZSBTYmJUb2FzdFBvc2l0aW9uSG9yaXpvbnRhbCA9ICdsZWZ0JyB8ICdzdGFydCcgfCAnY2VudGVyJyB8ICdyaWdodCcgfCAnZW5kJztcbmV4cG9ydCB0eXBlIFNiYlRvYXN0UG9zaXRpb24gPSBgJHtTYmJUb2FzdFBvc2l0aW9uVmVydGljYWx9LSR7U2JiVG9hc3RQb3NpdGlvbkhvcml6b250YWx9YDtcblxuLy8gQSBnbG9iYWwgY29sbGVjdGlvbiBvZiBleGlzdGluZyB0b2FzdHNcbmNvbnN0IHRvYXN0UmVmcyA9IG5ldyBTZXQ8U2JiVG9hc3RFbGVtZW50PigpO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgdG9hc3Qgbm90aWZpY2F0aW9uLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGBzYmItdG9hc3RgLlxuICogQHNsb3QgaWNvbiAtIEFzc2lnbiBhIGN1c3RvbSBpY29uIHZpYSBzbG90LlxuICogQHNsb3QgYWN0aW9uIC0gUHJvdmlkZSBhIGN1c3RvbSBhY3Rpb24gZm9yIHRoaXMgdG9hc3QuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLXRvYXN0YCBzdGFydHMgdGhlIG9wZW5pbmcgdHJhbnNpdGlvbi4gQ2FuIGJlIGNhbmNlbGVkLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLXRvYXN0YCBpcyBvcGVuZWQuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsQ2xvc2UgLSBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi10b2FzdGAgYmVnaW5zIHRoZSBjbG9zaW5nIHRyYW5zaXRpb24uIENhbiBiZSBjYW5jZWxlZC5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZENsb3NlIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItdG9hc3RgIGlzIGNsb3NlZC5cbiAqIEBjc3Nwcm9wIFstLXNiYi10b2FzdC16LWluZGV4PXZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleCldIC0gVG8gc3BlY2lmeSBhIGN1c3RvbSBzdGFjayBvcmRlcixcbiAqIHRoZSBgei1pbmRleGAgY2FuIGJlIG92ZXJyaWRkZW4gYnkgZGVmaW5pbmcgdGhpcyBDU1MgdmFyaWFibGUuIFRoZSBkZWZhdWx0IGB6LWluZGV4YCBvZiB0aGVcbiAqIGNvbXBvbmVudCBpcyBzZXQgdG8gYHZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleClgIHdpdGggYSB2YWx1ZSBvZiBgMTAwMGAuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi10b2FzdCcpXG5jbGFzcyBTYmJUb2FzdEVsZW1lbnQgZXh0ZW5kcyBTYmJJY29uTmFtZU1peGluKFxuICBTYmJIeWRyYXRpb25NaXhpbihTYmJSZWFkb25seU1peGluKFNiYk9wZW5DbG9zZUJhc2VFbGVtZW50KSksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqXG4gICAqIFRoZSBsZW5ndGggb2YgdGltZSBpbiBtaWxsaXNlY29uZHMgdG8gd2FpdCBiZWZvcmUgYXV0b21hdGljYWxseSBkaXNtaXNzaW5nIHRoZSB0b2FzdC5cbiAgICogSWYgMCAoZGVmYXVsdCksIGl0IHN0YXlzIG9wZW4gaW5kZWZpbml0ZWx5LlxuICAgKiBGcm9tIGFjY2Vzc2liaWxpdHkgcGVyc3BlY3RpdmUsIGl0IGlzIHJlY29tbWVuZGVkIHRvIHNldCBhIHRpbWVvdXQgb2YgYXQgbGVhc3QgMjAgc2Vjb25kcy5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyB0eXBlOiBOdW1iZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIHRpbWVvdXQ6IG51bWJlciA9IDA7XG5cbiAgLyoqIFRoZSBwb3NpdGlvbiB3aGVyZSB0byBwbGFjZSB0aGUgdG9hc3QuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHBvc2l0aW9uOiBTYmJUb2FzdFBvc2l0aW9uID0gJ2JvdHRvbS1jZW50ZXInO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJJQSBwb2xpdGVuZXNzIGxldmVsLlxuICAgKiBDaGVjayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BY2Nlc3NpYmlsaXR5L0FSSUEvQVJJQV9MaXZlX1JlZ2lvbnMjbGl2ZV9yZWdpb25zIGZvciBmdXJ0aGVyIGluZm9cbiAgICovXG4gIEBwcm9wZXJ0eSgpIHB1YmxpYyBhY2Nlc3NvciBwb2xpdGVuZXNzOiAncG9saXRlJyB8ICdhc3NlcnRpdmUnIHwgJ29mZicgPSAncG9saXRlJztcblxuICBwcml2YXRlIF9jbG9zZVRpbWVvdXQ/OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PjtcbiAgcHJpdmF0ZSBfbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdjbGljaycsIChlKSA9PiB0aGlzLl9vbkNsaWNrKGUpKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLnBvcG92ZXIgPSAnbWFudWFsJztcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuXG4gICAgLy8gQWRkIHRoaXMgdG9hc3QgdG8gdGhlIGdsb2JhbCBjb2xsZWN0aW9uXG4gICAgdG9hc3RSZWZzLmFkZCh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBkaXNjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIGNsZWFyVGltZW91dCh0aGlzLl9jbG9zZVRpbWVvdXQpO1xuXG4gICAgLy8gUmVtb3ZlIHRoaXMgaW5zdGFuY2VcbiAgICB0b2FzdFJlZnMuZGVsZXRlKHRoaXMpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdwb2xpdGVuZXNzJykpIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFMaXZlID0gdGhpcy5wb2xpdGVuZXNzO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVuIHRoZSB0b2FzdC5cbiAgICogSWYgdGhlcmUgYXJlIG90aGVyIG9wZW5lZCB0b2FzdHMgaW4gdGhlIHBhZ2UsIGNsb3NlIHRoZW0gZmlyc3QuXG4gICAqL1xuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdGF0ZSAhPT0gJ2Nsb3NlZCcgfHwgIXRoaXMud2lsbE9wZW4uZW1pdCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zaG93UG9wb3Zlcj8uKCk7XG4gICAgdGhpcy5zdGF0ZSA9ICdvcGVuaW5nJztcbiAgICB0aGlzLl9jbG9zZU90aGVyVG9hc3RzKCk7XG5cbiAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZGlyZWN0bHkgc2V0IHRoZSBgb3BlbmVkYCBzdGF0ZS5cbiAgICBpZiAodGhpcy5faXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKSkge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZSB0aGUgdG9hc3QuXG4gICAqL1xuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdvcGVuZWQnIHx8ICF0aGlzLndpbGxDbG9zZS5lbWl0KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjbGVhclRpbWVvdXQodGhpcy5fY2xvc2VUaW1lb3V0KTtcbiAgICB0aGlzLnN0YXRlID0gJ2Nsb3NpbmcnO1xuXG4gICAgLy8gSWYgdGhlIGFuaW1hdGlvbiBkdXJhdGlvbiBpcyB6ZXJvLCB0aGUgYW5pbWF0aW9uZW5kIGV2ZW50IGlzIG5vdCBhbHdheXMgZmlyZWQgcmVsaWFibHkuXG4gICAgLy8gSW4gdGhpcyBjYXNlIHdlIGRpcmVjdGx5IHNldCB0aGUgYGNsb3NlZGAgc3RhdGUuXG4gICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVDbG9zaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUgPSAnY2xvc2VkJztcbiAgICB0aGlzLmhpZGVQb3BvdmVyPy4oKTtcbiAgICB0aGlzLmRpZENsb3NlLmVtaXQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZU9wZW5pbmcoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuZGlkT3Blbi5lbWl0KCk7XG5cbiAgICAvLyBTdGFydCB0aGUgY291bnRkb3duIHRvIGNsb3NlIGl0XG4gICAgaWYgKHRoaXMudGltZW91dCkge1xuICAgICAgdGhpcy5fY2xvc2VUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLmNsb3NlKCksIHRoaXMudGltZW91dCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2xvc2UgdGhlIHRvYXN0IG9uIGNsaWNrIG9mIGFueSBlbGVtZW50IHRoYXQgaGFzIHRoZSAnc2JiLXRvYXN0LWNsb3NlJyBhdHRyaWJ1dGUuXG4gIHByaXZhdGUgX29uQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgY2xvc2VFbGVtZW50ID0gY29tcG9zZWRQYXRoSGFzQXR0cmlidXRlKGV2ZW50LCAnc2JiLXRvYXN0LWNsb3NlJywgdGhpcyk7XG5cbiAgICBpZiAoY2xvc2VFbGVtZW50ICYmICFjbG9zZUVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKHRoaXMsICctLXNiYi10b2FzdC1hbmltYXRpb24tZHVyYXRpb24nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTbG90dGVkIHRleHQgbm9kZXMgYXJlIG5vdCByZWFkIGNvcnJlY3RseSBieSBzY3JlZW4gcmVhZGVycyBvbiBDaHJvbWUuXG4gICAqIFRvIGFkZHJlc3MgdGhlIHByb2JsZW0sIGlmIHRoZXJlIGlzIGF0IGxlYXN0IGEgcm9vdCB0ZXh0IG5vZGUsXG4gICAqIHdlIHdyYXAgdGhlIHdob2xlIGNvbnRlbnQgaW4gYSA8c3Bhbj4gdGFnXG4gICAqL1xuICBwcml2YXRlIF9vbkNvbnRlbnRTbG90Q2hhbmdlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHNsb3ROb2RlcyA9IChldmVudC50YXJnZXQgYXMgSFRNTFNsb3RFbGVtZW50KS5hc3NpZ25lZE5vZGVzKCk7XG5cbiAgICBpZiAoc2xvdE5vZGVzLnNvbWUoKGVsKSA9PiBlbC5ub2RlVHlwZSA9PT0gTm9kZS5URVhUX05PREUpKSB7XG4gICAgICBjb25zdCBzcGFuID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuICAgICAgdGhpcy5wcmVwZW5kKHNwYW4pO1xuICAgICAgc3Bhbi5hcHBlbmQoLi4uc2xvdE5vZGVzKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbkFjdGlvblNsb3RDaGFuZ2UoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3Qgc2xvdE5vZGVzID0gKGV2ZW50LnRhcmdldCBhcyBIVE1MU2xvdEVsZW1lbnQpLmFzc2lnbmVkTm9kZXMoKTtcblxuICAgIC8vIEZvcmNlIHRoZSB2aXN1YWwgc3RhdGUgb24gc2xvdHRlZCBidXR0b25zXG4gICAgY29uc3QgYnV0dG9uczogKFNiYlRyYW5zcGFyZW50QnV0dG9uRWxlbWVudCB8IFNiYlRyYW5zcGFyZW50QnV0dG9uTGlua0VsZW1lbnQpW10gPVxuICAgICAgc2xvdE5vZGVzLmZpbHRlcihcbiAgICAgICAgKGVsKSA9PlxuICAgICAgICAgIGVsLm5vZGVOYW1lID09PSAnU0JCLVRSQU5TUEFSRU5ULUJVVFRPTicgfHwgZWwubm9kZU5hbWUgPT09ICdTQkItVFJBTlNQQVJFTlQtQlVUVE9OLUxJTksnLFxuICAgICAgKSBhcyAoU2JiVHJhbnNwYXJlbnRCdXR0b25FbGVtZW50IHwgU2JiVHJhbnNwYXJlbnRCdXR0b25MaW5rRWxlbWVudClbXTtcbiAgICBidXR0b25zLmZvckVhY2goKGJ0bjogU2JiVHJhbnNwYXJlbnRCdXR0b25FbGVtZW50IHwgU2JiVHJhbnNwYXJlbnRCdXR0b25MaW5rRWxlbWVudCkgPT4ge1xuICAgICAgYnRuLm5lZ2F0aXZlID0gdHJ1ZTtcbiAgICAgIGJ0bi5zaXplID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG4gICAgfSk7XG5cbiAgICAvLyBGb3JjZSBuZWdhdGl2ZSBvbiBpbmxpbmUgc2xvdHRlZCBsaW5rc1xuICAgIGNvbnN0IGxpbmtzID0gc2xvdE5vZGVzLmZpbHRlcigoZWwpID0+XG4gICAgICBbJ1NCQi1MSU5LJywgJ1NCQi1MSU5LLUJVVFRPTicsICdTQkItTElOSy1TVEFUSUMnXS5pbmNsdWRlcyhlbC5ub2RlTmFtZSksXG4gICAgKSBhcyAoU2JiTGlua0VsZW1lbnQgfCBTYmJMaW5rQnV0dG9uRWxlbWVudCB8IFNiYkxpbmtTdGF0aWNFbGVtZW50KVtdO1xuICAgIGxpbmtzLmZvckVhY2goKGxpbmspID0+IHtcbiAgICAgIGxpbmsubmVnYXRpdmUgPSB0cnVlO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gSW4gcmFyZSBjYXNlcyBpdCBjYW4gYmUgdGhhdCB0aGUgYW5pbWF0aW9uRW5kIGV2ZW50IGlzIHRyaWdnZXJlZCB0d2ljZS5cbiAgLy8gVG8gYXZvaWQgZW50ZXJpbmcgYSBjb3JydXB0IHN0YXRlLCBleGl0IHdoZW4gc3RhdGUgaXMgbm90IGV4cGVjdGVkLlxuICBwcml2YXRlIF9vblRvYXN0QW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgIC8vIE9uIHRvYXN0IG9wZW5lZFxuICAgIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnb3BlbicgJiYgdGhpcy5zdGF0ZSA9PT0gJ29wZW5pbmcnKSB7XG4gICAgICB0aGlzLl9oYW5kbGVPcGVuaW5nKCk7XG4gICAgfSBlbHNlIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnY2xvc2UnICYmIHRoaXMuc3RhdGUgPT09ICdjbG9zaW5nJykge1xuICAgICAgdGhpcy5faGFuZGxlQ2xvc2luZygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTaW5jZSB3ZSBkbyBub3Qgc3RhY2sgdG9hc3RzLCB3ZSBmb3JjZSB0aGUgY2xvc2luZyBvbiBvdGhlciBleGlzdGluZyBvcGVuZWQgb25lc1xuICAgKi9cbiAgcHJpdmF0ZSBfY2xvc2VPdGhlclRvYXN0cygpOiB2b2lkIHtcbiAgICB0b2FzdFJlZnMuZm9yRWFjaCgodCkgPT4ge1xuICAgICAgaWYgKHQuZ2V0QXR0cmlidXRlKCdkYXRhLXN0YXRlJykgPT09ICdvcGVuZWQnKSB7XG4gICAgICAgIHQuY2xvc2UoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi10b2FzdF9fb3ZlcmxheS1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi10b2FzdFwiIEBhbmltYXRpb25lbmQ9JHt0aGlzLl9vblRvYXN0QW5pbWF0aW9uRW5kfT5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLXRvYXN0LXdyYXBwZXJcIj5cbiAgICAgICAgICAgICR7dGhpcy5yZW5kZXJJY29uU2xvdCgpfVxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi10b2FzdF9fY29udGVudFwiPlxuICAgICAgICAgICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3RoaXMuX29uQ29udGVudFNsb3RDaGFuZ2V9Pjwvc2xvdD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImFjdGlvblwiIEBzbG90Y2hhbmdlPSR7dGhpcy5fb25BY3Rpb25TbG90Q2hhbmdlfT48L3Nsb3Q+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi10b2FzdF9fY2xvc2VcIj5cbiAgICAgICAgICAgIDxzYmItZGl2aWRlclxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi10b2FzdF9fY2xvc2UtZGl2aWRlclwiXG4gICAgICAgICAgICAgIG9yaWVudGF0aW9uPVwidmVydGljYWxcIlxuICAgICAgICAgICAgICBuZWdhdGl2ZVxuICAgICAgICAgICAgPjwvc2JiLWRpdmlkZXI+XG4gICAgICAgICAgICAkeyF0aGlzLnJlYWRPbmx5XG4gICAgICAgICAgICAgID8gaHRtbGA8c2JiLXRyYW5zcGFyZW50LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYmItdG9hc3RfX2Nsb3NlLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBpY29uLW5hbWU9XCJjcm9zcy1zbWFsbFwiXG4gICAgICAgICAgICAgICAgICBuZWdhdGl2ZVxuICAgICAgICAgICAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD0ke2kxOG5DbG9zZUFsZXJ0W3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfVxuICAgICAgICAgICAgICAgICAgc2JiLXRvYXN0LWNsb3NlXG4gICAgICAgICAgICAgICAgPjwvc2JiLXRyYW5zcGFyZW50LWJ1dHRvbj5gXG4gICAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdG9hc3QnOiBTYmJUb2FzdEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBeUJBLE1BQU0sZ0NBQWdCLElBQUE7SUFrQmhCLG1CQUFlLE1BQUE7OzBCQURwQixjQUFjLFdBQVcsQ0FBQzs7OztvQkFDRyxpQkFD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