@sbb-esta/lyne-elements 0.0.0 → 0.52.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +55 -0
- package/_index.scss +2 -0
- package/a11y.css +22 -0
- package/accordion/accordion.d.ts +41 -0
- package/accordion/accordion.d.ts.map +1 -0
- package/accordion.d.ts +2 -0
- package/accordion.d.ts.map +1 -0
- package/accordion.js +88 -0
- package/action-group/action-group.d.ts +45 -0
- package/action-group/action-group.d.ts.map +1 -0
- package/action-group.d.ts +2 -0
- package/action-group.d.ts.map +1 -0
- package/action-group.js +57 -0
- package/alert/alert/alert.d.ts +76 -0
- package/alert/alert/alert.d.ts.map +1 -0
- package/alert/alert-group/alert-group.d.ts +48 -0
- package/alert/alert-group/alert-group.d.ts.map +1 -0
- package/alert/alert-group.d.ts +2 -0
- package/alert/alert-group.d.ts.map +1 -0
- package/alert/alert-group.js +73 -0
- package/alert/alert.d.ts +2 -0
- package/alert/alert.d.ts.map +1 -0
- package/alert/alert.js +139 -0
- package/alert.d.ts +3 -0
- package/alert.d.ts.map +1 -0
- package/alert.js +2 -0
- package/animation.css +18 -0
- package/autocomplete/autocomplete.d.ts +108 -0
- package/autocomplete/autocomplete.d.ts.map +1 -0
- package/autocomplete.d.ts +2 -0
- package/autocomplete.d.ts.map +1 -0
- package/autocomplete.js +300 -0
- package/breadcrumb/breadcrumb/breadcrumb.d.ts +23 -0
- package/breadcrumb/breadcrumb/breadcrumb.d.ts.map +1 -0
- package/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts +50 -0
- package/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -0
- package/breadcrumb/breadcrumb-group.d.ts +2 -0
- package/breadcrumb/breadcrumb-group.d.ts.map +1 -0
- package/breadcrumb/breadcrumb-group.js +150 -0
- package/breadcrumb/breadcrumb.d.ts +2 -0
- package/breadcrumb/breadcrumb.d.ts.map +1 -0
- package/breadcrumb/breadcrumb.js +43 -0
- package/breadcrumb.d.ts +3 -0
- package/breadcrumb.d.ts.map +1 -0
- package/breadcrumb.js +2 -0
- package/button/button/button.d.ts +20 -0
- package/button/button/button.d.ts.map +1 -0
- package/button/button-link/button-link.d.ts +20 -0
- package/button/button-link/button-link.d.ts.map +1 -0
- package/button/button-link.d.ts +2 -0
- package/button/button-link.d.ts.map +1 -0
- package/button/button-link.js +20 -0
- package/button/button-static/button-static.d.ts +20 -0
- package/button/button-static/button-static.d.ts.map +1 -0
- package/button/button-static.d.ts +2 -0
- package/button/button-static.d.ts.map +1 -0
- package/button/button-static.js +20 -0
- package/button/button.d.ts +2 -0
- package/button/button.d.ts.map +1 -0
- package/button/button.js +20 -0
- package/button/common/button-common.d.ts +14 -0
- package/button/common/button-common.d.ts.map +1 -0
- package/button/common.d.ts +2 -0
- package/button/common.d.ts.map +1 -0
- package/button/common.js +42 -0
- package/button/mini-button/mini-button.d.ts +22 -0
- package/button/mini-button/mini-button.d.ts.map +1 -0
- package/button/mini-button.d.ts +2 -0
- package/button/mini-button.d.ts.map +1 -0
- package/button/mini-button.js +29 -0
- package/button/secondary-button/secondary-button.d.ts +20 -0
- package/button/secondary-button/secondary-button.d.ts.map +1 -0
- package/button/secondary-button-link/secondary-button-link.d.ts +20 -0
- package/button/secondary-button-link/secondary-button-link.d.ts.map +1 -0
- package/button/secondary-button-link.d.ts +2 -0
- package/button/secondary-button-link.d.ts.map +1 -0
- package/button/secondary-button-link.js +20 -0
- package/button/secondary-button-static/secondary-button-static.d.ts +20 -0
- package/button/secondary-button-static/secondary-button-static.d.ts.map +1 -0
- package/button/secondary-button-static.d.ts +2 -0
- package/button/secondary-button-static.d.ts.map +1 -0
- package/button/secondary-button-static.js +20 -0
- package/button/secondary-button.d.ts +2 -0
- package/button/secondary-button.d.ts.map +1 -0
- package/button/secondary-button.js +20 -0
- package/button/tertiary-button/tertiary-button.d.ts +20 -0
- package/button/tertiary-button/tertiary-button.d.ts.map +1 -0
- package/button/tertiary-button-link/tertiary-button-link.d.ts +20 -0
- package/button/tertiary-button-link/tertiary-button-link.d.ts.map +1 -0
- package/button/tertiary-button-link.d.ts +2 -0
- package/button/tertiary-button-link.d.ts.map +1 -0
- package/button/tertiary-button-link.js +20 -0
- package/button/tertiary-button-static/tertiary-button-static.d.ts +20 -0
- package/button/tertiary-button-static/tertiary-button-static.d.ts.map +1 -0
- package/button/tertiary-button-static.d.ts +2 -0
- package/button/tertiary-button-static.d.ts.map +1 -0
- package/button/tertiary-button-static.js +20 -0
- package/button/tertiary-button.d.ts +2 -0
- package/button/tertiary-button.d.ts.map +1 -0
- package/button/tertiary-button.js +20 -0
- package/button/transparent-button/transparent-button.d.ts +20 -0
- package/button/transparent-button/transparent-button.d.ts.map +1 -0
- package/button/transparent-button-link/transparent-button-link.d.ts +20 -0
- package/button/transparent-button-link/transparent-button-link.d.ts.map +1 -0
- package/button/transparent-button-link.d.ts +2 -0
- package/button/transparent-button-link.d.ts.map +1 -0
- package/button/transparent-button-link.js +20 -0
- package/button/transparent-button-static/transparent-button-static.d.ts +20 -0
- package/button/transparent-button-static/transparent-button-static.d.ts.map +1 -0
- package/button/transparent-button-static.d.ts +2 -0
- package/button/transparent-button-static.d.ts.map +1 -0
- package/button/transparent-button-static.js +20 -0
- package/button/transparent-button.d.ts +2 -0
- package/button/transparent-button.d.ts.map +1 -0
- package/button/transparent-button.js +20 -0
- package/button.d.ts +15 -0
- package/button.d.ts.map +1 -0
- package/button.js +14 -0
- package/calendar/calendar.d.ts +216 -0
- package/calendar/calendar.d.ts.map +1 -0
- package/calendar.d.ts +2 -0
- package/calendar.d.ts.map +1 -0
- package/calendar.js +826 -0
- package/card/card/card.d.ts +29 -0
- package/card/card/card.d.ts.map +1 -0
- package/card/card-badge/card-badge.d.ts +23 -0
- package/card/card-badge/card-badge.d.ts.map +1 -0
- package/card/card-badge.d.ts +2 -0
- package/card/card-badge.d.ts.map +1 -0
- package/card/card-badge.js +48 -0
- package/card/card-button/card-button.d.ts +19 -0
- package/card/card-button/card-button.d.ts.map +1 -0
- package/card/card-button.d.ts +2 -0
- package/card/card-button.d.ts.map +1 -0
- package/card/card-button.js +19 -0
- package/card/card-link/card-link.d.ts +19 -0
- package/card/card-link/card-link.d.ts.map +1 -0
- package/card/card-link.d.ts +2 -0
- package/card/card-link.d.ts.map +1 -0
- package/card/card-link.js +19 -0
- package/card/card.d.ts +2 -0
- package/card/card.d.ts.map +1 -0
- package/card/card.js +47 -0
- package/card/common/card-action-common.d.ts +9 -0
- package/card/common/card-action-common.d.ts.map +1 -0
- package/card/common.d.ts +2 -0
- package/card/common.d.ts.map +1 -0
- package/card/common.js +67 -0
- package/card.d.ts +6 -0
- package/card.d.ts.map +1 -0
- package/card.js +5 -0
- package/checkbox/checkbox/checkbox.d.ts +73 -0
- package/checkbox/checkbox/checkbox.d.ts.map +1 -0
- package/checkbox/checkbox-group/checkbox-group.d.ts +37 -0
- package/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -0
- package/checkbox/checkbox-group.d.ts +2 -0
- package/checkbox/checkbox-group.d.ts.map +1 -0
- package/checkbox/checkbox-group.js +83 -0
- package/checkbox/checkbox.d.ts +2 -0
- package/checkbox/checkbox.d.ts.map +1 -0
- package/checkbox/checkbox.js +132 -0
- package/checkbox.d.ts +3 -0
- package/checkbox.d.ts.map +1 -0
- package/checkbox.js +2 -0
- package/chip/chip.d.ts +21 -0
- package/chip/chip.d.ts.map +1 -0
- package/chip.d.ts +2 -0
- package/chip.d.ts.map +1 -0
- package/chip.js +35 -0
- package/clock/clock.d.ts +62 -0
- package/clock/clock.d.ts.map +1 -0
- package/clock.d.ts +2 -0
- package/clock.d.ts.map +1 -0
- package/clock.js +156 -0
- package/container/container/container.d.ts +25 -0
- package/container/container/container.d.ts.map +1 -0
- package/container/container.d.ts +2 -0
- package/container/container.d.ts.map +1 -0
- package/container/container.js +41 -0
- package/container/sticky-bar/sticky-bar.d.ts +31 -0
- package/container/sticky-bar/sticky-bar.d.ts.map +1 -0
- package/container/sticky-bar.d.ts +2 -0
- package/container/sticky-bar.d.ts.map +1 -0
- package/container/sticky-bar.js +57 -0
- package/container.d.ts +3 -0
- package/container.d.ts.map +1 -0
- package/container.js +2 -0
- package/core/a11y/arrow-navigation.d.ts +32 -0
- package/core/a11y/arrow-navigation.d.ts.map +1 -0
- package/core/a11y/fake-event-detection.d.ts +5 -0
- package/core/a11y/fake-event-detection.d.ts.map +1 -0
- package/core/a11y/focus-visible-within-controller.d.ts +11 -0
- package/core/a11y/focus-visible-within-controller.d.ts.map +1 -0
- package/core/a11y/focus.d.ts +22 -0
- package/core/a11y/focus.d.ts.map +1 -0
- package/core/a11y/input-modality-detector.d.ts +58 -0
- package/core/a11y/input-modality-detector.d.ts.map +1 -0
- package/core/a11y/interactivity-checker.d.ts +17 -0
- package/core/a11y/interactivity-checker.d.ts.map +1 -0
- package/core/a11y.d.ts +7 -0
- package/core/a11y.d.ts.map +1 -0
- package/core/a11y.js +226 -0
- package/core/base-elements/action-base-element.d.ts +11 -0
- package/core/base-elements/action-base-element.d.ts.map +1 -0
- package/core/base-elements/button-base-element.d.ts +46 -0
- package/core/base-elements/button-base-element.d.ts.map +1 -0
- package/core/base-elements/link-base-element.d.ts +31 -0
- package/core/base-elements/link-base-element.d.ts.map +1 -0
- package/core/base-elements/open-close-base-element.d.ts +37 -0
- package/core/base-elements/open-close-base-element.d.ts.map +1 -0
- package/core/base-elements.d.ts +5 -0
- package/core/base-elements.d.ts.map +1 -0
- package/core/base-elements.js +234 -0
- package/core/config/config.d.ts +22 -0
- package/core/config/config.d.ts.map +1 -0
- package/core/config.d.ts +2 -0
- package/core/config.d.ts.map +1 -0
- package/core/config.js +11 -0
- package/core/controllers/connected-abort-controller.d.ts +11 -0
- package/core/controllers/connected-abort-controller.d.ts.map +1 -0
- package/core/controllers/language-controller.d.ts +33 -0
- package/core/controllers/language-controller.d.ts.map +1 -0
- package/core/controllers/slot-state-controller.d.ts +32 -0
- package/core/controllers/slot-state-controller.d.ts.map +1 -0
- package/core/controllers.d.ts +4 -0
- package/core/controllers.d.ts.map +1 -0
- package/core/controllers.js +88 -0
- package/core/datetime/date-adapter.d.ts +162 -0
- package/core/datetime/date-adapter.d.ts.map +1 -0
- package/core/datetime/native-date-adapter.d.ts +74 -0
- package/core/datetime/native-date-adapter.d.ts.map +1 -0
- package/core/datetime.d.ts +3 -0
- package/core/datetime.d.ts.map +1 -0
- package/core/datetime.js +256 -0
- package/core/decorators/host-attributes.d.ts +22 -0
- package/core/decorators/host-attributes.d.ts.map +1 -0
- package/core/decorators.d.ts +2 -0
- package/core/decorators.d.ts.map +1 -0
- package/core/decorators.js +18 -0
- package/core/dom/breakpoint.d.ts +14 -0
- package/core/dom/breakpoint.d.ts.map +1 -0
- package/core/dom/find-referenced-element.d.ts +7 -0
- package/core/dom/find-referenced-element.d.ts.map +1 -0
- package/core/dom/get-document-writing-mode.d.ts +2 -0
- package/core/dom/get-document-writing-mode.d.ts.map +1 -0
- package/core/dom/host-context.d.ts +11 -0
- package/core/dom/host-context.d.ts.map +1 -0
- package/core/dom/input-element.d.ts +10 -0
- package/core/dom/input-element.d.ts.map +1 -0
- package/core/dom/platform.d.ts +24 -0
- package/core/dom/platform.d.ts.map +1 -0
- package/core/dom/scroll.d.ts +13 -0
- package/core/dom/scroll.d.ts.map +1 -0
- package/core/dom/set-or-remove-attribute.d.ts +8 -0
- package/core/dom/set-or-remove-attribute.d.ts.map +1 -0
- package/core/dom/ssr.d.ts +12 -0
- package/core/dom/ssr.d.ts.map +1 -0
- package/core/dom.d.ts +10 -0
- package/core/dom.d.ts.map +1 -0
- package/core/dom.js +99 -0
- package/core/eventing/composed-path-has-attribute.d.ts +10 -0
- package/core/eventing/composed-path-has-attribute.d.ts.map +1 -0
- package/core/eventing/event-emitter.d.ts +23 -0
- package/core/eventing/event-emitter.d.ts.map +1 -0
- package/core/eventing/event-target.d.ts +3 -0
- package/core/eventing/event-target.d.ts.map +1 -0
- package/core/eventing/form-element-handlers.d.ts +14 -0
- package/core/eventing/form-element-handlers.d.ts.map +1 -0
- package/core/eventing/forward-event.d.ts +6 -0
- package/core/eventing/forward-event.d.ts.map +1 -0
- package/core/eventing/handler-repository.d.ts +28 -0
- package/core/eventing/handler-repository.d.ts.map +1 -0
- package/core/eventing/is-event-prevented.d.ts +3 -0
- package/core/eventing/is-event-prevented.d.ts.map +1 -0
- package/core/eventing/throttle.d.ts +2 -0
- package/core/eventing/throttle.d.ts.map +1 -0
- package/core/eventing.d.ts +9 -0
- package/core/eventing.d.ts.map +1 -0
- package/core/eventing.js +79 -0
- package/core/i18n/i18n.d.ts +74 -0
- package/core/i18n/i18n.d.ts.map +1 -0
- package/core/i18n.d.ts +2 -0
- package/core/i18n.d.ts.map +1 -0
- package/core/i18n.js +627 -0
- package/core/images.d.ts +3 -0
- package/core/images.d.ts.map +1 -0
- package/core/interfaces/overlay-close-details.d.ts +5 -0
- package/core/interfaces/overlay-close-details.d.ts.map +1 -0
- package/core/interfaces/types.d.ts +29 -0
- package/core/interfaces/types.d.ts.map +1 -0
- package/core/interfaces/validation-change.d.ts +4 -0
- package/core/interfaces/validation-change.d.ts.map +1 -0
- package/core/interfaces.d.ts +4 -0
- package/core/interfaces.d.ts.map +1 -0
- package/core/interfaces.js +1 -0
- package/core/mixins/constructor.d.ts +8 -0
- package/core/mixins/constructor.d.ts.map +1 -0
- package/core/mixins/disabled-mixin.d.ts +14 -0
- package/core/mixins/disabled-mixin.d.ts.map +1 -0
- package/core/mixins/form-associated-checkbox-mixin.d.ts +26 -0
- package/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -0
- package/core/mixins/form-associated-mixin.d.ts +39 -0
- package/core/mixins/form-associated-mixin.d.ts.map +1 -0
- package/core/mixins/hydration-mixin.d.ts +30 -0
- package/core/mixins/hydration-mixin.d.ts.map +1 -0
- package/core/mixins/named-slot-list-mixin.d.ts +31 -0
- package/core/mixins/named-slot-list-mixin.d.ts.map +1 -0
- package/core/mixins/negative-mixin.d.ts +11 -0
- package/core/mixins/negative-mixin.d.ts.map +1 -0
- package/core/mixins/required-mixin.d.ts +14 -0
- package/core/mixins/required-mixin.d.ts.map +1 -0
- package/core/mixins/update-scheduler-mixin.d.ts +14 -0
- package/core/mixins/update-scheduler-mixin.d.ts.map +1 -0
- package/core/mixins.d.ts +10 -0
- package/core/mixins.d.ts.map +1 -0
- package/core/mixins.js +425 -0
- package/core/observers/intersection-observer.d.ts +14 -0
- package/core/observers/intersection-observer.d.ts.map +1 -0
- package/core/observers/mutation-observer.d.ts +7 -0
- package/core/observers/mutation-observer.d.ts.map +1 -0
- package/core/observers/resize-observer.d.ts +10 -0
- package/core/observers/resize-observer.d.ts.map +1 -0
- package/core/observers.d.ts +4 -0
- package/core/observers.d.ts.map +1 -0
- package/core/observers.js +38 -0
- package/core/overlay/overlay-option-panel.d.ts +10 -0
- package/core/overlay/overlay-option-panel.d.ts.map +1 -0
- package/core/overlay/overlay-trigger-attributes.d.ts +18 -0
- package/core/overlay/overlay-trigger-attributes.d.ts.map +1 -0
- package/core/overlay/overlay.d.ts +21 -0
- package/core/overlay/overlay.d.ts.map +1 -0
- package/core/overlay/position.d.ts +41 -0
- package/core/overlay/position.d.ts.map +1 -0
- package/core/overlay.d.ts +5 -0
- package/core/overlay.d.ts.map +1 -0
- package/core/overlay.js +121 -0
- package/core/styles/_index.scss +24 -0
- package/core/styles/a11y.scss +15 -0
- package/core/styles/animation.scss +17 -0
- package/core/styles/core/functions.scss +6 -0
- package/core/styles/core/mediaqueries.scss +105 -0
- package/core/styles/core.scss +123 -0
- package/core/styles/font-characters-extension.scss +3 -0
- package/core/styles/layout.scss +16 -0
- package/core/styles/lists.scss +10 -0
- package/core/styles/mixins/a11y.scss +41 -0
- package/core/styles/mixins/animation.scss +13 -0
- package/core/styles/mixins/badge.scss +14 -0
- package/core/styles/mixins/buttons.scss +208 -0
- package/core/styles/mixins/card.scss +174 -0
- package/core/styles/mixins/chip.scss +95 -0
- package/core/styles/mixins/dev_and_debug.scss +8 -0
- package/core/styles/mixins/font-face.scss +57 -0
- package/core/styles/mixins/helpers.scss +67 -0
- package/core/styles/mixins/inputs.scss +11 -0
- package/core/styles/mixins/layout.scss +37 -0
- package/core/styles/mixins/link.scss +99 -0
- package/core/styles/mixins/lists.scss +186 -0
- package/core/styles/mixins/overlay.scss +154 -0
- package/core/styles/mixins/panel.scss +78 -0
- package/core/styles/mixins/pearl-chain-bullet.scss +129 -0
- package/core/styles/mixins/scrollbar.scss +108 -0
- package/core/styles/mixins/shadows.scss +223 -0
- package/core/styles/mixins/typo.scss +237 -0
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables.scss +517 -0
- package/core/styles/node_modules_@sbb-esta_lyne-design-tokens_dist_scss_sbb-variables_css--mixin.scss +1104 -0
- package/core/styles/normalize.scss +216 -0
- package/core/styles/standard-theme.scss +9 -0
- package/core/styles/typography.scss +50 -0
- package/core/testing/event-spy.d.ts +19 -0
- package/core/testing/event-spy.d.ts.map +1 -0
- package/core/testing/mocha-extensions.d.ts +11 -0
- package/core/testing/mocha-extensions.d.ts.map +1 -0
- package/core/testing/private.d.ts +11 -0
- package/core/testing/private.d.ts.map +1 -0
- package/core/testing/scroll.d.ts +6 -0
- package/core/testing/scroll.d.ts.map +1 -0
- package/core/testing/test-setup-ssr.d.ts +2 -0
- package/core/testing/test-setup-ssr.d.ts.map +1 -0
- package/core/testing/test-setup.d.ts +2 -0
- package/core/testing/test-setup.d.ts.map +1 -0
- package/core/testing/wait-for-condition.d.ts +2 -0
- package/core/testing/wait-for-condition.d.ts.map +1 -0
- package/core/testing/wait-for-render.d.ts +18 -0
- package/core/testing/wait-for-render.d.ts.map +1 -0
- package/core/testing.d.ts +6 -0
- package/core/testing.d.ts.map +1 -0
- package/core/testing.js +62 -0
- package/core.css +1280 -0
- package/custom-elements.json +51423 -0
- package/datepicker/common/datepicker-button.d.ts +38 -0
- package/datepicker/common/datepicker-button.d.ts.map +1 -0
- package/datepicker/common.d.ts +2 -0
- package/datepicker/common.d.ts.map +1 -0
- package/datepicker/common.js +122 -0
- package/datepicker/datepicker/datepicker.d.ts +145 -0
- package/datepicker/datepicker/datepicker.d.ts.map +1 -0
- package/datepicker/datepicker-next-day/datepicker-next-day.d.ts +21 -0
- package/datepicker/datepicker-next-day/datepicker-next-day.d.ts.map +1 -0
- package/datepicker/datepicker-next-day.d.ts +2 -0
- package/datepicker/datepicker-next-day.d.ts.map +1 -0
- package/datepicker/datepicker-next-day.js +31 -0
- package/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts +21 -0
- package/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts.map +1 -0
- package/datepicker/datepicker-previous-day.d.ts +2 -0
- package/datepicker/datepicker-previous-day.d.ts.map +1 -0
- package/datepicker/datepicker-previous-day.js +31 -0
- package/datepicker/datepicker-toggle/datepicker-toggle.d.ts +44 -0
- package/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -0
- package/datepicker/datepicker-toggle.d.ts +2 -0
- package/datepicker/datepicker-toggle.d.ts.map +1 -0
- package/datepicker/datepicker-toggle.js +147 -0
- package/datepicker/datepicker.d.ts +2 -0
- package/datepicker/datepicker.d.ts.map +1 -0
- package/datepicker/datepicker.js +261 -0
- package/datepicker.d.ts +6 -0
- package/datepicker.d.ts.map +1 -0
- package/datepicker.js +5 -0
- package/development/accordion/accordion.d.ts +41 -0
- package/development/accordion/accordion.d.ts.map +1 -0
- package/development/accordion.d.ts +2 -0
- package/development/accordion.d.ts.map +1 -0
- package/development/accordion.js +135 -0
- package/development/action-group/action-group.d.ts +45 -0
- package/development/action-group/action-group.d.ts.map +1 -0
- package/development/action-group.d.ts +2 -0
- package/development/action-group.d.ts.map +1 -0
- package/development/action-group.js +343 -0
- package/development/alert/alert/alert.d.ts +76 -0
- package/development/alert/alert/alert.d.ts.map +1 -0
- package/development/alert/alert-group/alert-group.d.ts +48 -0
- package/development/alert/alert-group/alert-group.d.ts.map +1 -0
- package/development/alert/alert-group.d.ts +2 -0
- package/development/alert/alert-group.d.ts.map +1 -0
- package/development/alert/alert-group.js +144 -0
- package/development/alert/alert.d.ts +2 -0
- package/development/alert/alert.d.ts.map +1 -0
- package/development/alert/alert.js +342 -0
- package/development/alert.d.ts +3 -0
- package/development/alert.d.ts.map +1 -0
- package/development/alert.js +3 -0
- package/development/autocomplete/autocomplete.d.ts +108 -0
- package/development/autocomplete/autocomplete.d.ts.map +1 -0
- package/development/autocomplete.d.ts +2 -0
- package/development/autocomplete.d.ts.map +1 -0
- package/development/autocomplete.js +720 -0
- package/development/breadcrumb/breadcrumb/breadcrumb.d.ts +23 -0
- package/development/breadcrumb/breadcrumb/breadcrumb.d.ts.map +1 -0
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts +50 -0
- package/development/breadcrumb/breadcrumb-group/breadcrumb-group.d.ts.map +1 -0
- package/development/breadcrumb/breadcrumb-group.d.ts +2 -0
- package/development/breadcrumb/breadcrumb-group.d.ts.map +1 -0
- package/development/breadcrumb/breadcrumb-group.js +298 -0
- package/development/breadcrumb/breadcrumb.d.ts +2 -0
- package/development/breadcrumb/breadcrumb.d.ts.map +1 -0
- package/development/breadcrumb/breadcrumb.js +129 -0
- package/development/breadcrumb.d.ts +3 -0
- package/development/breadcrumb.d.ts.map +1 -0
- package/development/breadcrumb.js +3 -0
- package/development/button/button/button.d.ts +20 -0
- package/development/button/button/button.d.ts.map +1 -0
- package/development/button/button-link/button-link.d.ts +20 -0
- package/development/button/button-link/button-link.d.ts.map +1 -0
- package/development/button/button-link.d.ts +2 -0
- package/development/button/button-link.d.ts.map +1 -0
- package/development/button/button-link.js +27 -0
- package/development/button/button-static/button-static.d.ts +20 -0
- package/development/button/button-static/button-static.d.ts.map +1 -0
- package/development/button/button-static.d.ts +2 -0
- package/development/button/button-static.d.ts.map +1 -0
- package/development/button/button-static.js +27 -0
- package/development/button/button.d.ts +2 -0
- package/development/button/button.d.ts.map +1 -0
- package/development/button/button.js +27 -0
- package/development/button/common/button-common.d.ts +14 -0
- package/development/button/common/button-common.d.ts.map +1 -0
- package/development/button/common.d.ts +2 -0
- package/development/button/common.d.ts.map +1 -0
- package/development/button/common.js +380 -0
- package/development/button/mini-button/mini-button.d.ts +22 -0
- package/development/button/mini-button/mini-button.d.ts.map +1 -0
- package/development/button/mini-button.d.ts +2 -0
- package/development/button/mini-button.d.ts.map +1 -0
- package/development/button/mini-button.js +194 -0
- package/development/button/secondary-button/secondary-button.d.ts +20 -0
- package/development/button/secondary-button/secondary-button.d.ts.map +1 -0
- package/development/button/secondary-button-link/secondary-button-link.d.ts +20 -0
- package/development/button/secondary-button-link/secondary-button-link.d.ts.map +1 -0
- package/development/button/secondary-button-link.d.ts +2 -0
- package/development/button/secondary-button-link.d.ts.map +1 -0
- package/development/button/secondary-button-link.js +27 -0
- package/development/button/secondary-button-static/secondary-button-static.d.ts +20 -0
- package/development/button/secondary-button-static/secondary-button-static.d.ts.map +1 -0
- package/development/button/secondary-button-static.d.ts +2 -0
- package/development/button/secondary-button-static.d.ts.map +1 -0
- package/development/button/secondary-button-static.js +27 -0
- package/development/button/secondary-button.d.ts +2 -0
- package/development/button/secondary-button.d.ts.map +1 -0
- package/development/button/secondary-button.js +27 -0
- package/development/button/tertiary-button/tertiary-button.d.ts +20 -0
- package/development/button/tertiary-button/tertiary-button.d.ts.map +1 -0
- package/development/button/tertiary-button-link/tertiary-button-link.d.ts +20 -0
- package/development/button/tertiary-button-link/tertiary-button-link.d.ts.map +1 -0
- package/development/button/tertiary-button-link.d.ts +2 -0
- package/development/button/tertiary-button-link.d.ts.map +1 -0
- package/development/button/tertiary-button-link.js +27 -0
- package/development/button/tertiary-button-static/tertiary-button-static.d.ts +20 -0
- package/development/button/tertiary-button-static/tertiary-button-static.d.ts.map +1 -0
- package/development/button/tertiary-button-static.d.ts +2 -0
- package/development/button/tertiary-button-static.d.ts.map +1 -0
- package/development/button/tertiary-button-static.js +27 -0
- package/development/button/tertiary-button.d.ts +2 -0
- package/development/button/tertiary-button.d.ts.map +1 -0
- package/development/button/tertiary-button.js +27 -0
- package/development/button/transparent-button/transparent-button.d.ts +20 -0
- package/development/button/transparent-button/transparent-button.d.ts.map +1 -0
- package/development/button/transparent-button-link/transparent-button-link.d.ts +20 -0
- package/development/button/transparent-button-link/transparent-button-link.d.ts.map +1 -0
- package/development/button/transparent-button-link.d.ts +2 -0
- package/development/button/transparent-button-link.d.ts.map +1 -0
- package/development/button/transparent-button-link.js +27 -0
- package/development/button/transparent-button-static/transparent-button-static.d.ts +20 -0
- package/development/button/transparent-button-static/transparent-button-static.d.ts.map +1 -0
- package/development/button/transparent-button-static.d.ts +2 -0
- package/development/button/transparent-button-static.d.ts.map +1 -0
- package/development/button/transparent-button-static.js +27 -0
- package/development/button/transparent-button.d.ts +2 -0
- package/development/button/transparent-button.d.ts.map +1 -0
- package/development/button/transparent-button.js +27 -0
- package/development/button.d.ts +15 -0
- package/development/button.d.ts.map +1 -0
- package/development/button.js +15 -0
- package/development/calendar/calendar.d.ts +216 -0
- package/development/calendar/calendar.d.ts.map +1 -0
- package/development/calendar.d.ts +2 -0
- package/development/calendar.d.ts.map +1 -0
- package/development/calendar.js +1319 -0
- package/development/card/card/card.d.ts +29 -0
- package/development/card/card/card.d.ts.map +1 -0
- package/development/card/card-badge/card-badge.d.ts +23 -0
- package/development/card/card-badge/card-badge.d.ts.map +1 -0
- package/development/card/card-badge.d.ts +2 -0
- package/development/card/card-badge.d.ts.map +1 -0
- package/development/card/card-badge.js +166 -0
- package/development/card/card-button/card-button.d.ts +19 -0
- package/development/card/card-button/card-button.d.ts.map +1 -0
- package/development/card/card-button.d.ts +2 -0
- package/development/card/card-button.d.ts.map +1 -0
- package/development/card/card-button.js +27 -0
- package/development/card/card-link/card-link.d.ts +19 -0
- package/development/card/card-link/card-link.d.ts.map +1 -0
- package/development/card/card-link.d.ts +2 -0
- package/development/card/card-link.d.ts.map +1 -0
- package/development/card/card-link.js +27 -0
- package/development/card/card.d.ts +2 -0
- package/development/card/card.d.ts.map +1 -0
- package/development/card/card.js +267 -0
- package/development/card/common/card-action-common.d.ts +9 -0
- package/development/card/common/card-action-common.d.ts.map +1 -0
- package/development/card/common.d.ts +2 -0
- package/development/card/common.d.ts.map +1 -0
- package/development/card/common.js +135 -0
- package/development/card.d.ts +6 -0
- package/development/card.d.ts.map +1 -0
- package/development/card.js +6 -0
- package/development/checkbox/checkbox/checkbox.d.ts +73 -0
- package/development/checkbox/checkbox/checkbox.d.ts.map +1 -0
- package/development/checkbox/checkbox-group/checkbox-group.d.ts +37 -0
- package/development/checkbox/checkbox-group/checkbox-group.d.ts.map +1 -0
- package/development/checkbox/checkbox-group.d.ts +2 -0
- package/development/checkbox/checkbox-group.d.ts.map +1 -0
- package/development/checkbox/checkbox-group.js +232 -0
- package/development/checkbox/checkbox.d.ts +2 -0
- package/development/checkbox/checkbox.d.ts.map +1 -0
- package/development/checkbox/checkbox.js +326 -0
- package/development/checkbox.d.ts +3 -0
- package/development/checkbox.d.ts.map +1 -0
- package/development/checkbox.js +3 -0
- package/development/chip/chip.d.ts +21 -0
- package/development/chip/chip.d.ts.map +1 -0
- package/development/chip.d.ts +2 -0
- package/development/chip.d.ts.map +1 -0
- package/development/chip.js +136 -0
- package/development/clock/clock.d.ts +62 -0
- package/development/clock/clock.d.ts.map +1 -0
- package/development/clock.d.ts +2 -0
- package/development/clock.d.ts.map +1 -0
- package/development/clock.js +378 -0
- package/development/container/container/container.d.ts +25 -0
- package/development/container/container/container.d.ts.map +1 -0
- package/development/container/container.d.ts +2 -0
- package/development/container/container.d.ts.map +1 -0
- package/development/container/container.js +115 -0
- package/development/container/sticky-bar/sticky-bar.d.ts +31 -0
- package/development/container/sticky-bar/sticky-bar.d.ts.map +1 -0
- package/development/container/sticky-bar.d.ts +2 -0
- package/development/container/sticky-bar.d.ts.map +1 -0
- package/development/container/sticky-bar.js +221 -0
- package/development/container.d.ts +3 -0
- package/development/container.d.ts.map +1 -0
- package/development/container.js +3 -0
- package/development/core/a11y/arrow-navigation.d.ts +32 -0
- package/development/core/a11y/arrow-navigation.d.ts.map +1 -0
- package/development/core/a11y/fake-event-detection.d.ts +5 -0
- package/development/core/a11y/fake-event-detection.d.ts.map +1 -0
- package/development/core/a11y/focus-visible-within-controller.d.ts +11 -0
- package/development/core/a11y/focus-visible-within-controller.d.ts.map +1 -0
- package/development/core/a11y/focus.d.ts +22 -0
- package/development/core/a11y/focus.d.ts.map +1 -0
- package/development/core/a11y/input-modality-detector.d.ts +58 -0
- package/development/core/a11y/input-modality-detector.d.ts.map +1 -0
- package/development/core/a11y/interactivity-checker.d.ts +17 -0
- package/development/core/a11y/interactivity-checker.d.ts.map +1 -0
- package/development/core/a11y.d.ts +7 -0
- package/development/core/a11y.d.ts.map +1 -0
- package/development/core/a11y.js +295 -0
- package/development/core/base-elements/action-base-element.d.ts +11 -0
- package/development/core/base-elements/action-base-element.d.ts.map +1 -0
- package/development/core/base-elements/button-base-element.d.ts +46 -0
- package/development/core/base-elements/button-base-element.d.ts.map +1 -0
- package/development/core/base-elements/link-base-element.d.ts +31 -0
- package/development/core/base-elements/link-base-element.d.ts.map +1 -0
- package/development/core/base-elements/open-close-base-element.d.ts +37 -0
- package/development/core/base-elements/open-close-base-element.d.ts.map +1 -0
- package/development/core/base-elements.d.ts +5 -0
- package/development/core/base-elements.d.ts.map +1 -0
- package/development/core/base-elements.js +292 -0
- package/development/core/config/config.d.ts +22 -0
- package/development/core/config/config.d.ts.map +1 -0
- package/development/core/config.d.ts +2 -0
- package/development/core/config.d.ts.map +1 -0
- package/development/core/config.js +15 -0
- package/development/core/controllers/connected-abort-controller.d.ts +11 -0
- package/development/core/controllers/connected-abort-controller.d.ts.map +1 -0
- package/development/core/controllers/language-controller.d.ts +33 -0
- package/development/core/controllers/language-controller.d.ts.map +1 -0
- package/development/core/controllers/slot-state-controller.d.ts +32 -0
- package/development/core/controllers/slot-state-controller.d.ts.map +1 -0
- package/development/core/controllers.d.ts +4 -0
- package/development/core/controllers.d.ts.map +1 -0
- package/development/core/controllers.js +134 -0
- package/development/core/datetime/date-adapter.d.ts +162 -0
- package/development/core/datetime/date-adapter.d.ts.map +1 -0
- package/development/core/datetime/native-date-adapter.d.ts +74 -0
- package/development/core/datetime/native-date-adapter.d.ts.map +1 -0
- package/development/core/datetime.d.ts +3 -0
- package/development/core/datetime.d.ts.map +1 -0
- package/development/core/datetime.js +291 -0
- package/development/core/decorators/host-attributes.d.ts +22 -0
- package/development/core/decorators/host-attributes.d.ts.map +1 -0
- package/development/core/decorators.d.ts +2 -0
- package/development/core/decorators.d.ts.map +1 -0
- package/development/core/decorators.js +30 -0
- package/development/core/dom/breakpoint.d.ts +14 -0
- package/development/core/dom/breakpoint.d.ts.map +1 -0
- package/development/core/dom/find-referenced-element.d.ts +7 -0
- package/development/core/dom/find-referenced-element.d.ts.map +1 -0
- package/development/core/dom/get-document-writing-mode.d.ts +2 -0
- package/development/core/dom/get-document-writing-mode.d.ts.map +1 -0
- package/development/core/dom/host-context.d.ts +11 -0
- package/development/core/dom/host-context.d.ts.map +1 -0
- package/development/core/dom/input-element.d.ts +10 -0
- package/development/core/dom/input-element.d.ts.map +1 -0
- package/development/core/dom/platform.d.ts +24 -0
- package/development/core/dom/platform.d.ts.map +1 -0
- package/development/core/dom/scroll.d.ts +13 -0
- package/development/core/dom/scroll.d.ts.map +1 -0
- package/development/core/dom/set-or-remove-attribute.d.ts +8 -0
- package/development/core/dom/set-or-remove-attribute.d.ts.map +1 -0
- package/development/core/dom/ssr.d.ts +12 -0
- package/development/core/dom/ssr.d.ts.map +1 -0
- package/development/core/dom.d.ts +10 -0
- package/development/core/dom.d.ts.map +1 -0
- package/development/core/dom.js +146 -0
- package/development/core/eventing/composed-path-has-attribute.d.ts +10 -0
- package/development/core/eventing/composed-path-has-attribute.d.ts.map +1 -0
- package/development/core/eventing/event-emitter.d.ts +23 -0
- package/development/core/eventing/event-emitter.d.ts.map +1 -0
- package/development/core/eventing/event-target.d.ts +3 -0
- package/development/core/eventing/event-target.d.ts.map +1 -0
- package/development/core/eventing/form-element-handlers.d.ts +14 -0
- package/development/core/eventing/form-element-handlers.d.ts.map +1 -0
- package/development/core/eventing/forward-event.d.ts +6 -0
- package/development/core/eventing/forward-event.d.ts.map +1 -0
- package/development/core/eventing/handler-repository.d.ts +28 -0
- package/development/core/eventing/handler-repository.d.ts.map +1 -0
- package/development/core/eventing/is-event-prevented.d.ts +3 -0
- package/development/core/eventing/is-event-prevented.d.ts.map +1 -0
- package/development/core/eventing/throttle.d.ts +2 -0
- package/development/core/eventing/throttle.d.ts.map +1 -0
- package/development/core/eventing.d.ts +9 -0
- package/development/core/eventing.d.ts.map +1 -0
- package/development/core/eventing.js +98 -0
- package/development/core/i18n/i18n.d.ts +74 -0
- package/development/core/i18n/i18n.d.ts.map +1 -0
- package/development/core/i18n.d.ts +2 -0
- package/development/core/i18n.d.ts.map +1 -0
- package/development/core/i18n.js +708 -0
- package/development/core/images.d.ts +3 -0
- package/development/core/images.d.ts.map +1 -0
- package/development/core/interfaces/overlay-close-details.d.ts +5 -0
- package/development/core/interfaces/overlay-close-details.d.ts.map +1 -0
- package/development/core/interfaces/types.d.ts +29 -0
- package/development/core/interfaces/types.d.ts.map +1 -0
- package/development/core/interfaces/validation-change.d.ts +4 -0
- package/development/core/interfaces/validation-change.d.ts.map +1 -0
- package/development/core/interfaces.d.ts +4 -0
- package/development/core/interfaces.d.ts.map +1 -0
- package/development/core/interfaces.js +2 -0
- package/development/core/mixins/constructor.d.ts +8 -0
- package/development/core/mixins/constructor.d.ts.map +1 -0
- package/development/core/mixins/disabled-mixin.d.ts +14 -0
- package/development/core/mixins/disabled-mixin.d.ts.map +1 -0
- package/development/core/mixins/form-associated-checkbox-mixin.d.ts +26 -0
- package/development/core/mixins/form-associated-checkbox-mixin.d.ts.map +1 -0
- package/development/core/mixins/form-associated-mixin.d.ts +39 -0
- package/development/core/mixins/form-associated-mixin.d.ts.map +1 -0
- package/development/core/mixins/hydration-mixin.d.ts +30 -0
- package/development/core/mixins/hydration-mixin.d.ts.map +1 -0
- package/development/core/mixins/named-slot-list-mixin.d.ts +31 -0
- package/development/core/mixins/named-slot-list-mixin.d.ts.map +1 -0
- package/development/core/mixins/negative-mixin.d.ts +11 -0
- package/development/core/mixins/negative-mixin.d.ts.map +1 -0
- package/development/core/mixins/required-mixin.d.ts +14 -0
- package/development/core/mixins/required-mixin.d.ts.map +1 -0
- package/development/core/mixins/update-scheduler-mixin.d.ts +14 -0
- package/development/core/mixins/update-scheduler-mixin.d.ts.map +1 -0
- package/development/core/mixins.d.ts +10 -0
- package/development/core/mixins.d.ts.map +1 -0
- package/development/core/mixins.js +573 -0
- package/development/core/observers/intersection-observer.d.ts +14 -0
- package/development/core/observers/intersection-observer.d.ts.map +1 -0
- package/development/core/observers/mutation-observer.d.ts +7 -0
- package/development/core/observers/mutation-observer.d.ts.map +1 -0
- package/development/core/observers/resize-observer.d.ts +10 -0
- package/development/core/observers/resize-observer.d.ts.map +1 -0
- package/development/core/observers.d.ts +4 -0
- package/development/core/observers.d.ts.map +1 -0
- package/development/core/observers.js +39 -0
- package/development/core/overlay/overlay-option-panel.d.ts +10 -0
- package/development/core/overlay/overlay-option-panel.d.ts.map +1 -0
- package/development/core/overlay/overlay-trigger-attributes.d.ts +18 -0
- package/development/core/overlay/overlay-trigger-attributes.d.ts.map +1 -0
- package/development/core/overlay/overlay.d.ts +21 -0
- package/development/core/overlay/overlay.d.ts.map +1 -0
- package/development/core/overlay/position.d.ts +41 -0
- package/development/core/overlay/position.d.ts.map +1 -0
- package/development/core/overlay.d.ts +5 -0
- package/development/core/overlay.d.ts.map +1 -0
- package/development/core/overlay.js +234 -0
- package/development/core/testing/event-spy.d.ts +19 -0
- package/development/core/testing/event-spy.d.ts.map +1 -0
- package/development/core/testing/mocha-extensions.d.ts +11 -0
- package/development/core/testing/mocha-extensions.d.ts.map +1 -0
- package/development/core/testing/private.d.ts +11 -0
- package/development/core/testing/private.d.ts.map +1 -0
- package/development/core/testing/scroll.d.ts +6 -0
- package/development/core/testing/scroll.d.ts.map +1 -0
- package/development/core/testing/test-setup-ssr.d.ts +2 -0
- package/development/core/testing/test-setup-ssr.d.ts.map +1 -0
- package/development/core/testing/test-setup.d.ts +2 -0
- package/development/core/testing/test-setup.d.ts.map +1 -0
- package/development/core/testing/wait-for-condition.d.ts +2 -0
- package/development/core/testing/wait-for-condition.d.ts.map +1 -0
- package/development/core/testing/wait-for-render.d.ts +18 -0
- package/development/core/testing/wait-for-render.d.ts.map +1 -0
- package/development/core/testing.d.ts +6 -0
- package/development/core/testing.d.ts.map +1 -0
- package/development/core/testing.js +84 -0
- package/development/datepicker/common/datepicker-button.d.ts +38 -0
- package/development/datepicker/common/datepicker-button.d.ts.map +1 -0
- package/development/datepicker/common.d.ts +2 -0
- package/development/datepicker/common.d.ts.map +1 -0
- package/development/datepicker/common.js +173 -0
- package/development/datepicker/datepicker/datepicker.d.ts +145 -0
- package/development/datepicker/datepicker/datepicker.d.ts.map +1 -0
- package/development/datepicker/datepicker-next-day/datepicker-next-day.d.ts +21 -0
- package/development/datepicker/datepicker-next-day/datepicker-next-day.d.ts.map +1 -0
- package/development/datepicker/datepicker-next-day.d.ts +2 -0
- package/development/datepicker/datepicker-next-day.d.ts.map +1 -0
- package/development/datepicker/datepicker-next-day.js +207 -0
- package/development/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts +21 -0
- package/development/datepicker/datepicker-previous-day/datepicker-previous-day.d.ts.map +1 -0
- package/development/datepicker/datepicker-previous-day.d.ts +2 -0
- package/development/datepicker/datepicker-previous-day.d.ts.map +1 -0
- package/development/datepicker/datepicker-previous-day.js +207 -0
- package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts +44 -0
- package/development/datepicker/datepicker-toggle/datepicker-toggle.d.ts.map +1 -0
- package/development/datepicker/datepicker-toggle.d.ts +2 -0
- package/development/datepicker/datepicker-toggle.d.ts.map +1 -0
- package/development/datepicker/datepicker-toggle.js +234 -0
- package/development/datepicker/datepicker.d.ts +2 -0
- package/development/datepicker/datepicker.d.ts.map +1 -0
- package/development/datepicker/datepicker.js +381 -0
- package/development/datepicker.d.ts +6 -0
- package/development/datepicker.d.ts.map +1 -0
- package/development/datepicker.js +6 -0
- package/development/dialog/dialog/dialog.d.ts +54 -0
- package/development/dialog/dialog/dialog.d.ts.map +1 -0
- package/development/dialog/dialog-actions/dialog-actions.d.ts +18 -0
- package/development/dialog/dialog-actions/dialog-actions.d.ts.map +1 -0
- package/development/dialog/dialog-actions.d.ts +2 -0
- package/development/dialog/dialog-actions.d.ts.map +1 -0
- package/development/dialog/dialog-actions.js +66 -0
- package/development/dialog/dialog-content/dialog-content.d.ts +17 -0
- package/development/dialog/dialog-content/dialog-content.d.ts.map +1 -0
- package/development/dialog/dialog-content.d.ts +2 -0
- package/development/dialog/dialog-content.d.ts.map +1 -0
- package/development/dialog/dialog-content.js +91 -0
- package/development/dialog/dialog-title/dialog-title.d.ts +43 -0
- package/development/dialog/dialog-title/dialog-title.d.ts.map +1 -0
- package/development/dialog/dialog-title.d.ts +2 -0
- package/development/dialog/dialog-title.d.ts.map +1 -0
- package/development/dialog/dialog-title.js +168 -0
- package/development/dialog/dialog.d.ts +2 -0
- package/development/dialog/dialog.d.ts.map +1 -0
- package/development/dialog/dialog.js +437 -0
- package/development/dialog.d.ts +5 -0
- package/development/dialog.d.ts.map +1 -0
- package/development/dialog.js +5 -0
- package/development/divider/divider.d.ts +21 -0
- package/development/divider/divider.d.ts.map +1 -0
- package/development/divider.d.ts +2 -0
- package/development/divider.d.ts.map +1 -0
- package/development/divider.js +85 -0
- package/development/expansion-panel/expansion-panel/expansion-panel.d.ts +75 -0
- package/development/expansion-panel/expansion-panel/expansion-panel.d.ts.map +1 -0
- package/development/expansion-panel/expansion-panel-content/expansion-panel-content.d.ts +17 -0
- package/development/expansion-panel/expansion-panel-content/expansion-panel-content.d.ts.map +1 -0
- package/development/expansion-panel/expansion-panel-content.d.ts +2 -0
- package/development/expansion-panel/expansion-panel-content.d.ts.map +1 -0
- package/development/expansion-panel/expansion-panel-content.js +84 -0
- package/development/expansion-panel/expansion-panel-header/expansion-panel-header.d.ts +38 -0
- package/development/expansion-panel/expansion-panel-header/expansion-panel-header.d.ts.map +1 -0
- package/development/expansion-panel/expansion-panel-header.d.ts +2 -0
- package/development/expansion-panel/expansion-panel-header.d.ts.map +1 -0
- package/development/expansion-panel/expansion-panel-header.js +194 -0
- package/development/expansion-panel/expansion-panel.d.ts +2 -0
- package/development/expansion-panel/expansion-panel.d.ts.map +1 -0
- package/development/expansion-panel/expansion-panel.js +396 -0
- package/development/expansion-panel.d.ts +4 -0
- package/development/expansion-panel.d.ts.map +1 -0
- package/development/expansion-panel.js +4 -0
- package/development/file-selector/file-selector.d.ts +74 -0
- package/development/file-selector/file-selector.d.ts.map +1 -0
- package/development/file-selector.d.ts +2 -0
- package/development/file-selector.d.ts.map +1 -0
- package/development/file-selector.js +428 -0
- package/development/footer/footer.d.ts +35 -0
- package/development/footer/footer.d.ts.map +1 -0
- package/development/footer.d.ts +2 -0
- package/development/footer.d.ts.map +1 -0
- package/development/footer.js +229 -0
- package/development/form-error/form-error.d.ts +21 -0
- package/development/form-error/form-error.d.ts.map +1 -0
- package/development/form-error.d.ts +2 -0
- package/development/form-error.d.ts.map +1 -0
- package/development/form-error.js +121 -0
- package/development/form-field/form-field/form-field.d.ts +101 -0
- package/development/form-field/form-field/form-field.d.ts.map +1 -0
- package/development/form-field/form-field-clear/form-field-clear.d.ts +24 -0
- package/development/form-field/form-field-clear/form-field-clear.d.ts.map +1 -0
- package/development/form-field/form-field-clear.d.ts +2 -0
- package/development/form-field/form-field-clear.d.ts.map +1 -0
- package/development/form-field/form-field-clear.js +223 -0
- package/development/form-field/form-field.d.ts +2 -0
- package/development/form-field/form-field.d.ts.map +1 -0
- package/development/form-field/form-field.js +885 -0
- package/development/form-field.d.ts +3 -0
- package/development/form-field.d.ts.map +1 -0
- package/development/form-field.js +3 -0
- package/development/header/common/header-action-common.d.ts +11 -0
- package/development/header/common/header-action-common.d.ts.map +1 -0
- package/development/header/common.d.ts +2 -0
- package/development/header/common.d.ts.map +1 -0
- package/development/header/common.js +340 -0
- package/development/header/header/header.d.ts +59 -0
- package/development/header/header/header.d.ts.map +1 -0
- package/development/header/header-button/header-button.d.ts +18 -0
- package/development/header/header-button/header-button.d.ts.map +1 -0
- package/development/header/header-button.d.ts +2 -0
- package/development/header/header-button.d.ts.map +1 -0
- package/development/header/header-button.js +25 -0
- package/development/header/header-link/header-link.d.ts +18 -0
- package/development/header/header-link/header-link.d.ts.map +1 -0
- package/development/header/header-link.d.ts +2 -0
- package/development/header/header-link.d.ts.map +1 -0
- package/development/header/header-link.js +23 -0
- package/development/header/header.d.ts +2 -0
- package/development/header/header.d.ts.map +1 -0
- package/development/header/header.js +333 -0
- package/development/header.d.ts +5 -0
- package/development/header.d.ts.map +1 -0
- package/development/header.js +5 -0
- package/development/icon/icon-base.d.ts +28 -0
- package/development/icon/icon-base.d.ts.map +1 -0
- package/development/icon/icon-name-mixin.d.ts +12 -0
- package/development/icon/icon-name-mixin.d.ts.map +1 -0
- package/development/icon/icon-request.d.ts +3 -0
- package/development/icon/icon-request.d.ts.map +1 -0
- package/development/icon/icon-validate.d.ts +12 -0
- package/development/icon/icon-validate.d.ts.map +1 -0
- package/development/icon/icon.d.ts +24 -0
- package/development/icon/icon.d.ts.map +1 -0
- package/development/icon.d.ts +6 -0
- package/development/icon.d.ts.map +1 -0
- package/development/icon.js +307 -0
- package/development/image/image.d.ts +236 -0
- package/development/image/image.d.ts.map +1 -0
- package/development/image.d.ts +2 -0
- package/development/image.d.ts.map +1 -0
- package/development/image.js +525 -0
- package/development/journey-header/journey-header.d.ts +30 -0
- package/development/journey-header/journey-header.d.ts.map +1 -0
- package/development/journey-header.d.ts +2 -0
- package/development/journey-header.d.ts.map +1 -0
- package/development/journey-header.js +132 -0
- package/development/lead-container/lead-container.d.ts +20 -0
- package/development/lead-container/lead-container.d.ts.map +1 -0
- package/development/lead-container.d.ts +2 -0
- package/development/lead-container.d.ts.map +1 -0
- package/development/lead-container.js +168 -0
- package/development/link/block-link/block-link.d.ts +18 -0
- package/development/link/block-link/block-link.d.ts.map +1 -0
- package/development/link/block-link-button/block-link-button.d.ts +18 -0
- package/development/link/block-link-button/block-link-button.d.ts.map +1 -0
- package/development/link/block-link-button.d.ts +2 -0
- package/development/link/block-link-button.d.ts.map +1 -0
- package/development/link/block-link-button.js +26 -0
- package/development/link/block-link-static/block-link-static.d.ts +18 -0
- package/development/link/block-link-static/block-link-static.d.ts.map +1 -0
- package/development/link/block-link-static.d.ts +2 -0
- package/development/link/block-link-static.d.ts.map +1 -0
- package/development/link/block-link-static.js +26 -0
- package/development/link/block-link.d.ts +2 -0
- package/development/link/block-link.d.ts.map +1 -0
- package/development/link/block-link.js +26 -0
- package/development/link/common/block-link-common.d.ts +11 -0
- package/development/link/common/block-link-common.d.ts.map +1 -0
- package/development/link/common/inline-link-common.d.ts +8 -0
- package/development/link/common/inline-link-common.d.ts.map +1 -0
- package/development/link/common/link-common.d.ts +9 -0
- package/development/link/common/link-common.d.ts.map +1 -0
- package/development/link/common.d.ts +4 -0
- package/development/link/common.d.ts.map +1 -0
- package/development/link/common.js +271 -0
- package/development/link/link/link.d.ts +17 -0
- package/development/link/link/link.d.ts.map +1 -0
- package/development/link/link-button/link-button.d.ts +17 -0
- package/development/link/link-button/link-button.d.ts.map +1 -0
- package/development/link/link-button.d.ts +2 -0
- package/development/link/link-button.d.ts.map +1 -0
- package/development/link/link-button.js +26 -0
- package/development/link/link-static/link-static.d.ts +17 -0
- package/development/link/link-static/link-static.d.ts.map +1 -0
- package/development/link/link-static.d.ts +2 -0
- package/development/link/link-static.d.ts.map +1 -0
- package/development/link/link-static.js +26 -0
- package/development/link/link.d.ts +2 -0
- package/development/link/link.d.ts.map +1 -0
- package/development/link/link.js +26 -0
- package/development/link-list/link-list.d.ts +40 -0
- package/development/link-list/link-list.d.ts.map +1 -0
- package/development/link-list.d.ts +2 -0
- package/development/link-list.d.ts.map +1 -0
- package/development/link-list.js +255 -0
- package/development/link.d.ts +8 -0
- package/development/link.d.ts.map +1 -0
- package/development/link.js +8 -0
- package/development/loading-indicator/loading-indicator.d.ts +21 -0
- package/development/loading-indicator/loading-indicator.d.ts.map +1 -0
- package/development/loading-indicator.d.ts +2 -0
- package/development/loading-indicator.d.ts.map +1 -0
- package/development/loading-indicator.js +339 -0
- package/development/logo/logo.d.ts +24 -0
- package/development/logo/logo.d.ts.map +1 -0
- package/development/logo.d.ts +2 -0
- package/development/logo.d.ts.map +1 -0
- package/development/logo.js +142 -0
- package/development/map-container/map-container.d.ts +43 -0
- package/development/map-container/map-container.d.ts.map +1 -0
- package/development/map-container.d.ts +2 -0
- package/development/map-container.d.ts.map +1 -0
- package/development/map-container.js +268 -0
- package/development/menu/common/menu-action-common.d.ts +11 -0
- package/development/menu/common/menu-action-common.d.ts.map +1 -0
- package/development/menu/common.d.ts +2 -0
- package/development/menu/common.d.ts.map +1 -0
- package/development/menu/common.js +174 -0
- package/development/menu/menu/menu.d.ts +76 -0
- package/development/menu/menu/menu.d.ts.map +1 -0
- package/development/menu/menu-button/menu-button.d.ts +20 -0
- package/development/menu/menu-button/menu-button.d.ts.map +1 -0
- package/development/menu/menu-button.d.ts +2 -0
- package/development/menu/menu-button.d.ts.map +1 -0
- package/development/menu/menu-button.js +26 -0
- package/development/menu/menu-link/menu-link.d.ts +20 -0
- package/development/menu/menu-link/menu-link.d.ts.map +1 -0
- package/development/menu/menu-link.d.ts +2 -0
- package/development/menu/menu-link.d.ts.map +1 -0
- package/development/menu/menu-link.js +23 -0
- package/development/menu/menu.d.ts +2 -0
- package/development/menu/menu.d.ts.map +1 -0
- package/development/menu/menu.js +538 -0
- package/development/menu.d.ts +5 -0
- package/development/menu.d.ts.map +1 -0
- package/development/menu.js +5 -0
- package/development/message/message.d.ts +26 -0
- package/development/message/message.d.ts.map +1 -0
- package/development/message.d.ts +2 -0
- package/development/message.d.ts.map +1 -0
- package/development/message.js +118 -0
- package/development/navigation/common/navigation-action-common.d.ts +14 -0
- package/development/navigation/common/navigation-action-common.d.ts.map +1 -0
- package/development/navigation/common.d.ts +2 -0
- package/development/navigation/common.d.ts.map +1 -0
- package/development/navigation/common.js +179 -0
- package/development/navigation/navigation/navigation.d.ts +82 -0
- package/development/navigation/navigation/navigation.d.ts.map +1 -0
- package/development/navigation/navigation-button/navigation-button.d.ts +17 -0
- package/development/navigation/navigation-button/navigation-button.d.ts.map +1 -0
- package/development/navigation/navigation-button.d.ts +2 -0
- package/development/navigation/navigation-button.d.ts.map +1 -0
- package/development/navigation/navigation-button.js +25 -0
- package/development/navigation/navigation-link/navigation-link.d.ts +17 -0
- package/development/navigation/navigation-link/navigation-link.d.ts.map +1 -0
- package/development/navigation/navigation-link.d.ts +2 -0
- package/development/navigation/navigation-link.d.ts.map +1 -0
- package/development/navigation/navigation-link.js +25 -0
- package/development/navigation/navigation-list/navigation-list.d.ts +30 -0
- package/development/navigation/navigation-list/navigation-list.d.ts.map +1 -0
- package/development/navigation/navigation-list.d.ts +2 -0
- package/development/navigation/navigation-list.d.ts.map +1 -0
- package/development/navigation/navigation-list.js +104 -0
- package/development/navigation/navigation-marker/navigation-marker.d.ts +38 -0
- package/development/navigation/navigation-marker/navigation-marker.d.ts.map +1 -0
- package/development/navigation/navigation-marker.d.ts +2 -0
- package/development/navigation/navigation-marker.d.ts.map +1 -0
- package/development/navigation/navigation-marker.js +220 -0
- package/development/navigation/navigation-section/navigation-section.d.ts +76 -0
- package/development/navigation/navigation-section/navigation-section.d.ts.map +1 -0
- package/development/navigation/navigation-section.d.ts +2 -0
- package/development/navigation/navigation-section.d.ts.map +1 -0
- package/development/navigation/navigation-section.js +600 -0
- package/development/navigation/navigation.d.ts +2 -0
- package/development/navigation/navigation.d.ts.map +1 -0
- package/development/navigation/navigation.js +598 -0
- package/development/navigation.d.ts +8 -0
- package/development/navigation.d.ts.map +1 -0
- package/development/navigation.js +8 -0
- package/development/notification/notification.d.ts +82 -0
- package/development/notification/notification.d.ts.map +1 -0
- package/development/notification.d.ts +2 -0
- package/development/notification.d.ts.map +1 -0
- package/development/notification.js +472 -0
- package/development/option/optgroup/optgroup.d.ts +33 -0
- package/development/option/optgroup/optgroup.d.ts.map +1 -0
- package/development/option/optgroup.d.ts +2 -0
- package/development/option/optgroup.d.ts.map +1 -0
- package/development/option/optgroup.js +230 -0
- package/development/option/option/option.d.ts +91 -0
- package/development/option/option/option.d.ts.map +1 -0
- package/development/option/option.d.ts +2 -0
- package/development/option/option.d.ts.map +1 -0
- package/development/option/option.js +444 -0
- package/development/option.d.ts +3 -0
- package/development/option.d.ts.map +1 -0
- package/development/option.js +3 -0
- package/development/overlay/overlay-base-element.d.ts +43 -0
- package/development/overlay/overlay-base-element.d.ts.map +1 -0
- package/development/overlay/overlay.d.ts +52 -0
- package/development/overlay/overlay.d.ts.map +1 -0
- package/development/overlay.d.ts +3 -0
- package/development/overlay.d.ts.map +1 -0
- package/development/overlay.js +484 -0
- package/development/popover/popover/popover.d.ts +85 -0
- package/development/popover/popover/popover.d.ts.map +1 -0
- package/development/popover/popover-trigger/popover-trigger.d.ts +21 -0
- package/development/popover/popover-trigger/popover-trigger.d.ts.map +1 -0
- package/development/popover/popover-trigger.d.ts +2 -0
- package/development/popover/popover-trigger.d.ts.map +1 -0
- package/development/popover/popover-trigger.js +266 -0
- package/development/popover/popover.d.ts +2 -0
- package/development/popover/popover.d.ts.map +1 -0
- package/development/popover/popover.js +554 -0
- package/development/popover.d.ts +3 -0
- package/development/popover.d.ts.map +1 -0
- package/development/popover.js +3 -0
- package/development/radio-button/radio-button/radio-button.d.ts +102 -0
- package/development/radio-button/radio-button/radio-button.d.ts.map +1 -0
- package/development/radio-button/radio-button-group/radio-button-group.d.ts +91 -0
- package/development/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -0
- package/development/radio-button/radio-button-group.d.ts +2 -0
- package/development/radio-button/radio-button-group.d.ts.map +1 -0
- package/development/radio-button/radio-button-group.js +338 -0
- package/development/radio-button/radio-button.d.ts +2 -0
- package/development/radio-button/radio-button.d.ts.map +1 -0
- package/development/radio-button/radio-button.js +398 -0
- package/development/radio-button.d.ts +3 -0
- package/development/radio-button.d.ts.map +1 -0
- package/development/radio-button.js +3 -0
- package/development/screen-reader-only/screen-reader-only.d.ts +17 -0
- package/development/screen-reader-only/screen-reader-only.d.ts.map +1 -0
- package/development/screen-reader-only.d.ts +2 -0
- package/development/screen-reader-only.d.ts.map +1 -0
- package/development/screen-reader-only.js +51 -0
- package/development/select/select.d.ts +140 -0
- package/development/select/select.d.ts.map +1 -0
- package/development/select.d.ts +2 -0
- package/development/select.d.ts.map +1 -0
- package/development/select.js +892 -0
- package/development/selection-panel/selection-panel.d.ts +63 -0
- package/development/selection-panel/selection-panel.d.ts.map +1 -0
- package/development/selection-panel.d.ts +2 -0
- package/development/selection-panel.d.ts.map +1 -0
- package/development/selection-panel.js +377 -0
- package/development/signet/signet.d.ts +20 -0
- package/development/signet/signet.d.ts.map +1 -0
- package/development/signet.d.ts +2 -0
- package/development/signet.d.ts.map +1 -0
- package/development/signet.js +116 -0
- package/development/skiplink-list/skiplink-list.d.ts +32 -0
- package/development/skiplink-list/skiplink-list.d.ts.map +1 -0
- package/development/skiplink-list.d.ts +2 -0
- package/development/skiplink-list.d.ts.map +1 -0
- package/development/skiplink-list.js +125 -0
- package/development/slider/slider.d.ts +70 -0
- package/development/slider/slider.d.ts.map +1 -0
- package/development/slider.d.ts +2 -0
- package/development/slider.d.ts.map +1 -0
- package/development/slider.js +352 -0
- package/development/status/status.d.ts +32 -0
- package/development/status/status.d.ts.map +1 -0
- package/development/status.d.ts +2 -0
- package/development/status.d.ts.map +1 -0
- package/development/status.js +156 -0
- package/development/stepper/step/step.d.ts +66 -0
- package/development/stepper/step/step.d.ts.map +1 -0
- package/development/stepper/step-label/step-label.d.ts +47 -0
- package/development/stepper/step-label/step-label.d.ts.map +1 -0
- package/development/stepper/step-label.d.ts +2 -0
- package/development/stepper/step-label.d.ts.map +1 -0
- package/development/stepper/step-label.js +280 -0
- package/development/stepper/step.d.ts +2 -0
- package/development/stepper/step.d.ts.map +1 -0
- package/development/stepper/step.js +233 -0
- package/development/stepper/stepper/stepper.d.ts +59 -0
- package/development/stepper/stepper/stepper.d.ts.map +1 -0
- package/development/stepper/stepper.d.ts +2 -0
- package/development/stepper/stepper.d.ts.map +1 -0
- package/development/stepper/stepper.js +364 -0
- package/development/stepper.d.ts +4 -0
- package/development/stepper.d.ts.map +1 -0
- package/development/stepper.js +4 -0
- package/development/tabs/tab-group/tab-group.d.ts +94 -0
- package/development/tabs/tab-group/tab-group.d.ts.map +1 -0
- package/development/tabs/tab-group.d.ts +2 -0
- package/development/tabs/tab-group.d.ts.map +1 -0
- package/development/tabs/tab-group.js +390 -0
- package/development/tabs/tab-title/tab-title.d.ts +32 -0
- package/development/tabs/tab-title/tab-title.d.ts.map +1 -0
- package/development/tabs/tab-title.d.ts +2 -0
- package/development/tabs/tab-title.d.ts.map +1 -0
- package/development/tabs/tab-title.js +288 -0
- package/development/tabs.d.ts +3 -0
- package/development/tabs.d.ts.map +1 -0
- package/development/tabs.js +3 -0
- package/development/tag/tag/tag.d.ts +53 -0
- package/development/tag/tag/tag.d.ts.map +1 -0
- package/development/tag/tag-group/tag-group.d.ts +46 -0
- package/development/tag/tag-group/tag-group.d.ts.map +1 -0
- package/development/tag/tag-group.d.ts +2 -0
- package/development/tag/tag-group.d.ts.map +1 -0
- package/development/tag/tag-group.js +143 -0
- package/development/tag/tag.d.ts +2 -0
- package/development/tag/tag.d.ts.map +1 -0
- package/development/tag/tag.js +298 -0
- package/development/tag.d.ts +3 -0
- package/development/tag.d.ts.map +1 -0
- package/development/tag.js +3 -0
- package/development/teaser/teaser.d.ts +31 -0
- package/development/teaser/teaser.d.ts.map +1 -0
- package/development/teaser-hero/teaser-hero.d.ts +26 -0
- package/development/teaser-hero/teaser-hero.d.ts.map +1 -0
- package/development/teaser-hero.d.ts +2 -0
- package/development/teaser-hero.d.ts.map +1 -0
- package/development/teaser-hero.js +182 -0
- package/development/teaser-paid/teaser-paid.d.ts +20 -0
- package/development/teaser-paid/teaser-paid.d.ts.map +1 -0
- package/development/teaser-paid.d.ts +2 -0
- package/development/teaser-paid.d.ts.map +1 -0
- package/development/teaser-paid.js +92 -0
- package/development/teaser.d.ts +2 -0
- package/development/teaser.d.ts.map +1 -0
- package/development/teaser.js +205 -0
- package/development/time-input/time-input.d.ts +68 -0
- package/development/time-input/time-input.d.ts.map +1 -0
- package/development/time-input.d.ts +2 -0
- package/development/time-input.d.ts.map +1 -0
- package/development/time-input.js +270 -0
- package/development/timetable-occupancy/timetable-occupancy.d.ts +23 -0
- package/development/timetable-occupancy/timetable-occupancy.d.ts.map +1 -0
- package/development/timetable-occupancy-icon/timetable-occupancy-icon.d.ts +27 -0
- package/development/timetable-occupancy-icon/timetable-occupancy-icon.d.ts.map +1 -0
- package/development/timetable-occupancy-icon.d.ts +2 -0
- package/development/timetable-occupancy-icon.d.ts.map +1 -0
- package/development/timetable-occupancy-icon.js +93 -0
- package/development/timetable-occupancy.d.ts +2 -0
- package/development/timetable-occupancy.d.ts.map +1 -0
- package/development/timetable-occupancy.js +134 -0
- package/development/title/title-base.d.ts +26 -0
- package/development/title/title-base.d.ts.map +1 -0
- package/development/title/title.d.ts +16 -0
- package/development/title/title.d.ts.map +1 -0
- package/development/title.d.ts +3 -0
- package/development/title.d.ts.map +1 -0
- package/development/title.js +260 -0
- package/development/toast/toast.d.ts +79 -0
- package/development/toast/toast.d.ts.map +1 -0
- package/development/toast.d.ts +2 -0
- package/development/toast.d.ts.map +1 -0
- package/development/toast.js +381 -0
- package/development/toggle/toggle/toggle.d.ts +63 -0
- package/development/toggle/toggle/toggle.d.ts.map +1 -0
- package/development/toggle/toggle-option/toggle-option.d.ts +37 -0
- package/development/toggle/toggle-option/toggle-option.d.ts.map +1 -0
- package/development/toggle/toggle-option.d.ts +2 -0
- package/development/toggle/toggle-option.d.ts.map +1 -0
- package/development/toggle/toggle-option.js +222 -0
- package/development/toggle/toggle.d.ts +2 -0
- package/development/toggle/toggle.d.ts.map +1 -0
- package/development/toggle/toggle.js +308 -0
- package/development/toggle-check/toggle-check.d.ts +34 -0
- package/development/toggle-check/toggle-check.d.ts.map +1 -0
- package/development/toggle-check.d.ts +2 -0
- package/development/toggle-check.d.ts.map +1 -0
- package/development/toggle-check.js +251 -0
- package/development/toggle.d.ts +3 -0
- package/development/toggle.d.ts.map +1 -0
- package/development/toggle.js +3 -0
- package/development/train/train/train.d.ts +48 -0
- package/development/train/train/train.d.ts.map +1 -0
- package/development/train/train-blocked-passage/train-blocked-passage.d.ts +15 -0
- package/development/train/train-blocked-passage/train-blocked-passage.d.ts.map +1 -0
- package/development/train/train-blocked-passage.d.ts +2 -0
- package/development/train/train-blocked-passage.d.ts.map +1 -0
- package/development/train/train-blocked-passage.js +101 -0
- package/development/train/train-formation/train-formation.d.ts +40 -0
- package/development/train/train-formation/train-formation.d.ts.map +1 -0
- package/development/train/train-formation.d.ts +2 -0
- package/development/train/train-formation.d.ts.map +1 -0
- package/development/train/train-formation.js +294 -0
- package/development/train/train-wagon/train-wagon.d.ts +49 -0
- package/development/train/train-wagon/train-wagon.d.ts.map +1 -0
- package/development/train/train-wagon.d.ts +2 -0
- package/development/train/train-wagon.d.ts.map +1 -0
- package/development/train/train-wagon.js +328 -0
- package/development/train/train.d.ts +2 -0
- package/development/train/train.d.ts.map +1 -0
- package/development/train/train.js +270 -0
- package/development/train.d.ts +5 -0
- package/development/train.d.ts.map +1 -0
- package/development/train.js +5 -0
- package/development/visual-checkbox/visual-checkbox.d.ts +21 -0
- package/development/visual-checkbox/visual-checkbox.d.ts.map +1 -0
- package/development/visual-checkbox.d.ts +2 -0
- package/development/visual-checkbox.d.ts.map +1 -0
- package/development/visual-checkbox.js +181 -0
- package/dialog/dialog/dialog.d.ts +54 -0
- package/dialog/dialog/dialog.d.ts.map +1 -0
- package/dialog/dialog-actions/dialog-actions.d.ts +18 -0
- package/dialog/dialog-actions/dialog-actions.d.ts.map +1 -0
- package/dialog/dialog-actions.d.ts +2 -0
- package/dialog/dialog-actions.d.ts.map +1 -0
- package/dialog/dialog-actions.js +21 -0
- package/dialog/dialog-content/dialog-content.d.ts +17 -0
- package/dialog/dialog-content/dialog-content.d.ts.map +1 -0
- package/dialog/dialog-content.d.ts +2 -0
- package/dialog/dialog-content.d.ts.map +1 -0
- package/dialog/dialog-content.js +24 -0
- package/dialog/dialog-title/dialog-title.d.ts +43 -0
- package/dialog/dialog-title/dialog-title.d.ts.map +1 -0
- package/dialog/dialog-title.d.ts +2 -0
- package/dialog/dialog-title.d.ts.map +1 -0
- package/dialog/dialog-title.js +86 -0
- package/dialog/dialog.d.ts +2 -0
- package/dialog/dialog.d.ts.map +1 -0
- package/dialog/dialog.js +135 -0
- package/dialog.d.ts +5 -0
- package/dialog.d.ts.map +1 -0
- package/dialog.js +4 -0
- package/divider/divider.d.ts +21 -0
- package/divider/divider.d.ts.map +1 -0
- package/divider.d.ts +2 -0
- package/divider.d.ts.map +1 -0
- package/divider.js +34 -0
- package/expansion-panel/expansion-panel/expansion-panel.d.ts +75 -0
- package/expansion-panel/expansion-panel/expansion-panel.d.ts.map +1 -0
- package/expansion-panel/expansion-panel-content/expansion-panel-content.d.ts +17 -0
- package/expansion-panel/expansion-panel-content/expansion-panel-content.d.ts.map +1 -0
- package/expansion-panel/expansion-panel-content.d.ts +2 -0
- package/expansion-panel/expansion-panel-content.d.ts.map +1 -0
- package/expansion-panel/expansion-panel-content.js +29 -0
- package/expansion-panel/expansion-panel-header/expansion-panel-header.d.ts +38 -0
- package/expansion-panel/expansion-panel-header/expansion-panel-header.d.ts.map +1 -0
- package/expansion-panel/expansion-panel-header.d.ts +2 -0
- package/expansion-panel/expansion-panel-header.d.ts.map +1 -0
- package/expansion-panel/expansion-panel-header.js +75 -0
- package/expansion-panel/expansion-panel.d.ts +2 -0
- package/expansion-panel/expansion-panel.d.ts.map +1 -0
- package/expansion-panel/expansion-panel.js +142 -0
- package/expansion-panel.d.ts +4 -0
- package/expansion-panel.d.ts.map +1 -0
- package/expansion-panel.js +3 -0
- package/file-selector/file-selector.d.ts +74 -0
- package/file-selector/file-selector.d.ts.map +1 -0
- package/file-selector.d.ts +2 -0
- package/file-selector.d.ts.map +1 -0
- package/file-selector.js +218 -0
- package/font-characters-extension.css +18 -0
- package/footer/footer.d.ts +35 -0
- package/footer/footer.d.ts.map +1 -0
- package/footer.d.ts +2 -0
- package/footer.d.ts.map +1 -0
- package/footer.js +46 -0
- package/form-error/form-error.d.ts +21 -0
- package/form-error/form-error.d.ts.map +1 -0
- package/form-error.d.ts +2 -0
- package/form-error.d.ts.map +1 -0
- package/form-error.js +48 -0
- package/form-field/form-field/form-field.d.ts +101 -0
- package/form-field/form-field/form-field.d.ts.map +1 -0
- package/form-field/form-field-clear/form-field-clear.d.ts +24 -0
- package/form-field/form-field-clear/form-field-clear.d.ts.map +1 -0
- package/form-field/form-field-clear.d.ts +2 -0
- package/form-field/form-field-clear.d.ts.map +1 -0
- package/form-field/form-field-clear.js +46 -0
- package/form-field/form-field.d.ts +2 -0
- package/form-field/form-field.d.ts.map +1 -0
- package/form-field/form-field.js +268 -0
- package/form-field.d.ts +3 -0
- package/form-field.d.ts.map +1 -0
- package/form-field.js +2 -0
- package/header/common/header-action-common.d.ts +11 -0
- package/header/common/header-action-common.d.ts.map +1 -0
- package/header/common.d.ts +2 -0
- package/header/common.d.ts.map +1 -0
- package/header/common.js +35 -0
- package/header/header/header.d.ts +59 -0
- package/header/header/header.d.ts.map +1 -0
- package/header/header-button/header-button.d.ts +18 -0
- package/header/header-button/header-button.d.ts.map +1 -0
- package/header/header-button.d.ts +2 -0
- package/header/header-button.d.ts.map +1 -0
- package/header/header-button.js +18 -0
- package/header/header-link/header-link.d.ts +18 -0
- package/header/header-link/header-link.d.ts.map +1 -0
- package/header/header-link.d.ts +2 -0
- package/header/header-link.d.ts.map +1 -0
- package/header/header-link.js +16 -0
- package/header/header.d.ts +2 -0
- package/header/header.d.ts.map +1 -0
- package/header/header.js +120 -0
- package/header.d.ts +5 -0
- package/header.d.ts.map +1 -0
- package/header.js +4 -0
- package/icon/icon-base.d.ts +28 -0
- package/icon/icon-base.d.ts.map +1 -0
- package/icon/icon-name-mixin.d.ts +12 -0
- package/icon/icon-name-mixin.d.ts.map +1 -0
- package/icon/icon-request.d.ts +3 -0
- package/icon/icon-request.d.ts.map +1 -0
- package/icon/icon-validate.d.ts +12 -0
- package/icon/icon-validate.d.ts.map +1 -0
- package/icon/icon.d.ts +24 -0
- package/icon/icon.d.ts.map +1 -0
- package/icon.d.ts +6 -0
- package/icon.d.ts.map +1 -0
- package/icon.js +174 -0
- package/image/image.d.ts +236 -0
- package/image/image.d.ts.map +1 -0
- package/image.d.ts +2 -0
- package/image.d.ts.map +1 -0
- package/image.js +279 -0
- package/index.d.ts +231 -0
- package/index.js +229 -0
- package/journey-header/journey-header.d.ts +30 -0
- package/journey-header/journey-header.d.ts.map +1 -0
- package/journey-header.d.ts +2 -0
- package/journey-header.d.ts.map +1 -0
- package/journey-header.js +76 -0
- package/layout.css +24 -0
- package/lead-container/lead-container.d.ts +20 -0
- package/lead-container/lead-container.d.ts.map +1 -0
- package/lead-container.d.ts +2 -0
- package/lead-container.d.ts.map +1 -0
- package/lead-container.js +32 -0
- package/link/block-link/block-link.d.ts +18 -0
- package/link/block-link/block-link.d.ts.map +1 -0
- package/link/block-link-button/block-link-button.d.ts +18 -0
- package/link/block-link-button/block-link-button.d.ts.map +1 -0
- package/link/block-link-button.d.ts +2 -0
- package/link/block-link-button.d.ts.map +1 -0
- package/link/block-link-button.js +19 -0
- package/link/block-link-static/block-link-static.d.ts +18 -0
- package/link/block-link-static/block-link-static.d.ts.map +1 -0
- package/link/block-link-static.d.ts +2 -0
- package/link/block-link-static.d.ts.map +1 -0
- package/link/block-link-static.js +19 -0
- package/link/block-link.d.ts +2 -0
- package/link/block-link.d.ts.map +1 -0
- package/link/block-link.js +19 -0
- package/link/common/block-link-common.d.ts +11 -0
- package/link/common/block-link-common.d.ts.map +1 -0
- package/link/common/inline-link-common.d.ts +8 -0
- package/link/common/inline-link-common.d.ts.map +1 -0
- package/link/common/link-common.d.ts +9 -0
- package/link/common/link-common.d.ts.map +1 -0
- package/link/common.d.ts +4 -0
- package/link/common.d.ts.map +1 -0
- package/link/common.js +62 -0
- package/link/link/link.d.ts +17 -0
- package/link/link/link.d.ts.map +1 -0
- package/link/link-button/link-button.d.ts +17 -0
- package/link/link-button/link-button.d.ts.map +1 -0
- package/link/link-button.d.ts +2 -0
- package/link/link-button.d.ts.map +1 -0
- package/link/link-button.js +19 -0
- package/link/link-static/link-static.d.ts +17 -0
- package/link/link-static/link-static.d.ts.map +1 -0
- package/link/link-static.d.ts +2 -0
- package/link/link-static.d.ts.map +1 -0
- package/link/link-static.js +19 -0
- package/link/link.d.ts +2 -0
- package/link/link.d.ts.map +1 -0
- package/link/link.js +19 -0
- package/link-list/link-list.d.ts +40 -0
- package/link-list/link-list.d.ts.map +1 -0
- package/link-list.d.ts +2 -0
- package/link-list.d.ts.map +1 -0
- package/link-list.js +65 -0
- package/link.d.ts +8 -0
- package/link.d.ts.map +1 -0
- package/link.js +7 -0
- package/lists.css +149 -0
- package/loading-indicator/loading-indicator.d.ts +21 -0
- package/loading-indicator/loading-indicator.d.ts.map +1 -0
- package/loading-indicator.d.ts +2 -0
- package/loading-indicator.d.ts.map +1 -0
- package/loading-indicator.js +51 -0
- package/logo/logo.d.ts +24 -0
- package/logo/logo.d.ts.map +1 -0
- package/logo.d.ts +2 -0
- package/logo.d.ts.map +1 -0
- package/logo.js +47 -0
- package/map-container/map-container.d.ts +43 -0
- package/map-container/map-container.d.ts.map +1 -0
- package/map-container.d.ts +2 -0
- package/map-container.d.ts.map +1 -0
- package/map-container.js +91 -0
- package/menu/common/menu-action-common.d.ts +11 -0
- package/menu/common/menu-action-common.d.ts.map +1 -0
- package/menu/common.d.ts +2 -0
- package/menu/common.d.ts.map +1 -0
- package/menu/common.js +34 -0
- package/menu/menu/menu.d.ts +76 -0
- package/menu/menu/menu.d.ts.map +1 -0
- package/menu/menu-button/menu-button.d.ts +20 -0
- package/menu/menu-button/menu-button.d.ts.map +1 -0
- package/menu/menu-button.d.ts +2 -0
- package/menu/menu-button.d.ts.map +1 -0
- package/menu/menu-button.js +19 -0
- package/menu/menu-link/menu-link.d.ts +20 -0
- package/menu/menu-link/menu-link.d.ts.map +1 -0
- package/menu/menu-link.d.ts +2 -0
- package/menu/menu-link.d.ts.map +1 -0
- package/menu/menu-link.js +16 -0
- package/menu/menu.d.ts +2 -0
- package/menu/menu.d.ts.map +1 -0
- package/menu/menu.js +194 -0
- package/menu.d.ts +5 -0
- package/menu.d.ts.map +1 -0
- package/menu.js +4 -0
- package/message/message.d.ts +26 -0
- package/message/message.d.ts.map +1 -0
- package/message.d.ts +2 -0
- package/message.d.ts.map +1 -0
- package/message.js +40 -0
- package/navigation/common/navigation-action-common.d.ts +14 -0
- package/navigation/common/navigation-action-common.d.ts.map +1 -0
- package/navigation/common.d.ts +2 -0
- package/navigation/common.d.ts.map +1 -0
- package/navigation/common.js +51 -0
- package/navigation/navigation/navigation.d.ts +82 -0
- package/navigation/navigation/navigation.d.ts.map +1 -0
- package/navigation/navigation-button/navigation-button.d.ts +17 -0
- package/navigation/navigation-button/navigation-button.d.ts.map +1 -0
- package/navigation/navigation-button.d.ts +2 -0
- package/navigation/navigation-button.d.ts.map +1 -0
- package/navigation/navigation-button.js +18 -0
- package/navigation/navigation-link/navigation-link.d.ts +17 -0
- package/navigation/navigation-link/navigation-link.d.ts.map +1 -0
- package/navigation/navigation-link.d.ts +2 -0
- package/navigation/navigation-link.d.ts.map +1 -0
- package/navigation/navigation-link.js +18 -0
- package/navigation/navigation-list/navigation-list.d.ts +30 -0
- package/navigation/navigation-list/navigation-list.d.ts.map +1 -0
- package/navigation/navigation-list.d.ts +2 -0
- package/navigation/navigation-list.d.ts.map +1 -0
- package/navigation/navigation-list.js +42 -0
- package/navigation/navigation-marker/navigation-marker.d.ts +38 -0
- package/navigation/navigation-marker/navigation-marker.d.ts.map +1 -0
- package/navigation/navigation-marker.d.ts +2 -0
- package/navigation/navigation-marker.d.ts.map +1 -0
- package/navigation/navigation-marker.js +77 -0
- package/navigation/navigation-section/navigation-section.d.ts +76 -0
- package/navigation/navigation-section/navigation-section.d.ts.map +1 -0
- package/navigation/navigation-section.d.ts +2 -0
- package/navigation/navigation-section.d.ts.map +1 -0
- package/navigation/navigation-section.js +205 -0
- package/navigation/navigation.d.ts +2 -0
- package/navigation/navigation.d.ts.map +1 -0
- package/navigation/navigation.js +210 -0
- package/navigation.d.ts +8 -0
- package/navigation.d.ts.map +1 -0
- package/navigation.js +7 -0
- package/normalize.css +189 -0
- package/notification/notification.d.ts +82 -0
- package/notification/notification.d.ts.map +1 -0
- package/notification.d.ts +2 -0
- package/notification.d.ts.map +1 -0
- package/notification.js +158 -0
- package/option/optgroup/optgroup.d.ts +33 -0
- package/option/optgroup/optgroup.d.ts.map +1 -0
- package/option/optgroup.d.ts +2 -0
- package/option/optgroup.d.ts.map +1 -0
- package/option/optgroup.js +103 -0
- package/option/option/option.d.ts +91 -0
- package/option/option/option.d.ts.map +1 -0
- package/option/option.d.ts +2 -0
- package/option/option.d.ts.map +1 -0
- package/option/option.js +230 -0
- package/option.d.ts +3 -0
- package/option.d.ts.map +1 -0
- package/option.js +2 -0
- package/overlay/overlay-base-element.d.ts +43 -0
- package/overlay/overlay-base-element.d.ts.map +1 -0
- package/overlay/overlay.d.ts +52 -0
- package/overlay/overlay.d.ts.map +1 -0
- package/overlay.d.ts +3 -0
- package/overlay.d.ts.map +1 -0
- package/overlay.js +210 -0
- package/package.json +852 -2
- package/popover/popover/popover.d.ts +85 -0
- package/popover/popover/popover.d.ts.map +1 -0
- package/popover/popover-trigger/popover-trigger.d.ts +21 -0
- package/popover/popover-trigger/popover-trigger.d.ts.map +1 -0
- package/popover/popover-trigger.d.ts +2 -0
- package/popover/popover-trigger.d.ts.map +1 -0
- package/popover/popover-trigger.js +35 -0
- package/popover/popover.d.ts +2 -0
- package/popover/popover.d.ts.map +1 -0
- package/popover/popover.js +241 -0
- package/popover.d.ts +3 -0
- package/popover.d.ts.map +1 -0
- package/popover.js +2 -0
- package/radio-button/radio-button/radio-button.d.ts +102 -0
- package/radio-button/radio-button/radio-button.d.ts.map +1 -0
- package/radio-button/radio-button-group/radio-button-group.d.ts +91 -0
- package/radio-button/radio-button-group/radio-button-group.d.ts.map +1 -0
- package/radio-button/radio-button-group.d.ts +2 -0
- package/radio-button/radio-button-group.d.ts.map +1 -0
- package/radio-button/radio-button-group.js +161 -0
- package/radio-button/radio-button.d.ts +2 -0
- package/radio-button/radio-button.d.ts.map +1 -0
- package/radio-button/radio-button.js +167 -0
- package/radio-button.d.ts +3 -0
- package/radio-button.d.ts.map +1 -0
- package/radio-button.js +2 -0
- package/screen-reader-only/screen-reader-only.d.ts +17 -0
- package/screen-reader-only/screen-reader-only.d.ts.map +1 -0
- package/screen-reader-only.d.ts +2 -0
- package/screen-reader-only.d.ts.map +1 -0
- package/screen-reader-only.js +20 -0
- package/select/select.d.ts +140 -0
- package/select/select.d.ts.map +1 -0
- package/select.d.ts +2 -0
- package/select.d.ts.map +1 -0
- package/select.js +402 -0
- package/selection-panel/selection-panel.d.ts +63 -0
- package/selection-panel/selection-panel.d.ts.map +1 -0
- package/selection-panel.d.ts +2 -0
- package/selection-panel.d.ts.map +1 -0
- package/selection-panel.js +138 -0
- package/signet/signet.d.ts +20 -0
- package/signet/signet.d.ts.map +1 -0
- package/signet.d.ts +2 -0
- package/signet.d.ts.map +1 -0
- package/signet.js +41 -0
- package/skiplink-list/skiplink-list.d.ts +32 -0
- package/skiplink-list/skiplink-list.d.ts.map +1 -0
- package/skiplink-list.d.ts +2 -0
- package/skiplink-list.d.ts.map +1 -0
- package/skiplink-list.js +51 -0
- package/slider/slider.d.ts +70 -0
- package/slider/slider.d.ts.map +1 -0
- package/slider.d.ts +2 -0
- package/slider.d.ts.map +1 -0
- package/slider.js +152 -0
- package/standard-theme.css +1741 -0
- package/status/status.d.ts +32 -0
- package/status/status.d.ts.map +1 -0
- package/status.d.ts +2 -0
- package/status.d.ts.map +1 -0
- package/status.js +59 -0
- package/stepper/step/step.d.ts +66 -0
- package/stepper/step/step.d.ts.map +1 -0
- package/stepper/step-label/step-label.d.ts +47 -0
- package/stepper/step-label/step-label.d.ts.map +1 -0
- package/stepper/step-label.d.ts +2 -0
- package/stepper/step-label.d.ts.map +1 -0
- package/stepper/step-label.js +83 -0
- package/stepper/step.d.ts +2 -0
- package/stepper/step.d.ts.map +1 -0
- package/stepper/step.js +117 -0
- package/stepper/stepper/stepper.d.ts +59 -0
- package/stepper/stepper/stepper.d.ts.map +1 -0
- package/stepper/stepper.d.ts +2 -0
- package/stepper/stepper.d.ts.map +1 -0
- package/stepper/stepper.js +191 -0
- package/stepper.d.ts +4 -0
- package/stepper.d.ts.map +1 -0
- package/stepper.js +3 -0
- package/tabs/tab-group/tab-group.d.ts +94 -0
- package/tabs/tab-group/tab-group.d.ts.map +1 -0
- package/tabs/tab-group.d.ts +2 -0
- package/tabs/tab-group.d.ts.map +1 -0
- package/tabs/tab-group.js +196 -0
- package/tabs/tab-title/tab-title.d.ts +32 -0
- package/tabs/tab-title/tab-title.d.ts.map +1 -0
- package/tabs/tab-title.d.ts +2 -0
- package/tabs/tab-title.d.ts.map +1 -0
- package/tabs/tab-title.js +51 -0
- package/tabs.d.ts +3 -0
- package/tabs.d.ts.map +1 -0
- package/tabs.js +2 -0
- package/tag/tag/tag.d.ts +53 -0
- package/tag/tag/tag.d.ts.map +1 -0
- package/tag/tag-group/tag-group.d.ts +46 -0
- package/tag/tag-group/tag-group.d.ts.map +1 -0
- package/tag/tag-group.d.ts +2 -0
- package/tag/tag-group.d.ts.map +1 -0
- package/tag/tag-group.js +82 -0
- package/tag/tag.d.ts +2 -0
- package/tag/tag.d.ts.map +1 -0
- package/tag/tag.js +82 -0
- package/tag.d.ts +3 -0
- package/tag.d.ts.map +1 -0
- package/tag.js +2 -0
- package/teaser/teaser.d.ts +31 -0
- package/teaser/teaser.d.ts.map +1 -0
- package/teaser-hero/teaser-hero.d.ts +26 -0
- package/teaser-hero/teaser-hero.d.ts.map +1 -0
- package/teaser-hero.d.ts +2 -0
- package/teaser-hero.d.ts.map +1 -0
- package/teaser-hero.js +51 -0
- package/teaser-paid/teaser-paid.d.ts +20 -0
- package/teaser-paid/teaser-paid.d.ts.map +1 -0
- package/teaser-paid.d.ts +2 -0
- package/teaser-paid.d.ts.map +1 -0
- package/teaser-paid.js +28 -0
- package/teaser.d.ts +2 -0
- package/teaser.d.ts.map +1 -0
- package/teaser.js +57 -0
- package/time-input/time-input.d.ts +68 -0
- package/time-input/time-input.d.ts.map +1 -0
- package/time-input.d.ts +2 -0
- package/time-input.d.ts.map +1 -0
- package/time-input.js +176 -0
- package/timetable-occupancy/timetable-occupancy.d.ts +23 -0
- package/timetable-occupancy/timetable-occupancy.d.ts.map +1 -0
- package/timetable-occupancy-icon/timetable-occupancy-icon.d.ts +27 -0
- package/timetable-occupancy-icon/timetable-occupancy-icon.d.ts.map +1 -0
- package/timetable-occupancy-icon.d.ts +2 -0
- package/timetable-occupancy-icon.d.ts.map +1 -0
- package/timetable-occupancy-icon.js +53 -0
- package/timetable-occupancy.d.ts +2 -0
- package/timetable-occupancy.d.ts.map +1 -0
- package/timetable-occupancy.js +58 -0
- package/title/title-base.d.ts +26 -0
- package/title/title-base.d.ts.map +1 -0
- package/title/title.d.ts +16 -0
- package/title/title.d.ts.map +1 -0
- package/title.d.ts +3 -0
- package/title.d.ts.map +1 -0
- package/title.js +58 -0
- package/toast/toast.d.ts +79 -0
- package/toast/toast.d.ts.map +1 -0
- package/toast.d.ts +2 -0
- package/toast.d.ts.map +1 -0
- package/toast.js +147 -0
- package/toggle/toggle/toggle.d.ts +63 -0
- package/toggle/toggle/toggle.d.ts.map +1 -0
- package/toggle/toggle-option/toggle-option.d.ts +37 -0
- package/toggle/toggle-option/toggle-option.d.ts.map +1 -0
- package/toggle/toggle-option.d.ts +2 -0
- package/toggle/toggle-option.d.ts.map +1 -0
- package/toggle/toggle-option.js +89 -0
- package/toggle/toggle.d.ts +2 -0
- package/toggle/toggle.d.ts.map +1 -0
- package/toggle/toggle.js +129 -0
- package/toggle-check/toggle-check.d.ts +34 -0
- package/toggle-check/toggle-check.d.ts.map +1 -0
- package/toggle-check.d.ts +2 -0
- package/toggle-check.d.ts.map +1 -0
- package/toggle-check.js +56 -0
- package/toggle.d.ts +3 -0
- package/toggle.d.ts.map +1 -0
- package/toggle.js +2 -0
- package/train/train/train.d.ts +48 -0
- package/train/train/train.d.ts.map +1 -0
- package/train/train-blocked-passage/train-blocked-passage.d.ts +15 -0
- package/train/train-blocked-passage/train-blocked-passage.d.ts.map +1 -0
- package/train/train-blocked-passage.d.ts +2 -0
- package/train/train-blocked-passage.d.ts.map +1 -0
- package/train/train-blocked-passage.js +26 -0
- package/train/train-formation/train-formation.d.ts +40 -0
- package/train/train-formation/train-formation.d.ts.map +1 -0
- package/train/train-formation.d.ts +2 -0
- package/train/train-formation.d.ts.map +1 -0
- package/train/train-formation.js +104 -0
- package/train/train-wagon/train-wagon.d.ts +49 -0
- package/train/train-wagon/train-wagon.d.ts.map +1 -0
- package/train/train-wagon.d.ts +2 -0
- package/train/train-wagon.d.ts.map +1 -0
- package/train/train-wagon.js +148 -0
- package/train/train.d.ts +2 -0
- package/train/train.d.ts.map +1 -0
- package/train/train.js +93 -0
- package/train.d.ts +5 -0
- package/train.d.ts.map +1 -0
- package/train.js +4 -0
- package/typography.css +79 -0
- package/visual-checkbox/visual-checkbox.d.ts +21 -0
- package/visual-checkbox/visual-checkbox.d.ts.map +1 -0
- package/visual-checkbox.d.ts +2 -0
- package/visual-checkbox.d.ts.map +1 -0
- package/visual-checkbox.js +49 -0
|
@@ -0,0 +1,573 @@
|
|
|
1
|
+
import { property, state } from "lit/decorators.js";
|
|
2
|
+
import { defaultConverter, isServer, html, nothing } from "lit";
|
|
3
|
+
import { hostAttributes } from "./decorators.js";
|
|
4
|
+
import { preventScrollOnSpacebarPress, forwardEventToHost } from "./eventing.js";
|
|
5
|
+
import { getLocalName } from "./dom.js";
|
|
6
|
+
import "../screen-reader-only.js";
|
|
7
|
+
var __defProp$5 = Object.defineProperty;
|
|
8
|
+
var __getOwnPropDesc$3 = Object.getOwnPropertyDescriptor;
|
|
9
|
+
var __decorateClass$5 = (decorators, target, key, kind) => {
|
|
10
|
+
var result = __getOwnPropDesc$3(target, key);
|
|
11
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
12
|
+
if (decorator = decorators[i])
|
|
13
|
+
result = decorator(target, key, result) || result;
|
|
14
|
+
if (result)
|
|
15
|
+
__defProp$5(target, key, result);
|
|
16
|
+
return result;
|
|
17
|
+
};
|
|
18
|
+
const SbbDisabledMixin = (superClass) => {
|
|
19
|
+
class SbbDisabledElement extends superClass {
|
|
20
|
+
constructor() {
|
|
21
|
+
super(...arguments);
|
|
22
|
+
this._disabled = false;
|
|
23
|
+
}
|
|
24
|
+
set disabled(value) {
|
|
25
|
+
this._disabled = Boolean(value);
|
|
26
|
+
}
|
|
27
|
+
get disabled() {
|
|
28
|
+
return this._disabled || this.isDisabledExternally();
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Will be used as 'or' check to the current disabled state.
|
|
32
|
+
* Can e.g. be used to read disabled state of a group.
|
|
33
|
+
*/
|
|
34
|
+
isDisabledExternally() {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
__decorateClass$5([
|
|
39
|
+
property({ reflect: true, type: Boolean })
|
|
40
|
+
], SbbDisabledElement.prototype, "disabled");
|
|
41
|
+
return SbbDisabledElement;
|
|
42
|
+
};
|
|
43
|
+
const SbbDisabledTabIndexActionMixin = (superClass) => {
|
|
44
|
+
class SbbDisabledTabIndexAction extends SbbDisabledMixin(superClass) {
|
|
45
|
+
willUpdate(changedProperties) {
|
|
46
|
+
super.willUpdate(changedProperties);
|
|
47
|
+
if (!changedProperties.has("disabled")) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
if (this.disabled) {
|
|
51
|
+
this.setAttribute("aria-disabled", "true");
|
|
52
|
+
this.removeAttribute("tabindex");
|
|
53
|
+
} else {
|
|
54
|
+
this.removeAttribute("aria-disabled");
|
|
55
|
+
this.setAttribute("tabindex", "0");
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return SbbDisabledTabIndexAction;
|
|
60
|
+
};
|
|
61
|
+
var __defProp$4 = Object.defineProperty;
|
|
62
|
+
var __getOwnPropDesc$2 = Object.getOwnPropertyDescriptor;
|
|
63
|
+
var __decorateClass$4 = (decorators, target, key, kind) => {
|
|
64
|
+
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$2(target, key) : target;
|
|
65
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
66
|
+
if (decorator = decorators[i])
|
|
67
|
+
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
68
|
+
if (kind && result)
|
|
69
|
+
__defProp$4(target, key, result);
|
|
70
|
+
return result;
|
|
71
|
+
};
|
|
72
|
+
const SbbFormAssociatedMixin = (superClass) => {
|
|
73
|
+
const _SbbFormAssociatedElement = class _SbbFormAssociatedElement extends superClass {
|
|
74
|
+
constructor() {
|
|
75
|
+
super(...arguments);
|
|
76
|
+
this._value = null;
|
|
77
|
+
this.internals = this.attachInternals();
|
|
78
|
+
this.formDisabled = false;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Returns the form owner of internals target element.
|
|
82
|
+
*/
|
|
83
|
+
get form() {
|
|
84
|
+
return this.internals.form;
|
|
85
|
+
}
|
|
86
|
+
set name(name) {
|
|
87
|
+
this.setAttribute("name", `${name}`);
|
|
88
|
+
}
|
|
89
|
+
get name() {
|
|
90
|
+
return this.getAttribute("name") ?? "";
|
|
91
|
+
}
|
|
92
|
+
/** @internal */
|
|
93
|
+
get type() {
|
|
94
|
+
return this.localName;
|
|
95
|
+
}
|
|
96
|
+
set value(value) {
|
|
97
|
+
this._value = value;
|
|
98
|
+
this.updateFormValue();
|
|
99
|
+
}
|
|
100
|
+
get value() {
|
|
101
|
+
return this._value;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Returns the ValidityState object for internals target element.
|
|
105
|
+
*
|
|
106
|
+
* @internal
|
|
107
|
+
*/
|
|
108
|
+
get validity() {
|
|
109
|
+
return this.internals.validity;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Returns the error message that would be shown to the user
|
|
113
|
+
* if internals target element was to be checked for validity.
|
|
114
|
+
*
|
|
115
|
+
* @internal
|
|
116
|
+
*/
|
|
117
|
+
get validationMessage() {
|
|
118
|
+
return this.internals.validationMessage;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Returns true if internals target element will be validated
|
|
122
|
+
* when the form is submitted; false otherwise.
|
|
123
|
+
*
|
|
124
|
+
* @internal
|
|
125
|
+
*/
|
|
126
|
+
get willValidate() {
|
|
127
|
+
return this.internals.willValidate;
|
|
128
|
+
}
|
|
129
|
+
attributeChangedCallback(name, old, value) {
|
|
130
|
+
if (name !== "name" || old !== value) {
|
|
131
|
+
super.attributeChangedCallback(name, old, value);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Returns true if internals target element has no validity problems; false otherwise.
|
|
136
|
+
* Fires an invalid event at the element in the latter case.
|
|
137
|
+
*
|
|
138
|
+
* @internal
|
|
139
|
+
*/
|
|
140
|
+
checkValidity() {
|
|
141
|
+
return this.internals.checkValidity();
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Returns true if internals target element has no validity problems; otherwise,
|
|
145
|
+
* returns false, fires an invalid event at the element,
|
|
146
|
+
* and (if the event isn't canceled) reports the problem to the user.
|
|
147
|
+
*
|
|
148
|
+
* @internal
|
|
149
|
+
*/
|
|
150
|
+
reportValidity() {
|
|
151
|
+
return this.internals.reportValidity();
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Is called whenever a surrounding form / fieldset changes disabled state.
|
|
155
|
+
* @param disabled
|
|
156
|
+
*
|
|
157
|
+
* @internal
|
|
158
|
+
*/
|
|
159
|
+
formDisabledCallback(disabled) {
|
|
160
|
+
this.formDisabled = disabled;
|
|
161
|
+
}
|
|
162
|
+
/** Should be called when form value is changed. */
|
|
163
|
+
updateFormValue() {
|
|
164
|
+
this.internals.setFormValue(this.value);
|
|
165
|
+
}
|
|
166
|
+
};
|
|
167
|
+
_SbbFormAssociatedElement.formAssociated = true;
|
|
168
|
+
let SbbFormAssociatedElement = _SbbFormAssociatedElement;
|
|
169
|
+
__decorateClass$4([
|
|
170
|
+
property()
|
|
171
|
+
], SbbFormAssociatedElement.prototype, "name", 1);
|
|
172
|
+
__decorateClass$4([
|
|
173
|
+
property()
|
|
174
|
+
], SbbFormAssociatedElement.prototype, "value", 1);
|
|
175
|
+
__decorateClass$4([
|
|
176
|
+
state()
|
|
177
|
+
], SbbFormAssociatedElement.prototype, "formDisabled", 2);
|
|
178
|
+
return SbbFormAssociatedElement;
|
|
179
|
+
};
|
|
180
|
+
var __defProp$3 = Object.defineProperty;
|
|
181
|
+
var __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor;
|
|
182
|
+
var __decorateClass$3 = (decorators, target, key, kind) => {
|
|
183
|
+
var result = __getOwnPropDesc$1(target, key);
|
|
184
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
185
|
+
if (decorator = decorators[i])
|
|
186
|
+
result = decorator(target, key, result) || result;
|
|
187
|
+
if (result)
|
|
188
|
+
__defProp$3(target, key, result);
|
|
189
|
+
return result;
|
|
190
|
+
};
|
|
191
|
+
const SbbRequiredMixin = (superClass) => {
|
|
192
|
+
class SbbRequiredElement extends superClass {
|
|
193
|
+
constructor() {
|
|
194
|
+
super(...arguments);
|
|
195
|
+
this._required = false;
|
|
196
|
+
}
|
|
197
|
+
set required(value) {
|
|
198
|
+
this._required = Boolean(value);
|
|
199
|
+
}
|
|
200
|
+
get required() {
|
|
201
|
+
return this._required || this.isRequiredExternally();
|
|
202
|
+
}
|
|
203
|
+
async willUpdate(changedProperties) {
|
|
204
|
+
super.willUpdate(changedProperties);
|
|
205
|
+
if (changedProperties.has("required")) {
|
|
206
|
+
this.internals.ariaRequired = `${this.required}`;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Will be used as 'or' check to the current required state.
|
|
211
|
+
* Can e.g. be used to read required state of a group.
|
|
212
|
+
*/
|
|
213
|
+
isRequiredExternally() {
|
|
214
|
+
return false;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
__decorateClass$3([
|
|
218
|
+
property({ reflect: true, type: Boolean })
|
|
219
|
+
], SbbRequiredElement.prototype, "required");
|
|
220
|
+
return SbbRequiredElement;
|
|
221
|
+
};
|
|
222
|
+
var __defProp$2 = Object.defineProperty;
|
|
223
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
224
|
+
var __decorateClass$2 = (decorators, target, key, kind) => {
|
|
225
|
+
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
226
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
227
|
+
if (decorator = decorators[i])
|
|
228
|
+
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
229
|
+
if (kind && result)
|
|
230
|
+
__defProp$2(target, key, result);
|
|
231
|
+
return result;
|
|
232
|
+
};
|
|
233
|
+
const SbbFormAssociatedCheckboxMixin = (superClass) => {
|
|
234
|
+
let SbbFormAssociatedCheckboxElement = class extends SbbDisabledMixin(SbbRequiredMixin(SbbFormAssociatedMixin(superClass))) {
|
|
235
|
+
constructor() {
|
|
236
|
+
super();
|
|
237
|
+
this._attributeMutationBlocked = false;
|
|
238
|
+
this._checked = false;
|
|
239
|
+
this._handleKeyboardInteraction = (event) => {
|
|
240
|
+
if (event.key === " ") {
|
|
241
|
+
this._handleUserInteraction();
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
this._handleUserInteraction = () => {
|
|
245
|
+
var _a;
|
|
246
|
+
if (this.disabled) {
|
|
247
|
+
return;
|
|
248
|
+
}
|
|
249
|
+
(_a = this.withUserInteraction) == null ? void 0 : _a.call(this);
|
|
250
|
+
this.checked = !this.checked;
|
|
251
|
+
this._attributeMutationBlocked = true;
|
|
252
|
+
this.dispatchEvent(new InputEvent("input", { composed: true, bubbles: true }));
|
|
253
|
+
this.dispatchEvent(new Event("change", { bubbles: true }));
|
|
254
|
+
this.dispatchEvent(new CustomEvent("didChange", { bubbles: true }));
|
|
255
|
+
};
|
|
256
|
+
this.internals.role = "checkbox";
|
|
257
|
+
}
|
|
258
|
+
set checked(value) {
|
|
259
|
+
const attributeSetter = typeof value === "object" ? value.attribute : false;
|
|
260
|
+
if (attributeSetter) {
|
|
261
|
+
value = value.value;
|
|
262
|
+
}
|
|
263
|
+
if (this.hasUpdated && !attributeSetter) {
|
|
264
|
+
this._attributeMutationBlocked = true;
|
|
265
|
+
}
|
|
266
|
+
this._checked = Boolean(value);
|
|
267
|
+
this.updateFormValue();
|
|
268
|
+
}
|
|
269
|
+
get checked() {
|
|
270
|
+
return this._checked;
|
|
271
|
+
}
|
|
272
|
+
connectedCallback() {
|
|
273
|
+
super.connectedCallback();
|
|
274
|
+
this.addEventListener("click", this._handleUserInteraction);
|
|
275
|
+
this.addEventListener("keydown", preventScrollOnSpacebarPress);
|
|
276
|
+
this.addEventListener("keyup", this._handleKeyboardInteraction);
|
|
277
|
+
}
|
|
278
|
+
disconnectedCallback() {
|
|
279
|
+
super.disconnectedCallback();
|
|
280
|
+
this.removeEventListener("click", this._handleUserInteraction);
|
|
281
|
+
this.removeEventListener("keydown", preventScrollOnSpacebarPress);
|
|
282
|
+
this.removeEventListener("keyup", this._handleKeyboardInteraction);
|
|
283
|
+
}
|
|
284
|
+
attributeChangedCallback(name, old, value) {
|
|
285
|
+
if (name !== "checked" || !this._attributeMutationBlocked) {
|
|
286
|
+
super.attributeChangedCallback(name, old, value);
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* Is called whenever the form is being reset.
|
|
291
|
+
*
|
|
292
|
+
* @internal
|
|
293
|
+
*/
|
|
294
|
+
formResetCallback() {
|
|
295
|
+
this.checked = this.hasAttribute("checked");
|
|
296
|
+
this._attributeMutationBlocked = false;
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* Called when the browser is trying to restore element’s state to state in which case
|
|
300
|
+
* reason is “restore”, or when the browser is trying to fulfill autofill on behalf of
|
|
301
|
+
* user in which case reason is “autocomplete”.
|
|
302
|
+
* In the case of “restore”, state is a string, File, or FormData object
|
|
303
|
+
* previously set as the second argument to setFormValue.
|
|
304
|
+
*
|
|
305
|
+
* @internal
|
|
306
|
+
*/
|
|
307
|
+
formStateRestoreCallback(state2, _reason) {
|
|
308
|
+
if (state2) {
|
|
309
|
+
this.checked = state2 === "true";
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
updateFormValue() {
|
|
313
|
+
if (this.checked) {
|
|
314
|
+
this.internals.setFormValue(this.value, `${this.checked}`);
|
|
315
|
+
} else {
|
|
316
|
+
this.internals.setFormValue(null);
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
};
|
|
320
|
+
__decorateClass$2([
|
|
321
|
+
property({
|
|
322
|
+
type: Boolean,
|
|
323
|
+
converter: {
|
|
324
|
+
...defaultConverter,
|
|
325
|
+
// We need to pass information to the setter so that we know it was called by attribute change.
|
|
326
|
+
fromAttribute: (value, type) => {
|
|
327
|
+
var _a, _b;
|
|
328
|
+
const result = (_b = (_a = defaultConverter).fromAttribute) == null ? void 0 : _b.call(_a, value, type);
|
|
329
|
+
return { value: result, attribute: true };
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
})
|
|
333
|
+
], SbbFormAssociatedCheckboxElement.prototype, "checked", 1);
|
|
334
|
+
SbbFormAssociatedCheckboxElement = __decorateClass$2([
|
|
335
|
+
hostAttributes({
|
|
336
|
+
tabindex: "0"
|
|
337
|
+
})
|
|
338
|
+
], SbbFormAssociatedCheckboxElement);
|
|
339
|
+
return SbbFormAssociatedCheckboxElement;
|
|
340
|
+
};
|
|
341
|
+
const litElementHydrateSupport = "litElementHydrateSupport";
|
|
342
|
+
const hydrationSuppressed = isServer || globalThis.testGroup === "ssr-non-hydrated";
|
|
343
|
+
const SbbHydrationMixin = (base) => {
|
|
344
|
+
class SbbHydrationMixinClass extends base {
|
|
345
|
+
constructor() {
|
|
346
|
+
super(...arguments);
|
|
347
|
+
this._hydrationRequired = false;
|
|
348
|
+
this._hydrationComplete = new Promise(
|
|
349
|
+
(resolve) => this._resolveHydration = resolve
|
|
350
|
+
);
|
|
351
|
+
this._handleBeforeHydrationSlotchange = (event) => {
|
|
352
|
+
if (!this._hydrationRequired) {
|
|
353
|
+
return;
|
|
354
|
+
}
|
|
355
|
+
event.stopImmediatePropagation();
|
|
356
|
+
const target = event.target;
|
|
357
|
+
this.hydrationComplete.then(() => forwardEventToHost(event, target));
|
|
358
|
+
};
|
|
359
|
+
}
|
|
360
|
+
/**
|
|
361
|
+
* Returns a Promise that resolves when the element has completed hydration.
|
|
362
|
+
* The Promise value is a boolean that is `true` if the element required hydration
|
|
363
|
+
* and `false` if not.
|
|
364
|
+
*
|
|
365
|
+
* @return A promise of a boolean that resolves to true once the hydration completed.
|
|
366
|
+
* @internal
|
|
367
|
+
*/
|
|
368
|
+
get hydrationComplete() {
|
|
369
|
+
return this._hydrationComplete;
|
|
370
|
+
}
|
|
371
|
+
createRenderRoot() {
|
|
372
|
+
var _a, _b;
|
|
373
|
+
this._hydrationRequired = !!this.shadowRoot && litElementHydrateSupport in globalThis && (isServer || !hydrationSuppressed);
|
|
374
|
+
if (!this._hydrationRequired) {
|
|
375
|
+
this._resolveHydration(false);
|
|
376
|
+
} else {
|
|
377
|
+
const slots = (_a = this.shadowRoot) == null ? void 0 : _a.querySelectorAll("slot");
|
|
378
|
+
if (slots == null ? void 0 : slots.length) {
|
|
379
|
+
slots.forEach(
|
|
380
|
+
(slot) => slot.addEventListener("slotchange", this._handleBeforeHydrationSlotchange, {
|
|
381
|
+
capture: true
|
|
382
|
+
})
|
|
383
|
+
);
|
|
384
|
+
this.hydrationComplete.then(
|
|
385
|
+
() => slots.forEach(
|
|
386
|
+
(slot) => slot.removeEventListener("slotchange", this._handleBeforeHydrationSlotchange)
|
|
387
|
+
)
|
|
388
|
+
);
|
|
389
|
+
}
|
|
390
|
+
(_b = this.recoverSsrState) == null ? void 0 : _b.call(this);
|
|
391
|
+
}
|
|
392
|
+
return super.createRenderRoot();
|
|
393
|
+
}
|
|
394
|
+
willUpdate(changedProperties) {
|
|
395
|
+
var _a;
|
|
396
|
+
super.willUpdate(changedProperties);
|
|
397
|
+
if (isServer) {
|
|
398
|
+
(_a = this.recoverSsrState) == null ? void 0 : _a.call(this);
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
update(changedProperties) {
|
|
402
|
+
super.update(changedProperties);
|
|
403
|
+
if (this._hydrationRequired) {
|
|
404
|
+
this._hydrationRequired = false;
|
|
405
|
+
this._resolveHydration(true);
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
/** Reads and removes an attribute with the given name. Either returns the attributte value or null. */
|
|
409
|
+
getAndRemoveAttribute(name) {
|
|
410
|
+
const value = this.getAttribute(name);
|
|
411
|
+
this.removeAttribute(name);
|
|
412
|
+
return value;
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
return SbbHydrationMixinClass;
|
|
416
|
+
};
|
|
417
|
+
var __defProp$1 = Object.defineProperty;
|
|
418
|
+
var __decorateClass$1 = (decorators, target, key, kind) => {
|
|
419
|
+
var result = void 0;
|
|
420
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
421
|
+
if (decorator = decorators[i])
|
|
422
|
+
result = decorator(target, key, result) || result;
|
|
423
|
+
if (result)
|
|
424
|
+
__defProp$1(target, key, result);
|
|
425
|
+
return result;
|
|
426
|
+
};
|
|
427
|
+
const SSR_CHILD_COUNT_ATTRIBUTE = "data-ssr-child-count";
|
|
428
|
+
const SLOTNAME_PREFIX = "li";
|
|
429
|
+
const SbbNamedSlotListMixin = (superClass) => {
|
|
430
|
+
class NamedSlotListElement extends SbbHydrationMixin(superClass) {
|
|
431
|
+
constructor() {
|
|
432
|
+
super(...arguments);
|
|
433
|
+
this.listChildren = [];
|
|
434
|
+
this._handleSlotchange = () => {
|
|
435
|
+
const listChildren = Array.from(this.children ?? []).filter(
|
|
436
|
+
(e) => this.listChildLocalNames.includes(e.localName)
|
|
437
|
+
);
|
|
438
|
+
if (listChildren.length === this.listChildren.length && this.listChildren.every((e, i) => listChildren[i] === e)) {
|
|
439
|
+
return;
|
|
440
|
+
}
|
|
441
|
+
this.listChildren.filter((c) => !listChildren.includes(c)).forEach((c) => c.removeAttribute("slot"));
|
|
442
|
+
this.listChildren = listChildren;
|
|
443
|
+
this.listChildren.forEach(
|
|
444
|
+
(c, index) => c.setAttribute("slot", `${SLOTNAME_PREFIX}-${index}`)
|
|
445
|
+
);
|
|
446
|
+
this.removeAttribute(SSR_CHILD_COUNT_ATTRIBUTE);
|
|
447
|
+
};
|
|
448
|
+
}
|
|
449
|
+
connectedCallback() {
|
|
450
|
+
var _a;
|
|
451
|
+
super.connectedCallback();
|
|
452
|
+
(_a = this.shadowRoot) == null ? void 0 : _a.addEventListener("slotchange", this._handleSlotchange, { passive: true });
|
|
453
|
+
}
|
|
454
|
+
disconnectedCallback() {
|
|
455
|
+
var _a;
|
|
456
|
+
super.disconnectedCallback();
|
|
457
|
+
(_a = this.shadowRoot) == null ? void 0 : _a.removeEventListener("slotchange", this._handleSlotchange);
|
|
458
|
+
}
|
|
459
|
+
/**
|
|
460
|
+
* Renders list and list slots for slotted children or an amount of list slots
|
|
461
|
+
* corresponding to the `data-ssr-child-count` attribute value.
|
|
462
|
+
*
|
|
463
|
+
* This is a possible optimization for SSR, as in an SSR Lit environment
|
|
464
|
+
* other elements are not available, but might be available in the meta
|
|
465
|
+
* framework wrapper (like e.g. React). This allows to provide the amount of
|
|
466
|
+
* children to be passed via the `data-ssr-child-count` attribute value.
|
|
467
|
+
*/
|
|
468
|
+
renderList(attributes = {}) {
|
|
469
|
+
const listSlotNames = this.listSlotNames();
|
|
470
|
+
if (listSlotNames.length >= 2) {
|
|
471
|
+
return html`
|
|
472
|
+
<ul
|
|
473
|
+
class=${attributes.class || (this.localName ?? getLocalName(this))}
|
|
474
|
+
aria-label=${attributes.ariaLabel || nothing}
|
|
475
|
+
aria-labelledby=${attributes.ariaLabelledby || nothing}
|
|
476
|
+
>
|
|
477
|
+
${listSlotNames.map((name) => html`<li><slot name=${name}></slot></li>`)}
|
|
478
|
+
</ul>
|
|
479
|
+
${this.renderHiddenSlot()}
|
|
480
|
+
`;
|
|
481
|
+
} else if (listSlotNames.length === 1) {
|
|
482
|
+
return html`<sbb-screen-reader-only>${attributes.ariaLabel}</sbb-screen-reader-only>
|
|
483
|
+
<span class=${attributes.class || (this.localName ?? getLocalName(this))}>
|
|
484
|
+
<span><slot name=${listSlotNames[0]}></slot></span>
|
|
485
|
+
</span>
|
|
486
|
+
${this.renderHiddenSlot()} `;
|
|
487
|
+
} else {
|
|
488
|
+
return this.renderHiddenSlot();
|
|
489
|
+
}
|
|
490
|
+
}
|
|
491
|
+
/**
|
|
492
|
+
* Returns an array of list slot names with the length corresponding to the amount of matched
|
|
493
|
+
* children or the `data-ssr-child-count` attribute value.
|
|
494
|
+
*
|
|
495
|
+
* This is a possible optimization for SSR, as in an SSR Lit environment
|
|
496
|
+
* other elements are not available, but might be available in the meta
|
|
497
|
+
* framework wrapper (like e.g. React). This allows to provide the amount of
|
|
498
|
+
* children to be passed via the `data-ssr-child-count` attribute value.
|
|
499
|
+
*/
|
|
500
|
+
listSlotNames() {
|
|
501
|
+
const listChildren = this.listChildren.length ? this.listChildren : Array.from({ length: +(this.getAttribute(SSR_CHILD_COUNT_ATTRIBUTE) ?? 0) });
|
|
502
|
+
return listChildren.map((_, i) => `${SLOTNAME_PREFIX}-${i}`);
|
|
503
|
+
}
|
|
504
|
+
/**
|
|
505
|
+
* Returns a hidden slot, which is intended as the children change detection.
|
|
506
|
+
* When an element without a slot attribute is slotted to the element, it triggers
|
|
507
|
+
* the slotchange event, which can be used to assign it to the appropriate named slot.
|
|
508
|
+
*/
|
|
509
|
+
renderHiddenSlot() {
|
|
510
|
+
return html`<span hidden><slot></slot></span>`;
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
__decorateClass$1([
|
|
514
|
+
state()
|
|
515
|
+
], NamedSlotListElement.prototype, "listChildren");
|
|
516
|
+
return NamedSlotListElement;
|
|
517
|
+
};
|
|
518
|
+
var __defProp = Object.defineProperty;
|
|
519
|
+
var __decorateClass = (decorators, target, key, kind) => {
|
|
520
|
+
var result = void 0;
|
|
521
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
522
|
+
if (decorator = decorators[i])
|
|
523
|
+
result = decorator(target, key, result) || result;
|
|
524
|
+
if (result)
|
|
525
|
+
__defProp(target, key, result);
|
|
526
|
+
return result;
|
|
527
|
+
};
|
|
528
|
+
const SbbNegativeMixin = (superClass) => {
|
|
529
|
+
class SbbNegativeElement extends superClass {
|
|
530
|
+
constructor() {
|
|
531
|
+
super(...arguments);
|
|
532
|
+
this.negative = false;
|
|
533
|
+
}
|
|
534
|
+
}
|
|
535
|
+
__decorateClass([
|
|
536
|
+
property({ reflect: true, type: Boolean })
|
|
537
|
+
], SbbNegativeElement.prototype, "negative");
|
|
538
|
+
return SbbNegativeElement;
|
|
539
|
+
};
|
|
540
|
+
const SbbUpdateSchedulerMixin = (base) => {
|
|
541
|
+
class SbbUpdateSchedulerElement extends base {
|
|
542
|
+
constructor() {
|
|
543
|
+
super(...arguments);
|
|
544
|
+
this._updatePromise = Promise.resolve();
|
|
545
|
+
this._updateResolve = () => {
|
|
546
|
+
};
|
|
547
|
+
}
|
|
548
|
+
startUpdate() {
|
|
549
|
+
this._updatePromise = new Promise((r) => this._updateResolve = r);
|
|
550
|
+
}
|
|
551
|
+
completeUpdate() {
|
|
552
|
+
this._updateResolve();
|
|
553
|
+
}
|
|
554
|
+
async getUpdateComplete() {
|
|
555
|
+
const result = await super.getUpdateComplete();
|
|
556
|
+
await this._updatePromise;
|
|
557
|
+
return result;
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
return SbbUpdateSchedulerElement;
|
|
561
|
+
};
|
|
562
|
+
export {
|
|
563
|
+
SbbDisabledMixin,
|
|
564
|
+
SbbDisabledTabIndexActionMixin,
|
|
565
|
+
SbbFormAssociatedCheckboxMixin,
|
|
566
|
+
SbbFormAssociatedMixin,
|
|
567
|
+
SbbHydrationMixin,
|
|
568
|
+
SbbNamedSlotListMixin,
|
|
569
|
+
SbbNegativeMixin,
|
|
570
|
+
SbbRequiredMixin,
|
|
571
|
+
SbbUpdateSchedulerMixin
|
|
572
|
+
};
|
|
573
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWl4aW5zLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9taXhpbnMvZGlzYWJsZWQtbWl4aW4udHMiLCIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9taXhpbnMvZm9ybS1hc3NvY2lhdGVkLW1peGluLnRzIiwiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvbWl4aW5zL3JlcXVpcmVkLW1peGluLnRzIiwiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvbWl4aW5zL2Zvcm0tYXNzb2NpYXRlZC1jaGVja2JveC1taXhpbi50cyIsIi4uLy4uLy4uLy4uL3NyYy9lbGVtZW50cy9jb3JlL21peGlucy9oeWRyYXRpb24tbWl4aW4udHMiLCIuLi8uLi8uLi8uLi9zcmMvZWxlbWVudHMvY29yZS9taXhpbnMvbmFtZWQtc2xvdC1saXN0LW1peGluLnRzIiwiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvbWl4aW5zL25lZ2F0aXZlLW1peGluLnRzIiwiLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvbWl4aW5zL3VwZGF0ZS1zY2hlZHVsZXItbWl4aW4udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBMaXRFbGVtZW50LCBQcm9wZXJ0eVZhbHVlcyB9IGZyb20gJ2xpdCc7XG5pbXBvcnQgeyBwcm9wZXJ0eSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBBYnN0cmFjdENvbnN0cnVjdG9yIH0gZnJvbSAnLi9jb25zdHJ1Y3Rvci5qcyc7XG5cbmV4cG9ydCBkZWNsYXJlIGNsYXNzIFNiYkRpc2FibGVkTWl4aW5UeXBlIHtcbiAgcHVibGljIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbik7XG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbjtcbiAgcHJvdGVjdGVkIGlzRGlzYWJsZWRFeHRlcm5hbGx5KCk6IGJvb2xlYW47XG59XG5cbi8qKlxuICogRW5oYW5jZSB5b3VyIGNvbXBvbmVudCB3aXRoIGEgZGlzYWJsZWQgcHJvcGVydHkuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBjb25zdCBTYmJEaXNhYmxlZE1peGluID0gPFQgZXh0ZW5kcyBBYnN0cmFjdENvbnN0cnVjdG9yPExpdEVsZW1lbnQ+PihcbiAgc3VwZXJDbGFzczogVCxcbik6IEFic3RyYWN0Q29uc3RydWN0b3I8U2JiRGlzYWJsZWRNaXhpblR5cGU+ICYgVCA9PiB7XG4gIGFic3RyYWN0IGNsYXNzIFNiYkRpc2FibGVkRWxlbWVudCBleHRlbmRzIHN1cGVyQ2xhc3MgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYkRpc2FibGVkTWl4aW5UeXBlPiB7XG4gICAgLyoqIFdoZXRoZXIgdGhlIGNvbXBvbmVudCBpcyBkaXNhYmxlZC4gKi9cbiAgICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pXG4gICAgcHVibGljIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgLy8gVG8gcHJvdmlkZSB0aGUgc2FtZSBiZWhhdmlvciBhcyB0aGUgbmF0aXZlIGRpc2FibGVkIHN0YXRlLFxuICAgICAgLy8gYW55IHZhbHVlIGlzIGNvbnZlcnRlZCB0byBhIGJvb2xlYW4uXG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IEJvb2xlYW4odmFsdWUpO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkIHx8IHRoaXMuaXNEaXNhYmxlZEV4dGVybmFsbHkoKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIFdpbGwgYmUgdXNlZCBhcyAnb3InIGNoZWNrIHRvIHRoZSBjdXJyZW50IGRpc2FibGVkIHN0YXRlLlxuICAgICAqIENhbiBlLmcuIGJlIHVzZWQgdG8gcmVhZCBkaXNhYmxlZCBzdGF0ZSBvZiBhIGdyb3VwLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBpc0Rpc2FibGVkRXh0ZXJuYWxseSgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gU2JiRGlzYWJsZWRFbGVtZW50IGFzIHVua25vd24gYXMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJEaXNhYmxlZE1peGluVHlwZT4gJiBUO1xufTtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYkRpc2FibGVkVGFiSW5kZXhBY3Rpb25NaXhpbiA9IDxUIGV4dGVuZHMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxMaXRFbGVtZW50Pj4oXG4gIHN1cGVyQ2xhc3M6IFQsXG4pOiBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkRpc2FibGVkTWl4aW5UeXBlPiAmIFQgPT4ge1xuICBhYnN0cmFjdCBjbGFzcyBTYmJEaXNhYmxlZFRhYkluZGV4QWN0aW9uXG4gICAgZXh0ZW5kcyBTYmJEaXNhYmxlZE1peGluKHN1cGVyQ2xhc3MpXG4gICAgaW1wbGVtZW50cyBTYmJEaXNhYmxlZE1peGluVHlwZVxuICB7XG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgICAgaWYgKCFjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2Rpc2FibGVkJykpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBGSVhNRSBpZiB0YWJpbmRleCBpcyBub3QgbmVlZGVkIGluIGNvbWJpbmF0aW9uIHdpdGggYXJpYS1kaXNhYmxlZCxcbiAgICAgIC8vICB1c2UgdGhlIFNiYkRpc2FibGVkTWl4aW4gYW5kIGltcGxlbWVudCBhIGRpZmZlcmVudCB3aWxsVXBkYXRlIG1ldGhvZC5cbiAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgIHRoaXMuc2V0QXR0cmlidXRlKCdhcmlhLWRpc2FibGVkJywgJ3RydWUnKTtcbiAgICAgICAgdGhpcy5yZW1vdmVBdHRyaWJ1dGUoJ3RhYmluZGV4Jyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1kaXNhYmxlZCcpO1xuICAgICAgICB0aGlzLnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnMCcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gU2JiRGlzYWJsZWRUYWJJbmRleEFjdGlvbiBhcyBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkRpc2FibGVkTWl4aW5UeXBlPiAmIFQ7XG59O1xuIiwiaW1wb3J0IHR5cGUgeyBMaXRFbGVtZW50IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5LCBzdGF0ZSB9IGZyb20gJ2xpdC9kZWNvcmF0b3JzLmpzJztcblxuaW1wb3J0IHR5cGUgeyBDb25zdHJ1Y3RvciB9IGZyb20gJy4vY29uc3RydWN0b3IuanMnO1xuXG5leHBvcnQgZGVjbGFyZSBhYnN0cmFjdCBjbGFzcyBTYmJGb3JtQXNzb2NpYXRlZE1peGluVHlwZSB7XG4gIHB1YmxpYyBnZXQgZm9ybSgpOiBIVE1MRm9ybUVsZW1lbnQgfCBudWxsO1xuICBwdWJsaWMgZ2V0IG5hbWUoKTogc3RyaW5nO1xuICBwdWJsaWMgc2V0IG5hbWUodmFsdWU6IHN0cmluZyk7XG4gIHB1YmxpYyBnZXQgdHlwZSgpOiBzdHJpbmc7XG4gIHB1YmxpYyBnZXQgdmFsdWUoKTogc3RyaW5nIHwgbnVsbDtcbiAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogc3RyaW5nIHwgbnVsbCk7XG5cbiAgcHVibGljIGdldCB2YWxpZGl0eSgpOiBWYWxpZGl0eVN0YXRlO1xuICBwdWJsaWMgZ2V0IHZhbGlkYXRpb25NZXNzYWdlKCk6IHN0cmluZztcbiAgcHVibGljIGdldCB3aWxsVmFsaWRhdGUoKTogYm9vbGVhbjtcblxuICBwcm90ZWN0ZWQgZm9ybURpc2FibGVkOiBib29sZWFuO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaW50ZXJuYWxzOiBFbGVtZW50SW50ZXJuYWxzO1xuXG4gIHB1YmxpYyBjaGVja1ZhbGlkaXR5KCk6IGJvb2xlYW47XG4gIHB1YmxpYyByZXBvcnRWYWxpZGl0eSgpOiBib29sZWFuO1xuXG4gIHB1YmxpYyBmb3JtQXNzb2NpYXRlZENhbGxiYWNrPyhmb3JtOiBIVE1MRm9ybUVsZW1lbnQgfCBudWxsKTogdm9pZDtcbiAgcHVibGljIGZvcm1EaXNhYmxlZENhbGxiYWNrKGRpc2FibGVkOiBib29sZWFuKTogdm9pZDtcbiAgcHVibGljIGFic3RyYWN0IGZvcm1SZXNldENhbGxiYWNrKCk6IHZvaWQ7XG4gIHB1YmxpYyBhYnN0cmFjdCBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soXG4gICAgc3RhdGU6IEZvcm1SZXN0b3JlU3RhdGUgfCBudWxsLFxuICAgIHJlYXNvbjogRm9ybVJlc3RvcmVSZWFzb24sXG4gICk6IHZvaWQ7XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZUZvcm1WYWx1ZSgpOiB2b2lkO1xufVxuXG4vKipcbiAqIFRoZSBGb3JtQXNzb2NpYXRlZE1peGluIGVuYWJsZXMgbmF0aXZlIGZvcm0gc3VwcG9ydCBmb3IgY3VzdG9tIGNvbnRyb2xzLlxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG5leHBvcnQgY29uc3QgU2JiRm9ybUFzc29jaWF0ZWRNaXhpbiA9IDxUIGV4dGVuZHMgQ29uc3RydWN0b3I8TGl0RWxlbWVudD4+KFxuICBzdXBlckNsYXNzOiBULFxuKTogQ29uc3RydWN0b3I8U2JiRm9ybUFzc29jaWF0ZWRNaXhpblR5cGU+ICYgVCA9PiB7XG4gIGFic3RyYWN0IGNsYXNzIFNiYkZvcm1Bc3NvY2lhdGVkRWxlbWVudFxuICAgIGV4dGVuZHMgc3VwZXJDbGFzc1xuICAgIGltcGxlbWVudHMgUGFydGlhbDxTYmJGb3JtQXNzb2NpYXRlZE1peGluVHlwZT5cbiAge1xuICAgIHB1YmxpYyBzdGF0aWMgZm9ybUFzc29jaWF0ZWQgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0aGUgZm9ybSBvd25lciBvZiBpbnRlcm5hbHMgdGFyZ2V0IGVsZW1lbnQuXG4gICAgICovXG4gICAgcHVibGljIGdldCBmb3JtKCk6IEhUTUxGb3JtRWxlbWVudCB8IG51bGwge1xuICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxzLmZvcm07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTmFtZSBvZiB0aGUgZm9ybSBlbGVtZW50LiBXaWxsIGJlIHJlYWQgZnJvbSBuYW1lIGF0dHJpYnV0ZS5cbiAgICAgKlxuICAgICAqIEBkZXNjcmlwdGlvbiBEZXZlbG9wZXIgbm90ZTogSW4gdGhpcyBjYXNlIHVwZGF0aW5nIHRoZSBhdHRyaWJ1dGUgbXVzdCBiZSBzeW5jaHJvbm91cy5cbiAgICAgKiBEdWUgdG8gdGhpcyBpdCBpcyBpbXBsZW1lbnRlZCBhcyBhIGdldHRlci9zZXR0ZXIgYW5kIHRoZSBhdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2soKSBoYW5kbGVzIHRoZSBkaWZmIGNoZWNrLlxuICAgICAqL1xuICAgIEBwcm9wZXJ0eSgpXG4gICAgcHVibGljIHNldCBuYW1lKG5hbWU6IHN0cmluZykge1xuICAgICAgdGhpcy5zZXRBdHRyaWJ1dGUoJ25hbWUnLCBgJHtuYW1lfWApO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLmdldEF0dHJpYnV0ZSgnbmFtZScpID8/ICcnO1xuICAgIH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBwdWJsaWMgZ2V0IHR5cGUoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLmxvY2FsTmFtZTtcbiAgICB9XG5cbiAgICAvKiogVmFsdWUgb2YgdGhlIGZvcm0gZWxlbWVudC4gKi9cbiAgICBAcHJvcGVydHkoKVxuICAgIHB1YmxpYyBzZXQgdmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcbiAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IHZhbHVlKCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xuICAgIH1cbiAgICBwcml2YXRlIF92YWx1ZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBWYWxpZGl0eVN0YXRlIG9iamVjdCBmb3IgaW50ZXJuYWxzIHRhcmdldCBlbGVtZW50LlxuICAgICAqXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIGdldCB2YWxpZGl0eSgpOiBWYWxpZGl0eVN0YXRlIHtcbiAgICAgIHJldHVybiB0aGlzLmludGVybmFscy52YWxpZGl0eTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBlcnJvciBtZXNzYWdlIHRoYXQgd291bGQgYmUgc2hvd24gdG8gdGhlIHVzZXJcbiAgICAgKiBpZiBpbnRlcm5hbHMgdGFyZ2V0IGVsZW1lbnQgd2FzIHRvIGJlIGNoZWNrZWQgZm9yIHZhbGlkaXR5LlxuICAgICAqXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIGdldCB2YWxpZGF0aW9uTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxzLnZhbGlkYXRpb25NZXNzYWdlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdHJ1ZSBpZiBpbnRlcm5hbHMgdGFyZ2V0IGVsZW1lbnQgd2lsbCBiZSB2YWxpZGF0ZWRcbiAgICAgKiB3aGVuIHRoZSBmb3JtIGlzIHN1Ym1pdHRlZDsgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgICAqXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgcHVibGljIGdldCB3aWxsVmFsaWRhdGUoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5pbnRlcm5hbHMud2lsbFZhbGlkYXRlO1xuICAgIH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaW50ZXJuYWxzOiBFbGVtZW50SW50ZXJuYWxzID0gdGhpcy5hdHRhY2hJbnRlcm5hbHMoKTtcblxuICAgIC8qKiBXaGVuZXZlciBhIHN1cnJvdW5kaW5nIGZvcm0gb3IgZmllbGRzZXQgaXMgY2hhbmdpbmcgaXRzIGRpc2FibGVkIHN0YXRlLiAqL1xuICAgIEBzdGF0ZSgpIHByb3RlY3RlZCBmb3JtRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHB1YmxpYyBvdmVycmlkZSBhdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2soXG4gICAgICBuYW1lOiBzdHJpbmcsXG4gICAgICBvbGQ6IHN0cmluZyB8IG51bGwsXG4gICAgICB2YWx1ZTogc3RyaW5nIHwgbnVsbCxcbiAgICApOiB2b2lkIHtcbiAgICAgIGlmIChuYW1lICE9PSAnbmFtZScgfHwgb2xkICE9PSB2YWx1ZSkge1xuICAgICAgICBzdXBlci5hdHRyaWJ1dGVDaGFuZ2VkQ2FsbGJhY2sobmFtZSwgb2xkLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyB0cnVlIGlmIGludGVybmFscyB0YXJnZXQgZWxlbWVudCBoYXMgbm8gdmFsaWRpdHkgcHJvYmxlbXM7IGZhbHNlIG90aGVyd2lzZS5cbiAgICAgKiBGaXJlcyBhbiBpbnZhbGlkIGV2ZW50IGF0IHRoZSBlbGVtZW50IGluIHRoZSBsYXR0ZXIgY2FzZS5cbiAgICAgKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBjaGVja1ZhbGlkaXR5KCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxzLmNoZWNrVmFsaWRpdHkoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRydWUgaWYgaW50ZXJuYWxzIHRhcmdldCBlbGVtZW50IGhhcyBubyB2YWxpZGl0eSBwcm9ibGVtczsgb3RoZXJ3aXNlLFxuICAgICAqIHJldHVybnMgZmFsc2UsIGZpcmVzIGFuIGludmFsaWQgZXZlbnQgYXQgdGhlIGVsZW1lbnQsXG4gICAgICogYW5kIChpZiB0aGUgZXZlbnQgaXNuJ3QgY2FuY2VsZWQpIHJlcG9ydHMgdGhlIHByb2JsZW0gdG8gdGhlIHVzZXIuXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVwb3J0VmFsaWRpdHkoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5pbnRlcm5hbHMucmVwb3J0VmFsaWRpdHkoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWxsZWQgd2hlbiB0aGUgYXNzb2NpYXRlZCBmb3JtIGVsZW1lbnQgY2hhbmdlcy5cbiAgICAgKiBFbGVtZW50SW50ZXJuYWxzLmZvcm0gcmV0dXJucyB0aGUgYXNzb2NpYXRlZCBmcm9tIGVsZW1lbnQuXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwdWJsaWMgZm9ybUFzc29jaWF0ZWRDYWxsYmFjaz8oZm9ybTogSFRNTEZvcm1FbGVtZW50IHwgbnVsbCk6IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBJcyBjYWxsZWQgd2hlbmV2ZXIgYSBzdXJyb3VuZGluZyBmb3JtIC8gZmllbGRzZXQgY2hhbmdlcyBkaXNhYmxlZCBzdGF0ZS5cbiAgICAgKiBAcGFyYW0gZGlzYWJsZWRcbiAgICAgKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBmb3JtRGlzYWJsZWRDYWxsYmFjayhkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgdGhpcy5mb3JtRGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJcyBjYWxsZWQgd2hlbmV2ZXIgdGhlIGZvcm0gaXMgYmVpbmcgcmVzZXQuXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwdWJsaWMgYWJzdHJhY3QgZm9ybVJlc2V0Q2FsbGJhY2soKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqICBDYWxsZWQgd2hlbiB0aGUgYnJvd3NlciBpcyB0cnlpbmcgdG8gcmVzdG9yZSBlbGVtZW504oCZcyBzdGF0ZSB0byBzdGF0ZSBpbiB3aGljaCBjYXNlXG4gICAgICogIHJlYXNvbiBpcyDigJxyZXN0b3Jl4oCdLCBvciB3aGVuIHRoZSBicm93c2VyIGlzIHRyeWluZyB0byBmdWxmaWxsIGF1dG9maWxsIG9uIGJlaGFsZiBvZlxuICAgICAqICB1c2VyIGluIHdoaWNoIGNhc2UgcmVhc29uIGlzIOKAnGF1dG9jb21wbGV0ZeKAnS5cbiAgICAgKiAgSW4gdGhlIGNhc2Ugb2Yg4oCccmVzdG9yZeKAnSwgc3RhdGUgaXMgYSBzdHJpbmcsIEZpbGUsIG9yIEZvcm1EYXRhIG9iamVjdFxuICAgICAqICBwcmV2aW91c2x5IHNldCBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50IHRvIHNldEZvcm1WYWx1ZS5cbiAgICAgKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBhYnN0cmFjdCBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soXG4gICAgICBzdGF0ZTogRm9ybVJlc3RvcmVTdGF0ZSB8IG51bGwsXG4gICAgICByZWFzb246IEZvcm1SZXN0b3JlUmVhc29uLFxuICAgICk6IHZvaWQ7XG5cbiAgICAvKiogU2hvdWxkIGJlIGNhbGxlZCB3aGVuIGZvcm0gdmFsdWUgaXMgY2hhbmdlZC4gKi9cbiAgICBwcm90ZWN0ZWQgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQge1xuICAgICAgdGhpcy5pbnRlcm5hbHMuc2V0Rm9ybVZhbHVlKHRoaXMudmFsdWUpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gU2JiRm9ybUFzc29jaWF0ZWRFbGVtZW50IGFzIHVua25vd24gYXMgQ29uc3RydWN0b3I8U2JiRm9ybUFzc29jaWF0ZWRNaXhpblR5cGU+ICYgVDtcbn07XG5cbi8qKlxuICogQSB2YWx1ZSB0byBiZSByZXN0b3JlZCBmb3IgYSBjb21wb25lbnQncyBmb3JtIHZhbHVlLiBJZiBhIGNvbXBvbmVudCdzIGZvcm1cbiAqIHN0YXRlIGlzIGEgYEZvcm1EYXRhYCBvYmplY3QsIGl0cyBlbnRyeSBsaXN0IG9mIG5hbWUgYW5kIHZhbHVlcyB3aWxsIGJlXG4gKiBwcm92aWRlZC5cbiAqL1xuZXhwb3J0IHR5cGUgRm9ybVJlc3RvcmVTdGF0ZSA9IEZpbGUgfCBzdHJpbmcgfCBbc3RyaW5nLCBGb3JtRGF0YUVudHJ5VmFsdWVdW107XG5cbi8qKlxuICogVGhlIHJlYXNvbiBhIGZvcm0gY29tcG9uZW50IGlzIGJlaW5nIHJlc3RvcmVkIGZvciwgZWl0aGVyIGAncmVzdG9yZSdgIGZvclxuICogYnJvd3NlciByZXN0b3JhdGlvbiBvciBgJ2F1dG9jb21wbGV0ZSdgIGZvciByZXN0b3JpbmcgdXNlciB2YWx1ZXMuXG4gKi9cbmV4cG9ydCB0eXBlIEZvcm1SZXN0b3JlUmVhc29uID0gJ3Jlc3RvcmUnIHwgJ2F1dG9jb21wbGV0ZSc7XG4iLCJpbXBvcnQgdHlwZSB7IExpdEVsZW1lbnQsIFByb3BlcnR5VmFsdWVzIH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgdHlwZSB7IEFic3RyYWN0Q29uc3RydWN0b3IgfSBmcm9tICcuL2NvbnN0cnVjdG9yLmpzJztcbmltcG9ydCB0eXBlIHsgU2JiRm9ybUFzc29jaWF0ZWRNaXhpblR5cGUgfSBmcm9tICcuL2Zvcm0tYXNzb2NpYXRlZC1taXhpbi5qcyc7XG5cbmV4cG9ydCBkZWNsYXJlIGNsYXNzIFNiYlJlcXVpcmVkTWl4aW5UeXBlIHtcbiAgcHVibGljIHNldCByZXF1aXJlZCh2YWx1ZTogYm9vbGVhbik7XG4gIHB1YmxpYyBnZXQgcmVxdWlyZWQoKTogYm9vbGVhbjtcbiAgcHJvdGVjdGVkIGlzUmVxdWlyZWRFeHRlcm5hbGx5KCk6IGJvb2xlYW47XG59XG5cbi8qKlxuICogRW5oYW5jZSB5b3VyIGNvbXBvbmVudCB3aXRoIGEgcmVxdWlyZWQgcHJvcGVydHkuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBjb25zdCBTYmJSZXF1aXJlZE1peGluID0gPFxuICBUIGV4dGVuZHMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxMaXRFbGVtZW50ICYgU2JiRm9ybUFzc29jaWF0ZWRNaXhpblR5cGU+LFxuPihcbiAgc3VwZXJDbGFzczogVCxcbik6IEFic3RyYWN0Q29uc3RydWN0b3I8U2JiUmVxdWlyZWRNaXhpblR5cGU+ICYgVCA9PiB7XG4gIGFic3RyYWN0IGNsYXNzIFNiYlJlcXVpcmVkRWxlbWVudCBleHRlbmRzIHN1cGVyQ2xhc3MgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYlJlcXVpcmVkTWl4aW5UeXBlPiB7XG4gICAgLyoqIFdoZXRoZXIgdGhlIGNvbXBvbmVudCBpcyByZXF1aXJlZC4gKi9cbiAgICBAcHJvcGVydHkoeyByZWZsZWN0OiB0cnVlLCB0eXBlOiBCb29sZWFuIH0pXG4gICAgcHVibGljIHNldCByZXF1aXJlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgLy8gVG8gcHJvdmlkZSB0aGUgc2FtZSBiZWhhdmlvciBhcyB0aGUgbmF0aXZlIHJlcXVpcmVkIHN0YXRlLFxuICAgICAgLy8gYW55IHZhbHVlIGlzIGNvbnZlcnRlZCB0byBhIGJvb2xlYW4uXG4gICAgICB0aGlzLl9yZXF1aXJlZCA9IEJvb2xlYW4odmFsdWUpO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IHJlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuX3JlcXVpcmVkIHx8IHRoaXMuaXNSZXF1aXJlZEV4dGVybmFsbHkoKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyB3aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgc3VwZXIud2lsbFVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ3JlcXVpcmVkJykpIHtcbiAgICAgICAgLy8gRmlyZWZveCBuZWVkcyBleHBsaWNpdGx5IHNldCBhcmlhLXJlcXVpcmVkIHZhbHVlLlxuICAgICAgICB0aGlzLmludGVybmFscy5hcmlhUmVxdWlyZWQgPSBgJHt0aGlzLnJlcXVpcmVkfWA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2lsbCBiZSB1c2VkIGFzICdvcicgY2hlY2sgdG8gdGhlIGN1cnJlbnQgcmVxdWlyZWQgc3RhdGUuXG4gICAgICogQ2FuIGUuZy4gYmUgdXNlZCB0byByZWFkIHJlcXVpcmVkIHN0YXRlIG9mIGEgZ3JvdXAuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGlzUmVxdWlyZWRFeHRlcm5hbGx5KCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBTYmJSZXF1aXJlZEVsZW1lbnQgYXMgdW5rbm93biBhcyBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYlJlcXVpcmVkTWl4aW5UeXBlPiAmIFQ7XG59O1xuIiwiaW1wb3J0IHsgZGVmYXVsdENvbnZlcnRlciwgdHlwZSBMaXRFbGVtZW50IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHByb3BlcnR5IH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBob3N0QXR0cmlidXRlcyB9IGZyb20gJy4uL2RlY29yYXRvcnMuanMnO1xuaW1wb3J0IHsgcHJldmVudFNjcm9sbE9uU3BhY2ViYXJQcmVzcyB9IGZyb20gJy4uL2V2ZW50aW5nLmpzJztcblxuaW1wb3J0IHR5cGUgeyBDb25zdHJ1Y3RvciB9IGZyb20gJy4vY29uc3RydWN0b3IuanMnO1xuaW1wb3J0IHsgU2JiRGlzYWJsZWRNaXhpbiwgdHlwZSBTYmJEaXNhYmxlZE1peGluVHlwZSB9IGZyb20gJy4vZGlzYWJsZWQtbWl4aW4uanMnO1xuaW1wb3J0IHtcbiAgdHlwZSBGb3JtUmVzdG9yZVJlYXNvbixcbiAgdHlwZSBGb3JtUmVzdG9yZVN0YXRlLFxuICBTYmJGb3JtQXNzb2NpYXRlZE1peGluLFxuICB0eXBlIFNiYkZvcm1Bc3NvY2lhdGVkTWl4aW5UeXBlLFxufSBmcm9tICcuL2Zvcm0tYXNzb2NpYXRlZC1taXhpbi5qcyc7XG5pbXBvcnQgeyBTYmJSZXF1aXJlZE1peGluLCB0eXBlIFNiYlJlcXVpcmVkTWl4aW5UeXBlIH0gZnJvbSAnLi9yZXF1aXJlZC1taXhpbi5qcyc7XG5cbnR5cGUgQ2hlY2tlZFNldHRlclZhbHVlID0geyB2YWx1ZTogYm9vbGVhbjsgYXR0cmlidXRlOiBib29sZWFuIH07XG5cbmV4cG9ydCBkZWNsYXJlIGFic3RyYWN0IGNsYXNzIFNiYkZvcm1Bc3NvY2lhdGVkQ2hlY2tib3hNaXhpblR5cGVcbiAgZXh0ZW5kcyBTYmJGb3JtQXNzb2NpYXRlZE1peGluVHlwZVxuICBpbXBsZW1lbnRzIFBhcnRpYWw8U2JiRGlzYWJsZWRNaXhpblR5cGU+LCBQYXJ0aWFsPFNiYlJlcXVpcmVkTWl4aW5UeXBlPlxue1xuICBwdWJsaWMgZ2V0IGNoZWNrZWQoKTogYm9vbGVhbjtcbiAgcHVibGljIHNldCBjaGVja2VkKHZhbHVlOiBib29sZWFuKTtcblxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuKTtcbiAgcHVibGljIGdldCBkaXNhYmxlZCgpOiBib29sZWFuO1xuXG4gIHB1YmxpYyBzZXQgcmVxdWlyZWQodmFsdWU6IGJvb2xlYW4pO1xuICBwdWJsaWMgZ2V0IHJlcXVpcmVkKCk6IGJvb2xlYW47XG5cbiAgcHVibGljIGZvcm1SZXNldENhbGxiYWNrKCk6IHZvaWQ7XG4gIHB1YmxpYyBmb3JtU3RhdGVSZXN0b3JlQ2FsbGJhY2soc3RhdGU6IEZvcm1SZXN0b3JlU3RhdGUgfCBudWxsLCByZWFzb246IEZvcm1SZXN0b3JlUmVhc29uKTogdm9pZDtcblxuICBwcm90ZWN0ZWQgaXNEaXNhYmxlZEV4dGVybmFsbHkoKTogYm9vbGVhbjtcbiAgcHJvdGVjdGVkIGlzUmVxdWlyZWRFeHRlcm5hbGx5KCk6IGJvb2xlYW47XG4gIHByb3RlY3RlZCB3aXRoVXNlckludGVyYWN0aW9uPygpOiB2b2lkO1xufVxuXG4vKipcbiAqIFRoZSBGb3JtQXNzb2NpYXRlZENoZWNrYm94TWl4aW4gZW5hYmxlcyBuYXRpdmUgZm9ybSBzdXBwb3J0IGZvciBjaGVja2JveCBjb250cm9scy5cbiAqXG4gKiBJbmhlcml0ZWQgY2xhc3NlcyBNVVNUIGltcGxlbWVudCB0aGUgYXJpYUNoZWNrZWQgc3RhdGUgKEVsZW1lbnRJbnRlcm5hbHMpIHRoZW1zZWx2ZXMuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBjb25zdCBTYmJGb3JtQXNzb2NpYXRlZENoZWNrYm94TWl4aW4gPSA8VCBleHRlbmRzIENvbnN0cnVjdG9yPExpdEVsZW1lbnQ+PihcbiAgc3VwZXJDbGFzczogVCxcbik6IENvbnN0cnVjdG9yPFNiYkZvcm1Bc3NvY2lhdGVkQ2hlY2tib3hNaXhpblR5cGU+ICYgVCA9PiB7XG4gIEBob3N0QXR0cmlidXRlcyh7XG4gICAgdGFiaW5kZXg6ICcwJyxcbiAgfSlcbiAgYWJzdHJhY3QgY2xhc3MgU2JiRm9ybUFzc29jaWF0ZWRDaGVja2JveEVsZW1lbnRcbiAgICBleHRlbmRzIFNiYkRpc2FibGVkTWl4aW4oU2JiUmVxdWlyZWRNaXhpbihTYmJGb3JtQXNzb2NpYXRlZE1peGluKHN1cGVyQ2xhc3MpKSlcbiAgICBpbXBsZW1lbnRzIFBhcnRpYWw8U2JiRm9ybUFzc29jaWF0ZWRDaGVja2JveE1peGluVHlwZT5cbiAge1xuICAgIHByaXZhdGUgX2F0dHJpYnV0ZU11dGF0aW9uQmxvY2tlZCA9IGZhbHNlO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlIGNoZWNrYm94IGlzIGNoZWNrZWQuICovXG4gICAgQHByb3BlcnR5KHtcbiAgICAgIHR5cGU6IEJvb2xlYW4sXG4gICAgICBjb252ZXJ0ZXI6IHtcbiAgICAgICAgLi4uZGVmYXVsdENvbnZlcnRlcixcbiAgICAgICAgLy8gV2UgbmVlZCB0byBwYXNzIGluZm9ybWF0aW9uIHRvIHRoZSBzZXR0ZXIgc28gdGhhdCB3ZSBrbm93IGl0IHdhcyBjYWxsZWQgYnkgYXR0cmlidXRlIGNoYW5nZS5cbiAgICAgICAgZnJvbUF0dHJpYnV0ZTogKHZhbHVlOiBzdHJpbmcgfCBudWxsLCB0eXBlPzogdW5rbm93bik6IENoZWNrZWRTZXR0ZXJWYWx1ZSA9PiB7XG4gICAgICAgICAgY29uc3QgcmVzdWx0ID0gZGVmYXVsdENvbnZlcnRlci5mcm9tQXR0cmlidXRlPy4odmFsdWUsIHR5cGUpO1xuICAgICAgICAgIHJldHVybiB7IHZhbHVlOiByZXN1bHQsIGF0dHJpYnV0ZTogdHJ1ZSB9IGFzIENoZWNrZWRTZXR0ZXJWYWx1ZTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSlcbiAgICBwdWJsaWMgc2V0IGNoZWNrZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgIGNvbnN0IGF0dHJpYnV0ZVNldHRlciA9XG4gICAgICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgPyAodmFsdWUgYXMgdW5rbm93biBhcyBDaGVja2VkU2V0dGVyVmFsdWUpLmF0dHJpYnV0ZSA6IGZhbHNlO1xuICAgICAgaWYgKGF0dHJpYnV0ZVNldHRlcikge1xuICAgICAgICB2YWx1ZSA9ICh2YWx1ZSBhcyB1bmtub3duIGFzIENoZWNrZWRTZXR0ZXJWYWx1ZSkudmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEFzIHNvb24gYXMgbXV0YXRpb24gd2FzIGRvbmUgbm90IGJ5IHNldHRpbmcgYXR0cmlidXRlLFxuICAgICAgLy8gd2UgbmVlZCB0byBibG9jayBzeW5jaW5nIGF0dHJpYnV0ZS5cbiAgICAgIGlmICh0aGlzLmhhc1VwZGF0ZWQgJiYgIWF0dHJpYnV0ZVNldHRlcikge1xuICAgICAgICB0aGlzLl9hdHRyaWJ1dGVNdXRhdGlvbkJsb2NrZWQgPSB0cnVlO1xuICAgICAgfVxuICAgICAgdGhpcy5fY2hlY2tlZCA9IEJvb2xlYW4odmFsdWUpO1xuICAgICAgdGhpcy51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICB9XG4gICAgcHVibGljIGdldCBjaGVja2VkKCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIHRoaXMuX2NoZWNrZWQ7XG4gICAgfVxuICAgIHByaXZhdGUgX2NoZWNrZWQgPSBmYWxzZTtcblxuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3RvcigpIHtcbiAgICAgIHN1cGVyKCk7XG4gICAgICAvKiogQGludGVybmFsICovXG4gICAgICB0aGlzLmludGVybmFscy5yb2xlID0gJ2NoZWNrYm94JztcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgY29ubmVjdGVkQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgICBzdXBlci5jb25uZWN0ZWRDYWxsYmFjaygpO1xuXG4gICAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5faGFuZGxlVXNlckludGVyYWN0aW9uKTtcbiAgICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHByZXZlbnRTY3JvbGxPblNwYWNlYmFyUHJlc3MpO1xuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKCdrZXl1cCcsIHRoaXMuX2hhbmRsZUtleWJvYXJkSW50ZXJhY3Rpb24pO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBkaXNjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICAgIHN1cGVyLmRpc2Nvbm5lY3RlZENhbGxiYWNrKCk7XG5cbiAgICAgIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLl9oYW5kbGVVc2VySW50ZXJhY3Rpb24pO1xuICAgICAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgcHJldmVudFNjcm9sbE9uU3BhY2ViYXJQcmVzcyk7XG4gICAgICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleXVwJywgdGhpcy5faGFuZGxlS2V5Ym9hcmRJbnRlcmFjdGlvbik7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIGF0dHJpYnV0ZUNoYW5nZWRDYWxsYmFjayhcbiAgICAgIG5hbWU6IHN0cmluZyxcbiAgICAgIG9sZDogc3RyaW5nIHwgbnVsbCxcbiAgICAgIHZhbHVlOiBzdHJpbmcgfCBudWxsLFxuICAgICk6IHZvaWQge1xuICAgICAgLy8gQXR0cmlidXRlIHNob3VsZCBub3QgYmUgaW50ZXJwcmV0ZWQgYWZ0ZXIgcHJvZ3JhbW1hdGljIG9yIG1hbnVhbCBzdGF0ZSBjaGFuZ2UuXG4gICAgICBpZiAobmFtZSAhPT0gJ2NoZWNrZWQnIHx8ICF0aGlzLl9hdHRyaWJ1dGVNdXRhdGlvbkJsb2NrZWQpIHtcbiAgICAgICAgc3VwZXIuYXR0cmlidXRlQ2hhbmdlZENhbGxiYWNrKG5hbWUsIG9sZCwgdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIElzIGNhbGxlZCB3aGVuZXZlciB0aGUgZm9ybSBpcyBiZWluZyByZXNldC5cbiAgICAgKlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBvdmVycmlkZSBmb3JtUmVzZXRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICAgIHRoaXMuY2hlY2tlZCA9IHRoaXMuaGFzQXR0cmlidXRlKCdjaGVja2VkJyk7XG4gICAgICB0aGlzLl9hdHRyaWJ1dGVNdXRhdGlvbkJsb2NrZWQgPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAgQ2FsbGVkIHdoZW4gdGhlIGJyb3dzZXIgaXMgdHJ5aW5nIHRvIHJlc3RvcmUgZWxlbWVudOKAmXMgc3RhdGUgdG8gc3RhdGUgaW4gd2hpY2ggY2FzZVxuICAgICAqICByZWFzb24gaXMg4oCccmVzdG9yZeKAnSwgb3Igd2hlbiB0aGUgYnJvd3NlciBpcyB0cnlpbmcgdG8gZnVsZmlsbCBhdXRvZmlsbCBvbiBiZWhhbGYgb2ZcbiAgICAgKiAgdXNlciBpbiB3aGljaCBjYXNlIHJlYXNvbiBpcyDigJxhdXRvY29tcGxldGXigJ0uXG4gICAgICogIEluIHRoZSBjYXNlIG9mIOKAnHJlc3RvcmXigJ0sIHN0YXRlIGlzIGEgc3RyaW5nLCBGaWxlLCBvciBGb3JtRGF0YSBvYmplY3RcbiAgICAgKiAgcHJldmlvdXNseSBzZXQgYXMgdGhlIHNlY29uZCBhcmd1bWVudCB0byBzZXRGb3JtVmFsdWUuXG4gICAgICpcbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwdWJsaWMgb3ZlcnJpZGUgZm9ybVN0YXRlUmVzdG9yZUNhbGxiYWNrKFxuICAgICAgc3RhdGU6IEZvcm1SZXN0b3JlU3RhdGUgfCBudWxsLFxuICAgICAgX3JlYXNvbjogRm9ybVJlc3RvcmVSZWFzb24sXG4gICAgKTogdm9pZCB7XG4gICAgICBpZiAoc3RhdGUpIHtcbiAgICAgICAgdGhpcy5jaGVja2VkID0gc3RhdGUgPT09ICd0cnVlJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGRpdGlvbmFsIGxvZ2ljIHdoaWNoIGlzIGJlaW5nIGV4ZWN1dGVkIHdoZW4gdXNlclxuICAgICAqIGludGVyYWN0aW9uIGhhcHBlbnMgYW5kIHN0YXRlIGlzIG5vdCBkaXNhYmxlZC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgd2l0aFVzZXJJbnRlcmFjdGlvbj8oKTogdm9pZDtcblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSB1cGRhdGVGb3JtVmFsdWUoKTogdm9pZCB7XG4gICAgICBpZiAodGhpcy5jaGVja2VkKSB7XG4gICAgICAgIHRoaXMuaW50ZXJuYWxzLnNldEZvcm1WYWx1ZSh0aGlzLnZhbHVlLCBgJHt0aGlzLmNoZWNrZWR9YCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmludGVybmFscy5zZXRGb3JtVmFsdWUobnVsbCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqIE1ldGhvZCB0cmlnZ2VyZWQgb24ga2V5Ym9hcmQgdXNlciBpbnRlcmFjdGlvbiB3aXRoIGNoZWNrYm94LiAqL1xuICAgIHByaXZhdGUgX2hhbmRsZUtleWJvYXJkSW50ZXJhY3Rpb24gPSAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkID0+IHtcbiAgICAgIGlmIChldmVudC5rZXkgPT09ICcgJykge1xuICAgICAgICB0aGlzLl9oYW5kbGVVc2VySW50ZXJhY3Rpb24oKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgLyoqIE1ldGhvZCB0cmlnZ2VyZWQgb24gdXNlciBpbnRlcmFjdGlvbiB3aXRoIGNoZWNrYm94LiAqL1xuICAgIHByaXZhdGUgX2hhbmRsZVVzZXJJbnRlcmFjdGlvbiA9ICgpOiB2b2lkID0+IHtcbiAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIHRoaXMud2l0aFVzZXJJbnRlcmFjdGlvbj8uKCk7XG4gICAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkO1xuICAgICAgdGhpcy5fYXR0cmlidXRlTXV0YXRpb25CbG9ja2VkID0gdHJ1ZTtcblxuICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBJbnB1dEV2ZW50KCdpbnB1dCcsIHsgY29tcG9zZWQ6IHRydWUsIGJ1YmJsZXM6IHRydWUgfSkpO1xuICAgICAgdGhpcy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnY2hhbmdlJywgeyBidWJibGVzOiB0cnVlIH0pKTtcbiAgICAgIHRoaXMuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoJ2RpZENoYW5nZScsIHsgYnViYmxlczogdHJ1ZSB9KSk7XG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiBTYmJGb3JtQXNzb2NpYXRlZENoZWNrYm94RWxlbWVudCBhcyB1bmtub3duIGFzIENvbnN0cnVjdG9yPFNiYkZvcm1Bc3NvY2lhdGVkQ2hlY2tib3hNaXhpblR5cGU+ICZcbiAgICBUO1xufTtcbiIsImltcG9ydCB7IGlzU2VydmVyLCB0eXBlIExpdEVsZW1lbnQsIHR5cGUgUHJvcGVydHlWYWx1ZXMgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgeyBmb3J3YXJkRXZlbnRUb0hvc3QgfSBmcm9tICcuLi9ldmVudGluZy5qcyc7XG5cbmltcG9ydCB0eXBlIHsgQWJzdHJhY3RDb25zdHJ1Y3RvciB9IGZyb20gJy4vY29uc3RydWN0b3IuanMnO1xuXG4vLyBEZWZpbmUgdGhlIGludGVyZmFjZSBmb3IgdGhlIG1peGluXG5leHBvcnQgZGVjbGFyZSBhYnN0cmFjdCBjbGFzcyBTYmJIeWRyYXRpb25NaXhpblR5cGUge1xuICAvKipcbiAgICogUmV0dXJucyBhIFByb21pc2UgdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBlbGVtZW50IGhhcyBjb21wbGV0ZWQgaHlkcmF0aW9uLlxuICAgKiBUaGUgUHJvbWlzZSB2YWx1ZSBpcyBhIGJvb2xlYW4gdGhhdCBpcyBgdHJ1ZWAgaWYgdGhlIGVsZW1lbnQgcmVxdWlyZWQgaHlkcmF0aW9uXG4gICAqIGFuZCBgZmFsc2VgIGlmIG5vdC5cbiAgICpcbiAgICogQHJldHVybiBBIHByb21pc2Ugb2YgYSBib29sZWFuIHRoYXQgcmVzb2x2ZXMgdG8gdHJ1ZSBvbmNlIHRoZSBoeWRyYXRpb24gY29tcGxldGVkLlxuICAgKi9cbiAgcHVibGljIGdldCBoeWRyYXRpb25Db21wbGV0ZSgpOiBQcm9taXNlPGJvb2xlYW4+O1xuXG4gIC8qKlxuICAgKiBDYWxsZWQgb25seSBpZiBEZWNsYXJhdGl2ZSBTaGFkb3cgRE9NIGlzIGRldGVjdGVkLCBkdXJpbmcgdGhlIGluaXRpYWxpemF0aW9uIHN0YWdlXG4gICAqIGJ1dCBiZWZvcmUgdGhlIGh5ZHJhdGlvbiBzdGFnZS5cbiAgICogV2hlbiB1c2luZyBzZXJ2ZXIgc2lkZSByZW5kZXJpbmcsIHRoaXMgaXMgY2FsbGVkIGluIHdpbGxVcGRhdGUuXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVjb3ZlclNzclN0YXRlPygpOiB2b2lkO1xuXG4gIC8qKiBSZWFkcyBhbmQgcmVtb3ZlcyBhbiBhdHRyaWJ1dGUgd2l0aCB0aGUgZ2l2ZW4gbmFtZS4gRWl0aGVyIHJldHVybnMgdGhlIGF0dHJpYnV0dGUgdmFsdWUgb3IgbnVsbC4gKi9cbiAgcHJvdGVjdGVkIGdldEFuZFJlbW92ZUF0dHJpYnV0ZShuYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsO1xufVxuXG4vKipcbiAqIFRoZSBrZXkgZm9yIGdsb2JhbFRoaXMgbGl0IGh5ZHJhdGlvbiBmdW5jdGlvbi5cbiAqIElmIHRoaXMgaXMgZGVmaW5lZCwgdGhlbiBsaXQgaHlkcmF0aW9uIGlzIGVuYWJsZWQuXG4gKlxuICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vbGl0L2xpdC9ibG9iL21haW4vcGFja2FnZXMvbGFicy9zc3ItY2xpZW50L3NyYy9saXQtZWxlbWVudC1oeWRyYXRlLXN1cHBvcnQudHNcbiAqL1xuY29uc3QgbGl0RWxlbWVudEh5ZHJhdGVTdXBwb3J0ID0gJ2xpdEVsZW1lbnRIeWRyYXRlU3VwcG9ydCc7XG5cbi8qKlxuICogVGhpcyBpcyBhIHNpbWlsYXIgY2hlY2sgYXMgaW4gY29yZS90ZXN0aW5nLCBidXQgd2Ugd2FudCB0byBhdm9pZCBhbiBpbXBvcnQgdG8gdGhhdCBtb2R1bGUgZnJvbVxuICogYSBwcm9kdWN0aW9uIG1vZHVsZS5cbiAqIFRPRE86IFNob3VsZCB0aGlzIGJlIHNvbHZlZCBpbiBhIGRpZmZlcmVudCB3YXkgb3IgcmVtb3ZlZCBpbiBhIHByb2R1Y3Rpb24gYnVpbGQ/XG4gKi9cbmNvbnN0IGh5ZHJhdGlvblN1cHByZXNzZWQgPSBpc1NlcnZlciB8fCAoZ2xvYmFsVGhpcyBhcyBhbnkpLnRlc3RHcm91cCA9PT0gJ3Nzci1ub24taHlkcmF0ZWQnO1xuXG4vKipcbiAqIFRoaXMgbWl4aW4gZXh0ZW5kcyBhIGJhc2UgY2xhc3Mgd2l0aCBmdW5jdGlvbmFsaXR5IHRvIGNoZWNrIGlmIGh5ZHJhdGlvbiBpcyBjb21wbGV0ZWQuXG4gKiBJdCBhbHNvIGRlbGF5cyBzbG90Y2hhbmdlIGV2ZW50cyB1bnRpbCBoeWRyYXRpb24gaXMgY29tcGxldGUuXG4gKlxuICogQHBhcmFtIGJhc2UgVGhlIGNsYXNzIHRvIGV4dGVuZC5cbiAqIEByZXR1cm5zIEEgY2xhc3MgZXh0ZW5kZWQgd2l0aCB0aGUgaHlkcmF0aW9uIGNoZWNrIGZ1bmN0aW9uYWxpdHkuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBjb25zdCBTYmJIeWRyYXRpb25NaXhpbiA9IDxUIGV4dGVuZHMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxMaXRFbGVtZW50Pj4oXG4gIGJhc2U6IFQsXG4pOiBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYkh5ZHJhdGlvbk1peGluVHlwZT4gJiBUID0+IHtcbiAgYWJzdHJhY3QgY2xhc3MgU2JiSHlkcmF0aW9uTWl4aW5DbGFzcyBleHRlbmRzIGJhc2UgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYkh5ZHJhdGlvbk1peGluVHlwZT4ge1xuICAgIHByaXZhdGUgX2h5ZHJhdGlvblJlcXVpcmVkID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfaHlkcmF0aW9uQ29tcGxldGUgPSBuZXcgUHJvbWlzZTxib29sZWFuPihcbiAgICAgIChyZXNvbHZlKSA9PiAodGhpcy5fcmVzb2x2ZUh5ZHJhdGlvbiA9IHJlc29sdmUpLFxuICAgICk7XG4gICAgcHJpdmF0ZSBfcmVzb2x2ZUh5ZHJhdGlvbiE6IChoeWRyYXRpb25SZXF1aXJlZDogYm9vbGVhbikgPT4gdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgZWxlbWVudCBoYXMgY29tcGxldGVkIGh5ZHJhdGlvbi5cbiAgICAgKiBUaGUgUHJvbWlzZSB2YWx1ZSBpcyBhIGJvb2xlYW4gdGhhdCBpcyBgdHJ1ZWAgaWYgdGhlIGVsZW1lbnQgcmVxdWlyZWQgaHlkcmF0aW9uXG4gICAgICogYW5kIGBmYWxzZWAgaWYgbm90LlxuICAgICAqXG4gICAgICogQHJldHVybiBBIHByb21pc2Ugb2YgYSBib29sZWFuIHRoYXQgcmVzb2x2ZXMgdG8gdHJ1ZSBvbmNlIHRoZSBoeWRyYXRpb24gY29tcGxldGVkLlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgaHlkcmF0aW9uQ29tcGxldGUoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICByZXR1cm4gdGhpcy5faHlkcmF0aW9uQ29tcGxldGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfaGFuZGxlQmVmb3JlSHlkcmF0aW9uU2xvdGNoYW5nZSA9IChldmVudDogRXZlbnQpOiB2b2lkID0+IHtcbiAgICAgIGlmICghdGhpcy5faHlkcmF0aW9uUmVxdWlyZWQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTFNsb3RFbGVtZW50O1xuICAgICAgdGhpcy5oeWRyYXRpb25Db21wbGV0ZS50aGVuKCgpID0+IGZvcndhcmRFdmVudFRvSG9zdChldmVudCwgdGFyZ2V0KSk7XG4gICAgfTtcblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBjcmVhdGVSZW5kZXJSb290KCk6IEhUTUxFbGVtZW50IHwgRG9jdW1lbnRGcmFnbWVudCB7XG4gICAgICAvLyBDaGVjayB3aGV0aGVyIGh5ZHJhdGlvbiBpcyBuZWVkZWQgYnkgY2hlY2tpbmcgd2hldGhlciB0aGUgc2hhZG93IHJvb3RcbiAgICAgIC8vIGlzIGF2YWlsYWJsZSBiZWZvcmUgY3JlYXRlUmVuZGVyUm9vdCBpcyBjYWxsZWQuXG4gICAgICB0aGlzLl9oeWRyYXRpb25SZXF1aXJlZCA9XG4gICAgICAgICEhdGhpcy5zaGFkb3dSb290ICYmXG4gICAgICAgIGxpdEVsZW1lbnRIeWRyYXRlU3VwcG9ydCBpbiBnbG9iYWxUaGlzICYmXG4gICAgICAgIChpc1NlcnZlciB8fCAhaHlkcmF0aW9uU3VwcHJlc3NlZCk7XG4gICAgICBpZiAoIXRoaXMuX2h5ZHJhdGlvblJlcXVpcmVkKSB7XG4gICAgICAgIHRoaXMuX3Jlc29sdmVIeWRyYXRpb24oZmFsc2UpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3Qgc2xvdHMgPSB0aGlzLnNoYWRvd1Jvb3Q/LnF1ZXJ5U2VsZWN0b3JBbGwoJ3Nsb3QnKTtcbiAgICAgICAgaWYgKHNsb3RzPy5sZW5ndGgpIHtcbiAgICAgICAgICBzbG90cy5mb3JFYWNoKChzbG90KSA9PlxuICAgICAgICAgICAgc2xvdC5hZGRFdmVudExpc3RlbmVyKCdzbG90Y2hhbmdlJywgdGhpcy5faGFuZGxlQmVmb3JlSHlkcmF0aW9uU2xvdGNoYW5nZSwge1xuICAgICAgICAgICAgICBjYXB0dXJlOiB0cnVlLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKTtcbiAgICAgICAgICB0aGlzLmh5ZHJhdGlvbkNvbXBsZXRlLnRoZW4oKCkgPT5cbiAgICAgICAgICAgIHNsb3RzLmZvckVhY2goKHNsb3QpID0+XG4gICAgICAgICAgICAgIHNsb3QucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2xvdGNoYW5nZScsIHRoaXMuX2hhbmRsZUJlZm9yZUh5ZHJhdGlvblNsb3RjaGFuZ2UpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVjb3ZlclNzclN0YXRlPy4oKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBzdXBlci5jcmVhdGVSZW5kZXJSb290KCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPHRoaXM+KTogdm9pZCB7XG4gICAgICBzdXBlci53aWxsVXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzKTtcblxuICAgICAgaWYgKGlzU2VydmVyKSB7XG4gICAgICAgIHRoaXMucmVjb3ZlclNzclN0YXRlPy4oKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgdXBkYXRlKGNoYW5nZWRQcm9wZXJ0aWVzOiBQcm9wZXJ0eVZhbHVlczx0aGlzPik6IHZvaWQge1xuICAgICAgLy8gV2hlbiBoeWRyYXRpb24gaXMgbmVlZGVkLCB3ZSB3YWl0IHRoZSBoeWRyYXRpb24gcHJvY2VzcyB0byBmaW5pc2gsIHdoaWNoIGlzIHBhdGNoZWRcbiAgICAgIC8vIGludG8gdGhlIHVwZGF0ZSBtZXRob2Qgb2YgdGhlIExpdEVsZW1lbnQgYmFzZSBjbGFzcy5cbiAgICAgIHN1cGVyLnVwZGF0ZShjaGFuZ2VkUHJvcGVydGllcyk7XG5cbiAgICAgIGlmICh0aGlzLl9oeWRyYXRpb25SZXF1aXJlZCkge1xuICAgICAgICB0aGlzLl9oeWRyYXRpb25SZXF1aXJlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLl9yZXNvbHZlSHlkcmF0aW9uKHRydWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGxlZCBvbmx5IGlmIERlY2xhcmF0aXZlIFNoYWRvdyBET00gaXMgZGV0ZWN0ZWQsIGR1cmluZyB0aGUgaW5pdGlhbGl6YXRpb24gc3RhZ2VcbiAgICAgKiBidXQgYmVmb3JlIHRoZSBoeWRyYXRpb24gc3RhZ2UuXG4gICAgICogV2hlbiB1c2luZyBzZXJ2ZXIgc2lkZSByZW5kZXJpbmcsIHRoaXMgaXMgY2FsbGVkIGluIHdpbGxVcGRhdGUuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlY292ZXJTc3JTdGF0ZT8oKTogdm9pZDtcblxuICAgIC8qKiBSZWFkcyBhbmQgcmVtb3ZlcyBhbiBhdHRyaWJ1dGUgd2l0aCB0aGUgZ2l2ZW4gbmFtZS4gRWl0aGVyIHJldHVybnMgdGhlIGF0dHJpYnV0dGUgdmFsdWUgb3IgbnVsbC4gKi9cbiAgICBwcm90ZWN0ZWQgZ2V0QW5kUmVtb3ZlQXR0cmlidXRlKG5hbWU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldEF0dHJpYnV0ZShuYW1lKTtcbiAgICAgIHRoaXMucmVtb3ZlQXR0cmlidXRlKG5hbWUpO1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgfVxuICByZXR1cm4gU2JiSHlkcmF0aW9uTWl4aW5DbGFzcyBhcyB1bmtub3duIGFzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiSHlkcmF0aW9uTWl4aW5UeXBlPiAmIFQ7XG59O1xuIiwiaW1wb3J0IHsgaHRtbCwgdHlwZSBMaXRFbGVtZW50LCBub3RoaW5nLCB0eXBlIFRlbXBsYXRlUmVzdWx0IH0gZnJvbSAnbGl0JztcbmltcG9ydCB7IHN0YXRlIH0gZnJvbSAnbGl0L2RlY29yYXRvcnMuanMnO1xuXG5pbXBvcnQgeyBnZXRMb2NhbE5hbWUgfSBmcm9tICcuLi9kb20uanMnO1xuXG5pbXBvcnQgdHlwZSB7IEFic3RyYWN0Q29uc3RydWN0b3IgfSBmcm9tICcuL2NvbnN0cnVjdG9yLmpzJztcbmltcG9ydCB7IFNiYkh5ZHJhdGlvbk1peGluLCB0eXBlIFNiYkh5ZHJhdGlvbk1peGluVHlwZSB9IGZyb20gJy4vaHlkcmF0aW9uLW1peGluLmpzJztcblxuaW1wb3J0ICcuLi8uLi9zY3JlZW4tcmVhZGVyLW9ubHkuanMnO1xuXG5jb25zdCBTU1JfQ0hJTERfQ09VTlRfQVRUUklCVVRFID0gJ2RhdGEtc3NyLWNoaWxkLWNvdW50JztcbmNvbnN0IFNMT1ROQU1FX1BSRUZJWCA9ICdsaSc7XG5cbi8qKlxuICogSGVscGVyIHR5cGUgZm9yIHdpbGxVcGRhdGUgb3Igc2ltaWxhciBjaGVja3MuXG4gKiBBbGxvd3MgdGhlIHVzYWdlIG9mIHRoZSBzdHJpbmcgbGl0ZXJhbCAnbGlzdENoaWxkcmVuJy5cbiAqXG4gKiBAZXhhbXBsZVxuICogcHJvdGVjdGVkIG92ZXJyaWRlIHdpbGxVcGRhdGUoY2hhbmdlZFByb3BlcnRpZXM6IFByb3BlcnR5VmFsdWVzPFdpdGhMaXN0Q2hpbGRyZW48dGhpcz4+KTogdm9pZCB7XG4gKiAgIGlmIChjaGFuZ2VkUHJvcGVydGllcy5oYXMoJ2xpc3RDaGlsZHJlbicpKSB7XG4gKiAgICAgLi4uXG4gKiAgIH1cbiAqIH1cbiAqL1xuZXhwb3J0IHR5cGUgV2l0aExpc3RDaGlsZHJlbjxcbiAgVCBleHRlbmRzIFNiYk5hbWVkU2xvdExpc3RNaXhpblR5cGU8Qz4sXG4gIEMgZXh0ZW5kcyBIVE1MRWxlbWVudCA9IEhUTUxFbGVtZW50LFxuPiA9IFQgJiB7IGxpc3RDaGlsZHJlbjogQ1tdIH07XG5cbmV4cG9ydCBkZWNsYXJlIGFic3RyYWN0IGNsYXNzIFNiYk5hbWVkU2xvdExpc3RNaXhpblR5cGU8XG4gIEMgZXh0ZW5kcyBIVE1MRWxlbWVudCxcbj4gZXh0ZW5kcyBTYmJIeWRyYXRpb25NaXhpblR5cGUge1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVhZG9ubHkgbGlzdENoaWxkTG9jYWxOYW1lczogc3RyaW5nW107XG4gIEBzdGF0ZSgpIHByb3RlY3RlZCBsaXN0Q2hpbGRyZW46IENbXTtcbiAgcHJvdGVjdGVkIHJlbmRlckxpc3QoYXR0cmlidXRlcz86IHtcbiAgICBjbGFzcz86IHN0cmluZztcbiAgICBhcmlhTGFiZWw/OiBzdHJpbmc7XG4gICAgYXJpYUxhYmVsbGVkYnk/OiBzdHJpbmc7XG4gIH0pOiBUZW1wbGF0ZVJlc3VsdDtcbiAgcHJvdGVjdGVkIGxpc3RTbG90TmFtZXMoKTogc3RyaW5nW107XG4gIHByb3RlY3RlZCByZW5kZXJIaWRkZW5TbG90KCk6IFRlbXBsYXRlUmVzdWx0O1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG5leHBvcnQgY29uc3QgU2JiTmFtZWRTbG90TGlzdE1peGluID0gPFxuICBDIGV4dGVuZHMgSFRNTEVsZW1lbnQsXG4gIFQgZXh0ZW5kcyBBYnN0cmFjdENvbnN0cnVjdG9yPExpdEVsZW1lbnQ+LFxuPihcbiAgc3VwZXJDbGFzczogVCxcbik6IEFic3RyYWN0Q29uc3RydWN0b3I8U2JiTmFtZWRTbG90TGlzdE1peGluVHlwZTxDPj4gJiBUID0+IHtcbiAgLyoqXG4gICAqIFRoaXMgYmFzZSBjbGFzcyBwcm92aWRlcyBuYW1lZCBzbG90IGxpc3Qgb2JzZXJ2ZXIgZnVuY3Rpb25hbGl0eS5cbiAgICogVGhpcyBhbGxvd3MgdXNpbmcgdGhlIHBhdHRlcm4gb2YgcmVuZGVyaW5nIGEgbmFtZWQgc2xvdCBmb3IgZWFjaCBjaGlsZCwgd2hpY2ggYWxsb3dzXG4gICAqIHdyYXBwaW5nIGNoaWxkcmVuIGluIGEgdWwvbGkgbGlzdC5cbiAgICovXG4gIGFic3RyYWN0IGNsYXNzIE5hbWVkU2xvdExpc3RFbGVtZW50PEMgZXh0ZW5kcyBIVE1MRWxlbWVudCA9IEhUTUxFbGVtZW50PlxuICAgIGV4dGVuZHMgU2JiSHlkcmF0aW9uTWl4aW4oc3VwZXJDbGFzcylcbiAgICBpbXBsZW1lbnRzIFBhcnRpYWw8U2JiTmFtZWRTbG90TGlzdE1peGluVHlwZTxDPj5cbiAge1xuICAgIC8qKiBBIGxpc3Qgb2YgdXBwZXItY2FzZWQgdGFnIG5hbWVzIHRvIG1hdGNoIGFnYWluc3QuIChlLmcuIFNCQi1MSU5LKSAqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCByZWFkb25seSBsaXN0Q2hpbGRMb2NhbE5hbWVzOiBzdHJpbmdbXTtcblxuICAgIC8qKlxuICAgICAqIEEgbGlzdCBvZiBjaGlsZHJlbiB3aXRoIHRoZSBkZWZpbmVkIHRhZyBuYW1lcy5cbiAgICAgKiBUaGlzIGFycmF5IGlzIG9ubHkgdXBkYXRlZCwgaWYgdGhlcmUgaXMgYW4gYWN0dWFsIGNoYW5nZVxuICAgICAqIHRvIHRoZSBjaGlsZCBlbGVtZW50cy5cbiAgICAgKi9cbiAgICBAc3RhdGUoKSBwcm90ZWN0ZWQgbGlzdENoaWxkcmVuOiBDW10gPSBbXTtcblxuICAgIHB1YmxpYyBvdmVycmlkZSBjb25uZWN0ZWRDYWxsYmFjaygpOiB2b2lkIHtcbiAgICAgIHN1cGVyLmNvbm5lY3RlZENhbGxiYWNrKCk7XG4gICAgICB0aGlzLnNoYWRvd1Jvb3Q/LmFkZEV2ZW50TGlzdGVuZXIoJ3Nsb3RjaGFuZ2UnLCB0aGlzLl9oYW5kbGVTbG90Y2hhbmdlLCB7IHBhc3NpdmU6IHRydWUgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIGRpc2Nvbm5lY3RlZENhbGxiYWNrKCk6IHZvaWQge1xuICAgICAgc3VwZXIuZGlzY29ubmVjdGVkQ2FsbGJhY2soKTtcbiAgICAgIHRoaXMuc2hhZG93Um9vdD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2xvdGNoYW5nZScsIHRoaXMuX2hhbmRsZVNsb3RjaGFuZ2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2hhbmRsZVNsb3RjaGFuZ2UgPSAoKTogdm9pZCA9PiB7XG4gICAgICBjb25zdCBsaXN0Q2hpbGRyZW4gPSBBcnJheS5mcm9tKHRoaXMuY2hpbGRyZW4gPz8gW10pLmZpbHRlcigoZSk6IGUgaXMgQyA9PlxuICAgICAgICB0aGlzLmxpc3RDaGlsZExvY2FsTmFtZXMuaW5jbHVkZXMoZS5sb2NhbE5hbWUpLFxuICAgICAgKTtcbiAgICAgIC8vIElmIHRoZSBzbG90dGVkIGNoaWxkIGluc3RhbmNlcyBoYXZlIG5vdCBjaGFuZ2VkLCB3ZSBjYW4gc2tpcCBzeW5jaW5nIGFuZCB1cGRhdGluZ1xuICAgICAgLy8gdGhlIGxpbmsgcmVmZXJlbmNlIGxpc3QuXG4gICAgICBpZiAoXG4gICAgICAgIGxpc3RDaGlsZHJlbi5sZW5ndGggPT09IHRoaXMubGlzdENoaWxkcmVuLmxlbmd0aCAmJlxuICAgICAgICB0aGlzLmxpc3RDaGlsZHJlbi5ldmVyeSgoZSwgaSkgPT4gbGlzdENoaWxkcmVuW2ldID09PSBlKVxuICAgICAgKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5saXN0Q2hpbGRyZW5cbiAgICAgICAgLmZpbHRlcigoYykgPT4gIWxpc3RDaGlsZHJlbi5pbmNsdWRlcyhjKSlcbiAgICAgICAgLmZvckVhY2goKGMpID0+IGMucmVtb3ZlQXR0cmlidXRlKCdzbG90JykpO1xuICAgICAgdGhpcy5saXN0Q2hpbGRyZW4gPSBsaXN0Q2hpbGRyZW47XG4gICAgICB0aGlzLmxpc3RDaGlsZHJlbi5mb3JFYWNoKChjLCBpbmRleCkgPT5cbiAgICAgICAgYy5zZXRBdHRyaWJ1dGUoJ3Nsb3QnLCBgJHtTTE9UTkFNRV9QUkVGSVh9LSR7aW5kZXh9YCksXG4gICAgICApO1xuXG4gICAgICAvLyBSZW1vdmUgdGhlIHNzciBhdHRyaWJ1dGUsIG9uY2Ugd2UgaGF2ZSBhY3R1YWxseSBpbml0aWFsaXplZCB0aGUgY2hpbGRyZW4gZWxlbWVudHMuXG4gICAgICB0aGlzLnJlbW92ZUF0dHJpYnV0ZShTU1JfQ0hJTERfQ09VTlRfQVRUUklCVVRFKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogUmVuZGVycyBsaXN0IGFuZCBsaXN0IHNsb3RzIGZvciBzbG90dGVkIGNoaWxkcmVuIG9yIGFuIGFtb3VudCBvZiBsaXN0IHNsb3RzXG4gICAgICogY29ycmVzcG9uZGluZyB0byB0aGUgYGRhdGEtc3NyLWNoaWxkLWNvdW50YCBhdHRyaWJ1dGUgdmFsdWUuXG4gICAgICpcbiAgICAgKiBUaGlzIGlzIGEgcG9zc2libGUgb3B0aW1pemF0aW9uIGZvciBTU1IsIGFzIGluIGFuIFNTUiBMaXQgZW52aXJvbm1lbnRcbiAgICAgKiBvdGhlciBlbGVtZW50cyBhcmUgbm90IGF2YWlsYWJsZSwgYnV0IG1pZ2h0IGJlIGF2YWlsYWJsZSBpbiB0aGUgbWV0YVxuICAgICAqIGZyYW1ld29yayB3cmFwcGVyIChsaWtlIGUuZy4gUmVhY3QpLiBUaGlzIGFsbG93cyB0byBwcm92aWRlIHRoZSBhbW91bnQgb2ZcbiAgICAgKiBjaGlsZHJlbiB0byBiZSBwYXNzZWQgdmlhIHRoZSBgZGF0YS1zc3ItY2hpbGQtY291bnRgIGF0dHJpYnV0ZSB2YWx1ZS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVuZGVyTGlzdChcbiAgICAgIGF0dHJpYnV0ZXM6IHsgY2xhc3M/OiBzdHJpbmc7IGFyaWFMYWJlbD86IHN0cmluZzsgYXJpYUxhYmVsbGVkYnk/OiBzdHJpbmcgfSA9IHt9LFxuICAgICk6IFRlbXBsYXRlUmVzdWx0IHtcbiAgICAgIGNvbnN0IGxpc3RTbG90TmFtZXMgPSB0aGlzLmxpc3RTbG90TmFtZXMoKTtcblxuICAgICAgaWYgKGxpc3RTbG90TmFtZXMubGVuZ3RoID49IDIpIHtcbiAgICAgICAgcmV0dXJuIGh0bWxgXG4gICAgICAgICAgPHVsXG4gICAgICAgICAgICBjbGFzcz0ke2F0dHJpYnV0ZXMuY2xhc3MgfHwgKHRoaXMubG9jYWxOYW1lID8/IGdldExvY2FsTmFtZSh0aGlzKSl9XG4gICAgICAgICAgICBhcmlhLWxhYmVsPSR7YXR0cmlidXRlcy5hcmlhTGFiZWwgfHwgbm90aGluZ31cbiAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT0ke2F0dHJpYnV0ZXMuYXJpYUxhYmVsbGVkYnkgfHwgbm90aGluZ31cbiAgICAgICAgICA+XG4gICAgICAgICAgICAke2xpc3RTbG90TmFtZXMubWFwKChuYW1lKSA9PiBodG1sYDxsaT48c2xvdCBuYW1lPSR7bmFtZX0+PC9zbG90PjwvbGk+YCl9XG4gICAgICAgICAgPC91bD5cbiAgICAgICAgICAke3RoaXMucmVuZGVySGlkZGVuU2xvdCgpfVxuICAgICAgICBgO1xuICAgICAgfSBlbHNlIGlmIChsaXN0U2xvdE5hbWVzLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICByZXR1cm4gaHRtbGA8c2JiLXNjcmVlbi1yZWFkZXItb25seT4ke2F0dHJpYnV0ZXMuYXJpYUxhYmVsfTwvc2JiLXNjcmVlbi1yZWFkZXItb25seT5cbiAgICAgICAgICA8c3BhbiBjbGFzcz0ke2F0dHJpYnV0ZXMuY2xhc3MgfHwgKHRoaXMubG9jYWxOYW1lID8/IGdldExvY2FsTmFtZSh0aGlzKSl9PlxuICAgICAgICAgICAgPHNwYW4+PHNsb3QgbmFtZT0ke2xpc3RTbG90TmFtZXNbMF19Pjwvc2xvdD48L3NwYW4+XG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICR7dGhpcy5yZW5kZXJIaWRkZW5TbG90KCl9IGA7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdGhpcy5yZW5kZXJIaWRkZW5TbG90KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbiBhcnJheSBvZiBsaXN0IHNsb3QgbmFtZXMgd2l0aCB0aGUgbGVuZ3RoIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGFtb3VudCBvZiBtYXRjaGVkXG4gICAgICogY2hpbGRyZW4gb3IgdGhlIGBkYXRhLXNzci1jaGlsZC1jb3VudGAgYXR0cmlidXRlIHZhbHVlLlxuICAgICAqXG4gICAgICogVGhpcyBpcyBhIHBvc3NpYmxlIG9wdGltaXphdGlvbiBmb3IgU1NSLCBhcyBpbiBhbiBTU1IgTGl0IGVudmlyb25tZW50XG4gICAgICogb3RoZXIgZWxlbWVudHMgYXJlIG5vdCBhdmFpbGFibGUsIGJ1dCBtaWdodCBiZSBhdmFpbGFibGUgaW4gdGhlIG1ldGFcbiAgICAgKiBmcmFtZXdvcmsgd3JhcHBlciAobGlrZSBlLmcuIFJlYWN0KS4gVGhpcyBhbGxvd3MgdG8gcHJvdmlkZSB0aGUgYW1vdW50IG9mXG4gICAgICogY2hpbGRyZW4gdG8gYmUgcGFzc2VkIHZpYSB0aGUgYGRhdGEtc3NyLWNoaWxkLWNvdW50YCBhdHRyaWJ1dGUgdmFsdWUuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGxpc3RTbG90TmFtZXMoKTogc3RyaW5nW10ge1xuICAgICAgY29uc3QgbGlzdENoaWxkcmVuID0gdGhpcy5saXN0Q2hpbGRyZW4ubGVuZ3RoXG4gICAgICAgID8gdGhpcy5saXN0Q2hpbGRyZW5cbiAgICAgICAgOiBBcnJheS5mcm9tKHsgbGVuZ3RoOiArKHRoaXMuZ2V0QXR0cmlidXRlKFNTUl9DSElMRF9DT1VOVF9BVFRSSUJVVEUpID8/IDApIH0pO1xuICAgICAgcmV0dXJuIGxpc3RDaGlsZHJlbi5tYXAoKF8sIGkpID0+IGAke1NMT1ROQU1FX1BSRUZJWH0tJHtpfWApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgYSBoaWRkZW4gc2xvdCwgd2hpY2ggaXMgaW50ZW5kZWQgYXMgdGhlIGNoaWxkcmVuIGNoYW5nZSBkZXRlY3Rpb24uXG4gICAgICogV2hlbiBhbiBlbGVtZW50IHdpdGhvdXQgYSBzbG90IGF0dHJpYnV0ZSBpcyBzbG90dGVkIHRvIHRoZSBlbGVtZW50LCBpdCB0cmlnZ2Vyc1xuICAgICAqIHRoZSBzbG90Y2hhbmdlIGV2ZW50LCB3aGljaCBjYW4gYmUgdXNlZCB0byBhc3NpZ24gaXQgdG8gdGhlIGFwcHJvcHJpYXRlIG5hbWVkIHNsb3QuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlbmRlckhpZGRlblNsb3QoKTogVGVtcGxhdGVSZXN1bHQge1xuICAgICAgcmV0dXJuIGh0bWxgPHNwYW4gaGlkZGVuPjxzbG90Pjwvc2xvdD48L3NwYW4+YDtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gTmFtZWRTbG90TGlzdEVsZW1lbnQgYXMgdW5rbm93biBhcyBBYnN0cmFjdENvbnN0cnVjdG9yPFNiYk5hbWVkU2xvdExpc3RNaXhpblR5cGU8Qz4+ICYgVDtcbn07XG4iLCJpbXBvcnQgdHlwZSB7IExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuaW1wb3J0IHsgcHJvcGVydHkgfSBmcm9tICdsaXQvZGVjb3JhdG9ycy5qcyc7XG5cbmltcG9ydCB0eXBlIHsgQWJzdHJhY3RDb25zdHJ1Y3RvciB9IGZyb20gJy4vY29uc3RydWN0b3IuanMnO1xuXG5leHBvcnQgZGVjbGFyZSBjbGFzcyBTYmJOZWdhdGl2ZU1peGluVHlwZSB7XG4gIHB1YmxpYyBuZWdhdGl2ZTogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBFbmhhbmNlIHlvdXIgY29tcG9uZW50IHdpdGggYSBuZWdhdGl2ZSBwcm9wZXJ0eS5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYk5lZ2F0aXZlTWl4aW4gPSA8VCBleHRlbmRzIEFic3RyYWN0Q29uc3RydWN0b3I8TGl0RWxlbWVudD4+KFxuICBzdXBlckNsYXNzOiBULFxuKTogQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJOZWdhdGl2ZU1peGluVHlwZT4gJiBUID0+IHtcbiAgYWJzdHJhY3QgY2xhc3MgU2JiTmVnYXRpdmVFbGVtZW50IGV4dGVuZHMgc3VwZXJDbGFzcyBpbXBsZW1lbnRzIFNiYk5lZ2F0aXZlTWl4aW5UeXBlIHtcbiAgICAvKiogTmVnYXRpdmUgY29sb3JpbmcgdmFyaWFudCBmbGFnLiAqL1xuICAgIEBwcm9wZXJ0eSh7IHJlZmxlY3Q6IHRydWUsIHR5cGU6IEJvb2xlYW4gfSkgcHVibGljIG5lZ2F0aXZlOiBib29sZWFuID0gZmFsc2U7XG4gIH1cblxuICByZXR1cm4gU2JiTmVnYXRpdmVFbGVtZW50IGFzIEFic3RyYWN0Q29uc3RydWN0b3I8U2JiTmVnYXRpdmVNaXhpblR5cGU+ICYgVDtcbn07XG4iLCJpbXBvcnQgdHlwZSB7IExpdEVsZW1lbnQgfSBmcm9tICdsaXQnO1xuXG5pbXBvcnQgdHlwZSB7IEFic3RyYWN0Q29uc3RydWN0b3IgfSBmcm9tICcuL2NvbnN0cnVjdG9yLmpzJztcblxuLy8gRGVmaW5lIHRoZSBpbnRlcmZhY2UgZm9yIHRoZSBtaXhpblxuZXhwb3J0IGRlY2xhcmUgY2xhc3MgU2JiVXBkYXRlU2NoZWR1bGVyTWl4aW5UeXBlIHtcbiAgcHJvdGVjdGVkIHN0YXJ0VXBkYXRlKCk6IHZvaWQ7XG4gIHByb3RlY3RlZCBjb21wbGV0ZVVwZGF0ZSgpOiB2b2lkO1xufVxuXG4vKipcbiAqIFRoaXMgbWl4aW4gYWxsb3dzIHNjaGVkdWxpbmcgbWFudWFsIHVwZGF0ZXMsIHdoaWNoIGFmZmVjdCB1cGRhdGVDb21wbGV0ZS5cbiAqIEBwYXJhbSBiYXNlIFRoZSBjbGFzcyB0byBleHRlbmQuXG4gKiBAcmV0dXJucyBBIGNsYXNzIGV4dGVuZGVkIHdpdGggdGhlIHNsb3QgY2hpbGQgb2JzZXJ2ZXIgZnVuY3Rpb25hbGl0eS5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuZXhwb3J0IGNvbnN0IFNiYlVwZGF0ZVNjaGVkdWxlck1peGluID0gPFQgZXh0ZW5kcyBBYnN0cmFjdENvbnN0cnVjdG9yPExpdEVsZW1lbnQ+PihcbiAgYmFzZTogVCxcbik6IEFic3RyYWN0Q29uc3RydWN0b3I8U2JiVXBkYXRlU2NoZWR1bGVyTWl4aW5UeXBlPiAmIFQgPT4ge1xuICBhYnN0cmFjdCBjbGFzcyBTYmJVcGRhdGVTY2hlZHVsZXJFbGVtZW50XG4gICAgZXh0ZW5kcyBiYXNlXG4gICAgaW1wbGVtZW50cyBQYXJ0aWFsPFNiYlVwZGF0ZVNjaGVkdWxlck1peGluVHlwZT5cbiAge1xuICAgIHByaXZhdGUgX3VwZGF0ZVByb21pc2UgPSBQcm9taXNlLnJlc29sdmUoKTtcbiAgICBwcml2YXRlIF91cGRhdGVSZXNvbHZlID0gKCk6IHZvaWQgPT4ge307XG5cbiAgICBwcm90ZWN0ZWQgc3RhcnRVcGRhdGUoKTogdm9pZCB7XG4gICAgICB0aGlzLl91cGRhdGVQcm9taXNlID0gbmV3IFByb21pc2U8dm9pZD4oKHIpID0+ICh0aGlzLl91cGRhdGVSZXNvbHZlID0gcikpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjb21wbGV0ZVVwZGF0ZSgpOiB2b2lkIHtcbiAgICAgIHRoaXMuX3VwZGF0ZVJlc29sdmUoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgYXN5bmMgZ2V0VXBkYXRlQ29tcGxldGUoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBzdXBlci5nZXRVcGRhdGVDb21wbGV0ZSgpO1xuICAgICAgYXdhaXQgdGhpcy5fdXBkYXRlUHJvbWlzZTtcbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICB9XG4gIHJldHVybiBTYmJVcGRhdGVTY2hlZHVsZXJFbGVtZW50IGFzIHVua25vd24gYXMgQWJzdHJhY3RDb25zdHJ1Y3RvcjxTYmJVcGRhdGVTY2hlZHVsZXJNaXhpblR5cGU+ICZcbiAgICBUO1xufTtcbiJdLCJuYW1lcyI6WyJfX2RlY29yYXRlQ2xhc3MiLCJzdGF0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFlYSxNQUFBLG1CQUFtQixDQUM5QixlQUNrRDtBQUFBLEVBQ2xELE1BQWUsMkJBQTJCLFdBQW9EO0FBQUEsSUFBOUYsY0FBQTtBQUFBLFlBQUEsR0FBQSxTQUFBO0FBV0UsV0FBUSxZQUFxQjtBQUFBLElBQUE7QUFBQSxJQVI3QixJQUFXLFNBQVMsT0FBZ0I7QUFHN0IsV0FBQSxZQUFZLFFBQVEsS0FBSztBQUFBLElBQ2hDO0FBQUEsSUFDQSxJQUFXLFdBQW9CO0FBQ3RCLGFBQUEsS0FBSyxhQUFhLEtBQUsscUJBQXFCO0FBQUEsSUFDckQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLElBT1UsdUJBQWdDO0FBQ2pDLGFBQUE7QUFBQSxJQUNUO0FBQUEsRUFDRjtBQWpCYUEsb0JBQUE7QUFBQSxJQURWLFNBQVMsRUFBRSxTQUFTLE1BQU0sTUFBTSxTQUFTO0FBQUEsRUFBQSxHQUY3QixtQkFHRixXQUFBLFVBQUE7QUFtQk4sU0FBQTtBQUNUO0FBR2EsTUFBQSxpQ0FBaUMsQ0FDNUMsZUFDa0Q7QUFBQSxFQUNsRCxNQUFlLGtDQUNMLGlCQUFpQixVQUFVLEVBRXJDO0FBQUEsSUFDcUIsV0FBVyxtQkFBK0M7QUFDM0UsWUFBTSxXQUFXLGlCQUFpQjtBQUVsQyxVQUFJLENBQUMsa0JBQWtCLElBQUksVUFBVSxHQUFHO0FBQ3RDO0FBQUEsTUFDRjtBQUlBLFVBQUksS0FBSyxVQUFVO0FBQ1osYUFBQSxhQUFhLGlCQUFpQixNQUFNO0FBQ3pDLGFBQUssZ0JBQWdCLFVBQVU7QUFBQSxN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
|