@sbb-esta/lyne-elements 2.10.1 → 3.0.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_index.scss +1 -1
- package/action-group/action-group.component.d.ts.map +1 -1
- package/alert/alert/alert.component.d.ts +2 -7
- package/alert/alert/alert.component.d.ts.map +1 -1
- package/alert/alert/alert.component.js +55 -67
- package/autocomplete/autocomplete-base-element.d.ts +26 -17
- package/autocomplete/autocomplete-base-element.d.ts.map +1 -1
- package/autocomplete/autocomplete-base-element.js +98 -70
- package/autocomplete/autocomplete.component.d.ts +3 -2
- package/autocomplete/autocomplete.component.d.ts.map +1 -1
- package/autocomplete/autocomplete.component.js +16 -19
- package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +3 -2
- package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +22 -25
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +1 -0
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +6 -7
- package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +4 -1
- package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +11 -13
- package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +4 -6
- package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +25 -29
- package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +4 -1
- package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +10 -12
- package/autocomplete.js +4 -5
- package/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
- package/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts +1 -0
- package/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts.map +1 -1
- package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +9 -12
- package/button/accent-button/accent-button.component.d.ts +1 -0
- package/button/accent-button/accent-button.component.d.ts.map +1 -1
- package/button/button/button.component.d.ts +1 -0
- package/button/button/button.component.d.ts.map +1 -1
- package/button/common/button-common.d.ts +4 -6
- package/button/common/button-common.d.ts.map +1 -1
- package/button/mini-button/mini-button.component.d.ts +1 -0
- package/button/mini-button/mini-button.component.d.ts.map +1 -1
- package/button/secondary-button/secondary-button.component.d.ts +1 -0
- package/button/secondary-button/secondary-button.component.d.ts.map +1 -1
- package/button/transparent-button/transparent-button.component.d.ts +1 -0
- package/button/transparent-button/transparent-button.component.d.ts.map +1 -1
- package/calendar/calendar.component.d.ts +18 -14
- package/calendar/calendar.component.d.ts.map +1 -1
- package/calendar/calendar.component.js +137 -123
- package/card/card/card.component.d.ts +0 -6
- package/card/card/card.component.d.ts.map +1 -1
- package/card/card/card.component.js +11 -19
- package/card/card-badge/card-badge.component.d.ts +4 -1
- package/card/card-badge/card-badge.component.d.ts.map +1 -1
- package/card/card-badge/card-badge.component.js +8 -11
- package/card/card-button/card-button.component.d.ts +1 -0
- package/card/card-button/card-button.component.d.ts.map +1 -1
- package/card/common/card-action-common.d.ts.map +1 -1
- package/card/common/card-action-common.js +21 -24
- package/checkbox/checkbox/checkbox.component.d.ts +4 -1
- package/checkbox/checkbox/checkbox.component.d.ts.map +1 -1
- package/checkbox/checkbox/checkbox.component.js +48 -38
- package/checkbox/checkbox-panel/checkbox-panel.component.d.ts +4 -1
- package/checkbox/checkbox-panel/checkbox-panel.component.d.ts.map +1 -1
- package/checkbox/checkbox-panel/checkbox-panel.component.js +46 -36
- package/checkbox/common/checkbox-common.d.ts +4 -2
- package/checkbox/common/checkbox-common.d.ts.map +1 -1
- package/chip/chip/chip.component.d.ts +5 -6
- package/chip/chip/chip.component.d.ts.map +1 -1
- package/chip/chip/chip.component.js +37 -50
- package/chip/chip-group/chip-group.component.d.ts +22 -10
- package/chip/chip-group/chip-group.component.d.ts.map +1 -1
- package/chip/chip-group/chip-group.component.js +131 -116
- package/clock/clock.component.d.ts +1 -1
- package/clock/clock.component.d.ts.map +1 -1
- package/clock/clock.component.js +2 -2
- package/container/sticky-bar/sticky-bar.component.d.ts +5 -0
- package/container/sticky-bar/sticky-bar.component.d.ts.map +1 -1
- package/container/sticky-bar/sticky-bar.component.js +48 -38
- package/core/a11y/focus.d.ts +0 -32
- package/core/a11y/focus.d.ts.map +1 -1
- package/core/a11y/focus.js +3 -65
- package/core/a11y/input-modality-detector.d.ts +0 -5
- package/core/a11y/input-modality-detector.d.ts.map +1 -1
- package/core/a11y/input-modality-detector.js +16 -27
- package/core/a11y/interactivity-checker.d.ts +0 -11
- package/core/a11y/interactivity-checker.d.ts.map +1 -1
- package/core/a11y/interactivity-checker.js +0 -1
- package/core/a11y/live-announcer.d.ts +62 -0
- package/core/a11y/live-announcer.d.ts.map +1 -0
- package/core/a11y/live-announcer.js +47 -0
- package/core/a11y.d.ts +1 -0
- package/core/a11y.d.ts.map +1 -1
- package/core/a11y.js +19 -21
- package/core/base-elements/action-base-element.d.ts +3 -1
- package/core/base-elements/action-base-element.d.ts.map +1 -1
- package/core/base-elements/action-base-element.js +12 -11
- package/core/base-elements/button-base-element.d.ts +25 -18
- package/core/base-elements/button-base-element.d.ts.map +1 -1
- package/core/base-elements/button-base-element.js +97 -65
- package/core/base-elements/open-close-base-element.d.ts +3 -1
- package/core/base-elements/open-close-base-element.d.ts.map +1 -1
- package/core/base-elements/open-close-base-element.js +2 -1
- package/core/base-elements.js +9 -8
- package/core/controllers/inert-controller.d.ts.map +1 -1
- package/core/controllers/inert-controller.js +3 -3
- package/core/controllers.d.ts +0 -1
- package/core/controllers.d.ts.map +1 -1
- package/core/controllers.js +17 -19
- package/core/datetime/date-adapter.d.ts +2 -2
- package/core/datetime/date-adapter.d.ts.map +1 -1
- package/core/datetime/date-adapter.js +1 -1
- package/core/datetime/native-date-adapter.d.ts +2 -3
- package/core/datetime/native-date-adapter.d.ts.map +1 -1
- package/core/datetime/native-date-adapter.js +71 -75
- package/core/decorators/id-reference.d.ts +11 -0
- package/core/decorators/id-reference.d.ts.map +1 -0
- package/core/decorators/id-reference.js +79 -0
- package/core/decorators/plain-date.d.ts +23 -0
- package/core/decorators/plain-date.d.ts.map +1 -0
- package/core/decorators/plain-date.js +29 -0
- package/core/decorators.d.ts +2 -2
- package/core/decorators.d.ts.map +1 -1
- package/core/decorators.js +17 -16
- package/core/dom.d.ts +0 -2
- package/core/dom.d.ts.map +1 -1
- package/core/dom.js +22 -26
- package/core/eventing/forward-event.d.ts +0 -6
- package/core/eventing/forward-event.d.ts.map +1 -1
- package/core/eventing/forward-event.js +4 -6
- package/core/eventing.js +12 -13
- package/core/i18n/i18n.d.ts +4 -1
- package/core/i18n/i18n.d.ts.map +1 -1
- package/core/i18n/i18n.js +106 -88
- package/core/i18n.js +42 -39
- package/core/interfaces/types.d.ts +0 -1
- package/core/interfaces/types.d.ts.map +1 -1
- package/core/mixins/animation-complete-mixin.d.ts +1 -1
- package/core/mixins/animation-complete-mixin.d.ts.map +1 -1
- package/core/mixins/disabled-mixin.d.ts +2 -2
- package/core/mixins/disabled-mixin.d.ts.map +1 -1
- package/core/mixins/element-internals-mixin.d.ts +15 -0
- package/core/mixins/element-internals-mixin.d.ts.map +1 -0
- package/core/mixins/element-internals-mixin.js +41 -0
- package/core/mixins/form-associated-checkbox-mixin.d.ts +7 -13
- package/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
- package/core/mixins/form-associated-checkbox-mixin.js +30 -26
- package/core/mixins/form-associated-input-mixin.d.ts +15 -9
- package/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
- package/core/mixins/form-associated-input-mixin.js +65 -49
- package/core/mixins/form-associated-mixin.d.ts +8 -7
- package/core/mixins/form-associated-mixin.d.ts.map +1 -1
- package/core/mixins/form-associated-mixin.js +49 -41
- package/core/mixins/form-associated-radio-button-mixin.d.ts +6 -14
- package/core/mixins/form-associated-radio-button-mixin.d.ts.map +1 -1
- package/core/mixins/form-associated-radio-button-mixin.js +32 -23
- package/core/mixins/readonly-mixin.d.ts +10 -0
- package/core/mixins/readonly-mixin.d.ts.map +1 -0
- package/core/mixins/readonly-mixin.js +30 -0
- package/core/mixins/required-mixin.d.ts +2 -2
- package/core/mixins/required-mixin.d.ts.map +1 -1
- package/core/mixins.d.ts +2 -0
- package/core/mixins.d.ts.map +1 -1
- package/core/mixins.js +25 -21
- package/core/styles/core.scss +38 -14
- package/core/styles/mixins/font-face.scss +6 -18
- package/core/styles/mixins/link.scss +3 -7
- package/core/styles/mixins/lists.scss +0 -63
- package/core/styles/mixins/overlay.scss +7 -1
- package/core/styles/mixins/table.scss +0 -7
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +2 -0
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +7 -1
- package/core/styles/table.scss +0 -4
- package/core/testing.d.ts +0 -1
- package/core/testing.d.ts.map +1 -1
- package/core/testing.js +8 -10
- package/core.css +48 -18
- package/custom-elements.json +13214 -6131
- package/date-input/date-input.component.d.ts +12 -14
- package/date-input/date-input.component.d.ts.map +1 -1
- package/date-input/date-input.component.js +53 -57
- package/datepicker/common/datepicker-association-controllers.d.ts.map +1 -1
- package/datepicker/common/datepicker-association-controllers.js +7 -7
- package/datepicker/common/datepicker-button.d.ts +0 -12
- package/datepicker/common/datepicker-button.d.ts.map +1 -1
- package/datepicker/common/datepicker-button.js +45 -59
- package/datepicker/datepicker/datepicker.component.d.ts +3 -20
- package/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
- package/datepicker/datepicker/datepicker.component.js +85 -95
- package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts +2 -0
- package/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
- package/datepicker/datepicker-next-day/datepicker-next-day.component.js +12 -12
- package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts +2 -0
- package/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
- package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +13 -13
- package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts +0 -8
- package/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
- package/datepicker/datepicker-toggle/datepicker-toggle.component.js +51 -65
- package/datepicker/datepicker.js +2 -4
- package/datepicker.js +10 -12
- package/development/action-group/action-group.component.d.ts.map +1 -1
- package/development/action-group/action-group.component.js +1 -1
- package/development/alert/alert/alert.component.d.ts +2 -7
- package/development/alert/alert/alert.component.d.ts.map +1 -1
- package/development/alert/alert/alert.component.js +8 -26
- package/development/autocomplete/autocomplete-base-element.d.ts +26 -17
- package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
- package/development/autocomplete/autocomplete-base-element.js +69 -39
- package/development/autocomplete/autocomplete.component.d.ts +3 -2
- package/development/autocomplete/autocomplete.component.d.ts.map +1 -1
- package/development/autocomplete/autocomplete.component.js +5 -9
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts +3 -2
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +5 -9
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts +1 -0
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +2 -3
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts +4 -1
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +5 -7
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts +4 -6
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +20 -19
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts +4 -1
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +5 -7
- package/development/autocomplete.js +2 -3
- package/development/breadcrumb/breadcrumb/breadcrumb.component.js +2 -2
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts +1 -0
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.d.ts.map +1 -1
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +5 -8
- package/development/button/accent-button/accent-button.component.d.ts +1 -0
- package/development/button/accent-button/accent-button.component.d.ts.map +1 -1
- package/development/button/accent-button/accent-button.component.js +1 -1
- package/development/button/button/button.component.d.ts +1 -0
- package/development/button/button/button.component.d.ts.map +1 -1
- package/development/button/button/button.component.js +1 -1
- package/development/button/common/button-common.d.ts +4 -6
- 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 +1 -0
- package/development/button/mini-button/mini-button.component.d.ts.map +1 -1
- package/development/button/mini-button/mini-button.component.js +1 -1
- package/development/button/secondary-button/secondary-button.component.d.ts +1 -0
- package/development/button/secondary-button/secondary-button.component.d.ts.map +1 -1
- package/development/button/secondary-button/secondary-button.component.js +1 -1
- package/development/button/transparent-button/transparent-button.component.d.ts +1 -0
- package/development/button/transparent-button/transparent-button.component.d.ts.map +1 -1
- package/development/button/transparent-button/transparent-button.component.js +1 -1
- package/development/calendar/calendar.component.d.ts +18 -14
- package/development/calendar/calendar.component.d.ts.map +1 -1
- package/development/calendar/calendar.component.js +57 -36
- package/development/card/card/card.component.d.ts +0 -6
- package/development/card/card/card.component.d.ts.map +1 -1
- package/development/card/card/card.component.js +5 -13
- package/development/card/card-badge/card-badge.component.d.ts +4 -1
- package/development/card/card-badge/card-badge.component.d.ts.map +1 -1
- package/development/card/card-badge/card-badge.component.js +6 -8
- package/development/card/card-button/card-button.component.d.ts +1 -0
- package/development/card/card-button/card-button.component.d.ts.map +1 -1
- package/development/card/card-button/card-button.component.js +1 -1
- package/development/card/common/card-action-common.d.ts.map +1 -1
- package/development/card/common/card-action-common.js +6 -15
- package/development/checkbox/checkbox/checkbox.component.d.ts +4 -1
- package/development/checkbox/checkbox/checkbox.component.d.ts.map +1 -1
- package/development/checkbox/checkbox/checkbox.component.js +19 -4
- package/development/checkbox/checkbox-panel/checkbox-panel.component.d.ts +4 -1
- package/development/checkbox/checkbox-panel/checkbox-panel.component.d.ts.map +1 -1
- package/development/checkbox/checkbox-panel/checkbox-panel.component.js +20 -4
- package/development/checkbox/common/checkbox-common.d.ts +4 -2
- package/development/checkbox/common/checkbox-common.d.ts.map +1 -1
- package/development/checkbox/common/checkbox-common.js +1 -1
- package/development/chip/chip/chip.component.d.ts +5 -6
- package/development/chip/chip/chip.component.d.ts.map +1 -1
- package/development/chip/chip/chip.component.js +12 -31
- package/development/chip/chip-group/chip-group.component.d.ts +22 -10
- package/development/chip/chip-group/chip-group.component.d.ts.map +1 -1
- package/development/chip/chip-group/chip-group.component.js +52 -27
- package/development/clock/clock.component.d.ts +1 -1
- package/development/clock/clock.component.d.ts.map +1 -1
- package/development/clock/clock.component.js +3 -3
- package/development/container/sticky-bar/sticky-bar.component.d.ts +5 -0
- package/development/container/sticky-bar/sticky-bar.component.d.ts.map +1 -1
- package/development/container/sticky-bar/sticky-bar.component.js +30 -9
- package/development/core/a11y/focus.d.ts +0 -32
- package/development/core/a11y/focus.d.ts.map +1 -1
- package/development/core/a11y/focus.js +2 -82
- package/development/core/a11y/input-modality-detector.d.ts +0 -5
- package/development/core/a11y/input-modality-detector.d.ts.map +1 -1
- package/development/core/a11y/input-modality-detector.js +2 -18
- package/development/core/a11y/interactivity-checker.d.ts +0 -11
- package/development/core/a11y/interactivity-checker.d.ts.map +1 -1
- package/development/core/a11y/interactivity-checker.js +1 -2
- package/development/core/a11y/live-announcer.d.ts +62 -0
- package/development/core/a11y/live-announcer.d.ts.map +1 -0
- package/development/core/a11y/live-announcer.js +87 -0
- package/development/core/a11y.d.ts +1 -0
- package/development/core/a11y.d.ts.map +1 -1
- package/development/core/a11y.js +7 -9
- package/development/core/base-elements/action-base-element.d.ts +3 -1
- package/development/core/base-elements/action-base-element.d.ts.map +1 -1
- package/development/core/base-elements/action-base-element.js +3 -2
- package/development/core/base-elements/button-base-element.d.ts +25 -18
- package/development/core/base-elements/button-base-element.d.ts.map +1 -1
- package/development/core/base-elements/button-base-element.js +105 -67
- package/development/core/base-elements/open-close-base-element.d.ts +3 -1
- package/development/core/base-elements/open-close-base-element.d.ts.map +1 -1
- package/development/core/base-elements/open-close-base-element.js +3 -2
- package/development/core/base-elements.js +2 -1
- package/development/core/controllers/inert-controller.d.ts.map +1 -1
- package/development/core/controllers/inert-controller.js +2 -2
- package/development/core/controllers.d.ts +0 -1
- package/development/core/controllers.d.ts.map +1 -1
- package/development/core/controllers.js +1 -3
- package/development/core/datetime/date-adapter.d.ts +2 -2
- package/development/core/datetime/date-adapter.d.ts.map +1 -1
- package/development/core/datetime/date-adapter.js +2 -2
- package/development/core/datetime/native-date-adapter.d.ts +2 -3
- package/development/core/datetime/native-date-adapter.d.ts.map +1 -1
- package/development/core/datetime/native-date-adapter.js +2 -6
- package/development/core/decorators/id-reference.d.ts +11 -0
- package/development/core/decorators/id-reference.d.ts.map +1 -0
- package/development/core/decorators/id-reference.js +123 -0
- package/development/core/decorators/plain-date.d.ts +23 -0
- package/development/core/decorators/plain-date.d.ts.map +1 -0
- package/development/core/decorators/plain-date.js +37 -0
- package/development/core/decorators.d.ts +2 -2
- package/development/core/decorators.d.ts.map +1 -1
- package/development/core/decorators.js +5 -4
- package/development/core/dom.d.ts +0 -2
- package/development/core/dom.d.ts.map +1 -1
- package/development/core/dom.js +1 -5
- package/development/core/eventing/forward-event.d.ts +0 -6
- package/development/core/eventing/forward-event.d.ts.map +1 -1
- package/development/core/eventing/forward-event.js +2 -4
- package/development/core/eventing.js +1 -2
- package/development/core/i18n/i18n.d.ts +4 -1
- package/development/core/i18n/i18n.d.ts.map +1 -1
- package/development/core/i18n/i18n.js +43 -22
- package/development/core/i18n.js +4 -1
- package/development/core/interfaces/types.d.ts +0 -1
- package/development/core/interfaces/types.d.ts.map +1 -1
- package/development/core/mixins/animation-complete-mixin.d.ts +1 -1
- package/development/core/mixins/animation-complete-mixin.d.ts.map +1 -1
- package/development/core/mixins/animation-complete-mixin.js +1 -1
- package/development/core/mixins/disabled-mixin.d.ts +2 -2
- package/development/core/mixins/disabled-mixin.d.ts.map +1 -1
- package/development/core/mixins/disabled-mixin.js +1 -1
- package/development/core/mixins/element-internals-mixin.d.ts +15 -0
- package/development/core/mixins/element-internals-mixin.d.ts.map +1 -0
- package/development/core/mixins/element-internals-mixin.js +59 -0
- package/development/core/mixins/form-associated-checkbox-mixin.d.ts +7 -13
- package/development/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -1
- package/development/core/mixins/form-associated-checkbox-mixin.js +8 -6
- package/development/core/mixins/form-associated-input-mixin.d.ts +15 -9
- package/development/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
- package/development/core/mixins/form-associated-input-mixin.js +39 -20
- package/development/core/mixins/form-associated-mixin.d.ts +8 -7
- package/development/core/mixins/form-associated-mixin.d.ts.map +1 -1
- package/development/core/mixins/form-associated-mixin.js +31 -17
- package/development/core/mixins/form-associated-radio-button-mixin.d.ts +6 -14
- package/development/core/mixins/form-associated-radio-button-mixin.d.ts.map +1 -1
- package/development/core/mixins/form-associated-radio-button-mixin.js +20 -8
- package/development/core/mixins/readonly-mixin.d.ts +10 -0
- package/development/core/mixins/readonly-mixin.d.ts.map +1 -0
- package/development/core/mixins/readonly-mixin.js +40 -0
- package/development/core/mixins/required-mixin.d.ts +2 -2
- package/development/core/mixins/required-mixin.d.ts.map +1 -1
- package/development/core/mixins/required-mixin.js +1 -1
- package/development/core/mixins.d.ts +2 -0
- package/development/core/mixins.d.ts.map +1 -1
- package/development/core/mixins.js +5 -1
- package/development/core/testing.d.ts +0 -1
- package/development/core/testing.d.ts.map +1 -1
- package/development/core/testing.js +1 -3
- package/development/date-input/date-input.component.d.ts +12 -14
- package/development/date-input/date-input.component.d.ts.map +1 -1
- package/development/date-input/date-input.component.js +17 -22
- package/development/datepicker/common/datepicker-association-controllers.d.ts.map +1 -1
- package/development/datepicker/common/datepicker-association-controllers.js +3 -3
- package/development/datepicker/common/datepicker-button.d.ts +0 -12
- package/development/datepicker/common/datepicker-button.d.ts.map +1 -1
- package/development/datepicker/common/datepicker-button.js +1 -23
- package/development/datepicker/datepicker/datepicker.component.d.ts +3 -20
- package/development/datepicker/datepicker/datepicker.component.d.ts.map +1 -1
- package/development/datepicker/datepicker/datepicker.component.js +24 -33
- package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts +2 -0
- package/development/datepicker/datepicker-next-day/datepicker-next-day.component.d.ts.map +1 -1
- package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +7 -6
- package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts +2 -0
- package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.d.ts.map +1 -1
- package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +7 -6
- package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts +0 -8
- package/development/datepicker/datepicker-toggle/datepicker-toggle.component.d.ts.map +1 -1
- package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +1 -21
- package/development/datepicker/datepicker.js +2 -4
- package/development/datepicker.js +2 -4
- package/development/divider/divider.component.d.ts +2 -1
- package/development/divider/divider.component.d.ts.map +1 -1
- package/development/divider/divider.component.js +5 -8
- package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts +5 -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 +9 -8
- package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts +2 -0
- 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 +6 -5
- package/development/file-selector/common/file-selector-common.d.ts +6 -5
- package/development/file-selector/common/file-selector-common.d.ts.map +1 -1
- package/development/file-selector/common/file-selector-common.js +4 -4
- package/development/file-selector/file-selector/file-selector.component.d.ts +1 -0
- package/development/file-selector/file-selector/file-selector.component.d.ts.map +1 -1
- package/development/file-selector/file-selector/file-selector.component.js +1 -1
- package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts +1 -0
- package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +1 -1
- package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
- package/development/flip-card/flip-card-details/flip-card-details.component.d.ts +1 -0
- 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 +6 -5
- package/development/flip-card/flip-card-summary/flip-card-summary.component.d.ts +1 -0
- 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 +6 -5
- package/development/footer/footer.component.js +1 -1
- package/development/form-field/form-field/form-field.component.d.ts +9 -10
- package/development/form-field/form-field/form-field.component.d.ts.map +1 -1
- package/development/form-field/form-field/form-field.component.js +169 -180
- package/development/form-field/form-field-clear/form-field-clear.component.d.ts +1 -0
- 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 -5
- package/development/header/common/header-action-common.d.ts +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 +8 -4
- package/development/header/header/header.component.d.ts.map +1 -1
- package/development/header/header/header.component.js +17 -10
- package/development/header/header-button/header-button.component.d.ts +1 -0
- package/development/header/header-button/header-button.component.d.ts.map +1 -1
- package/development/header/header-button/header-button.component.js +1 -1
- package/development/image/image.component.d.ts +1 -1
- package/development/image/image.component.d.ts.map +1 -1
- package/development/image/image.component.js +7 -6
- package/development/link/block-link-button/block-link-button.component.d.ts +1 -0
- package/development/link/block-link-button/block-link-button.component.d.ts.map +1 -1
- package/development/link/block-link-button/block-link-button.component.js +1 -1
- package/development/link/common/block-link-common.d.ts +3 -4
- package/development/link/common/block-link-common.d.ts.map +1 -1
- package/development/link/common/block-link-common.js +4 -4
- package/development/link/common/inline-link-common.d.ts +3 -2
- package/development/link/common/inline-link-common.d.ts.map +1 -1
- package/development/link/common/inline-link-common.js +2 -2
- package/development/link/common/link-common.d.ts +4 -2
- package/development/link/common/link-common.d.ts.map +1 -1
- package/development/link/common/link-common.js +1 -1
- package/development/link/common.js +1 -1
- package/development/link/link-button/link-button.component.d.ts +1 -0
- package/development/link/link-button/link-button.component.d.ts.map +1 -1
- package/development/link/link-button/link-button.component.js +1 -1
- package/development/{link-common-CJEWffDZ.js → link-common-DPLJx5Uo.js} +2 -2
- package/development/link-list/link-list-anchor/link-list-anchor.component.js +1 -1
- package/development/link.js +1 -1
- package/development/loading-indicator/loading-indicator.component.d.ts +5 -1
- package/development/loading-indicator/loading-indicator.component.d.ts.map +1 -1
- package/development/loading-indicator/loading-indicator.component.js +9 -8
- package/development/loading-indicator-circle/loading-indicator-circle.component.d.ts +5 -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 +9 -8
- package/development/menu/common/menu-action-common.d.ts +4 -8
- package/development/menu/common/menu-action-common.d.ts.map +1 -1
- package/development/menu/common/menu-action-common.js +5 -63
- package/development/menu/menu/menu.component.d.ts +5 -4
- package/development/menu/menu/menu.component.d.ts.map +1 -1
- package/development/menu/menu/menu.component.js +17 -13
- package/development/menu/menu-button/menu-button.component.d.ts +1 -0
- package/development/menu/menu-button/menu-button.component.d.ts.map +1 -1
- package/development/menu/menu-button/menu-button.component.js +1 -1
- package/development/navigation/navigation/navigation.component.d.ts +6 -4
- package/development/navigation/navigation/navigation.component.d.ts.map +1 -1
- package/development/navigation/navigation/navigation.component.js +18 -15
- package/development/navigation/navigation-button/navigation-button.component.d.ts +1 -0
- package/development/navigation/navigation-button/navigation-button.component.d.ts.map +1 -1
- package/development/navigation/navigation-button/navigation-button.component.js +1 -1
- package/development/navigation/navigation-section/navigation-section.component.d.ts +5 -4
- package/development/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
- package/development/navigation/navigation-section/navigation-section.component.js +19 -16
- package/development/notification/notification.component.d.ts +4 -7
- package/development/notification/notification.component.d.ts.map +1 -1
- package/development/notification/notification.component.js +12 -29
- package/development/option/optgroup/optgroup-base-element.d.ts +2 -1
- package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/development/option/optgroup/optgroup-base-element.js +16 -37
- package/development/option/option/option-base-element.d.ts +6 -12
- package/development/option/option/option-base-element.d.ts.map +1 -1
- package/development/option/option/option-base-element.js +25 -21
- package/development/option/option/option.component.d.ts +5 -2
- package/development/option/option/option.component.d.ts.map +1 -1
- package/development/option/option/option.component.js +24 -21
- package/development/overlay/overlay-base-element.d.ts +1 -8
- package/development/overlay/overlay-base-element.d.ts.map +1 -1
- package/development/overlay/overlay-base-element.js +10 -30
- package/development/paginator/common/paginator-common.d.ts +3 -7
- package/development/paginator/common/paginator-common.d.ts.map +1 -1
- package/development/paginator/common/paginator-common.js +16 -29
- package/development/paginator/paginator/paginator.component.d.ts +0 -5
- package/development/paginator/paginator/paginator.component.d.ts.map +1 -1
- package/development/paginator/paginator/paginator.component.js +2 -14
- package/development/popover/popover/popover.component.d.ts +3 -3
- package/development/popover/popover/popover.component.d.ts.map +1 -1
- package/development/popover/popover/popover.component.js +18 -13
- package/development/popover/popover-trigger/popover-trigger.component.d.ts +1 -0
- package/development/popover/popover-trigger/popover-trigger.component.d.ts.map +1 -1
- package/development/popover/popover-trigger/popover-trigger.component.js +1 -1
- package/development/radio-button/common/radio-button-common.d.ts +4 -2
- 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/radio-button.component.d.ts +6 -2
- package/development/radio-button/radio-button/radio-button.component.d.ts.map +1 -1
- package/development/radio-button/radio-button/radio-button.component.js +21 -4
- package/development/radio-button/radio-button-group/radio-button-group.component.d.ts +8 -6
- package/development/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
- package/development/radio-button/radio-button-group/radio-button-group.component.js +8 -11
- package/development/radio-button/radio-button-panel/radio-button-panel.component.d.ts +6 -2
- package/development/radio-button/radio-button-panel/radio-button-panel.component.d.ts.map +1 -1
- package/development/radio-button/radio-button-panel/radio-button-panel.component.js +22 -4
- package/development/sbb-tokens-CVLcOi-S.js +1 -1
- package/development/select/select.component.d.ts +18 -12
- package/development/select/select.component.d.ts.map +1 -1
- package/development/select/select.component.js +122 -69
- package/development/sidebar/icon-sidebar/icon-sidebar.component.d.ts +4 -2
- package/development/sidebar/icon-sidebar/icon-sidebar.component.d.ts.map +1 -1
- package/development/sidebar/icon-sidebar/icon-sidebar.component.js +5 -6
- package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +1 -0
- package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +1 -1
- package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.js +1 -1
- package/development/sidebar/sidebar/sidebar.component.js +2 -2
- package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +2 -0
- package/development/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
- package/development/sidebar/sidebar-close-button/sidebar-close-button.component.js +6 -3
- package/development/sidebar/sidebar-title/sidebar-title.component.d.ts +1 -0
- package/development/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
- package/development/sidebar/sidebar-title/sidebar-title.component.js +6 -3
- package/development/slider/slider.component.d.ts +6 -15
- package/development/slider/slider.component.d.ts.map +1 -1
- package/development/slider/slider.component.js +37 -85
- package/development/stepper/step/step.component.d.ts +4 -1
- package/development/stepper/step/step.component.d.ts.map +1 -1
- package/development/stepper/step/step.component.js +6 -8
- package/development/stepper/step-label/step-label.component.d.ts +2 -0
- package/development/stepper/step-label/step-label.component.d.ts.map +1 -1
- package/development/stepper/step-label/step-label.component.js +5 -8
- package/development/stepper/stepper/stepper.component.d.ts +1 -1
- package/development/stepper/stepper/stepper.component.d.ts.map +1 -1
- package/development/stepper/stepper/stepper.component.js +9 -8
- package/development/table/table-wrapper/table-wrapper.component.d.ts +2 -1
- package/development/table/table-wrapper/table-wrapper.component.d.ts.map +1 -1
- package/development/table/table-wrapper/table-wrapper.component.js +4 -6
- package/development/tabs/tab/tab.component.d.ts +4 -1
- package/development/tabs/tab/tab.component.d.ts.map +1 -1
- package/development/tabs/tab/tab.component.js +4 -3
- package/development/tabs/tab-group/tab-group.component.d.ts.map +1 -1
- package/development/tabs/tab-group/tab-group.component.js +2 -4
- package/development/tabs/tab-label/tab-label.component.d.ts +2 -1
- package/development/tabs/tab-label/tab-label.component.d.ts.map +1 -1
- package/development/tabs/tab-label/tab-label.component.js +8 -5
- package/development/tag/tag/tag.component.d.ts +7 -3
- package/development/tag/tag/tag.component.d.ts.map +1 -1
- package/development/tag/tag/tag.component.js +26 -7
- package/development/tag/tag-group/tag-group.component.d.ts +7 -5
- package/development/tag/tag-group/tag-group.component.d.ts.map +1 -1
- package/development/tag/tag-group/tag-group.component.js +29 -21
- package/development/teaser-product/common/teaser-product-common.d.ts +4 -2
- 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/time-input/time-input.component.d.ts +29 -42
- package/development/time-input/time-input.component.d.ts.map +1 -1
- package/development/time-input/time-input.component.js +158 -205
- package/development/title/title-base.d.ts +4 -1
- package/development/title/title-base.d.ts.map +1 -1
- package/development/title/title-base.js +9 -17
- package/development/toast/toast.component.d.ts +3 -4
- package/development/toast/toast.component.d.ts.map +1 -1
- package/development/toast/toast.component.js +53 -73
- package/development/toggle/toggle/toggle.component.d.ts +13 -9
- package/development/toggle/toggle/toggle.component.d.ts.map +1 -1
- package/development/toggle/toggle/toggle.component.js +29 -29
- package/development/toggle/toggle-option/toggle-option.component.d.ts +5 -3
- package/development/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
- package/development/toggle/toggle-option/toggle-option.component.js +6 -8
- package/development/toggle-check/toggle-check.component.d.ts +5 -2
- package/development/toggle-check/toggle-check.component.d.ts.map +1 -1
- package/development/toggle-check/toggle-check.component.js +19 -4
- package/divider/divider.component.d.ts +2 -1
- package/divider/divider.component.d.ts.map +1 -1
- package/divider/divider.component.js +26 -29
- package/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts +5 -1
- package/expansion-panel/expansion-panel-content/expansion-panel-content.component.d.ts.map +1 -1
- package/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +14 -14
- package/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts +2 -0
- package/expansion-panel/expansion-panel-header/expansion-panel-header.component.d.ts.map +1 -1
- package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +20 -20
- package/file-selector/common/file-selector-common.d.ts +6 -5
- package/file-selector/common/file-selector-common.d.ts.map +1 -1
- package/file-selector/common/file-selector-common.js +35 -35
- package/file-selector/file-selector/file-selector.component.d.ts +1 -0
- package/file-selector/file-selector/file-selector.component.d.ts.map +1 -1
- package/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts +1 -0
- package/file-selector/file-selector-dropzone/file-selector-dropzone.component.d.ts.map +1 -1
- package/flip-card/flip-card-details/flip-card-details.component.d.ts +1 -0
- package/flip-card/flip-card-details/flip-card-details.component.d.ts.map +1 -1
- package/flip-card/flip-card-details/flip-card-details.component.js +16 -16
- package/flip-card/flip-card-summary/flip-card-summary.component.d.ts +1 -0
- package/flip-card/flip-card-summary/flip-card-summary.component.d.ts.map +1 -1
- package/flip-card/flip-card-summary/flip-card-summary.component.js +13 -13
- package/font-characters-extension.css +3 -3
- package/footer/footer.component.js +1 -1
- package/form-field/form-field/form-field.component.d.ts +9 -10
- package/form-field/form-field/form-field.component.d.ts.map +1 -1
- package/form-field/form-field/form-field.component.js +194 -209
- package/form-field/form-field-clear/form-field-clear.component.d.ts +1 -0
- package/form-field/form-field-clear/form-field-clear.component.d.ts.map +1 -1
- package/form-field/form-field-clear/form-field-clear.component.js +9 -12
- package/header/common/header-action-common.d.ts +3 -3
- package/header/common/header-action-common.d.ts.map +1 -1
- package/header/header/header.component.d.ts +8 -4
- package/header/header/header.component.d.ts.map +1 -1
- package/header/header/header.component.js +51 -46
- package/header/header-button/header-button.component.d.ts +1 -0
- package/header/header-button/header-button.component.d.ts.map +1 -1
- package/image/image.component.d.ts +1 -1
- package/image/image.component.d.ts.map +1 -1
- package/image/image.component.js +4 -2
- package/link/block-link-button/block-link-button.component.d.ts +1 -0
- package/link/block-link-button/block-link-button.component.d.ts.map +1 -1
- package/link/common/block-link-common.d.ts +3 -4
- package/link/common/block-link-common.d.ts.map +1 -1
- package/link/common/block-link-common.js +6 -6
- package/link/common/inline-link-common.d.ts +3 -2
- package/link/common/inline-link-common.d.ts.map +1 -1
- package/link/common/inline-link-common.js +1 -1
- package/link/common/link-common.d.ts +4 -2
- package/link/common/link-common.d.ts.map +1 -1
- package/link/common/link-common.js +1 -1
- package/link/common.js +1 -1
- package/link/link-button/link-button.component.d.ts +1 -0
- package/link/link-button/link-button.component.d.ts.map +1 -1
- package/{link-common-DZrQ-32d.js → link-common-BBKGg9HN.js} +1 -1
- package/link-list/link-list-anchor/link-list-anchor.component.js +4 -4
- package/link.js +1 -1
- package/loading-indicator/loading-indicator.component.d.ts +5 -1
- package/loading-indicator/loading-indicator.component.d.ts.map +1 -1
- package/loading-indicator/loading-indicator.component.js +9 -9
- package/loading-indicator-circle/loading-indicator-circle.component.d.ts +5 -1
- package/loading-indicator-circle/loading-indicator-circle.component.d.ts.map +1 -1
- package/loading-indicator-circle/loading-indicator-circle.component.js +14 -14
- package/menu/common/menu-action-common.d.ts +4 -8
- package/menu/common/menu-action-common.d.ts.map +1 -1
- package/menu/common/menu-action-common.js +16 -41
- package/menu/menu/menu.component.d.ts +5 -4
- package/menu/menu/menu.component.d.ts.map +1 -1
- package/menu/menu/menu.component.js +35 -34
- package/menu/menu-button/menu-button.component.d.ts +1 -0
- package/menu/menu-button/menu-button.component.d.ts.map +1 -1
- package/navigation/navigation/navigation.component.d.ts +6 -4
- package/navigation/navigation/navigation.component.d.ts.map +1 -1
- package/navigation/navigation/navigation.component.js +43 -43
- package/navigation/navigation-button/navigation-button.component.d.ts +1 -0
- package/navigation/navigation-button/navigation-button.component.d.ts.map +1 -1
- package/navigation/navigation-section/navigation-section.component.d.ts +5 -4
- package/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
- package/navigation/navigation-section/navigation-section.component.js +47 -47
- package/notification/notification.component.d.ts +4 -7
- package/notification/notification.component.d.ts.map +1 -1
- package/notification/notification.component.js +63 -73
- package/option/optgroup/optgroup-base-element.d.ts +2 -1
- package/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/option/optgroup/optgroup-base-element.js +43 -43
- package/option/option/option-base-element.d.ts +6 -12
- package/option/option/option-base-element.d.ts.map +1 -1
- package/option/option/option-base-element.js +57 -64
- package/option/option/option.component.d.ts +5 -2
- package/option/option/option.component.d.ts.map +1 -1
- package/option/option/option.component.js +18 -21
- package/overlay/overlay-base-element.d.ts +1 -8
- package/overlay/overlay-base-element.d.ts.map +1 -1
- package/overlay/overlay-base-element.js +44 -55
- package/package.json +1 -1
- package/paginator/common/paginator-common.d.ts +3 -7
- package/paginator/common/paginator-common.d.ts.map +1 -1
- package/paginator/common/paginator-common.js +49 -58
- package/paginator/paginator/paginator.component.d.ts +0 -5
- package/paginator/paginator/paginator.component.d.ts.map +1 -1
- package/paginator/paginator/paginator.component.js +40 -48
- package/popover/popover/popover.component.d.ts +3 -3
- package/popover/popover/popover.component.d.ts.map +1 -1
- package/popover/popover/popover.component.js +50 -47
- package/popover/popover-trigger/popover-trigger.component.d.ts +1 -0
- package/popover/popover-trigger/popover-trigger.component.d.ts.map +1 -1
- package/radio-button/common/radio-button-common.d.ts +4 -2
- package/radio-button/common/radio-button-common.d.ts.map +1 -1
- package/radio-button/radio-button/radio-button.component.d.ts +6 -2
- package/radio-button/radio-button/radio-button.component.d.ts.map +1 -1
- package/radio-button/radio-button/radio-button.component.js +43 -31
- package/radio-button/radio-button-group/radio-button-group.component.d.ts +8 -6
- package/radio-button/radio-button-group/radio-button-group.component.d.ts.map +1 -1
- package/radio-button/radio-button-group/radio-button-group.component.js +24 -26
- package/radio-button/radio-button-panel/radio-button-panel.component.d.ts +6 -2
- package/radio-button/radio-button-panel/radio-button-panel.component.d.ts.map +1 -1
- package/radio-button/radio-button-panel/radio-button-panel.component.js +46 -34
- package/select/select.component.d.ts +18 -12
- package/select/select.component.d.ts.map +1 -1
- package/select/select.component.js +140 -113
- package/sidebar/icon-sidebar/icon-sidebar.component.d.ts +4 -2
- package/sidebar/icon-sidebar/icon-sidebar.component.d.ts.map +1 -1
- package/sidebar/icon-sidebar/icon-sidebar.component.js +19 -20
- package/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts +1 -0
- package/sidebar/icon-sidebar-button/icon-sidebar-button.component.d.ts.map +1 -1
- package/sidebar/sidebar/sidebar.component.js +1 -1
- package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts +2 -0
- package/sidebar/sidebar-close-button/sidebar-close-button.component.d.ts.map +1 -1
- package/sidebar/sidebar-close-button/sidebar-close-button.component.js +11 -9
- package/sidebar/sidebar-title/sidebar-title.component.d.ts +1 -0
- package/sidebar/sidebar-title/sidebar-title.component.d.ts.map +1 -1
- package/sidebar/sidebar-title/sidebar-title.component.js +17 -15
- package/slider/slider.component.d.ts +6 -15
- package/slider/slider.component.d.ts.map +1 -1
- package/slider/slider.component.js +71 -98
- package/standard-theme.css +48 -18
- package/stepper/step/step.component.d.ts +4 -1
- package/stepper/step/step.component.d.ts.map +1 -1
- package/stepper/step/step.component.js +5 -8
- package/stepper/step-label/step-label.component.d.ts +2 -0
- package/stepper/step-label/step-label.component.d.ts.map +1 -1
- package/stepper/step-label/step-label.component.js +12 -17
- package/stepper/stepper/stepper.component.d.ts +1 -1
- package/stepper/stepper/stepper.component.d.ts.map +1 -1
- package/stepper/stepper/stepper.component.js +8 -6
- package/table/table-wrapper/table-wrapper.component.d.ts +2 -1
- package/table/table-wrapper/table-wrapper.component.d.ts.map +1 -1
- package/table/table-wrapper/table-wrapper.component.js +19 -21
- package/tabs/tab/tab.component.d.ts +4 -1
- package/tabs/tab/tab.component.d.ts.map +1 -1
- package/tabs/tab/tab.component.js +10 -9
- package/tabs/tab-group/tab-group.component.d.ts.map +1 -1
- package/tabs/tab-group/tab-group.component.js +8 -8
- package/tabs/tab-label/tab-label.component.d.ts +2 -1
- package/tabs/tab-label/tab-label.component.d.ts.map +1 -1
- package/tabs/tab-label/tab-label.component.js +18 -18
- package/tag/tag/tag.component.d.ts +7 -3
- package/tag/tag/tag.component.d.ts.map +1 -1
- package/tag/tag/tag.component.js +75 -62
- package/tag/tag-group/tag-group.component.d.ts +7 -5
- package/tag/tag-group/tag-group.component.d.ts.map +1 -1
- package/tag/tag-group/tag-group.component.js +69 -64
- package/teaser-product/common/teaser-product-common.d.ts +4 -2
- package/teaser-product/common/teaser-product-common.d.ts.map +1 -1
- package/time-input/time-input.component.d.ts +29 -42
- package/time-input/time-input.component.d.ts.map +1 -1
- package/time-input/time-input.component.js +100 -143
- package/title/title-base.d.ts +4 -1
- package/title/title-base.d.ts.map +1 -1
- package/title/title-base.js +33 -34
- package/toast/toast.component.d.ts +3 -4
- package/toast/toast.component.d.ts.map +1 -1
- package/toast/toast.component.js +64 -70
- package/toggle/toggle/toggle.component.d.ts +13 -9
- package/toggle/toggle/toggle.component.d.ts.map +1 -1
- package/toggle/toggle/toggle.component.js +48 -49
- package/toggle/toggle-option/toggle-option.component.d.ts +5 -3
- package/toggle/toggle-option/toggle-option.component.d.ts.map +1 -1
- package/toggle/toggle-option/toggle-option.component.js +37 -39
- package/toggle-check/toggle-check.component.d.ts +5 -2
- package/toggle-check/toggle-check.component.d.ts.map +1 -1
- package/toggle-check/toggle-check.component.js +53 -43
- package/core/controllers/connected-abort-controller.d.ts +0 -14
- package/core/controllers/connected-abort-controller.d.ts.map +0 -1
- package/core/controllers/connected-abort-controller.js +0 -19
- package/core/decorators/date-converter.d.ts +0 -8
- package/core/decorators/date-converter.d.ts.map +0 -1
- package/core/decorators/date-converter.js +0 -17
- package/core/decorators/date-only-type.d.ts +0 -8
- package/core/decorators/date-only-type.d.ts.map +0 -1
- package/core/decorators/date-only-type.js +0 -10
- package/core/dom/find-referenced-element.d.ts +0 -8
- package/core/dom/find-referenced-element.d.ts.map +0 -1
- package/core/dom/find-referenced-element.js +0 -7
- package/core/dom/input-element.d.ts +0 -12
- package/core/dom/input-element.d.ts.map +0 -1
- package/core/dom/input-element.js +0 -12
- package/core/testing/scroll.d.ts +0 -7
- package/core/testing/scroll.d.ts.map +0 -1
- package/core/testing/scroll.js +0 -6
- package/development/core/controllers/connected-abort-controller.d.ts +0 -14
- package/development/core/controllers/connected-abort-controller.d.ts.map +0 -1
- package/development/core/controllers/connected-abort-controller.js +0 -25
- package/development/core/decorators/date-converter.d.ts +0 -8
- package/development/core/decorators/date-converter.d.ts.map +0 -1
- package/development/core/decorators/date-converter.js +0 -18
- package/development/core/decorators/date-only-type.d.ts +0 -8
- package/development/core/decorators/date-only-type.d.ts.map +0 -1
- package/development/core/decorators/date-only-type.js +0 -11
- package/development/core/dom/find-referenced-element.d.ts +0 -8
- package/development/core/dom/find-referenced-element.d.ts.map +0 -1
- package/development/core/dom/find-referenced-element.js +0 -15
- package/development/core/dom/input-element.d.ts +0 -12
- package/development/core/dom/input-element.d.ts.map +0 -1
- package/development/core/dom/input-element.js +0 -13
- package/development/core/testing/scroll.d.ts +0 -7
- package/development/core/testing/scroll.d.ts.map +0 -1
- package/development/core/testing/scroll.js +0 -8
|
@@ -22,4 +22,4 @@ let SbbNavigationButtonElement = (() => {
|
|
|
22
22
|
export {
|
|
23
23
|
SbbNavigationButtonElement
|
|
24
24
|
};
|
|
25
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLWJ1dHRvbi9uYXZpZ2F0aW9uLWJ1dHRvbi5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3VzdG9tRWxlbWVudCB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiQnV0dG9uQmFzZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMuanMnO1xuaW1wb3J0IHsgU2JiTmF2aWdhdGlvbkFjdGlvbkNvbW1vbkVsZW1lbnRNaXhpbiB9IGZyb20gJy4uL2NvbW1vbi5qcyc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBidXR0b24gZWxlbWVudCB0aGF0IGNhbiBiZSB1c2VkIGluIHRoZSBgc2JiLW5hdmlnYXRpb25gIGNvbXBvbmVudC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSBgc2JiLW5hdmlnYXRpb24tYnV0dG9uYC5cbiAqIEBvdmVycmlkZVR5cGUgdmFsdWUgLSBzdHJpbmdcbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLW5hdmlnYXRpb24tYnV0dG9uJylcbmNsYXNzIFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IGV4dGVuZHMgU2JiTmF2aWdhdGlvbkFjdGlvbkNvbW1vbkVsZW1lbnRNaXhpbihcbiAgU2JiQnV0dG9uQmFzZUVsZW1lbnQsXG4pIHt9XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItbmF2aWdhdGlvbi1idXR0b24nOiBTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7SUFhTSw4QkFBMEIsTUFBQTs7MEJBRC9CLGNBQWMsdUJBQXVCLENBQUM7Ozs7b0JBQ0Usc0NBQ3ZDLG9CQUFvQjtBQURXLEVBQUEsbUJBQVEsWUFFeEM7QUFBQTs7QUFGRCxpQkFFSSxNQUFBLG1CQUFBLEVBQUEsT0FBQSxXQUFBLEdBQUEsa0JBQUEsRUFBQSxNQUFBLFNBQUEsTUFBQSxXQUFBLE1BQUEsVUFBQSxVQUFBLEdBQUEsTUFBQSx1QkFBQTs7O0FBRkUsc0JBQTBCLFlBQUEsdUJBQUE7QUFBQSxFQUFBLE1BQUM7OzsifQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CSSResultGroup, LitElement, PropertyDeclaration, TemplateResult } from 'lit';
|
|
1
|
+
import { CSSResultGroup, LitElement, PropertyDeclaration, PropertyValues, TemplateResult } from 'lit';
|
|
2
2
|
declare const SbbNavigationSectionElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbUpdateSchedulerMixinType> & typeof LitElement;
|
|
3
3
|
/**
|
|
4
4
|
* It can be used as a container for `sbb-navigation-list` within a `sbb-navigation`.
|
|
@@ -13,9 +13,10 @@ export declare class SbbNavigationSectionElement extends SbbNavigationSectionEle
|
|
|
13
13
|
accessor titleContent: string;
|
|
14
14
|
/**
|
|
15
15
|
* The element that will trigger the navigation section.
|
|
16
|
-
*
|
|
16
|
+
*
|
|
17
|
+
* For attribute usage, provide an id reference.
|
|
17
18
|
*/
|
|
18
|
-
accessor trigger:
|
|
19
|
+
accessor trigger: HTMLElement | null;
|
|
19
20
|
/**
|
|
20
21
|
* This will be forwarded as aria-label to the nav element and is read as a title of the navigation-section.
|
|
21
22
|
*/
|
|
@@ -32,7 +33,6 @@ export declare class SbbNavigationSectionElement extends SbbNavigationSectionEle
|
|
|
32
33
|
private _firstLevelNavigation?;
|
|
33
34
|
private _triggerElement;
|
|
34
35
|
private _triggerAbortController;
|
|
35
|
-
private _triggerIdReferenceController;
|
|
36
36
|
private _windowEventsController;
|
|
37
37
|
private _language;
|
|
38
38
|
private _focusTrapController;
|
|
@@ -64,6 +64,7 @@ export declare class SbbNavigationSectionElement extends SbbNavigationSectionEle
|
|
|
64
64
|
connectedCallback(): void;
|
|
65
65
|
disconnectedCallback(): void;
|
|
66
66
|
requestUpdate(name?: PropertyKey, oldValue?: unknown, options?: PropertyDeclaration): void;
|
|
67
|
+
protected firstUpdated(changedProperties: PropertyValues<this>): void;
|
|
67
68
|
protected render(): TemplateResult;
|
|
68
69
|
}
|
|
69
70
|
declare global {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-section.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/navigation/navigation-section/navigation-section.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,UAAU,EAEV,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"navigation-section.component.d.ts","sourceRoot":"","sources":["../../../../../src/elements/navigation/navigation-section/navigation-section.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,UAAU,EAEV,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AA4Bb,OAAO,oCAAoC,CAAC;AAC5C,OAAO,kBAAkB,CAAC;;AAI1B;;;;GAIG;AACH,qBAEM,2BAA4B,SAAQ,gCAAmC;IAC3E,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD;;OAEG;IACH,SAEgB,YAAY,EAAE,MAAM,CAAM;IAE1C;;;;OAIG;IACH,SAEgB,OAAO,EAAE,WAAW,GAAG,IAAI,CAAQ;IAEnD;;OAEG;IACH,SAEgB,kBAAkB,EAAE,MAAM,CAAM;IAEhD;;OAEG;IACH,SAEgB,sBAAsB,EAAE,MAAM,CAAM;IAEpD;;OAEG;IACH,OAAO,KAAK,MAAM,QAGjB;IACD,OAAO,KAAK,MAAM,GAEjB;IAED,OAAO,CAAC,qBAAqB,CAAC,CAAqC;IACnE,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,uBAAuB,CAAmB;IAClD,OAAO,CAAC,uBAAuB,CAAmB;IAClD,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,oBAAoB,CAAoC;IAChE,OAAO,CAAC,iBAAiB,CAA8B;;IA0CvD;;OAEG;IACI,IAAI,IAAI,IAAI;IAsBnB,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,+BAA+B;IAIvC;;OAEG;IACI,KAAK,IAAI,IAAI;IAkBpB,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,6BAA6B,CASnC;IAEF,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,kBAAkB;IAMV,iBAAiB,IAAI,IAAI;IAUzB,oBAAoB,IAAI,IAAI;IAO5B,aAAa,CAC3B,IAAI,CAAC,EAAE,WAAW,EAClB,QAAQ,CAAC,EAAE,OAAO,EAClB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,IAAI;cAQY,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cAK3D,MAAM,IAAI,cAAc;CAmC5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,wBAAwB,EAAE,2BAA2B,CAAC;KACvD;CACF"}
|
|
@@ -9,8 +9,8 @@ import { __esDecorate, __runInitializers } from "tslib";
|
|
|
9
9
|
import { css, LitElement, isServer, nothing, html } from "lit";
|
|
10
10
|
import { customElement, property } from "lit/decorators.js";
|
|
11
11
|
import { SbbFocusTrapController, sbbInputModalityDetector, IS_FOCUSABLE_QUERY } from "../../core/a11y.js";
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
12
|
+
import { SbbLanguageController, SbbMediaMatcherController, SbbMediaQueryBreakpointMediumAndBelow } from "../../core/controllers.js";
|
|
13
|
+
import { forceType, omitEmptyConverter, idReference } from "../../core/decorators.js";
|
|
14
14
|
import { setOrRemoveAttribute, isZeroAnimationDuration, isBreakpoint } from "../../core/dom.js";
|
|
15
15
|
import { i18nGoBack } from "../../core/i18n.js";
|
|
16
16
|
import { SbbUpdateSchedulerMixin } from "../../core/mixins.js";
|
|
@@ -290,9 +290,7 @@ const style = css`*,
|
|
|
290
290
|
let nextId = 0;
|
|
291
291
|
let SbbNavigationSectionElement = (() => {
|
|
292
292
|
var _titleContent_accessor_storage, _trigger_accessor_storage, _accessibilityLabel_accessor_storage, _accessibilityBackLabel_accessor_storage, _a;
|
|
293
|
-
let _classDecorators = [customElement("sbb-navigation-section")
|
|
294
|
-
slot: "navigation-section"
|
|
295
|
-
})];
|
|
293
|
+
let _classDecorators = [customElement("sbb-navigation-section")];
|
|
296
294
|
let _classDescriptor;
|
|
297
295
|
let _classExtraInitializers = [];
|
|
298
296
|
let _classThis;
|
|
@@ -323,7 +321,6 @@ let SbbNavigationSectionElement = (() => {
|
|
|
323
321
|
__privateSet(this, _accessibilityBackLabel_accessor_storage, (__runInitializers(this, _accessibilityLabel_extraInitializers), __runInitializers(this, _accessibilityBackLabel_initializers, "")));
|
|
324
322
|
this._firstLevelNavigation = (__runInitializers(this, _accessibilityBackLabel_extraInitializers), null);
|
|
325
323
|
this._triggerElement = null;
|
|
326
|
-
this._triggerIdReferenceController = new SbbIdReferenceController(this, "trigger");
|
|
327
324
|
this._language = new SbbLanguageController(this);
|
|
328
325
|
this._focusTrapController = new SbbFocusTrapController(this);
|
|
329
326
|
this._lastKeydownEvent = null;
|
|
@@ -367,7 +364,8 @@ let SbbNavigationSectionElement = (() => {
|
|
|
367
364
|
}
|
|
368
365
|
/**
|
|
369
366
|
* The element that will trigger the navigation section.
|
|
370
|
-
*
|
|
367
|
+
*
|
|
368
|
+
* For attribute usage, provide an id reference.
|
|
371
369
|
*/
|
|
372
370
|
get trigger() {
|
|
373
371
|
return __privateGet(this, _trigger_accessor_storage);
|
|
@@ -469,14 +467,13 @@ let SbbNavigationSectionElement = (() => {
|
|
|
469
467
|
}
|
|
470
468
|
// Check if the trigger is valid and attach click event listeners.
|
|
471
469
|
_configureTrigger() {
|
|
472
|
-
var _a2;
|
|
473
|
-
|
|
474
|
-
if (triggerElement === this._triggerElement) {
|
|
470
|
+
var _a2, _b, _c;
|
|
471
|
+
if (this.trigger === this._triggerElement) {
|
|
475
472
|
return;
|
|
476
473
|
}
|
|
477
474
|
(_a2 = this._triggerAbortController) == null ? void 0 : _a2.abort();
|
|
478
475
|
removeAriaOverlayTriggerAttributes(this._triggerElement);
|
|
479
|
-
this._triggerElement =
|
|
476
|
+
this._triggerElement = this.trigger;
|
|
480
477
|
if (!this._triggerElement) {
|
|
481
478
|
return;
|
|
482
479
|
}
|
|
@@ -488,6 +485,7 @@ let SbbNavigationSectionElement = (() => {
|
|
|
488
485
|
this._triggerElement.addEventListener("click", () => this.open(), {
|
|
489
486
|
signal: this._triggerAbortController.signal
|
|
490
487
|
});
|
|
488
|
+
this._firstLevelNavigation = (_c = (_b = this._triggerElement) == null ? void 0 : _b.closest) == null ? void 0 : _c.call(_b, "sbb-navigation");
|
|
491
489
|
}
|
|
492
490
|
_isNavigationButton(trigger) {
|
|
493
491
|
return (trigger == null ? void 0 : trigger.localName) === "sbb-navigation-button";
|
|
@@ -537,12 +535,13 @@ let SbbNavigationSectionElement = (() => {
|
|
|
537
535
|
(_a2 = this.querySelector(":is(sbb-navigation-button, sbb-navigation-link).sbb-active")) == null ? void 0 : _a2.toggleAttribute("data-action-active", true);
|
|
538
536
|
}
|
|
539
537
|
connectedCallback() {
|
|
540
|
-
var _a2, _b;
|
|
541
538
|
super.connectedCallback();
|
|
539
|
+
this.slot || (this.slot = "navigation-section");
|
|
542
540
|
this.id || (this.id = `sbb-navigation-section-${nextId++}`);
|
|
543
541
|
this._state || (this._state = "closed");
|
|
544
|
-
this.
|
|
545
|
-
|
|
542
|
+
if (this.hasUpdated) {
|
|
543
|
+
this._configureTrigger();
|
|
544
|
+
}
|
|
546
545
|
}
|
|
547
546
|
disconnectedCallback() {
|
|
548
547
|
var _a2, _b;
|
|
@@ -557,6 +556,10 @@ let SbbNavigationSectionElement = (() => {
|
|
|
557
556
|
this._configureTrigger();
|
|
558
557
|
}
|
|
559
558
|
}
|
|
559
|
+
firstUpdated(changedProperties) {
|
|
560
|
+
super.firstUpdated(changedProperties);
|
|
561
|
+
this._configureTrigger();
|
|
562
|
+
}
|
|
560
563
|
render() {
|
|
561
564
|
return html`
|
|
562
565
|
<div class="sbb-navigation-section__container">
|
|
@@ -595,7 +598,7 @@ let SbbNavigationSectionElement = (() => {
|
|
|
595
598
|
}, _titleContent_accessor_storage = new WeakMap(), _trigger_accessor_storage = new WeakMap(), _accessibilityLabel_accessor_storage = new WeakMap(), _accessibilityBackLabel_accessor_storage = new WeakMap(), _classThis = _a, (() => {
|
|
596
599
|
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
597
600
|
_titleContent_decorators = [forceType(), property({ attribute: "title-content", reflect: true, converter: omitEmptyConverter })];
|
|
598
|
-
_trigger_decorators = [property()];
|
|
601
|
+
_trigger_decorators = [idReference(), property()];
|
|
599
602
|
_accessibilityLabel_decorators = [forceType(), property({ attribute: "accessibility-label" })];
|
|
600
603
|
_accessibilityBackLabel_decorators = [forceType(), property({ attribute: "accessibility-back-label" })];
|
|
601
604
|
__esDecorate(_a, null, _titleContent_decorators, { kind: "accessor", name: "titleContent", static: false, private: false, access: { has: (obj) => "titleContent" in obj, get: (obj) => obj.titleContent, set: (obj, value) => {
|
|
@@ -619,4 +622,4 @@ let SbbNavigationSectionElement = (() => {
|
|
|
619
622
|
export {
|
|
620
623
|
SbbNavigationSectionElement
|
|
621
624
|
};
|
|
622
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi1zZWN0aW9uL25hdmlnYXRpb24tc2VjdGlvbi5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgaXNTZXJ2ZXIsXG4gIExpdEVsZW1lbnQsXG4gIG5vdGhpbmcsXG4gIHR5cGUgUHJvcGVydHlEZWNsYXJhdGlvbixcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQge1xuICBJU19GT0NVU0FCTEVfUVVFUlksXG4gIFNiYkZvY3VzVHJhcENvbnRyb2xsZXIsXG4gIHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvcixcbn0gZnJvbSAnLi4vLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7XG4gIFNiYklkUmVmZXJlbmNlQ29udHJvbGxlcixcbiAgU2JiTGFuZ3VhZ2VDb250cm9sbGVyLFxuICBTYmJNZWRpYU1hdGNoZXJDb250cm9sbGVyLFxuICBTYmJNZWRpYVF1ZXJ5QnJlYWtwb2ludE1lZGl1bUFuZEJlbG93LFxufSBmcm9tICcuLi8uLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGZvcmNlVHlwZSwgaG9zdEF0dHJpYnV0ZXMsIG9taXRFbXB0eUNvbnZlcnRlciB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyBpc0JyZWFrcG9pbnQsIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uLCBzZXRPclJlbW92ZUF0dHJpYnV0ZSB9IGZyb20gJy4uLy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IGkxOG5Hb0JhY2sgfSBmcm9tICcuLi8uLi9jb3JlL2kxOG4uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJPcGVuZWRDbG9zZWRTdGF0ZSB9IGZyb20gJy4uLy4uL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5pbXBvcnQgeyBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbiB9IGZyb20gJy4uLy4uL2NvcmUvbWl4aW5zLmpzJztcbmltcG9ydCB7XG4gIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXMsXG4gIHNldEFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXMsXG59IGZyb20gJy4uLy4uL2NvcmUvb3ZlcmxheS5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IH0gZnJvbSAnLi4vbmF2aWdhdGlvbi1idXR0b24uanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJOYXZpZ2F0aW9uTGlua0VsZW1lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uLWxpbmsuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJOYXZpZ2F0aW9uRWxlbWVudCB9IGZyb20gJy4uL25hdmlnYXRpb24uanMnO1xuXG5pbXBvcnQgc3R5bGUgZnJvbSAnLi9uYXZpZ2F0aW9uLXNlY3Rpb24uc2Nzcz9saXQmaW5saW5lJztcblxuaW1wb3J0ICcuLi8uLi9idXR0b24vdHJhbnNwYXJlbnQtYnV0dG9uLmpzJztcbmltcG9ydCAnLi4vLi4vZGl2aWRlci5qcyc7XG5cbmxldCBuZXh0SWQgPSAwO1xuXG4vKipcbiAqIEl0IGNhbiBiZSB1c2VkIGFzIGEgY29udGFpbmVyIGZvciBgc2JiLW5hdmlnYXRpb24tbGlzdGAgd2l0aGluIGEgYHNiYi1uYXZpZ2F0aW9uYC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IGludG8gdGhlIGBzYmItbmF2aWdhdGlvbi1zZWN0aW9uYC5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLW5hdmlnYXRpb24tc2VjdGlvbicpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICBzbG90OiAnbmF2aWdhdGlvbi1zZWN0aW9uJyxcbn0pXG5jbGFzcyBTYmJOYXZpZ2F0aW9uU2VjdGlvbkVsZW1lbnQgZXh0ZW5kcyBTYmJVcGRhdGVTY2hlZHVsZXJNaXhpbihMaXRFbGVtZW50KSB7XG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuXG4gIC8qKlxuICAgKiBUaGUgbGFiZWwgdG8gYmUgc2hvd24gYmVmb3JlIHRoZSBhY3Rpb24gbGlzdC5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICd0aXRsZS1jb250ZW50JywgcmVmbGVjdDogdHJ1ZSwgY29udmVydGVyOiBvbWl0RW1wdHlDb252ZXJ0ZXIgfSlcbiAgcHVibGljIGFjY2Vzc29yIHRpdGxlQ29udGVudDogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoZSBlbGVtZW50IHRoYXQgd2lsbCB0cmlnZ2VyIHRoZSBuYXZpZ2F0aW9uIHNlY3Rpb24uXG4gICAqIEFjY2VwdHMgYm90aCBhIHN0cmluZyAoaWQgb2YgYW4gZWxlbWVudCkgb3IgYW4gU2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQuXG4gICAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgdHJpZ2dlcjogc3RyaW5nIHwgSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogVGhpcyB3aWxsIGJlIGZvcndhcmRlZCBhcyBhcmlhLWxhYmVsIHRvIHRoZSBuYXYgZWxlbWVudCBhbmQgaXMgcmVhZCBhcyBhIHRpdGxlIG9mIHRoZSBuYXZpZ2F0aW9uLXNlY3Rpb24uXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAnYWNjZXNzaWJpbGl0eS1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlMYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoaXMgd2lsbCBiZSBmb3J3YXJkZWQgYXMgYXJpYS1sYWJlbCB0byB0aGUgYmFjayBidXR0b24gZWxlbWVudC5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWJhY2stbGFiZWwnIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciBhY2Nlc3NpYmlsaXR5QmFja0xhYmVsOiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogVGhlIHN0YXRlIG9mIHRoZSBuYXZpZ2F0aW9uIHNlY3Rpb24uXG4gICAqL1xuICBwcml2YXRlIHNldCBfc3RhdGUoc3RhdGU6IFNiYk9wZW5lZENsb3NlZFN0YXRlKSB7XG4gICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnLCBzdGF0ZSk7XG4gICAgc2V0T3JSZW1vdmVBdHRyaWJ1dGUodGhpcywgJ2FyaWEtaGlkZGVuJywgdGhpcy5fc3RhdGUgIT09ICdvcGVuZWQnID8gJ3RydWUnIDogbnVsbCk7XG4gIH1cbiAgcHJpdmF0ZSBnZXQgX3N0YXRlKCk6IFNiYk9wZW5lZENsb3NlZFN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnKSBhcyBTYmJPcGVuZWRDbG9zZWRTdGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX2ZpcnN0TGV2ZWxOYXZpZ2F0aW9uPzogU2JiTmF2aWdhdGlvbkVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfdHJpZ2dlckVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3RyaWdnZXJBYm9ydENvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX3RyaWdnZXJJZFJlZmVyZW5jZUNvbnRyb2xsZXIgPSBuZXcgU2JiSWRSZWZlcmVuY2VDb250cm9sbGVyKHRoaXMsICd0cmlnZ2VyJyk7XG4gIHByaXZhdGUgX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIhOiBBYm9ydENvbnRyb2xsZXI7XG4gIHByaXZhdGUgX2xhbmd1YWdlID0gbmV3IFNiYkxhbmd1YWdlQ29udHJvbGxlcih0aGlzKTtcbiAgcHJpdmF0ZSBfZm9jdXNUcmFwQ29udHJvbGxlciA9IG5ldyBTYmJGb2N1c1RyYXBDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9sYXN0S2V5ZG93bkV2ZW50OiBLZXlib2FyZEV2ZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLmFkZENvbnRyb2xsZXIoXG4gICAgICBuZXcgU2JiTWVkaWFNYXRjaGVyQ29udHJvbGxlcih0aGlzLCB7XG4gICAgICAgIFtTYmJNZWRpYVF1ZXJ5QnJlYWtwb2ludE1lZGl1bUFuZEJlbG93XTogKG1hdGNoZXMpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdjbG9zZWQnKSB7XG4gICAgICAgICAgICB0aGlzLl9zZXROYXZpZ2F0aW9uSW5lcnQobWF0Y2hlcyk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgKTtcblxuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdrZXlkb3duJywgKGUpID0+IHtcbiAgICAgIHRoaXMuX2xhc3RLZXlkb3duRXZlbnQgPSBlO1xuICAgIH0pO1xuXG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2ZvY3Vzb3V0JywgKGUpID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgZS5yZWxhdGVkVGFyZ2V0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgJiZcbiAgICAgICAgIXRoaXMuY29udGFpbnMoZS5yZWxhdGVkVGFyZ2V0KSAmJlxuICAgICAgICBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnICYmXG4gICAgICAgIHRoaXMuX2xhc3RLZXlkb3duRXZlbnQ/LmtleSA9PT0gJ1RhYicgJiZcbiAgICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnRcbiAgICAgICkge1xuICAgICAgICBjb25zdCBuYXZpZ2F0aW9uRWxlbWVudCA9IHRoaXMuY2xvc2VzdDxTYmJOYXZpZ2F0aW9uRWxlbWVudD4oJ3NiYi1uYXZpZ2F0aW9uJyk7XG4gICAgICAgIGNvbnN0IGZvY3VzYWJsZUVsZW1lbnRzID0gQXJyYXkuZnJvbShcbiAgICAgICAgICBuYXZpZ2F0aW9uRWxlbWVudD8ucXVlcnlTZWxlY3RvckFsbDxIVE1MRWxlbWVudD4oSVNfRk9DVVNBQkxFX1FVRVJZKSA/PyBbXSxcbiAgICAgICAgKS5maWx0ZXIoKGUpID0+ICF0aGlzLmNvbnRhaW5zKGUpKTtcblxuICAgICAgICBpZiAodGhpcy5fbGFzdEtleWRvd25FdmVudC5zaGlmdEtleSB8fCAhZm9jdXNhYmxlRWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LmZvY3VzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgdHJpZ2dlckluZGV4ID0gZm9jdXNhYmxlRWxlbWVudHMuaW5kZXhPZih0aGlzLl90cmlnZ2VyRWxlbWVudCk7XG4gICAgICAgICAgKGZvY3VzYWJsZUVsZW1lbnRzW3RyaWdnZXJJbmRleCArIDFdID8/IG5hdmlnYXRpb25FbGVtZW50IS5jbG9zZUJ1dHRvbik/LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyB0aGUgbmF2aWdhdGlvbiBzZWN0aW9uIG9uIHRyaWdnZXIgY2xpY2suXG4gICAqL1xuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdjbG9zZWQnIHx8ICF0aGlzLmhhc1VwZGF0ZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5faXNOYXZpZ2F0aW9uQnV0dG9uKHRoaXMuX3RyaWdnZXJFbGVtZW50KSkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/Lm1hcmtlcj8uc2VsZWN0KHRoaXMuX3RyaWdnZXJFbGVtZW50KTtcbiAgICB9XG5cbiAgICB0aGlzLl9jbG9zZVByZXZpb3VzTmF2aWdhdGlvblNlY3Rpb24oKTtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuaW5nJztcbiAgICB0aGlzLnN0YXJ0VXBkYXRlKCk7XG4gICAgdGhpcy5pbmVydCA9IHRydWU7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICd0cnVlJyk7XG5cbiAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZGlyZWN0bHkgc2V0IHRoZSBgb3BlbmVkYCBzdGF0ZS5cbiAgICBpZiAodGhpcy5faXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKSkge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1plcm9BbmltYXRpb25EdXJhdGlvbih0aGlzLCAnLS1zYmItbmF2aWdhdGlvbi1zZWN0aW9uLWFuaW1hdGlvbi1kdXJhdGlvbicpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlT3BlbmluZygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuaW5lcnQgPSBmYWxzZTtcbiAgICB0aGlzLl9hdHRhY2hXaW5kb3dFdmVudHMoKTtcbiAgICB0aGlzLl9zZXROYXZpZ2F0aW9uSW5lcnQoKTtcbiAgICB0aGlzLl9mb2N1c1RyYXBDb250cm9sbGVyLmZvY3VzSW5pdGlhbEVsZW1lbnQoKTtcbiAgICB0aGlzLl9jaGVja0FjdGl2ZUFjdGlvbigpO1xuICAgIHRoaXMuY29tcGxldGVVcGRhdGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZUNsb3NpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5fc3RhdGUgPSAnY2xvc2VkJztcbiAgICB0aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3IoJy5zYmItbmF2aWdhdGlvbi1zZWN0aW9uX19jb250YWluZXInKT8uc2Nyb2xsVG8oMCwgMCk7XG4gICAgdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl9yZXNldExpc3RzKCk7XG4gICAgdGhpcy5fc2V0TmF2aWdhdGlvbkluZXJ0KCk7XG4gICAgaWYgKHRoaXMuX2lzQmVsb3dMYXJnZSgpICYmIHRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgICB0aGlzLmNvbXBsZXRlVXBkYXRlKCk7XG4gIH1cblxuICBwcml2YXRlIF9jbG9zZVByZXZpb3VzTmF2aWdhdGlvblNlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5fZmlyc3RMZXZlbE5hdmlnYXRpb24/LmFjdGl2ZU5hdmlnYXRpb25TZWN0aW9uPy5jbG9zZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgbmF2aWdhdGlvbiBzZWN0aW9uLlxuICAgKi9cbiAgcHVibGljIGNsb3NlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSAhPT0gJ29wZW5lZCcpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9zdGF0ZSA9ICdjbG9zaW5nJztcbiAgICB0aGlzLnN0YXJ0VXBkYXRlKCk7XG4gICAgdGhpcy5pbmVydCA9IHRydWU7XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQ/LnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsICdmYWxzZScpO1xuXG4gICAgLy8gSWYgdGhlIGFuaW1hdGlvbiBkdXJhdGlvbiBpcyB6ZXJvLCB0aGUgYW5pbWF0aW9uZW5kIGV2ZW50IGlzIG5vdCBhbHdheXMgZmlyZWQgcmVsaWFibHkuXG4gICAgLy8gSW4gdGhpcyBjYXNlIHdlIGRpcmVjdGx5IHNldCB0aGUgYGNsb3NlZGAgc3RhdGUuXG4gICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgdHJpZ2dlciBpcyB2YWxpZCBhbmQgYXR0YWNoIGNsaWNrIGV2ZW50IGxpc3RlbmVycy5cbiAgcHJpdmF0ZSBfY29uZmlndXJlVHJpZ2dlcigpOiB2b2lkIHtcbiAgICBjb25zdCB0cmlnZ2VyRWxlbWVudCA9IChcbiAgICAgIHRoaXMudHJpZ2dlciBpbnN0YW5jZW9mIEhUTUxFbGVtZW50ID8gdGhpcy50cmlnZ2VyIDogdGhpcy5fdHJpZ2dlcklkUmVmZXJlbmNlQ29udHJvbGxlci5maW5kKClcbiAgICApIGFzIFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IHwgbnVsbDtcblxuICAgIGlmICh0cmlnZ2VyRWxlbWVudCA9PT0gdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHJlbW92ZUFyaWFPdmVybGF5VHJpZ2dlckF0dHJpYnV0ZXModGhpcy5fdHJpZ2dlckVsZW1lbnQpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50ID0gdHJpZ2dlckVsZW1lbnQ7XG5cbiAgICBpZiAoIXRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2V0QXJpYU92ZXJsYXlUcmlnZ2VyQXR0cmlidXRlcyh0aGlzLl90cmlnZ2VyRWxlbWVudCwgJ21lbnUnLCB0aGlzLmlkLCB0aGlzLl9zdGF0ZSk7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgICBpZiAodGhpcy5faXNOYXZpZ2F0aW9uQnV0dG9uKHRoaXMuX3RyaWdnZXJFbGVtZW50KSkge1xuICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuY29ubmVjdGVkU2VjdGlvbiA9IHRoaXM7XG4gICAgfVxuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gdGhpcy5vcGVuKCksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9pc05hdmlnYXRpb25CdXR0b24odHJpZ2dlcjogSFRNTEVsZW1lbnQgfCBudWxsKTogdHJpZ2dlciBpcyBTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudCB7XG4gICAgcmV0dXJuIHRyaWdnZXI/LmxvY2FsTmFtZSA9PT0gJ3NiYi1uYXZpZ2F0aW9uLWJ1dHRvbic7XG4gIH1cblxuICBwcml2YXRlIF9zZXROYXZpZ2F0aW9uSW5lcnQoaXNCZWxvd0xhcmdlOiBib29sZWFuID0gdGhpcy5faXNCZWxvd0xhcmdlKCkpOiB2b2lkIHtcbiAgICBjb25zdCBuYXZpZ2F0aW9uQ29udGVudCA9IHRoaXMuX2ZpcnN0TGV2ZWxOYXZpZ2F0aW9uPy5uYXZpZ2F0aW9uQ29udGVudDtcbiAgICBpZiAobmF2aWdhdGlvbkNvbnRlbnQpIHtcbiAgICAgIG5hdmlnYXRpb25Db250ZW50LmluZXJ0ID0gaXNCZWxvd0xhcmdlICYmIHRoaXMuX3N0YXRlICE9PSAnY2xvc2VkJztcbiAgICB9XG4gIH1cblxuICAvLyBJbiByYXJlIGNhc2VzIGl0IGNhbiBiZSB0aGF0IHRoZSBhbmltYXRpb25FbmQgZXZlbnQgaXMgdHJpZ2dlcmVkIHR3aWNlLlxuICAvLyBUbyBhdm9pZCBlbnRlcmluZyBhIGNvcnJ1cHQgc3RhdGUsIGV4aXQgd2hlbiBzdGF0ZSBpcyBub3QgZXhwZWN0ZWQuXG4gIHByaXZhdGUgX29uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnb3BlbicgJiYgdGhpcy5fc3RhdGUgPT09ICdvcGVuaW5nJykge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyAmJiB0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NpbmcnKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVzZXRMaXN0cygpOiB2b2lkIHtcbiAgICBBcnJheS5mcm9tKFxuICAgICAgdGhpcy5xdWVyeVNlbGVjdG9yQWxsPFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IHwgU2JiTmF2aWdhdGlvbkxpbmtFbGVtZW50PihcbiAgICAgICAgJ1tkYXRhLXNlY3Rpb24tYWN0aW9uXVtkYXRhLWFjdGlvbi1hY3RpdmVdJyxcbiAgICAgICkgPz8gW10sXG4gICAgKS5mb3JFYWNoKChhY3Rpb24pID0+IGFjdGlvbi5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtYWN0aW9uLWFjdGl2ZScpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2F0dGFjaFdpbmRvd0V2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB0aGlzLl9vbktleWRvd25FdmVudChldmVudCksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG5cbiAgICAvLyBDbG9zZSBuYXZpZ2F0aW9uIHNlY3Rpb24gb24gYWN0aW9uIGNsaWNrIG9yIHNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tY2xvc2UgY2xpY2tcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLl9oYW5kbGVOYXZpZ2F0aW9uU2VjdGlvbkNsb3NlLCB7XG4gICAgICBzaWduYWw6IHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGNsaWNrIHdhcyB0cmlnZ2VyZWQgb24gYW4gZWxlbWVudCB0aGF0IHNob3VsZCBjbG9zZSB0aGUgc2VjdGlvbi5cbiAgcHJpdmF0ZSBfaGFuZGxlTmF2aWdhdGlvblNlY3Rpb25DbG9zZSA9IChldmVudDogRXZlbnQpOiB2b2lkID0+IHtcbiAgICBpZiAoXG4gICAgICBldmVudFxuICAgICAgICAuY29tcG9zZWRQYXRoKClcbiAgICAgICAgLmZpbHRlcigoZWwpID0+IGVsIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpXG4gICAgICAgIC5zb21lKChlbCkgPT4gdGhpcy5faXNDbG9zZUVsZW1lbnQoZWwpKVxuICAgICkge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIF9pc0Nsb3NlRWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICBlbGVtZW50Lm5vZGVOYW1lID09PSAnQScgfHxcbiAgICAgICghZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykgJiZcbiAgICAgICAgKGVsZW1lbnQuaGFzQXR0cmlidXRlKCdzYmItbmF2aWdhdGlvbi1jbG9zZScpIHx8XG4gICAgICAgICAgZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ3NiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tY2xvc2UnKSkpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzQmVsb3dMYXJnZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNCcmVha3BvaW50KCd6ZXJvJywgJ2xhcmdlJykgPz8gZmFsc2U7XG4gIH1cblxuICAvLyBDbG9zZXMgdGhlIG5hdmlnYXRpb24gb24gXCJFc2NcIiBrZXkgcHJlc3NlZC5cbiAgcHJpdmF0ZSBfb25LZXlkb3duRXZlbnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdvcGVuZWQnICYmIGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0FjdGl2ZUFjdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLnF1ZXJ5U2VsZWN0b3I8U2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQgfCBTYmJOYXZpZ2F0aW9uTGlua0VsZW1lbnQ+KFxuICAgICAgJzppcyhzYmItbmF2aWdhdGlvbi1idXR0b24sIHNiYi1uYXZpZ2F0aW9uLWxpbmspLnNiYi1hY3RpdmUnLFxuICAgICk/LnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1hY3Rpb24tYWN0aXZlJywgdHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLmlkIHx8PSBgc2JiLW5hdmlnYXRpb24tc2VjdGlvbi0ke25leHRJZCsrfWA7XG4gICAgdGhpcy5fc3RhdGUgfHw9ICdjbG9zZWQnO1xuICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgICB0aGlzLl9maXJzdExldmVsTmF2aWdhdGlvbiA9IHRoaXMuX3RyaWdnZXJFbGVtZW50Py5jbG9zZXN0Py4oJ3NiYi1uYXZpZ2F0aW9uJyk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudCA9IG51bGw7XG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyPy5hYm9ydCgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIHJlcXVlc3RVcGRhdGUoXG4gICAgbmFtZT86IFByb3BlcnR5S2V5LFxuICAgIG9sZFZhbHVlPzogdW5rbm93bixcbiAgICBvcHRpb25zPzogUHJvcGVydHlEZWNsYXJhdGlvbixcbiAgKTogdm9pZCB7XG4gICAgc3VwZXIucmVxdWVzdFVwZGF0ZShuYW1lLCBvbGRWYWx1ZSwgb3B0aW9ucyk7XG5cbiAgICBpZiAoIWlzU2VydmVyICYmICghbmFtZSB8fCBuYW1lID09PSAndHJpZ2dlcicpICYmIHRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgdGhpcy5fY29uZmlndXJlVHJpZ2dlcigpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2NvbnRhaW5lclwiPlxuICAgICAgICA8bmF2XG4gICAgICAgICAgQGFuaW1hdGlvbmVuZD0ke3RoaXMuX29uQW5pbWF0aW9uRW5kfVxuICAgICAgICAgIGNsYXNzPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvblwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PSR7IXRoaXMuYWNjZXNzaWJpbGl0eUxhYmVsID8gJ3RpdGxlJyA6IG5vdGhpbmd9XG4gICAgICAgICAgYXJpYS1sYWJlbD0ke3RoaXMuYWNjZXNzaWJpbGl0eUxhYmVsID8gdGhpcy5hY2Nlc3NpYmlsaXR5TGFiZWwgOiBub3RoaW5nfVxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX3dyYXBwZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX19jb250ZW50XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX19oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8IS0tIEJhY2sgYnV0dG9uIC0tPlxuICAgICAgICAgICAgICAgIDxzYmItdHJhbnNwYXJlbnQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICBpZD1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tYmFjay1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX19iYWNrXCJcbiAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9JHt0aGlzLmFjY2Vzc2liaWxpdHlCYWNrTGFiZWwgfHwgaTE4bkdvQmFja1t0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICAgICAgICAgIG5lZ2F0aXZlXG4gICAgICAgICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIGljb24tbmFtZT1cImNoZXZyb24tc21hbGwtbGVmdC1zbWFsbFwiXG4gICAgICAgICAgICAgICAgICBzYmItbmF2aWdhdGlvbi1zZWN0aW9uLWNsb3NlXG4gICAgICAgICAgICAgICAgPjwvc2JiLXRyYW5zcGFyZW50LWJ1dHRvbj5cblxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fdGl0bGVcIiBpZD1cInRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICA8c2xvdCBuYW1lPVwidGl0bGVcIj4ke3RoaXMudGl0bGVDb250ZW50fTwvc2xvdD5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uYXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItbmF2aWdhdGlvbi1zZWN0aW9uJzogU2JiTmF2aWdhdGlvblNlY3Rpb25FbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiX2EiLCJlIiwiX2IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUF3Q0EsSUFBSSxTQUFTO0lBWVAsK0JBQTJCLE1BQUE7O0FBSmhDLE1BQUEsbUJBQUEsQ0FBQSxjQUFjLHdCQUF3QixHQUN0QyxlQUFlO0FBQUEsSUFDZCxNQUFNO0FBQUEsRUFBQSxDQUNQLENBQUM7Ozs7b0JBQ3dDLHdCQUF3QixVQUFVOzs7Ozs7Ozs7Ozs7O0FBQTFDLEVBQUEsbUJBQVEsWUFBbUM7QUFBQSxJQW1EM0UsY0FBQTs7O0FBM0NBO0FBT0E7QUFPQTtBQU9BO0FBckJnQix5QkFBQSxnQ0FBQSxrQkFBQSxNQUFBLDRCQUF1QixFQUFFO0FBT3pCLHlCQUFBLDRCQUFBLGtCQUFBLE1BQUEsK0JBQUEsR0FBQSxrQkFBQSxNQUFBLHVCQUF1QyxJQUFJO0FBTzNDLHlCQUFBLHVDQUFBLGtCQUFBLE1BQUEsMEJBQUEsR0FBQSxrQkFBQSxNQUFBLGtDQUE2QixFQUFFO0FBTy9CLHlCQUFBLDJDQUFBLGtCQUFBLE1BQUEscUNBQUEsR0FBQSxrQkFBQSxNQUFBLHNDQUFpQyxFQUFFO0FBYTNDLFdBQXFCLHlCQUFBLGtC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
|
|
625
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1zZWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25hdmlnYXRpb24vbmF2aWdhdGlvbi1zZWN0aW9uL25hdmlnYXRpb24tc2VjdGlvbi5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgaXNTZXJ2ZXIsXG4gIExpdEVsZW1lbnQsXG4gIG5vdGhpbmcsXG4gIHR5cGUgUHJvcGVydHlEZWNsYXJhdGlvbixcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQge1xuICBJU19GT0NVU0FCTEVfUVVFUlksXG4gIFNiYkZvY3VzVHJhcENvbnRyb2xsZXIsXG4gIHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvcixcbn0gZnJvbSAnLi4vLi4vY29yZS9hMTF5LmpzJztcbmltcG9ydCB7XG4gIFNiYkxhbmd1YWdlQ29udHJvbGxlcixcbiAgU2JiTWVkaWFNYXRjaGVyQ29udHJvbGxlcixcbiAgU2JiTWVkaWFRdWVyeUJyZWFrcG9pbnRNZWRpdW1BbmRCZWxvdyxcbn0gZnJvbSAnLi4vLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUsIGlkUmVmZXJlbmNlLCBvbWl0RW1wdHlDb252ZXJ0ZXIgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgaXNCcmVha3BvaW50LCBpc1plcm9BbmltYXRpb25EdXJhdGlvbiwgc2V0T3JSZW1vdmVBdHRyaWJ1dGUgfSBmcm9tICcuLi8uLi9jb3JlL2RvbS5qcyc7XG5pbXBvcnQgeyBpMThuR29CYWNrIH0gZnJvbSAnLi4vLi4vY29yZS9pMThuLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiT3BlbmVkQ2xvc2VkU3RhdGUgfSBmcm9tICcuLi8uLi9jb3JlL2ludGVyZmFjZXMuanMnO1xuaW1wb3J0IHsgU2JiVXBkYXRlU2NoZWR1bGVyTWl4aW4gfSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQge1xuICByZW1vdmVBcmlhT3ZlcmxheVRyaWdnZXJBdHRyaWJ1dGVzLFxuICBzZXRBcmlhT3ZlcmxheVRyaWdnZXJBdHRyaWJ1dGVzLFxufSBmcm9tICcuLi8uLi9jb3JlL292ZXJsYXkuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudCB9IGZyb20gJy4uL25hdmlnYXRpb24tYnV0dG9uLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiTmF2aWdhdGlvbkxpbmtFbGVtZW50IH0gZnJvbSAnLi4vbmF2aWdhdGlvbi1saW5rLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiTmF2aWdhdGlvbkVsZW1lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vbmF2aWdhdGlvbi1zZWN0aW9uLnNjc3M/bGl0JmlubGluZSc7XG5cbmltcG9ydCAnLi4vLi4vYnV0dG9uL3RyYW5zcGFyZW50LWJ1dHRvbi5qcyc7XG5pbXBvcnQgJy4uLy4uL2RpdmlkZXIuanMnO1xuXG5sZXQgbmV4dElkID0gMDtcblxuLyoqXG4gKiBJdCBjYW4gYmUgdXNlZCBhcyBhIGNvbnRhaW5lciBmb3IgYHNiYi1uYXZpZ2F0aW9uLWxpc3RgIHdpdGhpbiBhIGBzYmItbmF2aWdhdGlvbmAuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgY29udGVudCBpbnRvIHRoZSBgc2JiLW5hdmlnYXRpb24tc2VjdGlvbmAuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1uYXZpZ2F0aW9uLXNlY3Rpb24nKVxuY2xhc3MgU2JiTmF2aWdhdGlvblNlY3Rpb25FbGVtZW50IGV4dGVuZHMgU2JiVXBkYXRlU2NoZWR1bGVyTWl4aW4oTGl0RWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAvKipcbiAgICogVGhlIGxhYmVsIHRvIGJlIHNob3duIGJlZm9yZSB0aGUgYWN0aW9uIGxpc3QuXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndGl0bGUtY29udGVudCcsIHJlZmxlY3Q6IHRydWUsIGNvbnZlcnRlcjogb21pdEVtcHR5Q29udmVydGVyIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciB0aXRsZUNvbnRlbnQ6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgZWxlbWVudCB0aGF0IHdpbGwgdHJpZ2dlciB0aGUgbmF2aWdhdGlvbiBzZWN0aW9uLlxuICAgKlxuICAgKiBGb3IgYXR0cmlidXRlIHVzYWdlLCBwcm92aWRlIGFuIGlkIHJlZmVyZW5jZS5cbiAgICovXG4gIEBpZFJlZmVyZW5jZSgpXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBhY2Nlc3NvciB0cmlnZ2VyOiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBUaGlzIHdpbGwgYmUgZm9yd2FyZGVkIGFzIGFyaWEtbGFiZWwgdG8gdGhlIG5hdiBlbGVtZW50IGFuZCBpcyByZWFkIGFzIGEgdGl0bGUgb2YgdGhlIG5hdmlnYXRpb24tc2VjdGlvbi5cbiAgICovXG4gIEBmb3JjZVR5cGUoKVxuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICdhY2Nlc3NpYmlsaXR5LWxhYmVsJyB9KVxuICBwdWJsaWMgYWNjZXNzb3IgYWNjZXNzaWJpbGl0eUxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogVGhpcyB3aWxsIGJlIGZvcndhcmRlZCBhcyBhcmlhLWxhYmVsIHRvIHRoZSBiYWNrIGJ1dHRvbiBlbGVtZW50LlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ2FjY2Vzc2liaWxpdHktYmFjay1sYWJlbCcgfSlcbiAgcHVibGljIGFjY2Vzc29yIGFjY2Vzc2liaWxpdHlCYWNrTGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhdGUgb2YgdGhlIG5hdmlnYXRpb24gc2VjdGlvbi5cbiAgICovXG4gIHByaXZhdGUgc2V0IF9zdGF0ZShzdGF0ZTogU2JiT3BlbmVkQ2xvc2VkU3RhdGUpIHtcbiAgICB0aGlzLnNldEF0dHJpYnV0ZSgnZGF0YS1zdGF0ZScsIHN0YXRlKTtcbiAgICBzZXRPclJlbW92ZUF0dHJpYnV0ZSh0aGlzLCAnYXJpYS1oaWRkZW4nLCB0aGlzLl9zdGF0ZSAhPT0gJ29wZW5lZCcgPyAndHJ1ZScgOiBudWxsKTtcbiAgfVxuICBwcml2YXRlIGdldCBfc3RhdGUoKTogU2JiT3BlbmVkQ2xvc2VkU3RhdGUge1xuICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgnZGF0YS1zdGF0ZScpIGFzIFNiYk9wZW5lZENsb3NlZFN0YXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBfZmlyc3RMZXZlbE5hdmlnYXRpb24/OiBTYmJOYXZpZ2F0aW9uRWxlbWVudCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF90cmlnZ2VyRWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfdHJpZ2dlckFib3J0Q29udHJvbGxlciE6IEFib3J0Q29udHJvbGxlcjtcbiAgcHJpdmF0ZSBfd2luZG93RXZlbnRzQ29udHJvbGxlciE6IEFib3J0Q29udHJvbGxlcjtcbiAgcHJpdmF0ZSBfbGFuZ3VhZ2UgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuICBwcml2YXRlIF9mb2N1c1RyYXBDb250cm9sbGVyID0gbmV3IFNiYkZvY3VzVHJhcENvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX2xhc3RLZXlkb3duRXZlbnQ6IEtleWJvYXJkRXZlbnQgfCBudWxsID0gbnVsbDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMuYWRkQ29udHJvbGxlcihcbiAgICAgIG5ldyBTYmJNZWRpYU1hdGNoZXJDb250cm9sbGVyKHRoaXMsIHtcbiAgICAgICAgW1NiYk1lZGlhUXVlcnlCcmVha3BvaW50TWVkaXVtQW5kQmVsb3ddOiAobWF0Y2hlcykgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLl9zdGF0ZSAhPT0gJ2Nsb3NlZCcpIHtcbiAgICAgICAgICAgIHRoaXMuX3NldE5hdmlnYXRpb25JbmVydChtYXRjaGVzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2tleWRvd24nLCAoZSkgPT4ge1xuICAgICAgdGhpcy5fbGFzdEtleWRvd25FdmVudCA9IGU7XG4gICAgfSk7XG5cbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignZm9jdXNvdXQnLCAoZSkgPT4ge1xuICAgICAgaWYgKFxuICAgICAgICBlLnJlbGF0ZWRUYXJnZXQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCAmJlxuICAgICAgICAhdGhpcy5jb250YWlucyhlLnJlbGF0ZWRUYXJnZXQpICYmXG4gICAgICAgIHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvci5tb3N0UmVjZW50TW9kYWxpdHkgPT09ICdrZXlib2FyZCcgJiZcbiAgICAgICAgdGhpcy5fbGFzdEtleWRvd25FdmVudD8ua2V5ID09PSAnVGFiJyAmJlxuICAgICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudFxuICAgICAgKSB7XG4gICAgICAgIGNvbnN0IG5hdmlnYXRpb25FbGVtZW50ID0gdGhpcy5jbG9zZXN0PFNiYk5hdmlnYXRpb25FbGVtZW50Pignc2JiLW5hdmlnYXRpb24nKTtcbiAgICAgICAgY29uc3QgZm9jdXNhYmxlRWxlbWVudHMgPSBBcnJheS5mcm9tKFxuICAgICAgICAgIG5hdmlnYXRpb25FbGVtZW50Py5xdWVyeVNlbGVjdG9yQWxsPEhUTUxFbGVtZW50PihJU19GT0NVU0FCTEVfUVVFUlkpID8/IFtdLFxuICAgICAgICApLmZpbHRlcigoZSkgPT4gIXRoaXMuY29udGFpbnMoZSkpO1xuXG4gICAgICAgIGlmICh0aGlzLl9sYXN0S2V5ZG93bkV2ZW50LnNoaWZ0S2V5IHx8ICFmb2N1c2FibGVFbGVtZW50cy5sZW5ndGgpIHtcbiAgICAgICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudD8uZm9jdXMoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCB0cmlnZ2VySW5kZXggPSBmb2N1c2FibGVFbGVtZW50cy5pbmRleE9mKHRoaXMuX3RyaWdnZXJFbGVtZW50KTtcbiAgICAgICAgICAoZm9jdXNhYmxlRWxlbWVudHNbdHJpZ2dlckluZGV4ICsgMV0gPz8gbmF2aWdhdGlvbkVsZW1lbnQhLmNsb3NlQnV0dG9uKT8uZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zIHRoZSBuYXZpZ2F0aW9uIHNlY3Rpb24gb24gdHJpZ2dlciBjbGljay5cbiAgICovXG4gIHB1YmxpYyBvcGVuKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSAhPT0gJ2Nsb3NlZCcgfHwgIXRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9pc05hdmlnYXRpb25CdXR0b24odGhpcy5fdHJpZ2dlckVsZW1lbnQpKSB7XG4gICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudD8ubWFya2VyPy5zZWxlY3QodGhpcy5fdHJpZ2dlckVsZW1lbnQpO1xuICAgIH1cblxuICAgIHRoaXMuX2Nsb3NlUHJldmlvdXNOYXZpZ2F0aW9uU2VjdGlvbigpO1xuICAgIHRoaXMuX3N0YXRlID0gJ29wZW5pbmcnO1xuICAgIHRoaXMuc3RhcnRVcGRhdGUoKTtcbiAgICB0aGlzLmluZXJ0ID0gdHJ1ZTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudD8uc2V0QXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJywgJ3RydWUnKTtcblxuICAgIC8vIElmIHRoZSBhbmltYXRpb24gZHVyYXRpb24gaXMgemVybywgdGhlIGFuaW1hdGlvbmVuZCBldmVudCBpcyBub3QgYWx3YXlzIGZpcmVkIHJlbGlhYmx5LlxuICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBvcGVuZWRgIHN0YXRlLlxuICAgIGlmICh0aGlzLl9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpKSB7XG4gICAgICB0aGlzLl9oYW5kbGVPcGVuaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKHRoaXMsICctLXNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVPcGVuaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ29wZW5lZCc7XG4gICAgdGhpcy5pbmVydCA9IGZhbHNlO1xuICAgIHRoaXMuX2F0dGFjaFdpbmRvd0V2ZW50cygpO1xuICAgIHRoaXMuX3NldE5hdmlnYXRpb25JbmVydCgpO1xuICAgIHRoaXMuX2ZvY3VzVHJhcENvbnRyb2xsZXIuZm9jdXNJbml0aWFsRWxlbWVudCgpO1xuICAgIHRoaXMuX2NoZWNrQWN0aXZlQWN0aW9uKCk7XG4gICAgdGhpcy5jb21wbGV0ZVVwZGF0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xvc2luZygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdjbG9zZWQnO1xuICAgIHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcignLnNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2NvbnRhaW5lcicpPy5zY3JvbGxUbygwLCAwKTtcbiAgICB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX3Jlc2V0TGlzdHMoKTtcbiAgICB0aGlzLl9zZXROYXZpZ2F0aW9uSW5lcnQoKTtcbiAgICBpZiAodGhpcy5faXNCZWxvd0xhcmdlKCkgJiYgdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICAgIHRoaXMuY29tcGxldGVVcGRhdGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgX2Nsb3NlUHJldmlvdXNOYXZpZ2F0aW9uU2VjdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLl9maXJzdExldmVsTmF2aWdhdGlvbj8uYWN0aXZlTmF2aWdhdGlvblNlY3Rpb24/LmNsb3NlKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2VzIHRoZSBuYXZpZ2F0aW9uIHNlY3Rpb24uXG4gICAqL1xuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N0YXRlICE9PSAnb3BlbmVkJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NpbmcnO1xuICAgIHRoaXMuc3RhcnRVcGRhdGUoKTtcbiAgICB0aGlzLmluZXJ0ID0gdHJ1ZTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudD8uc2V0QXR0cmlidXRlKCdhcmlhLWV4cGFuZGVkJywgJ2ZhbHNlJyk7XG5cbiAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAvLyBJbiB0aGlzIGNhc2Ugd2UgZGlyZWN0bHkgc2V0IHRoZSBgY2xvc2VkYCBzdGF0ZS5cbiAgICBpZiAodGhpcy5faXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKSkge1xuICAgICAgdGhpcy5faGFuZGxlQ2xvc2luZygpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSB0cmlnZ2VyIGlzIHZhbGlkIGFuZCBhdHRhY2ggY2xpY2sgZXZlbnQgbGlzdGVuZXJzLlxuICBwcml2YXRlIF9jb25maWd1cmVUcmlnZ2VyKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnRyaWdnZXIgPT09IHRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5fdHJpZ2dlckFib3J0Q29udHJvbGxlcj8uYWJvcnQoKTtcbiAgICByZW1vdmVBcmlhT3ZlcmxheVRyaWdnZXJBdHRyaWJ1dGVzKHRoaXMuX3RyaWdnZXJFbGVtZW50KTtcbiAgICB0aGlzLl90cmlnZ2VyRWxlbWVudCA9IHRoaXMudHJpZ2dlcjtcblxuICAgIGlmICghdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBzZXRBcmlhT3ZlcmxheVRyaWdnZXJBdHRyaWJ1dGVzKHRoaXMuX3RyaWdnZXJFbGVtZW50LCAnbWVudScsIHRoaXMuaWQsIHRoaXMuX3N0YXRlKTtcbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgIGlmICh0aGlzLl9pc05hdmlnYXRpb25CdXR0b24odGhpcy5fdHJpZ2dlckVsZW1lbnQpKSB7XG4gICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudC5jb25uZWN0ZWRTZWN0aW9uID0gdGhpcztcbiAgICB9XG4gICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB0aGlzLm9wZW4oKSwge1xuICAgICAgc2lnbmFsOiB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB0aGlzLl9maXJzdExldmVsTmF2aWdhdGlvbiA9IHRoaXMuX3RyaWdnZXJFbGVtZW50Py5jbG9zZXN0Py4oJ3NiYi1uYXZpZ2F0aW9uJyk7XG4gIH1cblxuICBwcml2YXRlIF9pc05hdmlnYXRpb25CdXR0b24odHJpZ2dlcjogSFRNTEVsZW1lbnQgfCBudWxsKTogdHJpZ2dlciBpcyBTYmJOYXZpZ2F0aW9uQnV0dG9uRWxlbWVudCB7XG4gICAgcmV0dXJuIHRyaWdnZXI/LmxvY2FsTmFtZSA9PT0gJ3NiYi1uYXZpZ2F0aW9uLWJ1dHRvbic7XG4gIH1cblxuICBwcml2YXRlIF9zZXROYXZpZ2F0aW9uSW5lcnQoaXNCZWxvd0xhcmdlOiBib29sZWFuID0gdGhpcy5faXNCZWxvd0xhcmdlKCkpOiB2b2lkIHtcbiAgICBjb25zdCBuYXZpZ2F0aW9uQ29udGVudCA9IHRoaXMuX2ZpcnN0TGV2ZWxOYXZpZ2F0aW9uPy5uYXZpZ2F0aW9uQ29udGVudDtcbiAgICBpZiAobmF2aWdhdGlvbkNvbnRlbnQpIHtcbiAgICAgIG5hdmlnYXRpb25Db250ZW50LmluZXJ0ID0gaXNCZWxvd0xhcmdlICYmIHRoaXMuX3N0YXRlICE9PSAnY2xvc2VkJztcbiAgICB9XG4gIH1cblxuICAvLyBJbiByYXJlIGNhc2VzIGl0IGNhbiBiZSB0aGF0IHRoZSBhbmltYXRpb25FbmQgZXZlbnQgaXMgdHJpZ2dlcmVkIHR3aWNlLlxuICAvLyBUbyBhdm9pZCBlbnRlcmluZyBhIGNvcnJ1cHQgc3RhdGUsIGV4aXQgd2hlbiBzdGF0ZSBpcyBub3QgZXhwZWN0ZWQuXG4gIHByaXZhdGUgX29uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgIGlmIChldmVudC5hbmltYXRpb25OYW1lID09PSAnb3BlbicgJiYgdGhpcy5fc3RhdGUgPT09ICdvcGVuaW5nJykge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQuYW5pbWF0aW9uTmFtZSA9PT0gJ2Nsb3NlJyAmJiB0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NpbmcnKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVzZXRMaXN0cygpOiB2b2lkIHtcbiAgICBBcnJheS5mcm9tKFxuICAgICAgdGhpcy5xdWVyeVNlbGVjdG9yQWxsPFNiYk5hdmlnYXRpb25CdXR0b25FbGVtZW50IHwgU2JiTmF2aWdhdGlvbkxpbmtFbGVtZW50PihcbiAgICAgICAgJ1tkYXRhLXNlY3Rpb24tYWN0aW9uXVtkYXRhLWFjdGlvbi1hY3RpdmVdJyxcbiAgICAgICkgPz8gW10sXG4gICAgKS5mb3JFYWNoKChhY3Rpb24pID0+IGFjdGlvbi5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtYWN0aW9uLWFjdGl2ZScpKTtcbiAgfVxuXG4gIHByaXZhdGUgX2F0dGFjaFdpbmRvd0V2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLl93aW5kb3dFdmVudHNDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB0aGlzLl9vbktleWRvd25FdmVudChldmVudCksIHtcbiAgICAgIHNpZ25hbDogdGhpcy5fd2luZG93RXZlbnRzQ29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG5cbiAgICAvLyBDbG9zZSBuYXZpZ2F0aW9uIHNlY3Rpb24gb24gYWN0aW9uIGNsaWNrIG9yIHNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tY2xvc2UgY2xpY2tcbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLl9oYW5kbGVOYXZpZ2F0aW9uU2VjdGlvbkNsb3NlLCB7XG4gICAgICBzaWduYWw6IHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXIuc2lnbmFsLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGNsaWNrIHdhcyB0cmlnZ2VyZWQgb24gYW4gZWxlbWVudCB0aGF0IHNob3VsZCBjbG9zZSB0aGUgc2VjdGlvbi5cbiAgcHJpdmF0ZSBfaGFuZGxlTmF2aWdhdGlvblNlY3Rpb25DbG9zZSA9IChldmVudDogRXZlbnQpOiB2b2lkID0+IHtcbiAgICBpZiAoXG4gICAgICBldmVudFxuICAgICAgICAuY29tcG9zZWRQYXRoKClcbiAgICAgICAgLmZpbHRlcigoZWwpID0+IGVsIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpXG4gICAgICAgIC5zb21lKChlbCkgPT4gdGhpcy5faXNDbG9zZUVsZW1lbnQoZWwpKVxuICAgICkge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIF9pc0Nsb3NlRWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICBlbGVtZW50Lm5vZGVOYW1lID09PSAnQScgfHxcbiAgICAgICghZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ2Rpc2FibGVkJykgJiZcbiAgICAgICAgKGVsZW1lbnQuaGFzQXR0cmlidXRlKCdzYmItbmF2aWdhdGlvbi1jbG9zZScpIHx8XG4gICAgICAgICAgZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ3NiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tY2xvc2UnKSkpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX2lzQmVsb3dMYXJnZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNCcmVha3BvaW50KCd6ZXJvJywgJ2xhcmdlJykgPz8gZmFsc2U7XG4gIH1cblxuICAvLyBDbG9zZXMgdGhlIG5hdmlnYXRpb24gb24gXCJFc2NcIiBrZXkgcHJlc3NlZC5cbiAgcHJpdmF0ZSBfb25LZXlkb3duRXZlbnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdvcGVuZWQnICYmIGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9jaGVja0FjdGl2ZUFjdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLnF1ZXJ5U2VsZWN0b3I8U2JiTmF2aWdhdGlvbkJ1dHRvbkVsZW1lbnQgfCBTYmJOYXZpZ2F0aW9uTGlua0VsZW1lbnQ+KFxuICAgICAgJzppcyhzYmItbmF2aWdhdGlvbi1idXR0b24sIHNiYi1uYXZpZ2F0aW9uLWxpbmspLnNiYi1hY3RpdmUnLFxuICAgICk/LnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1hY3Rpb24tYWN0aXZlJywgdHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLnNsb3QgfHw9ICduYXZpZ2F0aW9uLXNlY3Rpb24nO1xuICAgIHRoaXMuaWQgfHw9IGBzYmItbmF2aWdhdGlvbi1zZWN0aW9uLSR7bmV4dElkKyt9YDtcbiAgICB0aGlzLl9zdGF0ZSB8fD0gJ2Nsb3NlZCc7XG4gICAgaWYgKHRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgdGhpcy5fY29uZmlndXJlVHJpZ2dlcigpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBkaXNjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50ID0gbnVsbDtcbiAgICB0aGlzLl90cmlnZ2VyQWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX3dpbmRvd0V2ZW50c0NvbnRyb2xsZXI/LmFib3J0KCk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgcmVxdWVzdFVwZGF0ZShcbiAgICBuYW1lPzogUHJvcGVydHlLZXksXG4gICAgb2xkVmFsdWU/OiB1bmtub3duLFxuICAgIG9wdGlvbnM/OiBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICApOiB2b2lkIHtcbiAgICBzdXBlci5yZXF1ZXN0VXBkYXRlKG5hbWUsIG9sZFZhbHVlLCBvcHRpb25zKTtcblxuICAgIGlmICghaXNTZXJ2ZXIgJiYgKCFuYW1lIHx8IG5hbWUgPT09ICd0cmlnZ2VyJykgJiYgdGhpcy5oYXNVcGRhdGVkKSB7XG4gICAgICB0aGlzLl9jb25maWd1cmVUcmlnZ2VyKCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuICAgIHRoaXMuX2NvbmZpZ3VyZVRyaWdnZXIoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX2NvbnRhaW5lclwiPlxuICAgICAgICA8bmF2XG4gICAgICAgICAgQGFuaW1hdGlvbmVuZD0ke3RoaXMuX29uQW5pbWF0aW9uRW5kfVxuICAgICAgICAgIGNsYXNzPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvblwiXG4gICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PSR7IXRoaXMuYWNjZXNzaWJpbGl0eUxhYmVsID8gJ3RpdGxlJyA6IG5vdGhpbmd9XG4gICAgICAgICAgYXJpYS1sYWJlbD0ke3RoaXMuYWNjZXNzaWJpbGl0eUxhYmVsID8gdGhpcy5hY2Nlc3NpYmlsaXR5TGFiZWwgOiBub3RoaW5nfVxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb25fX3dyYXBwZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX19jb250ZW50XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX19oZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8IS0tIEJhY2sgYnV0dG9uIC0tPlxuICAgICAgICAgICAgICAgIDxzYmItdHJhbnNwYXJlbnQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICBpZD1cInNiYi1uYXZpZ2F0aW9uLXNlY3Rpb24tYmFjay1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzYmItbmF2aWdhdGlvbi1zZWN0aW9uX19iYWNrXCJcbiAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9JHt0aGlzLmFjY2Vzc2liaWxpdHlCYWNrTGFiZWwgfHwgaTE4bkdvQmFja1t0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICAgICAgICAgIG5lZ2F0aXZlXG4gICAgICAgICAgICAgICAgICBzaXplPVwibVwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgIGljb24tbmFtZT1cImNoZXZyb24tc21hbGwtbGVmdC1zbWFsbFwiXG4gICAgICAgICAgICAgICAgICBzYmItbmF2aWdhdGlvbi1zZWN0aW9uLWNsb3NlXG4gICAgICAgICAgICAgICAgPjwvc2JiLXRyYW5zcGFyZW50LWJ1dHRvbj5cblxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLW5hdmlnYXRpb24tc2VjdGlvbl9fdGl0bGVcIiBpZD1cInRpdGxlXCI+XG4gICAgICAgICAgICAgICAgICA8c2xvdCBuYW1lPVwidGl0bGVcIj4ke3RoaXMudGl0bGVDb250ZW50fTwvc2xvdD5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uYXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItbmF2aWdhdGlvbi1zZWN0aW9uJzogU2JiTmF2aWdhdGlvblNlY3Rpb25FbGVtZW50O1xuICB9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
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit';
|
|
2
2
|
import { SbbTitleLevel } from '../title.js';
|
|
3
|
+
declare const SbbNotificationElement_base: import('../core/mixins.js').AbstractConstructor<import('../core/mixins.js').SbbReadonlyMixinType> & typeof LitElement;
|
|
3
4
|
/**
|
|
4
5
|
* It displays messages which require a user's attention without interrupting its tasks.
|
|
5
6
|
*
|
|
@@ -12,7 +13,7 @@ import { SbbTitleLevel } from '../title.js';
|
|
|
12
13
|
* @cssprop [--sbb-notification-margin=0] - Can be used to modify the margin in order to get a smoother animation.
|
|
13
14
|
* See style section for more information.
|
|
14
15
|
*/
|
|
15
|
-
export declare class SbbNotificationElement extends
|
|
16
|
+
export declare class SbbNotificationElement extends SbbNotificationElement_base {
|
|
16
17
|
static styles: CSSResultGroup;
|
|
17
18
|
static readonly events: {
|
|
18
19
|
readonly willOpen: "willOpen";
|
|
@@ -26,11 +27,6 @@ export declare class SbbNotificationElement extends LitElement {
|
|
|
26
27
|
accessor titleContent: string;
|
|
27
28
|
/** Level of title, it will be rendered as heading tag (e.g. h3). Defaults to level 3. */
|
|
28
29
|
accessor titleLevel: SbbTitleLevel;
|
|
29
|
-
/**
|
|
30
|
-
* Whether the notification is readonly.
|
|
31
|
-
* In readonly mode, there is no dismiss button offered to the user.
|
|
32
|
-
*/
|
|
33
|
-
accessor readonly: boolean;
|
|
34
30
|
/**
|
|
35
31
|
* Size variant, either s or m.
|
|
36
32
|
* @default 'm' / 's' (lean)
|
|
@@ -56,7 +52,7 @@ export declare class SbbNotificationElement extends LitElement {
|
|
|
56
52
|
private _open;
|
|
57
53
|
close(): void;
|
|
58
54
|
connectedCallback(): void;
|
|
59
|
-
protected firstUpdated(changedProperties: PropertyValues<this>):
|
|
55
|
+
protected firstUpdated(changedProperties: PropertyValues<this>): void;
|
|
60
56
|
private _isZeroAnimationDuration;
|
|
61
57
|
private _setNotificationHeight;
|
|
62
58
|
private _onNotificationResize;
|
|
@@ -70,4 +66,5 @@ declare global {
|
|
|
70
66
|
'sbb-notification': SbbNotificationElement;
|
|
71
67
|
}
|
|
72
68
|
}
|
|
69
|
+
export {};
|
|
73
70
|
//# sourceMappingURL=notification.component.d.ts.map
|
|
@@ -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,EAEnB,UAAU,EAEV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"notification.component.d.ts","sourceRoot":"","sources":["../../../../src/elements/notification/notification.component.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EAEV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAUb,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD,OAAO,+BAA+B,CAAC;AACvC,OAAO,eAAe,CAAC;AACvB,OAAO,YAAY,CAAC;AACpB,OAAO,aAAa,CAAC;;AAWrB;;;;;;;;;;;GAWG;AACH,qBAGM,sBAAuB,SAAQ,2BAA4B;IAE/D,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;;;;MAKlB;IAEX,oCAAoC;IACpC,SAA6C,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAU;IAElG,wBAAwB;IACxB,SAEgB,YAAY,EAAE,MAAM,CAAM;IAE1C,yFAAyF;IACzF,SAAwD,UAAU,EAAE,aAAa,CAAO;IAExF;;;OAGG;IACH,SAA6C,IAAI,EAAE,GAAG,GAAG,GAAG,CAAwB;IAEpF,8BAA8B;IAC9B,SAA6C,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAS;IAElG,qCAAqC;IACrC,OAAO,KAAK,MAAM,QAEjB;IACD,OAAO,KAAK,MAAM,GAEjB;IAED,OAAO,CAAC,oBAAoB,CAAe;IAC3C,OAAO,CAAC,sBAAsB,CAA8C;IAC5E,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,2BAA2B,CAIhC;IAEH,2EAA2E;IAC3E,OAAO,CAAC,SAAS,CAIf;IAEF,uDAAuD;IACvD,OAAO,CAAC,QAAQ,CAId;IAEF,2EAA2E;IAC3E,OAAO,CAAC,UAAU,CAIhB;IAEF,uDAAuD;IACvD,OAAO,CAAC,SAAS,CAIf;IAEF,OAAO,CAAC,KAAK;IAaN,KAAK,IAAI,IAAI;IAYJ,iBAAiB,IAAI,IAAI;cAMtB,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;IAMtB,OAAO,CAAC,cAAc;cAOH,MAAM,IAAI,cAAc;CAoC5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,kBAAkB,EAAE,sBAAsB,CAAC;KAC5C;CACF"}
|
|
@@ -14,6 +14,7 @@ import { slotState, forceType, omitEmptyConverter } from "../core/decorators.js"
|
|
|
14
14
|
import { isLean, isZeroAnimationDuration } from "../core/dom.js";
|
|
15
15
|
import { EventEmitter } from "../core/eventing.js";
|
|
16
16
|
import { i18nCloseNotification } from "../core/i18n.js";
|
|
17
|
+
import { SbbReadonlyMixin } from "../core/mixins.js";
|
|
17
18
|
import "../button/secondary-button.js";
|
|
18
19
|
import "../divider.js";
|
|
19
20
|
import "../icon.js";
|
|
@@ -273,12 +274,12 @@ const notificationTypes = /* @__PURE__ */ new Map([
|
|
|
273
274
|
]);
|
|
274
275
|
const DEBOUNCE_TIME = 150;
|
|
275
276
|
let SbbNotificationElement = (() => {
|
|
276
|
-
var _type_accessor_storage, _titleContent_accessor_storage, _titleLevel_accessor_storage,
|
|
277
|
+
var _type_accessor_storage, _titleContent_accessor_storage, _titleLevel_accessor_storage, _size_accessor_storage, _animation_accessor_storage, _a;
|
|
277
278
|
let _classDecorators = [customElement("sbb-notification"), slotState()];
|
|
278
279
|
let _classDescriptor;
|
|
279
280
|
let _classExtraInitializers = [];
|
|
280
281
|
let _classThis;
|
|
281
|
-
let _classSuper = LitElement;
|
|
282
|
+
let _classSuper = SbbReadonlyMixin(LitElement);
|
|
282
283
|
let _type_decorators;
|
|
283
284
|
let _type_initializers = [];
|
|
284
285
|
let _type_extraInitializers = [];
|
|
@@ -288,9 +289,6 @@ let SbbNotificationElement = (() => {
|
|
|
288
289
|
let _titleLevel_decorators;
|
|
289
290
|
let _titleLevel_initializers = [];
|
|
290
291
|
let _titleLevel_extraInitializers = [];
|
|
291
|
-
let _readonly_decorators;
|
|
292
|
-
let _readonly_initializers = [];
|
|
293
|
-
let _readonly_extraInitializers = [];
|
|
294
292
|
let _size_decorators;
|
|
295
293
|
let _size_initializers = [];
|
|
296
294
|
let _size_extraInitializers = [];
|
|
@@ -303,14 +301,12 @@ let SbbNotificationElement = (() => {
|
|
|
303
301
|
__privateAdd(this, _type_accessor_storage);
|
|
304
302
|
__privateAdd(this, _titleContent_accessor_storage);
|
|
305
303
|
__privateAdd(this, _titleLevel_accessor_storage);
|
|
306
|
-
__privateAdd(this, _readonly_accessor_storage);
|
|
307
304
|
__privateAdd(this, _size_accessor_storage);
|
|
308
305
|
__privateAdd(this, _animation_accessor_storage);
|
|
309
306
|
__privateSet(this, _type_accessor_storage, __runInitializers(this, _type_initializers, "info"));
|
|
310
307
|
__privateSet(this, _titleContent_accessor_storage, (__runInitializers(this, _type_extraInitializers), __runInitializers(this, _titleContent_initializers, "")));
|
|
311
308
|
__privateSet(this, _titleLevel_accessor_storage, (__runInitializers(this, _titleContent_extraInitializers), __runInitializers(this, _titleLevel_initializers, "3")));
|
|
312
|
-
__privateSet(this,
|
|
313
|
-
__privateSet(this, _size_accessor_storage, (__runInitializers(this, _readonly_extraInitializers), __runInitializers(this, _size_initializers, isLean() ? "s" : "m")));
|
|
309
|
+
__privateSet(this, _size_accessor_storage, (__runInitializers(this, _titleLevel_extraInitializers), __runInitializers(this, _size_initializers, isLean() ? "s" : "m")));
|
|
314
310
|
__privateSet(this, _animation_accessor_storage, (__runInitializers(this, _size_extraInitializers), __runInitializers(this, _animation_initializers, "all")));
|
|
315
311
|
this._notificationElement = __runInitializers(this, _animation_extraInitializers);
|
|
316
312
|
this._resizeObserverTimeout = null;
|
|
@@ -346,16 +342,6 @@ let SbbNotificationElement = (() => {
|
|
|
346
342
|
set titleLevel(value) {
|
|
347
343
|
__privateSet(this, _titleLevel_accessor_storage, value);
|
|
348
344
|
}
|
|
349
|
-
/**
|
|
350
|
-
* Whether the notification is readonly.
|
|
351
|
-
* In readonly mode, there is no dismiss button offered to the user.
|
|
352
|
-
*/
|
|
353
|
-
get readonly() {
|
|
354
|
-
return __privateGet(this, _readonly_accessor_storage);
|
|
355
|
-
}
|
|
356
|
-
set readonly(value) {
|
|
357
|
-
__privateSet(this, _readonly_accessor_storage, value);
|
|
358
|
-
}
|
|
359
345
|
/**
|
|
360
346
|
* Size variant, either s or m.
|
|
361
347
|
* @default 'm' / 's' (lean)
|
|
@@ -401,13 +387,14 @@ let SbbNotificationElement = (() => {
|
|
|
401
387
|
this._state || (this._state = "closed");
|
|
402
388
|
super.connectedCallback();
|
|
403
389
|
}
|
|
404
|
-
|
|
390
|
+
firstUpdated(changedProperties) {
|
|
405
391
|
var _a2;
|
|
406
392
|
super.firstUpdated(changedProperties);
|
|
407
393
|
this._notificationElement = (_a2 = this.shadowRoot) == null ? void 0 : _a2.querySelector(".sbb-notification__wrapper");
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
394
|
+
this.updateComplete.then(() => {
|
|
395
|
+
this._setNotificationHeight();
|
|
396
|
+
this._open();
|
|
397
|
+
});
|
|
411
398
|
}
|
|
412
399
|
_isZeroAnimationDuration() {
|
|
413
400
|
return isZeroAnimationDuration(this, "--sbb-notification-animation-duration");
|
|
@@ -470,7 +457,7 @@ let SbbNotificationElement = (() => {
|
|
|
470
457
|
<slot></slot>
|
|
471
458
|
</span>
|
|
472
459
|
|
|
473
|
-
${!this.
|
|
460
|
+
${!this.readOnly ? html`<span class="sbb-notification__close-wrapper">
|
|
474
461
|
<sbb-divider class="sbb-notification__divider" orientation="vertical"></sbb-divider>
|
|
475
462
|
<sbb-secondary-button
|
|
476
463
|
size=${this.size}
|
|
@@ -484,12 +471,11 @@ let SbbNotificationElement = (() => {
|
|
|
484
471
|
</div>
|
|
485
472
|
`;
|
|
486
473
|
}
|
|
487
|
-
}, _type_accessor_storage = new WeakMap(), _titleContent_accessor_storage = new WeakMap(), _titleLevel_accessor_storage = new WeakMap(),
|
|
474
|
+
}, _type_accessor_storage = new WeakMap(), _titleContent_accessor_storage = new WeakMap(), _titleLevel_accessor_storage = new WeakMap(), _size_accessor_storage = new WeakMap(), _animation_accessor_storage = new WeakMap(), _classThis = _a, (() => {
|
|
488
475
|
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
489
476
|
_type_decorators = [property({ reflect: true })];
|
|
490
477
|
_titleContent_decorators = [forceType(), property({ attribute: "title-content", reflect: true, converter: omitEmptyConverter })];
|
|
491
478
|
_titleLevel_decorators = [property({ attribute: "title-level" })];
|
|
492
|
-
_readonly_decorators = [forceType(), property({ reflect: true, type: Boolean })];
|
|
493
479
|
_size_decorators = [property({ reflect: true })];
|
|
494
480
|
_animation_decorators = [property({ reflect: true })];
|
|
495
481
|
__esDecorate(_a, null, _type_decorators, { kind: "accessor", name: "type", static: false, private: false, access: { has: (obj) => "type" in obj, get: (obj) => obj.type, set: (obj, value) => {
|
|
@@ -501,9 +487,6 @@ let SbbNotificationElement = (() => {
|
|
|
501
487
|
__esDecorate(_a, null, _titleLevel_decorators, { kind: "accessor", name: "titleLevel", static: false, private: false, access: { has: (obj) => "titleLevel" in obj, get: (obj) => obj.titleLevel, set: (obj, value) => {
|
|
502
488
|
obj.titleLevel = value;
|
|
503
489
|
} }, metadata: _metadata }, _titleLevel_initializers, _titleLevel_extraInitializers);
|
|
504
|
-
__esDecorate(_a, null, _readonly_decorators, { kind: "accessor", name: "readonly", static: false, private: false, access: { has: (obj) => "readonly" in obj, get: (obj) => obj.readonly, set: (obj, value) => {
|
|
505
|
-
obj.readonly = value;
|
|
506
|
-
} }, metadata: _metadata }, _readonly_initializers, _readonly_extraInitializers);
|
|
507
490
|
__esDecorate(_a, null, _size_decorators, { kind: "accessor", name: "size", static: false, private: false, access: { has: (obj) => "size" in obj, get: (obj) => obj.size, set: (obj, value) => {
|
|
508
491
|
obj.size = value;
|
|
509
492
|
} }, metadata: _metadata }, _size_initializers, _size_extraInitializers);
|
|
@@ -524,4 +507,4 @@ let SbbNotificationElement = (() => {
|
|
|
524
507
|
export {
|
|
525
508
|
SbbNotificationElement
|
|
526
509
|
};
|
|
527
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlc2l6ZUNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL3Jlc2l6ZS1jb250cm9sbGVyLmpzJztcbmltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIExpdEVsZW1lbnQsXG4gIG5vdGhpbmcsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUsIG9taXRFbXB0eUNvbnZlcnRlciwgc2xvdFN0YXRlIH0gZnJvbSAnLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGlzTGVhbiwgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24gfSBmcm9tICcuLi9jb3JlL2RvbS5qcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICcuLi9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB7IGkxOG5DbG9zZU5vdGlmaWNhdGlvbiB9IGZyb20gJy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk9wZW5lZENsb3NlZFN0YXRlIH0gZnJvbSAnLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiVGl0bGVMZXZlbCB9IGZyb20gJy4uL3RpdGxlLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vbm90aWZpY2F0aW9uLnNjc3M/bGl0JmlubGluZSc7XG5cbmltcG9ydCAnLi4vYnV0dG9uL3NlY29uZGFyeS1idXR0b24uanMnO1xuaW1wb3J0ICcuLi9kaXZpZGVyLmpzJztcbmltcG9ydCAnLi4vaWNvbi5qcyc7XG5pbXBvcnQgJy4uL3RpdGxlLmpzJztcblxuY29uc3Qgbm90aWZpY2F0aW9uVHlwZXMgPSBuZXcgTWFwKFtcbiAgWydpbmZvJywgJ2NpcmNsZS1pbmZvcm1hdGlvbi1zbWFsbCddLFxuICBbJ3N1Y2Nlc3MnLCAnY2lyY2xlLXRpY2stc21hbGwnXSxcbiAgWyd3YXJuJywgJ2NpcmNsZS1leGNsYW1hdGlvbi1wb2ludC1zbWFsbCddLFxuICBbJ2Vycm9yJywgJ2NpcmNsZS1jcm9zcy1zbWFsbCddLFxuXSk7XG5cbmNvbnN0IERFQk9VTkNFX1RJTUUgPSAxNTA7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgbWVzc2FnZXMgd2hpY2ggcmVxdWlyZSBhIHVzZXIncyBhdHRlbnRpb24gd2l0aG91dCBpbnRlcnJ1cHRpbmcgaXRzIHRhc2tzLlxuICpcbiAqIEBzbG90IC0gVXNlIHRoZSB1bm5hbWVkIHNsb3QgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIG5vdGlmaWNhdGlvbiBtZXNzYWdlLlxuICogQHNsb3QgdGl0bGUgLSBVc2UgdGhpcyB0byBwcm92aWRlIGEgbm90aWZpY2F0aW9uIHRpdGxlIChvcHRpb25hbCkuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSB3aWxsT3BlbiAtIEVtaXRzIHdoZW4gdGhlIG9wZW5pbmcgYW5pbWF0aW9uIHN0YXJ0cy5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZE9wZW4gLSBFbWl0cyB3aGVuIHRoZSBvcGVuaW5nIGFuaW1hdGlvbiBlbmRzLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gd2lsbENsb3NlIC0gRW1pdHMgd2hlbiB0aGUgY2xvc2luZyBhbmltYXRpb24gc3RhcnRzLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2xvc2UgLSBFbWl0cyB3aGVuIHRoZSBjbG9zaW5nIGFuaW1hdGlvbiBlbmRzLlxuICogQGNzc3Byb3AgWy0tc2JiLW5vdGlmaWNhdGlvbi1tYXJnaW49MF0gLSBDYW4gYmUgdXNlZCB0byBtb2RpZnkgdGhlIG1hcmdpbiBpbiBvcmRlciB0byBnZXQgYSBzbW9vdGhlciBhbmltYXRpb24uXG4gKiBTZWUgc3R5bGUgc2VjdGlvbiBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cbiAqL1xuZXhwb3J0XG5AY3VzdG9tRWxlbWVudCgnc2JiLW5vdGlmaWNhdGlvbicpXG5Ac2xvdFN0YXRlKClcbmNsYXNzIFNiYk5vdGlmaWNhdGlvbkVsZW1lbnQgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgLy8gVE9ETzogZml4IGluaGVyaXRpbmcgZnJvbSBTYmJPcGVuQ2xvc2VCYXNlRWxlbWVudCByZXF1aXJlczogaHR0cHM6Ly9naXRodWIuY29tL29wZW4td2MvY3VzdG9tLWVsZW1lbnRzLW1hbmlmZXN0L2lzc3Vlcy8yNTNcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIHdpbGxPcGVuOiAnd2lsbE9wZW4nLFxuICAgIGRpZE9wZW46ICdkaWRPcGVuJyxcbiAgICB3aWxsQ2xvc2U6ICd3aWxsQ2xvc2UnLFxuICAgIGRpZENsb3NlOiAnZGlkQ2xvc2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBUaGUgdHlwZSBvZiB0aGUgbm90aWZpY2F0aW9uLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBhY2Nlc3NvciB0eXBlOiAnaW5mbycgfCAnc3VjY2VzcycgfCAnd2FybicgfCAnZXJyb3InID0gJ2luZm8nO1xuXG4gIC8qKiBDb250ZW50IG9mIHRpdGxlLiAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiAndGl0bGUtY29udGVudCcsIHJlZmxlY3Q6IHRydWUsIGNvbnZlcnRlcjogb21pdEVtcHR5Q29udmVydGVyIH0pXG4gIHB1YmxpYyBhY2Nlc3NvciB0aXRsZUNvbnRlbnQ6IHN0cmluZyA9ICcnO1xuXG4gIC8qKiBMZXZlbCBvZiB0aXRsZSwgaXQgd2lsbCBiZSByZW5kZXJlZCBhcyBoZWFkaW5nIHRhZyAoZS5nLiBoMykuIERlZmF1bHRzIHRvIGxldmVsIDMuICovXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3RpdGxlLWxldmVsJyB9KSBwdWJsaWMgYWNjZXNzb3IgdGl0bGVMZXZlbDogU2JiVGl0bGVMZXZlbCA9ICczJztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgbm90aWZpY2F0aW9uIGlzIHJlYWRvbmx5LlxuICAgKiBJbiByZWFkb25seSBtb2RlLCB0aGVyZSBpcyBubyBkaXNtaXNzIGJ1dHRvbiBvZmZlcmVkIHRvIHRoZSB1c2VyLlxuICAgKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSlcbiAgcHVibGljIGFjY2Vzc29yIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFNpemUgdmFyaWFudCwgZWl0aGVyIHMgb3IgbS5cbiAgICogQGRlZmF1bHQgJ20nIC8gJ3MnIChsZWFuKVxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ20nIHwgJ3MnID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG5cbiAgLyoqIFRoZSBlbmFibGVkIGFuaW1hdGlvbnMuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIGFuaW1hdGlvbjogJ29wZW4nIHwgJ2Nsb3NlJyB8ICdhbGwnIHwgJ25vbmUnID0gJ2FsbCc7XG5cbiAgLyoqIFRoZSBzdGF0ZSBvZiB0aGUgbm90aWZpY2F0aW9uLiAqL1xuICBwcml2YXRlIHNldCBfc3RhdGUoc3RhdGU6IFNiYk9wZW5lZENsb3NlZFN0YXRlKSB7XG4gICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnLCBzdGF0ZSk7XG4gIH1cbiAgcHJpdmF0ZSBnZXQgX3N0YXRlKCk6IFNiYk9wZW5lZENsb3NlZFN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnKSBhcyBTYmJPcGVuZWRDbG9zZWRTdGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX25vdGlmaWNhdGlvbkVsZW1lbnQhOiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXJUaW1lb3V0OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZUNvbnRyb2xsZXIodGhpcywge1xuICAgIHRhcmdldDogbnVsbCxcbiAgICBza2lwSW5pdGlhbDogdHJ1ZSxcbiAgICBjYWxsYmFjazogKCkgPT4gdGhpcy5fb25Ob3RpZmljYXRpb25SZXNpemUoKSxcbiAgfSk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLW5vdGlmaWNhdGlvbmAgc3RhcnRzIHRoZSBvcGVuaW5nIHRyYW5zaXRpb24uICovXG4gIHByaXZhdGUgX3dpbGxPcGVuOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMud2lsbE9wZW4sXG4gICAgeyBjYW5jZWxhYmxlOiB0cnVlIH0sXG4gICk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLW5vdGlmaWNhdGlvbmAgaXMgb3BlbmVkLiAqL1xuICBwcml2YXRlIF9kaWRPcGVuOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMuZGlkT3BlbixcbiAgICB7IGNhbmNlbGFibGU6IHRydWUgfSxcbiAgKTtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItbm90aWZpY2F0aW9uYCBiZWdpbnMgdGhlIGNsb3NpbmcgdHJhbnNpdGlvbi4gKi9cbiAgcHJpdmF0ZSBfd2lsbENsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMud2lsbENsb3NlLFxuICAgIHsgY2FuY2VsYWJsZTogdHJ1ZSB9LFxuICApO1xuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1ub3RpZmljYXRpb25gIGlzIGNsb3NlZC4gKi9cbiAgcHJpdmF0ZSBfZGlkQ2xvc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJOb3RpZmljYXRpb25FbGVtZW50LmV2ZW50cy5kaWRDbG9zZSxcbiAgICB7IGNhbmNlbGFibGU6IHRydWUgfSxcbiAgKTtcblxuICBwcml2YXRlIF9vcGVuKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NlZCcpIHtcbiAgICAgIHRoaXMuX3N0YXRlID0gJ29wZW5pbmcnO1xuICAgICAgdGhpcy5fd2lsbE9wZW4uZW1pdCgpO1xuXG4gICAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBvcGVuZWRgIHN0YXRlLlxuICAgICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdvcGVuZWQnICYmIHRoaXMuX3dpbGxDbG9zZS5lbWl0KCkpIHtcbiAgICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NpbmcnO1xuXG4gICAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBjbG9zZWRgIHN0YXRlLlxuICAgICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgICAgdGhpcy5faGFuZGxlQ2xvc2luZygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSB8fD0gJ2Nsb3NlZCc7XG5cbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGFzeW5jIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgdGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudCA9IHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcihcbiAgICAgICcuc2JiLW5vdGlmaWNhdGlvbl9fd3JhcHBlcicsXG4gICAgKSBhcyBIVE1MRWxlbWVudDtcbiAgICAvLyBXZSBuZWVkIHRvIHdhaXQgZm9yIHRoZSBjb21wb25lbnQncyBgdXBkYXRlQ29tcGxldGVgIGluIG9yZGVyIHRvIHNldCB0aGUgY29ycmVjdFxuICAgIC8vIGhlaWdodCB0byB0aGUgbm90aWZpY2F0aW9uIGVsZW1lbnQuXG4gICAgYXdhaXQgdGhpcy51cGRhdGVDb21wbGV0ZTtcbiAgICB0aGlzLl9zZXROb3RpZmljYXRpb25IZWlnaHQoKTtcbiAgICB0aGlzLl9vcGVuKCk7XG4gIH1cblxuICBwcml2YXRlIF9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24odGhpcywgJy0tc2JiLW5vdGlmaWNhdGlvbi1hbmltYXRpb24tZHVyYXRpb24nKTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldE5vdGlmaWNhdGlvbkhlaWdodCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX25vdGlmaWNhdGlvbkVsZW1lbnQ/LnNjcm9sbEhlaWdodCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBub3RpZmljYXRpb25IZWlnaHQgPSBgJHt0aGlzLl9ub3RpZmljYXRpb25FbGVtZW50LnNjcm9sbEhlaWdodH1weGA7XG4gICAgdGhpcy5zdHlsZS5zZXRQcm9wZXJ0eSgnLS1zYmItbm90aWZpY2F0aW9uLWhlaWdodCcsIG5vdGlmaWNhdGlvbkhlaWdodCk7XG4gIH1cblxuICBwcml2YXRlIF9vbk5vdGlmaWNhdGlvblJlc2l6ZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgIT09ICdvcGVuZWQnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCk7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZSB0aGUgYW5pbWF0aW9uIHdoZW4gcmVzaXppbmcgdGhlIG5vdGlmaWNhdGlvbiB0byBhdm9pZCBzdHJhbmdlIGhlaWdodCB0cmFuc2l0aW9uIGVmZmVjdHMuXG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtcmVzaXplLWRpc2FibGUtYW5pbWF0aW9uJywgdHJ1ZSk7XG4gICAgdGhpcy5fcmVzaXplT2JzZXJ2ZXJUaW1lb3V0ID0gc2V0VGltZW91dChcbiAgICAgICgpID0+IHRoaXMucmVtb3ZlQXR0cmlidXRlKCdkYXRhLXJlc2l6ZS1kaXNhYmxlLWFuaW1hdGlvbicpLFxuICAgICAgREVCT1VOQ0VfVElNRSxcbiAgICApO1xuXG4gICAgLy8gVG8gYXZvaWQgUmVzaXplT2JzZXJ2ZXIgbG9vcHMsIHdlIHNldCB0aGUgaGVpZ2h0IGEgdGljayBsYXRlci5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX3NldE5vdGlmaWNhdGlvbkhlaWdodCgpKTtcbiAgfVxuXG4gIHByaXZhdGUgX29uTm90aWZpY2F0aW9uQW5pbWF0aW9uRW5kKGV2ZW50OiBBbmltYXRpb25FdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ29wZW5pbmcnICYmIGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdvcGVuJykge1xuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NpbmcnICYmIGV2ZW50LmFuaW1hdGlvbk5hbWUgPT09ICdjbG9zZS1oZWlnaHQnKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlT3BlbmluZygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdvcGVuZWQnO1xuICAgIHRoaXMuX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyLm9ic2VydmUodGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudCk7XG4gICAgdGhpcy5fZGlkT3Blbi5lbWl0KCk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVDbG9zaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NlZCc7XG4gICAgdGhpcy5fZGlkQ2xvc2UuZW1pdCgpO1xuICAgIHRoaXMuX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyLnVub2JzZXJ2ZSh0aGlzLl9ub3RpZmljYXRpb25FbGVtZW50KTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVtb3ZlKCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlbmRlcigpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgcmV0dXJuIGh0bWxgXG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fd3JhcHBlclwiIEBhbmltYXRpb25lbmQ9JHt0aGlzLl9vbk5vdGlmaWNhdGlvbkFuaW1hdGlvbkVuZH0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uXCI+XG4gICAgICAgICAgPHNiYi1pY29uXG4gICAgICAgICAgICBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX2ljb25cIlxuICAgICAgICAgICAgbmFtZT0ke25vdGlmaWNhdGlvblR5cGVzLmdldCh0aGlzLnR5cGUpIX1cbiAgICAgICAgICA+PC9zYmItaWNvbj5cblxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fY29udGVudFwiPlxuICAgICAgICAgICAgPHNiYi10aXRsZVxuICAgICAgICAgICAgICBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX3RpdGxlXCJcbiAgICAgICAgICAgICAgbGV2ZWw9JHt0aGlzLnRpdGxlTGV2ZWx9XG4gICAgICAgICAgICAgIHZpc3VhbC1sZXZlbD0ke3RoaXMuc2l6ZSA9PT0gJ20nID8gJzUnIDogJzYnfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8c2xvdCBuYW1lPVwidGl0bGVcIj4ke3RoaXMudGl0bGVDb250ZW50fTwvc2xvdD5cbiAgICAgICAgICAgIDwvc2JiLXRpdGxlPlxuICAgICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICAgIDwvc3Bhbj5cblxuICAgICAgICAgICR7IXRoaXMucmVhZG9ubHlcbiAgICAgICAgICAgID8gaHRtbGA8c3BhbiBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX2Nsb3NlLXdyYXBwZXJcIj5cbiAgICAgICAgICAgICAgICA8c2JiLWRpdmlkZXIgY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uX19kaXZpZGVyXCIgb3JpZW50YXRpb249XCJ2ZXJ0aWNhbFwiPjwvc2JiLWRpdmlkZXI+XG4gICAgICAgICAgICAgICAgPHNiYi1zZWNvbmRhcnktYnV0dG9uXG4gICAgICAgICAgICAgICAgICBzaXplPSR7dGhpcy5zaXplfVxuICAgICAgICAgICAgICAgICAgaWNvbi1uYW1lPVwiY3Jvc3Mtc21hbGxcIlxuICAgICAgICAgICAgICAgICAgQGNsaWNrPSR7KCkgPT4gdGhpcy5jbG9zZSgpfVxuICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD0ke2kxOG5DbG9zZU5vdGlmaWNhdGlvblt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX1cbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fY2xvc2VcIlxuICAgICAgICAgICAgICAgID48L3NiYi1zZWNvbmRhcnktYnV0dG9uPlxuICAgICAgICAgICAgICA8L3NwYW4+YFxuICAgICAgICAgICAgOiBub3RoaW5nfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIGA7XG4gIH1cbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi1ub3RpZmljYXRpb24nOiBTYmJOb3RpZmljYXRpb25FbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiU2JiTm90aWZpY2F0aW9uRWxlbWVudCIsIl9hIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|
|
510
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlc2l6ZUNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL3Jlc2l6ZS1jb250cm9sbGVyLmpzJztcbmltcG9ydCB7XG4gIHR5cGUgQ1NTUmVzdWx0R3JvdXAsXG4gIGh0bWwsXG4gIExpdEVsZW1lbnQsXG4gIG5vdGhpbmcsXG4gIHR5cGUgUHJvcGVydHlWYWx1ZXMsXG4gIHR5cGUgVGVtcGxhdGVSZXN1bHQsXG59IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgU2JiTGFuZ3VhZ2VDb250cm9sbGVyIH0gZnJvbSAnLi4vY29yZS9jb250cm9sbGVycy5qcyc7XG5pbXBvcnQgeyBmb3JjZVR5cGUsIG9taXRFbXB0eUNvbnZlcnRlciwgc2xvdFN0YXRlIH0gZnJvbSAnLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGlzTGVhbiwgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24gfSBmcm9tICcuLi9jb3JlL2RvbS5qcyc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICcuLi9jb3JlL2V2ZW50aW5nLmpzJztcbmltcG9ydCB7IGkxOG5DbG9zZU5vdGlmaWNhdGlvbiB9IGZyb20gJy4uL2NvcmUvaTE4bi5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYk9wZW5lZENsb3NlZFN0YXRlIH0gZnJvbSAnLi4vY29yZS9pbnRlcmZhY2VzLmpzJztcbmltcG9ydCB7IFNiYlJlYWRvbmx5TWl4aW4gfSBmcm9tICcuLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYlRpdGxlTGV2ZWwgfSBmcm9tICcuLi90aXRsZS5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL25vdGlmaWNhdGlvbi5zY3NzP2xpdCZpbmxpbmUnO1xuXG5pbXBvcnQgJy4uL2J1dHRvbi9zZWNvbmRhcnktYnV0dG9uLmpzJztcbmltcG9ydCAnLi4vZGl2aWRlci5qcyc7XG5pbXBvcnQgJy4uL2ljb24uanMnO1xuaW1wb3J0ICcuLi90aXRsZS5qcyc7XG5cbmNvbnN0IG5vdGlmaWNhdGlvblR5cGVzID0gbmV3IE1hcChbXG4gIFsnaW5mbycsICdjaXJjbGUtaW5mb3JtYXRpb24tc21hbGwnXSxcbiAgWydzdWNjZXNzJywgJ2NpcmNsZS10aWNrLXNtYWxsJ10sXG4gIFsnd2FybicsICdjaXJjbGUtZXhjbGFtYXRpb24tcG9pbnQtc21hbGwnXSxcbiAgWydlcnJvcicsICdjaXJjbGUtY3Jvc3Mtc21hbGwnXSxcbl0pO1xuXG5jb25zdCBERUJPVU5DRV9USU1FID0gMTUwO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIG1lc3NhZ2VzIHdoaWNoIHJlcXVpcmUgYSB1c2VyJ3MgYXR0ZW50aW9uIHdpdGhvdXQgaW50ZXJydXB0aW5nIGl0cyB0YXNrcy5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSBub3RpZmljYXRpb24gbWVzc2FnZS5cbiAqIEBzbG90IHRpdGxlIC0gVXNlIHRoaXMgdG8gcHJvdmlkZSBhIG5vdGlmaWNhdGlvbiB0aXRsZSAob3B0aW9uYWwpLlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gd2lsbE9wZW4gLSBFbWl0cyB3aGVuIHRoZSBvcGVuaW5nIGFuaW1hdGlvbiBzdGFydHMuXG4gKiBAZXZlbnQge0N1c3RvbUV2ZW50PHZvaWQ+fSBkaWRPcGVuIC0gRW1pdHMgd2hlbiB0aGUgb3BlbmluZyBhbmltYXRpb24gZW5kcy5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IHdpbGxDbG9zZSAtIEVtaXRzIHdoZW4gdGhlIGNsb3NpbmcgYW5pbWF0aW9uIHN0YXJ0cy5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8dm9pZD59IGRpZENsb3NlIC0gRW1pdHMgd2hlbiB0aGUgY2xvc2luZyBhbmltYXRpb24gZW5kcy5cbiAqIEBjc3Nwcm9wIFstLXNiYi1ub3RpZmljYXRpb24tbWFyZ2luPTBdIC0gQ2FuIGJlIHVzZWQgdG8gbW9kaWZ5IHRoZSBtYXJnaW4gaW4gb3JkZXIgdG8gZ2V0IGEgc21vb3RoZXIgYW5pbWF0aW9uLlxuICogU2VlIHN0eWxlIHNlY3Rpb24gZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi1ub3RpZmljYXRpb24nKVxuQHNsb3RTdGF0ZSgpXG5jbGFzcyBTYmJOb3RpZmljYXRpb25FbGVtZW50IGV4dGVuZHMgU2JiUmVhZG9ubHlNaXhpbihMaXRFbGVtZW50KSB7XG4gIC8vIFRPRE86IGZpeCBpbmhlcml0aW5nIGZyb20gU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQgcmVxdWlyZXM6IGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuLXdjL2N1c3RvbS1lbGVtZW50cy1tYW5pZmVzdC9pc3N1ZXMvMjUzXG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgc3R5bGVzOiBDU1NSZXN1bHRHcm91cCA9IHN0eWxlO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGV2ZW50cyA9IHtcbiAgICB3aWxsT3BlbjogJ3dpbGxPcGVuJyxcbiAgICBkaWRPcGVuOiAnZGlkT3BlbicsXG4gICAgd2lsbENsb3NlOiAnd2lsbENsb3NlJyxcbiAgICBkaWRDbG9zZTogJ2RpZENsb3NlJyxcbiAgfSBhcyBjb25zdDtcblxuICAvKiogVGhlIHR5cGUgb2YgdGhlIG5vdGlmaWNhdGlvbi4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3IgdHlwZTogJ2luZm8nIHwgJ3N1Y2Nlc3MnIHwgJ3dhcm4nIHwgJ2Vycm9yJyA9ICdpbmZvJztcblxuICAvKiogQ29udGVudCBvZiB0aXRsZS4gKi9cbiAgQGZvcmNlVHlwZSgpXG4gIEBwcm9wZXJ0eSh7IGF0dHJpYnV0ZTogJ3RpdGxlLWNvbnRlbnQnLCByZWZsZWN0OiB0cnVlLCBjb252ZXJ0ZXI6IG9taXRFbXB0eUNvbnZlcnRlciB9KVxuICBwdWJsaWMgYWNjZXNzb3IgdGl0bGVDb250ZW50OiBzdHJpbmcgPSAnJztcblxuICAvKiogTGV2ZWwgb2YgdGl0bGUsIGl0IHdpbGwgYmUgcmVuZGVyZWQgYXMgaGVhZGluZyB0YWcgKGUuZy4gaDMpLiBEZWZhdWx0cyB0byBsZXZlbCAzLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6ICd0aXRsZS1sZXZlbCcgfSkgcHVibGljIGFjY2Vzc29yIHRpdGxlTGV2ZWw6IFNiYlRpdGxlTGV2ZWwgPSAnMyc7XG5cbiAgLyoqXG4gICAqIFNpemUgdmFyaWFudCwgZWl0aGVyIHMgb3IgbS5cbiAgICogQGRlZmF1bHQgJ20nIC8gJ3MnIChsZWFuKVxuICAgKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgYWNjZXNzb3Igc2l6ZTogJ20nIHwgJ3MnID0gaXNMZWFuKCkgPyAncycgOiAnbSc7XG5cbiAgLyoqIFRoZSBlbmFibGVkIGFuaW1hdGlvbnMuICovXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSkgcHVibGljIGFjY2Vzc29yIGFuaW1hdGlvbjogJ29wZW4nIHwgJ2Nsb3NlJyB8ICdhbGwnIHwgJ25vbmUnID0gJ2FsbCc7XG5cbiAgLyoqIFRoZSBzdGF0ZSBvZiB0aGUgbm90aWZpY2F0aW9uLiAqL1xuICBwcml2YXRlIHNldCBfc3RhdGUoc3RhdGU6IFNiYk9wZW5lZENsb3NlZFN0YXRlKSB7XG4gICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnLCBzdGF0ZSk7XG4gIH1cbiAgcHJpdmF0ZSBnZXQgX3N0YXRlKCk6IFNiYk9wZW5lZENsb3NlZFN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBdHRyaWJ1dGUoJ2RhdGEtc3RhdGUnKSBhcyBTYmJPcGVuZWRDbG9zZWRTdGF0ZTtcbiAgfVxuXG4gIHByaXZhdGUgX25vdGlmaWNhdGlvbkVsZW1lbnQhOiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBfcmVzaXplT2JzZXJ2ZXJUaW1lb3V0OiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX25vdGlmaWNhdGlvblJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZUNvbnRyb2xsZXIodGhpcywge1xuICAgIHRhcmdldDogbnVsbCxcbiAgICBza2lwSW5pdGlhbDogdHJ1ZSxcbiAgICBjYWxsYmFjazogKCkgPT4gdGhpcy5fb25Ob3RpZmljYXRpb25SZXNpemUoKSxcbiAgfSk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLW5vdGlmaWNhdGlvbmAgc3RhcnRzIHRoZSBvcGVuaW5nIHRyYW5zaXRpb24uICovXG4gIHByaXZhdGUgX3dpbGxPcGVuOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMud2lsbE9wZW4sXG4gICAgeyBjYW5jZWxhYmxlOiB0cnVlIH0sXG4gICk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBgc2JiLW5vdGlmaWNhdGlvbmAgaXMgb3BlbmVkLiAqL1xuICBwcml2YXRlIF9kaWRPcGVuOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMuZGlkT3BlbixcbiAgICB7IGNhbmNlbGFibGU6IHRydWUgfSxcbiAgKTtcblxuICAvKiogRW1pdHMgd2hlbmV2ZXIgdGhlIGBzYmItbm90aWZpY2F0aW9uYCBiZWdpbnMgdGhlIGNsb3NpbmcgdHJhbnNpdGlvbi4gKi9cbiAgcHJpdmF0ZSBfd2lsbENsb3NlOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyKFxuICAgIHRoaXMsXG4gICAgU2JiTm90aWZpY2F0aW9uRWxlbWVudC5ldmVudHMud2lsbENsb3NlLFxuICAgIHsgY2FuY2VsYWJsZTogdHJ1ZSB9LFxuICApO1xuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgYHNiYi1ub3RpZmljYXRpb25gIGlzIGNsb3NlZC4gKi9cbiAgcHJpdmF0ZSBfZGlkQ2xvc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJOb3RpZmljYXRpb25FbGVtZW50LmV2ZW50cy5kaWRDbG9zZSxcbiAgICB7IGNhbmNlbGFibGU6IHRydWUgfSxcbiAgKTtcblxuICBwcml2YXRlIF9vcGVuKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9zdGF0ZSA9PT0gJ2Nsb3NlZCcpIHtcbiAgICAgIHRoaXMuX3N0YXRlID0gJ29wZW5pbmcnO1xuICAgICAgdGhpcy5fd2lsbE9wZW4uZW1pdCgpO1xuXG4gICAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBvcGVuZWRgIHN0YXRlLlxuICAgICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdvcGVuZWQnICYmIHRoaXMuX3dpbGxDbG9zZS5lbWl0KCkpIHtcbiAgICAgIHRoaXMuX3N0YXRlID0gJ2Nsb3NpbmcnO1xuXG4gICAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBjbG9zZWRgIHN0YXRlLlxuICAgICAgaWYgKHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkpIHtcbiAgICAgICAgdGhpcy5faGFuZGxlQ2xvc2luZygpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSB8fD0gJ2Nsb3NlZCc7XG5cbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllczogUHJvcGVydHlWYWx1ZXM8dGhpcz4pOiB2b2lkIHtcbiAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuXG4gICAgdGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudCA9IHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcihcbiAgICAgICcuc2JiLW5vdGlmaWNhdGlvbl9fd3JhcHBlcicsXG4gICAgKSBhcyBIVE1MRWxlbWVudDtcbiAgICAvLyBXZSBuZWVkIHRvIHdhaXQgZm9yIHRoZSBjb21wb25lbnQncyBgdXBkYXRlQ29tcGxldGVgIGluIG9yZGVyIHRvIHNldCB0aGUgY29ycmVjdFxuICAgIC8vIGhlaWdodCB0byB0aGUgbm90aWZpY2F0aW9uIGVsZW1lbnQuXG4gICAgdGhpcy51cGRhdGVDb21wbGV0ZS50aGVuKCgpID0+IHtcbiAgICAgIHRoaXMuX3NldE5vdGlmaWNhdGlvbkhlaWdodCgpO1xuICAgICAgdGhpcy5fb3BlbigpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKHRoaXMsICctLXNiYi1ub3RpZmljYXRpb24tYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICBwcml2YXRlIF9zZXROb3RpZmljYXRpb25IZWlnaHQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9ub3RpZmljYXRpb25FbGVtZW50Py5zY3JvbGxIZWlnaHQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3Qgbm90aWZpY2F0aW9uSGVpZ2h0ID0gYCR7dGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudC5zY3JvbGxIZWlnaHR9cHhgO1xuICAgIHRoaXMuc3R5bGUuc2V0UHJvcGVydHkoJy0tc2JiLW5vdGlmaWNhdGlvbi1oZWlnaHQnLCBub3RpZmljYXRpb25IZWlnaHQpO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25Ob3RpZmljYXRpb25SZXNpemUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N0YXRlICE9PSAnb3BlbmVkJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9yZXNpemVPYnNlcnZlclRpbWVvdXQpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl9yZXNpemVPYnNlcnZlclRpbWVvdXQpO1xuICAgIH1cblxuICAgIC8vIERpc2FibGUgdGhlIGFuaW1hdGlvbiB3aGVuIHJlc2l6aW5nIHRoZSBub3RpZmljYXRpb24gdG8gYXZvaWQgc3RyYW5nZSBoZWlnaHQgdHJhbnNpdGlvbiBlZmZlY3RzLlxuICAgIHRoaXMudG9nZ2xlQXR0cmlidXRlKCdkYXRhLXJlc2l6ZS1kaXNhYmxlLWFuaW1hdGlvbicsIHRydWUpO1xuICAgIHRoaXMuX3Jlc2l6ZU9ic2VydmVyVGltZW91dCA9IHNldFRpbWVvdXQoXG4gICAgICAoKSA9PiB0aGlzLnJlbW92ZUF0dHJpYnV0ZSgnZGF0YS1yZXNpemUtZGlzYWJsZS1hbmltYXRpb24nKSxcbiAgICAgIERFQk9VTkNFX1RJTUUsXG4gICAgKTtcblxuICAgIC8vIFRvIGF2b2lkIFJlc2l6ZU9ic2VydmVyIGxvb3BzLCB3ZSBzZXQgdGhlIGhlaWdodCBhIHRpY2sgbGF0ZXIuXG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLl9zZXROb3RpZmljYXRpb25IZWlnaHQoKSk7XG4gIH1cblxuICBwcml2YXRlIF9vbk5vdGlmaWNhdGlvbkFuaW1hdGlvbkVuZChldmVudDogQW5pbWF0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdvcGVuaW5nJyAmJiBldmVudC5hbmltYXRpb25OYW1lID09PSAnb3BlbicpIHtcbiAgICAgIHRoaXMuX2hhbmRsZU9wZW5pbmcoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fc3RhdGUgPT09ICdjbG9zaW5nJyAmJiBldmVudC5hbmltYXRpb25OYW1lID09PSAnY2xvc2UtaGVpZ2h0Jykge1xuICAgICAgdGhpcy5faGFuZGxlQ2xvc2luZygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2hhbmRsZU9wZW5pbmcoKTogdm9pZCB7XG4gICAgdGhpcy5fc3RhdGUgPSAnb3BlbmVkJztcbiAgICB0aGlzLl9ub3RpZmljYXRpb25SZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuX25vdGlmaWNhdGlvbkVsZW1lbnQpO1xuICAgIHRoaXMuX2RpZE9wZW4uZW1pdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xvc2luZygpOiB2b2lkIHtcbiAgICB0aGlzLl9zdGF0ZSA9ICdjbG9zZWQnO1xuICAgIHRoaXMuX2RpZENsb3NlLmVtaXQoKTtcbiAgICB0aGlzLl9ub3RpZmljYXRpb25SZXNpemVPYnNlcnZlci51bm9ic2VydmUodGhpcy5fbm90aWZpY2F0aW9uRWxlbWVudCk7XG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnJlbW92ZSgpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX3dyYXBwZXJcIiBAYW5pbWF0aW9uZW5kPSR7dGhpcy5fb25Ob3RpZmljYXRpb25BbmltYXRpb25FbmR9PlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvblwiPlxuICAgICAgICAgIDxzYmItaWNvblxuICAgICAgICAgICAgY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uX19pY29uXCJcbiAgICAgICAgICAgIG5hbWU9JHtub3RpZmljYXRpb25UeXBlcy5nZXQodGhpcy50eXBlKSF9XG4gICAgICAgICAgPjwvc2JiLWljb24+XG5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX2NvbnRlbnRcIj5cbiAgICAgICAgICAgIDxzYmItdGl0bGVcbiAgICAgICAgICAgICAgY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uX190aXRsZVwiXG4gICAgICAgICAgICAgIGxldmVsPSR7dGhpcy50aXRsZUxldmVsfVxuICAgICAgICAgICAgICB2aXN1YWwtbGV2ZWw9JHt0aGlzLnNpemUgPT09ICdtJyA/ICc1JyA6ICc2J31cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHNsb3QgbmFtZT1cInRpdGxlXCI+JHt0aGlzLnRpdGxlQ29udGVudH08L3Nsb3Q+XG4gICAgICAgICAgICA8L3NiYi10aXRsZT5cbiAgICAgICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgICAkeyF0aGlzLnJlYWRPbmx5XG4gICAgICAgICAgICA/IGh0bWxgPHNwYW4gY2xhc3M9XCJzYmItbm90aWZpY2F0aW9uX19jbG9zZS13cmFwcGVyXCI+XG4gICAgICAgICAgICAgICAgPHNiYi1kaXZpZGVyIGNsYXNzPVwic2JiLW5vdGlmaWNhdGlvbl9fZGl2aWRlclwiIG9yaWVudGF0aW9uPVwidmVydGljYWxcIj48L3NiYi1kaXZpZGVyPlxuICAgICAgICAgICAgICAgIDxzYmItc2Vjb25kYXJ5LWJ1dHRvblxuICAgICAgICAgICAgICAgICAgc2l6ZT0ke3RoaXMuc2l6ZX1cbiAgICAgICAgICAgICAgICAgIGljb24tbmFtZT1cImNyb3NzLXNtYWxsXCJcbiAgICAgICAgICAgICAgICAgIEBjbGljaz0keygpID0+IHRoaXMuY2xvc2UoKX1cbiAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9JHtpMThuQ2xvc2VOb3RpZmljYXRpb25bdGhpcy5fbGFuZ3VhZ2UuY3VycmVudF19XG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNiYi1ub3RpZmljYXRpb25fX2Nsb3NlXCJcbiAgICAgICAgICAgICAgICA+PC9zYmItc2Vjb25kYXJ5LWJ1dHRvbj5cbiAgICAgICAgICAgICAgPC9zcGFuPmBcbiAgICAgICAgICAgIDogbm90aGluZ31cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItbm90aWZpY2F0aW9uJzogU2JiTm90aWZpY2F0aW9uRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbIlNiYk5vdGlmaWNhdGlvbkVsZW1lbnQiLCJfYSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit';
|
|
2
2
|
import { SbbAutocompleteBaseElement } from '../../autocomplete.js';
|
|
3
3
|
import { SbbOptionBaseElement } from '../option.js';
|
|
4
|
-
declare const SbbOptgroupBaseElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement;
|
|
4
|
+
declare const SbbOptgroupBaseElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbElementInternalsMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbHydrationMixinType> & typeof LitElement & import('../../core/mixins.js').SbbElementInternalsConstructor;
|
|
5
5
|
export declare abstract class SbbOptgroupBaseElement extends SbbOptgroupBaseElement_base {
|
|
6
|
+
static readonly role: string | null;
|
|
6
7
|
static styles: CSSResultGroup;
|
|
7
8
|
/** Option group label. */
|
|
8
9
|
accessor label: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optgroup-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements/option/optgroup/optgroup-base-element.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAGb,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"optgroup-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements/option/optgroup/optgroup-base-element.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAGb,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAQxE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAIzD,OAAO,kBAAkB,CAAC;;AAS1B,8BAAsB,sBAAuB,SAAQ,2BAEpD;IACC,gBAAgC,IAAI,gBAAqC;IACzE,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,0BAA0B;IAC1B,SAEgB,KAAK,EAAE,MAAM,CAAM;IAE1B,SAAS,CAAC,QAAQ,CAAC,QAAQ,UAAS;IAEpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAEnD,SAAS,CAAC,QAAQ,KAAK,OAAO,IAAI,oBAAoB,EAAE,CAAC;;IAwBzC,iBAAiB,IAAI,IAAI;cAMtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAmB5E,SAAS,CAAC,QAAQ,CAAC,sBAAsB,IAAI,IAAI;IACjD,SAAS,CAAC,QAAQ,CAAC,qBAAqB,IAAI,0BAA0B,GAAG,IAAI;IAE7E,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,yBAAyB;IAkBjC,SAAS,CAAC,sBAAsB,IAAI,IAAI;IAMxC,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,iBAAiB;cAIN,MAAM,IAAI,cAAc;CAY5C"}
|