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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (804) hide show
  1. package/_index.scss +1 -1
  2. package/action-group/action-group.component.d.ts.map +1 -1
  3. package/alert/alert/alert.component.d.ts +2 -7
  4. package/alert/alert/alert.component.d.ts.map +1 -1
  5. package/alert/alert/alert.component.js +55 -67
  6. package/autocomplete/autocomplete-base-element.d.ts +26 -17
  7. package/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  8. package/autocomplete/autocomplete-base-element.js +98 -70
  9. package/autocomplete/autocomplete.component.d.ts +3 -2
  10. package/autocomplete/autocomplete.component.d.ts.map +1 -1
  11. package/autocomplete/autocomplete.component.js +16 -19
  12. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +3 -2
  13. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -1
  14. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +22 -25
  15. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +1 -0
  16. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -1
  17. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +6 -7
  18. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +4 -1
  19. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -1
  20. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +11 -13
  21. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +4 -6
  22. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
  23. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +25 -29
  24. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +4 -1
  25. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -1
  26. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +10 -12
  27. package/autocomplete.js +4 -5
  28. package/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
  29. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts +1 -0
  30. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts.map +1 -1
  31. package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +9 -12
  32. package/button/accent-button/accent-button.component.d.ts +1 -0
  33. package/button/accent-button/accent-button.component.d.ts.map +1 -1
  34. package/button/button/button.component.d.ts +1 -0
  35. package/button/button/button.component.d.ts.map +1 -1
  36. package/button/common/button-common.d.ts +4 -6
  37. package/button/common/button-common.d.ts.map +1 -1
  38. package/button/mini-button/mini-button.component.d.ts +1 -0
  39. package/button/mini-button/mini-button.component.d.ts.map +1 -1
  40. package/button/secondary-button/secondary-button.component.d.ts +1 -0
  41. package/button/secondary-button/secondary-button.component.d.ts.map +1 -1
  42. package/button/transparent-button/transparent-button.component.d.ts +1 -0
  43. package/button/transparent-button/transparent-button.component.d.ts.map +1 -1
  44. package/calendar/calendar.component.d.ts +18 -14
  45. package/calendar/calendar.component.d.ts.map +1 -1
  46. package/calendar/calendar.component.js +137 -123
  47. package/card/card/card.component.d.ts +0 -6
  48. package/card/card/card.component.d.ts.map +1 -1
  49. package/card/card/card.component.js +11 -19
  50. package/card/card-badge/card-badge.component.d.ts +4 -1
  51. package/card/card-badge/card-badge.component.d.ts.map +1 -1
  52. package/card/card-badge/card-badge.component.js +8 -11
  53. package/card/card-button/card-button.component.d.ts +1 -0
  54. package/card/card-button/card-button.component.d.ts.map +1 -1
  55. package/card/common/card-action-common.d.ts.map +1 -1
  56. package/card/common/card-action-common.js +21 -24
  57. package/checkbox/checkbox/checkbox.component.d.ts +4 -1
  58. package/checkbox/checkbox/checkbox.component.d.ts.map +1 -1
  59. package/checkbox/checkbox/checkbox.component.js +48 -38
  60. package/checkbox/checkbox-panel/checkbox-panel.component.d.ts +4 -1
  61. package/checkbox/checkbox-panel/checkbox-panel.component.d.ts.map +1 -1
  62. package/checkbox/checkbox-panel/checkbox-panel.component.js +46 -36
  63. package/checkbox/common/checkbox-common.d.ts +4 -2
  64. package/checkbox/common/checkbox-common.d.ts.map +1 -1
  65. package/chip/chip/chip.component.d.ts +5 -6
  66. package/chip/chip/chip.component.d.ts.map +1 -1
  67. package/chip/chip/chip.component.js +37 -50
  68. package/chip/chip-group/chip-group.component.d.ts +22 -10
  69. package/chip/chip-group/chip-group.component.d.ts.map +1 -1
  70. package/chip/chip-group/chip-group.component.js +131 -116
  71. package/clock/clock.component.d.ts +1 -1
  72. package/clock/clock.component.d.ts.map +1 -1
  73. package/clock/clock.component.js +2 -2
  74. package/container/sticky-bar/sticky-bar.component.d.ts +5 -0
  75. package/container/sticky-bar/sticky-bar.component.d.ts.map +1 -1
  76. package/container/sticky-bar/sticky-bar.component.js +48 -38
  77. package/core/a11y/focus.d.ts +0 -32
  78. package/core/a11y/focus.d.ts.map +1 -1
  79. package/core/a11y/focus.js +3 -65
  80. package/core/a11y/input-modality-detector.d.ts +0 -5
  81. package/core/a11y/input-modality-detector.d.ts.map +1 -1
  82. package/core/a11y/input-modality-detector.js +16 -27
  83. package/core/a11y/interactivity-checker.d.ts +0 -11
  84. package/core/a11y/interactivity-checker.d.ts.map +1 -1
  85. package/core/a11y/interactivity-checker.js +0 -1
  86. package/core/a11y/live-announcer.d.ts +62 -0
  87. package/core/a11y/live-announcer.d.ts.map +1 -0
  88. package/core/a11y/live-announcer.js +47 -0
  89. package/core/a11y.d.ts +1 -0
  90. package/core/a11y.d.ts.map +1 -1
  91. package/core/a11y.js +19 -21
  92. package/core/base-elements/action-base-element.d.ts +3 -1
  93. package/core/base-elements/action-base-element.d.ts.map +1 -1
  94. package/core/base-elements/action-base-element.js +12 -11
  95. package/core/base-elements/button-base-element.d.ts +25 -18
  96. package/core/base-elements/button-base-element.d.ts.map +1 -1
  97. package/core/base-elements/button-base-element.js +97 -65
  98. package/core/base-elements/open-close-base-element.d.ts +3 -1
  99. package/core/base-elements/open-close-base-element.d.ts.map +1 -1
  100. package/core/base-elements/open-close-base-element.js +2 -1
  101. package/core/base-elements.js +9 -8
  102. package/core/controllers/inert-controller.d.ts.map +1 -1
  103. package/core/controllers/inert-controller.js +3 -3
  104. package/core/controllers.d.ts +0 -1
  105. package/core/controllers.d.ts.map +1 -1
  106. package/core/controllers.js +17 -19
  107. package/core/datetime/date-adapter.d.ts +2 -2
  108. package/core/datetime/date-adapter.d.ts.map +1 -1
  109. package/core/datetime/date-adapter.js +1 -1
  110. package/core/datetime/native-date-adapter.d.ts +2 -3
  111. package/core/datetime/native-date-adapter.d.ts.map +1 -1
  112. package/core/datetime/native-date-adapter.js +71 -75
  113. package/core/decorators/id-reference.d.ts +11 -0
  114. package/core/decorators/id-reference.d.ts.map +1 -0
  115. package/core/decorators/id-reference.js +79 -0
  116. package/core/decorators/plain-date.d.ts +23 -0
  117. package/core/decorators/plain-date.d.ts.map +1 -0
  118. package/core/decorators/plain-date.js +29 -0
  119. package/core/decorators.d.ts +2 -2
  120. package/core/decorators.d.ts.map +1 -1
  121. package/core/decorators.js +17 -16
  122. package/core/dom.d.ts +0 -2
  123. package/core/dom.d.ts.map +1 -1
  124. package/core/dom.js +22 -26
  125. package/core/eventing/forward-event.d.ts +0 -6
  126. package/core/eventing/forward-event.d.ts.map +1 -1
  127. package/core/eventing/forward-event.js +4 -6
  128. package/core/eventing.js +12 -13
  129. package/core/i18n/i18n.d.ts +4 -1
  130. package/core/i18n/i18n.d.ts.map +1 -1
  131. package/core/i18n/i18n.js +106 -88
  132. package/core/i18n.js +42 -39
  133. package/core/interfaces/types.d.ts +0 -1
  134. package/core/interfaces/types.d.ts.map +1 -1
  135. package/core/mixins/animation-complete-mixin.d.ts +1 -1
  136. package/core/mixins/animation-complete-mixin.d.ts.map +1 -1
  137. package/core/mixins/disabled-mixin.d.ts +2 -2
  138. package/core/mixins/disabled-mixin.d.ts.map +1 -1
  139. package/core/mixins/element-internals-mixin.d.ts +15 -0
  140. package/core/mixins/element-internals-mixin.d.ts.map +1 -0
  141. package/core/mixins/element-internals-mixin.js +41 -0
  142. package/core/mixins/form-associated-checkbox-mixin.d.ts +7 -13
  143. package/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
  144. package/core/mixins/form-associated-checkbox-mixin.js +30 -26
  145. package/core/mixins/form-associated-input-mixin.d.ts +15 -9
  146. package/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
  147. package/core/mixins/form-associated-input-mixin.js +65 -49
  148. package/core/mixins/form-associated-mixin.d.ts +8 -7
  149. package/core/mixins/form-associated-mixin.d.ts.map +1 -1
  150. package/core/mixins/form-associated-mixin.js +49 -41
  151. package/core/mixins/form-associated-radio-button-mixin.d.ts +6 -14
  152. package/core/mixins/form-associated-radio-button-mixin.d.ts.map +1 -1
  153. package/core/mixins/form-associated-radio-button-mixin.js +32 -23
  154. package/core/mixins/readonly-mixin.d.ts +10 -0
  155. package/core/mixins/readonly-mixin.d.ts.map +1 -0
  156. package/core/mixins/readonly-mixin.js +30 -0
  157. package/core/mixins/required-mixin.d.ts +2 -2
  158. package/core/mixins/required-mixin.d.ts.map +1 -1
  159. package/core/mixins.d.ts +2 -0
  160. package/core/mixins.d.ts.map +1 -1
  161. package/core/mixins.js +25 -21
  162. package/core/styles/core.scss +38 -14
  163. package/core/styles/mixins/font-face.scss +6 -18
  164. package/core/styles/mixins/link.scss +3 -7
  165. package/core/styles/mixins/lists.scss +0 -63
  166. package/core/styles/mixins/overlay.scss +7 -1
  167. package/core/styles/mixins/table.scss +0 -7
  168. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +2 -0
  169. package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +7 -1
  170. package/core/styles/table.scss +0 -4
  171. package/core/testing.d.ts +0 -1
  172. package/core/testing.d.ts.map +1 -1
  173. package/core/testing.js +8 -10
  174. package/core.css +48 -18
  175. package/custom-elements.json +13214 -6131
  176. package/date-input/date-input.component.d.ts +12 -14
  177. package/date-input/date-input.component.d.ts.map +1 -1
  178. package/date-input/date-input.component.js +53 -57
  179. package/datepicker/common/datepicker-association-controllers.d.ts.map +1 -1
  180. package/datepicker/common/datepicker-association-controllers.js +7 -7
  181. package/datepicker/common/datepicker-button.d.ts +0 -12
  182. package/datepicker/common/datepicker-button.d.ts.map +1 -1
  183. package/datepicker/common/datepicker-button.js +45 -59
  184. package/datepicker/datepicker/datepicker.component.d.ts +3 -20
  185. package/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
  186. package/datepicker/datepicker/datepicker.component.js +85 -95
  187. package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts +2 -0
  188. package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
  189. package/datepicker/datepicker-next-day/datepicker-next-day.component.js +12 -12
  190. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts +2 -0
  191. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
  192. package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +13 -13
  193. package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts +0 -8
  194. package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
  195. package/datepicker/datepicker-toggle/datepicker-toggle.component.js +51 -65
  196. package/datepicker/datepicker.js +2 -4
  197. package/datepicker.js +10 -12
  198. package/development/action-group/action-group.component.d.ts.map +1 -1
  199. package/development/action-group/action-group.component.js +1 -1
  200. package/development/alert/alert/alert.component.d.ts +2 -7
  201. package/development/alert/alert/alert.component.d.ts.map +1 -1
  202. package/development/alert/alert/alert.component.js +8 -26
  203. package/development/autocomplete/autocomplete-base-element.d.ts +26 -17
  204. package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
  205. package/development/autocomplete/autocomplete-base-element.js +69 -39
  206. package/development/autocomplete/autocomplete.component.d.ts +3 -2
  207. package/development/autocomplete/autocomplete.component.d.ts.map +1 -1
  208. package/development/autocomplete/autocomplete.component.js +5 -9
  209. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +3 -2
  210. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -1
  211. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +5 -9
  212. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +1 -0
  213. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -1
  214. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +2 -3
  215. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +4 -1
  216. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -1
  217. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +5 -7
  218. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +4 -6
  219. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
  220. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +20 -19
  221. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +4 -1
  222. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -1
  223. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +5 -7
  224. package/development/autocomplete.js +2 -3
  225. package/development/breadcrumb/breadcrumb/breadcrumb.component.js +2 -2
  226. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts +1 -0
  227. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts.map +1 -1
  228. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +5 -8
  229. package/development/button/accent-button/accent-button.component.d.ts +1 -0
  230. package/development/button/accent-button/accent-button.component.d.ts.map +1 -1
  231. package/development/button/accent-button/accent-button.component.js +1 -1
  232. package/development/button/button/button.component.d.ts +1 -0
  233. package/development/button/button/button.component.d.ts.map +1 -1
  234. package/development/button/button/button.component.js +1 -1
  235. package/development/button/common/button-common.d.ts +4 -6
  236. package/development/button/common/button-common.d.ts.map +1 -1
  237. package/development/button/common/button-common.js +1 -1
  238. package/development/button/mini-button/mini-button.component.d.ts +1 -0
  239. package/development/button/mini-button/mini-button.component.d.ts.map +1 -1
  240. package/development/button/mini-button/mini-button.component.js +1 -1
  241. package/development/button/secondary-button/secondary-button.component.d.ts +1 -0
  242. package/development/button/secondary-button/secondary-button.component.d.ts.map +1 -1
  243. package/development/button/secondary-button/secondary-button.component.js +1 -1
  244. package/development/button/transparent-button/transparent-button.component.d.ts +1 -0
  245. package/development/button/transparent-button/transparent-button.component.d.ts.map +1 -1
  246. package/development/button/transparent-button/transparent-button.component.js +1 -1
  247. package/development/calendar/calendar.component.d.ts +18 -14
  248. package/development/calendar/calendar.component.d.ts.map +1 -1
  249. package/development/calendar/calendar.component.js +57 -36
  250. package/development/card/card/card.component.d.ts +0 -6
  251. package/development/card/card/card.component.d.ts.map +1 -1
  252. package/development/card/card/card.component.js +5 -13
  253. package/development/card/card-badge/card-badge.component.d.ts +4 -1
  254. package/development/card/card-badge/card-badge.component.d.ts.map +1 -1
  255. package/development/card/card-badge/card-badge.component.js +6 -8
  256. package/development/card/card-button/card-button.component.d.ts +1 -0
  257. package/development/card/card-button/card-button.component.d.ts.map +1 -1
  258. package/development/card/card-button/card-button.component.js +1 -1
  259. package/development/card/common/card-action-common.d.ts.map +1 -1
  260. package/development/card/common/card-action-common.js +6 -15
  261. package/development/checkbox/checkbox/checkbox.component.d.ts +4 -1
  262. package/development/checkbox/checkbox/checkbox.component.d.ts.map +1 -1
  263. package/development/checkbox/checkbox/checkbox.component.js +19 -4
  264. package/development/checkbox/checkbox-panel/checkbox-panel.component.d.ts +4 -1
  265. package/development/checkbox/checkbox-panel/checkbox-panel.component.d.ts.map +1 -1
  266. package/development/checkbox/checkbox-panel/checkbox-panel.component.js +20 -4
  267. package/development/checkbox/common/checkbox-common.d.ts +4 -2
  268. package/development/checkbox/common/checkbox-common.d.ts.map +1 -1
  269. package/development/checkbox/common/checkbox-common.js +1 -1
  270. package/development/chip/chip/chip.component.d.ts +5 -6
  271. package/development/chip/chip/chip.component.d.ts.map +1 -1
  272. package/development/chip/chip/chip.component.js +12 -31
  273. package/development/chip/chip-group/chip-group.component.d.ts +22 -10
  274. package/development/chip/chip-group/chip-group.component.d.ts.map +1 -1
  275. package/development/chip/chip-group/chip-group.component.js +52 -27
  276. package/development/clock/clock.component.d.ts +1 -1
  277. package/development/clock/clock.component.d.ts.map +1 -1
  278. package/development/clock/clock.component.js +3 -3
  279. package/development/container/sticky-bar/sticky-bar.component.d.ts +5 -0
  280. package/development/container/sticky-bar/sticky-bar.component.d.ts.map +1 -1
  281. package/development/container/sticky-bar/sticky-bar.component.js +30 -9
  282. package/development/core/a11y/focus.d.ts +0 -32
  283. package/development/core/a11y/focus.d.ts.map +1 -1
  284. package/development/core/a11y/focus.js +2 -82
  285. package/development/core/a11y/input-modality-detector.d.ts +0 -5
  286. package/development/core/a11y/input-modality-detector.d.ts.map +1 -1
  287. package/development/core/a11y/input-modality-detector.js +2 -18
  288. package/development/core/a11y/interactivity-checker.d.ts +0 -11
  289. package/development/core/a11y/interactivity-checker.d.ts.map +1 -1
  290. package/development/core/a11y/interactivity-checker.js +1 -2
  291. package/development/core/a11y/live-announcer.d.ts +62 -0
  292. package/development/core/a11y/live-announcer.d.ts.map +1 -0
  293. package/development/core/a11y/live-announcer.js +87 -0
  294. package/development/core/a11y.d.ts +1 -0
  295. package/development/core/a11y.d.ts.map +1 -1
  296. package/development/core/a11y.js +7 -9
  297. package/development/core/base-elements/action-base-element.d.ts +3 -1
  298. package/development/core/base-elements/action-base-element.d.ts.map +1 -1
  299. package/development/core/base-elements/action-base-element.js +3 -2
  300. package/development/core/base-elements/button-base-element.d.ts +25 -18
  301. package/development/core/base-elements/button-base-element.d.ts.map +1 -1
  302. package/development/core/base-elements/button-base-element.js +105 -67
  303. package/development/core/base-elements/open-close-base-element.d.ts +3 -1
  304. package/development/core/base-elements/open-close-base-element.d.ts.map +1 -1
  305. package/development/core/base-elements/open-close-base-element.js +3 -2
  306. package/development/core/base-elements.js +2 -1
  307. package/development/core/controllers/inert-controller.d.ts.map +1 -1
  308. package/development/core/controllers/inert-controller.js +2 -2
  309. package/development/core/controllers.d.ts +0 -1
  310. package/development/core/controllers.d.ts.map +1 -1
  311. package/development/core/controllers.js +1 -3
  312. package/development/core/datetime/date-adapter.d.ts +2 -2
  313. package/development/core/datetime/date-adapter.d.ts.map +1 -1
  314. package/development/core/datetime/date-adapter.js +2 -2
  315. package/development/core/datetime/native-date-adapter.d.ts +2 -3
  316. package/development/core/datetime/native-date-adapter.d.ts.map +1 -1
  317. package/development/core/datetime/native-date-adapter.js +2 -6
  318. package/development/core/decorators/id-reference.d.ts +11 -0
  319. package/development/core/decorators/id-reference.d.ts.map +1 -0
  320. package/development/core/decorators/id-reference.js +123 -0
  321. package/development/core/decorators/plain-date.d.ts +23 -0
  322. package/development/core/decorators/plain-date.d.ts.map +1 -0
  323. package/development/core/decorators/plain-date.js +37 -0
  324. package/development/core/decorators.d.ts +2 -2
  325. package/development/core/decorators.d.ts.map +1 -1
  326. package/development/core/decorators.js +5 -4
  327. package/development/core/dom.d.ts +0 -2
  328. package/development/core/dom.d.ts.map +1 -1
  329. package/development/core/dom.js +1 -5
  330. package/development/core/eventing/forward-event.d.ts +0 -6
  331. package/development/core/eventing/forward-event.d.ts.map +1 -1
  332. package/development/core/eventing/forward-event.js +2 -4
  333. package/development/core/eventing.js +1 -2
  334. package/development/core/i18n/i18n.d.ts +4 -1
  335. package/development/core/i18n/i18n.d.ts.map +1 -1
  336. package/development/core/i18n/i18n.js +43 -22
  337. package/development/core/i18n.js +4 -1
  338. package/development/core/interfaces/types.d.ts +0 -1
  339. package/development/core/interfaces/types.d.ts.map +1 -1
  340. package/development/core/mixins/animation-complete-mixin.d.ts +1 -1
  341. package/development/core/mixins/animation-complete-mixin.d.ts.map +1 -1
  342. package/development/core/mixins/animation-complete-mixin.js +1 -1
  343. package/development/core/mixins/disabled-mixin.d.ts +2 -2
  344. package/development/core/mixins/disabled-mixin.d.ts.map +1 -1
  345. package/development/core/mixins/disabled-mixin.js +1 -1
  346. package/development/core/mixins/element-internals-mixin.d.ts +15 -0
  347. package/development/core/mixins/element-internals-mixin.d.ts.map +1 -0
  348. package/development/core/mixins/element-internals-mixin.js +59 -0
  349. package/development/core/mixins/form-associated-checkbox-mixin.d.ts +7 -13
  350. package/development/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
  351. package/development/core/mixins/form-associated-checkbox-mixin.js +8 -6
  352. package/development/core/mixins/form-associated-input-mixin.d.ts +15 -9
  353. package/development/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
  354. package/development/core/mixins/form-associated-input-mixin.js +39 -20
  355. package/development/core/mixins/form-associated-mixin.d.ts +8 -7
  356. package/development/core/mixins/form-associated-mixin.d.ts.map +1 -1
  357. package/development/core/mixins/form-associated-mixin.js +31 -17
  358. package/development/core/mixins/form-associated-radio-button-mixin.d.ts +6 -14
  359. package/development/core/mixins/form-associated-radio-button-mixin.d.ts.map +1 -1
  360. package/development/core/mixins/form-associated-radio-button-mixin.js +20 -8
  361. package/development/core/mixins/readonly-mixin.d.ts +10 -0
  362. package/development/core/mixins/readonly-mixin.d.ts.map +1 -0
  363. package/development/core/mixins/readonly-mixin.js +40 -0
  364. package/development/core/mixins/required-mixin.d.ts +2 -2
  365. package/development/core/mixins/required-mixin.d.ts.map +1 -1
  366. package/development/core/mixins/required-mixin.js +1 -1
  367. package/development/core/mixins.d.ts +2 -0
  368. package/development/core/mixins.d.ts.map +1 -1
  369. package/development/core/mixins.js +5 -1
  370. package/development/core/testing.d.ts +0 -1
  371. package/development/core/testing.d.ts.map +1 -1
  372. package/development/core/testing.js +1 -3
  373. package/development/date-input/date-input.component.d.ts +12 -14
  374. package/development/date-input/date-input.component.d.ts.map +1 -1
  375. package/development/date-input/date-input.component.js +17 -22
  376. package/development/datepicker/common/datepicker-association-controllers.d.ts.map +1 -1
  377. package/development/datepicker/common/datepicker-association-controllers.js +3 -3
  378. package/development/datepicker/common/datepicker-button.d.ts +0 -12
  379. package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
  380. package/development/datepicker/common/datepicker-button.js +1 -23
  381. package/development/datepicker/datepicker/datepicker.component.d.ts +3 -20
  382. package/development/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
  383. package/development/datepicker/datepicker/datepicker.component.js +24 -33
  384. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts +2 -0
  385. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
  386. package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +7 -6
  387. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts +2 -0
  388. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
  389. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +7 -6
  390. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts +0 -8
  391. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
  392. package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +1 -21
  393. package/development/datepicker/datepicker.js +2 -4
  394. package/development/datepicker.js +2 -4
  395. package/development/divider/divider.component.d.ts +2 -1
  396. package/development/divider/divider.component.d.ts.map +1 -1
  397. package/development/divider/divider.component.js +5 -8
  398. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts +5 -1
  399. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts.map +1 -1
  400. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +9 -8
  401. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts +2 -0
  402. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts.map +1 -1
  403. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +6 -5
  404. package/development/file-selector/common/file-selector-common.d.ts +6 -5
  405. package/development/file-selector/common/file-selector-common.d.ts.map +1 -1
  406. package/development/file-selector/common/file-selector-common.js +4 -4
  407. package/development/file-selector/file-selector/file-selector.component.d.ts +1 -0
  408. package/development/file-selector/file-selector/file-selector.component.d.ts.map +1 -1
  409. package/development/file-selector/file-selector/file-selector.component.js +1 -1
  410. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts +1 -0
  411. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +1 -1
  412. package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
  413. package/development/flip-card/flip-card-details/flip-card-details.component.d.ts +1 -0
  414. package/development/flip-card/flip-card-details/flip-card-details.component.d.ts.map +1 -1
  415. package/development/flip-card/flip-card-details/flip-card-details.component.js +6 -5
  416. package/development/flip-card/flip-card-summary/flip-card-summary.component.d.ts +1 -0
  417. package/development/flip-card/flip-card-summary/flip-card-summary.component.d.ts.map +1 -1
  418. package/development/flip-card/flip-card-summary/flip-card-summary.component.js +6 -5
  419. package/development/footer/footer.component.js +1 -1
  420. package/development/form-field/form-field/form-field.component.d.ts +9 -10
  421. package/development/form-field/form-field/form-field.component.d.ts.map +1 -1
  422. package/development/form-field/form-field/form-field.component.js +169 -180
  423. package/development/form-field/form-field-clear/form-field-clear.component.d.ts +1 -0
  424. package/development/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
  425. package/development/form-field/form-field-clear/form-field-clear.component.js +3 -5
  426. package/development/header/common/header-action-common.d.ts +3 -3
  427. package/development/header/common/header-action-common.d.ts.map +1 -1
  428. package/development/header/common/header-action-common.js +1 -1
  429. package/development/header/header/header.component.d.ts +8 -4
  430. package/development/header/header/header.component.d.ts.map +1 -1
  431. package/development/header/header/header.component.js +17 -10
  432. package/development/header/header-button/header-button.component.d.ts +1 -0
  433. package/development/header/header-button/header-button.component.d.ts.map +1 -1
  434. package/development/header/header-button/header-button.component.js +1 -1
  435. package/development/image/image.component.d.ts +1 -1
  436. package/development/image/image.component.d.ts.map +1 -1
  437. package/development/image/image.component.js +7 -6
  438. package/development/link/block-link-button/block-link-button.component.d.ts +1 -0
  439. package/development/link/block-link-button/block-link-button.component.d.ts.map +1 -1
  440. package/development/link/block-link-button/block-link-button.component.js +1 -1
  441. package/development/link/common/block-link-common.d.ts +3 -4
  442. package/development/link/common/block-link-common.d.ts.map +1 -1
  443. package/development/link/common/block-link-common.js +4 -4
  444. package/development/link/common/inline-link-common.d.ts +3 -2
  445. package/development/link/common/inline-link-common.d.ts.map +1 -1
  446. package/development/link/common/inline-link-common.js +2 -2
  447. package/development/link/common/link-common.d.ts +4 -2
  448. package/development/link/common/link-common.d.ts.map +1 -1
  449. package/development/link/common/link-common.js +1 -1
  450. package/development/link/common.js +1 -1
  451. package/development/link/link-button/link-button.component.d.ts +1 -0
  452. package/development/link/link-button/link-button.component.d.ts.map +1 -1
  453. package/development/link/link-button/link-button.component.js +1 -1
  454. package/development/{link-common-CJEWffDZ.js → link-common-DPLJx5Uo.js} +2 -2
  455. package/development/link-list/link-list-anchor/link-list-anchor.component.js +1 -1
  456. package/development/link.js +1 -1
  457. package/development/loading-indicator/loading-indicator.component.d.ts +5 -1
  458. package/development/loading-indicator/loading-indicator.component.d.ts.map +1 -1
  459. package/development/loading-indicator/loading-indicator.component.js +9 -8
  460. package/development/loading-indicator-circle/loading-indicator-circle.component.d.ts +5 -1
  461. package/development/loading-indicator-circle/loading-indicator-circle.component.d.ts.map +1 -1
  462. package/development/loading-indicator-circle/loading-indicator-circle.component.js +9 -8
  463. package/development/menu/common/menu-action-common.d.ts +4 -8
  464. package/development/menu/common/menu-action-common.d.ts.map +1 -1
  465. package/development/menu/common/menu-action-common.js +5 -63
  466. package/development/menu/menu/menu.component.d.ts +5 -4
  467. package/development/menu/menu/menu.component.d.ts.map +1 -1
  468. package/development/menu/menu/menu.component.js +17 -13
  469. package/development/menu/menu-button/menu-button.component.d.ts +1 -0
  470. package/development/menu/menu-button/menu-button.component.d.ts.map +1 -1
  471. package/development/menu/menu-button/menu-button.component.js +1 -1
  472. package/development/navigation/navigation/navigation.component.d.ts +6 -4
  473. package/development/navigation/navigation/navigation.component.d.ts.map +1 -1
  474. package/development/navigation/navigation/navigation.component.js +18 -15
  475. package/development/navigation/navigation-button/navigation-button.component.d.ts +1 -0
  476. package/development/navigation/navigation-button/navigation-button.component.d.ts.map +1 -1
  477. package/development/navigation/navigation-button/navigation-button.component.js +1 -1
  478. package/development/navigation/navigation-section/navigation-section.component.d.ts +5 -4
  479. package/development/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
  480. package/development/navigation/navigation-section/navigation-section.component.js +19 -16
  481. package/development/notification/notification.component.d.ts +4 -7
  482. package/development/notification/notification.component.d.ts.map +1 -1
  483. package/development/notification/notification.component.js +12 -29
  484. package/development/option/optgroup/optgroup-base-element.d.ts +2 -1
  485. package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  486. package/development/option/optgroup/optgroup-base-element.js +16 -37
  487. package/development/option/option/option-base-element.d.ts +6 -12
  488. package/development/option/option/option-base-element.d.ts.map +1 -1
  489. package/development/option/option/option-base-element.js +25 -21
  490. package/development/option/option/option.component.d.ts +5 -2
  491. package/development/option/option/option.component.d.ts.map +1 -1
  492. package/development/option/option/option.component.js +24 -21
  493. package/development/overlay/overlay-base-element.d.ts +1 -8
  494. package/development/overlay/overlay-base-element.d.ts.map +1 -1
  495. package/development/overlay/overlay-base-element.js +10 -30
  496. package/development/paginator/common/paginator-common.d.ts +3 -7
  497. package/development/paginator/common/paginator-common.d.ts.map +1 -1
  498. package/development/paginator/common/paginator-common.js +16 -29
  499. package/development/paginator/paginator/paginator.component.d.ts +0 -5
  500. package/development/paginator/paginator/paginator.component.d.ts.map +1 -1
  501. package/development/paginator/paginator/paginator.component.js +2 -14
  502. package/development/popover/popover/popover.component.d.ts +3 -3
  503. package/development/popover/popover/popover.component.d.ts.map +1 -1
  504. package/development/popover/popover/popover.component.js +18 -13
  505. package/development/popover/popover-trigger/popover-trigger.component.d.ts +1 -0
  506. package/development/popover/popover-trigger/popover-trigger.component.d.ts.map +1 -1
  507. package/development/popover/popover-trigger/popover-trigger.component.js +1 -1
  508. package/development/radio-button/common/radio-button-common.d.ts +4 -2
  509. package/development/radio-button/common/radio-button-common.d.ts.map +1 -1
  510. package/development/radio-button/common/radio-button-common.js +1 -1
  511. package/development/radio-button/radio-button/radio-button.component.d.ts +6 -2
  512. package/development/radio-button/radio-button/radio-button.component.d.ts.map +1 -1
  513. package/development/radio-button/radio-button/radio-button.component.js +21 -4
  514. package/development/radio-button/radio-button-group/radio-button-group.component.d.ts +8 -6
  515. package/development/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  516. package/development/radio-button/radio-button-group/radio-button-group.component.js +8 -11
  517. package/development/radio-button/radio-button-panel/radio-button-panel.component.d.ts +6 -2
  518. package/development/radio-button/radio-button-panel/radio-button-panel.component.d.ts.map +1 -1
  519. package/development/radio-button/radio-button-panel/radio-button-panel.component.js +22 -4
  520. package/development/sbb-tokens-CVLcOi-S.js +1 -1
  521. package/development/select/select.component.d.ts +18 -12
  522. package/development/select/select.component.d.ts.map +1 -1
  523. package/development/select/select.component.js +122 -69
  524. package/development/sidebar/icon-sidebar/icon-sidebar.component.d.ts +4 -2
  525. package/development/sidebar/icon-sidebar/icon-sidebar.component.d.ts.map +1 -1
  526. package/development/sidebar/icon-sidebar/icon-sidebar.component.js +5 -6
  527. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +1 -0
  528. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +1 -1
  529. package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.js +1 -1
  530. package/development/sidebar/sidebar/sidebar.component.js +2 -2
  531. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +2 -0
  532. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
  533. package/development/sidebar/sidebar-close-button/sidebar-close-button.component.js +6 -3
  534. package/development/sidebar/sidebar-title/sidebar-title.component.d.ts +1 -0
  535. package/development/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
  536. package/development/sidebar/sidebar-title/sidebar-title.component.js +6 -3
  537. package/development/slider/slider.component.d.ts +6 -15
  538. package/development/slider/slider.component.d.ts.map +1 -1
  539. package/development/slider/slider.component.js +37 -85
  540. package/development/stepper/step/step.component.d.ts +4 -1
  541. package/development/stepper/step/step.component.d.ts.map +1 -1
  542. package/development/stepper/step/step.component.js +6 -8
  543. package/development/stepper/step-label/step-label.component.d.ts +2 -0
  544. package/development/stepper/step-label/step-label.component.d.ts.map +1 -1
  545. package/development/stepper/step-label/step-label.component.js +5 -8
  546. package/development/stepper/stepper/stepper.component.d.ts +1 -1
  547. package/development/stepper/stepper/stepper.component.d.ts.map +1 -1
  548. package/development/stepper/stepper/stepper.component.js +9 -8
  549. package/development/table/table-wrapper/table-wrapper.component.d.ts +2 -1
  550. package/development/table/table-wrapper/table-wrapper.component.d.ts.map +1 -1
  551. package/development/table/table-wrapper/table-wrapper.component.js +4 -6
  552. package/development/tabs/tab/tab.component.d.ts +4 -1
  553. package/development/tabs/tab/tab.component.d.ts.map +1 -1
  554. package/development/tabs/tab/tab.component.js +4 -3
  555. package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  556. package/development/tabs/tab-group/tab-group.component.js +2 -4
  557. package/development/tabs/tab-label/tab-label.component.d.ts +2 -1
  558. package/development/tabs/tab-label/tab-label.component.d.ts.map +1 -1
  559. package/development/tabs/tab-label/tab-label.component.js +8 -5
  560. package/development/tag/tag/tag.component.d.ts +7 -3
  561. package/development/tag/tag/tag.component.d.ts.map +1 -1
  562. package/development/tag/tag/tag.component.js +26 -7
  563. package/development/tag/tag-group/tag-group.component.d.ts +7 -5
  564. package/development/tag/tag-group/tag-group.component.d.ts.map +1 -1
  565. package/development/tag/tag-group/tag-group.component.js +29 -21
  566. package/development/teaser-product/common/teaser-product-common.d.ts +4 -2
  567. package/development/teaser-product/common/teaser-product-common.d.ts.map +1 -1
  568. package/development/teaser-product/common/teaser-product-common.js +1 -1
  569. package/development/time-input/time-input.component.d.ts +29 -42
  570. package/development/time-input/time-input.component.d.ts.map +1 -1
  571. package/development/time-input/time-input.component.js +158 -205
  572. package/development/title/title-base.d.ts +4 -1
  573. package/development/title/title-base.d.ts.map +1 -1
  574. package/development/title/title-base.js +9 -17
  575. package/development/toast/toast.component.d.ts +3 -4
  576. package/development/toast/toast.component.d.ts.map +1 -1
  577. package/development/toast/toast.component.js +53 -73
  578. package/development/toggle/toggle/toggle.component.d.ts +13 -9
  579. package/development/toggle/toggle/toggle.component.d.ts.map +1 -1
  580. package/development/toggle/toggle/toggle.component.js +29 -29
  581. package/development/toggle/toggle-option/toggle-option.component.d.ts +5 -3
  582. package/development/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
  583. package/development/toggle/toggle-option/toggle-option.component.js +6 -8
  584. package/development/toggle-check/toggle-check.component.d.ts +5 -2
  585. package/development/toggle-check/toggle-check.component.d.ts.map +1 -1
  586. package/development/toggle-check/toggle-check.component.js +19 -4
  587. package/divider/divider.component.d.ts +2 -1
  588. package/divider/divider.component.d.ts.map +1 -1
  589. package/divider/divider.component.js +26 -29
  590. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts +5 -1
  591. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts.map +1 -1
  592. package/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +14 -14
  593. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts +2 -0
  594. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts.map +1 -1
  595. package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +20 -20
  596. package/file-selector/common/file-selector-common.d.ts +6 -5
  597. package/file-selector/common/file-selector-common.d.ts.map +1 -1
  598. package/file-selector/common/file-selector-common.js +35 -35
  599. package/file-selector/file-selector/file-selector.component.d.ts +1 -0
  600. package/file-selector/file-selector/file-selector.component.d.ts.map +1 -1
  601. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts +1 -0
  602. package/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +1 -1
  603. package/flip-card/flip-card-details/flip-card-details.component.d.ts +1 -0
  604. package/flip-card/flip-card-details/flip-card-details.component.d.ts.map +1 -1
  605. package/flip-card/flip-card-details/flip-card-details.component.js +16 -16
  606. package/flip-card/flip-card-summary/flip-card-summary.component.d.ts +1 -0
  607. package/flip-card/flip-card-summary/flip-card-summary.component.d.ts.map +1 -1
  608. package/flip-card/flip-card-summary/flip-card-summary.component.js +13 -13
  609. package/font-characters-extension.css +3 -3
  610. package/footer/footer.component.js +1 -1
  611. package/form-field/form-field/form-field.component.d.ts +9 -10
  612. package/form-field/form-field/form-field.component.d.ts.map +1 -1
  613. package/form-field/form-field/form-field.component.js +194 -209
  614. package/form-field/form-field-clear/form-field-clear.component.d.ts +1 -0
  615. package/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
  616. package/form-field/form-field-clear/form-field-clear.component.js +9 -12
  617. package/header/common/header-action-common.d.ts +3 -3
  618. package/header/common/header-action-common.d.ts.map +1 -1
  619. package/header/header/header.component.d.ts +8 -4
  620. package/header/header/header.component.d.ts.map +1 -1
  621. package/header/header/header.component.js +51 -46
  622. package/header/header-button/header-button.component.d.ts +1 -0
  623. package/header/header-button/header-button.component.d.ts.map +1 -1
  624. package/image/image.component.d.ts +1 -1
  625. package/image/image.component.d.ts.map +1 -1
  626. package/image/image.component.js +4 -2
  627. package/link/block-link-button/block-link-button.component.d.ts +1 -0
  628. package/link/block-link-button/block-link-button.component.d.ts.map +1 -1
  629. package/link/common/block-link-common.d.ts +3 -4
  630. package/link/common/block-link-common.d.ts.map +1 -1
  631. package/link/common/block-link-common.js +6 -6
  632. package/link/common/inline-link-common.d.ts +3 -2
  633. package/link/common/inline-link-common.d.ts.map +1 -1
  634. package/link/common/inline-link-common.js +1 -1
  635. package/link/common/link-common.d.ts +4 -2
  636. package/link/common/link-common.d.ts.map +1 -1
  637. package/link/common/link-common.js +1 -1
  638. package/link/common.js +1 -1
  639. package/link/link-button/link-button.component.d.ts +1 -0
  640. package/link/link-button/link-button.component.d.ts.map +1 -1
  641. package/{link-common-DZrQ-32d.js → link-common-BBKGg9HN.js} +1 -1
  642. package/link-list/link-list-anchor/link-list-anchor.component.js +4 -4
  643. package/link.js +1 -1
  644. package/loading-indicator/loading-indicator.component.d.ts +5 -1
  645. package/loading-indicator/loading-indicator.component.d.ts.map +1 -1
  646. package/loading-indicator/loading-indicator.component.js +9 -9
  647. package/loading-indicator-circle/loading-indicator-circle.component.d.ts +5 -1
  648. package/loading-indicator-circle/loading-indicator-circle.component.d.ts.map +1 -1
  649. package/loading-indicator-circle/loading-indicator-circle.component.js +14 -14
  650. package/menu/common/menu-action-common.d.ts +4 -8
  651. package/menu/common/menu-action-common.d.ts.map +1 -1
  652. package/menu/common/menu-action-common.js +16 -41
  653. package/menu/menu/menu.component.d.ts +5 -4
  654. package/menu/menu/menu.component.d.ts.map +1 -1
  655. package/menu/menu/menu.component.js +35 -34
  656. package/menu/menu-button/menu-button.component.d.ts +1 -0
  657. package/menu/menu-button/menu-button.component.d.ts.map +1 -1
  658. package/navigation/navigation/navigation.component.d.ts +6 -4
  659. package/navigation/navigation/navigation.component.d.ts.map +1 -1
  660. package/navigation/navigation/navigation.component.js +43 -43
  661. package/navigation/navigation-button/navigation-button.component.d.ts +1 -0
  662. package/navigation/navigation-button/navigation-button.component.d.ts.map +1 -1
  663. package/navigation/navigation-section/navigation-section.component.d.ts +5 -4
  664. package/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
  665. package/navigation/navigation-section/navigation-section.component.js +47 -47
  666. package/notification/notification.component.d.ts +4 -7
  667. package/notification/notification.component.d.ts.map +1 -1
  668. package/notification/notification.component.js +63 -73
  669. package/option/optgroup/optgroup-base-element.d.ts +2 -1
  670. package/option/optgroup/optgroup-base-element.d.ts.map +1 -1
  671. package/option/optgroup/optgroup-base-element.js +43 -43
  672. package/option/option/option-base-element.d.ts +6 -12
  673. package/option/option/option-base-element.d.ts.map +1 -1
  674. package/option/option/option-base-element.js +57 -64
  675. package/option/option/option.component.d.ts +5 -2
  676. package/option/option/option.component.d.ts.map +1 -1
  677. package/option/option/option.component.js +18 -21
  678. package/overlay/overlay-base-element.d.ts +1 -8
  679. package/overlay/overlay-base-element.d.ts.map +1 -1
  680. package/overlay/overlay-base-element.js +44 -55
  681. package/package.json +1 -1
  682. package/paginator/common/paginator-common.d.ts +3 -7
  683. package/paginator/common/paginator-common.d.ts.map +1 -1
  684. package/paginator/common/paginator-common.js +49 -58
  685. package/paginator/paginator/paginator.component.d.ts +0 -5
  686. package/paginator/paginator/paginator.component.d.ts.map +1 -1
  687. package/paginator/paginator/paginator.component.js +40 -48
  688. package/popover/popover/popover.component.d.ts +3 -3
  689. package/popover/popover/popover.component.d.ts.map +1 -1
  690. package/popover/popover/popover.component.js +50 -47
  691. package/popover/popover-trigger/popover-trigger.component.d.ts +1 -0
  692. package/popover/popover-trigger/popover-trigger.component.d.ts.map +1 -1
  693. package/radio-button/common/radio-button-common.d.ts +4 -2
  694. package/radio-button/common/radio-button-common.d.ts.map +1 -1
  695. package/radio-button/radio-button/radio-button.component.d.ts +6 -2
  696. package/radio-button/radio-button/radio-button.component.d.ts.map +1 -1
  697. package/radio-button/radio-button/radio-button.component.js +43 -31
  698. package/radio-button/radio-button-group/radio-button-group.component.d.ts +8 -6
  699. package/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
  700. package/radio-button/radio-button-group/radio-button-group.component.js +24 -26
  701. package/radio-button/radio-button-panel/radio-button-panel.component.d.ts +6 -2
  702. package/radio-button/radio-button-panel/radio-button-panel.component.d.ts.map +1 -1
  703. package/radio-button/radio-button-panel/radio-button-panel.component.js +46 -34
  704. package/select/select.component.d.ts +18 -12
  705. package/select/select.component.d.ts.map +1 -1
  706. package/select/select.component.js +140 -113
  707. package/sidebar/icon-sidebar/icon-sidebar.component.d.ts +4 -2
  708. package/sidebar/icon-sidebar/icon-sidebar.component.d.ts.map +1 -1
  709. package/sidebar/icon-sidebar/icon-sidebar.component.js +19 -20
  710. package/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +1 -0
  711. package/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +1 -1
  712. package/sidebar/sidebar/sidebar.component.js +1 -1
  713. package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +2 -0
  714. package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
  715. package/sidebar/sidebar-close-button/sidebar-close-button.component.js +11 -9
  716. package/sidebar/sidebar-title/sidebar-title.component.d.ts +1 -0
  717. package/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
  718. package/sidebar/sidebar-title/sidebar-title.component.js +17 -15
  719. package/slider/slider.component.d.ts +6 -15
  720. package/slider/slider.component.d.ts.map +1 -1
  721. package/slider/slider.component.js +71 -98
  722. package/standard-theme.css +48 -18
  723. package/stepper/step/step.component.d.ts +4 -1
  724. package/stepper/step/step.component.d.ts.map +1 -1
  725. package/stepper/step/step.component.js +5 -8
  726. package/stepper/step-label/step-label.component.d.ts +2 -0
  727. package/stepper/step-label/step-label.component.d.ts.map +1 -1
  728. package/stepper/step-label/step-label.component.js +12 -17
  729. package/stepper/stepper/stepper.component.d.ts +1 -1
  730. package/stepper/stepper/stepper.component.d.ts.map +1 -1
  731. package/stepper/stepper/stepper.component.js +8 -6
  732. package/table/table-wrapper/table-wrapper.component.d.ts +2 -1
  733. package/table/table-wrapper/table-wrapper.component.d.ts.map +1 -1
  734. package/table/table-wrapper/table-wrapper.component.js +19 -21
  735. package/tabs/tab/tab.component.d.ts +4 -1
  736. package/tabs/tab/tab.component.d.ts.map +1 -1
  737. package/tabs/tab/tab.component.js +10 -9
  738. package/tabs/tab-group/tab-group.component.d.ts.map +1 -1
  739. package/tabs/tab-group/tab-group.component.js +8 -8
  740. package/tabs/tab-label/tab-label.component.d.ts +2 -1
  741. package/tabs/tab-label/tab-label.component.d.ts.map +1 -1
  742. package/tabs/tab-label/tab-label.component.js +18 -18
  743. package/tag/tag/tag.component.d.ts +7 -3
  744. package/tag/tag/tag.component.d.ts.map +1 -1
  745. package/tag/tag/tag.component.js +75 -62
  746. package/tag/tag-group/tag-group.component.d.ts +7 -5
  747. package/tag/tag-group/tag-group.component.d.ts.map +1 -1
  748. package/tag/tag-group/tag-group.component.js +69 -64
  749. package/teaser-product/common/teaser-product-common.d.ts +4 -2
  750. package/teaser-product/common/teaser-product-common.d.ts.map +1 -1
  751. package/time-input/time-input.component.d.ts +29 -42
  752. package/time-input/time-input.component.d.ts.map +1 -1
  753. package/time-input/time-input.component.js +100 -143
  754. package/title/title-base.d.ts +4 -1
  755. package/title/title-base.d.ts.map +1 -1
  756. package/title/title-base.js +33 -34
  757. package/toast/toast.component.d.ts +3 -4
  758. package/toast/toast.component.d.ts.map +1 -1
  759. package/toast/toast.component.js +64 -70
  760. package/toggle/toggle/toggle.component.d.ts +13 -9
  761. package/toggle/toggle/toggle.component.d.ts.map +1 -1
  762. package/toggle/toggle/toggle.component.js +48 -49
  763. package/toggle/toggle-option/toggle-option.component.d.ts +5 -3
  764. package/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
  765. package/toggle/toggle-option/toggle-option.component.js +37 -39
  766. package/toggle-check/toggle-check.component.d.ts +5 -2
  767. package/toggle-check/toggle-check.component.d.ts.map +1 -1
  768. package/toggle-check/toggle-check.component.js +53 -43
  769. package/core/controllers/connected-abort-controller.d.ts +0 -14
  770. package/core/controllers/connected-abort-controller.d.ts.map +0 -1
  771. package/core/controllers/connected-abort-controller.js +0 -19
  772. package/core/decorators/date-converter.d.ts +0 -8
  773. package/core/decorators/date-converter.d.ts.map +0 -1
  774. package/core/decorators/date-converter.js +0 -17
  775. package/core/decorators/date-only-type.d.ts +0 -8
  776. package/core/decorators/date-only-type.d.ts.map +0 -1
  777. package/core/decorators/date-only-type.js +0 -10
  778. package/core/dom/find-referenced-element.d.ts +0 -8
  779. package/core/dom/find-referenced-element.d.ts.map +0 -1
  780. package/core/dom/find-referenced-element.js +0 -7
  781. package/core/dom/input-element.d.ts +0 -12
  782. package/core/dom/input-element.d.ts.map +0 -1
  783. package/core/dom/input-element.js +0 -12
  784. package/core/testing/scroll.d.ts +0 -7
  785. package/core/testing/scroll.d.ts.map +0 -1
  786. package/core/testing/scroll.js +0 -6
  787. package/development/core/controllers/connected-abort-controller.d.ts +0 -14
  788. package/development/core/controllers/connected-abort-controller.d.ts.map +0 -1
  789. package/development/core/controllers/connected-abort-controller.js +0 -25
  790. package/development/core/decorators/date-converter.d.ts +0 -8
  791. package/development/core/decorators/date-converter.d.ts.map +0 -1
  792. package/development/core/decorators/date-converter.js +0 -18
  793. package/development/core/decorators/date-only-type.d.ts +0 -8
  794. package/development/core/decorators/date-only-type.d.ts.map +0 -1
  795. package/development/core/decorators/date-only-type.js +0 -11
  796. package/development/core/dom/find-referenced-element.d.ts +0 -8
  797. package/development/core/dom/find-referenced-element.d.ts.map +0 -1
  798. package/development/core/dom/find-referenced-element.js +0 -15
  799. package/development/core/dom/input-element.d.ts +0 -12
  800. package/development/core/dom/input-element.d.ts.map +0 -1
  801. package/development/core/dom/input-element.js +0 -13
  802. package/development/core/testing/scroll.d.ts +0 -7
  803. package/development/core/testing/scroll.d.ts.map +0 -1
  804. package/development/core/testing/scroll.js +0 -8
