@kirbydesign/designsystem 10.1.3 → 10.2.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/avatar/avatar.component.d.ts +2 -1
- package/button/button.component.d.ts +1 -0
- package/calendar/calendar.component.d.ts +28 -18
- package/calendar/interfaces/calendar-day.d.ts +17 -0
- package/calendar/public_api.d.ts +1 -1
- package/chart/shared/chart-config-service/chart-config.service.d.ts +1 -1
- package/empty-state/empty-state.component.d.ts +10 -3
- package/esm2022/accordion/accordion-item.component.mjs +4 -4
- package/esm2022/accordion/accordion.directive.mjs +4 -4
- package/esm2022/accordion/accordion.module.mjs +5 -5
- package/esm2022/action-group/action-group.component.mjs +4 -4
- package/esm2022/avatar/avatar.component.mjs +7 -5
- package/esm2022/badge/badge.component.mjs +4 -4
- package/esm2022/button/button.component.mjs +18 -6
- package/esm2022/calendar/calendar.component.mjs +168 -101
- package/esm2022/calendar/interfaces/calendar-day.mjs +2 -0
- package/esm2022/calendar/interfaces/calendar-year-navigator-config.mjs +2 -0
- package/esm2022/calendar/public_api.mjs +1 -1
- package/esm2022/card/card-as-button/card-as-button.directive.mjs +4 -4
- package/esm2022/card/card-footer/card-footer.component.mjs +4 -4
- package/esm2022/card/card-header/card-header.component.mjs +4 -4
- package/esm2022/card/card.component.mjs +4 -4
- package/esm2022/card/card.module.mjs +5 -5
- package/esm2022/chart/chart/chart.component.mjs +4 -4
- package/esm2022/chart/charts.module.mjs +5 -5
- package/esm2022/chart/shared/base-chart/base-chart.component.mjs +4 -4
- package/esm2022/chart/shared/chart-config-service/chart-config.service.mjs +4 -4
- package/esm2022/chart/shared/chart-js-service/chart-js.service.mjs +4 -4
- package/esm2022/chart/stock-chart/stock-chart-js.service.mjs +4 -4
- package/esm2022/chart/stock-chart/stock-chart.component.mjs +4 -4
- package/esm2022/checkbox/checkbox.component.mjs +4 -4
- package/esm2022/data-table/data-table.module.mjs +5 -5
- package/esm2022/data-table/sortable/sortable.component.mjs +4 -4
- package/esm2022/divider/divider.component.mjs +4 -4
- package/esm2022/dropdown/dropdown.component.mjs +6 -6
- package/esm2022/dropdown/dropdown.module.mjs +5 -5
- package/esm2022/dropdown/keyboard-handler.service.mjs +4 -4
- package/esm2022/empty-state/empty-state.component.mjs +31 -7
- package/esm2022/empty-state/empty-state.module.mjs +5 -5
- package/esm2022/fab-sheet/fab-sheet.component.mjs +4 -4
- package/esm2022/flag/flag.component.mjs +4 -4
- package/esm2022/form-field/directives/affix/affix.directive.mjs +4 -4
- package/esm2022/form-field/directives/date/date-input.directive.mjs +4 -4
- package/esm2022/form-field/directives/decimal-mask/decimal-mask.directive.mjs +4 -4
- package/esm2022/form-field/form-field-message/form-field-message.component.mjs +4 -4
- package/esm2022/form-field/form-field.component.mjs +4 -4
- package/esm2022/form-field/form-field.module.mjs +8 -7
- package/esm2022/form-field/input/input.component.mjs +4 -4
- package/esm2022/form-field/input-counter/input-counter.component.mjs +4 -4
- package/esm2022/form-field/textarea/textarea.component.mjs +4 -4
- package/esm2022/header/header.component.mjs +16 -16
- package/esm2022/header/header.module.mjs +5 -5
- package/esm2022/helpers/content-mutation-observer.mjs +50 -0
- package/esm2022/helpers/element-ancestor-utils.mjs +33 -0
- package/esm2022/helpers/ionic-element-part-helper.mjs +4 -4
- package/esm2022/helpers/line-clamp-helper.mjs +4 -4
- package/esm2022/helpers/platform.service.mjs +4 -4
- package/esm2022/helpers/public_api.mjs +3 -2
- package/esm2022/icon/icon-registry.service.mjs +4 -4
- package/esm2022/icon/icon.component.mjs +4 -4
- package/esm2022/icon/icon.module.mjs +5 -5
- package/esm2022/item/item.component.mjs +13 -9
- package/esm2022/item/item.module.mjs +5 -5
- package/esm2022/item/label/label.component.mjs +5 -5
- package/esm2022/item-group/item-group.component.mjs +4 -4
- package/esm2022/item-sliding/item-sliding.component.mjs +4 -4
- package/esm2022/kirby-app/kirby-app.component.mjs +4 -4
- package/esm2022/kirby-app/kirby-app.module.mjs +5 -5
- package/esm2022/kirby-ionic-module/kirby-ionic.module.mjs +5 -5
- package/esm2022/lib/components/segmented-control/segmented-control.component.mjs +34 -7
- package/esm2022/lib/directives/key-handler/key-handler.directive.mjs +4 -4
- package/esm2022/lib/directives/modal-router-link/modal-router-link.directive.mjs +4 -4
- package/esm2022/lib/kirby.module.mjs +5 -5
- package/esm2022/list/directives/infinite-scroll.directive.mjs +4 -4
- package/esm2022/list/directives/list-item-color.directive.mjs +4 -4
- package/esm2022/list/helpers/list-helper.mjs +4 -4
- package/esm2022/list/list-experimental/list-experimental.component.mjs +4 -4
- package/esm2022/list/list-header/list-header.component.mjs +4 -4
- package/esm2022/list/list-item/list-item.component.mjs +5 -5
- package/esm2022/list/list-section-header/list-section-header.component.mjs +4 -4
- package/esm2022/list/list.component.mjs +5 -5
- package/esm2022/list/list.directive.mjs +13 -13
- package/esm2022/list/list.module.mjs +5 -5
- package/esm2022/loading-overlay/loading-overlay.component.mjs +4 -4
- package/esm2022/loading-overlay/loading-overlay.service.mjs +4 -4
- package/esm2022/menu/menu.component.mjs +215 -12
- package/esm2022/modal/modal/action-sheet/action-sheet.component.mjs +4 -4
- package/esm2022/modal/modal/alert/alert.component.mjs +4 -4
- package/esm2022/modal/modal/footer/modal-footer.component.mjs +4 -4
- package/esm2022/modal/modal/modal-component/modal.component.mjs +18 -8
- package/esm2022/modal/modal/services/action-sheet.helper.mjs +4 -4
- package/esm2022/modal/modal/services/alert.helper.mjs +4 -4
- package/esm2022/modal/modal/services/can-dismiss.helper.mjs +4 -4
- package/esm2022/modal/modal/services/modal-animation-builder.service.mjs +4 -4
- package/esm2022/modal/modal/services/modal.controller.mjs +4 -4
- package/esm2022/modal/modal/services/modal.helper.mjs +5 -4
- package/esm2022/modal/modal-navigation.service.mjs +4 -4
- package/esm2022/modal/modal-wrapper/compact/modal-compact-wrapper.component.mjs +19 -10
- package/esm2022/modal/modal-wrapper/config/modal-config.mjs +1 -1
- package/esm2022/modal/modal-wrapper/modal-elements-mover.delegate.mjs +1 -1
- package/esm2022/modal/modal-wrapper/modal-wrapper.component.mjs +35 -12
- package/esm2022/modal/modal.interfaces.mjs +4 -4
- package/esm2022/page/page-footer/page-footer.component.mjs +4 -4
- package/esm2022/page/page.component.mjs +39 -38
- package/esm2022/page/page.module.mjs +5 -5
- package/esm2022/popover/popover.component.mjs +4 -4
- package/esm2022/progress-circle/progress-circle-ring.component.mjs +4 -4
- package/esm2022/progress-circle/progress-circle.component.mjs +4 -4
- package/esm2022/radio/radio-group/radio-group.component.mjs +4 -4
- package/esm2022/radio/radio-module.mjs +5 -5
- package/esm2022/radio/radio.component.mjs +4 -4
- package/esm2022/range/range.component.mjs +4 -4
- package/esm2022/reorder-list/reorder-list.component.mjs +5 -5
- package/esm2022/router-outlet/router-outlet.component.mjs +4 -4
- package/esm2022/router-outlet/router-outlet.module.mjs +5 -5
- package/esm2022/section-header/section-header.component.mjs +4 -4
- package/esm2022/shared/component-loader.directive.mjs +4 -4
- package/esm2022/shared/fit-heading/fit-heading.directive.mjs +4 -4
- package/esm2022/shared/floating/floating.directive.mjs +4 -4
- package/esm2022/shared/portal/portal.directive.mjs +4 -4
- package/esm2022/shared/public_api.mjs +2 -1
- package/esm2022/shared/resize-observer/resize-observer.factory.mjs +4 -4
- package/esm2022/shared/resize-observer/resize-observer.service.mjs +4 -4
- package/esm2022/shared/theme-color/theme-color.directive.mjs +4 -4
- package/esm2022/shared/translation/translation.interface.mjs +2 -0
- package/esm2022/shared/translation/translation.service.mjs +37 -0
- package/esm2022/shared/translation/translations/da.mjs +11 -0
- package/esm2022/shared/translation/translations/en.mjs +11 -0
- package/esm2022/slide/slide-stretch-height.directive.mjs +4 -4
- package/esm2022/slide/slide.directive.mjs +4 -4
- package/esm2022/slide/slide.module.mjs +5 -5
- package/esm2022/slide/slides.component.mjs +16 -9
- package/esm2022/slide-button/slide-button.component.mjs +4 -4
- package/esm2022/spinner/spinner.component.mjs +4 -4
- package/esm2022/spinner/spinner.module.mjs +5 -5
- package/esm2022/tab-navigation/tab-navigation/tab-navigation.component.mjs +4 -4
- package/esm2022/tab-navigation/tab-navigation-item/tab-navigation-item.component.mjs +4 -4
- package/esm2022/tab-navigation/tab-navigation.module.mjs +5 -5
- package/esm2022/tabs/tab-button/tab-button.component.mjs +4 -4
- package/esm2022/tabs/tabs.component.mjs +4 -4
- package/esm2022/tabs/tabs.module.mjs +5 -5
- package/esm2022/tabs/tabs.service.mjs +4 -4
- package/esm2022/testing/test-helper.mjs +8 -5
- package/esm2022/testing-base/lib/components/mock.accordion-item.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.action-group.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.action-sheet.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.alert.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.avatar.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.badge.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.base-chart.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.button.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.calendar.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.card-footer.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.card-header.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.card.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.chart.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.checkbox.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.divider.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.dropdown.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.empty-state.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.fab-sheet.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.flag.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.form-field-message.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.form-field.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.header.component.mjs +10 -10
- package/esm2022/testing-base/lib/components/mock.icon.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.input-counter.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.input.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.item-group.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.item-sliding.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.item.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.kirby-app.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.label.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.list-experimental.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.list-header.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.list-item.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.list-section-header.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.list.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.loading-overlay.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.menu.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.modal-compact-wrapper.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.modal-footer.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.modal-wrapper.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.page-footer.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.page.component.mjs +34 -34
- package/esm2022/testing-base/lib/components/mock.popover.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.progress-circle-ring.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.progress-circle.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.radio-group.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.radio.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.range.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.reorder-list.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.router-outlet.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.section-header.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.segmented-control.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.slide-button.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.slides.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.spinner.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.stock-chart.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.tab-button.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.tab-navigation-item.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.tab-navigation.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.tabs.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.textarea.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.toggle-button.component.mjs +4 -4
- package/esm2022/testing-base/lib/components/mock.toggle.component.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.accordion.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.affix.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.card-as-button.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.component-loader.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.date-input.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.decimal-mask.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.fit-heading.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.floating.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.infinite-scroll.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.key-handler.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.list-item-color.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.list.directive.mjs +13 -13
- package/esm2022/testing-base/lib/directives/mock.modal-router-link.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.portal.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.slide.directive.mjs +4 -4
- package/esm2022/testing-base/lib/directives/mock.theme-color.directive.mjs +4 -4
- package/esm2022/testing-base/lib/kirby-testing-base.module.mjs +5 -5
- package/esm2022/testing-jasmine/lib/kirby-testing.module.mjs +5 -5
- package/esm2022/testing-jest/lib/kirby-testing.module.mjs +5 -5
- package/esm2022/toast/services/toast.controller.mjs +4 -4
- package/esm2022/toast/services/toast.helper.mjs +4 -4
- package/esm2022/toggle/toggle.component.mjs +4 -4
- package/esm2022/toggle-button/toggle-button.component.mjs +4 -4
- package/esm2022/toggle-button/toggle-button.module.mjs +5 -5
- package/esm2022/types/public_api.mjs +2 -1
- package/esm2022/types/unobserve-fn.mjs +2 -0
- package/esm2022/types/window-ref.mjs +4 -4
- package/fesm2022/kirbydesign-designsystem-accordion.mjs +10 -10
- package/fesm2022/kirbydesign-designsystem-accordion.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-action-group.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-action-group.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-avatar.mjs +6 -4
- package/fesm2022/kirbydesign-designsystem-avatar.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-badge.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-badge.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-button.mjs +17 -5
- package/fesm2022/kirbydesign-designsystem-button.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-calendar.mjs +168 -177
- package/fesm2022/kirbydesign-designsystem-calendar.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-card.mjs +16 -16
- package/fesm2022/kirbydesign-designsystem-card.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-chart.mjs +22 -22
- package/fesm2022/kirbydesign-designsystem-chart.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-checkbox.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-checkbox.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-data-table.mjs +7 -7
- package/fesm2022/kirbydesign-designsystem-data-table.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-divider.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-divider.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-dropdown.mjs +12 -12
- package/fesm2022/kirbydesign-designsystem-dropdown.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-empty-state.mjs +33 -9
- package/fesm2022/kirbydesign-designsystem-empty-state.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-fab-sheet.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-fab-sheet.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-flag.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-flag.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-form-field.mjs +30 -30
- package/fesm2022/kirbydesign-designsystem-form-field.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-header.mjs +19 -19
- package/fesm2022/kirbydesign-designsystem-header.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-helpers.mjs +69 -10
- package/fesm2022/kirbydesign-designsystem-helpers.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-icon.mjs +10 -10
- package/fesm2022/kirbydesign-designsystem-icon.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-item-group.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-item-group.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-item-sliding.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-item-sliding.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-item.mjs +20 -16
- package/fesm2022/kirbydesign-designsystem-item.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-kirby-app.mjs +7 -7
- package/fesm2022/kirbydesign-designsystem-kirby-app.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-kirby-ionic-module.mjs +4 -4
- package/fesm2022/kirbydesign-designsystem-kirby-ionic-module.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-list.mjs +42 -42
- package/fesm2022/kirbydesign-designsystem-list.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-loading-overlay.mjs +6 -6
- package/fesm2022/kirbydesign-designsystem-loading-overlay.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-menu.mjs +214 -11
- package/fesm2022/kirbydesign-designsystem-menu.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-modal.mjs +99 -57
- package/fesm2022/kirbydesign-designsystem-modal.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-page.mjs +44 -43
- package/fesm2022/kirbydesign-designsystem-page.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-popover.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-popover.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-progress-circle.mjs +6 -6
- package/fesm2022/kirbydesign-designsystem-progress-circle.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-radio.mjs +10 -10
- package/fesm2022/kirbydesign-designsystem-radio.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-range.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-range.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-reorder-list.mjs +4 -4
- package/fesm2022/kirbydesign-designsystem-reorder-list.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-router-outlet.mjs +7 -7
- package/fesm2022/kirbydesign-designsystem-router-outlet.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-section-header.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-section-header.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-shared-floating.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-shared-floating.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-shared-portal.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-shared-portal.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-shared.mjs +71 -17
- package/fesm2022/kirbydesign-designsystem-shared.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-slide-button.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-slide-button.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-slide.mjs +24 -18
- package/fesm2022/kirbydesign-designsystem-slide.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-spinner.mjs +7 -7
- package/fesm2022/kirbydesign-designsystem-spinner.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-tab-navigation.mjs +10 -10
- package/fesm2022/kirbydesign-designsystem-tab-navigation.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-tabs.mjs +13 -13
- package/fesm2022/kirbydesign-designsystem-tabs.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-testing-base.mjs +286 -286
- package/fesm2022/kirbydesign-designsystem-testing-base.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-testing-jasmine.mjs +4 -4
- package/fesm2022/kirbydesign-designsystem-testing-jasmine.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-testing-jest.mjs +4 -4
- package/fesm2022/kirbydesign-designsystem-testing-jest.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-testing.mjs +7 -4
- package/fesm2022/kirbydesign-designsystem-testing.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-toast.mjs +6 -6
- package/fesm2022/kirbydesign-designsystem-toast.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-toggle-button.mjs +7 -7
- package/fesm2022/kirbydesign-designsystem-toggle-button.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-toggle.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-toggle.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem-types.mjs +3 -3
- package/fesm2022/kirbydesign-designsystem-types.mjs.map +1 -1
- package/fesm2022/kirbydesign-designsystem.mjs +43 -16
- package/fesm2022/kirbydesign-designsystem.mjs.map +1 -1
- package/form-field/form-field.module.d.ts +2 -1
- package/helpers/content-mutation-observer.d.ts +8 -0
- package/helpers/{element-has-ancestor.d.ts → element-ancestor-utils.d.ts} +1 -0
- package/helpers/public_api.d.ts +2 -1
- package/icons/svg/accounts-outline.svg +0 -2
- package/icons/svg/accounts.svg +0 -2
- package/icons/svg/backspace.svg +0 -2
- package/icons/svg/camera.svg +0 -2
- package/icons/svg/copy.svg +0 -2
- package/icons/svg/flag.svg +0 -2
- package/icons/svg/inbox-outline.svg +0 -2
- package/icons/svg/inbox.svg +0 -2
- package/icons/svg/information.svg +0 -2
- package/icons/svg/menu-outline.svg +0 -2
- package/icons/svg/menu.svg +0 -2
- package/icons/svg/person-outline.svg +0 -2
- package/icons/svg/person.svg +0 -2
- package/icons/svg/reorder.svg +0 -2
- package/icons/svg/support.svg +0 -2
- package/item/item.component.d.ts +3 -2
- package/lib/components/segmented-control/segmented-control.component.d.ts +4 -0
- package/menu/menu.component.d.ts +32 -8
- package/modal/modal/modal-component/modal.component.d.ts +6 -3
- package/modal/modal-wrapper/compact/modal-compact-wrapper.component.d.ts +4 -2
- package/modal/modal-wrapper/config/modal-config.d.ts +3 -0
- package/modal/modal-wrapper/modal-wrapper.component.d.ts +8 -3
- package/package.json +4 -4
- package/page/page.component.d.ts +4 -3
- package/scss/base/_item-typography.scss +1 -0
- package/shared/public_api.d.ts +1 -0
- package/shared/translation/translation.interface.d.ts +10 -0
- package/shared/translation/translation.service.d.ts +12 -0
- package/shared/translation/translations/da.d.ts +2 -0
- package/shared/translation/translations/en.d.ts +2 -0
- package/slide/slides.component.d.ts +3 -1
- package/testing/test-helper.d.ts +1 -0
- package/types/public_api.d.ts +1 -0
- package/types/unobserve-fn.d.ts +1 -0
- package/calendar/helpers/calendar-cell.model.d.ts +0 -9
- package/calendar/helpers/calendar-options.model.d.ts +0 -9
- package/calendar/helpers/calendar.helper.d.ts +0 -24
- package/esm2022/calendar/helpers/calendar-cell.model.mjs +0 -2
- package/esm2022/calendar/helpers/calendar-options.model.mjs +0 -2
- package/esm2022/calendar/helpers/calendar.helper.mjs +0 -80
- package/esm2022/calendar/options/calendar-year-navigator-config.mjs +0 -2
- package/esm2022/helpers/element-has-ancestor.mjs +0 -24
- /package/calendar/{options → interfaces}/calendar-year-navigator-config.d.ts +0 -0
|
@@ -255,11 +255,11 @@ export class ModalNavigationService {
|
|
|
255
255
|
modal.dismiss();
|
|
256
256
|
});
|
|
257
257
|
}
|
|
258
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
259
|
-
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
258
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ModalNavigationService, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
259
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ModalNavigationService, providedIn: 'root' }); }
|
|
260
260
|
}
|
|
261
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
261
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ModalNavigationService, decorators: [{
|
|
262
262
|
type: Injectable,
|
|
263
263
|
args: [{ providedIn: 'root' }]
|
|
264
264
|
}], ctorParameters: () => [{ type: i1.Router }, { type: i1.ActivatedRoute }] });
|
|
265
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtbmF2aWdhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbW9kYWwvc3JjL21vZGFsLW5hdmlnYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFDTCxjQUFjLEVBQ2QsYUFBYSxFQUNiLGVBQWUsRUFHZixNQUFNLEdBRVAsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBTXhGLE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsWUFBb0IsTUFBYyxFQUFVLEtBQXFCO1FBQTdDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQTBMekQsMkJBQXNCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUN0RCxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQTBCLEVBQUUsQ0FBQyxLQUFLLFlBQVksYUFBYSxDQUFDLENBQzFFLENBQUM7SUE1TGtFLENBQUM7SUFFckUsWUFBWSxDQUFDLEdBQVc7UUFDdEIsT0FBTyxHQUFHLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyx3QkFBd0I7UUFDOUIsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDakMsT0FBTyxVQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDN0IsVUFBVSxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUM7UUFDckMsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3BC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QyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQzthQUMzRSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztpSUE1VlUsc0JBQXNCO3FJQUF0QixzQkFBc0IsY0FEVCxNQUFNOzsyRkFDbkIsc0JBQXNCO2tCQURsQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFjdGl2YXRlZFJvdXRlLFxuICBOYXZpZ2F0aW9uRW5kLFxuICBOYXZpZ2F0aW9uU3RhcnQsXG4gIFBhcmFtcyxcbiAgUm91dGUsXG4gIFJvdXRlcixcbiAgUm91dGVzLFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRU1QVFksIGZpcnN0VmFsdWVGcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgcGFpcndpc2UsIHNraXBVbnRpbCwgc3RhcnRXaXRoLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IExvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1vZGFsUm91dGVBY3RpdmF0aW9uIH0gZnJvbSAnLi9tb2RhbC5pbnRlcmZhY2VzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBNb2RhbE5hdmlnYXRpb25TZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUpIHt9XG5cbiAgaXNNb2RhbFJvdXRlKHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHVybC5pbmNsdWRlcygnKG1vZGFsOicpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDdXJyZW50QWN0aXZhdGVkUm91dGUoKTogQWN0aXZhdGVkUm91dGUge1xuICAgIGxldCBjaGlsZFJvdXRlID0gdGhpcy5yb3V0ZS5yb290O1xuICAgIHdoaWxlIChjaGlsZFJvdXRlLmZpcnN0Q2hpbGQpIHtcbiAgICAgIGNoaWxkUm91dGUgPSBjaGlsZFJvdXRlLmZpcnN0Q2hpbGQ7XG4gICAgfVxuICAgIHJldHVybiBjaGlsZFJvdXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBnZXRNb2RhbFJvdXRlcyhcbiAgICByb3V0ZUNvbmZpZzogUm91dGVzW10sXG4gICAgbW9kdWxlUm9vdFJvdXRlUGF0aD86IHN0cmluZ1xuICApOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgY29uc3QgZmxhdHRlbmVkUm91dGVzOiBSb3V0ZXMgPSBbXS5jb25jYXQoLi4ucm91dGVDb25maWcpO1xuICAgIGxldCBtb2RhbFJvdXRlczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBtb2R1bGVSb290UGF0aHMgPSBhd2FpdCB0aGlzLmdldE1vZHVsZVJvb3RQYXRoKGZsYXR0ZW5lZFJvdXRlcywgbW9kdWxlUm9vdFJvdXRlUGF0aCk7XG4gICAgaWYgKG1vZHVsZVJvb3RQYXRocykge1xuICAgICAgbW9kYWxSb3V0ZXMgPSB0aGlzLmdldE1vZGFsUm91dGVQYXRocyhmbGF0dGVuZWRSb3V0ZXMsIG1vZHVsZVJvb3RQYXRocyk7XG4gICAgfVxuICAgIHJldHVybiBtb2RhbFJvdXRlcztcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0TW9kdWxlUm9vdFBhdGgocm91dGVzOiBSb3V0ZXMsIG1vZHVsZVJvb3RSb3V0ZVBhdGg/OiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgaWYgKG1vZHVsZVJvb3RSb3V0ZVBhdGgpIHtcbiAgICAgIGNvbnN0IHRyaW1tZWRQYXRocyA9IG1vZHVsZVJvb3RSb3V0ZVBhdGhcbiAgICAgICAgLnRyaW0oKVxuICAgICAgICAuc3BsaXQoJy8nKVxuICAgICAgICAuZmlsdGVyKChwYXRoKSA9PiAhIXBhdGgpO1xuICAgICAgY29uc3Qgcm9vdFBhdGggPSBbJyddO1xuICAgICAgcmV0dXJuIHJvb3RQYXRoLmNvbmNhdCh0cmltbWVkUGF0aHMpO1xuICAgIH1cblxuICAgIGNvbnN0IGN1cnJlbnRSb3V0ZVBhdGhzID0gYXdhaXQgdGhpcy5nZXRDdXJyZW50Um91dGVQYXRocygpO1xuICAgIGNvbnN0IG1vZHVsZVJvb3RQYXRocyA9IHRoaXMuZ2V0Um91dGVQYXRoc1dpdGhvdXRDaGlsZFNlZ21lbnRzKGN1cnJlbnRSb3V0ZVBhdGhzLCByb3V0ZXMpO1xuICAgIHJldHVybiBtb2R1bGVSb290UGF0aHM7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldEN1cnJlbnRSb3V0ZVBhdGhzKCk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICBjb25zdCByb290UGF0aCA9IFsnJ107XG4gICAgY29uc3QgY3VycmVudE5hdmlnYXRpb24gPSB0aGlzLnJvdXRlci5nZXRDdXJyZW50TmF2aWdhdGlvbigpO1xuXG4gICAgaWYgKCF0aGlzLnJvdXRlci5uYXZpZ2F0ZWQgJiYgIWN1cnJlbnROYXZpZ2F0aW9uKSB7XG4gICAgICAvLyBJZiByb3V0ZXIgaGFzbid0IG5hdmlnYXRlZCB5ZXQgYW5kIHdlIGFyZSBub3QgaW4gdGhlIG1pZGRsZSBvZiBuYXZpZ2F0aW5nLCBhc3N1bWUgcm9vdDpcbiAgICAgIHJldHVybiByb290UGF0aDtcbiAgICB9XG5cbiAgICBpZiAoY3VycmVudE5hdmlnYXRpb24pIHtcbiAgICAgIC8vIFdhaXQgZm9yIGN1cnJlbnQgbmF2aWdhdGlvbiB0byBmaW5pc2g6XG4gICAgICBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLm5hdmlnYXRpb25FbmRMaXN0ZW5lciQpO1xuICAgIH1cblxuICAgIGxldCBjaGlsZFJvdXRlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5yb290O1xuICAgIHdoaWxlIChjaGlsZFJvdXRlLmZpcnN0Q2hpbGQpIHtcbiAgICAgIGNoaWxkUm91dGUgPSBjaGlsZFJvdXRlLmZpcnN0Q2hpbGQ7XG4gICAgfVxuICAgIGNvbnN0IGN1cnJlbnRCYWNrZHJvcFJvdXRlUGF0aCA9IGNoaWxkUm91dGUucGF0aEZyb21Sb290LmZpbHRlcihcbiAgICAgIChyb3V0ZSkgPT4gcm91dGUub3V0bGV0ICE9PSAnbW9kYWwnXG4gICAgKTtcblxuICAgIHJldHVybiByb290UGF0aC5jb25jYXQoXG4gICAgICAuLi5jdXJyZW50QmFja2Ryb3BSb3V0ZVBhdGgubWFwKChyb3V0ZSkgPT5cbiAgICAgICAgcm91dGUudXJsLmZpbHRlcigoc2VnbWVudCkgPT4gISFzZWdtZW50LnBhdGgpLm1hcCgoc2VnbWVudCkgPT4gc2VnbWVudC5wYXRoKVxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdldFJvdXRlUGF0aHNXaXRob3V0Q2hpbGRTZWdtZW50cyhyb3V0ZVBhdGhzOiBzdHJpbmdbXSwgcm91dGVzOiBSb3V0ZXMpOiBzdHJpbmdbXSB7XG4gICAgaWYgKCFyb3V0ZVBhdGhzLmxlbmd0aCkgcmV0dXJuIHJvdXRlUGF0aHM7XG5cbiAgICBjb25zdCBtYXRjaGVkQ2hpbGRSb3V0ZSA9IHRoaXMuZmluZENoaWxkUm91dGVGb3JVcmwocm91dGVQYXRocy5qb2luKCcvJyksIHJvdXRlcyk7XG5cbiAgICBpZiAoIW1hdGNoZWRDaGlsZFJvdXRlKSByZXR1cm4gcm91dGVQYXRocztcblxuICAgIGNvbnN0IHN0YXJ0U2xhc2hSZWdleCA9IC9eXFwvLztcbiAgICBjb25zdCByZWxhdGl2ZUNoaWxkUm91dGUgPSBtYXRjaGVkQ2hpbGRSb3V0ZS5yZXBsYWNlKHN0YXJ0U2xhc2hSZWdleCwgJycpO1xuICAgIGNvbnN0IGNoaWxkU2VnbWVudENvdW50ID0gcmVsYXRpdmVDaGlsZFJvdXRlLnNwbGl0KCcvJykubGVuZ3RoO1xuICAgIGNvbnN0IHJvdXRlUGF0aHNXaXRob3V0Q2hpbGRTZWdtZW50cyA9IHJvdXRlUGF0aHMuc2xpY2UoMCwgLWNoaWxkU2VnbWVudENvdW50KTsgLy8gUmVtb3ZlIGNoaWxkIHNlZ21lbnRzIGZyb20gZW5kIG9mIHJvdXRlIHBhdGggYXJyYXlcbiAgICByZXR1cm4gcm91dGVQYXRoc1dpdGhvdXRDaGlsZFNlZ21lbnRzO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kQ2hpbGRSb3V0ZUZvclVybCh1cmw6IHN0cmluZywgcm91dGVzOiBSb3V0ZXMpIHtcbiAgICBjb25zdCBtb2R1bGVSZWxhdGl2ZVBhdGhzID0gdGhpcy5nZXRSb3V0ZVBhdGhzKHJvdXRlcywgWycnXSkuc29ydCgpLnJldmVyc2UoKTsgLy8gRW5zdXJlIGNoaWxkIHBhdGhzIGFyZSBldmFsdWF0ZWQgZmlyc3RcbiAgICBsZXQgbWF0Y2hlZENoaWxkUm91dGUgPSBtb2R1bGVSZWxhdGl2ZVBhdGhzLmZpbmQoKHBhdGgpID0+IHVybC5lbmRzV2l0aChwYXRoKSk7XG4gICAgaWYgKCFtYXRjaGVkQ2hpbGRSb3V0ZSkge1xuICAgICAgLy8gTm8gc3RhdGljIGNoaWxkIHJvdXRlIGZvdW5kIG1hdGNoaW5nIGN1cnJlbnQgcm91dGUgLSBsb29rIGZvciBjaGlsZCByb3V0ZSB3aXRoIHVybCBwYXJhbXM6XG4gICAgICBjb25zdCBleGFjdE1hdGNoID0gZmFsc2U7XG4gICAgICBtYXRjaGVkQ2hpbGRSb3V0ZSA9IG1vZHVsZVJlbGF0aXZlUGF0aHMuZmluZChcbiAgICAgICAgKHBhdGgpID0+XG4gICAgICAgICAgcGF0aC5pbmNsdWRlcygnLzonKSAmJiB0aGlzLnBhdGhDb250YWluc0NoaWxkUm91dGVXaXRoVXJsUGFyYW1zKHVybCwgcGF0aCwgZXhhY3RNYXRjaClcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBtYXRjaGVkQ2hpbGRSb3V0ZTtcbiAgfVxuXG4gIHByaXZhdGUgcGF0aENvbnRhaW5zQ2hpbGRSb3V0ZVdpdGhVcmxQYXJhbXMoXG4gICAgcGF0aDogc3RyaW5nLFxuICAgIGNoaWxkUm91dGVXaXRoVXJsUGFyYW1zOiBzdHJpbmcsXG4gICAgZXhhY3RNYXRjaDogYm9vbGVhblxuICApIHtcbiAgICBjb25zdCBwYXRoU2VnbWVudHMgPSBwYXRoLnNwbGl0KCcvJyk7XG4gICAgY29uc3Qgc3RhcnRTbGFzaFJlZ2V4ID0gL15cXC8vO1xuICAgIGxldCBjaGlsZFJvdXRlVG9NYXRjaCA9IGNoaWxkUm91dGVXaXRoVXJsUGFyYW1zO1xuICAgIGlmICghZXhhY3RNYXRjaCkge1xuICAgICAgY29uc3QgcmVsYXRpdmVDaGlsZFJvdXRlID0gY2hpbGRSb3V0ZVdpdGhVcmxQYXJhbXMucmVwbGFjZShzdGFydFNsYXNoUmVnZXgsICcnKTtcbiAgICAgIGNoaWxkUm91dGVUb01hdGNoID0gcmVsYXRpdmVDaGlsZFJvdXRlO1xuICAgIH1cbiAgICBjb25zdCBjaGlsZFJvdXRlU2VnbWVudHMgPSBjaGlsZFJvdXRlVG9NYXRjaC5zcGxpdCgnLycpO1xuICAgIC8vIE1hdGNoIGVhY2ggY2hpbGQgcm91dGUgc2VnbWVudCBhZ2FpbnN0IHVybFxuICAgIC8vIE1hdGNoIGJhY2t3YXJkcyBmcm9tIGVuZCB0byBzdGFydCBvZiBjaGlsZCByb3V0ZSwgaS5lLiBcInVybCBlbmRzIHdpdGggY2hpbGQgcm91dGVcIjpcbiAgICBjb25zdCBwYXRoQ29udGFpbnNDaGlsZFJvdXRlID0gY2hpbGRSb3V0ZVNlZ21lbnRzLnJldmVyc2UoKS5ldmVyeSgoY2hpbGRSb3V0ZVNlZ21lbnQpID0+IHtcbiAgICAgIGNvbnN0IHBhdGhTZWdtZW50ID0gcGF0aFNlZ21lbnRzLnBvcCgpO1xuICAgICAgLy8gdXJsIHBhcmFtcyAoZS5nLiBgLzppZC9gKSBhcmUgdHJlYXRlZCBhcyBhIG1hdGNoOlxuICAgICAgcmV0dXJuIGNoaWxkUm91dGVTZWdtZW50LnN0YXJ0c1dpdGgoJzonKSB8fCBjaGlsZFJvdXRlU2VnbWVudCA9PT0gcGF0aFNlZ21lbnQ7XG4gICAgfSk7XG4gICAgaWYgKGV4YWN0TWF0Y2gpIHtcbiAgICAgIC8vIE9ubHkgbWF0Y2ggaWYgd2UndmUgcmVhY2hlZCB0aGUgc3RhcnQgb2YgdGhlIHVybCB0byBtYXRjaCBhZ2FpbnN0OlxuICAgICAgcmV0dXJuIHBhdGhTZWdtZW50cy5sZW5ndGggPT09IDAgJiYgcGF0aENvbnRhaW5zQ2hpbGRSb3V0ZTtcbiAgICB9XG4gICAgcmV0dXJuIHBhdGhDb250YWluc0NoaWxkUm91dGU7XG4gIH1cblxuICBwcml2YXRlIGdldFJvdXRlUGF0aHMocm91dGVzOiBSb3V0ZXMsIHBhcmVudFBhdGg6IHN0cmluZ1tdKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBBcnJheS5pc0FycmF5KHJvdXRlcylcbiAgICAgID8gKFtdIGFzIHN0cmluZ1tdKS5jb25jYXQoLi4ucm91dGVzLm1hcCgocm91dGUpID0+IHRoaXMuZ2V0Um91dGVQYXRoKHJvdXRlLCBwYXJlbnRQYXRoKSkpXG4gICAgICA6IFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSb3V0ZVBhdGgocm91dGU6IFJvdXRlLCBwYXJlbnRQYXRoOiBzdHJpbmdbXSk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCByb3V0ZXM6IHN0cmluZ1tdID0gW107XG4gICAgaWYgKHJvdXRlLm91dGxldCkgcmV0dXJuIHJvdXRlczsgLy8gRG9uJ3QgcmV0dXJuIHJlbGF0aXZlIHBhdGhzIGZvciBvdXRsZXQgcm91dGVzXG5cbiAgICBjb25zdCBjdXJyZW50UGF0aCA9IFsuLi5wYXJlbnRQYXRoXTtcbiAgICBpZiAocm91dGUucGF0aCkge1xuICAgICAgY3VycmVudFBhdGgucHVzaChyb3V0ZS5wYXRoKTtcbiAgICAgIHJvdXRlcy5wdXNoKGN1cnJlbnRQYXRoLmpvaW4oJy8nKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJvdXRlcy5jb25jYXQodGhpcy5nZXRSb3V0ZVBhdGhzKHJvdXRlLmNoaWxkcmVuLCBjdXJyZW50UGF0aCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNb2RhbFJvdXRlUGF0aChyb3V0ZTogUm91dGUsIHBhcmVudFBhdGg6IHN0cmluZ1tdKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IG1vZGFsT3V0bGV0TmFtZSA9ICdtb2RhbCc7XG4gICAgaWYgKCEhcm91dGUucGF0aCAmJiByb3V0ZS5vdXRsZXQgPT09IG1vZGFsT3V0bGV0TmFtZSkge1xuICAgICAgY29uc3QgbW9kYWxPdXRsZXRQYXRoID0gYCgke21vZGFsT3V0bGV0TmFtZX06JHtyb3V0ZS5wYXRofSlgO1xuICAgICAgY29uc3QgbW9kYWxSb3V0ZVBhdGggPSBbLi4ucGFyZW50UGF0aCwgbW9kYWxPdXRsZXRQYXRoXS5qb2luKCcvJyk7XG4gICAgICByZXR1cm4gW21vZGFsUm91dGVQYXRoXTtcbiAgICB9XG4gICAgY29uc3QgY3VycmVudFBhdGggPSBbLi4ucGFyZW50UGF0aF07XG4gICAgaWYgKHJvdXRlLnBhdGgpIHtcbiAgICAgIGN1cnJlbnRQYXRoLnB1c2gocm91dGUucGF0aCk7XG4gICAgfVxuICAgIHJldHVybiAoW10gYXMgc3RyaW5nW10pLmNvbmNhdCguLi50aGlzLmdldE1vZGFsUm91dGVQYXRocyhyb3V0ZS5jaGlsZHJlbiwgY3VycmVudFBhdGgpKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TW9kYWxSb3V0ZVBhdGhzKHJvdXRlczogUm91dGVzLCBwYXJlbnRQYXRoOiBzdHJpbmdbXSk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheShyb3V0ZXMpXG4gICAgICA/IChbXSBhcyBzdHJpbmdbXSkuY29uY2F0KC4uLnJvdXRlcy5tYXAoKHJvdXRlKSA9PiB0aGlzLmdldE1vZGFsUm91dGVQYXRoKHJvdXRlLCBwYXJlbnRQYXRoKSkpXG4gICAgICA6IFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBpc05ld01vZGFsV2luZG93KG5hdmlnYXRpb25FbmQ6IE5hdmlnYXRpb25FbmQpOiBib29sZWFuIHtcbiAgICBjb25zdCBjdXJyZW50TmF2aWdhdGlvbiA9IHRoaXMucm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCk7XG4gICAgaWYgKCFjdXJyZW50TmF2aWdhdGlvbiB8fCAhY3VycmVudE5hdmlnYXRpb24ucHJldmlvdXNOYXZpZ2F0aW9uKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY29uc3QgcHJldmlvdXNSb3V0ZVBhdGggPSAoXG4gICAgICBjdXJyZW50TmF2aWdhdGlvbi5wcmV2aW91c05hdmlnYXRpb24uZmluYWxVcmwgfHxcbiAgICAgIGN1cnJlbnROYXZpZ2F0aW9uLnByZXZpb3VzTmF2aWdhdGlvbi5leHRyYWN0ZWRVcmxcbiAgICApLnRvU3RyaW5nKCk7XG4gICAgY29uc3Qgd2FzTW9kYWxSb3V0ZSA9IHRoaXMuaXNNb2RhbFJvdXRlKHByZXZpb3VzUm91dGVQYXRoKTtcbiAgICBjb25zdCBpc01vZGFsUm91dGUgPSB0aGlzLmlzTW9kYWxSb3V0ZShuYXZpZ2F0aW9uRW5kLnVybEFmdGVyUmVkaXJlY3RzKTtcbiAgICBpZiAoIXdhc01vZGFsUm91dGUgJiYgaXNNb2RhbFJvdXRlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBjb25zdCBjdXJyZW50TW9kYWxSb3V0ZVBhcmVudCA9IG5hdmlnYXRpb25FbmQudXJsQWZ0ZXJSZWRpcmVjdHMuc3BsaXQoJy8obW9kYWw6JylbMF07XG4gICAgY29uc3QgcHJldmlvdXNNb2RhbFJvdXRlUGFyZW50ID0gcHJldmlvdXNSb3V0ZVBhdGguc3BsaXQoJy8obW9kYWw6JylbMF07XG5cbiAgICByZXR1cm4gcHJldmlvdXNNb2RhbFJvdXRlUGFyZW50ICE9PSBjdXJyZW50TW9kYWxSb3V0ZVBhcmVudDtcbiAgfVxuXG4gIHByaXZhdGUgbmF2aWdhdGlvbkVuZExpc3RlbmVyJCA9IHRoaXMucm91dGVyLmV2ZW50cy5waXBlKFxuICAgIGZpbHRlcigoZXZlbnQpOiBldmVudCBpcyBOYXZpZ2F0aW9uRW5kID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZClcbiAgKTtcblxuICBwcml2YXRlIGFzeW5jIHdhaXRGb3JDdXJyZW50VGhlbkdldE5hdmlnYXRpb25FbmRTdHJlYW0oKTogUHJvbWlzZTxPYnNlcnZhYmxlPE5hdmlnYXRpb25FbmQ+PiB7XG4gICAgaWYgKHRoaXMucm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCkpIHtcbiAgICAgIGNvbnN0IGN1cnJlbnROYXZpZ2F0aW9uRW5kID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5uYXZpZ2F0aW9uRW5kTGlzdGVuZXIkKTtcbiAgICAgIHJldHVybiB0aGlzLm5hdmlnYXRpb25FbmRMaXN0ZW5lciQucGlwZShzdGFydFdpdGgoY3VycmVudE5hdmlnYXRpb25FbmQpKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubmF2aWdhdGlvbkVuZExpc3RlbmVyJDtcbiAgfVxuXG4gIHByaXZhdGUgbW9kYWxSb3V0ZUFjdGl2YXRlZEZvcihcbiAgICBuYXZpZ2F0aW9uRW5kJDogT2JzZXJ2YWJsZTxOYXZpZ2F0aW9uRW5kPixcbiAgICBtb2RhbFJvdXRlU2V0OiBTZXQ8c3RyaW5nPixcbiAgICBtb2RhbFJvdXRlc0NvbnRhaW5zVXJsUGFyYW1zOiBib29sZWFuXG4gICk6IE9ic2VydmFibGU8TW9kYWxSb3V0ZUFjdGl2YXRpb24+IHtcbiAgICByZXR1cm4gbmF2aWdhdGlvbkVuZCQucGlwZShcbiAgICAgIGZpbHRlcigobmF2aWdhdGlvbkVuZCkgPT5cbiAgICAgICAgdGhpcy5tb2RhbFJvdXRlU2V0Q29udGFpbnNQYXRoKG1vZGFsUm91dGVTZXQsIG5hdmlnYXRpb25FbmQsIG1vZGFsUm91dGVzQ29udGFpbnNVcmxQYXJhbXMpXG4gICAgICApLFxuICAgICAgbWFwKChuYXZpZ2F0aW9uRW5kKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcm91dGU6IHRoaXMuZ2V0Q3VycmVudEFjdGl2YXRlZFJvdXRlKCksXG4gICAgICAgICAgaXNOZXdNb2RhbDogdGhpcy5pc05ld01vZGFsV2luZG93KG5hdmlnYXRpb25FbmQpLFxuICAgICAgICB9O1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBtb2RhbFJvdXRlRGVhY3RpdmF0ZWRGb3IoXG4gICAgbmF2aWdhdGlvbkVuZCQ6IE9ic2VydmFibGU8TmF2aWdhdGlvbkVuZD4sXG4gICAgbW9kYWxSb3V0ZVNldDogU2V0PHN0cmluZz4sXG4gICAgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtczogYm9vbGVhblxuICApOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gbmF2aWdhdGlvbkVuZCQucGlwZShcbiAgICAgIHBhaXJ3aXNlKCksXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgICBmaWx0ZXIoKFtwcmV2TmF2aWdhdGlvbiwgX10pID0+XG4gICAgICAgIHRoaXMubW9kYWxSb3V0ZVNldENvbnRhaW5zUGF0aChtb2RhbFJvdXRlU2V0LCBwcmV2TmF2aWdhdGlvbiwgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtcylcbiAgICAgICksIC8vIE9ubHkgZW1pdCBpZiBwcmV2aW91cyByb3V0ZSB3YXMgbW9kYWxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICAgIG1hcCgoW18sIGN1cnJlbnROYXZpZ2F0aW9uXSkgPT4ge1xuICAgICAgICBjb25zdCBpc05ld01vZGFsUm91dGUgPSB0aGlzLmlzTW9kYWxSb3V0ZShjdXJyZW50TmF2aWdhdGlvbi51cmxBZnRlclJlZGlyZWN0cyk7XG4gICAgICAgIC8vIERlYWN0aXZhdGUgbW9kYWwgcm91dGUgaWYgbmV3IHJvdXRlIGlzIE5PVCBtb2RhbCBPUiBpcyBvdXRzaWRlIGN1cnJlbnQgcGFyZW50IHJvdXRlOlxuICAgICAgICByZXR1cm4gIWlzTmV3TW9kYWxSb3V0ZSB8fCB0aGlzLmlzTmV3TW9kYWxXaW5kb3coY3VycmVudE5hdmlnYXRpb24pO1xuICAgICAgfSksXG4gICAgICBmaWx0ZXIoKGlzRGVhY3RpdmF0aW9uKSA9PiBpc0RlYWN0aXZhdGlvbilcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBtb2RhbFJvdXRlU2V0Q29udGFpbnNQYXRoKFxuICAgIG1vZGFsUm91dGVTZXQ6IFNldDxzdHJpbmc+LFxuICAgIG5hdmlnYXRpb25FbmQ6IE5hdmlnYXRpb25FbmQsXG4gICAgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtczogYm9vbGVhblxuICApIHtcbiAgICBjb25zdCBwYXRobmFtZSA9IG5hdmlnYXRpb25FbmQudXJsQWZ0ZXJSZWRpcmVjdHMuc3BsaXQoJz8nKVswXTtcbiAgICBsZXQgaGFzUm91dGUgPSBtb2RhbFJvdXRlU2V0LmhhcyhwYXRobmFtZSk7XG4gICAgaWYgKCFoYXNSb3V0ZSAmJiBtb2RhbFJvdXRlc0NvbnRhaW5zVXJsUGFyYW1zKSB7XG4gICAgICAvLyBVc2UgYGZvciAuLi4gb2ZgIGluc3RlYWQgb2YgYGZvckVhY2hgIHNvIHdlIGNhbiBicmVhayBvdXQgb2YgdGhlIGxvb3AgaWYgcm91dGUgaXMgZm91bmQ6XG4gICAgICBmb3IgKGNvbnN0IHJvdXRlIG9mIG1vZGFsUm91dGVTZXQpIHtcbiAgICAgICAgY29uc3QgZXhhY3RNYXRjaCA9IHRydWU7XG4gICAgICAgIGNvbnN0IHJvdXRlTWF0Y2hlc1BhdGggPSB0aGlzLnBhdGhDb250YWluc0NoaWxkUm91dGVXaXRoVXJsUGFyYW1zKFxuICAgICAgICAgIHBhdGhuYW1lLFxuICAgICAgICAgIHJvdXRlLFxuICAgICAgICAgIGV4YWN0TWF0Y2hcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKHJvdXRlTWF0Y2hlc1BhdGgpIHtcbiAgICAgICAgICBoYXNSb3V0ZSA9IHRydWU7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGhhc1JvdXRlO1xuICB9XG5cbiAgYXN5bmMgZ2V0TW9kYWxOYXZpZ2F0aW9uKFxuICAgIHJvdXRlQ29uZmlnOiBSb3V0ZXNbXSxcbiAgICBtb2R1bGVSb290Um91dGVQYXRoPzogc3RyaW5nXG4gICk6IFByb21pc2U8eyBhY3RpdmF0ZWQkOiBPYnNlcnZhYmxlPE1vZGFsUm91dGVBY3RpdmF0aW9uPjsgZGVhY3RpdmF0ZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+IH0+IHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShyb3V0ZUNvbmZpZykpIHtcbiAgICAgIGNvbnN0IG5hdmlnYXRpb25FbmQkID0gYXdhaXQgdGhpcy53YWl0Rm9yQ3VycmVudFRoZW5HZXROYXZpZ2F0aW9uRW5kU3RyZWFtKCk7XG4gICAgICBjb25zdCBtb2RhbFJvdXRlcyA9IGF3YWl0IHRoaXMuZ2V0TW9kYWxSb3V0ZXMocm91dGVDb25maWcsIG1vZHVsZVJvb3RSb3V0ZVBhdGgpO1xuICAgICAgY29uc3QgaGFzTW9kYWxSb3V0ZXMgPSBtb2RhbFJvdXRlcy5sZW5ndGggPiAwO1xuICAgICAgaWYgKGhhc01vZGFsUm91dGVzKSB7XG4gICAgICAgIGNvbnN0IG1vZGFsUm91dGVzQ29udGFpbnNVcmxQYXJhbXMgPSBtb2RhbFJvdXRlcy5zb21lKChyb3V0ZSkgPT4gcm91dGUuaW5jbHVkZXMoJy86JykpO1xuICAgICAgICBjb25zdCBtb2RhbFJvdXRlU2V0ID0gbmV3IFNldChtb2RhbFJvdXRlcyk7XG4gICAgICAgIGNvbnN0IGFjdGl2YXRlZCQgPSB0aGlzLm1vZGFsUm91dGVBY3RpdmF0ZWRGb3IoXG4gICAgICAgICAgbmF2aWdhdGlvbkVuZCQsXG4gICAgICAgICAgbW9kYWxSb3V0ZVNldCxcbiAgICAgICAgICBtb2RhbFJvdXRlc0NvbnRhaW5zVXJsUGFyYW1zXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGRlYWN0aXZhdGVkJCA9IHRoaXMubW9kYWxSb3V0ZURlYWN0aXZhdGVkRm9yKFxuICAgICAgICAgIG5hdmlnYXRpb25FbmQkLFxuICAgICAgICAgIG1vZGFsUm91dGVTZXQsXG4gICAgICAgICAgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtc1xuICAgICAgICApO1xuICAgICAgICByZXR1cm4geyBhY3RpdmF0ZWQkLCBkZWFjdGl2YXRlZCQgfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4geyBhY3RpdmF0ZWQkOiBFTVBUWSwgZGVhY3RpdmF0ZWQkOiBFTVBUWSB9O1xuICB9XG5cbiAgYXN5bmMgbmF2aWdhdGVUb01vZGFsKHBhdGg6IHN0cmluZyB8IHN0cmluZ1tdLCBxdWVyeVBhcmFtcz86IFBhcmFtcyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGNvbW1hbmRzID0gQXJyYXkuaXNBcnJheShwYXRoKSA/IFsuLi5wYXRoXSA6IHBhdGguc3BsaXQoJy8nKTtcbiAgICBjb25zdCBjaGlsZFBhdGggPSBjb21tYW5kcy5wb3AoKTtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbLi4uY29tbWFuZHMsIHsgb3V0bGV0czogeyBtb2RhbDogW2NoaWxkUGF0aF0gfSB9XSwge1xuICAgICAgcXVlcnlQYXJhbXMsXG4gICAgICByZWxhdGl2ZVRvOiB0aGlzLmdldEN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSgpLFxuICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBhc3luYyBuYXZpZ2F0ZVdpdGhpbk1vZGFsKHJlbGF0aXZlUGF0aDogc3RyaW5nLCBxdWVyeVBhcmFtcz86IFBhcmFtcyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcmVsYXRpdmVQYXRoXSwge1xuICAgICAgcXVlcnlQYXJhbXMsXG4gICAgICByZWxhdGl2ZVRvOiB0aGlzLmdldEN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSgpLFxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgbmF2aWdhdGVPdXRPZk1vZGFsT3V0bGV0KCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSA9IHRoaXMuZ2V0Q3VycmVudEFjdGl2YXRlZFJvdXRlKCk7XG4gICAgY29uc3QgY3VycmVudE5hdmlnYXRpb25GaW5hbFVybCA9IHRoaXMucm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCk/LmZpbmFsVXJsPy50b1N0cmluZygpO1xuICAgIGNvbnN0IGlzQ3VycmVudGx5TmF2aWdhdGluZ091dE9mTW9kYWxPdXRsZXQgPVxuICAgICAgY3VycmVudE5hdmlnYXRpb25GaW5hbFVybCAmJiAhdGhpcy5pc01vZGFsUm91dGUoY3VycmVudE5hdmlnYXRpb25GaW5hbFVybCk7XG5cbiAgICBpZiAoY3VycmVudEFjdGl2YXRlZFJvdXRlLm91dGxldCAhPT0gJ21vZGFsJyB8fCBpc0N1cnJlbnRseU5hdmlnYXRpbmdPdXRPZk1vZGFsT3V0bGV0KSB7XG4gICAgICAvLyBOb3RoaW5nIHRvIGRvIGhlcmUsIGJhaWwgb3V0OlxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0cnVlKTtcbiAgICB9XG5cbiAgICBjb25zdCBwYXJlbnRSb3V0ZSA9IHRoaXMuZ2V0QmFja2Ryb3BSb3V0ZShjdXJyZW50QWN0aXZhdGVkUm91dGUpO1xuICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy4vJ10sIHtcbiAgICAgIHJlbGF0aXZlVG86IHBhcmVudFJvdXRlLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRCYWNrZHJvcFJvdXRlKGN1cnJlbnRBY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcbiAgICBsZXQgcGFyZW50Um91dGUgPSBjdXJyZW50QWN0aXZhdGVkUm91dGUucGFyZW50O1xuICAgIHdoaWxlIChwYXJlbnRSb3V0ZSAmJiAhcGFyZW50Um91dGUuY29tcG9uZW50ICYmICEhcGFyZW50Um91dGUucGFyZW50KSB7XG4gICAgICBwYXJlbnRSb3V0ZSA9IHBhcmVudFJvdXRlLnBhcmVudDtcbiAgICB9XG4gICAgcmV0dXJuIHBhcmVudFJvdXRlO1xuICB9XG5cbiAgaGFuZGxlQnJvd3NlckJhY2tCdXR0b24obW9kYWw6IEhUTUxJb25Nb2RhbEVsZW1lbnQpIHtcbiAgICBjb25zdCBwb3BzdGF0ZU5hdmlnYXRpb25TdGFydCQgPSB0aGlzLnJvdXRlci5ldmVudHMucGlwZShcbiAgICAgIGZpbHRlcihcbiAgICAgICAgKGV2ZW50KTogZXZlbnQgaXMgTmF2aWdhdGlvblN0YXJ0ID0+XG4gICAgICAgICAgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQgJiYgZXZlbnQubmF2aWdhdGlvblRyaWdnZXIgPT09ICdwb3BzdGF0ZSdcbiAgICAgIClcbiAgICApO1xuICAgIGNvbnN0IG5hdmlnYXRpb25FbmQkID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoXG4gICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpXG4gICAgKTtcbiAgICBuYXZpZ2F0aW9uRW5kJFxuICAgICAgLnBpcGUoc2tpcFVudGlsKHBvcHN0YXRlTmF2aWdhdGlvblN0YXJ0JCksIHRha2VVbnRpbChtb2RhbC5vbldpbGxEaXNtaXNzKCkpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIG1vZGFsLmRpc21pc3MoKTtcbiAgICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
265
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtbmF2aWdhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbW9kYWwvc3JjL21vZGFsLW5hdmlnYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFDTCxjQUFjLEVBQ2QsYUFBYSxFQUNiLGVBQWUsRUFHZixNQUFNLEdBRVAsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBS3hGLE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsWUFDVSxNQUFjLEVBQ2QsS0FBcUI7UUFEckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBMkx2QiwyQkFBc0IsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ3RELE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBMEIsRUFBRSxDQUFDLEtBQUssWUFBWSxhQUFhLENBQUMsQ0FDMUUsQ0FBQztJQTVMQyxDQUFDO0lBRUosWUFBWSxDQUFDLEdBQVc7UUFDdEIsT0FBTyxHQUFHLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTyx3QkFBd0I7UUFDOUIsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7UUFDakMsT0FBTyxVQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDN0IsVUFBVSxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUM7UUFDckMsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENB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QUFLLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQzthQUMzRSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztrSUEvVlUsc0JBQXNCO3NJQUF0QixzQkFBc0IsY0FEVCxNQUFNOzs0RkFDbkIsc0JBQXNCO2tCQURsQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFjdGl2YXRlZFJvdXRlLFxuICBOYXZpZ2F0aW9uRW5kLFxuICBOYXZpZ2F0aW9uU3RhcnQsXG4gIFBhcmFtcyxcbiAgUm91dGUsXG4gIFJvdXRlcixcbiAgUm91dGVzLFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRU1QVFksIGZpcnN0VmFsdWVGcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgcGFpcndpc2UsIHNraXBVbnRpbCwgc3RhcnRXaXRoLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IE1vZGFsUm91dGVBY3RpdmF0aW9uIH0gZnJvbSAnLi9tb2RhbC5pbnRlcmZhY2VzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBNb2RhbE5hdmlnYXRpb25TZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVxuICApIHt9XG5cbiAgaXNNb2RhbFJvdXRlKHVybDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHVybC5pbmNsdWRlcygnKG1vZGFsOicpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDdXJyZW50QWN0aXZhdGVkUm91dGUoKTogQWN0aXZhdGVkUm91dGUge1xuICAgIGxldCBjaGlsZFJvdXRlID0gdGhpcy5yb3V0ZS5yb290O1xuICAgIHdoaWxlIChjaGlsZFJvdXRlLmZpcnN0Q2hpbGQpIHtcbiAgICAgIGNoaWxkUm91dGUgPSBjaGlsZFJvdXRlLmZpcnN0Q2hpbGQ7XG4gICAgfVxuICAgIHJldHVybiBjaGlsZFJvdXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBnZXRNb2RhbFJvdXRlcyhcbiAgICByb3V0ZUNvbmZpZzogUm91dGVzW10sXG4gICAgbW9kdWxlUm9vdFJvdXRlUGF0aD86IHN0cmluZ1xuICApOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgY29uc3QgZmxhdHRlbmVkUm91dGVzOiBSb3V0ZXMgPSBbXS5jb25jYXQoLi4ucm91dGVDb25maWcpO1xuICAgIGxldCBtb2RhbFJvdXRlczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCBtb2R1bGVSb290UGF0aHMgPSBhd2FpdCB0aGlzLmdldE1vZHVsZVJvb3RQYXRoKGZsYXR0ZW5lZFJvdXRlcywgbW9kdWxlUm9vdFJvdXRlUGF0aCk7XG4gICAgaWYgKG1vZHVsZVJvb3RQYXRocykge1xuICAgICAgbW9kYWxSb3V0ZXMgPSB0aGlzLmdldE1vZGFsUm91dGVQYXRocyhmbGF0dGVuZWRSb3V0ZXMsIG1vZHVsZVJvb3RQYXRocyk7XG4gICAgfVxuICAgIHJldHVybiBtb2RhbFJvdXRlcztcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0TW9kdWxlUm9vdFBhdGgocm91dGVzOiBSb3V0ZXMsIG1vZHVsZVJvb3RSb3V0ZVBhdGg/OiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgaWYgKG1vZHVsZVJvb3RSb3V0ZVBhdGgpIHtcbiAgICAgIGNvbnN0IHRyaW1tZWRQYXRocyA9IG1vZHVsZVJvb3RSb3V0ZVBhdGhcbiAgICAgICAgLnRyaW0oKVxuICAgICAgICAuc3BsaXQoJy8nKVxuICAgICAgICAuZmlsdGVyKChwYXRoKSA9PiAhIXBhdGgpO1xuICAgICAgY29uc3Qgcm9vdFBhdGggPSBbJyddO1xuICAgICAgcmV0dXJuIHJvb3RQYXRoLmNvbmNhdCh0cmltbWVkUGF0aHMpO1xuICAgIH1cblxuICAgIGNvbnN0IGN1cnJlbnRSb3V0ZVBhdGhzID0gYXdhaXQgdGhpcy5nZXRDdXJyZW50Um91dGVQYXRocygpO1xuICAgIGNvbnN0IG1vZHVsZVJvb3RQYXRocyA9IHRoaXMuZ2V0Um91dGVQYXRoc1dpdGhvdXRDaGlsZFNlZ21lbnRzKGN1cnJlbnRSb3V0ZVBhdGhzLCByb3V0ZXMpO1xuICAgIHJldHVybiBtb2R1bGVSb290UGF0aHM7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldEN1cnJlbnRSb3V0ZVBhdGhzKCk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICBjb25zdCByb290UGF0aCA9IFsnJ107XG4gICAgY29uc3QgY3VycmVudE5hdmlnYXRpb24gPSB0aGlzLnJvdXRlci5nZXRDdXJyZW50TmF2aWdhdGlvbigpO1xuXG4gICAgaWYgKCF0aGlzLnJvdXRlci5uYXZpZ2F0ZWQgJiYgIWN1cnJlbnROYXZpZ2F0aW9uKSB7XG4gICAgICAvLyBJZiByb3V0ZXIgaGFzbid0IG5hdmlnYXRlZCB5ZXQgYW5kIHdlIGFyZSBub3QgaW4gdGhlIG1pZGRsZSBvZiBuYXZpZ2F0aW5nLCBhc3N1bWUgcm9vdDpcbiAgICAgIHJldHVybiByb290UGF0aDtcbiAgICB9XG5cbiAgICBpZiAoY3VycmVudE5hdmlnYXRpb24pIHtcbiAgICAgIC8vIFdhaXQgZm9yIGN1cnJlbnQgbmF2aWdhdGlvbiB0byBmaW5pc2g6XG4gICAgICBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLm5hdmlnYXRpb25FbmRMaXN0ZW5lciQpO1xuICAgIH1cblxuICAgIGxldCBjaGlsZFJvdXRlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5yb290O1xuICAgIHdoaWxlIChjaGlsZFJvdXRlLmZpcnN0Q2hpbGQpIHtcbiAgICAgIGNoaWxkUm91dGUgPSBjaGlsZFJvdXRlLmZpcnN0Q2hpbGQ7XG4gICAgfVxuICAgIGNvbnN0IGN1cnJlbnRCYWNrZHJvcFJvdXRlUGF0aCA9IGNoaWxkUm91dGUucGF0aEZyb21Sb290LmZpbHRlcihcbiAgICAgIChyb3V0ZSkgPT4gcm91dGUub3V0bGV0ICE9PSAnbW9kYWwnXG4gICAgKTtcblxuICAgIHJldHVybiByb290UGF0aC5jb25jYXQoXG4gICAgICAuLi5jdXJyZW50QmFja2Ryb3BSb3V0ZVBhdGgubWFwKChyb3V0ZSkgPT5cbiAgICAgICAgcm91dGUudXJsLmZpbHRlcigoc2VnbWVudCkgPT4gISFzZWdtZW50LnBhdGgpLm1hcCgoc2VnbWVudCkgPT4gc2VnbWVudC5wYXRoKVxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdldFJvdXRlUGF0aHNXaXRob3V0Q2hpbGRTZWdtZW50cyhyb3V0ZVBhdGhzOiBzdHJpbmdbXSwgcm91dGVzOiBSb3V0ZXMpOiBzdHJpbmdbXSB7XG4gICAgaWYgKCFyb3V0ZVBhdGhzLmxlbmd0aCkgcmV0dXJuIHJvdXRlUGF0aHM7XG5cbiAgICBjb25zdCBtYXRjaGVkQ2hpbGRSb3V0ZSA9IHRoaXMuZmluZENoaWxkUm91dGVGb3JVcmwocm91dGVQYXRocy5qb2luKCcvJyksIHJvdXRlcyk7XG5cbiAgICBpZiAoIW1hdGNoZWRDaGlsZFJvdXRlKSByZXR1cm4gcm91dGVQYXRocztcblxuICAgIGNvbnN0IHN0YXJ0U2xhc2hSZWdleCA9IC9eXFwvLztcbiAgICBjb25zdCByZWxhdGl2ZUNoaWxkUm91dGUgPSBtYXRjaGVkQ2hpbGRSb3V0ZS5yZXBsYWNlKHN0YXJ0U2xhc2hSZWdleCwgJycpO1xuICAgIGNvbnN0IGNoaWxkU2VnbWVudENvdW50ID0gcmVsYXRpdmVDaGlsZFJvdXRlLnNwbGl0KCcvJykubGVuZ3RoO1xuICAgIGNvbnN0IHJvdXRlUGF0aHNXaXRob3V0Q2hpbGRTZWdtZW50cyA9IHJvdXRlUGF0aHMuc2xpY2UoMCwgLWNoaWxkU2VnbWVudENvdW50KTsgLy8gUmVtb3ZlIGNoaWxkIHNlZ21lbnRzIGZyb20gZW5kIG9mIHJvdXRlIHBhdGggYXJyYXlcbiAgICByZXR1cm4gcm91dGVQYXRoc1dpdGhvdXRDaGlsZFNlZ21lbnRzO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kQ2hpbGRSb3V0ZUZvclVybCh1cmw6IHN0cmluZywgcm91dGVzOiBSb3V0ZXMpIHtcbiAgICBjb25zdCBtb2R1bGVSZWxhdGl2ZVBhdGhzID0gdGhpcy5nZXRSb3V0ZVBhdGhzKHJvdXRlcywgWycnXSkuc29ydCgpLnJldmVyc2UoKTsgLy8gRW5zdXJlIGNoaWxkIHBhdGhzIGFyZSBldmFsdWF0ZWQgZmlyc3RcbiAgICBsZXQgbWF0Y2hlZENoaWxkUm91dGUgPSBtb2R1bGVSZWxhdGl2ZVBhdGhzLmZpbmQoKHBhdGgpID0+IHVybC5lbmRzV2l0aChwYXRoKSk7XG4gICAgaWYgKCFtYXRjaGVkQ2hpbGRSb3V0ZSkge1xuICAgICAgLy8gTm8gc3RhdGljIGNoaWxkIHJvdXRlIGZvdW5kIG1hdGNoaW5nIGN1cnJlbnQgcm91dGUgLSBsb29rIGZvciBjaGlsZCByb3V0ZSB3aXRoIHVybCBwYXJhbXM6XG4gICAgICBjb25zdCBleGFjdE1hdGNoID0gZmFsc2U7XG4gICAgICBtYXRjaGVkQ2hpbGRSb3V0ZSA9IG1vZHVsZVJlbGF0aXZlUGF0aHMuZmluZChcbiAgICAgICAgKHBhdGgpID0+XG4gICAgICAgICAgcGF0aC5pbmNsdWRlcygnLzonKSAmJiB0aGlzLnBhdGhDb250YWluc0NoaWxkUm91dGVXaXRoVXJsUGFyYW1zKHVybCwgcGF0aCwgZXhhY3RNYXRjaClcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBtYXRjaGVkQ2hpbGRSb3V0ZTtcbiAgfVxuXG4gIHByaXZhdGUgcGF0aENvbnRhaW5zQ2hpbGRSb3V0ZVdpdGhVcmxQYXJhbXMoXG4gICAgcGF0aDogc3RyaW5nLFxuICAgIGNoaWxkUm91dGVXaXRoVXJsUGFyYW1zOiBzdHJpbmcsXG4gICAgZXhhY3RNYXRjaDogYm9vbGVhblxuICApIHtcbiAgICBjb25zdCBwYXRoU2VnbWVudHMgPSBwYXRoLnNwbGl0KCcvJyk7XG4gICAgY29uc3Qgc3RhcnRTbGFzaFJlZ2V4ID0gL15cXC8vO1xuICAgIGxldCBjaGlsZFJvdXRlVG9NYXRjaCA9IGNoaWxkUm91dGVXaXRoVXJsUGFyYW1zO1xuICAgIGlmICghZXhhY3RNYXRjaCkge1xuICAgICAgY29uc3QgcmVsYXRpdmVDaGlsZFJvdXRlID0gY2hpbGRSb3V0ZVdpdGhVcmxQYXJhbXMucmVwbGFjZShzdGFydFNsYXNoUmVnZXgsICcnKTtcbiAgICAgIGNoaWxkUm91dGVUb01hdGNoID0gcmVsYXRpdmVDaGlsZFJvdXRlO1xuICAgIH1cbiAgICBjb25zdCBjaGlsZFJvdXRlU2VnbWVudHMgPSBjaGlsZFJvdXRlVG9NYXRjaC5zcGxpdCgnLycpO1xuICAgIC8vIE1hdGNoIGVhY2ggY2hpbGQgcm91dGUgc2VnbWVudCBhZ2FpbnN0IHVybFxuICAgIC8vIE1hdGNoIGJhY2t3YXJkcyBmcm9tIGVuZCB0byBzdGFydCBvZiBjaGlsZCByb3V0ZSwgaS5lLiBcInVybCBlbmRzIHdpdGggY2hpbGQgcm91dGVcIjpcbiAgICBjb25zdCBwYXRoQ29udGFpbnNDaGlsZFJvdXRlID0gY2hpbGRSb3V0ZVNlZ21lbnRzLnJldmVyc2UoKS5ldmVyeSgoY2hpbGRSb3V0ZVNlZ21lbnQpID0+IHtcbiAgICAgIGNvbnN0IHBhdGhTZWdtZW50ID0gcGF0aFNlZ21lbnRzLnBvcCgpO1xuICAgICAgLy8gdXJsIHBhcmFtcyAoZS5nLiBgLzppZC9gKSBhcmUgdHJlYXRlZCBhcyBhIG1hdGNoOlxuICAgICAgcmV0dXJuIGNoaWxkUm91dGVTZWdtZW50LnN0YXJ0c1dpdGgoJzonKSB8fCBjaGlsZFJvdXRlU2VnbWVudCA9PT0gcGF0aFNlZ21lbnQ7XG4gICAgfSk7XG4gICAgaWYgKGV4YWN0TWF0Y2gpIHtcbiAgICAgIC8vIE9ubHkgbWF0Y2ggaWYgd2UndmUgcmVhY2hlZCB0aGUgc3RhcnQgb2YgdGhlIHVybCB0byBtYXRjaCBhZ2FpbnN0OlxuICAgICAgcmV0dXJuIHBhdGhTZWdtZW50cy5sZW5ndGggPT09IDAgJiYgcGF0aENvbnRhaW5zQ2hpbGRSb3V0ZTtcbiAgICB9XG4gICAgcmV0dXJuIHBhdGhDb250YWluc0NoaWxkUm91dGU7XG4gIH1cblxuICBwcml2YXRlIGdldFJvdXRlUGF0aHMocm91dGVzOiBSb3V0ZXMsIHBhcmVudFBhdGg6IHN0cmluZ1tdKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBBcnJheS5pc0FycmF5KHJvdXRlcylcbiAgICAgID8gKFtdIGFzIHN0cmluZ1tdKS5jb25jYXQoLi4ucm91dGVzLm1hcCgocm91dGUpID0+IHRoaXMuZ2V0Um91dGVQYXRoKHJvdXRlLCBwYXJlbnRQYXRoKSkpXG4gICAgICA6IFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSb3V0ZVBhdGgocm91dGU6IFJvdXRlLCBwYXJlbnRQYXRoOiBzdHJpbmdbXSk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCByb3V0ZXM6IHN0cmluZ1tdID0gW107XG4gICAgaWYgKHJvdXRlLm91dGxldCkgcmV0dXJuIHJvdXRlczsgLy8gRG9uJ3QgcmV0dXJuIHJlbGF0aXZlIHBhdGhzIGZvciBvdXRsZXQgcm91dGVzXG5cbiAgICBjb25zdCBjdXJyZW50UGF0aCA9IFsuLi5wYXJlbnRQYXRoXTtcbiAgICBpZiAocm91dGUucGF0aCkge1xuICAgICAgY3VycmVudFBhdGgucHVzaChyb3V0ZS5wYXRoKTtcbiAgICAgIHJvdXRlcy5wdXNoKGN1cnJlbnRQYXRoLmpvaW4oJy8nKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJvdXRlcy5jb25jYXQodGhpcy5nZXRSb3V0ZVBhdGhzKHJvdXRlLmNoaWxkcmVuLCBjdXJyZW50UGF0aCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNb2RhbFJvdXRlUGF0aChyb3V0ZTogUm91dGUsIHBhcmVudFBhdGg6IHN0cmluZ1tdKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IG1vZGFsT3V0bGV0TmFtZSA9ICdtb2RhbCc7XG4gICAgaWYgKCEhcm91dGUucGF0aCAmJiByb3V0ZS5vdXRsZXQgPT09IG1vZGFsT3V0bGV0TmFtZSkge1xuICAgICAgY29uc3QgbW9kYWxPdXRsZXRQYXRoID0gYCgke21vZGFsT3V0bGV0TmFtZX06JHtyb3V0ZS5wYXRofSlgO1xuICAgICAgY29uc3QgbW9kYWxSb3V0ZVBhdGggPSBbLi4ucGFyZW50UGF0aCwgbW9kYWxPdXRsZXRQYXRoXS5qb2luKCcvJyk7XG4gICAgICByZXR1cm4gW21vZGFsUm91dGVQYXRoXTtcbiAgICB9XG4gICAgY29uc3QgY3VycmVudFBhdGggPSBbLi4ucGFyZW50UGF0aF07XG4gICAgaWYgKHJvdXRlLnBhdGgpIHtcbiAgICAgIGN1cnJlbnRQYXRoLnB1c2gocm91dGUucGF0aCk7XG4gICAgfVxuICAgIHJldHVybiAoW10gYXMgc3RyaW5nW10pLmNvbmNhdCguLi50aGlzLmdldE1vZGFsUm91dGVQYXRocyhyb3V0ZS5jaGlsZHJlbiwgY3VycmVudFBhdGgpKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TW9kYWxSb3V0ZVBhdGhzKHJvdXRlczogUm91dGVzLCBwYXJlbnRQYXRoOiBzdHJpbmdbXSk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheShyb3V0ZXMpXG4gICAgICA/IChbXSBhcyBzdHJpbmdbXSkuY29uY2F0KC4uLnJvdXRlcy5tYXAoKHJvdXRlKSA9PiB0aGlzLmdldE1vZGFsUm91dGVQYXRoKHJvdXRlLCBwYXJlbnRQYXRoKSkpXG4gICAgICA6IFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBpc05ld01vZGFsV2luZG93KG5hdmlnYXRpb25FbmQ6IE5hdmlnYXRpb25FbmQpOiBib29sZWFuIHtcbiAgICBjb25zdCBjdXJyZW50TmF2aWdhdGlvbiA9IHRoaXMucm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCk7XG4gICAgaWYgKCFjdXJyZW50TmF2aWdhdGlvbiB8fCAhY3VycmVudE5hdmlnYXRpb24ucHJldmlvdXNOYXZpZ2F0aW9uKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY29uc3QgcHJldmlvdXNSb3V0ZVBhdGggPSAoXG4gICAgICBjdXJyZW50TmF2aWdhdGlvbi5wcmV2aW91c05hdmlnYXRpb24uZmluYWxVcmwgfHxcbiAgICAgIGN1cnJlbnROYXZpZ2F0aW9uLnByZXZpb3VzTmF2aWdhdGlvbi5leHRyYWN0ZWRVcmxcbiAgICApLnRvU3RyaW5nKCk7XG4gICAgY29uc3Qgd2FzTW9kYWxSb3V0ZSA9IHRoaXMuaXNNb2RhbFJvdXRlKHByZXZpb3VzUm91dGVQYXRoKTtcbiAgICBjb25zdCBpc01vZGFsUm91dGUgPSB0aGlzLmlzTW9kYWxSb3V0ZShuYXZpZ2F0aW9uRW5kLnVybEFmdGVyUmVkaXJlY3RzKTtcbiAgICBpZiAoIXdhc01vZGFsUm91dGUgJiYgaXNNb2RhbFJvdXRlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBjb25zdCBjdXJyZW50TW9kYWxSb3V0ZVBhcmVudCA9IG5hdmlnYXRpb25FbmQudXJsQWZ0ZXJSZWRpcmVjdHMuc3BsaXQoJy8obW9kYWw6JylbMF07XG4gICAgY29uc3QgcHJldmlvdXNNb2RhbFJvdXRlUGFyZW50ID0gcHJldmlvdXNSb3V0ZVBhdGguc3BsaXQoJy8obW9kYWw6JylbMF07XG5cbiAgICByZXR1cm4gcHJldmlvdXNNb2RhbFJvdXRlUGFyZW50ICE9PSBjdXJyZW50TW9kYWxSb3V0ZVBhcmVudDtcbiAgfVxuXG4gIHByaXZhdGUgbmF2aWdhdGlvbkVuZExpc3RlbmVyJCA9IHRoaXMucm91dGVyLmV2ZW50cy5waXBlKFxuICAgIGZpbHRlcigoZXZlbnQpOiBldmVudCBpcyBOYXZpZ2F0aW9uRW5kID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZClcbiAgKTtcblxuICBwcml2YXRlIGFzeW5jIHdhaXRGb3JDdXJyZW50VGhlbkdldE5hdmlnYXRpb25FbmRTdHJlYW0oKTogUHJvbWlzZTxPYnNlcnZhYmxlPE5hdmlnYXRpb25FbmQ+PiB7XG4gICAgaWYgKHRoaXMucm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCkpIHtcbiAgICAgIGNvbnN0IGN1cnJlbnROYXZpZ2F0aW9uRW5kID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5uYXZpZ2F0aW9uRW5kTGlzdGVuZXIkKTtcbiAgICAgIHJldHVybiB0aGlzLm5hdmlnYXRpb25FbmRMaXN0ZW5lciQucGlwZShzdGFydFdpdGgoY3VycmVudE5hdmlnYXRpb25FbmQpKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubmF2aWdhdGlvbkVuZExpc3RlbmVyJDtcbiAgfVxuXG4gIHByaXZhdGUgbW9kYWxSb3V0ZUFjdGl2YXRlZEZvcihcbiAgICBuYXZpZ2F0aW9uRW5kJDogT2JzZXJ2YWJsZTxOYXZpZ2F0aW9uRW5kPixcbiAgICBtb2RhbFJvdXRlU2V0OiBTZXQ8c3RyaW5nPixcbiAgICBtb2RhbFJvdXRlc0NvbnRhaW5zVXJsUGFyYW1zOiBib29sZWFuXG4gICk6IE9ic2VydmFibGU8TW9kYWxSb3V0ZUFjdGl2YXRpb24+IHtcbiAgICByZXR1cm4gbmF2aWdhdGlvbkVuZCQucGlwZShcbiAgICAgIGZpbHRlcigobmF2aWdhdGlvbkVuZCkgPT5cbiAgICAgICAgdGhpcy5tb2RhbFJvdXRlU2V0Q29udGFpbnNQYXRoKG1vZGFsUm91dGVTZXQsIG5hdmlnYXRpb25FbmQsIG1vZGFsUm91dGVzQ29udGFpbnNVcmxQYXJhbXMpXG4gICAgICApLFxuICAgICAgbWFwKChuYXZpZ2F0aW9uRW5kKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgcm91dGU6IHRoaXMuZ2V0Q3VycmVudEFjdGl2YXRlZFJvdXRlKCksXG4gICAgICAgICAgaXNOZXdNb2RhbDogdGhpcy5pc05ld01vZGFsV2luZG93KG5hdmlnYXRpb25FbmQpLFxuICAgICAgICB9O1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBtb2RhbFJvdXRlRGVhY3RpdmF0ZWRGb3IoXG4gICAgbmF2aWdhdGlvbkVuZCQ6IE9ic2VydmFibGU8TmF2aWdhdGlvbkVuZD4sXG4gICAgbW9kYWxSb3V0ZVNldDogU2V0PHN0cmluZz4sXG4gICAgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtczogYm9vbGVhblxuICApOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gbmF2aWdhdGlvbkVuZCQucGlwZShcbiAgICAgIHBhaXJ3aXNlKCksXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgICBmaWx0ZXIoKFtwcmV2TmF2aWdhdGlvbiwgX10pID0+XG4gICAgICAgIHRoaXMubW9kYWxSb3V0ZVNldENvbnRhaW5zUGF0aChtb2RhbFJvdXRlU2V0LCBwcmV2TmF2aWdhdGlvbiwgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtcylcbiAgICAgICksIC8vIE9ubHkgZW1pdCBpZiBwcmV2aW91cyByb3V0ZSB3YXMgbW9kYWxcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICAgIG1hcCgoW18sIGN1cnJlbnROYXZpZ2F0aW9uXSkgPT4ge1xuICAgICAgICBjb25zdCBpc05ld01vZGFsUm91dGUgPSB0aGlzLmlzTW9kYWxSb3V0ZShjdXJyZW50TmF2aWdhdGlvbi51cmxBZnRlclJlZGlyZWN0cyk7XG4gICAgICAgIC8vIERlYWN0aXZhdGUgbW9kYWwgcm91dGUgaWYgbmV3IHJvdXRlIGlzIE5PVCBtb2RhbCBPUiBpcyBvdXRzaWRlIGN1cnJlbnQgcGFyZW50IHJvdXRlOlxuICAgICAgICByZXR1cm4gIWlzTmV3TW9kYWxSb3V0ZSB8fCB0aGlzLmlzTmV3TW9kYWxXaW5kb3coY3VycmVudE5hdmlnYXRpb24pO1xuICAgICAgfSksXG4gICAgICBmaWx0ZXIoKGlzRGVhY3RpdmF0aW9uKSA9PiBpc0RlYWN0aXZhdGlvbilcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBtb2RhbFJvdXRlU2V0Q29udGFpbnNQYXRoKFxuICAgIG1vZGFsUm91dGVTZXQ6IFNldDxzdHJpbmc+LFxuICAgIG5hdmlnYXRpb25FbmQ6IE5hdmlnYXRpb25FbmQsXG4gICAgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtczogYm9vbGVhblxuICApIHtcbiAgICBjb25zdCBwYXRobmFtZSA9IG5hdmlnYXRpb25FbmQudXJsQWZ0ZXJSZWRpcmVjdHMuc3BsaXQoJz8nKVswXTtcbiAgICBsZXQgaGFzUm91dGUgPSBtb2RhbFJvdXRlU2V0LmhhcyhwYXRobmFtZSk7XG4gICAgaWYgKCFoYXNSb3V0ZSAmJiBtb2RhbFJvdXRlc0NvbnRhaW5zVXJsUGFyYW1zKSB7XG4gICAgICAvLyBVc2UgYGZvciAuLi4gb2ZgIGluc3RlYWQgb2YgYGZvckVhY2hgIHNvIHdlIGNhbiBicmVhayBvdXQgb2YgdGhlIGxvb3AgaWYgcm91dGUgaXMgZm91bmQ6XG4gICAgICBmb3IgKGNvbnN0IHJvdXRlIG9mIG1vZGFsUm91dGVTZXQpIHtcbiAgICAgICAgY29uc3QgZXhhY3RNYXRjaCA9IHRydWU7XG4gICAgICAgIGNvbnN0IHJvdXRlTWF0Y2hlc1BhdGggPSB0aGlzLnBhdGhDb250YWluc0NoaWxkUm91dGVXaXRoVXJsUGFyYW1zKFxuICAgICAgICAgIHBhdGhuYW1lLFxuICAgICAgICAgIHJvdXRlLFxuICAgICAgICAgIGV4YWN0TWF0Y2hcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKHJvdXRlTWF0Y2hlc1BhdGgpIHtcbiAgICAgICAgICBoYXNSb3V0ZSA9IHRydWU7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGhhc1JvdXRlO1xuICB9XG5cbiAgYXN5bmMgZ2V0TW9kYWxOYXZpZ2F0aW9uKFxuICAgIHJvdXRlQ29uZmlnOiBSb3V0ZXNbXSxcbiAgICBtb2R1bGVSb290Um91dGVQYXRoPzogc3RyaW5nXG4gICk6IFByb21pc2U8eyBhY3RpdmF0ZWQkOiBPYnNlcnZhYmxlPE1vZGFsUm91dGVBY3RpdmF0aW9uPjsgZGVhY3RpdmF0ZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+IH0+IHtcbiAgICBpZiAoQXJyYXkuaXNBcnJheShyb3V0ZUNvbmZpZykpIHtcbiAgICAgIGNvbnN0IG5hdmlnYXRpb25FbmQkID0gYXdhaXQgdGhpcy53YWl0Rm9yQ3VycmVudFRoZW5HZXROYXZpZ2F0aW9uRW5kU3RyZWFtKCk7XG4gICAgICBjb25zdCBtb2RhbFJvdXRlcyA9IGF3YWl0IHRoaXMuZ2V0TW9kYWxSb3V0ZXMocm91dGVDb25maWcsIG1vZHVsZVJvb3RSb3V0ZVBhdGgpO1xuICAgICAgY29uc3QgaGFzTW9kYWxSb3V0ZXMgPSBtb2RhbFJvdXRlcy5sZW5ndGggPiAwO1xuICAgICAgaWYgKGhhc01vZGFsUm91dGVzKSB7XG4gICAgICAgIGNvbnN0IG1vZGFsUm91dGVzQ29udGFpbnNVcmxQYXJhbXMgPSBtb2RhbFJvdXRlcy5zb21lKChyb3V0ZSkgPT4gcm91dGUuaW5jbHVkZXMoJy86JykpO1xuICAgICAgICBjb25zdCBtb2RhbFJvdXRlU2V0ID0gbmV3IFNldChtb2RhbFJvdXRlcyk7XG4gICAgICAgIGNvbnN0IGFjdGl2YXRlZCQgPSB0aGlzLm1vZGFsUm91dGVBY3RpdmF0ZWRGb3IoXG4gICAgICAgICAgbmF2aWdhdGlvbkVuZCQsXG4gICAgICAgICAgbW9kYWxSb3V0ZVNldCxcbiAgICAgICAgICBtb2RhbFJvdXRlc0NvbnRhaW5zVXJsUGFyYW1zXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGRlYWN0aXZhdGVkJCA9IHRoaXMubW9kYWxSb3V0ZURlYWN0aXZhdGVkRm9yKFxuICAgICAgICAgIG5hdmlnYXRpb25FbmQkLFxuICAgICAgICAgIG1vZGFsUm91dGVTZXQsXG4gICAgICAgICAgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtc1xuICAgICAgICApO1xuICAgICAgICByZXR1cm4geyBhY3RpdmF0ZWQkLCBkZWFjdGl2YXRlZCQgfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4geyBhY3RpdmF0ZWQkOiBFTVBUWSwgZGVhY3RpdmF0ZWQkOiBFTVBUWSB9O1xuICB9XG5cbiAgYXN5bmMgbmF2aWdhdGVUb01vZGFsKHBhdGg6IHN0cmluZyB8IHN0cmluZ1tdLCBxdWVyeVBhcmFtcz86IFBhcmFtcyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGNvbW1hbmRzID0gQXJyYXkuaXNBcnJheShwYXRoKSA/IFsuLi5wYXRoXSA6IHBhdGguc3BsaXQoJy8nKTtcbiAgICBjb25zdCBjaGlsZFBhdGggPSBjb21tYW5kcy5wb3AoKTtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbLi4uY29tbWFuZHMsIHsgb3V0bGV0czogeyBtb2RhbDogW2NoaWxkUGF0aF0gfSB9XSwge1xuICAgICAgcXVlcnlQYXJhbXMsXG4gICAgICByZWxhdGl2ZVRvOiB0aGlzLmdldEN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSgpLFxuICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBhc3luYyBuYXZpZ2F0ZVdpdGhpbk1vZGFsKHJlbGF0aXZlUGF0aDogc3RyaW5nLCBxdWVyeVBhcmFtcz86IFBhcmFtcyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcmVsYXRpdmVQYXRoXSwge1xuICAgICAgcXVlcnlQYXJhbXMsXG4gICAgICByZWxhdGl2ZVRvOiB0aGlzLmdldEN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSgpLFxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgbmF2aWdhdGVPdXRPZk1vZGFsT3V0bGV0KCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSA9IHRoaXMuZ2V0Q3VycmVudEFjdGl2YXRlZFJvdXRlKCk7XG4gICAgY29uc3QgY3VycmVudE5hdmlnYXRpb25GaW5hbFVybCA9IHRoaXMucm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCk/LmZpbmFsVXJsPy50b1N0cmluZygpO1xuICAgIGNvbnN0IGlzQ3VycmVudGx5TmF2aWdhdGluZ091dE9mTW9kYWxPdXRsZXQgPVxuICAgICAgY3VycmVudE5hdmlnYXRpb25GaW5hbFVybCAmJiAhdGhpcy5pc01vZGFsUm91dGUoY3VycmVudE5hdmlnYXRpb25GaW5hbFVybCk7XG5cbiAgICBpZiAoY3VycmVudEFjdGl2YXRlZFJvdXRlLm91dGxldCAhPT0gJ21vZGFsJyB8fCBpc0N1cnJlbnRseU5hdmlnYXRpbmdPdXRPZk1vZGFsT3V0bGV0KSB7XG4gICAgICAvLyBOb3RoaW5nIHRvIGRvIGhlcmUsIGJhaWwgb3V0OlxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0cnVlKTtcbiAgICB9XG5cbiAgICBjb25zdCBwYXJlbnRSb3V0ZSA9IHRoaXMuZ2V0QmFja2Ryb3BSb3V0ZShjdXJyZW50QWN0aXZhdGVkUm91dGUpO1xuICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy4vJ10sIHtcbiAgICAgIHJlbGF0aXZlVG86IHBhcmVudFJvdXRlLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRCYWNrZHJvcFJvdXRlKGN1cnJlbnRBY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcbiAgICBsZXQgcGFyZW50Um91dGUgPSBjdXJyZW50QWN0aXZhdGVkUm91dGUucGFyZW50O1xuICAgIHdoaWxlIChwYXJlbnRSb3V0ZSAmJiAhcGFyZW50Um91dGUuY29tcG9uZW50ICYmICEhcGFyZW50Um91dGUucGFyZW50KSB7XG4gICAgICBwYXJlbnRSb3V0ZSA9IHBhcmVudFJvdXRlLnBhcmVudDtcbiAgICB9XG4gICAgcmV0dXJuIHBhcmVudFJvdXRlO1xuICB9XG5cbiAgaGFuZGxlQnJvd3NlckJhY2tCdXR0b24obW9kYWw6IEhUTUxJb25Nb2RhbEVsZW1lbnQpIHtcbiAgICBjb25zdCBwb3BzdGF0ZU5hdmlnYXRpb25TdGFydCQgPSB0aGlzLnJvdXRlci5ldmVudHMucGlwZShcbiAgICAgIGZpbHRlcihcbiAgICAgICAgKGV2ZW50KTogZXZlbnQgaXMgTmF2aWdhdGlvblN0YXJ0ID0+XG4gICAgICAgICAgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQgJiYgZXZlbnQubmF2aWdhdGlvblRyaWdnZXIgPT09ICdwb3BzdGF0ZSdcbiAgICAgIClcbiAgICApO1xuICAgIGNvbnN0IG5hdmlnYXRpb25FbmQkID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoXG4gICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpXG4gICAgKTtcbiAgICBuYXZpZ2F0aW9uRW5kJFxuICAgICAgLnBpcGUoc2tpcFVudGlsKHBvcHN0YXRlTmF2aWdhdGlvblN0YXJ0JCksIHRha2VVbnRpbChtb2RhbC5vbldpbGxEaXNtaXNzKCkpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIG1vZGFsLmRpc21pc3MoKTtcbiAgICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { Component, ElementRef, HostListener, Injector, Input, TemplateRef, } from '@angular/core';
|
|
1
|
+
import { Component, ElementRef, HostListener, Injector, Input, Renderer2, TemplateRef, } from '@angular/core';
|
|
2
2
|
import { firstValueFrom, Subject } from 'rxjs';
|
|
3
3
|
import { WindowRef } from '@kirbydesign/designsystem/types';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
|
+
import { getIonModalDialogAncestor } from '@kirbydesign/designsystem/helpers';
|
|
5
6
|
import { COMPONENT_PROPS } from '../config/modal-config.helper';
|
|
6
7
|
import { Modal } from '../../modal.interfaces';
|
|
7
8
|
import { CanDismissHelper } from '../../modal/services/can-dismiss.helper';
|
|
@@ -10,11 +11,12 @@ import * as i1 from "@kirbydesign/designsystem/types";
|
|
|
10
11
|
import * as i2 from "../../modal/services/can-dismiss.helper";
|
|
11
12
|
import * as i3 from "@angular/common";
|
|
12
13
|
export class ModalCompactWrapperComponent {
|
|
13
|
-
constructor(injector, elementRef, windowRef, canDismissHelper) {
|
|
14
|
+
constructor(injector, elementRef, windowRef, canDismissHelper, renderer) {
|
|
14
15
|
this.injector = injector;
|
|
15
16
|
this.elementRef = elementRef;
|
|
16
17
|
this.windowRef = windowRef;
|
|
17
18
|
this.canDismissHelper = canDismissHelper;
|
|
19
|
+
this.renderer = renderer;
|
|
18
20
|
this.scrollY = Math.abs(this.windowRef.nativeWindow.scrollY);
|
|
19
21
|
this.scrollDisabled = false;
|
|
20
22
|
this.ionModalDidPresent = new Subject();
|
|
@@ -24,6 +26,7 @@ export class ModalCompactWrapperComponent {
|
|
|
24
26
|
}
|
|
25
27
|
ngOnInit() {
|
|
26
28
|
this.ionModalElement = this.elementRef.nativeElement.closest('ion-modal');
|
|
29
|
+
this.setAriaLabel();
|
|
27
30
|
this.listenForIonModalDidPresent();
|
|
28
31
|
this.listenForIonModalWillDismiss();
|
|
29
32
|
this.componentPropsInjector = Injector.create({
|
|
@@ -47,10 +50,16 @@ export class ModalCompactWrapperComponent {
|
|
|
47
50
|
});
|
|
48
51
|
}
|
|
49
52
|
}
|
|
53
|
+
setAriaLabel() {
|
|
54
|
+
const ionModalElementDialog = getIonModalDialogAncestor(this.ionModalElement);
|
|
55
|
+
const ariaLabel = this.config.htmlAttributes?.['aria-label'];
|
|
56
|
+
if (ionModalElementDialog && ariaLabel) {
|
|
57
|
+
this.renderer.setAttribute(ionModalElementDialog, 'aria-label', ariaLabel);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
50
60
|
async close(data) {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
await ionModalElement.dismiss(data);
|
|
61
|
+
if (this.ionModalElement) {
|
|
62
|
+
await this.ionModalElement.dismiss(data);
|
|
54
63
|
}
|
|
55
64
|
}
|
|
56
65
|
set canDismiss(callback) {
|
|
@@ -60,13 +69,13 @@ export class ModalCompactWrapperComponent {
|
|
|
60
69
|
// This fixes an undesired scroll behaviour occurring on keyboard-tabbing backwards (with shift+tab):
|
|
61
70
|
this.windowRef.nativeWindow.scrollTo({ top: this.scrollY });
|
|
62
71
|
}
|
|
63
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
64
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.
|
|
72
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ModalCompactWrapperComponent, deps: [{ token: i0.Injector }, { token: i0.ElementRef }, { token: i1.WindowRef }, { token: i2.CanDismissHelper }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
73
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ModalCompactWrapperComponent, isStandalone: true, selector: "kirby-modal-compact-wrapper", inputs: { config: "config", content: "content" }, host: { listeners: { "window:focus": "onFocusChange()", "window:focusout": "onFocusChange()" }, properties: { "class.ion-page": "false" } }, providers: [{ provide: Modal, useExisting: ModalCompactWrapperComponent }], ngImport: i0, template: "<!-- Outlet for ModalController -->\n<ng-container\n *ngComponentOutlet=\"config.component; injector: componentPropsInjector\"\n></ng-container>\n\n<!-- Outlet for projected content -->\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n", styles: [":host{display:block;padding:24px 16px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
65
74
|
}
|
|
66
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ModalCompactWrapperComponent, decorators: [{
|
|
67
76
|
type: Component,
|
|
68
77
|
args: [{ standalone: true, selector: 'kirby-modal-compact-wrapper', providers: [{ provide: Modal, useExisting: ModalCompactWrapperComponent }], imports: [CommonModule], host: { '[class.ion-page]': 'false' }, template: "<!-- Outlet for ModalController -->\n<ng-container\n *ngComponentOutlet=\"config.component; injector: componentPropsInjector\"\n></ng-container>\n\n<!-- Outlet for projected content -->\n<ng-container *ngTemplateOutlet=\"content\"></ng-container>\n", styles: [":host{display:block;padding:24px 16px}\n"] }]
|
|
69
|
-
}], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }, { type: i1.WindowRef }, { type: i2.CanDismissHelper }], propDecorators: { config: [{
|
|
78
|
+
}], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ElementRef }, { type: i1.WindowRef }, { type: i2.CanDismissHelper }, { type: i0.Renderer2 }], propDecorators: { config: [{
|
|
70
79
|
type: Input
|
|
71
80
|
}], content: [{
|
|
72
81
|
type: Input
|
|
@@ -77,4 +86,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
|
|
|
77
86
|
type: HostListener,
|
|
78
87
|
args: ['window:focusout']
|
|
79
88
|
}] } });
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtY29tcGFjdC13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL21vZGFsL3NyYy9tb2RhbC13cmFwcGVyL2NvbXBhY3QvbW9kYWwtY29tcGFjdC13cmFwcGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL21vZGFsL3NyYy9tb2RhbC13cmFwcGVyL2NvbXBhY3QvbW9kYWwtY29tcGFjdC13cmFwcGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixRQUFRLEVBQ1IsS0FBSyxFQUVMLFNBQVMsRUFDVCxXQUFXLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTVELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUU5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOzs7OztBQVkzRSxNQUFNLE9BQU8sNEJBQTRCO0lBY3ZDLFlBQ1UsUUFBa0IsRUFDbEIsVUFBbUMsRUFDbkMsU0FBb0IsRUFDcEIsZ0JBQWtDLEVBQ2xDLFFBQW1CO1FBSm5CLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDbkMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xD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QUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUM5RCxDQUFDO2tJQTlFVSw0QkFBNEI7c0hBQTVCLDRCQUE0Qix5UUFMNUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLDRCQUE0QixFQUFFLENBQUMsMEJDekI1RSwyUEFPQSxpR0RtQlksWUFBWTs7NEZBSVgsNEJBQTRCO2tCQVZ4QyxTQUFTO2lDQUNJLElBQUksWUFDTiw2QkFBNkIsYUFHNUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsV0FBVyw4QkFBOEIsRUFBRSxDQUFDLFdBQ2pFLENBQUMsWUFBWSxDQUFDLFFBRWpCLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFO3FMQUc1QixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQXlFTixhQUFhO3NCQUZaLFlBQVk7dUJBQUMsY0FBYzs7c0JBQzNCLFlBQVk7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBSZW5kZXJlcjIsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBXaW5kb3dSZWYgfSBmcm9tICdAa2lyYnlkZXNpZ24vZGVzaWduc3lzdGVtL3R5cGVzJztcblxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IGdldElvbk1vZGFsRGlhbG9nQW5jZXN0b3IgfSBmcm9tICdAa2lyYnlkZXNpZ24vZGVzaWduc3lzdGVtL2hlbHBlcnMnO1xuaW1wb3J0IHsgTW9kYWxDb25maWcsIFNob3dBbGVydENhbGxiYWNrIH0gZnJvbSAnLi4vY29uZmlnL21vZGFsLWNvbmZpZyc7XG5pbXBvcnQgeyBDT01QT05FTlRfUFJPUFMgfSBmcm9tICcuLi9jb25maWcvbW9kYWwtY29uZmlnLmhlbHBlcic7XG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gJy4uLy4uL21vZGFsLmludGVyZmFjZXMnO1xuaW1wb3J0IHsgQ2FuRGlzbWlzc0hlbHBlciB9IGZyb20gJy4uLy4uL21vZGFsL3NlcnZpY2VzL2Nhbi1kaXNtaXNzLmhlbHBlcic7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ2tpcmJ5LW1vZGFsLWNvbXBhY3Qtd3JhcHBlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC1jb21wYWN0LXdyYXBwZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tb2RhbC1jb21wYWN0LXdyYXBwZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBNb2RhbCwgdXNlRXhpc3Rpbmc6IE1vZGFsQ29tcGFjdFdyYXBwZXJDb21wb25lbnQgfV0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWhvc3QtbWV0YWRhdGEtcHJvcGVydHlcbiAgaG9zdDogeyAnW2NsYXNzLmlvbi1wYWdlXSc6ICdmYWxzZScgfSwgLy9FbnN1cmUgaW9uLXBhZ2UgY2xhc3MgZG9lc24ndCBnZXQgYXBwbGllZCBieSBJb25pYyBNb2RhbCBDb250cm9sbGVyXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29tcGFjdFdyYXBwZXJDb21wb25lbnQgaW1wbGVtZW50cyBNb2RhbCwgT25Jbml0IHtcbiAgQElucHV0KCkgY29uZmlnOiBNb2RhbENvbmZpZztcbiAgQElucHV0KCkgY29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcblxuICBzY3JvbGxZOiBudW1iZXIgPSBNYXRoLmFicyh0aGlzLndpbmRvd1JlZi5uYXRpdmVXaW5kb3cuc2Nyb2xsWSk7XG4gIHNjcm9sbERpc2FibGVkID0gZmFsc2U7XG4gIGNvbXBvbmVudFByb3BzSW5qZWN0b3I6IEluamVjdG9yO1xuXG4gIHByaXZhdGUgaW9uTW9kYWxFbGVtZW50OiBIVE1MSW9uTW9kYWxFbGVtZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IGlvbk1vZGFsRGlkUHJlc2VudCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW9uTW9kYWxXaWxsRGlzbWlzcyA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHJlYWRvbmx5IGRpZFByZXNlbnQgPSBmaXJzdFZhbHVlRnJvbSh0aGlzLmlvbk1vZGFsRGlkUHJlc2VudCk7XG4gIHJlYWRvbmx5IHdpbGxDbG9zZSA9IGZpcnN0VmFsdWVGcm9tKHRoaXMuaW9uTW9kYWxXaWxsRGlzbWlzcyk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIHdpbmRvd1JlZjogV2luZG93UmVmLFxuICAgIHByaXZhdGUgY2FuRGlzbWlzc0hlbHBlcjogQ2FuRGlzbWlzc0hlbHBlcixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjJcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW9uTW9kYWxFbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xvc2VzdCgnaW9uLW1vZGFsJyk7XG4gICAgdGhpcy5zZXRBcmlhTGFiZWwoKTtcblxuICAgIHRoaXMubGlzdGVuRm9ySW9uTW9kYWxEaWRQcmVzZW50KCk7XG4gICAgdGhpcy5saXN0ZW5Gb3JJb25Nb2RhbFdpbGxEaXNtaXNzKCk7XG4gICAgdGhpcy5jb21wb25lbnRQcm9wc0luamVjdG9yID0gSW5qZWN0b3IuY3JlYXRlKHtcbiAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQ09NUE9ORU5UX1BST1BTLCB1c2VWYWx1ZTogdGhpcy5jb25maWcuY29tcG9uZW50UHJvcHMgfV0sXG4gICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlbkZvcklvbk1vZGFsRGlkUHJlc2VudCgpIHtcbiAgICBpZiAodGhpcy5pb25Nb2RhbEVsZW1lbnQpIHtcbiAgICAgIHRoaXMuaW9uTW9kYWxFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2lvbk1vZGFsRGlkUHJlc2VudCcsICgpID0+IHtcbiAgICAgICAgdGhpcy5pb25Nb2RhbERpZFByZXNlbnQubmV4dCgpO1xuICAgICAgICB0aGlzLmlvbk1vZGFsRGlkUHJlc2VudC5jb21wbGV0ZSgpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Gb3JJb25Nb2RhbFdpbGxEaXNtaXNzKCkge1xuICAgIGlmICh0aGlzLmlvbk1vZGFsRWxlbWVudCkge1xuICAgICAgdGhpcy5pb25Nb2RhbEVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignaW9uTW9kYWxXaWxsRGlzbWlzcycsICgpID0+IHtcbiAgICAgICAgdGhpcy5pb25Nb2RhbFdpbGxEaXNtaXNzLm5leHQoKTtcbiAgICAgICAgdGhpcy5pb25Nb2RhbFdpbGxEaXNtaXNzLmNvbXBsZXRlKCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldEFyaWFMYWJlbCgpIHtcbiAgICBjb25zdCBpb25Nb2RhbEVsZW1lbnREaWFsb2cgPSBnZXRJb25Nb2RhbERpYWxvZ0FuY2VzdG9yKHRoaXMuaW9uTW9kYWxFbGVtZW50KTtcbiAgICBjb25zdCBhcmlhTGFiZWwgPSB0aGlzLmNvbmZpZy5odG1sQXR0cmlidXRlcz8uWydhcmlhLWxhYmVsJ107XG4gICAgaWYgKGlvbk1vZGFsRWxlbWVudERpYWxvZyAmJiBhcmlhTGFiZWwpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKGlvbk1vZGFsRWxlbWVudERpYWxvZywgJ2FyaWEtbGFiZWwnLCBhcmlhTGFiZWwpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGNsb3NlKGRhdGE/OiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5pb25Nb2RhbEVsZW1lbnQpIHtcbiAgICAgIGF3YWl0IHRoaXMuaW9uTW9kYWxFbGVtZW50LmRpc21pc3MoZGF0YSk7XG4gICAgfVxuICB9XG5cbiAgc2V0IGNhbkRpc21pc3MoY2FsbGJhY2s6IFNob3dBbGVydENhbGxiYWNrKSB7XG4gICAgdGhpcy5pb25Nb2RhbEVsZW1lbnQuY2FuRGlzbWlzcyA9IHRoaXMuY2FuRGlzbWlzc0hlbHBlci5nZXRDYW5EaXNtaXNzQ2FsbGJhY2soY2FsbGJhY2spO1xuICB9XG5cbiAgc2Nyb2xsVG9Ub3A6IChfPzogYW55KSA9PiB2b2lkO1xuICBzY3JvbGxUb0JvdHRvbTogKF8/OiBhbnkpID0+IHZvaWQ7XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmZvY3VzJylcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmZvY3Vzb3V0JylcbiAgb25Gb2N1c0NoYW5nZSgpIHtcbiAgICAvLyBUaGlzIGZpeGVzIGFuIHVuZGVzaXJlZCBzY3JvbGwgYmVoYXZpb3VyIG9jY3VycmluZyBvbiBrZXlib2FyZC10YWJiaW5nIGJhY2t3YXJkcyAod2l0aCBzaGlmdCt0YWIpOlxuICAgIHRoaXMud2luZG93UmVmLm5hdGl2ZVdpbmRvdy5zY3JvbGxUbyh7IHRvcDogdGhpcy5zY3JvbGxZIH0pO1xuICB9XG59XG4iLCI8IS0tIE91dGxldCBmb3IgTW9kYWxDb250cm9sbGVyIC0tPlxuPG5nLWNvbnRhaW5lclxuICAqbmdDb21wb25lbnRPdXRsZXQ9XCJjb25maWcuY29tcG9uZW50OyBpbmplY3RvcjogY29tcG9uZW50UHJvcHNJbmplY3RvclwiXG4+PC9uZy1jb250YWluZXI+XG5cbjwhLS0gT3V0bGV0IGZvciBwcm9qZWN0ZWQgY29udGVudCAtLT5cbjxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbW9kYWwvc3JjL21vZGFsLXdyYXBwZXIvY29uZmlnL21vZGFsLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIERhdGEsIFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQWxlcnRDb25maWcgfSBmcm9tICcuLi8uLi9wdWJsaWNfYXBpJztcbmltcG9ydCB7IERyYXdlclN1cHBsZW1lbnRhcnlBY3Rpb24gfSBmcm9tICcuL2RyYXdlci1zdXBwbGVtZW50YXJ5LWFjdGlvbic7XG5cbmV4cG9ydCB0eXBlIE1vZGFsRmxhdm9yID0gJ21vZGFsJyB8ICdkcmF3ZXInIHwgJ2NvbXBhY3QnO1xuZXhwb3J0IHR5cGUgTW9kYWxTaXplID0gJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJyB8ICdmdWxsLWhlaWdodCc7XG5cbmV4cG9ydCB0eXBlIFNob3dBbGVydENhbGxiYWNrID0gKCkgPT4gYm9vbGVhbiB8IEFsZXJ0Q29uZmlnIHwgUHJvbWlzZTxib29sZWFuIHwgQWxlcnRDb25maWc+O1xuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsQ29uZmlnIHtcbiAgY29sbGFwc2VUaXRsZT86IGJvb2xlYW47XG4gIGNvbXBvbmVudD86IGFueTtcbiAgc2l6ZT86IE1vZGFsU2l6ZTtcbiAgY3VzdG9tSGVpZ2h0Pzogc3RyaW5nO1xuICBtb2RhbFJvdXRlPzogQWN0aXZhdGVkUm91dGU7XG4gIHNpYmxpbmdNb2RhbFJvdXRlQWN0aXZhdGVkJD86IE9ic2VydmFibGU8QWN0aXZhdGVkUm91dGU+O1xuICBmbGF2b3I/OiBNb2RhbEZsYXZvcjtcbiAgY29tcG9uZW50UHJvcHM/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuICBjYW5EaXNtaXNzPzogU2hvd0FsZXJ0Q2FsbGJhY2s7XG4gIC8vIHRoZSBzdXBwbGVtZW50YXJ5IGFjdGlvbiBpcyBvbmx5IGF2YWlsYWJsZSBpbiB0aGUgZHJhd2VyXG4gIGRyYXdlclN1cHBsZW1lbnRhcnlBY3Rpb24/OiBEcmF3ZXJTdXBwbGVtZW50YXJ5QWN0aW9uO1xuICAvLyBkcmF3ZXIgcHJvcGVydGllc1xuICBpbnRlcmFjdFdpdGhCYWNrZ3JvdW5kPzogYm9vbGVhbjtcbiAgY3NzQ2xhc3M/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbW9kYWwvc3JjL21vZGFsLXdyYXBwZXIvY29uZmlnL21vZGFsLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIERhdGEsIFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQWxlcnRDb25maWcgfSBmcm9tICcuLi8uLi9wdWJsaWNfYXBpJztcbmltcG9ydCB7IERyYXdlclN1cHBsZW1lbnRhcnlBY3Rpb24gfSBmcm9tICcuL2RyYXdlci1zdXBwbGVtZW50YXJ5LWFjdGlvbic7XG5cbmV4cG9ydCB0eXBlIE1vZGFsRmxhdm9yID0gJ21vZGFsJyB8ICdkcmF3ZXInIHwgJ2NvbXBhY3QnO1xuZXhwb3J0IHR5cGUgTW9kYWxTaXplID0gJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJyB8ICdmdWxsLWhlaWdodCc7XG5cbmV4cG9ydCB0eXBlIFNob3dBbGVydENhbGxiYWNrID0gKCkgPT4gYm9vbGVhbiB8IEFsZXJ0Q29uZmlnIHwgUHJvbWlzZTxib29sZWFuIHwgQWxlcnRDb25maWc+O1xuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGFsQ29uZmlnIHtcbiAgY29sbGFwc2VUaXRsZT86IGJvb2xlYW47XG4gIGNvbXBvbmVudD86IGFueTtcbiAgc2l6ZT86IE1vZGFsU2l6ZTtcbiAgY3VzdG9tSGVpZ2h0Pzogc3RyaW5nO1xuICBtb2RhbFJvdXRlPzogQWN0aXZhdGVkUm91dGU7XG4gIHNpYmxpbmdNb2RhbFJvdXRlQWN0aXZhdGVkJD86IE9ic2VydmFibGU8QWN0aXZhdGVkUm91dGU+O1xuICBmbGF2b3I/OiBNb2RhbEZsYXZvcjtcbiAgY29tcG9uZW50UHJvcHM/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuICBjYW5EaXNtaXNzPzogU2hvd0FsZXJ0Q2FsbGJhY2s7XG4gIC8vIHRoZSBzdXBwbGVtZW50YXJ5IGFjdGlvbiBpcyBvbmx5IGF2YWlsYWJsZSBpbiB0aGUgZHJhd2VyXG4gIGRyYXdlclN1cHBsZW1lbnRhcnlBY3Rpb24/OiBEcmF3ZXJTdXBwbGVtZW50YXJ5QWN0aW9uO1xuICAvLyBkcmF3ZXIgcHJvcGVydGllc1xuICBpbnRlcmFjdFdpdGhCYWNrZ3JvdW5kPzogYm9vbGVhbjtcbiAgY3NzQ2xhc3M/OiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgaHRtbEF0dHJpYnV0ZXM/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xufVxuXG4vKipcbiAqIEhlcmUgd2UgZXh0ZW5kIERhdGEgYW5kIFJvdXRlIGZyb20gQW5ndWxhciB0byBjcmVhdGUgYSBjb3ZhcmlhbnQgdHlwZSBNb2RhbEVuYWJsZWRSb3V0ZXMuXG4gKiBUaGlzIGNhbiBiZSB1c2VkIGluIHBsYWNlIG9mIHRoZSBSb3V0ZXMgdHlwZSB3aGVuIGNvbmZpZ3VyaW5nIHJvdXRlLWJhc2VkIG1vZGFscyBpbiB0aGUgYXJyYXlcbiAqIG9mIHJvdXRlcyBwYXNzZWQgdG8gUm91dGVyTW9kdWxlIGluIGFwcGxpY2F0aW9ucy5cbiAqL1xuZXhwb3J0IHR5cGUgUm91dGVkTW9kYWxDb25maWcgPSBPbWl0PE1vZGFsQ29uZmlnLCAnY29tcG9uZW50Jz47XG5cbmludGVyZmFjZSBNb2RhbENvbmZpZ1JvdXRlRGF0YSBleHRlbmRzIERhdGEge1xuICBtb2RhbENvbmZpZz86IFJvdXRlZE1vZGFsQ29uZmlnO1xufVxuXG5pbnRlcmZhY2UgTW9kYWxFbmFibGVkUm91dGUgZXh0ZW5kcyBSb3V0ZSB7XG4gIGRhdGE/OiBNb2RhbENvbmZpZ1JvdXRlRGF0YTtcbiAgY2hpbGRyZW4/OiBNb2RhbEVuYWJsZWRSb3V0ZXM7XG59XG5cbmV4cG9ydCB0eXBlIE1vZGFsRW5hYmxlZFJvdXRlcyA9IE1vZGFsRW5hYmxlZFJvdXRlW107XG4iXX0=
|
|
@@ -59,4 +59,4 @@ export class ModalElementsMoverDelegate {
|
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtZWxlbWVudHMtbW92ZXIuZGVsZWdhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9tb2RhbC9zcmMvbW9kYWwtd3JhcHBlci9tb2RhbC1lbGVtZW50cy1tb3Zlci5kZWxlZ2F0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRXREOzs7OztFQUtFO0FBRUYsTUFBTSxPQUFPLDBCQUEwQjtJQUNyQyxZQUNVLFFBQW1CLEVBQ25CLFVBQW1DO1FBRG5DLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7SUFDMUMsQ0FBQztJQUVHLFNBQVMsQ0FBQyxnQkFBeUM7UUFDeEQsc0NBQXNDO1FBQ3RDLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFTSxZQUFZLENBQUMsZ0JBQXlDO1FBQzNELElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRU0sZUFBZSxDQUNwQixzQkFBK0MsRUFDL0MsaUJBQW9EO1FBRXBELElBQUksQ0FBQyxTQUFTLENBQUMsc0JBQXNCLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRU0sa0JBQWtCLENBQUMsc0JBQStDO1FBQ3ZFLElBQUksQ0FBQyxXQUFXLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7Ozs7Ozs7TUFPRTtJQUNLLFFBQVEsQ0FDYixlQUF3QyxFQUN4QyxtQkFBNEMsRUFDNUMsbUJBQTRCLEVBQzVCLGVBQWdEO1FBRWhELElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQ2pELHVGQUF1RjtRQUN2RixJQUFJLG1CQUFtQixFQUFFLENBQUM7WUFDeEIsTUFBTSxpQkFBaUIsR0FBRyxlQUFlLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQWdCLENBQUM7WUFDdkYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLG1CQUFtQixDQUFDLENBQUM7UUFDekUsQ0FBQztJQUNILENBQUM7SUFFTSxXQUFXLENBQ2hCLGVBQXdDLEVBQ3hDLG1CQUE0QixFQUM1QixtQkFBNEM7UUFFNUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNsQyxJQUFJLG1CQUFtQixFQUFFLENBQUM7WUFDeEIsTUFBTSxxQkFBcUIsR0FDekIsbUJBQW1CLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1lBQ3RFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxVQUFVLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDO1FBQzFELENBQUM7SUFDSCxDQUFDO0lBRU8sU0FBUyxDQUNmLGVBQXdDLEVBQ3hDLG1CQUE0QztRQUU1QyxNQUFNLEtBQUssR0FBRyxlQUFlLENBQUMsYUFBYSxDQUFDO1FBQzVDLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixDQUFDLGFBQWEsQ0FBQztRQUNwRCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU8sV0FBVyxDQUNqQixlQUF3QyxFQUN4QyxhQUFxRDtRQUVyRCxNQUFNLEtBQUssR0FBRyxlQUFlLENBQUMsYUFBYSxDQUFDO1FBQzVDLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxhQUFhLElBQUksS0FBSyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN6RSxDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qXG4gIFRoZSBNb2RhbFdyYXBwZXJDb21wb25lbnQgY2xhc3Mgd2FzIGdyb3dpbmcgbGFyZ2UuIFxuXG4gIEhlbmNlIHRoZSBmdW5jdGlvbnMgcmVzcG9uc2libGUgZm9yIG1vdmluZyBtb2RhbCBlbGVtZW50cyBhcm91bmQgXG4gIGhhcyBiZWVuIGVuY2Fwc3VsYXRlZCBpbiB0aGlzIGNsYXNzLiBcbiovXG5cbmV4cG9ydCBjbGFzcyBNb2RhbEVsZW1lbnRzTW92ZXJEZWxlZ2F0ZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG4gICkge31cblxuICBwdWJsaWMgYWRkRm9vdGVyKGZvb3RlckVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KSB7XG4gICAgLy8gTW92ZSB0aGUgZm9vdGVyIG5leHQgdG8gaW9uLWNvbnRlbnRcbiAgICB0aGlzLm1vdmVDaGlsZChmb290ZXJFbGVtZW50UmVmLCB0aGlzLmVsZW1lbnRSZWYpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUZvb3Rlcihmb290ZXJFbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pikge1xuICAgIHRoaXMucmVtb3ZlQ2hpbGQoZm9vdGVyRWxlbWVudFJlZik7XG4gIH1cblxuICBwdWJsaWMgYWRkUGFnZVByb2dyZXNzKFxuICAgIHBhZ2VQcm9ncmVzc0VsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIGlvblRvb2xiYXJFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxJb25Ub29sYmFyRWxlbWVudD5cbiAgKSB7XG4gICAgdGhpcy5tb3ZlQ2hpbGQocGFnZVByb2dyZXNzRWxlbWVudFJlZiwgaW9uVG9vbGJhckVsZW1lbnQpO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZVBhZ2VQcm9ncmVzcyhwYWdlUHJvZ3Jlc3NFbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pikge1xuICAgIHRoaXMucmVtb3ZlQ2hpbGQocGFnZVByb2dyZXNzRWxlbWVudFJlZik7XG4gIH1cblxuICAvKiBcbiAgICAgY29udGVudFRpdGxlRWxlbWVudCAmIGlvblRpdGxlRWxlbWVudCBoYXMgdG8gYmUgcGFzc2VkXG4gICAgIGFzIGFyZ3VtZW50cyB0byB0aGUgbWV0aG9kOyBub3QgcGFydCBvZiB0aGUgY29uc3RydWN0b3IsIGFzIHRoZXkgXG4gICAgIG1pZ2h0IHJlZmVyZW5jZSBjb21wbGV0ZWx5IGRpZmZlcmVudCBlbGVtZW50cyBiZXR3ZWVuIGNhbGxzLiBcblxuICAgICBGb3IgZXhhbXBsZSBpbiBhIG11bHRpLXBhZ2Ugcm91dGVkIG1vZGFsIHdoZXJlIHRoZSBlbGVtZW50cyBhcmUgZGVzdHJveWVkIFxuICAgICBhbmQgcmVjcmVhdGVkLlxuICAqL1xuICBwdWJsaWMgYWRkVGl0bGUoXG4gICAgdGl0bGVFbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBjb250ZW50VGl0bGVFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBoYXNDb2xsYXBzaWJsZVRpdGxlOiBib29sZWFuLFxuICAgIGlvblRpdGxlRWxlbWVudDogRWxlbWVudFJlZjxIVE1MSW9uVGl0bGVFbGVtZW50PlxuICApIHtcbiAgICB0aGlzLm1vdmVDaGlsZCh0aXRsZUVsZW1lbnRSZWYsIGlvblRpdGxlRWxlbWVudCk7XG4gICAgLy8gSWYgdGl0bGUgaXMgY29sbGFwc2libGUgYXBwZW5kIGl0IHRvIGNvbnRlbnQgYXJlYTsgcmVxdWlyZWQgYnkgaW9uaWMgaW1wbGVtZW50YXRpb24uXG4gICAgaWYgKGhhc0NvbGxhcHNpYmxlVGl0bGUpIHtcbiAgICAgIGNvbnN0IHRpdGxlRWxlbWVudENsb25lID0gdGl0bGVFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xvbmVOb2RlKHRydWUpIGFzIEhUTUxFbGVtZW50O1xuICAgICAgdGhpcy5tb3ZlQ2hpbGQobmV3IEVsZW1lbnRSZWYodGl0bGVFbGVtZW50Q2xvbmUpLCBjb250ZW50VGl0bGVFbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlVGl0bGUoXG4gICAgdGl0bGVFbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBoYXNDb2xsYXBzaWJsZVRpdGxlOiBib29sZWFuLFxuICAgIGNvbnRlbnRUaXRsZUVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG4gICkge1xuICAgIHRoaXMucmVtb3ZlQ2hpbGQodGl0bGVFbGVtZW50UmVmKTtcbiAgICBpZiAoaGFzQ29sbGFwc2libGVUaXRsZSkge1xuICAgICAgY29uc3Qga2lyYnlQYWdlVGl0bGVFbGVtZW50OiBIVE1MRWxlbWVudCA9XG4gICAgICAgIGNvbnRlbnRUaXRsZUVsZW1lbnQubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCdraXJieS1wYWdlLXRpdGxlJyk7XG4gICAgICB0aGlzLnJlbW92ZUNoaWxkKG5ldyBFbGVtZW50UmVmKGtpcmJ5UGFnZVRpdGxlRWxlbWVudCkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgbW92ZUNoaWxkKFxuICAgIGNoaWxkRWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgbmV3UGFyZW50RWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7XG4gICAgY29uc3QgY2hpbGQgPSBjaGlsZEVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBuZXdQYXJlbnQgPSBuZXdQYXJlbnRFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZChjaGlsZC5wYXJlbnRFbGVtZW50LCBjaGlsZCk7XG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChuZXdQYXJlbnQsIGNoaWxkKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVtb3ZlQ2hpbGQoXG4gICAgY2hpbGRFbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwYXJlbnRFbGVtZW50PzogSFRNTEVsZW1lbnQgfCBFbGVtZW50UmVmPEhUTUxFbGVtZW50PlxuICApIHtcbiAgICBjb25zdCBjaGlsZCA9IGNoaWxkRWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIGlmIChjaGlsZCkge1xuICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDaGlsZChwYXJlbnRFbGVtZW50IHx8IGNoaWxkLnBhcmVudEVsZW1lbnQsIGNoaWxkKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|