@sbb-esta/lyne-elements 2.5.1 → 2.6.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/autocomplete/autocomplete-base-element.d.ts +19 -20
- package/autocomplete/autocomplete-base-element.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-button.js +7 -7
- 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.js +143 -134
- package/chip/chip/chip.d.ts +32 -0
- package/chip/chip/chip.d.ts.map +1 -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.d.ts +2 -0
- package/chip/chip-group.d.ts.map +1 -0
- package/chip/chip-group.js +225 -0
- package/chip/chip.d.ts +2 -0
- package/chip/chip.d.ts.map +1 -0
- package/chip/chip.js +85 -0
- package/chip.d.ts +3 -0
- package/chip.d.ts.map +1 -0
- package/chip.js +2 -0
- package/clock/clock.d.ts.map +1 -1
- package/clock.js +1 -1
- package/core/controllers/id-observer-controller.d.ts +21 -0
- package/core/controllers/id-observer-controller.d.ts.map +1 -0
- package/core/controllers/media-matchers-controller.d.ts.map +1 -1
- package/core/controllers.d.ts +2 -1
- package/core/controllers.d.ts.map +1 -1
- package/core/controllers.js +135 -80
- package/core/datetime/native-date-adapter.d.ts.map +1 -1
- package/core/datetime.js +8 -3
- package/core/dom/find-referenced-element.d.ts +1 -0
- package/core/dom/find-referenced-element.d.ts.map +1 -1
- package/core/dom/input-element.d.ts +3 -1
- package/core/dom/input-element.d.ts.map +1 -1
- package/core/i18n/i18n.d.ts +3 -0
- package/core/i18n/i18n.d.ts.map +1 -1
- package/core/i18n.js +135 -117
- package/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
- package/core/mixins.js +64 -59
- package/core/overlay/overlay-trigger-attributes.d.ts +1 -1
- package/core/overlay/overlay-trigger-attributes.d.ts.map +1 -1
- package/core/overlay/position.d.ts +1 -1
- package/core/overlay/position.d.ts.map +1 -1
- package/core/styles/core.scss +89 -24
- package/core/styles/image.scss +1 -1
- package/core/styles/mixins/table.scss +63 -26
- package/core/styles/table.scss +16 -0
- package/core/testing/scroll.d.ts +1 -0
- package/core/testing/scroll.d.ts.map +1 -1
- package/core/testing/wait-for-image-ready.d.ts.map +1 -1
- package/core/testing.js +8 -5
- package/core.css +90 -34
- package/custom-elements.json +1588 -650
- package/datepicker/datepicker/datepicker.d.ts +4 -4
- package/datepicker/datepicker/datepicker.d.ts.map +1 -1
- 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.js +30 -34
- package/datepicker/datepicker.js +103 -105
- package/development/autocomplete/autocomplete-base-element.d.ts +19 -20
- package/development/autocomplete/autocomplete-base-element.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-button.js +3 -3
- 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.js +1 -1
- package/development/autocomplete.js +103 -79
- package/development/chip/chip/chip.d.ts +32 -0
- package/development/chip/chip/chip.d.ts.map +1 -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.d.ts +2 -0
- package/development/chip/chip-group.d.ts.map +1 -0
- package/development/chip/chip-group.js +349 -0
- package/development/chip/chip.d.ts +2 -0
- package/development/chip/chip.d.ts.map +1 -0
- package/development/chip/chip.js +212 -0
- package/development/chip.d.ts +3 -0
- package/development/chip.d.ts.map +1 -0
- package/development/chip.js +3 -0
- package/development/clock/clock.d.ts.map +1 -1
- package/development/clock.js +5 -2
- 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/media-matchers-controller.d.ts.map +1 -1
- package/development/core/controllers.d.ts +2 -1
- package/development/core/controllers.d.ts.map +1 -1
- package/development/core/controllers.js +116 -44
- package/development/core/datetime/native-date-adapter.d.ts.map +1 -1
- package/development/core/datetime.js +6 -2
- 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/input-element.d.ts +3 -1
- package/development/core/dom/input-element.d.ts.map +1 -1
- package/development/core/dom.js +1 -1
- package/development/core/i18n/i18n.d.ts +3 -0
- package/development/core/i18n/i18n.d.ts.map +1 -1
- package/development/core/i18n.js +23 -2
- package/development/core/mixins/form-associated-input-mixin.d.ts.map +1 -1
- package/development/core/mixins.js +12 -3
- 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/position.d.ts +1 -1
- package/development/core/overlay/position.d.ts.map +1 -1
- package/development/core/overlay.js +1 -1
- package/development/core/testing/scroll.d.ts +1 -0
- package/development/core/testing/scroll.d.ts.map +1 -1
- package/development/core/testing/wait-for-image-ready.d.ts.map +1 -1
- package/development/core/testing.js +6 -2
- package/development/datepicker/datepicker/datepicker.d.ts +4 -4
- package/development/datepicker/datepicker/datepicker.d.ts.map +1 -1
- 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.js +4 -12
- package/development/datepicker/datepicker.js +46 -43
- 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.js +2 -5
- 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.js +2 -7
- package/development/flip-card/flip-card-details/flip-card-details.d.ts.map +1 -1
- package/development/flip-card/flip-card-details.js +3 -3
- package/development/form-field/form-field/form-field.d.ts.map +1 -1
- package/development/form-field/form-field.js +12 -145
- package/development/header/header/header.d.ts +6 -7
- package/development/header/header/header.d.ts.map +1 -1
- package/development/header/header.js +45 -34
- package/development/menu/menu/menu.d.ts +7 -8
- package/development/menu/menu/menu.d.ts.map +1 -1
- package/development/menu/menu.js +42 -41
- package/development/navigation/navigation/navigation.d.ts +7 -8
- package/development/navigation/navigation/navigation.d.ts.map +1 -1
- package/development/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
- package/development/navigation/navigation-marker.js +3 -3
- package/development/navigation/navigation-section/navigation-section.d.ts +8 -9
- package/development/navigation/navigation-section/navigation-section.d.ts.map +1 -1
- package/development/navigation/navigation-section.js +50 -47
- package/development/navigation/navigation.js +42 -40
- package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/development/option/optgroup/optgroup.d.ts +2 -2
- package/development/option/optgroup/optgroup.d.ts.map +1 -1
- package/development/option/optgroup.js +3 -3
- package/development/option/option/option-base-element.d.ts.map +1 -1
- package/development/option/option.js +3 -3
- package/development/paginator/paginator.js +12 -1
- package/development/popover/popover/popover.d.ts +8 -7
- package/development/popover/popover/popover.d.ts.map +1 -1
- package/development/popover/popover.js +28 -35
- package/development/select/select.d.ts +1 -1
- package/development/select/select.d.ts.map +1 -1
- package/development/select.js +15 -15
- 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.js +2 -7
- package/development/sidebar/sidebar/sidebar.d.ts.map +1 -1
- package/development/sidebar/sidebar.js +3 -3
- package/development/stepper/step/step.d.ts +15 -1
- package/development/stepper/step/step.d.ts.map +1 -1
- package/development/stepper/step-label.js +2 -2
- package/development/stepper/step.js +23 -3
- package/development/stepper/stepper/stepper.d.ts +1 -0
- package/development/stepper/stepper/stepper.d.ts.map +1 -1
- package/development/stepper/stepper.js +5 -1
- package/development/table/table-wrapper.js +2 -1
- 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.js +42 -44
- 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.js +18 -21
- 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.js +53 -56
- package/flip-card/flip-card-details/flip-card-details.d.ts.map +1 -1
- package/flip-card/flip-card-details.js +8 -8
- package/form-field/form-field/form-field.d.ts.map +1 -1
- package/form-field/form-field.js +102 -97
- package/header/header/header.d.ts +6 -7
- package/header/header/header.d.ts.map +1 -1
- package/header/header.js +72 -70
- package/index.d.ts +4 -0
- package/index.js +4 -0
- package/menu/menu/menu.d.ts +7 -8
- package/menu/menu/menu.d.ts.map +1 -1
- package/menu/menu.js +73 -73
- package/navigation/navigation/navigation.d.ts +7 -8
- package/navigation/navigation/navigation.d.ts.map +1 -1
- package/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
- package/navigation/navigation-marker.js +4 -4
- package/navigation/navigation-section/navigation-section.d.ts +8 -9
- package/navigation/navigation-section/navigation-section.d.ts.map +1 -1
- package/navigation/navigation-section.js +75 -77
- package/navigation/navigation.js +70 -70
- package/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/option/optgroup/optgroup.d.ts +2 -2
- package/option/optgroup/optgroup.d.ts.map +1 -1
- package/option/optgroup.js +13 -13
- package/option/option/option-base-element.d.ts.map +1 -1
- package/option/option.js +2 -2
- package/package.json +16 -1
- package/paginator/paginator.js +44 -44
- package/popover/popover/popover.d.ts +8 -7
- package/popover/popover/popover.d.ts.map +1 -1
- package/popover/popover.js +73 -73
- package/select/select.d.ts +1 -1
- package/select/select.d.ts.map +1 -1
- package/select.js +68 -67
- 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.js +10 -13
- package/sidebar/sidebar/sidebar.d.ts.map +1 -1
- package/sidebar/sidebar.js +2 -2
- package/standard-theme.css +166 -79
- package/stepper/step/step.d.ts +15 -1
- package/stepper/step/step.d.ts.map +1 -1
- package/stepper/step-label.js +1 -1
- package/stepper/step.js +36 -22
- package/stepper/stepper/stepper.d.ts +1 -0
- package/stepper/stepper/stepper.d.ts.map +1 -1
- package/stepper/stepper.js +19 -16
- package/table/table-wrapper.js +4 -4
- package/table.css +75 -44
- package/time-input/time-input.d.ts +6 -8
- package/time-input/time-input.d.ts.map +1 -1
- package/time-input.js +66 -73
package/menu/menu.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
var
|
|
1
|
+
var C = (s) => {
|
|
2
2
|
throw TypeError(s);
|
|
3
3
|
};
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
import { __esDecorate as
|
|
7
|
-
import { css as
|
|
8
|
-
import { customElement as
|
|
9
|
-
import { ref as
|
|
10
|
-
import { SbbFocusHandler as
|
|
11
|
-
import { SbbOpenCloseBaseElement as
|
|
12
|
-
import { SbbEscapableOverlayController as
|
|
13
|
-
import { hostAttributes as
|
|
14
|
-
import { SbbScrollHandler as
|
|
15
|
-
import { forwardEvent as
|
|
16
|
-
import { SbbNamedSlotListMixin as
|
|
17
|
-
import { isEventOnElement as
|
|
18
|
-
const
|
|
4
|
+
var A = (s, n, r) => n.has(s) || C("Cannot " + r);
|
|
5
|
+
var u = (s, n, r) => (A(s, n, "read from private field"), r ? r.call(s) : n.get(s)), g = (s, n, r) => n.has(s) ? C("Cannot add the same private member more than once") : n instanceof WeakSet ? n.add(s) : n.set(s, r), d = (s, n, r, o) => (A(s, n, "write to private field"), o ? o.call(s, r) : n.set(s, r), r);
|
|
6
|
+
import { __esDecorate as _, __runInitializers as m } from "tslib";
|
|
7
|
+
import { css as B, isServer as I, html as S } from "lit";
|
|
8
|
+
import { customElement as T, property as L } from "lit/decorators.js";
|
|
9
|
+
import { ref as M } from "lit/directives/ref.js";
|
|
10
|
+
import { SbbFocusHandler as P, setModalityOnNextFocus as O, isArrowKeyOrPageKeysPressed as D, interactivityChecker as H, getNextElementIndex as R, IS_FOCUSABLE_QUERY as U } from "../core/a11y.js";
|
|
11
|
+
import { SbbOpenCloseBaseElement as z } from "../core/base-elements.js";
|
|
12
|
+
import { SbbIdReferenceController as K, SbbEscapableOverlayController as F, SbbInertController as $, SbbMediaMatcherController as q, SbbMediaQueryBreakpointSmallAndBelow as p } from "../core/controllers.js";
|
|
13
|
+
import { hostAttributes as Y, forceType as Z } from "../core/decorators.js";
|
|
14
|
+
import { SbbScrollHandler as j, isZeroAnimationDuration as Q } from "../core/dom.js";
|
|
15
|
+
import { forwardEvent as V } from "../core/eventing.js";
|
|
16
|
+
import { SbbNamedSlotListMixin as W } from "../core/mixins.js";
|
|
17
|
+
import { isEventOnElement as N, removeAriaOverlayTriggerAttributes as G, setAriaOverlayTriggerAttributes as J, getElementPosition as X } from "../core/overlay.js";
|
|
18
|
+
const ee = B`*,:before,:after{box-sizing:border-box}:host{display:contents;--sbb-menu-position-x: 0;--sbb-menu-position-y: 0;--sbb-menu-animation-duration: var( --sbb-disable-animation-duration, var(--sbb-animation-duration-6x) );--sbb-menu-animation-easing: ease;--sbb-menu-transform: translateY(100%);--sbb-menu-max-width: 100%;--sbb-menu-min-width: 100%;--sbb-menu-inset: 0 auto auto 0;--sbb-menu-container-height: 100dvh;--sbb-menu-max-height: calc(85vh - var(--sbb-spacing-fixed-8x));--sbb-menu-min-height: 3.03125rem;--sbb-menu-border-radius: var(--sbb-border-radius-4x);--sbb-menu-visibility: hidden;--sbb-menu-backdrop-color: transparent}@media (min-width: 52.5rem){:host{--sbb-menu-transform: translateY(var(--sbb-spacing-fixed-2x));--sbb-menu-max-width: 20rem;--sbb-menu-min-width: 11.25rem}}:host(:is([data-state=opened],[data-state=opening])){--sbb-menu-visibility: visible;--sbb-menu-backdrop-color: var(--sbb-color-black-alpha-20)}@media (min-width: 52.5rem){:host(:is([data-state=opened],[data-state=opening])){--sbb-menu-backdrop-color: transparent}}:host(:not([data-state=closed])){--sbb-menu-inset: 0}::slotted(:not(sbb-menu-button,sbb-menu-link,sbb-divider)){display:block;padding-inline:var(--sbb-spacing-fixed-5x)}::slotted(sbb-divider){--sbb-divider-color: var(--sbb-color-iron);margin-block:var(--sbb-spacing-fixed-2x)}.sbb-menu__container{position:fixed;pointer-events:none;inset:var(--sbb-menu-inset);height:var(--sbb-menu-container-height);z-index:var(--sbb-menu-z-index, var(--sbb-overlay-default-z-index))}.sbb-menu__container:before{content:"";visibility:var(--sbb-menu-visibility);pointer-events:all;position:fixed;inset:var(--sbb-menu-inset);height:var(--sbb-menu-container-height);background-color:var(--sbb-menu-backdrop-color);transition-duration:var(--sbb-menu-animation-duration);transition-timing-function:var(--sbb-menu-animation-easing);transition-property:background-color,visibility}.sbb-menu{display:none;opacity:0;pointer-events:none;max-width:var(--sbb-menu-max-width);min-width:var(--sbb-menu-min-width);text-align:start;position:absolute;inset-inline-start:0;inset-block-start:unset;inset-block-end:0;inset-inline-end:unset;color:var(--sbb-color-white);border:none;border-radius:var(--sbb-menu-border-radius) var(--sbb-menu-border-radius) 0 0;background-color:var(--sbb-color-black);padding:0;overflow:hidden}:host([data-state]:not([data-state=closed])) .sbb-menu{display:block;opacity:1;pointer-events:all;animation-name:open;animation-duration:var(--sbb-menu-animation-duration);animation-timing-function:var(--sbb-menu-animation-easing)}:host([data-state][data-state=closing]) .sbb-menu{pointer-events:none;animation-name:close}@media (forced-colors: active){.sbb-menu{outline:var(--sbb-border-width-1x) solid CanvasText}}@media (min-width: 52.5rem){.sbb-menu{top:0;bottom:unset;left:0;right:unset;max-height:fit-content;border-radius:var(--sbb-menu-border-radius)}:host(:not([data-state=closed])) .sbb-menu{top:var(--sbb-menu-position-y);left:var(--sbb-menu-position-x);max-height:var(--sbb-menu-max-height);min-height:var(--sbb-menu-min-height)}}.sbb-menu__content{--sbb-scrollbar-thumb-width: .125rem;--sbb-scrollbar-thumb-width-hover: .25rem;--sbb-scrollbar-width-firefox: thin;--sbb-scrollbar-color: var(--sbb-color-white-alpha-30);--sbb-scrollbar-color-hover: var(--sbb-color-white-alpha-60);--sbb-scrollbar-track-color: transparent;--sbb-scrollbar-width: var(--sbb-spacing-fixed-3x)}.sbb-menu__content::-webkit-scrollbar{width:var(--sbb-scrollbar-width);height:var(--sbb-scrollbar-width);background-color:var(--sbb-scrollbar-track-color, transparent)}.sbb-menu__content::-webkit-scrollbar-corner{background-color:var(--sbb-scrollbar-track-color, transparent)}.sbb-menu__content::-webkit-scrollbar-thumb{background-color:var(--sbb-scrollbar-color, currentcolor);border:calc(.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width))) solid transparent;border-radius:var(--sbb-border-radius-4x);background-clip:padding-box}.sbb-menu__content::-webkit-scrollbar-thumb:hover{background-color:var(--sbb-scrollbar-color-hover, currentcolor);border-width:calc(.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width-hover)))}.sbb-menu__content::-webkit-scrollbar-button,.sbb-menu__content::-webkit-scrollbar-corner{display:none}@supports not selector(::-webkit-scrollbar){.sbb-menu__content{scrollbar-width:var(--sbb-scrollbar-width-firefox);scrollbar-color:var(--sbb-scrollbar-color, currentcolor) var(--sbb-scrollbar-track-color, transparent)}}.sbb-menu__content{max-height:var(--sbb-menu-max-height);padding-block:var(--sbb-spacing-fixed-1x);overflow:auto;outline:none}.sbb-menu__content:after{content:"";display:block;height:var(--sbb-spacing-fixed-8x)}@media (min-width: 52.5rem){.sbb-menu__content{max-height:fit-content}:host(:not([data-state=closed])) .sbb-menu__content{max-height:var(--sbb-menu-max-height);min-height:var(--sbb-menu-min-height)}.sbb-menu__content:after{display:none}}.sbb-menu-list{list-style:none;margin:0;padding:0;font-size:inherit}@keyframes open{0%{opacity:0;transform:var(--sbb-menu-transform)}to{opacity:1;transform:translateY(0)}}@keyframes close{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:var(--sbb-menu-transform)}}`, te = 8, ie = [
|
|
19
19
|
"A",
|
|
20
20
|
"BUTTON",
|
|
21
21
|
"SBB-BUTTON",
|
|
@@ -25,53 +25,53 @@ const G = O`*,:before,:after{box-sizing:border-box}:host{display:contents;--sbb-
|
|
|
25
25
|
"SBB-LINK-BUTTON",
|
|
26
26
|
"SBB-BLOCK-LINK-BUTTON"
|
|
27
27
|
];
|
|
28
|
-
let
|
|
29
|
-
var c,
|
|
30
|
-
let s = [
|
|
28
|
+
let se = 0, ve = (() => {
|
|
29
|
+
var c, h, a;
|
|
30
|
+
let s = [T("sbb-menu"), Y({
|
|
31
31
|
popover: "manual"
|
|
32
|
-
})], n, r = [],
|
|
33
|
-
return
|
|
32
|
+
})], n, r = [], o, v = W(z), f, w = [], y = [], k, x = [], E = [];
|
|
33
|
+
return a = class extends v {
|
|
34
34
|
constructor() {
|
|
35
35
|
var e, t;
|
|
36
36
|
super();
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
37
|
+
g(this, c);
|
|
38
|
+
g(this, h);
|
|
39
|
+
this.listChildLocalNames = ["sbb-menu-button", "sbb-menu-link"], d(this, c, m(this, w, null)), d(this, h, (m(this, y), m(this, x, ""))), this._menu = m(this, E), this._triggerElement = null, this._triggerIdReferenceController = new K(this, "trigger"), this._isPointerDownEventOnMenu = !1, this._escapableOverlayController = new F(this), this._focusHandler = new P(), this._scrollHandler = new j(), this._inertController = new $(this), this._mediaMatcher = new q(this, {
|
|
40
|
+
[p]: (i) => {
|
|
40
41
|
i && (this.state === "opening" || this.state === "opened") ? this._scrollHandler.disableScroll() : this._scrollHandler.enableScroll();
|
|
41
42
|
}
|
|
42
43
|
}), this._pointerDownListener = (i) => {
|
|
43
|
-
this._isPointerDownEventOnMenu =
|
|
44
|
+
this._isPointerDownEventOnMenu = N(this._menu, i);
|
|
44
45
|
}, this._closeOnBackdropClick = (i) => {
|
|
45
|
-
!this._isPointerDownEventOnMenu && !
|
|
46
|
+
!this._isPointerDownEventOnMenu && !N(this._menu, i) && this.close();
|
|
46
47
|
}, (e = this.addEventListener) == null || e.call(this, "click", (i) => this._onClick(i)), (t = this.addEventListener) == null || t.call(this, "keydown", (i) => this._handleKeyDown(i));
|
|
47
48
|
}
|
|
48
49
|
/**
|
|
49
50
|
* The element that will trigger the menu overlay.
|
|
50
51
|
* Accepts both a string (id of an element) or an HTML element.
|
|
51
52
|
*/
|
|
52
|
-
set trigger(e) {
|
|
53
|
-
const t = this._trigger;
|
|
54
|
-
this._trigger = e, this._removeTriggerClickListener(this._trigger, t);
|
|
55
|
-
}
|
|
56
53
|
get trigger() {
|
|
57
|
-
return this
|
|
54
|
+
return u(this, c);
|
|
55
|
+
}
|
|
56
|
+
set trigger(e) {
|
|
57
|
+
d(this, c, e);
|
|
58
58
|
}
|
|
59
59
|
/**
|
|
60
60
|
* This will be forwarded as aria-label to the inner list.
|
|
61
61
|
* Used only if the menu automatically renders the actions inside as a list.
|
|
62
62
|
*/
|
|
63
63
|
get listAccessibilityLabel() {
|
|
64
|
-
return
|
|
64
|
+
return u(this, h);
|
|
65
65
|
}
|
|
66
66
|
set listAccessibilityLabel(e) {
|
|
67
|
-
d(this,
|
|
67
|
+
d(this, h, e);
|
|
68
68
|
}
|
|
69
69
|
/**
|
|
70
70
|
* Opens the menu on trigger click.
|
|
71
71
|
*/
|
|
72
72
|
open() {
|
|
73
73
|
var e, t;
|
|
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(
|
|
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());
|
|
75
75
|
}
|
|
76
76
|
/**
|
|
77
77
|
* Closes the menu.
|
|
@@ -81,17 +81,17 @@ let ee = 0, ge = (() => {
|
|
|
81
81
|
this.state !== "opening" && this.willClose.emit() && (this.state = "closing", (e = this._triggerElement) == null || e.setAttribute("aria-expanded", "false"), this._isZeroAnimationDuration() && this._handleClosing());
|
|
82
82
|
}
|
|
83
83
|
_isZeroAnimationDuration() {
|
|
84
|
-
return
|
|
84
|
+
return Q(this, "--sbb-menu-animation-duration");
|
|
85
85
|
}
|
|
86
86
|
_handleOpening() {
|
|
87
|
-
this.state = "opened", this._inertController.activate(), this.
|
|
87
|
+
this.state = "opened", this._inertController.activate(), this._escapableOverlayController.connect(), this._setMenuFocus(), this._focusHandler.trap(this), this._attachWindowEvents(), this.didOpen.emit();
|
|
88
88
|
}
|
|
89
89
|
_handleClosing() {
|
|
90
|
-
var e, t, i,
|
|
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(),
|
|
90
|
+
var e, t, i, l, b;
|
|
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(), O(this._triggerElement), (l = this._triggerElement) == null || l.focus({
|
|
92
92
|
// When inside the sbb-header, we prevent the scroll to avoid the snapping to the top of the page
|
|
93
93
|
preventScroll: this._triggerElement.localName === "sbb-header-button" || this._triggerElement.localName === "sbb-header-link"
|
|
94
|
-
}), this.
|
|
94
|
+
}), this._escapableOverlayController.disconnect(), this.didClose.emit(), (b = this._windowEventsController) == null || b.abort(), this._focusHandler.disconnect(), this._scrollHandler.enableScroll();
|
|
95
95
|
}
|
|
96
96
|
/**
|
|
97
97
|
* Handles click and checks if its target is a sbb-menu-button/sbb-menu-link.
|
|
@@ -101,37 +101,33 @@ let ee = 0, ge = (() => {
|
|
|
101
101
|
((t == null ? void 0 : t.localName) === "sbb-menu-button" || (t == null ? void 0 : t.localName) === "sbb-menu-link") && this.close();
|
|
102
102
|
}
|
|
103
103
|
_handleKeyDown(e) {
|
|
104
|
-
if (!
|
|
104
|
+
if (!D(e))
|
|
105
105
|
return;
|
|
106
106
|
e.preventDefault();
|
|
107
|
-
const t = Array.from(this.querySelectorAll("sbb-menu-button, sbb-menu-link")).filter((b) => (!b.disabled || b.disabledInteractive) &&
|
|
108
|
-
let
|
|
107
|
+
const t = Array.from(this.querySelectorAll("sbb-menu-button, sbb-menu-link")).filter((b) => (!b.disabled || b.disabledInteractive) && H.isVisible(b)), i = t.findIndex((b) => b === e.target);
|
|
108
|
+
let l;
|
|
109
109
|
switch (e.key) {
|
|
110
110
|
case "ArrowUp":
|
|
111
111
|
case "ArrowDown":
|
|
112
112
|
case "ArrowLeft":
|
|
113
113
|
case "ArrowRight":
|
|
114
|
-
|
|
114
|
+
l = R(e, i, t.length);
|
|
115
115
|
break;
|
|
116
116
|
case "PageUp":
|
|
117
117
|
case "Home":
|
|
118
|
-
|
|
118
|
+
l = 0;
|
|
119
119
|
break;
|
|
120
120
|
case "End":
|
|
121
121
|
case "PageDown":
|
|
122
|
-
|
|
122
|
+
l = t.length - 1;
|
|
123
123
|
break;
|
|
124
124
|
// this should never happen since all the case allowed by `isArrowKeyOrPageKeysPressed` should be covered
|
|
125
125
|
default:
|
|
126
|
-
|
|
126
|
+
l = 0;
|
|
127
127
|
}
|
|
128
|
-
t[
|
|
128
|
+
t[l].focus();
|
|
129
129
|
}
|
|
130
130
|
// Removes trigger click listener on trigger change.
|
|
131
|
-
_removeTriggerClickListener(e, t) {
|
|
132
|
-
var i, o;
|
|
133
|
-
e !== t && ((i = this._menuController) == null || i.abort(), (o = this._windowEventsController) == null || o.abort(), this._configure(this.trigger));
|
|
134
|
-
}
|
|
135
131
|
createRenderRoot() {
|
|
136
132
|
var t;
|
|
137
133
|
const e = super.createRenderRoot();
|
|
@@ -140,21 +136,25 @@ let ee = 0, ge = (() => {
|
|
|
140
136
|
}), e;
|
|
141
137
|
}
|
|
142
138
|
connectedCallback() {
|
|
143
|
-
super.connectedCallback(), this.
|
|
139
|
+
super.connectedCallback(), this.id || (this.id = `sbb-menu-${se++}`), this._configureTrigger(), this.isOpen && this._inertController.activate();
|
|
144
140
|
}
|
|
145
141
|
disconnectedCallback() {
|
|
146
142
|
var e, t;
|
|
147
|
-
super.disconnectedCallback(), (e = this.
|
|
143
|
+
super.disconnectedCallback(), this._triggerElement = null, (e = this._triggerAbortController) == null || e.abort(), (t = this._windowEventsController) == null || t.abort(), this._focusHandler.disconnect(), this._scrollHandler.enableScroll();
|
|
144
|
+
}
|
|
145
|
+
requestUpdate(e, t, i) {
|
|
146
|
+
super.requestUpdate(e, t, i), !I && (!e || e === "trigger") && this.hasUpdated && this._configureTrigger();
|
|
148
147
|
}
|
|
149
148
|
_checkListCase(e) {
|
|
150
149
|
var t;
|
|
151
150
|
(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 = []));
|
|
152
151
|
}
|
|
153
152
|
// Check if the trigger is valid and attach click event listeners.
|
|
154
|
-
|
|
153
|
+
_configureTrigger() {
|
|
155
154
|
var t;
|
|
156
|
-
|
|
157
|
-
|
|
155
|
+
const e = this.trigger instanceof HTMLElement ? this.trigger : this._triggerIdReferenceController.find();
|
|
156
|
+
e !== this._triggerElement && ((t = this._triggerAbortController) == null || t.abort(), G(this._triggerElement), this._triggerElement = e, this._triggerElement && (J(this._triggerElement, "menu", this.id, this.state), this._triggerAbortController = new AbortController(), this._triggerElement.addEventListener("click", () => this.open(), {
|
|
157
|
+
signal: this._triggerAbortController.signal
|
|
158
158
|
})));
|
|
159
159
|
}
|
|
160
160
|
_attachWindowEvents() {
|
|
@@ -176,7 +176,7 @@ let ee = 0, ge = (() => {
|
|
|
176
176
|
// Close menu at any click on an interactive element inside the <sbb-menu> that bubbles to the container.
|
|
177
177
|
_closeOnInteractiveElementClick(e) {
|
|
178
178
|
const t = e.target;
|
|
179
|
-
|
|
179
|
+
ie.includes(t.nodeName) && !t.hasAttribute("disabled") && this.close();
|
|
180
180
|
}
|
|
181
181
|
// Set menu position (x, y) to '0' once the menu is closed and the transition ended to prevent the
|
|
182
182
|
// viewport from overflowing. And set the focus to the first focusable element once the menu is open.
|
|
@@ -187,46 +187,46 @@ let ee = 0, ge = (() => {
|
|
|
187
187
|
}
|
|
188
188
|
// Set focus on the first focusable element.
|
|
189
189
|
_setMenuFocus() {
|
|
190
|
-
const e = this.querySelector(
|
|
191
|
-
|
|
190
|
+
const e = this.querySelector(U);
|
|
191
|
+
O(e), e.focus();
|
|
192
192
|
}
|
|
193
193
|
// Set menu position and max height if the breakpoint is medium-ultra.
|
|
194
194
|
_setMenuPosition() {
|
|
195
|
-
if ((this._mediaMatcher.matches(
|
|
195
|
+
if ((this._mediaMatcher.matches(p) ?? !0) || !this._menu || !this._triggerElement || this.state === "closing")
|
|
196
196
|
return;
|
|
197
|
-
const e =
|
|
198
|
-
verticalOffset:
|
|
197
|
+
const e = X(this.shadowRoot.querySelector(".sbb-menu__content"), this._triggerElement, this.shadowRoot.querySelector(".sbb-menu__container"), {
|
|
198
|
+
verticalOffset: te
|
|
199
199
|
});
|
|
200
200
|
this.style.setProperty("--sbb-menu-position-x", `${e.left}px`), this.style.setProperty("--sbb-menu-position-y", `${e.top}px`), this.style.setProperty("--sbb-menu-max-height", e.maxHeight);
|
|
201
201
|
}
|
|
202
202
|
render() {
|
|
203
|
-
return
|
|
203
|
+
return S`
|
|
204
204
|
<div class="sbb-menu__container">
|
|
205
205
|
<div
|
|
206
206
|
@animationend=${this._onMenuAnimationEnd}
|
|
207
207
|
class="sbb-menu"
|
|
208
|
-
${
|
|
208
|
+
${M((e) => this._menu = e)}
|
|
209
209
|
>
|
|
210
210
|
<div
|
|
211
211
|
@click=${(e) => this._closeOnInteractiveElementClick(e)}
|
|
212
|
-
@scroll=${(e) =>
|
|
212
|
+
@scroll=${(e) => V(e, document)}
|
|
213
213
|
class="sbb-menu__content"
|
|
214
214
|
>
|
|
215
|
-
${this.listChildren.length ? this.renderList({ class: "sbb-menu-list", ariaLabel: this.listAccessibilityLabel }) :
|
|
215
|
+
${this.listChildren.length ? this.renderList({ class: "sbb-menu-list", ariaLabel: this.listAccessibilityLabel }) : S`<slot></slot>`}
|
|
216
216
|
</div>
|
|
217
217
|
</div>
|
|
218
218
|
</div>
|
|
219
219
|
`;
|
|
220
220
|
}
|
|
221
|
-
}, c = new WeakMap(),
|
|
222
|
-
const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(
|
|
223
|
-
|
|
221
|
+
}, c = new WeakMap(), h = new WeakMap(), o = a, (() => {
|
|
222
|
+
const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(v[Symbol.metadata] ?? null) : void 0;
|
|
223
|
+
f = [L()], k = [Z(), L({ attribute: "list-accessibility-label" })], _(a, null, f, { kind: "accessor", name: "trigger", static: !1, private: !1, access: { has: (t) => "trigger" in t, get: (t) => t.trigger, set: (t, i) => {
|
|
224
224
|
t.trigger = i;
|
|
225
|
-
} }, metadata: e },
|
|
225
|
+
} }, metadata: e }, w, y), _(a, null, k, { kind: "accessor", name: "listAccessibilityLabel", static: !1, private: !1, access: { has: (t) => "listAccessibilityLabel" in t, get: (t) => t.listAccessibilityLabel, set: (t, i) => {
|
|
226
226
|
t.listAccessibilityLabel = i;
|
|
227
|
-
} }, metadata: e },
|
|
228
|
-
})(),
|
|
227
|
+
} }, metadata: e }, x, E), _(null, n = { value: o }, s, { kind: "class", name: o.name, metadata: e }, null, r), o = n.value, e && Object.defineProperty(o, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
|
|
228
|
+
})(), a.styles = ee, m(o, r), o;
|
|
229
229
|
})();
|
|
230
230
|
export {
|
|
231
|
-
|
|
231
|
+
ve as SbbMenuElement
|
|
232
232
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CSSResultGroup, TemplateResult } from 'lit';
|
|
1
|
+
import { CSSResultGroup, PropertyDeclaration, TemplateResult } from 'lit';
|
|
2
2
|
import { SbbOpenCloseBaseElement } from '../../core/base-elements.js';
|
|
3
3
|
declare const SbbNavigationElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbUpdateSchedulerMixinType> & typeof SbbOpenCloseBaseElement;
|
|
4
4
|
/**
|
|
@@ -19,9 +19,7 @@ export declare class SbbNavigationElement extends SbbNavigationElement_base {
|
|
|
19
19
|
* The element that will trigger the navigation.
|
|
20
20
|
* Accepts both a string (id of an element) or an HTML element.
|
|
21
21
|
*/
|
|
22
|
-
|
|
23
|
-
get trigger(): string | HTMLElement | null;
|
|
24
|
-
private _trigger;
|
|
22
|
+
accessor trigger: string | HTMLElement | null;
|
|
25
23
|
/**
|
|
26
24
|
* This will be forwarded as aria-label to the close button element.
|
|
27
25
|
*/
|
|
@@ -34,10 +32,11 @@ export declare class SbbNavigationElement extends SbbNavigationElement_base {
|
|
|
34
32
|
private _navigation;
|
|
35
33
|
private _navigationContentElement;
|
|
36
34
|
private _triggerElement;
|
|
37
|
-
private
|
|
35
|
+
private _triggerAbortController;
|
|
36
|
+
private _triggerIdReferenceController;
|
|
38
37
|
private _language;
|
|
39
38
|
private _inertController;
|
|
40
|
-
private
|
|
39
|
+
private _escapableOverlayController;
|
|
41
40
|
private _focusHandler;
|
|
42
41
|
private _scrollHandler;
|
|
43
42
|
private _isPointerDownEventOnNavigation;
|
|
@@ -57,8 +56,7 @@ export declare class SbbNavigationElement extends SbbNavigationElement_base {
|
|
|
57
56
|
private _isZeroAnimationDuration;
|
|
58
57
|
private _handleClosing;
|
|
59
58
|
private _handleOpening;
|
|
60
|
-
private
|
|
61
|
-
private _configure;
|
|
59
|
+
private _configureTrigger;
|
|
62
60
|
private _trapFocusFilter;
|
|
63
61
|
private _onAnimationEnd;
|
|
64
62
|
private _resetMarkers;
|
|
@@ -71,6 +69,7 @@ export declare class SbbNavigationElement extends SbbNavigationElement_base {
|
|
|
71
69
|
private _onNavigationResize;
|
|
72
70
|
connectedCallback(): void;
|
|
73
71
|
disconnectedCallback(): void;
|
|
72
|
+
requestUpdate(name?: PropertyKey, oldValue?: unknown, options?: PropertyDeclaration): void;
|
|
74
73
|
protected render(): TemplateResult;
|
|
75
74
|
}
|
|
76
75
|
declare global {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../../../src/elements/navigation/navigation/navigation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../../../src/elements/navigation/navigation/navigation.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,cAAc,EAGnB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAKb,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAqBtE,OAAO,oCAAoC,CAAC;;AAW5C;;;;;;;;;;;GAWG;AACH,qBAMM,oBAAqB,SAAQ,yBAAgD;IACjF,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD;;;OAGG;IACH,SACgB,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAAQ;IAE5D;;OAEG;IACH,SAEgB,uBAAuB,EAAE,MAAM,CAAM;IAErD;;OAEG;IACM,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAA4B;IAE9E,IAAW,uBAAuB,IAAI,WAAW,GAAG,IAAI,CAEvD;IAED,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,yBAAyB,CAAe;IAChD,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,uBAAuB,CAAmB;IAClD,OAAO,CAAC,6BAA6B,CAAiD;IACtF,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,gBAAgB,CAAgC;IACxD,OAAO,CAAC,2BAA2B,CAA2C;IAC9E,OAAO,CAAC,aAAa,CAAyB;IAC9C,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,+BAA+B,CAAkB;IACzD,OAAO,CAAC,sBAAsB,CAA8C;IAC5E,OAAO,CAAC,yBAAyB,CAG9B;;IAkBH;;OAEG;IACI,IAAI,IAAI,IAAI;IAyBnB,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,mBAAmB;IAO3B;;OAEG;IACI,KAAK,IAAI,IAAI;IAmBpB,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,cAAc;IAmBtB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,gBAAgB,CAEtB;IAIF,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,oBAAoB,CAS1B;IAGF,OAAO,CAAC,qBAAqB,CAI3B;IAGF,OAAO,CAAC,0BAA0B;IAWlC,OAAO,CAAC,mBAAmB;IAkBX,iBAAiB,IAAI,IAAI;IASzB,oBAAoB,IAAI,IAAI;IAQ5B,aAAa,CAC3B,IAAI,CAAC,EAAE,WAAW,EAClB,QAAQ,CAAC,EAAE,OAAO,EAClB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,IAAI;cAQY,MAAM,IAAI,cAAc;CAqC5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,gBAAgB,EAAE,oBAAoB,CAAC;KACxC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-marker.d.ts","sourceRoot":"","sources":["../../../../src/elements/navigation/navigation-marker/navigation-marker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAIhG,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;;AAItE;;;;GAIG;AACH,qBAEM,0BAA2B,SAAQ,+BAG5B;IACX,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,mBAA4B,mBAAmB,WAG7C;IAEF;;;OAGG;IACH,SAA6C,IAAI,EAAE,GAAG,GAAG,GAAG,CAAwB;IAEpF,OAAO,CAAC,oBAAoB,CAAC,CAAwD;;
|
|
1
|
+
{"version":3,"file":"navigation-marker.d.ts","sourceRoot":"","sources":["../../../../src/elements/navigation/navigation-marker/navigation-marker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAIhG,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;;AAItE;;;;GAIG;AACH,qBAEM,0BAA2B,SAAQ,+BAG5B;IACX,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,mBAA4B,mBAAmB,WAG7C;IAEF;;;OAGG;IACH,SAA6C,IAAI,EAAE,GAAG,GAAG,GAAG,CAAwB;IAEpF,OAAO,CAAC,oBAAoB,CAAC,CAAwD;;cAalE,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAS9F,OAAO,CAAC,oBAAoB;IAWZ,iBAAiB,IAAI,IAAI;IAKzC,OAAO,CAAC,kBAAkB;IASnB,MAAM,CAAC,MAAM,EAAE,0BAA0B,GAAG,wBAAwB,GAAG,IAAI;cAU/D,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAMzF,KAAK,IAAI,IAAI;IAQpB,OAAO,CAAC,kBAAkB;cAcP,MAAM,IAAI,cAAc;CAG5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,uBAAuB,EAAE,0BAA0B,CAAC;KACrD;CACF"}
|
|
@@ -12,7 +12,7 @@ import { SbbNamedSlotListMixin as C } from "../core/mixins.js";
|
|
|
12
12
|
const M = _`*,:before,:after{box-sizing:border-box}:host{--sbb-navigation-action-gap: var(--sbb-spacing-responsive-xs);--sbb-navigation-marker-position-x: var(--sbb-spacing-fixed-1x);--sbb-navigation-marker-position-y: unset;--sbb-navigation-marker-width: 1.0625rem;--sbb-navigation-marker-border: var(--sbb-border-width-1x);--sbb-navigation-marker-padding-inline-start: var(--sbb-spacing-fixed-6x);--sbb-navigation-marker-typo-line-height: var(--sbb-typo-line-height-titles);--sbb-navigation-margin-inline-start: var(--sbb-spacing-fixed-3x);--sbb-navigation-marker-margin-block: calc( 1em * var(--sbb-navigation-marker-typo-line-height) / 2 - var(--sbb-navigation-marker-border) / 2 );display:block}:host([size=s]){--sbb-navigation-action-gap: var(--sbb-spacing-fixed-2x);--sbb-navigation-marker-width: .5rem;--sbb-navigation-marker-typo-line-height: var(--sbb-typo-line-height-body-text);--sbb-navigation-margin-inline-start: var(--sbb-spacing-fixed-2x);--sbb-navigation-marker-position-x: calc( var(--sbb-navigation-marker-padding-inline-start) - var(--sbb-spacing-fixed-2x) );--sbb-navigation-marker-padding-inline-start: calc( var(--sbb-spacing-fixed-6x) + var(--sbb-spacing-fixed-1x) )}.sbb-navigation-marker{list-style:none;padding:0;font-size:inherit;--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);position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:var(--sbb-navigation-action-gap);padding-inline-start:var(--sbb-navigation-marker-padding-inline-start)}.sbb-navigation-marker:before{content:"";position:absolute;opacity:0;inset-inline-start:var(--sbb-navigation-marker-position-x);inset-block-start:var(--sbb-navigation-marker-position-y);width:var(--sbb-navigation-marker-width);border-block-start:var(--sbb-navigation-marker-border) solid var(--sbb-color-storm);margin-block:var(--sbb-navigation-marker-margin-block);transition-duration:var(--sbb-disable-animation-duration, var(--sbb-animation-duration-6x));transition-timing-function:ease;transition-property:opacity,inset-block-start}:host([data-has-active-action]) .sbb-navigation-marker:before{opacity:1}@media (forced-colors: active){.sbb-navigation-marker:before{border-color:CanvasText}}:host([size=s]) .sbb-navigation-marker{--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}::slotted(:is(sbb-navigation-button,sbb-navigation-link)){margin-inline-start:var(--sbb-navigation-margin-inline-start)}`;
|
|
13
13
|
let O = (() => {
|
|
14
14
|
var o, n;
|
|
15
|
-
let i = [z("sbb-navigation-marker")], e, a = [], s, v = C(A), g,
|
|
15
|
+
let i = [z("sbb-navigation-marker")], e, a = [], s, v = C(A), g, d = [], m = [];
|
|
16
16
|
return n = class extends v {
|
|
17
17
|
constructor() {
|
|
18
18
|
super();
|
|
@@ -20,10 +20,10 @@ let O = (() => {
|
|
|
20
20
|
this.listChildLocalNames = [
|
|
21
21
|
"sbb-navigation-button",
|
|
22
22
|
"sbb-navigation-link"
|
|
23
|
-
], l(this, o, c(this,
|
|
23
|
+
], l(this, o, c(this, d, S() ? "s" : "l")), this._currentActiveAction = c(this, m), this.addController(new y(this, {
|
|
24
24
|
skipInitial: !0,
|
|
25
25
|
callback: () => this._setMarkerPosition()
|
|
26
|
-
});
|
|
26
|
+
}));
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
29
|
* Marker size variant, either s or l.
|
|
@@ -74,7 +74,7 @@ let O = (() => {
|
|
|
74
74
|
const t = typeof Symbol == "function" && Symbol.metadata ? Object.create(v[Symbol.metadata] ?? null) : void 0;
|
|
75
75
|
g = [w({ reflect: !0 })], x(n, null, g, { kind: "accessor", name: "size", static: !1, private: !1, access: { has: (r) => "size" in r, get: (r) => r.size, set: (r, b) => {
|
|
76
76
|
r.size = b;
|
|
77
|
-
} }, metadata: t },
|
|
77
|
+
} }, metadata: t }, d, m), x(null, e = { value: s }, i, { kind: "class", name: s.name, metadata: t }, null, a), s = e.value, t && Object.defineProperty(s, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: t });
|
|
78
78
|
})(), n.styles = M, c(s, a), s;
|
|
79
79
|
})();
|
|
80
80
|
export {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CSSResultGroup, LitElement, TemplateResult } from 'lit';
|
|
1
|
+
import { CSSResultGroup, LitElement, PropertyDeclaration, TemplateResult } from 'lit';
|
|
2
2
|
declare const SbbNavigationSectionElement_base: import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbUpdateSchedulerMixinType> & typeof LitElement;
|
|
3
3
|
/**
|
|
4
4
|
* It can be used as a container for `sbb-navigation-list` within a `sbb-navigation`.
|
|
@@ -13,11 +13,9 @@ export declare class SbbNavigationSectionElement extends SbbNavigationSectionEle
|
|
|
13
13
|
accessor titleContent: string;
|
|
14
14
|
/**
|
|
15
15
|
* The element that will trigger the navigation section.
|
|
16
|
-
* Accepts both a string (id of an element) or an
|
|
16
|
+
* Accepts both a string (id of an element) or an SbbNavigationButtonElement.
|
|
17
17
|
*/
|
|
18
|
-
|
|
19
|
-
get trigger(): string | HTMLElement | null;
|
|
20
|
-
private _trigger;
|
|
18
|
+
accessor trigger: string | HTMLElement | null;
|
|
21
19
|
/**
|
|
22
20
|
* This will be forwarded as aria-label to the nav element and is read as a title of the navigation-section.
|
|
23
21
|
*/
|
|
@@ -35,7 +33,8 @@ export declare class SbbNavigationSectionElement extends SbbNavigationSectionEle
|
|
|
35
33
|
private _navigationSection;
|
|
36
34
|
private _navigationSectionContainerElement;
|
|
37
35
|
private _triggerElement;
|
|
38
|
-
private
|
|
36
|
+
private _triggerAbortController;
|
|
37
|
+
private _triggerIdReferenceController;
|
|
39
38
|
private _windowEventsController;
|
|
40
39
|
private _language;
|
|
41
40
|
constructor();
|
|
@@ -46,14 +45,13 @@ export declare class SbbNavigationSectionElement extends SbbNavigationSectionEle
|
|
|
46
45
|
private _isZeroAnimationDuration;
|
|
47
46
|
private _handleOpening;
|
|
48
47
|
private _handleClosing;
|
|
49
|
-
private _setActiveNavigationAction;
|
|
50
48
|
private _closePreviousNavigationSection;
|
|
51
49
|
/**
|
|
52
50
|
* Closes the navigation section.
|
|
53
51
|
*/
|
|
54
52
|
close(): void;
|
|
55
|
-
private
|
|
56
|
-
private
|
|
53
|
+
private _configureTrigger;
|
|
54
|
+
private _isNavigationButton;
|
|
57
55
|
private _setNavigationInert;
|
|
58
56
|
private _onAnimationEnd;
|
|
59
57
|
private _resetLists;
|
|
@@ -67,6 +65,7 @@ export declare class SbbNavigationSectionElement extends SbbNavigationSectionEle
|
|
|
67
65
|
private _handleNavigationSectionFocus;
|
|
68
66
|
connectedCallback(): void;
|
|
69
67
|
disconnectedCallback(): void;
|
|
68
|
+
requestUpdate(name?: PropertyKey, oldValue?: unknown, options?: PropertyDeclaration): void;
|
|
70
69
|
protected render(): TemplateResult;
|
|
71
70
|
}
|
|
72
71
|
declare global {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-section.d.ts","sourceRoot":"","sources":["../../../../src/elements/navigation/navigation-section/navigation-section.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"navigation-section.d.ts","sourceRoot":"","sources":["../../../../src/elements/navigation/navigation-section/navigation-section.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,UAAU,EAEV,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAyBb,OAAO,oCAAoC,CAAC;AAC5C,OAAO,kBAAkB,CAAC;;AAI1B;;;;GAIG;AACH,qBAMM,2BAA4B,SAAQ,gCAAmC;IAC3E,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD;;OAEG;IACH,SAEgB,YAAY,EAAE,MAAM,CAAM;IAE1C;;;OAGG;IACH,SACgB,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAAQ;IAE5D;;OAEG;IACH,SAEgB,kBAAkB,EAAE,MAAM,CAAM;IAEhD;;OAEG;IACH,SAEgB,sBAAsB,EAAE,MAAM,CAAM;IAEpD;;OAEG;IACH,OAAO,KAAK,MAAM,QAGjB;IACD,OAAO,KAAK,MAAM,GAEjB;IAED,OAAO,CAAC,qBAAqB,CAAC,CAAqC;IACnE,OAAO,CAAC,kBAAkB,CAAe;IACzC,OAAO,CAAC,kCAAkC,CAAe;IACzD,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,uBAAuB,CAAmB;IAClD,OAAO,CAAC,6BAA6B,CAAiD;IACtF,OAAO,CAAC,uBAAuB,CAAmB;IAClD,OAAO,CAAC,SAAS,CAAmC;;IAOpD;;OAEG;IACI,IAAI,IAAI,IAAI;IAsBnB,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,+BAA+B;IAIvC;;OAEG;IACI,KAAK,IAAI,IAAI;IAkBpB,OAAO,CAAC,iBAAiB;IA2BzB,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,6BAA6B,CAOnC;IAEF,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,wBAAwB;IAKhC,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,0BAA0B;IAYlC,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,6BAA6B;IAoCrB,iBAAiB,IAAI,IAAI;IAQzB,oBAAoB,IAAI,IAAI;IAO5B,aAAa,CAC3B,IAAI,CAAC,EAAE,WAAW,EAClB,QAAQ,CAAC,EAAE,OAAO,EAClB,OAAO,CAAC,EAAE,mBAAmB,GAC5B,IAAI;cAQY,MAAM,IAAI,cAAc;CA0C5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,wBAAwB,EAAE,2BAA2B,CAAC;KACvD;CACF"}
|