@@ -9,9 +9,9 @@ import { __esDecorate, __runInitializers } from "tslib";
9
9
  import { MutationController } from "@lit-labs/observers/mutation-controller.js";
10
10
  import { css, LitElement, html } from "lit";
11
11
  import { property, state } from "lit/decorators.js";
12
- import { hostAttributes, forceType } from "../../core/decorators.js";
12
+ import { forceType } from "../../core/decorators.js";
13
13
  import { isSafari, setOrRemoveAttribute } from "../../core/dom.js";
14
- import { SbbDisabledMixin, SbbHydrationMixin } from "../../core/mixins.js";
14
+ import { SbbDisabledMixin, SbbElementInternalsMixin, SbbHydrationMixin } from "../../core/mixins.js";
15
15
  import "../../divider.js";
16
16
  const style = css`*,
17
17
  ::before,
@@ -21,9 +21,8 @@ const style = css`*,
21
21
 
22
22
  :host {
23
23
  --sbb-optgroup-divider-display: block;
24
- --sbb-optgroup-divider-spacing: 0;
25
- --sbb-optgroup-label-padding-start: var(--sbb-spacing-fixed-4x);
26
- --sbb-optgroup-label-padding-inline: var(--sbb-spacing-fixed-4x);
24
+ --sbb-optgroup-label-padding-end: var(--sbb-spacing-fixed-2x);
25
+ --sbb-optgroup-label-padding-inline: var(--sbb-spacing-responsive-xxxs);
27
26
  --sbb-optgroup-label-font-size: var(--sbb-typo-scale-0-75x);
28
27
  --sbb-optgroup-label-color: var(--sbb-color-metal);
29
28
  display: block;
@@ -31,20 +30,12 @@ const style = css`*,
31
30
 
32
31
  :host(:first-child) {
33
32
  --sbb-optgroup-divider-display: none;
34
- --sbb-optgroup-label-padding-start: var(--sbb-spacing-fixed-2x);
35
33
  }
36
34
 
37
35
  :host([data-variant=select]) {
38
- --sbb-optgroup-divider-spacing: var(--sbb-spacing-fixed-4x);
39
- --sbb-optgroup-label-padding-inline: var(--sbb-spacing-responsive-xxxs);
40
- --sbb-optgroup-label-padding-start: 0;
41
36
  --sbb-optgroup-label-font-size: inherit;
42
37
  }
43
38
 
44
- :host([data-variant=select]:first-child) {
45
- --sbb-optgroup-label-padding-start: var(--sbb-spacing-fixed-4x);
46
- }
47
-
48
39
  :host([data-negative]) {
49
40
  --sbb-optgroup-label-color: var(--sbb-color-smoke);
50
41
  }
@@ -66,35 +57,26 @@ const style = css`*,
66
57
  color: var(--sbb-optgroup-label-color);
67
58
  -webkit-text-fill-color: var(--sbb-optgroup-label-color);
68
59
  padding-inline: var(--sbb-optgroup-label-padding-inline);
69
- padding-block: var(--sbb-optgroup-label-padding-start) var(--sbb-spacing-fixed-2x);
70
- }
71
- :host([data-variant=select][data-multiple]) .sbb-optgroup__label {
72
- --sbb-text-font-size: var(--sbb-font-size-text-xs);
73
- font-family: var(--sbb-typo-font-family);
74
- font-weight: normal;
75
- line-height: var(--sbb-typo-line-height-body-text);
76
- letter-spacing: var(--sbb-typo-letter-spacing-body-text);
77
- font-size: var(--sbb-text-font-size);
78
- padding-inline-start: calc(var(--sbb-spacing-responsive-xxxs) + var(--sbb-spacing-fixed-8x));
60
+ padding-block-end: var(--sbb-optgroup-label-padding-end);
79
61
  }
