@leanix/components 0.2.229 → 0.2.230
Sign up to get free protection for your applications and to get access to all the features.
- package/esm2020/index.mjs +119 -0
- package/esm2020/leanix-components.mjs +5 -0
- package/esm2020/lib/core-ui/annotations/required.mjs +33 -0
- package/esm2020/lib/core-ui/components/badge/badge.component.mjs +25 -0
- package/esm2020/lib/core-ui/components/button/button.component.mjs +72 -0
- package/esm2020/lib/core-ui/components/button-group/button-group.component.mjs +28 -0
- package/esm2020/lib/core-ui/components/card/card.component.mjs +19 -0
- package/esm2020/lib/core-ui/components/collapsible/collapsible.component.mjs +53 -0
- package/esm2020/lib/core-ui/components/colored-label/colored-label.component.mjs +34 -0
- package/esm2020/lib/core-ui/components/ellipsis/ellipsis.component.mjs +70 -0
- package/esm2020/lib/core-ui/components/icon-scale/icon-scale.component.mjs +40 -0
- package/esm2020/lib/core-ui/components/spinner/spinner.component.mjs +26 -0
- package/esm2020/lib/core-ui/components/table/table-header/table-header.component.mjs +55 -0
- package/esm2020/lib/core-ui/components/table/table.component.mjs +69 -0
- package/esm2020/lib/core-ui/components/tiny-spinner/tiny-spinner.component.mjs +11 -0
- package/esm2020/lib/core-ui/core-ui.constants.mjs +13 -0
- package/esm2020/lib/core-ui/core-ui.module.mjs +177 -0
- package/esm2020/lib/core-ui/directives/after-view-init.directive.mjs +30 -0
- package/esm2020/lib/core-ui/directives/autoclose-group.service.mjs +38 -0
- package/esm2020/lib/core-ui/directives/autoclose.directive.mjs +40 -0
- package/esm2020/lib/core-ui/directives/autofocus.directive.mjs +27 -0
- package/esm2020/lib/core-ui/directives/html.directive.mjs +29 -0
- package/esm2020/lib/core-ui/functions/core-css.helpers.mjs +35 -0
- package/esm2020/lib/core-ui/pipes/br.pipe.mjs +23 -0
- package/esm2020/lib/core-ui/pipes/contrast-color.pipe.mjs +20 -0
- package/esm2020/lib/core-ui/pipes/custom-date.pipe.mjs +27 -0
- package/esm2020/lib/core-ui/pipes/highlight-range.pipe.mjs +21 -0
- package/esm2020/lib/core-ui/pipes/highlight-term.pipe.mjs +38 -0
- package/esm2020/lib/core-ui/pipes/lx-is-uuid.pipe.mjs +21 -0
- package/esm2020/lib/core-ui/pipes/lx-time-ago.pipe.mjs +25 -0
- package/esm2020/lib/core-ui/pipes/lx-translate.pipe.mjs +45 -0
- package/esm2020/lib/core-ui/pipes/markdown.pipe.mjs +29 -0
- package/esm2020/lib/core-ui/pipes/nbsp.pipe.mjs +14 -0
- package/esm2020/lib/core-ui/pipes/sort.pipe.mjs +52 -0
- package/esm2020/lib/core-ui/pipes/translation-after.pipe.mjs +28 -0
- package/esm2020/lib/core-ui/pipes/translation-before.pipe.mjs +53 -0
- package/esm2020/lib/core-ui/pipes/translation-between.pipe.mjs +67 -0
- package/esm2020/lib/core-ui/pipes/unescape-curly-braces.pipe.mjs +16 -0
- package/esm2020/lib/core-ui/tooltip/to-cdk-position.function.mjs +74 -0
- package/esm2020/lib/core-ui/tooltip/tooltip-position.interface.mjs +7 -0
- package/esm2020/lib/core-ui/tooltip/tooltip.component.mjs +26 -0
- package/esm2020/lib/core-ui/tooltip/tooltip.directive.mjs +102 -0
- package/esm2020/lib/core-ui/tooltip/tooltip.module.mjs +21 -0
- package/esm2020/lib/forms-ui/components/basic-dropdown/basic-dropdown.component.mjs +103 -0
- package/esm2020/lib/forms-ui/components/basic-dropdown-item/basic-dropdown-item.component.mjs +33 -0
- package/esm2020/lib/forms-ui/components/cdk-options-dropdown/cdk-options-dropdown.component.mjs +216 -0
- package/esm2020/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.mjs +136 -0
- package/esm2020/lib/forms-ui/components/currency/currency-input.component.mjs +141 -0
- package/esm2020/lib/forms-ui/components/currency/currency-symbol-map.constant.mjs +105 -0
- package/esm2020/lib/forms-ui/components/currency/currency-symbol.component.mjs +25 -0
- package/esm2020/lib/forms-ui/components/date-input/date-input.component.mjs +270 -0
- package/esm2020/lib/forms-ui/components/drag-and-drop-list/constants.mjs +5 -0
- package/esm2020/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.mjs +49 -0
- package/esm2020/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.mjs +102 -0
- package/esm2020/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.mjs +25 -0
- package/esm2020/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.mjs +133 -0
- package/esm2020/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.mjs +37 -0
- package/esm2020/lib/forms-ui/components/error-message/error-message.component.mjs +24 -0
- package/esm2020/lib/forms-ui/components/form-error/form-error.component.mjs +40 -0
- package/esm2020/lib/forms-ui/components/icon/icon.component.mjs +44 -0
- package/esm2020/lib/forms-ui/components/input/input.component.mjs +44 -0
- package/esm2020/lib/forms-ui/components/keyboard-select.directive.mjs +116 -0
- package/esm2020/lib/forms-ui/components/multi-select/multi-select.component.mjs +251 -0
- package/esm2020/lib/forms-ui/components/option/option.component.mjs +81 -0
- package/esm2020/lib/forms-ui/components/option-group/option-group.component.mjs +29 -0
- package/esm2020/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.mjs +100 -0
- package/esm2020/lib/forms-ui/components/options-dropdown/options-dropdown.component.mjs +163 -0
- package/esm2020/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.mjs +92 -0
- package/esm2020/lib/forms-ui/components/picker/picker-trigger.directive.mjs +36 -0
- package/esm2020/lib/forms-ui/components/picker/picker.component.mjs +201 -0
- package/esm2020/lib/forms-ui/components/picker-option/picker-option.component.mjs +118 -0
- package/esm2020/lib/forms-ui/components/pill-item/pill-item.component.mjs +33 -0
- package/esm2020/lib/forms-ui/components/pill-list/pill-list.component.mjs +59 -0
- package/esm2020/lib/forms-ui/components/responsive-input/responsive-input.component.mjs +97 -0
- package/esm2020/lib/forms-ui/components/single-select/single-select.component.mjs +274 -0
- package/esm2020/lib/forms-ui/components/slider-toggle/slider-toggle.component.mjs +42 -0
- package/esm2020/lib/forms-ui/components/sorting-dropdown/sorting-dropdown.component.mjs +52 -0
- package/esm2020/lib/forms-ui/components/sorting-dropdown-trigger/sorting-dropdown-trigger.component.mjs +21 -0
- package/esm2020/lib/forms-ui/directives/form-error.directive.mjs +109 -0
- package/esm2020/lib/forms-ui/directives/form-submit.directive.mjs +28 -0
- package/esm2020/lib/forms-ui/directives/keyboard-action-source.directive.mjs +53 -0
- package/esm2020/lib/forms-ui/directives/mark-invalid.directive.mjs +38 -0
- package/esm2020/lib/forms-ui/directives/select-dropdown.directive.mjs +31 -0
- package/esm2020/lib/forms-ui/directives/selectable-item.directive.mjs +33 -0
- package/esm2020/lib/forms-ui/directives/selected-option.directive.mjs +26 -0
- package/esm2020/lib/forms-ui/forms-ui.module.mjs +236 -0
- package/esm2020/lib/forms-ui/helpers/key-codes.constants.mjs +11 -0
- package/esm2020/lib/forms-ui/helpers/keyboard-navigation.helpers.mjs +38 -0
- package/esm2020/lib/forms-ui/models/base-select.directive.mjs +148 -0
- package/esm2020/lib/forms-ui/models/dropdown-item.interface.mjs +2 -0
- package/esm2020/lib/forms-ui/models/single-select-padding.interface.mjs +2 -0
- package/esm2020/lib/forms-ui/models/sorting.interface.mjs +7 -0
- package/esm2020/lib/forms-ui/pipes/filter-selection.pipe.mjs +30 -0
- package/esm2020/lib/forms-ui/pipes/filter-term.pipe.mjs +26 -0
- package/esm2020/lib/forms-ui/pipes/format-number.pipe.mjs +65 -0
- package/esm2020/lib/forms-ui/validators/date-in-foreseeable-future.validator.mjs +26 -0
- package/esm2020/lib/modal-ui/components/modal/modal.component.mjs +205 -0
- package/esm2020/lib/modal-ui/components/modal-footer/modal-footer.component.mjs +11 -0
- package/esm2020/lib/modal-ui/components/modal-header/modal-header.component.mjs +23 -0
- package/esm2020/lib/modal-ui/directives/modal-content.directive.mjs +13 -0
- package/esm2020/lib/modal-ui/modal.constants.mjs +3 -0
- package/esm2020/lib/modal-ui/modal.module.mjs +26 -0
- package/esm2020/lib/popover-ui/components/popover/popover.component.mjs +199 -0
- package/esm2020/lib/popover-ui/directives/popover-click.directive.mjs +51 -0
- package/esm2020/lib/popover-ui/directives/popover-content.directive.mjs +16 -0
- package/esm2020/lib/popover-ui/directives/popover-hover.directive.mjs +87 -0
- package/esm2020/lib/popover-ui/popover-ui.module.mjs +22 -0
- package/esm2020/lib/shared/date-helpers.mjs +35 -0
- package/esm2020/lib/shared/misc-helpers.mjs +34 -0
- package/esm2020/lib/shared/observe.mjs +40 -0
- package/esm2020/lib/tab-ui/components/tab/tab.component.mjs +70 -0
- package/esm2020/lib/tab-ui/components/tab-group/tab-group.component.mjs +71 -0
- package/esm2020/lib/tab-ui/tab-ui.module.mjs +22 -0
- package/fesm2015/{leanix-components.js → leanix-components.mjs} +436 -633
- package/fesm2015/leanix-components.mjs.map +1 -0
- package/fesm2020/leanix-components.mjs +6207 -0
- package/fesm2020/leanix-components.mjs.map +1 -0
- package/package.json +23 -9
- package/bundles/leanix-components.umd.js +0 -7364
- package/bundles/leanix-components.umd.js.map +0 -1
- package/esm2015/index.js +0 -119
- package/esm2015/index.js.map +0 -1
- package/esm2015/leanix-components.js +0 -5
- package/esm2015/leanix-components.js.map +0 -1
- package/esm2015/lib/core-ui/annotations/required.js +0 -33
- package/esm2015/lib/core-ui/annotations/required.js.map +0 -1
- package/esm2015/lib/core-ui/components/badge/badge.component.js +0 -29
- package/esm2015/lib/core-ui/components/badge/badge.component.js.map +0 -1
- package/esm2015/lib/core-ui/components/button/button.component.js +0 -78
- package/esm2015/lib/core-ui/components/button/button.component.js.map +0 -1
- package/esm2015/lib/core-ui/components/button-group/button-group.component.js +0 -32
- package/esm2015/lib/core-ui/components/button-group/button-group.component.js.map +0 -1
- package/esm2015/lib/core-ui/components/card/card.component.js +0 -23
- package/esm2015/lib/core-ui/components/card/card.component.js.map +0 -1
- package/esm2015/lib/core-ui/components/collapsible/collapsible.component.js +0 -58
- package/esm2015/lib/core-ui/components/collapsible/collapsible.component.js.map +0 -1
- package/esm2015/lib/core-ui/components/colored-label/colored-label.component.js +0 -39
- package/esm2015/lib/core-ui/components/colored-label/colored-label.component.js.map +0 -1
- package/esm2015/lib/core-ui/components/ellipsis/ellipsis.component.js +0 -74
- package/esm2015/lib/core-ui/components/ellipsis/ellipsis.component.js.map +0 -1
- package/esm2015/lib/core-ui/components/icon-scale/icon-scale.component.js +0 -46
- package/esm2015/lib/core-ui/components/icon-scale/icon-scale.component.js.map +0 -1
- package/esm2015/lib/core-ui/components/spinner/spinner.component.js +0 -30
- package/esm2015/lib/core-ui/components/spinner/spinner.component.js.map +0 -1
- package/esm2015/lib/core-ui/components/table/table-header/table-header.component.js +0 -60
- package/esm2015/lib/core-ui/components/table/table-header/table-header.component.js.map +0 -1
- package/esm2015/lib/core-ui/components/table/table.component.js +0 -70
- package/esm2015/lib/core-ui/components/table/table.component.js.map +0 -1
- package/esm2015/lib/core-ui/components/tiny-spinner/tiny-spinner.component.js +0 -14
- package/esm2015/lib/core-ui/components/tiny-spinner/tiny-spinner.component.js.map +0 -1
- package/esm2015/lib/core-ui/core-ui.constants.js +0 -13
- package/esm2015/lib/core-ui/core-ui.constants.js.map +0 -1
- package/esm2015/lib/core-ui/core-ui.module.js +0 -177
- package/esm2015/lib/core-ui/core-ui.module.js.map +0 -1
- package/esm2015/lib/core-ui/directives/after-view-init.directive.js +0 -30
- package/esm2015/lib/core-ui/directives/after-view-init.directive.js.map +0 -1
- package/esm2015/lib/core-ui/directives/autoclose-group.service.js +0 -38
- package/esm2015/lib/core-ui/directives/autoclose-group.service.js.map +0 -1
- package/esm2015/lib/core-ui/directives/autoclose.directive.js +0 -40
- package/esm2015/lib/core-ui/directives/autoclose.directive.js.map +0 -1
- package/esm2015/lib/core-ui/directives/autofocus.directive.js +0 -27
- package/esm2015/lib/core-ui/directives/autofocus.directive.js.map +0 -1
- package/esm2015/lib/core-ui/directives/html.directive.js +0 -30
- package/esm2015/lib/core-ui/directives/html.directive.js.map +0 -1
- package/esm2015/lib/core-ui/functions/core-css.helpers.js +0 -35
- package/esm2015/lib/core-ui/functions/core-css.helpers.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/br.pipe.js +0 -23
- package/esm2015/lib/core-ui/pipes/br.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/contrast-color.pipe.js +0 -20
- package/esm2015/lib/core-ui/pipes/contrast-color.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/custom-date.pipe.js +0 -27
- package/esm2015/lib/core-ui/pipes/custom-date.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/highlight-range.pipe.js +0 -21
- package/esm2015/lib/core-ui/pipes/highlight-range.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/highlight-term.pipe.js +0 -38
- package/esm2015/lib/core-ui/pipes/highlight-term.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/lx-is-uuid.pipe.js +0 -21
- package/esm2015/lib/core-ui/pipes/lx-is-uuid.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/lx-time-ago.pipe.js +0 -25
- package/esm2015/lib/core-ui/pipes/lx-time-ago.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/lx-translate.pipe.js +0 -46
- package/esm2015/lib/core-ui/pipes/lx-translate.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/markdown.pipe.js +0 -29
- package/esm2015/lib/core-ui/pipes/markdown.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/nbsp.pipe.js +0 -14
- package/esm2015/lib/core-ui/pipes/nbsp.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/sort.pipe.js +0 -52
- package/esm2015/lib/core-ui/pipes/sort.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/translation-after.pipe.js +0 -28
- package/esm2015/lib/core-ui/pipes/translation-after.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/translation-before.pipe.js +0 -53
- package/esm2015/lib/core-ui/pipes/translation-before.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/translation-between.pipe.js +0 -67
- package/esm2015/lib/core-ui/pipes/translation-between.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/pipes/unescape-curly-braces.pipe.js +0 -16
- package/esm2015/lib/core-ui/pipes/unescape-curly-braces.pipe.js.map +0 -1
- package/esm2015/lib/core-ui/tooltip/to-cdk-position.function.js +0 -74
- package/esm2015/lib/core-ui/tooltip/to-cdk-position.function.js.map +0 -1
- package/esm2015/lib/core-ui/tooltip/tooltip-position.interface.js +0 -7
- package/esm2015/lib/core-ui/tooltip/tooltip-position.interface.js.map +0 -1
- package/esm2015/lib/core-ui/tooltip/tooltip.component.js +0 -30
- package/esm2015/lib/core-ui/tooltip/tooltip.component.js.map +0 -1
- package/esm2015/lib/core-ui/tooltip/tooltip.directive.js +0 -107
- package/esm2015/lib/core-ui/tooltip/tooltip.directive.js.map +0 -1
- package/esm2015/lib/core-ui/tooltip/tooltip.module.js +0 -21
- package/esm2015/lib/core-ui/tooltip/tooltip.module.js.map +0 -1
- package/esm2015/lib/forms-ui/components/basic-dropdown/basic-dropdown.component.js +0 -108
- package/esm2015/lib/forms-ui/components/basic-dropdown/basic-dropdown.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/basic-dropdown-item/basic-dropdown-item.component.js +0 -38
- package/esm2015/lib/forms-ui/components/basic-dropdown-item/basic-dropdown-item.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/cdk-options-dropdown/cdk-options-dropdown.component.js +0 -223
- package/esm2015/lib/forms-ui/components/cdk-options-dropdown/cdk-options-dropdown.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.js +0 -140
- package/esm2015/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/currency/currency-input.component.js +0 -147
- package/esm2015/lib/forms-ui/components/currency/currency-input.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/currency/currency-symbol-map.constant.js +0 -105
- package/esm2015/lib/forms-ui/components/currency/currency-symbol-map.constant.js.map +0 -1
- package/esm2015/lib/forms-ui/components/currency/currency-symbol.component.js +0 -28
- package/esm2015/lib/forms-ui/components/currency/currency-symbol.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/date-input/date-input.component.js +0 -276
- package/esm2015/lib/forms-ui/components/date-input/date-input.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/constants.js +0 -5
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/constants.js.map +0 -1
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.js +0 -54
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.js +0 -107
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.js +0 -25
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.js.map +0 -1
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.js +0 -133
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.js +0 -37
- package/esm2015/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/components/error-message/error-message.component.js +0 -29
- package/esm2015/lib/forms-ui/components/error-message/error-message.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/form-error/form-error.component.js +0 -44
- package/esm2015/lib/forms-ui/components/form-error/form-error.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/icon/icon.component.js +0 -49
- package/esm2015/lib/forms-ui/components/icon/icon.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/input/input.component.js +0 -51
- package/esm2015/lib/forms-ui/components/input/input.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/keyboard-select.directive.js +0 -117
- package/esm2015/lib/forms-ui/components/keyboard-select.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/components/multi-select/multi-select.component.js +0 -257
- package/esm2015/lib/forms-ui/components/multi-select/multi-select.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/option/option.component.js +0 -85
- package/esm2015/lib/forms-ui/components/option/option.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/option-group/option-group.component.js +0 -34
- package/esm2015/lib/forms-ui/components/option-group/option-group.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.js +0 -105
- package/esm2015/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/options-dropdown/options-dropdown.component.js +0 -169
- package/esm2015/lib/forms-ui/components/options-dropdown/options-dropdown.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.js +0 -96
- package/esm2015/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/picker/picker-trigger.directive.js +0 -36
- package/esm2015/lib/forms-ui/components/picker/picker-trigger.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/components/picker/picker.component.js +0 -210
- package/esm2015/lib/forms-ui/components/picker/picker.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/picker-option/picker-option.component.js +0 -124
- package/esm2015/lib/forms-ui/components/picker-option/picker-option.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/pill-item/pill-item.component.js +0 -37
- package/esm2015/lib/forms-ui/components/pill-item/pill-item.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/pill-list/pill-list.component.js +0 -64
- package/esm2015/lib/forms-ui/components/pill-list/pill-list.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/responsive-input/responsive-input.component.js +0 -104
- package/esm2015/lib/forms-ui/components/responsive-input/responsive-input.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/single-select/single-select.component.js +0 -279
- package/esm2015/lib/forms-ui/components/single-select/single-select.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/slider-toggle/slider-toggle.component.js +0 -47
- package/esm2015/lib/forms-ui/components/slider-toggle/slider-toggle.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/sorting-dropdown/sorting-dropdown.component.js +0 -56
- package/esm2015/lib/forms-ui/components/sorting-dropdown/sorting-dropdown.component.js.map +0 -1
- package/esm2015/lib/forms-ui/components/sorting-dropdown-trigger/sorting-dropdown-trigger.component.js +0 -25
- package/esm2015/lib/forms-ui/components/sorting-dropdown-trigger/sorting-dropdown-trigger.component.js.map +0 -1
- package/esm2015/lib/forms-ui/directives/form-error.directive.js +0 -111
- package/esm2015/lib/forms-ui/directives/form-error.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/directives/form-submit.directive.js +0 -28
- package/esm2015/lib/forms-ui/directives/form-submit.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/directives/keyboard-action-source.directive.js +0 -53
- package/esm2015/lib/forms-ui/directives/keyboard-action-source.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/directives/mark-invalid.directive.js +0 -38
- package/esm2015/lib/forms-ui/directives/mark-invalid.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/directives/select-dropdown.directive.js +0 -31
- package/esm2015/lib/forms-ui/directives/select-dropdown.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/directives/selectable-item.directive.js +0 -33
- package/esm2015/lib/forms-ui/directives/selectable-item.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/directives/selected-option.directive.js +0 -26
- package/esm2015/lib/forms-ui/directives/selected-option.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/forms-ui.module.js +0 -236
- package/esm2015/lib/forms-ui/forms-ui.module.js.map +0 -1
- package/esm2015/lib/forms-ui/helpers/key-codes.constants.js +0 -11
- package/esm2015/lib/forms-ui/helpers/key-codes.constants.js.map +0 -1
- package/esm2015/lib/forms-ui/helpers/keyboard-navigation.helpers.js +0 -38
- package/esm2015/lib/forms-ui/helpers/keyboard-navigation.helpers.js.map +0 -1
- package/esm2015/lib/forms-ui/models/base-select.directive.js +0 -148
- package/esm2015/lib/forms-ui/models/base-select.directive.js.map +0 -1
- package/esm2015/lib/forms-ui/models/dropdown-item.interface.js +0 -2
- package/esm2015/lib/forms-ui/models/dropdown-item.interface.js.map +0 -1
- package/esm2015/lib/forms-ui/models/single-select-padding.interface.js +0 -2
- package/esm2015/lib/forms-ui/models/single-select-padding.interface.js.map +0 -1
- package/esm2015/lib/forms-ui/models/sorting.interface.js +0 -7
- package/esm2015/lib/forms-ui/models/sorting.interface.js.map +0 -1
- package/esm2015/lib/forms-ui/pipes/filter-selection.pipe.js +0 -30
- package/esm2015/lib/forms-ui/pipes/filter-selection.pipe.js.map +0 -1
- package/esm2015/lib/forms-ui/pipes/filter-term.pipe.js +0 -26
- package/esm2015/lib/forms-ui/pipes/filter-term.pipe.js.map +0 -1
- package/esm2015/lib/forms-ui/pipes/format-number.pipe.js +0 -65
- package/esm2015/lib/forms-ui/pipes/format-number.pipe.js.map +0 -1
- package/esm2015/lib/forms-ui/validators/date-in-foreseeable-future.validator.js +0 -26
- package/esm2015/lib/forms-ui/validators/date-in-foreseeable-future.validator.js.map +0 -1
- package/esm2015/lib/modal-ui/components/modal/modal.component.js +0 -214
- package/esm2015/lib/modal-ui/components/modal/modal.component.js.map +0 -1
- package/esm2015/lib/modal-ui/components/modal-footer/modal-footer.component.js +0 -15
- package/esm2015/lib/modal-ui/components/modal-footer/modal-footer.component.js.map +0 -1
- package/esm2015/lib/modal-ui/components/modal-header/modal-header.component.js +0 -27
- package/esm2015/lib/modal-ui/components/modal-header/modal-header.component.js.map +0 -1
- package/esm2015/lib/modal-ui/directives/modal-content.directive.js +0 -13
- package/esm2015/lib/modal-ui/directives/modal-content.directive.js.map +0 -1
- package/esm2015/lib/modal-ui/modal.constants.js +0 -3
- package/esm2015/lib/modal-ui/modal.constants.js.map +0 -1
- package/esm2015/lib/modal-ui/modal.module.js +0 -26
- package/esm2015/lib/modal-ui/modal.module.js.map +0 -1
- package/esm2015/lib/popover-ui/components/popover/popover.component.js +0 -203
- package/esm2015/lib/popover-ui/components/popover/popover.component.js.map +0 -1
- package/esm2015/lib/popover-ui/directives/popover-click.directive.js +0 -51
- package/esm2015/lib/popover-ui/directives/popover-click.directive.js.map +0 -1
- package/esm2015/lib/popover-ui/directives/popover-content.directive.js +0 -16
- package/esm2015/lib/popover-ui/directives/popover-content.directive.js.map +0 -1
- package/esm2015/lib/popover-ui/directives/popover-hover.directive.js +0 -87
- package/esm2015/lib/popover-ui/directives/popover-hover.directive.js.map +0 -1
- package/esm2015/lib/popover-ui/popover-ui.module.js +0 -22
- package/esm2015/lib/popover-ui/popover-ui.module.js.map +0 -1
- package/esm2015/lib/shared/date-helpers.js +0 -35
- package/esm2015/lib/shared/date-helpers.js.map +0 -1
- package/esm2015/lib/shared/misc-helpers.js +0 -34
- package/esm2015/lib/shared/misc-helpers.js.map +0 -1
- package/esm2015/lib/shared/observe.js +0 -40
- package/esm2015/lib/shared/observe.js.map +0 -1
- package/esm2015/lib/tab-ui/components/tab/tab.component.js +0 -75
- package/esm2015/lib/tab-ui/components/tab/tab.component.js.map +0 -1
- package/esm2015/lib/tab-ui/components/tab-group/tab-group.component.js +0 -78
- package/esm2015/lib/tab-ui/components/tab-group/tab-group.component.js.map +0 -1
- package/esm2015/lib/tab-ui/tab-ui.module.js +0 -22
- package/esm2015/lib/tab-ui/tab-ui.module.js.map +0 -1
- package/fesm2015/leanix-components.js.map +0 -1
@@ -0,0 +1,205 @@
|
|
1
|
+
import { animate, style, transition, trigger } from '@angular/animations';
|
2
|
+
import { CdkPortal } from '@angular/cdk/portal';
|
3
|
+
import { Component, ContentChild, EventEmitter, HostListener, Inject, Input, Optional, Output, TemplateRef, ViewChild } from '@angular/core';
|
4
|
+
import { Subject, timer } from 'rxjs';
|
5
|
+
import { takeUntil } from 'rxjs/operators';
|
6
|
+
import { ModalContentDirective } from '../../directives/modal-content.directive';
|
7
|
+
import { MODAL_CLOSE } from '../../modal.constants';
|
8
|
+
import { ModalFooterComponent } from '../modal-footer/modal-footer.component';
|
9
|
+
import { ModalHeaderComponent } from '../modal-header/modal-header.component';
|
10
|
+
import * as i0 from "@angular/core";
|
11
|
+
import * as i1 from "@angular/cdk/overlay";
|
12
|
+
import * as i2 from "@angular/cdk/a11y";
|
13
|
+
import * as i3 from "@angular/cdk/portal";
|
14
|
+
import * as i4 from "@angular/common";
|
15
|
+
import * as i5 from "@ngx-translate/core";
|
16
|
+
import * as i6 from "rxjs";
|
17
|
+
/**
|
18
|
+
*
|
19
|
+
* ATTENTION - SCROLLABLE DIALOG:
|
20
|
+
* The <lx-modal> component when used as "dialog" is not designed to work with a
|
21
|
+
* scrollable body (via "overflow: auto | scroll") in combination with dropdowns.
|
22
|
+
* The overflow on the body will also clip the dropdowns, which is expected.
|
23
|
+
*
|
24
|
+
* Reasoning:
|
25
|
+
* The contents within the dialog should be just a few elements which fit and
|
26
|
+
* justify the usage of a dialog. If the content is larger than the dialog, and thus
|
27
|
+
* requires scrolling, we should discuss whether to put it into a dialog at all
|
28
|
+
* and rather think about putting the content on a separate route or
|
29
|
+
* using the fullscreen version of the modal.
|
30
|
+
*
|
31
|
+
*/
|
32
|
+
export class ModalComponent {
|
33
|
+
constructor(overlay, renderer, closeModal$, focusTrap) {
|
34
|
+
this.overlay = overlay;
|
35
|
+
this.renderer = renderer;
|
36
|
+
this.closeModal$ = closeModal$;
|
37
|
+
this.focusTrap = focusTrap;
|
38
|
+
this.NAME = 'ModalComponent';
|
39
|
+
this.open = false;
|
40
|
+
this.showCloseButton = true;
|
41
|
+
this.showBackButton = false;
|
42
|
+
/*
|
43
|
+
* If true, then the content area scrolls vertically instead of expanding its height.
|
44
|
+
* This can be a problem if the content has dropdowns or date inputs, but can be good if the content has a huge amount of text.
|
45
|
+
*/
|
46
|
+
this.verticalScroll = false;
|
47
|
+
this.size = 'fullscreen';
|
48
|
+
this.isFocusTrap = false;
|
49
|
+
this.close = new EventEmitter();
|
50
|
+
this.back = new EventEmitter();
|
51
|
+
this.destroyed$ = new Subject();
|
52
|
+
}
|
53
|
+
get content() {
|
54
|
+
return this.explicitContent || this.implicitContent;
|
55
|
+
}
|
56
|
+
onEscape() {
|
57
|
+
this.closeModal();
|
58
|
+
}
|
59
|
+
ngOnInit() {
|
60
|
+
this.closeModal$?.pipe(takeUntil(this.destroyed$)).subscribe(() => this.closeModal());
|
61
|
+
if (this.size === 'fullscreen') {
|
62
|
+
this.overlayRef = this.overlay.create({
|
63
|
+
panelClass: this.size,
|
64
|
+
width: '100%',
|
65
|
+
height: '100vh'
|
66
|
+
});
|
67
|
+
}
|
68
|
+
else if (this.size === 'dialog-large') {
|
69
|
+
const positionStrategy = this.overlay.position().global().top('4vh').centerHorizontally();
|
70
|
+
this.overlayRef = this.overlay.create({
|
71
|
+
panelClass: this.size,
|
72
|
+
positionStrategy,
|
73
|
+
hasBackdrop: true,
|
74
|
+
width: '90%',
|
75
|
+
height: '90vh'
|
76
|
+
});
|
77
|
+
}
|
78
|
+
else {
|
79
|
+
// size 'dialog'
|
80
|
+
const positionStrategy = this.overlay.position().global().top('8vh').centerHorizontally();
|
81
|
+
this.overlayRef = this.overlay.create({
|
82
|
+
panelClass: this.size,
|
83
|
+
minWidth: '600px',
|
84
|
+
positionStrategy,
|
85
|
+
hasBackdrop: true,
|
86
|
+
scrollStrategy: this.overlay.scrollStrategies.block()
|
87
|
+
});
|
88
|
+
}
|
89
|
+
if (this.size !== 'fullscreen') {
|
90
|
+
this.overlayRef
|
91
|
+
.backdropClick()
|
92
|
+
.pipe(takeUntil(this.destroyed$))
|
93
|
+
.subscribe(() => this.closeModal());
|
94
|
+
}
|
95
|
+
}
|
96
|
+
ngOnChanges() {
|
97
|
+
if (this.open && this.overlayRef && !this.overlayRef.hasAttached()) {
|
98
|
+
this.openModal();
|
99
|
+
}
|
100
|
+
if (!this.open && this.overlayRef && this.overlayRef.hasAttached()) {
|
101
|
+
this.closeModal();
|
102
|
+
}
|
103
|
+
if (this.open && this.overlayRef && this.overlayRef.hasAttached() && this.isFocusTrap) {
|
104
|
+
this.trapFocusInModal(this.overlayRef.hostElement);
|
105
|
+
}
|
106
|
+
}
|
107
|
+
ngAfterViewInit() {
|
108
|
+
if (this.open) {
|
109
|
+
timer()
|
110
|
+
.pipe(takeUntil(this.destroyed$))
|
111
|
+
.subscribe(() => this.openModal());
|
112
|
+
}
|
113
|
+
}
|
114
|
+
openModal() {
|
115
|
+
this.oldOverflow = document.documentElement.style.overflowY;
|
116
|
+
if (this.size === 'fullscreen') {
|
117
|
+
this.renderer.setStyle(document.documentElement, 'overflowY', 'hidden');
|
118
|
+
}
|
119
|
+
this.overlayRef.attach(this.cdkPortal);
|
120
|
+
this.trapFocusInModal(this.overlayRef.hostElement);
|
121
|
+
}
|
122
|
+
emitBack() {
|
123
|
+
this.back.emit();
|
124
|
+
}
|
125
|
+
ngOnDestroy() {
|
126
|
+
this.destroyed$.next();
|
127
|
+
if (this.size === 'fullscreen') {
|
128
|
+
this.renderer.setStyle(document.documentElement, 'overflowY', this.oldOverflow);
|
129
|
+
}
|
130
|
+
if (this.overlayRef) {
|
131
|
+
this.overlayRef.dispose();
|
132
|
+
}
|
133
|
+
}
|
134
|
+
async closeModal() {
|
135
|
+
if (!this.canModalBeClosed || (await this.canModalBeClosed())) {
|
136
|
+
this.open = false;
|
137
|
+
this.overlayRef.detach();
|
138
|
+
if (this.size === 'fullscreen') {
|
139
|
+
this.renderer.setStyle(document.documentElement, 'overflowY', this.oldOverflow);
|
140
|
+
}
|
141
|
+
this.close.emit();
|
142
|
+
}
|
143
|
+
}
|
144
|
+
trapFocusInModal(hostElement) {
|
145
|
+
this.focusTrap.create(hostElement);
|
146
|
+
}
|
147
|
+
}
|
148
|
+
ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ModalComponent, deps: [{ token: i1.Overlay }, { token: i0.Renderer2 }, { token: MODAL_CLOSE, optional: true }, { token: i2.ConfigurableFocusTrapFactory }], target: i0.ɵɵFactoryTarget.Component });
|
149
|
+
ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: ModalComponent, selector: "lx-modal", inputs: { open: "open", showCloseButton: "showCloseButton", showBackButton: "showBackButton", verticalScroll: "verticalScroll", size: "size", isFocusTrap: "isFocusTrap", canModalBeClosed: "canModalBeClosed" }, outputs: { close: "close", back: "back" }, host: { listeners: { "document:keydown.escape": "onEscape()" } }, queries: [{ propertyName: "header", first: true, predicate: ModalHeaderComponent, descendants: true }, { propertyName: "footer", first: true, predicate: ModalFooterComponent, descendants: true }, { propertyName: "explicitContent", first: true, predicate: ModalContentDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "cdkPortal", first: true, predicate: CdkPortal, descendants: true, static: true }, { propertyName: "implicitContent", first: true, predicate: ["implicitContent"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<ng-template cdkPortal>\n <div\n *ngIf=\"open\"\n role=\"dialog\"\n class=\"lxmodal\"\n [class.lxmodal--fullscreen]=\"size === 'fullscreen'\"\n [class.lxmodal--dialog]=\"size === 'dialog'\"\n [class.lxmodal--dialog-large]=\"size === 'dialog-large'\"\n [class.lxmodal--withFooter]=\"!!footer\"\n [class.lxmodal--verticalScroll]=\"verticalScroll\"\n @modal\n >\n <div\n *ngIf=\"size === 'fullscreen' && showBackButton\"\n (click)=\"emitBack()\"\n (keyup.enter)=\"emitBack()\"\n tabindex=\"0\"\n role=\"button\"\n class=\"fal fa-long-arrow-left\"\n ></div>\n <button\n *ngIf=\"showCloseButton\"\n (click)=\"closeModal()\"\n [attr.aria-label]=\"NAME + '.close' | translate\"\n class=\"fal fa-times closeButton\"\n ></button>\n <ng-content *ngIf=\"header\" select=\"lx-modal-header\"></ng-content>\n <div class=\"modalContentContainer\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <ng-content *ngIf=\"footer\" select=\"lx-modal-footer\"></ng-content>\n </div>\n</ng-template>\n<ng-template #implicitContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: ["@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.lxmodal{background:#fff;width:100%}.lxmodal--withFooter.lxmodal--fullscreen .modalContentContainer{bottom:70px;overflow:hidden}.lxmodal--verticalScroll .modalContentContainer{overflow-y:auto}.lxmodal--fullscreen{height:100%;display:flex;flex-direction:column}.lxmodal--fullscreen .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#b2bccc;width:48px;height:48px;font-size:24px;line-height:48px;right:36px;top:16px;z-index:1}.lxmodal--fullscreen .closeButton:before{cursor:pointer}.lxmodal--fullscreen .closeButton:hover,.lxmodal--fullscreen .closeButton:focus{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .closeButton:focus{outline:0}.lxmodal--fullscreen .fa-long-arrow-left{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#b2bccc;width:48px;height:48px;font-size:24px;line-height:48px;left:36px;top:16px}.lxmodal--fullscreen .fa-long-arrow-left:before{cursor:pointer}.lxmodal--fullscreen .fa-long-arrow-left:hover,.lxmodal--fullscreen .fa-long-arrow-left:focus{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .fa-long-arrow-left:focus{outline:0}.lxmodal--dialog,.lxmodal--dialog-large{display:block;position:relative;border-radius:6px;box-shadow:0 8px 20px #0000003d}.lxmodal--dialog .modalContentContainer,.lxmodal--dialog-large .modalContentContainer{padding:16px;position:relative}.lxmodal--dialog .closeButton,.lxmodal--dialog-large .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#8594ad;height:32px;width:32px;font-size:16px;z-index:999;right:10px;top:10px}.lxmodal--dialog .closeButton:before,.lxmodal--dialog-large .closeButton:before{cursor:pointer}.lxmodal--dialog .closeButton:hover,.lxmodal--dialog .closeButton:focus,.lxmodal--dialog-large .closeButton:hover,.lxmodal--dialog-large .closeButton:focus{color:#526179;background-color:#eaedf1}.lxmodal--dialog .closeButton:focus,.lxmodal--dialog-large .closeButton:focus{outline:0}.lxmodal--dialog-large .modalContentContainer{height:calc(100% - 112px)}.modalContentContainer{flex:1}\n"], directives: [{ type: i3.CdkPortal, selector: "[cdkPortal]", exportAs: ["cdkPortal"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "translate": i5.TranslatePipe }, animations: [
|
150
|
+
trigger('modal', [
|
151
|
+
transition(':enter', [style({ opacity: 0 }), animate('0.15s', style({ opacity: 1 }))]),
|
152
|
+
transition(':leave', animate('0.15s', style({ opacity: 0 })))
|
153
|
+
])
|
154
|
+
] });
|
155
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ModalComponent, decorators: [{
|
156
|
+
type: Component,
|
157
|
+
args: [{ selector: 'lx-modal', animations: [
|
158
|
+
trigger('modal', [
|
159
|
+
transition(':enter', [style({ opacity: 0 }), animate('0.15s', style({ opacity: 1 }))]),
|
160
|
+
transition(':leave', animate('0.15s', style({ opacity: 0 })))
|
161
|
+
])
|
162
|
+
], template: "<ng-template cdkPortal>\n <div\n *ngIf=\"open\"\n role=\"dialog\"\n class=\"lxmodal\"\n [class.lxmodal--fullscreen]=\"size === 'fullscreen'\"\n [class.lxmodal--dialog]=\"size === 'dialog'\"\n [class.lxmodal--dialog-large]=\"size === 'dialog-large'\"\n [class.lxmodal--withFooter]=\"!!footer\"\n [class.lxmodal--verticalScroll]=\"verticalScroll\"\n @modal\n >\n <div\n *ngIf=\"size === 'fullscreen' && showBackButton\"\n (click)=\"emitBack()\"\n (keyup.enter)=\"emitBack()\"\n tabindex=\"0\"\n role=\"button\"\n class=\"fal fa-long-arrow-left\"\n ></div>\n <button\n *ngIf=\"showCloseButton\"\n (click)=\"closeModal()\"\n [attr.aria-label]=\"NAME + '.close' | translate\"\n class=\"fal fa-times closeButton\"\n ></button>\n <ng-content *ngIf=\"header\" select=\"lx-modal-header\"></ng-content>\n <div class=\"modalContentContainer\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </div>\n <ng-content *ngIf=\"footer\" select=\"lx-modal-footer\"></ng-content>\n </div>\n</ng-template>\n<ng-template #implicitContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: ["@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.lxmodal{background:#fff;width:100%}.lxmodal--withFooter.lxmodal--fullscreen .modalContentContainer{bottom:70px;overflow:hidden}.lxmodal--verticalScroll .modalContentContainer{overflow-y:auto}.lxmodal--fullscreen{height:100%;display:flex;flex-direction:column}.lxmodal--fullscreen .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#b2bccc;width:48px;height:48px;font-size:24px;line-height:48px;right:36px;top:16px;z-index:1}.lxmodal--fullscreen .closeButton:before{cursor:pointer}.lxmodal--fullscreen .closeButton:hover,.lxmodal--fullscreen .closeButton:focus{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .closeButton:focus{outline:0}.lxmodal--fullscreen .fa-long-arrow-left{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#b2bccc;width:48px;height:48px;font-size:24px;line-height:48px;left:36px;top:16px}.lxmodal--fullscreen .fa-long-arrow-left:before{cursor:pointer}.lxmodal--fullscreen .fa-long-arrow-left:hover,.lxmodal--fullscreen .fa-long-arrow-left:focus{color:#526179;background-color:#eaedf1}.lxmodal--fullscreen .fa-long-arrow-left:focus{outline:0}.lxmodal--dialog,.lxmodal--dialog-large{display:block;position:relative;border-radius:6px;box-shadow:0 8px 20px #0000003d}.lxmodal--dialog .modalContentContainer,.lxmodal--dialog-large .modalContentContainer{padding:16px;position:relative}.lxmodal--dialog .closeButton,.lxmodal--dialog-large .closeButton{border:0;background:transparent;position:absolute;text-align:center;transition:all .18s;transition-delay:.6s;transition-timing-function:ease;border-radius:50%;color:#8594ad;height:32px;width:32px;font-size:16px;z-index:999;right:10px;top:10px}.lxmodal--dialog .closeButton:before,.lxmodal--dialog-large .closeButton:before{cursor:pointer}.lxmodal--dialog .closeButton:hover,.lxmodal--dialog .closeButton:focus,.lxmodal--dialog-large .closeButton:hover,.lxmodal--dialog-large .closeButton:focus{color:#526179;background-color:#eaedf1}.lxmodal--dialog .closeButton:focus,.lxmodal--dialog-large .closeButton:focus{outline:0}.lxmodal--dialog-large .modalContentContainer{height:calc(100% - 112px)}.modalContentContainer{flex:1}\n"] }]
|
163
|
+
}], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.Renderer2 }, { type: i6.Observable, decorators: [{
|
164
|
+
type: Optional
|
165
|
+
}, {
|
166
|
+
type: Inject,
|
167
|
+
args: [MODAL_CLOSE]
|
168
|
+
}] }, { type: i2.ConfigurableFocusTrapFactory }]; }, propDecorators: { open: [{
|
169
|
+
type: Input
|
170
|
+
}], showCloseButton: [{
|
171
|
+
type: Input
|
172
|
+
}], showBackButton: [{
|
173
|
+
type: Input
|
174
|
+
}], verticalScroll: [{
|
175
|
+
type: Input
|
176
|
+
}], size: [{
|
177
|
+
type: Input
|
178
|
+
}], isFocusTrap: [{
|
179
|
+
type: Input
|
180
|
+
}], canModalBeClosed: [{
|
181
|
+
type: Input
|
182
|
+
}], close: [{
|
183
|
+
type: Output
|
184
|
+
}], back: [{
|
185
|
+
type: Output
|
186
|
+
}], header: [{
|
187
|
+
type: ContentChild,
|
188
|
+
args: [ModalHeaderComponent]
|
189
|
+
}], footer: [{
|
190
|
+
type: ContentChild,
|
191
|
+
args: [ModalFooterComponent]
|
192
|
+
}], cdkPortal: [{
|
193
|
+
type: ViewChild,
|
194
|
+
args: [CdkPortal, { static: true }]
|
195
|
+
}], implicitContent: [{
|
196
|
+
type: ViewChild,
|
197
|
+
args: ['implicitContent', { static: true }]
|
198
|
+
}], explicitContent: [{
|
199
|
+
type: ContentChild,
|
200
|
+
args: [ModalContentDirective, { read: TemplateRef, static: true }]
|
201
|
+
}], onEscape: [{
|
202
|
+
type: HostListener,
|
203
|
+
args: ['document:keydown.escape']
|
204
|
+
}] } });
|
205
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvbW9kYWwtdWkvY29tcG9uZW50cy9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC11aS9jb21wb25lbnRzL21vZGFsL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUcxRSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUVMLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUlMLFFBQVEsRUFDUixNQUFNLEVBRU4sV0FBVyxFQUNYLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7Ozs7OztBQUU5RTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQVlILE1BQU0sT0FBTyxjQUFjO0lBb0N6QixZQUNVLE9BQWdCLEVBQ2hCLFFBQW1CLEVBQ2MsV0FBZ0MsRUFDakUsU0FBdUM7UUFIdkMsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ2MsZ0JBQVcsR0FBWCxXQUFXLENBQXFCO1FBQ2pFLGNBQVMsR0FBVCxTQUFTLENBQThCO1FBdkN4QyxTQUFJLEdBQUcsZ0JBQWdCLENBQUM7UUFDeEIsU0FBSSxHQUFZLEtBQUssQ0FBQztRQUN0QixvQkFBZSxHQUFHLElBQUksQ0FBQztRQUN2QixtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUNoQzs7O1dBR0c7UUFDTSxtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixTQUFJLEdBQTZDLFlBQVksQ0FBQztRQUM5RCxnQkFBVyxHQUFZLEtBQUssQ0FBQztRQUU1QixVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNqQyxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQVFqQyxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQW1CdkMsQ0FBQztJQWJKLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQ3RELENBQUM7SUFFd0MsUUFBUTtRQUMvQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQVNELFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBRXRGLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxZQUFZLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztnQkFDcEMsVUFBVSxFQUFFLElBQUksQ0FBQyxJQUFJO2dCQUNyQixLQUFLLEVBQUUsTUFBTTtnQkFDYixNQUFNLEVBQUUsT0FBTzthQUNoQixDQUFDLENBQUM7U0FDSjthQUFNLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxjQUFjLEVBQUU7WUFDdkMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQzFGLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7Z0JBQ3BDLFVBQVUsRUFBRSxJQUFJLENBQUMsSUFBSTtnQkFDckIsZ0JBQWdCO2dCQUNoQixXQUFXLEVBQUUsSUFBSTtnQkFDakIsS0FBSyxFQUFFLEtBQUs7Z0JBQ1osTUFBTSxFQUFFLE1BQU07YUFDZixDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsZ0JBQWdCO1lBQ2hCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUMxRixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2dCQUNwQyxVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ3JCLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixnQkFBZ0I7Z0JBQ2hCLFdBQVcsRUFBRSxJQUFJO2dCQUNqQixjQUFjLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUU7YUFDdEQsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssWUFBWSxFQUFFO1lBQzlCLElBQUksQ0FBQyxVQUFVO2lCQUNaLGFBQWEsRUFBRTtpQkFDZixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztpQkFDaEMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDbEUsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1NBQ2xCO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ2xFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUNuQjtRQUNELElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNyRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUNwRDtJQUNILENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2IsS0FBSyxFQUFFO2lCQUNKLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2lCQUNoQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7U0FDdEM7SUFDSCxDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO1FBQzVELElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxZQUFZLEVBQUU7WUFDOUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLGVBQWUsRUFBRSxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7U0FDekU7UUFFRCxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUV2QixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssWUFBWSxFQUFFO1lBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUNqRjtRQUVELElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVO1FBQ2QsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsRUFBRTtZQUM3RCxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztZQUNsQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBRXpCLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxZQUFZLEVBQUU7Z0JBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxlQUFlLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUNqRjtZQUVELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBRU8sZ0JBQWdCLENBQUMsV0FBd0I7UUFDL0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckMsQ0FBQzs7MkdBOUlVLGNBQWMsa0VBdUNILFdBQVc7K0ZBdkN0QixjQUFjLG1aQWdCWCxvQkFBb0IseUVBQ3BCLG9CQUFvQixrRkFTcEIscUJBQXFCLDJCQUFVLFdBQVcsc0ZBUjdDLFNBQVMsc01DeEV0QixzcUNBb0NBLHd0RkRXYztRQUNWLE9BQU8sQ0FBQyxPQUFPLEVBQUU7WUFDZixVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEYsVUFBVSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDOUQsQ0FBQztLQUNIOzJGQUVVLGNBQWM7a0JBWDFCLFNBQVM7K0JBQ0UsVUFBVSxjQUdSO3dCQUNWLE9BQU8sQ0FBQyxPQUFPLEVBQUU7NEJBQ2YsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDOzRCQUN0RixVQUFVLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzt5QkFDOUQsQ0FBQztxQkFDSDs7MEJBeUNFLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsV0FBVzt1RkFyQ3hCLElBQUk7c0JBQVosS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBS0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0ksS0FBSztzQkFBZCxNQUFNO2dCQUNHLElBQUk7c0JBQWIsTUFBTTtnQkFFNkIsTUFBTTtzQkFBekMsWUFBWTt1QkFBQyxvQkFBb0I7Z0JBQ0UsTUFBTTtzQkFBekMsWUFBWTt1QkFBQyxvQkFBb0I7Z0JBQ00sU0FBUztzQkFBaEQsU0FBUzt1QkFBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQU1VLGVBQWU7c0JBQTlELFNBQVM7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUU0QixlQUFlO3NCQUF4RixZQUFZO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQU0vQixRQUFRO3NCQUFoRCxZQUFZO3VCQUFDLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGFuaW1hdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBDb25maWd1cmFibGVGb2N1c1RyYXBGYWN0b3J5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IENka1BvcnRhbCwgUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE9wdGlvbmFsLFxuICBPdXRwdXQsXG4gIFJlbmRlcmVyMixcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBNb2RhbENvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL21vZGFsLWNvbnRlbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IE1PREFMX0NMT1NFIH0gZnJvbSAnLi4vLi4vbW9kYWwuY29uc3RhbnRzJztcbmltcG9ydCB7IE1vZGFsRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vbW9kYWwtZm9vdGVyL21vZGFsLWZvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTW9kYWxIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi9tb2RhbC1oZWFkZXIvbW9kYWwtaGVhZGVyLmNvbXBvbmVudCc7XG5cbi8qKlxuICpcbiAqIEFUVEVOVElPTiAtIFNDUk9MTEFCTEUgRElBTE9HOlxuICogVGhlIDxseC1tb2RhbD4gY29tcG9uZW50IHdoZW4gdXNlZCBhcyBcImRpYWxvZ1wiIGlzIG5vdCBkZXNpZ25lZCB0byB3b3JrIHdpdGggYVxuICogc2Nyb2xsYWJsZSBib2R5ICh2aWEgXCJvdmVyZmxvdzogYXV0byB8IHNjcm9sbFwiKSBpbiBjb21iaW5hdGlvbiB3aXRoIGRyb3Bkb3ducy5cbiAqIFRoZSBvdmVyZmxvdyBvbiB0aGUgYm9keSB3aWxsIGFsc28gY2xpcCB0aGUgZHJvcGRvd25zLCB3aGljaCBpcyBleHBlY3RlZC5cbiAqXG4gKiBSZWFzb25pbmc6XG4gKiBUaGUgY29udGVudHMgd2l0aGluIHRoZSBkaWFsb2cgc2hvdWxkIGJlIGp1c3QgYSBmZXcgZWxlbWVudHMgd2hpY2ggZml0IGFuZFxuICoganVzdGlmeSB0aGUgdXNhZ2Ugb2YgYSBkaWFsb2cuIElmIHRoZSBjb250ZW50IGlzIGxhcmdlciB0aGFuIHRoZSBkaWFsb2csIGFuZCB0aHVzXG4gKiByZXF1aXJlcyBzY3JvbGxpbmcsIHdlIHNob3VsZCBkaXNjdXNzIHdoZXRoZXIgdG8gcHV0IGl0IGludG8gYSBkaWFsb2cgYXQgYWxsXG4gKiBhbmQgcmF0aGVyIHRoaW5rIGFib3V0IHB1dHRpbmcgdGhlIGNvbnRlbnQgb24gYSBzZXBhcmF0ZSByb3V0ZSBvclxuICogdXNpbmcgdGhlIGZ1bGxzY3JlZW4gdmVyc2lvbiBvZiB0aGUgbW9kYWwuXG4gKlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdseC1tb2RhbCcsXG4gIHRlbXBsYXRlVXJsOiAnbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnbW9kYWwuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ21vZGFsJywgW1xuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW3N0eWxlKHsgb3BhY2l0eTogMCB9KSwgYW5pbWF0ZSgnMC4xNXMnLCBzdHlsZSh7IG9wYWNpdHk6IDEgfSkpXSksXG4gICAgICB0cmFuc2l0aW9uKCc6bGVhdmUnLCBhbmltYXRlKCcwLjE1cycsIHN0eWxlKHsgb3BhY2l0eTogMCB9KSkpXG4gICAgXSlcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBNb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuICByZWFkb25seSBOQU1FID0gJ01vZGFsQ29tcG9uZW50JztcbiAgQElucHV0KCkgb3BlbjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBzaG93Q2xvc2VCdXR0b24gPSB0cnVlO1xuICBASW5wdXQoKSBzaG93QmFja0J1dHRvbiA9IGZhbHNlO1xuICAvKlxuICAgKiBJZiB0cnVlLCB0aGVuIHRoZSBjb250ZW50IGFyZWEgc2Nyb2xscyB2ZXJ0aWNhbGx5IGluc3RlYWQgb2YgZXhwYW5kaW5nIGl0cyBoZWlnaHQuXG4gICAqIFRoaXMgY2FuIGJlIGEgcHJvYmxlbSBpZiB0aGUgY29udGVudCBoYXMgZHJvcGRvd25zIG9yIGRhdGUgaW5wdXRzLCBidXQgY2FuIGJlIGdvb2QgaWYgdGhlIGNvbnRlbnQgaGFzIGEgaHVnZSBhbW91bnQgb2YgdGV4dC5cbiAgICovXG4gIEBJbnB1dCgpIHZlcnRpY2FsU2Nyb2xsID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNpemU6ICdmdWxsc2NyZWVuJyB8ICdkaWFsb2ctbGFyZ2UnIHwgJ2RpYWxvZycgPSAnZnVsbHNjcmVlbic7XG4gIEBJbnB1dCgpIGlzRm9jdXNUcmFwOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGNhbk1vZGFsQmVDbG9zZWQ/OiAoKSA9PiBQcm9taXNlPGJvb2xlYW4+O1xuICBAT3V0cHV0KCkgY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBiYWNrID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBDb250ZW50Q2hpbGQoTW9kYWxIZWFkZXJDb21wb25lbnQpIGhlYWRlcj86IE1vZGFsSGVhZGVyQ29tcG9uZW50O1xuICBAQ29udGVudENoaWxkKE1vZGFsRm9vdGVyQ29tcG9uZW50KSBmb290ZXI/OiBNb2RhbEZvb3RlckNvbXBvbmVudDtcbiAgQFZpZXdDaGlsZChDZGtQb3J0YWwsIHsgc3RhdGljOiB0cnVlIH0pIGNka1BvcnRhbCE6IFBvcnRhbDxDZGtQb3J0YWw+O1xuICBwcml2YXRlIG92ZXJsYXlSZWYhOiBPdmVybGF5UmVmO1xuICBwcml2YXRlIG9sZE92ZXJmbG93Pzogc3RyaW5nO1xuXG4gIHJlYWRvbmx5IGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIEBWaWV3Q2hpbGQoJ2ltcGxpY2l0Q29udGVudCcsIHsgc3RhdGljOiB0cnVlIH0pIGltcGxpY2l0Q29udGVudCE6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZChNb2RhbENvbnRlbnREaXJlY3RpdmUsIHsgcmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZSB9KSBleHBsaWNpdENvbnRlbnQ/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIGdldCBjb250ZW50KCkge1xuICAgIHJldHVybiB0aGlzLmV4cGxpY2l0Q29udGVudCB8fCB0aGlzLmltcGxpY2l0Q29udGVudDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZXNjYXBlJykgb25Fc2NhcGUoKSB7XG4gICAgdGhpcy5jbG9zZU1vZGFsKCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTU9EQUxfQ0xPU0UpIHByaXZhdGUgY2xvc2VNb2RhbCQ6IE9ic2VydmFibGU8Ym9vbGVhbj4sXG4gICAgcHJpdmF0ZSBmb2N1c1RyYXA6IENvbmZpZ3VyYWJsZUZvY3VzVHJhcEZhY3RvcnlcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY2xvc2VNb2RhbCQ/LnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlTW9kYWwoKSk7XG5cbiAgICBpZiAodGhpcy5zaXplID09PSAnZnVsbHNjcmVlbicpIHtcbiAgICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoe1xuICAgICAgICBwYW5lbENsYXNzOiB0aGlzLnNpemUsXG4gICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgIGhlaWdodDogJzEwMHZoJ1xuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnNpemUgPT09ICdkaWFsb2ctbGFyZ2UnKSB7XG4gICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5LnBvc2l0aW9uKCkuZ2xvYmFsKCkudG9wKCc0dmgnKS5jZW50ZXJIb3Jpem9udGFsbHkoKTtcbiAgICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoe1xuICAgICAgICBwYW5lbENsYXNzOiB0aGlzLnNpemUsXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgICAgIGhhc0JhY2tkcm9wOiB0cnVlLFxuICAgICAgICB3aWR0aDogJzkwJScsXG4gICAgICAgIGhlaWdodDogJzkwdmgnXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gc2l6ZSAnZGlhbG9nJ1xuICAgICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IHRoaXMub3ZlcmxheS5wb3NpdGlvbigpLmdsb2JhbCgpLnRvcCgnOHZoJykuY2VudGVySG9yaXpvbnRhbGx5KCk7XG4gICAgICB0aGlzLm92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXkuY3JlYXRlKHtcbiAgICAgICAgcGFuZWxDbGFzczogdGhpcy5zaXplLFxuICAgICAgICBtaW5XaWR0aDogJzYwMHB4JywgLy8gTkI6IFNvbWUgbW9kYWwgaW1wbGVtZW50YXRpb25zIHJlbHkgb24gdGhpcyBtaW5XaWR0aCBiZWluZyA2MDBweFxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLmJsb2NrKClcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnNpemUgIT09ICdmdWxsc2NyZWVuJykge1xuICAgICAgdGhpcy5vdmVybGF5UmVmXG4gICAgICAgIC5iYWNrZHJvcENsaWNrKClcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZU1vZGFsKCkpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIGlmICh0aGlzLm9wZW4gJiYgdGhpcy5vdmVybGF5UmVmICYmICF0aGlzLm92ZXJsYXlSZWYuaGFzQXR0YWNoZWQoKSkge1xuICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLm9wZW4gJiYgdGhpcy5vdmVybGF5UmVmICYmIHRoaXMub3ZlcmxheVJlZi5oYXNBdHRhY2hlZCgpKSB7XG4gICAgICB0aGlzLmNsb3NlTW9kYWwoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMub3BlbiAmJiB0aGlzLm92ZXJsYXlSZWYgJiYgdGhpcy5vdmVybGF5UmVmLmhhc0F0dGFjaGVkKCkgJiYgdGhpcy5pc0ZvY3VzVHJhcCkge1xuICAgICAgdGhpcy50cmFwRm9jdXNJbk1vZGFsKHRoaXMub3ZlcmxheVJlZi5ob3N0RWxlbWVudCk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmICh0aGlzLm9wZW4pIHtcbiAgICAgIHRpbWVyKClcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vcGVuTW9kYWwoKSk7XG4gICAgfVxuICB9XG5cbiAgb3Blbk1vZGFsKCkge1xuICAgIHRoaXMub2xkT3ZlcmZsb3cgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc3R5bGUub3ZlcmZsb3dZO1xuICAgIGlmICh0aGlzLnNpemUgPT09ICdmdWxsc2NyZWVuJykge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsICdvdmVyZmxvd1knLCAnaGlkZGVuJyk7XG4gICAgfVxuXG4gICAgdGhpcy5vdmVybGF5UmVmLmF0dGFjaCh0aGlzLmNka1BvcnRhbCk7XG4gICAgdGhpcy50cmFwRm9jdXNJbk1vZGFsKHRoaXMub3ZlcmxheVJlZi5ob3N0RWxlbWVudCk7XG4gIH1cblxuICBlbWl0QmFjaygpIHtcbiAgICB0aGlzLmJhY2suZW1pdCgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95ZWQkLm5leHQoKTtcblxuICAgIGlmICh0aGlzLnNpemUgPT09ICdmdWxsc2NyZWVuJykge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsICdvdmVyZmxvd1knLCB0aGlzLm9sZE92ZXJmbG93KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5vdmVybGF5UmVmKSB7XG4gICAgICB0aGlzLm92ZXJsYXlSZWYuZGlzcG9zZSgpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGNsb3NlTW9kYWwoKSB7XG4gICAgaWYgKCF0aGlzLmNhbk1vZGFsQmVDbG9zZWQgfHwgKGF3YWl0IHRoaXMuY2FuTW9kYWxCZUNsb3NlZCgpKSkge1xuICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgICB0aGlzLm92ZXJsYXlSZWYuZGV0YWNoKCk7XG5cbiAgICAgIGlmICh0aGlzLnNpemUgPT09ICdmdWxsc2NyZWVuJykge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCwgJ292ZXJmbG93WScsIHRoaXMub2xkT3ZlcmZsb3cpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmNsb3NlLmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHRyYXBGb2N1c0luTW9kYWwoaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XG4gICAgdGhpcy5mb2N1c1RyYXAuY3JlYXRlKGhvc3RFbGVtZW50KTtcbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlIGNka1BvcnRhbD5cbiAgPGRpdlxuICAgICpuZ0lmPVwib3BlblwiXG4gICAgcm9sZT1cImRpYWxvZ1wiXG4gICAgY2xhc3M9XCJseG1vZGFsXCJcbiAgICBbY2xhc3MubHhtb2RhbC0tZnVsbHNjcmVlbl09XCJzaXplID09PSAnZnVsbHNjcmVlbidcIlxuICAgIFtjbGFzcy5seG1vZGFsLS1kaWFsb2ddPVwic2l6ZSA9PT0gJ2RpYWxvZydcIlxuICAgIFtjbGFzcy5seG1vZGFsLS1kaWFsb2ctbGFyZ2VdPVwic2l6ZSA9PT0gJ2RpYWxvZy1sYXJnZSdcIlxuICAgIFtjbGFzcy5seG1vZGFsLS13aXRoRm9vdGVyXT1cIiEhZm9vdGVyXCJcbiAgICBbY2xhc3MubHhtb2RhbC0tdmVydGljYWxTY3JvbGxdPVwidmVydGljYWxTY3JvbGxcIlxuICAgIEBtb2RhbFxuICA+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJzaXplID09PSAnZnVsbHNjcmVlbicgJiYgc2hvd0JhY2tCdXR0b25cIlxuICAgICAgKGNsaWNrKT1cImVtaXRCYWNrKClcIlxuICAgICAgKGtleXVwLmVudGVyKT1cImVtaXRCYWNrKClcIlxuICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgIHJvbGU9XCJidXR0b25cIlxuICAgICAgY2xhc3M9XCJmYWwgZmEtbG9uZy1hcnJvdy1sZWZ0XCJcbiAgICA+PC9kaXY+XG4gICAgPGJ1dHRvblxuICAgICAgKm5nSWY9XCJzaG93Q2xvc2VCdXR0b25cIlxuICAgICAgKGNsaWNrKT1cImNsb3NlTW9kYWwoKVwiXG4gICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIk5BTUUgKyAnLmNsb3NlJyB8IHRyYW5zbGF0ZVwiXG4gICAgICBjbGFzcz1cImZhbCBmYS10aW1lcyBjbG9zZUJ1dHRvblwiXG4gICAgPjwvYnV0dG9uPlxuICAgIDxuZy1jb250ZW50ICpuZ0lmPVwiaGVhZGVyXCIgc2VsZWN0PVwibHgtbW9kYWwtaGVhZGVyXCI+PC9uZy1jb250ZW50PlxuICAgIDxkaXYgY2xhc3M9XCJtb2RhbENvbnRlbnRDb250YWluZXJcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRlbnQgKm5nSWY9XCJmb290ZXJcIiBzZWxlY3Q9XCJseC1tb2RhbC1mb290ZXJcIj48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjaW1wbGljaXRDb250ZW50PlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { Component } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export class ModalFooterComponent {
|
4
|
+
}
|
5
|
+
ModalFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ModalFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
6
|
+
ModalFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: ModalFooterComponent, selector: "lx-modal-footer", ngImport: i0, template: "<div class=\"footerContainer\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:block;text-align:right}:host-context(.fullscreen) .footerContainer{padding-left:90px;height:70px}:host-context(.dialog) .footerContainer,:host-context(.dialog-large) .footerContainer{padding:16px;height:64px;background-color:#f0f2f5;border-radius:0 0 6px 6px}.footerContainer{border-top:1px solid #cfd5df}\n"] });
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ModalFooterComponent, decorators: [{
|
8
|
+
type: Component,
|
9
|
+
args: [{ selector: 'lx-modal-footer', template: "<div class=\"footerContainer\">\n <ng-content></ng-content>\n</div>\n", styles: [":host{display:block;text-align:right}:host-context(.fullscreen) .footerContainer{padding-left:90px;height:70px}:host-context(.dialog) .footerContainer,:host-context(.dialog-large) .footerContainer{padding:16px;height:64px;background-color:#f0f2f5;border-radius:0 0 6px 6px}.footerContainer{border-top:1px solid #cfd5df}\n"] }]
|
10
|
+
}] });
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL21vZGFsLXVpL2NvbXBvbmVudHMvbW9kYWwtZm9vdGVyL21vZGFsLWZvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC11aS9jb21wb25lbnRzL21vZGFsLWZvb3Rlci9tb2RhbC1mb290ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPMUMsTUFBTSxPQUFPLG9CQUFvQjs7aUhBQXBCLG9CQUFvQjtxR0FBcEIsb0JBQW9CLHVEQ1BqQyx3RUFHQTsyRkRJYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0UsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2x4LW1vZGFsLWZvb3RlcicsXG4gIHRlbXBsYXRlVXJsOiAnbW9kYWwtZm9vdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ21vZGFsLWZvb3Rlci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsRm9vdGVyQ29tcG9uZW50IHt9XG4iLCI8ZGl2IGNsYXNzPVwiZm9vdGVyQ29udGFpbmVyXCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "@angular/common";
|
4
|
+
export class ModalHeaderComponent {
|
5
|
+
constructor() {
|
6
|
+
this.title = '';
|
7
|
+
this.subtitle = '';
|
8
|
+
this.bottomBorder = true;
|
9
|
+
}
|
10
|
+
}
|
11
|
+
ModalHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ModalHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
12
|
+
ModalHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: ModalHeaderComponent, selector: "lx-modal-header", inputs: { title: "title", subtitle: "subtitle", bottomBorder: "bottomBorder" }, ngImport: i0, template: "<div class=\"headerContainer\" [class.withSubtitle]=\"subtitle.length > 0\" [class.bottomBorder]=\"bottomBorder\">\n <ng-content></ng-content>\n <h1>{{ title }}</h1>\n <h2 *ngIf=\"subtitle.length > 0\">{{ subtitle }}</h2>\n</div>\n", styles: [":host{display:block}:host-context(.fullscreen) .headerContainer{padding:28px 90px}:host-context(.fullscreen) .headerContainer h1{margin-left:auto;margin-right:auto;font-weight:700}:host-context(.fullscreen) .headerContainer h1,:host-context(.fullscreen) .headerContainer h2{font-size:21px}:host-context(.fullscreen) .headerContainer.withSubtitle h1{margin:0 0 0 auto}:host-context(.dialog) .headerContainer,:host-context(.dialog-large) .headerContainer{padding:16px;background-color:#f0f2f5;border-radius:6px 6px 0 0}:host-context(.dialog) .headerContainer h1,:host-context(.dialog-large) .headerContainer h1{margin-right:28px;word-break:break-word}:host-context(.dialog) .headerContainer h1,:host-context(.dialog) .headerContainer h2,:host-context(.dialog-large) .headerContainer h1,:host-context(.dialog-large) .headerContainer h2{font-size:15px}h1,h2{margin:0;padding:0}h2{margin:0 auto 0 4px;font-weight:300}.headerContainer{display:flex}.headerContainer.bottomBorder{border-bottom:1px solid #cfd5df}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ModalHeaderComponent, decorators: [{
|
14
|
+
type: Component,
|
15
|
+
args: [{ selector: 'lx-modal-header', template: "<div class=\"headerContainer\" [class.withSubtitle]=\"subtitle.length > 0\" [class.bottomBorder]=\"bottomBorder\">\n <ng-content></ng-content>\n <h1>{{ title }}</h1>\n <h2 *ngIf=\"subtitle.length > 0\">{{ subtitle }}</h2>\n</div>\n", styles: [":host{display:block}:host-context(.fullscreen) .headerContainer{padding:28px 90px}:host-context(.fullscreen) .headerContainer h1{margin-left:auto;margin-right:auto;font-weight:700}:host-context(.fullscreen) .headerContainer h1,:host-context(.fullscreen) .headerContainer h2{font-size:21px}:host-context(.fullscreen) .headerContainer.withSubtitle h1{margin:0 0 0 auto}:host-context(.dialog) .headerContainer,:host-context(.dialog-large) .headerContainer{padding:16px;background-color:#f0f2f5;border-radius:6px 6px 0 0}:host-context(.dialog) .headerContainer h1,:host-context(.dialog-large) .headerContainer h1{margin-right:28px;word-break:break-word}:host-context(.dialog) .headerContainer h1,:host-context(.dialog) .headerContainer h2,:host-context(.dialog-large) .headerContainer h1,:host-context(.dialog-large) .headerContainer h2{font-size:15px}h1,h2{margin:0;padding:0}h2{margin:0 auto 0 4px;font-weight:300}.headerContainer{display:flex}.headerContainer.bottomBorder{border-bottom:1px solid #cfd5df}\n"] }]
|
16
|
+
}], propDecorators: { title: [{
|
17
|
+
type: Input
|
18
|
+
}], subtitle: [{
|
19
|
+
type: Input
|
20
|
+
}], bottomBorder: [{
|
21
|
+
type: Input
|
22
|
+
}] } });
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL21vZGFsLXVpL2NvbXBvbmVudHMvbW9kYWwtaGVhZGVyL21vZGFsLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC11aS9jb21wb25lbnRzL21vZGFsLWhlYWRlci9tb2RhbC1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU9qRCxNQUFNLE9BQU8sb0JBQW9CO0lBTGpDO1FBTWtCLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUN0QixpQkFBWSxHQUFZLElBQUksQ0FBQztLQUM5Qzs7aUhBSlksb0JBQW9CO3FHQUFwQixvQkFBb0IsdUlDUGpDLDRPQUtBOzJGREVhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDRSxpQkFBaUI7OEJBS1gsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2x4LW1vZGFsLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnbW9kYWwtaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ21vZGFsLWhlYWRlci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsSGVhZGVyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHVibGljIHRpdGxlOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgcHVibGljIHN1YnRpdGxlOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGJvdHRvbUJvcmRlcjogYm9vbGVhbiA9IHRydWU7XG59XG4iLCI8ZGl2IGNsYXNzPVwiaGVhZGVyQ29udGFpbmVyXCIgW2NsYXNzLndpdGhTdWJ0aXRsZV09XCJzdWJ0aXRsZS5sZW5ndGggPiAwXCIgW2NsYXNzLmJvdHRvbUJvcmRlcl09XCJib3R0b21Cb3JkZXJcIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8aDE+e3sgdGl0bGUgfX08L2gxPlxuICA8aDIgKm5nSWY9XCJzdWJ0aXRsZS5sZW5ndGggPiAwXCI+e3sgc3VidGl0bGUgfX08L2gyPlxuPC9kaXY+XG4iXX0=
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import { Directive } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export class ModalContentDirective {
|
4
|
+
}
|
5
|
+
ModalContentDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ModalContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
6
|
+
ModalContentDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.5", type: ModalContentDirective, selector: "[lxModalContent]", ngImport: i0 });
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: ModalContentDirective, decorators: [{
|
8
|
+
type: Directive,
|
9
|
+
args: [{
|
10
|
+
selector: '[lxModalContent]'
|
11
|
+
}]
|
12
|
+
}] });
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtY29udGVudC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9tb2RhbC11aS9kaXJlY3RpdmVzL21vZGFsLWNvbnRlbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzFDLE1BQU0sT0FBTyxxQkFBcUI7O2tIQUFyQixxQkFBcUI7c0dBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQUhqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7aUJBQzdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tseE1vZGFsQ29udGVudF0nXG59KVxuZXhwb3J0IGNsYXNzIE1vZGFsQ29udGVudERpcmVjdGl2ZSB7fVxuIl19
|
@@ -0,0 +1,3 @@
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
2
|
+
export const MODAL_CLOSE = new InjectionToken('MODAL_CLOSE');
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvbW9kYWwtdWkvbW9kYWwuY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0MsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFtQixhQUFhLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBjb25zdCBNT0RBTF9DTE9TRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxPYnNlcnZhYmxlPHZvaWQ+PignTU9EQUxfQ0xPU0UnKTtcbiJdfQ==
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import { A11yModule } from '@angular/cdk/a11y';
|
2
|
+
import { OverlayModule } from '@angular/cdk/overlay';
|
3
|
+
import { PortalModule } from '@angular/cdk/portal';
|
4
|
+
import { CommonModule } from '@angular/common';
|
5
|
+
import { NgModule } from '@angular/core';
|
6
|
+
import { TranslateModule } from '@ngx-translate/core';
|
7
|
+
import { ModalFooterComponent } from './components/modal-footer/modal-footer.component';
|
8
|
+
import { ModalHeaderComponent } from './components/modal-header/modal-header.component';
|
9
|
+
import { ModalComponent } from './components/modal/modal.component';
|
10
|
+
import { ModalContentDirective } from './directives/modal-content.directive';
|
11
|
+
import * as i0 from "@angular/core";
|
12
|
+
import * as i1 from "@ngx-translate/core";
|
13
|
+
export class LxModalModule {
|
14
|
+
}
|
15
|
+
LxModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LxModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
16
|
+
LxModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LxModalModule, declarations: [ModalComponent, ModalHeaderComponent, ModalFooterComponent, ModalContentDirective], imports: [CommonModule, PortalModule, OverlayModule, A11yModule, i1.TranslateModule], exports: [ModalComponent, ModalHeaderComponent, ModalFooterComponent, ModalContentDirective] });
|
17
|
+
LxModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LxModalModule, imports: [[CommonModule, PortalModule, OverlayModule, A11yModule, TranslateModule.forChild()]] });
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LxModalModule, decorators: [{
|
19
|
+
type: NgModule,
|
20
|
+
args: [{
|
21
|
+
imports: [CommonModule, PortalModule, OverlayModule, A11yModule, TranslateModule.forChild()],
|
22
|
+
declarations: [ModalComponent, ModalHeaderComponent, ModalFooterComponent, ModalContentDirective],
|
23
|
+
exports: [ModalComponent, ModalHeaderComponent, ModalFooterComponent, ModalContentDirective]
|
24
|
+
}]
|
25
|
+
}] });
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvbW9kYWwtdWkvbW9kYWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7OztBQU83RSxNQUFNLE9BQU8sYUFBYTs7MEdBQWIsYUFBYTsyR0FBYixhQUFhLGlCQUhULGNBQWMsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUIsYUFEdEYsWUFBWSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsVUFBVSxpQ0FFckQsY0FBYyxFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLHFCQUFxQjsyR0FFaEYsYUFBYSxZQUpmLENBQUMsWUFBWSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQzsyRkFJakYsYUFBYTtrQkFMekIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO29CQUM1RixZQUFZLEVBQUUsQ0FBQyxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUscUJBQXFCLENBQUM7b0JBQ2pHLE9BQU8sRUFBRSxDQUFDLGNBQWMsRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxxQkFBcUIsQ0FBQztpQkFDN0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE1vZGFsRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vZGFsLWZvb3Rlci9tb2RhbC1mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1vZGFsSGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vZGFsLWhlYWRlci9tb2RhbC1oZWFkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vZGFsL21vZGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNb2RhbENvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvbW9kYWwtY29udGVudC5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBQb3J0YWxNb2R1bGUsIE92ZXJsYXlNb2R1bGUsIEExMXlNb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZS5mb3JDaGlsZCgpXSxcbiAgZGVjbGFyYXRpb25zOiBbTW9kYWxDb21wb25lbnQsIE1vZGFsSGVhZGVyQ29tcG9uZW50LCBNb2RhbEZvb3RlckNvbXBvbmVudCwgTW9kYWxDb250ZW50RGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW01vZGFsQ29tcG9uZW50LCBNb2RhbEhlYWRlckNvbXBvbmVudCwgTW9kYWxGb290ZXJDb21wb25lbnQsIE1vZGFsQ29udGVudERpcmVjdGl2ZV1cbn0pXG5leHBvcnQgY2xhc3MgTHhNb2RhbE1vZHVsZSB7fVxuIl19
|
@@ -0,0 +1,199 @@
|
|
1
|
+
import { Component, ContentChild, EventEmitter, Input, Output, TemplateRef, ViewChild } from '@angular/core';
|
2
|
+
import { SatPopover } from '@ncstate/sat-popover';
|
3
|
+
import { PopoverContentDirective } from '../../directives/popover-content.directive';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
import * as i1 from "@ncstate/sat-popover";
|
6
|
+
import * as i2 from "@angular/common";
|
7
|
+
/**
|
8
|
+
* HOW TO USE
|
9
|
+
*
|
10
|
+
* This popover encapsulates this open source library: https://github.com/ncstate-sat/popover,
|
11
|
+
* make sure to also check out the docs over there.
|
12
|
+
*
|
13
|
+
* As of today they are two trigger strategies to display a popover.
|
14
|
+
* 1. Show on hovering the anchor and while hovering the popover body.
|
15
|
+
* 2. Show on click and while hovering the popover body.
|
16
|
+
*
|
17
|
+
* For use case 1. you would use the lxPopoverHover directive, which exports as hoverAnchor.
|
18
|
+
*
|
19
|
+
* Example:
|
20
|
+
* <div lxPopoverHover
|
21
|
+
* hoverAnchor
|
22
|
+
* satPopoverAnchor
|
23
|
+
* #anchor="hoverAnchor"></div>
|
24
|
+
* <lx-popover [trigger]="anchor"
|
25
|
+
* horizontalAlign="after"
|
26
|
+
* verticalAlign="center">
|
27
|
+
* <p>Popover content</p>
|
28
|
+
* </lx-popover>
|
29
|
+
*
|
30
|
+
* For use case 2. you would use the lxPopoverClick directive, which exports as clickAnchor.
|
31
|
+
* Note: Since the only component where we use the lxPopoverClick directive (ReportComponent)
|
32
|
+
* needs to fetch some data before opening it, we do not register a click EventListener in this directive,
|
33
|
+
* but require the developer to implement that in the component, where the popover is used.
|
34
|
+
*
|
35
|
+
* Example:
|
36
|
+
* <div lxPopoverClick
|
37
|
+
* clickAnchor
|
38
|
+
* satPopoverAnchor
|
39
|
+
* #anchor="clickAnchor"
|
40
|
+
* (click)="popover.open()">Click Me!</div>
|
41
|
+
* <lx-popover [trigger]="anchor"
|
42
|
+
* horizontalAlign="after"
|
43
|
+
* verticalAlign="center"
|
44
|
+
* #popover>
|
45
|
+
* <p>Popover content</p>
|
46
|
+
* </lx-popover>
|
47
|
+
*
|
48
|
+
* If this component is used with angularCompilerOptions strictTemplates=true,
|
49
|
+
* satPopoverAnchor must be set to the reference to the SatPopover inside lx-popover.
|
50
|
+
*
|
51
|
+
* Example:
|
52
|
+
* <div [satPopoverAnchor]="popover.satPopover"></div>
|
53
|
+
* <lx-popover #popover>
|
54
|
+
* <p>Popover content</p>
|
55
|
+
* </lx-popover>
|
56
|
+
*/
|
57
|
+
export class PopoverComponent {
|
58
|
+
constructor() {
|
59
|
+
this.noMargin = false;
|
60
|
+
this.allowOverflow = false;
|
61
|
+
/**
|
62
|
+
* If you have a popover, that should usually be displayed above or below its anchor,
|
63
|
+
* and this anchor is in a scrollable container, you should set this to true.
|
64
|
+
* SatPopover will open this popover in the direction where there is enough space,
|
65
|
+
* so its position might differ from the horizontalAlign and verticalAlign values.
|
66
|
+
* In this case we rely on the SatPopover::_classList property to get the computed
|
67
|
+
* position of the popover after opening.
|
68
|
+
*/
|
69
|
+
this.adaptMarginsForViewportAlignChange = false;
|
70
|
+
this.opened = new EventEmitter();
|
71
|
+
this.closed = new EventEmitter();
|
72
|
+
this._isOpen = false;
|
73
|
+
}
|
74
|
+
get content() {
|
75
|
+
return this.explicitContent || this.implicitContent;
|
76
|
+
}
|
77
|
+
get isOpen() {
|
78
|
+
return this._isOpen;
|
79
|
+
}
|
80
|
+
ngOnChanges(changes) {
|
81
|
+
if (changes['horizontalAlign'] && changes['verticalAlign']) {
|
82
|
+
this.marginClasses = this.getDefaultMarginClasses(this.horizontalAlign, this.verticalAlign);
|
83
|
+
}
|
84
|
+
}
|
85
|
+
open() {
|
86
|
+
this.satPopover.open();
|
87
|
+
}
|
88
|
+
close() {
|
89
|
+
this.satPopover.close();
|
90
|
+
}
|
91
|
+
onOpen() {
|
92
|
+
this._isOpen = true;
|
93
|
+
this.opened.emit();
|
94
|
+
}
|
95
|
+
onAfterOpen() {
|
96
|
+
if (this.adaptMarginsForViewportAlignChange) {
|
97
|
+
this.marginClasses = this.getMarginClassesForClassList(this.satPopover._classList);
|
98
|
+
}
|
99
|
+
}
|
100
|
+
onClose() {
|
101
|
+
this._isOpen = false;
|
102
|
+
this.closed.emit();
|
103
|
+
}
|
104
|
+
/**
|
105
|
+
* SatPopover::_classList will contain a map of alignment CSS classes, once the popover was opened.
|
106
|
+
* These alignment classes can be different from what you would expect from the horizontal- and verticalAlign inputs,
|
107
|
+
* because there might not be enough space above the anchor to meet the verticalAlign='above' criteria,
|
108
|
+
* so it will be displayed below the anchor instead.
|
109
|
+
*/
|
110
|
+
getMarginClassesForClassList(satPopoverClassList) {
|
111
|
+
if (this.noMargin) {
|
112
|
+
return '';
|
113
|
+
}
|
114
|
+
if (satPopoverClassList['sat-popover-above']) {
|
115
|
+
return this.marginClasses.includes('top') ? this.marginClasses : 'top';
|
116
|
+
}
|
117
|
+
if (satPopoverClassList['sat-popover-below']) {
|
118
|
+
return this.marginClasses.includes('bottom') ? this.marginClasses : 'bottom';
|
119
|
+
}
|
120
|
+
if (satPopoverClassList['sat-popover-before']) {
|
121
|
+
return this.marginClasses.includes('left') ? this.marginClasses : 'left';
|
122
|
+
}
|
123
|
+
if (satPopoverClassList['sat-popover-after']) {
|
124
|
+
return this.marginClasses.includes('right') ? this.marginClasses : 'right';
|
125
|
+
}
|
126
|
+
if (satPopoverClassList['sat-popover-center']) {
|
127
|
+
return '';
|
128
|
+
}
|
129
|
+
return '';
|
130
|
+
}
|
131
|
+
getDefaultMarginClasses(horizontalAlign, verticalAlign) {
|
132
|
+
if (this.noMargin) {
|
133
|
+
return '';
|
134
|
+
}
|
135
|
+
if (horizontalAlign === 'after') {
|
136
|
+
if (verticalAlign === 'center' || verticalAlign === 'start' || verticalAlign === 'end') {
|
137
|
+
return 'right';
|
138
|
+
}
|
139
|
+
else if (verticalAlign === 'above') {
|
140
|
+
return 'right top';
|
141
|
+
}
|
142
|
+
else if (verticalAlign === 'below') {
|
143
|
+
return 'right bottom';
|
144
|
+
}
|
145
|
+
}
|
146
|
+
if (horizontalAlign === 'before') {
|
147
|
+
if (verticalAlign === 'center' || verticalAlign === 'start' || verticalAlign === 'end') {
|
148
|
+
return 'left';
|
149
|
+
}
|
150
|
+
else if (verticalAlign === 'above') {
|
151
|
+
return 'left top';
|
152
|
+
}
|
153
|
+
else if (verticalAlign === 'below') {
|
154
|
+
return 'left bottom';
|
155
|
+
}
|
156
|
+
}
|
157
|
+
if (horizontalAlign === 'center' || horizontalAlign === 'start' || horizontalAlign === 'end') {
|
158
|
+
if (verticalAlign === 'above') {
|
159
|
+
return 'top';
|
160
|
+
}
|
161
|
+
else if (verticalAlign === 'below') {
|
162
|
+
return 'bottom';
|
163
|
+
}
|
164
|
+
}
|
165
|
+
return '';
|
166
|
+
}
|
167
|
+
}
|
168
|
+
PopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: PopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
169
|
+
PopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: PopoverComponent, selector: "lx-popover", inputs: { trigger: "trigger", horizontalAlign: "horizontalAlign", verticalAlign: "verticalAlign", noMargin: "noMargin", allowOverflow: "allowOverflow", adaptMarginsForViewportAlignChange: "adaptMarginsForViewportAlignChange" }, outputs: { opened: "opened", closed: "closed" }, queries: [{ propertyName: "explicitContent", first: true, predicate: PopoverContentDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "satPopover", first: true, predicate: SatPopover, descendants: true, static: true }, { propertyName: "implicitContent", first: true, predicate: ["implicitContent"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<sat-popover\n [anchor]=\"trigger.anchor\"\n [horizontalAlign]=\"horizontalAlign\"\n [verticalAlign]=\"verticalAlign\"\n [restoreFocus]=\"false\"\n [lockAlignment]=\"true\"\n [autoFocus]=\"false\"\n openTransition=\"0ms\"\n closeTransition=\"0ms\"\n (opened)=\"onOpen()\"\n (afterOpen)=\"onAfterOpen()\"\n (closed)=\"onClose()\"\n>\n <div\n class=\"popoverContainer\"\n [ngClass]=\"marginClasses\"\n [class.overflowHidden]=\"!allowOverflow\"\n (mouseenter)=\"trigger.showPopover(true)\"\n (mouseleave)=\"trigger.closePopover(true)\"\n >\n <ng-container *ngIf=\"isOpen\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n </div>\n</sat-popover>\n<ng-template #implicitContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: ["@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.popoverContainer{position:relative;box-shadow:0 8px 12px 2px #00000026;max-width:600px;max-height:80vh;border-radius:3px;background-color:#fff;-webkit-hyphens:auto;hyphens:auto;animation:subtleScaleUpKeyFrames .2s ease}.popoverContainer.overflowHidden{overflow:hidden}.right{margin-left:18px}.left{margin-right:18px}.bottom{margin-top:18px}.top{margin-bottom:18px}\n"], components: [{ type: i1.SatPopover, selector: "sat-popover", inputs: ["anchor", "horizontalAlign", "xAlign", "verticalAlign", "yAlign", "forceAlignment", "lockAlignment", "autoFocus", "restoreFocus", "scrollStrategy", "hasBackdrop", "interactiveClose", "openTransition", "closeTransition", "openAnimationStartAtScale", "closeAnimationEndAtScale", "backdropClass", "panelClass"], outputs: ["opened", "closed", "afterOpen", "afterClose", "backdropClicked", "overlayKeydown"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
|
170
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: PopoverComponent, decorators: [{
|
171
|
+
type: Component,
|
172
|
+
args: [{ selector: 'lx-popover', template: "<sat-popover\n [anchor]=\"trigger.anchor\"\n [horizontalAlign]=\"horizontalAlign\"\n [verticalAlign]=\"verticalAlign\"\n [restoreFocus]=\"false\"\n [lockAlignment]=\"true\"\n [autoFocus]=\"false\"\n openTransition=\"0ms\"\n closeTransition=\"0ms\"\n (opened)=\"onOpen()\"\n (afterOpen)=\"onAfterOpen()\"\n (closed)=\"onClose()\"\n>\n <div\n class=\"popoverContainer\"\n [ngClass]=\"marginClasses\"\n [class.overflowHidden]=\"!allowOverflow\"\n (mouseenter)=\"trigger.showPopover(true)\"\n (mouseleave)=\"trigger.closePopover(true)\"\n >\n <ng-container *ngIf=\"isOpen\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n </div>\n</sat-popover>\n<ng-template #implicitContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: ["@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.popoverContainer{position:relative;box-shadow:0 8px 12px 2px #00000026;max-width:600px;max-height:80vh;border-radius:3px;background-color:#fff;-webkit-hyphens:auto;hyphens:auto;animation:subtleScaleUpKeyFrames .2s ease}.popoverContainer.overflowHidden{overflow:hidden}.right{margin-left:18px}.left{margin-right:18px}.bottom{margin-top:18px}.top{margin-bottom:18px}\n"] }]
|
173
|
+
}], propDecorators: { trigger: [{
|
174
|
+
type: Input
|
175
|
+
}], horizontalAlign: [{
|
176
|
+
type: Input
|
177
|
+
}], verticalAlign: [{
|
178
|
+
type: Input
|
179
|
+
}], noMargin: [{
|
180
|
+
type: Input
|
181
|
+
}], allowOverflow: [{
|
182
|
+
type: Input
|
183
|
+
}], adaptMarginsForViewportAlignChange: [{
|
184
|
+
type: Input
|
185
|
+
}], opened: [{
|
186
|
+
type: Output
|
187
|
+
}], closed: [{
|
188
|
+
type: Output
|
189
|
+
}], satPopover: [{
|
190
|
+
type: ViewChild,
|
191
|
+
args: [SatPopover, { static: true }]
|
192
|
+
}], implicitContent: [{
|
193
|
+
type: ViewChild,
|
194
|
+
args: ['implicitContent', { static: true }]
|
195
|
+
}], explicitContent: [{
|
196
|
+
type: ContentChild,
|
197
|
+
args: [PopoverContentDirective, { read: TemplateRef, static: true }]
|
198
|
+
}] } });
|
199
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9wb3BvdmVyLXVpL2NvbXBvbmVudHMvcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3BvcG92ZXItdWkvY29tcG9uZW50cy9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWlCLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkksT0FBTyxFQUFFLFVBQVUsRUFBc0QsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQzs7OztBQUdyRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlERztBQU1ILE1BQU0sT0FBTyxnQkFBZ0I7SUFMN0I7UUFTVyxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRS9COzs7Ozs7O1dBT0c7UUFDTSx1Q0FBa0MsR0FBRyxLQUFLLENBQUM7UUFFMUMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFDbEMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFnQnBDLFlBQU8sR0FBRyxLQUFLLENBQUM7S0FtR3pCO0lBMUdDLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENB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SSxFQUFFO2dCQUU4QixlQUFlO3NCQUExRixZQUFZO3VCQUFDLHVCQUF1QixFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTYXRQb3BvdmVyLCBTYXRQb3BvdmVySG9yaXpvbnRhbEFsaWduLCBTYXRQb3BvdmVyVmVydGljYWxBbGlnbiB9IGZyb20gJ0BuY3N0YXRlL3NhdC1wb3BvdmVyJztcbmltcG9ydCB7IFBvcG92ZXJDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9wb3BvdmVyLWNvbnRlbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFBvcG92ZXJUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9wb3BvdmVyLWhvdmVyLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICogSE9XIFRPIFVTRVxuICpcbiAqIFRoaXMgcG9wb3ZlciBlbmNhcHN1bGF0ZXMgdGhpcyBvcGVuIHNvdXJjZSBsaWJyYXJ5OiBodHRwczovL2dpdGh1Yi5jb20vbmNzdGF0ZS1zYXQvcG9wb3ZlcixcbiAqIG1ha2Ugc3VyZSB0byBhbHNvIGNoZWNrIG91dCB0aGUgZG9jcyBvdmVyIHRoZXJlLlxuICpcbiAqIEFzIG9mIHRvZGF5IHRoZXkgYXJlIHR3byB0cmlnZ2VyIHN0cmF0ZWdpZXMgdG8gZGlzcGxheSBhIHBvcG92ZXIuXG4gKiAxLiBTaG93IG9uIGhvdmVyaW5nIHRoZSBhbmNob3IgYW5kIHdoaWxlIGhvdmVyaW5nIHRoZSBwb3BvdmVyIGJvZHkuXG4gKiAyLiBTaG93IG9uIGNsaWNrIGFuZCB3aGlsZSBob3ZlcmluZyB0aGUgcG9wb3ZlciBib2R5LlxuICpcbiAqIEZvciB1c2UgY2FzZSAxLiB5b3Ugd291bGQgdXNlIHRoZSBseFBvcG92ZXJIb3ZlciBkaXJlY3RpdmUsIHdoaWNoIGV4cG9ydHMgYXMgaG92ZXJBbmNob3IuXG4gKlxuICogRXhhbXBsZTpcbiAqIDxkaXYgbHhQb3BvdmVySG92ZXJcbiAqICAgICAgaG92ZXJBbmNob3JcbiAqICAgICAgc2F0UG9wb3ZlckFuY2hvclxuICogICAgICAjYW5jaG9yPVwiaG92ZXJBbmNob3JcIj48L2Rpdj5cbiAqIDxseC1wb3BvdmVyIFt0cmlnZ2VyXT1cImFuY2hvclwiXG4gKiAgICAgICAgICAgICBob3Jpem9udGFsQWxpZ249XCJhZnRlclwiXG4gKiAgICAgICAgICAgICB2ZXJ0aWNhbEFsaWduPVwiY2VudGVyXCI+XG4gKiAgICA8cD5Qb3BvdmVyIGNvbnRlbnQ8L3A+XG4gKiA8L2x4LXBvcG92ZXI+XG4gKlxuICogRm9yIHVzZSBjYXNlIDIuIHlvdSB3b3VsZCB1c2UgdGhlIGx4UG9wb3ZlckNsaWNrIGRpcmVjdGl2ZSwgd2hpY2ggZXhwb3J0cyBhcyBjbGlja0FuY2hvci5cbiAqIE5vdGU6IFNpbmNlIHRoZSBvbmx5IGNvbXBvbmVudCB3aGVyZSB3ZSB1c2UgdGhlIGx4UG9wb3ZlckNsaWNrIGRpcmVjdGl2ZSAoUmVwb3J0Q29tcG9uZW50KVxuICogbmVlZHMgdG8gZmV0Y2ggc29tZSBkYXRhIGJlZm9yZSBvcGVuaW5nIGl0LCB3ZSBkbyBub3QgcmVnaXN0ZXIgYSBjbGljayBFdmVudExpc3RlbmVyIGluIHRoaXMgZGlyZWN0aXZlLFxuICogYnV0IHJlcXVpcmUgdGhlIGRldmVsb3BlciB0byBpbXBsZW1lbnQgdGhhdCBpbiB0aGUgY29tcG9uZW50LCB3aGVyZSB0aGUgcG9wb3ZlciBpcyB1c2VkLlxuICpcbiAqIEV4YW1wbGU6XG4gKiA8ZGl2IGx4UG9wb3ZlckNsaWNrXG4gKiAgICAgIGNsaWNrQW5jaG9yXG4gKiAgICAgIHNhdFBvcG92ZXJBbmNob3JcbiAqICAgICAgI2FuY2hvcj1cImNsaWNrQW5jaG9yXCJcbiAqICAgICAgKGNsaWNrKT1cInBvcG92ZXIub3BlbigpXCI+Q2xpY2sgTWUhPC9kaXY+XG4gKiA8bHgtcG9wb3ZlciBbdHJpZ2dlcl09XCJhbmNob3JcIlxuICogICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduPVwiYWZ0ZXJcIlxuICogICAgICAgICAgICAgdmVydGljYWxBbGlnbj1cImNlbnRlclwiXG4gKiAgICAgICAgICAgICAjcG9wb3Zlcj5cbiAqICAgIDxwPlBvcG92ZXIgY29udGVudDwvcD5cbiAqIDwvbHgtcG9wb3Zlcj5cbiAqXG4gKiBJZiB0aGlzIGNvbXBvbmVudCBpcyB1c2VkIHdpdGggYW5ndWxhckNvbXBpbGVyT3B0aW9ucyBzdHJpY3RUZW1wbGF0ZXM9dHJ1ZSxcbiAqIHNhdFBvcG92ZXJBbmNob3IgbXVzdCBiZSBzZXQgdG8gdGhlIHJlZmVyZW5jZSB0byB0aGUgU2F0UG9wb3ZlciBpbnNpZGUgbHgtcG9wb3Zlci5cbiAqXG4gKiBFeGFtcGxlOlxuICogIDxkaXYgW3NhdFBvcG92ZXJBbmNob3JdPVwicG9wb3Zlci5zYXRQb3BvdmVyXCI+PC9kaXY+XG4gKiA8bHgtcG9wb3ZlciAjcG9wb3Zlcj5cbiAqICAgIDxwPlBvcG92ZXIgY29udGVudDwvcD5cbiAqIDwvbHgtcG9wb3Zlcj5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbHgtcG9wb3ZlcicsXG4gIHRlbXBsYXRlVXJsOiAncG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydwb3BvdmVyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUG9wb3ZlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHRyaWdnZXIhOiBQb3BvdmVyVHJpZ2dlckRpcmVjdGl2ZTtcbiAgQElucHV0KCkgaG9yaXpvbnRhbEFsaWduITogU2F0UG9wb3Zlckhvcml6b250YWxBbGlnbjtcbiAgQElucHV0KCkgdmVydGljYWxBbGlnbiE6IFNhdFBvcG92ZXJWZXJ0aWNhbEFsaWduO1xuICBASW5wdXQoKSBub01hcmdpbiA9IGZhbHNlO1xuICBASW5wdXQoKSBhbGxvd092ZXJmbG93ID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIElmIHlvdSBoYXZlIGEgcG9wb3ZlciwgdGhhdCBzaG91bGQgdXN1YWxseSBiZSBkaXNwbGF5ZWQgYWJvdmUgb3IgYmVsb3cgaXRzIGFuY2hvcixcbiAgICogYW5kIHRoaXMgYW5jaG9yIGlzIGluIGEgc2Nyb2xsYWJsZSBjb250YWluZXIsIHlvdSBzaG91bGQgc2V0IHRoaXMgdG8gdHJ1ZS5cbiAgICogU2F0UG9wb3ZlciB3aWxsIG9wZW4gdGhpcyBwb3BvdmVyIGluIHRoZSBkaXJlY3Rpb24gd2hlcmUgdGhlcmUgaXMgZW5vdWdoIHNwYWNlLFxuICAgKiBzbyBpdHMgcG9zaXRpb24gbWlnaHQgZGlmZmVyIGZyb20gdGhlIGhvcml6b250YWxBbGlnbiBhbmQgdmVydGljYWxBbGlnbiB2YWx1ZXMuXG4gICAqIEluIHRoaXMgY2FzZSB3ZSByZWx5IG9uIHRoZSBTYXRQb3BvdmVyOjpfY2xhc3NMaXN0IHByb3BlcnR5IHRvIGdldCB0aGUgY29tcHV0ZWRcbiAgICogcG9zaXRpb24gb2YgdGhlIHBvcG92ZXIgYWZ0ZXIgb3BlbmluZy5cbiAgICovXG4gIEBJbnB1dCgpIGFkYXB0TWFyZ2luc0ZvclZpZXdwb3J0QWxpZ25DaGFuZ2UgPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgb3BlbmVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgY2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBWaWV3Q2hpbGQoU2F0UG9wb3ZlciwgeyBzdGF0aWM6IHRydWUgfSkgc2F0UG9wb3ZlciE6IFNhdFBvcG92ZXI7XG4gIEBWaWV3Q2hpbGQoJ2ltcGxpY2l0Q29udGVudCcsIHsgc3RhdGljOiB0cnVlIH0pIGltcGxpY2l0Q29udGVudCE6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgQENvbnRlbnRDaGlsZChQb3BvdmVyQ29udGVudERpcmVjdGl2ZSwgeyByZWFkOiBUZW1wbGF0ZVJlZiwgc3RhdGljOiB0cnVlIH0pIGV4cGxpY2l0Q29udGVudD86IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgbWFyZ2luQ2xhc3NlcyE6IHN0cmluZztcblxuICBnZXQgY29udGVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5leHBsaWNpdENvbnRlbnQgfHwgdGhpcy5pbXBsaWNpdENvbnRlbnQ7XG4gIH1cblxuICBnZXQgaXNPcGVuKCkge1xuICAgIHJldHVybiB0aGlzLl9pc09wZW47XG4gIH1cbiAgcHJpdmF0ZSBfaXNPcGVuID0gZmFsc2U7XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzWydob3Jpem9udGFsQWxpZ24nXSAmJiBjaGFuZ2VzWyd2ZXJ0aWNhbEFsaWduJ10pIHtcbiAgICAgIHRoaXMubWFyZ2luQ2xhc3NlcyA9IHRoaXMuZ2V0RGVmYXVsdE1hcmdpbkNsYXNzZXModGhpcy5ob3Jpem9udGFsQWxpZ24sIHRoaXMudmVydGljYWxBbGlnbik7XG4gICAgfVxuICB9XG5cbiAgb3BlbigpIHtcbiAgICB0aGlzLnNhdFBvcG92ZXIub3BlbigpO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5zYXRQb3BvdmVyLmNsb3NlKCk7XG4gIH1cblxuICBvbk9wZW4oKSB7XG4gICAgdGhpcy5faXNPcGVuID0gdHJ1ZTtcbiAgICB0aGlzLm9wZW5lZC5lbWl0KCk7XG4gIH1cblxuICBvbkFmdGVyT3BlbigpIHtcbiAgICBpZiAodGhpcy5hZGFwdE1hcmdpbnNGb3JWaWV3cG9ydEFsaWduQ2hhbmdlKSB7XG4gICAgICB0aGlzLm1hcmdpbkNsYXNzZXMgPSB0aGlzLmdldE1hcmdpbkNsYXNzZXNGb3JDbGFzc0xpc3QodGhpcy5zYXRQb3BvdmVyLl9jbGFzc0xpc3QpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2xvc2UoKSB7XG4gICAgdGhpcy5faXNPcGVuID0gZmFsc2U7XG4gICAgdGhpcy5jbG9zZWQuZW1pdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNhdFBvcG92ZXI6Ol9jbGFzc0xpc3Qgd2lsbCBjb250YWluIGEgbWFwIG9mIGFsaWdubWVudCBDU1MgY2xhc3Nlcywgb25jZSB0aGUgcG9wb3ZlciB3YXMgb3BlbmVkLlxuICAgKiBUaGVzZSBhbGlnbm1lbnQgY2xhc3NlcyBjYW4gYmUgZGlmZmVyZW50IGZyb20gd2hhdCB5b3Ugd291bGQgZXhwZWN0IGZyb20gdGhlIGhvcml6b250YWwtIGFuZCB2ZXJ0aWNhbEFsaWduIGlucHV0cyxcbiAgICogYmVjYXVzZSB0aGVyZSBtaWdodCBub3QgYmUgZW5vdWdoIHNwYWNlIGFib3ZlIHRoZSBhbmNob3IgdG8gbWVldCB0aGUgdmVydGljYWxBbGlnbj0nYWJvdmUnIGNyaXRlcmlhLFxuICAgKiBzbyBpdCB3aWxsIGJlIGRpc3BsYXllZCBiZWxvdyB0aGUgYW5jaG9yIGluc3RlYWQuXG4gICAqL1xuICBwcml2YXRlIGdldE1hcmdpbkNsYXNzZXNGb3JDbGFzc0xpc3Qoc2F0UG9wb3ZlckNsYXNzTGlzdDogeyBbY2xhc3NOYW1lOiBzdHJpbmddOiBib29sZWFuIH0pOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLm5vTWFyZ2luKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgaWYgKHNhdFBvcG92ZXJDbGFzc0xpc3RbJ3NhdC1wb3BvdmVyLWFib3ZlJ10pIHtcbiAgICAgIHJldHVybiB0aGlzLm1hcmdpbkNsYXNzZXMuaW5jbHVkZXMoJ3RvcCcpID8gdGhpcy5tYXJnaW5DbGFzc2VzIDogJ3RvcCc7XG4gICAgfVxuXG4gICAgaWYgKHNhdFBvcG92ZXJDbGFzc0xpc3RbJ3NhdC1wb3BvdmVyLWJlbG93J10pIHtcbiAgICAgIHJldHVybiB0aGlzLm1hcmdpbkNsYXNzZXMuaW5jbHVkZXMoJ2JvdHRvbScpID8gdGhpcy5tYXJnaW5DbGFzc2VzIDogJ2JvdHRvbSc7XG4gICAgfVxuXG4gICAgaWYgKHNhdFBvcG92ZXJDbGFzc0xpc3RbJ3NhdC1wb3BvdmVyLWJlZm9yZSddKSB7XG4gICAgICByZXR1cm4gdGhpcy5tYXJnaW5DbGFzc2VzLmluY2x1ZGVzKCdsZWZ0JykgPyB0aGlzLm1hcmdpbkNsYXNzZXMgOiAnbGVmdCc7XG4gICAgfVxuXG4gICAgaWYgKHNhdFBvcG92ZXJDbGFzc0xpc3RbJ3NhdC1wb3BvdmVyLWFmdGVyJ10pIHtcbiAgICAgIHJldHVybiB0aGlzLm1hcmdpbkNsYXNzZXMuaW5jbHVkZXMoJ3JpZ2h0JykgPyB0aGlzLm1hcmdpbkNsYXNzZXMgOiAncmlnaHQnO1xuICAgIH1cblxuICAgIGlmIChzYXRQb3BvdmVyQ2xhc3NMaXN0WydzYXQtcG9wb3Zlci1jZW50ZXInXSkge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBwcml2YXRlIGdldERlZmF1bHRNYXJnaW5DbGFzc2VzKGhvcml6b250YWxBbGlnbjogU2F0UG9wb3Zlckhvcml6b250YWxBbGlnbiwgdmVydGljYWxBbGlnbjogU2F0UG9wb3ZlclZlcnRpY2FsQWxpZ24pOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLm5vTWFyZ2luKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuXG4gICAgaWYgKGhvcml6b250YWxBbGlnbiA9PT0gJ2FmdGVyJykge1xuICAgICAgaWYgKHZlcnRpY2FsQWxpZ24gPT09ICdjZW50ZXInIHx8IHZlcnRpY2FsQWxpZ24gPT09ICdzdGFydCcgfHwgdmVydGljYWxBbGlnbiA9PT0gJ2VuZCcpIHtcbiAgICAgICAgcmV0dXJuICdyaWdodCc7XG4gICAgICB9IGVsc2UgaWYgKHZlcnRpY2FsQWxpZ24gPT09ICdhYm92ZScpIHtcbiAgICAgICAgcmV0dXJuICdyaWdodCB0b3AnO1xuICAgICAgfSBlbHNlIGlmICh2ZXJ0aWNhbEFsaWduID09PSAnYmVsb3cnKSB7XG4gICAgICAgIHJldHVybiAncmlnaHQgYm90dG9tJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoaG9yaXpvbnRhbEFsaWduID09PSAnYmVmb3JlJykge1xuICAgICAgaWYgKHZlcnRpY2FsQWxpZ24gPT09ICdjZW50ZXInIHx8IHZlcnRpY2FsQWxpZ24gPT09ICdzdGFydCcgfHwgdmVydGljYWxBbGlnbiA9PT0gJ2VuZCcpIHtcbiAgICAgICAgcmV0dXJuICdsZWZ0JztcbiAgICAgIH0gZWxzZSBpZiAodmVydGljYWxBbGlnbiA9PT0gJ2Fib3ZlJykge1xuICAgICAgICByZXR1cm4gJ2xlZnQgdG9wJztcbiAgICAgIH0gZWxzZSBpZiAodmVydGljYWxBbGlnbiA9PT0gJ2JlbG93Jykge1xuICAgICAgICByZXR1cm4gJ2xlZnQgYm90dG9tJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoaG9yaXpvbnRhbEFsaWduID09PSAnY2VudGVyJyB8fCBob3Jpem9udGFsQWxpZ24gPT09ICdzdGFydCcgfHwgaG9yaXpvbnRhbEFsaWduID09PSAnZW5kJykge1xuICAgICAgaWYgKHZlcnRpY2FsQWxpZ24gPT09ICdhYm92ZScpIHtcbiAgICAgICAgcmV0dXJuICd0b3AnO1xuICAgICAgfSBlbHNlIGlmICh2ZXJ0aWNhbEFsaWduID09PSAnYmVsb3cnKSB7XG4gICAgICAgIHJldHVybiAnYm90dG9tJztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG59XG4iLCI8c2F0LXBvcG92ZXJcbiAgW2FuY2hvcl09XCJ0cmlnZ2VyLmFuY2hvclwiXG4gIFtob3Jpem9udGFsQWxpZ25dPVwiaG9yaXpvbnRhbEFsaWduXCJcbiAgW3ZlcnRpY2FsQWxpZ25dPVwidmVydGljYWxBbGlnblwiXG4gIFtyZXN0b3JlRm9jdXNdPVwiZmFsc2VcIlxuICBbbG9ja0FsaWdubWVudF09XCJ0cnVlXCJcbiAgW2F1dG9Gb2N1c109XCJmYWxzZVwiXG4gIG9wZW5UcmFuc2l0aW9uPVwiMG1zXCJcbiAgY2xvc2VUcmFuc2l0aW9uPVwiMG1zXCJcbiAgKG9wZW5lZCk9XCJvbk9wZW4oKVwiXG4gIChhZnRlck9wZW4pPVwib25BZnRlck9wZW4oKVwiXG4gIChjbG9zZWQpPVwib25DbG9zZSgpXCJcbj5cbiAgPGRpdlxuICAgIGNsYXNzPVwicG9wb3ZlckNvbnRhaW5lclwiXG4gICAgW25nQ2xhc3NdPVwibWFyZ2luQ2xhc3Nlc1wiXG4gICAgW2NsYXNzLm92ZXJmbG93SGlkZGVuXT1cIiFhbGxvd092ZXJmbG93XCJcbiAgICAobW91c2VlbnRlcik9XCJ0cmlnZ2VyLnNob3dQb3BvdmVyKHRydWUpXCJcbiAgICAobW91c2VsZWF2ZSk9XCJ0cmlnZ2VyLmNsb3NlUG9wb3Zlcih0cnVlKVwiXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNPcGVuXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvc2F0LXBvcG92ZXI+XG48bmctdGVtcGxhdGUgI2ltcGxpY2l0Q29udGVudD5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|