@sbb-esta/lyne-elements 1.6.0 → 1.7.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 (572) hide show
  1. package/accordion/accordion.d.ts +0 -1
  2. package/action-group/action-group.d.ts +0 -1
  3. package/alert/alert/alert.d.ts +0 -1
  4. package/alert/alert-group/alert-group.d.ts +0 -1
  5. package/alert/alert.js +1 -1
  6. package/autocomplete/autocomplete-base-element.d.ts +0 -1
  7. package/autocomplete/autocomplete.d.ts +0 -1
  8. package/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts +0 -1
  9. package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts +0 -1
  10. package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.d.ts +0 -1
  11. package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts +0 -1
  12. package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.d.ts +0 -1
  13. package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.d.ts +0 -1
  14. package/autocomplete.js +1 -1
  15. package/breadcrumb/breadcrumb/breadcrumb.d.ts +0 -1
  16. package/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts +0 -1
  17. package/breadcrumb/breadcrumb-group.js +2 -2
  18. package/breadcrumb/breadcrumb.js +11 -11
  19. package/button/button/button.d.ts +0 -1
  20. package/button/button-link/button-link.d.ts +0 -1
  21. package/button/button-static/button-static.d.ts +0 -1
  22. package/button/common/button-common.d.ts +0 -1
  23. package/button/mini-button/mini-button-base-element.d.ts +0 -1
  24. package/button/mini-button/mini-button.d.ts +0 -1
  25. package/button/mini-button-group/index.d.ts +2 -0
  26. package/button/mini-button-group/index.d.ts.map +1 -0
  27. package/button/mini-button-group/mini-button-group.d.ts +28 -0
  28. package/button/mini-button-group/mini-button-group.d.ts.map +1 -0
  29. package/button/mini-button-group.d.ts +2 -0
  30. package/button/mini-button-group.d.ts.map +1 -0
  31. package/button/mini-button-group.js +47 -0
  32. package/button/secondary-button/secondary-button.d.ts +0 -1
  33. package/button/secondary-button-link/secondary-button-link.d.ts +0 -1
  34. package/button/secondary-button-static/secondary-button-static.d.ts +0 -1
  35. package/button/tertiary-button/tertiary-button.d.ts +0 -1
  36. package/button/tertiary-button-link/tertiary-button-link.d.ts +0 -1
  37. package/button/tertiary-button-static/tertiary-button-static.d.ts +0 -1
  38. package/button/transparent-button/transparent-button.d.ts +0 -1
  39. package/button/transparent-button-link/transparent-button-link.d.ts +0 -1
  40. package/button/transparent-button-static/transparent-button-static.d.ts +0 -1
  41. package/button.d.ts +1 -0
  42. package/button.d.ts.map +1 -1
  43. package/button.js +1 -0
  44. package/calendar/calendar.d.ts +0 -1
  45. package/calendar.js +1 -1
  46. package/card/card/card.d.ts +0 -1
  47. package/card/card-badge/card-badge.d.ts +0 -1
  48. package/card/card-button/card-button.d.ts +0 -1
  49. package/card/card-link/card-link.d.ts +0 -1
  50. package/card/card.js +1 -1
  51. package/card/common/card-action-common.d.ts +0 -1
  52. package/checkbox/checkbox/checkbox.d.ts +0 -1
  53. package/checkbox/checkbox-group/checkbox-group.d.ts +0 -1
  54. package/checkbox/checkbox-panel/checkbox-panel.d.ts +0 -1
  55. package/checkbox/common/checkbox-common.d.ts +0 -1
  56. package/chip/chip.d.ts +0 -1
  57. package/chip.js +1 -1
  58. package/clock/clock.d.ts +0 -1
  59. package/clock/clock.d.ts.map +1 -1
  60. package/container/container/container.d.ts +1 -1
  61. package/container/container/container.d.ts.map +1 -1
  62. package/container/container.js +21 -16
  63. package/container/sticky-bar/sticky-bar.d.ts +0 -1
  64. package/container/sticky-bar.js +5 -5
  65. package/core/a11y/focus-visible-within-controller.d.ts +0 -1
  66. package/core/base-elements/action-base-element.d.ts +0 -1
  67. package/core/base-elements/button-base-element.d.ts +0 -1
  68. package/core/base-elements/link-base-element.d.ts +0 -1
  69. package/core/base-elements/open-close-base-element.d.ts +0 -1
  70. package/core/config/config.d.ts +0 -1
  71. package/core/controllers/connected-abort-controller.d.ts +0 -1
  72. package/core/controllers/language-controller.d.ts +0 -1
  73. package/core/controllers/slot-state-controller.d.ts +0 -1
  74. package/core/datetime/native-date-adapter.d.ts +0 -1
  75. package/core/decorators/host-attributes.d.ts +0 -1
  76. package/core/decorators/slot-state.d.ts +0 -1
  77. package/core/dom/ssr.d.ts +0 -1
  78. package/core/eventing/form-element-handlers.d.ts +0 -1
  79. package/core/i18n/i18n.d.ts +0 -1
  80. package/core/i18n.js +1 -1
  81. package/core/images.d.ts.map +1 -1
  82. package/core/mixins/disabled-mixin.d.ts +0 -1
  83. package/core/mixins/form-associated-checkbox-mixin.d.ts +0 -1
  84. package/core/mixins/form-associated-mixin.d.ts +0 -1
  85. package/core/mixins/hydration-mixin.d.ts +0 -1
  86. package/core/mixins/named-slot-list-mixin.d.ts +7 -2
  87. package/core/mixins/named-slot-list-mixin.d.ts.map +1 -1
  88. package/core/mixins/negative-mixin.d.ts +0 -1
  89. package/core/mixins/panel-mixin.d.ts +0 -1
  90. package/core/mixins/required-mixin.d.ts +0 -1
  91. package/core/mixins/update-scheduler-mixin.d.ts +0 -1
  92. package/core/mixins.js +100 -88
  93. package/core/overlay/overlay.d.ts +0 -1
  94. package/core/styles/core.scss +21 -19
  95. package/core/styles/mixins/link.scss +9 -6
  96. package/core/styles/mixins/lists.scss +5 -5
  97. package/core/styles/mixins/pearl-chain-bullet.scss +14 -9
  98. package/core/styles/mixins/table.scss +19 -17
  99. package/core/testing/mocha-extensions.d.ts +0 -1
  100. package/core/testing/wait-for-image-ready.d.ts +0 -1
  101. package/core/testing/wait-for-render.d.ts +0 -1
  102. package/core.css +10 -8
  103. package/custom-elements.json +2893 -691
  104. package/datepicker/common/datepicker-button.d.ts +0 -1
  105. package/datepicker/datepicker/datepicker.d.ts +0 -1
  106. package/datepicker/datepicker-next-day/datepicker-next-day.d.ts +0 -1
  107. package/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts +0 -1
  108. package/datepicker/datepicker-toggle/datepicker-toggle.d.ts +0 -1
  109. package/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
  110. package/development/accordion/accordion.d.ts +0 -1
  111. package/development/action-group/action-group.d.ts +0 -1
  112. package/development/alert/alert/alert.d.ts +0 -1
  113. package/development/alert/alert-group/alert-group.d.ts +0 -1
  114. package/development/alert/alert.js +1 -1
  115. package/development/autocomplete/autocomplete-base-element.d.ts +0 -1
  116. package/development/autocomplete/autocomplete.d.ts +0 -1
  117. package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts +0 -1
  118. package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts +0 -1
  119. package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.d.ts +0 -1
  120. package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts +0 -1
  121. package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.d.ts +0 -1
  122. package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.d.ts +0 -1
  123. package/development/autocomplete.js +7 -5
  124. package/development/breadcrumb/breadcrumb/breadcrumb.d.ts +0 -1
  125. package/development/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts +0 -1
  126. package/development/breadcrumb/breadcrumb-group.js +4 -4
  127. package/development/breadcrumb/breadcrumb.js +8 -6
  128. package/development/button/button/button.d.ts +0 -1
  129. package/development/button/button-link/button-link.d.ts +0 -1
  130. package/development/button/button-static/button-static.d.ts +0 -1
  131. package/development/button/common/button-common.d.ts +0 -1
  132. package/development/button/mini-button/mini-button-base-element.d.ts +0 -1
  133. package/development/button/mini-button/mini-button.d.ts +0 -1
  134. package/development/button/mini-button-group/index.d.ts +2 -0
  135. package/development/button/mini-button-group/index.d.ts.map +1 -0
  136. package/development/button/mini-button-group/mini-button-group.d.ts +28 -0
  137. package/development/button/mini-button-group/mini-button-group.d.ts.map +1 -0
  138. package/development/button/mini-button-group.d.ts +2 -0
  139. package/development/button/mini-button-group.d.ts.map +1 -0
  140. package/development/button/mini-button-group.js +142 -0
  141. package/development/button/secondary-button/secondary-button.d.ts +0 -1
  142. package/development/button/secondary-button-link/secondary-button-link.d.ts +0 -1
  143. package/development/button/secondary-button-static/secondary-button-static.d.ts +0 -1
  144. package/development/button/tertiary-button/tertiary-button.d.ts +0 -1
  145. package/development/button/tertiary-button-link/tertiary-button-link.d.ts +0 -1
  146. package/development/button/tertiary-button-static/tertiary-button-static.d.ts +0 -1
  147. package/development/button/transparent-button/transparent-button.d.ts +0 -1
  148. package/development/button/transparent-button-link/transparent-button-link.d.ts +0 -1
  149. package/development/button/transparent-button-static/transparent-button-static.d.ts +0 -1
  150. package/development/button.d.ts +1 -0
  151. package/development/button.d.ts.map +1 -1
  152. package/development/button.js +2 -1
  153. package/development/calendar/calendar.d.ts +0 -1
  154. package/development/calendar.js +3 -3
  155. package/development/card/card/card.d.ts +0 -1
  156. package/development/card/card-badge/card-badge.d.ts +0 -1
  157. package/development/card/card-button/card-button.d.ts +0 -1
  158. package/development/card/card-link/card-link.d.ts +0 -1
  159. package/development/card/card.js +3 -3
  160. package/development/card/common/card-action-common.d.ts +0 -1
  161. package/development/checkbox/checkbox/checkbox.d.ts +0 -1
  162. package/development/checkbox/checkbox-group/checkbox-group.d.ts +0 -1
  163. package/development/checkbox/checkbox-panel/checkbox-panel.d.ts +0 -1
  164. package/development/checkbox/common/checkbox-common.d.ts +0 -1
  165. package/development/chip/chip.d.ts +0 -1
  166. package/development/chip.js +4 -2
  167. package/development/clock/clock.d.ts +0 -1
  168. package/development/clock/clock.d.ts.map +1 -1
  169. package/development/clock.js +1 -1
  170. package/development/container/container/container.d.ts +1 -1
  171. package/development/container/container/container.d.ts.map +1 -1
  172. package/development/container/container.js +39 -3
  173. package/development/container/sticky-bar/sticky-bar.d.ts +0 -1
  174. package/development/container/sticky-bar.js +1 -4
  175. package/development/core/a11y/focus-visible-within-controller.d.ts +0 -1
  176. package/development/core/base-elements/action-base-element.d.ts +0 -1
  177. package/development/core/base-elements/button-base-element.d.ts +0 -1
  178. package/development/core/base-elements/link-base-element.d.ts +0 -1
  179. package/development/core/base-elements/open-close-base-element.d.ts +0 -1
  180. package/development/core/config/config.d.ts +0 -1
  181. package/development/core/controllers/connected-abort-controller.d.ts +0 -1
  182. package/development/core/controllers/language-controller.d.ts +0 -1
  183. package/development/core/controllers/slot-state-controller.d.ts +0 -1
  184. package/development/core/datetime/native-date-adapter.d.ts +0 -1
  185. package/development/core/decorators/host-attributes.d.ts +0 -1
  186. package/development/core/decorators/slot-state.d.ts +0 -1
  187. package/development/core/dom/ssr.d.ts +0 -1
  188. package/development/core/eventing/form-element-handlers.d.ts +0 -1
  189. package/development/core/i18n/i18n.d.ts +0 -1
  190. package/development/core/i18n.js +2 -2
  191. package/development/core/images.d.ts.map +1 -1
  192. package/development/core/mixins/disabled-mixin.d.ts +0 -1
  193. package/development/core/mixins/form-associated-checkbox-mixin.d.ts +0 -1
  194. package/development/core/mixins/form-associated-mixin.d.ts +0 -1
  195. package/development/core/mixins/hydration-mixin.d.ts +0 -1
  196. package/development/core/mixins/named-slot-list-mixin.d.ts +7 -2
  197. package/development/core/mixins/named-slot-list-mixin.d.ts.map +1 -1
  198. package/development/core/mixins/negative-mixin.d.ts +0 -1
  199. package/development/core/mixins/panel-mixin.d.ts +0 -1
  200. package/development/core/mixins/required-mixin.d.ts +0 -1
  201. package/development/core/mixins/update-scheduler-mixin.d.ts +0 -1
  202. package/development/core/mixins.js +24 -12
  203. package/development/core/overlay/overlay.d.ts +0 -1
  204. package/development/core/testing/mocha-extensions.d.ts +0 -1
  205. package/development/core/testing/wait-for-image-ready.d.ts +0 -1
  206. package/development/core/testing/wait-for-render.d.ts +0 -1
  207. package/development/datepicker/common/datepicker-button.d.ts +0 -1
  208. package/development/datepicker/datepicker/datepicker.d.ts +0 -1
  209. package/development/datepicker/datepicker-next-day/datepicker-next-day.d.ts +0 -1
  210. package/development/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts +0 -1
  211. package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts +0 -1
  212. package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
  213. package/development/datepicker/datepicker-toggle.js +4 -2
  214. package/development/dialog/dialog/dialog.d.ts +0 -1
  215. package/development/dialog/dialog/dialog.d.ts.map +1 -1
  216. package/development/dialog/dialog-actions/dialog-actions.d.ts +0 -1
  217. package/development/dialog/dialog-content/dialog-content.d.ts +0 -1
  218. package/development/dialog/dialog-content.js +8 -6
  219. package/development/dialog/dialog-title/dialog-title.d.ts +0 -1
  220. package/development/dialog/dialog.js +7 -3
  221. package/development/divider/divider.d.ts +0 -1
  222. package/development/expansion-panel/expansion-panel/expansion-panel.d.ts +0 -1
  223. package/development/expansion-panel/expansion-panel-content/expansion-panel-content.d.ts +0 -1
  224. package/development/expansion-panel/expansion-panel-header/expansion-panel-header.d.ts +0 -1
  225. package/development/expansion-panel/expansion-panel-header.js +1 -1
  226. package/development/file-selector/file-selector.d.ts +0 -1
  227. package/development/flip-card/flip-card/flip-card.d.ts +22 -7
  228. package/development/flip-card/flip-card/flip-card.d.ts.map +1 -1
  229. package/development/flip-card/flip-card-details/flip-card-details.d.ts +0 -1
  230. package/development/flip-card/flip-card-summary/flip-card-summary.d.ts +0 -1
  231. package/development/flip-card/flip-card-summary.js +3 -1
  232. package/development/flip-card/flip-card.js +93 -24
  233. package/development/footer/footer.d.ts +0 -1
  234. package/development/footer.js +1 -1
  235. package/development/form-error/form-error.d.ts +0 -1
  236. package/development/form-error.js +4 -4
  237. package/development/form-field/form-field/form-field.d.ts +1 -2
  238. package/development/form-field/form-field/form-field.d.ts.map +1 -1
  239. package/development/form-field/form-field-clear/form-field-clear.d.ts +0 -1
  240. package/development/form-field/form-field.js +72 -29
  241. package/development/header/common/header-action-common.d.ts +0 -1
  242. package/development/header/common.js +2 -2
  243. package/development/header/header/header.d.ts +0 -1
  244. package/development/header/header-button/header-button.d.ts +0 -1
  245. package/development/header/header-link/header-link.d.ts +0 -1
  246. package/development/header/header.js +2 -2
  247. package/development/icon/icon-base.d.ts +0 -1
  248. package/development/icon/icon-name-mixin.d.ts +0 -1
  249. package/development/icon/icon.d.ts +0 -1
  250. package/development/image/image.d.ts +0 -1
  251. package/development/image.js +2 -2
  252. package/development/journey-header/journey-header.d.ts +0 -1
  253. package/development/lead-container/lead-container.d.ts +0 -1
  254. package/development/lead-container.js +1 -1
  255. package/development/link/block-link/block-link.d.ts +0 -1
  256. package/development/link/block-link-button/block-link-button.d.ts +0 -1
  257. package/development/link/block-link-static/block-link-static.d.ts +0 -1
  258. package/development/link/common/block-link-common.d.ts +0 -1
  259. package/development/link/common/inline-link-common.d.ts +0 -1
  260. package/development/link/common/link-common.d.ts +0 -1
  261. package/development/link/common.js +9 -7
  262. package/development/link/link/link.d.ts +0 -1
  263. package/development/link/link-button/link-button.d.ts +0 -1
  264. package/development/link/link-static/link-static.d.ts +0 -1
  265. package/development/link-list/common/link-list-base.d.ts +27 -0
  266. package/development/link-list/common/link-list-base.d.ts.map +1 -0
  267. package/development/link-list/common.d.ts +2 -0
  268. package/development/link-list/common.d.ts.map +1 -0
  269. package/development/link-list/common.js +113 -0
  270. package/development/link-list/link-list/link-list.d.ts +22 -0
  271. package/development/link-list/link-list/link-list.d.ts.map +1 -0
  272. package/development/link-list/link-list-anchor/index.d.ts +2 -0
  273. package/development/link-list/link-list-anchor/index.d.ts.map +1 -0
  274. package/development/link-list/link-list-anchor/link-list-anchor.d.ts +17 -0
  275. package/development/link-list/link-list-anchor/link-list-anchor.d.ts.map +1 -0
  276. package/development/link-list/link-list-anchor.d.ts +2 -0
  277. package/development/link-list/link-list-anchor.d.ts.map +1 -0
  278. package/development/link-list/link-list-anchor.js +91 -0
  279. package/development/link-list/link-list.d.ts +1 -38
  280. package/development/link-list/link-list.d.ts.map +1 -1
  281. package/development/link-list/link-list.js +194 -0
  282. package/development/link-list.d.ts +2 -0
  283. package/development/link-list.d.ts.map +1 -1
  284. package/development/link-list.js +4 -260
  285. package/development/loading-indicator/loading-indicator.d.ts +0 -1
  286. package/development/logo/logo.d.ts +0 -1
  287. package/development/logo.js +2 -2
  288. package/development/map-container/map-container.d.ts +0 -1
  289. package/development/map-container.js +13 -11
  290. package/development/menu/common/menu-action-common.d.ts +0 -1
  291. package/development/menu/menu/menu.d.ts +0 -1
  292. package/development/menu/menu-button/menu-button.d.ts +0 -1
  293. package/development/menu/menu-link/menu-link.d.ts +0 -1
  294. package/development/menu/menu.js +8 -6
  295. package/development/message/message.d.ts +0 -1
  296. package/development/navigation/common/navigation-action-common.d.ts +0 -1
  297. package/development/navigation/navigation/navigation.d.ts +0 -1
  298. package/development/navigation/navigation-button/navigation-button.d.ts +0 -1
  299. package/development/navigation/navigation-link/navigation-link.d.ts +0 -1
  300. package/development/navigation/navigation-list/navigation-list.d.ts +0 -1
  301. package/development/navigation/navigation-marker/navigation-marker.d.ts +0 -1
  302. package/development/navigation/navigation-section/navigation-section.d.ts +0 -1
  303. package/development/navigation/navigation-section.js +7 -5
  304. package/development/navigation/navigation.js +13 -11
  305. package/development/notification/notification.d.ts +0 -1
  306. package/development/option/optgroup/optgroup-base-element.d.ts +0 -1
  307. package/development/option/optgroup/optgroup.d.ts +0 -1
  308. package/development/option/option/option-base-element.d.ts +0 -1
  309. package/development/option/option/option.d.ts +0 -1
  310. package/development/overlay/overlay-base-element.d.ts +0 -1
  311. package/development/overlay/overlay.d.ts +0 -1
  312. package/development/overlay/overlay.d.ts.map +1 -1
  313. package/development/overlay.js +9 -5
  314. package/development/popover/popover/popover.d.ts +0 -1
  315. package/development/popover/popover/popover.d.ts.map +1 -1
  316. package/development/popover/popover-trigger/popover-trigger.d.ts +0 -1
  317. package/development/popover/popover-trigger.js +3 -3
  318. package/development/popover/popover.js +5 -3
  319. package/development/radio-button/common/radio-button-common.d.ts +0 -1
  320. package/development/radio-button/common.js +6 -6
  321. package/development/radio-button/radio-button/radio-button.d.ts +0 -1
  322. package/development/radio-button/radio-button-group/radio-button-group.d.ts +0 -1
  323. package/development/radio-button/radio-button-panel/radio-button-panel.d.ts +0 -1
  324. package/development/screen-reader-only/screen-reader-only.d.ts +0 -1
  325. package/development/select/select.d.ts +0 -1
  326. package/development/select.js +7 -5
  327. package/development/selection-expansion-panel/selection-expansion-panel.d.ts +0 -1
  328. package/development/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  329. package/development/selection-expansion-panel.js +6 -2
  330. package/development/signet/signet.d.ts +0 -1
  331. package/development/signet.js +1 -1
  332. package/development/skiplink-list/skiplink-list.d.ts +0 -1
  333. package/development/slider/slider.d.ts +0 -1
  334. package/development/slider.js +4 -4
  335. package/development/status/status.d.ts +0 -1
  336. package/development/stepper/step/step.d.ts +0 -1
  337. package/development/stepper/step-label/step-label.d.ts +0 -1
  338. package/development/stepper/stepper/stepper.d.ts +0 -1
  339. package/development/table/table-wrapper/table-wrapper.d.ts +0 -1
  340. package/development/tabs/tab/tab.d.ts +0 -1
  341. package/development/tabs/tab-group/tab-group.d.ts +0 -1
  342. package/development/tabs/tab-label/tab-label.d.ts +0 -1
  343. package/development/tabs/tab-label.js +10 -10
  344. package/development/tag/tag/tag.d.ts +0 -1
  345. package/development/tag/tag-group/tag-group.d.ts +0 -1
  346. package/development/tag/tag.js +3 -3
  347. package/development/teaser/teaser.d.ts +0 -1
  348. package/development/teaser-hero/teaser-hero.d.ts +27 -0
  349. package/development/teaser-hero/teaser-hero.d.ts.map +1 -0
  350. package/development/teaser-hero.d.ts +2 -0
  351. package/development/teaser-hero.d.ts.map +1 -0
  352. package/development/teaser-hero.js +207 -0
  353. package/development/teaser-product/common/teaser-product-common.d.ts +7 -0
  354. package/development/teaser-product/common/teaser-product-common.d.ts.map +1 -0
  355. package/development/teaser-product/common.d.ts +2 -0
  356. package/development/teaser-product/common.d.ts.map +1 -0
  357. package/development/teaser-product/common.js +219 -0
  358. package/development/teaser-product/teaser-product/teaser-product.d.ts +22 -0
  359. package/development/teaser-product/teaser-product/teaser-product.d.ts.map +1 -0
  360. package/development/teaser-product/teaser-product-static/teaser-product-static.d.ts +22 -0
  361. package/development/teaser-product/teaser-product-static/teaser-product-static.d.ts.map +1 -0
  362. package/development/teaser-product/teaser-product-static.d.ts +2 -0
  363. package/development/teaser-product/teaser-product-static.d.ts.map +1 -0
  364. package/development/teaser-product/teaser-product-static.js +25 -0
  365. package/development/teaser-product/teaser-product.d.ts +2 -0
  366. package/development/teaser-product/teaser-product.d.ts.map +1 -0
  367. package/development/teaser-product/teaser-product.js +80 -0
  368. package/development/teaser-product.d.ts +4 -0
  369. package/development/teaser-product.d.ts.map +1 -0
  370. package/development/teaser-product.js +4 -0
  371. package/development/time-input/time-input.d.ts +0 -1
  372. package/development/timetable-occupancy/timetable-occupancy.d.ts +0 -1
  373. package/development/timetable-occupancy-icon/timetable-occupancy-icon.d.ts +0 -1
  374. package/development/timetable-occupancy.js +1 -1
  375. package/development/title/title-base.d.ts +0 -1
  376. package/development/title/title.d.ts +0 -1
  377. package/development/toast/toast.d.ts +0 -1
  378. package/development/toggle/toggle/toggle.d.ts +0 -1
  379. package/development/toggle/toggle-option/toggle-option.d.ts +0 -1
  380. package/development/toggle/toggle.js +1 -1
  381. package/development/toggle-check/toggle-check.d.ts +0 -1
  382. package/development/train/train/train.d.ts +0 -1
  383. package/development/train/train-blocked-passage/train-blocked-passage.d.ts +0 -1
  384. package/development/train/train-blocked-passage.js +1 -1
  385. package/development/train/train-formation/train-formation.d.ts +0 -1
  386. package/development/train/train-formation.js +9 -7
  387. package/development/train/train-wagon/train-wagon.d.ts +0 -1
  388. package/development/train/train-wagon.js +1 -1
  389. package/development/train/train.js +1 -1
  390. package/development/visual-checkbox/visual-checkbox.d.ts +0 -1
  391. package/development/visual-checkbox.js +1 -1
  392. package/dialog/dialog/dialog.d.ts +0 -1
  393. package/dialog/dialog/dialog.d.ts.map +1 -1
  394. package/dialog/dialog-actions/dialog-actions.d.ts +0 -1
  395. package/dialog/dialog-content/dialog-content.d.ts +0 -1
  396. package/dialog/dialog-content.js +1 -1
  397. package/dialog/dialog-title/dialog-title.d.ts +0 -1
  398. package/dialog/dialog.js +3 -3
  399. package/divider/divider.d.ts +0 -1
  400. package/expansion-panel/expansion-panel/expansion-panel.d.ts +0 -1
  401. package/expansion-panel/expansion-panel-content/expansion-panel-content.d.ts +0 -1
  402. package/expansion-panel/expansion-panel-header/expansion-panel-header.d.ts +0 -1
  403. package/expansion-panel/expansion-panel-header.js +1 -1
  404. package/file-selector/file-selector.d.ts +0 -1
  405. package/flip-card/flip-card/flip-card.d.ts +22 -7
  406. package/flip-card/flip-card/flip-card.d.ts.map +1 -1
  407. package/flip-card/flip-card-details/flip-card-details.d.ts +0 -1
  408. package/flip-card/flip-card-summary/flip-card-summary.d.ts +0 -1
  409. package/flip-card/flip-card-summary.js +8 -8
  410. package/flip-card/flip-card.js +63 -32
  411. package/footer/footer.d.ts +0 -1
  412. package/footer.js +1 -1
  413. package/form-error/form-error.d.ts +0 -1
  414. package/form-error.js +1 -1
  415. package/form-field/form-field/form-field.d.ts +1 -2
  416. package/form-field/form-field/form-field.d.ts.map +1 -1
  417. package/form-field/form-field-clear/form-field-clear.d.ts +0 -1
  418. package/form-field/form-field.js +22 -22
  419. package/header/common/header-action-common.d.ts +0 -1
  420. package/header/common.js +1 -1
  421. package/header/header/header.d.ts +0 -1
  422. package/header/header-button/header-button.d.ts +0 -1
  423. package/header/header-link/header-link.d.ts +0 -1
  424. package/header/header.js +1 -1
  425. package/icon/icon-base.d.ts +0 -1
  426. package/icon/icon-name-mixin.d.ts +0 -1
  427. package/icon/icon.d.ts +0 -1
  428. package/image/image.d.ts +0 -1
  429. package/image.js +25 -25
  430. package/index.d.ts +11 -1
  431. package/index.js +11 -1
  432. package/journey-header/journey-header.d.ts +0 -1
  433. package/lead-container/lead-container.d.ts +0 -1
  434. package/lead-container.js +1 -1
  435. package/link/block-link/block-link.d.ts +0 -1
  436. package/link/block-link-button/block-link-button.d.ts +0 -1
  437. package/link/block-link-static/block-link-static.d.ts +0 -1
  438. package/link/common/block-link-common.d.ts +0 -1
  439. package/link/common/inline-link-common.d.ts +0 -1
  440. package/link/common/link-common.d.ts +0 -1
  441. package/link/common.js +6 -6
  442. package/link/link/link.d.ts +0 -1
  443. package/link/link-button/link-button.d.ts +0 -1
  444. package/link/link-static/link-static.d.ts +0 -1
  445. package/link-list/common/link-list-base.d.ts +27 -0
  446. package/link-list/common/link-list-base.d.ts.map +1 -0
  447. package/link-list/common.d.ts +2 -0
  448. package/link-list/common.d.ts.map +1 -0
  449. package/link-list/common.js +59 -0
  450. package/link-list/link-list/link-list.d.ts +22 -0
  451. package/link-list/link-list/link-list.d.ts.map +1 -0
  452. package/link-list/link-list-anchor/index.d.ts +2 -0
  453. package/link-list/link-list-anchor/index.d.ts.map +1 -0
  454. package/link-list/link-list-anchor/link-list-anchor.d.ts +17 -0
  455. package/link-list/link-list-anchor/link-list-anchor.d.ts.map +1 -0
  456. package/link-list/link-list-anchor.d.ts +2 -0
  457. package/link-list/link-list-anchor.d.ts.map +1 -0
  458. package/link-list/link-list-anchor.js +18 -0
  459. package/link-list/link-list.d.ts +1 -38
  460. package/link-list/link-list.d.ts.map +1 -1
  461. package/link-list/link-list.js +27 -0
  462. package/link-list.d.ts +2 -0
  463. package/link-list.d.ts.map +1 -1
  464. package/link-list.js +3 -66
  465. package/loading-indicator/loading-indicator.d.ts +0 -1
  466. package/logo/logo.d.ts +0 -1
  467. package/logo.js +1 -1
  468. package/map-container/map-container.d.ts +0 -1
  469. package/map-container.js +1 -1
  470. package/menu/common/menu-action-common.d.ts +0 -1
  471. package/menu/menu/menu.d.ts +0 -1
  472. package/menu/menu-button/menu-button.d.ts +0 -1
  473. package/menu/menu-link/menu-link.d.ts +0 -1
  474. package/menu/menu.js +1 -1
  475. package/message/message.d.ts +0 -1
  476. package/navigation/common/navigation-action-common.d.ts +0 -1
  477. package/navigation/navigation/navigation.d.ts +0 -1
  478. package/navigation/navigation-button/navigation-button.d.ts +0 -1
  479. package/navigation/navigation-link/navigation-link.d.ts +0 -1
  480. package/navigation/navigation-list/navigation-list.d.ts +0 -1
  481. package/navigation/navigation-marker/navigation-marker.d.ts +0 -1
  482. package/navigation/navigation-section/navigation-section.d.ts +0 -1
  483. package/navigation/navigation-section.js +1 -1
  484. package/navigation/navigation.js +1 -1
  485. package/notification/notification.d.ts +0 -1
  486. package/option/optgroup/optgroup-base-element.d.ts +0 -1
  487. package/option/optgroup/optgroup.d.ts +0 -1
  488. package/option/option/option-base-element.d.ts +0 -1
  489. package/option/option/option.d.ts +0 -1
  490. package/overlay/overlay-base-element.d.ts +0 -1
  491. package/overlay/overlay.d.ts +0 -1
  492. package/overlay/overlay.d.ts.map +1 -1
  493. package/overlay.js +2 -2
  494. package/package.json +46 -1
  495. package/popover/popover/popover.d.ts +0 -1
  496. package/popover/popover/popover.d.ts.map +1 -1
  497. package/popover/popover-trigger/popover-trigger.d.ts +0 -1
  498. package/popover/popover-trigger.js +1 -1
  499. package/popover/popover.js +1 -1
  500. package/radio-button/common/radio-button-common.d.ts +0 -1
  501. package/radio-button/common.js +1 -1
  502. package/radio-button/radio-button/radio-button.d.ts +0 -1
  503. package/radio-button/radio-button-group/radio-button-group.d.ts +0 -1
  504. package/radio-button/radio-button-panel/radio-button-panel.d.ts +0 -1
  505. package/screen-reader-only/screen-reader-only.d.ts +0 -1
  506. package/select/select.d.ts +0 -1
  507. package/select.js +1 -1
  508. package/selection-expansion-panel/selection-expansion-panel.d.ts +0 -1
  509. package/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
  510. package/signet/signet.d.ts +0 -1
  511. package/signet.js +1 -1
  512. package/skiplink-list/skiplink-list.d.ts +0 -1
  513. package/slider/slider.d.ts +0 -1
  514. package/slider.js +1 -1
  515. package/standard-theme.css +19 -13
  516. package/status/status.d.ts +0 -1
  517. package/stepper/step/step.d.ts +0 -1
  518. package/stepper/step-label/step-label.d.ts +0 -1
  519. package/stepper/stepper/stepper.d.ts +0 -1
  520. package/table/table-wrapper/table-wrapper.d.ts +0 -1
  521. package/tabs/tab/tab.d.ts +0 -1
  522. package/tabs/tab-group/tab-group.d.ts +0 -1
  523. package/tabs/tab-label/tab-label.d.ts +0 -1
  524. package/tabs/tab-label.js +1 -1
  525. package/tag/tag/tag.d.ts +0 -1
  526. package/tag/tag-group/tag-group.d.ts +0 -1
  527. package/tag/tag.js +1 -1
  528. package/teaser/teaser.d.ts +0 -1
  529. package/teaser-hero/teaser-hero.d.ts +27 -0
  530. package/teaser-hero/teaser-hero.d.ts.map +1 -0
  531. package/teaser-hero.d.ts +2 -0
  532. package/teaser-hero.d.ts.map +1 -0
  533. package/teaser-hero.js +58 -0
  534. package/teaser-product/common/teaser-product-common.d.ts +7 -0
  535. package/teaser-product/common/teaser-product-common.d.ts.map +1 -0
  536. package/teaser-product/common.d.ts +2 -0
  537. package/teaser-product/common.d.ts.map +1 -0
  538. package/teaser-product/common.js +38 -0
  539. package/teaser-product/teaser-product/teaser-product.d.ts +22 -0
  540. package/teaser-product/teaser-product/teaser-product.d.ts.map +1 -0
  541. package/teaser-product/teaser-product-static/teaser-product-static.d.ts +22 -0
  542. package/teaser-product/teaser-product-static/teaser-product-static.d.ts.map +1 -0
  543. package/teaser-product/teaser-product-static.d.ts +2 -0
  544. package/teaser-product/teaser-product-static.d.ts.map +1 -0
  545. package/teaser-product/teaser-product-static.js +19 -0
  546. package/teaser-product/teaser-product.d.ts +2 -0
  547. package/teaser-product/teaser-product.d.ts.map +1 -0
  548. package/teaser-product/teaser-product.js +21 -0
  549. package/teaser-product.d.ts +4 -0
  550. package/teaser-product.d.ts.map +1 -0
  551. package/teaser-product.js +3 -0
  552. package/time-input/time-input.d.ts +0 -1
  553. package/timetable-occupancy/timetable-occupancy.d.ts +0 -1
  554. package/timetable-occupancy-icon/timetable-occupancy-icon.d.ts +0 -1
  555. package/timetable-occupancy.js +1 -1
  556. package/title/title-base.d.ts +0 -1
  557. package/title/title.d.ts +0 -1
  558. package/toast/toast.d.ts +0 -1
  559. package/toggle/toggle/toggle.d.ts +0 -1
  560. package/toggle/toggle-option/toggle-option.d.ts +0 -1
  561. package/toggle/toggle.js +1 -1
  562. package/toggle-check/toggle-check.d.ts +0 -1
  563. package/train/train/train.d.ts +0 -1
  564. package/train/train-blocked-passage/train-blocked-passage.d.ts +0 -1
  565. package/train/train-blocked-passage.js +1 -1
  566. package/train/train-formation/train-formation.d.ts +0 -1
  567. package/train/train-formation.js +1 -1
  568. package/train/train-wagon/train-wagon.d.ts +0 -1
  569. package/train/train-wagon.js +1 -1
  570. package/train/train.js +1 -1
  571. package/visual-checkbox/visual-checkbox.d.ts +0 -1
  572. package/visual-checkbox.js +1 -1