80
62
 
81
63
  .sbb-optgroup__divider {
82
64
  display: var(--sbb-optgroup-divider-display);
83
- padding-block: var(--sbb-optgroup-divider-spacing);
65
+ padding-block: var(--sbb-options-panel-divider-margin-block);
84
66
  }
85
67
 
86
68
  .sbb-optgroup__icon-space {
87
69
  display: var(--sbb-option-icon-container-display, none);
88
70
  min-width: var(--sbb-size-icon-ui-small);
71
+ }
72
+
73
+ ::slotted(sbb-divider) {
74
+ margin-block: var(--sbb-options-panel-divider-margin-block);
89
75
  }`;
90
76
  const inertAriaGroups = isSafari;
91
77
  let SbbOptgroupBaseElement = (() => {
92
78
  var _label_accessor_storage, _negative_accessor_storage, __inertAriaGroups_accessor_storage, _a;
93
- let _classDecorators = [hostAttributes({ role: !inertAriaGroups ? "group" : null })];
94
- let _classDescriptor;
95
- let _classExtraInitializers = [];
96
- let _classThis;
97
- let _classSuper = SbbDisabledMixin(SbbHydrationMixin(LitElement));
79
+ let _classSuper = SbbDisabledMixin(SbbElementInternalsMixin(SbbHydrationMixin(LitElement)));
98
80
  let _label_decorators;
99
81
  let _label_initializers = [];
100
82
  let _label_extraInitializers = [];
@@ -104,7 +86,7 @@ let SbbOptgroupBaseElement = (() => {
104
86
  let __inertAriaGroups_decorators;
105
87
  let __inertAriaGroups_initializers = [];
106
88
  let __inertAriaGroups_extraInitializers = [];
107
- _a = class extends _classSuper {
89
+ return _a = class extends _classSuper {
108
90
  constructor() {
109
91
  super();
110
92
  __privateAdd(this, _label_accessor_storage, __runInitializers(this, _label_initializers, ""));
@@ -221,7 +203,7 @@ let SbbOptgroupBaseElement = (() => {
221
203
  <slot @slotchange=${this._handleSlotchange}></slot>
222
204
  `;
223
205
  }
224
- }, _label_accessor_storage = new WeakMap(), _negative_accessor_storage = new WeakMap(), __inertAriaGroups_accessor_storage = new WeakMap(), _classThis = _a, (() => {
206
+ }, _label_accessor_storage = new WeakMap(), _negative_accessor_storage = new WeakMap(), __inertAriaGroups_accessor_storage = new WeakMap(), (() => {
225
207
  const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
226
208
  _label_decorators = [forceType(), property()];
227
209
  _negative_decorators = [state()];
@@ -235,13 +217,10 @@ let SbbOptgroupBaseElement = (() => {
235
217
  __esDecorate(_a, null, __inertAriaGroups_decorators, { kind: "accessor", name: "_inertAriaGroups", static: false, private: false, access: { has: (obj) => "_inertAriaGroups" in obj, get: (obj) => obj._inertAriaGroups, set: (obj, value) => {
236
218
  obj._inertAriaGroups = value;
237
219
  } }, metadata: _metadata }, __inertAriaGroups_initializers, __inertAriaGroups_extraInitializers);
238
- __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
239
- _classThis = _classDescriptor.value;
240
- if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
241
- })(), _a.styles = style, __runInitializers(_classThis, _classExtraInitializers), _a;
242
- return _classThis;
220
+ if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
221
+ })(), _a.role = !inertAriaGroups ? "group" : null, _a.styles = style, _a;
243
222
  })();
244
223
  export {
245
224
  SbbOptgroupBaseElement
246
225
  };
