@sbb-esta/lyne-elements 2.11.2 → 3.0.0-next.1
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/accordion/accordion.component.js +22 -19
- package/action-group/action-group.component.d.ts.map +1 -1
- package/action-group/action-group.component.js +5 -3
- 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 +57 -68
- package/alert/alert-group/alert-group.component.js +3 -2
- 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 +120 -81
- package/autocomplete/autocomplete.component.d.ts +3 -2
- package/autocomplete/autocomplete.component.d.ts.map +1 -1
- package/autocomplete/autocomplete.component.js +31 -29
- 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 +46 -41
- 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 +10 -10
- 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-optgroup/autocomplete-grid-optgroup.component.js +20 -17
- 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 +22 -23
- 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 +29 -28
- 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/mini-button/mini-button.component.js +1 -1
- package/button/mini-button-group/mini-button-group.component.js +2 -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 +16 -14
- package/calendar/calendar.component.d.ts.map +1 -1
- package/calendar/calendar.component.js +144 -127
- package/card/card/card.component.js +12 -12
- 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 +18 -21
- 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 -22
- 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 -35
- package/checkbox/checkbox-group/checkbox-group.component.js +52 -39
- 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 -33
- package/checkbox/common/checkbox-common.d.ts +4 -2
- package/checkbox/common/checkbox-common.d.ts.map +1 -1
- package/checkbox/common/checkbox-common.js +15 -13
- 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 +134 -108
- package/clock/clock.component.d.ts +1 -1
- package/clock/clock.component.d.ts.map +1 -1
- package/clock/clock.component.js +61 -51
- package/container/container/container.component.js +29 -28
- package/container/sticky-bar/sticky-bar.component.d.ts.map +1 -1
- package/container/sticky-bar/sticky-bar.component.js +21 -23
- package/core/a11y/focus-trap-controller.js +14 -11
- package/core/a11y/focus.d.ts +0 -32
- package/core/a11y/focus.d.ts.map +1 -1
- package/core/a11y/focus.js +3 -63
- 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 +17 -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 +10 -11
- 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 +103 -66
- package/core/base-elements/link-base-element.js +6 -3
- 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 +3 -2
- package/core/base-elements.js +9 -8
- package/core/controllers/escapable-overlay-controller.js +12 -10
- package/core/controllers/id-reference-controller.js +14 -13
- package/core/controllers/inert-controller.d.ts.map +1 -1
- package/core/controllers/inert-controller.js +10 -8
- package/core/controllers/slot-state-controller.js +26 -16
- 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 +22 -22
- 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/force-type.js +5 -4
- 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/breakpoint.js +8 -8
- package/core/dom.d.ts +0 -2
- package/core/dom.d.ts.map +1 -1
- package/core/dom.js +22 -26
- package/core/eventing/event-emitter.js +5 -4
- 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 +41 -32
- 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 +89 -67
- 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 +54 -44
- 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 +36 -25
- package/core/mixins/hydration-mixin.js +13 -12
- package/core/mixins/named-slot-list-mixin.js +37 -32
- package/core/mixins/panel-mixin.js +27 -26
- 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/overlay/position.js +23 -23
- package/core/styles/core/mediaqueries.scss +1 -1
- package/core/styles/core.scss +65 -42
- 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 +24 -8
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +530 -0
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +1123 -0
- package/core/styles/table.scss +0 -4
- package/core/testing/event-spy.js +4 -2
- package/core/testing/wait-for-image-ready.js +9 -8
- package/core/testing/wait-for-render.js +9 -8
- package/core/testing.d.ts +0 -1
- package/core/testing.d.ts.map +1 -1
- package/core/testing.js +8 -10
- package/core.css +41 -18
- package/custom-elements.json +19267 -12207
- 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 +56 -58
- package/datepicker/common/datepicker-association-controllers.d.ts.map +1 -1
- package/datepicker/common/datepicker-association-controllers.js +28 -25
- 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 +43 -53
- 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 +97 -94
- 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 +75 -82
- package/datepicker/datepicker.js +2 -4
- package/datepicker.js +10 -12
- package/development/accordion/accordion.component.js +7 -4
- package/development/action-group/action-group.component.d.ts.map +1 -1
- package/development/action-group/action-group.component.js +5 -3
- 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 +10 -27
- package/development/alert/alert-group/alert-group.component.js +3 -2
- 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 +96 -55
- 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 +15 -14
- 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 +20 -16
- 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 +5 -5
- 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-optgroup/autocomplete-grid-optgroup.component.js +7 -4
- 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 +26 -22
- 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 +6 -8
- package/development/autocomplete.js +2 -3
- package/development/breadcrumb/breadcrumb/breadcrumb.component.js +3 -3
- 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 +13 -12
- 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/accent-button-link/accent-button-link.component.js +1 -1
- package/development/button/accent-button-static/accent-button-static.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/button-link/button-link.component.js +1 -1
- package/development/button/button-static/button-static.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/mini-button-group/mini-button-group.component.js +3 -2
- 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/secondary-button-link/secondary-button-link.component.js +1 -1
- package/development/button/secondary-button-static/secondary-button-static.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/button/transparent-button-link/transparent-button-link.component.js +1 -1
- package/development/button/transparent-button-static/transparent-button-static.component.js +1 -1
- package/development/calendar/calendar.component.d.ts +16 -14
- package/development/calendar/calendar.component.d.ts.map +1 -1
- package/development/calendar/calendar.component.js +65 -40
- package/development/card/card/card.component.js +1 -1
- 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/card-link/card-link.component.js +1 -1
- package/development/card/common/card-action-common.d.ts.map +1 -1
- package/development/card/common/card-action-common.js +10 -17
- 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 +23 -5
- package/development/checkbox/checkbox-group/checkbox-group.component.js +21 -8
- 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 +24 -5
- 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 +5 -3
- 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 +76 -40
- package/development/chip-label/chip-label.component.js +1 -1
- 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 +35 -25
- package/development/container/container/container.component.js +3 -2
- package/development/container/sticky-bar/sticky-bar.component.d.ts.map +1 -1
- package/development/container/sticky-bar/sticky-bar.component.js +5 -6
- package/development/core/a11y/arrow-navigation.js +1 -1
- package/development/core/a11y/fake-event-detection.js +1 -1
- package/development/core/a11y/focus-trap-controller.js +9 -6
- package/development/core/a11y/focus-visible-within-controller.js +1 -1
- 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 -80
- 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 +4 -19
- 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 +2 -3
- 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 +5 -3
- 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 +109 -66
- package/development/core/base-elements/link-base-element.js +7 -4
- 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 +4 -3
- package/development/core/base-elements.js +2 -1
- package/development/core/config/config.js +1 -1
- package/development/core/controllers/escapable-overlay-controller.js +5 -3
- package/development/core/controllers/id-reference-controller.js +3 -2
- package/development/core/controllers/inert-controller.d.ts.map +1 -1
- package/development/core/controllers/inert-controller.js +6 -4
- package/development/core/controllers/language-controller.js +1 -1
- package/development/core/controllers/media-matchers-controller.js +1 -1
- package/development/core/controllers/slot-state-controller.js +18 -8
- 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 +6 -6
- 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 +3 -7
- package/development/core/decorators/force-type.js +4 -3
- package/development/core/decorators/get-override.js +1 -1
- package/development/core/decorators/handle-distinct-change.js +1 -1
- package/development/core/decorators/host-attributes.js +1 -1
- 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/slot-state.js +1 -1
- 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/animation.js +1 -1
- package/development/core/dom/breakpoint.js +2 -2
- package/development/core/dom/host-context.js +1 -1
- package/development/core/dom/platform.js +1 -1
- package/development/core/dom/scroll.js +1 -1
- package/development/core/dom/set-or-remove-attribute.js +1 -1
- 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/composed-path-has-attribute.js +1 -1
- package/development/core/eventing/event-emitter.js +3 -2
- package/development/core/eventing/form-element-handlers.js +1 -1
- 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/throttle.js +1 -1
- 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 +16 -11
- 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 +58 -33
- 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 +37 -21
- 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 +28 -14
- package/development/core/mixins/hydration-mixin.js +4 -3
- package/development/core/mixins/named-slot-list-mixin.js +7 -4
- package/development/core/mixins/negative-mixin.js +1 -1
- package/development/core/mixins/panel-mixin.js +3 -2
- 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/update-scheduler-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/overlay/overlay-option-panel.js +1 -1
- package/development/core/overlay/overlay-trigger-attributes.js +1 -1
- package/development/core/overlay/overlay.js +1 -1
- package/development/core/overlay/position.js +5 -5
- package/development/core/testing/event-spy.js +5 -3
- package/development/core/testing/mocha-extensions.js +1 -1
- package/development/core/testing/wait-for-condition.js +1 -1
- package/development/core/testing/wait-for-image-ready.js +3 -2
- package/development/core/testing/wait-for-render.js +3 -2
- 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 +22 -25
- package/development/datepicker/common/datepicker-association-controllers.d.ts.map +1 -1
- package/development/datepicker/common/datepicker-association-controllers.js +11 -8
- 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 +11 -29
- 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 +56 -52
- 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 +20 -33
- package/development/datepicker/datepicker.js +2 -4
- package/development/datepicker.js +2 -4
- package/development/dialog/dialog/dialog.component.js +27 -16
- package/development/dialog/dialog-actions/dialog-actions.component.js +1 -1
- package/development/dialog/dialog-content/dialog-content.component.js +1 -1
- package/development/dialog/dialog-title/dialog-title.component.js +1 -1
- package/development/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/expansion-panel.component.js +13 -9
- 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 +10 -8
- 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 +6 -5
- 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/flip-card.component.js +13 -7
- 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 +8 -6
- 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 +8 -6
- package/development/footer/footer.component.js +2 -2
- package/development/form-error/form-error.component.js +4 -3
- 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 +183 -183
- 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 +8 -8
- 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 +6 -3
- package/development/header/header/header.component.d.ts.map +1 -1
- package/development/header/header/header.component.js +17 -13
- 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/header/header-link/header-link.component.js +1 -1
- package/development/icon/icon-base.js +1 -1
- package/development/icon/icon-name-mixin.js +1 -1
- package/development/icon/icon-request.js +3 -2
- package/development/icon/icon-validate.js +1 -1
- package/development/icon/icon.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 +15 -12
- package/development/journey-header/journey-header.component.js +1 -1
- package/development/lead-container/lead-container.component.js +1 -1
- package/development/link/block-link/block-link.component.js +1 -1
- 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/block-link-static/block-link-static.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/link.component.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/link-static/link-static.component.js +1 -1
- package/development/{link-common-CJEWffDZ.js → link-common-DPLJx5Uo.js} +2 -2
- package/development/link-list/common/link-list-base.js +1 -1
- package/development/link-list/link-list/link-list.component.js +1 -1
- package/development/link-list/link-list-anchor/link-list-anchor.component.js +2 -2
- 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/logo/logo.component.js +1 -1
- package/development/map-container/map-container.component.js +3 -2
- 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 +3 -3
- package/development/menu/menu/menu.component.d.ts.map +1 -1
- package/development/menu/menu/menu.component.js +34 -28
- 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/menu/menu-link/menu-link.component.js +1 -1
- package/development/message/message.component.js +1 -1
- package/development/navigation/common/navigation-action-common.js +5 -3
- package/development/navigation/navigation/navigation.component.d.ts +4 -3
- package/development/navigation/navigation/navigation.component.d.ts.map +1 -1
- package/development/navigation/navigation/navigation.component.js +45 -32
- 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-link/navigation-link.component.js +1 -1
- package/development/navigation/navigation-list/navigation-list.component.js +1 -1
- package/development/navigation/navigation-marker/navigation-marker.component.js +6 -4
- package/development/navigation/navigation-section/navigation-section.component.d.ts +3 -3
- package/development/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
- package/development/navigation/navigation-section/navigation-section.component.js +41 -33
- 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 +35 -50
- 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 +21 -40
- package/development/option/optgroup/optgroup.component.js +10 -6
- 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 +28 -23
- 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 +33 -27
- 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 -28
- package/development/overlay/overlay.component.js +9 -7
- 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 +9 -27
- package/development/paginator/compact-paginator/compact-paginator.component.js +1 -1
- package/development/paginator/paginator/paginator.component.js +3 -2
- 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 +26 -21
- 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 +10 -6
- 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 +25 -5
- 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 +31 -18
- 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 +28 -6
- package/development/screen-reader-only/screen-reader-only.component.js +1 -1
- package/development/select/select.component.d.ts +14 -12
- package/development/select/select.component.d.ts.map +1 -1
- package/development/select/select.component.js +156 -90
- package/development/selection-expansion-panel/selection-expansion-panel.component.js +11 -7
- 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/icon-sidebar-container/icon-sidebar-container.component.js +7 -4
- package/development/sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
- package/development/sidebar/icon-sidebar-link/icon-sidebar-link.component.js +1 -1
- package/development/sidebar/sidebar/sidebar.component.js +16 -9
- 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-container/sidebar-container.component.js +13 -9
- package/development/sidebar/sidebar-content/sidebar-content.component.js +1 -1
- 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 +7 -4
- package/development/signet/signet.component.js +1 -1
- package/development/skiplink-list/skiplink-list.component.js +1 -1
- 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 +40 -87
- package/development/status/status.component.js +1 -1
- 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 +12 -12
- 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 +8 -10
- 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 +37 -23
- 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 +10 -7
- 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 +39 -26
- 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 +4 -4
- 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 +37 -12
- 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 +40 -24
- package/development/teaser/teaser.component.js +1 -1
- package/development/teaser-hero/teaser-hero.component.js +1 -1
- 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/teaser-product/teaser-product/teaser-product.component.js +1 -1
- package/development/teaser-product/teaser-product-static/teaser-product-static.component.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 -201
- package/development/timetable-occupancy/timetable-occupancy.component.js +1 -1
- package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.js +3 -2
- 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/title/title.component.js +1 -1
- 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 +59 -76
- 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 +59 -53
- 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 +23 -18
- 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/development/train/train/train.component.js +1 -1
- package/development/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
- package/development/train/train-formation/train-formation.component.js +7 -5
- package/development/train/train-wagon/train-wagon.component.js +1 -1
- package/development/visual-checkbox/visual-checkbox.component.js +1 -1
- package/dialog/dialog/dialog.component.js +70 -59
- 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/expansion-panel.component.js +9 -5
- 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 +33 -32
- 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 +37 -36
- 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/flip-card.component.js +54 -48
- 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 +19 -18
- 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 +24 -23
- package/font-characters-extension.css +3 -3
- package/footer/footer.component.js +1 -1
- package/form-error/form-error.component.js +14 -13
- 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 +171 -175
- 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 +19 -20
- 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 +6 -3
- package/header/header/header.component.d.ts.map +1 -1
- package/header/header/header.component.js +52 -47
- package/header/header-button/header-button.component.d.ts +1 -0
- package/header/header-button/header-button.component.d.ts.map +1 -1
- package/icon/icon-request.js +11 -10
- package/icon-sidebar-button-common-DG8bnrBu.js +7 -0
- package/image/image.component.d.ts +1 -1
- package/image/image.component.d.ts.map +1 -1
- package/image/image.component.js +10 -6
- 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/map-container/map-container.component.js +2 -1
- 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 +3 -3
- package/menu/menu/menu.component.d.ts.map +1 -1
- package/menu/menu/menu.component.js +76 -70
- 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/common/navigation-action-common.js +21 -19
- package/navigation/navigation/navigation.component.d.ts +4 -3
- package/navigation/navigation/navigation.component.d.ts.map +1 -1
- package/navigation/navigation/navigation.component.js +94 -78
- 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-marker/navigation-marker.component.js +28 -26
- package/navigation/navigation-section/navigation-section.component.d.ts +3 -3
- package/navigation/navigation-section/navigation-section.component.d.ts.map +1 -1
- package/navigation/navigation-section/navigation-section.component.js +84 -76
- package/notification/notification.component.d.ts +4 -7
- package/notification/notification.component.d.ts.map +1 -1
- package/notification/notification.component.js +67 -75
- 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 +40 -38
- package/option/optgroup/optgroup.component.js +20 -16
- 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 +58 -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 +30 -30
- 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 +39 -48
- package/overlay/overlay.component.js +40 -38
- 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 +43 -55
- package/paginator/paginator/paginator.component.js +4 -3
- 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 +78 -68
- package/popover/popover-trigger/popover-trigger.component.d.ts +1 -0
- package/popover/popover-trigger/popover-trigger.component.d.ts.map +1 -1
- package/popover/popover-trigger/popover-trigger.component.js +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/common/radio-button-common.js +15 -11
- 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 -28
- 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 +55 -41
- 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 +54 -38
- package/select/select.component.d.ts +14 -12
- package/select/select.component.d.ts.map +1 -1
- package/select/select.component.js +168 -129
- package/selection-expansion-panel/selection-expansion-panel.component.js +39 -35
- package/sidebar/common.js +1 -1
- 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/icon-sidebar-container/icon-sidebar-container.component.js +13 -10
- package/sidebar/sidebar/sidebar.component.js +69 -62
- 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-container/sidebar-container.component.js +33 -29
- 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 +18 -16
- package/sidebar.js +1 -1
- package/slider/slider.component.d.ts +6 -15
- package/slider/slider.component.d.ts.map +1 -1
- package/slider/slider.component.js +73 -99
- package/standard-theme.css +66 -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 +23 -24
- 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 +14 -18
- 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 +89 -73
- 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 +10 -11
- package/table.css +25 -0
- 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 +93 -78
- 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 +17 -17
- 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 +63 -44
- 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 +72 -59
- package/teaser/teaser.component.js +1 -1
- package/teaser-product/common/teaser-product-common.d.ts +4 -2
- package/teaser-product/common/teaser-product-common.d.ts.map +1 -1
- package/teaser-product/common.js +1 -1
- package/teaser-product/teaser-product/teaser-product.component.js +1 -1
- package/teaser-product-common-CpMAlYEp.js +5 -0
- package/teaser-product.js +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 -139
- package/timetable-occupancy-icon/timetable-occupancy-icon.component.js +10 -9
- package/title/title-base.d.ts +4 -1
- package/title/title-base.d.ts.map +1 -1
- package/title/title-base.js +27 -28
- package/toast/toast.component.d.ts +3 -4
- package/toast/toast.component.d.ts.map +1 -1
- package/toast/toast.component.js +69 -72
- 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 +62 -59
- 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 +51 -46
- 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/train/train-formation/train-formation.component.js +43 -41
- 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 -17
- 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 -15
- 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 -9
- 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 -7
- 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 -23
- 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 -16
- 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 -10
- 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 -12
- 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
- package/icon-sidebar-button-common-CM-ueEhH.js +0 -7
- package/teaser-product-common-C8oSkIxy.js +0 -5
|
@@ -1,34 +1,2 @@
|
|
|
1
1
|
export declare const IS_FOCUSABLE_QUERY: string;
|
|
2
|
-
/**
|
|
3
|
-
* @deprecated will be removed with next major version. Use methods of FocusTrapController.
|
|
4
|
-
*
|
|
5
|
-
* Note: the use of this function for more complex scenarios (with many nested elements) may be expensive.
|
|
6
|
-
*/
|
|
7
|
-
export declare function getFocusableElements(elements: HTMLElement[], properties?: {
|
|
8
|
-
filter?: (el: HTMLElement) => boolean;
|
|
9
|
-
findFirstFocusable?: boolean;
|
|
10
|
-
includeInvisibleElements?: boolean;
|
|
11
|
-
}): HTMLElement[];
|
|
12
|
-
/**
|
|
13
|
-
* @deprecated will be removed with next major version. Use methods of FocusTrapController.
|
|
14
|
-
*/
|
|
15
|
-
export declare function getFirstFocusableElement(elements: HTMLElement[], filter?: (el: HTMLElement) => boolean): HTMLElement | null;
|
|
16
|
-
/**
|
|
17
|
-
* @deprecated Will be removed with next major release. Use SbbFocusTrapController.
|
|
18
|
-
*/
|
|
19
|
-
export declare class SbbFocusHandler {
|
|
20
|
-
private _controller;
|
|
21
|
-
/**
|
|
22
|
-
* @param element in which the focus should be trapped.
|
|
23
|
-
* @param options options object.
|
|
24
|
-
* @param options.filter filter function which is applied during searching for focusable element. If an element is filtered, also child elements are filtered.
|
|
25
|
-
* @param options.postFilter filter function which is applied after collecting focusable elements.
|
|
26
|
-
*/
|
|
27
|
-
trap(element: HTMLElement, options?: {
|
|
28
|
-
filter?: (el: HTMLElement) => boolean;
|
|
29
|
-
postFilter?: (el: HTMLElement) => boolean;
|
|
30
|
-
}): void;
|
|
31
|
-
isTrapped(): boolean;
|
|
32
|
-
disconnect(): void;
|
|
33
|
-
}
|
|
34
2
|
//# sourceMappingURL=focus.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/a11y/focus.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"focus.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/a11y/focus.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,QAWnB,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { interactivityChecker } from "./interactivity-checker.js";
|
|
2
1
|
const IS_FOCUSABLE_QUERY = [
|
|
3
2
|
"button",
|
|
4
3
|
"[href]",
|
|
@@ -9,84 +8,7 @@ const IS_FOCUSABLE_QUERY = [
|
|
|
9
8
|
"summary",
|
|
10
9
|
"[tabindex]"
|
|
11
10
|
].map((selector) => `${selector}:not([disabled],:disabled,[tabindex="-1"],[inert])`).join(",");
|
|
12
|
-
function getFocusableElements(elements, properties) {
|
|
13
|
-
const focusableEls = /* @__PURE__ */ new Set();
|
|
14
|
-
function getFocusables(elements2, filter) {
|
|
15
|
-
for (const el of elements2) {
|
|
16
|
-
if (filter && !filter(el)) {
|
|
17
|
-
continue;
|
|
18
|
-
}
|
|
19
|
-
if (el.nodeName === "SLOT") {
|
|
20
|
-
getFocusables(Array.from(el.assignedElements()), filter);
|
|
21
|
-
continue;
|
|
22
|
-
}
|
|
23
|
-
if (el.matches(IS_FOCUSABLE_QUERY) && (properties?.includeInvisibleElements ?? interactivityChecker.isVisible(el))) {
|
|
24
|
-
focusableEls.add(el);
|
|
25
|
-
}
|
|
26
|
-
if (properties?.findFirstFocusable && focusableEls.size > 0) {
|
|
27
|
-
break;
|
|
28
|
-
}
|
|
29
|
-
if (el.children.length || el.shadowRoot?.children.length) {
|
|
30
|
-
const children = Array.from(el.children).length ? Array.from(el.children) : Array.from(el.shadowRoot.children);
|
|
31
|
-
getFocusables(children, filter);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
getFocusables(elements, properties?.filter);
|
|
36
|
-
return [...focusableEls];
|
|
37
|
-
}
|
|
38
|
-
function getFirstFocusableElement(elements, filter) {
|
|
39
|
-
const focusableElements = getFocusableElements(elements, {
|
|
40
|
-
filter,
|
|
41
|
-
findFirstFocusable: true
|
|
42
|
-
});
|
|
43
|
-
return focusableElements.length ? focusableElements[0] : null;
|
|
44
|
-
}
|
|
45
|
-
class SbbFocusHandler {
|
|
46
|
-
constructor() {
|
|
47
|
-
this._controller = null;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* @param element in which the focus should be trapped.
|
|
51
|
-
* @param options options object.
|
|
52
|
-
* @param options.filter filter function which is applied during searching for focusable element. If an element is filtered, also child elements are filtered.
|
|
53
|
-
* @param options.postFilter filter function which is applied after collecting focusable elements.
|
|
54
|
-
*/
|
|
55
|
-
trap(element, options) {
|
|
56
|
-
this._controller = new AbortController();
|
|
57
|
-
element.addEventListener("keydown", (event) => {
|
|
58
|
-
if (event.key !== "Tab") {
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
const elementChildren = Array.from(element.shadowRoot.children || []);
|
|
62
|
-
const focusableElements = getFocusableElements(elementChildren, {
|
|
63
|
-
filter: options?.filter
|
|
64
|
-
});
|
|
65
|
-
const filteredFocusableElements = focusableElements.filter(options?.postFilter ?? (() => true));
|
|
66
|
-
if (!filteredFocusableElements.length) {
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
const firstFocusable = filteredFocusableElements[0];
|
|
70
|
-
const lastFocusable = filteredFocusableElements[filteredFocusableElements.length - 1];
|
|
71
|
-
const [pivot, next] = event.shiftKey ? [firstFocusable, lastFocusable] : [lastFocusable, firstFocusable];
|
|
72
|
-
if (firstFocusable.getRootNode().activeElement === pivot || lastFocusable.getRootNode().activeElement === pivot) {
|
|
73
|
-
next.focus();
|
|
74
|
-
event.preventDefault();
|
|
75
|
-
}
|
|
76
|
-
}, { signal: this._controller.signal });
|
|
77
|
-
}
|
|
78
|
-
isTrapped() {
|
|
79
|
-
return !!this._controller;
|
|
80
|
-
}
|
|
81
|
-
disconnect() {
|
|
82
|
-
this._controller?.abort();
|
|
83
|
-
this._controller = null;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
11
|
export {
|
|
87
|
-
IS_FOCUSABLE_QUERY
|
|
88
|
-
SbbFocusHandler,
|
|
89
|
-
getFirstFocusableElement,
|
|
90
|
-
getFocusableElements
|
|
12
|
+
IS_FOCUSABLE_QUERY
|
|
91
13
|
};
|
|
92
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9jdXMuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL2ExMXkvZm9jdXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IElTX0ZPQ1VTQUJMRV9RVUVSWSA9IFtcbiAgJ2J1dHRvbicsXG4gICdbaHJlZl0nLFxuICAnaW5wdXQnLFxuICAnc2VsZWN0JyxcbiAgJ3RleHRhcmVhJyxcbiAgJ2RldGFpbHMnLFxuICAnc3VtbWFyeScsXG4gICdbdGFiaW5kZXhdJyxcbl1cbiAgLm1hcCgoc2VsZWN0b3IpID0+IGAke3NlbGVjdG9yfTpub3QoW2Rpc2FibGVkXSw6ZGlzYWJsZWQsW3RhYmluZGV4PVwiLTFcIl0sW2luZXJ0XSlgKVxuICAuam9pbignLCcpO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFPLE1BQU0scUJBQXFCO0FBQUEsRUFDaEM7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQ0QsRUFDRSxJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsb0RBQW9ELEVBQ2pGLEtBQUssR0FBRzsifQ==
|
|
@@ -54,10 +54,5 @@ declare class SbbInputModalityDetector {
|
|
|
54
54
|
private _updateState;
|
|
55
55
|
}
|
|
56
56
|
export declare const sbbInputModalityDetector: SbbInputModalityDetector;
|
|
57
|
-
/**
|
|
58
|
-
* @deprecated Will be removed with next major version.
|
|
59
|
-
* Set the input modality in order to avoid showing the outline in Safari.
|
|
60
|
-
*/
|
|
61
|
-
export declare function setModalityOnNextFocus(elementToFocus: HTMLElement | null | undefined): void;
|
|
62
57
|
export {};
|
|
63
58
|
//# sourceMappingURL=input-modality-detector.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input-modality-detector.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/a11y/input-modality-detector.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,IAAI,CAAC;AAmDjF;;;;;;;;;;;;;GAaG;AACH,cAAM,wBAAwB;IAC5B,iDAAiD;IACjD,IAAW,kBAAkB,IAAI,gBAAgB,GAAG,IAAI,CAEvD;IAED;;;OAGG;IACH,OAAO,CAAC,mBAAmB,CAAoC;IAE/D;;;OAGG;IACH,IAAW,gBAAgB,IAAI,WAAW,GAAG,IAAI,CAEhD;IACD,OAAO,CAAC,iBAAiB,CAA4B;IAErD,iDAAiD;IACjD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAEvB;IAEF;;;OAGG;IACH,OAAO,CAAC,YAAY,CAAK;;IAUlB,KAAK,IAAI,IAAI;IAKpB;;;OAGG;IACH,OAAO,CAAC,UAAU,CAQhB;IAEF;;;OAGG;IACH,OAAO,CAAC,YAAY,CAWlB;IAEF;;;OAGG;IACH,OAAO,CAAC,aAAa,CAanB;IAEF,OAAO,CAAC,YAAY;CAQrB;AAED,eAAO,MAAM,wBAAwB,0BAAiC,CAAC
|
|
1
|
+
{"version":3,"file":"input-modality-detector.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/a11y/input-modality-detector.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,IAAI,CAAC;AAmDjF;;;;;;;;;;;;;GAaG;AACH,cAAM,wBAAwB;IAC5B,iDAAiD;IACjD,IAAW,kBAAkB,IAAI,gBAAgB,GAAG,IAAI,CAEvD;IAED;;;OAGG;IACH,OAAO,CAAC,mBAAmB,CAAoC;IAE/D;;;OAGG;IACH,IAAW,gBAAgB,IAAI,WAAW,GAAG,IAAI,CAEhD;IACD,OAAO,CAAC,iBAAiB,CAA4B;IAErD,iDAAiD;IACjD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAEvB;IAEF;;;OAGG;IACH,OAAO,CAAC,YAAY,CAAK;;IAUlB,KAAK,IAAI,IAAI;IAKpB;;;OAGG;IACH,OAAO,CAAC,UAAU,CAQhB;IAEF;;;OAGG;IACH,OAAO,CAAC,YAAY,CAWlB;IAEF;;;OAGG;IACH,OAAO,CAAC,aAAa,CAanB;IAEF,OAAO,CAAC,YAAY;CAQrB;AAED,eAAO,MAAM,wBAAwB,0BAAiC,CAAC"}
|
|
@@ -34,7 +34,8 @@ class SbbInputModalityDetector {
|
|
|
34
34
|
};
|
|
35
35
|
this._lastTouchMs = 0;
|
|
36
36
|
this._onKeydown = (event) => {
|
|
37
|
-
|
|
37
|
+
var _a, _b;
|
|
38
|
+
if ((_b = (_a = this._options) == null ? void 0 : _a.ignoreKeys) == null ? void 0 : _b.some((keyCode) => keyCode === event.keyCode)) {
|
|
38
39
|
return;
|
|
39
40
|
}
|
|
40
41
|
this._updateState("keyboard", event);
|
|
@@ -73,23 +74,7 @@ class SbbInputModalityDetector {
|
|
|
73
74
|
}
|
|
74
75
|
}
|
|
75
76
|
const sbbInputModalityDetector = new SbbInputModalityDetector();
|
|
76
|
-
function setModalityOnNextFocus(elementToFocus) {
|
|
77
|
-
if (!elementToFocus) {
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
const mostRecentModality = sbbInputModalityDetector.mostRecentModality;
|
|
81
|
-
if (!(elementToFocus && mostRecentModality !== null)) {
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
elementToFocus.addEventListener("focus", () => {
|
|
85
|
-
elementToFocus.setAttribute("data-focus-origin", mostRecentModality);
|
|
86
|
-
elementToFocus.addEventListener("blur", () => elementToFocus.removeAttribute("data-focus-origin"), {
|
|
87
|
-
once: true
|
|
88
|
-
});
|
|
89
|
-
}, { once: true });
|
|
90
|
-
}
|
|
91
77
|
export {
|
|
92
|
-
sbbInputModalityDetector
|
|
93
|
-
setModalityOnNextFocus
|
|
78
|
+
sbbInputModalityDetector
|
|
94
79
|
};
|
|
95
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbW9kYWxpdHktZGV0ZWN0b3IuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL2ExMXkvaW5wdXQtbW9kYWxpdHktZGV0ZWN0b3IudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVGhpcyBpbXBsZW1lbnRhdGlvbiBpcyBpbnNwaXJlZCBieSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL2Jsb2IvbWFpbi9zcmMvY2RrL2ExMXkvaW5wdXQtbW9kYWxpdHkvaW5wdXQtbW9kYWxpdHktZGV0ZWN0b3IudHNcblxuaW1wb3J0IHsgaXNTZXJ2ZXIgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgeyBnZXRFdmVudFRhcmdldCB9IGZyb20gJy4uL2V2ZW50aW5nLmpzJztcblxuaW1wb3J0IHtcbiAgaXNGYWtlTW91c2Vkb3duRnJvbVNjcmVlblJlYWRlcixcbiAgaXNGYWtlVG91Y2hzdGFydEZyb21TY3JlZW5SZWFkZXIsXG59IGZyb20gJy4vZmFrZS1ldmVudC1kZXRlY3Rpb24uanMnO1xuXG5leHBvcnQgdHlwZSBTYmJJbnB1dE1vZGFsaXR5ID0gJ3RvdWNoJyB8ICdtb3VzZScgfCAna2V5Ym9hcmQnIHwgJ3Byb2dyYW0nIHwgbnVsbDtcblxuLyoqIE9wdGlvbnMgdG8gY29uZmlndXJlIHRoZSBiZWhhdmlvciBvZiB0aGUgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLiAqL1xuaW50ZXJmYWNlIFNiYklucHV0TW9kYWxpdHlEZXRlY3Rvck9wdGlvbnMge1xuICAvKiogS2V5cyB0byBpZ25vcmUgd2hlbiBkZXRlY3Rpbmcga2V5Ym9hcmQgaW5wdXQgbW9kYWxpdHkuICovXG4gIGlnbm9yZUtleXM/OiBudW1iZXJbXTtcbn1cblxuY29uc3QgU0hJRlQgPSAxNjtcbmNvbnN0IENPTlRST0wgPSAxNztcbmNvbnN0IEFMVCA9IDE4O1xuY29uc3QgTUVUQSA9IDkxOyAvLyBXSU5fS0VZX0xFRlRcbmNvbnN0IE1BQ19NRVRBID0gMjI0O1xuXG4vKipcbiAqIERlZmF1bHQgb3B0aW9ucyBmb3IgdGhlIFNiYklucHV0TW9kYWxpdHlEZXRlY3Rvci5cbiAqXG4gKiBNb2RpZmllciBrZXlzIGFyZSBpZ25vcmVkIGJ5IGRlZmF1bHQgKGkuZS4gd2hlbiBwcmVzc2VkIHdvbid0IGNhdXNlIHRoZSBzZXJ2aWNlIHRvIGRldGVjdFxuICoga2V5Ym9hcmQgaW5wdXQgbW9kYWxpdHkpIGZvciB0d28gcmVhc29uczpcbiAqXG4gKiAxLiBNb2RpZmllciBrZXlzIGFyZSBjb21tb25seSB1c2VkIHdpdGggbW91c2UgdG8gcGVyZm9ybSBhY3Rpb25zIHN1Y2ggYXMgJ3JpZ2h0IGNsaWNrJyBvciAnb3BlblxuICogICAgaW4gbmV3IHRhYicsIGFuZCBhcmUgdGh1cyBsZXNzIHJlcHJlc2VudGF0aXZlIG9mIGFjdHVhbCBrZXlib2FyZCBpbnRlcmFjdGlvbi5cbiAqIDIuIFZvaWNlT3ZlciB0cmlnZ2VycyBzb21lIGtleWJvYXJkIGV2ZW50cyB3aGVuIGxpbmVhcmx5IG5hdmlnYXRpbmcgd2l0aCBDb250cm9sICsgT3B0aW9uIChidXRcbiAqICAgIGNvbmZ1c2luZ2x5IG5vdCB3aXRoIENhcHMgTG9jaykuIFRodXMsIHRvIGhhdmUgcGFyaXR5IHdpdGggb3RoZXIgc2NyZWVuIHJlYWRlcnMsIHdlIGlnbm9yZVxuICogICAgdGhlc2Uga2V5cyBzbywgYXMgdG8gbm90IHVwZGF0ZSB0aGUgaW5wdXQgbW9kYWxpdHkuXG4gKlxuICogTm90ZSB0aGF0IHdlIGRvIG5vdCBieSBkZWZhdWx0IGlnbm9yZSB0aGUgcmlnaHQgTWV0YSBrZXkgb24gU2FmYXJpIGJlY2F1c2UgaXQgaGFzIHRoZSBzYW1lIGtleVxuICogY29kZSBhcyB0aGUgQ29udGV4dE1lbnUga2V5IG9uIG90aGVyIGJyb3dzZXJzLiBXaGVuIHdlIHN3aXRjaCB0byB1c2luZyBldmVudC5rZXksIHdlIGNhblxuICogZGlzdGluZ3Vpc2ggYmV0d2VlbiB0aGUgdHdvLlxuICovXG5jb25zdCBpbnB1dE1vZGFsaXR5RGV0ZWN0b3JPcHRpb25zOiBTYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3JPcHRpb25zID0ge1xuICBpZ25vcmVLZXlzOiBbQUxULCBDT05UUk9MLCBNQUNfTUVUQSwgTUVUQSwgU0hJRlRdLFxufTtcblxuLyoqXG4gKiBUaGUgYW1vdW50IG9mIHRpbWUgbmVlZGVkIHRvIHBhc3MgYWZ0ZXIgYSB0b3VjaHN0YXJ0IGV2ZW50IGluIG9yZGVyIGZvciBhIHN1YnNlcXVlbnQgbW91c2Vkb3duXG4gKiBldmVudCB0byBiZSBhdHRyaWJ1dGVkIGFzIG1vdXNlIGFuZCBub3QgdG91Y2guXG4gKlxuICogVGhyb3VnaCB0cmlhbCBhbmQgZXJyb3IgaXQgd2FzIGZvdW5kIHRoYXQgYSB2YWx1ZSBvZiBhcm91bmQgNjUwbXMgc2VlbXMgYXBwcm9wcmlhdGUuXG4gKi9cbmNvbnN0IHRvdWNoQnVmZmVyTXMgPSA2NTA7XG5cbi8qKlxuICogRXZlbnQgbGlzdGVuZXIgb3B0aW9ucyB0aGF0IGVuYWJsZSBjYXB0dXJpbmcgYW5kIGFsc28gbWFyayB0aGUgbGlzdGVuZXIgYXMgcGFzc2l2ZSBpZiB0aGUgYnJvd3NlclxuICogc3VwcG9ydHMgaXQuXG4gKi9cbmNvbnN0IG1vZGFsaXR5RXZlbnRMaXN0ZW5lck9wdGlvbnMgPSB7XG4gIHBhc3NpdmU6IHRydWUsXG4gIGNhcHR1cmU6IHRydWUsXG59O1xuXG4vKipcbiAqIFNlcnZpY2UgdGhhdCBkZXRlY3RzIHRoZSB1c2VyJ3MgaW5wdXQgbW9kYWxpdHkuXG4gKlxuICogVGhpcyBzZXJ2aWNlIGRvZXMgbm90IHVwZGF0ZSB0aGUgaW5wdXQgbW9kYWxpdHkgd2hlbiBhIHVzZXIgbmF2aWdhdGVzIHdpdGggYSBzY3JlZW4gcmVhZGVyXG4gKiAoZS5nLiBsaW5lYXIgbmF2aWdhdGlvbiB3aXRoIFZvaWNlT3Zlciwgb2JqZWN0IG5hdmlnYXRpb24gLyBicm93c2UgbW9kZSB3aXRoIE5WREEsIHZpcnR1YWwgUENcbiAqIGN1cnNvciBtb2RlIHdpdGggSkFXUykuIFRoaXMgaXMgaW4gcGFydCBkdWUgdG8gdGVjaG5pY2FsIGxpbWl0YXRpb25zIChpLmUuIGtleWJvYXJkIGV2ZW50cyBkbyBub3RcbiAqIGZpcmUgYXMgZXhwZWN0ZWQgaW4gdGhlc2UgbW9kZXMpIGJ1dCBpcyBhbHNvIGFyZ3VhYmx5IHRoZSBjb3JyZWN0IGJlaGF2aW9yLiBOYXZpZ2F0aW5nIHdpdGggYVxuICogc2NyZWVuIHJlYWRlciBpcyBha2luIHRvIHZpc3VhbGx5IHNjYW5uaW5nIGEgcGFnZSwgYW5kIHNob3VsZCBub3QgYmUgaW50ZXJwcmV0ZWQgYXMgYWN0dWFsIHVzZXJcbiAqIGlucHV0IGludGVyYWN0aW9uLlxuICpcbiAqIFdoZW4gYSB1c2VyIGlzIG5vdCBuYXZpZ2F0aW5nIGJ1dCAqaW50ZXJhY3RpbmcqIHdpdGggYSBzY3JlZW4gcmVhZGVyLCB0aGlzIHNlcnZpY2UgYXR0ZW1wdHMgdG9cbiAqIHVwZGF0ZSB0aGUgaW5wdXQgbW9kYWxpdHkgdG8ga2V5Ym9hcmQsIGJ1dCBpbiBnZW5lcmFsIHRoaXMgc2VydmljZSdzIGJlaGF2aW9yIGlzIGxhcmdlbHlcbiAqIHVuZGVmaW5lZC5cbiAqL1xuY2xhc3MgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yIHtcbiAgLyoqIFRoZSBtb3N0IHJlY2VudGx5IGRldGVjdGVkIGlucHV0IG1vZGFsaXR5LiAqL1xuICBwdWJsaWMgZ2V0IG1vc3RSZWNlbnRNb2RhbGl0eSgpOiBTYmJJbnB1dE1vZGFsaXR5IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX21vc3RSZWNlbnRNb2RhbGl0eTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbW9zdCByZWNlbnQgbW9kYWxpdHkgbXVzdCBiZSBpbml0aWFsaXNlZCB3aXRoIHRoZSB2YWx1ZSAnbW91c2UnIHRvIGNvdmVyIHRoZSBjYXNlIHdoZXJlIGFuIGFjdGlvbiBpc1xuICAgKiBwZXJmb3JtZWQgYnV0IG5vIG1vdXNlIG9yIGtleWJvYXJkIGV2ZW50IGhhcyB5ZXQgb2NjdXJyZWQgb24gdGhlIHBhZ2UgKGUuZy4gYHNiYi1wb3BvdmVyYCB3aXRoIGhvdmVyIHRyaWdnZXIpLlxuICAgKi9cbiAgcHJpdmF0ZSBfbW9zdFJlY2VudE1vZGFsaXR5OiBTYmJJbnB1dE1vZGFsaXR5IHwgbnVsbCA9ICdtb3VzZSc7XG5cbiAgLyoqXG4gICAqIFRoZSBtb3N0IHJlY2VudGx5IGRldGVjdGVkIGlucHV0IG1vZGFsaXR5IGV2ZW50IHRhcmdldC4gSXMgbnVsbCBpZiBubyBpbnB1dCBtb2RhbGl0eSBoYXMgYmVlblxuICAgKiBkZXRlY3RlZCBvciBpZiB0aGUgYXNzb2NpYXRlZCBldmVudCB0YXJnZXQgaXMgbnVsbCBmb3Igc29tZSB1bmtub3duIHJlYXNvbi5cbiAgICovXG4gIHB1YmxpYyBnZXQgbW9zdFJlY2VudFRhcmdldCgpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9tb3N0UmVjZW50VGFyZ2V0O1xuICB9XG4gIHByaXZhdGUgX21vc3RSZWNlbnRUYXJnZXQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIE9wdGlvbnMgZm9yIHRoaXMgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLiAqL1xuICBwcml2YXRlIHJlYWRvbmx5IF9vcHRpb25zOiBTYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3JPcHRpb25zID0ge1xuICAgIC4uLmlucHV0TW9kYWxpdHlEZXRlY3Rvck9wdGlvbnMsXG4gIH07XG5cbiAgLyoqXG4gICAqIFRoZSB0aW1lc3RhbXAgb2YgdGhlIGxhc3QgdG91Y2ggaW5wdXQgbW9kYWxpdHkuIFVzZWQgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgbW91c2Vkb3duIGV2ZW50c1xuICAgKiBzaG91bGQgYmUgYXR0cmlidXRlZCB0byBtb3VzZSBvciB0b3VjaC5cbiAgICovXG4gIHByaXZhdGUgX2xhc3RUb3VjaE1zID0gMDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKCFpc1NlcnZlcikge1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuX29uS2V5ZG93biwgbW9kYWxpdHlFdmVudExpc3RlbmVyT3B0aW9ucyk7XG4gICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCB0aGlzLl9vbk1vdXNlZG93biwgbW9kYWxpdHlFdmVudExpc3RlbmVyT3B0aW9ucyk7XG4gICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgdGhpcy5fb25Ub3VjaHN0YXJ0LCBtb2RhbGl0eUV2ZW50TGlzdGVuZXJPcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5fdXBkYXRlU3RhdGUoJ21vdXNlJywgbnVsbCk7XG4gICAgdGhpcy5fbGFzdFRvdWNoTXMgPSAwO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMga2V5ZG93biBldmVudHMuIE11c3QgYmUgYW4gYXJyb3cgZnVuY3Rpb24gaW4gb3JkZXIgdG8gcHJlc2VydmUgdGhlIGNvbnRleHQgd2hlbiBpdCBnZXRzXG4gICAqIGJvdW5kLlxuICAgKi9cbiAgcHJpdmF0ZSBfb25LZXlkb3duID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCA9PiB7XG4gICAgLy8gSWYgdGhpcyBpcyBvbmUgb2YgdGhlIGtleXMgd2Ugc2hvdWxkIGlnbm9yZSwgdGhlbiBpZ25vcmUgaXQgYW5kIGRvbid0IHVwZGF0ZSB0aGUgaW5wdXRcbiAgICAvLyBtb2RhbGl0eSB0byBrZXlib2FyZC5cbiAgICBpZiAodGhpcy5fb3B0aW9ucz8uaWdub3JlS2V5cz8uc29tZSgoa2V5Q29kZSkgPT4ga2V5Q29kZSA9PT0gZXZlbnQua2V5Q29kZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl91cGRhdGVTdGF0ZSgna2V5Ym9hcmQnLCBldmVudCk7XG4gIH07XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgbW91c2Vkb3duIGV2ZW50cy4gTXVzdCBiZSBhbiBhcnJvdyBmdW5jdGlvbiBpbiBvcmRlciB0byBwcmVzZXJ2ZSB0aGUgY29udGV4dCB3aGVuIGl0XG4gICAqIGdldHMgYm91bmQuXG4gICAqL1xuICBwcml2YXRlIF9vbk1vdXNlZG93biA9IChldmVudDogTW91c2VFdmVudCk6IHZvaWQgPT4ge1xuICAgIC8vIFRvdWNoZXMgdHJpZ2dlciBib3RoIHRvdWNoIGFuZCBtb3VzZSBldmVudHMsIHNvIHdlIG5lZWQgdG8gZGlzdGluZ3Vpc2ggYmV0d2VlbiBtb3VzZSBldmVudHNcbiAgICAvLyB0aGF0IHdlcmUgdHJpZ2dlcmVkIHZpYSBtb3VzZSB2cyB0b3VjaC4gVG8gZG8gc28sIGNoZWNrIGlmIHRoZSBtb3VzZSBldmVudCBvY2N1cnMgY2xvc2VseVxuICAgIC8vIGFmdGVyIHRoZSBwcmV2aW91cyB0b3VjaCBldmVudC5cbiAgICBpZiAoRGF0ZS5ub3coKSAtIHRoaXMuX2xhc3RUb3VjaE1zIDwgdG91Y2hCdWZmZXJNcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIEZha2UgbW91c2Vkb3duIGV2ZW50cyBhcmUgZmlyZWQgYnkgc29tZSBzY3JlZW4gcmVhZGVycyB3aGVuIGNvbnRyb2xzIGFyZSBhY3RpdmF0ZWQgYnkgdGhlXG4gICAgLy8gc2NyZWVuIHJlYWRlci4gQXR0cmlidXRlIHRoZW0gdG8ga2V5Ym9hcmQgaW5wdXQgbW9kYWxpdHkuXG4gICAgdGhpcy5fdXBkYXRlU3RhdGUoaXNGYWtlTW91c2Vkb3duRnJvbVNjcmVlblJlYWRlcihldmVudCkgPyAna2V5Ym9hcmQnIDogJ21vdXNlJywgZXZlbnQpO1xuICB9O1xuXG4gIC8qKlxuICAgKiBIYW5kbGVzIHRvdWNoc3RhcnQgZXZlbnRzLiBNdXN0IGJlIGFuIGFycm93IGZ1bmN0aW9uIGluIG9yZGVyIHRvIHByZXNlcnZlIHRoZSBjb250ZXh0IHdoZW4gaXRcbiAgICogZ2V0cyBib3VuZC5cbiAgICovXG4gIHByaXZhdGUgX29uVG91Y2hzdGFydCA9IChldmVudDogVG91Y2hFdmVudCk6IHZvaWQgPT4ge1xuICAgIC8vIFNhbWUgc2NlbmFyaW8gYXMgbWVudGlvbmVkIGluIF9vbk1vdXNlZG93biwgYnV0IG9uIHRvdWNoIHNjcmVlbiBkZXZpY2VzLCBmYWtlIHRvdWNoc3RhcnRcbiAgICAvLyBldmVudHMgYXJlIGZpcmVkLiBBZ2FpbiwgYXR0cmlidXRlIHRvIGtleWJvYXJkIGlucHV0IG1vZGFsaXR5LlxuICAgIGlmIChpc0Zha2VUb3VjaHN0YXJ0RnJvbVNjcmVlblJlYWRlcihldmVudCkpIHtcbiAgICAgIHRoaXMuX3VwZGF0ZVN0YXRlKCdrZXlib2FyZCcsIGV2ZW50KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBTdG9yZSB0aGUgdGltZXN0YW1wIG9mIHRoaXMgdG91Y2ggZXZlbnQsIGFzIGl0J3MgdXNlZCB0byBkaXN0aW5ndWlzaCBiZXR3ZWVuIG1vdXNlIGV2ZW50c1xuICAgIC8vIHRyaWdnZXJlZCB2aWEgbW91c2UgdnMgdG91Y2guXG4gICAgdGhpcy5fbGFzdFRvdWNoTXMgPSBEYXRlLm5vdygpO1xuXG4gICAgdGhpcy5fdXBkYXRlU3RhdGUoJ3RvdWNoJywgZXZlbnQpO1xuICB9O1xuXG4gIHByaXZhdGUgX3VwZGF0ZVN0YXRlKG1vZGFsaXR5OiBTYmJJbnB1dE1vZGFsaXR5LCBldmVudDogRXZlbnQgfCBudWxsKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX21vc3RSZWNlbnRNb2RhbGl0eSkge1xuICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoYHNiYi1mb2N1cy1tb2RhbGl0eS0ke3RoaXMuX21vc3RSZWNlbnRNb2RhbGl0eX1gKTtcbiAgICB9XG4gICAgdGhpcy5fbW9zdFJlY2VudE1vZGFsaXR5ID0gbW9kYWxpdHk7XG4gICAgdGhpcy5fbW9zdFJlY2VudFRhcmdldCA9IGV2ZW50ID8gZ2V0RXZlbnRUYXJnZXQoZXZlbnQpIDogbnVsbDtcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZChgc2JiLWZvY3VzLW1vZGFsaXR5LSR7dGhpcy5fbW9zdFJlY2VudE1vZGFsaXR5fWApO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IgPSBuZXcgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yKCk7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgV2lsbCBiZSByZW1vdmVkIHdpdGggbmV4dCBtYWpvciB2ZXJzaW9uLlxuICogU2V0IHRoZSBpbnB1dCBtb2RhbGl0eSBpbiBvcmRlciB0byBhdm9pZCBzaG93aW5nIHRoZSBvdXRsaW5lIGluIFNhZmFyaS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldE1vZGFsaXR5T25OZXh0Rm9jdXMoZWxlbWVudFRvRm9jdXM6IEhUTUxFbGVtZW50IHwgbnVsbCB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICBpZiAoIWVsZW1lbnRUb0ZvY3VzKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgbW9zdFJlY2VudE1vZGFsaXR5ID0gc2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLm1vc3RSZWNlbnRNb2RhbGl0eTtcblxuICAvLyBTZXQgZm9jdXMgb3JpZ2luIHRvIGVsZW1lbnQgd2hpY2ggc2hvdWxkIHJlY2VpdmUgZm9jdXNcbiAgaWYgKCEoZWxlbWVudFRvRm9jdXMgJiYgbW9zdFJlY2VudE1vZGFsaXR5ICE9PSBudWxsKSkge1xuICAgIHJldHVybjtcbiAgfVxuICBlbGVtZW50VG9Gb2N1cy5hZGRFdmVudExpc3RlbmVyKFxuICAgICdmb2N1cycsXG4gICAgKCkgPT4ge1xuICAgICAgZWxlbWVudFRvRm9jdXMuc2V0QXR0cmlidXRlKCdkYXRhLWZvY3VzLW9yaWdpbicsIG1vc3RSZWNlbnRNb2RhbGl0eSk7XG4gICAgICBlbGVtZW50VG9Gb2N1cy5hZGRFdmVudExpc3RlbmVyKFxuICAgICAgICAnYmx1cicsXG4gICAgICAgICgpID0+IGVsZW1lbnRUb0ZvY3VzLnJlbW92ZUF0dHJpYnV0ZSgnZGF0YS1mb2N1cy1vcmlnaW4nKSxcbiAgICAgICAge1xuICAgICAgICAgIG9uY2U6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH0sXG4gICAgeyBvbmNlOiB0cnVlIH0sXG4gICk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBbUJBLE1BQU0sUUFBUTtBQUNkLE1BQU0sVUFBVTtBQUNoQixNQUFNLE1BQU07QUFDWixNQUFNLE9BQU87QUFDYixNQUFNLFdBQVc7QUFrQmpCLE1BQU0sK0JBQWdFO0FBQUEsRUFDcEUsWUFBWSxDQUFDLEtBQUssU0FBUyxVQUFVLE1BQU0sS0FBSzs7QUFTbEQsTUFBTSxnQkFBZ0I7QUFNdEIsTUFBTSwrQkFBK0I7QUFBQSxFQUNuQyxTQUFTO0FBQUEsRUFDVCxTQUFTOztBQWlCWCxNQUFNLHlCQUF3QjtBQUFBO0FBQUEsRUFFNUIsSUFBVyxxQkFBa0I7QUFDM0IsV0FBTyxLQUFLO0FBQUEsRUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFhZCxJQUFXLG1CQUFnQjtBQUN6QixXQUFPLEtBQUs7QUFBQSxFQUFBO0FBQUEsRUFlZCxjQUFBO0FBdEJRLFNBQUEsc0JBQStDO0FBUy9DLFNBQUEsb0JBQXdDO0FBRy9CLFNBQUEsV0FBNEM7QUFBQSxNQUMzRCxHQUFHO0FBQUEsSUFBQTtBQU9HLFNBQUEsZUFBZTtBQW1CZixTQUFBLGFBQWEsQ0FBQyxVQUE4QjtBQUdsRCxVQUFJLEtBQUssVUFBVSxZQUFZLEtBQUssQ0FBQyxZQUFZLFlBQVksTUFBTSxPQUFPLEdBQUc7QUFDM0U7QUFBQSxNQUFBO0FBR0YsV0FBSyxhQUFhLFlBQVksS0FBSztBQUFBLElBQUE7QUFPN0IsU0FBQSxlQUFlLENBQUMsVUFBMkI7QUFJakQsVUFBSSxLQUFLLElBQUEsSUFBUSxLQUFLLGVBQWUsZUFBZTtBQUNsRDtBQUFBLE1BQUE7QUFLRixXQUFLLGFBQWEsZ0NBQWdDLEtBQUssSUFBSSxhQUFhLFNBQVMsS0FBSztBQUFBLElBQUE7QUFPaEYsU0FBQSxnQkFBZ0IsQ0FBQyxVQUEyQjtBQUdsRCxVQUFJLGlDQUFpQyxLQUFLLEdBQUc7QUFDM0MsYUFBSyxhQUFhLFlBQVksS0FBSztBQUNuQztBQUFBLE1BQUE7QUFLRixXQUFLLGVBQWUsS0FBSyxJQUFBO0FBRXpCLFdBQUssYUFBYSxTQUFTLEtBQUs7QUFBQSxJQUFBO0FBM0RoQyxRQUFJLENBQUMsVUFBVTtBQUNiLGVBQVMsaUJBQWlCLFdBQVcsS0FBSyxZQUFZLDRCQUE0QjtBQUNsRixlQUFTLGlCQUFpQixhQUFhLEtBQUssY0FBYyw0QkFBNEI7QUFDdEYsZUFBUyxpQkFBaUIsY0FBYyxLQUFLLGVBQWUsNEJBQTRCO0FBQUEsSUFBQTtBQUFBLEVBQzFGO0FBQUEsRUFHSyxRQUFLO0FBQ1YsU0FBSyxhQUFhLFNBQVMsSUFBSTtBQUMvQixTQUFLLGVBQWU7QUFBQSxFQUFBO0FBQUEsRUFxRGQsYUFBYSxVQUE0QixPQUFtQjtBQUNsRSxRQUFJLEtBQUsscUJBQXFCO0FBQzVCLGVBQVMsZ0JBQWdCLFVBQVUsT0FBTyxzQkFBc0IsS0FBSyxtQkFBbUIsRUFBRTtBQUFBLElBQUE7QUFFNUYsU0FBSyxzQkFBc0I7QUFDM0IsU0FBSyxvQkFBb0IsUUFBUSxlQUFlLEtBQUssSUFBSTtBQUN6RCxhQUFTLGdCQUFnQixVQUFVLElBQUksc0JBQXNCLEtBQUssbUJBQW1CLEVBQUU7QUFBQSxFQUFBO0FBRTFGO0FBRU0sTUFBTSwyQkFBMkIsSUFBSSx5QkFBQTtBQU10QyxTQUFVLHVCQUF1QixnQkFBOEM7QUFDbkYsTUFBSSxDQUFDLGdCQUFnQjtBQUNuQjtBQUFBLEVBQUE7QUFHRixRQUFNLHFCQUFxQix5QkFBeUI7QUFHcEQsTUFBSSxFQUFFLGtCQUFrQix1QkFBdUIsT0FBTztBQUNwRDtBQUFBLEVBQUE7QUFFRixpQkFBZSxpQkFDYixTQUNBLE1BQUs7QUFDSCxtQkFBZSxhQUFhLHFCQUFxQixrQkFBa0I7QUFDbkUsbUJBQWUsaUJBQ2IsUUFDQSxNQUFNLGVBQWUsZ0JBQWdCLG1CQUFtQixHQUN4RDtBQUFBLE1BQ0UsTUFBTTtBQUFBLElBQUEsQ0FDUDtBQUFBLEVBQUEsR0FHTCxFQUFFLE1BQU0sTUFBTTtBQUVsQjsifQ==
|
|
80
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbW9kYWxpdHktZGV0ZWN0b3IuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL2ExMXkvaW5wdXQtbW9kYWxpdHktZGV0ZWN0b3IudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVGhpcyBpbXBsZW1lbnRhdGlvbiBpcyBpbnNwaXJlZCBieSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL2Jsb2IvbWFpbi9zcmMvY2RrL2ExMXkvaW5wdXQtbW9kYWxpdHkvaW5wdXQtbW9kYWxpdHktZGV0ZWN0b3IudHNcblxuaW1wb3J0IHsgaXNTZXJ2ZXIgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgeyBnZXRFdmVudFRhcmdldCB9IGZyb20gJy4uL2V2ZW50aW5nLmpzJztcblxuaW1wb3J0IHtcbiAgaXNGYWtlTW91c2Vkb3duRnJvbVNjcmVlblJlYWRlcixcbiAgaXNGYWtlVG91Y2hzdGFydEZyb21TY3JlZW5SZWFkZXIsXG59IGZyb20gJy4vZmFrZS1ldmVudC1kZXRlY3Rpb24uanMnO1xuXG5leHBvcnQgdHlwZSBTYmJJbnB1dE1vZGFsaXR5ID0gJ3RvdWNoJyB8ICdtb3VzZScgfCAna2V5Ym9hcmQnIHwgJ3Byb2dyYW0nIHwgbnVsbDtcblxuLyoqIE9wdGlvbnMgdG8gY29uZmlndXJlIHRoZSBiZWhhdmlvciBvZiB0aGUgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLiAqL1xuaW50ZXJmYWNlIFNiYklucHV0TW9kYWxpdHlEZXRlY3Rvck9wdGlvbnMge1xuICAvKiogS2V5cyB0byBpZ25vcmUgd2hlbiBkZXRlY3Rpbmcga2V5Ym9hcmQgaW5wdXQgbW9kYWxpdHkuICovXG4gIGlnbm9yZUtleXM/OiBudW1iZXJbXTtcbn1cblxuY29uc3QgU0hJRlQgPSAxNjtcbmNvbnN0IENPTlRST0wgPSAxNztcbmNvbnN0IEFMVCA9IDE4O1xuY29uc3QgTUVUQSA9IDkxOyAvLyBXSU5fS0VZX0xFRlRcbmNvbnN0IE1BQ19NRVRBID0gMjI0O1xuXG4vKipcbiAqIERlZmF1bHQgb3B0aW9ucyBmb3IgdGhlIFNiYklucHV0TW9kYWxpdHlEZXRlY3Rvci5cbiAqXG4gKiBNb2RpZmllciBrZXlzIGFyZSBpZ25vcmVkIGJ5IGRlZmF1bHQgKGkuZS4gd2hlbiBwcmVzc2VkIHdvbid0IGNhdXNlIHRoZSBzZXJ2aWNlIHRvIGRldGVjdFxuICoga2V5Ym9hcmQgaW5wdXQgbW9kYWxpdHkpIGZvciB0d28gcmVhc29uczpcbiAqXG4gKiAxLiBNb2RpZmllciBrZXlzIGFyZSBjb21tb25seSB1c2VkIHdpdGggbW91c2UgdG8gcGVyZm9ybSBhY3Rpb25zIHN1Y2ggYXMgJ3JpZ2h0IGNsaWNrJyBvciAnb3BlblxuICogICAgaW4gbmV3IHRhYicsIGFuZCBhcmUgdGh1cyBsZXNzIHJlcHJlc2VudGF0aXZlIG9mIGFjdHVhbCBrZXlib2FyZCBpbnRlcmFjdGlvbi5cbiAqIDIuIFZvaWNlT3ZlciB0cmlnZ2VycyBzb21lIGtleWJvYXJkIGV2ZW50cyB3aGVuIGxpbmVhcmx5IG5hdmlnYXRpbmcgd2l0aCBDb250cm9sICsgT3B0aW9uIChidXRcbiAqICAgIGNvbmZ1c2luZ2x5IG5vdCB3aXRoIENhcHMgTG9jaykuIFRodXMsIHRvIGhhdmUgcGFyaXR5IHdpdGggb3RoZXIgc2NyZWVuIHJlYWRlcnMsIHdlIGlnbm9yZVxuICogICAgdGhlc2Uga2V5cyBzbywgYXMgdG8gbm90IHVwZGF0ZSB0aGUgaW5wdXQgbW9kYWxpdHkuXG4gKlxuICogTm90ZSB0aGF0IHdlIGRvIG5vdCBieSBkZWZhdWx0IGlnbm9yZSB0aGUgcmlnaHQgTWV0YSBrZXkgb24gU2FmYXJpIGJlY2F1c2UgaXQgaGFzIHRoZSBzYW1lIGtleVxuICogY29kZSBhcyB0aGUgQ29udGV4dE1lbnUga2V5IG9uIG90aGVyIGJyb3dzZXJzLiBXaGVuIHdlIHN3aXRjaCB0byB1c2luZyBldmVudC5rZXksIHdlIGNhblxuICogZGlzdGluZ3Vpc2ggYmV0d2VlbiB0aGUgdHdvLlxuICovXG5jb25zdCBpbnB1dE1vZGFsaXR5RGV0ZWN0b3JPcHRpb25zOiBTYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3JPcHRpb25zID0ge1xuICBpZ25vcmVLZXlzOiBbQUxULCBDT05UUk9MLCBNQUNfTUVUQSwgTUVUQSwgU0hJRlRdLFxufTtcblxuLyoqXG4gKiBUaGUgYW1vdW50IG9mIHRpbWUgbmVlZGVkIHRvIHBhc3MgYWZ0ZXIgYSB0b3VjaHN0YXJ0IGV2ZW50IGluIG9yZGVyIGZvciBhIHN1YnNlcXVlbnQgbW91c2Vkb3duXG4gKiBldmVudCB0byBiZSBhdHRyaWJ1dGVkIGFzIG1vdXNlIGFuZCBub3QgdG91Y2guXG4gKlxuICogVGhyb3VnaCB0cmlhbCBhbmQgZXJyb3IgaXQgd2FzIGZvdW5kIHRoYXQgYSB2YWx1ZSBvZiBhcm91bmQgNjUwbXMgc2VlbXMgYXBwcm9wcmlhdGUuXG4gKi9cbmNvbnN0IHRvdWNoQnVmZmVyTXMgPSA2NTA7XG5cbi8qKlxuICogRXZlbnQgbGlzdGVuZXIgb3B0aW9ucyB0aGF0IGVuYWJsZSBjYXB0dXJpbmcgYW5kIGFsc28gbWFyayB0aGUgbGlzdGVuZXIgYXMgcGFzc2l2ZSBpZiB0aGUgYnJvd3NlclxuICogc3VwcG9ydHMgaXQuXG4gKi9cbmNvbnN0IG1vZGFsaXR5RXZlbnRMaXN0ZW5lck9wdGlvbnMgPSB7XG4gIHBhc3NpdmU6IHRydWUsXG4gIGNhcHR1cmU6IHRydWUsXG59O1xuXG4vKipcbiAqIFNlcnZpY2UgdGhhdCBkZXRlY3RzIHRoZSB1c2VyJ3MgaW5wdXQgbW9kYWxpdHkuXG4gKlxuICogVGhpcyBzZXJ2aWNlIGRvZXMgbm90IHVwZGF0ZSB0aGUgaW5wdXQgbW9kYWxpdHkgd2hlbiBhIHVzZXIgbmF2aWdhdGVzIHdpdGggYSBzY3JlZW4gcmVhZGVyXG4gKiAoZS5nLiBsaW5lYXIgbmF2aWdhdGlvbiB3aXRoIFZvaWNlT3Zlciwgb2JqZWN0IG5hdmlnYXRpb24gLyBicm93c2UgbW9kZSB3aXRoIE5WREEsIHZpcnR1YWwgUENcbiAqIGN1cnNvciBtb2RlIHdpdGggSkFXUykuIFRoaXMgaXMgaW4gcGFydCBkdWUgdG8gdGVjaG5pY2FsIGxpbWl0YXRpb25zIChpLmUuIGtleWJvYXJkIGV2ZW50cyBkbyBub3RcbiAqIGZpcmUgYXMgZXhwZWN0ZWQgaW4gdGhlc2UgbW9kZXMpIGJ1dCBpcyBhbHNvIGFyZ3VhYmx5IHRoZSBjb3JyZWN0IGJlaGF2aW9yLiBOYXZpZ2F0aW5nIHdpdGggYVxuICogc2NyZWVuIHJlYWRlciBpcyBha2luIHRvIHZpc3VhbGx5IHNjYW5uaW5nIGEgcGFnZSwgYW5kIHNob3VsZCBub3QgYmUgaW50ZXJwcmV0ZWQgYXMgYWN0dWFsIHVzZXJcbiAqIGlucHV0IGludGVyYWN0aW9uLlxuICpcbiAqIFdoZW4gYSB1c2VyIGlzIG5vdCBuYXZpZ2F0aW5nIGJ1dCAqaW50ZXJhY3RpbmcqIHdpdGggYSBzY3JlZW4gcmVhZGVyLCB0aGlzIHNlcnZpY2UgYXR0ZW1wdHMgdG9cbiAqIHVwZGF0ZSB0aGUgaW5wdXQgbW9kYWxpdHkgdG8ga2V5Ym9hcmQsIGJ1dCBpbiBnZW5lcmFsIHRoaXMgc2VydmljZSdzIGJlaGF2aW9yIGlzIGxhcmdlbHlcbiAqIHVuZGVmaW5lZC5cbiAqL1xuY2xhc3MgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yIHtcbiAgLyoqIFRoZSBtb3N0IHJlY2VudGx5IGRldGVjdGVkIGlucHV0IG1vZGFsaXR5LiAqL1xuICBwdWJsaWMgZ2V0IG1vc3RSZWNlbnRNb2RhbGl0eSgpOiBTYmJJbnB1dE1vZGFsaXR5IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX21vc3RSZWNlbnRNb2RhbGl0eTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbW9zdCByZWNlbnQgbW9kYWxpdHkgbXVzdCBiZSBpbml0aWFsaXNlZCB3aXRoIHRoZSB2YWx1ZSAnbW91c2UnIHRvIGNvdmVyIHRoZSBjYXNlIHdoZXJlIGFuIGFjdGlvbiBpc1xuICAgKiBwZXJmb3JtZWQgYnV0IG5vIG1vdXNlIG9yIGtleWJvYXJkIGV2ZW50IGhhcyB5ZXQgb2NjdXJyZWQgb24gdGhlIHBhZ2UgKGUuZy4gYHNiYi1wb3BvdmVyYCB3aXRoIGhvdmVyIHRyaWdnZXIpLlxuICAgKi9cbiAgcHJpdmF0ZSBfbW9zdFJlY2VudE1vZGFsaXR5OiBTYmJJbnB1dE1vZGFsaXR5IHwgbnVsbCA9ICdtb3VzZSc7XG5cbiAgLyoqXG4gICAqIFRoZSBtb3N0IHJlY2VudGx5IGRldGVjdGVkIGlucHV0IG1vZGFsaXR5IGV2ZW50IHRhcmdldC4gSXMgbnVsbCBpZiBubyBpbnB1dCBtb2RhbGl0eSBoYXMgYmVlblxuICAgKiBkZXRlY3RlZCBvciBpZiB0aGUgYXNzb2NpYXRlZCBldmVudCB0YXJnZXQgaXMgbnVsbCBmb3Igc29tZSB1bmtub3duIHJlYXNvbi5cbiAgICovXG4gIHB1YmxpYyBnZXQgbW9zdFJlY2VudFRhcmdldCgpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9tb3N0UmVjZW50VGFyZ2V0O1xuICB9XG4gIHByaXZhdGUgX21vc3RSZWNlbnRUYXJnZXQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIE9wdGlvbnMgZm9yIHRoaXMgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLiAqL1xuICBwcml2YXRlIHJlYWRvbmx5IF9vcHRpb25zOiBTYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3JPcHRpb25zID0ge1xuICAgIC4uLmlucHV0TW9kYWxpdHlEZXRlY3Rvck9wdGlvbnMsXG4gIH07XG5cbiAgLyoqXG4gICAqIFRoZSB0aW1lc3RhbXAgb2YgdGhlIGxhc3QgdG91Y2ggaW5wdXQgbW9kYWxpdHkuIFVzZWQgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgbW91c2Vkb3duIGV2ZW50c1xuICAgKiBzaG91bGQgYmUgYXR0cmlidXRlZCB0byBtb3VzZSBvciB0b3VjaC5cbiAgICovXG4gIHByaXZhdGUgX2xhc3RUb3VjaE1zID0gMDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKCFpc1NlcnZlcikge1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuX29uS2V5ZG93biwgbW9kYWxpdHlFdmVudExpc3RlbmVyT3B0aW9ucyk7XG4gICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCB0aGlzLl9vbk1vdXNlZG93biwgbW9kYWxpdHlFdmVudExpc3RlbmVyT3B0aW9ucyk7XG4gICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgdGhpcy5fb25Ub3VjaHN0YXJ0LCBtb2RhbGl0eUV2ZW50TGlzdGVuZXJPcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5fdXBkYXRlU3RhdGUoJ21vdXNlJywgbnVsbCk7XG4gICAgdGhpcy5fbGFzdFRvdWNoTXMgPSAwO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMga2V5ZG93biBldmVudHMuIE11c3QgYmUgYW4gYXJyb3cgZnVuY3Rpb24gaW4gb3JkZXIgdG8gcHJlc2VydmUgdGhlIGNvbnRleHQgd2hlbiBpdCBnZXRzXG4gICAqIGJvdW5kLlxuICAgKi9cbiAgcHJpdmF0ZSBfb25LZXlkb3duID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCA9PiB7XG4gICAgLy8gSWYgdGhpcyBpcyBvbmUgb2YgdGhlIGtleXMgd2Ugc2hvdWxkIGlnbm9yZSwgdGhlbiBpZ25vcmUgaXQgYW5kIGRvbid0IHVwZGF0ZSB0aGUgaW5wdXRcbiAgICAvLyBtb2RhbGl0eSB0byBrZXlib2FyZC5cbiAgICBpZiAodGhpcy5fb3B0aW9ucz8uaWdub3JlS2V5cz8uc29tZSgoa2V5Q29kZSkgPT4ga2V5Q29kZSA9PT0gZXZlbnQua2V5Q29kZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl91cGRhdGVTdGF0ZSgna2V5Ym9hcmQnLCBldmVudCk7XG4gIH07XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgbW91c2Vkb3duIGV2ZW50cy4gTXVzdCBiZSBhbiBhcnJvdyBmdW5jdGlvbiBpbiBvcmRlciB0byBwcmVzZXJ2ZSB0aGUgY29udGV4dCB3aGVuIGl0XG4gICAqIGdldHMgYm91bmQuXG4gICAqL1xuICBwcml2YXRlIF9vbk1vdXNlZG93biA9IChldmVudDogTW91c2VFdmVudCk6IHZvaWQgPT4ge1xuICAgIC8vIFRvdWNoZXMgdHJpZ2dlciBib3RoIHRvdWNoIGFuZCBtb3VzZSBldmVudHMsIHNvIHdlIG5lZWQgdG8gZGlzdGluZ3Vpc2ggYmV0d2VlbiBtb3VzZSBldmVudHNcbiAgICAvLyB0aGF0IHdlcmUgdHJpZ2dlcmVkIHZpYSBtb3VzZSB2cyB0b3VjaC4gVG8gZG8gc28sIGNoZWNrIGlmIHRoZSBtb3VzZSBldmVudCBvY2N1cnMgY2xvc2VseVxuICAgIC8vIGFmdGVyIHRoZSBwcmV2aW91cyB0b3VjaCBldmVudC5cbiAgICBpZiAoRGF0ZS5ub3coKSAtIHRoaXMuX2xhc3RUb3VjaE1zIDwgdG91Y2hCdWZmZXJNcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIEZha2UgbW91c2Vkb3duIGV2ZW50cyBhcmUgZmlyZWQgYnkgc29tZSBzY3JlZW4gcmVhZGVycyB3aGVuIGNvbnRyb2xzIGFyZSBhY3RpdmF0ZWQgYnkgdGhlXG4gICAgLy8gc2NyZWVuIHJlYWRlci4gQXR0cmlidXRlIHRoZW0gdG8ga2V5Ym9hcmQgaW5wdXQgbW9kYWxpdHkuXG4gICAgdGhpcy5fdXBkYXRlU3RhdGUoaXNGYWtlTW91c2Vkb3duRnJvbVNjcmVlblJlYWRlcihldmVudCkgPyAna2V5Ym9hcmQnIDogJ21vdXNlJywgZXZlbnQpO1xuICB9O1xuXG4gIC8qKlxuICAgKiBIYW5kbGVzIHRvdWNoc3RhcnQgZXZlbnRzLiBNdXN0IGJlIGFuIGFycm93IGZ1bmN0aW9uIGluIG9yZGVyIHRvIHByZXNlcnZlIHRoZSBjb250ZXh0IHdoZW4gaXRcbiAgICogZ2V0cyBib3VuZC5cbiAgICovXG4gIHByaXZhdGUgX29uVG91Y2hzdGFydCA9IChldmVudDogVG91Y2hFdmVudCk6IHZvaWQgPT4ge1xuICAgIC8vIFNhbWUgc2NlbmFyaW8gYXMgbWVudGlvbmVkIGluIF9vbk1vdXNlZG93biwgYnV0IG9uIHRvdWNoIHNjcmVlbiBkZXZpY2VzLCBmYWtlIHRvdWNoc3RhcnRcbiAgICAvLyBldmVudHMgYXJlIGZpcmVkLiBBZ2FpbiwgYXR0cmlidXRlIHRvIGtleWJvYXJkIGlucHV0IG1vZGFsaXR5LlxuICAgIGlmIChpc0Zha2VUb3VjaHN0YXJ0RnJvbVNjcmVlblJlYWRlcihldmVudCkpIHtcbiAgICAgIHRoaXMuX3VwZGF0ZVN0YXRlKCdrZXlib2FyZCcsIGV2ZW50KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBTdG9yZSB0aGUgdGltZXN0YW1wIG9mIHRoaXMgdG91Y2ggZXZlbnQsIGFzIGl0J3MgdXNlZCB0byBkaXN0aW5ndWlzaCBiZXR3ZWVuIG1vdXNlIGV2ZW50c1xuICAgIC8vIHRyaWdnZXJlZCB2aWEgbW91c2UgdnMgdG91Y2guXG4gICAgdGhpcy5fbGFzdFRvdWNoTXMgPSBEYXRlLm5vdygpO1xuXG4gICAgdGhpcy5fdXBkYXRlU3RhdGUoJ3RvdWNoJywgZXZlbnQpO1xuICB9O1xuXG4gIHByaXZhdGUgX3VwZGF0ZVN0YXRlKG1vZGFsaXR5OiBTYmJJbnB1dE1vZGFsaXR5LCBldmVudDogRXZlbnQgfCBudWxsKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX21vc3RSZWNlbnRNb2RhbGl0eSkge1xuICAgICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoYHNiYi1mb2N1cy1tb2RhbGl0eS0ke3RoaXMuX21vc3RSZWNlbnRNb2RhbGl0eX1gKTtcbiAgICB9XG4gICAgdGhpcy5fbW9zdFJlY2VudE1vZGFsaXR5ID0gbW9kYWxpdHk7XG4gICAgdGhpcy5fbW9zdFJlY2VudFRhcmdldCA9IGV2ZW50ID8gZ2V0RXZlbnRUYXJnZXQoZXZlbnQpIDogbnVsbDtcbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZChgc2JiLWZvY3VzLW1vZGFsaXR5LSR7dGhpcy5fbW9zdFJlY2VudE1vZGFsaXR5fWApO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IgPSBuZXcgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yKCk7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBbUJBLE1BQU0sUUFBUTtBQUNkLE1BQU0sVUFBVTtBQUNoQixNQUFNLE1BQU07QUFDWixNQUFNLE9BQU87QUFDYixNQUFNLFdBQVc7QUFrQmpCLE1BQU0sK0JBQWdFO0FBQUEsRUFDcEUsWUFBWSxDQUFDLEtBQUssU0FBUyxVQUFVLE1BQU0sS0FBSzs7QUFTbEQsTUFBTSxnQkFBZ0I7QUFNdEIsTUFBTSwrQkFBK0I7QUFBQSxFQUNuQyxTQUFTO0FBQUEsRUFDVCxTQUFTOztBQWlCWCxNQUFNLHlCQUF3QjtBQUFBO0FBQUEsRUFFNUIsSUFBVyxxQkFBa0I7QUFDM0IsV0FBTyxLQUFLO0FBQUEsRUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFhZCxJQUFXLG1CQUFnQjtBQUN6QixXQUFPLEtBQUs7QUFBQSxFQUFBO0FBQUEsRUFlZCxjQUFBO0FBdEJRLFNBQW1CLHNCQUE0QjtBQVMvQyxTQUFpQixvQkFBdUI7QUFHL0IsU0FBQSxXQUE0QztBQUFBLE1BQzNELEdBQUc7QUFBQTtBQU9HLFNBQVksZUFBRztBQW1CZixTQUFBLGFBQWEsQ0FBQyxVQUE4Qjs7QUFHOUMsV0FBQSxnQkFBSyxhQUFMLG1CQUFlLGVBQWYsbUJBQTJCLEtBQUssQ0FBQyxZQUFZLFlBQVksTUFBTSxVQUFVO0FBQzNFO0FBQUEsTUFBQTtBQUdHLFdBQUEsYUFBYSxZQUFZLEtBQUs7QUFBQSxJQUNyQztBQU1RLFNBQUEsZUFBZSxDQUFDLFVBQTJCO0FBSWpELFVBQUksS0FBSyxJQUFBLElBQVEsS0FBSyxlQUFlLGVBQWU7QUFDbEQ7QUFBQSxNQUFBO0FBS0YsV0FBSyxhQUFhLGdDQUFnQyxLQUFLLElBQUksYUFBYSxTQUFTLEtBQUs7QUFBQSxJQUN4RjtBQU1RLFNBQUEsZ0JBQWdCLENBQUMsVUFBMkI7QUFHOUMsVUFBQSxpQ0FBaUMsS0FBSyxHQUFHO0FBQ3RDLGFBQUEsYUFBYSxZQUFZLEtBQUs7QUFDbkM7QUFBQSxNQUFBO0FBS0csV0FBQSxlQUFlLEtBQUs7QUFFcEIsV0FBQSxhQUFhLFNBQVMsS0FBSztBQUFBLElBQ2xDO0FBNURFLFFBQUksQ0FBQyxVQUFVO0FBQ2IsZUFBUyxpQkFBaUIsV0FBVyxLQUFLLFlBQVksNEJBQTRCO0FBQ2xGLGVBQVMsaUJBQWlCLGFBQWEsS0FBSyxjQUFjLDRCQUE0QjtBQUN0RixlQUFTLGlCQUFpQixjQUFjLEtBQUssZUFBZSw0QkFBNEI7QUFBQSxJQUFBO0FBQUEsRUFDMUY7QUFBQSxFQUdLLFFBQUs7QUFDTCxTQUFBLGFBQWEsU0FBUyxJQUFJO0FBQy9CLFNBQUssZUFBZTtBQUFBLEVBQUE7QUFBQSxFQXFEZCxhQUFhLFVBQTRCLE9BQW1CO0FBQ2xFLFFBQUksS0FBSyxxQkFBcUI7QUFDNUIsZUFBUyxnQkFBZ0IsVUFBVSxPQUFPLHNCQUFzQixLQUFLLG1CQUFtQixFQUFFO0FBQUEsSUFBQTtBQUU1RixTQUFLLHNCQUFzQjtBQUMzQixTQUFLLG9CQUFvQixRQUFRLGVBQWUsS0FBSyxJQUFJO0FBQ3pELGFBQVMsZ0JBQWdCLFVBQVUsSUFBSSxzQkFBc0IsS0FBSyxtQkFBbUIsRUFBRTtBQUFBLEVBQUE7QUFFMUY7QUFFWSxNQUFBLDJCQUEyQixJQUFJOyJ9
|
|
@@ -5,12 +5,6 @@
|
|
|
5
5
|
* Use of this source code is governed by an MIT-style license that can be
|
|
6
6
|
* found in the LICENSE file at https://angular.io/license
|
|
7
7
|
*/
|
|
8
|
-
/**
|
|
9
|
-
* @deprecated Will be removed with next major version.
|
|
10
|
-
*/
|
|
11
|
-
export interface InterfaceInteractivityChecker {
|
|
12
|
-
isVisible(element: HTMLElement): boolean;
|
|
13
|
-
}
|
|
14
8
|
/**
|
|
15
9
|
* Configuration for the isFocusable method.
|
|
16
10
|
*/
|
|
@@ -55,9 +49,4 @@ export declare class InteractivityChecker {
|
|
|
55
49
|
isFocusable(element: HTMLElement, config?: IsFocusableConfig): boolean;
|
|
56
50
|
}
|
|
57
51
|
export declare const interactivityChecker: InteractivityChecker;
|
|
58
|
-
/**
|
|
59
|
-
* @deprecated Will no longer be available with next major version.
|
|
60
|
-
* TODO: remove export keyword
|
|
61
|
-
*/
|
|
62
|
-
export declare function hasGeometry(element: HTMLElement): boolean;
|
|
63
52
|
//# sourceMappingURL=interactivity-checker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactivity-checker.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/a11y/interactivity-checker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"interactivity-checker.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/a11y/interactivity-checker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH;;GAEG;AACH,qBAAa,iBAAiB;IAC5B;;OAEG;IACI,gBAAgB,EAAE,OAAO,CAAS;CAC1C;AAED,qBAAa,oBAAoB;IAC/B;;;;;OAKG;IACI,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAIhD;;;;;;;OAOG;IACI,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAI/C;;;;;;OAMG;IACI,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IA0DhD;;;;;;OAMG;IACI,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO;CAU9E;AAID,eAAO,MAAM,oBAAoB,sBAA6B,CAAC"}
|
|
@@ -80,7 +80,7 @@ class InteractivityChecker {
|
|
|
80
80
|
* @returns Whether the element is focusable.
|
|
81
81
|
*/
|
|
82
82
|
isFocusable(element, config) {
|
|
83
|
-
return isPotentiallyFocusable(element) && !element.inert && !this.isDisabled(element) && (config
|
|
83
|
+
return isPotentiallyFocusable(element) && !element.inert && !this.isDisabled(element) && ((config == null ? void 0 : config.ignoreVisibility) || this.isVisible(element));
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
const interactivityChecker = new InteractivityChecker();
|
|
@@ -131,7 +131,6 @@ function isPotentiallyFocusable(element) {
|
|
|
131
131
|
export {
|
|
132
132
|
InteractivityChecker,
|
|
133
133
|
IsFocusableConfig,
|
|
134
|
-
hasGeometry,
|
|
135
134
|
interactivityChecker
|
|
136
135
|
};
|
|
137
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpdml0eS1jaGVja2VyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9hMTF5L2ludGVyYWN0aXZpdHktY2hlY2tlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuLy8gQ29waWVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9ibG9iL21haW4vc3JjL2Nkay9hMTF5L2ZvY3VzLXRyYXAvZm9jdXMtdHJhcC50c1xuXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdXNlLWJlZm9yZS1kZWZpbmUgKi9cbmltcG9ydCB7IGlzU2VydmVyIH0gZnJvbSAnbGl0JztcblxuaW1wb3J0IHsgaXNGaXJlZm94LCBpc0lPUywgaXNXZWJraXQgfSBmcm9tICcuLi9kb20vcGxhdGZvcm0uanMnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkIFdpbGwgYmUgcmVtb3ZlZCB3aXRoIG5leHQgbWFqb3IgdmVyc2lvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnRlcmZhY2VJbnRlcmFjdGl2aXR5Q2hlY2tlciB7XG4gIGlzVmlzaWJsZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgdGhlIGlzRm9jdXNhYmxlIG1ldGhvZC5cbiAqL1xuZXhwb3J0IGNsYXNzIElzRm9jdXNhYmxlQ29uZmlnIHtcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gY291bnQgYW4gZWxlbWVudCBhcyBmb2N1c2FibGUgZXZlbiBpZiBpdCBpcyBub3QgY3VycmVudGx5IHZpc2libGUuXG4gICAqL1xuICBwdWJsaWMgaWdub3JlVmlzaWJpbGl0eTogYm9vbGVhbiA9IGZhbHNlO1xufVxuXG5leHBvcnQgY2xhc3MgSW50ZXJhY3Rpdml0eUNoZWNrZXIge1xuICAvKipcbiAgICogR2V0cyB3aGV0aGVyIGFuIGVsZW1lbnQgaXMgZGlzYWJsZWQuXG4gICAqXG4gICAqIEBwYXJhbSBlbGVtZW50IEVsZW1lbnQgdG8gYmUgY2hlY2tlZC5cbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgZWxlbWVudCBpcyBkaXNhYmxlZC5cbiAgICovXG4gIHB1YmxpYyBpc0Rpc2FibGVkKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGVsZW1lbnQuaGFzQXR0cmlidXRlKCdkaXNhYmxlZCcpIHx8IGVsZW1lbnQubWF0Y2hlcygnOmRpc2FibGVkJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB3aGV0aGVyIGFuIGVsZW1lbnQgaXMgdmlzaWJsZSBmb3IgdGhlIHB1cnBvc2VzIG9mIGludGVyYWN0aXZpdHkuXG4gICAqXG4gICAqIFRoaXMgd2lsbCBjYXB0dXJlIHN0YXRlcyBsaWtlIGBkaXNwbGF5OiBub25lYCBhbmQgYHZpc2liaWxpdHk6IGhpZGRlbmAsIGJ1dCBub3QgdGhpbmdzIGxpa2VcbiAgICogYmVpbmcgY2xpcHBlZCBieSBhbiBgb3ZlcmZsb3c6IGhpZGRlbmAgcGFyZW50IG9yIGJlaW5nIG91dHNpZGUgdGhlIHZpZXdwb3J0LlxuICAgKlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBlbGVtZW50IGlzIHZpc2libGUuXG4gICAqL1xuICBwdWJsaWMgaXNWaXNpYmxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGhhc0dlb21ldHJ5KGVsZW1lbnQpICYmIGdldENvbXB1dGVkU3R5bGUoZWxlbWVudCkudmlzaWJpbGl0eSA9PT0gJ3Zpc2libGUnO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgd2hldGhlciBhbiBlbGVtZW50IGNhbiBiZSByZWFjaGVkIHZpYSBUYWIga2V5LlxuICAgKiBBc3N1bWVzIHRoYXQgdGhlIGVsZW1lbnQgaGFzIGFscmVhZHkgYmVlbiBjaGVja2VkIHdpdGggaXNGb2N1c2FibGUuXG4gICAqXG4gICAqIEBwYXJhbSBlbGVtZW50IEVsZW1lbnQgdG8gYmUgY2hlY2tlZC5cbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgZWxlbWVudCBpcyB0YWJiYWJsZS5cbiAgICovXG4gIHB1YmxpYyBpc1RhYmJhYmxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgLy8gTm90aGluZyBpcyB0YWJiYWJsZSBvbiB0aGUgc2VydmVyIPCfmI5cbiAgICBpZiAoaXNTZXJ2ZXIpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCBub2RlTmFtZSA9IGVsZW1lbnQubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtcbiAgICBjb25zdCB0YWJJbmRleFZhbHVlID0gZ2V0VGFiSW5kZXhWYWx1ZShlbGVtZW50KTtcblxuICAgIGlmIChlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnY29udGVudGVkaXRhYmxlJykpIHtcbiAgICAgIHJldHVybiB0YWJJbmRleFZhbHVlICE9PSAtMTtcbiAgICB9XG5cbiAgICBpZiAobm9kZU5hbWUgPT09ICdpZnJhbWUnIHx8IG5vZGVOYW1lID09PSAnb2JqZWN0Jykge1xuICAgICAgLy8gVGhlIGZyYW1lIG9yIG9iamVjdCdzIGNvbnRlbnQgbWF5IGJlIHRhYmJhYmxlIGRlcGVuZGluZyBvbiB0aGUgY29udGVudCwgYnV0IGl0J3NcbiAgICAgIC8vIG5vdCBwb3NzaWJseSB0byByZWxpYWJseSBkZXRlY3QgdGhlIGNvbnRlbnQgb2YgdGhlIGZyYW1lcy4gV2UgYWx3YXlzIGNvbnNpZGVyIHN1Y2hcbiAgICAgIC8vIGVsZW1lbnRzIGFzIG5vbi10YWJiYWJsZS5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBJbiBpT1MsIHRoZSBicm93c2VyIG9ubHkgY29uc2lkZXJzIHNvbWUgc3BlY2lmaWMgZWxlbWVudHMgYXMgdGFiYmFibGUuXG4gICAgaWYgKGlzV2Via2l0ICYmIGlzSU9TICYmICFpc1BvdGVudGlhbGx5VGFiYmFibGVJT1MoZWxlbWVudCkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBpZiAobm9kZU5hbWUgPT09ICdhdWRpbycpIHtcbiAgICAgIC8vIEF1ZGlvIGVsZW1lbnRzIHdpdGhvdXQgY29udHJvbHMgZW5hYmxlZCBhcmUgbmV2ZXIgdGFiYmFibGUsIHJlZ2FyZGxlc3NcbiAgICAgIC8vIG9mIHRoZSB0YWJpbmRleCBhdHRyaWJ1dGUgZXhwbGljaXRseSBiZWluZyBzZXQuXG4gICAgICBpZiAoIWVsZW1lbnQuaGFzQXR0cmlidXRlKCdjb250cm9scycpKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICAgIC8vIEF1ZGlvIGVsZW1lbnRzIHdpdGggY29udHJvbHMgYXJlIGJ5IGRlZmF1bHQgdGFiYmFibGUgdW5sZXNzIHRoZVxuICAgICAgLy8gdGFiaW5kZXggYXR0cmlidXRlIGlzIHNldCB0byBgLTFgIGV4cGxpY2l0bHkuXG4gICAgICByZXR1cm4gdGFiSW5kZXhWYWx1ZSAhPT0gLTE7XG4gICAgfVxuXG4gICAgaWYgKG5vZGVOYW1lID09PSAndmlkZW8nKSB7XG4gICAgICAvLyBGb3IgYWxsIHZpZGVvIGVsZW1lbnRzLCBpZiB0aGUgdGFiaW5kZXggYXR0cmlidXRlIGlzIHNldCB0byBgLTFgLCB0aGUgdmlkZW9cbiAgICAgIC8vIGlzIG5vdCB0YWJiYWJsZS4gTm90ZTogV2UgY2Fubm90IHJlbHkgb24gdGhlIGRlZmF1bHQgYEhUTUxFbGVtZW50LnRhYkluZGV4YFxuICAgICAgLy8gcHJvcGVydHkgYXMgdGhhdCBvbmUgaXMgc2V0IHRvIGAtMWAgaW4gQ2hyb21lLCBFZGdlIGFuZCBTYWZhcmkgdjEzLjEuIFRoZVxuICAgICAgLy8gdGFiaW5kZXggYXR0cmlidXRlIGlzIHRoZSBzb3VyY2Ugb2YgdHJ1dGggaGVyZS5cbiAgICAgIGlmICh0YWJJbmRleFZhbHVlID09PSAtMSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgICAvLyBJZiB0aGUgdGFiaW5kZXggaXMgZXhwbGljaXRseSBzZXQsIGFuZCBub3QgYC0xYCAoYXMgcGVyIGNoZWNrIGJlZm9yZSksIHRoZVxuICAgICAgLy8gdmlkZW8gZWxlbWVudCBpcyBhbHdheXMgdGFiYmFibGUgKHJlZ2FyZGxlc3Mgb2Ygd2hldGhlciBpdCBoYXMgY29udHJvbHMgb3Igbm90KS5cbiAgICAgIGlmICh0YWJJbmRleFZhbHVlICE9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgICAgLy8gT3RoZXJ3aXNlICh3aGVuIG5vIGV4cGxpY2l0IHRhYmluZGV4IGlzIHNldCksIGEgdmlkZW8gaXMgb25seSB0YWJiYWJsZSBpZiBpdFxuICAgICAgLy8gaGFzIGNvbnRyb2xzIGVuYWJsZWQuIEZpcmVmb3ggaXMgc3BlY2lhbCBhcyB2aWRlb3MgYXJlIGFsd2F5cyB0YWJiYWJsZSByZWdhcmRsZXNzXG4gICAgICAvLyBvZiB3aGV0aGVyIHRoZXJlIGFyZSBjb250cm9scyBvciBub3QuXG4gICAgICByZXR1cm4gaXNGaXJlZm94IHx8IGVsZW1lbnQuaGFzQXR0cmlidXRlKCdjb250cm9scycpO1xuICAgIH1cblxuICAgIHJldHVybiBlbGVtZW50LnRhYkluZGV4ID49IDA7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB3aGV0aGVyIGFuIGVsZW1lbnQgY2FuIGJlIGZvY3VzZWQgYnkgdGhlIHVzZXIuXG4gICAqXG4gICAqIEBwYXJhbSBlbGVtZW50IEVsZW1lbnQgdG8gYmUgY2hlY2tlZC5cbiAgICogQHBhcmFtIGNvbmZpZyBUaGUgY29uZmlnIG9iamVjdCB3aXRoIG9wdGlvbnMgdG8gY3VzdG9taXplIHRoaXMgbWV0aG9kJ3MgYmVoYXZpb3JcbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgZWxlbWVudCBpcyBmb2N1c2FibGUuXG4gICAqL1xuICBwdWJsaWMgaXNGb2N1c2FibGUoZWxlbWVudDogSFRNTEVsZW1lbnQsIGNvbmZpZz86IElzRm9jdXNhYmxlQ29uZmlnKTogYm9vbGVhbiB7XG4gICAgLy8gUGVyZm9ybSBjaGVja3MgaW4gb3JkZXIgb2YgbGVmdCB0byBtb3N0IGV4cGVuc2l2ZS5cbiAgICAvLyBBZ2FpbiwgbmFpdmUgYXBwcm9hY2ggdGhhdCBkb2VzIG5vdCBjYXB0dXJlIG1hbnkgZWRnZSBjYXNlcyBhbmQgYnJvd3NlciBxdWlya3MuXG4gICAgcmV0dXJuIChcbiAgICAgIGlzUG90ZW50aWFsbHlGb2N1c2FibGUoZWxlbWVudCkgJiZcbiAgICAgICFlbGVtZW50LmluZXJ0ICYmXG4gICAgICAhdGhpcy5pc0Rpc2FibGVkKGVsZW1lbnQpICYmXG4gICAgICAoY29uZmlnPy5pZ25vcmVWaXNpYmlsaXR5IHx8IHRoaXMuaXNWaXNpYmxlKGVsZW1lbnQpKVxuICAgICk7XG4gIH1cbn1cblxuLy8gRm9yIHVuaXQgdGVzdHMgd2UgbmVlZCB0byBwcmV0ZW5kIHRoYXQgYW4gZWxlbWVudCBpcyBhbHdheXMgdmlzaWJsZS5cbi8vIFRoaXMgY2FuIGJlIGRvbmUgYnkgY2hlY2tpbmcgaWYgdmlzaWJpbGl0eSBwcm9wZXJ0eSBpcyBzZXQgdG8gZW1wdHkuXG5leHBvcnQgY29uc3QgaW50ZXJhY3Rpdml0eUNoZWNrZXIgPSBuZXcgSW50ZXJhY3Rpdml0eUNoZWNrZXIoKTtcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBXaWxsIG5vIGxvbmdlciBiZSBhdmFpbGFibGUgd2l0aCBuZXh0IG1ham9yIHZlcnNpb24uXG4gKiBUT0RPOiByZW1vdmUgZXhwb3J0IGtleXdvcmRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhc0dlb21ldHJ5KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gIC8vIFVzZSBsb2dpYyBmcm9tIGpRdWVyeSB0byBjaGVjayBmb3IgYW4gaW52aXNpYmxlIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vanF1ZXJ5L2pxdWVyeS9ibG9iL21hc3Rlci9zcmMvY3NzL2hpZGRlblZpc2libGVTZWxlY3RvcnMuanMjTDEyXG4gIHJldHVybiAhIShcbiAgICBlbGVtZW50Lm9mZnNldFdpZHRoIHx8XG4gICAgZWxlbWVudC5vZmZzZXRIZWlnaHQgfHxcbiAgICAodHlwZW9mIGVsZW1lbnQuZ2V0Q2xpZW50UmVjdHMgPT09ICdmdW5jdGlvbicgJiYgZWxlbWVudC5nZXRDbGllbnRSZWN0cygpLmxlbmd0aClcbiAgKTtcbn1cblxuLyoqIEdldHMgd2hldGhlciBhbiBlbGVtZW50J3MgICovXG5mdW5jdGlvbiBpc05hdGl2ZUZvcm1FbGVtZW50KGVsZW1lbnQ6IE5vZGUpOiBib29sZWFuIHtcbiAgY29uc3Qgbm9kZU5hbWUgPSBlbGVtZW50Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7XG4gIHJldHVybiAoXG4gICAgbm9kZU5hbWUgPT09ICdpbnB1dCcgfHxcbiAgICBub2RlTmFtZSA9PT0gJ3NlbGVjdCcgfHxcbiAgICBub2RlTmFtZSA9PT0gJ2J1dHRvbicgfHxcbiAgICBub2RlTmFtZSA9PT0gJ3RleHRhcmVhJ1xuICApO1xufVxuXG4vKiogR2V0cyB3aGV0aGVyIGFuIGVsZW1lbnQgaXMgYW4gYDxpbnB1dCB0eXBlPVwiaGlkZGVuXCI+YC4gKi9cbmZ1bmN0aW9uIGlzSGlkZGVuSW5wdXQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgcmV0dXJuIGlzSW5wdXRFbGVtZW50KGVsZW1lbnQpICYmIGVsZW1lbnQudHlwZSA9PSAnaGlkZGVuJztcbn1cblxuLyoqIEdldHMgd2hldGhlciBhbiBlbGVtZW50IGlzIGFuIGFuY2hvciB0aGF0IGhhcyBhbiBocmVmIGF0dHJpYnV0ZS4gKi9cbmZ1bmN0aW9uIGlzQW5jaG9yV2l0aEhyZWYoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgcmV0dXJuIGlzQW5jaG9yRWxlbWVudChlbGVtZW50KSAmJiBlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnaHJlZicpO1xufVxuXG4vKiogR2V0cyB3aGV0aGVyIGFuIGVsZW1lbnQgaXMgYW4gaW5wdXQgZWxlbWVudC4gKi9cbmZ1bmN0aW9uIGlzSW5wdXRFbGVtZW50KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogZWxlbWVudCBpcyBIVE1MSW5wdXRFbGVtZW50IHtcbiAgcmV0dXJuIGVsZW1lbnQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSA9PSAnaW5wdXQnO1xufVxuXG4vKiogR2V0cyB3aGV0aGVyIGFuIGVsZW1lbnQgaXMgYW4gYW5jaG9yIGVsZW1lbnQuICovXG5mdW5jdGlvbiBpc0FuY2hvckVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBlbGVtZW50IGlzIEhUTUxBbmNob3JFbGVtZW50IHtcbiAgcmV0dXJuIGVsZW1lbnQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSA9PSAnYSc7XG59XG5cbi8qKiBHZXRzIHdoZXRoZXIgYW4gZWxlbWVudCBoYXMgYSB2YWxpZCB0YWJpbmRleC4gKi9cbmZ1bmN0aW9uIGhhc1ZhbGlkVGFiSW5kZXgoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgaWYgKCFlbGVtZW50Lmhhc0F0dHJpYnV0ZSgndGFiaW5kZXgnKSB8fCBlbGVtZW50LnRhYkluZGV4ID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCB0YWJJbmRleCA9IGVsZW1lbnQuZ2V0QXR0cmlidXRlKCd0YWJpbmRleCcpO1xuICByZXR1cm4gISEodGFiSW5kZXggJiYgIWlzTmFOKHBhcnNlSW50KHRhYkluZGV4LCAxMCkpKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBwYXJzZWQgdGFiaW5kZXggZnJvbSB0aGUgZWxlbWVudCBhdHRyaWJ1dGVzIGluc3RlYWQgb2YgcmV0dXJuaW5nIHRoZVxuICogZXZhbHVhdGVkIHRhYmluZGV4IGZyb20gdGhlIGJyb3dzZXJzIGRlZmF1bHRzLlxuICovXG5mdW5jdGlvbiBnZXRUYWJJbmRleFZhbHVlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHwgbnVsbCB7XG4gIGlmICghaGFzVmFsaWRUYWJJbmRleChlbGVtZW50KSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLy8gU2VlIGJyb3dzZXIgaXNzdWUgaW4gR2Vja28gaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEyODA1NFxuICBjb25zdCB0YWJJbmRleCA9IHBhcnNlSW50KGVsZW1lbnQuZ2V0QXR0cmlidXRlKCd0YWJpbmRleCcpIHx8ICcnLCAxMCk7XG5cbiAgcmV0dXJuIGlzTmFOKHRhYkluZGV4KSA/IC0xIDogdGFiSW5kZXg7XG59XG5cbi8qKiBDaGVja3Mgd2hldGhlciB0aGUgc3BlY2lmaWVkIGVsZW1lbnQgaXMgcG90ZW50aWFsbHkgdGFiYmFibGUgb24gaU9TICovXG5mdW5jdGlvbiBpc1BvdGVudGlhbGx5VGFiYmFibGVJT1MoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgY29uc3Qgbm9kZU5hbWUgPSBlbGVtZW50Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7XG4gIGNvbnN0IGlucHV0VHlwZSA9IG5vZGVOYW1lID09PSAnaW5wdXQnICYmIChlbGVtZW50IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnR5cGU7XG5cbiAgcmV0dXJuIChcbiAgICBpbnB1dFR5cGUgPT09ICd0ZXh0JyB8fFxuICAgIGlucHV0VHlwZSA9PT0gJ3Bhc3N3b3JkJyB8fFxuICAgIG5vZGVOYW1lID09PSAnc2VsZWN0JyB8fFxuICAgIG5vZGVOYW1lID09PSAndGV4dGFyZWEnXG4gICk7XG59XG5cbi8qKlxuICogR2V0cyB3aGV0aGVyIGFuIGVsZW1lbnQgaXMgcG90ZW50aWFsbHkgZm9jdXNhYmxlIHdpdGhvdXQgdGFraW5nIGN1cnJlbnQgdmlzaWJsZS9kaXNhYmxlZCBzdGF0ZVxuICogaW50byBhY2NvdW50LlxuICovXG5mdW5jdGlvbiBpc1BvdGVudGlhbGx5Rm9jdXNhYmxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gIC8vIElucHV0cyBhcmUgcG90ZW50aWFsbHkgZm9jdXNhYmxlICp1bmxlc3MqIHRoZXkncmUgdHlwZT1cImhpZGRlblwiLlxuICBpZiAoaXNIaWRkZW5JbnB1dChlbGVtZW50KSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgaXNOYXRpdmVGb3JtRWxlbWVudChlbGVtZW50KSB8fFxuICAgIGlzQW5jaG9yV2l0aEhyZWYoZWxlbWVudCkgfHxcbiAgICBlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnY29udGVudGVkaXRhYmxlJykgfHxcbiAgICBoYXNWYWxpZFRhYkluZGV4KGVsZW1lbnQpXG4gICk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtNQXlCYSxrQkFBaUI7QUFBQSxFQUE5QixjQUFBO0FBSVMsU0FBQSxtQkFBNEI7QUFBQSxFQUFBO0FBQ3BDO01BRVkscUJBQW9CO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPeEIsV0FBVyxTQUFvQjtBQUNwQyxXQUFPLFFBQVEsYUFBYSxVQUFVLEtBQUssUUFBUSxRQUFRLFdBQVc7QUFBQSxFQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBV2pFLFVBQVUsU0FBb0I7QUFDbkMsV0FBTyxZQUFZLE9BQU8sS0FBSyxpQkFBaUIsT0FBTyxFQUFFLGVBQWU7QUFBQSxFQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVVuRSxXQUFXLFNBQW9CO0FBRXBDLFFBQUksVUFBVTtBQUNaLGFBQU87QUFBQSxJQUFBO0FBR1QsVUFBTSxXQUFXLFFBQVEsU0FBUyxZQUFBO0FBQ2xDLFVBQU0sZ0JBQWdCLGlCQUFpQixPQUFPO0FBRTlDLFFBQUksUUFBUSxhQUFhLGlCQUFpQixHQUFHO0FBQzNDLGFBQU8sa0JBQWtCO0FBQUEsSUFBQTtBQUczQixRQUFJLGFBQWEsWUFBWSxhQUFhLFVBQVU7QUFJbEQsYUFBTztBQUFBLElBQUE7QUFJVCxRQUFJLFlBQVksU0FBUyxDQUFDLHlCQUF5QixPQUFPLEdBQUc7QUFDM0QsYUFBTztBQUFBLElBQUE7QUFHVCxRQUFJLGFBQWEsU0FBUztBQUd4QixVQUFJLENBQUMsUUFBUSxhQUFhLFVBQVUsR0FBRztBQUNyQyxlQUFPO0FBQUEsTUFBQTtBQUlULGFBQU8sa0JBQWtCO0FBQUEsSUFBQTtBQUczQixRQUFJLGFBQWEsU0FBUztBQUt4QixVQUFJLGtCQUFrQixJQUFJO0FBQ3hCLGVBQU87QUFBQSxNQUFBO0FBSVQsVUFBSSxrQkFBa0IsTUFBTTtBQUMxQixlQUFPO0FBQUEsTUFBQTtBQUtULGFBQU8sYUFBYSxRQUFRLGFBQWEsVUFBVTtBQUFBLElBQUE7QUFHckQsV0FBTyxRQUFRLFlBQVk7QUFBQSxFQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVV0QixZQUFZLFNBQXNCLFFBQTBCO0FBR2pFLFdBQ0UsdUJBQXVCLE9BQU8sS0FDOUIsQ0FBQyxRQUFRLFNBQ1QsQ0FBQyxLQUFLLFdBQVcsT0FBTyxNQUN2QixRQUFRLG9CQUFvQixLQUFLLFVBQVUsT0FBTztBQUFBLEVBQUE7QUFHeEQ7QUFJTSxNQUFNLHVCQUF1QixJQUFJLHFCQUFBO0FBTWxDLFNBQVUsWUFBWSxTQUFvQjtBQUc5QyxTQUFPLENBQUMsRUFDTixRQUFRLGVBQ1IsUUFBUSxnQkFDUCxPQUFPLFFBQVEsbUJBQW1CLGNBQWMsUUFBUSxlQUFBLEVBQWlCO0FBRTlFO0FBR0EsU0FBUyxvQkFBb0IsU0FBYTtBQUN4QyxRQUFNLFdBQVcsUUFBUSxTQUFTLFlBQUE7QUFDbEMsU0FDRSxhQUFhLFdBQ2IsYUFBYSxZQUNiLGFBQWEsWUFDYixhQUFhO0FBRWpCO0FBR0EsU0FBUyxjQUFjLFNBQW9CO0FBQ3pDLFNBQU8sZUFBZSxPQUFPLEtBQUssUUFBUSxRQUFRO0FBQ3BEO0FBR0EsU0FBUyxpQkFBaUIsU0FBb0I7QUFDNUMsU0FBTyxnQkFBZ0IsT0FBTyxLQUFLLFFBQVEsYUFBYSxNQUFNO0FBQ2hFO0FBR0EsU0FBUyxlQUFlLFNBQW9CO0FBQzFDLFNBQU8sUUFBUSxTQUFTLFlBQUEsS0FBaUI7QUFDM0M7QUFHQSxTQUFTLGdCQUFnQixTQUFvQjtBQUMzQyxTQUFPLFFBQVEsU0FBUyxZQUFBLEtBQWlCO0FBQzNDO0FBR0EsU0FBUyxpQkFBaUIsU0FBb0I7QUFDNUMsTUFBSSxDQUFDLFFBQVEsYUFBYSxVQUFVLEtBQUssUUFBUSxhQUFhLFFBQVc7QUFDdkUsV0FBTztBQUFBLEVBQUE7QUFHVCxRQUFNLFdBQVcsUUFBUSxhQUFhLFVBQVU7QUFDaEQsU0FBTyxDQUFDLEVBQUUsWUFBWSxDQUFDLE1BQU0sU0FBUyxVQUFVLEVBQUUsQ0FBQztBQUNyRDtBQU1BLFNBQVMsaUJBQWlCLFNBQW9CO0FBQzVDLE1BQUksQ0FBQyxpQkFBaUIsT0FBTyxHQUFHO0FBQzlCLFdBQU87QUFBQSxFQUFBO0FBSVQsUUFBTSxXQUFXLFNBQVMsUUFBUSxhQUFhLFVBQVUsS0FBSyxJQUFJLEVBQUU7QUFFcEUsU0FBTyxNQUFNLFFBQVEsSUFBSSxLQUFLO0FBQ2hDO0FBR0EsU0FBUyx5QkFBeUIsU0FBb0I7QUFDcEQsUUFBTSxXQUFXLFFBQVEsU0FBUyxZQUFBO0FBQ2xDLFFBQU0sWUFBWSxhQUFhLFdBQVksUUFBNkI7QUFFeEUsU0FDRSxjQUFjLFVBQ2QsY0FBYyxjQUNkLGFBQWEsWUFDYixhQUFhO0FBRWpCO0FBTUEsU0FBUyx1QkFBdUIsU0FBb0I7QUFFbEQsTUFBSSxjQUFjLE9BQU8sR0FBRztBQUMxQixXQUFPO0FBQUEsRUFBQTtBQUdULFNBQ0Usb0JBQW9CLE9BQU8sS0FDM0IsaUJBQWlCLE9BQU8sS0FDeEIsUUFBUSxhQUFhLGlCQUFpQixLQUN0QyxpQkFBaUIsT0FBTztBQUU1QjsifQ==
|
|
136
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpdml0eS1jaGVja2VyLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9hMTF5L2ludGVyYWN0aXZpdHktY2hlY2tlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuLy8gQ29waWVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9ibG9iL21haW4vc3JjL2Nkay9hMTF5L2ZvY3VzLXRyYXAvZm9jdXMtdHJhcC50c1xuXG4vKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdXNlLWJlZm9yZS1kZWZpbmUgKi9cbmltcG9ydCB7IGlzU2VydmVyIH0gZnJvbSAnbGl0JztcblxuaW1wb3J0IHsgaXNGaXJlZm94LCBpc0lPUywgaXNXZWJraXQgfSBmcm9tICcuLi9kb20vcGxhdGZvcm0uanMnO1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBpc0ZvY3VzYWJsZSBtZXRob2QuXG4gKi9cbmV4cG9ydCBjbGFzcyBJc0ZvY3VzYWJsZUNvbmZpZyB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGNvdW50IGFuIGVsZW1lbnQgYXMgZm9jdXNhYmxlIGV2ZW4gaWYgaXQgaXMgbm90IGN1cnJlbnRseSB2aXNpYmxlLlxuICAgKi9cbiAgcHVibGljIGlnbm9yZVZpc2liaWxpdHk6IGJvb2xlYW4gPSBmYWxzZTtcbn1cblxuZXhwb3J0IGNsYXNzIEludGVyYWN0aXZpdHlDaGVja2VyIHtcbiAgLyoqXG4gICAqIEdldHMgd2hldGhlciBhbiBlbGVtZW50IGlzIGRpc2FibGVkLlxuICAgKlxuICAgKiBAcGFyYW0gZWxlbWVudCBFbGVtZW50IHRvIGJlIGNoZWNrZWQuXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGVsZW1lbnQgaXMgZGlzYWJsZWQuXG4gICAqL1xuICBwdWJsaWMgaXNEaXNhYmxlZChlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnZGlzYWJsZWQnKSB8fCBlbGVtZW50Lm1hdGNoZXMoJzpkaXNhYmxlZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgd2hldGhlciBhbiBlbGVtZW50IGlzIHZpc2libGUgZm9yIHRoZSBwdXJwb3NlcyBvZiBpbnRlcmFjdGl2aXR5LlxuICAgKlxuICAgKiBUaGlzIHdpbGwgY2FwdHVyZSBzdGF0ZXMgbGlrZSBgZGlzcGxheTogbm9uZWAgYW5kIGB2aXNpYmlsaXR5OiBoaWRkZW5gLCBidXQgbm90IHRoaW5ncyBsaWtlXG4gICAqIGJlaW5nIGNsaXBwZWQgYnkgYW4gYG92ZXJmbG93OiBoaWRkZW5gIHBhcmVudCBvciBiZWluZyBvdXRzaWRlIHRoZSB2aWV3cG9ydC5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgZWxlbWVudCBpcyB2aXNpYmxlLlxuICAgKi9cbiAgcHVibGljIGlzVmlzaWJsZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBoYXNHZW9tZXRyeShlbGVtZW50KSAmJiBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLnZpc2liaWxpdHkgPT09ICd2aXNpYmxlJztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHdoZXRoZXIgYW4gZWxlbWVudCBjYW4gYmUgcmVhY2hlZCB2aWEgVGFiIGtleS5cbiAgICogQXNzdW1lcyB0aGF0IHRoZSBlbGVtZW50IGhhcyBhbHJlYWR5IGJlZW4gY2hlY2tlZCB3aXRoIGlzRm9jdXNhYmxlLlxuICAgKlxuICAgKiBAcGFyYW0gZWxlbWVudCBFbGVtZW50IHRvIGJlIGNoZWNrZWQuXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGVsZW1lbnQgaXMgdGFiYmFibGUuXG4gICAqL1xuICBwdWJsaWMgaXNUYWJiYWJsZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIC8vIE5vdGhpbmcgaXMgdGFiYmFibGUgb24gdGhlIHNlcnZlciDwn5iOXG4gICAgaWYgKGlzU2VydmVyKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3Qgbm9kZU5hbWUgPSBlbGVtZW50Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7XG4gICAgY29uc3QgdGFiSW5kZXhWYWx1ZSA9IGdldFRhYkluZGV4VmFsdWUoZWxlbWVudCk7XG5cbiAgICBpZiAoZWxlbWVudC5oYXNBdHRyaWJ1dGUoJ2NvbnRlbnRlZGl0YWJsZScpKSB7XG4gICAgICByZXR1cm4gdGFiSW5kZXhWYWx1ZSAhPT0gLTE7XG4gICAgfVxuXG4gICAgaWYgKG5vZGVOYW1lID09PSAnaWZyYW1lJyB8fCBub2RlTmFtZSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIC8vIFRoZSBmcmFtZSBvciBvYmplY3QncyBjb250ZW50IG1heSBiZSB0YWJiYWJsZSBkZXBlbmRpbmcgb24gdGhlIGNvbnRlbnQsIGJ1dCBpdCdzXG4gICAgICAvLyBub3QgcG9zc2libHkgdG8gcmVsaWFibHkgZGV0ZWN0IHRoZSBjb250ZW50IG9mIHRoZSBmcmFtZXMuIFdlIGFsd2F5cyBjb25zaWRlciBzdWNoXG4gICAgICAvLyBlbGVtZW50cyBhcyBub24tdGFiYmFibGUuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gSW4gaU9TLCB0aGUgYnJvd3NlciBvbmx5IGNvbnNpZGVycyBzb21lIHNwZWNpZmljIGVsZW1lbnRzIGFzIHRhYmJhYmxlLlxuICAgIGlmIChpc1dlYmtpdCAmJiBpc0lPUyAmJiAhaXNQb3RlbnRpYWxseVRhYmJhYmxlSU9TKGVsZW1lbnQpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgaWYgKG5vZGVOYW1lID09PSAnYXVkaW8nKSB7XG4gICAgICAvLyBBdWRpbyBlbGVtZW50cyB3aXRob3V0IGNvbnRyb2xzIGVuYWJsZWQgYXJlIG5ldmVyIHRhYmJhYmxlLCByZWdhcmRsZXNzXG4gICAgICAvLyBvZiB0aGUgdGFiaW5kZXggYXR0cmlidXRlIGV4cGxpY2l0bHkgYmVpbmcgc2V0LlxuICAgICAgaWYgKCFlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnY29udHJvbHMnKSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgICAvLyBBdWRpbyBlbGVtZW50cyB3aXRoIGNvbnRyb2xzIGFyZSBieSBkZWZhdWx0IHRhYmJhYmxlIHVubGVzcyB0aGVcbiAgICAgIC8vIHRhYmluZGV4IGF0dHJpYnV0ZSBpcyBzZXQgdG8gYC0xYCBleHBsaWNpdGx5LlxuICAgICAgcmV0dXJuIHRhYkluZGV4VmFsdWUgIT09IC0xO1xuICAgIH1cblxuICAgIGlmIChub2RlTmFtZSA9PT0gJ3ZpZGVvJykge1xuICAgICAgLy8gRm9yIGFsbCB2aWRlbyBlbGVtZW50cywgaWYgdGhlIHRhYmluZGV4IGF0dHJpYnV0ZSBpcyBzZXQgdG8gYC0xYCwgdGhlIHZpZGVvXG4gICAgICAvLyBpcyBub3QgdGFiYmFibGUuIE5vdGU6IFdlIGNhbm5vdCByZWx5IG9uIHRoZSBkZWZhdWx0IGBIVE1MRWxlbWVudC50YWJJbmRleGBcbiAgICAgIC8vIHByb3BlcnR5IGFzIHRoYXQgb25lIGlzIHNldCB0byBgLTFgIGluIENocm9tZSwgRWRnZSBhbmQgU2FmYXJpIHYxMy4xLiBUaGVcbiAgICAgIC8vIHRhYmluZGV4IGF0dHJpYnV0ZSBpcyB0aGUgc291cmNlIG9mIHRydXRoIGhlcmUuXG4gICAgICBpZiAodGFiSW5kZXhWYWx1ZSA9PT0gLTEpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgICAgLy8gSWYgdGhlIHRhYmluZGV4IGlzIGV4cGxpY2l0bHkgc2V0LCBhbmQgbm90IGAtMWAgKGFzIHBlciBjaGVjayBiZWZvcmUpLCB0aGVcbiAgICAgIC8vIHZpZGVvIGVsZW1lbnQgaXMgYWx3YXlzIHRhYmJhYmxlIChyZWdhcmRsZXNzIG9mIHdoZXRoZXIgaXQgaGFzIGNvbnRyb2xzIG9yIG5vdCkuXG4gICAgICBpZiAodGFiSW5kZXhWYWx1ZSAhPT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIC8vIE90aGVyd2lzZSAod2hlbiBubyBleHBsaWNpdCB0YWJpbmRleCBpcyBzZXQpLCBhIHZpZGVvIGlzIG9ubHkgdGFiYmFibGUgaWYgaXRcbiAgICAgIC8vIGhhcyBjb250cm9scyBlbmFibGVkLiBGaXJlZm94IGlzIHNwZWNpYWwgYXMgdmlkZW9zIGFyZSBhbHdheXMgdGFiYmFibGUgcmVnYXJkbGVzc1xuICAgICAgLy8gb2Ygd2hldGhlciB0aGVyZSBhcmUgY29udHJvbHMgb3Igbm90LlxuICAgICAgcmV0dXJuIGlzRmlyZWZveCB8fCBlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnY29udHJvbHMnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZWxlbWVudC50YWJJbmRleCA+PSAwO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgd2hldGhlciBhbiBlbGVtZW50IGNhbiBiZSBmb2N1c2VkIGJ5IHRoZSB1c2VyLlxuICAgKlxuICAgKiBAcGFyYW0gZWxlbWVudCBFbGVtZW50IHRvIGJlIGNoZWNrZWQuXG4gICAqIEBwYXJhbSBjb25maWcgVGhlIGNvbmZpZyBvYmplY3Qgd2l0aCBvcHRpb25zIHRvIGN1c3RvbWl6ZSB0aGlzIG1ldGhvZCdzIGJlaGF2aW9yXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGVsZW1lbnQgaXMgZm9jdXNhYmxlLlxuICAgKi9cbiAgcHVibGljIGlzRm9jdXNhYmxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBjb25maWc/OiBJc0ZvY3VzYWJsZUNvbmZpZyk6IGJvb2xlYW4ge1xuICAgIC8vIFBlcmZvcm0gY2hlY2tzIGluIG9yZGVyIG9mIGxlZnQgdG8gbW9zdCBleHBlbnNpdmUuXG4gICAgLy8gQWdhaW4sIG5haXZlIGFwcHJvYWNoIHRoYXQgZG9lcyBub3QgY2FwdHVyZSBtYW55IGVkZ2UgY2FzZXMgYW5kIGJyb3dzZXIgcXVpcmtzLlxuICAgIHJldHVybiAoXG4gICAgICBpc1BvdGVudGlhbGx5Rm9jdXNhYmxlKGVsZW1lbnQpICYmXG4gICAgICAhZWxlbWVudC5pbmVydCAmJlxuICAgICAgIXRoaXMuaXNEaXNhYmxlZChlbGVtZW50KSAmJlxuICAgICAgKGNvbmZpZz8uaWdub3JlVmlzaWJpbGl0eSB8fCB0aGlzLmlzVmlzaWJsZShlbGVtZW50KSlcbiAgICApO1xuICB9XG59XG5cbi8vIEZvciB1bml0IHRlc3RzIHdlIG5lZWQgdG8gcHJldGVuZCB0aGF0IGFuIGVsZW1lbnQgaXMgYWx3YXlzIHZpc2libGUuXG4vLyBUaGlzIGNhbiBiZSBkb25lIGJ5IGNoZWNraW5nIGlmIHZpc2liaWxpdHkgcHJvcGVydHkgaXMgc2V0IHRvIGVtcHR5LlxuZXhwb3J0IGNvbnN0IGludGVyYWN0aXZpdHlDaGVja2VyID0gbmV3IEludGVyYWN0aXZpdHlDaGVja2VyKCk7XG5cbmZ1bmN0aW9uIGhhc0dlb21ldHJ5KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gIC8vIFVzZSBsb2dpYyBmcm9tIGpRdWVyeSB0byBjaGVjayBmb3IgYW4gaW52aXNpYmxlIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vanF1ZXJ5L2pxdWVyeS9ibG9iL21hc3Rlci9zcmMvY3NzL2hpZGRlblZpc2libGVTZWxlY3RvcnMuanMjTDEyXG4gIHJldHVybiAhIShcbiAgICBlbGVtZW50Lm9mZnNldFdpZHRoIHx8XG4gICAgZWxlbWVudC5vZmZzZXRIZWlnaHQgfHxcbiAgICAodHlwZW9mIGVsZW1lbnQuZ2V0Q2xpZW50UmVjdHMgPT09ICdmdW5jdGlvbicgJiYgZWxlbWVudC5nZXRDbGllbnRSZWN0cygpLmxlbmd0aClcbiAgKTtcbn1cblxuLyoqIEdldHMgd2hldGhlciBhbiBlbGVtZW50J3MgICovXG5mdW5jdGlvbiBpc05hdGl2ZUZvcm1FbGVtZW50KGVsZW1lbnQ6IE5vZGUpOiBib29sZWFuIHtcbiAgY29uc3Qgbm9kZU5hbWUgPSBlbGVtZW50Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7XG4gIHJldHVybiAoXG4gICAgbm9kZU5hbWUgPT09ICdpbnB1dCcgfHxcbiAgICBub2RlTmFtZSA9PT0gJ3NlbGVjdCcgfHxcbiAgICBub2RlTmFtZSA9PT0gJ2J1dHRvbicgfHxcbiAgICBub2RlTmFtZSA9PT0gJ3RleHRhcmVhJ1xuICApO1xufVxuXG4vKiogR2V0cyB3aGV0aGVyIGFuIGVsZW1lbnQgaXMgYW4gYDxpbnB1dCB0eXBlPVwiaGlkZGVuXCI+YC4gKi9cbmZ1bmN0aW9uIGlzSGlkZGVuSW5wdXQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgcmV0dXJuIGlzSW5wdXRFbGVtZW50KGVsZW1lbnQpICYmIGVsZW1lbnQudHlwZSA9PSAnaGlkZGVuJztcbn1cblxuLyoqIEdldHMgd2hldGhlciBhbiBlbGVtZW50IGlzIGFuIGFuY2hvciB0aGF0IGhhcyBhbiBocmVmIGF0dHJpYnV0ZS4gKi9cbmZ1bmN0aW9uIGlzQW5jaG9yV2l0aEhyZWYoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgcmV0dXJuIGlzQW5jaG9yRWxlbWVudChlbGVtZW50KSAmJiBlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnaHJlZicpO1xufVxuXG4vKiogR2V0cyB3aGV0aGVyIGFuIGVsZW1lbnQgaXMgYW4gaW5wdXQgZWxlbWVudC4gKi9cbmZ1bmN0aW9uIGlzSW5wdXRFbGVtZW50KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogZWxlbWVudCBpcyBIVE1MSW5wdXRFbGVtZW50IHtcbiAgcmV0dXJuIGVsZW1lbnQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSA9PSAnaW5wdXQnO1xufVxuXG4vKiogR2V0cyB3aGV0aGVyIGFuIGVsZW1lbnQgaXMgYW4gYW5jaG9yIGVsZW1lbnQuICovXG5mdW5jdGlvbiBpc0FuY2hvckVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBlbGVtZW50IGlzIEhUTUxBbmNob3JFbGVtZW50IHtcbiAgcmV0dXJuIGVsZW1lbnQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSA9PSAnYSc7XG59XG5cbi8qKiBHZXRzIHdoZXRoZXIgYW4gZWxlbWVudCBoYXMgYSB2YWxpZCB0YWJpbmRleC4gKi9cbmZ1bmN0aW9uIGhhc1ZhbGlkVGFiSW5kZXgoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgaWYgKCFlbGVtZW50Lmhhc0F0dHJpYnV0ZSgndGFiaW5kZXgnKSB8fCBlbGVtZW50LnRhYkluZGV4ID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCB0YWJJbmRleCA9IGVsZW1lbnQuZ2V0QXR0cmlidXRlKCd0YWJpbmRleCcpO1xuICByZXR1cm4gISEodGFiSW5kZXggJiYgIWlzTmFOKHBhcnNlSW50KHRhYkluZGV4LCAxMCkpKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBwYXJzZWQgdGFiaW5kZXggZnJvbSB0aGUgZWxlbWVudCBhdHRyaWJ1dGVzIGluc3RlYWQgb2YgcmV0dXJuaW5nIHRoZVxuICogZXZhbHVhdGVkIHRhYmluZGV4IGZyb20gdGhlIGJyb3dzZXJzIGRlZmF1bHRzLlxuICovXG5mdW5jdGlvbiBnZXRUYWJJbmRleFZhbHVlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogbnVtYmVyIHwgbnVsbCB7XG4gIGlmICghaGFzVmFsaWRUYWJJbmRleChlbGVtZW50KSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLy8gU2VlIGJyb3dzZXIgaXNzdWUgaW4gR2Vja28gaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTEyODA1NFxuICBjb25zdCB0YWJJbmRleCA9IHBhcnNlSW50KGVsZW1lbnQuZ2V0QXR0cmlidXRlKCd0YWJpbmRleCcpIHx8ICcnLCAxMCk7XG5cbiAgcmV0dXJuIGlzTmFOKHRhYkluZGV4KSA/IC0xIDogdGFiSW5kZXg7XG59XG5cbi8qKiBDaGVja3Mgd2hldGhlciB0aGUgc3BlY2lmaWVkIGVsZW1lbnQgaXMgcG90ZW50aWFsbHkgdGFiYmFibGUgb24gaU9TICovXG5mdW5jdGlvbiBpc1BvdGVudGlhbGx5VGFiYmFibGVJT1MoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgY29uc3Qgbm9kZU5hbWUgPSBlbGVtZW50Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7XG4gIGNvbnN0IGlucHV0VHlwZSA9IG5vZGVOYW1lID09PSAnaW5wdXQnICYmIChlbGVtZW50IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnR5cGU7XG5cbiAgcmV0dXJuIChcbiAgICBpbnB1dFR5cGUgPT09ICd0ZXh0JyB8fFxuICAgIGlucHV0VHlwZSA9PT0gJ3Bhc3N3b3JkJyB8fFxuICAgIG5vZGVOYW1lID09PSAnc2VsZWN0JyB8fFxuICAgIG5vZGVOYW1lID09PSAndGV4dGFyZWEnXG4gICk7XG59XG5cbi8qKlxuICogR2V0cyB3aGV0aGVyIGFuIGVsZW1lbnQgaXMgcG90ZW50aWFsbHkgZm9jdXNhYmxlIHdpdGhvdXQgdGFraW5nIGN1cnJlbnQgdmlzaWJsZS9kaXNhYmxlZCBzdGF0ZVxuICogaW50byBhY2NvdW50LlxuICovXG5mdW5jdGlvbiBpc1BvdGVudGlhbGx5Rm9jdXNhYmxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gIC8vIElucHV0cyBhcmUgcG90ZW50aWFsbHkgZm9jdXNhYmxlICp1bmxlc3MqIHRoZXkncmUgdHlwZT1cImhpZGRlblwiLlxuICBpZiAoaXNIaWRkZW5JbnB1dChlbGVtZW50KSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgaXNOYXRpdmVGb3JtRWxlbWVudChlbGVtZW50KSB8fFxuICAgIGlzQW5jaG9yV2l0aEhyZWYoZWxlbWVudCkgfHxcbiAgICBlbGVtZW50Lmhhc0F0dHJpYnV0ZSgnY29udGVudGVkaXRhYmxlJykgfHxcbiAgICBoYXNWYWxpZFRhYkluZGV4KGVsZW1lbnQpXG4gICk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtNQWtCYSxrQkFBaUI7QUFBQSxFQUE5QixjQUFBO0FBSVMsU0FBZ0IsbUJBQVk7QUFBQSxFQUFBO0FBQ3BDO01BRVkscUJBQW9CO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPeEIsV0FBVyxTQUFvQjtBQUNwQyxXQUFPLFFBQVEsYUFBYSxVQUFVLEtBQUssUUFBUSxRQUFRLFdBQVc7QUFBQSxFQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBV2pFLFVBQVUsU0FBb0I7QUFDbkMsV0FBTyxZQUFZLE9BQU8sS0FBSyxpQkFBaUIsT0FBTyxFQUFFLGVBQWU7QUFBQSxFQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVVuRSxXQUFXLFNBQW9CO0FBRXBDLFFBQUksVUFBVTtBQUNMLGFBQUE7QUFBQSxJQUFBO0FBR0gsVUFBQSxXQUFXLFFBQVEsU0FBUztBQUM1QixVQUFBLGdCQUFnQixpQkFBaUIsT0FBTztBQUUxQyxRQUFBLFFBQVEsYUFBYSxpQkFBaUIsR0FBRztBQUMzQyxhQUFPLGtCQUFrQjtBQUFBLElBQUE7QUFHdkIsUUFBQSxhQUFhLFlBQVksYUFBYSxVQUFVO0FBSTNDLGFBQUE7QUFBQSxJQUFBO0FBSVQsUUFBSSxZQUFZLFNBQVMsQ0FBQyx5QkFBeUIsT0FBTyxHQUFHO0FBQ3BELGFBQUE7QUFBQSxJQUFBO0FBR1QsUUFBSSxhQUFhLFNBQVM7QUFHeEIsVUFBSSxDQUFDLFFBQVEsYUFBYSxVQUFVLEdBQUc7QUFDOUIsZUFBQTtBQUFBLE1BQUE7QUFJVCxhQUFPLGtCQUFrQjtBQUFBLElBQUE7QUFHM0IsUUFBSSxhQUFhLFNBQVM7QUFLeEIsVUFBSSxrQkFBa0IsSUFBSTtBQUNqQixlQUFBO0FBQUEsTUFBQTtBQUlULFVBQUksa0JBQWtCLE1BQU07QUFDbkIsZUFBQTtBQUFBLE1BQUE7QUFLRixhQUFBLGFBQWEsUUFBUSxhQUFhLFVBQVU7QUFBQSxJQUFBO0FBR3JELFdBQU8sUUFBUSxZQUFZO0FBQUEsRUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFVdEIsWUFBWSxTQUFzQixRQUEwQjtBQUdqRSxXQUNFLHVCQUF1QixPQUFPLEtBQzlCLENBQUMsUUFBUSxTQUNULENBQUMsS0FBSyxXQUFXLE9BQU8sT0FDdkIsaUNBQVEscUJBQW9CLEtBQUssVUFBVSxPQUFPO0FBQUEsRUFBQTtBQUd4RDtBQUlZLE1BQUEsdUJBQXVCLElBQUk7QUFFeEMsU0FBUyxZQUFZLFNBQW9CO0FBR3ZDLFNBQU8sQ0FBQyxFQUNOLFFBQVEsZUFDUixRQUFRLGdCQUNQLE9BQU8sUUFBUSxtQkFBbUIsY0FBYyxRQUFRLGVBQUEsRUFBaUI7QUFFOUU7QUFHQSxTQUFTLG9CQUFvQixTQUFhO0FBQ2xDLFFBQUEsV0FBVyxRQUFRLFNBQVM7QUFDbEMsU0FDRSxhQUFhLFdBQ2IsYUFBYSxZQUNiLGFBQWEsWUFDYixhQUFhO0FBRWpCO0FBR0EsU0FBUyxjQUFjLFNBQW9CO0FBQ3pDLFNBQU8sZUFBZSxPQUFPLEtBQUssUUFBUSxRQUFRO0FBQ3BEO0FBR0EsU0FBUyxpQkFBaUIsU0FBb0I7QUFDNUMsU0FBTyxnQkFBZ0IsT0FBTyxLQUFLLFFBQVEsYUFBYSxNQUFNO0FBQ2hFO0FBR0EsU0FBUyxlQUFlLFNBQW9CO0FBQ25DLFNBQUEsUUFBUSxTQUFTLFlBQUEsS0FBaUI7QUFDM0M7QUFHQSxTQUFTLGdCQUFnQixTQUFvQjtBQUNwQyxTQUFBLFFBQVEsU0FBUyxZQUFBLEtBQWlCO0FBQzNDO0FBR0EsU0FBUyxpQkFBaUIsU0FBb0I7QUFDNUMsTUFBSSxDQUFDLFFBQVEsYUFBYSxVQUFVLEtBQUssUUFBUSxhQUFhLFFBQVc7QUFDaEUsV0FBQTtBQUFBLEVBQUE7QUFHSCxRQUFBLFdBQVcsUUFBUSxhQUFhLFVBQVU7QUFDekMsU0FBQSxDQUFDLEVBQUUsWUFBWSxDQUFDLE1BQU0sU0FBUyxVQUFVLEVBQUUsQ0FBQztBQUNyRDtBQU1BLFNBQVMsaUJBQWlCLFNBQW9CO0FBQ3hDLE1BQUEsQ0FBQyxpQkFBaUIsT0FBTyxHQUFHO0FBQ3ZCLFdBQUE7QUFBQSxFQUFBO0FBSVQsUUFBTSxXQUFXLFNBQVMsUUFBUSxhQUFhLFVBQVUsS0FBSyxJQUFJLEVBQUU7QUFFN0QsU0FBQSxNQUFNLFFBQVEsSUFBSSxLQUFLO0FBQ2hDO0FBR0EsU0FBUyx5QkFBeUIsU0FBb0I7QUFDOUMsUUFBQSxXQUFXLFFBQVEsU0FBUztBQUM1QixRQUFBLFlBQVksYUFBYSxXQUFZLFFBQTZCO0FBRXhFLFNBQ0UsY0FBYyxVQUNkLGNBQWMsY0FDZCxhQUFhLFlBQ2IsYUFBYTtBQUVqQjtBQU1BLFNBQVMsdUJBQXVCLFNBQW9CO0FBRTlDLE1BQUEsY0FBYyxPQUFPLEdBQUc7QUFDbkIsV0FBQTtBQUFBLEVBQUE7QUFJUCxTQUFBLG9CQUFvQixPQUFPLEtBQzNCLGlCQUFpQixPQUFPLEtBQ3hCLFFBQVEsYUFBYSxpQkFBaUIsS0FDdEMsaUJBQWlCLE9BQU87QUFFNUI7In0=
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
export type AriaLivePoliteness = 'off' | 'polite' | 'assertive';
|
|
9
|
+
/**
|
|
10
|
+
* Allows to announce messages to screen readers.
|
|
11
|
+
*
|
|
12
|
+
* Adapted from https://github.com/angular/components/blob/main/src/cdk/a11y/live-announcer/live-announcer.ts
|
|
13
|
+
*/
|
|
14
|
+
export declare class SbbLiveAnnouncer {
|
|
15
|
+
private _liveElement;
|
|
16
|
+
private _previousTimeout;
|
|
17
|
+
private _currentPromise;
|
|
18
|
+
private _currentResolve;
|
|
19
|
+
constructor();
|
|
20
|
+
/**
|
|
21
|
+
* Announces a message to screen readers.
|
|
22
|
+
* @param message Message to be announced to the screen reader.
|
|
23
|
+
* @returns Promise that will be resolved when the message is added to the DOM.
|
|
24
|
+
*/
|
|
25
|
+
announce(message: string): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* Announces a message to screen readers.
|
|
28
|
+
* @param message Message to be announced to the screen reader.
|
|
29
|
+
* @param politeness The politeness of the announcer element.
|
|
30
|
+
* @returns Promise that will be resolved when the message is added to the DOM.
|
|
31
|
+
*/
|
|
32
|
+
announce(message: string, politeness?: AriaLivePoliteness): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Announces a message to screen readers.
|
|
35
|
+
* @param message Message to be announced to the screen reader.
|
|
36
|
+
* @param duration Time in milliseconds after which to clear out the announcer element. Note
|
|
37
|
+
* that this takes effect after the message has been added to the DOM, which can be up to
|
|
38
|
+
* 100ms after `announce` has been called.
|
|
39
|
+
* @returns Promise that will be resolved when the message is added to the DOM.
|
|
40
|
+
*/
|
|
41
|
+
announce(message: string, duration?: number): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* Announces a message to screen readers.
|
|
44
|
+
* @param message Message to be announced to the screen reader.
|
|
45
|
+
* @param politeness The politeness of the announcer element.
|
|
46
|
+
* @param duration Time in milliseconds after which to clear out the announcer element. Note
|
|
47
|
+
* that this takes effect after the message has been added to the DOM, which can be up to
|
|
48
|
+
* 100ms after `announce` has been called.
|
|
49
|
+
* @returns Promise that will be resolved when the message is added to the DOM.
|
|
50
|
+
*/
|
|
51
|
+
announce(message: string, politeness?: AriaLivePoliteness, duration?: number): Promise<void>;
|
|
52
|
+
/**
|
|
53
|
+
* Clears the current text from the announcer element. Can be used to prevent
|
|
54
|
+
* screen readers from reading the text out again while the user is going
|
|
55
|
+
* through the page landmarks.
|
|
56
|
+
*/
|
|
57
|
+
clear(): void;
|
|
58
|
+
destroy(): void;
|
|
59
|
+
private _createLiveElement;
|
|
60
|
+
}
|
|
61
|
+
export declare const sbbLiveAnnouncer: SbbLiveAnnouncer;
|
|
62
|
+
//# sourceMappingURL=live-announcer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"live-announcer.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/a11y/live-announcer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,QAAQ,GAAG,WAAW,CAAC;AAIhE;;;;GAIG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,gBAAgB,CAA4C;IACpE,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,eAAe,CAA2B;;IAQlD;;;;OAIG;IACI,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAE/C;;;;;OAKG;IACI,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAEhF;;;;;;;OAOG;IACI,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAElE;;;;;;;;OAQG;IACI,QAAQ,CACb,OAAO,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,kBAAkB,EAC/B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;IAkDhB;;;;OAIG;IACI,KAAK,IAAI,IAAI;IAMb,OAAO,IAAI,IAAI;IAQtB,OAAO,CAAC,kBAAkB;CAqB3B;AAED,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { isServer } from "lit";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
let uniqueIds = 0;
|
|
10
|
+
class SbbLiveAnnouncer {
|
|
11
|
+
constructor() {
|
|
12
|
+
if (!isServer) {
|
|
13
|
+
this._liveElement = this._createLiveElement();
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
announce(message, ...args) {
|
|
17
|
+
if (isServer) {
|
|
18
|
+
return Promise.resolve();
|
|
19
|
+
}
|
|
20
|
+
const defaultOptions = {};
|
|
21
|
+
let politeness;
|
|
22
|
+
let duration;
|
|
23
|
+
if (args.length === 1 && typeof args[0] === "number") {
|
|
24
|
+
duration = args[0];
|
|
25
|
+
} else {
|
|
26
|
+
[politeness, duration] = args;
|
|
27
|
+
}
|
|
28
|
+
this.clear();
|
|
29
|
+
clearTimeout(this._previousTimeout);
|
|
30
|
+
politeness ?? (politeness = (defaultOptions == null ? void 0 : defaultOptions.politeness) ?? "polite");
|
|
31
|
+
duration ?? (duration = defaultOptions == null ? void 0 : defaultOptions.duration);
|
|
32
|
+
this._liveElement.setAttribute("aria-live", politeness);
|
|
33
|
+
if (!this._currentPromise) {
|
|
34
|
+
this._currentPromise = new Promise((resolve) => this._currentResolve = resolve);
|
|
35
|
+
}
|
|
36
|
+
clearTimeout(this._previousTimeout);
|
|
37
|
+
this._previousTimeout = setTimeout(() => {
|
|
38
|
+
var _a;
|
|
39
|
+
this._liveElement.textContent = message;
|
|
40
|
+
if (typeof duration === "number") {
|
|
41
|
+
this._previousTimeout = setTimeout(() => this.clear(), duration);
|
|
42
|
+
}
|
|
43
|
+
(_a = this._currentResolve) == null ? void 0 : _a.call(this);
|
|
44
|
+
this._currentPromise = this._currentResolve = void 0;
|
|
45
|
+
}, 100);
|
|
46
|
+
return this._currentPromise;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Clears the current text from the announcer element. Can be used to prevent
|
|
50
|
+
* screen readers from reading the text out again while the user is going
|
|
51
|
+
* through the page landmarks.
|
|
52
|
+
*/
|
|
53
|
+
clear() {
|
|
54
|
+
if (this._liveElement) {
|
|
55
|
+
this._liveElement.textContent = "";
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
destroy() {
|
|
59
|
+
var _a, _b;
|
|
60
|
+
clearTimeout(this._previousTimeout);
|
|
61
|
+
(_a = this._liveElement) == null ? void 0 : _a.remove();
|
|
62
|
+
this._liveElement = null;
|
|
63
|
+
(_b = this._currentResolve) == null ? void 0 : _b.call(this);
|
|
64
|
+
this._currentPromise = this._currentResolve = void 0;
|
|
65
|
+
}
|
|
66
|
+
_createLiveElement() {
|
|
67
|
+
const elementClass = "sbb-live-announcer-element";
|
|
68
|
+
const previousElements = document.getElementsByClassName(elementClass);
|
|
69
|
+
const liveEl = document.createElement("div");
|
|
70
|
+
for (let i = 0; i < previousElements.length; i++) {
|
|
71
|
+
previousElements[i].remove();
|
|
72
|
+
}
|
|
73
|
+
liveEl.classList.add(elementClass);
|
|
74
|
+
liveEl.classList.add("sbb-screen-reader-only");
|
|
75
|
+
liveEl.setAttribute("aria-atomic", "true");
|
|
76
|
+
liveEl.setAttribute("aria-live", "polite");
|
|
77
|
+
liveEl.id = `sbb-live-announcer-${uniqueIds++}`;
|
|
78
|
+
document.body.appendChild(liveEl);
|
|
79
|
+
return liveEl;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
const sbbLiveAnnouncer = new SbbLiveAnnouncer();
|
|
83
|
+
export {
|
|
84
|
+
SbbLiveAnnouncer,
|
|
85
|
+
sbbLiveAnnouncer
|
|
86
|
+
};
|
|
87
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGl2ZS1hbm5vdW5jZXIuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL2ExMXkvbGl2ZS1hbm5vdW5jZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuZGV2L2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgeyBpc1NlcnZlciB9IGZyb20gJ2xpdCc7XG5cbmV4cG9ydCB0eXBlIEFyaWFMaXZlUG9saXRlbmVzcyA9ICdvZmYnIHwgJ3BvbGl0ZScgfCAnYXNzZXJ0aXZlJztcblxubGV0IHVuaXF1ZUlkcyA9IDA7XG5cbi8qKlxuICogQWxsb3dzIHRvIGFubm91bmNlIG1lc3NhZ2VzIHRvIHNjcmVlbiByZWFkZXJzLlxuICpcbiAqIEFkYXB0ZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL2Jsb2IvbWFpbi9zcmMvY2RrL2ExMXkvbGl2ZS1hbm5vdW5jZXIvbGl2ZS1hbm5vdW5jZXIudHNcbiAqL1xuZXhwb3J0IGNsYXNzIFNiYkxpdmVBbm5vdW5jZXIge1xuICBwcml2YXRlIF9saXZlRWxlbWVudCE6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF9wcmV2aW91c1RpbWVvdXQ6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIF9jdXJyZW50UHJvbWlzZTogUHJvbWlzZTx2b2lkPiB8IHVuZGVmaW5lZDtcbiAgcHJpdmF0ZSBfY3VycmVudFJlc29sdmU6ICgoKSA9PiB2b2lkKSB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKCFpc1NlcnZlcikge1xuICAgICAgdGhpcy5fbGl2ZUVsZW1lbnQgPSB0aGlzLl9jcmVhdGVMaXZlRWxlbWVudCgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBbm5vdW5jZXMgYSBtZXNzYWdlIHRvIHNjcmVlbiByZWFkZXJzLlxuICAgKiBAcGFyYW0gbWVzc2FnZSBNZXNzYWdlIHRvIGJlIGFubm91bmNlZCB0byB0aGUgc2NyZWVuIHJlYWRlci5cbiAgICogQHJldHVybnMgUHJvbWlzZSB0aGF0IHdpbGwgYmUgcmVzb2x2ZWQgd2hlbiB0aGUgbWVzc2FnZSBpcyBhZGRlZCB0byB0aGUgRE9NLlxuICAgKi9cbiAgcHVibGljIGFubm91bmNlKG1lc3NhZ2U6IHN0cmluZyk6IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIEFubm91bmNlcyBhIG1lc3NhZ2UgdG8gc2NyZWVuIHJlYWRlcnMuXG4gICAqIEBwYXJhbSBtZXNzYWdlIE1lc3NhZ2UgdG8gYmUgYW5ub3VuY2VkIHRvIHRoZSBzY3JlZW4gcmVhZGVyLlxuICAgKiBAcGFyYW0gcG9saXRlbmVzcyBUaGUgcG9saXRlbmVzcyBvZiB0aGUgYW5ub3VuY2VyIGVsZW1lbnQuXG4gICAqIEByZXR1cm5zIFByb21pc2UgdGhhdCB3aWxsIGJlIHJlc29sdmVkIHdoZW4gdGhlIG1lc3NhZ2UgaXMgYWRkZWQgdG8gdGhlIERPTS5cbiAgICovXG4gIHB1YmxpYyBhbm5vdW5jZShtZXNzYWdlOiBzdHJpbmcsIHBvbGl0ZW5lc3M/OiBBcmlhTGl2ZVBvbGl0ZW5lc3MpOiBQcm9taXNlPHZvaWQ+O1xuXG4gIC8qKlxuICAgKiBBbm5vdW5jZXMgYSBtZXNzYWdlIHRvIHNjcmVlbiByZWFkZXJzLlxuICAgKiBAcGFyYW0gbWVzc2FnZSBNZXNzYWdlIHRvIGJlIGFubm91bmNlZCB0byB0aGUgc2NyZWVuIHJlYWRlci5cbiAgICogQHBhcmFtIGR1cmF0aW9uIFRpbWUgaW4gbWlsbGlzZWNvbmRzIGFmdGVyIHdoaWNoIHRvIGNsZWFyIG91dCB0aGUgYW5ub3VuY2VyIGVsZW1lbnQuIE5vdGVcbiAgICogICB0aGF0IHRoaXMgdGFrZXMgZWZmZWN0IGFmdGVyIHRoZSBtZXNzYWdlIGhhcyBiZWVuIGFkZGVkIHRvIHRoZSBET00sIHdoaWNoIGNhbiBiZSB1cCB0b1xuICAgKiAgIDEwMG1zIGFmdGVyIGBhbm5vdW5jZWAgaGFzIGJlZW4gY2FsbGVkLlxuICAgKiBAcmV0dXJucyBQcm9taXNlIHRoYXQgd2lsbCBiZSByZXNvbHZlZCB3aGVuIHRoZSBtZXNzYWdlIGlzIGFkZGVkIHRvIHRoZSBET00uXG4gICAqL1xuICBwdWJsaWMgYW5ub3VuY2UobWVzc2FnZTogc3RyaW5nLCBkdXJhdGlvbj86IG51bWJlcik6IFByb21pc2U8dm9pZD47XG5cbiAgLyoqXG4gICAqIEFubm91bmNlcyBhIG1lc3NhZ2UgdG8gc2NyZWVuIHJlYWRlcnMuXG4gICAqIEBwYXJhbSBtZXNzYWdlIE1lc3NhZ2UgdG8gYmUgYW5ub3VuY2VkIHRvIHRoZSBzY3JlZW4gcmVhZGVyLlxuICAgKiBAcGFyYW0gcG9saXRlbmVzcyBUaGUgcG9saXRlbmVzcyBvZiB0aGUgYW5ub3VuY2VyIGVsZW1lbnQuXG4gICAqIEBwYXJhbSBkdXJhdGlvbiBUaW1lIGluIG1pbGxpc2Vjb25kcyBhZnRlciB3aGljaCB0byBjbGVhciBvdXQgdGhlIGFubm91bmNlciBlbGVtZW50LiBOb3RlXG4gICAqICAgdGhhdCB0aGlzIHRha2VzIGVmZmVjdCBhZnRlciB0aGUgbWVzc2FnZSBoYXMgYmVlbiBhZGRlZCB0byB0aGUgRE9NLCB3aGljaCBjYW4gYmUgdXAgdG9cbiAgICogICAxMDBtcyBhZnRlciBgYW5ub3VuY2VgIGhhcyBiZWVuIGNhbGxlZC5cbiAgICogQHJldHVybnMgUHJvbWlzZSB0aGF0IHdpbGwgYmUgcmVzb2x2ZWQgd2hlbiB0aGUgbWVzc2FnZSBpcyBhZGRlZCB0byB0aGUgRE9NLlxuICAgKi9cbiAgcHVibGljIGFubm91bmNlKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBwb2xpdGVuZXNzPzogQXJpYUxpdmVQb2xpdGVuZXNzLFxuICAgIGR1cmF0aW9uPzogbnVtYmVyLFxuICApOiBQcm9taXNlPHZvaWQ+O1xuXG4gIHB1YmxpYyBhbm5vdW5jZShtZXNzYWdlOiBzdHJpbmcsIC4uLmFyZ3M6IGFueVtdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKGlzU2VydmVyKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XG4gICAgfVxuXG4gICAgLy8gVE9ETzogRGVjaWRlIHdoZXRoZXIgdG8gaGF2ZSBnbG9iYWwgb3B0aW9ucy5cbiAgICBjb25zdCBkZWZhdWx0T3B0aW9ucyA9IHt9IGFzIHsgcG9saXRlbmVzcz86IEFyaWFMaXZlUG9saXRlbmVzczsgZHVyYXRpb24/OiBudW1iZXIgfTtcbiAgICBsZXQgcG9saXRlbmVzczogQXJpYUxpdmVQb2xpdGVuZXNzIHwgdW5kZWZpbmVkO1xuICAgIGxldCBkdXJhdGlvbjogbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gICAgaWYgKGFyZ3MubGVuZ3RoID09PSAxICYmIHR5cGVvZiBhcmdzWzBdID09PSAnbnVtYmVyJykge1xuICAgICAgZHVyYXRpb24gPSBhcmdzWzBdO1xuICAgIH0gZWxzZSB7XG4gICAgICBbcG9saXRlbmVzcywgZHVyYXRpb25dID0gYXJncztcbiAgICB9XG5cbiAgICB0aGlzLmNsZWFyKCk7XG4gICAgY2xlYXJUaW1lb3V0KHRoaXMuX3ByZXZpb3VzVGltZW91dCk7XG5cbiAgICBwb2xpdGVuZXNzID8/PSBkZWZhdWx0T3B0aW9ucz8ucG9saXRlbmVzcyA/PyAncG9saXRlJztcbiAgICBkdXJhdGlvbiA/Pz0gZGVmYXVsdE9wdGlvbnM/LmR1cmF0aW9uO1xuXG4gICAgdGhpcy5fbGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWxpdmUnLCBwb2xpdGVuZXNzKTtcblxuICAgIC8vIFRoaXMgMTAwbXMgdGltZW91dCBpcyBuZWNlc3NhcnkgZm9yIHNvbWUgYnJvd3NlciArIHNjcmVlbi1yZWFkZXIgY29tYmluYXRpb25zOlxuICAgIC8vIC0gQm90aCBKQVdTIGFuZCBOVkRBIG92ZXIgSUUxMSB3aWxsIG5vdCBhbm5vdW5jZSBhbnl0aGluZyB3aXRob3V0IGEgbm9uLXplcm8gdGltZW91dC5cbiAgICAvLyAtIFdpdGggQ2hyb21lIGFuZCBJRTExIHdpdGggTlZEQSBvciBKQVdTLCBhIHJlcGVhdGVkIChpZGVudGljYWwpIG1lc3NhZ2Ugd29uJ3QgYmUgcmVhZCBhXG4gICAgLy8gICBzZWNvbmQgdGltZSB3aXRob3V0IGNsZWFyaW5nIGFuZCB0aGVuIHVzaW5nIGEgbm9uLXplcm8gZGVsYXkuXG4gICAgLy8gKHVzaW5nIEpBV1MgMTcgYXQgdGltZSBvZiB0aGlzIHdyaXRpbmcpLlxuICAgIGlmICghdGhpcy5fY3VycmVudFByb21pc2UpIHtcbiAgICAgIHRoaXMuX2N1cnJlbnRQcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUpID0+ICh0aGlzLl9jdXJyZW50UmVzb2x2ZSA9IHJlc29sdmUpKTtcbiAgICB9XG5cbiAgICBjbGVhclRpbWVvdXQodGhpcy5fcHJldmlvdXNUaW1lb3V0KTtcbiAgICB0aGlzLl9wcmV2aW91c1RpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuX2xpdmVFbGVtZW50LnRleHRDb250ZW50ID0gbWVzc2FnZTtcblxuICAgICAgaWYgKHR5cGVvZiBkdXJhdGlvbiA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgdGhpcy5fcHJldmlvdXNUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB0aGlzLmNsZWFyKCksIGR1cmF0aW9uKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5fY3VycmVudFJlc29sdmU/LigpO1xuICAgICAgdGhpcy5fY3VycmVudFByb21pc2UgPSB0aGlzLl9jdXJyZW50UmVzb2x2ZSA9IHVuZGVmaW5lZDtcbiAgICB9LCAxMDApO1xuXG4gICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRQcm9taXNlO1xuICB9XG5cbiAgLyoqXG4gICAqIENsZWFycyB0aGUgY3VycmVudCB0ZXh0IGZyb20gdGhlIGFubm91bmNlciBlbGVtZW50LiBDYW4gYmUgdXNlZCB0byBwcmV2ZW50XG4gICAqIHNjcmVlbiByZWFkZXJzIGZyb20gcmVhZGluZyB0aGUgdGV4dCBvdXQgYWdhaW4gd2hpbGUgdGhlIHVzZXIgaXMgZ29pbmdcbiAgICogdGhyb3VnaCB0aGUgcGFnZSBsYW5kbWFya3MuXG4gICAqL1xuICBwdWJsaWMgY2xlYXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2xpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLl9saXZlRWxlbWVudC50ZXh0Q29udGVudCA9ICcnO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBkZXN0cm95KCk6IHZvaWQge1xuICAgIGNsZWFyVGltZW91dCh0aGlzLl9wcmV2aW91c1RpbWVvdXQpO1xuICAgIHRoaXMuX2xpdmVFbGVtZW50Py5yZW1vdmUoKTtcbiAgICB0aGlzLl9saXZlRWxlbWVudCA9IG51bGwhO1xuICAgIHRoaXMuX2N1cnJlbnRSZXNvbHZlPy4oKTtcbiAgICB0aGlzLl9jdXJyZW50UHJvbWlzZSA9IHRoaXMuX2N1cnJlbnRSZXNvbHZlID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBfY3JlYXRlTGl2ZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIGNvbnN0IGVsZW1lbnRDbGFzcyA9ICdzYmItbGl2ZS1hbm5vdW5jZXItZWxlbWVudCc7XG4gICAgY29uc3QgcHJldmlvdXNFbGVtZW50cyA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoZWxlbWVudENsYXNzKTtcbiAgICBjb25zdCBsaXZlRWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcblxuICAgIC8vIFJlbW92ZSBhbnkgb2xkIGNvbnRhaW5lcnMuIFRoaXMgY2FuIGhhcHBlbiB3aGVuIGNvbWluZyBpbiBmcm9tIGEgc2VydmVyLXNpZGUtcmVuZGVyZWQgcGFnZS5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHByZXZpb3VzRWxlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIHByZXZpb3VzRWxlbWVudHNbaV0ucmVtb3ZlKCk7XG4gICAgfVxuXG4gICAgbGl2ZUVsLmNsYXNzTGlzdC5hZGQoZWxlbWVudENsYXNzKTtcbiAgICBsaXZlRWwuY2xhc3NMaXN0LmFkZCgnc2JiLXNjcmVlbi1yZWFkZXItb25seScpO1xuXG4gICAgbGl2ZUVsLnNldEF0dHJpYnV0ZSgnYXJpYS1hdG9taWMnLCAndHJ1ZScpO1xuICAgIGxpdmVFbC5zZXRBdHRyaWJ1dGUoJ2FyaWEtbGl2ZScsICdwb2xpdGUnKTtcbiAgICBsaXZlRWwuaWQgPSBgc2JiLWxpdmUtYW5ub3VuY2VyLSR7dW5pcXVlSWRzKyt9YDtcblxuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobGl2ZUVsKTtcblxuICAgIHJldHVybiBsaXZlRWw7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IHNiYkxpdmVBbm5vdW5jZXIgPSBuZXcgU2JiTGl2ZUFubm91bmNlcigpO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVlBLElBQUksWUFBWTtNQU9ILGlCQUFnQjtBQUFBLEVBTTNCLGNBQUE7QUFDRSxRQUFJLENBQUMsVUFBVTtBQUNSLFdBQUEsZUFBZSxLQUFLOztFQUMzQjtBQUFBLEVBMkNLLFNBQVMsWUFBb0IsTUFBVztBQUM3QyxRQUFJLFVBQVU7QUFDWixhQUFPLFFBQVEsUUFBTztBQUFBLElBQUE7QUFJeEIsVUFBTSxpQkFBaUIsQ0FBQTtBQUNuQixRQUFBO0FBQ0EsUUFBQTtBQUVKLFFBQUksS0FBSyxXQUFXLEtBQUssT0FBTyxLQUFLLENBQUMsTUFBTSxVQUFVO0FBQ3BELGlCQUFXLEtBQUssQ0FBQztBQUFBLElBQUEsT0FDWjtBQUNKLE9BQUEsWUFBWSxRQUFRLElBQUk7QUFBQSxJQUFBO0FBRzNCLFNBQUssTUFBSztBQUNWLGlCQUFhLEtBQUssZ0JBQWdCO0FBRWxDLGlDQUFlLGlEQUFnQixlQUFjO0FBQzdDLDRCQUFhLGlEQUFnQjtBQUV4QixTQUFBLGFBQWEsYUFBYSxhQUFhLFVBQVU7QUFPbEQsUUFBQSxDQUFDLEtBQUssaUJBQWlCO0FBQ3pCLFdBQUssa0JBQWtCLElBQUksUUFBUSxDQUFDLFlBQWEsS0FBSyxrQkFBa0IsT0FBUTtBQUFBLElBQUE7QUFHbEYsaUJBQWEsS0FBSyxnQkFBZ0I7QUFDN0IsU0FBQSxtQkFBbUIsV0FBVyxNQUFLOztBQUN0QyxXQUFLLGFBQWEsY0FBYztBQUU1QixVQUFBLE9BQU8sYUFBYSxVQUFVO0FBQ2hDLGFBQUssbUJBQW1CLFdBQVcsTUFBTSxLQUFLLFNBQVMsUUFBUTtBQUFBLE1BQUE7QUFHakUsaUJBQUssb0JBQUw7QUFDSyxXQUFBLGtCQUFrQixLQUFLLGtCQUFrQjtBQUFBLE9BQzdDLEdBQUc7QUFFTixXQUFPLEtBQUs7QUFBQSxFQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUVAsUUFBSztBQUNWLFFBQUksS0FBSyxjQUFjO0FBQ3JCLFdBQUssYUFBYSxjQUFjO0FBQUEsSUFBQTtBQUFBLEVBQ2xDO0FBQUEsRUFHSyxVQUFPOztBQUNaLGlCQUFhLEtBQUssZ0JBQWdCO0FBQ2xDLGVBQUssaUJBQUwsbUJBQW1CO0FBQ25CLFNBQUssZUFBZTtBQUNwQixlQUFLLG9CQUFMO0FBQ0ssU0FBQSxrQkFBa0IsS0FBSyxrQkFBa0I7QUFBQSxFQUFBO0FBQUEsRUFHeEMscUJBQWtCO0FBQ3hCLFVBQU0sZUFBZTtBQUNmLFVBQUEsbUJBQW1CLFNBQVMsdUJBQXVCLFlBQVk7QUFDL0QsVUFBQSxTQUFTLFNBQVMsY0FBYyxLQUFLO0FBRzNDLGFBQVMsSUFBSSxHQUFHLElBQUksaUJBQWlCLFFBQVEsS0FBSztBQUMvQix1QkFBQSxDQUFDLEVBQUU7O0FBR2YsV0FBQSxVQUFVLElBQUksWUFBWTtBQUMxQixXQUFBLFVBQVUsSUFBSSx3QkFBd0I7QUFFdEMsV0FBQSxhQUFhLGVBQWUsTUFBTTtBQUNsQyxXQUFBLGFBQWEsYUFBYSxRQUFRO0FBQ2xDLFdBQUEsS0FBSyxzQkFBc0IsV0FBVztBQUVwQyxhQUFBLEtBQUssWUFBWSxNQUFNO0FBRXpCLFdBQUE7QUFBQSxFQUFBO0FBRVY7QUFFWSxNQUFBLG1CQUFtQixJQUFJOyJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"a11y.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/a11y.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iBAAiB,CAAC;AAChC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC"}
|
|
1
|
+
{"version":3,"file":"a11y.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/a11y.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2CAA2C,CAAC;AAC1D,cAAc,iBAAiB,CAAC;AAChC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC"}
|
package/development/core/a11y.js
CHANGED
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
import { getNextElementIndex, isArrowKeyOrPageKeysPressed, isArrowKeyPressed, isNextArrowKeyPressed, isPreviousArrowKeyPressed } from "./a11y/arrow-navigation.js";
|
|
2
2
|
import { isFakeMousedownFromScreenReader, isFakeTouchstartFromScreenReader } from "./a11y/fake-event-detection.js";
|
|
3
3
|
import { SbbFocusVisibleWithinController } from "./a11y/focus-visible-within-controller.js";
|
|
4
|
-
import { IS_FOCUSABLE_QUERY
|
|
4
|
+
import { IS_FOCUSABLE_QUERY } from "./a11y/focus.js";
|
|
5
5
|
import { SbbFocusTrapController } from "./a11y/focus-trap-controller.js";
|
|
6
|
-
import { InteractivityChecker, IsFocusableConfig,
|
|
7
|
-
import { sbbInputModalityDetector
|
|
6
|
+
import { InteractivityChecker, IsFocusableConfig, interactivityChecker } from "./a11y/interactivity-checker.js";
|
|
7
|
+
import { sbbInputModalityDetector } from "./a11y/input-modality-detector.js";
|
|
8
|
+
import { SbbLiveAnnouncer, sbbLiveAnnouncer } from "./a11y/live-announcer.js";
|
|
8
9
|
export {
|
|
9
10
|
IS_FOCUSABLE_QUERY,
|
|
10
11
|
InteractivityChecker,
|
|
11
12
|
IsFocusableConfig,
|
|
12
|
-
SbbFocusHandler,
|
|
13
13
|
SbbFocusTrapController,
|
|
14
14
|
SbbFocusVisibleWithinController,
|
|
15
|
-
|
|
16
|
-
getFocusableElements,
|
|
15
|
+
SbbLiveAnnouncer,
|
|
17
16
|
getNextElementIndex,
|
|
18
|
-
hasGeometry,
|
|
19
17
|
interactivityChecker,
|
|
20
18
|
isArrowKeyOrPageKeysPressed,
|
|
21
19
|
isArrowKeyPressed,
|
|
@@ -24,6 +22,6 @@ export {
|
|
|
24
22
|
isNextArrowKeyPressed,
|
|
25
23
|
isPreviousArrowKeyPressed,
|
|
26
24
|
sbbInputModalityDetector,
|
|
27
|
-
|
|
25
|
+
sbbLiveAnnouncer
|
|
28
26
|
};
|
|
29
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYTExeS5qcyIsInNvdXJjZXMiOltdLCJzb3VyY2VzQ29udGVudCI6W10sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OyJ9
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { LitElement, TemplateResult } from 'lit';
|
|
2
|
-
|
|
2
|
+
declare const SbbActionBaseElement_base: import('../mixins.js').AbstractConstructor<import('../mixins.js').SbbElementInternalsMixinType> & typeof LitElement & import('../mixins.js').SbbElementInternalsConstructor;
|
|
3
|
+
export declare abstract class SbbActionBaseElement extends SbbActionBaseElement_base {
|
|
3
4
|
protected get maybeDisabled(): boolean | undefined;
|
|
4
5
|
protected get maybeDisabledInteractive(): boolean | undefined;
|
|
5
6
|
connectedCallback(): void;
|
|
@@ -9,4 +10,5 @@ export declare abstract class SbbActionBaseElement extends LitElement {
|
|
|
9
10
|
/** Default render method for button-like components. */
|
|
10
11
|
protected render(): TemplateResult;
|
|
11
12
|
}
|
|
13
|
+
export {};
|
|
12
14
|
//# sourceMappingURL=action-base-element.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/base-elements/action-base-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC
|
|
1
|
+
{"version":3,"file":"action-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/base-elements/action-base-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;;AAgB5D,8BAIe,oBAAqB,SAAQ,yBAAoC;IAC9E,SAAS,KAAK,aAAa,IAAI,OAAO,GAAG,SAAS,CAGjD;IAED,SAAS,KAAK,wBAAwB,IAAI,OAAO,GAAG,SAAS,CAE5D;IAEe,iBAAiB,IAAI,IAAI;IAezC,SAAS,CAAC,sBAAsB,IAAI,IAAI;IAexC,6DAA6D;IAC7D,SAAS,CAAC,cAAc,IAAI,cAAc;IAI1C,wDAAwD;cACrC,MAAM,IAAI,cAAc;CAG5C"}
|