@@ -2,7 +2,6 @@ import { PropertyValues, TemplateResult } from 'lit';
2
2
  import { SbbButtonBaseElement } from '../../core/base-elements.js';
3
3
  import { DateAdapter } from '../../core/datetime.js';
4
4
  import { SbbDatepickerElement, SbbInputUpdateEvent } from '../datepicker.js';
5
-
6
5
  declare const SbbDatepickerButton_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbNegativeMixinType> & typeof SbbButtonBaseElement;
7
6
  export declare abstract class SbbDatepickerButton<T = Date> extends SbbDatepickerButton_base {
8
7
  /** Datepicker reference. */
@@ -3,7 +3,6 @@ import { DateAdapter } from '../../core/datetime.js';
3
3
  import { SbbDateLike } from '../../core/interfaces.js';
4
4
  import { SbbDatepickerButton } from '../common.js';
5
5
  import { SbbDatepickerToggleElement } from '../datepicker-toggle.js';
6
-
7
6
  export interface SbbInputUpdateEvent {
8
7
  disabled?: boolean;
9
8
  readonly?: boolean;
@@ -1,7 +1,6 @@
1
1
  import { CSSResultGroup } from 'lit';
2
2
  import { SbbDatepickerButton } from '../common.js';
3
3
  import { findNextAvailableDate, SbbInputUpdateEvent } from '../datepicker.js';
4
-
5
4
  /**
6
5
  * Combined with a `sbb-datepicker`, it can be used to move the date ahead.
7
6
  */
@@ -1,7 +1,6 @@
1
1
  import { CSSResultGroup } from 'lit';
2
2
  import { SbbDatepickerButton } from '../common.js';
3
3
  import { findPreviousAvailableDate, SbbInputUpdateEvent } from '../datepicker.js';
4
-
5
4
  /**
6
5
  * Combined with a `sbb-datepicker`, it can be used to move the date back.
7
6
  */
@@ -1,6 +1,5 @@
1
1
  import { CSSResultGroup, PropertyValues, TemplateResult, LitElement } from 'lit';
2
2
  import { SbbDatepickerElement } from '../datepicker.js';
3
-
4
3
  declare const SbbDatepickerToggleElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbNegativeMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
5
4
  /**
6
5
  * Combined with a `sbb-datepicker`, it can be used to select a date from a `sbb-calendar`.
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker-toggle.d.ts","sourceRoot":"","sources":["../../../../src/elements/datepicker/datepicker-toggle/datepicker-toggle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAkB,UAAU,EAAW,MAAM,KAAK,CAAC;AAW1D,OAAO,KAAK,EAAE,oBAAoB,EAAuB,MAAM,kBAAkB,CAAC;AAKlF,OAAO,mBAAmB,CAAC;AAC3B,OAAO,kBAAkB,CAAC;;AAE1B;;GAEG;AACH,qBAIa,0BAA0B,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,+BAEzD;IACC,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,4BAA4B;IACmB,UAAU,CAAC,EAAE,MAAM,GAAG,oBAAoB,CAAC;IAEjF,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,IAAI,CAA4C;IAExD,OAAO,CAAC,IAAI,CAA4C;IAExD,OAAO,CAAC,eAAe,CAAS;IAEzC,OAAO,CAAC,kBAAkB,CAA6C;IAEvE,OAAO,CAAC,gBAAgB,CAAyB;IAEjD,OAAO,CAAC,eAAe,CAA4B;IAEnD,OAAO,CAAC,eAAe,CAAqB;IAE5C,OAAO,CAAC,qBAAqB,CAAmB;IAEhD,OAAO,CAAC,SAAS,CAAmC;;IASpD;;OAEG;IACI,IAAI,IAAI,IAAI;IAOH,iBAAiB,IAAI,IAAI;IAYzB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAQzD,oBAAoB,IAAI,IAAI;IAK5C,OAAO,CAAC,KAAK;IAyCb,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,eAAe;cAgBJ,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAMzE,OAAO,CAAC,eAAe;cAIJ,MAAM,IAAI,cAAc;CAyC5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,0BAA0B,CAAC;KACrD;CACF"}
1
+ {"version":3,"file":"datepicker-toggle.d.ts","sourceRoot":"","sources":["../../../../src/elements/datepicker/datepicker-toggle/datepicker-toggle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAkB,UAAU,EAAW,MAAM,KAAK,CAAC;AAW1D,OAAO,KAAK,EAAE,oBAAoB,EAAuB,MAAM,kBAAkB,CAAC;AAKlF,OAAO,mBAAmB,CAAC;AAC3B,OAAO,kBAAkB,CAAC;;AAE1B;;GAEG;AACH,qBAIa,0BAA0B,CAAC,CAAC,GAAG,IAAI,CAAE,SAAQ,+BAEzD;IACC,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,4BAA4B;IACmB,UAAU,CAAC,EAAE,MAAM,GAAG,oBAAoB,CAAC;IAEjF,OAAO,CAAC,SAAS,CAAS;IAE1B,OAAO,CAAC,IAAI,CAA4C;IAExD,OAAO,CAAC,IAAI,CAA4C;IAExD,OAAO,CAAC,eAAe,CAAS;IAEzC,OAAO,CAAC,kBAAkB,CAA6C;IAEvE,OAAO,CAAC,gBAAgB,CAAyB;IAEjD,OAAO,CAAC,eAAe,CAA4B;IAEnD,OAAO,CAAC,eAAe,CAAqB;IAE5C,OAAO,CAAC,qBAAqB,CAAmB;IAEhD,OAAO,CAAC,SAAS,CAAmC;;IASpD;;OAEG;IACI,IAAI,IAAI,IAAI;IAOH,iBAAiB,IAAI,IAAI;IAYzB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAQzD,oBAAoB,IAAI,IAAI;IAK5C,OAAO,CAAC,KAAK;IAyCb,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,eAAe;cAgBJ,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAMzE,OAAO,CAAC,eAAe;cAIJ,MAAM,IAAI,cAAc;CA0C5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,0BAA0B,CAAC;KACrD;CACF"}
@@ -1,6 +1,5 @@
1
1
  import { CSSResultGroup, PropertyValues, TemplateResult, LitElement } from 'lit';
2
2
  import { SbbTitleLevel } from '../title.js';
3
-
4
3
  declare const SbbAccordionElement_base: import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
5
4
  /**
6
5
  * It can be used as a container for one or more `sbb-expansion-panel` component.
@@ -2,7 +2,6 @@ import { CSSResultGroup, PropertyValues, TemplateResult, LitElement } from 'lit'
2
2
  import { SbbButtonSize } from '../button.js';
3
3
  import { SbbHorizontalFrom, SbbOrientation } from '../core/interfaces.js';
4
4
  import { SbbLinkSize } from '../link.js';
5
-
6
5
  /**
7
6
  * It can be used as a container for one or more action element, like `sbb-button` or `sbb-block-link`.
8
7
  *
@@ -1,7 +1,6 @@
1
1
  import { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
2
2
  import { LinkTargetType, SbbOpenCloseBaseElement } from '../../core/base-elements.js';
3
3
  import { SbbTitleLevel } from '../../title.js';
4
-
5
4
  declare const SbbAlertElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & typeof SbbOpenCloseBaseElement;
6
5
  /**
7
6
  * It displays messages which require user's attention.
@@ -1,6 +1,5 @@
1
1
  import { CSSResultGroup, TemplateResult, LitElement } from 'lit';
2
2
  import { SbbTitleLevel } from '../../title.js';
3
-
4
3
  declare const SbbAlertGroupElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
5
4
  /**
6
5
  * It can be used as a container for one or more `sbb-alert` component.
@@ -36,6 +36,7 @@ const style = css`/**
36
36
  }
37
37
 
38
38
  :host {
39
+ display: block;
39
40
  --sbb-focus-outline-color: var(--sbb-focus-outline-color-dark);
40
41
  --sbb-alert-background-color: var(--sbb-color-midnight);
41
42
  --sbb-alert-border-radius: var(--sbb-border-radius-4x);
@@ -50,7 +51,6 @@ const style = css`/**
50
51
  var(--sbb-animation-duration-6x)
51
52
  );
52
53
  --sbb-alert-timing-function: ease-in;
53
- display: block;
54
54
  }
55
55
  @media (min-width: calc(52.5rem)) {
56
56
  :host {
@@ -2,7 +2,6 @@ import { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
2
2
  import { SbbOpenCloseBaseElement } from '../core/base-elements.js';
3
3
  import { SbbConnectedAbortController } from '../core/controllers.js';
4
4
  import { SbbOptionBaseElement } from '../option.js';
5
-
6
5
  declare const SbbAutocompleteBaseElement_base: import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbNegativeMixinType> & import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbHydrationMixinType> & typeof SbbOpenCloseBaseElement;
7
6
  export declare abstract class SbbAutocompleteBaseElement extends SbbAutocompleteBaseElement_base {
8
7
  static styles: CSSResultGroup;
@@ -1,6 +1,5 @@
1
1
  import { SbbOptionElement } from '../option.js';
2
2
  import { SbbAutocompleteBaseElement } from './autocomplete-base-element.js';
3
-
4
3
  /**
5
4
  * Combined with a native input, it displays a panel with a list of available options.
6
5
  *
@@ -1,6 +1,5 @@
1
1
  import { SbbAutocompleteBaseElement } from '../../autocomplete.js';
2
2
  import { SbbAutocompleteGridOptionElement } from '../autocomplete-grid-option.js';
3
-
4
3
  /**
5
4
  * Combined with a native input, it displays a panel with a list of available options with connected buttons.
6
5
  *
@@ -1,7 +1,6 @@
1
1
  import { CSSResultGroup, PropertyValues, TemplateResult } from 'lit';
2
2
  import { SbbActionBaseElement } from '../../core/base-elements.js';
3
3
  import { SbbAutocompleteGridOptionElement } from '../autocomplete-grid-option.js';
4
-
5
4
  declare const SbbAutocompleteGridButtonElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbNegativeMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & typeof SbbActionBaseElement;
6
5
  /**
7
6
  * It displays an icon-only button that can be used in `sbb-autocomplete-grid`.
@@ -1,5 +1,4 @@
1
1
  import { CSSResultGroup, LitElement, TemplateResult } from 'lit';
2
-
3
2
  /**
4
3
  * A wrapper component for autocomplete-grid action button.
5
4
  *
@@ -1,7 +1,6 @@
1
1
  import { SbbOptgroupBaseElement } from '../../option/optgroup.js';
2
2
  import { SbbAutocompleteGridOptionElement } from '../autocomplete-grid-option.js';
3
3
  import { SbbAutocompleteGridElement } from '../autocomplete-grid.js';
4
-
5
4
  /**
6
5
  * It can be used as a container for one or more `sbb-autocomplete-grid-option`.
7
6
  *
@@ -1,7 +1,6 @@
1
1
  import { CSSResultGroup, PropertyValues } from 'lit';
2
2
  import { EventEmitter } from '../../core/eventing.js';
3
3
  import { SbbOptionBaseElement } from '../../option.js';
4
-
5
4
  export declare const autocompleteGridOptionId: string;
6
5
  /**
7
6
  * It displays an option item which can be used in `sbb-autocomplete-grid`.
@@ -1,5 +1,4 @@
1
1
  import { CSSResultGroup, LitElement, TemplateResult } from 'lit';
2
-
3
2
  /**
4
3
  * The component is used as a wrapper for options and action buttons.
5
4
  *
@@ -231,9 +231,6 @@ const style = css`/**
231
231
  }
232
232
 
233
233
  .sbb-autocomplete__options {
234
- --sbb-scrollbar-width: var(--sbb-spacing-fixed-3x);
235
- /* Scrollbar itself */
236
- /* Hide button (top and bottom of the scrollbar) */
237
234
  background-color: var(--sbb-options-panel-background-color);
238
235
  padding-block: var(--sbb-spacing-fixed-3x);
239
236
  padding-inline: 0;
@@ -245,7 +242,9 @@ const style = css`/**
245
242
  animation-name: var(--sbb-options-panel-animation-name);
246
243
  animation-duration: var(--sbb-options-panel-animation-duration);
247
244
  animation-timing-function: var(--sbb-options-panel-animation-timing-function);
248
- pointer-events: var(--sbb-options-pointer-events);
245
+ --sbb-scrollbar-width: var(--sbb-spacing-fixed-3x);
246
+ /* Scrollbar itself */
247
+ /* Hide button (top and bottom of the scrollbar) */
249
248
  }
250
249
  .sbb-autocomplete__options::-webkit-scrollbar {
251
250
  width: var(--sbb-scrollbar-width);
@@ -274,6 +273,9 @@ const style = css`/**
274
273
  scrollbar-color: var(--sbb-scrollbar-color, currentcolor) var(--sbb-scrollbar-track-color, transparent);
275
274
  }
276
275
  }
276
+ .sbb-autocomplete__options {
277
+ pointer-events: var(--sbb-options-pointer-events);
278
+ }
277
279
  @media (forced-colors: active) {
278
280
  .sbb-autocomplete__options {
279
281
  border: var(--sbb-border-width-1x) solid CanvasText;
@@ -747,4 +749,4 @@ export {
747
749
  SbbAutocompleteBaseElement,
748
750
  SbbAutocompleteElement
749
751
  };
750
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS1iYXNlLWVsZW1lbnQudHMiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBpc1NlcnZlcixcbiAgbm90aGluZyxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgcmVmIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvcmVmLmpzJztcblxuaW1wb3J0IHsgU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQgfSBmcm9tICcuLi9jb3JlL2Jhc2UtZWxlbWVudHMuanMnO1xuaW1wb3J0IHsgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyIH0gZnJvbSAnLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBmaW5kUmVmZXJlbmNlZEVsZW1lbnQsIGlzU2FmYXJpIH0gZnJvbSAnLi4vY29yZS9kb20uanMnO1xuaW1wb3J0IHsgU2JiTmVnYXRpdmVNaXhpbiwgU2JiSHlkcmF0aW9uTWl4aW4gfSBmcm9tICcuLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQge1xuICBpc0V2ZW50T25FbGVtZW50LFxuICBvdmVybGF5R2FwRml4Q29ybmVycyxcbiAgcmVtb3ZlQXJpYUNvbWJvQm94QXR0cmlidXRlcyxcbiAgc2V0T3ZlcmxheVBvc2l0aW9uLFxufSBmcm9tICcuLi9jb3JlL292ZXJsYXkuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcHRpb25CYXNlRWxlbWVudCB9IGZyb20gJy4uL29wdGlvbi5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2F1dG9jb21wbGV0ZS1iYXNlLWVsZW1lbnQuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBPbiBTYWZhcmksIHRoZSBhcmlhIHJvbGUgJ2xpc3Rib3gnIG11c3QgYmUgb24gdGhlIGhvc3QgZWxlbWVudCwgb3IgZWxzZSBWb2ljZU92ZXIgd29uJ3Qgd29yayBhdCBhbGwuXG4gKiBPbiB0aGUgb3RoZXIgaGFuZCwgSkFXUyBhbmQgTlZEQSBuZWVkIHRoZSByb2xlIHRvIGJlIFwiY2xvc2VyXCIgdG8gdGhlIG9wdGlvbnMsIG9yIGVsc2Ugb3B0Z3JvdXBzIHdvbid0IHdvcmsuXG4gKi9cbmNvbnN0IGFyaWFSb2xlT25Ib3N0ID0gaXNTYWZhcmk7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTYmJBdXRvY29tcGxldGVCYXNlRWxlbWVudCBleHRlbmRzIFNiYk5lZ2F0aXZlTWl4aW4oXG4gIFNiYkh5ZHJhdGlvbk1peGluKFNiYk9wZW5DbG9zZUJhc2VFbGVtZW50KSxcbikge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKipcbiAgICogVGhlIGVsZW1lbnQgd2hlcmUgdGhlIGF1dG9jb21wbGV0ZSB3aWxsIGF0dGFjaDsgYWNjZXB0cyBib3RoIGFuIGVsZW1lbnQncyBpZCBvciBhbiBIVE1MRWxlbWVudC5cbiAgICogSWYgbm90IHNldCwgaXQgd2lsbCBzZWFyY2ggZm9yIHRoZSBmaXJzdCAnc2JiLWZvcm0tZmllbGQnIGFuY2VzdG9yLlxuICAgKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIG9yaWdpbj86IHN0cmluZyB8IEhUTUxFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgaW5wdXQgZWxlbWVudCB0aGF0IHdpbGwgdHJpZ2dlciB0aGUgYXV0b2NvbXBsZXRlIG9wZW5pbmc7IGFjY2VwdHMgYm90aCBhbiBlbGVtZW50J3MgaWQgb3IgYW4gSFRNTEVsZW1lbnQuXG4gICAqIEJ5IGRlZmF1bHQsIHRoZSBhdXRvY29tcGxldGUgd2lsbCBvcGVuIG9uIGZvY3VzLCBjbGljaywgaW5wdXQgb3IgYEFycm93RG93bmAga2V5cHJlc3Mgb2YgdGhlICd0cmlnZ2VyJyBlbGVtZW50LlxuICAgKiBJZiBub3Qgc2V0LCB3aWxsIHNlYXJjaCBmb3IgdGhlIGZpcnN0ICdpbnB1dCcgY2hpbGQgb2YgYSAnc2JiLWZvcm0tZmllbGQnIGFuY2VzdG9yLlxuICAgKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIHRyaWdnZXI/OiBzdHJpbmcgfCBIVE1MSW5wdXRFbGVtZW50O1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBpY29uIHNwYWNlIGlzIHByZXNlcnZlZCB3aGVuIG5vIGljb24gaXMgc2V0LiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdwcmVzZXJ2ZS1pY29uLXNwYWNlJywgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgcHJlc2VydmVJY29uU3BhY2U/OiBib29sZWFuO1xuXG4gIC8qKiBSZXR1cm5zIHRoZSBlbGVtZW50IHdoZXJlIGF1dG9jb21wbGV0ZSBvdmVybGF5IGlzIGF0dGFjaGVkIHRvLiAqL1xuICBwdWJsaWMgZ2V0IG9yaWdpbkVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIGlmICghdGhpcy5fb3JpZ2luRWxlbWVudCkge1xuICAgICAgdGhpcy5fb3JpZ2luRWxlbWVudCA9IHRoaXMuX2ZpbmRPcmlnaW5FbGVtZW50KCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9vcmlnaW5FbGVtZW50O1xuICB9XG4gIHByaXZhdGUgX29yaWdpbkVsZW1lbnQ/OiBIVE1MRWxlbWVudDtcblxuICAvKiogUmV0dXJucyB0aGUgdHJpZ2dlciBlbGVtZW50LiAqL1xuICBwdWJsaWMgZ2V0IHRyaWdnZXJFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl90cmlnZ2VyRWxlbWVudDtcbiAgfVxuICBwcml2YXRlIF90cmlnZ2VyRWxlbWVudDogSFRNTElucHV0RWxlbWVudCB8IHVuZGVmaW5lZDtcblxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgb3ZlcmxheUlkOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBwYW5lbFJvbGU6IHN0cmluZztcbiAgcHJvdGVjdGVkIGFib3J0ID0gbmV3IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfb3ZlcmxheSE6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF9vcHRpb25Db250YWluZXIhOiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBfdHJpZ2dlckV2ZW50c0NvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX29wZW5QYW5lbEV2ZW50c0NvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX2RpZExvYWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaXNQb2ludGVyRG93bkV2ZW50T25NZW51OiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldCBvcHRpb25zKCk6IFNiYk9wdGlvbkJhc2VFbGVtZW50W107XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzeW5jTmVnYXRpdmUoKTogdm9pZDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHNldFRyaWdnZXJBdHRyaWJ1dGVzKGVsZW1lbnQ6IEhUTUxJbnB1dEVsZW1lbnQpOiB2b2lkO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgb3BlbmVkUGFuZWxLZXlib2FyZEludGVyYWN0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHNlbGVjdEJ5S2V5Ym9hcmQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc2V0TmV4dEFjdGl2ZU9wdGlvbihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQ7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCByZXNldEFjdGl2ZUVsZW1lbnQoKTogdm9pZDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IG9uT3B0aW9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkO1xuXG4gIC8qKiBPcGVucyB0aGUgYXV0b2NvbXBsZXRlLiAqL1xuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdGF0ZSAhPT0gJ2Nsb3NlZCcgfHwgIXRoaXMuX292ZXJsYXkgfHwgdGhpcy5vcHRpb25zLmxlbmd0aCA9PT0gMCB8fCB0aGlzLl9yZWFkb25seSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoIXRoaXMud2lsbE9wZW4uZW1pdCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zdGF0ZSA9ICdvcGVuaW5nJztcbiAgICB0aGlzLl9zZXRPdmVybGF5UG9zaXRpb24oKTtcbiAgfVxuXG4gIC8qKiBDbG9zZXMgdGhlIGF1dG9jb21wbGV0ZS4gKi9cbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0YXRlICE9PSAnb3BlbmVkJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoIXRoaXMud2lsbENsb3NlLmVtaXQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc3RhdGUgPSAnY2xvc2luZyc7XG4gICAgdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlci5hYm9ydCgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgaWYgKGFyaWFSb2xlT25Ib3N0KSB7XG4gICAgICB0aGlzLmlkIHx8PSB0aGlzLm92ZXJsYXlJZDtcbiAgICB9XG4gICAgY29uc3Qgc2lnbmFsID0gdGhpcy5hYm9ydC5zaWduYWw7XG4gICAgY29uc3QgZm9ybUZpZWxkID0gdGhpcy5jbG9zZXN0KCdzYmItZm9ybS1maWVsZCcpID8/IHRoaXMuY2xvc2VzdCgnW2RhdGEtZm9ybS1maWVsZF0nKTtcblxuICAgIGlmIChmb3JtRmllbGQpIHtcbiAgICAgIHRoaXMubmVnYXRpdmUgPSBmb3JtRmllbGQuaGFzQXR0cmlidXRlKCduZWdhdGl2ZScpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9kaWRMb2FkKSB7XG4gICAgICB0aGlzLl9jb21wb25lbnRTZXR1cCgpO1xuICAgIH1cbiAgICB0aGlzLnN5bmNOZWdhdGl2ZSgpO1xuXG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIChlOiBNb3VzZUV2ZW50KSA9PiB0aGlzLm9uT3B0aW9uQ2xpY2soZSksIHsgc2lnbmFsIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdvcmlnaW4nKSkge1xuICAgICAgdGhpcy5fcmVzZXRPcmlnaW5DbGlja0xpc3RlbmVyKHRoaXMub3JpZ2luLCBjaGFuZ2VkUHJvcGVydGllcy5nZXQoJ29yaWdpbicpKTtcbiAgICB9XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygndHJpZ2dlcicpKSB7XG4gICAgICB0aGlzLl9yZXNldFRyaWdnZXJDbGlja0xpc3RlbmVyKHRoaXMudHJpZ2dlciwgY2hhbmdlZFByb3BlcnRpZXMuZ2V0KCd0cmlnZ2VyJykpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCduZWdhdGl2ZScpKSB7XG4gICAgICB0aGlzLnN5bmNOZWdhdGl2ZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMuX2NvbXBvbmVudFNldHVwKCk7XG4gICAgdGhpcy5fZGlkTG9hZCA9IHRydWU7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl90cmlnZ2VyRXZlbnRzQ29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyPy5hYm9ydCgpO1xuICB9XG5cbiAgLyoqIFdoZW4gYW4gb3B0aW9uIGlzIHNlbGVjdGVkLCB1cGRhdGUgdGhlIGlucHV0IHZhbHVlIGFuZCBjbG9zZSB0aGUgYXV0b2NvbXBsZXRlLiAqL1xuICBwcm90ZWN0ZWQgb25PcHRpb25TZWxlY3RlZChldmVudDogQ3VzdG9tRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgU2JiT3B0aW9uQmFzZUVsZW1lbnQ7XG4gICAgaWYgKCF0YXJnZXQuc2VsZWN0ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBEZXNlbGVjdCB0aGUgcHJldmlvdXMgb3B0aW9uc1xuICAgIHRoaXMub3B0aW9uc1xuICAgICAgLmZpbHRlcigob3B0aW9uKSA9PiBvcHRpb24uaWQgIT09IHRhcmdldC5pZCAmJiBvcHRpb24uc2VsZWN0ZWQpXG4gICAgICAuZm9yRWFjaCgob3B0aW9uKSA9PiAob3B0aW9uLnNlbGVjdGVkID0gZmFsc2UpKTtcblxuICAgIGlmICh0aGlzLnRyaWdnZXJFbGVtZW50KSB7XG4gICAgICAvLyBTZXQgdGhlIG9wdGlvbiB2YWx1ZVxuICAgICAgdGhpcy50cmlnZ2VyRWxlbWVudC52YWx1ZSA9IHRhcmdldC52YWx1ZSBhcyBzdHJpbmc7XG5cbiAgICAgIC8vIE1hbnVhbGx5IHRyaWdnZXIgdGhlIGNoYW5nZSBldmVudHNcbiAgICAgIHRoaXMudHJpZ2dlckVsZW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NoYW5nZScsIHsgYnViYmxlczogdHJ1ZSB9KSk7XG4gICAgICB0aGlzLnRyaWdnZXJFbGVtZW50LmRpc3BhdGNoRXZlbnQobmV3IElucHV0RXZlbnQoJ2lucHV0JywgeyBidWJibGVzOiB0cnVlLCBjb21wb3NlZDogdHJ1ZSB9KSk7XG4gICAgfVxuXG4gICAgdGhpcy5jbG9zZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlU2xvdGNoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9oaWdobGlnaHRPcHRpb25zKHRoaXMudHJpZ2dlckVsZW1lbnQ/LnZhbHVlKTtcbiAgfVxuXG4gIC8qKiBUaGUgYXV0b2NvbXBsZXRlIHNob3VsZCBpbmhlcml0ICdyZWFkb25seScgc3RhdGUgZnJvbSB0aGUgdHJpZ2dlci4gKi9cbiAgcHJpdmF0ZSBnZXQgX3JlYWRvbmx5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRyaWdnZXJFbGVtZW50Py5oYXNBdHRyaWJ1dGUoJ3JlYWRvbmx5JykgPz8gZmFsc2U7XG4gIH1cblxuICAvKiogUmVtb3ZlcyB0cmlnZ2VyIGNsaWNrIGxpc3RlbmVyIG9uIHRyaWdnZXIgY2hhbmdlLiAqL1xuICBwcml2YXRlIF9yZXNldE9yaWdpbkNsaWNrTGlzdGVuZXIoXG4gICAgbmV3VmFsdWU/OiBzdHJpbmcgfCBIVE1MRWxlbWVudCxcbiAgICBvbGRWYWx1ZT86IHN0cmluZyB8IEhUTUxFbGVtZW50LFxuICApOiB2b2lkIHtcbiAgICBpZiAobmV3VmFsdWUgIT09IG9sZFZhbHVlKSB7XG4gICAgICB0aGlzLl9jb21wb25lbnRTZXR1cCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBSZW1vdmVzIHRyaWdnZXIgY2xpY2sgbGlzdGVuZXIgb24gdHJpZ2dlciBjaGFuZ2UuICovXG4gIHByaXZhdGUgX3Jlc2V0VHJpZ2dlckNsaWNrTGlzdGVuZXIoXG4gICAgbmV3VmFsdWU/OiBzdHJpbmcgfCBIVE1MRWxlbWVudCxcbiAgICBvbGRWYWx1ZT86IHN0cmluZyB8IEhUTUxFbGVtZW50LFxuICApOiB2b2lkIHtcbiAgICBpZiAobmV3VmFsdWUgIT09IG9sZFZhbHVlKSB7XG4gICAgICB0aGlzLl9jb21wb25lbnRTZXR1cCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NvbXBvbmVudFNldHVwKCk6IHZvaWQge1xuICAgIGlmIChpc1NlcnZlcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl90cmlnZ2VyRXZlbnRzQ29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyPy5hYm9ydCgpO1xuXG4gICAgdGhpcy5fb3JpZ2luRWxlbWVudCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZShcbiAgICAgICdkYXRhLW9wdGlvbi1wYW5lbC1vcmlnaW4tYm9yZGVybGVzcycsXG4gICAgICAhIXRoaXMuY2xvc2VzdD8uKCdzYmItZm9ybS1maWVsZCcpPy5oYXNBdHRyaWJ1dGUoJ2JvcmRlcmxlc3MnKSxcbiAgICApO1xuXG4gICAgdGhpcy5fYmluZFRvKHRoaXMuX2dldFRyaWdnZXJFbGVtZW50KCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlIHRoZSBlbGVtZW50IHdoZXJlIHRoZSBhdXRvY29tcGxldGUgd2lsbCBiZSBhdHRhY2hlZC5cbiAgICogQHJldHVybnMgJ29yaWdpbicgb3IgdGhlIGZpcnN0ICdzYmItZm9ybS1maWVsZCcgYW5jZXN0b3IuXG4gICAqL1xuICBwcml2YXRlIF9maW5kT3JpZ2luRWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgbGV0IHJlc3VsdDogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQgfCBudWxsO1xuXG4gICAgaWYgKCF0aGlzLm9yaWdpbikge1xuICAgICAgcmVzdWx0ID0gdGhpcy5jbG9zZXN0Py4oJ3NiYi1mb3JtLWZpZWxkJyk/LnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3I/LignI292ZXJsYXktYW5jaG9yJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdCA9IGZpbmRSZWZlcmVuY2VkRWxlbWVudCh0aGlzLm9yaWdpbik7XG4gICAgfVxuXG4gICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0Nhbm5vdCBmaW5kIHRoZSBvcmlnaW4gZWxlbWVudC4gUGxlYXNlIHNwZWNpZnkgYSB2YWxpZCBlbGVtZW50IG9yIHJlYWQgdGhlIFwib3JpZ2luXCIgcHJvcCBkb2N1bWVudGF0aW9uJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZSB0aGUgZWxlbWVudCB0aGF0IHdpbGwgdHJpZ2dlciB0aGUgYXV0b2NvbXBsZXRlIG9wZW5pbmcuXG4gICAqIEByZXR1cm5zICd0cmlnZ2VyJyBvciB0aGUgZmlyc3QgJ2lucHV0JyBpbnNpZGUgdGhlIG9yaWdpbiBlbGVtZW50LlxuICAgKi9cbiAgcHJpdmF0ZSBfZ2V0VHJpZ2dlckVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB7XG4gICAgaWYgKCF0aGlzLnRyaWdnZXIpIHtcbiAgICAgIHJldHVybiB0aGlzLmNsb3Nlc3Q/Lignc2JiLWZvcm0tZmllbGQnKT8ucXVlcnlTZWxlY3RvcignaW5wdXQnKSBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IGZpbmRSZWZlcmVuY2VkRWxlbWVudDxIVE1MSW5wdXRFbGVtZW50Pih0aGlzLnRyaWdnZXIpO1xuXG4gICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0Nhbm5vdCBmaW5kIHRoZSB0cmlnZ2VyIGVsZW1lbnQuIFBsZWFzZSBzcGVjaWZ5IGEgdmFsaWQgZWxlbWVudCBvciByZWFkIHRoZSBcInRyaWdnZXJcIiBwcm9wIGRvY3VtZW50YXRpb24nLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBfYmluZFRvKHRyaWdnZXJFbGVtOiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XG4gICAgaWYgKCF0cmlnZ2VyRWxlbSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFJlc2V0IGF0dHJpYnV0ZXMgdG8gdGhlIG9sZCB0cmlnZ2VyIGFuZCBhZGQgdGhlbSB0byB0aGUgbmV3IG9uZVxuICAgIHRoaXMuX3JlbW92ZVRyaWdnZXJBdHRyaWJ1dGVzKHRoaXMudHJpZ2dlckVsZW1lbnQpO1xuICAgIHRoaXMuc2V0VHJpZ2dlckF0dHJpYnV0ZXModHJpZ2dlckVsZW0pO1xuXG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQgPSB0cmlnZ2VyRWxlbTtcblxuICAgIHRoaXMuX3NldHVwVHJpZ2dlckV2ZW50cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0dXBUcmlnZ2VyRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMuX3RyaWdnZXJFdmVudHNDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuXG4gICAgLy8gT3BlbiB0aGUgb3ZlcmxheSBvbiBmb2N1cywgY2xpY2ssIGlucHV0IGFuZCBgQXJyb3dEb3duYCBldmVudFxuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3VzJywgKCkgPT4gdGhpcy5vcGVuKCksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fdHJpZ2dlckV2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gdGhpcy5vcGVuKCksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fdHJpZ2dlckV2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAnaW5wdXQnLFxuICAgICAgKGV2ZW50KSA9PiB7XG4gICAgICAgIHRoaXMub3BlbigpO1xuICAgICAgICB0aGlzLl9oaWdobGlnaHRPcHRpb25zKChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWUpO1xuICAgICAgfSxcbiAgICAgIHsgc2lnbmFsOiB0aGlzLl90cmlnZ2VyRXZlbnRzQ29udHJvbGxlci5zaWduYWwgfSxcbiAgICApO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAna2V5ZG93bicsXG4gICAgICAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHRoaXMuX2Nsb3NlZFBhbmVsS2V5Ym9hcmRJbnRlcmFjdGlvbihldmVudCksXG4gICAgICB7IHNpZ25hbDogdGhpcy5fdHJpZ2dlckV2ZW50c0NvbnRyb2xsZXIuc2lnbmFsIH0sXG4gICAgKTtcbiAgfVxuXG4gIC8vIFNldCBvdmVybGF5IHBvc2l0aW9uLCB3aWR0aCBhbmQgbWF4IGhlaWdodFxuICBwcml2YXRlIF9zZXRPdmVybGF5UG9zaXRpb24oKTogdm9pZCB7XG4gICAgc2V0T3ZlcmxheVBvc2l0aW9uKFxuICAgICAgdGhpcy5fb3ZlcmxheSxcbiAgICAgIHRoaXMub3JpZ2luRWxlbWVudCxcbiAgICAgIHRoaXMuX29wdGlvbkNvbnRhaW5lcixcbiAgICAgIHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcignLnNiYi1hdXRvY29tcGxldGVfX2NvbnRhaW5lcicpISxcbiAgICAgIHRoaXMsXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBPbiBvcGVuL2Nsb3NlIGFuaW1hdGlvbiBlbmQuXG4gICAqICBJbiByYXJlIGNhc2VzIGl0IGNhbiBiZSB0aGF0IHRoZSBhbmltYXRpb25FbmQgZXZlbnQgaXMgdHJpZ2dlcmVkIHR3aWNlLlxuICAgKiAgVG8gYXZvaWQgZW50ZXJpbmcgYSBjb3JydXB0IHN0YXRlLCBleGl0IHdoZW4gc3RhdGUgaXMgbm90IGV4cGVjdGVkLlxuICAgKi9cbiAgcHJpdmF0ZSBfb25BbmltYXRpb25FbmQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdvcGVuJyAmJiB0aGlzLnN0YXRlID09PSAnb3BlbmluZycpIHtcbiAgICAgIHRoaXMuX29uT3BlbkFuaW1hdGlvbkVuZCgpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyAmJiB0aGlzLnN0YXRlID09PSAnY2xvc2luZycpIHtcbiAgICAgIHRoaXMuX29uQ2xvc2VBbmltYXRpb25FbmQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbk9wZW5BbmltYXRpb25FbmQoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuX2F0dGFjaE9wZW5QYW5lbEV2ZW50cygpO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICd0cnVlJyk7XG4gICAgdGhpcy5kaWRPcGVuLmVtaXQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX29uQ2xvc2VBbmltYXRpb25FbmQoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zZWQnO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICdmYWxzZScpO1xuICAgIHRoaXMucmVzZXRBY3RpdmVFbGVtZW50KCk7XG4gICAgdGhpcy5fb3B0aW9uQ29udGFpbmVyLnNjcm9sbFRvcCA9IDA7XG4gICAgdGhpcy5kaWRDbG9zZS5lbWl0KCk7XG4gIH1cblxuICBwcml2YXRlIF9hdHRhY2hPcGVuUGFuZWxFdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICAgIC8vIFJlY2FsY3VsYXRlIHRoZSBvdmVybGF5IHBvc2l0aW9uIG9uIHNjcm9sbCBhbmQgd2luZG93IHJlc2l6ZVxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsICgpID0+IHRoaXMuX3NldE92ZXJsYXlQb3NpdGlvbigpLCB7XG4gICAgICBwYXNzaXZlOiB0cnVlLFxuICAgICAgc2lnbmFsOiB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgKCkgPT4gdGhpcy5fc2V0T3ZlcmxheVBvc2l0aW9uKCksIHtcbiAgICAgIHBhc3NpdmU6IHRydWUsXG4gICAgICBzaWduYWw6IHRoaXMuX29wZW5QYW5lbEV2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuXG4gICAgLy8gQ2xvc2UgYXV0b2NvbXBsZXRlIG9uIGJhY2tkcm9wIGNsaWNrXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKGV2KSA9PiB0aGlzLl9wb2ludGVyRG93bkxpc3RlbmVyKGV2KSwge1xuICAgICAgc2lnbmFsOiB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcnVwJywgKGV2KSA9PiB0aGlzLl9jbG9zZU9uQmFja2Ryb3BDbGljayhldiksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG5cbiAgICAvLyBLZXlib2FyZCBpbnRlcmFjdGlvbnNcbiAgICB0aGlzLnRyaWdnZXJFbGVtZW50Py5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgJ2tleWRvd24nLFxuICAgICAgKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB0aGlzLm9wZW5lZFBhbmVsS2V5Ym9hcmRJbnRlcmFjdGlvbihldmVudCksXG4gICAgICB7XG4gICAgICAgIHNpZ25hbDogdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgICB9LFxuICAgICk7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgcG9pbnRlcmRvd24gZXZlbnQgdGFyZ2V0IGlzIHRyaWdnZXJlZCBvbiB0aGUgbWVudS5cbiAgcHJpdmF0ZSBfcG9pbnRlckRvd25MaXN0ZW5lciA9IChldmVudDogUG9pbnRlckV2ZW50KTogdm9pZCA9PiB7XG4gICAgdGhpcy5faXNQb2ludGVyRG93bkV2ZW50T25NZW51ID0gaXNFdmVudE9uRWxlbWVudCh0aGlzLl9vdmVybGF5LCBldmVudCk7XG4gIH07XG5cbiAgLy8gSWYgdGhlIGNsaWNrIGlzIG91dHNpZGUgdGhlIGF1dG9jb21wbGV0ZSwgY2xvc2VzIHRoZSBwYW5lbC5cbiAgcHJpdmF0ZSBfY2xvc2VPbkJhY2tkcm9wQ2xpY2sgPSAoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgIGlmIChcbiAgICAgICF0aGlzLl9pc1BvaW50ZXJEb3duRXZlbnRPbk1lbnUgJiZcbiAgICAgICFpc0V2ZW50T25FbGVtZW50KHRoaXMuX292ZXJsYXksIGV2ZW50KSAmJlxuICAgICAgIWlzRXZlbnRPbkVsZW1lbnQodGhpcy5vcmlnaW5FbGVtZW50LCBldmVudClcbiAgICApIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH07XG5cbiAgcHJpdmF0ZSBfY2xvc2VkUGFuZWxLZXlib2FyZEludGVyYWN0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdjbG9zZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ0VudGVyJzpcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgdGhpcy5vcGVuKCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBIaWdobGlnaHQgdGhlIHNlYXJjaGVkIHRleHQgb24gdGhlIG9wdGlvbnMuICovXG4gIHByaXZhdGUgX2hpZ2hsaWdodE9wdGlvbnMoc2VhcmNoVGVybT86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChzZWFyY2hUZXJtID09PSBudWxsIHx8IHNlYXJjaFRlcm0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9wdGlvbnMuZm9yRWFjaCgob3B0aW9uKSA9PiBvcHRpb24uaGlnaGxpZ2h0KHNlYXJjaFRlcm0pKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbW92ZVRyaWdnZXJBdHRyaWJ1dGVzKGVsZW1lbnQ/OiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XG4gICAgcmVtb3ZlQXJpYUNvbWJvQm94QXR0cmlidXRlcyhlbGVtZW50KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1hdXRvY29tcGxldGVfX2dhcC1maXhcIj48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItYXV0b2NvbXBsZXRlX19jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1hdXRvY29tcGxldGVfX2dhcC1maXhcIj4ke292ZXJsYXlHYXBGaXhDb3JuZXJzKCl9PC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25BbmltYXRpb25FbmR9XG4gICAgICAgICAgY2xhc3M9XCJzYmItYXV0b2NvbXBsZXRlX19wYW5lbFwiXG4gICAgICAgICAgP2RhdGEtb3Blbj0ke3RoaXMuc3RhdGUgPT09ICdvcGVuZWQnIHx8IHRoaXMuc3RhdGUgPT09ICdvcGVuaW5nJ31cbiAgICAgICAgICAke3JlZigob3ZlcmxheVJlZj86IEVsZW1lbnQpID0+ICh0aGlzLl9vdmVybGF5ID0gb3ZlcmxheVJlZiBhcyBIVE1MRWxlbWVudCkpfVxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1hdXRvY29tcGxldGVfX3dyYXBwZXJcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItYXV0b2NvbXBsZXRlX19vcHRpb25zXCJcbiAgICAgICAgICAgICAgcm9sZT0keyFhcmlhUm9sZU9uSG9zdCA/IHRoaXMucGFuZWxSb2xlIDogbm90aGluZ31cbiAgICAgICAgICAgICAgaWQ9JHshYXJpYVJvbGVPbkhvc3QgPyB0aGlzLm92ZXJsYXlJZCA6IG5vdGhpbmd9XG4gICAgICAgICAgICAgICR7cmVmKChjb250YWluZXJSZWYpID0+ICh0aGlzLl9vcHRpb25Db250YWluZXIgPSBjb250YWluZXJSZWYgYXMgSFRNTEVsZW1lbnQpKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNsb3QgQHNsb3RjaGFuZ2U9JHt0aGlzLl9oYW5kbGVTbG90Y2hhbmdlfT48L3Nsb3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG4iLCJpbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBnZXROZXh0RWxlbWVudEluZGV4IH0gZnJvbSAnLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7IGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGdldERvY3VtZW50V3JpdGluZ01vZGUsIGlzU2FmYXJpIH0gZnJvbSAnLi4vY29yZS9kb20uanMnO1xuaW1wb3J0IHsgc2V0QXJpYUNvbWJvQm94QXR0cmlidXRlcyB9IGZyb20gJy4uL2NvcmUvb3ZlcmxheS5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk9wdEdyb3VwRWxlbWVudCwgU2JiT3B0aW9uRWxlbWVudCB9IGZyb20gJy4uL29wdGlvbi5qcyc7XG5cbmltcG9ydCB7IFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IH0gZnJvbSAnLi9hdXRvY29tcGxldGUtYmFzZS1lbGVtZW50LmpzJztcblxubGV0IG5leHRJZCA9IDA7XG5cbi8qKlxuICogT24gU2FmYXJpLCB0aGUgYXJpYSByb2xlICdsaXN0Ym94JyBtdXN0IGJlIG9uIHRoZSBob3N0IGVsZW1lbnQsIG9yIGVsc2UgVm9pY2VPdmVyIHdvbid0IHdvcmsgYXQgYWxsLlxuICogT24gdGhlIG90aGVyIGhhbmQsIEpBV1MgYW5kIE5WREEgbmVlZCB0aGUgcm9sZSB0byBiZSBcImNsb3NlclwiIHRvIHRoZSBvcHRpb25zLCBvciBlbHNlIG9wdGdyb3VwcyB3b24ndCB3b3JrLlxuICovXG5jb25zdCBhcmlhUm9sZU9uSG9zdCA9IGlzU2FmYXJpO1xuXG4vKipcbiAqIENvbWJpbmVkIHdpdGggYSBuYXRpdmUgaW5wdXQsIGl0IGRpc3BsYXlzIGEgcGFuZWwgd2l0aCBhIGxpc3Qgb2YgYXZhaWxhYmxlIG9wdGlvbnMuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1vcHRpb25gIG9yIGBzYmItb3B0Z3JvdXBgIGVsZW1lbnRzIHRvIHRoZSBgc2JiLWF1dG9jb21wbGV0ZWAuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLWF1dG9jb21wbGV0ZWAgc3RhcnRzIHRoZSBvcGVuaW5nIHRyYW5zaXRpb24uIENhbiBiZSBjYW5jZWxlZC5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZE9wZW4gLSBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1hdXRvY29tcGxldGVgIGlzIG9wZW5lZC5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IHdpbGxDbG9zZSAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLWF1dG9jb21wbGV0ZWAgYmVnaW5zIHRoZSBjbG9zaW5nIHRyYW5zaXRpb24uIENhbiBiZSBjYW5jZWxlZC5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZENsb3NlIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItYXV0b2NvbXBsZXRlYCBpcyBjbG9zZWQuXG4gKiBAY3NzcHJvcCBbLS1zYmItYXV0b2NvbXBsZXRlLXotaW5kZXg9dmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KV0gLSBUbyBzcGVjaWZ5IGEgY3VzdG9tIHN0YWNrIG9yZGVyLFxuICogdGhlIGB6LWluZGV4YCBjYW4gYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZyB0aGlzIENTUyB2YXJpYWJsZS4gVGhlIGRlZmF1bHQgYHotaW5kZXhgIG9mIHRoZVxuICogY29tcG9uZW50IGlzIHNldCB0byBgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KWAgd2l0aCBhIHZhbHVlIG9mIGAxMDAwYC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1hdXRvY29tcGxldGUnKVxuQGhvc3RBdHRyaWJ1dGVzKHtcbiAgZGlyOiBnZXREb2N1bWVudFdyaXRpbmdNb2RlKCksXG4gIHJvbGU6IGFyaWFSb2xlT25Ib3N0ID8gJ2xpc3Rib3gnIDogbnVsbCxcbn0pXG5leHBvcnQgY2xhc3MgU2JiQXV0b2NvbXBsZXRlRWxlbWVudCBleHRlbmRzIFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IHtcbiAgcHJvdGVjdGVkIG92ZXJsYXlJZCA9IGBzYmItYXV0b2NvbXBsZXRlLSR7KytuZXh0SWR9YDtcbiAgcHJvdGVjdGVkIHBhbmVsUm9sZSA9ICdsaXN0Ym94JztcbiAgcHJpdmF0ZSBfYWN0aXZlSXRlbUluZGV4ID0gLTE7XG5cbiAgcHJvdGVjdGVkIGdldCBvcHRpb25zKCk6IFNiYk9wdGlvbkVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi1vcHRpb24nKSA/PyBbXSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25PcHRpb25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIChldmVudC50YXJnZXQgYXMgRWxlbWVudCkubG9jYWxOYW1lICE9PSAnc2JiLW9wdGlvbicgfHxcbiAgICAgIChldmVudC50YXJnZXQgYXMgU2JiT3B0aW9uRWxlbWVudCkuZGlzYWJsZWRcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jbG9zZSgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgY29uc3Qgc2lnbmFsID0gdGhpcy5hYm9ydC5zaWduYWw7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgJ29wdGlvblNlbGVjdGlvbkNoYW5nZScsXG4gICAgICAoZTogQ3VzdG9tRXZlbnQ8dm9pZD4pID0+IHRoaXMub25PcHRpb25TZWxlY3RlZChlKSxcbiAgICAgIHsgc2lnbmFsIH0sXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzeW5jTmVnYXRpdmUoKTogdm9pZCB7XG4gICAgdGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi1kaXZpZGVyJykuZm9yRWFjaCgoZGl2aWRlcikgPT4gKGRpdmlkZXIubmVnYXRpdmUgPSB0aGlzLm5lZ2F0aXZlKSk7XG5cbiAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/LjxTYmJPcHRpb25FbGVtZW50IHwgU2JiT3B0R3JvdXBFbGVtZW50PihcbiAgICAgICdzYmItb3B0aW9uLCBzYmItb3B0Z3JvdXAnLFxuICAgICkuZm9yRWFjaCgoZWxlbWVudCkgPT4gZWxlbWVudC50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtbmVnYXRpdmUnLCB0aGlzLm5lZ2F0aXZlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3BlbmVkUGFuZWxLZXlib2FyZEludGVyYWN0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdvcGVuZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ0VzY2FwZSc6XG4gICAgICBjYXNlICdUYWInOlxuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdFbnRlcic6XG4gICAgICAgIHRoaXMuc2VsZWN0QnlLZXlib2FyZCgpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnQXJyb3dEb3duJzpcbiAgICAgIGNhc2UgJ0Fycm93VXAnOlxuICAgICAgICB0aGlzLnNldE5leHRBY3RpdmVPcHRpb24oZXZlbnQpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgc2VsZWN0QnlLZXlib2FyZCgpOiB2b2lkIHtcbiAgICBjb25zdCBhY3RpdmVPcHRpb24gPSB0aGlzLm9wdGlvbnNbdGhpcy5fYWN0aXZlSXRlbUluZGV4XTtcblxuICAgIGlmIChhY3RpdmVPcHRpb24pIHtcbiAgICAgIGFjdGl2ZU9wdGlvbi5zZXRTZWxlY3RlZFZpYVVzZXJJbnRlcmFjdGlvbih0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgc2V0TmV4dEFjdGl2ZU9wdGlvbihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGZpbHRlcmVkT3B0aW9ucyA9IHRoaXMub3B0aW9ucy5maWx0ZXIoXG4gICAgICAob3B0KSA9PiAhb3B0LmRpc2FibGVkICYmICFvcHQuaGFzQXR0cmlidXRlKCdkYXRhLWdyb3VwLWRpc2FibGVkJyksXG4gICAgKTtcblxuICAgIC8vIEdldCBhbmQgYWN0aXZhdGUgdGhlIG5leHQgYWN0aXZlIG9wdGlvblxuICAgIGNvbnN0IG5leHQgPSBnZXROZXh0RWxlbWVudEluZGV4KGV2ZW50LCB0aGlzLl9hY3RpdmVJdGVtSW5kZXgsIGZpbHRlcmVkT3B0aW9ucy5sZW5ndGgpO1xuICAgIGNvbnN0IG5leHRBY3RpdmVPcHRpb24gPSBmaWx0ZXJlZE9wdGlvbnNbbmV4dF07XG4gICAgbmV4dEFjdGl2ZU9wdGlvbi5hY3RpdmUgPSB0cnVlO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1hY3RpdmVkZXNjZW5kYW50JywgbmV4dEFjdGl2ZU9wdGlvbi5pZCk7XG4gICAgbmV4dEFjdGl2ZU9wdGlvbi5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcgfSk7XG5cbiAgICAvLyBSZXNldCB0aGUgcHJldmlvdXMgYWN0aXZlIG9wdGlvblxuICAgIGNvbnN0IGxhc3RBY3RpdmVPcHRpb24gPSBmaWx0ZXJlZE9wdGlvbnNbdGhpcy5fYWN0aXZlSXRlbUluZGV4XTtcbiAgICBpZiAobGFzdEFjdGl2ZU9wdGlvbikge1xuICAgICAgbGFzdEFjdGl2ZU9wdGlvbi5hY3RpdmUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICB0aGlzLl9hY3RpdmVJdGVtSW5kZXggPSBuZXh0O1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlc2V0QWN0aXZlRWxlbWVudCgpOiB2b2lkIHtcbiAgICBjb25zdCBhY3RpdmVFbGVtZW50ID0gdGhpcy5vcHRpb25zW3RoaXMuX2FjdGl2ZUl0ZW1JbmRleF07XG5cbiAgICBpZiAoYWN0aXZlRWxlbWVudCkge1xuICAgICAgYWN0aXZlRWxlbWVudC5hY3RpdmUgPSBmYWxzZTtcbiAgICB9XG4gICAgdGhpcy5fYWN0aXZlSXRlbUluZGV4ID0gLTE7XG4gICAgdGhpcy50cmlnZ2VyRWxlbWVudD8ucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWFjdGl2ZWRlc2NlbmRhbnQnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRUcmlnZ2VyQXR0cmlidXRlcyhlbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XG4gICAgc2V0QXJpYUNvbWJvQm94QXR0cmlidXRlcyhlbGVtZW50LCBhcmlhUm9sZU9uSG9zdCA/IHRoaXMuaWQgOiB0aGlzLm92ZXJsYXlJZCwgZmFsc2UpO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItYXV0b2NvbXBsZXRlJzogU2JiQXV0b2NvbXBsZXRlRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbImFyaWFSb2xlT25Ib3N0IiwiX19kZWNvcmF0ZUNsYXNzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUE2QkEsTUFBTUEsbUJBQWlCO0FBRWhCLE1BQWUsOEJBQWYsTUFBZSxvQ0FBbUM7QUFBQSxFQUN2RCxrQkFBa0IsdUJBQXVCO0FBQzNDLEVBQUU7QUFBQSxFQUZLLGNBQUE7QUFBQSxVQUFBLEdBQUEsU0FBQTtBQXVDSyxTQUFBLFFBQVEsSUFBSSw0QkFBNEIsSUFBSTtBQUt0RCxTQUFRLFdBQVc7QUFDbkIsU0FBUSw0QkFBcUM7QUFnVHJDLFNBQUEsdUJBQXVCLENBQUMsVUFBOEI7QUFDNUQsV0FBSyw0QkFBNEIsaUJBQWlCLEtBQUssVUFBVSxLQUFLO0FBQUEsSUFBQTtBQUloRSxTQUFBLHdCQUF3QixDQUFDLFVBQThCO0FBQzdELFVBQ0UsQ0FBQyxLQUFLLDZCQUNOLENBQUMsaUJBQWlC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
752
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS1iYXNlLWVsZW1lbnQudHMiLCIuLi8uLi8uLi9zcmMvZWxlbWVudHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBpc1NlcnZlcixcbiAgbm90aGluZyxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgcmVmIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvcmVmLmpzJztcblxuaW1wb3J0IHsgU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQgfSBmcm9tICcuLi9jb3JlL2Jhc2UtZWxlbWVudHMuanMnO1xuaW1wb3J0IHsgU2JiQ29ubmVjdGVkQWJvcnRDb250cm9sbGVyIH0gZnJvbSAnLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBmaW5kUmVmZXJlbmNlZEVsZW1lbnQsIGlzU2FmYXJpIH0gZnJvbSAnLi4vY29yZS9kb20uanMnO1xuaW1wb3J0IHsgU2JiTmVnYXRpdmVNaXhpbiwgU2JiSHlkcmF0aW9uTWl4aW4gfSBmcm9tICcuLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQge1xuICBpc0V2ZW50T25FbGVtZW50LFxuICBvdmVybGF5R2FwRml4Q29ybmVycyxcbiAgcmVtb3ZlQXJpYUNvbWJvQm94QXR0cmlidXRlcyxcbiAgc2V0T3ZlcmxheVBvc2l0aW9uLFxufSBmcm9tICcuLi9jb3JlL292ZXJsYXkuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcHRpb25CYXNlRWxlbWVudCB9IGZyb20gJy4uL29wdGlvbi5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2F1dG9jb21wbGV0ZS1iYXNlLWVsZW1lbnQuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBPbiBTYWZhcmksIHRoZSBhcmlhIHJvbGUgJ2xpc3Rib3gnIG11c3QgYmUgb24gdGhlIGhvc3QgZWxlbWVudCwgb3IgZWxzZSBWb2ljZU92ZXIgd29uJ3Qgd29yayBhdCBhbGwuXG4gKiBPbiB0aGUgb3RoZXIgaGFuZCwgSkFXUyBhbmQgTlZEQSBuZWVkIHRoZSByb2xlIHRvIGJlIFwiY2xvc2VyXCIgdG8gdGhlIG9wdGlvbnMsIG9yIGVsc2Ugb3B0Z3JvdXBzIHdvbid0IHdvcmsuXG4gKi9cbmNvbnN0IGFyaWFSb2xlT25Ib3N0ID0gaXNTYWZhcmk7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTYmJBdXRvY29tcGxldGVCYXNlRWxlbWVudCBleHRlbmRzIFNiYk5lZ2F0aXZlTWl4aW4oXG4gIFNiYkh5ZHJhdGlvbk1peGluKFNiYk9wZW5DbG9zZUJhc2VFbGVtZW50KSxcbikge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKipcbiAgICogVGhlIGVsZW1lbnQgd2hlcmUgdGhlIGF1dG9jb21wbGV0ZSB3aWxsIGF0dGFjaDsgYWNjZXB0cyBib3RoIGFuIGVsZW1lbnQncyBpZCBvciBhbiBIVE1MRWxlbWVudC5cbiAgICogSWYgbm90IHNldCwgaXQgd2lsbCBzZWFyY2ggZm9yIHRoZSBmaXJzdCAnc2JiLWZvcm0tZmllbGQnIGFuY2VzdG9yLlxuICAgKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIG9yaWdpbj86IHN0cmluZyB8IEhUTUxFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgaW5wdXQgZWxlbWVudCB0aGF0IHdpbGwgdHJpZ2dlciB0aGUgYXV0b2NvbXBsZXRlIG9wZW5pbmc7IGFjY2VwdHMgYm90aCBhbiBlbGVtZW50J3MgaWQgb3IgYW4gSFRNTEVsZW1lbnQuXG4gICAqIEJ5IGRlZmF1bHQsIHRoZSBhdXRvY29tcGxldGUgd2lsbCBvcGVuIG9uIGZvY3VzLCBjbGljaywgaW5wdXQgb3IgYEFycm93RG93bmAga2V5cHJlc3Mgb2YgdGhlICd0cmlnZ2VyJyBlbGVtZW50LlxuICAgKiBJZiBub3Qgc2V0LCB3aWxsIHNlYXJjaCBmb3IgdGhlIGZpcnN0ICdpbnB1dCcgY2hpbGQgb2YgYSAnc2JiLWZvcm0tZmllbGQnIGFuY2VzdG9yLlxuICAgKi9cbiAgQHByb3BlcnR5KCkgcHVibGljIHRyaWdnZXI/OiBzdHJpbmcgfCBIVE1MSW5wdXRFbGVtZW50O1xuXG4gIC8qKiBXaGV0aGVyIHRoZSBpY29uIHNwYWNlIGlzIHByZXNlcnZlZCB3aGVuIG5vIGljb24gaXMgc2V0LiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdwcmVzZXJ2ZS1pY29uLXNwYWNlJywgcmVmbGVjdDogdHJ1ZSwgdHlwZTogQm9vbGVhbiB9KVxuICBwdWJsaWMgcHJlc2VydmVJY29uU3BhY2U/OiBib29sZWFuO1xuXG4gIC8qKiBSZXR1cm5zIHRoZSBlbGVtZW50IHdoZXJlIGF1dG9jb21wbGV0ZSBvdmVybGF5IGlzIGF0dGFjaGVkIHRvLiAqL1xuICBwdWJsaWMgZ2V0IG9yaWdpbkVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIGlmICghdGhpcy5fb3JpZ2luRWxlbWVudCkge1xuICAgICAgdGhpcy5fb3JpZ2luRWxlbWVudCA9IHRoaXMuX2ZpbmRPcmlnaW5FbGVtZW50KCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9vcmlnaW5FbGVtZW50O1xuICB9XG4gIHByaXZhdGUgX29yaWdpbkVsZW1lbnQ/OiBIVE1MRWxlbWVudDtcblxuICAvKiogUmV0dXJucyB0aGUgdHJpZ2dlciBlbGVtZW50LiAqL1xuICBwdWJsaWMgZ2V0IHRyaWdnZXJFbGVtZW50KCk6IEhUTUxJbnB1dEVsZW1lbnQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl90cmlnZ2VyRWxlbWVudDtcbiAgfVxuICBwcml2YXRlIF90cmlnZ2VyRWxlbWVudDogSFRNTElucHV0RWxlbWVudCB8IHVuZGVmaW5lZDtcblxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgb3ZlcmxheUlkOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBwYW5lbFJvbGU6IHN0cmluZztcbiAgcHJvdGVjdGVkIGFib3J0ID0gbmV3IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfb3ZlcmxheSE6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF9vcHRpb25Db250YWluZXIhOiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBfdHJpZ2dlckV2ZW50c0NvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX29wZW5QYW5lbEV2ZW50c0NvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX2RpZExvYWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaXNQb2ludGVyRG93bkV2ZW50T25NZW51OiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldCBvcHRpb25zKCk6IFNiYk9wdGlvbkJhc2VFbGVtZW50W107XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzeW5jTmVnYXRpdmUoKTogdm9pZDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHNldFRyaWdnZXJBdHRyaWJ1dGVzKGVsZW1lbnQ6IEhUTUxJbnB1dEVsZW1lbnQpOiB2b2lkO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgb3BlbmVkUGFuZWxLZXlib2FyZEludGVyYWN0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IHNlbGVjdEJ5S2V5Ym9hcmQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkO1xuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc2V0TmV4dEFjdGl2ZU9wdGlvbihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQ7XG4gIHByb3RlY3RlZCBhYnN0cmFjdCByZXNldEFjdGl2ZUVsZW1lbnQoKTogdm9pZDtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IG9uT3B0aW9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkO1xuXG4gIC8qKiBPcGVucyB0aGUgYXV0b2NvbXBsZXRlLiAqL1xuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdGF0ZSAhPT0gJ2Nsb3NlZCcgfHwgIXRoaXMuX292ZXJsYXkgfHwgdGhpcy5vcHRpb25zLmxlbmd0aCA9PT0gMCB8fCB0aGlzLl9yZWFkb25seSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoIXRoaXMud2lsbE9wZW4uZW1pdCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zdGF0ZSA9ICdvcGVuaW5nJztcbiAgICB0aGlzLl9zZXRPdmVybGF5UG9zaXRpb24oKTtcbiAgfVxuXG4gIC8qKiBDbG9zZXMgdGhlIGF1dG9jb21wbGV0ZS4gKi9cbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0YXRlICE9PSAnb3BlbmVkJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoIXRoaXMud2lsbENsb3NlLmVtaXQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc3RhdGUgPSAnY2xvc2luZyc7XG4gICAgdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlci5hYm9ydCgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgaWYgKGFyaWFSb2xlT25Ib3N0KSB7XG4gICAgICB0aGlzLmlkIHx8PSB0aGlzLm92ZXJsYXlJZDtcbiAgICB9XG4gICAgY29uc3Qgc2lnbmFsID0gdGhpcy5hYm9ydC5zaWduYWw7XG4gICAgY29uc3QgZm9ybUZpZWxkID0gdGhpcy5jbG9zZXN0KCdzYmItZm9ybS1maWVsZCcpID8/IHRoaXMuY2xvc2VzdCgnW2RhdGEtZm9ybS1maWVsZF0nKTtcblxuICAgIGlmIChmb3JtRmllbGQpIHtcbiAgICAgIHRoaXMubmVnYXRpdmUgPSBmb3JtRmllbGQuaGFzQXR0cmlidXRlKCduZWdhdGl2ZScpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9kaWRMb2FkKSB7XG4gICAgICB0aGlzLl9jb21wb25lbnRTZXR1cCgpO1xuICAgIH1cbiAgICB0aGlzLnN5bmNOZWdhdGl2ZSgpO1xuXG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIChlOiBNb3VzZUV2ZW50KSA9PiB0aGlzLm9uT3B0aW9uQ2xpY2soZSksIHsgc2lnbmFsIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdvcmlnaW4nKSkge1xuICAgICAgdGhpcy5fcmVzZXRPcmlnaW5DbGlja0xpc3RlbmVyKHRoaXMub3JpZ2luLCBjaGFuZ2VkUHJvcGVydGllcy5nZXQoJ29yaWdpbicpKTtcbiAgICB9XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygndHJpZ2dlcicpKSB7XG4gICAgICB0aGlzLl9yZXNldFRyaWdnZXJDbGlja0xpc3RlbmVyKHRoaXMudHJpZ2dlciwgY2hhbmdlZFByb3BlcnRpZXMuZ2V0KCd0cmlnZ2VyJykpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCduZWdhdGl2ZScpKSB7XG4gICAgICB0aGlzLnN5bmNOZWdhdGl2ZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMuX2NvbXBvbmVudFNldHVwKCk7XG4gICAgdGhpcy5fZGlkTG9hZCA9IHRydWU7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl90cmlnZ2VyRXZlbnRzQ29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyPy5hYm9ydCgpO1xuICB9XG5cbiAgLyoqIFdoZW4gYW4gb3B0aW9uIGlzIHNlbGVjdGVkLCB1cGRhdGUgdGhlIGlucHV0IHZhbHVlIGFuZCBjbG9zZSB0aGUgYXV0b2NvbXBsZXRlLiAqL1xuICBwcm90ZWN0ZWQgb25PcHRpb25TZWxlY3RlZChldmVudDogQ3VzdG9tRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgU2JiT3B0aW9uQmFzZUVsZW1lbnQ7XG4gICAgaWYgKCF0YXJnZXQuc2VsZWN0ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBEZXNlbGVjdCB0aGUgcHJldmlvdXMgb3B0aW9uc1xuICAgIHRoaXMub3B0aW9uc1xuICAgICAgLmZpbHRlcigob3B0aW9uKSA9PiBvcHRpb24uaWQgIT09IHRhcmdldC5pZCAmJiBvcHRpb24uc2VsZWN0ZWQpXG4gICAgICAuZm9yRWFjaCgob3B0aW9uKSA9PiAob3B0aW9uLnNlbGVjdGVkID0gZmFsc2UpKTtcblxuICAgIGlmICh0aGlzLnRyaWdnZXJFbGVtZW50KSB7XG4gICAgICAvLyBTZXQgdGhlIG9wdGlvbiB2YWx1ZVxuICAgICAgdGhpcy50cmlnZ2VyRWxlbWVudC52YWx1ZSA9IHRhcmdldC52YWx1ZSBhcyBzdHJpbmc7XG5cbiAgICAgIC8vIE1hbnVhbGx5IHRyaWdnZXIgdGhlIGNoYW5nZSBldmVudHNcbiAgICAgIHRoaXMudHJpZ2dlckVsZW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NoYW5nZScsIHsgYnViYmxlczogdHJ1ZSB9KSk7XG4gICAgICB0aGlzLnRyaWdnZXJFbGVtZW50LmRpc3BhdGNoRXZlbnQobmV3IElucHV0RXZlbnQoJ2lucHV0JywgeyBidWJibGVzOiB0cnVlLCBjb21wb3NlZDogdHJ1ZSB9KSk7XG4gICAgfVxuXG4gICAgdGhpcy5jbG9zZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlU2xvdGNoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9oaWdobGlnaHRPcHRpb25zKHRoaXMudHJpZ2dlckVsZW1lbnQ/LnZhbHVlKTtcbiAgfVxuXG4gIC8qKiBUaGUgYXV0b2NvbXBsZXRlIHNob3VsZCBpbmhlcml0ICdyZWFkb25seScgc3RhdGUgZnJvbSB0aGUgdHJpZ2dlci4gKi9cbiAgcHJpdmF0ZSBnZXQgX3JlYWRvbmx5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRyaWdnZXJFbGVtZW50Py5oYXNBdHRyaWJ1dGUoJ3JlYWRvbmx5JykgPz8gZmFsc2U7XG4gIH1cblxuICAvKiogUmVtb3ZlcyB0cmlnZ2VyIGNsaWNrIGxpc3RlbmVyIG9uIHRyaWdnZXIgY2hhbmdlLiAqL1xuICBwcml2YXRlIF9yZXNldE9yaWdpbkNsaWNrTGlzdGVuZXIoXG4gICAgbmV3VmFsdWU/OiBzdHJpbmcgfCBIVE1MRWxlbWVudCxcbiAgICBvbGRWYWx1ZT86IHN0cmluZyB8IEhUTUxFbGVtZW50LFxuICApOiB2b2lkIHtcbiAgICBpZiAobmV3VmFsdWUgIT09IG9sZFZhbHVlKSB7XG4gICAgICB0aGlzLl9jb21wb25lbnRTZXR1cCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBSZW1vdmVzIHRyaWdnZXIgY2xpY2sgbGlzdGVuZXIgb24gdHJpZ2dlciBjaGFuZ2UuICovXG4gIHByaXZhdGUgX3Jlc2V0VHJpZ2dlckNsaWNrTGlzdGVuZXIoXG4gICAgbmV3VmFsdWU/OiBzdHJpbmcgfCBIVE1MRWxlbWVudCxcbiAgICBvbGRWYWx1ZT86IHN0cmluZyB8IEhUTUxFbGVtZW50LFxuICApOiB2b2lkIHtcbiAgICBpZiAobmV3VmFsdWUgIT09IG9sZFZhbHVlKSB7XG4gICAgICB0aGlzLl9jb21wb25lbnRTZXR1cCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NvbXBvbmVudFNldHVwKCk6IHZvaWQge1xuICAgIGlmIChpc1NlcnZlcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl90cmlnZ2VyRXZlbnRzQ29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyPy5hYm9ydCgpO1xuXG4gICAgdGhpcy5fb3JpZ2luRWxlbWVudCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnRvZ2dsZUF0dHJpYnV0ZShcbiAgICAgICdkYXRhLW9wdGlvbi1wYW5lbC1vcmlnaW4tYm9yZGVybGVzcycsXG4gICAgICAhIXRoaXMuY2xvc2VzdD8uKCdzYmItZm9ybS1maWVsZCcpPy5oYXNBdHRyaWJ1dGUoJ2JvcmRlcmxlc3MnKSxcbiAgICApO1xuXG4gICAgdGhpcy5fYmluZFRvKHRoaXMuX2dldFRyaWdnZXJFbGVtZW50KCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlIHRoZSBlbGVtZW50IHdoZXJlIHRoZSBhdXRvY29tcGxldGUgd2lsbCBiZSBhdHRhY2hlZC5cbiAgICogQHJldHVybnMgJ29yaWdpbicgb3IgdGhlIGZpcnN0ICdzYmItZm9ybS1maWVsZCcgYW5jZXN0b3IuXG4gICAqL1xuICBwcml2YXRlIF9maW5kT3JpZ2luRWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgbGV0IHJlc3VsdDogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQgfCBudWxsO1xuXG4gICAgaWYgKCF0aGlzLm9yaWdpbikge1xuICAgICAgcmVzdWx0ID0gdGhpcy5jbG9zZXN0Py4oJ3NiYi1mb3JtLWZpZWxkJyk/LnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3I/LignI292ZXJsYXktYW5jaG9yJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdCA9IGZpbmRSZWZlcmVuY2VkRWxlbWVudCh0aGlzLm9yaWdpbik7XG4gICAgfVxuXG4gICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0Nhbm5vdCBmaW5kIHRoZSBvcmlnaW4gZWxlbWVudC4gUGxlYXNlIHNwZWNpZnkgYSB2YWxpZCBlbGVtZW50IG9yIHJlYWQgdGhlIFwib3JpZ2luXCIgcHJvcCBkb2N1bWVudGF0aW9uJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZSB0aGUgZWxlbWVudCB0aGF0IHdpbGwgdHJpZ2dlciB0aGUgYXV0b2NvbXBsZXRlIG9wZW5pbmcuXG4gICAqIEByZXR1cm5zICd0cmlnZ2VyJyBvciB0aGUgZmlyc3QgJ2lucHV0JyBpbnNpZGUgdGhlIG9yaWdpbiBlbGVtZW50LlxuICAgKi9cbiAgcHJpdmF0ZSBfZ2V0VHJpZ2dlckVsZW1lbnQoKTogSFRNTElucHV0RWxlbWVudCB7XG4gICAgaWYgKCF0aGlzLnRyaWdnZXIpIHtcbiAgICAgIHJldHVybiB0aGlzLmNsb3Nlc3Q/Lignc2JiLWZvcm0tZmllbGQnKT8ucXVlcnlTZWxlY3RvcignaW5wdXQnKSBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdCA9IGZpbmRSZWZlcmVuY2VkRWxlbWVudDxIVE1MSW5wdXRFbGVtZW50Pih0aGlzLnRyaWdnZXIpO1xuXG4gICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0Nhbm5vdCBmaW5kIHRoZSB0cmlnZ2VyIGVsZW1lbnQuIFBsZWFzZSBzcGVjaWZ5IGEgdmFsaWQgZWxlbWVudCBvciByZWFkIHRoZSBcInRyaWdnZXJcIiBwcm9wIGRvY3VtZW50YXRpb24nLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBfYmluZFRvKHRyaWdnZXJFbGVtOiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XG4gICAgaWYgKCF0cmlnZ2VyRWxlbSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFJlc2V0IGF0dHJpYnV0ZXMgdG8gdGhlIG9sZCB0cmlnZ2VyIGFuZCBhZGQgdGhlbSB0byB0aGUgbmV3IG9uZVxuICAgIHRoaXMuX3JlbW92ZVRyaWdnZXJBdHRyaWJ1dGVzKHRoaXMudHJpZ2dlckVsZW1lbnQpO1xuICAgIHRoaXMuc2V0VHJpZ2dlckF0dHJpYnV0ZXModHJpZ2dlckVsZW0pO1xuXG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQgPSB0cmlnZ2VyRWxlbTtcblxuICAgIHRoaXMuX3NldHVwVHJpZ2dlckV2ZW50cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0dXBUcmlnZ2VyRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMuX3RyaWdnZXJFdmVudHNDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuXG4gICAgLy8gT3BlbiB0aGUgb3ZlcmxheSBvbiBmb2N1cywgY2xpY2ssIGlucHV0IGFuZCBgQXJyb3dEb3duYCBldmVudFxuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3VzJywgKCkgPT4gdGhpcy5vcGVuKCksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fdHJpZ2dlckV2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gdGhpcy5vcGVuKCksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fdHJpZ2dlckV2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAnaW5wdXQnLFxuICAgICAgKGV2ZW50KSA9PiB7XG4gICAgICAgIHRoaXMub3BlbigpO1xuICAgICAgICB0aGlzLl9oaWdobGlnaHRPcHRpb25zKChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWUpO1xuICAgICAgfSxcbiAgICAgIHsgc2lnbmFsOiB0aGlzLl90cmlnZ2VyRXZlbnRzQ29udHJvbGxlci5zaWduYWwgfSxcbiAgICApO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAna2V5ZG93bicsXG4gICAgICAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHRoaXMuX2Nsb3NlZFBhbmVsS2V5Ym9hcmRJbnRlcmFjdGlvbihldmVudCksXG4gICAgICB7IHNpZ25hbDogdGhpcy5fdHJpZ2dlckV2ZW50c0NvbnRyb2xsZXIuc2lnbmFsIH0sXG4gICAgKTtcbiAgfVxuXG4gIC8vIFNldCBvdmVybGF5IHBvc2l0aW9uLCB3aWR0aCBhbmQgbWF4IGhlaWdodFxuICBwcml2YXRlIF9zZXRPdmVybGF5UG9zaXRpb24oKTogdm9pZCB7XG4gICAgc2V0T3ZlcmxheVBvc2l0aW9uKFxuICAgICAgdGhpcy5fb3ZlcmxheSxcbiAgICAgIHRoaXMub3JpZ2luRWxlbWVudCxcbiAgICAgIHRoaXMuX29wdGlvbkNvbnRhaW5lcixcbiAgICAgIHRoaXMuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcignLnNiYi1hdXRvY29tcGxldGVfX2NvbnRhaW5lcicpISxcbiAgICAgIHRoaXMsXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBPbiBvcGVuL2Nsb3NlIGFuaW1hdGlvbiBlbmQuXG4gICAqICBJbiByYXJlIGNhc2VzIGl0IGNhbiBiZSB0aGF0IHRoZSBhbmltYXRpb25FbmQgZXZlbnQgaXMgdHJpZ2dlcmVkIHR3aWNlLlxuICAgKiAgVG8gYXZvaWQgZW50ZXJpbmcgYSBjb3JydXB0IHN0YXRlLCBleGl0IHdoZW4gc3RhdGUgaXMgbm90IGV4cGVjdGVkLlxuICAgKi9cbiAgcHJpdmF0ZSBfb25BbmltYXRpb25FbmQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdvcGVuJyAmJiB0aGlzLnN0YXRlID09PSAnb3BlbmluZycpIHtcbiAgICAgIHRoaXMuX29uT3BlbkFuaW1hdGlvbkVuZCgpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyAmJiB0aGlzLnN0YXRlID09PSAnY2xvc2luZycpIHtcbiAgICAgIHRoaXMuX29uQ2xvc2VBbmltYXRpb25FbmQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9vbk9wZW5BbmltYXRpb25FbmQoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuX2F0dGFjaE9wZW5QYW5lbEV2ZW50cygpO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICd0cnVlJyk7XG4gICAgdGhpcy5kaWRPcGVuLmVtaXQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX29uQ2xvc2VBbmltYXRpb25FbmQoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zZWQnO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICdmYWxzZScpO1xuICAgIHRoaXMucmVzZXRBY3RpdmVFbGVtZW50KCk7XG4gICAgdGhpcy5fb3B0aW9uQ29udGFpbmVyLnNjcm9sbFRvcCA9IDA7XG4gICAgdGhpcy5kaWRDbG9zZS5lbWl0KCk7XG4gIH1cblxuICBwcml2YXRlIF9hdHRhY2hPcGVuUGFuZWxFdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcblxuICAgIC8vIFJlY2FsY3VsYXRlIHRoZSBvdmVybGF5IHBvc2l0aW9uIG9uIHNjcm9sbCBhbmQgd2luZG93IHJlc2l6ZVxuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsICgpID0+IHRoaXMuX3NldE92ZXJsYXlQb3NpdGlvbigpLCB7XG4gICAgICBwYXNzaXZlOiB0cnVlLFxuICAgICAgc2lnbmFsOiB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgKCkgPT4gdGhpcy5fc2V0T3ZlcmxheVBvc2l0aW9uKCksIHtcbiAgICAgIHBhc3NpdmU6IHRydWUsXG4gICAgICBzaWduYWw6IHRoaXMuX29wZW5QYW5lbEV2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuXG4gICAgLy8gQ2xvc2UgYXV0b2NvbXBsZXRlIG9uIGJhY2tkcm9wIGNsaWNrXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKGV2KSA9PiB0aGlzLl9wb2ludGVyRG93bkxpc3RlbmVyKGV2KSwge1xuICAgICAgc2lnbmFsOiB0aGlzLl9vcGVuUGFuZWxFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcnVwJywgKGV2KSA9PiB0aGlzLl9jbG9zZU9uQmFja2Ryb3BDbGljayhldiksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG5cbiAgICAvLyBLZXlib2FyZCBpbnRlcmFjdGlvbnNcbiAgICB0aGlzLnRyaWdnZXJFbGVtZW50Py5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgJ2tleWRvd24nLFxuICAgICAgKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB0aGlzLm9wZW5lZFBhbmVsS2V5Ym9hcmRJbnRlcmFjdGlvbihldmVudCksXG4gICAgICB7XG4gICAgICAgIHNpZ25hbDogdGhpcy5fb3BlblBhbmVsRXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgICB9LFxuICAgICk7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgcG9pbnRlcmRvd24gZXZlbnQgdGFyZ2V0IGlzIHRyaWdnZXJlZCBvbiB0aGUgbWVudS5cbiAgcHJpdmF0ZSBfcG9pbnRlckRvd25MaXN0ZW5lciA9IChldmVudDogUG9pbnRlckV2ZW50KTogdm9pZCA9PiB7XG4gICAgdGhpcy5faXNQb2ludGVyRG93bkV2ZW50T25NZW51ID0gaXNFdmVudE9uRWxlbWVudCh0aGlzLl9vdmVybGF5LCBldmVudCk7XG4gIH07XG5cbiAgLy8gSWYgdGhlIGNsaWNrIGlzIG91dHNpZGUgdGhlIGF1dG9jb21wbGV0ZSwgY2xvc2VzIHRoZSBwYW5lbC5cbiAgcHJpdmF0ZSBfY2xvc2VPbkJhY2tkcm9wQ2xpY2sgPSAoZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQgPT4ge1xuICAgIGlmIChcbiAgICAgICF0aGlzLl9pc1BvaW50ZXJEb3duRXZlbnRPbk1lbnUgJiZcbiAgICAgICFpc0V2ZW50T25FbGVtZW50KHRoaXMuX292ZXJsYXksIGV2ZW50KSAmJlxuICAgICAgIWlzRXZlbnRPbkVsZW1lbnQodGhpcy5vcmlnaW5FbGVtZW50LCBldmVudClcbiAgICApIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH07XG5cbiAgcHJpdmF0ZSBfY2xvc2VkUGFuZWxLZXlib2FyZEludGVyYWN0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdjbG9zZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ0VudGVyJzpcbiAgICAgIGNhc2UgJ0Fycm93RG93bic6XG4gICAgICBjYXNlICdBcnJvd1VwJzpcbiAgICAgICAgdGhpcy5vcGVuKCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBIaWdobGlnaHQgdGhlIHNlYXJjaGVkIHRleHQgb24gdGhlIG9wdGlvbnMuICovXG4gIHByaXZhdGUgX2hpZ2hsaWdodE9wdGlvbnMoc2VhcmNoVGVybT86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChzZWFyY2hUZXJtID09PSBudWxsIHx8IHNlYXJjaFRlcm0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm9wdGlvbnMuZm9yRWFjaCgob3B0aW9uKSA9PiBvcHRpb24uaGlnaGxpZ2h0KHNlYXJjaFRlcm0pKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlbW92ZVRyaWdnZXJBdHRyaWJ1dGVzKGVsZW1lbnQ/OiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XG4gICAgcmVtb3ZlQXJpYUNvbWJvQm94QXR0cmlidXRlcyhlbGVtZW50KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1hdXRvY29tcGxldGVfX2dhcC1maXhcIj48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItYXV0b2NvbXBsZXRlX19jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1hdXRvY29tcGxldGVfX2dhcC1maXhcIj4ke292ZXJsYXlHYXBGaXhDb3JuZXJzKCl9PC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25BbmltYXRpb25FbmR9XG4gICAgICAgICAgY2xhc3M9XCJzYmItYXV0b2NvbXBsZXRlX19wYW5lbFwiXG4gICAgICAgICAgP2RhdGEtb3Blbj0ke3RoaXMuc3RhdGUgPT09ICdvcGVuZWQnIHx8IHRoaXMuc3RhdGUgPT09ICdvcGVuaW5nJ31cbiAgICAgICAgICAke3JlZigob3ZlcmxheVJlZj86IEVsZW1lbnQpID0+ICh0aGlzLl9vdmVybGF5ID0gb3ZlcmxheVJlZiBhcyBIVE1MRWxlbWVudCkpfVxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1hdXRvY29tcGxldGVfX3dyYXBwZXJcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItYXV0b2NvbXBsZXRlX19vcHRpb25zXCJcbiAgICAgICAgICAgICAgcm9sZT0keyFhcmlhUm9sZU9uSG9zdCA/IHRoaXMucGFuZWxSb2xlIDogbm90aGluZ31cbiAgICAgICAgICAgICAgaWQ9JHshYXJpYVJvbGVPbkhvc3QgPyB0aGlzLm92ZXJsYXlJZCA6IG5vdGhpbmd9XG4gICAgICAgICAgICAgICR7cmVmKChjb250YWluZXJSZWYpID0+ICh0aGlzLl9vcHRpb25Db250YWluZXIgPSBjb250YWluZXJSZWYgYXMgSFRNTEVsZW1lbnQpKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNsb3QgQHNsb3RjaGFuZ2U9JHt0aGlzLl9oYW5kbGVTbG90Y2hhbmdlfT48L3Nsb3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG4iLCJpbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBnZXROZXh0RWxlbWVudEluZGV4IH0gZnJvbSAnLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7IGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGdldERvY3VtZW50V3JpdGluZ01vZGUsIGlzU2FmYXJpIH0gZnJvbSAnLi4vY29yZS9kb20uanMnO1xuaW1wb3J0IHsgc2V0QXJpYUNvbWJvQm94QXR0cmlidXRlcyB9IGZyb20gJy4uL2NvcmUvb3ZlcmxheS5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk9wdEdyb3VwRWxlbWVudCwgU2JiT3B0aW9uRWxlbWVudCB9IGZyb20gJy4uL29wdGlvbi5qcyc7XG5cbmltcG9ydCB7IFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IH0gZnJvbSAnLi9hdXRvY29tcGxldGUtYmFzZS1lbGVtZW50LmpzJztcblxubGV0IG5leHRJZCA9IDA7XG5cbi8qKlxuICogT24gU2FmYXJpLCB0aGUgYXJpYSByb2xlICdsaXN0Ym94JyBtdXN0IGJlIG9uIHRoZSBob3N0IGVsZW1lbnQsIG9yIGVsc2UgVm9pY2VPdmVyIHdvbid0IHdvcmsgYXQgYWxsLlxuICogT24gdGhlIG90aGVyIGhhbmQsIEpBV1MgYW5kIE5WREEgbmVlZCB0aGUgcm9sZSB0byBiZSBcImNsb3NlclwiIHRvIHRoZSBvcHRpb25zLCBvciBlbHNlIG9wdGdyb3VwcyB3b24ndCB3b3JrLlxuICovXG5jb25zdCBhcmlhUm9sZU9uSG9zdCA9IGlzU2FmYXJpO1xuXG4vKipcbiAqIENvbWJpbmVkIHdpdGggYSBuYXRpdmUgaW5wdXQsIGl0IGRpc3BsYXlzIGEgcGFuZWwgd2l0aCBhIGxpc3Qgb2YgYXZhaWxhYmxlIG9wdGlvbnMuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1vcHRpb25gIG9yIGBzYmItb3B0Z3JvdXBgIGVsZW1lbnRzIHRvIHRoZSBgc2JiLWF1dG9jb21wbGV0ZWAuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsT3BlbiAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLWF1dG9jb21wbGV0ZWAgc3RhcnRzIHRoZSBvcGVuaW5nIHRyYW5zaXRpb24uIENhbiBiZSBjYW5jZWxlZC5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZE9wZW4gLSBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1hdXRvY29tcGxldGVgIGlzIG9wZW5lZC5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IHdpbGxDbG9zZSAtIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLWF1dG9jb21wbGV0ZWAgYmVnaW5zIHRoZSBjbG9zaW5nIHRyYW5zaXRpb24uIENhbiBiZSBjYW5jZWxlZC5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZENsb3NlIC0gRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItYXV0b2NvbXBsZXRlYCBpcyBjbG9zZWQuXG4gKiBAY3NzcHJvcCBbLS1zYmItYXV0b2NvbXBsZXRlLXotaW5kZXg9dmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KV0gLSBUbyBzcGVjaWZ5IGEgY3VzdG9tIHN0YWNrIG9yZGVyLFxuICogdGhlIGB6LWluZGV4YCBjYW4gYmUgb3ZlcnJpZGRlbiBieSBkZWZpbmluZyB0aGlzIENTUyB2YXJpYWJsZS4gVGhlIGRlZmF1bHQgYHotaW5kZXhgIG9mIHRoZVxuICogY29tcG9uZW50IGlzIHNldCB0byBgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KWAgd2l0aCBhIHZhbHVlIG9mIGAxMDAwYC5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1hdXRvY29tcGxldGUnKVxuQGhvc3RBdHRyaWJ1dGVzKHtcbiAgZGlyOiBnZXREb2N1bWVudFdyaXRpbmdNb2RlKCksXG4gIHJvbGU6IGFyaWFSb2xlT25Ib3N0ID8gJ2xpc3Rib3gnIDogbnVsbCxcbn0pXG5leHBvcnQgY2xhc3MgU2JiQXV0b2NvbXBsZXRlRWxlbWVudCBleHRlbmRzIFNiYkF1dG9jb21wbGV0ZUJhc2VFbGVtZW50IHtcbiAgcHJvdGVjdGVkIG92ZXJsYXlJZCA9IGBzYmItYXV0b2NvbXBsZXRlLSR7KytuZXh0SWR9YDtcbiAgcHJvdGVjdGVkIHBhbmVsUm9sZSA9ICdsaXN0Ym94JztcbiAgcHJpdmF0ZSBfYWN0aXZlSXRlbUluZGV4ID0gLTE7XG5cbiAgcHJvdGVjdGVkIGdldCBvcHRpb25zKCk6IFNiYk9wdGlvbkVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi1vcHRpb24nKSA/PyBbXSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25PcHRpb25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgIChldmVudC50YXJnZXQgYXMgRWxlbWVudCkubG9jYWxOYW1lICE9PSAnc2JiLW9wdGlvbicgfHxcbiAgICAgIChldmVudC50YXJnZXQgYXMgU2JiT3B0aW9uRWxlbWVudCkuZGlzYWJsZWRcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jbG9zZSgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgY29uc3Qgc2lnbmFsID0gdGhpcy5hYm9ydC5zaWduYWw7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgJ29wdGlvblNlbGVjdGlvbkNoYW5nZScsXG4gICAgICAoZTogQ3VzdG9tRXZlbnQ8dm9pZD4pID0+IHRoaXMub25PcHRpb25TZWxlY3RlZChlKSxcbiAgICAgIHsgc2lnbmFsIH0sXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzeW5jTmVnYXRpdmUoKTogdm9pZCB7XG4gICAgdGhpcy5xdWVyeVNlbGVjdG9yQWxsPy4oJ3NiYi1kaXZpZGVyJykuZm9yRWFjaCgoZGl2aWRlcikgPT4gKGRpdmlkZXIubmVnYXRpdmUgPSB0aGlzLm5lZ2F0aXZlKSk7XG5cbiAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGw/LjxTYmJPcHRpb25FbGVtZW50IHwgU2JiT3B0R3JvdXBFbGVtZW50PihcbiAgICAgICdzYmItb3B0aW9uLCBzYmItb3B0Z3JvdXAnLFxuICAgICkuZm9yRWFjaCgoZWxlbWVudCkgPT4gZWxlbWVudC50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtbmVnYXRpdmUnLCB0aGlzLm5lZ2F0aXZlKSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3BlbmVkUGFuZWxLZXlib2FyZEludGVyYWN0aW9uKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdvcGVuZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ0VzY2FwZSc6XG4gICAgICBjYXNlICdUYWInOlxuICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlICdFbnRlcic6XG4gICAgICAgIHRoaXMuc2VsZWN0QnlLZXlib2FyZCgpO1xuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnQXJyb3dEb3duJzpcbiAgICAgIGNhc2UgJ0Fycm93VXAnOlxuICAgICAgICB0aGlzLnNldE5leHRBY3RpdmVPcHRpb24oZXZlbnQpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgc2VsZWN0QnlLZXlib2FyZCgpOiB2b2lkIHtcbiAgICBjb25zdCBhY3RpdmVPcHRpb24gPSB0aGlzLm9wdGlvbnNbdGhpcy5fYWN0aXZlSXRlbUluZGV4XTtcblxuICAgIGlmIChhY3RpdmVPcHRpb24pIHtcbiAgICAgIGFjdGl2ZU9wdGlvbi5zZXRTZWxlY3RlZFZpYVVzZXJJbnRlcmFjdGlvbih0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgc2V0TmV4dEFjdGl2ZU9wdGlvbihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGZpbHRlcmVkT3B0aW9ucyA9IHRoaXMub3B0aW9ucy5maWx0ZXIoXG4gICAgICAob3B0KSA9PiAhb3B0LmRpc2FibGVkICYmICFvcHQuaGFzQXR0cmlidXRlKCdkYXRhLWdyb3VwLWRpc2FibGVkJyksXG4gICAgKTtcblxuICAgIC8vIEdldCBhbmQgYWN0aXZhdGUgdGhlIG5leHQgYWN0aXZlIG9wdGlvblxuICAgIGNvbnN0IG5leHQgPSBnZXROZXh0RWxlbWVudEluZGV4KGV2ZW50LCB0aGlzLl9hY3RpdmVJdGVtSW5kZXgsIGZpbHRlcmVkT3B0aW9ucy5sZW5ndGgpO1xuICAgIGNvbnN0IG5leHRBY3RpdmVPcHRpb24gPSBmaWx0ZXJlZE9wdGlvbnNbbmV4dF07XG4gICAgbmV4dEFjdGl2ZU9wdGlvbi5hY3RpdmUgPSB0cnVlO1xuICAgIHRoaXMudHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1hY3RpdmVkZXNjZW5kYW50JywgbmV4dEFjdGl2ZU9wdGlvbi5pZCk7XG4gICAgbmV4dEFjdGl2ZU9wdGlvbi5zY3JvbGxJbnRvVmlldyh7IGJsb2NrOiAnbmVhcmVzdCcgfSk7XG5cbiAgICAvLyBSZXNldCB0aGUgcHJldmlvdXMgYWN0aXZlIG9wdGlvblxuICAgIGNvbnN0IGxhc3RBY3RpdmVPcHRpb24gPSBmaWx0ZXJlZE9wdGlvbnNbdGhpcy5fYWN0aXZlSXRlbUluZGV4XTtcbiAgICBpZiAobGFzdEFjdGl2ZU9wdGlvbikge1xuICAgICAgbGFzdEFjdGl2ZU9wdGlvbi5hY3RpdmUgPSBmYWxzZTtcbiAgICB9XG5cbiAgICB0aGlzLl9hY3RpdmVJdGVtSW5kZXggPSBuZXh0O1xuICB9XG5cbiAgcHJvdGVjdGVkIHJlc2V0QWN0aXZlRWxlbWVudCgpOiB2b2lkIHtcbiAgICBjb25zdCBhY3RpdmVFbGVtZW50ID0gdGhpcy5vcHRpb25zW3RoaXMuX2FjdGl2ZUl0ZW1JbmRleF07XG5cbiAgICBpZiAoYWN0aXZlRWxlbWVudCkge1xuICAgICAgYWN0aXZlRWxlbWVudC5hY3RpdmUgPSBmYWxzZTtcbiAgICB9XG4gICAgdGhpcy5fYWN0aXZlSXRlbUluZGV4ID0gLTE7XG4gICAgdGhpcy50cmlnZ2VyRWxlbWVudD8ucmVtb3ZlQXR0cmlidXRlKCdhcmlhLWFjdGl2ZWRlc2NlbmRhbnQnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZXRUcmlnZ2VyQXR0cmlidXRlcyhlbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50KTogdm9pZCB7XG4gICAgc2V0QXJpYUNvbWJvQm94QXR0cmlidXRlcyhlbGVtZW50LCBhcmlhUm9sZU9uSG9zdCA/IHRoaXMuaWQgOiB0aGlzLm92ZXJsYXlJZCwgZmFsc2UpO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItYXV0b2NvbXBsZXRlJzogU2JiQXV0b2NvbXBsZXRlRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbImFyaWFSb2xlT25Ib3N0IiwiX19kZWNvcmF0ZUNsYXNzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTZCQSxNQUFNQSxtQkFBaUI7QUFFaEIsTUFBZSw4QkFBZixNQUFlLG9DQUFtQztBQUFBLEVBQ3ZELGtCQUFrQix1QkFBdUI7QUFDM0MsRUFBRTtBQUFBLEVBRkssY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBdUNLLFNBQUEsUUFBUSxJQUFJLDRCQUE0QixJQUFJO0FBS3RELFNBQVEsV0FBVztBQUNuQixTQUFRLDRCQUFxQztBQWdUckMsU0FBQSx1QkFBdUIsQ0FBQyxVQUE4QjtBQUM1RCxXQUFLLDRCQUE0QixpQkFBaUIsS0FBSyxVQUFVLEtBQUs7QUFBQSxJQUFBO0FBSWhFLFNBQUEsd0JBQXdCLENBQUMsVUFBOEI7QUFDN0QsVUFDRSxDQUFDLEtBQUssNkJBQ04sQ0FBQyxpQkFB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
@@ -1,6 +1,5 @@
1
1
  import { CSSResultGroup, TemplateResult } from 'lit';
2
2
  import { SbbLinkBaseElement } from '../../core/base-elements.js';
3
-
4
3
  declare const SbbBreadcrumbElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof SbbLinkBaseElement;
5
4
  /**
6
5
  * It displays a link to a page; used within a `sbb-breadcrumb-group` it can display the path to the current page.
@@ -1,7 +1,6 @@
1
1
  import { CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit';
2
2
  import { WithListChildren } from '../../core/mixins.js';
3
3
  import { SbbBreadcrumbElement } from '../breadcrumb.js';
4
-
5
4
  declare const SbbBreadcrumbGroupElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbNamedSlotListMixinType<SbbBreadcrumbElement>> & typeof LitElement;
6
5
  /**
7
6
  * It can be used as a container for one or more `sbb-breadcrumb` component.
@@ -267,10 +267,10 @@ let SbbBreadcrumbGroupElement = class extends SbbNamedSlotListMixin(LitElement)
267
267
  `;
268
268
  }
269
269
  _renderExpanded() {
270
- return this.listSlotNames().map(
271
- (name, index, array) => html`
270
+ return this.listSlotEntries().map(
271
+ (slot, index, array) => html`
272
272
  <li class="sbb-breadcrumb-group__item">
273
- <slot name=${name}></slot>
273
+ <slot name=${slot.name}></slot>
274
274
  ${index !== array.length - 1 ? html`<sbb-icon
275
275
  name="chevron-small-right-small"
276
276
  class="sbb-breadcrumb-group__divider-icon"
@@ -301,4 +301,4 @@ SbbBreadcrumbGroupElement = __decorateClass([
301
301
  export {
302
302
  SbbBreadcrumbGroupElement
303
303
  };
304
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi1ncm91cC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi1ncm91cC9icmVhZGNydW1iLWdyb3VwLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIG5vdGhpbmcsXG4gIExpdEVsZW1lbnQsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHtcbiAgZ2V0TmV4dEVsZW1lbnRJbmRleCxcbiAgaXNBcnJvd0tleVByZXNzZWQsXG4gIHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvcixcbn0gZnJvbSAnLi4vLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlciwgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IGkxOG5CcmVhZGNydW1iRWxsaXBzaXNCdXR0b25MYWJlbCB9IGZyb20gJy4uLy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgeyBTYmJOYW1lZFNsb3RMaXN0TWl4aW4sIHR5cGUgV2l0aExpc3RDaGlsZHJlbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IEFnbm9zdGljUmVzaXplT2JzZXJ2ZXIgfSBmcm9tICcuLi8uLi9jb3JlL29ic2VydmVycy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYkJyZWFkY3J1bWJFbGVtZW50IH0gZnJvbSAnLi4vYnJlYWRjcnVtYi5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2JyZWFkY3J1bWItZ3JvdXAuc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi8uLi9pY29uLmpzJztcblxuY29uc3QgTUlOX0JSRUFEQ1JVTUJTX1RPX0NPTExBUFNFID0gMztcblxuLyoqXG4gKiBJdCBjYW4gYmUgdXNlZCBhcyBhIGNvbnRhaW5lciBmb3Igb25lIG9yIG1vcmUgYHNiYi1icmVhZGNydW1iYCBjb21wb25lbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1icmVhZGNydW1iYCBlbGVtZW50cy5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1icmVhZGNydW1iLWdyb3VwJylcbkBob3N0QXR0cmlidXRlcyh7XG4gIHJvbGU6ICduYXZpZ2F0aW9uJyxcbn0pXG5leHBvcnQgY2xhc3MgU2JiQnJlYWRjcnVtYkdyb3VwRWxlbWVudCBleHRlbmRzIFNiYk5hbWVkU2xvdExpc3RNaXhpbjxcbiAgU2JiQnJlYWRjcnVtYkVsZW1lbnQsXG4gIHR5cGVvZiBMaXRFbGVtZW50XG4+KExpdEVsZW1lbnQpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBsaXN0Q2hpbGRMb2NhbE5hbWVzID0gWydzYmItYnJlYWRjcnVtYiddO1xuXG4gIC8qIFRoZSBzdGF0ZSBvZiB0aGUgYnJlYWRjcnVtYiBncm91cC4gKi9cbiAgQHN0YXRlKClcbiAgcHJpdmF0ZSBzZXQgX3N0YXRlKHN0YXRlOiAnY29sbGFwc2VkJyB8ICdtYW51YWxseS1leHBhbmRlZCcgfCBudWxsKSB7XG4gICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUodGhpcywgJ2RhdGEtc3RhdGUnLCBzdGF0ZSk7XG4gIH1cbiAgcHJpdmF0ZSBnZXQgX3N0YXRlKCk6ICdjb2xsYXBzZWQnIHwgJ21hbnVhbGx5LWV4cGFuZGVkJyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgnZGF0YS1zdGF0ZScpIGFzICdjb2xsYXBzZWQnIHwgJ21hbnVhbGx5LWV4cGFuZGVkJyB8IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9yZXNpemVPYnNlcnZlciA9IG5ldyBBZ25vc3RpY1Jlc2l6ZU9ic2VydmVyKCgpID0+IHRoaXMuX2V2YWx1YXRlQ29sbGFwc2VkU3RhdGUoKSk7XG4gIHByaXZhdGUgX2Fib3J0ID0gbmV3IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9tYXJrRm9yRm9jdXMgPSBmYWxzZTtcblxuICBwcml2YXRlIF9oYW5kbGVLZXlEb3duKGV2dDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICF0aGlzLmxpc3RDaGlsZHJlbi5sZW5ndGggfHxcbiAgICAgIC8vIGRvbid0IHRyYXAgbmVzdGVkIGhhbmRsaW5nXG4gICAgICAoKGV2dC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpICE9PSB0aGlzICYmIChldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5wYXJlbnRFbGVtZW50ICE9PSB0aGlzKVxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChpc0Fycm93S2V5UHJlc3NlZChldnQpKSB7XG4gICAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdjb2xsYXBzZWQnKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb2N1c05leHRDb2xsYXBzZWQoZXZ0KTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX2ZvY3VzTmV4dChldnQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIGNvbnN0IHNpZ25hbCA9IHRoaXMuX2Fib3J0LnNpZ25hbDtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4gdGhpcy5faGFuZGxlS2V5RG93bihlKSwgeyBzaWduYWwgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMpO1xuICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkYXRhLWxvYWRlZCcsIHRydWUpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPFdpdGhMaXN0Q2hpbGRyZW48dGhpcz4+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsaXN0Q2hpbGRyZW4nKSkge1xuICAgICAgdGhpcy5fc3luY0JyZWFkY3J1bWJzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPFdpdGhMaXN0Q2hpbGRyZW48dGhpcz4+KTogdm9pZCB7XG4gICAgc3VwZXIudXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbGlzdENoaWxkcmVuJykpIHtcbiAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4gdGhpcy5fZXZhbHVhdGVDb2xsYXBzZWRTdGF0ZSgpKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX21hcmtGb3JGb2N1cyAmJiBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnKSB7XG4gICAgICB0aGlzLmxpc3RDaGlsZHJlblsxXT8uZm9jdXMoKTtcblxuICAgICAgLy8gUmVzZXQgbWFyayBmb3IgZm9jdXNcbiAgICAgIHRoaXMuX21hcmtGb3JGb2N1cyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBBcHBseSB0aGUgYXJpYS1jdXJyZW50IGF0dHJpYnV0ZSB0byB0aGUgbGFzdCBzYmItYnJlYWRjcnVtYiBlbGVtZW50LiAqL1xuICBwcml2YXRlIF9zeW5jQnJlYWRjcnVtYnMoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0Q2hpbGRyZW5cbiAgICAgIC5zbGljZSgwLCAtMSlcbiAgICAgIC5maWx0ZXIoKGMpID0+IGMuaGFzQXR0cmlidXRlKCdhcmlhLWN1cnJlbnQnKSlcbiAgICAgIC5mb3JFYWNoKChjKSA9PiBjLnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1jdXJyZW50JykpO1xuICAgIHRoaXMubGlzdENoaWxkcmVuW3RoaXMubGlzdENoaWxkcmVuLmxlbmd0aCAtIDFdPy5zZXRBdHRyaWJ1dGUoJ2FyaWEtY3VycmVudCcsICdwYWdlJyk7XG5cbiAgICAvLyBJZiBpdCBpcyBub3QgZXhwYW5kYWJsZSwgcmVzZXQgc3RhdGVcbiAgICBpZiAodGhpcy5saXN0Q2hpbGRyZW4ubGVuZ3RoIDwgTUlOX0JSRUFEQ1JVTUJTX1RPX0NPTExBUFNFKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGZvY3VzIG9uIHRoZSBjb3JyZWN0IGVsZW1lbnQgd2hlbiB0aGUgZWxsaXBzaXMgYnJlYWRjcnVtYiBpcyBkaXNwbGF5ZWQgYW5kIHRoZSB1c2VyIGlzIG5hdmlnYXRpbmcgd2l0aCBrZXlib2FyZCdzIGFycm93cy5cbiAgICovXG4gIHByaXZhdGUgX2ZvY3VzTmV4dENvbGxhcHNlZChldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBhcnJheUNvbGxhcHNlZDogU2JiQnJlYWRjcnVtYkVsZW1lbnRbXSA9IFtcbiAgICAgIHRoaXMubGlzdENoaWxkcmVuWzBdLFxuICAgICAgdGhpcy5zaGFkb3dSb290IS5xdWVyeVNlbGVjdG9yKCcjc2JiLWJyZWFkY3J1bWItZWxsaXBzaXMnKSBhcyBTYmJCcmVhZGNydW1iRWxlbWVudCxcbiAgICAgIHRoaXMubGlzdENoaWxkcmVuW3RoaXMubGlzdENoaWxkcmVuLmxlbmd0aCAtIDFdLFxuICAgIF07XG4gICAgdGhpcy5fZm9jdXNOZXh0KGV2dCwgYXJyYXlDb2xsYXBzZWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZm9jdXNOZXh0KFxuICAgIGV2dDogS2V5Ym9hcmRFdmVudCxcbiAgICBicmVhZGNydW1iczogU2JiQnJlYWRjcnVtYkVsZW1lbnRbXSA9IHRoaXMubGlzdENoaWxkcmVuLFxuICApOiB2b2lkIHtcbiAgICBjb25zdCBjdXJyZW50OiBudW1iZXIgPSBicmVhZGNydW1icy5maW5kSW5kZXgoXG4gICAgICAoZSkgPT4gZSA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCB8fCBlID09PSB0aGlzLnNoYWRvd1Jvb3QhLmFjdGl2ZUVsZW1lbnQsXG4gICAgKTtcbiAgICBjb25zdCBuZXh0SW5kZXg6IG51bWJlciA9IGdldE5leHRFbGVtZW50SW5kZXgoZXZ0LCBjdXJyZW50LCBicmVhZGNydW1icy5sZW5ndGgpO1xuICAgIGJyZWFkY3J1bWJzW25leHRJbmRleF0/LmZvY3VzKCk7XG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogTm90ZTogZHVlIHRvIEBTdGF0ZSBhbm5vdGF0aW9uIG9uIF9zdGF0ZSwgdGhpcyBtZXRob2QgdHJpZ2dlcnMgYSBuZXcgcmVuZGVyOyBhcyBhIGNvbnNlcXVlbmNlLCB0aGUgZm9jdXMgaXMgbW92ZWRcbiAgICogdG8gdGhlIGBib2R5YCwgc28gaWYgdGhlIGVsbGlwc2lzIGVsZW1lbnQgaGFzIGZvY3VzLCBpdCdzIGFzeW5jaHJvbm91c2x5IGZvcmNlZCB0byB0aGUgZmlyc3QgZWxlbWVudC5cbiAgICovXG4gIHByaXZhdGUgX2V4cGFuZEJyZWFkY3J1bWJzKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ21hbnVhbGx5LWV4cGFuZGVkJztcbiAgICB0aGlzLl9tYXJrRm9yRm9jdXMgPSB0cnVlO1xuICB9XG5cbiAgLyoqIEV2YWx1YXRlIGlmIHRoZSBleHBhbmRlZCBicmVhZGNydW1iIGVsZW1lbnQgZml0cyBpbiBwYWdlIHdpZHRoLCBvdGhlcndpc2UgaXQgbmVlZHMgZWxsaXBzaXMgKi9cbiAgcHJpdmF0ZSBfZXZhbHVhdGVDb2xsYXBzZWRTdGF0ZSgpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5fc3RhdGUgJiZcbiAgICAgIHRoaXMuc2Nyb2xsV2lkdGggPiB0aGlzLm9mZnNldFdpZHRoICYmXG4gICAgICB0aGlzLmxpc3RDaGlsZHJlbi5sZW5ndGggPj0gTUlOX0JSRUFEQ1JVTUJTX1RPX0NPTExBUFNFXG4gICAgKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9ICdjb2xsYXBzZWQnO1xuICAgICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlckNvbGxhcHNlZCgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8bGkgY2xhc3M9XCJzYmItYnJlYWRjcnVtYi1ncm91cF9faXRlbVwiPlxuICAgICAgICA8c2xvdCBuYW1lPVwibGktMFwiPjwvc2xvdD5cbiAgICAgIDwvbGk+XG4gICAgICA8bGkgY2xhc3M9XCJzYmItYnJlYWRjcnVtYi1ncm91cF9faXRlbVwiIGlkPVwic2JiLWJyZWFkY3J1bWItZ3JvdXAtZWxsaXBzaXNcIj5cbiAgICAgICAgPHNiYi1pY29uXG4gICAgICAgICAgbmFtZT1cImNoZXZyb24tc21hbGwtcmlnaHQtc21hbGxcIlxuICAgICAgICAgIGNsYXNzPVwic2JiLWJyZWFkY3J1bWItZ3JvdXBfX2RpdmlkZXItaWNvblwiXG4gICAgICAgID48L3NiYi1pY29uPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgaWQ9XCJzYmItYnJlYWRjcnVtYi1lbGxpcHNpc1wiXG4gICAgICAgICAgYXJpYS1sYWJlbD0ke2kxOG5CcmVhZGNydW1iRWxsaXBzaXNCdXR0b25MYWJlbFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIlxuICAgICAgICAgIEBjbGljaz0keygpID0+IHRoaXMuX2V4cGFuZEJyZWFkY3J1bWJzKCl9XG4gICAgICAgID5cbiAgICAgICAgICAuLi5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2xpPlxuICAgICAgPGxpIGNsYXNzPVwic2JiLWJyZWFkY3J1bWItZ3JvdXBfX2l0ZW1cIj5cbiAgICAgICAgPHNiYi1pY29uXG4gICAgICAgICAgbmFtZT1cImNoZXZyb24tc21hbGwtcmlnaHQtc21hbGxcIlxuICAgICAgICAgIGNsYXNzPVwic2JiLWJyZWFkY3J1bWItZ3JvdXBfX2RpdmlkZXItaWNvblwiXG4gICAgICAgID48L3NiYi1pY29uPlxuICAgICAgICA8c2xvdCBuYW1lPSR7YGxpLSR7dGhpcy5saXN0Q2hpbGRyZW4ubGVuZ3RoIC0gMX1gfT48L3Nsb3Q+XG4gICAgICA8L2xpPlxuICAgIGA7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJFeHBhbmRlZCgpOiBUZW1wbGF0ZVJlc3VsdFtdIHtcbiAgICByZXR1cm4gdGhpcy5saXN0U2xvdE5hbWVzKCkubWFwKFxuICAgICAgKG5hbWUsIGluZGV4LCBhcnJheSkgPT4gaHRtbGBcbiAgICAgICAgPGxpIGNsYXNzPVwic2JiLWJyZWFkY3J1bWItZ3JvdXBfX2l0ZW1cIj5cbiAgICAgICAgICA8c2xvdCBuYW1lPSR7bmFtZX0+PC9zbG90PlxuICAgICAgICAgICR7aW5kZXggIT09IGFycmF5Lmxlbmd0aCAtIDFcbiAgICAgICAgICAgID8gaHRtbGA8c2JiLWljb25cbiAgICAgICAgICAgICAgICBuYW1lPVwiY2hldnJvbi1zbWFsbC1yaWdodC1zbWFsbFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJzYmItYnJlYWRjcnVtYi1ncm91cF9fZGl2aWRlci1pY29uXCJcbiAgICAgICAgICAgICAgPjwvc2JiLWljb24+YFxuICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICA8L2xpPlxuICAgICAgYCxcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8b2wgY2xhc3M9XCJzYmItYnJlYWRjcnVtYi1ncm91cFwiPlxuICAgICAgICAke3RoaXMuX3N0YXRlID09PSAnY29sbGFwc2VkJyA/IHRoaXMuX3JlbmRlckNvbGxhcHNlZCgpIDogdGhpcy5fcmVuZGVyRXhwYW5kZWQoKX1cbiAgICAgIDwvb2w+XG4gICAgICAke3RoaXMucmVuZGVySGlkZGVuU2xvdCgpfVxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1icmVhZGNydW1iLWdyb3VwJzogU2JiQnJlYWRjcnVtYkdyb3VwRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbInN0YXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBMkJBLE1BQU0sOEJBQThCO0FBVzdCLElBQU0sNEJBQU4sY0FBd0Msc0JBRzdDLFVBQVUsRUFBRTtBQUFBLEVBSFAsY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBS3VCLFNBQUEsc0JBQXNCLENBQUMsZ0JBQWdCO0FBV25FLFNBQVEsa0JBQWtCLElBQUksdUJBQXVCLE1BQU0sS0FBSyx5QkFBeUI7QUFDakYsU0FBQSxTQUFTLElBQUksNEJBQTRCLElBQUk7QUFDN0MsU0FBQSxZQUFZLElBQUksc0JBQXNCLElBQUk7QUFDbEQsU0FBUSxnQkFBZ0I7QUFBQSxFQUFBO0FBQUEsRUFWeEIsSUFBWSxPQUFPQSxRQUFpRDtBQUM3Qyx5QkFBQSxNQUFNLGNBQWNBLE1BQUs7QUFBQSxFQUNoRDtBQUFBLEVBQ0EsSUFBWSxTQUFtRDtBQUN0RCxXQUFBLEtBQUssYUFBYSxZQUFZO0FBQUEsRUFDdkM7QUFBQSxFQU9RLGVBQWUsS0FBMEI7QUFFN0MsUUFBQSxDQUFDLEtBQUssYUFBYTtBQUFBLElBRWpCLElBQUksV0FBMkIsUUFBUyxJQUFJLE9BQXVCLGtCQUFrQixNQUN2RjtBQUNBO0FBQUEsSUFDRjtBQUVJLFFBQUEsa0JBQWtCLEdBQUcsR0FBRztBQUN0QixVQUFBLEtBQUssV0FBVyxhQUFhO0FBQ3hCLGVBQUEsS0FBSyxvQkFBb0IsR0FBRztBQUFBLE1BQ3JDO0FBQ0EsV0FBSyxXQUFXLEdBQUc7QUFBQSxJQUNyQjtBQUFBLEVBQ0Y7QUFBQSxFQUVnQixvQkFBMEI7QUFDeEMsVUFBTSxrQkFBa0I7QUFDbEIsVUFBQSxTQUFTLEtBQUssT0FBTztBQUN0QixTQUFBLGlCQUFpQixXQUFXLENBQUMsTUFBTSxLQUFLLGVBQWUsQ0FBQyxHQUFHLEVBQUUsT0FBQSxDQUFRO0FBQUEsRUFDNUU7QUFBQSxFQUVtQixhQUFhLG1CQUErQztBQUM3RSxVQUFNLGFBQWEsaUJBQWlCO0FBRS9CLFNBQUEsZ0JBQWdCLFFBQVEsSUFBSTtBQUM1QixTQUFBLGdCQUFnQixlQUFlLElBQUk7QUFBQSxFQUMxQztBQUFBLEVBRWdCLHVCQUE2QjtBQUMzQyxVQUFNLHFCQUFxQjtBQUMzQixTQUFLLGdCQUFnQjtFQUN2QjtBQUFBLEVBRW1CLFdBQVcsbUJBQWlFO0FBQzdGLFVBQU0sV0FBVyxpQkFBaUI7QUFFOUIsUUFBQSxrQkFBa0IsSUFBSSxjQUFjLEdBQUc7QUFDekMsV0FBSyxpQkFBaUI7QUFBQSxJQUN4QjtBQUFBLEVBQ0Y7QUFBQSxFQUVtQixRQUFRLG1CQUFpRTs7QUFDMUYsVUFBTSxRQUFRLGlCQUFpQjtBQUMzQixRQUFBLGtCQUFrQixJQUFJLGNBQWMsR0FBRztBQUN6QyxjQUFRLFVBQVUsS0FBSyxNQUFNLEtBQUsseUJBQXlCO0FBQUEsSUFDN0Q7QUFDQSxRQUFJLEtBQUssaUJBQWlCLHlCQUF5Qix1QkFBdUIsWUFBWTtBQUMvRSxpQkFBQSxhQUFhLENBQUMsTUFBZCxtQkFBaUI7QUFHdEIsV0FBSyxnQkFBZ0I7QUFBQSxJQUN2QjtBQUFBLEVBQ0Y7QUFBQTtBQUFBLEVBR1EsbUJBQXlCOztBQUMvQixTQUFLLGFBQ0YsTUFBTSxHQUFHLEVBQUUsRUFDWCxPQUFPLENBQUMsTUFBTSxFQUFFLGFBQWEsY0FBYyxDQUFDLEVBQzVDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLGNBQWMsQ0FBQztBQUM5QyxlQUFBLGFBQWEsS0FBSyxhQUFhLFNBQVMsQ0FBQyxNQUF6QyxtQkFBNEMsYUFBYSxnQkFBZ0I7QUFHMUUsUUFBQSxLQUFLLGFBQWEsU0FBUyw2QkFBNkI7QUFDMUQsV0FBSyxTQUFTO0FBQUEsSUFDaEI7QUFBQSxFQUNGO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLUSxvQkFBb0IsS0FBMEI7QUFDcEQsVUFBTSxpQkFBeUM7QUFBQSxNQUM3QyxLQUFLLGFBQWEsQ0FBQztBQUFBLE1BQ25CLEtBQUssV0FBWSxjQUFjLDBCQUEwQjtBQUFBLE1BQ3pELEtBQUssYUFBYSxLQUFLLGFBQWEsU0FBUyxDQUFDO0FBQUEsSUFBQTtBQUUzQyxTQUFBLFdBQVcsS0FBSyxjQUFjO0FBQUEsRUFDckM7QUFBQSxFQUVRLFdBQ04sS0FDQSxjQUFzQyxLQUFLLGNBQ3JDOztBQUNOLFVBQU0sVUFBa0IsWUFBWTtBQUFBLE1BQ2xDLENBQUMsTUFBTSxNQUFNLFNBQVMsaUJBQWlCLE1BQU0sS0FBSyxXQUFZO0FBQUEsSUFBQTtBQUVoRSxVQUFNLFlBQW9CLG9CQUFvQixLQUFLLFNBQVMsWUFBWSxNQUFNO0FBQ2xFLHNCQUFBLFNBQVMsTUFBVCxtQkFBWTtBQUN4QixRQUFJLGVBQWU7QUFBQSxFQUNyQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNUSxxQkFBMkI7QUFDakMsU0FBSyxTQUFTO0FBQ2QsU0FBSyxnQkFBZ0I7QUFBQSxFQUN2QjtBQUFBO0FBQUEsRUFHUSwwQkFBZ0M7QUFFcEMsUUFBQSxDQUFDLEtBQUssVUFDTixLQUFLLGNBQWMsS0FBSyxlQUN4QixLQUFLLGFBQWEsVUFBVSw2QkFDNUI7QUFDQSxXQUFLLFNBQVM7QUFDZCxXQUFLLGdCQUFnQjtJQUN2QjtBQUFBLEVBQ0Y7QUFBQSxFQUVRLG1CQUFtQztBQUNsQyxXQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLHVCQVlZLGtDQUFrQyxLQUFLLFVBQVUsT0FBTyxDQUFDO0FBQUE7QUFBQSxtQkFFN0QsTUFBTSxLQUFLLG9CQUFvQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLHFCQVU3QixNQUFNLEtBQUssYUFBYSxTQUFTLENBQUMsRUFBRTtBQUFBO0FBQUE7QUFBQSxFQUd2RDtBQUFBLEVBRVEsa0JBQW9DO0FBQ25DLFdBQUEsS0FBSyxnQkFBZ0I7QUFBQSxNQUMxQixDQUFDLE1BQU0sT0FBTyxVQUFVO0FBQUE7QUFBQSx1QkFFUCxJQUFJO0FBQUEsWUFDZixVQUFVLE1BQU0sU0FBUyxJQUN2QjtBQUFBO0FBQUE7QUFBQSw4QkFJQSxPQUFPO0FBQUE7QUFBQTtBQUFBLElBQUE7QUFBQSxFQUluQjtBQUFBLEVBRW1CLFNBQXlCO0FBQ25DLFdBQUE7QUFBQTtBQUFBLFVBRUQsS0FBSyxXQUFXLGNBQWMsS0FBSyxxQkFBcUIsS0FBSyxpQkFBaUI7QUFBQTtBQUFBLFFBRWhGLEtBQUssa0JBQWtCO0FBQUE7QUFBQSxFQUU3QjtBQUNGO0FBOUxhLDBCQUlZLFNBQXlCO0FBS3BDLGdCQUFBO0FBQUEsRUFEWCxNQUFNO0FBQUEsR0FSSSwwQkFTQyxXQUFBLFVBQUEsQ0FBQTtBQVRELDRCQUFOLGdCQUFBO0FBQUEsRUFKTixjQUFjLHNCQUFzQjtBQUFBLEVBQ3BDLGVBQWU7QUFBQSxJQUNkLE1BQU07QUFBQSxFQUFBLENBQ1A7QUFBQSxHQUNZLHlCQUFBOyJ9
304
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi1ncm91cC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi1ncm91cC9icmVhZGNydW1iLWdyb3VwLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIG5vdGhpbmcsXG4gIExpdEVsZW1lbnQsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHtcbiAgZ2V0TmV4dEVsZW1lbnRJbmRleCxcbiAgaXNBcnJvd0tleVByZXNzZWQsXG4gIHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvcixcbn0gZnJvbSAnLi4vLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlciwgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IGkxOG5CcmVhZGNydW1iRWxsaXBzaXNCdXR0b25MYWJlbCB9IGZyb20gJy4uLy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgeyBTYmJOYW1lZFNsb3RMaXN0TWl4aW4sIHR5cGUgV2l0aExpc3RDaGlsZHJlbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IEFnbm9zdGljUmVzaXplT2JzZXJ2ZXIgfSBmcm9tICcuLi8uLi9jb3JlL29ic2VydmVycy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYkJyZWFkY3J1bWJFbGVtZW50IH0gZnJvbSAnLi4vYnJlYWRjcnVtYi5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2JyZWFkY3J1bWItZ3JvdXAuc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi8uLi9pY29uLmpzJztcblxuY29uc3QgTUlOX0JSRUFEQ1JVTUJTX1RPX0NPTExBUFNFID0gMztcblxuLyoqXG4gKiBJdCBjYW4gYmUgdXNlZCBhcyBhIGNvbnRhaW5lciBmb3Igb25lIG9yIG1vcmUgYHNiYi1icmVhZGNydW1iYCBjb21wb25lbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1icmVhZGNydW1iYCBlbGVtZW50cy5cbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi1icmVhZGNydW1iLWdyb3VwJylcbkBob3N0QXR0cmlidXRlcyh7XG4gIHJvbGU6ICduYXZpZ2F0aW9uJyxcbn0pXG5leHBvcnQgY2xhc3MgU2JiQnJlYWRjcnVtYkdyb3VwRWxlbWVudCBleHRlbmRzIFNiYk5hbWVkU2xvdExpc3RNaXhpbjxcbiAgU2JiQnJlYWRjcnVtYkVsZW1lbnQsXG4gIHR5cGVvZiBMaXRFbGVtZW50XG4+KExpdEVsZW1lbnQpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHByb3RlY3RlZCBvdmVycmlkZSByZWFkb25seSBsaXN0Q2hpbGRMb2NhbE5hbWVzID0gWydzYmItYnJlYWRjcnVtYiddO1xuXG4gIC8qIFRoZSBzdGF0ZSBvZiB0aGUgYnJlYWRjcnVtYiBncm91cC4gKi9cbiAgQHN0YXRlKClcbiAgcHJpdmF0ZSBzZXQgX3N0YXRlKHN0YXRlOiAnY29sbGFwc2VkJyB8ICdtYW51YWxseS1leHBhbmRlZCcgfCBudWxsKSB7XG4gICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUodGhpcywgJ2RhdGEtc3RhdGUnLCBzdGF0ZSk7XG4gIH1cbiAgcHJpdmF0ZSBnZXQgX3N0YXRlKCk6ICdjb2xsYXBzZWQnIHwgJ21hbnVhbGx5LWV4cGFuZGVkJyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgnZGF0YS1zdGF0ZScpIGFzICdjb2xsYXBzZWQnIHwgJ21hbnVhbGx5LWV4cGFuZGVkJyB8IG51bGw7XG4gIH1cblxuICBwcml2YXRlIF9yZXNpemVPYnNlcnZlciA9IG5ldyBBZ25vc3RpY1Jlc2l6ZU9ic2VydmVyKCgpID0+IHRoaXMuX2V2YWx1YXRlQ29sbGFwc2VkU3RhdGUoKSk7XG4gIHByaXZhdGUgX2Fib3J0ID0gbmV3IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9tYXJrRm9yRm9jdXMgPSBmYWxzZTtcblxuICBwcml2YXRlIF9oYW5kbGVLZXlEb3duKGV2dDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICF0aGlzLmxpc3RDaGlsZHJlbi5sZW5ndGggfHxcbiAgICAgIC8vIGRvbid0IHRyYXAgbmVzdGVkIGhhbmRsaW5nXG4gICAgICAoKGV2dC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpICE9PSB0aGlzICYmIChldnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5wYXJlbnRFbGVtZW50ICE9PSB0aGlzKVxuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChpc0Fycm93S2V5UHJlc3NlZChldnQpKSB7XG4gICAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdjb2xsYXBzZWQnKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb2N1c05leHRDb2xsYXBzZWQoZXZ0KTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX2ZvY3VzTmV4dChldnQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIGNvbnN0IHNpZ25hbCA9IHRoaXMuX2Fib3J0LnNpZ25hbDtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZSkgPT4gdGhpcy5faGFuZGxlS2V5RG93bihlKSwgeyBzaWduYWwgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMpO1xuICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkYXRhLWxvYWRlZCcsIHRydWUpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPFdpdGhMaXN0Q2hpbGRyZW48dGhpcz4+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdsaXN0Q2hpbGRyZW4nKSkge1xuICAgICAgdGhpcy5fc3luY0JyZWFkY3J1bWJzKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPFdpdGhMaXN0Q2hpbGRyZW48dGhpcz4+KTogdm9pZCB7XG4gICAgc3VwZXIudXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnbGlzdENoaWxkcmVuJykpIHtcbiAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4gdGhpcy5fZXZhbHVhdGVDb2xsYXBzZWRTdGF0ZSgpKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuX21hcmtGb3JGb2N1cyAmJiBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnKSB7XG4gICAgICB0aGlzLmxpc3RDaGlsZHJlblsxXT8uZm9jdXMoKTtcblxuICAgICAgLy8gUmVzZXQgbWFyayBmb3IgZm9jdXNcbiAgICAgIHRoaXMuX21hcmtGb3JGb2N1cyA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBBcHBseSB0aGUgYXJpYS1jdXJyZW50IGF0dHJpYnV0ZSB0byB0aGUgbGFzdCBzYmItYnJlYWRjcnVtYiBlbGVtZW50LiAqL1xuICBwcml2YXRlIF9zeW5jQnJlYWRjcnVtYnMoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0Q2hpbGRyZW5cbiAgICAgIC5zbGljZSgwLCAtMSlcbiAgICAgIC5maWx0ZXIoKGMpID0+IGMuaGFzQXR0cmlidXRlKCdhcmlhLWN1cnJlbnQnKSlcbiAgICAgIC5mb3JFYWNoKChjKSA9PiBjLnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1jdXJyZW50JykpO1xuICAgIHRoaXMubGlzdENoaWxkcmVuW3RoaXMubGlzdENoaWxkcmVuLmxlbmd0aCAtIDFdPy5zZXRBdHRyaWJ1dGUoJ2FyaWEtY3VycmVudCcsICdwYWdlJyk7XG5cbiAgICAvLyBJZiBpdCBpcyBub3QgZXhwYW5kYWJsZSwgcmVzZXQgc3RhdGVcbiAgICBpZiAodGhpcy5saXN0Q2hpbGRyZW4ubGVuZ3RoIDwgTUlOX0JSRUFEQ1JVTUJTX1RPX0NPTExBUFNFKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGZvY3VzIG9uIHRoZSBjb3JyZWN0IGVsZW1lbnQgd2hlbiB0aGUgZWxsaXBzaXMgYnJlYWRjcnVtYiBpcyBkaXNwbGF5ZWQgYW5kIHRoZSB1c2VyIGlzIG5hdmlnYXRpbmcgd2l0aCBrZXlib2FyZCdzIGFycm93cy5cbiAgICovXG4gIHByaXZhdGUgX2ZvY3VzTmV4dENvbGxhcHNlZChldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBhcnJheUNvbGxhcHNlZDogU2JiQnJlYWRjcnVtYkVsZW1lbnRbXSA9IFtcbiAgICAgIHRoaXMubGlzdENoaWxkcmVuWzBdLFxuICAgICAgdGhpcy5zaGFkb3dSb290IS5xdWVyeVNlbGVjdG9yKCcjc2JiLWJyZWFkY3J1bWItZWxsaXBzaXMnKSBhcyBTYmJCcmVhZGNydW1iRWxlbWVudCxcbiAgICAgIHRoaXMubGlzdENoaWxkcmVuW3RoaXMubGlzdENoaWxkcmVuLmxlbmd0aCAtIDFdLFxuICAgIF07XG4gICAgdGhpcy5fZm9jdXNOZXh0KGV2dCwgYXJyYXlDb2xsYXBzZWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZm9jdXNOZXh0KFxuICAgIGV2dDogS2V5Ym9hcmRFdmVudCxcbiAgICBicmVhZGNydW1iczogU2JiQnJlYWRjcnVtYkVsZW1lbnRbXSA9IHRoaXMubGlzdENoaWxkcmVuLFxuICApOiB2b2lkIHtcbiAgICBjb25zdCBjdXJyZW50OiBudW1iZXIgPSBicmVhZGNydW1icy5maW5kSW5kZXgoXG4gICAgICAoZSkgPT4gZSA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCB8fCBlID09PSB0aGlzLnNoYWRvd1Jvb3QhLmFjdGl2ZUVsZW1lbnQsXG4gICAgKTtcbiAgICBjb25zdCBuZXh0SW5kZXg6IG51bWJlciA9IGdldE5leHRFbGVtZW50SW5kZXgoZXZ0LCBjdXJyZW50LCBicmVhZGNydW1icy5sZW5ndGgpO1xuICAgIGJyZWFkY3J1bWJzW25leHRJbmRleF0/LmZvY3VzKCk7XG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICAvKipcbiAgICogTm90ZTogZHVlIHRvIEBTdGF0ZSBhbm5vdGF0aW9uIG9uIF9zdGF0ZSwgdGhpcyBtZXRob2QgdHJpZ2dlcnMgYSBuZXcgcmVuZGVyOyBhcyBhIGNvbnNlcXVlbmNlLCB0aGUgZm9jdXMgaXMgbW92ZWRcbiAgICogdG8gdGhlIGBib2R5YCwgc28gaWYgdGhlIGVsbGlwc2lzIGVsZW1lbnQgaGFzIGZvY3VzLCBpdCdzIGFzeW5jaHJvbm91c2x5IGZvcmNlZCB0byB0aGUgZmlyc3QgZWxlbWVudC5cbiAgICovXG4gIHByaXZhdGUgX2V4cGFuZEJyZWFkY3J1bWJzKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ21hbnVhbGx5LWV4cGFuZGVkJztcbiAgICB0aGlzLl9tYXJrRm9yRm9jdXMgPSB0cnVlO1xuICB9XG5cbiAgLyoqIEV2YWx1YXRlIGlmIHRoZSBleHBhbmRlZCBicmVhZGNydW1iIGVsZW1lbnQgZml0cyBpbiBwYWdlIHdpZHRoLCBvdGhlcndpc2UgaXQgbmVlZHMgZWxsaXBzaXMgKi9cbiAgcHJpdmF0ZSBfZXZhbHVhdGVDb2xsYXBzZWRTdGF0ZSgpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5fc3RhdGUgJiZcbiAgICAgIHRoaXMuc2Nyb2xsV2lkdGggPiB0aGlzLm9mZnNldFdpZHRoICYmXG4gICAgICB0aGlzLmxpc3RDaGlsZHJlbi5sZW5ndGggPj0gTUlOX0JSRUFEQ1JVTUJTX1RPX0NPTExBUFNFXG4gICAgKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9ICdjb2xsYXBzZWQnO1xuICAgICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3JlbmRlckNvbGxhcHNlZCgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8bGkgY2xhc3M9XCJzYmItYnJlYWRjcnVtYi1ncm91cF9faXRlbVwiPlxuICAgICAgICA8c2xvdCBuYW1lPVwibGktMFwiPjwvc2xvdD5cbiAgICAgIDwvbGk+XG4gICAgICA8bGkgY2xhc3M9XCJzYmItYnJlYWRjcnVtYi1ncm91cF9faXRlbVwiIGlkPVwic2JiLWJyZWFkY3J1bWItZ3JvdXAtZWxsaXBzaXNcIj5cbiAgICAgICAgPHNiYi1pY29uXG4gICAgICAgICAgbmFtZT1cImNoZXZyb24tc21hbGwtcmlnaHQtc21hbGxcIlxuICAgICAgICAgIGNsYXNzPVwic2JiLWJyZWFkY3J1bWItZ3JvdXBfX2RpdmlkZXItaWNvblwiXG4gICAgICAgID48L3NiYi1pY29uPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgaWQ9XCJzYmItYnJlYWRjcnVtYi1lbGxpcHNpc1wiXG4gICAgICAgICAgYXJpYS1sYWJlbD0ke2kxOG5CcmVhZGNydW1iRWxsaXBzaXNCdXR0b25MYWJlbFt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIlxuICAgICAgICAgIEBjbGljaz0keygpID0+IHRoaXMuX2V4cGFuZEJyZWFkY3J1bWJzKCl9XG4gICAgICAgID5cbiAgICAgICAgICAuLi5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2xpPlxuICAgICAgPGxpIGNsYXNzPVwic2JiLWJyZWFkY3J1bWItZ3JvdXBfX2l0ZW1cIj5cbiAgICAgICAgPHNiYi1pY29uXG4gICAgICAgICAgbmFtZT1cImNoZXZyb24tc21hbGwtcmlnaHQtc21hbGxcIlxuICAgICAgICAgIGNsYXNzPVwic2JiLWJyZWFkY3J1bWItZ3JvdXBfX2RpdmlkZXItaWNvblwiXG4gICAgICAgID48L3NiYi1pY29uPlxuICAgICAgICA8c2xvdCBuYW1lPSR7YGxpLSR7dGhpcy5saXN0Q2hpbGRyZW4ubGVuZ3RoIC0gMX1gfT48L3Nsb3Q+XG4gICAgICA8L2xpPlxuICAgIGA7XG4gIH1cblxuICBwcml2YXRlIF9yZW5kZXJFeHBhbmRlZCgpOiBUZW1wbGF0ZVJlc3VsdFtdIHtcbiAgICByZXR1cm4gdGhpcy5saXN0U2xvdEVudHJpZXMoKS5tYXAoXG4gICAgICAoc2xvdCwgaW5kZXgsIGFycmF5KSA9PiBodG1sYFxuICAgICAgICA8bGkgY2xhc3M9XCJzYmItYnJlYWRjcnVtYi1ncm91cF9faXRlbVwiPlxuICAgICAgICAgIDxzbG90IG5hbWU9JHtzbG90Lm5hbWV9Pjwvc2xvdD5cbiAgICAgICAgICAke2luZGV4ICE9PSBhcnJheS5sZW5ndGggLSAxXG4gICAgICAgICAgICA/IGh0bWxgPHNiYi1pY29uXG4gICAgICAgICAgICAgICAgbmFtZT1cImNoZXZyb24tc21hbGwtcmlnaHQtc21hbGxcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLWJyZWFkY3J1bWItZ3JvdXBfX2RpdmlkZXItaWNvblwiXG4gICAgICAgICAgICAgID48L3NiYi1pY29uPmBcbiAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgPC9saT5cbiAgICAgIGAsXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPG9sIGNsYXNzPVwic2JiLWJyZWFkY3J1bWItZ3JvdXBcIj5cbiAgICAgICAgJHt0aGlzLl9zdGF0ZSA9PT0gJ2NvbGxhcHNlZCcgPyB0aGlzLl9yZW5kZXJDb2xsYXBzZWQoKSA6IHRoaXMuX3JlbmRlckV4cGFuZGVkKCl9XG4gICAgICA8L29sPlxuICAgICAgJHt0aGlzLnJlbmRlckhpZGRlblNsb3QoKX1cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItYnJlYWRjcnVtYi1ncm91cCc6IFNiYkJyZWFkY3J1bWJHcm91cEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJzdGF0ZSJdLCJtYXBwaW5n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
@@ -55,6 +55,13 @@ const style = css`/**
55
55
  color: var(--sbb-link-color-normal);
56
56
  text-decoration: var(--sbb-link-text-decoration, underline);
57
57
  user-select: none;
58
+ }
59
+ @media (forced-colors: active) {
60
+ .sbb-breadcrumb {
61
+ text-decoration: underline;
62
+ }
63
+ }
64
+ .sbb-breadcrumb {
58
65
  display: flex;
59
66
  cursor: pointer;
60
67
  gap: var(--sbb-spacing-fixed-2x);
@@ -63,11 +70,6 @@ const style = css`/**
63
70
  overflow: hidden;
64
71
  outline: none;
65
72
  }
66
- @media (forced-colors: active) {
67
- .sbb-breadcrumb {
68
- text-decoration: underline;
69
- }
70
- }
71
73
  @media (forced-colors: active) {
72
74
  .sbb-breadcrumb {
73
75
  --sbb-breadcrumb-color: ButtonText;
@@ -131,4 +133,4 @@ SbbBreadcrumbElement = __decorateClass([
131
133
  export {
132
134
  SbbBreadcrumbElement
133
135
  };
134
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi9icmVhZGNydW1iLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHN0YXRlIH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgaHRtbCB9IGZyb20gJ2xpdC9zdGF0aWMtaHRtbC5qcyc7XG5cbmltcG9ydCB7IFNiYkxpbmtCYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBTYmJIeWRyYXRpb25NaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi8uLi9pY29uLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vYnJlYWRjcnVtYi5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgbGluayB0byBhIHBhZ2U7IHVzZWQgd2l0aGluIGEgYHNiYi1icmVhZGNydW1iLWdyb3VwYCBpdCBjYW4gZGlzcGxheSB0aGUgcGF0aCB0byB0aGUgY3VycmVudCBwYWdlLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGJyZWFkY3J1bWIuXG4gKiBAc2xvdCBpY29uIC0gVXNlIHRoaXMgdG8gZGlzcGxheSBhbiBpY29uIGFzIGJyZWFkY3J1bWIuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItYnJlYWRjcnVtYicpXG5leHBvcnQgY2xhc3MgU2JiQnJlYWRjcnVtYkVsZW1lbnQgZXh0ZW5kcyBTYmJJY29uTmFtZU1peGluKFNiYkh5ZHJhdGlvbk1peGluKFNiYkxpbmtCYXNlRWxlbWVudCkpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgQHN0YXRlKCkgcHJpdmF0ZSBfaGFzVGV4dCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2hhbmRsZVNsb3RjaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5faGFzVGV4dCA9IEFycmF5LmZyb20odGhpcy5jaGlsZE5vZGVzID8/IFtdKS5zb21lKFxuICAgICAgKG4pID0+ICEobiBhcyBFbGVtZW50KS5zbG90ICYmIG4udGV4dENvbnRlbnQ/LnRyaW0oKSxcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgICR7dGhpcy5yZW5kZXJJY29uU2xvdCgnc2JiLWJyZWFkY3J1bWJfX2ljb24nKX1cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWJyZWFkY3J1bWJfX2xhYmVsXCIgP2hpZGRlbj0keyF0aGlzLl9oYXNUZXh0fT5cbiAgICAgICAgPHNsb3QgQHNsb3RjaGFuZ2U9JHt0aGlzLl9oYW5kbGVTbG90Y2hhbmdlfT48L3Nsb3Q+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWJyZWFkY3J1bWInOiBTYmJCcmVhZGNydW1iRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBaUJPLElBQU0sdUJBQU4sY0FBbUMsaUJBQWlCLGtCQUFrQixrQkFBa0IsQ0FBQyxFQUFFO0FBQUEsRUFBM0YsY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBR0ksU0FBUSxXQUFXO0FBQUEsRUFBQTtBQUFBLEVBRXBCLG9CQUEwQjtBQUNoQyxTQUFLLFdBQVcsTUFBTSxLQUFLLEtBQUssY0FBYyxDQUFFLENBQUEsRUFBRTtBQUFBLE1BQ2hELENBQUMsTUFBTTs7QUFBQSxnQkFBRSxFQUFjLFVBQVEsT0FBRSxnQkFBRixtQkFBZTtBQUFBO0FBQUEsSUFBSztBQUFBLEVBRXZEO0FBQUEsRUFFbUIsaUJBQWlDO0FBQzNDLFdBQUE7QUFBQSxRQUNILEtBQUssZUFBZSxzQkFBc0IsQ0FBQztBQUFBLG9EQUNDLENBQUMsS0FBSyxRQUFRO0FBQUEsNEJBQ3RDLEtBQUssaUJBQWlCO0FBQUE7QUFBQTtBQUFBLEVBR2hEO0FBQ0Y7QUFuQmEscUJBQ1ksU0FBeUI7QUFFL0IsZ0JBQUE7QUFBQSxFQUFoQixNQUFNO0FBQUEsR0FISSxxQkFHTSxXQUFBLFlBQUEsQ0FBQTtBQUhOLHVCQUFOLGdCQUFBO0FBQUEsRUFETixjQUFjLGdCQUFnQjtBQUFBLEdBQ2xCLG9CQUFBOyJ9
136
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2JyZWFkY3J1bWIvYnJlYWRjcnVtYi9icmVhZGNydW1iLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHN0YXRlIH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgaHRtbCB9IGZyb20gJ2xpdC9zdGF0aWMtaHRtbC5qcyc7XG5cbmltcG9ydCB7IFNiYkxpbmtCYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBTYmJIeWRyYXRpb25NaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi8uLi9pY29uLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vYnJlYWRjcnVtYi5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgbGluayB0byBhIHBhZ2U7IHVzZWQgd2l0aGluIGEgYHNiYi1icmVhZGNydW1iLWdyb3VwYCBpdCBjYW4gZGlzcGxheSB0aGUgcGF0aCB0byB0aGUgY3VycmVudCBwYWdlLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGJyZWFkY3J1bWIuXG4gKiBAc2xvdCBpY29uIC0gVXNlIHRoaXMgdG8gZGlzcGxheSBhbiBpY29uIGFzIGJyZWFkY3J1bWIuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItYnJlYWRjcnVtYicpXG5leHBvcnQgY2xhc3MgU2JiQnJlYWRjcnVtYkVsZW1lbnQgZXh0ZW5kcyBTYmJJY29uTmFtZU1peGluKFNiYkh5ZHJhdGlvbk1peGluKFNiYkxpbmtCYXNlRWxlbWVudCkpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgQHN0YXRlKCkgcHJpdmF0ZSBfaGFzVGV4dCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2hhbmRsZVNsb3RjaGFuZ2UoKTogdm9pZCB7XG4gICAgdGhpcy5faGFzVGV4dCA9IEFycmF5LmZyb20odGhpcy5jaGlsZE5vZGVzID8/IFtdKS5zb21lKFxuICAgICAgKG4pID0+ICEobiBhcyBFbGVtZW50KS5zbG90ICYmIG4udGV4dENvbnRlbnQ/LnRyaW0oKSxcbiAgICApO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgICR7dGhpcy5yZW5kZXJJY29uU2xvdCgnc2JiLWJyZWFkY3J1bWJfX2ljb24nKX1cbiAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWJyZWFkY3J1bWJfX2xhYmVsXCIgP2hpZGRlbj0keyF0aGlzLl9oYXNUZXh0fT5cbiAgICAgICAgPHNsb3QgQHNsb3RjaGFuZ2U9JHt0aGlzLl9oYW5kbGVTbG90Y2hhbmdlfT48L3Nsb3Q+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWJyZWFkY3J1bWInOiBTYmJCcmVhZGNydW1iRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFpQk8sSUFBTSx1QkFBTixjQUFtQyxpQkFBaUIsa0JBQWtCLGtCQUFrQixDQUFDLEVBQUU7QUFBQSxFQUEzRixjQUFBO0FBQUEsVUFBQSxHQUFBLFNBQUE7QUFHSSxTQUFRLFdBQVc7QUFBQSxFQUFBO0FBQUEsRUFFcEIsb0JBQTBCO0FBQ2hDLFNBQUssV0FBVyxNQUFNLEtBQUssS0FBSyxjQUFjLENBQUUsQ0FBQSxFQUFFO0FBQUEsTUFDaEQsQ0FBQyxNQUFNOztBQUFBLGdCQUFFLEVBQWMsVUFBUSxPQUFFLGdCQUFGLG1CQUFlO0FBQUE7QUFBQSxJQUFLO0FBQUEsRUFFdkQ7QUFBQSxFQUVtQixpQkFBaUM7QUFDM0MsV0FBQTtBQUFBLFFBQ0gsS0FBSyxlQUFlLHNCQUFzQixDQUFDO0FBQUEsb0RBQ0MsQ0FBQyxLQUFLLFFBQVE7QUFBQSw0QkFDdEMsS0FBSyxpQkFBaUI7QUFBQTtBQUFBO0FBQUEsRUFHaEQ7QUFDRjtBQW5CYSxxQkFDWSxTQUF5QjtBQUUvQixnQkFBQTtBQUFBLEVBQWhCLE1BQU07QUFBQSxHQUhJLHFCQUdNLFdBQUEsWUFBQSxDQUFBO0FBSE4sdUJBQU4sZ0JBQUE7QUFBQSxFQUROLGNBQWMsZ0JBQWdCO0FBQUEsR0FDbEIsb0JBQUE7In0=
@@ -1,6 +1,5 @@
1
1
  import { CSSResultGroup } from 'lit';
2
2
  import { SbbButtonBaseElement } from '../../core/base-elements.js';
3
-
4
3
  declare const SbbButtonElement_base: import('../../core/mixins.js').AbstractConstructor<import('../common.js').SbbButtonCommonElementMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & typeof SbbButtonBaseElement;
5
4
  /**
6
5
  * It displays a button enhanced with the SBB Design in the 'primary' variant.
@@ -1,6 +1,5 @@
1
1
  import { CSSResultGroup } from 'lit';
2
2
  import { SbbLinkBaseElement } from '../../core/base-elements.js';
3
-
4
3
  declare const SbbButtonLinkElement_base: import('../../core/mixins.js').AbstractConstructor<import('../common.js').SbbButtonCommonElementMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & typeof SbbLinkBaseElement;
5
4
  /**
6
5
  * It displays a button enhanced with the SBB Design in the 'primary' variant, which will behave as a link.
@@ -1,6 +1,5 @@
1
1
  import { CSSResultGroup } from 'lit';
2
2
  import { SbbActionBaseElement } from '../../core/base-elements.js';
3
-
4
3
  declare const SbbButtonStaticElement_base: import('../../core/mixins.js').AbstractConstructor<import('../common.js').SbbButtonCommonElementMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & typeof SbbActionBaseElement;
5
4
  /**
6
5
  * It displays a static button enhanced with the SBB Design in the 'primary' variant.
@@ -1,7 +1,6 @@
1
1
  import { SbbActionBaseElement } from '../../core/base-elements.js';
2
2
  import { AbstractConstructor, SbbDisabledMixinType, SbbNegativeMixinType } from '../../core/mixins.js';
3
3
  import { SbbIconNameMixinType } from '../../icon.js';
4
-
5
4
  export type SbbButtonCommonElement = SbbButtonCommonElementMixinType & SbbActionBaseElement;
6
5
  export type SbbButtonSize = 'l' | 'm' | 's';
7
6
  export declare class SbbButtonCommonElementMixinType implements SbbNegativeMixinType, Partial<SbbDisabledMixinType>, Partial<SbbIconNameMixinType> {
@@ -1,6 +1,5 @@
1
1
  import { TemplateResult } from 'lit';
2
2
  import { SbbButtonBaseElement } from '../../core/base-elements.js';
3
-
4
3
  declare const SbbMiniButtonBaseElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbNegativeMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../icon.js').SbbIconNameMixinType> & typeof SbbButtonBaseElement;
5
4
  export declare abstract class SbbMiniButtonBaseElement extends SbbMiniButtonBaseElement_base {
6
5
  protected renderTemplate(): TemplateResult;
@@ -1,6 +1,5 @@
1
1
  import { CSSResultGroup } from 'lit';
2
2
  import { SbbMiniButtonBaseElement } from './mini-button-base-element.js';
3
-
4
3
  declare const SbbMiniButtonElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & typeof SbbMiniButtonBaseElement;
5
4
  /**
6
5
  * It displays an icon-only button enhanced with the SBB Design;
@@ -0,0 +1,2 @@
1
+ export * from './mini-button-group.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/button/mini-button-group/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC"}