247
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0Z3JvdXAtYmFzZS1lbGVtZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvb3B0aW9uL29wdGdyb3VwL29wdGdyb3VwLWJhc2UtZWxlbWVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNdXRhdGlvbkNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL211dGF0aW9uLWNvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgTGl0RWxlbWVudCxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJBdXRvY29tcGxldGVCYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2F1dG9jb21wbGV0ZS5qcyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUsIGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGlzU2FmYXJpLCBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IFNiYkRpc2FibGVkTWl4aW4sIFNiYkh5ZHJhdGlvbk1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcHRpb25CYXNlRWxlbWVudCB9IGZyb20gJy4uL29wdGlvbi5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL29wdGdyb3VwLWJhc2UtZWxlbWVudC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uLy4uL2RpdmlkZXIuanMnO1xuXG4vKipcbiAqIE9uIFNhZmFyaSwgdGhlIGdyb3VwcyBsYWJlbHMgYXJlIG5vdCByZWFkIGJ5IFZvaWNlT3Zlci5cbiAqIFRvIHNvbHZlIHRoZSBwcm9ibGVtLCB3ZSByZW1vdmUgdGhlIHJvbGU9XCJncm91cFwiIGFuZCBhZGQgYSBoaWRkZW4gc3BhbiBjb250YWluaW5nIHRoZSBncm91cCBuYW1lXG4gKiBUT0RPOiBXZSBzaG91bGQgcGVyaW9kaWNhbGx5IGNoZWNrIGlmIGl0IGhhcyBiZWVuIHNvbHZlZCBhbmQsIGlmIHNvLCByZW1vdmUgdGhlIHByb3BlcnR5LlxuICovXG5jb25zdCBpbmVydEFyaWFHcm91cHMgPSBpc1NhZmFyaTtcblxuZXhwb3J0XG5AaG9zdEF0dHJpYnV0ZXMoeyByb2xlOiAhaW5lcnRBcmlhR3JvdXBzID8gJ2dyb3VwJyA6IG51bGwgfSlcbmFic3RyYWN0IGNsYXNzIFNiYk9wdGdyb3VwQmFzZUVsZW1lbnQgZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFNiYkh5ZHJhdGlvbk1peGluKExpdEVsZW1lbnQpKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKiBPcHRpb24gZ3JvdXAgbGFiZWwuICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgbGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIEBzdGF0ZSgpIHByb3RlY3RlZCBhY2Nlc3NvciBuZWdhdGl2ZSA9IGZhbHNlO1xuXG4gIEBzdGF0ZSgpIHByaXZhdGUgYWNjZXNzb3IgX2luZXJ0QXJpYUdyb3VwcyA9IGZhbHNlO1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXQgb3B0aW9ucygpOiBTYmJPcHRpb25CYXNlRWxlbWVudFtdO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgdGhpcy5hZGRDb250cm9sbGVyKFxuICAgICAgbmV3IE11dGF0aW9uQ29udHJvbGxlcih0aGlzLCB7XG4gICAgICAgIGNvbmZpZzoge1xuICAgICAgICAgIGF0dHJpYnV0ZXM6IHRydWUsXG4gICAgICAgICAgYXR0cmlidXRlRmlsdGVyOiBbJ2RhdGEtbmVnYXRpdmUnXSxcbiAgICAgICAgfSxcbiAgICAgICAgY2FsbGJhY2s6ICgpID0+IHRoaXMuX29uTmVnYXRpdmVDaGFuZ2UoKSxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICBpZiAoaW5lcnRBcmlhR3JvdXBzKSB7XG4gICAgICBpZiAodGhpcy5oeWRyYXRpb25SZXF1aXJlZCkge1xuICAgICAgICB0aGlzLmh5ZHJhdGlvbkNvbXBsZXRlLnRoZW4oKCkgPT4gKHRoaXMuX2luZXJ0QXJpYUdyb3VwcyA9IGluZXJ0QXJpYUdyb3VwcykpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5faW5lcnRBcmlhR3JvdXBzID0gaW5lcnRBcmlhR3JvdXBzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuc2V0QXR0cmlidXRlRnJvbVBhcmVudCgpO1xuICAgIHRoaXMuX3Byb3h5R3JvdXBMYWJlbFRvT3B0aW9ucygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdkaXNhYmxlZCcpKSB7XG4gICAgICBpZiAoIXRoaXMuX2luZXJ0QXJpYUdyb3Vwcykge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJywgJ3RydWUnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMucHJveHlEaXNhYmxlZFRvT3B0aW9ucygpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsYWJlbCcpKSB7XG4gICAgICB0aGlzLl9wcm94eUdyb3VwTGFiZWxUb09wdGlvbnMoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc2V0QXR0cmlidXRlRnJvbVBhcmVudCgpOiB2b2lkO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0QXV0b2NvbXBsZXRlUGFyZW50KCk6IFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IHwgbnVsbDtcblxuICBwcml2YXRlIF9oYW5kbGVTbG90Y2hhbmdlKCk6IHZvaWQge1xuICAgIHRoaXMucHJveHlEaXNhYmxlZFRvT3B0aW9ucygpO1xuICAgIHRoaXMuX3Byb3h5R3JvdXBMYWJlbFRvT3B0aW9ucygpO1xuICAgIHRoaXMuX2hpZ2hsaWdodE9wdGlvbnMoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Byb3h5R3JvdXBMYWJlbFRvT3B0aW9ucygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2luZXJ0QXJpYUdyb3Vwcykge1xuICAgICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUodGhpcywgJ2FyaWEtbGFiZWwnLCB0aGlzLmxhYmVsKTtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2UgaWYgKHRoaXMubGFiZWwpIHtcbiAgICAgIHRoaXMucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWxhYmVsJyk7XG4gICAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiB0aGlzLm9wdGlvbnMpIHtcbiAgICAgICAgb3B0aW9uLnNldEF0dHJpYnV0ZSgnZGF0YS1ncm91cC1sYWJlbCcsIHRoaXMubGFiZWwpO1xuICAgICAgICBvcHRpb24ucmVxdWVzdFVwZGF0ZT8uKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIHRoaXMub3B0aW9ucykge1xuICAgICAgICBvcHRpb24ucmVtb3ZlQXR0cmlidXRlKCdkYXRhLWdyb3VwLWxhYmVsJyk7XG4gICAgICAgIG9wdGlvbi5yZXF1ZXN0VXBkYXRlPy4oKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgcHJveHlEaXNhYmxlZFRvT3B0aW9ucygpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiB0aGlzLm9wdGlvbnMpIHtcbiAgICAgIG9wdGlvbi50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZ3JvdXAtZGlzYWJsZWQnLCB0aGlzLmRpc2FibGVkKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9oaWdobGlnaHRPcHRpb25zKCk6IHZvaWQge1xuICAgIGNvbnN0IGF1dG9jb21wbGV0ZSA9IHRoaXMuZ2V0QXV0b2NvbXBsZXRlUGFyZW50KCk7XG4gICAgaWYgKCFhdXRvY29tcGxldGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgdmFsdWUgPSBhdXRvY29tcGxldGUudHJpZ2dlckVsZW1lbnQ/LnZhbHVlO1xuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vcHRpb25zLmZvckVhY2goKG9wdCkgPT4gb3B0LmhpZ2hsaWdodCh2YWx1ZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25OZWdhdGl2ZUNoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLm5lZ2F0aXZlID0gdGhpcy5oYXNBdHRyaWJ1dGUoJ2RhdGEtbmVnYXRpdmUnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1vcHRncm91cF9fZGl2aWRlclwiPlxuICAgICAgICA8c2JiLWRpdmlkZXIgP25lZ2F0aXZlPSR7dGhpcy5uZWdhdGl2ZX0+PC9zYmItZGl2aWRlcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1vcHRncm91cF9fbGFiZWxcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1vcHRncm91cF9faWNvbi1zcGFjZVwiPjwvZGl2PlxuICAgICAgICA8c3Bhbj4ke3RoaXMubGFiZWx9PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3RoaXMuX2hhbmRsZVNsb3RjaGFuZ2V9Pjwvc2xvdD5cbiAgICBgO1xuICB9XG59XG4iXSwibmFtZXMiOlsiX2EiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBeUJBLE1BQU0sa0JBQWtCO0lBSVQsMEJBQXNCLE1BQUE7O0FBRHBDLE1BQUEsbUJBQUEsQ0FBQSxlQUFlLEVBQUUsTUFBTSxDQUFDLGtCQUFrQixVQUFVLE1BQU0sQ0FBQzs7OztBQUNkLE1BQUEsY0FBQSxpQkFBaUIsa0JBQWtCLFVBQVUsQ0FBQzs7Ozs7Ozs7OztBQUF0RCxFQUFBLG1CQUFRLFlBQStDO0FBQUEsSUFjM0YsY0FBQTs7QUFSQSxrREFBQSxrQkFBQSxNQUFBLHFCQUFnQyxFQUFFO0FBRXpCLHNEQUFBLGtCQUFBLE1BQUEsd0JBQUEsR0FBQSxrQkFBQSxNQUFBLHdCQUE4QixLQUFLO0FBRW5DLDhEQUFBLGtCQUFBLE1BQUEsMkJBQUEsR0FBQSxrQkFBQSxNQUFBLGdDQUFvQyxLQUFLOztBQU8zQyxXQUFBLGNBQ0gsSUFBSSxtQkFBbUIsTUFBTTtBQUFBLFFBQzNCLFFBQVE7QUFBQSxVQUNOLFlBQVk7QUFBQSxVQUNaLGlCQUFpQixDQUFDLGVBQWU7QUFBQSxRQUNsQztBQUFBLFFBQ0QsVUFBVSxNQUFNLEtBQUssa0JBQW1CO0FBQUEsTUFBQSxDQUN6QyxDQUFDO0FBR0osVUFBSSxpQkFBaUI7QUFDbkIsWUFBSSxLQUFLLG1CQUFtQjtBQUMxQixlQUFLLGtCQUFrQixLQUFL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
226
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0Z3JvdXAtYmFzZS1lbGVtZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvb3B0aW9uL29wdGdyb3VwL29wdGdyb3VwLWJhc2UtZWxlbWVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNdXRhdGlvbkNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL211dGF0aW9uLWNvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgTGl0RWxlbWVudCxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBTYmJBdXRvY29tcGxldGVCYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2F1dG9jb21wbGV0ZS5qcyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgaXNTYWZhcmksIHNldE9yUmVtb3ZlQXR0cmlidXRlIH0gZnJvbSAnLi4vLi4vY29yZS9kb20uanMnO1xuaW1wb3J0IHtcbiAgU2JiRGlzYWJsZWRNaXhpbixcbiAgU2JiRWxlbWVudEludGVybmFsc01peGluLFxuICBTYmJIeWRyYXRpb25NaXhpbixcbn0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcHRpb25CYXNlRWxlbWVudCB9IGZyb20gJy4uL29wdGlvbi5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL29wdGdyb3VwLWJhc2UtZWxlbWVudC5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uLy4uL2RpdmlkZXIuanMnO1xuXG4vKipcbiAqIE9uIFNhZmFyaSwgdGhlIGdyb3VwcyBsYWJlbHMgYXJlIG5vdCByZWFkIGJ5IFZvaWNlT3Zlci5cbiAqIFRvIHNvbHZlIHRoZSBwcm9ibGVtLCB3ZSByZW1vdmUgdGhlIHJvbGU9XCJncm91cFwiIGFuZCBhZGQgYSBoaWRkZW4gc3BhbiBjb250YWluaW5nIHRoZSBncm91cCBuYW1lXG4gKiBUT0RPOiBXZSBzaG91bGQgcGVyaW9kaWNhbGx5IGNoZWNrIGlmIGl0IGhhcyBiZWVuIHNvbHZlZCBhbmQsIGlmIHNvLCByZW1vdmUgdGhlIHByb3BlcnR5LlxuICovXG5jb25zdCBpbmVydEFyaWFHcm91cHMgPSBpc1NhZmFyaTtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNiYk9wdGdyb3VwQmFzZUVsZW1lbnQgZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFxuICBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4oU2JiSHlkcmF0aW9uTWl4aW4oTGl0RWxlbWVudCkpLFxuKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgcm9sZSA9ICFpbmVydEFyaWFHcm91cHMgPyAnZ3JvdXAnIDogbnVsbDtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqIE9wdGlvbiBncm91cCBsYWJlbC4gKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciBsYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgQHN0YXRlKCkgcHJvdGVjdGVkIGFjY2Vzc29yIG5lZ2F0aXZlID0gZmFsc2U7XG5cbiAgQHN0YXRlKCkgcHJpdmF0ZSBhY2Nlc3NvciBfaW5lcnRBcmlhR3JvdXBzID0gZmFsc2U7XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldCBvcHRpb25zKCk6IFNiYk9wdGlvbkJhc2VFbGVtZW50W107XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLmFkZENvbnRyb2xsZXIoXG4gICAgICBuZXcgTXV0YXRpb25Db250cm9sbGVyKHRoaXMsIHtcbiAgICAgICAgY29uZmlnOiB7XG4gICAgICAgICAgYXR0cmlidXRlczogdHJ1ZSxcbiAgICAgICAgICBhdHRyaWJ1dGVGaWx0ZXI6IFsnZGF0YS1uZWdhdGl2ZSddLFxuICAgICAgICB9LFxuICAgICAgICBjYWxsYmFjazogKCkgPT4gdGhpcy5fb25OZWdhdGl2ZUNoYW5nZSgpLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIGlmIChpbmVydEFyaWFHcm91cHMpIHtcbiAgICAgIGlmICh0aGlzLmh5ZHJhdGlvblJlcXVpcmVkKSB7XG4gICAgICAgIHRoaXMuaHlkcmF0aW9uQ29tcGxldGUudGhlbigoKSA9PiAodGhpcy5faW5lcnRBcmlhR3JvdXBzID0gaW5lcnRBcmlhR3JvdXBzKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9pbmVydEFyaWFHcm91cHMgPSBpbmVydEFyaWFHcm91cHM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5zZXRBdHRyaWJ1dGVGcm9tUGFyZW50KCk7XG4gICAgdGhpcy5fcHJveHlHcm91cExhYmVsVG9PcHRpb25zKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgd2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2Rpc2FibGVkJykpIHtcbiAgICAgIGlmICghdGhpcy5faW5lcnRBcmlhR3JvdXBzKSB7XG4gICAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2FyaWEtZGlzYWJsZWQnLCAndHJ1ZScpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhpcy5wcm94eURpc2FibGVkVG9PcHRpb25zKCk7XG4gICAgfVxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xhYmVsJykpIHtcbiAgICAgIHRoaXMuX3Byb3h5R3JvdXBMYWJlbFRvT3B0aW9ucygpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzZXRBdHRyaWJ1dGVGcm9tUGFyZW50KCk6IHZvaWQ7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBnZXRBdXRvY29tcGxldGVQYXJlbnQoKTogU2JiQXV0b2NvbXBsZXRlQmFzZUVsZW1lbnQgfCBudWxsO1xuXG4gIHByaXZhdGUgX2hhbmRsZVNsb3RjaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5wcm94eURpc2FibGVkVG9PcHRpb25zKCk7XG4gICAgdGhpcy5fcHJveHlHcm91cExhYmVsVG9PcHRpb25zKCk7XG4gICAgdGhpcy5faGlnaGxpZ2h0T3B0aW9ucygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcHJveHlHcm91cExhYmVsVG9PcHRpb25zKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5faW5lcnRBcmlhR3JvdXBzKSB7XG4gICAgICBzZXRPclJlbW92ZUF0dHJpYnV0ZSh0aGlzLCAnYXJpYS1sYWJlbCcsIHRoaXMubGFiZWwpO1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSBpZiAodGhpcy5sYWJlbCkge1xuICAgICAgdGhpcy5yZW1vdmVBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnKTtcbiAgICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIHRoaXMub3B0aW9ucykge1xuICAgICAgICBvcHRpb24uc2V0QXR0cmlidXRlKCdkYXRhLWdyb3VwLWxhYmVsJywgdGhpcy5sYWJlbCk7XG4gICAgICAgIG9wdGlvbi5yZXF1ZXN0VXBkYXRlPy4oKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgZm9yIChjb25zdCBvcHRpb24gb2YgdGhpcy5vcHRpb25zKSB7XG4gICAgICAgIG9wdGlvbi5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtZ3JvdXAtbGFiZWwnKTtcbiAgICAgICAgb3B0aW9uLnJlcXVlc3RVcGRhdGU/LigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBwcm94eURpc2FibGVkVG9PcHRpb25zKCk6IHZvaWQge1xuICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIHRoaXMub3B0aW9ucykge1xuICAgICAgb3B0aW9uLnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1ncm91cC1kaXNhYmxlZCcsIHRoaXMuZGlzYWJsZWQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2hpZ2hsaWdodE9wdGlvbnMoKTogdm9pZCB7XG4gICAgY29uc3QgYXV0b2NvbXBsZXRlID0gdGhpcy5nZXRBdXRvY29tcGxldGVQYXJlbnQoKTtcbiAgICBpZiAoIWF1dG9jb21wbGV0ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCB2YWx1ZSA9IGF1dG9jb21wbGV0ZS50cmlnZ2VyRWxlbWVudD8udmFsdWU7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9wdGlvbnMuZm9yRWFjaCgob3B0KSA9PiBvcHQuaGlnaGxpZ2h0KHZhbHVlKSk7XG4gIH1cblxuICBwcml2YXRlIF9vbk5lZ2F0aXZlQ2hhbmdlKCk6IHZvaWQge1xuICAgIHRoaXMubmVnYXRpdmUgPSB0aGlzLmhhc0F0dHJpYnV0ZSgnZGF0YS1uZWdhdGl2ZScpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW9wdGdyb3VwX19kaXZpZGVyXCI+XG4gICAgICAgIDxzYmItZGl2aWRlciA/bmVnYXRpdmU9JHt0aGlzLm5lZ2F0aXZlfT48L3NiYi1kaXZpZGVyPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW9wdGdyb3VwX19sYWJlbFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLW9wdGdyb3VwX19pY29uLXNwYWNlXCI+PC9kaXY+XG4gICAgICAgIDxzcGFuPiR7dGhpcy5sYWJlbH08L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxzbG90IEBzbG90Y2hhbmdlPSR7dGhpcy5faGFuZGxlU2xvdGNoYW5nZX0+PC9zbG90PlxuICAgIGA7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJfYSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBNkJBLE1BQU0sa0JBQWtCO0lBRUYsMEJBQXNCLE1BQUE7O29CQUFTLGlCQUNuRCx5QkFBeUIsa0JBQWtCLFVBQVUsQ0FBQyxDQUFDOzs7Ozs7Ozs7O0FBRG5DLFNBQUEsbUJBQStCLFlBRXBEO0FBQUEsSUFlQyxjQUFBOztBQVJBLGtEQUFBLGtCQUFBLE1BQUEscUJBQWdDLEVBQUU7QUFFekIsc0RBQUEsa0JBQUEsTUFBQSx3QkFBQSxHQUFBLGtCQUFBLE1BQUEsd0JBQThCLEtBQUs7QUFFbkMsOERBQUEsa0JBQUEsTUFBQSwyQkFBQSxHQUFBLGtCQUFBLE1BQUEsZ0NBQW9DLEtBQUs7O0FBTzNDLFdBQUEsY0FDSCxJQUFJLG1CQUFtQixNQUFNO0FBQUEsUUFDM0IsUUFBUTtBQUFBLFVBQ04sWUFBWTtBQUFBLFVBQ1osaUJBQWlCLENBQUMsZUFBZTtBQUFBLFFBQ2xDO0FBQUEsUUFDRCxVQUFVLE1BQU0sS0FBSyxrQkFBbUI7QUFBQSxNQUFBLENBQ3pDLENBQUM7QUFHSixVQUFJLGlCQUFpQjtBQUNuQixZQUFJLEtBQUssbUJBQW1CO0FBQzFCLGVBQUssa0JBQWtCLEtBQUssTUFBTyxLQUFL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
@@ -1,7 +1,7 @@
1
1
  import { LitElement, nothing, PropertyValues, TemplateResult } from 'lit';
2
2
  import { EventEmitter } from '../../core/eventing.js';
