@leanix/components 0.2.229 → 0.2.232
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,67 @@
|
|
1
|
+
import { Pipe } from '@angular/core';
|
2
|
+
import _ from 'lodash';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
import * as i1 from "@ngx-translate/core";
|
5
|
+
function getTranslationBetween(translateService, translationKey, cutMarksAndParams) {
|
6
|
+
translationKey = _.isArray(translationKey) ? translationKey.join('.') : translationKey;
|
7
|
+
const cutMarks = cutMarksAndParams.slice(0, 2);
|
8
|
+
const params = cutMarksAndParams[2] || null;
|
9
|
+
const translation = translateService.instant(translationKey, params);
|
10
|
+
const parts1 = _.split(translation, `[[${cutMarks[0]}]]`);
|
11
|
+
if (parts1.length === 1) {
|
12
|
+
console.error(`'[[${cutMarks[0]}]]' not found in '${translation}' for key '${translationKey}'.`);
|
13
|
+
return translation;
|
14
|
+
}
|
15
|
+
else {
|
16
|
+
const parts2 = _.split(parts1[1], `[[${cutMarks[1]}]]`);
|
17
|
+
if (parts2.length === 1) {
|
18
|
+
console.error(`'[[${cutMarks[1]}]]' not found in '${translation}' after '[[${cutMarks[0]}]]' for key '${translationKey}'.`);
|
19
|
+
return translation;
|
20
|
+
}
|
21
|
+
return parts2[0];
|
22
|
+
}
|
23
|
+
}
|
24
|
+
/**
|
25
|
+
* Translates the given i18n-key (instantly) and returns the part of the translation
|
26
|
+
* between the two cut-mark strings '[[<cutMark>]]'.
|
27
|
+
* NB: This pipe should be used very rarely, as it fixes the order of cut-marks, which may make
|
28
|
+
* them untranslateable in some languages. It also makes the template harder to read.
|
29
|
+
* Use normal interpolations rather than cut-marks whenever the content is text, even if it comes from another pipe.
|
30
|
+
* @example
|
31
|
+
* {{ 'some.text' | lxTranslationBefore:'link' }}
|
32
|
+
* <a>{{'some.linkLabel' | translate}}</a>
|
33
|
+
* {{ 'some.text' | lxTranslationBetween:['link', 'userLink'] }}
|
34
|
+
* <a>{{'some.userName' | translate}}</a>
|
35
|
+
* {{ 'some.text' | lxTranslationAfter:'userLink' }}
|
36
|
+
*
|
37
|
+
* {{ 'some.textWithOtherInterpolations' | lxTranslationBefore:['link', params] }}
|
38
|
+
* <a>{{'some.linkLabel' | translate}}</a>
|
39
|
+
* {{ 'some.textWithOtherInterpolations' | lxTranslationBetween:['link', 'userLink', params] }}
|
40
|
+
* <a>{{'some.userName' | translate}}</a>
|
41
|
+
* {{ 'some.textWithOtherInterpolations' | lxTranslationAfter:['userLink', params] }}
|
42
|
+
* @see TranslationBeforePipe
|
43
|
+
* @see TranslationAferPipe
|
44
|
+
*/
|
45
|
+
export class TranslationBetweenPipe {
|
46
|
+
constructor(translateService) {
|
47
|
+
this.translateService = translateService;
|
48
|
+
}
|
49
|
+
/**
|
50
|
+
* @param {string|string[]} translationKey i18n key or array of its segments
|
51
|
+
* @param {([string, string]|[string, string, any])} interpolationsAndParams either just the interpolation string to split by or
|
52
|
+
* an array of interpolation string and translation params
|
53
|
+
* @returns {string}
|
54
|
+
*/
|
55
|
+
transform(translationKey, cutMarksAndParams) {
|
56
|
+
return getTranslationBetween(this.translateService, translationKey, cutMarksAndParams);
|
57
|
+
}
|
58
|
+
}
|
59
|
+
TranslationBetweenPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TranslationBetweenPipe, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Pipe });
|
60
|
+
TranslationBetweenPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TranslationBetweenPipe, name: "lxTranslationBetween" });
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TranslationBetweenPipe, decorators: [{
|
62
|
+
type: Pipe,
|
63
|
+
args: [{
|
64
|
+
name: 'lxTranslationBetween'
|
65
|
+
}]
|
66
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tYmV0d2Vlbi5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvY29yZS11aS9waXBlcy90cmFuc2xhdGlvbi1iZXR3ZWVuLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFcEQsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDOzs7QUFFdkIsU0FBUyxxQkFBcUIsQ0FDNUIsZ0JBQWtDLEVBQ2xDLGNBQWlDLEVBQ2pDLGlCQUEyRDtJQUUzRCxjQUFjLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDO0lBQ3ZGLE1BQU0sUUFBUSxHQUFHLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDL0MsTUFBTSxNQUFNLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDO0lBQzVDLE1BQU0sV0FBVyxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDckUsTUFBTSxNQUFNLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFELElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDdkIsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQyxDQUFDLENBQUMscUJBQXFCLFdBQVcsY0FBYyxjQUFjLElBQUksQ0FBQyxDQUFDO1FBQ2pHLE9BQU8sV0FBVyxDQUFDO0tBQ3BCO1NBQU07UUFDTCxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEQsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN2QixPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sUUFBUSxDQUFDLENBQUMsQ0FBQyxxQkFBcUIsV0FBVyxjQUFjLFFBQVEsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLGNBQWMsSUFBSSxDQUFDLENBQUM7WUFDNUgsT0FBTyxXQUFXLENBQUM7U0FDcEI7UUFDRCxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUUsQ0FBQztLQUNuQjtBQUNILENBQUM7QUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFJSCxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLFlBQW9CLGdCQUFrQztRQUFsQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQUcsQ0FBQztJQUUxRDs7Ozs7T0FLRztJQUNILFNBQVMsQ0FBQyxjQUFpQyxFQUFFLGlCQUEyRDtRQUN0RyxPQUFPLHFCQUFxQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxjQUFjLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUN6RixDQUFDOzttSEFYVSxzQkFBc0I7aUhBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUhsQyxJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxzQkFBc0I7aUJBQzdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcblxuZnVuY3Rpb24gZ2V0VHJhbnNsYXRpb25CZXR3ZWVuKFxuICB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICB0cmFuc2xhdGlvbktleTogc3RyaW5nIHwgc3RyaW5nW10sXG4gIGN1dE1hcmtzQW5kUGFyYW1zOiBbc3RyaW5nLCBzdHJpbmddIHwgW3N0cmluZywgc3RyaW5nLCBhbnldXG4pOiBzdHJpbmcge1xuICB0cmFuc2xhdGlvbktleSA9IF8uaXNBcnJheSh0cmFuc2xhdGlvbktleSkgPyB0cmFuc2xhdGlvbktleS5qb2luKCcuJykgOiB0cmFuc2xhdGlvbktleTtcbiAgY29uc3QgY3V0TWFya3MgPSBjdXRNYXJrc0FuZFBhcmFtcy5zbGljZSgwLCAyKTtcbiAgY29uc3QgcGFyYW1zID0gY3V0TWFya3NBbmRQYXJhbXNbMl0gfHwgbnVsbDtcbiAgY29uc3QgdHJhbnNsYXRpb24gPSB0cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQodHJhbnNsYXRpb25LZXksIHBhcmFtcyk7XG4gIGNvbnN0IHBhcnRzMSA9IF8uc3BsaXQodHJhbnNsYXRpb24sIGBbWyR7Y3V0TWFya3NbMF19XV1gKTtcbiAgaWYgKHBhcnRzMS5sZW5ndGggPT09IDEpIHtcbiAgICBjb25zb2xlLmVycm9yKGAnW1ske2N1dE1hcmtzWzBdfV1dJyBub3QgZm91bmQgaW4gJyR7dHJhbnNsYXRpb259JyBmb3Iga2V5ICcke3RyYW5zbGF0aW9uS2V5fScuYCk7XG4gICAgcmV0dXJuIHRyYW5zbGF0aW9uO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHBhcnRzMiA9IF8uc3BsaXQocGFydHMxWzFdLCBgW1ske2N1dE1hcmtzWzFdfV1dYCk7XG4gICAgaWYgKHBhcnRzMi5sZW5ndGggPT09IDEpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYCdbWyR7Y3V0TWFya3NbMV19XV0nIG5vdCBmb3VuZCBpbiAnJHt0cmFuc2xhdGlvbn0nIGFmdGVyICdbWyR7Y3V0TWFya3NbMF19XV0nIGZvciBrZXkgJyR7dHJhbnNsYXRpb25LZXl9Jy5gKTtcbiAgICAgIHJldHVybiB0cmFuc2xhdGlvbjtcbiAgICB9XG4gICAgcmV0dXJuIHBhcnRzMlswXSE7XG4gIH1cbn1cblxuLyoqXG4gKiBUcmFuc2xhdGVzIHRoZSBnaXZlbiBpMThuLWtleSAoaW5zdGFudGx5KSBhbmQgcmV0dXJucyB0aGUgcGFydCBvZiB0aGUgdHJhbnNsYXRpb25cbiAqIGJldHdlZW4gdGhlIHR3byBjdXQtbWFyayBzdHJpbmdzICdbWzxjdXRNYXJrPl1dJy5cbiAqIE5COiBUaGlzIHBpcGUgc2hvdWxkIGJlIHVzZWQgdmVyeSByYXJlbHksIGFzIGl0IGZpeGVzIHRoZSBvcmRlciBvZiBjdXQtbWFya3MsIHdoaWNoIG1heSBtYWtlXG4gKiB0aGVtIHVudHJhbnNsYXRlYWJsZSBpbiBzb21lIGxhbmd1YWdlcy4gSXQgYWxzbyBtYWtlcyB0aGUgdGVtcGxhdGUgaGFyZGVyIHRvIHJlYWQuXG4gKiBVc2Ugbm9ybWFsIGludGVycG9sYXRpb25zIHJhdGhlciB0aGFuIGN1dC1tYXJrcyB3aGVuZXZlciB0aGUgY29udGVudCBpcyB0ZXh0LCBldmVuIGlmIGl0IGNvbWVzIGZyb20gYW5vdGhlciBwaXBlLlxuICogQGV4YW1wbGVcbiAqIHt7ICdzb21lLnRleHQnIHwgbHhUcmFuc2xhdGlvbkJlZm9yZTonbGluaycgfX1cbiAqICAgPGE+e3snc29tZS5saW5rTGFiZWwnIHwgdHJhbnNsYXRlfX08L2E+XG4gKiB7eyAnc29tZS50ZXh0JyB8IGx4VHJhbnNsYXRpb25CZXR3ZWVuOlsnbGluaycsICd1c2VyTGluayddIH19XG4gKiAgIDxhPnt7J3NvbWUudXNlck5hbWUnIHwgdHJhbnNsYXRlfX08L2E+XG4gKiB7eyAnc29tZS50ZXh0JyB8IGx4VHJhbnNsYXRpb25BZnRlcjondXNlckxpbmsnIH19XG4gKlxuICoge3sgJ3NvbWUudGV4dFdpdGhPdGhlckludGVycG9sYXRpb25zJyB8IGx4VHJhbnNsYXRpb25CZWZvcmU6WydsaW5rJywgcGFyYW1zXSB9fVxuICogICA8YT57eydzb21lLmxpbmtMYWJlbCcgfCB0cmFuc2xhdGV9fTwvYT5cbiAqIHt7ICdzb21lLnRleHRXaXRoT3RoZXJJbnRlcnBvbGF0aW9ucycgfCBseFRyYW5zbGF0aW9uQmV0d2VlbjpbJ2xpbmsnLCAndXNlckxpbmsnLCBwYXJhbXNdIH19XG4gKiAgIDxhPnt7J3NvbWUudXNlck5hbWUnIHwgdHJhbnNsYXRlfX08L2E+XG4gKiB7eyAnc29tZS50ZXh0V2l0aE90aGVySW50ZXJwb2xhdGlvbnMnIHwgbHhUcmFuc2xhdGlvbkFmdGVyOlsndXNlckxpbmsnLCBwYXJhbXNdIH19XG4gKiBAc2VlIFRyYW5zbGF0aW9uQmVmb3JlUGlwZVxuICogQHNlZSBUcmFuc2xhdGlvbkFmZXJQaXBlXG4gKi9cbkBQaXBlKHtcbiAgbmFtZTogJ2x4VHJhbnNsYXRpb25CZXR3ZWVuJ1xufSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGlvbkJldHdlZW5QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRlU2VydmljZSkge31cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd8c3RyaW5nW119IHRyYW5zbGF0aW9uS2V5IGkxOG4ga2V5IG9yIGFycmF5IG9mIGl0cyBzZWdtZW50c1xuICAgKiBAcGFyYW0geyhbc3RyaW5nLCBzdHJpbmddfFtzdHJpbmcsIHN0cmluZywgYW55XSl9IGludGVycG9sYXRpb25zQW5kUGFyYW1zIGVpdGhlciBqdXN0IHRoZSBpbnRlcnBvbGF0aW9uIHN0cmluZyB0byBzcGxpdCBieSBvclxuICAgKiAgIGFuIGFycmF5IG9mIGludGVycG9sYXRpb24gc3RyaW5nIGFuZCB0cmFuc2xhdGlvbiBwYXJhbXNcbiAgICogQHJldHVybnMge3N0cmluZ31cbiAgICovXG4gIHRyYW5zZm9ybSh0cmFuc2xhdGlvbktleTogc3RyaW5nIHwgc3RyaW5nW10sIGN1dE1hcmtzQW5kUGFyYW1zOiBbc3RyaW5nLCBzdHJpbmddIHwgW3N0cmluZywgc3RyaW5nLCBhbnldKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZ2V0VHJhbnNsYXRpb25CZXR3ZWVuKHRoaXMudHJhbnNsYXRlU2VydmljZSwgdHJhbnNsYXRpb25LZXksIGN1dE1hcmtzQW5kUGFyYW1zKTtcbiAgfVxufVxuIl19
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { Pipe } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
export class UnescapeCurlyBracesPipe {
|
4
|
+
transform(input) {
|
5
|
+
return input.replace(/\\([{}])/g, '$1');
|
6
|
+
}
|
7
|
+
}
|
8
|
+
UnescapeCurlyBracesPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: UnescapeCurlyBracesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
9
|
+
UnescapeCurlyBracesPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: UnescapeCurlyBracesPipe, name: "lxUnescapeCurlyBraces" });
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: UnescapeCurlyBracesPipe, decorators: [{
|
11
|
+
type: Pipe,
|
12
|
+
args: [{
|
13
|
+
name: 'lxUnescapeCurlyBraces'
|
14
|
+
}]
|
15
|
+
}] });
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5lc2NhcGUtY3VybHktYnJhY2VzLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9jb3JlLXVpL3BpcGVzL3VuZXNjYXBlLWN1cmx5LWJyYWNlcy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQUtwRCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLFNBQVMsQ0FBQyxLQUFhO1FBQ3JCLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDMUMsQ0FBQzs7b0hBSFUsdUJBQXVCO2tIQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFIbkMsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsdUJBQXVCO2lCQUM5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe1xuICBuYW1lOiAnbHhVbmVzY2FwZUN1cmx5QnJhY2VzJ1xufSlcbmV4cG9ydCBjbGFzcyBVbmVzY2FwZUN1cmx5QnJhY2VzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0oaW5wdXQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGlucHV0LnJlcGxhY2UoL1xcXFwoW3t9XSkvZywgJyQxJyk7XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,74 @@
|
|
1
|
+
function toCdkX(x) {
|
2
|
+
switch (x) {
|
3
|
+
case 'left':
|
4
|
+
return 'start';
|
5
|
+
case 'center':
|
6
|
+
return 'center';
|
7
|
+
case 'right':
|
8
|
+
return 'end';
|
9
|
+
}
|
10
|
+
}
|
11
|
+
function invertCdkX(x) {
|
12
|
+
switch (x) {
|
13
|
+
case 'start':
|
14
|
+
return 'end';
|
15
|
+
case 'center':
|
16
|
+
return 'center';
|
17
|
+
case 'end':
|
18
|
+
return 'start';
|
19
|
+
}
|
20
|
+
}
|
21
|
+
function invertCdkY(x) {
|
22
|
+
switch (x) {
|
23
|
+
case 'top':
|
24
|
+
return 'bottom';
|
25
|
+
case 'center':
|
26
|
+
return 'center';
|
27
|
+
case 'bottom':
|
28
|
+
return 'top';
|
29
|
+
}
|
30
|
+
}
|
31
|
+
function offsetYDirection(x) {
|
32
|
+
switch (x) {
|
33
|
+
case 'top':
|
34
|
+
return -6;
|
35
|
+
case 'center':
|
36
|
+
return 0;
|
37
|
+
case 'bottom':
|
38
|
+
return 6;
|
39
|
+
}
|
40
|
+
}
|
41
|
+
function offsetXDirection(position) {
|
42
|
+
switch (position.y) {
|
43
|
+
case 'center':
|
44
|
+
switch (position.x) {
|
45
|
+
case 'left':
|
46
|
+
return -6;
|
47
|
+
case 'center':
|
48
|
+
return 0;
|
49
|
+
case 'right':
|
50
|
+
return 6;
|
51
|
+
}
|
52
|
+
case 'top':
|
53
|
+
case 'bottom':
|
54
|
+
switch (position.x) {
|
55
|
+
case 'left':
|
56
|
+
return 30;
|
57
|
+
case 'center':
|
58
|
+
return 0;
|
59
|
+
case 'right':
|
60
|
+
return -30;
|
61
|
+
}
|
62
|
+
}
|
63
|
+
}
|
64
|
+
export function toCdkPosition(position) {
|
65
|
+
return {
|
66
|
+
originX: toCdkX(position.x),
|
67
|
+
originY: position.y,
|
68
|
+
overlayX: invertCdkX(toCdkX(position.x)),
|
69
|
+
overlayY: invertCdkY(position.y),
|
70
|
+
offsetY: offsetYDirection(position.y),
|
71
|
+
offsetX: offsetXDirection(position)
|
72
|
+
};
|
73
|
+
}
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG8tY2RrLXBvc2l0aW9uLmZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvY29yZS11aS90b29sdGlwL3RvLWNkay1wb3NpdGlvbi5mdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxTQUFTLE1BQU0sQ0FBQyxDQUE4QjtJQUM1QyxRQUFRLENBQUMsRUFBRTtRQUNULEtBQUssTUFBTTtZQUNULE9BQU8sT0FBTyxDQUFDO1FBQ2pCLEtBQUssUUFBUTtZQUNYLE9BQU8sUUFBUSxDQUFDO1FBQ2xCLEtBQUssT0FBTztZQUNWLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0FBQ0gsQ0FBQztBQUVELFNBQVMsVUFBVSxDQUFDLENBQTZCO0lBQy9DLFFBQVEsQ0FBQyxFQUFFO1FBQ1QsS0FBSyxPQUFPO1lBQ1YsT0FBTyxLQUFLLENBQUM7UUFDZixLQUFLLFFBQVE7WUFDWCxPQUFPLFFBQVEsQ0FBQztRQUNsQixLQUFLLEtBQUs7WUFDUixPQUFPLE9BQU8sQ0FBQztLQUNsQjtBQUNILENBQUM7QUFFRCxTQUFTLFVBQVUsQ0FBQyxDQUE4QjtJQUNoRCxRQUFRLENBQUMsRUFBRTtRQUNULEtBQUssS0FBSztZQUNSLE9BQU8sUUFBUSxDQUFDO1FBQ2xCLEtBQUssUUFBUTtZQUNYLE9BQU8sUUFBUSxDQUFDO1FBQ2xCLEtBQUssUUFBUTtZQUNYLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0FBQ0gsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQUMsQ0FBOEI7SUFDdEQsUUFBUSxDQUFDLEVBQUU7UUFDVCxLQUFLLEtBQUs7WUFDUixPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ1osS0FBSyxRQUFRO1lBQ1gsT0FBTyxDQUFDLENBQUM7UUFDWCxLQUFLLFFBQVE7WUFDWCxPQUFPLENBQUMsQ0FBQztLQUNaO0FBQ0gsQ0FBQztBQUVELFNBQVMsZ0JBQWdCLENBQUMsUUFBeUI7SUFDakQsUUFBUSxRQUFRLENBQUMsQ0FBQyxFQUFFO1FBQ2xCLEtBQUssUUFBUTtZQUNYLFFBQVEsUUFBUSxDQUFDLENBQUMsRUFBRTtnQkFDbEIsS0FBSyxNQUFNO29CQUNULE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQ1osS0FBSyxRQUFRO29CQUNYLE9BQU8sQ0FBQyxDQUFDO2dCQUNYLEtBQUssT0FBTztvQkFDVixPQUFPLENBQUMsQ0FBQzthQUNaO1FBQ0gsS0FBSyxLQUFLLENBQUM7UUFDWCxLQUFLLFFBQVE7WUFDWCxRQUFRLFFBQVEsQ0FBQyxDQUFDLEVBQUU7Z0JBQ2xCLEtBQUssTUFBTTtvQkFDVCxPQUFPLEVBQUUsQ0FBQztnQkFDWixLQUFLLFFBQVE7b0JBQ1gsT0FBTyxDQUFDLENBQUM7Z0JBQ1gsS0FBSyxPQUFPO29CQUNWLE9BQU8sQ0FBQyxFQUFFLENBQUM7YUFDZDtLQUNKO0FBQ0gsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsUUFBeUI7SUFDckQsT0FBTztRQUNMLE9BQU8sRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUMzQixPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDbkIsUUFBUSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLFFBQVEsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUNoQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUNyQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUMsUUFBUSxDQUFDO0tBQ3BDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29ubmVjdGVkUG9zaXRpb24gfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBUb29sdGlwUG9zaXRpb24gfSBmcm9tICcuL3Rvb2x0aXAtcG9zaXRpb24uaW50ZXJmYWNlJztcblxuZnVuY3Rpb24gdG9DZGtYKHg6ICdsZWZ0JyB8ICdjZW50ZXInIHwgJ3JpZ2h0Jyk6ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnIHtcbiAgc3dpdGNoICh4KSB7XG4gICAgY2FzZSAnbGVmdCc6XG4gICAgICByZXR1cm4gJ3N0YXJ0JztcbiAgICBjYXNlICdjZW50ZXInOlxuICAgICAgcmV0dXJuICdjZW50ZXInO1xuICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgIHJldHVybiAnZW5kJztcbiAgfVxufVxuXG5mdW5jdGlvbiBpbnZlcnRDZGtYKHg6ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnKTogJ3N0YXJ0JyB8ICdjZW50ZXInIHwgJ2VuZCcge1xuICBzd2l0Y2ggKHgpIHtcbiAgICBjYXNlICdzdGFydCc6XG4gICAgICByZXR1cm4gJ2VuZCc7XG4gICAgY2FzZSAnY2VudGVyJzpcbiAgICAgIHJldHVybiAnY2VudGVyJztcbiAgICBjYXNlICdlbmQnOlxuICAgICAgcmV0dXJuICdzdGFydCc7XG4gIH1cbn1cblxuZnVuY3Rpb24gaW52ZXJ0Q2RrWSh4OiAndG9wJyB8ICdjZW50ZXInIHwgJ2JvdHRvbScpOiAndG9wJyB8ICdjZW50ZXInIHwgJ2JvdHRvbScge1xuICBzd2l0Y2ggKHgpIHtcbiAgICBjYXNlICd0b3AnOlxuICAgICAgcmV0dXJuICdib3R0b20nO1xuICAgIGNhc2UgJ2NlbnRlcic6XG4gICAgICByZXR1cm4gJ2NlbnRlcic7XG4gICAgY2FzZSAnYm90dG9tJzpcbiAgICAgIHJldHVybiAndG9wJztcbiAgfVxufVxuXG5mdW5jdGlvbiBvZmZzZXRZRGlyZWN0aW9uKHg6ICd0b3AnIHwgJ2NlbnRlcicgfCAnYm90dG9tJyk6IG51bWJlciB7XG4gIHN3aXRjaCAoeCkge1xuICAgIGNhc2UgJ3RvcCc6XG4gICAgICByZXR1cm4gLTY7XG4gICAgY2FzZSAnY2VudGVyJzpcbiAgICAgIHJldHVybiAwO1xuICAgIGNhc2UgJ2JvdHRvbSc6XG4gICAgICByZXR1cm4gNjtcbiAgfVxufVxuXG5mdW5jdGlvbiBvZmZzZXRYRGlyZWN0aW9uKHBvc2l0aW9uOiBUb29sdGlwUG9zaXRpb24pOiBudW1iZXIge1xuICBzd2l0Y2ggKHBvc2l0aW9uLnkpIHtcbiAgICBjYXNlICdjZW50ZXInOlxuICAgICAgc3dpdGNoIChwb3NpdGlvbi54KSB7XG4gICAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICAgIHJldHVybiAtNjtcbiAgICAgICAgY2FzZSAnY2VudGVyJzpcbiAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgY2FzZSAncmlnaHQnOlxuICAgICAgICAgIHJldHVybiA2O1xuICAgICAgfVxuICAgIGNhc2UgJ3RvcCc6XG4gICAgY2FzZSAnYm90dG9tJzpcbiAgICAgIHN3aXRjaCAocG9zaXRpb24ueCkge1xuICAgICAgICBjYXNlICdsZWZ0JzpcbiAgICAgICAgICByZXR1cm4gMzA7XG4gICAgICAgIGNhc2UgJ2NlbnRlcic6XG4gICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIGNhc2UgJ3JpZ2h0JzpcbiAgICAgICAgICByZXR1cm4gLTMwO1xuICAgICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0b0Nka1Bvc2l0aW9uKHBvc2l0aW9uOiBUb29sdGlwUG9zaXRpb24pOiBDb25uZWN0ZWRQb3NpdGlvbiB7XG4gIHJldHVybiB7XG4gICAgb3JpZ2luWDogdG9DZGtYKHBvc2l0aW9uLngpLFxuICAgIG9yaWdpblk6IHBvc2l0aW9uLnksXG4gICAgb3ZlcmxheVg6IGludmVydENka1godG9DZGtYKHBvc2l0aW9uLngpKSxcbiAgICBvdmVybGF5WTogaW52ZXJ0Q2RrWShwb3NpdGlvbi55KSxcbiAgICBvZmZzZXRZOiBvZmZzZXRZRGlyZWN0aW9uKHBvc2l0aW9uLnkpLFxuICAgIG9mZnNldFg6IG9mZnNldFhEaXJlY3Rpb24ocG9zaXRpb24pXG4gIH07XG59XG4iXX0=
|
@@ -0,0 +1,7 @@
|
|
1
|
+
export function isValidX(x) {
|
2
|
+
return ['left', 'center', 'right'].includes(x);
|
3
|
+
}
|
4
|
+
export function isValidY(y) {
|
5
|
+
return ['top', 'center', 'bottom'].includes(y);
|
6
|
+
}
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC1wb3NpdGlvbi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9jb3JlLXVpL3Rvb2x0aXAvdG9vbHRpcC1wb3NpdGlvbi5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxVQUFVLFFBQVEsQ0FBQyxDQUFTO0lBQ2hDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNqRCxDQUFDO0FBRUQsTUFBTSxVQUFVLFFBQVEsQ0FBQyxDQUFTO0lBQ2hDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNqRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBUb29sdGlwUG9zaXRpb24ge1xuICB4OiAnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCc7XG4gIHk6ICd0b3AnIHwgJ2NlbnRlcicgfCAnYm90dG9tJztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRYKHg6IHN0cmluZyk6IHggaXMgJ2xlZnQnIHwgJ2NlbnRlcicgfCAncmlnaHQnIHtcbiAgcmV0dXJuIFsnbGVmdCcsICdjZW50ZXInLCAncmlnaHQnXS5pbmNsdWRlcyh4KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRZKHk6IHN0cmluZyk6IHkgaXMgJ3RvcCcgfCAnY2VudGVyJyB8ICdib3R0b20nIHtcbiAgcmV0dXJuIFsndG9wJywgJ2NlbnRlcicsICdib3R0b20nXS5pbmNsdWRlcyh5KTtcbn1cbiJdfQ==
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "@angular/common";
|
4
|
+
export class TooltipComponent {
|
5
|
+
constructor() {
|
6
|
+
this.content = '';
|
7
|
+
this.isHtmlContent = false;
|
8
|
+
this.position = {
|
9
|
+
x: 'center',
|
10
|
+
y: 'top'
|
11
|
+
};
|
12
|
+
}
|
13
|
+
}
|
14
|
+
TooltipComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
15
|
+
TooltipComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: TooltipComponent, selector: "lx-tooltip", inputs: { content: "content", isHtmlContent: "isHtmlContent", position: "position" }, ngImport: i0, template: "<div *ngIf=\"!isHtmlContent; else htmlTooltip\" [ngClass]=\"['x-' + position.x, 'y-' + position.y]\">{{ content }}</div>\n<ng-template #htmlTooltip>\n <div [innerHtml]=\"content\" [ngClass]=\"['x-' + position.x, 'y-' + position.y]\"></div>\n</ng-template>\n", styles: [":host{display:block;position:relative;margin:5px}div{background-color:#292929;color:#fff;border:0 solid transparent;border-radius:5px;opacity:1;font-size:11px;font-weight:400;text-shadow:0 1px black;text-align:left;word-wrap:break-word;line-height:16px;max-width:280px;min-width:50px;padding:6px 10px;overflow:hidden}.y-bottom:after,.y-top:after,.x-left:after,.x-right:after{content:\" \";position:absolute;border-width:5px;border-style:solid;border-color:#292929 transparent transparent transparent}.y-top:after{top:100%;margin-left:-5px}.y-bottom:after{top:0;margin-left:-5px;transform-origin:center top;transform:rotate(180deg)}.y-center:after{top:50%;margin-left:-5px;margin-top:-10px}.y-top.x-center:after,.y-bottom.x-center:after{left:50%}.y-top.x-left:after,.y-bottom.x-left:after{right:10px}.y-top.x-right:after,.y-bottom.x-right:after{left:10px}.y-center.x-right:after{left:0;transform-origin:left center;transform:rotate(90deg)}.y-center.x-left:after{left:100%;transform-origin:right center;transform:rotate(-90deg)}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TooltipComponent, decorators: [{
|
17
|
+
type: Component,
|
18
|
+
args: [{ selector: 'lx-tooltip', template: "<div *ngIf=\"!isHtmlContent; else htmlTooltip\" [ngClass]=\"['x-' + position.x, 'y-' + position.y]\">{{ content }}</div>\n<ng-template #htmlTooltip>\n <div [innerHtml]=\"content\" [ngClass]=\"['x-' + position.x, 'y-' + position.y]\"></div>\n</ng-template>\n", styles: [":host{display:block;position:relative;margin:5px}div{background-color:#292929;color:#fff;border:0 solid transparent;border-radius:5px;opacity:1;font-size:11px;font-weight:400;text-shadow:0 1px black;text-align:left;word-wrap:break-word;line-height:16px;max-width:280px;min-width:50px;padding:6px 10px;overflow:hidden}.y-bottom:after,.y-top:after,.x-left:after,.x-right:after{content:\" \";position:absolute;border-width:5px;border-style:solid;border-color:#292929 transparent transparent transparent}.y-top:after{top:100%;margin-left:-5px}.y-bottom:after{top:0;margin-left:-5px;transform-origin:center top;transform:rotate(180deg)}.y-center:after{top:50%;margin-left:-5px;margin-top:-10px}.y-top.x-center:after,.y-bottom.x-center:after{left:50%}.y-top.x-left:after,.y-bottom.x-left:after{right:10px}.y-top.x-right:after,.y-bottom.x-right:after{left:10px}.y-center.x-right:after{left:0;transform-origin:left center;transform:rotate(90deg)}.y-center.x-left:after{left:100%;transform-origin:right center;transform:rotate(-90deg)}\n"] }]
|
19
|
+
}], propDecorators: { content: [{
|
20
|
+
type: Input
|
21
|
+
}], isHtmlContent: [{
|
22
|
+
type: Input
|
23
|
+
}], position: [{
|
24
|
+
type: Input
|
25
|
+
}] } });
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9jb3JlLXVpL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9jb3JlLXVpL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUWpELE1BQU0sT0FBTyxnQkFBZ0I7SUFMN0I7UUFNVyxZQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2Isa0JBQWEsR0FBWSxLQUFLLENBQUM7UUFDL0IsYUFBUSxHQUFvQjtZQUNuQyxDQUFDLEVBQUUsUUFBUTtZQUNYLENBQUMsRUFBRSxLQUFLO1NBQ1QsQ0FBQztLQUNIOzs2R0FQWSxnQkFBZ0I7aUdBQWhCLGdCQUFnQix3SUNSN0Isb1FBSUE7MkZESWEsZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNFLFlBQVk7OEJBS2IsT0FBTztzQkFBZixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvb2x0aXBQb3NpdGlvbiB9IGZyb20gJy4vdG9vbHRpcC1wb3NpdGlvbi5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdseC10b29sdGlwJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG9vbHRpcC5jb21wb25lbnQuc2NzcyddLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9vbHRpcC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNvbnRlbnQgPSAnJztcbiAgQElucHV0KCkgaXNIdG1sQ29udGVudDogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwb3NpdGlvbjogVG9vbHRpcFBvc2l0aW9uID0ge1xuICAgIHg6ICdjZW50ZXInLFxuICAgIHk6ICd0b3AnXG4gIH07XG59XG4iLCI8ZGl2ICpuZ0lmPVwiIWlzSHRtbENvbnRlbnQ7IGVsc2UgaHRtbFRvb2x0aXBcIiBbbmdDbGFzc109XCJbJ3gtJyArIHBvc2l0aW9uLngsICd5LScgKyBwb3NpdGlvbi55XVwiPnt7IGNvbnRlbnQgfX08L2Rpdj5cbjxuZy10ZW1wbGF0ZSAjaHRtbFRvb2x0aXA+XG4gIDxkaXYgW2lubmVySHRtbF09XCJjb250ZW50XCIgW25nQ2xhc3NdPVwiWyd4LScgKyBwb3NpdGlvbi54LCAneS0nICsgcG9zaXRpb24ueV1cIj48L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
@@ -0,0 +1,102 @@
|
|
1
|
+
import { ComponentPortal } from '@angular/cdk/portal';
|
2
|
+
import { Directive, HostListener, Input } from '@angular/core';
|
3
|
+
import { toCdkPosition } from './to-cdk-position.function';
|
4
|
+
import { isValidX, isValidY } from './tooltip-position.interface';
|
5
|
+
import { TooltipComponent } from './tooltip.component';
|
6
|
+
import * as i0 from "@angular/core";
|
7
|
+
import * as i1 from "@angular/cdk/overlay";
|
8
|
+
export class TooltipDirective {
|
9
|
+
constructor(overlayPositionBuilder, elementRef, overlay) {
|
10
|
+
this.overlayPositionBuilder = overlayPositionBuilder;
|
11
|
+
this.elementRef = elementRef;
|
12
|
+
this.overlay = overlay;
|
13
|
+
this.position = {
|
14
|
+
x: 'center',
|
15
|
+
y: 'top'
|
16
|
+
};
|
17
|
+
this.lxTooltipIsHtmlContent = false;
|
18
|
+
this.mouseOrFocusOnHost = false;
|
19
|
+
}
|
20
|
+
set lxTooltipPosition(value) {
|
21
|
+
this.position = {
|
22
|
+
x: value && isValidX(value.x) ? value.x : 'center',
|
23
|
+
y: value && isValidY(value.y) ? value.y : 'top'
|
24
|
+
};
|
25
|
+
}
|
26
|
+
get positionStrategy() {
|
27
|
+
return this.overlayPositionBuilder.flexibleConnectedTo(this.elementRef).withPositions([toCdkPosition(this.position)]);
|
28
|
+
}
|
29
|
+
ngOnChanges(changes) {
|
30
|
+
if (this.overlayRef && changes['lxTooltipPosition']) {
|
31
|
+
this.overlayRef.updatePositionStrategy(this.positionStrategy);
|
32
|
+
}
|
33
|
+
if (this.tooltipRef) {
|
34
|
+
if (changes['lxTooltipPosition']) {
|
35
|
+
this.tooltipRef.instance.position = this.position;
|
36
|
+
}
|
37
|
+
if (changes['lxTooltipIsHtmlContent']) {
|
38
|
+
this.tooltipRef.instance.isHtmlContent = this.lxTooltipIsHtmlContent;
|
39
|
+
}
|
40
|
+
if (changes['content']) {
|
41
|
+
if (this.content) {
|
42
|
+
this.tooltipRef.instance.content = this.content;
|
43
|
+
this.overlayRef?.updatePosition();
|
44
|
+
}
|
45
|
+
else {
|
46
|
+
this.overlayRef?.detach();
|
47
|
+
}
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
51
|
+
show() {
|
52
|
+
this.mouseOrFocusOnHost = true;
|
53
|
+
setTimeout(() => {
|
54
|
+
if (!this.overlayRef?.hasAttached() && this.mouseOrFocusOnHost && this.content) {
|
55
|
+
this.overlayRef = this.overlay.create({ positionStrategy: this.positionStrategy });
|
56
|
+
const tooltipPortal = new ComponentPortal(TooltipComponent);
|
57
|
+
this.tooltipRef = this.overlayRef.attach(tooltipPortal);
|
58
|
+
this.tooltipRef.instance.content = this.content;
|
59
|
+
this.tooltipRef.instance.isHtmlContent = this.lxTooltipIsHtmlContent;
|
60
|
+
this.tooltipRef.instance.position = this.position;
|
61
|
+
}
|
62
|
+
}, this.lxTooltipDelay ?? 90);
|
63
|
+
}
|
64
|
+
ngOnDestroy() {
|
65
|
+
this.mouseOrFocusOnHost = false;
|
66
|
+
this.overlayRef?.dispose();
|
67
|
+
}
|
68
|
+
hide() {
|
69
|
+
this.mouseOrFocusOnHost = false;
|
70
|
+
this.overlayRef?.dispose();
|
71
|
+
}
|
72
|
+
}
|
73
|
+
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TooltipDirective, deps: [{ token: i1.OverlayPositionBuilder }, { token: i0.ElementRef }, { token: i1.Overlay }], target: i0.ɵɵFactoryTarget.Directive });
|
74
|
+
TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.5", type: TooltipDirective, selector: "[lxTooltip]", inputs: { content: ["lxTooltip", "content"], lxTooltipPosition: "lxTooltipPosition", lxTooltipDelay: "lxTooltipDelay", lxTooltipIsHtmlContent: "lxTooltipIsHtmlContent" }, host: { listeners: { "mouseenter": "show()", "focus": "show()", "mouseleave": "hide()", "blur": "hide()" } }, usesOnChanges: true, ngImport: i0 });
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: TooltipDirective, decorators: [{
|
76
|
+
type: Directive,
|
77
|
+
args: [{
|
78
|
+
selector: '[lxTooltip]'
|
79
|
+
}]
|
80
|
+
}], ctorParameters: function () { return [{ type: i1.OverlayPositionBuilder }, { type: i0.ElementRef }, { type: i1.Overlay }]; }, propDecorators: { content: [{
|
81
|
+
type: Input,
|
82
|
+
args: ['lxTooltip']
|
83
|
+
}], lxTooltipPosition: [{
|
84
|
+
type: Input
|
85
|
+
}], lxTooltipDelay: [{
|
86
|
+
type: Input
|
87
|
+
}], lxTooltipIsHtmlContent: [{
|
88
|
+
type: Input
|
89
|
+
}], show: [{
|
90
|
+
type: HostListener,
|
91
|
+
args: ['mouseenter']
|
92
|
+
}, {
|
93
|
+
type: HostListener,
|
94
|
+
args: ['focus']
|
95
|
+
}], hide: [{
|
96
|
+
type: HostListener,
|
97
|
+
args: ['mouseleave']
|
98
|
+
}, {
|
99
|
+
type: HostListener,
|
100
|
+
args: ['blur']
|
101
|
+
}] } });
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9jb3JlLXVpL3Rvb2x0aXAvdG9vbHRpcC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBZ0IsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQXVDLE1BQU0sZUFBZSxDQUFDO0FBQzlILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBbUIsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7O0FBS3ZELE1BQU0sT0FBTyxnQkFBZ0I7SUF1QjNCLFlBQW9CLHNCQUE4QyxFQUFVLFVBQXNCLEVBQVUsT0FBZ0I7UUFBeEcsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUFVLGVBQVUsR0FBVixVQUFVLENBQVk7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFTO1FBZnBILGFBQVEsR0FBb0I7WUFDbEMsQ0FBQyxFQUFFLFFBQVE7WUFDWCxDQUFDLEVBQUUsS0FBSztTQUNULENBQUM7UUFFTywyQkFBc0IsR0FBWSxLQUFLLENBQUM7UUFJekMsdUJBQWtCLEdBQVksS0FBSyxDQUFDO0lBTW1GLENBQUM7SUFyQmhJLElBQWEsaUJBQWlCLENBQUMsS0FBMkM7UUFDeEUsSUFBSSxDQUFDLFFBQVEsR0FBRztZQUNkLENBQUMsRUFBRSxLQUFLLElBQUksUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUTtZQUNsRCxDQUFDLEVBQUUsS0FBSyxJQUFJLFFBQVEs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LGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUg1QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO2lCQUN4Qjs0SkFFcUIsT0FBTztzQkFBMUIsS0FBSzt1QkFBQyxXQUFXO2dCQUNMLGlCQUFpQjtzQkFBN0IsS0FBSztnQkFVRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFvQ04sSUFBSTtzQkFGSCxZQUFZO3VCQUFDLFlBQVk7O3NCQUN6QixZQUFZO3VCQUFDLE9BQU87Z0JBc0JyQixJQUFJO3NCQUZILFlBQVk7dUJBQUMsWUFBWTs7c0JBQ3pCLFlBQVk7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlQb3NpdGlvbkJ1aWxkZXIsIE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IENvbXBvbmVudFJlZiwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9DZGtQb3NpdGlvbiB9IGZyb20gJy4vdG8tY2RrLXBvc2l0aW9uLmZ1bmN0aW9uJztcbmltcG9ydCB7IGlzVmFsaWRYLCBpc1ZhbGlkWSwgVG9vbHRpcFBvc2l0aW9uIH0gZnJvbSAnLi90b29sdGlwLXBvc2l0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi90b29sdGlwLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tseFRvb2x0aXBdJ1xufSlcbmV4cG9ydCBjbGFzcyBUb29sdGlwRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBASW5wdXQoJ2x4VG9vbHRpcCcpIGNvbnRlbnQ/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNldCBseFRvb2x0aXBQb3NpdGlvbih2YWx1ZTogeyB4OiBzdHJpbmc7IHk6IHN0cmluZyB9IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5wb3NpdGlvbiA9IHtcbiAgICAgIHg6IHZhbHVlICYmIGlzVmFsaWRYKHZhbHVlLngpID8gdmFsdWUueCA6ICdjZW50ZXInLFxuICAgICAgeTogdmFsdWUgJiYgaXNWYWxpZFkodmFsdWUueSkgPyB2YWx1ZS55IDogJ3RvcCdcbiAgICB9O1xuICB9XG4gIHByaXZhdGUgcG9zaXRpb246IFRvb2x0aXBQb3NpdGlvbiA9IHtcbiAgICB4OiAnY2VudGVyJyxcbiAgICB5OiAndG9wJ1xuICB9O1xuICBASW5wdXQoKSBseFRvb2x0aXBEZWxheT86IG51bWJlcjtcbiAgQElucHV0KCkgbHhUb29sdGlwSXNIdG1sQ29udGVudDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgb3ZlcmxheVJlZj86IE92ZXJsYXlSZWY7XG4gIHByaXZhdGUgdG9vbHRpcFJlZj86IENvbXBvbmVudFJlZjxUb29sdGlwQ29tcG9uZW50PjtcbiAgcHJpdmF0ZSBtb3VzZU9yRm9jdXNPbkhvc3Q6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBnZXQgcG9zaXRpb25TdHJhdGVneSgpIHtcbiAgICByZXR1cm4gdGhpcy5vdmVybGF5UG9zaXRpb25CdWlsZGVyLmZsZXhpYmxlQ29ubmVjdGVkVG8odGhpcy5lbGVtZW50UmVmKS53aXRoUG9zaXRpb25zKFt0b0Nka1Bvc2l0aW9uKHRoaXMucG9zaXRpb24pXSk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG92ZXJsYXlQb3NpdGlvbkJ1aWxkZXI6IE92ZXJsYXlQb3NpdGlvbkJ1aWxkZXIsIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5KSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAodGhpcy5vdmVybGF5UmVmICYmIGNoYW5nZXNbJ2x4VG9vbHRpcFBvc2l0aW9uJ10pIHtcbiAgICAgIHRoaXMub3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvblN0cmF0ZWd5KHRoaXMucG9zaXRpb25TdHJhdGVneSk7XG4gICAgfVxuICAgIGlmICh0aGlzLnRvb2x0aXBSZWYpIHtcbiAgICAgIGlmIChjaGFuZ2VzWydseFRvb2x0aXBQb3NpdGlvbiddKSB7XG4gICAgICAgIHRoaXMudG9vbHRpcFJlZi5pbnN0YW5jZS5wb3NpdGlvbiA9IHRoaXMucG9zaXRpb247XG4gICAgICB9XG4gICAgICBpZiAoY2hhbmdlc1snbHhUb29sdGlwSXNIdG1sQ29udGVudCddKSB7XG4gICAgICAgIHRoaXMudG9vbHRpcFJlZi5pbnN0YW5jZS5pc0h0bWxDb250ZW50ID0gdGhpcy5seFRvb2x0aXBJc0h0bWxDb250ZW50O1xuICAgICAgfVxuICAgICAgaWYgKGNoYW5nZXNbJ2NvbnRlbnQnXSkge1xuICAgICAgICBpZiAodGhpcy5jb250ZW50KSB7XG4gICAgICAgICAgdGhpcy50b29sdGlwUmVmLmluc3RhbmNlLmNvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7XG4gICAgICAgICAgdGhpcy5vdmVybGF5UmVmPy51cGRhdGVQb3NpdGlvbigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMub3ZlcmxheVJlZj8uZGV0YWNoKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJylcbiAgQEhvc3RMaXN0ZW5lcignZm9jdXMnKVxuICBzaG93KCkge1xuICAgIHRoaXMubW91c2VPckZvY3VzT25Ib3N0ID0gdHJ1ZTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5vdmVybGF5UmVmPy5oYXNBdHRhY2hlZCgpICYmIHRoaXMubW91c2VPckZvY3VzT25Ib3N0ICYmIHRoaXMuY29udGVudCkge1xuICAgICAgICB0aGlzLm92ZXJsYXlSZWYgPSB0aGlzLm92ZXJsYXkuY3JlYXRlKHsgcG9zaXRpb25TdHJhdGVneTogdGhpcy5wb3NpdGlvblN0cmF0ZWd5IH0pO1xuICAgICAgICBjb25zdCB0b29sdGlwUG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbChUb29sdGlwQ29tcG9uZW50KTtcbiAgICAgICAgdGhpcy50b29sdGlwUmVmID0gdGhpcy5vdmVybGF5UmVmLmF0dGFjaCh0b29sdGlwUG9ydGFsKTtcbiAgICAgICAgdGhpcy50b29sdGlwUmVmLmluc3RhbmNlLmNvbnRlbnQgPSB0aGlzLmNvbnRlbnQ7XG4gICAgICAgIHRoaXMudG9vbHRpcFJlZi5pbnN0YW5jZS5pc0h0bWxDb250ZW50ID0gdGhpcy5seFRvb2x0aXBJc0h0bWxDb250ZW50O1xuICAgICAgICB0aGlzLnRvb2x0aXBSZWYuaW5zdGFuY2UucG9zaXRpb24gPSB0aGlzLnBvc2l0aW9uO1xuICAgICAgfVxuICAgIH0sIHRoaXMubHhUb29sdGlwRGVsYXkgPz8gOTApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5tb3VzZU9yRm9jdXNPbkhvc3QgPSBmYWxzZTtcbiAgICB0aGlzLm92ZXJsYXlSZWY/LmRpc3Bvc2UoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnKVxuICBASG9zdExpc3RlbmVyKCdibHVyJylcbiAgaGlkZSgpIHtcbiAgICB0aGlzLm1vdXNlT3JGb2N1c09uSG9zdCA9IGZhbHNlO1xuICAgIHRoaXMub3ZlcmxheVJlZj8uZGlzcG9zZSgpO1xuICB9XG59XG4iXX0=
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import { OverlayModule } from '@angular/cdk/overlay';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import { NgModule } from '@angular/core';
|
4
|
+
import { TooltipComponent } from './tooltip.component';
|
5
|
+
import { TooltipDirective } from './tooltip.directive';
|
6
|
+
import * as i0 from "@angular/core";
|
7
|
+
export class LxTooltipModule {
|
8
|
+
}
|
9
|
+
LxTooltipModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LxTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
10
|
+
LxTooltipModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LxTooltipModule, declarations: [TooltipDirective, TooltipComponent], imports: [CommonModule, OverlayModule], exports: [TooltipDirective] });
|
11
|
+
LxTooltipModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LxTooltipModule, imports: [[CommonModule, OverlayModule]] });
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LxTooltipModule, decorators: [{
|
13
|
+
type: NgModule,
|
14
|
+
args: [{
|
15
|
+
entryComponents: [TooltipComponent],
|
16
|
+
declarations: [TooltipDirective, TooltipComponent],
|
17
|
+
imports: [CommonModule, OverlayModule],
|
18
|
+
exports: [TooltipDirective]
|
19
|
+
}]
|
20
|
+
}] });
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9jb3JlLXVpL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQVF2RCxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlLGlCQUpYLGdCQUFnQixFQUFFLGdCQUFnQixhQUN2QyxZQUFZLEVBQUUsYUFBYSxhQUMzQixnQkFBZ0I7NkdBRWYsZUFBZSxZQUhqQixDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7MkZBRzNCLGVBQWU7a0JBTjNCLFFBQVE7bUJBQUM7b0JBQ1IsZUFBZSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQ25DLFlBQVksRUFBRSxDQUFDLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDO29CQUNsRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDO29CQUN0QyxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi90b29sdGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnLi90b29sdGlwLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGVudHJ5Q29tcG9uZW50czogW1Rvb2x0aXBDb21wb25lbnRdLFxuICBkZWNsYXJhdGlvbnM6IFtUb29sdGlwRGlyZWN0aXZlLCBUb29sdGlwQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgT3ZlcmxheU1vZHVsZV0sXG4gIGV4cG9ydHM6IFtUb29sdGlwRGlyZWN0aXZlXVxufSlcbmV4cG9ydCBjbGFzcyBMeFRvb2x0aXBNb2R1bGUge31cbiJdfQ==
|
@@ -0,0 +1,103 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ContentChild, EventEmitter, Input, Output } from '@angular/core';
|
2
|
+
import { isEqual, some, toLower } from 'lodash/fp';
|
3
|
+
import { KeyboardSelectDirective } from '../keyboard-select.directive';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
import * as i1 from "../../../core-ui/components/badge/badge.component";
|
6
|
+
import * as i2 from "../../../core-ui/components/spinner/spinner.component";
|
7
|
+
import * as i3 from "ngx-infinite-scroll";
|
8
|
+
import * as i4 from "@angular/common";
|
9
|
+
import * as i5 from "../../directives/selectable-item.directive";
|
10
|
+
import * as i6 from "@ngx-translate/core";
|
11
|
+
export class BasicDropdownComponent extends KeyboardSelectDirective {
|
12
|
+
constructor() {
|
13
|
+
super(...arguments);
|
14
|
+
this.NAME = 'BasicDropdownComponent';
|
15
|
+
this.options = [];
|
16
|
+
this.initiallySelectedIndex = -1;
|
17
|
+
this.loading = false;
|
18
|
+
this.padding = 'default';
|
19
|
+
this.showCreateNewOption = false;
|
20
|
+
this.disabledOptions = {};
|
21
|
+
this.onItemSelected = new EventEmitter();
|
22
|
+
this.triggerRequestForMoreEntries = new EventEmitter();
|
23
|
+
this.newOptionLabelSelected = new EventEmitter();
|
24
|
+
this.createNewOptionSelected = new EventEmitter();
|
25
|
+
}
|
26
|
+
static isNewItem(items, term, key) {
|
27
|
+
if (!term) {
|
28
|
+
return false;
|
29
|
+
}
|
30
|
+
const isEqualIgnoringCase = (item) => {
|
31
|
+
const value = key ? item[key] : item;
|
32
|
+
return isEqual(toLower(value), toLower(term));
|
33
|
+
};
|
34
|
+
return !some(isEqualIgnoringCase, items);
|
35
|
+
}
|
36
|
+
selectOption(option) {
|
37
|
+
if (!option || !this.itemKey) {
|
38
|
+
this.onItemSelected.emit(option);
|
39
|
+
}
|
40
|
+
else if (!this.disabledOptions[option[this.itemKey]]) {
|
41
|
+
this.onItemSelected.emit(option);
|
42
|
+
}
|
43
|
+
}
|
44
|
+
get isNewItem() {
|
45
|
+
return BasicDropdownComponent.isNewItem(this.options, this.newOptionLabel, this.labelKey);
|
46
|
+
}
|
47
|
+
trackByProp(prop) {
|
48
|
+
return (index, pill) => (prop ? pill[prop] : index);
|
49
|
+
}
|
50
|
+
onScroll() {
|
51
|
+
this.triggerRequestForMoreEntries.emit();
|
52
|
+
}
|
53
|
+
onNewItemSelected() {
|
54
|
+
if (!this.loading) {
|
55
|
+
this.selectOption(null);
|
56
|
+
this.newOptionLabelSelected.emit(this.newOptionLabel);
|
57
|
+
}
|
58
|
+
}
|
59
|
+
onCreateNewOptionSelected() {
|
60
|
+
this.createNewOptionSelected.emit();
|
61
|
+
}
|
62
|
+
}
|
63
|
+
BasicDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: BasicDropdownComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
64
|
+
BasicDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: BasicDropdownComponent, selector: "lx-basic-dropdown", inputs: { options: "options", initiallySelectedIndex: "initiallySelectedIndex", labelKey: "labelKey", itemKey: "itemKey", placeholder: "placeholder", loading: "loading", newOptionLabel: "newOptionLabel", padding: "padding", showCreateNewOption: "showCreateNewOption", disabledOptions: "disabledOptions" }, outputs: { onItemSelected: "onItemSelected", triggerRequestForMoreEntries: "triggerRequestForMoreEntries", newOptionLabelSelected: "newOptionLabelSelected", createNewOptionSelected: "createNewOptionSelected" }, queries: [{ propertyName: "optionTemplateRef", first: true, predicate: ["optionTemplate"], descendants: true }, { propertyName: "createNewOptionTemplateRef", first: true, predicate: ["createNewOptionTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ul\n class=\"options {{ padding }}Padding lxThinScrollbar\"\n #keyboardSelectContainer\n infinite-scroll\n [scrollWindow]=\"false\"\n [fromRoot]=\"true\"\n (scrolled)=\"onScroll()\"\n>\n <li\n *ngIf=\"newOptionLabel && isNewItem\"\n lxSelectableItem\n [scrollInContainer]=\"keyboardSelectContainer\"\n #item\n (click)=\"onNewItemSelected()\"\n (select)=\"onNewItemSelected()\"\n [class.selected]=\"isItemSelected(item, (selectedItem$ | async)?.element)\"\n class=\"option keyboardSelectable onTheFlyOption\"\n >\n <span class=\"newEntryContent\">\n {{ newOptionLabel }}\n </span>\n <lx-badge class=\"lx-margin-left\" size=\"small\" [content]=\"'common.new' | translate | uppercase\"></lx-badge>\n </li>\n <li\n *ngIf=\"showCreateNewOption\"\n lxSelectableItem\n [scrollInContainer]=\"keyboardSelectContainer\"\n #item\n (click)=\"onCreateNewOptionSelected()\"\n (select)=\"onCreateNewOptionSelected()\"\n [class.selected]=\"isItemSelected(item, (selectedItem$ | async)?.element)\"\n class=\"option keyboardSelectable newEntryOption\"\n >\n <span class=\"newEntryContent\">\n <ng-container *ngIf=\"createNewOptionTemplateRef; else defaultNewOption\">\n <ng-container *ngTemplateOutlet=\"createNewOptionTemplateRef\"></ng-container>\n </ng-container>\n <ng-template #defaultNewOption>\n <span>\n {{ NAME + '.new' | translate }}\n </span>\n </ng-template>\n </span>\n </li>\n <li\n *ngIf=\"options?.length === 0 && !newOptionLabel && !loading\"\n lxSelectableItem\n [scrollInContainer]=\"keyboardSelectContainer\"\n #item\n [class.selected]=\"isItemSelected(item, (selectedItem$ | async)?.element)\"\n class=\"option keyboardSelectable noOptionsAvailable\"\n >\n {{ NAME + '.noResults' | translate }}\n </li>\n <li\n *ngIf=\"placeholder\"\n class=\"option keyboardSelectable clearSelection\"\n lxSelectableItem\n [scrollInContainer]=\"keyboardSelectContainer\"\n #item\n (click)=\"selectOption(null)\"\n (select)=\"selectOption(null)\"\n [class.selected]=\"isItemSelected(item, (selectedItem$ | async)?.element)\"\n >\n {{ placeholder }}\n </li>\n <li\n *ngFor=\"let option of options; let index = index; trackBy: trackByProp(itemKey)\"\n lxSelectableItem\n [scrollInContainer]=\"keyboardSelectContainer\"\n #item\n class=\"option keyboardSelectable\"\n (click)=\"selectOption(option)\"\n (select)=\"selectOption(option)\"\n [class.selected]=\"isItemSelected(item, (selectedItem$ | async)?.element)\"\n [class.initiallySelected]=\"index === initiallySelectedIndex\"\n [class.disabledItem]=\"itemKey ? !!disabledOptions[option[itemKey]] : false\"\n >\n <ng-container *ngIf=\"optionTemplateRef; else simpleStringDisplay\">\n <ng-container *ngTemplateOutlet=\"optionTemplateRef; context: { $implicit: option, index: index }\"></ng-container>\n </ng-container>\n <ng-template #simpleStringDisplay>\n <span>\n {{ labelKey ? option[labelKey] : option }}\n </span>\n </ng-template>\n </li>\n <lx-spinner *ngIf=\"loading\" [fadeBackground]=\"true\"></lx-spinner>\n</ul>\n", styles: [":host(.noOptionPadding) .options .option{padding:0}.defaultPadding .newEntryOption,.defaultPadding .onTheFlyOption,.defaultPadding .noOptionsAvailable{padding:4px 12px!important}.narrowPadding .newEntryOption,.narrowPadding .onTheFlyOption,.narrowPadding .noOptionsAvailable{padding:4px!important}.options{list-style:none;margin:0;padding:0;overflow-y:auto;max-height:250px}.options.defaultPadding .option{padding:4px 12px}.options.narrowPadding .option{padding:4px}.optionSearch{padding:2px}.option{cursor:pointer;display:block}.option:hover:not(.disabledItem){background-color:#e1e5eb!important}.option.selected{background:#eaedf1}.option.initiallySelected{color:var(--lx-primarybutton-backgroundcolor)}.option.disabledItem{cursor:default;opacity:.5}\n"], components: [{ type: i1.BadgeComponent, selector: "lx-badge", inputs: ["content", "size", "color"] }, { type: i2.SpinnerComponent, selector: "lx-spinner", inputs: ["fadeBackground"] }], directives: [{ type: i3.InfiniteScrollDirective, selector: "[infiniteScroll], [infinite-scroll], [data-infinite-scroll]", inputs: ["infiniteScrollDistance", "infiniteScrollUpDistance", "infiniteScrollThrottle", "infiniteScrollDisabled", "infiniteScrollContainer", "scrollWindow", "immediateCheck", "horizontal", "alwaysCallback", "fromRoot"], outputs: ["scrolled", "scrolledUp"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.SelectableItemDirective, selector: "[lxSelectableItem]", inputs: ["scrollInContainer", "lxSelectableItem"], outputs: ["select"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i4.AsyncPipe, "uppercase": i4.UpperCasePipe, "translate": i6.TranslatePipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: BasicDropdownComponent, decorators: [{
|
66
|
+
type: Component,
|
67
|
+
args: [{ selector: 'lx-basic-dropdown', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ul\n class=\"options {{ padding }}Padding lxThinScrollbar\"\n #keyboardSelectContainer\n infinite-scroll\n [scrollWindow]=\"false\"\n [fromRoot]=\"true\"\n (scrolled)=\"onScroll()\"\n>\n <li\n *ngIf=\"newOptionLabel && isNewItem\"\n lxSelectableItem\n [scrollInContainer]=\"keyboardSelectContainer\"\n #item\n (click)=\"onNewItemSelected()\"\n (select)=\"onNewItemSelected()\"\n [class.selected]=\"isItemSelected(item, (selectedItem$ | async)?.element)\"\n class=\"option keyboardSelectable onTheFlyOption\"\n >\n <span class=\"newEntryContent\">\n {{ newOptionLabel }}\n </span>\n <lx-badge class=\"lx-margin-left\" size=\"small\" [content]=\"'common.new' | translate | uppercase\"></lx-badge>\n </li>\n <li\n *ngIf=\"showCreateNewOption\"\n lxSelectableItem\n [scrollInContainer]=\"keyboardSelectContainer\"\n #item\n (click)=\"onCreateNewOptionSelected()\"\n (select)=\"onCreateNewOptionSelected()\"\n [class.selected]=\"isItemSelected(item, (selectedItem$ | async)?.element)\"\n class=\"option keyboardSelectable newEntryOption\"\n >\n <span class=\"newEntryContent\">\n <ng-container *ngIf=\"createNewOptionTemplateRef; else defaultNewOption\">\n <ng-container *ngTemplateOutlet=\"createNewOptionTemplateRef\"></ng-container>\n </ng-container>\n <ng-template #defaultNewOption>\n <span>\n {{ NAME + '.new' | translate }}\n </span>\n </ng-template>\n </span>\n </li>\n <li\n *ngIf=\"options?.length === 0 && !newOptionLabel && !loading\"\n lxSelectableItem\n [scrollInContainer]=\"keyboardSelectContainer\"\n #item\n [class.selected]=\"isItemSelected(item, (selectedItem$ | async)?.element)\"\n class=\"option keyboardSelectable noOptionsAvailable\"\n >\n {{ NAME + '.noResults' | translate }}\n </li>\n <li\n *ngIf=\"placeholder\"\n class=\"option keyboardSelectable clearSelection\"\n lxSelectableItem\n [scrollInContainer]=\"keyboardSelectContainer\"\n #item\n (click)=\"selectOption(null)\"\n (select)=\"selectOption(null)\"\n [class.selected]=\"isItemSelected(item, (selectedItem$ | async)?.element)\"\n >\n {{ placeholder }}\n </li>\n <li\n *ngFor=\"let option of options; let index = index; trackBy: trackByProp(itemKey)\"\n lxSelectableItem\n [scrollInContainer]=\"keyboardSelectContainer\"\n #item\n class=\"option keyboardSelectable\"\n (click)=\"selectOption(option)\"\n (select)=\"selectOption(option)\"\n [class.selected]=\"isItemSelected(item, (selectedItem$ | async)?.element)\"\n [class.initiallySelected]=\"index === initiallySelectedIndex\"\n [class.disabledItem]=\"itemKey ? !!disabledOptions[option[itemKey]] : false\"\n >\n <ng-container *ngIf=\"optionTemplateRef; else simpleStringDisplay\">\n <ng-container *ngTemplateOutlet=\"optionTemplateRef; context: { $implicit: option, index: index }\"></ng-container>\n </ng-container>\n <ng-template #simpleStringDisplay>\n <span>\n {{ labelKey ? option[labelKey] : option }}\n </span>\n </ng-template>\n </li>\n <lx-spinner *ngIf=\"loading\" [fadeBackground]=\"true\"></lx-spinner>\n</ul>\n", styles: [":host(.noOptionPadding) .options .option{padding:0}.defaultPadding .newEntryOption,.defaultPadding .onTheFlyOption,.defaultPadding .noOptionsAvailable{padding:4px 12px!important}.narrowPadding .newEntryOption,.narrowPadding .onTheFlyOption,.narrowPadding .noOptionsAvailable{padding:4px!important}.options{list-style:none;margin:0;padding:0;overflow-y:auto;max-height:250px}.options.defaultPadding .option{padding:4px 12px}.options.narrowPadding .option{padding:4px}.optionSearch{padding:2px}.option{cursor:pointer;display:block}.option:hover:not(.disabledItem){background-color:#e1e5eb!important}.option.selected{background:#eaedf1}.option.initiallySelected{color:var(--lx-primarybutton-backgroundcolor)}.option.disabledItem{cursor:default;opacity:.5}\n"] }]
|
68
|
+
}], propDecorators: { options: [{
|
69
|
+
type: Input
|
70
|
+
}], initiallySelectedIndex: [{
|
71
|
+
type: Input
|
72
|
+
}], labelKey: [{
|
73
|
+
type: Input
|
74
|
+
}], itemKey: [{
|
75
|
+
type: Input
|
76
|
+
}], placeholder: [{
|
77
|
+
type: Input
|
78
|
+
}], loading: [{
|
79
|
+
type: Input
|
80
|
+
}], newOptionLabel: [{
|
81
|
+
type: Input
|
82
|
+
}], padding: [{
|
83
|
+
type: Input
|
84
|
+
}], showCreateNewOption: [{
|
85
|
+
type: Input
|
86
|
+
}], disabledOptions: [{
|
87
|
+
type: Input
|
88
|
+
}], onItemSelected: [{
|
89
|
+
type: Output
|
90
|
+
}], triggerRequestForMoreEntries: [{
|
91
|
+
type: Output
|
92
|
+
}], newOptionLabelSelected: [{
|
93
|
+
type: Output
|
94
|
+
}], createNewOptionSelected: [{
|
95
|
+
type: Output
|
96
|
+
}], optionTemplateRef: [{
|
97
|
+
type: ContentChild,
|
98
|
+
args: ['optionTemplate']
|
99
|
+
}], createNewOptionTemplateRef: [{
|
100
|
+
type: ContentChild,
|
101
|
+
args: ['createNewOptionTemplate']
|
102
|
+
}] } });
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMtZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvZm9ybXMtdWkvY29tcG9uZW50cy9iYXNpYy1kcm9wZG93bi9iYXNpYy1kcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2Jhc2ljLWRyb3Bkb3duL2Jhc2ljLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUMxSSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFbkQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7Ozs7O0FBUXZFLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSx1QkFBdUI7SUFObkU7O1FBa0JXLFNBQUksR0FBRyx3QkFBd0IsQ0FBQztRQUVoQyxZQUFPLEdBQVUsRUFBRSxDQUFDO1FBQ3BCLDJCQUFzQixHQUFXLENBQUMsQ0FBQyxDQUFDO1FBSXBDLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFFekIsWUFBTyxHQUF5QixTQUFTLENBQUM7UUFDMUMsd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBRTVCLG9CQUFlLEdBQStCLEVBQUUsQ0FBQztRQUVoRCxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDekMsaUNBQTRCLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUN4RCwyQkFBc0IsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3BELDRCQUF1QixH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IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpc0VxdWFsLCBzb21lLCB0b0xvd2VyIH0gZnJvbSAnbG9kYXNoL2ZwJztcbmltcG9ydCB7IFNpbmdsZVNlbGVjdFBhZGRpbmcgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2luZ2xlLXNlbGVjdC1wYWRkaW5nLmludGVyZmFjZSc7XG5pbXBvcnQgeyBLZXlib2FyZFNlbGVjdERpcmVjdGl2ZSB9IGZyb20gJy4uL2tleWJvYXJkLXNlbGVjdC5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdseC1iYXNpYy1kcm9wZG93bicsXG4gIHRlbXBsYXRlVXJsOiAnYmFzaWMtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnYmFzaWMtZHJvcGRvd24uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQmFzaWNEcm9wZG93bkNvbXBvbmVudCBleHRlbmRzIEtleWJvYXJkU2VsZWN0RGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIHB1YmxpYyBzdGF0aWMgaXNOZXdJdGVtKGl0ZW1zOiBhbnlbXSwgdGVybTogc3RyaW5nLCBrZXk/OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBpZiAoIXRlcm0pIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgY29uc3QgaXNFcXVhbElnbm9yaW5nQ2FzZSA9IChpdGVtOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0ga2V5ID8gaXRlbVtrZXldIDogaXRlbTtcbiAgICAgIHJldHVybiBpc0VxdWFsKHRvTG93ZXIodmFsdWUpLCB0b0xvd2VyKHRlcm0pKTtcbiAgICB9O1xuICAgIHJldHVybiAhc29tZShpc0VxdWFsSWdub3JpbmdDYXNlLCBpdGVtcyk7XG4gIH1cblxuICByZWFkb25seSBOQU1FID0gJ0Jhc2ljRHJvcGRvd25Db21wb25lbnQnO1xuXG4gIEBJbnB1dCgpIG9wdGlvbnM6IGFueVtdID0gW107XG4gIEBJbnB1dCgpIGluaXRpYWxseVNlbGVjdGVkSW5kZXg6IG51bWJlciA9IC0xO1xuICBASW5wdXQoKSBsYWJlbEtleT86IHN0cmluZztcbiAgQElucHV0KCkgaXRlbUtleT86IHN0cmluZztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGxvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgbmV3T3B0aW9uTGFiZWwhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHBhZGRpbmc/OiBTaW5nbGVTZWxlY3RQYWRkaW5nID0gJ2RlZmF1bHQnO1xuICBASW5wdXQoKSBzaG93Q3JlYXRlTmV3T3B0aW9uID0gZmFsc2U7XG5cbiAgQElucHV0KCkgZGlzYWJsZWRPcHRpb25zOiB7IFtpdGVtS2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuXG4gIEBPdXRwdXQoKSBvbkl0ZW1TZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgdHJpZ2dlclJlcXVlc3RGb3JNb3JlRW50cmllcyA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIG5ld09wdGlvbkxhYmVsU2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcbiAgQE91dHB1dCgpIGNyZWF0ZU5ld09wdGlvblNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBDb250ZW50Q2hpbGQoJ29wdGlvblRlbXBsYXRlJykgb3B0aW9uVGVtcGxhdGVSZWYhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBAQ29udGVudENoaWxkKCdjcmVhdGVOZXdPcHRpb25UZW1wbGF0ZScpIGNyZWF0ZU5ld09wdGlvblRlbXBsYXRlUmVmITogVGVtcGxhdGVSZWY8YW55PjtcblxuICBzZWxlY3RPcHRpb24ob3B0aW9uOiBhbnkpIHtcbiAgICBpZiAoIW9wdGlvbiB8fCAhdGhpcy5pdGVtS2V5KSB7XG4gICAgICB0aGlzLm9uSXRlbVNlbGVjdGVkLmVtaXQob3B0aW9uKTtcbiAgICB9IGVsc2UgaWYgKCF0aGlzLmRpc2FibGVkT3B0aW9uc1tvcHRpb25bdGhpcy5pdGVtS2V5XV0pIHtcbiAgICAgIHRoaXMub25JdGVtU2VsZWN0ZWQuZW1pdChvcHRpb24pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNOZXdJdGVtKCkge1xuICAgIHJldHVybiBCYXNpY0Ryb3Bkb3duQ29tcG9uZW50LmlzTmV3SXRlbSh0aGlzLm9wdGlvbnMsIHRoaXMubmV3T3B0aW9uTGFiZWwsIHRoaXMubGFiZWxLZXkpO1xuICB9XG5cbiAgcHVibGljIHRyYWNrQnlQcm9wKHByb3A/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gKGluZGV4OiBudW1iZXIsIHBpbGw6IGFueSkgPT4gKHByb3AgPyBwaWxsW3Byb3BdIDogaW5kZXgpO1xuICB9XG5cbiAgcHVibGljIG9uU2Nyb2xsKCkge1xuICAgIHRoaXMudHJpZ2dlclJlcXVlc3RGb3JNb3JlRW50cmllcy5lbWl0KCk7XG4gIH1cblxuICBwdWJsaWMgb25OZXdJdGVtU2VsZWN0ZWQoKSB7XG4gICAgaWYgKCF0aGlzLmxvYWRpbmcpIHtcbiAgICAgIHRoaXMuc2VsZWN0T3B0aW9uKG51bGwpO1xuICAgICAgdGhpcy5uZXdPcHRpb25MYWJlbFNlbGVjdGVkLmVtaXQodGhpcy5uZXdPcHRpb25MYWJlbCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uQ3JlYXRlTmV3T3B0aW9uU2VsZWN0ZWQoKSB7XG4gICAgdGhpcy5jcmVhdGVOZXdPcHRpb25TZWxlY3RlZC5lbWl0KCk7XG4gIH1cbn1cbiIsIjx1bFxuICBjbGFzcz1cIm9wdGlvbnMge3sgcGFkZGluZyB9fVBhZGRpbmcgbHhUaGluU2Nyb2xsYmFyXCJcbiAgI2tleWJvYXJkU2VsZWN0Q29udGFpbmVyXG4gIGluZmluaXRlLXNjcm9sbFxuICBbc2Nyb2xsV2luZG93XT1cImZhbHNlXCJcbiAgW2Zyb21Sb290XT1cInRydWVcIlxuICAoc2Nyb2xsZWQpPVwib25TY3JvbGwoKVwiXG4+XG4gIDxsaVxuICAgICpuZ0lmPVwibmV3T3B0aW9uTGFiZWwgJiYgaXNOZXdJdGVtXCJcbiAgICBseFNlbGVjdGFibGVJdGVtXG4gICAgW3Njcm9sbEluQ29udGFpbmVyXT1cImtleWJvYXJkU2VsZWN0Q29udGFpbmVyXCJcbiAgICAjaXRlbVxuICAgIChjbGljayk9XCJvbk5ld0l0ZW1TZWxlY3RlZCgpXCJcbiAgICAoc2VsZWN0KT1cIm9uTmV3SXRlbVNlbGVjdGVkKClcIlxuICAgIFtjbGFzcy5zZWxlY3RlZF09XCJpc0l0ZW1TZWxlY3RlZChpdGVtLCAoc2VsZWN0ZWRJdGVtJCB8IGFzeW5jKT8uZWxlbWVudClcIlxuICAgIGNsYXNzPVwib3B0aW9uIGtleWJvYXJkU2VsZWN0YWJsZSBvblRoZUZseU9wdGlvblwiXG4gID5cbiAgICA8c3BhbiBjbGFzcz1cIm5ld0VudHJ5Q29udGVudFwiPlxuICAgICAge3sgbmV3T3B0aW9uTGFiZWwgfX1cbiAgICA8L3NwYW4+XG4gICAgPGx4LWJhZGdlIGNsYXNzPVwibHgtbWFyZ2luLWxlZnRcIiBzaXplPVwic21hbGxcIiBbY29udGVudF09XCInY29tbW9uLm5ldycgfCB0cmFuc2xhdGUgfCB1cHBlcmNhc2VcIj48L2x4LWJhZGdlPlxuICA8L2xpPlxuICA8bGlcbiAgICAqbmdJZj1cInNob3dDcmVhdGVOZXdPcHRpb25cIlxuICAgIGx4U2VsZWN0YWJsZUl0ZW1cbiAgICBbc2Nyb2xsSW5Db250YWluZXJdPVwia2V5Ym9hcmRTZWxlY3RDb250YWluZXJcIlxuICAgICNpdGVtXG4gICAgKGNsaWNrKT1cIm9uQ3JlYXRlTmV3T3B0aW9uU2VsZWN0ZWQoKVwiXG4gICAgKHNlbGVjdCk9XCJvbkNyZWF0ZU5ld09wdGlvblNlbGVjdGVkKClcIlxuICAgIFtjbGFzcy5zZWxlY3RlZF09XCJpc0l0ZW1TZWxlY3RlZChpdGVtLCAoc2VsZWN0ZWRJdGVtJCB8IGFzeW5jKT8uZWxlbWVudClcIlxuICAgIGNsYXNzPVwib3B0aW9uIGtleWJvYXJkU2VsZWN0YWJsZSBuZXdFbnRyeU9wdGlvblwiXG4gID5cbiAgICA8c3BhbiBjbGFzcz1cIm5ld0VudHJ5Q29udGVudFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNyZWF0ZU5ld09wdGlvblRlbXBsYXRlUmVmOyBlbHNlIGRlZmF1bHROZXdPcHRpb25cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNyZWF0ZU5ld09wdGlvblRlbXBsYXRlUmVmXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdE5ld09wdGlvbj5cbiAgICAgICAgPHNwYW4+XG4gICAgICAgICAge3sgTkFNRSArICcubmV3JyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvc3Bhbj5cbiAgPC9saT5cbiAgPGxpXG4gICAgKm5nSWY9XCJvcHRpb25zPy5sZW5ndGggPT09IDAgJiYgIW5ld09wdGlvbkxhYmVsICYmICFsb2FkaW5nXCJcbiAgICBseFNlbGVjdGFibGVJdGVtXG4gICAgW3Njcm9sbEluQ29udGFpbmVyXT1cImtleWJvYXJkU2VsZWN0Q29udGFpbmVyXCJcbiAgICAjaXRlbVxuICAgIFtjbGFzcy5zZWxlY3RlZF09XCJpc0l0ZW1TZWxlY3RlZChpdGVtLCAoc2VsZWN0ZWRJdGVtJCB8IGFzeW5jKT8uZWxlbWVudClcIlxuICAgIGNsYXNzPVwib3B0aW9uIGtleWJvYXJkU2VsZWN0YWJsZSBub09wdGlvbnNBdmFpbGFibGVcIlxuICA+XG4gICAge3sgTkFNRSArICcubm9SZXN1bHRzJyB8IHRyYW5zbGF0ZSB9fVxuICA8L2xpPlxuICA8bGlcbiAgICAqbmdJZj1cInBsYWNlaG9sZGVyXCJcbiAgICBjbGFzcz1cIm9wdGlvbiBrZXlib2FyZFNlbGVjdGFibGUgY2xlYXJTZWxlY3Rpb25cIlxuICAgIGx4U2VsZWN0YWJsZUl0ZW1cbiAgICBbc2Nyb2xsSW5Db250YWluZXJdPVwia2V5Ym9hcmRTZWxlY3RDb250YWluZXJcIlxuICAgICNpdGVtXG4gICAgKGNsaWNrKT1cInNlbGVjdE9wdGlvbihudWxsKVwiXG4gICAgKHNlbGVjdCk9XCJzZWxlY3RPcHRpb24obnVsbClcIlxuICAgIFtjbGFzcy5zZWxlY3RlZF09XCJpc0l0ZW1TZWxlY3RlZChpdGVtLCAoc2VsZWN0ZWRJdGVtJCB8IGFzeW5jKT8uZWxlbWVudClcIlxuICA+XG4gICAge3sgcGxhY2Vob2xkZXIgfX1cbiAgPC9saT5cbiAgPGxpXG4gICAgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBvcHRpb25zOyBsZXQgaW5kZXggPSBpbmRleDsgdHJhY2tCeTogdHJhY2tCeVByb3AoaXRlbUtleSlcIlxuICAgIGx4U2VsZWN0YWJsZUl0ZW1cbiAgICBbc2Nyb2xsSW5Db250YWluZXJdPVwia2V5Ym9hcmRTZWxlY3RDb250YWluZXJcIlxuICAgICNpdGVtXG4gICAgY2xhc3M9XCJvcHRpb24ga2V5Ym9hcmRTZWxlY3RhYmxlXCJcbiAgICAoY2xpY2spPVwic2VsZWN0T3B0aW9uKG9wdGlvbilcIlxuICAgIChzZWxlY3QpPVwic2VsZWN0T3B0aW9uKG9wdGlvbilcIlxuICAgIFtjbGFzcy5zZWxlY3RlZF09XCJpc0l0ZW1TZWxlY3RlZChpdGVtLCAoc2VsZWN0ZWRJdGVtJCB8IGFzeW5jKT8uZWxlbWVudClcIlxuICAgIFtjbGFzcy5pbml0aWFsbHlTZWxlY3RlZF09XCJpbmRleCA9PT0gaW5pdGlhbGx5U2VsZWN0ZWRJbmRleFwiXG4gICAgW2NsYXNzLmRpc2FibGVkSXRlbV09XCJpdGVtS2V5ID8gISFkaXNhYmxlZE9wdGlvbnNbb3B0aW9uW2l0ZW1LZXldXSA6IGZhbHNlXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb25UZW1wbGF0ZVJlZjsgZWxzZSBzaW1wbGVTdHJpbmdEaXNwbGF5XCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwib3B0aW9uVGVtcGxhdGVSZWY7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBvcHRpb24sIGluZGV4OiBpbmRleCB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNzaW1wbGVTdHJpbmdEaXNwbGF5PlxuICAgICAgPHNwYW4+XG4gICAgICAgIHt7IGxhYmVsS2V5ID8gb3B0aW9uW2xhYmVsS2V5XSA6IG9wdGlvbiB9fVxuICAgICAgPC9zcGFuPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbGk+XG4gIDxseC1zcGlubmVyICpuZ0lmPVwibG9hZGluZ1wiIFtmYWRlQmFja2dyb3VuZF09XCJ0cnVlXCI+PC9seC1zcGlubmVyPlxuPC91bD5cbiJdfQ==
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "../../../core-ui/directives/html.directive";
|
4
|
+
import * as i2 from "../../../core-ui/pipes/highlight-term.pipe";
|
5
|
+
export class BasicDropdownItemComponent {
|
6
|
+
constructor() {
|
7
|
+
this.labelFontWeight = 'bold';
|
8
|
+
this.descriptionFontStyle = 'normal';
|
9
|
+
}
|
10
|
+
get hasDescription() {
|
11
|
+
return !!this.description;
|
12
|
+
}
|
13
|
+
}
|
14
|
+
BasicDropdownItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: BasicDropdownItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
15
|
+
BasicDropdownItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: BasicDropdownItemComponent, selector: "lx-basic-dropdown-item", inputs: { label: "label", description: "description", highlightTerm: "highlightTerm", labelFontWeight: "labelFontWeight", descriptionFontStyle: "descriptionFontStyle" }, host: { properties: { "class.hasDescription": "this.hasDescription" } }, ngImport: i0, template: "<div [class.boldLabel]=\"labelFontWeight === 'bold'\" [lxHtml]=\"label | lxHighlightTerm: highlightTerm\"></div>\n<div class=\"optionDescription\" [style.font-style]=\"descriptionFontStyle\">\n {{ description }}\n</div>\n", styles: [":host{display:block;padding:2px 0}:host.hasDescription{padding:4px 0}.boldLabel{font-weight:700}.optionDescription{padding-top:2px;color:#677a9a;font-size:11px}\n"], directives: [{ type: i1.HtmlDirective, selector: "[lxHtml]", inputs: ["lxHtml"] }], pipes: { "lxHighlightTerm": i2.HighlightTermPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: BasicDropdownItemComponent, decorators: [{
|
17
|
+
type: Component,
|
18
|
+
args: [{ selector: 'lx-basic-dropdown-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [class.boldLabel]=\"labelFontWeight === 'bold'\" [lxHtml]=\"label | lxHighlightTerm: highlightTerm\"></div>\n<div class=\"optionDescription\" [style.font-style]=\"descriptionFontStyle\">\n {{ description }}\n</div>\n", styles: [":host{display:block;padding:2px 0}:host.hasDescription{padding:4px 0}.boldLabel{font-weight:700}.optionDescription{padding-top:2px;color:#677a9a;font-size:11px}\n"] }]
|
19
|
+
}], propDecorators: { label: [{
|
20
|
+
type: Input
|
21
|
+
}], description: [{
|
22
|
+
type: Input
|
23
|
+
}], highlightTerm: [{
|
24
|
+
type: Input
|
25
|
+
}], labelFontWeight: [{
|
26
|
+
type: Input
|
27
|
+
}], descriptionFontStyle: [{
|
28
|
+
type: Input
|
29
|
+
}], hasDescription: [{
|
30
|
+
type: HostBinding,
|
31
|
+
args: ['class.hasDescription']
|
32
|
+
}] } });
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWMtZHJvcGRvd24taXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2Jhc2ljLWRyb3Bkb3duLWl0ZW0vYmFzaWMtZHJvcGRvd24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy11aS9jb21wb25lbnRzL2Jhc2ljLWRyb3Bkb3duLWl0ZW0vYmFzaWMtZHJvcGRvd24taXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFRdkYsTUFBTSxPQUFPLDBCQUEwQjtJQU52QztRQVVXLG9CQUFlLEdBQXNCLE1BQU0sQ0FBQztRQUM1Qyx5QkFBb0IsR0FBd0IsUUFBUSxDQUFDO0tBSy9EO0lBSkMsSUFDSSxjQUFjO1FBQ2hCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQzs7dUhBVFUsMEJBQTBCOzJHQUExQiwwQkFBMEIsaVRDUnZDLGdPQUlBOzJGRElhLDBCQUEwQjtrQkFOdEMsU0FBUzsrQkFDRSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBRUYsY0FBYztzQkFEakIsV0FBVzt1QkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbHgtYmFzaWMtZHJvcGRvd24taXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnYmFzaWMtZHJvcGRvd24taXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydiYXNpYy1kcm9wZG93bi1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEJhc2ljRHJvcGRvd25JdGVtQ29tcG9uZW50IHtcbiAgQElucHV0KCkgbGFiZWwhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBASW5wdXQoKSBoaWdobGlnaHRUZXJtPzogc3RyaW5nO1xuICBASW5wdXQoKSBsYWJlbEZvbnRXZWlnaHQ6ICdib2xkJyB8ICdub3JtYWwnID0gJ2JvbGQnO1xuICBASW5wdXQoKSBkZXNjcmlwdGlvbkZvbnRTdHlsZTogJ2l0YWxpYycgfCAnbm9ybWFsJyA9ICdub3JtYWwnO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmhhc0Rlc2NyaXB0aW9uJylcbiAgZ2V0IGhhc0Rlc2NyaXB0aW9uKCkge1xuICAgIHJldHVybiAhIXRoaXMuZGVzY3JpcHRpb247XG4gIH1cbn1cbiIsIjxkaXYgW2NsYXNzLmJvbGRMYWJlbF09XCJsYWJlbEZvbnRXZWlnaHQgPT09ICdib2xkJ1wiIFtseEh0bWxdPVwibGFiZWwgfCBseEhpZ2hsaWdodFRlcm06IGhpZ2hsaWdodFRlcm1cIj48L2Rpdj5cbjxkaXYgY2xhc3M9XCJvcHRpb25EZXNjcmlwdGlvblwiIFtzdHlsZS5mb250LXN0eWxlXT1cImRlc2NyaXB0aW9uRm9udFN0eWxlXCI+XG4gIHt7IGRlc2NyaXB0aW9uIH19XG48L2Rpdj5cbiJdfQ==
|