@kirbydesign/designsystem 5.2.2 → 6.0.0-rc.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/bundles/kirbydesign-designsystem-testing-base.umd.js +1988 -1259
- package/bundles/kirbydesign-designsystem-testing-base.umd.js.map +1 -1
- package/bundles/kirbydesign-designsystem-testing-jasmine.umd.js +34 -16
- package/bundles/kirbydesign-designsystem-testing-jasmine.umd.js.map +1 -1
- package/bundles/kirbydesign-designsystem-testing-jest.umd.js +34 -16
- package/bundles/kirbydesign-designsystem-testing-jest.umd.js.map +1 -1
- package/bundles/kirbydesign-designsystem.umd.js +10025 -9233
- package/bundles/kirbydesign-designsystem.umd.js.map +1 -1
- package/esm2015/kirbydesign-designsystem.js +1 -115
- package/esm2015/lib/components/accordion/accordion-item.component.js +31 -20
- package/esm2015/lib/components/accordion/accordion.directive.js +11 -7
- package/esm2015/lib/components/app/app.component.js +23 -18
- package/esm2015/lib/components/app/app.module.js +13 -8
- package/esm2015/lib/components/avatar/avatar.component.js +31 -19
- package/esm2015/lib/components/button/button.component.js +63 -34
- package/esm2015/lib/components/calendar/calendar.component.js +59 -35
- package/esm2015/lib/components/calendar/helpers/calendar.helper.js +8 -8
- package/esm2015/lib/components/card/card-footer/card-footer.component.js +14 -11
- package/esm2015/lib/components/card/card-header/card-header.component.js +26 -15
- package/esm2015/lib/components/card/card.component.js +34 -25
- package/esm2015/lib/components/chart/chart-js/chart-js.service.js +48 -34
- package/esm2015/lib/components/chart/chart-js/chartjs-plugin-marker/chartjs-plugin-marker.js +1 -3
- package/esm2015/lib/components/chart/chart.component.js +36 -39
- package/esm2015/lib/components/chart/chart.module.js +13 -8
- package/esm2015/lib/components/chart/chart.types.js +1 -1
- package/esm2015/lib/components/chart/configs/chart-config.service.js +7 -4
- package/esm2015/lib/components/chart/configs/interaction-functions-extensions.config.js +8 -10
- package/esm2015/lib/components/chart/configs/shared.utils.js +1 -1
- package/esm2015/lib/components/chart/configs/type.config.js +1 -3
- package/esm2015/lib/components/chart/index.js +2 -1
- package/esm2015/lib/components/chart-deprecated/chart-deprecated-helper.js +7 -4
- package/esm2015/lib/components/chart-deprecated/chart-deprecated.component.js +56 -38
- package/esm2015/lib/components/chart-deprecated/options/areaspline.js +7 -9
- package/esm2015/lib/components/chart-deprecated/options/donut.js +5 -7
- package/esm2015/lib/components/chart-deprecated/options/timeseries.js +8 -10
- package/esm2015/lib/components/checkbox/checkbox.component.js +47 -21
- package/esm2015/lib/components/chip/chip.component.js +24 -13
- package/esm2015/lib/components/divider/divider.component.js +16 -12
- package/esm2015/lib/components/dropdown/dropdown.component.js +154 -61
- package/esm2015/lib/components/dropdown/keyboard-handler.service.js +9 -7
- package/esm2015/lib/components/empty-state/empty-state.component.js +27 -16
- package/esm2015/lib/components/fab-sheet/fab-sheet.component.js +37 -23
- package/esm2015/lib/components/flag/flag.component.js +21 -17
- package/esm2015/lib/components/form-field/directives/date/date-input.directive.js +16 -15
- package/esm2015/lib/components/form-field/directives/decimal-mask/decimal-mask.directive.js +41 -28
- package/esm2015/lib/components/form-field/form-field-message/form-field-message.component.js +17 -13
- package/esm2015/lib/components/form-field/form-field.component.js +39 -26
- package/esm2015/lib/components/form-field/input/input.component.js +65 -23
- package/esm2015/lib/components/form-field/input-counter/input-counter.component.js +14 -11
- package/esm2015/lib/components/form-field/textarea/textarea.component.js +51 -20
- package/esm2015/lib/components/grid/breakpoint-helper.service.js +9 -9
- package/esm2015/lib/components/grid/grid.component.js +21 -18
- package/esm2015/lib/components/icon/icon-registry.service.js +11 -19
- package/esm2015/lib/components/icon/icon-settings.js +2 -3
- package/esm2015/lib/components/icon/icon.component.js +27 -20
- package/esm2015/lib/components/icon/icon.module.js +13 -8
- package/esm2015/lib/components/icon/index.js +1 -2
- package/esm2015/lib/components/icon/kirby-icon-settings.js +2 -4
- package/esm2015/lib/components/index.js +11 -10
- package/esm2015/lib/components/item/item.component.js +33 -16
- package/esm2015/lib/components/item/item.module.js +13 -8
- package/esm2015/lib/components/item/label/label.component.js +18 -12
- package/esm2015/lib/components/item-group/item-group.component.js +15 -11
- package/esm2015/lib/components/item-sliding/item-sliding.component.js +19 -12
- package/esm2015/lib/components/list/directives/infinite-scroll.directive.js +18 -17
- package/esm2015/lib/components/list/directives/list-item-color.directive.js +17 -11
- package/esm2015/lib/components/list/helpers/list-helper.js +7 -4
- package/esm2015/lib/components/list/index.js +2 -3
- package/esm2015/lib/components/list/list-experimental/list-experimental.component.js +20 -13
- package/esm2015/lib/components/list/list-header/list-header.component.js +14 -11
- package/esm2015/lib/components/list/list-item/list-item.component.js +38 -24
- package/esm2015/lib/components/list/list-section-header/list-section-header.component.js +15 -14
- package/esm2015/lib/components/list/list.component.js +81 -40
- package/esm2015/lib/components/list/list.directive.js +34 -45
- package/esm2015/lib/components/list/list.module.js +33 -12
- package/esm2015/lib/components/list/pipes/group-by.pipe.js +10 -6
- package/esm2015/lib/components/loading-overlay/loading-overlay.component.js +20 -13
- package/esm2015/lib/components/loading-overlay/loading-overlay.service.js +9 -13
- package/esm2015/lib/components/modal/action-sheet/action-sheet.component.js +32 -18
- package/esm2015/lib/components/modal/alert/alert.component.js +38 -26
- package/esm2015/lib/components/modal/alert/config/alert-config.js +1 -1
- package/esm2015/lib/components/modal/footer/modal-footer.component.js +25 -13
- package/esm2015/lib/components/modal/modal-wrapper/compact/modal-compact-wrapper.component.js +25 -21
- package/esm2015/lib/components/modal/modal-wrapper/config/modal-config.js +1 -1
- package/esm2015/lib/components/modal/modal-wrapper/modal-wrapper.component.js +124 -56
- package/esm2015/lib/components/modal/services/action-sheet.helper.js +8 -8
- package/esm2015/lib/components/modal/services/alert.helper.js +10 -20
- package/esm2015/lib/components/modal/services/modal-animation-builder.service.js +7 -10
- package/esm2015/lib/components/modal/services/modal-navigation.service.js +8 -13
- package/esm2015/lib/components/modal/services/modal.controller.js +17 -16
- package/esm2015/lib/components/modal/services/modal.helper.js +10 -10
- package/esm2015/lib/components/page/index.js +2 -1
- package/esm2015/lib/components/page/page-footer/page-footer.component.js +21 -18
- package/esm2015/lib/components/page/page.component.js +187 -118
- package/esm2015/lib/components/page/page.module.js +60 -32
- package/esm2015/lib/components/popover/popover.component.js +27 -23
- package/esm2015/lib/components/progress-circle/progress-circle-ring.component.js +29 -17
- package/esm2015/lib/components/progress-circle/progress-circle.component.js +30 -21
- package/esm2015/lib/components/radio/radio-group/radio-group.component.js +60 -34
- package/esm2015/lib/components/radio/radio.component.js +36 -17
- package/esm2015/lib/components/range/range.component.js +51 -29
- package/esm2015/lib/components/reorder-list/reorder-list.component.js +32 -21
- package/esm2015/lib/components/router-outlet/router-outlet.component.js +18 -12
- package/esm2015/lib/components/router-outlet/router-outlet.module.js +13 -8
- package/esm2015/lib/components/section-header/section-header.component.js +15 -9
- package/esm2015/lib/components/segmented-control/segment-item.js +1 -1
- package/esm2015/lib/components/segmented-control/segmented-control.component.js +38 -29
- package/esm2015/lib/components/shared/component-loader.directive.js +15 -16
- package/esm2015/lib/components/shared/resize-observer/resize-observer.factory.js +7 -5
- package/esm2015/lib/components/shared/resize-observer/resize-observer.service.js +7 -10
- package/esm2015/lib/components/slide-button/slide-button.component.js +22 -19
- package/esm2015/lib/components/slides/slides.component.js +42 -20
- package/esm2015/lib/components/spinner/index.js +3 -0
- package/esm2015/lib/components/spinner/spinner.component.js +14 -11
- package/esm2015/lib/components/spinner/spinner.module.js +14 -9
- package/esm2015/lib/components/stock-chart-deprecated/options/stock-chart-deprecated-options.js +9 -3
- package/esm2015/lib/components/stock-chart-deprecated/stock-chart-deprecated.component.js +25 -20
- package/esm2015/lib/components/tabs/tab-button/tab-button.component.js +21 -18
- package/esm2015/lib/components/tabs/tabs.component.js +20 -16
- package/esm2015/lib/components/tabs/tabs.module.js +14 -9
- package/esm2015/lib/components/tabs/tabs.service.js +9 -7
- package/esm2015/lib/components/toast/config/toast-config.js +1 -1
- package/esm2015/lib/components/toast/services/toast.controller.js +8 -8
- package/esm2015/lib/components/toast/services/toast.helper.js +8 -12
- package/esm2015/lib/components/toggle/toggle.component.js +21 -14
- package/esm2015/lib/components/toggle-button/index.js +3 -0
- package/esm2015/lib/components/toggle-button/toggle-button.component.js +20 -13
- package/esm2015/lib/components/toggle-button/toggle-button.module.js +13 -8
- package/esm2015/lib/components/web-component-proxies.component.js +13 -15
- package/esm2015/lib/directives/element-as-button/element-as-button.directive.js +26 -17
- package/esm2015/lib/directives/fit-heading/fit-heading.directive.js +16 -17
- package/esm2015/lib/directives/fit-heading/fit-heading.module.js +12 -7
- package/esm2015/lib/directives/index.js +3 -1
- package/esm2015/lib/directives/key-handler/key-handler.directive.js +14 -14
- package/esm2015/lib/directives/modal-router-link/modal-router-link.directive.js +20 -15
- package/esm2015/lib/directives/theme-color/theme-color.directive.js +55 -24
- package/esm2015/lib/helpers/element-has-ancestor.js +1 -1
- package/esm2015/lib/helpers/line-clamp-helper.js +7 -8
- package/esm2015/lib/helpers/platform.service.js +9 -11
- package/esm2015/lib/index.js +1 -5
- package/esm2015/lib/kirby.module.js +166 -25
- package/esm2015/lib/types/window-ref.js +9 -7
- package/esm2015/testing-base/kirbydesign-designsystem-testing-base.js +1 -59
- package/esm2015/testing-base/lib/components/index.js +56 -0
- package/esm2015/testing-base/lib/components/mock.accordion-item.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.action-sheet.component.js +38 -24
- package/esm2015/testing-base/lib/components/mock.app.component.js +22 -14
- package/esm2015/testing-base/lib/components/mock.avatar.component.js +37 -24
- package/esm2015/testing-base/lib/components/mock.button.component.js +36 -24
- package/esm2015/testing-base/lib/components/mock.calendar.component.js +54 -31
- package/esm2015/testing-base/lib/components/mock.card-footer.component.js +22 -14
- package/esm2015/testing-base/lib/components/mock.card-header.component.js +30 -20
- package/esm2015/testing-base/lib/components/mock.card.component.js +34 -22
- package/esm2015/testing-base/lib/components/mock.chart-deprecated.component.js +38 -24
- package/esm2015/testing-base/lib/components/mock.chart.component.js +38 -25
- package/esm2015/testing-base/lib/components/mock.checkbox.component.js +36 -23
- package/esm2015/testing-base/lib/components/mock.chip.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.divider.component.js +24 -17
- package/esm2015/testing-base/lib/components/mock.dropdown.component.js +49 -30
- package/esm2015/testing-base/lib/components/mock.empty-state.component.js +30 -20
- package/esm2015/testing-base/lib/components/mock.fab-sheet.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.flag.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.form-field-message.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.form-field.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.grid.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.icon.component.js +29 -20
- package/esm2015/testing-base/lib/components/mock.input-counter.component.js +24 -17
- package/esm2015/testing-base/lib/components/mock.input.component.js +42 -27
- package/esm2015/testing-base/lib/components/mock.item-group.component.js +22 -14
- package/esm2015/testing-base/lib/components/mock.item-sliding.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.item.component.js +33 -22
- package/esm2015/testing-base/lib/components/mock.label.component.js +24 -17
- package/esm2015/testing-base/lib/components/mock.list-experimental.component.js +22 -14
- package/esm2015/testing-base/lib/components/mock.list-header.component.js +22 -14
- package/esm2015/testing-base/lib/components/mock.list-item.component.js +40 -25
- package/esm2015/testing-base/lib/components/mock.list-section-header.component.js +24 -17
- package/esm2015/testing-base/lib/components/mock.list.component.js +50 -30
- package/esm2015/testing-base/lib/components/mock.loading-overlay.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.modal-footer.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.page-footer.component.js +24 -17
- package/esm2015/testing-base/lib/components/mock.page.component.js +228 -125
- package/esm2015/testing-base/lib/components/mock.popover.component.js +29 -20
- package/esm2015/testing-base/lib/components/mock.progress-circle.component.js +28 -19
- package/esm2015/testing-base/lib/components/mock.radio-group.component.js +38 -24
- package/esm2015/testing-base/lib/components/mock.radio.component.js +30 -20
- package/esm2015/testing-base/lib/components/mock.range.component.js +44 -27
- package/esm2015/testing-base/lib/components/mock.reorder-list.component.js +32 -21
- package/esm2015/testing-base/lib/components/mock.router-outlet.component.js +24 -17
- package/esm2015/testing-base/lib/components/mock.section-header.component.js +22 -14
- package/esm2015/testing-base/lib/components/mock.segmented-control.component.js +35 -23
- package/esm2015/testing-base/lib/components/mock.slide-button.component.js +30 -20
- package/esm2015/testing-base/lib/components/mock.slides.component.js +51 -0
- package/esm2015/testing-base/lib/components/mock.spinner.component.js +22 -14
- package/esm2015/testing-base/lib/components/mock.tab-button.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.tabs.component.js +22 -14
- package/esm2015/testing-base/lib/components/mock.textarea.component.js +35 -23
- package/esm2015/testing-base/lib/components/mock.toggle-button.component.js +26 -18
- package/esm2015/testing-base/lib/components/mock.toggle.component.js +28 -19
- package/esm2015/testing-base/lib/components/mock.web-component-proxies.component.js +33 -0
- package/esm2015/testing-base/lib/directives/index.js +4 -0
- package/esm2015/testing-base/lib/directives/mock.accordion.directive.js +22 -13
- package/esm2015/testing-base/lib/directives/mock.fit-heading.directive.js +24 -15
- package/esm2015/testing-base/lib/directives/mock.theme-color.directive.js +24 -16
- package/esm2015/testing-base/lib/index.js +4 -0
- package/esm2015/testing-base/lib/kirby-testing-base.module.js +69 -7
- package/esm2015/testing-base/lib/mock-components.js +5 -2
- package/esm2015/testing-base/public_api.js +2 -2
- package/esm2015/testing-jasmine/kirbydesign-designsystem-testing-jasmine.js +1 -2
- package/esm2015/testing-jasmine/lib/kirby-testing.module.js +14 -8
- package/esm2015/testing-jasmine/lib/mock-providers.js +1 -1
- package/esm2015/testing-jest/kirbydesign-designsystem-testing-jest.js +1 -2
- package/esm2015/testing-jest/lib/kirby-testing.module.js +14 -8
- package/esm2015/testing-jest/lib/mock-providers.js +1 -1
- package/fesm2015/kirbydesign-designsystem-testing-base.js +1859 -1163
- package/fesm2015/kirbydesign-designsystem-testing-base.js.map +1 -1
- package/fesm2015/kirbydesign-designsystem-testing-jasmine.js +13 -8
- package/fesm2015/kirbydesign-designsystem-testing-jasmine.js.map +1 -1
- package/fesm2015/kirbydesign-designsystem-testing-jest.js +13 -8
- package/fesm2015/kirbydesign-designsystem-testing-jest.js.map +1 -1
- package/fesm2015/kirbydesign-designsystem.js +5261 -4353
- package/fesm2015/kirbydesign-designsystem.js.map +1 -1
- package/icons/svg/more.svg +5 -7
- package/kirbydesign-designsystem.d.ts +1 -114
- package/lib/components/accordion/accordion-item.component.d.ts +3 -0
- package/lib/components/accordion/accordion.directive.d.ts +3 -0
- package/lib/components/app/app.component.d.ts +3 -0
- package/lib/components/app/app.module.d.ts +7 -0
- package/lib/components/avatar/avatar.component.d.ts +5 -2
- package/lib/components/button/button.component.d.ts +5 -2
- package/lib/components/calendar/calendar.component.d.ts +3 -0
- package/lib/components/calendar/helpers/calendar.helper.d.ts +3 -0
- package/lib/components/card/card-footer/card-footer.component.d.ts +3 -0
- package/lib/components/card/card-header/card-header.component.d.ts +3 -0
- package/lib/components/card/card.component.d.ts +3 -0
- package/lib/components/chart/chart-js/chart-js.service.d.ts +7 -3
- package/lib/components/chart/chart.component.d.ts +5 -5
- package/lib/components/chart/chart.module.d.ts +5 -0
- package/lib/components/chart/chart.types.d.ts +1 -0
- package/lib/components/chart/configs/chart-config.service.d.ts +4 -1
- package/lib/components/chart/index.d.ts +1 -0
- package/lib/components/chart-deprecated/chart-deprecated-helper.d.ts +3 -0
- package/lib/components/chart-deprecated/chart-deprecated.component.d.ts +3 -0
- package/lib/components/checkbox/checkbox.component.d.ts +3 -0
- package/lib/components/chip/chip.component.d.ts +3 -0
- package/lib/components/divider/divider.component.d.ts +3 -0
- package/lib/components/dropdown/dropdown.component.d.ts +5 -2
- package/lib/components/dropdown/keyboard-handler.service.d.ts +3 -0
- package/lib/components/empty-state/empty-state.component.d.ts +3 -0
- package/lib/components/fab-sheet/fab-sheet.component.d.ts +3 -0
- package/lib/components/flag/flag.component.d.ts +3 -0
- package/lib/components/form-field/directives/date/date-input.directive.d.ts +3 -0
- package/lib/components/form-field/directives/decimal-mask/decimal-mask.directive.d.ts +3 -0
- package/lib/components/form-field/form-field-message/form-field-message.component.d.ts +3 -0
- package/lib/components/form-field/form-field.component.d.ts +3 -0
- package/lib/components/form-field/input/input.component.d.ts +4 -1
- package/lib/components/form-field/input-counter/input-counter.component.d.ts +5 -2
- package/lib/components/form-field/textarea/textarea.component.d.ts +3 -0
- package/lib/components/grid/breakpoint-helper.service.d.ts +3 -0
- package/lib/components/grid/grid.component.d.ts +3 -0
- package/lib/components/icon/icon-registry.service.d.ts +4 -2
- package/lib/components/icon/icon-settings.d.ts +0 -2
- package/lib/components/icon/icon.component.d.ts +4 -1
- package/lib/components/icon/icon.module.d.ts +6 -0
- package/lib/components/icon/index.d.ts +1 -1
- package/lib/components/index.d.ts +10 -9
- package/lib/components/item/item.component.d.ts +4 -1
- package/lib/components/item/item.module.d.ts +9 -0
- package/lib/components/item/label/label.component.d.ts +3 -0
- package/lib/components/item-group/item-group.component.d.ts +3 -0
- package/lib/components/item-sliding/item-sliding.component.d.ts +3 -0
- package/lib/components/list/directives/infinite-scroll.directive.d.ts +3 -0
- package/lib/components/list/directives/list-item-color.directive.d.ts +3 -0
- package/lib/components/list/helpers/list-helper.d.ts +3 -0
- package/lib/components/list/index.d.ts +1 -2
- package/lib/components/list/list-experimental/list-experimental.component.d.ts +3 -0
- package/lib/components/list/list-header/list-header.component.d.ts +3 -0
- package/lib/components/list/list-item/list-item.component.d.ts +3 -0
- package/lib/components/list/list-section-header/list-section-header.component.d.ts +3 -0
- package/lib/components/list/list.component.d.ts +3 -0
- package/lib/components/list/list.directive.d.ts +9 -6
- package/lib/components/list/list.module.d.ts +16 -0
- package/lib/components/list/pipes/group-by.pipe.d.ts +3 -0
- package/lib/components/loading-overlay/loading-overlay.component.d.ts +3 -0
- package/lib/components/loading-overlay/loading-overlay.service.d.ts +3 -0
- package/lib/components/modal/action-sheet/action-sheet.component.d.ts +3 -0
- package/lib/components/modal/alert/alert.component.d.ts +5 -2
- package/lib/components/modal/alert/config/alert-config.d.ts +0 -8
- package/lib/components/modal/footer/modal-footer.component.d.ts +3 -0
- package/lib/components/modal/modal-wrapper/compact/modal-compact-wrapper.component.d.ts +3 -0
- package/lib/components/modal/modal-wrapper/config/modal-config.d.ts +1 -8
- package/lib/components/modal/modal-wrapper/modal-wrapper.component.d.ts +5 -0
- package/lib/components/modal/services/action-sheet.helper.d.ts +3 -0
- package/lib/components/modal/services/alert.helper.d.ts +4 -2
- package/lib/components/modal/services/modal-animation-builder.service.d.ts +3 -0
- package/lib/components/modal/services/modal-navigation.service.d.ts +3 -0
- package/lib/components/modal/services/modal.controller.d.ts +3 -0
- package/lib/components/modal/services/modal.helper.d.ts +3 -0
- package/lib/components/page/index.d.ts +1 -0
- package/lib/components/page/page-footer/page-footer.component.d.ts +3 -0
- package/lib/components/page/page.component.d.ts +26 -0
- package/lib/components/page/page.module.d.ts +10 -0
- package/lib/components/popover/popover.component.d.ts +4 -1
- package/lib/components/progress-circle/progress-circle-ring.component.d.ts +3 -0
- package/lib/components/progress-circle/progress-circle.component.d.ts +3 -0
- package/lib/components/radio/radio-group/radio-group.component.d.ts +3 -0
- package/lib/components/radio/radio.component.d.ts +3 -0
- package/lib/components/range/range.component.d.ts +3 -0
- package/lib/components/reorder-list/reorder-list.component.d.ts +3 -0
- package/lib/components/router-outlet/router-outlet.component.d.ts +3 -0
- package/lib/components/router-outlet/router-outlet.module.d.ts +7 -0
- package/lib/components/section-header/section-header.component.d.ts +3 -0
- package/lib/components/segmented-control/segment-item.d.ts +0 -4
- package/lib/components/segmented-control/segmented-control.component.d.ts +4 -1
- package/lib/components/shared/component-loader.directive.d.ts +3 -0
- package/lib/components/shared/resize-observer/resize-observer.factory.d.ts +3 -0
- package/lib/components/shared/resize-observer/resize-observer.service.d.ts +3 -0
- package/lib/components/slide-button/slide-button.component.d.ts +3 -0
- package/lib/components/slides/slides.component.d.ts +5 -0
- package/lib/components/spinner/index.d.ts +2 -0
- package/lib/components/spinner/spinner.component.d.ts +3 -0
- package/lib/components/spinner/spinner.module.d.ts +6 -0
- package/lib/components/stock-chart-deprecated/stock-chart-deprecated.component.d.ts +3 -0
- package/lib/components/tabs/tab-button/tab-button.component.d.ts +3 -0
- package/lib/components/tabs/tabs.component.d.ts +3 -0
- package/lib/components/tabs/tabs.module.d.ts +9 -0
- package/lib/components/tabs/tabs.service.d.ts +3 -0
- package/lib/components/toast/config/toast-config.d.ts +1 -4
- package/lib/components/toast/services/toast.controller.d.ts +3 -0
- package/lib/components/toast/services/toast.helper.d.ts +3 -0
- package/lib/components/toggle/toggle.component.d.ts +3 -0
- package/lib/components/toggle-button/index.d.ts +2 -0
- package/lib/components/toggle-button/toggle-button.component.d.ts +3 -0
- package/lib/components/toggle-button/toggle-button.module.d.ts +6 -0
- package/lib/components/web-component-proxies.component.d.ts +3 -0
- package/lib/custom-elements-initializer.d.ts +1 -1
- package/lib/directives/element-as-button/element-as-button.directive.d.ts +3 -0
- package/lib/directives/fit-heading/fit-heading.directive.d.ts +3 -0
- package/lib/directives/fit-heading/fit-heading.module.d.ts +5 -0
- package/lib/directives/index.d.ts +2 -0
- package/lib/directives/key-handler/key-handler.directive.d.ts +3 -0
- package/lib/directives/modal-router-link/modal-router-link.directive.d.ts +3 -0
- package/lib/directives/theme-color/theme-color.directive.d.ts +3 -0
- package/lib/helpers/line-clamp-helper.d.ts +3 -0
- package/lib/helpers/platform.service.d.ts +3 -0
- package/lib/index.d.ts +0 -1
- package/lib/kirby.module.d.ts +69 -0
- package/lib/types/window-ref.d.ts +3 -0
- package/package.json +3 -4
- package/polyfills/intersection-observer-polyfill-loader.js +12 -12
- package/polyfills/resize-observer-polyfill-loader.js +1 -1
- package/readme.md +0 -16
- package/scss/_trigger-publish.scss +1 -0
- package/scss/_trigger.scss +1 -0
- package/scss/awesome-stylesheet.scss +1 -0
- package/scss/base/_awesome-partial.scss +1 -0
- package/scss/base/_index.scss +1 -0
- package/scss/base/_interaction-states.scss +1 -0
- package/scss/base/_link.scss +1 -0
- package/scss/base/index.scss +1 -0
- package/scss/interaction-state/_active.scss +1 -0
- package/scss/interaction-state/_focus.scss +1 -0
- package/scss/interaction-state/_hover.scss +1 -0
- package/scss/interaction-state/_index.scss +1 -0
- package/scss/interaction-state/_interaction-state.utilities.scss +1 -0
- package/scss/interaction-state/_layer.scss +1 -0
- package/scss/interaction-state/_state-layer.scss +1 -0
- package/scss/interaction-state/_utilities.scss +1 -0
- package/scss/interaction-state/ionic/_active.scss +1 -0
- package/scss/interaction-state/ionic/_hover.scss +1 -0
- package/scss/interaction-state/ionic/_index.scss +1 -0
- package/scss/interaction-states/_hover.scss +1 -0
- package/scss/interaction-states/_index.scss +1 -0
- package/scss/opt-out/_index.scss +1 -0
- package/scss/opt-out/_link.scss +1 -0
- package/testing-base/kirbydesign-designsystem-testing-base.d.ts +1 -58
- package/testing-base/lib/components/index.d.ts +55 -0
- package/testing-base/lib/components/mock.accordion-item.component.d.ts +3 -0
- package/testing-base/lib/components/mock.action-sheet.component.d.ts +3 -0
- package/testing-base/lib/components/mock.app.component.d.ts +3 -0
- package/testing-base/lib/components/mock.avatar.component.d.ts +4 -1
- package/testing-base/lib/components/mock.button.component.d.ts +4 -1
- package/testing-base/lib/components/mock.calendar.component.d.ts +4 -0
- package/testing-base/lib/components/mock.card-footer.component.d.ts +3 -0
- package/testing-base/lib/components/mock.card-header.component.d.ts +3 -0
- package/testing-base/lib/components/mock.card.component.d.ts +3 -0
- package/testing-base/lib/components/mock.chart-deprecated.component.d.ts +3 -0
- package/testing-base/lib/components/mock.chart.component.d.ts +5 -3
- package/testing-base/lib/components/mock.checkbox.component.d.ts +3 -0
- package/testing-base/lib/components/mock.chip.component.d.ts +3 -0
- package/testing-base/lib/components/mock.divider.component.d.ts +3 -0
- package/testing-base/lib/components/mock.dropdown.component.d.ts +4 -1
- package/testing-base/lib/components/mock.empty-state.component.d.ts +3 -0
- package/testing-base/lib/components/mock.fab-sheet.component.d.ts +3 -0
- package/testing-base/lib/components/mock.flag.component.d.ts +3 -0
- package/testing-base/lib/components/mock.form-field-message.component.d.ts +3 -0
- package/testing-base/lib/components/mock.form-field.component.d.ts +3 -0
- package/testing-base/lib/components/mock.grid.component.d.ts +3 -0
- package/testing-base/lib/components/mock.icon.component.d.ts +4 -1
- package/testing-base/lib/components/mock.input-counter.component.d.ts +3 -0
- package/testing-base/lib/components/mock.input.component.d.ts +4 -1
- package/testing-base/lib/components/mock.item-group.component.d.ts +3 -0
- package/testing-base/lib/components/mock.item-sliding.component.d.ts +3 -0
- package/testing-base/lib/components/mock.item.component.d.ts +4 -1
- package/testing-base/lib/components/mock.label.component.d.ts +3 -0
- package/testing-base/lib/components/mock.list-experimental.component.d.ts +3 -0
- package/testing-base/lib/components/mock.list-header.component.d.ts +3 -0
- package/testing-base/lib/components/mock.list-item.component.d.ts +3 -0
- package/testing-base/lib/components/mock.list-section-header.component.d.ts +3 -0
- package/testing-base/lib/components/mock.list.component.d.ts +3 -0
- package/testing-base/lib/components/mock.loading-overlay.component.d.ts +3 -0
- package/testing-base/lib/components/mock.modal-footer.component.d.ts +3 -0
- package/testing-base/lib/components/mock.page-footer.component.d.ts +3 -0
- package/testing-base/lib/components/mock.page.component.d.ts +24 -0
- package/testing-base/lib/components/mock.popover.component.d.ts +4 -1
- package/testing-base/lib/components/mock.progress-circle.component.d.ts +3 -0
- package/testing-base/lib/components/mock.radio-group.component.d.ts +3 -0
- package/testing-base/lib/components/mock.radio.component.d.ts +3 -0
- package/testing-base/lib/components/mock.range.component.d.ts +3 -0
- package/testing-base/lib/components/mock.reorder-list.component.d.ts +3 -0
- package/testing-base/lib/components/mock.router-outlet.component.d.ts +3 -0
- package/testing-base/lib/components/mock.section-header.component.d.ts +3 -0
- package/testing-base/lib/components/mock.segmented-control.component.d.ts +4 -1
- package/testing-base/lib/components/mock.slide-button.component.d.ts +3 -0
- package/testing-base/lib/components/mock.slides.component.d.ts +11 -0
- package/testing-base/lib/components/mock.spinner.component.d.ts +3 -0
- package/testing-base/lib/components/mock.tab-button.component.d.ts +3 -0
- package/testing-base/lib/components/mock.tabs.component.d.ts +3 -0
- package/testing-base/lib/components/mock.textarea.component.d.ts +3 -0
- package/testing-base/lib/components/mock.toggle-button.component.d.ts +3 -0
- package/testing-base/lib/components/mock.toggle.component.d.ts +3 -0
- package/testing-base/lib/components/mock.web-component-proxies.component.d.ts +8 -0
- package/testing-base/lib/directives/index.d.ts +3 -0
- package/testing-base/lib/directives/mock.accordion.directive.d.ts +3 -0
- package/testing-base/lib/directives/mock.fit-heading.directive.d.ts +3 -0
- package/testing-base/lib/directives/mock.theme-color.directive.d.ts +3 -0
- package/testing-base/lib/index.d.ts +3 -0
- package/testing-base/lib/kirby-testing-base.module.d.ts +61 -0
- package/testing-base/package.json +0 -1
- package/testing-base/public_api.d.ts +1 -1
- package/testing-jasmine/kirbydesign-designsystem-testing-jasmine.d.ts +1 -1
- package/testing-jasmine/lib/kirby-testing.module.d.ts +5 -0
- package/testing-jasmine/package.json +0 -1
- package/testing-jest/kirbydesign-designsystem-testing-jest.d.ts +1 -1
- package/testing-jest/lib/kirby-testing.module.d.ts +5 -0
- package/testing-jest/package.json +0 -1
- package/README.md +0 -7
- package/bundles/kirbydesign-designsystem-testing-base.umd.min.js +0 -2
- package/bundles/kirbydesign-designsystem-testing-base.umd.min.js.map +0 -1
- package/bundles/kirbydesign-designsystem-testing-jasmine.umd.min.js +0 -16
- package/bundles/kirbydesign-designsystem-testing-jasmine.umd.min.js.map +0 -1
- package/bundles/kirbydesign-designsystem-testing-jest.umd.min.js +0 -16
- package/bundles/kirbydesign-designsystem-testing-jest.umd.min.js.map +0 -1
- package/bundles/kirbydesign-designsystem.umd.min.js +0 -2
- package/bundles/kirbydesign-designsystem.umd.min.js.map +0 -1
- package/esm2015/index.metadata.json +0 -1
- package/esm2015/kirbydesign-designsystem.metadata.json +0 -1
- package/esm2015/lib/components/accordion/accordion-item.component.metadata.json +0 -1
- package/esm2015/lib/components/accordion/accordion.directive.metadata.json +0 -1
- package/esm2015/lib/components/accordion/index.metadata.json +0 -1
- package/esm2015/lib/components/angular-component-lib/utils.metadata.json +0 -1
- package/esm2015/lib/components/app/app.component.metadata.json +0 -1
- package/esm2015/lib/components/app/app.module.metadata.json +0 -1
- package/esm2015/lib/components/app/index.metadata.json +0 -1
- package/esm2015/lib/components/avatar/avatar.component.metadata.json +0 -1
- package/esm2015/lib/components/button/button.component.metadata.json +0 -1
- package/esm2015/lib/components/calendar/calendar.component.metadata.json +0 -1
- package/esm2015/lib/components/calendar/helpers/calendar-cell.model.metadata.json +0 -1
- package/esm2015/lib/components/calendar/helpers/calendar-options.model.metadata.json +0 -1
- package/esm2015/lib/components/calendar/helpers/calendar.helper.metadata.json +0 -1
- package/esm2015/lib/components/calendar/index.metadata.json +0 -1
- package/esm2015/lib/components/calendar/options/calendar-year-navigator-config.metadata.json +0 -1
- package/esm2015/lib/components/card/card-footer/card-footer.component.metadata.json +0 -1
- package/esm2015/lib/components/card/card-header/card-header.component.metadata.json +0 -1
- package/esm2015/lib/components/card/card.component.metadata.json +0 -1
- package/esm2015/lib/components/card/index.metadata.json +0 -1
- package/esm2015/lib/components/chart/chart-js/chart-js.service.metadata.json +0 -1
- package/esm2015/lib/components/chart/chart-js/chartjs-plugin-marker/chartjs-plugin-marker.metadata.json +0 -1
- package/esm2015/lib/components/chart/chart-js/configured-chart-js.metadata.json +0 -1
- package/esm2015/lib/components/chart/chart.component.metadata.json +0 -1
- package/esm2015/lib/components/chart/chart.module.metadata.json +0 -1
- package/esm2015/lib/components/chart/chart.types.metadata.json +0 -1
- package/esm2015/lib/components/chart/configs/annotations.config.metadata.json +0 -1
- package/esm2015/lib/components/chart/configs/chart-config.service.metadata.json +0 -1
- package/esm2015/lib/components/chart/configs/global-defaults.config.metadata.json +0 -1
- package/esm2015/lib/components/chart/configs/interaction-functions-extensions.config.metadata.json +0 -1
- package/esm2015/lib/components/chart/configs/shared.utils.metadata.json +0 -1
- package/esm2015/lib/components/chart/configs/type.config.metadata.json +0 -1
- package/esm2015/lib/components/chart/index.metadata.json +0 -1
- package/esm2015/lib/components/chart-deprecated/chart-deprecated-helper.metadata.json +0 -1
- package/esm2015/lib/components/chart-deprecated/chart-deprecated-type.metadata.json +0 -1
- package/esm2015/lib/components/chart-deprecated/chart-deprecated.component.metadata.json +0 -1
- package/esm2015/lib/components/chart-deprecated/index.metadata.json +0 -1
- package/esm2015/lib/components/chart-deprecated/options/activitygauge.metadata.json +0 -1
- package/esm2015/lib/components/chart-deprecated/options/areaspline.metadata.json +0 -1
- package/esm2015/lib/components/chart-deprecated/options/bar.metadata.json +0 -1
- package/esm2015/lib/components/chart-deprecated/options/column.metadata.json +0 -1
- package/esm2015/lib/components/chart-deprecated/options/donut.metadata.json +0 -1
- package/esm2015/lib/components/chart-deprecated/options/timeseries.metadata.json +0 -1
- package/esm2015/lib/components/checkbox/checkbox.component.metadata.json +0 -1
- package/esm2015/lib/components/chip/chip.component.metadata.json +0 -1
- package/esm2015/lib/components/divider/divider.component.metadata.json +0 -1
- package/esm2015/lib/components/dropdown/dropdown.component.metadata.json +0 -1
- package/esm2015/lib/components/dropdown/dropdown.types.metadata.json +0 -1
- package/esm2015/lib/components/dropdown/keyboard-handler.service.metadata.json +0 -1
- package/esm2015/lib/components/empty-state/empty-state.component.metadata.json +0 -1
- package/esm2015/lib/components/fab-sheet/fab-sheet.component.metadata.json +0 -1
- package/esm2015/lib/components/flag/flag.component.metadata.json +0 -1
- package/esm2015/lib/components/form-field/directives/date/date-input.directive.metadata.json +0 -1
- package/esm2015/lib/components/form-field/directives/decimal-mask/decimal-mask.directive.metadata.json +0 -1
- package/esm2015/lib/components/form-field/form-field-message/form-field-message.component.metadata.json +0 -1
- package/esm2015/lib/components/form-field/form-field.component.metadata.json +0 -1
- package/esm2015/lib/components/form-field/index.metadata.json +0 -1
- package/esm2015/lib/components/form-field/input/input.component.metadata.json +0 -1
- package/esm2015/lib/components/form-field/input-counter/input-counter.component.metadata.json +0 -1
- package/esm2015/lib/components/form-field/textarea/textarea.component.metadata.json +0 -1
- package/esm2015/lib/components/grid/breakpoint-helper.service.metadata.json +0 -1
- package/esm2015/lib/components/grid/grid-card-configuration.metadata.json +0 -1
- package/esm2015/lib/components/grid/grid.component.metadata.json +0 -1
- package/esm2015/lib/components/icon/icon-registry.service.metadata.json +0 -1
- package/esm2015/lib/components/icon/icon-settings.metadata.json +0 -1
- package/esm2015/lib/components/icon/icon.component.metadata.json +0 -1
- package/esm2015/lib/components/icon/icon.module.metadata.json +0 -1
- package/esm2015/lib/components/icon/index.metadata.json +0 -1
- package/esm2015/lib/components/icon/kirby-icon-settings.metadata.json +0 -1
- package/esm2015/lib/components/index.metadata.json +0 -1
- package/esm2015/lib/components/item/index.metadata.json +0 -1
- package/esm2015/lib/components/item/item.component.metadata.json +0 -1
- package/esm2015/lib/components/item/item.module.metadata.json +0 -1
- package/esm2015/lib/components/item/label/label.component.metadata.json +0 -1
- package/esm2015/lib/components/item-group/item-group.component.metadata.json +0 -1
- package/esm2015/lib/components/item-sliding/index.metadata.json +0 -1
- package/esm2015/lib/components/item-sliding/item-sliding.component.metadata.json +0 -1
- package/esm2015/lib/components/item-sliding/item-sliding.types.metadata.json +0 -1
- package/esm2015/lib/components/list/directives/infinite-scroll.directive.metadata.json +0 -1
- package/esm2015/lib/components/list/directives/list-item-color.directive.metadata.json +0 -1
- package/esm2015/lib/components/list/directives/scroll.model.metadata.json +0 -1
- package/esm2015/lib/components/list/helpers/list-helper.metadata.json +0 -1
- package/esm2015/lib/components/list/index.metadata.json +0 -1
- package/esm2015/lib/components/list/list-experimental/list-experimental.component.metadata.json +0 -1
- package/esm2015/lib/components/list/list-header/list-header.component.metadata.json +0 -1
- package/esm2015/lib/components/list/list-item/list-item.component.metadata.json +0 -1
- package/esm2015/lib/components/list/list-section-header/list-section-header.component.metadata.json +0 -1
- package/esm2015/lib/components/list/list-swipe-action.type.metadata.json +0 -1
- package/esm2015/lib/components/list/list.component.metadata.json +0 -1
- package/esm2015/lib/components/list/list.directive.metadata.json +0 -1
- package/esm2015/lib/components/list/list.event.metadata.json +0 -1
- package/esm2015/lib/components/list/list.module.metadata.json +0 -1
- package/esm2015/lib/components/list/pipes/group-by.pipe.metadata.json +0 -1
- package/esm2015/lib/components/loading-overlay/index.metadata.json +0 -1
- package/esm2015/lib/components/loading-overlay/loading-overlay.component.metadata.json +0 -1
- package/esm2015/lib/components/loading-overlay/loading-overlay.service.metadata.json +0 -1
- package/esm2015/lib/components/modal/action-sheet/action-sheet.component.metadata.json +0 -1
- package/esm2015/lib/components/modal/action-sheet/config/action-sheet-config.metadata.json +0 -1
- package/esm2015/lib/components/modal/action-sheet/config/action-sheet-item.metadata.json +0 -1
- package/esm2015/lib/components/modal/alert/alert.component.metadata.json +0 -1
- package/esm2015/lib/components/modal/alert/config/alert-config.metadata.json +0 -1
- package/esm2015/lib/components/modal/footer/modal-footer.component.metadata.json +0 -1
- package/esm2015/lib/components/modal/index.metadata.json +0 -1
- package/esm2015/lib/components/modal/modal-wrapper/compact/modal-compact-wrapper.component.metadata.json +0 -1
- package/esm2015/lib/components/modal/modal-wrapper/config/drawer-supplementary-action.metadata.json +0 -1
- package/esm2015/lib/components/modal/modal-wrapper/config/modal-config.helper.metadata.json +0 -1
- package/esm2015/lib/components/modal/modal-wrapper/config/modal-config.metadata.json +0 -1
- package/esm2015/lib/components/modal/modal-wrapper/modal-wrapper.component.metadata.json +0 -1
- package/esm2015/lib/components/modal/services/action-sheet.helper.metadata.json +0 -1
- package/esm2015/lib/components/modal/services/alert.helper.metadata.json +0 -1
- package/esm2015/lib/components/modal/services/modal-animation-builder.service.metadata.json +0 -1
- package/esm2015/lib/components/modal/services/modal-navigation.service.metadata.json +0 -1
- package/esm2015/lib/components/modal/services/modal.controller.metadata.json +0 -1
- package/esm2015/lib/components/modal/services/modal.helper.metadata.json +0 -1
- package/esm2015/lib/components/modal/services/modal.interfaces.metadata.json +0 -1
- package/esm2015/lib/components/page/index.metadata.json +0 -1
- package/esm2015/lib/components/page/page-footer/page-footer.component.metadata.json +0 -1
- package/esm2015/lib/components/page/page.component.metadata.json +0 -1
- package/esm2015/lib/components/page/page.module.metadata.json +0 -1
- package/esm2015/lib/components/popover/popover.component.metadata.json +0 -1
- package/esm2015/lib/components/progress-circle/progress-circle-ring.component.metadata.json +0 -1
- package/esm2015/lib/components/progress-circle/progress-circle.component.metadata.json +0 -1
- package/esm2015/lib/components/radio/index.metadata.json +0 -1
- package/esm2015/lib/components/radio/radio-group/radio-group.component.metadata.json +0 -1
- package/esm2015/lib/components/radio/radio.component.metadata.json +0 -1
- package/esm2015/lib/components/range/range.component.metadata.json +0 -1
- package/esm2015/lib/components/reorder-list/index.metadata.json +0 -1
- package/esm2015/lib/components/reorder-list/reorder-event.metadata.json +0 -1
- package/esm2015/lib/components/reorder-list/reorder-list.component.metadata.json +0 -1
- package/esm2015/lib/components/router-outlet/index.metadata.json +0 -1
- package/esm2015/lib/components/router-outlet/router-outlet.component.metadata.json +0 -1
- package/esm2015/lib/components/router-outlet/router-outlet.module.metadata.json +0 -1
- package/esm2015/lib/components/section-header/section-header.component.metadata.json +0 -1
- package/esm2015/lib/components/segmented-control/segment-item.metadata.json +0 -1
- package/esm2015/lib/components/segmented-control/segmented-control.component.metadata.json +0 -1
- package/esm2015/lib/components/shared/component-configuration.metadata.json +0 -1
- package/esm2015/lib/components/shared/component-loader.directive.metadata.json +0 -1
- package/esm2015/lib/components/shared/dynamic-component.metadata.json +0 -1
- package/esm2015/lib/components/shared/index.metadata.json +0 -1
- package/esm2015/lib/components/shared/resize-observer/resize-observer.factory.metadata.json +0 -1
- package/esm2015/lib/components/shared/resize-observer/resize-observer.service.metadata.json +0 -1
- package/esm2015/lib/components/shared/resize-observer/types/resize-observer-callback.metadata.json +0 -1
- package/esm2015/lib/components/shared/resize-observer/types/resize-observer-entry.metadata.json +0 -1
- package/esm2015/lib/components/shared/resize-observer/types/resize-observer.metadata.json +0 -1
- package/esm2015/lib/components/slide-button/slide-button.component.metadata.json +0 -1
- package/esm2015/lib/components/slides/slides.component.metadata.json +0 -1
- package/esm2015/lib/components/spinner/spinner.component.metadata.json +0 -1
- package/esm2015/lib/components/spinner/spinner.module.metadata.json +0 -1
- package/esm2015/lib/components/stock-chart-deprecated/index.metadata.json +0 -1
- package/esm2015/lib/components/stock-chart-deprecated/options/stock-chart-deprecated-options.metadata.json +0 -1
- package/esm2015/lib/components/stock-chart-deprecated/stock-chart-deprecated.component.metadata.json +0 -1
- package/esm2015/lib/components/tabs/index.metadata.json +0 -1
- package/esm2015/lib/components/tabs/tab-button/tab-button.component.metadata.json +0 -1
- package/esm2015/lib/components/tabs/tab-button/tab-button.events.metadata.json +0 -1
- package/esm2015/lib/components/tabs/tabs.component.metadata.json +0 -1
- package/esm2015/lib/components/tabs/tabs.module.metadata.json +0 -1
- package/esm2015/lib/components/tabs/tabs.service.metadata.json +0 -1
- package/esm2015/lib/components/toast/config/toast-config.metadata.json +0 -1
- package/esm2015/lib/components/toast/index.metadata.json +0 -1
- package/esm2015/lib/components/toast/services/toast.controller.metadata.json +0 -1
- package/esm2015/lib/components/toast/services/toast.helper.metadata.json +0 -1
- package/esm2015/lib/components/toggle/toggle.component.metadata.json +0 -1
- package/esm2015/lib/components/toggle-button/toggle-button.component.metadata.json +0 -1
- package/esm2015/lib/components/toggle-button/toggle-button.module.metadata.json +0 -1
- package/esm2015/lib/components/web-component-proxies.component.metadata.json +0 -1
- package/esm2015/lib/custom-elements-initializer.metadata.json +0 -1
- package/esm2015/lib/directives/element-as-button/element-as-button.directive.metadata.json +0 -1
- package/esm2015/lib/directives/fit-heading/fit-heading.directive.metadata.json +0 -1
- package/esm2015/lib/directives/fit-heading/fit-heading.module.metadata.json +0 -1
- package/esm2015/lib/directives/index.metadata.json +0 -1
- package/esm2015/lib/directives/key-handler/key-handler.directive.metadata.json +0 -1
- package/esm2015/lib/directives/modal-router-link/modal-router-link.directive.metadata.json +0 -1
- package/esm2015/lib/directives/theme-color/theme-color.directive.metadata.json +0 -1
- package/esm2015/lib/helpers/color-helper.metadata.json +0 -1
- package/esm2015/lib/helpers/deep-copy.metadata.json +0 -1
- package/esm2015/lib/helpers/design-token-helper.metadata.json +0 -1
- package/esm2015/lib/helpers/element-has-ancestor.metadata.json +0 -1
- package/esm2015/lib/helpers/index.metadata.json +0 -1
- package/esm2015/lib/helpers/line-clamp-helper.metadata.json +0 -1
- package/esm2015/lib/helpers/merge-deep.metadata.json +0 -1
- package/esm2015/lib/helpers/platform.service.metadata.json +0 -1
- package/esm2015/lib/helpers/string-helper.metadata.json +0 -1
- package/esm2015/lib/helpers/theme-color.type.metadata.json +0 -1
- package/esm2015/lib/helpers/unique-id-generator.helper.metadata.json +0 -1
- package/esm2015/lib/index.metadata.json +0 -1
- package/esm2015/lib/kirby.module.metadata.json +0 -1
- package/esm2015/lib/scss/scss-helper.metadata.json +0 -1
- package/esm2015/lib/types/window-ref.metadata.json +0 -1
- package/esm2015/testing-base/kirbydesign-designsystem-testing-base.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.accordion-item.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.action-sheet.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.app.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.avatar.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.button.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.calendar.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.card-footer.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.card-header.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.card.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.chart-deprecated.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.chart.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.checkbox.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.chip.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.divider.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.dropdown.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.empty-state.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.fab-sheet.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.flag.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.form-field-message.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.form-field.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.grid.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.icon.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.input-counter.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.input.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.item-group.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.item-sliding.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.item.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.label.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.list-experimental.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.list-header.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.list-item.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.list-section-header.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.list.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.loading-overlay.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.modal-footer.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.page-footer.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.page.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.popover.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.progress-circle.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.radio-group.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.radio.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.range.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.reorder-list.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.router-outlet.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.section-header.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.segmented-control.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.slide-button.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.spinner.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.tab-button.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.tabs.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.textarea.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.toggle-button.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/components/mock.toggle.component.metadata.json +0 -1
- package/esm2015/testing-base/lib/directives/mock.accordion.directive.metadata.json +0 -1
- package/esm2015/testing-base/lib/directives/mock.fit-heading.directive.metadata.json +0 -1
- package/esm2015/testing-base/lib/directives/mock.theme-color.directive.metadata.json +0 -1
- package/esm2015/testing-base/lib/kirby-testing-base.module.metadata.json +0 -1
- package/esm2015/testing-base/lib/mock-components.metadata.json +0 -1
- package/esm2015/testing-base/lib/mock-directives.metadata.json +0 -1
- package/esm2015/testing-base/public_api.metadata.json +0 -1
- package/esm2015/testing-jasmine/kirbydesign-designsystem-testing-jasmine.metadata.json +0 -1
- package/esm2015/testing-jasmine/lib/kirby-testing.module.metadata.json +0 -1
- package/esm2015/testing-jasmine/lib/mock-providers.metadata.json +0 -1
- package/esm2015/testing-jasmine/public_api.metadata.json +0 -1
- package/esm2015/testing-jest/kirbydesign-designsystem-testing-jest.metadata.json +0 -1
- package/esm2015/testing-jest/lib/kirby-testing.module.metadata.json +0 -1
- package/esm2015/testing-jest/lib/mock-providers.metadata.json +0 -1
- package/esm2015/testing-jest/public_api.metadata.json +0 -1
- package/kirbydesign-designsystem.metadata.json +0 -1
- package/testing-base/kirbydesign-designsystem-testing-base.metadata.json +0 -1
- package/testing-jasmine/kirbydesign-designsystem-testing-jasmine.metadata.json +0 -1
- package/testing-jest/kirbydesign-designsystem-testing-jest.metadata.json +0 -1
|
@@ -10,6 +10,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
import { EventEmitter, Injectable } from '@angular/core';
|
|
11
11
|
import { ModalController } from '@ionic/angular';
|
|
12
12
|
import { ActionSheetComponent } from '../action-sheet/action-sheet.component';
|
|
13
|
+
import * as i0 from "@angular/core";
|
|
14
|
+
import * as i1 from "@ionic/angular";
|
|
13
15
|
export class ActionSheetHelper {
|
|
14
16
|
constructor(ionicModalController) {
|
|
15
17
|
this.ionicModalController = ionicModalController;
|
|
@@ -40,11 +42,9 @@ export class ActionSheetHelper {
|
|
|
40
42
|
});
|
|
41
43
|
}
|
|
42
44
|
}
|
|
43
|
-
ActionSheetHelper
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
];
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLXNoZWV0LmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9zZXJ2aWNlcy9hY3Rpb24tc2hlZXQuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQU85RSxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQW9CLG9CQUFxQztRQUFyQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQWlCO0lBQUcsQ0FBQztJQUVoRCxlQUFlLENBQUMsTUFBeUI7O1lBQ3BELE1BQU0sTUFBTSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7WUFDbEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7WUFFdkQsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDO2dCQUN0RCxTQUFTLEVBQUUsb0JBQW9CO2dCQUMvQixRQUFRLEVBQUUsQ0FBQyxlQUFlLEVBQUUsb0JBQW9CLENBQUM7Z0JBQ2pELGNBQWMsa0NBQ1QsTUFBTSxLQUNULE1BQU0sRUFBRSxNQUFNLEVBQ2QsVUFBVSxFQUFFLFVBQVUsR0FDdkI7Z0JBQ0QsZUFBZSxFQUFFLElBQUk7YUFDdEIsQ0FBQyxDQUFDO1lBRUgsTUFBTSxrQkFBa0IsR0FBaUIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUNwRixNQUFNLHNCQUFzQixHQUFpQixVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDekUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FDdkIsQ0FBQztZQUNGLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUM3QyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ3RCLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNqQyxzQkFBc0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN2QyxDQUFDLENBQUMsQ0FBQztZQUVILE1BQU0sUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3pCLE9BQU87Z0JBQ0wsT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztnQkFDeEMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxhQUFhLEVBQUU7Z0JBQ3ZDLFlBQVksRUFBRSxRQUFRLENBQUMsWUFBWSxFQUFFO2FBQ3RDLENBQUM7UUFDSixDQUFDO0tBQUE7OztZQW5DRixVQUFVOzs7O1lBVEYsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTW9kYWxDb250cm9sbGVyIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEFjdGlvblNoZWV0Q29tcG9uZW50IH0gZnJvbSAnLi4vYWN0aW9uLXNoZWV0L2FjdGlvbi1zaGVldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWN0aW9uU2hlZXRDb25maWcgfSBmcm9tICcuLi9hY3Rpb24tc2hlZXQvY29uZmlnL2FjdGlvbi1zaGVldC1jb25maWcnO1xuaW1wb3J0IHsgQWN0aW9uU2hlZXRJdGVtIH0gZnJvbSAnLi4vYWN0aW9uLXNoZWV0L2NvbmZpZy9hY3Rpb24tc2hlZXQtaXRlbSc7XG5cbmltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICcuL21vZGFsLmludGVyZmFjZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQWN0aW9uU2hlZXRIZWxwZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGlvbmljTW9kYWxDb250cm9sbGVyOiBNb2RhbENvbnRyb2xsZXIpIHt9XG5cbiAgcHVibGljIGFzeW5jIHNob3dBY3Rpb25TaGVldChjb25maWc6IEFjdGlvblNoZWV0Q29uZmlnKTogUHJvbWlzZTxPdmVybGF5PiB7XG4gICAgY29uc3QgY2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIGNvbnN0IGl0ZW1TZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGlvblNoZWV0SXRlbT4oKTtcblxuICAgIGNvbnN0IGlvbk1vZGFsID0gYXdhaXQgdGhpcy5pb25pY01vZGFsQ29udHJvbGxlci5jcmVhdGUoe1xuICAgICAgY29tcG9uZW50OiBBY3Rpb25TaGVldENvbXBvbmVudCxcbiAgICAgIGNzc0NsYXNzOiBbJ2tpcmJ5LW92ZXJsYXknLCAna2lyYnktYWN0aW9uLXNoZWV0J10sXG4gICAgICBjb21wb25lbnRQcm9wczoge1xuICAgICAgICAuLi5jb25maWcsXG4gICAgICAgIGNhbmNlbDogY2FuY2VsLFxuICAgICAgICBpdGVtU2VsZWN0OiBpdGVtU2VsZWN0LFxuICAgICAgfSxcbiAgICAgIGJhY2tkcm9wRGlzbWlzczogdHJ1ZSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGNhbmNlbFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uID0gY2FuY2VsLnN1YnNjcmliZSgoKSA9PiBpb25Nb2RhbC5kaXNtaXNzKCkpO1xuICAgIGNvbnN0IGl0ZW1TZWxlY3RTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiA9IGl0ZW1TZWxlY3Quc3Vic2NyaWJlKChpdGVtKSA9PlxuICAgICAgaW9uTW9kYWwuZGlzbWlzcyhpdGVtKVxuICAgICk7XG4gICAgY29uc3Qgb25EaWREaXNtaXNzID0gaW9uTW9kYWwub25EaWREaXNtaXNzKCk7XG4gICAgb25EaWREaXNtaXNzLnRoZW4oKF8pID0+IHtcbiAgICAgIGNhbmNlbFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgaXRlbVNlbGVjdFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH0pO1xuXG4gICAgYXdhaXQgaW9uTW9kYWwucHJlc2VudCgpO1xuICAgIHJldHVybiB7XG4gICAgICBkaXNtaXNzOiBpb25Nb2RhbC5kaXNtaXNzLmJpbmQoaW9uTW9kYWwpLFxuICAgICAgb25XaWxsRGlzbWlzczogaW9uTW9kYWwub25XaWxsRGlzbWlzcygpLFxuICAgICAgb25EaWREaXNtaXNzOiBpb25Nb2RhbC5vbkRpZERpc21pc3MoKSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
45
|
+
/** @nocollapse */ ActionSheetHelper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ActionSheetHelper, deps: [{ token: i1.ModalController }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
46
|
+
/** @nocollapse */ ActionSheetHelper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ActionSheetHelper });
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ActionSheetHelper, decorators: [{
|
|
48
|
+
type: Injectable
|
|
49
|
+
}], ctorParameters: function () { return [{ type: i1.ModalController }]; } });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLXNoZWV0LmhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9zZXJ2aWNlcy9hY3Rpb24tc2hlZXQuaGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7O0FBTzlFLE1BQU0sT0FBTyxpQkFBaUI7SUFDNUIsWUFBb0Isb0JBQXFDO1FBQXJDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBaUI7SUFBRyxDQUFDO0lBRWhELGVBQWUsQ0FBQyxNQUF5Qjs7WUFDcEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNsQyxNQUFNLFVBQVUsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztZQUV2RCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUM7Z0JBQ3RELFNBQVMsRUFBRSxvQkFBb0I7Z0JBQy9CLFFBQVEsRUFBRSxDQUFDLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQztnQkFDakQsY0FBYyxrQ0FDVCxNQUFNLEtBQ1QsTUFBTSxFQUFFLE1BQU0sRUFDZCxVQUFVLEVBQUUsVUFBVSxHQUN2QjtnQkFDRCxlQUFlLEVBQUUsSUFBSTthQUN0QixDQUFDLENBQUM7WUFFSCxNQUFNLGtCQUFrQixHQUFpQixNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ3BGLE1BQU0sc0JBQXNCLEdBQWlCLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUN6RSxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUN2QixDQUFDO1lBQ0YsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzdDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDdEIsa0JBQWtCLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ2pDLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3ZDLENBQUMsQ0FBQyxDQUFDO1lBRUgsTUFBTSxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDekIsT0FBTztnQkFDTCxPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2dCQUN4QyxhQUFhLEVBQUUsUUFBUSxDQUFDLGFBQWEsRUFBRTtnQkFDdkMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxZQUFZLEVBQUU7YUFDdEMsQ0FBQztRQUNKLENBQUM7S0FBQTs7a0lBbENVLGlCQUFpQjtzSUFBakIsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBRDdCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1vZGFsQ29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBBY3Rpb25TaGVldENvbXBvbmVudCB9IGZyb20gJy4uL2FjdGlvbi1zaGVldC9hY3Rpb24tc2hlZXQuY29tcG9uZW50JztcbmltcG9ydCB7IEFjdGlvblNoZWV0Q29uZmlnIH0gZnJvbSAnLi4vYWN0aW9uLXNoZWV0L2NvbmZpZy9hY3Rpb24tc2hlZXQtY29uZmlnJztcbmltcG9ydCB7IEFjdGlvblNoZWV0SXRlbSB9IGZyb20gJy4uL2FjdGlvbi1zaGVldC9jb25maWcvYWN0aW9uLXNoZWV0LWl0ZW0nO1xuXG5pbXBvcnQgeyBPdmVybGF5IH0gZnJvbSAnLi9tb2RhbC5pbnRlcmZhY2VzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFjdGlvblNoZWV0SGVscGVyIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpb25pY01vZGFsQ29udHJvbGxlcjogTW9kYWxDb250cm9sbGVyKSB7fVxuXG4gIHB1YmxpYyBhc3luYyBzaG93QWN0aW9uU2hlZXQoY29uZmlnOiBBY3Rpb25TaGVldENvbmZpZyk6IFByb21pc2U8T3ZlcmxheT4ge1xuICAgIGNvbnN0IGNhbmNlbCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICBjb25zdCBpdGVtU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxBY3Rpb25TaGVldEl0ZW0+KCk7XG5cbiAgICBjb25zdCBpb25Nb2RhbCA9IGF3YWl0IHRoaXMuaW9uaWNNb2RhbENvbnRyb2xsZXIuY3JlYXRlKHtcbiAgICAgIGNvbXBvbmVudDogQWN0aW9uU2hlZXRDb21wb25lbnQsXG4gICAgICBjc3NDbGFzczogWydraXJieS1vdmVybGF5JywgJ2tpcmJ5LWFjdGlvbi1zaGVldCddLFxuICAgICAgY29tcG9uZW50UHJvcHM6IHtcbiAgICAgICAgLi4uY29uZmlnLFxuICAgICAgICBjYW5jZWw6IGNhbmNlbCxcbiAgICAgICAgaXRlbVNlbGVjdDogaXRlbVNlbGVjdCxcbiAgICAgIH0sXG4gICAgICBiYWNrZHJvcERpc21pc3M6IHRydWUsXG4gICAgfSk7XG5cbiAgICBjb25zdCBjYW5jZWxTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiA9IGNhbmNlbC5zdWJzY3JpYmUoKCkgPT4gaW9uTW9kYWwuZGlzbWlzcygpKTtcbiAgICBjb25zdCBpdGVtU2VsZWN0U3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gPSBpdGVtU2VsZWN0LnN1YnNjcmliZSgoaXRlbSkgPT5cbiAgICAgIGlvbk1vZGFsLmRpc21pc3MoaXRlbSlcbiAgICApO1xuICAgIGNvbnN0IG9uRGlkRGlzbWlzcyA9IGlvbk1vZGFsLm9uRGlkRGlzbWlzcygpO1xuICAgIG9uRGlkRGlzbWlzcy50aGVuKChfKSA9PiB7XG4gICAgICBjYW5jZWxTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgIGl0ZW1TZWxlY3RTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9KTtcblxuICAgIGF3YWl0IGlvbk1vZGFsLnByZXNlbnQoKTtcbiAgICByZXR1cm4ge1xuICAgICAgZGlzbWlzczogaW9uTW9kYWwuZGlzbWlzcy5iaW5kKGlvbk1vZGFsKSxcbiAgICAgIG9uV2lsbERpc21pc3M6IGlvbk1vZGFsLm9uV2lsbERpc21pc3MoKSxcbiAgICAgIG9uRGlkRGlzbWlzczogaW9uTW9kYWwub25EaWREaXNtaXNzKCksXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
@@ -10,6 +10,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
import { Injectable } from '@angular/core';
|
|
11
11
|
import { ModalController } from '@ionic/angular';
|
|
12
12
|
import { AlertComponent } from '../alert/alert.component';
|
|
13
|
+
import * as i0 from "@angular/core";
|
|
14
|
+
import * as i1 from "@ionic/angular";
|
|
13
15
|
export class AlertHelper {
|
|
14
16
|
constructor(ionicModalController) {
|
|
15
17
|
this.ionicModalController = ionicModalController;
|
|
@@ -32,14 +34,10 @@ export class AlertHelper {
|
|
|
32
34
|
});
|
|
33
35
|
}
|
|
34
36
|
getComponentProps(config) {
|
|
35
|
-
return Object.assign(Object.assign({}, config), {
|
|
37
|
+
return Object.assign(Object.assign({}, config), { okBtn: this.getOkBtn(config), cancelBtn: config.cancelBtn, okBtnIsDestructive: this.getOkBtnIsDestructive(config), iconName: config.icon && config.icon.name, iconThemeColor: config.icon && config.icon.themeColor });
|
|
36
38
|
}
|
|
37
|
-
|
|
39
|
+
getOkBtn(config) {
|
|
38
40
|
let text;
|
|
39
|
-
if (config.okBtnText) {
|
|
40
|
-
console.warn('`okBtnText` will be deprecated on next major version. Please use `okBtn` instead.');
|
|
41
|
-
text = config.okBtnText;
|
|
42
|
-
}
|
|
43
41
|
if (config.okBtn) {
|
|
44
42
|
if (typeof config.okBtn === 'string') {
|
|
45
43
|
text = config.okBtn;
|
|
@@ -53,18 +51,10 @@ export class AlertHelper {
|
|
|
53
51
|
getOkBtnIsDestructive(config) {
|
|
54
52
|
return typeof config.okBtn === 'object' ? config.okBtn.isDestructive : undefined;
|
|
55
53
|
}
|
|
56
|
-
getCancelBtnText(config) {
|
|
57
|
-
if (config.cancelBtnText) {
|
|
58
|
-
console.warn('`cancelBtnText` will be deprecated on next major version. Please use `cancelBtn` instead.');
|
|
59
|
-
}
|
|
60
|
-
return config.cancelBtn || config.cancelBtnText;
|
|
61
|
-
}
|
|
62
54
|
}
|
|
63
|
-
AlertHelper
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
];
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kZXNpZ25zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL21vZGFsL3NlcnZpY2VzL2FsZXJ0LmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFJMUQsTUFBTSxPQUFPLFdBQVc7SUFDdEIsWUFBb0Isb0JBQXFDO1FBQXJDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBaUI7SUFBRyxDQUFDO0lBRWhELFNBQVMsQ0FBQyxNQUFtQjs7WUFDeEMsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDO2dCQUN0RCxTQUFTLEVBQUUsY0FBYztnQkFDekIsY0FBYyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUM7Z0JBQzlDLFFBQVEsRUFBRSxDQUFDLGVBQWUsRUFBRSxhQUFhLENBQUM7Z0JBQzFDLElBQUksRUFBRSxLQUFLO2dCQUNYLGVBQWUsRUFBRSxLQUFLO2FBQ3ZCLENBQUMsQ0FBQztZQUVILE1BQU0sUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3pCLE9BQU87Z0JBQ0wsT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztnQkFDeEMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxhQUFhLEVBQUU7Z0JBQ3ZDLFlBQVksRUFBRSxRQUFRLENBQUMsWUFBWSxFQUFFO2FBQ3RDLENBQUM7UUFDSixDQUFDO0tBQUE7SUFFTyxpQkFBaUIsQ0FBQyxNQUFtQjtRQUMzQyx1Q0FDSyxNQUFNLEtBQ1QsU0FBUyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQ3BDLGFBQWEsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQzVDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsRUFDdEQsUUFBUSxFQUFFLE1BQU0sQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQ3pDLGNBQWMsRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUNyRDtJQUNKLENBQUM7SUFFTyxZQUFZLENBQUMsTUFBbUI7UUFDdEMsSUFBSSxJQUFZLENBQUM7UUFDakIsSUFBSSxNQUFNLENBQUMsU0FBUyxFQUFFO1lBQ3BCLE9BQU8sQ0FBQyxJQUFJLENBQ1YsbUZBQW1GLENBQ3BGLENBQUM7WUFDRixJQUFJLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztTQUN6QjtRQUNELElBQUksTUFBTSxDQUFDLEtBQUssRUFBRTtZQUNoQixJQUFJLE9BQU8sTUFBTSxDQUFDLEtBQUssS0FBSyxRQUFRLEVBQUU7Z0JBQ3BDLElBQUksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO2FBQ3JCO2lCQUFNO2dCQUNMLElBQUksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQzthQUMxQjtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQscUJBQXFCLENBQUMsTUFBTTtRQUMxQixPQUFPLE9BQU8sTUFBTSxDQUFDLEtBQUssS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDbkYsQ0FBQztJQUVPLGdCQUFnQixDQUFDLE1BQW1CO1FBQzFDLElBQUksTUFBTSxDQUFDLGFBQWEsRUFBRTtZQUN4QixPQUFPLENBQUMsSUFBSSxDQUNWLDJGQUEyRixDQUM1RixDQUFDO1NBQ0g7UUFDRCxPQUFPLE1BQU0sQ0FBQyxTQUFTLElBQUksTUFBTSxDQUFDLGFBQWEsQ0FBQztJQUNsRCxDQUFDOzs7WUE3REYsVUFBVTs7OztZQU5GLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2RhbENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5cbmltcG9ydCB7IEFsZXJ0Q29uZmlnIH0gZnJvbSAnLi4vYWxlcnQvY29uZmlnL2FsZXJ0LWNvbmZpZyc7XG5pbXBvcnQgeyBBbGVydENvbXBvbmVudCB9IGZyb20gJy4uL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPdmVybGF5IH0gZnJvbSAnLi9tb2RhbC5pbnRlcmZhY2VzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFsZXJ0SGVscGVyIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpb25pY01vZGFsQ29udHJvbGxlcjogTW9kYWxDb250cm9sbGVyKSB7fVxuXG4gIHB1YmxpYyBhc3luYyBzaG93QWxlcnQoY29uZmlnOiBBbGVydENvbmZpZyk6IFByb21pc2U8T3ZlcmxheT4ge1xuICAgIGNvbnN0IGlvbk1vZGFsID0gYXdhaXQgdGhpcy5pb25pY01vZGFsQ29udHJvbGxlci5jcmVhdGUoe1xuICAgICAgY29tcG9uZW50OiBBbGVydENvbXBvbmVudCxcbiAgICAgIGNvbXBvbmVudFByb3BzOiB0aGlzLmdldENvbXBvbmVudFByb3BzKGNvbmZpZyksXG4gICAgICBjc3NDbGFzczogWydraXJieS1vdmVybGF5JywgJ2tpcmJ5LWFsZXJ0J10sXG4gICAgICBtb2RlOiAnaW9zJyxcbiAgICAgIGJhY2tkcm9wRGlzbWlzczogZmFsc2UsXG4gICAgfSk7XG5cbiAgICBhd2FpdCBpb25Nb2RhbC5wcmVzZW50KCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGRpc21pc3M6IGlvbk1vZGFsLmRpc21pc3MuYmluZChpb25Nb2RhbCksXG4gICAgICBvbldpbGxEaXNtaXNzOiBpb25Nb2RhbC5vbldpbGxEaXNtaXNzKCksXG4gICAgICBvbkRpZERpc21pc3M6IGlvbk1vZGFsLm9uRGlkRGlzbWlzcygpLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldENvbXBvbmVudFByb3BzKGNvbmZpZzogQWxlcnRDb25maWcpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uY29uZmlnLFxuICAgICAgb2tCdG5UZXh0OiB0aGlzLmdldE9rQnRuVGV4dChjb25maWcpLFxuICAgICAgY2FuY2VsQnRuVGV4dDogdGhpcy5nZXRDYW5jZWxCdG5UZXh0KGNvbmZpZyksXG4gICAgICBva0J0bklzRGVzdHJ1Y3RpdmU6IHRoaXMuZ2V0T2tCdG5Jc0Rlc3RydWN0aXZlKGNvbmZpZyksXG4gICAgICBpY29uTmFtZTogY29uZmlnLmljb24gJiYgY29uZmlnLmljb24ubmFtZSxcbiAgICAgIGljb25UaGVtZUNvbG9yOiBjb25maWcuaWNvbiAmJiBjb25maWcuaWNvbi50aGVtZUNvbG9yLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldE9rQnRuVGV4dChjb25maWc6IEFsZXJ0Q29uZmlnKSB7XG4gICAgbGV0IHRleHQ6IHN0cmluZztcbiAgICBpZiAoY29uZmlnLm9rQnRuVGV4dCkge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAnYG9rQnRuVGV4dGAgd2lsbCBiZSBkZXByZWNhdGVkIG9uIG5leHQgbWFqb3IgdmVyc2lvbi4gUGxlYXNlIHVzZSBgb2tCdG5gIGluc3RlYWQuJ1xuICAgICAgKTtcbiAgICAgIHRleHQgPSBjb25maWcub2tCdG5UZXh0O1xuICAgIH1cbiAgICBpZiAoY29uZmlnLm9rQnRuKSB7XG4gICAgICBpZiAodHlwZW9mIGNvbmZpZy5va0J0biA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgdGV4dCA9IGNvbmZpZy5va0J0bjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRleHQgPSBjb25maWcub2tCdG4udGV4dDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRleHQ7XG4gIH1cblxuICBnZXRPa0J0bklzRGVzdHJ1Y3RpdmUoY29uZmlnKSB7XG4gICAgcmV0dXJuIHR5cGVvZiBjb25maWcub2tCdG4gPT09ICdvYmplY3QnID8gY29uZmlnLm9rQnRuLmlzRGVzdHJ1Y3RpdmUgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIGdldENhbmNlbEJ0blRleHQoY29uZmlnOiBBbGVydENvbmZpZykge1xuICAgIGlmIChjb25maWcuY2FuY2VsQnRuVGV4dCkge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAnYGNhbmNlbEJ0blRleHRgIHdpbGwgYmUgZGVwcmVjYXRlZCBvbiBuZXh0IG1ham9yIHZlcnNpb24uIFBsZWFzZSB1c2UgYGNhbmNlbEJ0bmAgaW5zdGVhZC4nXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gY29uZmlnLmNhbmNlbEJ0biB8fCBjb25maWcuY2FuY2VsQnRuVGV4dDtcbiAgfVxufVxuIl19
|
|
55
|
+
/** @nocollapse */ AlertHelper.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AlertHelper, deps: [{ token: i1.ModalController }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
56
|
+
/** @nocollapse */ AlertHelper.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AlertHelper });
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: AlertHelper, decorators: [{
|
|
58
|
+
type: Injectable
|
|
59
|
+
}], ctorParameters: function () { return [{ type: i1.ModalController }]; } });
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kZXNpZ25zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL21vZGFsL3NlcnZpY2VzL2FsZXJ0LmhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQU0xRCxNQUFNLE9BQU8sV0FBVztJQUN0QixZQUFvQixvQkFBcUM7UUFBckMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFpQjtJQUFHLENBQUM7SUFFaEQsU0FBUyxDQUFDLE1BQW1COztZQUN4QyxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUM7Z0JBQ3RELFNBQVMsRUFBRSxjQUFjO2dCQUN6QixjQUFjLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztnQkFDOUMsUUFBUSxFQUFFLENBQUMsZUFBZSxFQUFFLGFBQWEsQ0FBQztnQkFDMUMsSUFBSSxFQUFFLEtBQUs7Z0JBQ1gsZUFBZSxFQUFFLEtBQUs7YUFDdkIsQ0FBQyxDQUFDO1lBRUgsTUFBTSxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDekIsT0FBTztnQkFDTCxPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2dCQUN4QyxhQUFhLEVBQUUsUUFBUSxDQUFDLGFBQWEsRUFBRTtnQkFDdkMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxZQUFZLEVBQUU7YUFDdEMsQ0FBQztRQUNKLENBQUM7S0FBQTtJQUVPLGlCQUFpQixDQUFDLE1BQW1CO1FBQzNDLHVDQUNLLE1BQU0sS0FDVCxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFDNUIsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQzNCLGtCQUFrQixFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsRUFDdEQsUUFBUSxFQUFFLE1BQU0sQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQ3pDLGNBQWMsRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUNyRDtJQUNKLENBQUM7SUFFTyxRQUFRLENBQUMsTUFBbUI7UUFDbEMsSUFBSSxJQUFZLENBQUM7UUFFakIsSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFO1lBQ2hCLElBQUksT0FBTyxNQUFNLENBQUMsS0FBSyxLQUFLLFFBQVEsRUFBRTtnQkFDcEMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7YUFDckI7aUJBQU07Z0JBQ0wsSUFBSSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO2FBQzFCO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxNQUFNO1FBQzFCLE9BQU8sT0FBTyxNQUFNLENBQUMsS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNuRixDQUFDOzs0SEE5Q1UsV0FBVztnSUFBWCxXQUFXOzRGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb2RhbENvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5cbmltcG9ydCB7IEFsZXJ0Q29tcG9uZW50IH0gZnJvbSAnLi4vYWxlcnQvYWxlcnQuY29tcG9uZW50JztcbmltcG9ydCB7IEFsZXJ0Q29uZmlnIH0gZnJvbSAnLi4vYWxlcnQvY29uZmlnL2FsZXJ0LWNvbmZpZyc7XG5cbmltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICcuL21vZGFsLmludGVyZmFjZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQWxlcnRIZWxwZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGlvbmljTW9kYWxDb250cm9sbGVyOiBNb2RhbENvbnRyb2xsZXIpIHt9XG5cbiAgcHVibGljIGFzeW5jIHNob3dBbGVydChjb25maWc6IEFsZXJ0Q29uZmlnKTogUHJvbWlzZTxPdmVybGF5PiB7XG4gICAgY29uc3QgaW9uTW9kYWwgPSBhd2FpdCB0aGlzLmlvbmljTW9kYWxDb250cm9sbGVyLmNyZWF0ZSh7XG4gICAgICBjb21wb25lbnQ6IEFsZXJ0Q29tcG9uZW50LFxuICAgICAgY29tcG9uZW50UHJvcHM6IHRoaXMuZ2V0Q29tcG9uZW50UHJvcHMoY29uZmlnKSxcbiAgICAgIGNzc0NsYXNzOiBbJ2tpcmJ5LW92ZXJsYXknLCAna2lyYnktYWxlcnQnXSxcbiAgICAgIG1vZGU6ICdpb3MnLFxuICAgICAgYmFja2Ryb3BEaXNtaXNzOiBmYWxzZSxcbiAgICB9KTtcblxuICAgIGF3YWl0IGlvbk1vZGFsLnByZXNlbnQoKTtcbiAgICByZXR1cm4ge1xuICAgICAgZGlzbWlzczogaW9uTW9kYWwuZGlzbWlzcy5iaW5kKGlvbk1vZGFsKSxcbiAgICAgIG9uV2lsbERpc21pc3M6IGlvbk1vZGFsLm9uV2lsbERpc21pc3MoKSxcbiAgICAgIG9uRGlkRGlzbWlzczogaW9uTW9kYWwub25EaWREaXNtaXNzKCksXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29tcG9uZW50UHJvcHMoY29uZmlnOiBBbGVydENvbmZpZykge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5jb25maWcsXG4gICAgICBva0J0bjogdGhpcy5nZXRPa0J0bihjb25maWcpLFxuICAgICAgY2FuY2VsQnRuOiBjb25maWcuY2FuY2VsQnRuLFxuICAgICAgb2tCdG5Jc0Rlc3RydWN0aXZlOiB0aGlzLmdldE9rQnRuSXNEZXN0cnVjdGl2ZShjb25maWcpLFxuICAgICAgaWNvbk5hbWU6IGNvbmZpZy5pY29uICYmIGNvbmZpZy5pY29uLm5hbWUsXG4gICAgICBpY29uVGhlbWVDb2xvcjogY29uZmlnLmljb24gJiYgY29uZmlnLmljb24udGhlbWVDb2xvcixcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRPa0J0bihjb25maWc6IEFsZXJ0Q29uZmlnKSB7XG4gICAgbGV0IHRleHQ6IHN0cmluZztcblxuICAgIGlmIChjb25maWcub2tCdG4pIHtcbiAgICAgIGlmICh0eXBlb2YgY29uZmlnLm9rQnRuID09PSAnc3RyaW5nJykge1xuICAgICAgICB0ZXh0ID0gY29uZmlnLm9rQnRuO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGV4dCA9IGNvbmZpZy5va0J0bi50ZXh0O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGV4dDtcbiAgfVxuXG4gIGdldE9rQnRuSXNEZXN0cnVjdGl2ZShjb25maWcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbmZpZy5va0J0biA9PT0gJ29iamVjdCcgPyBjb25maWcub2tCdG4uaXNEZXN0cnVjdGl2ZSA6IHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
|
|
@@ -247,13 +247,10 @@ export class ModalAnimationBuilderService {
|
|
|
247
247
|
};
|
|
248
248
|
}
|
|
249
249
|
}
|
|
250
|
-
/** @nocollapse */ ModalAnimationBuilderService.ɵ
|
|
251
|
-
ModalAnimationBuilderService
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
{ type: AnimationController },
|
|
257
|
-
{ type: PlatformService }
|
|
258
|
-
];
|
|
259
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtYW5pbWF0aW9uLWJ1aWxkZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9zZXJ2aWNlcy9tb2RhbC1hbmltYXRpb24tYnVpbGRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUErQixtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7QUFHcEUsTUFBTSxPQUFPLDRCQUE0QjtJQUN2QyxZQUFvQixhQUFrQyxFQUFVLFFBQXlCO1FBQXJFLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUFVLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBRXhFLGdCQUFXLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ2hELGdCQUFXLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQy9DLGFBQVEsR0FBRyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUN4Qyx5QkFBb0IsR0FBRztZQUN0QyxvQkFBb0IsRUFBRSxJQUFJO1NBQzNCLENBQUM7SUFQMEYsQ0FBQztJQVN0RixjQUFjLENBQUMsZUFBd0M7UUFDNUQsT0FBTyxDQUFDLE1BQW1CLEVBQUUsWUFBMEIsRUFBYSxFQUFFO1lBQ3BFLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGFBQWE7aUJBQ3pDLE1BQU0sRUFBRTtpQkFDUixVQUFVLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUUsQ0FBQztpQkFD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QUFDOzRCQUNULEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7NEJBQ3RELEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSx3QkFBd0IsRUFBRTt5QkFDakUsQ0FBQyxDQUFDO3dCQUVMLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDO3FCQUNwRTtpQkFDRjthQUNGO2lCQUFNO2dCQUNMLGFBQWEsQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDOUMsSUFBSSx3QkFBd0IsRUFBRTtvQkFDNUIsYUFBYSxDQUFDLFlBQVksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO2lCQUN0RDthQUNGO1lBRUQsT0FBTyxhQUFhLENBQUM7UUFDdkIsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs7OztZQTVRRixVQUFVLFNBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzs7O1lBTEksbUJBQW1CO1lBR2hELGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBbmltYXRpb24sIEFuaW1hdGlvbkJ1aWxkZXIsIEFuaW1hdGlvbkNvbnRyb2xsZXIgfSBmcm9tICdAaW9uaWMvYW5ndWxhcic7XG5cbmltcG9ydCB7IEtpcmJ5QW5pbWF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vYW5pbWF0aW9uL2tpcmJ5LWFuaW1hdGlvbic7XG5pbXBvcnQgeyBQbGF0Zm9ybVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9oZWxwZXJzL3BsYXRmb3JtLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1vZGFsQW5pbWF0aW9uQnVpbGRlclNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFuaW1hdGlvbkN0cmw6IEFuaW1hdGlvbkNvbnRyb2xsZXIsIHByaXZhdGUgcGxhdGZvcm06IFBsYXRmb3JtU2VydmljZSkge31cblxuICBwcml2YXRlIHJlYWRvbmx5IGVhc2luZ0VudGVyID0gS2lyYnlBbmltYXRpb24uRWFzaW5nLm1vZGFsLmVudGVyO1xuICBwcml2YXRlIHJlYWRvbmx5IGVhc2luZ0xlYXZlID0gS2lyYnlBbmltYXRpb24uRWFzaW5nLm1vZGFsLmV4aXQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgZHVyYXRpb24gPSBLaXJieUFuaW1hdGlvbi5EdXJhdGlvbi5MT05HO1xuICBwcml2YXRlIHJlYWRvbmx5IFN3aXBlVG9DbG9zZURlZmF1bHRzID0ge1xuICAgIE1JTl9QUkVTRU5USU5HX1NDQUxFOiAwLjkzLFxuICB9O1xuXG4gIHB1YmxpYyBlbnRlckFuaW1hdGlvbihjdXJyZW50QmFja2Ryb3A/OiBIVE1MSW9uQmFja2Ryb3BFbGVtZW50KTogQW5pbWF0aW9uQnVpbGRlciB7XG4gICAgcmV0dXJuIChiYXNlRWw6IEhUTUxFbGVtZW50LCBwcmVzZW50aW5nRWw/OiBIVE1MRWxlbWVudCk6IEFuaW1hdGlvbiA9PiB7XG4gICAgICBjb25zdCBiYWNrZHJvcEFuaW1hdGlvbiA9IHRoaXMuYW5pbWF0aW9uQ3RybFxuICAgICAgICAuY3JlYXRlKClcbiAgICAgICAgLmFkZEVsZW1lbnQoYmFzZUVsLnF1ZXJ5U2VsZWN0b3IoJ2lvbi1iYWNrZHJvcCcpISlcbiAgICAgICAgLmZyb21Ubygnb3BhY2l0eScsIDAuMDEsICd2YXIoLS1iYWNrZHJvcC1vcGFjaXR5KScpXG4gICAgICAgIC5iZWZvcmVTdHlsZXMoe1xuICAgICAgICAgICdwb2ludGVyLWV2ZW50cyc6ICdub25lJyxcbiAgICAgICAgfSlcbiAgICAgICAgLmFmdGVyQ2xlYXJTdHlsZXMoWydwb2ludGVyLWV2ZW50cyddKTtcblxuICAgICAgY29uc3Qgd3JhcHBlckFuaW1hdGlvbiA9IHRoaXMuYW5pbWF0aW9uQ3RybFxuICAgICAgICAuY3JlYXRlKClcbiAgICAgICAgLmFkZEVsZW1lbnQoYmFzZUVsLnF1ZXJ5U2VsZWN0b3JBbGwoJy5tb2RhbC13cmFwcGVyLCAubW9kYWwtc2hhZG93JykhKVxuICAgICAgICAuYmVmb3JlU3R5bGVzKHsgb3BhY2l0eTogMSB9KVxuICAgICAgICAuZnJvbVRvKCd0cmFuc2Zvcm0nLCAndHJhbnNsYXRlWSgxMDB2aCknLCAndHJhbnNsYXRlWSgwdmgpJyk7XG5cbiAgICAgIGNvbnN0IGJhc2VBbmltYXRpb24gPSB0aGlzLmFuaW1hdGlvbkN0cmxcbiAgICAgICAgLmNyZWF0ZSgpXG4gICAgICAgIC5hZGRFbGVtZW50KGJhc2VFbClcbiAgICAgICAgLmVhc2luZyh0aGlzLmVhc2luZ0VudGVyKVxuICAgICAgICAuZHVyYXRpb24odGhpcy5kdXJhdGlvbilcbiAgICAgICAgLmFkZEFuaW1hdGlvbih3cmFwcGVyQW5pbWF0aW9uKTtcblxuICAgICAgbGV0IGN1cnJlbnRCYWNrZHJvcEFuaW1hdGlvbjogQW5pbWF0aW9uO1xuICAgICAgaWYgKGN1cnJlbnRCYWNrZHJvcCkge1xuICAgICAgICBjdXJyZW50QmFja2Ryb3BBbmltYXRpb24gPSB0aGlzLmFuaW1hdGlvbkN0cmxcbiAgICAgICAgICAuY3JlYXRlKClcbiAgICAgICAgICAuYWRkRWxlbWVudChjdXJyZW50QmFja2Ryb3ApXG4gICAgICAgICAgLmZyb21Ubygnb3BhY2l0eScsICd2YXIoLS1iYWNrZHJvcC1vcGFjaXR5KScsIDAuMDEpO1xuICAgICAgfVxuXG4gICAgICBpZiAocHJlc2VudGluZ0VsKSB7XG4gICAgICAgIGNvbnN0IGlzTW9iaWxlID0gIXRoaXMucGxhdGZvcm0uaXNQaGFibGV0T3JCaWdnZXIoKTtcbiAgICAgICAgY29uc3QgaGFzQ2FyZE1vZGFsID1cbiAgICAgICAgICBwcmVzZW50aW5nRWwudGFnTmFtZSA9PT0gJ0lPTi1NT0RBTCcgJiZcbiAgICAgICAgICAocHJlc2VudGluZ0VsIGFzIEhUTUxJb25Nb2RhbEVsZW1lbnQpLnByZXNlbnRpbmdFbGVtZW50ICE9PSB1bmRlZmluZWQ7XG5cbiAgICAgICAgY29uc3QgcHJlc2VudGluZ0FuaW1hdGlvbiA9IHRoaXMuYW5pbWF0aW9uQ3RybC5jcmVhdGUoKS5iZWZvcmVTdHlsZXMoe1xuICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCknLFxuICAgICAgICAgICd0cmFuc2Zvcm0tb3JpZ2luJzogJ3RvcCBjZW50ZXInLFxuICAgICAgICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgY29uc3QgYm9keUVsID0gZG9jdW1lbnQuYm9keTtcblxuICAgICAgICBpZiAoaXNNb2JpbGUpIHtcbiAgICAgICAgICAvKipcbiAgICAgICAgICAgKiBGYWxsYmFjayBmb3IgYnJvd3NlcnMgdGhhdCBkb2VzIG5vdCBzdXBwb3J0IGBtYXgoKWAgKGV4OiBGaXJlZm94KVxuICAgICAgICAgICAqIE5vIG5lZWQgdG8gd29ycnkgYWJvdXQgc3RhdHVzYmFyIHBhZGRpbmcgc2luY2UgZW5naW5lcyBsaWtlIEdlY2tvXG4gICAgICAgICAgICogYXJlIG5vdCB1c2VkIGFzIHRoZSBlbmdpbmUgZm9yIHN0YW5kbG9uZSBDb3Jkb3ZhL0NhcGFjaXRvciBhcHBzXG4gICAgICAgICAgICovXG4gICAgICAgICAgY29uc3QgdHJhbnNmb3JtT2Zmc2V0ID0gIUNTUy5zdXBwb3J0cygnd2lkdGgnLCAnbWF4KDBweCwgMXB4KScpXG4gICAgICAgICAgICA/ICczMHB4J1xuICAgICAgICAgICAgOiAnbWF4KDMwcHgsIHZhcigtLWlvbi1zYWZlLWFyZWEtdG9wKSknO1xuICAgICAgICAgIGNvbnN0IG1vZGFsVHJhbnNmb3JtID0gaGFzQ2FyZE1vZGFsID8gJy0xMHB4JyA6IHRyYW5zZm9ybU9mZnNldDtcbiAgICAgICAgICBjb25zdCB0b1ByZXNlbnRpbmdTY2FsZSA9IHRoaXMuU3dpcGVUb0Nsb3NlRGVmYXVsdHMuTUlOX1BSRVNFTlRJTkdfU0NBTEU7XG4gICAgICAgICAgY29uc3QgZmluYWxUcmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke21vZGFsVHJhbnNmb3JtfSkgc2NhbGUoJHt0b1ByZXNlbnRpbmdTY2FsZX0pYDtcblxuICAgICAgICAgIHByZXNlbnRpbmdBbmltYXRpb25cbiAgICAgICAgICAgIC5hZnRlclN0eWxlcyh7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogZmluYWxUcmFuc2Zvcm0sXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmJlZm9yZUFkZFdyaXRlKCgpID0+IGJvZHlFbC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZC1jb2xvcicsICdibGFjaycpKVxuICAgICAgICAgICAgLmFkZEVsZW1lbnQocHJlc2VudGluZ0VsKVxuICAgICAgICAgICAgLmtleWZyYW1lcyhbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBvZmZzZXQ6IDAsXG4gICAgICAgICAgICAgICAgZmlsdGVyOiAnY29udHJhc3QoMSknLFxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMHB4KSBzY2FsZSgxKScsXG4gICAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnMHB4JyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG9mZnNldDogMSxcbiAgICAgICAgICAgICAgICBmaWx0ZXI6ICdjb250cmFzdCgwLjg1KScsXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBmaW5hbFRyYW5zZm9ybSxcbiAgICAgICAgICAgICAgICBib3JkZXJSYWRpdXM6ICcxMHB4IDEwcHggMCAwJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0pO1xuICAgICAgICAgIGJhc2VBbmltYXRpb24uYWRkQW5pbWF0aW9uKHByZXNlbnRpbmdBbmltYXRpb24pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGJhc2VBbmltYXRpb24uYWRkQW5pbWF0aW9uKGJhY2tkcm9wQW5pbWF0aW9uKTtcbiAgICAgICAgICBpZiAoY3VycmVudEJhY2tkcm9wQW5pbWF0aW9uKSB7XG4gICAgICAgICAgICBiYXNlQW5pbWF0aW9uLmFkZEFuaW1hdGlvbihjdXJyZW50QmFja2Ryb3BBbmltYXRpb24pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghaGFzQ2FyZE1vZGFsKSB7XG4gICAgICAgICAgICB3cmFwcGVyQW5pbWF0aW9uLmZyb21Ubygnb3BhY2l0eScsICcwJywgJzEnKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgdG9QcmVzZW50aW5nU2NhbGUgPSBoYXNDYXJkTW9kYWxcbiAgICAgICAgICAgICAgPyB0aGlzLlN3aXBlVG9DbG9zZURlZmF1bHRzLk1JTl9QUkVTRU5USU5HX1NDQUxFXG4gICAgICAgICAgICAgIDogMTtcbiAgICAgICAgICAgIGNvbnN0IGZpbmFsVHJhbnNmb3JtID0gYHRyYW5zbGF0ZVkoLTEwcHgpIHNjYWxlKCR7dG9QcmVzZW50aW5nU2NhbGV9KWA7XG5cbiAgICAgICAgICAgIHByZXNlbnRpbmdBbmltYXRpb25cbiAgICAgICAgICAgICAgLmFmdGVyU3R5bGVzKHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IGZpbmFsVHJhbnNmb3JtLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAuYWRkRWxlbWVudChwcmVzZW50aW5nRWwucXVlcnlTZWxlY3RvcignLm1vZGFsLXdyYXBwZXInKSEpXG4gICAgICAgICAgICAgIC5rZXlmcmFtZXMoW1xuICAgICAgICAgICAgICAgIHsgb2Zmc2V0OiAwLCBmaWx0ZXI6ICdjb250cmFzdCgxKScsIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCkgc2NhbGUoMSknIH0sXG4gICAgICAgICAgICAgICAgeyBvZmZzZXQ6IDEsIGZpbHRlcjogJ2NvbnRyYXN0KDAuODUpJywgdHJhbnNmb3JtOiBmaW5hbFRyYW5zZm9ybSB9LFxuICAgICAgICAgICAgICBdKTtcblxuICAgICAgICAgICAgY29uc3Qgc2hhZG93QW5pbWF0aW9uID0gdGhpcy5hbmltYXRpb25DdHJsXG4gICAgICAgICAgICAgIC5jcmVhdGUoKVxuICAgICAgICAgICAgICAuYWZ0ZXJTdHlsZXMoe1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogZmluYWxUcmFuc2Zvcm0sXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC5hZGRFbGVtZW50KHByZXNlbnRpbmdFbC5xdWVyeVNlbGVjdG9yKCcubW9kYWwtc2hhZG93JykhKVxuICAgICAgICAgICAgICAua2V5ZnJhbWVzKFtcbiAgICAgICAgICAgICAgICB7IG9mZnNldDogMCwgb3BhY2l0eTogJzEnLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDApIHNjYWxlKDEpJyB9LFxuICAgICAgICAgICAgICAgIHsgb2Zmc2V0OiAxLCBvcGFjaXR5OiAnMCcsIHRyYW5zZm9ybTogZmluYWxUcmFuc2Zvcm0gfSxcbiAgICAgICAgICAgICAgXSk7XG5cbiAgICAgICAgICAgIGJhc2VBbmltYXRpb24uYWRkQW5pbWF0aW9uKFtwcmVzZW50aW5nQW5pbWF0aW9uLCBzaGFkb3dBbmltYXRpb25dKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJhc2VBbmltYXRpb24uYWRkQW5pbWF0aW9uKGJhY2tkcm9wQW5pbWF0aW9uKTtcbiAgICAgICAgaWYgKGN1cnJlbnRCYWNrZHJvcEFuaW1hdGlvbikge1xuICAgICAgICAgIGJhc2VBbmltYXRpb24uYWRkQW5pbWF0aW9uKGN1cnJlbnRCYWNrZHJvcEFuaW1hdGlvbik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGJhc2VBbmltYXRpb247XG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBsZWF2ZUFuaW1hdGlvbihjdXJyZW50QmFja2Ryb3A/OiBIVE1MSW9uQmFja2Ryb3BFbGVtZW50KTogQW5pbWF0aW9uQnVpbGRlciB7XG4gICAgcmV0dXJuIChiYXNlRWw6IEhUTUxFbGVtZW50LCBwcmVzZW50aW5nRWw/OiBIVE1MRWxlbWVudCk6IEFuaW1hdGlvbiA9PiB7XG4gICAgICBjb25zdCBiYWNrZHJvcEFuaW1hdGlvbiA9IHRoaXMuYW5pbWF0aW9uQ3RybFxuICAgICAgICAuY3JlYXRlKClcbiAgICAgICAgLmFkZEVsZW1lbnQoYmFzZUVsLnF1ZXJ5U2VsZWN0b3IoJ2lvbi1iYWNrZHJvcCcpISlcbiAgICAgICAgLmZyb21Ubygnb3BhY2l0eScsICd2YXIoLS1iYWNrZHJvcC1vcGFjaXR5KScsIDAuMCk7XG5cbiAgICAgIGNvbnN0IHdyYXBwZXJBbmltYXRpb24gPSB0aGlzLmFuaW1hdGlvbkN0cmxcbiAgICAgICAgLmNyZWF0ZSgpXG4gICAgICAgIC5hZGRFbGVtZW50KGJhc2VFbC5xdWVyeVNlbGVjdG9yQWxsKCcubW9kYWwtd3JhcHBlciwgLm1vZGFsLXNoYWRvdycpISlcbiAgICAgICAgLmJlZm9yZVN0eWxlcyh7IG9wYWNpdHk6IDEgfSlcbiAgICAgICAgLmZyb21UbygndHJhbnNmb3JtJywgJ3RyYW5zbGF0ZVkoMHZoKScsICd0cmFuc2xhdGVZKDEwMHZoKScpO1xuXG4gICAgICBjb25zdCBiYXNlQW5pbWF0aW9uID0gdGhpcy5hbmltYXRpb25DdHJsXG4gICAgICAgIC5jcmVhdGUoKVxuICAgICAgICAuYWRkRWxlbWVudChiYXNlRWwpXG4gICAgICAgIC5lYXNpbmcodGhpcy5lYXNpbmdMZWF2ZSlcbiAgICAgICAgLmR1cmF0aW9uKHRoaXMuZHVyYXRpb24pXG4gICAgICAgIC5hZGRBbmltYXRpb24od3JhcHBlckFuaW1hdGlvbik7XG5cbiAgICAgIGxldCBjdXJyZW50QmFja2Ryb3BBbmltYXRpb246IEFuaW1hdGlvbjtcbiAgICAgIGlmIChjdXJyZW50QmFja2Ryb3ApIHtcbiAgICAgICAgY3VycmVudEJhY2tkcm9wQW5pbWF0aW9uID0gdGhpcy5hbmltYXRpb25DdHJsXG4gICAgICAgICAgLmNyZWF0ZSgpXG4gICAgICAgICAgLmFkZEVsZW1lbnQoY3VycmVudEJhY2tkcm9wKVxuICAgICAgICAgIC5mcm9tVG8oJ29wYWNpdHknLCAwLjAxLCAndmFyKC0tYmFja2Ryb3Atb3BhY2l0eSknKVxuICAgICAgICAgIC5hZnRlclN0eWxlcyh7IG9wYWNpdHk6ICd2YXIoLS1iYWNrZHJvcC1vcGFjaXR5KScgfSk7IC8vRW5zdXJlcyBiYWNrZHJvcCBpcyByZXNldCB0byBkZWZhdWx0IG9wYWNpdHkgYWZ0ZXIgc3dpcGUgdG8gY2xvc2VcbiAgICAgIH1cblxuICAgICAgaWYgKHByZXNlbnRpbmdFbCkge1xuICAgICAgICBjb25zdCBpc01vYmlsZSA9ICF0aGlzLnBsYXRmb3JtLmlzUGhhYmxldE9yQmlnZ2VyKCk7XG4gICAgICAgIGNvbnN0IGhhc0NhcmRNb2RhbCA9XG4gICAgICAgICAgcHJlc2VudGluZ0VsLnRhZ05hbWUgPT09ICdJT04tTU9EQUwnICYmXG4gICAgICAgICAgKHByZXNlbnRpbmdFbCBhcyBIVE1MSW9uTW9kYWxFbGVtZW50KS5wcmVzZW50aW5nRWxlbWVudCAhPT0gdW5kZWZpbmVkO1xuXG4gICAgICAgIGNvbnN0IHByZXNlbnRpbmdBbmltYXRpb24gPSB0aGlzLmFuaW1hdGlvbkN0cmxcbiAgICAgICAgICAuY3JlYXRlKClcbiAgICAgICAgICAuYmVmb3JlQ2xlYXJTdHlsZXMoWyd0cmFuc2Zvcm0nXSlcbiAgICAgICAgICAuYWZ0ZXJDbGVhclN0eWxlcyhbJ3RyYW5zZm9ybSddKVxuICAgICAgICAgIC5vbkZpbmlzaCgoY3VycmVudFN0ZXApID0+IHtcbiAgICAgICAgICAgIC8vIG9ubHkgcmVzZXQgYmFja2dyb3VuZCBjb2xvciBpZiB0aGlzIGlzIHRoZSBsYXN0IGNhcmQtc3R5bGUgbW9kYWxcbiAgICAgICAgICAgIGlmIChjdXJyZW50U3RlcCAhPT0gMSkge1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHByZXNlbnRpbmdFbC5zdHlsZS5zZXRQcm9wZXJ0eSgnb3ZlcmZsb3cnLCAnJyk7XG5cbiAgICAgICAgICAgIGNvbnN0IG51bU1vZGFscyA9IEFycmF5LmZyb20oYm9keUVsLnF1ZXJ5U2VsZWN0b3JBbGwoJ2lvbi1tb2RhbCcpKS5maWx0ZXIoXG4gICAgICAgICAgICAgIChtKSA9PiBtLnByZXNlbnRpbmdFbGVtZW50ICE9PSB1bmRlZmluZWRcbiAgICAgICAgICAgICkubGVuZ3RoO1xuICAgICAgICAgICAgaWYgKG51bU1vZGFscyA8PSAxKSB7XG4gICAgICAgICAgICAgIGJvZHlFbC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZC1jb2xvcicsICcnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBib2R5RWwgPSBkb2N1bWVudC5ib2R5O1xuXG4gICAgICAgIGlmIChpc01vYmlsZSkge1xuICAgICAgICAgIGNvbnN0IHRyYW5zZm9ybU9mZnNldCA9ICFDU1Muc3VwcG9ydHMoJ3dpZHRoJywgJ21heCgwcHgsIDFweCknKVxuICAgICAgICAgICAgPyAnMzBweCdcbiAgICAgICAgICAgIDogJ21heCgzMHB4LCB2YXIoLS1pb24tc2FmZS1hcmVhLXRvcCkpJztcbiAgICAgICAgICBjb25zdCBtb2RhbFRyYW5zZm9ybSA9IGhhc0NhcmRNb2RhbCA/ICctMTBweCcgOiB0cmFuc2Zvcm1PZmZzZXQ7XG4gICAgICAgICAgY29uc3QgdG9QcmVzZW50aW5nU2NhbGUgPSB0aGlzLlN3aXBlVG9DbG9zZURlZmF1bHRzLk1JTl9QUkVTRU5USU5HX1NDQUxFO1xuICAgICAgICAgIGNvbnN0IGZpbmFsVHJhbnNmb3JtID0gYHRyYW5zbGF0ZVkoJHttb2RhbFRyYW5zZm9ybX0pIHNjYWxlKCR7dG9QcmVzZW50aW5nU2NhbGV9KWA7XG5cbiAgICAgICAgICBwcmVzZW50aW5nQW5pbWF0aW9uLmFkZEVsZW1lbnQocHJlc2VudGluZ0VsKS5rZXlmcmFtZXMoW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBvZmZzZXQ6IDAsXG4gICAgICAgICAgICAgIGZpbHRlcjogJ2NvbnRyYXN0KDAuODUpJyxcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBmaW5hbFRyYW5zZm9ybSxcbiAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnMTBweCAxMHB4IDAgMCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBvZmZzZXQ6IDEsXG4gICAgICAgICAgICAgIGZpbHRlcjogJ2NvbnRyYXN0KDEpJyxcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwcHgpIHNjYWxlKDEpJyxcbiAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiAnMHB4JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSk7XG5cbiAgICAgICAgICBiYXNlQW5pbWF0aW9uLmFkZEFuaW1hdGlvbihwcmVzZW50aW5nQW5pbWF0aW9uKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBiYXNlQW5pbWF0aW9uLmFkZEFuaW1hdGlvbihiYWNrZHJvcEFuaW1hdGlvbik7XG4gICAgICAgICAgaWYgKGN1cnJlbnRCYWNrZHJvcEFuaW1hdGlvbikge1xuICAgICAgICAgICAgYmFzZUFuaW1hdGlvbi5hZGRBbmltYXRpb24oY3VycmVudEJhY2tkcm9wQW5pbWF0aW9uKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoIWhhc0NhcmRNb2RhbCkge1xuICAgICAgICAgICAgd3JhcHBlckFuaW1hdGlvbi5mcm9tVG8oJ29wYWNpdHknLCAnMScsICcwJyk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHRvUHJlc2VudGluZ1NjYWxlID0gaGFzQ2FyZE1vZGFsXG4gICAgICAgICAgICAgID8gdGhpcy5Td2lwZVRvQ2xvc2VEZWZhdWx0cy5NSU5fUFJFU0VOVElOR19TQ0FMRVxuICAgICAgICAgICAgICA6IDE7XG4gICAgICAgICAgICBjb25zdCBmaW5hbFRyYW5zZm9ybSA9IGB0cmFuc2xhdGVZKC0xMHB4KSBzY2FsZSgke3RvUHJlc2VudGluZ1NjYWxlfSlgO1xuXG4gICAgICAgICAgICBwcmVzZW50aW5nQW5pbWF0aW9uXG4gICAgICAgICAgICAgIC5hZGRFbGVtZW50KHByZXNlbnRpbmdFbC5xdWVyeVNlbGVjdG9yKCcubW9kYWwtd3JhcHBlcicpISlcbiAgICAgICAgICAgICAgLmFmdGVyU3R5bGVzKHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGUzZCgwLCAwLCAwKScsXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC5rZXlmcmFtZXMoW1xuICAgICAgICAgICAgICAgIHsgb2Zmc2V0OiAwLCBmaWx0ZXI6ICdjb250cmFzdCgwLjg1KScsIHRyYW5zZm9ybTogZmluYWxUcmFuc2Zvcm0gfSxcbiAgICAgICAgICAgICAgICB7IG9mZnNldDogMSwgZmlsdGVyOiAnY29udHJhc3QoMSknLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDApIHNjYWxlKDEpJyB9LFxuICAgICAgICAgICAgICBdKTtcblxuICAgICAgICAgICAgY29uc3Qgc2hhZG93QW5pbWF0aW9uID0gdGhpcy5hbmltYXRpb25DdHJsXG4gICAgICAgICAgICAgIC5jcmVhdGUoKVxuICAgICAgICAgICAgICAuYWRkRWxlbWVudChwcmVzZW50aW5nRWwucXVlcnlTZWxlY3RvcignLm1vZGFsLXNoYWRvdycpISlcbiAgICAgICAgICAgICAgLmFmdGVyU3R5bGVzKHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDApIHNjYWxlKDEpJyxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgLmtleWZyYW1lcyhbXG4gICAgICAgICAgICAgICAgeyBvZmZzZXQ6IDAsIG9wYWNpdHk6ICcwJywgdHJhbnNmb3JtOiBmaW5hbFRyYW5zZm9ybSB9LFxuICAgICAgICAgICAgICAgIHsgb2Zmc2V0OiAxLCBvcGFjaXR5OiAnMScsIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCkgc2NhbGUoMSknIH0sXG4gICAgICAgICAgICAgIF0pO1xuXG4gICAgICAgICAgICBiYXNlQW5pbWF0aW9uLmFkZEFuaW1hdGlvbihbcHJlc2VudGluZ0FuaW1hdGlvbiwgc2hhZG93QW5pbWF0aW9uXSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBiYXNlQW5pbWF0aW9uLmFkZEFuaW1hdGlvbihiYWNrZHJvcEFuaW1hdGlvbik7XG4gICAgICAgIGlmIChjdXJyZW50QmFja2Ryb3BBbmltYXRpb24pIHtcbiAgICAgICAgICBiYXNlQW5pbWF0aW9uLmFkZEFuaW1hdGlvbihjdXJyZW50QmFja2Ryb3BBbmltYXRpb24pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBiYXNlQW5pbWF0aW9uO1xuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
250
|
+
/** @nocollapse */ ModalAnimationBuilderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ModalAnimationBuilderService, deps: [{ token: i1.AnimationController }, { token: i2.PlatformService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
251
|
+
/** @nocollapse */ ModalAnimationBuilderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ModalAnimationBuilderService, providedIn: 'root' });
|
|
252
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ModalAnimationBuilderService, decorators: [{
|
|
253
|
+
type: Injectable,
|
|
254
|
+
args: [{ providedIn: 'root' }]
|
|
255
|
+
}], ctorParameters: function () { return [{ type: i1.AnimationController }, { type: i2.PlatformService }]; } });
|
|
256
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtYW5pbWF0aW9uLWJ1aWxkZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9zZXJ2aWNlcy9tb2RhbC1hbmltYXRpb24tYnVpbGRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUErQixtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7QUFHcEUsTUFBTSxPQUFPLDRCQUE0QjtJQUN2QyxZQUFvQixhQUFrQyxFQUFVLFFBQXlCO1FBQXJFLGtCQUFhLEdBQWIsYUFBYSxDQUFxQjtRQUFVLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBRXhFLGdCQUFXLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ2hELGdCQUFXLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQy9DLGFBQVEsR0FBRyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUN4Qyx5QkFBb0IsR0FBRztZQUN0QyxvQkFBb0IsRUFBRSxJQUFJO1NBQzNCLENBQUM7SUFQMEYsQ0FBQztJQVN0RixjQUFjLENBQUMsZUFBd0M7UUFDNUQsT0FBTyxDQUFDLE1BQW1CLEVBQUUsWUFBMEIsRUFBYSxFQUFFO1lBQ3BFLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGFBQWE7aUJBQ3pDLE1BQU0sRUFBRTtpQkFDUixVQUFVLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUUsQ0FBQztpQkFD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QUFDOzRCQUNULEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUU7NEJBQ3RELEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSx3QkFBd0IsRUFBRTt5QkFDakUsQ0FBQyxDQUFDO3dCQUVMLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDO3FCQUNwRTtpQkFDRjthQUNGO2lCQUFNO2dCQUNMLGFBQWEsQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDOUMsSUFBSSx3QkFBd0IsRUFBRTtvQkFDNUIsYUFBYSxDQUFDLFlBQVksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO2lCQUN0RDthQUNGO1lBRUQsT0FBTyxhQUFhLENBQUM7UUFDdkIsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs7NklBM1FVLDRCQUE0QjtpSkFBNUIsNEJBQTRCLGNBRGYsTUFBTTs0RkFDbkIsNEJBQTRCO2tCQUR4QyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFuaW1hdGlvbiwgQW5pbWF0aW9uQnVpbGRlciwgQW5pbWF0aW9uQ29udHJvbGxlciB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcblxuaW1wb3J0IHsgS2lyYnlBbmltYXRpb24gfSBmcm9tICcuLi8uLi8uLi9hbmltYXRpb24va2lyYnktYW5pbWF0aW9uJztcbmltcG9ydCB7IFBsYXRmb3JtU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2hlbHBlcnMvcGxhdGZvcm0uc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgTW9kYWxBbmltYXRpb25CdWlsZGVyU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYW5pbWF0aW9uQ3RybDogQW5pbWF0aW9uQ29udHJvbGxlciwgcHJpdmF0ZSBwbGF0Zm9ybTogUGxhdGZvcm1TZXJ2aWNlKSB7fVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgZWFzaW5nRW50ZXIgPSBLaXJieUFuaW1hdGlvbi5FYXNpbmcubW9kYWwuZW50ZXI7XG4gIHByaXZhdGUgcmVhZG9ubHkgZWFzaW5nTGVhdmUgPSBLaXJieUFuaW1hdGlvbi5FYXNpbmcubW9kYWwuZXhpdDtcbiAgcHJpdmF0ZSByZWFkb25seSBkdXJhdGlvbiA9IEtpcmJ5QW5pbWF0aW9uLkR1cmF0aW9uLkxPTkc7XG4gIHByaXZhdGUgcmVhZG9ubHkgU3dpcGVUb0Nsb3NlRGVmYXVsdHMgPSB7XG4gICAgTUlOX1BSRVNFTlRJTkdfU0NBTEU6IDAuOTMsXG4gIH07XG5cbiAgcHVibGljIGVudGVyQW5pbWF0aW9uKGN1cnJlbnRCYWNrZHJvcD86IEhUTUxJb25CYWNrZHJvcEVsZW1lbnQpOiBBbmltYXRpb25CdWlsZGVyIHtcbiAgICByZXR1cm4gKGJhc2VFbDogSFRNTEVsZW1lbnQsIHByZXNlbnRpbmdFbD86IEhUTUxFbGVtZW50KTogQW5pbWF0aW9uID0+IHtcbiAgICAgIGNvbnN0IGJhY2tkcm9wQW5pbWF0aW9uID0gdGhpcy5hbmltYXRpb25DdHJsXG4gICAgICAgIC5jcmVhdGUoKVxuICAgICAgICAuYWRkRWxlbWVudChiYXNlRWwucXVlcnlTZWxlY3RvcignaW9uLWJhY2tkcm9wJykhKVxuICAgICAgICAuZnJvbVRvKCdvcGFjaXR5JywgMC4wMSwgJ3ZhcigtLWJhY2tkcm9wLW9wYWNpdHkpJylcbiAgICAgICAgLmJlZm9yZVN0eWxlcyh7XG4gICAgICAgICAgJ3BvaW50ZXItZXZlbnRzJzogJ25vbmUnLFxuICAgICAgICB9KVxuICAgICAgICAuYWZ0ZXJDbGVhclN0eWxlcyhbJ3BvaW50ZXItZXZlbnRzJ10pO1xuXG4gICAgICBjb25zdCB3cmFwcGVyQW5pbWF0aW9uID0gdGhpcy5hbmltYXRpb25DdHJsXG4gICAgICAgIC5jcmVhdGUoKVxuICAgICAgICAuYWRkRWxlbWVudChiYXNlRWwucXVlcnlTZWxlY3RvckFsbCgnLm1vZGFsLXdyYXBwZXIsIC5tb2RhbC1zaGFkb3cnKSEpXG4gICAgICAgIC5iZWZvcmVTdHlsZXMoeyBvcGFjaXR5OiAxIH0pXG4gICAgICAgIC5mcm9tVG8oJ3RyYW5zZm9ybScsICd0cmFuc2xhdGVZKDEwMHZoKScsICd0cmFuc2xhdGVZKDB2aCknKTtcblxuICAgICAgY29uc3QgYmFzZUFuaW1hdGlvbiA9IHRoaXMuYW5pbWF0aW9uQ3RybFxuICAgICAgICAuY3JlYXRlKClcbiAgICAgICAgLmFkZEVsZW1lbnQoYmFzZUVsKVxuICAgICAgICAuZWFzaW5nKHRoaXMuZWFzaW5nRW50ZXIpXG4gICAgICAgIC5kdXJhdGlvbih0aGlzLmR1cmF0aW9uKVxuICAgICAgICAuYWRkQW5pbWF0aW9uKHdyYXBwZXJBbmltYXRpb24pO1xuXG4gICAgICBsZXQgY3VycmVudEJhY2tkcm9wQW5pbWF0aW9uOiBBbmltYXRpb247XG4gICAgICBpZiAoY3VycmVudEJhY2tkcm9wKSB7XG4gICAgICAgIGN1cnJlbnRCYWNrZHJvcEFuaW1hdGlvbiA9IHRoaXMuYW5pbWF0aW9uQ3RybFxuICAgICAgICAgIC5jcmVhdGUoKVxuICAgICAgICAgIC5hZGRFbGVtZW50KGN1cnJlbnRCYWNrZHJvcClcbiAgICAgICAgICAuZnJvbVRvKCdvcGFjaXR5JywgJ3ZhcigtLWJhY2tkcm9wLW9wYWNpdHkpJywgMC4wMSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChwcmVzZW50aW5nRWwpIHtcbiAgICAgICAgY29uc3QgaXNNb2JpbGUgPSAhdGhpcy5wbGF0Zm9ybS5pc1BoYWJsZXRPckJpZ2dlcigpO1xuICAgICAgICBjb25zdCBoYXNDYXJkTW9kYWwgPVxuICAgICAgICAgIHByZXNlbnRpbmdFbC50YWdOYW1lID09PSAnSU9OLU1PREFMJyAmJlxuICAgICAgICAgIChwcmVzZW50aW5nRWwgYXMgSFRNTElvbk1vZGFsRWxlbWVudCkucHJlc2VudGluZ0VsZW1lbnQgIT09IHVuZGVmaW5lZDtcblxuICAgICAgICBjb25zdCBwcmVzZW50aW5nQW5pbWF0aW9uID0gdGhpcy5hbmltYXRpb25DdHJsLmNyZWF0ZSgpLmJlZm9yZVN0eWxlcyh7XG4gICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScsXG4gICAgICAgICAgJ3RyYW5zZm9ybS1vcmlnaW4nOiAndG9wIGNlbnRlcicsXG4gICAgICAgICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxuICAgICAgICB9KTtcblxuICAgICAgICBjb25zdCBib2R5RWwgPSBkb2N1bWVudC5ib2R5O1xuXG4gICAgICAgIGlmIChpc01vYmlsZSkge1xuICAgICAgICAgIC8qKlxuICAgICAgICAgICAqIEZhbGxiYWNrIGZvciBicm93c2VycyB0aGF0IGRvZXMgbm90IHN1cHBvcnQgYG1heCgpYCAoZXg6IEZpcmVmb3gpXG4gICAgICAgICAgICogTm8gbmVlZCB0byB3b3JyeSBhYm91dCBzdGF0dXNiYXIgcGFkZGluZyBzaW5jZSBlbmdpbmVzIGxpa2UgR2Vja29cbiAgICAgICAgICAgKiBhcmUgbm90IHVzZWQgYXMgdGhlIGVuZ2luZSBmb3Igc3RhbmRsb25lIENvcmRvdmEvQ2FwYWNpdG9yIGFwcHNcbiAgICAgICAgICAgKi9cbiAgICAgICAgICBjb25zdCB0cmFuc2Zvcm1PZmZzZXQgPSAhQ1NTLnN1cHBvcnRzKCd3aWR0aCcsICdtYXgoMHB4LCAxcHgpJylcbiAgICAgICAgICAgID8gJzMwcHgnXG4gICAgICAgICAgICA6ICdtYXgoMzBweCwgdmFyKC0taW9uLXNhZmUtYXJlYS10b3ApKSc7XG4gICAgICAgICAgY29uc3QgbW9kYWxUcmFuc2Zvcm0gPSBoYXNDYXJkTW9kYWwgPyAnLTEwcHgnIDogdHJhbnNmb3JtT2Zmc2V0O1xuICAgICAgICAgIGNvbnN0IHRvUHJlc2VudGluZ1NjYWxlID0gdGhpcy5Td2lwZVRvQ2xvc2VEZWZhdWx0cy5NSU5fUFJFU0VOVElOR19TQ0FMRTtcbiAgICAgICAgICBjb25zdCBmaW5hbFRyYW5zZm9ybSA9IGB0cmFuc2xhdGVZKCR7bW9kYWxUcmFuc2Zvcm19KSBzY2FsZSgke3RvUHJlc2VudGluZ1NjYWxlfSlgO1xuXG4gICAgICAgICAgcHJlc2VudGluZ0FuaW1hdGlvblxuICAgICAgICAgICAgLmFmdGVyU3R5bGVzKHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiBmaW5hbFRyYW5zZm9ybSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuYmVmb3JlQWRkV3JpdGUoKCkgPT4gYm9keUVsLnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWNvbG9yJywgJ2JsYWNrJykpXG4gICAgICAgICAgICAuYWRkRWxlbWVudChwcmVzZW50aW5nRWwpXG4gICAgICAgICAgICAua2V5ZnJhbWVzKFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG9mZnNldDogMCxcbiAgICAgICAgICAgICAgICBmaWx0ZXI6ICdjb250cmFzdCgxKScsXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwcHgpIHNjYWxlKDEpJyxcbiAgICAgICAgICAgICAgICBib3JkZXJSYWRpdXM6ICcwcHgnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgb2Zmc2V0OiAxLFxuICAgICAgICAgICAgICAgIGZpbHRlcjogJ2NvbnRyYXN0KDAuODUpJyxcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IGZpbmFsVHJhbnNmb3JtLFxuICAgICAgICAgICAgICAgIGJvcmRlclJhZGl1czogJzEwcHggMTBweCAwIDAnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSk7XG4gICAgICAgICAgYmFzZUFuaW1hdGlvbi5hZGRBbmltYXRpb24ocHJlc2VudGluZ0FuaW1hdGlvbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgYmFzZUFuaW1hdGlvbi5hZGRBbmltYXRpb24oYmFja2Ryb3BBbmltYXRpb24pO1xuICAgICAgICAgIGlmIChjdXJyZW50QmFja2Ryb3BBbmltYXRpb24pIHtcbiAgICAgICAgICAgIGJhc2VBbmltYXRpb24uYWRkQW5pbWF0aW9uKGN1cnJlbnRCYWNrZHJvcEFuaW1hdGlvbik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKCFoYXNDYXJkTW9kYWwpIHtcbiAgICAgICAgICAgIHdyYXBwZXJBbmltYXRpb24uZnJvbVRvKCdvcGFjaXR5JywgJzAnLCAnMScpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB0b1ByZXNlbnRpbmdTY2FsZSA9IGhhc0NhcmRNb2RhbFxuICAgICAgICAgICAgICA/IHRoaXMuU3dpcGVUb0Nsb3NlRGVmYXVsdHMuTUlOX1BSRVNFTlRJTkdfU0NBTEVcbiAgICAgICAgICAgICAgOiAxO1xuICAgICAgICAgICAgY29uc3QgZmluYWxUcmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgtMTBweCkgc2NhbGUoJHt0b1ByZXNlbnRpbmdTY2FsZX0pYDtcblxuICAgICAgICAgICAgcHJlc2VudGluZ0FuaW1hdGlvblxuICAgICAgICAgICAgICAuYWZ0ZXJTdHlsZXMoe1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogZmluYWxUcmFuc2Zvcm0sXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC5hZGRFbGVtZW50KHByZXNlbnRpbmdFbC5xdWVyeVNlbGVjdG9yKCcubW9kYWwtd3JhcHBlcicpISlcbiAgICAgICAgICAgICAgLmtleWZyYW1lcyhbXG4gICAgICAgICAgICAgICAgeyBvZmZzZXQ6IDAsIGZpbHRlcjogJ2NvbnRyYXN0KDEpJywgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKSBzY2FsZSgxKScgfSxcbiAgICAgICAgICAgICAgICB7IG9mZnNldDogMSwgZmlsdGVyOiAnY29udHJhc3QoMC44NSknLCB0cmFuc2Zvcm06IGZpbmFsVHJhbnNmb3JtIH0sXG4gICAgICAgICAgICAgIF0pO1xuXG4gICAgICAgICAgICBjb25zdCBzaGFkb3dBbmltYXRpb24gPSB0aGlzLmFuaW1hdGlvbkN0cmxcbiAgICAgICAgICAgICAgLmNyZWF0ZSgpXG4gICAgICAgICAgICAgIC5hZnRlclN0eWxlcyh7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBmaW5hbFRyYW5zZm9ybSxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgLmFkZEVsZW1lbnQocHJlc2VudGluZ0VsLnF1ZXJ5U2VsZWN0b3IoJy5tb2RhbC1zaGFkb3cnKSEpXG4gICAgICAgICAgICAgIC5rZXlmcmFtZXMoW1xuICAgICAgICAgICAgICAgIHsgb2Zmc2V0OiAwLCBvcGFjaXR5OiAnMScsIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCkgc2NhbGUoMSknIH0sXG4gICAgICAgICAgICAgICAgeyBvZmZzZXQ6IDEsIG9wYWNpdHk6ICcwJywgdHJhbnNmb3JtOiBmaW5hbFRyYW5zZm9ybSB9LFxuICAgICAgICAgICAgICBdKTtcblxuICAgICAgICAgICAgYmFzZUFuaW1hdGlvbi5hZGRBbmltYXRpb24oW3ByZXNlbnRpbmdBbmltYXRpb24sIHNoYWRvd0FuaW1hdGlvbl0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYmFzZUFuaW1hdGlvbi5hZGRBbmltYXRpb24oYmFja2Ryb3BBbmltYXRpb24pO1xuICAgICAgICBpZiAoY3VycmVudEJhY2tkcm9wQW5pbWF0aW9uKSB7XG4gICAgICAgICAgYmFzZUFuaW1hdGlvbi5hZGRBbmltYXRpb24oY3VycmVudEJhY2tkcm9wQW5pbWF0aW9uKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gYmFzZUFuaW1hdGlvbjtcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGxlYXZlQW5pbWF0aW9uKGN1cnJlbnRCYWNrZHJvcD86IEhUTUxJb25CYWNrZHJvcEVsZW1lbnQpOiBBbmltYXRpb25CdWlsZGVyIHtcbiAgICByZXR1cm4gKGJhc2VFbDogSFRNTEVsZW1lbnQsIHByZXNlbnRpbmdFbD86IEhUTUxFbGVtZW50KTogQW5pbWF0aW9uID0+IHtcbiAgICAgIGNvbnN0IGJhY2tkcm9wQW5pbWF0aW9uID0gdGhpcy5hbmltYXRpb25DdHJsXG4gICAgICAgIC5jcmVhdGUoKVxuICAgICAgICAuYWRkRWxlbWVudChiYXNlRWwucXVlcnlTZWxlY3RvcignaW9uLWJhY2tkcm9wJykhKVxuICAgICAgICAuZnJvbVRvKCdvcGFjaXR5JywgJ3ZhcigtLWJhY2tkcm9wLW9wYWNpdHkpJywgMC4wKTtcblxuICAgICAgY29uc3Qgd3JhcHBlckFuaW1hdGlvbiA9IHRoaXMuYW5pbWF0aW9uQ3RybFxuICAgICAgICAuY3JlYXRlKClcbiAgICAgICAgLmFkZEVsZW1lbnQoYmFzZUVsLnF1ZXJ5U2VsZWN0b3JBbGwoJy5tb2RhbC13cmFwcGVyLCAubW9kYWwtc2hhZG93JykhKVxuICAgICAgICAuYmVmb3JlU3R5bGVzKHsgb3BhY2l0eTogMSB9KVxuICAgICAgICAuZnJvbVRvKCd0cmFuc2Zvcm0nLCAndHJhbnNsYXRlWSgwdmgpJywgJ3RyYW5zbGF0ZVkoMTAwdmgpJyk7XG5cbiAgICAgIGNvbnN0IGJhc2VBbmltYXRpb24gPSB0aGlzLmFuaW1hdGlvbkN0cmxcbiAgICAgICAgLmNyZWF0ZSgpXG4gICAgICAgIC5hZGRFbGVtZW50KGJhc2VFbClcbiAgICAgICAgLmVhc2luZyh0aGlzLmVhc2luZ0xlYXZlKVxuICAgICAgICAuZHVyYXRpb24odGhpcy5kdXJhdGlvbilcbiAgICAgICAgLmFkZEFuaW1hdGlvbih3cmFwcGVyQW5pbWF0aW9uKTtcblxuICAgICAgbGV0IGN1cnJlbnRCYWNrZHJvcEFuaW1hdGlvbjogQW5pbWF0aW9uO1xuICAgICAgaWYgKGN1cnJlbnRCYWNrZHJvcCkge1xuICAgICAgICBjdXJyZW50QmFja2Ryb3BBbmltYXRpb24gPSB0aGlzLmFuaW1hdGlvbkN0cmxcbiAgICAgICAgICAuY3JlYXRlKClcbiAgICAgICAgICAuYWRkRWxlbWVudChjdXJyZW50QmFja2Ryb3ApXG4gICAgICAgICAgLmZyb21Ubygnb3BhY2l0eScsIDAuMDEsICd2YXIoLS1iYWNrZHJvcC1vcGFjaXR5KScpXG4gICAgICAgICAgLmFmdGVyU3R5bGVzKHsgb3BhY2l0eTogJ3ZhcigtLWJhY2tkcm9wLW9wYWNpdHkpJyB9KTsgLy9FbnN1cmVzIGJhY2tkcm9wIGlzIHJlc2V0IHRvIGRlZmF1bHQgb3BhY2l0eSBhZnRlciBzd2lwZSB0byBjbG9zZVxuICAgICAgfVxuXG4gICAgICBpZiAocHJlc2VudGluZ0VsKSB7XG4gICAgICAgIGNvbnN0IGlzTW9iaWxlID0gIXRoaXMucGxhdGZvcm0uaXNQaGFibGV0T3JCaWdnZXIoKTtcbiAgICAgICAgY29uc3QgaGFzQ2FyZE1vZGFsID1cbiAgICAgICAgICBwcmVzZW50aW5nRWwudGFnTmFtZSA9PT0gJ0lPTi1NT0RBTCcgJiZcbiAgICAgICAgICAocHJlc2VudGluZ0VsIGFzIEhUTUxJb25Nb2RhbEVsZW1lbnQpLnByZXNlbnRpbmdFbGVtZW50ICE9PSB1bmRlZmluZWQ7XG5cbiAgICAgICAgY29uc3QgcHJlc2VudGluZ0FuaW1hdGlvbiA9IHRoaXMuYW5pbWF0aW9uQ3RybFxuICAgICAgICAgIC5jcmVhdGUoKVxuICAgICAgICAgIC5iZWZvcmVDbGVhclN0eWxlcyhbJ3RyYW5zZm9ybSddKVxuICAgICAgICAgIC5hZnRlckNsZWFyU3R5bGVzKFsndHJhbnNmb3JtJ10pXG4gICAgICAgICAgLm9uRmluaXNoKChjdXJyZW50U3RlcCkgPT4ge1xuICAgICAgICAgICAgLy8gb25seSByZXNldCBiYWNrZ3JvdW5kIGNvbG9yIGlmIHRoaXMgaXMgdGhlIGxhc3QgY2FyZC1zdHlsZSBtb2RhbFxuICAgICAgICAgICAgaWYgKGN1cnJlbnRTdGVwICE9PSAxKSB7XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcHJlc2VudGluZ0VsLnN0eWxlLnNldFByb3BlcnR5KCdvdmVyZmxvdycsICcnKTtcblxuICAgICAgICAgICAgY29uc3QgbnVtTW9kYWxzID0gQXJyYXkuZnJvbShib2R5RWwucXVlcnlTZWxlY3RvckFsbCgnaW9uLW1vZGFsJykpLmZpbHRlcihcbiAgICAgICAgICAgICAgKG0pID0+IG0ucHJlc2VudGluZ0VsZW1lbnQgIT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgKS5sZW5ndGg7XG4gICAgICAgICAgICBpZiAobnVtTW9kYWxzIDw9IDEpIHtcbiAgICAgICAgICAgICAgYm9keUVsLnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLWNvbG9yJywgJycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuXG4gICAgICAgIGNvbnN0IGJvZHlFbCA9IGRvY3VtZW50LmJvZHk7XG5cbiAgICAgICAgaWYgKGlzTW9iaWxlKSB7XG4gICAgICAgICAgY29uc3QgdHJhbnNmb3JtT2Zmc2V0ID0gIUNTUy5zdXBwb3J0cygnd2lkdGgnLCAnbWF4KDBweCwgMXB4KScpXG4gICAgICAgICAgICA/ICczMHB4J1xuICAgICAgICAgICAgOiAnbWF4KDMwcHgsIHZhcigtLWlvbi1zYWZlLWFyZWEtdG9wKSknO1xuICAgICAgICAgIGNvbnN0IG1vZGFsVHJhbnNmb3JtID0gaGFzQ2FyZE1vZGFsID8gJy0xMHB4JyA6IHRyYW5zZm9ybU9mZnNldDtcbiAgICAgICAgICBjb25zdCB0b1ByZXNlbnRpbmdTY2FsZSA9IHRoaXMuU3dpcGVUb0Nsb3NlRGVmYXVsdHMuTUlOX1BSRVNFTlRJTkdfU0NBTEU7XG4gICAgICAgICAgY29uc3QgZmluYWxUcmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke21vZGFsVHJhbnNmb3JtfSkgc2NhbGUoJHt0b1ByZXNlbnRpbmdTY2FsZX0pYDtcblxuICAgICAgICAgIHByZXNlbnRpbmdBbmltYXRpb24uYWRkRWxlbWVudChwcmVzZW50aW5nRWwpLmtleWZyYW1lcyhbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG9mZnNldDogMCxcbiAgICAgICAgICAgICAgZmlsdGVyOiAnY29udHJhc3QoMC44NSknLFxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IGZpbmFsVHJhbnNmb3JtLFxuICAgICAgICAgICAgICBib3JkZXJSYWRpdXM6ICcxMHB4IDEwcHggMCAwJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG9mZnNldDogMSxcbiAgICAgICAgICAgICAgZmlsdGVyOiAnY29udHJhc3QoMSknLFxuICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVZKDBweCkgc2NhbGUoMSknLFxuICAgICAgICAgICAgICBib3JkZXJSYWRpdXM6ICcwcHgnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdKTtcblxuICAgICAgICAgIGJhc2VBbmltYXRpb24uYWRkQW5pbWF0aW9uKHByZXNlbnRpbmdBbmltYXRpb24pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGJhc2VBbmltYXRpb24uYWRkQW5pbWF0aW9uKGJhY2tkcm9wQW5pbWF0aW9uKTtcbiAgICAgICAgICBpZiAoY3VycmVudEJhY2tkcm9wQW5pbWF0aW9uKSB7XG4gICAgICAgICAgICBiYXNlQW5pbWF0aW9uLmFkZEFuaW1hdGlvbihjdXJyZW50QmFja2Ryb3BBbmltYXRpb24pO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghaGFzQ2FyZE1vZGFsKSB7XG4gICAgICAgICAgICB3cmFwcGVyQW5pbWF0aW9uLmZyb21Ubygnb3BhY2l0eScsICcxJywgJzAnKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgdG9QcmVzZW50aW5nU2NhbGUgPSBoYXNDYXJkTW9kYWxcbiAgICAgICAgICAgICAgPyB0aGlzLlN3aXBlVG9DbG9zZURlZmF1bHRzLk1JTl9QUkVTRU5USU5HX1NDQUxFXG4gICAgICAgICAgICAgIDogMTtcbiAgICAgICAgICAgIGNvbnN0IGZpbmFsVHJhbnNmb3JtID0gYHRyYW5zbGF0ZVkoLTEwcHgpIHNjYWxlKCR7dG9QcmVzZW50aW5nU2NhbGV9KWA7XG5cbiAgICAgICAgICAgIHByZXNlbnRpbmdBbmltYXRpb25cbiAgICAgICAgICAgICAgLmFkZEVsZW1lbnQocHJlc2VudGluZ0VsLnF1ZXJ5U2VsZWN0b3IoJy5tb2RhbC13cmFwcGVyJykhKVxuICAgICAgICAgICAgICAuYWZ0ZXJTdHlsZXMoe1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZTNkKDAsIDAsIDApJyxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgLmtleWZyYW1lcyhbXG4gICAgICAgICAgICAgICAgeyBvZmZzZXQ6IDAsIGZpbHRlcjogJ2NvbnRyYXN0KDAuODUpJywgdHJhbnNmb3JtOiBmaW5hbFRyYW5zZm9ybSB9LFxuICAgICAgICAgICAgICAgIHsgb2Zmc2V0OiAxLCBmaWx0ZXI6ICdjb250cmFzdCgxKScsIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCkgc2NhbGUoMSknIH0sXG4gICAgICAgICAgICAgIF0pO1xuXG4gICAgICAgICAgICBjb25zdCBzaGFkb3dBbmltYXRpb24gPSB0aGlzLmFuaW1hdGlvbkN0cmxcbiAgICAgICAgICAgICAgLmNyZWF0ZSgpXG4gICAgICAgICAgICAgIC5hZGRFbGVtZW50KHByZXNlbnRpbmdFbC5xdWVyeVNlbGVjdG9yKCcubW9kYWwtc2hhZG93JykhKVxuICAgICAgICAgICAgICAuYWZ0ZXJTdHlsZXMoe1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVkoMCkgc2NhbGUoMSknLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAua2V5ZnJhbWVzKFtcbiAgICAgICAgICAgICAgICB7IG9mZnNldDogMCwgb3BhY2l0eTogJzAnLCB0cmFuc2Zvcm06IGZpbmFsVHJhbnNmb3JtIH0sXG4gICAgICAgICAgICAgICAgeyBvZmZzZXQ6IDEsIG9wYWNpdHk6ICcxJywgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKSBzY2FsZSgxKScgfSxcbiAgICAgICAgICAgICAgXSk7XG5cbiAgICAgICAgICAgIGJhc2VBbmltYXRpb24uYWRkQW5pbWF0aW9uKFtwcmVzZW50aW5nQW5pbWF0aW9uLCBzaGFkb3dBbmltYXRpb25dKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGJhc2VBbmltYXRpb24uYWRkQW5pbWF0aW9uKGJhY2tkcm9wQW5pbWF0aW9uKTtcbiAgICAgICAgaWYgKGN1cnJlbnRCYWNrZHJvcEFuaW1hdGlvbikge1xuICAgICAgICAgIGJhc2VBbmltYXRpb24uYWRkQW5pbWF0aW9uKGN1cnJlbnRCYWNrZHJvcEFuaW1hdGlvbik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGJhc2VBbmltYXRpb247XG4gICAgfTtcbiAgfVxufVxuIl19
|
|
@@ -88,9 +88,7 @@ export class ModalNavigationService {
|
|
|
88
88
|
return routePathsWithoutChildSegments;
|
|
89
89
|
}
|
|
90
90
|
findChildRouteForUrl(url, routes) {
|
|
91
|
-
const moduleRelativePaths = this.getRoutePaths(routes, [''])
|
|
92
|
-
.sort()
|
|
93
|
-
.reverse(); // Ensure child paths are evaluated first
|
|
91
|
+
const moduleRelativePaths = this.getRoutePaths(routes, ['']).sort().reverse(); // Ensure child paths are evaluated first
|
|
94
92
|
let matchedChildRoute = moduleRelativePaths.find((path) => url.endsWith(path));
|
|
95
93
|
if (!matchedChildRoute) {
|
|
96
94
|
// No static child route found matching current route - look for child route with url params:
|
|
@@ -267,13 +265,10 @@ export class ModalNavigationService {
|
|
|
267
265
|
return parentRoute;
|
|
268
266
|
}
|
|
269
267
|
}
|
|
270
|
-
/** @nocollapse */ ModalNavigationService.ɵ
|
|
271
|
-
ModalNavigationService
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
{ type: Router },
|
|
277
|
-
{ type: ActivatedRoute }
|
|
278
|
-
];
|
|
279
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtbmF2aWdhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kZXNpZ25zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL21vZGFsL3NlcnZpY2VzL21vZGFsLW5hdmlnYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFpQixNQUFNLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRixPQUFPLEVBQUUsS0FBSyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUt6RSxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLFlBQW9CLE1BQWMsRUFBVSxLQUFxQjtRQUE3QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUE0THpELDJCQUFzQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDdEQsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUEwQixFQUFFLENBQUMsS0FBSyxZQUFZLGFBQWEsQ0FBQyxDQUMxRSxDQUFDO0lBOUxrRSxDQUFDO0lBRXJFLFlBQVksQ0FBQyxHQUFXO1FBQ3RCLE9BQU8sR0FBRyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU8sd0JBQXdCO1FBQzlCLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ2pDLE9BQU8sVUFBVSxDQUFDLFVBQVUsRUFBRTtZQUM1QixVQUFVLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBQztTQUNw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O0tBQUE7SUFFTyxnQkFBZ0IsQ0FBQyxxQkFBcUM7UUFDNUQsSUFBSSxXQUFXLEdBQUcscUJBQXFCLENBQUMsTUFBTSxDQUFDO1FBQy9DLE9BQU8sV0FBVyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRTtZQUNwRSxXQUFXLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQztTQUNsQztRQUNELE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7Ozs7WUFwVUYsVUFBVSxTQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7OztZQU5xQixNQUFNO1lBQXBELGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgTmF2aWdhdGlvbkVuZCwgUGFyYW1zLCBSb3V0ZSwgUm91dGVyLCBSb3V0ZXMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRU1QVFksIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgZmlyc3QsIG1hcCwgcGFpcndpc2UsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTW9kYWxSb3V0ZUFjdGl2YXRpb24gfSBmcm9tICcuL21vZGFsLmludGVyZmFjZXMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1vZGFsTmF2aWdhdGlvblNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkge31cblxuICBpc01vZGFsUm91dGUodXJsOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdXJsLmluY2x1ZGVzKCcobW9kYWw6Jyk7XG4gIH1cblxuICBwcml2YXRlIGdldEN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSgpOiBBY3RpdmF0ZWRSb3V0ZSB7XG4gICAgbGV0IGNoaWxkUm91dGUgPSB0aGlzLnJvdXRlLnJvb3Q7XG4gICAgd2hpbGUgKGNoaWxkUm91dGUuZmlyc3RDaGlsZCkge1xuICAgICAgY2hpbGRSb3V0ZSA9IGNoaWxkUm91dGUuZmlyc3RDaGlsZDtcbiAgICB9XG4gICAgcmV0dXJuIGNoaWxkUm91dGU7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldE1vZGFsUm91dGVzKFxuICAgIHJvdXRlQ29uZmlnOiBSb3V0ZXNbXSxcbiAgICBtb2R1bGVSb290Um91dGVQYXRoPzogc3RyaW5nXG4gICk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICBjb25zdCBmbGF0dGVuZWRSb3V0ZXM6IFJvdXRlcyA9IFtdLmNvbmNhdCguLi5yb3V0ZUNvbmZpZyk7XG4gICAgbGV0IG1vZGFsUm91dGVzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGNvbnN0IG1vZHVsZVJvb3RQYXRocyA9IGF3YWl0IHRoaXMuZ2V0TW9kdWxlUm9vdFBhdGgoZmxhdHRlbmVkUm91dGVzLCBtb2R1bGVSb290Um91dGVQYXRoKTtcbiAgICBpZiAobW9kdWxlUm9vdFBhdGhzKSB7XG4gICAgICBtb2RhbFJvdXRlcyA9IHRoaXMuZ2V0TW9kYWxSb3V0ZVBhdGhzKGZsYXR0ZW5lZFJvdXRlcywgbW9kdWxlUm9vdFBhdGhzKTtcbiAgICB9XG4gICAgcmV0dXJuIG1vZGFsUm91dGVzO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBnZXRNb2R1bGVSb290UGF0aChyb3V0ZXM6IFJvdXRlcywgbW9kdWxlUm9vdFJvdXRlUGF0aD86IHN0cmluZyk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICBpZiAobW9kdWxlUm9vdFJvdXRlUGF0aCkge1xuICAgICAgY29uc3QgdHJpbW1lZFBhdGhzID0gbW9kdWxlUm9vdFJvdXRlUGF0aFxuICAgICAgICAudHJpbSgpXG4gICAgICAgIC5zcGxpdCgnLycpXG4gICAgICAgIC5maWx0ZXIoKHBhdGgpID0+ICEhcGF0aCk7XG4gICAgICBjb25zdCByb290UGF0aCA9IFsnJ107XG4gICAgICByZXR1cm4gcm9vdFBhdGguY29uY2F0KHRyaW1tZWRQYXRocyk7XG4gICAgfVxuXG4gICAgY29uc3QgY3VycmVudFJvdXRlUGF0aHMgPSBhd2FpdCB0aGlzLmdldEN1cnJlbnRSb3V0ZVBhdGhzKCk7XG4gICAgY29uc3QgbW9kdWxlUm9vdFBhdGhzID0gdGhpcy5nZXRSb3V0ZVBhdGhzV2l0aG91dENoaWxkU2VnbWVudHMoY3VycmVudFJvdXRlUGF0aHMsIHJvdXRlcyk7XG4gICAgcmV0dXJuIG1vZHVsZVJvb3RQYXRocztcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0Q3VycmVudFJvdXRlUGF0aHMoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgIGNvbnN0IHJvb3RQYXRoID0gWycnXTtcbiAgICBjb25zdCBjdXJyZW50TmF2aWdhdGlvbiA9IHRoaXMucm91dGVyLmdldEN1cnJlbnROYXZpZ2F0aW9uKCk7XG5cbiAgICBpZiAoIXRoaXMucm91dGVyLm5hdmlnYXRlZCAmJiAhY3VycmVudE5hdmlnYXRpb24pIHtcbiAgICAgIC8vIElmIHJvdXRlciBoYXNuJ3QgbmF2aWdhdGVkIHlldCBhbmQgd2UgYXJlIG5vdCBpbiB0aGUgbWlkZGxlIG9mIG5hdmlnYXRpbmcsIGFzc3VtZSByb290OlxuICAgICAgcmV0dXJuIHJvb3RQYXRoO1xuICAgIH1cblxuICAgIGlmIChjdXJyZW50TmF2aWdhdGlvbikge1xuICAgICAgLy8gV2FpdCBmb3IgY3VycmVudCBuYXZpZ2F0aW9uIHRvIGZpbmlzaDpcbiAgICAgIGF3YWl0IHRoaXMubmF2aWdhdGlvbkVuZExpc3RlbmVyJC5waXBlKGZpcnN0KCkpLnRvUHJvbWlzZSgpO1xuICAgIH1cblxuICAgIGxldCBjaGlsZFJvdXRlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5yb290O1xuICAgIHdoaWxlIChjaGlsZFJvdXRlLmZpcnN0Q2hpbGQpIHtcbiAgICAgIGNoaWxkUm91dGUgPSBjaGlsZFJvdXRlLmZpcnN0Q2hpbGQ7XG4gICAgfVxuICAgIGNvbnN0IGN1cnJlbnRCYWNrZHJvcFJvdXRlUGF0aCA9IGNoaWxkUm91dGUucGF0aEZyb21Sb290LmZpbHRlcihcbiAgICAgIChyb3V0ZSkgPT4gcm91dGUub3V0bGV0ICE9PSAnbW9kYWwnXG4gICAgKTtcblxuICAgIHJldHVybiByb290UGF0aC5jb25jYXQoXG4gICAgICAuLi5jdXJyZW50QmFja2Ryb3BSb3V0ZVBhdGgubWFwKChyb3V0ZSkgPT5cbiAgICAgICAgcm91dGUudXJsLmZpbHRlcigoc2VnbWVudCkgPT4gISFzZWdtZW50LnBhdGgpLm1hcCgoc2VnbWVudCkgPT4gc2VnbWVudC5wYXRoKVxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdldFJvdXRlUGF0aHNXaXRob3V0Q2hpbGRTZWdtZW50cyhyb3V0ZVBhdGhzOiBzdHJpbmdbXSwgcm91dGVzOiBSb3V0ZXMpOiBzdHJpbmdbXSB7XG4gICAgaWYgKCFyb3V0ZVBhdGhzLmxlbmd0aCkgcmV0dXJuIHJvdXRlUGF0aHM7XG5cbiAgICBjb25zdCBtYXRjaGVkQ2hpbGRSb3V0ZSA9IHRoaXMuZmluZENoaWxkUm91dGVGb3JVcmwocm91dGVQYXRocy5qb2luKCcvJyksIHJvdXRlcyk7XG5cbiAgICBpZiAoIW1hdGNoZWRDaGlsZFJvdXRlKSByZXR1cm4gcm91dGVQYXRocztcblxuICAgIGNvbnN0IHN0YXJ0U2xhc2hSZWdleCA9IC9eXFwvLztcbiAgICBjb25zdCByZWxhdGl2ZUNoaWxkUm91dGUgPSBtYXRjaGVkQ2hpbGRSb3V0ZS5yZXBsYWNlKHN0YXJ0U2xhc2hSZWdleCwgJycpO1xuICAgIGNvbnN0IGNoaWxkU2VnbWVudENvdW50ID0gcmVsYXRpdmVDaGlsZFJvdXRlLnNwbGl0KCcvJykubGVuZ3RoO1xuICAgIGNvbnN0IHJvdXRlUGF0aHNXaXRob3V0Q2hpbGRTZWdtZW50cyA9IHJvdXRlUGF0aHMuc2xpY2UoMCwgLWNoaWxkU2VnbWVudENvdW50KTsgLy8gUmVtb3ZlIGNoaWxkIHNlZ21lbnRzIGZyb20gZW5kIG9mIHJvdXRlIHBhdGggYXJyYXlcbiAgICByZXR1cm4gcm91dGVQYXRoc1dpdGhvdXRDaGlsZFNlZ21lbnRzO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kQ2hpbGRSb3V0ZUZvclVybCh1cmw6IHN0cmluZywgcm91dGVzOiBSb3V0ZXMpIHtcbiAgICBjb25zdCBtb2R1bGVSZWxhdGl2ZVBhdGhzID0gdGhpcy5nZXRSb3V0ZVBhdGhzKHJvdXRlcywgWycnXSlcbiAgICAgIC5zb3J0KClcbiAgICAgIC5yZXZlcnNlKCk7IC8vIEVuc3VyZSBjaGlsZCBwYXRocyBhcmUgZXZhbHVhdGVkIGZpcnN0XG4gICAgbGV0IG1hdGNoZWRDaGlsZFJvdXRlID0gbW9kdWxlUmVsYXRpdmVQYXRocy5maW5kKChwYXRoKSA9PiB1cmwuZW5kc1dpdGgocGF0aCkpO1xuICAgIGlmICghbWF0Y2hlZENoaWxkUm91dGUpIHtcbiAgICAgIC8vIE5vIHN0YXRpYyBjaGlsZCByb3V0ZSBmb3VuZCBtYXRjaGluZyBjdXJyZW50IHJvdXRlIC0gbG9vayBmb3IgY2hpbGQgcm91dGUgd2l0aCB1cmwgcGFyYW1zOlxuICAgICAgY29uc3QgZXhhY3RNYXRjaCA9IGZhbHNlO1xuICAgICAgbWF0Y2hlZENoaWxkUm91dGUgPSBtb2R1bGVSZWxhdGl2ZVBhdGhzLmZpbmQoXG4gICAgICAgIChwYXRoKSA9PlxuICAgICAgICAgIHBhdGguaW5jbHVkZXMoJy86JykgJiYgdGhpcy5wYXRoQ29udGFpbnNDaGlsZFJvdXRlV2l0aFVybFBhcmFtcyh1cmwsIHBhdGgsIGV4YWN0TWF0Y2gpXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gbWF0Y2hlZENoaWxkUm91dGU7XG4gIH1cblxuICBwcml2YXRlIHBhdGhDb250YWluc0NoaWxkUm91dGVXaXRoVXJsUGFyYW1zKFxuICAgIHBhdGg6IHN0cmluZyxcbiAgICBjaGlsZFJvdXRlV2l0aFVybFBhcmFtczogc3RyaW5nLFxuICAgIGV4YWN0TWF0Y2g6IGJvb2xlYW5cbiAgKSB7XG4gICAgY29uc3QgcGF0aFNlZ21lbnRzID0gcGF0aC5zcGxpdCgnLycpO1xuICAgIGNvbnN0IHN0YXJ0U2xhc2hSZWdleCA9IC9eXFwvLztcbiAgICBsZXQgY2hpbGRSb3V0ZVRvTWF0Y2ggPSBjaGlsZFJvdXRlV2l0aFVybFBhcmFtcztcbiAgICBpZiAoIWV4YWN0TWF0Y2gpIHtcbiAgICAgIGNvbnN0IHJlbGF0aXZlQ2hpbGRSb3V0ZSA9IGNoaWxkUm91dGVXaXRoVXJsUGFyYW1zLnJlcGxhY2Uoc3RhcnRTbGFzaFJlZ2V4LCAnJyk7XG4gICAgICBjaGlsZFJvdXRlVG9NYXRjaCA9IHJlbGF0aXZlQ2hpbGRSb3V0ZTtcbiAgICB9XG4gICAgY29uc3QgY2hpbGRSb3V0ZVNlZ21lbnRzID0gY2hpbGRSb3V0ZVRvTWF0Y2guc3BsaXQoJy8nKTtcbiAgICAvLyBNYXRjaCBlYWNoIGNoaWxkIHJvdXRlIHNlZ21lbnQgYWdhaW5zdCB1cmxcbiAgICAvLyBNYXRjaCBiYWNrd2FyZHMgZnJvbSBlbmQgdG8gc3RhcnQgb2YgY2hpbGQgcm91dGUsIGkuZS4gXCJ1cmwgZW5kcyB3aXRoIGNoaWxkIHJvdXRlXCI6XG4gICAgY29uc3QgcGF0aENvbnRhaW5zQ2hpbGRSb3V0ZSA9IGNoaWxkUm91dGVTZWdtZW50cy5yZXZlcnNlKCkuZXZlcnkoKGNoaWxkUm91dGVTZWdtZW50KSA9PiB7XG4gICAgICBjb25zdCBwYXRoU2VnbWVudCA9IHBhdGhTZWdtZW50cy5wb3AoKTtcbiAgICAgIC8vIHVybCBwYXJhbXMgKGUuZy4gYC86aWQvYCkgYXJlIHRyZWF0ZWQgYXMgYSBtYXRjaDpcbiAgICAgIHJldHVybiBjaGlsZFJvdXRlU2VnbWVudC5zdGFydHNXaXRoKCc6JykgfHwgY2hpbGRSb3V0ZVNlZ21lbnQgPT09IHBhdGhTZWdtZW50O1xuICAgIH0pO1xuICAgIGlmIChleGFjdE1hdGNoKSB7XG4gICAgICAvLyBPbmx5IG1hdGNoIGlmIHdlJ3ZlIHJlYWNoZWQgdGhlIHN0YXJ0IG9mIHRoZSB1cmwgdG8gbWF0Y2ggYWdhaW5zdDpcbiAgICAgIHJldHVybiBwYXRoU2VnbWVudHMubGVuZ3RoID09PSAwICYmIHBhdGhDb250YWluc0NoaWxkUm91dGU7XG4gICAgfVxuICAgIHJldHVybiBwYXRoQ29udGFpbnNDaGlsZFJvdXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRSb3V0ZVBhdGhzKHJvdXRlczogUm91dGVzLCBwYXJlbnRQYXRoOiBzdHJpbmdbXSk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheShyb3V0ZXMpXG4gICAgICA/IChbXSBhcyBzdHJpbmdbXSkuY29uY2F0KC4uLnJvdXRlcy5tYXAoKHJvdXRlKSA9PiB0aGlzLmdldFJvdXRlUGF0aChyb3V0ZSwgcGFyZW50UGF0aCkpKVxuICAgICAgOiBbXTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Um91dGVQYXRoKHJvdXRlOiBSb3V0ZSwgcGFyZW50UGF0aDogc3RyaW5nW10pOiBzdHJpbmdbXSB7XG4gICAgY29uc3Qgcm91dGVzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmICghIXJvdXRlLm91dGxldCkgcmV0dXJuIHJvdXRlczsgLy8gRG9uJ3QgcmV0dXJuIHJlbGF0aXZlIHBhdGhzIGZvciBvdXRsZXQgcm91dGVzXG5cbiAgICBjb25zdCBjdXJyZW50UGF0aCA9IFsuLi5wYXJlbnRQYXRoXTtcbiAgICBpZiAoISFyb3V0ZS5wYXRoKSB7XG4gICAgICBjdXJyZW50UGF0aC5wdXNoKHJvdXRlLnBhdGgpO1xuICAgICAgcm91dGVzLnB1c2goY3VycmVudFBhdGguam9pbignLycpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcm91dGVzLmNvbmNhdCh0aGlzLmdldFJvdXRlUGF0aHMocm91dGUuY2hpbGRyZW4sIGN1cnJlbnRQYXRoKSk7XG4gIH1cblxuICBwcml2YXRlIGdldE1vZGFsUm91dGVQYXRoKHJvdXRlOiBSb3V0ZSwgcGFyZW50UGF0aDogc3RyaW5nW10pOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgbW9kYWxPdXRsZXROYW1lID0gJ21vZGFsJztcbiAgICBpZiAoISFyb3V0ZS5wYXRoICYmIHJvdXRlLm91dGxldCA9PT0gbW9kYWxPdXRsZXROYW1lKSB7XG4gICAgICBjb25zdCBtb2RhbE91dGxldFBhdGggPSBgKCR7bW9kYWxPdXRsZXROYW1lfToke3JvdXRlLnBhdGh9KWA7XG4gICAgICBjb25zdCBtb2RhbFJvdXRlUGF0aCA9IFsuLi5wYXJlbnRQYXRoLCBtb2RhbE91dGxldFBhdGhdLmpvaW4oJy8nKTtcbiAgICAgIHJldHVybiBbbW9kYWxSb3V0ZVBhdGhdO1xuICAgIH1cbiAgICBjb25zdCBjdXJyZW50UGF0aCA9IFsuLi5wYXJlbnRQYXRoXTtcbiAgICBpZiAoISFyb3V0ZS5wYXRoKSB7XG4gICAgICBjdXJyZW50UGF0aC5wdXNoKHJvdXRlLnBhdGgpO1xuICAgIH1cbiAgICByZXR1cm4gKFtdIGFzIHN0cmluZ1tdKS5jb25jYXQoLi4udGhpcy5nZXRNb2RhbFJvdXRlUGF0aHMocm91dGUuY2hpbGRyZW4sIGN1cnJlbnRQYXRoKSk7XG4gIH1cblxuICBwcml2YXRlIGdldE1vZGFsUm91dGVQYXRocyhyb3V0ZXM6IFJvdXRlcywgcGFyZW50UGF0aDogc3RyaW5nW10pOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkocm91dGVzKVxuICAgICAgPyAoW10gYXMgc3RyaW5nW10pLmNvbmNhdCguLi5yb3V0ZXMubWFwKChyb3V0ZSkgPT4gdGhpcy5nZXRNb2RhbFJvdXRlUGF0aChyb3V0ZSwgcGFyZW50UGF0aCkpKVxuICAgICAgOiBbXTtcbiAgfVxuXG4gIHByaXZhdGUgaXNOZXdNb2RhbFdpbmRvdyhuYXZpZ2F0aW9uRW5kOiBOYXZpZ2F0aW9uRW5kKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY3VycmVudE5hdmlnYXRpb24gPSB0aGlzLnJvdXRlci5nZXRDdXJyZW50TmF2aWdhdGlvbigpO1xuICAgIGlmICghY3VycmVudE5hdmlnYXRpb24gfHwgIWN1cnJlbnROYXZpZ2F0aW9uLnByZXZpb3VzTmF2aWdhdGlvbikge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGNvbnN0IHByZXZpb3VzUm91dGVQYXRoID0gKFxuICAgICAgY3VycmVudE5hdmlnYXRpb24ucHJldmlvdXNOYXZpZ2F0aW9uLmZpbmFsVXJsIHx8XG4gICAgICBjdXJyZW50TmF2aWdhdGlvbi5wcmV2aW91c05hdmlnYXRpb24uZXh0cmFjdGVkVXJsXG4gICAgKS50b1N0cmluZygpO1xuICAgIGNvbnN0IHdhc01vZGFsUm91dGUgPSB0aGlzLmlzTW9kYWxSb3V0ZShwcmV2aW91c1JvdXRlUGF0aCk7XG4gICAgY29uc3QgaXNNb2RhbFJvdXRlID0gdGhpcy5pc01vZGFsUm91dGUobmF2aWdhdGlvbkVuZC51cmxBZnRlclJlZGlyZWN0cyk7XG4gICAgaWYgKCF3YXNNb2RhbFJvdXRlICYmIGlzTW9kYWxSb3V0ZSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgY3VycmVudE1vZGFsUm91dGVQYXJlbnQgPSBuYXZpZ2F0aW9uRW5kLnVybEFmdGVyUmVkaXJlY3RzLnNwbGl0KCcvKG1vZGFsOicpWzBdO1xuICAgIGNvbnN0IHByZXZpb3VzTW9kYWxSb3V0ZVBhcmVudCA9IHByZXZpb3VzUm91dGVQYXRoLnNwbGl0KCcvKG1vZGFsOicpWzBdO1xuXG4gICAgcmV0dXJuIHByZXZpb3VzTW9kYWxSb3V0ZVBhcmVudCAhPT0gY3VycmVudE1vZGFsUm91dGVQYXJlbnQ7XG4gIH1cblxuICBwcml2YXRlIG5hdmlnYXRpb25FbmRMaXN0ZW5lciQgPSB0aGlzLnJvdXRlci5ldmVudHMucGlwZShcbiAgICBmaWx0ZXIoKGV2ZW50KTogZXZlbnQgaXMgTmF2aWdhdGlvbkVuZCA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpXG4gICk7XG5cbiAgcHJpdmF0ZSBhc3luYyB3YWl0Rm9yQ3VycmVudFRoZW5HZXROYXZpZ2F0aW9uRW5kU3RyZWFtKCk6IFByb21pc2U8T2JzZXJ2YWJsZTxOYXZpZ2F0aW9uRW5kPj4ge1xuICAgIGlmICh0aGlzLnJvdXRlci5nZXRDdXJyZW50TmF2aWdhdGlvbigpKSB7XG4gICAgICBjb25zdCBjdXJyZW50TmF2aWdhdGlvbkVuZCA9IGF3YWl0IHRoaXMubmF2aWdhdGlvbkVuZExpc3RlbmVyJC5waXBlKGZpcnN0KCkpLnRvUHJvbWlzZSgpO1xuICAgICAgcmV0dXJuIHRoaXMubmF2aWdhdGlvbkVuZExpc3RlbmVyJC5waXBlKHN0YXJ0V2l0aChjdXJyZW50TmF2aWdhdGlvbkVuZCkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5uYXZpZ2F0aW9uRW5kTGlzdGVuZXIkO1xuICB9XG5cbiAgcHJpdmF0ZSBtb2RhbFJvdXRlQWN0aXZhdGVkRm9yKFxuICAgIG5hdmlnYXRpb25FbmQkOiBPYnNlcnZhYmxlPE5hdmlnYXRpb25FbmQ+LFxuICAgIG1vZGFsUm91dGVTZXQ6IFNldDxzdHJpbmc+LFxuICAgIG1vZGFsUm91dGVzQ29udGFpbnNVcmxQYXJhbXM6IGJvb2xlYW5cbiAgKTogT2JzZXJ2YWJsZTxNb2RhbFJvdXRlQWN0aXZhdGlvbj4ge1xuICAgIHJldHVybiBuYXZpZ2F0aW9uRW5kJC5waXBlKFxuICAgICAgZmlsdGVyKChuYXZpZ2F0aW9uRW5kKSA9PlxuICAgICAgICB0aGlzLm1vZGFsUm91dGVTZXRDb250YWluc1BhdGgobW9kYWxSb3V0ZVNldCwgbmF2aWdhdGlvbkVuZCwgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtcylcbiAgICAgICksXG4gICAgICBtYXAoKG5hdmlnYXRpb25FbmQpID0+ICh7XG4gICAgICAgIHJvdXRlOiB0aGlzLmdldEN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSgpLFxuICAgICAgICBpc05ld01vZGFsOiB0aGlzLmlzTmV3TW9kYWxXaW5kb3cobmF2aWdhdGlvbkVuZCksXG4gICAgICB9KSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBtb2RhbFJvdXRlRGVhY3RpdmF0ZWRGb3IoXG4gICAgbmF2aWdhdGlvbkVuZCQ6IE9ic2VydmFibGU8TmF2aWdhdGlvbkVuZD4sXG4gICAgbW9kYWxSb3V0ZVNldDogU2V0PHN0cmluZz4sXG4gICAgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtczogYm9vbGVhblxuICApOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gbmF2aWdhdGlvbkVuZCQucGlwZShcbiAgICAgIHBhaXJ3aXNlKCksXG4gICAgICBmaWx0ZXIoKFtwcmV2TmF2aWdhdGlvbiwgX10pID0+XG4gICAgICAgIHRoaXMubW9kYWxSb3V0ZVNldENvbnRhaW5zUGF0aChtb2RhbFJvdXRlU2V0LCBwcmV2TmF2aWdhdGlvbiwgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtcylcbiAgICAgICksIC8vIE9ubHkgZW1pdCBpZiBwcmV2aW91cyByb3V0ZSB3YXMgbW9kYWxcbiAgICAgIG1hcCgoW18sIGN1cnJlbnROYXZpZ2F0aW9uXSkgPT4ge1xuICAgICAgICBjb25zdCBpc05ld01vZGFsUm91dGUgPSB0aGlzLmlzTW9kYWxSb3V0ZShjdXJyZW50TmF2aWdhdGlvbi51cmxBZnRlclJlZGlyZWN0cyk7XG4gICAgICAgIC8vIERlYWN0aXZhdGUgbW9kYWwgcm91dGUgaWYgbmV3IHJvdXRlIGlzIE5PVCBtb2RhbCBPUiBpcyBvdXRzaWRlIGN1cnJlbnQgcGFyZW50IHJvdXRlOlxuICAgICAgICByZXR1cm4gIWlzTmV3TW9kYWxSb3V0ZSB8fCB0aGlzLmlzTmV3TW9kYWxXaW5kb3coY3VycmVudE5hdmlnYXRpb24pO1xuICAgICAgfSksXG4gICAgICBmaWx0ZXIoKGlzRGVhY3RpdmF0aW9uKSA9PiBpc0RlYWN0aXZhdGlvbilcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBtb2RhbFJvdXRlU2V0Q29udGFpbnNQYXRoKFxuICAgIG1vZGFsUm91dGVTZXQ6IFNldDxzdHJpbmc+LFxuICAgIG5hdmlnYXRpb25FbmQ6IE5hdmlnYXRpb25FbmQsXG4gICAgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtczogYm9vbGVhblxuICApIHtcbiAgICBjb25zdCBwYXRobmFtZSA9IG5hdmlnYXRpb25FbmQudXJsQWZ0ZXJSZWRpcmVjdHMuc3BsaXQoJz8nKVswXTtcbiAgICBsZXQgaGFzUm91dGUgPSBtb2RhbFJvdXRlU2V0LmhhcyhwYXRobmFtZSk7XG4gICAgaWYgKCFoYXNSb3V0ZSAmJiBtb2RhbFJvdXRlc0NvbnRhaW5zVXJsUGFyYW1zKSB7XG4gICAgICAvLyBVc2UgYGZvciAuLi4gb2ZgIGluc3RlYWQgb2YgYGZvckVhY2hgIHNvIHdlIGNhbiBicmVhayBvdXQgb2YgdGhlIGxvb3AgaWYgcm91dGUgaXMgZm91bmQ6XG4gICAgICBmb3IgKGxldCByb3V0ZSBvZiBtb2RhbFJvdXRlU2V0KSB7XG4gICAgICAgIGNvbnN0IGV4YWN0TWF0Y2ggPSB0cnVlO1xuICAgICAgICBjb25zdCByb3V0ZU1hdGNoZXNQYXRoID0gdGhpcy5wYXRoQ29udGFpbnNDaGlsZFJvdXRlV2l0aFVybFBhcmFtcyhcbiAgICAgICAgICBwYXRobmFtZSxcbiAgICAgICAgICByb3V0ZSxcbiAgICAgICAgICBleGFjdE1hdGNoXG4gICAgICAgICk7XG4gICAgICAgIGlmIChyb3V0ZU1hdGNoZXNQYXRoKSB7XG4gICAgICAgICAgaGFzUm91dGUgPSB0cnVlO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBoYXNSb3V0ZTtcbiAgfVxuXG4gIGFzeW5jIGdldE1vZGFsTmF2aWdhdGlvbihcbiAgICByb3V0ZUNvbmZpZzogUm91dGVzW10sXG4gICAgbW9kdWxlUm9vdFJvdXRlUGF0aD86IHN0cmluZ1xuICApOiBQcm9taXNlPHsgYWN0aXZhdGVkJDogT2JzZXJ2YWJsZTxNb2RhbFJvdXRlQWN0aXZhdGlvbj47IGRlYWN0aXZhdGVkJDogT2JzZXJ2YWJsZTxib29sZWFuPiB9PiB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkocm91dGVDb25maWcpKSB7XG4gICAgICBjb25zdCBuYXZpZ2F0aW9uRW5kJCA9IGF3YWl0IHRoaXMud2FpdEZvckN1cnJlbnRUaGVuR2V0TmF2aWdhdGlvbkVuZFN0cmVhbSgpO1xuICAgICAgY29uc3QgbW9kYWxSb3V0ZXMgPSBhd2FpdCB0aGlzLmdldE1vZGFsUm91dGVzKHJvdXRlQ29uZmlnLCBtb2R1bGVSb290Um91dGVQYXRoKTtcbiAgICAgIGNvbnN0IGhhc01vZGFsUm91dGVzID0gbW9kYWxSb3V0ZXMubGVuZ3RoID4gMDtcbiAgICAgIGlmIChoYXNNb2RhbFJvdXRlcykge1xuICAgICAgICBjb25zdCBtb2RhbFJvdXRlc0NvbnRhaW5zVXJsUGFyYW1zID0gbW9kYWxSb3V0ZXMuc29tZSgocm91dGUpID0+IHJvdXRlLmluY2x1ZGVzKCcvOicpKTtcbiAgICAgICAgY29uc3QgbW9kYWxSb3V0ZVNldCA9IG5ldyBTZXQobW9kYWxSb3V0ZXMpO1xuICAgICAgICBjb25zdCBhY3RpdmF0ZWQkID0gdGhpcy5tb2RhbFJvdXRlQWN0aXZhdGVkRm9yKFxuICAgICAgICAgIG5hdmlnYXRpb25FbmQkLFxuICAgICAgICAgIG1vZGFsUm91dGVTZXQsXG4gICAgICAgICAgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtc1xuICAgICAgICApO1xuICAgICAgICBjb25zdCBkZWFjdGl2YXRlZCQgPSB0aGlzLm1vZGFsUm91dGVEZWFjdGl2YXRlZEZvcihcbiAgICAgICAgICBuYXZpZ2F0aW9uRW5kJCxcbiAgICAgICAgICBtb2RhbFJvdXRlU2V0LFxuICAgICAgICAgIG1vZGFsUm91dGVzQ29udGFpbnNVcmxQYXJhbXNcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuIHsgYWN0aXZhdGVkJCwgZGVhY3RpdmF0ZWQkIH07XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7IGFjdGl2YXRlZCQ6IEVNUFRZLCBkZWFjdGl2YXRlZCQ6IEVNUFRZIH07XG4gIH1cblxuICBhc3luYyBuYXZpZ2F0ZVRvTW9kYWwocGF0aDogc3RyaW5nIHwgc3RyaW5nW10sIHF1ZXJ5UGFyYW1zPzogUGFyYW1zKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgY29tbWFuZHMgPSBBcnJheS5pc0FycmF5KHBhdGgpID8gcGF0aCA6IHBhdGguc3BsaXQoJy8nKTtcbiAgICBjb25zdCBjaGlsZFBhdGggPSBjb21tYW5kcy5wb3AoKTtcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbLi4uY29tbWFuZHMsIHsgb3V0bGV0czogeyBtb2RhbDogW2NoaWxkUGF0aF0gfSB9XSwge1xuICAgICAgcXVlcnlQYXJhbXMsXG4gICAgICByZWxhdGl2ZVRvOiB0aGlzLmdldEN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSgpLFxuICAgIH0pO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBhc3luYyBuYXZpZ2F0ZVdpdGhpbk1vZGFsKHJlbGF0aXZlUGF0aDogc3RyaW5nLCBxdWVyeVBhcmFtcz86IFBhcmFtcyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcmVsYXRpdmVQYXRoXSwge1xuICAgICAgcXVlcnlQYXJhbXMsXG4gICAgICByZWxhdGl2ZVRvOiB0aGlzLmdldEN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSgpLFxuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgbmF2aWdhdGVPdXRPZk1vZGFsT3V0bGV0KCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGxldCByZXN1bHQgPSBQcm9taXNlLnJlc29sdmUodHJ1ZSk7XG4gICAgY29uc3QgY3VycmVudEFjdGl2YXRlZFJvdXRlID0gdGhpcy5nZXRDdXJyZW50QWN0aXZhdGVkUm91dGUoKTtcbiAgICBpZiAoY3VycmVudEFjdGl2YXRlZFJvdXRlLm91dGxldCA9PT0gJ21vZGFsJykge1xuICAgICAgY29uc3QgcGFyZW50Um91dGUgPSB0aGlzLmdldEJhY2tkcm9wUm91dGUoY3VycmVudEFjdGl2YXRlZFJvdXRlKTtcbiAgICAgIHJlc3VsdCA9IHRoaXMucm91dGVyLm5hdmlnYXRlKFsnLi8nXSwge1xuICAgICAgICByZWxhdGl2ZVRvOiBwYXJlbnRSb3V0ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRCYWNrZHJvcFJvdXRlKGN1cnJlbnRBY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcbiAgICBsZXQgcGFyZW50Um91dGUgPSBjdXJyZW50QWN0aXZhdGVkUm91dGUucGFyZW50O1xuICAgIHdoaWxlIChwYXJlbnRSb3V0ZSAmJiAhcGFyZW50Um91dGUuY29tcG9uZW50ICYmICEhcGFyZW50Um91dGUucGFyZW50KSB7XG4gICAgICBwYXJlbnRSb3V0ZSA9IHBhcmVudFJvdXRlLnBhcmVudDtcbiAgICB9XG4gICAgcmV0dXJuIHBhcmVudFJvdXRlO1xuICB9XG59XG4iXX0=
|
|
268
|
+
/** @nocollapse */ ModalNavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ModalNavigationService, deps: [{ token: i1.Router }, { token: i1.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
269
|
+
/** @nocollapse */ ModalNavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ModalNavigationService, providedIn: 'root' });
|
|
270
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ModalNavigationService, decorators: [{
|
|
271
|
+
type: Injectable,
|
|
272
|
+
args: [{ providedIn: 'root' }]
|
|
273
|
+
}], ctorParameters: function () { return [{ type: i1.Router }, { type: i1.ActivatedRoute }]; } });
|
|
274
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtbmF2aWdhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9kZXNpZ25zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL21vZGFsL3NlcnZpY2VzL21vZGFsLW5hdmlnYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFpQixNQUFNLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRixPQUFPLEVBQUUsS0FBSyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUt6RSxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLFlBQW9CLE1BQWMsRUFBVSxLQUFxQjtRQUE3QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUEwTHpELDJCQUFzQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDdEQsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUEwQixFQUFFLENBQUMsS0FBSyxZQUFZLGFBQWEsQ0FBQyxDQUMxRSxDQUFDO0lBNUxrRSxDQUFDO0lBRXJFLFlBQVksQ0FBQyxHQUFXO1FBQ3RCLE9BQU8sR0FBRyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU8sd0JBQXdCO1FBQzlCLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ2pDLE9BQU8sVUFBVSxDQUFDLFVBQVUsRUFBRTtZQUM1QixVQUFVLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBQztTQUNw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S0FBQTtJQUVPLGdCQUFnQixDQUFDLHFCQUFxQztRQUM1RCxJQUFJLFdBQVcsR0FBRyxxQkFBcUIsQ0FBQyxNQUFNLENBQUM7UUFDL0MsT0FBTyxXQUFXLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFO1lBQ3BFLFdBQVcsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDO1NBQ2xDO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQzs7dUlBalVVLHNCQUFzQjsySUFBdEIsc0JBQXNCLGNBRFQsTUFBTTs0RkFDbkIsc0JBQXNCO2tCQURsQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBOYXZpZ2F0aW9uRW5kLCBQYXJhbXMsIFJvdXRlLCBSb3V0ZXIsIFJvdXRlcyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBFTVBUWSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBmaXJzdCwgbWFwLCBwYWlyd2lzZSwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBNb2RhbFJvdXRlQWN0aXZhdGlvbiB9IGZyb20gJy4vbW9kYWwuaW50ZXJmYWNlcyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgTW9kYWxOYXZpZ2F0aW9uU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7fVxuXG4gIGlzTW9kYWxSb3V0ZSh1cmw6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB1cmwuaW5jbHVkZXMoJyhtb2RhbDonKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q3VycmVudEFjdGl2YXRlZFJvdXRlKCk6IEFjdGl2YXRlZFJvdXRlIHtcbiAgICBsZXQgY2hpbGRSb3V0ZSA9IHRoaXMucm91dGUucm9vdDtcbiAgICB3aGlsZSAoY2hpbGRSb3V0ZS5maXJzdENoaWxkKSB7XG4gICAgICBjaGlsZFJvdXRlID0gY2hpbGRSb3V0ZS5maXJzdENoaWxkO1xuICAgIH1cbiAgICByZXR1cm4gY2hpbGRSb3V0ZTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZ2V0TW9kYWxSb3V0ZXMoXG4gICAgcm91dGVDb25maWc6IFJvdXRlc1tdLFxuICAgIG1vZHVsZVJvb3RSb3V0ZVBhdGg/OiBzdHJpbmdcbiAgKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgIGNvbnN0IGZsYXR0ZW5lZFJvdXRlczogUm91dGVzID0gW10uY29uY2F0KC4uLnJvdXRlQ29uZmlnKTtcbiAgICBsZXQgbW9kYWxSb3V0ZXM6IHN0cmluZ1tdID0gW107XG4gICAgY29uc3QgbW9kdWxlUm9vdFBhdGhzID0gYXdhaXQgdGhpcy5nZXRNb2R1bGVSb290UGF0aChmbGF0dGVuZWRSb3V0ZXMsIG1vZHVsZVJvb3RSb3V0ZVBhdGgpO1xuICAgIGlmIChtb2R1bGVSb290UGF0aHMpIHtcbiAgICAgIG1vZGFsUm91dGVzID0gdGhpcy5nZXRNb2RhbFJvdXRlUGF0aHMoZmxhdHRlbmVkUm91dGVzLCBtb2R1bGVSb290UGF0aHMpO1xuICAgIH1cbiAgICByZXR1cm4gbW9kYWxSb3V0ZXM7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGdldE1vZHVsZVJvb3RQYXRoKHJvdXRlczogUm91dGVzLCBtb2R1bGVSb290Um91dGVQYXRoPzogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgIGlmIChtb2R1bGVSb290Um91dGVQYXRoKSB7XG4gICAgICBjb25zdCB0cmltbWVkUGF0aHMgPSBtb2R1bGVSb290Um91dGVQYXRoXG4gICAgICAgIC50cmltKClcbiAgICAgICAgLnNwbGl0KCcvJylcbiAgICAgICAgLmZpbHRlcigocGF0aCkgPT4gISFwYXRoKTtcbiAgICAgIGNvbnN0IHJvb3RQYXRoID0gWycnXTtcbiAgICAgIHJldHVybiByb290UGF0aC5jb25jYXQodHJpbW1lZFBhdGhzKTtcbiAgICB9XG5cbiAgICBjb25zdCBjdXJyZW50Um91dGVQYXRocyA9IGF3YWl0IHRoaXMuZ2V0Q3VycmVudFJvdXRlUGF0aHMoKTtcbiAgICBjb25zdCBtb2R1bGVSb290UGF0aHMgPSB0aGlzLmdldFJvdXRlUGF0aHNXaXRob3V0Q2hpbGRTZWdtZW50cyhjdXJyZW50Um91dGVQYXRocywgcm91dGVzKTtcbiAgICByZXR1cm4gbW9kdWxlUm9vdFBhdGhzO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBnZXRDdXJyZW50Um91dGVQYXRocygpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgY29uc3Qgcm9vdFBhdGggPSBbJyddO1xuICAgIGNvbnN0IGN1cnJlbnROYXZpZ2F0aW9uID0gdGhpcy5yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKTtcblxuICAgIGlmICghdGhpcy5yb3V0ZXIubmF2aWdhdGVkICYmICFjdXJyZW50TmF2aWdhdGlvbikge1xuICAgICAgLy8gSWYgcm91dGVyIGhhc24ndCBuYXZpZ2F0ZWQgeWV0IGFuZCB3ZSBhcmUgbm90IGluIHRoZSBtaWRkbGUgb2YgbmF2aWdhdGluZywgYXNzdW1lIHJvb3Q6XG4gICAgICByZXR1cm4gcm9vdFBhdGg7XG4gICAgfVxuXG4gICAgaWYgKGN1cnJlbnROYXZpZ2F0aW9uKSB7XG4gICAgICAvLyBXYWl0IGZvciBjdXJyZW50IG5hdmlnYXRpb24gdG8gZmluaXNoOlxuICAgICAgYXdhaXQgdGhpcy5uYXZpZ2F0aW9uRW5kTGlzdGVuZXIkLnBpcGUoZmlyc3QoKSkudG9Qcm9taXNlKCk7XG4gICAgfVxuXG4gICAgbGV0IGNoaWxkUm91dGUgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnJvb3Q7XG4gICAgd2hpbGUgKGNoaWxkUm91dGUuZmlyc3RDaGlsZCkge1xuICAgICAgY2hpbGRSb3V0ZSA9IGNoaWxkUm91dGUuZmlyc3RDaGlsZDtcbiAgICB9XG4gICAgY29uc3QgY3VycmVudEJhY2tkcm9wUm91dGVQYXRoID0gY2hpbGRSb3V0ZS5wYXRoRnJvbVJvb3QuZmlsdGVyKFxuICAgICAgKHJvdXRlKSA9PiByb3V0ZS5vdXRsZXQgIT09ICdtb2RhbCdcbiAgICApO1xuXG4gICAgcmV0dXJuIHJvb3RQYXRoLmNvbmNhdChcbiAgICAgIC4uLmN1cnJlbnRCYWNrZHJvcFJvdXRlUGF0aC5tYXAoKHJvdXRlKSA9PlxuICAgICAgICByb3V0ZS51cmwuZmlsdGVyKChzZWdtZW50KSA9PiAhIXNlZ21lbnQucGF0aCkubWFwKChzZWdtZW50KSA9PiBzZWdtZW50LnBhdGgpXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Um91dGVQYXRoc1dpdGhvdXRDaGlsZFNlZ21lbnRzKHJvdXRlUGF0aHM6IHN0cmluZ1tdLCByb3V0ZXM6IFJvdXRlcyk6IHN0cmluZ1tdIHtcbiAgICBpZiAoIXJvdXRlUGF0aHMubGVuZ3RoKSByZXR1cm4gcm91dGVQYXRocztcblxuICAgIGNvbnN0IG1hdGNoZWRDaGlsZFJvdXRlID0gdGhpcy5maW5kQ2hpbGRSb3V0ZUZvclVybChyb3V0ZVBhdGhzLmpvaW4oJy8nKSwgcm91dGVzKTtcblxuICAgIGlmICghbWF0Y2hlZENoaWxkUm91dGUpIHJldHVybiByb3V0ZVBhdGhzO1xuXG4gICAgY29uc3Qgc3RhcnRTbGFzaFJlZ2V4ID0gL15cXC8vO1xuICAgIGNvbnN0IHJlbGF0aXZlQ2hpbGRSb3V0ZSA9IG1hdGNoZWRDaGlsZFJvdXRlLnJlcGxhY2Uoc3RhcnRTbGFzaFJlZ2V4LCAnJyk7XG4gICAgY29uc3QgY2hpbGRTZWdtZW50Q291bnQgPSByZWxhdGl2ZUNoaWxkUm91dGUuc3BsaXQoJy8nKS5sZW5ndGg7XG4gICAgY29uc3Qgcm91dGVQYXRoc1dpdGhvdXRDaGlsZFNlZ21lbnRzID0gcm91dGVQYXRocy5zbGljZSgwLCAtY2hpbGRTZWdtZW50Q291bnQpOyAvLyBSZW1vdmUgY2hpbGQgc2VnbWVudHMgZnJvbSBlbmQgb2Ygcm91dGUgcGF0aCBhcnJheVxuICAgIHJldHVybiByb3V0ZVBhdGhzV2l0aG91dENoaWxkU2VnbWVudHM7XG4gIH1cblxuICBwcml2YXRlIGZpbmRDaGlsZFJvdXRlRm9yVXJsKHVybDogc3RyaW5nLCByb3V0ZXM6IFJvdXRlcykge1xuICAgIGNvbnN0IG1vZHVsZVJlbGF0aXZlUGF0aHMgPSB0aGlzLmdldFJvdXRlUGF0aHMocm91dGVzLCBbJyddKS5zb3J0KCkucmV2ZXJzZSgpOyAvLyBFbnN1cmUgY2hpbGQgcGF0aHMgYXJlIGV2YWx1YXRlZCBmaXJzdFxuICAgIGxldCBtYXRjaGVkQ2hpbGRSb3V0ZSA9IG1vZHVsZVJlbGF0aXZlUGF0aHMuZmluZCgocGF0aCkgPT4gdXJsLmVuZHNXaXRoKHBhdGgpKTtcbiAgICBpZiAoIW1hdGNoZWRDaGlsZFJvdXRlKSB7XG4gICAgICAvLyBObyBzdGF0aWMgY2hpbGQgcm91dGUgZm91bmQgbWF0Y2hpbmcgY3VycmVudCByb3V0ZSAtIGxvb2sgZm9yIGNoaWxkIHJvdXRlIHdpdGggdXJsIHBhcmFtczpcbiAgICAgIGNvbnN0IGV4YWN0TWF0Y2ggPSBmYWxzZTtcbiAgICAgIG1hdGNoZWRDaGlsZFJvdXRlID0gbW9kdWxlUmVsYXRpdmVQYXRocy5maW5kKFxuICAgICAgICAocGF0aCkgPT5cbiAgICAgICAgICBwYXRoLmluY2x1ZGVzKCcvOicpICYmIHRoaXMucGF0aENvbnRhaW5zQ2hpbGRSb3V0ZVdpdGhVcmxQYXJhbXModXJsLCBwYXRoLCBleGFjdE1hdGNoKVxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIG1hdGNoZWRDaGlsZFJvdXRlO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXRoQ29udGFpbnNDaGlsZFJvdXRlV2l0aFVybFBhcmFtcyhcbiAgICBwYXRoOiBzdHJpbmcsXG4gICAgY2hpbGRSb3V0ZVdpdGhVcmxQYXJhbXM6IHN0cmluZyxcbiAgICBleGFjdE1hdGNoOiBib29sZWFuXG4gICkge1xuICAgIGNvbnN0IHBhdGhTZWdtZW50cyA9IHBhdGguc3BsaXQoJy8nKTtcbiAgICBjb25zdCBzdGFydFNsYXNoUmVnZXggPSAvXlxcLy87XG4gICAgbGV0IGNoaWxkUm91dGVUb01hdGNoID0gY2hpbGRSb3V0ZVdpdGhVcmxQYXJhbXM7XG4gICAgaWYgKCFleGFjdE1hdGNoKSB7XG4gICAgICBjb25zdCByZWxhdGl2ZUNoaWxkUm91dGUgPSBjaGlsZFJvdXRlV2l0aFVybFBhcmFtcy5yZXBsYWNlKHN0YXJ0U2xhc2hSZWdleCwgJycpO1xuICAgICAgY2hpbGRSb3V0ZVRvTWF0Y2ggPSByZWxhdGl2ZUNoaWxkUm91dGU7XG4gICAgfVxuICAgIGNvbnN0IGNoaWxkUm91dGVTZWdtZW50cyA9IGNoaWxkUm91dGVUb01hdGNoLnNwbGl0KCcvJyk7XG4gICAgLy8gTWF0Y2ggZWFjaCBjaGlsZCByb3V0ZSBzZWdtZW50IGFnYWluc3QgdXJsXG4gICAgLy8gTWF0Y2ggYmFja3dhcmRzIGZyb20gZW5kIHRvIHN0YXJ0IG9mIGNoaWxkIHJvdXRlLCBpLmUuIFwidXJsIGVuZHMgd2l0aCBjaGlsZCByb3V0ZVwiOlxuICAgIGNvbnN0IHBhdGhDb250YWluc0NoaWxkUm91dGUgPSBjaGlsZFJvdXRlU2VnbWVudHMucmV2ZXJzZSgpLmV2ZXJ5KChjaGlsZFJvdXRlU2VnbWVudCkgPT4ge1xuICAgICAgY29uc3QgcGF0aFNlZ21lbnQgPSBwYXRoU2VnbWVudHMucG9wKCk7XG4gICAgICAvLyB1cmwgcGFyYW1zIChlLmcuIGAvOmlkL2ApIGFyZSB0cmVhdGVkIGFzIGEgbWF0Y2g6XG4gICAgICByZXR1cm4gY2hpbGRSb3V0ZVNlZ21lbnQuc3RhcnRzV2l0aCgnOicpIHx8IGNoaWxkUm91dGVTZWdtZW50ID09PSBwYXRoU2VnbWVudDtcbiAgICB9KTtcbiAgICBpZiAoZXhhY3RNYXRjaCkge1xuICAgICAgLy8gT25seSBtYXRjaCBpZiB3ZSd2ZSByZWFjaGVkIHRoZSBzdGFydCBvZiB0aGUgdXJsIHRvIG1hdGNoIGFnYWluc3Q6XG4gICAgICByZXR1cm4gcGF0aFNlZ21lbnRzLmxlbmd0aCA9PT0gMCAmJiBwYXRoQ29udGFpbnNDaGlsZFJvdXRlO1xuICAgIH1cbiAgICByZXR1cm4gcGF0aENvbnRhaW5zQ2hpbGRSb3V0ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Um91dGVQYXRocyhyb3V0ZXM6IFJvdXRlcywgcGFyZW50UGF0aDogc3RyaW5nW10pOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkocm91dGVzKVxuICAgICAgPyAoW10gYXMgc3RyaW5nW10pLmNvbmNhdCguLi5yb3V0ZXMubWFwKChyb3V0ZSkgPT4gdGhpcy5nZXRSb3V0ZVBhdGgocm91dGUsIHBhcmVudFBhdGgpKSlcbiAgICAgIDogW107XG4gIH1cblxuICBwcml2YXRlIGdldFJvdXRlUGF0aChyb3V0ZTogUm91dGUsIHBhcmVudFBhdGg6IHN0cmluZ1tdKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IHJvdXRlczogc3RyaW5nW10gPSBbXTtcbiAgICBpZiAoISFyb3V0ZS5vdXRsZXQpIHJldHVybiByb3V0ZXM7IC8vIERvbid0IHJldHVybiByZWxhdGl2ZSBwYXRocyBmb3Igb3V0bGV0IHJvdXRlc1xuXG4gICAgY29uc3QgY3VycmVudFBhdGggPSBbLi4ucGFyZW50UGF0aF07XG4gICAgaWYgKCEhcm91dGUucGF0aCkge1xuICAgICAgY3VycmVudFBhdGgucHVzaChyb3V0ZS5wYXRoKTtcbiAgICAgIHJvdXRlcy5wdXNoKGN1cnJlbnRQYXRoLmpvaW4oJy8nKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJvdXRlcy5jb25jYXQodGhpcy5nZXRSb3V0ZVBhdGhzKHJvdXRlLmNoaWxkcmVuLCBjdXJyZW50UGF0aCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNb2RhbFJvdXRlUGF0aChyb3V0ZTogUm91dGUsIHBhcmVudFBhdGg6IHN0cmluZ1tdKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IG1vZGFsT3V0bGV0TmFtZSA9ICdtb2RhbCc7XG4gICAgaWYgKCEhcm91dGUucGF0aCAmJiByb3V0ZS5vdXRsZXQgPT09IG1vZGFsT3V0bGV0TmFtZSkge1xuICAgICAgY29uc3QgbW9kYWxPdXRsZXRQYXRoID0gYCgke21vZGFsT3V0bGV0TmFtZX06JHtyb3V0ZS5wYXRofSlgO1xuICAgICAgY29uc3QgbW9kYWxSb3V0ZVBhdGggPSBbLi4ucGFyZW50UGF0aCwgbW9kYWxPdXRsZXRQYXRoXS5qb2luKCcvJyk7XG4gICAgICByZXR1cm4gW21vZGFsUm91dGVQYXRoXTtcbiAgICB9XG4gICAgY29uc3QgY3VycmVudFBhdGggPSBbLi4ucGFyZW50UGF0aF07XG4gICAgaWYgKCEhcm91dGUucGF0aCkge1xuICAgICAgY3VycmVudFBhdGgucHVzaChyb3V0ZS5wYXRoKTtcbiAgICB9XG4gICAgcmV0dXJuIChbXSBhcyBzdHJpbmdbXSkuY29uY2F0KC4uLnRoaXMuZ2V0TW9kYWxSb3V0ZVBhdGhzKHJvdXRlLmNoaWxkcmVuLCBjdXJyZW50UGF0aCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRNb2RhbFJvdXRlUGF0aHMocm91dGVzOiBSb3V0ZXMsIHBhcmVudFBhdGg6IHN0cmluZ1tdKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBBcnJheS5pc0FycmF5KHJvdXRlcylcbiAgICAgID8gKFtdIGFzIHN0cmluZ1tdKS5jb25jYXQoLi4ucm91dGVzLm1hcCgocm91dGUpID0+IHRoaXMuZ2V0TW9kYWxSb3V0ZVBhdGgocm91dGUsIHBhcmVudFBhdGgpKSlcbiAgICAgIDogW107XG4gIH1cblxuICBwcml2YXRlIGlzTmV3TW9kYWxXaW5kb3cobmF2aWdhdGlvbkVuZDogTmF2aWdhdGlvbkVuZCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGN1cnJlbnROYXZpZ2F0aW9uID0gdGhpcy5yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKTtcbiAgICBpZiAoIWN1cnJlbnROYXZpZ2F0aW9uIHx8ICFjdXJyZW50TmF2aWdhdGlvbi5wcmV2aW91c05hdmlnYXRpb24pIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjb25zdCBwcmV2aW91c1JvdXRlUGF0aCA9IChcbiAgICAgIGN1cnJlbnROYXZpZ2F0aW9uLnByZXZpb3VzTmF2aWdhdGlvbi5maW5hbFVybCB8fFxuICAgICAgY3VycmVudE5hdmlnYXRpb24ucHJldmlvdXNOYXZpZ2F0aW9uLmV4dHJhY3RlZFVybFxuICAgICkudG9TdHJpbmcoKTtcbiAgICBjb25zdCB3YXNNb2RhbFJvdXRlID0gdGhpcy5pc01vZGFsUm91dGUocHJldmlvdXNSb3V0ZVBhdGgpO1xuICAgIGNvbnN0IGlzTW9kYWxSb3V0ZSA9IHRoaXMuaXNNb2RhbFJvdXRlKG5hdmlnYXRpb25FbmQudXJsQWZ0ZXJSZWRpcmVjdHMpO1xuICAgIGlmICghd2FzTW9kYWxSb3V0ZSAmJiBpc01vZGFsUm91dGUpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGNvbnN0IGN1cnJlbnRNb2RhbFJvdXRlUGFyZW50ID0gbmF2aWdhdGlvbkVuZC51cmxBZnRlclJlZGlyZWN0cy5zcGxpdCgnLyhtb2RhbDonKVswXTtcbiAgICBjb25zdCBwcmV2aW91c01vZGFsUm91dGVQYXJlbnQgPSBwcmV2aW91c1JvdXRlUGF0aC5zcGxpdCgnLyhtb2RhbDonKVswXTtcblxuICAgIHJldHVybiBwcmV2aW91c01vZGFsUm91dGVQYXJlbnQgIT09IGN1cnJlbnRNb2RhbFJvdXRlUGFyZW50O1xuICB9XG5cbiAgcHJpdmF0ZSBuYXZpZ2F0aW9uRW5kTGlzdGVuZXIkID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoXG4gICAgZmlsdGVyKChldmVudCk6IGV2ZW50IGlzIE5hdmlnYXRpb25FbmQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKVxuICApO1xuXG4gIHByaXZhdGUgYXN5bmMgd2FpdEZvckN1cnJlbnRUaGVuR2V0TmF2aWdhdGlvbkVuZFN0cmVhbSgpOiBQcm9taXNlPE9ic2VydmFibGU8TmF2aWdhdGlvbkVuZD4+IHtcbiAgICBpZiAodGhpcy5yb3V0ZXIuZ2V0Q3VycmVudE5hdmlnYXRpb24oKSkge1xuICAgICAgY29uc3QgY3VycmVudE5hdmlnYXRpb25FbmQgPSBhd2FpdCB0aGlzLm5hdmlnYXRpb25FbmRMaXN0ZW5lciQucGlwZShmaXJzdCgpKS50b1Byb21pc2UoKTtcbiAgICAgIHJldHVybiB0aGlzLm5hdmlnYXRpb25FbmRMaXN0ZW5lciQucGlwZShzdGFydFdpdGgoY3VycmVudE5hdmlnYXRpb25FbmQpKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubmF2aWdhdGlvbkVuZExpc3RlbmVyJDtcbiAgfVxuXG4gIHByaXZhdGUgbW9kYWxSb3V0ZUFjdGl2YXRlZEZvcihcbiAgICBuYXZpZ2F0aW9uRW5kJDogT2JzZXJ2YWJsZTxOYXZpZ2F0aW9uRW5kPixcbiAgICBtb2RhbFJvdXRlU2V0OiBTZXQ8c3RyaW5nPixcbiAgICBtb2RhbFJvdXRlc0NvbnRhaW5zVXJsUGFyYW1zOiBib29sZWFuXG4gICk6IE9ic2VydmFibGU8TW9kYWxSb3V0ZUFjdGl2YXRpb24+IHtcbiAgICByZXR1cm4gbmF2aWdhdGlvbkVuZCQucGlwZShcbiAgICAgIGZpbHRlcigobmF2aWdhdGlvbkVuZCkgPT5cbiAgICAgICAgdGhpcy5tb2RhbFJvdXRlU2V0Q29udGFpbnNQYXRoKG1vZGFsUm91dGVTZXQsIG5hdmlnYXRpb25FbmQsIG1vZGFsUm91dGVzQ29udGFpbnNVcmxQYXJhbXMpXG4gICAgICApLFxuICAgICAgbWFwKChuYXZpZ2F0aW9uRW5kKSA9PiAoe1xuICAgICAgICByb3V0ZTogdGhpcy5nZXRDdXJyZW50QWN0aXZhdGVkUm91dGUoKSxcbiAgICAgICAgaXNOZXdNb2RhbDogdGhpcy5pc05ld01vZGFsV2luZG93KG5hdmlnYXRpb25FbmQpLFxuICAgICAgfSkpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgbW9kYWxSb3V0ZURlYWN0aXZhdGVkRm9yKFxuICAgIG5hdmlnYXRpb25FbmQkOiBPYnNlcnZhYmxlPE5hdmlnYXRpb25FbmQ+LFxuICAgIG1vZGFsUm91dGVTZXQ6IFNldDxzdHJpbmc+LFxuICAgIG1vZGFsUm91dGVzQ29udGFpbnNVcmxQYXJhbXM6IGJvb2xlYW5cbiAgKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIG5hdmlnYXRpb25FbmQkLnBpcGUoXG4gICAgICBwYWlyd2lzZSgpLFxuICAgICAgZmlsdGVyKChbcHJldk5hdmlnYXRpb24sIF9dKSA9PlxuICAgICAgICB0aGlzLm1vZGFsUm91dGVTZXRDb250YWluc1BhdGgobW9kYWxSb3V0ZVNldCwgcHJldk5hdmlnYXRpb24sIG1vZGFsUm91dGVzQ29udGFpbnNVcmxQYXJhbXMpXG4gICAgICApLCAvLyBPbmx5IGVtaXQgaWYgcHJldmlvdXMgcm91dGUgd2FzIG1vZGFsXG4gICAgICBtYXAoKFtfLCBjdXJyZW50TmF2aWdhdGlvbl0pID0+IHtcbiAgICAgICAgY29uc3QgaXNOZXdNb2RhbFJvdXRlID0gdGhpcy5pc01vZGFsUm91dGUoY3VycmVudE5hdmlnYXRpb24udXJsQWZ0ZXJSZWRpcmVjdHMpO1xuICAgICAgICAvLyBEZWFjdGl2YXRlIG1vZGFsIHJvdXRlIGlmIG5ldyByb3V0ZSBpcyBOT1QgbW9kYWwgT1IgaXMgb3V0c2lkZSBjdXJyZW50IHBhcmVudCByb3V0ZTpcbiAgICAgICAgcmV0dXJuICFpc05ld01vZGFsUm91dGUgfHwgdGhpcy5pc05ld01vZGFsV2luZG93KGN1cnJlbnROYXZpZ2F0aW9uKTtcbiAgICAgIH0pLFxuICAgICAgZmlsdGVyKChpc0RlYWN0aXZhdGlvbikgPT4gaXNEZWFjdGl2YXRpb24pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgbW9kYWxSb3V0ZVNldENvbnRhaW5zUGF0aChcbiAgICBtb2RhbFJvdXRlU2V0OiBTZXQ8c3RyaW5nPixcbiAgICBuYXZpZ2F0aW9uRW5kOiBOYXZpZ2F0aW9uRW5kLFxuICAgIG1vZGFsUm91dGVzQ29udGFpbnNVcmxQYXJhbXM6IGJvb2xlYW5cbiAgKSB7XG4gICAgY29uc3QgcGF0aG5hbWUgPSBuYXZpZ2F0aW9uRW5kLnVybEFmdGVyUmVkaXJlY3RzLnNwbGl0KCc/JylbMF07XG4gICAgbGV0IGhhc1JvdXRlID0gbW9kYWxSb3V0ZVNldC5oYXMocGF0aG5hbWUpO1xuICAgIGlmICghaGFzUm91dGUgJiYgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtcykge1xuICAgICAgLy8gVXNlIGBmb3IgLi4uIG9mYCBpbnN0ZWFkIG9mIGBmb3JFYWNoYCBzbyB3ZSBjYW4gYnJlYWsgb3V0IG9mIHRoZSBsb29wIGlmIHJvdXRlIGlzIGZvdW5kOlxuICAgICAgZm9yIChsZXQgcm91dGUgb2YgbW9kYWxSb3V0ZVNldCkge1xuICAgICAgICBjb25zdCBleGFjdE1hdGNoID0gdHJ1ZTtcbiAgICAgICAgY29uc3Qgcm91dGVNYXRjaGVzUGF0aCA9IHRoaXMucGF0aENvbnRhaW5zQ2hpbGRSb3V0ZVdpdGhVcmxQYXJhbXMoXG4gICAgICAgICAgcGF0aG5hbWUsXG4gICAgICAgICAgcm91dGUsXG4gICAgICAgICAgZXhhY3RNYXRjaFxuICAgICAgICApO1xuICAgICAgICBpZiAocm91dGVNYXRjaGVzUGF0aCkge1xuICAgICAgICAgIGhhc1JvdXRlID0gdHJ1ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gaGFzUm91dGU7XG4gIH1cblxuICBhc3luYyBnZXRNb2RhbE5hdmlnYXRpb24oXG4gICAgcm91dGVDb25maWc6IFJvdXRlc1tdLFxuICAgIG1vZHVsZVJvb3RSb3V0ZVBhdGg/OiBzdHJpbmdcbiAgKTogUHJvbWlzZTx7IGFjdGl2YXRlZCQ6IE9ic2VydmFibGU8TW9kYWxSb3V0ZUFjdGl2YXRpb24+OyBkZWFjdGl2YXRlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gfT4ge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHJvdXRlQ29uZmlnKSkge1xuICAgICAgY29uc3QgbmF2aWdhdGlvbkVuZCQgPSBhd2FpdCB0aGlzLndhaXRGb3JDdXJyZW50VGhlbkdldE5hdmlnYXRpb25FbmRTdHJlYW0oKTtcbiAgICAgIGNvbnN0IG1vZGFsUm91dGVzID0gYXdhaXQgdGhpcy5nZXRNb2RhbFJvdXRlcyhyb3V0ZUNvbmZpZywgbW9kdWxlUm9vdFJvdXRlUGF0aCk7XG4gICAgICBjb25zdCBoYXNNb2RhbFJvdXRlcyA9IG1vZGFsUm91dGVzLmxlbmd0aCA+IDA7XG4gICAgICBpZiAoaGFzTW9kYWxSb3V0ZXMpIHtcbiAgICAgICAgY29uc3QgbW9kYWxSb3V0ZXNDb250YWluc1VybFBhcmFtcyA9IG1vZGFsUm91dGVzLnNvbWUoKHJvdXRlKSA9PiByb3V0ZS5pbmNsdWRlcygnLzonKSk7XG4gICAgICAgIGNvbnN0IG1vZGFsUm91dGVTZXQgPSBuZXcgU2V0KG1vZGFsUm91dGVzKTtcbiAgICAgICAgY29uc3QgYWN0aXZhdGVkJCA9IHRoaXMubW9kYWxSb3V0ZUFjdGl2YXRlZEZvcihcbiAgICAgICAgICBuYXZpZ2F0aW9uRW5kJCxcbiAgICAgICAgICBtb2RhbFJvdXRlU2V0LFxuICAgICAgICAgIG1vZGFsUm91dGVzQ29udGFpbnNVcmxQYXJhbXNcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgZGVhY3RpdmF0ZWQkID0gdGhpcy5tb2RhbFJvdXRlRGVhY3RpdmF0ZWRGb3IoXG4gICAgICAgICAgbmF2aWdhdGlvbkVuZCQsXG4gICAgICAgICAgbW9kYWxSb3V0ZVNldCxcbiAgICAgICAgICBtb2RhbFJvdXRlc0NvbnRhaW5zVXJsUGFyYW1zXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB7IGFjdGl2YXRlZCQsIGRlYWN0aXZhdGVkJCB9O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4geyBhY3RpdmF0ZWQkOiBFTVBUWSwgZGVhY3RpdmF0ZWQkOiBFTVBUWSB9O1xuICB9XG5cbiAgYXN5bmMgbmF2aWdhdGVUb01vZGFsKHBhdGg6IHN0cmluZyB8IHN0cmluZ1tdLCBxdWVyeVBhcmFtcz86IFBhcmFtcyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGNvbW1hbmRzID0gQXJyYXkuaXNBcnJheShwYXRoKSA/IHBhdGggOiBwYXRoLnNwbGl0KCcvJyk7XG4gICAgY29uc3QgY2hpbGRQYXRoID0gY29tbWFuZHMucG9wKCk7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWy4uLmNvbW1hbmRzLCB7IG91dGxldHM6IHsgbW9kYWw6IFtjaGlsZFBhdGhdIH0gfV0sIHtcbiAgICAgIHF1ZXJ5UGFyYW1zLFxuICAgICAgcmVsYXRpdmVUbzogdGhpcy5nZXRDdXJyZW50QWN0aXZhdGVkUm91dGUoKSxcbiAgICB9KTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgYXN5bmMgbmF2aWdhdGVXaXRoaW5Nb2RhbChyZWxhdGl2ZVBhdGg6IHN0cmluZywgcXVlcnlQYXJhbXM/OiBQYXJhbXMpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3JlbGF0aXZlUGF0aF0sIHtcbiAgICAgIHF1ZXJ5UGFyYW1zLFxuICAgICAgcmVsYXRpdmVUbzogdGhpcy5nZXRDdXJyZW50QWN0aXZhdGVkUm91dGUoKSxcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIG5hdmlnYXRlT3V0T2ZNb2RhbE91dGxldCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBsZXQgcmVzdWx0ID0gUHJvbWlzZS5yZXNvbHZlKHRydWUpO1xuICAgIGNvbnN0IGN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSA9IHRoaXMuZ2V0Q3VycmVudEFjdGl2YXRlZFJvdXRlKCk7XG4gICAgaWYgKGN1cnJlbnRBY3RpdmF0ZWRSb3V0ZS5vdXRsZXQgPT09ICdtb2RhbCcpIHtcbiAgICAgIGNvbnN0IHBhcmVudFJvdXRlID0gdGhpcy5nZXRCYWNrZHJvcFJvdXRlKGN1cnJlbnRBY3RpdmF0ZWRSb3V0ZSk7XG4gICAgICByZXN1bHQgPSB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy4vJ10sIHtcbiAgICAgICAgcmVsYXRpdmVUbzogcGFyZW50Um91dGUsXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QmFja2Ryb3BSb3V0ZShjdXJyZW50QWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7XG4gICAgbGV0IHBhcmVudFJvdXRlID0gY3VycmVudEFjdGl2YXRlZFJvdXRlLnBhcmVudDtcbiAgICB3aGlsZSAocGFyZW50Um91dGUgJiYgIXBhcmVudFJvdXRlLmNvbXBvbmVudCAmJiAhIXBhcmVudFJvdXRlLnBhcmVudCkge1xuICAgICAgcGFyZW50Um91dGUgPSBwYXJlbnRSb3V0ZS5wYXJlbnQ7XG4gICAgfVxuICAgIHJldHVybiBwYXJlbnRSb3V0ZTtcbiAgfVxufVxuIl19
|
|
@@ -15,6 +15,11 @@ import { ActionSheetHelper } from './action-sheet.helper';
|
|
|
15
15
|
import { AlertHelper } from './alert.helper';
|
|
16
16
|
import { ModalNavigationService } from './modal-navigation.service';
|
|
17
17
|
import { ModalHelper } from './modal.helper';
|
|
18
|
+
import * as i0 from "@angular/core";
|
|
19
|
+
import * as i1 from "./modal.helper";
|
|
20
|
+
import * as i2 from "./action-sheet.helper";
|
|
21
|
+
import * as i3 from "./alert.helper";
|
|
22
|
+
import * as i4 from "./modal-navigation.service";
|
|
18
23
|
export class ModalController {
|
|
19
24
|
constructor(modalHelper, actionSheetHelper, alertHelper, modalNavigationService, routeConfig) {
|
|
20
25
|
this.modalHelper = modalHelper;
|
|
@@ -56,9 +61,6 @@ export class ModalController {
|
|
|
56
61
|
}
|
|
57
62
|
showModal(config, onClose) {
|
|
58
63
|
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
-
if (config.hasOwnProperty('dim')) {
|
|
60
|
-
console.warn('ModalConfig.dim is deprecated - please remove from your configuration.');
|
|
61
|
-
}
|
|
62
64
|
yield this.showAndRegisterOverlay(() => this.modalHelper.showModalWindow(config), onClose);
|
|
63
65
|
});
|
|
64
66
|
}
|
|
@@ -78,7 +80,7 @@ export class ModalController {
|
|
|
78
80
|
component: null,
|
|
79
81
|
modalRoute: modalRoute,
|
|
80
82
|
siblingModalRouteActivated$: siblingModalRouteActivated$,
|
|
81
|
-
flavor: 'modal',
|
|
83
|
+
flavor: 'modal', // Todo: Should it be possible to specify flavor as data in RouteConfig?
|
|
82
84
|
};
|
|
83
85
|
yield this.showAndRegisterOverlay(() => this.modalHelper.showModalWindow(config), null, onWillClose);
|
|
84
86
|
});
|
|
@@ -156,15 +158,14 @@ export class ModalController {
|
|
|
156
158
|
this.destroy$.complete();
|
|
157
159
|
}
|
|
158
160
|
}
|
|
159
|
-
ModalController
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
];
|
|
170
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9zZXJ2aWNlcy9tb2RhbC5jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFhLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQWtDLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pFLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFPeEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUk3QyxNQUFNLE9BQU8sZUFBZTtJQUsxQixZQUNVLFdBQXdCLEVBQ3hCLGlCQUFvQyxFQUNwQyxXQUF3QixFQUN4QixzQkFBOEMsRUFDbEIsV0FBcUI7UUFKakQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBQ2xCLGdCQUFXLEdBQVgsV0FBVyxDQUFVO1FBVG5ELGFBQVEsR0FBYyxFQUFFLENBQUM7UUFDaEIsb0NBQStCLEdBQUcsNENBQTRDLENBQUM7UUFDeEYsYUFBUSxHQUFHLElBQUksT0FBTyxF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QUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1NBQ3ZEO1FBQ0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLCtCQUErQixFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFWSxPQUFPOztZQUNsQixNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQ2YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBTyxPQUFPLEVBQUUsRUFBRTtnQkFDbEMsTUFBTSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDMUIsQ0FBQyxDQUFBLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQztLQUFBO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDOzs7WUFuTEYsVUFBVTs7OztZQUhGLFdBQVc7WUFIWCxpQkFBaUI7WUFDakIsV0FBVztZQUNYLHNCQUFzQjt3Q0FlMUIsUUFBUSxZQUFJLE1BQU0sU0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPbkRlc3Ryb3ksIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUGFyYW1zLCBSb3V0ZXMsIFJPVVRFUyB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBLaXJieUFuaW1hdGlvbiB9IGZyb20gJy4uLy4uLy4uL2FuaW1hdGlvbi9raXJieS1hbmltYXRpb24nO1xuaW1wb3J0IHsgQWN0aW9uU2hlZXRDb25maWcgfSBmcm9tICcuLi9hY3Rpb24tc2hlZXQvY29uZmlnL2FjdGlvbi1zaGVldC1jb25maWcnO1xuaW1wb3J0IHsgQWxlcnRDb25maWcgfSBmcm9tICcuLi9hbGVydC9jb25maWcvYWxlcnQtY29uZmlnJztcbmltcG9ydCB7IE1vZGFsQ29uZmlnIH0gZnJvbSAnLi4vbW9kYWwtd3JhcHBlci9jb25maWcvbW9kYWwtY29uZmlnJztcblxuaW1wb3J0IHsgQWN0aW9uU2hlZXRIZWxwZXIgfSBmcm9tICcuL2FjdGlvbi1zaGVldC5oZWxwZXInO1xuaW1wb3J0IHsgQWxlcnRIZWxwZXIgfSBmcm9tICcuL2FsZXJ0LmhlbHBlcic7XG5pbXBvcnQgeyBNb2RhbE5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9tb2RhbC1uYXZpZ2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9kYWxIZWxwZXIgfSBmcm9tICcuL21vZGFsLmhlbHBlcic7XG5pbXBvcnQgeyBNb2RhbFJvdXRlQWN0aXZhdGlvbiwgT3ZlcmxheSB9IGZyb20gJy4vbW9kYWwuaW50ZXJmYWNlcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNb2RhbENvbnRyb2xsZXIgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIG92ZXJsYXlzOiBPdmVybGF5W10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBub092ZXJsYXlSZWdpc3RlcmVkRXJyb3JNZXNzYWdlID0gJ05vIG1vZGFsIG92ZXJsYXlzIGFyZSBjdXJyZW50bHkgcmVnaXN0ZXJlZCc7XG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgbW9kYWxIZWxwZXI6IE1vZGFsSGVscGVyLFxuICAgIHByaXZhdGUgYWN0aW9uU2hlZXRIZWxwZXI6IEFjdGlvblNoZWV0SGVscGVyLFxuICAgIHByaXZhdGUgYWxlcnRIZWxwZXI6IEFsZXJ0SGVscGVyLFxuICAgIHByaXZhdGUgbW9kYWxOYXZpZ2F0aW9uU2VydmljZTogTW9kYWxOYXZpZ2F0aW9uU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFJPVVRFUykgcHJpdmF0ZSByb3V0ZUNvbmZpZzogUm91dGVzW11cbiAgKSB7fVxuXG4gIGFzeW5jIGluaXRpYWxpemUobW9kdWxlUm9vdFJvdXRlUGF0aD86IHN0cmluZykge1xuICAgIGNvbnN0IG1vZGFsTmF2aWdhdGlvbiA9IGF3YWl0IHRoaXMubW9kYWxOYXZpZ2F0aW9uU2VydmljZS5nZXRNb2RhbE5hdmlnYXRpb24oXG4gICAgICB0aGlzLnJvdXRlQ29uZmlnLFxuICAgICAgbW9kdWxlUm9vdFJvdXRlUGF0aFxuICAgICk7XG4gICAgdGhpcy5vbk1vZGFsUm91dGVBY3RpdmF0ZWQobW9kYWxOYXZpZ2F0aW9uLmFjdGl2YXRlZCQpO1xuICAgIHRoaXMub25Nb2RhbFJvdXRlRGVhY3RpdmF0ZWQobW9kYWxOYXZpZ2F0aW9uLmRlYWN0aXZhdGVkJCk7IC8vIFRPRE86IERvIHdlIHdhbnQgdG8gY2xvc2UgbW9kYWwgd2hlbiByb3V0aW5nIG91dCBvZiBtb2RhbCByb3V0ZT8gT3Igc2hvdWxkIHRoZSBjb2RlIHRoYXQgbmF2aWdhdGVzIGNsb3NlIHRoZSB3aW5kb3c/P1xuICB9XG5cbiAgcHJpdmF0ZSBvbk1vZGFsUm91dGVBY3RpdmF0ZWQobW9kYWxSb3V0ZUFjdGl2YXRlZCQ6IE9ic2VydmFibGU8TW9kYWxSb3V0ZUFjdGl2YXRpb24+KSB7XG4gICAgY29uc3QgbmF2aWdhdGVPbldpbGxDbG9zZSA9ICgpID0+IHtcbiAgICAgIHRoaXMubW9kYWxOYXZpZ2F0aW9uU2VydmljZS5uYXZpZ2F0ZU91dE9mTW9kYWxPdXRsZXQoKTtcbiAgICB9O1xuICAgIGNvbnN0IHNpYmxpbmdNb2RhbFJvdXRlQWN0aXZhdGVkJCA9IG1vZGFsUm91dGVBY3RpdmF0ZWQkLnBpcGUoXG4gICAgICBmaWx0ZXIoKG1vZGFsUm91dGVBY3RpdmF0aW9uKSA9PiAhbW9kYWxSb3V0ZUFjdGl2YXRpb24uaXNOZXdNb2RhbCksXG4gICAgICBtYXAoKG1vZGFsUm91dGVBY3RpdmF0aW9uKSA9PiBtb2RhbFJvdXRlQWN0aXZhdGlvbi5yb3V0ZSlcbiAgICApO1xuXG4gICAgbW9kYWxSb3V0ZUFjdGl2YXRlZCRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICAgIGZpbHRlcigoKSA9PiB0aGlzLm92ZXJsYXlzLmxlbmd0aCA9PT0gMClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoYXN5bmMgKG1vZGFsUm91dGVBY3RpdmF0aW9uKSA9PiB7XG4gICAgICAgIGlmIChtb2RhbFJvdXRlQWN0aXZhdGlvbi5pc05ld01vZGFsKSB7XG4gICAgICAgICAgYXdhaXQgdGhpcy5zaG93TW9kYWxSb3V0ZShcbiAgICAgICAgICAgIG1vZGFsUm91dGVBY3RpdmF0aW9uLnJvdXRlLFxuICAgICAgICAgICAgc2libGluZ01vZGFsUm91dGVBY3RpdmF0ZWQkLFxuICAgICAgICAgICAgbmF2aWdhdGVPbldpbGxDbG9zZVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBvbk1vZGFsUm91dGVEZWFjdGl2YXRlZChtb2RhbFJvdXRlRGVhY3RpdmF0ZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+KSB7XG4gICAgbW9kYWxSb3V0ZURlYWN0aXZhdGVkJFxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgZmlsdGVyKCgpID0+IHRoaXMub3ZlcmxheXMubGVuZ3RoID4gMCkgLy8gVE9ETzogVGhpcyBhbHNvIGZpcmVzIHdoZW4gY2xvc2luZyBvdmVybGF5IC0gc2hvdWxkIHdlIGNoZWNrIGZvciBpc0Nsb3Npbmc/P1xuICAgICAgKVxuICAgICAgLnN1YnNjcmliZShhc3luYyAoKSA9PiB7XG4gICAgICAgIGF3YWl0IHRoaXMuaGlkZUFsbCgpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgc2hvd01vZGFsKGNvbmZpZzogTW9kYWxDb25maWcsIG9uQ2xvc2U/OiAoZGF0YT86IGFueSkgPT4gdm9pZCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmIChjb25maWcuaGFzT3duUHJvcGVydHkoJ2RpbScpKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ01vZGFsQ29uZmlnLmRpbSBpcyBkZXByZWNhdGVkIC0gcGxlYXNlIHJlbW92ZSBmcm9tIHlvdXIgY29uZmlndXJhdGlvbi4nKTtcbiAgICB9XG4gICAgYXdhaXQgdGhpcy5zaG93QW5kUmVnaXN0ZXJPdmVybGF5KCgpID0+IHRoaXMubW9kYWxIZWxwZXIuc2hvd01vZGFsV2luZG93KGNvbmZpZyksIG9uQ2xvc2UpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIG5hdmlnYXRlVG9Nb2RhbChwYXRoOiBzdHJpbmcgfCBzdHJpbmdbXSwgcXVlcnlQYXJhbXM/OiBQYXJhbXMpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5tb2RhbE5hdmlnYXRpb25TZXJ2aWNlLm5hdmlnYXRlVG9Nb2RhbChwYXRoLCBxdWVyeVBhcmFtcyk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgbmF2aWdhdGVXaXRoaW5Nb2RhbChyZWxhdGl2ZVBhdGg6IHN0cmluZywgcXVlcnlQYXJhbXM/OiBQYXJhbXMpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5tb2RhbE5hdmlnYXRpb25TZXJ2aWNlLm5hdmlnYXRlV2l0aGluTW9kYWwocmVsYXRpdmVQYXRoLCBxdWVyeVBhcmFtcyk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNob3dNb2RhbFJvdXRlKFxuICAgIG1vZGFsUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHNpYmxpbmdNb2RhbFJvdXRlQWN0aXZhdGVkJDogT2JzZXJ2YWJsZTxBY3RpdmF0ZWRSb3V0ZT4sXG4gICAgb25XaWxsQ2xvc2U6IChkYXRhPzogYW55KSA9PiB2b2lkXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNvbmZpZzogTW9kYWxDb25maWcgPSB7XG4gICAgICBjb21wb25lbnQ6IG51bGwsXG4gICAgICBtb2RhbFJvdXRlOiBtb2RhbFJvdXRlLFxuICAgICAgc2libGluZ01vZGFsUm91dGVBY3RpdmF0ZWQkOiBzaWJsaW5nTW9kYWxSb3V0ZUFjdGl2YXRlZCQsXG4gICAgICBmbGF2b3I6ICdtb2RhbCcsIC8vIFRvZG86IFNob3VsZCBpdCBiZSBwb3NzaWJsZSB0byBzcGVjaWZ5IGZsYXZvciBhcyBkYXRhIGluIFJvdXRlQ29uZmlnP1xuICAgIH07XG4gICAgYXdhaXQgdGhpcy5zaG93QW5kUmVnaXN0ZXJPdmVybGF5KFxuICAgICAgKCkgPT4gdGhpcy5tb2RhbEhlbHBlci5zaG93TW9kYWxXaW5kb3coY29uZmlnKSxcbiAgICAgIG51bGwsXG4gICAgICBvbldpbGxDbG9zZVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgc2hvd0FjdGlvblNoZWV0KFxuICAgIGNvbmZpZzogQWN0aW9uU2hlZXRDb25maWcsXG4gICAgb25DbG9zZT86IChkYXRhPzogYW55KSA9PiB2b2lkXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuc2hvd0FuZFJlZ2lzdGVyT3ZlcmxheShcbiAgICAgICgpID0+IHRoaXMuYWN0aW9uU2hlZXRIZWxwZXIuc2hvd0FjdGlvblNoZWV0KGNvbmZpZyksXG4gICAgICBvbkNsb3NlXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBzaG93QWxlcnQoY29uZmlnOiBBbGVydENvbmZpZywgb25DbG9zZT86IChyZXN1bHQ6IGJvb2xlYW4pID0+IHZvaWQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnNob3dBbmRSZWdpc3Rlck92ZXJsYXkoKCkgPT4gdGhpcy5hbGVydEhlbHBlci5zaG93QWxlcnQoY29uZmlnKSwgb25DbG9zZSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHNob3dBbmRSZWdpc3Rlck92ZXJsYXkoXG4gICAgc2hvd092ZXJsYXk6ICgpID0+IFByb21pc2U8T3ZlcmxheT4sXG4gICAgb25DbG9zZU92ZXJsYXk/OiAoZGF0YT86IGFueSkgPT4gdm9pZCxcbiAgICBvbldpbGxDbG9zZU92ZXJsYXk/OiAoZGF0YT86IGFueSkgPT4gdm9pZFxuICApIHtcbiAgICBjb25zdCBvdmVybGF5ID0gYXdhaXQgc2hvd092ZXJsYXkoKTtcbiAgICBpZiAoIW92ZXJsYXkpIHJldHVybjtcblxuICAgIHRoaXMub3ZlcmxheXMucHVzaChvdmVybGF5KTtcblxuICAgIGlmICh0eXBlb2Ygb25XaWxsQ2xvc2VPdmVybGF5ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBvdmVybGF5Lm9uV2lsbERpc21pc3MudGhlbigoZXZlbnQpID0+IG9uV2lsbENsb3NlT3ZlcmxheShldmVudC5kYXRhKSk7XG4gICAgfVxuXG4gICAgb3ZlcmxheS5vbkRpZERpc21pc3MudGhlbigoZXZlbnQpID0+IHtcbiAgICAgIHRoaXMub3ZlcmxheXMucG9wKCk7XG4gICAgICBpZiAodHlwZW9mIG9uQ2xvc2VPdmVybGF5ID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIG9uQ2xvc2VPdmVybGF5KGV2ZW50LmRhdGEpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyUHJlc2VudGluZ0VsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLm1vZGFsSGVscGVyLnJlZ2lzdGVyUHJlc2VudGluZ0VsZW1lbnQoZWxlbWVudCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgaGlkZVRvcG1vc3QoZGF0YT86IGFueSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IG92ZXJsYXkgPSB0aGlzLm92ZXJsYXlzW3RoaXMub3ZlcmxheXMubGVuZ3RoIC0gMV07XG4gICAgaWYgKCFvdmVybGF5KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IodGhpcy5ub092ZXJsYXlSZWdpc3RlcmVkRXJyb3JNZXNzYWdlKTtcbiAgICB9XG4gICAgcmV0dXJuIG92ZXJsYXkuZGlzbWlzcyhkYXRhKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBXaWxsIGJlIHJlbW92ZWQgaW4gbmV4dCBtYWpvciB2ZXJzaW9uLiBJbmplY3QgTW9kYWwgaW4gZW1iZWRkZWQgY29tcG9uZW50IGFuZCB1c2UgTW9kYWwuc2Nyb2xsVG9Ub3AgaW5zdGVhZC5cbiAgICovXG4gIHB1YmxpYyBzY3JvbGxUb1RvcChkdXJhdGlvbj86IEtpcmJ5QW5pbWF0aW9uLkR1cmF0aW9uKSB7XG4gICAgY29uc29sZS53YXJuKFxuICAgICAgJ01vZGFsQ29udHJvbGxlci5zY3JvbGxUb1RvcCBpcyBkZXByZWNhdGVkIC0gcGxlYXNlIGluamVjdCBNb2RhbCBpbiBlbWJlZGRlZCBjb21wb25lbnQgYW5kIHVzZSBNb2RhbC5zY3JvbGxUb1RvcCBpbnN0ZWFkLidcbiAgICApO1xuICAgIGNvbnN0IG92ZXJsYXkgPSB0aGlzLm92ZXJsYXlzW3RoaXMub3ZlcmxheXMubGVuZ3RoIC0gMV07XG4gICAgaWYgKCFvdmVybGF5KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IodGhpcy5ub092ZXJsYXlSZWdpc3RlcmVkRXJyb3JNZXNzYWdlKTtcbiAgICB9XG4gICAgdGhpcy5tb2RhbEhlbHBlci5zY3JvbGxUb1RvcCh0aGlzLm5vT3ZlcmxheVJlZ2lzdGVyZWRFcnJvck1lc3NhZ2UsIGR1cmF0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBXaWxsIGJlIHJlbW92ZWQgaW4gbmV4dCBtYWpvciB2ZXJzaW9uLiBJbmplY3QgTW9kYWwgaW4gZW1iZWRkZWQgY29tcG9uZW50IGFuZCB1c2UgTW9kYWwuc2Nyb2xsVG9Cb3R0b20gaW5zdGVhZC5cbiAgICovXG4gIHB1YmxpYyBzY3JvbGxUb0JvdHRvbShkdXJhdGlvbj86IEtpcmJ5QW5pbWF0aW9uLkR1cmF0aW9uKSB7XG4gICAgY29uc29sZS53YXJuKFxuICAgICAgJ01vZGFsQ29udHJvbGxlci5zY3JvbGxUb0JvdHRvbSBpcyBkZXByZWNhdGVkIC0gcGxlYXNlIGluamVjdCBNb2RhbCBpbiBlbWJlZGRlZCBjb21wb25lbnQgYW5kIHVzZSBNb2RhbC5zY3JvbGxUb0JvdHRvbSBpbnN0ZWFkLidcbiAgICApO1xuICAgIGNvbnN0IG92ZXJsYXkgPSB0aGlzLm92ZXJsYXlzW3RoaXMub3ZlcmxheXMubGVuZ3RoIC0gMV07XG4gICAgaWYgKCFvdmVybGF5KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IodGhpcy5ub092ZXJsYXlSZWdpc3RlcmVkRXJyb3JNZXNzYWdlKTtcbiAgICB9XG4gICAgdGhpcy5tb2RhbEhlbHBlci5zY3JvbGxUb0JvdHRvbSh0aGlzLm5vT3ZlcmxheVJlZ2lzdGVyZWRFcnJvck1lc3NhZ2UsIGR1cmF0aW9uKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBoaWRlQWxsKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgdGhpcy5vdmVybGF5cy5tYXAoYXN5bmMgKG92ZXJsYXkpID0+IHtcbiAgICAgICAgYXdhaXQgb3ZlcmxheS5kaXNtaXNzKCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
161
|
+
/** @nocollapse */ ModalController.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ModalController, deps: [{ token: i1.ModalHelper }, { token: i2.ActionSheetHelper }, { token: i3.AlertHelper }, { token: i4.ModalNavigationService }, { token: ROUTES, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
162
|
+
/** @nocollapse */ ModalController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ModalController });
|
|
163
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ModalController, decorators: [{
|
|
164
|
+
type: Injectable
|
|
165
|
+
}], ctorParameters: function () { return [{ type: i1.ModalHelper }, { type: i2.ActionSheetHelper }, { type: i3.AlertHelper }, { type: i4.ModalNavigationService }, { type: undefined, decorators: [{
|
|
166
|
+
type: Optional
|
|
167
|
+
}, {
|
|
168
|
+
type: Inject,
|
|
169
|
+
args: [ROUTES]
|
|
170
|
+
}] }]; } });
|
|
171
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZGVzaWduc3lzdGVtL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbC9zZXJ2aWNlcy9tb2RhbC5jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFhLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQWtDLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pFLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFPeEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBSTdDLE1BQU0sT0FBTyxlQUFlO0lBSzFCLFlBQ1UsV0FBd0IsRUFDeEIsaUJBQW9DLEVBQ3BDLFdBQXdCLEVBQ3hCLHNCQUE4QyxFQUNsQixXQUFxQjtRQUpqRCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDbEIsZ0JBQVcsR0FBWCxXQUFXLENBQVU7UUFUbkQsYUFBUSxHQUFjLEVBQUUsQ0FBQztRQUNoQixvQ0FBK0IsR0FBRyw0Q0FBNEMsQ0FBQztRQUN4RixhQUFRLEdBQUcsSUFBSSxP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QyxPQUFPLEVBQUU7WUFDWixNQUFNLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1NBQ3ZEO1FBQ0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLCtCQUErQixFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFWSxPQUFPOztZQUNsQixNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQ2YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBTyxPQUFPLEVBQUUsRUFBRTtnQkFDbEMsTUFBTSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDMUIsQ0FBQyxDQUFBLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQztLQUFBO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMzQixDQUFDOztnSUEvS1UsZUFBZSwrSUFVSixNQUFNO29JQVZqQixlQUFlOzRGQUFmLGVBQWU7a0JBRDNCLFVBQVU7OzBCQVdOLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFBhcmFtcywgUm91dGVzLCBST1VURVMgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgS2lyYnlBbmltYXRpb24gfSBmcm9tICcuLi8uLi8uLi9hbmltYXRpb24va2lyYnktYW5pbWF0aW9uJztcbmltcG9ydCB7IEFjdGlvblNoZWV0Q29uZmlnIH0gZnJvbSAnLi4vYWN0aW9uLXNoZWV0L2NvbmZpZy9hY3Rpb24tc2hlZXQtY29uZmlnJztcbmltcG9ydCB7IEFsZXJ0Q29uZmlnIH0gZnJvbSAnLi4vYWxlcnQvY29uZmlnL2FsZXJ0LWNvbmZpZyc7XG5pbXBvcnQgeyBNb2RhbENvbmZpZyB9IGZyb20gJy4uL21vZGFsLXdyYXBwZXIvY29uZmlnL21vZGFsLWNvbmZpZyc7XG5cbmltcG9ydCB7IEFjdGlvblNoZWV0SGVscGVyIH0gZnJvbSAnLi9hY3Rpb24tc2hlZXQuaGVscGVyJztcbmltcG9ydCB7IEFsZXJ0SGVscGVyIH0gZnJvbSAnLi9hbGVydC5oZWxwZXInO1xuaW1wb3J0IHsgTW9kYWxOYXZpZ2F0aW9uU2VydmljZSB9IGZyb20gJy4vbW9kYWwtbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IE1vZGFsSGVscGVyIH0gZnJvbSAnLi9tb2RhbC5oZWxwZXInO1xuaW1wb3J0IHsgTW9kYWxSb3V0ZUFjdGl2YXRpb24sIE92ZXJsYXkgfSBmcm9tICcuL21vZGFsLmludGVyZmFjZXMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTW9kYWxDb250cm9sbGVyIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBvdmVybGF5czogT3ZlcmxheVtdID0gW107XG4gIHByaXZhdGUgcmVhZG9ubHkgbm9PdmVybGF5UmVnaXN0ZXJlZEVycm9yTWVzc2FnZSA9ICdObyBtb2RhbCBvdmVybGF5cyBhcmUgY3VycmVudGx5IHJlZ2lzdGVyZWQnO1xuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG1vZGFsSGVscGVyOiBNb2RhbEhlbHBlcixcbiAgICBwcml2YXRlIGFjdGlvblNoZWV0SGVscGVyOiBBY3Rpb25TaGVldEhlbHBlcixcbiAgICBwcml2YXRlIGFsZXJ0SGVscGVyOiBBbGVydEhlbHBlcixcbiAgICBwcml2YXRlIG1vZGFsTmF2aWdhdGlvblNlcnZpY2U6IE1vZGFsTmF2aWdhdGlvblNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChST1VURVMpIHByaXZhdGUgcm91dGVDb25maWc6IFJvdXRlc1tdXG4gICkge31cblxuICBhc3luYyBpbml0aWFsaXplKG1vZHVsZVJvb3RSb3V0ZVBhdGg/OiBzdHJpbmcpIHtcbiAgICBjb25zdCBtb2RhbE5hdmlnYXRpb24gPSBhd2FpdCB0aGlzLm1vZGFsTmF2aWdhdGlvblNlcnZpY2UuZ2V0TW9kYWxOYXZpZ2F0aW9uKFxuICAgICAgdGhpcy5yb3V0ZUNvbmZpZyxcbiAgICAgIG1vZHVsZVJvb3RSb3V0ZVBhdGhcbiAgICApO1xuICAgIHRoaXMub25Nb2RhbFJvdXRlQWN0aXZhdGVkKG1vZGFsTmF2aWdhdGlvbi5hY3RpdmF0ZWQkKTtcbiAgICB0aGlzLm9uTW9kYWxSb3V0ZURlYWN0aXZhdGVkKG1vZGFsTmF2aWdhdGlvbi5kZWFjdGl2YXRlZCQpOyAvLyBUT0RPOiBEbyB3ZSB3YW50IHRvIGNsb3NlIG1vZGFsIHdoZW4gcm91dGluZyBvdXQgb2YgbW9kYWwgcm91dGU/IE9yIHNob3VsZCB0aGUgY29kZSB0aGF0IG5hdmlnYXRlcyBjbG9zZSB0aGUgd2luZG93Pz9cbiAgfVxuXG4gIHByaXZhdGUgb25Nb2RhbFJvdXRlQWN0aXZhdGVkKG1vZGFsUm91dGVBY3RpdmF0ZWQkOiBPYnNlcnZhYmxlPE1vZGFsUm91dGVBY3RpdmF0aW9uPikge1xuICAgIGNvbnN0IG5hdmlnYXRlT25XaWxsQ2xvc2UgPSAoKSA9PiB7XG4gICAgICB0aGlzLm1vZGFsTmF2aWdhdGlvblNlcnZpY2UubmF2aWdhdGVPdXRPZk1vZGFsT3V0bGV0KCk7XG4gICAgfTtcbiAgICBjb25zdCBzaWJsaW5nTW9kYWxSb3V0ZUFjdGl2YXRlZCQgPSBtb2RhbFJvdXRlQWN0aXZhdGVkJC5waXBlKFxuICAgICAgZmlsdGVyKChtb2RhbFJvdXRlQWN0aXZhdGlvbikgPT4gIW1vZGFsUm91dGVBY3RpdmF0aW9uLmlzTmV3TW9kYWwpLFxuICAgICAgbWFwKChtb2RhbFJvdXRlQWN0aXZhdGlvbikgPT4gbW9kYWxSb3V0ZUFjdGl2YXRpb24ucm91dGUpXG4gICAgKTtcblxuICAgIG1vZGFsUm91dGVBY3RpdmF0ZWQkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICBmaWx0ZXIoKCkgPT4gdGhpcy5vdmVybGF5cy5sZW5ndGggPT09IDApXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKGFzeW5jIChtb2RhbFJvdXRlQWN0aXZhdGlvbikgPT4ge1xuICAgICAgICBpZiAobW9kYWxSb3V0ZUFjdGl2YXRpb24uaXNOZXdNb2RhbCkge1xuICAgICAgICAgIGF3YWl0IHRoaXMuc2hvd01vZGFsUm91dGUoXG4gICAgICAgICAgICBtb2RhbFJvdXRlQWN0aXZhdGlvbi5yb3V0ZSxcbiAgICAgICAgICAgIHNpYmxpbmdNb2RhbFJvdXRlQWN0aXZhdGVkJCxcbiAgICAgICAgICAgIG5hdmlnYXRlT25XaWxsQ2xvc2VcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb25Nb2RhbFJvdXRlRGVhY3RpdmF0ZWQobW9kYWxSb3V0ZURlYWN0aXZhdGVkJDogT2JzZXJ2YWJsZTxib29sZWFuPikge1xuICAgIG1vZGFsUm91dGVEZWFjdGl2YXRlZCRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCksXG4gICAgICAgIGZpbHRlcigoKSA9PiB0aGlzLm92ZXJsYXlzLmxlbmd0aCA+IDApIC8vIFRPRE86IFRoaXMgYWxzbyBmaXJlcyB3aGVuIGNsb3Npbmcgb3ZlcmxheSAtIHNob3VsZCB3ZSBjaGVjayBmb3IgaXNDbG9zaW5nPz9cbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoYXN5bmMgKCkgPT4ge1xuICAgICAgICBhd2FpdCB0aGlzLmhpZGVBbGwoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHNob3dNb2RhbChjb25maWc6IE1vZGFsQ29uZmlnLCBvbkNsb3NlPzogKGRhdGE/OiBhbnkpID0+IHZvaWQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnNob3dBbmRSZWdpc3Rlck92ZXJsYXkoKCkgPT4gdGhpcy5tb2RhbEhlbHBlci5zaG93TW9kYWxXaW5kb3coY29uZmlnKSwgb25DbG9zZSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgbmF2aWdhdGVUb01vZGFsKHBhdGg6IHN0cmluZyB8IHN0cmluZ1tdLCBxdWVyeVBhcmFtcz86IFBhcmFtcyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLm1vZGFsTmF2aWdhdGlvblNlcnZpY2UubmF2aWdhdGVUb01vZGFsKHBhdGgsIHF1ZXJ5UGFyYW1zKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBuYXZpZ2F0ZVdpdGhpbk1vZGFsKHJlbGF0aXZlUGF0aDogc3RyaW5nLCBxdWVyeVBhcmFtcz86IFBhcmFtcyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLm1vZGFsTmF2aWdhdGlvblNlcnZpY2UubmF2aWdhdGVXaXRoaW5Nb2RhbChyZWxhdGl2ZVBhdGgsIHF1ZXJ5UGFyYW1zKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc2hvd01vZGFsUm91dGUoXG4gICAgbW9kYWxSb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgc2libGluZ01vZGFsUm91dGVBY3RpdmF0ZWQkOiBPYnNlcnZhYmxlPEFjdGl2YXRlZFJvdXRlPixcbiAgICBvbldpbGxDbG9zZTogKGRhdGE/OiBhbnkpID0+IHZvaWRcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgY29uZmlnOiBNb2RhbENvbmZpZyA9IHtcbiAgICAgIGNvbXBvbmVudDogbnVsbCxcbiAgICAgIG1vZGFsUm91dGU6IG1vZGFsUm91dGUsXG4gICAgICBzaWJsaW5nTW9kYWxSb3V0ZUFjdGl2YXRlZCQ6IHNpYmxpbmdNb2RhbFJvdXRlQWN0aXZhdGVkJCxcbiAgICAgIGZsYXZvcjogJ21vZGFsJywgLy8gVG9kbzogU2hvdWxkIGl0IGJlIHBvc3NpYmxlIHRvIHNwZWNpZnkgZmxhdm9yIGFzIGRhdGEgaW4gUm91dGVDb25maWc/XG4gICAgfTtcbiAgICBhd2FpdCB0aGlzLnNob3dBbmRSZWdpc3Rlck92ZXJsYXkoXG4gICAgICAoKSA9PiB0aGlzLm1vZGFsSGVscGVyLnNob3dNb2RhbFdpbmRvdyhjb25maWcpLFxuICAgICAgbnVsbCxcbiAgICAgIG9uV2lsbENsb3NlXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBzaG93QWN0aW9uU2hlZXQoXG4gICAgY29uZmlnOiBBY3Rpb25TaGVldENvbmZpZyxcbiAgICBvbkNsb3NlPzogKGRhdGE/OiBhbnkpID0+IHZvaWRcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5zaG93QW5kUmVnaXN0ZXJPdmVybGF5KFxuICAgICAgKCkgPT4gdGhpcy5hY3Rpb25TaGVldEhlbHBlci5zaG93QWN0aW9uU2hlZXQoY29uZmlnKSxcbiAgICAgIG9uQ2xvc2VcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHNob3dBbGVydChjb25maWc6IEFsZXJ0Q29uZmlnLCBvbkNsb3NlPzogKHJlc3VsdDogYm9vbGVhbikgPT4gdm9pZCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuc2hvd0FuZFJlZ2lzdGVyT3ZlcmxheSgoKSA9PiB0aGlzLmFsZXJ0SGVscGVyLnNob3dBbGVydChjb25maWcpLCBvbkNsb3NlKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgc2hvd0FuZFJlZ2lzdGVyT3ZlcmxheShcbiAgICBzaG93T3ZlcmxheTogKCkgPT4gUHJvbWlzZTxPdmVybGF5PixcbiAgICBvbkNsb3NlT3ZlcmxheT86IChkYXRhPzogYW55KSA9PiB2b2lkLFxuICAgIG9uV2lsbENsb3NlT3ZlcmxheT86IChkYXRhPzogYW55KSA9PiB2b2lkXG4gICkge1xuICAgIGNvbnN0IG92ZXJsYXkgPSBhd2FpdCBzaG93T3ZlcmxheSgpO1xuICAgIGlmICghb3ZlcmxheSkgcmV0dXJuO1xuXG4gICAgdGhpcy5vdmVybGF5cy5wdXNoKG92ZXJsYXkpO1xuXG4gICAgaWYgKHR5cGVvZiBvbldpbGxDbG9zZU92ZXJsYXkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIG92ZXJsYXkub25XaWxsRGlzbWlzcy50aGVuKChldmVudCkgPT4gb25XaWxsQ2xvc2VPdmVybGF5KGV2ZW50LmRhdGEpKTtcbiAgICB9XG5cbiAgICBvdmVybGF5Lm9uRGlkRGlzbWlzcy50aGVuKChldmVudCkgPT4ge1xuICAgICAgdGhpcy5vdmVybGF5cy5wb3AoKTtcbiAgICAgIGlmICh0eXBlb2Ygb25DbG9zZU92ZXJsYXkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgb25DbG9zZU92ZXJsYXkoZXZlbnQuZGF0YSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJQcmVzZW50aW5nRWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCkge1xuICAgIHRoaXMubW9kYWxIZWxwZXIucmVnaXN0ZXJQcmVzZW50aW5nRWxlbWVudChlbGVtZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBoaWRlVG9wbW9zdChkYXRhPzogYW55KTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3Qgb3ZlcmxheSA9IHRoaXMub3ZlcmxheXNbdGhpcy5vdmVybGF5cy5sZW5ndGggLSAxXTtcbiAgICBpZiAoIW92ZXJsYXkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcih0aGlzLm5vT3ZlcmxheVJlZ2lzdGVyZWRFcnJvck1lc3NhZ2UpO1xuICAgIH1cbiAgICByZXR1cm4gb3ZlcmxheS5kaXNtaXNzKGRhdGEpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFdpbGwgYmUgcmVtb3ZlZCBpbiBuZXh0IG1ham9yIHZlcnNpb24uIEluamVjdCBNb2RhbCBpbiBlbWJlZGRlZCBjb21wb25lbnQgYW5kIHVzZSBNb2RhbC5zY3JvbGxUb1RvcCBpbnN0ZWFkLlxuICAgKi9cbiAgcHVibGljIHNjcm9sbFRvVG9wKGR1cmF0aW9uPzogS2lyYnlBbmltYXRpb24uRHVyYXRpb24pIHtcbiAgICBjb25zb2xlLndhcm4oXG4gICAgICAnTW9kYWxDb250cm9sbGVyLnNjcm9sbFRvVG9wIGlzIGRlcHJlY2F0ZWQgLSBwbGVhc2UgaW5qZWN0IE1vZGFsIGluIGVtYmVkZGVkIGNvbXBvbmVudCBhbmQgdXNlIE1vZGFsLnNjcm9sbFRvVG9wIGluc3RlYWQuJ1xuICAgICk7XG4gICAgY29uc3Qgb3ZlcmxheSA9IHRoaXMub3ZlcmxheXNbdGhpcy5vdmVybGF5cy5sZW5ndGggLSAxXTtcbiAgICBpZiAoIW92ZXJsYXkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcih0aGlzLm5vT3ZlcmxheVJlZ2lzdGVyZWRFcnJvck1lc3NhZ2UpO1xuICAgIH1cbiAgICB0aGlzLm1vZGFsSGVscGVyLnNjcm9sbFRvVG9wKHRoaXMubm9PdmVybGF5UmVnaXN0ZXJlZEVycm9yTWVzc2FnZSwgZHVyYXRpb24pO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFdpbGwgYmUgcmVtb3ZlZCBpbiBuZXh0IG1ham9yIHZlcnNpb24uIEluamVjdCBNb2RhbCBpbiBlbWJlZGRlZCBjb21wb25lbnQgYW5kIHVzZSBNb2RhbC5zY3JvbGxUb0JvdHRvbSBpbnN0ZWFkLlxuICAgKi9cbiAgcHVibGljIHNjcm9sbFRvQm90dG9tKGR1cmF0aW9uPzogS2lyYnlBbmltYXRpb24uRHVyYXRpb24pIHtcbiAgICBjb25zb2xlLndhcm4oXG4gICAgICAnTW9kYWxDb250cm9sbGVyLnNjcm9sbFRvQm90dG9tIGlzIGRlcHJlY2F0ZWQgLSBwbGVhc2UgaW5qZWN0IE1vZGFsIGluIGVtYmVkZGVkIGNvbXBvbmVudCBhbmQgdXNlIE1vZGFsLnNjcm9sbFRvQm90dG9tIGluc3RlYWQuJ1xuICAgICk7XG4gICAgY29uc3Qgb3ZlcmxheSA9IHRoaXMub3ZlcmxheXNbdGhpcy5vdmVybGF5cy5sZW5ndGggLSAxXTtcbiAgICBpZiAoIW92ZXJsYXkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcih0aGlzLm5vT3ZlcmxheVJlZ2lzdGVyZWRFcnJvck1lc3NhZ2UpO1xuICAgIH1cbiAgICB0aGlzLm1vZGFsSGVscGVyLnNjcm9sbFRvQm90dG9tKHRoaXMubm9PdmVybGF5UmVnaXN0ZXJlZEVycm9yTWVzc2FnZSwgZHVyYXRpb24pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGhpZGVBbGwoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICB0aGlzLm92ZXJsYXlzLm1hcChhc3luYyAob3ZlcmxheSkgPT4ge1xuICAgICAgICBhd2FpdCBvdmVybGF5LmRpc21pc3MoKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxufVxuIl19
|