3
- declare const SbbOptionBaseElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
4
- export declare abstract class SbbOptionBaseElement extends SbbOptionBaseElement_base {
3
+ declare const SbbOptionBaseElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbElementInternalsMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement & import('../../core/mixins.js').SbbElementInternalsConstructor;
4
+ export declare abstract class SbbOptionBaseElement<T = string> extends SbbOptionBaseElement_base {
5
5
  protected abstract optionId: string;
6
6
  /**
7
7
  * Value of the option.
@@ -9,13 +9,12 @@ export declare abstract class SbbOptionBaseElement extends SbbOptionBaseElement_
9
9
  * @description Developer note: In this case updating the attribute must be synchronous.
10
10
  * Due to this, it is implemented as a getter/setter and the attributeChangedCallback() handles the diff check.
11
11
  */
12
- set value(value: string);
13
- get value(): string;
12
+ set value(value: T);
13
+ get value(): T;
14
+ private _value;
14
15
  /** Whether the option is selected. */
15
16
  set selected(value: boolean);
16
17
  get selected(): boolean;
17
- /** Emits when the option selection status changes. */
18
- protected abstract selectionChange: EventEmitter;
19
18
  /** Emits when an option was selected by user. */
20
19
  protected abstract optionSelected: EventEmitter;
21
20
  /** Whether to apply the negative styling */
@@ -36,10 +35,7 @@ export declare abstract class SbbOptionBaseElement extends SbbOptionBaseElement_
36
35
  * @internal
37
36
  */
38
37
  highlight(value: string): void;
39
- /**
40
- * @internal
41
- */
42
- setSelectedViaUserInteraction(selected: boolean): void;
38
+ protected selectViaUserInteraction(selected: boolean): void;
43
39
  connectedCallback(): void;
44
40
  protected willUpdate(changedProperties: PropertyValues<this>): void;
45
41
  protected firstUpdated(changedProperties: PropertyValues<this>): void;
@@ -54,8 +50,6 @@ export declare abstract class SbbOptionBaseElement extends SbbOptionBaseElement_
54
50
  protected init(): void;
55
51
  protected updateAriaDisabled(): void;
56
52
  private _updateAriaSelected;
57
- /** @deprecated use onExternalMutation() as replacement. Will be removed with next major change. */
58
- protected onOptionAttributesChange(mutationsList: MutationRecord[]): void;
59
53
  /** Observe changes on data attributes + slotted content and set the appropriate values. */
60
54
  protected onExternalMutation(mutationsList: MutationRecord[]): void;
61
55
  protected handleHighlightState(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"option-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements/option/option/option-base-element.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,UAAU,EAAE,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAK1F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAI3D,OAAO,6BAA6B,CAAC;;AAoBrC,8BAEe,oBAAqB,SAAQ,yBAE3C;IACC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAEpC;;;;;OAKG;IACH,IACW,KAAK,CAAC,KAAK,EAAE,MAAM,EAE7B;IACD,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,sCAAsC;IACtC,IACW,QAAQ,CAAC,KAAK,EAAE,OAAO,EAGjC;IACD,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,sDAAsD;IACtD,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,YAAY,CAAC;IAEjD,iDAAiD;IACjD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,YAAY,CAAC;IAEhD,4CAA4C;IACnC,SAAS,CAAC,QAAQ,CAAC,QAAQ,UAAS;IAE7C,yFAAyF;IAChF,SAAS,CAAC,QAAQ,CAAC,iBAAiB,UAAS;IAE7C,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAG,MAAM,CAAC;IAE3C,0CAA0C;IACjC,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAS;IAEnE,4CAA4C;IACnC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuB;IAExD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;;IAwBnC,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GAAG,IAAI,EAClB,KAAK,EAAE,MAAM,GAAG,IAAI,GACnB,IAAI;IAMP;;;;OAIG;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIrC;;OAEG;IACI,6BAA6B,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAQ7C,iBAAiB,IAAI,IAAI;cAUtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cASzD,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAO9E,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IACzD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,IAAI,IAAI;IAEjD,SAAS,CAAC,sBAAsB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAKzD;;;OAGG;IACI,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAItC,SAAS,CAAC,IAAI,IAAI,IAAI;IAItB,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAQpC,OAAO,CAAC,mBAAmB;IAI3B,mGAAmG;IACnG,SAAS,CAAC,wBAAwB,CAAC,aAAa,EAAE,cAAc,EAAE,GAAG,IAAI;IAIzE,2FAA2F;IAC3F,SAAS,CAAC,kBAAkB,CAAC,aAAa,EAAE,cAAc,EAAE,GAAG,IAAI;IAoBnE,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAuBtC,SAAS,CAAC,mBAAmB,IAAI,cAAc;IAwB/C,SAAS,CAAC,UAAU,IAAI,cAAc;IAItC,SAAS,CAAC,WAAW,IAAI,cAAc,GAAG,OAAO,OAAO;IAIxD,SAAS,CAAC,UAAU,IAAI,cAAc,GAAG,OAAO,OAAO;cAIpC,MAAM,IAAI,cAAc;CAmB5C"}
1
+ {"version":3,"file":"option-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements/option/option/option-base-element.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,UAAU,EAAE,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAK1F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAQ3D,OAAO,6BAA6B,CAAC;;AAoBrC,8BAEe,oBAAoB,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,yBAEvD;IACC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAEpC;;;;;OAKG;IACH,IACW,KAAK,CAAC,KAAK,EAAE,CAAC,EAOxB;IACD,IAAW,KAAK,IAAI,CAAC,CAEpB;IACD,OAAO,CAAC,MAAM,CAAkB;IAEhC,sCAAsC;IACtC,IACW,QAAQ,CAAC,KAAK,EAAE,OAAO,EAGjC;IACD,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,iDAAiD;IACjD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,YAAY,CAAC;IAEhD,4CAA4C;IACnC,SAAS,CAAC,QAAQ,CAAC,QAAQ,UAAS;IAE7C,yFAAyF;IAChF,SAAS,CAAC,QAAQ,CAAC,iBAAiB,UAAS;IAE7C,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAG,MAAM,CAAC;IAE3C,0CAA0C;IACjC,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAS;IAEnE,4CAA4C;IACnC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuB;IAExD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;;IAwBnC,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GAAG,IAAI,EAClB,KAAK,EAAE,MAAM,GAAG,IAAI,GACnB,IAAI;IAMP;;;;OAIG;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIrC,SAAS,CAAC,wBAAwB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAO3C,iBAAiB,IAAI,IAAI;cAUtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cASzD,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAO9E,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IACzD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,IAAI,IAAI;IAEjD,SAAS,CAAC,sBAAsB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAKzD;;;OAGG;IACI,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAItC,SAAS,CAAC,IAAI,IAAI,IAAI;IAItB,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAQpC,OAAO,CAAC,mBAAmB;IAI3B,2FAA2F;IAC3F,SAAS,CAAC,kBAAkB,CAAC,aAAa,EAAE,cAAc,EAAE,GAAG,IAAI;IAoBnE,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAuBtC,SAAS,CAAC,mBAAmB,IAAI,cAAc;IAwB/C,SAAS,CAAC,UAAU,IAAI,cAAc;IAItC,SAAS,CAAC,WAAW,IAAI,cAAc,GAAG,OAAO,OAAO;IAIxD,SAAS,CAAC,UAAU,IAAI,cAAc,GAAG,OAAO,OAAO;cAIpC,MAAM,IAAI,cAAc;CAmB5C"}
@@ -11,7 +11,7 @@ import { LitElement, html, nothing } from "lit";
11
11
  import { property, state } from "lit/decorators.js";
12
12
  import { slotState } from "../../core/decorators.js";
13
13
  import { isSafari, setOrRemoveAttribute, isAndroid } from "../../core/dom.js";
14
- import { SbbDisabledMixin, SbbHydrationMixin } from "../../core/mixins.js";
14
+ import { SbbDisabledMixin, SbbElementInternalsMixin, SbbHydrationMixin } from "../../core/mixins.js";
15
15
  import { SbbIconNameMixin } from "../../icon.js";
16
16
  import "../../screen-reader-only.js";
17
17
  let nextId = 0;
@@ -29,7 +29,7 @@ let SbbOptionBaseElement = (() => {
29
29
  let _classDescriptor;
30
30
  let _classExtraInitializers = [];
31
31
  let _classThis;
32
- let _classSuper = SbbDisabledMixin(SbbIconNameMixin(SbbHydrationMixin(LitElement)));
32
+ let _classSuper = SbbDisabledMixin(SbbIconNameMixin(SbbElementInternalsMixin(SbbHydrationMixin(LitElement))));
33
33
  let _instanceExtraInitializers = [];
34
34
  let _set_value_decorators;
35
35
  let _set_selected_decorators;
@@ -55,19 +55,26 @@ let SbbOptionBaseElement = (() => {
55
55
  constructor() {
56
56
  var _a2;
57
57
  super();
58
- __privateAdd(this, _negative_accessor_storage, (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _negative_initializers, false)));
59
- __privateAdd(this, _disabledFromGroup_accessor_storage, (__runInitializers(this, _negative_extraInitializers), __runInitializers(this, _disabledFromGroup_initializers, false)));
60
- __privateAdd(this, _label_accessor_storage, (__runInitializers(this, _disabledFromGroup_extraInitializers), __runInitializers(this, _label_initializers, void 0)));
61
- __privateAdd(this, _disableLabelHighlight_accessor_storage, (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _disableLabelHighlight_initializers, false)));
62
- __privateAdd(this, __highlightString_accessor_storage, (__runInitializers(this, _disableLabelHighlight_extraInitializers), __runInitializers(this, __highlightString_initializers, null)));
63
- __privateAdd(this, __inertAriaGroups_accessor_storage, (__runInitializers(this, __highlightString_extraInitializers), __runInitializers(this, __inertAriaGroups_initializers, false)));
58
+ __privateAdd(this, _negative_accessor_storage);
59
+ __privateAdd(this, _disabledFromGroup_accessor_storage);
60
+ __privateAdd(this, _label_accessor_storage);
61
+ __privateAdd(this, _disableLabelHighlight_accessor_storage);
62
+ __privateAdd(this, __highlightString_accessor_storage);
63
+ __privateAdd(this, __inertAriaGroups_accessor_storage);
64
+ this._value = (__runInitializers(this, _instanceExtraInitializers), null);
65
+ __privateSet(this, _negative_accessor_storage, __runInitializers(this, _negative_initializers, false));
66
+ __privateSet(this, _disabledFromGroup_accessor_storage, (__runInitializers(this, _negative_extraInitializers), __runInitializers(this, _disabledFromGroup_initializers, false)));
67
+ __privateSet(this, _label_accessor_storage, (__runInitializers(this, _disabledFromGroup_extraInitializers), __runInitializers(this, _label_initializers, void 0)));
68
+ __privateSet(this, _disableLabelHighlight_accessor_storage, (__runInitializers(this, _label_extraInitializers), __runInitializers(this, _disableLabelHighlight_initializers, false)));
69
+ __privateSet(this, __highlightString_accessor_storage, (__runInitializers(this, _disableLabelHighlight_extraInitializers), __runInitializers(this, __highlightString_initializers, null)));
70
+ __privateSet(this, __inertAriaGroups_accessor_storage, (__runInitializers(this, __highlightString_extraInitializers), __runInitializers(this, __inertAriaGroups_initializers, false)));
64
71
  __runInitializers(this, __inertAriaGroups_extraInitializers);
65
72
  (_a2 = this.addEventListener) == null ? void 0 : _a2.call(this, "click", (e) => this.selectByClick(e), {
66
73
  passive: true
67
74
  });
68
75
  this.addController(new MutationController(this, {
69
76
  config: optionObserverConfig,
70
- callback: (mutationsList) => this.onOptionAttributesChange(mutationsList)
77
+ callback: (mutationsList) => this.onExternalMutation(mutationsList)
71
78
  }));
72
79
  if (inertAriaGroups) {
73
80
  if (this.hydrationRequired) {
@@ -84,10 +91,15 @@ let SbbOptionBaseElement = (() => {
84
91
  * Due to this, it is implemented as a getter/setter and the attributeChangedCallback() handles the diff check.
85
92
  */
86
93
  set value(value) {
87
- this.setAttribute("value", `${value}`);
94
+ if (typeof value === "string") {
95
+ this.setAttribute("value", `${value}`);
96
+ this._value = null;
97
+ } else {
98
+ this._value = value;
99
+ }
88
100
  }
89
101
  get value() {
90
- return this.getAttribute("value") ?? "";
102
+ return this._value ?? this.getAttribute("value") ?? "";
91
103
  }
92
104
  /** Whether the option is selected. */
93
105
  set selected(value) {
@@ -150,12 +162,8 @@ let SbbOptionBaseElement = (() => {
150
162
  highlight(value) {
151
163
  this._highlightString = value;
152
164
  }
153
- /**
154
- * @internal
155
- */
156
- setSelectedViaUserInteraction(selected) {
165
+ selectViaUserInteraction(selected) {
157
166
  this.selected = selected;
158
- this.selectionChange.emit();
159
167
  if (this.selected) {
160
168
  this.optionSelected.emit();
161
169
  }
@@ -204,10 +212,6 @@ let SbbOptionBaseElement = (() => {
204
212
  _updateAriaSelected() {
205
213
  this.setAttribute("aria-selected", `${this.selected}`);
206
214
  }
207
- /** @deprecated use onExternalMutation() as replacement. Will be removed with next major change. */
208
- onOptionAttributesChange(mutationsList) {
209
- this.onExternalMutation(mutationsList);
210
- }
211
215
  /** Observe changes on data attributes + slotted content and set the appropriate values. */
212
216
  onExternalMutation(mutationsList) {
213
217
  let contentChanged = false;
@@ -321,4 +325,4 @@ let SbbOptionBaseElement = (() => {
321
325
  export {
322
326
  SbbOptionBaseElement
323
327
  };
324
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLWJhc2UtZWxlbWVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL29wdGlvbi9vcHRpb24vb3B0aW9uLWJhc2UtZWxlbWVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNdXRhdGlvbkNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL211dGF0aW9uLWNvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCwgbm90aGluZywgdHlwZSBQcm9wZXJ0eVZhbHVlcywgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSwgc3RhdGUgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IHNsb3RTdGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBpc0FuZHJvaWQsIGlzU2FmYXJpLCBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB0eXBlIHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnLi4vLi4vY29yZS9ldmVudGluZy5qcyc7XG5pbXBvcnQgeyBTYmJEaXNhYmxlZE1peGluLCBTYmJIeWRyYXRpb25NaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi8uLi9pY29uLmpzJztcblxuaW1wb3J0ICcuLi8uLi9zY3JlZW4tcmVhZGVyLW9ubHkuanMnO1xuXG5sZXQgbmV4dElkID0gMDtcblxuLyoqXG4gKiBPbiBTYWZhcmksIHRoZSBncm91cHMgbGFiZWxzIGFyZSBub3QgcmVhZCBieSBWb2ljZU92ZXIuXG4gKiBUbyBzb2x2ZSB0aGUgcHJvYmxlbSwgd2UgcmVtb3ZlIHRoZSByb2xlPVwiZ3JvdXBcIiBhbmQgYWRkIGFuIGhpZGRlbiBzcGFuIGNvbnRhaW5pbmcgdGhlIGdyb3VwIG5hbWVcbiAqIFRPRE86IFdlIHNob3VsZCBwZXJpb2RpY2FsbHkgY2hlY2sgaWYgaXQgaGFzIGJlZW4gc29sdmVkIGFuZCwgaWYgc28sIHJlbW92ZSB0aGUgcHJvcGVydHkuXG4gKi9cbmNvbnN0IGluZXJ0QXJpYUdyb3VwcyA9IGlzU2FmYXJpO1xuXG4vKiogQ29uZmlndXJhdGlvbiBmb3IgdGhlIGF0dHJpYnV0ZSB0byBsb29rIGF0IGlmIGNvbXBvbmVudCBpcyBuZXN0ZWQgaW4gYW4gb3B0aW9uIGdyb3VwICovXG5jb25zdCBvcHRpb25PYnNlcnZlckNvbmZpZzogTXV0YXRpb25PYnNlcnZlckluaXQgPSB7XG4gIGF0dHJpYnV0ZUZpbHRlcjogWydkYXRhLWdyb3VwLWRpc2FibGVkJywgJ2RhdGEtbmVnYXRpdmUnXSxcbiAgYXR0cmlidXRlczogdHJ1ZSxcbiAgY2hpbGRMaXN0OiB0cnVlLFxuICBzdWJ0cmVlOiB0cnVlLFxuICBjaGFyYWN0ZXJEYXRhOiB0cnVlLFxufTtcblxuZXhwb3J0XG5Ac2xvdFN0YXRlKClcbmFic3RyYWN0IGNsYXNzIFNiYk9wdGlvbkJhc2VFbGVtZW50IGV4dGVuZHMgU2JiRGlzYWJsZWRNaXhpbihcbiAgU2JiSWNvbk5hbWVNaXhpbihTYmJIeWRyYXRpb25NaXhpbihMaXRFbGVtZW50KSksXG4pIHtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IG9wdGlvbklkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFZhbHVlIG9mIHRoZSBvcHRpb24uXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvbiBEZXZlbG9wZXIgbm90ZTogSW4gdGhpcyBjYXNlIHVwZGF0aW5nIHRoZSBhdHRyaWJ1dGUgbXVzdCBiZSBzeW5jaHJvbm91cy5cbiAgICogRHVlIHRvIHRoaXMsIGl0IGlzIGltcGxlbWVudGVkIGFzIGEgZ2V0dGVyL3NldHRlciBhbmQgdGhlIGF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjaygpIGhhbmRsZXMgdGhlIGRpZmYgY2hlY2suXG4gICAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnNldEF0dHJpYnV0ZSgndmFsdWUnLCBgJHt2YWx1ZX1gKTtcbiAgfVxuICBwdWJsaWMgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCd2YWx1ZScpID8/ICcnO1xuICB9XG5cbiAgLyoqIFdoZXRoZXIgdGhlIG9wdGlvbiBpcyBzZWxlY3RlZC4gKi9cbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgc2V0IHNlbGVjdGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ3NlbGVjdGVkJywgdmFsdWUpO1xuICAgIHRoaXMuX3VwZGF0ZUFyaWFTZWxlY3RlZCgpO1xuICB9XG4gIHB1YmxpYyBnZXQgc2VsZWN0ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaGFzQXR0cmlidXRlKCdzZWxlY3RlZCcpO1xuICB9XG5cbiAgLyoqIEVtaXRzIHdoZW4gdGhlIG9wdGlvbiBzZWxlY3Rpb24gc3RhdHVzIGNoYW5nZXMuICovXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzZWxlY3Rpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjtcblxuICAvKiogRW1pdHMgd2hlbiBhbiBvcHRpb24gd2FzIHNlbGVjdGVkIGJ5IHVzZXIuICovXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBvcHRpb25TZWxlY3RlZDogRXZlbnRFbWl0dGVyO1xuXG4gIC8qKiBXaGV0aGVyIHRvIGFwcGx5IHRoZSBuZWdhdGl2ZSBzdHlsaW5nICovXG4gIEBzdGF0ZSgpIHByb3RlY3RlZCBhY2Nlc3NvciBuZWdhdGl2ZSA9IGZhbHNlO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBjb21wb25lbnQgbXVzdCBiZSBzZXQgZGlzYWJsZWQgZHVlIGRpc2FibGVkIGF0dHJpYnV0ZSBvbiBzYmItb3B0Z3JvdXAuICovXG4gIEBzdGF0ZSgpIHByb3RlY3RlZCBhY2Nlc3NvciBkaXNhYmxlZEZyb21Hcm91cCA9IGZhbHNlO1xuXG4gIEBzdGF0ZSgpIHByb3RlY3RlZCBhY2Nlc3NvciBsYWJlbCE6IHN0cmluZztcblxuICAvKiogRGlzYWJsZSB0aGUgaGlnaGxpZ2h0IG9mIHRoZSBsYWJlbC4gKi9cbiAgQHN0YXRlKCkgcHJvdGVjdGVkIGFjY2Vzc29yIGRpc2FibGVMYWJlbEhpZ2hsaWdodDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBUaGUgcG9ydGlvbiBvZiB0aGUgaGlnaGxpZ2h0ZWQgbGFiZWwuICovXG4gIEBzdGF0ZSgpIHByaXZhdGUgYWNjZXNzb3IgX2hpZ2hsaWdodFN0cmluZzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgQHN0YXRlKCkgcHJpdmF0ZSBhY2Nlc3NvciBfaW5lcnRBcmlhR3JvdXBzID0gZmFsc2U7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2NsaWNrJywgKGU6IE1vdXNlRXZlbnQpID0+IHRoaXMuc2VsZWN0QnlDbGljayhlKSwge1xuICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICB9KTtcblxuICAgIHRoaXMuYWRkQ29udHJvbGxlcihcbiAgICAgIG5ldyBNdXRhdGlvbkNvbnRyb2xsZXIodGhpcywge1xuICAgICAgICBjb25maWc6IG9wdGlvbk9ic2VydmVyQ29uZmlnLFxuICAgICAgICBjYWxsYmFjazogKG11dGF0aW9uc0xpc3QpID0+IHRoaXMub25PcHRpb25BdHRyaWJ1dGVzQ2hhbmdlKG11dGF0aW9uc0xpc3QpLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIGlmIChpbmVydEFyaWFHcm91cHMpIHtcbiAgICAgIGlmICh0aGlzLmh5ZHJhdGlvblJlcXVpcmVkKSB7XG4gICAgICAgIHRoaXMuaHlkcmF0aW9uQ29tcGxldGUudGhlbigoKSA9PiAodGhpcy5faW5lcnRBcmlhR3JvdXBzID0gaW5lcnRBcmlhR3JvdXBzKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9pbmVydEFyaWFHcm91cHMgPSBpbmVydEFyaWFHcm91cHM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayhcbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgb2xkOiBzdHJpbmcgfCBudWxsLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBudWxsLFxuICApOiB2b2lkIHtcbiAgICBpZiAobmFtZSAhPT0gJ3ZhbHVlJyB8fCBvbGQgIT09IHZhbHVlKSB7XG4gICAgICBzdXBlci5hdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2sobmFtZSwgb2xkLCB2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEhpZ2hsaWdodCB0aGUgbGFiZWwgb2YgdGhlIG9wdGlvblxuICAgKiBAcGFyYW0gdmFsdWUgdGhlIGhpZ2hsaWdodGVkIHBvcnRpb24gb2YgdGhlIGxhYmVsXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGhpZ2hsaWdodCh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5faGlnaGxpZ2h0U3RyaW5nID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc2V0U2VsZWN0ZWRWaWFVc2VySW50ZXJhY3Rpb24oc2VsZWN0ZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkID0gc2VsZWN0ZWQ7XG4gICAgdGhpcy5zZWxlY3Rpb25DaGFuZ2UuZW1pdCgpO1xuICAgIGlmICh0aGlzLnNlbGVjdGVkKSB7XG4gICAgICB0aGlzLm9wdGlvblNlbGVjdGVkLmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLmlkIHx8PSBgJHt0aGlzLm9wdGlvbklkfS0ke25leHRJZCsrfWA7XG4gICAgaWYgKHRoaXMuaHlkcmF0aW9uUmVxdWlyZWQpIHtcbiAgICAgIHRoaXMuaHlkcmF0aW9uQ29tcGxldGUudGhlbigoKSA9PiB0aGlzLmluaXQoKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZGlzYWJsZWQnKSkge1xuICAgICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUodGhpcywgJ3RhYmluZGV4JywgaXNBbmRyb2lkICYmICF0aGlzLmRpc2FibGVkICYmIDApO1xuICAgICAgdGhpcy51cGRhdGVBcmlhRGlzYWJsZWQoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICAvLyBJbml0IGZpcnN0IHNlbGVjdCBzdGF0ZSBiZWNhdXNlIGZhbHNlIHdvdWxkIG5vdCBjYWxsIHNldHRlciBvZiBzZWxlY3RlZCBwcm9wZXJ0eS5cbiAgICB0aGlzLl91cGRhdGVBcmlhU2VsZWN0ZWQoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzZWxlY3RCeUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHNldEF0dHJpYnV0ZUZyb21QYXJlbnQoKTogdm9pZDtcblxuICBwcm90ZWN0ZWQgdXBkYXRlRGlzYWJsZUhpZ2hsaWdodChkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZUxhYmVsSGlnaGxpZ2h0ID0gZGlzYWJsZWQ7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZGlzYWJsZS1oaWdobGlnaHQnLCBkaXNhYmxlZCk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgb3B0aW9uIGlzIGN1cnJlbnRseSBhY3RpdmUuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHNldEFjdGl2ZSh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkYXRhLWFjdGl2ZScsIHZhbHVlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0QXR0cmlidXRlRnJvbVBhcmVudCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZUFyaWFEaXNhYmxlZCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmRpc2FibGVkRnJvbUdyb3VwKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcsICd0cnVlJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlQXJpYVNlbGVjdGVkKCk6IHZvaWQge1xuICAgIHRoaXMuc2V0QXR0cmlidXRlKCdhcmlhLXNlbGVjdGVkJywgYCR7dGhpcy5zZWxlY3RlZH1gKTtcbiAgfVxuXG4gIC8qKiBAZGVwcmVjYXRlZCB1c2Ugb25FeHRlcm5hbE11dGF0aW9uKCkgYXMgcmVwbGFjZW1lbnQuIFdpbGwgYmUgcmVtb3ZlZCB3aXRoIG5leHQgbWFqb3IgY2hhbmdlLiAqL1xuICBwcm90ZWN0ZWQgb25PcHRpb25BdHRyaWJ1dGVzQ2hhbmdlKG11dGF0aW9uc0xpc3Q6IE11dGF0aW9uUmVjb3JkW10pOiB2b2lkIHtcbiAgICB0aGlzLm9uRXh0ZXJuYWxNdXRhdGlvbihtdXRhdGlvbnNMaXN0KTtcbiAgfVxuXG4gIC8qKiBPYnNlcnZlIGNoYW5nZXMgb24gZGF0YSBhdHRyaWJ1dGVzICsgc2xvdHRlZCBjb250ZW50IGFuZCBzZXQgdGhlIGFwcHJvcHJpYXRlIHZhbHVlcy4gKi9cbiAgcHJvdGVjdGVkIG9uRXh0ZXJuYWxNdXRhdGlvbihtdXRhdGlvbnNMaXN0OiBNdXRhdGlvblJlY29yZFtdKTogdm9pZCB7XG4gICAgbGV0IGNvbnRlbnRDaGFuZ2VkID0gZmFsc2U7XG4gICAgZm9yIChjb25zdCBtdXRhdGlvbiBvZiBtdXRhdGlvbnNMaXN0KSB7XG4gICAgICBpZiAobXV0YXRpb24uYXR0cmlidXRlTmFtZSA9PT0gJ2RhdGEtZ3JvdXAtZGlzYWJsZWQnKSB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWRGcm9tR3JvdXAgPSB0aGlzLmhhc0F0dHJpYnV0ZSgnZGF0YS1ncm91cC1kaXNhYmxlZCcpO1xuICAgICAgICB0aGlzLnVwZGF0ZUFyaWFEaXNhYmxlZCgpO1xuICAgICAgfSBlbHNlIGlmIChtdXRhdGlvbi5hdHRyaWJ1dGVOYW1lID09PSAnZGF0YS1uZWdhdGl2ZScpIHtcbiAgICAgICAgdGhpcy5uZWdhdGl2ZSA9IHRoaXMuaGFzQXR0cmlidXRlKCdkYXRhLW5lZ2F0aXZlJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb250ZW50Q2hhbmdlZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGNvbnRlbnRDaGFuZ2VkKSB7XG4gICAgICB0aGlzLmhhbmRsZUhpZ2hsaWdodFN0YXRlKCk7XG4gICAgICAvKiogQGludGVybmFsICovXG4gICAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdvcHRpb25MYWJlbENoYW5nZWQnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVIaWdobGlnaHRTdGF0ZSgpOiB2b2lkIHtcbiAgICBjb25zdCBzbG90Tm9kZXMgPSBBcnJheS5mcm9tKHRoaXMuY2hpbGROb2RlcyA/PyBbXSkuZmlsdGVyKFxuICAgICAgKG4pID0+IG4ubm9kZVR5cGUgIT09IE5vZGUuQ09NTUVOVF9OT0RFICYmICghKG4gaW5zdGFuY2VvZiBFbGVtZW50KSB8fCBuLnNsb3QgIT09ICdpY29uJyksXG4gICAgKTtcbiAgICBjb25zdCBsYWJlbE5vZGVzID0gc2xvdE5vZGVzLmZpbHRlcigoZWwpID0+IGVsLm5vZGVUeXBlID09PSBOb2RlLlRFWFRfTk9ERSkgYXMgVGV4dFtdO1xuXG4gICAgLy8gRGlzYWJsZSB0aGUgaGlnaGxpZ2h0IGlmIHRoZSBzbG90IGNvbnRhaW4gbW9yZSB0aGFuIGp1c3QgdGV4dCBub2Rlcy5cbiAgICAvLyBXZSBuZWVkIHRvIGlnbm9yZSB0ZW1wbGF0ZSBlbGVtZW50cywgYXMgU1NSIGFkZHMgYSBkZWNsYXJhdGl2ZSBzaGFkb3cgRE9NXG4gICAgLy8gaW4gdGhlIGZvcm0gb2YgYSB0ZW1wbGF0ZSBlbGVtZW50LlxuICAgIGlmIChcbiAgICAgIGxhYmVsTm9kZXMubGVuZ3RoID09PSAwIHx8XG4gICAgICBzbG90Tm9kZXMuZmlsdGVyKChuKSA9PiAhKG4gaW5zdGFuY2VvZiBFbGVtZW50KSB8fCBuLmxvY2FsTmFtZSAhPT0gJ3RlbXBsYXRlJykubGVuZ3RoICE9PVxuICAgICAgICBsYWJlbE5vZGVzLmxlbmd0aFxuICAgICkge1xuICAgICAgdGhpcy51cGRhdGVEaXNhYmxlSGlnaGxpZ2h0KHRydWUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmxhYmVsID0gbGFiZWxOb2Rlc1xuICAgICAgLm1hcCgobCkgPT4gbC53aG9sZVRleHQpXG4gICAgICAuZmlsdGVyKChsKSA9PiBsLnRyaW0oKSlcbiAgICAgIC5qb2luKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0SGlnaGxpZ2h0ZWRMYWJlbCgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgaWYgKCF0aGlzLl9oaWdobGlnaHRTdHJpbmcgfHwgIXRoaXMuX2hpZ2hsaWdodFN0cmluZy50cmltKCkpIHtcbiAgICAgIHJldHVybiBodG1sYCR7dGhpcy5sYWJlbH1gO1xuICAgIH1cblxuICAgIGNvbnN0IG1hdGNoSW5kZXggPSB0aGlzLmxhYmVsIS50b0xvd2VyQ2FzZSgpLmluZGV4T2YodGhpcy5faGlnaGxpZ2h0U3RyaW5nLnRvTG93ZXJDYXNlKCkpO1xuXG4gICAgaWYgKG1hdGNoSW5kZXggPT09IC0xKSB7XG4gICAgICByZXR1cm4gaHRtbGAke3RoaXMubGFiZWx9YDtcbiAgICB9XG5cbiAgICBjb25zdCBwcmVmaXggPSB0aGlzLmxhYmVsIS5zdWJzdHJpbmcoMCwgbWF0Y2hJbmRleCk7XG4gICAgY29uc3QgaGlnaGxpZ2h0ZWQgPSB0aGlzLmxhYmVsIS5zdWJzdHJpbmcoXG4gICAgICBtYXRjaEluZGV4LFxuICAgICAgbWF0Y2hJbmRleCArIHRoaXMuX2hpZ2hsaWdodFN0cmluZy5sZW5ndGgsXG4gICAgKTtcbiAgICBjb25zdCBwb3N0Zml4ID0gdGhpcy5sYWJlbCEuc3Vic3RyaW5nKG1hdGNoSW5kZXggKyB0aGlzLl9oaWdobGlnaHRTdHJpbmcubGVuZ3RoKTtcblxuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItb3B0aW9uX19sYWJlbC0taGlnaGxpZ2h0XCI+JHtwcmVmaXh9PC9zcGFuPjxzcGFuPiR7aGlnaGxpZ2h0ZWR9PC9zcGFuXG4gICAgICA+PHNwYW4gY2xhc3M9XCJzYmItb3B0aW9uX19sYWJlbC0taGlnaGxpZ2h0XCI+JHtwb3N0Zml4fTwvc3Bhbj5cbiAgICBgO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlbmRlckljb24oKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYCA8c3BhbiBjbGFzcz1cInNiYi1vcHRpb25fX2ljb25cIj4gJHt0aGlzLnJlbmRlckljb25TbG90KCl9IDwvc3Bhbj5gO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlbmRlckxhYmVsKCk6IFRlbXBsYXRlUmVzdWx0IHwgdHlwZW9mIG5vdGhpbmcge1xuICAgIHJldHVybiB0aGlzLmxhYmVsICYmICF0aGlzLmRpc2FibGVMYWJlbEhpZ2hsaWdodCA/IHRoaXMuZ2V0SGlnaGxpZ2h0ZWRMYWJlbCgpIDogbm90aGluZztcbiAgfVxuXG4gIHByb3RlY3RlZCByZW5kZXJUaWNrKCk6IFRlbXBsYXRlUmVzdWx0IHwgdHlwZW9mIG5vdGhpbmcge1xuICAgIHJldHVybiBub3RoaW5nO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW9wdGlvbl9fY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItb3B0aW9uXCI+XG4gICAgICAgICAgJHt0aGlzLnJlbmRlckljb24oKX1cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1vcHRpb25fX2xhYmVsXCI+XG4gICAgICAgICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3RoaXMuaGFuZGxlSGlnaGxpZ2h0U3RhdGV9Pjwvc2xvdD5cbiAgICAgICAgICAgICR7dGhpcy5yZW5kZXJMYWJlbCgpfVxuICAgICAgICAgICAgJHt0aGlzLl9pbmVydEFyaWFHcm91cHMgJiYgdGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtZ3JvdXAtbGFiZWwnKVxuICAgICAgICAgICAgICA/IGh0bWxgPHNiYi1zY3JlZW4tcmVhZGVyLW9ubHk+XG4gICAgICAgICAgICAgICAgICAoJHt0aGlzLmdldEF0dHJpYnV0ZSgnZGF0YS1ncm91cC1sYWJlbCcpfSk8L3NiYi1zY3JlZW4tcmVhZGVyLW9ubHlcbiAgICAgICAgICAgICAgICA+YFxuICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICR7dGhpcy5yZW5kZXJUaWNrKCl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIl9hIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBWUEsSUFBSSxTQUFTO0FBT2IsTUFBTSxrQkFBa0I7QUFHeEIsTUFBTSx1QkFBNkM7QUFBQSxFQUNqRCxpQkFBaUIsQ0FBQyx1QkFBdUIsZUFBZTtBQUFBLEVBQ3hELFlBQVk7QUFBQSxFQUNaLFdBQVc7QUFBQSxFQUNYLFNBQVM7QUFBQSxFQUNULGVBQWU7O0lBS0Ysd0JBQW9CLE1BQUE7O0FBRGxDLE1BQUEsbUJBQUEsQ0FBQSxXQUFXOzs7O29CQUNnQyxpQkFDMUMsaUJBQWlCLGtCQUFrQixVQUFVLENBQUMsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQURiLEVBQUEsbUJBQVEsWUFFM0M7QUFBQSxJQWlEQyxjQUFBOzs7QUFmUyxzREFwQ0ksa0JBQUEsTUFBQSwwQkFBQSxHQW9DMEIsa0JBQUEsTUFBQSx3QkFBQSxLQUFLO0FBR25DLCtEQUFBLGtCQUFBLE1BQUEsMkJBQUEsR0FBQSxrQkFBQSxNQUFBLGlDQUF1QyxLQUFLO0FBRTVDLG1EQUFrQyxrQkFBQSxNQUFBLG9DQUFBLEdBQUEsa0JBQUEsTUFBQSxxQkFBQSxNQUFBO0FBR2xDLG1FQUFBLGtCQUFBLE1BQUEsd0JBQUEsR0FBQSxrQkFBQSxNQUFBLHFDQUFvRCxLQUFLO0FBR3pELDhEQUFBLGtCQUFBLE1BQUEsd0NBQUEsR0FBQSxrQkFBQSxNQUFBLGdDQUFtRCxJQUFJO0FBRXZELDhEQUFBLGtCQUFBLE1BQUEsbUNBQUEsR0FBQSxrQkFBQSxNQUFBLGdDQUFvQyxLQUFLOztBQUloRCxPQUFBQSxNQUFBLEtBQUsscUJBQUwsZ0JBQUFBLElBQUEsV0FBd0IsU0FBUyxDQUFDLE1BQWtCLEtBQUssY0FBYyxDQUFDLEdBQUc7QUFBQSxRQUN6RSxTQUFTO0FBQUEsTUFBQTtBQUdOLFdBQUEsY0FDSCxJQUFJLG1CQUFtQixNQUFNO0FBQUEsUUFDM0IsUUFBUTtBQUFBLFFBQ1IsVUFBVSxDQUFDLGtCQUFrQixLQUFLLHlCQUF5QixhQUFhO0FBQUEsTUFBQSxDQUN6RSxDQUFDO0FBR0osVUFBSSxpQkFBaUI7QUFDbkIsWUFBSSxLQUFLLG1CQUFtQjtBQUMxQixlQUFLLGtCQUFrQixLQUFLLE1BQU8sS0FBSyxtQkFBbUIsZUFBZ0I7QUFBQSxRQUFBLE9BQ3RFO0FBQ0wsZUFBSyxtQkFBbUI7QUFBQSxRQUFBO0FBQUEsTUFDMUI7QUFBQSxJQUNGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsSUExREYsSUFBVyxNQUFNLE9BQWE7QUFDNUIsV0FBSyxhQUFhLFNBQVMsR0FBRyxLQUFLLEVBQUU7QUFBQSxJQUFBO0FBQUEsSUFFdkMsSUFBVyxRQUFLO0FBQ1AsYUFBQSxLQUFLLGFBQWEsT0FBTyxLQUFLO0FBQUEsSUFBQTtBQUFBO0FBQUEsSUFLdkMsSUFBVyxTQUFTLE9BQWM7QUFDM0IsV0FBQSxnQkFBZ0IsWUFBWSxLQUFLO0FBQ3RDLFdBQUssb0JBQW1CO0FBQUEsSUFBQTtBQUFBLElBRTFCLElBQVcsV0FBUTtBQUNWLGFBQUEsS0FBSyxhQUFhLFVBQVU7QUFBQSxJQUFBO0FBQUE7QUFBQSxJQVU1QixJQUFtQixXQUFpQjtBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBcEMsSUFBbUIsU0FBaUIsT0FBQTtBQUFBLHlCQUFBLDRCQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUEsSUFHcEMsSUFBbUIsb0JBQTBCO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUE3QyxJQUFtQixrQkFBMEIsT0FBQTtBQUFBLHlCQUFBLHFDQUFBO0FBQUEsSUFBQTtBQUFBLElBRTdDLElBQW1CLFFBQWU7QUFBQSxhQUFBLG1CQUFBO0FBQUEsSUFBQTtBQUFBLElBQWxDLElBQW1CLE1BQWUsT0FBQTtBQUFBLHlCQUFBLHlCQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUEsSUFHbEMsSUFBbUIsd0JBQXVDO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUExRCxJQUFtQixzQkFBdUMsT0FBQTtBQUFBLHlCQUFBLHlDQUFBO0FBQUEsSUFBQTtBQUFBO0FBQUEsSUFHMUQsSUFBaUIsbUJBQXVDO0FBQUEsYUFBQSxtQkFBQTtBQUFBLElBQUE7QUFBQSxJQUF4RCxJQUFpQixpQkFBdUMsT0FBQTtBQUFBLHlCQUFBLG9DQUFBO0FBQUEsSUFBQTtBQUFBLElBRXhELElBQWlCLG1CQUF5QjtBQUFBLGFBQUEsbUJBQUE7QUFBQSxJQUFBO0FBQUEsSUFBMUMsSUFBaUIsaUJBQXlCLE9BQUE7QUFBQSx5QkFBQSxvQ0FBQTtBQUFBLElBQUE7QUFBQSxJQXdCbkMseUJBQ2QsTUFDQSxLQUNBLE9BQW9CO0FBRWhCLFVBQUEsU0FBUyxXQUFXLFFBQVEsT0FBTztBQUMvQixjQUFBLHlCQUF5QixNQUFNLEtBQUssS0FBSztBQUFBLE1BQUE7QUFBQSxJQUNqRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQVFLLFVBQVUsT0FBYTtBQUM1QixXQUFLLG1CQUFtQjtBQUFBLElBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQU1uQiw4QkFBOEIsVUFBaUI7QUFDcEQsV0FBSyxXQUFXO0FBQ2hCLFdBQUssZ0JBQWdCO0FBQ3JCLFVBQUksS0FBSyxVQUFVO0FBQ2pCLGFBQUssZUFBZTs7SUFDdEI7QUFBQSxJQUdjLG9CQUFpQjtBQUMvQixZQUFNLGtCQUFpQjtBQUN2QixXQUFLLE9BQUwsS0FBSyxLQUFPLEdBQUcsS0FBSyxRQUFRLElBQUksUUFBUTtBQUN4QyxVQUFJLEtBQUssbUJBQW1CO0FBQzFCLGFBQUssa0JBQWtCLEtBQUssTUFBTSxLQUFLLE1BQU07QUFBQSxNQUFBLE9BQ3hDO0FBQ0wsYUFBSyxLQUFJO0FBQUEsTUFBQTtBQUFBLElBQ1g7QUFBQSxJQUdpQixXQUFXLG1CQUF1QztBQUNuRSxZQUFNLFdBQVcsaUJBQWlCO0FBRTlCLFVBQUEsa0JBQWtCLElBQUksVUFBVSxHQUFHO0FBQ3JDLDZCQUFxQixNQUFNLFlBQVksYUFBYSxDQUFDLEtBQUssWUFBWSxDQUFDO0FBQ3ZFLGFBQUssbUJBQWtCO0FBQUEsTUFBQTtBQUFBLElBQ3pCO0FBQUEsSUFHaUIsYUFBYSxtQkFBdUM7QUFDckUsWUFBTSxhQUFhLGlCQUFpQjtBQUdwQyxXQUFLLG9CQUFtQjtBQUFBLElBQUE7QUFBQSxJQU1oQix1QkFBdUIsVUFBaUI7QUFDaEQsV0FBSyx3QkFBd0I7QUFDeEIsV0FBQSxnQkFBZ0IsMEJBQTBCLFFBQVE7QUFBQSxJQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQU9sRCxVQUFVLE9BQWM7QUFDeEIsV0FBQSxnQkFBZ0IsZUFBZSxLQUFLO0FBQUEsSUFBQTtBQUFBLElBR2pDLE9BQUk7QUFDWixXQUFLLHVCQUFzQjtBQUFBLElBQUE7QUFBQSxJQUduQixxQkFBa0I7QUFDdEIsVUFBQSxLQUFLLFlBQVksS0FBSyxtQkFBbUI7QUFDdEMsYUFBQSxhQUFhLGlCQUFpQixNQUFNO0FBQUEsTUFBQSxPQUNwQztBQUNMLGFBQUssZ0JBQWdCLGVBQWU7QUFBQSxNQUFBO0FBQUEsSUFDdEM7QUFBQSxJQUdNLHNCQUFtQjtBQUN6QixXQUFLLGFBQWEsaUJBQWlCLEdBQUcsS0FBSyxRQUFRLEVBQUU7QUFBQSxJQUFBO0FBQUE7QUFBQSxJQUk3Qyx5QkFBeUIsZUFBK0I7QUFDaEUsV0FBSyxtQkFBbUIsYUFBYTtBQUFBLElBQUE7QUFBQTtBQUFBLElBSTdCLG1CQUFtQixlQUErQjtBQUMxRCxVQUFJLGlCQUFpQjtBQUNyQixpQkFBVyxZQUFZLGVBQWU7QUFDaEMsWUFBQSxTQUFTLGtCQUFrQix1QkFBdUI7QUFDL0MsZUFBQSxvQkFBb0IsS0FBSyxhQUFhLHFCQUFxQjtBQUNoRSxlQUFLLG1CQUFrQjtBQUFBLFFBQUEsV0FDZCxTQUFTLGtCQUFrQixpQkFBaUI7QUFDaEQsZUFBQSxXQUFXLEtBQUssYUFBYSxlQUFlO0FBQUEsUUFBQSxPQUM1QztBQUNZLDJCQUFBO0FBQUEsUUFBQTtBQUFBLE1BQ25CO0FBR0YsVUFBSSxnQkFBZ0I7QUFDbEIsYUFBSyxxQkFBb0I7QUFFcEIsYUFBQSxjQUFjLElBQUksTUFBTSxzQkFBc0IsRUFBRSxTQUFTLEtBQUEsQ0FBTSxDQUFDO0FBQUEsTUFBQTtBQUFBLElBQ3ZFO0FBQUEsSUFHUSx1QkFBb0I7QUFDdEIsWUFBQSxZQUFZLE1BQU0sS0FBSyxLQUFLLGNBQWMsQ0FBRSxDQUFBLEVBQUUsT0FDbEQsQ0FBQyxNQUFNLEVBQUUsYUFBYSxLQUFLLGlCQUFpQixFQUFFLGFBQWEsWUFBWSxFQUFFLFNBQVMsT0FBTztBQUVyRixZQUFBLGFBQWEsVUFBVSxPQUFPLENBQUMsT0FBTyxHQUFHLGFBQWEsS0FBSyxTQUFTO0FBSzFFLFVBQ0UsV0FBVyxXQUFXLEtBQ3RCLFVBQVUsT0FBTyxDQUFDLE1BQU0sRUFBRSxhQUFhLFlBQVksRUFBRSxjQUFjLFVBQVUsRUFBRSxXQUM3RSxXQUFXLFFBQ2I7QUFDQSxhQUFLLHVCQUF1QixJQUFJO0FBQ2hDO0FBQUEsTUFBQTtBQUVGLFdBQUssUUFBUSxXQUNWLElBQUksQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUN0QixPQUFPLENBQUMsTUFBTSxFQUFFLEtBQU0sQ0FBQSxFQUN0Qjs7SUFHSyxzQkFBbUI7QUFDM0IsVUFBSSxDQUFDLEtBQUssb0JBQW9CLENBQUMsS0FBSyxpQkFBaUIsUUFBUTtBQUNwRCxlQUFBLE9BQU8sS0FBSyxLQUFLO0FBQUEsTUFBQTtBQUdwQixZQUFBLGFBQWEsS0FBSyxNQUFPLFlBQUEsRUFBYyxRQUFRLEtBQUssaUJBQWlCLGFBQWE7QUFFeEYsVUFBSSxlQUFlLElBQUk7QUFDZCxlQUFBLE9BQU8sS0FBSyxLQUFLO0FBQUEsTUFBQTtBQUcxQixZQUFNLFNBQVMsS0FBSyxNQUFPLFVBQVUsR0FBRyxVQUFVO0FBQzVDLFlBQUEsY0FBYyxLQUFLLE1BQU8sVUFDOUIsWUFDQSxhQUFhLEtBQUssaUJBQWlCLE1BQU07QUFFM0MsWUFBTSxVQUFVLEtBQUssTUFBTyxVQUFVLGFBQWEsS0FBSyxpQkFBaUIsTUFBTTtBQUV4RSxhQUFBO0FBQUEsbURBQ3dDLE1BQU0sZ0JBQWdCLFdBQVc7QUFBQSxvREFDaEMsT0FBTztBQUFBO0FBQUEsSUFBQTtBQUFBLElBSS9DLGFBQVU7QUFDWCxhQUFBLHdDQUF3QyxLQUFLLGVBQUEsQ0FBZ0I7QUFBQSxJQUFBO0FBQUEsSUFHNUQsY0FBVztBQUNuQixhQUFPLEtBQUssU0FBUyxDQUFDLEtBQUssd0JBQXdCLEtBQUssd0JBQXdCO0FBQUEsSUFBQTtBQUFBLElBR3hFLGFBQVU7QUFDWCxhQUFBO0FBQUEsSUFBQTtBQUFBLElBR1UsU0FBTTtBQUNoQixhQUFBO0FBQUE7QUFBQTtBQUFBLFlBR0MsS0FBSyxXQUFZLENBQUE7QUFBQTtBQUFBLGdDQUVHLEtBQUssb0JBQW9CO0FBQUEsY0FDM0MsS0FBSyxZQUFhLENBQUE7QUFBQSxjQUNsQixLQUFLLG9CQUFvQixLQUFLLGFBQWEsa0JBQWtCLElBQzNEO0FBQUEscUJBQ0ssS0FBSyxhQUFhLGtCQUFrQixDQUFDO0FBQUEscUJBRTFDLE9BQU87QUFBQTtBQUFBLFlBRVgsS0FBSyxXQUFZLENBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxJQUFBO0FBQUEsRUFJM0IsR0FwT1MsNENBR0EscURBRUEseUNBR0EseURBR0Esb0RBRUE7O0FBdENSLDRCQUFBLENBQUEsVUFBVTtBQVNWLCtCQUFBLENBQUEsU0FBUyxFQUFFLE1BQU0sUUFBUyxDQUFBLENBQUM7QUFnQjNCLDJCQUFBLENBQUEsT0FBTztBQUdQLG9DQUFBLENBQUEsT0FBTztBQUVQLHdCQUFBLENBQUEsT0FBTztBQUdQLHdDQUFBLENBQUEsT0FBTztBQUdQLG1DQUFBLENBQUEsT0FBTztBQUVQLG1DQUFBLENBQUEsT0FBTztBQXJDUixpQkFBQSxJQUFBLE1BQUEsdUJBQUEsRUFBQSxNQUFBLFVBQUEsTUFBQSxTQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLFdBQUEsS0FBQSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBVyxRQUVWO0FBQUEsU0FBQSxVQUFBLGFBQUEsTUFBQSwwQkFBQTtBQU9ELGlCQUFBLElBQUEsTUFBQSwwQkFBQSxFQUFBLE1BQUEsVUFBQSxNQUFBLFlBQUEsUUFBQSxPQUFBLFNBQUEsT0FBQSxRQUFBLEVBQUEsS0FBQSxDQUFBLFFBQUEsY0FBQSxLQUFBLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFXLFdBR1Y7QUFBQSxTQUFBLFVBQUEsYUFBQSxNQUFBLDBCQUFBO0FBWTJCLGlCQUFBLElBQUEsTUFBQSxzQkFBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLFlBQUEsUUFBQSxPQUFBLFNBQUEsT0FBQSxRQUFBLEVBQUEsS0FBQSxDQUFBLFFBQUEsY0FBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQUEsVUFBQSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBQSxXQUFpQjtBQUFBLFNBQUEsVUFBQSxhQUFBLHdCQUFBLDJCQUFBO0FBR2pCLGlCQUFBLElBQUEsTUFBQSwrQkFBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLHFCQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLHVCQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBQSxtQkFBQSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBQSxvQkFBMEI7QUFBQSxTQUFBLFVBQUEsYUFBQSxpQ0FBQSxvQ0FBQTtBQUUxQixpQkFBQSxJQUFBLE1BQUEsbUJBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxTQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLFdBQUEsS0FBQSxLQUFBLENBQUEsUUFBQSxJQUFBLE9BQUEsS0FBQSxDQUFBLEtBQUEsVUFBQTtBQUFBLFVBQUEsUUFBZTtBQUFBLFNBQUEsVUFBQSxhQUFBLHFCQUFBLHdCQUFBO0FBR2YsaUJBQUEsSUFBQSxNQUFBLG1DQUFBLEVBQUEsTUFBQSxZQUFBLE1BQUEseUJBQUEsUUFBQSxPQUFBLFNBQUEsT0FBQSxRQUFBLEVBQUEsS0FBQSxDQUFBLFFBQUEsMkJBQUEsS0FBQSxLQUFBLENBQUEsUUFBQSxJQUFBLHVCQUFBLEtBQUEsQ0FBQSxLQUFBLFVBQUE7QUFBQSxVQUFBLHdCQUF1QztBQUFBLFNBQUEsVUFBQSxhQUFBLHFDQUFBLHdDQUFBO0FBR3pDLGlCQUFBLElBQUEsTUFBQSw4QkFBQSxFQUFBLE1BQUEsWUFBQSxNQUFBLG9CQUFBLFFBQUEsT0FBQSxTQUFBLE9BQUEsUUFBQSxFQUFBLEtBQUEsQ0FBQSxRQUFBLHNCQUFBLEtBQUEsS0FBQSxDQUFBLFFBQUEsSUFBQSxrQkFBQSxLQUFBLENBQUEsS0FBQSxVQUFBO0FBQUEsVUFBQSxtQkFBdUM7QUFBQSxTQUFBLFVBQUEsYUFBQSxnQ0FBQSxtQ0FBQTtBQUV2QyxpQkFBQSxJQUFBLE1BQUEsOEJBQUEsRUFBQSxNQUFBLFlBQUEsTUFBQSxvQkFBQSxRQUFBLE9BQUEsU0FBQSxPQUFBLFFBQUEsRUFBQSxLQUFBLENBQUEsUUFBQSxzQkFBQSxLQUFBLEtBQUEsQ0FBQSxRQUFBLElBQUEsa0JBQUEsS0FBQSxDQUFBLEtBQUEsVUFBQTtBQUFBLFVBQUEsbUJBQXlCO0FBQUEsU0FBQSxVQUFBLGFBQUEsZ0NBQUEsbUNBQUE7QUFqRHJELGlCQXlRQyxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O0FBelFjLHNCQUFvQixZQUFBLHVCQUFBO0FBQUEsRUFBQSxNQUFDOzs7In0=
328
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9uLWJhc2UtZWxlbWVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL29wdGlvbi9vcHRpb24vb3B0aW9uLWJhc2UtZWxlbWVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNdXRhdGlvbkNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL211dGF0aW9uLWNvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCwgbm90aGluZywgdHlwZSBQcm9wZXJ0eVZhbHVlcywgdHlwZSBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSwgc3RhdGUgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IHNsb3RTdGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBpc0FuZHJvaWQsIGlzU2FmYXJpLCBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB0eXBlIHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnLi4vLi4vY29yZS9ldmVudGluZy5qcyc7XG5pbXBvcnQge1xuICBTYmJEaXNhYmxlZE1peGluLFxuICBTYmJFbGVtZW50SW50ZXJuYWxzTWl4aW4sXG4gIFNiYkh5ZHJhdGlvbk1peGluLFxufSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgeyBTYmJJY29uTmFtZU1peGluIH0gZnJvbSAnLi4vLi4vaWNvbi5qcyc7XG5cbmltcG9ydCAnLi4vLi4vc2NyZWVuLXJlYWRlci1vbmx5LmpzJztcblxubGV0IG5leHRJZCA9IDA7XG5cbi8qKlxuICogT24gU2FmYXJpLCB0aGUgZ3JvdXBzIGxhYmVscyBhcmUgbm90IHJlYWQgYnkgVm9pY2VPdmVyLlxuICogVG8gc29sdmUgdGhlIHByb2JsZW0sIHdlIHJlbW92ZSB0aGUgcm9sZT1cImdyb3VwXCIgYW5kIGFkZCBhbiBoaWRkZW4gc3BhbiBjb250YWluaW5nIHRoZSBncm91cCBuYW1lXG4gKiBUT0RPOiBXZSBzaG91bGQgcGVyaW9kaWNhbGx5IGNoZWNrIGlmIGl0IGhhcyBiZWVuIHNvbHZlZCBhbmQsIGlmIHNvLCByZW1vdmUgdGhlIHByb3BlcnR5LlxuICovXG5jb25zdCBpbmVydEFyaWFHcm91cHMgPSBpc1NhZmFyaTtcblxuLyoqIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBhdHRyaWJ1dGUgdG8gbG9vayBhdCBpZiBjb21wb25lbnQgaXMgbmVzdGVkIGluIGFuIG9wdGlvbiBncm91cCAqL1xuY29uc3Qgb3B0aW9uT2JzZXJ2ZXJDb25maWc6IE11dGF0aW9uT2JzZXJ2ZXJJbml0ID0ge1xuICBhdHRyaWJ1dGVGaWx0ZXI6IFsnZGF0YS1ncm91cC1kaXNhYmxlZCcsICdkYXRhLW5lZ2F0aXZlJ10sXG4gIGF0dHJpYnV0ZXM6IHRydWUsXG4gIGNoaWxkTGlzdDogdHJ1ZSxcbiAgc3VidHJlZTogdHJ1ZSxcbiAgY2hhcmFjdGVyRGF0YTogdHJ1ZSxcbn07XG5cbmV4cG9ydFxuQHNsb3RTdGF0ZSgpXG5hYnN0cmFjdCBjbGFzcyBTYmJPcHRpb25CYXNlRWxlbWVudDxUID0gc3RyaW5nPiBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oXG4gIFNiYkljb25OYW1lTWl4aW4oU2JiRWxlbWVudEludGVybmFsc01peGluKFNiYkh5ZHJhdGlvbk1peGluKExpdEVsZW1lbnQpKSksXG4pIHtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IG9wdGlvbklkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFZhbHVlIG9mIHRoZSBvcHRpb24uXG4gICAqXG4gICAqIEBkZXNjcmlwdGlvbiBEZXZlbG9wZXIgbm90ZTogSW4gdGhpcyBjYXNlIHVwZGF0aW5nIHRoZSBhdHRyaWJ1dGUgbXVzdCBiZSBzeW5jaHJvbm91cy5cbiAgICogRHVlIHRvIHRoaXMsIGl0IGlzIGltcGxlbWVudGVkIGFzIGEgZ2V0dGVyL3NldHRlciBhbmQgdGhlIGF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjaygpIGhhbmRsZXMgdGhlIGRpZmYgY2hlY2suXG4gICAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgc2V0IHZhbHVlKHZhbHVlOiBUKSB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCd2YWx1ZScsIGAke3ZhbHVlfWApO1xuICAgICAgdGhpcy5fdmFsdWUgPSBudWxsO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xuICAgIH1cbiAgfVxuICBwdWJsaWMgZ2V0IHZhbHVlKCk6IFQge1xuICAgIHJldHVybiAodGhpcy5fdmFsdWUgPz8gdGhpcy5nZXRBdHRyaWJ1dGUoJ3ZhbHVlJykgPz8gJycpIGFzIFQ7XG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWU6IFQgfCBudWxsID0gbnVsbDtcblxuICAvKiogV2hldGhlciB0aGUgb3B0aW9uIGlzIHNlbGVjdGVkLiAqL1xuICBAcHJvcGVydHkoeyB0eXBlOiBCb29sZWFuIH0pXG4gIHB1YmxpYyBzZXQgc2VsZWN0ZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZSgnc2VsZWN0ZWQnLCB2YWx1ZSk7XG4gICAgdGhpcy5fdXBkYXRlQXJpYVNlbGVjdGVkKCk7XG4gIH1cbiAgcHVibGljIGdldCBzZWxlY3RlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5oYXNBdHRyaWJ1dGUoJ3NlbGVjdGVkJyk7XG4gIH1cblxuICAvKiogRW1pdHMgd2hlbiBhbiBvcHRpb24gd2FzIHNlbGVjdGVkIGJ5IHVzZXIuICovXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBvcHRpb25TZWxlY3RlZDogRXZlbnRFbWl0dGVyO1xuXG4gIC8qKiBXaGV0aGVyIHRvIGFwcGx5IHRoZSBuZWdhdGl2ZSBzdHlsaW5nICovXG4gIEBzdGF0ZSgpIHByb3RlY3RlZCBhY2Nlc3NvciBuZWdhdGl2ZSA9IGZhbHNlO1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBjb21wb25lbnQgbXVzdCBiZSBzZXQgZGlzYWJsZWQgZHVlIGRpc2FibGVkIGF0dHJpYnV0ZSBvbiBzYmItb3B0Z3JvdXAuICovXG4gIEBzdGF0ZSgpIHByb3RlY3RlZCBhY2Nlc3NvciBkaXNhYmxlZEZyb21Hcm91cCA9IGZhbHNlO1xuXG4gIEBzdGF0ZSgpIHByb3RlY3RlZCBhY2Nlc3NvciBsYWJlbCE6IHN0cmluZztcblxuICAvKiogRGlzYWJsZSB0aGUgaGlnaGxpZ2h0IG9mIHRoZSBsYWJlbC4gKi9cbiAgQHN0YXRlKCkgcHJvdGVjdGVkIGFjY2Vzc29yIGRpc2FibGVMYWJlbEhpZ2hsaWdodDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBUaGUgcG9ydGlvbiBvZiB0aGUgaGlnaGxpZ2h0ZWQgbGFiZWwuICovXG4gIEBzdGF0ZSgpIHByaXZhdGUgYWNjZXNzb3IgX2hpZ2hsaWdodFN0cmluZzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgQHN0YXRlKCkgcHJpdmF0ZSBhY2Nlc3NvciBfaW5lcnRBcmlhR3JvdXBzID0gZmFsc2U7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2NsaWNrJywgKGU6IE1vdXNlRXZlbnQpID0+IHRoaXMuc2VsZWN0QnlDbGljayhlKSwge1xuICAgICAgcGFzc2l2ZTogdHJ1ZSxcbiAgICB9KTtcblxuICAgIHRoaXMuYWRkQ29udHJvbGxlcihcbiAgICAgIG5ldyBNdXRhdGlvbkNvbnRyb2xsZXIodGhpcywge1xuICAgICAgICBjb25maWc6IG9wdGlvbk9ic2VydmVyQ29uZmlnLFxuICAgICAgICBjYWxsYmFjazogKG11dGF0aW9uc0xpc3QpID0+IHRoaXMub25FeHRlcm5hbE11dGF0aW9uKG11dGF0aW9uc0xpc3QpLFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIGlmIChpbmVydEFyaWFHcm91cHMpIHtcbiAgICAgIGlmICh0aGlzLmh5ZHJhdGlvblJlcXVpcmVkKSB7XG4gICAgICAgIHRoaXMuaHlkcmF0aW9uQ29tcGxldGUudGhlbigoKSA9PiAodGhpcy5faW5lcnRBcmlhR3JvdXBzID0gaW5lcnRBcmlhR3JvdXBzKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9pbmVydEFyaWFHcm91cHMgPSBpbmVydEFyaWFHcm91cHM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayhcbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgb2xkOiBzdHJpbmcgfCBudWxsLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBudWxsLFxuICApOiB2b2lkIHtcbiAgICBpZiAobmFtZSAhPT0gJ3ZhbHVlJyB8fCBvbGQgIT09IHZhbHVlKSB7XG4gICAgICBzdXBlci5hdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2sobmFtZSwgb2xkLCB2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEhpZ2hsaWdodCB0aGUgbGFiZWwgb2YgdGhlIG9wdGlvblxuICAgKiBAcGFyYW0gdmFsdWUgdGhlIGhpZ2hsaWdodGVkIHBvcnRpb24gb2YgdGhlIGxhYmVsXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGhpZ2hsaWdodCh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5faGlnaGxpZ2h0U3RyaW5nID0gdmFsdWU7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2VsZWN0VmlhVXNlckludGVyYWN0aW9uKHNlbGVjdGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZCA9IHNlbGVjdGVkO1xuICAgIGlmICh0aGlzLnNlbGVjdGVkKSB7XG4gICAgICB0aGlzLm9wdGlvblNlbGVjdGVkLmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLmlkIHx8PSBgJHt0aGlzLm9wdGlvbklkfS0ke25leHRJZCsrfWA7XG4gICAgaWYgKHRoaXMuaHlkcmF0aW9uUmVxdWlyZWQpIHtcbiAgICAgIHRoaXMuaHlkcmF0aW9uQ29tcGxldGUudGhlbigoKSA9PiB0aGlzLmluaXQoKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnZGlzYWJsZWQnKSkge1xuICAgICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUodGhpcywgJ3RhYmluZGV4JywgaXNBbmRyb2lkICYmICF0aGlzLmRpc2FibGVkICYmIDApO1xuICAgICAgdGhpcy51cGRhdGVBcmlhRGlzYWJsZWQoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICAvLyBJbml0IGZpcnN0IHNlbGVjdCBzdGF0ZSBiZWNhdXNlIGZhbHNlIHdvdWxkIG5vdCBjYWxsIHNldHRlciBvZiBzZWxlY3RlZCBwcm9wZXJ0eS5cbiAgICB0aGlzLl91cGRhdGVBcmlhU2VsZWN0ZWQoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzZWxlY3RCeUNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHNldEF0dHJpYnV0ZUZyb21QYXJlbnQoKTogdm9pZDtcblxuICBwcm90ZWN0ZWQgdXBkYXRlRGlzYWJsZUhpZ2hsaWdodChkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZUxhYmVsSGlnaGxpZ2h0ID0gZGlzYWJsZWQ7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZGlzYWJsZS1oaWdobGlnaHQnLCBkaXNhYmxlZCk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgb3B0aW9uIGlzIGN1cnJlbnRseSBhY3RpdmUuXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHNldEFjdGl2ZSh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkYXRhLWFjdGl2ZScsIHZhbHVlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0QXR0cmlidXRlRnJvbVBhcmVudCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZUFyaWFEaXNhYmxlZCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLmRpc2FibGVkRnJvbUdyb3VwKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcsICd0cnVlJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlQXJpYVNlbGVjdGVkKCk6IHZvaWQge1xuICAgIHRoaXMuc2V0QXR0cmlidXRlKCdhcmlhLXNlbGVjdGVkJywgYCR7dGhpcy5zZWxlY3RlZH1gKTtcbiAgfVxuXG4gIC8qKiBPYnNlcnZlIGNoYW5nZXMgb24gZGF0YSBhdHRyaWJ1dGVzICsgc2xvdHRlZCBjb250ZW50IGFuZCBzZXQgdGhlIGFwcHJvcHJpYXRlIHZhbHVlcy4gKi9cbiAgcHJvdGVjdGVkIG9uRXh0ZXJuYWxNdXRhdGlvbihtdXRhdGlvbnNMaXN0OiBNdXRhdGlvblJlY29yZFtdKTogdm9pZCB7XG4gICAgbGV0IGNvbnRlbnRDaGFuZ2VkID0gZmFsc2U7XG4gICAgZm9yIChjb25zdCBtdXRhdGlvbiBvZiBtdXRhdGlvbnNMaXN0KSB7XG4gICAgICBpZiAobXV0YXRpb24uYXR0cmlidXRlTmFtZSA9PT0gJ2RhdGEtZ3JvdXAtZGlzYWJsZWQnKSB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWRGcm9tR3JvdXAgPSB0aGlzLmhhc0F0dHJpYnV0ZSgnZGF0YS1ncm91cC1kaXNhYmxlZCcpO1xuICAgICAgICB0aGlzLnVwZGF0ZUFyaWFEaXNhYmxlZCgpO1xuICAgICAgfSBlbHNlIGlmIChtdXRhdGlvbi5hdHRyaWJ1dGVOYW1lID09PSAnZGF0YS1uZWdhdGl2ZScpIHtcbiAgICAgICAgdGhpcy5uZWdhdGl2ZSA9IHRoaXMuaGFzQXR0cmlidXRlKCdkYXRhLW5lZ2F0aXZlJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb250ZW50Q2hhbmdlZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGNvbnRlbnRDaGFuZ2VkKSB7XG4gICAgICB0aGlzLmhhbmRsZUhpZ2hsaWdodFN0YXRlKCk7XG4gICAgICAvKiogQGludGVybmFsICovXG4gICAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdvcHRpb25MYWJlbENoYW5nZWQnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVIaWdobGlnaHRTdGF0ZSgpOiB2b2lkIHtcbiAgICBjb25zdCBzbG90Tm9kZXMgPSBBcnJheS5mcm9tKHRoaXMuY2hpbGROb2RlcyA/PyBbXSkuZmlsdGVyKFxuICAgICAgKG4pID0+IG4ubm9kZVR5cGUgIT09IE5vZGUuQ09NTUVOVF9OT0RFICYmICghKG4gaW5zdGFuY2VvZiBFbGVtZW50KSB8fCBuLnNsb3QgIT09ICdpY29uJyksXG4gICAgKTtcbiAgICBjb25zdCBsYWJlbE5vZGVzID0gc2xvdE5vZGVzLmZpbHRlcigoZWwpID0+IGVsLm5vZGVUeXBlID09PSBOb2RlLlRFWFRfTk9ERSkgYXMgVGV4dFtdO1xuXG4gICAgLy8gRGlzYWJsZSB0aGUgaGlnaGxpZ2h0IGlmIHRoZSBzbG90IGNvbnRhaW4gbW9yZSB0aGFuIGp1c3QgdGV4dCBub2Rlcy5cbiAgICAvLyBXZSBuZWVkIHRvIGlnbm9yZSB0ZW1wbGF0ZSBlbGVtZW50cywgYXMgU1NSIGFkZHMgYSBkZWNsYXJhdGl2ZSBzaGFkb3cgRE9NXG4gICAgLy8gaW4gdGhlIGZvcm0gb2YgYSB0ZW1wbGF0ZSBlbGVtZW50LlxuICAgIGlmIChcbiAgICAgIGxhYmVsTm9kZXMubGVuZ3RoID09PSAwIHx8XG4gICAgICBzbG90Tm9kZXMuZmlsdGVyKChuKSA9PiAhKG4gaW5zdGFuY2VvZiBFbGVtZW50KSB8fCBuLmxvY2FsTmFtZSAhPT0gJ3RlbXBsYXRlJykubGVuZ3RoICE9PVxuICAgICAgICBsYWJlbE5vZGVzLmxlbmd0aFxuICAgICkge1xuICAgICAgdGhpcy51cGRhdGVEaXNhYmxlSGlnaGxpZ2h0KHRydWUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmxhYmVsID0gbGFiZWxOb2Rlc1xuICAgICAgLm1hcCgobCkgPT4gbC53aG9sZVRleHQpXG4gICAgICAuZmlsdGVyKChsKSA9PiBsLnRyaW0oKSlcbiAgICAgIC5qb2luKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0SGlnaGxpZ2h0ZWRMYWJlbCgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgaWYgKCF0aGlzLl9oaWdobGlnaHRTdHJpbmcgfHwgIXRoaXMuX2hpZ2hsaWdodFN0cmluZy50cmltKCkpIHtcbiAgICAgIHJldHVybiBodG1sYCR7dGhpcy5sYWJlbH1gO1xuICAgIH1cblxuICAgIGNvbnN0IG1hdGNoSW5kZXggPSB0aGlzLmxhYmVsIS50b0xvd2VyQ2FzZSgpLmluZGV4T2YodGhpcy5faGlnaGxpZ2h0U3RyaW5nLnRvTG93ZXJDYXNlKCkpO1xuXG4gICAgaWYgKG1hdGNoSW5kZXggPT09IC0xKSB7XG4gICAgICByZXR1cm4gaHRtbGAke3RoaXMubGFiZWx9YDtcbiAgICB9XG5cbiAgICBjb25zdCBwcmVmaXggPSB0aGlzLmxhYmVsIS5zdWJzdHJpbmcoMCwgbWF0Y2hJbmRleCk7XG4gICAgY29uc3QgaGlnaGxpZ2h0ZWQgPSB0aGlzLmxhYmVsIS5zdWJzdHJpbmcoXG4gICAgICBtYXRjaEluZGV4LFxuICAgICAgbWF0Y2hJbmRleCArIHRoaXMuX2hpZ2hsaWdodFN0cmluZy5sZW5ndGgsXG4gICAgKTtcbiAgICBjb25zdCBwb3N0Zml4ID0gdGhpcy5sYWJlbCEuc3Vic3RyaW5nKG1hdGNoSW5kZXggKyB0aGlzLl9oaWdobGlnaHRTdHJpbmcubGVuZ3RoKTtcblxuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItb3B0aW9uX19sYWJlbC0taGlnaGxpZ2h0XCI+JHtwcmVmaXh9PC9zcGFuPjxzcGFuPiR7aGlnaGxpZ2h0ZWR9PC9zcGFuXG4gICAgICA+PHNwYW4gY2xhc3M9XCJzYmItb3B0aW9uX19sYWJlbC0taGlnaGxpZ2h0XCI+JHtwb3N0Zml4fTwvc3Bhbj5cbiAgICBgO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlbmRlckljb24oKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYCA8c3BhbiBjbGFzcz1cInNiYi1vcHRpb25fX2ljb25cIj4gJHt0aGlzLnJlbmRlckljb25TbG90KCl9IDwvc3Bhbj5gO1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlbmRlckxhYmVsKCk6IFRlbXBsYXRlUmVzdWx0IHwgdHlwZW9mIG5vdGhpbmcge1xuICAgIHJldHVybiB0aGlzLmxhYmVsICYmICF0aGlzLmRpc2FibGVMYWJlbEhpZ2hsaWdodCA/IHRoaXMuZ2V0SGlnaGxpZ2h0ZWRMYWJlbCgpIDogbm90aGluZztcbiAgfVxuXG4gIHByb3RlY3RlZCByZW5kZXJUaWNrKCk6IFRlbXBsYXRlUmVzdWx0IHwgdHlwZW9mIG5vdGhpbmcge1xuICAgIHJldHVybiBub3RoaW5nO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW9wdGlvbl9fY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItb3B0aW9uXCI+XG4gICAgICAgICAgJHt0aGlzLnJlbmRlckljb24oKX1cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1vcHRpb25fX2xhYmVsXCI+XG4gICAgICAgICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3RoaXMuaGFuZGxlSGlnaGxpZ2h0U3RhdGV9Pjwvc2xvdD5cbiAgICAgICAgICAgICR7dGhpcy5yZW5kZXJMYWJlbCgpfVxuICAgICAgICAgICAgJHt0aGlzLl9pbmVydEFyaWFHcm91cHMgJiYgdGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtZ3JvdXAtbGFiZWwnKVxuICAgICAgICAgICAgICA/IGh0bWxgPHNiYi1zY3JlZW4tcmVhZGVyLW9ubHk+XG4gICAgICAgICAgICAgICAgICAoJHt0aGlzLmdldEF0dHJpYnV0ZSgnZGF0YS1ncm91cC1sYWJlbCcpfSk8L3NiYi1zY3JlZW4tcmVhZGVyLW9ubHlcbiAgICAgICAgICAgICAgICA+YFxuICAgICAgICAgICAgICA6IG5vdGhpbmd9XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICR7dGhpcy5yZW5kZXJUaWNrKCl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIl9hIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBZ0JBLElBQUksU0FBUztBQU9iLE1BQU0sa0JBQWtCO0FBR3hCLE1BQU0sdUJBQTZDO0FBQUEsRUFDakQsaUJBQWlCLENBQUMsdUJBQXVCLGVBQWU7QUFBQSxFQUN4RCxZQUFZO0FBQUEsRUFDWixXQUFXO0FBQUEsRUFDWCxTQUFTO0FBQUEsRUFDVCxlQUFlOztJQUtGLHdCQUFvQixNQUFBOztBQURsQyxNQUFB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
@@ -11,8 +11,10 @@ export type SbbOptionVariant = 'autocomplete' | 'select' | null;
11
11
  * @event {CustomEvent<void>} optionSelected - Emits when an option was selected by user.
12
12
  * @cssprop [--sbb-option-icon-container-display=none] - Can be used to reserve space even
13
13
  * when preserve-icon-space on autocomplete is not set or iconName is not set.
14
+ * @overrideType value - (T = string) | null
14
15
  */
15
- export declare class SbbOptionElement extends SbbOptionBaseElement {
16
+ export declare class SbbOptionElement<T = string> extends SbbOptionBaseElement<T> {
17
+ static readonly role = "option";
16
18
  static styles: CSSResultGroup;
17
19
  static readonly events: {
18
20
  readonly selectionChange: "optionSelectionChange";
@@ -29,7 +31,7 @@ export declare class SbbOptionElement extends SbbOptionBaseElement {
29
31
  private get _isMultiple();
30
32
  protected setAttributeFromParent(): void;
31
33
  protected selectByClick(event: MouseEvent): void;
32
- connectedCallback(): void;
34
+ protected selectViaUserInteraction(selected: boolean): void;
33
35
  protected init(): void;
34
36
  private _setVariantByContext;
35
37
  protected handleHighlightState(): void;
@@ -43,6 +45,7 @@ declare global {
43
45
  }
44
46
  interface GlobalEventHandlersEventMap {
45
47
  optionSelectionChange: CustomEvent<void>;
48
+ optionSelected: CustomEvent<void>;
46
49
  }
47
50
  }
48
51
  //# sourceMappingURL=option.component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"option.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/option/option/option.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1D,OAAO,EAAQ,OAAO,EAAE,MAAM,KAAK,CAAC;AAIpC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,0BAA0B,CAAC;AAElC,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,QAAQ,GAAG,IAAI,CAAC;AAEhE;;;;;;;;;GASG;AACH,qBAKM,gBAAiB,SAAQ,oBAAoB;IACjD,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;;MAGlB;IAEX,SAAS,CAAC,QAAQ,SAAgB;IAElC,sDAAsD;IACtD,SAAS,CAAC,eAAe,EAAE,YAAY,CAGrC;IAEF,iDAAiD;IACjD,SAAS,CAAC,cAAc,EAAE,YAAY,CAGpC;IAEF,OAAO,KAAK,QAAQ,QAInB;IACD,OAAO,KAAK,QAAQ,GAEnB;IAED,OAAO,KAAK,WAAW,QAEtB;IACD,OAAO,KAAK,WAAW,GAEtB;IAED,SAAS,CAAC,sBAAsB,IAAI,IAAI;IAgBxC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAchC,iBAAiB,IAAI,IAAI;cAItB,IAAI,IAAI,IAAI;IAS/B,OAAO,CAAC,oBAAoB;cAST,oBAAoB,IAAI,IAAI;cAS5B,UAAU,IAAI,cAAc;cAoB5B,WAAW,IAAI,cAAc,GAAG,OAAO,OAAO;cAM9C,UAAU,IAAI,cAAc,GAAG,OAAO,OAAO;CAKjE;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,YAAY,EAAE,gBAAgB,CAAC;KAChC;IAED,UAAU,2BAA2B;QACnC,qBAAqB,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;KAC1C;CACF"}
1
+ {"version":3,"file":"option.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/option/option/option.component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1D,OAAO,EAAQ,OAAO,EAAE,MAAM,KAAK,CAAC;AAGpC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,0BAA0B,CAAC;AAElC,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,QAAQ,GAAG,IAAI,CAAC;AAEhE;;;;;;;;;;GAUG;AACH,qBAEM,gBAAgB,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,oBAAoB,CAAC,CAAC,CAAC;IAChE,gBAAgC,IAAI,YAAY;IAChD,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;;MAGlB;IAEX,SAAS,CAAC,QAAQ,SAAgB;IAElC,sDAAsD;IACtD,SAAS,CAAC,eAAe,EAAE,YAAY,CAGrC;IAEF,iDAAiD;IACjD,SAAS,CAAC,cAAc,EAAE,YAAY,CAGpC;IAEF,OAAO,KAAK,QAAQ,QAInB;IACD,OAAO,KAAK,QAAQ,GAEnB;IAED,OAAO,KAAK,WAAW,QAEtB;IACD,OAAO,KAAK,WAAW,GAEtB;IAED,SAAS,CAAC,sBAAsB,IAAI,IAAI;IAgBxC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;cAc7B,wBAAwB,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;cAKjD,IAAI,IAAI,IAAI;IAS/B,OAAO,CAAC,oBAAoB;cAST,oBAAoB,IAAI,IAAI;cAS5B,UAAU,IAAI,cAAc;cAoB5B,WAAW,IAAI,cAAc,GAAG,OAAO,OAAO;cAM9C,UAAU,IAAI,cAAc,GAAG,OAAO,OAAO;CAKjE;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,YAAY,EAAE,gBAAgB,CAAC;KAChC;IAED,UAAU,2BAA2B;QACnC,qBAAqB,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACzC,cAAc,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;KACnC;CACF"}