@sbb-esta/lyne-elements 2.5.1 → 2.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/a11y.css +2 -2
- package/accordion/accordion.js +101 -0
- package/accordion.d.ts +3 -0
- package/accordion.d.ts.map +1 -1
- package/accordion.js +2 -99
- package/action-group/action-group.js +110 -0
- package/action-group.d.ts +3 -0
- package/action-group.d.ts.map +1 -1
- package/action-group.js +2 -108
- package/alert/alert/alert.js +176 -0
- package/alert/alert-group/alert-group.js +104 -0
- package/alert/alert-group.d.ts +3 -0
- package/alert/alert-group.d.ts.map +1 -1
- package/alert/alert-group.js +2 -102
- package/alert/alert.d.ts +3 -0
- package/alert/alert.d.ts.map +1 -1
- package/alert/alert.js +2 -174
- package/alert.d.ts +3 -0
- package/alert.d.ts.map +1 -1
- package/alert.js +6 -2
- package/autocomplete/autocomplete-base-element.d.ts +19 -20
- package/autocomplete/autocomplete-base-element.d.ts.map +1 -1
- package/autocomplete/autocomplete-base-element.js +262 -0
- package/autocomplete/autocomplete.js +70 -0
- package/autocomplete-grid/autocomplete-grid/autocomplete-grid.js +109 -0
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.js +63 -0
- package/autocomplete-grid/autocomplete-grid-button.d.ts +3 -0
- package/autocomplete-grid/autocomplete-grid-button.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-button.js +2 -61
- package/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.js +26 -0
- package/autocomplete-grid/autocomplete-grid-cell.d.ts +3 -0
- package/autocomplete-grid/autocomplete-grid-cell.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-cell.js +2 -24
- package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts +2 -2
- package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.js +33 -0
- package/autocomplete-grid/autocomplete-grid-optgroup.d.ts +3 -0
- package/autocomplete-grid/autocomplete-grid-optgroup.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-optgroup.js +2 -31
- package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.js +49 -0
- package/autocomplete-grid/autocomplete-grid-option.d.ts +3 -0
- package/autocomplete-grid/autocomplete-grid-option.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-option.js +3 -47
- package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.js +29 -0
- package/autocomplete-grid/autocomplete-grid-row.d.ts +3 -0
- package/autocomplete-grid/autocomplete-grid-row.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-row.js +2 -27
- package/autocomplete-grid/autocomplete-grid.d.ts +3 -0
- package/autocomplete-grid/autocomplete-grid.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid.js +2 -107
- package/autocomplete-grid.d.ts +3 -0
- package/autocomplete-grid.d.ts.map +1 -1
- package/autocomplete-grid.js +15 -6
- package/autocomplete.d.ts +3 -0
- package/autocomplete.d.ts.map +1 -1
- package/autocomplete.js +5 -312
- package/breadcrumb/breadcrumb/breadcrumb.js +52 -0
- package/breadcrumb/breadcrumb-group/breadcrumb-group.js +141 -0
- package/breadcrumb/breadcrumb-group.d.ts +3 -0
- package/breadcrumb/breadcrumb-group.d.ts.map +1 -1
- package/breadcrumb/breadcrumb-group.js +2 -139
- package/breadcrumb/breadcrumb.d.ts +3 -0
- package/breadcrumb/breadcrumb.d.ts.map +1 -1
- package/breadcrumb/breadcrumb.js +2 -50
- package/breadcrumb.d.ts +3 -0
- package/breadcrumb.d.ts.map +1 -1
- package/breadcrumb.js +6 -2
- package/button/accent-button/accent-button.js +17 -0
- package/button/accent-button-link/accent-button-link.js +17 -0
- package/button/accent-button-link.d.ts +3 -0
- package/button/accent-button-link.d.ts.map +1 -1
- package/button/accent-button-link.js +2 -15
- package/button/accent-button-static/accent-button-static.js +17 -0
- package/button/accent-button-static.d.ts +3 -0
- package/button/accent-button-static.d.ts.map +1 -1
- package/button/accent-button-static.js +2 -15
- package/button/accent-button.d.ts +3 -0
- package/button/accent-button.d.ts.map +1 -1
- package/button/accent-button.js +2 -15
- package/button/button/button.js +17 -0
- package/button/button-link/button-link.js +17 -0
- package/button/button-link.d.ts +3 -0
- package/button/button-link.d.ts.map +1 -1
- package/button/button-link.js +2 -15
- package/button/button-static/button-static.js +17 -0
- package/button/button-static.d.ts +3 -0
- package/button/button-static.d.ts.map +1 -1
- package/button/button-static.js +2 -15
- package/button/button.d.ts +3 -0
- package/button/button.d.ts.map +1 -1
- package/button/button.js +2 -15
- package/button/common/button-common.js +51 -0
- package/button/common.d.ts +3 -0
- package/button/common.d.ts.map +1 -1
- package/button/common.js +8 -55
- package/button/mini-button/mini-button.js +23 -0
- package/button/mini-button-group/mini-button-group.js +63 -0
- package/button/mini-button-group.d.ts +3 -0
- package/button/mini-button-group.d.ts.map +1 -1
- package/button/mini-button-group.js +2 -61
- package/button/mini-button.d.ts +3 -0
- package/button/mini-button.d.ts.map +1 -1
- package/button/mini-button.js +2 -21
- package/button/secondary-button/secondary-button.js +17 -0
- package/button/secondary-button-link/secondary-button-link.js +17 -0
- package/button/secondary-button-link.d.ts +3 -0
- package/button/secondary-button-link.d.ts.map +1 -1
- package/button/secondary-button-link.js +2 -15
- package/button/secondary-button-static/secondary-button-static.js +17 -0
- package/button/secondary-button-static.d.ts +3 -0
- package/button/secondary-button-static.d.ts.map +1 -1
- package/button/secondary-button-static.js +2 -15
- package/button/secondary-button.d.ts +3 -0
- package/button/secondary-button.d.ts.map +1 -1
- package/button/secondary-button.js +2 -15
- package/button/transparent-button/transparent-button.js +17 -0
- package/button/transparent-button-link/transparent-button-link.js +17 -0
- package/button/transparent-button-link.d.ts +3 -0
- package/button/transparent-button-link.d.ts.map +1 -1
- package/button/transparent-button-link.js +2 -15
- package/button/transparent-button-static/transparent-button-static.js +17 -0
- package/button/transparent-button-static.d.ts +3 -0
- package/button/transparent-button-static.d.ts.map +1 -1
- package/button/transparent-button-static.js +2 -15
- package/button/transparent-button.d.ts +3 -0
- package/button/transparent-button.d.ts.map +1 -1
- package/button/transparent-button.js +2 -15
- package/button.d.ts +3 -0
- package/button.d.ts.map +1 -1
- package/button.js +38 -15
- package/calendar/calendar.js +939 -0
- package/calendar.d.ts +3 -0
- package/calendar.d.ts.map +1 -1
- package/calendar.js +2 -937
- package/card/card/card.js +70 -0
- package/card/card-badge/card-badge.js +57 -0
- package/card/card-badge.d.ts +3 -0
- package/card/card-badge.d.ts.map +1 -1
- package/card/card-badge.js +2 -55
- package/card/card-button/card-button.js +19 -0
- package/card/card-button.d.ts +3 -0
- package/card/card-button.d.ts.map +1 -1
- package/card/card-button.js +2 -17
- package/card/card-link/card-link.js +19 -0
- package/card/card-link.d.ts +3 -0
- package/card/card-link.d.ts.map +1 -1
- package/card/card-link.js +2 -17
- package/card/card.d.ts +3 -0
- package/card/card.d.ts.map +1 -1
- package/card/card.js +2 -68
- package/card/common/card-action-common.js +60 -0
- package/card/common.d.ts +3 -0
- package/card/common.d.ts.map +1 -1
- package/card/common.js +2 -58
- package/card.d.ts +3 -0
- package/card.d.ts.map +1 -1
- package/card.js +12 -5
- package/checkbox/checkbox/checkbox.js +80 -0
- package/checkbox/checkbox-group/checkbox-group.js +113 -0
- package/checkbox/checkbox-group.d.ts +3 -0
- package/checkbox/checkbox-group.d.ts.map +1 -1
- package/checkbox/checkbox-group.js +2 -111
- package/checkbox/checkbox-panel/checkbox-panel.js +82 -0
- package/checkbox/checkbox-panel.d.ts +3 -0
- package/checkbox/checkbox-panel.d.ts.map +1 -1
- package/checkbox/checkbox-panel.js +2 -80
- package/checkbox/checkbox.d.ts +3 -0
- package/checkbox/checkbox.d.ts.map +1 -1
- package/checkbox/checkbox.js +2 -78
- package/checkbox/common/checkbox-common.js +56 -0
- package/checkbox/common.d.ts +3 -0
- package/checkbox/common.d.ts.map +1 -1
- package/checkbox/common.js +4 -56
- package/checkbox-common-CDzcyq8p.js +5 -0
- package/checkbox.d.ts +3 -0
- package/checkbox.d.ts.map +1 -1
- package/checkbox.js +12 -4
- package/chip/chip/chip.d.ts +32 -0
- package/chip/chip/chip.d.ts.map +1 -0
- package/chip/chip/chip.js +85 -0
- package/chip/chip-group/chip-group.d.ts +100 -0
- package/chip/chip-group/chip-group.d.ts.map +1 -0
- package/chip/chip-group/chip-group.js +226 -0
- package/chip/chip-group.d.ts +5 -0
- package/chip/chip-group.d.ts.map +1 -0
- package/chip/chip-group.js +4 -0
- package/chip/chip.d.ts +5 -0
- package/chip/chip.d.ts.map +1 -0
- package/chip/chip.js +4 -0
- package/chip-label/chip-label.js +54 -0
- package/chip-label.d.ts +3 -0
- package/chip-label.d.ts.map +1 -1
- package/chip-label.js +2 -52
- package/chip.d.ts +6 -0
- package/chip.d.ts.map +1 -0
- package/chip.js +6 -0
- package/clock/clock.d.ts.map +1 -1
- package/clock/clock.js +163 -0
- package/clock.d.ts +3 -0
- package/clock.d.ts.map +1 -1
- package/clock.js +2 -161
- package/container/container/container.js +71 -0
- package/container/container.d.ts +3 -0
- package/container/container.d.ts.map +1 -1
- package/container/container.js +2 -69
- package/container/sticky-bar/sticky-bar.js +111 -0
- package/container/sticky-bar.d.ts +3 -0
- package/container/sticky-bar.d.ts.map +1 -1
- package/container/sticky-bar.js +2 -109
- package/container.d.ts +3 -0
- package/container.d.ts.map +1 -1
- package/container.js +6 -2
- package/core/a11y/arrow-navigation.js +33 -0
- package/core/a11y/fake-event-detection.js +11 -0
- package/core/a11y/focus-trap-controller.d.ts +35 -0
- package/core/a11y/focus-trap-controller.d.ts.map +1 -0
- package/core/a11y/focus-trap-controller.js +95 -0
- package/core/a11y/focus-visible-within-controller.js +19 -0
- package/core/a11y/focus.d.ts +12 -0
- package/core/a11y/focus.d.ts.map +1 -1
- package/core/a11y/focus.js +75 -0
- package/core/a11y/input-modality-detector.d.ts +5 -0
- package/core/a11y/input-modality-detector.d.ts.map +1 -1
- package/core/a11y/input-modality-detector.js +59 -0
- package/core/a11y/interactivity-checker.d.ts +49 -3
- package/core/a11y/interactivity-checker.d.ts.map +1 -1
- package/core/a11y/interactivity-checker.js +104 -0
- package/core/a11y.d.ts +4 -0
- package/core/a11y.d.ts.map +1 -1
- package/core/a11y.js +26 -201
- package/core/base-elements/action-base-element.js +46 -0
- package/core/base-elements/button-base-element.d.ts.map +1 -1
- package/core/base-elements/button-base-element.js +120 -0
- package/core/base-elements/link-base-element.js +130 -0
- package/core/base-elements/open-close-base-element.js +33 -0
- package/core/base-elements.d.ts +3 -0
- package/core/base-elements.d.ts.map +1 -1
- package/core/base-elements.js +8 -308
- package/core/config/config.js +11 -0
- package/core/config.d.ts +3 -0
- package/core/config.d.ts.map +1 -1
- package/core/config.js +3 -9
- package/core/controllers/connected-abort-controller.js +19 -0
- package/core/controllers/escapable-overlay-controller.d.ts.map +1 -1
- package/core/controllers/escapable-overlay-controller.js +29 -0
- package/core/controllers/id-observer-controller.d.ts +21 -0
- package/core/controllers/id-observer-controller.d.ts.map +1 -0
- package/core/controllers/id-observer-controller.js +61 -0
- package/core/controllers/inert-controller.d.ts +3 -1
- package/core/controllers/inert-controller.d.ts.map +1 -1
- package/core/controllers/inert-controller.js +48 -0
- package/core/controllers/language-controller.js +39 -0
- package/core/controllers/media-matchers-controller.d.ts +1 -0
- package/core/controllers/media-matchers-controller.d.ts.map +1 -1
- package/core/controllers/media-matchers-controller.js +43 -0
- package/core/controllers/slot-state-controller.js +30 -0
- package/core/controllers.d.ts +5 -1
- package/core/controllers.d.ts.map +1 -1
- package/core/controllers.js +20 -193
- package/core/datetime/date-adapter.js +102 -0
- package/core/datetime/native-date-adapter.d.ts.map +1 -1
- package/core/datetime/native-date-adapter.js +169 -0
- package/core/datetime.d.ts +3 -0
- package/core/datetime.d.ts.map +1 -1
- package/core/datetime.js +12 -261
- package/core/decorators/base.js +1 -0
- package/core/decorators/date-converter.js +17 -0
- package/core/decorators/date-only-type.js +10 -0
- package/core/decorators/force-type.js +18 -0
- package/core/decorators/get-override.js +14 -0
- package/core/decorators/handle-distinct-change.js +16 -0
- package/core/decorators/host-attributes.js +18 -0
- package/core/decorators/omit-empty-converter.js +9 -0
- package/core/decorators/slot-state.js +8 -0
- package/core/decorators.d.ts +3 -0
- package/core/decorators.d.ts.map +1 -1
- package/core/decorators.js +16 -86
- package/core/dom/animation.js +10 -0
- package/core/dom/breakpoint.d.ts +1 -1
- package/core/dom/breakpoint.js +12 -0
- package/core/dom/find-referenced-element.d.ts +1 -0
- package/core/dom/find-referenced-element.d.ts.map +1 -1
- package/core/dom/find-referenced-element.js +7 -0
- package/core/dom/host-context.js +17 -0
- package/core/dom/input-element.d.ts +3 -1
- package/core/dom/input-element.d.ts.map +1 -1
- package/core/dom/input-element.js +12 -0
- package/core/dom/lean-context.js +7 -0
- package/core/dom/platform.js +21 -0
- package/core/dom/scroll.js +19 -0
- package/core/dom/set-or-remove-attribute.js +6 -0
- package/core/dom.d.ts +3 -0
- package/core/dom.d.ts.map +1 -1
- package/core/dom.js +31 -87
- package/core/eventing/composed-path-has-attribute.js +8 -0
- package/core/eventing/event-emitter.js +23 -0
- package/core/eventing/event-target.js +6 -0
- package/core/eventing/form-element-handlers.js +6 -0
- package/core/eventing/forward-event.js +9 -0
- package/core/eventing/is-event-prevented.js +6 -0
- package/core/eventing/throttle.js +11 -0
- package/core/eventing.d.ts +3 -0
- package/core/eventing.d.ts.map +1 -1
- package/core/eventing.js +15 -55
- package/core/i18n/i18n.d.ts +3 -0
- package/core/i18n/i18n.d.ts.map +1 -1
- package/core/i18n/i18n.js +700 -0
- package/core/i18n.d.ts +3 -0
- package/core/i18n.d.ts.map +1 -1
- package/core/i18n.js +89 -680
- package/core/images.js +15 -0
- package/core/interfaces.d.ts +3 -0
- package/core/interfaces.d.ts.map +1 -1
- package/core/mixins/animation-complete-mixin.js +43 -0
- package/core/mixins/constructor.js +1 -0
- package/core/mixins/disabled-mixin.js +72 -0
- package/core/mixins/form-associated-checkbox-mixin.js +92 -0
- package/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
- package/core/mixins/form-associated-input-mixin.js +182 -0
- package/core/mixins/form-associated-mixin.js +219 -0
- package/core/mixins/form-associated-radio-button-mixin.js +159 -0
- package/core/mixins/hydration-mixin.js +39 -0
- package/core/mixins/named-slot-list-mixin.js +107 -0
- package/core/mixins/negative-mixin.js +34 -0
- package/core/mixins/panel-mixin.js +61 -0
- package/core/mixins/required-mixin.js +36 -0
- package/core/mixins/update-scheduler-mixin.js +22 -0
- package/core/mixins.d.ts +3 -0
- package/core/mixins.d.ts.map +1 -1
- package/core/mixins.js +29 -968
- package/core/overlay/overlay-option-panel.js +11 -0
- package/core/overlay/overlay-trigger-attributes.d.ts +1 -1
- package/core/overlay/overlay-trigger-attributes.d.ts.map +1 -1
- package/core/overlay/overlay-trigger-attributes.js +18 -0
- package/core/overlay/overlay.js +14 -0
- package/core/overlay/position.d.ts +1 -1
- package/core/overlay/position.d.ts.map +1 -1
- package/core/overlay/position.js +40 -0
- package/core/overlay.d.ts +3 -0
- package/core/overlay.d.ts.map +1 -1
- package/core/overlay.js +12 -73
- package/core/styles/core.scss +97 -24
- package/core/styles/image.scss +1 -1
- package/core/styles/mixins/a11y.scss +2 -1
- package/core/styles/mixins/buttons.scss +7 -6
- package/core/styles/mixins/link.scss +1 -2
- package/core/styles/mixins/table.scss +66 -26
- package/core/styles/table.scss +61 -0
- package/core/testing/event-spy.js +53 -0
- package/core/testing/mocha-extensions.js +11 -0
- package/core/testing/scroll.d.ts +1 -0
- package/core/testing/scroll.d.ts.map +1 -1
- package/core/testing/scroll.js +6 -0
- package/core/testing/wait-for-condition.js +13 -0
- package/core/testing/wait-for-image-ready.d.ts.map +1 -1
- package/core/testing/wait-for-image-ready.js +18 -0
- package/core/testing/wait-for-render.js +15 -0
- package/core/testing.d.ts +3 -0
- package/core/testing.d.ts.map +1 -1
- package/core/testing.js +14 -106
- package/core.css +93 -34
- package/custom-elements.json +55418 -50282
- package/date-input/date-input.d.ts.map +1 -1
- package/date-input/date-input.js +155 -0
- package/date-input.d.ts +3 -0
- package/date-input.d.ts.map +1 -1
- package/date-input.js +2 -153
- package/datepicker/common/datepicker-association-controllers.js +58 -0
- package/datepicker/common/datepicker-button.js +105 -0
- package/datepicker/common.d.ts +3 -0
- package/datepicker/common.d.ts.map +1 -1
- package/datepicker/common.js +5 -158
- package/datepicker/datepicker/datepicker.d.ts +4 -4
- package/datepicker/datepicker/datepicker.d.ts.map +1 -1
- package/datepicker/datepicker/datepicker.js +266 -0
- package/datepicker/datepicker-next-day/datepicker-next-day.js +27 -0
- package/datepicker/datepicker-next-day.d.ts +3 -0
- package/datepicker/datepicker-next-day.d.ts.map +1 -1
- package/datepicker/datepicker-next-day.js +2 -25
- package/datepicker/datepicker-previous-day/datepicker-previous-day.js +27 -0
- package/datepicker/datepicker-previous-day.d.ts +3 -0
- package/datepicker/datepicker-previous-day.d.ts.map +1 -1
- package/datepicker/datepicker-previous-day.js +2 -25
- package/datepicker/datepicker-toggle/datepicker-toggle.d.ts +0 -3
- package/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
- package/datepicker/datepicker-toggle/datepicker-toggle.js +171 -0
- package/datepicker/datepicker-toggle.d.ts +3 -0
- package/datepicker/datepicker-toggle.d.ts.map +1 -1
- package/datepicker/datepicker-toggle.js +2 -173
- package/datepicker/datepicker.d.ts +3 -0
- package/datepicker/datepicker.d.ts.map +1 -1
- package/datepicker/datepicker.js +4 -263
- package/datepicker.d.ts +3 -0
- package/datepicker.d.ts.map +1 -1
- package/datepicker.js +17 -5
- package/development/accordion/accordion.js +149 -0
- package/development/accordion.d.ts +3 -0
- package/development/accordion.d.ts.map +1 -1
- package/development/accordion.js +2 -146
- package/development/action-group/action-group.js +405 -0
- package/development/action-group.d.ts +3 -0
- package/development/action-group.d.ts.map +1 -1
- package/development/action-group.js +2 -402
- package/development/alert/alert/alert.js +434 -0
- package/development/alert/alert-group/alert-group.js +183 -0
- package/development/alert/alert-group.d.ts +3 -0
- package/development/alert/alert-group.d.ts.map +1 -1
- package/development/alert/alert-group.js +2 -180
- package/development/alert/alert.d.ts +3 -0
- package/development/alert/alert.d.ts.map +1 -1
- package/development/alert/alert.js +2 -431
- package/development/alert.d.ts +3 -0
- package/development/alert.d.ts.map +1 -1
- package/development/alert.js +6 -2
- package/development/autocomplete/autocomplete-base-element.d.ts +19 -20
- package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
- package/development/autocomplete/autocomplete-base-element.js +700 -0
- package/development/autocomplete/autocomplete.js +99 -0
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.js +157 -0
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.js +208 -0
- package/development/autocomplete-grid/autocomplete-grid-button.d.ts +3 -0
- package/development/autocomplete-grid/autocomplete-grid-button.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-button.js +2 -202
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.js +47 -0
- package/development/autocomplete-grid/autocomplete-grid-cell.d.ts +3 -0
- package/development/autocomplete-grid/autocomplete-grid-cell.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-cell.js +2 -44
- package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts +2 -2
- package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.js +44 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts +3 -0
- package/development/autocomplete-grid/autocomplete-grid-optgroup.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-optgroup.js +2 -41
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.js +139 -0
- package/development/autocomplete-grid/autocomplete-grid-option.d.ts +3 -0
- package/development/autocomplete-grid/autocomplete-grid-option.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-option.js +2 -134
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.js +123 -0
- package/development/autocomplete-grid/autocomplete-grid-row.d.ts +3 -0
- package/development/autocomplete-grid/autocomplete-grid-row.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-row.js +2 -120
- package/development/autocomplete-grid/autocomplete-grid.d.ts +3 -0
- package/development/autocomplete-grid/autocomplete-grid.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid.js +2 -154
- package/development/autocomplete-grid.d.ts +3 -0
- package/development/autocomplete-grid.d.ts.map +1 -1
- package/development/autocomplete-grid.js +15 -6
- package/development/autocomplete.d.ts +3 -0
- package/development/autocomplete.d.ts.map +1 -1
- package/development/autocomplete.js +5 -763
- package/development/breadcrumb/breadcrumb/breadcrumb.js +136 -0
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.js +281 -0
- package/development/breadcrumb/breadcrumb-group.d.ts +3 -0
- package/development/breadcrumb/breadcrumb-group.d.ts.map +1 -1
- package/development/breadcrumb/breadcrumb-group.js +2 -278
- package/development/breadcrumb/breadcrumb.d.ts +3 -0
- package/development/breadcrumb/breadcrumb.d.ts.map +1 -1
- package/development/breadcrumb/breadcrumb.js +2 -133
- package/development/breadcrumb.d.ts +3 -0
- package/development/breadcrumb.d.ts.map +1 -1
- package/development/breadcrumb.js +6 -2
- package/development/button/accent-button/accent-button.js +25 -0
- package/development/button/accent-button-link/accent-button-link.js +25 -0
- package/development/button/accent-button-link.d.ts +3 -0
- package/development/button/accent-button-link.d.ts.map +1 -1
- package/development/button/accent-button-link.js +2 -22
- package/development/button/accent-button-static/accent-button-static.js +25 -0
- package/development/button/accent-button-static.d.ts +3 -0
- package/development/button/accent-button-static.d.ts.map +1 -1
- package/development/button/accent-button-static.js +2 -22
- package/development/button/accent-button.d.ts +3 -0
- package/development/button/accent-button.d.ts.map +1 -1
- package/development/button/accent-button.js +2 -22
- package/development/button/button/button.js +25 -0
- package/development/button/button-link/button-link.js +25 -0
- package/development/button/button-link.d.ts +3 -0
- package/development/button/button-link.d.ts.map +1 -1
- package/development/button/button-link.js +2 -22
- package/development/button/button-static/button-static.js +25 -0
- package/development/button/button-static.d.ts +3 -0
- package/development/button/button-static.d.ts.map +1 -1
- package/development/button/button-static.js +2 -22
- package/development/button/button.d.ts +3 -0
- package/development/button/button.d.ts.map +1 -1
- package/development/button/button.js +2 -22
- package/development/button/common/button-common.js +70 -0
- package/development/button/common.d.ts +3 -0
- package/development/button/common.d.ts.map +1 -1
- package/development/button/common.js +8 -407
- package/development/button/mini-button/mini-button.js +143 -0
- package/development/button/mini-button-group/mini-button-group.js +153 -0
- package/development/button/mini-button-group.d.ts +3 -0
- package/development/button/mini-button-group.d.ts.map +1 -1
- package/development/button/mini-button-group.js +2 -150
- package/development/button/mini-button.d.ts +3 -0
- package/development/button/mini-button.d.ts.map +1 -1
- package/development/button/mini-button.js +2 -137
- package/development/button/secondary-button/secondary-button.js +25 -0
- package/development/button/secondary-button-link/secondary-button-link.js +25 -0
- package/development/button/secondary-button-link.d.ts +3 -0
- package/development/button/secondary-button-link.d.ts.map +1 -1
- package/development/button/secondary-button-link.js +2 -22
- package/development/button/secondary-button-static/secondary-button-static.js +25 -0
- package/development/button/secondary-button-static.d.ts +3 -0
- package/development/button/secondary-button-static.d.ts.map +1 -1
- package/development/button/secondary-button-static.js +2 -22
- package/development/button/secondary-button.d.ts +3 -0
- package/development/button/secondary-button.d.ts.map +1 -1
- package/development/button/secondary-button.js +2 -22
- package/development/button/transparent-button/transparent-button.js +25 -0
- package/development/button/transparent-button-link/transparent-button-link.js +25 -0
- package/development/button/transparent-button-link.d.ts +3 -0
- package/development/button/transparent-button-link.d.ts.map +1 -1
- package/development/button/transparent-button-link.js +2 -22
- package/development/button/transparent-button-static/transparent-button-static.js +25 -0
- package/development/button/transparent-button-static.d.ts +3 -0
- package/development/button/transparent-button-static.d.ts.map +1 -1
- package/development/button/transparent-button-static.js +2 -22
- package/development/button/transparent-button.d.ts +3 -0
- package/development/button/transparent-button.d.ts.map +1 -1
- package/development/button/transparent-button.js +2 -22
- package/development/button.d.ts +3 -0
- package/development/button.d.ts.map +1 -1
- package/development/button.js +39 -16
- package/development/calendar/calendar.js +1547 -0
- package/development/calendar.d.ts +3 -0
- package/development/calendar.d.ts.map +1 -1
- package/development/calendar.js +2 -1542
- package/development/card/card/card.js +287 -0
- package/development/card/card-badge/card-badge.js +169 -0
- package/development/card/card-badge.d.ts +3 -0
- package/development/card/card-badge.d.ts.map +1 -1
- package/development/card/card-badge.js +2 -166
- package/development/card/card-button/card-button.js +29 -0
- package/development/card/card-button.d.ts +3 -0
- package/development/card/card-button.d.ts.map +1 -1
- package/development/card/card-button.js +2 -26
- package/development/card/card-link/card-link.js +29 -0
- package/development/card/card-link.d.ts +3 -0
- package/development/card/card-link.d.ts.map +1 -1
- package/development/card/card-link.js +2 -26
- package/development/card/card.d.ts +3 -0
- package/development/card/card.d.ts.map +1 -1
- package/development/card/card.js +2 -284
- package/development/card/common/card-action-common.js +119 -0
- package/development/card/common.d.ts +3 -0
- package/development/card/common.d.ts.map +1 -1
- package/development/card/common.js +2 -116
- package/development/card.d.ts +3 -0
- package/development/card.d.ts.map +1 -1
- package/development/card.js +12 -5
- package/development/checkbox/checkbox/checkbox.js +134 -0
- package/development/checkbox/checkbox-group/checkbox-group.js +294 -0
- package/development/checkbox/checkbox-group.d.ts +3 -0
- package/development/checkbox/checkbox-group.d.ts.map +1 -1
- package/development/checkbox/checkbox-group.js +2 -291
- package/development/checkbox/checkbox-panel/checkbox-panel.js +108 -0
- package/development/checkbox/checkbox-panel.d.ts +3 -0
- package/development/checkbox/checkbox-panel.d.ts.map +1 -1
- package/development/checkbox/checkbox-panel.js +2 -105
- package/development/checkbox/checkbox.d.ts +3 -0
- package/development/checkbox/checkbox.d.ts.map +1 -1
- package/development/checkbox/checkbox.js +2 -131
- package/development/checkbox/common/checkbox-common.js +75 -0
- package/development/checkbox/common.d.ts +3 -0
- package/development/checkbox/common.d.ts.map +1 -1
- package/development/checkbox/common.js +4 -152
- package/development/checkbox-common-aMPOsPVA.js +83 -0
- package/development/checkbox.d.ts +3 -0
- package/development/checkbox.d.ts.map +1 -1
- package/development/checkbox.js +13 -5
- package/development/chip/chip/chip.d.ts +32 -0
- package/development/chip/chip/chip.d.ts.map +1 -0
- package/development/chip/chip/chip.js +213 -0
- package/development/chip/chip-group/chip-group.d.ts +100 -0
- package/development/chip/chip-group/chip-group.d.ts.map +1 -0
- package/development/chip/chip-group/chip-group.js +350 -0
- package/development/chip/chip-group.d.ts +5 -0
- package/development/chip/chip-group.d.ts.map +1 -0
- package/development/chip/chip-group.js +5 -0
- package/development/chip/chip.d.ts +5 -0
- package/development/chip/chip.d.ts.map +1 -0
- package/development/chip/chip.js +5 -0
- package/development/chip-label/chip-label.js +154 -0
- package/development/chip-label.d.ts +3 -0
- package/development/chip-label.d.ts.map +1 -1
- package/development/chip-label.js +2 -151
- package/development/chip.d.ts +6 -0
- package/development/chip.d.ts.map +1 -0
- package/development/chip.js +7 -0
- package/development/clock/clock.d.ts.map +1 -1
- package/development/clock/clock.js +390 -0
- package/development/clock.d.ts +3 -0
- package/development/clock.d.ts.map +1 -1
- package/development/clock.js +2 -384
- package/development/container/container/container.js +194 -0
- package/development/container/container.d.ts +3 -0
- package/development/container/container.d.ts.map +1 -1
- package/development/container/container.js +2 -191
- package/development/container/sticky-bar/sticky-bar.js +349 -0
- package/development/container/sticky-bar.d.ts +3 -0
- package/development/container/sticky-bar.d.ts.map +1 -1
- package/development/container/sticky-bar.js +2 -346
- package/development/container.d.ts +3 -0
- package/development/container.d.ts.map +1 -1
- package/development/container.js +6 -2
- package/development/core/a11y/arrow-navigation.js +43 -0
- package/development/core/a11y/fake-event-detection.js +12 -0
- package/development/core/a11y/focus-trap-controller.d.ts +35 -0
- package/development/core/a11y/focus-trap-controller.d.ts.map +1 -0
- package/development/core/a11y/focus-trap-controller.js +127 -0
- package/development/core/a11y/focus-visible-within-controller.js +25 -0
- package/development/core/a11y/focus.d.ts +12 -0
- package/development/core/a11y/focus.d.ts.map +1 -1
- package/development/core/a11y/focus.js +94 -0
- package/development/core/a11y/input-modality-detector.d.ts +5 -0
- package/development/core/a11y/input-modality-detector.d.ts.map +1 -1
- package/development/core/a11y/input-modality-detector.js +96 -0
- package/development/core/a11y/interactivity-checker.d.ts +49 -3
- package/development/core/a11y/interactivity-checker.d.ts.map +1 -1
- package/development/core/a11y/interactivity-checker.js +137 -0
- package/development/core/a11y.d.ts +4 -0
- package/development/core/a11y.d.ts.map +1 -1
- package/development/core/a11y.js +10 -253
- package/development/core/base-elements/action-base-element.js +62 -0
- package/development/core/base-elements/button-base-element.d.ts.map +1 -1
- package/development/core/base-elements/button-base-element.js +179 -0
- package/development/core/base-elements/link-base-element.js +183 -0
- package/development/core/base-elements/open-close-base-element.js +39 -0
- package/development/core/base-elements.d.ts +3 -0
- package/development/core/base-elements.d.ts.map +1 -1
- package/development/core/base-elements.js +5 -437
- package/development/core/config/config.js +15 -0
- package/development/core/config.d.ts +3 -0
- package/development/core/config.d.ts.map +1 -1
- package/development/core/config.js +2 -11
- package/development/core/controllers/connected-abort-controller.js +25 -0
- package/development/core/controllers/escapable-overlay-controller.d.ts.map +1 -1
- package/development/core/controllers/escapable-overlay-controller.js +40 -0
- package/development/core/controllers/id-observer-controller.d.ts +21 -0
- package/development/core/controllers/id-observer-controller.d.ts.map +1 -0
- package/development/core/controllers/id-observer-controller.js +84 -0
- package/development/core/controllers/inert-controller.d.ts +3 -1
- package/development/core/controllers/inert-controller.d.ts.map +1 -1
- package/development/core/controllers/inert-controller.js +91 -0
- package/development/core/controllers/language-controller.js +69 -0
- package/development/core/controllers/media-matchers-controller.d.ts +1 -0
- package/development/core/controllers/media-matchers-controller.d.ts.map +1 -1
- package/development/core/controllers/media-matchers-controller.js +62 -0
- package/development/core/controllers/slot-state-controller.js +48 -0
- package/development/core/controllers.d.ts +5 -1
- package/development/core/controllers.d.ts.map +1 -1
- package/development/core/controllers.js +10 -305
- package/development/core/datetime/date-adapter.js +129 -0
- package/development/core/datetime/native-date-adapter.d.ts.map +1 -1
- package/development/core/datetime/native-date-adapter.js +185 -0
- package/development/core/datetime.d.ts +3 -0
- package/development/core/datetime.d.ts.map +1 -1
- package/development/core/datetime.js +3 -294
- package/development/core/decorators/base.js +2 -0
- package/development/core/decorators/date-converter.js +18 -0
- package/development/core/decorators/date-only-type.js +11 -0
- package/development/core/decorators/force-type.js +29 -0
- package/development/core/decorators/get-override.js +18 -0
- package/development/core/decorators/handle-distinct-change.js +22 -0
- package/development/core/decorators/host-attributes.js +30 -0
- package/development/core/decorators/omit-empty-converter.js +10 -0
- package/development/core/decorators/slot-state.js +11 -0
- package/development/core/decorators.d.ts +3 -0
- package/development/core/decorators.d.ts.map +1 -1
- package/development/core/decorators.js +9 -114
- package/development/core/dom/animation.js +12 -0
- package/development/core/dom/breakpoint.d.ts +1 -1
- package/development/core/dom/breakpoint.js +19 -0
- package/development/core/dom/find-referenced-element.d.ts +1 -0
- package/development/core/dom/find-referenced-element.d.ts.map +1 -1
- package/development/core/dom/find-referenced-element.js +15 -0
- package/development/core/dom/host-context.js +21 -0
- package/development/core/dom/input-element.d.ts +3 -1
- package/development/core/dom/input-element.d.ts.map +1 -1
- package/development/core/dom/input-element.js +13 -0
- package/development/core/dom/lean-context.js +8 -0
- package/development/core/dom/platform.js +32 -0
- package/development/core/dom/scroll.js +37 -0
- package/development/core/dom/set-or-remove-attribute.js +11 -0
- package/development/core/dom.d.ts +3 -0
- package/development/core/dom.d.ts.map +1 -1
- package/development/core/dom.js +10 -114
- package/development/core/eventing/composed-path-has-attribute.js +12 -0
- package/development/core/eventing/event-emitter.js +26 -0
- package/development/core/eventing/event-target.js +7 -0
- package/development/core/eventing/form-element-handlers.js +9 -0
- package/development/core/eventing/forward-event.js +11 -0
- package/development/core/eventing/is-event-prevented.js +8 -0
- package/development/core/eventing/throttle.js +18 -0
- package/development/core/eventing.d.ts +3 -0
- package/development/core/eventing.d.ts.map +1 -1
- package/development/core/eventing.js +8 -63
- package/development/core/i18n/i18n.d.ts +3 -0
- package/development/core/i18n/i18n.d.ts.map +1 -1
- package/development/core/i18n/i18n.js +793 -0
- package/development/core/i18n.d.ts +3 -0
- package/development/core/i18n.d.ts.map +1 -1
- package/development/core/i18n.js +5 -685
- package/development/core/images.js +16 -0
- package/development/core/interfaces.d.ts +3 -0
- package/development/core/interfaces.d.ts.map +1 -1
- package/development/core/mixins/animation-complete-mixin.js +52 -0
- package/development/core/mixins/constructor.js +2 -0
- package/development/core/mixins/disabled-mixin.js +104 -0
- package/development/core/mixins/form-associated-checkbox-mixin.js +148 -0
- package/development/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
- package/development/core/mixins/form-associated-input-mixin.js +294 -0
- package/development/core/mixins/form-associated-mixin.js +268 -0
- package/development/core/mixins/form-associated-radio-button-mixin.js +242 -0
- package/development/core/mixins/hydration-mixin.js +57 -0
- package/development/core/mixins/named-slot-list-mixin.js +136 -0
- package/development/core/mixins/negative-mixin.js +45 -0
- package/development/core/mixins/panel-mixin.js +87 -0
- package/development/core/mixins/required-mixin.js +48 -0
- package/development/core/mixins/update-scheduler-mixin.js +26 -0
- package/development/core/mixins.d.ts +3 -0
- package/development/core/mixins.d.ts.map +1 -1
- package/development/core/mixins.js +15 -1383
- package/development/core/overlay/overlay-option-panel.js +18 -0
- package/development/core/overlay/overlay-trigger-attributes.d.ts +1 -1
- package/development/core/overlay/overlay-trigger-attributes.d.ts.map +1 -1
- package/development/core/overlay/overlay-trigger-attributes.js +47 -0
- package/development/core/overlay/overlay.js +15 -0
- package/development/core/overlay/position.d.ts +1 -1
- package/development/core/overlay/position.d.ts.map +1 -1
- package/development/core/overlay/position.js +84 -0
- package/development/core/overlay.d.ts +3 -0
- package/development/core/overlay.d.ts.map +1 -1
- package/development/core/overlay.js +5 -143
- package/development/core/testing/event-spy.js +70 -0
- package/development/core/testing/mocha-extensions.js +15 -0
- package/development/core/testing/scroll.d.ts +1 -0
- package/development/core/testing/scroll.d.ts.map +1 -1
- package/development/core/testing/scroll.js +8 -0
- package/development/core/testing/wait-for-condition.js +19 -0
- package/development/core/testing/wait-for-image-ready.d.ts.map +1 -1
- package/development/core/testing/wait-for-image-ready.js +31 -0
- package/development/core/testing/wait-for-render.js +21 -0
- package/development/core/testing.d.ts +3 -0
- package/development/core/testing.d.ts.map +1 -1
- package/development/core/testing.js +7 -141
- package/development/date-input/date-input.d.ts.map +1 -1
- package/development/date-input/date-input.js +270 -0
- package/development/date-input.d.ts +3 -0
- package/development/date-input.d.ts.map +1 -1
- package/development/date-input.js +2 -264
- package/development/datepicker/common/datepicker-association-controllers.js +82 -0
- package/development/datepicker/common/datepicker-button.js +155 -0
- package/development/datepicker/common.d.ts +3 -0
- package/development/datepicker/common.d.ts.map +1 -1
- package/development/datepicker/common.js +3 -228
- package/development/datepicker/datepicker/datepicker.d.ts +4 -4
- package/development/datepicker/datepicker/datepicker.d.ts.map +1 -1
- package/development/datepicker/datepicker/datepicker.js +427 -0
- package/development/datepicker/datepicker-next-day/datepicker-next-day.js +150 -0
- package/development/datepicker/datepicker-next-day.d.ts +3 -0
- package/development/datepicker/datepicker-next-day.d.ts.map +1 -1
- package/development/datepicker/datepicker-next-day.js +2 -144
- package/development/datepicker/datepicker-previous-day/datepicker-previous-day.js +150 -0
- package/development/datepicker/datepicker-previous-day.d.ts +3 -0
- package/development/datepicker/datepicker-previous-day.d.ts.map +1 -1
- package/development/datepicker/datepicker-previous-day.js +2 -144
- package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts +0 -3
- package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
- package/development/datepicker/datepicker-toggle/datepicker-toggle.js +299 -0
- package/development/datepicker/datepicker-toggle.d.ts +3 -0
- package/development/datepicker/datepicker-toggle.d.ts.map +1 -1
- package/development/datepicker/datepicker-toggle.js +2 -304
- package/development/datepicker/datepicker.d.ts +3 -0
- package/development/datepicker/datepicker.d.ts.map +1 -1
- package/development/datepicker/datepicker.js +2 -415
- package/development/datepicker.d.ts +3 -0
- package/development/datepicker.d.ts.map +1 -1
- package/development/datepicker.js +18 -6
- package/development/dialog/dialog/dialog.d.ts +0 -1
- package/development/dialog/dialog/dialog.d.ts.map +1 -1
- package/development/dialog/dialog/dialog.js +460 -0
- package/development/dialog/dialog-actions/dialog-actions.js +52 -0
- package/development/dialog/dialog-actions.d.ts +3 -0
- package/development/dialog/dialog-actions.d.ts.map +1 -1
- package/development/dialog/dialog-actions.js +2 -49
- package/development/dialog/dialog-content/dialog-content.js +78 -0
- package/development/dialog/dialog-content.d.ts +3 -0
- package/development/dialog/dialog-content.d.ts.map +1 -1
- package/development/dialog/dialog-content.js +2 -75
- package/development/dialog/dialog-title/dialog-title.d.ts +0 -1
- package/development/dialog/dialog-title/dialog-title.d.ts.map +1 -1
- package/development/dialog/dialog-title/dialog-title.js +211 -0
- package/development/dialog/dialog-title.d.ts +3 -0
- package/development/dialog/dialog-title.d.ts.map +1 -1
- package/development/dialog/dialog-title.js +2 -211
- package/development/dialog/dialog.d.ts +3 -0
- package/development/dialog/dialog.d.ts.map +1 -1
- package/development/dialog/dialog.js +2 -465
- package/development/dialog.d.ts +3 -0
- package/development/dialog.d.ts.map +1 -1
- package/development/dialog.js +10 -4
- package/development/divider/divider.js +89 -0
- package/development/divider.d.ts +3 -0
- package/development/divider.d.ts.map +1 -1
- package/development/divider.js +2 -86
- package/development/expansion-panel/expansion-panel/expansion-panel.d.ts +0 -2
- package/development/expansion-panel/expansion-panel/expansion-panel.d.ts.map +1 -1
- package/development/expansion-panel/expansion-panel/expansion-panel.js +434 -0
- package/development/expansion-panel/expansion-panel-content/expansion-panel-content.js +69 -0
- package/development/expansion-panel/expansion-panel-content.d.ts +3 -0
- package/development/expansion-panel/expansion-panel-content.d.ts.map +1 -1
- package/development/expansion-panel/expansion-panel-content.js +2 -66
- package/development/expansion-panel/expansion-panel-header/expansion-panel-header.js +173 -0
- package/development/expansion-panel/expansion-panel-header.d.ts +3 -0
- package/development/expansion-panel/expansion-panel-header.d.ts.map +1 -1
- package/development/expansion-panel/expansion-panel-header.js +2 -170
- package/development/expansion-panel/expansion-panel.d.ts +3 -0
- package/development/expansion-panel/expansion-panel.d.ts.map +1 -1
- package/development/expansion-panel/expansion-panel.js +2 -436
- package/development/expansion-panel.d.ts +3 -0
- package/development/expansion-panel.d.ts.map +1 -1
- package/development/expansion-panel.js +8 -3
- package/development/file-selector/common/file-selector-common.d.ts.map +1 -1
- package/development/file-selector/common/file-selector-common.js +279 -0
- package/development/file-selector/common.d.ts +3 -0
- package/development/file-selector/common.d.ts.map +1 -1
- package/development/file-selector/common.js +4 -379
- package/development/file-selector/file-selector/file-selector.js +52 -0
- package/development/file-selector/file-selector-dropzone/file-selector-dropzone.js +181 -0
- package/development/file-selector/file-selector-dropzone.d.ts +3 -0
- package/development/file-selector/file-selector-dropzone.d.ts.map +1 -1
- package/development/file-selector/file-selector-dropzone.js +2 -178
- package/development/file-selector/file-selector.d.ts +3 -0
- package/development/file-selector/file-selector.d.ts.map +1 -1
- package/development/file-selector/file-selector.js +2 -49
- package/development/file-selector-common-csww18o8.js +105 -0
- package/development/file-selector.d.ts +3 -0
- package/development/file-selector.d.ts.map +1 -1
- package/development/file-selector.js +11 -4
- package/development/flip-card/flip-card/flip-card.js +320 -0
- package/development/flip-card/flip-card-details/flip-card-details.d.ts.map +1 -1
- package/development/flip-card/flip-card-details/flip-card-details.js +92 -0
- package/development/flip-card/flip-card-details.d.ts +3 -0
- package/development/flip-card/flip-card-details.d.ts.map +1 -1
- package/development/flip-card/flip-card-details.js +2 -89
- package/development/flip-card/flip-card-summary/flip-card-summary.js +148 -0
- package/development/flip-card/flip-card-summary.d.ts +3 -0
- package/development/flip-card/flip-card-summary.d.ts.map +1 -1
- package/development/flip-card/flip-card-summary.js +2 -145
- package/development/flip-card/flip-card.d.ts +3 -0
- package/development/flip-card/flip-card.d.ts.map +1 -1
- package/development/flip-card/flip-card.js +2 -317
- package/development/flip-card.d.ts +3 -0
- package/development/flip-card.d.ts.map +1 -1
- package/development/flip-card.js +8 -3
- package/development/footer/footer.js +276 -0
- package/development/footer.d.ts +3 -0
- package/development/footer.d.ts.map +1 -1
- package/development/footer.js +2 -273
- package/development/form-error/form-error.js +107 -0
- package/development/form-error.d.ts +3 -0
- package/development/form-error.d.ts.map +1 -1
- package/development/form-error.js +2 -104
- package/development/form-field/form-field/form-field.d.ts.map +1 -1
- package/development/form-field/form-field/form-field.js +936 -0
- package/development/form-field/form-field-clear/form-field-clear.js +175 -0
- package/development/form-field/form-field-clear.d.ts +3 -0
- package/development/form-field/form-field-clear.d.ts.map +1 -1
- package/development/form-field/form-field-clear.js +2 -169
- package/development/form-field/form-field.d.ts +3 -0
- package/development/form-field/form-field.d.ts.map +1 -1
- package/development/form-field/form-field.js +2 -1062
- package/development/form-field.d.ts +3 -0
- package/development/form-field.d.ts.map +1 -1
- package/development/form-field.js +6 -2
- package/development/header/common/header-action-common.js +413 -0
- package/development/header/common.d.ts +3 -0
- package/development/header/common.d.ts.map +1 -1
- package/development/header/common.js +2 -410
- package/development/header/header/header.d.ts +6 -7
- package/development/header/header/header.d.ts.map +1 -1
- package/development/header/header/header.js +393 -0
- package/development/header/header-button/header-button.js +25 -0
- package/development/header/header-button.d.ts +3 -0
- package/development/header/header-button.d.ts.map +1 -1
- package/development/header/header-button.js +2 -22
- package/development/header/header-link/header-link.js +25 -0
- package/development/header/header-link.d.ts +3 -0
- package/development/header/header-link.d.ts.map +1 -1
- package/development/header/header-link.js +2 -22
- package/development/header/header.d.ts +3 -0
- package/development/header/header.d.ts.map +1 -1
- package/development/header/header.js +2 -379
- package/development/header.d.ts +3 -0
- package/development/header.d.ts.map +1 -1
- package/development/header.js +10 -4
- package/development/icon/icon-base.js +182 -0
- package/development/icon/icon-name-mixin.js +58 -0
- package/development/icon/icon-request.js +42 -0
- package/development/icon/icon-validate.js +47 -0
- package/development/icon/icon.js +118 -0
- package/development/icon-sidebar-button-common-CA_8TnFu.js +110 -0
- package/development/icon.d.ts +3 -0
- package/development/icon.d.ts.map +1 -1
- package/development/icon.js +6 -400
- package/development/image/image.js +682 -0
- package/development/image.d.ts +3 -0
- package/development/image.d.ts.map +1 -1
- package/development/image.js +2 -679
- package/development/journey-header/journey-header.js +192 -0
- package/development/journey-header.d.ts +3 -0
- package/development/journey-header.d.ts.map +1 -1
- package/development/journey-header.js +2 -189
- package/development/lead-container/lead-container.js +150 -0
- package/development/lead-container.d.ts +3 -0
- package/development/lead-container.d.ts.map +1 -1
- package/development/lead-container.js +2 -147
- package/development/link/block-link/block-link.js +26 -0
- package/development/link/block-link-button/block-link-button.js +26 -0
- package/development/link/block-link-button.d.ts +3 -0
- package/development/link/block-link-button.d.ts.map +1 -1
- package/development/link/block-link-button.js +2 -23
- package/development/link/block-link-static/block-link-static.js +26 -0
- package/development/link/block-link-static.d.ts +3 -0
- package/development/link/block-link-static.d.ts.map +1 -1
- package/development/link/block-link-static.js +2 -23
- package/development/link/block-link.d.ts +3 -0
- package/development/link/block-link.d.ts.map +1 -1
- package/development/link/block-link.js +2 -23
- package/development/link/common/block-link-common.js +132 -0
- package/development/link/common/inline-link-common.js +45 -0
- package/development/link/common/link-common.js +11 -0
- package/development/link/common.d.ts +3 -0
- package/development/link/common.d.ts.map +1 -1
- package/development/link/common.js +5 -279
- package/development/link/link/link.js +26 -0
- package/development/link/link-button/link-button.js +26 -0
- package/development/link/link-button.d.ts +3 -0
- package/development/link/link-button.d.ts.map +1 -1
- package/development/link/link-button.js +2 -23
- package/development/link/link-static/link-static.js +26 -0
- package/development/link/link-static.d.ts +3 -0
- package/development/link/link-static.d.ts.map +1 -1
- package/development/link/link-static.js +2 -23
- package/development/link/link.d.ts +3 -0
- package/development/link/link.d.ts.map +1 -1
- package/development/link/link.js +2 -23
- package/development/link-common-CJEWffDZ.js +127 -0
- package/development/link-list/common/link-list-base.js +121 -0
- package/development/link-list/common.d.ts +3 -0
- package/development/link-list/common.d.ts.map +1 -1
- package/development/link-list/common.js +4 -141
- package/development/link-list/link-list/link-list.js +206 -0
- package/development/link-list/link-list-anchor/link-list-anchor.js +72 -0
- package/development/link-list/link-list-anchor.d.ts +3 -0
- package/development/link-list/link-list-anchor.d.ts.map +1 -1
- package/development/link-list/link-list-anchor.js +2 -69
- package/development/link-list/link-list.d.ts +3 -0
- package/development/link-list/link-list.d.ts.map +1 -1
- package/development/link-list/link-list.js +2 -203
- package/development/link-list-base-DC9sc7q5.js +27 -0
- package/development/link-list.d.ts +3 -0
- package/development/link-list.d.ts.map +1 -1
- package/development/link-list.js +11 -4
- package/development/link.d.ts +3 -0
- package/development/link.d.ts.map +1 -1
- package/development/link.js +21 -8
- package/development/loading-indicator/loading-indicator.js +260 -0
- package/development/loading-indicator-circle/loading-indicator-circle.js +146 -0
- package/development/loading-indicator-circle.d.ts +3 -0
- package/development/loading-indicator-circle.d.ts.map +1 -1
- package/development/loading-indicator-circle.js +2 -143
- package/development/loading-indicator.d.ts +3 -0
- package/development/loading-indicator.d.ts.map +1 -1
- package/development/loading-indicator.js +2 -257
- package/development/logo/logo.js +157 -0
- package/development/logo.d.ts +3 -0
- package/development/logo.d.ts.map +1 -1
- package/development/logo.js +2 -154
- package/development/map-container/map-container.js +285 -0
- package/development/map-container.d.ts +3 -0
- package/development/map-container.d.ts.map +1 -1
- package/development/map-container.js +2 -282
- package/development/menu/common/menu-action-common.js +203 -0
- package/development/menu/common.d.ts +3 -0
- package/development/menu/common.d.ts.map +1 -1
- package/development/menu/common.js +2 -200
- package/development/menu/menu/menu.d.ts +8 -10
- package/development/menu/menu/menu.d.ts.map +1 -1
- package/development/menu/menu/menu.js +573 -0
- package/development/menu/menu-button/menu-button.js +26 -0
- package/development/menu/menu-button.d.ts +3 -0
- package/development/menu/menu-button.d.ts.map +1 -1
- package/development/menu/menu-button.js +2 -23
- package/development/menu/menu-link/menu-link.js +26 -0
- package/development/menu/menu-link.d.ts +3 -0
- package/development/menu/menu-link.d.ts.map +1 -1
- package/development/menu/menu-link.js +2 -23
- package/development/menu/menu.d.ts +3 -0
- package/development/menu/menu.d.ts.map +1 -1
- package/development/menu/menu.js +2 -580
- package/development/menu.d.ts +3 -0
- package/development/menu.d.ts.map +1 -1
- package/development/menu.js +10 -4
- package/development/message/message.js +139 -0
- package/development/message.d.ts +3 -0
- package/development/message.d.ts.map +1 -1
- package/development/message.js +2 -136
- package/development/navigation/common/navigation-action-common.js +175 -0
- package/development/navigation/common.d.ts +3 -0
- package/development/navigation/common.d.ts.map +1 -1
- package/development/navigation/common.js +2 -172
- package/development/navigation/navigation/navigation.d.ts +19 -25
- package/development/navigation/navigation/navigation.d.ts.map +1 -1
- package/development/navigation/navigation/navigation.js +597 -0
- package/development/navigation/navigation-button/navigation-button.js +25 -0
- package/development/navigation/navigation-button.d.ts +3 -0
- package/development/navigation/navigation-button.d.ts.map +1 -1
- package/development/navigation/navigation-button.js +2 -22
- package/development/navigation/navigation-link/navigation-link.js +25 -0
- package/development/navigation/navigation-link.d.ts +3 -0
- package/development/navigation/navigation-link.d.ts.map +1 -1
- package/development/navigation/navigation-link.js +2 -22
- package/development/navigation/navigation-list/navigation-list.js +113 -0
- package/development/navigation/navigation-list.d.ts +3 -0
- package/development/navigation/navigation-list.d.ts.map +1 -1
- package/development/navigation/navigation-list.js +2 -110
- package/development/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
- package/development/navigation/navigation-marker/navigation-marker.js +215 -0
- package/development/navigation/navigation-marker.d.ts +3 -0
- package/development/navigation/navigation-marker.d.ts.map +1 -1
- package/development/navigation/navigation-marker.js +2 -212
- package/development/navigation/navigation-section/navigation-section.d.ts +11 -14
- package/development/navigation/navigation-section/navigation-section.d.ts.map +1 -1
- package/development/navigation/navigation-section/navigation-section.js +622 -0
- package/development/navigation/navigation-section.d.ts +3 -0
- package/development/navigation/navigation-section.d.ts.map +1 -1
- package/development/navigation/navigation-section.js +2 -629
- package/development/navigation/navigation.d.ts +3 -0
- package/development/navigation/navigation.d.ts.map +1 -1
- package/development/navigation/navigation.js +2 -606
- package/development/navigation.d.ts +3 -0
- package/development/navigation.d.ts.map +1 -1
- package/development/navigation.js +16 -7
- package/development/notification/notification.js +527 -0
- package/development/notification.d.ts +3 -0
- package/development/notification.d.ts.map +1 -1
- package/development/notification.js +2 -524
- package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/development/option/optgroup/optgroup-base-element.js +247 -0
- package/development/option/optgroup/optgroup.d.ts +2 -2
- package/development/option/optgroup/optgroup.d.ts.map +1 -1
- package/development/option/optgroup/optgroup.js +50 -0
- package/development/option/optgroup.d.ts +3 -0
- package/development/option/optgroup.d.ts.map +1 -1
- package/development/option/optgroup.js +3 -287
- package/development/option/option/option-base-element.d.ts.map +1 -1
- package/development/option/option/option-base-element.js +320 -0
- package/development/option/option/option.js +264 -0
- package/development/option/option.d.ts +3 -0
- package/development/option/option.d.ts.map +1 -1
- package/development/option/option.js +3 -571
- package/development/option.d.ts +3 -0
- package/development/option.d.ts.map +1 -1
- package/development/option.js +11 -3
- package/development/overlay/overlay-base-element.d.ts +7 -3
- package/development/overlay/overlay-base-element.d.ts.map +1 -1
- package/development/overlay/overlay-base-element.js +144 -0
- package/development/overlay/overlay.d.ts +0 -1
- package/development/overlay/overlay.d.ts.map +1 -1
- package/development/overlay/overlay.js +424 -0
- package/development/overlay.d.ts +3 -0
- package/development/overlay.d.ts.map +1 -1
- package/development/overlay.js +3 -549
- package/development/paginator/common/paginator-common.js +193 -0
- package/development/paginator/common.d.ts +3 -0
- package/development/paginator/common.d.ts.map +1 -1
- package/development/paginator/common.js +2 -190
- package/development/paginator/compact-paginator/compact-paginator.js +96 -0
- package/development/paginator/compact-paginator.d.ts +3 -0
- package/development/paginator/compact-paginator.d.ts.map +1 -1
- package/development/paginator/compact-paginator.js +2 -93
- package/development/paginator/paginator/paginator.js +452 -0
- package/development/paginator/paginator.d.ts +3 -0
- package/development/paginator/paginator.d.ts.map +1 -1
- package/development/paginator/paginator.js +2 -438
- package/development/paginator.d.ts +3 -0
- package/development/paginator.d.ts.map +1 -1
- package/development/paginator.js +8 -3
- package/development/popover/popover/popover.d.ts +9 -8
- package/development/popover/popover/popover.d.ts.map +1 -1
- package/development/popover/popover/popover.js +592 -0
- package/development/popover/popover-trigger/popover-trigger.js +213 -0
- package/development/popover/popover-trigger.d.ts +3 -0
- package/development/popover/popover-trigger.d.ts.map +1 -1
- package/development/popover/popover-trigger.js +2 -212
- package/development/popover/popover.d.ts +3 -0
- package/development/popover/popover.d.ts.map +1 -1
- package/development/popover/popover.js +2 -604
- package/development/popover.d.ts +3 -0
- package/development/popover.d.ts.map +1 -1
- package/development/popover.js +6 -2
- package/development/radio-button/common/radio-button-common.d.ts.map +1 -1
- package/development/radio-button/common/radio-button-common.js +93 -0
- package/development/radio-button/common.d.ts +3 -0
- package/development/radio-button/common.d.ts.map +1 -1
- package/development/radio-button/common.js +4 -228
- package/development/radio-button/radio-button/radio-button.js +90 -0
- package/development/radio-button/radio-button-group/radio-button-group.js +387 -0
- package/development/radio-button/radio-button-group.d.ts +3 -0
- package/development/radio-button/radio-button-group.d.ts.map +1 -1
- package/development/radio-button/radio-button-group.js +2 -384
- package/development/radio-button/radio-button-panel/radio-button-panel.js +122 -0
- package/development/radio-button/radio-button-panel.d.ts +3 -0
- package/development/radio-button/radio-button-panel.d.ts.map +1 -1
- package/development/radio-button/radio-button-panel.js +2 -119
- package/development/radio-button/radio-button.d.ts +3 -0
- package/development/radio-button/radio-button.d.ts.map +1 -1
- package/development/radio-button/radio-button.js +2 -87
- package/development/radio-button-common-hZiiLJDY.js +139 -0
- package/development/radio-button.d.ts +3 -0
- package/development/radio-button.d.ts.map +1 -1
- package/development/radio-button.js +13 -5
- package/development/{sbb-tokens-CSAKTXUi.js → sbb-tokens-CVLcOi-S.js} +10 -10
- package/development/screen-reader-only/screen-reader-only.js +37 -0
- package/development/screen-reader-only.d.ts +3 -0
- package/development/screen-reader-only.d.ts.map +1 -1
- package/development/screen-reader-only.js +2 -34
- package/development/select/select.d.ts +1 -1
- package/development/select/select.d.ts.map +1 -1
- package/development/select/select.js +1048 -0
- package/development/select.d.ts +3 -0
- package/development/select.d.ts.map +1 -1
- package/development/select.js +2 -1045
- package/development/selection-expansion-panel/selection-expansion-panel.d.ts +0 -2
- package/development/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
- package/development/selection-expansion-panel/selection-expansion-panel.js +400 -0
- package/development/selection-expansion-panel.d.ts +3 -0
- package/development/selection-expansion-panel.d.ts.map +1 -1
- package/development/selection-expansion-panel.js +2 -402
- package/development/sidebar/common.d.ts +3 -0
- package/development/sidebar/common.d.ts.map +1 -1
- package/development/sidebar/common.js +5 -112
- package/development/sidebar/icon-sidebar/icon-sidebar.js +85 -0
- package/development/sidebar/icon-sidebar-button/icon-sidebar-button.js +28 -0
- package/development/sidebar/icon-sidebar-button.d.ts +3 -0
- package/development/sidebar/icon-sidebar-button.d.ts.map +1 -1
- package/development/sidebar/icon-sidebar-button.js +2 -25
- package/development/sidebar/icon-sidebar-container/icon-sidebar-container.js +45 -0
- package/development/sidebar/icon-sidebar-container.d.ts +3 -0
- package/development/sidebar/icon-sidebar-container.d.ts.map +1 -1
- package/development/sidebar/icon-sidebar-container.js +2 -42
- package/development/sidebar/icon-sidebar-content/icon-sidebar-content.js +34 -0
- package/development/sidebar/icon-sidebar-content.d.ts +3 -0
- package/development/sidebar/icon-sidebar-content.d.ts.map +1 -1
- package/development/sidebar/icon-sidebar-content.js +2 -31
- package/development/sidebar/icon-sidebar-link/icon-sidebar-link.js +28 -0
- package/development/sidebar/icon-sidebar-link.d.ts +3 -0
- package/development/sidebar/icon-sidebar-link.d.ts.map +1 -1
- package/development/sidebar/icon-sidebar-link.js +2 -25
- package/development/sidebar/icon-sidebar.d.ts +3 -0
- package/development/sidebar/icon-sidebar.d.ts.map +1 -1
- package/development/sidebar/icon-sidebar.js +2 -82
- package/development/sidebar/sidebar/sidebar.d.ts +1 -7
- package/development/sidebar/sidebar/sidebar.d.ts.map +1 -1
- package/development/sidebar/sidebar/sidebar.js +485 -0
- package/development/sidebar/sidebar-close-button/sidebar-close-button.js +55 -0
- package/development/sidebar/sidebar-close-button.d.ts +3 -0
- package/development/sidebar/sidebar-close-button.d.ts.map +1 -1
- package/development/sidebar/sidebar-close-button.js +2 -52
- package/development/sidebar/sidebar-container/sidebar-container.d.ts.map +1 -1
- package/development/sidebar/sidebar-container/sidebar-container.js +156 -0
- package/development/sidebar/sidebar-container.d.ts +3 -0
- package/development/sidebar/sidebar-container.d.ts.map +1 -1
- package/development/sidebar/sidebar-container.js +2 -150
- package/development/sidebar/sidebar-content/sidebar-content.js +37 -0
- package/development/sidebar/sidebar-content.d.ts +3 -0
- package/development/sidebar/sidebar-content.d.ts.map +1 -1
- package/development/sidebar/sidebar-content.js +2 -34
- package/development/sidebar/sidebar-title/sidebar-title.js +63 -0
- package/development/sidebar/sidebar-title.d.ts +3 -0
- package/development/sidebar/sidebar-title.d.ts.map +1 -1
- package/development/sidebar/sidebar-title.js +2 -60
- package/development/sidebar/sidebar.d.ts +3 -0
- package/development/sidebar/sidebar.d.ts.map +1 -1
- package/development/sidebar/sidebar.js +2 -520
- package/development/sidebar.d.ts +3 -0
- package/development/sidebar.d.ts.map +1 -1
- package/development/sidebar.js +26 -11
- package/development/signet/signet.js +162 -0
- package/development/signet.d.ts +3 -0
- package/development/signet.d.ts.map +1 -1
- package/development/signet.js +2 -159
- package/development/skiplink-list/skiplink-list.js +144 -0
- package/development/skiplink-list.d.ts +3 -0
- package/development/skiplink-list.d.ts.map +1 -1
- package/development/skiplink-list.js +2 -141
- package/development/slider/slider.js +451 -0
- package/development/slider.d.ts +3 -0
- package/development/slider.d.ts.map +1 -1
- package/development/slider.js +2 -448
- package/development/status/status.d.ts +4 -0
- package/development/status/status.d.ts.map +1 -1
- package/development/status/status.js +198 -0
- package/development/status.d.ts +3 -0
- package/development/status.d.ts.map +1 -1
- package/development/status.js +2 -220
- package/development/stepper/step/step.d.ts +15 -1
- package/development/stepper/step/step.d.ts.map +1 -1
- package/development/stepper/step/step.js +218 -0
- package/development/stepper/step-label/step-label.js +276 -0
- package/development/stepper/step-label.d.ts +3 -0
- package/development/stepper/step-label.d.ts.map +1 -1
- package/development/stepper/step-label.js +2 -273
- package/development/stepper/step.d.ts +3 -0
- package/development/stepper/step.d.ts.map +1 -1
- package/development/stepper/step.js +2 -195
- package/development/stepper/stepper/stepper.d.ts +1 -0
- package/development/stepper/stepper/stepper.d.ts.map +1 -1
- package/development/stepper/stepper/stepper.js +449 -0
- package/development/stepper/stepper.d.ts +3 -0
- package/development/stepper/stepper.d.ts.map +1 -1
- package/development/stepper/stepper.js +2 -442
- package/development/stepper.d.ts +3 -0
- package/development/stepper.d.ts.map +1 -1
- package/development/stepper.js +8 -3
- package/development/table/table-wrapper/table-wrapper.d.ts +6 -1
- package/development/table/table-wrapper/table-wrapper.d.ts.map +1 -1
- package/development/table/table-wrapper/table-wrapper.js +128 -0
- package/development/table/table-wrapper.d.ts +3 -0
- package/development/table/table-wrapper.d.ts.map +1 -1
- package/development/table/table-wrapper.js +2 -103
- package/development/table.d.ts +3 -0
- package/development/table.d.ts.map +1 -1
- package/development/table.js +4 -1
- package/development/tabs/tab/tab.js +66 -0
- package/development/tabs/tab-group/tab-group.js +391 -0
- package/development/tabs/tab-group.d.ts +3 -0
- package/development/tabs/tab-group.d.ts.map +1 -1
- package/development/tabs/tab-group.js +2 -388
- package/development/tabs/tab-label/tab-label.js +316 -0
- package/development/tabs/tab-label.d.ts +3 -0
- package/development/tabs/tab-label.d.ts.map +1 -1
- package/development/tabs/tab-label.js +2 -312
- package/development/tabs/tab.d.ts +3 -0
- package/development/tabs/tab.d.ts.map +1 -1
- package/development/tabs/tab.js +2 -63
- package/development/tabs.d.ts +3 -0
- package/development/tabs.d.ts.map +1 -1
- package/development/tabs.js +8 -3
- package/development/tag/tag/tag.js +351 -0
- package/development/tag/tag-group/tag-group.js +192 -0
- package/development/tag/tag-group.d.ts +3 -0
- package/development/tag/tag-group.d.ts.map +1 -1
- package/development/tag/tag-group.js +2 -189
- package/development/tag/tag.d.ts +3 -0
- package/development/tag/tag.d.ts.map +1 -1
- package/development/tag/tag.js +2 -348
- package/development/tag.d.ts +3 -0
- package/development/tag.d.ts.map +1 -1
- package/development/tag.js +6 -2
- package/development/teaser/teaser.js +260 -0
- package/development/teaser-hero/teaser-hero.js +180 -0
- package/development/teaser-hero.d.ts +3 -0
- package/development/teaser-hero.d.ts.map +1 -1
- package/development/teaser-hero.js +2 -177
- package/development/teaser-product/common/teaser-product-common.js +73 -0
- package/development/teaser-product/common.d.ts +3 -0
- package/development/teaser-product/common.d.ts.map +1 -1
- package/development/teaser-product/common.js +4 -214
- package/development/teaser-product/teaser-product/teaser-product.js +71 -0
- package/development/teaser-product/teaser-product-static/teaser-product-static.js +24 -0
- package/development/teaser-product/teaser-product-static.d.ts +3 -0
- package/development/teaser-product/teaser-product-static.d.ts.map +1 -1
- package/development/teaser-product/teaser-product-static.js +2 -21
- package/development/teaser-product/teaser-product.d.ts +3 -0
- package/development/teaser-product/teaser-product.d.ts.map +1 -1
- package/development/teaser-product/teaser-product.js +2 -68
- package/development/teaser-product-common-D6fa6x3w.js +148 -0
- package/development/teaser-product.d.ts +3 -0
- package/development/teaser-product.d.ts.map +1 -1
- package/development/teaser-product.js +11 -4
- package/development/teaser.d.ts +3 -0
- package/development/teaser.d.ts.map +1 -1
- package/development/teaser.js +2 -257
- package/development/time-input/time-input.d.ts +6 -8
- package/development/time-input/time-input.d.ts.map +1 -1
- package/development/time-input/time-input.js +276 -0
- package/development/time-input.d.ts +3 -0
- package/development/time-input.d.ts.map +1 -1
- package/development/time-input.js +2 -275
- package/development/timetable-occupancy/timetable-occupancy.js +151 -0
- package/development/timetable-occupancy-icon/timetable-occupancy-icon.js +98 -0
- package/development/timetable-occupancy-icon.d.ts +3 -0
- package/development/timetable-occupancy-icon.d.ts.map +1 -1
- package/development/timetable-occupancy-icon.js +2 -95
- package/development/timetable-occupancy.d.ts +3 -0
- package/development/timetable-occupancy.d.ts.map +1 -1
- package/development/timetable-occupancy.js +2 -148
- package/development/title/title-base.js +212 -0
- package/development/title/title.js +60 -0
- package/development/title.d.ts +3 -0
- package/development/title.d.ts.map +1 -1
- package/development/title.js +3 -261
- package/development/toast/toast.js +443 -0
- package/development/toast.d.ts +3 -0
- package/development/toast.d.ts.map +1 -1
- package/development/toast.js +2 -440
- package/development/toggle/toggle/toggle.d.ts.map +1 -1
- package/development/toggle/toggle/toggle.js +342 -0
- package/development/toggle/toggle-option/toggle-option.d.ts.map +1 -1
- package/development/toggle/toggle-option/toggle-option.js +208 -0
- package/development/toggle/toggle-option.d.ts +3 -0
- package/development/toggle/toggle-option.d.ts.map +1 -1
- package/development/toggle/toggle-option.js +2 -217
- package/development/toggle/toggle.d.ts +3 -0
- package/development/toggle/toggle.d.ts.map +1 -1
- package/development/toggle/toggle.js +2 -340
- package/development/toggle-check/toggle-check.js +284 -0
- package/development/toggle-check.d.ts +3 -0
- package/development/toggle-check.d.ts.map +1 -1
- package/development/toggle-check.js +2 -281
- package/development/toggle.d.ts +3 -0
- package/development/toggle.d.ts.map +1 -1
- package/development/toggle.js +6 -2
- package/development/train/train/train.js +245 -0
- package/development/train/train-blocked-passage/train-blocked-passage.js +87 -0
- package/development/train/train-blocked-passage.d.ts +3 -0
- package/development/train/train-blocked-passage.d.ts.map +1 -1
- package/development/train/train-blocked-passage.js +2 -84
- package/development/train/train-formation/train-formation.js +269 -0
- package/development/train/train-formation.d.ts +3 -0
- package/development/train/train-formation.d.ts.map +1 -1
- package/development/train/train-formation.js +2 -266
- package/development/train/train-wagon/train-wagon.js +415 -0
- package/development/train/train-wagon.d.ts +3 -0
- package/development/train/train-wagon.d.ts.map +1 -1
- package/development/train/train-wagon.js +2 -412
- package/development/train/train.d.ts +3 -0
- package/development/train/train.d.ts.map +1 -1
- package/development/train/train.js +2 -242
- package/development/train.d.ts +3 -0
- package/development/train.d.ts.map +1 -1
- package/development/train.js +10 -4
- package/development/transparent-button-Ddb_s0a0.js +338 -0
- package/development/visual-checkbox/visual-checkbox.js +221 -0
- package/development/visual-checkbox.d.ts +3 -0
- package/development/visual-checkbox.d.ts.map +1 -1
- package/development/visual-checkbox.js +2 -218
- package/dialog/dialog/dialog.d.ts +0 -1
- package/dialog/dialog/dialog.d.ts.map +1 -1
- package/dialog/dialog/dialog.js +142 -0
- package/dialog/dialog-actions/dialog-actions.js +20 -0
- package/dialog/dialog-actions.d.ts +3 -0
- package/dialog/dialog-actions.d.ts.map +1 -1
- package/dialog/dialog-actions.js +2 -18
- package/dialog/dialog-content/dialog-content.js +24 -0
- package/dialog/dialog-content.d.ts +3 -0
- package/dialog/dialog-content.d.ts.map +1 -1
- package/dialog/dialog-content.js +2 -22
- package/dialog/dialog-title/dialog-title.d.ts +0 -1
- package/dialog/dialog-title/dialog-title.d.ts.map +1 -1
- package/dialog/dialog-title/dialog-title.js +116 -0
- package/dialog/dialog-title.d.ts +3 -0
- package/dialog/dialog-title.d.ts.map +1 -1
- package/dialog/dialog-title.js +2 -117
- package/dialog/dialog.d.ts +3 -0
- package/dialog/dialog.d.ts.map +1 -1
- package/dialog/dialog.js +2 -146
- package/dialog.d.ts +3 -0
- package/dialog.d.ts.map +1 -1
- package/dialog.js +10 -4
- package/divider/divider.js +45 -0
- package/divider.d.ts +3 -0
- package/divider.d.ts.map +1 -1
- package/divider.js +2 -43
- package/expansion-panel/expansion-panel/expansion-panel.d.ts +0 -2
- package/expansion-panel/expansion-panel/expansion-panel.d.ts.map +1 -1
- package/expansion-panel/expansion-panel/expansion-panel.js +165 -0
- package/expansion-panel/expansion-panel-content/expansion-panel-content.js +27 -0
- package/expansion-panel/expansion-panel-content.d.ts +3 -0
- package/expansion-panel/expansion-panel-content.d.ts.map +1 -1
- package/expansion-panel/expansion-panel-content.js +2 -25
- package/expansion-panel/expansion-panel-header/expansion-panel-header.js +65 -0
- package/expansion-panel/expansion-panel-header.d.ts +3 -0
- package/expansion-panel/expansion-panel-header.d.ts.map +1 -1
- package/expansion-panel/expansion-panel-header.js +2 -63
- package/expansion-panel/expansion-panel.d.ts +3 -0
- package/expansion-panel/expansion-panel.d.ts.map +1 -1
- package/expansion-panel/expansion-panel.js +2 -166
- package/expansion-panel.d.ts +3 -0
- package/expansion-panel.d.ts.map +1 -1
- package/expansion-panel.js +8 -3
- package/file-selector/common/file-selector-common.d.ts.map +1 -1
- package/file-selector/common/file-selector-common.js +209 -0
- package/file-selector/common.d.ts +3 -0
- package/file-selector/common.d.ts.map +1 -1
- package/file-selector/common.js +4 -208
- package/file-selector/file-selector/file-selector.js +44 -0
- package/file-selector/file-selector-dropzone/file-selector-dropzone.js +97 -0
- package/file-selector/file-selector-dropzone.d.ts +3 -0
- package/file-selector/file-selector-dropzone.d.ts.map +1 -1
- package/file-selector/file-selector-dropzone.js +2 -95
- package/file-selector/file-selector.d.ts +3 -0
- package/file-selector/file-selector.d.ts.map +1 -1
- package/file-selector/file-selector.js +2 -42
- package/file-selector-common-Dw5d8vA4.js +5 -0
- package/file-selector.d.ts +3 -0
- package/file-selector.d.ts.map +1 -1
- package/file-selector.js +10 -3
- package/flip-card/flip-card/flip-card.js +122 -0
- package/flip-card/flip-card-details/flip-card-details.d.ts.map +1 -1
- package/flip-card/flip-card-details/flip-card-details.js +45 -0
- package/flip-card/flip-card-details.d.ts +3 -0
- package/flip-card/flip-card-details.d.ts.map +1 -1
- package/flip-card/flip-card-details.js +2 -43
- package/flip-card/flip-card-summary/flip-card-summary.js +52 -0
- package/flip-card/flip-card-summary.d.ts +3 -0
- package/flip-card/flip-card-summary.d.ts.map +1 -1
- package/flip-card/flip-card-summary.js +2 -50
- package/flip-card/flip-card.d.ts +3 -0
- package/flip-card/flip-card.d.ts.map +1 -1
- package/flip-card/flip-card.js +2 -120
- package/flip-card.d.ts +3 -0
- package/flip-card.d.ts.map +1 -1
- package/flip-card.js +8 -3
- package/footer/footer.js +87 -0
- package/footer.d.ts +3 -0
- package/footer.d.ts.map +1 -1
- package/footer.js +2 -85
- package/form-error/form-error.js +47 -0
- package/form-error.d.ts +3 -0
- package/form-error.d.ts.map +1 -1
- package/form-error.js +2 -45
- package/form-field/form-field/form-field.d.ts.map +1 -1
- package/form-field/form-field/form-field.js +363 -0
- package/form-field/form-field-clear/form-field-clear.js +42 -0
- package/form-field/form-field-clear.d.ts +3 -0
- package/form-field/form-field-clear.d.ts.map +1 -1
- package/form-field/form-field-clear.js +2 -40
- package/form-field/form-field.d.ts +3 -0
- package/form-field/form-field.d.ts.map +1 -1
- package/form-field/form-field.js +2 -356
- package/form-field.d.ts +3 -0
- package/form-field.d.ts.map +1 -1
- package/form-field.js +6 -2
- package/header/common/header-action-common.js +50 -0
- package/header/common.d.ts +3 -0
- package/header/common.d.ts.map +1 -1
- package/header/common.js +2 -48
- package/header/header/header.d.ts +6 -7
- package/header/header/header.d.ts.map +1 -1
- package/header/header/header.js +151 -0
- package/header/header-button/header-button.js +16 -0
- package/header/header-button.d.ts +3 -0
- package/header/header-button.d.ts.map +1 -1
- package/header/header-button.js +2 -14
- package/header/header-link/header-link.js +16 -0
- package/header/header-link.d.ts +3 -0
- package/header/header-link.d.ts.map +1 -1
- package/header/header-link.js +2 -14
- package/header/header.d.ts +3 -0
- package/header/header.d.ts.map +1 -1
- package/header/header.js +2 -147
- package/header.d.ts +3 -0
- package/header.d.ts.map +1 -1
- package/header.js +10 -4
- package/icon/icon-base.js +109 -0
- package/icon/icon-name-mixin.js +47 -0
- package/icon/icon-request.js +31 -0
- package/icon/icon-validate.js +26 -0
- package/icon/icon.js +77 -0
- package/icon-sidebar-button-common-DG8bnrBu.js +7 -0
- package/icon.d.ts +3 -0
- package/icon.d.ts.map +1 -1
- package/icon.js +11 -254
- package/image/image.js +469 -0
- package/image.d.ts +3 -0
- package/image.d.ts.map +1 -1
- package/image.js +2 -467
- package/index.d.ts +188 -182
- package/index.js +188 -182
- package/journey-header/journey-header.js +119 -0
- package/journey-header.d.ts +3 -0
- package/journey-header.d.ts.map +1 -1
- package/journey-header.js +2 -117
- package/lead-container/lead-container.js +31 -0
- package/lead-container.d.ts +3 -0
- package/lead-container.d.ts.map +1 -1
- package/lead-container.js +2 -29
- package/link/block-link/block-link.js +17 -0
- package/link/block-link-button/block-link-button.js +17 -0
- package/link/block-link-button.d.ts +3 -0
- package/link/block-link-button.d.ts.map +1 -1
- package/link/block-link-button.js +2 -15
- package/link/block-link-static/block-link-static.js +17 -0
- package/link/block-link-static.d.ts +3 -0
- package/link/block-link-static.d.ts.map +1 -1
- package/link/block-link-static.js +2 -15
- package/link/block-link.d.ts +3 -0
- package/link/block-link.d.ts.map +1 -1
- package/link/block-link.js +2 -15
- package/link/common/block-link-common.js +43 -0
- package/link/common/inline-link-common.js +12 -0
- package/link/common/link-common.js +10 -0
- package/link/common.d.ts +3 -0
- package/link/common.d.ts.map +1 -1
- package/link/common.js +6 -80
- package/link/link/link.js +17 -0
- package/link/link-button/link-button.js +17 -0
- package/link/link-button.d.ts +3 -0
- package/link/link-button.d.ts.map +1 -1
- package/link/link-button.js +2 -15
- package/link/link-static/link-static.js +17 -0
- package/link/link-static.d.ts +3 -0
- package/link/link-static.d.ts.map +1 -1
- package/link/link-static.js +2 -15
- package/link/link.d.ts +3 -0
- package/link/link.d.ts.map +1 -1
- package/link/link.js +2 -15
- package/link-common-DZrQ-32d.js +46 -0
- package/link-list/common/link-list-base.js +87 -0
- package/link-list/common.d.ts +3 -0
- package/link-list/common.d.ts.map +1 -1
- package/link-list/common.js +4 -87
- package/link-list/link-list/link-list.js +46 -0
- package/link-list/link-list-anchor/link-list-anchor.js +17 -0
- package/link-list/link-list-anchor.d.ts +3 -0
- package/link-list/link-list-anchor.d.ts.map +1 -1
- package/link-list/link-list-anchor.js +2 -15
- package/link-list/link-list.d.ts +3 -0
- package/link-list/link-list.d.ts.map +1 -1
- package/link-list/link-list.js +2 -44
- package/link-list-base-BdOBGhxe.js +5 -0
- package/link-list.d.ts +3 -0
- package/link-list.d.ts.map +1 -1
- package/link-list.js +10 -3
- package/link.d.ts +3 -0
- package/link.d.ts.map +1 -1
- package/link.js +20 -7
- package/loading-indicator/loading-indicator.js +66 -0
- package/loading-indicator-circle/loading-indicator-circle.js +46 -0
- package/loading-indicator-circle.d.ts +3 -0
- package/loading-indicator-circle.d.ts.map +1 -1
- package/loading-indicator-circle.js +2 -44
- package/loading-indicator.d.ts +3 -0
- package/loading-indicator.d.ts.map +1 -1
- package/loading-indicator.js +2 -64
- package/logo/logo.js +67 -0
- package/logo.d.ts +3 -0
- package/logo.d.ts.map +1 -1
- package/logo.js +2 -65
- package/map-container/map-container.js +109 -0
- package/map-container.d.ts +3 -0
- package/map-container.d.ts.map +1 -1
- package/map-container.js +2 -107
- package/menu/common/menu-action-common.js +53 -0
- package/menu/common.d.ts +3 -0
- package/menu/common.d.ts.map +1 -1
- package/menu/common.js +2 -51
- package/menu/menu/menu.d.ts +8 -10
- package/menu/menu/menu.d.ts.map +1 -1
- package/menu/menu/menu.js +227 -0
- package/menu/menu-button/menu-button.js +17 -0
- package/menu/menu-button.d.ts +3 -0
- package/menu/menu-button.d.ts.map +1 -1
- package/menu/menu-button.js +2 -15
- package/menu/menu-link/menu-link.js +17 -0
- package/menu/menu-link.d.ts +3 -0
- package/menu/menu-link.d.ts.map +1 -1
- package/menu/menu-link.js +2 -15
- package/menu/menu.d.ts +3 -0
- package/menu/menu.d.ts.map +1 -1
- package/menu/menu.js +2 -230
- package/menu.d.ts +3 -0
- package/menu.d.ts.map +1 -1
- package/menu.js +10 -4
- package/message/message.js +60 -0
- package/message.d.ts +3 -0
- package/message.d.ts.map +1 -1
- package/message.js +2 -58
- package/navigation/common/navigation-action-common.js +58 -0
- package/navigation/common.d.ts +3 -0
- package/navigation/common.d.ts.map +1 -1
- package/navigation/common.js +2 -56
- package/navigation/navigation/navigation.d.ts +19 -25
- package/navigation/navigation/navigation.d.ts.map +1 -1
- package/navigation/navigation/navigation.js +215 -0
- package/navigation/navigation-button/navigation-button.js +16 -0
- package/navigation/navigation-button.d.ts +3 -0
- package/navigation/navigation-button.d.ts.map +1 -1
- package/navigation/navigation-button.js +2 -14
- package/navigation/navigation-link/navigation-link.js +16 -0
- package/navigation/navigation-link.d.ts +3 -0
- package/navigation/navigation-link.d.ts.map +1 -1
- package/navigation/navigation-link.js +2 -14
- package/navigation/navigation-list/navigation-list.js +57 -0
- package/navigation/navigation-list.d.ts +3 -0
- package/navigation/navigation-list.d.ts.map +1 -1
- package/navigation/navigation-list.js +2 -55
- package/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
- package/navigation/navigation-marker/navigation-marker.js +82 -0
- package/navigation/navigation-marker.d.ts +3 -0
- package/navigation/navigation-marker.d.ts.map +1 -1
- package/navigation/navigation-marker.js +2 -80
- package/navigation/navigation-section/navigation-section.d.ts +11 -14
- package/navigation/navigation-section/navigation-section.d.ts.map +1 -1
- package/navigation/navigation-section/navigation-section.js +233 -0
- package/navigation/navigation-section.d.ts +3 -0
- package/navigation/navigation-section.d.ts.map +1 -1
- package/navigation/navigation-section.js +2 -233
- package/navigation/navigation.d.ts +3 -0
- package/navigation/navigation.d.ts.map +1 -1
- package/navigation/navigation.js +2 -218
- package/navigation.d.ts +3 -0
- package/navigation.d.ts.map +1 -1
- package/navigation.js +16 -7
- package/notification/notification.js +192 -0
- package/notification.d.ts +3 -0
- package/notification.d.ts.map +1 -1
- package/notification.js +2 -190
- package/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/option/optgroup/optgroup-base-element.js +115 -0
- package/option/optgroup/optgroup.d.ts +2 -2
- package/option/optgroup/optgroup.d.ts.map +1 -1
- package/option/optgroup/optgroup.js +34 -0
- package/option/optgroup.d.ts +3 -0
- package/option/optgroup.d.ts.map +1 -1
- package/option/optgroup.js +4 -141
- package/option/option/option-base-element.d.ts.map +1 -1
- package/option/option/option-base-element.js +232 -0
- package/option/option/option.js +95 -0
- package/option/option.d.ts +3 -0
- package/option/option.d.ts.map +1 -1
- package/option/option.js +4 -318
- package/option.d.ts +3 -0
- package/option.d.ts.map +1 -1
- package/option.js +10 -2
- package/overlay/overlay-base-element.d.ts +7 -3
- package/overlay/overlay-base-element.d.ts.map +1 -1
- package/overlay/overlay-base-element.js +102 -0
- package/overlay/overlay.d.ts +0 -1
- package/overlay/overlay.d.ts.map +1 -1
- package/overlay/overlay.js +156 -0
- package/overlay.d.ts +3 -0
- package/overlay.d.ts.map +1 -1
- package/overlay.js +5 -239
- package/package.json +17 -2
- package/paginator/common/paginator-common.js +149 -0
- package/paginator/common.d.ts +3 -0
- package/paginator/common.d.ts.map +1 -1
- package/paginator/common.js +2 -147
- package/paginator/compact-paginator/compact-paginator.js +40 -0
- package/paginator/compact-paginator.d.ts +3 -0
- package/paginator/compact-paginator.d.ts.map +1 -1
- package/paginator/compact-paginator.js +2 -38
- package/paginator/paginator/paginator.js +169 -0
- package/paginator/paginator.d.ts +3 -0
- package/paginator/paginator.d.ts.map +1 -1
- package/paginator/paginator.js +2 -167
- package/paginator.d.ts +3 -0
- package/paginator.d.ts.map +1 -1
- package/paginator.js +8 -3
- package/popover/popover/popover.d.ts +9 -8
- package/popover/popover/popover.d.ts.map +1 -1
- package/popover/popover/popover.js +261 -0
- package/popover/popover-trigger/popover-trigger.js +32 -0
- package/popover/popover-trigger.d.ts +3 -0
- package/popover/popover-trigger.d.ts.map +1 -1
- package/popover/popover-trigger.js +2 -30
- package/popover/popover.d.ts +3 -0
- package/popover/popover.d.ts.map +1 -1
- package/popover/popover.js +2 -263
- package/popover.d.ts +3 -0
- package/popover.d.ts.map +1 -1
- package/popover.js +6 -2
- package/radio-button/common/radio-button-common.d.ts.map +1 -1
- package/radio-button/common/radio-button-common.js +64 -0
- package/radio-button/common.d.ts +3 -0
- package/radio-button/common.d.ts.map +1 -1
- package/radio-button/common.js +4 -65
- package/radio-button/radio-button/radio-button.js +57 -0
- package/radio-button/radio-button-group/radio-button-group.js +186 -0
- package/radio-button/radio-button-group.d.ts +3 -0
- package/radio-button/radio-button-group.d.ts.map +1 -1
- package/radio-button/radio-button-group.js +2 -184
- package/radio-button/radio-button-panel/radio-button-panel.js +88 -0
- package/radio-button/radio-button-panel.d.ts +3 -0
- package/radio-button/radio-button-panel.d.ts.map +1 -1
- package/radio-button/radio-button-panel.js +2 -86
- package/radio-button/radio-button.d.ts +3 -0
- package/radio-button/radio-button.d.ts.map +1 -1
- package/radio-button/radio-button.js +2 -55
- package/radio-button-common-DJKWrKor.js +5 -0
- package/radio-button.d.ts +3 -0
- package/radio-button.d.ts.map +1 -1
- package/radio-button.js +12 -4
- package/{sbb-tokens-BgDF8jIh.js → sbb-tokens-B3Eka-Tz.js} +9 -9
- package/screen-reader-only/screen-reader-only.js +19 -0
- package/screen-reader-only.d.ts +3 -0
- package/screen-reader-only.d.ts.map +1 -1
- package/screen-reader-only.js +2 -17
- package/select/select.d.ts +1 -1
- package/select/select.d.ts.map +1 -1
- package/select/select.js +482 -0
- package/select.d.ts +3 -0
- package/select.d.ts.map +1 -1
- package/select.js +2 -479
- package/selection-expansion-panel/selection-expansion-panel.d.ts +0 -2
- package/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
- package/selection-expansion-panel/selection-expansion-panel.js +185 -0
- package/selection-expansion-panel.d.ts +3 -0
- package/selection-expansion-panel.d.ts.map +1 -1
- package/selection-expansion-panel.js +2 -186
- package/sidebar/common.d.ts +3 -0
- package/sidebar/common.d.ts.map +1 -1
- package/sidebar/common.js +3 -4
- package/sidebar/icon-sidebar/icon-sidebar.js +47 -0
- package/sidebar/icon-sidebar-button/icon-sidebar-button.js +20 -0
- package/sidebar/icon-sidebar-button.d.ts +3 -0
- package/sidebar/icon-sidebar-button.d.ts.map +1 -1
- package/sidebar/icon-sidebar-button.js +2 -18
- package/sidebar/icon-sidebar-container/icon-sidebar-container.js +35 -0
- package/sidebar/icon-sidebar-container.d.ts +3 -0
- package/sidebar/icon-sidebar-container.d.ts.map +1 -1
- package/sidebar/icon-sidebar-container.js +2 -33
- package/sidebar/icon-sidebar-content/icon-sidebar-content.js +23 -0
- package/sidebar/icon-sidebar-content.d.ts +3 -0
- package/sidebar/icon-sidebar-content.d.ts.map +1 -1
- package/sidebar/icon-sidebar-content.js +2 -21
- package/sidebar/icon-sidebar-link/icon-sidebar-link.js +20 -0
- package/sidebar/icon-sidebar-link.d.ts +3 -0
- package/sidebar/icon-sidebar-link.d.ts.map +1 -1
- package/sidebar/icon-sidebar-link.js +2 -18
- package/sidebar/icon-sidebar.d.ts +3 -0
- package/sidebar/icon-sidebar.d.ts.map +1 -1
- package/sidebar/icon-sidebar.js +2 -45
- package/sidebar/sidebar/sidebar.d.ts +1 -7
- package/sidebar/sidebar/sidebar.d.ts.map +1 -1
- package/sidebar/sidebar/sidebar.js +194 -0
- package/sidebar/sidebar-close-button/sidebar-close-button.js +29 -0
- package/sidebar/sidebar-close-button.d.ts +3 -0
- package/sidebar/sidebar-close-button.d.ts.map +1 -1
- package/sidebar/sidebar-close-button.js +2 -27
- package/sidebar/sidebar-container/sidebar-container.d.ts.map +1 -1
- package/sidebar/sidebar-container/sidebar-container.js +81 -0
- package/sidebar/sidebar-container.d.ts +3 -0
- package/sidebar/sidebar-container.d.ts.map +1 -1
- package/sidebar/sidebar-container.js +2 -76
- package/sidebar/sidebar-content/sidebar-content.js +23 -0
- package/sidebar/sidebar-content.d.ts +3 -0
- package/sidebar/sidebar-content.d.ts.map +1 -1
- package/sidebar/sidebar-content.js +2 -21
- package/sidebar/sidebar-title/sidebar-title.js +37 -0
- package/sidebar/sidebar-title.d.ts +3 -0
- package/sidebar/sidebar-title.d.ts.map +1 -1
- package/sidebar/sidebar-title.js +2 -35
- package/sidebar/sidebar.d.ts +3 -0
- package/sidebar/sidebar.d.ts.map +1 -1
- package/sidebar/sidebar.js +2 -212
- package/sidebar.d.ts +3 -0
- package/sidebar.d.ts.map +1 -1
- package/sidebar.js +26 -11
- package/signet/signet.js +72 -0
- package/signet.d.ts +3 -0
- package/signet.d.ts.map +1 -1
- package/signet.js +2 -70
- package/skiplink-list/skiplink-list.js +71 -0
- package/skiplink-list.d.ts +3 -0
- package/skiplink-list.d.ts.map +1 -1
- package/skiplink-list.js +2 -69
- package/slider/slider.js +232 -0
- package/slider.d.ts +3 -0
- package/slider.d.ts.map +1 -1
- package/slider.js +2 -230
- package/standard-theme.css +208 -81
- package/status/status.d.ts +4 -0
- package/status/status.d.ts.map +1 -1
- package/status/status.js +89 -0
- package/status.d.ts +3 -0
- package/status.d.ts.map +1 -1
- package/status.js +2 -87
- package/stepper/step/step.d.ts +15 -1
- package/stepper/step/step.d.ts.map +1 -1
- package/stepper/step/step.js +104 -0
- package/stepper/step-label/step-label.js +75 -0
- package/stepper/step-label.d.ts +3 -0
- package/stepper/step-label.d.ts.map +1 -1
- package/stepper/step-label.js +2 -73
- package/stepper/step.d.ts +3 -0
- package/stepper/step.d.ts.map +1 -1
- package/stepper/step.js +2 -88
- package/stepper/stepper/stepper.d.ts +1 -0
- package/stepper/stepper/stepper.d.ts.map +1 -1
- package/stepper/stepper/stepper.js +244 -0
- package/stepper/stepper.d.ts +3 -0
- package/stepper/stepper.d.ts.map +1 -1
- package/stepper/stepper.js +2 -239
- package/stepper.d.ts +3 -0
- package/stepper.d.ts.map +1 -1
- package/stepper.js +8 -3
- package/table/table-wrapper/table-wrapper.d.ts +6 -1
- package/table/table-wrapper/table-wrapper.d.ts.map +1 -1
- package/table/table-wrapper/table-wrapper.js +50 -0
- package/table/table-wrapper.d.ts +3 -0
- package/table/table-wrapper.d.ts.map +1 -1
- package/table/table-wrapper.js +2 -34
- package/table.css +112 -44
- package/table.d.ts +3 -0
- package/table.d.ts.map +1 -1
- package/table.js +4 -1
- package/tabs/tab/tab.js +40 -0
- package/tabs/tab-group/tab-group.js +218 -0
- package/tabs/tab-group.d.ts +3 -0
- package/tabs/tab-group.d.ts.map +1 -1
- package/tabs/tab-group.js +2 -216
- package/tabs/tab-label/tab-label.js +80 -0
- package/tabs/tab-label.d.ts +3 -0
- package/tabs/tab-label.d.ts.map +1 -1
- package/tabs/tab-label.js +2 -78
- package/tabs/tab.d.ts +3 -0
- package/tabs/tab.d.ts.map +1 -1
- package/tabs/tab.js +2 -38
- package/tabs.d.ts +3 -0
- package/tabs.d.ts.map +1 -1
- package/tabs.js +8 -3
- package/tag/tag/tag.js +126 -0
- package/tag/tag-group/tag-group.js +120 -0
- package/tag/tag-group.d.ts +3 -0
- package/tag/tag-group.d.ts.map +1 -1
- package/tag/tag-group.js +2 -118
- package/tag/tag.d.ts +3 -0
- package/tag/tag.d.ts.map +1 -1
- package/tag/tag.js +2 -124
- package/tag.d.ts +3 -0
- package/tag.d.ts.map +1 -1
- package/tag.js +6 -2
- package/teaser/teaser.js +102 -0
- package/teaser-hero/teaser-hero.js +61 -0
- package/teaser-hero.d.ts +3 -0
- package/teaser-hero.d.ts.map +1 -1
- package/teaser-hero.js +2 -59
- package/teaser-product/common/teaser-product-common.js +54 -0
- package/teaser-product/common.d.ts +3 -0
- package/teaser-product/common.d.ts.map +1 -1
- package/teaser-product/common.js +4 -53
- package/teaser-product/teaser-product/teaser-product.js +31 -0
- package/teaser-product/teaser-product-static/teaser-product-static.js +16 -0
- package/teaser-product/teaser-product-static.d.ts +3 -0
- package/teaser-product/teaser-product-static.d.ts.map +1 -1
- package/teaser-product/teaser-product-static.js +2 -14
- package/teaser-product/teaser-product.d.ts +3 -0
- package/teaser-product/teaser-product.d.ts.map +1 -1
- package/teaser-product/teaser-product.js +2 -29
- package/teaser-product-common-CpMAlYEp.js +5 -0
- package/teaser-product.d.ts +3 -0
- package/teaser-product.d.ts.map +1 -1
- package/teaser-product.js +10 -3
- package/teaser.d.ts +3 -0
- package/teaser.d.ts.map +1 -1
- package/teaser.js +2 -100
- package/time-input/time-input.d.ts +6 -8
- package/time-input/time-input.d.ts.map +1 -1
- package/time-input/time-input.js +174 -0
- package/time-input.d.ts +3 -0
- package/time-input.d.ts.map +1 -1
- package/time-input.js +2 -179
- package/timetable-occupancy/timetable-occupancy.js +75 -0
- package/timetable-occupancy-icon/timetable-occupancy-icon.js +64 -0
- package/timetable-occupancy-icon.d.ts +3 -0
- package/timetable-occupancy-icon.d.ts.map +1 -1
- package/timetable-occupancy-icon.js +2 -62
- package/timetable-occupancy.d.ts +3 -0
- package/timetable-occupancy.d.ts.map +1 -1
- package/timetable-occupancy.js +2 -73
- package/title/title-base.js +73 -0
- package/title/title.js +18 -0
- package/title.d.ts +3 -0
- package/title.d.ts.map +1 -1
- package/title.js +4 -83
- package/toast/toast.js +195 -0
- package/toast.d.ts +3 -0
- package/toast.d.ts.map +1 -1
- package/toast.js +2 -193
- package/toggle/toggle/toggle.d.ts.map +1 -1
- package/toggle/toggle/toggle.js +162 -0
- package/toggle/toggle-option/toggle-option.d.ts.map +1 -1
- package/toggle/toggle-option/toggle-option.js +84 -0
- package/toggle/toggle-option.d.ts +3 -0
- package/toggle/toggle-option.d.ts.map +1 -1
- package/toggle/toggle-option.js +2 -94
- package/toggle/toggle.d.ts +3 -0
- package/toggle/toggle.d.ts.map +1 -1
- package/toggle/toggle.js +2 -162
- package/toggle-check/toggle-check.js +81 -0
- package/toggle-check.d.ts +3 -0
- package/toggle-check.d.ts.map +1 -1
- package/toggle-check.js +2 -79
- package/toggle.d.ts +3 -0
- package/toggle.d.ts.map +1 -1
- package/toggle.js +6 -2
- package/train/train/train.js +126 -0
- package/train/train-blocked-passage/train-blocked-passage.js +25 -0
- package/train/train-blocked-passage.d.ts +3 -0
- package/train/train-blocked-passage.d.ts.map +1 -1
- package/train/train-blocked-passage.js +2 -23
- package/train/train-formation/train-formation.js +91 -0
- package/train/train-formation.d.ts +3 -0
- package/train/train-formation.d.ts.map +1 -1
- package/train/train-formation.js +2 -89
- package/train/train-wagon/train-wagon.js +177 -0
- package/train/train-wagon.d.ts +3 -0
- package/train/train-wagon.d.ts.map +1 -1
- package/train/train-wagon.js +2 -175
- package/train/train.d.ts +3 -0
- package/train/train.d.ts.map +1 -1
- package/train/train.js +2 -124
- package/train.d.ts +3 -0
- package/train.d.ts.map +1 -1
- package/train.js +10 -4
- package/transparent-button-BlbvexCb.js +9 -0
- package/visual-checkbox/visual-checkbox.js +83 -0
- package/visual-checkbox.d.ts +3 -0
- package/visual-checkbox.d.ts.map +1 -1
- package/visual-checkbox.js +2 -81
- package/core/testing/private.d.ts +0 -11
- package/core/testing/private.d.ts.map +0 -1
- package/core/testing/test-setup-ssr.d.ts +0 -2
- package/core/testing/test-setup-ssr.d.ts.map +0 -1
- package/core/testing/test-setup.d.ts +0 -2
- package/core/testing/test-setup.d.ts.map +0 -1
- package/development/core/testing/private.d.ts +0 -11
- package/development/core/testing/private.d.ts.map +0 -1
- package/development/core/testing/test-setup-ssr.d.ts +0 -2
- package/development/core/testing/test-setup-ssr.d.ts.map +0 -1
- package/development/core/testing/test-setup.d.ts +0 -2
- package/development/core/testing/test-setup.d.ts.map +0 -1
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
var __typeError = (msg) => {
|
|
2
|
+
throw TypeError(msg);
|
|
3
|
+
};
|
|
4
|
+
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
5
|
+
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
6
|
+
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
7
|
+
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
8
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
9
|
+
import { property, state } from "lit/decorators.js";
|
|
10
|
+
import { isWebkit } from "../dom.js";
|
|
11
|
+
const validityKeys = {
|
|
12
|
+
badInput: false,
|
|
13
|
+
customError: false,
|
|
14
|
+
patternMismatch: false,
|
|
15
|
+
rangeOverflow: false,
|
|
16
|
+
rangeUnderflow: false,
|
|
17
|
+
stepMismatch: false,
|
|
18
|
+
tooLong: false,
|
|
19
|
+
tooShort: false,
|
|
20
|
+
typeMismatch: false,
|
|
21
|
+
valueMissing: false
|
|
22
|
+
};
|
|
23
|
+
if (typeof ValidityState === "undefined") {
|
|
24
|
+
const validityClass = class ValidityState {
|
|
25
|
+
get valid() {
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
constructor() {
|
|
29
|
+
throw new TypeError("Illegal constructor");
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
Object.entries(validityKeys).forEach(([key, value]) => Object.assign(validityClass.prototype, {
|
|
33
|
+
get [key]() {
|
|
34
|
+
return value;
|
|
35
|
+
}
|
|
36
|
+
}));
|
|
37
|
+
globalThis.ValidityState = validityClass;
|
|
38
|
+
}
|
|
39
|
+
const SbbFormAssociatedMixin = (superClass) => {
|
|
40
|
+
let SbbFormAssociatedElement = (() => {
|
|
41
|
+
var _formDisabled_accessor_storage, _a;
|
|
42
|
+
let _classSuper = superClass;
|
|
43
|
+
let _instanceExtraInitializers = [];
|
|
44
|
+
let _set_name_decorators;
|
|
45
|
+
let _set_value_decorators;
|
|
46
|
+
let _formDisabled_decorators;
|
|
47
|
+
let _formDisabled_initializers = [];
|
|
48
|
+
let _formDisabled_extraInitializers = [];
|
|
49
|
+
return _a = class extends _classSuper {
|
|
50
|
+
constructor(...args) {
|
|
51
|
+
var _a2;
|
|
52
|
+
super(...args);
|
|
53
|
+
__privateAdd(this, _formDisabled_accessor_storage);
|
|
54
|
+
this._value = (__runInitializers(this, _instanceExtraInitializers), null);
|
|
55
|
+
this.internals = this.attachInternals();
|
|
56
|
+
this._validityStates = /* @__PURE__ */ new Map();
|
|
57
|
+
__privateSet(this, _formDisabled_accessor_storage, __runInitializers(this, _formDisabled_initializers, false));
|
|
58
|
+
__runInitializers(this, _formDisabled_extraInitializers);
|
|
59
|
+
(_a2 = this.addEventListener) == null ? void 0 : _a2.call(this, "invalid", (e) => e.preventDefault());
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Returns the form owner of this element.
|
|
63
|
+
*/
|
|
64
|
+
get form() {
|
|
65
|
+
return this.internals.form;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Name of the form element. Will be read from name attribute.
|
|
69
|
+
*
|
|
70
|
+
* @description Developer note: In this case updating the attribute must be synchronous.
|
|
71
|
+
* Due to this it is implemented as a getter/setter and the attributeChangedCallback() handles the diff check.
|
|
72
|
+
*/
|
|
73
|
+
set name(name) {
|
|
74
|
+
this.setAttribute("name", `${name}`);
|
|
75
|
+
this.updateFormValue();
|
|
76
|
+
}
|
|
77
|
+
get name() {
|
|
78
|
+
return this.getAttribute("name") ?? "";
|
|
79
|
+
}
|
|
80
|
+
/** @internal */
|
|
81
|
+
get type() {
|
|
82
|
+
return this.localName;
|
|
83
|
+
}
|
|
84
|
+
/** Value of the form element. */
|
|
85
|
+
set value(value) {
|
|
86
|
+
this._value = value;
|
|
87
|
+
this.updateFormValue();
|
|
88
|
+
}
|
|
89
|
+
get value() {
|
|
90
|
+
return this._value;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Returns the ValidityState object for this element.
|
|
94
|
+
*/
|
|
95
|
+
get validity() {
|
|
96
|
+
return this.internals.validity;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Returns the current error message, if available, which corresponds
|
|
100
|
+
* to the current validation state.
|
|
101
|
+
* Please note that only one message is returned at a time (e.g. if
|
|
102
|
+
* multiple validity states are invalid, only the chronologically first one
|
|
103
|
+
* is returned until it is fixed, at which point the next message might be
|
|
104
|
+
* returned, if it is still applicable). Also a custom validity message
|
|
105
|
+
* (see below) has precedence over native validation messages.
|
|
106
|
+
*/
|
|
107
|
+
get validationMessage() {
|
|
108
|
+
return this.internals.validationMessage;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Returns true if this element will be validated
|
|
112
|
+
* when the form is submitted; false otherwise.
|
|
113
|
+
*/
|
|
114
|
+
get willValidate() {
|
|
115
|
+
return this.internals.willValidate;
|
|
116
|
+
}
|
|
117
|
+
/** Whenever a surrounding form or fieldset is changing its disabled state. */
|
|
118
|
+
get formDisabled() {
|
|
119
|
+
return __privateGet(this, _formDisabled_accessor_storage);
|
|
120
|
+
}
|
|
121
|
+
set formDisabled(value) {
|
|
122
|
+
__privateSet(this, _formDisabled_accessor_storage, value);
|
|
123
|
+
}
|
|
124
|
+
attributeChangedCallback(name, old, value) {
|
|
125
|
+
if (name !== "name" || old !== value) {
|
|
126
|
+
super.attributeChangedCallback(name, old, value);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Returns true if this element has no validity problems; false otherwise.
|
|
131
|
+
* Fires an invalid event at the element in the latter case.
|
|
132
|
+
*/
|
|
133
|
+
checkValidity() {
|
|
134
|
+
return this.internals.checkValidity();
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Returns true if this element has no validity problems; otherwise,
|
|
138
|
+
* returns false, fires an invalid event at the element,
|
|
139
|
+
* and (if the event isn't canceled) reports the problem to the user.
|
|
140
|
+
*/
|
|
141
|
+
reportValidity() {
|
|
142
|
+
return this.internals.reportValidity();
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Sets the custom validity message for this element. Use the empty string
|
|
146
|
+
* to indicate that the element does not have a custom validity error.
|
|
147
|
+
*/
|
|
148
|
+
setCustomValidity(message) {
|
|
149
|
+
if (message) {
|
|
150
|
+
this.setValidityFlag("customError", message);
|
|
151
|
+
} else {
|
|
152
|
+
this.removeValidityFlag("customError");
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Is called whenever a surrounding form / fieldset changes disabled state.
|
|
157
|
+
* @param disabled
|
|
158
|
+
*
|
|
159
|
+
* @internal
|
|
160
|
+
*/
|
|
161
|
+
formDisabledCallback(disabled) {
|
|
162
|
+
Promise.resolve().then(() => {
|
|
163
|
+
this.formDisabled = disabled;
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
requestUpdate(name, oldValue, options) {
|
|
167
|
+
super.requestUpdate(name, oldValue, options);
|
|
168
|
+
if (this.hasUpdated && this.shouldValidate(name)) {
|
|
169
|
+
this.validate();
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
firstUpdated(changedProperties) {
|
|
173
|
+
super.firstUpdated(changedProperties);
|
|
174
|
+
this.validate();
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Marks this element as suffering from the constraint indicated by the
|
|
178
|
+
* flag argument and associates the given message to it.
|
|
179
|
+
* Note that only one message is displayed at a time and custom messages by
|
|
180
|
+
* consumers are always displayed before internal messages and internal
|
|
181
|
+
* messages are displayed in the order they were added.
|
|
182
|
+
* To set/define custom validity state flags, you need to extend the
|
|
183
|
+
* ValidityState prototype (and the CustomValidityState interface).
|
|
184
|
+
*
|
|
185
|
+
* @example
|
|
186
|
+
*
|
|
187
|
+
* // The type of the custom validity state does not need to be boolean.
|
|
188
|
+
* Object.assign(ValidityState.prototype, {
|
|
189
|
+
* get myError(): boolean {
|
|
190
|
+
* return false;
|
|
191
|
+
* },
|
|
192
|
+
* });
|
|
193
|
+
*
|
|
194
|
+
* declare global {
|
|
195
|
+
* interface CustomValidityState {
|
|
196
|
+
* myError: boolean;
|
|
197
|
+
* }
|
|
198
|
+
* }
|
|
199
|
+
*/
|
|
200
|
+
setValidityFlag(flag, message, flagValue) {
|
|
201
|
+
flagValue ?? (flagValue = true);
|
|
202
|
+
const validityState = this._validityStates.get(flag);
|
|
203
|
+
if (!validityState || validityState.message !== message || validityState.flagValue !== flagValue) {
|
|
204
|
+
this._validityStates.set(flag, { flagValue, message });
|
|
205
|
+
this._setInternalValidity();
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
/** Removes the validity state flag entry and updates validity state. */
|
|
209
|
+
removeValidityFlag(flag) {
|
|
210
|
+
if (this._validityStates.has(flag)) {
|
|
211
|
+
this._validityStates.delete(flag);
|
|
212
|
+
this._setInternalValidity();
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
/** To be called whenever the current element needs to be validated. */
|
|
216
|
+
validate() {
|
|
217
|
+
}
|
|
218
|
+
/** Whether validation should be run on a property change with the given name. */
|
|
219
|
+
shouldValidate(name) {
|
|
220
|
+
return !name;
|
|
221
|
+
}
|
|
222
|
+
_setInternalValidity() {
|
|
223
|
+
var _a2;
|
|
224
|
+
let outputMessage = (_a2 = this._validityStates.get("customError")) == null ? void 0 : _a2.message;
|
|
225
|
+
const flags = {};
|
|
226
|
+
this._validityStates.forEach(({ flagValue, message }, flag) => {
|
|
227
|
+
flags[flag] = flagValue;
|
|
228
|
+
outputMessage || (outputMessage = message);
|
|
229
|
+
});
|
|
230
|
+
const customFlags = Object.keys(ValidityState.prototype).filter((f) => !(f in validityKeys) && f !== "valid");
|
|
231
|
+
for (const flag of customFlags) {
|
|
232
|
+
const value = flag in flags ? flags[flag] : false;
|
|
233
|
+
Object.defineProperty(this.internals.validity, flag, { value, configurable: true });
|
|
234
|
+
if (value) {
|
|
235
|
+
flags.customError = true;
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
this.internals.setValidity(flags, outputMessage);
|
|
239
|
+
if (isWebkit) {
|
|
240
|
+
Object.defineProperty(this.internals.validity, "customError", {
|
|
241
|
+
value: this._validityStates.has("customError") || !!flags.customError,
|
|
242
|
+
configurable: true
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
}, _formDisabled_accessor_storage = new WeakMap(), (() => {
|
|
247
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
248
|
+
_set_name_decorators = [property()];
|
|
249
|
+
_set_value_decorators = [property()];
|
|
250
|
+
_formDisabled_decorators = [state()];
|
|
251
|
+
__esDecorate(_a, null, _set_name_decorators, { kind: "setter", name: "name", static: false, private: false, access: { has: (obj) => "name" in obj, set: (obj, value) => {
|
|
252
|
+
obj.name = value;
|
|
253
|
+
} }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
254
|
+
__esDecorate(_a, null, _set_value_decorators, { kind: "setter", name: "value", static: false, private: false, access: { has: (obj) => "value" in obj, set: (obj, value) => {
|
|
255
|
+
obj.value = value;
|
|
256
|
+
} }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
257
|
+
__esDecorate(_a, null, _formDisabled_decorators, { kind: "accessor", name: "formDisabled", static: false, private: false, access: { has: (obj) => "formDisabled" in obj, get: (obj) => obj.formDisabled, set: (obj, value) => {
|
|
258
|
+
obj.formDisabled = value;
|
|
259
|
+
} }, metadata: _metadata }, _formDisabled_initializers, _formDisabled_extraInitializers);
|
|
260
|
+
if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
261
|
+
})(), _a.formAssociated = true, _a;
|
|
262
|
+
})();
|
|
263
|
+
return SbbFormAssociatedElement;
|
|
264
|
+
};
|
|
265
|
+
export {
|
|
266
|
+
SbbFormAssociatedMixin
|
|
267
|
+
};
|
|
268
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1hc3NvY2lhdGVkLW1peGluLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9taXhpbnMvZm9ybS1hc3NvY2lhdGVkLW1peGluLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1vYmplY3QtdHlwZSAqL1xuaW1wb3J0IHR5cGUgeyBMaXRFbGVtZW50LCBQcm9wZXJ0eURlY2xhcmF0aW9uLCBQcm9wZXJ0eVZhbHVlcyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSwgc3RhdGUgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGlzV2Via2l0IH0gZnJvbSAnLi4vZG9tLmpzJztcblxuaW1wb3J0IHR5cGUgeyBBYnN0cmFjdENvbnN0cnVjdG9yIH0gZnJvbSAnLi9jb25zdHJ1Y3Rvci5qcyc7XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgLyoqXG4gICAqIERlZmluZXMgY3VzdG9tIHZhbGlkaWR0eSBzdGF0ZSBwcm9wZXJ0aWVzLlxuICAgKi9cbiAgaW50ZXJmYWNlIEN1c3RvbVZhbGlkaXR5U3RhdGUge31cbiAgaW50ZXJmYWNlIFZhbGlkaXR5U3RhdGUgZXh0ZW5kcyBDdXN0b21WYWxpZGl0eVN0YXRlIHt9XG4gIGludGVyZmFjZSBWYWxpZGl0eVN0YXRlRmxhZ3MgZXh0ZW5kcyBQYXJ0aWFsPEN1c3RvbVZhbGlkaXR5U3RhdGU+IHt9XG59XG5cbmNvbnN0IHZhbGlkaXR5S2V5czogUmVxdWlyZWQ8T21pdDxWYWxpZGl0eVN0YXRlRmxhZ3MsIGtleW9mIEN1c3RvbVZhbGlkaXR5U3RhdGU+PiA9IHtcbiAgYmFkSW5wdXQ6IGZhbHNlLFxuICBjdXN0b21FcnJvcjogZmFsc2UsXG4gIHBhdHRlcm5NaXNtYXRjaDogZmFsc2UsXG4gIHJhbmdlT3ZlcmZsb3c6IGZhbHNlLFxuICByYW5nZVVuZGVyZmxvdzogZmFsc2UsXG4gIHN0ZXBNaXNtYXRjaDogZmFsc2UsXG4gIHRvb0xvbmc6IGZhbHNlLFxuICB0b29TaG9ydDogZmFsc2UsXG4gIHR5cGVNaXNtYXRjaDogZmFsc2UsXG4gIHZhbHVlTWlzc2luZzogZmFsc2UsXG59O1xuLy8gV2UgbmVlZCBWYWxpZGl0eVN0YXRlIGluIHRoZSBnbG9iYWwgY29udGV4dCwgYXMgd2UgY2hlY2sgdGhlIHByb3RvdHlwZSBmb3Jcbi8vIGV4dGVuc2lvbnMuIEluIGVudmlyb25tZW50cyB3aGVyZSB0aGF0IGlzIG5vdCB0aGUgY2FzZSAoZS5nLiBOb2RlLmpzKSB3ZVxuLy8gcGF0Y2ggaXQgd2l0aCBhIG1pbmltYWwgc2hpbS5cbmlmICh0eXBlb2YgVmFsaWRpdHlTdGF0ZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgY29uc3QgdmFsaWRpdHlDbGFzcyA9IGNsYXNzIFZhbGlkaXR5U3RhdGUge1xuICAgIHB1YmxpYyBnZXQgdmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcHJpdmF0ZSBjb25zdHJ1Y3RvcigpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ0lsbGVnYWwgY29uc3RydWN0b3InKTtcbiAgICB9XG4gIH07XG4gIE9iamVjdC5lbnRyaWVzKHZhbGlkaXR5S2V5cykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PlxuICAgIE9iamVjdC5hc3NpZ24odmFsaWRpdHlDbGFzcy5wcm90b3R5cGUsIHtcbiAgICAgIGdldCBba2V5XSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgfSxcbiAgICB9KSxcbiAgKTtcbiAgZ2xvYmFsVGhpcy5WYWxpZGl0eVN0YXRlID0gdmFsaWRpdHlDbGFzcyBhcyB1bmtub3duIGFzIHR5cGVvZiBWYWxpZGl0eVN0YXRlO1xufVxuXG5leHBvcnQgZGVjbGFyZSBhYnN0cmFjdCBjbGFzcyBTYmJGb3JtQXNzb2NpYXRlZE1peGluVHlwZTxWID0gc3RyaW5nPiB7XG4gIHB1YmxpYyBnZXQgZm9ybSgpOiBIVE1MRm9ybUVsZW1lbnQgfCBudWxsO1xuICBwdWJsaWMgYWNjZXNzb3IgbmFtZTogc3RyaW5nO1xuICBwdWJsaWMgZ2V0IHR5cGUoKTogc3RyaW5nO1xuICBwdWJsaWMgYWNjZXNzb3IgdmFsdWU6IFYgfCBudWxsO1xuXG4gIHB1YmxpYyBnZXQgdmFsaWRpdHkoKTogVmFsaWRpdHlTdGF0ZTtcbiAgcHVibGljIGdldCB2YWxpZGF0aW9uTWVzc2FnZSgpOiBzdHJpbmc7XG4gIHB1YmxpYyBnZXQgd2lsbFZhbGlkYXRlKCk6IGJvb2xlYW47XG5cbiAgcHJvdGVjdGVkIGZvcm1EaXNhYmxlZDogYm9vbGVhbjtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGludGVybmFsczogRWxlbWVudEludGVybmFscztcblxuICBwdWJsaWMgY2hlY2tWYWxpZGl0eSgpOiBib29sZWFuO1xuICBwdWJsaWMgcmVwb3J0VmFsaWRpdHkoKTogYm9vbGVhbjtcbiAgcHVibGljIHNldEN1c3RvbVZhbGlkaXR5KG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQ7XG5cbiAgcHVibGljIGZvcm1Bc3NvY2lhdGVkQ2FsbGJhY2s/KGZvcm06IEhUTUxGb3JtRWxlbWVudCB8IG51bGwpOiB2b2lkO1xuICBwdWJsaWMgZm9ybURpc2FibGVkQ2FsbGJhY2soZGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkO1xuICBwdWJsaWMgYWJzdHJhY3QgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZDtcbiAgcHVibGljIGFic3RyYWN0IGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhcbiAgICBzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgcmVhc29uOiBGb3JtUmVzdG9yZVJlYXNvbixcbiAgKTogdm9pZDtcblxuICBwcm90ZWN0ZWQgYWJzdHJhY3QgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQ7XG4gIHByb3RlY3RlZCBzZXRWYWxpZGl0eUZsYWc8VCBleHRlbmRzIGtleW9mIFZhbGlkaXR5U3RhdGVGbGFncz4oXG4gICAgZmxhZzogVCxcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgZmxhZ1ZhbHVlPzogVmFsaWRpdHlTdGF0ZUZsYWdzW1RdLFxuICApOiB2b2lkO1xuICBwcm90ZWN0ZWQgcmVtb3ZlVmFsaWRpdHlGbGFnPFQgZXh0ZW5kcyBrZXlvZiBWYWxpZGl0eVN0YXRlRmxhZ3M+KGZsYWc6IFQpOiB2b2lkO1xuICBwcm90ZWN0ZWQgdmFsaWRhdGUoKTogdm9pZDtcbiAgcHJvdGVjdGVkIHNob3VsZFZhbGlkYXRlKG5hbWU6IFByb3BlcnR5S2V5IHwgdW5kZWZpbmVkKTogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUaGUgRm9ybUFzc29jaWF0ZWRNaXhpbiBlbmFibGVzIG5hdGl2ZSBmb3JtIHN1cHBvcnQgZm9yIGN1c3RvbSBjb250cm9scy5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4gPSA8VCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8TGl0RWxlbWVudD4sIFYgPSBzdHJpbmc+KFxuICBzdXBlckNsYXNzOiBULFxuKTogQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJGb3JtQXNzb2NpYXRlZE1peGluVHlwZTxWPj4gJiBUID0+IHtcbiAgYWJzdHJhY3QgY2xhc3MgU2JiRm9ybUFzc29jaWF0ZWRFbGVtZW50XG4gICAgZXh0ZW5kcyBzdXBlckNsYXNzXG4gICAgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW5UeXBlPFY+PlxuICB7XG4gICAgcHVibGljIHN0YXRpYyBmb3JtQXNzb2NpYXRlZCA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBmb3JtIG93bmVyIG9mIHRoaXMgZWxlbWVudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IGZvcm0oKTogSFRNTEZvcm1FbGVtZW50IHwgbnVsbCB7XG4gICAgICByZXR1cm4gdGhpcy5pbnRlcm5hbHMuZm9ybTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBOYW1lIG9mIHRoZSBmb3JtIGVsZW1lbnQuIFdpbGwgYmUgcmVhZCBmcm9tIG5hbWUgYXR0cmlidXRlLlxuICAgICAqXG4gICAgICogQGRlc2NyaXB0aW9uIERldmVsb3BlciBub3RlOiBJbiB0aGlzIGNhc2UgdXBkYXRpbmcgdGhlIGF0dHJpYnV0ZSBtdXN0IGJlIHN5bmNocm9ub3VzLlxuICAgICAqIER1ZSB0byB0aGlzIGl0IGlzIGltcGxlbWVudGVkIGFzIGEgZ2V0dGVyL3NldHRlciBhbmQgdGhlIGF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjaygpIGhhbmRsZXMgdGhlIGRpZmYgY2hlY2suXG4gICAgICovXG4gICAgQHByb3BlcnR5KClcbiAgICBwdWJsaWMgc2V0IG5hbWUobmFtZTogc3RyaW5nKSB7XG4gICAgICB0aGlzLnNldEF0dHJpYnV0ZSgnbmFtZScsIGAke25hbWV9YCk7XG5cbiAgICAgIC8vIEZvciBgRm9ybURhdGFgIHZhbHVlcywgd2UgaGF2ZSB0byBtYW51YWxseSB1cGRhdGUgdGhlIGZpZWxkTmFtZSBrZXlcbiAgICAgIHRoaXMudXBkYXRlRm9ybVZhbHVlKCk7XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0QXR0cmlidXRlKCduYW1lJykgPz8gJyc7XG4gICAgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIHB1YmxpYyBnZXQgdHlwZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMubG9jYWxOYW1lO1xuICAgIH1cblxuICAgIC8qKiBWYWx1ZSBvZiB0aGUgZm9ybSBlbGVtZW50LiAqL1xuICAgIEBwcm9wZXJ0eSgpXG4gICAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogViB8IG51bGwpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IHZhbHVlKCk6IFYgfCBudWxsIHtcbiAgICAgIHJldHVybiB0aGlzLl92YWx1ZTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfdmFsdWU6IFYgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIFZhbGlkaXR5U3RhdGUgb2JqZWN0IGZvciB0aGlzIGVsZW1lbnQuXG4gICAgICovXG4gICAgcHVibGljIGdldCB2YWxpZGl0eSgpOiBWYWxpZGl0eVN0YXRlIHtcbiAgICAgIHJldHVybiB0aGlzLmludGVybmFscy52YWxpZGl0eTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IGVycm9yIG1lc3NhZ2UsIGlmIGF2YWlsYWJsZSwgd2hpY2ggY29ycmVzcG9uZHNcbiAgICAgKiB0byB0aGUgY3VycmVudCB2YWxpZGF0aW9uIHN0YXRlLlxuICAgICAqIFBsZWFzZSBub3RlIHRoYXQgb25seSBvbmUgbWVzc2FnZSBpcyByZXR1cm5lZCBhdCBhIHRpbWUgKGUuZy4gaWZcbiAgICAgKiBtdWx0aXBsZSB2YWxpZGl0eSBzdGF0ZXMgYXJlIGludmFsaWQsIG9ubHkgdGhlIGNocm9ub2xvZ2ljYWxseSBmaXJzdCBvbmVcbiAgICAgKiBpcyByZXR1cm5lZCB1bnRpbCBpdCBpcyBmaXhlZCwgYXQgd2hpY2ggcG9pbnQgdGhlIG5leHQgbWVzc2FnZSBtaWdodCBiZVxuICAgICAqIHJldHVybmVkLCBpZiBpdCBpcyBzdGlsbCBhcHBsaWNhYmxlKS4gQWxzbyBhIGN1c3RvbSB2YWxpZGl0eSBtZXNzYWdlXG4gICAgICogKHNlZSBiZWxvdykgaGFzIHByZWNlZGVuY2Ugb3ZlciBuYXRpdmUgdmFsaWRhdGlvbiBtZXNzYWdlcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IHZhbGlkYXRpb25NZXNzYWdlKCk6IHN0cmluZyB7XG4gICAgICByZXR1cm4gdGhpcy5pbnRlcm5hbHMudmFsaWRhdGlvbk1lc3NhZ2U7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0cnVlIGlmIHRoaXMgZWxlbWVudCB3aWxsIGJlIHZhbGlkYXRlZFxuICAgICAqIHdoZW4gdGhlIGZvcm0gaXMgc3VibWl0dGVkOyBmYWxzZSBvdGhlcndpc2UuXG4gICAgICovXG4gICAgcHVibGljIGdldCB3aWxsVmFsaWRhdGUoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5pbnRlcm5hbHMud2lsbFZhbGlkYXRlO1xuICAgIH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaW50ZXJuYWxzOiBFbGVtZW50SW50ZXJuYWxzID0gdGhpcy5hdHRhY2hJbnRlcm5hbHMoKTtcblxuICAgIHByaXZhdGUgX3ZhbGlkaXR5U3RhdGVzID0gbmV3IE1hcDxcbiAgICAgIGtleW9mIFZhbGlkaXR5U3RhdGVGbGFncyxcbiAgICAgIHsgZmxhZ1ZhbHVlOiB1bmtub3duOyBtZXNzYWdlOiBzdHJpbmcgfVxuICAgID4oKTtcblxuICAgIC8qKiBXaGVuZXZlciBhIHN1cnJvdW5kaW5nIGZvcm0gb3IgZmllbGRzZXQgaXMgY2hhbmdpbmcgaXRzIGRpc2FibGVkIHN0YXRlLiAqL1xuICAgIEBzdGF0ZSgpIHByb3RlY3RlZCBhY2Nlc3NvciBmb3JtRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvciguLi5hcmdzOiBhbnlbXSkge1xuICAgICAgc3VwZXIoLi4uYXJncyk7XG4gICAgICAvLyBXZSB3YW50IHRvIHByZXZlbnQgdGhlIG5hdGl2ZSBicm93c2VyIHZhbGlkYXRpb24gbWVzc2FnZSBwb3BvdmVyXG4gICAgICAvLyB0byBiZSBzaG93bi4gVGhpcyBhbHNvIHByZXZlbnRzIGEgYnVnIGluIFdlYktpdCwgd2hpY2ggd291bGQgbm90XG4gICAgICAvLyBhbGxvdyBob3N0IGFzIHRoZSB2YWxpZGl0eSBhbmNob3I6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNjk4MzJcbiAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcj8uKCdpbnZhbGlkJywgKGUpID0+IGUucHJldmVudERlZmF1bHQoKSk7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIGF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayhcbiAgICAgIG5hbWU6IHN0cmluZyxcbiAgICAgIG9sZDogc3RyaW5nIHwgbnVsbCxcbiAgICAgIHZhbHVlOiBzdHJpbmcgfCBudWxsLFxuICAgICk6IHZvaWQge1xuICAgICAgaWYgKG5hbWUgIT09ICduYW1lJyB8fCBvbGQgIT09IHZhbHVlKSB7XG4gICAgICAgIHN1cGVyLmF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayhuYW1lLCBvbGQsIHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRydWUgaWYgdGhpcyBlbGVtZW50IGhhcyBubyB2YWxpZGl0eSBwcm9ibGVtczsgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgICAqIEZpcmVzIGFuIGludmFsaWQgZXZlbnQgYXQgdGhlIGVsZW1lbnQgaW4gdGhlIGxhdHRlciBjYXNlLlxuICAgICAqL1xuICAgIHB1YmxpYyBjaGVja1ZhbGlkaXR5KCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxzLmNoZWNrVmFsaWRpdHkoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRydWUgaWYgdGhpcyBlbGVtZW50IGhhcyBubyB2YWxpZGl0eSBwcm9ibGVtczsgb3RoZXJ3aXNlLFxuICAgICAqIHJldHVybnMgZmFsc2UsIGZpcmVzIGFuIGludmFsaWQgZXZlbnQgYXQgdGhlIGVsZW1lbnQsXG4gICAgICogYW5kIChpZiB0aGUgZXZlbnQgaXNuJ3QgY2FuY2VsZWQpIHJlcG9ydHMgdGhlIHByb2JsZW0gdG8gdGhlIHVzZXIuXG4gICAgICovXG4gICAgcHVibGljIHJlcG9ydFZhbGlkaXR5KCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxzLnJlcG9ydFZhbGlkaXR5KCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgY3VzdG9tIHZhbGlkaXR5IG1lc3NhZ2UgZm9yIHRoaXMgZWxlbWVudC4gVXNlIHRoZSBlbXB0eSBzdHJpbmdcbiAgICAgKiB0byBpbmRpY2F0ZSB0aGF0IHRoZSBlbGVtZW50IGRvZXMgbm90IGhhdmUgYSBjdXN0b20gdmFsaWRpdHkgZXJyb3IuXG4gICAgICovXG4gICAgcHVibGljIHNldEN1c3RvbVZhbGlkaXR5KG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xuICAgICAgaWYgKG1lc3NhZ2UpIHtcbiAgICAgICAgdGhpcy5zZXRWYWxpZGl0eUZsYWcoJ2N1c3RvbUVycm9yJywgbWVzc2FnZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJlbW92ZVZhbGlkaXR5RmxhZygnY3VzdG9tRXJyb3InKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWxsZWQgd2hlbiB0aGUgYXNzb2NpYXRlZCBmb3JtIGVsZW1lbnQgY2hhbmdlcy5cbiAgICAgKiBFbGVtZW50SW50ZXJuYWxzLmZvcm0gcmV0dXJucyB0aGUgYXNzb2NpYXRlZCBmcm9tIGVsZW1lbnQuXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwdWJsaWMgZm9ybUFzc29jaWF0ZWRDYWxsYmFjaz8oZm9ybTogSFRNTEZvcm1FbGVtZW50IHwgbnVsbCk6IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBJcyBjYWxsZWQgd2hlbmV2ZXIgYSBzdXJyb3VuZGluZyBmb3JtIC8gZmllbGRzZXQgY2hhbmdlcyBkaXNhYmxlZCBzdGF0ZS5cbiAgICAgKiBAcGFyYW0gZGlzYWJsZWRcbiAgICAgKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBmb3JtRGlzYWJsZWRDYWxsYmFjayhkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgLy8gVGhpcyBjYWxsYmFjayBpcyB0cmlnZ2VyZWQgaWYgdGhlIGRpc2FibGVkIHByb3BlcnR5IGNoYW5nZXMgb3IgdGhlIGRpc2FibGVkIGF0dHJpYnV0ZSBvZiBhIGZpZWxkc2V0IG9yIGZvcm0gY2hhbmdlcy5cbiAgICAgIC8vIFdlIG5lZWQgdG8gcG9zdHBvbmUgdGhlIGFzc2lnbm1lbnQsIG90aGVyd2lzZSBpdCBpbnRlcmZlcmVzIHdpdGggZGlzYWJsZWQgc3RhdHVzIHNldHRpbmdcbiAgICAgIC8vIGFuZCBsZWFkcyB0byBhIHdyb25nIHN0YXRlIChlLmcuIGVtYmVkZGVkIHNiYi12aXN1YWwtY2hlY2tib3gpLlxuICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgIHRoaXMuZm9ybURpc2FibGVkID0gZGlzYWJsZWQ7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJcyBjYWxsZWQgd2hlbmV2ZXIgdGhlIGZvcm0gaXMgYmVpbmcgcmVzZXQuXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwdWJsaWMgYWJzdHJhY3QgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqICBDYWxsZWQgd2hlbiB0aGUgYnJvd3NlciBpcyB0cnlpbmcgdG8gcmVzdG9yZSBlbGVtZW504oCZcyBzdGF0ZSB0byBzdGF0ZSBpbiB3aGljaCBjYXNlXG4gICAgICogIHJlYXNvbiBpcyBcInJlc3RvcmVcIiwgb3Igd2hlbiB0aGUgYnJvd3NlciBpcyB0cnlpbmcgdG8gZnVsZmlsbCBhdXRvZmlsbCBvbiBiZWhhbGYgb2ZcbiAgICAgKiAgdXNlciBpbiB3aGljaCBjYXNlIHJlYXNvbiBpcyBcImF1dG9jb21wbGV0ZVwiLlxuICAgICAqICBJbiB0aGUgY2FzZSBvZiBcInJlc3RvcmVcIiwgc3RhdGUgaXMgYSBzdHJpbmcsIEZpbGUsIG9yIEZvcm1EYXRhIG9iamVjdFxuICAgICAqICBwcmV2aW91c2x5IHNldCBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50IHRvIHNldEZvcm1WYWx1ZS5cbiAgICAgKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBhYnN0cmFjdCBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soXG4gICAgICBzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgICByZWFzb246IEZvcm1SZXN0b3JlUmVhc29uLFxuICAgICk6IHZvaWQ7XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgcmVxdWVzdFVwZGF0ZShcbiAgICAgIG5hbWU/OiBQcm9wZXJ0eUtleSxcbiAgICAgIG9sZFZhbHVlPzogdW5rbm93bixcbiAgICAgIG9wdGlvbnM/OiBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICAgICk6IHZvaWQge1xuICAgICAgc3VwZXIucmVxdWVzdFVwZGF0ZShuYW1lLCBvbGRWYWx1ZSwgb3B0aW9ucyk7XG4gICAgICBpZiAodGhpcy5oYXNVcGRhdGVkICYmIHRoaXMuc2hvdWxkVmFsaWRhdGUobmFtZSkpIHtcbiAgICAgICAgdGhpcy52YWxpZGF0ZSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgICBzdXBlci5maXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXMpO1xuICAgICAgdGhpcy52YWxpZGF0ZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3VsZCBiZSBjYWxsZWQgd2hlbiBmb3JtIHZhbHVlIGlzIGNoYW5nZWQuXG4gICAgICogQWRhcHRzIGFuZCBzZXRzIHRoZSBmb3JtVmFsdWUgaW4gdGhlIHN1cHBvcnRlZCBmb3JtYXQgKHN0cmluZyB8IEZvcm1EYXRhIHwgRmlsZSB8IG51bGwpXG4gICAgICogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0VsZW1lbnRJbnRlcm5hbHMvc2V0Rm9ybVZhbHVlXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHVwZGF0ZUZvcm1WYWx1ZSgpOiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogTWFya3MgdGhpcyBlbGVtZW50IGFzIHN1ZmZlcmluZyBmcm9tIHRoZSBjb25zdHJhaW50IGluZGljYXRlZCBieSB0aGVcbiAgICAgKiBmbGFnIGFyZ3VtZW50IGFuZCBhc3NvY2lhdGVzIHRoZSBnaXZlbiBtZXNzYWdlIHRvIGl0LlxuICAgICAqIE5vdGUgdGhhdCBvbmx5IG9uZSBtZXNzYWdlIGlzIGRpc3BsYXllZCBhdCBhIHRpbWUgYW5kIGN1c3RvbSBtZXNzYWdlcyBieVxuICAgICAqIGNvbnN1bWVycyBhcmUgYWx3YXlzIGRpc3BsYXllZCBiZWZvcmUgaW50ZXJuYWwgbWVzc2FnZXMgYW5kIGludGVybmFsXG4gICAgICogbWVzc2FnZXMgYXJlIGRpc3BsYXllZCBpbiB0aGUgb3JkZXIgdGhleSB3ZXJlIGFkZGVkLlxuICAgICAqIFRvIHNldC9kZWZpbmUgY3VzdG9tIHZhbGlkaXR5IHN0YXRlIGZsYWdzLCB5b3UgbmVlZCB0byBleHRlbmQgdGhlXG4gICAgICogVmFsaWRpdHlTdGF0ZSBwcm90b3R5cGUgKGFuZCB0aGUgQ3VzdG9tVmFsaWRpdHlTdGF0ZSBpbnRlcmZhY2UpLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKlxuICAgICAqICAgLy8gVGhlIHR5cGUgb2YgdGhlIGN1c3RvbSB2YWxpZGl0eSBzdGF0ZSBkb2VzIG5vdCBuZWVkIHRvIGJlIGJvb2xlYW4uXG4gICAgICogICBPYmplY3QuYXNzaWduKFZhbGlkaXR5U3RhdGUucHJvdG90eXBlLCB7XG4gICAgICogICAgIGdldCBteUVycm9yKCk6IGJvb2xlYW4ge1xuICAgICAqICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgKiAgICAgfSxcbiAgICAgKiAgIH0pO1xuICAgICAqXG4gICAgICogICBkZWNsYXJlIGdsb2JhbCB7XG4gICAgICogICAgIGludGVyZmFjZSBDdXN0b21WYWxpZGl0eVN0YXRlIHtcbiAgICAgKiAgICAgICBteUVycm9yOiBib29sZWFuO1xuICAgICAqICAgICB9XG4gICAgICogICB9XG4gICAgICovXG4gICAgcHJvdGVjdGVkIHNldFZhbGlkaXR5RmxhZzxUIGV4dGVuZHMga2V5b2YgVmFsaWRpdHlTdGF0ZUZsYWdzPihcbiAgICAgIGZsYWc6IFQsXG4gICAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgICBmbGFnVmFsdWU/OiBWYWxpZGl0eVN0YXRlRmxhZ3NbVF0sXG4gICAgKTogdm9pZCB7XG4gICAgICBmbGFnVmFsdWUgPz89IHRydWU7XG4gICAgICBjb25zdCB2YWxpZGl0eVN0YXRlID0gdGhpcy5fdmFsaWRpdHlTdGF0ZXMuZ2V0KGZsYWcpO1xuICAgICAgaWYgKFxuICAgICAgICAhdmFsaWRpdHlTdGF0ZSB8fFxuICAgICAgICB2YWxpZGl0eVN0YXRlLm1lc3NhZ2UgIT09IG1lc3NhZ2UgfHxcbiAgICAgICAgdmFsaWRpdHlTdGF0ZS5mbGFnVmFsdWUgIT09IGZsYWdWYWx1ZVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuX3ZhbGlkaXR5U3RhdGVzLnNldChmbGFnLCB7IGZsYWdWYWx1ZSwgbWVzc2FnZSB9KTtcbiAgICAgICAgdGhpcy5fc2V0SW50ZXJuYWxWYWxpZGl0eSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBSZW1vdmVzIHRoZSB2YWxpZGl0eSBzdGF0ZSBmbGFnIGVudHJ5IGFuZCB1cGRhdGVzIHZhbGlkaXR5IHN0YXRlLiAqL1xuICAgIHByb3RlY3RlZCByZW1vdmVWYWxpZGl0eUZsYWc8VCBleHRlbmRzIGtleW9mIFZhbGlkaXR5U3RhdGVGbGFncz4oZmxhZzogVCk6IHZvaWQge1xuICAgICAgaWYgKHRoaXMuX3ZhbGlkaXR5U3RhdGVzLmhhcyhmbGFnKSkge1xuICAgICAgICB0aGlzLl92YWxpZGl0eVN0YXRlcy5kZWxldGUoZmxhZyk7XG4gICAgICAgIHRoaXMuX3NldEludGVybmFsVmFsaWRpdHkoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogVG8gYmUgY2FsbGVkIHdoZW5ldmVyIHRoZSBjdXJyZW50IGVsZW1lbnQgbmVlZHMgdG8gYmUgdmFsaWRhdGVkLiAqL1xuICAgIHByb3RlY3RlZCB2YWxpZGF0ZSgpOiB2b2lkIHt9XG5cbiAgICAvKiogV2hldGhlciB2YWxpZGF0aW9uIHNob3VsZCBiZSBydW4gb24gYSBwcm9wZXJ0eSBjaGFuZ2Ugd2l0aCB0aGUgZ2l2ZW4gbmFtZS4gKi9cbiAgICBwcm90ZWN0ZWQgc2hvdWxkVmFsaWRhdGUobmFtZTogUHJvcGVydHlLZXkgfCB1bmRlZmluZWQpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiAhbmFtZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zZXRJbnRlcm5hbFZhbGlkaXR5KCk6IHZvaWQge1xuICAgICAgbGV0IG91dHB1dE1lc3NhZ2UgPSB0aGlzLl92YWxpZGl0eVN0YXRlcy5nZXQoJ2N1c3RvbUVycm9yJyk/Lm1lc3NhZ2U7XG4gICAgICBjb25zdCBmbGFnczogVmFsaWRpdHlTdGF0ZUZsYWdzID0ge307XG4gICAgICB0aGlzLl92YWxpZGl0eVN0YXRlcy5mb3JFYWNoKCh7IGZsYWdWYWx1ZSwgbWVzc2FnZSB9LCBmbGFnKSA9PiB7XG4gICAgICAgIGZsYWdzW2ZsYWddID0gZmxhZ1ZhbHVlIGFzIGFueTtcbiAgICAgICAgb3V0cHV0TWVzc2FnZSB8fD0gbWVzc2FnZTtcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBjdXN0b21GbGFncyA9IE9iamVjdC5rZXlzKFZhbGlkaXR5U3RhdGUucHJvdG90eXBlKS5maWx0ZXIoXG4gICAgICAgIChmKSA9PiAhKGYgaW4gdmFsaWRpdHlLZXlzKSAmJiBmICE9PSAndmFsaWQnLFxuICAgICAgKTtcbiAgICAgIGZvciAoY29uc3QgZmxhZyBvZiBjdXN0b21GbGFncykge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IGZsYWcgaW4gZmxhZ3MgPyBmbGFnc1tmbGFnIGFzIGtleW9mIFZhbGlkaXR5U3RhdGVGbGFnc10gOiBmYWxzZTtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMuaW50ZXJuYWxzLnZhbGlkaXR5LCBmbGFnLCB7IHZhbHVlLCBjb25maWd1cmFibGU6IHRydWUgfSk7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgIC8vIElmIGFueSBjdXN0b20gZXJyb3JzIGFyZSBwcm92aWRlZCwgd2UgbmVlZCB0byBzZXQgY3VzdG9tRXJyb3IgdG8gdHJ1ZSxcbiAgICAgICAgICAvLyBhcyB0aGlzIGlzIHRoZSBvbmx5IGN1c3RvbSBlcnJvciBwcm9wZXJ0eSBicm93c2VycyBhY2NlcHQuXG4gICAgICAgICAgZmxhZ3MuY3VzdG9tRXJyb3IgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHRoaXMuaW50ZXJuYWxzLnNldFZhbGlkaXR5KGZsYWdzLCBvdXRwdXRNZXNzYWdlKTtcblxuICAgICAgLy8gV2ViS2l0IHNlZW1zIHRvIGFsd2F5cyBzZXQgY3VzdG9tRXJyb3IgdG8gdHJ1ZSwgaWYgYW55IGVycm9yIGlzIGFjdGl2ZS5cbiAgICAgIC8vIER1ZSB0byB0aGlzIHdlIHBhdGNoIHRoZSBjdXN0b21FcnJvciB2YWx1ZSBtYW51YWxseS5cbiAgICAgIGlmIChpc1dlYmtpdCkge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcy5pbnRlcm5hbHMudmFsaWRpdHksICdjdXN0b21FcnJvcicsIHtcbiAgICAgICAgICB2YWx1ZTogdGhpcy5fdmFsaWRpdHlTdGF0ZXMuaGFzKCdjdXN0b21FcnJvcicpIHx8ICEhZmxhZ3MuY3VzdG9tRXJyb3IsXG4gICAgICAgICAgY29uZmlndXJhYmxlOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIFNiYkZvcm1Bc3NvY2lhdGVkRWxlbWVudCBhcyB1bmtub3duIGFzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiRm9ybUFzc29jaWF0ZWRNaXhpblR5cGU8Vj4+ICZcbiAgICBUO1xufTtcblxuLyoqXG4gKiBBIHZhbHVlIHRvIGJlIHJlc3RvcmVkIGZvciBhIGNvbXBvbmVudCdzIGZvcm0gdmFsdWUuIElmIGEgY29tcG9uZW50J3MgZm9ybVxuICogc3RhdGUgaXMgYSBgRm9ybURhdGFgIG9iamVjdCwgaXRzIGVudHJ5IGxpc3Qgb2YgbmFtZSBhbmQgdmFsdWVzIHdpbGwgYmVcbiAqIHByb3ZpZGVkLlxuICovXG5leHBvcnQgdHlwZSBGb3JtUmVzdG9yZVN0YXRlID0gRmlsZSB8IHN0cmluZyB8IFtzdHJpbmcsIEZvcm1EYXRhRW50cnlWYWx1ZV1bXTtcblxuLyoqXG4gKiBUaGUgcmVhc29uIGEgZm9ybSBjb21wb25lbnQgaXMgYmVpbmcgcmVzdG9yZWQgZm9yLCBlaXRoZXIgYCdyZXN0b3JlJ2AgZm9yXG4gKiBicm93c2VyIHJlc3RvcmF0aW9uIG9yIGAnYXV0b2NvbXBsZXRlJ2AgZm9yIHJlc3RvcmluZyB1c2VyIHZhbHVlcy5cbiAqL1xuZXhwb3J0IHR5cGUgRm9ybVJlc3RvcmVSZWFzb24gPSAncmVzdG9yZScgfCAnYXV0b2NvbXBsZXRlJztcbiJdLCJuYW1lcyI6WyJfYSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQWlCQSxNQUFNLGVBQThFO0FBQUEsRUFDbEYsVUFBVTtBQUFBLEVBQ1YsYUFBYTtBQUFBLEVBQ2IsaUJBQWlCO0FBQUEsRUFDakIsZUFBZTtBQUFBLEVBQ2YsZ0JBQWdCO0FBQUEsRUFDaEIsY0FBYztBQUFBLEVBQ2QsU0FBUztBQUFBLEVBQ1QsVUFBVTtBQUFBLEVBQ1YsY0FBYztBQUFBLEVBQ2QsY0FBYzs7QUFLaEIsSUFBSSxPQUFPLGtCQUFrQixhQUFhO0FBQ2xDLFFBQUEsZ0JBQWdCLE1BQU0sY0FBYTtBQUFBLElBQ3ZDLElBQVcsUUFBSztBQUNQLGFBQUE7QUFBQSxJQUFBO0FBQUEsSUFFVCxjQUFBO0FBQ1EsWUFBQSxJQUFJLFVBQVUscUJBQXFCO0FBQUEsSUFBQTtBQUFBO0FBRzdDLFNBQU8sUUFBUSxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUMsS0FBSyxLQUFLLE1B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
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { isServer } from "lit";
|
|
3
|
+
import { property } from "lit/decorators.js";
|
|
4
|
+
import { interactivityChecker, isArrowKeyPressed, getNextElementIndex } from "../a11y.js";
|
|
5
|
+
import { SbbConnectedAbortController, SbbLanguageController } from "../controllers.js";
|
|
6
|
+
import { i18nSelectionRequired } from "../i18n.js";
|
|
7
|
+
import { SbbDisabledMixin } from "./disabled-mixin.js";
|
|
8
|
+
import { SbbFormAssociatedMixin } from "./form-associated-mixin.js";
|
|
9
|
+
import { SbbRequiredMixin } from "./required-mixin.js";
|
|
10
|
+
const radioButtonRegistry = /* @__PURE__ */ new WeakMap();
|
|
11
|
+
const SbbFormAssociatedRadioButtonMixin = (superClass) => {
|
|
12
|
+
let SbbFormAssociatedRadioButtonElement = (() => {
|
|
13
|
+
var _a;
|
|
14
|
+
let _classSuper = SbbDisabledMixin(SbbRequiredMixin(SbbFormAssociatedMixin(superClass)));
|
|
15
|
+
let _instanceExtraInitializers = [];
|
|
16
|
+
let _set_checked_decorators;
|
|
17
|
+
return _a = class extends _classSuper {
|
|
18
|
+
/**
|
|
19
|
+
* Whether the radio button is checked.
|
|
20
|
+
*/
|
|
21
|
+
set checked(value) {
|
|
22
|
+
this._checked = !!value;
|
|
23
|
+
this.toggleAttribute("data-checked", this.checked);
|
|
24
|
+
this.internals.ariaChecked = this.checked.toString();
|
|
25
|
+
this.updateFormValue();
|
|
26
|
+
this._synchronizeGroupState();
|
|
27
|
+
}
|
|
28
|
+
get checked() {
|
|
29
|
+
return this._checked;
|
|
30
|
+
}
|
|
31
|
+
set name(value) {
|
|
32
|
+
super.name = value;
|
|
33
|
+
this._disconnectFromRegistry();
|
|
34
|
+
this._connectToRegistry();
|
|
35
|
+
this._synchronizeGroupState();
|
|
36
|
+
}
|
|
37
|
+
get name() {
|
|
38
|
+
return super.name;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Form type of element.
|
|
42
|
+
* @default 'radio'
|
|
43
|
+
*/
|
|
44
|
+
get type() {
|
|
45
|
+
return "radio";
|
|
46
|
+
}
|
|
47
|
+
constructor() {
|
|
48
|
+
var _a2;
|
|
49
|
+
super();
|
|
50
|
+
this._checked = (__runInitializers(this, _instanceExtraInitializers), false);
|
|
51
|
+
this.abort = new SbbConnectedAbortController(this);
|
|
52
|
+
this._languageController = new SbbLanguageController(this);
|
|
53
|
+
this.internals.role = "radio";
|
|
54
|
+
(_a2 = this.addEventListener) == null ? void 0 : _a2.call(this, "keydown", (e) => this._handleArrowKeyDown(e));
|
|
55
|
+
}
|
|
56
|
+
connectedCallback() {
|
|
57
|
+
super.connectedCallback();
|
|
58
|
+
this._connectToRegistry();
|
|
59
|
+
this._synchronizeGroupState();
|
|
60
|
+
}
|
|
61
|
+
disconnectedCallback() {
|
|
62
|
+
super.disconnectedCallback();
|
|
63
|
+
this._disconnectFromRegistry();
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Is called whenever the form is being reset.
|
|
67
|
+
* @internal
|
|
68
|
+
*/
|
|
69
|
+
formResetCallback() {
|
|
70
|
+
this.checked = this.hasAttribute("checked");
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Called when the browser is trying to restore element’s state to state in which case
|
|
74
|
+
* reason is "restore", or when the browser is trying to fulfill autofill on behalf of
|
|
75
|
+
* user in which case reason is "autocomplete".
|
|
76
|
+
* @internal
|
|
77
|
+
*/
|
|
78
|
+
formStateRestoreCallback(state, _reason) {
|
|
79
|
+
if (state) {
|
|
80
|
+
this.checked = state === this.value;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
willUpdate(changedProperties) {
|
|
84
|
+
super.willUpdate(changedProperties);
|
|
85
|
+
if (changedProperties.has("disabled")) {
|
|
86
|
+
this.updateFocusableRadios();
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
firstUpdated(changedProperties) {
|
|
90
|
+
super.firstUpdated(changedProperties);
|
|
91
|
+
this.updateFocusableRadios();
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Called on `value` change
|
|
95
|
+
* If 'checked', update the value. Otherwise, do nothing.
|
|
96
|
+
*/
|
|
97
|
+
updateFormValue() {
|
|
98
|
+
if (this.checked) {
|
|
99
|
+
this.internals.setFormValue(this.value, this.value);
|
|
100
|
+
} else {
|
|
101
|
+
this.internals.setFormValue(null);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
shouldValidate(name) {
|
|
105
|
+
return super.shouldValidate(name) || name === "checked" || name === "required";
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Sets the validity of all associated radio buttons.
|
|
109
|
+
* If any radio button is required, all associated are required as well.
|
|
110
|
+
*/
|
|
111
|
+
validate() {
|
|
112
|
+
super.validate();
|
|
113
|
+
if (!this.associatedRadioButtons) {
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
let required = false;
|
|
117
|
+
let checked = false;
|
|
118
|
+
for (const radio of this.associatedRadioButtons) {
|
|
119
|
+
required || (required = radio.required);
|
|
120
|
+
checked || (checked = radio.checked);
|
|
121
|
+
}
|
|
122
|
+
if (required && !checked) {
|
|
123
|
+
this.associatedRadioButtons.forEach((r) => r.setValidityFlag("valueMissing", i18nSelectionRequired[this._languageController.current]));
|
|
124
|
+
} else {
|
|
125
|
+
this.associatedRadioButtons.forEach((r) => r.removeValidityFlag("valueMissing"));
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Only a single radio should be focusable in the group. Defined as:
|
|
130
|
+
* - the checked radio;
|
|
131
|
+
* - the first non-disabled radio in DOM order;
|
|
132
|
+
*/
|
|
133
|
+
updateFocusableRadios() {
|
|
134
|
+
if (!this.hasUpdated) {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
137
|
+
const radios = this._interactableGroupedRadios();
|
|
138
|
+
const checkedIndex = radios.findIndex((r) => r.checked && !r.disabled && !r.formDisabled);
|
|
139
|
+
const focusableIndex = checkedIndex !== -1 ? checkedIndex : radios.findIndex((r) => !r.disabled && !r.formDisabled);
|
|
140
|
+
if (focusableIndex !== -1) {
|
|
141
|
+
radios[focusableIndex].tabIndex = 0;
|
|
142
|
+
radios.splice(focusableIndex, 1);
|
|
143
|
+
}
|
|
144
|
+
radios.forEach((r) => r.removeAttribute("tabindex"));
|
|
145
|
+
}
|
|
146
|
+
async navigateByKeyboard(next) {
|
|
147
|
+
next.checked = true;
|
|
148
|
+
this.emitChangeEvents();
|
|
149
|
+
await next.updateComplete;
|
|
150
|
+
next.focus();
|
|
151
|
+
}
|
|
152
|
+
emitChangeEvents() {
|
|
153
|
+
this.dispatchEvent(new InputEvent("input", { bubbles: true, cancelable: true, composed: true }));
|
|
154
|
+
this.dispatchEvent(new Event("change", { bubbles: true }));
|
|
155
|
+
}
|
|
156
|
+
_synchronizeGroupState() {
|
|
157
|
+
if (this.checked) {
|
|
158
|
+
this._deselectGroupedRadios();
|
|
159
|
+
}
|
|
160
|
+
this.updateFocusableRadios();
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Add `this` to the radioButton registry
|
|
164
|
+
*/
|
|
165
|
+
_connectToRegistry() {
|
|
166
|
+
if (!this.name || isServer) {
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
const root = this.form ?? this.getRootNode();
|
|
170
|
+
this._radioButtonGroupsMap = radioButtonRegistry.get(root);
|
|
171
|
+
if (!this._radioButtonGroupsMap) {
|
|
172
|
+
this._radioButtonGroupsMap = /* @__PURE__ */ new Map();
|
|
173
|
+
radioButtonRegistry.set(root, this._radioButtonGroupsMap);
|
|
174
|
+
}
|
|
175
|
+
this.associatedRadioButtons = this._radioButtonGroupsMap.get(this.name);
|
|
176
|
+
if (!this.associatedRadioButtons) {
|
|
177
|
+
this.associatedRadioButtons = /* @__PURE__ */ new Set();
|
|
178
|
+
this._radioButtonGroupsMap.set(this.name, this.associatedRadioButtons);
|
|
179
|
+
}
|
|
180
|
+
const entries = Array.from(this.associatedRadioButtons);
|
|
181
|
+
this.associatedRadioButtons.clear();
|
|
182
|
+
const index = entries.findIndex((r) => this.compareDocumentPosition(r) & Node.DOCUMENT_POSITION_FOLLOWING);
|
|
183
|
+
if (index !== -1) {
|
|
184
|
+
entries.splice(index, 0, this);
|
|
185
|
+
} else {
|
|
186
|
+
entries.push(this);
|
|
187
|
+
}
|
|
188
|
+
entries.forEach((r) => this.associatedRadioButtons.add(r));
|
|
189
|
+
this.validate();
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Remove `this` from the radioButton registry and, if the group is empty, delete the entry from the groups Map
|
|
193
|
+
*/
|
|
194
|
+
_disconnectFromRegistry() {
|
|
195
|
+
var _a2, _b, _c;
|
|
196
|
+
(_a2 = this.associatedRadioButtons) == null ? void 0 : _a2.delete(this);
|
|
197
|
+
if (((_b = this.associatedRadioButtons) == null ? void 0 : _b.size) === 0) {
|
|
198
|
+
(_c = this._radioButtonGroupsMap) == null ? void 0 : _c.delete(this.name);
|
|
199
|
+
} else {
|
|
200
|
+
this.validate();
|
|
201
|
+
}
|
|
202
|
+
this.associatedRadioButtons = void 0;
|
|
203
|
+
this._radioButtonGroupsMap = void 0;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Return a list of 'interactable' grouped radios, ordered in DOM order
|
|
207
|
+
*/
|
|
208
|
+
_interactableGroupedRadios() {
|
|
209
|
+
return Array.from(this.associatedRadioButtons ?? []).filter((el) => interactivityChecker.isVisible(el));
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Deselect other radio of the same group
|
|
213
|
+
*/
|
|
214
|
+
_deselectGroupedRadios() {
|
|
215
|
+
Array.from(this.associatedRadioButtons ?? []).filter((r) => r !== this).forEach((r) => r.checked = false);
|
|
216
|
+
}
|
|
217
|
+
async _handleArrowKeyDown(evt) {
|
|
218
|
+
if (!isArrowKeyPressed(evt)) {
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
evt.preventDefault();
|
|
222
|
+
const enabledRadios = this._interactableGroupedRadios().filter((r) => !r.disabled && !r.formDisabled);
|
|
223
|
+
const current = enabledRadios.indexOf(this);
|
|
224
|
+
const nextIndex = getNextElementIndex(evt, current, enabledRadios.length);
|
|
225
|
+
await this.navigateByKeyboard(enabledRadios[nextIndex]);
|
|
226
|
+
}
|
|
227
|
+
}, (() => {
|
|
228
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
229
|
+
_set_checked_decorators = [property({ type: Boolean })];
|
|
230
|
+
__esDecorate(_a, null, _set_checked_decorators, { kind: "setter", name: "checked", static: false, private: false, access: { has: (obj) => "checked" in obj, set: (obj, value) => {
|
|
231
|
+
obj.checked = value;
|
|
232
|
+
} }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
233
|
+
if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
234
|
+
})(), _a;
|
|
235
|
+
})();
|
|
236
|
+
return SbbFormAssociatedRadioButtonElement;
|
|
237
|
+
};
|
|
238
|
+
export {
|
|
239
|
+
SbbFormAssociatedRadioButtonMixin,
|
|
240
|
+
radioButtonRegistry
|
|
241
|
+
};
|
|
242
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1hc3NvY2lhdGVkLXJhZGlvLWJ1dHRvbi1taXhpbi5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvbWl4aW5zL2Zvcm0tYXNzb2NpYXRlZC1yYWRpby1idXR0b24tbWl4aW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNTZXJ2ZXIsIHR5cGUgTGl0RWxlbWVudCwgdHlwZSBQcm9wZXJ0eVZhbHVlcyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHsgZ2V0TmV4dEVsZW1lbnRJbmRleCwgaW50ZXJhY3Rpdml0eUNoZWNrZXIsIGlzQXJyb3dLZXlQcmVzc2VkIH0gZnJvbSAnLi4vYTExeS5qcyc7XG5pbXBvcnQgeyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIsIFNiYkxhbmd1YWdlQ29udHJvbGxlciB9IGZyb20gJy4uL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGkxOG5TZWxlY3Rpb25SZXF1aXJlZCB9IGZyb20gJy4uL2kxOG4uanMnO1xuXG5pbXBvcnQgdHlwZSB7IENvbnN0cnVjdG9yIH0gZnJvbSAnLi9jb25zdHJ1Y3Rvci5qcyc7XG5pbXBvcnQgeyBTYmJEaXNhYmxlZE1peGluLCB0eXBlIFNiYkRpc2FibGVkTWl4aW5UeXBlIH0gZnJvbSAnLi9kaXNhYmxlZC1taXhpbi5qcyc7XG5pbXBvcnQge1xuICB0eXBlIEZvcm1SZXN0b3JlUmVhc29uLFxuICB0eXBlIEZvcm1SZXN0b3JlU3RhdGUsXG4gIFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW4sXG4gIHR5cGUgU2JiRm9ybUFzc29jaWF0ZWRNaXhpblR5cGUsXG59IGZyb20gJy4vZm9ybS1hc3NvY2lhdGVkLW1peGluLmpzJztcbmltcG9ydCB7IFNiYlJlcXVpcmVkTWl4aW4sIHR5cGUgU2JiUmVxdWlyZWRNaXhpblR5cGUgfSBmcm9tICcuL3JlcXVpcmVkLW1peGluLmpzJztcblxuLyoqXG4gKiBBIHN0YXRpYyByZWdpc3RyeSB0aGF0IGhvbGRzIGEgY29sbGVjdGlvbiBvZiBncm91cGVkIGByYWRpby1idXR0b25zYC5cbiAqIEdyb3VwcyBvZiByYWRpbyBidXR0b25zIGFyZSBsb2NhbCB0byB0aGUgZm9ybSB0aGV5IGJlbG9uZyAob3IgdGhlIGByZW5kZXJSb290YCBpZiB0aGV5J3JlIG5vdCBwYXJ0IG9mIGFueSBmb3JtKVxuICogTXVsdGlwbGUgZ3JvdXBzIG9mIHJhZGlvIHdpdGggdGhlIHNhbWUgbmFtZSBjYW4gY29leGlzdCAoYXMgbG9uZyBhcyB0aGV5IGJlbG9uZyB0byBhIGRpZmZlcmVudCBmb3JtIC8gcmVuZGVyUm9vdClcbiAqIEl0IGlzIG1haW5seSB1c2VkIHRvIHN1cHBvcnQgdGhlIHN0YW5kYWxvbmUgZ3JvdXBzIG9mIHJhZGlvcy5cbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY29uc3QgcmFkaW9CdXR0b25SZWdpc3RyeSA9IG5ldyBXZWFrTWFwPFxuICBOb2RlLFxuICBNYXA8c3RyaW5nLCBTZXQ8U2JiRm9ybUFzc29jaWF0ZWRSYWRpb0J1dHRvbk1peGluVHlwZT4+XG4+KCk7XG5cbmV4cG9ydCBkZWNsYXJlIGNsYXNzIFNiYkZvcm1Bc3NvY2lhdGVkUmFkaW9CdXR0b25NaXhpblR5cGVcbiAgZXh0ZW5kcyBTYmJGb3JtQXNzb2NpYXRlZE1peGluVHlwZVxuICBpbXBsZW1lbnRzIFBhcnRpYWw8U2JiRGlzYWJsZWRNaXhpblR5cGU+LCBQYXJ0aWFsPFNiYlJlcXVpcmVkTWl4aW5UeXBlPlxue1xuICBwdWJsaWMgYWNjZXNzb3IgY2hlY2tlZDogYm9vbGVhbjtcbiAgcHVibGljIGFjY2Vzc29yIGRpc2FibGVkOiBib29sZWFuO1xuICBwdWJsaWMgYWNjZXNzb3IgcmVxdWlyZWQ6IGJvb2xlYW47XG5cbiAgcHJvdGVjdGVkIGFzc29jaWF0ZWRSYWRpb0J1dHRvbnM/OiBTZXQ8U2JiRm9ybUFzc29jaWF0ZWRSYWRpb0J1dHRvbk1peGluVHlwZT47XG4gIC8qKiBAZGVwcmVjYXRlZCBObyBsb25nZXIgdXNlZCBpbnRlcm5hbGx5LiAqL1xuICBwcm90ZWN0ZWQgYWJvcnQ6IFNiYkNvbm5lY3RlZEFib3J0Q29udHJvbGxlcjtcblxuICBwdWJsaWMgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZDtcbiAgcHVibGljIGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsIHJlYXNvbjogRm9ybVJlc3RvcmVSZWFzb24pOiB2b2lkO1xuXG4gIHByb3RlY3RlZCBpc0Rpc2FibGVkRXh0ZXJuYWxseSgpOiBib29sZWFuO1xuICBwcm90ZWN0ZWQgaXNSZXF1aXJlZEV4dGVybmFsbHkoKTogYm9vbGVhbjtcbiAgcHJvdGVjdGVkIHdpdGhVc2VySW50ZXJhY3Rpb24/KCk6IHZvaWQ7XG4gIHByb3RlY3RlZCB1cGRhdGVGb3JtVmFsdWUoKTogdm9pZDtcbiAgcHJvdGVjdGVkIHVwZGF0ZUZvY3VzYWJsZVJhZGlvcygpOiB2b2lkO1xuICBwcm90ZWN0ZWQgZW1pdENoYW5nZUV2ZW50cygpOiB2b2lkO1xuICBwcm90ZWN0ZWQgbmF2aWdhdGVCeUtleWJvYXJkKHJhZGlvOiBTYmJGb3JtQXNzb2NpYXRlZFJhZGlvQnV0dG9uTWl4aW5UeXBlKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuLyoqXG4gKiBUaGUgU2JiRm9ybUFzc29jaWF0ZWRSYWRpb0J1dHRvbk1peGluIGVuYWJsZXMgbmF0aXZlIGZvcm0gc3VwcG9ydCBmb3IgcmFkaW8gY29udHJvbHMuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBjb25zdCBTYmJGb3JtQXNzb2NpYXRlZFJhZGlvQnV0dG9uTWl4aW4gPSA8VCBleHRlbmRzIENvbnN0cnVjdG9yPExpdEVsZW1lbnQ+PihcbiAgc3VwZXJDbGFzczogVCxcbik6IENvbnN0cnVjdG9yPFNiYkZvcm1Bc3NvY2lhdGVkUmFkaW9CdXR0b25NaXhpblR5cGU+ICYgVCA9PiB7XG4gIGNsYXNzIFNiYkZvcm1Bc3NvY2lhdGVkUmFkaW9CdXR0b25FbGVtZW50XG4gICAgZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKFNiYlJlcXVpcmVkTWl4aW4oU2JiRm9ybUFzc29jaWF0ZWRNaXhpbihzdXBlckNsYXNzKSkpXG4gICAgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYkZvcm1Bc3NvY2lhdGVkUmFkaW9CdXR0b25NaXhpblR5cGU+XG4gIHtcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSByYWRpbyBidXR0b24gaXMgY2hlY2tlZC5cbiAgICAgKi9cbiAgICBAcHJvcGVydHkoeyB0eXBlOiBCb29sZWFuIH0pXG4gICAgcHVibGljIHNldCBjaGVja2VkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICB0aGlzLl9jaGVja2VkID0gISF2YWx1ZTtcblxuICAgICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtY2hlY2tlZCcsIHRoaXMuY2hlY2tlZCk7XG4gICAgICB0aGlzLmludGVybmFscy5hcmlhQ2hlY2tlZCA9IHRoaXMuY2hlY2tlZC50b1N0cmluZygpO1xuICAgICAgdGhpcy51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICAgIHRoaXMuX3N5bmNocm9uaXplR3JvdXBTdGF0ZSgpO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IGNoZWNrZWQoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5fY2hlY2tlZDtcbiAgICB9XG4gICAgcHJpdmF0ZSBfY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgcHVibGljIG92ZXJyaWRlIHNldCBuYW1lKHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgIHN1cGVyLm5hbWUgPSB2YWx1ZTtcblxuICAgICAgdGhpcy5fZGlzY29ubmVjdEZyb21SZWdpc3RyeSgpO1xuICAgICAgdGhpcy5fY29ubmVjdFRvUmVnaXN0cnkoKTtcbiAgICAgIHRoaXMuX3N5bmNocm9uaXplR3JvdXBTdGF0ZSgpO1xuICAgIH1cbiAgICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiBzdXBlci5uYW1lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZvcm0gdHlwZSBvZiBlbGVtZW50LlxuICAgICAqIEBkZWZhdWx0ICdyYWRpbydcbiAgICAgKi9cbiAgICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IHR5cGUoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiAncmFkaW8nO1xuICAgIH1cblxuICAgIC8qKiBAZGVwcmVjYXRlZCBObyBsb25nZXIgdXNlZCBpbnRlcm5hbGx5LiAqL1xuICAgIHByb3RlY3RlZCBhYm9ydCA9IG5ldyBTYmJDb25uZWN0ZWRBYm9ydENvbnRyb2xsZXIodGhpcyk7XG5cbiAgICAvKipcbiAgICAgKiBTZXQgb2YgcmFkaW8gYnV0dG9ucyB0aGF0IGJlbG9uZ3MgdG8gdGhlIHNhbWUgZ3JvdXAgb2YgYHRoaXNgLlxuICAgICAqIEFzc3VtZSB0aGVtIG9yZGVyZWQgaW4gRE9NIG9yZGVyXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGFzc29jaWF0ZWRSYWRpb0J1dHRvbnM/OiBTZXQ8U2JiRm9ybUFzc29jaWF0ZWRSYWRpb0J1dHRvbkVsZW1lbnQ+O1xuICAgIHByaXZhdGUgX3JhZGlvQnV0dG9uR3JvdXBzTWFwPzogTWFwPHN0cmluZywgU2V0PFNiYkZvcm1Bc3NvY2lhdGVkUmFkaW9CdXR0b25NaXhpblR5cGU+PjtcbiAgICBwcml2YXRlIF9sYW5ndWFnZUNvbnRyb2xsZXIgPSBuZXcgU2JiTGFuZ3VhZ2VDb250cm9sbGVyKHRoaXMpO1xuXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKCkge1xuICAgICAgc3VwZXIoKTtcbiAgICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICAgIHRoaXMuaW50ZXJuYWxzLnJvbGUgPSAncmFkaW8nO1xuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyPy4oJ2tleWRvd24nLCAoZSkgPT4gdGhpcy5faGFuZGxlQXJyb3dLZXlEb3duKGUpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgICAgdGhpcy5fY29ubmVjdFRvUmVnaXN0cnkoKTtcbiAgICAgIHRoaXMuX3N5bmNocm9uaXplR3JvdXBTdGF0ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBkaXNjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgICB0aGlzLl9kaXNjb25uZWN0RnJvbVJlZ2lzdHJ5KCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSXMgY2FsbGVkIHdoZW5ldmVyIHRoZSBmb3JtIGlzIGJlaW5nIHJlc2V0LlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBvdmVycmlkZSBmb3JtUmVzZXRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICAgIHRoaXMuY2hlY2tlZCA9IHRoaXMuaGFzQXR0cmlidXRlKCdjaGVja2VkJyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogIENhbGxlZCB3aGVuIHRoZSBicm93c2VyIGlzIHRyeWluZyB0byByZXN0b3JlIGVsZW1lbnTigJlzIHN0YXRlIHRvIHN0YXRlIGluIHdoaWNoIGNhc2VcbiAgICAgKiAgcmVhc29uIGlzIFwicmVzdG9yZVwiLCBvciB3aGVuIHRoZSBicm93c2VyIGlzIHRyeWluZyB0byBmdWxmaWxsIGF1dG9maWxsIG9uIGJlaGFsZiBvZlxuICAgICAqICB1c2VyIGluIHdoaWNoIGNhc2UgcmVhc29uIGlzIFwiYXV0b2NvbXBsZXRlXCIuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIG92ZXJyaWRlIGZvcm1TdGF0ZVJlc3RvcmVDYWxsYmFjayhcbiAgICAgIHN0YXRlOiBGb3JtUmVzdG9yZVN0YXRlIHwgbnVsbCxcbiAgICAgIF9yZWFzb246IEZvcm1SZXN0b3JlUmVhc29uLFxuICAgICk6IHZvaWQge1xuICAgICAgaWYgKHN0YXRlKSB7XG4gICAgICAgIHRoaXMuY2hlY2tlZCA9IHN0YXRlID09PSB0aGlzLnZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2Rpc2FibGVkJykpIHtcbiAgICAgICAgdGhpcy51cGRhdGVGb2N1c2FibGVSYWRpb3MoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcbiAgICAgIHRoaXMudXBkYXRlRm9jdXNhYmxlUmFkaW9zKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsbGVkIG9uIGB2YWx1ZWAgY2hhbmdlXG4gICAgICogSWYgJ2NoZWNrZWQnLCB1cGRhdGUgdGhlIHZhbHVlLiBPdGhlcndpc2UsIGRvIG5vdGhpbmcuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHVwZGF0ZUZvcm1WYWx1ZSgpOiB2b2lkIHtcbiAgICAgIGlmICh0aGlzLmNoZWNrZWQpIHtcbiAgICAgICAgdGhpcy5pbnRlcm5hbHMuc2V0Rm9ybVZhbHVlKHRoaXMudmFsdWUsIHRoaXMudmFsdWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5pbnRlcm5hbHMuc2V0Rm9ybVZhbHVlKG51bGwpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBzaG91bGRWYWxpZGF0ZShuYW1lOiBQcm9wZXJ0eUtleSB8IHVuZGVmaW5lZCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHN1cGVyLnNob3VsZFZhbGlkYXRlKG5hbWUpIHx8IG5hbWUgPT09ICdjaGVja2VkJyB8fCBuYW1lID09PSAncmVxdWlyZWQnO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIHZhbGlkaXR5IG9mIGFsbCBhc3NvY2lhdGVkIHJhZGlvIGJ1dHRvbnMuXG4gICAgICogSWYgYW55IHJhZGlvIGJ1dHRvbiBpcyByZXF1aXJlZCwgYWxsIGFzc29jaWF0ZWQgYXJlIHJlcXVpcmVkIGFzIHdlbGwuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHZhbGlkYXRlKCk6IHZvaWQge1xuICAgICAgc3VwZXIudmFsaWRhdGUoKTtcbiAgICAgIGlmICghdGhpcy5hc3NvY2lhdGVkUmFkaW9CdXR0b25zKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgbGV0IHJlcXVpcmVkID0gZmFsc2U7XG4gICAgICBsZXQgY2hlY2tlZCA9IGZhbHNlO1xuICAgICAgZm9yIChjb25zdCByYWRpbyBvZiB0aGlzLmFzc29jaWF0ZWRSYWRpb0J1dHRvbnMpIHtcbiAgICAgICAgcmVxdWlyZWQgfHw9IHJhZGlvLnJlcXVpcmVkO1xuICAgICAgICBjaGVja2VkIHx8PSByYWRpby5jaGVja2VkO1xuICAgICAgfVxuXG4gICAgICBpZiAocmVxdWlyZWQgJiYgIWNoZWNrZWQpIHtcbiAgICAgICAgdGhpcy5hc3NvY2lhdGVkUmFkaW9CdXR0b25zLmZvckVhY2goKHIpID0+XG4gICAgICAgICAgci5zZXRWYWxpZGl0eUZsYWcoXG4gICAgICAgICAgICAndmFsdWVNaXNzaW5nJyxcbiAgICAgICAgICAgIGkxOG5TZWxlY3Rpb25SZXF1aXJlZFt0aGlzLl9sYW5ndWFnZUNvbnRyb2xsZXIuY3VycmVudF0sXG4gICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuYXNzb2NpYXRlZFJhZGlvQnV0dG9ucy5mb3JFYWNoKChyKSA9PiByLnJlbW92ZVZhbGlkaXR5RmxhZygndmFsdWVNaXNzaW5nJykpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE9ubHkgYSBzaW5nbGUgcmFkaW8gc2hvdWxkIGJlIGZvY3VzYWJsZSBpbiB0aGUgZ3JvdXAuIERlZmluZWQgYXM6XG4gICAgICogLSB0aGUgY2hlY2tlZCByYWRpbztcbiAgICAgKiAtIHRoZSBmaXJzdCBub24tZGlzYWJsZWQgcmFkaW8gaW4gRE9NIG9yZGVyO1xuICAgICAqL1xuICAgIHByb3RlY3RlZCB1cGRhdGVGb2N1c2FibGVSYWRpb3MoKTogdm9pZCB7XG4gICAgICBpZiAoIXRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCByYWRpb3MgPSB0aGlzLl9pbnRlcmFjdGFibGVHcm91cGVkUmFkaW9zKCk7XG4gICAgICBjb25zdCBjaGVja2VkSW5kZXggPSByYWRpb3MuZmluZEluZGV4KChyKSA9PiByLmNoZWNrZWQgJiYgIXIuZGlzYWJsZWQgJiYgIXIuZm9ybURpc2FibGVkKTtcbiAgICAgIGNvbnN0IGZvY3VzYWJsZUluZGV4ID1cbiAgICAgICAgY2hlY2tlZEluZGV4ICE9PSAtMVxuICAgICAgICAgID8gY2hlY2tlZEluZGV4XG4gICAgICAgICAgOiByYWRpb3MuZmluZEluZGV4KChyKSA9PiAhci5kaXNhYmxlZCAmJiAhci5mb3JtRGlzYWJsZWQpOyAvLyBHZXQgdGhlIGZpcnN0IGZvY3VzYWJsZSByYWRpb1xuXG4gICAgICBpZiAoZm9jdXNhYmxlSW5kZXggIT09IC0xKSB7XG4gICAgICAgIHJhZGlvc1tmb2N1c2FibGVJbmRleF0udGFiSW5kZXggPSAwO1xuICAgICAgICByYWRpb3Muc3BsaWNlKGZvY3VzYWJsZUluZGV4LCAxKTtcbiAgICAgIH1cblxuICAgICAgLy8gUmVzZXQgdGFiSW5kZXggb24gb3RoZXIgcmFkaW9zXG4gICAgICByYWRpb3MuZm9yRWFjaCgocikgPT4gci5yZW1vdmVBdHRyaWJ1dGUoJ3RhYmluZGV4JykpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBhc3luYyBuYXZpZ2F0ZUJ5S2V5Ym9hcmQobmV4dDogU2JiRm9ybUFzc29jaWF0ZWRSYWRpb0J1dHRvbkVsZW1lbnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgIG5leHQuY2hlY2tlZCA9IHRydWU7XG4gICAgICB0aGlzLmVtaXRDaGFuZ2VFdmVudHMoKTtcblxuICAgICAgYXdhaXQgbmV4dC51cGRhdGVDb21wbGV0ZTtcbiAgICAgIG5leHQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZW1pdENoYW5nZUV2ZW50cygpOiB2b2lkIHtcbiAgICAgIC8vIE1hbnVhbGx5IGRpc3BhdGNoIGV2ZW50cyB0byBzaW11bGF0ZSBhIHVzZXIgaW50ZXJhY3Rpb25cbiAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChcbiAgICAgICAgbmV3IElucHV0RXZlbnQoJ2lucHV0JywgeyBidWJibGVzOiB0cnVlLCBjYW5jZWxhYmxlOiB0cnVlLCBjb21wb3NlZDogdHJ1ZSB9KSxcbiAgICAgICk7XG4gICAgICB0aGlzLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCdjaGFuZ2UnLCB7IGJ1YmJsZXM6IHRydWUgfSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3N5bmNocm9uaXplR3JvdXBTdGF0ZSgpOiB2b2lkIHtcbiAgICAgIGlmICh0aGlzLmNoZWNrZWQpIHtcbiAgICAgICAgdGhpcy5fZGVzZWxlY3RHcm91cGVkUmFkaW9zKCk7XG4gICAgICB9XG4gICAgICB0aGlzLnVwZGF0ZUZvY3VzYWJsZVJhZGlvcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCBgdGhpc2AgdG8gdGhlIHJhZGlvQnV0dG9uIHJlZ2lzdHJ5XG4gICAgICovXG4gICAgcHJpdmF0ZSBfY29ubmVjdFRvUmVnaXN0cnkoKTogdm9pZCB7XG4gICAgICBpZiAoIXRoaXMubmFtZSB8fCBpc1NlcnZlcikge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJvb3QgPSB0aGlzLmZvcm0gPz8gdGhpcy5nZXRSb290Tm9kZSgpO1xuICAgICAgdGhpcy5fcmFkaW9CdXR0b25Hcm91cHNNYXAgPSByYWRpb0J1dHRvblJlZ2lzdHJ5LmdldChyb290KTtcblxuICAgICAgLy8gSW5pdGlhbGl6ZSB0aGUgJ3Jvb3QnIG1hcCBlbnRyeVxuICAgICAgaWYgKCF0aGlzLl9yYWRpb0J1dHRvbkdyb3Vwc01hcCkge1xuICAgICAgICB0aGlzLl9yYWRpb0J1dHRvbkdyb3Vwc01hcCA9IG5ldyBNYXAoKTtcbiAgICAgICAgcmFkaW9CdXR0b25SZWdpc3RyeS5zZXQocm9vdCwgdGhpcy5fcmFkaW9CdXR0b25Hcm91cHNNYXApO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmFzc29jaWF0ZWRSYWRpb0J1dHRvbnMgPSB0aGlzLl9yYWRpb0J1dHRvbkdyb3Vwc01hcC5nZXQoXG4gICAgICAgIHRoaXMubmFtZSxcbiAgICAgICkgYXMgdW5rbm93biBhcyBTZXQ8U2JiRm9ybUFzc29jaWF0ZWRSYWRpb0J1dHRvbkVsZW1lbnQ+O1xuXG4gICAgICAvLyBJbml0aWFsaXplIHRoZSBncm91cCBzZXRcbiAgICAgIGlmICghdGhpcy5hc3NvY2lhdGVkUmFkaW9CdXR0b25zKSB7XG4gICAgICAgIHRoaXMuYXNzb2NpYXRlZFJhZGlvQnV0dG9ucyA9IG5ldyBTZXQoKTtcbiAgICAgICAgdGhpcy5fcmFkaW9CdXR0b25Hcm91cHNNYXAuc2V0KFxuICAgICAgICAgIHRoaXMubmFtZSxcbiAgICAgICAgICB0aGlzLmFzc29jaWF0ZWRSYWRpb0J1dHRvbnMgYXMgdW5rbm93biBhcyBTZXQ8U2JiRm9ybUFzc29jaWF0ZWRSYWRpb0J1dHRvbk1peGluVHlwZT4sXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIC8vIEluc2VydCB0aGUgbmV3IHJhZGlvIGludG8gdGhlIHNldCBhbmQgc29ydCBmb2xsb3dpbmcgdGhlIERPTSBvcmRlci5cbiAgICAgIC8vIFNpbmNlIHRoZSBvcmRlciBvZiBhICdTZXQnIGlzIHRoZSBpbnNlcnQgb3JkZXIsIHdlIGhhdmUgdG8gZW1wdHkgaXQgYW5kIHJlLWluc2VydCByYWRpb3MgaW4gb3JkZXJcbiAgICAgIGNvbnN0IGVudHJpZXMgPSBBcnJheS5mcm9tKHRoaXMuYXNzb2NpYXRlZFJhZGlvQnV0dG9ucyk7XG4gICAgICB0aGlzLmFzc29jaWF0ZWRSYWRpb0J1dHRvbnMuY2xlYXIoKTtcblxuICAgICAgLy8gRmluZCBgdGhpc2AgcG9zaXRpb24gYW5kIGluc2VydCBpdFxuICAgICAgY29uc3QgaW5kZXggPSBlbnRyaWVzLmZpbmRJbmRleChcbiAgICAgICAgKHIpID0+IHRoaXMuY29tcGFyZURvY3VtZW50UG9zaXRpb24ocikgJiBOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0ZPTExPV0lORyxcbiAgICAgICk7XG4gICAgICBpZiAoaW5kZXggIT09IC0xKSB7XG4gICAgICAgIGVudHJpZXMuc3BsaWNlKGluZGV4LCAwLCB0aGlzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGVudHJpZXMucHVzaCh0aGlzKTtcbiAgICAgIH1cblxuICAgICAgLy8gUmVwb3B1bGF0ZSB0aGUgU2V0XG4gICAgICBlbnRyaWVzLmZvckVhY2goKHIpID0+IHRoaXMuYXNzb2NpYXRlZFJhZGlvQnV0dG9ucyEuYWRkKHIpKTtcblxuICAgICAgdGhpcy52YWxpZGF0ZSgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSBgdGhpc2AgZnJvbSB0aGUgcmFkaW9CdXR0b24gcmVnaXN0cnkgYW5kLCBpZiB0aGUgZ3JvdXAgaXMgZW1wdHksIGRlbGV0ZSB0aGUgZW50cnkgZnJvbSB0aGUgZ3JvdXBzIE1hcFxuICAgICAqL1xuICAgIHByaXZhdGUgX2Rpc2Nvbm5lY3RGcm9tUmVnaXN0cnkoKTogdm9pZCB7XG4gICAgICB0aGlzLmFzc29jaWF0ZWRSYWRpb0J1dHRvbnM/LmRlbGV0ZSh0aGlzKTtcblxuICAgICAgaWYgKHRoaXMuYXNzb2NpYXRlZFJhZGlvQnV0dG9ucz8uc2l6ZSA9PT0gMCkge1xuICAgICAgICB0aGlzLl9yYWRpb0J1dHRvbkdyb3Vwc01hcD8uZGVsZXRlKHRoaXMubmFtZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnZhbGlkYXRlKCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuYXNzb2NpYXRlZFJhZGlvQnV0dG9ucyA9IHVuZGVmaW5lZDtcbiAgICAgIHRoaXMuX3JhZGlvQnV0dG9uR3JvdXBzTWFwID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybiBhIGxpc3Qgb2YgJ2ludGVyYWN0YWJsZScgZ3JvdXBlZCByYWRpb3MsIG9yZGVyZWQgaW4gRE9NIG9yZGVyXG4gICAgICovXG4gICAgcHJpdmF0ZSBfaW50ZXJhY3RhYmxlR3JvdXBlZFJhZGlvcygpOiBTYmJGb3JtQXNzb2NpYXRlZFJhZGlvQnV0dG9uRWxlbWVudFtdIHtcbiAgICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuYXNzb2NpYXRlZFJhZGlvQnV0dG9ucyA/PyBbXSkuZmlsdGVyKChlbCkgPT5cbiAgICAgICAgaW50ZXJhY3Rpdml0eUNoZWNrZXIuaXNWaXNpYmxlKGVsKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVzZWxlY3Qgb3RoZXIgcmFkaW8gb2YgdGhlIHNhbWUgZ3JvdXBcbiAgICAgKi9cbiAgICBwcml2YXRlIF9kZXNlbGVjdEdyb3VwZWRSYWRpb3MoKTogdm9pZCB7XG4gICAgICBBcnJheS5mcm9tKHRoaXMuYXNzb2NpYXRlZFJhZGlvQnV0dG9ucyA/PyBbXSlcbiAgICAgICAgLmZpbHRlcigocikgPT4gciAhPT0gdGhpcylcbiAgICAgICAgLmZvckVhY2goKHIpID0+IChyLmNoZWNrZWQgPSBmYWxzZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXN5bmMgX2hhbmRsZUFycm93S2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgIGlmICghaXNBcnJvd0tleVByZXNzZWQoZXZ0KSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBldnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgY29uc3QgZW5hYmxlZFJhZGlvcyA9IHRoaXMuX2ludGVyYWN0YWJsZUdyb3VwZWRSYWRpb3MoKS5maWx0ZXIoXG4gICAgICAgIChyKSA9PiAhci5kaXNhYmxlZCAmJiAhci5mb3JtRGlzYWJsZWQsXG4gICAgICApO1xuICAgICAgY29uc3QgY3VycmVudDogbnVtYmVyID0gZW5hYmxlZFJhZGlvcy5pbmRleE9mKHRoaXMpO1xuICAgICAgY29uc3QgbmV4dEluZGV4OiBudW1iZXIgPSBnZXROZXh0RWxlbWVudEluZGV4KGV2dCwgY3VycmVudCwgZW5hYmxlZFJhZGlvcy5sZW5ndGgpO1xuXG4gICAgICBhd2FpdCB0aGlzLm5hdmlnYXRlQnlLZXlib2FyZChlbmFibGVkUmFkaW9zW25leHRJbmRleF0pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBTYmJGb3JtQXNzb2NpYXRlZFJhZGlvQnV0dG9uRWxlbWVudCBhcyB1bmtub3duIGFzIENvbnN0cnVjdG9yPFNiYkZvcm1Bc3NvY2lhdGVkUmFkaW9CdXR0b25NaXhpblR5cGU+ICZcbiAgICBUO1xufTtcbiJdLCJuYW1lcyI6WyJfYSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBd0JhLE1BQUEsMENBQTBCO0FBaUMxQixNQUFBLG9DQUFvQyxDQUMvQyxlQUMwRDtNQUNwRCx1Q0FBbUMsTUFBQTs7c0JBQy9CLGlCQUFpQixpQkFBaUIsdUJBQXVCLFVBQVUsQ0FBQyxDQUFDOzs7QUFEekUsV0FBQSxtQkFDSSxZQUFzRTtBQUFBO0FBQUE7QUFBQTtBQUFBLE1BTzlFLElBQVcsUUFBUSxPQUFjO0FBQzFCLGFBQUEsV0FBVyxDQUFDLENBQUM7QUFFYixhQUFBLGdCQUFnQixnQkFBZ0IsS0FBSyxPQUFPO0FBQ2pELGFB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
|