@sbb-esta/lyne-elements 2.11.0 → 2.11.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accordion/accordion.component.js +19 -22
- package/action-group/action-group.component.js +3 -5
- package/alert/alert/alert.component.js +1 -2
- package/alert/alert-group/alert-group.component.js +2 -3
- package/autocomplete/autocomplete-base-element.js +71 -82
- package/autocomplete/autocomplete.component.js +31 -36
- package/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +44 -52
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +3 -4
- package/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +17 -20
- package/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +23 -26
- package/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +9 -9
- package/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +29 -33
- package/button/mini-button/mini-button.component.js +1 -1
- package/button/mini-button-group/mini-button-group.component.js +1 -2
- package/calendar/calendar.component.js +8 -13
- package/card/card/card.component.js +12 -12
- package/card/card-badge/card-badge.component.js +16 -16
- package/card/common/card-action-common.js +23 -25
- package/checkbox/checkbox/checkbox.component.js +17 -20
- package/checkbox/checkbox-group/checkbox-group.component.js +39 -52
- package/checkbox/checkbox-panel/checkbox-panel.component.js +22 -25
- package/checkbox/common/checkbox-common.js +13 -15
- package/chip/chip-group/chip-group.component.js +59 -70
- package/clock/clock.component.js +50 -60
- package/container/container/container.component.js +28 -29
- package/container/sticky-bar/sticky-bar.component.js +26 -27
- package/core/a11y/focus-trap-controller.js +11 -14
- package/core/a11y/focus.js +27 -29
- package/core/a11y/input-modality-detector.js +18 -19
- package/core/a11y/interactivity-checker.js +10 -10
- package/core/base-elements/button-base-element.js +13 -18
- package/core/base-elements/link-base-element.js +3 -6
- package/core/base-elements/open-close-base-element.js +1 -1
- package/core/controllers/connected-abort-controller.js +2 -4
- package/core/controllers/escapable-overlay-controller.js +10 -12
- package/core/controllers/id-reference-controller.js +13 -14
- package/core/controllers/inert-controller.js +8 -10
- package/core/controllers/slot-state-controller.js +16 -26
- package/core/datetime/date-adapter.d.ts.map +1 -1
- package/core/datetime/date-adapter.js +21 -21
- package/core/datetime/native-date-adapter.js +11 -11
- package/core/decorators/date-converter.js +10 -12
- package/core/decorators/date-only-type.js +5 -6
- package/core/decorators/force-type.js +4 -5
- package/core/dom/breakpoint.js +8 -8
- package/core/dom/input-element.js +4 -9
- package/core/eventing/event-emitter.js +4 -5
- package/core/mixins/form-associated-checkbox-mixin.js +32 -37
- package/core/mixins/form-associated-input-mixin.js +58 -64
- package/core/mixins/form-associated-mixin.js +42 -44
- package/core/mixins/form-associated-radio-button-mixin.js +3 -5
- package/core/mixins/hydration-mixin.js +12 -13
- package/core/mixins/named-slot-list-mixin.js +32 -37
- package/core/mixins/panel-mixin.js +26 -27
- package/core/mixins.js +1 -1
- package/core/overlay/position.js +23 -23
- package/core/styles/core/mediaqueries.scss +1 -1
- package/core/styles/core.scss +27 -28
- package/core/styles/mixins/table.scss +1 -24
- package/core/styles/mixins/typo.scss +0 -1
- package/core/testing/event-spy.js +2 -4
- package/core/testing/wait-for-image-ready.js +8 -9
- package/core/testing/wait-for-render.js +8 -9
- package/custom-elements.json +2 -2
- package/date-input/date-input.component.js +2 -4
- package/datepicker/common/datepicker-association-controllers.js +21 -24
- package/datepicker/common/datepicker-button.js +53 -57
- package/datepicker/datepicker/datepicker.component.js +82 -95
- package/datepicker/datepicker-next-day/datepicker-next-day.component.js +1 -1
- package/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +1 -1
- package/datepicker/datepicker-toggle/datepicker-toggle.component.js +74 -81
- package/development/accordion/accordion.component.js +4 -7
- package/development/action-group/action-group.component.js +3 -5
- package/development/alert/alert/alert.component.js +2 -3
- package/development/alert/alert-group/alert-group.component.js +2 -3
- package/development/autocomplete/autocomplete-base-element.js +19 -30
- package/development/autocomplete/autocomplete.component.js +7 -12
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.component.js +10 -18
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.component.js +3 -4
- package/development/autocomplete-grid/autocomplete-grid-cell/autocomplete-grid-cell.component.js +1 -1
- package/development/autocomplete-grid/autocomplete-grid-optgroup/autocomplete-grid-optgroup.component.js +4 -7
- package/development/autocomplete-grid/autocomplete-grid-option/autocomplete-grid-option.component.js +4 -7
- package/development/autocomplete-grid/autocomplete-grid-row/autocomplete-grid-row.component.js +2 -2
- package/development/breadcrumb/breadcrumb/breadcrumb.component.js +1 -1
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.component.js +5 -9
- package/development/button/accent-button/accent-button.component.js +1 -1
- package/development/button/accent-button-link/accent-button-link.component.js +1 -1
- package/development/button/accent-button-static/accent-button-static.component.js +1 -1
- package/development/button/button/button.component.js +1 -1
- package/development/button/button-link/button-link.component.js +1 -1
- package/development/button/button-static/button-static.component.js +1 -1
- package/development/button/common/button-common.js +1 -1
- package/development/button/mini-button/mini-button.component.js +1 -1
- package/development/button/mini-button-group/mini-button-group.component.js +2 -3
- package/development/button/secondary-button/secondary-button.component.js +1 -1
- package/development/button/secondary-button-link/secondary-button-link.component.js +1 -1
- package/development/button/secondary-button-static/secondary-button-static.component.js +1 -1
- package/development/button/transparent-button/transparent-button.component.js +1 -1
- package/development/button/transparent-button-link/transparent-button-link.component.js +1 -1
- package/development/button/transparent-button-static/transparent-button-static.component.js +1 -1
- package/development/calendar/calendar.component.js +9 -14
- package/development/card/card/card.component.js +1 -1
- package/development/card/card-badge/card-badge.component.js +1 -1
- package/development/card/card-button/card-button.component.js +1 -1
- package/development/card/card-link/card-link.component.js +1 -1
- package/development/card/common/card-action-common.js +3 -5
- package/development/checkbox/checkbox/checkbox.component.js +2 -5
- package/development/checkbox/checkbox-group/checkbox-group.component.js +8 -21
- package/development/checkbox/checkbox-panel/checkbox-panel.component.js +2 -5
- package/development/checkbox/common/checkbox-common.js +3 -5
- package/development/chip/chip/chip.component.js +1 -1
- package/development/chip/chip-group/chip-group.component.js +15 -26
- package/development/chip-label/chip-label.component.js +1 -1
- package/development/clock/clock.component.js +23 -33
- package/development/container/container/container.component.js +2 -3
- package/development/container/sticky-bar/sticky-bar.component.js +2 -3
- package/development/core/a11y/arrow-navigation.js +1 -1
- package/development/core/a11y/fake-event-detection.js +1 -1
- package/development/core/a11y/focus-trap-controller.js +6 -9
- package/development/core/a11y/focus-visible-within-controller.js +1 -1
- package/development/core/a11y/focus.js +8 -10
- package/development/core/a11y/input-modality-detector.js +2 -3
- package/development/core/a11y/interactivity-checker.js +2 -2
- package/development/core/base-elements/action-base-element.js +2 -3
- package/development/core/base-elements/button-base-element.js +6 -11
- package/development/core/base-elements/link-base-element.js +4 -7
- package/development/core/base-elements/open-close-base-element.js +2 -2
- package/development/core/config/config.js +1 -1
- package/development/core/controllers/connected-abort-controller.js +3 -5
- package/development/core/controllers/escapable-overlay-controller.js +3 -5
- package/development/core/controllers/id-reference-controller.js +2 -3
- package/development/core/controllers/inert-controller.js +4 -6
- package/development/core/controllers/language-controller.js +1 -1
- package/development/core/controllers/media-matchers-controller.js +1 -1
- package/development/core/controllers/slot-state-controller.js +8 -18
- package/development/core/datetime/date-adapter.d.ts.map +1 -1
- package/development/core/datetime/date-adapter.js +5 -5
- package/development/core/datetime/native-date-adapter.js +2 -2
- package/development/core/decorators/date-converter.js +3 -5
- package/development/core/decorators/date-only-type.js +2 -3
- package/development/core/decorators/force-type.js +3 -4
- package/development/core/decorators/get-override.js +1 -1
- package/development/core/decorators/handle-distinct-change.js +1 -1
- package/development/core/decorators/host-attributes.js +1 -1
- package/development/core/decorators/slot-state.js +1 -1
- package/development/core/dom/animation.js +1 -1
- package/development/core/dom/breakpoint.js +2 -2
- package/development/core/dom/find-referenced-element.js +1 -1
- package/development/core/dom/host-context.js +1 -1
- package/development/core/dom/input-element.js +3 -4
- package/development/core/dom/platform.js +1 -1
- package/development/core/dom/scroll.js +1 -1
- package/development/core/dom/set-or-remove-attribute.js +1 -1
- package/development/core/eventing/composed-path-has-attribute.js +1 -1
- package/development/core/eventing/event-emitter.js +2 -3
- package/development/core/eventing/form-element-handlers.js +1 -1
- package/development/core/eventing/forward-event.js +1 -1
- package/development/core/eventing/throttle.js +1 -1
- package/development/core/i18n/i18n.js +1 -1
- package/development/core/mixins/animation-complete-mixin.js +1 -1
- package/development/core/mixins/disabled-mixin.js +1 -1
- package/development/core/mixins/form-associated-checkbox-mixin.js +6 -9
- package/development/core/mixins/form-associated-input-mixin.js +14 -20
- package/development/core/mixins/form-associated-mixin.js +5 -7
- package/development/core/mixins/form-associated-radio-button-mixin.js +7 -9
- package/development/core/mixins/hydration-mixin.js +3 -4
- package/development/core/mixins/named-slot-list-mixin.js +4 -7
- package/development/core/mixins/negative-mixin.js +1 -1
- package/development/core/mixins/panel-mixin.js +2 -3
- package/development/core/mixins/required-mixin.js +1 -1
- package/development/core/mixins/update-scheduler-mixin.js +1 -1
- package/development/core/overlay/overlay-option-panel.js +1 -1
- package/development/core/overlay/overlay-trigger-attributes.js +1 -1
- package/development/core/overlay/overlay.js +1 -1
- package/development/core/overlay/position.js +5 -5
- package/development/core/testing/event-spy.js +3 -5
- package/development/core/testing/mocha-extensions.js +1 -1
- package/development/core/testing/wait-for-condition.js +1 -1
- package/development/core/testing/wait-for-image-ready.js +2 -3
- package/development/core/testing/wait-for-render.js +2 -3
- package/development/date-input/date-input.component.js +4 -6
- package/development/datepicker/common/datepicker-association-controllers.js +6 -9
- package/development/datepicker/common/datepicker-button.js +7 -11
- package/development/datepicker/datepicker/datepicker.component.js +22 -35
- package/development/datepicker/datepicker-next-day/datepicker-next-day.component.js +1 -1
- package/development/datepicker/datepicker-previous-day/datepicker-previous-day.component.js +1 -1
- package/development/datepicker/datepicker-toggle/datepicker-toggle.component.js +13 -20
- package/development/dialog/dialog/dialog.component.js +16 -27
- package/development/dialog/dialog-actions/dialog-actions.component.js +1 -1
- package/development/dialog/dialog-content/dialog-content.component.js +1 -1
- package/development/dialog/dialog-title/dialog-title.component.js +1 -1
- package/development/divider/divider.component.js +1 -1
- package/development/expansion-panel/expansion-panel/expansion-panel.component.js +9 -13
- package/development/expansion-panel/expansion-panel-content/expansion-panel-content.component.js +1 -1
- package/development/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +4 -5
- package/development/file-selector/common/file-selector-common.js +2 -3
- package/development/file-selector/file-selector/file-selector.component.js +1 -1
- package/development/file-selector/file-selector-dropzone/file-selector-dropzone.component.js +1 -1
- package/development/flip-card/flip-card/flip-card.component.js +7 -13
- package/development/flip-card/flip-card-details/flip-card-details.component.js +2 -3
- package/development/flip-card/flip-card-summary/flip-card-summary.component.js +2 -3
- package/development/footer/footer.component.js +1 -1
- package/development/form-error/form-error.component.js +3 -4
- package/development/form-field/form-field/form-field.component.js +19 -30
- package/development/form-field/form-field-clear/form-field-clear.component.js +4 -6
- package/development/header/common/header-action-common.js +1 -1
- package/development/header/header/header.component.js +5 -8
- package/development/header/header-button/header-button.component.js +1 -1
- package/development/header/header-link/header-link.component.js +1 -1
- package/development/icon/icon-base.js +1 -1
- package/development/icon/icon-name-mixin.js +1 -1
- package/development/icon/icon-request.js +2 -3
- package/development/icon/icon-validate.js +1 -1
- package/development/icon/icon.component.js +1 -1
- package/development/image/image.component.js +7 -9
- package/development/journey-header/journey-header.component.js +1 -1
- package/development/lead-container/lead-container.component.js +1 -1
- package/development/link/block-link/block-link.component.js +1 -1
- package/development/link/block-link-button/block-link-button.component.js +1 -1
- package/development/link/block-link-static/block-link-static.component.js +1 -1
- package/development/link/common/block-link-common.js +1 -1
- package/development/link/common/inline-link-common.js +1 -1
- package/development/link/link/link.component.js +1 -1
- package/development/link/link-button/link-button.component.js +1 -1
- package/development/link/link-static/link-static.component.js +1 -1
- package/development/link-common-CJEWffDZ.js +1 -1
- package/development/link-list/common/link-list-base.js +1 -1
- package/development/link-list/link-list/link-list.component.js +1 -1
- package/development/link-list/link-list-anchor/link-list-anchor.component.js +1 -1
- package/development/loading-indicator/loading-indicator.component.js +1 -1
- package/development/loading-indicator-circle/loading-indicator-circle.component.js +1 -1
- package/development/logo/logo.component.js +1 -1
- package/development/map-container/map-container.component.js +2 -3
- package/development/menu/common/menu-action-common.js +1 -1
- package/development/menu/menu/menu.component.js +17 -25
- package/development/menu/menu-button/menu-button.component.js +1 -1
- package/development/menu/menu-link/menu-link.component.js +1 -1
- package/development/message/message.component.js +1 -1
- package/development/navigation/common/navigation-action-common.js +3 -5
- package/development/navigation/navigation/navigation.component.js +19 -35
- package/development/navigation/navigation-button/navigation-button.component.js +1 -1
- package/development/navigation/navigation-link/navigation-link.component.js +1 -1
- package/development/navigation/navigation-list/navigation-list.component.js +1 -1
- package/development/navigation/navigation-marker/navigation-marker.component.js +4 -6
- package/development/navigation/navigation-section/navigation-section.component.js +22 -32
- package/development/notification/notification.component.js +22 -24
- package/development/option/optgroup/optgroup-base-element.js +4 -6
- package/development/option/optgroup/optgroup.component.js +6 -10
- package/development/option/option/option-base-element.js +3 -4
- package/development/option/option/option.component.js +7 -10
- package/development/overlay/overlay-base-element.js +4 -6
- package/development/overlay/overlay.component.js +7 -9
- package/development/paginator/common/paginator-common.js +1 -1
- package/development/paginator/compact-paginator/compact-paginator.component.js +1 -1
- package/development/paginator/paginator/paginator.component.js +2 -3
- package/development/popover/popover/popover.component.d.ts.map +1 -1
- package/development/popover/popover/popover.component.js +17 -19
- package/development/popover/popover-trigger/popover-trigger.component.js +1 -1
- package/development/radio-button/common/radio-button-common.js +6 -10
- package/development/radio-button/radio-button/radio-button.component.js +2 -5
- package/development/radio-button/radio-button-group/radio-button-group.component.js +8 -24
- package/development/radio-button/radio-button-panel/radio-button-panel.component.js +3 -7
- package/development/screen-reader-only/screen-reader-only.component.js +1 -1
- package/development/select/select.component.js +26 -48
- package/development/selection-expansion-panel/selection-expansion-panel.component.js +7 -11
- package/development/sidebar/icon-sidebar/icon-sidebar.component.js +1 -1
- package/development/sidebar/icon-sidebar-button/icon-sidebar-button.component.js +1 -1
- package/development/sidebar/icon-sidebar-container/icon-sidebar-container.component.js +4 -7
- package/development/sidebar/icon-sidebar-content/icon-sidebar-content.component.js +1 -1
- package/development/sidebar/icon-sidebar-link/icon-sidebar-link.component.js +1 -1
- package/development/sidebar/sidebar/sidebar.component.js +8 -15
- package/development/sidebar/sidebar-close-button/sidebar-close-button.component.js +1 -1
- package/development/sidebar/sidebar-container/sidebar-container.component.js +9 -13
- package/development/sidebar/sidebar-content/sidebar-content.component.js +1 -1
- package/development/sidebar/sidebar-title/sidebar-title.component.js +2 -2
- package/development/signet/signet.component.js +1 -1
- package/development/skiplink-list/skiplink-list.component.js +1 -1
- package/development/slider/slider.component.js +3 -4
- package/development/status/status.component.js +3 -2
- package/development/stepper/step/step.component.js +5 -7
- package/development/stepper/step-label/step-label.component.js +3 -4
- package/development/stepper/stepper/stepper.component.js +16 -29
- package/development/table/table-wrapper/table-wrapper.component.js +2 -7
- package/development/tabs/tab/tab.component.js +1 -1
- package/development/tabs/tab-group/tab-group.component.js +23 -38
- package/development/tabs/tab-label/tab-label.component.js +1 -1
- package/development/tag/tag/tag.component.js +6 -12
- package/development/tag/tag-group/tag-group.component.js +5 -13
- package/development/teaser/teaser.component.js +1 -1
- package/development/teaser-hero/teaser-hero.component.js +1 -1
- package/development/teaser-product/common/teaser-product-common.js +1 -1
- package/development/teaser-product/teaser-product/teaser-product.component.js +1 -1
- package/development/teaser-product/teaser-product-static/teaser-product-static.component.js +1 -1
- package/development/time-input/time-input.component.js +8 -12
- package/development/timetable-occupancy/timetable-occupancy.component.js +1 -1
- package/development/timetable-occupancy-icon/timetable-occupancy-icon.component.js +2 -3
- package/development/title/title-base.js +1 -2
- package/development/title/title.component.js +1 -1
- package/development/toast/toast.component.js +4 -7
- package/development/toggle/toggle/toggle.component.js +8 -12
- package/development/toggle/toggle-option/toggle-option.component.js +9 -16
- package/development/toggle-check/toggle-check.component.js +1 -1
- package/development/train/train/train.component.js +1 -1
- package/development/train/train-blocked-passage/train-blocked-passage.component.js +1 -1
- package/development/train/train-formation/train-formation.component.js +5 -7
- package/development/train/train-wagon/train-wagon.component.js +1 -1
- package/development/visual-checkbox/visual-checkbox.component.js +1 -1
- package/dialog/dialog/dialog.component.js +59 -70
- package/expansion-panel/expansion-panel/expansion-panel.component.js +5 -9
- package/expansion-panel/expansion-panel-header/expansion-panel-header.component.js +31 -32
- package/file-selector/common/file-selector-common.js +1 -2
- package/flip-card/flip-card/flip-card.component.js +48 -54
- package/flip-card/flip-card-details/flip-card-details.component.js +16 -17
- package/flip-card/flip-card-summary/flip-card-summary.component.js +18 -19
- package/form-error/form-error.component.js +13 -14
- package/form-field/form-field/form-field.component.js +128 -139
- package/form-field/form-field-clear/form-field-clear.component.js +20 -22
- package/header/header/header.component.js +25 -28
- package/icon/icon-request.js +10 -11
- package/icon-sidebar-button-common-CM-ueEhH.js +7 -0
- package/image/image.component.js +4 -6
- package/map-container/map-container.component.js +1 -2
- package/menu/menu/menu.component.js +48 -56
- package/navigation/common/navigation-action-common.js +19 -21
- package/navigation/navigation/navigation.component.js +74 -93
- package/navigation/navigation-marker/navigation-marker.component.js +26 -28
- package/navigation/navigation-section/navigation-section.component.js +79 -89
- package/notification/notification.component.js +18 -20
- package/option/optgroup/optgroup-base-element.js +40 -42
- package/option/optgroup/optgroup.component.js +16 -20
- package/option/option/option-base-element.js +3 -4
- package/option/option/option.component.js +28 -31
- package/overlay/overlay-base-element.js +25 -27
- package/overlay/overlay.component.js +38 -40
- package/package.json +1 -1
- package/paginator/paginator/paginator.component.js +3 -4
- package/popover/popover/popover.component.d.ts.map +1 -1
- package/popover/popover/popover.component.js +65 -72
- package/popover/popover-trigger/popover-trigger.component.js +1 -1
- package/radio-button/common/radio-button-common.js +11 -15
- package/radio-button/radio-button/radio-button.component.js +20 -23
- package/radio-button/radio-button-group/radio-button-group.component.js +27 -43
- package/radio-button/radio-button-panel/radio-button-panel.component.js +31 -35
- package/select/select.component.js +89 -111
- package/selection-expansion-panel/selection-expansion-panel.component.js +35 -39
- package/sidebar/common.js +1 -1
- package/sidebar/icon-sidebar-container/icon-sidebar-container.component.js +10 -13
- package/sidebar/sidebar/sidebar.component.js +61 -68
- package/sidebar/sidebar-container/sidebar-container.component.js +29 -33
- package/sidebar/sidebar-title/sidebar-title.component.js +1 -1
- package/sidebar.js +1 -1
- package/slider/slider.component.js +3 -4
- package/standard-theme.css +0 -25
- package/status/status.component.js +17 -17
- package/stepper/step/step.component.js +22 -24
- package/stepper/step-label/step-label.component.js +2 -3
- package/stepper/stepper/stepper.component.js +72 -86
- package/table/table-wrapper/table-wrapper.component.js +13 -14
- package/table.css +0 -25
- package/tabs/tab-group/tab-group.component.js +77 -92
- package/tabs/tab-label/tab-label.component.js +10 -10
- package/tag/tag/tag.component.js +55 -61
- package/tag/tag-group/tag-group.component.js +21 -29
- package/teaser/teaser.component.js +1 -1
- package/teaser-product/common.js +1 -1
- package/teaser-product/teaser-product/teaser-product.component.js +1 -1
- package/teaser-product-common-C8oSkIxy.js +5 -0
- package/teaser-product.js +1 -1
- package/time-input/time-input.component.js +62 -66
- package/timetable-occupancy-icon/timetable-occupancy-icon.component.js +9 -10
- package/title/title-base.js +1 -1
- package/toast/toast.component.js +4 -7
- package/toggle/toggle/toggle.component.js +38 -42
- package/toggle/toggle-option/toggle-option.component.js +47 -54
- package/train/train-formation/train-formation.component.js +41 -43
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +0 -530
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +0 -1123
- package/icon-sidebar-button-common-DG8bnrBu.js +0 -7
- package/teaser-product-common-CpMAlYEp.js +0 -5
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
var D = (s) => {
|
|
2
2
|
throw TypeError(s);
|
|
3
3
|
};
|
|
4
|
-
var F = (s,
|
|
5
|
-
var m = (s,
|
|
4
|
+
var F = (s, r, i) => r.has(s) || D("Cannot " + i);
|
|
5
|
+
var m = (s, r, i) => (F(s, r, "read from private field"), i ? i.call(s) : r.get(s)), p = (s, r, i) => r.has(s) ? D("Cannot add the same private member more than once") : r instanceof WeakSet ? r.add(s) : r.set(s, i), l = (s, r, i, d) => (F(s, r, "write to private field"), d ? d.call(s, i) : r.set(s, i), i);
|
|
6
6
|
import { __esDecorate as _, __runInitializers as n } from "tslib";
|
|
7
7
|
import { css as q, LitElement as B, isServer as R, html as M } from "lit";
|
|
8
8
|
import { customElement as N, property as v, state as Z } from "lit/decorators.js";
|
|
@@ -14,8 +14,8 @@ import { SbbHydrationMixin as Y } from "../../core/mixins.js";
|
|
|
14
14
|
const G = q`*,:before,:after{box-sizing:border-box}:host{display:block;height:var(--sbb-header-height);--sbb-logo-height: 1rem;--sbb-signet-height: 1rem;--sbb-header-position: fixed;--sbb-header-transition-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-6x) );--sbb-header-inset-inline-end: 0}@media (min-width: 52.5rem){:host{--sbb-logo-height: 1.25rem;--sbb-signet-height: 1.25rem}}:host([hide-on-scroll]){--sbb-header-position: absolute}:host([hide-on-scroll][data-fixed]){--sbb-header-position: fixed;--sbb-header-animation-name: hide;--sbb-header-transform: translate3d(0, -100%, 0);--sbb-header-inset-inline-end: var(--sbb-scrollbar-width, 0)}:host([hide-on-scroll][data-fixed][data-animated]){--sbb-header-transition-timing: cubic-bezier(.4, 0, 1, 1)}:host([hide-on-scroll][data-fixed][data-visible]){--sbb-header-animation-name: show;--sbb-header-transform: translate3d(0, 0, 0);--sbb-header-transition-timing: cubic-bezier(0, 0, .2, 1)}:host([hide-on-scroll][data-fixed][data-has-visible-focus-within]){--sbb-header-transition-duration: 0;--sbb-header-transform: translate3d(0, 0, 0)}.sbb-header{position:var(--sbb-header-position);inset:0 var(--sbb-header-inset-inline-end) auto 0;background:var(--sbb-color-white);z-index:var(--sbb-header-z-index, 10);transform:var(--sbb-header-transform);transition-property:box-shadow;transition-duration:var(--sbb-header-transition-duration);transition-timing-function:var(--sbb-header-transition-timing);animation-name:var(--sbb-header-animation-name);animation-duration:var(--sbb-header-transition-duration);animation-timing-function:var(--sbb-header-transition-timing)}:host(:is([data-shadow],[data-has-visible-focus-within][data-fixed])) .sbb-header{box-shadow:var(--sbb-shadow-elevation-level-9-shadow-2-offset-x) var(--sbb-shadow-elevation-level-9-shadow-2-offset-y) var(--sbb-shadow-elevation-level-9-shadow-2-blur) var(--sbb-shadow-elevation-level-9-shadow-2-spread) var(--sbb-shadow-elevation-level-9-soft-2-color),var(--sbb-shadow-elevation-level-9-shadow-1-offset-x) var(--sbb-shadow-elevation-level-9-shadow-1-offset-y) var(--sbb-shadow-elevation-level-9-shadow-1-blur) var(--sbb-shadow-elevation-level-9-shadow-1-spread) var(--sbb-shadow-elevation-level-9-soft-1-color)}@media (forced-colors: active){.sbb-header{border-block-end:var(--sbb-border-width-1x) solid CanvasText}}.sbb-header__wrapper{display:flex;align-items:center;justify-content:flex-start;height:var(--sbb-header-height)}:host(:not([expanded])) .sbb-header__wrapper{padding-inline:var(--sbb-layout-base-offset-responsive);margin-inline:auto;width:100%}@media (min-width: 90rem){:host(:not([expanded])) .sbb-header__wrapper{max-width:calc(var(--sbb-layout-base-page-max-width) + 2 * var(--sbb-layout-base-offset-responsive))}}:host([expanded]) .sbb-header__wrapper{padding-inline:var(--sbb-spacing-responsive-xxs)}::slotted(:is(sbb-header-button,sbb-header-link):first-child){margin-inline-start:var(--sbb-header-first-item-margin-inline-start)}:host([size=s]) ::slotted(:is(sbb-header-button,sbb-header-link)){--sbb-header-action-min-height: var(--sbb-size-element-xs);--sbb-header-action-padding-inline: var(--sbb-spacing-fixed-4x)}::slotted(*){flex:0 0 auto}::slotted(.sbb-header-shrinkable){flex-shrink:1;min-width:0}::slotted(.sbb-header-spacer){flex-grow:1}::slotted(.sbb-header-logo){margin-inline-start:var(--sbb-spacing-responsive-s)}::slotted(a.sbb-header-logo){display:block;padding-block:var(--sbb-spacing-fixed-3x);position:relative;outline:none!important}::slotted(a.sbb-header-logo):before{content:"";display:block;position:absolute;inset:var(--sbb-spacing-fixed-3x) 0}::slotted(a.sbb-header-logo:focus-visible):before{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);outline-offset:var(--sbb-spacing-fixed-3x);border-radius:1px}@keyframes show{0%{transform:translate3d(0,-100%,0)}to{transform:translateZ(0)}}@keyframes hide{0%{transform:translateZ(0)}to{transform:translate3d(0,-100%,0)}}`, J = "[aria-controls][aria-expanded='true']";
|
|
15
15
|
let le = (() => {
|
|
16
16
|
var h, c, b, f, u, o;
|
|
17
|
-
let s = [N("sbb-header")],
|
|
18
|
-
return o = class extends
|
|
17
|
+
let s = [N("sbb-header")], r, i = [], d, g = Y(B), x, w = [], O = [], S, y = [], E = [], z, k = [], T = [], C, I = [], L = [], A, U = [], H = [];
|
|
18
|
+
return o = class extends g {
|
|
19
19
|
constructor() {
|
|
20
20
|
super();
|
|
21
21
|
p(this, h);
|
|
@@ -23,7 +23,7 @@ let le = (() => {
|
|
|
23
23
|
p(this, b);
|
|
24
24
|
p(this, f);
|
|
25
25
|
p(this, u);
|
|
26
|
-
l(this, h, n(this,
|
|
26
|
+
l(this, h, n(this, w, !1)), l(this, c, (n(this, O), n(this, y, R ? null : document))), l(this, b, (n(this, E), n(this, k, !1))), l(this, f, (n(this, T), n(this, I, W() ? "s" : "m"))), l(this, u, (n(this, L), n(this, U, !0))), this._scrollElement = n(this, H), this._lastScroll = 0, this._scrollOriginIdReferenceController = new V(this, "scrollOrigin"), this.addController(new Q(this));
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
29
|
* Whether to allow the header content to stretch to full width.
|
|
@@ -72,19 +72,17 @@ let le = (() => {
|
|
|
72
72
|
}
|
|
73
73
|
/** Removes the scroll listener, if previously attached. */
|
|
74
74
|
disconnectedCallback() {
|
|
75
|
-
|
|
76
|
-
super.disconnectedCallback(), this._scrollElement = null, (e = this._scrollEventsController) == null || e.abort();
|
|
75
|
+
super.disconnectedCallback(), this._scrollElement = null, this._scrollEventsController?.abort();
|
|
77
76
|
}
|
|
78
|
-
requestUpdate(e, t,
|
|
79
|
-
super.requestUpdate(e, t,
|
|
77
|
+
requestUpdate(e, t, a) {
|
|
78
|
+
super.requestUpdate(e, t, a), !R && (!e || e === "scrollOrigin") && this.hasUpdated && this._updateScrollListener();
|
|
80
79
|
}
|
|
81
80
|
firstUpdated(e) {
|
|
82
81
|
super.firstUpdated(e), this._updateScrollListener();
|
|
83
82
|
}
|
|
84
83
|
_updateScrollListener() {
|
|
85
|
-
var r;
|
|
86
84
|
const e = this.scrollOrigin instanceof HTMLElement ? this.scrollOrigin : this._scrollOriginIdReferenceController.find() ?? document;
|
|
87
|
-
if (e === this._scrollElement || (
|
|
85
|
+
if (e === this._scrollElement || (this._scrollEventsController?.abort(), this._scrollElement = e, !this._scrollElement))
|
|
88
86
|
return;
|
|
89
87
|
this._scrollEventsController = new AbortController(), this._scrollFunction = this._getScrollFunction.bind(this), this._scrollElement.addEventListener("scroll", this._scrollFunction, {
|
|
90
88
|
passive: !0,
|
|
@@ -99,8 +97,7 @@ let le = (() => {
|
|
|
99
97
|
}
|
|
100
98
|
/** Returns the requested property of the scrollContext. */
|
|
101
99
|
_getCurrentScrollProperty(e) {
|
|
102
|
-
|
|
103
|
-
return this._scrollElement instanceof Document ? this._scrollElement.documentElement[e] || this._scrollElement.body[e] : ((t = this._scrollElement) == null ? void 0 : t[e]) || 0;
|
|
100
|
+
return this._scrollElement instanceof Document ? this._scrollElement.documentElement[e] || this._scrollElement.body[e] : this._scrollElement?.[e] || 0;
|
|
104
101
|
}
|
|
105
102
|
/**
|
|
106
103
|
* Sets the correct value for `scrollTop`, then:
|
|
@@ -121,8 +118,8 @@ let le = (() => {
|
|
|
121
118
|
return;
|
|
122
119
|
const e = Array.from(this.querySelectorAll(J));
|
|
123
120
|
for (const t of e) {
|
|
124
|
-
const
|
|
125
|
-
typeof
|
|
121
|
+
const a = t.getAttribute("aria-controls"), P = document.getElementById(a);
|
|
122
|
+
typeof P?.close == "function" && P.close();
|
|
126
123
|
}
|
|
127
124
|
}
|
|
128
125
|
render() {
|
|
@@ -135,19 +132,19 @@ let le = (() => {
|
|
|
135
132
|
`;
|
|
136
133
|
}
|
|
137
134
|
}, h = new WeakMap(), c = new WeakMap(), b = new WeakMap(), f = new WeakMap(), u = new WeakMap(), d = o, (() => {
|
|
138
|
-
const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(
|
|
139
|
-
|
|
140
|
-
t.expanded =
|
|
141
|
-
} }, metadata: e },
|
|
142
|
-
t.scrollOrigin =
|
|
143
|
-
} }, metadata: e },
|
|
144
|
-
t.hideOnScroll =
|
|
145
|
-
} }, metadata: e },
|
|
146
|
-
t.size =
|
|
147
|
-
} }, metadata: e },
|
|
148
|
-
t._headerOnTop =
|
|
149
|
-
} }, metadata: e },
|
|
150
|
-
})(), o.styles = G, n(d,
|
|
135
|
+
const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(g[Symbol.metadata] ?? null) : void 0;
|
|
136
|
+
x = [j(), v({ reflect: !0, type: Boolean })], S = [v({ attribute: "scroll-origin" })], z = [j(), v({ attribute: "hide-on-scroll", reflect: !0, type: Boolean })], C = [v({ reflect: !0 })], A = [Z()], _(o, null, x, { kind: "accessor", name: "expanded", static: !1, private: !1, access: { has: (t) => "expanded" in t, get: (t) => t.expanded, set: (t, a) => {
|
|
137
|
+
t.expanded = a;
|
|
138
|
+
} }, metadata: e }, w, O), _(o, null, S, { kind: "accessor", name: "scrollOrigin", static: !1, private: !1, access: { has: (t) => "scrollOrigin" in t, get: (t) => t.scrollOrigin, set: (t, a) => {
|
|
139
|
+
t.scrollOrigin = a;
|
|
140
|
+
} }, metadata: e }, y, E), _(o, null, z, { kind: "accessor", name: "hideOnScroll", static: !1, private: !1, access: { has: (t) => "hideOnScroll" in t, get: (t) => t.hideOnScroll, set: (t, a) => {
|
|
141
|
+
t.hideOnScroll = a;
|
|
142
|
+
} }, metadata: e }, k, T), _(o, null, C, { kind: "accessor", name: "size", static: !1, private: !1, access: { has: (t) => "size" in t, get: (t) => t.size, set: (t, a) => {
|
|
143
|
+
t.size = a;
|
|
144
|
+
} }, metadata: e }, I, L), _(o, null, A, { kind: "accessor", name: "_headerOnTop", static: !1, private: !1, access: { has: (t) => "_headerOnTop" in t, get: (t) => t._headerOnTop, set: (t, a) => {
|
|
145
|
+
t._headerOnTop = a;
|
|
146
|
+
} }, metadata: e }, U, H), _(null, r = { value: d }, s, { kind: "class", name: d.name, metadata: e }, null, i), d = r.value, e && Object.defineProperty(d, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
|
|
147
|
+
})(), o.styles = G, n(d, i), d;
|
|
151
148
|
})();
|
|
152
149
|
export {
|
|
153
150
|
le as SbbHeaderElement
|
package/icon/icon-request.js
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
import { isServer as
|
|
2
|
-
import { readConfig as
|
|
3
|
-
import { validateContent as
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
const s = u().icon ?? {}, c = ((i = s.namespaces) == null ? void 0 : i.get(e)) ?? h.get(e);
|
|
1
|
+
import { isServer as p } from "lit";
|
|
2
|
+
import { readConfig as l } from "../core/config.js";
|
|
3
|
+
import { validateContent as u } from "./icon-validate.js";
|
|
4
|
+
const i = "https://icons.app.sbb.ch/", d = (/* @__PURE__ */ new Map()).set("default", `${i}icons/`).set("picto", `${i}picto/`), a = /* @__PURE__ */ new Map(), v = (e, n, f) => {
|
|
5
|
+
const s = l().icon ?? {}, c = s.namespaces?.get(e) ?? d.get(e);
|
|
7
6
|
if (c == null)
|
|
8
7
|
throw Error(`Unable to find the namespace "${e}". Please register your custom namespace.`);
|
|
9
8
|
const o = `${c}${n}.svg`;
|
|
10
|
-
let r =
|
|
9
|
+
let r = a.get(o);
|
|
11
10
|
if (!r)
|
|
12
|
-
if (typeof fetch < "u" && !
|
|
11
|
+
if (typeof fetch < "u" && !p)
|
|
13
12
|
r = (s.interceptor ?? ((t) => t.request()))({
|
|
14
13
|
namespace: e,
|
|
15
14
|
name: n,
|
|
@@ -17,15 +16,15 @@ const a = "https://icons.app.sbb.ch/", h = (/* @__PURE__ */ new Map()).set("defa
|
|
|
17
16
|
request: () => fetch(o).then(async (t) => {
|
|
18
17
|
if (!t.ok)
|
|
19
18
|
throw new Error("Failed to load icon " + e + ":" + n);
|
|
20
|
-
return
|
|
19
|
+
return u(await t.text(), f);
|
|
21
20
|
}).catch((t) => {
|
|
22
21
|
throw Error(t);
|
|
23
22
|
})
|
|
24
|
-
}),
|
|
23
|
+
}), a.set(o, r);
|
|
25
24
|
else
|
|
26
25
|
return Promise.resolve("");
|
|
27
26
|
return r;
|
|
28
27
|
};
|
|
29
28
|
export {
|
|
30
|
-
|
|
29
|
+
v as getSvgContent
|
|
31
30
|
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { css as o } from "lit";
|
|
2
|
+
const i = o`*,:before,:after{box-sizing:border-box}:host{position:absolute;inset:0}`, b = o`*,:before,:after{box-sizing:border-box}:host{position:relative;display:block;height:100%;overflow:auto;outline-color:var(--sbb-focus-outline-color)}`, r = o`*,:before,:after{box-sizing:border-box}:host{display:block;outline:none!important;--sbb-icon-sidebar-button-transition-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-2x) );--sbb-icon-sidebar-button-transition-easing-function: var(--sbb-animation-easing);--sbb-icon-sidebar-button-dimension: var(--sbb-size-element-m);--sbb-icon-sidebar-button-border-radius: var(--sbb-border-radius-4x);--sbb-icon-sidebar-button-color: var(--sbb-color-granite);--sbb-icon-sidebar-button-current-color: var(--sbb-color-charcoal);--sbb-icon-sidebar-button-current-border-width: var(--sbb-border-width-3x);--sbb-icon-sidebar-button-current-border-inset-block: var(--sbb-spacing-fixed-2x);--sbb-icon-sidebar-button__current-border-inset-inline-start: 0;--sbb-icon-sidebar-button__color: var(--sbb-icon-sidebar-button-color)}@media (forced-colors: active){:host{--sbb-icon-sidebar-button-current-color: Highlight !important}}@media (forced-colors: active){:host([data-button]){--sbb-icon-sidebar-button-color: ButtonText !important}}@media (forced-colors: active){:host([data-link]){--sbb-icon-sidebar-button-color: LinkText !important}}@media (any-hover: hover){:host(:not(:active,[data-active]):hover){--sbb-icon-sidebar-button__hover-shift: .0625rem;--sbb-icon-sidebar-button__cursor: pointer}}.sbb-action-base{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:var(--sbb-icon-sidebar-button-dimension);padding-block:0 calc(2 * var(--sbb-icon-sidebar-button__hover-shift, 0rem));color:var(--sbb-icon-sidebar-button__color);border-radius:var(--sbb-icon-sidebar-button-border-radius);cursor:var(--sbb-icon-sidebar-button__cursor);-webkit-user-select:none;user-select:none;transition-duration:var(--sbb-icon-sidebar-button-transition-duration);transition-timing-function:var(--sbb-icon-sidebar-button-transition-easing-function);transition-property:color,padding}:host(.sbb-active) .sbb-action-base{color:var(--sbb-icon-sidebar-button-current-color)}:host(.sbb-active) .sbb-action-base:before{content:"";display:block;position:absolute;inset-block:var(--sbb-icon-sidebar-button-current-border-inset-block);inset-inline:var(--sbb-icon-sidebar-button__current-border-inset-inline-start) 0;border-inline-start:var(--sbb-icon-sidebar-button-current-border-width) solid currentcolor}:host(:focus-visible) .sbb-action-base,.sbb-action-base:focus-visible{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);outline-offset:calc(-1 * var(--sbb-focus-outline-width) - .3125rem)}`;
|
|
3
|
+
export {
|
|
4
|
+
b as a,
|
|
5
|
+
r as i,
|
|
6
|
+
i as s
|
|
7
|
+
};
|
package/image/image.component.js
CHANGED
|
@@ -8,7 +8,7 @@ import { S as Se, d as ye, e as ze, f as ve, g as xe, h as Me, i as $e, a as we,
|
|
|
8
8
|
import { css as Qe, LitElement as qe, nothing as F, html as Q } from "lit";
|
|
9
9
|
import { customElement as Oe, property as g, eventOptions as Te } from "lit/decorators.js";
|
|
10
10
|
import { forceType as b } from "../core/decorators.js";
|
|
11
|
-
const Xe = Qe`*,:before,:after{box-sizing:border-box}:host{--sbb-image-aspect-ratio: 16 / 9;--sbb-image-animation-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-4x) );--sbb-image-object-fit: cover;display:block;border-radius:var(--sbb-border-radius-4x)}.sbb-image__img{opacity:.000001}:host([data-loaded]) .sbb-image__img{opacity:.999999}:host(:not([skip-lqip])) .sbb-image__img{position:absolute;
|
|
11
|
+
const Xe = Qe`*,:before,:after{box-sizing:border-box}:host{--sbb-image-aspect-ratio: 16 / 9;--sbb-image-animation-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-4x) );--sbb-image-object-fit: cover;display:block;border-radius:var(--sbb-border-radius-4x)}.sbb-image__img{opacity:.000001}:host([data-loaded]) .sbb-image__img{opacity:.999999}:host(:not([skip-lqip])) .sbb-image__img{position:absolute;inset:0}:host([data-loaded]) .sbb-image__blurred{opacity:0}picture{display:contents}:is(.sbb-image__img,.sbb-image__blurred){width:100%;height:100%;object-fit:var(--sbb-image-object-fit);object-position:var(--sbb-image-object-position);transition:opacity var(--sbb-image-animation-duration) var(--sbb-animation-easing)}.sbb-image__wrapper{display:flex;position:relative;width:100%;height:100%;aspect-ratio:var(--sbb-image-aspect-ratio);border-radius:inherit;overflow:hidden}`, Ye = (r) => {
|
|
12
12
|
if (!r || r.length === 0)
|
|
13
13
|
return [];
|
|
14
14
|
let o;
|
|
@@ -293,8 +293,7 @@ let Ze = (() => {
|
|
|
293
293
|
}
|
|
294
294
|
/** Whether the image is finished loading or failed to load. */
|
|
295
295
|
get complete() {
|
|
296
|
-
|
|
297
|
-
return ((i = (e = (t = this.shadowRoot) == null ? void 0 : t.querySelector) == null ? void 0 : e.call(t, ".sbb-image__img")) == null ? void 0 : i.complete) ?? !1;
|
|
296
|
+
return this.shadowRoot?.querySelector?.(".sbb-image__img")?.complete ?? !1;
|
|
298
297
|
}
|
|
299
298
|
updated(t) {
|
|
300
299
|
super.updated(t), this._captionElement && (this._linksInCaption = this._captionElement.querySelectorAll("a"), this._linksInCaption && this._addFocusAbilityToLinksInCaption());
|
|
@@ -310,9 +309,8 @@ let Ze = (() => {
|
|
|
310
309
|
return e ? `${e}rem` : "";
|
|
311
310
|
}
|
|
312
311
|
_addFocusAbilityToLinksInCaption() {
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
e.removeAttribute("tabindex");
|
|
312
|
+
this._linksInCaption?.forEach((t) => {
|
|
313
|
+
t.removeAttribute("tabindex");
|
|
316
314
|
});
|
|
317
315
|
}
|
|
318
316
|
_prepareImageUrl(t, e = !1) {
|
|
@@ -49,8 +49,7 @@ let N = (() => {
|
|
|
49
49
|
super.firstUpdated(r), this.hideScrollUpButton || this._observer.observe(this._intersector());
|
|
50
50
|
}
|
|
51
51
|
_intersector() {
|
|
52
|
-
|
|
53
|
-
return ((r = this.shadowRoot) == null ? void 0 : r.querySelector("#intersector")) ?? null;
|
|
52
|
+
return this.shadowRoot?.querySelector("#intersector") ?? null;
|
|
54
53
|
}
|
|
55
54
|
/**
|
|
56
55
|
* Button click callback to trigger the scroll to container top
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
var C = (
|
|
2
|
-
throw TypeError(
|
|
1
|
+
var C = (i) => {
|
|
2
|
+
throw TypeError(i);
|
|
3
3
|
};
|
|
4
|
-
var A = (
|
|
5
|
-
var u = (
|
|
4
|
+
var A = (i, r, s) => r.has(i) || C("Cannot " + s);
|
|
5
|
+
var u = (i, r, s) => (A(i, r, "read from private field"), s ? s.call(i) : r.get(i)), g = (i, r, s) => r.has(i) ? C("Cannot add the same private member more than once") : r instanceof WeakSet ? r.add(i) : r.set(i, s), d = (i, r, s, n) => (A(i, r, "write to private field"), n ? n.call(i, s) : r.set(i, s), s);
|
|
6
6
|
import { __esDecorate as _, __runInitializers as m } from "tslib";
|
|
7
7
|
import { css as T, isServer as N, html as L } from "lit";
|
|
8
8
|
import { customElement as B, property as S } from "lit/decorators.js";
|
|
@@ -26,59 +26,56 @@ const J = T`*,:before,:after{box-sizing:border-box}:host{display:contents;--sbb-
|
|
|
26
26
|
"SBB-BLOCK-LINK-BUTTON"
|
|
27
27
|
];
|
|
28
28
|
let te = 0, _e = (() => {
|
|
29
|
-
var
|
|
30
|
-
let
|
|
29
|
+
var l, b, o;
|
|
30
|
+
let i = [B("sbb-menu"), q({
|
|
31
31
|
popover: "manual"
|
|
32
|
-
})], r,
|
|
33
|
-
return
|
|
32
|
+
})], r, s = [], n, v = V(R), f, w = [], y = [], k, x = [], E = [];
|
|
33
|
+
return o = class extends v {
|
|
34
34
|
constructor() {
|
|
35
|
-
var e, t;
|
|
36
35
|
super();
|
|
37
|
-
g(this,
|
|
38
|
-
g(this,
|
|
39
|
-
this.listChildLocalNames = ["sbb-menu-button", "sbb-menu-link"], d(this,
|
|
40
|
-
[p]: (
|
|
41
|
-
|
|
36
|
+
g(this, l);
|
|
37
|
+
g(this, b);
|
|
38
|
+
this.listChildLocalNames = ["sbb-menu-button", "sbb-menu-link"], d(this, l, m(this, w, null)), d(this, b, (m(this, y), m(this, x, ""))), this._menu = m(this, E), this._triggerElement = null, this._triggerIdReferenceController = new z(this, "trigger"), this._isPointerDownEventOnMenu = !1, this._escapableOverlayController = new K(this), this._focusTrapController = new M(this), this._scrollHandler = new Z(), this._inertController = new H(this), this._mediaMatcher = new $(this, {
|
|
39
|
+
[p]: (e) => {
|
|
40
|
+
e && (this.state === "opening" || this.state === "opened") ? this._scrollHandler.disableScroll() : this._scrollHandler.enableScroll();
|
|
42
41
|
}
|
|
43
|
-
}), this._pointerDownListener = (
|
|
44
|
-
this._isPointerDownEventOnMenu = O(this._menu,
|
|
45
|
-
}, this._closeOnBackdropClick = (
|
|
46
|
-
!this._isPointerDownEventOnMenu && !O(this._menu,
|
|
47
|
-
},
|
|
42
|
+
}), this._pointerDownListener = (e) => {
|
|
43
|
+
this._isPointerDownEventOnMenu = O(this._menu, e);
|
|
44
|
+
}, this._closeOnBackdropClick = (e) => {
|
|
45
|
+
!this._isPointerDownEventOnMenu && !O(this._menu, e) && this.close();
|
|
46
|
+
}, this.addEventListener?.("click", (e) => this._onClick(e)), this.addEventListener?.("keydown", (e) => this._handleKeyDown(e));
|
|
48
47
|
}
|
|
49
48
|
/**
|
|
50
49
|
* The element that will trigger the menu overlay.
|
|
51
50
|
* Accepts both a string (id of an element) or an HTML element.
|
|
52
51
|
*/
|
|
53
52
|
get trigger() {
|
|
54
|
-
return u(this,
|
|
53
|
+
return u(this, l);
|
|
55
54
|
}
|
|
56
55
|
set trigger(e) {
|
|
57
|
-
d(this,
|
|
56
|
+
d(this, l, e);
|
|
58
57
|
}
|
|
59
58
|
/**
|
|
60
59
|
* This will be forwarded as aria-label to the inner list.
|
|
61
60
|
* Used only if the menu automatically renders the actions inside as a list.
|
|
62
61
|
*/
|
|
63
62
|
get listAccessibilityLabel() {
|
|
64
|
-
return u(this,
|
|
63
|
+
return u(this, b);
|
|
65
64
|
}
|
|
66
65
|
set listAccessibilityLabel(e) {
|
|
67
|
-
d(this,
|
|
66
|
+
d(this, b, e);
|
|
68
67
|
}
|
|
69
68
|
/**
|
|
70
69
|
* Opens the menu on trigger click.
|
|
71
70
|
*/
|
|
72
71
|
open() {
|
|
73
|
-
|
|
74
|
-
this.state === "closing" || !this._menu || this.willOpen.emit() && ((e = this.showPopover) == null || e.call(this), this.state = "opening", this._setMenuPosition(), (t = this._triggerElement) == null || t.setAttribute("aria-expanded", "true"), this._mediaMatcher.matches(p) && this._scrollHandler.disableScroll(), this._isZeroAnimationDuration() && this._handleOpening());
|
|
72
|
+
this.state === "closing" || !this._menu || this.willOpen.emit() && (this.showPopover?.(), this.state = "opening", this._setMenuPosition(), this._triggerElement?.setAttribute("aria-expanded", "true"), this._mediaMatcher.matches(p) && this._scrollHandler.disableScroll(), this._isZeroAnimationDuration() && this._handleOpening());
|
|
75
73
|
}
|
|
76
74
|
/**
|
|
77
75
|
* Closes the menu.
|
|
78
76
|
*/
|
|
79
77
|
close() {
|
|
80
|
-
|
|
81
|
-
this.state !== "opening" && this.willClose.emit() && (this.state = "closing", (e = this._triggerElement) == null || e.setAttribute("aria-expanded", "false"), this._isZeroAnimationDuration() && this._handleClosing());
|
|
78
|
+
this.state !== "opening" && this.willClose.emit() && (this.state = "closing", this._triggerElement?.setAttribute("aria-expanded", "false"), this._isZeroAnimationDuration() && this._handleClosing());
|
|
82
79
|
}
|
|
83
80
|
_isZeroAnimationDuration() {
|
|
84
81
|
return F(this, "--sbb-menu-animation-duration");
|
|
@@ -87,76 +84,71 @@ let te = 0, _e = (() => {
|
|
|
87
84
|
this.state = "opened", this._inertController.activate(), this._escapableOverlayController.connect(), this._focusTrapController.focusInitialElement(), this._focusTrapController.enabled = !0, this._attachWindowEvents(), this.didOpen.emit();
|
|
88
85
|
}
|
|
89
86
|
_handleClosing() {
|
|
90
|
-
|
|
91
|
-
this.state = "closed", (e = this.hidePopover) == null || e.call(this), (i = (t = this._menu) == null ? void 0 : t.firstElementChild) == null || i.scrollTo(0, 0), this._inertController.deactivate(), (l = this._triggerElement) == null || l.focus({
|
|
87
|
+
this.state = "closed", this.hidePopover?.(), this._menu?.firstElementChild?.scrollTo(0, 0), this._inertController.deactivate(), this._triggerElement?.focus({
|
|
92
88
|
// When inside the sbb-header, we prevent the scroll to avoid the snapping to the top of the page
|
|
93
89
|
preventScroll: this._triggerElement.localName === "sbb-header-button" || this._triggerElement.localName === "sbb-header-link"
|
|
94
|
-
}), this._escapableOverlayController.disconnect(), this.didClose.emit(),
|
|
90
|
+
}), this._escapableOverlayController.disconnect(), this.didClose.emit(), this._windowEventsController?.abort(), this._focusTrapController.enabled = !1, this._scrollHandler.enableScroll();
|
|
95
91
|
}
|
|
96
92
|
/**
|
|
97
93
|
* Handles click and checks if its target is a sbb-menu-button/sbb-menu-link.
|
|
98
94
|
*/
|
|
99
95
|
_onClick(e) {
|
|
100
96
|
const t = e.target;
|
|
101
|
-
(
|
|
97
|
+
(t?.localName === "sbb-menu-button" || t?.localName === "sbb-menu-link") && this.close();
|
|
102
98
|
}
|
|
103
99
|
_handleKeyDown(e) {
|
|
104
100
|
if (!P(e))
|
|
105
101
|
return;
|
|
106
102
|
e.preventDefault();
|
|
107
|
-
const t = Array.from(this.querySelectorAll("sbb-menu-button, sbb-menu-link")).filter((
|
|
108
|
-
let
|
|
103
|
+
const t = Array.from(this.querySelectorAll("sbb-menu-button, sbb-menu-link")).filter((h) => (!h.disabled || h.disabledInteractive) && D.isVisible(h)), a = t.findIndex((h) => h === e.target);
|
|
104
|
+
let c;
|
|
109
105
|
switch (e.key) {
|
|
110
106
|
case "ArrowUp":
|
|
111
107
|
case "ArrowDown":
|
|
112
108
|
case "ArrowLeft":
|
|
113
109
|
case "ArrowRight":
|
|
114
|
-
|
|
110
|
+
c = U(e, a, t.length);
|
|
115
111
|
break;
|
|
116
112
|
case "PageUp":
|
|
117
113
|
case "Home":
|
|
118
|
-
|
|
114
|
+
c = 0;
|
|
119
115
|
break;
|
|
120
116
|
case "End":
|
|
121
117
|
case "PageDown":
|
|
122
|
-
|
|
118
|
+
c = t.length - 1;
|
|
123
119
|
break;
|
|
124
120
|
// this should never happen since all the case allowed by `isArrowKeyOrPageKeysPressed` should be covered
|
|
125
121
|
default:
|
|
126
|
-
|
|
122
|
+
c = 0;
|
|
127
123
|
}
|
|
128
|
-
t[
|
|
124
|
+
t[c].focus();
|
|
129
125
|
}
|
|
130
126
|
// Removes trigger click listener on trigger change.
|
|
131
127
|
createRenderRoot() {
|
|
132
|
-
var t;
|
|
133
128
|
const e = super.createRenderRoot();
|
|
134
|
-
return
|
|
129
|
+
return this.shadowRoot?.addEventListener("slotchange", (t) => this._checkListCase(t), {
|
|
135
130
|
capture: !0
|
|
136
131
|
}), e;
|
|
137
132
|
}
|
|
138
133
|
connectedCallback() {
|
|
139
|
-
super.connectedCallback(), this.id
|
|
134
|
+
super.connectedCallback(), this.id ||= `sbb-menu-${te++}`, this.hasUpdated && this._configureTrigger();
|
|
140
135
|
}
|
|
141
136
|
disconnectedCallback() {
|
|
142
|
-
|
|
143
|
-
super.disconnectedCallback(), this._triggerElement = null, (e = this._triggerAbortController) == null || e.abort(), (t = this._windowEventsController) == null || t.abort(), this._scrollHandler.enableScroll();
|
|
137
|
+
super.disconnectedCallback(), this._triggerElement = null, this._triggerAbortController?.abort(), this._windowEventsController?.abort(), this._scrollHandler.enableScroll();
|
|
144
138
|
}
|
|
145
|
-
requestUpdate(e, t,
|
|
146
|
-
super.requestUpdate(e, t,
|
|
139
|
+
requestUpdate(e, t, a) {
|
|
140
|
+
super.requestUpdate(e, t, a), !N && (!e || e === "trigger") && this.hasUpdated && this._configureTrigger();
|
|
147
141
|
}
|
|
148
142
|
firstUpdated(e) {
|
|
149
143
|
super.firstUpdated(e), this._configureTrigger();
|
|
150
144
|
}
|
|
151
145
|
_checkListCase(e) {
|
|
152
|
-
|
|
153
|
-
(t = this.children) != null && t.length && Array.from(this.children ?? []).every((i) => i.localName === "sbb-menu-button" || i.localName === "sbb-menu-link") || (e.stopImmediatePropagation(), this.listChildren.length && (this.listChildren.forEach((i) => i.removeAttribute("slot")), this.listChildren = []));
|
|
146
|
+
this.children?.length && Array.from(this.children ?? []).every((t) => t.localName === "sbb-menu-button" || t.localName === "sbb-menu-link") || (e.stopImmediatePropagation(), this.listChildren.length && (this.listChildren.forEach((t) => t.removeAttribute("slot")), this.listChildren = []));
|
|
154
147
|
}
|
|
155
148
|
// Check if the trigger is valid and attach click event listeners.
|
|
156
149
|
_configureTrigger() {
|
|
157
|
-
var t;
|
|
158
150
|
const e = this.trigger instanceof HTMLElement ? this.trigger : this._triggerIdReferenceController.find();
|
|
159
|
-
e !== this._triggerElement && (
|
|
151
|
+
e !== this._triggerElement && (this._triggerAbortController?.abort(), W(this._triggerElement), this._triggerElement = e, this._triggerElement && (Q(this._triggerElement, "menu", this.id, this.state), this._triggerAbortController = new AbortController(), this._triggerElement.addEventListener("click", () => this.open(), {
|
|
160
152
|
signal: this._triggerAbortController.signal
|
|
161
153
|
})));
|
|
162
154
|
}
|
|
@@ -216,14 +208,14 @@ let te = 0, _e = (() => {
|
|
|
216
208
|
</div>
|
|
217
209
|
`;
|
|
218
210
|
}
|
|
219
|
-
},
|
|
211
|
+
}, l = new WeakMap(), b = new WeakMap(), n = o, (() => {
|
|
220
212
|
const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(v[Symbol.metadata] ?? null) : void 0;
|
|
221
|
-
f = [S()], k = [Y(), S({ attribute: "list-accessibility-label" })], _(
|
|
222
|
-
t.trigger =
|
|
223
|
-
} }, metadata: e }, w, y), _(
|
|
224
|
-
t.listAccessibilityLabel =
|
|
225
|
-
} }, metadata: e }, x, E), _(null, r = { value:
|
|
226
|
-
})(),
|
|
213
|
+
f = [S()], k = [Y(), S({ attribute: "list-accessibility-label" })], _(o, null, f, { kind: "accessor", name: "trigger", static: !1, private: !1, access: { has: (t) => "trigger" in t, get: (t) => t.trigger, set: (t, a) => {
|
|
214
|
+
t.trigger = a;
|
|
215
|
+
} }, metadata: e }, w, y), _(o, null, k, { kind: "accessor", name: "listAccessibilityLabel", static: !1, private: !1, access: { has: (t) => "listAccessibilityLabel" in t, get: (t) => t.listAccessibilityLabel, set: (t, a) => {
|
|
216
|
+
t.listAccessibilityLabel = a;
|
|
217
|
+
} }, metadata: e }, x, E), _(null, r = { value: n }, i, { kind: "class", name: n.name, metadata: e }, null, s), n = r.value, e && Object.defineProperty(n, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
|
|
218
|
+
})(), o.styles = J, m(n, s), n;
|
|
227
219
|
})();
|
|
228
220
|
export {
|
|
229
221
|
_e as SbbMenuElement
|
|
@@ -1,25 +1,23 @@
|
|
|
1
|
-
var
|
|
1
|
+
var v = (t) => {
|
|
2
2
|
throw TypeError(t);
|
|
3
3
|
};
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
import { __esDecorate as m, __runInitializers as
|
|
4
|
+
var h = (t, i, e) => i.has(t) || v("Cannot " + e);
|
|
5
|
+
var g = (t, i, e) => (h(t, i, "read from private field"), e ? e.call(t) : i.get(t)), f = (t, i, e) => i.has(t) ? v("Cannot add the same private member more than once") : i instanceof WeakSet ? i.add(t) : i.set(t, e), r = (t, i, e, s) => (h(t, i, "write to private field"), s ? s.call(t, e) : i.set(t, e), e);
|
|
6
|
+
import { __esDecorate as m, __runInitializers as u } from "tslib";
|
|
7
7
|
import { property as p } from "lit/decorators.js";
|
|
8
8
|
import { html as y } from "lit/static-html.js";
|
|
9
9
|
import { isLean as z } from "../../core/dom.js";
|
|
10
10
|
import { css as k } from "lit";
|
|
11
11
|
import "../../icon.js";
|
|
12
12
|
const x = k`*,:before,:after{box-sizing:border-box}:host{--sbb-navigation-action-color: var(--sbb-color-cloud);--sbb-navigation-action-icon-display: none;display:block;outline:none!important}:host([data-section-action][data-action-active].sbb-active){--sbb-navigation-action-icon-display: block}:host([data-action-active]){--sbb-navigation-action-color: var(--sbb-color-storm)}@media (forced-colors: active){:host([data-action-active]){--sbb-navigation-action-color: Highlight}}sbb-icon{display:var(--sbb-navigation-action-icon-display);position:absolute;inset-inline-start:calc((var(--sbb-size-icon-ui-small) + var(--sbb-spacing-fixed-1x)) * -1);inset-block-start:calc(1em * var(--sbb-typo-line-height-body-text) / 2);transform:translateY(-50%)}@media (any-hover: hover){:host(:hover){--sbb-navigation-action-color: var(--sbb-color-storm)}}@media (forced-colors: active){:host([data-button]){--sbb-navigation-action-color: ButtonText}}:is(.sbb-navigation-button,.sbb-navigation-link){--sbb-title-line-height: var(--sbb-typo-line-height-titles);--sbb-title-margin-block-start: 0;--sbb-title-margin-block-end: 0;margin:0;margin-block:var(--sbb-title-margin-block-start) var(--sbb-title-margin-block-end);font-family:var(--sbb-typo-font-family);font-weight:700;line-height:var(--sbb-title-line-height);letter-spacing:var(--sbb-typo-letter-spacing-titles);font-size:var(--sbb-title-font-size);--sbb-title-font-size: var(--sbb-font-size-title-4);cursor:pointer;position:relative;text-decoration:none;display:flex;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:color var(--sbb-disable-animation-duration, var(--sbb-animation-duration-3x)) ease;-webkit-hyphens:auto;hyphens:auto;text-align:left;color:var(--sbb-navigation-action-color);outline:none}@media (forced-colors: active){:is(.sbb-navigation-button,.sbb-navigation-link){transition:none}}:host([size=m]) :is(.sbb-navigation-button,.sbb-navigation-link){--sbb-text-font-size: var(--sbb-font-size-text-s);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);font-weight:700}:host([size=s]) :is(.sbb-navigation-button,.sbb-navigation-link){--sbb-text-font-size: var(--sbb-font-size-text-xxs);font-family:var(--sbb-typo-font-family);font-weight:400;line-height:var(--sbb-typo-line-height-body-text);letter-spacing:var(--sbb-typo-letter-spacing-body-text);font-size:var(--sbb-text-font-size);font-weight:700}:host(:focus-visible) :is(.sbb-navigation-button,.sbb-navigation-link),:is(.sbb-navigation-button,.sbb-navigation-link):focus-visible{outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) var(--sbb-focus-outline-style, solid) var(--sbb-focus-outline-width);border-radius:calc(var(--sbb-border-radius-4x) - var(--sbb-focus-outline-offset))}`, I = (t) => (() => {
|
|
13
|
-
var
|
|
14
|
-
let e = t,
|
|
13
|
+
var n, o;
|
|
14
|
+
let e = t, s, l = [], c = [];
|
|
15
15
|
return o = class extends e {
|
|
16
|
-
constructor(...
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
u(this, s)
|
|
20
|
-
|
|
21
|
-
var r;
|
|
22
|
-
!this.hasAttribute("data-action-active") && this._navigationMarker && !this.connectedSection && ((r = this.marker) == null || r.select(this));
|
|
16
|
+
constructor(...a) {
|
|
17
|
+
super(...a);
|
|
18
|
+
f(this, n);
|
|
19
|
+
r(this, n, u(this, l, z() ? "s" : "l")), this.connectedSection = u(this, c), this._navigationMarker = null, this._navigationSection = null, this.addEventListener?.("click", () => {
|
|
20
|
+
!this.hasAttribute("data-action-active") && this._navigationMarker && !this.connectedSection && this.marker?.select(this);
|
|
23
21
|
});
|
|
24
22
|
}
|
|
25
23
|
/**
|
|
@@ -27,10 +25,10 @@ const x = k`*,:before,:after{box-sizing:border-box}:host{--sbb-navigation-action
|
|
|
27
25
|
* @default 'l' / 's' (lean)
|
|
28
26
|
*/
|
|
29
27
|
get size() {
|
|
30
|
-
return
|
|
28
|
+
return g(this, n);
|
|
31
29
|
}
|
|
32
|
-
set size(
|
|
33
|
-
|
|
30
|
+
set size(a) {
|
|
31
|
+
r(this, n, a);
|
|
34
32
|
}
|
|
35
33
|
/** The navigation marker in which the action is nested. */
|
|
36
34
|
get marker() {
|
|
@@ -46,11 +44,11 @@ const x = k`*,:before,:after{box-sizing:border-box}:host{--sbb-navigation-action
|
|
|
46
44
|
renderTemplate() {
|
|
47
45
|
return y`<sbb-icon name="dash-small"></sbb-icon> <slot></slot>`;
|
|
48
46
|
}
|
|
49
|
-
},
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
} }, metadata:
|
|
47
|
+
}, n = new WeakMap(), (() => {
|
|
48
|
+
const a = typeof Symbol == "function" && Symbol.metadata ? Object.create(e[Symbol.metadata] ?? null) : void 0;
|
|
49
|
+
s = [p({ reflect: !0 })], m(o, null, s, { kind: "accessor", name: "size", static: !1, private: !1, access: { has: (b) => "size" in b, get: (b) => b.size, set: (b, d) => {
|
|
50
|
+
b.size = d;
|
|
51
|
+
} }, metadata: a }, l, c), a && Object.defineProperty(o, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: a });
|
|
54
52
|
})(), o.styles = x, o;
|
|
55
53
|
})();
|
|
56
54
|
export {
|