@sbb-esta/lyne-elements 0.52.0 → 0.52.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/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
- package/breadcrumb/breadcrumb-group.js +32 -31
- package/core/base-elements.js +1 -2
- package/core/datetime.js +2 -4
- package/core/overlay/overlay.d.ts.map +1 -1
- package/core/overlay.js +55 -50
- package/core/testing/event-spy.d.ts +1 -1
- package/core/testing/wait-for-image-ready.d.ts +4 -0
- package/core/testing/wait-for-image-ready.d.ts.map +1 -0
- package/core/testing.d.ts +1 -0
- package/core/testing.d.ts.map +1 -1
- package/core/testing.js +28 -17
- package/custom-elements.json +70 -4
- package/development/accordion.js +2 -3
- package/development/action-group.js +2 -3
- package/development/alert/alert-group.js +2 -3
- package/development/alert/alert.js +2 -3
- package/development/autocomplete.js +2 -3
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
- package/development/breadcrumb/breadcrumb-group.js +5 -5
- package/development/breadcrumb/breadcrumb.js +2 -3
- package/development/button/button-link.js +2 -3
- package/development/button/button-static.js +2 -3
- package/development/button/button.js +2 -3
- package/development/button/common.js +2 -3
- package/development/button/mini-button.js +2 -3
- package/development/button/secondary-button-link.js +2 -3
- package/development/button/secondary-button-static.js +2 -3
- package/development/button/secondary-button.js +2 -3
- package/development/button/tertiary-button-link.js +2 -3
- package/development/button/tertiary-button-static.js +2 -3
- package/development/button/tertiary-button.js +2 -3
- package/development/button/transparent-button-link.js +2 -3
- package/development/button/transparent-button-static.js +2 -3
- package/development/button/transparent-button.js +2 -3
- package/development/calendar.js +2 -3
- package/development/card/card-badge.js +2 -3
- package/development/card/card-button.js +2 -3
- package/development/card/card-link.js +2 -3
- package/development/card/card.js +2 -3
- package/development/card/common.js +2 -3
- package/development/checkbox/checkbox-group.js +2 -3
- package/development/checkbox/checkbox.js +2 -3
- package/development/chip.js +2 -3
- package/development/clock.js +2 -3
- package/development/container/container.js +2 -3
- package/development/container/sticky-bar.js +2 -3
- package/development/core/base-elements.js +4 -7
- package/development/core/mixins.js +7 -13
- package/development/core/overlay/overlay.d.ts.map +1 -1
- package/development/core/overlay.js +9 -3
- package/development/core/testing/event-spy.d.ts +1 -1
- package/development/core/testing/wait-for-image-ready.d.ts +4 -0
- package/development/core/testing/wait-for-image-ready.d.ts.map +1 -0
- package/development/core/testing.d.ts +1 -0
- package/development/core/testing.d.ts.map +1 -1
- package/development/core/testing.js +17 -1
- package/development/datepicker/common.js +2 -3
- package/development/datepicker/datepicker-next-day.js +2 -3
- package/development/datepicker/datepicker-previous-day.js +2 -3
- package/development/datepicker/datepicker-toggle.js +2 -3
- package/development/datepicker/datepicker.js +2 -3
- package/development/dialog/dialog-actions.js +2 -3
- package/development/dialog/dialog-content.js +2 -3
- package/development/dialog/dialog-title.js +2 -3
- package/development/dialog/dialog.js +2 -3
- package/development/divider.js +2 -3
- package/development/expansion-panel/expansion-panel-content.js +2 -3
- package/development/expansion-panel/expansion-panel-header.js +2 -3
- package/development/expansion-panel/expansion-panel.js +2 -3
- package/development/file-selector.js +2 -3
- package/development/footer.js +2 -3
- package/development/form-error.js +2 -3
- package/development/form-field/form-field-clear.js +2 -3
- package/development/form-field/form-field.js +2 -3
- package/development/header/common.js +2 -3
- package/development/header/header-button.js +2 -3
- package/development/header/header-link.js +2 -3
- package/development/header/header.js +2 -3
- package/development/icon.js +4 -7
- package/development/image/image.d.ts +12 -3
- package/development/image/image.d.ts.map +1 -1
- package/development/image.js +41 -24
- package/development/journey-header.js +2 -3
- package/development/lead-container.js +2 -3
- package/development/link/block-link-button.js +2 -3
- package/development/link/block-link-static.js +2 -3
- package/development/link/block-link.js +2 -3
- package/development/link/common.js +3 -5
- package/development/link/link-button.js +2 -3
- package/development/link/link-static.js +2 -3
- package/development/link/link.js +2 -3
- package/development/link-list.js +2 -3
- package/development/loading-indicator.js +2 -3
- package/development/logo.js +2 -3
- package/development/map-container.js +2 -3
- package/development/menu/common.js +2 -3
- package/development/menu/menu-button.js +2 -3
- package/development/menu/menu-link.js +2 -3
- package/development/menu/menu.js +2 -3
- package/development/message.js +2 -3
- package/development/navigation/common.js +2 -3
- package/development/navigation/navigation-button.js +2 -3
- package/development/navigation/navigation-link.js +2 -3
- package/development/navigation/navigation-list.js +2 -3
- package/development/navigation/navigation-marker.js +2 -3
- package/development/navigation/navigation-section.js +2 -3
- package/development/navigation/navigation.js +2 -3
- package/development/notification.js +2 -3
- package/development/option/optgroup.js +2 -3
- package/development/option/option.js +2 -3
- package/development/overlay.js +3 -5
- package/development/popover/popover-trigger.js +2 -3
- package/development/popover/popover.js +2 -3
- package/development/radio-button/radio-button-group.js +2 -3
- package/development/radio-button/radio-button.js +2 -3
- package/development/screen-reader-only.js +2 -3
- package/development/select.js +2 -3
- package/development/selection-panel.js +2 -3
- package/development/signet.js +2 -3
- package/development/skiplink-list.js +2 -3
- package/development/slider.js +2 -3
- package/development/status.js +2 -3
- package/development/stepper/step-label.js +2 -3
- package/development/stepper/step.js +2 -3
- package/development/stepper/stepper/stepper.d.ts +1 -1
- package/development/stepper/stepper/stepper.d.ts.map +1 -1
- package/development/stepper/stepper.js +5 -6
- package/development/tabs/tab-group.js +2 -3
- package/development/tabs/tab-title.js +2 -3
- package/development/tag/tag-group.js +2 -3
- package/development/tag/tag.js +2 -3
- package/development/teaser-hero.js +2 -3
- package/development/teaser-paid.js +2 -3
- package/development/teaser.js +2 -3
- package/development/time-input.js +2 -3
- package/development/timetable-occupancy-icon.js +2 -3
- package/development/timetable-occupancy.js +2 -3
- package/development/title.js +3 -5
- package/development/toast.js +2 -3
- package/development/toggle/toggle-option.js +3 -5
- package/development/toggle/toggle.js +2 -3
- package/development/toggle-check.js +10 -3
- package/development/train/train-blocked-passage.js +2 -3
- package/development/train/train-formation.js +2 -3
- package/development/train/train-wagon.js +2 -3
- package/development/train/train.js +2 -3
- package/development/visual-checkbox.js +2 -3
- package/image/image.d.ts +12 -3
- package/image/image.d.ts.map +1 -1
- package/image.js +91 -78
- package/package.json +1 -1
- package/stepper/stepper/stepper.d.ts +1 -1
- package/stepper/stepper/stepper.d.ts.map +1 -1
- package/stepper/stepper.js +3 -3
- package/toggle-check.js +14 -14
- package/train/train-formation.js +1 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"breadcrumb-group.d.ts","sourceRoot":"","sources":["../../../../src/elements/breadcrumb/breadcrumb-group/breadcrumb-group.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAYb,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEpF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAI7D,OAAO,eAAe,CAAC;;
|
|
1
|
+
{"version":3,"file":"breadcrumb-group.d.ts","sourceRoot":"","sources":["../../../../src/elements/breadcrumb/breadcrumb-group/breadcrumb-group.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAGnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAYb,OAAO,EAAyB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEpF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAI7D,OAAO,eAAe,CAAC;;AAIvB;;;;GAIG;AACH,qBAIa,yBAA0B,SAAQ,8BAGlC;IACX,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,mBAA4B,mBAAmB,WAAsB;IAIrE,OAAO,KAAK,MAAM,QAEjB;IACD,OAAO,KAAK,MAAM,GAEjB;IAED,OAAO,CAAC,eAAe,CAAoE;IAC3F,OAAO,CAAC,MAAM,CAAyC;IACvD,OAAO,CAAC,SAAS,CAAmC;IACpD,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO,CAAC,cAAc;IAiBN,iBAAiB,IAAI,IAAI;cAMtB,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAM9D,oBAAoB,IAAI,IAAI;cAKzB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;cAQ3E,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI;IAa3F,2EAA2E;IAC3E,OAAO,CAAC,gBAAgB;IAaxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,UAAU;IAYlB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAK1B,kGAAkG;IAClG,OAAO,CAAC,uBAAuB;IAW/B,OAAO,CAAC,gBAAgB;IA8BxB,OAAO,CAAC,eAAe;cAgBJ,MAAM,IAAI,cAAc;CAQ5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,sBAAsB,EAAE,yBAAyB,CAAC;KACnD;CACF"}
|
|
@@ -1,22 +1,23 @@
|
|
|
1
|
-
import { css as
|
|
2
|
-
import { state as
|
|
3
|
-
import { isArrowKeyPressed as
|
|
4
|
-
import { SbbConnectedAbortController as
|
|
5
|
-
import { hostAttributes as
|
|
1
|
+
import { css as c, LitElement as u, html as b, nothing as p } from "lit";
|
|
2
|
+
import { state as h, customElement as m } from "lit/decorators.js";
|
|
3
|
+
import { isArrowKeyPressed as g, sbbInputModalityDetector as f, getNextElementIndex as v } from "../core/a11y.js";
|
|
4
|
+
import { SbbConnectedAbortController as _, SbbLanguageController as x } from "../core/controllers.js";
|
|
5
|
+
import { hostAttributes as C } from "../core/decorators.js";
|
|
6
6
|
import { setOrRemoveAttribute as y } from "../core/dom.js";
|
|
7
|
-
import { i18nBreadcrumbEllipsisButtonLabel as
|
|
8
|
-
import { SbbNamedSlotListMixin as
|
|
9
|
-
import { AgnosticResizeObserver as
|
|
7
|
+
import { i18nBreadcrumbEllipsisButtonLabel as w } from "../core/i18n.js";
|
|
8
|
+
import { SbbNamedSlotListMixin as k } from "../core/mixins.js";
|
|
9
|
+
import { AgnosticResizeObserver as z } from "../core/observers.js";
|
|
10
10
|
import "../icon.js";
|
|
11
|
-
const
|
|
12
|
-
var
|
|
13
|
-
for (var s = i > 1 ? void 0 : i ?
|
|
14
|
-
(
|
|
15
|
-
return i && s &&
|
|
11
|
+
const E = c`*,:before,:after{box-sizing:border-box}:host{--sbb-breadcrumb-group-wrap: nowrap;--sbb-breadcrumb-group-visibility: hidden;display:block}:host([data-loaded]){--sbb-breadcrumb-group-visibility: visible}:host([data-state]){--sbb-breadcrumb-group-wrap: wrap}.sbb-breadcrumb-group{list-style:none;margin:0;padding:0;font-size:inherit;display:flex;flex-wrap:var(--sbb-breadcrumb-group-wrap);column-gap:var(--sbb-spacing-fixed-1x);visibility:var(--sbb-breadcrumb-group-visibility)}.sbb-breadcrumb-group__item{flex:0 0 auto;display:flex;column-gap:var(--sbb-spacing-fixed-1x)}.sbb-breadcrumb-group__divider-icon{color:var(--sbb-color-granite)}#sbb-breadcrumb-ellipsis{--sbb-breadcrumb-group-ellipsis-color: var(--sbb-color-granite);--sbb-breadcrumb-group-ellipsis-background-color: transparent;--sbb-breadcrumb-group-ellipsis-border-width: var(--sbb-border-width-1x);--sbb-breadcrumb-group-ellipsis-border-color: var(--sbb-color-silver);-webkit-appearance:none;-moz-appearance:none;box-sizing:border-box;margin:0;outline:none;border:none;padding:0;background:none;-webkit-tap-highlight-color:transparent;color:inherit;--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);line-height:0;letter-spacing:.01em;width:var(--sbb-size-icon-ui-small);height:var(--sbb-size-icon-ui-small);border:var(--sbb-breadcrumb-group-ellipsis-border-width) solid var(--sbb-breadcrumb-group-ellipsis-border-color);border-radius:50%;padding-block-end:.5em;cursor:pointer;color:var(--sbb-breadcrumb-group-ellipsis-color);background-color:var(--sbb-breadcrumb-group-ellipsis-background-color);overflow:hidden}@media (forced-colors: active){#sbb-breadcrumb-ellipsis{--sbb-breadcrumb-group-ellipsis-border-width: var(--sbb-border-width-2x);--sbb-breadcrumb-group-ellipsis-border-color: CanvasText}}@media (any-hover: hover){#sbb-breadcrumb-ellipsis:hover{--sbb-breadcrumb-group-ellipsis-color: var(--sbb-color-charcoal);--sbb-breadcrumb-group-ellipsis-background-color: var(--sbb-color-milk)}}@media (any-hover: hover) and (forced-colors: active){#sbb-breadcrumb-ellipsis:hover{--sbb-breadcrumb-group-ellipsis-border-color: Highlight}}#sbb-breadcrumb-ellipsis:focus-visible:not([data-focus-origin=mouse],[data-focus-origin=touch]){outline-offset:var(--sbb-focus-outline-offset);outline:var(--sbb-focus-outline-color) solid var(--sbb-focus-outline-width)}`;
|
|
12
|
+
var S = Object.defineProperty, A = Object.getOwnPropertyDescriptor, d = (e, r, t, i) => {
|
|
13
|
+
for (var s = i > 1 ? void 0 : i ? A(r, t) : r, o = e.length - 1, a; o >= 0; o--)
|
|
14
|
+
(a = e[o]) && (s = (i ? a(r, t, s) : a(s)) || s);
|
|
15
|
+
return i && s && S(r, t, s), s;
|
|
16
16
|
};
|
|
17
|
-
|
|
17
|
+
const n = 3;
|
|
18
|
+
let l = class extends k(u) {
|
|
18
19
|
constructor() {
|
|
19
|
-
super(...arguments), this.listChildLocalNames = ["sbb-breadcrumb"], this._resizeObserver = new
|
|
20
|
+
super(...arguments), this.listChildLocalNames = ["sbb-breadcrumb"], this._resizeObserver = new z(() => this._evaluateCollapsedState()), this._abort = new _(this), this._language = new x(this), this._markForFocus = !1;
|
|
20
21
|
}
|
|
21
22
|
set _state(e) {
|
|
22
23
|
y(this, "data-state", e);
|
|
@@ -26,7 +27,7 @@ let a = class extends w(c) {
|
|
|
26
27
|
}
|
|
27
28
|
_handleKeyDown(e) {
|
|
28
29
|
if (!(!this.listChildren.length || // don't trap nested handling
|
|
29
|
-
e.target !== this && e.target.parentElement !== this) &&
|
|
30
|
+
e.target !== this && e.target.parentElement !== this) && g(e)) {
|
|
30
31
|
if (this._state === "collapsed")
|
|
31
32
|
return this._focusNextCollapsed(e);
|
|
32
33
|
this._focusNext(e);
|
|
@@ -48,12 +49,12 @@ let a = class extends w(c) {
|
|
|
48
49
|
}
|
|
49
50
|
updated(e) {
|
|
50
51
|
var r;
|
|
51
|
-
super.updated(e), e.has("listChildren") && Promise.resolve().then(() => this._evaluateCollapsedState()), this._markForFocus &&
|
|
52
|
+
super.updated(e), e.has("listChildren") && Promise.resolve().then(() => this._evaluateCollapsedState()), this._markForFocus && f.mostRecentModality === "keyboard" && ((r = this.listChildren[1]) == null || r.focus(), this._markForFocus = !1);
|
|
52
53
|
}
|
|
53
54
|
/** Apply the aria-current attribute to the last sbb-breadcrumb element. */
|
|
54
55
|
_syncBreadcrumbs() {
|
|
55
56
|
var e;
|
|
56
|
-
this.listChildren.slice(0, -1).filter((r) => r.hasAttribute("aria-current")).forEach((r) => r.removeAttribute("aria-current")), (e = this.listChildren[this.listChildren.length - 1]) == null || e.setAttribute("aria-current", "page"), this.listChildren.length <
|
|
57
|
+
this.listChildren.slice(0, -1).filter((r) => r.hasAttribute("aria-current")).forEach((r) => r.removeAttribute("aria-current")), (e = this.listChildren[this.listChildren.length - 1]) == null || e.setAttribute("aria-current", "page"), this.listChildren.length < n && (this._state = null);
|
|
57
58
|
}
|
|
58
59
|
/**
|
|
59
60
|
* Sets the focus on the correct element when the ellipsis breadcrumb is displayed and the user is navigating with keyboard's arrows.
|
|
@@ -70,7 +71,7 @@ let a = class extends w(c) {
|
|
|
70
71
|
var s;
|
|
71
72
|
const t = r.findIndex(
|
|
72
73
|
(o) => o === document.activeElement || o === this.shadowRoot.activeElement
|
|
73
|
-
), i =
|
|
74
|
+
), i = v(e, t, r.length);
|
|
74
75
|
(s = r[i]) == null || s.focus(), e.preventDefault();
|
|
75
76
|
}
|
|
76
77
|
/**
|
|
@@ -82,7 +83,7 @@ let a = class extends w(c) {
|
|
|
82
83
|
}
|
|
83
84
|
/** Evaluate if the expanded breadcrumb element fits in page width, otherwise it needs ellipsis */
|
|
84
85
|
_evaluateCollapsedState() {
|
|
85
|
-
!this._state && this.scrollWidth > this.offsetWidth && (this._state = "collapsed", this._resizeObserver.disconnect());
|
|
86
|
+
!this._state && this.scrollWidth > this.offsetWidth && this.listChildren.length >= n && (this._state = "collapsed", this._resizeObserver.disconnect());
|
|
86
87
|
}
|
|
87
88
|
_renderCollapsed() {
|
|
88
89
|
return b`
|
|
@@ -97,7 +98,7 @@ let a = class extends w(c) {
|
|
|
97
98
|
<button
|
|
98
99
|
type="button"
|
|
99
100
|
id="sbb-breadcrumb-ellipsis"
|
|
100
|
-
aria-label=${
|
|
101
|
+
aria-label=${w[this._language.current]}
|
|
101
102
|
aria-expanded="false"
|
|
102
103
|
@click=${() => this._expandBreadcrumbs()}
|
|
103
104
|
>
|
|
@@ -121,7 +122,7 @@ let a = class extends w(c) {
|
|
|
121
122
|
${r !== t.length - 1 ? b`<sbb-icon
|
|
122
123
|
name="chevron-small-right-small"
|
|
123
124
|
class="sbb-breadcrumb-group__divider-icon"
|
|
124
|
-
></sbb-icon>` :
|
|
125
|
+
></sbb-icon>` : p}
|
|
125
126
|
</li>
|
|
126
127
|
`
|
|
127
128
|
);
|
|
@@ -135,16 +136,16 @@ let a = class extends w(c) {
|
|
|
135
136
|
`;
|
|
136
137
|
}
|
|
137
138
|
};
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
],
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
139
|
+
l.styles = E;
|
|
140
|
+
d([
|
|
141
|
+
h()
|
|
142
|
+
], l.prototype, "_state", 1);
|
|
143
|
+
l = d([
|
|
144
|
+
m("sbb-breadcrumb-group"),
|
|
145
|
+
C({
|
|
145
146
|
role: "navigation"
|
|
146
147
|
})
|
|
147
|
-
],
|
|
148
|
+
], l);
|
|
148
149
|
export {
|
|
149
|
-
|
|
150
|
+
l as SbbBreadcrumbGroupElement
|
|
150
151
|
};
|
package/core/base-elements.js
CHANGED
|
@@ -59,8 +59,7 @@ let h = class extends m {
|
|
|
59
59
|
const t = this.form ? this.ownerDocument.querySelector(`form#${this.form}`) : this.closest("form");
|
|
60
60
|
if (t)
|
|
61
61
|
this.type === "submit" ? t.requestSubmit() : this.type === "reset" && t.reset();
|
|
62
|
-
else
|
|
63
|
-
return;
|
|
62
|
+
else return;
|
|
64
63
|
}, this._preventScrollOnSpaceKeydown = (e) => {
|
|
65
64
|
e.key === " " && (e.preventDefault(), e.target.toggleAttribute("data-active", !0));
|
|
66
65
|
}, this._removeActiveMarker = (e) => {
|
package/core/datetime.js
CHANGED
|
@@ -188,10 +188,8 @@ class c extends l {
|
|
|
188
188
|
if (Number.isNaN(+t)) {
|
|
189
189
|
if (D.test(t))
|
|
190
190
|
return this.getValidDateOrNull(new Date(t));
|
|
191
|
-
} else
|
|
192
|
-
|
|
193
|
-
else
|
|
194
|
-
return null;
|
|
191
|
+
} else return this.getValidDateOrNull(new Date(+t * 1e3));
|
|
192
|
+
else return null;
|
|
195
193
|
else if (typeof t == "number")
|
|
196
194
|
return this.getValidDateOrNull(new Date(t * 1e3));
|
|
197
195
|
return super.deserialize(t);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/overlay/overlay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK1C;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,CASrD;
|
|
1
|
+
{"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/overlay/overlay.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAK1C;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,CASrD;AA4DD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAyB9D;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAqB3C;AACD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,2BAA2B;QACnC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5B,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QAC3B,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;KAC7B;CACF"}
|
package/core/overlay.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { html as
|
|
1
|
+
import { html as E } from "lit";
|
|
2
2
|
const x = ":is(sbb-dialog, sbb-navigation, sbb-menu, sbb-overlay)[data-state='opened']";
|
|
3
|
-
function
|
|
4
|
-
return
|
|
3
|
+
function $() {
|
|
4
|
+
return E`
|
|
5
5
|
<div class="sbb-gap-fix-wrapper">
|
|
6
6
|
<div class="sbb-gap-fix-corner" id="left"></div>
|
|
7
7
|
</div>
|
|
@@ -10,41 +10,46 @@ function R() {
|
|
|
10
10
|
</div>
|
|
11
11
|
`;
|
|
12
12
|
}
|
|
13
|
-
const
|
|
13
|
+
const O = (t, e) => {
|
|
14
14
|
let n = t.parentElement;
|
|
15
|
-
const
|
|
16
|
-
for (; n && (
|
|
15
|
+
const i = [];
|
|
16
|
+
for (; n && (i.push(n), n !== e); )
|
|
17
17
|
n = n.parentElement;
|
|
18
|
-
return
|
|
18
|
+
return i;
|
|
19
|
+
}, w = (t) => {
|
|
20
|
+
t.setAttribute(
|
|
21
|
+
"data-sbb-inert",
|
|
22
|
+
`${+(t.getAttribute("data-sbb-inert") ?? void 0) + 1 || 0}`
|
|
23
|
+
);
|
|
19
24
|
}, W = (t) => {
|
|
20
|
-
t.inert || (t.inert = !0, t.matches(x) ?
|
|
25
|
+
t.inert || (t.inert = !0, t.matches(x) ? w(t) : t.toggleAttribute("data-sbb-inert", !0)), t.hasAttribute("aria-hidden") || (t.setAttribute("aria-hidden", "true"), t.toggleAttribute("data-sbb-aria-hidden", !0));
|
|
21
26
|
}, y = (t) => {
|
|
22
27
|
t.hasAttribute("data-sbb-inert") && (t.inert = !1, t.removeAttribute("data-sbb-inert")), t.hasAttribute("data-sbb-aria-hidden") && (t.removeAttribute("aria-hidden"), t.removeAttribute("data-sbb-aria-hidden"));
|
|
23
28
|
};
|
|
24
|
-
function
|
|
29
|
+
function C(t) {
|
|
25
30
|
y(t);
|
|
26
31
|
const e = t.closest("body > *");
|
|
27
32
|
Array.from(document.querySelectorAll("body > *")).filter(
|
|
28
|
-
(
|
|
29
|
-
).forEach((
|
|
30
|
-
let
|
|
31
|
-
const a =
|
|
32
|
-
for (const
|
|
33
|
-
|
|
34
|
-
Array.from(
|
|
33
|
+
(o) => o !== e
|
|
34
|
+
).forEach((o) => W(o));
|
|
35
|
+
let i = [];
|
|
36
|
+
const a = O(t, e);
|
|
37
|
+
for (const o of a)
|
|
38
|
+
i = i.concat(
|
|
39
|
+
Array.from(o.children).filter(
|
|
35
40
|
(c) => c !== t && !a.includes(c)
|
|
36
41
|
)
|
|
37
|
-
),
|
|
38
|
-
|
|
42
|
+
), o.matches(x) && w(o);
|
|
43
|
+
i.forEach((o) => W(o));
|
|
39
44
|
}
|
|
40
|
-
function
|
|
45
|
+
function z() {
|
|
41
46
|
const t = Array.from(
|
|
42
47
|
document.documentElement.querySelectorAll(x)
|
|
43
48
|
);
|
|
44
49
|
if (t.length) {
|
|
45
50
|
t.forEach((e) => {
|
|
46
51
|
const n = +e.getAttribute("data-sbb-inert") - 1;
|
|
47
|
-
e.setAttribute("data-sbb-inert", `${n}`), n && n < 0 && (y(e), Array.from(e.children).forEach((
|
|
52
|
+
e.setAttribute("data-sbb-inert", `${n}`), n && n < 0 && (y(e), Array.from(e.children).forEach((i) => y(i)));
|
|
48
53
|
});
|
|
49
54
|
return;
|
|
50
55
|
}
|
|
@@ -52,9 +57,9 @@ function C() {
|
|
|
52
57
|
(e) => y(e)
|
|
53
58
|
);
|
|
54
59
|
}
|
|
55
|
-
function
|
|
56
|
-
const e = window.getComputedStyle(t), n = e.display,
|
|
57
|
-
if (n !== "none" &&
|
|
60
|
+
function S(t) {
|
|
61
|
+
const e = window.getComputedStyle(t), n = e.display, i = parseInt(e.maxHeight, 10).toString();
|
|
62
|
+
if (n !== "none" && i !== "0")
|
|
58
63
|
return {
|
|
59
64
|
scrollHeight: t.scrollHeight,
|
|
60
65
|
clientHeight: t.clientHeight,
|
|
@@ -64,21 +69,21 @@ function O(t) {
|
|
|
64
69
|
offsetWidth: t.offsetWidth
|
|
65
70
|
};
|
|
66
71
|
t.style.position = "absolute", t.style.visibility = "hidden", t.style.display = "block";
|
|
67
|
-
const a = t.scrollHeight,
|
|
68
|
-
return t.style.display = "", t.style.position = "", t.style.visibility = "", { scrollHeight: a, clientHeight:
|
|
72
|
+
const a = t.scrollHeight, o = t.clientHeight, c = t.offsetHeight, u = t.scrollWidth, r = t.clientWidth, s = t.offsetWidth;
|
|
73
|
+
return t.style.display = "", t.style.position = "", t.style.visibility = "", { scrollHeight: a, clientHeight: o, offsetHeight: c, scrollWidth: u, clientWidth: r, offsetWidth: s };
|
|
69
74
|
}
|
|
70
|
-
function
|
|
75
|
+
function B(t, e) {
|
|
71
76
|
if (!t || !e)
|
|
72
77
|
return !1;
|
|
73
78
|
const n = t.getBoundingClientRect();
|
|
74
79
|
return n.top <= e.clientY && e.clientY <= n.top + n.height && n.left <= e.clientX && e.clientX <= n.left + n.width;
|
|
75
80
|
}
|
|
76
|
-
function
|
|
77
|
-
const
|
|
78
|
-
let l = f, p = m + r.height +
|
|
81
|
+
function P(t, e, n, i) {
|
|
82
|
+
const o = (i == null ? void 0 : i.verticalOffset) || 0, c = (i == null ? void 0 : i.horizontalOffset) || 0, u = (i == null ? void 0 : i.responsiveHeight) || !1, r = e.getBoundingClientRect(), s = S(t), f = r.left, m = r.top, g = document.documentElement.clientWidth - (f + r.width), h = m - o, A = document.documentElement.clientHeight - (m + r.height + o);
|
|
83
|
+
let l = f, p = m + r.height + o, b = s.offsetWidth - r.width;
|
|
79
84
|
const d = { horizontal: "start", vertical: "below" };
|
|
80
|
-
let H = `${A -
|
|
81
|
-
|
|
85
|
+
let H = `${A - o}px`;
|
|
86
|
+
i != null && i.centered && f - 16 + r.width / 2 > s.offsetWidth / 2 && g - 16 > b / 2 && (l -= b /= 2, d.horizontal = "center"), g < b && f > b && (l = l - b, d.horizontal = "end"), c && d.horizontal !== "center" && r.width / 2 < c && (l += c * (d.horizontal === "start" ? -1 : 1)), (f < b && g < b || document.documentElement.clientWidth < s.offsetWidth) && (l = document.documentElement.clientWidth / 2 - s.offsetWidth / 2), (A - o < s.scrollHeight && h - o > (u ? s.clientHeight : s.scrollHeight) || h > A && A - o < s.clientHeight && !u) && (p = h < s.scrollHeight ? p - r.height - h - o : m - s.clientHeight - o, H = `${h - o}px`, d.vertical = "above");
|
|
82
87
|
const v = n.getBoundingClientRect();
|
|
83
88
|
return v.left < 0 && (l -= v.left), v.top < 0 && (p -= v.top), {
|
|
84
89
|
top: p,
|
|
@@ -87,35 +92,35 @@ function S(t, e, n, o) {
|
|
|
87
92
|
alignment: d
|
|
88
93
|
};
|
|
89
94
|
}
|
|
90
|
-
function
|
|
95
|
+
function I(t, e, n, i, a) {
|
|
91
96
|
if (!t || !e)
|
|
92
97
|
return;
|
|
93
98
|
a.style.setProperty("--sbb-options-panel-width", `${e.offsetWidth}px`), a.style.setProperty("--sbb-options-panel-origin-height", `${e.offsetHeight}px`);
|
|
94
|
-
const
|
|
95
|
-
a.style.setProperty("--sbb-options-panel-position-x", `${
|
|
99
|
+
const o = P(n, e, i);
|
|
100
|
+
a.style.setProperty("--sbb-options-panel-position-x", `${o.left}px`), a.style.setProperty("--sbb-options-panel-position-y", `${o.top}px`), a.style.setProperty("--sbb-options-panel-max-height", o.maxHeight), a.setAttribute("data-options-panel-position", o.alignment.vertical), e.setAttribute("data-options-panel-position", o.alignment.vertical);
|
|
96
101
|
}
|
|
97
|
-
function
|
|
98
|
-
t && (t.setAttribute("aria-haspopup", e), t.setAttribute("aria-controls", n), t.setAttribute("aria-expanded", `${
|
|
102
|
+
function Y(t, e, n, i) {
|
|
103
|
+
t && (t.setAttribute("aria-haspopup", e), t.setAttribute("aria-controls", n), t.setAttribute("aria-expanded", `${i === "opening" || i === "opened"}`));
|
|
99
104
|
}
|
|
100
|
-
function
|
|
105
|
+
function M(t) {
|
|
101
106
|
t && (t.removeAttribute("aria-haspopup"), t.removeAttribute("aria-controls"), t.removeAttribute("aria-expanded"));
|
|
102
107
|
}
|
|
103
|
-
function
|
|
108
|
+
function X(t, e, n) {
|
|
104
109
|
t && (t.setAttribute("autocomplete", "off"), t.setAttribute("role", "combobox"), t.setAttribute("aria-autocomplete", "list"), t.setAttribute("aria-haspopup", "listbox"), t.setAttribute("aria-controls", e), t.setAttribute("aria-owns", e), t.setAttribute("aria-expanded", `${n}`));
|
|
105
110
|
}
|
|
106
|
-
function
|
|
111
|
+
function q(t) {
|
|
107
112
|
t && (t.removeAttribute("autocomplete"), t.removeAttribute("role"), t.removeAttribute("aria-autocomplete"), t.removeAttribute("aria-haspopup"), t.removeAttribute("aria-controls"), t.removeAttribute("aria-owns"), t.removeAttribute("aria-expanded"));
|
|
108
113
|
}
|
|
109
114
|
export {
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
115
|
+
C as applyInertMechanism,
|
|
116
|
+
P as getElementPosition,
|
|
117
|
+
S as getElementRectangle,
|
|
118
|
+
B as isEventOnElement,
|
|
119
|
+
$ as overlayGapFixCorners,
|
|
120
|
+
q as removeAriaComboBoxAttributes,
|
|
121
|
+
M as removeAriaOverlayTriggerAttributes,
|
|
122
|
+
z as removeInertMechanism,
|
|
123
|
+
X as setAriaComboBoxAttributes,
|
|
124
|
+
Y as setAriaOverlayTriggerAttributes,
|
|
125
|
+
I as setOverlayPosition
|
|
121
126
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wait-for-image-ready.d.ts","sourceRoot":"","sources":["../../../../src/elements/core/testing/wait-for-image-ready.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,gBAAgB,GAAG,eAAe,EAC3C,qBAAqB,SAAW,GAC/B,OAAO,CAAC,IAAI,CAAC,CAcf"}
|
package/core/testing.d.ts
CHANGED
|
@@ -2,5 +2,6 @@ export * from './testing/event-spy.js';
|
|
|
2
2
|
export * from './testing/mocha-extensions.js';
|
|
3
3
|
export * from './testing/scroll.js';
|
|
4
4
|
export * from './testing/wait-for-condition.js';
|
|
5
|
+
export * from './testing/wait-for-image-ready.js';
|
|
5
6
|
export * from './testing/wait-for-render.js';
|
|
6
7
|
//# sourceMappingURL=testing.d.ts.map
|
package/core/testing.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../../src/elements/core/testing.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC"}
|
|
1
|
+
{"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../../src/elements/core/testing.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,mCAAmC,CAAC;AAClD,cAAc,8BAA8B,CAAC"}
|
package/core/testing.js
CHANGED
|
@@ -21,42 +21,53 @@ class u {
|
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
-
const
|
|
24
|
+
const m = (t, n, e) => {
|
|
25
25
|
if (t)
|
|
26
26
|
return Mocha.describe(n, e);
|
|
27
|
-
},
|
|
27
|
+
}, h = (t, n, e) => {
|
|
28
28
|
if (t)
|
|
29
29
|
return Mocha.test(n, e);
|
|
30
30
|
};
|
|
31
31
|
function v(t) {
|
|
32
32
|
window.scrollTo(t), document.dispatchEvent(new Event("scroll"));
|
|
33
33
|
}
|
|
34
|
-
async function
|
|
35
|
-
const
|
|
36
|
-
let
|
|
34
|
+
async function d(t, n = 30, e = 2 * 1e3) {
|
|
35
|
+
const i = /* @__PURE__ */ new Date();
|
|
36
|
+
let o = 0;
|
|
37
37
|
function r() {
|
|
38
|
-
return
|
|
38
|
+
return o++, t();
|
|
39
39
|
}
|
|
40
|
-
for (; !await r() &&
|
|
41
|
-
await new Promise((
|
|
42
|
-
return
|
|
43
|
-
`waitForCondition timeout: ${t.toString()}, attempts: ${
|
|
40
|
+
for (; !await r() && i.getTime() + e >= (/* @__PURE__ */ new Date()).getTime(); )
|
|
41
|
+
await new Promise((s) => setTimeout(s, n));
|
|
42
|
+
return i.getTime() + e < (/* @__PURE__ */ new Date()).getTime() ? Promise.reject(
|
|
43
|
+
`waitForCondition timeout: ${t.toString()}, attempts: ${o}, start: ${i.getTime()}, end: ${(/* @__PURE__ */ new Date()).getTime()}`
|
|
44
44
|
) : Promise.resolve(!0);
|
|
45
45
|
}
|
|
46
|
-
|
|
46
|
+
async function g(t, n = 2 * 1e3) {
|
|
47
|
+
t.complete || await new Promise((e, i) => {
|
|
48
|
+
const o = setTimeout(() => i("image loading timeout"), n);
|
|
49
|
+
t.addEventListener("load", () => {
|
|
50
|
+
clearTimeout(o), e();
|
|
51
|
+
}), t.addEventListener("error", () => {
|
|
52
|
+
clearTimeout(o), i("image error");
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
const a = (t) => !!t.updateComplete, c = Promise.resolve(), l = async (t) => {
|
|
47
57
|
const n = [t, ...t.querySelectorAll("*")].filter(a).map((e) => [
|
|
48
58
|
e.updateComplete,
|
|
49
|
-
e.hydrationComplete ??
|
|
50
|
-
|
|
59
|
+
e.hydrationComplete ?? c,
|
|
60
|
+
l(e.renderRoot)
|
|
51
61
|
]).flat(1 / 0);
|
|
52
62
|
await Promise.all(n);
|
|
53
63
|
};
|
|
54
64
|
export {
|
|
55
65
|
u as EventSpy,
|
|
56
|
-
|
|
66
|
+
m as describeIf,
|
|
57
67
|
a as isReactiveElement,
|
|
58
68
|
v as mockScrollTo,
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
69
|
+
h as testIf,
|
|
70
|
+
d as waitForCondition,
|
|
71
|
+
g as waitForImageReady,
|
|
72
|
+
l as waitForLitRender
|
|
62
73
|
};
|
package/custom-elements.json
CHANGED
|
@@ -5059,6 +5059,17 @@
|
|
|
5059
5059
|
}
|
|
5060
5060
|
],
|
|
5061
5061
|
"members": [
|
|
5062
|
+
{
|
|
5063
|
+
"kind": "field",
|
|
5064
|
+
"name": "events",
|
|
5065
|
+
"privacy": "public",
|
|
5066
|
+
"static": true,
|
|
5067
|
+
"readonly": true,
|
|
5068
|
+
"default": "{ error: 'error', load: 'load', }",
|
|
5069
|
+
"type": {
|
|
5070
|
+
"text": "{\n error: 'error',\n load: 'load',\n }"
|
|
5071
|
+
}
|
|
5072
|
+
},
|
|
5062
5073
|
{
|
|
5063
5074
|
"kind": "field",
|
|
5064
5075
|
"name": "_captionElement",
|
|
@@ -5267,6 +5278,16 @@
|
|
|
5267
5278
|
"attribute": "aspect-ratio",
|
|
5268
5279
|
"reflects": true
|
|
5269
5280
|
},
|
|
5281
|
+
{
|
|
5282
|
+
"kind": "field",
|
|
5283
|
+
"name": "complete",
|
|
5284
|
+
"type": {
|
|
5285
|
+
"text": "boolean"
|
|
5286
|
+
},
|
|
5287
|
+
"privacy": "public",
|
|
5288
|
+
"description": "Whether the image is finished loading or failed to load.",
|
|
5289
|
+
"readonly": true
|
|
5290
|
+
},
|
|
5270
5291
|
{
|
|
5271
5292
|
"kind": "method",
|
|
5272
5293
|
"name": "_logPerformanceMarks",
|
|
@@ -5366,6 +5387,22 @@
|
|
|
5366
5387
|
}
|
|
5367
5388
|
}
|
|
5368
5389
|
],
|
|
5390
|
+
"events": [
|
|
5391
|
+
{
|
|
5392
|
+
"name": "load",
|
|
5393
|
+
"type": {
|
|
5394
|
+
"text": "Event"
|
|
5395
|
+
},
|
|
5396
|
+
"description": "Emits when the image has been loaded."
|
|
5397
|
+
},
|
|
5398
|
+
{
|
|
5399
|
+
"name": "error",
|
|
5400
|
+
"type": {
|
|
5401
|
+
"text": "Event"
|
|
5402
|
+
},
|
|
5403
|
+
"description": "Emits when the image loading ended in an error."
|
|
5404
|
+
}
|
|
5405
|
+
],
|
|
5369
5406
|
"attributes": [
|
|
5370
5407
|
{
|
|
5371
5408
|
"name": "alt",
|
|
@@ -29897,7 +29934,7 @@
|
|
|
29897
29934
|
"declarations": [
|
|
29898
29935
|
{
|
|
29899
29936
|
"kind": "class",
|
|
29900
|
-
"description": "This class exists to facilitate the
|
|
29937
|
+
"description": "This class exists to facilitate the test migration from stencil to lit.\nIt mimics the API that stencil provided to test events.\n\nTODO: Document me",
|
|
29901
29938
|
"name": "EventSpy",
|
|
29902
29939
|
"members": [
|
|
29903
29940
|
{
|
|
@@ -30073,6 +30110,27 @@
|
|
|
30073
30110
|
}
|
|
30074
30111
|
]
|
|
30075
30112
|
},
|
|
30113
|
+
{
|
|
30114
|
+
"kind": "function",
|
|
30115
|
+
"name": "waitForImageReady",
|
|
30116
|
+
"return": {
|
|
30117
|
+
"type": {
|
|
30118
|
+
"text": "Promise<void>"
|
|
30119
|
+
}
|
|
30120
|
+
},
|
|
30121
|
+
"parameters": [
|
|
30122
|
+
{
|
|
30123
|
+
"name": "element",
|
|
30124
|
+
"type": {
|
|
30125
|
+
"text": "HTMLImageElement | SbbImageElement"
|
|
30126
|
+
}
|
|
30127
|
+
},
|
|
30128
|
+
{
|
|
30129
|
+
"name": "timeoutInMilliseconds",
|
|
30130
|
+
"default": "2 * 1000"
|
|
30131
|
+
}
|
|
30132
|
+
]
|
|
30133
|
+
},
|
|
30076
30134
|
{
|
|
30077
30135
|
"kind": "function",
|
|
30078
30136
|
"name": "isReactiveElement",
|
|
@@ -30153,6 +30211,14 @@
|
|
|
30153
30211
|
"module": "core/testing.js"
|
|
30154
30212
|
}
|
|
30155
30213
|
},
|
|
30214
|
+
{
|
|
30215
|
+
"kind": "js",
|
|
30216
|
+
"name": "waitForImageReady",
|
|
30217
|
+
"declaration": {
|
|
30218
|
+
"name": "waitForImageReady",
|
|
30219
|
+
"module": "core/testing.js"
|
|
30220
|
+
}
|
|
30221
|
+
},
|
|
30156
30222
|
{
|
|
30157
30223
|
"kind": "js",
|
|
30158
30224
|
"name": "isReactiveElement",
|
|
@@ -47749,11 +47815,11 @@
|
|
|
47749
47815
|
{
|
|
47750
47816
|
"kind": "field",
|
|
47751
47817
|
"name": "horizontalFrom",
|
|
47818
|
+
"privacy": "public",
|
|
47819
|
+
"description": "Overrides the behaviour of `orientation` property.",
|
|
47752
47820
|
"type": {
|
|
47753
47821
|
"text": "SbbHorizontalFrom | undefined"
|
|
47754
47822
|
},
|
|
47755
|
-
"privacy": "public",
|
|
47756
|
-
"description": "Overrides the behaviour of `orientation` property.",
|
|
47757
47823
|
"attribute": "horizontal-from",
|
|
47758
47824
|
"reflects": true
|
|
47759
47825
|
},
|
|
@@ -48009,10 +48075,10 @@
|
|
|
48009
48075
|
},
|
|
48010
48076
|
{
|
|
48011
48077
|
"name": "horizontal-from",
|
|
48078
|
+
"description": "Overrides the behaviour of `orientation` property.",
|
|
48012
48079
|
"type": {
|
|
48013
48080
|
"text": "SbbHorizontalFrom | undefined"
|
|
48014
48081
|
},
|
|
48015
|
-
"description": "Overrides the behaviour of `orientation` property.",
|
|
48016
48082
|
"fieldName": "horizontalFrom"
|
|
48017
48083
|
},
|
|
48018
48084
|
{
|