@sbb-esta/lyne-elements-dev 5.0.0-next.1-dev.1777898715 → 5.0.0-next.1-dev.1777931407
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.
- package/accordion/accordion.component.js +1 -1
- package/{accordion.component-CN8j_UYk.js → accordion.component-DN0x35kD.js} +20 -20
- package/accordion.js +1 -1
- package/accordion.pure.js +1 -1
- package/action-group/action-group.component.js +1 -1
- package/{action-group.component-B6X5FjkQ.js → action-group.component-BMYAFyHh.js} +23 -23
- package/action-group.js +1 -1
- package/action-group.pure.js +1 -1
- package/alert/alert/alert.component.js +1 -1
- package/alert/alert-group/alert-group.component.js +1 -1
- package/{alert-group.component-BDi1x8ZY.js → alert-group.component-BqJ6B49z.js} +22 -26
- package/{alert.component-BQsF0R1M.js → alert.component-D8NT9YJ-.js} +17 -17
- package/alert.js +2 -2
- package/alert.pure.js +2 -2
- package/autocomplete/autocomplete-base-element.js +1 -1
- package/autocomplete/autocomplete.component.js +1 -1
- package/{autocomplete-base-element-BiLyvcN-.js → autocomplete-base-element-BuCAxBy3.js} +16 -16
- package/autocomplete.js +1 -1
- package/autocomplete.pure.js +1 -1
- package/{block-link-common-e4bk3Jpf.js → block-link-common-aUfrxxDp.js} +1 -1
- package/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
- package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +1 -1
- package/{breadcrumb-group.component-De3Lu3lx.js → breadcrumb-group.component-XPdnV6-a.js} +19 -19
- package/{breadcrumb.component-C8fW9ONc.js → breadcrumb.component-Kk1U6Iju.js} +7 -7
- package/breadcrumb.js +2 -2
- package/breadcrumb.pure.js +2 -2
- package/button/common/button-common.js +1 -1
- package/button/mini-button/mini-button.component.js +8 -12
- package/button/mini-button-group/mini-button-group.component.js +1 -1
- package/button/mini-button-link/mini-button-link.component.js +1 -1
- package/{button-common-h8m8WPzJ.js → button-common-BMpS65Zf.js} +18 -18
- package/button.js +3 -3
- package/button.pure.js +3 -3
- package/calendar/calendar/calendar.component.js +1 -1
- package/calendar/common/calendar-cell-base-element.js +1 -1
- package/{calendar-cell-base-element-BpHQ1Ad5.js → calendar-cell-base-element-CUG1qYFb.js} +5 -5
- package/{calendar.component-KQ8dM_Hi.js → calendar.component-oS_T4s4k.js} +29 -33
- package/calendar.js +2 -2
- package/calendar.pure.js +2 -2
- package/card/card/card.component.js +1 -1
- package/card/card-badge/card-badge.component.js +1 -1
- package/card/common/card-action-common.js +1 -1
- package/{card-action-common-DQDVfsGW.js → card-action-common-BNdGcJl-.js} +17 -21
- package/{card-badge.component-CEqox6TU.js → card-badge.component-BLAK_y8x.js} +11 -11
- package/{card.component-BcHiYB03.js → card.component-WUQRK9jT.js} +11 -11
- package/card.js +3 -3
- package/card.pure.js +3 -3
- package/carousel/carousel/carousel.component.js +1 -1
- package/{carousel.component-DzDLKOGv.js → carousel.component-9oMMOyWo.js} +13 -17
- package/carousel.js +1 -1
- package/carousel.pure.js +1 -1
- package/checkbox/checkbox.component.js +1 -1
- package/checkbox/common/checkbox-common.js +1 -1
- package/{checkbox-common-CGJMgGgK.js → checkbox-common-BSzAnug3.js} +10 -10
- package/{checkbox.component-AHeymsm8.js → checkbox.component-ChQmCxal.js} +1 -1
- package/checkbox.js +2 -2
- package/checkbox.pure.js +2 -2
- package/chip/chip/chip.component.js +1 -1
- package/chip/chip-group/chip-group.component.js +1 -1
- package/{chip-group.component-DbNctvjy.js → chip-group.component-BMpczIZH.js} +23 -23
- package/chip-label/chip-label.component.js +1 -1
- package/{chip-label.component-zRiHSxbn.js → chip-label.component-BLbhqUAp.js} +13 -13
- package/chip-label.js +1 -1
- package/chip-label.pure.js +1 -1
- package/{chip.component-C46iCslu.js → chip.component-gcvF3pEX.js} +13 -17
- package/chip.js +2 -2
- package/chip.pure.js +2 -2
- package/clock/clock.component.js +1 -1
- package/{clock.component-DHb5YwM4.js → clock.component-Cqrl999I.js} +28 -28
- package/clock.js +1 -1
- package/clock.pure.js +1 -1
- package/container/container/container.component.js +1 -1
- package/container/sticky-bar/sticky-bar.component.js +1 -1
- package/{container.component-CJL8qqFp.js → container.component-sQtiqWxT.js} +18 -18
- package/container.js +2 -2
- package/container.pure.js +2 -2
- package/core/base-elements/action-base-element.js +1 -1
- package/core/base-elements/element.js +2 -226
- package/core/base-elements/open-close-base-element.js +1 -1
- package/core/base-elements/selection-group-base-element.js +1 -1
- package/core/controllers/media-matchers-controller.js +1 -1
- package/core/mixins/panel-mixin.js +1 -1
- package/core/styles/styles.js +2 -2
- package/core.js +5 -5
- package/custom-elements.json +5241 -5253
- package/date-input/date-input.component.js +1 -1
- package/date-input.js +1 -1
- package/date-input.pure.js +1 -1
- package/datepicker/common/datepicker-button.js +1 -1
- package/{datepicker-button-BcVi_scv.js → datepicker-button-aYDFZ_3v.js} +17 -21
- package/datepicker.js +1 -1
- package/datepicker.pure.js +1 -1
- package/development/accordion/accordion.component.d.ts.map +1 -1
- package/development/accordion/accordion.component.js +1 -1
- package/development/accordion.component-Bvx-b38W.js +165 -0
- package/development/accordion.js +1 -1
- package/development/accordion.pure.js +1 -1
- package/development/action-group/action-group.component.d.ts.map +1 -1
- package/development/action-group/action-group.component.js +1 -1
- package/development/{action-group.component-9Bkne2tt.js → action-group.component-DZkXqIbQ.js} +3 -3
- package/development/action-group.js +1 -1
- package/development/action-group.pure.js +1 -1
- package/development/alert/alert/alert.component.d.ts.map +1 -1
- package/development/alert/alert/alert.component.js +1 -1
- package/development/alert/alert-group/alert-group.component.d.ts.map +1 -1
- package/development/alert/alert-group/alert-group.component.js +1 -1
- package/development/alert-group.component-w5PbU_4C.js +186 -0
- package/development/{alert.component-Pv-Ol6XU.js → alert.component-DxzF0FOi.js} +3 -3
- package/development/alert.js +2 -2
- package/development/alert.pure.js +2 -2
- package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
- package/development/autocomplete/autocomplete-base-element.js +1 -1
- package/development/autocomplete/autocomplete.component.js +1 -1
- package/development/autocomplete-base-element-CG5m0PpY.js +686 -0
- package/development/autocomplete.js +1 -1
- package/development/autocomplete.pure.js +1 -1
- package/development/{block-link-common-B2zlM5si.js → block-link-common-CoZgcEBY.js} +2 -2
- package/development/breadcrumb/breadcrumb/breadcrumb.component.d.ts.map +1 -1
- package/development/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts.map +1 -1
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +1 -1
- package/development/breadcrumb-group.component-BUBfl6LV.js +193 -0
- package/development/{breadcrumb.component-BLxRIaje.js → breadcrumb.component-D6Cd2FPo.js} +3 -3
- package/development/breadcrumb.js +2 -2
- package/development/breadcrumb.pure.js +2 -2
- package/development/button/common/button-common.d.ts.map +1 -1
- package/development/button/common/button-common.js +1 -1
- package/development/button/mini-button/mini-button.component.d.ts.map +1 -1
- package/development/button/mini-button/mini-button.component.js +3 -7
- package/development/button/mini-button-group/mini-button-group.component.d.ts.map +1 -1
- package/development/button/mini-button-group/mini-button-group.component.js +1 -1
- package/development/button/mini-button-link/mini-button-link.component.d.ts.map +1 -1
- package/development/button/mini-button-link/mini-button-link.component.js +1 -1
- package/development/{button-common-CXgSX4qz.js → button-common-DZUBRwwD.js} +3 -3
- package/development/button.js +3 -3
- package/development/button.pure.js +3 -3
- package/development/calendar/calendar/calendar.component.d.ts.map +1 -1
- package/development/calendar/calendar/calendar.component.js +1 -1
- package/development/calendar/common/calendar-cell-base-element.d.ts.map +1 -1
- package/development/calendar/common/calendar-cell-base-element.js +1 -1
- package/development/{calendar-cell-base-element-Cgin82gG.js → calendar-cell-base-element-mWRSDeWc.js} +3 -3
- package/development/calendar.component-CjlcDyS5.js +1450 -0
- package/development/calendar.js +2 -2
- package/development/calendar.pure.js +2 -2
- package/development/card/card/card.component.d.ts.map +1 -1
- package/development/card/card/card.component.js +1 -1
- package/development/card/card-badge/card-badge.component.d.ts.map +1 -1
- package/development/card/card-badge/card-badge.component.js +1 -1
- package/development/card/common/card-action-common.d.ts.map +1 -1
- package/development/card/common/card-action-common.js +1 -1
- package/development/card-action-common-zS5iNz23.js +115 -0
- package/development/{card-badge.component-CQBLpmpo.js → card-badge.component-CEfJdJBs.js} +3 -3
- package/development/{card.component-CpOdKJJ0.js → card.component-CL2gHoyP.js} +3 -3
- package/development/card.js +3 -3
- package/development/card.pure.js +3 -3
- package/development/carousel/carousel/carousel.component.d.ts.map +1 -1
- package/development/carousel/carousel/carousel.component.js +1 -1
- package/development/carousel.component-ClWvnZ8s.js +139 -0
- package/development/carousel.js +1 -1
- package/development/carousel.pure.js +1 -1
- package/development/checkbox/checkbox.component.js +1 -1
- package/development/checkbox/common/checkbox-common.d.ts.map +1 -1
- package/development/checkbox/common/checkbox-common.js +1 -1
- package/development/{checkbox-common-zrAq1gCy.js → checkbox-common-C3Ekixul.js} +3 -3
- package/development/{checkbox.component-Jhp7gZKb.js → checkbox.component-D6BR8e7w.js} +2 -2
- package/development/checkbox.js +2 -2
- package/development/checkbox.pure.js +2 -2
- package/development/chip/chip/chip.component.d.ts.map +1 -1
- package/development/chip/chip/chip.component.js +1 -1
- package/development/chip/chip-group/chip-group.component.d.ts.map +1 -1
- package/development/chip/chip-group/chip-group.component.js +1 -1
- package/development/chip-group.component-DThvmmnh.js +402 -0
- package/development/chip-label/chip-label.component.d.ts.map +1 -1
- package/development/chip-label/chip-label.component.js +1 -1
- package/development/{chip-label.component-Cx8mfi0y.js → chip-label.component-DHHNtvTt.js} +3 -3
- package/development/chip-label.js +1 -1
- package/development/chip-label.pure.js +1 -1
- package/development/{chip.component-Dfm6zi-M.js → chip.component-Uuf3tGFz.js} +3 -7
- package/development/chip.js +2 -2
- package/development/chip.pure.js +2 -2
- package/development/clock/clock.component.d.ts.map +1 -1
- package/development/clock/clock.component.js +1 -1
- package/development/{clock.component-EqFTxYod.js → clock.component-DcM1WFTN.js} +3 -3
- package/development/clock.js +1 -1
- package/development/clock.pure.js +1 -1
- package/development/{compact-paginator.component-DkOmmbnb.js → compact-paginator.component-Dyj5CulS.js} +1 -1
- package/development/container/container/container.component.d.ts.map +1 -1
- package/development/container/container/container.component.js +1 -1
- package/development/container/sticky-bar/sticky-bar.component.d.ts.map +1 -1
- package/development/container/sticky-bar/sticky-bar.component.js +1 -1
- package/development/{container.component-CM10qyHy.js → container.component-D1Qgp4HW.js} +3 -3
- package/development/container.js +2 -2
- package/development/container.pure.js +2 -2
- package/development/core/base-elements/action-base-element.js +1 -1
- package/development/core/base-elements/element.d.ts +1 -0
- package/development/core/base-elements/element.d.ts.map +1 -1
- package/development/core/base-elements/element.js +1 -387
- package/development/core/base-elements/open-close-base-element.js +1 -1
- package/development/core/base-elements/selection-group-base-element.d.ts.map +1 -1
- package/development/core/base-elements/selection-group-base-element.js +1 -1
- package/development/core/controllers/media-matchers-controller.js +1 -1
- package/development/core/mixins/panel-mixin.d.ts.map +1 -1
- package/development/core/mixins/panel-mixin.js +1 -1
- package/development/core/styles/styles.d.ts +0 -1
- package/development/core/styles/styles.d.ts.map +1 -1
- package/development/core/styles/styles.js +2 -2
- package/development/core.js +5 -5
- package/development/date-input/date-input.component.js +1 -1
- package/development/{date-input.component-D8tOBRFO.js → date-input.component-HxRyCudr.js} +1 -1
- package/development/date-input.js +1 -1
- package/development/date-input.pure.js +1 -1
- package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
- package/development/datepicker/common/datepicker-button.js +1 -1
- package/development/datepicker-button-BAT1ebzJ.js +171 -0
- package/development/datepicker.js +1 -1
- package/development/datepicker.pure.js +1 -1
- package/development/dialog/dialog/dialog.component.d.ts.map +1 -1
- package/development/dialog/dialog/dialog.component.js +1 -1
- package/development/dialog/dialog-actions/dialog-actions.component.js +1 -1
- package/development/dialog/dialog-close-button/dialog-close-button.component.js +1 -1
- package/development/dialog/dialog-content/dialog-content.component.js +1 -1
- package/development/dialog/dialog-title/dialog-title.component.js +1 -1
- package/development/{dialog-actions.component-JnuXNR99.js → dialog-actions.component-e0ZTTUin.js} +1 -1
- package/development/{dialog-close-button.component-Cucp_HVP.js → dialog-close-button.component-Idc00dB9.js} +1 -1
- package/development/{dialog-content.component-Bzt-PL6f.js → dialog-content.component-CThU7Z8A.js} +1 -1
- package/development/{dialog-title.component-CfGpsHCz.js → dialog-title.component-0uNsUR2C.js} +1 -1
- package/development/{dialog.component-DjxAwBDc.js → dialog.component-AItB8ixG.js} +3 -7
- package/development/dialog.js +5 -5
- package/development/dialog.pure.js +5 -5
- package/development/divider/divider.component.d.ts.map +1 -1
- package/development/divider/divider.component.js +1 -1
- package/development/{divider.component-C82x1v2R.js → divider.component-Ck_0vISe.js} +3 -3
- package/development/divider.js +1 -1
- package/development/divider.pure.js +1 -1
- package/development/element-BAsBayf5.js +394 -0
- package/development/{error.component-DsJhsfir.js → error.component-WCkiwM7_.js} +3 -3
- package/development/expansion-panel/expansion-panel/expansion-panel.component.d.ts.map +1 -1
- package/development/expansion-panel/expansion-panel/expansion-panel.component.js +1 -1
- package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts.map +1 -1
- package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
- package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts.map +1 -1
- package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +1 -1
- package/development/{expansion-panel-content.component-BM_JVsIs.js → expansion-panel-content.component-BUbiseFP.js} +3 -3
- package/development/{expansion-panel-header.component-DFTa_og5.js → expansion-panel-header.component-CQFSwrqu.js} +3 -3
- package/development/{expansion-panel.component-BBESRMTr.js → expansion-panel.component-BVdylpqi.js} +3 -3
- package/development/expansion-panel.js +3 -3
- package/development/expansion-panel.pure.js +3 -3
- package/development/file-selector/common/file-selector-common.d.ts.map +1 -1
- package/development/file-selector/common/file-selector-common.js +1 -1
- package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
- package/development/file-selector-common-Da0KNfDP.js +413 -0
- package/development/{file-selector-dropzone.component-ZCanLwF-.js → file-selector-dropzone.component-Bdcau18t.js} +1 -1
- package/development/file-selector.js +2 -2
- package/development/file-selector.pure.js +2 -2
- package/development/flip-card/flip-card/flip-card.component.d.ts.map +1 -1
- package/development/flip-card/flip-card/flip-card.component.js +1 -1
- package/development/flip-card/flip-card-details/flip-card-details.component.d.ts.map +1 -1
- package/development/flip-card/flip-card-details/flip-card-details.component.js +1 -1
- package/development/flip-card/flip-card-summary/flip-card-summary.component.d.ts.map +1 -1
- package/development/flip-card/flip-card-summary/flip-card-summary.component.js +1 -1
- package/development/{flip-card-details.component-C_8cY6Vi.js → flip-card-details.component-BYv_W66a.js} +3 -3
- package/development/{flip-card-summary.component-Dt81jqiA.js → flip-card-summary.component-C-US77Nw.js} +3 -3
- package/development/{flip-card.component-DJIHnUkf.js → flip-card.component-DujrPKzU.js} +3 -7
- package/development/flip-card.js +3 -3
- package/development/flip-card.pure.js +3 -3
- package/development/footer/footer.component.d.ts.map +1 -1
- package/development/footer/footer.component.js +1 -1
- package/development/{footer.component-DTyNIVCR.js → footer.component-K2bWizjw.js} +3 -7
- package/development/footer.js +1 -1
- package/development/footer.pure.js +1 -1
- package/development/form-field/error/error.component.d.ts.map +1 -1
- package/development/form-field/error/error.component.js +1 -1
- package/development/form-field/form-field/form-field.component.d.ts.map +1 -1
- package/development/form-field/form-field/form-field.component.js +1 -1
- package/development/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
- package/development/form-field/form-field-clear/form-field-clear.component.js +3 -3
- package/development/form-field/hint/hint.component.d.ts.map +1 -1
- package/development/form-field/hint/hint.component.js +1 -1
- package/development/{form-field.component-D6K-EbaH.js → form-field.component-_lnIpJF5.js} +3 -3
- package/development/form-field.js +3 -3
- package/development/form-field.pure.js +3 -3
- package/development/header/common/header-action-common.d.ts.map +1 -1
- package/development/header/common/header-action-common.js +1 -1
- package/development/header/header/header.component.d.ts.map +1 -1
- package/development/header/header/header.component.js +1 -1
- package/development/header/header-environment/header-environment.component.d.ts.map +1 -1
- package/development/header/header-environment/header-environment.component.js +1 -1
- package/development/{header-action-common-gt9IY50k.js → header-action-common-CQ1CaaBd.js} +2 -3
- package/development/{header-environment.component-DfT6uNxN.js → header-environment.component-CIyxQwkQ.js} +3 -3
- package/development/{header.component-DQkC1zdO.js → header.component-BX1rKPa_.js} +3 -3
- package/development/header.js +3 -3
- package/development/header.pure.js +3 -3
- package/development/{hint.component-DLfPVKoX.js → hint.component-BB9QLGGx.js} +3 -3
- package/development/icon/icon-base.d.ts.map +1 -1
- package/development/icon/icon-base.js +1 -1
- package/development/icon/icon.component.js +1 -1
- package/development/{icon-base-Sc3RF9J2.js → icon-base-DrBHy9BT.js} +3 -3
- package/development/icon-sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
- package/development/icon-sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +1 -1
- package/development/icon-sidebar/icon-sidebar-button/icon-sidebar-button.component.js +3 -3
- package/development/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.js +1 -1
- package/development/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
- package/development/icon-sidebar/icon-sidebar-link/icon-sidebar-link.component.d.ts.map +1 -1
- package/development/icon-sidebar/icon-sidebar-link/icon-sidebar-link.component.js +3 -3
- package/development/{icon-sidebar-container.component-r000Jrld.js → icon-sidebar-container.component-CM94Spwy.js} +1 -1
- package/development/{icon-sidebar-content.component-CfyydnHQ.js → icon-sidebar-content.component-BP9W5ZxR.js} +1 -1
- package/development/{icon-sidebar.component-DiPgP4tF.js → icon-sidebar.component-B68P2aNh.js} +1 -1
- package/development/icon-sidebar.js +3 -3
- package/development/icon-sidebar.pure.js +3 -3
- package/development/icon.js +1 -1
- package/development/icon.pure.js +1 -1
- package/development/image/image.component.d.ts.map +1 -1
- package/development/image/image.component.js +1 -1
- package/development/image.component-EfSMgHI_.js +772 -0
- package/development/image.js +1 -1
- package/development/image.pure.js +1 -1
- package/development/{inline-link-common-D0ucqLI0.js → inline-link-common-gmt6yz3v.js} +2 -2
- package/development/journey-header/journey-header.component.d.ts.map +1 -1
- package/development/journey-header/journey-header.component.js +1 -1
- package/development/{journey-header.component-CbtLbBj8.js → journey-header.component-CA4juz9x.js} +3 -3
- package/development/journey-header.js +1 -1
- package/development/journey-header.pure.js +1 -1
- package/development/lead-container/lead-container.component.d.ts.map +1 -1
- package/development/lead-container/lead-container.component.js +1 -1
- package/development/{lead-container.component-DoeIl1hc.js → lead-container.component-C_mFeq1B.js} +3 -3
- package/development/lead-container.js +1 -1
- package/development/lead-container.pure.js +1 -1
- package/development/link/common/block-link-common.js +1 -1
- package/development/link/common/inline-link-common.js +1 -1
- package/development/link/common/link-common.d.ts.map +1 -1
- package/development/link/common/link-common.js +1 -1
- package/development/{link-common-CVPiVpe3.js → link-common-2RGn9Qz_.js} +3 -3
- package/development/link-list/common/link-list-base.d.ts.map +1 -1
- package/development/link-list/common/link-list-base.js +1 -1
- package/development/link-list/link-list.component.js +1 -1
- package/development/link-list-anchor/link-list-anchor.component.js +1 -1
- package/development/{link-list-anchor.component-CfpDrucM.js → link-list-anchor.component-Csb-FOQL.js} +1 -1
- package/development/link-list-anchor.js +1 -1
- package/development/link-list-anchor.pure.js +1 -1
- package/development/{link-list-base-DHx1uyIJ.js → link-list-base-QADBTZCN.js} +3 -3
- package/development/{link-list.component-BnwPCXG4.js → link-list.component-CKVU3Gsr.js} +2 -2
- package/development/link-list.js +2 -2
- package/development/link-list.pure.js +2 -2
- package/development/link.js +3 -3
- package/development/link.pure.js +3 -3
- package/development/loading-indicator/loading-indicator.component.d.ts.map +1 -1
- package/development/loading-indicator/loading-indicator.component.js +1 -1
- package/development/loading-indicator-circle/loading-indicator-circle.component.d.ts.map +1 -1
- package/development/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
- package/development/{loading-indicator-circle.component-DmqQkjPz.js → loading-indicator-circle.component-Cfjw5vyz.js} +3 -3
- package/development/loading-indicator-circle.js +1 -1
- package/development/loading-indicator-circle.pure.js +1 -1
- package/development/{loading-indicator.component-6BcRDOoZ.js → loading-indicator.component-By2VaLCf.js} +3 -3
- package/development/loading-indicator.js +1 -1
- package/development/loading-indicator.pure.js +1 -1
- package/development/logo/logo.component.d.ts.map +1 -1
- package/development/logo/logo.component.js +1 -1
- package/development/{logo.component-lqHep6rX.js → logo.component-DYKgAgq0.js} +3 -3
- package/development/logo.js +1 -1
- package/development/logo.pure.js +1 -1
- package/development/map-container/map-container.component.d.ts.map +1 -1
- package/development/map-container/map-container.component.js +1 -1
- package/development/{map-container.component-DoFCVBoh.js → map-container.component-D0UVTolK.js} +3 -7
- package/development/map-container.js +1 -1
- package/development/map-container.pure.js +1 -1
- package/development/menu/common/menu-action-common.d.ts.map +1 -1
- package/development/menu/common/menu-action-common.js +1 -1
- package/development/menu/menu/menu.component.d.ts.map +1 -1
- package/development/menu/menu/menu.component.js +1 -1
- package/development/{menu-action-common-zev1oItt.js → menu-action-common-DRXQc85Y.js} +3 -3
- package/development/menu.component-Cv9wRj4H.js +365 -0
- package/development/menu.js +2 -2
- package/development/menu.pure.js +2 -2
- package/development/message/message.component.d.ts.map +1 -1
- package/development/message/message.component.js +1 -1
- package/development/{message.component-BJrDM-LZ.js → message.component-CdO5GyE2.js} +3 -3
- package/development/message.js +1 -1
- package/development/message.pure.js +1 -1
- package/development/{mini-button-group.component-DNFyLMg_.js → mini-button-group.component-Bg-etiu1.js} +3 -3
- package/development/mini-button-link.component-kpRsi8I2.js +39 -0
- package/development/mini-calendar/mini-calendar/mini-calendar.component.js +1 -1
- package/development/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +1 -1
- package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.d.ts.map +1 -1
- package/development/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +1 -1
- package/development/{mini-calendar-day.component-WHlLpVfT.js → mini-calendar-day.component-BLkJ12Bw.js} +1 -1
- package/development/{mini-calendar-month.component-CtNDvZLH.js → mini-calendar-month.component-D8XjjLmN.js} +3 -3
- package/development/{mini-calendar.component-ypFhmHjj.js → mini-calendar.component-BOk8JovO.js} +1 -1
- package/development/mini-calendar.js +3 -3
- package/development/mini-calendar.pure.js +3 -3
- package/development/navigation/common/navigation-action-common.d.ts.map +1 -1
- package/development/navigation/common/navigation-action-common.js +1 -1
- package/development/navigation/navigation/navigation.component.d.ts.map +1 -1
- package/development/navigation/navigation/navigation.component.js +1 -1
- package/development/navigation/navigation-list/navigation-list.component.d.ts.map +1 -1
- package/development/navigation/navigation-list/navigation-list.component.js +1 -1
- package/development/navigation/navigation-marker/navigation-marker.component.d.ts.map +1 -1
- package/development/navigation/navigation-marker/navigation-marker.component.js +1 -1
- package/development/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
- package/development/navigation/navigation-section/navigation-section.component.js +1 -1
- package/development/{navigation-action-common-BrO3JPmN.js → navigation-action-common-CGy4K8q-.js} +2 -3
- package/development/{navigation-list.component-DDjMz5TE.js → navigation-list.component-DrdbtDRs.js} +3 -3
- package/development/{navigation-marker.component-Cd6apD2P.js → navigation-marker.component-fB05cjtE.js} +3 -3
- package/development/{navigation-section.component-D3_XVwyt.js → navigation-section.component-iaypc6yQ.js} +3 -7
- package/development/{navigation.component-Cco4llBt.js → navigation.component-CqNkBvEs.js} +3 -7
- package/development/navigation.js +5 -5
- package/development/navigation.pure.js +5 -5
- package/development/notification/notification.component.d.ts.map +1 -1
- package/development/notification/notification.component.js +1 -1
- package/development/{notification.component-CqmGbIWI.js → notification.component-D0rkSF3p.js} +3 -3
- package/development/notification.js +1 -1
- package/development/notification.pure.js +1 -1
- package/development/{optgroup-base-element-CUh4tWc1.js → optgroup-base-element-BEG1P4gK.js} +3 -3
- package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/development/option/optgroup/optgroup-base-element.js +1 -1
- package/development/option/optgroup/optgroup.component.js +1 -1
- package/development/option/option/option-base-element.d.ts.map +1 -1
- package/development/option/option/option-base-element.js +3 -3
- package/development/option/option/option.component.js +1 -1
- package/development/option/option-hint/option-hint.component.d.ts.map +1 -1
- package/development/option/option-hint/option-hint.component.js +1 -1
- package/development/{option-hint.component-D4P0hM0D.js → option-hint.component-CcSUSwjN.js} +3 -3
- package/development/{option.component-BPHnz8y-.js → option.component-BEbIEh5o.js} +1 -1
- package/development/option.js +3 -3
- package/development/option.pure.js +3 -3
- package/development/overlay/overlay-base-element.d.ts.map +1 -1
- package/development/overlay/overlay-base-element.js +3 -3
- package/development/overlay/overlay.component.js +1 -1
- package/development/{overlay.component-DBzb0PdD.js → overlay.component-rFmitc_r.js} +1 -1
- package/development/overlay.js +1 -1
- package/development/overlay.pure.js +1 -1
- package/development/paginator/common/paginator-common.d.ts.map +1 -1
- package/development/paginator/common/paginator-common.js +3 -3
- package/development/paginator/compact-paginator/compact-paginator.component.js +1 -1
- package/development/paginator/paginator/paginator.component.js +1 -1
- package/development/{paginator.component-D90qfI3Z.js → paginator.component-DIuiY7It.js} +1 -1
- package/development/paginator.js +2 -2
- package/development/paginator.pure.js +2 -2
- package/development/{panel-mixin-Doy4ko_C.js → panel-mixin-CFz9-K_8.js} +2 -3
- package/development/popover/popover.component.d.ts.map +1 -1
- package/development/popover/popover.component.js +1 -1
- package/development/popover.component-Bvbf4NyI.js +564 -0
- package/development/popover.js +1 -1
- package/development/popover.pure.js +1 -1
- package/development/radio-button/common/radio-button-common.d.ts.map +1 -1
- package/development/radio-button/common/radio-button-common.js +1 -1
- package/development/radio-button/radio-button.component.js +1 -1
- package/development/{radio-button-common-DvTx7Pb7.js → radio-button-common-tC_l-WdB.js} +3 -3
- package/development/{radio-button.component-DDz0a27A.js → radio-button.component-3BV31Fkc.js} +2 -2
- package/development/radio-button.js +2 -2
- package/development/radio-button.pure.js +2 -2
- package/development/{sbb-tokens-CGxax8uX.js → sbb-tokens-bg2elLoF.js} +1 -1
- package/development/select/select.component.d.ts.map +1 -1
- package/development/select/select.component.js +1 -1
- package/development/select.component-B8_tnz6D.js +806 -0
- package/development/select.js +1 -1
- package/development/select.pure.js +1 -1
- package/development/selection-action-panel/selection-action-panel.component.d.ts.map +1 -1
- package/development/selection-action-panel/selection-action-panel.component.js +1 -1
- package/development/{selection-action-panel.component-BcchCvch.js → selection-action-panel.component-ClpKsc-Z.js} +3 -3
- package/development/selection-action-panel.js +1 -1
- package/development/selection-action-panel.pure.js +1 -1
- package/development/selection-expansion-panel/selection-expansion-panel.component.d.ts.map +1 -1
- package/development/selection-expansion-panel/selection-expansion-panel.component.js +1 -1
- package/development/{selection-expansion-panel.component-SdD5Vqz8.js → selection-expansion-panel.component-CTCVJiug.js} +3 -3
- package/development/selection-expansion-panel.js +1 -1
- package/development/selection-expansion-panel.pure.js +1 -1
- package/development/{selection-group-base-element-rKKX4OAJ.js → selection-group-base-element-RafKyWXP.js} +3 -4
- package/development/sidebar/sidebar/sidebar.component.d.ts.map +1 -1
- package/development/sidebar/sidebar/sidebar.component.js +1 -1
- package/development/sidebar/sidebar-close-button/sidebar-close-button.component.js +1 -1
- package/development/sidebar/sidebar-container/sidebar-container.component.d.ts.map +1 -1
- package/development/sidebar/sidebar-container/sidebar-container.component.js +1 -1
- package/development/sidebar/sidebar-content/sidebar-content.component.js +1 -1
- package/development/sidebar/sidebar-title/sidebar-title.component.js +1 -1
- package/development/{sidebar-close-button.component-Dz6l27_H.js → sidebar-close-button.component-D_grme_h.js} +1 -1
- package/development/sidebar-container.component-C_cu3Vfy.js +100 -0
- package/development/{sidebar-content.component-CpaONvN0.js → sidebar-content.component-CbYPeaaz.js} +1 -1
- package/development/{sidebar-title.component-BGlNsXi6.js → sidebar-title.component-BFqfnG6B.js} +1 -1
- package/development/{sidebar.component-CYLbI1Vp.js → sidebar.component-DcVKyd9R.js} +3 -7
- package/development/sidebar.js +5 -5
- package/development/sidebar.pure.js +5 -5
- package/development/signet/signet.component.d.ts.map +1 -1
- package/development/signet/signet.component.js +1 -1
- package/development/{signet.component-CeEFPNPy.js → signet.component-NdFqUZK9.js} +3 -3
- package/development/signet.js +1 -1
- package/development/signet.pure.js +1 -1
- package/development/skiplink-list/skiplink-list.component.d.ts.map +1 -1
- package/development/skiplink-list/skiplink-list.component.js +1 -1
- package/development/{skiplink-list.component-uY9Pkn0A.js → skiplink-list.component-ppyytKn2.js} +3 -3
- package/development/skiplink-list.js +1 -1
- package/development/skiplink-list.pure.js +1 -1
- package/development/slider/slider.component.d.ts.map +1 -1
- package/development/slider/slider.component.js +1 -1
- package/development/{slider.component-D4t9l9OV.js → slider.component-k8g6G0j9.js} +3 -3
- package/development/slider.js +1 -1
- package/development/slider.pure.js +1 -1
- package/development/status/status.component.d.ts.map +1 -1
- package/development/status/status.component.js +1 -1
- package/development/{status.component-BjAC7YA_.js → status.component-CtTNDvLl.js} +3 -3
- package/development/status.js +1 -1
- package/development/status.pure.js +1 -1
- package/development/{step-label.component-BpXswj8i.js → step-label.component-BpuNDWKl.js} +3 -3
- package/development/step.component-Di2fT-VG.js +146 -0
- package/development/stepper/step/step.component.d.ts.map +1 -1
- package/development/stepper/step/step.component.js +1 -1
- package/development/stepper/step-label/step-label.component.d.ts.map +1 -1
- package/development/stepper/step-label/step-label.component.js +1 -1
- package/development/stepper/stepper/stepper.component.d.ts.map +1 -1
- package/development/stepper/stepper/stepper.component.js +1 -1
- package/development/stepper.component-BnCUoYv6.js +423 -0
- package/development/stepper.js +3 -3
- package/development/stepper.pure.js +3 -3
- package/development/{sticky-bar.component-CVKi_65S.js → sticky-bar.component-BrSBKlh-.js} +3 -3
- package/development/{styles-B_IWjHc5.js → styles-BzEbxmCd.js} +2 -6
- package/development/{styles-B8pcODdC.js → styles-Jlhoev1S.js} +1 -1
- package/development/tab-group.component-o1F-M_-2.js +266 -0
- package/development/{tab-label.component-Dr76CFQ5.js → tab-label.component-CPaKKeox.js} +3 -7
- package/development/tab-nav-bar.component-3uXgOman.js +110 -0
- package/development/{tab.component-CXyFknm8.js → tab.component-DxZtEaTP.js} +1 -1
- package/development/table/table-wrapper/table-wrapper.component.js +1 -1
- package/development/{table-wrapper.component-D8IFPow6.js → table-wrapper.component-Ba6NpQu1.js} +1 -1
- package/development/table.js +1 -1
- package/development/table.pure.js +1 -1
- package/development/tabs/common/styles.js +1 -1
- package/development/tabs/tab/tab.component.js +1 -1
- package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
- package/development/tabs/tab-group/tab-group.component.js +1 -1
- package/development/tabs/tab-label/tab-label.component.d.ts.map +1 -1
- package/development/tabs/tab-label/tab-label.component.js +1 -1
- package/development/tabs/tab-nav-bar/tab-nav-bar.component.d.ts.map +1 -1
- package/development/tabs/tab-nav-bar/tab-nav-bar.component.js +1 -1
- package/development/tabs.js +5 -5
- package/development/tabs.pure.js +5 -5
- package/development/tag/tag/tag.component.d.ts.map +1 -1
- package/development/tag/tag/tag.component.js +1 -1
- package/development/tag/tag-group/tag-group.component.d.ts.map +1 -1
- package/development/tag/tag-group/tag-group.component.js +1 -1
- package/development/tag-group.component-CYL62Umh.js +196 -0
- package/development/{tag.component-CD64GHEg.js → tag.component-D5DYXQ3i.js} +3 -3
- package/development/tag.js +2 -2
- package/development/tag.pure.js +2 -2
- package/development/teaser/teaser.component.d.ts.map +1 -1
- package/development/teaser/teaser.component.js +1 -1
- package/development/teaser-hero/teaser-hero.component.d.ts.map +1 -1
- package/development/teaser-hero/teaser-hero.component.js +1 -1
- package/development/{teaser-hero.component-Cwovx5MH.js → teaser-hero.component-DrdkFx5X.js} +3 -3
- package/development/teaser-hero.js +1 -1
- package/development/teaser-hero.pure.js +1 -1
- package/development/teaser-panel/teaser-panel.component.d.ts.map +1 -1
- package/development/teaser-panel/teaser-panel.component.js +1 -1
- package/development/{teaser-panel.component-WJL2i741.js → teaser-panel.component-WSXbBzCq.js} +3 -3
- package/development/teaser-panel.js +1 -1
- package/development/teaser-panel.pure.js +1 -1
- package/development/teaser-product/common/teaser-product-common.d.ts.map +1 -1
- package/development/teaser-product/common/teaser-product-common.js +1 -1
- package/development/teaser-product/teaser-product/teaser-product.component.js +1 -1
- package/development/{teaser-product-common-ChG0_NH6.js → teaser-product-common-B8a-KHTi.js} +3 -3
- package/development/{teaser-product.component-EpVRs6g3.js → teaser-product.component-gHjSaG6c.js} +1 -1
- package/development/teaser-product.js +2 -2
- package/development/teaser-product.pure.js +2 -2
- package/development/{teaser.component-BZ6jLwOu.js → teaser.component-B8kQNF6g.js} +3 -3
- package/development/teaser.js +1 -1
- package/development/teaser.pure.js +1 -1
- package/development/time-input/time-input.component.js +1 -1
- package/development/{time-input.component-CM0e8nvQ.js → time-input.component-Bc4Sfu-1.js} +1 -1
- package/development/time-input.js +1 -1
- package/development/time-input.pure.js +1 -1
- package/development/timetable-form/timetable-form/timetable-form.component.js +1 -1
- package/development/timetable-form/timetable-form-details/timetable-form-details.component.js +1 -1
- package/development/timetable-form/timetable-form-field/timetable-form-field.component.js +1 -1
- package/development/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.js +1 -1
- package/development/{timetable-form-details.component-DF_c1skc.js → timetable-form-details.component-DacESFsP.js} +1 -1
- package/development/{timetable-form-field.component-CoV4V8Lv.js → timetable-form-field.component-DWCb4SY0.js} +1 -1
- package/development/{timetable-form-swap-button.component-B68AZbbq.js → timetable-form-swap-button.component-DGCpV2_y.js} +1 -1
- package/development/{timetable-form.component-Ci0pxhNz.js → timetable-form.component-CtRlKR7e.js} +1 -1
- package/development/timetable-form.js +4 -4
- package/development/timetable-form.pure.js +4 -4
- package/development/timetable-occupancy/timetable-occupancy.component.d.ts.map +1 -1
- package/development/timetable-occupancy/timetable-occupancy.component.js +1 -1
- package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.js +1 -1
- package/development/{timetable-occupancy-icon.component-CVdSBTO9.js → timetable-occupancy-icon.component-uaabLEC5.js} +1 -1
- package/development/timetable-occupancy-icon.js +1 -1
- package/development/timetable-occupancy-icon.pure.js +1 -1
- package/development/{timetable-occupancy.component-CoNE3YUe.js → timetable-occupancy.component-DKWki5pG.js} +3 -7
- package/development/timetable-occupancy.js +1 -1
- package/development/timetable-occupancy.pure.js +1 -1
- package/development/title/title-base.js +1 -1
- package/development/title/title.component.js +1 -1
- package/development/{title-base-ByMJQE3I.js → title-base-fg03gSOD.js} +1 -1
- package/development/{title.component-A-ng32xE.js → title.component-B1Uq-Ctr.js} +2 -2
- package/development/title.js +2 -2
- package/development/title.pure.js +2 -2
- package/development/toast/toast.component.d.ts.map +1 -1
- package/development/toast/toast.component.js +1 -1
- package/development/{toast.component-AHcIpqsE.js → toast.component-DeQSxWdf.js} +3 -3
- package/development/toast.js +1 -1
- package/development/toast.pure.js +1 -1
- package/development/toggle/toggle/toggle.component.d.ts.map +1 -1
- package/development/toggle/toggle/toggle.component.js +1 -1
- package/development/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
- package/development/toggle/toggle-option/toggle-option.component.js +1 -1
- package/development/toggle-check/toggle-check.component.d.ts.map +1 -1
- package/development/toggle-check/toggle-check.component.js +1 -1
- package/development/{toggle-check.component-C8ieWZGi.js → toggle-check.component-BUYj49gP.js} +3 -3
- package/development/toggle-check.js +1 -1
- package/development/toggle-check.pure.js +1 -1
- package/development/toggle-option.component-heU6pMCB.js +164 -0
- package/development/toggle.component-DndGyA1x.js +244 -0
- package/development/toggle.js +2 -2
- package/development/toggle.pure.js +2 -2
- package/development/tooltip/tooltip.component.d.ts.map +1 -1
- package/development/tooltip/tooltip.component.js +1 -1
- package/development/tooltip.component-BjOgv29e.js +369 -0
- package/development/tooltip.js +1 -1
- package/development/tooltip.pure.js +1 -1
- package/development/train/train/train.component.d.ts.map +1 -1
- package/development/train/train/train.component.js +1 -1
- package/development/train/train-blocked-passage/train-blocked-passage.component.d.ts.map +1 -1
- package/development/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
- package/development/train/train-formation/train-formation.component.d.ts.map +1 -1
- package/development/train/train-formation/train-formation.component.js +1 -1
- package/development/train/train-wagon-common.d.ts.map +1 -1
- package/development/train/train-wagon-common.js +1 -1
- package/development/{train-blocked-passage.component-OZovrT7K.js → train-blocked-passage.component-2TuSqbDg.js} +3 -3
- package/development/{train-formation.component-BCI6okR1.js → train-formation.component-BYB03zX5.js} +3 -7
- package/development/{train-wagon-common-rq0Ptt97.js → train-wagon-common-C-0fI1r2.js} +3 -3
- package/development/{train.component-Dc4unzp3.js → train.component-BDG8SlCc.js} +3 -3
- package/development/train.js +4 -4
- package/development/train.pure.js +4 -4
- package/development/visual-checkbox/visual-checkbox.component.d.ts.map +1 -1
- package/development/visual-checkbox/visual-checkbox.component.js +1 -1
- package/development/{visual-checkbox.component-DrpsZh5z.js → visual-checkbox.component-Dzdm0TH-.js} +3 -3
- package/development/visual-checkbox.js +1 -1
- package/development/visual-checkbox.pure.js +1 -1
- package/dialog/dialog/dialog.component.js +1 -1
- package/dialog/dialog-actions/dialog-actions.component.js +1 -1
- package/dialog/dialog-close-button/dialog-close-button.component.js +1 -1
- package/dialog/dialog-content/dialog-content.component.js +1 -1
- package/dialog/dialog-title/dialog-title.component.js +1 -1
- package/{dialog.component-QO__vnjp.js → dialog.component-4O3__zyd.js} +23 -27
- package/dialog.js +5 -5
- package/dialog.pure.js +5 -5
- package/divider/divider.component.js +1 -1
- package/{divider.component-CBJzhdCf.js → divider.component-WsZcNUnN.js} +11 -11
- package/divider.js +1 -1
- package/divider.pure.js +1 -1
- package/element-C7t5_1gu.js +229 -0
- package/{error.component-BQunFrfb.js → error.component-D9Tu2YIl.js} +4 -4
- package/expansion-panel/expansion-panel/expansion-panel.component.js +1 -1
- package/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
- package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +1 -1
- package/{expansion-panel-content.component-BUIoU-or.js → expansion-panel-content.component-Cf1CWu5_.js} +4 -4
- package/{expansion-panel-header.component-BecyqC-C.js → expansion-panel-header.component-DloOF4eC.js} +6 -6
- package/{expansion-panel.component-CsWsLEVk.js → expansion-panel.component-5heRRQ0C.js} +24 -24
- package/expansion-panel.js +3 -3
- package/expansion-panel.pure.js +3 -3
- package/file-selector/common/file-selector-common.js +1 -1
- package/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
- package/{file-selector-common-PcqPdsnN.js → file-selector-common-CmbsJ64j.js} +37 -41
- package/file-selector.js +2 -2
- package/file-selector.pure.js +2 -2
- package/flip-card/flip-card/flip-card.component.js +1 -1
- package/flip-card/flip-card-details/flip-card-details.component.js +1 -1
- package/flip-card/flip-card-summary/flip-card-summary.component.js +1 -1
- package/{flip-card-details.component-BimJHkPF.js → flip-card-details.component-BgOeJ53R.js} +6 -6
- package/{flip-card-summary.component-BddrB2kn.js → flip-card-summary.component-CuMMdJ-B.js} +12 -12
- package/{flip-card.component-B5LwF2C_.js → flip-card.component-CZ0v44Ym.js} +18 -22
- package/flip-card.js +3 -3
- package/flip-card.pure.js +3 -3
- package/footer/footer.component.js +1 -1
- package/{footer.component-CiGxXBJM.js → footer.component-DsIoOLu-.js} +22 -26
- package/footer.js +1 -1
- package/footer.pure.js +1 -1
- package/form-field/error/error.component.js +1 -1
- package/form-field/form-field/form-field.component.js +1 -1
- package/form-field/form-field-clear/form-field-clear.component.js +8 -8
- package/form-field/hint/hint.component.js +1 -1
- package/{form-field.component-AvB2mmM3.js → form-field.component-Dg-a3lS5.js} +18 -18
- package/form-field.js +3 -3
- package/form-field.pure.js +3 -3
- package/header/common/header-action-common.js +1 -1
- package/header/header/header.component.js +1 -1
- package/header/header-environment/header-environment.component.js +1 -1
- package/{header-action-common-LmhQeks_.js → header-action-common-B1jGzY-U.js} +14 -15
- package/{header-environment.component-BpuOXQN7.js → header-environment.component-B0VYZh7C.js} +6 -6
- package/{header.component-DWkBSP4V.js → header.component-Bj7phY1B.js} +18 -18
- package/header.js +3 -3
- package/header.pure.js +3 -3
- package/{hint.component-BmPr9V0f.js → hint.component-DTKfI9tq.js} +4 -4
- package/icon/icon-base.js +1 -1
- package/icon/icon.component.js +1 -1
- package/{icon-base-B1dFqEI3.js → icon-base-CCpB1w3b.js} +21 -21
- package/icon-sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
- package/icon-sidebar/icon-sidebar-button/icon-sidebar-button.component.js +6 -6
- package/icon-sidebar/icon-sidebar-container/icon-sidebar-container.component.js +1 -1
- package/icon-sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
- package/icon-sidebar/icon-sidebar-link/icon-sidebar-link.component.js +6 -6
- package/icon-sidebar.js +3 -3
- package/icon-sidebar.pure.js +3 -3
- package/icon.js +1 -1
- package/icon.pure.js +1 -1
- package/image/image.component.js +1 -1
- package/{image.component-Dcajfjbs.js → image.component-BSSyfPru.js} +28 -28
- package/image.js +1 -1
- package/image.pure.js +1 -1
- package/{inline-link-common-afDDbZ-k.js → inline-link-common-BqqH1ExY.js} +1 -1
- package/journey-header/journey-header.component.js +1 -1
- package/{journey-header.component-B7R7bNJZ.js → journey-header.component-CXyULeHJ.js} +17 -17
- package/journey-header.js +1 -1
- package/journey-header.pure.js +1 -1
- package/lead-container/lead-container.component.js +1 -1
- package/{lead-container.component-CVQGE7o8.js → lead-container.component-CdfHJFFN.js} +4 -4
- package/lead-container.js +1 -1
- package/lead-container.pure.js +1 -1
- package/link/common/block-link-common.js +1 -1
- package/link/common/inline-link-common.js +1 -1
- package/link/common/link-common.js +1 -1
- package/{link-common-D836V2nr.js → link-common-ezSu7e9c.js} +8 -8
- package/link-list/common/link-list-base.js +1 -1
- package/link-list/link-list.component.js +1 -1
- package/link-list-anchor/link-list-anchor.component.js +1 -1
- package/link-list-anchor.js +1 -1
- package/link-list-anchor.pure.js +1 -1
- package/{link-list-base-DfOgyR8E.js → link-list-base-CEEw1SMd.js} +16 -16
- package/{link-list.component-C_mSHB4h.js → link-list.component-CS4KuMkQ.js} +1 -1
- package/link-list.js +2 -2
- package/link-list.pure.js +2 -2
- package/link.js +3 -3
- package/link.pure.js +3 -3
- package/loading-indicator/loading-indicator.component.js +1 -1
- package/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
- package/{loading-indicator-circle.component-CgqadcUv.js → loading-indicator-circle.component-CSU2Ludy.js} +11 -11
- package/loading-indicator-circle.js +1 -1
- package/loading-indicator-circle.pure.js +1 -1
- package/{loading-indicator.component-DgNER2FZ.js → loading-indicator.component-DxyhIaFo.js} +13 -13
- package/loading-indicator.js +1 -1
- package/loading-indicator.pure.js +1 -1
- package/logo/logo.component.js +1 -1
- package/{logo.component-BHvsB47f.js → logo.component-DVMNS8Op.js} +14 -14
- package/logo.js +1 -1
- package/logo.pure.js +1 -1
- package/map-container/map-container.component.js +1 -1
- package/{map-container.component-5I5DW5dJ.js → map-container.component-DyJBA3qj.js} +17 -21
- package/map-container.js +1 -1
- package/map-container.pure.js +1 -1
- package/menu/common/menu-action-common.js +1 -1
- package/menu/menu/menu.component.js +1 -1
- package/{menu-action-common-qkxdgw3d.js → menu-action-common-Wy36tk18.js} +7 -7
- package/{menu.component-Bd37u3Ps.js → menu.component-DrrKSRmJ.js} +30 -34
- package/menu.js +2 -2
- package/menu.pure.js +2 -2
- package/message/message.component.js +1 -1
- package/{message.component-CVwD82YK.js → message.component-CdfsCpnE.js} +4 -4
- package/message.js +1 -1
- package/message.pure.js +1 -1
- package/{mini-button-group.component-BHbNqePj.js → mini-button-group.component-BOJNsLrh.js} +11 -11
- package/{mini-button-link.component-CF9-gRPn.js → mini-button-link.component-B8HmvVCg.js} +7 -8
- package/mini-calendar/mini-calendar/mini-calendar.component.js +1 -1
- package/mini-calendar/mini-calendar-day/mini-calendar-day.component.js +1 -1
- package/mini-calendar/mini-calendar-month/mini-calendar-month.component.js +1 -1
- package/{mini-calendar-month.component-BKvVAnIw.js → mini-calendar-month.component-DbiqMOH8.js} +10 -10
- package/mini-calendar.js +3 -3
- package/mini-calendar.pure.js +3 -3
- package/navigation/common/navigation-action-common.js +1 -1
- package/navigation/navigation/navigation.component.js +1 -1
- package/navigation/navigation-list/navigation-list.component.js +1 -1
- package/navigation/navigation-marker/navigation-marker.component.js +1 -1
- package/navigation/navigation-section/navigation-section.component.js +1 -1
- package/{navigation-action-common-DdyVJJjU.js → navigation-action-common-HG5kdQJR.js} +13 -14
- package/{navigation-list.component-DhR9V87U.js → navigation-list.component-NQZA2mui.js} +12 -12
- package/{navigation-marker.component-B6bGeKeo.js → navigation-marker.component-D1p9TkWH.js} +13 -13
- package/{navigation-section.component-B_0xi30L.js → navigation-section.component-Bmh4Xtrm.js} +23 -27
- package/{navigation.component-CmrLIeDB.js → navigation.component-DLgmWh_c.js} +23 -27
- package/navigation.js +5 -5
- package/navigation.pure.js +5 -5
- package/notification/notification.component.js +1 -1
- package/{notification.component-6pJdPrUO.js → notification.component-DpC6ulTx.js} +22 -22
- package/notification.js +1 -1
- package/notification.pure.js +1 -1
- package/{optgroup-base-element-czVSe8WD.js → optgroup-base-element-C6KwbQ0N.js} +16 -16
- package/option/optgroup/optgroup-base-element.js +1 -1
- package/option/optgroup/optgroup.component.js +1 -1
- package/option/option/option-base-element.js +25 -25
- package/option/option/option.component.js +1 -1
- package/option/option-hint/option-hint.component.js +1 -1
- package/{option-hint.component-OwZnq0ZX.js → option-hint.component-Bayihbh1.js} +4 -4
- package/option.js +3 -3
- package/option.pure.js +3 -3
- package/overlay/overlay-base-element.js +22 -22
- package/overlay/overlay.component.js +1 -1
- package/overlay.js +1 -1
- package/overlay.pure.js +1 -1
- package/package.json +2 -2
- package/paginator/common/paginator-common.js +29 -29
- package/paginator/compact-paginator/compact-paginator.component.js +1 -1
- package/paginator/paginator/paginator.component.js +1 -1
- package/paginator.js +2 -2
- package/paginator.pure.js +2 -2
- package/{panel-mixin-755CTCLW.js → panel-mixin-CcbyRemy.js} +18 -19
- package/popover/popover.component.js +1 -1
- package/{popover.component-CiMeNnO-.js → popover.component-C66BxhNQ.js} +43 -43
- package/popover.js +1 -1
- package/popover.pure.js +1 -1
- package/radio-button/common/radio-button-common.js +1 -1
- package/radio-button/radio-button.component.js +1 -1
- package/{radio-button-common-nP0appXU.js → radio-button-common-BDGoskeZ.js} +11 -11
- package/{radio-button.component-0DmkhN7g.js → radio-button.component-DedTTka_.js} +1 -1
- package/radio-button.js +2 -2
- package/radio-button.pure.js +2 -2
- package/select/select.component.js +1 -1
- package/{select.component-3w3tuUn8.js → select.component-PLjAiAA3.js} +41 -41
- package/select.js +1 -1
- package/select.pure.js +1 -1
- package/selection-action-panel/selection-action-panel.component.js +1 -1
- package/{selection-action-panel.component-CI4IJD4U.js → selection-action-panel.component-B7OtT_t2.js} +4 -4
- package/selection-action-panel.js +1 -1
- package/selection-action-panel.pure.js +1 -1
- package/selection-expansion-panel/selection-expansion-panel.component.js +1 -1
- package/{selection-expansion-panel.component-nCD85lWJ.js → selection-expansion-panel.component-NXfxG9uN.js} +16 -16
- package/selection-expansion-panel.js +1 -1
- package/selection-expansion-panel.pure.js +1 -1
- package/{selection-group-base-element-DwtaC7vx.js → selection-group-base-element-BCEzcnya.js} +16 -17
- package/sidebar/sidebar/sidebar.component.js +1 -1
- package/sidebar/sidebar-close-button/sidebar-close-button.component.js +1 -1
- package/sidebar/sidebar-container/sidebar-container.component.js +1 -1
- package/sidebar/sidebar-content/sidebar-content.component.js +1 -1
- package/sidebar/sidebar-title/sidebar-title.component.js +1 -1
- package/{sidebar-container.component-CrtKaMdN.js → sidebar-container.component-BI2Jm-cJ.js} +11 -15
- package/{sidebar.component-CeUPJaqy.js → sidebar.component-B2IfBEhW.js} +23 -27
- package/sidebar.js +5 -5
- package/sidebar.pure.js +5 -5
- package/signet/signet.component.js +1 -1
- package/{signet.component-DyYwAAg6.js → signet.component-xkCj9Bel.js} +14 -14
- package/signet.js +1 -1
- package/signet.pure.js +1 -1
- package/skiplink-list/skiplink-list.component.js +1 -1
- package/{skiplink-list.component-BeBbIsNv.js → skiplink-list.component-Dsg-qVWZ.js} +18 -18
- package/skiplink-list.js +1 -1
- package/skiplink-list.pure.js +1 -1
- package/slider/slider.component.js +1 -1
- package/{slider.component-DmPbclBS.js → slider.component-DX8K9GWl.js} +25 -25
- package/slider.js +1 -1
- package/slider.pure.js +1 -1
- package/status/status.component.js +1 -1
- package/{status.component-Dsh4GYvR.js → status.component-BkBUOZC5.js} +11 -11
- package/status.js +1 -1
- package/status.pure.js +1 -1
- package/{step-label.component-BmrquHP7.js → step-label.component-BkiOyF7s.js} +6 -6
- package/{step.component-Nm2JoUGp.js → step.component-KiTfzfTj.js} +7 -7
- package/stepper/step/step.component.js +1 -1
- package/stepper/step-label/step-label.component.js +1 -1
- package/stepper/stepper/stepper.component.js +1 -1
- package/{stepper.component-C3tYful_.js → stepper.component-BX3gSLpt.js} +24 -24
- package/stepper.js +3 -3
- package/stepper.pure.js +3 -3
- package/{sticky-bar.component-C3ey8Qj8.js → sticky-bar.component-CmB6U3iY.js} +13 -13
- package/styles-OHFAsnJq.js +5 -0
- package/{tab-group.component-C02ZTjXT.js → tab-group.component-BGDY-hvA.js} +22 -26
- package/{tab-label.component-X6kvS5vX.js → tab-label.component-CMbmEoNe.js} +21 -25
- package/{tab-nav-bar.component-CPaV9kxe.js → tab-nav-bar.component-Cwrqhb-2.js} +13 -14
- package/table/table-wrapper/table-wrapper.component.js +1 -1
- package/table.js +1 -1
- package/table.pure.js +1 -1
- package/tabs/common/styles.js +1 -1
- package/tabs/tab/tab.component.js +1 -1
- package/tabs/tab-group/tab-group.component.js +1 -1
- package/tabs/tab-label/tab-label.component.js +1 -1
- package/tabs/tab-nav-bar/tab-nav-bar.component.js +1 -1
- package/tabs.js +5 -5
- package/tabs.pure.js +5 -5
- package/tag/tag/tag.component.js +1 -1
- package/tag/tag-group/tag-group.component.js +1 -1
- package/{tag-group.component-BIhED38z.js → tag-group.component-DyXEgvbN.js} +14 -14
- package/{tag.component-Bvf5GXDs.js → tag.component-C74wsPOB.js} +17 -17
- package/tag.js +2 -2
- package/tag.pure.js +2 -2
- package/teaser/teaser.component.js +1 -1
- package/teaser-hero/teaser-hero.component.js +1 -1
- package/{teaser-hero.component-UawEEVTD.js → teaser-hero.component-mT8miROU.js} +18 -18
- package/teaser-hero.js +1 -1
- package/teaser-hero.pure.js +1 -1
- package/teaser-panel/teaser-panel.component.js +1 -1
- package/{teaser-panel.component-DMVrPYil.js → teaser-panel.component-DWdMzyoI.js} +6 -6
- package/teaser-panel.js +1 -1
- package/teaser-panel.pure.js +1 -1
- package/teaser-product/common/teaser-product-common.js +1 -1
- package/teaser-product/teaser-product/teaser-product.component.js +1 -1
- package/{teaser-product-common-BCb5GBo9.js → teaser-product-common-DOQ6f2B7.js} +12 -12
- package/teaser-product.js +2 -2
- package/teaser-product.pure.js +2 -2
- package/{teaser.component-C6-OhHMB.js → teaser.component-BSpcEI3Z.js} +15 -15
- package/teaser.js +1 -1
- package/teaser.pure.js +1 -1
- package/time-input/time-input.component.js +1 -1
- package/time-input.js +1 -1
- package/time-input.pure.js +1 -1
- package/timetable-form/timetable-form/timetable-form.component.js +1 -1
- package/timetable-form/timetable-form-details/timetable-form-details.component.js +1 -1
- package/timetable-form/timetable-form-field/timetable-form-field.component.js +1 -1
- package/timetable-form/timetable-form-swap-button/timetable-form-swap-button.component.js +1 -1
- package/timetable-form.js +4 -4
- package/timetable-form.pure.js +4 -4
- package/timetable-occupancy/timetable-occupancy.component.js +1 -1
- package/timetable-occupancy-icon/timetable-occupancy-icon.component.js +1 -1
- package/timetable-occupancy-icon.js +1 -1
- package/timetable-occupancy-icon.pure.js +1 -1
- package/{timetable-occupancy.component-D87hnywl.js → timetable-occupancy.component-B0OJi-B1.js} +14 -18
- package/timetable-occupancy.js +1 -1
- package/timetable-occupancy.pure.js +1 -1
- package/title/title-base.js +1 -1
- package/title/title.component.js +1 -1
- package/{title.component-DSKezSdR.js → title.component-DO67K8g1.js} +1 -1
- package/title.js +2 -2
- package/title.pure.js +2 -2
- package/toast/toast.component.js +1 -1
- package/{toast.component-3giFSW26.js → toast.component-DVaz-D5o.js} +22 -22
- package/toast.js +1 -1
- package/toast.pure.js +1 -1
- package/toggle/toggle/toggle.component.js +1 -1
- package/toggle/toggle-option/toggle-option.component.js +1 -1
- package/toggle-check/toggle-check.component.js +1 -1
- package/{toggle-check.component-B9QBrJ-g.js → toggle-check.component-YWr3IHEL.js} +17 -17
- package/toggle-check.js +1 -1
- package/toggle-check.pure.js +1 -1
- package/{toggle-option.component-lAPXLkh7.js → toggle-option.component-BP9QEwh9.js} +15 -15
- package/{toggle.component-f4ACgRwJ.js → toggle.component-BFsrJ98d.js} +15 -15
- package/toggle.js +2 -2
- package/toggle.pure.js +2 -2
- package/tooltip/tooltip.component.js +1 -1
- package/{tooltip.component-CekGYat7.js → tooltip.component-BrXCWlQB.js} +29 -29
- package/tooltip.js +1 -1
- package/tooltip.pure.js +1 -1
- package/train/train/train.component.js +1 -1
- package/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
- package/train/train-formation/train-formation.component.js +1 -1
- package/train/train-wagon-common.js +1 -1
- package/{train-blocked-passage.component-Dv6K-QKW.js → train-blocked-passage.component-DxqSh9I8.js} +5 -5
- package/{train-formation.component-DLbC60V8.js → train-formation.component-HM0M0FHW.js} +16 -20
- package/{train-wagon-common-qxnkLA4J.js → train-wagon-common-BH9bSebN.js} +22 -22
- package/{train.component-CMLK46ds.js → train.component-BZ3jtqQ4.js} +28 -28
- package/train.js +4 -4
- package/train.pure.js +4 -4
- package/visual-checkbox/visual-checkbox.component.js +1 -1
- package/{visual-checkbox.component-ffjXxXG1.js → visual-checkbox.component-R9bYxeNp.js} +17 -17
- package/visual-checkbox.js +1 -1
- package/visual-checkbox.pure.js +1 -1
- package/core/styles/box-sizing.scss +0 -3
- package/development/accordion.component-DGUoG6p2.js +0 -165
- package/development/alert-group.component-IiZdPTg-.js +0 -190
- package/development/autocomplete-base-element-BxBpn8_e.js +0 -686
- package/development/breadcrumb-group.component-BC1mWiQE.js +0 -193
- package/development/calendar.component-DJuZIHx6.js +0 -1454
- package/development/card-action-common-DSg5TqIA.js +0 -119
- package/development/carousel.component-CBuEFmTM.js +0 -143
- package/development/chip-group.component-B4Mjcep2.js +0 -402
- package/development/datepicker-button-rPkUZTvS.js +0 -175
- package/development/file-selector-common-BH_iIjcB.js +0 -417
- package/development/image.component-Bp14V3So.js +0 -772
- package/development/menu.component-CDBUaD8s.js +0 -369
- package/development/mini-button-link.component-DflgG59S.js +0 -40
- package/development/popover.component-Dj0INQsI.js +0 -564
- package/development/select.component-dxcSr3zK.js +0 -806
- package/development/sidebar-container.component-t80DrAww.js +0 -104
- package/development/step.component-DROEehLH.js +0 -146
- package/development/stepper.component-BySNJPw1.js +0 -423
- package/development/tab-group.component-B56RhxCr.js +0 -270
- package/development/tab-nav-bar.component-DA2ZuWak.js +0 -111
- package/development/tag-group.component-BToOrf6_.js +0 -196
- package/development/toggle-option.component-BAo2LO-4.js +0 -164
- package/development/toggle.component-gBoiGmkG.js +0 -244
- package/development/tooltip.component-Doq4t2oQ.js +0 -369
- package/styles-Cb4jdMeE.js +0 -5
- /package/{compact-paginator.component-DwBfi6Ec.js → compact-paginator.component-sRHapku-.js} +0 -0
- /package/{date-input.component-gLYzSZBX.js → date-input.component-aFuUH3N_.js} +0 -0
- /package/{dialog-actions.component-DGqZm5YQ.js → dialog-actions.component-DxmjSvd-.js} +0 -0
- /package/{dialog-close-button.component-DB8SqzCb.js → dialog-close-button.component-B8troaaQ.js} +0 -0
- /package/{dialog-content.component-iRLHPKPb.js → dialog-content.component-Chfg-IY1.js} +0 -0
- /package/{dialog-title.component-CxGEDHF8.js → dialog-title.component-BbcbQXjp.js} +0 -0
- /package/{file-selector-dropzone.component-2XUfh1NC.js → file-selector-dropzone.component-74fipV3m.js} +0 -0
- /package/{icon-sidebar-container.component-Iowa8Yl4.js → icon-sidebar-container.component-CDBkiGlz.js} +0 -0
- /package/{icon-sidebar-content.component-D1JuPJcI.js → icon-sidebar-content.component-CN4Que2a.js} +0 -0
- /package/{icon-sidebar.component-DeUHylZw.js → icon-sidebar.component-DA2cmcyy.js} +0 -0
- /package/{link-list-anchor.component-DfNod1F3.js → link-list-anchor.component-DG_HCtHH.js} +0 -0
- /package/{mini-calendar-day.component-BA_85Nbw.js → mini-calendar-day.component-CVYqN3Yn.js} +0 -0
- /package/{mini-calendar.component-DEOa6BV0.js → mini-calendar.component-BKzbqHim.js} +0 -0
- /package/{option.component-QwHFIP3m.js → option.component-C-GGTcqF.js} +0 -0
- /package/{overlay.component-D2jtCeeb.js → overlay.component-C80XN61v.js} +0 -0
- /package/{paginator.component-BHKLJn4y.js → paginator.component-3ra04AQU.js} +0 -0
- /package/{sbb-tokens-vtQhz2S7.js → sbb-tokens-BBic3kP6.js} +0 -0
- /package/{sidebar-close-button.component-L5ydAilf.js → sidebar-close-button.component-D5gxiJ_e.js} +0 -0
- /package/{sidebar-content.component-BE7w5j49.js → sidebar-content.component-C44ixSgf.js} +0 -0
- /package/{sidebar-title.component-D6btDsb8.js → sidebar-title.component-ByroIWTZ.js} +0 -0
- /package/{styles-C_iNbDG0.js → styles-BNu0Fjw5.js} +0 -0
- /package/{tab.component-B442rVEv.js → tab.component-BtN993ye.js} +0 -0
- /package/{table-wrapper.component-CZ90q3pY.js → table-wrapper.component-CQ76PAQl.js} +0 -0
- /package/{teaser-product.component-kf1XTKTq.js → teaser-product.component-Dzclz3Sg.js} +0 -0
- /package/{time-input.component-B-IERWbx.js → time-input.component-BRJerke6.js} +0 -0
- /package/{timetable-form-details.component-CnFKVZEa.js → timetable-form-details.component-Wmad9usT.js} +0 -0
- /package/{timetable-form-field.component-Bb2bhSEk.js → timetable-form-field.component-D3P3lV86.js} +0 -0
- /package/{timetable-form-swap-button.component-WNC4q9ml.js → timetable-form-swap-button.component-B8yPDfMq.js} +0 -0
- /package/{timetable-form.component-DS6RckEP.js → timetable-form.component-CJKyHMZk.js} +0 -0
- /package/{timetable-occupancy-icon.component-DVdAxNOy.js → timetable-occupancy-icon.component-DA9NTQJn.js} +0 -0
- /package/{title-base-Df2vDqJ7.js → title-base-B70qaksx.js} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
2
|
import { html, isServer, nothing, unsafeCSS } from "lit";
|
|
3
3
|
import { property } from "lit/decorators.js";
|
|
4
|
-
import { IS_FOCUSABLE_QUERY, SbbFocusTrapController, SbbLanguageController, SbbMediaMatcherController, SbbMediaQueryBreakpointSmallAndBelow, SbbOpenCloseBaseElement, SbbUpdateSchedulerMixin,
|
|
4
|
+
import { IS_FOCUSABLE_QUERY, SbbFocusTrapController, SbbLanguageController, SbbMediaMatcherController, SbbMediaQueryBreakpointSmallAndBelow, SbbOpenCloseBaseElement, SbbUpdateSchedulerMixin, forceType, i18nGoBack, idReference, isZeroAnimationDuration, omitEmptyConverter, removeAriaOverlayTriggerProperties, sbbInputModalityDetector, scrollbarStyles, setAriaOverlayTriggerProperties, ɵstateController } from "./core.js";
|
|
5
5
|
import { SbbTransparentButtonElement } from "./button.pure.js";
|
|
6
6
|
//#region src/elements/navigation/navigation-section/navigation-section.scss?inline
|
|
7
7
|
var navigation_section_default = ":host {\n --sbb-navigation-section-animation-duration: var(\n --sbb-disable-animation-duration,\n var(--sbb-animation-duration-3x)\n );\n --sbb-focus-outline-color: var(--sbb-focus-outline-color-dark);\n display: var(--sbb-navigation-section-display, none);\n position: var(--sbb-navigation-section-position);\n grid-column: var(--sbb-navigation-section-column);\n inset-inline-start: 0;\n inset-block-start: 0;\n width: var(--sbb-navigation-section-width);\n height: var(--sbb-navigation-section-height);\n z-index: var(--sbb-navigation-z-index, var(--sbb-overlay-default-z-index));\n}\n@media (min-width: calc(64rem)) {\n :host {\n --sbb-navigation-section-animation-duration: var(\n --sbb-disable-animation-duration,\n var(--sbb-animation-duration-4x)\n );\n --sbb-navigation-section-width: calc(\n 100% + var(--sbb-layout-base-offset-responsive) + var(--sbb-grid-base-gutter-responsive)\n );\n translate: calc(var(--sbb-grid-base-gutter-responsive) * -1) 0;\n }\n}\n\n:host(:is(:state(state-opened),[state--state-opened])) {\n --sbb-navigation-section-pointer-events: all;\n}\n\n:host(:is(:state(state-opening),[state--state-opening])) {\n --sbb-navigation-section-position: absolute;\n}\n\n:host(:is(:is(:state(state-opening),[state--state-opening]), :is(:state(state-closing),[state--state-closing]))) {\n --sbb-navigation-section-pointer-events: none;\n}\n\n:host(:is(:is(:state(state-opening),[state--state-opening]), :is(:state(state-opened),[state--state-opened]), :is(:state(state-closing),[state--state-closing]))) {\n --sbb-navigation-section-display: block;\n}\n\n::slotted(*) {\n padding-inline-start: var(--sbb-navigation-section-content-padding-inline-start);\n}\n\n::slotted(:is(:state(sbb-button),[state--sbb-button])) {\n grid-column-start: 1;\n}\n\n.sbb-navigation-section__container {\n pointer-events: var(--sbb-navigation-section-pointer-events);\n height: var(--sbb-navigation-section-height);\n}\n\n.sbb-navigation-section {\n display: none;\n border: none;\n margin: 0;\n width: 100%;\n height: 100%;\n color: var(--sbb-navigation-color, var(--sbb-color-1-negative));\n background-color: transparent;\n padding: 0;\n overflow: hidden;\n}\n:host(:is(:is(:state(state-opening),[state--state-opening]), :is(:state(state-opened),[state--state-opened]), :is(:state(state-closing),[state--state-closing]))) .sbb-navigation-section {\n display: block;\n animation-name: open;\n animation-duration: var(--sbb-navigation-section-animation-duration);\n animation-timing-function: var(--sbb-navigation-section-animation-easing);\n}\n:host(:is(:state(state-closing),[state--state-closing])) .sbb-navigation-section {\n animation-name: close;\n}\n@media (forced-colors: active) {\n .sbb-navigation-section {\n outline: var(--sbb-border-width-1x) solid CanvasText;\n }\n}\n\n.sbb-navigation-section__wrapper {\n height: 100%;\n padding-block: var(--sbb-navigation-section-padding-block);\n outline: none;\n overflow-y: auto;\n}\n:host(:is(:is(:state(state-opening),[state--state-opening]), :is(:state(state-closing),[state--state-closing]))) .sbb-navigation-section__wrapper {\n --sbb-scrollbar-color: transparent;\n scrollbar-color: transparent transparent;\n}\n\n.sbb-navigation-section__header {\n position: relative;\n display: flex;\n align-items: center;\n gap: var(--sbb-spacing-fixed-1x);\n margin-block-start: var(--sbb-spacing-responsive-xxl);\n padding-inline-start: var(--sbb-navigation-section-content-padding-inline-start);\n}\n@media (min-width: calc(64rem)) {\n .sbb-navigation-section__header {\n margin-block-start: 0;\n padding-inline-start: 0;\n }\n}\n@media (min-width: calc(90rem)) {\n .sbb-navigation-section__header {\n grid-column: 1/4;\n }\n}\n\n.sbb-navigation-section__back {\n position: absolute;\n translate: calc((100% + var(--sbb-spacing-fixed-1x)) * -1) 0;\n}\n@media (min-width: calc(64rem)) {\n .sbb-navigation-section__back {\n display: none;\n }\n}\n\n.sbb-navigation-section__title {\n font-weight: bold;\n font-size: var(--sbb-navigation-section-font-size);\n letter-spacing: var(--sbb-typo-letter-spacing-heading);\n line-height: var(--sbb-typo-line-height-heading);\n}\n\n.sbb-navigation-section__content {\n display: grid;\n grid-template-columns: 1fr;\n gap: var(--sbb-spacing-responsive-l) var(--sbb-grid-base-gutter-responsive);\n padding-inline: var(--sbb-navigation-section-padding-inline);\n}\n@media (min-width: calc(64rem)) {\n .sbb-navigation-section__content {\n opacity: 0;\n translate: 0 var(--sbb-spacing-fixed-3x);\n transition-duration: var(--sbb-navigation-section-animation-duration);\n transition-delay: var(--sbb-navigation-section-animation-duration);\n transition-timing-function: var(--sbb-navigation-section-animation-easing);\n transition-property: opacity, translate;\n }\n :host(:is(:state(state-opened),[state--state-opened])) .sbb-navigation-section__content {\n opacity: 1;\n translate: 0 0;\n }\n}\n@media (min-width: calc(90rem)) {\n .sbb-navigation-section__content {\n grid-template-columns: repeat(3, 1fr);\n }\n}\n:host(:is(:state(state-closing),[state--state-closing])) .sbb-navigation-section__content {\n transition-delay: 0s;\n}\n\n@keyframes open {\n from {\n translate: var(--sbb-navigation-section-translate) 0;\n }\n to {\n translate: 0 0;\n }\n}\n@keyframes close {\n from {\n translate: 0 0;\n }\n to {\n translate: var(--sbb-navigation-section-translate) 0;\n }\n}";
|
|
@@ -107,11 +107,7 @@ var SbbNavigationSectionElement = (() => {
|
|
|
107
107
|
this.elementDependencies = [SbbTransparentButtonElement];
|
|
108
108
|
}
|
|
109
109
|
static {
|
|
110
|
-
this.styles = [
|
|
111
|
-
boxSizingStyles,
|
|
112
|
-
scrollbarStyles,
|
|
113
|
-
unsafeCSS(navigation_section_default)
|
|
114
|
-
];
|
|
110
|
+
this.styles = [scrollbarStyles, unsafeCSS(navigation_section_default)];
|
|
115
111
|
}
|
|
116
112
|
#titleContent_accessor_storage;
|
|
117
113
|
/**
|
|
@@ -347,4 +343,4 @@ var SbbNavigationSectionElement = (() => {
|
|
|
347
343
|
//#endregion
|
|
348
344
|
export { SbbNavigationSectionElement as t };
|
|
349
345
|
|
|
350
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1zZWN0aW9uLmNvbXBvbmVudC1EM19YVnd5dC5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLXNlY3Rpb24vbmF2aWdhdGlvbi1zZWN0aW9uLnNjc3M/aW5saW5lIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi1zZWN0aW9uL25hdmlnYXRpb24tc2VjdGlvbi5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoXG4gICAgLS1zYmItZGlzYWJsZS1hbmltYXRpb24tZHVyYXRpb24sXG4gICAgdmFyKC0tc2JiLWFuaW1hdGlvbi1kdXJhdGlvbi0zeClcbiAgKTtcbiAgLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvcjogdmFyKC0tc2JiLWZvY3VzLW91dGxpbmUtY29sb3ItZGFyayk7XG5cbiAgLy8gV2UgaGF2ZSB0byBwbGFjZSB0aGUgc3R5bGVzIG9uIHRoZSBob3N0IGFzIGl0IGhhcyB0byBiZSBhbGlnbmVkIG9uIHRoZSBncmlkIG9mIHRoZSBuYXZpZ2F0aW9uXG4gIGRpc3BsYXk6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tZGlzcGxheSwgbm9uZSk7XG4gIHBvc2l0aW9uOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLXBvc2l0aW9uKTtcbiAgZ3JpZC1jb2x1bW46IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tY29sdW1uKTtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiAwO1xuICBpbnNldC1ibG9jay1zdGFydDogMDtcbiAgd2lkdGg6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24td2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24taGVpZ2h0KTtcbiAgei1pbmRleDogdmFyKC0tc2JiLW5hdmlnYXRpb24tei1pbmRleCwgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KSk7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBsYXJnZSkge1xuICAgIC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAgIC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLFxuICAgICAgdmFyKC0tc2JiLWFuaW1hdGlvbi1kdXJhdGlvbi00eClcbiAgICApO1xuICAgIC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi13aWR0aDogY2FsYyhcbiAgICAgIDEwMCUgKyB2YXIoLS1zYmItbGF5b3V0LWJhc2Utb2Zmc2V0LXJlc3BvbnNpdmUpICsgdmFyKC0tc2JiLWdyaWQtYmFzZS1ndXR0ZXItcmVzcG9uc2l2ZSlcbiAgICApO1xuXG4gICAgdHJhbnNsYXRlOiBjYWxjKHZhcigtLXNiYi1ncmlkLWJhc2UtZ3V0dGVyLXJlc3BvbnNpdmUpICogLTEpIDA7XG4gIH1cbn1cblxuOmhvc3QoOnN0YXRlKHN0YXRlLW9wZW5lZCkpIHtcbiAgLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLXBvaW50ZXItZXZlbnRzOiBhbGw7XG59XG5cbjpob3N0KDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSkge1xuICAtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tcG9zaXRpb246IGFic29sdXRlO1xufVxuXG46aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5pbmcpLCA6c3RhdGUoc3RhdGUtY2xvc2luZykpKSB7XG4gIC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1wb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuOmhvc3QoOmlzKDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSwgOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpIHtcbiAgLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWRpc3BsYXk6IGJsb2NrO1xufVxuXG46OnNsb3R0ZWQoKikge1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1jb250ZW50LXBhZGRpbmctaW5saW5lLXN0YXJ0KTtcbn1cblxuLy8gQWx3YXlzIHBsYWNlIHRoZSBzYmItYnV0dG9uIG9uIGEgbmV3IHJvd1xuOjpzbG90dGVkKDpzdGF0ZShzYmItYnV0dG9uKSkge1xuICBncmlkLWNvbHVtbi1zdGFydDogMTtcbn1cblxuLnNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2NvbnRhaW5lciB7XG4gIHBvaW50ZXItZXZlbnRzOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLXBvaW50ZXItZXZlbnRzKTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWhlaWdodCk7XG59XG5cbi5zYmItbmF2aWdhdGlvbi1zZWN0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbG9yOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1jb2xvciwgdmFyKC0tc2JiLWNvbG9yLTEtbmVnYXRpdmUpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgOmhvc3QoOmlzKDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSwgOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgYW5pbWF0aW9uOiB7XG4gICAgICBuYW1lOiBvcGVuO1xuICAgICAgZHVyYXRpb246IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1hbmltYXRpb24tZWFzaW5nKTtcbiAgICB9XG4gIH1cblxuICA6aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZykpICYge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBjbG9zZTtcbiAgfVxuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICBvdXRsaW5lOiB2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KSBzb2xpZCBDYW52YXNUZXh0O1xuICB9XG59XG5cbi5zYmItbmF2aWdhdGlvbi1zZWN0aW9uX193cmFwcGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLXBhZGRpbmctYmxvY2spO1xuICBvdXRsaW5lOiBub25lO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gIDpob3N0KDppcyg6c3RhdGUoc3RhdGUtb3BlbmluZyksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpICYge1xuICAgIC0tc2JiLXNjcm9sbGJhci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICBzY3JvbGxiYXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi5zYmItbmF2aWdhdGlvbi1zZWN0aW9uX19oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMXgpO1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXNiYi1zcGFjaW5nLXJlc3BvbnNpdmUteHhsKTtcbiAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tY29udGVudC1wYWRkaW5nLWlubGluZS1zdGFydCk7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBsYXJnZSkge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIHNiYi5tcSgkZnJvbTogdWx0cmEpIHtcbiAgICBncmlkLWNvbHVtbjogMSAvIDQ7XG4gIH1cbn1cblxuLnNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2JhY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zbGF0ZTogY2FsYygoMTAwJSArIHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTF4KSkgKiAtMSkgMDtcblxuICBAaW5jbHVkZSBzYmIubXEoJGZyb206IGxhcmdlKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fdGl0bGUge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xufVxuXG4uc2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fY29udGVudCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLXJlc3BvbnNpdmUtbCkgdmFyKC0tc2JiLWdyaWQtYmFzZS1ndXR0ZXItcmVzcG9uc2l2ZSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLXBhZGRpbmctaW5saW5lKTtcblxuICBAaW5jbHVkZSBzYmIubXEoJGZyb206IGxhcmdlKSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2xhdGU6IDAgdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtM3gpO1xuICAgIHRyYW5zaXRpb246IHtcbiAgICAgIGR1cmF0aW9uOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gICAgICBkZWxheTogdmFyKC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgICAgdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAgICAgcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zbGF0ZTtcbiAgICB9XG5cbiAgICA6aG9zdCg6c3RhdGUoc3RhdGUtb3BlbmVkKSkgJiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNsYXRlOiAwIDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiB1bHRyYSkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIH1cblxuICA6aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZykpICYge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgb3BlbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zbGF0ZTogdmFyKC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi10cmFuc2xhdGUpIDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNsYXRlOiAwIDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBjbG9zZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zbGF0ZTogMCAwO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zbGF0ZTogdmFyKC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi10cmFuc2xhdGUpIDA7XG4gIH1cbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIGlzU2VydmVyLFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5RGVjbGFyYXRpb24sXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHVuc2FmZUNTUyxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJUcmFuc3BhcmVudEJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi8uLi9idXR0b24ucHVyZS50cyc7XG5pbXBvcnQge1xuICBib3hTaXppbmdTdHlsZXMsXG4gIGZvcmNlVHlwZSxcbiAgaTE4bkdvQmFjayxcbiAgaWRSZWZlcmVuY2UsXG4gIElTX0ZPQ1VTQUJMRV9RVUVSWSxcbiAgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24sXG4gIG9taXRFbXB0eUNvbnZlcnRlcixcbiAgcmVtb3ZlQXJpYU92ZXJsYXlUcmlnZ2VyUHJvcGVydGllcyxcbiAgdHlwZSBTYmJFbGVtZW50VHlwZSxcbiAgU2JiRm9jdXNUcmFwQ29udHJvbGxlcixcbiAgc2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLFxuICBTYmJMYW5ndWFnZUNvbnRyb2xsZXIsXG4gIFNiYk1lZGlhTWF0Y2hlckNvbnRyb2xsZXIsXG4gIFNiYk1lZGlhUXVlcnlCcmVha3BvaW50U21hbGxBbmRCZWxvdyxcbiAgU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQsXG4gIHR5cGUgU2JiT3BlbmVkQ2xvc2VkU3RhdGUsXG4gIFNiYlVwZGF0ZVNjaGVkdWxlck1peGluLFxuICBzY3JvbGxiYXJTdHlsZXMsXG4gIHNldEFyaWFPdmVybGF5VHJpZ2dlclByb3BlcnRpZXMsXG4gIMm1c3RhdGVDb250cm9sbGVyLFxufSBmcm9tICcuLi8uLi9jb3JlLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiTmF2aWdhdGlvbkVsZW1lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uL25hdmlnYXRpb24uY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgU2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uLWJ1dHRvbi9uYXZpZ2F0aW9uLWJ1dHRvbi5jb21wb25lbnQudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJOYXZpZ2F0aW9uTGlua0VsZW1lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uLWxpbmsvbmF2aWdhdGlvbi1saW5rLmNvbXBvbmVudC50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL25hdmlnYXRpb24tc2VjdGlvbi5zY3NzP2lubGluZSc7XG5cbi8qKlxuICogSXQgY2FuIGJlIHVzZWQgYXMgYSBjb250YWluZXIgZm9yIGBzYmItbmF2aWdhdGlvbi1saXN0YCB3aXRoaW4gYSBgc2JiLW5hdmlnYXRpb25gLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgaW50byB0aGUgYHNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25gLlxuICovXG5leHBvcnQgY2xhc3MgU2JiTmF2aWdhdGlvblNlY3Rpb25FbGVtZW50IGV4dGVuZHMgU2JiVXBkYXRlU2NoZWR1bGVyTWl4aW4oU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBlbGVtZW50TmFtZTogc3RyaW5nID0gJ3NiYi1uYXZpZ2F0aW9uLXNlY3Rpb24nO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIGVsZW1lbnREZXBlbmRlbmNpZXM6IFNiYkVsZW1lbnRUeXBlW10gPSBbU2JiVHJhbnNwYXJlbnRCdXR0b25FbGVtZW50XTtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW1xuICAgIGJveFNpemluZ1N0eWxlcyxcbiAgICBzY3JvbGxiYXJTdHlsZXMsXG4gICAgdW5zYWZlQ1NTKHN0eWxlKSxcbiAgXTtcblxuICAvKipcbiAgICogVGhlIGxhYmVsIHRvIGJlIHNob3duIGJlZm9yZSB0aGUgYWN0aW9uIGxpc3QuXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndGl0bGUtY29udGVudCcsIHJlZmxlY3Q6IHRydWUsIGNvbnZlcnRlcjogb21pdEVtcHR5Q29udmVydGVyIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciB0aXRsZUNvbnRlbnQ6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgZWxlbWVudCB0aGF0IHdpbGwgdHJpZ2dlciB0aGUgbmF2aWdhdGlvbiBzZWN0aW9uLlxuICAgKlxuICAgKiBGb3IgYXR0cmlidXRlIHVzYWdlLCBwcm92aWRlIGFuIGlkIHJlZmVyZW5jZS5cbiAgICovXG4gIEBpZFJlZmVyZW5jZSgpXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciB0cmlnZ2VyOiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGlzIHdpbGwgYmUgZm9yd2FyZGVkIGFzIGFyaWEtbGFiZWwgdG8gdGhlIG5hdiBlbGVtZW50IGFuZCBpcyByZWFkIGFzIGEgdGl0bGUgb2YgdGhlIG5hdmlnYXRpb24tc2VjdGlvbi5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWxhYmVsJyB9KVxuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogVGhpcyB3aWxsIGJlIGZvcndhcmRlZCBhcyBhcmlhLWxhYmVsIHRvIHRoZSBiYWNrIGJ1dHRvbiBlbGVtZW50LlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2FjY2Vzc2liaWxpdHktYmFjay1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlCYWNrTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBUaGUgc3RhdGUgb2YgdGhlIGNvbXBvbmVudC4gKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHNldCBzdGF0ZShzdGF0ZTogU2JiT3BlbmVkQ2xvc2VkU3RhdGUpIHtcbiAgICBzdXBlci5zdGF0ZSA9IHN0YXRlO1xuICAgIHRoaXMuaW50ZXJuYWxzLmFyaWFIaWRkZW4gPSB0aGlzLnN0YXRlICE9PSAnb3BlbmVkJyA/ICd0cnVlJyA6IG51bGw7XG4gIH1cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGdldCBzdGF0ZSgpOiBTYmJPcGVuZWRDbG9zZWRTdGF0ZSB7XG4gICAgcmV0dXJuIHN1cGVyLnN0YXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmlyc3RMZXZlbE5hdmlnYXRpb24/OiBTYmJOYXZpZ2F0aW9uRWxlbWVudCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF90cmlnZ2VyRWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfdHJpZ2dlckFib3J0Q29udHJvbGxlciE6IEFib3J0Q29udHJvbGxlcjtcbiAgcHJpdmF0ZSBfd2luZG93RXZlbnRzQ29udHJvbGxlciE6IEFib3J0Q29udHJvbGxlcjtcbiAgcHJpdmF0ZSBfbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9mb2N1c1RyYXBDb250cm9sbGVyID0gbmV3IFNiYkZvY3VzVHJhcENvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX2xhc3RLZXlkb3duRXZlbnQ6IEtleWJvYXJkRXZlbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfbWVkaWFNYXRjaGVyQ29udHJvbGxlciA9IG5ldyBTYmJNZWRpYU1hdGNoZXJDb250cm9sbGVyKHRoaXMsIHtcbiAgICBbU2JiTWVkaWFRdWVyeUJyZWFrcG9pbnRTbWFsbEFuZEJlbG93XTogKG1hdGNoZXMpID0+IHtcbiAgICAgIGlmICh0aGlzLnN0YXRlICE9PSAnY2xvc2VkJykge1xuICAgICAgICB0aGlzLl9zZXROYXZpZ2F0aW9uSW5lcnQobWF0Y2hlcyk7XG4gICAgICB9XG4gICAgfSxcbiAgfSk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/Ligna2V5ZG93bicsIChlKSA9PiB7XG4gICAgICB0aGlzLl9sYXN0S2V5ZG93bkV2ZW50ID0gZTtcbiAgICB9KTtcblxuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdmb2N1c291dCcsIChlKSA9PiB7XG4gICAgICBpZiAoXG4gICAgICAgIGUucmVsYXRlZFRhcmdldCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50ICYmXG4gICAgICAgICF0aGlzLmNvbnRhaW5zKGUucmVsYXRlZFRhcmdldCkgJiZcbiAgICAgICAgc2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLm1vc3RSZWNlbnRNb2RhbGl0eSA9PT0gJ2tleWJvYXJkJyAmJlxuICAgICAgICB0aGlzLl9sYXN0S2V5ZG93bkV2ZW50Py5rZXkgPT09ICdUYWInICYmXG4gICAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50XG4gICAgICApIHtcbiAgICAgICAgY29uc3QgbmF2aWdhdGlvbkVsZW1lbnQgPSB0aGlzLmNsb3Nlc3Q8U2JiTmF2aWdhdGlvbkVsZW1lbnQ+KCdzYmItbmF2aWdhdGlvbicpO1xuICAgICAgICBjb25zdCBmb2N1c2FibGVFbGVtZW50cyA9IEFycmF5LmZyb20oXG4gICAgICAgICAgbmF2aWdhdGlvbkVsZW1lbnQ/LnF1ZXJ5U2VsZWN0b3JBbGw8SFRNTEVsZW1lbnQ+KElTX0ZPQ1VTQUJMRV9RVUVSWSkgPz8gW10sXG4gICAgICAgICkuZmlsdGVyKChlKSA9PiAhdGhpcy5jb250YWlucyhlKSk7XG5cbiAgICAgICAgaWYgKHRoaXMuX2xhc3RLZXlkb3duRXZlbnQuc2hpZnRLZXkgfHwgIWZvY3VzYWJsZUVsZW1lbnRzLmxlbmd0aCkge1xuICAgICAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50Py5mb2N1cygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHRyaWdnZXJJbmRleCA9IGZvY3VzYWJsZUVsZW1lbnRzLmluZGV4T2YodGhpcy5fdHJpZ2dlckVsZW1lbnQpO1xuICAgICAgICAgIChmb2N1c2FibGVFbGVtZW50c1t0cmlnZ2VySW5kZXggKyAxXSA/PyBuYXZpZ2F0aW9uRWxlbWVudCEuY2xvc2VCdXR0b24pPy5mb2N1cygpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogT3BlbnMgdGhlIG5hdmlnYXRpb24gc2VjdGlvbiBvbiB0cmlnZ2VyIGNsaWNrLlxuICAgKi9cbiAgcHVibGljIG9wZW4oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdjbG9zZWQnIHx8ICF0aGlzLmhhc1VwZGF0ZWQgfHwgIXRoaXMuZGlzcGF0Y2hCZWZvcmVPcGVuRXZlbnQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9pc05hdmlnYXRpb25CdXR0b24odGhpcy5fdHJpZ2dlckVsZW1lbnQpKSB7XG4gICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudD8ubWFya2VyPy5zZWxlY3QodGhpcy5fdHJpZ2dlckVsZW1lbnQpO1xuICAgIH1cblxuICAgIHRoaXMuX2Nsb3NlUHJldmlvdXNOYXZpZ2F0aW9uU2VjdGlvbigpO1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmluZyc7XG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ8m1bmF2aWdhdGlvbnNlY3Rpb25vcGVuaW5nJykpO1xuICAgIHRoaXMuc3RhcnRVcGRhdGUoKTtcbiAgICB0aGlzLmluZXJ0ID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LmFyaWFFeHBhbmRlZCA9ICd0cnVlJztcbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZGlyZWN0bHkgc2V0IHRoZSBgb3BlbmVkYCBzdGF0ZS5cbiAgICBpZiAodGhpcy5faXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKSkge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1plcm9BbmltYXRpb25EdXJhdGlvbih0aGlzLCAnLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlT3BlbmluZygpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlID0gJ29wZW5lZCc7XG4gICAgdGhpcy5pbmVydCA9IGZhbHNlO1xuICAgIHRoaXMuX2F0dGFjaFdpbmRvd0V2ZW50cygpO1xuICAgIHRoaXMuX3NldE5hdmlnYXRpb25JbmVydCgpO1xuICAgIHRoaXMuX2ZvY3VzVHJhcENvbnRyb2xsZXIuZm9jdXNJbml0aWFsRWxlbWVudCgpO1xuICAgIHRoaXMuX2NoZWNrQWN0aXZlQWN0aW9uKCk7XG4gICAgdGhpcy5jb21wbGV0ZVVwZGF0ZSgpO1xuICAgIHRoaXMuZGlzcGF0Y2hPcGVuRXZlbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUNsb3NpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zZWQnO1xuICAgIHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcignLnNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2NvbnRhaW5lcicpPy5zY3JvbGxUbygwLCAwKTtcbiAgICB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX3Jlc2V0TGlzdHMoKTtcbiAgICB0aGlzLl9zZXROYXZpZ2F0aW9uSW5lcnQoKTtcbiAgICBpZiAodGhpcy5faXNCZWxvd0xhcmdlKCkgJiYgdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICAgIHRoaXMuY29tcGxldGVVcGRhdGUoKTtcbiAgICB0aGlzLmRpc3BhdGNoQ2xvc2VFdmVudCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2xvc2VQcmV2aW91c05hdmlnYXRpb25TZWN0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuX2ZpcnN0TGV2ZWxOYXZpZ2F0aW9uPy5hY3RpdmVOYXZpZ2F0aW9uU2VjdGlvbj8uY2xvc2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIG5hdmlnYXRpb24gc2VjdGlvbi5cbiAgICovXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdGF0ZSAhPT0gJ29wZW5lZCcgfHwgIXRoaXMuZGlzcGF0Y2hCZWZvcmVDbG9zZUV2ZW50KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvKiogQGludGVybmFsICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnybVuYXZpZ2F0aW9uc2VjdGlvbmNsb3NpbmcnKSk7XG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zaW5nJztcbiAgICB0aGlzLnN0YXJ0VXBkYXRlKCk7XG4gICAgdGhpcy5pbmVydCA9IHRydWU7XG4gICAgaWYgKHRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5hcmlhRXhwYW5kZWQgPSAnZmFsc2UnO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSBhbmltYXRpb24gZHVyYXRpb24gaXMgemVybywgdGhlIGFuaW1hdGlvbmVuZCBldmVudCBpcyBub3QgYWx3YXlzIGZpcmVkIHJlbGlhYmx5LlxuICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBjbG9zZWRgIHN0YXRlLlxuICAgIGlmICh0aGlzLl9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHRyaWdnZXIgaXMgdmFsaWQgYW5kIGF0dGFjaCBjbGljayBldmVudCBsaXN0ZW5lcnMuXG4gIHByaXZhdGUgX2NvbmZpZ3VyZVRyaWdnZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudHJpZ2dlciA9PT0gdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlclByb3BlcnRpZXModGhpcy5fdHJpZ2dlckVsZW1lbnQpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50ID0gdGhpcy50cmlnZ2VyO1xuXG4gICAgaWYgKCF0aGlzLl90cmlnZ2VyRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHNldEFyaWFPdmVybGF5VHJpZ2dlclByb3BlcnRpZXModGhpcywgdGhpcy5fdHJpZ2dlckVsZW1lbnQsICdtZW51JywgdGhpcy5zdGF0ZSk7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICBpZiAodGhpcy5faXNOYXZpZ2F0aW9uQnV0dG9uKHRoaXMuX3RyaWdnZXJFbGVtZW50KSkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuY29ubmVjdGVkU2VjdGlvbiA9IHRoaXM7XG4gICAgfVxuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gdGhpcy5vcGVuKCksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG4gICAgdGhpcy5fZmlyc3RMZXZlbE5hdmlnYXRpb24gPSB0aGlzLl90cmlnZ2VyRWxlbWVudD8uY2xvc2VzdD8uKCdzYmItbmF2aWdhdGlvbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNOYXZpZ2F0aW9uQnV0dG9uKHRyaWdnZXI6IEhUTUxFbGVtZW50IHwgbnVsbCk6IHRyaWdnZXIgaXMgU2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQge1xuICAgIHJldHVybiB0cmlnZ2VyPy5sb2NhbE5hbWUgPT09ICdzYmItbmF2aWdhdGlvbi1idXR0b24nO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0TmF2aWdhdGlvbkluZXJ0KGlzQmVsb3dMYXJnZTogYm9vbGVhbiA9IHRoaXMuX2lzQmVsb3dMYXJnZSgpKTogdm9pZCB7XG4gICAgY29uc3QgbmF2aWdhdGlvbkNvbnRlbnQgPSB0aGlzLl9maXJzdExldmVsTmF2aWdhdGlvbj8ubmF2aWdhdGlvbkNvbnRlbnQ7XG4gICAgaWYgKG5hdmlnYXRpb25Db250ZW50KSB7XG4gICAgICBuYXZpZ2F0aW9uQ29udGVudC5pbmVydCA9IGlzQmVsb3dMYXJnZSAmJiB0aGlzLnN0YXRlICE9PSAnY2xvc2VkJztcbiAgICB9XG4gIH1cblxuICAvLyBJbiByYXJlIGNhc2VzIGl0IGNhbiBiZSB0aGF0IHRoZSBhbmltYXRpb25FbmQgZXZlbnQgaXMgdHJpZ2dlcmVkIHR3aWNlLlxuICAvLyBUbyBhdm9pZCBlbnRlcmluZyBhIGNvcnJ1cHQgc3RhdGUsIGV4aXQgd2hlbiBzdGF0ZSBpcyBub3QgZXhwZWN0ZWQuXG4gIHByaXZhdGUgX29uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnb3BlbicgJiYgdGhpcy5zdGF0ZSA9PT0gJ29wZW5pbmcnKSB7XG4gICAgICB0aGlzLl9oYW5kbGVPcGVuaW5nKCk7XG4gICAgfSBlbHNlIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnY2xvc2UnICYmIHRoaXMuc3RhdGUgPT09ICdjbG9zaW5nJykge1xuICAgICAgdGhpcy5faGFuZGxlQ2xvc2luZygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3Jlc2V0TGlzdHMoKTogdm9pZCB7XG4gICAgQXJyYXkuZnJvbShcbiAgICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbDxTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudCB8IFNiYk5hdmlnYXRpb25MaW5rRWxlbWVudD4oXG4gICAgICAgICc6c3RhdGUoc2VjdGlvbi1hY3Rpb24pOnN0YXRlKGFjdGlvbi1hY3RpdmUpJyxcbiAgICAgICkgPz8gW10sXG4gICAgKS5mb3JFYWNoKChhY3Rpb24pID0+IMm1c3RhdGVDb250cm9sbGVyKGFjdGlvbikuZGVsZXRlKCdhY3Rpb24tYWN0aXZlJykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfYXR0YWNoV2luZG93RXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHRoaXMuX29uS2V5ZG93bkV2ZW50KGV2ZW50KSwge1xuICAgICAgc2lnbmFsOiB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcblxuICAgIC8vIENsb3NlIG5hdmlnYXRpb24gc2VjdGlvbiBvbiBhY3Rpb24gY2xpY2sgb3Igc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1jbG9zZSBjbGlja1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuX2hhbmRsZU5hdmlnYXRpb25TZWN0aW9uQ2xvc2UsIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgY2xpY2sgd2FzIHRyaWdnZXJlZCBvbiBhbiBlbGVtZW50IHRoYXQgc2hvdWxkIGNsb3NlIHRoZSBzZWN0aW9uLlxuICBwcml2YXRlIF9oYW5kbGVOYXZpZ2F0aW9uU2VjdGlvbkNsb3NlID0gKGV2ZW50OiBFdmVudCk6IHZvaWQgPT4ge1xuICAgIGlmIChcbiAgICAgIGV2ZW50XG4gICAgICAgIC5jb21wb3NlZFBhdGgoKVxuICAgICAgICAuZmlsdGVyKChlbCkgPT4gZWwgaW5zdGFuY2VvZiBIVE1MRWxlbWVudClcbiAgICAgICAgLnNvbWUoKGVsKSA9PiB0aGlzLl9pc0Nsb3NlRWxlbWVudChlbCkpXG4gICAgKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICB9O1xuXG4gIHByaXZhdGUgX2lzQ2xvc2VFbGVtZW50KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGVsZW1lbnQubm9kZU5hbWUgPT09ICdBJyB8fFxuICAgICAgKCFlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnZGlzYWJsZWQnKSAmJlxuICAgICAgICAoZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ3NiYi1uYXZpZ2F0aW9uLWNsb3NlJykgfHxcbiAgICAgICAgICBlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1jbG9zZScpKSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNCZWxvd0xhcmdlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9tZWRpYU1hdGNoZXJDb250cm9sbGVyLm1hdGNoZXMoU2JiTWVkaWFRdWVyeUJyZWFrcG9pbnRTbWFsbEFuZEJlbG93KSA/PyBmYWxzZTtcbiAgfVxuXG4gIC8vIENsb3NlcyB0aGUgbmF2aWdhdGlvbiBvbiBcIkVzY1wiIGtleSBwcmVzc2VkLlxuICBwcml2YXRlIF9vbktleWRvd25FdmVudChldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0YXRlID09PSAnb3BlbmVkJyAmJiBldmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY2hlY2tBY3RpdmVBY3Rpb24oKTogdm9pZCB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMucXVlcnlTZWxlY3RvcjxTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudCB8IFNiYk5hdmlnYXRpb25MaW5rRWxlbWVudD4oXG4gICAgICAnOmlzKHNiYi1uYXZpZ2F0aW9uLWJ1dHRvbiwgc2JiLW5hdmlnYXRpb24tbGluaykuc2JiLWFjdGl2ZScsXG4gICAgKTtcbiAgICDJtXN0YXRlQ29udHJvbGxlcihlbGVtZW50KT8udG9nZ2xlKCdhY3Rpb24tYWN0aXZlJywgdHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnNsb3QgfHw9ICduYXZpZ2F0aW9uLXNlY3Rpb24nO1xuICAgIGlmICh0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyPy5hYm9ydCgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHJlcXVlc3RVcGRhdGUoXG4gICAgbmFtZT86IFByb3BlcnR5S2V5LFxuICAgIG9sZFZhbHVlPzogdW5rbm93bixcbiAgICBvcHRpb25zPzogUHJvcGVydHlEZWNsYXJhdGlvbixcbiAgKTogdm9pZCB7XG4gICAgc3VwZXIucmVxdWVzdFVwZGF0ZShuYW1lLCBvbGRWYWx1ZSwgb3B0aW9ucyk7XG5cbiAgICBpZiAoIWlzU2VydmVyICYmICghbmFtZSB8fCBuYW1lID09PSAndHJpZ2dlcicpICYmIHRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgdGhpcy5fY29uZmlndXJlVHJpZ2dlcigpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICB0aGlzLl9jb25maWd1cmVUcmlnZ2VyKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX19jb250YWluZXJcIj5cbiAgICAgICAgPG5hdlxuICAgICAgICAgIEBhbmltYXRpb25lbmQ9JHt0aGlzLl9vbkFuaW1hdGlvbkVuZH1cbiAgICAgICAgICBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25cIlxuICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT0keyF0aGlzLmFjY2Vzc2liaWxpdHlMYWJlbCA/ICd0aXRsZScgOiBub3RoaW5nfVxuICAgICAgICAgIGFyaWEtbGFiZWw9JHt0aGlzLmFjY2Vzc2liaWxpdHlMYWJlbCA/IHRoaXMuYWNjZXNzaWJpbGl0eUxhYmVsIDogbm90aGluZ31cbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX193cmFwcGVyIHNiYi1zY3JvbGxiYXItbmVnYXRpdmVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX19jb250ZW50XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX19oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8IS0tIEJhY2sgYnV0dG9uIC0tPlxuICAgICAgICAgICAgICAgIDxzYmItdHJhbnNwYXJlbnQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICBpZD1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tYmFjay1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX19iYWNrXCJcbiAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9JHt0aGlzLmFjY2Vzc2liaWxpdHlCYWNrTGFiZWwgfHwgaTE4bkdvQmFja1t0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICAgICAgICAgIG5lZ2F0aXZlXG4gICAgICAgICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgICAgICAgICBpY29uLW5hbWU9XCJjaGV2cm9uLXNtYWxsLWxlZnQtc21hbGxcIlxuICAgICAgICAgICAgICAgICAgc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1jbG9zZVxuICAgICAgICAgICAgICAgID48L3NiYi10cmFuc3BhcmVudC1idXR0b24+XG5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX3RpdGxlXCIgaWQ9XCJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgPHNsb3QgbmFtZT1cInRpdGxlXCI+JHt0aGlzLnRpdGxlQ29udGVudH08L3Nsb3Q+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmF2PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLW5hdmlnYXRpb24tc2VjdGlvbic6IFNiYk5hdmlnYXRpb25TZWN0aW9uRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztJQzhDYSxxQ0FBMkI7bUJBQVMsd0JBQXdC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
|
|
346
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1zZWN0aW9uLmNvbXBvbmVudC1pYXlwYzZ5US5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLXNlY3Rpb24vbmF2aWdhdGlvbi1zZWN0aW9uLnNjc3M/aW5saW5lIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi1zZWN0aW9uL25hdmlnYXRpb24tc2VjdGlvbi5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoXG4gICAgLS1zYmItZGlzYWJsZS1hbmltYXRpb24tZHVyYXRpb24sXG4gICAgdmFyKC0tc2JiLWFuaW1hdGlvbi1kdXJhdGlvbi0zeClcbiAgKTtcbiAgLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvcjogdmFyKC0tc2JiLWZvY3VzLW91dGxpbmUtY29sb3ItZGFyayk7XG5cbiAgLy8gV2UgaGF2ZSB0byBwbGFjZSB0aGUgc3R5bGVzIG9uIHRoZSBob3N0IGFzIGl0IGhhcyB0byBiZSBhbGlnbmVkIG9uIHRoZSBncmlkIG9mIHRoZSBuYXZpZ2F0aW9uXG4gIGRpc3BsYXk6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tZGlzcGxheSwgbm9uZSk7XG4gIHBvc2l0aW9uOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLXBvc2l0aW9uKTtcbiAgZ3JpZC1jb2x1bW46IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tY29sdW1uKTtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiAwO1xuICBpbnNldC1ibG9jay1zdGFydDogMDtcbiAgd2lkdGg6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24td2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24taGVpZ2h0KTtcbiAgei1pbmRleDogdmFyKC0tc2JiLW5hdmlnYXRpb24tei1pbmRleCwgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KSk7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBsYXJnZSkge1xuICAgIC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAgIC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLFxuICAgICAgdmFyKC0tc2JiLWFuaW1hdGlvbi1kdXJhdGlvbi00eClcbiAgICApO1xuICAgIC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi13aWR0aDogY2FsYyhcbiAgICAgIDEwMCUgKyB2YXIoLS1zYmItbGF5b3V0LWJhc2Utb2Zmc2V0LXJlc3BvbnNpdmUpICsgdmFyKC0tc2JiLWdyaWQtYmFzZS1ndXR0ZXItcmVzcG9uc2l2ZSlcbiAgICApO1xuXG4gICAgdHJhbnNsYXRlOiBjYWxjKHZhcigtLXNiYi1ncmlkLWJhc2UtZ3V0dGVyLXJlc3BvbnNpdmUpICogLTEpIDA7XG4gIH1cbn1cblxuOmhvc3QoOnN0YXRlKHN0YXRlLW9wZW5lZCkpIHtcbiAgLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLXBvaW50ZXItZXZlbnRzOiBhbGw7XG59XG5cbjpob3N0KDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSkge1xuICAtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tcG9zaXRpb246IGFic29sdXRlO1xufVxuXG46aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5pbmcpLCA6c3RhdGUoc3RhdGUtY2xvc2luZykpKSB7XG4gIC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1wb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuOmhvc3QoOmlzKDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSwgOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpIHtcbiAgLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWRpc3BsYXk6IGJsb2NrO1xufVxuXG46OnNsb3R0ZWQoKikge1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1jb250ZW50LXBhZGRpbmctaW5saW5lLXN0YXJ0KTtcbn1cblxuLy8gQWx3YXlzIHBsYWNlIHRoZSBzYmItYnV0dG9uIG9uIGEgbmV3IHJvd1xuOjpzbG90dGVkKDpzdGF0ZShzYmItYnV0dG9uKSkge1xuICBncmlkLWNvbHVtbi1zdGFydDogMTtcbn1cblxuLnNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2NvbnRhaW5lciB7XG4gIHBvaW50ZXItZXZlbnRzOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLXBvaW50ZXItZXZlbnRzKTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWhlaWdodCk7XG59XG5cbi5zYmItbmF2aWdhdGlvbi1zZWN0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbG9yOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1jb2xvciwgdmFyKC0tc2JiLWNvbG9yLTEtbmVnYXRpdmUpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgOmhvc3QoOmlzKDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSwgOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgYW5pbWF0aW9uOiB7XG4gICAgICBuYW1lOiBvcGVuO1xuICAgICAgZHVyYXRpb246IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1hbmltYXRpb24tZWFzaW5nKTtcbiAgICB9XG4gIH1cblxuICA6aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZykpICYge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBjbG9zZTtcbiAgfVxuXG4gIEBpbmNsdWRlIHNiYi5pZi1mb3JjZWQtY29sb3JzIHtcbiAgICBvdXRsaW5lOiB2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KSBzb2xpZCBDYW52YXNUZXh0O1xuICB9XG59XG5cbi5zYmItbmF2aWdhdGlvbi1zZWN0aW9uX193cmFwcGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLXBhZGRpbmctYmxvY2spO1xuICBvdXRsaW5lOiBub25lO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gIDpob3N0KDppcyg6c3RhdGUoc3RhdGUtb3BlbmluZyksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpICYge1xuICAgIC0tc2JiLXNjcm9sbGJhci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICBzY3JvbGxiYXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi5zYmItbmF2aWdhdGlvbi1zZWN0aW9uX19oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtMXgpO1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXNiYi1zcGFjaW5nLXJlc3BvbnNpdmUteHhsKTtcbiAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tY29udGVudC1wYWRkaW5nLWlubGluZS1zdGFydCk7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBsYXJnZSkge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIHNiYi5tcSgkZnJvbTogdWx0cmEpIHtcbiAgICBncmlkLWNvbHVtbjogMSAvIDQ7XG4gIH1cbn1cblxuLnNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2JhY2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zbGF0ZTogY2FsYygoMTAwJSArIHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTF4KSkgKiAtMSkgMDtcblxuICBAaW5jbHVkZSBzYmIubXEoJGZyb206IGxhcmdlKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fdGl0bGUge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xufVxuXG4uc2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fY29udGVudCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBnYXA6IHZhcigtLXNiYi1zcGFjaW5nLXJlc3BvbnNpdmUtbCkgdmFyKC0tc2JiLWdyaWQtYmFzZS1ndXR0ZXItcmVzcG9uc2l2ZSk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLXBhZGRpbmctaW5saW5lKTtcblxuICBAaW5jbHVkZSBzYmIubXEoJGZyb206IGxhcmdlKSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2xhdGU6IDAgdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtM3gpO1xuICAgIHRyYW5zaXRpb246IHtcbiAgICAgIGR1cmF0aW9uOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gICAgICBkZWxheTogdmFyKC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi1hbmltYXRpb24tZHVyYXRpb24pO1xuICAgICAgdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWFuaW1hdGlvbi1lYXNpbmcpO1xuICAgICAgcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zbGF0ZTtcbiAgICB9XG5cbiAgICA6aG9zdCg6c3RhdGUoc3RhdGUtb3BlbmVkKSkgJiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNsYXRlOiAwIDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiB1bHRyYSkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIH1cblxuICA6aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZykpICYge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgb3BlbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zbGF0ZTogdmFyKC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi10cmFuc2xhdGUpIDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNsYXRlOiAwIDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBjbG9zZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zbGF0ZTogMCAwO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zbGF0ZTogdmFyKC0tc2JiLW5hdmlnYXRpb24tc2VjdGlvbi10cmFuc2xhdGUpIDA7XG4gIH1cbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIGlzU2VydmVyLFxuICBub3RoaW5nLFxuICB0eXBlIFByb3BlcnR5RGVjbGFyYXRpb24sXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHVuc2FmZUNTUyxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJUcmFuc3BhcmVudEJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi8uLi9idXR0b24ucHVyZS50cyc7XG5pbXBvcnQge1xuICBmb3JjZVR5cGUsXG4gIGkxOG5Hb0JhY2ssXG4gIGlkUmVmZXJlbmNlLFxuICBJU19GT0NVU0FCTEVfUVVFUlksXG4gIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uLFxuICBvbWl0RW1wdHlDb252ZXJ0ZXIsXG4gIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlclByb3BlcnRpZXMsXG4gIHR5cGUgU2JiRWxlbWVudFR5cGUsXG4gIFNiYkZvY3VzVHJhcENvbnRyb2xsZXIsXG4gIHNiYklucHV0TW9kYWxpdHlEZXRlY3RvcixcbiAgU2JiTGFuZ3VhZ2VDb250cm9sbGVyLFxuICBTYmJNZWRpYU1hdGNoZXJDb250cm9sbGVyLFxuICBTYmJNZWRpYVF1ZXJ5QnJlYWtwb2ludFNtYWxsQW5kQmVsb3csXG4gIFNiYk9wZW5DbG9zZUJhc2VFbGVtZW50LFxuICB0eXBlIFNiYk9wZW5lZENsb3NlZFN0YXRlLFxuICBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbixcbiAgc2Nyb2xsYmFyU3R5bGVzLFxuICBzZXRBcmlhT3ZlcmxheVRyaWdnZXJQcm9wZXJ0aWVzLFxuICDJtXN0YXRlQ29udHJvbGxlcixcbn0gZnJvbSAnLi4vLi4vY29yZS50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYk5hdmlnYXRpb25FbGVtZW50IH0gZnJvbSAnLi4vbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLmNvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IH0gZnJvbSAnLi4vbmF2aWdhdGlvbi1idXR0b24vbmF2aWdhdGlvbi1idXR0b24uY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgU2JiTmF2aWdhdGlvbkxpbmtFbGVtZW50IH0gZnJvbSAnLi4vbmF2aWdhdGlvbi1saW5rL25hdmlnYXRpb24tbGluay5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9uYXZpZ2F0aW9uLXNlY3Rpb24uc2Nzcz9pbmxpbmUnO1xuXG4vKipcbiAqIEl0IGNhbiBiZSB1c2VkIGFzIGEgY29udGFpbmVyIGZvciBgc2JiLW5hdmlnYXRpb24tbGlzdGAgd2l0aGluIGEgYHNiYi1uYXZpZ2F0aW9uYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IGludG8gdGhlIGBzYmItbmF2aWdhdGlvbi1zZWN0aW9uYC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNiYk5hdmlnYXRpb25TZWN0aW9uRWxlbWVudCBleHRlbmRzIFNiYlVwZGF0ZVNjaGVkdWxlck1peGluKFNiYk9wZW5DbG9zZUJhc2VFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItbmF2aWdhdGlvbi1zZWN0aW9uJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBlbGVtZW50RGVwZW5kZW5jaWVzOiBTYmJFbGVtZW50VHlwZVtdID0gW1NiYlRyYW5zcGFyZW50QnV0dG9uRWxlbWVudF07XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtzY3JvbGxiYXJTdHlsZXMsIHVuc2FmZUNTUyhzdHlsZSldO1xuXG4gIC8qKlxuICAgKiBUaGUgbGFiZWwgdG8gYmUgc2hvd24gYmVmb3JlIHRoZSBhY3Rpb24gbGlzdC5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICd0aXRsZS1jb250ZW50JywgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIHRpdGxlQ29udGVudDogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoZSBlbGVtZW50IHRoYXQgd2lsbCB0cmlnZ2VyIHRoZSBuYXZpZ2F0aW9uIHNlY3Rpb24uXG4gICAqXG4gICAqIEZvciBhdHRyaWJ1dGUgdXNhZ2UsIHByb3ZpZGUgYW4gaWQgcmVmZXJlbmNlLlxuICAgKi9cbiAgQGlkUmVmZXJlbmNlKClcbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIHRyaWdnZXI6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgYXMgYXJpYS1sYWJlbCB0byB0aGUgbmF2IGVsZW1lbnQgYW5kIGlzIHJlYWQgYXMgYSB0aXRsZSBvZiB0aGUgbmF2aWdhdGlvbi1zZWN0aW9uLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2FjY2Vzc2liaWxpdHktbGFiZWwnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5TGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGlzIHdpbGwgYmUgZm9yd2FyZGVkIGFzIGFyaWEtbGFiZWwgdG8gdGhlIGJhY2sgYnV0dG9uIGVsZW1lbnQuXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1iYWNrLWxhYmVsJyB9KVxuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eUJhY2tMYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgLyoqIFRoZSBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LiAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgc2V0IHN0YXRlKHN0YXRlOiBTYmJPcGVuZWRDbG9zZWRTdGF0ZSkge1xuICAgIHN1cGVyLnN0YXRlID0gc3RhdGU7XG4gICAgdGhpcy5pbnRlcm5hbHMuYXJpYUhpZGRlbiA9IHRoaXMuc3RhdGUgIT09ICdvcGVuZWQnID8gJ3RydWUnIDogbnVsbDtcbiAgfVxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZ2V0IHN0YXRlKCk6IFNiYk9wZW5lZENsb3NlZFN0YXRlIHtcbiAgICByZXR1cm4gc3VwZXIuc3RhdGU7XG4gIH1cblxuICBwcml2YXRlIF9maXJzdExldmVsTmF2aWdhdGlvbj86IFNiYk5hdmlnYXRpb25FbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3RyaWdnZXJFbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF90cmlnZ2VyQWJvcnRDb250cm9sbGVyITogQWJvcnRDb250cm9sbGVyO1xuICBwcml2YXRlIF93aW5kb3dFdmVudHNDb250cm9sbGVyITogQWJvcnRDb250cm9sbGVyO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX2ZvY3VzVHJhcENvbnRyb2xsZXIgPSBuZXcgU2JiRm9jdXNUcmFwQ29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfbGFzdEtleWRvd25FdmVudDogS2V5Ym9hcmRFdmVudCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9tZWRpYU1hdGNoZXJDb250cm9sbGVyID0gbmV3IFNiYk1lZGlhTWF0Y2hlckNvbnRyb2xsZXIodGhpcywge1xuICAgIFtTYmJNZWRpYVF1ZXJ5QnJlYWtwb2ludFNtYWxsQW5kQmVsb3ddOiAobWF0Y2hlcykgPT4ge1xuICAgICAgaWYgKHRoaXMuc3RhdGUgIT09ICdjbG9zZWQnKSB7XG4gICAgICAgIHRoaXMuX3NldE5hdmlnYXRpb25JbmVydChtYXRjaGVzKTtcbiAgICAgIH1cbiAgICB9LFxuICB9KTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdrZXlkb3duJywgKGUpID0+IHtcbiAgICAgIHRoaXMuX2xhc3RLZXlkb3duRXZlbnQgPSBlO1xuICAgIH0pO1xuXG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2ZvY3Vzb3V0JywgKGUpID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgZS5yZWxhdGVkVGFyZ2V0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgJiZcbiAgICAgICAgIXRoaXMuY29udGFpbnMoZS5yZWxhdGVkVGFyZ2V0KSAmJlxuICAgICAgICBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnICYmXG4gICAgICAgIHRoaXMuX2xhc3RLZXlkb3duRXZlbnQ/LmtleSA9PT0gJ1RhYicgJiZcbiAgICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnRcbiAgICAgICkge1xuICAgICAgICBjb25zdCBuYXZpZ2F0aW9uRWxlbWVudCA9IHRoaXMuY2xvc2VzdDxTYmJOYXZpZ2F0aW9uRWxlbWVudD4oJ3NiYi1uYXZpZ2F0aW9uJyk7XG4gICAgICAgIGNvbnN0IGZvY3VzYWJsZUVsZW1lbnRzID0gQXJyYXkuZnJvbShcbiAgICAgICAgICBuYXZpZ2F0aW9uRWxlbWVudD8ucXVlcnlTZWxlY3RvckFsbDxIVE1MRWxlbWVudD4oSVNfRk9DVVNBQkxFX1FVRVJZKSA/PyBbXSxcbiAgICAgICAgKS5maWx0ZXIoKGUpID0+ICF0aGlzLmNvbnRhaW5zKGUpKTtcblxuICAgICAgICBpZiAodGhpcy5fbGFzdEtleWRvd25FdmVudC5zaGlmdEtleSB8fCAhZm9jdXNhYmxlRWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LmZvY3VzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgdHJpZ2dlckluZGV4ID0gZm9jdXNhYmxlRWxlbWVudHMuaW5kZXhPZih0aGlzLl90cmlnZ2VyRWxlbWVudCk7XG4gICAgICAgICAgKGZvY3VzYWJsZUVsZW1lbnRzW3RyaWdnZXJJbmRleCArIDFdID8/IG5hdmlnYXRpb25FbGVtZW50IS5jbG9zZUJ1dHRvbik/LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyB0aGUgbmF2aWdhdGlvbiBzZWN0aW9uIG9uIHRyaWdnZXIgY2xpY2suXG4gICAqL1xuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdGF0ZSAhPT0gJ2Nsb3NlZCcgfHwgIXRoaXMuaGFzVXBkYXRlZCB8fCAhdGhpcy5kaXNwYXRjaEJlZm9yZU9wZW5FdmVudCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2lzTmF2aWdhdGlvbkJ1dHRvbih0aGlzLl90cmlnZ2VyRWxlbWVudCkpIHtcbiAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50Py5tYXJrZXI/LnNlbGVjdCh0aGlzLl90cmlnZ2VyRWxlbWVudCk7XG4gICAgfVxuXG4gICAgdGhpcy5fY2xvc2VQcmV2aW91c05hdmlnYXRpb25TZWN0aW9uKCk7XG4gICAgdGhpcy5zdGF0ZSA9ICdvcGVuaW5nJztcbiAgICAvKiogQGludGVybmFsICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnybVuYXZpZ2F0aW9uc2VjdGlvbm9wZW5pbmcnKSk7XG4gICAgdGhpcy5zdGFydFVwZGF0ZSgpO1xuICAgIHRoaXMuaW5lcnQgPSB0cnVlO1xuICAgIGlmICh0aGlzLl90cmlnZ2VyRWxlbWVudCkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuYXJpYUV4cGFuZGVkID0gJ3RydWUnO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSBhbmltYXRpb24gZHVyYXRpb24gaXMgemVybywgdGhlIGFuaW1hdGlvbmVuZCBldmVudCBpcyBub3QgYWx3YXlzIGZpcmVkIHJlbGlhYmx5LlxuICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBvcGVuZWRgIHN0YXRlLlxuICAgIGlmICh0aGlzLl9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpKSB7XG4gICAgICB0aGlzLl9oYW5kbGVPcGVuaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKHRoaXMsICctLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVPcGVuaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmVkJztcbiAgICB0aGlzLmluZXJ0ID0gZmFsc2U7XG4gICAgdGhpcy5fYXR0YWNoV2luZG93RXZlbnRzKCk7XG4gICAgdGhpcy5fc2V0TmF2aWdhdGlvbkluZXJ0KCk7XG4gICAgdGhpcy5fZm9jdXNUcmFwQ29udHJvbGxlci5mb2N1c0luaXRpYWxFbGVtZW50KCk7XG4gICAgdGhpcy5fY2hlY2tBY3RpdmVBY3Rpb24oKTtcbiAgICB0aGlzLmNvbXBsZXRlVXBkYXRlKCk7XG4gICAgdGhpcy5kaXNwYXRjaE9wZW5FdmVudCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xvc2luZygpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlID0gJ2Nsb3NlZCc7XG4gICAgdGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCcuc2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fY29udGFpbmVyJyk/LnNjcm9sbFRvKDAsIDApO1xuICAgIHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fcmVzZXRMaXN0cygpO1xuICAgIHRoaXMuX3NldE5hdmlnYXRpb25JbmVydCgpO1xuICAgIGlmICh0aGlzLl9pc0JlbG93TGFyZ2UoKSAmJiB0aGlzLl90cmlnZ2VyRWxlbWVudCkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG4gICAgdGhpcy5jb21wbGV0ZVVwZGF0ZSgpO1xuICAgIHRoaXMuZGlzcGF0Y2hDbG9zZUV2ZW50KCk7XG4gIH1cblxuICBwcml2YXRlIF9jbG9zZVByZXZpb3VzTmF2aWdhdGlvblNlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fZmlyc3RMZXZlbE5hdmlnYXRpb24/LmFjdGl2ZU5hdmlnYXRpb25TZWN0aW9uPy5jbG9zZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgbmF2aWdhdGlvbiBzZWN0aW9uLlxuICAgKi9cbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0YXRlICE9PSAnb3BlbmVkJyB8fCAhdGhpcy5kaXNwYXRjaEJlZm9yZUNsb3NlRXZlbnQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCfJtW5hdmlnYXRpb25zZWN0aW9uY2xvc2luZycpKTtcbiAgICB0aGlzLnN0YXRlID0gJ2Nsb3NpbmcnO1xuICAgIHRoaXMuc3RhcnRVcGRhdGUoKTtcbiAgICB0aGlzLmluZXJ0ID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LmFyaWFFeHBhbmRlZCA9ICdmYWxzZSc7XG4gICAgfVxuXG4gICAgLy8gSWYgdGhlIGFuaW1hdGlvbiBkdXJhdGlvbiBpcyB6ZXJvLCB0aGUgYW5pbWF0aW9uZW5kIGV2ZW50IGlzIG5vdCBhbHdheXMgZmlyZWQgcmVsaWFibHkuXG4gICAgLy8gSW4gdGhpcyBjYXNlIHdlIGRpcmVjdGx5IHNldCB0aGUgYGNsb3NlZGAgc3RhdGUuXG4gICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgdHJpZ2dlciBpcyB2YWxpZCBhbmQgYXR0YWNoIGNsaWNrIGV2ZW50IGxpc3RlbmVycy5cbiAgcHJpdmF0ZSBfY29uZmlndXJlVHJpZ2dlcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50cmlnZ2VyID09PSB0aGlzLl90cmlnZ2VyRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3RyaWdnZXJBYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgcmVtb3ZlQXJpYU92ZXJsYXlUcmlnZ2VyUHJvcGVydGllcyh0aGlzLl90cmlnZ2VyRWxlbWVudCk7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQgPSB0aGlzLnRyaWdnZXI7XG5cbiAgICBpZiAoIXRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2V0QXJpYU92ZXJsYXlUcmlnZ2VyUHJvcGVydGllcyh0aGlzLCB0aGlzLl90cmlnZ2VyRWxlbWVudCwgJ21lbnUnLCB0aGlzLnN0YXRlKTtcbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgIGlmICh0aGlzLl9pc05hdmlnYXRpb25CdXR0b24odGhpcy5fdHJpZ2dlckVsZW1lbnQpKSB7XG4gICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5jb25uZWN0ZWRTZWN0aW9uID0gdGhpcztcbiAgICB9XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB0aGlzLm9wZW4oKSwge1xuICAgICAgc2lnbmFsOiB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB0aGlzLl9maXJzdExldmVsTmF2aWdhdGlvbiA9IHRoaXMuX3RyaWdnZXJFbGVtZW50Py5jbG9zZXN0Py4oJ3NiYi1uYXZpZ2F0aW9uJyk7XG4gIH1cblxuICBwcml2YXRlIF9pc05hdmlnYXRpb25CdXR0b24odHJpZ2dlcjogSFRNTEVsZW1lbnQgfCBudWxsKTogdHJpZ2dlciBpcyBTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudCB7XG4gICAgcmV0dXJuIHRyaWdnZXI/LmxvY2FsTmFtZSA9PT0gJ3NiYi1uYXZpZ2F0aW9uLWJ1dHRvbic7XG4gIH1cblxuICBwcml2YXRlIF9zZXROYXZpZ2F0aW9uSW5lcnQoaXNCZWxvd0xhcmdlOiBib29sZWFuID0gdGhpcy5faXNCZWxvd0xhcmdlKCkpOiB2b2lkIHtcbiAgICBjb25zdCBuYXZpZ2F0aW9uQ29udGVudCA9IHRoaXMuX2ZpcnN0TGV2ZWxOYXZpZ2F0aW9uPy5uYXZpZ2F0aW9uQ29udGVudDtcbiAgICBpZiAobmF2aWdhdGlvbkNvbnRlbnQpIHtcbiAgICAgIG5hdmlnYXRpb25Db250ZW50LmluZXJ0ID0gaXNCZWxvd0xhcmdlICYmIHRoaXMuc3RhdGUgIT09ICdjbG9zZWQnO1xuICAgIH1cbiAgfVxuXG4gIC8vIEluIHJhcmUgY2FzZXMgaXQgY2FuIGJlIHRoYXQgdGhlIGFuaW1hdGlvbkVuZCBldmVudCBpcyB0cmlnZ2VyZWQgdHdpY2UuXG4gIC8vIFRvIGF2b2lkIGVudGVyaW5nIGEgY29ycnVwdCBzdGF0ZSwgZXhpdCB3aGVuIHN0YXRlIGlzIG5vdCBleHBlY3RlZC5cbiAgcHJpdmF0ZSBfb25BbmltYXRpb25FbmQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdvcGVuJyAmJiB0aGlzLnN0YXRlID09PSAnb3BlbmluZycpIHtcbiAgICAgIHRoaXMuX2hhbmRsZU9wZW5pbmcoKTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdjbG9zZScgJiYgdGhpcy5zdGF0ZSA9PT0gJ2Nsb3NpbmcnKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVzZXRMaXN0cygpOiB2b2lkIHtcbiAgICBBcnJheS5mcm9tKFxuICAgICAgdGhpcy5xdWVyeVNlbGVjdG9yQWxsPFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IHwgU2JiTmF2aWdhdGlvbkxpbmtFbGVtZW50PihcbiAgICAgICAgJzpzdGF0ZShzZWN0aW9uLWFjdGlvbik6c3RhdGUoYWN0aW9uLWFjdGl2ZSknLFxuICAgICAgKSA/PyBbXSxcbiAgICApLmZvckVhY2goKGFjdGlvbikgPT4gybVzdGF0ZUNvbnRyb2xsZXIoYWN0aW9uKS5kZWxldGUoJ2FjdGlvbi1hY3RpdmUnKSk7XG4gIH1cblxuICBwcml2YXRlIF9hdHRhY2hXaW5kb3dFdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4gdGhpcy5fb25LZXlkb3duRXZlbnQoZXZlbnQpLCB7XG4gICAgICBzaWduYWw6IHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuXG4gICAgLy8gQ2xvc2UgbmF2aWdhdGlvbiBzZWN0aW9uIG9uIGFjdGlvbiBjbGljayBvciBzYmItbmF2aWdhdGlvbi1zZWN0aW9uLWNsb3NlIGNsaWNrXG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5faGFuZGxlTmF2aWdhdGlvblNlY3Rpb25DbG9zZSwge1xuICAgICAgc2lnbmFsOiB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBjbGljayB3YXMgdHJpZ2dlcmVkIG9uIGFuIGVsZW1lbnQgdGhhdCBzaG91bGQgY2xvc2UgdGhlIHNlY3Rpb24uXG4gIHByaXZhdGUgX2hhbmRsZU5hdmlnYXRpb25TZWN0aW9uQ2xvc2UgPSAoZXZlbnQ6IEV2ZW50KTogdm9pZCA9PiB7XG4gICAgaWYgKFxuICAgICAgZXZlbnRcbiAgICAgICAgLmNvbXBvc2VkUGF0aCgpXG4gICAgICAgIC5maWx0ZXIoKGVsKSA9PiBlbCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KVxuICAgICAgICAuc29tZSgoZWwpID0+IHRoaXMuX2lzQ2xvc2VFbGVtZW50KGVsKSlcbiAgICApIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH07XG5cbiAgcHJpdmF0ZSBfaXNDbG9zZUVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgZWxlbWVudC5ub2RlTmFtZSA9PT0gJ0EnIHx8XG4gICAgICAoIWVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpICYmXG4gICAgICAgIChlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnc2JiLW5hdmlnYXRpb24tY2xvc2UnKSB8fFxuICAgICAgICAgIGVsZW1lbnQuaGFzQXR0cmlidXRlKCdzYmItbmF2aWdhdGlvbi1zZWN0aW9uLWNsb3NlJykpKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF9pc0JlbG93TGFyZ2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX21lZGlhTWF0Y2hlckNvbnRyb2xsZXIubWF0Y2hlcyhTYmJNZWRpYVF1ZXJ5QnJlYWtwb2ludFNtYWxsQW5kQmVsb3cpID8/IGZhbHNlO1xuICB9XG5cbiAgLy8gQ2xvc2VzIHRoZSBuYXZpZ2F0aW9uIG9uIFwiRXNjXCIga2V5IHByZXNzZWQuXG4gIHByaXZhdGUgX29uS2V5ZG93bkV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgPT09ICdvcGVuZWQnICYmIGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0FjdGl2ZUFjdGlvbigpOiB2b2lkIHtcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5xdWVyeVNlbGVjdG9yPFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IHwgU2JiTmF2aWdhdGlvbkxpbmtFbGVtZW50PihcbiAgICAgICc6aXMoc2JiLW5hdmlnYXRpb24tYnV0dG9uLCBzYmItbmF2aWdhdGlvbi1saW5rKS5zYmItYWN0aXZlJyxcbiAgICApO1xuICAgIMm1c3RhdGVDb250cm9sbGVyKGVsZW1lbnQpPy50b2dnbGUoJ2FjdGlvbi1hY3RpdmUnLCB0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuc2xvdCB8fD0gJ25hdmlnYXRpb24tc2VjdGlvbic7XG4gICAgaWYgKHRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgdGhpcy5fY29uZmlndXJlVHJpZ2dlcigpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBkaXNjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50ID0gbnVsbDtcbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXI/LmFib3J0KCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgcmVxdWVzdFVwZGF0ZShcbiAgICBuYW1lPzogUHJvcGVydHlLZXksXG4gICAgb2xkVmFsdWU/OiB1bmtub3duLFxuICAgIG9wdGlvbnM/OiBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICApOiB2b2lkIHtcbiAgICBzdXBlci5yZXF1ZXN0VXBkYXRlKG5hbWUsIG9sZFZhbHVlLCBvcHRpb25zKTtcblxuICAgIGlmICghaXNTZXJ2ZXIgJiYgKCFuYW1lIHx8IG5hbWUgPT09ICd0cmlnZ2VyJykgJiYgdGhpcy5oYXNVcGRhdGVkKSB7XG4gICAgICB0aGlzLl9jb25maWd1cmVUcmlnZ2VyKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2NvbnRhaW5lclwiPlxuICAgICAgICA8bmF2XG4gICAgICAgICAgQGFuaW1hdGlvbmVuZD0ke3RoaXMuX29uQW5pbWF0aW9uRW5kfVxuICAgICAgICAgIGNsYXNzPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvblwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PSR7IXRoaXMuYWNjZXNzaWJpbGl0eUxhYmVsID8gJ3RpdGxlJyA6IG5vdGhpbmd9XG4gICAgICAgICAgYXJpYS1sYWJlbD0ke3RoaXMuYWNjZXNzaWJpbGl0eUxhYmVsID8gdGhpcy5hY2Nlc3NpYmlsaXR5TGFiZWwgOiBub3RoaW5nfVxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX3dyYXBwZXIgc2JiLXNjcm9sbGJhci1uZWdhdGl2ZVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2hlYWRlclwiPlxuICAgICAgICAgICAgICAgIDwhLS0gQmFjayBidXR0b24gLS0+XG4gICAgICAgICAgICAgICAgPHNiYi10cmFuc3BhcmVudC1idXR0b25cbiAgICAgICAgICAgICAgICAgIGlkPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvbi1iYWNrLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2JhY2tcIlxuICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD0ke3RoaXMuYWNjZXNzaWJpbGl0eUJhY2tMYWJlbCB8fCBpMThuR29CYWNrW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfVxuICAgICAgICAgICAgICAgICAgbmVnYXRpdmVcbiAgICAgICAgICAgICAgICAgIHNpemU9XCJtXCJcbiAgICAgICAgICAgICAgICAgIGljb24tbmFtZT1cImNoZXZyb24tc21hbGwtbGVmdC1zbWFsbFwiXG4gICAgICAgICAgICAgICAgICBzYmItbmF2aWdhdGlvbi1zZWN0aW9uLWNsb3NlXG4gICAgICAgICAgICAgICAgPjwvc2JiLXRyYW5zcGFyZW50LWJ1dHRvbj5cblxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fdGl0bGVcIiBpZD1cInRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICA8c2xvdCBuYW1lPVwidGl0bGVcIj4ke3RoaXMudGl0bGVDb250ZW50fTwvc2xvdD5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uYXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItbmF2aWdhdGlvbi1zZWN0aW9uJzogU2JiTmF2aWdhdGlvblNlY3Rpb25FbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0lDNkNhLHFDQUEyQjttQkFBUyx3QkFBd0Isd0JBQXdCOzs7Ozs7Ozs7Ozs7O2NBQXBGLG9DQUFvQyxZQUFnRDs7OytCQVE5RixXQUFXLEVBQ1gs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
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
2
|
import { html, isServer, unsafeCSS } from "lit";
|
|
3
3
|
import { property, state } from "lit/decorators.js";
|
|
4
|
-
import { SbbEscapableOverlayController, SbbFocusTrapController, SbbInertController, SbbLanguageController, SbbOpenCloseBaseElement, SbbScrollHandler, SbbUpdateSchedulerMixin,
|
|
4
|
+
import { SbbEscapableOverlayController, SbbFocusTrapController, SbbInertController, SbbLanguageController, SbbOpenCloseBaseElement, SbbScrollHandler, SbbUpdateSchedulerMixin, forceType, i18nCloseNavigation, idReference, isEventOnElement, isZeroAnimationDuration, removeAriaOverlayTriggerProperties, scrollbarStyles, setAriaOverlayTriggerProperties } from "./core.js";
|
|
5
5
|
import { SbbTransparentButtonElement } from "./button.pure.js";
|
|
6
6
|
import { ResizeController } from "@lit-labs/observers/resize-controller.js";
|
|
7
7
|
import { ref } from "lit/directives/ref.js";
|
|
@@ -94,11 +94,7 @@ var SbbNavigationElement = (() => {
|
|
|
94
94
|
this.role = "navigation";
|
|
95
95
|
}
|
|
96
96
|
static {
|
|
97
|
-
this.styles = [
|
|
98
|
-
boxSizingStyles,
|
|
99
|
-
scrollbarStyles,
|
|
100
|
-
unsafeCSS(navigation_default)
|
|
101
|
-
];
|
|
97
|
+
this.styles = [scrollbarStyles, unsafeCSS(navigation_default)];
|
|
102
98
|
}
|
|
103
99
|
#trigger_accessor_storage;
|
|
104
100
|
/**
|
|
@@ -316,4 +312,4 @@ var SbbNavigationElement = (() => {
|
|
|
316
312
|
//#endregion
|
|
317
313
|
export { SbbNavigationElement as t };
|
|
318
314
|
|
|
319
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi5jb21wb25lbnQtQ2NvNGxsQnQuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLnNjc3M/aW5saW5lIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi8uLi9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkcHJvcGVydGllcy4uLikge1xuICB0cmFuc2l0aW9uOiB7XG4gICAgZHVyYXRpb246IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gICAgdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1hbmltYXRpb24tZWFzaW5nKTtcbiAgICBwcm9wZXJ0eTogJHByb3BlcnRpZXM7XG4gIH1cbn1cblxuOmhvc3Qge1xuICAtLXNiYi1uYXZpZ2F0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKFxuICAgIC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLFxuICAgIHZhcigtLXNiYi1hbmltYXRpb24tZHVyYXRpb24tM3gpXG4gICk7XG4gIC0tc2JiLWZvY3VzLW91dGxpbmUtY29sb3I6IHZhcigtLXNiYi1mb2N1cy1vdXRsaW5lLWNvbG9yLWRhcmspO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaW5zZXQ6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWluc2V0KTtcbiAgei1pbmRleDogdmFyKC0tc2JiLW5hdmlnYXRpb24tei1pbmRleCwgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBsYXJnZSkge1xuICAgIC0tc2JiLW5hdmlnYXRpb24tYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoXG4gICAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICAgIHZhcigtLXNiYi1hbmltYXRpb24tZHVyYXRpb24tNngpXG4gICAgKTtcbiAgICAtLXNiYi1uYXZpZ2F0aW9uLXdpZHRoOiBjYWxjKDEwMCUgKyB2YXIoLS1zYmItbGF5b3V0LWJhc2Utb2Zmc2V0LXJlc3BvbnNpdmUpKTtcbiAgfVxufVxuXG46aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5pbmcpLCA6c3RhdGUoc3RhdGUtb3BlbmVkKSwgOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuOmhvc3QoOnN0YXRlKHN0YXRlLW9wZW5lZCkpIHtcbiAgLS1zYmItbmF2aWdhdGlvbi1hbmltYXRpb24tZWFzaW5nOiBlYXNlLW91dDtcbn1cblxuOmhvc3QoOmlzKDpzdGF0ZShzdGF0ZS1vcGVuZWQpLCA6c3RhdGUoc3RhdGUtb3BlbmluZykpKSB7XG4gIC0tc2JiLW5hdmlnYXRpb24tYmFja2Ryb3AtdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgLS1zYmItbmF2aWdhdGlvbi1iYWNrZHJvcC1wb2ludGVyLWV2ZW50czogYWxsO1xufVxuXG46aG9zdCg6bm90KDpzdGF0ZShzdGF0ZS1jbG9zZWQpKSkge1xuICAtLXNiYi1uYXZpZ2F0aW9uLWluc2V0OiAwO1xuICAtLXNiYi1uYXZpZ2F0aW9uLXRyYW5zbGF0ZTogbm9uZTtcbn1cblxuOmhvc3QoOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSB7XG4gIC0tc2JiLW5hdmlnYXRpb24tYmFja2Ryb3AtYW5pbWF0aW9uLW5hbWU6IGJhY2tkcm9wLWNsb3NlO1xufVxuXG46aG9zdCg6c3RhdGUoaGFzLW9wZW4tbmF2aWdhdGlvbi1zZWN0aW9uKSkge1xuICAtLXNiYi1uYXZpZ2F0aW9uLWNvbnRlbnQtdHJhbnNsYXRlOiAtMTAwJSAwO1xuXG4gIEBpbmNsdWRlIHNiYi5tcSgkZnJvbTogJ2xhcmdlJykge1xuICAgIC0tc2JiLW5hdmlnYXRpb24tZXhwYW5kZWQtd2lkdGg6IDEwMGR2dztcbiAgICAtLXNiYi1uYXZpZ2F0aW9uLWNvbnRlbnQtdHJhbnNsYXRlOiAwO1xuICB9XG59XG5cbjpob3N0KDpzdGF0ZShyZXNpemUtZGlzYWJsZS1hbmltYXRpb24pKSB7XG4gIEBpbmNsdWRlIHNiYi5kaXNhYmxlLWFuaW1hdGlvbjtcbn1cblxuLnNiYi1uYXZpZ2F0aW9uX19jb250YWluZXIge1xuICBAaW5jbHVkZSBzYmIuZ3JpZC1iYXNlO1xuXG4gIHBhZGRpbmctaW5saW5lOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNsYXRlOiB2YXIoLS1zYmItbmF2aWdhdGlvbi10cmFuc2xhdGUpO1xuXG4gIEBpbmNsdWRlIHNiYi5tcSgkZnJvbTogbGFyZ2UpIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLWxheW91dC1iYXNlLW9mZnNldC1yZXNwb25zaXZlKTtcblxuICAgIC8vIE5hdmlnYXRpb24gYmFja2Ryb3AgKG5vdCB2aXNpYmxlIG9uIG1vYmlsZSlcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2aXNpYmlsaXR5KTtcblxuICAgICAgYW5pbWF0aW9uOiB7XG4gICAgICAgIG5hbWU6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWJhY2tkcm9wLWFuaW1hdGlvbi1uYW1lKTtcbiAgICAgICAgZHVyYXRpb246IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gICAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLW5hdmlnYXRpb24tYW5pbWF0aW9uLWVhc2luZyk7XG4gICAgICB9XG5cbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgdmlzaWJpbGl0eTogdmFyKC0tc2JiLW5hdmlnYXRpb24tYmFja2Ryb3AtdmlzaWJpbGl0eSwgaGlkZGVuKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1iYWNrZHJvcC1wb2ludGVyLWV2ZW50cywgbm9uZSk7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBpbnNldDogdmFyKC0tc2JiLW5hdmlnYXRpb24taW5zZXQpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLW5hdmlnYXRpb24tYmFja2Ryb3AtY29sb3IpO1xuICAgIH1cbiAgfVxufVxuXG4uc2JiLW5hdmlnYXRpb24ge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHdpZHRoKTtcblxuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogdmFyKC0tc2JiLW5hdmlnYXRpb24td2lkdGgpO1xuICBncmlkLWNvbHVtbjogdmFyKC0tc2JiLW5hdmlnYXRpb24tZ3JpZC1jb2x1bW4pO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiB2YXIoLS1zYmItbmF2aWdhdGlvbi1pbmxpbmUtc3RhcnQsIDApO1xuICBpbnNldC1ibG9jay1zdGFydDogMDtcbiAgYm9yZGVyOiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItbmF2aWdhdGlvbi1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tc2JiLW5hdmlnYXRpb24tY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAmOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24od2lkdGgpO1xuXG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1leHBhbmRlZC13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zYmItbmF2aWdhdGlvbi1oZWlnaHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWJhY2tncm91bmQtY29sb3IpO1xuICB9XG5cbiAgOmhvc3QoOmlzKDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSwgOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cbiAgICBhbmltYXRpb246IHtcbiAgICAgIG5hbWU6IG9wZW47XG4gICAgICBkdXJhdGlvbjogdmFyKC0tc2JiLW5hdmlnYXRpb24tYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLW5hdmlnYXRpb24tYW5pbWF0aW9uLWVhc2luZyk7XG4gICAgfVxuICB9XG5cbiAgOmhvc3QoOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBhbmltYXRpb24tbmFtZTogY2xvc2U7XG4gIH1cblxuICBAaW5jbHVkZSBzYmIuaWYtZm9yY2VkLWNvbG9ycyB7XG4gICAgb3V0bGluZTogdmFyKC0tc2JiLWJvcmRlci13aWR0aC0xeCkgc29saWQgQ2FudmFzVGV4dDtcbiAgfVxufVxuXG4uc2JiLW5hdmlnYXRpb25fX3dyYXBwZXIge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uc2JiLW5hdmlnYXRpb25fX2hlYWRlciB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24od2lkdGgpO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWV4cGFuZGVkLXdpZHRoKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBhZGRpbmc6IHZhcigtLXNiYi1zcGFjaW5nLXJlc3BvbnNpdmUteHMpO1xuICB6LWluZGV4OiBjYWxjKHZhcigtLXNiYi1uYXZpZ2F0aW9uLXotaW5kZXgsIHZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleCkpICsgMSk7XG59XG5cbi5zYmItbmF2aWdhdGlvbl9fY2xvc2Uge1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xufVxuXG4uc2JiLW5hdmlnYXRpb25fX2NvbnRlbnQge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zbGF0ZSk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1jb250ZW50LWdhcCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItbmF2aWdhdGlvbi1oZWlnaHQpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLW5hdmlnYXRpb24tcGFkZGluZy1pbmxpbmUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1wYWRkaW5nLWJsb2NrLXN0YXJ0KSB2YXIoLS1zYmItbmF2aWdhdGlvbi1wYWRkaW5nLWJsb2NrLWVuZCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHRyYW5zbGF0ZTogdmFyKC0tc2JiLW5hdmlnYXRpb24tY29udGVudC10cmFuc2xhdGUpO1xufVxuXG46OnNsb3R0ZWQoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc2JiLW5hdmlnYXRpb24tbGlzdC1tYXJnaW4tYmxvY2stc3RhcnQpO1xufVxuXG5Aa2V5ZnJhbWVzIG9wZW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2xhdGU6IC0xMDAlIDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNsYXRlOiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgY2xvc2Uge1xuICBmcm9tIHtcbiAgICB0cmFuc2xhdGU6IDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNsYXRlOiAtMTAwJSAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYmFja2Ryb3Atb3BlbiB7XG4gIGZyb20ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYmFja2Ryb3AtY2xvc2Uge1xuICB0byB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbiIsImltcG9ydCB7IFJlc2l6ZUNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL3Jlc2l6ZS1jb250cm9sbGVyLmpzJztcbmltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIGlzU2VydmVyLFxuICB0eXBlIFByb3BlcnR5RGVjbGFyYXRpb24sXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHVuc2FmZUNTUyxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHJlZiB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlZi5qcyc7XG5cbmltcG9ydCB7IFNiYlRyYW5zcGFyZW50QnV0dG9uRWxlbWVudCB9IGZyb20gJy4uLy4uL2J1dHRvbi5wdXJlLnRzJztcbmltcG9ydCB7XG4gIGJveFNpemluZ1N0eWxlcyxcbiAgZm9yY2VUeXBlLFxuICBpMThuQ2xvc2VOYXZpZ2F0aW9uLFxuICBpZFJlZmVyZW5jZSxcbiAgaXNFdmVudE9uRWxlbWVudCxcbiAgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24sXG4gIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlclByb3BlcnRpZXMsXG4gIHR5cGUgU2JiRWxlbWVudFR5cGUsXG4gIFNiYkVzY2FwYWJsZU92ZXJsYXlDb250cm9sbGVyLFxuICBTYmJGb2N1c1RyYXBDb250cm9sbGVyLFxuICBTYmJJbmVydENvbnRyb2xsZXIsXG4gIFNiYkxhbmd1YWdlQ29udHJvbGxlcixcbiAgU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQsXG4gIFNiYlNjcm9sbEhhbmRsZXIsXG4gIFNiYlVwZGF0ZVNjaGVkdWxlck1peGluLFxuICBzY3JvbGxiYXJTdHlsZXMsXG4gIHNldEFyaWFPdmVybGF5VHJpZ2dlclByb3BlcnRpZXMsXG59IGZyb20gJy4uLy4uL2NvcmUudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudCB9IGZyb20gJy4uL25hdmlnYXRpb24tYnV0dG9uL25hdmlnYXRpb24tYnV0dG9uLmNvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYk5hdmlnYXRpb25MaW5rRWxlbWVudCB9IGZyb20gJy4uL25hdmlnYXRpb24tbGluay9uYXZpZ2F0aW9uLWxpbmsuY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgU2JiTmF2aWdhdGlvblNlY3Rpb25FbGVtZW50IH0gZnJvbSAnLi4vbmF2aWdhdGlvbi1zZWN0aW9uL25hdmlnYXRpb24tc2VjdGlvbi5jb21wb25lbnQudHMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9uYXZpZ2F0aW9uLnNjc3M/aW5saW5lJztcblxuY29uc3QgREVCT1VOQ0VfVElNRSA9IDE1MDtcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIG5hdmlnYXRpb24gbWVudSwgd3JhcHBpbmcgb25lIG9yIG1vcmUgYHNiYi1uYXZpZ2F0aW9uLSpgIGNvbXBvbmVudHMuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgYHNiYi1uYXZpZ2F0aW9uLWJ1dHRvbmAvYHNiYi1uYXZpZ2F0aW9uLWxpbmtgIGVsZW1lbnRzIGludG8gdGhlIHNiYi1uYXZpZ2F0aW9uIG1lbnUuXG4gKiBAY3NzcHJvcCBbLS1zYmItbmF2aWdhdGlvbi16LWluZGV4PXZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleCldIC0gVG8gc3BlY2lmeSBhIGN1c3RvbSBzdGFjayBvcmRlcixcbiAqIHRoZSBgei1pbmRleGAgY2FuIGJlIG92ZXJyaWRkZW4gYnkgZGVmaW5pbmcgdGhpcyBDU1MgdmFyaWFibGUuIFRoZSBkZWZhdWx0IGB6LWluZGV4YCBvZiB0aGVcbiAqIGNvbXBvbmVudCBpcyBzZXQgdG8gYHZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleClgIHdpdGggYSB2YWx1ZSBvZiBgMTAwMGAuXG4gKi9cbmV4cG9ydCBjbGFzcyBTYmJOYXZpZ2F0aW9uRWxlbWVudCBleHRlbmRzIFNiYlVwZGF0ZVNjaGVkdWxlck1peGluKFNiYk9wZW5DbG9zZUJhc2VFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItbmF2aWdhdGlvbic7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgZWxlbWVudERlcGVuZGVuY2llczogU2JiRWxlbWVudFR5cGVbXSA9IFtTYmJUcmFuc3BhcmVudEJ1dHRvbkVsZW1lbnRdO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHJlYWRvbmx5IHJvbGUgPSAnbmF2aWdhdGlvbic7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFtcbiAgICBib3hTaXppbmdTdHlsZXMsXG4gICAgc2Nyb2xsYmFyU3R5bGVzLFxuICAgIHVuc2FmZUNTUyhzdHlsZSksXG4gIF07XG5cbiAgLyoqXG4gICAqIFRoZSBlbGVtZW50IHRoYXQgd2lsbCB0cmlnZ2VyIHRoZSBuYXZpZ2F0aW9uLlxuICAgKlxuICAgKiBGb3IgYXR0cmlidXRlIHVzYWdlLCBwcm92aWRlIGFuIGlkIHJlZmVyZW5jZS5cbiAgICovXG4gIEBpZFJlZmVyZW5jZSgpXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciB0cmlnZ2VyOiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBUaGlzIHdpbGwgYmUgZm9yd2FyZGVkIGFzIGFyaWEtbGFiZWwgdG8gdGhlIGNsb3NlIGJ1dHRvbiBlbGVtZW50LiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1jbG9zZS1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlDbG9zZUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAvKiogV2hldGhlciBhIG5hdmlnYXRpb24gc2VjdGlvbiBpcyBkaXNwbGF5ZWQuICovXG4gIEBzdGF0ZSgpIHByaXZhdGUgYWNjZXNzb3IgX2FjdGl2ZU5hdmlnYXRpb25TZWN0aW9uOiBTYmJOYXZpZ2F0aW9uU2VjdGlvbkVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICAvKiogUmV0dXJucyB0aGUgYWN0aXZlIG5hdmlnYXRpb24gc2VjdGlvbiBlbGVtZW50LiAqL1xuICBwdWJsaWMgZ2V0IGFjdGl2ZU5hdmlnYXRpb25TZWN0aW9uKCk6IFNiYk5hdmlnYXRpb25TZWN0aW9uRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVOYXZpZ2F0aW9uU2VjdGlvbjtcbiAgfVxuXG4gIC8qKiBSZXR1cm5zIHRoZSBjbG9zZSBidXR0b24gZWxlbWVudC4gKi9cbiAgcHVibGljIGdldCBjbG9zZUJ1dHRvbigpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoJyNzYmItbmF2aWdhdGlvbi1jbG9zZS1idXR0b24nKSA/PyBudWxsO1xuICB9XG5cbiAgLyoqIFJldHVybnMgdGhlIG5hdmlnYXRpb24gY29udGVudCBlbGVtZW50LiAqL1xuICBwdWJsaWMgZ2V0IG5hdmlnYXRpb25Db250ZW50KCk6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcignLnNiYi1uYXZpZ2F0aW9uX19jb250ZW50JykgPz8gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgX25hdmlnYXRpb24hOiBIVE1MRGl2RWxlbWVudDtcbiAgcHJpdmF0ZSBfdHJpZ2dlckVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3RyaWdnZXJBYm9ydENvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfaW5lcnRDb250cm9sbGVyID0gbmV3IFNiYkluZXJ0Q29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfZXNjYXBhYmxlT3ZlcmxheUNvbnRyb2xsZXIgPSBuZXcgU2JiRXNjYXBhYmxlT3ZlcmxheUNvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX2ZvY3VzVHJhcENvbnRyb2xsZXIgPSBuZXcgU2JiRm9jdXNUcmFwQ29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfc2Nyb2xsSGFuZGxlciA9IG5ldyBTYmJTY3JvbGxIYW5kbGVyKCk7XG4gIHByaXZhdGUgX2lzUG9pbnRlckRvd25FdmVudE9uTmF2aWdhdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xuICBwcml2YXRlIF9yZXNpemVPYnNlcnZlclRpbWVvdXQ6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX25hdmlnYXRpb25SZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVDb250cm9sbGVyKHRoaXMsIHtcbiAgICBza2lwSW5pdGlhbDogdHJ1ZSxcbiAgICBjYWxsYmFjazogKCkgPT4gdGhpcy5fb25OYXZpZ2F0aW9uUmVzaXplKCksXG4gIH0pO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdjbGljaycsIChldmVudCkgPT4gdGhpcy5faGFuZGxlTmF2aWdhdGlvbkNsb3NlKGV2ZW50KSk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ3BvaW50ZXJ1cCcsIChldmVudCkgPT4gdGhpcy5fY2xvc2VPbkJhY2tkcm9wQ2xpY2soZXZlbnQpKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LigncG9pbnRlcmRvd24nLCAoZXZlbnQpID0+IHRoaXMuX3BvaW50ZXJEb3duTGlzdGVuZXIoZXZlbnQpKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LihcbiAgICAgICfJtW5hdmlnYXRpb25zZWN0aW9ub3BlbmluZycsXG4gICAgICAoZXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5fYWN0aXZlTmF2aWdhdGlvblNlY3Rpb24gPSBldmVudC50YXJnZXQgYXMgU2JiTmF2aWdhdGlvblNlY3Rpb25FbGVtZW50O1xuICAgICAgICB0aGlzLnRvZ2dsZVN0YXRlKCdoYXMtb3Blbi1uYXZpZ2F0aW9uLXNlY3Rpb24nLCAhIXRoaXMuX2FjdGl2ZU5hdmlnYXRpb25TZWN0aW9uKTtcbiAgICAgIH0sXG4gICAgICB7IGNhcHR1cmU6IHRydWUgfSxcbiAgICApO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKFxuICAgICAgJ8m1bmF2aWdhdGlvbnNlY3Rpb25jbG9zaW5nJyxcbiAgICAgIChldmVudCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5fYWN0aXZlTmF2aWdhdGlvblNlY3Rpb24gPT09IGV2ZW50LnRhcmdldCkge1xuICAgICAgICAgIHRoaXMuX2FjdGl2ZU5hdmlnYXRpb25TZWN0aW9uID0gbnVsbDtcbiAgICAgICAgICB0aGlzLmludGVybmFscy5zdGF0ZXMuZGVsZXRlKCdoYXMtb3Blbi1uYXZpZ2F0aW9uLXNlY3Rpb24nKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIHsgY2FwdHVyZTogdHJ1ZSB9LFxuICAgICk7XG4gIH1cblxuICAvKiogT3BlbnMgdGhlIG5hdmlnYXRpb24uICovXG4gIHB1YmxpYyBvcGVuKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0YXRlICE9PSAnY2xvc2VkJyB8fCAhdGhpcy5oYXNVcGRhdGVkIHx8ICF0aGlzLmRpc3BhdGNoQmVmb3JlT3BlbkV2ZW50KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNob3dQb3BvdmVyPy4oKTtcbiAgICB0aGlzLnN0YXRlID0gJ29wZW5pbmcnO1xuICAgIHRoaXMuX2NoZWNrQWN0aXZlQWN0aW9ucygpO1xuICAgIHRoaXMuX2NoZWNrQWN0aXZlU2VjdGlvbigpO1xuICAgIHRoaXMuc3RhcnRVcGRhdGUoKTtcblxuICAgIC8vIERpc2FibGUgc2Nyb2xsaW5nIGZvciBjb250ZW50IGJlbG93IHRoZSBuYXZpZ2F0aW9uXG4gICAgdGhpcy5fc2Nyb2xsSGFuZGxlci5kaXNhYmxlU2Nyb2xsKCk7XG4gICAgaWYgKHRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5hcmlhRXhwYW5kZWQgPSAndHJ1ZSc7XG4gICAgfVxuXG4gICAgLy8gSWYgdGhlIGFuaW1hdGlvbiBkdXJhdGlvbiBpcyB6ZXJvLCB0aGUgYW5pbWF0aW9uZW5kIGV2ZW50IGlzIG5vdCBhbHdheXMgZmlyZWQgcmVsaWFibHkuXG4gICAgLy8gSW4gdGhpcyBjYXNlIHdlIGRpcmVjdGx5IHNldCB0aGUgYG9wZW5lZGAgc3RhdGUuXG4gICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgIHRoaXMuX2hhbmRsZU9wZW5pbmcoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0FjdGl2ZVNlY3Rpb24oKTogdm9pZCB7XG4gICAgY29uc3QgYWN0aXZlQWN0aW9uID0gdGhpcy5xdWVyeVNlbGVjdG9yKFxuICAgICAgJ3NiYi1uYXZpZ2F0aW9uLWJ1dHRvbi5zYmItYWN0aXZlJyxcbiAgICApIGFzIFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50O1xuICAgIGFjdGl2ZUFjdGlvbj8uY29ubmVjdGVkU2VjdGlvbj8ub3BlbigpO1xuICB9XG5cbiAgcHJpdmF0ZSBfY2hlY2tBY3RpdmVBY3Rpb25zKCk6IHZvaWQge1xuICAgIGNvbnN0IGFjdGl2ZUFjdGlvbnMgPSBBcnJheS5mcm9tKFxuICAgICAgdGhpcy5xdWVyeVNlbGVjdG9yQWxsKCc6aXMoc2JiLW5hdmlnYXRpb24tYnV0dG9uLCBzYmItbmF2aWdhdGlvbi1saW5rKS5zYmItYWN0aXZlJyksXG4gICAgKSBhcyAoU2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQgfCBTYmJOYXZpZ2F0aW9uTGlua0VsZW1lbnQpW107XG4gICAgYWN0aXZlQWN0aW9ucz8uZm9yRWFjaCgoYWN0aW9uKSA9PiBhY3Rpb24ubWFya2VyPy5zZWxlY3QoYWN0aW9uKSk7XG4gIH1cblxuICAvKiogQ2xvc2VzIHRoZSBuYXZpZ2F0aW9uLiAqL1xuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdvcGVuZWQnIHx8ICF0aGlzLmRpc3BhdGNoQmVmb3JlQ2xvc2VFdmVudCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zdGF0ZSA9ICdjbG9zaW5nJztcbiAgICB0aGlzLnN0YXJ0VXBkYXRlKCk7XG4gICAgaWYgKHRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5hcmlhRXhwYW5kZWQgPSAnZmFsc2UnO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSBhbmltYXRpb24gZHVyYXRpb24gaXMgemVybywgdGhlIGFuaW1hdGlvbmVuZCBldmVudCBpcyBub3QgYWx3YXlzIGZpcmVkIHJlbGlhYmx5LlxuICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBjbG9zZWRgIHN0YXRlLlxuICAgIGlmICh0aGlzLl9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKHRoaXMsICctLXNiYi1uYXZpZ2F0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xvc2luZygpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlID0gJ2Nsb3NlZCc7XG4gICAgdGhpcy5oaWRlUG9wb3Zlcj8uKCk7XG4gICAgdGhpcy5uYXZpZ2F0aW9uQ29udGVudD8uc2Nyb2xsVG8oMCwgMCk7XG4gICAgdGhpcy5faW5lcnRDb250cm9sbGVyLmRlYWN0aXZhdGUoKTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudD8uZm9jdXMoKTtcbiAgICB0aGlzLl9lc2NhcGFibGVPdmVybGF5Q29udHJvbGxlci5kaXNjb25uZWN0KCk7XG4gICAgdGhpcy5kaXNwYXRjaENsb3NlRXZlbnQoKTtcbiAgICB0aGlzLl9uYXZpZ2F0aW9uUmVzaXplT2JzZXJ2ZXIudW5vYnNlcnZlKHRoaXMpO1xuICAgIHRoaXMuX3Jlc2V0TWFya2VycygpO1xuICAgIHRoaXMuX2ZvY3VzVHJhcENvbnRyb2xsZXIuZW5hYmxlZCA9IGZhbHNlO1xuXG4gICAgLy8gRW5hYmxlIHNjcm9sbGluZyBmb3IgY29udGVudCBiZWxvdyB0aGUgbmF2aWdhdGlvblxuICAgIHRoaXMuX3Njcm9sbEhhbmRsZXIuZW5hYmxlU2Nyb2xsKCk7XG4gICAgdGhpcy5jb21wbGV0ZVVwZGF0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlT3BlbmluZygpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlID0gJ29wZW5lZCc7XG4gICAgdGhpcy5fbmF2aWdhdGlvblJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcyk7XG4gICAgdGhpcy5faW5lcnRDb250cm9sbGVyLmFjdGl2YXRlKCk7XG4gICAgdGhpcy5fZXNjYXBhYmxlT3ZlcmxheUNvbnRyb2xsZXIuY29ubmVjdCgpO1xuICAgIHRoaXMuX2ZvY3VzVHJhcENvbnRyb2xsZXIuZm9jdXNJbml0aWFsRWxlbWVudCgpO1xuICAgIHRoaXMuX2ZvY3VzVHJhcENvbnRyb2xsZXIuZW5hYmxlZCA9IHRydWU7XG4gICAgdGhpcy5jb21wbGV0ZVVwZGF0ZSgpO1xuICAgIHRoaXMuZGlzcGF0Y2hPcGVuRXZlbnQoKTtcbiAgfVxuXG4gIC8vIFJlbW92ZXMgdHJpZ2dlciBjbGljayBsaXN0ZW5lciBvbiB0cmlnZ2VyIGNoYW5nZS5cbiAgLy8gQ2hlY2sgaWYgdGhlIHRyaWdnZXIgaXMgdmFsaWQgYW5kIGF0dGFjaCBjbGljayBldmVudCBsaXN0ZW5lcnMuXG4gIHByaXZhdGUgX2NvbmZpZ3VyZVRyaWdnZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudHJpZ2dlciA9PT0gdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlclByb3BlcnRpZXModGhpcy5fdHJpZ2dlckVsZW1lbnQpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50ID0gdGhpcy50cmlnZ2VyO1xuXG4gICAgaWYgKCF0aGlzLl90cmlnZ2VyRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHNldEFyaWFPdmVybGF5VHJpZ2dlclByb3BlcnRpZXModGhpcywgdGhpcy5fdHJpZ2dlckVsZW1lbnQsICdtZW51JywgdGhpcy5zdGF0ZSk7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHRoaXMub3BlbigpLCB7XG4gICAgICBzaWduYWw6IHRoaXMuX3RyaWdnZXJBYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gSW4gcmFyZSBjYXNlcyBpdCBjYW4gYmUgdGhhdCB0aGUgYW5pbWF0aW9uRW5kIGV2ZW50IGlzIHRyaWdnZXJlZCB0d2ljZS5cbiAgLy8gVG8gYXZvaWQgZW50ZXJpbmcgYSBjb3JydXB0IHN0YXRlLCBleGl0IHdoZW4gc3RhdGUgaXMgbm90IGV4cGVjdGVkLlxuICBwcml2YXRlIF9vbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ29wZW4nICYmIHRoaXMuc3RhdGUgPT09ICdvcGVuaW5nJykge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyAmJiB0aGlzLnN0YXRlID09PSAnY2xvc2luZycpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZXNldE1hcmtlcnMoKTogdm9pZCB7XG4gICAgY29uc3QgYWN0aXZlQWN0aW9ucyA9IEFycmF5LmZyb20oXG4gICAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGwoXG4gICAgICAgICc6aXMoc2JiLW5hdmlnYXRpb24tYnV0dG9uLCBzYmItbmF2aWdhdGlvbi1saW5rKTpzdGF0ZShhY3Rpb24tYWN0aXZlKTpub3QoLnNiYi1hY3RpdmUpJyxcbiAgICAgICksXG4gICAgKSBhcyAoU2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQgfCBTYmJOYXZpZ2F0aW9uTGlua0VsZW1lbnQpW107XG4gICAgYWN0aXZlQWN0aW9ucz8uZm9yRWFjaCgoYWN0aW9uKSA9PiBhY3Rpb24ubWFya2VyPy5yZXNldCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZU5hdmlnYXRpb25DbG9zZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBjb21wb3NlZFBhdGhFbGVtZW50cyA9IGV2ZW50XG4gICAgICAuY29tcG9zZWRQYXRoKClcbiAgICAgIC5maWx0ZXIoKGVsKSA9PiBlbCBpbnN0YW5jZW9mIHdpbmRvdy5IVE1MRWxlbWVudCk7XG4gICAgaWYgKGNvbXBvc2VkUGF0aEVsZW1lbnRzLnNvbWUoKGVsKSA9PiB0aGlzLl9pc0Nsb3NlRWxlbWVudChlbCBhcyBIVE1MRWxlbWVudCkpKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaXNDbG9zZUVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKFxuICAgICAgZWxlbWVudC5ub2RlTmFtZSA9PT0gJ0EnIHx8XG4gICAgICAoZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ3NiYi1uYXZpZ2F0aW9uLWNsb3NlJykgJiYgIWVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpKVxuICAgICk7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgcG9pbnRlcmRvd24gZXZlbnQgdGFyZ2V0IGlzIHRyaWdnZXJlZCBvbiB0aGUgbmF2aWdhdGlvbi5cbiAgcHJpdmF0ZSBfcG9pbnRlckRvd25MaXN0ZW5lciA9IChldmVudDogUG9pbnRlckV2ZW50KTogdm9pZCA9PiB7XG4gICAgdGhpcy5faXNQb2ludGVyRG93bkV2ZW50T25OYXZpZ2F0aW9uID1cbiAgICAgIGlzRXZlbnRPbkVsZW1lbnQodGhpcy5fbmF2aWdhdGlvbiwgZXZlbnQpIHx8XG4gICAgICBpc0V2ZW50T25FbGVtZW50KFxuICAgICAgICB0aGlzLnF1ZXJ5U2VsZWN0b3IoJ3NiYi1uYXZpZ2F0aW9uLXNlY3Rpb246c3RhdGUoc3RhdGUtb3BlbmVkKScpPy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAgICduYXYuc2JiLW5hdmlnYXRpb24tc2VjdGlvbicsXG4gICAgICAgICkgYXMgSFRNTEVsZW1lbnQsXG4gICAgICAgIGV2ZW50LFxuICAgICAgKTtcbiAgfTtcblxuICAvLyBDbG9zZSBuYXZpZ2F0aW9uIG9uIGJhY2tkcm9wIGNsaWNrLlxuICBwcml2YXRlIF9jbG9zZU9uQmFja2Ryb3BDbGljayA9IChldmVudDogUG9pbnRlckV2ZW50KTogdm9pZCA9PiB7XG4gICAgaWYgKCF0aGlzLl9pc1BvaW50ZXJEb3duRXZlbnRPbk5hdmlnYXRpb24gJiYgIWlzRXZlbnRPbkVsZW1lbnQodGhpcy5fbmF2aWdhdGlvbiwgZXZlbnQpKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICB9O1xuXG4gIHByaXZhdGUgX29uTmF2aWdhdGlvblJlc2l6ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdGF0ZSAhPT0gJ29wZW5lZCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fcmVzaXplT2JzZXJ2ZXJUaW1lb3V0KSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fcmVzaXplT2JzZXJ2ZXJUaW1lb3V0KTtcbiAgICB9XG5cbiAgICB0aGlzLmludGVybmFscy5zdGF0ZXMuYWRkKCdyZXNpemUtZGlzYWJsZS1hbmltYXRpb24nKTtcblxuICAgIC8vIERpc2FibGUgdGhlIGFuaW1hdGlvbiB3aGVuIHJlc2l6aW5nIHRoZSBuYXZpZ2F0aW9uIHRvIGF2b2lkIHN0cmFuZ2UgaGVpZ2h0IHRyYW5zaXRpb24gZWZmZWN0cy5cbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlclRpbWVvdXQgPSBzZXRUaW1lb3V0KFxuICAgICAgKCkgPT4gdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmRlbGV0ZSgncmVzaXplLWRpc2FibGUtYW5pbWF0aW9uJyksXG4gICAgICBERUJPVU5DRV9USU1FLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnBvcG92ZXIgPSAnbWFudWFsJztcbiAgICBpZiAodGhpcy5oYXNVcGRhdGVkKSB7XG4gICAgICB0aGlzLl9jb25maWd1cmVUcmlnZ2VyKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQgPSBudWxsO1xuICAgIHRoaXMuX3RyaWdnZXJBYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5fc2Nyb2xsSGFuZGxlci5lbmFibGVTY3JvbGwoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSByZXF1ZXN0VXBkYXRlKFxuICAgIG5hbWU/OiBQcm9wZXJ0eUtleSxcbiAgICBvbGRWYWx1ZT86IHVua25vd24sXG4gICAgb3B0aW9ucz86IFByb3BlcnR5RGVjbGFyYXRpb24sXG4gICk6IHZvaWQge1xuICAgIHN1cGVyLnJlcXVlc3RVcGRhdGUobmFtZSwgb2xkVmFsdWUsIG9wdGlvbnMpO1xuXG4gICAgaWYgKCFpc1NlcnZlciAmJiAoIW5hbWUgfHwgbmFtZSA9PT0gJ3RyaWdnZXInKSAmJiB0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG4gICAgdGhpcy5fY29uZmlndXJlVHJpZ2dlcigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgY29uc3QgY2xvc2VCdXR0b24gPSBodG1sYFxuICAgICAgPHNiYi10cmFuc3BhcmVudC1idXR0b25cbiAgICAgICAgaWQ9XCJzYmItbmF2aWdhdGlvbi1jbG9zZS1idXR0b25cIlxuICAgICAgICBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uX19jbG9zZVwiXG4gICAgICAgIGFyaWEtbGFiZWw9JHt0aGlzLmFjY2Vzc2liaWxpdHlDbG9zZUxhYmVsIHx8IGkxOG5DbG9zZU5hdmlnYXRpb25bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19XG4gICAgICAgIGFyaWEtY29udHJvbHM9XCJzYmItbmF2aWdhdGlvbi1vdmVybGF5XCJcbiAgICAgICAgbmVnYXRpdmVcbiAgICAgICAgc2l6ZT1cIm1cIlxuICAgICAgICBpY29uLW5hbWU9XCJjcm9zcy1zbWFsbFwiXG4gICAgICAgIHNiYi1uYXZpZ2F0aW9uLWNsb3NlXG4gICAgICA+PC9zYmItdHJhbnNwYXJlbnQtYnV0dG9uPlxuICAgIGA7XG5cbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItbmF2aWdhdGlvbl9fY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBpZD1cInNiYi1uYXZpZ2F0aW9uLW92ZXJsYXlcIlxuICAgICAgICAgIEBhbmltYXRpb25lbmQ9JHt0aGlzLl9vbkFuaW1hdGlvbkVuZH1cbiAgICAgICAgICBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uXCJcbiAgICAgICAgICAke3JlZigobmF2aWdhdGlvblJlZj86IEVsZW1lbnQpID0+ICh0aGlzLl9uYXZpZ2F0aW9uID0gbmF2aWdhdGlvblJlZiBhcyBIVE1MRGl2RWxlbWVudCkpfVxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uX19oZWFkZXJcIj4ke2Nsb3NlQnV0dG9ufTwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbmF2aWdhdGlvbl9fd3JhcHBlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uX19jb250ZW50IHNiYi1zY3JvbGxiYXItbmVnYXRpdmVcIj5cbiAgICAgICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c2xvdCBuYW1lPVwibmF2aWdhdGlvbi1zZWN0aW9uXCI+PC9zbG90PlxuICAgICAgPC9kaXY+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLW5hdmlnYXRpb24nOiBTYmJOYXZpZ2F0aW9uRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQ3VDQSxJQUFNLGdCQUFnQjs7Ozs7Ozs7O0lBVVQsOEJBQW9CO21CQUFTLHdCQUF3Qix3QkFBd0I7Ozs7Ozs7Ozs7Y0FBN0UsNkJBQTZCLFlBQWdEOzs7MEJBZXZGLGFBQWEsRUFDYixVQUFVLENBQUE7MENBSVYsV0FBVyxFQUNYLFNBQVMsRUFBRSxXQUFXLDZCQUE2QixDQUFDLENBQUE7MkNBSXBELE9BQU8sQ0FBQTtBQVJSLGdCQUFBLE1BQUEsTUFBQSxxQkFBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLGFBQUE7S0FBQSxNQUFBLFFBQUEsSUFBZ0I7S0FBTyxNQUFBLEtBQUEsVUFBQTtBQUFBLFVBQVAsVUFBTzs7S0FBQTtJQUFBLFVBQUE7SUFBQSxFQUFBLHVCQUFBLDJCQUFBO0FBS3ZCLGdCQUFBLE1BQUEsTUFBQSxxQ0FBQTtJQUFBLE1BQUE7SUFBQSxNQUFBO0lBQUEsUUFBQTtJQUFBLFNBQUE7SUFBQSxRQUFBO0tBQUEsTUFBQSxRQUFBLDZCQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQXVCLE1BQUEsS0FBQSxVQUFBO0FBQUEsVUFBdkIsMEJBQXVCOztLQUFBO0lBQUEsVUFBQTtJQUFBLEVBQUEsdUNBQUEsMkNBQUE7QUFHOUIsZ0JBQUEsTUFBQSxNQUFBLHNDQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsOEJBQUE7S0FBQSxNQUFBLFFBQUEsSUFBaUI7S0FBd0IsTUFBQSxLQUFBLFVBQUE7QUFBQSxVQUF4QiwyQkFBd0I7O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFBQSx3Q0FBQSw0Q0FBQTs7Ozs7Ozs7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
|
|
315
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi5jb21wb25lbnQtQ3FOa0J2RXMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLnNjc3M/aW5saW5lIiwiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi8uLi9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkcHJvcGVydGllcy4uLikge1xuICB0cmFuc2l0aW9uOiB7XG4gICAgZHVyYXRpb246IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gICAgdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1hbmltYXRpb24tZWFzaW5nKTtcbiAgICBwcm9wZXJ0eTogJHByb3BlcnRpZXM7XG4gIH1cbn1cblxuOmhvc3Qge1xuICAtLXNiYi1uYXZpZ2F0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbjogdmFyKFxuICAgIC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLFxuICAgIHZhcigtLXNiYi1hbmltYXRpb24tZHVyYXRpb24tM3gpXG4gICk7XG4gIC0tc2JiLWZvY3VzLW91dGxpbmUtY29sb3I6IHZhcigtLXNiYi1mb2N1cy1vdXRsaW5lLWNvbG9yLWRhcmspO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaW5zZXQ6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWluc2V0KTtcbiAgei1pbmRleDogdmFyKC0tc2JiLW5hdmlnYXRpb24tei1pbmRleCwgdmFyKC0tc2JiLW92ZXJsYXktZGVmYXVsdC16LWluZGV4KSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBsYXJnZSkge1xuICAgIC0tc2JiLW5hdmlnYXRpb24tYW5pbWF0aW9uLWR1cmF0aW9uOiB2YXIoXG4gICAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICAgIHZhcigtLXNiYi1hbmltYXRpb24tZHVyYXRpb24tNngpXG4gICAgKTtcbiAgICAtLXNiYi1uYXZpZ2F0aW9uLXdpZHRoOiBjYWxjKDEwMCUgKyB2YXIoLS1zYmItbGF5b3V0LWJhc2Utb2Zmc2V0LXJlc3BvbnNpdmUpKTtcbiAgfVxufVxuXG46aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5pbmcpLCA6c3RhdGUoc3RhdGUtb3BlbmVkKSwgOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuOmhvc3QoOnN0YXRlKHN0YXRlLW9wZW5lZCkpIHtcbiAgLS1zYmItbmF2aWdhdGlvbi1hbmltYXRpb24tZWFzaW5nOiBlYXNlLW91dDtcbn1cblxuOmhvc3QoOmlzKDpzdGF0ZShzdGF0ZS1vcGVuZWQpLCA6c3RhdGUoc3RhdGUtb3BlbmluZykpKSB7XG4gIC0tc2JiLW5hdmlnYXRpb24tYmFja2Ryb3AtdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgLS1zYmItbmF2aWdhdGlvbi1iYWNrZHJvcC1wb2ludGVyLWV2ZW50czogYWxsO1xufVxuXG46aG9zdCg6bm90KDpzdGF0ZShzdGF0ZS1jbG9zZWQpKSkge1xuICAtLXNiYi1uYXZpZ2F0aW9uLWluc2V0OiAwO1xuICAtLXNiYi1uYXZpZ2F0aW9uLXRyYW5zbGF0ZTogbm9uZTtcbn1cblxuOmhvc3QoOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSB7XG4gIC0tc2JiLW5hdmlnYXRpb24tYmFja2Ryb3AtYW5pbWF0aW9uLW5hbWU6IGJhY2tkcm9wLWNsb3NlO1xufVxuXG46aG9zdCg6c3RhdGUoaGFzLW9wZW4tbmF2aWdhdGlvbi1zZWN0aW9uKSkge1xuICAtLXNiYi1uYXZpZ2F0aW9uLWNvbnRlbnQtdHJhbnNsYXRlOiAtMTAwJSAwO1xuXG4gIEBpbmNsdWRlIHNiYi5tcSgkZnJvbTogJ2xhcmdlJykge1xuICAgIC0tc2JiLW5hdmlnYXRpb24tZXhwYW5kZWQtd2lkdGg6IDEwMGR2dztcbiAgICAtLXNiYi1uYXZpZ2F0aW9uLWNvbnRlbnQtdHJhbnNsYXRlOiAwO1xuICB9XG59XG5cbjpob3N0KDpzdGF0ZShyZXNpemUtZGlzYWJsZS1hbmltYXRpb24pKSB7XG4gIEBpbmNsdWRlIHNiYi5kaXNhYmxlLWFuaW1hdGlvbjtcbn1cblxuLnNiYi1uYXZpZ2F0aW9uX19jb250YWluZXIge1xuICBAaW5jbHVkZSBzYmIuZ3JpZC1iYXNlO1xuXG4gIHBhZGRpbmctaW5saW5lOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNsYXRlOiB2YXIoLS1zYmItbmF2aWdhdGlvbi10cmFuc2xhdGUpO1xuXG4gIEBpbmNsdWRlIHNiYi5tcSgkZnJvbTogbGFyZ2UpIHtcbiAgICBwYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLWxheW91dC1iYXNlLW9mZnNldC1yZXNwb25zaXZlKTtcblxuICAgIC8vIE5hdmlnYXRpb24gYmFja2Ryb3AgKG5vdCB2aXNpYmxlIG9uIG1vYmlsZSlcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbih2aXNpYmlsaXR5KTtcblxuICAgICAgYW5pbWF0aW9uOiB7XG4gICAgICAgIG5hbWU6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWJhY2tkcm9wLWFuaW1hdGlvbi1uYW1lKTtcbiAgICAgICAgZHVyYXRpb246IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gICAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLW5hdmlnYXRpb24tYW5pbWF0aW9uLWVhc2luZyk7XG4gICAgICB9XG5cbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgdmlzaWJpbGl0eTogdmFyKC0tc2JiLW5hdmlnYXRpb24tYmFja2Ryb3AtdmlzaWJpbGl0eSwgaGlkZGVuKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1iYWNrZHJvcC1wb2ludGVyLWV2ZW50cywgbm9uZSk7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBpbnNldDogdmFyKC0tc2JiLW5hdmlnYXRpb24taW5zZXQpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLW5hdmlnYXRpb24tYmFja2Ryb3AtY29sb3IpO1xuICAgIH1cbiAgfVxufVxuXG4uc2JiLW5hdmlnYXRpb24ge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHdpZHRoKTtcblxuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogdmFyKC0tc2JiLW5hdmlnYXRpb24td2lkdGgpO1xuICBncmlkLWNvbHVtbjogdmFyKC0tc2JiLW5hdmlnYXRpb24tZ3JpZC1jb2x1bW4pO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiB2YXIoLS1zYmItbmF2aWdhdGlvbi1pbmxpbmUtc3RhcnQsIDApO1xuICBpbnNldC1ibG9jay1zdGFydDogMDtcbiAgYm9yZGVyOiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItbmF2aWdhdGlvbi1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tc2JiLW5hdmlnYXRpb24tY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAmOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24od2lkdGgpO1xuXG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1leHBhbmRlZC13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zYmItbmF2aWdhdGlvbi1oZWlnaHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWJhY2tncm91bmQtY29sb3IpO1xuICB9XG5cbiAgOmhvc3QoOmlzKDpzdGF0ZShzdGF0ZS1vcGVuaW5nKSwgOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cbiAgICBhbmltYXRpb246IHtcbiAgICAgIG5hbWU6IG9wZW47XG4gICAgICBkdXJhdGlvbjogdmFyKC0tc2JiLW5hdmlnYXRpb24tYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLW5hdmlnYXRpb24tYW5pbWF0aW9uLWVhc2luZyk7XG4gICAgfVxuICB9XG5cbiAgOmhvc3QoOnN0YXRlKHN0YXRlLWNsb3NpbmcpKSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBhbmltYXRpb24tbmFtZTogY2xvc2U7XG4gIH1cblxuICBAaW5jbHVkZSBzYmIuaWYtZm9yY2VkLWNvbG9ycyB7XG4gICAgb3V0bGluZTogdmFyKC0tc2JiLWJvcmRlci13aWR0aC0xeCkgc29saWQgQ2FudmFzVGV4dDtcbiAgfVxufVxuXG4uc2JiLW5hdmlnYXRpb25fX3dyYXBwZXIge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uc2JiLW5hdmlnYXRpb25fX2hlYWRlciB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24od2lkdGgpO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IHZhcigtLXNiYi1uYXZpZ2F0aW9uLWV4cGFuZGVkLXdpZHRoKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBhZGRpbmc6IHZhcigtLXNiYi1zcGFjaW5nLXJlc3BvbnNpdmUteHMpO1xuICB6LWluZGV4OiBjYWxjKHZhcigtLXNiYi1uYXZpZ2F0aW9uLXotaW5kZXgsIHZhcigtLXNiYi1vdmVybGF5LWRlZmF1bHQtei1pbmRleCkpICsgMSk7XG59XG5cbi5zYmItbmF2aWdhdGlvbl9fY2xvc2Uge1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xufVxuXG4uc2JiLW5hdmlnYXRpb25fX2NvbnRlbnQge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zbGF0ZSk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1jb250ZW50LWdhcCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiB2YXIoLS1zYmItbmF2aWdhdGlvbi1oZWlnaHQpO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLW5hdmlnYXRpb24tcGFkZGluZy1pbmxpbmUpO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zYmItbmF2aWdhdGlvbi1wYWRkaW5nLWJsb2NrLXN0YXJ0KSB2YXIoLS1zYmItbmF2aWdhdGlvbi1wYWRkaW5nLWJsb2NrLWVuZCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHRyYW5zbGF0ZTogdmFyKC0tc2JiLW5hdmlnYXRpb24tY29udGVudC10cmFuc2xhdGUpO1xufVxuXG46OnNsb3R0ZWQoOmZpcnN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc2JiLW5hdmlnYXRpb24tbGlzdC1tYXJnaW4tYmxvY2stc3RhcnQpO1xufVxuXG5Aa2V5ZnJhbWVzIG9wZW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2xhdGU6IC0xMDAlIDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNsYXRlOiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgY2xvc2Uge1xuICBmcm9tIHtcbiAgICB0cmFuc2xhdGU6IDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNsYXRlOiAtMTAwJSAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYmFja2Ryb3Atb3BlbiB7XG4gIGZyb20ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYmFja2Ryb3AtY2xvc2Uge1xuICB0byB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbiIsImltcG9ydCB7IFJlc2l6ZUNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL3Jlc2l6ZS1jb250cm9sbGVyLmpzJztcbmltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIGlzU2VydmVyLFxuICB0eXBlIFByb3BlcnR5RGVjbGFyYXRpb24sXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG4gIHVuc2FmZUNTUyxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IHJlZiB9IGZyb20gJ2xpdC9kaXJlY3RpdmVzL3JlZi5qcyc7XG5cbmltcG9ydCB7IFNiYlRyYW5zcGFyZW50QnV0dG9uRWxlbWVudCB9IGZyb20gJy4uLy4uL2J1dHRvbi5wdXJlLnRzJztcbmltcG9ydCB7XG4gIGZvcmNlVHlwZSxcbiAgaTE4bkNsb3NlTmF2aWdhdGlvbixcbiAgaWRSZWZlcmVuY2UsXG4gIGlzRXZlbnRPbkVsZW1lbnQsXG4gIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uLFxuICByZW1vdmVBcmlhT3ZlcmxheVRyaWdnZXJQcm9wZXJ0aWVzLFxuICB0eXBlIFNiYkVsZW1lbnRUeXBlLFxuICBTYmJFc2NhcGFibGVPdmVybGF5Q29udHJvbGxlcixcbiAgU2JiRm9jdXNUcmFwQ29udHJvbGxlcixcbiAgU2JiSW5lcnRDb250cm9sbGVyLFxuICBTYmJMYW5ndWFnZUNvbnRyb2xsZXIsXG4gIFNiYk9wZW5DbG9zZUJhc2VFbGVtZW50LFxuICBTYmJTY3JvbGxIYW5kbGVyLFxuICBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbixcbiAgc2Nyb2xsYmFyU3R5bGVzLFxuICBzZXRBcmlhT3ZlcmxheVRyaWdnZXJQcm9wZXJ0aWVzLFxufSBmcm9tICcuLi8uLi9jb3JlLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uLWJ1dHRvbi9uYXZpZ2F0aW9uLWJ1dHRvbi5jb21wb25lbnQudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJOYXZpZ2F0aW9uTGlua0VsZW1lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uLWxpbmsvbmF2aWdhdGlvbi1saW5rLmNvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFNiYk5hdmlnYXRpb25TZWN0aW9uRWxlbWVudCB9IGZyb20gJy4uL25hdmlnYXRpb24tc2VjdGlvbi9uYXZpZ2F0aW9uLXNlY3Rpb24uY29tcG9uZW50LnRzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vbmF2aWdhdGlvbi5zY3NzP2lubGluZSc7XG5cbmNvbnN0IERFQk9VTkNFX1RJTUUgPSAxNTA7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBuYXZpZ2F0aW9uIG1lbnUsIHdyYXBwaW5nIG9uZSBvciBtb3JlIGBzYmItbmF2aWdhdGlvbi0qYCBjb21wb25lbnRzLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGBzYmItbmF2aWdhdGlvbi1idXR0b25gL2BzYmItbmF2aWdhdGlvbi1saW5rYCBlbGVtZW50cyBpbnRvIHRoZSBzYmItbmF2aWdhdGlvbiBtZW51LlxuICogQGNzc3Byb3AgWy0tc2JiLW5hdmlnYXRpb24tei1pbmRleD12YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpXSAtIFRvIHNwZWNpZnkgYSBjdXN0b20gc3RhY2sgb3JkZXIsXG4gKiB0aGUgYHotaW5kZXhgIGNhbiBiZSBvdmVycmlkZGVuIGJ5IGRlZmluaW5nIHRoaXMgQ1NTIHZhcmlhYmxlLiBUaGUgZGVmYXVsdCBgei1pbmRleGAgb2YgdGhlXG4gKiBjb21wb25lbnQgaXMgc2V0IHRvIGB2YXIoLS1zYmItb3ZlcmxheS1kZWZhdWx0LXotaW5kZXgpYCB3aXRoIGEgdmFsdWUgb2YgYDEwMDBgLlxuICovXG5leHBvcnQgY2xhc3MgU2JiTmF2aWdhdGlvbkVsZW1lbnQgZXh0ZW5kcyBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbihTYmJPcGVuQ2xvc2VCYXNlRWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHJlYWRvbmx5IGVsZW1lbnROYW1lOiBzdHJpbmcgPSAnc2JiLW5hdmlnYXRpb24nO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIGVsZW1lbnREZXBlbmRlbmNpZXM6IFNiYkVsZW1lbnRUeXBlW10gPSBbU2JiVHJhbnNwYXJlbnRCdXR0b25FbGVtZW50XTtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSByb2xlID0gJ25hdmlnYXRpb24nO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbc2Nyb2xsYmFyU3R5bGVzLCB1bnNhZmVDU1Moc3R5bGUpXTtcblxuICAvKipcbiAgICogVGhlIGVsZW1lbnQgdGhhdCB3aWxsIHRyaWdnZXIgdGhlIG5hdmlnYXRpb24uXG4gICAqXG4gICAqIEZvciBhdHRyaWJ1dGUgdXNhZ2UsIHByb3ZpZGUgYW4gaWQgcmVmZXJlbmNlLlxuICAgKi9cbiAgQGlkUmVmZXJlbmNlKClcbiAgQHByb3BlcnR5KClcbiAgcHVibGljIGFjY2Vzc29yIHRyaWdnZXI6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgYXMgYXJpYS1sYWJlbCB0byB0aGUgY2xvc2UgYnV0dG9uIGVsZW1lbnQuICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWNsb3NlLWxhYmVsJyB9KVxuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eUNsb3NlTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBXaGV0aGVyIGEgbmF2aWdhdGlvbiBzZWN0aW9uIGlzIGRpc3BsYXllZC4gKi9cbiAgQHN0YXRlKCkgcHJpdmF0ZSBhY2Nlc3NvciBfYWN0aXZlTmF2aWdhdGlvblNlY3Rpb246IFNiYk5hdmlnYXRpb25TZWN0aW9uRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBSZXR1cm5zIHRoZSBhY3RpdmUgbmF2aWdhdGlvbiBzZWN0aW9uIGVsZW1lbnQuICovXG4gIHB1YmxpYyBnZXQgYWN0aXZlTmF2aWdhdGlvblNlY3Rpb24oKTogU2JiTmF2aWdhdGlvblNlY3Rpb25FbGVtZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZU5hdmlnYXRpb25TZWN0aW9uO1xuICB9XG5cbiAgLyoqIFJldHVybnMgdGhlIGNsb3NlIGJ1dHRvbiBlbGVtZW50LiAqL1xuICBwdWJsaWMgZ2V0IGNsb3NlQnV0dG9uKCk6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcignI3NiYi1uYXZpZ2F0aW9uLWNsb3NlLWJ1dHRvbicpID8/IG51bGw7XG4gIH1cblxuICAvKiogUmV0dXJucyB0aGUgbmF2aWdhdGlvbiBjb250ZW50IGVsZW1lbnQuICovXG4gIHB1YmxpYyBnZXQgbmF2aWdhdGlvbkNvbnRlbnQoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKCcuc2JiLW5hdmlnYXRpb25fX2NvbnRlbnQnKSA/PyBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBfbmF2aWdhdGlvbiE6IEhUTUxEaXZFbGVtZW50O1xuICBwcml2YXRlIF90cmlnZ2VyRWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfdHJpZ2dlckFib3J0Q29udHJvbGxlciE6IEFib3J0Q29udHJvbGxlcjtcbiAgcHJpdmF0ZSBfbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9pbmVydENvbnRyb2xsZXIgPSBuZXcgU2JiSW5lcnRDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9lc2NhcGFibGVPdmVybGF5Q29udHJvbGxlciA9IG5ldyBTYmJFc2NhcGFibGVPdmVybGF5Q29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfZm9jdXNUcmFwQ29udHJvbGxlciA9IG5ldyBTYmJGb2N1c1RyYXBDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9zY3JvbGxIYW5kbGVyID0gbmV3IFNiYlNjcm9sbEhhbmRsZXIoKTtcbiAgcHJpdmF0ZSBfaXNQb2ludGVyRG93bkV2ZW50T25OYXZpZ2F0aW9uOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgX3Jlc2l6ZU9ic2VydmVyVGltZW91dDogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfbmF2aWdhdGlvblJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZUNvbnRyb2xsZXIodGhpcywge1xuICAgIHNraXBJbml0aWFsOiB0cnVlLFxuICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLl9vbk5hdmlnYXRpb25SZXNpemUoKSxcbiAgfSk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2NsaWNrJywgKGV2ZW50KSA9PiB0aGlzLl9oYW5kbGVOYXZpZ2F0aW9uQ2xvc2UoZXZlbnQpKTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LigncG9pbnRlcnVwJywgKGV2ZW50KSA9PiB0aGlzLl9jbG9zZU9uQmFja2Ryb3BDbGljayhldmVudCkpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdwb2ludGVyZG93bicsIChldmVudCkgPT4gdGhpcy5fcG9pbnRlckRvd25MaXN0ZW5lcihldmVudCkpO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKFxuICAgICAgJ8m1bmF2aWdhdGlvbnNlY3Rpb25vcGVuaW5nJyxcbiAgICAgIChldmVudCkgPT4ge1xuICAgICAgICB0aGlzLl9hY3RpdmVOYXZpZ2F0aW9uU2VjdGlvbiA9IGV2ZW50LnRhcmdldCBhcyBTYmJOYXZpZ2F0aW9uU2VjdGlvbkVsZW1lbnQ7XG4gICAgICAgIHRoaXMudG9nZ2xlU3RhdGUoJ2hhcy1vcGVuLW5hdmlnYXRpb24tc2VjdGlvbicsICEhdGhpcy5fYWN0aXZlTmF2aWdhdGlvblNlY3Rpb24pO1xuICAgICAgfSxcbiAgICAgIHsgY2FwdHVyZTogdHJ1ZSB9LFxuICAgICk7XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oXG4gICAgICAnybVuYXZpZ2F0aW9uc2VjdGlvbmNsb3NpbmcnLFxuICAgICAgKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmICh0aGlzLl9hY3RpdmVOYXZpZ2F0aW9uU2VjdGlvbiA9PT0gZXZlbnQudGFyZ2V0KSB7XG4gICAgICAgICAgdGhpcy5fYWN0aXZlTmF2aWdhdGlvblNlY3Rpb24gPSBudWxsO1xuICAgICAgICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoJ2hhcy1vcGVuLW5hdmlnYXRpb24tc2VjdGlvbicpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgeyBjYXB0dXJlOiB0cnVlIH0sXG4gICAgKTtcbiAgfVxuXG4gIC8qKiBPcGVucyB0aGUgbmF2aWdhdGlvbi4gKi9cbiAgcHVibGljIG9wZW4oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgIT09ICdjbG9zZWQnIHx8ICF0aGlzLmhhc1VwZGF0ZWQgfHwgIXRoaXMuZGlzcGF0Y2hCZWZvcmVPcGVuRXZlbnQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc2hvd1BvcG92ZXI/LigpO1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmluZyc7XG4gICAgdGhpcy5fY2hlY2tBY3RpdmVBY3Rpb25zKCk7XG4gICAgdGhpcy5fY2hlY2tBY3RpdmVTZWN0aW9uKCk7XG4gICAgdGhpcy5zdGFydFVwZGF0ZSgpO1xuXG4gICAgLy8gRGlzYWJsZSBzY3JvbGxpbmcgZm9yIGNvbnRlbnQgYmVsb3cgdGhlIG5hdmlnYXRpb25cbiAgICB0aGlzLl9zY3JvbGxIYW5kbGVyLmRpc2FibGVTY3JvbGwoKTtcbiAgICBpZiAodGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LmFyaWFFeHBhbmRlZCA9ICd0cnVlJztcbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZGlyZWN0bHkgc2V0IHRoZSBgb3BlbmVkYCBzdGF0ZS5cbiAgICBpZiAodGhpcy5faXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKSkge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NoZWNrQWN0aXZlU2VjdGlvbigpOiB2b2lkIHtcbiAgICBjb25zdCBhY3RpdmVBY3Rpb24gPSB0aGlzLnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAnc2JiLW5hdmlnYXRpb24tYnV0dG9uLnNiYi1hY3RpdmUnLFxuICAgICkgYXMgU2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQ7XG4gICAgYWN0aXZlQWN0aW9uPy5jb25uZWN0ZWRTZWN0aW9uPy5vcGVuKCk7XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0FjdGl2ZUFjdGlvbnMoKTogdm9pZCB7XG4gICAgY29uc3QgYWN0aXZlQWN0aW9ucyA9IEFycmF5LmZyb20oXG4gICAgICB0aGlzLnF1ZXJ5U2VsZWN0b3JBbGwoJzppcyhzYmItbmF2aWdhdGlvbi1idXR0b24sIHNiYi1uYXZpZ2F0aW9uLWxpbmspLnNiYi1hY3RpdmUnKSxcbiAgICApIGFzIChTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudCB8IFNiYk5hdmlnYXRpb25MaW5rRWxlbWVudClbXTtcbiAgICBhY3RpdmVBY3Rpb25zPy5mb3JFYWNoKChhY3Rpb24pID0+IGFjdGlvbi5tYXJrZXI/LnNlbGVjdChhY3Rpb24pKTtcbiAgfVxuXG4gIC8qKiBDbG9zZXMgdGhlIG5hdmlnYXRpb24uICovXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdGF0ZSAhPT0gJ29wZW5lZCcgfHwgIXRoaXMuZGlzcGF0Y2hCZWZvcmVDbG9zZUV2ZW50KCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnN0YXRlID0gJ2Nsb3NpbmcnO1xuICAgIHRoaXMuc3RhcnRVcGRhdGUoKTtcbiAgICBpZiAodGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LmFyaWFFeHBhbmRlZCA9ICdmYWxzZSc7XG4gICAgfVxuXG4gICAgLy8gSWYgdGhlIGFuaW1hdGlvbiBkdXJhdGlvbiBpcyB6ZXJvLCB0aGUgYW5pbWF0aW9uZW5kIGV2ZW50IGlzIG5vdCBhbHdheXMgZmlyZWQgcmVsaWFibHkuXG4gICAgLy8gSW4gdGhpcyBjYXNlIHdlIGRpcmVjdGx5IHNldCB0aGUgYGNsb3NlZGAgc3RhdGUuXG4gICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24odGhpcywgJy0tc2JiLW5hdmlnYXRpb24tYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVDbG9zaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUgPSAnY2xvc2VkJztcbiAgICB0aGlzLmhpZGVQb3BvdmVyPy4oKTtcbiAgICB0aGlzLm5hdmlnYXRpb25Db250ZW50Py5zY3JvbGxUbygwLCAwKTtcbiAgICB0aGlzLl9pbmVydENvbnRyb2xsZXIuZGVhY3RpdmF0ZSgpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50Py5mb2N1cygpO1xuICAgIHRoaXMuX2VzY2FwYWJsZU92ZXJsYXlDb250cm9sbGVyLmRpc2Nvbm5lY3QoKTtcbiAgICB0aGlzLmRpc3BhdGNoQ2xvc2VFdmVudCgpO1xuICAgIHRoaXMuX25hdmlnYXRpb25SZXNpemVPYnNlcnZlci51bm9ic2VydmUodGhpcyk7XG4gICAgdGhpcy5fcmVzZXRNYXJrZXJzKCk7XG4gICAgdGhpcy5fZm9jdXNUcmFwQ29udHJvbGxlci5lbmFibGVkID0gZmFsc2U7XG5cbiAgICAvLyBFbmFibGUgc2Nyb2xsaW5nIGZvciBjb250ZW50IGJlbG93IHRoZSBuYXZpZ2F0aW9uXG4gICAgdGhpcy5fc2Nyb2xsSGFuZGxlci5lbmFibGVTY3JvbGwoKTtcbiAgICB0aGlzLmNvbXBsZXRlVXBkYXRlKCk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVPcGVuaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmVkJztcbiAgICB0aGlzLl9uYXZpZ2F0aW9uUmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzKTtcbiAgICB0aGlzLl9pbmVydENvbnRyb2xsZXIuYWN0aXZhdGUoKTtcbiAgICB0aGlzLl9lc2NhcGFibGVPdmVybGF5Q29udHJvbGxlci5jb25uZWN0KCk7XG4gICAgdGhpcy5fZm9jdXNUcmFwQ29udHJvbGxlci5mb2N1c0luaXRpYWxFbGVtZW50KCk7XG4gICAgdGhpcy5fZm9jdXNUcmFwQ29udHJvbGxlci5lbmFibGVkID0gdHJ1ZTtcbiAgICB0aGlzLmNvbXBsZXRlVXBkYXRlKCk7XG4gICAgdGhpcy5kaXNwYXRjaE9wZW5FdmVudCgpO1xuICB9XG5cbiAgLy8gUmVtb3ZlcyB0cmlnZ2VyIGNsaWNrIGxpc3RlbmVyIG9uIHRyaWdnZXIgY2hhbmdlLlxuICAvLyBDaGVjayBpZiB0aGUgdHJpZ2dlciBpcyB2YWxpZCBhbmQgYXR0YWNoIGNsaWNrIGV2ZW50IGxpc3RlbmVycy5cbiAgcHJpdmF0ZSBfY29uZmlndXJlVHJpZ2dlcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50cmlnZ2VyID09PSB0aGlzLl90cmlnZ2VyRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3RyaWdnZXJBYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgcmVtb3ZlQXJpYU92ZXJsYXlUcmlnZ2VyUHJvcGVydGllcyh0aGlzLl90cmlnZ2VyRWxlbWVudCk7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQgPSB0aGlzLnRyaWdnZXI7XG5cbiAgICBpZiAoIXRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2V0QXJpYU92ZXJsYXlUcmlnZ2VyUHJvcGVydGllcyh0aGlzLCB0aGlzLl90cmlnZ2VyRWxlbWVudCwgJ21lbnUnLCB0aGlzLnN0YXRlKTtcbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gdGhpcy5vcGVuKCksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG4gIH1cblxuICAvLyBJbiByYXJlIGNhc2VzIGl0IGNhbiBiZSB0aGF0IHRoZSBhbmltYXRpb25FbmQgZXZlbnQgaXMgdHJpZ2dlcmVkIHR3aWNlLlxuICAvLyBUbyBhdm9pZCBlbnRlcmluZyBhIGNvcnJ1cHQgc3RhdGUsIGV4aXQgd2hlbiBzdGF0ZSBpcyBub3QgZXhwZWN0ZWQuXG4gIHByaXZhdGUgX29uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnb3BlbicgJiYgdGhpcy5zdGF0ZSA9PT0gJ29wZW5pbmcnKSB7XG4gICAgICB0aGlzLl9oYW5kbGVPcGVuaW5nKCk7XG4gICAgfSBlbHNlIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnY2xvc2UnICYmIHRoaXMuc3RhdGUgPT09ICdjbG9zaW5nJykge1xuICAgICAgdGhpcy5faGFuZGxlQ2xvc2luZygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3Jlc2V0TWFya2VycygpOiB2b2lkIHtcbiAgICBjb25zdCBhY3RpdmVBY3Rpb25zID0gQXJyYXkuZnJvbShcbiAgICAgIHRoaXMucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgJzppcyhzYmItbmF2aWdhdGlvbi1idXR0b24sIHNiYi1uYXZpZ2F0aW9uLWxpbmspOnN0YXRlKGFjdGlvbi1hY3RpdmUpOm5vdCguc2JiLWFjdGl2ZSknLFxuICAgICAgKSxcbiAgICApIGFzIChTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudCB8IFNiYk5hdmlnYXRpb25MaW5rRWxlbWVudClbXTtcbiAgICBhY3RpdmVBY3Rpb25zPy5mb3JFYWNoKChhY3Rpb24pID0+IGFjdGlvbi5tYXJrZXI/LnJlc2V0KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlTmF2aWdhdGlvbkNsb3NlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbXBvc2VkUGF0aEVsZW1lbnRzID0gZXZlbnRcbiAgICAgIC5jb21wb3NlZFBhdGgoKVxuICAgICAgLmZpbHRlcigoZWwpID0+IGVsIGluc3RhbmNlb2Ygd2luZG93LkhUTUxFbGVtZW50KTtcbiAgICBpZiAoY29tcG9zZWRQYXRoRWxlbWVudHMuc29tZSgoZWwpID0+IHRoaXMuX2lzQ2xvc2VFbGVtZW50KGVsIGFzIEhUTUxFbGVtZW50KSkpIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pc0Nsb3NlRWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICBlbGVtZW50Lm5vZGVOYW1lID09PSAnQScgfHxcbiAgICAgIChlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnc2JiLW5hdmlnYXRpb24tY2xvc2UnKSAmJiAhZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykpXG4gICAgKTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBwb2ludGVyZG93biBldmVudCB0YXJnZXQgaXMgdHJpZ2dlcmVkIG9uIHRoZSBuYXZpZ2F0aW9uLlxuICBwcml2YXRlIF9wb2ludGVyRG93bkxpc3RlbmVyID0gKGV2ZW50OiBQb2ludGVyRXZlbnQpOiB2b2lkID0+IHtcbiAgICB0aGlzLl9pc1BvaW50ZXJEb3duRXZlbnRPbk5hdmlnYXRpb24gPVxuICAgICAgaXNFdmVudE9uRWxlbWVudCh0aGlzLl9uYXZpZ2F0aW9uLCBldmVudCkgfHxcbiAgICAgIGlzRXZlbnRPbkVsZW1lbnQoXG4gICAgICAgIHRoaXMucXVlcnlTZWxlY3Rvcignc2JiLW5hdmlnYXRpb24tc2VjdGlvbjpzdGF0ZShzdGF0ZS1vcGVuZWQpJyk/LnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAgICAgJ25hdi5zYmItbmF2aWdhdGlvbi1zZWN0aW9uJyxcbiAgICAgICAgKSBhcyBIVE1MRWxlbWVudCxcbiAgICAgICAgZXZlbnQsXG4gICAgICApO1xuICB9O1xuXG4gIC8vIENsb3NlIG5hdmlnYXRpb24gb24gYmFja2Ryb3AgY2xpY2suXG4gIHByaXZhdGUgX2Nsb3NlT25CYWNrZHJvcENsaWNrID0gKGV2ZW50OiBQb2ludGVyRXZlbnQpOiB2b2lkID0+IHtcbiAgICBpZiAoIXRoaXMuX2lzUG9pbnRlckRvd25FdmVudE9uTmF2aWdhdGlvbiAmJiAhaXNFdmVudE9uRWxlbWVudCh0aGlzLl9uYXZpZ2F0aW9uLCBldmVudCkpIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH07XG5cbiAgcHJpdmF0ZSBfb25OYXZpZ2F0aW9uUmVzaXplKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0YXRlICE9PSAnb3BlbmVkJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9yZXNpemVPYnNlcnZlclRpbWVvdXQpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9yZXNpemVPYnNlcnZlclRpbWVvdXQpO1xuICAgIH1cblxuICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5hZGQoJ3Jlc2l6ZS1kaXNhYmxlLWFuaW1hdGlvbicpO1xuXG4gICAgLy8gRGlzYWJsZSB0aGUgYW5pbWF0aW9uIHdoZW4gcmVzaXppbmcgdGhlIG5hdmlnYXRpb24gdG8gYXZvaWQgc3RyYW5nZSBoZWlnaHQgdHJhbnNpdGlvbiBlZmZlY3RzLlxuICAgIHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCA9IHNldFRpbWVvdXQoXG4gICAgICAoKSA9PiB0aGlzLmludGVybmFscy5zdGF0ZXMuZGVsZXRlKCdyZXNpemUtZGlzYWJsZS1hbmltYXRpb24nKSxcbiAgICAgIERFQk9VTkNFX1RJTUUsXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMucG9wb3ZlciA9ICdtYW51YWwnO1xuICAgIGlmICh0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl9zY3JvbGxIYW5kbGVyLmVuYWJsZVNjcm9sbCgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHJlcXVlc3RVcGRhdGUoXG4gICAgbmFtZT86IFByb3BlcnR5S2V5LFxuICAgIG9sZFZhbHVlPzogdW5rbm93bixcbiAgICBvcHRpb25zPzogUHJvcGVydHlEZWNsYXJhdGlvbixcbiAgKTogdm9pZCB7XG4gICAgc3VwZXIucmVxdWVzdFVwZGF0ZShuYW1lLCBvbGRWYWx1ZSwgb3B0aW9ucyk7XG5cbiAgICBpZiAoIWlzU2VydmVyICYmICghbmFtZSB8fCBuYW1lID09PSAndHJpZ2dlcicpICYmIHRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgdGhpcy5fY29uZmlndXJlVHJpZ2dlcigpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICB0aGlzLl9jb25maWd1cmVUcmlnZ2VyKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICBjb25zdCBjbG9zZUJ1dHRvbiA9IGh0bWxgXG4gICAgICA8c2JiLXRyYW5zcGFyZW50LWJ1dHRvblxuICAgICAgICBpZD1cInNiYi1uYXZpZ2F0aW9uLWNsb3NlLWJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwic2JiLW5hdmlnYXRpb25fX2Nsb3NlXCJcbiAgICAgICAgYXJpYS1sYWJlbD0ke3RoaXMuYWNjZXNzaWJpbGl0eUNsb3NlTGFiZWwgfHwgaTE4bkNsb3NlTmF2aWdhdGlvblt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgYXJpYS1jb250cm9scz1cInNiYi1uYXZpZ2F0aW9uLW92ZXJsYXlcIlxuICAgICAgICBuZWdhdGl2ZVxuICAgICAgICBzaXplPVwibVwiXG4gICAgICAgIGljb24tbmFtZT1cImNyb3NzLXNtYWxsXCJcbiAgICAgICAgc2JiLW5hdmlnYXRpb24tY2xvc2VcbiAgICAgID48L3NiYi10cmFuc3BhcmVudC1idXR0b24+XG4gICAgYDtcblxuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uX19jb250YWluZXJcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGlkPVwic2JiLW5hdmlnYXRpb24tb3ZlcmxheVwiXG4gICAgICAgICAgQGFuaW1hdGlvbmVuZD0ke3RoaXMuX29uQW5pbWF0aW9uRW5kfVxuICAgICAgICAgIGNsYXNzPVwic2JiLW5hdmlnYXRpb25cIlxuICAgICAgICAgICR7cmVmKChuYXZpZ2F0aW9uUmVmPzogRWxlbWVudCkgPT4gKHRoaXMuX25hdmlnYXRpb24gPSBuYXZpZ2F0aW9uUmVmIGFzIEhUTUxEaXZFbGVtZW50KSl9XG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLW5hdmlnYXRpb25fX2hlYWRlclwiPiR7Y2xvc2VCdXR0b259PC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uX193cmFwcGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLW5hdmlnYXRpb25fX2NvbnRlbnQgc2JiLXNjcm9sbGJhci1uZWdhdGl2ZVwiPlxuICAgICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzbG90IG5hbWU9XCJuYXZpZ2F0aW9uLXNlY3Rpb25cIj48L3Nsb3Q+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmIt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
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { t as SbbNavigationActionCommonElementMixin } from "./navigation-action-common-
|
|
1
|
+
import { t as SbbNavigationActionCommonElementMixin } from "./navigation-action-common-CGy4K8q-.js";
|
|
2
2
|
import { SbbNavigationButtonElement } from "./navigation/navigation-button/navigation-button.component.js";
|
|
3
3
|
import { SbbNavigationLinkElement } from "./navigation/navigation-link/navigation-link.component.js";
|
|
4
|
-
import { t as SbbNavigationListElement } from "./navigation-list.component-
|
|
5
|
-
import { t as SbbNavigationMarkerElement } from "./navigation-marker.component-
|
|
6
|
-
import { t as SbbNavigationSectionElement } from "./navigation-section.component-
|
|
7
|
-
import { t as SbbNavigationElement } from "./navigation.component-
|
|
4
|
+
import { t as SbbNavigationListElement } from "./navigation-list.component-DrdbtDRs.js";
|
|
5
|
+
import { t as SbbNavigationMarkerElement } from "./navigation-marker.component-fB05cjtE.js";
|
|
6
|
+
import { t as SbbNavigationSectionElement } from "./navigation-section.component-iaypc6yQ.js";
|
|
7
|
+
import { t as SbbNavigationElement } from "./navigation.component-CqNkBvEs.js";
|
|
8
8
|
import "./navigation.pure.js";
|
|
9
9
|
//#region src/elements/navigation.ts
|
|
10
10
|
/** @entrypoint */
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { t as SbbNavigationActionCommonElementMixin } from "./navigation-action-common-
|
|
1
|
+
import { t as SbbNavigationActionCommonElementMixin } from "./navigation-action-common-CGy4K8q-.js";
|
|
2
2
|
import { SbbNavigationButtonElement } from "./navigation/navigation-button/navigation-button.component.js";
|
|
3
3
|
import { SbbNavigationLinkElement } from "./navigation/navigation-link/navigation-link.component.js";
|
|
4
|
-
import { t as SbbNavigationListElement } from "./navigation-list.component-
|
|
5
|
-
import { t as SbbNavigationMarkerElement } from "./navigation-marker.component-
|
|
6
|
-
import { t as SbbNavigationSectionElement } from "./navigation-section.component-
|
|
7
|
-
import { t as SbbNavigationElement } from "./navigation.component-
|
|
4
|
+
import { t as SbbNavigationListElement } from "./navigation-list.component-DrdbtDRs.js";
|
|
5
|
+
import { t as SbbNavigationMarkerElement } from "./navigation-marker.component-fB05cjtE.js";
|
|
6
|
+
import { t as SbbNavigationSectionElement } from "./navigation-section.component-iaypc6yQ.js";
|
|
7
|
+
import { t as SbbNavigationElement } from "./navigation.component-CqNkBvEs.js";
|
|
8
8
|
export { SbbNavigationActionCommonElementMixin, SbbNavigationButtonElement, SbbNavigationElement, SbbNavigationLinkElement, SbbNavigationListElement, SbbNavigationMarkerElement, SbbNavigationSectionElement };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/notification/notification.component.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,cAAc,EAGnB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,KAAK,CAAC;AAIb,OAAO,
|
|
1
|
+
{"version":3,"file":"notification.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/notification/notification.component.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,cAAc,EAGnB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,KAAK,CAAC;AAIb,OAAO,EAIL,UAAU,EACV,KAAK,cAAc,EAIpB,MAAM,YAAY,CAAC;;AAiBpB;;;;;;;;GAQG;AACH,qBAAa,sBAAuB,SAAQ,2BAA8C;IACxF,gBAAgC,WAAW,EAAE,MAAM,CAAsB;IACzE,OAAuB,mBAAmB,EAAE,cAAc,EAAE,CAG1D;IACF,OAAuB,MAAM,EAAE,cAAc,CAAsB;IACnE,gBAAuB,MAAM;;;;;MAKlB;IAEX,oCAAoC;IACpC,SAA6C,IAAI,EAC7C,MAAM,GACN,MAAM,GACN,SAAS,GACT,MAAM,GACN,OAAO,CAAU;IAErB;;;OAGG;IACH,SAA6C,IAAI,EAAE,GAAG,GAAG,GAAG,CAAwB;IAEpF,8BAA8B;IAC9B,SAA6C,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAS;IAElG,kCAAkC;IAClC,OAAO,KAAK,MAAM,QAQjB;IACD,OAAO,KAAK,MAAM,GAEjB;IACD,OAAO,CAAC,cAAc,CAAwB;IAE9C,OAAO,CAAC,oBAAoB,CAAe;IAC3C,OAAO,CAAC,sBAAsB,CAA8C;IAC5E,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,2BAA2B,CAIhC;;cAOgB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAQ5E,OAAO,CAAC,KAAK;IAcN,KAAK,IAAI,IAAI;IAYpB,OAAO,CAAC,yBAAyB;cAKd,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAc9E,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,sBAAsB;IAQ9B,OAAO,CAAC,qBAAqB;IAoB7B,OAAO,CAAC,2BAA2B;IAUnC,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,eAAe;cAQJ,cAAc,IAAI,MAAM;cAIxB,MAAM,IAAI,cAAc;CA4B5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,kBAAkB,EAAE,sBAAsB,CAAC;KAC5C;CACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as SbbNotificationElement } from "../notification.component-
|
|
1
|
+
import { t as SbbNotificationElement } from "../notification.component-D0rkSF3p.js";
|
|
2
2
|
export { SbbNotificationElement };
|
package/development/{notification.component-CqmGbIWI.js → notification.component-D0rkSF3p.js}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
2
|
import { html, nothing, unsafeCSS } from "lit";
|
|
3
3
|
import { property } from "lit/decorators.js";
|
|
4
|
-
import { SbbElement, SbbLanguageController, SbbReadonlyMixin,
|
|
4
|
+
import { SbbElement, SbbLanguageController, SbbReadonlyMixin, i18nCloseNotification, isLean, isZeroAnimationDuration } from "./core.js";
|
|
5
5
|
import { SbbSecondaryButtonElement } from "./button.pure.js";
|
|
6
6
|
import { SbbDividerElement } from "./divider.pure.js";
|
|
7
7
|
import { SbbIconNameMixin } from "./icon.pure.js";
|
|
@@ -100,7 +100,7 @@ var SbbNotificationElement = (() => {
|
|
|
100
100
|
this.elementDependencies = [SbbSecondaryButtonElement, SbbDividerElement];
|
|
101
101
|
}
|
|
102
102
|
static {
|
|
103
|
-
this.styles = [
|
|
103
|
+
this.styles = [unsafeCSS(notification_default)];
|
|
104
104
|
}
|
|
105
105
|
static {
|
|
106
106
|
this.events = {
|
|
@@ -268,4 +268,4 @@ var SbbNotificationElement = (() => {
|
|
|
268
268
|
//#endregion
|
|
269
269
|
export { SbbNotificationElement as t };
|
|
270
270
|
|
|
271
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC1DcW1HYklXSS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5zY3NzP2lubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG4vLyBPcGVuL0Nsb3NlIGFuaW1hdGlvbiB2YXJzXG4kb3Blbi1hbmltLW1hcmdpbi1mcm9tOiAwO1xuJG9wZW4tYW5pbS1tYXJnaW4tdG86IHZhcigtLXNiYi1ub3RpZmljYXRpb24tbWFyZ2luLCAwKTtcbiRvcGVuLWFuaW0tb3BhY2l0eS1mcm9tOiAwO1xuJG9wZW4tYW5pbS1vcGFjaXR5LXRvOiAxO1xuJG9wZW4tYW5pbS1oZWlnaHQtZnJvbTogMDtcbiRvcGVuLWFuaW0taGVpZ2h0LXRvOiBjYWxjKFxuICB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWhlaWdodCkgKyAodmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItd2lkdGgpICogMilcbik7XG5cbjpob3N0IHtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWJvcmRlcjogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkXG4gICAgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWJhY2tncm91bmQtY29sb3I6IGxpZ2h0LWRhcmsoXG4gICAgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLXNiYi1ub3RpZmljYXRpb24tdHlwZS1jb2xvcikgNSUsIHdoaXRlKSxcbiAgICBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yKSAzNSUsIHdoaXRlKVxuICApO1xuICAtLXNiYi1ub3RpZmljYXRpb24taWNvbi1jb2xvcjogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWJvcmRlci1yYWRpdXMtc3RhcnQ6IGNhbGModmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1iYXNlLWJvcmRlci1yYWRpdXMpIC8gMik7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTR4KVxuICApO1xuICAtLV9zYmItbm90aWZpY2F0aW9uLWljb24tYXV0aG9yaXRhdGl2ZS1mb250LXNpemU6IDFlbTtcbiAgLS1fc2JiLW5vdGlmaWNhdGlvbi1pY29uLWF1dGhvcml0YXRpdmUtbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xuICAtLV9zYmItbm90aWZpY2F0aW9uLWluc2V0LWlubGluZS1zdGFydDogY2FsYyhcbiAgICB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJhc2UtYm9yZGVyLXJhZGl1cykgLSB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJvcmRlci13aWR0aClcbiAgKTtcblxuICAvLyBBcyB0aGUgbm90aWZpY2F0aW9uIGhhcyBhbHdheXMgYSBsaWdodCBiYWNrZ3JvdW5kLCB3ZSBoYXZlIHRvIGZpeCB0aGUgZm9jdXMgb3V0bGluZSBjb2xvclxuICAvLyB0byBkZWZhdWx0IGNvbG9yIGZvciBjYXNlcyB3aGVyZSB0aGUgbm90aWZpY2F0aW9uIGlzIHVzZWQgaW4gYSBuZWdhdGl2ZSBjb250ZXh0LlxuICAtLXNiYi1mb2N1cy1vdXRsaW5lLWNvbG9yOiB2YXIoLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvci1kZWZhdWx0KTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy10ZXh0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xufVxuXG4vLyBCeSBkZWZhdWx0LCB0aGUgb3BlbiBhbmltYXRpb24gaXMgZGlzYWJsZWRcbjpob3N0KDpzdGF0ZShzdGF0ZS1vcGVuaW5nKTpub3QoW2FuaW1hdGlvbj0nb3BlbiddLCBbYW5pbWF0aW9uPSdhbGwnXSkpIHtcbiAgQGluY2x1ZGUgc2JiLmRpc2FibGUtYW5pbWF0aW9uO1xufVxuXG46aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZyk6bm90KFthbmltYXRpb249J2Nsb3NlJ10sIFthbmltYXRpb249J2FsbCddKSkge1xuICBAaW5jbHVkZSBzYmIuZGlzYWJsZS1hbmltYXRpb247XG59XG5cbjpob3N0KDpzdGF0ZShyZXNpemUtZGlzYWJsZS1hbmltYXRpb24pKSB7XG4gIEBpbmNsdWRlIHNiYi5kaXNhYmxlLWFuaW1hdGlvbjtcbn1cblxuOmhvc3QoOnN0YXRlKHNsb3R0ZWQtdGl0bGUpKSB7XG4gIC0tX3NiYi1ub3RpZmljYXRpb24taWNvbi1hdXRob3JpdGF0aXZlLWZvbnQtc2l6ZTogdmFyKC0tc2JiLWhlYWRpbmctZm9udC1zaXplLTUpO1xuICAtLV9zYmItbm90aWZpY2F0aW9uLWljb24tYXV0aG9yaXRhdGl2ZS1saW5lLWhlaWdodDogdmFyKC0tc2JiLXR5cG8tbGluZS1oZWlnaHQtaGVhZGluZyk7XG59XG5cbjpob3N0KDpzdGF0ZShzbG90dGVkLXRpdGxlKVtzaXplPSdzJ10pIHtcbiAgLS1fc2JiLW5vdGlmaWNhdGlvbi1pY29uLWF1dGhvcml0YXRpdmUtZm9udC1zaXplOiB2YXIoLS1zYmItaGVhZGluZy1mb250LXNpemUtNik7XG4gIC0tX3NiYi1ub3RpZmljYXRpb24taWNvbi1hdXRob3JpdGF0aXZlLWxpbmUtaGVpZ2h0OiB2YXIoLS1zYmItdHlwby1saW5lLWhlaWdodC10ZXh0KTtcbn1cblxuOmhvc3QoW3NpemU9J20nXSkge1xuICAtLXNiYi1ub3RpZmljYXRpb24tZm9udC1zaXplOiB2YXIoLS1zYmItdGV4dC1mb250LXNpemUtcyk7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1wYWRkaW5nLWJsb2NrOiB2YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXh4cyk7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1wYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS14cyk7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1jb250ZW50LXBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXh4eHMpXG4gICAgdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS14cyk7XG59XG5cbjpob3N0KFtzaXplPSdzJ10pIHtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWZvbnQtc2l6ZTogdmFyKC0tc2JiLXRleHQtZm9udC1zaXplLXhzKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLXBhZGRpbmctYmxvY2s6IHZhcigtLXNiYi1zcGFjaW5nLXJlc3BvbnNpdmUteHh4cyk7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1wYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS14eHMpXG4gICAgdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS14eHhzKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWNvbnRlbnQtcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi1zcGFjaW5nLXJlc3BvbnNpdmUteHh4cylcbiAgICB2YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXh4cyk7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBzbWFsbCkge1xuICAgIC0tc2JiLW5vdGlmaWNhdGlvbi1wYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS14eHMpO1xuICB9XG59XG5cbi8vIFR5cGVzXG46aG9zdCg6aXMoOm5vdChbdHlwZV0pLCBbdHlwZT0naW5mbyddKSkge1xuICAtLXNiYi1ub3RpZmljYXRpb24tdHlwZS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLXNtb2tlKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWljb24tY29sb3I6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tY29sb3IpO1xuICAtLXNiYi1ub3RpZmljYXRpb24tZGl2aWRlci1vcGFjaXR5LWxpZ2h0OiAyMCU7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1kaXZpZGVyLW9wYWNpdHktZGFyazogMjAlO1xufVxuXG46aG9zdChbdHlwZT0nbm90ZSddKSB7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yOiB2YXIoLS1zYmItY29sb3Itc2t5KTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWRpdmlkZXItb3BhY2l0eS1saWdodDogMjAlO1xuICAtLXNiYi1ub3RpZmljYXRpb24tZGl2aWRlci1vcGFjaXR5LWRhcms6IDIwJTtcbn1cblxuOmhvc3QoW3R5cGU9J3N1Y2Nlc3MnXSkge1xuICAtLXNiYi1ub3RpZmljYXRpb24tdHlwZS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLXN1Y2Nlc3MpO1xuICAtLXNiYi1ub3RpZmljYXRpb24tZGl2aWRlci1vcGFjaXR5LWxpZ2h0OiAxNSU7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1kaXZpZGVyLW9wYWNpdHktZGFyazogMzAlO1xufVxuXG46aG9zdChbdHlwZT0nd2FybiddKSB7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yOiB2YXIoLS1zYmItY29sb3Itd2FybmluZyk7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1pY29uLWNvbG9yOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWNvbG9yKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWRpdmlkZXItb3BhY2l0eS1saWdodDogMjUlO1xuICAtLXNiYi1ub3RpZmljYXRpb24tZGl2aWRlci1vcGFjaXR5LWRhcms6IDQwJTtcbn1cblxuOmhvc3QoW3R5cGU9J2Vycm9yJ10pIHtcbiAgLS1zYmItbm90aWZpY2F0aW9uLXR5cGUtY29sb3I6IHZhcigtLXNiYi1jb2xvci1lcnJvcik7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1kaXZpZGVyLW9wYWNpdHktbGlnaHQ6IDEwJTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWRpdmlkZXItb3BhY2l0eS1kYXJrOiAyNSU7XG59XG5cbi5zYmItbm90aWZpY2F0aW9uX193cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IHZhcigtLV9zYmItbm90aWZpY2F0aW9uLWluc2V0LWlubGluZS1zdGFydCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1fc2JiLW5vdGlmaWNhdGlvbi1pbnNldC1pbmxpbmUtc3RhcnQpKTtcbiAgYm9yZGVyOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tYm9yZGVyLXJhZGl1cy1zdGFydClcbiAgICB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJhc2UtYm9yZGVyLXJhZGl1cykgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1iYXNlLWJvcmRlci1yYWRpdXMpXG4gICAgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItcmFkaXVzLXN0YXJ0KTtcbiAgb3BhY2l0eTogI3skb3Blbi1hbmltLW9wYWNpdHktZnJvbX07XG4gIG1heC1oZWlnaHQ6ICN7JG9wZW4tYW5pbS1oZWlnaHQtZnJvbX07XG4gIG1hcmdpbjogI3skb3Blbi1hbmltLW1hcmdpbi1mcm9tfTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogY2FsYyh2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJvcmRlci13aWR0aCkgKiAtMSlcbiAgICAgIHZhcigtLXNiYi1ub3RpZmljYXRpb24tYmFzZS1ib3JkZXItcmFkaXVzKSBjYWxjKHZhcigtLXNiYi1ub3RpZmljYXRpb24tYm9yZGVyLXdpZHRoKSAqIC0xKVxuICAgICAgY2FsYyh2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJhc2UtYm9yZGVyLXJhZGl1cykgKiAtMSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yKTtcbiAgICBib3JkZXI6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJhc2UtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICA6aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpICYge1xuICAgIG9wYWNpdHk6ICN7JG9wZW4tYW5pbS1vcGFjaXR5LXRvfTtcbiAgICBtYXgtaGVpZ2h0OiAjeyRvcGVuLWFuaW0taGVpZ2h0LXRvfTtcbiAgICBtYXJnaW46ICN7JG9wZW4tYW5pbS1tYXJnaW4tdG99O1xuICB9XG5cbiAgOmhvc3QoOnN0YXRlKHN0YXRlLW9wZW5pbmcpKSAmIHtcbiAgICBhbmltYXRpb246IHtcbiAgICAgIG5hbWU6IG9wZW47XG4gICAgICBmaWxsLW1vZGU6IGZvcndhcmRzO1xuICAgICAgZHVyYXRpb246IHZhcigtLXNiYi1ub3RpZmljYXRpb24tYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi10aW1pbmctZnVuY3Rpb24pO1xuICAgIH1cbiAgfVxuXG4gIDpob3N0KDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkgJiB7XG4gICAgYW5pbWF0aW9uOiB7XG4gICAgICBuYW1lOiBjbG9zZSwgY2xvc2UtaGVpZ2h0O1xuICAgICAgZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICAgIGR1cmF0aW9uOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gICAgICB0aW1pbmctZnVuY3Rpb246IHZhcigtLXNiYi1ub3RpZmljYXRpb24tdGltaW5nLWZ1bmN0aW9uKTtcbiAgICAgIGRlbGF5OiAwcywgdmFyKC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLCB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTJ4KSk7XG4gICAgfVxuICB9XG59XG5cbi5zYmItbm90aWZpY2F0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLXBhZGRpbmctYmxvY2spO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1wYWRkaW5nLWlubGluZSk7XG4gIGNvbG9yOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItcmFkaXVzLXN0YXJ0KVxuICAgIGNhbGModmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1iYXNlLWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItd2lkdGgpKVxuICAgIGNhbGModmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1iYXNlLWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItd2lkdGgpKVxuICAgIHZhcigtLXNiYi1ub3RpZmljYXRpb24tYm9yZGVyLXJhZGl1cy1zdGFydCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tYmFja2dyb3VuZC1jb2xvcik7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBzbWFsbCkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnIgYXV0byBhdXRvO1xuICB9XG59XG5cbi5zYmItbm90aWZpY2F0aW9uX19pY29uLFxuOjpzbG90dGVkKHNiYi1pY29uKSB7XG4gIGNvbG9yOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWljb24tY29sb3IpO1xuICBhbGlnbi1zZWxmOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWljb24tYWxpZ24tc2VsZik7XG5cbiAgLy8gVGhpcyBpcyBhbiB1bmRvY3VtZW50ZWQgZmVhdHVyZSBmb3Igc2JiLmNoLCB0byBoYXZlIHRoZSBhYmlsaXR5IHRvIGhpZGUgdGhlIGljb24uXG4gIC0tc2JiLWljb24tc3ZnLXdpZHRoOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWljb24tc2l6ZSk7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBzbWFsbCkge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogbWF4KFxuICAgICAgMHJlbSxcbiAgICAgIGNhbGMoXG4gICAgICAgIChcbiAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICB2YXIoLS1fc2JiLW5vdGlmaWNhdGlvbi1pY29uLWF1dGhvcml0YXRpdmUtZm9udC1zaXplKSAqXG4gICAgICAgICAgICAgICAgICB2YXIoLS1fc2JiLW5vdGlmaWNhdGlvbi1pY29uLWF1dGhvcml0YXRpdmUtbGluZS1oZWlnaHQpXG4gICAgICAgICAgICAgICkgLSB2YXIoLS1zYmItc2l6ZS1pY29uLXVpLXNtYWxsKVxuICAgICAgICAgICkgL1xuICAgICAgICAgIDJcbiAgICAgIClcbiAgICApO1xuICB9XG59XG5cbi5zYmItbm90aWZpY2F0aW9uX19jb250ZW50IHtcbiAgLy8gVGhlIGNvbnRlbnQgb2YgdGhlIG5vdGlmaWNhdGlvbiBpcyBhbHdheXMgZGlzcGxheWVkIGluIHBvc2l0aXZlIG1vZGUsXG4gIC8vIHRoZXJlZm9yZSwgdG8gaGF2ZSBzbG90dGVkIGNvbnRlbnQgY29ycmVjdGx5IGRpc3BsYXksIHdlIG5lZWQgb25seSBhbGxvdyBsaWdodCBtb2RlLlxuICBjb2xvci1zY2hlbWU6IG9ubHkgbGlnaHQ7XG4gIG9yZGVyOiAzO1xuICBncmlkLWFyZWE6IDIgLyAxIC8gMyAvIDM7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1jb250ZW50LW1hcmdpbi1ibG9jay1zdGFydCk7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBzbWFsbCkge1xuICAgIG9yZGVyOiBpbml0aWFsO1xuICAgIGdyaWQtYXJlYTogaW5pdGlhbDtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tY29udGVudC1wYWRkaW5nLWlubGluZSk7XG4gIH1cbn1cblxuLnNiYi1ub3RpZmljYXRpb25fX3RleHQge1xuICAvLyBSZXNldCBwYXJhZ3JhcGggc3R5bGVzXG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2JiLW5vdGlmaWNhdGlvbl9fZGl2aWRlciB7XG4gIC0tc2JiLWRpdmlkZXItY29sb3I6IGxpZ2h0LWRhcmsoXG4gICAgY29sb3ItbWl4KFxuICAgICAgaW4gc3JnYixcbiAgICAgIHZhcigtLXNiYi1ub3RpZmljYXRpb24tdHlwZS1jb2xvcikgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1kaXZpZGVyLW9wYWNpdHktbGlnaHQpLFxuICAgICAgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1iYWNrZ3JvdW5kLWNvbG9yKVxuICAgICksXG4gICAgY29sb3ItbWl4KFxuICAgICAgaW4gc3JnYixcbiAgICAgIHZhcigtLXNiYi1ub3RpZmljYXRpb24tdHlwZS1jb2xvcikgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1kaXZpZGVyLW9wYWNpdHktZGFyayksXG4gICAgICB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJhY2tncm91bmQtY29sb3IpXG4gICAgKVxuICApO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiB2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KTtcblxuICBAaW5jbHVkZSBzYmIubXEoJGZyb206IHNtYWxsKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tY2xvc2Utd3JhcHBlci1nYXApO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gKHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTF4KSAqIDIpKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG9wZW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAjeyRvcGVuLWFuaW0tb3BhY2l0eS1mcm9tfTtcbiAgICBtYXgtaGVpZ2h0OiAjeyRvcGVuLWFuaW0taGVpZ2h0LWZyb219O1xuICAgIG1hcmdpbjogI3skb3Blbi1hbmltLW1hcmdpbi1mcm9tfTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAjeyRvcGVuLWFuaW0tb3BhY2l0eS10b307XG4gICAgbWF4LWhlaWdodDogI3skb3Blbi1hbmltLWhlaWdodC10b307XG4gICAgbWFyZ2luOiAjeyRvcGVuLWFuaW0tbWFyZ2luLXRvfTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNsb3NlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogI3skb3Blbi1hbmltLW9wYWNpdHktdG99O1xuICAgIG1hcmdpbjogI3skb3Blbi1hbmltLW1hcmdpbi10b307XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogI3skb3Blbi1hbmltLW9wYWNpdHktZnJvbX07XG4gICAgbWFyZ2luOiAjeyRvcGVuLWFuaW0tbWFyZ2luLWZyb219O1xuICB9XG59XG5cbkBrZXlmcmFtZXMgY2xvc2UtaGVpZ2h0IHtcbiAgZnJvbSB7XG4gICAgbWF4LWhlaWdodDogI3skb3Blbi1hbmltLWhlaWdodC10b307XG4gIH1cblxuICB0byB7XG4gICAgbWF4LWhlaWdodDogI3skb3Blbi1hbmltLWhlaWdodC1mcm9tfTtcbiAgfVxufVxuXG46OnNsb3R0ZWQoc2JiLXRpdGxlKSB7XG4gIC8vIE92ZXJ3cml0ZSBzYmItdGl0bGUgZGVmYXVsdCBtYXJnaW5cbiAgbWFyZ2luOiAwO1xufVxuIiwiaW1wb3J0IHsgUmVzaXplQ29udHJvbGxlciB9IGZyb20gJ0BsaXQtbGFicy9vYnNlcnZlcnMvcmVzaXplLWNvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgbm90aGluZyxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbiAgdW5zYWZlQ1NTLFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYlNlY29uZGFyeUJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi9idXR0b24ucHVyZS50cyc7XG5pbXBvcnQge1xuICBib3hTaXppbmdTdHlsZXMsXG4gIGkxOG5DbG9zZU5vdGlmaWNhdGlvbixcbiAgaXNMZWFuLFxuICBpc1plcm9BbmltYXRpb25EdXJhdGlvbixcbiAgU2JiRWxlbWVudCxcbiAgdHlwZSBTYmJFbGVtZW50VHlwZSxcbiAgU2JiTGFuZ3VhZ2VDb250cm9sbGVyLFxuICB0eXBlIFNiYk9wZW5lZENsb3NlZFN0YXRlLFxuICBTYmJSZWFkb25seU1peGluLFxufSBmcm9tICcuLi9jb3JlLnRzJztcbmltcG9ydCB7IFNiYkRpdmlkZXJFbGVtZW50IH0gZnJvbSAnLi4vZGl2aWRlci5wdXJlLnRzJztcbmltcG9ydCB7IFNiYkljb25OYW1lTWl4aW4gfSBmcm9tICcuLi9pY29uLnB1cmUudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJUaXRsZUVsZW1lbnQgfSBmcm9tICcuLi90aXRsZS5wdXJlLnRzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vbm90aWZpY2F0aW9uLnNjc3M/aW5saW5lJztcblxuY29uc3Qgbm90aWZpY2F0aW9uVHlwZXMgPSBuZXcgTWFwKFtcbiAgWydpbmZvJywgJ2NpcmNsZS1pbmZvcm1hdGlvbi1zbWFsbCddLFxuICBbJ25vdGUnLCAnY2lyY2xlLWluZm9ybWF0aW9uLXNtYWxsJ10sXG4gIFsnc3VjY2VzcycsICdjaXJjbGUtdGljay1zbWFsbCddLFxuICBbJ3dhcm4nLCAnY2lyY2xlLWV4Y2xhbWF0aW9uLXBvaW50LXNtYWxsJ10sXG4gIFsnZXJyb3InLCAnY2lyY2xlLWNyb3NzLXNtYWxsJ10sXG5dKTtcblxuY29uc3QgREVCT1VOQ0VfVElNRSA9IDE1MDtcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBtZXNzYWdlcyB3aGljaCByZXF1aXJlIGEgdXNlcidzIGF0dGVudGlvbiB3aXRob3V0IGludGVycnVwdGluZyBpdHMgdGFza3MuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgY29udGVudCB0byB0aGUgYHNiYi1ub3RpZmljYXRpb25gLiBDb250ZW50IHNob3VsZCBjb25zaXN0IG9mIGFuIG9wdGlvbmFsIGBzYmItdGl0bGVgIGVsZW1lbnQgYW5kIHRleHQgY29udGVudC5cbiAqIEBzbG90IHRpdGxlIC0gU2xvdCBmb3IgdGhlIHRpdGxlLiBGb3IgdGhlIHN0YW5kYXJkIGBzYmItdGl0bGVgIGVsZW1lbnQsIHRoZSBzbG90IGlzIGF1dG9tYXRpY2FsbHkgYXNzaWduZWQgd2hlbiBzbG90dGVkIGluIHRoZSB1bm5hbWVkIHNsb3QuXG4gKiBAc2xvdCBpY29uIC0gVXNlIHRoaXMgc2xvdCB0byBkaXNwbGF5IGEgY3VzdG9tIGljb24gYnkgcHJvdmlkaW5nIGFuIGBzYmItaWNvbmAgY29tcG9uZW50LlxuICogQGNzc3Byb3AgWy0tc2JiLW5vdGlmaWNhdGlvbi1tYXJnaW49MF0gLSBDYW4gYmUgdXNlZCB0byBtb2RpZnkgdGhlIG1hcmdpbiBpbiBvcmRlciB0byBnZXQgYSBzbW9vdGhlciBhbmltYXRpb24uXG4gKiBTZWUgc3R5bGUgc2VjdGlvbiBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIFNiYk5vdGlmaWNhdGlvbkVsZW1lbnQgZXh0ZW5kcyBTYmJJY29uTmFtZU1peGluKFNiYlJlYWRvbmx5TWl4aW4oU2JiRWxlbWVudCkpIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSByZWFkb25seSBlbGVtZW50TmFtZTogc3RyaW5nID0gJ3NiYi1ub3RpZmljYXRpb24nO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIGVsZW1lbnREZXBlbmRlbmNpZXM6IFNiYkVsZW1lbnRUeXBlW10gPSBbXG4gICAgU2JiU2Vjb25kYXJ5QnV0dG9uRWxlbWVudCxcbiAgICBTYmJEaXZpZGVyRWxlbWVudCxcbiAgXTtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2JveFNpemluZ1N0eWxlcywgdW5zYWZlQ1NTKHN0eWxlKV07XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIGJlZm9yZW9wZW46ICdiZWZvcmVvcGVuJyxcbiAgICBvcGVuOiAnb3BlbicsXG4gICAgYmVmb3JlY2xvc2U6ICdiZWZvcmVjbG9zZScsXG4gICAgY2xvc2U6ICdjbG9zZScsXG4gIH0gYXMgY29uc3Q7XG5cbiAgLyoqIFRoZSB0eXBlIG9mIHRoZSBub3RpZmljYXRpb24uICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIHR5cGU6XG4gICAgfCAnaW5mbydcbiAgICB8ICdub3RlJ1xuICAgIHwgJ3N1Y2Nlc3MnXG4gICAgfCAnd2FybidcbiAgICB8ICdlcnJvcicgPSAnaW5mbyc7XG5cbiAgLyoqXG4gICAqIFNpemUgdmFyaWFudCwgZWl0aGVyIHMgb3IgbS5cbiAgICogQGRlZmF1bHQgJ20nIC8gJ3MnIChsZWFuKVxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ3MnIHwgJ20nID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG5cbiAgLyoqIFRoZSBlbmFibGVkIGFuaW1hdGlvbnMuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIGFuaW1hdGlvbjogJ29wZW4nIHwgJ2Nsb3NlJyB8ICdhbGwnIHwgJ25vbmUnID0gJ2FsbCc7XG5cbiAgLyoqIFRoZSBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LiAqL1xuICBwcml2YXRlIHNldCBfc3RhdGUoc3RhdGU6IFNiYk9wZW5lZENsb3NlZFN0YXRlKSB7XG4gICAgaWYgKHRoaXMuX3N0YXRlSW50ZXJuYWwpIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoYHN0YXRlLSR7dGhpcy5fc3RhdGVJbnRlcm5hbH1gKTtcbiAgICB9XG4gICAgdGhpcy5fc3RhdGVJbnRlcm5hbCA9IHN0YXRlO1xuICAgIGlmICh0aGlzLl9zdGF0ZUludGVybmFsKSB7XG4gICAgICB0aGlzLmludGVybmFscy5zdGF0ZXMuYWRkKGBzdGF0ZS0ke3RoaXMuX3N0YXRlSW50ZXJuYWx9YCk7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgZ2V0IF9zdGF0ZSgpOiBTYmJPcGVuZWRDbG9zZWRTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YXRlSW50ZXJuYWw7XG4gIH1cbiAgcHJpdmF0ZSBfc3RhdGVJbnRlcm5hbCE6IFNiYk9wZW5lZENsb3NlZFN0YXRlO1xuXG4gIHByaXZhdGUgX25vdGlmaWNhdGlvbkVsZW1lbnQhOiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXJUaW1lb3V0OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZUNvbnRyb2xsZXIodGhpcywge1xuICAgIHRhcmdldDogbnVsbCxcbiAgICBza2lwSW5pdGlhbDogdHJ1ZSxcbiAgICBjYWxsYmFjazogKCkgPT4gdGhpcy5fb25Ob3RpZmljYXRpb25SZXNpemUoKSxcbiAgfSk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5fc3RhdGUgPSAnY2xvc2VkJztcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLndpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgaWYgKGNoYW5nZWRQcm9wZXJ0aWVzLmhhcygnc2l6ZScpKSB7XG4gICAgICB0aGlzLl9jb25maWd1cmVUaXRsZSgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX29wZW4oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N0YXRlID09PSAnY2xvc2VkJykge1xuICAgICAgdGhpcy5fc3RhdGUgPSAnb3BlbmluZyc7XG4gICAgICAvKiogRW1pdHMgd2hlbiB0aGUgb3BlbmluZyBhbmltYXRpb24gc3RhcnRzLiAqL1xuICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnYmVmb3Jlb3BlbicpKTtcblxuICAgICAgLy8gSWYgdGhlIGFuaW1hdGlvbiBkdXJhdGlvbiBpcyB6ZXJvLCB0aGUgYW5pbWF0aW9uZW5kIGV2ZW50IGlzIG5vdCBhbHdheXMgZmlyZWQgcmVsaWFibHkuXG4gICAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZGlyZWN0bHkgc2V0IHRoZSBgb3BlbmVkYCBzdGF0ZS5cbiAgICAgIGlmICh0aGlzLl9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpKSB7XG4gICAgICAgIHRoaXMuX2hhbmRsZU9wZW5pbmcoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N0YXRlID09PSAnb3BlbmVkJyAmJiB0aGlzLl9kaXNwYXRjaEJlZm9yZUNsb3NlRXZlbnQoKSkge1xuICAgICAgdGhpcy5fc3RhdGUgPSAnY2xvc2luZyc7XG5cbiAgICAgIC8vIElmIHRoZSBhbmltYXRpb24gZHVyYXRpb24gaXMgemVybywgdGhlIGFuaW1hdGlvbmVuZCBldmVudCBpcyBub3QgYWx3YXlzIGZpcmVkIHJlbGlhYmx5LlxuICAgICAgLy8gSW4gdGhpcyBjYXNlIHdlIGRpcmVjdGx5IHNldCB0aGUgYGNsb3NlZGAgc3RhdGUuXG4gICAgICBpZiAodGhpcy5faXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKSkge1xuICAgICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfZGlzcGF0Y2hCZWZvcmVDbG9zZUV2ZW50KCk6IGJvb2xlYW4ge1xuICAgIC8qKiBFbWl0cyB3aGVuIHRoZSBjbG9zaW5nIGFuaW1hdGlvbiBzdGFydHMuIENhbiBiZSBjYW5jZWxlZCB0byBwcmV2ZW50IHRoZSBjb21wb25lbnQgZnJvbSBjbG9zaW5nLiAqL1xuICAgIHJldHVybiB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdiZWZvcmVjbG9zZScsIHsgY2FuY2VsYWJsZTogdHJ1ZSB9KSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICB0aGlzLl9ub3RpZmljYXRpb25FbGVtZW50ID0gdGhpcy5zaGFkb3dSb290Py5xdWVyeVNlbGVjdG9yKFxuICAgICAgJy5zYmItbm90aWZpY2F0aW9uX193cmFwcGVyJyxcbiAgICApIGFzIEhUTUxFbGVtZW50O1xuICAgIC8vIFdlIG5lZWQgdG8gd2FpdCBmb3IgdGhlIGNvbXBvbmVudCdzIGB1cGRhdGVDb21wbGV0ZWAgaW4gb3JkZXIgdG8gc2V0IHRoZSBjb3JyZWN0XG4gICAgLy8gaGVpZ2h0IHRvIHRoZSBub3RpZmljYXRpb24gZWxlbWVudC5cbiAgICB0aGlzLnVwZGF0ZUNvbXBsZXRlLnRoZW4oKCkgPT4ge1xuICAgICAgdGhpcy5fc2V0Tm90aWZpY2F0aW9uSGVpZ2h0KCk7XG4gICAgICB0aGlzLl9vcGVuKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24odGhpcywgJy0tc2JiLW5vdGlmaWNhdGlvbi1hbmltYXRpb24tZHVyYXRpb24nKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldE5vdGlmaWNhdGlvbkhlaWdodCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX25vdGlmaWNhdGlvbkVsZW1lbnQ/LnNjcm9sbEhlaWdodCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBub3RpZmljYXRpb25IZWlnaHQgPSBgJHt0aGlzLl9ub3RpZmljYXRpb25FbGVtZW50LnNjcm9sbEhlaWdodH1weGA7XG4gICAgdGhpcy5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItbm90aWZpY2F0aW9uLWhlaWdodCcsIG5vdGlmaWNhdGlvbkhlaWdodCk7XG4gIH1cblxuICBwcml2YXRlIF9vbk5vdGlmaWNhdGlvblJlc2l6ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdvcGVuZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCk7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZSB0aGUgYW5pbWF0aW9uIHdoZW4gcmVzaXppbmcgdGhlIG5vdGlmaWNhdGlvbiB0byBhdm9pZCBzdHJhbmdlIGhlaWdodCB0cmFuc2l0aW9uIGVmZmVjdHMuXG4gICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmFkZCgncmVzaXplLWRpc2FibGUtYW5pbWF0aW9uJyk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXJUaW1lb3V0ID0gc2V0VGltZW91dChcbiAgICAgICgpID0+IHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoJ3Jlc2l6ZS1kaXNhYmxlLWFuaW1hdGlvbicpLFxuICAgICAgREVCT1VOQ0VfVElNRSxcbiAgICApO1xuXG4gICAgLy8gVG8gYXZvaWQgUmVzaXplT2JzZXJ2ZXIgbG9vcHMsIHdlIHNldCB0aGUgaGVpZ2h0IGEgdGljayBsYXRlci5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX3NldE5vdGlmaWNhdGlvbkhlaWdodCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX29uTm90aWZpY2F0aW9uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ29wZW5pbmcnICYmIGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdvcGVuJykge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NpbmcnICYmIGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdjbG9zZS1oZWlnaHQnKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlT3BlbmluZygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudCk7XG4gICAgLyoqIEVtaXRzIHdoZW4gdGhlIG9wZW5pbmcgYW5pbWF0aW9uIGVuZHMuICovXG4gICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnb3BlbicpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUNsb3NpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5fc3RhdGUgPSAnY2xvc2VkJztcbiAgICAvKiogRW1pdHMgd2hlbiB0aGUgY2xvc2luZyBhbmltYXRpb24gZW5kcy4gKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjbG9zZScpKTtcbiAgICB0aGlzLl9ub3RpZmljYXRpb25SZXNpemVPYnNlcnZlci51bm9ic2VydmUodGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudCk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnJlbW92ZSgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZVNsb3RjaGFuZ2UoKTogdm9pZCB7XG4gICAgY29uc3QgdGl0bGUgPSBBcnJheS5mcm9tKHRoaXMuY2hpbGRyZW4pLmZpbmQoKGVsKSA9PiBlbC5sb2NhbE5hbWUgPT09ICdzYmItdGl0bGUnKTtcbiAgICBpZiAodGl0bGUpIHtcbiAgICAgIHRpdGxlLnNsb3QgPSAndGl0bGUnO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2NvbmZpZ3VyZVRpdGxlKCk6IHZvaWQge1xuICAgIGNvbnN0IHRpdGxlID0gdGhpcy5xdWVyeVNlbGVjdG9yPy48U2JiVGl0bGVFbGVtZW50Pignc2JiLXRpdGxlJyk7XG4gICAgaWYgKHRpdGxlKSB7XG4gICAgICBjdXN0b21FbGVtZW50cy51cGdyYWRlKHRpdGxlKTtcbiAgICAgIHRpdGxlLnZpc3VhbExldmVsID0gdGhpcy5zaXplID09PSAnbScgPyAnNScgOiAnNic7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlckljb25OYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHN1cGVyLnJlbmRlckljb25OYW1lKCkgfHwgbm90aWZpY2F0aW9uVHlwZXMuZ2V0KHRoaXMudHlwZSkhO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fd3JhcHBlclwiIEBhbmltYXRpb25lbmQ9JHt0aGlzLl9vbk5vdGlmaWNhdGlvbkFuaW1hdGlvbkVuZH0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uXCI+XG4gICAgICAgICAgJHt0aGlzLnJlbmRlckljb25TbG90KCdzYmItbm90aWZpY2F0aW9uX19pY29uJyl9XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uX19jb250ZW50XCI+XG4gICAgICAgICAgICA8c2xvdCBuYW1lPVwidGl0bGVcIiBAc2xvdGNoYW5nZT0ke3RoaXMuX2NvbmZpZ3VyZVRpdGxlfT48L3Nsb3Q+XG4gICAgICAgICAgICA8cCBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX3RleHRcIj5cbiAgICAgICAgICAgICAgPHNsb3QgQHNsb3RjaGFuZ2U9JHt0aGlzLl9oYW5kbGVTbG90Y2hhbmdlfT48L3Nsb3Q+XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgICAgJHshdGhpcy5yZWFkT25seVxuICAgICAgICAgICAgPyBodG1sYFxuICAgICAgICAgICAgICAgIDxzYmItZGl2aWRlciBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX2RpdmlkZXJcIiBvcmllbnRhdGlvbj1cInZlcnRpY2FsXCI+PC9zYmItZGl2aWRlcj5cbiAgICAgICAgICAgICAgICA8c2JiLXNlY29uZGFyeS1idXR0b25cbiAgICAgICAgICAgICAgICAgIHNpemU9JHt0aGlzLnNpemV9XG4gICAgICAgICAgICAgICAgICBpY29uLW5hbWU9XCJjcm9zcy1zbWFsbFwiXG4gICAgICAgICAgICAgICAgICBAY2xpY2s9JHsoKSA9PiB0aGlzLmNsb3NlKCl9XG4gICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPSR7aTE4bkNsb3NlTm90aWZpY2F0aW9uW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfVxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uX19jbG9zZVwiXG4gICAgICAgICAgICAgICAgPjwvc2JiLXNlY29uZGFyeS1idXR0b24+XG4gICAgICAgICAgICAgIGBcbiAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItbm90aWZpY2F0aW9uJzogU2JiTm90aWZpY2F0aW9uRWxlbWVudDtcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUM2QkEsSUFBTSxvQkFBb0IsSUFBSSxJQUFJO0NBQ2hDLENBQUMsUUFBUSwyQkFBMkI7Q0FDcEMsQ0FBQyxRQUFRLDJCQUEyQjtDQUNwQyxDQUFDLFdBQVcsb0JBQW9CO0NBQ2hDLENBQUMsUUFBUSxpQ0FBaUM7Q0FDMUMsQ0FBQyxTQUFTLHFCQUFBO0NBQ1gsQ0FBQztBQUVGLElBQU0sZ0JBQWdCOzs7Ozs7Ozs7O0lBV1QsZ0NBQXNCO21CQUFTLGlCQUFpQixpQkFBaUIsV0FBVyxDQUFDOzs7Ozs7Ozs7O2NBQTdFLCtCQUErQixZQUE4Qzs7O3VCQWV2RixTQUFTLEVBQUUsU0FBUyxNQUFNLENBQUMsQ0FBQTt1QkFXM0IsU0FBUyxFQUFFLFNBQVMsTUFBTSxDQUFDLENBQUE7NEJBRzNCLFNBQVMsRUFBRSxTQUFTLE1BQU0sQ0FBQyxDQUFBO0FBZEMsZ0JBQUEsTUFBQSxNQUFBLGtCQUFBO0lBQUEsTUFBQTtJQUFBLE1BQUE7SUFBQSxRQUFBO0lBQUEsU0FBQTtJQUFBLFFBQUE7S0FBQSxNQUFBLFFBQUEsVUFBQTtLQUFBLE1BQUEsUUFBQSxJQUFnQjtLQUFJLE1BQUEsS0FBQSxVQUFBO0FB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
|
|
271
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC1EMHJrU0YzcC5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZWxlbWVudHMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5zY3NzP2lubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9ub3RpZmljYXRpb24vbm90aWZpY2F0aW9uLmNvbXBvbmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdXNlICcuLi9jb3JlL3N0eWxlcycgYXMgc2JiO1xuXG4vLyBPcGVuL0Nsb3NlIGFuaW1hdGlvbiB2YXJzXG4kb3Blbi1hbmltLW1hcmdpbi1mcm9tOiAwO1xuJG9wZW4tYW5pbS1tYXJnaW4tdG86IHZhcigtLXNiYi1ub3RpZmljYXRpb24tbWFyZ2luLCAwKTtcbiRvcGVuLWFuaW0tb3BhY2l0eS1mcm9tOiAwO1xuJG9wZW4tYW5pbS1vcGFjaXR5LXRvOiAxO1xuJG9wZW4tYW5pbS1oZWlnaHQtZnJvbTogMDtcbiRvcGVuLWFuaW0taGVpZ2h0LXRvOiBjYWxjKFxuICB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWhlaWdodCkgKyAodmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItd2lkdGgpICogMilcbik7XG5cbjpob3N0IHtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWJvcmRlcjogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkXG4gICAgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWJhY2tncm91bmQtY29sb3I6IGxpZ2h0LWRhcmsoXG4gICAgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLXNiYi1ub3RpZmljYXRpb24tdHlwZS1jb2xvcikgNSUsIHdoaXRlKSxcbiAgICBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yKSAzNSUsIHdoaXRlKVxuICApO1xuICAtLXNiYi1ub3RpZmljYXRpb24taWNvbi1jb2xvcjogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWJvcmRlci1yYWRpdXMtc3RhcnQ6IGNhbGModmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1iYXNlLWJvcmRlci1yYWRpdXMpIC8gMik7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1hbmltYXRpb24tZHVyYXRpb246IHZhcihcbiAgICAtLXNiYi1kaXNhYmxlLWFuaW1hdGlvbi1kdXJhdGlvbixcbiAgICB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTR4KVxuICApO1xuICAtLV9zYmItbm90aWZpY2F0aW9uLWljb24tYXV0aG9yaXRhdGl2ZS1mb250LXNpemU6IDFlbTtcbiAgLS1fc2JiLW5vdGlmaWNhdGlvbi1pY29uLWF1dGhvcml0YXRpdmUtbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xuICAtLV9zYmItbm90aWZpY2F0aW9uLWluc2V0LWlubGluZS1zdGFydDogY2FsYyhcbiAgICB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJhc2UtYm9yZGVyLXJhZGl1cykgLSB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJvcmRlci13aWR0aClcbiAgKTtcblxuICAvLyBBcyB0aGUgbm90aWZpY2F0aW9uIGhhcyBhbHdheXMgYSBsaWdodCBiYWNrZ3JvdW5kLCB3ZSBoYXZlIHRvIGZpeCB0aGUgZm9jdXMgb3V0bGluZSBjb2xvclxuICAvLyB0byBkZWZhdWx0IGNvbG9yIGZvciBjYXNlcyB3aGVyZSB0aGUgbm90aWZpY2F0aW9uIGlzIHVzZWQgaW4gYSBuZWdhdGl2ZSBjb250ZXh0LlxuICAtLXNiYi1mb2N1cy1vdXRsaW5lLWNvbG9yOiB2YXIoLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvci1kZWZhdWx0KTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1zYmItdHlwby1sZXR0ZXItc3BhY2luZy10ZXh0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXNiYi10eXBvLWxpbmUtaGVpZ2h0LXRleHQpO1xufVxuXG4vLyBCeSBkZWZhdWx0LCB0aGUgb3BlbiBhbmltYXRpb24gaXMgZGlzYWJsZWRcbjpob3N0KDpzdGF0ZShzdGF0ZS1vcGVuaW5nKTpub3QoW2FuaW1hdGlvbj0nb3BlbiddLCBbYW5pbWF0aW9uPSdhbGwnXSkpIHtcbiAgQGluY2x1ZGUgc2JiLmRpc2FibGUtYW5pbWF0aW9uO1xufVxuXG46aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2luZyk6bm90KFthbmltYXRpb249J2Nsb3NlJ10sIFthbmltYXRpb249J2FsbCddKSkge1xuICBAaW5jbHVkZSBzYmIuZGlzYWJsZS1hbmltYXRpb247XG59XG5cbjpob3N0KDpzdGF0ZShyZXNpemUtZGlzYWJsZS1hbmltYXRpb24pKSB7XG4gIEBpbmNsdWRlIHNiYi5kaXNhYmxlLWFuaW1hdGlvbjtcbn1cblxuOmhvc3QoOnN0YXRlKHNsb3R0ZWQtdGl0bGUpKSB7XG4gIC0tX3NiYi1ub3RpZmljYXRpb24taWNvbi1hdXRob3JpdGF0aXZlLWZvbnQtc2l6ZTogdmFyKC0tc2JiLWhlYWRpbmctZm9udC1zaXplLTUpO1xuICAtLV9zYmItbm90aWZpY2F0aW9uLWljb24tYXV0aG9yaXRhdGl2ZS1saW5lLWhlaWdodDogdmFyKC0tc2JiLXR5cG8tbGluZS1oZWlnaHQtaGVhZGluZyk7XG59XG5cbjpob3N0KDpzdGF0ZShzbG90dGVkLXRpdGxlKVtzaXplPSdzJ10pIHtcbiAgLS1fc2JiLW5vdGlmaWNhdGlvbi1pY29uLWF1dGhvcml0YXRpdmUtZm9udC1zaXplOiB2YXIoLS1zYmItaGVhZGluZy1mb250LXNpemUtNik7XG4gIC0tX3NiYi1ub3RpZmljYXRpb24taWNvbi1hdXRob3JpdGF0aXZlLWxpbmUtaGVpZ2h0OiB2YXIoLS1zYmItdHlwby1saW5lLWhlaWdodC10ZXh0KTtcbn1cblxuOmhvc3QoW3NpemU9J20nXSkge1xuICAtLXNiYi1ub3RpZmljYXRpb24tZm9udC1zaXplOiB2YXIoLS1zYmItdGV4dC1mb250LXNpemUtcyk7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1wYWRkaW5nLWJsb2NrOiB2YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXh4cyk7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1wYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS14cyk7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1jb250ZW50LXBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXh4eHMpXG4gICAgdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS14cyk7XG59XG5cbjpob3N0KFtzaXplPSdzJ10pIHtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWZvbnQtc2l6ZTogdmFyKC0tc2JiLXRleHQtZm9udC1zaXplLXhzKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLXBhZGRpbmctYmxvY2s6IHZhcigtLXNiYi1zcGFjaW5nLXJlc3BvbnNpdmUteHh4cyk7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1wYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS14eHMpXG4gICAgdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS14eHhzKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWNvbnRlbnQtcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi1zcGFjaW5nLXJlc3BvbnNpdmUteHh4cylcbiAgICB2YXIoLS1zYmItc3BhY2luZy1yZXNwb25zaXZlLXh4cyk7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBzbWFsbCkge1xuICAgIC0tc2JiLW5vdGlmaWNhdGlvbi1wYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS14eHMpO1xuICB9XG59XG5cbi8vIFR5cGVzXG46aG9zdCg6aXMoOm5vdChbdHlwZV0pLCBbdHlwZT0naW5mbyddKSkge1xuICAtLXNiYi1ub3RpZmljYXRpb24tdHlwZS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLXNtb2tlKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWljb24tY29sb3I6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tY29sb3IpO1xuICAtLXNiYi1ub3RpZmljYXRpb24tZGl2aWRlci1vcGFjaXR5LWxpZ2h0OiAyMCU7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1kaXZpZGVyLW9wYWNpdHktZGFyazogMjAlO1xufVxuXG46aG9zdChbdHlwZT0nbm90ZSddKSB7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yOiB2YXIoLS1zYmItY29sb3Itc2t5KTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWRpdmlkZXItb3BhY2l0eS1saWdodDogMjAlO1xuICAtLXNiYi1ub3RpZmljYXRpb24tZGl2aWRlci1vcGFjaXR5LWRhcms6IDIwJTtcbn1cblxuOmhvc3QoW3R5cGU9J3N1Y2Nlc3MnXSkge1xuICAtLXNiYi1ub3RpZmljYXRpb24tdHlwZS1jb2xvcjogdmFyKC0tc2JiLWNvbG9yLXN1Y2Nlc3MpO1xuICAtLXNiYi1ub3RpZmljYXRpb24tZGl2aWRlci1vcGFjaXR5LWxpZ2h0OiAxNSU7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1kaXZpZGVyLW9wYWNpdHktZGFyazogMzAlO1xufVxuXG46aG9zdChbdHlwZT0nd2FybiddKSB7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yOiB2YXIoLS1zYmItY29sb3Itd2FybmluZyk7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1pY29uLWNvbG9yOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWNvbG9yKTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWRpdmlkZXItb3BhY2l0eS1saWdodDogMjUlO1xuICAtLXNiYi1ub3RpZmljYXRpb24tZGl2aWRlci1vcGFjaXR5LWRhcms6IDQwJTtcbn1cblxuOmhvc3QoW3R5cGU9J2Vycm9yJ10pIHtcbiAgLS1zYmItbm90aWZpY2F0aW9uLXR5cGUtY29sb3I6IHZhcigtLXNiYi1jb2xvci1lcnJvcik7XG4gIC0tc2JiLW5vdGlmaWNhdGlvbi1kaXZpZGVyLW9wYWNpdHktbGlnaHQ6IDEwJTtcbiAgLS1zYmItbm90aWZpY2F0aW9uLWRpdmlkZXItb3BhY2l0eS1kYXJrOiAyNSU7XG59XG5cbi5zYmItbm90aWZpY2F0aW9uX193cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IHZhcigtLV9zYmItbm90aWZpY2F0aW9uLWluc2V0LWlubGluZS1zdGFydCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1fc2JiLW5vdGlmaWNhdGlvbi1pbnNldC1pbmxpbmUtc3RhcnQpKTtcbiAgYm9yZGVyOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tYm9yZGVyLXJhZGl1cy1zdGFydClcbiAgICB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJhc2UtYm9yZGVyLXJhZGl1cykgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1iYXNlLWJvcmRlci1yYWRpdXMpXG4gICAgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItcmFkaXVzLXN0YXJ0KTtcbiAgb3BhY2l0eTogI3skb3Blbi1hbmltLW9wYWNpdHktZnJvbX07XG4gIG1heC1oZWlnaHQ6ICN7JG9wZW4tYW5pbS1oZWlnaHQtZnJvbX07XG4gIG1hcmdpbjogI3skb3Blbi1hbmltLW1hcmdpbi1mcm9tfTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogY2FsYyh2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJvcmRlci13aWR0aCkgKiAtMSlcbiAgICAgIHZhcigtLXNiYi1ub3RpZmljYXRpb24tYmFzZS1ib3JkZXItcmFkaXVzKSBjYWxjKHZhcigtLXNiYi1ub3RpZmljYXRpb24tYm9yZGVyLXdpZHRoKSAqIC0xKVxuICAgICAgY2FsYyh2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJhc2UtYm9yZGVyLXJhZGl1cykgKiAtMSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi10eXBlLWNvbG9yKTtcbiAgICBib3JkZXI6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJhc2UtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICA6aG9zdCg6aXMoOnN0YXRlKHN0YXRlLW9wZW5lZCksIDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkpICYge1xuICAgIG9wYWNpdHk6ICN7JG9wZW4tYW5pbS1vcGFjaXR5LXRvfTtcbiAgICBtYXgtaGVpZ2h0OiAjeyRvcGVuLWFuaW0taGVpZ2h0LXRvfTtcbiAgICBtYXJnaW46ICN7JG9wZW4tYW5pbS1tYXJnaW4tdG99O1xuICB9XG5cbiAgOmhvc3QoOnN0YXRlKHN0YXRlLW9wZW5pbmcpKSAmIHtcbiAgICBhbmltYXRpb246IHtcbiAgICAgIG5hbWU6IG9wZW47XG4gICAgICBmaWxsLW1vZGU6IGZvcndhcmRzO1xuICAgICAgZHVyYXRpb246IHZhcigtLXNiYi1ub3RpZmljYXRpb24tYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgICAgIHRpbWluZy1mdW5jdGlvbjogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi10aW1pbmctZnVuY3Rpb24pO1xuICAgIH1cbiAgfVxuXG4gIDpob3N0KDpzdGF0ZShzdGF0ZS1jbG9zaW5nKSkgJiB7XG4gICAgYW5pbWF0aW9uOiB7XG4gICAgICBuYW1lOiBjbG9zZSwgY2xvc2UtaGVpZ2h0O1xuICAgICAgZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICAgIGR1cmF0aW9uOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gICAgICB0aW1pbmctZnVuY3Rpb246IHZhcigtLXNiYi1ub3RpZmljYXRpb24tdGltaW5nLWZ1bmN0aW9uKTtcbiAgICAgIGRlbGF5OiAwcywgdmFyKC0tc2JiLWRpc2FibGUtYW5pbWF0aW9uLWR1cmF0aW9uLCB2YXIoLS1zYmItYW5pbWF0aW9uLWR1cmF0aW9uLTJ4KSk7XG4gICAgfVxuICB9XG59XG5cbi5zYmItbm90aWZpY2F0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLXBhZGRpbmctYmxvY2spO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1wYWRkaW5nLWlubGluZSk7XG4gIGNvbG9yOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItcmFkaXVzLXN0YXJ0KVxuICAgIGNhbGModmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1iYXNlLWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItd2lkdGgpKVxuICAgIGNhbGModmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1iYXNlLWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1ib3JkZXItd2lkdGgpKVxuICAgIHZhcigtLXNiYi1ub3RpZmljYXRpb24tYm9yZGVyLXJhZGl1cy1zdGFydCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tYmFja2dyb3VuZC1jb2xvcik7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBzbWFsbCkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnIgYXV0byBhdXRvO1xuICB9XG59XG5cbi5zYmItbm90aWZpY2F0aW9uX19pY29uLFxuOjpzbG90dGVkKHNiYi1pY29uKSB7XG4gIGNvbG9yOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWljb24tY29sb3IpO1xuICBhbGlnbi1zZWxmOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWljb24tYWxpZ24tc2VsZik7XG5cbiAgLy8gVGhpcyBpcyBhbiB1bmRvY3VtZW50ZWQgZmVhdHVyZSBmb3Igc2JiLmNoLCB0byBoYXZlIHRoZSBhYmlsaXR5IHRvIGhpZGUgdGhlIGljb24uXG4gIC0tc2JiLWljb24tc3ZnLXdpZHRoOiB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWljb24tc2l6ZSk7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBzbWFsbCkge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogbWF4KFxuICAgICAgMHJlbSxcbiAgICAgIGNhbGMoXG4gICAgICAgIChcbiAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICB2YXIoLS1fc2JiLW5vdGlmaWNhdGlvbi1pY29uLWF1dGhvcml0YXRpdmUtZm9udC1zaXplKSAqXG4gICAgICAgICAgICAgICAgICB2YXIoLS1fc2JiLW5vdGlmaWNhdGlvbi1pY29uLWF1dGhvcml0YXRpdmUtbGluZS1oZWlnaHQpXG4gICAgICAgICAgICAgICkgLSB2YXIoLS1zYmItc2l6ZS1pY29uLXVpLXNtYWxsKVxuICAgICAgICAgICkgL1xuICAgICAgICAgIDJcbiAgICAgIClcbiAgICApO1xuICB9XG59XG5cbi5zYmItbm90aWZpY2F0aW9uX19jb250ZW50IHtcbiAgLy8gVGhlIGNvbnRlbnQgb2YgdGhlIG5vdGlmaWNhdGlvbiBpcyBhbHdheXMgZGlzcGxheWVkIGluIHBvc2l0aXZlIG1vZGUsXG4gIC8vIHRoZXJlZm9yZSwgdG8gaGF2ZSBzbG90dGVkIGNvbnRlbnQgY29ycmVjdGx5IGRpc3BsYXksIHdlIG5lZWQgb25seSBhbGxvdyBsaWdodCBtb2RlLlxuICBjb2xvci1zY2hlbWU6IG9ubHkgbGlnaHQ7XG4gIG9yZGVyOiAzO1xuICBncmlkLWFyZWE6IDIgLyAxIC8gMyAvIDM7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1jb250ZW50LW1hcmdpbi1ibG9jay1zdGFydCk7XG5cbiAgQGluY2x1ZGUgc2JiLm1xKCRmcm9tOiBzbWFsbCkge1xuICAgIG9yZGVyOiBpbml0aWFsO1xuICAgIGdyaWQtYXJlYTogaW5pdGlhbDtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tY29udGVudC1wYWRkaW5nLWlubGluZSk7XG4gIH1cbn1cblxuLnNiYi1ub3RpZmljYXRpb25fX3RleHQge1xuICAvLyBSZXNldCBwYXJhZ3JhcGggc3R5bGVzXG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2JiLW5vdGlmaWNhdGlvbl9fZGl2aWRlciB7XG4gIC0tc2JiLWRpdmlkZXItY29sb3I6IGxpZ2h0LWRhcmsoXG4gICAgY29sb3ItbWl4KFxuICAgICAgaW4gc3JnYixcbiAgICAgIHZhcigtLXNiYi1ub3RpZmljYXRpb24tdHlwZS1jb2xvcikgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1kaXZpZGVyLW9wYWNpdHktbGlnaHQpLFxuICAgICAgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1iYWNrZ3JvdW5kLWNvbG9yKVxuICAgICksXG4gICAgY29sb3ItbWl4KFxuICAgICAgaW4gc3JnYixcbiAgICAgIHZhcigtLXNiYi1ub3RpZmljYXRpb24tdHlwZS1jb2xvcikgdmFyKC0tc2JiLW5vdGlmaWNhdGlvbi1kaXZpZGVyLW9wYWNpdHktZGFyayksXG4gICAgICB2YXIoLS1zYmItbm90aWZpY2F0aW9uLWJhY2tncm91bmQtY29sb3IpXG4gICAgKVxuICApO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiB2YXIoLS1zYmItYm9yZGVyLXdpZHRoLTF4KTtcblxuICBAaW5jbHVkZSBzYmIubXEoJGZyb206IHNtYWxsKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLXNiYi1ub3RpZmljYXRpb24tY2xvc2Utd3JhcHBlci1nYXApO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gKHZhcigtLXNiYi1zcGFjaW5nLWZpeGVkLTF4KSAqIDIpKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG9wZW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAjeyRvcGVuLWFuaW0tb3BhY2l0eS1mcm9tfTtcbiAgICBtYXgtaGVpZ2h0OiAjeyRvcGVuLWFuaW0taGVpZ2h0LWZyb219O1xuICAgIG1hcmdpbjogI3skb3Blbi1hbmltLW1hcmdpbi1mcm9tfTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAjeyRvcGVuLWFuaW0tb3BhY2l0eS10b307XG4gICAgbWF4LWhlaWdodDogI3skb3Blbi1hbmltLWhlaWdodC10b307XG4gICAgbWFyZ2luOiAjeyRvcGVuLWFuaW0tbWFyZ2luLXRvfTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNsb3NlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogI3skb3Blbi1hbmltLW9wYWNpdHktdG99O1xuICAgIG1hcmdpbjogI3skb3Blbi1hbmltLW1hcmdpbi10b307XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogI3skb3Blbi1hbmltLW9wYWNpdHktZnJvbX07XG4gICAgbWFyZ2luOiAjeyRvcGVuLWFuaW0tbWFyZ2luLWZyb219O1xuICB9XG59XG5cbkBrZXlmcmFtZXMgY2xvc2UtaGVpZ2h0IHtcbiAgZnJvbSB7XG4gICAgbWF4LWhlaWdodDogI3skb3Blbi1hbmltLWhlaWdodC10b307XG4gIH1cblxuICB0byB7XG4gICAgbWF4LWhlaWdodDogI3skb3Blbi1hbmltLWhlaWdodC1mcm9tfTtcbiAgfVxufVxuXG46OnNsb3R0ZWQoc2JiLXRpdGxlKSB7XG4gIC8vIE92ZXJ3cml0ZSBzYmItdGl0bGUgZGVmYXVsdCBtYXJnaW5cbiAgbWFyZ2luOiAwO1xufVxuIiwiaW1wb3J0IHsgUmVzaXplQ29udHJvbGxlciB9IGZyb20gJ0BsaXQtbGFicy9vYnNlcnZlcnMvcmVzaXplLWNvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgbm90aGluZyxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbiAgdW5zYWZlQ1NTLFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYlNlY29uZGFyeUJ1dHRvbkVsZW1lbnQgfSBmcm9tICcuLi9idXR0b24ucHVyZS50cyc7XG5pbXBvcnQge1xuICBpMThuQ2xvc2VOb3RpZmljYXRpb24sXG4gIGlzTGVhbixcbiAgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24sXG4gIFNiYkVsZW1lbnQsXG4gIHR5cGUgU2JiRWxlbWVudFR5cGUsXG4gIFNiYkxhbmd1YWdlQ29udHJvbGxlcixcbiAgdHlwZSBTYmJPcGVuZWRDbG9zZWRTdGF0ZSxcbiAgU2JiUmVhZG9ubHlNaXhpbixcbn0gZnJvbSAnLi4vY29yZS50cyc7XG5pbXBvcnQgeyBTYmJEaXZpZGVyRWxlbWVudCB9IGZyb20gJy4uL2RpdmlkZXIucHVyZS50cyc7XG5pbXBvcnQgeyBTYmJJY29uTmFtZU1peGluIH0gZnJvbSAnLi4vaWNvbi5wdXJlLnRzJztcbmltcG9ydCB0eXBlIHsgU2JiVGl0bGVFbGVtZW50IH0gZnJvbSAnLi4vdGl0bGUucHVyZS50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL25vdGlmaWNhdGlvbi5zY3NzP2lubGluZSc7XG5cbmNvbnN0IG5vdGlmaWNhdGlvblR5cGVzID0gbmV3IE1hcChbXG4gIFsnaW5mbycsICdjaXJjbGUtaW5mb3JtYXRpb24tc21hbGwnXSxcbiAgWydub3RlJywgJ2NpcmNsZS1pbmZvcm1hdGlvbi1zbWFsbCddLFxuICBbJ3N1Y2Nlc3MnLCAnY2lyY2xlLXRpY2stc21hbGwnXSxcbiAgWyd3YXJuJywgJ2NpcmNsZS1leGNsYW1hdGlvbi1wb2ludC1zbWFsbCddLFxuICBbJ2Vycm9yJywgJ2NpcmNsZS1jcm9zcy1zbWFsbCddLFxuXSk7XG5cbmNvbnN0IERFQk9VTkNFX1RJTUUgPSAxNTA7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgbWVzc2FnZXMgd2hpY2ggcmVxdWlyZSBhIHVzZXIncyBhdHRlbnRpb24gd2l0aG91dCBpbnRlcnJ1cHRpbmcgaXRzIHRhc2tzLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIGBzYmItbm90aWZpY2F0aW9uYC4gQ29udGVudCBzaG91bGQgY29uc2lzdCBvZiBhbiBvcHRpb25hbCBgc2JiLXRpdGxlYCBlbGVtZW50IGFuZCB0ZXh0IGNvbnRlbnQuXG4gKiBAc2xvdCB0aXRsZSAtIFNsb3QgZm9yIHRoZSB0aXRsZS4gRm9yIHRoZSBzdGFuZGFyZCBgc2JiLXRpdGxlYCBlbGVtZW50LCB0aGUgc2xvdCBpcyBhdXRvbWF0aWNhbGx5IGFzc2lnbmVkIHdoZW4gc2xvdHRlZCBpbiB0aGUgdW5uYW1lZCBzbG90LlxuICogQHNsb3QgaWNvbiAtIFVzZSB0aGlzIHNsb3QgdG8gZGlzcGxheSBhIGN1c3RvbSBpY29uIGJ5IHByb3ZpZGluZyBhbiBgc2JiLWljb25gIGNvbXBvbmVudC5cbiAqIEBjc3Nwcm9wIFstLXNiYi1ub3RpZmljYXRpb24tbWFyZ2luPTBdIC0gQ2FuIGJlIHVzZWQgdG8gbW9kaWZ5IHRoZSBtYXJnaW4gaW4gb3JkZXIgdG8gZ2V0IGEgc21vb3RoZXIgYW5pbWF0aW9uLlxuICogU2VlIHN0eWxlIHNlY3Rpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBTYmJOb3RpZmljYXRpb25FbGVtZW50IGV4dGVuZHMgU2JiSWNvbk5hbWVNaXhpbihTYmJSZWFkb25seU1peGluKFNiYkVsZW1lbnQpKSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgcmVhZG9ubHkgZWxlbWVudE5hbWU6IHN0cmluZyA9ICdzYmItbm90aWZpY2F0aW9uJztcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBlbGVtZW50RGVwZW5kZW5jaWVzOiBTYmJFbGVtZW50VHlwZVtdID0gW1xuICAgIFNiYlNlY29uZGFyeUJ1dHRvbkVsZW1lbnQsXG4gICAgU2JiRGl2aWRlckVsZW1lbnQsXG4gIF07XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IFt1bnNhZmVDU1Moc3R5bGUpXTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBldmVudHMgPSB7XG4gICAgYmVmb3Jlb3BlbjogJ2JlZm9yZW9wZW4nLFxuICAgIG9wZW46ICdvcGVuJyxcbiAgICBiZWZvcmVjbG9zZTogJ2JlZm9yZWNsb3NlJyxcbiAgICBjbG9zZTogJ2Nsb3NlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogVGhlIHR5cGUgb2YgdGhlIG5vdGlmaWNhdGlvbi4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3IgdHlwZTpcbiAgICB8ICdpbmZvJ1xuICAgIHwgJ25vdGUnXG4gICAgfCAnc3VjY2VzcydcbiAgICB8ICd3YXJuJ1xuICAgIHwgJ2Vycm9yJyA9ICdpbmZvJztcblxuICAvKipcbiAgICogU2l6ZSB2YXJpYW50LCBlaXRoZXIgcyBvciBtLlxuICAgKiBAZGVmYXVsdCAnbScgLyAncycgKGxlYW4pXG4gICAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciBzaXplOiAncycgfCAnbScgPSBpc0xlYW4oKSA/ICdzJyA6ICdtJztcblxuICAvKiogVGhlIGVuYWJsZWQgYW5pbWF0aW9ucy4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3IgYW5pbWF0aW9uOiAnb3BlbicgfCAnY2xvc2UnIHwgJ2FsbCcgfCAnbm9uZScgPSAnYWxsJztcblxuICAvKiogVGhlIHN0YXRlIG9mIHRoZSBjb21wb25lbnQuICovXG4gIHByaXZhdGUgc2V0IF9zdGF0ZShzdGF0ZTogU2JiT3BlbmVkQ2xvc2VkU3RhdGUpIHtcbiAgICBpZiAodGhpcy5fc3RhdGVJbnRlcm5hbCkge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmRlbGV0ZShgc3RhdGUtJHt0aGlzLl9zdGF0ZUludGVybmFsfWApO1xuICAgIH1cbiAgICB0aGlzLl9zdGF0ZUludGVybmFsID0gc3RhdGU7XG4gICAgaWYgKHRoaXMuX3N0YXRlSW50ZXJuYWwpIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5hZGQoYHN0YXRlLSR7dGhpcy5fc3RhdGVJbnRlcm5hbH1gKTtcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSBnZXQgX3N0YXRlKCk6IFNiYk9wZW5lZENsb3NlZFN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhdGVJbnRlcm5hbDtcbiAgfVxuICBwcml2YXRlIF9zdGF0ZUludGVybmFsITogU2JiT3BlbmVkQ2xvc2VkU3RhdGU7XG5cbiAgcHJpdmF0ZSBfbm90aWZpY2F0aW9uRWxlbWVudCE6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF9yZXNpemVPYnNlcnZlclRpbWVvdXQ6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfbm90aWZpY2F0aW9uUmVzaXplT2JzZXJ2ZXIgPSBuZXcgUmVzaXplQ29udHJvbGxlcih0aGlzLCB7XG4gICAgdGFyZ2V0OiBudWxsLFxuICAgIHNraXBJbml0aWFsOiB0cnVlLFxuICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLl9vbk5vdGlmaWNhdGlvblJlc2l6ZSgpLFxuICB9KTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLl9zdGF0ZSA9ICdjbG9zZWQnO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdzaXplJykpIHtcbiAgICAgIHRoaXMuX2NvbmZpZ3VyZVRpdGxlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfb3BlbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdjbG9zZWQnKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuaW5nJztcbiAgICAgIC8qKiBFbWl0cyB3aGVuIHRoZSBvcGVuaW5nIGFuaW1hdGlvbiBzdGFydHMuICovXG4gICAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdiZWZvcmVvcGVuJykpO1xuXG4gICAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBvcGVuZWRgIHN0YXRlLlxuICAgICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdvcGVuZWQnICYmIHRoaXMuX2Rpc3BhdGNoQmVmb3JlQ2xvc2VFdmVudCgpKSB7XG4gICAgICB0aGlzLl9zdGF0ZSA9ICdjbG9zaW5nJztcblxuICAgICAgLy8gSWYgdGhlIGFuaW1hdGlvbiBkdXJhdGlvbiBpcyB6ZXJvLCB0aGUgYW5pbWF0aW9uZW5kIGV2ZW50IGlzIG5vdCBhbHdheXMgZmlyZWQgcmVsaWFibHkuXG4gICAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZGlyZWN0bHkgc2V0IHRoZSBgY2xvc2VkYCBzdGF0ZS5cbiAgICAgIGlmICh0aGlzLl9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpKSB7XG4gICAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9kaXNwYXRjaEJlZm9yZUNsb3NlRXZlbnQoKTogYm9vbGVhbiB7XG4gICAgLyoqIEVtaXRzIHdoZW4gdGhlIGNsb3NpbmcgYW5pbWF0aW9uIHN0YXJ0cy4gQ2FuIGJlIGNhbmNlbGVkIHRvIHByZXZlbnQgdGhlIGNvbXBvbmVudCBmcm9tIGNsb3NpbmcuICovXG4gICAgcmV0dXJuIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2JlZm9yZWNsb3NlJywgeyBjYW5jZWxhYmxlOiB0cnVlIH0pKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIHRoaXMuX25vdGlmaWNhdGlvbkVsZW1lbnQgPSB0aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoXG4gICAgICAnLnNiYi1ub3RpZmljYXRpb25fX3dyYXBwZXInLFxuICAgICkgYXMgSFRNTEVsZW1lbnQ7XG4gICAgLy8gV2UgbmVlZCB0byB3YWl0IGZvciB0aGUgY29tcG9uZW50J3MgYHVwZGF0ZUNvbXBsZXRlYCBpbiBvcmRlciB0byBzZXQgdGhlIGNvcnJlY3RcbiAgICAvLyBoZWlnaHQgdG8gdGhlIG5vdGlmaWNhdGlvbiBlbGVtZW50LlxuICAgIHRoaXMudXBkYXRlQ29tcGxldGUudGhlbigoKSA9PiB7XG4gICAgICB0aGlzLl9zZXROb3RpZmljYXRpb25IZWlnaHQoKTtcbiAgICAgIHRoaXMuX29wZW4oKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1plcm9BbmltYXRpb25EdXJhdGlvbih0aGlzLCAnLS1zYmItbm90aWZpY2F0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0Tm90aWZpY2F0aW9uSGVpZ2h0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudD8uc2Nyb2xsSGVpZ2h0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IG5vdGlmaWNhdGlvbkhlaWdodCA9IGAke3RoaXMuX25vdGlmaWNhdGlvbkVsZW1lbnQuc2Nyb2xsSGVpZ2h0fXB4YDtcbiAgICB0aGlzLnN0eWxlLnNldFByb3BlcnR5KCctLXNiYi1ub3RpZmljYXRpb24taGVpZ2h0Jywgbm90aWZpY2F0aW9uSGVpZ2h0KTtcbiAgfVxuXG4gIHByaXZhdGUgX29uTm90aWZpY2F0aW9uUmVzaXplKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSAhPT0gJ29wZW5lZCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fcmVzaXplT2JzZXJ2ZXJUaW1lb3V0KSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fcmVzaXplT2JzZXJ2ZXJUaW1lb3V0KTtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlIHRoZSBhbmltYXRpb24gd2hlbiByZXNpemluZyB0aGUgbm90aWZpY2F0aW9uIHRvIGF2b2lkIHN0cmFuZ2UgaGVpZ2h0IHRyYW5zaXRpb24gZWZmZWN0cy5cbiAgICB0aGlzLmludGVybmFscy5zdGF0ZXMuYWRkKCdyZXNpemUtZGlzYWJsZS1hbmltYXRpb24nKTtcbiAgICB0aGlzLl9yZXNpemVPYnNlcnZlclRpbWVvdXQgPSBzZXRUaW1lb3V0KFxuICAgICAgKCkgPT4gdGhpcy5pbnRlcm5hbHMuc3RhdGVzLmRlbGV0ZSgncmVzaXplLWRpc2FibGUtYW5pbWF0aW9uJyksXG4gICAgICBERUJPVU5DRV9USU1FLFxuICAgICk7XG5cbiAgICAvLyBUbyBhdm9pZCBSZXNpemVPYnNlcnZlciBsb29wcywgd2Ugc2V0IHRoZSBoZWlnaHQgYSB0aWNrIGxhdGVyLlxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5fc2V0Tm90aWZpY2F0aW9uSGVpZ2h0KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25Ob3RpZmljYXRpb25BbmltYXRpb25FbmQoZXZlbnQ6IEFuaW1hdGlvbkV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N0YXRlID09PSAnb3BlbmluZycgJiYgZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ29wZW4nKSB7XG4gICAgICB0aGlzLl9oYW5kbGVPcGVuaW5nKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3N0YXRlID09PSAnY2xvc2luZycgJiYgZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlLWhlaWdodCcpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVPcGVuaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ29wZW5lZCc7XG4gICAgdGhpcy5fbm90aWZpY2F0aW9uUmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLl9ub3RpZmljYXRpb25FbGVtZW50KTtcbiAgICAvKiogRW1pdHMgd2hlbiB0aGUgb3BlbmluZyBhbmltYXRpb24gZW5kcy4gKi9cbiAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdvcGVuJykpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xvc2luZygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdjbG9zZWQnO1xuICAgIC8qKiBFbWl0cyB3aGVuIHRoZSBjbG9zaW5nIGFuaW1hdGlvbiBlbmRzLiAqL1xuICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2Nsb3NlJykpO1xuICAgIHRoaXMuX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyLnVub2JzZXJ2ZSh0aGlzLl9ub3RpZmljYXRpb25FbGVtZW50KTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVtb3ZlKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlU2xvdGNoYW5nZSgpOiB2b2lkIHtcbiAgICBjb25zdCB0aXRsZSA9IEFycmF5LmZyb20odGhpcy5jaGlsZHJlbikuZmluZCgoZWwpID0+IGVsLmxvY2FsTmFtZSA9PT0gJ3NiYi10aXRsZScpO1xuICAgIGlmICh0aXRsZSkge1xuICAgICAgdGl0bGUuc2xvdCA9ICd0aXRsZSc7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY29uZmlndXJlVGl0bGUoKTogdm9pZCB7XG4gICAgY29uc3QgdGl0bGUgPSB0aGlzLnF1ZXJ5U2VsZWN0b3I/LjxTYmJUaXRsZUVsZW1lbnQ+KCdzYmItdGl0bGUnKTtcbiAgICBpZiAodGl0bGUpIHtcbiAgICAgIGN1c3RvbUVsZW1lbnRzLnVwZ3JhZGUodGl0bGUpO1xuICAgICAgdGl0bGUudmlzdWFsTGV2ZWwgPSB0aGlzLnNpemUgPT09ICdtJyA/ICc1JyA6ICc2JztcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVySWNvbk5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gc3VwZXIucmVuZGVySWNvbk5hbWUoKSB8fCBub3RpZmljYXRpb25UeXBlcy5nZXQodGhpcy50eXBlKSE7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uX193cmFwcGVyXCIgQGFuaW1hdGlvbmVuZD0ke3RoaXMuX29uTm90aWZpY2F0aW9uQW5pbWF0aW9uRW5kfT5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25cIj5cbiAgICAgICAgICAke3RoaXMucmVuZGVySWNvblNsb3QoJ3NiYi1ub3RpZmljYXRpb25fX2ljb24nKX1cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX2NvbnRlbnRcIj5cbiAgICAgICAgICAgIDxzbG90IG5hbWU9XCJ0aXRsZVwiIEBzbG90Y2hhbmdlPSR7dGhpcy5fY29uZmlndXJlVGl0bGV9Pjwvc2xvdD5cbiAgICAgICAgICAgIDxwIGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fdGV4dFwiPlxuICAgICAgICAgICAgICA8c2xvdCBAc2xvdGNoYW5nZT0ke3RoaXMuX2hhbmRsZVNsb3RjaGFuZ2V9Pjwvc2xvdD5cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgICAkeyF0aGlzLnJlYWRPbmx5XG4gICAgICAgICAgICA/IGh0bWxgXG4gICAgICAgICAgICAgICAgPHNiYi1kaXZpZGVyIGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fZGl2aWRlclwiIG9yaWVudGF0aW9uPVwidmVydGljYWxcIj48L3NiYi1kaXZpZGVyPlxuICAgICAgICAgICAgICAgIDxzYmItc2Vjb25kYXJ5LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgc2l6ZT0ke3RoaXMuc2l6ZX1cbiAgICAgICAgICAgICAgICAgIGljb24tbmFtZT1cImNyb3NzLXNtYWxsXCJcbiAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpID0+IHRoaXMuY2xvc2UoKX1cbiAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9JHtpMThuQ2xvc2VOb3RpZmljYXRpb25bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19XG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX2Nsb3NlXCJcbiAgICAgICAgICAgICAgICA+PC9zYmItc2Vjb25kYXJ5LWJ1dHRvbj5cbiAgICAgICAgICAgICAgYFxuICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1ub3RpZmljYXRpb24nOiBTYmJOb3RpZmljYXRpb25FbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQzRCQSxJQUFNLG9CQUFvQixJQUFJLElBQUk7Q0FDaEMsQ0FBQyxRQUFRLDJCQUEyQjtDQUNwQyxDQUFDLFFBQVEsMkJBQTJCO0NBQ3BDLENBQUMsV0FBVyxvQkFBb0I7Q0FDaEMsQ0FBQyxRQUFRLGlDQUFpQztDQUMxQyxDQUFDLFNBQVMscUJBQUE7Q0FDWCxDQUFDO0FBRUYsSUFBTSxnQkFBZ0I7Ozs7Ozs7Ozs7SUFXVCxnQ0FBc0I7bUJBQVMsaUJBQWlCLGlCQUFpQixXQUFXLENBQUM7Ozs7Ozs7Ozs7Y0FBN0UsK0JBQStCLFlBQThDOzs7dUJBZXZGLFNBQVMsRUFBRSxTQUFTLE1BQU0sQ0FBQyxDQUFBO3VCQVczQixTQUFTLEVBQUUsU0FBUyxNQUFNLENBQUMsQ0FBQTs0QkFHM0IsU0FBUyxFQUFFLFNBQVMsTUFBTSxDQUFDLENBQUE7QUFkQyxnQkFBQSxNQUFBLE1BQUEsa0JBQUE7SUFBQSxNQUFBO0lBQUEsTUFBQTtJQUFBLFFBQUE7SUFBQSxTQUFBO0lBQUEsUUFBQTtLQUFBLE1BQUEsUUFBQSxVQUFBO0tBQUEsTUFBQSxRQUFBLElBQWdCO0tBQUksTUFBQSxLQUFBLFVBQUE7QUFBQSxVQUFKLE9BQUk7O0tBQUE7SUFBQSxVQUFBO0lBQUEsRUFB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
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as SbbNotificationElement } from "./notification.component-
|
|
1
|
+
import { t as SbbNotificationElement } from "./notification.component-D0rkSF3p.js";
|
|
2
2
|
export { SbbNotificationElement };
|