@festo-ui/angular 3.1.0 → 3.2.1-pre-20220624.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -1
- package/css/bundle.css +1 -0
- package/css/image-gallery.css +1 -0
- package/css/popover.css +1 -0
- package/esm2020/festo-ui-angular.mjs +5 -0
- package/esm2020/index.mjs +20 -0
- package/esm2020/lib/components/accordion/accordion-header/accordion-header.component.mjs +11 -0
- package/esm2020/lib/components/accordion/accordion-item/accordion-item-body/accordion-item-body.component.mjs +15 -0
- package/esm2020/lib/components/accordion/accordion-item/accordion-item-header/accordion-item-header.component.mjs +28 -0
- package/esm2020/lib/components/accordion/accordion-item/accordion-item.component.mjs +143 -0
- package/esm2020/lib/components/accordion/accordion.component.mjs +59 -0
- package/esm2020/lib/components/accordion/index.mjs +6 -0
- package/esm2020/lib/components/breadcrumb/breadcrumb.component.mjs +23 -0
- package/esm2020/lib/components/buttons/button/button.component.mjs +41 -0
- package/esm2020/lib/components/buttons/link-button/link-button.component.mjs +33 -0
- package/esm2020/lib/components/chips/chip/chip.component.mjs +37 -0
- package/esm2020/lib/components/chips/chip-container/chip-container.component.mjs +16 -0
- package/esm2020/lib/components/click-outside.directive.mjs +28 -0
- package/esm2020/lib/components/components.module.mjs +223 -0
- package/esm2020/lib/components/image-gallery/image-gallery.component.mjs +58 -0
- package/esm2020/lib/components/image-gallery/image-gallery.module.mjs +21 -0
- package/esm2020/lib/components/loading-indicator/loading-indicator.component.mjs +16 -0
- package/esm2020/lib/components/mobile-flyout/mobile-flyout-item/mobile-flyout-item.component.mjs +38 -0
- package/esm2020/lib/components/mobile-flyout/mobile-flyout-page/mobile-flyout-page.component.mjs +64 -0
- package/esm2020/lib/components/mobile-flyout/mobile-flyout.component.mjs +68 -0
- package/esm2020/lib/components/modals/alert/alert.component.mjs +52 -0
- package/esm2020/lib/components/modals/confirm/confirm.component.mjs +53 -0
- package/esm2020/lib/components/modals/custom-modal/custom-modal.component.mjs +70 -0
- package/esm2020/lib/components/modals/index.mjs +2 -0
- package/esm2020/lib/components/modals/modal.service.mjs +121 -0
- package/esm2020/lib/components/modals/modals.module.mjs +31 -0
- package/esm2020/lib/components/modals/prompt/prompt.component.mjs +102 -0
- package/esm2020/lib/components/pagination/pagination.component.mjs +55 -0
- package/esm2020/lib/components/popovers/legend/legend.component.mjs +42 -0
- package/esm2020/lib/components/popovers/legend/legend.directive.mjs +31 -0
- package/esm2020/lib/components/popovers/popover/popover.component.mjs +31 -0
- package/esm2020/lib/components/popovers/popover-content/popover-content.component.mjs +82 -0
- package/esm2020/lib/components/popovers/popover-content/popover-content.directive.mjs +39 -0
- package/esm2020/lib/components/popovers/popover-menu/popover-menu.component.mjs +68 -0
- package/esm2020/lib/components/popovers/popover-ref.mjs +25 -0
- package/esm2020/lib/components/popovers/popover.defaults.mjs +60 -0
- package/esm2020/lib/components/popovers/popover.models.mjs +23 -0
- package/esm2020/lib/components/popovers/popover.service.mjs +123 -0
- package/esm2020/lib/components/popovers/tooltip/tooltip.directive.mjs +100 -0
- package/esm2020/lib/components/progress/progress.component.mjs +20 -0
- package/esm2020/lib/components/scroll/index.mjs +2 -0
- package/esm2020/lib/components/scroll/scrollable.directive.mjs +72 -0
- package/esm2020/lib/components/search-input/safe-html.pipe.mjs +21 -0
- package/esm2020/lib/components/search-input/search-input.component.mjs +172 -0
- package/esm2020/lib/components/snackbar/snackbar-container.component.mjs +21 -0
- package/esm2020/lib/components/snackbar/snackbar-container.directive.mjs +83 -0
- package/esm2020/lib/components/snackbar/snackbar.component.mjs +79 -0
- package/esm2020/lib/components/snackbar/snackbar.models.mjs +2 -0
- package/esm2020/lib/components/snackbar/snackbar.module.mjs +26 -0
- package/esm2020/lib/components/snackbar/snackbar.service.mjs +23 -0
- package/esm2020/lib/components/stepper-horizontal/step-horizontal/step-horizontal.component.mjs +19 -0
- package/esm2020/lib/components/stepper-horizontal/stepper-horizontal.component.mjs +51 -0
- package/esm2020/lib/components/stepper-vertical/step-vertical/step-vertical.component.mjs +56 -0
- package/esm2020/lib/components/stepper-vertical/stepper-vertical.component.mjs +54 -0
- package/esm2020/lib/components/table-header-cell/table-header-cell.directive.mjs +58 -0
- package/esm2020/lib/components/tabs/tab-pane/tab-pane.component.mjs +31 -0
- package/esm2020/lib/components/tabs/tabs.component.mjs +353 -0
- package/esm2020/lib/content/content.module.mjs +20 -0
- package/esm2020/lib/content/icon/icon.component.mjs +17 -0
- package/esm2020/lib/festo-angular.module.mjs +65 -0
- package/esm2020/lib/forms/checkbox/checkbox.component.mjs +149 -0
- package/esm2020/lib/forms/color-indicator/color-indicator.component.mjs +68 -0
- package/esm2020/lib/forms/color-picker/color-helper.mjs +121 -0
- package/esm2020/lib/forms/color-picker/color-picker.component.mjs +273 -0
- package/esm2020/lib/forms/container-host.mjs +27 -0
- package/esm2020/lib/forms/date-picker/date-picker.component.mjs +199 -0
- package/esm2020/lib/forms/date-range-picker/date-range-picker.component.mjs +224 -0
- package/esm2020/lib/forms/forms.module.mjs +146 -0
- package/esm2020/lib/forms/radio/radio.component.mjs +346 -0
- package/esm2020/lib/forms/segment/segment-control/segment-control.component.mjs +57 -0
- package/esm2020/lib/forms/segment/segment.component.mjs +109 -0
- package/esm2020/lib/forms/select/chip-text.pipe.mjs +34 -0
- package/esm2020/lib/forms/select/select-option/select-option.component.mjs +22 -0
- package/esm2020/lib/forms/select/select.component.mjs +257 -0
- package/esm2020/lib/forms/slider/slider.component.mjs +110 -0
- package/esm2020/lib/forms/switch/switch.component.mjs +120 -0
- package/esm2020/lib/forms/text-area/text-area.component.mjs +180 -0
- package/esm2020/lib/forms/text-editor/text-editor.component.mjs +286 -0
- package/esm2020/lib/forms/text-input/text-input.component.mjs +183 -0
- package/esm2020/lib/forms/time-picker/time-picker-dropdown/time-picker-dropdown.component.mjs +89 -0
- package/esm2020/lib/forms/time-picker/time-picker.component.mjs +188 -0
- package/esm2020/lib/forms/unique-selection-dispatcher.mjs +39 -0
- package/esm2020/lib/forms/value-accessor-base.mjs +41 -0
- package/esm2020/lib/layout/layout.module.mjs +18 -0
- package/esm2020/lib/wrappers/flatpickr/flatpickr.component.mjs +59 -0
- package/fesm2015/festo-ui-angular.mjs +6172 -0
- package/fesm2015/festo-ui-angular.mjs.map +1 -0
- package/fesm2020/festo-ui-angular.mjs +6154 -0
- package/fesm2020/festo-ui-angular.mjs.map +1 -0
- package/index.d.ts +1 -0
- package/lib/components/accordion/accordion-header/accordion-header.component.d.ts +5 -0
- package/lib/components/accordion/accordion-item/accordion-item-body/accordion-item-body.component.d.ts +6 -0
- package/lib/components/accordion/accordion-item/accordion-item-header/accordion-item-header.component.d.ts +15 -0
- package/lib/components/accordion/accordion-item/accordion-item.component.d.ts +34 -0
- package/lib/components/accordion/accordion.component.d.ts +24 -0
- package/lib/components/accordion/index.d.ts +5 -0
- package/lib/components/components.module.d.ts +40 -20
- package/lib/components/image-gallery/image-gallery.component.d.ts +33 -0
- package/lib/components/image-gallery/image-gallery.module.d.ts +10 -0
- package/lib/components/mobile-flyout/mobile-flyout-item/mobile-flyout-item.component.d.ts +15 -0
- package/lib/components/mobile-flyout/mobile-flyout-page/mobile-flyout-page.component.d.ts +19 -0
- package/lib/components/mobile-flyout/mobile-flyout.component.d.ts +17 -0
- package/lib/components/modals/confirm/confirm.component.d.ts +1 -3
- package/lib/components/modals/custom-modal/custom-modal.component.d.ts +21 -0
- package/lib/components/modals/modal.service.d.ts +2 -0
- package/lib/components/modals/modals.module.d.ts +8 -5
- package/lib/components/popovers/tooltip/tooltip.directive.d.ts +5 -3
- package/lib/components/search-input/safe-html.pipe.d.ts +10 -0
- package/lib/components/search-input/search-input.component.d.ts +22 -5
- package/lib/components/stepper-horizontal/step-horizontal/step-horizontal.component.d.ts +7 -0
- package/lib/components/stepper-horizontal/stepper-horizontal.component.d.ts +14 -0
- package/lib/components/stepper-vertical/step-vertical/step-vertical.component.d.ts +18 -0
- package/lib/components/stepper-vertical/stepper-vertical.component.d.ts +14 -0
- package/lib/festo-angular.module.d.ts +2 -1
- package/package.json +41 -19
- package/scss/base/components/accordion/accordion-header/accordion-header.component.scss +12 -0
- package/scss/base/components/accordion/accordion-item/accordion-item-body/accordion-item-body.component.scss +109 -0
- package/scss/base/components/accordion/accordion-item/accordion-item-header/accordion-item-header.component.scss +9 -0
- package/scss/base/components/accordion/accordion-item/accordion-item.component.scss +71 -0
- package/scss/base/components/accordion/accordion.component.scss +6 -0
- package/scss/base/components/breadcrumb/breadcrumb.component.scss +0 -1
- package/scss/base/components/buttons/button/button.component.scss +5 -3
- package/scss/base/components/image-gallery/image-gallery.component.scss +0 -0
- package/scss/base/components/image-gallery/styles.scss +5 -0
- package/scss/base/components/modals/prompt/prompt.component.scss +0 -1
- package/scss/base/components/popovers/legend/legend.component.scss +2 -2
- package/scss/base/components/popovers/popover/styles.scss +2 -3
- package/scss/base/components/popovers/popover-content/popover-content.component.scss +1 -1
- package/scss/base/components/scroll/scroll-story-helper.scss +1 -3
- package/scss/base/components/search-input/search-input.component.scss +4 -0
- package/scss/base/components/snackbar/snackbar.component.scss +1 -1
- package/scss/base/components/stepper-horizontal/step-horizontal/step-horizontal.component.scss +23 -0
- package/scss/base/components/stepper-vertical/step-vertical/step-vertical.component.scss +6 -0
- package/scss/base/forms/color-indicator/color-indicator.component.scss +1 -1
- package/scss/base/forms/color-picker/color-picker.component.scss +15 -15
- package/scss/base/forms/date-picker/date-picker.component.scss +1 -1
- package/scss/base/forms/date-range-picker/date-range-picker.component.scss +1 -1
- package/scss/base/forms/text-area/text-area.component.scss +4 -4
- package/scss/base/forms/text-editor/text-editor.component.scss +8 -10
- package/scss/base/forms/time-picker/time-picker-dropdown/time-picker-dropdown.component.scss +1 -1
- package/bundles/festo-ui-angular.umd.js +0 -6429
- package/bundles/festo-ui-angular.umd.js.map +0 -1
- package/esm2015/festo-ui-angular.js +0 -5
- package/esm2015/festo-ui-angular.js.map +0 -1
- package/esm2015/index.js +0 -18
- package/esm2015/index.js.map +0 -1
- package/esm2015/lib/components/breadcrumb/breadcrumb.component.js +0 -27
- package/esm2015/lib/components/breadcrumb/breadcrumb.component.js.map +0 -1
- package/esm2015/lib/components/buttons/button/button.component.js +0 -46
- package/esm2015/lib/components/buttons/button/button.component.js.map +0 -1
- package/esm2015/lib/components/buttons/link-button/link-button.component.js +0 -38
- package/esm2015/lib/components/buttons/link-button/link-button.component.js.map +0 -1
- package/esm2015/lib/components/chips/chip/chip.component.js +0 -42
- package/esm2015/lib/components/chips/chip/chip.component.js.map +0 -1
- package/esm2015/lib/components/chips/chip-container/chip-container.component.js +0 -21
- package/esm2015/lib/components/chips/chip-container/chip-container.component.js.map +0 -1
- package/esm2015/lib/components/click-outside.directive.js +0 -28
- package/esm2015/lib/components/click-outside.directive.js.map +0 -1
- package/esm2015/lib/components/components.module.js +0 -155
- package/esm2015/lib/components/components.module.js.map +0 -1
- package/esm2015/lib/components/loading-indicator/loading-indicator.component.js +0 -21
- package/esm2015/lib/components/loading-indicator/loading-indicator.component.js.map +0 -1
- package/esm2015/lib/components/modals/alert/alert.component.js +0 -57
- package/esm2015/lib/components/modals/alert/alert.component.js.map +0 -1
- package/esm2015/lib/components/modals/confirm/confirm.component.js +0 -73
- package/esm2015/lib/components/modals/confirm/confirm.component.js.map +0 -1
- package/esm2015/lib/components/modals/index.js +0 -2
- package/esm2015/lib/components/modals/index.js.map +0 -1
- package/esm2015/lib/components/modals/modal.service.js +0 -91
- package/esm2015/lib/components/modals/modal.service.js.map +0 -1
- package/esm2015/lib/components/modals/modals.module.js +0 -28
- package/esm2015/lib/components/modals/modals.module.js.map +0 -1
- package/esm2015/lib/components/modals/prompt/prompt.component.js +0 -110
- package/esm2015/lib/components/modals/prompt/prompt.component.js.map +0 -1
- package/esm2015/lib/components/pagination/pagination.component.js +0 -60
- package/esm2015/lib/components/pagination/pagination.component.js.map +0 -1
- package/esm2015/lib/components/popovers/legend/legend.component.js +0 -46
- package/esm2015/lib/components/popovers/legend/legend.component.js.map +0 -1
- package/esm2015/lib/components/popovers/legend/legend.directive.js +0 -31
- package/esm2015/lib/components/popovers/legend/legend.directive.js.map +0 -1
- package/esm2015/lib/components/popovers/popover/popover.component.js +0 -35
- package/esm2015/lib/components/popovers/popover/popover.component.js.map +0 -1
- package/esm2015/lib/components/popovers/popover-content/popover-content.component.js +0 -86
- package/esm2015/lib/components/popovers/popover-content/popover-content.component.js.map +0 -1
- package/esm2015/lib/components/popovers/popover-content/popover-content.directive.js +0 -39
- package/esm2015/lib/components/popovers/popover-content/popover-content.directive.js.map +0 -1
- package/esm2015/lib/components/popovers/popover-menu/popover-menu.component.js +0 -72
- package/esm2015/lib/components/popovers/popover-menu/popover-menu.component.js.map +0 -1
- package/esm2015/lib/components/popovers/popover-ref.js +0 -25
- package/esm2015/lib/components/popovers/popover-ref.js.map +0 -1
- package/esm2015/lib/components/popovers/popover.defaults.js +0 -60
- package/esm2015/lib/components/popovers/popover.defaults.js.map +0 -1
- package/esm2015/lib/components/popovers/popover.models.js +0 -23
- package/esm2015/lib/components/popovers/popover.models.js.map +0 -1
- package/esm2015/lib/components/popovers/popover.service.js +0 -117
- package/esm2015/lib/components/popovers/popover.service.js.map +0 -1
- package/esm2015/lib/components/popovers/tooltip/tooltip.directive.js +0 -96
- package/esm2015/lib/components/popovers/tooltip/tooltip.directive.js.map +0 -1
- package/esm2015/lib/components/progress/progress.component.js +0 -23
- package/esm2015/lib/components/progress/progress.component.js.map +0 -1
- package/esm2015/lib/components/scroll/index.js +0 -2
- package/esm2015/lib/components/scroll/index.js.map +0 -1
- package/esm2015/lib/components/scroll/scrollable.directive.js +0 -73
- package/esm2015/lib/components/scroll/scrollable.directive.js.map +0 -1
- package/esm2015/lib/components/search-input/search-input.component.js +0 -155
- package/esm2015/lib/components/search-input/search-input.component.js.map +0 -1
- package/esm2015/lib/components/snackbar/snackbar-container.component.js +0 -26
- package/esm2015/lib/components/snackbar/snackbar-container.component.js.map +0 -1
- package/esm2015/lib/components/snackbar/snackbar-container.directive.js +0 -83
- package/esm2015/lib/components/snackbar/snackbar-container.directive.js.map +0 -1
- package/esm2015/lib/components/snackbar/snackbar.component.js +0 -85
- package/esm2015/lib/components/snackbar/snackbar.component.js.map +0 -1
- package/esm2015/lib/components/snackbar/snackbar.models.js +0 -2
- package/esm2015/lib/components/snackbar/snackbar.models.js.map +0 -1
- package/esm2015/lib/components/snackbar/snackbar.module.js +0 -26
- package/esm2015/lib/components/snackbar/snackbar.module.js.map +0 -1
- package/esm2015/lib/components/snackbar/snackbar.service.js +0 -23
- package/esm2015/lib/components/snackbar/snackbar.service.js.map +0 -1
- package/esm2015/lib/components/stepper/stepper.component.js +0 -28
- package/esm2015/lib/components/stepper/stepper.component.js.map +0 -1
- package/esm2015/lib/components/table-header-cell/table-header-cell.directive.js +0 -58
- package/esm2015/lib/components/table-header-cell/table-header-cell.directive.js.map +0 -1
- package/esm2015/lib/components/tabs/tab-pane/tab-pane.component.js +0 -35
- package/esm2015/lib/components/tabs/tab-pane/tab-pane.component.js.map +0 -1
- package/esm2015/lib/components/tabs/tabs.component.js +0 -362
- package/esm2015/lib/components/tabs/tabs.component.js.map +0 -1
- package/esm2015/lib/content/content.module.js +0 -24
- package/esm2015/lib/content/content.module.js.map +0 -1
- package/esm2015/lib/content/icon/icon.component.js +0 -23
- package/esm2015/lib/content/icon/icon.component.js.map +0 -1
- package/esm2015/lib/festo-angular.module.js +0 -58
- package/esm2015/lib/festo-angular.module.js.map +0 -1
- package/esm2015/lib/forms/checkbox/checkbox.component.js +0 -156
- package/esm2015/lib/forms/checkbox/checkbox.component.js.map +0 -1
- package/esm2015/lib/forms/color-indicator/color-indicator.component.js +0 -72
- package/esm2015/lib/forms/color-indicator/color-indicator.component.js.map +0 -1
- package/esm2015/lib/forms/color-picker/color-helper.js +0 -121
- package/esm2015/lib/forms/color-picker/color-helper.js.map +0 -1
- package/esm2015/lib/forms/color-picker/color-picker.component.js +0 -280
- package/esm2015/lib/forms/color-picker/color-picker.component.js.map +0 -1
- package/esm2015/lib/forms/container-host.js +0 -27
- package/esm2015/lib/forms/container-host.js.map +0 -1
- package/esm2015/lib/forms/date-picker/date-picker.component.js +0 -205
- package/esm2015/lib/forms/date-picker/date-picker.component.js.map +0 -1
- package/esm2015/lib/forms/date-range-picker/date-range-picker.component.js +0 -230
- package/esm2015/lib/forms/date-range-picker/date-range-picker.component.js.map +0 -1
- package/esm2015/lib/forms/forms.module.js +0 -146
- package/esm2015/lib/forms/forms.module.js.map +0 -1
- package/esm2015/lib/forms/radio/radio.component.js +0 -353
- package/esm2015/lib/forms/radio/radio.component.js.map +0 -1
- package/esm2015/lib/forms/segment/segment-control/segment-control.component.js +0 -58
- package/esm2015/lib/forms/segment/segment-control/segment-control.component.js.map +0 -1
- package/esm2015/lib/forms/segment/segment.component.js +0 -116
- package/esm2015/lib/forms/segment/segment.component.js.map +0 -1
- package/esm2015/lib/forms/select/chip-text.pipe.js +0 -34
- package/esm2015/lib/forms/select/chip-text.pipe.js.map +0 -1
- package/esm2015/lib/forms/select/select-option/select-option.component.js +0 -29
- package/esm2015/lib/forms/select/select-option/select-option.component.js.map +0 -1
- package/esm2015/lib/forms/select/select.component.js +0 -265
- package/esm2015/lib/forms/select/select.component.js.map +0 -1
- package/esm2015/lib/forms/slider/slider.component.js +0 -116
- package/esm2015/lib/forms/slider/slider.component.js.map +0 -1
- package/esm2015/lib/forms/switch/switch.component.js +0 -127
- package/esm2015/lib/forms/switch/switch.component.js.map +0 -1
- package/esm2015/lib/forms/text-area/text-area.component.js +0 -186
- package/esm2015/lib/forms/text-area/text-area.component.js.map +0 -1
- package/esm2015/lib/forms/text-editor/text-editor.component.js +0 -294
- package/esm2015/lib/forms/text-editor/text-editor.component.js.map +0 -1
- package/esm2015/lib/forms/text-input/text-input.component.js +0 -189
- package/esm2015/lib/forms/text-input/text-input.component.js.map +0 -1
- package/esm2015/lib/forms/time-picker/time-picker-dropdown/time-picker-dropdown.component.js +0 -103
- package/esm2015/lib/forms/time-picker/time-picker-dropdown/time-picker-dropdown.component.js.map +0 -1
- package/esm2015/lib/forms/time-picker/time-picker.component.js +0 -194
- package/esm2015/lib/forms/time-picker/time-picker.component.js.map +0 -1
- package/esm2015/lib/forms/unique-selection-dispatcher.js +0 -39
- package/esm2015/lib/forms/unique-selection-dispatcher.js.map +0 -1
- package/esm2015/lib/forms/value-accessor-base.js +0 -41
- package/esm2015/lib/forms/value-accessor-base.js.map +0 -1
- package/esm2015/lib/layout/layout.module.js +0 -18
- package/esm2015/lib/layout/layout.module.js.map +0 -1
- package/esm2015/lib/wrappers/flatpickr/flatpickr.component.js +0 -63
- package/esm2015/lib/wrappers/flatpickr/flatpickr.component.js.map +0 -1
- package/fesm2015/festo-ui-angular.js +0 -5596
- package/fesm2015/festo-ui-angular.js.map +0 -1
- package/lib/components/stepper/stepper.component.d.ts +0 -30
- package/scss/base/components/stepper/stepper.component.scss +0 -118
- package/scss/styles.scss +0 -2056
package/esm2020/lib/components/mobile-flyout/mobile-flyout-page/mobile-flyout-page.component.mjs
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { Component, ContentChildren, Input, QueryList, SimpleChange } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import { takeUntil } from 'rxjs/operators';
|
|
4
|
+
import { MobileFlyoutItemComponent } from '../mobile-flyout-item/mobile-flyout-item.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common";
|
|
7
|
+
export class MobileFlyoutPageComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.name = '';
|
|
10
|
+
this.back = 'Back';
|
|
11
|
+
this.isfirstelement = false;
|
|
12
|
+
this.visible = false;
|
|
13
|
+
this.complete = new Subject();
|
|
14
|
+
}
|
|
15
|
+
ngAfterContentInit() {
|
|
16
|
+
this.initItemComponents();
|
|
17
|
+
// if we have item components that are added dynamically (e.g. *ngIf)
|
|
18
|
+
// we need to call init again to have all navigate callbacks defined
|
|
19
|
+
this.itemComponents.changes.pipe(takeUntil(this.complete)).subscribe(() => {
|
|
20
|
+
this.initItemComponents();
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
ngOnDestroy() {
|
|
24
|
+
this.complete.next(true);
|
|
25
|
+
this.complete.unsubscribe();
|
|
26
|
+
}
|
|
27
|
+
onNavigate(pageName) {
|
|
28
|
+
if (this.onNavigateCallback) {
|
|
29
|
+
this.onNavigateCallback(pageName);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
onBack() {
|
|
33
|
+
this.visible = false;
|
|
34
|
+
}
|
|
35
|
+
initItemComponents() {
|
|
36
|
+
if (!this.itemComponents) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
// register click-callbacks
|
|
40
|
+
this.itemComponents.forEach(s => {
|
|
41
|
+
s.onNavigateCallback = pageName => this.onNavigate(pageName);
|
|
42
|
+
});
|
|
43
|
+
if (this.itemComponents.last) {
|
|
44
|
+
// pass new value by ngOnChanges for proper change detection
|
|
45
|
+
this.itemComponents.last.ngOnChanges({
|
|
46
|
+
lastElement: new SimpleChange(null, true, false)
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
MobileFlyoutPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MobileFlyoutPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
52
|
+
MobileFlyoutPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: MobileFlyoutPageComponent, selector: "fng-mobile-flyout-page", inputs: { name: "name", back: "back" }, queries: [{ propertyName: "itemComponents", predicate: MobileFlyoutItemComponent }], ngImport: i0, template: "<div class=\"fwe-mobile-flyout-page\" [class.fwe-opened]=\"visible\">\n <div class=\"fwe-page-back\" *ngIf=\"!isfirstelement\" (click)=\"onBack()\">\n <i></i>\n <div>{{ back }}</div>\n </div>\n <div class=\"fwe-mobile-flyout-item-container\">\n <ng-content></ng-content>\n </div>\n</div>\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MobileFlyoutPageComponent, decorators: [{
|
|
54
|
+
type: Component,
|
|
55
|
+
args: [{ selector: 'fng-mobile-flyout-page', template: "<div class=\"fwe-mobile-flyout-page\" [class.fwe-opened]=\"visible\">\n <div class=\"fwe-page-back\" *ngIf=\"!isfirstelement\" (click)=\"onBack()\">\n <i></i>\n <div>{{ back }}</div>\n </div>\n <div class=\"fwe-mobile-flyout-item-container\">\n <ng-content></ng-content>\n </div>\n</div>\n" }]
|
|
56
|
+
}], propDecorators: { itemComponents: [{
|
|
57
|
+
type: ContentChildren,
|
|
58
|
+
args: [MobileFlyoutItemComponent]
|
|
59
|
+
}], name: [{
|
|
60
|
+
type: Input
|
|
61
|
+
}], back: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}] } });
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9iaWxlLWZseW91dC1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbW9iaWxlLWZseW91dC9tb2JpbGUtZmx5b3V0LXBhZ2UvbW9iaWxlLWZseW91dC1wYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbW9iaWxlLWZseW91dC9tb2JpbGUtZmx5b3V0LXBhZ2UvbW9iaWxlLWZseW91dC1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFhLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4SCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQzs7O0FBTS9GLE1BQU0sT0FBTyx5QkFBeUI7SUFKdEM7UUFNVyxTQUFJLEdBQVcsRUFBRSxDQUFDO1FBQ2xCLFNBQUksR0FBVyxNQUFNLENBQUM7UUFFL0IsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkIsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUdSLGFBQVEsR0FBcUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztLQTRDcEQ7SUExQ0Msa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRTFCLHFFQUFxRTtRQUNyRSxvRUFBb0U7UUFDcEUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3hFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxVQUFVLENBQUMsUUFBZ0I7UUFDekIsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDM0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ25DO0lBQ0gsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUN2QixDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3hCLE9BQU87U0FDUjtRQUVELDJCQUEyQjtRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUM5QixDQUFDLENBQUMsa0JBQWtCLEdBQUcsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9ELENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRTtZQUM1Qiw0REFBNEQ7WUFDNUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO2dCQUNuQyxXQUFXLEVBQUUsSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLENBQUM7YUFDakQsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOztzSEFwRFUseUJBQXlCOzBHQUF6Qix5QkFBeUIscUlBQ25CLHlCQUF5Qiw2QkNYNUMsZ1RBU0E7MkZEQ2EseUJBQXlCO2tCQUpyQyxTQUFTOytCQUNFLHdCQUF3Qjs4QkFJVSxjQUFjO3NCQUF6RCxlQUFlO3VCQUFDLHlCQUF5QjtnQkFDakMsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBJbnB1dCwgUXVlcnlMaXN0LCBPbkRlc3Ryb3ksIFNpbXBsZUNoYW5nZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBNb2JpbGVGbHlvdXRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vbW9iaWxlLWZseW91dC1pdGVtL21vYmlsZS1mbHlvdXQtaXRlbS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmbmctbW9iaWxlLWZseW91dC1wYWdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vYmlsZS1mbHlvdXQtcGFnZS5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgTW9iaWxlRmx5b3V0UGFnZUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XG4gIEBDb250ZW50Q2hpbGRyZW4oTW9iaWxlRmx5b3V0SXRlbUNvbXBvbmVudCkgaXRlbUNvbXBvbmVudHMhOiBRdWVyeUxpc3Q8TW9iaWxlRmx5b3V0SXRlbUNvbXBvbmVudD47XG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBiYWNrOiBzdHJpbmcgPSAnQmFjayc7XG5cbiAgaXNmaXJzdGVsZW1lbnQgPSBmYWxzZTtcbiAgdmlzaWJsZSA9IGZhbHNlO1xuICBvbk5hdmlnYXRlQ2FsbGJhY2s6ICgocGFnZU5hbWU6IHN0cmluZykgPT4gdm9pZCkgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBjb21wbGV0ZTogU3ViamVjdDxib29sZWFuPiA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdEl0ZW1Db21wb25lbnRzKCk7XG5cbiAgICAvLyBpZiB3ZSBoYXZlIGl0ZW0gY29tcG9uZW50cyB0aGF0IGFyZSBhZGRlZCBkeW5hbWljYWxseSAoZS5nLiAqbmdJZilcbiAgICAvLyB3ZSBuZWVkIHRvIGNhbGwgaW5pdCBhZ2FpbiB0byBoYXZlIGFsbCBuYXZpZ2F0ZSBjYWxsYmFja3MgZGVmaW5lZFxuICAgIHRoaXMuaXRlbUNvbXBvbmVudHMuY2hhbmdlcy5waXBlKHRha2VVbnRpbCh0aGlzLmNvbXBsZXRlKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuaW5pdEl0ZW1Db21wb25lbnRzKCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbXBsZXRlLm5leHQodHJ1ZSk7XG4gICAgdGhpcy5jb21wbGV0ZS51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgb25OYXZpZ2F0ZShwYWdlTmFtZTogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMub25OYXZpZ2F0ZUNhbGxiYWNrKSB7XG4gICAgICB0aGlzLm9uTmF2aWdhdGVDYWxsYmFjayhwYWdlTmFtZSk7XG4gICAgfVxuICB9XG5cbiAgb25CYWNrKCkge1xuICAgIHRoaXMudmlzaWJsZSA9IGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0SXRlbUNvbXBvbmVudHMoKSB7XG4gICAgaWYgKCF0aGlzLml0ZW1Db21wb25lbnRzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gcmVnaXN0ZXIgY2xpY2stY2FsbGJhY2tzXG4gICAgdGhpcy5pdGVtQ29tcG9uZW50cy5mb3JFYWNoKHMgPT4ge1xuICAgICAgcy5vbk5hdmlnYXRlQ2FsbGJhY2sgPSBwYWdlTmFtZSA9PiB0aGlzLm9uTmF2aWdhdGUocGFnZU5hbWUpO1xuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuaXRlbUNvbXBvbmVudHMubGFzdCkge1xuICAgICAgLy8gcGFzcyBuZXcgdmFsdWUgYnkgbmdPbkNoYW5nZXMgZm9yIHByb3BlciBjaGFuZ2UgZGV0ZWN0aW9uXG4gICAgICB0aGlzLml0ZW1Db21wb25lbnRzLmxhc3QubmdPbkNoYW5nZXMoe1xuICAgICAgICBsYXN0RWxlbWVudDogbmV3IFNpbXBsZUNoYW5nZShudWxsLCB0cnVlLCBmYWxzZSlcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZ3ZS1tb2JpbGUtZmx5b3V0LXBhZ2VcIiBbY2xhc3MuZndlLW9wZW5lZF09XCJ2aXNpYmxlXCI+XG4gIDxkaXYgY2xhc3M9XCJmd2UtcGFnZS1iYWNrXCIgKm5nSWY9XCIhaXNmaXJzdGVsZW1lbnRcIiAoY2xpY2spPVwib25CYWNrKClcIj5cbiAgICA8aT48L2k+XG4gICAgPGRpdj57eyBiYWNrIH19PC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZndlLW1vYmlsZS1mbHlvdXQtaXRlbS1jb250YWluZXJcIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { Component, ContentChildren, Output, QueryList, EventEmitter } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import { takeUntil } from 'rxjs/operators';
|
|
4
|
+
import { MobileFlyoutPageComponent } from './mobile-flyout-page/mobile-flyout-page.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../click-outside.directive";
|
|
7
|
+
export class MobileFlyoutComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.flyoutOpenChange = new EventEmitter();
|
|
10
|
+
this.isOpen = false;
|
|
11
|
+
this.complete = new Subject();
|
|
12
|
+
}
|
|
13
|
+
ngAfterContentInit() {
|
|
14
|
+
this.initPageComponents();
|
|
15
|
+
// if we have page components that are added dynamically (e.g. *ngIf)
|
|
16
|
+
// we need to call init again to have all navigate callbacks defined
|
|
17
|
+
this.pageComponents.changes.pipe(takeUntil(this.complete)).subscribe(() => {
|
|
18
|
+
this.initPageComponents();
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
ngOnDestroy() {
|
|
22
|
+
this.complete.next(true);
|
|
23
|
+
this.complete.unsubscribe();
|
|
24
|
+
}
|
|
25
|
+
onNavigate(pageName) {
|
|
26
|
+
// handle clicks on router links
|
|
27
|
+
if (!pageName) {
|
|
28
|
+
this.isOpen = false;
|
|
29
|
+
this.flyoutOpenChange.emit(this.isOpen);
|
|
30
|
+
}
|
|
31
|
+
// handle page-navigation clicks
|
|
32
|
+
const nextPage = this.pageComponents.find(p => p.name === pageName);
|
|
33
|
+
if (nextPage) {
|
|
34
|
+
nextPage.visible = true;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
toggle() {
|
|
38
|
+
this.isOpen = !this.isOpen;
|
|
39
|
+
this.flyoutOpenChange.emit(this.isOpen);
|
|
40
|
+
}
|
|
41
|
+
onClickOutside() {
|
|
42
|
+
this.isOpen = false;
|
|
43
|
+
this.flyoutOpenChange.emit(this.isOpen);
|
|
44
|
+
}
|
|
45
|
+
initPageComponents() {
|
|
46
|
+
if (!this.pageComponents) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
// register click-callbacks and open the first element
|
|
50
|
+
this.pageComponents.forEach((s, i) => {
|
|
51
|
+
s.onNavigateCallback = pageName => this.onNavigate(pageName);
|
|
52
|
+
s.isfirstelement = i === 0;
|
|
53
|
+
s.visible = i === 0;
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
MobileFlyoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MobileFlyoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
58
|
+
MobileFlyoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: MobileFlyoutComponent, selector: "fng-mobile-flyout", outputs: { flyoutOpenChange: "flyoutOpenChange" }, queries: [{ propertyName: "pageComponents", predicate: MobileFlyoutPageComponent }], ngImport: i0, template: "<div class=\"fwe-mobile-flyout\" (clickOutside)=\"onClickOutside()\" fngClickOutside>\n <button [class.fwe-burger-button]=\"!isOpen\" [class.fwe-close-button]=\"isOpen\" (click)=\"toggle()\"></button>\n <div class=\"fwe-mobile-flyout-container\" [class.fwe-opened]=\"isOpen\">\n <ng-content></ng-content>\n </div>\n</div>\n", directives: [{ type: i1.ClickOutsideDirective, selector: "[fngClickOutside]", outputs: ["clickOutside"] }] });
|
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MobileFlyoutComponent, decorators: [{
|
|
60
|
+
type: Component,
|
|
61
|
+
args: [{ selector: 'fng-mobile-flyout', template: "<div class=\"fwe-mobile-flyout\" (clickOutside)=\"onClickOutside()\" fngClickOutside>\n <button [class.fwe-burger-button]=\"!isOpen\" [class.fwe-close-button]=\"isOpen\" (click)=\"toggle()\"></button>\n <div class=\"fwe-mobile-flyout-container\" [class.fwe-opened]=\"isOpen\">\n <ng-content></ng-content>\n </div>\n</div>\n" }]
|
|
62
|
+
}], propDecorators: { flyoutOpenChange: [{
|
|
63
|
+
type: Output
|
|
64
|
+
}], pageComponents: [{
|
|
65
|
+
type: ContentChildren,
|
|
66
|
+
args: [MobileFlyoutPageComponent]
|
|
67
|
+
}] } });
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9iaWxlLWZseW91dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL21vYmlsZS1mbHlvdXQvbW9iaWxlLWZseW91dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL21vYmlsZS1mbHlvdXQvbW9iaWxlLWZseW91dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLFNBQVMsRUFBRSxlQUFlLEVBQWEsTUFBTSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekgsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7OztBQU05RixNQUFNLE9BQU8scUJBQXFCO0lBSmxDO1FBS1kscUJBQWdCLEdBQTBCLElBQUksWUFBWSxFQUFFLENBQUM7UUFFdkUsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUVQLGFBQVEsR0FBcUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztLQXFEcEQ7SUFuREMsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRTFCLHFFQUFxRTtRQUNyRSxvRUFBb0U7UUFDcEUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3hFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxVQUFVLENBQUMsUUFBZ0I7UUFDekIsZ0NBQWdDO1FBQ2hDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDYixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNwQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN6QztRQUVELGdDQUFnQztRQUNoQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUM7UUFDcEUsSUFBSSxRQUFRLEVBQUU7WUFDWixRQUFRLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDM0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3hCLE9BQU87U0FDUjtRQUVELHNEQUFzRDtRQUN0RCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUNuQyxDQUFDLENBQUMsa0JBQWtCLEdBQUcsUUFBUSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzdELENBQUMsQ0FBQyxjQUFjLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMzQixDQUFDLENBQUMsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztrSEF6RFUscUJBQXFCO3NHQUFyQixxQkFBcUIsMklBRWYseUJBQXlCLDZCQ1o1QywyVUFNQTsyRkRJYSxxQkFBcUI7a0JBSmpDLFNBQVM7K0JBQ0UsbUJBQW1COzhCQUluQixnQkFBZ0I7c0JBQXpCLE1BQU07Z0JBQ3FDLGNBQWM7c0JBQXpELGVBQWU7dUJBQUMseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIE9uRGVzdHJveSwgT3V0cHV0LCBRdWVyeUxpc3QsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBNb2JpbGVGbHlvdXRQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9tb2JpbGUtZmx5b3V0LXBhZ2UvbW9iaWxlLWZseW91dC1wYWdlLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZuZy1tb2JpbGUtZmx5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL21vYmlsZS1mbHlvdXQuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIE1vYmlsZUZseW91dENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XG4gIEBPdXRwdXQoKSBmbHlvdXRPcGVuQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBDb250ZW50Q2hpbGRyZW4oTW9iaWxlRmx5b3V0UGFnZUNvbXBvbmVudCkgcGFnZUNvbXBvbmVudHMhOiBRdWVyeUxpc3Q8TW9iaWxlRmx5b3V0UGFnZUNvbXBvbmVudD47XG4gIGlzT3BlbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgY29tcGxldGU6IFN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgU3ViamVjdCgpO1xuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRQYWdlQ29tcG9uZW50cygpO1xuXG4gICAgLy8gaWYgd2UgaGF2ZSBwYWdlIGNvbXBvbmVudHMgdGhhdCBhcmUgYWRkZWQgZHluYW1pY2FsbHkgKGUuZy4gKm5nSWYpXG4gICAgLy8gd2UgbmVlZCB0byBjYWxsIGluaXQgYWdhaW4gdG8gaGF2ZSBhbGwgbmF2aWdhdGUgY2FsbGJhY2tzIGRlZmluZWRcbiAgICB0aGlzLnBhZ2VDb21wb25lbnRzLmNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5jb21wbGV0ZSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmluaXRQYWdlQ29tcG9uZW50cygpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5jb21wbGV0ZS5uZXh0KHRydWUpO1xuICAgIHRoaXMuY29tcGxldGUudW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG9uTmF2aWdhdGUocGFnZU5hbWU6IHN0cmluZykge1xuICAgIC8vIGhhbmRsZSBjbGlja3Mgb24gcm91dGVyIGxpbmtzXG4gICAgaWYgKCFwYWdlTmFtZSkge1xuICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICAgIHRoaXMuZmx5b3V0T3BlbkNoYW5nZS5lbWl0KHRoaXMuaXNPcGVuKTtcbiAgICB9XG5cbiAgICAvLyBoYW5kbGUgcGFnZS1uYXZpZ2F0aW9uIGNsaWNrc1xuICAgIGNvbnN0IG5leHRQYWdlID0gdGhpcy5wYWdlQ29tcG9uZW50cy5maW5kKHAgPT4gcC5uYW1lID09PSBwYWdlTmFtZSk7XG4gICAgaWYgKG5leHRQYWdlKSB7XG4gICAgICBuZXh0UGFnZS52aXNpYmxlID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGUoKSB7XG4gICAgdGhpcy5pc09wZW4gPSAhdGhpcy5pc09wZW47XG4gICAgdGhpcy5mbHlvdXRPcGVuQ2hhbmdlLmVtaXQodGhpcy5pc09wZW4pO1xuICB9XG5cbiAgb25DbGlja091dHNpZGUoKSB7XG4gICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICB0aGlzLmZseW91dE9wZW5DaGFuZ2UuZW1pdCh0aGlzLmlzT3Blbik7XG4gIH1cblxuICBwcml2YXRlIGluaXRQYWdlQ29tcG9uZW50cygpIHtcbiAgICBpZiAoIXRoaXMucGFnZUNvbXBvbmVudHMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyByZWdpc3RlciBjbGljay1jYWxsYmFja3MgYW5kIG9wZW4gdGhlIGZpcnN0IGVsZW1lbnRcbiAgICB0aGlzLnBhZ2VDb21wb25lbnRzLmZvckVhY2goKHMsIGkpID0+IHtcbiAgICAgIHMub25OYXZpZ2F0ZUNhbGxiYWNrID0gcGFnZU5hbWUgPT4gdGhpcy5vbk5hdmlnYXRlKHBhZ2VOYW1lKTtcbiAgICAgIHMuaXNmaXJzdGVsZW1lbnQgPSBpID09PSAwO1xuICAgICAgcy52aXNpYmxlID0gaSA9PT0gMDtcbiAgICB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZ3ZS1tb2JpbGUtZmx5b3V0XCIgKGNsaWNrT3V0c2lkZSk9XCJvbkNsaWNrT3V0c2lkZSgpXCIgZm5nQ2xpY2tPdXRzaWRlPlxuICA8YnV0dG9uIFtjbGFzcy5md2UtYnVyZ2VyLWJ1dHRvbl09XCIhaXNPcGVuXCIgW2NsYXNzLmZ3ZS1jbG9zZS1idXR0b25dPVwiaXNPcGVuXCIgKGNsaWNrKT1cInRvZ2dsZSgpXCI+PC9idXR0b24+XG4gIDxkaXYgY2xhc3M9XCJmd2UtbW9iaWxlLWZseW91dC1jb250YWluZXJcIiBbY2xhc3MuZndlLW9wZW5lZF09XCJpc09wZW5cIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { Component, ElementRef, EventEmitter, HostListener, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class AlertComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.close = new EventEmitter();
|
|
7
|
+
this.cancel = new EventEmitter();
|
|
8
|
+
this.ok = new EventEmitter();
|
|
9
|
+
}
|
|
10
|
+
onKeyUp(event) {
|
|
11
|
+
event.preventDefault();
|
|
12
|
+
event.stopPropagation();
|
|
13
|
+
if (event.key === 'Esc' || event.key === 'Escape') {
|
|
14
|
+
this.onClose();
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
ngAfterViewInit() {
|
|
18
|
+
if (this.closeBtn) {
|
|
19
|
+
this.closeBtn.nativeElement.focus();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
onClose() {
|
|
23
|
+
this.close.emit();
|
|
24
|
+
}
|
|
25
|
+
onOk() {
|
|
26
|
+
this.ok.emit();
|
|
27
|
+
}
|
|
28
|
+
onCancel() {
|
|
29
|
+
this.cancel.emit();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
AlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
+
AlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: AlertComponent, selector: "fng-alert", inputs: { data: "data" }, outputs: { close: "close", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, viewQueries: [{ propertyName: "closeBtn", first: true, predicate: ["closeBtn"], descendants: true }], ngImport: i0, template: "<div\n class=\"fwe-modal\"\n [ngClass]=\"{\n 'fwe-modal--with-indicator-bar': data?.strong === true,\n 'fwe-modal--warning': data?.alertType === 'warning',\n 'fwe-modal--error': data?.alertType === 'error',\n 'fwe-modal--info': data?.alertType === 'info'\n }\"\n>\n <div class=\"fwe-modal-close\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onClose()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-close-small\"></i>\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n </div>\n <div class=\"fwe-modal-header\">\n <h2 *ngIf=\"data?.subtitle\" class=\"fwe-modal-h2\">\n <i\n [ngClass]=\"{\n 'fwe-icon': true,\n 'fwe-icon-status-warning': data?.alertType === 'warning',\n 'fwe-icon-status-failure': data?.alertType === 'error',\n 'fwe-icon-status-check-status': data?.alertType === 'info'\n }\"\n ></i\n >{{ data?.subtitle }}\n </h2>\n <h1 class=\"fwe-modal-h1\">\n <i\n [ngClass]=\"{\n 'fwe-icon': true,\n 'fwe-icon-status-warning': data?.alertType === 'warning',\n 'fwe-icon-status-failure': data?.alertType === 'error',\n 'fwe-icon-status-check-status': data?.alertType === 'info'\n }\"\n ></i\n >{{ data?.title }}\n </h1>\n </div>\n <div class=\"fwe-modal-body\">\n <p>{{ data?.body }}</p>\n </div>\n <div class=\"fwe-modal-footer\" *ngIf=\"data?.cancel || data?.ok\">\n <div class=\"fwe-modal-buttons\">\n <button\n *ngIf=\"data?.cancel\"\n type=\"button\"\n aria-label=\"Cancel\"\n class=\"fwe-btn fwe-btn-lg\"\n [class.fwe-btn-link]=\"data?.strong\"\n (click)=\"onCancel()\"\n >\n {{ data?.cancel }}\n </button>\n <button\n *ngIf=\"data?.ok\"\n type=\"button\"\n aria-label=\"Ok\"\n class=\"fwe-btn fwe-btn-lg\"\n [class.fwe-btn-hero]=\"!data?.strong\"\n (click)=\"onOk()\"\n >\n {{ data?.ok }}\n </button>\n </div>\n </div>\n</div>\n", styles: [""], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
34
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AlertComponent, decorators: [{
|
|
35
|
+
type: Component,
|
|
36
|
+
args: [{ selector: 'fng-alert', encapsulation: ViewEncapsulation.None, template: "<div\n class=\"fwe-modal\"\n [ngClass]=\"{\n 'fwe-modal--with-indicator-bar': data?.strong === true,\n 'fwe-modal--warning': data?.alertType === 'warning',\n 'fwe-modal--error': data?.alertType === 'error',\n 'fwe-modal--info': data?.alertType === 'info'\n }\"\n>\n <div class=\"fwe-modal-close\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onClose()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-close-small\"></i>\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n </div>\n <div class=\"fwe-modal-header\">\n <h2 *ngIf=\"data?.subtitle\" class=\"fwe-modal-h2\">\n <i\n [ngClass]=\"{\n 'fwe-icon': true,\n 'fwe-icon-status-warning': data?.alertType === 'warning',\n 'fwe-icon-status-failure': data?.alertType === 'error',\n 'fwe-icon-status-check-status': data?.alertType === 'info'\n }\"\n ></i\n >{{ data?.subtitle }}\n </h2>\n <h1 class=\"fwe-modal-h1\">\n <i\n [ngClass]=\"{\n 'fwe-icon': true,\n 'fwe-icon-status-warning': data?.alertType === 'warning',\n 'fwe-icon-status-failure': data?.alertType === 'error',\n 'fwe-icon-status-check-status': data?.alertType === 'info'\n }\"\n ></i\n >{{ data?.title }}\n </h1>\n </div>\n <div class=\"fwe-modal-body\">\n <p>{{ data?.body }}</p>\n </div>\n <div class=\"fwe-modal-footer\" *ngIf=\"data?.cancel || data?.ok\">\n <div class=\"fwe-modal-buttons\">\n <button\n *ngIf=\"data?.cancel\"\n type=\"button\"\n aria-label=\"Cancel\"\n class=\"fwe-btn fwe-btn-lg\"\n [class.fwe-btn-link]=\"data?.strong\"\n (click)=\"onCancel()\"\n >\n {{ data?.cancel }}\n </button>\n <button\n *ngIf=\"data?.ok\"\n type=\"button\"\n aria-label=\"Ok\"\n class=\"fwe-btn fwe-btn-lg\"\n [class.fwe-btn-hero]=\"!data?.strong\"\n (click)=\"onOk()\"\n >\n {{ data?.ok }}\n </button>\n </div>\n </div>\n</div>\n", styles: [""] }]
|
|
37
|
+
}], propDecorators: { data: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}], close: [{
|
|
40
|
+
type: Output
|
|
41
|
+
}], cancel: [{
|
|
42
|
+
type: Output
|
|
43
|
+
}], ok: [{
|
|
44
|
+
type: Output
|
|
45
|
+
}], closeBtn: [{
|
|
46
|
+
type: ViewChild,
|
|
47
|
+
args: ['closeBtn']
|
|
48
|
+
}], onKeyUp: [{
|
|
49
|
+
type: HostListener,
|
|
50
|
+
args: ['window:keyup', ['$event']]
|
|
51
|
+
}] } });
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbHMvYWxlcnQvYWxlcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbHMvYWxlcnQvYWxlcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7OztBQW1CdkIsTUFBTSxPQUFPLGNBQWM7SUFOM0I7UUFRWSxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNoQyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNqQyxPQUFFLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztLQStCeEM7SUExQkMsT0FBTyxDQUFDLEtBQW9CO1FBQzFCLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFeEIsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLEtBQUssSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLFFBQVEsRUFBRTtZQUNqRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDaEI7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLGFBQTZCLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDdEQ7SUFDSCxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDOzsyR0FsQ1UsY0FBYzsrRkFBZCxjQUFjLHNTQzdCM0IsdWxFQW1FQTsyRkR0Q2EsY0FBYztrQkFOMUIsU0FBUzsrQkFDRSxXQUFXLGlCQUdOLGlCQUFpQixDQUFDLElBQUk7OEJBRzVCLElBQUk7c0JBQVosS0FBSztnQkFDSSxLQUFLO3NCQUFkLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLEVBQUU7c0JBQVgsTUFBTTtnQkFFZ0IsUUFBUTtzQkFBOUIsU0FBUzt1QkFBQyxVQUFVO2dCQUdyQixPQUFPO3NCQUROLFlBQVk7dUJBQUMsY0FBYyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1vZGFsIH0gZnJvbSAnLi4vaW5kZXgnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFsZXJ0RGF0YSB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHN1YnRpdGxlPzogc3RyaW5nO1xuICBib2R5OiBzdHJpbmc7XG4gIGFsZXJ0VHlwZTogJ2luZm8nIHwgJ3dhcm5pbmcnIHwgJ2Vycm9yJztcbiAgY2FuY2VsPzogc3RyaW5nO1xuICBvaz86IHN0cmluZztcbiAgc3Ryb25nPzogYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZm5nLWFsZXJ0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FsZXJ0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWxlcnQuY29tcG9uZW50LnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBBbGVydENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE1vZGFsPEFsZXJ0RGF0YSwgYW55PiB7XG4gIEBJbnB1dCgpIGRhdGE6IEFsZXJ0RGF0YTtcbiAgQE91dHB1dCgpIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSBjYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIG9rID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgQFZpZXdDaGlsZCgnY2xvc2VCdG4nKSBjbG9zZUJ0bjogRWxlbWVudFJlZjtcblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5dXAnLCBbJyRldmVudCddKVxuICBvbktleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIGlmIChldmVudC5rZXkgPT09ICdFc2MnIHx8IGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgIHRoaXMub25DbG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5jbG9zZUJ0bikge1xuICAgICAgKHRoaXMuY2xvc2VCdG4ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBvbkNsb3NlKCkge1xuICAgIHRoaXMuY2xvc2UuZW1pdCgpO1xuICB9XG5cbiAgb25PaygpIHtcbiAgICB0aGlzLm9rLmVtaXQoKTtcbiAgfVxuXG4gIG9uQ2FuY2VsKCkge1xuICAgIHRoaXMuY2FuY2VsLmVtaXQoKTtcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cImZ3ZS1tb2RhbFwiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAnZndlLW1vZGFsLS13aXRoLWluZGljYXRvci1iYXInOiBkYXRhPy5zdHJvbmcgPT09IHRydWUsXG4gICAgJ2Z3ZS1tb2RhbC0td2FybmluZyc6IGRhdGE/LmFsZXJ0VHlwZSA9PT0gJ3dhcm5pbmcnLFxuICAgICdmd2UtbW9kYWwtLWVycm9yJzogZGF0YT8uYWxlcnRUeXBlID09PSAnZXJyb3InLFxuICAgICdmd2UtbW9kYWwtLWluZm8nOiBkYXRhPy5hbGVydFR5cGUgPT09ICdpbmZvJ1xuICB9XCJcbj5cbiAgPGRpdiBjbGFzcz1cImZ3ZS1tb2RhbC1jbG9zZVwiPlxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiICNjbG9zZUJ0biBjbGFzcz1cImZ3ZS1idG4gZndlLWJ0bi1saW5rIGZ3ZS1kYXJrXCIgKGNsaWNrKT1cIm9uQ2xvc2UoKVwiPlxuICAgICAgPGkgYXJpYS1oaWRkZW49XCJ0cnVlXCIgY2xhc3M9XCJmd2UtaWNvbiBmd2UtaWNvbi1jbG9zZS1zbWFsbFwiPjwvaT5cbiAgICAgIDxzcGFuIGNsYXNzPVwiZndlLXNyLW9ubHlcIj5DbG9zZTwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmd2UtbW9kYWwtaGVhZGVyXCI+XG4gICAgPGgyICpuZ0lmPVwiZGF0YT8uc3VidGl0bGVcIiBjbGFzcz1cImZ3ZS1tb2RhbC1oMlwiPlxuICAgICAgPGlcbiAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICdmd2UtaWNvbic6IHRydWUsXG4gICAgICAgICAgJ2Z3ZS1pY29uLXN0YXR1cy13YXJuaW5nJzogZGF0YT8uYWxlcnRUeXBlID09PSAnd2FybmluZycsXG4gICAgICAgICAgJ2Z3ZS1pY29uLXN0YXR1cy1mYWlsdXJlJzogZGF0YT8uYWxlcnRUeXBlID09PSAnZXJyb3InLFxuICAgICAgICAgICdmd2UtaWNvbi1zdGF0dXMtY2hlY2stc3RhdHVzJzogZGF0YT8uYWxlcnRUeXBlID09PSAnaW5mbydcbiAgICAgICAgfVwiXG4gICAgICA+PC9pXG4gICAgICA+e3sgZGF0YT8uc3VidGl0bGUgfX1cbiAgICA8L2gyPlxuICAgIDxoMSBjbGFzcz1cImZ3ZS1tb2RhbC1oMVwiPlxuICAgICAgPGlcbiAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICdmd2UtaWNvbic6IHRydWUsXG4gICAgICAgICAgJ2Z3ZS1pY29uLXN0YXR1cy13YXJuaW5nJzogZGF0YT8uYWxlcnRUeXBlID09PSAnd2FybmluZycsXG4gICAgICAgICAgJ2Z3ZS1pY29uLXN0YXR1cy1mYWlsdXJlJzogZGF0YT8uYWxlcnRUeXBlID09PSAnZXJyb3InLFxuICAgICAgICAgICdmd2UtaWNvbi1zdGF0dXMtY2hlY2stc3RhdHVzJzogZGF0YT8uYWxlcnRUeXBlID09PSAnaW5mbydcbiAgICAgICAgfVwiXG4gICAgICA+PC9pXG4gICAgICA+e3sgZGF0YT8udGl0bGUgfX1cbiAgICA8L2gxPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZ3ZS1tb2RhbC1ib2R5XCI+XG4gICAgPHA+e3sgZGF0YT8uYm9keSB9fTwvcD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmd2UtbW9kYWwtZm9vdGVyXCIgKm5nSWY9XCJkYXRhPy5jYW5jZWwgfHwgZGF0YT8ub2tcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZndlLW1vZGFsLWJ1dHRvbnNcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCJkYXRhPy5jYW5jZWxcIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgYXJpYS1sYWJlbD1cIkNhbmNlbFwiXG4gICAgICAgIGNsYXNzPVwiZndlLWJ0biBmd2UtYnRuLWxnXCJcbiAgICAgICAgW2NsYXNzLmZ3ZS1idG4tbGlua109XCJkYXRhPy5zdHJvbmdcIlxuICAgICAgICAoY2xpY2spPVwib25DYW5jZWwoKVwiXG4gICAgICA+XG4gICAgICAgIHt7IGRhdGE/LmNhbmNlbCB9fVxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiZGF0YT8ub2tcIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgYXJpYS1sYWJlbD1cIk9rXCJcbiAgICAgICAgY2xhc3M9XCJmd2UtYnRuIGZ3ZS1idG4tbGdcIlxuICAgICAgICBbY2xhc3MuZndlLWJ0bi1oZXJvXT1cIiFkYXRhPy5zdHJvbmdcIlxuICAgICAgICAoY2xpY2spPVwib25PaygpXCJcbiAgICAgID5cbiAgICAgICAge3sgZGF0YT8ub2sgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, HostListener, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class ConfirmComponent {
|
|
5
|
+
constructor(cd) {
|
|
6
|
+
this.cd = cd;
|
|
7
|
+
this.close = new EventEmitter();
|
|
8
|
+
this.cancel = new EventEmitter();
|
|
9
|
+
this.ok = new EventEmitter();
|
|
10
|
+
}
|
|
11
|
+
onKeyUp(event) {
|
|
12
|
+
event.preventDefault();
|
|
13
|
+
event.stopPropagation();
|
|
14
|
+
if (event.key === 'Esc' || event.key === 'Escape') {
|
|
15
|
+
this.onClose();
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
ngAfterViewInit() {
|
|
19
|
+
if (this.closeBtn) {
|
|
20
|
+
this.closeBtn.nativeElement.focus();
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
onClose() {
|
|
24
|
+
this.close.emit();
|
|
25
|
+
}
|
|
26
|
+
onOk() {
|
|
27
|
+
this.ok.emit();
|
|
28
|
+
}
|
|
29
|
+
onCancel() {
|
|
30
|
+
this.cancel.emit();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
ConfirmComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ConfirmComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
+
ConfirmComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ConfirmComponent, selector: "fng-confirm", inputs: { data: "data" }, outputs: { close: "close", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, viewQueries: [{ propertyName: "closeBtn", first: true, predicate: ["closeBtn"], descendants: true }], ngImport: i0, template: "<div class=\"fwe-modal\" [ngClass]=\"{ 'fwe-modal--large': data?.large }\">\n <div class=\"fwe-modal-close\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onClose()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-close-small\"></i>\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n </div>\n <div class=\"fwe-modal-header\">\n <h2 *ngIf=\"data?.subtitle\" class=\"fwe-modal-h2\">{{ data?.subtitle }}</h2>\n <h1 class=\"fwe-modal-h1\">{{ data?.title }}</h1>\n </div>\n <div class=\"fwe-modal-body\">\n <p>{{ data?.body }}</p>\n </div>\n <div class=\"fwe-modal-footer\" *ngIf=\"data?.cancel || data?.ok\">\n <div class=\"fwe-modal-buttons\">\n <button *ngIf=\"data?.cancel\" type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data?.cancel }}\n </button>\n <button *ngIf=\"data?.ok\" type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-lg fwe-btn-hero\" (click)=\"onOk()\">\n {{ data?.ok }}\n </button>\n </div>\n </div>\n</div>\n", styles: [""], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ConfirmComponent, decorators: [{
|
|
36
|
+
type: Component,
|
|
37
|
+
args: [{ selector: 'fng-confirm', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-modal\" [ngClass]=\"{ 'fwe-modal--large': data?.large }\">\n <div class=\"fwe-modal-close\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onClose()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-close-small\"></i>\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n </div>\n <div class=\"fwe-modal-header\">\n <h2 *ngIf=\"data?.subtitle\" class=\"fwe-modal-h2\">{{ data?.subtitle }}</h2>\n <h1 class=\"fwe-modal-h1\">{{ data?.title }}</h1>\n </div>\n <div class=\"fwe-modal-body\">\n <p>{{ data?.body }}</p>\n </div>\n <div class=\"fwe-modal-footer\" *ngIf=\"data?.cancel || data?.ok\">\n <div class=\"fwe-modal-buttons\">\n <button *ngIf=\"data?.cancel\" type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data?.cancel }}\n </button>\n <button *ngIf=\"data?.ok\" type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-lg fwe-btn-hero\" (click)=\"onOk()\">\n {{ data?.ok }}\n </button>\n </div>\n </div>\n</div>\n", styles: [""] }]
|
|
38
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { data: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], close: [{
|
|
41
|
+
type: Output
|
|
42
|
+
}], cancel: [{
|
|
43
|
+
type: Output
|
|
44
|
+
}], ok: [{
|
|
45
|
+
type: Output
|
|
46
|
+
}], closeBtn: [{
|
|
47
|
+
type: ViewChild,
|
|
48
|
+
args: ['closeBtn']
|
|
49
|
+
}], onKeyUp: [{
|
|
50
|
+
type: HostListener,
|
|
51
|
+
args: ['window:keyup', ['$event']]
|
|
52
|
+
}] } });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL21vZGFscy9jb25maXJtL2NvbmZpcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbHMvY29uZmlybS9jb25maXJtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsRUFDbEIsTUFBTSxlQUFlLENBQUM7OztBQW9CdkIsTUFBTSxPQUFPLGdCQUFnQjtJQWtCM0IsWUFBb0IsRUFBcUI7UUFBckIsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7UUFoQi9CLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ2hDLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ2pDLE9BQUUsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBY0ssQ0FBQztJQVQ3QyxPQUFPLENBQUMsS0FBb0I7UUFDMUIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssS0FBSyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssUUFBUSxFQUFFO1lBQ2pELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNoQjtJQUNILENBQUM7SUFJRCxlQUFlO1FBQ2IsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBNkIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUN0RDtJQUNILENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7OzZHQXBDVSxnQkFBZ0I7aUdBQWhCLGdCQUFnQix3U0NoQzdCLHdtQ0F5QkE7MkZET2EsZ0JBQWdCO2tCQVA1QixTQUFTOytCQUNFLGFBQWEsbUJBR04sdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTt3R0FHNUIsSUFBSTtzQkFBWixLQUFLO2dCQUNJLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csRUFBRTtzQkFBWCxNQUFNO2dCQUVnQixRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVU7Z0JBR3JCLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxjQUFjLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE1vZGFsIH0gZnJvbSAnLi4vaW5kZXgnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpcm1EYXRhIHtcbiAgdGl0bGU6IHN0cmluZztcbiAgc3VidGl0bGU/OiBzdHJpbmc7XG4gIGJvZHk6IHN0cmluZztcbiAgY2FuY2VsPzogc3RyaW5nO1xuICBvaz86IHN0cmluZztcbiAgbGFyZ2U/OiBib29sZWFuO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmbmctY29uZmlybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb25maXJtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29uZmlybS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBDb25maXJtQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgTW9kYWw8Q29uZmlybURhdGEsIGFueT4ge1xuICBASW5wdXQoKSBkYXRhOiBDb25maXJtRGF0YTtcbiAgQE91dHB1dCgpIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSBjYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIG9rID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgQFZpZXdDaGlsZCgnY2xvc2VCdG4nKSBjbG9zZUJ0bjogRWxlbWVudFJlZjtcblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5dXAnLCBbJyRldmVudCddKVxuICBvbktleVVwKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIGlmIChldmVudC5rZXkgPT09ICdFc2MnIHx8IGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgIHRoaXMub25DbG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5jbG9zZUJ0bikge1xuICAgICAgKHRoaXMuY2xvc2VCdG4ubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBvbkNsb3NlKCkge1xuICAgIHRoaXMuY2xvc2UuZW1pdCgpO1xuICB9XG5cbiAgb25PaygpIHtcbiAgICB0aGlzLm9rLmVtaXQoKTtcbiAgfVxuXG4gIG9uQ2FuY2VsKCkge1xuICAgIHRoaXMuY2FuY2VsLmVtaXQoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZ3ZS1tb2RhbFwiIFtuZ0NsYXNzXT1cInsgJ2Z3ZS1tb2RhbC0tbGFyZ2UnOiBkYXRhPy5sYXJnZSB9XCI+XG4gIDxkaXYgY2xhc3M9XCJmd2UtbW9kYWwtY2xvc2VcIj5cbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBhcmlhLWxhYmVsPVwiQ2xvc2VcIiAjY2xvc2VCdG4gY2xhc3M9XCJmd2UtYnRuIGZ3ZS1idG4tbGluayBmd2UtZGFya1wiIChjbGljayk9XCJvbkNsb3NlKClcIj5cbiAgICAgIDxpIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIGNsYXNzPVwiZndlLWljb24gZndlLWljb24tY2xvc2Utc21hbGxcIj48L2k+XG4gICAgICA8c3BhbiBjbGFzcz1cImZ3ZS1zci1vbmx5XCI+Q2xvc2U8L3NwYW4+XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZndlLW1vZGFsLWhlYWRlclwiPlxuICAgIDxoMiAqbmdJZj1cImRhdGE/LnN1YnRpdGxlXCIgY2xhc3M9XCJmd2UtbW9kYWwtaDJcIj57eyBkYXRhPy5zdWJ0aXRsZSB9fTwvaDI+XG4gICAgPGgxIGNsYXNzPVwiZndlLW1vZGFsLWgxXCI+e3sgZGF0YT8udGl0bGUgfX08L2gxPlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZ3ZS1tb2RhbC1ib2R5XCI+XG4gICAgPHA+e3sgZGF0YT8uYm9keSB9fTwvcD5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJmd2UtbW9kYWwtZm9vdGVyXCIgKm5nSWY9XCJkYXRhPy5jYW5jZWwgfHwgZGF0YT8ub2tcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZndlLW1vZGFsLWJ1dHRvbnNcIj5cbiAgICAgIDxidXR0b24gKm5nSWY9XCJkYXRhPy5jYW5jZWxcIiB0eXBlPVwiYnV0dG9uXCIgYXJpYS1sYWJlbD1cIkNhbmNlbFwiIGNsYXNzPVwiZndlLWJ0biBmd2UtYnRuLWxnXCIgKGNsaWNrKT1cIm9uQ2FuY2VsKClcIj5cbiAgICAgICAge3sgZGF0YT8uY2FuY2VsIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gKm5nSWY9XCJkYXRhPy5va1wiIHR5cGU9XCJidXR0b25cIiBhcmlhLWxhYmVsPVwiT2tcIiBjbGFzcz1cImZ3ZS1idG4gZndlLWJ0bi1sZyBmd2UtYnRuLWhlcm9cIiAoY2xpY2spPVwib25PaygpXCI+XG4gICAgICAgIHt7IGRhdGE/Lm9rIH19XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../../buttons/button/button.component";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
export class CustomModalComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.closeOnBackdrop = false;
|
|
8
|
+
this.large = false;
|
|
9
|
+
this.visible = false;
|
|
10
|
+
this.visibleChange = new EventEmitter(false);
|
|
11
|
+
this.header = '';
|
|
12
|
+
this.subheader = '';
|
|
13
|
+
this.acknowledgeLabel = 'Ok';
|
|
14
|
+
this.acknowledge = new EventEmitter();
|
|
15
|
+
this.cancelLabel = 'Cancel';
|
|
16
|
+
this.cancel = new EventEmitter();
|
|
17
|
+
}
|
|
18
|
+
closeModal() {
|
|
19
|
+
this.visible = false;
|
|
20
|
+
if (this.visibleChange) {
|
|
21
|
+
this.visibleChange.emit(false);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
onCancel() {
|
|
25
|
+
this.closeModal();
|
|
26
|
+
if (this.cancel) {
|
|
27
|
+
this.cancel.emit();
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
onAcknowledge() {
|
|
31
|
+
if (this.acknowledge) {
|
|
32
|
+
this.acknowledge.emit();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
onClickOutside() {
|
|
36
|
+
if (this.closeOnBackdrop) {
|
|
37
|
+
this.onCancel();
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
onClickInside(event) {
|
|
41
|
+
event.stopPropagation();
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
CustomModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CustomModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
45
|
+
CustomModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: CustomModalComponent, selector: "fng-custom-modal", inputs: { closeOnBackdrop: "closeOnBackdrop", large: "large", visible: "visible", header: "header", subheader: "subheader", acknowledgeLabel: "acknowledgeLabel", cancelLabel: "cancelLabel" }, outputs: { visibleChange: "visibleChange", acknowledge: "acknowledge", cancel: "cancel" }, ngImport: i0, template: "<div class=\"fwe-modal-backdrop\" *ngIf=\"visible\" (mousedown)=\"onClickOutside()\">\n <div class=\"fwe-modal\" [class.fwe-modal--large]=\"large\" (mousedown)=\"onClickInside($event)\">\n <div class=\"fwe-modal-close\">\n <button class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onCancel()\">\n <i class=\"fwe-icon fwe-icon-2x fwe-icon-close-small\"></i>\n </button>\n </div>\n <div class=\"fwe-modal-header\">\n <h2 class=\"fwe-modal-h2\" *ngIf=\"subheader?.length\">{{ subheader }}</h2>\n <h1 class=\"fwe-modal-h1\">{{ header }}</h1>\n </div>\n <div class=\"fwe-modal-body\">\n <ng-content></ng-content>\n </div>\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n <fng-button [large]=\"true\" (click)=\"onCancel()\">{{ cancelLabel }}</fng-button>\n <fng-button [large]=\"true\" (click)=\"onAcknowledge()\" [primary]=\"true\">{{ acknowledgeLabel }}</fng-button>\n </div>\n </div>\n </div>\n</div>\n", components: [{ type: i1.ButtonComponent, selector: "fng-button", inputs: ["text", "icon", "disabled", "primary", "iconOnly", "large"], outputs: ["fngClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
46
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: CustomModalComponent, decorators: [{
|
|
47
|
+
type: Component,
|
|
48
|
+
args: [{ selector: 'fng-custom-modal', template: "<div class=\"fwe-modal-backdrop\" *ngIf=\"visible\" (mousedown)=\"onClickOutside()\">\n <div class=\"fwe-modal\" [class.fwe-modal--large]=\"large\" (mousedown)=\"onClickInside($event)\">\n <div class=\"fwe-modal-close\">\n <button class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onCancel()\">\n <i class=\"fwe-icon fwe-icon-2x fwe-icon-close-small\"></i>\n </button>\n </div>\n <div class=\"fwe-modal-header\">\n <h2 class=\"fwe-modal-h2\" *ngIf=\"subheader?.length\">{{ subheader }}</h2>\n <h1 class=\"fwe-modal-h1\">{{ header }}</h1>\n </div>\n <div class=\"fwe-modal-body\">\n <ng-content></ng-content>\n </div>\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n <fng-button [large]=\"true\" (click)=\"onCancel()\">{{ cancelLabel }}</fng-button>\n <fng-button [large]=\"true\" (click)=\"onAcknowledge()\" [primary]=\"true\">{{ acknowledgeLabel }}</fng-button>\n </div>\n </div>\n </div>\n</div>\n" }]
|
|
49
|
+
}], propDecorators: { closeOnBackdrop: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], large: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], visible: [{
|
|
54
|
+
type: Input
|
|
55
|
+
}], visibleChange: [{
|
|
56
|
+
type: Output
|
|
57
|
+
}], header: [{
|
|
58
|
+
type: Input
|
|
59
|
+
}], subheader: [{
|
|
60
|
+
type: Input
|
|
61
|
+
}], acknowledgeLabel: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}], acknowledge: [{
|
|
64
|
+
type: Output
|
|
65
|
+
}], cancelLabel: [{
|
|
66
|
+
type: Input
|
|
67
|
+
}], cancel: [{
|
|
68
|
+
type: Output
|
|
69
|
+
}] } });
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbW9kYWxzL2N1c3RvbS1tb2RhbC9jdXN0b20tbW9kYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9tb2RhbHMvY3VzdG9tLW1vZGFsL2N1c3RvbS1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBTXZFLE1BQU0sT0FBTyxvQkFBb0I7SUFKakM7UUFLVyxvQkFBZSxHQUFZLEtBQUssQ0FBQztRQUNqQyxVQUFLLEdBQVksS0FBSyxDQUFDO1FBQ3ZCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFDeEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUVsRCxXQUFNLEdBQVcsRUFBRSxDQUFDO1FBQ3BCLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFFdkIscUJBQWdCLEdBQVcsSUFBSSxDQUFDO1FBQy9CLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUV4QyxnQkFBVyxHQUFXLFFBQVEsQ0FBQztRQUM5QixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztLQStCN0M7SUE3QkMsVUFBVTtRQUNSLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNoQztJQUNILENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDcEI7SUFDSCxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFpQjtRQUM3QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDMUIsQ0FBQzs7aUhBM0NVLG9CQUFvQjtxR0FBcEIsb0JBQW9CLG1WQ05qQywrK0JBc0JBOzJGRGhCYSxvQkFBb0I7a0JBSmhDLFNBQVM7K0JBQ0Usa0JBQWtCOzhCQUluQixlQUFlO3NCQUF2QixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksYUFBYTtzQkFBdEIsTUFBTTtnQkFFRSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFFRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0ksV0FBVztzQkFBcEIsTUFBTTtnQkFFRSxXQUFXO3NCQUFuQixLQUFLO2dCQUNJLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZuZy1jdXN0b20tbW9kYWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vY3VzdG9tLW1vZGFsLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBDdXN0b21Nb2RhbENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNsb3NlT25CYWNrZHJvcDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBsYXJnZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSB2aXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIEBPdXRwdXQoKSB2aXNpYmxlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPihmYWxzZSk7XG5cbiAgQElucHV0KCkgaGVhZGVyOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgc3ViaGVhZGVyOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKSBhY2tub3dsZWRnZUxhYmVsOiBzdHJpbmcgPSAnT2snO1xuICBAT3V0cHV0KCkgYWNrbm93bGVkZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQElucHV0KCkgY2FuY2VsTGFiZWw6IHN0cmluZyA9ICdDYW5jZWwnO1xuICBAT3V0cHV0KCkgY2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIGNsb3NlTW9kYWwoKTogdm9pZCB7XG4gICAgdGhpcy52aXNpYmxlID0gZmFsc2U7XG4gICAgaWYgKHRoaXMudmlzaWJsZUNoYW5nZSkge1xuICAgICAgdGhpcy52aXNpYmxlQ2hhbmdlLmVtaXQoZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2FuY2VsKCk6IHZvaWQge1xuICAgIHRoaXMuY2xvc2VNb2RhbCgpO1xuICAgIGlmICh0aGlzLmNhbmNlbCkge1xuICAgICAgdGhpcy5jYW5jZWwuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIG9uQWNrbm93bGVkZ2UoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuYWNrbm93bGVkZ2UpIHtcbiAgICAgIHRoaXMuYWNrbm93bGVkZ2UuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2xpY2tPdXRzaWRlKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNsb3NlT25CYWNrZHJvcCkge1xuICAgICAgdGhpcy5vbkNhbmNlbCgpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2xpY2tJbnNpZGUoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZ3ZS1tb2RhbC1iYWNrZHJvcFwiICpuZ0lmPVwidmlzaWJsZVwiIChtb3VzZWRvd24pPVwib25DbGlja091dHNpZGUoKVwiPlxuICA8ZGl2IGNsYXNzPVwiZndlLW1vZGFsXCIgW2NsYXNzLmZ3ZS1tb2RhbC0tbGFyZ2VdPVwibGFyZ2VcIiAobW91c2Vkb3duKT1cIm9uQ2xpY2tJbnNpZGUoJGV2ZW50KVwiPlxuICAgIDxkaXYgY2xhc3M9XCJmd2UtbW9kYWwtY2xvc2VcIj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJmd2UtYnRuIGZ3ZS1idG4tbGluayBmd2UtZGFya1wiIChjbGljayk9XCJvbkNhbmNlbCgpXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiZndlLWljb24gZndlLWljb24tMnggZndlLWljb24tY2xvc2Utc21hbGxcIj48L2k+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZndlLW1vZGFsLWhlYWRlclwiPlxuICAgICAgPGgyIGNsYXNzPVwiZndlLW1vZGFsLWgyXCIgKm5nSWY9XCJzdWJoZWFkZXI/Lmxlbmd0aFwiPnt7IHN1YmhlYWRlciB9fTwvaDI+XG4gICAgICA8aDEgY2xhc3M9XCJmd2UtbW9kYWwtaDFcIj57eyBoZWFkZXIgfX08L2gxPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmd2UtbW9kYWwtYm9keVwiPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmd2UtbW9kYWwtZm9vdGVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZndlLW1vZGFsLWJ1dHRvbnNcIj5cbiAgICAgICAgPGZuZy1idXR0b24gW2xhcmdlXT1cInRydWVcIiAoY2xpY2spPVwib25DYW5jZWwoKVwiPnt7IGNhbmNlbExhYmVsIH19PC9mbmctYnV0dG9uPlxuICAgICAgICA8Zm5nLWJ1dHRvbiBbbGFyZ2VdPVwidHJ1ZVwiIChjbGljayk9XCJvbkFja25vd2xlZGdlKClcIiBbcHJpbWFyeV09XCJ0cnVlXCI+e3sgYWNrbm93bGVkZ2VMYWJlbCB9fTwvZm5nLWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL21vZGFscy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5cbmV4cG9ydCB0eXBlIE1vZGFsVXNlckFjdGlvbiA9ICdvaycgfCAnY2FuY2VsJyB8ICdjbG9zZScgfCAnYmFja2Ryb3AnIHwgJ25hdmlnYXRlZCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9kYWw8VERhdGEsIFRSZXN1bHQ+IGV4dGVuZHMgUGFydGlhbDxPbkNoYW5nZXM+IHtcbiAgZGF0YTogVERhdGE7XG4gIGNsb3NlOiBFdmVudEVtaXR0ZXI8YW55PjtcbiAgY2FuY2VsOiBFdmVudEVtaXR0ZXI8YW55PjtcbiAgb2s6IEV2ZW50RW1pdHRlcjxUUmVzdWx0Pjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2RhbE9wdGlvbnMge1xuICBoYXNCYWNrZHJvcD86IGJvb2xlYW47XG4gIHNob3VsZENsb3NlT25CYWNrZHJvcD86IGJvb2xlYW47XG4gIGJhY2tkcm9wQ2xhc3M/OiBzdHJpbmc7XG4gIHBvc2l0aW9uU3RyYXRlZ3k/OiBHbG9iYWxQb3NpdGlvblN0cmF0ZWd5O1xuICBvdmVybGF5Q2xhc3M/OiBzdHJpbmc7XG4gIGNsb3NlT25OYXZpZ2F0aW9uPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2RhbFJlc3VsdDxUUmVzdWx0PiB7XG4gIHVzZXJBY3Rpb246IE1vZGFsVXNlckFjdGlvbjtcbiAgcmVzdWx0PzogVFJlc3VsdDtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { Injectable, SimpleChange } from '@angular/core';
|
|
2
|
+
import { NavigationStart, Router } from '@angular/router';
|
|
3
|
+
import { Overlay } from '@angular/cdk/overlay';
|
|
4
|
+
import { ComponentPortal } from '@angular/cdk/portal';
|
|
5
|
+
import { filter, takeUntil } from 'rxjs/operators';
|
|
6
|
+
import { AlertComponent } from './alert/alert.component';
|
|
7
|
+
import { ConfirmComponent } from './confirm/confirm.component';
|
|
8
|
+
import { Subject } from 'rxjs';
|
|
9
|
+
import { PromptComponent } from './prompt/prompt.component';
|
|
10
|
+
import { ImageGalleryComponent } from '../image-gallery/image-gallery.component';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "@angular/cdk/overlay";
|
|
13
|
+
import * as i2 from "@angular/router";
|
|
14
|
+
export class ModalService {
|
|
15
|
+
constructor(overlay, router) {
|
|
16
|
+
this.overlay = overlay;
|
|
17
|
+
this.router = router;
|
|
18
|
+
}
|
|
19
|
+
alert(data, options) {
|
|
20
|
+
return this.open(data, AlertComponent, {
|
|
21
|
+
backdropClass: 'fwe-modal-backdrop',
|
|
22
|
+
hasBackdrop: true,
|
|
23
|
+
shouldCloseOnBackdrop: true,
|
|
24
|
+
...options
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
confirm(data, options) {
|
|
28
|
+
options = options || {
|
|
29
|
+
backdropClass: 'fwe-modal-backdrop',
|
|
30
|
+
hasBackdrop: true,
|
|
31
|
+
shouldCloseOnBackdrop: true,
|
|
32
|
+
...options
|
|
33
|
+
};
|
|
34
|
+
return this.open(data, ConfirmComponent, options);
|
|
35
|
+
}
|
|
36
|
+
prompt(data, options) {
|
|
37
|
+
options = options || {
|
|
38
|
+
backdropClass: 'fwe-modal-backdrop',
|
|
39
|
+
hasBackdrop: true,
|
|
40
|
+
shouldCloseOnBackdrop: true,
|
|
41
|
+
...options
|
|
42
|
+
};
|
|
43
|
+
return this.open(data, PromptComponent, options);
|
|
44
|
+
}
|
|
45
|
+
openImageGallery(data) {
|
|
46
|
+
const options = {
|
|
47
|
+
backdropClass: 'fwe-modal-backdrop',
|
|
48
|
+
hasBackdrop: true,
|
|
49
|
+
shouldCloseOnBackdrop: true
|
|
50
|
+
};
|
|
51
|
+
return this.open(data, ImageGalleryComponent, options);
|
|
52
|
+
}
|
|
53
|
+
open(data, modal, options) {
|
|
54
|
+
return new Promise((resolve, reject) => {
|
|
55
|
+
const complete = new Subject();
|
|
56
|
+
const positionStrategy = options.positionStrategy || this.overlay.position().global().centerHorizontally().centerVertically();
|
|
57
|
+
const scrollStrategy = this.overlay.scrollStrategies.block();
|
|
58
|
+
const overlayRef = this.overlay.create({
|
|
59
|
+
panelClass: options.overlayClass,
|
|
60
|
+
positionStrategy,
|
|
61
|
+
scrollStrategy,
|
|
62
|
+
backdropClass: 'fwe-modal-backdrop',
|
|
63
|
+
hasBackdrop: true,
|
|
64
|
+
...options
|
|
65
|
+
});
|
|
66
|
+
if (options.closeOnNavigation) {
|
|
67
|
+
this.router.events
|
|
68
|
+
.pipe(filter(e => e instanceof NavigationStart), takeUntil(complete))
|
|
69
|
+
.subscribe(() => this.dispose(overlayRef, complete).then(() => resolve({ userAction: 'navigated' })));
|
|
70
|
+
}
|
|
71
|
+
if (options.shouldCloseOnBackdrop) {
|
|
72
|
+
overlayRef
|
|
73
|
+
.backdropClick()
|
|
74
|
+
.pipe(takeUntil(complete))
|
|
75
|
+
.subscribe(() => this.dispose(overlayRef, complete).then(() => resolve({ userAction: 'backdrop' })));
|
|
76
|
+
}
|
|
77
|
+
const modalPortal = new ComponentPortal(modal);
|
|
78
|
+
const componentRef = overlayRef.attach(modalPortal);
|
|
79
|
+
if (componentRef != null && componentRef.instance != null) {
|
|
80
|
+
componentRef.instance.data = data;
|
|
81
|
+
if (componentRef.instance.close != null) {
|
|
82
|
+
componentRef.instance.close
|
|
83
|
+
.pipe(takeUntil(complete))
|
|
84
|
+
.subscribe(() => this.dispose(overlayRef, complete).then(() => resolve({ userAction: 'close' })));
|
|
85
|
+
}
|
|
86
|
+
if (componentRef.instance.cancel != null) {
|
|
87
|
+
componentRef.instance.cancel
|
|
88
|
+
.pipe(takeUntil(complete))
|
|
89
|
+
.subscribe(() => this.dispose(overlayRef, complete).then(() => resolve({ userAction: 'cancel' })));
|
|
90
|
+
}
|
|
91
|
+
if (componentRef.instance.ok != null) {
|
|
92
|
+
componentRef.instance.ok
|
|
93
|
+
.pipe(takeUntil(complete))
|
|
94
|
+
.subscribe(result => this.dispose(overlayRef, complete).then(() => resolve({ userAction: 'ok', result })));
|
|
95
|
+
}
|
|
96
|
+
if (componentRef.instance.ngOnChanges != null) {
|
|
97
|
+
componentRef.instance.ngOnChanges({ data: new SimpleChange(null, data, true) });
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
this.dispose(overlayRef, complete).then(() => reject(new Error('Could not attach component to overlay.')));
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
dispose(overlayRef, complete) {
|
|
106
|
+
return new Promise(resolve => {
|
|
107
|
+
complete.next(true);
|
|
108
|
+
complete.complete();
|
|
109
|
+
complete.unsubscribe();
|
|
110
|
+
overlayRef.dispose();
|
|
111
|
+
resolve();
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
ModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ModalService, deps: [{ token: i1.Overlay }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
116
|
+
ModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ModalService, providedIn: 'root' });
|
|
117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ModalService, decorators: [{
|
|
118
|
+
type: Injectable,
|
|
119
|
+
args: [{ providedIn: 'root' }]
|
|
120
|
+
}], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i2.Router }]; } });
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbW9kYWxzL21vZGFsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsT0FBTyxFQUFjLE1BQU0sc0JBQXNCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBaUIsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR25ELE9BQU8sRUFBRSxjQUFjLEVBQWEsTUFBTSx5QkFBeUIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQWUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RSxPQUFPLEVBQUUscUJBQXFCLEVBQW9CLE1BQU0sMENBQTBDLENBQUM7Ozs7QUFHbkcsTUFBTSxPQUFPLFlBQVk7SUFDdkIsWUFBc0IsT0FBZ0IsRUFBVSxNQUFjO1FBQXhDLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQUcsQ0FBQztJQUVsRSxLQUFLLENBQUMsSUFBZSxFQUFFLE9BQXNCO1FBQzNDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBaUMsSUFBSSxFQUFFLGNBQWMsRUFBRTtZQUNyRSxhQUFhLEVBQUUsb0JBQW9CO1lBQ25DLFdBQVcsRUFBRSxJQUFJO1lBQ2pCLHFCQUFxQixFQUFFLElBQUk7WUFDM0Is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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgU2ltcGxlQ2hhbmdlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uU3RhcnQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPdmVybGF5LCBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsLCBDb21wb25lbnRUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQgeyBmaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTW9kYWwsIE1vZGFsT3B0aW9ucywgTW9kYWxSZXN1bHQgfSBmcm9tICcuL2luZGV4JztcbmltcG9ydCB7IEFsZXJ0Q29tcG9uZW50LCBBbGVydERhdGEgfSBmcm9tICcuL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25maXJtQ29tcG9uZW50LCBDb25maXJtRGF0YSB9IGZyb20gJy4vY29uZmlybS9jb25maXJtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcm9tcHRDb21wb25lbnQsIFByb21wdERhdGEgfSBmcm9tICcuL3Byb21wdC9wcm9tcHQuY29tcG9uZW50JztcbmltcG9ydCB7IEltYWdlR2FsbGVyeUNvbXBvbmVudCwgSW1hZ2VHYWxsZXJ5RGF0YSB9IGZyb20gJy4uL2ltYWdlLWdhbGxlcnkvaW1hZ2UtZ2FsbGVyeS5jb21wb25lbnQnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIE1vZGFsU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBvdmVybGF5OiBPdmVybGF5LCBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7fVxuXG4gIGFsZXJ0KGRhdGE6IEFsZXJ0RGF0YSwgb3B0aW9ucz86IE1vZGFsT3B0aW9ucykge1xuICAgIHJldHVybiB0aGlzLm9wZW48QWxlcnREYXRhLCBhbnksIEFsZXJ0Q29tcG9uZW50PihkYXRhLCBBbGVydENvbXBvbmVudCwge1xuICAgICAgYmFja2Ryb3BDbGFzczogJ2Z3ZS1tb2RhbC1iYWNrZHJvcCcsXG4gICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgIHNob3VsZENsb3NlT25CYWNrZHJvcDogdHJ1ZSxcbiAgICAgIC4uLm9wdGlvbnNcbiAgICB9KTtcbiAgfVxuXG4gIGNvbmZpcm0oZGF0YTogQ29uZmlybURhdGEsIG9wdGlvbnM/OiBNb2RhbE9wdGlvbnMpIHtcbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7XG4gICAgICBiYWNrZHJvcENsYXNzOiAnZndlLW1vZGFsLWJhY2tkcm9wJyxcbiAgICAgIGhhc0JhY2tkcm9wOiB0cnVlLFxuICAgICAgc2hvdWxkQ2xvc2VPbkJhY2tkcm9wOiB0cnVlLFxuICAgICAgLi4ub3B0aW9uc1xuICAgIH07XG4gICAgcmV0dXJuIHRoaXMub3BlbjxDb25maXJtRGF0YSwgYW55LCBDb25maXJtQ29tcG9uZW50PihkYXRhLCBDb25maXJtQ29tcG9uZW50LCBvcHRpb25zKTtcbiAgfVxuXG4gIHByb21wdChkYXRhOiBQcm9tcHREYXRhLCBvcHRpb25zPzogTW9kYWxPcHRpb25zKSB7XG4gICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwge1xuICAgICAgYmFja2Ryb3BDbGFzczogJ2Z3ZS1tb2RhbC1iYWNrZHJvcCcsXG4gICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgIHNob3VsZENsb3NlT25CYWNrZHJvcDogdHJ1ZSxcbiAgICAgIC4uLm9wdGlvbnNcbiAgICB9O1xuICAgIHJldHVybiB0aGlzLm9wZW48UHJvbXB0RGF0YSwgYW55LCBQcm9tcHRDb21wb25lbnQ+KGRhdGEsIFByb21wdENvbXBvbmVudCwgb3B0aW9ucyk7XG4gIH1cblxuICBvcGVuSW1hZ2VHYWxsZXJ5KGRhdGE6IEltYWdlR2FsbGVyeURhdGEpIHtcbiAgICBjb25zdCBvcHRpb25zOiBNb2RhbE9wdGlvbnMgPSB7XG4gICAgICBiYWNrZHJvcENsYXNzOiAnZndlLW1vZGFsLWJhY2tkcm9wJyxcbiAgICAgIGhhc0JhY2tkcm9wOiB0cnVlLFxuICAgICAgc2hvdWxkQ2xvc2VPbkJhY2tkcm9wOiB0cnVlXG4gICAgfTtcbiAgICByZXR1cm4gdGhpcy5vcGVuPEltYWdlR2FsbGVyeURhdGEsIGFueSwgSW1hZ2VHYWxsZXJ5Q29tcG9uZW50PihkYXRhLCBJbWFnZUdhbGxlcnlDb21wb25lbnQsIG9wdGlvbnMpO1xuICB9XG5cbiAgb3BlbjxURGF0YSwgVFJlc3VsdCwgVE1vZGFsIGV4dGVuZHMgTW9kYWw8VERhdGEsIFRSZXN1bHQ+PihcbiAgICBkYXRhOiBURGF0YSxcbiAgICBtb2RhbDogQ29tcG9uZW50VHlwZTxUTW9kYWw+LFxuICAgIG9wdGlvbnM6IE1vZGFsT3B0aW9uc1xuICApOiBQcm9taXNlPE1vZGFsUmVzdWx0PFRSZXN1bHQ+PiB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbnN0IGNvbXBsZXRlID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSBvcHRpb25zLnBvc2l0aW9uU3RyYXRlZ3kgfHwgdGhpcy5vdmVybGF5LnBvc2l0aW9uKCkuZ2xvYmFsKCkuY2VudGVySG9yaXpvbnRhbGx5KCkuY2VudGVyVmVydGljYWxseSgpO1xuICAgICAgY29uc3Qgc2Nyb2xsU3RyYXRlZ3kgPSB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ibG9jaygpO1xuICAgICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoe1xuICAgICAgICBwYW5lbENsYXNzOiBvcHRpb25zLm92ZXJsYXlDbGFzcyxcbiAgICAgICAgcG9zaXRpb25TdHJhdGVneSxcbiAgICAgICAgc2Nyb2xsU3RyYXRlZ3ksXG4gICAgICAgIGJhY2tkcm9wQ2xhc3M6ICdmd2UtbW9kYWwtYmFja2Ryb3AnLFxuICAgICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgICAgLi4ub3B0aW9uc1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChvcHRpb25zLmNsb3NlT25OYXZpZ2F0aW9uKSB7XG4gICAgICAgIHRoaXMucm91dGVyLmV2ZW50c1xuICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgZmlsdGVyKGUgPT4gZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCksXG4gICAgICAgICAgICB0YWtlVW50aWwoY29tcGxldGUpXG4gICAgICAgICAgKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5kaXNwb3NlKG92ZXJsYXlSZWYsIGNvbXBsZXRlKS50aGVuKCgpID0+IHJlc29sdmUoeyB1c2VyQWN0aW9uOiAnbmF2aWdhdGVkJyB9KSkpO1xuICAgICAgfVxuXG4gICAgICBpZiAob3B0aW9ucy5zaG91bGRDbG9zZU9uQmFja2Ryb3ApIHtcbiAgICAgICAgb3ZlcmxheVJlZlxuICAgICAgICAgIC5iYWNrZHJvcENsaWNrKClcbiAgICAgICAgICAucGlwZSh0YWtlVW50aWwoY29tcGxldGUpKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5kaXNwb3NlKG92ZXJsYXlSZWYsIGNvbXBsZXRlKS50aGVuKCgpID0+IHJlc29sdmUoeyB1c2VyQWN0aW9uOiAnYmFja2Ryb3AnIH0pKSk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1vZGFsUG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChtb2RhbCk7XG4gICAgICBjb25zdCBjb21wb25lbnRSZWYgPSBvdmVybGF5UmVmLmF0dGFjaChtb2RhbFBvcnRhbCk7XG4gICAgICBpZiAoY29tcG9uZW50UmVmICE9IG51bGwgJiYgY29tcG9uZW50UmVmLmluc3RhbmNlICE9IG51bGwpIHtcbiAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLmRhdGEgPSBkYXRhO1xuICAgICAgICBpZiAoY29tcG9uZW50UmVmLmluc3RhbmNlLmNsb3NlICE9IG51bGwpIHtcbiAgICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuY2xvc2VcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbChjb21wbGV0ZSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuZGlzcG9zZShvdmVybGF5UmVmLCBjb21wbGV0ZSkudGhlbigoKSA9PiByZXNvbHZlKHsgdXNlckFjdGlvbjogJ2Nsb3NlJyB9KSkpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChjb21wb25lbnRSZWYuaW5zdGFuY2UuY2FuY2VsICE9IG51bGwpIHtcbiAgICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UuY2FuY2VsXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwoY29tcGxldGUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmRpc3Bvc2Uob3ZlcmxheVJlZiwgY29tcGxldGUpLnRoZW4oKCkgPT4gcmVzb2x2ZSh7IHVzZXJBY3Rpb246ICdjYW5jZWwnIH0pKSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGNvbXBvbmVudFJlZi5pbnN0YW5jZS5vayAhPSBudWxsKSB7XG4gICAgICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlLm9rXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwoY29tcGxldGUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4gdGhpcy5kaXNwb3NlKG92ZXJsYXlSZWYsIGNvbXBsZXRlKS50aGVuKCgpID0+IHJlc29sdmUoeyB1c2VyQWN0aW9uOiAnb2snLCByZXN1bHQgfSkpKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY29tcG9uZW50UmVmLmluc3RhbmNlLm5nT25DaGFuZ2VzICE9IG51bGwpIHtcbiAgICAgICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2UubmdPbkNoYW5nZXMoeyBkYXRhOiBuZXcgU2ltcGxlQ2hhbmdlKG51bGwsIGRhdGEsIHRydWUpIH0pO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmRpc3Bvc2Uob3ZlcmxheVJlZiwgY29tcGxldGUpLnRoZW4oKCkgPT4gcmVqZWN0KG5ldyBFcnJvcignQ291bGQgbm90IGF0dGFjaCBjb21wb25lbnQgdG8gb3ZlcmxheS4nKSkpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBkaXNwb3NlKG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYsIGNvbXBsZXRlOiBTdWJqZWN0PGJvb2xlYW4+KSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPHZvaWQ+KHJlc29sdmUgPT4ge1xuICAgICAgY29tcGxldGUubmV4dCh0cnVlKTtcbiAgICAgIGNvbXBsZXRlLmNvbXBsZXRlKCk7XG4gICAgICBjb21wbGV0ZS51bnN1YnNjcmliZSgpO1xuICAgICAgb3ZlcmxheVJlZi5kaXNwb3NlKCk7XG4gICAgICByZXNvbHZlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { RouterModule } from '@angular/router';
|
|
4
|
+
import { OverlayModule } from '@angular/cdk/overlay';
|
|
5
|
+
import { FestoAngularFormsModule } from '../../forms/forms.module';
|
|
6
|
+
import { AlertComponent } from './alert/alert.component';
|
|
7
|
+
import { ConfirmComponent } from './confirm/confirm.component';
|
|
8
|
+
import { PromptComponent } from './prompt/prompt.component';
|
|
9
|
+
import { CustomModalComponent } from './custom-modal/custom-modal.component';
|
|
10
|
+
import { FestoAngularComponentsModule } from '../components.module';
|
|
11
|
+
import * as i0 from "@angular/core";
|
|
12
|
+
export * from './index';
|
|
13
|
+
export * from './alert/alert.component';
|
|
14
|
+
export * from './confirm/confirm.component';
|
|
15
|
+
export * from './prompt/prompt.component';
|
|
16
|
+
export * from './custom-modal/custom-modal.component';
|
|
17
|
+
export class FestoAngularModalsModule {
|
|
18
|
+
}
|
|
19
|
+
FestoAngularModalsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: FestoAngularModalsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
20
|
+
FestoAngularModalsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: FestoAngularModalsModule, declarations: [AlertComponent, ConfirmComponent, PromptComponent, CustomModalComponent], imports: [CommonModule, RouterModule, OverlayModule, FestoAngularFormsModule, FestoAngularComponentsModule], exports: [AlertComponent, ConfirmComponent, PromptComponent, CustomModalComponent] });
|
|
21
|
+
FestoAngularModalsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: FestoAngularModalsModule, providers: [], imports: [[CommonModule, RouterModule, OverlayModule, FestoAngularFormsModule, FestoAngularComponentsModule]] });
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: FestoAngularModalsModule, decorators: [{
|
|
23
|
+
type: NgModule,
|
|
24
|
+
args: [{
|
|
25
|
+
declarations: [AlertComponent, ConfirmComponent, PromptComponent, CustomModalComponent],
|
|
26
|
+
imports: [CommonModule, RouterModule, OverlayModule, FestoAngularFormsModule, FestoAngularComponentsModule],
|
|
27
|
+
exports: [AlertComponent, ConfirmComponent, PromptComponent, CustomModalComponent],
|
|
28
|
+
providers: []
|
|
29
|
+
}]
|
|
30
|
+
}] });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWxzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbW9kYWxzL21vZGFscy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUVwRSxjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHVDQUF1QyxDQUFDO0FBUXRELE1BQU0sT0FBTyx3QkFBd0I7O3FIQUF4Qix3QkFBd0I7c0hBQXhCLHdCQUF3QixpQkFMcEIsY0FBYyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxvQkFBb0IsYUFDNUUsWUFBWSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsdUJBQXVCLEVBQUUsNEJBQTRCLGFBQ2hHLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsb0JBQW9CO3NIQUd0RSx3QkFBd0IsYUFGeEIsRUFBRSxZQUZKLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsdUJBQXVCLEVBQUUsNEJBQTRCLENBQUM7MkZBSWhHLHdCQUF3QjtrQkFOcEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixDQUFDO29CQUN2RixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSx1QkFBdUIsRUFBRSw0QkFBNEIsQ0FBQztvQkFDM0csT0FBTyxFQUFFLENBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQztvQkFDbEYsU0FBUyxFQUFFLEVBQUU7aUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPdmVybGF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuXG5pbXBvcnQgeyBGZXN0b0FuZ3VsYXJGb3Jtc01vZHVsZSB9IGZyb20gJy4uLy4uL2Zvcm1zL2Zvcm1zLm1vZHVsZSc7XG5pbXBvcnQgeyBBbGVydENvbXBvbmVudCB9IGZyb20gJy4vYWxlcnQvYWxlcnQuY29tcG9uZW50JztcbmltcG9ydCB7IENvbmZpcm1Db21wb25lbnQgfSBmcm9tICcuL2NvbmZpcm0vY29uZmlybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvbXB0Q29tcG9uZW50IH0gZnJvbSAnLi9wcm9tcHQvcHJvbXB0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXN0b21Nb2RhbENvbXBvbmVudCB9IGZyb20gJy4vY3VzdG9tLW1vZGFsL2N1c3RvbS1tb2RhbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmVzdG9Bbmd1bGFyQ29tcG9uZW50c01vZHVsZSB9IGZyb20gJy4uL2NvbXBvbmVudHMubW9kdWxlJztcblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpcm0vY29uZmlybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9tcHQvcHJvbXB0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2N1c3RvbS1tb2RhbC9jdXN0b20tbW9kYWwuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbQWxlcnRDb21wb25lbnQsIENvbmZpcm1Db21wb25lbnQsIFByb21wdENvbXBvbmVudCwgQ3VzdG9tTW9kYWxDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSb3V0ZXJNb2R1bGUsIE92ZXJsYXlNb2R1bGUsIEZlc3RvQW5ndWxhckZvcm1zTW9kdWxlLCBGZXN0b0FuZ3VsYXJDb21wb25lbnRzTW9kdWxlXSxcbiAgZXhwb3J0czogW0FsZXJ0Q29tcG9uZW50LCBDb25maXJtQ29tcG9uZW50LCBQcm9tcHRDb21wb25lbnQsIEN1c3RvbU1vZGFsQ29tcG9uZW50XSxcbiAgcHJvdmlkZXJzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBGZXN0b0FuZ3VsYXJNb2RhbHNNb2R1bGUge31cbiJdfQ==
|