@sbb-esta/lyne-elements-dev 4.9.0-dev.1774601733 → 4.9.0-dev.1774848187
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/core/styles/core.scss +13 -65
- package/core.css +37 -34
- package/development/sidebar/sidebar/sidebar.component.js +1 -1
- package/development/sidebar/sidebar-content/sidebar-content.component.js +1 -1
- package/development/sidebar/sidebar-content.js +1 -1
- package/development/sidebar/sidebar-title/sidebar-title.component.js +1 -1
- package/development/sidebar/sidebar-title.js +1 -1
- package/development/sidebar/sidebar.js +1 -1
- package/development/{sidebar-content.component-rgVbuDj-.js → sidebar-content.component-6oadojLp.js} +4 -4
- package/development/{sidebar-title.component-BFkOaVcL.js → sidebar-title.component-DU-ZLEU0.js} +3 -3
- package/development/sidebar.component-BmLRuuec.js +506 -0
- package/development/sidebar.js +3 -3
- package/development/sidebar.pure.js +3 -3
- package/off-brand-theme.css +37 -34
- package/package.json +2 -2
- package/safety-theme.css +37 -34
- package/sidebar/sidebar/sidebar.component.js +1 -1
- package/sidebar/sidebar-content/sidebar-content.component.js +1 -1
- package/sidebar/sidebar-content.js +1 -1
- package/sidebar/sidebar-title/sidebar-title.component.js +1 -1
- package/sidebar/sidebar-title.js +1 -1
- package/sidebar/sidebar.js +1 -1
- package/{sidebar-content.component-da7RYWO6.js → sidebar-content.component-BYmmHoc5.js} +1 -1
- package/{sidebar-title.component-CjWUiisH.js → sidebar-title.component-lEdsEEMO.js} +1 -1
- package/{sidebar.component-Cde1EWDT.js → sidebar.component-BkTSnoNM.js} +2 -2
- package/sidebar.js +3 -3
- package/sidebar.pure.js +3 -3
- package/standard-theme.css +37 -34
- package/development/sidebar.component-hkvDm_fC.js +0 -506
|
@@ -0,0 +1,506 @@
|
|
|
1
|
+
import { __esDecorate, __runInitializers } from "tslib";
|
|
2
|
+
import { css, html, isServer } from "lit";
|
|
3
|
+
import { eventOptions, property } from "lit/decorators.js";
|
|
4
|
+
import { SbbOpenCloseBaseElement } from "./core/base-elements.js";
|
|
5
|
+
import { forceType, handleDistinctChange } from "./core/decorators.js";
|
|
6
|
+
import { isZeroAnimationDuration } from "./core/dom.js";
|
|
7
|
+
import { SbbAnimationCompleteMixin } from "./core/mixins.js";
|
|
8
|
+
import { boxSizingStyles } from "./core/styles.js";
|
|
9
|
+
import { SbbEscapableOverlayController } from "./core/controllers.js";
|
|
10
|
+
import { ResizeController } from "@lit-labs/observers/resize-controller.js";
|
|
11
|
+
import { SbbFocusTrapController } from "./core/a11y.js";
|
|
12
|
+
//#region src/elements/sidebar/sidebar/sidebar.scss?lit&inline
|
|
13
|
+
var sidebar_default = css`:host {
|
|
14
|
+
--sbb-link-text-decoration-line: none;
|
|
15
|
+
--sbb-sidebar-background-color: var(--sbb-background-color-1);
|
|
16
|
+
--sbb-sidebar-scrollbar-placeholder-width: var(--sbb-spacing-fixed-3x);
|
|
17
|
+
--_sbb-sidebar-margin: 0;
|
|
18
|
+
--_sbb-sidebar-margin-block-start: var(--sbb-sidebar-margin);
|
|
19
|
+
--_sbb-sidebar-translate-x: -100%;
|
|
20
|
+
--_sbb-sidebar-z-index: 2;
|
|
21
|
+
--_sbb-sidebar-padding-inline-end: var(--sbb-sidebar-padding);
|
|
22
|
+
--_sbb-sidebar-padding-block-start: var(--sbb-sidebar-padding);
|
|
23
|
+
--_sbb-sidebar-border-radius-start: var(--sbb-sidebar-border-radius);
|
|
24
|
+
--_sbb-sidebar-border-radius-end: 0;
|
|
25
|
+
--_sbb-sidebar-close-button-size: var(--sbb-size-element-xs);
|
|
26
|
+
--_sbb-sidebar-max-width: calc(100% - 2 * var(--_sbb-sidebar-margin));
|
|
27
|
+
display: block;
|
|
28
|
+
width: 20rem;
|
|
29
|
+
}
|
|
30
|
+
@supports (scrollbar-gutter: stable) and (not (-webkit-touch-callout: none)) {
|
|
31
|
+
:host {
|
|
32
|
+
--_sbb-sidebar-padding-inline-end: calc(
|
|
33
|
+
var(--sbb-sidebar-padding) - var(--sbb-sidebar-scrollbar-placeholder-width)
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
:host([color=white]) {
|
|
39
|
+
--sbb-sidebar-background-color: var(--sbb-background-color-1);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
:host([color=milk]) {
|
|
43
|
+
--sbb-sidebar-background-color: var(--sbb-background-color-3);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
:host(:is([mode=over], :is(:state(mode-over-forced),[state--mode-over-forced]):not(:is(:state(mode-over-forced-closing),[state--mode-over-forced-closing])))) {
|
|
47
|
+
--_sbb-sidebar-margin: var(--sbb-sidebar-margin);
|
|
48
|
+
--_sbb-sidebar-border-radius-end: var(--sbb-sidebar-border-radius);
|
|
49
|
+
--_sbb-sidebar-z-index: 3;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
:host(:is(:dir(rtl), [position=end])) {
|
|
53
|
+
--_sbb-sidebar-translate-x: 100%;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
:host(:dir(rtl)[position=end]) {
|
|
57
|
+
--_sbb-sidebar-translate-x: -100%;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.sbb-sidebar {
|
|
61
|
+
width: inherit;
|
|
62
|
+
max-width: var(--_sbb-sidebar-max-width);
|
|
63
|
+
background-color: var(--sbb-sidebar-background-color);
|
|
64
|
+
display: flex;
|
|
65
|
+
flex-direction: column;
|
|
66
|
+
position: absolute;
|
|
67
|
+
overflow: hidden;
|
|
68
|
+
inset-block: 0;
|
|
69
|
+
z-index: var(--_sbb-sidebar-z-index);
|
|
70
|
+
border-start-start-radius: var(--_sbb-sidebar-border-radius-start);
|
|
71
|
+
border-start-end-radius: var(--_sbb-sidebar-border-radius-start);
|
|
72
|
+
border-end-start-radius: var(--_sbb-sidebar-border-radius-end);
|
|
73
|
+
border-end-end-radius: var(--_sbb-sidebar-border-radius-end);
|
|
74
|
+
margin: var(--_sbb-sidebar-margin);
|
|
75
|
+
margin-block-start: var(--_sbb-sidebar-margin-block-start);
|
|
76
|
+
transition-duration: var(--sbb-sidebar-container-animation-duration);
|
|
77
|
+
transition-timing-function: var(--sbb-sidebar-container-animation-easing);
|
|
78
|
+
transition-property: width, translate;
|
|
79
|
+
translate: none;
|
|
80
|
+
}
|
|
81
|
+
:host([position=end]) .sbb-sidebar {
|
|
82
|
+
inset-inline-end: 0;
|
|
83
|
+
}
|
|
84
|
+
:host(:is(:state(state-closed),[state--state-closed])) .sbb-sidebar {
|
|
85
|
+
visibility: hidden;
|
|
86
|
+
}
|
|
87
|
+
:host(:is(:is(:state(state-closing),[state--state-closing]), :is(:state(state-closed),[state--state-closed]))) .sbb-sidebar {
|
|
88
|
+
translate: var(--_sbb-sidebar-translate-x) 0;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.sbb-sidebar-title-section {
|
|
92
|
+
display: flex;
|
|
93
|
+
width: 100%;
|
|
94
|
+
gap: var(--sbb-sidebar-title-gap);
|
|
95
|
+
background-color: var(--sbb-sidebar-background-color);
|
|
96
|
+
padding-inline: var(--sbb-sidebar-padding);
|
|
97
|
+
transition: box-shadow var(--sbb-animation-easing) var(--sbb-sidebar-container-animation-duration);
|
|
98
|
+
box-shadow: none;
|
|
99
|
+
}
|
|
100
|
+
:host(:is(:state(scrolled),[state--scrolled])) .sbb-sidebar-title-section {
|
|
101
|
+
box-shadow: var(--sbb-box-shadow-level-5-soft);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.sbb-sidebar-content-section {
|
|
105
|
+
--sbb-scrollbar-thumb-width: 0.125rem;
|
|
106
|
+
--sbb-scrollbar-thumb-width-hover: 0.25rem;
|
|
107
|
+
--sbb-scrollbar-width-firefox: thin;
|
|
108
|
+
--sbb-scrollbar-color: color-mix(in srgb, var(--sbb-color-black) 30%, transparent);
|
|
109
|
+
--sbb-scrollbar-color: light-dark(
|
|
110
|
+
color-mix(in srgb, var(--sbb-color-black) 30%, transparent),
|
|
111
|
+
color-mix(in srgb, var(--sbb-color-white) 30%, transparent)
|
|
112
|
+
);
|
|
113
|
+
--sbb-scrollbar-color-hover: color-mix(in srgb, var(--sbb-color-black) 60%, transparent);
|
|
114
|
+
--sbb-scrollbar-color-hover: light-dark(
|
|
115
|
+
color-mix(in srgb, var(--sbb-color-black) 60%, transparent),
|
|
116
|
+
color-mix(in srgb, var(--sbb-color-white) 60%, transparent)
|
|
117
|
+
);
|
|
118
|
+
--sbb-scrollbar-track-color: transparent;
|
|
119
|
+
--sbb-scrollbar-width: var(--sbb-spacing-fixed-3x);
|
|
120
|
+
}
|
|
121
|
+
.sbb-sidebar-content-section::-webkit-scrollbar {
|
|
122
|
+
width: var(--sbb-scrollbar-width);
|
|
123
|
+
height: var(--sbb-scrollbar-width);
|
|
124
|
+
background-color: var(--sbb-scrollbar-track-color, transparent);
|
|
125
|
+
}
|
|
126
|
+
.sbb-sidebar-content-section::-webkit-scrollbar-corner {
|
|
127
|
+
background-color: var(--sbb-scrollbar-track-color, transparent);
|
|
128
|
+
}
|
|
129
|
+
.sbb-sidebar-content-section::-webkit-scrollbar-thumb {
|
|
130
|
+
background-color: var(--sbb-scrollbar-color, currentcolor);
|
|
131
|
+
border: calc(0.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width))) solid transparent;
|
|
132
|
+
border-radius: var(--sbb-border-radius-4x);
|
|
133
|
+
background-clip: padding-box;
|
|
134
|
+
}
|
|
135
|
+
.sbb-sidebar-content-section::-webkit-scrollbar-thumb:hover {
|
|
136
|
+
background-color: var(--sbb-scrollbar-color-hover, currentcolor);
|
|
137
|
+
border-width: calc(0.5 * (var(--sbb-scrollbar-width) - var(--sbb-scrollbar-thumb-width-hover)));
|
|
138
|
+
}
|
|
139
|
+
.sbb-sidebar-content-section::-webkit-scrollbar-button, .sbb-sidebar-content-section::-webkit-scrollbar-corner {
|
|
140
|
+
display: none;
|
|
141
|
+
}
|
|
142
|
+
@supports not selector(::-webkit-scrollbar) {
|
|
143
|
+
.sbb-sidebar-content-section {
|
|
144
|
+
scrollbar-width: var(--sbb-scrollbar-width-firefox);
|
|
145
|
+
scrollbar-color: var(--sbb-scrollbar-color, currentcolor) var(--sbb-scrollbar-track-color, transparent);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
.sbb-sidebar-content-section {
|
|
149
|
+
padding-block-start: var(--_sbb-sidebar-padding-block-start);
|
|
150
|
+
padding-inline: var(--sbb-sidebar-padding) var(--_sbb-sidebar-padding-inline-end);
|
|
151
|
+
overflow-y: auto;
|
|
152
|
+
flex-grow: 1;
|
|
153
|
+
outline-color: var(--sbb-focus-outline-color);
|
|
154
|
+
}
|
|
155
|
+
@supports (scrollbar-gutter: stable) {
|
|
156
|
+
.sbb-sidebar-content-section {
|
|
157
|
+
scrollbar-gutter: stable;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
::slotted(sbb-sidebar-title) {
|
|
162
|
+
flex-grow: 1;
|
|
163
|
+
margin-block: var(--sbb-sidebar-title-padding-block);
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
::slotted(sbb-sidebar-close-button) {
|
|
167
|
+
order: 1;
|
|
168
|
+
margin-inline-end: calc(-1 * (var(--sbb-sidebar-padding) - var(--sbb-sidebar-title-padding-block)));
|
|
169
|
+
margin-block: var(--sbb-sidebar-title-padding-block);
|
|
170
|
+
inset-inline-end: var(--sbb-sidebar-padding);
|
|
171
|
+
}`;
|
|
172
|
+
//#endregion
|
|
173
|
+
//#region src/elements/sidebar/sidebar/sidebar.component.ts
|
|
174
|
+
/**
|
|
175
|
+
* This component corresponds to a sidebar that can be opened on the sidebar container.
|
|
176
|
+
*
|
|
177
|
+
* @slot - Use the unnamed slot to slot any content into the sidebar.
|
|
178
|
+
* @slot title - Use the title slot to add an <sbb-title>.
|
|
179
|
+
*/
|
|
180
|
+
var SbbSidebarElement = (() => {
|
|
181
|
+
let _classSuper = SbbAnimationCompleteMixin(SbbOpenCloseBaseElement);
|
|
182
|
+
let _instanceExtraInitializers = [];
|
|
183
|
+
let _color_decorators;
|
|
184
|
+
let _color_initializers = [];
|
|
185
|
+
let _color_extraInitializers = [];
|
|
186
|
+
let _mode_decorators;
|
|
187
|
+
let _mode_initializers = [];
|
|
188
|
+
let _mode_extraInitializers = [];
|
|
189
|
+
let _position_decorators;
|
|
190
|
+
let _position_initializers = [];
|
|
191
|
+
let _position_extraInitializers = [];
|
|
192
|
+
let _opened_decorators;
|
|
193
|
+
let _opened_initializers = [];
|
|
194
|
+
let _opened_extraInitializers = [];
|
|
195
|
+
let _focusOnOpen_decorators;
|
|
196
|
+
let _focusOnOpen_initializers = [];
|
|
197
|
+
let _focusOnOpen_extraInitializers = [];
|
|
198
|
+
let __detectScrolledState_decorators;
|
|
199
|
+
return class SbbSidebarElement extends _classSuper {
|
|
200
|
+
static {
|
|
201
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
202
|
+
_color_decorators = [property({ reflect: true })];
|
|
203
|
+
_mode_decorators = [forceType((v) => v === "over" ? "over" : "side"), property({ reflect: true })];
|
|
204
|
+
_position_decorators = [
|
|
205
|
+
forceType((v) => v === "end" ? "end" : "start"),
|
|
206
|
+
handleDistinctChange((instance, _newValue, oldValue) => instance._updateSidebarWidth(oldValue)),
|
|
207
|
+
property({ reflect: true })
|
|
208
|
+
];
|
|
209
|
+
_opened_decorators = [forceType(), property({
|
|
210
|
+
type: Boolean,
|
|
211
|
+
reflect: true
|
|
212
|
+
})];
|
|
213
|
+
_focusOnOpen_decorators = [forceType(), property({
|
|
214
|
+
type: Boolean,
|
|
215
|
+
attribute: "focus-on-open"
|
|
216
|
+
})];
|
|
217
|
+
__detectScrolledState_decorators = [eventOptions({ passive: true })];
|
|
218
|
+
__esDecorate(this, null, _color_decorators, {
|
|
219
|
+
kind: "accessor",
|
|
220
|
+
name: "color",
|
|
221
|
+
static: false,
|
|
222
|
+
private: false,
|
|
223
|
+
access: {
|
|
224
|
+
has: (obj) => "color" in obj,
|
|
225
|
+
get: (obj) => obj.color,
|
|
226
|
+
set: (obj, value) => {
|
|
227
|
+
obj.color = value;
|
|
228
|
+
}
|
|
229
|
+
},
|
|
230
|
+
metadata: _metadata
|
|
231
|
+
}, _color_initializers, _color_extraInitializers);
|
|
232
|
+
__esDecorate(this, null, _mode_decorators, {
|
|
233
|
+
kind: "accessor",
|
|
234
|
+
name: "mode",
|
|
235
|
+
static: false,
|
|
236
|
+
private: false,
|
|
237
|
+
access: {
|
|
238
|
+
has: (obj) => "mode" in obj,
|
|
239
|
+
get: (obj) => obj.mode,
|
|
240
|
+
set: (obj, value) => {
|
|
241
|
+
obj.mode = value;
|
|
242
|
+
}
|
|
243
|
+
},
|
|
244
|
+
metadata: _metadata
|
|
245
|
+
}, _mode_initializers, _mode_extraInitializers);
|
|
246
|
+
__esDecorate(this, null, _position_decorators, {
|
|
247
|
+
kind: "accessor",
|
|
248
|
+
name: "position",
|
|
249
|
+
static: false,
|
|
250
|
+
private: false,
|
|
251
|
+
access: {
|
|
252
|
+
has: (obj) => "position" in obj,
|
|
253
|
+
get: (obj) => obj.position,
|
|
254
|
+
set: (obj, value) => {
|
|
255
|
+
obj.position = value;
|
|
256
|
+
}
|
|
257
|
+
},
|
|
258
|
+
metadata: _metadata
|
|
259
|
+
}, _position_initializers, _position_extraInitializers);
|
|
260
|
+
__esDecorate(this, null, _opened_decorators, {
|
|
261
|
+
kind: "accessor",
|
|
262
|
+
name: "opened",
|
|
263
|
+
static: false,
|
|
264
|
+
private: false,
|
|
265
|
+
access: {
|
|
266
|
+
has: (obj) => "opened" in obj,
|
|
267
|
+
get: (obj) => obj.opened,
|
|
268
|
+
set: (obj, value) => {
|
|
269
|
+
obj.opened = value;
|
|
270
|
+
}
|
|
271
|
+
},
|
|
272
|
+
metadata: _metadata
|
|
273
|
+
}, _opened_initializers, _opened_extraInitializers);
|
|
274
|
+
__esDecorate(this, null, _focusOnOpen_decorators, {
|
|
275
|
+
kind: "accessor",
|
|
276
|
+
name: "focusOnOpen",
|
|
277
|
+
static: false,
|
|
278
|
+
private: false,
|
|
279
|
+
access: {
|
|
280
|
+
has: (obj) => "focusOnOpen" in obj,
|
|
281
|
+
get: (obj) => obj.focusOnOpen,
|
|
282
|
+
set: (obj, value) => {
|
|
283
|
+
obj.focusOnOpen = value;
|
|
284
|
+
}
|
|
285
|
+
},
|
|
286
|
+
metadata: _metadata
|
|
287
|
+
}, _focusOnOpen_initializers, _focusOnOpen_extraInitializers);
|
|
288
|
+
__esDecorate(this, null, __detectScrolledState_decorators, {
|
|
289
|
+
kind: "method",
|
|
290
|
+
name: "_detectScrolledState",
|
|
291
|
+
static: false,
|
|
292
|
+
private: false,
|
|
293
|
+
access: {
|
|
294
|
+
has: (obj) => "_detectScrolledState" in obj,
|
|
295
|
+
get: (obj) => obj._detectScrolledState
|
|
296
|
+
},
|
|
297
|
+
metadata: _metadata
|
|
298
|
+
}, null, _instanceExtraInitializers);
|
|
299
|
+
if (_metadata) Object.defineProperty(this, Symbol.metadata, {
|
|
300
|
+
enumerable: true,
|
|
301
|
+
configurable: true,
|
|
302
|
+
writable: true,
|
|
303
|
+
value: _metadata
|
|
304
|
+
});
|
|
305
|
+
}
|
|
306
|
+
static {
|
|
307
|
+
this.elementName = "sbb-sidebar";
|
|
308
|
+
}
|
|
309
|
+
static {
|
|
310
|
+
this.styles = [boxSizingStyles, sidebar_default];
|
|
311
|
+
}
|
|
312
|
+
#color_accessor_storage;
|
|
313
|
+
/** Background color of the sidebar. Either `white` or `milk`. */
|
|
314
|
+
get color() {
|
|
315
|
+
return this.#color_accessor_storage;
|
|
316
|
+
}
|
|
317
|
+
set color(value) {
|
|
318
|
+
this.#color_accessor_storage = value;
|
|
319
|
+
}
|
|
320
|
+
#mode_accessor_storage;
|
|
321
|
+
/** Mode of the sidebar; one of 'side' or 'over'. */
|
|
322
|
+
get mode() {
|
|
323
|
+
return this.#mode_accessor_storage;
|
|
324
|
+
}
|
|
325
|
+
set mode(value) {
|
|
326
|
+
this.#mode_accessor_storage = value;
|
|
327
|
+
}
|
|
328
|
+
#position_accessor_storage;
|
|
329
|
+
/** The side that the sidebar is attached to. */
|
|
330
|
+
get position() {
|
|
331
|
+
return this.#position_accessor_storage;
|
|
332
|
+
}
|
|
333
|
+
set position(value) {
|
|
334
|
+
this.#position_accessor_storage = value;
|
|
335
|
+
}
|
|
336
|
+
#opened_accessor_storage;
|
|
337
|
+
/**
|
|
338
|
+
* Whether the sidebar is opened or closed.
|
|
339
|
+
* Can be used to initially set the opened state, where
|
|
340
|
+
* the animation will be skipped.
|
|
341
|
+
*/
|
|
342
|
+
get opened() {
|
|
343
|
+
return this.#opened_accessor_storage;
|
|
344
|
+
}
|
|
345
|
+
set opened(value) {
|
|
346
|
+
this.#opened_accessor_storage = value;
|
|
347
|
+
}
|
|
348
|
+
#focusOnOpen_accessor_storage;
|
|
349
|
+
/**
|
|
350
|
+
* Whether the sidebar should focus the first focusable element automatically when opened.
|
|
351
|
+
* Defaults to false in when mode is set to `side`, otherwise defaults to true.
|
|
352
|
+
* If explicitly enabled, focus will be moved into the sidebar in `side` mode as well.
|
|
353
|
+
*/
|
|
354
|
+
get focusOnOpen() {
|
|
355
|
+
return this.#focusOnOpen_accessor_storage;
|
|
356
|
+
}
|
|
357
|
+
set focusOnOpen(value) {
|
|
358
|
+
this.#focusOnOpen_accessor_storage = value;
|
|
359
|
+
}
|
|
360
|
+
/** Returns the SbbSidebarContainerElement where this sidebar is contained. */
|
|
361
|
+
get container() {
|
|
362
|
+
return this._container;
|
|
363
|
+
}
|
|
364
|
+
constructor() {
|
|
365
|
+
super();
|
|
366
|
+
this.#color_accessor_storage = (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _color_initializers, "white"));
|
|
367
|
+
this.#mode_accessor_storage = (__runInitializers(this, _color_extraInitializers), __runInitializers(this, _mode_initializers, "side"));
|
|
368
|
+
this.#position_accessor_storage = (__runInitializers(this, _mode_extraInitializers), __runInitializers(this, _position_initializers, "start"));
|
|
369
|
+
this.#opened_accessor_storage = (__runInitializers(this, _position_extraInitializers), __runInitializers(this, _opened_initializers, false));
|
|
370
|
+
this.#focusOnOpen_accessor_storage = (__runInitializers(this, _opened_extraInitializers), __runInitializers(this, _focusOnOpen_initializers, false));
|
|
371
|
+
this._container = (__runInitializers(this, _focusOnOpen_extraInitializers), null);
|
|
372
|
+
this._lastFocusedElement = null;
|
|
373
|
+
this._focusTrapController = new SbbFocusTrapController(this);
|
|
374
|
+
this._escapableOverlayController = new SbbEscapableOverlayController(this);
|
|
375
|
+
this.addController(new ResizeController(this, {
|
|
376
|
+
skipInitial: true,
|
|
377
|
+
callback: () => this._updateSidebarWidth()
|
|
378
|
+
}));
|
|
379
|
+
this.addEventListener?.("click", (e) => {
|
|
380
|
+
if (e.target?.localName === "sbb-sidebar-close-button") this.close();
|
|
381
|
+
});
|
|
382
|
+
}
|
|
383
|
+
connectedCallback() {
|
|
384
|
+
super.connectedCallback();
|
|
385
|
+
this._container = this.closest?.("sbb-sidebar-container");
|
|
386
|
+
this._updateSidebarWidth();
|
|
387
|
+
if (this.isOpen && this._isModeOver()) this._takeFocus();
|
|
388
|
+
}
|
|
389
|
+
disconnectedCallback() {
|
|
390
|
+
super.disconnectedCallback();
|
|
391
|
+
this.container?.style.removeProperty(this._buildCssWidthVar());
|
|
392
|
+
this._container = null;
|
|
393
|
+
}
|
|
394
|
+
willUpdate(changedProperties) {
|
|
395
|
+
super.willUpdate(changedProperties);
|
|
396
|
+
if (changedProperties.has("opened")) {
|
|
397
|
+
if (this.opened) this.open();
|
|
398
|
+
else if (!this.opened) this.close();
|
|
399
|
+
}
|
|
400
|
+
if (changedProperties.has("mode")) if (this.mode === "over" && this.isOpen) this._takeFocus();
|
|
401
|
+
else this.cedeFocus();
|
|
402
|
+
}
|
|
403
|
+
firstUpdated(changedProperties) {
|
|
404
|
+
super.firstUpdated(changedProperties);
|
|
405
|
+
this._updateSidebarWidth();
|
|
406
|
+
}
|
|
407
|
+
/** Toggles the sidebar visibility. */
|
|
408
|
+
toggle() {
|
|
409
|
+
if (this.state === "opening" || this.state === "opened") this.close();
|
|
410
|
+
else this.open();
|
|
411
|
+
}
|
|
412
|
+
/** Opens the sidebar. */
|
|
413
|
+
open() {
|
|
414
|
+
if (this.state === "opening" || this.state === "opened" || !this.dispatchBeforeOpenEvent()) return;
|
|
415
|
+
this.startAnimation();
|
|
416
|
+
if (!isServer && document.activeElement?.localName !== "body") this._lastFocusedElement = document.activeElement;
|
|
417
|
+
this.opened = true;
|
|
418
|
+
this.state = "opening";
|
|
419
|
+
const isZeroAnimationDuration = this._isZeroAnimationDuration() || !this.isConnected;
|
|
420
|
+
const isDuringInitialization = !this.hasUpdated;
|
|
421
|
+
if (!(isDuringInitialization || isZeroAnimationDuration)) return;
|
|
422
|
+
this.internals.states.add("skip-animation");
|
|
423
|
+
if (isDuringInitialization) this.updateComplete.then(() => this._handleOpening());
|
|
424
|
+
else this._handleOpening();
|
|
425
|
+
}
|
|
426
|
+
_isZeroAnimationDuration() {
|
|
427
|
+
return isZeroAnimationDuration(this, "--sbb-sidebar-container-animation-duration");
|
|
428
|
+
}
|
|
429
|
+
_handleOpening() {
|
|
430
|
+
this.state = "opened";
|
|
431
|
+
setTimeout(() => this.internals.states.delete("skip-animation"));
|
|
432
|
+
this._takeFocus();
|
|
433
|
+
this.stopAnimation();
|
|
434
|
+
this.dispatchOpenEvent();
|
|
435
|
+
}
|
|
436
|
+
/** Closes the sidebar. */
|
|
437
|
+
close() {
|
|
438
|
+
if (this.state === "closing" || this.state === "closed" || !this.dispatchBeforeCloseEvent()) return;
|
|
439
|
+
this.startAnimation();
|
|
440
|
+
const isZeroAnimationDuration = this._isZeroAnimationDuration();
|
|
441
|
+
if (!this.hasUpdated || isZeroAnimationDuration) this.internals.states.add("skip-animation");
|
|
442
|
+
else this.state = "closing";
|
|
443
|
+
this.opened = false;
|
|
444
|
+
if (!this.hasUpdated || isZeroAnimationDuration) this._handleClosing();
|
|
445
|
+
}
|
|
446
|
+
_handleClosing() {
|
|
447
|
+
this.state = "closed";
|
|
448
|
+
setTimeout(() => this.internals.states.delete("skip-animation"));
|
|
449
|
+
this.cedeFocus();
|
|
450
|
+
if (!isServer && (this.contains(document.activeElement) || this._isModeOver())) if (this._lastFocusedElement) this._lastFocusedElement?.focus();
|
|
451
|
+
else document.activeElement.blur();
|
|
452
|
+
this._lastFocusedElement = null;
|
|
453
|
+
this.stopAnimation();
|
|
454
|
+
this.dispatchCloseEvent();
|
|
455
|
+
}
|
|
456
|
+
_takeFocus() {
|
|
457
|
+
if (!this.isConnected) return;
|
|
458
|
+
const isModeOver = this._isModeOver();
|
|
459
|
+
if (isModeOver || this.focusOnOpen) this._focusTrapController.focusInitialElement();
|
|
460
|
+
if (isModeOver) {
|
|
461
|
+
this._escapableOverlayController.connect();
|
|
462
|
+
this._focusTrapController.enabled = true;
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
cedeFocus() {
|
|
466
|
+
this._focusTrapController.enabled = false;
|
|
467
|
+
this._escapableOverlayController.disconnect();
|
|
468
|
+
}
|
|
469
|
+
_updateSidebarWidth(oldPosition) {
|
|
470
|
+
const container = this.container;
|
|
471
|
+
if (!container) return;
|
|
472
|
+
if (oldPosition) container.style.removeProperty(this._buildCssWidthVar(oldPosition));
|
|
473
|
+
const width = this.offsetWidth;
|
|
474
|
+
if (!width) return;
|
|
475
|
+
const newValue = `${width}px`;
|
|
476
|
+
if (container.style.getPropertyValue(this._buildCssWidthVar()) === newValue) return;
|
|
477
|
+
container.style.setProperty(this._buildCssWidthVar(), newValue);
|
|
478
|
+
}
|
|
479
|
+
_buildCssWidthVar(position = this.position) {
|
|
480
|
+
return `--_sbb-sidebar-container-${position}-width`;
|
|
481
|
+
}
|
|
482
|
+
_isModeOver() {
|
|
483
|
+
return this.mode === "over" || this.matches(":is(:state(mode-over-forced),[state--mode-over-forced])");
|
|
484
|
+
}
|
|
485
|
+
_onTransitionEnd(event) {
|
|
486
|
+
if (event.propertyName !== "translate" || event.target !== event.currentTarget) return;
|
|
487
|
+
if (this.state === "opening") this._handleOpening();
|
|
488
|
+
else if (this.state === "closing") this._handleClosing();
|
|
489
|
+
}
|
|
490
|
+
_detectScrolledState() {
|
|
491
|
+
this.toggleState("scrolled", (this.shadowRoot?.querySelector(".sbb-sidebar-content-section")?.scrollTop ?? 0) > 0);
|
|
492
|
+
}
|
|
493
|
+
render() {
|
|
494
|
+
return html`<div class="sbb-sidebar" @transitionend=${this._onTransitionEnd}>
|
|
495
|
+
<div class="sbb-sidebar-title-section"><slot name="title-section"></slot></div>
|
|
496
|
+
<div class="sbb-sidebar-content-section" @scroll=${() => this._detectScrolledState()}>
|
|
497
|
+
<slot></slot>
|
|
498
|
+
</div>
|
|
499
|
+
</div>`;
|
|
500
|
+
}
|
|
501
|
+
};
|
|
502
|
+
})();
|
|
503
|
+
//#endregion
|
|
504
|
+
export { SbbSidebarElement as t };
|
|
505
|
+
|
|
506
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci5jb21wb25lbnQtQm1MUnV1ZWMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3NpZGViYXIvc2lkZWJhci9zaWRlYmFyLnNjc3M/bGl0JmlubGluZSIsIi4uLy4uLy4uL3NyYy9lbGVtZW50cy9zaWRlYmFyL3NpZGViYXIvc2lkZWJhci5jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiQHVzZSAnLi4vLi4vY29yZS9zdHlsZXMnIGFzIHNiYjtcblxuOmhvc3Qge1xuICAtLXNiYi1saW5rLXRleHQtZGVjb3JhdGlvbi1saW5lOiBub25lO1xuICAtLXNiYi1zaWRlYmFyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLXNiYi1iYWNrZ3JvdW5kLWNvbG9yLTEpO1xuICAtLXNiYi1zaWRlYmFyLXNjcm9sbGJhci1wbGFjZWhvbGRlci13aWR0aDogdmFyKC0tc2JiLXNwYWNpbmctZml4ZWQtM3gpO1xuICAtLV9zYmItc2lkZWJhci1tYXJnaW46IDA7XG4gIC0tX3NiYi1zaWRlYmFyLW1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc2JiLXNpZGViYXItbWFyZ2luKTtcbiAgLS1fc2JiLXNpZGViYXItdHJhbnNsYXRlLXg6IC0xMDAlO1xuICAtLV9zYmItc2lkZWJhci16LWluZGV4OiAyO1xuICAtLV9zYmItc2lkZWJhci1wYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLXNiYi1zaWRlYmFyLXBhZGRpbmcpO1xuICAtLV9zYmItc2lkZWJhci1wYWRkaW5nLWJsb2NrLXN0YXJ0OiB2YXIoLS1zYmItc2lkZWJhci1wYWRkaW5nKTtcbiAgLS1fc2JiLXNpZGViYXItYm9yZGVyLXJhZGl1cy1zdGFydDogdmFyKC0tc2JiLXNpZGViYXItYm9yZGVyLXJhZGl1cyk7XG4gIC0tX3NiYi1zaWRlYmFyLWJvcmRlci1yYWRpdXMtZW5kOiAwO1xuICAtLV9zYmItc2lkZWJhci1jbG9zZS1idXR0b24tc2l6ZTogdmFyKC0tc2JiLXNpemUtZWxlbWVudC14cyk7XG4gIC0tX3NiYi1zaWRlYmFyLW1heC13aWR0aDogY2FsYygxMDAlIC0gMiAqIHZhcigtLV9zYmItc2lkZWJhci1tYXJnaW4pKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6ICN7c2JiLnB4LXRvLXJlbS1idWlsZCgzMjApfTtcblxuICAvLyBTdWJ0cmFjdCB0aGUgd2lkdGggb2YgdGhlIHNjcm9sbGJhciBmcm9tIHRoZSBwYWRkaW5nIChFeGNsdWRlIGlPUyBicm93c2VycyBiZWNhdXNlIHRoZXkgdXNlIG92ZXJsYXkgc2Nyb2xsYmFycylcbiAgQHN1cHBvcnRzIChzY3JvbGxiYXItZ3V0dGVyOiBzdGFibGUpIGFuZCAobm90ICgtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUpKSB7XG4gICAgLS1fc2JiLXNpZGViYXItcGFkZGluZy1pbmxpbmUtZW5kOiBjYWxjKFxuICAgICAgdmFyKC0tc2JiLXNpZGViYXItcGFkZGluZykgLSB2YXIoLS1zYmItc2lkZWJhci1zY3JvbGxiYXItcGxhY2Vob2xkZXItd2lkdGgpXG4gICAgKTtcbiAgfVxufVxuXG46aG9zdChbY29sb3I9J3doaXRlJ10pIHtcbiAgLS1zYmItc2lkZWJhci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0xKTtcbn1cblxuOmhvc3QoW2NvbG9yPSdtaWxrJ10pIHtcbiAgLS1zYmItc2lkZWJhci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zYmItYmFja2dyb3VuZC1jb2xvci0zKTtcbn1cblxuOmhvc3QoOmlzKFttb2RlPSdvdmVyJ10sIDpzdGF0ZShtb2RlLW92ZXItZm9yY2VkKTpub3QoOnN0YXRlKG1vZGUtb3Zlci1mb3JjZWQtY2xvc2luZykpKSkge1xuICAtLV9zYmItc2lkZWJhci1tYXJnaW46IHZhcigtLXNiYi1zaWRlYmFyLW1hcmdpbik7XG4gIC0tX3NiYi1zaWRlYmFyLWJvcmRlci1yYWRpdXMtZW5kOiB2YXIoLS1zYmItc2lkZWJhci1ib3JkZXItcmFkaXVzKTtcbiAgLS1fc2JiLXNpZGViYXItei1pbmRleDogMztcbn1cblxuOmhvc3QoOmlzKDpkaXIocnRsKSwgW3Bvc2l0aW9uPSdlbmQnXSkpIHtcbiAgLS1fc2JiLXNpZGViYXItdHJhbnNsYXRlLXg6IDEwMCU7XG59XG5cbjpob3N0KDpkaXIocnRsKVtwb3NpdGlvbj0nZW5kJ10pIHtcbiAgLS1fc2JiLXNpZGViYXItdHJhbnNsYXRlLXg6IC0xMDAlO1xufVxuXG4uc2JiLXNpZGViYXIge1xuICB3aWR0aDogaW5oZXJpdDtcbiAgbWF4LXdpZHRoOiB2YXIoLS1fc2JiLXNpZGViYXItbWF4LXdpZHRoKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLXNpZGViYXItYmFja2dyb3VuZC1jb2xvcik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaW5zZXQtYmxvY2s6IDA7XG4gIHotaW5kZXg6IHZhcigtLV9zYmItc2lkZWJhci16LWluZGV4KTtcbiAgYm9yZGVyLXN0YXJ0LXN0YXJ0LXJhZGl1czogdmFyKC0tX3NiYi1zaWRlYmFyLWJvcmRlci1yYWRpdXMtc3RhcnQpO1xuICBib3JkZXItc3RhcnQtZW5kLXJhZGl1czogdmFyKC0tX3NiYi1zaWRlYmFyLWJvcmRlci1yYWRpdXMtc3RhcnQpO1xuICBib3JkZXItZW5kLXN0YXJ0LXJhZGl1czogdmFyKC0tX3NiYi1zaWRlYmFyLWJvcmRlci1yYWRpdXMtZW5kKTtcbiAgYm9yZGVyLWVuZC1lbmQtcmFkaXVzOiB2YXIoLS1fc2JiLXNpZGViYXItYm9yZGVyLXJhZGl1cy1lbmQpO1xuICBtYXJnaW46IHZhcigtLV9zYmItc2lkZWJhci1tYXJnaW4pO1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLV9zYmItc2lkZWJhci1tYXJnaW4tYmxvY2stc3RhcnQpO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS1zYmItc2lkZWJhci1jb250YWluZXItYW5pbWF0aW9uLWR1cmF0aW9uKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLXNiYi1zaWRlYmFyLWNvbnRhaW5lci1hbmltYXRpb24tZWFzaW5nKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGgsIHRyYW5zbGF0ZTtcbiAgdHJhbnNsYXRlOiBub25lO1xuXG4gIDpob3N0KFtwb3NpdGlvbj0nZW5kJ10pICYge1xuICAgIGluc2V0LWlubGluZS1lbmQ6IDA7XG4gIH1cblxuICA6aG9zdCg6c3RhdGUoc3RhdGUtY2xvc2VkKSkgJiB7XG4gICAgLy8gU3RvcHMgdGhlIHNpZGVuYXYgZnJvbSBwb2tpbmcgb3V0IChlLmcuIHdpdGggdGhlIGJveCBzaGFkb3cpIHdoaWxlIGl0J3Mgb2ZmLXNjcmVlbi5cbiAgICAvLyBXZSBjYW4ndCB1c2UgYGRpc3BsYXlgIGJlY2F1c2UgaXQgaW50ZXJydXB0cyB0aGUgdHJhbnNpdGlvbiBhbmQgYHRyYW5zaXRpb24tYmVoYXZpb3JgXG4gICAgLy8gaXNuJ3QgYXZhaWxhYmxlIGluIGFsbCBicm93c2Vycy5cbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICA6aG9zdCg6aXMoOnN0YXRlKHN0YXRlLWNsb3NpbmcpLCA6c3RhdGUoc3RhdGUtY2xvc2VkKSkpICYge1xuICAgIHRyYW5zbGF0ZTogdmFyKC0tX3NiYi1zaWRlYmFyLXRyYW5zbGF0ZS14KSAwO1xuICB9XG59XG5cbi5zYmItc2lkZWJhci10aXRsZS1zZWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGdhcDogdmFyKC0tc2JiLXNpZGViYXItdGl0bGUtZ2FwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2JiLXNpZGViYXItYmFja2dyb3VuZC1jb2xvcik7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItc2lkZWJhci1wYWRkaW5nKTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyB2YXIoLS1zYmItYW5pbWF0aW9uLWVhc2luZykgdmFyKC0tc2JiLXNpZGViYXItY29udGFpbmVyLWFuaW1hdGlvbi1kdXJhdGlvbik7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgOmhvc3QoOnN0YXRlKHNjcm9sbGVkKSkgJiB7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tc2JiLWJveC1zaGFkb3ctbGV2ZWwtNS1zb2Z0KTtcbiAgfVxufVxuXG4uc2JiLXNpZGViYXItY29udGVudC1zZWN0aW9uIHtcbiAgQGluY2x1ZGUgc2JiLnNjcm9sbGJhcjtcblxuICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiB2YXIoLS1fc2JiLXNpZGViYXItcGFkZGluZy1ibG9jay1zdGFydCk7XG4gIHBhZGRpbmctaW5saW5lOiB2YXIoLS1zYmItc2lkZWJhci1wYWRkaW5nKSB2YXIoLS1fc2JiLXNpZGViYXItcGFkZGluZy1pbmxpbmUtZW5kKTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgZmxleC1ncm93OiAxO1xuXG4gIC8vIElmIHRoZSBlbGVtZW50IGlzIHNjcm9sbGFibGUgYW5kIGhhcyBubyBmb2N1c2FibGUgY29udGVudCwgaXQgZ2V0cyBmb2N1c2VkLlxuICAvLyBUbyBhZGFwdCB0byBseW5lIHN0eWxlcyB3ZSBjb2xvcml6ZSBpdFxuICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1zYmItZm9jdXMtb3V0bGluZS1jb2xvcik7XG5cbiAgQHN1cHBvcnRzIChzY3JvbGxiYXItZ3V0dGVyOiBzdGFibGUpIHtcbiAgICBzY3JvbGxiYXItZ3V0dGVyOiBzdGFibGU7XG4gIH1cbn1cblxuOjpzbG90dGVkKHNiYi1zaWRlYmFyLXRpdGxlKSB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgbWFyZ2luLWJsb2NrOiB2YXIoLS1zYmItc2lkZWJhci10aXRsZS1wYWRkaW5nLWJsb2NrKTtcbn1cblxuOjpzbG90dGVkKHNiYi1zaWRlYmFyLWNsb3NlLWJ1dHRvbikge1xuICBvcmRlcjogMTtcblxuICAvLyBEdWUgdG8gZGVzaWduIG5lZWRzLCB3ZSBoYXZlIHRvIHRyYW5zbGF0ZSB0aGUgY2xvc2UgYnV0dG9uIHRvIHRoZSByaWdodFxuICBtYXJnaW4taW5saW5lLWVuZDogY2FsYyhcbiAgICAtMSAqICh2YXIoLS1zYmItc2lkZWJhci1wYWRkaW5nKSAtIHZhcigtLXNiYi1zaWRlYmFyLXRpdGxlLXBhZGRpbmctYmxvY2spKVxuICApO1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLXNiYi1zaWRlYmFyLXRpdGxlLXBhZGRpbmctYmxvY2spO1xuICBpbnNldC1pbmxpbmUtZW5kOiB2YXIoLS1zYmItc2lkZWJhci1wYWRkaW5nKTtcbn1cbiIsImltcG9ydCB7IFJlc2l6ZUNvbnRyb2xsZXIgfSBmcm9tICdAbGl0LWxhYnMvb2JzZXJ2ZXJzL3Jlc2l6ZS1jb250cm9sbGVyLmpzJztcbmltcG9ydCB7IHR5cGUgQ1NTUmVzdWx0R3JvdXAsIGh0bWwsIGlzU2VydmVyLCB0eXBlIFByb3BlcnR5VmFsdWVzLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGV2ZW50T3B0aW9ucywgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IFNiYkZvY3VzVHJhcENvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkudHMnO1xuaW1wb3J0IHsgU2JiT3BlbkNsb3NlQmFzZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMudHMnO1xuaW1wb3J0IHsgU2JiRXNjYXBhYmxlT3ZlcmxheUNvbnRyb2xsZXIgfSBmcm9tICcuLi8uLi9jb3JlL2NvbnRyb2xsZXJzLnRzJztcbmltcG9ydCB7IGZvcmNlVHlwZSwgaGFuZGxlRGlzdGluY3RDaGFuZ2UgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMudHMnO1xuaW1wb3J0IHsgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24gfSBmcm9tICcuLi8uLi9jb3JlL2RvbS50cyc7XG5pbXBvcnQgeyBTYmJBbmltYXRpb25Db21wbGV0ZU1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMudHMnO1xuaW1wb3J0IHsgYm94U2l6aW5nU3R5bGVzIH0gZnJvbSAnLi4vLi4vY29yZS9zdHlsZXMudHMnO1xuaW1wb3J0IHR5cGUgeyBTYmJTaWRlYmFyQ29udGFpbmVyRWxlbWVudCB9IGZyb20gJy4uL3NpZGViYXItY29udGFpbmVyL3NpZGViYXItY29udGFpbmVyLmNvbXBvbmVudC50cyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3NpZGViYXIuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBUaGlzIGNvbXBvbmVudCBjb3JyZXNwb25kcyB0byBhIHNpZGViYXIgdGhhdCBjYW4gYmUgb3BlbmVkIG9uIHRoZSBzaWRlYmFyIGNvbnRhaW5lci5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIHNsb3QgYW55IGNvbnRlbnQgaW50byB0aGUgc2lkZWJhci5cbiAqIEBzbG90IHRpdGxlIC0gVXNlIHRoZSB0aXRsZSBzbG90IHRvIGFkZCBhbiA8c2JiLXRpdGxlPi5cbiAqL1xuZXhwb3J0IGNsYXNzIFNiYlNpZGViYXJFbGVtZW50IGV4dGVuZHMgU2JiQW5pbWF0aW9uQ29tcGxldGVNaXhpbihTYmJPcGVuQ2xvc2VCYXNlRWxlbWVudCkge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHJlYWRvbmx5IGVsZW1lbnROYW1lOiBzdHJpbmcgPSAnc2JiLXNpZGViYXInO1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYm94U2l6aW5nU3R5bGVzLCBzdHlsZV07XG5cbiAgLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHNpZGViYXIuIEVpdGhlciBgd2hpdGVgIG9yIGBtaWxrYC4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgYWNjZXNzb3IgY29sb3I6ICd3aGl0ZScgfCAnbWlsaycgPSAnd2hpdGUnO1xuXG4gIC8qKiBNb2RlIG9mIHRoZSBzaWRlYmFyOyBvbmUgb2YgJ3NpZGUnIG9yICdvdmVyJy4gKi9cbiAgQGZvcmNlVHlwZSgodikgPT4gKHYgPT09ICdvdmVyJyA/ICdvdmVyJyA6ICdzaWRlJykpXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIGFjY2Vzc29yIG1vZGU6ICdzaWRlJyB8ICdvdmVyJyA9ICdzaWRlJztcblxuICAvKiogVGhlIHNpZGUgdGhhdCB0aGUgc2lkZWJhciBpcyBhdHRhY2hlZCB0by4gKi9cbiAgQGZvcmNlVHlwZSgodikgPT4gKHYgPT09ICdlbmQnID8gJ2VuZCcgOiAnc3RhcnQnKSlcbiAgQGhhbmRsZURpc3RpbmN0Q2hhbmdlKChpbnN0YW5jZSwgX25ld1ZhbHVlLCBvbGRWYWx1ZSkgPT4gaW5zdGFuY2UuX3VwZGF0ZVNpZGViYXJXaWR0aChvbGRWYWx1ZSkpXG4gIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUgfSlcbiAgcHVibGljIGFjY2Vzc29yIHBvc2l0aW9uOiAnc3RhcnQnIHwgJ2VuZCcgPSAnc3RhcnQnO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBzaWRlYmFyIGlzIG9wZW5lZCBvciBjbG9zZWQuXG4gICAqIENhbiBiZSB1c2VkIHRvIGluaXRpYWxseSBzZXQgdGhlIG9wZW5lZCBzdGF0ZSwgd2hlcmVcbiAgICogdGhlIGFuaW1hdGlvbiB3aWxsIGJlIHNraXBwZWQuXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiwgcmVmbGVjdDogdHJ1ZSB9KVxuICBwdWJsaWMgYWNjZXNzb3Igb3BlbmVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHNpZGViYXIgc2hvdWxkIGZvY3VzIHRoZSBmaXJzdCBmb2N1c2FibGUgZWxlbWVudCBhdXRvbWF0aWNhbGx5IHdoZW4gb3BlbmVkLlxuICAgKiBEZWZhdWx0cyB0byBmYWxzZSBpbiB3aGVuIG1vZGUgaXMgc2V0IHRvIGBzaWRlYCwgb3RoZXJ3aXNlIGRlZmF1bHRzIHRvIHRydWUuXG4gICAqIElmIGV4cGxpY2l0bHkgZW5hYmxlZCwgZm9jdXMgd2lsbCBiZSBtb3ZlZCBpbnRvIHRoZSBzaWRlYmFyIGluIGBzaWRlYCBtb2RlIGFzIHdlbGwuXG4gICAqL1xuICBAZm9yY2VUeXBlKClcbiAgQHByb3BlcnR5KHsgdHlwZTogQm9vbGVhbiwgYXR0cmlidXRlOiAnZm9jdXMtb24tb3BlbicgfSlcbiAgcHVibGljIGFjY2Vzc29yIGZvY3VzT25PcGVuOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFJldHVybnMgdGhlIFNiYlNpZGViYXJDb250YWluZXJFbGVtZW50IHdoZXJlIHRoaXMgc2lkZWJhciBpcyBjb250YWluZWQuICovXG4gIHB1YmxpYyBnZXQgY29udGFpbmVyKCk6IFNiYlNpZGViYXJDb250YWluZXJFbGVtZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnRhaW5lcjtcbiAgfVxuICBwcml2YXRlIF9jb250YWluZXI6IFNiYlNpZGViYXJDb250YWluZXJFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgcHJpdmF0ZSBfbGFzdEZvY3VzZWRFbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIF9mb2N1c1RyYXBDb250cm9sbGVyID0gbmV3IFNiYkZvY3VzVHJhcENvbnRyb2xsZXIodGhpcyk7XG4gIHByaXZhdGUgX2VzY2FwYWJsZU92ZXJsYXlDb250cm9sbGVyID0gbmV3IFNiYkVzY2FwYWJsZU92ZXJsYXlDb250cm9sbGVyKHRoaXMpO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRkQ29udHJvbGxlcihcbiAgICAgIG5ldyBSZXNpemVDb250cm9sbGVyKHRoaXMsIHtcbiAgICAgICAgc2tpcEluaXRpYWw6IHRydWUsXG4gICAgICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLl91cGRhdGVTaWRlYmFyV2lkdGgoKSxcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXI/LignY2xpY2snLCAoZSkgPT4ge1xuICAgICAgaWYgKChlLnRhcmdldCBhcyBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZCk/LmxvY2FsTmFtZSA9PT0gJ3NiYi1zaWRlYmFyLWNsb3NlLWJ1dHRvbicpIHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG5cbiAgICB0aGlzLl9jb250YWluZXIgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLXNpZGViYXItY29udGFpbmVyJyk7XG4gICAgdGhpcy5fdXBkYXRlU2lkZWJhcldpZHRoKCk7XG5cbiAgICBpZiAodGhpcy5pc09wZW4gJiYgdGhpcy5faXNNb2RlT3ZlcigpKSB7XG4gICAgICB0aGlzLl90YWtlRm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLmNvbnRhaW5lcj8uc3R5bGUucmVtb3ZlUHJvcGVydHkodGhpcy5fYnVpbGRDc3NXaWR0aFZhcigpKTtcbiAgICB0aGlzLl9jb250YWluZXIgPSBudWxsO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICBpZiAoY2hhbmdlZFByb3BlcnRpZXMuaGFzKCdvcGVuZWQnKSkge1xuICAgICAgaWYgKHRoaXMub3BlbmVkKSB7XG4gICAgICAgIHRoaXMub3BlbigpO1xuICAgICAgfSBlbHNlIGlmICghdGhpcy5vcGVuZWQpIHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ21vZGUnKSkge1xuICAgICAgaWYgKHRoaXMubW9kZSA9PT0gJ292ZXInICYmIHRoaXMuaXNPcGVuKSB7XG4gICAgICAgIHRoaXMuX3Rha2VGb2N1cygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jZWRlRm9jdXMoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgIHN1cGVyLmZpcnN0VXBkYXRlZChjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICB0aGlzLl91cGRhdGVTaWRlYmFyV2lkdGgoKTtcbiAgfVxuXG4gIC8qKiBUb2dnbGVzIHRoZSBzaWRlYmFyIHZpc2liaWxpdHkuICovXG4gIHB1YmxpYyB0b2dnbGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RhdGUgPT09ICdvcGVuaW5nJyB8fCB0aGlzLnN0YXRlID09PSAnb3BlbmVkJykge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm9wZW4oKTtcbiAgICB9XG4gIH1cblxuICAvKiogT3BlbnMgdGhlIHNpZGViYXIuICovXG4gIHB1YmxpYyBvcGVuKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnN0YXRlID09PSAnb3BlbmluZycgfHwgdGhpcy5zdGF0ZSA9PT0gJ29wZW5lZCcgfHwgIXRoaXMuZGlzcGF0Y2hCZWZvcmVPcGVuRXZlbnQoKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuc3RhcnRBbmltYXRpb24oKTtcblxuICAgIGlmICghaXNTZXJ2ZXIgJiYgZG9jdW1lbnQuYWN0aXZlRWxlbWVudD8ubG9jYWxOYW1lICE9PSAnYm9keScpIHtcbiAgICAgIHRoaXMuX2xhc3RGb2N1c2VkRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgfVxuXG4gICAgdGhpcy5vcGVuZWQgPSB0cnVlO1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmluZyc7XG5cbiAgICBjb25zdCBpc1plcm9BbmltYXRpb25EdXJhdGlvbiA9IHRoaXMuX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCkgfHwgIXRoaXMuaXNDb25uZWN0ZWQ7XG4gICAgY29uc3QgaXNEdXJpbmdJbml0aWFsaXphdGlvbiA9ICF0aGlzLmhhc1VwZGF0ZWQ7XG5cbiAgICBpZiAoIShpc0R1cmluZ0luaXRpYWxpemF0aW9uIHx8IGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmludGVybmFscy5zdGF0ZXMuYWRkKCdza2lwLWFuaW1hdGlvbicpO1xuXG4gICAgLy8gV2UgaGF2ZSB0byB3YWl0IGZvciB0aGUgZmlyc3QgdXBkYXRlIHRvIGJlIGNvbXBsZXRlZFxuICAgIC8vIGluIG9yZGVyIHRvIGhhdmUgdGhlIHNpemUgb2YgdGhlIHNpZGViYXIgcmVhZHkgZm9yIHRoZSBhbmltYXRpb24uXG4gICAgaWYgKGlzRHVyaW5nSW5pdGlhbGl6YXRpb24pIHtcbiAgICAgIHRoaXMudXBkYXRlQ29tcGxldGUudGhlbigoKSA9PiB0aGlzLl9oYW5kbGVPcGVuaW5nKCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBJZiB0aGUgYW5pbWF0aW9uIGR1cmF0aW9uIGlzIHplcm8sIHRoZSBhbmltYXRpb25lbmQgZXZlbnQgaXMgbm90IGFsd2F5cyBmaXJlZCByZWxpYWJseS5cbiAgICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBvcGVuZWRgIHN0YXRlLlxuICAgICAgdGhpcy5faGFuZGxlT3BlbmluZygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2lzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc1plcm9BbmltYXRpb25EdXJhdGlvbih0aGlzLCAnLS1zYmItc2lkZWJhci1jb250YWluZXItYW5pbWF0aW9uLWR1cmF0aW9uJyk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVPcGVuaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUgPSAnb3BlbmVkJztcblxuICAgIC8vIFdlIGhhdmUgdG8gZW5zdXJlIHRoYXQgcmVtb3ZpbmcgdGhlIGFuaW1hdGlvbiBza2lwIGluc3RydWN0aW9uIGlzIGRvbmUgYSB0aWNrIGxhdGVyLlxuICAgIC8vIE90aGVyd2lzZSwgaXQncyByZW1vdmVkIHRvbyBlYXJseSBhbmQgaXQgZG9lc24ndCBoYXZlIGFueSBlZmZlY3QuXG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmludGVybmFscy5zdGF0ZXMuZGVsZXRlKCdza2lwLWFuaW1hdGlvbicpKTtcblxuICAgIHRoaXMuX3Rha2VGb2N1cygpO1xuICAgIHRoaXMuc3RvcEFuaW1hdGlvbigpO1xuICAgIHRoaXMuZGlzcGF0Y2hPcGVuRXZlbnQoKTtcbiAgfVxuXG4gIC8qKiBDbG9zZXMgdGhlIHNpZGViYXIuICovXG4gIHB1YmxpYyBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdGF0ZSA9PT0gJ2Nsb3NpbmcnIHx8IHRoaXMuc3RhdGUgPT09ICdjbG9zZWQnIHx8ICF0aGlzLmRpc3BhdGNoQmVmb3JlQ2xvc2VFdmVudCgpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5zdGFydEFuaW1hdGlvbigpO1xuXG4gICAgY29uc3QgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24gPSB0aGlzLl9pc1plcm9BbmltYXRpb25EdXJhdGlvbigpO1xuXG4gICAgaWYgKCF0aGlzLmhhc1VwZGF0ZWQgfHwgaXNaZXJvQW5pbWF0aW9uRHVyYXRpb24pIHtcbiAgICAgIHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5hZGQoJ3NraXAtYW5pbWF0aW9uJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3RhdGUgPSAnY2xvc2luZyc7XG4gICAgfVxuXG4gICAgdGhpcy5vcGVuZWQgPSBmYWxzZTtcblxuICAgIC8vIElmIHRoZSBhbmltYXRpb24gZHVyYXRpb24gaXMgemVybywgdGhlIGFuaW1hdGlvbmVuZCBldmVudCBpcyBub3QgYWx3YXlzIGZpcmVkIHJlbGlhYmx5LlxuICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBkaXJlY3RseSBzZXQgdGhlIGBvcGVuZWRgIHN0YXRlLlxuICAgIGlmICghdGhpcy5oYXNVcGRhdGVkIHx8IGlzWmVyb0FuaW1hdGlvbkR1cmF0aW9uKSB7XG4gICAgICB0aGlzLl9oYW5kbGVDbG9zaW5nKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfaGFuZGxlQ2xvc2luZygpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXRlID0gJ2Nsb3NlZCc7XG4gICAgLy8gV2UgaGF2ZSB0byBlbnN1cmUgdGhhdCByZW1vdmluZyB0aGUgYW5pbWF0aW9uIHNraXAgaW5zdHJ1Y3Rpb24gaXMgZG9uZSBhIHRpY2sgbGF0ZXIuXG4gICAgLy8gT3RoZXJ3aXNlLCBpdCdzIHJlbW92ZWQgdG9vIGVhcmx5IGFuZCBpdCBkb2Vzbid0IGhhdmUgYW55IGVmZmVjdC5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuaW50ZXJuYWxzLnN0YXRlcy5kZWxldGUoJ3NraXAtYW5pbWF0aW9uJykpO1xuICAgIHRoaXMuY2VkZUZvY3VzKCk7XG5cbiAgICBpZiAoIWlzU2VydmVyICYmICh0aGlzLmNvbnRhaW5zKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpIHx8IHRoaXMuX2lzTW9kZU92ZXIoKSkpIHtcbiAgICAgIGlmICh0aGlzLl9sYXN0Rm9jdXNlZEVsZW1lbnQpIHtcbiAgICAgICAgdGhpcy5fbGFzdEZvY3VzZWRFbGVtZW50Py5mb2N1cygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gV2UgZG9uJ3Qga25vdyB3aGVyZSB0byBzZXQgdGhlIGZvY3VzLCBidXQgaGF2ZSB0byByZW1vdmUgaXQsIHNvIHdlIGNhbGwgYmx1clxuICAgICAgICAoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuYmx1cigpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLl9sYXN0Rm9jdXNlZEVsZW1lbnQgPSBudWxsO1xuXG4gICAgdGhpcy5zdG9wQW5pbWF0aW9uKCk7XG4gICAgdGhpcy5kaXNwYXRjaENsb3NlRXZlbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3Rha2VGb2N1cygpOiB2b2lkIHtcbiAgICAvLyBXZSBwcmV2ZW50IGNhbGxpbmcgdGhlIGZvY3VzIHN0dWZmIHdoZW4gbm90IG5lZWRlZFxuICAgIGlmICghdGhpcy5pc0Nvbm5lY3RlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBpc01vZGVPdmVyID0gdGhpcy5faXNNb2RlT3ZlcigpO1xuXG4gICAgaWYgKGlzTW9kZU92ZXIgfHwgdGhpcy5mb2N1c09uT3Blbikge1xuICAgICAgdGhpcy5fZm9jdXNUcmFwQ29udHJvbGxlci5mb2N1c0luaXRpYWxFbGVtZW50KCk7XG4gICAgfVxuXG4gICAgaWYgKGlzTW9kZU92ZXIpIHtcbiAgICAgIHRoaXMuX2VzY2FwYWJsZU92ZXJsYXlDb250cm9sbGVyLmNvbm5lY3QoKTtcbiAgICAgIHRoaXMuX2ZvY3VzVHJhcENvbnRyb2xsZXIuZW5hYmxlZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLy8gSW50ZXJuYWwgbWV0aG9kIHRoYXQgd2UgdXNlIGV4dGVybmFsbHkuIGBwcm90ZWN0ZWRgIHByZXNlcnZlcyB0eXBlIGluZm9ybWF0aW9uIGZvciB0eXBlIHNhZmUgYWNjZXNzLlxuICBwcm90ZWN0ZWQgY2VkZUZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuX2ZvY3VzVHJhcENvbnRyb2xsZXIuZW5hYmxlZCA9IGZhbHNlO1xuICAgIHRoaXMuX2VzY2FwYWJsZU92ZXJsYXlDb250cm9sbGVyLmRpc2Nvbm5lY3QoKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZVNpZGViYXJXaWR0aChvbGRQb3NpdGlvbj86IHRoaXNbJ3Bvc2l0aW9uJ10pOiB2b2lkIHtcbiAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLmNvbnRhaW5lcjtcbiAgICBpZiAoIWNvbnRhaW5lcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChvbGRQb3NpdGlvbikge1xuICAgICAgY29udGFpbmVyLnN0eWxlLnJlbW92ZVByb3BlcnR5KHRoaXMuX2J1aWxkQ3NzV2lkdGhWYXIob2xkUG9zaXRpb24pKTtcbiAgICB9XG5cbiAgICBjb25zdCB3aWR0aCA9IHRoaXMub2Zmc2V0V2lkdGg7XG4gICAgaWYgKCF3aWR0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG5ld1ZhbHVlID0gYCR7d2lkdGh9cHhgO1xuICAgIGNvbnN0IGFjdHVhbFZhbHVlID0gY29udGFpbmVyLnN0eWxlLmdldFByb3BlcnR5VmFsdWUodGhpcy5fYnVpbGRDc3NXaWR0aFZhcigpKTtcblxuICAgIGlmIChhY3R1YWxWYWx1ZSA9PT0gbmV3VmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb250YWluZXIuc3R5bGUuc2V0UHJvcGVydHkodGhpcy5fYnVpbGRDc3NXaWR0aFZhcigpLCBuZXdWYWx1ZSk7XG4gIH1cblxuICBwcml2YXRlIF9idWlsZENzc1dpZHRoVmFyKHBvc2l0aW9uID0gdGhpcy5wb3NpdGlvbik6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAtLV9zYmItc2lkZWJhci1jb250YWluZXItJHtwb3NpdGlvbn0td2lkdGhgO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNNb2RlT3ZlcigpOiBib29sZWFuIHtcbiAgICAvLyBJZiB0aGUgbWluaW11bSBzcGFjZSBhdHRyaWJ1dGUgaXMgc2V0LCB0aGUgc2lkZWJhciBzaG91bGQgYmVoYXZlIGxpa2UgaW4gbW9kZSBvdmVyLlxuICAgIHJldHVybiB0aGlzLm1vZGUgPT09ICdvdmVyJyB8fCB0aGlzLm1hdGNoZXMoJzpzdGF0ZShtb2RlLW92ZXItZm9yY2VkKScpO1xuICB9XG5cbiAgcHJpdmF0ZSBfb25UcmFuc2l0aW9uRW5kKGV2ZW50OiBUcmFuc2l0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICAvLyBXZSBlbnN1cmUgdGhhdCB3ZSByZWFjdCB0byB0aGUgZmFkZSBpbiB0cmFuc2l0aW9uIG9uIHRoZSBzYmItc2lkZWJhciBkaXZcbiAgICBpZiAoZXZlbnQucHJvcGVydHlOYW1lICE9PSAndHJhbnNsYXRlJyB8fCBldmVudC50YXJnZXQgIT09IGV2ZW50LmN1cnJlbnRUYXJnZXQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zdGF0ZSA9PT0gJ29wZW5pbmcnKSB7XG4gICAgICB0aGlzLl9oYW5kbGVPcGVuaW5nKCk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnN0YXRlID09PSAnY2xvc2luZycpIHtcbiAgICAgIHRoaXMuX2hhbmRsZUNsb3NpbmcoKTtcbiAgICB9XG4gIH1cblxuICBAZXZlbnRPcHRpb25zKHsgcGFzc2l2ZTogdHJ1ZSB9KVxuICBwcml2YXRlIF9kZXRlY3RTY3JvbGxlZFN0YXRlKCk6IHZvaWQge1xuICAgIHRoaXMudG9nZ2xlU3RhdGUoXG4gICAgICAnc2Nyb2xsZWQnLFxuICAgICAgKHRoaXMuc2hhZG93Um9vdD8ucXVlcnlTZWxlY3RvcignLnNiYi1zaWRlYmFyLWNvbnRlbnQtc2VjdGlvbicpPy5zY3JvbGxUb3AgPz8gMCkgPiAwLFxuICAgICk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGA8ZGl2IGNsYXNzPVwic2JiLXNpZGViYXJcIiBAdHJhbnNpdGlvbmVuZD0ke3RoaXMuX29uVHJhbnNpdGlvbkVuZH0+XG4gICAgICA8ZGl2IGNsYXNzPVwic2JiLXNpZGViYXItdGl0bGUtc2VjdGlvblwiPjxzbG90IG5hbWU9XCJ0aXRsZS1zZWN0aW9uXCI+PC9zbG90PjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1zaWRlYmFyLWNvbnRlbnQtc2VjdGlvblwiIEBzY3JvbGw9JHsoKSA9PiB0aGlzLl9kZXRlY3RTY3JvbGxlZFN0YXRlKCl9PlxuICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5gO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItc2lkZWJhcic6IFNiYlNpZGViYXJFbGVtZW50O1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lDcUJhLDJCQUFpQjttQkFBUywwQkFBMEIsd0JBQXdCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Y0FBNUUsMEJBQTBCLFlBQWtEOzs7d0JBS3RGLFNBQVMsRUFBRSxTQUFTLE1BQU0sQ0FBQyxDQUFBO3VCQUkzQixXQUFXLE1BQU8sTUFBTSxTQUFTLFNBQVMsT0FBUSxFQUNsRCxTQUFTLEVBQUUsU0FBUyxNQUFNLENBQUMsQ0FBQTs7SUFJM0IsV0FBVyxNQUFPLE1BQU0sUUFBUSxRQUFRLFFBQVM7SUFDakQsc0JBQXNCLFVBQVUsV0FBVyxhQUFhLFNBQVMsb0JBQW9CLFNBQVMsQ0FBQztJQUMvRixTQUFTLEVBQUUsU0FBUyxNQUFNLENBQUE7SUFBQzt5QkFRM0IsV0FBVyxFQUNYLFNBQVM7SUFBRSxNQUFNO0lBQVMsU0FBUztJQUFNLENBQUMsQ0FBQTs4QkFRMUMsV0FBVyxFQUNYLFNBQVM7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
|
package/development/sidebar.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as SbbSidebarCloseButtonElement } from "./sidebar-close-button.component-Ckp-_zlH.js";
|
|
2
2
|
import { t as SbbSidebarContainerElement } from "./sidebar-container.component-D4yIuari.js";
|
|
3
|
-
import { t as SbbSidebarContentElement } from "./sidebar-content.component-
|
|
4
|
-
import { t as SbbSidebarTitleElement } from "./sidebar-title.component-
|
|
5
|
-
import { t as SbbSidebarElement } from "./sidebar.component-
|
|
3
|
+
import { t as SbbSidebarContentElement } from "./sidebar-content.component-6oadojLp.js";
|
|
4
|
+
import { t as SbbSidebarTitleElement } from "./sidebar-title.component-DU-ZLEU0.js";
|
|
5
|
+
import { t as SbbSidebarElement } from "./sidebar.component-BmLRuuec.js";
|
|
6
6
|
import "./sidebar.pure.js";
|
|
7
7
|
//#region src/elements/sidebar.ts
|
|
8
8
|
/** @entrypoint */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as SbbSidebarCloseButtonElement } from "./sidebar-close-button.component-Ckp-_zlH.js";
|
|
2
2
|
import { t as SbbSidebarContainerElement } from "./sidebar-container.component-D4yIuari.js";
|
|
3
|
-
import { t as SbbSidebarContentElement } from "./sidebar-content.component-
|
|
4
|
-
import { t as SbbSidebarTitleElement } from "./sidebar-title.component-
|
|
5
|
-
import { t as SbbSidebarElement } from "./sidebar.component-
|
|
3
|
+
import { t as SbbSidebarContentElement } from "./sidebar-content.component-6oadojLp.js";
|
|
4
|
+
import { t as SbbSidebarTitleElement } from "./sidebar-title.component-DU-ZLEU0.js";
|
|
5
|
+
import { t as SbbSidebarElement } from "./sidebar.component-BmLRuuec.js";
|
|
6
6
|
export { SbbSidebarCloseButtonElement, SbbSidebarContainerElement, SbbSidebarContentElement, SbbSidebarElement, SbbSidebarTitleElement };
|
package/off-brand-theme.css
CHANGED
|
@@ -1752,6 +1752,12 @@ slot[name=error]::slotted(*) {
|
|
|
1752
1752
|
--sbb-selection-panel-input-padding-block-m
|
|
1753
1753
|
);
|
|
1754
1754
|
--sbb-selection-expansion-panel-content-padding-inline: var(--sbb-selection-panel-input-padding-inline-m);
|
|
1755
|
+
--sbb-sidebar-background-color: var(--sbb-background-color-1);
|
|
1756
|
+
--sbb-sidebar-title-padding-block: var(--sbb-spacing-fixed-3x);
|
|
1757
|
+
--sbb-sidebar-padding: var(--sbb-spacing-responsive-xs);
|
|
1758
|
+
--sbb-sidebar-border-radius: var(--sbb-border-radius-8x);
|
|
1759
|
+
--sbb-sidebar-margin: var(--sbb-spacing-fixed-3x);
|
|
1760
|
+
--sbb-sidebar-title-gap: var(--sbb-spacing-fixed-2x);
|
|
1755
1761
|
--sbb-signet-background-color: var(--sbb-color-brand);
|
|
1756
1762
|
--sbb-signet-panel-color: var(--sbb-color-brand);
|
|
1757
1763
|
--sbb-signet-icon-color: var(--sbb-color-white);
|
|
@@ -2272,6 +2278,37 @@ sbb-message > [slot=image] :is(sbb-image, img):not(.sbb-figure-overlap-image) {
|
|
|
2272
2278
|
--sbb-option-hint-padding-block-end: var(--sbb-spacing-fixed-1x);
|
|
2273
2279
|
}
|
|
2274
2280
|
|
|
2281
|
+
sbb-sidebar:has(sbb-sidebar-title) {
|
|
2282
|
+
--_sbb-sidebar-padding-block-start: 0;
|
|
2283
|
+
}
|
|
2284
|
+
|
|
2285
|
+
sbb-sidebar:not(:has(sbb-sidebar-title)) sbb-sidebar-close-button {
|
|
2286
|
+
position: absolute;
|
|
2287
|
+
}
|
|
2288
|
+
|
|
2289
|
+
sbb-sidebar-container:has(> sbb-sidebar:is(:state(skip-animation),[state--skip-animation])) {
|
|
2290
|
+
--sbb-sidebar-container-animation-duration: 0s;
|
|
2291
|
+
}
|
|
2292
|
+
sbb-sidebar-container:has(> sbb-sidebar:is([mode=over], :is(:state(mode-over-forced),[state--mode-over-forced])):is(:is(:state(state-opening),[state--state-opening]),
|
|
2293
|
+
:is(:state(state-opened),[state--state-opened]))) {
|
|
2294
|
+
--sbb-sidebar-container__backdrop-visibility: visible;
|
|
2295
|
+
--sbb-sidebar-container-backdrop-opacity: 0.4;
|
|
2296
|
+
}
|
|
2297
|
+
sbb-sidebar-container:is(:has(> sbb-sidebar[position=end]:is(:is(:state(state-closing),[state--state-closing]),
|
|
2298
|
+
:is(:state(state-closed),[state--state-closed]),
|
|
2299
|
+
[mode=over],
|
|
2300
|
+
:is(:state(mode-over-forced),[state--mode-over-forced]))),
|
|
2301
|
+
:not(:has(> sbb-sidebar[position=end]))) > sbb-sidebar-content {
|
|
2302
|
+
--_sbb-sidebar-content-margin-inline-end: 0;
|
|
2303
|
+
}
|
|
2304
|
+
sbb-sidebar-container:is(:has(> sbb-sidebar:not([position=end]):is(:is(:state(state-closing),[state--state-closing]),
|
|
2305
|
+
:is(:state(state-closed),[state--state-closed]),
|
|
2306
|
+
[mode=over],
|
|
2307
|
+
:is(:state(mode-over-forced),[state--mode-over-forced]))),
|
|
2308
|
+
:not(:has(> sbb-sidebar:not([position=end])))) > sbb-sidebar-content {
|
|
2309
|
+
--_sbb-sidebar-content-margin-inline-start: 0;
|
|
2310
|
+
}
|
|
2311
|
+
|
|
2275
2312
|
sbb-tab-nav-bar .sbb-tab-amount {
|
|
2276
2313
|
margin: 0;
|
|
2277
2314
|
color: var(--sbb-tab-label-amount-color);
|
|
@@ -2455,40 +2492,6 @@ sbb-train-formation[view=top] sbb-train-wagon {
|
|
|
2455
2492
|
--sbb-train-wagon-wagon-end-right-shape: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='40' viewBox='0 0 80 40' fill='none'%3E%3Cpath d='M8.5,0.5 h51.5 a19.5,19.5 0 0 1 19.5,19.5 v0 a19.5,19.5 0 0 1 -19.5,19.5 h-51.5 a8,8 0 0 1 -8,-8 v-23 a8,8 0 0 1 8,-8 z' stroke='%23000000' stroke-width='1'/%3E%3C/svg%3E");
|
|
2456
2493
|
}
|
|
2457
2494
|
|
|
2458
|
-
sbb-sidebar-container:has(> sbb-sidebar:is(:state(skip-animation),[state--skip-animation])) {
|
|
2459
|
-
--sbb-sidebar-container-animation-duration: 0s;
|
|
2460
|
-
}
|
|
2461
|
-
|
|
2462
|
-
sbb-sidebar-container:is(:has(> sbb-sidebar:not([position=end]):is(:is(:state(state-closing),[state--state-closing]),
|
|
2463
|
-
:is(:state(state-closed),[state--state-closed]),
|
|
2464
|
-
[mode=over],
|
|
2465
|
-
:is(:state(mode-over-forced),[state--mode-over-forced]))),
|
|
2466
|
-
:not(:has(> sbb-sidebar:not([position=end])))) > sbb-sidebar-content {
|
|
2467
|
-
--sbb-sidebar-content__margin-inline-start: 0;
|
|
2468
|
-
}
|
|
2469
|
-
|
|
2470
|
-
sbb-sidebar-container:is(:has(> sbb-sidebar[position=end]:is(:is(:state(state-closing),[state--state-closing]),
|
|
2471
|
-
:is(:state(state-closed),[state--state-closed]),
|
|
2472
|
-
[mode=over],
|
|
2473
|
-
:is(:state(mode-over-forced),[state--mode-over-forced]))),
|
|
2474
|
-
:not(:has(> sbb-sidebar[position=end]))) > sbb-sidebar-content {
|
|
2475
|
-
--sbb-sidebar-content__margin-inline-end: 0;
|
|
2476
|
-
}
|
|
2477
|
-
|
|
2478
|
-
sbb-sidebar-container:has(> sbb-sidebar:is([mode=over], :is(:state(mode-over-forced),[state--mode-over-forced])):is(:is(:state(state-opening),[state--state-opening]),
|
|
2479
|
-
:is(:state(state-opened),[state--state-opened]))) {
|
|
2480
|
-
--sbb-sidebar-container__backdrop-visibility: visible;
|
|
2481
|
-
--sbb-sidebar-container-backdrop-opacity: 0.4;
|
|
2482
|
-
}
|
|
2483
|
-
|
|
2484
|
-
sbb-sidebar:not(:has(sbb-sidebar-title)) sbb-sidebar-close-button {
|
|
2485
|
-
position: absolute;
|
|
2486
|
-
}
|
|
2487
|
-
|
|
2488
|
-
sbb-sidebar:has(sbb-sidebar-title) {
|
|
2489
|
-
--sbb-sidebar__padding-block-start: 0;
|
|
2490
|
-
}
|
|
2491
|
-
|
|
2492
2495
|
.sbb-select-trigger {
|
|
2493
2496
|
width: 100%;
|
|
2494
2497
|
height: var(--sbb-size-element-xs);
|