@sbb-esta/lyne-elements 2.5.0 → 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 -21
- 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 +145 -136
- 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/base-elements/button-base-element.d.ts +5 -0
- package/core/base-elements/button-base-element.d.ts.map +1 -1
- package/core/base-elements.js +94 -79
- 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/dom/platform.d.ts +5 -0
- package/core/dom/platform.d.ts.map +1 -1
- package/core/dom.js +10 -9
- 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/form-associated-radio-button-mixin.d.ts.map +1 -1
- package/core/mixins.js +71 -63
- 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 +2568 -740
- 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 -21
- 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 +104 -82
- 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/base-elements/button-base-element.d.ts +5 -0
- package/development/core/base-elements/button-base-element.d.ts.map +1 -1
- package/development/core/base-elements.js +38 -10
- 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/platform.d.ts +5 -0
- package/development/core/dom/platform.d.ts.map +1 -1
- package/development/core/dom.js +3 -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/form-associated-radio-button-mixin.d.ts.map +1 -1
- package/development/core/mixins.js +19 -6
- 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 +13 -146
- 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/radio-button/radio-button-group/radio-button-group.d.ts +0 -1
- package/development/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
- package/development/radio-button/radio-button-group.js +3 -5
- package/development/select/select.d.ts +6 -3
- package/development/select/select.d.ts.map +1 -1
- package/development/select.js +20 -18
- 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 +13 -1
- package/development/stepper/step/step.d.ts.map +1 -1
- package/development/stepper/step-label.js +2 -2
- package/development/stepper/step.js +21 -6
- 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 +103 -98
- 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/radio-button/radio-button-group/radio-button-group.d.ts +0 -1
- package/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -1
- package/radio-button/radio-button-group.js +8 -8
- package/select/select.d.ts +6 -3
- package/select/select.d.ts.map +1 -1
- package/select.js +73 -73
- 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 +13 -1
- package/stepper/step/step.d.ts.map +1 -1
- package/stepper/step-label.js +1 -1
- package/stepper/step.js +34 -23
- 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
|
@@ -6,11 +6,10 @@ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read fr
|
|
|
6
6
|
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
7
7
|
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
8
8
|
import { __runInitializers, __esDecorate } from "tslib";
|
|
9
|
-
import { css, LitElement, html } from "lit";
|
|
9
|
+
import { css, LitElement, isServer, html } from "lit";
|
|
10
10
|
import { customElement, property, state } from "lit/decorators.js";
|
|
11
11
|
import { ref } from "lit/directives/ref.js";
|
|
12
|
-
import { SbbLanguageController } from "./core/controllers.js";
|
|
13
|
-
import { findInput } from "./core/dom.js";
|
|
12
|
+
import { SbbIdReferenceController, SbbLanguageController } from "./core/controllers.js";
|
|
14
13
|
import { EventEmitter, forwardEvent } from "./core/eventing.js";
|
|
15
14
|
import { i18nTimeInputChange } from "./core/i18n.js";
|
|
16
15
|
const style = css`:host {
|
|
@@ -29,14 +28,16 @@ const REGEX_ALLOWED_CHARACTERS = /[0-9.:,\-;_hH]/;
|
|
|
29
28
|
const REGEX_GROUPS_WITHOUT_COLON = /^([0-9]{1,2})([0-9]{2})$/;
|
|
30
29
|
const REGEX_GROUPS_WITH_COLON = /^([0-9]{1,2})?[.:,\-;_hH]?([0-9]{1,2})?$/;
|
|
31
30
|
let SbbTimeInputElement = (() => {
|
|
32
|
-
var __inputElement_accessor_storage, _a;
|
|
31
|
+
var _input_accessor_storage, __inputElement_accessor_storage, _a;
|
|
33
32
|
let _classDecorators = [customElement("sbb-time-input")];
|
|
34
33
|
let _classDescriptor;
|
|
35
34
|
let _classExtraInitializers = [];
|
|
36
35
|
let _classThis;
|
|
37
36
|
let _classSuper = LitElement;
|
|
38
37
|
let _instanceExtraInitializers = [];
|
|
39
|
-
let
|
|
38
|
+
let _input_decorators;
|
|
39
|
+
let _input_initializers = [];
|
|
40
|
+
let _input_extraInitializers = [];
|
|
40
41
|
let __inputElement_decorators;
|
|
41
42
|
let __inputElement_initializers = [];
|
|
42
43
|
let __inputElement_extraInitializers = [];
|
|
@@ -44,9 +45,10 @@ let SbbTimeInputElement = (() => {
|
|
|
44
45
|
var SbbTimeInputElement2 = (_a = class extends _classSuper {
|
|
45
46
|
constructor() {
|
|
46
47
|
super(...arguments);
|
|
48
|
+
__privateAdd(this, _input_accessor_storage);
|
|
47
49
|
__privateAdd(this, __inputElement_accessor_storage);
|
|
48
|
-
this
|
|
49
|
-
__privateSet(this, __inputElement_accessor_storage, __runInitializers(this, __inputElement_initializers, null));
|
|
50
|
+
__privateSet(this, _input_accessor_storage, (__runInitializers(this, _instanceExtraInitializers), __runInitializers(this, _input_initializers, null)));
|
|
51
|
+
__privateSet(this, __inputElement_accessor_storage, (__runInitializers(this, _input_extraInitializers), __runInitializers(this, __inputElement_initializers, null)));
|
|
50
52
|
this._didChange = (__runInitializers(this, __inputElement_extraInitializers), new EventEmitter(this, SbbTimeInputElement2.events.didChange, {
|
|
51
53
|
bubbles: true,
|
|
52
54
|
cancelable: true
|
|
@@ -55,16 +57,17 @@ let SbbTimeInputElement = (() => {
|
|
|
55
57
|
bubbles: true,
|
|
56
58
|
composed: false
|
|
57
59
|
});
|
|
58
|
-
this.
|
|
60
|
+
this._inputAbortController = new AbortController();
|
|
61
|
+
this._inputIdReferenceController = new SbbIdReferenceController(this, "input");
|
|
59
62
|
this._language = new SbbLanguageController(this);
|
|
60
63
|
}
|
|
64
|
+
// TODO: Replace HTMLElement by HTMLInputElement
|
|
61
65
|
/** Reference of the native input connected to the datepicker. */
|
|
62
|
-
set input(value) {
|
|
63
|
-
this._input = value;
|
|
64
|
-
this._setupInputElement();
|
|
65
|
-
}
|
|
66
66
|
get input() {
|
|
67
|
-
return this
|
|
67
|
+
return __privateGet(this, _input_accessor_storage);
|
|
68
|
+
}
|
|
69
|
+
set input(value) {
|
|
70
|
+
__privateSet(this, _input_accessor_storage, value);
|
|
68
71
|
}
|
|
69
72
|
get _inputElement() {
|
|
70
73
|
return __privateGet(this, __inputElement_accessor_storage);
|
|
@@ -90,39 +93,34 @@ let SbbTimeInputElement = (() => {
|
|
|
90
93
|
}
|
|
91
94
|
connectedCallback() {
|
|
92
95
|
super.connectedCallback();
|
|
93
|
-
this.
|
|
96
|
+
this._configureInputElement();
|
|
94
97
|
}
|
|
95
98
|
disconnectedCallback() {
|
|
96
99
|
var _a2;
|
|
97
100
|
super.disconnectedCallback();
|
|
98
|
-
(_a2 = this.
|
|
101
|
+
(_a2 = this._inputAbortController) == null ? void 0 : _a2.abort();
|
|
102
|
+
this._inputElement = null;
|
|
99
103
|
}
|
|
100
|
-
|
|
101
|
-
super.
|
|
102
|
-
this.
|
|
103
|
-
|
|
104
|
-
_setupInputElement() {
|
|
105
|
-
var _a2;
|
|
106
|
-
const newInput = findInput(this, this.input);
|
|
107
|
-
if (!newInput) {
|
|
108
|
-
(_a2 = this._abortController) == null ? void 0 : _a2.abort();
|
|
109
|
-
return;
|
|
104
|
+
requestUpdate(name, oldValue, options) {
|
|
105
|
+
super.requestUpdate(name, oldValue, options);
|
|
106
|
+
if (!isServer && (!name || name === "input") && this.hasUpdated) {
|
|
107
|
+
this._configureInputElement();
|
|
110
108
|
}
|
|
111
|
-
|
|
112
|
-
|
|
109
|
+
}
|
|
110
|
+
_configureInputElement() {
|
|
111
|
+
var _a2, _b, _c, _d;
|
|
112
|
+
const inputElement = this.input instanceof HTMLInputElement ? this.input : this._inputIdReferenceController.find() ?? ((_b = (_a2 = this.closest) == null ? void 0 : _a2.call(this, "sbb-form-field")) == null ? void 0 : _b.querySelector("input")) ?? null;
|
|
113
|
+
if (inputElement === this._inputElement) {
|
|
113
114
|
return;
|
|
114
115
|
}
|
|
115
|
-
this.
|
|
116
|
-
this.
|
|
117
|
-
this.
|
|
118
|
-
}
|
|
119
|
-
_registerInputElement() {
|
|
120
|
-
var _a2;
|
|
121
|
-
(_a2 = this._abortController) == null ? void 0 : _a2.abort();
|
|
116
|
+
(_c = this._inputAbortController) == null ? void 0 : _c.abort();
|
|
117
|
+
(_d = this._inputElement) == null ? void 0 : _d.removeAttribute("data-sbb-time-input");
|
|
118
|
+
this._inputElement = inputElement;
|
|
122
119
|
if (!this._inputElement) {
|
|
123
120
|
return;
|
|
124
121
|
}
|
|
125
|
-
this.
|
|
122
|
+
this._updateValue(this._inputElement.value);
|
|
123
|
+
this._inputAbortController = new AbortController();
|
|
126
124
|
this._inputElement.toggleAttribute("data-sbb-time-input", true);
|
|
127
125
|
this._inputElement.type = "text";
|
|
128
126
|
this._inputElement.inputMode = "numeric";
|
|
@@ -131,18 +129,18 @@ let SbbTimeInputElement = (() => {
|
|
|
131
129
|
this._inputElement.placeholder = "HH:MM";
|
|
132
130
|
}
|
|
133
131
|
this._inputElement.addEventListener("input", (event) => forwardEvent(event, this), {
|
|
134
|
-
signal: this.
|
|
132
|
+
signal: this._inputAbortController.signal
|
|
135
133
|
});
|
|
136
|
-
this._inputElement.addEventListener("keydown", (event) => this._preventCharInsert(event), { signal: this.
|
|
134
|
+
this._inputElement.addEventListener("keydown", (event) => this._preventCharInsert(event), { signal: this._inputAbortController.signal });
|
|
137
135
|
this._inputElement.addEventListener("change", (event) => this._updateValue(event.target.value), {
|
|
138
|
-
signal: this.
|
|
136
|
+
signal: this._inputAbortController.signal,
|
|
139
137
|
capture: true
|
|
140
138
|
});
|
|
141
139
|
this._inputElement.addEventListener("change", (event) => {
|
|
142
140
|
this._emitChange(event);
|
|
143
141
|
this._updateAccessibilityMessage();
|
|
144
142
|
}, {
|
|
145
|
-
signal: this.
|
|
143
|
+
signal: this._inputAbortController.signal
|
|
146
144
|
});
|
|
147
145
|
}
|
|
148
146
|
/**
|
|
@@ -249,14 +247,14 @@ let SbbTimeInputElement = (() => {
|
|
|
249
247
|
></p>
|
|
250
248
|
`;
|
|
251
249
|
}
|
|
252
|
-
}, __inputElement_accessor_storage = new WeakMap(), _classThis = _a, (() => {
|
|
250
|
+
}, _input_accessor_storage = new WeakMap(), __inputElement_accessor_storage = new WeakMap(), _classThis = _a, (() => {
|
|
253
251
|
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
254
|
-
|
|
252
|
+
_input_decorators = [property()];
|
|
255
253
|
__inputElement_decorators = [state()];
|
|
256
254
|
_set_valueAsDate_decorators = [property({ attribute: false })];
|
|
257
|
-
__esDecorate(_a, null,
|
|
255
|
+
__esDecorate(_a, null, _input_decorators, { kind: "accessor", name: "input", static: false, private: false, access: { has: (obj) => "input" in obj, get: (obj) => obj.input, set: (obj, value) => {
|
|
258
256
|
obj.input = value;
|
|
259
|
-
} }, metadata: _metadata },
|
|
257
|
+
} }, metadata: _metadata }, _input_initializers, _input_extraInitializers);
|
|
260
258
|
__esDecorate(_a, null, __inputElement_decorators, { kind: "accessor", name: "_inputElement", static: false, private: false, access: { has: (obj) => "_inputElement" in obj, get: (obj) => obj._inputElement, set: (obj, value) => {
|
|
261
259
|
obj._inputElement = value;
|
|
262
260
|
} }, metadata: _metadata }, __inputElement_initializers, __inputElement_extraInitializers);
|
|
@@ -275,4 +273,4 @@ let SbbTimeInputElement = (() => {
|
|
|
275
273
|
export {
|
|
276
274
|
SbbTimeInputElement
|
|
277
275
|
};
|
|
278
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1pbnB1dC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3RpbWUtaW5wdXQvdGltZS1pbnB1dC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBQcm9wZXJ0eVZhbHVlcywgVGVtcGxhdGVSZXN1bHQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgaHRtbCwgTGl0RWxlbWVudCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50LCBwcm9wZXJ0eSwgc3RhdGUgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgeyByZWYgfSBmcm9tICdsaXQvZGlyZWN0aXZlcy9yZWYuanMnO1xuXG5pbXBvcnQgeyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIgfSBmcm9tICcuLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IGZpbmRJbnB1dCB9IGZyb20gJy4uL2NvcmUvZG9tLmpzJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgZm9yd2FyZEV2ZW50IH0gZnJvbSAnLi4vY29yZS9ldmVudGluZy5qcyc7XG5pbXBvcnQgeyBpMThuVGltZUlucHV0Q2hhbmdlIH0gZnJvbSAnLi4vY29yZS9pMThuLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiRGF0ZUxpa2UsIFNiYlZhbGlkYXRpb25DaGFuZ2VFdmVudCB9IGZyb20gJy4uL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3RpbWUtaW5wdXQuc2Nzcz9saXQmaW5saW5lJztcblxuY29uc3QgUkVHRVhfQUxMT1dFRF9DSEFSQUNURVJTID0gL1swLTkuOixcXC07X2hIXS87XG5jb25zdCBSRUdFWF9HUk9VUFNfV0lUSE9VVF9DT0xPTiA9IC9eKFswLTldezEsMn0pKFswLTldezJ9KSQvO1xuY29uc3QgUkVHRVhfR1JPVVBTX1dJVEhfQ09MT04gPSAvXihbMC05XXsxLDJ9KT9bLjosXFwtO19oSF0/KFswLTldezEsMn0pPyQvO1xuXG5pbnRlcmZhY2UgVGltZSB7XG4gIGhvdXJzOiBudW1iZXI7XG4gIG1pbnV0ZXM6IG51bWJlcjtcbn1cblxuLyoqXG4gKiAqIENvbWJpbmVkIHdpdGggYSBuYXRpdmUgaW5wdXQsIGl0IGRpc3BsYXlzIHRoZSBpbnB1dCdzIHZhbHVlIGFzIGEgZm9ybWF0dGVkIHRpbWUuXG4gKlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2hhbmdlIC0gRGVwcmVjYXRlZC4gdXNlZCBmb3IgUmVhY3QuIFdpbGwgcHJvYmFibHkgYmUgcmVtb3ZlZCBvbmNlIFJlYWN0IDE5IGlzIGF2YWlsYWJsZS5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8U2JiVmFsaWRhdGlvbkNoYW5nZUV2ZW50Pn0gdmFsaWRhdGlvbkNoYW5nZSAtIEVtaXRzIHdoZW5ldmVyIHRoZSBpbnRlcm5hbCB2YWxpZGF0aW9uIHN0YXRlIGNoYW5nZXMuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi10aW1lLWlucHV0JylcbmNsYXNzIFNiYlRpbWVJbnB1dEVsZW1lbnQgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIGRpZENoYW5nZTogJ2RpZENoYW5nZScsXG4gICAgdmFsaWRhdGlvbkNoYW5nZTogJ3ZhbGlkYXRpb25DaGFuZ2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8qKiBSZWZlcmVuY2Ugb2YgdGhlIG5hdGl2ZSBpbnB1dCBjb25uZWN0ZWQgdG8gdGhlIGRhdGVwaWNrZXIuICovXG4gIEBwcm9wZXJ0eSgpXG4gIHB1YmxpYyBzZXQgaW5wdXQodmFsdWU6IHN0cmluZyB8IEhUTUxFbGVtZW50IHwgbnVsbCkge1xuICAgIHRoaXMuX2lucHV0ID0gdmFsdWU7XG4gICAgdGhpcy5fc2V0dXBJbnB1dEVsZW1lbnQoKTtcbiAgfVxuICBwdWJsaWMgZ2V0IGlucHV0KCk6IHN0cmluZyB8IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2lucHV0O1xuICB9XG4gIHByaXZhdGUgX2lucHV0OiBzdHJpbmcgfCBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIEBzdGF0ZSgpIHByaXZhdGUgYWNjZXNzb3IgX2lucHV0RWxlbWVudDogSFRNTElucHV0RWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBGb3JtYXRzIHRoZSBjdXJyZW50IGlucHV0J3MgdmFsdWUgYXMgZGF0ZS4gKi9cbiAgQHByb3BlcnR5KHsgYXR0cmlidXRlOiBmYWxzZSB9KVxuICBwdWJsaWMgc2V0IHZhbHVlQXNEYXRlKGRhdGU6IFNiYkRhdGVMaWtlIHwgbnVsbCkge1xuICAgIGlmICghZGF0ZSB8fCAhdGhpcy5faW5wdXRFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGRhdGVPYmogPSBkYXRlIGluc3RhbmNlb2YgRGF0ZSA/IGRhdGUgOiBuZXcgRGF0ZShkYXRlKTtcblxuICAgIHRoaXMuX2lucHV0RWxlbWVudC52YWx1ZSA9IHRoaXMuX2Zvcm1hdFZhbHVlKHtcbiAgICAgIGhvdXJzOiBkYXRlT2JqLmdldEhvdXJzKCksXG4gICAgICBtaW51dGVzOiBkYXRlT2JqLmdldE1pbnV0ZXMoKSxcbiAgICB9KTtcblxuICAgIC8vIEVtaXQgYmx1ciBldmVudCB3aGVuIHZhbHVlIGlzIGNoYW5nZWQgcHJvZ3JhbW1hdGljYWxseSB0byBub3RpZnlcbiAgICAvLyBmcmFtZXdvcmtzIHRoYXQgcmVseSBvbiB0aGF0IGV2ZW50IHRvIHVwZGF0ZSBmb3JtIHN0YXR1cy5cbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRm9jdXNFdmVudCgnYmx1cicsIHsgY29tcG9zZWQ6IHRydWUgfSkpO1xuICB9XG4gIHB1YmxpYyBnZXQgdmFsdWVBc0RhdGUoKTogRGF0ZSB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9mb3JtYXRWYWx1ZUFzRGF0ZSh0aGlzLl9wYXJzZUlucHV0KHRoaXMuX2lucHV0RWxlbWVudD8udmFsdWUpKSA/PyBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIG9ubHkgdXNlZCBmb3IgUmVhY3QuIFdpbGwgcHJvYmFibHkgYmUgcmVtb3ZlZCBvbmNlIFJlYWN0IDE5IGlzIGF2YWlsYWJsZS5cbiAgICovXG4gIHByaXZhdGUgX2RpZENoYW5nZTogRXZlbnRFbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcih0aGlzLCBTYmJUaW1lSW5wdXRFbGVtZW50LmV2ZW50cy5kaWRDaGFuZ2UsIHtcbiAgICBidWJibGVzOiB0cnVlLFxuICAgIGNhbmNlbGFibGU6IHRydWUsXG4gIH0pO1xuXG4gIC8qKiBFbWl0cyB3aGVuZXZlciB0aGUgaW50ZXJuYWwgdmFsaWRhdGlvbiBzdGF0ZSBjaGFuZ2VzLiAqL1xuICBwcml2YXRlIF92YWxpZGF0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8U2JiVmFsaWRhdGlvbkNoYW5nZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoXG4gICAgdGhpcyxcbiAgICBTYmJUaW1lSW5wdXRFbGVtZW50LmV2ZW50cy52YWxpZGF0aW9uQ2hhbmdlLFxuICAgIHtcbiAgICAgIGJ1YmJsZXM6IHRydWUsXG4gICAgICBjb21wb3NlZDogZmFsc2UsXG4gICAgfSxcbiAgKTtcblxuICBwcml2YXRlIF9zdGF0dXNDb250YWluZXIhOiBIVE1MUGFyYWdyYXBoRWxlbWVudDtcbiAgcHJpdmF0ZSBfYWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG5cbiAgICB0aGlzLl9zZXR1cElucHV0RWxlbWVudCgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fYWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGZpcnN0VXBkYXRlZChfY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzKTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKF9jaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICB0aGlzLl9zZXR1cElucHV0RWxlbWVudCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0dXBJbnB1dEVsZW1lbnQoKTogdm9pZCB7XG4gICAgY29uc3QgbmV3SW5wdXQgPSBmaW5kSW5wdXQodGhpcywgdGhpcy5pbnB1dCk7XG4gICAgaWYgKCFuZXdJbnB1dCkge1xuICAgICAgdGhpcy5fYWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG9sZElucHV0ID0gdGhpcy5faW5wdXRFbGVtZW50O1xuICAgIGlmIChvbGRJbnB1dCA9PT0gbmV3SW5wdXQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5faW5wdXRFbGVtZW50ID0gbmV3SW5wdXQ7XG4gICAgdGhpcy5fcmVnaXN0ZXJJbnB1dEVsZW1lbnQoKTtcbiAgICB0aGlzLl91cGRhdGVWYWx1ZSh0aGlzLl9pbnB1dEVsZW1lbnQudmFsdWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVnaXN0ZXJJbnB1dEVsZW1lbnQoKTogdm9pZCB7XG4gICAgdGhpcy5fYWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuXG4gICAgaWYgKCF0aGlzLl9pbnB1dEVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9hYm9ydENvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG5cbiAgICAvLyBDb25maWd1cmUgaW5wdXRcbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQudG9nZ2xlQXR0cmlidXRlKCdkYXRhLXNiYi10aW1lLWlucHV0JywgdHJ1ZSk7XG4gICAgdGhpcy5faW5wdXRFbGVtZW50LnR5cGUgPSAndGV4dCc7XG4gICAgdGhpcy5faW5wdXRFbGVtZW50LmlucHV0TW9kZSA9ICdudW1lcmljJztcbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQubWF4TGVuZ3RoID0gNTtcbiAgICBpZiAoIXRoaXMuX2lucHV0RWxlbWVudC5wbGFjZWhvbGRlcikge1xuICAgICAgdGhpcy5faW5wdXRFbGVtZW50LnBsYWNlaG9sZGVyID0gJ0hIOk1NJztcbiAgICB9XG5cbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignaW5wdXQnLCAoZXZlbnQ6IEV2ZW50KSA9PiBmb3J3YXJkRXZlbnQoZXZlbnQsIHRoaXMpLCB7XG4gICAgICBzaWduYWw6IHRoaXMuX2Fib3J0Q29udHJvbGxlci5zaWduYWwsXG4gICAgfSk7XG4gICAgdGhpcy5faW5wdXRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAna2V5ZG93bicsXG4gICAgICAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHRoaXMuX3ByZXZlbnRDaGFySW5zZXJ0KGV2ZW50KSxcbiAgICAgIHsgc2lnbmFsOiB0aGlzLl9hYm9ydENvbnRyb2xsZXIuc2lnbmFsIH0sXG4gICAgKTtcbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdjaGFuZ2UnLFxuICAgICAgKGV2ZW50OiBFdmVudCkgPT4gdGhpcy5fdXBkYXRlVmFsdWUoKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZSksXG4gICAgICB7XG4gICAgICAgIHNpZ25hbDogdGhpcy5fYWJvcnRDb250cm9sbGVyLnNpZ25hbCxcbiAgICAgICAgY2FwdHVyZTogdHJ1ZSxcbiAgICAgIH0sXG4gICAgKTtcbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdjaGFuZ2UnLFxuICAgICAgKGV2ZW50OiBFdmVudCkgPT4ge1xuICAgICAgICB0aGlzLl9lbWl0Q2hhbmdlKGV2ZW50KTtcbiAgICAgICAgdGhpcy5fdXBkYXRlQWNjZXNzaWJpbGl0eU1lc3NhZ2UoKTtcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHNpZ25hbDogdGhpcy5fYWJvcnRDb250cm9sbGVyLnNpZ25hbCxcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIGB2YWx1ZWAgYW5kIGB2YWx1ZUFzRGF0ZWAuIFRoZSBkaXJlY3QgdXBkYXRlIG9uIHRoZSBgX2lucHV0RWxlbWVudGAgaXMgcmVxdWlyZWRcbiAgICogdG8gZm9yY2UgdGhlIGlucHV0IGNoYW5nZSB3aGVuIHRoZSB0eXBlZCB2YWx1ZSBpcyB0aGUgc2FtZSBvZiB0aGUgY3VycmVudCBvbmUuXG4gICAqL1xuICBwcml2YXRlIF91cGRhdGVWYWx1ZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgLy8gUmVzZXQgYWNjZXNzaWJpbGl0eSBtZXNzYWdlXG4gICAgaWYgKHRoaXMuX3N0YXR1c0NvbnRhaW5lcikge1xuICAgICAgdGhpcy5fc3RhdHVzQ29udGFpbmVyLmlubmVyVGV4dCA9ICcnO1xuICAgIH1cbiAgICBpZiAoIXRoaXMuX2lucHV0RWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHRpbWUgPSB0aGlzLl9wYXJzZUlucHV0KHZhbHVlKTtcbiAgICBjb25zdCBpc1RpbWVWYWxpZCA9ICEhdGltZSAmJiB0aGlzLl9pc1RpbWVWYWxpZCh0aW1lKTtcbiAgICBjb25zdCBpc0VtcHR5T3JWYWxpZCA9ICF2YWx1ZSB8fCB2YWx1ZS50cmltKCkgPT09ICcnIHx8IGlzVGltZVZhbGlkO1xuICAgIGlmIChpc0VtcHR5T3JWYWxpZCAmJiB0aW1lKSB7XG4gICAgICAvLyBJbiBvcmRlciB0byBzdXBwb3J0IFJlYWN0IG9uQ2hhbmdlIGV2ZW50LCB3ZSBoYXZlIHRvIGdldCB0aGUgc2V0dGVyIGFuZCBjYWxsIGl0LlxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlYWN0L2lzc3Vlcy8xMTYwMCNpc3N1ZWNvbW1lbnQtMzQ1ODEzMTMwXG4gICAgICBjb25zdCBzZXRWYWx1ZSA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSFRNTElucHV0RWxlbWVudC5wcm90b3R5cGUsICd2YWx1ZScpIS5zZXQhO1xuICAgICAgc2V0VmFsdWUuY2FsbCh0aGlzLl9pbnB1dEVsZW1lbnQsIHRoaXMuX2Zvcm1hdFZhbHVlKHRpbWUpKTtcblxuICAgICAgdGhpcy5faW5wdXRFbGVtZW50LmRpc3BhdGNoRXZlbnQobmV3IElucHV0RXZlbnQoJ2lucHV0JywgeyBidWJibGVzOiB0cnVlLCBjb21wb3NlZDogdHJ1ZSB9KSk7XG4gICAgfVxuXG4gICAgY29uc3Qgd2FzVmFsaWQgPSAhdGhpcy5faW5wdXRFbGVtZW50Lmhhc0F0dHJpYnV0ZSgnZGF0YS1zYmItaW52YWxpZCcpO1xuICAgIHRoaXMuX2lucHV0RWxlbWVudC50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtc2JiLWludmFsaWQnLCAhaXNFbXB0eU9yVmFsaWQpO1xuICAgIGlmICh3YXNWYWxpZCAhPT0gaXNFbXB0eU9yVmFsaWQpIHtcbiAgICAgIHRoaXMuX3ZhbGlkYXRpb25DaGFuZ2UuZW1pdCh7IHZhbGlkOiBpc0VtcHR5T3JWYWxpZCB9KTtcbiAgICB9XG4gIH1cblxuICAvKiogRW1pdHMgdGhlIGNoYW5nZSBldmVudC4gKi9cbiAgcHJpdmF0ZSBfZW1pdENoYW5nZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICBmb3J3YXJkRXZlbnQoZXZlbnQsIHRoaXMpO1xuICAgIHRoaXMuX2RpZENoYW5nZS5lbWl0KCk7XG4gIH1cblxuICAvKiogUmV0dXJucyB0aGUgcmlnaHQgZm9ybWF0IGZvciB0aGUgYHZhbHVlYCBwcm9wZXJ0eS4gKi9cbiAgcHJpdmF0ZSBfZm9ybWF0VmFsdWUodGltZTogVGltZSk6IHN0cmluZyB7XG4gICAgY29uc3QgaG91cnMgPSBTdHJpbmcodGltZS5ob3VycykucGFkU3RhcnQoMiwgJzAnKTtcbiAgICBjb25zdCBtaW51dGVzID0gU3RyaW5nKHRpbWUubWludXRlcykucGFkU3RhcnQoMiwgJzAnKTtcbiAgICByZXR1cm4gYCR7aG91cnN9OiR7bWludXRlc31gO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHJpZ2h0IGZvcm1hdCBmb3IgdGhlIGB2YWx1ZUFzRGF0ZWAgcHJvcGVydHk6XG4gICAqIHNldHMgdGhlIHN0YXJ0IGRhdGUgYXQgMDEuMDEuMTk3MCwgdGhlbiBhZGRzIHRoZSB0eXBlZCBob3Vycy9taW51dGVzLlxuICAgKi9cbiAgcHJpdmF0ZSBfZm9ybWF0VmFsdWVBc0RhdGUodGltZTogVGltZSB8IG51bGwgfCB1bmRlZmluZWQpOiBEYXRlIHwgbnVsbCB7XG4gICAgaWYgKCF0aW1lIHx8ICF0aGlzLl9pc1RpbWVWYWxpZCh0aW1lKSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBEYXRlKG5ldyBEYXRlKDApLnNldEhvdXJzKHRpbWUuaG91cnMsIHRpbWUubWludXRlcywgMCwgMCkpO1xuICB9XG5cbiAgLyoqIENoZWNrcyBpZiB2YWx1ZXMgb2YgaG91cnMgYW5kIG1pbnV0ZXMgYXJlIHBvc3NpYmxlLCB0byBhdm9pZCBub24tZXhpc3RlbnQgdGltZXMuICovXG4gIHByaXZhdGUgX2lzVGltZVZhbGlkKHRpbWU6IFRpbWUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGltZS5ob3VycyA8IDI0ICYmIHRpbWUubWludXRlcyA8IDYwO1xuICB9XG5cbiAgLyoqIFZhbGlkYXRlIGlucHV0IGFnYWluc3QgdGhlIGRlZmluZWQgUmVnRXhwcy4gKi9cbiAgcHJpdmF0ZSBfcGFyc2VJbnB1dCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKTogVGltZSB8IG51bGwge1xuICAgIGNvbnN0IHRyaW1tZWRWYWx1ZSA9IHZhbHVlPy50cmltKCk7XG4gICAgaWYgKCF0cmltbWVkVmFsdWUpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8vIFNwZWNpYWwgY2FzZTogdGhlIGlucHV0IGlzIDMgb3IgNCBkaWdpdHM7IHNwbGl0IGxpa2U6IEFCPzpDRFxuICAgIGNvbnN0IG1hdGNoID0gdHJpbW1lZFZhbHVlLm1hdGNoKFJFR0VYX0dST1VQU19XSVRIT1VUX0NPTE9OKTtcbiAgICBpZiAobWF0Y2gpIHtcbiAgICAgIHJldHVybiB7IGhvdXJzOiArbWF0Y2hbMV0gfHwgMCwgbWludXRlczogK21hdGNoWzJdIHx8IDAgfTtcbiAgICB9XG5cbiAgICBjb25zdCBtYXRjaENvbG9uID0gdHJpbW1lZFZhbHVlLm1hdGNoKFJFR0VYX0dST1VQU19XSVRIX0NPTE9OKTtcbiAgICBpZiAobWF0Y2hDb2xvbikge1xuICAgICAgcmV0dXJuIHsgaG91cnM6ICttYXRjaENvbG9uWzFdIHx8IDAsIG1pbnV0ZXM6ICttYXRjaENvbG9uWzJdIHx8IDAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKiAgT25seSBhbGxvdyB0eXBpbmcgbnVtYmVycyBhbmQgc2VwYXJhdG9yIGtleXMuICovXG4gIHByaXZhdGUgX3ByZXZlbnRDaGFySW5zZXJ0KGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgYWx3YXlzQWxsb3dlZCA9IFtcbiAgICAgICdCYWNrc3BhY2UnLFxuICAgICAgJ1RhYicsXG4gICAgICAnRW50ZXInLFxuICAgICAgJ0Fycm93VXAnLFxuICAgICAgJ0Fycm93RG93bicsXG4gICAgICAnQXJyb3dMZWZ0JyxcbiAgICAgICdBcnJvd1JpZ2h0JyxcbiAgICAgICdIb21lJyxcbiAgICAgICdFbmQnLFxuICAgICAgJ1BhZ2VVcCcsXG4gICAgICAnUGFnZURvd24nLFxuICAgICAgJ0RlbGV0ZScsXG4gICAgXTtcblxuICAgIGlmIChcbiAgICAgICFldmVudC5jdHJsS2V5ICYmXG4gICAgICAhZXZlbnQuYWx0S2V5ICYmXG4gICAgICAhZXZlbnQubWV0YUtleSAmJlxuICAgICAgIWFsd2F5c0FsbG93ZWQuaW5jbHVkZXMoZXZlbnQua2V5KSAmJlxuICAgICAgIVJFR0VYX0FMTE9XRURfQ0hBUkFDVEVSUy50ZXN0KGV2ZW50LmtleSlcbiAgICApIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgLy8gV2UgdXNlIGEgcHJvZ3JhbW1hdGljIGFwcHJvYWNoIHRvIGF2b2lkIGluaXRpYWwgc2V0dGluZyB0aGUgbWVzc2FnZVxuICAvLyBhbmQgdG8gbm90IGltbWVkaWF0ZWx5IGNoYW5nZSBvdXRwdXQgaWYgbGFuZ3VhZ2Ugc2hvdWxkIGNoYW5nZSAobm8gcmVhc29uIHRvIHJlYWQgb3V0IG1lc3NhZ2UpLlxuICBwcml2YXRlIF91cGRhdGVBY2Nlc3NpYmlsaXR5TWVzc2FnZSgpOiB2b2lkIHtcbiAgICBjb25zdCB2YWxpZCA9ICF0aGlzLl9pbnB1dEVsZW1lbnQhLmhhc0F0dHJpYnV0ZSgnZGF0YS1zYmItaW52YWxpZCcpO1xuICAgIGlmICghdmFsaWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9zdGF0dXNDb250YWluZXIuaW5uZXJUZXh0ID0gYCR7aTE4blRpbWVJbnB1dENoYW5nZVt0aGlzLl9sYW5ndWFnZS5jdXJyZW50XX0gJHtcbiAgICAgIHRoaXMuX2lucHV0RWxlbWVudD8udmFsdWVcbiAgICB9LmA7XG4gIH1cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVuZGVyKCk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICByZXR1cm4gaHRtbGBcbiAgICAgIDxwXG4gICAgICAgIHJvbGU9XCJzdGF0dXNcIlxuICAgICAgICAke3JlZigoZWw/OiBFbGVtZW50KSA9PiAodGhpcy5fc3RhdHVzQ29udGFpbmVyID0gZWwgYXMgSFRNTFBhcmFncmFwaEVsZW1lbnQpKX1cbiAgICAgID48L3A+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRpbWUtaW5wdXQnOiBTYmJUaW1lSW5wdXRFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOlsiU2JiVGltZUlucHV0RWxlbWVudCIsIl9hIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFhQSxNQUFNLDJCQUEyQjtBQUNqQyxNQUFNLDZCQUE2QjtBQUNuQyxNQUFNLDBCQUEwQjtJQWUxQix1QkFBbUIsTUFBQTs7MEJBRHhCLGNBQWMsZ0JBQWdCLENBQUM7Ozs7b0JBQ0U7Ozs7Ozs7QUFBUkEsTUFBQUEsd0JBQUEsbUJBQVEsWUFBVTtBQUFBOztBQWtCakM7QUFGRCxXQUFBLFVBaEJKLGtCQUFBLE1BQUEsMEJBQUEsR0FnQjBDO0FBRXBCLHlCQUFBLGlDQUFBLGtCQUFBLE1BQUEsNkJBQXlDLElBQUk7QUEwQnJELFdBQUEsY0FBQSxrQkFBQSxNQUFBLGdDQUFBLEdBQWlCLElBQUksYUFBYSxNQUFNQSxxQkFBb0IsT0FBTyxXQUFXO0FBQUEsUUFDOUYsU0FBUztBQUFBLFFBQ1QsWUFBWTtBQUFBLE1BQUEsQ0FDYjtBQUdPLFdBQWlCLG9CQUEyQyxJQUFJLGFBQ3RFLE1BQ0FBLHFCQUFvQixPQUFPLGtCQUMzQjtBQUFBLFFBQ0UsU0FBUztBQUFBLFFBQ1QsVUFBVTtBQUFBLE1BQUEsQ0FDWDtBQUlLLFdBQUEsbUJBQW1CLElBQUksZ0JBQWU7QUFDdEMsV0FBQSxZQUFZLElBQUksc0JBQXNCLElBQUk7QUFBQSxJQUFBO0FBQUE7QUFBQSxJQXBEbEQsSUFBVyxNQUFNLE9BQWtDO0FBQ2pELFdBQUssU0FBUztBQUNkLFdBQUssbUJB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
|
|
276
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS1pbnB1dC5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2VsZW1lbnRzL3RpbWUtaW5wdXQvdGltZS1pbnB1dC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIENTU1Jlc3VsdEdyb3VwLFxuICBodG1sLFxuICBpc1NlcnZlcixcbiAgTGl0RWxlbWVudCxcbiAgdHlwZSBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICB0eXBlIFRlbXBsYXRlUmVzdWx0LFxufSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHksIHN0YXRlIH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgcmVmIH0gZnJvbSAnbGl0L2RpcmVjdGl2ZXMvcmVmLmpzJztcblxuaW1wb3J0IHsgU2JiSWRSZWZlcmVuY2VDb250cm9sbGVyLCBTYmJMYW5ndWFnZUNvbnRyb2xsZXIgfSBmcm9tICcuLi9jb3JlL2NvbnRyb2xsZXJzLmpzJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgZm9yd2FyZEV2ZW50IH0gZnJvbSAnLi4vY29yZS9ldmVudGluZy5qcyc7XG5pbXBvcnQgeyBpMThuVGltZUlucHV0Q2hhbmdlIH0gZnJvbSAnLi4vY29yZS9pMThuLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiRGF0ZUxpa2UsIFNiYlZhbGlkYXRpb25DaGFuZ2VFdmVudCB9IGZyb20gJy4uL2NvcmUvaW50ZXJmYWNlcy5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3RpbWUtaW5wdXQuc2Nzcz9saXQmaW5saW5lJztcblxuY29uc3QgUkVHRVhfQUxMT1dFRF9DSEFSQUNURVJTID0gL1swLTkuOixcXC07X2hIXS87XG5jb25zdCBSRUdFWF9HUk9VUFNfV0lUSE9VVF9DT0xPTiA9IC9eKFswLTldezEsMn0pKFswLTldezJ9KSQvO1xuY29uc3QgUkVHRVhfR1JPVVBTX1dJVEhfQ09MT04gPSAvXihbMC05XXsxLDJ9KT9bLjosXFwtO19oSF0/KFswLTldezEsMn0pPyQvO1xuXG5pbnRlcmZhY2UgVGltZSB7XG4gIGhvdXJzOiBudW1iZXI7XG4gIG1pbnV0ZXM6IG51bWJlcjtcbn1cblxuLyoqXG4gKiAqIENvbWJpbmVkIHdpdGggYSBuYXRpdmUgaW5wdXQsIGl0IGRpc3BsYXlzIHRoZSBpbnB1dCdzIHZhbHVlIGFzIGEgZm9ybWF0dGVkIHRpbWUuXG4gKlxuICogQGV2ZW50IHtDdXN0b21FdmVudDx2b2lkPn0gZGlkQ2hhbmdlIC0gRGVwcmVjYXRlZC4gdXNlZCBmb3IgUmVhY3QuIFdpbGwgcHJvYmFibHkgYmUgcmVtb3ZlZCBvbmNlIFJlYWN0IDE5IGlzIGF2YWlsYWJsZS5cbiAqIEBldmVudCB7Q3VzdG9tRXZlbnQ8U2JiVmFsaWRhdGlvbkNoYW5nZUV2ZW50Pn0gdmFsaWRhdGlvbkNoYW5nZSAtIEVtaXRzIHdoZW5ldmVyIHRoZSBpbnRlcm5hbCB2YWxpZGF0aW9uIHN0YXRlIGNoYW5nZXMuXG4gKi9cbmV4cG9ydFxuQGN1c3RvbUVsZW1lbnQoJ3NiYi10aW1lLWlucHV0JylcbmNsYXNzIFNiYlRpbWVJbnB1dEVsZW1lbnQgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZXZlbnRzID0ge1xuICAgIGRpZENoYW5nZTogJ2RpZENoYW5nZScsXG4gICAgdmFsaWRhdGlvbkNoYW5nZTogJ3ZhbGlkYXRpb25DaGFuZ2UnLFxuICB9IGFzIGNvbnN0O1xuXG4gIC8vIFRPRE86IFJlcGxhY2UgSFRNTEVsZW1lbnQgYnkgSFRNTElucHV0RWxlbWVudFxuICAvKiogUmVmZXJlbmNlIG9mIHRoZSBuYXRpdmUgaW5wdXQgY29ubmVjdGVkIHRvIHRoZSBkYXRlcGlja2VyLiAqL1xuICBAcHJvcGVydHkoKVxuICBwdWJsaWMgYWNjZXNzb3IgaW5wdXQ6IHN0cmluZyB8IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgQHN0YXRlKCkgcHJpdmF0ZSBhY2Nlc3NvciBfaW5wdXRFbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIEZvcm1hdHMgdGhlIGN1cnJlbnQgaW5wdXQncyB2YWx1ZSBhcyBkYXRlLiAqL1xuICBAcHJvcGVydHkoeyBhdHRyaWJ1dGU6IGZhbHNlIH0pXG4gIHB1YmxpYyBzZXQgdmFsdWVBc0RhdGUoZGF0ZTogU2JiRGF0ZUxpa2UgfCBudWxsKSB7XG4gICAgaWYgKCFkYXRlIHx8ICF0aGlzLl9pbnB1dEVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgZGF0ZU9iaiA9IGRhdGUgaW5zdGFuY2VvZiBEYXRlID8gZGF0ZSA6IG5ldyBEYXRlKGRhdGUpO1xuXG4gICAgdGhpcy5faW5wdXRFbGVtZW50LnZhbHVlID0gdGhpcy5fZm9ybWF0VmFsdWUoe1xuICAgICAgaG91cnM6IGRhdGVPYmouZ2V0SG91cnMoKSxcbiAgICAgIG1pbnV0ZXM6IGRhdGVPYmouZ2V0TWludXRlcygpLFxuICAgIH0pO1xuXG4gICAgLy8gRW1pdCBibHVyIGV2ZW50IHdoZW4gdmFsdWUgaXMgY2hhbmdlZCBwcm9ncmFtbWF0aWNhbGx5IHRvIG5vdGlmeVxuICAgIC8vIGZyYW1ld29ya3MgdGhhdCByZWx5IG9uIHRoYXQgZXZlbnQgdG8gdXBkYXRlIGZvcm0gc3RhdHVzLlxuICAgIHRoaXMuX2lucHV0RWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBGb2N1c0V2ZW50KCdibHVyJywgeyBjb21wb3NlZDogdHJ1ZSB9KSk7XG4gIH1cbiAgcHVibGljIGdldCB2YWx1ZUFzRGF0ZSgpOiBEYXRlIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2Zvcm1hdFZhbHVlQXNEYXRlKHRoaXMuX3BhcnNlSW5wdXQodGhpcy5faW5wdXRFbGVtZW50Py52YWx1ZSkpID8/IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgb25seSB1c2VkIGZvciBSZWFjdC4gV2lsbCBwcm9iYWJseSBiZSByZW1vdmVkIG9uY2UgUmVhY3QgMTkgaXMgYXZhaWxhYmxlLlxuICAgKi9cbiAgcHJpdmF0ZSBfZGlkQ2hhbmdlOiBFdmVudEVtaXR0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKHRoaXMsIFNiYlRpbWVJbnB1dEVsZW1lbnQuZXZlbnRzLmRpZENoYW5nZSwge1xuICAgIGJ1YmJsZXM6IHRydWUsXG4gICAgY2FuY2VsYWJsZTogdHJ1ZSxcbiAgfSk7XG5cbiAgLyoqIEVtaXRzIHdoZW5ldmVyIHRoZSBpbnRlcm5hbCB2YWxpZGF0aW9uIHN0YXRlIGNoYW5nZXMuICovXG4gIHByaXZhdGUgX3ZhbGlkYXRpb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxTYmJWYWxpZGF0aW9uQ2hhbmdlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcihcbiAgICB0aGlzLFxuICAgIFNiYlRpbWVJbnB1dEVsZW1lbnQuZXZlbnRzLnZhbGlkYXRpb25DaGFuZ2UsXG4gICAge1xuICAgICAgYnViYmxlczogdHJ1ZSxcbiAgICAgIGNvbXBvc2VkOiBmYWxzZSxcbiAgICB9LFxuICApO1xuXG4gIHByaXZhdGUgX3N0YXR1c0NvbnRhaW5lciE6IEhUTUxQYXJhZ3JhcGhFbGVtZW50O1xuICBwcml2YXRlIF9pbnB1dEFib3J0Q29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKTtcbiAgcHJpdmF0ZSBfaW5wdXRJZFJlZmVyZW5jZUNvbnRyb2xsZXIgPSBuZXcgU2JiSWRSZWZlcmVuY2VDb250cm9sbGVyKHRoaXMsICdpbnB1dCcpO1xuICBwcml2YXRlIF9sYW5ndWFnZSA9IG5ldyBTYmJMYW5ndWFnZUNvbnRyb2xsZXIodGhpcyk7XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG5cbiAgICB0aGlzLl9jb25maWd1cmVJbnB1dEVsZW1lbnQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBkaXNjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5kaXNjb25uZWN0ZWRDYWxsYmFjaygpO1xuICAgIHRoaXMuX2lucHV0QWJvcnRDb250cm9sbGVyPy5hYm9ydCgpO1xuICAgIHRoaXMuX2lucHV0RWxlbWVudCA9IG51bGw7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgcmVxdWVzdFVwZGF0ZShcbiAgICBuYW1lPzogUHJvcGVydHlLZXksXG4gICAgb2xkVmFsdWU/OiB1bmtub3duLFxuICAgIG9wdGlvbnM/OiBQcm9wZXJ0eURlY2xhcmF0aW9uLFxuICApOiB2b2lkIHtcbiAgICBzdXBlci5yZXF1ZXN0VXBkYXRlKG5hbWUsIG9sZFZhbHVlLCBvcHRpb25zKTtcblxuICAgIGlmICghaXNTZXJ2ZXIgJiYgKCFuYW1lIHx8IG5hbWUgPT09ICdpbnB1dCcpICYmIHRoaXMuaGFzVXBkYXRlZCkge1xuICAgICAgdGhpcy5fY29uZmlndXJlSW5wdXRFbGVtZW50KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfY29uZmlndXJlSW5wdXRFbGVtZW50KCk6IHZvaWQge1xuICAgIGNvbnN0IGlucHV0RWxlbWVudCA9XG4gICAgICB0aGlzLmlucHV0IGluc3RhbmNlb2YgSFRNTElucHV0RWxlbWVudFxuICAgICAgICA/IHRoaXMuaW5wdXRcbiAgICAgICAgOiAoKHRoaXMuX2lucHV0SWRSZWZlcmVuY2VDb250cm9sbGVyLmZpbmQoKSBhcyBIVE1MSW5wdXRFbGVtZW50IHwgbnVsbCkgPz9cbiAgICAgICAgICB0aGlzLmNsb3Nlc3Q/Lignc2JiLWZvcm0tZmllbGQnKT8ucXVlcnlTZWxlY3RvcjxIVE1MSW5wdXRFbGVtZW50PignaW5wdXQnKSA/P1xuICAgICAgICAgIG51bGwpO1xuXG4gICAgaWYgKGlucHV0RWxlbWVudCA9PT0gdGhpcy5faW5wdXRFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5faW5wdXRBYm9ydENvbnRyb2xsZXI/LmFib3J0KCk7XG4gICAgdGhpcy5faW5wdXRFbGVtZW50Py5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtc2JiLXRpbWUtaW5wdXQnKTtcbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQgPSBpbnB1dEVsZW1lbnQ7XG5cbiAgICBpZiAoIXRoaXMuX2lucHV0RWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3VwZGF0ZVZhbHVlKHRoaXMuX2lucHV0RWxlbWVudC52YWx1ZSk7XG4gICAgdGhpcy5faW5wdXRBYm9ydENvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG5cbiAgICAvLyBDb25maWd1cmUgaW5wdXRcbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQudG9nZ2xlQXR0cmlidXRlKCdkYXRhLXNiYi10aW1lLWlucHV0JywgdHJ1ZSk7XG4gICAgdGhpcy5faW5wdXRFbGVtZW50LnR5cGUgPSAndGV4dCc7XG4gICAgdGhpcy5faW5wdXRFbGVtZW50LmlucHV0TW9kZSA9ICdudW1lcmljJztcbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQubWF4TGVuZ3RoID0gNTtcbiAgICBpZiAoIXRoaXMuX2lucHV0RWxlbWVudC5wbGFjZWhvbGRlcikge1xuICAgICAgdGhpcy5faW5wdXRFbGVtZW50LnBsYWNlaG9sZGVyID0gJ0hIOk1NJztcbiAgICB9XG5cbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignaW5wdXQnLCAoZXZlbnQ6IEV2ZW50KSA9PiBmb3J3YXJkRXZlbnQoZXZlbnQsIHRoaXMpLCB7XG4gICAgICBzaWduYWw6IHRoaXMuX2lucHV0QWJvcnRDb250cm9sbGVyLnNpZ25hbCxcbiAgICB9KTtcbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdrZXlkb3duJyxcbiAgICAgIChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4gdGhpcy5fcHJldmVudENoYXJJbnNlcnQoZXZlbnQpLFxuICAgICAgeyBzaWduYWw6IHRoaXMuX2lucHV0QWJvcnRDb250cm9sbGVyLnNpZ25hbCB9LFxuICAgICk7XG4gICAgdGhpcy5faW5wdXRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAnY2hhbmdlJyxcbiAgICAgIChldmVudDogRXZlbnQpID0+IHRoaXMuX3VwZGF0ZVZhbHVlKChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWUpLFxuICAgICAge1xuICAgICAgICBzaWduYWw6IHRoaXMuX2lucHV0QWJvcnRDb250cm9sbGVyLnNpZ25hbCxcbiAgICAgICAgY2FwdHVyZTogdHJ1ZSxcbiAgICAgIH0sXG4gICAgKTtcbiAgICB0aGlzLl9pbnB1dEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdjaGFuZ2UnLFxuICAgICAgKGV2ZW50OiBFdmVudCkgPT4ge1xuICAgICAgICB0aGlzLl9lbWl0Q2hhbmdlKGV2ZW50KTtcbiAgICAgICAgdGhpcy5fdXBkYXRlQWNjZXNzaWJpbGl0eU1lc3NhZ2UoKTtcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIHNpZ25hbDogdGhpcy5faW5wdXRBYm9ydENvbnRyb2xsZXIuc2lnbmFsLFxuICAgICAgfSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgYHZhbHVlYCBhbmQgYHZhbHVlQXNEYXRlYC4gVGhlIGRpcmVjdCB1cGRhdGUgb24gdGhlIGBfaW5wdXRFbGVtZW50YCBpcyByZXF1aXJlZFxuICAgKiB0byBmb3JjZSB0aGUgaW5wdXQgY2hhbmdlIHdoZW4gdGhlIHR5cGVkIHZhbHVlIGlzIHRoZSBzYW1lIG9mIHRoZSBjdXJyZW50IG9uZS5cbiAgICovXG4gIHByaXZhdGUgX3VwZGF0ZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAvLyBSZXNldCBhY2Nlc3NpYmlsaXR5IG1lc3NhZ2VcbiAgICBpZiAodGhpcy5fc3RhdHVzQ29udGFpbmVyKSB7XG4gICAgICB0aGlzLl9zdGF0dXNDb250YWluZXIuaW5uZXJUZXh0ID0gJyc7XG4gICAgfVxuICAgIGlmICghdGhpcy5faW5wdXRFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdGltZSA9IHRoaXMuX3BhcnNlSW5wdXQodmFsdWUpO1xuICAgIGNvbnN0IGlzVGltZVZhbGlkID0gISF0aW1lICYmIHRoaXMuX2lzVGltZVZhbGlkKHRpbWUpO1xuICAgIGNvbnN0IGlzRW1wdHlPclZhbGlkID0gIXZhbHVlIHx8IHZhbHVlLnRyaW0oKSA9PT0gJycgfHwgaXNUaW1lVmFsaWQ7XG4gICAgaWYgKGlzRW1wdHlPclZhbGlkICYmIHRpbWUpIHtcbiAgICAgIC8vIEluIG9yZGVyIHRvIHN1cHBvcnQgUmVhY3Qgb25DaGFuZ2UgZXZlbnQsIHdlIGhhdmUgdG8gZ2V0IHRoZSBzZXR0ZXIgYW5kIGNhbGwgaXQuXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvaXNzdWVzLzExNjAwI2lzc3VlY29tbWVudC0zNDU4MTMxMzBcbiAgICAgIGNvbnN0IHNldFZhbHVlID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihIVE1MSW5wdXRFbGVtZW50LnByb3RvdHlwZSwgJ3ZhbHVlJykhLnNldCE7XG4gICAgICBzZXRWYWx1ZS5jYWxsKHRoaXMuX2lucHV0RWxlbWVudCwgdGhpcy5fZm9ybWF0VmFsdWUodGltZSkpO1xuXG4gICAgICB0aGlzLl9pbnB1dEVsZW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgSW5wdXRFdmVudCgnaW5wdXQnLCB7IGJ1YmJsZXM6IHRydWUsIGNvbXBvc2VkOiB0cnVlIH0pKTtcbiAgICB9XG5cbiAgICBjb25zdCB3YXNWYWxpZCA9ICF0aGlzLl9pbnB1dEVsZW1lbnQuaGFzQXR0cmlidXRlKCdkYXRhLXNiYi1pbnZhbGlkJyk7XG4gICAgdGhpcy5faW5wdXRFbGVtZW50LnRvZ2dsZUF0dHJpYnV0ZSgnZGF0YS1zYmItaW52YWxpZCcsICFpc0VtcHR5T3JWYWxpZCk7XG4gICAgaWYgKHdhc1ZhbGlkICE9PSBpc0VtcHR5T3JWYWxpZCkge1xuICAgICAgdGhpcy5fdmFsaWRhdGlvbkNoYW5nZS5lbWl0KHsgdmFsaWQ6IGlzRW1wdHlPclZhbGlkIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBFbWl0cyB0aGUgY2hhbmdlIGV2ZW50LiAqL1xuICBwcml2YXRlIF9lbWl0Q2hhbmdlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGZvcndhcmRFdmVudChldmVudCwgdGhpcyk7XG4gICAgdGhpcy5fZGlkQ2hhbmdlLmVtaXQoKTtcbiAgfVxuXG4gIC8qKiBSZXR1cm5zIHRoZSByaWdodCBmb3JtYXQgZm9yIHRoZSBgdmFsdWVgIHByb3BlcnR5LiAqL1xuICBwcml2YXRlIF9mb3JtYXRWYWx1ZSh0aW1lOiBUaW1lKTogc3RyaW5nIHtcbiAgICBjb25zdCBob3VycyA9IFN0cmluZyh0aW1lLmhvdXJzKS5wYWRTdGFydCgyLCAnMCcpO1xuICAgIGNvbnN0IG1pbnV0ZXMgPSBTdHJpbmcodGltZS5taW51dGVzKS5wYWRTdGFydCgyLCAnMCcpO1xuICAgIHJldHVybiBgJHtob3Vyc306JHttaW51dGVzfWA7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgcmlnaHQgZm9ybWF0IGZvciB0aGUgYHZhbHVlQXNEYXRlYCBwcm9wZXJ0eTpcbiAgICogc2V0cyB0aGUgc3RhcnQgZGF0ZSBhdCAwMS4wMS4xOTcwLCB0aGVuIGFkZHMgdGhlIHR5cGVkIGhvdXJzL21pbnV0ZXMuXG4gICAqL1xuICBwcml2YXRlIF9mb3JtYXRWYWx1ZUFzRGF0ZSh0aW1lOiBUaW1lIHwgbnVsbCB8IHVuZGVmaW5lZCk6IERhdGUgfCBudWxsIHtcbiAgICBpZiAoIXRpbWUgfHwgIXRoaXMuX2lzVGltZVZhbGlkKHRpbWUpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IERhdGUobmV3IERhdGUoMCkuc2V0SG91cnModGltZS5ob3VycywgdGltZS5taW51dGVzLCAwLCAwKSk7XG4gIH1cblxuICAvKiogQ2hlY2tzIGlmIHZhbHVlcyBvZiBob3VycyBhbmQgbWludXRlcyBhcmUgcG9zc2libGUsIHRvIGF2b2lkIG5vbi1leGlzdGVudCB0aW1lcy4gKi9cbiAgcHJpdmF0ZSBfaXNUaW1lVmFsaWQodGltZTogVGltZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aW1lLmhvdXJzIDwgMjQgJiYgdGltZS5taW51dGVzIDwgNjA7XG4gIH1cblxuICAvKiogVmFsaWRhdGUgaW5wdXQgYWdhaW5zdCB0aGUgZGVmaW5lZCBSZWdFeHBzLiAqL1xuICBwcml2YXRlIF9wYXJzZUlucHV0KHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBUaW1lIHwgbnVsbCB7XG4gICAgY29uc3QgdHJpbW1lZFZhbHVlID0gdmFsdWU/LnRyaW0oKTtcbiAgICBpZiAoIXRyaW1tZWRWYWx1ZSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLy8gU3BlY2lhbCBjYXNlOiB0aGUgaW5wdXQgaXMgMyBvciA0IGRpZ2l0czsgc3BsaXQgbGlrZTogQUI/OkNEXG4gICAgY29uc3QgbWF0Y2ggPSB0cmltbWVkVmFsdWUubWF0Y2goUkVHRVhfR1JPVVBTX1dJVEhPVVRfQ09MT04pO1xuICAgIGlmIChtYXRjaCkge1xuICAgICAgcmV0dXJuIHsgaG91cnM6ICttYXRjaFsxXSB8fCAwLCBtaW51dGVzOiArbWF0Y2hbMl0gfHwgMCB9O1xuICAgIH1cblxuICAgIGNvbnN0IG1hdGNoQ29sb24gPSB0cmltbWVkVmFsdWUubWF0Y2goUkVHRVhfR1JPVVBTX1dJVEhfQ09MT04pO1xuICAgIGlmIChtYXRjaENvbG9uKSB7XG4gICAgICByZXR1cm4geyBob3VyczogK21hdGNoQ29sb25bMV0gfHwgMCwgbWludXRlczogK21hdGNoQ29sb25bMl0gfHwgMCB9O1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqICBPbmx5IGFsbG93IHR5cGluZyBudW1iZXJzIGFuZCBzZXBhcmF0b3Iga2V5cy4gKi9cbiAgcHJpdmF0ZSBfcHJldmVudENoYXJJbnNlcnQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBhbHdheXNBbGxvd2VkID0gW1xuICAgICAgJ0JhY2tzcGFjZScsXG4gICAgICAnVGFiJyxcbiAgICAgICdFbnRlcicsXG4gICAgICAnQXJyb3dVcCcsXG4gICAgICAnQXJyb3dEb3duJyxcbiAgICAgICdBcnJvd0xlZnQnLFxuICAgICAgJ0Fycm93UmlnaHQnLFxuICAgICAgJ0hvbWUnLFxuICAgICAgJ0VuZCcsXG4gICAgICAnUGFnZVVwJyxcbiAgICAgICdQYWdlRG93bicsXG4gICAgICAnRGVsZXRlJyxcbiAgICBdO1xuXG4gICAgaWYgKFxuICAgICAgIWV2ZW50LmN0cmxLZXkgJiZcbiAgICAgICFldmVudC5hbHRLZXkgJiZcbiAgICAgICFldmVudC5tZXRhS2V5ICYmXG4gICAgICAhYWx3YXlzQWxsb3dlZC5pbmNsdWRlcyhldmVudC5rZXkpICYmXG4gICAgICAhUkVHRVhfQUxMT1dFRF9DSEFSQUNURVJTLnRlc3QoZXZlbnQua2V5KVxuICAgICkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gIH1cblxuICAvLyBXZSB1c2UgYSBwcm9ncmFtbWF0aWMgYXBwcm9hY2ggdG8gYXZvaWQgaW5pdGlhbCBzZXR0aW5nIHRoZSBtZXNzYWdlXG4gIC8vIGFuZCB0byBub3QgaW1tZWRpYXRlbHkgY2hhbmdlIG91dHB1dCBpZiBsYW5ndWFnZSBzaG91bGQgY2hhbmdlIChubyByZWFzb24gdG8gcmVhZCBvdXQgbWVzc2FnZSkuXG4gIHByaXZhdGUgX3VwZGF0ZUFjY2Vzc2liaWxpdHlNZXNzYWdlKCk6IHZvaWQge1xuICAgIGNvbnN0IHZhbGlkID0gIXRoaXMuX2lucHV0RWxlbWVudCEuaGFzQXR0cmlidXRlKCdkYXRhLXNiYi1pbnZhbGlkJyk7XG4gICAgaWYgKCF2YWxpZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX3N0YXR1c0NvbnRhaW5lci5pbm5lclRleHQgPSBgJHtpMThuVGltZUlucHV0Q2hhbmdlW3RoaXMuX2xhbmd1YWdlLmN1cnJlbnRdfSAke1xuICAgICAgdGhpcy5faW5wdXRFbGVtZW50Py52YWx1ZVxuICAgIH0uYDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHBcbiAgICAgICAgcm9sZT1cInN0YXR1c1wiXG4gICAgICAgICR7cmVmKChlbD86IEVsZW1lbnQpID0+ICh0aGlzLl9zdGF0dXNDb250YWluZXIgPSBlbCBhcyBIVE1MUGFyYWdyYXBoRWxlbWVudCkpfVxuICAgICAgPjwvcD5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItdGltZS1pbnB1dCc6IFNiYlRpbWVJbnB1dEVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJTYmJUaW1lSW5wdXRFbGVtZW50IiwiX2EiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBa0JBLE1BQU0sMkJBQTJCO0FBQ2pDLE1BQU0sNkJBQTZCO0FBQ25DLE1BQU0sMEJBQTBCO0lBZTFCLHVCQUFtQixNQUFBOzswQkFEeEIsY0FBYyxnQkFBZ0IsQ0FBQzs7OztvQkFDRTs7Ozs7Ozs7O0FBQVJBLE1BQUFBLHdCQUFBLG1CQUFRLFlBQVU7QUFBQTs7QUFVMUM7QUFFUztBQVpMLHlCQUFBLDBCQUFBLGtCQUFBLE1BQUEsMEJBQUEsR0FVaUQsa0JBQUEsTUFBQSxxQkFBQSxJQUFJO0FBRS9CLHlCQUFBLGtDQUFBLGtCQUFBLE1BQUEsd0JBQUEsR0FBQSxrQkFBQSxNQUFBLDZCQUF5QyxJQUFJO0FBMEJyRCxXQUFBLGNBQUEsa0JB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
|
|
@@ -31,7 +31,6 @@ export declare class SbbDialogTitleElement extends SbbDialogTitleElement_base {
|
|
|
31
31
|
private _backClick;
|
|
32
32
|
private _language;
|
|
33
33
|
constructor();
|
|
34
|
-
connectedCallback(): void;
|
|
35
34
|
protected willUpdate(changedProperties: PropertyValues<this>): void;
|
|
36
35
|
protected render(): TemplateResult;
|
|
37
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog-title.d.ts","sourceRoot":"","sources":["../../../../src/elements/dialog/dialog-title/dialog-title.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAQ1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,oCAAoC,CAAC;;AAE5C;;;;GAIG;AACH,qBAEM,qBAAsB,SAAQ,0BAA8B;IAChE,OAAuB,MAAM,EAAE,cAAc,CAAgC;IAC7E,gBAAuB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAE1C;IAEX;;OAEG;IACH,SAEgB,UAAU,EAAE,OAAO,CAAS;IAE5C;;OAEG;IACH,SAEgB,uBAAuB,EAAE,MAAM,CAAM;IAErD;;OAEG;IACH,SAEgB,sBAAsB,EAAE,MAAM,CAAM;IAEpD;;OAEG;IACH,IACW,YAAY,CAAC,KAAK,EAAE,EAAE,GAAG,UAAU,GAAG,OAAO,EAEvD;IACD,IAAW,YAAY,IAAI,UAAU,GAAG,OAAO,CAE9C;IACD,OAAO,CAAC,aAAa,CAA+B;IAEpD,OAAO,CAAC,UAAU,CAGhB;IACF,OAAO,CAAC,SAAS,CAAmC;;
|
|
1
|
+
{"version":3,"file":"dialog-title.d.ts","sourceRoot":"","sources":["../../../../src/elements/dialog/dialog-title/dialog-title.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAQ1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,oCAAoC,CAAC;;AAE5C;;;;GAIG;AACH,qBAEM,qBAAsB,SAAQ,0BAA8B;IAChE,OAAuB,MAAM,EAAE,cAAc,CAAgC;IAC7E,gBAAuB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAE1C;IAEX;;OAEG;IACH,SAEgB,UAAU,EAAE,OAAO,CAAS;IAE5C;;OAEG;IACH,SAEgB,uBAAuB,EAAE,MAAM,CAAM;IAErD;;OAEG;IACH,SAEgB,sBAAsB,EAAE,MAAM,CAAM;IAEpD;;OAEG;IACH,IACW,YAAY,CAAC,KAAK,EAAE,EAAE,GAAG,UAAU,GAAG,OAAO,EAEvD;IACD,IAAW,YAAY,IAAI,UAAU,GAAG,OAAO,CAE9C;IACD,OAAO,CAAC,aAAa,CAA+B;IAEpD,OAAO,CAAC,UAAU,CAGhB;IACF,OAAO,CAAC,SAAS,CAAmC;;cASjC,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;cAQzD,MAAM,IAAI,cAAc;CAmC5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,kBAAkB,EAAE,qBAAqB,CAAC;KAC3C;CACF"}
|
package/dialog/dialog-title.js
CHANGED
|
@@ -2,11 +2,11 @@ var D = (t) => {
|
|
|
2
2
|
throw TypeError(t);
|
|
3
3
|
};
|
|
4
4
|
var I = (t, s, i) => s.has(t) || D("Cannot " + i);
|
|
5
|
-
var
|
|
6
|
-
import { __esDecorate as
|
|
5
|
+
var u = (t, s, i) => (I(t, s, "read from private field"), i ? i.call(t) : s.get(t)), g = (t, s, i) => s.has(t) ? D("Cannot add the same private member more than once") : s instanceof WeakSet ? s.add(t) : s.set(t, i), c = (t, s, i, o) => (I(t, s, "write to private field"), o ? o.call(t, i) : s.set(t, i), i);
|
|
6
|
+
import { __esDecorate as v, __runInitializers as b } from "tslib";
|
|
7
7
|
import { css as A, nothing as G } from "lit";
|
|
8
8
|
import { customElement as M, property as m } from "lit/decorators.js";
|
|
9
|
-
import { unsafeStatic as _, html as
|
|
9
|
+
import { unsafeStatic as _, html as k } from "lit/static-html.js";
|
|
10
10
|
import { SbbFocusVisibleWithinController as N } from "../core/a11y.js";
|
|
11
11
|
import { SbbLanguageController as U } from "../core/controllers.js";
|
|
12
12
|
import { forceType as p } from "../core/decorators.js";
|
|
@@ -19,20 +19,20 @@ import "../button/transparent-button.js";
|
|
|
19
19
|
const Y = A`:host{--sbb-dialog-title-padding-block: var(--sbb-spacing-responsive-s) 0;display:contents}:host([negative]){--sbb-title-text-color-normal: var(--sbb-color-milk)}:host([data-overflows]){--sbb-dialog-title-padding-block: var(--sbb-spacing-responsive-s)}.sbb-title{flex:1;overflow:hidden;align-self:center;-webkit-hyphens:auto;hyphens:auto;margin:0}.sbb-dialog__header{display:flex;gap:var(--sbb-spacing-fixed-6x);align-items:start;justify-content:space-between;padding-inline:var(--sbb-dialog-padding-inline);padding-block:var(--sbb-dialog-title-padding-block);background-color:var(--sbb-dialog-background-color);border-block-end:var(--sbb-dialog-title-border);z-index:var(--sbb-dialog-z-index, var(--sbb-overlay-default-z-index))}:host(:not([data-has-visible-focus-within])) .sbb-dialog__header{transform:translateY(var(--sbb-dialog-header-margin-block-start));transition-property:box-shadow,transform;transition-duration:var(--sbb-dialog-animation-duration);transition-timing-function:var(--sbb-dialog-animation-easing)}:host([data-overflows][data-has-visible-focus-within]) .sbb-dialog__header,:host([data-overflows]:not([negative],[data-hide-header])) .sbb-dialog__header{box-shadow:var(--sbb-shadow-elevation-level-9-shadow-2-offset-x) var(--sbb-shadow-elevation-level-9-shadow-2-offset-y) var(--sbb-shadow-elevation-level-9-shadow-2-blur) var(--sbb-shadow-elevation-level-9-shadow-2-spread) var(--sbb-shadow-elevation-level-9-soft-2-color),var(--sbb-shadow-elevation-level-9-shadow-1-offset-x) var(--sbb-shadow-elevation-level-9-shadow-1-offset-y) var(--sbb-shadow-elevation-level-9-shadow-1-blur) var(--sbb-shadow-elevation-level-9-shadow-1-spread) var(--sbb-shadow-elevation-level-9-soft-1-color)}@media (forced-colors: active){:host([data-overflows][data-has-visible-focus-within]) .sbb-dialog__header,:host([data-overflows]:not([negative],[data-hide-header])) .sbb-dialog__header{--sbb-dialog-title-border: var(--sbb-border-width-1x) solid CanvasText}}@media (min-width: 52.5rem){.sbb-dialog__header{border-radius:var(--sbb-dialog-border-radius) var(--sbb-dialog-border-radius) 0 0}}.sbb-dialog__close{margin-inline-start:auto}`;
|
|
20
20
|
let re = (() => {
|
|
21
21
|
var n, d, h, l;
|
|
22
|
-
let t = [M("sbb-dialog-title")], s, i = [], o, y = W(j), w = [], B, L = [], x = [],
|
|
23
|
-
var
|
|
22
|
+
let t = [M("sbb-dialog-title")], s, i = [], o, y = W(j), w = [], B, L = [], x = [], S, C = [], z = [], $, O = [], E = [], T;
|
|
23
|
+
var f = (l = class extends y {
|
|
24
24
|
constructor() {
|
|
25
25
|
super();
|
|
26
26
|
g(this, n);
|
|
27
27
|
g(this, d);
|
|
28
28
|
g(this, h);
|
|
29
|
-
c(this, n, (b(this, w), b(this, L, !1))), c(this, d, (b(this, x), b(this,
|
|
29
|
+
c(this, n, (b(this, w), b(this, L, !1))), c(this, d, (b(this, x), b(this, C, ""))), c(this, h, (b(this, z), b(this, O, ""))), this._hideOnScroll = (b(this, E), !1), this._backClick = new q(this, f.events.backClick), this._language = new U(this), this.level = "2", this.visualLevel = "3", this.addController(new N(this));
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
32
32
|
* Whether a back button is displayed next to the title.
|
|
33
33
|
*/
|
|
34
34
|
get backButton() {
|
|
35
|
-
return
|
|
35
|
+
return u(this, n);
|
|
36
36
|
}
|
|
37
37
|
set backButton(e) {
|
|
38
38
|
c(this, n, e);
|
|
@@ -41,7 +41,7 @@ let re = (() => {
|
|
|
41
41
|
* This will be forwarded as aria-label to the close button element.
|
|
42
42
|
*/
|
|
43
43
|
get accessibilityCloseLabel() {
|
|
44
|
-
return
|
|
44
|
+
return u(this, d);
|
|
45
45
|
}
|
|
46
46
|
set accessibilityCloseLabel(e) {
|
|
47
47
|
c(this, d, e);
|
|
@@ -50,7 +50,7 @@ let re = (() => {
|
|
|
50
50
|
* This will be forwarded as aria-label to the back button element.
|
|
51
51
|
*/
|
|
52
52
|
get accessibilityBackLabel() {
|
|
53
|
-
return
|
|
53
|
+
return u(this, h);
|
|
54
54
|
}
|
|
55
55
|
set accessibilityBackLabel(e) {
|
|
56
56
|
c(this, h, e);
|
|
@@ -64,14 +64,11 @@ let re = (() => {
|
|
|
64
64
|
get hideOnScroll() {
|
|
65
65
|
return this._hideOnScroll;
|
|
66
66
|
}
|
|
67
|
-
connectedCallback() {
|
|
68
|
-
super.connectedCallback(), new N(this);
|
|
69
|
-
}
|
|
70
67
|
willUpdate(e) {
|
|
71
68
|
super.willUpdate(e), (e.has("backButton") || e.has("accessibilityBackLabel")) && (this.backButton = !this.backButton && this.accessibilityBackLabel ? !0 : this.backButton);
|
|
72
69
|
}
|
|
73
70
|
render() {
|
|
74
|
-
const e = this.negative ? "sbb-transparent-button" : "sbb-secondary-button", a =
|
|
71
|
+
const e = this.negative ? "sbb-transparent-button" : "sbb-secondary-button", a = k`
|
|
75
72
|
<${_(e)}
|
|
76
73
|
class="sbb-dialog__close"
|
|
77
74
|
aria-label=${this.accessibilityCloseLabel || F[this._language.current]}
|
|
@@ -81,7 +78,7 @@ let re = (() => {
|
|
|
81
78
|
icon-name="cross-small"
|
|
82
79
|
sbb-dialog-close
|
|
83
80
|
></${_(e)}>
|
|
84
|
-
`, r =
|
|
81
|
+
`, r = k`
|
|
85
82
|
<${_(e)}
|
|
86
83
|
class="sbb-dialog__back"
|
|
87
84
|
aria-label=${this.accessibilityBackLabel || V[this._language.current]}
|
|
@@ -92,7 +89,7 @@ let re = (() => {
|
|
|
92
89
|
@click=${() => this._backClick.emit()}
|
|
93
90
|
></${_(e)}>
|
|
94
91
|
`;
|
|
95
|
-
return
|
|
92
|
+
return k`
|
|
96
93
|
<div class="sbb-dialog__header">
|
|
97
94
|
${this.backButton ? r : G} ${super.render()} ${a}
|
|
98
95
|
</div>
|
|
@@ -100,19 +97,19 @@ let re = (() => {
|
|
|
100
97
|
}
|
|
101
98
|
}, n = new WeakMap(), d = new WeakMap(), h = new WeakMap(), o = l, (() => {
|
|
102
99
|
const e = typeof Symbol == "function" && Symbol.metadata ? Object.create(y[Symbol.metadata] ?? null) : void 0;
|
|
103
|
-
B = [p(), m({ attribute: "back-button", type: Boolean })],
|
|
100
|
+
B = [p(), m({ attribute: "back-button", type: Boolean })], S = [p(), m({ attribute: "accessibility-close-label" })], $ = [p(), m({ attribute: "accessibility-back-label" })], T = [m({ attribute: "hide-on-scroll" })], v(l, null, B, { kind: "accessor", name: "backButton", static: !1, private: !1, access: { has: (a) => "backButton" in a, get: (a) => a.backButton, set: (a, r) => {
|
|
104
101
|
a.backButton = r;
|
|
105
|
-
} }, metadata: e }, L, x),
|
|
102
|
+
} }, metadata: e }, L, x), v(l, null, S, { kind: "accessor", name: "accessibilityCloseLabel", static: !1, private: !1, access: { has: (a) => "accessibilityCloseLabel" in a, get: (a) => a.accessibilityCloseLabel, set: (a, r) => {
|
|
106
103
|
a.accessibilityCloseLabel = r;
|
|
107
|
-
} }, metadata: e },
|
|
104
|
+
} }, metadata: e }, C, z), v(l, null, $, { kind: "accessor", name: "accessibilityBackLabel", static: !1, private: !1, access: { has: (a) => "accessibilityBackLabel" in a, get: (a) => a.accessibilityBackLabel, set: (a, r) => {
|
|
108
105
|
a.accessibilityBackLabel = r;
|
|
109
|
-
} }, metadata: e }, O, E),
|
|
106
|
+
} }, metadata: e }, O, E), v(l, null, T, { kind: "setter", name: "hideOnScroll", static: !1, private: !1, access: { has: (a) => "hideOnScroll" in a, set: (a, r) => {
|
|
110
107
|
a.hideOnScroll = r;
|
|
111
|
-
} }, metadata: e }, null, w),
|
|
108
|
+
} }, metadata: e }, null, w), v(null, s = { value: o }, t, { kind: "class", name: o.name, metadata: e }, null, i), f = o = s.value, e && Object.defineProperty(o, Symbol.metadata, { enumerable: !0, configurable: !0, writable: !0, value: e });
|
|
112
109
|
})(), l.styles = [j.styles, Y], l.events = {
|
|
113
110
|
backClick: "requestBackAction"
|
|
114
111
|
}, b(o, i), l);
|
|
115
|
-
return
|
|
112
|
+
return f = o;
|
|
116
113
|
})();
|
|
117
114
|
export {
|
|
118
115
|
re as SbbDialogTitleElement
|
|
@@ -53,12 +53,10 @@ export declare class SbbExpansionPanelElement extends SbbExpansionPanelElement_b
|
|
|
53
53
|
private _progressiveId;
|
|
54
54
|
private _headerRef?;
|
|
55
55
|
private _contentRef?;
|
|
56
|
-
private _initialized;
|
|
57
56
|
constructor();
|
|
58
57
|
connectedCallback(): void;
|
|
59
58
|
protected willUpdate(changedProperties: PropertyValues<this>): void;
|
|
60
59
|
disconnectedCallback(): void;
|
|
61
|
-
protected firstUpdated(changedProperties: PropertyValues<this>): void;
|
|
62
60
|
private _toggleExpanded;
|
|
63
61
|
private _onExpandedChange;
|
|
64
62
|
private _open;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expansion-panel.d.ts","sourceRoot":"","sources":["../../../../src/elements/expansion-panel/expansion-panel/expansion-panel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AASjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;;AAQpD;;;;;;;;GAQG;AACH,qBAEM,wBAAyB,SAAQ,6BAA6B;IAClE,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;;;;MAKlB;IAEX,yDAAyD;IACzD,SAAwD,UAAU,EAAE,aAAa,GAAG,IAAI,CAAQ;IAEhG,yCAAyC;IACzC,SAA6C,KAAK,EAAE,OAAO,GAAG,MAAM,CAAW;IAE/E,qCAAqC;IACrC,IACW,QAAQ,CAAC,KAAK,EAAE,OAAO,EAGjC;IACD,IAAW,QAAQ,IAAI,OAAO,CAE7B;IACD,OAAO,CAAC,SAAS,CAAkB;IAEnC,6EAA6E;IAC7E,IACW,QAAQ,CAAC,KAAK,EAAE,OAAO,EAGjC;IACD,IAAW,QAAQ,IAAI,OAAO,CAE7B;IACD,OAAO,CAAC,SAAS,CAAkB;IAEnC,uCAAuC;IACvC,SAEgB,UAAU,EAAE,OAAO,CAAS;IAE5C;;;OAGG;IACH,SAA6C,IAAI,EAAE,GAAG,GAAG,GAAG,CAAwB;IAEpF;;OAEG;IACH,OAAO,KAAK,MAAM,QAEjB;IACD,OAAO,KAAK,MAAM,GAEjB;IAED,8EAA8E;IAC9E,OAAO,CAAC,SAAS,CAIf;IAEF,0DAA0D;IAC1D,OAAO,CAAC,QAAQ,CAId;IAEF,8EAA8E;IAC9E,OAAO,CAAC,UAAU,CAIhB;IAEF,0DAA0D;IAC1D,OAAO,CAAC,SAAS,CAIf;IAEF,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,UAAU,CAAC,CAAiC;IACpD,OAAO,CAAC,WAAW,CAAC,CAAkC
|
|
1
|
+
{"version":3,"file":"expansion-panel.d.ts","sourceRoot":"","sources":["../../../../src/elements/expansion-panel/expansion-panel/expansion-panel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AASjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;;AAQpD;;;;;;;;GAQG;AACH,qBAEM,wBAAyB,SAAQ,6BAA6B;IAClE,OAAuB,MAAM,EAAE,cAAc,CAAS;IACtD,gBAAuB,MAAM;;;;;MAKlB;IAEX,yDAAyD;IACzD,SAAwD,UAAU,EAAE,aAAa,GAAG,IAAI,CAAQ;IAEhG,yCAAyC;IACzC,SAA6C,KAAK,EAAE,OAAO,GAAG,MAAM,CAAW;IAE/E,qCAAqC;IACrC,IACW,QAAQ,CAAC,KAAK,EAAE,OAAO,EAGjC;IACD,IAAW,QAAQ,IAAI,OAAO,CAE7B;IACD,OAAO,CAAC,SAAS,CAAkB;IAEnC,6EAA6E;IAC7E,IACW,QAAQ,CAAC,KAAK,EAAE,OAAO,EAGjC;IACD,IAAW,QAAQ,IAAI,OAAO,CAE7B;IACD,OAAO,CAAC,SAAS,CAAkB;IAEnC,uCAAuC;IACvC,SAEgB,UAAU,EAAE,OAAO,CAAS;IAE5C;;;OAGG;IACH,SAA6C,IAAI,EAAE,GAAG,GAAG,GAAG,CAAwB;IAEpF;;OAEG;IACH,OAAO,KAAK,MAAM,QAEjB;IACD,OAAO,KAAK,MAAM,GAEjB;IAED,8EAA8E;IAC9E,OAAO,CAAC,SAAS,CAIf;IAEF,0DAA0D;IAC1D,OAAO,CAAC,QAAQ,CAId;IAEF,8EAA8E;IAC9E,OAAO,CAAC,UAAU,CAIhB;IAEF,0DAA0D;IAC1D,OAAO,CAAC,SAAS,CAIf;IAEF,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,UAAU,CAAC,CAAiC;IACpD,OAAO,CAAC,WAAW,CAAC,CAAkC;;IAOtC,iBAAiB,IAAI,IAAI;cAKtB,UAAU,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAS5D,oBAAoB,IAAI,IAAI;IAK5C,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,KAAK;IAWb,OAAO,CAAC,MAAM;IAWd,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,uBAAuB;IAM/B,OAAO,CAAC,iBAAiB;IAmCzB,OAAO,CAAC,eAAe;cAQJ,MAAM,IAAI,cAAc;CAkB5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,qBAAqB,EAAE,wBAAwB,CAAC;KACjD;CACF"}
|