@sbb-esta/lyne-elements 1.10.0 → 1.11.1
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.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts +0 -3
- package/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -1
- package/autocomplete-grid/autocomplete-grid-button.js +32 -28
- package/autocomplete-grid/autocomplete-grid.js +16 -17
- package/autocomplete.js +23 -24
- package/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts +0 -1
- package/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
- package/breadcrumb/breadcrumb-group.js +25 -24
- package/button/button/button.d.ts +1 -1
- package/button/button-link/button-link.d.ts +1 -1
- package/button/button-link.js +14 -14
- package/button/button.js +9 -9
- package/button/mini-button/mini-button.d.ts +1 -1
- package/button/mini-button/mini-button.d.ts.map +1 -1
- package/button/mini-button.js +15 -17
- package/button/secondary-button/secondary-button.d.ts +1 -1
- package/button/secondary-button-link/secondary-button-link.d.ts +1 -1
- package/button/secondary-button-link.js +15 -15
- package/button/secondary-button.js +6 -6
- package/button/tertiary-button/tertiary-button.d.ts +1 -1
- package/button/tertiary-button-link/tertiary-button-link.d.ts +1 -1
- package/button/tertiary-button-link.js +12 -12
- package/button/tertiary-button.js +13 -13
- package/button/transparent-button/transparent-button.d.ts +1 -1
- package/button/transparent-button-link/transparent-button-link.d.ts +1 -1
- package/button/transparent-button-link.js +15 -15
- package/button/transparent-button.js +8 -8
- package/card/card-badge/card-badge.d.ts.map +1 -1
- package/card/card-badge.js +7 -9
- package/card/common/card-action-common.d.ts.map +1 -1
- package/card/common.js +24 -25
- package/container/sticky-bar/sticky-bar.d.ts +0 -1
- package/container/sticky-bar/sticky-bar.d.ts.map +1 -1
- package/container/sticky-bar.js +20 -20
- package/core/a11y/arrow-navigation.d.ts.map +1 -1
- package/core/a11y.js +46 -47
- package/core/base-elements/action-base-element.d.ts +1 -0
- package/core/base-elements/action-base-element.d.ts.map +1 -1
- package/core/base-elements/link-base-element.d.ts.map +1 -1
- package/core/base-elements.js +52 -49
- package/core/controllers/language-controller.d.ts.map +1 -1
- package/core/controllers.js +22 -23
- package/core/dom/get-document-writing-mode.d.ts +3 -0
- package/core/dom/get-document-writing-mode.d.ts.map +1 -1
- package/core/mixins/disabled-mixin.d.ts +9 -4
- package/core/mixins/disabled-mixin.d.ts.map +1 -1
- package/core/mixins.js +68 -58
- package/core/observers/intersection-observer.d.ts +6 -0
- package/core/observers/intersection-observer.d.ts.map +1 -1
- package/core/observers/mutation-observer.d.ts +6 -0
- package/core/observers/mutation-observer.d.ts.map +1 -1
- package/core/observers/resize-observer.d.ts +6 -0
- package/core/observers/resize-observer.d.ts.map +1 -1
- package/core/styles/core.scss +23 -0
- package/core/styles/mixins/overlay.scss +2 -2
- package/core.css +23 -0
- package/custom-elements.json +1268 -159
- package/datepicker/datepicker/datepicker.d.ts +1 -1
- package/datepicker/datepicker/datepicker.d.ts.map +1 -1
- package/datepicker/datepicker-toggle/datepicker-toggle.d.ts +0 -2
- package/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
- package/datepicker/datepicker-toggle.js +36 -45
- package/datepicker/datepicker.js +34 -35
- package/development/autocomplete/autocomplete.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid/autocomplete-grid.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts +0 -3
- package/development/autocomplete-grid/autocomplete-grid-button/autocomplete-grid-button.d.ts.map +1 -1
- package/development/autocomplete-grid/autocomplete-grid-button.js +17 -15
- package/development/autocomplete-grid/autocomplete-grid.js +2 -3
- package/development/autocomplete.js +4 -5
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts +0 -1
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -1
- package/development/breadcrumb/breadcrumb-group.js +9 -8
- package/development/button/button/button.d.ts +1 -1
- package/development/button/button-link/button-link.d.ts +1 -1
- package/development/button/button-link.js +3 -3
- package/development/button/button.js +3 -3
- package/development/button/mini-button/mini-button.d.ts +1 -1
- package/development/button/mini-button/mini-button.d.ts.map +1 -1
- package/development/button/mini-button.js +3 -5
- package/development/button/secondary-button/secondary-button.d.ts +1 -1
- package/development/button/secondary-button-link/secondary-button-link.d.ts +1 -1
- package/development/button/secondary-button-link.js +3 -3
- package/development/button/secondary-button.js +3 -3
- package/development/button/tertiary-button/tertiary-button.d.ts +1 -1
- package/development/button/tertiary-button-link/tertiary-button-link.d.ts +1 -1
- package/development/button/tertiary-button-link.js +3 -3
- package/development/button/tertiary-button.js +3 -3
- package/development/button/transparent-button/transparent-button.d.ts +1 -1
- package/development/button/transparent-button-link/transparent-button-link.d.ts +1 -1
- package/development/button/transparent-button-link.js +3 -3
- package/development/button/transparent-button.js +3 -3
- package/development/card/card-badge/card-badge.d.ts.map +1 -1
- package/development/card/card-badge.js +3 -5
- package/development/card/common/card-action-common.d.ts.map +1 -1
- package/development/card/common.js +8 -10
- package/development/container/sticky-bar/sticky-bar.d.ts +0 -1
- package/development/container/sticky-bar/sticky-bar.d.ts.map +1 -1
- package/development/container/sticky-bar.js +8 -9
- package/development/core/a11y/arrow-navigation.d.ts.map +1 -1
- package/development/core/a11y.js +2 -3
- package/development/core/base-elements/action-base-element.d.ts +1 -0
- package/development/core/base-elements/action-base-element.d.ts.map +1 -1
- package/development/core/base-elements/link-base-element.d.ts.map +1 -1
- package/development/core/base-elements.js +7 -4
- package/development/core/controllers/language-controller.d.ts.map +1 -1
- package/development/core/controllers.js +9 -4
- package/development/core/dom/get-document-writing-mode.d.ts +3 -0
- package/development/core/dom/get-document-writing-mode.d.ts.map +1 -1
- package/development/core/dom.js +1 -1
- package/development/core/mixins/disabled-mixin.d.ts +9 -4
- package/development/core/mixins/disabled-mixin.d.ts.map +1 -1
- package/development/core/mixins.js +25 -9
- package/development/core/observers/intersection-observer.d.ts +6 -0
- package/development/core/observers/intersection-observer.d.ts.map +1 -1
- package/development/core/observers/mutation-observer.d.ts +6 -0
- package/development/core/observers/mutation-observer.d.ts.map +1 -1
- package/development/core/observers/resize-observer.d.ts +6 -0
- package/development/core/observers/resize-observer.d.ts.map +1 -1
- package/development/core/observers.js +1 -1
- package/development/datepicker/datepicker/datepicker.d.ts +1 -1
- package/development/datepicker/datepicker/datepicker.d.ts.map +1 -1
- package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts +0 -2
- package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -1
- package/development/datepicker/datepicker-toggle.js +2 -12
- package/development/datepicker/datepicker.js +6 -7
- package/development/dialog/dialog/dialog.d.ts +0 -1
- package/development/dialog/dialog/dialog.d.ts.map +1 -1
- package/development/dialog/dialog.js +10 -10
- package/development/expansion-panel/expansion-panel-header/expansion-panel-header.d.ts +1 -1
- package/development/expansion-panel/expansion-panel-header.js +3 -3
- package/development/flip-card/flip-card-details/flip-card-details.d.ts +2 -5
- package/development/flip-card/flip-card-details/flip-card-details.d.ts.map +1 -1
- package/development/flip-card/flip-card-details.js +10 -22
- package/development/form-field/form-field/form-field.d.ts.map +1 -1
- package/development/form-field/form-field.js +11 -12
- package/development/header/common.js +42 -21
- package/development/header/header/header.d.ts +2 -0
- package/development/header/header/header.d.ts.map +1 -1
- package/development/header/header.js +12 -1
- package/development/journey-header/journey-header.d.ts.map +1 -1
- package/development/journey-header.js +3 -4
- package/development/link/block-link-button/block-link-button.d.ts +1 -1
- package/development/link/block-link-button.js +3 -3
- package/development/link/link-button/link-button.d.ts +1 -1
- package/development/link/link-button.js +3 -3
- package/development/logo.js +2 -4
- package/development/map-container/map-container.d.ts +8 -5
- package/development/map-container/map-container.d.ts.map +1 -1
- package/development/map-container.js +31 -34
- package/development/menu/common/menu-action-common.d.ts +1 -2
- package/development/menu/common/menu-action-common.d.ts.map +1 -1
- package/development/menu/common.js +1 -1
- package/development/menu/menu/menu.d.ts.map +1 -1
- package/development/menu/menu-button/menu-button.d.ts +1 -1
- package/development/menu/menu-button.js +3 -3
- package/development/menu/menu-link/menu-link.d.ts +1 -1
- package/development/menu/menu-link/menu-link.d.ts.map +1 -1
- package/development/menu/menu-link.js +5 -2
- package/development/menu/menu.js +4 -2
- package/development/navigation/navigation/navigation.d.ts +1 -1
- package/development/navigation/navigation/navigation.d.ts.map +1 -1
- package/development/navigation/navigation-marker/navigation-marker.d.ts +1 -2
- package/development/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
- package/development/navigation/navigation-marker.js +8 -15
- package/development/navigation/navigation.js +13 -10
- package/development/notification/notification.d.ts +0 -1
- package/development/notification/notification.d.ts.map +1 -1
- package/development/notification.js +11 -13
- package/development/option/optgroup/optgroup-base-element.d.ts +0 -2
- package/development/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/development/option/optgroup.js +9 -14
- package/development/option/option/option-base-element.d.ts +0 -3
- package/development/option/option/option-base-element.d.ts.map +1 -1
- package/development/option/option.js +6 -10
- package/development/popover/popover-trigger/popover-trigger.d.ts +1 -1
- package/development/popover/popover-trigger.js +3 -3
- package/development/select/select.d.ts.map +1 -1
- package/development/select.js +4 -5
- package/development/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
- package/development/selection-expansion-panel.js +10 -9
- package/development/signet/signet.d.ts +4 -1
- package/development/signet/signet.d.ts.map +1 -1
- package/development/signet.js +37 -8
- package/development/slider/slider.d.ts.map +1 -1
- package/development/slider.js +12 -10
- package/development/stepper/step/step.d.ts +1 -2
- package/development/stepper/step/step.d.ts.map +1 -1
- package/development/stepper/step.js +9 -14
- package/development/table/table-wrapper/table-wrapper.d.ts +0 -1
- package/development/table/table-wrapper/table-wrapper.d.ts.map +1 -1
- package/development/table/table-wrapper.js +7 -7
- package/development/tabs/tab-group/tab-group.d.ts +0 -1
- package/development/tabs/tab-group/tab-group.d.ts.map +1 -1
- package/development/tabs/tab-group.js +19 -18
- package/development/tag/tag/tag.d.ts +1 -1
- package/development/tag/tag.js +3 -3
- package/development/toggle/toggle/toggle.d.ts +0 -1
- package/development/toggle/toggle/toggle.d.ts.map +1 -1
- package/development/toggle/toggle-option.js +2 -2
- package/development/toggle/toggle.js +7 -7
- package/development/train/train-formation/train-formation.d.ts +1 -2
- package/development/train/train-formation/train-formation.d.ts.map +1 -1
- package/development/train/train-formation.js +10 -8
- package/dialog/dialog/dialog.d.ts +0 -1
- package/dialog/dialog/dialog.d.ts.map +1 -1
- package/dialog/dialog.js +16 -17
- package/expansion-panel/expansion-panel-header/expansion-panel-header.d.ts +1 -1
- package/expansion-panel/expansion-panel-header.js +1 -1
- package/flip-card/flip-card-details/flip-card-details.d.ts +2 -5
- package/flip-card/flip-card-details/flip-card-details.d.ts.map +1 -1
- package/flip-card/flip-card-details.js +20 -28
- package/form-field/form-field/form-field.d.ts.map +1 -1
- package/form-field/form-field.js +26 -27
- package/header/common.js +3 -3
- package/header/header/header.d.ts +2 -0
- package/header/header/header.d.ts.map +1 -1
- package/header/header.js +21 -18
- package/journey-header/journey-header.d.ts.map +1 -1
- package/journey-header.js +14 -15
- package/link/block-link-button/block-link-button.d.ts +1 -1
- package/link/block-link-button.js +10 -10
- package/link/link-button/link-button.d.ts +1 -1
- package/link/link-button.js +4 -4
- package/logo.js +1 -1
- package/map-container/map-container.d.ts +8 -5
- package/map-container/map-container.d.ts.map +1 -1
- package/map-container.js +35 -37
- package/menu/common/menu-action-common.d.ts +1 -2
- package/menu/common/menu-action-common.d.ts.map +1 -1
- package/menu/menu/menu.d.ts.map +1 -1
- package/menu/menu-button/menu-button.d.ts +1 -1
- package/menu/menu-button.js +13 -13
- package/menu/menu-link/menu-link.d.ts +1 -1
- package/menu/menu-link/menu-link.d.ts.map +1 -1
- package/menu/menu-link.js +15 -12
- package/menu/menu.js +9 -7
- package/navigation/navigation/navigation.d.ts +1 -1
- package/navigation/navigation/navigation.d.ts.map +1 -1
- package/navigation/navigation-marker/navigation-marker.d.ts +1 -2
- package/navigation/navigation-marker/navigation-marker.d.ts.map +1 -1
- package/navigation/navigation-marker.js +17 -22
- package/navigation/navigation.js +40 -34
- package/notification/notification.d.ts +0 -1
- package/notification/notification.d.ts.map +1 -1
- package/notification.js +17 -18
- package/option/optgroup/optgroup-base-element.d.ts +0 -2
- package/option/optgroup/optgroup-base-element.d.ts.map +1 -1
- package/option/optgroup.js +31 -33
- package/option/option/option-base-element.d.ts +0 -3
- package/option/option/option-base-element.d.ts.map +1 -1
- package/option/option.js +16 -18
- package/package.json +3 -2
- package/popover/popover-trigger/popover-trigger.d.ts +1 -1
- package/popover/popover-trigger.js +1 -1
- package/select/select.d.ts.map +1 -1
- package/select.js +14 -15
- package/selection-expansion-panel/selection-expansion-panel.d.ts.map +1 -1
- package/selection-expansion-panel.js +25 -24
- package/signet/signet.d.ts +4 -1
- package/signet/signet.d.ts.map +1 -1
- package/signet.js +34 -23
- package/slider/slider.d.ts.map +1 -1
- package/slider.js +5 -5
- package/standard-theme.css +23 -0
- package/stepper/step/step.d.ts +1 -2
- package/stepper/step/step.d.ts.map +1 -1
- package/stepper/step.js +19 -24
- package/table/table-wrapper/table-wrapper.d.ts +0 -1
- package/table/table-wrapper/table-wrapper.d.ts.map +1 -1
- package/table/table-wrapper.js +19 -18
- package/tabs/tab-group/tab-group.d.ts +0 -1
- package/tabs/tab-group/tab-group.d.ts.map +1 -1
- package/tabs/tab-group.js +37 -33
- package/tag/tag/tag.d.ts +1 -1
- package/tag/tag.js +19 -19
- package/toggle/toggle/toggle.d.ts +0 -1
- package/toggle/toggle/toggle.d.ts.map +1 -1
- package/toggle/toggle-option.js +1 -1
- package/toggle/toggle.js +32 -31
- package/train/train-formation/train-formation.d.ts +1 -2
- package/train/train-formation/train-formation.d.ts.map +1 -1
- package/train/train-formation.js +23 -22
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { customElement } from "lit/decorators.js";
|
|
2
2
|
import { SbbLinkBaseElement } from "../core/base-elements.js";
|
|
3
|
-
import { SbbDisabledMixin } from "../core/mixins.js";
|
|
3
|
+
import { SbbDisabledInteractiveMixin, SbbDisabledMixin } from "../core/mixins.js";
|
|
4
4
|
import { SbbButtonCommonElementMixin, buttonCommonStyle, buttonTertiaryStyle } from "./common.js";
|
|
5
5
|
var __defProp = Object.defineProperty;
|
|
6
6
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -13,7 +13,7 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
13
13
|
return result;
|
|
14
14
|
};
|
|
15
15
|
let SbbTertiaryButtonLinkElement = class extends SbbButtonCommonElementMixin(
|
|
16
|
-
SbbDisabledMixin(SbbLinkBaseElement)
|
|
16
|
+
SbbDisabledInteractiveMixin(SbbDisabledMixin(SbbLinkBaseElement))
|
|
17
17
|
) {
|
|
18
18
|
};
|
|
19
19
|
SbbTertiaryButtonLinkElement.styles = [buttonCommonStyle, buttonTertiaryStyle];
|
|
@@ -23,4 +23,4 @@ SbbTertiaryButtonLinkElement = __decorateClass([
|
|
|
23
23
|
export {
|
|
24
24
|
SbbTertiaryButtonLinkElement
|
|
25
25
|
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVydGlhcnktYnV0dG9uLWxpbmsuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9idXR0b24vdGVydGlhcnktYnV0dG9uLWxpbmsvdGVydGlhcnktYnV0dG9uLWxpbmsudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJMaW5rQmFzZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMuanMnO1xuaW1wb3J0IHsgU2JiRGlzYWJsZWRJbnRlcmFjdGl2ZU1peGluLCBTYmJEaXNhYmxlZE1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHsgYnV0dG9uQ29tbW9uU3R5bGUsIGJ1dHRvblRlcnRpYXJ5U3R5bGUsIFNiYkJ1dHRvbkNvbW1vbkVsZW1lbnRNaXhpbiB9IGZyb20gJy4uL2NvbW1vbi5qcyc7XG5cbi8qKlxuICogSXQgZGlzcGxheXMgYSBidXR0b24gZW5oYW5jZWQgd2l0aCB0aGUgU0JCIERlc2lnbiBpbiB0aGUgJ3RlcnRpYXJ5JyB2YXJpYW50LCB3aGljaCB3aWxsIGJlaGF2ZSBhcyBhIGxpbmsuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgY29udGVudCB0byB0aGUgdGVydGlhcnktYnV0dG9uLWxpbmsuXG4gKiBAc2xvdCBpY29uIC0gU2xvdCB1c2VkIHRvIGRpc3BsYXkgdGhlIGljb24sIGlmIG9uZSBpcyBzZXRcbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi10ZXJ0aWFyeS1idXR0b24tbGluaycpXG5leHBvcnQgY2xhc3MgU2JiVGVydGlhcnlCdXR0b25MaW5rRWxlbWVudCBleHRlbmRzIFNiYkJ1dHRvbkNvbW1vbkVsZW1lbnRNaXhpbihcbiAgU2JiRGlzYWJsZWRJbnRlcmFjdGl2ZU1peGluKFNiYkRpc2FibGVkTWl4aW4oU2JiTGlua0Jhc2VFbGVtZW50KSksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2J1dHRvbkNvbW1vblN0eWxlLCBidXR0b25UZXJ0aWFyeVN0eWxlXTtcbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10ZXJ0aWFyeS1idXR0b24tbGluayc6IFNiYlRlcnRpYXJ5QnV0dG9uTGlua0VsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQWNPLElBQU0sK0JBQU4sY0FBMkM7QUFBQSxFQUNoRCw0QkFBNEIsaUJBQWlCLGtCQUFrQixDQUFDO0FBQ2xFLEVBQUU7QUFFRjtBQUphLDZCQUdZLFNBQXlCLENBQUMsbUJBQW1CLG1CQUFtQjtBQUg1RSwrQkFBTixnQkFBQTtBQUFBLEVBRE4sY0FBYywwQkFBMEI7QUFBQSxHQUM1Qiw0QkFBQTsifQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { customElement } from "lit/decorators.js";
|
|
2
2
|
import { SbbButtonBaseElement } from "../core/base-elements.js";
|
|
3
|
-
import {
|
|
3
|
+
import { SbbDisabledTabIndexActionMixin } from "../core/mixins.js";
|
|
4
4
|
import { SbbButtonCommonElementMixin, buttonCommonStyle, buttonTertiaryStyle } from "./common.js";
|
|
5
5
|
var __defProp = Object.defineProperty;
|
|
6
6
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -13,7 +13,7 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
13
13
|
return result;
|
|
14
14
|
};
|
|
15
15
|
let SbbTertiaryButtonElement = class extends SbbButtonCommonElementMixin(
|
|
16
|
-
|
|
16
|
+
SbbDisabledTabIndexActionMixin(SbbButtonBaseElement)
|
|
17
17
|
) {
|
|
18
18
|
};
|
|
19
19
|
SbbTertiaryButtonElement.styles = [buttonCommonStyle, buttonTertiaryStyle];
|
|
@@ -23,4 +23,4 @@ SbbTertiaryButtonElement = __decorateClass([
|
|
|
23
23
|
export {
|
|
24
24
|
SbbTertiaryButtonElement
|
|
25
25
|
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVydGlhcnktYnV0dG9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvYnV0dG9uL3RlcnRpYXJ5LWJ1dHRvbi90ZXJ0aWFyeS1idXR0b24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJCdXR0b25CYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBTYmJEaXNhYmxlZFRhYkluZGV4QWN0aW9uTWl4aW4gfSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgeyBidXR0b25Db21tb25TdHlsZSwgYnV0dG9uVGVydGlhcnlTdHlsZSwgU2JiQnV0dG9uQ29tbW9uRWxlbWVudE1peGluIH0gZnJvbSAnLi4vY29tbW9uLmpzJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIGJ1dHRvbiBlbmhhbmNlZCB3aXRoIHRoZSBTQkIgRGVzaWduIGluIHRoZSAndGVydGlhcnknIHZhcmlhbnQuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgY29udGVudCB0byB0aGUgdGVydGlhcnktYnV0dG9uLlxuICogQHNsb3QgaWNvbiAtIFNsb3QgdXNlZCB0byBkaXNwbGF5IHRoZSBpY29uLCBpZiBvbmUgaXMgc2V0XG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItdGVydGlhcnktYnV0dG9uJylcbmV4cG9ydCBjbGFzcyBTYmJUZXJ0aWFyeUJ1dHRvbkVsZW1lbnQgZXh0ZW5kcyBTYmJCdXR0b25Db21tb25FbGVtZW50TWl4aW4oXG4gIFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbihTYmJCdXR0b25CYXNlRWxlbWVudCksXG4pIHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gW2J1dHRvbkNvbW1vblN0eWxlLCBidXR0b25UZXJ0aWFyeVN0eWxlXTtcbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICBpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gICAgJ3NiYi10ZXJ0aWFyeS1idXR0b24nOiBTYmJUZXJ0aWFyeUJ1dHRvbkVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQWNPLElBQU0sMkJBQU4sY0FBdUM7QUFBQSxFQUM1QywrQkFBK0Isb0JBQW9CO0FBQ3JELEVBQUU7QUFFRjtBQUphLHlCQUdZLFNBQXlCLENBQUMsbUJBQW1CLG1CQUFtQjtBQUg1RSwyQkFBTixnQkFBQTtBQUFBLEVBRE4sY0FBYyxxQkFBcUI7QUFBQSxHQUN2Qix3QkFBQTsifQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CSSResultGroup } from 'lit';
|
|
2
2
|
import { SbbButtonBaseElement } from '../../core/base-elements.js';
|
|
3
|
-
declare const SbbTransparentButtonElement_base: import('../../core/mixins.js').AbstractConstructor<import('../common.js').SbbButtonCommonElementMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & typeof SbbButtonBaseElement;
|
|
3
|
+
declare const SbbTransparentButtonElement_base: import('../../core/mixins.js').AbstractConstructor<import('../common.js').SbbButtonCommonElementMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType & import('../../core/mixins.js').SbbDisabledInteractiveMixinType> & typeof SbbButtonBaseElement;
|
|
4
4
|
/**
|
|
5
5
|
* It displays a button enhanced with the SBB Design in the 'transparent' variant.
|
|
6
6
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CSSResultGroup } from 'lit';
|
|
2
2
|
import { SbbLinkBaseElement } from '../../core/base-elements.js';
|
|
3
|
-
declare const SbbTransparentButtonLinkElement_base: import('../../core/mixins.js').AbstractConstructor<import('../common.js').SbbButtonCommonElementMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & typeof SbbLinkBaseElement;
|
|
3
|
+
declare const SbbTransparentButtonLinkElement_base: import('../../core/mixins.js').AbstractConstructor<import('../common.js').SbbButtonCommonElementMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledInteractiveMixinType> & import('../../core/mixins.js').AbstractConstructor<import('../../core/mixins.js').SbbDisabledMixinType> & typeof SbbLinkBaseElement;
|
|
4
4
|
/**
|
|
5
5
|
* It displays a button enhanced with the SBB Design in the 'transparent' variant, which will behave as a link.
|
|
6
6
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { customElement } from "lit/decorators.js";
|
|
2
2
|
import { SbbLinkBaseElement } from "../core/base-elements.js";
|
|
3
|
-
import { SbbDisabledMixin } from "../core/mixins.js";
|
|
3
|
+
import { SbbDisabledInteractiveMixin, SbbDisabledMixin } from "../core/mixins.js";
|
|
4
4
|
import { SbbButtonCommonElementMixin, buttonCommonStyle, buttonTransparentStyle } from "./common.js";
|
|
5
5
|
var __defProp = Object.defineProperty;
|
|
6
6
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -13,7 +13,7 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
13
13
|
return result;
|
|
14
14
|
};
|
|
15
15
|
let SbbTransparentButtonLinkElement = class extends SbbButtonCommonElementMixin(
|
|
16
|
-
SbbDisabledMixin(SbbLinkBaseElement)
|
|
16
|
+
SbbDisabledInteractiveMixin(SbbDisabledMixin(SbbLinkBaseElement))
|
|
17
17
|
) {
|
|
18
18
|
};
|
|
19
19
|
SbbTransparentButtonLinkElement.styles = [buttonCommonStyle, buttonTransparentStyle];
|
|
@@ -23,4 +23,4 @@ SbbTransparentButtonLinkElement = __decorateClass([
|
|
|
23
23
|
export {
|
|
24
24
|
SbbTransparentButtonLinkElement
|
|
25
25
|
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwYXJlbnQtYnV0dG9uLWxpbmsuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9idXR0b24vdHJhbnNwYXJlbnQtYnV0dG9uLWxpbmsvdHJhbnNwYXJlbnQtYnV0dG9uLWxpbmsudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJMaW5rQmFzZUVsZW1lbnQgfSBmcm9tICcuLi8uLi9jb3JlL2Jhc2UtZWxlbWVudHMuanMnO1xuaW1wb3J0IHsgU2JiRGlzYWJsZWRJbnRlcmFjdGl2ZU1peGluLCBTYmJEaXNhYmxlZE1peGluIH0gZnJvbSAnLi4vLi4vY29yZS9taXhpbnMuanMnO1xuaW1wb3J0IHtcbiAgYnV0dG9uQ29tbW9uU3R5bGUsXG4gIGJ1dHRvblRyYW5zcGFyZW50U3R5bGUsXG4gIFNiYkJ1dHRvbkNvbW1vbkVsZW1lbnRNaXhpbixcbn0gZnJvbSAnLi4vY29tbW9uLmpzJztcblxuLyoqXG4gKiBJdCBkaXNwbGF5cyBhIGJ1dHRvbiBlbmhhbmNlZCB3aXRoIHRoZSBTQkIgRGVzaWduIGluIHRoZSAndHJhbnNwYXJlbnQnIHZhcmlhbnQsIHdoaWNoIHdpbGwgYmVoYXZlIGFzIGEgbGluay5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSB0cmFuc3BhcmVudC1idXR0b24tbGluay5cbiAqIEBzbG90IGljb24gLSBTbG90IHVzZWQgdG8gZGlzcGxheSB0aGUgaWNvbiwgaWYgb25lIGlzIHNldFxuICovXG5AY3VzdG9tRWxlbWVudCgnc2JiLXRyYW5zcGFyZW50LWJ1dHRvbi1saW5rJylcbmV4cG9ydCBjbGFzcyBTYmJUcmFuc3BhcmVudEJ1dHRvbkxpbmtFbGVtZW50IGV4dGVuZHMgU2JiQnV0dG9uQ29tbW9uRWxlbWVudE1peGluKFxuICBTYmJEaXNhYmxlZEludGVyYWN0aXZlTWl4aW4oU2JiRGlzYWJsZWRNaXhpbihTYmJMaW5rQmFzZUVsZW1lbnQpKSxcbikge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYnV0dG9uQ29tbW9uU3R5bGUsIGJ1dHRvblRyYW5zcGFyZW50U3R5bGVdO1xufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRyYW5zcGFyZW50LWJ1dHRvbi1saW5rJzogU2JiVHJhbnNwYXJlbnRCdXR0b25MaW5rRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBa0JPLElBQU0sa0NBQU4sY0FBOEM7QUFBQSxFQUNuRCw0QkFBNEIsaUJBQWlCLGtCQUFrQixDQUFDO0FBQ2xFLEVBQUU7QUFFRjtBQUphLGdDQUdZLFNBQXlCLENBQUMsbUJBQW1CLHNCQUFzQjtBQUgvRSxrQ0FBTixnQkFBQTtBQUFBLEVBRE4sY0FBYyw2QkFBNkI7QUFBQSxHQUMvQiwrQkFBQTsifQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { customElement } from "lit/decorators.js";
|
|
2
2
|
import { SbbButtonBaseElement } from "../core/base-elements.js";
|
|
3
|
-
import {
|
|
3
|
+
import { SbbDisabledTabIndexActionMixin } from "../core/mixins.js";
|
|
4
4
|
import { SbbButtonCommonElementMixin, buttonCommonStyle, buttonTransparentStyle } from "./common.js";
|
|
5
5
|
var __defProp = Object.defineProperty;
|
|
6
6
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -13,7 +13,7 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
13
13
|
return result;
|
|
14
14
|
};
|
|
15
15
|
let SbbTransparentButtonElement = class extends SbbButtonCommonElementMixin(
|
|
16
|
-
|
|
16
|
+
SbbDisabledTabIndexActionMixin(SbbButtonBaseElement)
|
|
17
17
|
) {
|
|
18
18
|
};
|
|
19
19
|
SbbTransparentButtonElement.styles = [buttonCommonStyle, buttonTransparentStyle];
|
|
@@ -23,4 +23,4 @@ SbbTransparentButtonElement = __decorateClass([
|
|
|
23
23
|
export {
|
|
24
24
|
SbbTransparentButtonElement
|
|
25
25
|
};
|
|
26
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwYXJlbnQtYnV0dG9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvYnV0dG9uL3RyYW5zcGFyZW50LWJ1dHRvbi90cmFuc3BhcmVudC1idXR0b24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDU1NSZXN1bHRHcm91cCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBjdXN0b21FbGVtZW50IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBTYmJCdXR0b25CYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBTYmJEaXNhYmxlZFRhYkluZGV4QWN0aW9uTWl4aW4gfSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQge1xuICBidXR0b25Db21tb25TdHlsZSxcbiAgYnV0dG9uVHJhbnNwYXJlbnRTdHlsZSxcbiAgU2JiQnV0dG9uQ29tbW9uRWxlbWVudE1peGluLFxufSBmcm9tICcuLi9jb21tb24uanMnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGEgYnV0dG9uIGVuaGFuY2VkIHdpdGggdGhlIFNCQiBEZXNpZ24gaW4gdGhlICd0cmFuc3BhcmVudCcgdmFyaWFudC5cbiAqXG4gKiBAc2xvdCAtIFVzZSB0aGUgdW5uYW1lZCBzbG90IHRvIGFkZCBjb250ZW50IHRvIHRoZSB0cmFuc3BhcmVudC1idXR0b24uXG4gKiBAc2xvdCBpY29uIC0gU2xvdCB1c2VkIHRvIGRpc3BsYXkgdGhlIGljb24sIGlmIG9uZSBpcyBzZXRcbiAqL1xuQGN1c3RvbUVsZW1lbnQoJ3NiYi10cmFuc3BhcmVudC1idXR0b24nKVxuZXhwb3J0IGNsYXNzIFNiYlRyYW5zcGFyZW50QnV0dG9uRWxlbWVudCBleHRlbmRzIFNiYkJ1dHRvbkNvbW1vbkVsZW1lbnRNaXhpbihcbiAgU2JiRGlzYWJsZWRUYWJJbmRleEFjdGlvbk1peGluKFNiYkJ1dHRvbkJhc2VFbGVtZW50KSxcbikge1xuICBwdWJsaWMgc3RhdGljIG92ZXJyaWRlIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBbYnV0dG9uQ29tbW9uU3R5bGUsIGJ1dHRvblRyYW5zcGFyZW50U3R5bGVdO1xufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLXRyYW5zcGFyZW50LWJ1dHRvbic6IFNiYlRyYW5zcGFyZW50QnV0dG9uRWxlbWVudDtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBa0JPLElBQU0sOEJBQU4sY0FBMEM7QUFBQSxFQUMvQywrQkFBK0Isb0JBQW9CO0FBQ3JELEVBQUU7QUFFRjtBQUphLDRCQUdZLFNBQXlCLENBQUMsbUJBQW1CLHNCQUFzQjtBQUgvRSw4QkFBTixnQkFBQTtBQUFBLEVBRE4sY0FBYyx3QkFBd0I7QUFBQSxHQUMxQiwyQkFBQTsifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card-badge.d.ts","sourceRoot":"","sources":["../../../../../src/elements/card/card-badge/card-badge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1D,OAAO,EAAQ,UAAU,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"card-badge.d.ts","sourceRoot":"","sources":["../../../../../src/elements/card/card-badge/card-badge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAC1D,OAAO,EAAQ,UAAU,EAAE,MAAM,KAAK,CAAC;AAOvC;;;;;GAKG;AACH,qBAKa,mBAAoB,SAAQ,UAAU;IACjD,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,+BAA+B;IACK,KAAK,EAAE,UAAU,GAAG,OAAO,CAAc;IAE7E,OAAO,CAAC,cAAc,CAAC,CAAqB;IAE5B,iBAAiB,IAAI,IAAI;IAQzB,oBAAoB,IAAI,IAAI;cAQzB,MAAM,IAAI,cAAc;CAY5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,gBAAgB,EAAE,mBAAmB,CAAC;KACvC;CACF"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { css, LitElement, html } from "lit";
|
|
2
2
|
import { property, customElement } from "lit/decorators.js";
|
|
3
3
|
import { hostAttributes } from "../core/decorators.js";
|
|
4
|
-
import { getDocumentWritingMode } from "../core/dom.js";
|
|
5
4
|
const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
|
|
6
5
|
/*
|
|
7
6
|
* SBB table mixin
|
|
@@ -81,7 +80,7 @@ const style = css`/** This mixin can be used to avoid spacing problems by insert
|
|
|
81
80
|
margin-inline-end: calc(var(--sbb-spacing-fixed-3x) * -1);
|
|
82
81
|
transform: skew(16deg, 0deg);
|
|
83
82
|
}
|
|
84
|
-
:host(
|
|
83
|
+
:host(:dir(rtl)) .sbb-card-badge-background {
|
|
85
84
|
transform: skew(-16deg, 0deg);
|
|
86
85
|
}
|
|
87
86
|
.sbb-card-badge-background::before {
|
|
@@ -148,11 +147,10 @@ SbbCardBadgeElement = __decorateClass([
|
|
|
148
147
|
customElement("sbb-card-badge"),
|
|
149
148
|
hostAttributes({
|
|
150
149
|
slot: "badge",
|
|
151
|
-
role: "text"
|
|
152
|
-
dir: getDocumentWritingMode()
|
|
150
|
+
role: "text"
|
|
153
151
|
})
|
|
154
152
|
], SbbCardBadgeElement);
|
|
155
153
|
export {
|
|
156
154
|
SbbCardBadgeElement
|
|
157
155
|
};
|
|
158
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
156
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1iYWRnZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NhcmQvY2FyZC1iYWRnZS9jYXJkLWJhZGdlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQ1NTUmVzdWx0R3JvdXAsIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGh0bWwsIExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgY3VzdG9tRWxlbWVudCwgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB7IGhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHN0eWxlIGZyb20gJy4vY2FyZC1iYWRnZS5zY3NzP2xpdCZpbmxpbmUnO1xuXG4vKipcbiAqIEl0IGRpc3BsYXlzIGNvbnRlbnQgd2l0aGluIGEgYmFkZ2UuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgY29udGVudCB0byB0aGUgYmFkZ2UuXG4gKiAgIENvbnRlbnQgcGFydHMgc2hvdWxkIGJlIHdyYXBwZWQgaW4gYDxzcGFuPmAgdGFncyB0byBhY2hpZXZlIGNvcnJlY3Qgc3BhY2luZ3MuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItY2FyZC1iYWRnZScpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICBzbG90OiAnYmFkZ2UnLFxuICByb2xlOiAndGV4dCcsXG59KVxuZXhwb3J0IGNsYXNzIFNiYkNhcmRCYWRnZUVsZW1lbnQgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqIENvbG9yIG9mIHRoZSBjYXJkIGJhZGdlLiAqL1xuICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlIH0pIHB1YmxpYyBjb2xvcjogJ2NoYXJjb2FsJyB8ICd3aGl0ZScgPSAnY2hhcmNvYWwnO1xuXG4gIHByaXZhdGUgX3BhcmVudEVsZW1lbnQ/OiBIVE1MRWxlbWVudCB8IG51bGw7XG5cbiAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5fcGFyZW50RWxlbWVudCA9IHRoaXMucGFyZW50RWxlbWVudDtcbiAgICBpZiAodGhpcy5fcGFyZW50RWxlbWVudCkge1xuICAgICAgdGhpcy5fcGFyZW50RWxlbWVudC50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtaGFzLWNhcmQtYmFkZ2UnLCB0cnVlKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgZGlzY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICBpZiAodGhpcy5fcGFyZW50RWxlbWVudCkge1xuICAgICAgdGhpcy5fcGFyZW50RWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtaGFzLWNhcmQtYmFkZ2UnKTtcbiAgICB9XG4gICAgdGhpcy5fcGFyZW50RWxlbWVudCA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2FyZC1iYWRnZS13cmFwcGVyXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic2JiLWNhcmQtYmFkZ2VcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNiYi1jYXJkLWJhZGdlLWJhY2tncm91bmRcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L3NwYW4+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJzYmItY2FyZC1iYWRnZS1jb250ZW50XCI+XG4gICAgICAgICAgICA8c2xvdD48L3Nsb3Q+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgYDtcbiAgfVxufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG4gIGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbiAgICAnc2JiLWNhcmQtYmFkZ2UnOiBTYmJDYXJkQmFkZ2VFbGVtZW50O1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW1CYSxJQUFBLHNCQUFOLGNBQWtDLFdBQVc7QUFBQSxFQUE3QyxjQUFBO0FBQUEsVUFBQSxHQUFBLFNBQUE7QUFJd0IsU0FBTyxRQUE4QjtBQUFBLEVBQUE7QUFBQSxFQUlsRCxvQkFBMEI7QUFDeEMsVUFBTSxrQkFBa0I7QUFDeEIsU0FBSyxpQkFBaUIsS0FBSztBQUMzQixRQUFJLEtBQUssZ0JBQWdCO0FBQ2xCLFdBQUEsZUFBZSxnQkFBZ0IsdUJBQXVCLElBQUk7QUFBQSxJQUNqRTtBQUFBLEVBQ0Y7QUFBQSxFQUVnQix1QkFBNkI7QUFDM0MsVUFBTSxxQkFBcUI7QUFDM0IsUUFBSSxLQUFLLGdCQUFnQjtBQUNsQixXQUFBLGVBQWUsZ0JBQWdCLHFCQUFxQjtBQUFBLElBQzNEO0FBQ0EsU0FBSyxpQkFBaUI7QUFBQSxFQUN4QjtBQUFBLEVBRW1CLFNBQXlCO0FBQ25DLFdBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVVUO0FBQ0Y7QUFwQ2Esb0JBQ1ksU0FBeUI7QUFHWixnQkFBQTtBQUFBLEVBQW5DLFNBQVMsRUFBRSxTQUFTLE1BQU07QUFBQSxHQUpoQixvQkFJeUIsV0FBQSxTQUFBLENBQUE7QUFKekIsc0JBQU4sZ0JBQUE7QUFBQSxFQUxOLGNBQWMsZ0JBQWdCO0FBQUEsRUFDOUIsZUFBZTtBQUFBLElBQ2QsTUFBTTtBQUFBLElBQ04sTUFBTTtBQUFBLEVBQUEsQ0FDUDtBQUFBLEdBQ1ksbUJBQUE7In0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"card-action-common.d.ts","sourceRoot":"","sources":["../../../../../src/elements/card/common/card-action-common.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"card-action-common.d.ts","sourceRoot":"","sources":["../../../../../src/elements/card/common/card-action-common.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAExE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAKhE,OAAO,6BAA6B,CAAC;AAErC,MAAM,CAAC,OAAO,OAAO,mCAAmC;IAC/C,MAAM,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,CAAC;CACzC;AAGD,eAAO,MAAM,+BAA+B,GAC1C,CAAC,SAAS,mBAAmB,CAAC,oBAAoB,CAAC,cAEvC,CAAC,KACZ,mBAAmB,CAAC,mCAAmC,CAAC,GAAG,CAqF7D,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import { MutationController } from "@lit-labs/observers/mutation-controller.js";
|
|
1
2
|
import { property } from "lit/decorators.js";
|
|
2
3
|
import { html } from "lit/static-html.js";
|
|
3
4
|
import { IS_FOCUSABLE_QUERY } from "../core/a11y.js";
|
|
4
5
|
import { hostAttributes } from "../core/decorators.js";
|
|
5
|
-
import { AgnosticMutationObserver } from "../core/observers.js";
|
|
6
6
|
import { css } from "lit";
|
|
7
7
|
import "../screen-reader-only.js";
|
|
8
8
|
const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
|
|
@@ -53,9 +53,11 @@ const SbbCardActionCommonElementMixin = (superClass) => {
|
|
|
53
53
|
super(...arguments);
|
|
54
54
|
this._active = false;
|
|
55
55
|
this._card = null;
|
|
56
|
-
this._cardMutationObserver = new
|
|
57
|
-
|
|
58
|
-
|
|
56
|
+
this._cardMutationObserver = new MutationController(this, {
|
|
57
|
+
target: null,
|
|
58
|
+
config: { childList: true, subtree: true },
|
|
59
|
+
callback: () => this._checkForSlottedActions()
|
|
60
|
+
});
|
|
59
61
|
}
|
|
60
62
|
set active(value) {
|
|
61
63
|
this._active = value;
|
|
@@ -85,10 +87,7 @@ const SbbCardActionCommonElementMixin = (superClass) => {
|
|
|
85
87
|
this._card.toggleAttribute("data-has-active-action", this.active);
|
|
86
88
|
this._card.setAttribute("data-action-role", this.actionRole);
|
|
87
89
|
this._checkForSlottedActions();
|
|
88
|
-
this._cardMutationObserver.observe(this._card
|
|
89
|
-
childList: true,
|
|
90
|
-
subtree: true
|
|
91
|
-
});
|
|
90
|
+
this._cardMutationObserver.observe(this._card);
|
|
92
91
|
}
|
|
93
92
|
}
|
|
94
93
|
disconnectedCallback() {
|
|
@@ -100,7 +99,6 @@ const SbbCardActionCommonElementMixin = (superClass) => {
|
|
|
100
99
|
this._card.querySelectorAll(`[data-card-focusable]`).forEach((el) => el.removeAttribute("data-card-focusable"));
|
|
101
100
|
this._card = null;
|
|
102
101
|
}
|
|
103
|
-
this._cardMutationObserver.disconnect();
|
|
104
102
|
}
|
|
105
103
|
renderTemplate() {
|
|
106
104
|
return html`
|
|
@@ -124,4 +122,4 @@ const SbbCardActionCommonElementMixin = (superClass) => {
|
|
|
124
122
|
export {
|
|
125
123
|
SbbCardActionCommonElementMixin
|
|
126
124
|
};
|
|
127
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
125
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY2FyZC9jb21tb24vY2FyZC1hY3Rpb24tY29tbW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE11dGF0aW9uQ29udHJvbGxlciB9IGZyb20gJ0BsaXQtbGFicy9vYnNlcnZlcnMvbXV0YXRpb24tY29udHJvbGxlci5qcyc7XG5pbXBvcnQgdHlwZSB7IENTU1Jlc3VsdEdyb3VwLCBUZW1wbGF0ZVJlc3VsdCB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcbmltcG9ydCB7IGh0bWwgfSBmcm9tICdsaXQvc3RhdGljLWh0bWwuanMnO1xuXG5pbXBvcnQgeyBJU19GT0NVU0FCTEVfUVVFUlkgfSBmcm9tICcuLi8uLi9jb3JlL2ExMXkuanMnO1xuaW1wb3J0IHR5cGUgeyBTYmJBY3Rpb25CYXNlRWxlbWVudCB9IGZyb20gJy4uLy4uL2NvcmUvYmFzZS1lbGVtZW50cy5qcyc7XG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5pbXBvcnQgdHlwZSB7IEFic3RyYWN0Q29uc3RydWN0b3IgfSBmcm9tICcuLi8uLi9jb3JlL21peGlucy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNiYkNhcmRFbGVtZW50IH0gZnJvbSAnLi4vY2FyZC5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL2NhcmQtYWN0aW9uLnNjc3M/bGl0JmlubGluZSc7XG5cbmltcG9ydCAnLi4vLi4vc2NyZWVuLXJlYWRlci1vbmx5LmpzJztcblxuZXhwb3J0IGRlY2xhcmUgY2xhc3MgU2JiQ2FyZEFjdGlvbkNvbW1vbkVsZW1lbnRNaXhpblR5cGUge1xuICBwdWJsaWMgYWN0aXZlOiBib29sZWFuO1xuICBwcm90ZWN0ZWQgYWN0aW9uUm9sZTogJ2xpbmsnIHwgJ2J1dHRvbic7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBjb25zdCBTYmJDYXJkQWN0aW9uQ29tbW9uRWxlbWVudE1peGluID0gPFxuICBUIGV4dGVuZHMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJBY3Rpb25CYXNlRWxlbWVudD4sXG4+KFxuICBzdXBlckNsYXNzOiBULFxuKTogQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJDYXJkQWN0aW9uQ29tbW9uRWxlbWVudE1peGluVHlwZT4gJiBUID0+IHtcbiAgQGhvc3RBdHRyaWJ1dGVzKHtcbiAgICBzbG90OiAnYWN0aW9uJyxcbiAgfSlcbiAgYWJzdHJhY3QgY2xhc3MgU2JiQ2FyZEFjdGlvbkNvbW1vbkVsZW1lbnRcbiAgICBleHRlbmRzIHN1cGVyQ2xhc3NcbiAgICBpbXBsZW1lbnRzIFBhcnRpYWw8U2JiQ2FyZEFjdGlvbkNvbW1vbkVsZW1lbnRNaXhpblR5cGU+XG4gIHtcbiAgICBwdWJsaWMgc3RhdGljIHN0eWxlczogQ1NTUmVzdWx0R3JvdXAgPSBzdHlsZTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBjYXJkIGlzIGFjdGl2ZS4gKi9cbiAgICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pXG4gICAgcHVibGljIHNldCBhY3RpdmUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgIHRoaXMuX2FjdGl2ZSA9IHZhbHVlO1xuICAgICAgdGhpcy5fb25BY3RpdmVDaGFuZ2UoKTtcbiAgICB9XG4gICAgcHVibGljIGdldCBhY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5fYWN0aXZlO1xuICAgIH1cbiAgICBwcml2YXRlIF9hY3RpdmU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBhY3Rpb25Sb2xlOiAnbGluaycgfCAnYnV0dG9uJztcblxuICAgIHByaXZhdGUgX2NhcmQ6IFNiYkNhcmRFbGVtZW50IHwgbnVsbCA9IG51bGw7XG4gICAgcHJpdmF0ZSBfY2FyZE11dGF0aW9uT2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25Db250cm9sbGVyKHRoaXMsIHtcbiAgICAgIHRhcmdldDogbnVsbCxcbiAgICAgIGNvbmZpZzogeyBjaGlsZExpc3Q6IHRydWUsIHN1YnRyZWU6IHRydWUgfSxcbiAgICAgIGNhbGxiYWNrOiAoKSA9PiB0aGlzLl9jaGVja0ZvclNsb3R0ZWRBY3Rpb25zKCksXG4gICAgfSk7XG5cbiAgICBwcml2YXRlIF9vbkFjdGl2ZUNoYW5nZSgpOiB2b2lkIHtcbiAgICAgIGlmICh0aGlzLl9jYXJkKSB7XG4gICAgICAgIHRoaXMuX2NhcmQudG9nZ2xlQXR0cmlidXRlKCdkYXRhLWhhcy1hY3RpdmUtYWN0aW9uJywgdGhpcy5hY3RpdmUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgX2NoZWNrRm9yU2xvdHRlZEFjdGlvbnMoKTogdm9pZCB7XG4gICAgICBjb25zdCBjYXJkRm9jdXNhYmxlQXR0cmlidXRlTmFtZSA9ICdkYXRhLWNhcmQtZm9jdXNhYmxlJztcblxuICAgICAgQXJyYXkuZnJvbSh0aGlzLl9jYXJkPy5xdWVyeVNlbGVjdG9yQWxsPy4oSVNfRk9DVVNBQkxFX1FVRVJZKSA/PyBbXSlcbiAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAoZWwpID0+XG4gICAgICAgICAgICBlbC5sb2NhbE5hbWUgIT09ICdzYmItY2FyZC1saW5rJyAmJlxuICAgICAgICAgICAgZWwubG9jYWxOYW1lICE9PSAnc2JiLWNhcmQtYnV0dG9uJyAmJlxuICAgICAgICAgICAgIWVsLmhhc0F0dHJpYnV0ZShjYXJkRm9jdXNhYmxlQXR0cmlidXRlTmFtZSksXG4gICAgICAgIClcbiAgICAgICAgLmZvckVhY2goKGVsOiBFbGVtZW50KSA9PiBlbC5zZXRBdHRyaWJ1dGUoY2FyZEZvY3VzYWJsZUF0dHJpYnV0ZU5hbWUsICcnKSk7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIGNvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgICAgc3VwZXIuY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICAgIHRoaXMuX2NhcmQgPSB0aGlzLmNsb3Nlc3Q/Lignc2JiLWNhcmQnKTtcbiAgICAgIGlmICh0aGlzLl9jYXJkKSB7XG4gICAgICAgIHRoaXMuX2NhcmQudG9nZ2xlQXR0cmlidXRlKCdkYXRhLWhhcy1hY3Rpb24nLCB0cnVlKTtcbiAgICAgICAgdGhpcy5fY2FyZC50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtaGFzLWFjdGl2ZS1hY3Rpb24nLCB0aGlzLmFjdGl2ZSk7XG4gICAgICAgIHRoaXMuX2NhcmQuc2V0QXR0cmlidXRlKCdkYXRhLWFjdGlvbi1yb2xlJywgdGhpcy5hY3Rpb25Sb2xlKTtcblxuICAgICAgICB0aGlzLl9jaGVja0ZvclNsb3R0ZWRBY3Rpb25zKCk7XG4gICAgICAgIHRoaXMuX2NhcmRNdXRhdGlvbk9ic2VydmVyLm9ic2VydmUodGhpcy5fY2FyZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICAgIGlmICh0aGlzLl9jYXJkKSB7XG4gICAgICAgIFsnZGF0YS1oYXMtYWN0aW9uJywgJ2RhdGEtaGFzLWFjdGl2ZS1hY3Rpb24nLCAnZGF0YS1hY3Rpb24tcm9sZSddLmZvckVhY2goKG5hbWUpID0+XG4gICAgICAgICAgdGhpcy5fY2FyZCEucmVtb3ZlQXR0cmlidXRlKG5hbWUpLFxuICAgICAgICApO1xuICAgICAgICB0aGlzLl9jYXJkXG4gICAgICAgICAgLnF1ZXJ5U2VsZWN0b3JBbGwoYFtkYXRhLWNhcmQtZm9jdXNhYmxlXWApXG4gICAgICAgICAgLmZvckVhY2goKGVsKSA9PiBlbC5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtY2FyZC1mb2N1c2FibGUnKSk7XG4gICAgICAgIHRoaXMuX2NhcmQgPSBudWxsO1xuICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXJUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlc3VsdCB7XG4gICAgICByZXR1cm4gaHRtbGBcbiAgICAgICAgPHNiYi1zY3JlZW4tcmVhZGVyLW9ubHk+XG4gICAgICAgICAgPHNsb3Q+PC9zbG90PlxuICAgICAgICA8L3NiYi1zY3JlZW4tcmVhZGVyLW9ubHk+XG4gICAgICBgO1xuICAgIH1cbiAgfVxuICByZXR1cm4gU2JiQ2FyZEFjdGlvbkNvbW1vbkVsZW1lbnQgYXMgdW5rbm93biBhcyBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkNhcmRBY3Rpb25Db21tb25FbGVtZW50TWl4aW5UeXBlPiAmXG4gICAgVDtcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFCYSxNQUFBLGtDQUFrQyxDQUc3QyxlQUNpRTtBQUlsRCxNQUFBLDZCQUFmLGNBQ1UsV0FFVjtBQUFBLElBSEEsY0FBQTtBQUFBLFlBQUEsR0FBQSxTQUFBO0FBZUUsV0FBUSxVQUFtQjtBQUkzQixXQUFRLFFBQStCO0FBQy9CLFdBQUEsd0JBQXdCLElBQUksbUJBQW1CLE1BQU07QUFBQSxRQUMzRCxRQUFRO0FBQUEsUUFDUixRQUFRLEVBQUUsV0FBVyxNQUFNLFNBQVMsS0FBSztBQUFBLFFBQ3pDLFVBQVUsTUFBTSxLQUFLLHdCQUF3QjtBQUFBLE1BQUEsQ0FDOUM7QUFBQSxJQUFBO0FBQUEsSUFoQkQsSUFBVyxPQUFPLE9BQWdCO0FBQ2hDLFdBQUssVUFBVTtBQUNmLFdBQUssZ0JBQWdCO0FBQUEsSUFDdkI7QUFBQSxJQUNBLElBQVcsU0FBa0I7QUFDM0IsYUFBTyxLQUFLO0FBQUEsSUFDZDtBQUFBLElBWVEsa0JBQXdCO0FBQzlCLFVBQUksS0FBSyxPQUFPO0FBQ2QsYUFBSyxNQUFNLGdCQUFnQiwwQkFBMEIsS0FBSyxNQUFNO0FBQUEsTUFDbEU7QUFBQSxJQUNGO0FBQUEsSUFFUSwwQkFBZ0M7O0FBQ3RDLFlBQU0sNkJBQTZCO0FBRTdCLFlBQUEsT0FBSyxnQkFBSyxVQUFMLG1CQUFZLHFCQUFaLDRCQUErQix3QkFBdUIsQ0FBRSxDQUFBLEVBQ2hFO0FBQUEsUUFDQyxDQUFDLE9BQ0MsR0FBRyxjQUFjLG1CQUNqQixHQUFHLGNBQWMscUJBQ2pCLENBQUMsR0FBRyxhQUFhLDBCQUEwQjtBQUFBLE1BQUEsRUFFOUMsUUFBUSxDQUFDLE9BQWdCLEdBQUcsYUFBYSw0QkFBNEIsRUFBRSxDQUFDO0FBQUEsSUFDN0U7QUFBQSxJQUVnQixvQkFBMEI7O0FBQ3hDLFlBQU0sa0JBQWtCO0FBQ25CLFdBQUEsU0FBUSxVQUFLLFlBQUwsOEJBQWU7QUFDNUIsVUFBSSxLQUFLLE9BQU87QUFDVCxhQUFBLE1BQU0sZ0JBQWdCLG1CQUFtQixJQUFJO0FBQ2xELGFBQUssTUFBTSxnQkFBZ0IsMEJBQTBCLEtBQUssTUFBTTtBQUNoRSxhQUFLLE1BQU0sYUFBYSxvQkFBb0IsS0FBSyxVQUFVO0FBRTNELGFBQUssd0JBQXdCO0FBQ3hCLGFBQUEsc0JBQXNCLFFBQVEsS0FBSyxLQUFLO0FBQUEsTUFDL0M7QUFBQSxJQUNGO0FBQUEsSUFFZ0IsdUJBQTZCO0FBQzNDLFlBQU0scUJBQXFCO0FBQzNCLFVBQUksS0FBSyxPQUFPO0FBQ2IsU0FBQSxtQkFBbUIsMEJBQTBCLGtCQUFrQixFQUFFO0FBQUEsVUFBUSxDQUFDLFNBQ3pFLEtBQUssTUFBTyxnQkFBZ0IsSUFBSTtBQUFBLFFBQUE7QUFFN0IsYUFBQSxNQUNGLGlCQUFpQix1QkFBdUIsRUFDeEMsUUFBUSxDQUFDLE9BQU8sR0FBRyxnQkFBZ0IscUJBQXFCLENBQUM7QUFDNUQsYUFBSyxRQUFRO0FBQUEsTUFDZjtBQUFBLElBQ0Y7QUFBQSxJQUVtQixpQkFBaUM7QUFDM0MsYUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsSUFLVDtBQUFBLEVBQUE7QUE3RWEsNkJBSUMsU0FBeUI7QUFJNUIsa0JBQUE7QUFBQSxJQURWLFNBQVMsRUFBRSxTQUFTLE1BQU0sTUFBTSxTQUFTO0FBQUEsRUFBQSxHQVA3QiwyQkFRRixXQUFBLFVBQUEsQ0FBQTtBQVJiLCtCQUFBLGdCQUFBO0FBQUEsSUFIQyxlQUFlO0FBQUEsTUFDZCxNQUFNO0FBQUEsSUFBQSxDQUNQO0FBQUEsRUFDYyxHQUFBLDBCQUFBO0FBK0VSLFNBQUE7QUFFVDsifQ==
|
|
@@ -19,7 +19,6 @@ export declare class SbbStickyBarElement extends LitElement {
|
|
|
19
19
|
connectedCallback(): void;
|
|
20
20
|
protected firstUpdated(changedProperties: PropertyValues<this>): void;
|
|
21
21
|
private _toggleShadowVisibility;
|
|
22
|
-
disconnectedCallback(): void;
|
|
23
22
|
protected render(): TemplateResult;
|
|
24
23
|
}
|
|
25
24
|
declare global {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sticky-bar.d.ts","sourceRoot":"","sources":["../../../../../src/elements/container/sticky-bar/sticky-bar.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sticky-bar.d.ts","sourceRoot":"","sources":["../../../../../src/elements/container/sticky-bar/sticky-bar.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,cAAc,EAEnB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAOb;;;;;;;;;;GAUG;AACH,qBAIa,mBAAoB,SAAQ,UAAU;IACjD,OAAuB,MAAM,EAAE,cAAc,CAAS;IAEtD,2DAA2D;IACvB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAE7D,OAAO,CAAC,YAAY,CAAC,CAAkB;IACvC,OAAO,CAAC,SAAS,CAKd;IAEa,iBAAiB,IAAI,IAAI;cAYtB,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAU9E,OAAO,CAAC,uBAAuB;cAOZ,MAAM,IAAI,cAAc;CAU5C;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAE7B,gBAAgB,EAAE,mBAAmB,CAAC;KACvC;CACF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { IntersectionController } from "@lit-labs/observers/intersection-controller.js";
|
|
1
2
|
import { css, LitElement, html } from "lit";
|
|
2
3
|
import { property, customElement } from "lit/decorators.js";
|
|
3
4
|
import { hostAttributes } from "../core/decorators.js";
|
|
4
|
-
import { AgnosticIntersectionObserver } from "../core/observers.js";
|
|
5
5
|
const style = css`/** This mixin can be used to avoid spacing problems by inserting an invisible space as pseudo element. */
|
|
6
6
|
/*
|
|
7
7
|
* SBB table mixin
|
|
@@ -151,9 +151,12 @@ var __decorateClass = (decorators, target, key, kind) => {
|
|
|
151
151
|
let SbbStickyBarElement = class extends LitElement {
|
|
152
152
|
constructor() {
|
|
153
153
|
super(...arguments);
|
|
154
|
-
this._observer = new
|
|
155
|
-
|
|
156
|
-
|
|
154
|
+
this._observer = new IntersectionController(this, {
|
|
155
|
+
// Although `this` is observed, we have to postpone observing
|
|
156
|
+
// into firstUpdated() to achieve a correct initial state.
|
|
157
|
+
target: null,
|
|
158
|
+
callback: (entries) => this._toggleShadowVisibility(entries[0])
|
|
159
|
+
});
|
|
157
160
|
}
|
|
158
161
|
connectedCallback() {
|
|
159
162
|
super.connectedCallback();
|
|
@@ -179,10 +182,6 @@ let SbbStickyBarElement = class extends LitElement {
|
|
|
179
182
|
!entry.isIntersecting && entry.boundingClientRect.top > 0
|
|
180
183
|
);
|
|
181
184
|
}
|
|
182
|
-
disconnectedCallback() {
|
|
183
|
-
super.disconnectedCallback();
|
|
184
|
-
this._observer.disconnect();
|
|
185
|
-
}
|
|
186
185
|
render() {
|
|
187
186
|
return html`
|
|
188
187
|
<div class="sbb-sticky-bar__wrapper">
|
|
@@ -207,4 +206,4 @@ SbbStickyBarElement = __decorateClass([
|
|
|
207
206
|
export {
|
|
208
207
|
SbbStickyBarElement
|
|
209
208
|
};
|
|
210
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
209
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RpY2t5LWJhci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvbnRhaW5lci9zdGlja3ktYmFyL3N0aWNreS1iYXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW50ZXJzZWN0aW9uQ29udHJvbGxlciB9IGZyb20gJ0BsaXQtbGFicy9vYnNlcnZlcnMvaW50ZXJzZWN0aW9uLWNvbnRyb2xsZXIuanMnO1xuaW1wb3J0IHtcbiAgdHlwZSBDU1NSZXN1bHRHcm91cCxcbiAgaHRtbCxcbiAgTGl0RWxlbWVudCxcbiAgdHlwZSBQcm9wZXJ0eVZhbHVlcyxcbiAgdHlwZSBUZW1wbGF0ZVJlc3VsdCxcbn0gZnJvbSAnbGl0JztcbmltcG9ydCB7IGN1c3RvbUVsZW1lbnQsIHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcyB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCBzdHlsZSBmcm9tICcuL3N0aWNreS1iYXIuc2Nzcz9saXQmaW5saW5lJztcblxuLyoqXG4gKiBBIGNvbnRhaW5lciB0aGF0IHN0aWNrcyB0byB0aGUgYm90dG9tIG9mIHRoZSBwYWdlIGlmIHNsb3R0ZWQgaW50byBgc2JiLWNvbnRhaW5lcmAuXG4gKlxuICogQHNsb3QgLSBVc2UgdGhlIHVubmFtZWQgc2xvdCB0byBhZGQgY29udGVudCB0byB0aGUgc3RpY2t5IGJhci5cbiAqIEBjc3Nwcm9wIFstLXNiYi1zdGlja3ktYmFyLXBhZGRpbmctYmxvY2s9dmFyKC0tc2JiLXNwYWNpbmctcmVzcG9uc2l2ZS14cyldIC0gQmxvY2sgcGFkZGluZyBvZiB0aGUgc3RpY2t5IGJhci5cbiAqIEBjc3Nwcm9wIFstLXNiYi1zdGlja3ktYmFyLWJvdHRvbS1vdmVybGFwcGluZy1oZWlnaHQ9MHB4XSAtIERlZmluZSBhbiBhZGRpdGlvbmFsIGFyZWEgd2hlcmVcbiAqIHRoZSBzdGlja3kgYmFyIG92ZXJsYXBzIHRoZSBmb2xsb3dpbmcgY29udGVudCBvbiB0aGUgYm90dG9tLlxuICogVGhpcyBhcmVhIGJlY29tZXMgdmlzaWJsZSB3aGVuIHRoZSBzdGlja3kgYmFyIHRyYW5zaXRpb25zIGZyb20gc3RpY2t5IHRvIHRoZSBub3JtYWwgZG9jdW1lbnQgZmxvdy5cbiAqIEBjc3Nwcm9wIFstLXNiYi1zdGlja3ktYmFyLXotaW5kZXhdIC0gVG8gc3BlY2lmeSBhIGN1c3RvbSBzdGFjayBvcmRlcixcbiAqIHRoZSBgei1pbmRleGAgY2FuIGJlIG92ZXJyaWRkZW4gYnkgZGVmaW5pbmcgdGhpcyBDU1MgdmFyaWFibGUuXG4gKi9cbkBjdXN0b21FbGVtZW50KCdzYmItc3RpY2t5LWJhcicpXG5AaG9zdEF0dHJpYnV0ZXMoe1xuICBzbG90OiAnc3RpY2t5LWJhcicsXG59KVxuZXhwb3J0IGNsYXNzIFNiYlN0aWNreUJhckVsZW1lbnQgZXh0ZW5kcyBMaXRFbGVtZW50IHtcbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBzdHlsZXM6IENTU1Jlc3VsdEdyb3VwID0gc3R5bGU7XG5cbiAgLyoqIENvbG9yIG9mIHRoZSBjb250YWluZXIsIGxpa2UgdHJhbnNwYXJlbnQsIHdoaXRlIGV0Yy4gKi9cbiAgQHByb3BlcnR5KHsgcmVmbGVjdDogdHJ1ZSB9KSBwdWJsaWMgY29sb3I/OiAnd2hpdGUnIHwgJ21pbGsnO1xuXG4gIHByaXZhdGUgX2ludGVyc2VjdG9yPzogSFRNTFNwYW5FbGVtZW50O1xuICBwcml2YXRlIF9vYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25Db250cm9sbGVyKHRoaXMsIHtcbiAgICAvLyBBbHRob3VnaCBgdGhpc2AgaXMgb2JzZXJ2ZWQsIHdlIGhhdmUgdG8gcG9zdHBvbmUgb2JzZXJ2aW5nXG4gICAgLy8gaW50byBmaXJzdFVwZGF0ZWQoKSB0byBhY2hpZXZlIGEgY29ycmVjdCBpbml0aWFsIHN0YXRlLlxuICAgIHRhcmdldDogbnVsbCxcbiAgICBjYWxsYmFjazogKGVudHJpZXMpID0+IHRoaXMuX3RvZ2dsZVNoYWRvd1Zpc2liaWxpdHkoZW50cmllc1swXSksXG4gIH0pO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuXG4gICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5jbG9zZXN0KCdzYmItY29udGFpbmVyJyk7XG4gICAgaWYgKGNvbnRhaW5lcikge1xuICAgICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoJ2RhdGEtZXhwYW5kZWQnLCBjb250YWluZXIuZXhwYW5kZWQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5faW50ZXJzZWN0b3IpIHtcbiAgICAgIHRoaXMuX29ic2VydmVyLm9ic2VydmUodGhpcy5faW50ZXJzZWN0b3IpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaXJzdFVwZGF0ZWQoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgc3VwZXIuZmlyc3RVcGRhdGVkKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgIGlmICghdGhpcy5faW50ZXJzZWN0b3IpIHtcbiAgICAgIHRoaXMuX2ludGVyc2VjdG9yID0gdGhpcy5zaGFkb3dSb290IS5xdWVyeVNlbGVjdG9yKCcuc2JiLXN0aWNreS1iYXJfX2ludGVyc2VjdG9yJykhO1xuICAgICAgdGhpcy5fb2JzZXJ2ZXIub2JzZXJ2ZSh0aGlzLl9pbnRlcnNlY3Rvcik7XG4gICAgfVxuICAgIHRoaXMuX29ic2VydmVyLm9ic2VydmUodGhpcyk7XG4gIH1cblxuICBwcml2YXRlIF90b2dnbGVTaGFkb3dWaXNpYmlsaXR5KGVudHJ5OiBJbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5KTogdm9pZCB7XG4gICAgdGhpcy50b2dnbGVBdHRyaWJ1dGUoXG4gICAgICAnZGF0YS1zdGlja2luZycsXG4gICAgICAhZW50cnkuaXNJbnRlcnNlY3RpbmcgJiYgZW50cnkuYm91bmRpbmdDbGllbnRSZWN0LnRvcCA+IDAsXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSByZW5kZXIoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgIHJldHVybiBodG1sYFxuICAgICAgPGRpdiBjbGFzcz1cInNiYi1zdGlja3ktYmFyX193cmFwcGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYmItc3RpY2t5LWJhclwiPlxuICAgICAgICAgIDxzbG90Pjwvc2xvdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzYmItc3RpY2t5LWJhcl9faW50ZXJzZWN0b3JcIj48L2Rpdj5cbiAgICBgO1xuICB9XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgaW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICAgICdzYmItc3RpY2t5LWJhcic6IFNiYlN0aWNreUJhckVsZW1lbnQ7XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUE2QmEsSUFBQSxzQkFBTixjQUFrQyxXQUFXO0FBQUEsRUFBN0MsY0FBQTtBQUFBLFVBQUEsR0FBQSxTQUFBO0FBT0csU0FBQSxZQUFZLElBQUksdUJBQXVCLE1BQU07QUFBQTtBQUFBO0FBQUEsTUFHbkQsUUFBUTtBQUFBLE1BQ1IsVUFBVSxDQUFDLFlBQVksS0FBSyx3QkFBd0IsUUFBUSxDQUFDLENBQUM7QUFBQSxJQUFBLENBQy9EO0FBQUEsRUFBQTtBQUFBLEVBRWUsb0JBQTBCO0FBQ3hDLFVBQU0sa0JBQWtCO0FBRWxCLFVBQUEsWUFBWSxLQUFLLFFBQVEsZUFBZTtBQUM5QyxRQUFJLFdBQVc7QUFDUixXQUFBLGdCQUFnQixpQkFBaUIsVUFBVSxRQUFRO0FBQUEsSUFDMUQ7QUFDQSxRQUFJLEtBQUssY0FBYztBQUNoQixXQUFBLFVBQVUsUUFBUSxLQUFLLFlBQVk7QUFBQSxJQUMxQztBQUFBLEVBQ0Y7QUFBQSxFQUVtQixhQUFhLG1CQUErQztBQUM3RSxVQUFNLGFBQWEsaUJBQWlCO0FBRWhDLFFBQUEsQ0FBQyxLQUFLLGNBQWM7QUFDdEIsV0FBSyxlQUFlLEtBQUssV0FBWSxjQUFjLDhCQUE4QjtBQUM1RSxXQUFBLFVBQVUsUUFBUSxLQUFLLFlBQVk7QUFBQSxJQUMxQztBQUNLLFNBQUEsVUFBVSxRQUFRLElBQUk7QUFBQSxFQUM3QjtBQUFBLEVBRVEsd0JBQXdCLE9BQXdDO0FBQ2pFLFNBQUE7QUFBQSxNQUNIO0FBQUEsTUFDQSxDQUFDLE1BQU0sa0JBQWtCLE1BQU0sbUJBQW1CLE1BQU07QUFBQSxJQUFBO0FBQUEsRUFFNUQ7QUFBQSxFQUVtQixTQUF5QjtBQUNuQyxXQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFUO0FBQ0Y7QUFyRGEsb0JBQ1ksU0FBeUI7QUFHWixnQkFBQTtBQUFBLEVBQW5DLFNBQVMsRUFBRSxTQUFTLE1BQU07QUFBQSxHQUpoQixvQkFJeUIsV0FBQSxTQUFBLENBQUE7QUFKekIsc0JBQU4sZ0JBQUE7QUFBQSxFQUpOLGNBQWMsZ0JBQWdCO0FBQUEsRUFDOUIsZUFBZTtBQUFBLElBQ2QsTUFBTTtBQUFBLEVBQUEsQ0FDUDtBQUFBLEdBQ1ksbUJBQUE7In0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arrow-navigation.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/a11y/arrow-navigation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"arrow-navigation.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/a11y/arrow-navigation.ts"],"names":[],"mappings":"AAaA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAE/D;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAEvE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAEnE;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAEzE;AAkBD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAS/F"}
|
package/development/core/a11y.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { getDocumentWritingMode } from "./dom.js";
|
|
2
1
|
import { isServer } from "lit";
|
|
3
2
|
import { getEventTarget } from "./eventing.js";
|
|
4
3
|
function getPrevAndNextKeys() {
|
|
5
|
-
if (
|
|
4
|
+
if (document.documentElement.matches(":dir(rtl)")) {
|
|
6
5
|
return { prevKey: "ArrowRight", nextKey: "ArrowLeft" };
|
|
7
6
|
} else {
|
|
8
7
|
return { prevKey: "ArrowLeft", nextKey: "ArrowRight" };
|
|
@@ -292,4 +291,4 @@ export {
|
|
|
292
291
|
sbbInputModalityDetector,
|
|
293
292
|
setModalityOnNextFocus
|
|
294
293
|
};
|
|
295
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYTExeS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvYTExeS9hcnJvdy1uYXZpZ2F0aW9uLnRzIiwiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvYTExeS9mYWtlLWV2ZW50LWRldGVjdGlvbi50cyIsIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL2ExMXkvaW5wdXQtbW9kYWxpdHktZGV0ZWN0b3IudHMiLCIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9hMTF5L2ZvY3VzLXZpc2libGUtd2l0aGluLWNvbnRyb2xsZXIudHMiLCIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9hMTF5L2ludGVyYWN0aXZpdHktY2hlY2tlci50cyIsIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL2ExMXkvZm9jdXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0RG9jdW1lbnRXcml0aW5nTW9kZSB9IGZyb20gJy4uL2RvbS5qcyc7XG5cbmludGVyZmFjZSBQcmV2QW5kTmV4dEtleXMge1xuICBwcmV2S2V5OiBzdHJpbmc7XG4gIG5leHRLZXk6IHN0cmluZztcbn1cblxuZnVuY3Rpb24gZ2V0UHJldkFuZE5leHRLZXlzKCk6IFByZXZBbmROZXh0S2V5cyB7XG4gIGlmIChnZXREb2N1bWVudFdyaXRpbmdNb2RlKCkgPT09ICdydGwnKSB7XG4gICAgcmV0dXJuIHsgcHJldktleTogJ0Fycm93UmlnaHQnLCBuZXh0S2V5OiAnQXJyb3dMZWZ0JyB9O1xuICB9IGVsc2Uge1xuICAgIHJldHVybiB7IHByZXZLZXk6ICdBcnJvd0xlZnQnLCBuZXh0S2V5OiAnQXJyb3dSaWdodCcgfTtcbiAgfVxufVxuXG4vKipcbiAqIENoZWNrIGlmIHRoZSBrZXkgcHJlc3NlZCBpcyBhbW9uZyB0aG9zZSBhbGxvd2VkIGZvciBuYXZpZ2F0aW9uLlxuICogQHBhcmFtIGV2ZW50IFRoZSBrZXlib2FyZCBldmVudCB0byBjaGVjay5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQXJyb3dLZXlQcmVzc2VkKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogYm9vbGVhbiB7XG4gIHJldHVybiBbJ0Fycm93UmlnaHQnLCAnQXJyb3dMZWZ0JywgJ0Fycm93VXAnLCAnQXJyb3dEb3duJ10uaW5jbHVkZXMoZXZlbnQua2V5KTtcbn1cblxuLyoqXG4gKiBDaGVjayBpZiB0aGUga2V5IHByZXNzZWQgc2hvdWxkIG1vdmUgdGhlIG5hdmlnYXRpb24gdG8gdGhlIG5leHQgZWxlbWVudC5cbiAqIEBwYXJhbSBldmVudCBUaGUga2V5Ym9hcmQgZXZlbnQgdG8gY2hlY2suXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1ByZXZpb3VzQXJyb3dLZXlQcmVzc2VkKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogYm9vbGVhbiB7XG4gIHJldHVybiBldmVudC5rZXkgPT09ICdBcnJvd1VwJyB8fCBldmVudC5rZXkgPT09IGdldFByZXZBbmROZXh0S2V5cygpLnByZXZLZXk7XG59XG5cbi8qKlxuICogQ2hlY2sgaWYgdGhlIGtleSBwcmVzc2VkIHNob3VsZCBtb3ZlIHRoZSBuYXZpZ2F0aW9uIHRvIHRoZSBuZXh0IGVsZW1lbnQuXG4gKiBAcGFyYW0gZXZlbnQgVGhlIGtleWJvYXJkIGV2ZW50IHRvIGNoZWNrLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNOZXh0QXJyb3dLZXlQcmVzc2VkKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogYm9vbGVhbiB7XG4gIHJldHVybiBldmVudC5rZXkgPT09ICdBcnJvd0Rvd24nIHx8IGV2ZW50LmtleSA9PT0gZ2V0UHJldkFuZE5leHRLZXlzKCkubmV4dEtleTtcbn1cblxuLyoqXG4gKiBDaGVjayBpZiB0aGUga2V5IHByZXNzZWQgaXMgYW1vbmcgdGhvc2UgYWxsb3dlZCBmb3IgbmF2aWdhdGlvbi5cbiAqIEBwYXJhbSBldmVudCBUaGUga2V5Ym9hcmQgZXZlbnQgdG8gY2hlY2suXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0Fycm93S2V5T3JQYWdlS2V5c1ByZXNzZWQoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiBib29sZWFuIHtcbiAgcmV0dXJuIGlzQXJyb3dLZXlQcmVzc2VkKGV2ZW50KSB8fCBbJ1BhZ2VVcCcsICdQYWdlRG93bicsICdIb21lJywgJ0VuZCddLmluY2x1ZGVzKGV2ZW50LmtleSk7XG59XG5cbi8qKlxuICogQ2FsY3VsYXRlIHRoZSBpbmRleCBvZiB0aGUgbmV4dCBlbGVtZW50IGJhc2VkIG9uIHRoZSBnaXZlbiBvZmZzZXQuXG4gKiBAcGFyYW0gY3VycmVudEluZGV4IFRoZSBpbmRleCBvZiB0aGUgY3VycmVudCBlbGVtZW50LlxuICogQHBhcmFtIG1heEluZGV4IFRoZSBtYXhpbXVtIHBlcm1pdHRlZCB2YWx1ZSAoZS5nLiBhcnJheSBzaXplKS5cbiAqIEBwYXJhbSBvZmZzZXQgVGhlIGFtb3VudCB0byBtb3ZlIGJ5LlxuICovXG5mdW5jdGlvbiBjYWxjTmV4dEluZGV4SW5SYW5nZShjdXJyZW50SW5kZXg6IG51bWJlciwgbWF4SW5kZXg6IG51bWJlciwgb2Zmc2V0OiBudW1iZXIpOiBudW1iZXIge1xuICByZXR1cm4gKGN1cnJlbnRJbmRleCArIG9mZnNldCArIG1heEluZGV4KSAlIG1heEluZGV4O1xufVxuXG5mdW5jdGlvbiBnZXRMYXN0SW5kZXgoc2l6ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIHNpemUgLSAxO1xufVxuXG5jb25zdCBmaXJzdEluZGV4ID0gMDtcblxuLyoqXG4gKiBHZXRzIHRoZSBpbmRleCBvZiB0aGUgZWxlbWVudCB0byBtb3ZlIHRvLCBiYXNlZCBvbiB0aGUga2V5Ym9hcmQgaW5wdXQsIHRoZSBjdXJyZW50IGVsZW1lbnQgaW4gdGhlIGxpc3QgYW5kIHRoZSBsaXN0IHNpemUuXG4gKiBAcGFyYW0gZXZlbnQgVGhlIGtleWJvYXJkIGV2ZW50IHRvIGNoZWNrLlxuICogQHBhcmFtIGN1cnJlbnQgVGhlIGluZGV4IG9mIHRoZSBjdXJyZW50IGVsZW1lbnQgaW4gdGhlIGxpc3QuXG4gKiBAcGFyYW0gc2l6ZSBUaGUgc2l6ZSBvZiB0aGUgbGlzdC5cbiAqIEByZXR1cm5zIGlmIGl0IGlzIGEgJ3ByZXZpb3VzJyBldmVudCwgcmV0dXJucyB0aGUgaW5kZXggb2YgdGhlIHByZXZpb3VzIGVsZW1lbnQsXG4gKiBvciB0aGUgaW5kZXggb2YgdGhlIGxhc3Qgb25lIGlmIHRoZSBjdXJyZW50IGVsZW1lbnQgaXMgdGhlIGZpcnN0IGluIHRoZSBsaXN0O1xuICogaWYgaXQgaXMgYSAnbmV4dCcgZXZlbnQsIHJldHVybnMgdGhlIGluZGV4IG9mIHRoZSBuZXh0IGVsZW1lbnQsXG4gKiBvciB0aGUgaW5kZXggb2YgdGhlIGZpcnN0IG9uZSwgaWYgdGhlIGN1cnJlbnQgaXMgdGhlIGxhc3QgaW4gdGhlIGxpc3QuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXROZXh0RWxlbWVudEluZGV4KGV2ZW50OiBLZXlib2FyZEV2ZW50LCBjdXJyZW50OiBudW1iZXIsIHNpemU6IG51bWJlcik6IG51bWJlciB7XG4gIGNvbnN0IHsgcHJldktleSwgbmV4dEtleSB9ID0gZ2V0UHJldkFuZE5leHRLZXlzKCk7XG5cbiAgaWYgKGV2ZW50LmtleSA9PT0gcHJldktleSB8fCBldmVudC5rZXkgPT09ICdBcnJvd1VwJykge1xuICAgIHJldHVybiBjdXJyZW50IDwgZmlyc3RJbmRleCA/IGdldExhc3RJbmRleChzaXplKSA6IGNhbGNOZXh0SW5kZXhJblJhbmdlKGN1cnJlbnQsIHNpemUsIC0xKTtcbiAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09IG5leHRLZXkgfHwgZXZlbnQua2V5ID09PSAnQXJyb3dEb3duJykge1xuICAgIHJldHVybiBjdXJyZW50ID49IHNpemUgPyBmaXJzdEluZGV4IDogY2FsY05leHRJbmRleEluUmFuZ2UoY3VycmVudCwgc2l6ZSwgMSk7XG4gIH1cbiAgcmV0dXJuIGN1cnJlbnQ7XG59XG4iLCIvLyBUaGlzIGltcGxlbWVudGF0aW9uIGlzIHRha2VuIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9ibG9iL21haW4vc3JjL2Nkay9hMTF5L2Zha2UtZXZlbnQtZGV0ZWN0aW9uLnRzXG5cbi8qKiBHZXRzIHdoZXRoZXIgYW4gZXZlbnQgY291bGQgYmUgYSBmYWtlZCBgbW91c2Vkb3duYCBldmVudCBkaXNwYXRjaGVkIGJ5IGEgc2NyZWVuIHJlYWRlci4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0Zha2VNb3VzZWRvd25Gcm9tU2NyZWVuUmVhZGVyKGV2ZW50OiBNb3VzZUV2ZW50KTogYm9vbGVhbiB7XG4gIC8vIFNvbWUgc2NyZWVuIHJlYWRlcnMgd2lsbCBkaXNwYXRjaCBhIGZha2UgYG1vdXNlZG93bmAgZXZlbnQgd2hlbiBwcmVzc2luZyBlbnRlciBvciBzcGFjZSBvblxuICAvLyBhIGNsaWNrYWJsZSBlbGVtZW50LiBXZSBjYW4gZGlzdGluZ3Vpc2ggdGhlc2UgZXZlbnRzIHdoZW4gYGV2ZW50LmJ1dHRvbnNgIGlzIHplcm8sIG9yXG4gIC8vIGBldmVudC5kZXRhaWxgIGlzIHplcm8gZGVwZW5kaW5nIG9uIHRoZSBicm93c2VyOlxuICAvLyAtIGBldmVudC5idXR0b25zYCB3b3JrcyBvbiBGaXJlZm94LCBidXQgZmFpbHMgb24gQ2hyb21lLlxuICAvLyAtIGBkZXRhaWxgIHdvcmtzIG9uIENocm9tZSwgYnV0IGZhaWxzIG9uIEZpcmVmb3guXG4gIHJldHVybiBldmVudC5idXR0b25zID09PSAwIHx8IGV2ZW50LmRldGFpbCA9PT0gMDtcbn1cblxuLyoqIEdldHMgd2hldGhlciBhbiBldmVudCBjb3VsZCBiZSBhIGZha2VkIGB0b3VjaHN0YXJ0YCBldmVudCBkaXNwYXRjaGVkIGJ5IGEgc2NyZWVuIHJlYWRlci4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0Zha2VUb3VjaHN0YXJ0RnJvbVNjcmVlblJlYWRlcihldmVudDogVG91Y2hFdmVudCk6IGJvb2xlYW4ge1xuICBjb25zdCB0b3VjaDogVG91Y2ggfCB1bmRlZmluZWQgPVxuICAgIChldmVudC50b3VjaGVzICYmIGV2ZW50LnRvdWNoZXNbMF0pIHx8IChldmVudC5jaGFuZ2VkVG91Y2hlcyAmJiBldmVudC5jaGFuZ2VkVG91Y2hlc1swXSk7XG5cbiAgLy8gQSBmYWtlIGB0b3VjaHN0YXJ0YCBjYW4gYmUgZGlzdGluZ3Vpc2hlZCBmcm9tIGEgcmVhbCBvbmUgYnkgbG9va2luZyBhdCB0aGUgYGlkZW50aWZpZXJgXG4gIC8vIHdoaWNoIGlzIHR5cGljYWxseSA+PSAwIG9uIGEgcmVhbCBkZXZpY2UgdmVyc3VzIC0xIGZyb20gYSBzY3JlZW4gcmVhZGVyLiBKdXN0IHRvIGJlIHNhZmUsXG4gIC8vIHdlIGNhbiBhbHNvIGxvb2sgYXQgYHJhZGl1c1hgIGFuZCBgcmFkaXVzWWAuIFRoaXMgYmVoYXZpb3Igd2FzIG9ic2VydmVkIGFnYWluc3QgYSBXaW5kb3dzIDEwXG4gIC8vIGRldmljZSB3aXRoIGEgdG91Y2ggc2NyZWVuIHJ1bm5pbmcgTlZEQSB2MjAyMC40IGFuZCBGaXJlZm94IDg1IG9yIENocm9tZSA4OC5cbiAgcmV0dXJuIChcbiAgICAhIXRvdWNoICYmXG4gICAgdG91Y2guaWRlbnRpZmllciA9PT0gLTEgJiZcbiAgICAodG91Y2gucmFkaXVzWCA9PSBudWxsIHx8IHRvdWNoLnJhZGl1c1ggPT09IDEpICYmXG4gICAgKHRvdWNoLnJhZGl1c1kgPT0gbnVsbCB8fCB0b3VjaC5yYWRpdXNZID09PSAxKVxuICApO1xufVxuIiwiLy8gVGhpcyBpbXBsZW1lbnRhdGlvbiBpcyBpbnNwaXJlZCBieSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL2Jsb2IvbWFpbi9zcmMvY2RrL2ExMXkvaW5wdXQtbW9kYWxpdHkvaW5wdXQtbW9kYWxpdHktZGV0ZWN0b3IudHNcblxuaW1wb3J0IHsgaXNTZXJ2ZXIgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgeyBnZXRFdmVudFRhcmdldCB9IGZyb20gJy4uL2V2ZW50aW5nLmpzJztcblxuaW1wb3J0IHtcbiAgaXNGYWtlTW91c2Vkb3duRnJvbVNjcmVlblJlYWRlcixcbiAgaXNGYWtlVG91Y2hzdGFydEZyb21TY3JlZW5SZWFkZXIsXG59IGZyb20gJy4vZmFrZS1ldmVudC1kZXRlY3Rpb24uanMnO1xuXG5leHBvcnQgdHlwZSBTYmJJbnB1dE1vZGFsaXR5ID0gJ3RvdWNoJyB8ICdtb3VzZScgfCAna2V5Ym9hcmQnIHwgJ3Byb2dyYW0nIHwgbnVsbDtcblxuLyoqIE9wdGlvbnMgdG8gY29uZmlndXJlIHRoZSBiZWhhdmlvciBvZiB0aGUgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLiAqL1xuaW50ZXJmYWNlIFNiYklucHV0TW9kYWxpdHlEZXRlY3Rvck9wdGlvbnMge1xuICAvKiogS2V5cyB0byBpZ25vcmUgd2hlbiBkZXRlY3Rpbmcga2V5Ym9hcmQgaW5wdXQgbW9kYWxpdHkuICovXG4gIGlnbm9yZUtleXM/OiBudW1iZXJbXTtcbn1cblxuY29uc3QgU0hJRlQgPSAxNjtcbmNvbnN0IENPTlRST0wgPSAxNztcbmNvbnN0IEFMVCA9IDE4O1xuY29uc3QgTUVUQSA9IDkxOyAvLyBXSU5fS0VZX0xFRlRcbmNvbnN0IE1BQ19NRVRBID0gMjI0O1xuXG4vKipcbiAqIERlZmF1bHQgb3B0aW9ucyBmb3IgdGhlIFNiYklucHV0TW9kYWxpdHlEZXRlY3Rvci5cbiAqXG4gKiBNb2RpZmllciBrZXlzIGFyZSBpZ25vcmVkIGJ5IGRlZmF1bHQgKGkuZS4gd2hlbiBwcmVzc2VkIHdvbid0IGNhdXNlIHRoZSBzZXJ2aWNlIHRvIGRldGVjdFxuICoga2V5Ym9hcmQgaW5wdXQgbW9kYWxpdHkpIGZvciB0d28gcmVhc29uczpcbiAqXG4gKiAxLiBNb2RpZmllciBrZXlzIGFyZSBjb21tb25seSB1c2VkIHdpdGggbW91c2UgdG8gcGVyZm9ybSBhY3Rpb25zIHN1Y2ggYXMgJ3JpZ2h0IGNsaWNrJyBvciAnb3BlblxuICogICAgaW4gbmV3IHRhYicsIGFuZCBhcmUgdGh1cyBsZXNzIHJlcHJlc2VudGF0aXZlIG9mIGFjdHVhbCBrZXlib2FyZCBpbnRlcmFjdGlvbi5cbiAqIDIuIFZvaWNlT3ZlciB0cmlnZ2VycyBzb21lIGtleWJvYXJkIGV2ZW50cyB3aGVuIGxpbmVhcmx5IG5hdmlnYXRpbmcgd2l0aCBDb250cm9sICsgT3B0aW9uIChidXRcbiAqICAgIGNvbmZ1c2luZ2x5IG5vdCB3aXRoIENhcHMgTG9jaykuIFRodXMsIHRvIGhhdmUgcGFyaXR5IHdpdGggb3RoZXIgc2NyZWVuIHJlYWRlcnMsIHdlIGlnbm9yZVxuICogICAgdGhlc2Uga2V5cyBzbywgYXMgdG8gbm90IHVwZGF0ZSB0aGUgaW5wdXQgbW9kYWxpdHkuXG4gKlxuICogTm90ZSB0aGF0IHdlIGRvIG5vdCBieSBkZWZhdWx0IGlnbm9yZSB0aGUgcmlnaHQgTWV0YSBrZXkgb24gU2FmYXJpIGJlY2F1c2UgaXQgaGFzIHRoZSBzYW1lIGtleVxuICogY29kZSBhcyB0aGUgQ29udGV4dE1lbnUga2V5IG9uIG90aGVyIGJyb3dzZXJzLiBXaGVuIHdlIHN3aXRjaCB0byB1c2luZyBldmVudC5rZXksIHdlIGNhblxuICogZGlzdGluZ3Vpc2ggYmV0d2VlbiB0aGUgdHdvLlxuICovXG5jb25zdCBpbnB1dE1vZGFsaXR5RGV0ZWN0b3JPcHRpb25zOiBTYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3JPcHRpb25zID0ge1xuICBpZ25vcmVLZXlzOiBbQUxULCBDT05UUk9MLCBNQUNfTUVUQSwgTUVUQSwgU0hJRlRdLFxufTtcblxuLyoqXG4gKiBUaGUgYW1vdW50IG9mIHRpbWUgbmVlZGVkIHRvIHBhc3MgYWZ0ZXIgYSB0b3VjaHN0YXJ0IGV2ZW50IGluIG9yZGVyIGZvciBhIHN1YnNlcXVlbnQgbW91c2Vkb3duXG4gKiBldmVudCB0byBiZSBhdHRyaWJ1dGVkIGFzIG1vdXNlIGFuZCBub3QgdG91Y2guXG4gKlxuICogVGhyb3VnaCB0cmlhbCBhbmQgZXJyb3IgaXQgd2FzIGZvdW5kIHRoYXQgYSB2YWx1ZSBvZiBhcm91bmQgNjUwbXMgc2VlbXMgYXBwcm9wcmlhdGUuXG4gKi9cbmNvbnN0IHRvdWNoQnVmZmVyTXMgPSA2NTA7XG5cbi8qKlxuICogRXZlbnQgbGlzdGVuZXIgb3B0aW9ucyB0aGF0IGVuYWJsZSBjYXB0dXJpbmcgYW5kIGFsc28gbWFyayB0aGUgbGlzdGVuZXIgYXMgcGFzc2l2ZSBpZiB0aGUgYnJvd3NlclxuICogc3VwcG9ydHMgaXQuXG4gKi9cbmNvbnN0IG1vZGFsaXR5RXZlbnRMaXN0ZW5lck9wdGlvbnMgPSB7XG4gIHBhc3NpdmU6IHRydWUsXG4gIGNhcHR1cmU6IHRydWUsXG59O1xuXG4vKipcbiAqIFNlcnZpY2UgdGhhdCBkZXRlY3RzIHRoZSB1c2VyJ3MgaW5wdXQgbW9kYWxpdHkuXG4gKlxuICogVGhpcyBzZXJ2aWNlIGRvZXMgbm90IHVwZGF0ZSB0aGUgaW5wdXQgbW9kYWxpdHkgd2hlbiBhIHVzZXIgbmF2aWdhdGVzIHdpdGggYSBzY3JlZW4gcmVhZGVyXG4gKiAoZS5nLiBsaW5lYXIgbmF2aWdhdGlvbiB3aXRoIFZvaWNlT3Zlciwgb2JqZWN0IG5hdmlnYXRpb24gLyBicm93c2UgbW9kZSB3aXRoIE5WREEsIHZpcnR1YWwgUENcbiAqIGN1cnNvciBtb2RlIHdpdGggSkFXUykuIFRoaXMgaXMgaW4gcGFydCBkdWUgdG8gdGVjaG5pY2FsIGxpbWl0YXRpb25zIChpLmUuIGtleWJvYXJkIGV2ZW50cyBkbyBub3RcbiAqIGZpcmUgYXMgZXhwZWN0ZWQgaW4gdGhlc2UgbW9kZXMpIGJ1dCBpcyBhbHNvIGFyZ3VhYmx5IHRoZSBjb3JyZWN0IGJlaGF2aW9yLiBOYXZpZ2F0aW5nIHdpdGggYVxuICogc2NyZWVuIHJlYWRlciBpcyBha2luIHRvIHZpc3VhbGx5IHNjYW5uaW5nIGEgcGFnZSwgYW5kIHNob3VsZCBub3QgYmUgaW50ZXJwcmV0ZWQgYXMgYWN0dWFsIHVzZXJcbiAqIGlucHV0IGludGVyYWN0aW9uLlxuICpcbiAqIFdoZW4gYSB1c2VyIGlzIG5vdCBuYXZpZ2F0aW5nIGJ1dCAqaW50ZXJhY3RpbmcqIHdpdGggYSBzY3JlZW4gcmVhZGVyLCB0aGlzIHNlcnZpY2UgYXR0ZW1wdHMgdG9cbiAqIHVwZGF0ZSB0aGUgaW5wdXQgbW9kYWxpdHkgdG8ga2V5Ym9hcmQsIGJ1dCBpbiBnZW5lcmFsIHRoaXMgc2VydmljZSdzIGJlaGF2aW9yIGlzIGxhcmdlbHlcbiAqIHVuZGVmaW5lZC5cbiAqL1xuY2xhc3MgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yIHtcbiAgLyoqIFRoZSBtb3N0IHJlY2VudGx5IGRldGVjdGVkIGlucHV0IG1vZGFsaXR5LiAqL1xuICBwdWJsaWMgZ2V0IG1vc3RSZWNlbnRNb2RhbGl0eSgpOiBTYmJJbnB1dE1vZGFsaXR5IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX21vc3RSZWNlbnRNb2RhbGl0eTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbW9zdCByZWNlbnQgbW9kYWxpdHkgbXVzdCBiZSBpbml0aWFsaXNlZCB3aXRoIHRoZSB2YWx1ZSAnbW91c2UnIHRvIGNvdmVyIHRoZSBjYXNlIHdoZXJlIGFuIGFjdGlvbiBpc1xuICAgKiBwZXJmb3JtZWQgYnV0IG5vIG1vdXNlIG9yIGtleWJvYXJkIGV2ZW50IGhhcyB5ZXQgb2NjdXJyZWQgb24gdGhlIHBhZ2UgKGUuZy4gYHNiYi1wb3BvdmVyYCB3aXRoIGhvdmVyIHRyaWdnZXIpLlxuICAgKi9cbiAgcHJpdmF0ZSBfbW9zdFJlY2VudE1vZGFsaXR5OiBTYmJJbnB1dE1vZGFsaXR5IHwgbnVsbCA9ICdtb3VzZSc7XG5cbiAgLyoqXG4gICAqIFRoZSBtb3N0IHJlY2VudGx5IGRldGVjdGVkIGlucHV0IG1vZGFsaXR5IGV2ZW50IHRhcmdldC4gSXMgbnVsbCBpZiBubyBpbnB1dCBtb2RhbGl0eSBoYXMgYmVlblxuICAgKiBkZXRlY3RlZCBvciBpZiB0aGUgYXNzb2NpYXRlZCBldmVudCB0YXJnZXQgaXMgbnVsbCBmb3Igc29tZSB1bmtub3duIHJlYXNvbi5cbiAgICovXG4gIHB1YmxpYyBnZXQgbW9zdFJlY2VudFRhcmdldCgpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9tb3N0UmVjZW50VGFyZ2V0O1xuICB9XG4gIHByaXZhdGUgX21vc3RSZWNlbnRUYXJnZXQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIE9wdGlvbnMgZm9yIHRoaXMgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLiAqL1xuICBwcml2YXRlIHJlYWRvbmx5IF9vcHRpb25zOiBTYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3JPcHRpb25zID0ge1xuICAgIC4uLmlucHV0TW9kYWxpdHlEZXRlY3Rvck9wdGlvbnMsXG4gIH07XG5cbiAgLyoqXG4gICAqIFRoZSB0aW1lc3RhbXAgb2YgdGhlIGxhc3QgdG91Y2ggaW5wdXQgbW9kYWxpdHkuIFVzZWQgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgbW91c2Vkb3duIGV2ZW50c1xuICAgKiBzaG91bGQgYmUgYXR0cmlidXRlZCB0byBtb3VzZSBvciB0b3VjaC5cbiAgICovXG4gIHByaXZhdGUgX2xhc3RUb3VjaE1zID0gMDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoKSB7XG4gICAgaWYgKCFpc1NlcnZlcikge1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuX29uS2V5ZG93biwgbW9kYWxpdHlFdmVudExpc3RlbmVyT3B0aW9ucyk7XG4gICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWRvd24nLCB0aGlzLl9vbk1vdXNlZG93biwgbW9kYWxpdHlFdmVudExpc3RlbmVyT3B0aW9ucyk7XG4gICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgdGhpcy5fb25Ub3VjaHN0YXJ0LCBtb2RhbGl0eUV2ZW50TGlzdGVuZXJPcHRpb25zKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5fbW9zdFJlY2VudE1vZGFsaXR5ID0gJ21vdXNlJztcbiAgICB0aGlzLl9tb3N0UmVjZW50VGFyZ2V0ID0gbnVsbDtcbiAgICB0aGlzLl9sYXN0VG91Y2hNcyA9IDA7XG4gIH1cblxuICAvKipcbiAgICogSGFuZGxlcyBrZXlkb3duIGV2ZW50cy4gTXVzdCBiZSBhbiBhcnJvdyBmdW5jdGlvbiBpbiBvcmRlciB0byBwcmVzZXJ2ZSB0aGUgY29udGV4dCB3aGVuIGl0IGdldHNcbiAgICogYm91bmQuXG4gICAqL1xuICBwcml2YXRlIF9vbktleWRvd24gPSAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkID0+IHtcbiAgICAvLyBJZiB0aGlzIGlzIG9uZSBvZiB0aGUga2V5cyB3ZSBzaG91bGQgaWdub3JlLCB0aGVuIGlnbm9yZSBpdCBhbmQgZG9uJ3QgdXBkYXRlIHRoZSBpbnB1dFxuICAgIC8vIG1vZGFsaXR5IHRvIGtleWJvYXJkLlxuICAgIGlmICh0aGlzLl9vcHRpb25zPy5pZ25vcmVLZXlzPy5zb21lKChrZXlDb2RlKSA9PiBrZXlDb2RlID09PSBldmVudC5rZXlDb2RlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuX21vc3RSZWNlbnRNb2RhbGl0eSA9ICdrZXlib2FyZCc7XG4gICAgdGhpcy5fbW9zdFJlY2VudFRhcmdldCA9IGdldEV2ZW50VGFyZ2V0KGV2ZW50KTtcbiAgfTtcblxuICAvKipcbiAgICogSGFuZGxlcyBtb3VzZWRvd24gZXZlbnRzLiBNdXN0IGJlIGFuIGFycm93IGZ1bmN0aW9uIGluIG9yZGVyIHRvIHByZXNlcnZlIHRoZSBjb250ZXh0IHdoZW4gaXRcbiAgICogZ2V0cyBib3VuZC5cbiAgICovXG4gIHByaXZhdGUgX29uTW91c2Vkb3duID0gKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCA9PiB7XG4gICAgLy8gVG91Y2hlcyB0cmlnZ2VyIGJvdGggdG91Y2ggYW5kIG1vdXNlIGV2ZW50cywgc28gd2UgbmVlZCB0byBkaXN0aW5ndWlzaCBiZXR3ZWVuIG1vdXNlIGV2ZW50c1xuICAgIC8vIHRoYXQgd2VyZSB0cmlnZ2VyZWQgdmlhIG1vdXNlIHZzIHRvdWNoLiBUbyBkbyBzbywgY2hlY2sgaWYgdGhlIG1vdXNlIGV2ZW50IG9jY3VycyBjbG9zZWx5XG4gICAgLy8gYWZ0ZXIgdGhlIHByZXZpb3VzIHRvdWNoIGV2ZW50LlxuICAgIGlmIChEYXRlLm5vdygpIC0gdGhpcy5fbGFzdFRvdWNoTXMgPCB0b3VjaEJ1ZmZlck1zKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gRmFrZSBtb3VzZWRvd24gZXZlbnRzIGFyZSBmaXJlZCBieSBzb21lIHNjcmVlbiByZWFkZXJzIHdoZW4gY29udHJvbHMgYXJlIGFjdGl2YXRlZCBieSB0aGVcbiAgICAvLyBzY3JlZW4gcmVhZGVyLiBBdHRyaWJ1dGUgdGhlbSB0byBrZXlib2FyZCBpbnB1dCBtb2RhbGl0eS5cbiAgICB0aGlzLl9tb3N0UmVjZW50TW9kYWxpdHkgPSBpc0Zha2VNb3VzZWRvd25Gcm9tU2NyZWVuUmVhZGVyKGV2ZW50KSA/ICdrZXlib2FyZCcgOiAnbW91c2UnO1xuICAgIHRoaXMuX21vc3RSZWNlbnRUYXJnZXQgPSBnZXRFdmVudFRhcmdldChldmVudCk7XG4gIH07XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgdG91Y2hzdGFydCBldmVudHMuIE11c3QgYmUgYW4gYXJyb3cgZnVuY3Rpb24gaW4gb3JkZXIgdG8gcHJlc2VydmUgdGhlIGNvbnRleHQgd2hlbiBpdFxuICAgKiBnZXRzIGJvdW5kLlxuICAgKi9cbiAgcHJpdmF0ZSBfb25Ub3VjaHN0YXJ0ID0gKGV2ZW50OiBUb3VjaEV2ZW50KTogdm9pZCA9PiB7XG4gICAgLy8gU2FtZSBzY2VuYXJpbyBhcyBtZW50aW9uZWQgaW4gX29uTW91c2Vkb3duLCBidXQgb24gdG91Y2ggc2NyZWVuIGRldmljZXMsIGZha2UgdG91Y2hzdGFydFxuICAgIC8vIGV2ZW50cyBhcmUgZmlyZWQuIEFnYWluLCBhdHRyaWJ1dGUgdG8ga2V5Ym9hcmQgaW5wdXQgbW9kYWxpdHkuXG4gICAgaWYgKGlzRmFrZVRvdWNoc3RhcnRGcm9tU2NyZWVuUmVhZGVyKGV2ZW50KSkge1xuICAgICAgdGhpcy5fbW9zdFJlY2VudE1vZGFsaXR5ID0gJ2tleWJvYXJkJztcbiAgICAgIHRoaXMuX21vc3RSZWNlbnRUYXJnZXQgPSBnZXRFdmVudFRhcmdldChldmVudCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gU3RvcmUgdGhlIHRpbWVzdGFtcCBvZiB0aGlzIHRvdWNoIGV2ZW50LCBhcyBpdCdzIHVzZWQgdG8gZGlzdGluZ3Vpc2ggYmV0d2VlbiBtb3VzZSBldmVudHNcbiAgICAvLyB0cmlnZ2VyZWQgdmlhIG1vdXNlIHZzIHRvdWNoLlxuICAgIHRoaXMuX2xhc3RUb3VjaE1zID0gRGF0ZS5ub3coKTtcblxuICAgIHRoaXMuX21vc3RSZWNlbnRNb2RhbGl0eSA9ICd0b3VjaCc7XG4gICAgdGhpcy5fbW9zdFJlY2VudFRhcmdldCA9IGdldEV2ZW50VGFyZ2V0KGV2ZW50KTtcbiAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IHNiYklucHV0TW9kYWxpdHlEZXRlY3RvciA9IG5ldyBTYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IoKTtcblxuLy8gU2V0IHRoZSBpbnB1dCBtb2RhbGl0eSBpbiBvcmRlciB0byBhdm9pZCBzaG93aW5nIHRoZSBvdXRsaW5lIGluIFNhZmFyaS5cbmV4cG9ydCBmdW5jdGlvbiBzZXRNb2RhbGl0eU9uTmV4dEZvY3VzKGVsZW1lbnRUb0ZvY3VzOiBIVE1MRWxlbWVudCB8IG51bGwgfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgaWYgKCFlbGVtZW50VG9Gb2N1cykge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IG1vc3RSZWNlbnRNb2RhbGl0eSA9IHNiYklucHV0TW9kYWxpdHlEZXRlY3Rvci5tb3N0UmVjZW50TW9kYWxpdHk7XG5cbiAgLy8gU2V0IGZvY3VzIG9yaWdpbiB0byBlbGVtZW50IHdoaWNoIHNob3VsZCByZWNlaXZlIGZvY3VzXG4gIGlmICghKGVsZW1lbnRUb0ZvY3VzICYmIG1vc3RSZWNlbnRNb2RhbGl0eSAhPT0gbnVsbCkpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgZWxlbWVudFRvRm9jdXMuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAnZm9jdXMnLFxuICAgICgpID0+IHtcbiAgICAgIGVsZW1lbnRUb0ZvY3VzLnNldEF0dHJpYnV0ZSgnZGF0YS1mb2N1cy1vcmlnaW4nLCBtb3N0UmVjZW50TW9kYWxpdHkpO1xuICAgICAgZWxlbWVudFRvRm9jdXMuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICAgJ2JsdXInLFxuICAgICAgICAoKSA9PiBlbGVtZW50VG9Gb2N1cy5yZW1vdmVBdHRyaWJ1dGUoJ2RhdGEtZm9jdXMtb3JpZ2luJyksXG4gICAgICAgIHtcbiAgICAgICAgICBvbmNlOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgKTtcbiAgICB9LFxuICAgIHsgb25jZTogdHJ1ZSB9LFxuICApO1xufVxuIiwiaW1wb3J0IHR5cGUgeyBSZWFjdGl2ZUNvbnRyb2xsZXIsIFJlYWN0aXZlQ29udHJvbGxlckhvc3QgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgeyBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IgfSBmcm9tICcuL2lucHV0LW1vZGFsaXR5LWRldGVjdG9yLmpzJztcblxuLy8gRGV0ZXJtaW5lIHdoZXRoZXIgdGhlIGVsZW1lbnQgaGFzIGEgdmlzaWJsZSBmb2N1cyB3aXRoaW4uXG5leHBvcnQgY2xhc3MgU2JiRm9jdXNWaXNpYmxlV2l0aGluQ29udHJvbGxlciBpbXBsZW1lbnRzIFJlYWN0aXZlQ29udHJvbGxlciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIF9ob3N0OiBSZWFjdGl2ZUNvbnRyb2xsZXJIb3N0ICYgSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLl9ob3N0LmFkZENvbnRyb2xsZXIodGhpcyk7XG4gIH1cblxuICBwcml2YXRlIF9mb2N1c2luSGFuZGxlciA9ICgpOiB2b2lkID0+IHtcbiAgICB0aGlzLl9ob3N0LnRvZ2dsZUF0dHJpYnV0ZShcbiAgICAgICdkYXRhLWhhcy12aXNpYmxlLWZvY3VzLXdpdGhpbicsXG4gICAgICBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5ID09PSAna2V5Ym9hcmQnLFxuICAgICk7XG4gIH07XG5cbiAgcHJpdmF0ZSBfZm9jdXNvdXRIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgIHRoaXMuX2hvc3QucmVtb3ZlQXR0cmlidXRlKCdkYXRhLWhhcy12aXNpYmxlLWZvY3VzLXdpdGhpbicpO1xuICB9O1xuXG4gIHB1YmxpYyBob3N0Q29ubmVjdGVkKCk6IHZvaWQge1xuICAgIHRoaXMuX2hvc3QuYWRkRXZlbnRMaXN0ZW5lcignZm9jdXNpbicsIHRoaXMuX2ZvY3VzaW5IYW5kbGVyKTtcbiAgICB0aGlzLl9ob3N0LmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgdGhpcy5fZm9jdXNvdXRIYW5kbGVyKTtcbiAgfVxuXG4gIHB1YmxpYyBob3N0RGlzY29ubmVjdGVkKCk6IHZvaWQge1xuICAgIHRoaXMuX2hvc3QucmVtb3ZlRXZlbnRMaXN0ZW5lcignZm9jdXNpbicsIHRoaXMuX2ZvY3VzaW5IYW5kbGVyKTtcbiAgICB0aGlzLl9ob3N0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3Vzb3V0JywgdGhpcy5fZm9jdXNvdXRIYW5kbGVyKTtcbiAgfVxufVxuIiwiZXhwb3J0IGZ1bmN0aW9uIGhhc0dlb21ldHJ5KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogYm9vbGVhbiB7XG4gIC8vIFVzZSBsb2dpYyBmcm9tIGpRdWVyeSB0byBjaGVjayBmb3IgYW4gaW52aXNpYmxlIGVsZW1lbnQuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vanF1ZXJ5L2pxdWVyeS9ibG9iL21hc3Rlci9zcmMvY3NzL2hpZGRlblZpc2libGVTZWxlY3RvcnMuanMjTDEyXG4gIHJldHVybiAhIShcbiAgICBlbGVtZW50Lm9mZnNldFdpZHRoIHx8XG4gICAgZWxlbWVudC5vZmZzZXRIZWlnaHQgfHxcbiAgICAodHlwZW9mIGVsZW1lbnQuZ2V0Q2xpZW50UmVjdHMgPT09ICdmdW5jdGlvbicgJiYgZWxlbWVudC5nZXRDbGllbnRSZWN0cygpLmxlbmd0aClcbiAgKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbnRlcmZhY2VJbnRlcmFjdGl2aXR5Q2hlY2tlciB7XG4gIGlzVmlzaWJsZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjbGFzcyBJbnRlcmFjdGl2aXR5Q2hlY2tlciBpbXBsZW1lbnRzIEludGVyZmFjZUludGVyYWN0aXZpdHlDaGVja2VyIHtcbiAgLyoqXG4gICAqIEdldHMgd2hldGhlciBhbiBlbGVtZW50IGlzIHZpc2libGUgZm9yIHRoZSBwdXJwb3NlcyBvZiBpbnRlcmFjdGl2aXR5LlxuICAgKlxuICAgKiBUaGlzIHdpbGwgY2FwdHVyZSBzdGF0ZXMgbGlrZSBgZGlzcGxheTogbm9uZWAgYW5kIGB2aXNpYmlsaXR5OiBoaWRkZW5gLCBidXQgbm90IHRoaW5ncyBsaWtlXG4gICAqIGJlaW5nIGNsaXBwZWQgYnkgYW4gYG92ZXJmbG93OiBoaWRkZW5gIHBhcmVudCBvciBiZWluZyBvdXRzaWRlIHRoZSB2aWV3cG9ydC5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgZWxlbWVudCBpcyB2aXNpYmxlLlxuICAgKi9cbiAgcHVibGljIGlzVmlzaWJsZShlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBoYXNHZW9tZXRyeShlbGVtZW50KSAmJiBnZXRDb21wdXRlZFN0eWxlKGVsZW1lbnQpLnZpc2liaWxpdHkgPT09ICd2aXNpYmxlJztcbiAgfVxufVxuXG5jbGFzcyBJbnRlcmFjdGl2aXR5Q2hlY2tlck1vY2sgaW1wbGVtZW50cyBJbnRlcmZhY2VJbnRlcmFjdGl2aXR5Q2hlY2tlciB7XG4gIHB1YmxpYyBpc1Zpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cblxuLy8gRm9yIHVuaXQgdGVzdHMgd2UgbmVlZCB0byBwcmV0ZW5kIHRoYXQgYW4gZWxlbWVudCBpcyBhbHdheXMgdmlzaWJsZS5cbi8vIFRoaXMgY2FuIGJlIGRvbmUgYnkgY2hlY2tpbmcgaWYgdmlzaWJpbGl0eSBwcm9wZXJ0eSBpcyBzZXQgdG8gZW1wdHkuXG5leHBvcnQgY29uc3QgaW50ZXJhY3Rpdml0eUNoZWNrZXI6IEludGVyZmFjZUludGVyYWN0aXZpdHlDaGVja2VyID1cbiAgdHlwZW9mIGdldENvbXB1dGVkU3R5bGUgPT09ICd1bmRlZmluZWQnIHx8XG4gIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS52aXNpYmlsaXR5ID09PSAnJ1xuICAgID8gbmV3IEludGVyYWN0aXZpdHlDaGVja2VyTW9jaygpXG4gICAgOiBuZXcgSW50ZXJhY3Rpdml0eUNoZWNrZXIoKTtcbiIsImltcG9ydCB7IGludGVyYWN0aXZpdHlDaGVja2VyIH0gZnJvbSAnLi9pbnRlcmFjdGl2aXR5LWNoZWNrZXIuanMnO1xuXG5leHBvcnQgY29uc3QgSVNfRk9DVVNBQkxFX1FVRVJZID0gW1xuICAnYnV0dG9uJyxcbiAgJ1tocmVmXScsXG4gICdpbnB1dCcsXG4gICdzZWxlY3QnLFxuICAndGV4dGFyZWEnLFxuICAnZGV0YWlscycsXG4gICdzdW1tYXJ5Om5vdCg6ZGlzYWJsZWQpJyxcbiAgJ1t0YWJpbmRleF0nLFxuXVxuICAubWFwKChzZWxlY3RvcikgPT4gYCR7c2VsZWN0b3J9Om5vdChbZGlzYWJsZWRdLFt0YWJpbmRleD1cIi0xXCJdKWApXG4gIC5qb2luKCcsJyk7XG5cbi8vIE5vdGU6IHRoZSB1c2Ugb2YgdGhpcyBmdW5jdGlvbiBmb3IgbW9yZSBjb21wbGV4IHNjZW5hcmlvcyAod2l0aCBtYW55IG5lc3RlZCBlbGVtZW50cykgbWF5IGJlIGV4cGVuc2l2ZS5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGb2N1c2FibGVFbGVtZW50cyhcbiAgZWxlbWVudHM6IEhUTUxFbGVtZW50W10sXG4gIHByb3BlcnRpZXM/OiB7XG4gICAgZmlsdGVyPzogKGVsOiBIVE1MRWxlbWVudCkgPT4gYm9vbGVhbjtcbiAgICBmaW5kRmlyc3RGb2N1c2FibGU/OiBib29sZWFuO1xuICAgIGluY2x1ZGVJbnZpc2libGVFbGVtZW50cz86IGJvb2xlYW47XG4gIH0sXG4pOiBIVE1MRWxlbWVudFtdIHtcbiAgY29uc3QgZm9jdXNhYmxlRWxzID0gbmV3IFNldDxIVE1MRWxlbWVudD4oKTtcblxuICBmdW5jdGlvbiBnZXRGb2N1c2FibGVzKGVsZW1lbnRzOiBIVE1MRWxlbWVudFtdLCBmaWx0ZXI/OiAoZWw6IEhUTUxFbGVtZW50KSA9PiBib29sZWFuKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBlbCBvZiBlbGVtZW50cykge1xuICAgICAgaWYgKGZpbHRlciAmJiAhZmlsdGVyKGVsKSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKGVsLm5vZGVOYW1lID09PSAnU0xPVCcpIHtcbiAgICAgICAgZ2V0Rm9jdXNhYmxlcyhcbiAgICAgICAgICBBcnJheS5mcm9tKChlbCBhcyBIVE1MU2xvdEVsZW1lbnQpLmFzc2lnbmVkRWxlbWVudHMoKSkgYXMgSFRNTEVsZW1lbnRbXSxcbiAgICAgICAgICBmaWx0ZXIsXG4gICAgICAgICk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAoXG4gICAgICAgIGVsLm1hdGNoZXMoSVNfRk9DVVNBQkxFX1FVRVJZKSAmJlxuICAgICAgICAocHJvcGVydGllcz8uaW5jbHVkZUludmlzaWJsZUVsZW1lbnRzID8/IGludGVyYWN0aXZpdHlDaGVja2VyLmlzVmlzaWJsZShlbCkpXG4gICAgICApIHtcbiAgICAgICAgZm9jdXNhYmxlRWxzLmFkZChlbCk7XG4gICAgICB9XG5cbiAgICAgIGlmIChwcm9wZXJ0aWVzPy5maW5kRmlyc3RGb2N1c2FibGUgJiYgZm9jdXNhYmxlRWxzLnNpemUgPiAwKSB7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuXG4gICAgICBpZiAoZWwuY2hpbGRyZW4ubGVuZ3RoIHx8IGVsLnNoYWRvd1Jvb3Q/LmNoaWxkcmVuLmxlbmd0aCkge1xuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IEFycmF5LmZyb20oZWwuY2hpbGRyZW4pLmxlbmd0aFxuICAgICAgICAgID8gKEFycmF5LmZyb20oZWwuY2hpbGRyZW4pIGFzIEhUTUxFbGVtZW50W10pXG4gICAgICAgICAgOiAoQXJyYXkuZnJvbShlbC5zaGFkb3dSb290IS5jaGlsZHJlbikgYXMgSFRNTEVsZW1lbnRbXSk7XG4gICAgICAgIGdldEZvY3VzYWJsZXMoY2hpbGRyZW4sIGZpbHRlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGdldEZvY3VzYWJsZXMoZWxlbWVudHMsIHByb3BlcnRpZXM/LmZpbHRlcik7XG5cbiAgcmV0dXJuIFsuLi5mb2N1c2FibGVFbHNdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rmlyc3RGb2N1c2FibGVFbGVtZW50KFxuICBlbGVtZW50czogSFRNTEVsZW1lbnRbXSxcbiAgZmlsdGVyPzogKGVsOiBIVE1MRWxlbWVudCkgPT4gYm9vbGVhbixcbik6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gIGNvbnN0IGZvY3VzYWJsZUVsZW1lbnRzID0gZ2V0Rm9jdXNhYmxlRWxlbWVudHMoZWxlbWVudHMsIHtcbiAgICBmaWx0ZXIsXG4gICAgZmluZEZpcnN0Rm9jdXNhYmxlOiB0cnVlLFxuICB9KTtcbiAgcmV0dXJuIGZvY3VzYWJsZUVsZW1lbnRzLmxlbmd0aCA/IGZvY3VzYWJsZUVsZW1lbnRzWzBdIDogbnVsbDtcbn1cblxuZXhwb3J0IGNsYXNzIFNiYkZvY3VzSGFuZGxlciB7XG4gIHByaXZhdGUgX2NvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBlbGVtZW50IGluIHdoaWNoIHRoZSBmb2N1cyBzaG91bGQgYmUgdHJhcHBlZC5cbiAgICogQHBhcmFtIG9wdGlvbnMgb3B0aW9ucyBvYmplY3QuXG4gICAqIEBwYXJhbSBvcHRpb25zLmZpbHRlciBmaWx0ZXIgZnVuY3Rpb24gd2hpY2ggaXMgYXBwbGllZCBkdXJpbmcgc2VhcmNoaW5nIGZvciBmb2N1c2FibGUgZWxlbWVudC4gSWYgYW4gZWxlbWVudCBpcyBmaWx0ZXJlZCwgYWxzbyBjaGlsZCBlbGVtZW50cyBhcmUgZmlsdGVyZWQuXG4gICAqIEBwYXJhbSBvcHRpb25zLnBvc3RGaWx0ZXIgZmlsdGVyIGZ1bmN0aW9uIHdoaWNoIGlzIGFwcGxpZWQgYWZ0ZXIgY29sbGVjdGluZyBmb2N1c2FibGUgZWxlbWVudHMuXG4gICAqL1xuICBwdWJsaWMgdHJhcChcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgICBvcHRpb25zPzoge1xuICAgICAgZmlsdGVyPzogKGVsOiBIVE1MRWxlbWVudCkgPT4gYm9vbGVhbjtcbiAgICAgIHBvc3RGaWx0ZXI/OiAoZWw6IEhUTUxFbGVtZW50KSA9PiBib29sZWFuO1xuICAgIH0sXG4gICk6IHZvaWQge1xuICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcbiAgICAgICdrZXlkb3duJyxcbiAgICAgIChldmVudCkgPT4ge1xuICAgICAgICBpZiAoZXZlbnQua2V5ICE9PSAnVGFiJykge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIER5bmFtaWNhbGx5IGdldCBmaXJzdCBhbmQgbGFzdCBmb2N1c2FibGUgZWxlbWVudCwgYXMgdGhpcyBtaWdodCBoYXZlIGNoYW5nZWQgc2luY2Ugb3BlbmluZyBvdmVybGF5XG4gICAgICAgIGNvbnN0IGVsZW1lbnRDaGlsZHJlbjogSFRNTEVsZW1lbnRbXSA9IEFycmF5LmZyb20oXG4gICAgICAgICAgZWxlbWVudC5zaGFkb3dSb290IS5jaGlsZHJlbiB8fCBbXSxcbiAgICAgICAgKSBhcyBIVE1MRWxlbWVudFtdO1xuICAgICAgICBjb25zdCBmb2N1c2FibGVFbGVtZW50cyA9IGdldEZvY3VzYWJsZUVsZW1lbnRzKGVsZW1lbnRDaGlsZHJlbiwge1xuICAgICAgICAgIGZpbHRlcjogb3B0aW9ucz8uZmlsdGVyLFxuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgZmlsdGVyZWRGb2N1c2FibGVFbGVtZW50cyA9IGZvY3VzYWJsZUVsZW1lbnRzLmZpbHRlcihcbiAgICAgICAgICBvcHRpb25zPy5wb3N0RmlsdGVyID8/ICgoKSA9PiB0cnVlKSxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAoIWZpbHRlcmVkRm9jdXNhYmxlRWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZmlyc3RGb2N1c2FibGUgPSBmaWx0ZXJlZEZvY3VzYWJsZUVsZW1lbnRzWzBdIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICBjb25zdCBsYXN0Rm9jdXNhYmxlID0gZmlsdGVyZWRGb2N1c2FibGVFbGVtZW50c1tcbiAgICAgICAgICBmaWx0ZXJlZEZvY3VzYWJsZUVsZW1lbnRzLmxlbmd0aCAtIDFcbiAgICAgICAgXSBhcyBIVE1MRWxlbWVudDtcblxuICAgICAgICBjb25zdCBbcGl2b3QsIG5leHRdID0gZXZlbnQuc2hpZnRLZXlcbiAgICAgICAgICA/IFtmaXJzdEZvY3VzYWJsZSwgbGFzdEZvY3VzYWJsZV1cbiAgICAgICAgICA6IFtsYXN0Rm9jdXNhYmxlLCBmaXJzdEZvY3VzYWJsZV07XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgIChmaXJzdEZvY3VzYWJsZS5nZXRSb290Tm9kZSgpIGFzIERvY3VtZW50IHwgU2hhZG93Um9vdCkuYWN0aXZlRWxlbWVudCA9PT0gcGl2b3QgfHxcbiAgICAgICAgICAobGFzdEZvY3VzYWJsZS5nZXRSb290Tm9kZSgpIGFzIERvY3VtZW50IHwgU2hhZG93Um9vdCkuYWN0aXZlRWxlbWVudCA9PT0gcGl2b3RcbiAgICAgICAgKSB7XG4gICAgICAgICAgbmV4dC5mb2N1cygpO1xuICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB7IHNpZ25hbDogdGhpcy5fY29udHJvbGxlci5zaWduYWwgfSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGRpc2Nvbm5lY3QoKTogdm9pZCB7XG4gICAgdGhpcy5fY29udHJvbGxlci5hYm9ydCgpO1xuICAgIHRoaXMuX2NvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJlbGVtZW50cyJdLCJtYXBwaW5ncyI6Ijs7O0FBT0EsU0FBUyxxQkFBc0M7QUFDekMsTUFBQSw2QkFBNkIsT0FBTztBQUN0QyxXQUFPLEVBQUUsU0FBUyxjQUFjLFNBQVMsWUFBWTtBQUFBLEVBQUEsT0FDaEQ7QUFDTCxXQUFPLEVBQUUsU0FBUyxhQUFhLFNBQVMsYUFBYTtBQUFBLEVBQ3ZEO0FBQ0Y7QUFNTyxTQUFTLGtCQUFrQixPQUErQjtBQUN4RCxTQUFBLENBQUMsY0FBYyxhQUFhLFdBQVcsV0FBVyxFQUFFLFNBQVMsTUFBTSxHQUFHO0FBQy9FO0FBTU8sU0FBUywwQkFBMEIsT0FBK0I7QUFDdkUsU0FBTyxNQUFNLFFBQVEsYUFBYSxNQUFNLFFBQVEsbUJBQXFCLEVBQUE7QUFDdkU7QUFNTyxTQUFTLHNCQUFzQixPQUErQjtBQUNuRSxTQUFPLE1BQU0sUUFBUSxlQUFlLE1BQU0sUUFBUSxtQkFBcUIsRUFBQTtBQUN6RTtBQU1PLFNBQVMsNEJBQTRCLE9BQStCO0FBQ2xFLFNBQUEsa0JBQWtCLEtBQUssS0FBSyxDQUFDLFVBQVUsWUFBWSxRQUFRLEtBQUssRUFBRSxTQUFTLE1BQU0sR0FBRztBQUM3RjtBQVFBLFNBQVMscUJBQXFCLGNBQXNCLFVBQWtCLFFBQXdCO0FBQ3BGLFVBQUEsZUFBZSxTQUFTLFlBQVk7QUFDOUM7QUFFQSxTQUFTLGFBQWEsTUFBc0I7QUFDMUMsU0FBTyxPQUFPO0FBQ2hCO0FBRUEsTUFBTSxhQUFhO0FBWUgsU0FBQSxvQkFBb0IsT0FBc0IsU0FBaUIsTUFBc0I7QUFDL0YsUUFBTSxFQUFFLFNBQVMsUUFBUSxJQUFJLG1CQUFtQjtBQUVoRCxNQUFJLE1BQU0sUUFBUSxXQUFXLE1BQU0sUUFBUSxXQUFXO0FBQzdDLFdBQUEsVUFBVSxhQUFh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
|
|
294
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYTExeS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvYTExeS9hcnJvdy1uYXZpZ2F0aW9uLnRzIiwiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvYTExeS9mYWtlLWV2ZW50LWRldGVjdGlvbi50cyIsIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL2ExMXkvaW5wdXQtbW9kYWxpdHktZGV0ZWN0b3IudHMiLCIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9hMTF5L2ZvY3VzLXZpc2libGUtd2l0aGluLWNvbnRyb2xsZXIudHMiLCIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9hMTF5L2ludGVyYWN0aXZpdHktY2hlY2tlci50cyIsIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL2ExMXkvZm9jdXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW50ZXJmYWNlIFByZXZBbmROZXh0S2V5cyB7XG4gIHByZXZLZXk6IHN0cmluZztcbiAgbmV4dEtleTogc3RyaW5nO1xufVxuXG5mdW5jdGlvbiBnZXRQcmV2QW5kTmV4dEtleXMoKTogUHJldkFuZE5leHRLZXlzIHtcbiAgaWYgKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5tYXRjaGVzKCc6ZGlyKHJ0bCknKSkge1xuICAgIHJldHVybiB7IHByZXZLZXk6ICdBcnJvd1JpZ2h0JywgbmV4dEtleTogJ0Fycm93TGVmdCcgfTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4geyBwcmV2S2V5OiAnQXJyb3dMZWZ0JywgbmV4dEtleTogJ0Fycm93UmlnaHQnIH07XG4gIH1cbn1cblxuLyoqXG4gKiBDaGVjayBpZiB0aGUga2V5IHByZXNzZWQgaXMgYW1vbmcgdGhvc2UgYWxsb3dlZCBmb3IgbmF2aWdhdGlvbi5cbiAqIEBwYXJhbSBldmVudCBUaGUga2V5Ym9hcmQgZXZlbnQgdG8gY2hlY2suXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0Fycm93S2V5UHJlc3NlZChldmVudDogS2V5Ym9hcmRFdmVudCk6IGJvb2xlYW4ge1xuICByZXR1cm4gWydBcnJvd1JpZ2h0JywgJ0Fycm93TGVmdCcsICdBcnJvd1VwJywgJ0Fycm93RG93biddLmluY2x1ZGVzKGV2ZW50LmtleSk7XG59XG5cbi8qKlxuICogQ2hlY2sgaWYgdGhlIGtleSBwcmVzc2VkIHNob3VsZCBtb3ZlIHRoZSBuYXZpZ2F0aW9uIHRvIHRoZSBuZXh0IGVsZW1lbnQuXG4gKiBAcGFyYW0gZXZlbnQgVGhlIGtleWJvYXJkIGV2ZW50IHRvIGNoZWNrLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNQcmV2aW91c0Fycm93S2V5UHJlc3NlZChldmVudDogS2V5Ym9hcmRFdmVudCk6IGJvb2xlYW4ge1xuICByZXR1cm4gZXZlbnQua2V5ID09PSAnQXJyb3dVcCcgfHwgZXZlbnQua2V5ID09PSBnZXRQcmV2QW5kTmV4dEtleXMoKS5wcmV2S2V5O1xufVxuXG4vKipcbiAqIENoZWNrIGlmIHRoZSBrZXkgcHJlc3NlZCBzaG91bGQgbW92ZSB0aGUgbmF2aWdhdGlvbiB0byB0aGUgbmV4dCBlbGVtZW50LlxuICogQHBhcmFtIGV2ZW50IFRoZSBrZXlib2FyZCBldmVudCB0byBjaGVjay5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzTmV4dEFycm93S2V5UHJlc3NlZChldmVudDogS2V5Ym9hcmRFdmVudCk6IGJvb2xlYW4ge1xuICByZXR1cm4gZXZlbnQua2V5ID09PSAnQXJyb3dEb3duJyB8fCBldmVudC5rZXkgPT09IGdldFByZXZBbmROZXh0S2V5cygpLm5leHRLZXk7XG59XG5cbi8qKlxuICogQ2hlY2sgaWYgdGhlIGtleSBwcmVzc2VkIGlzIGFtb25nIHRob3NlIGFsbG93ZWQgZm9yIG5hdmlnYXRpb24uXG4gKiBAcGFyYW0gZXZlbnQgVGhlIGtleWJvYXJkIGV2ZW50IHRvIGNoZWNrLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNBcnJvd0tleU9yUGFnZUtleXNQcmVzc2VkKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogYm9vbGVhbiB7XG4gIHJldHVybiBpc0Fycm93S2V5UHJlc3NlZChldmVudCkgfHwgWydQYWdlVXAnLCAnUGFnZURvd24nLCAnSG9tZScsICdFbmQnXS5pbmNsdWRlcyhldmVudC5rZXkpO1xufVxuXG4vKipcbiAqIENhbGN1bGF0ZSB0aGUgaW5kZXggb2YgdGhlIG5leHQgZWxlbWVudCBiYXNlZCBvbiB0aGUgZ2l2ZW4gb2Zmc2V0LlxuICogQHBhcmFtIGN1cnJlbnRJbmRleCBUaGUgaW5kZXggb2YgdGhlIGN1cnJlbnQgZWxlbWVudC5cbiAqIEBwYXJhbSBtYXhJbmRleCBUaGUgbWF4aW11bSBwZXJtaXR0ZWQgdmFsdWUgKGUuZy4gYXJyYXkgc2l6ZSkuXG4gKiBAcGFyYW0gb2Zmc2V0IFRoZSBhbW91bnQgdG8gbW92ZSBieS5cbiAqL1xuZnVuY3Rpb24gY2FsY05leHRJbmRleEluUmFuZ2UoY3VycmVudEluZGV4OiBudW1iZXIsIG1heEluZGV4OiBudW1iZXIsIG9mZnNldDogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIChjdXJyZW50SW5kZXggKyBvZmZzZXQgKyBtYXhJbmRleCkgJSBtYXhJbmRleDtcbn1cblxuZnVuY3Rpb24gZ2V0TGFzdEluZGV4KHNpemU6IG51bWJlcik6IG51bWJlciB7XG4gIHJldHVybiBzaXplIC0gMTtcbn1cblxuY29uc3QgZmlyc3RJbmRleCA9IDA7XG5cbi8qKlxuICogR2V0cyB0aGUgaW5kZXggb2YgdGhlIGVsZW1lbnQgdG8gbW92ZSB0bywgYmFzZWQgb24gdGhlIGtleWJvYXJkIGlucHV0LCB0aGUgY3VycmVudCBlbGVtZW50IGluIHRoZSBsaXN0IGFuZCB0aGUgbGlzdCBzaXplLlxuICogQHBhcmFtIGV2ZW50IFRoZSBrZXlib2FyZCBldmVudCB0byBjaGVjay5cbiAqIEBwYXJhbSBjdXJyZW50IFRoZSBpbmRleCBvZiB0aGUgY3VycmVudCBlbGVtZW50IGluIHRoZSBsaXN0LlxuICogQHBhcmFtIHNpemUgVGhlIHNpemUgb2YgdGhlIGxpc3QuXG4gKiBAcmV0dXJucyBpZiBpdCBpcyBhICdwcmV2aW91cycgZXZlbnQsIHJldHVybnMgdGhlIGluZGV4IG9mIHRoZSBwcmV2aW91cyBlbGVtZW50LFxuICogb3IgdGhlIGluZGV4IG9mIHRoZSBsYXN0IG9uZSBpZiB0aGUgY3VycmVudCBlbGVtZW50IGlzIHRoZSBmaXJzdCBpbiB0aGUgbGlzdDtcbiAqIGlmIGl0IGlzIGEgJ25leHQnIGV2ZW50LCByZXR1cm5zIHRoZSBpbmRleCBvZiB0aGUgbmV4dCBlbGVtZW50LFxuICogb3IgdGhlIGluZGV4IG9mIHRoZSBmaXJzdCBvbmUsIGlmIHRoZSBjdXJyZW50IGlzIHRoZSBsYXN0IGluIHRoZSBsaXN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TmV4dEVsZW1lbnRJbmRleChldmVudDogS2V5Ym9hcmRFdmVudCwgY3VycmVudDogbnVtYmVyLCBzaXplOiBudW1iZXIpOiBudW1iZXIge1xuICBjb25zdCB7IHByZXZLZXksIG5leHRLZXkgfSA9IGdldFByZXZBbmROZXh0S2V5cygpO1xuXG4gIGlmIChldmVudC5rZXkgPT09IHByZXZLZXkgfHwgZXZlbnQua2V5ID09PSAnQXJyb3dVcCcpIHtcbiAgICByZXR1cm4gY3VycmVudCA8IGZpcnN0SW5kZXggPyBnZXRMYXN0SW5kZXgoc2l6ZSkgOiBjYWxjTmV4dEluZGV4SW5SYW5nZShjdXJyZW50LCBzaXplLCAtMSk7XG4gIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSBuZXh0S2V5IHx8IGV2ZW50LmtleSA9PT0gJ0Fycm93RG93bicpIHtcbiAgICByZXR1cm4gY3VycmVudCA+PSBzaXplID8gZmlyc3RJbmRleCA6IGNhbGNOZXh0SW5kZXhJblJhbmdlKGN1cnJlbnQsIHNpemUsIDEpO1xuICB9XG4gIHJldHVybiBjdXJyZW50O1xufVxuIiwiLy8gVGhpcyBpbXBsZW1lbnRhdGlvbiBpcyB0YWtlbiBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvYmxvYi9tYWluL3NyYy9jZGsvYTExeS9mYWtlLWV2ZW50LWRldGVjdGlvbi50c1xuXG4vKiogR2V0cyB3aGV0aGVyIGFuIGV2ZW50IGNvdWxkIGJlIGEgZmFrZWQgYG1vdXNlZG93bmAgZXZlbnQgZGlzcGF0Y2hlZCBieSBhIHNjcmVlbiByZWFkZXIuICovXG5leHBvcnQgZnVuY3Rpb24gaXNGYWtlTW91c2Vkb3duRnJvbVNjcmVlblJlYWRlcihldmVudDogTW91c2VFdmVudCk6IGJvb2xlYW4ge1xuICAvLyBTb21lIHNjcmVlbiByZWFkZXJzIHdpbGwgZGlzcGF0Y2ggYSBmYWtlIGBtb3VzZWRvd25gIGV2ZW50IHdoZW4gcHJlc3NpbmcgZW50ZXIgb3Igc3BhY2Ugb25cbiAgLy8gYSBjbGlja2FibGUgZWxlbWVudC4gV2UgY2FuIGRpc3Rpbmd1aXNoIHRoZXNlIGV2ZW50cyB3aGVuIGBldmVudC5idXR0b25zYCBpcyB6ZXJvLCBvclxuICAvLyBgZXZlbnQuZGV0YWlsYCBpcyB6ZXJvIGRlcGVuZGluZyBvbiB0aGUgYnJvd3NlcjpcbiAgLy8gLSBgZXZlbnQuYnV0dG9uc2Agd29ya3Mgb24gRmlyZWZveCwgYnV0IGZhaWxzIG9uIENocm9tZS5cbiAgLy8gLSBgZGV0YWlsYCB3b3JrcyBvbiBDaHJvbWUsIGJ1dCBmYWlscyBvbiBGaXJlZm94LlxuICByZXR1cm4gZXZlbnQuYnV0dG9ucyA9PT0gMCB8fCBldmVudC5kZXRhaWwgPT09IDA7XG59XG5cbi8qKiBHZXRzIHdoZXRoZXIgYW4gZXZlbnQgY291bGQgYmUgYSBmYWtlZCBgdG91Y2hzdGFydGAgZXZlbnQgZGlzcGF0Y2hlZCBieSBhIHNjcmVlbiByZWFkZXIuICovXG5leHBvcnQgZnVuY3Rpb24gaXNGYWtlVG91Y2hzdGFydEZyb21TY3JlZW5SZWFkZXIoZXZlbnQ6IFRvdWNoRXZlbnQpOiBib29sZWFuIHtcbiAgY29uc3QgdG91Y2g6IFRvdWNoIHwgdW5kZWZpbmVkID1cbiAgICAoZXZlbnQudG91Y2hlcyAmJiBldmVudC50b3VjaGVzWzBdKSB8fCAoZXZlbnQuY2hhbmdlZFRvdWNoZXMgJiYgZXZlbnQuY2hhbmdlZFRvdWNoZXNbMF0pO1xuXG4gIC8vIEEgZmFrZSBgdG91Y2hzdGFydGAgY2FuIGJlIGRpc3Rpbmd1aXNoZWQgZnJvbSBhIHJlYWwgb25lIGJ5IGxvb2tpbmcgYXQgdGhlIGBpZGVudGlmaWVyYFxuICAvLyB3aGljaCBpcyB0eXBpY2FsbHkgPj0gMCBvbiBhIHJlYWwgZGV2aWNlIHZlcnN1cyAtMSBmcm9tIGEgc2NyZWVuIHJlYWRlci4gSnVzdCB0byBiZSBzYWZlLFxuICAvLyB3ZSBjYW4gYWxzbyBsb29rIGF0IGByYWRpdXNYYCBhbmQgYHJhZGl1c1lgLiBUaGlzIGJlaGF2aW9yIHdhcyBvYnNlcnZlZCBhZ2FpbnN0IGEgV2luZG93cyAxMFxuICAvLyBkZXZpY2Ugd2l0aCBhIHRvdWNoIHNjcmVlbiBydW5uaW5nIE5WREEgdjIwMjAuNCBhbmQgRmlyZWZveCA4NSBvciBDaHJvbWUgODguXG4gIHJldHVybiAoXG4gICAgISF0b3VjaCAmJlxuICAgIHRvdWNoLmlkZW50aWZpZXIgPT09IC0xICYmXG4gICAgKHRvdWNoLnJhZGl1c1ggPT0gbnVsbCB8fCB0b3VjaC5yYWRpdXNYID09PSAxKSAmJlxuICAgICh0b3VjaC5yYWRpdXNZID09IG51bGwgfHwgdG91Y2gucmFkaXVzWSA9PT0gMSlcbiAgKTtcbn1cbiIsIi8vIFRoaXMgaW1wbGVtZW50YXRpb24gaXMgaW5zcGlyZWQgYnkgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvY29tcG9uZW50cy9ibG9iL21haW4vc3JjL2Nkay9hMTF5L2lucHV0LW1vZGFsaXR5L2lucHV0LW1vZGFsaXR5LWRldGVjdG9yLnRzXG5cbmltcG9ydCB7IGlzU2VydmVyIH0gZnJvbSAnbGl0JztcblxuaW1wb3J0IHsgZ2V0RXZlbnRUYXJnZXQgfSBmcm9tICcuLi9ldmVudGluZy5qcyc7XG5cbmltcG9ydCB7XG4gIGlzRmFrZU1vdXNlZG93bkZyb21TY3JlZW5SZWFkZXIsXG4gIGlzRmFrZVRvdWNoc3RhcnRGcm9tU2NyZWVuUmVhZGVyLFxufSBmcm9tICcuL2Zha2UtZXZlbnQtZGV0ZWN0aW9uLmpzJztcblxuZXhwb3J0IHR5cGUgU2JiSW5wdXRNb2RhbGl0eSA9ICd0b3VjaCcgfCAnbW91c2UnIHwgJ2tleWJvYXJkJyB8ICdwcm9ncmFtJyB8IG51bGw7XG5cbi8qKiBPcHRpb25zIHRvIGNvbmZpZ3VyZSB0aGUgYmVoYXZpb3Igb2YgdGhlIFNiYklucHV0TW9kYWxpdHlEZXRlY3Rvci4gKi9cbmludGVyZmFjZSBTYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3JPcHRpb25zIHtcbiAgLyoqIEtleXMgdG8gaWdub3JlIHdoZW4gZGV0ZWN0aW5nIGtleWJvYXJkIGlucHV0IG1vZGFsaXR5LiAqL1xuICBpZ25vcmVLZXlzPzogbnVtYmVyW107XG59XG5cbmNvbnN0IFNISUZUID0gMTY7XG5jb25zdCBDT05UUk9MID0gMTc7XG5jb25zdCBBTFQgPSAxODtcbmNvbnN0IE1FVEEgPSA5MTsgLy8gV0lOX0tFWV9MRUZUXG5jb25zdCBNQUNfTUVUQSA9IDIyNDtcblxuLyoqXG4gKiBEZWZhdWx0IG9wdGlvbnMgZm9yIHRoZSBTYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IuXG4gKlxuICogTW9kaWZpZXIga2V5cyBhcmUgaWdub3JlZCBieSBkZWZhdWx0IChpLmUuIHdoZW4gcHJlc3NlZCB3b24ndCBjYXVzZSB0aGUgc2VydmljZSB0byBkZXRlY3RcbiAqIGtleWJvYXJkIGlucHV0IG1vZGFsaXR5KSBmb3IgdHdvIHJlYXNvbnM6XG4gKlxuICogMS4gTW9kaWZpZXIga2V5cyBhcmUgY29tbW9ubHkgdXNlZCB3aXRoIG1vdXNlIHRvIHBlcmZvcm0gYWN0aW9ucyBzdWNoIGFzICdyaWdodCBjbGljaycgb3IgJ29wZW5cbiAqICAgIGluIG5ldyB0YWInLCBhbmQgYXJlIHRodXMgbGVzcyByZXByZXNlbnRhdGl2ZSBvZiBhY3R1YWwga2V5Ym9hcmQgaW50ZXJhY3Rpb24uXG4gKiAyLiBWb2ljZU92ZXIgdHJpZ2dlcnMgc29tZSBrZXlib2FyZCBldmVudHMgd2hlbiBsaW5lYXJseSBuYXZpZ2F0aW5nIHdpdGggQ29udHJvbCArIE9wdGlvbiAoYnV0XG4gKiAgICBjb25mdXNpbmdseSBub3Qgd2l0aCBDYXBzIExvY2spLiBUaHVzLCB0byBoYXZlIHBhcml0eSB3aXRoIG90aGVyIHNjcmVlbiByZWFkZXJzLCB3ZSBpZ25vcmVcbiAqICAgIHRoZXNlIGtleXMgc28sIGFzIHRvIG5vdCB1cGRhdGUgdGhlIGlucHV0IG1vZGFsaXR5LlxuICpcbiAqIE5vdGUgdGhhdCB3ZSBkbyBub3QgYnkgZGVmYXVsdCBpZ25vcmUgdGhlIHJpZ2h0IE1ldGEga2V5IG9uIFNhZmFyaSBiZWNhdXNlIGl0IGhhcyB0aGUgc2FtZSBrZXlcbiAqIGNvZGUgYXMgdGhlIENvbnRleHRNZW51IGtleSBvbiBvdGhlciBicm93c2Vycy4gV2hlbiB3ZSBzd2l0Y2ggdG8gdXNpbmcgZXZlbnQua2V5LCB3ZSBjYW5cbiAqIGRpc3Rpbmd1aXNoIGJldHdlZW4gdGhlIHR3by5cbiAqL1xuY29uc3QgaW5wdXRNb2RhbGl0eURldGVjdG9yT3B0aW9uczogU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yT3B0aW9ucyA9IHtcbiAgaWdub3JlS2V5czogW0FMVCwgQ09OVFJPTCwgTUFDX01FVEEsIE1FVEEsIFNISUZUXSxcbn07XG5cbi8qKlxuICogVGhlIGFtb3VudCBvZiB0aW1lIG5lZWRlZCB0byBwYXNzIGFmdGVyIGEgdG91Y2hzdGFydCBldmVudCBpbiBvcmRlciBmb3IgYSBzdWJzZXF1ZW50IG1vdXNlZG93blxuICogZXZlbnQgdG8gYmUgYXR0cmlidXRlZCBhcyBtb3VzZSBhbmQgbm90IHRvdWNoLlxuICpcbiAqIFRocm91Z2ggdHJpYWwgYW5kIGVycm9yIGl0IHdhcyBmb3VuZCB0aGF0IGEgdmFsdWUgb2YgYXJvdW5kIDY1MG1zIHNlZW1zIGFwcHJvcHJpYXRlLlxuICovXG5jb25zdCB0b3VjaEJ1ZmZlck1zID0gNjUwO1xuXG4vKipcbiAqIEV2ZW50IGxpc3RlbmVyIG9wdGlvbnMgdGhhdCBlbmFibGUgY2FwdHVyaW5nIGFuZCBhbHNvIG1hcmsgdGhlIGxpc3RlbmVyIGFzIHBhc3NpdmUgaWYgdGhlIGJyb3dzZXJcbiAqIHN1cHBvcnRzIGl0LlxuICovXG5jb25zdCBtb2RhbGl0eUV2ZW50TGlzdGVuZXJPcHRpb25zID0ge1xuICBwYXNzaXZlOiB0cnVlLFxuICBjYXB0dXJlOiB0cnVlLFxufTtcblxuLyoqXG4gKiBTZXJ2aWNlIHRoYXQgZGV0ZWN0cyB0aGUgdXNlcidzIGlucHV0IG1vZGFsaXR5LlxuICpcbiAqIFRoaXMgc2VydmljZSBkb2VzIG5vdCB1cGRhdGUgdGhlIGlucHV0IG1vZGFsaXR5IHdoZW4gYSB1c2VyIG5hdmlnYXRlcyB3aXRoIGEgc2NyZWVuIHJlYWRlclxuICogKGUuZy4gbGluZWFyIG5hdmlnYXRpb24gd2l0aCBWb2ljZU92ZXIsIG9iamVjdCBuYXZpZ2F0aW9uIC8gYnJvd3NlIG1vZGUgd2l0aCBOVkRBLCB2aXJ0dWFsIFBDXG4gKiBjdXJzb3IgbW9kZSB3aXRoIEpBV1MpLiBUaGlzIGlzIGluIHBhcnQgZHVlIHRvIHRlY2huaWNhbCBsaW1pdGF0aW9ucyAoaS5lLiBrZXlib2FyZCBldmVudHMgZG8gbm90XG4gKiBmaXJlIGFzIGV4cGVjdGVkIGluIHRoZXNlIG1vZGVzKSBidXQgaXMgYWxzbyBhcmd1YWJseSB0aGUgY29ycmVjdCBiZWhhdmlvci4gTmF2aWdhdGluZyB3aXRoIGFcbiAqIHNjcmVlbiByZWFkZXIgaXMgYWtpbiB0byB2aXN1YWxseSBzY2FubmluZyBhIHBhZ2UsIGFuZCBzaG91bGQgbm90IGJlIGludGVycHJldGVkIGFzIGFjdHVhbCB1c2VyXG4gKiBpbnB1dCBpbnRlcmFjdGlvbi5cbiAqXG4gKiBXaGVuIGEgdXNlciBpcyBub3QgbmF2aWdhdGluZyBidXQgKmludGVyYWN0aW5nKiB3aXRoIGEgc2NyZWVuIHJlYWRlciwgdGhpcyBzZXJ2aWNlIGF0dGVtcHRzIHRvXG4gKiB1cGRhdGUgdGhlIGlucHV0IG1vZGFsaXR5IHRvIGtleWJvYXJkLCBidXQgaW4gZ2VuZXJhbCB0aGlzIHNlcnZpY2UncyBiZWhhdmlvciBpcyBsYXJnZWx5XG4gKiB1bmRlZmluZWQuXG4gKi9cbmNsYXNzIFNiYklucHV0TW9kYWxpdHlEZXRlY3RvciB7XG4gIC8qKiBUaGUgbW9zdCByZWNlbnRseSBkZXRlY3RlZCBpbnB1dCBtb2RhbGl0eS4gKi9cbiAgcHVibGljIGdldCBtb3N0UmVjZW50TW9kYWxpdHkoKTogU2JiSW5wdXRNb2RhbGl0eSB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9tb3N0UmVjZW50TW9kYWxpdHk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG1vc3QgcmVjZW50IG1vZGFsaXR5IG11c3QgYmUgaW5pdGlhbGlzZWQgd2l0aCB0aGUgdmFsdWUgJ21vdXNlJyB0byBjb3ZlciB0aGUgY2FzZSB3aGVyZSBhbiBhY3Rpb24gaXNcbiAgICogcGVyZm9ybWVkIGJ1dCBubyBtb3VzZSBvciBrZXlib2FyZCBldmVudCBoYXMgeWV0IG9jY3VycmVkIG9uIHRoZSBwYWdlIChlLmcuIGBzYmItcG9wb3ZlcmAgd2l0aCBob3ZlciB0cmlnZ2VyKS5cbiAgICovXG4gIHByaXZhdGUgX21vc3RSZWNlbnRNb2RhbGl0eTogU2JiSW5wdXRNb2RhbGl0eSB8IG51bGwgPSAnbW91c2UnO1xuXG4gIC8qKlxuICAgKiBUaGUgbW9zdCByZWNlbnRseSBkZXRlY3RlZCBpbnB1dCBtb2RhbGl0eSBldmVudCB0YXJnZXQuIElzIG51bGwgaWYgbm8gaW5wdXQgbW9kYWxpdHkgaGFzIGJlZW5cbiAgICogZGV0ZWN0ZWQgb3IgaWYgdGhlIGFzc29jaWF0ZWQgZXZlbnQgdGFyZ2V0IGlzIG51bGwgZm9yIHNvbWUgdW5rbm93biByZWFzb24uXG4gICAqL1xuICBwdWJsaWMgZ2V0IG1vc3RSZWNlbnRUYXJnZXQoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fbW9zdFJlY2VudFRhcmdldDtcbiAgfVxuICBwcml2YXRlIF9tb3N0UmVjZW50VGFyZ2V0OiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuXG4gIC8qKiBPcHRpb25zIGZvciB0aGlzIFNiYklucHV0TW9kYWxpdHlEZXRlY3Rvci4gKi9cbiAgcHJpdmF0ZSByZWFkb25seSBfb3B0aW9uczogU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yT3B0aW9ucyA9IHtcbiAgICAuLi5pbnB1dE1vZGFsaXR5RGV0ZWN0b3JPcHRpb25zLFxuICB9O1xuXG4gIC8qKlxuICAgKiBUaGUgdGltZXN0YW1wIG9mIHRoZSBsYXN0IHRvdWNoIGlucHV0IG1vZGFsaXR5LiBVc2VkIHRvIGRldGVybWluZSB3aGV0aGVyIG1vdXNlZG93biBldmVudHNcbiAgICogc2hvdWxkIGJlIGF0dHJpYnV0ZWQgdG8gbW91c2Ugb3IgdG91Y2guXG4gICAqL1xuICBwcml2YXRlIF9sYXN0VG91Y2hNcyA9IDA7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKCkge1xuICAgIGlmICghaXNTZXJ2ZXIpIHtcbiAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLl9vbktleWRvd24sIG1vZGFsaXR5RXZlbnRMaXN0ZW5lck9wdGlvbnMpO1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgdGhpcy5fb25Nb3VzZWRvd24sIG1vZGFsaXR5RXZlbnRMaXN0ZW5lck9wdGlvbnMpO1xuICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2hzdGFydCcsIHRoaXMuX29uVG91Y2hzdGFydCwgbW9kYWxpdHlFdmVudExpc3RlbmVyT3B0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMuX21vc3RSZWNlbnRNb2RhbGl0eSA9ICdtb3VzZSc7XG4gICAgdGhpcy5fbW9zdFJlY2VudFRhcmdldCA9IG51bGw7XG4gICAgdGhpcy5fbGFzdFRvdWNoTXMgPSAwO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMga2V5ZG93biBldmVudHMuIE11c3QgYmUgYW4gYXJyb3cgZnVuY3Rpb24gaW4gb3JkZXIgdG8gcHJlc2VydmUgdGhlIGNvbnRleHQgd2hlbiBpdCBnZXRzXG4gICAqIGJvdW5kLlxuICAgKi9cbiAgcHJpdmF0ZSBfb25LZXlkb3duID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCA9PiB7XG4gICAgLy8gSWYgdGhpcyBpcyBvbmUgb2YgdGhlIGtleXMgd2Ugc2hvdWxkIGlnbm9yZSwgdGhlbiBpZ25vcmUgaXQgYW5kIGRvbid0IHVwZGF0ZSB0aGUgaW5wdXRcbiAgICAvLyBtb2RhbGl0eSB0byBrZXlib2FyZC5cbiAgICBpZiAodGhpcy5fb3B0aW9ucz8uaWdub3JlS2V5cz8uc29tZSgoa2V5Q29kZSkgPT4ga2V5Q29kZSA9PT0gZXZlbnQua2V5Q29kZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLl9tb3N0UmVjZW50TW9kYWxpdHkgPSAna2V5Ym9hcmQnO1xuICAgIHRoaXMuX21vc3RSZWNlbnRUYXJnZXQgPSBnZXRFdmVudFRhcmdldChldmVudCk7XG4gIH07XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgbW91c2Vkb3duIGV2ZW50cy4gTXVzdCBiZSBhbiBhcnJvdyBmdW5jdGlvbiBpbiBvcmRlciB0byBwcmVzZXJ2ZSB0aGUgY29udGV4dCB3aGVuIGl0XG4gICAqIGdldHMgYm91bmQuXG4gICAqL1xuICBwcml2YXRlIF9vbk1vdXNlZG93biA9IChldmVudDogTW91c2VFdmVudCk6IHZvaWQgPT4ge1xuICAgIC8vIFRvdWNoZXMgdHJpZ2dlciBib3RoIHRvdWNoIGFuZCBtb3VzZSBldmVudHMsIHNvIHdlIG5lZWQgdG8gZGlzdGluZ3Vpc2ggYmV0d2VlbiBtb3VzZSBldmVudHNcbiAgICAvLyB0aGF0IHdlcmUgdHJpZ2dlcmVkIHZpYSBtb3VzZSB2cyB0b3VjaC4gVG8gZG8gc28sIGNoZWNrIGlmIHRoZSBtb3VzZSBldmVudCBvY2N1cnMgY2xvc2VseVxuICAgIC8vIGFmdGVyIHRoZSBwcmV2aW91cyB0b3VjaCBldmVudC5cbiAgICBpZiAoRGF0ZS5ub3coKSAtIHRoaXMuX2xhc3RUb3VjaE1zIDwgdG91Y2hCdWZmZXJNcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIEZha2UgbW91c2Vkb3duIGV2ZW50cyBhcmUgZmlyZWQgYnkgc29tZSBzY3JlZW4gcmVhZGVycyB3aGVuIGNvbnRyb2xzIGFyZSBhY3RpdmF0ZWQgYnkgdGhlXG4gICAgLy8gc2NyZWVuIHJlYWRlci4gQXR0cmlidXRlIHRoZW0gdG8ga2V5Ym9hcmQgaW5wdXQgbW9kYWxpdHkuXG4gICAgdGhpcy5fbW9zdFJlY2VudE1vZGFsaXR5ID0gaXNGYWtlTW91c2Vkb3duRnJvbVNjcmVlblJlYWRlcihldmVudCkgPyAna2V5Ym9hcmQnIDogJ21vdXNlJztcbiAgICB0aGlzLl9tb3N0UmVjZW50VGFyZ2V0ID0gZ2V0RXZlbnRUYXJnZXQoZXZlbnQpO1xuICB9O1xuXG4gIC8qKlxuICAgKiBIYW5kbGVzIHRvdWNoc3RhcnQgZXZlbnRzLiBNdXN0IGJlIGFuIGFycm93IGZ1bmN0aW9uIGluIG9yZGVyIHRvIHByZXNlcnZlIHRoZSBjb250ZXh0IHdoZW4gaXRcbiAgICogZ2V0cyBib3VuZC5cbiAgICovXG4gIHByaXZhdGUgX29uVG91Y2hzdGFydCA9IChldmVudDogVG91Y2hFdmVudCk6IHZvaWQgPT4ge1xuICAgIC8vIFNhbWUgc2NlbmFyaW8gYXMgbWVudGlvbmVkIGluIF9vbk1vdXNlZG93biwgYnV0IG9uIHRvdWNoIHNjcmVlbiBkZXZpY2VzLCBmYWtlIHRvdWNoc3RhcnRcbiAgICAvLyBldmVudHMgYXJlIGZpcmVkLiBBZ2FpbiwgYXR0cmlidXRlIHRvIGtleWJvYXJkIGlucHV0IG1vZGFsaXR5LlxuICAgIGlmIChpc0Zha2VUb3VjaHN0YXJ0RnJvbVNjcmVlblJlYWRlcihldmVudCkpIHtcbiAgICAgIHRoaXMuX21vc3RSZWNlbnRNb2RhbGl0eSA9ICdrZXlib2FyZCc7XG4gICAgICB0aGlzLl9tb3N0UmVjZW50VGFyZ2V0ID0gZ2V0RXZlbnRUYXJnZXQoZXZlbnQpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFN0b3JlIHRoZSB0aW1lc3RhbXAgb2YgdGhpcyB0b3VjaCBldmVudCwgYXMgaXQncyB1c2VkIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gbW91c2UgZXZlbnRzXG4gICAgLy8gdHJpZ2dlcmVkIHZpYSBtb3VzZSB2cyB0b3VjaC5cbiAgICB0aGlzLl9sYXN0VG91Y2hNcyA9IERhdGUubm93KCk7XG5cbiAgICB0aGlzLl9tb3N0UmVjZW50TW9kYWxpdHkgPSAndG91Y2gnO1xuICAgIHRoaXMuX21vc3RSZWNlbnRUYXJnZXQgPSBnZXRFdmVudFRhcmdldChldmVudCk7XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IgPSBuZXcgU2JiSW5wdXRNb2RhbGl0eURldGVjdG9yKCk7XG5cbi8vIFNldCB0aGUgaW5wdXQgbW9kYWxpdHkgaW4gb3JkZXIgdG8gYXZvaWQgc2hvd2luZyB0aGUgb3V0bGluZSBpbiBTYWZhcmkuXG5leHBvcnQgZnVuY3Rpb24gc2V0TW9kYWxpdHlPbk5leHRGb2N1cyhlbGVtZW50VG9Gb2N1czogSFRNTEVsZW1lbnQgfCBudWxsIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gIGlmICghZWxlbWVudFRvRm9jdXMpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBtb3N0UmVjZW50TW9kYWxpdHkgPSBzYmJJbnB1dE1vZGFsaXR5RGV0ZWN0b3IubW9zdFJlY2VudE1vZGFsaXR5O1xuXG4gIC8vIFNldCBmb2N1cyBvcmlnaW4gdG8gZWxlbWVudCB3aGljaCBzaG91bGQgcmVjZWl2ZSBmb2N1c1xuICBpZiAoIShlbGVtZW50VG9Gb2N1cyAmJiBtb3N0UmVjZW50TW9kYWxpdHkgIT09IG51bGwpKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIGVsZW1lbnRUb0ZvY3VzLmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgJ2ZvY3VzJyxcbiAgICAoKSA9PiB7XG4gICAgICBlbGVtZW50VG9Gb2N1cy5zZXRBdHRyaWJ1dGUoJ2RhdGEtZm9jdXMtb3JpZ2luJywgbW9zdFJlY2VudE1vZGFsaXR5KTtcbiAgICAgIGVsZW1lbnRUb0ZvY3VzLmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAgICdibHVyJyxcbiAgICAgICAgKCkgPT4gZWxlbWVudFRvRm9jdXMucmVtb3ZlQXR0cmlidXRlKCdkYXRhLWZvY3VzLW9yaWdpbicpLFxuICAgICAgICB7XG4gICAgICAgICAgb25jZTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfSxcbiAgICB7IG9uY2U6IHRydWUgfSxcbiAgKTtcbn1cbiIsImltcG9ydCB0eXBlIHsgUmVhY3RpdmVDb250cm9sbGVyLCBSZWFjdGl2ZUNvbnRyb2xsZXJIb3N0IH0gZnJvbSAnbGl0JztcblxuaW1wb3J0IHsgc2JiSW5wdXRNb2RhbGl0eURldGVjdG9yIH0gZnJvbSAnLi9pbnB1dC1tb2RhbGl0eS1kZXRlY3Rvci5qcyc7XG5cbi8vIERldGVybWluZSB3aGV0aGVyIHRoZSBlbGVtZW50IGhhcyBhIHZpc2libGUgZm9jdXMgd2l0aGluLlxuZXhwb3J0IGNsYXNzIFNiYkZvY3VzVmlzaWJsZVdpdGhpbkNvbnRyb2xsZXIgaW1wbGVtZW50cyBSZWFjdGl2ZUNvbnRyb2xsZXIge1xuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSBfaG9zdDogUmVhY3RpdmVDb250cm9sbGVySG9zdCAmIEhUTUxFbGVtZW50KSB7XG4gICAgdGhpcy5faG9zdC5hZGRDb250cm9sbGVyKHRoaXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZm9jdXNpbkhhbmRsZXIgPSAoKTogdm9pZCA9PiB7XG4gICAgdGhpcy5faG9zdC50b2dnbGVBdHRyaWJ1dGUoXG4gICAgICAnZGF0YS1oYXMtdmlzaWJsZS1mb2N1cy13aXRoaW4nLFxuICAgICAgc2JiSW5wdXRNb2RhbGl0eURldGVjdG9yLm1vc3RSZWNlbnRNb2RhbGl0eSA9PT0gJ2tleWJvYXJkJyxcbiAgICApO1xuICB9O1xuXG4gIHByaXZhdGUgX2ZvY3Vzb3V0SGFuZGxlciA9ICgpOiB2b2lkID0+IHtcbiAgICB0aGlzLl9ob3N0LnJlbW92ZUF0dHJpYnV0ZSgnZGF0YS1oYXMtdmlzaWJsZS1mb2N1cy13aXRoaW4nKTtcbiAgfTtcblxuICBwdWJsaWMgaG9zdENvbm5lY3RlZCgpOiB2b2lkIHtcbiAgICB0aGlzLl9ob3N0LmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3VzaW4nLCB0aGlzLl9mb2N1c2luSGFuZGxlcik7XG4gICAgdGhpcy5faG9zdC5hZGRFdmVudExpc3RlbmVyKCdmb2N1c291dCcsIHRoaXMuX2ZvY3Vzb3V0SGFuZGxlcik7XG4gIH1cblxuICBwdWJsaWMgaG9zdERpc2Nvbm5lY3RlZCgpOiB2b2lkIHtcbiAgICB0aGlzLl9ob3N0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2ZvY3VzaW4nLCB0aGlzLl9mb2N1c2luSGFuZGxlcik7XG4gICAgdGhpcy5faG9zdC5yZW1vdmVFdmVudExpc3RlbmVyKCdmb2N1c291dCcsIHRoaXMuX2ZvY3Vzb3V0SGFuZGxlcik7XG4gIH1cbn1cbiIsImV4cG9ydCBmdW5jdGlvbiBoYXNHZW9tZXRyeShlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAvLyBVc2UgbG9naWMgZnJvbSBqUXVlcnkgdG8gY2hlY2sgZm9yIGFuIGludmlzaWJsZSBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2pxdWVyeS9qcXVlcnkvYmxvYi9tYXN0ZXIvc3JjL2Nzcy9oaWRkZW5WaXNpYmxlU2VsZWN0b3JzLmpzI0wxMlxuICByZXR1cm4gISEoXG4gICAgZWxlbWVudC5vZmZzZXRXaWR0aCB8fFxuICAgIGVsZW1lbnQub2Zmc2V0SGVpZ2h0IHx8XG4gICAgKHR5cGVvZiBlbGVtZW50LmdldENsaWVudFJlY3RzID09PSAnZnVuY3Rpb24nICYmIGVsZW1lbnQuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgpXG4gICk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZXJmYWNlSW50ZXJhY3Rpdml0eUNoZWNrZXIge1xuICBpc1Zpc2libGUoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuO1xufVxuXG5leHBvcnQgY2xhc3MgSW50ZXJhY3Rpdml0eUNoZWNrZXIgaW1wbGVtZW50cyBJbnRlcmZhY2VJbnRlcmFjdGl2aXR5Q2hlY2tlciB7XG4gIC8qKlxuICAgKiBHZXRzIHdoZXRoZXIgYW4gZWxlbWVudCBpcyB2aXNpYmxlIGZvciB0aGUgcHVycG9zZXMgb2YgaW50ZXJhY3Rpdml0eS5cbiAgICpcbiAgICogVGhpcyB3aWxsIGNhcHR1cmUgc3RhdGVzIGxpa2UgYGRpc3BsYXk6IG5vbmVgIGFuZCBgdmlzaWJpbGl0eTogaGlkZGVuYCwgYnV0IG5vdCB0aGluZ3MgbGlrZVxuICAgKiBiZWluZyBjbGlwcGVkIGJ5IGFuIGBvdmVyZmxvdzogaGlkZGVuYCBwYXJlbnQgb3IgYmVpbmcgb3V0c2lkZSB0aGUgdmlld3BvcnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGVsZW1lbnQgaXMgdmlzaWJsZS5cbiAgICovXG4gIHB1YmxpYyBpc1Zpc2libGUoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaGFzR2VvbWV0cnkoZWxlbWVudCkgJiYgZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS52aXNpYmlsaXR5ID09PSAndmlzaWJsZSc7XG4gIH1cbn1cblxuY2xhc3MgSW50ZXJhY3Rpdml0eUNoZWNrZXJNb2NrIGltcGxlbWVudHMgSW50ZXJmYWNlSW50ZXJhY3Rpdml0eUNoZWNrZXIge1xuICBwdWJsaWMgaXNWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG5cbi8vIEZvciB1bml0IHRlc3RzIHdlIG5lZWQgdG8gcHJldGVuZCB0aGF0IGFuIGVsZW1lbnQgaXMgYWx3YXlzIHZpc2libGUuXG4vLyBUaGlzIGNhbiBiZSBkb25lIGJ5IGNoZWNraW5nIGlmIHZpc2liaWxpdHkgcHJvcGVydHkgaXMgc2V0IHRvIGVtcHR5LlxuZXhwb3J0IGNvbnN0IGludGVyYWN0aXZpdHlDaGVja2VyOiBJbnRlcmZhY2VJbnRlcmFjdGl2aXR5Q2hlY2tlciA9XG4gIHR5cGVvZiBnZXRDb21wdXRlZFN0eWxlID09PSAndW5kZWZpbmVkJyB8fFxuICBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkudmlzaWJpbGl0eSA9PT0gJydcbiAgICA/IG5ldyBJbnRlcmFjdGl2aXR5Q2hlY2tlck1vY2soKVxuICAgIDogbmV3IEludGVyYWN0aXZpdHlDaGVja2VyKCk7XG4iLCJpbXBvcnQgeyBpbnRlcmFjdGl2aXR5Q2hlY2tlciB9IGZyb20gJy4vaW50ZXJhY3Rpdml0eS1jaGVja2VyLmpzJztcblxuZXhwb3J0IGNvbnN0IElTX0ZPQ1VTQUJMRV9RVUVSWSA9IFtcbiAgJ2J1dHRvbicsXG4gICdbaHJlZl0nLFxuICAnaW5wdXQnLFxuICAnc2VsZWN0JyxcbiAgJ3RleHRhcmVhJyxcbiAgJ2RldGFpbHMnLFxuICAnc3VtbWFyeTpub3QoOmRpc2FibGVkKScsXG4gICdbdGFiaW5kZXhdJyxcbl1cbiAgLm1hcCgoc2VsZWN0b3IpID0+IGAke3NlbGVjdG9yfTpub3QoW2Rpc2FibGVkXSxbdGFiaW5kZXg9XCItMVwiXSlgKVxuICAuam9pbignLCcpO1xuXG4vLyBOb3RlOiB0aGUgdXNlIG9mIHRoaXMgZnVuY3Rpb24gZm9yIG1vcmUgY29tcGxleCBzY2VuYXJpb3MgKHdpdGggbWFueSBuZXN0ZWQgZWxlbWVudHMpIG1heSBiZSBleHBlbnNpdmUuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rm9jdXNhYmxlRWxlbWVudHMoXG4gIGVsZW1lbnRzOiBIVE1MRWxlbWVudFtdLFxuICBwcm9wZXJ0aWVzPzoge1xuICAgIGZpbHRlcj86IChlbDogSFRNTEVsZW1lbnQpID0+IGJvb2xlYW47XG4gICAgZmluZEZpcnN0Rm9jdXNhYmxlPzogYm9vbGVhbjtcbiAgICBpbmNsdWRlSW52aXNpYmxlRWxlbWVudHM/OiBib29sZWFuO1xuICB9LFxuKTogSFRNTEVsZW1lbnRbXSB7XG4gIGNvbnN0IGZvY3VzYWJsZUVscyA9IG5ldyBTZXQ8SFRNTEVsZW1lbnQ+KCk7XG5cbiAgZnVuY3Rpb24gZ2V0Rm9jdXNhYmxlcyhlbGVtZW50czogSFRNTEVsZW1lbnRbXSwgZmlsdGVyPzogKGVsOiBIVE1MRWxlbWVudCkgPT4gYm9vbGVhbik6IHZvaWQge1xuICAgIGZvciAoY29uc3QgZWwgb2YgZWxlbWVudHMpIHtcbiAgICAgIGlmIChmaWx0ZXIgJiYgIWZpbHRlcihlbCkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGlmIChlbC5ub2RlTmFtZSA9PT0gJ1NMT1QnKSB7XG4gICAgICAgIGdldEZvY3VzYWJsZXMoXG4gICAgICAgICAgQXJyYXkuZnJvbSgoZWwgYXMgSFRNTFNsb3RFbGVtZW50KS5hc3NpZ25lZEVsZW1lbnRzKCkpIGFzIEhUTUxFbGVtZW50W10sXG4gICAgICAgICAgZmlsdGVyLFxuICAgICAgICApO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKFxuICAgICAgICBlbC5tYXRjaGVzKElTX0ZPQ1VTQUJMRV9RVUVSWSkgJiZcbiAgICAgICAgKHByb3BlcnRpZXM/LmluY2x1ZGVJbnZpc2libGVFbGVtZW50cyA/PyBpbnRlcmFjdGl2aXR5Q2hlY2tlci5pc1Zpc2libGUoZWwpKVxuICAgICAgKSB7XG4gICAgICAgIGZvY3VzYWJsZUVscy5hZGQoZWwpO1xuICAgICAgfVxuXG4gICAgICBpZiAocHJvcGVydGllcz8uZmluZEZpcnN0Rm9jdXNhYmxlICYmIGZvY3VzYWJsZUVscy5zaXplID4gMCkge1xuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgaWYgKGVsLmNoaWxkcmVuLmxlbmd0aCB8fCBlbC5zaGFkb3dSb290Py5jaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgICAgY29uc3QgY2hpbGRyZW4gPSBBcnJheS5mcm9tKGVsLmNoaWxkcmVuKS5sZW5ndGhcbiAgICAgICAgICA/IChBcnJheS5mcm9tKGVsLmNoaWxkcmVuKSBhcyBIVE1MRWxlbWVudFtdKVxuICAgICAgICAgIDogKEFycmF5LmZyb20oZWwuc2hhZG93Um9vdCEuY2hpbGRyZW4pIGFzIEhUTUxFbGVtZW50W10pO1xuICAgICAgICBnZXRGb2N1c2FibGVzKGNoaWxkcmVuLCBmaWx0ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBnZXRGb2N1c2FibGVzKGVsZW1lbnRzLCBwcm9wZXJ0aWVzPy5maWx0ZXIpO1xuXG4gIHJldHVybiBbLi4uZm9jdXNhYmxlRWxzXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpcnN0Rm9jdXNhYmxlRWxlbWVudChcbiAgZWxlbWVudHM6IEhUTUxFbGVtZW50W10sXG4gIGZpbHRlcj86IChlbDogSFRNTEVsZW1lbnQpID0+IGJvb2xlYW4sXG4pOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICBjb25zdCBmb2N1c2FibGVFbGVtZW50cyA9IGdldEZvY3VzYWJsZUVsZW1lbnRzKGVsZW1lbnRzLCB7XG4gICAgZmlsdGVyLFxuICAgIGZpbmRGaXJzdEZvY3VzYWJsZTogdHJ1ZSxcbiAgfSk7XG4gIHJldHVybiBmb2N1c2FibGVFbGVtZW50cy5sZW5ndGggPyBmb2N1c2FibGVFbGVtZW50c1swXSA6IG51bGw7XG59XG5cbmV4cG9ydCBjbGFzcyBTYmJGb2N1c0hhbmRsZXIge1xuICBwcml2YXRlIF9jb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gZWxlbWVudCBpbiB3aGljaCB0aGUgZm9jdXMgc2hvdWxkIGJlIHRyYXBwZWQuXG4gICAqIEBwYXJhbSBvcHRpb25zIG9wdGlvbnMgb2JqZWN0LlxuICAgKiBAcGFyYW0gb3B0aW9ucy5maWx0ZXIgZmlsdGVyIGZ1bmN0aW9uIHdoaWNoIGlzIGFwcGxpZWQgZHVyaW5nIHNlYXJjaGluZyBmb3IgZm9jdXNhYmxlIGVsZW1lbnQuIElmIGFuIGVsZW1lbnQgaXMgZmlsdGVyZWQsIGFsc28gY2hpbGQgZWxlbWVudHMgYXJlIGZpbHRlcmVkLlxuICAgKiBAcGFyYW0gb3B0aW9ucy5wb3N0RmlsdGVyIGZpbHRlciBmdW5jdGlvbiB3aGljaCBpcyBhcHBsaWVkIGFmdGVyIGNvbGxlY3RpbmcgZm9jdXNhYmxlIGVsZW1lbnRzLlxuICAgKi9cbiAgcHVibGljIHRyYXAoXG4gICAgZWxlbWVudDogSFRNTEVsZW1lbnQsXG4gICAgb3B0aW9ucz86IHtcbiAgICAgIGZpbHRlcj86IChlbDogSFRNTEVsZW1lbnQpID0+IGJvb2xlYW47XG4gICAgICBwb3N0RmlsdGVyPzogKGVsOiBIVE1MRWxlbWVudCkgPT4gYm9vbGVhbjtcbiAgICB9LFxuICApOiB2b2lkIHtcbiAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXG4gICAgICAna2V5ZG93bicsXG4gICAgICAoZXZlbnQpID0+IHtcbiAgICAgICAgaWYgKGV2ZW50LmtleSAhPT0gJ1RhYicpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEeW5hbWljYWxseSBnZXQgZmlyc3QgYW5kIGxhc3QgZm9jdXNhYmxlIGVsZW1lbnQsIGFzIHRoaXMgbWlnaHQgaGF2ZSBjaGFuZ2VkIHNpbmNlIG9wZW5pbmcgb3ZlcmxheVxuICAgICAgICBjb25zdCBlbGVtZW50Q2hpbGRyZW46IEhUTUxFbGVtZW50W10gPSBBcnJheS5mcm9tKFxuICAgICAgICAgIGVsZW1lbnQuc2hhZG93Um9vdCEuY2hpbGRyZW4gfHwgW10sXG4gICAgICAgICkgYXMgSFRNTEVsZW1lbnRbXTtcbiAgICAgICAgY29uc3QgZm9jdXNhYmxlRWxlbWVudHMgPSBnZXRGb2N1c2FibGVFbGVtZW50cyhlbGVtZW50Q2hpbGRyZW4sIHtcbiAgICAgICAgICBmaWx0ZXI6IG9wdGlvbnM/LmZpbHRlcixcbiAgICAgICAgfSk7XG4gICAgICAgIGNvbnN0IGZpbHRlcmVkRm9jdXNhYmxlRWxlbWVudHMgPSBmb2N1c2FibGVFbGVtZW50cy5maWx0ZXIoXG4gICAgICAgICAgb3B0aW9ucz8ucG9zdEZpbHRlciA/PyAoKCkgPT4gdHJ1ZSksXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKCFmaWx0ZXJlZEZvY3VzYWJsZUVsZW1lbnRzLmxlbmd0aCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlID0gZmlsdGVyZWRGb2N1c2FibGVFbGVtZW50c1swXSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgY29uc3QgbGFzdEZvY3VzYWJsZSA9IGZpbHRlcmVkRm9jdXNhYmxlRWxlbWVudHNbXG4gICAgICAgICAgZmlsdGVyZWRGb2N1c2FibGVFbGVtZW50cy5sZW5ndGggLSAxXG4gICAgICAgIF0gYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgY29uc3QgW3Bpdm90LCBuZXh0XSA9IGV2ZW50LnNoaWZ0S2V5XG4gICAgICAgICAgPyBbZmlyc3RGb2N1c2FibGUsIGxhc3RGb2N1c2FibGVdXG4gICAgICAgICAgOiBbbGFzdEZvY3VzYWJsZSwgZmlyc3RGb2N1c2FibGVdO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAoZmlyc3RGb2N1c2FibGUuZ2V0Um9vdE5vZGUoKSBhcyBEb2N1bWVudCB8IFNoYWRvd1Jvb3QpLmFjdGl2ZUVsZW1lbnQgPT09IHBpdm90IHx8XG4gICAgICAgICAgKGxhc3RGb2N1c2FibGUuZ2V0Um9vdE5vZGUoKSBhcyBEb2N1bWVudCB8IFNoYWRvd1Jvb3QpLmFjdGl2ZUVsZW1lbnQgPT09IHBpdm90XG4gICAgICAgICkge1xuICAgICAgICAgIG5leHQuZm9jdXMoKTtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgeyBzaWduYWw6IHRoaXMuX2NvbnRyb2xsZXIuc2lnbmFsIH0sXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBkaXNjb25uZWN0KCk6IHZvaWQge1xuICAgIHRoaXMuX2NvbnRyb2xsZXIuYWJvcnQoKTtcbiAgICB0aGlzLl9jb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICB9XG59XG4iXSwibmFtZXMiOlsiZWxlbWVudHMiXSwibWFwcGluZ3MiOiI7O0FBS0EsU0FBUyxxQkFBc0M7QUFDN0MsTUFBSSxTQUFTLGdCQUFnQixRQUFRLFdBQVcsR0FBRztBQUNqRCxXQUFPLEVBQUUsU0FBUyxjQUFjLFNBQVMsWUFBWTtBQUFBLEVBQUEsT0FDaEQ7QUFDTCxXQUFPLEVBQUUsU0FBUyxhQUFhLFNBQVMsYUFBYTtBQUFBLEVBQ3ZEO0FBQ0Y7QUFNTyxTQUFTLGtCQUFrQixPQUErQjtBQUN4RCxTQUFBLENBQUMsY0FBYyxhQUFhLFdBQVcsV0FBVyxFQUFFLFNBQVMsTUFBTSxHQUFHO0FBQy9FO0FBTU8sU0FBUywwQkFBMEIsT0FBK0I7QUFDdkUsU0FBTyxNQUFNLFFBQVEsYUFBYSxNQUFNLFFBQVEsbUJBQXFCLEVBQUE7QUFDdkU7QUFNTyxTQUFTLHNCQUFzQixPQUErQjtBQUNuRSxTQUFPLE1BQU0sUUFBUSxlQUFlLE1BQU0sUUFBUSxtQkFBcUIsRUFBQTtBQUN6RTtBQU1PLFNBQVMsNEJBQTRCLE9BQStCO0FBQ2xFLFNBQUEsa0JBQWtCLEtBQUssS0FBSyxDQUFDLFVBQVUsWUFBWSxRQUFRLEtBQUssRUFBRSxTQUFTLE1BQU0sR0FBRztBQUM3RjtBQVFBLFNBQVMscUJBQXFCLGNBQXNCLFVBQWtCLFFBQXdCO0FBQ3BGLFVBQUEsZUFBZSxTQUFTLFlBQVk7QUFDOUM7QUFFQSxTQUFTLGFBQWEsTUFBc0I7QUFDMUMsU0FBTyxPQUFPO0FBQ2hCO0FBRUEsTUFBTSxhQUFhO0FBWUgsU0FBQSxvQkFBb0IsT0FBc0IsU0FBaUIsTUFBc0I7QUFDL0YsUUFBTSxFQUFFLFNBQVMsUUFBUSxJQUFJLG1CQUFtQjtBQUVoRCxNQUFJLE1BQU0sUUFBUSxXQUFXLE1BQU0sUUFBUSxXQUFXO0FBQzdDLFdBQUEsVUFBVSxhQUFhLGFBQWEsSUFBSSxJQUFJLHFCQUFxQixTQUFTLE1B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
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { LitElement, TemplateResult } from 'lit';
|
|
2
2
|
export declare abstract class SbbActionBaseElement extends LitElement {
|
|
3
3
|
protected get maybeDisabled(): boolean | undefined;
|
|
4
|
+
protected get maybeDisabledInteractive(): boolean | undefined;
|
|
4
5
|
connectedCallback(): void;
|
|
5
6
|
protected setupBaseEventHandlers(): void;
|
|
6
7
|
/** Override this method to render the component template. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/base-elements/action-base-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"action-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/base-elements/action-base-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAgB5D,8BAGsB,oBAAqB,SAAQ,UAAU;IAC3D,SAAS,KAAK,aAAa,IAAI,OAAO,GAAG,SAAS,CAGjD;IAED,SAAS,KAAK,wBAAwB,IAAI,OAAO,GAAG,SAAS,CAE5D;IAEe,iBAAiB,IAAI,IAAI;IAezC,SAAS,CAAC,sBAAsB,IAAI,IAAI;IAexC,6DAA6D;IAC7D,SAAS,CAAC,cAAc,IAAI,cAAc;IAI1C,wDAAwD;cACrC,MAAM,IAAI,cAAc;CAO5C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/base-elements/link-base-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAGnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAK1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,6BAA6B,CAAC;AAErC,0DAA0D;AAC1D,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAErE,uBAAuB;AACvB,8BAGsB,kBAAmB,SAAQ,oBAAoB;IACnE,0CAA0C;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEjC,uCAAuC;IACpB,MAAM,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC;IAEpD,wEAAwE;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC;IAEhC,kEAAkE;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEvD,wEAAwE;IACjB,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9F,SAAS,CAAC,QAAQ,wBAAmC;;IASrD,gBAAgB;IACA,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI;IAI/D,gBAAgB;IACA,IAAI,IAAI,IAAI;IAI5B,gBAAgB;IACA,KAAK,IAAI,IAAI;IAI7B,OAAO,CAAC,qBAAqB,CAE3B;IAEF,mHAAmH;cAChG,MAAM,IAAI,cAAc;
|
|
1
|
+
{"version":3,"file":"link-base-element.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/base-elements/link-base-element.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAGnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAK1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,6BAA6B,CAAC;AAErC,0DAA0D;AAC1D,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAErE,uBAAuB;AACvB,8BAGsB,kBAAmB,SAAQ,oBAAoB;IACnE,0CAA0C;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEjC,uCAAuC;IACpB,MAAM,CAAC,EAAE,cAAc,GAAG,MAAM,CAAC;IAEpD,wEAAwE;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC;IAEhC,kEAAkE;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEvD,wEAAwE;IACjB,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9F,SAAS,CAAC,QAAQ,wBAAmC;;IASrD,gBAAgB;IACA,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI;IAI/D,gBAAgB;IACA,IAAI,IAAI,IAAI;IAI5B,gBAAgB;IACA,KAAK,IAAI,IAAI;IAI7B,OAAO,CAAC,qBAAqB,CAE3B;IAEF,mHAAmH;cAChG,MAAM,IAAI,cAAc;CAqB5C"}
|