@datarailsshared/datarailsshared 1.4.201-rocket → 1.4.202
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_datarailsshared.styles.css +4 -4
- package/assets/styles/_styles.scss +2 -2
- package/assets/styles/mixins.scss +7 -0
- package/bundles/datarailsshared-datarailsshared.umd.js +8041 -0
- package/bundles/datarailsshared-datarailsshared.umd.js.map +1 -0
- package/datarailsshared-datarailsshared-1.4.202.tgz +0 -0
- package/datarailsshared-datarailsshared.d.ts +34 -0
- package/datarailsshared-datarailsshared.metadata.json +1 -0
- package/esm2015/datarailsshared-datarailsshared.js +35 -0
- package/esm2015/lib/date-tags/date-tag.component.js +73 -0
- package/esm2015/lib/date-tags/date-tag.module.js +36 -0
- package/esm2015/lib/date-tags/day-tag/day-tag.component.js +77 -0
- package/esm2015/lib/date-tags/forecast-tag/forecast-tag.component.js +153 -0
- package/esm2015/lib/date-tags/month-tag/month-tag.component.js +80 -0
- package/esm2015/lib/date-tags/quarter-tag/quarter-tag.component.js +105 -0
- package/esm2015/lib/date-tags/week-tag/week-tag.component.js +84 -0
- package/esm2015/lib/date-tags/year-tag/year-tag.component.js +78 -0
- package/esm2015/lib/dr-accordion/accordion-item-body.component.js +55 -0
- package/esm2015/lib/dr-accordion/accordion-item-header.component.js +77 -0
- package/esm2015/lib/dr-accordion/accordion-item.component.js +123 -0
- package/esm2015/lib/dr-accordion/accordion.component.js +43 -0
- package/esm2015/lib/dr-accordion/accordion.module.js +23 -0
- package/esm2015/lib/dr-avatar/dr-avatar.component.js +44 -0
- package/esm2015/lib/dr-avatar/dr-avatar.module.js +26 -0
- package/esm2015/lib/dr-avatar/dr-avatar.pipe.js +16 -0
- package/esm2015/lib/dr-badge-status/dr-badge-status.component.js +25 -0
- package/esm2015/lib/dr-badge-status/dr-badge-status.module.js +20 -0
- package/esm2015/lib/dr-chat/chat.component.js +119 -0
- package/esm2015/lib/dr-chat/chat.module.js +41 -0
- package/esm2015/lib/dr-chat/dr-chat-form/chat-form.component.js +155 -0
- package/esm2015/lib/dr-chat/dr-chat-message/chat-message.component.js +71 -0
- package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.directive.js +49 -0
- package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.service.js +23 -0
- package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-file/chat-message-file.component.js +47 -0
- package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-text/chat-message-text.component.js +18 -0
- package/esm2015/lib/dr-chat/dr-chat-suggestions/chat-suggestions.component.js +87 -0
- package/esm2015/lib/dr-chat/dr-dot-flashing/dr-dot-flashing.component.js +15 -0
- package/esm2015/lib/dr-details-list/dr-details-list.component.js +65 -0
- package/esm2015/lib/dr-details-list/dr-details-list.module.js +16 -0
- package/esm2015/lib/dr-dialog/components/dialog-modal-wrapper/dialog-modal-wrapper.component.js +70 -0
- package/esm2015/lib/dr-dialog/components/dialog-wrapper/dialog-wrapper.component.js +92 -0
- package/esm2015/lib/dr-dialog/dialog.module.js +34 -0
- package/esm2015/lib/dr-dialog/interfaces/dialog-data.js +25 -0
- package/esm2015/lib/dr-dialog/services/dialog.service.js +78 -0
- package/esm2015/lib/dr-dropdown/dr-dropdown-item-show.pipe.js +12 -0
- package/esm2015/lib/dr-dropdown/dr-dropdown-position.directive.js +104 -0
- package/esm2015/lib/dr-dropdown/dr-dropdown.component.js +114 -0
- package/esm2015/lib/dr-dropdown/dr-dropdown.directive.js +104 -0
- package/esm2015/lib/dr-dropdown/dr-dropdown.module.js +34 -0
- package/esm2015/lib/dr-dropdown/dr-dropdown.service.js +24 -0
- package/esm2015/lib/dr-dynamic-tag/dr-dynamic-tag.component.js +103 -0
- package/esm2015/lib/dr-dynamic-tag/dr-dynamic-tag.module.js +19 -0
- package/esm2015/lib/dr-error/dr-error.component.js +64 -0
- package/esm2015/lib/dr-error/dr-error.module.js +22 -0
- package/esm2015/lib/dr-inputs/button/button.component.js +39 -0
- package/esm2015/lib/dr-inputs/checkbox/checkbox.component.js +65 -0
- package/esm2015/lib/dr-inputs/date-pickers/directives/dr-date-picker-format.directive.js +47 -0
- package/esm2015/lib/dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component.js +216 -0
- package/esm2015/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.js +180 -0
- package/esm2015/lib/dr-inputs/date-pickers/dr-date-picker_custom-header/dr-date-picker_custom-header.component.js +183 -0
- package/esm2015/lib/dr-inputs/date-pickers/dr-show-timeframe.pipe.js +12 -0
- package/esm2015/lib/dr-inputs/date-pickers/services/dr-date-picker.service.js +194 -0
- package/esm2015/lib/dr-inputs/dr-input/dr-input.component.js +194 -0
- package/esm2015/lib/dr-inputs/dr-inputs.module.js +66 -0
- package/esm2015/lib/dr-inputs/dr-model-debounce-change.directive.js +29 -0
- package/esm2015/lib/dr-inputs/dr-select/dr-select.component.js +119 -0
- package/esm2015/lib/dr-inputs/dr-select-add-item/dr-select-add-item.component.js +74 -0
- package/esm2015/lib/dr-inputs/dr-toggle/dr-toggle.component.js +68 -0
- package/esm2015/lib/dr-inputs/dr-toggle-button/dr-toggle-button.component.js +63 -0
- package/esm2015/lib/dr-inputs/radio-button/radio-button.component.js +73 -0
- package/esm2015/lib/dr-inputs/radio-button/radio-group.component.js +157 -0
- package/esm2015/lib/dr-layout/dr-layout-body.component.js +13 -0
- package/esm2015/lib/dr-layout/dr-layout-header.component.js +17 -0
- package/esm2015/lib/dr-layout/dr-layout.component.js +14 -0
- package/esm2015/lib/dr-layout/dr-layout.module.js +20 -0
- package/esm2015/lib/dr-popover/dr-popover.component.js +106 -0
- package/esm2015/lib/dr-popover/dr-popover.directive.js +84 -0
- package/esm2015/lib/dr-popover/dr-popover.module.js +23 -0
- package/esm2015/lib/dr-popover/dr-popover.service.js +106 -0
- package/esm2015/lib/dr-scenario/components/dr-scenario-configuration/dr-scenario-configuration.component.js +102 -0
- package/esm2015/lib/dr-scenario/components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component.js +74 -0
- package/esm2015/lib/dr-scenario/consts/scenario-tags-config.js +73 -0
- package/esm2015/lib/dr-scenario/dr-scenario.module.js +28 -0
- package/esm2015/lib/dr-scenario/services/scenario.service.js +167 -0
- package/esm2015/lib/dr-spinner/dr-spinner.component.js +18 -0
- package/esm2015/lib/dr-spinner/dr-spinner.directive.js +56 -0
- package/esm2015/lib/dr-spinner/dr-spinner.module.js +18 -0
- package/esm2015/lib/dr-tabs/dr-tab.component.js +26 -0
- package/esm2015/lib/dr-tabs/dr-tabs.component.js +35 -0
- package/esm2015/lib/dr-tabs/dr-tabs.module.js +32 -0
- package/esm2015/lib/dr-tags/dr-tag.component.js +177 -0
- package/esm2015/lib/dr-tags/dr-tag.module.js +24 -0
- package/esm2015/lib/dr-tooltip/components/tooltip-info/tooltip-info.component.js +19 -0
- package/esm2015/lib/dr-tooltip/components/tooltip-info-simple/tooltip-info-simple.component.js +18 -0
- package/esm2015/lib/dr-tooltip/components/tooltip-no-body/tooltip-no-body.component.js +20 -0
- package/esm2015/lib/dr-tooltip/components/tooltip-process-default/tooltip-process-default.component.js +34 -0
- package/esm2015/lib/dr-tooltip/dr-tooltip.component.js +40 -0
- package/esm2015/lib/dr-tooltip/dr-tooltip.directive.js +147 -0
- package/esm2015/lib/dr-tooltip/dr-tooltip.module.js +35 -0
- package/esm2015/lib/dr-treeview/components/treeview/treeview.component.js +210 -0
- package/esm2015/lib/dr-treeview/components/treeview-item/treeview-item.component.js +58 -0
- package/esm2015/lib/dr-treeview/dr-tree-view.module.js +38 -0
- package/esm2015/lib/dr-treeview/helpers/treeview-event-parser.js +97 -0
- package/esm2015/lib/dr-treeview/models/treeview-config.js +22 -0
- package/esm2015/lib/dr-treeview/models/treeview-i18n.js +42 -0
- package/esm2015/lib/dr-treeview/pipes/treeview.pipe.js +17 -0
- package/esm2015/lib/list-tags/list-tag.component.js +37 -0
- package/esm2015/lib/list-tags/list-tag.module.js +23 -0
- package/esm2015/lib/models/chat.js +36 -0
- package/{esm2022/lib/models/datePicker.mjs → esm2015/lib/models/datePicker.js} +1 -1
- package/esm2015/lib/models/popover.js +27 -0
- package/esm2015/lib/stepper/stepper.component.js +55 -0
- package/esm2015/lib/stepper/stepper.module.js +17 -0
- package/esm2015/lib/utils/dr-shared-utils.js +47 -0
- package/esm2015/public-api.js +93 -0
- package/fesm2015/datarailsshared-datarailsshared.js +6885 -0
- package/fesm2015/datarailsshared-datarailsshared.js.map +1 -0
- package/lib/date-tags/date-tag.component.d.ts +16 -4
- package/lib/date-tags/date-tag.module.d.ts +2 -19
- package/lib/date-tags/day-tag/day-tag.component.d.ts +1 -4
- package/lib/date-tags/forecast-tag/forecast-tag.component.d.ts +2 -5
- package/lib/date-tags/month-tag/month-tag.component.d.ts +1 -4
- package/lib/date-tags/quarter-tag/quarter-tag.component.d.ts +1 -4
- package/lib/date-tags/week-tag/week-tag.component.d.ts +1 -4
- package/lib/date-tags/year-tag/year-tag.component.d.ts +1 -4
- package/lib/dr-accordion/accordion-item-body.component.d.ts +0 -3
- package/lib/dr-accordion/accordion-item-header.component.d.ts +0 -3
- package/lib/dr-accordion/accordion-item.component.d.ts +0 -3
- package/lib/dr-accordion/accordion.component.d.ts +0 -3
- package/lib/dr-accordion/accordion.module.d.ts +0 -9
- package/lib/dr-avatar/dr-avatar.component.d.ts +0 -3
- package/lib/dr-avatar/dr-avatar.module.d.ts +0 -9
- package/lib/dr-avatar/dr-avatar.pipe.d.ts +0 -3
- package/lib/dr-badge-status/dr-badge-status.component.d.ts +0 -3
- package/lib/dr-badge-status/dr-badge-status.module.d.ts +0 -7
- package/lib/dr-chat/chat.component.d.ts +0 -3
- package/lib/dr-chat/chat.module.d.ts +0 -17
- package/lib/dr-chat/dr-chat-form/chat-form.component.d.ts +0 -3
- package/lib/dr-chat/dr-chat-message/chat-message.component.d.ts +0 -3
- package/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.directive.d.ts +0 -3
- package/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.service.d.ts +0 -3
- package/lib/dr-chat/dr-chat-message/dr-chat-message-file/chat-message-file.component.d.ts +0 -3
- package/lib/dr-chat/dr-chat-message/dr-chat-message-text/chat-message-text.component.d.ts +0 -3
- package/lib/dr-chat/dr-chat-suggestions/chat-suggestions.component.d.ts +0 -3
- package/lib/dr-chat/dr-dot-flashing/dr-dot-flashing.component.d.ts +0 -3
- package/lib/dr-details-list/dr-details-list.component.d.ts +0 -3
- package/lib/dr-details-list/dr-details-list.module.d.ts +0 -6
- package/lib/dr-dialog/components/dialog-modal-wrapper/dialog-modal-wrapper.component.d.ts +1 -4
- package/lib/dr-dialog/components/dialog-wrapper/dialog-wrapper.component.d.ts +2 -5
- package/lib/dr-dialog/dialog.module.d.ts +0 -12
- package/lib/dr-dialog/interfaces/dialog-data.d.ts +7 -7
- package/lib/dr-dialog/services/dialog.service.d.ts +1 -4
- package/lib/dr-dropdown/dr-dropdown-item-show.pipe.d.ts +0 -3
- package/lib/dr-dropdown/dr-dropdown-position.directive.d.ts +0 -3
- package/lib/dr-dropdown/dr-dropdown.component.d.ts +0 -3
- package/lib/dr-dropdown/dr-dropdown.directive.d.ts +0 -3
- package/lib/dr-dropdown/dr-dropdown.module.d.ts +0 -10
- package/lib/dr-dropdown/dr-dropdown.service.d.ts +0 -3
- package/lib/dr-dynamic-tag/dr-dynamic-tag.component.d.ts +0 -3
- package/lib/dr-dynamic-tag/dr-dynamic-tag.module.d.ts +0 -8
- package/lib/dr-error/dr-error.component.d.ts +0 -3
- package/lib/dr-error/dr-error.module.d.ts +0 -8
- package/lib/dr-inputs/button/button.component.d.ts +1 -4
- package/lib/dr-inputs/checkbox/checkbox.component.d.ts +0 -3
- package/lib/dr-inputs/date-pickers/directives/dr-date-picker-format.directive.d.ts +0 -3
- package/lib/dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component.d.ts +0 -3
- package/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.d.ts +0 -3
- package/lib/dr-inputs/date-pickers/dr-date-picker_custom-header/dr-date-picker_custom-header.component.d.ts +8 -4
- package/lib/dr-inputs/date-pickers/dr-show-timeframe.pipe.d.ts +2 -4
- package/lib/dr-inputs/date-pickers/services/dr-date-picker.service.d.ts +0 -3
- package/lib/dr-inputs/dr-input/dr-input.component.d.ts +0 -3
- package/lib/dr-inputs/dr-inputs.module.d.ts +0 -25
- package/lib/dr-inputs/dr-model-debounce-change.directive.d.ts +0 -3
- package/lib/dr-inputs/dr-select/dr-select.component.d.ts +0 -3
- package/lib/dr-inputs/dr-select-add-item/dr-select-add-item.component.d.ts +0 -3
- package/lib/dr-inputs/dr-toggle/dr-toggle.component.d.ts +0 -3
- package/lib/dr-inputs/dr-toggle-button/dr-toggle-button.component.d.ts +0 -3
- package/lib/dr-inputs/radio-button/radio-button.component.d.ts +0 -3
- package/lib/dr-inputs/radio-button/radio-group.component.d.ts +0 -3
- package/lib/dr-layout/dr-layout-body.component.d.ts +0 -3
- package/lib/dr-layout/dr-layout-header.component.d.ts +0 -3
- package/lib/dr-layout/dr-layout.component.d.ts +0 -3
- package/lib/dr-layout/dr-layout.module.d.ts +0 -8
- package/lib/dr-popover/dr-popover.component.d.ts +4 -8
- package/lib/dr-popover/dr-popover.directive.d.ts +0 -3
- package/lib/dr-popover/dr-popover.module.d.ts +0 -7
- package/lib/dr-popover/dr-popover.service.d.ts +0 -3
- package/lib/dr-scenario/components/dr-scenario-configuration/dr-scenario-configuration.component.d.ts +0 -3
- package/lib/dr-scenario/components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component.d.ts +0 -3
- package/lib/dr-scenario/dr-scenario.module.d.ts +0 -10
- package/lib/dr-scenario/interfaces/scenario.d.ts +3 -3
- package/lib/dr-scenario/services/scenario.service.d.ts +0 -3
- package/lib/dr-spinner/dr-spinner.component.d.ts +0 -3
- package/lib/dr-spinner/dr-spinner.directive.d.ts +0 -3
- package/lib/dr-spinner/dr-spinner.module.d.ts +0 -7
- package/lib/dr-tabs/dr-tab.component.d.ts +0 -3
- package/lib/dr-tabs/dr-tabs.component.d.ts +0 -3
- package/lib/dr-tabs/dr-tabs.module.d.ts +0 -11
- package/lib/dr-tags/dr-tag.component.d.ts +0 -3
- package/lib/dr-tags/dr-tag.module.d.ts +0 -9
- package/lib/dr-tooltip/components/tooltip-info/tooltip-info.component.d.ts +0 -3
- package/lib/dr-tooltip/components/tooltip-info-simple/tooltip-info-simple.component.d.ts +0 -3
- package/lib/dr-tooltip/components/tooltip-no-body/tooltip-no-body.component.d.ts +0 -3
- package/lib/dr-tooltip/components/tooltip-process-default/tooltip-process-default.component.d.ts +0 -3
- package/lib/dr-tooltip/dr-tooltip.component.d.ts +1 -4
- package/lib/dr-tooltip/dr-tooltip.directive.d.ts +0 -3
- package/lib/dr-tooltip/dr-tooltip.module.d.ts +0 -11
- package/lib/dr-tooltip/interfaces/tooltip-component-context.d.ts +1 -1
- package/lib/dr-treeview/components/treeview/treeview.component.d.ts +0 -3
- package/lib/dr-treeview/components/treeview-item/treeview-item.component.d.ts +0 -3
- package/lib/dr-treeview/dr-tree-view.module.d.ts +0 -9
- package/lib/dr-treeview/helpers/treeview-event-parser.d.ts +0 -9
- package/lib/dr-treeview/models/treeview-config.d.ts +0 -3
- package/lib/dr-treeview/models/treeview-i18n.d.ts +0 -5
- package/lib/dr-treeview/pipes/treeview.pipe.d.ts +0 -3
- package/lib/list-tags/list-tag.component.d.ts +0 -3
- package/lib/list-tags/list-tag.module.d.ts +0 -8
- package/lib/models/chat.d.ts +2 -2
- package/lib/models/datePicker.d.ts +3 -10
- package/lib/models/dropdown.d.ts +1 -1
- package/lib/models/popover.d.ts +1 -1
- package/lib/models/serverTags.d.ts +4 -4
- package/lib/stepper/interfaces/stepper.d.ts +1 -1
- package/lib/stepper/stepper.component.d.ts +0 -3
- package/lib/stepper/stepper.module.d.ts +0 -7
- package/package.json +15 -27
- package/public-api.d.ts +0 -27
- package/datarailsshared-datarailsshared-1.4.201-rocket.tgz +0 -0
- package/esm2022/datarailsshared-datarailsshared.mjs +0 -5
- package/esm2022/lib/date-tags/any-tag.component.mjs +0 -44
- package/esm2022/lib/date-tags/date-tag.component.mjs +0 -47
- package/esm2022/lib/date-tags/date-tag.module.mjs +0 -66
- package/esm2022/lib/date-tags/day-tag/day-tag.component.mjs +0 -82
- package/esm2022/lib/date-tags/forecast-tag/forecast-tag.component.mjs +0 -159
- package/esm2022/lib/date-tags/month-tag/month-tag.component.mjs +0 -87
- package/esm2022/lib/date-tags/quarter-tag/quarter-tag.component.mjs +0 -106
- package/esm2022/lib/date-tags/week-tag/week-tag.component.mjs +0 -89
- package/esm2022/lib/date-tags/year-tag/year-tag.component.mjs +0 -83
- package/esm2022/lib/directives/click-outside/click-outside.directive.mjs +0 -92
- package/esm2022/lib/directives/click-outside/click-outside.module.mjs +0 -18
- package/esm2022/lib/dr-accordion/accordion-item-body.component.mjs +0 -58
- package/esm2022/lib/dr-accordion/accordion-item-header.component.mjs +0 -108
- package/esm2022/lib/dr-accordion/accordion-item.component.mjs +0 -138
- package/esm2022/lib/dr-accordion/accordion.component.mjs +0 -42
- package/esm2022/lib/dr-accordion/accordion.module.mjs +0 -34
- package/esm2022/lib/dr-avatar/dr-avatar.component.mjs +0 -48
- package/esm2022/lib/dr-avatar/dr-avatar.module.mjs +0 -37
- package/esm2022/lib/dr-avatar/dr-avatar.pipe.mjs +0 -20
- package/esm2022/lib/dr-badge-status/dr-badge-status.component.mjs +0 -27
- package/esm2022/lib/dr-badge-status/dr-badge-status.module.mjs +0 -27
- package/esm2022/lib/dr-chat/chat.component.mjs +0 -138
- package/esm2022/lib/dr-chat/chat.module.mjs +0 -68
- package/esm2022/lib/dr-chat/dr-chat-form/chat-form.component.mjs +0 -168
- package/esm2022/lib/dr-chat/dr-chat-message/chat-message.component.mjs +0 -89
- package/esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.directive.mjs +0 -47
- package/esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.service.mjs +0 -26
- package/esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-file/chat-message-file.component.mjs +0 -49
- package/esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-text/chat-message-text.component.mjs +0 -17
- package/esm2022/lib/dr-chat/dr-chat-suggestions/chat-suggestions.component.mjs +0 -88
- package/esm2022/lib/dr-chat/dr-dot-flashing/dr-dot-flashing.component.mjs +0 -13
- package/esm2022/lib/dr-details-list/dr-details-list.component.mjs +0 -79
- package/esm2022/lib/dr-details-list/dr-details-list.module.mjs +0 -21
- package/esm2022/lib/dr-dialog/components/dialog-modal-wrapper/dialog-modal-wrapper.component.mjs +0 -76
- package/esm2022/lib/dr-dialog/components/dialog-wrapper/dialog-wrapper.component.mjs +0 -97
- package/esm2022/lib/dr-dialog/dialog.module.mjs +0 -51
- package/esm2022/lib/dr-dialog/interfaces/dialog-data.mjs +0 -25
- package/esm2022/lib/dr-dialog/services/dialog.service.mjs +0 -77
- package/esm2022/lib/dr-dropdown/dr-dropdown-item-show.pipe.mjs +0 -16
- package/esm2022/lib/dr-dropdown/dr-dropdown-position.directive.mjs +0 -104
- package/esm2022/lib/dr-dropdown/dr-dropdown.component.mjs +0 -116
- package/esm2022/lib/dr-dropdown/dr-dropdown.directive.mjs +0 -117
- package/esm2022/lib/dr-dropdown/dr-dropdown.module.mjs +0 -49
- package/esm2022/lib/dr-dropdown/dr-dropdown.service.mjs +0 -25
- package/esm2022/lib/dr-dynamic-tag/dr-dynamic-tag.component.mjs +0 -112
- package/esm2022/lib/dr-dynamic-tag/dr-dynamic-tag.module.mjs +0 -28
- package/esm2022/lib/dr-error/dr-error.component.mjs +0 -67
- package/esm2022/lib/dr-error/dr-error.module.mjs +0 -31
- package/esm2022/lib/dr-inputs/button/button.component.mjs +0 -66
- package/esm2022/lib/dr-inputs/checkbox/checkbox.component.mjs +0 -65
- package/esm2022/lib/dr-inputs/date-pickers/directives/dr-date-picker-format.directive.mjs +0 -64
- package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component.mjs +0 -226
- package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.mjs +0 -190
- package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker_custom-header/dr-date-picker_custom-header.component.mjs +0 -186
- package/esm2022/lib/dr-inputs/date-pickers/dr-show-timeframe.pipe.mjs +0 -16
- package/esm2022/lib/dr-inputs/date-pickers/services/dr-date-picker.service.mjs +0 -195
- package/esm2022/lib/dr-inputs/dr-input/dr-input.component.mjs +0 -218
- package/esm2022/lib/dr-inputs/dr-inputs.module.mjs +0 -108
- package/esm2022/lib/dr-inputs/dr-model-debounce-change.directive.mjs +0 -31
- package/esm2022/lib/dr-inputs/dr-select/dr-select.component.mjs +0 -159
- package/esm2022/lib/dr-inputs/dr-select-add-item/dr-select-add-item.component.mjs +0 -79
- package/esm2022/lib/dr-inputs/dr-toggle/dr-toggle.component.mjs +0 -72
- package/esm2022/lib/dr-inputs/dr-toggle-button/dr-toggle-button.component.mjs +0 -66
- package/esm2022/lib/dr-inputs/radio-button/radio-button.component.mjs +0 -78
- package/esm2022/lib/dr-inputs/radio-button/radio-group.component.mjs +0 -173
- package/esm2022/lib/dr-layout/dr-layout-body.component.mjs +0 -16
- package/esm2022/lib/dr-layout/dr-layout-header.component.mjs +0 -24
- package/esm2022/lib/dr-layout/dr-layout.component.mjs +0 -13
- package/esm2022/lib/dr-layout/dr-layout.module.mjs +0 -29
- package/esm2022/lib/dr-popover/dr-popover.component.mjs +0 -126
- package/esm2022/lib/dr-popover/dr-popover.directive.mjs +0 -110
- package/esm2022/lib/dr-popover/dr-popover.module.mjs +0 -30
- package/esm2022/lib/dr-popover/dr-popover.service.mjs +0 -107
- package/esm2022/lib/dr-scenario/components/dr-scenario-configuration/dr-scenario-configuration.component.mjs +0 -105
- package/esm2022/lib/dr-scenario/components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component.mjs +0 -83
- package/esm2022/lib/dr-scenario/consts/scenario-tags-config.mjs +0 -81
- package/esm2022/lib/dr-scenario/dr-scenario.module.mjs +0 -41
- package/esm2022/lib/dr-scenario/services/scenario.service.mjs +0 -165
- package/esm2022/lib/dr-spinner/dr-spinner.component.mjs +0 -17
- package/esm2022/lib/dr-spinner/dr-spinner.directive.mjs +0 -59
- package/esm2022/lib/dr-spinner/dr-spinner.module.mjs +0 -23
- package/esm2022/lib/dr-tabs/dr-tab.component.mjs +0 -37
- package/esm2022/lib/dr-tabs/dr-tabs.component.mjs +0 -47
- package/esm2022/lib/dr-tabs/dr-tabs.module.mjs +0 -49
- package/esm2022/lib/dr-tags/dr-tag.component.mjs +0 -188
- package/esm2022/lib/dr-tags/dr-tag.module.mjs +0 -35
- package/esm2022/lib/dr-tooltip/components/tooltip-info/tooltip-info.component.mjs +0 -18
- package/esm2022/lib/dr-tooltip/components/tooltip-info-simple/tooltip-info-simple.component.mjs +0 -16
- package/esm2022/lib/dr-tooltip/components/tooltip-no-body/tooltip-no-body.component.mjs +0 -18
- package/esm2022/lib/dr-tooltip/components/tooltip-process-default/tooltip-process-default.component.mjs +0 -19
- package/esm2022/lib/dr-tooltip/dr-tooltip.component.mjs +0 -48
- package/esm2022/lib/dr-tooltip/dr-tooltip.directive.mjs +0 -156
- package/esm2022/lib/dr-tooltip/dr-tooltip.module.mjs +0 -48
- package/esm2022/lib/dr-treeview/components/treeview/treeview.component.mjs +0 -215
- package/esm2022/lib/dr-treeview/components/treeview-item/treeview-item.component.mjs +0 -60
- package/esm2022/lib/dr-treeview/dr-tree-view.module.mjs +0 -48
- package/esm2022/lib/dr-treeview/helpers/treeview-event-parser.mjs +0 -106
- package/esm2022/lib/dr-treeview/models/treeview-config.mjs +0 -25
- package/esm2022/lib/dr-treeview/models/treeview-i18n.mjs +0 -47
- package/esm2022/lib/dr-treeview/pipes/treeview.pipe.mjs +0 -21
- package/esm2022/lib/list-tags/list-tag.component.mjs +0 -42
- package/esm2022/lib/list-tags/list-tag.module.mjs +0 -34
- package/esm2022/lib/models/chat.mjs +0 -36
- package/esm2022/lib/models/popover.mjs +0 -27
- package/esm2022/lib/stepper/stepper.component.mjs +0 -63
- package/esm2022/lib/stepper/stepper.module.mjs +0 -24
- package/esm2022/lib/utils/dr-shared-utils.mjs +0 -47
- package/esm2022/public-api.mjs +0 -120
- package/fesm2022/datarailsshared-datarailsshared.mjs +0 -7551
- package/fesm2022/datarailsshared-datarailsshared.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/lib/date-tags/any-tag.component.d.ts +0 -20
- package/lib/directives/click-outside/click-outside.directive.d.ts +0 -23
- package/lib/directives/click-outside/click-outside.module.d.ts +0 -8
- /package/{esm2022/lib/dr-inputs/dr-toggle-button/toggle-button-mode.mjs → esm2015/lib/dr-inputs/dr-toggle-button/toggle-button-mode.js} +0 -0
- /package/{esm2022/lib/dr-popover/dr-popover-ref.mjs → esm2015/lib/dr-popover/dr-popover-ref.js} +0 -0
- /package/{esm2022/lib/dr-scenario/interfaces/scenario.mjs → esm2015/lib/dr-scenario/interfaces/scenario.js} +0 -0
- /package/{esm2022/lib/dr-tooltip/enums/tooltip-position.enum.mjs → esm2015/lib/dr-tooltip/enums/tooltip-position.enum.js} +0 -0
- /package/{esm2022/lib/dr-tooltip/interfaces/tooltip-component-context.mjs → esm2015/lib/dr-tooltip/interfaces/tooltip-component-context.js} +0 -0
- /package/{esm2022/lib/dr-treeview/helpers/treeview-helper.mjs → esm2015/lib/dr-treeview/helpers/treeview-helper.js} +0 -0
- /package/{esm2022/lib/dr-treeview/models/treeview-header-template-context.mjs → esm2015/lib/dr-treeview/models/treeview-header-template-context.js} +0 -0
- /package/{esm2022/lib/dr-treeview/models/treeview-item-template-context.mjs → esm2015/lib/dr-treeview/models/treeview-item-template-context.js} +0 -0
- /package/{esm2022/lib/dr-treeview/models/treeview-item.mjs → esm2015/lib/dr-treeview/models/treeview-item.js} +0 -0
- /package/{esm2022/lib/models/badgeStatus.mjs → esm2015/lib/models/badgeStatus.js} +0 -0
- /package/{esm2022/lib/models/constants.mjs → esm2015/lib/models/constants.js} +0 -0
- /package/{esm2022/lib/models/dropdown.mjs → esm2015/lib/models/dropdown.js} +0 -0
- /package/{esm2022/lib/models/serverTags.mjs → esm2015/lib/models/serverTags.js} +0 -0
- /package/{esm2022/lib/models/spinnerOptions.mjs → esm2015/lib/models/spinnerOptions.js} +0 -0
- /package/{esm2022/lib/models/validationError.mjs → esm2015/lib/models/validationError.js} +0 -0
- /package/{esm2022/lib/stepper/interfaces/stepper.mjs → esm2015/lib/stepper/interfaces/stepper.js} +0 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { Directive, ElementRef, EventEmitter, HostListener, Input, Output, } from '@angular/core';
|
|
2
|
+
import { first } from 'rxjs/operators';
|
|
3
|
+
import { DrPopoverService } from './dr-popover.service';
|
|
4
|
+
export class DrPopoverDirective {
|
|
5
|
+
constructor(elementRef, drPopoverService) {
|
|
6
|
+
this.elementRef = elementRef;
|
|
7
|
+
this.drPopoverService = drPopoverService;
|
|
8
|
+
this.contentContext = {};
|
|
9
|
+
this.position = 'bottom';
|
|
10
|
+
this.class = '';
|
|
11
|
+
this.overlayConfig = {};
|
|
12
|
+
this.manualClosing = { enabled: false };
|
|
13
|
+
// eslint-disable-next-line
|
|
14
|
+
this.popoverClose = new EventEmitter();
|
|
15
|
+
this.popoverOpened = new EventEmitter();
|
|
16
|
+
// eslint-disable-next-line
|
|
17
|
+
this.showStateChange = new EventEmitter();
|
|
18
|
+
}
|
|
19
|
+
togglePopover() {
|
|
20
|
+
if (this.disabled)
|
|
21
|
+
return;
|
|
22
|
+
if (this.popoverRef) {
|
|
23
|
+
this.closePopover();
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
this.renderPopover();
|
|
27
|
+
this.showStateChange.emit({ isShown: !!this.popoverRef });
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
closePopover(res) {
|
|
31
|
+
if (this.popoverRef) {
|
|
32
|
+
this.popoverRef.close(res);
|
|
33
|
+
this.popoverRef = null;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
renderPopover() {
|
|
37
|
+
const popoverRef = this.popoverRef = this.drPopoverService.open(this.content, {
|
|
38
|
+
hostRef: this.elementRef,
|
|
39
|
+
overlayConfig: this.overlayConfig,
|
|
40
|
+
class: this.class,
|
|
41
|
+
manualClosing: this.manualClosing,
|
|
42
|
+
position: this.position,
|
|
43
|
+
contentContext: this.contentContext,
|
|
44
|
+
alignment: this.alignment,
|
|
45
|
+
freezeToContainerSelector: this.freezeToContainerSelector
|
|
46
|
+
});
|
|
47
|
+
popoverRef.onClose.pipe(first()).subscribe((res) => {
|
|
48
|
+
this.closePopover();
|
|
49
|
+
this.popoverClose.emit(res);
|
|
50
|
+
this.showStateChange.emit({ isShown: !!this.popoverRef });
|
|
51
|
+
});
|
|
52
|
+
popoverRef.componentRef.instance.popoverOpened.pipe(first()).subscribe(() => {
|
|
53
|
+
this.popoverOpened.emit();
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
ngOnDestroy() {
|
|
57
|
+
this.closePopover();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
DrPopoverDirective.decorators = [
|
|
61
|
+
{ type: Directive, args: [{
|
|
62
|
+
selector: '[drPopover]'
|
|
63
|
+
},] }
|
|
64
|
+
];
|
|
65
|
+
DrPopoverDirective.ctorParameters = () => [
|
|
66
|
+
{ type: ElementRef },
|
|
67
|
+
{ type: DrPopoverService }
|
|
68
|
+
];
|
|
69
|
+
DrPopoverDirective.propDecorators = {
|
|
70
|
+
content: [{ type: Input, args: ['drPopover',] }],
|
|
71
|
+
contentContext: [{ type: Input, args: ['drPopoverContext',] }],
|
|
72
|
+
position: [{ type: Input, args: ['drPopoverPosition',] }],
|
|
73
|
+
class: [{ type: Input, args: ['drPopoverClass',] }],
|
|
74
|
+
overlayConfig: [{ type: Input, args: ['drPopoverOverlayConfig',] }],
|
|
75
|
+
manualClosing: [{ type: Input, args: ['drPopoverManualClosing',] }],
|
|
76
|
+
alignment: [{ type: Input, args: ['drPopoverAlignment',] }],
|
|
77
|
+
disabled: [{ type: Input, args: ['drPopoverDisabled',] }],
|
|
78
|
+
freezeToContainerSelector: [{ type: Input, args: ['drPopoverFreezeToContainerSelector',] }],
|
|
79
|
+
popoverClose: [{ type: Output, args: ['drPopoverClose',] }],
|
|
80
|
+
popoverOpened: [{ type: Output, args: ['drPopoverOpened',] }],
|
|
81
|
+
showStateChange: [{ type: Output, args: ['drPopoverShowStateChange',] }],
|
|
82
|
+
togglePopover: [{ type: HostListener, args: ['click',] }]
|
|
83
|
+
};
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItcG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1wb3BvdmVyL2RyLXBvcG92ZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sR0FHVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdkMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFNeEQsTUFBTSxPQUFPLGtCQUFrQjtJQThCM0IsWUFBb0IsVUFBc0IsRUFDdEIsZ0JBQWtDO1FBRGxDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTNCM0IsbUJBQWMsR0FBUSxFQUFFLENBQUM7UUFFeEIsYUFBUSxHQUFlLFFBQVEsQ0FBQztRQUVuQyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRUgsa0JBQWEsR0FBa0IsRUFBRSxDQUFDO1FBRWxDLGtCQUFhLEdBQTBCLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDO1FBUTNGLDJCQUEyQjtRQUNELGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUV0QyxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFFcEUsMkJBQTJCO1FBQ1Msb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBd0IsQ0FBQztJQU8vRixDQUFDO0lBR0QsYUFBYTtRQUNULElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBRTFCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNqQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDdkI7YUFBTTtZQUNILElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7U0FDN0Q7SUFDTCxDQUFDO0lBRUQsWUFBWSxDQUFDLEdBQVM7UUFDbEIsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzNCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1NBQzFCO0lBQ0wsQ0FBQztJQUVPLGFBQWE7UUFDakIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDMUUsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQ3hCLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2pDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7WUFDbkMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLHlCQUF5QixFQUFFLElBQUksQ0FBQyx5QkFBeUI7U0FDNUQsQ0FBQyxDQUFDO1FBRUgsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUMvQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQzlELENBQUMsQ0FBQyxDQUFDO1FBRUgsVUFBVSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDeEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7OztZQWxGSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLGFBQWE7YUFDMUI7OztZQWxCRyxVQUFVO1lBYUwsZ0JBQWdCOzs7c0JBUXBCLEtBQUssU0FBQyxXQUFXOzZCQUVqQixLQUFLLFNBQUMsa0JBQWtCO3VCQUV4QixLQUFLLFNBQUMsbUJBQW1CO29CQUV6QixLQUFLLFNBQUMsZ0JBQWdCOzRCQUV0QixLQUFLLFNBQUMsd0JBQXdCOzRCQUU5QixLQUFLLFNBQUMsd0JBQXdCO3dCQUU5QixLQUFLLFNBQUMsb0JBQW9CO3VCQUUxQixLQUFLLFNBQUMsbUJBQW1CO3dDQUV6QixLQUFLLFNBQUMsb0NBQW9DOzJCQUcxQyxNQUFNLFNBQUMsZ0JBQWdCOzRCQUV2QixNQUFNLFNBQUMsaUJBQWlCOzhCQUd4QixNQUFNLFNBQUMsMEJBQTBCOzRCQVNqQyxZQUFZLFNBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3V0cHV0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFR5cGUsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT3ZlcmxheUNvbmZpZyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRWxQb3NpdGlvbiB9IGZyb20gJy4vLi4vbW9kZWxzL2Ryb3Bkb3duJztcbmltcG9ydCB7IERyUG9wb3ZlclJlZiB9IGZyb20gJy4vZHItcG9wb3Zlci1yZWYnO1xuaW1wb3J0IHsgRHJQb3BvdmVyU2VydmljZSB9IGZyb20gJy4vZHItcG9wb3Zlci5zZXJ2aWNlJztcbmltcG9ydCB7IERyUG9wb3ZlckFsaWdubWVudCwgSVBvcG92ZXJNYW51YWxDbG9zaW5nIH0gZnJvbSAnLi4vbW9kZWxzL3BvcG92ZXInO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tkclBvcG92ZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBEclBvcG92ZXJEaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gICAgQElucHV0KCdkclBvcG92ZXInKSBjb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+IHwgVHlwZTxUPjtcblxuICAgIEBJbnB1dCgnZHJQb3BvdmVyQ29udGV4dCcpIGNvbnRlbnRDb250ZXh0OiBhbnkgPSB7fTtcblxuICAgIEBJbnB1dCgnZHJQb3BvdmVyUG9zaXRpb24nKSBwb3NpdGlvbjogRWxQb3NpdGlvbiA9ICdib3R0b20nO1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJDbGFzcycpIGNsYXNzID0gJyc7XG5cbiAgICBASW5wdXQoJ2RyUG9wb3Zlck92ZXJsYXlDb25maWcnKSBvdmVybGF5Q29uZmlnOiBPdmVybGF5Q29uZmlnID0ge307XG5cbiAgICBASW5wdXQoJ2RyUG9wb3Zlck1hbnVhbENsb3NpbmcnKSBtYW51YWxDbG9zaW5nOiBJUG9wb3Zlck1hbnVhbENsb3NpbmcgPSB7IGVuYWJsZWQ6IGZhbHNlIH07XG5cbiAgICBASW5wdXQoJ2RyUG9wb3ZlckFsaWdubWVudCcpIGFsaWdubWVudDogRHJQb3BvdmVyQWxpZ25tZW50O1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJEaXNhYmxlZCcpIGRpc2FibGVkOiBib29sZWFuO1xuXG4gICAgQElucHV0KCdkclBvcG92ZXJGcmVlemVUb0NvbnRhaW5lclNlbGVjdG9yJykgZnJlZXplVG9Db250YWluZXJTZWxlY3Rvcjogc3RyaW5nO1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgQE91dHB1dCgnZHJQb3BvdmVyQ2xvc2UnKSBwb3BvdmVyQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIEBPdXRwdXQoJ2RyUG9wb3Zlck9wZW5lZCcpIHBvcG92ZXJPcGVuZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICBAT3V0cHV0KCdkclBvcG92ZXJTaG93U3RhdGVDaGFuZ2UnKSBzaG93U3RhdGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHsgaXNTaG93bjogYm9vbGVhbiB9PigpO1xuXG4gICAgcHJpdmF0ZSBwb3BvdmVyUmVmOiBEclBvcG92ZXJSZWY8VD47XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBkclBvcG92ZXJTZXJ2aWNlOiBEclBvcG92ZXJTZXJ2aWNlLFxuICAgICkge1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICB0b2dnbGVQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xuXG4gICAgICAgIGlmICh0aGlzLnBvcG92ZXJSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnJlbmRlclBvcG92ZXIoKTtcbiAgICAgICAgICAgIHRoaXMuc2hvd1N0YXRlQ2hhbmdlLmVtaXQoeyBpc1Nob3duOiAhIXRoaXMucG9wb3ZlclJlZiB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNsb3NlUG9wb3ZlcihyZXM/OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMucG9wb3ZlclJlZikge1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyUmVmLmNsb3NlKHJlcyk7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJSZWYgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZW5kZXJQb3BvdmVyKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwb3BvdmVyUmVmID0gdGhpcy5wb3BvdmVyUmVmID0gdGhpcy5kclBvcG92ZXJTZXJ2aWNlLm9wZW4odGhpcy5jb250ZW50LCB7XG4gICAgICAgICAgICBob3N0UmVmOiB0aGlzLmVsZW1lbnRSZWYsXG4gICAgICAgICAgICBvdmVybGF5Q29uZmlnOiB0aGlzLm92ZXJsYXlDb25maWcsXG4gICAgICAgICAgICBjbGFzczogdGhpcy5jbGFzcyxcbiAgICAgICAgICAgIG1hbnVhbENsb3Npbmc6IHRoaXMubWFudWFsQ2xvc2luZyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiB0aGlzLnBvc2l0aW9uLFxuICAgICAgICAgICAgY29udGVudENvbnRleHQ6IHRoaXMuY29udGVudENvbnRleHQsXG4gICAgICAgICAgICBhbGlnbm1lbnQ6IHRoaXMuYWxpZ25tZW50LFxuICAgICAgICAgICAgZnJlZXplVG9Db250YWluZXJTZWxlY3RvcjogdGhpcy5mcmVlemVUb0NvbnRhaW5lclNlbGVjdG9yXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHBvcG92ZXJSZWYub25DbG9zZS5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyQ2xvc2UuZW1pdChyZXMpO1xuICAgICAgICAgICAgdGhpcy5zaG93U3RhdGVDaGFuZ2UuZW1pdCh7IGlzU2hvd246ICEhdGhpcy5wb3BvdmVyUmVmIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICBwb3BvdmVyUmVmLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5wb3BvdmVyT3BlbmVkLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucG9wb3Zlck9wZW5lZC5lbWl0KCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { DrPopoverDirective } from './dr-popover.directive';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { DrPopoverComponent } from './dr-popover.component';
|
|
5
|
+
export class DrPopoverModule {
|
|
6
|
+
}
|
|
7
|
+
DrPopoverModule.decorators = [
|
|
8
|
+
{ type: NgModule, args: [{
|
|
9
|
+
imports: [
|
|
10
|
+
CommonModule,
|
|
11
|
+
],
|
|
12
|
+
exports: [
|
|
13
|
+
DrPopoverDirective,
|
|
14
|
+
DrPopoverComponent,
|
|
15
|
+
],
|
|
16
|
+
providers: [],
|
|
17
|
+
declarations: [
|
|
18
|
+
DrPopoverDirective,
|
|
19
|
+
DrPopoverComponent,
|
|
20
|
+
],
|
|
21
|
+
},] }
|
|
22
|
+
];
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItcG9wb3Zlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1wb3BvdmVyL2RyLXBvcG92ZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBaUI1RCxNQUFNLE9BQU8sZUFBZTs7O1lBZjNCLFFBQVEsU0FBQztnQkFDTixPQUFPLEVBQUU7b0JBQ0wsWUFBWTtpQkFDZjtnQkFDRCxPQUFPLEVBQUU7b0JBQ0wsa0JBQWtCO29CQUNsQixrQkFBa0I7aUJBQ3JCO2dCQUNELFNBQVMsRUFBRSxFQUFFO2dCQUNiLFlBQVksRUFBRTtvQkFDVixrQkFBa0I7b0JBQ2xCLGtCQUFrQjtpQkFDckI7YUFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEclBvcG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RyLXBvcG92ZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEclBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL2RyLXBvcG92ZXIuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgRHJQb3BvdmVyRGlyZWN0aXZlLFxuICAgICAgICBEclBvcG92ZXJDb21wb25lbnQsXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBEclBvcG92ZXJEaXJlY3RpdmUsXG4gICAgICAgIERyUG9wb3ZlckNvbXBvbmVudCxcbiAgICBdLFxufSlcblxuZXhwb3J0IGNsYXNzIERyUG9wb3Zlck1vZHVsZSB7XG59XG4iXX0=
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { first } from 'rxjs/operators';
|
|
2
|
+
import { DrPopoverRef } from './dr-popover-ref';
|
|
3
|
+
import { DrPopoverComponent } from './dr-popover.component';
|
|
4
|
+
import { ComponentPortal } from '@angular/cdk/portal';
|
|
5
|
+
import { Injectable, Injector } from '@angular/core';
|
|
6
|
+
import { Overlay, OverlayConfig, OverlayPositionBuilder } from '@angular/cdk/overlay';
|
|
7
|
+
import { POPUP_POSITIONS } from '../models/constants';
|
|
8
|
+
import { DEFAULT_CONFIG, DEFAULT_MODEL, getAlignmentDimension } from '../models/popover';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@angular/cdk/overlay";
|
|
11
|
+
export class DrPopoverService {
|
|
12
|
+
constructor(overlay, overlayPositionBuilder, injector) {
|
|
13
|
+
this.overlay = overlay;
|
|
14
|
+
this.overlayPositionBuilder = overlayPositionBuilder;
|
|
15
|
+
this.injector = injector;
|
|
16
|
+
}
|
|
17
|
+
open(content, popoverModel) {
|
|
18
|
+
if (!content)
|
|
19
|
+
return;
|
|
20
|
+
const model = Object.assign(Object.assign({}, DEFAULT_MODEL), popoverModel);
|
|
21
|
+
const overlayRef = this.createOverlay(model);
|
|
22
|
+
const popoverRef = new DrPopoverRef(overlayRef);
|
|
23
|
+
this.attachOverlayContainer(content, model, overlayRef, popoverRef);
|
|
24
|
+
this.registerListeners(model, overlayRef, popoverRef);
|
|
25
|
+
return popoverRef;
|
|
26
|
+
}
|
|
27
|
+
attachOverlayContainer(content, { contentContext, position, class: elementClass, manualClosing, hostRef, alignment, freezeToContainerSelector }, overlayRef, popoverRef) {
|
|
28
|
+
const componentPortal = new ComponentPortal(DrPopoverComponent, null, this.createInjector(popoverRef));
|
|
29
|
+
const contentRef = overlayRef.attach(componentPortal);
|
|
30
|
+
popoverRef.componentRef = contentRef;
|
|
31
|
+
contentRef.instance.content = content;
|
|
32
|
+
contentRef.instance.contentContext = Object.assign(Object.assign({}, contentContext), { closePopover: popoverRef.close.bind(popoverRef) });
|
|
33
|
+
contentRef.instance.class = elementClass + ' ' + position;
|
|
34
|
+
contentRef.instance.manualClosing = manualClosing;
|
|
35
|
+
contentRef.instance.hostRef = hostRef;
|
|
36
|
+
contentRef.instance.alignment = alignment;
|
|
37
|
+
contentRef.instance.position = position;
|
|
38
|
+
contentRef.instance.freezeToContainerSelector = freezeToContainerSelector;
|
|
39
|
+
}
|
|
40
|
+
createOverlay(popoverModel) {
|
|
41
|
+
const overlayConfig = this.getOverlayConfig(popoverModel);
|
|
42
|
+
return this.overlay.create(overlayConfig);
|
|
43
|
+
}
|
|
44
|
+
getOverlayConfig(popoverModel) {
|
|
45
|
+
if (!POPUP_POSITIONS[popoverModel.position])
|
|
46
|
+
throw new Error(`DrPopover does not support the '${popoverModel === null || popoverModel === void 0 ? void 0 : popoverModel.position}' position!`);
|
|
47
|
+
const position = Object.assign({}, POPUP_POSITIONS[popoverModel.position]);
|
|
48
|
+
if (popoverModel.overlayConfig.noPadding) {
|
|
49
|
+
position.offsetY = 0;
|
|
50
|
+
position.offsetX = 0;
|
|
51
|
+
}
|
|
52
|
+
const config = Object.assign(Object.assign({}, DEFAULT_CONFIG), popoverModel.overlayConfig || {});
|
|
53
|
+
const hostElement = this.getHostElement(popoverModel.hostRef);
|
|
54
|
+
const positionStrategy = this.overlayPositionBuilder.flexibleConnectedTo(popoverModel.hostRef).withPositions([position]);
|
|
55
|
+
const overlayConfig = new OverlayConfig(Object.assign({ scrollStrategy: this.overlay.scrollStrategies.noop(), positionStrategy }, config));
|
|
56
|
+
if (popoverModel.alignment === 'host' && hostElement) {
|
|
57
|
+
const alignmentDimension = getAlignmentDimension(popoverModel.position);
|
|
58
|
+
overlayConfig[alignmentDimension] = hostElement.getBoundingClientRect()[alignmentDimension];
|
|
59
|
+
}
|
|
60
|
+
return overlayConfig;
|
|
61
|
+
}
|
|
62
|
+
createInjector(popoverRef) {
|
|
63
|
+
const injectionTokens = [
|
|
64
|
+
{ provide: DrPopoverRef, useValue: popoverRef },
|
|
65
|
+
];
|
|
66
|
+
return Injector.create({ providers: injectionTokens, parent: this.injector });
|
|
67
|
+
}
|
|
68
|
+
registerListeners(popoverModel, overlayRef, popoverRef) {
|
|
69
|
+
const config = popoverModel.overlayConfig || {};
|
|
70
|
+
const targetElement = popoverModel.targetElement;
|
|
71
|
+
const hostElement = this.getHostElement(popoverModel.hostRef);
|
|
72
|
+
if ((config === null || config === void 0 ? void 0 : config.closeOnBackdropClick) && (config === null || config === void 0 ? void 0 : config.hasBackdrop)) {
|
|
73
|
+
overlayRef.backdropClick().subscribe(() => popoverRef.close());
|
|
74
|
+
}
|
|
75
|
+
if (targetElement) {
|
|
76
|
+
targetElement.addEventListener('mouseup', () => popoverRef.close(), { once: true });
|
|
77
|
+
}
|
|
78
|
+
if (popoverModel.alignment === 'host' && hostElement) {
|
|
79
|
+
const alignmentDimension = getAlignmentDimension(popoverModel.position);
|
|
80
|
+
const resizeObserver = new ResizeObserver(entries => {
|
|
81
|
+
entries.forEach(host => overlayRef.updateSize({ [alignmentDimension]: host.target.getBoundingClientRect()[alignmentDimension] }));
|
|
82
|
+
});
|
|
83
|
+
resizeObserver.observe(hostElement);
|
|
84
|
+
popoverRef.onClose.pipe(first()).subscribe(() => resizeObserver.unobserve(hostElement));
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
getHostElement(hostRef) {
|
|
88
|
+
if (!hostRef || hostRef.x)
|
|
89
|
+
return null;
|
|
90
|
+
if (hostRef.nativeElement)
|
|
91
|
+
return hostRef.nativeElement;
|
|
92
|
+
return hostRef;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
DrPopoverService.ɵprov = i0.ɵɵdefineInjectable({ factory: function DrPopoverService_Factory() { return new DrPopoverService(i0.ɵɵinject(i1.Overlay), i0.ɵɵinject(i1.OverlayPositionBuilder), i0.ɵɵinject(i0.INJECTOR)); }, token: DrPopoverService, providedIn: "root" });
|
|
96
|
+
DrPopoverService.decorators = [
|
|
97
|
+
{ type: Injectable, args: [{
|
|
98
|
+
providedIn: 'root',
|
|
99
|
+
},] }
|
|
100
|
+
];
|
|
101
|
+
DrPopoverService.ctorParameters = () => [
|
|
102
|
+
{ type: Overlay },
|
|
103
|
+
{ type: OverlayPositionBuilder },
|
|
104
|
+
{ type: Injector }
|
|
105
|
+
];
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItcG9wb3Zlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItcG9wb3Zlci9kci1wb3BvdmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFjLFVBQVUsRUFBRSxRQUFRLEVBQXFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLHNCQUFzQixFQUFjLE1BQU0sc0JBQXNCLENBQUM7QUFDbEcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFDSCxjQUFjLEVBQ2QsYUFBYSxFQUNiLHFCQUFxQixFQUd4QixNQUFNLG1CQUFtQixDQUFDOzs7QUFLM0IsTUFBTSxPQUFPLGdCQUFnQjtJQUV6QixZQUNZLE9BQWdCLEVBQ2hCLHNCQUE4QyxFQUM5QyxRQUFrQjtRQUZsQixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDOUMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUU5QixDQUFDO0lBRUQsSUFBSSxDQUFJLE9BQTJDLEVBQUUsWUFBc0M7UUFDdkYsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBRXJCLE1BQU0sS0FBSyxtQ0FBUSxhQUFhLEdBQUssWUFBWSxDQUFFLENBQUM7UUFFcEQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMs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QUFpQixzQkFBc0I7WUFEdEIsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRHJQb3BvdmVyUmVmIH0gZnJvbSAnLi9kci1wb3BvdmVyLXJlZic7XG5pbXBvcnQgeyBEclBvcG92ZXJDb21wb25lbnQgfSBmcm9tICcuL2RyLXBvcG92ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIFN0YXRpY1Byb3ZpZGVyLCBUZW1wbGF0ZVJlZiwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheUNvbmZpZywgT3ZlcmxheVBvc2l0aW9uQnVpbGRlciwgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFBPUFVQX1BPU0lUSU9OUyB9IGZyb20gJy4uL21vZGVscy9jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgICBERUZBVUxUX0NPTkZJRyxcbiAgICBERUZBVUxUX01PREVMLFxuICAgIGdldEFsaWdubWVudERpbWVuc2lvbixcbiAgICBJRHJQb3BvdmVyQ29tcG9uZW50TW9kZWwsXG4gICAgUG9pbnRcbn0gZnJvbSAnLi4vbW9kZWxzL3BvcG92ZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBEclBvcG92ZXJTZXJ2aWNlIHtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXksXG4gICAgICAgIHByaXZhdGUgb3ZlcmxheVBvc2l0aW9uQnVpbGRlcjogT3ZlcmxheVBvc2l0aW9uQnVpbGRlcixcbiAgICAgICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgKSB7XG4gICAgfVxuXG4gICAgb3BlbjxUPihjb250ZW50OiBUeXBlPFQ+IHwgVGVtcGxhdGVSZWY8SFRNTEVsZW1lbnQ+LCBwb3BvdmVyTW9kZWw6IElEclBvcG92ZXJDb21wb25lbnRNb2RlbCk6IERyUG9wb3ZlclJlZjxUPiB7XG4gICAgICAgIGlmICghY29udGVudCkgcmV0dXJuO1xuXG4gICAgICAgIGNvbnN0IG1vZGVsID0geyAuLi5ERUZBVUxUX01PREVMLCAuLi5wb3BvdmVyTW9kZWwgfTtcblxuICAgICAgICBjb25zdCBvdmVybGF5UmVmID0gdGhpcy5jcmVhdGVPdmVybGF5KG1vZGVsKTtcblxuICAgICAgICBjb25zdCBwb3BvdmVyUmVmID0gbmV3IERyUG9wb3ZlclJlZjxUPihvdmVybGF5UmVmKTtcblxuICAgICAgICB0aGlzLmF0dGFjaE92ZXJsYXlDb250YWluZXIoY29udGVudCwgbW9kZWwsIG92ZXJsYXlSZWYsIHBvcG92ZXJSZWYpO1xuXG4gICAgICAgIHRoaXMucmVnaXN0ZXJMaXN0ZW5lcnMobW9kZWwsIG92ZXJsYXlSZWYsIHBvcG92ZXJSZWYpO1xuXG4gICAgICAgIHJldHVybiBwb3BvdmVyUmVmO1xuICAgIH1cblxuICAgIHByaXZhdGUgYXR0YWNoT3ZlcmxheUNvbnRhaW5lcjxUPihcbiAgICAgICAgY29udGVudDogVHlwZTxUPiB8IFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgeyBjb250ZW50Q29udGV4dCwgcG9zaXRpb24sIGNsYXNzOiBlbGVtZW50Q2xhc3MsIG1hbnVhbENsb3NpbmcsIGhvc3RSZWYsIGFsaWdubWVudCwgZnJlZXplVG9Db250YWluZXJTZWxlY3Rvcn06IElEclBvcG92ZXJDb21wb25lbnRNb2RlbCxcbiAgICAgICAgb3ZlcmxheVJlZjogT3ZlcmxheVJlZixcbiAgICAgICAgcG9wb3ZlclJlZjogRHJQb3BvdmVyUmVmPFQ+XG4gICAgKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudFBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWw8RHJQb3BvdmVyQ29tcG9uZW50PFQ+PihEclBvcG92ZXJDb21wb25lbnQsIG51bGwsIHRoaXMuY3JlYXRlSW5qZWN0b3IocG9wb3ZlclJlZikpO1xuICAgICAgICBjb25zdCBjb250ZW50UmVmID0gb3ZlcmxheVJlZi5hdHRhY2g8RHJQb3BvdmVyQ29tcG9uZW50PFQ+Pihjb21wb25lbnRQb3J0YWwpO1xuXG4gICAgICAgIHBvcG92ZXJSZWYuY29tcG9uZW50UmVmID0gY29udGVudFJlZjtcblxuICAgICAgICBjb250ZW50UmVmLmluc3RhbmNlLmNvbnRlbnQgPSBjb250ZW50O1xuICAgICAgICBjb250ZW50UmVmLmluc3RhbmNlLmNvbnRlbnRDb250ZXh0ID0geyAuLi5jb250ZW50Q29udGV4dCwgY2xvc2VQb3BvdmVyOiBwb3BvdmVyUmVmLmNsb3NlLmJpbmQocG9wb3ZlclJlZikgfTtcbiAgICAgICAgY29udGVudFJlZi5pbnN0YW5jZS5jbGFzcyA9IGVsZW1lbnRDbGFzcyArICcgJyArIHBvc2l0aW9uO1xuICAgICAgICBjb250ZW50UmVmLmluc3RhbmNlLm1hbnVhbENsb3NpbmcgPSBtYW51YWxDbG9zaW5nO1xuICAgICAgICBjb250ZW50UmVmLmluc3RhbmNlLmhvc3RSZWYgPSBob3N0UmVmO1xuICAgICAgICBjb250ZW50UmVmLmluc3RhbmNlLmFsaWdubWVudCA9IGFsaWdubWVudDtcbiAgICAgICAgY29udGVudFJlZi5pbnN0YW5jZS5wb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgICAgICBjb250ZW50UmVmLmluc3RhbmNlLmZyZWV6ZVRvQ29udGFpbmVyU2VsZWN0b3IgPSBmcmVlemVUb0NvbnRhaW5lclNlbGVjdG9yO1xuICAgIH1cblxuICAgIHByaXZhdGUgY3JlYXRlT3ZlcmxheShwb3BvdmVyTW9kZWw6IElEclBvcG92ZXJDb21wb25lbnRNb2RlbCk6IE92ZXJsYXlSZWYge1xuICAgICAgICBjb25zdCBvdmVybGF5Q29uZmlnID0gdGhpcy5nZXRPdmVybGF5Q29uZmlnKHBvcG92ZXJNb2RlbCk7XG4gICAgICAgIHJldHVybiB0aGlzLm92ZXJsYXkuY3JlYXRlKG92ZXJsYXlDb25maWcpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0T3ZlcmxheUNvbmZpZyhwb3BvdmVyTW9kZWw6IElEclBvcG92ZXJDb21wb25lbnRNb2RlbCk6IE92ZXJsYXlDb25maWcge1xuICAgICAgICBpZiAoIVBPUFVQX1BPU0lUSU9OU1twb3BvdmVyTW9kZWwucG9zaXRpb25dKSB0aHJvdyBuZXcgRXJyb3IoYERyUG9wb3ZlciBkb2VzIG5vdCBzdXBwb3J0IHRoZSAnJHsgcG9wb3Zlck1vZGVsPy5wb3NpdGlvbiB9JyBwb3NpdGlvbiFgKTtcblxuICAgICAgICBjb25zdCBwb3NpdGlvbiA9IHsgLi4uIFBPUFVQX1BPU0lUSU9OU1twb3BvdmVyTW9kZWwucG9zaXRpb25dIH07XG4gICAgICAgIGlmIChwb3BvdmVyTW9kZWwub3ZlcmxheUNvbmZpZy5ub1BhZGRpbmcpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uLm9mZnNldFkgPSAwO1xuICAgICAgICAgICAgcG9zaXRpb24ub2Zmc2V0WCA9IDA7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY29uZmlnID0geyAuLi5ERUZBVUxUX0NPTkZJRywgLi4ucG9wb3Zlck1vZGVsLm92ZXJsYXlDb25maWcgfHwge30gfTtcbiAgICAgICAgY29uc3QgaG9zdEVsZW1lbnQgPSB0aGlzLmdldEhvc3RFbGVtZW50KHBvcG92ZXJNb2RlbC5ob3N0UmVmKTtcblxuICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5UG9zaXRpb25CdWlsZGVyLmZsZXhpYmxlQ29ubmVjdGVkVG8ocG9wb3Zlck1vZGVsLmhvc3RSZWYpLndpdGhQb3NpdGlvbnMoW3Bvc2l0aW9uXSk7XG5cbiAgICAgICAgY29uc3Qgb3ZlcmxheUNvbmZpZyA9IG5ldyBPdmVybGF5Q29uZmlnKHtcbiAgICAgICAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ub29wKCksXG4gICAgICAgICAgICBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgICAgICAgLi4uY29uZmlnLFxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAocG9wb3Zlck1vZGVsLmFsaWdubWVudCA9PT0gJ2hvc3QnICYmIGhvc3RFbGVtZW50KSB7XG4gICAgICAgICAgICBjb25zdCBhbGlnbm1lbnREaW1lbnNpb24gPSBnZXRBbGlnbm1lbnREaW1lbnNpb24ocG9wb3Zlck1vZGVsLnBvc2l0aW9uKTtcbiAgICAgICAgICAgIG92ZXJsYXlDb25maWdbYWxpZ25tZW50RGltZW5zaW9uXSA9IGhvc3RFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpW2FsaWdubWVudERpbWVuc2lvbl07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gb3ZlcmxheUNvbmZpZztcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUluamVjdG9yPFQ+KHBvcG92ZXJSZWY6IERyUG9wb3ZlclJlZjxUPik6IEluamVjdG9yIHtcbiAgICAgICAgY29uc3QgaW5qZWN0aW9uVG9rZW5zOiBTdGF0aWNQcm92aWRlcltdID0gW1xuICAgICAgICAgICAgeyBwcm92aWRlOiBEclBvcG92ZXJSZWYsIHVzZVZhbHVlOiBwb3BvdmVyUmVmIH0sXG4gICAgICAgIF07XG5cbiAgICAgICAgcmV0dXJuIEluamVjdG9yLmNyZWF0ZSh7IHByb3ZpZGVyczogaW5qZWN0aW9uVG9rZW5zLCBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZWdpc3Rlckxpc3RlbmVyczxUPihwb3BvdmVyTW9kZWw6IElEclBvcG92ZXJDb21wb25lbnRNb2RlbCwgb3ZlcmxheVJlZjogT3ZlcmxheVJlZiwgcG9wb3ZlclJlZjogRHJQb3BvdmVyUmVmPFQ+KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHBvcG92ZXJNb2RlbC5vdmVybGF5Q29uZmlnIHx8IHt9O1xuICAgICAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gcG9wb3Zlck1vZGVsLnRhcmdldEVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IGhvc3RFbGVtZW50ID0gdGhpcy5nZXRIb3N0RWxlbWVudChwb3BvdmVyTW9kZWwuaG9zdFJlZik7XG5cbiAgICAgICAgaWYgKGNvbmZpZz8uY2xvc2VPbkJhY2tkcm9wQ2xpY2sgJiYgY29uZmlnPy5oYXNCYWNrZHJvcCkge1xuICAgICAgICAgICAgb3ZlcmxheVJlZi5iYWNrZHJvcENsaWNrKCkuc3Vic2NyaWJlKCgpID0+IHBvcG92ZXJSZWYuY2xvc2UoKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGFyZ2V0RWxlbWVudCkge1xuICAgICAgICAgICAgdGFyZ2V0RWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZXVwJywgKCkgPT4gcG9wb3ZlclJlZi5jbG9zZSgpLCB7IG9uY2U6IHRydWUgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocG9wb3Zlck1vZGVsLmFsaWdubWVudCA9PT0gJ2hvc3QnICYmIGhvc3RFbGVtZW50KSB7XG4gICAgICAgICAgICBjb25zdCBhbGlnbm1lbnREaW1lbnNpb24gPSBnZXRBbGlnbm1lbnREaW1lbnNpb24ocG9wb3Zlck1vZGVsLnBvc2l0aW9uKTtcbiAgICAgICAgICAgIGNvbnN0IHJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZU9ic2VydmVyKGVudHJpZXMgPT4ge1xuICAgICAgICAgICAgICAgIGVudHJpZXMuZm9yRWFjaChob3N0ID0+IG92ZXJsYXlSZWYudXBkYXRlU2l6ZSh7IFthbGlnbm1lbnREaW1lbnNpb25dOiBob3N0LnRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVthbGlnbm1lbnREaW1lbnNpb25dIH0pKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZShob3N0RWxlbWVudCk7XG4gICAgICAgICAgICBwb3BvdmVyUmVmLm9uQ2xvc2UucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoKCkgPT4gcmVzaXplT2JzZXJ2ZXIudW5vYnNlcnZlKGhvc3RFbGVtZW50KSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEhvc3RFbGVtZW50PFQ+KGhvc3RSZWY6IFBvaW50IHwgSFRNTEVsZW1lbnQgfCBFbGVtZW50UmVmPFQ+KTogSFRNTEVsZW1lbnQge1xuICAgICAgICBpZiAoIWhvc3RSZWYgfHwgKDxQb2ludD5ob3N0UmVmKS54KSByZXR1cm4gbnVsbDtcbiAgICAgICAgaWYgKCg8RWxlbWVudFJlZj5ob3N0UmVmKS5uYXRpdmVFbGVtZW50KSByZXR1cm4gKDxFbGVtZW50UmVmPmhvc3RSZWYpLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIHJldHVybiA8SFRNTEVsZW1lbnQ+aG9zdFJlZjtcbiAgICB9XG5cbn1cbiJdfQ==
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { Scenario } from '../../interfaces/scenario';
|
|
3
|
+
import { ScenarioService } from '../../services/scenario.service';
|
|
4
|
+
import { TagTypes } from '../../../models/serverTags';
|
|
5
|
+
import { find as _find, includes as _includes, map as _map } from 'lodash';
|
|
6
|
+
import { ToggleButtonMode } from '../../../dr-inputs/dr-toggle-button/toggle-button-mode';
|
|
7
|
+
export class DrScenarioConfigurationComponent {
|
|
8
|
+
constructor(scenarioService) {
|
|
9
|
+
this.scenarioService = scenarioService;
|
|
10
|
+
this.toggleButtonMode = ToggleButtonMode;
|
|
11
|
+
this._scenarioTags = [];
|
|
12
|
+
this.wholeTagsConfig = [];
|
|
13
|
+
this.isMultipleDimension = false;
|
|
14
|
+
this.scenarioDataChanged = new EventEmitter();
|
|
15
|
+
}
|
|
16
|
+
set selectedScenario(scenario) {
|
|
17
|
+
if (!Object.values(Scenario).includes(scenario)) {
|
|
18
|
+
this._selectedScenario = Scenario.ACTUALS;
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
this._selectedScenario = scenario;
|
|
22
|
+
}
|
|
23
|
+
get selectedScenario() {
|
|
24
|
+
return this._selectedScenario || Scenario.ACTUALS;
|
|
25
|
+
}
|
|
26
|
+
get scenarioTags() {
|
|
27
|
+
return this._scenarioTags;
|
|
28
|
+
}
|
|
29
|
+
set scenarioTags(tags) {
|
|
30
|
+
this._scenarioTags = tags;
|
|
31
|
+
this.tagNotSupportingDates = _find(tags, { turnOffDateTags: true });
|
|
32
|
+
}
|
|
33
|
+
get dateTag() {
|
|
34
|
+
return _find(this.scenarioTags, { type: TagTypes.DATE });
|
|
35
|
+
}
|
|
36
|
+
ngOnInit() {
|
|
37
|
+
this.scenarios = this.scenarioService.scenarios;
|
|
38
|
+
this.scenarioService.initScenarioTags(this.wholeTagsConfig, this.currentTagsConfig, this.isMultipleDimension);
|
|
39
|
+
this.scenarioTags = this.scenarioService.getScenarioTagsByScenario(this.selectedScenario);
|
|
40
|
+
}
|
|
41
|
+
onScenarioChange(scenario) {
|
|
42
|
+
this.scenarioTags = this.scenarioService.getScenarioTagsByScenario(scenario);
|
|
43
|
+
this.onScenarioDataChange();
|
|
44
|
+
}
|
|
45
|
+
onScenarioTagToggle(tag) {
|
|
46
|
+
this.tagNotSupportingDatesHandler(tag);
|
|
47
|
+
this.tagAcceptableDateHandler(tag);
|
|
48
|
+
this.onScenarioDataChange();
|
|
49
|
+
}
|
|
50
|
+
onScenarioDataChange() {
|
|
51
|
+
this.scenarioDataChanged.emit({
|
|
52
|
+
scenario: this.selectedScenario,
|
|
53
|
+
tagsConfig: this.scenarioService.getTagsConfigByScenarioTags(this.scenarioTags, this.wholeTagsConfig),
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
tagNotSupportingDatesHandler(tag) {
|
|
57
|
+
if (!this.tagNotSupportingDates || !tag.toggle)
|
|
58
|
+
return;
|
|
59
|
+
if (tag.type === TagTypes.DATE) {
|
|
60
|
+
this.tagNotSupportingDates.toggle = false;
|
|
61
|
+
}
|
|
62
|
+
if (tag === this.tagNotSupportingDates) {
|
|
63
|
+
const dateTag = this.dateTag;
|
|
64
|
+
if (dateTag) {
|
|
65
|
+
dateTag.toggle = false;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
tagAcceptableDateHandler(tag) {
|
|
70
|
+
var _a;
|
|
71
|
+
if (!((_a = tag.acceptableDateTags) === null || _a === void 0 ? void 0 : _a.length))
|
|
72
|
+
return;
|
|
73
|
+
const dateTag = this.dateTag;
|
|
74
|
+
if (!dateTag)
|
|
75
|
+
return;
|
|
76
|
+
dateTag.subTags = _map(dateTag.subTags, (subTag) => {
|
|
77
|
+
subTag.hidden = tag.toggle && !_includes(tag.acceptableDateTags, subTag.subType);
|
|
78
|
+
return subTag;
|
|
79
|
+
});
|
|
80
|
+
dateTag.selectedTagSubType = tag.acceptableDateTags[0];
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
DrScenarioConfigurationComponent.decorators = [
|
|
84
|
+
{ type: Component, args: [{
|
|
85
|
+
selector: 'dr-scenario-configuration',
|
|
86
|
+
template: "<div class=\"scenario\">\n <div class=\"scenario__list\">\n <p class=\"scenario__title scenario__title-list\">Scenario</p>\n <dr-select [(ngModel)]=\"selectedScenario\"\n placeholder=\"Select\"\n [items]=\"scenarios\"\n (ngModelChange)=\"onScenarioChange($event)\"></dr-select>\n </div>\n <div class=\"scenario__tags\">\n <p class=\"scenario__title--extra scenario__tags__title\">Tags</p>\n <div class=\"scenario__tag\" *ngFor=\"let tag of scenarioTags\">\n <div class=\"scenario__tag__header\">\n <p class=\"scenario__title\">{{ tag.name }}</p>\n <dr-toggle [(ngModel)]=\"tag.toggle\"\n (ngModelChange)=\"onScenarioTagToggle(tag)\"></dr-toggle>\n </div>\n <div class=\"scenario__tag__description\">\n <p class=\"scenario__text\">{{ tag.description }}</p>\n </div>\n <div *ngIf=\"tag.toggle\" class=\"scenario__tag__body\">\n <div *ngIf=\"tag.subTags?.length\" class=\"scenario__sub-tag\">\n <dr-toggle-button [(ngModel)]=\"tag.selectedTagSubType\"\n bindHidden=\"hidden\"\n bindLabel=\"name\"\n bindValue=\"subType\"\n [items]=\"tag.subTags\"\n [mode]=\"toggleButtonMode.DOTTED\"\n (ngModelChange)=\"onScenarioDataChange()\"></dr-toggle-button>\n </div>\n </div>\n </div>\n </div>\n</div>\n",
|
|
87
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
88
|
+
providers: [ScenarioService],
|
|
89
|
+
styles: [".scenario__text,.scenario__title,.scenario__title--extra{padding:0;margin:0;color:#0c142b;font-weight:400;font-size:14px;line-height:22px}.scenario__title{font-weight:600}.scenario__title--extra{font-weight:700}.scenario__tags{margin-top:24px}.scenario__tags__title{margin-bottom:16px}.scenario__title-list{margin-bottom:4px}.scenario__tag{margin-bottom:24px;padding-top:16px;border-top:1px solid #dfe0e3}.scenario__tag__description{margin-top:5px}.scenario__tag__header{display:flex;justify-content:space-between}.scenario__sub-tag{margin-top:8px}:host::ng-deep .toggle-container__item{padding:2px 8px!important}\n"]
|
|
90
|
+
},] }
|
|
91
|
+
];
|
|
92
|
+
DrScenarioConfigurationComponent.ctorParameters = () => [
|
|
93
|
+
{ type: ScenarioService }
|
|
94
|
+
];
|
|
95
|
+
DrScenarioConfigurationComponent.propDecorators = {
|
|
96
|
+
currentTagsConfig: [{ type: Input }],
|
|
97
|
+
wholeTagsConfig: [{ type: Input }],
|
|
98
|
+
selectedScenario: [{ type: Input }],
|
|
99
|
+
isMultipleDimension: [{ type: Input }],
|
|
100
|
+
scenarioDataChanged: [{ type: Output }]
|
|
101
|
+
};
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItc2NlbmFyaW8tY29uZmlndXJhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1zY2VuYXJpby9jb21wb25lbnRzL2RyLXNjZW5hcmlvLWNvbmZpZ3VyYXRpb24vZHItc2NlbmFyaW8tY29uZmlndXJhdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQWtCLFFBQVEsRUFBd0IsTUFBTSwyQkFBMkIsQ0FBQztBQUMzRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxFQUFRLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxJQUFJLElBQUksS0FBSyxFQUFFLFFBQVEsSUFBSSxTQUFTLEVBQUUsR0FBRyxJQUFJLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQVMxRixNQUFNLE9BQU8sZ0NBQWdDO0lBdUN6QyxZQUFvQixlQUFnQztRQUFoQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUF0QzdDLHFCQUFnQixHQUFHLGdCQUFnQixDQUFDO1FBR25DLGtCQUFhLEdBQXFCLEVBQUUsQ0FBQztRQUs3QixvQkFBZSxHQUFXLEVBQUUsQ0FBQztRQVM3Qix3QkFBbUIsR0FBWSxLQUFLLENBQUM7UUFFcEMsd0JBQW1CLEdBQXVDLElBQUksWUFBWSxFQUF3QixDQUFDO0lBb0JwSCxDQUFDO0lBOUJELElBQW9CLGdCQUFnQixDQUFDLFFBQWtCO1FBQ25ELElBQUksQ0FBQyxNQUFNLENBQUMsTUFB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QUMsT0FBTyxDQUFDO1FBRTdCLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUVyQixPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDL0MsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDakYsT0FBTyxNQUFNLENBQUM7UUFDbEIsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUM7OztZQXJHSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLDJCQUEyQjtnQkFDckMsZ3JEQUF5RDtnQkFFekQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07Z0JBQy9DLFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQzs7YUFDL0I7OztZQVhRLGVBQWU7OztnQ0FvQm5CLEtBQUs7OEJBQ0wsS0FBSzsrQkFDTCxLQUFLO2tDQVFMLEtBQUs7a0NBRUwsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJU2NlbmFyaW9UYWdVaSwgU2NlbmFyaW8sIFRTY2VuYXJpb0RhdGFDaGFuZ2VkIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9zY2VuYXJpbyc7XG5pbXBvcnQgeyBTY2VuYXJpb1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zY2VuYXJpby5zZXJ2aWNlJztcbmltcG9ydCB7IElUYWcsIFRhZ1R5cGVzIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3NlcnZlclRhZ3MnO1xuaW1wb3J0IHsgZmluZCBhcyBfZmluZCwgaW5jbHVkZXMgYXMgX2luY2x1ZGVzLCBtYXAgYXMgX21hcCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBUb2dnbGVCdXR0b25Nb2RlIH0gZnJvbSAnLi4vLi4vLi4vZHItaW5wdXRzL2RyLXRvZ2dsZS1idXR0b24vdG9nZ2xlLWJ1dHRvbi1tb2RlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1zY2VuYXJpby1jb25maWd1cmF0aW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZHItc2NlbmFyaW8tY29uZmlndXJhdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHItc2NlbmFyaW8tY29uZmlndXJhdGlvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1NjZW5hcmlvU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgRHJTY2VuYXJpb0NvbmZpZ3VyYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHB1YmxpYyB0b2dnbGVCdXR0b25Nb2RlID0gVG9nZ2xlQnV0dG9uTW9kZTtcbiAgICBwdWJsaWMgc2NlbmFyaW9zOiBTY2VuYXJpb1tdO1xuXG4gICAgcHJpdmF0ZSBfc2NlbmFyaW9UYWdzOiBJU2NlbmFyaW9UYWdVaVtdID0gW107XG4gICAgcHJpdmF0ZSBfc2VsZWN0ZWRTY2VuYXJpbzogU2NlbmFyaW87XG4gICAgcHJpdmF0ZSB0YWdOb3RTdXBwb3J0aW5nRGF0ZXM6IElTY2VuYXJpb1RhZ1VpO1xuXG4gICAgQElucHV0KCkgcHVibGljIGN1cnJlbnRUYWdzQ29uZmlnOiBJVGFnW107XG4gICAgQElucHV0KCkgcHVibGljIHdob2xlVGFnc0NvbmZpZzogSVRhZ1tdID0gW107XG4gICAgQElucHV0KCkgcHVibGljIHNldCBzZWxlY3RlZFNjZW5hcmlvKHNjZW5hcmlvOiBTY2VuYXJpbykge1xuICAgICAgICBpZiAoIU9iamVjdC52YWx1ZXMoU2NlbmFyaW8pLmluY2x1ZGVzKHNjZW5hcmlvKSkge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRTY2VuYXJpbyA9IFNjZW5hcmlvLkFDVFVBTFM7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9zZWxlY3RlZFNjZW5hcmlvID0gc2NlbmFyaW87XG4gICAgfVxuICAgIEBJbnB1dCgpIHB1YmxpYyBpc011bHRpcGxlRGltZW5zaW9uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICBAT3V0cHV0KCkgcHVibGljIHNjZW5hcmlvRGF0YUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxUU2NlbmFyaW9EYXRhQ2hhbmdlZD4gPSBuZXcgRXZlbnRFbWl0dGVyPFRTY2VuYXJpb0RhdGFDaGFuZ2VkPigpO1xuXG4gICAgcHVibGljIGdldCBzZWxlY3RlZFNjZW5hcmlvKCk6IFNjZW5hcmlvIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkU2NlbmFyaW8gfHwgU2NlbmFyaW8uQUNUVUFMUztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHNjZW5hcmlvVGFncygpOiBJU2NlbmFyaW9UYWdVaVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NjZW5hcmlvVGFncztcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0IHNjZW5hcmlvVGFncyh0YWdzOiBJU2NlbmFyaW9UYWdVaVtdKSB7XG4gICAgICAgIHRoaXMuX3NjZW5hcmlvVGFncyA9IHRhZ3M7XG4gICAgICAgIHRoaXMudGFnTm90U3VwcG9ydGluZ0RhdGVzID0gX2ZpbmQodGFncywgeyB0dXJuT2ZmRGF0ZVRhZ3M6IHRydWUgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlVGFnKCk6IElTY2VuYXJpb1RhZ1VpIHtcbiAgICAgICAgcmV0dXJuIF9maW5kKHRoaXMuc2NlbmFyaW9UYWdzLCB7IHR5cGU6IFRhZ1R5cGVzLkRBVEUgfSk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzY2VuYXJpb1NlcnZpY2U6IFNjZW5hcmlvU2VydmljZSkge1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zY2VuYXJpb3MgPSB0aGlzLnNjZW5hcmlvU2VydmljZS5zY2VuYXJpb3M7XG4gICAgICAgIHRoaXMuc2NlbmFyaW9TZXJ2aWNlLmluaXRTY2VuYXJpb1RhZ3ModGhpcy53aG9sZVRhZ3NDb25maWcsIHRoaXMuY3VycmVudFRhZ3NDb25maWcsIHRoaXMuaXNNdWx0aXBsZURpbWVuc2lvbik7XG4gICAgICAgIHRoaXMuc2NlbmFyaW9UYWdzID0gdGhpcy5zY2VuYXJpb1NlcnZpY2UuZ2V0U2NlbmFyaW9UYWdzQnlTY2VuYXJpbyh0aGlzLnNlbGVjdGVkU2NlbmFyaW8pO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblNjZW5hcmlvQ2hhbmdlKHNjZW5hcmlvOiBTY2VuYXJpbyk6IHZvaWQge1xuICAgICAgICB0aGlzLnNjZW5hcmlvVGFncyA9IHRoaXMuc2NlbmFyaW9TZXJ2aWNlLmdldFNjZW5hcmlvVGFnc0J5U2NlbmFyaW8oc2NlbmFyaW8pO1xuICAgICAgICB0aGlzLm9uU2NlbmFyaW9EYXRhQ2hhbmdlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uU2NlbmFyaW9UYWdUb2dnbGUodGFnOiBJU2NlbmFyaW9UYWdVaSk6IHZvaWQge1xuICAgICAgICB0aGlzLnRhZ05vdFN1cHBvcnRpbmdEYXRlc0hhbmRsZXIodGFnKTtcbiAgICAgICAgdGhpcy50YWdBY2NlcHRhYmxlRGF0ZUhhbmRsZXIodGFnKTtcbiAgICAgICAgdGhpcy5vblNjZW5hcmlvRGF0YUNoYW5nZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblNjZW5hcmlvRGF0YUNoYW5nZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zY2VuYXJpb0RhdGFDaGFuZ2VkLmVtaXQoe1xuICAgICAgICAgICAgc2NlbmFyaW86IHRoaXMuc2VsZWN0ZWRTY2VuYXJpbyxcbiAgICAgICAgICAgIHRhZ3NDb25maWc6IHRoaXMuc2NlbmFyaW9TZXJ2aWNlLmdldFRhZ3NDb25maWdCeVNjZW5hcmlvVGFncyh0aGlzLnNjZW5hcmlvVGFncywgdGhpcy53aG9sZVRhZ3NDb25maWcpLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHRhZ05vdFN1cHBvcnRpbmdEYXRlc0hhbmRsZXIodGFnOiBJU2NlbmFyaW9UYWdVaSk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMudGFnTm90U3VwcG9ydGluZ0RhdGVzIHx8ICF0YWcudG9nZ2xlKSByZXR1cm47XG5cbiAgICAgICAgaWYgKHRhZy50eXBlID09PSBUYWdUeXBlcy5EQVRFKSB7XG4gICAgICAgICAgICB0aGlzLnRhZ05vdFN1cHBvcnRpbmdEYXRlcy50b2dnbGUgPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0YWcgPT09IHRoaXMudGFnTm90U3VwcG9ydGluZ0RhdGVzKSB7XG4gICAgICAgICAgICBjb25zdCBkYXRlVGFnID0gdGhpcy5kYXRlVGFnO1xuXG4gICAgICAgICAgICBpZiAoZGF0ZVRhZykge1xuICAgICAgICAgICAgICAgIGRhdGVUYWcudG9nZ2xlID0gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHRhZ0FjY2VwdGFibGVEYXRlSGFuZGxlcih0YWc6IElTY2VuYXJpb1RhZ1VpKSB7XG4gICAgICAgIGlmICghdGFnLmFjY2VwdGFibGVEYXRlVGFncz8ubGVuZ3RoKSByZXR1cm47XG4gICAgICAgIGNvbnN0IGRhdGVUYWcgPSB0aGlzLmRhdGVUYWc7XG5cbiAgICAgICAgaWYgKCFkYXRlVGFnKSByZXR1cm47XG5cbiAgICAgICAgZGF0ZVRhZy5zdWJUYWdzID0gX21hcChkYXRlVGFnLnN1YlRhZ3MsIChzdWJUYWcpID0+IHtcbiAgICAgICAgICAgIHN1YlRhZy5oaWRkZW4gPSB0YWcudG9nZ2xlICYmICFfaW5jbHVkZXModGFnLmFjY2VwdGFibGVEYXRlVGFncywgc3ViVGFnLnN1YlR5cGUpO1xuICAgICAgICAgICAgcmV0dXJuIHN1YlRhZztcbiAgICAgICAgfSk7XG5cbiAgICAgICAgZGF0ZVRhZy5zZWxlY3RlZFRhZ1N1YlR5cGUgPSB0YWcuYWNjZXB0YWJsZURhdGVUYWdzWzBdO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { reduce as _reduce, find as _find, merge as _merge } from 'lodash';
|
|
3
|
+
export class DrScenarioTagConfigurationComponent {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.connectedTags = {};
|
|
6
|
+
this.dynamicTagValues = {};
|
|
7
|
+
this.lockedDates = [];
|
|
8
|
+
this.scenarioTagDataChanged = new EventEmitter();
|
|
9
|
+
this.currentTagsMap = {};
|
|
10
|
+
this._currentTags = [];
|
|
11
|
+
this.dynamicTagsToSave = [];
|
|
12
|
+
this.tagsToSave = [];
|
|
13
|
+
}
|
|
14
|
+
set currentTags(tags) {
|
|
15
|
+
this._currentTags = tags;
|
|
16
|
+
this.currentTagsMap = _reduce(tags, (acc, curr) => {
|
|
17
|
+
var _a;
|
|
18
|
+
const tagId = (_a = _find(this.tagsConfig, { name: curr.name })) === null || _a === void 0 ? void 0 : _a.id;
|
|
19
|
+
if (isNaN(tagId))
|
|
20
|
+
return acc;
|
|
21
|
+
acc[tagId] = curr;
|
|
22
|
+
return acc;
|
|
23
|
+
}, {});
|
|
24
|
+
}
|
|
25
|
+
get currentTags() {
|
|
26
|
+
return this._currentTags;
|
|
27
|
+
}
|
|
28
|
+
ngOnChanges(simpleChanges) {
|
|
29
|
+
this.currentTags = this.currentTags;
|
|
30
|
+
}
|
|
31
|
+
onTagChange($event) {
|
|
32
|
+
const savedTag = _find(this.tagsToSave, { id: $event.id });
|
|
33
|
+
if (savedTag) {
|
|
34
|
+
_merge(savedTag, $event);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
this.tagsToSave.push($event);
|
|
38
|
+
}
|
|
39
|
+
this.onScenarioTagDataChanged();
|
|
40
|
+
}
|
|
41
|
+
onDynamicTagsChange($event) {
|
|
42
|
+
this.dynamicTagsToSave = $event;
|
|
43
|
+
this.onScenarioTagDataChanged();
|
|
44
|
+
}
|
|
45
|
+
onScenarioTagDataChanged() {
|
|
46
|
+
const tags = [...this.dynamicTagsToSave, ...this.tagsToSave];
|
|
47
|
+
this.scenarioTagDataChanged.emit({
|
|
48
|
+
scenario: this.scenario,
|
|
49
|
+
tagsConfig: this.tagsConfig,
|
|
50
|
+
tags,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
DrScenarioTagConfigurationComponent.decorators = [
|
|
55
|
+
{ type: Component, args: [{
|
|
56
|
+
selector: 'dr-scenario-tag-configuration',
|
|
57
|
+
template: "<div class=\"scenario-tag-configuration\"\n *ngFor=\"let tagConfig of tagsConfig\">\n <dr-tag [tagConfig]=\"tagConfig\"\n [selectedTag]=\"currentTagsMap[tagConfig.id]\"\n [lockedDate]=\"lockedDates\"\n [fiscalYearStartsFrom]=\"fiscalYearStartsFrom\"\n [fiscalYearBack]=\"fiscalYearBack\"\n [tagsConfig]=\"tagsConfig\"\n [dynamicTagValues]=\"dynamicTagValues\"\n [connectedTags]=\"connectedTags[tagConfig.id]\"\n [isDynamicTagAddEnabled]=\"isDynamicAddEnabled\"\n (tagChange)=\"onTagChange($event)\"\n (dynamicTagChange)=\"onDynamicTagsChange($event)\"></dr-tag>\n</div>\n",
|
|
58
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
59
|
+
styles: [".scenario-tag-configuration{margin-bottom:24px}.scenario-tag-configuration:last-child{margin-bottom:0}\n"]
|
|
60
|
+
},] }
|
|
61
|
+
];
|
|
62
|
+
DrScenarioTagConfigurationComponent.propDecorators = {
|
|
63
|
+
tagsConfig: [{ type: Input }],
|
|
64
|
+
currentTags: [{ type: Input }],
|
|
65
|
+
scenario: [{ type: Input }],
|
|
66
|
+
connectedTags: [{ type: Input }],
|
|
67
|
+
dynamicTagValues: [{ type: Input }],
|
|
68
|
+
lockedDates: [{ type: Input }],
|
|
69
|
+
fiscalYearStartsFrom: [{ type: Input }],
|
|
70
|
+
fiscalYearBack: [{ type: Input }],
|
|
71
|
+
isDynamicAddEnabled: [{ type: Input }],
|
|
72
|
+
scenarioTagDataChanged: [{ type: Output }]
|
|
73
|
+
};
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItc2NlbmFyaW8tdGFnLWNvbmZpZ3VyYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItc2NlbmFyaW8vY29tcG9uZW50cy9kci1zY2VuYXJpby10YWctY29uZmlndXJhdGlvbi9kci1zY2VuYXJpby10YWctY29uZmlndXJhdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBRVQsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE1BQU0sSUFBSSxPQUFPLEVBQUUsSUFBSSxJQUFJLEtBQUssRUFBRSxLQUFLLElBQUksTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBUzNFLE1BQU0sT0FBTyxtQ0FBbUM7SUFOaEQ7UUFvQm9CLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQUNuQyxxQkFBZ0IsR0FBZ0IsRUFBRSxDQUFDO1FBRW5DLGdCQUFXLEdBQXdCLEVBQUUsQ0FBQztRQUtyQywyQkFBc0IsR0FBdUMsSUFBSSxZQUFZLEVBQXdCLENBQUM7UUFFaEgsbUJBQWMsR0FBdUMsRUFBRSxDQUFDO1FBRXZELGlCQUFZLEdBQW9CLEVBQUUsQ0FBQztRQUNuQyxzQkFBaUIsR0FBb0IsRUFBRSxDQUFDO1FBQ3hDLGVBQVUsR0FBb0IsRUFBRSxDQUFDO0lBbUM3QyxDQUFDO0lBN0RHLElBQW9CLFdBQVcsQ0FBQyxJQUFxQjtRQUNqRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUN6QixJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7O1lBQzlDLE1BQU0sS0FBSyxHQUFHLE1BQUEsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLDBDQUFFLEVBQUUsQ0FBQztZQUM5RCxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUM7Z0JBQUUsT0FBTyxHQUFHLENBQUM7WUFFN0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQztZQUNsQixPQUFPLEdBQUcsQ0FBQztRQUNmLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNYLENBQUM7SUFtQkQsSUFBVyxXQUFXO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBRU0sV0FBVyxDQUFDLGFBQTRCO1FBQzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUN4QyxDQUFDO0lBRU0sV0FBVyxDQUFDLE1BQXFCO1FBQ3BDLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRTNELElBQUksUUFBUSxFQUFFO1lBQ1YsTUFBTSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztTQUM1QjthQUFNO1lBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDaEM7UUFFRCxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRU0sbUJBQW1CLENBQUMsTUFBdUI7UUFDOUMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQztRQUNoQyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRU0sd0JBQXdCO1FBQzNCLE1BQU0sSUFBSSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQztZQUM3QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7WUFDdkIsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzNCLElBQUk7U0FDUCxDQUFDLENBQUM7SUFDUCxDQUFDOzs7WUFwRUosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSwrQkFBK0I7Z0JBQ3pDLDRyQkFBNkQ7Z0JBRTdELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOzthQUNsRDs7O3lCQUVJLEtBQUs7MEJBQ0wsS0FBSzt1QkFXTCxLQUFLOzRCQUNMLEtBQUs7K0JBQ0wsS0FBSzswQkFFTCxLQUFLO21DQUNMLEtBQUs7NkJBQ0wsS0FBSztrQ0FDTCxLQUFLO3FDQUVMLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE91dHB1dCxcbiAgICBTaW1wbGVDaGFuZ2VzXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSVRhZywgSVRhZ0ZvclNlcnZlciwgVENvbm5lY3RlZFRhZ3MsIFREeW5hbWljVGFnIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3NlcnZlclRhZ3MnO1xuaW1wb3J0IHsgcmVkdWNlIGFzIF9yZWR1Y2UsIGZpbmQgYXMgX2ZpbmQsIG1lcmdlIGFzIF9tZXJnZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBTY2VuYXJpbywgVFNjZW5hcmlvRGF0YUNoYW5nZWQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3NjZW5hcmlvJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdkci1zY2VuYXJpby10YWctY29uZmlndXJhdGlvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RyLXNjZW5hcmlvLXRhZy1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kci1zY2VuYXJpby10YWctY29uZmlndXJhdGlvbi5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIERyU2NlbmFyaW9UYWdDb25maWd1cmF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKSBwdWJsaWMgdGFnc0NvbmZpZzogSVRhZ1tdO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBzZXQgY3VycmVudFRhZ3ModGFnczogSVRhZ0ZvclNlcnZlcltdKSB7XG4gICAgICAgIHRoaXMuX2N1cnJlbnRUYWdzID0gdGFncztcbiAgICAgICAgdGhpcy5jdXJyZW50VGFnc01hcCA9IF9yZWR1Y2UodGFncywgKGFjYywgY3VycikgPT4ge1xuICAgICAgICAgICAgY29uc3QgdGFnSWQgPSBfZmluZCh0aGlzLnRhZ3NDb25maWcsIHsgbmFtZTogY3Vyci5uYW1lIH0pPy5pZDtcbiAgICAgICAgICAgIGlmIChpc05hTih0YWdJZCkpIHJldHVybiBhY2M7XG5cbiAgICAgICAgICAgIGFjY1t0YWdJZF0gPSBjdXJyO1xuICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgfSwge30pO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHB1YmxpYyBzY2VuYXJpbzogU2NlbmFyaW87XG4gICAgQElucHV0KCkgcHVibGljIGNvbm5lY3RlZFRhZ3M6IFRDb25uZWN0ZWRUYWdzID0ge307XG4gICAgQElucHV0KCkgcHVibGljIGR5bmFtaWNUYWdWYWx1ZXM6IFREeW5hbWljVGFnID0ge307XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgbG9ja2VkRGF0ZXM6IHN0cmluZ1tdIHwgbnVtYmVyW10gPSBbXTtcbiAgICBASW5wdXQoKSBwdWJsaWMgZmlzY2FsWWVhclN0YXJ0c0Zyb206IG51bWJlcjtcbiAgICBASW5wdXQoKSBwdWJsaWMgZmlzY2FsWWVhckJhY2s6IGJvb2xlYW47XG4gICAgQElucHV0KCkgcHVibGljIGlzRHluYW1pY0FkZEVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgICBAT3V0cHV0KCkgcHVibGljIHNjZW5hcmlvVGFnRGF0YUNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxUU2NlbmFyaW9EYXRhQ2hhbmdlZD4gPSBuZXcgRXZlbnRFbWl0dGVyPFRTY2VuYXJpb0RhdGFDaGFuZ2VkPigpO1xuXG4gICAgcHVibGljIGN1cnJlbnRUYWdzTWFwOiB7IFt0YWdJZDogbnVtYmVyXTogSVRhZ0ZvclNlcnZlciB9ID0ge307XG5cbiAgICBwcml2YXRlIF9jdXJyZW50VGFnczogSVRhZ0ZvclNlcnZlcltdID0gW107XG4gICAgcHJpdmF0ZSBkeW5hbWljVGFnc1RvU2F2ZTogSVRhZ0ZvclNlcnZlcltdID0gW107XG4gICAgcHJpdmF0ZSB0YWdzVG9TYXZlOiBJVGFnRm9yU2VydmVyW10gPSBbXTtcblxuICAgIHB1YmxpYyBnZXQgY3VycmVudFRhZ3MoKTogSVRhZ0ZvclNlcnZlcltdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRUYWdzO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhzaW1wbGVDaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3VycmVudFRhZ3MgPSB0aGlzLmN1cnJlbnRUYWdzO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblRhZ0NoYW5nZSgkZXZlbnQ6IElUYWdGb3JTZXJ2ZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgc2F2ZWRUYWcgPSBfZmluZCh0aGlzLnRhZ3NUb1NhdmUsIHsgaWQ6ICRldmVudC5pZCB9KTtcblxuICAgICAgICBpZiAoc2F2ZWRUYWcpIHtcbiAgICAgICAgICAgIF9tZXJnZShzYXZlZFRhZywgJGV2ZW50KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudGFnc1RvU2F2ZS5wdXNoKCRldmVudCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9uU2NlbmFyaW9UYWdEYXRhQ2hhbmdlZCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkR5bmFtaWNUYWdzQ2hhbmdlKCRldmVudDogSVRhZ0ZvclNlcnZlcltdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZHluYW1pY1RhZ3NUb1NhdmUgPSAkZXZlbnQ7XG4gICAgICAgIHRoaXMub25TY2VuYXJpb1RhZ0RhdGFDaGFuZ2VkKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uU2NlbmFyaW9UYWdEYXRhQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdGFncyA9IFsuLi50aGlzLmR5bmFtaWNUYWdzVG9TYXZlLCAuLi50aGlzLnRhZ3NUb1NhdmVdO1xuICAgICAgICB0aGlzLnNjZW5hcmlvVGFnRGF0YUNoYW5nZWQuZW1pdCh7XG4gICAgICAgICAgICBzY2VuYXJpbzogdGhpcy5zY2VuYXJpbyxcbiAgICAgICAgICAgIHRhZ3NDb25maWc6IHRoaXMudGFnc0NvbmZpZyxcbiAgICAgICAgICAgIHRhZ3MsXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { TagsConfigSubType } from '../../models/serverTags';
|
|
2
|
+
import { Scenario } from '../interfaces/scenario';
|
|
3
|
+
export const allDateTags = {
|
|
4
|
+
[TagsConfigSubType.YEAR]: {
|
|
5
|
+
name: 'Date',
|
|
6
|
+
toggle: false,
|
|
7
|
+
},
|
|
8
|
+
[TagsConfigSubType.QUARTER]: {
|
|
9
|
+
name: 'Date',
|
|
10
|
+
toggle: false,
|
|
11
|
+
},
|
|
12
|
+
[TagsConfigSubType.MONTH]: {
|
|
13
|
+
name: 'Date',
|
|
14
|
+
toggle: false,
|
|
15
|
+
},
|
|
16
|
+
[TagsConfigSubType.DAY]: {
|
|
17
|
+
name: 'Date',
|
|
18
|
+
toggle: false,
|
|
19
|
+
},
|
|
20
|
+
[TagsConfigSubType.WEEK]: {
|
|
21
|
+
name: 'Date',
|
|
22
|
+
toggle: false,
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
export function getScenarioTagDataConfig(isMultipleDimension) {
|
|
26
|
+
return {
|
|
27
|
+
[Scenario.ACTUALS]: Object.assign(Object.assign({}, allDateTags), { [TagsConfigSubType.MONTH]: {
|
|
28
|
+
name: 'Date',
|
|
29
|
+
toggle: true,
|
|
30
|
+
}, [TagsConfigSubType.FILE_STATUS]: {
|
|
31
|
+
toggle: false,
|
|
32
|
+
} }),
|
|
33
|
+
[Scenario.BUDGET]: {
|
|
34
|
+
[TagsConfigSubType.BUDGET_CYCLE]: {
|
|
35
|
+
toggle: true,
|
|
36
|
+
acceptableDateTags: [TagsConfigSubType.YEAR],
|
|
37
|
+
hidden: !isMultipleDimension,
|
|
38
|
+
},
|
|
39
|
+
[TagsConfigSubType.PLAN]: {
|
|
40
|
+
toggle: false,
|
|
41
|
+
turnOffDateTags: true,
|
|
42
|
+
hidden: isMultipleDimension,
|
|
43
|
+
},
|
|
44
|
+
[TagsConfigSubType.YEAR]: {
|
|
45
|
+
name: 'Date',
|
|
46
|
+
toggle: true,
|
|
47
|
+
},
|
|
48
|
+
[TagsConfigSubType.QUARTER]: {
|
|
49
|
+
name: 'Date',
|
|
50
|
+
toggle: false,
|
|
51
|
+
},
|
|
52
|
+
[TagsConfigSubType.FILE_STATUS]: {
|
|
53
|
+
toggle: false,
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
[Scenario.FORECAST]: {
|
|
57
|
+
[TagsConfigSubType.FORECAST_NEW]: {
|
|
58
|
+
toggle: true,
|
|
59
|
+
name: 'Date',
|
|
60
|
+
},
|
|
61
|
+
[TagsConfigSubType.FILE_STATUS]: {
|
|
62
|
+
toggle: false,
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
[Scenario.NONE]: Object.assign(Object.assign({}, allDateTags), { [TagsConfigSubType.MONTH]: {
|
|
66
|
+
name: 'Date',
|
|
67
|
+
toggle: true,
|
|
68
|
+
}, [TagsConfigSubType.FILE_STATUS]: {
|
|
69
|
+
toggle: true,
|
|
70
|
+
} }),
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NlbmFyaW8tdGFncy1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1zY2VuYXJpby9jb25zdHMvc2NlbmFyaW8tdGFncy1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBNEMsTUFBTSx3QkFBd0IsQ0FBQztBQUU1RixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUc7SUFDdkIsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN0QixJQUFJLEVBQUUsTUFBTTtRQUNaLE1BQU0sRUFBRSxLQUFLO0tBQ2hCO0lBQ0QsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUN6QixJQUFJLEVBQUUsTUFBTTtRQUNaLE1BQU0sRUFBRSxLQUFLO0tBQ2hCO0lBQ0QsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUN2QixJQUFJLEVBQUUsTUFBTTtRQUNaLE1BQU0sRUFBRSxLQUFLO0tBQ2hCO0lBQ0QsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUNyQixJQUFJLEVBQUUsTUFBTTtRQUNaLE1BQU0sRUFBRSxLQUFLO0tBQ2hCO0lBQ0QsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUN0QixJQUFJLEVBQUUsTUFBTTtRQUNaLE1BQU0sRUFBRSxLQUFLO0tBQ2hCO0NBQ0osQ0FBQztBQUVGLE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxtQkFBNEI7SUFDakUsT0FBTztRQUNILENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxrQ0FDWCxXQUFXLEtBQ2QsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDdkIsSUFBSSxFQUFFLE1BQU07Z0JBQ1osTUFBTSxFQUFFLElBQUk7YUFDZixFQUNELENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLEVBQUU7Z0JBQzdCLE1BQU0sRUFBRSxLQUFLO2FBQ2hCLEdBQ0o7UUFDRCxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNmLENBQUMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLEVBQUU7Z0JBQzlCLE1BQU0sRUFBRSxJQUFJO2dCQUNaLGtCQUFrQixFQUFFLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDO2dCQUM1QyxNQUFNLEVBQUUsQ0FBQyxtQkFBbUI7YUFDL0I7WUFDRCxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUN0QixNQUFNLEVBQUUsS0FBSztnQkFDYixlQUFlLEVBQUUsSUFBSTtnQkFDckIsTUFBTSxFQUFFLG1CQUFtQjthQUM5QjtZQUNELENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3RCLElBQUksRUFBRSxNQUFNO2dCQUNaLE1BQU0sRUFBRSxJQUFJO2FBQ2Y7WUFDRCxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUN6QixJQUFJLEVBQUUsTUFBTTtnQkFDWixNQUFNLEVBQUUsS0FBSzthQUNoQjtZQUNELENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLEVBQUU7Z0JBQzdCLE1BQU0sRUFBRSxLQUFLO2FBQ2hCO1NBQ0o7UUFDRCxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNqQixDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxFQUFFO2dCQUM5QixNQUFNLEVBQUUsSUFBSTtnQkFDWixJQUFJLEVBQUUsTUFBTTthQUNmO1lBQ0QsQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDN0IsTUFBTSxFQUFFLEtBQUs7YUFDaEI7U0FDSjtRQUNELENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxrQ0FDUixXQUFXLEtBQ2QsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDdkIsSUFBSSxFQUFFLE1BQU07Z0JBQ1osTUFBTSxFQUFFLElBQUk7YUFDZixFQUNELENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLEVBQUU7Z0JBQzdCLE1BQU0sRUFBRSxJQUFJO2FBQ2YsR0FDSjtLQUNKLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFnc0NvbmZpZ1N1YlR5cGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2VydmVyVGFncyc7XG5pbXBvcnQgeyBTY2VuYXJpbywgVFNjZW5hcmlvVGFnQ29uZmlnRGF0YSwgVFNjZW5hcmlvVGFnRGF0YSB9IGZyb20gJy4uL2ludGVyZmFjZXMvc2NlbmFyaW8nO1xuXG5leHBvcnQgY29uc3QgYWxsRGF0ZVRhZ3MgPSB7XG4gICAgW1RhZ3NDb25maWdTdWJUeXBlLllFQVJdOiB7XG4gICAgICAgIG5hbWU6ICdEYXRlJyxcbiAgICAgICAgdG9nZ2xlOiBmYWxzZSxcbiAgICB9LFxuICAgIFtUYWdzQ29uZmlnU3ViVHlwZS5RVUFSVEVSXToge1xuICAgICAgICBuYW1lOiAnRGF0ZScsXG4gICAgICAgIHRvZ2dsZTogZmFsc2UsXG4gICAgfSxcbiAgICBbVGFnc0NvbmZpZ1N1YlR5cGUuTU9OVEhdOiB7XG4gICAgICAgIG5hbWU6ICdEYXRlJyxcbiAgICAgICAgdG9nZ2xlOiBmYWxzZSxcbiAgICB9LFxuICAgIFtUYWdzQ29uZmlnU3ViVHlwZS5EQVldOiB7XG4gICAgICAgIG5hbWU6ICdEYXRlJyxcbiAgICAgICAgdG9nZ2xlOiBmYWxzZSxcbiAgICB9LFxuICAgIFtUYWdzQ29uZmlnU3ViVHlwZS5XRUVLXToge1xuICAgICAgICBuYW1lOiAnRGF0ZScsXG4gICAgICAgIHRvZ2dsZTogZmFsc2UsXG4gICAgfVxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNjZW5hcmlvVGFnRGF0YUNvbmZpZyhpc011bHRpcGxlRGltZW5zaW9uOiBib29sZWFuKTogVFNjZW5hcmlvVGFnRGF0YTxUU2NlbmFyaW9UYWdDb25maWdEYXRhPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgW1NjZW5hcmlvLkFDVFVBTFNdOiB7XG4gICAgICAgICAgICAuLi5hbGxEYXRlVGFncyxcbiAgICAgICAgICAgIFtUYWdzQ29uZmlnU3ViVHlwZS5NT05USF06IHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnRGF0ZScsXG4gICAgICAgICAgICAgICAgdG9nZ2xlOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFtUYWdzQ29uZmlnU3ViVHlwZS5GSUxFX1NUQVRVU106IHtcbiAgICAgICAgICAgICAgICB0b2dnbGU6IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgW1NjZW5hcmlvLkJVREdFVF06IHtcbiAgICAgICAgICAgIFtUYWdzQ29uZmlnU3ViVHlwZS5CVURHRVRfQ1lDTEVdOiB7XG4gICAgICAgICAgICAgICAgdG9nZ2xlOiB0cnVlLFxuICAgICAgICAgICAgICAgIGFjY2VwdGFibGVEYXRlVGFnczogW1RhZ3NDb25maWdTdWJUeXBlLllFQVJdLFxuICAgICAgICAgICAgICAgIGhpZGRlbjogIWlzTXVsdGlwbGVEaW1lbnNpb24sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgW1RhZ3NDb25maWdTdWJUeXBlLlBMQU5dOiB7XG4gICAgICAgICAgICAgICAgdG9nZ2xlOiBmYWxzZSxcbiAgICAgICAgICAgICAgICB0dXJuT2ZmRGF0ZVRhZ3M6IHRydWUsXG4gICAgICAgICAgICAgICAgaGlkZGVuOiBpc011bHRpcGxlRGltZW5zaW9uLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFtUYWdzQ29uZmlnU3ViVHlwZS5ZRUFSXToge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdEYXRlJyxcbiAgICAgICAgICAgICAgICB0b2dnbGU6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgW1RhZ3NDb25maWdTdWJUeXBlLlFVQVJURVJdOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ0RhdGUnLFxuICAgICAgICAgICAgICAgIHRvZ2dsZTogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgW1RhZ3NDb25maWdTdWJUeXBlLkZJTEVfU1RBVFVTXToge1xuICAgICAgICAgICAgICAgIHRvZ2dsZTogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBbU2NlbmFyaW8uRk9SRUNBU1RdOiB7XG4gICAgICAgICAgICBbVGFnc0NvbmZpZ1N1YlR5cGUuRk9SRUNBU1RfTkVXXToge1xuICAgICAgICAgICAgICAgIHRvZ2dsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBuYW1lOiAnRGF0ZScsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgW1RhZ3NDb25maWdTdWJUeXBlLkZJTEVfU1RBVFVTXToge1xuICAgICAgICAgICAgICAgIHRvZ2dsZTogZmFsc2UsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBbU2NlbmFyaW8uTk9ORV06IHtcbiAgICAgICAgICAgIC4uLmFsbERhdGVUYWdzLFxuICAgICAgICAgICAgW1RhZ3NDb25maWdTdWJUeXBlLk1PTlRIXToge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdEYXRlJyxcbiAgICAgICAgICAgICAgICB0b2dnbGU6IHRydWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgW1RhZ3NDb25maWdTdWJUeXBlLkZJTEVfU1RBVFVTXToge1xuICAgICAgICAgICAgICAgIHRvZ2dsZTogdHJ1ZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgfTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ScenarioService } from './services/scenario.service';
|
|
4
|
+
import { DrInputsModule } from '../dr-inputs/dr-inputs.module';
|
|
5
|
+
import { FormsModule } from '@angular/forms';
|
|
6
|
+
import { DrScenarioConfigurationComponent } from './components/dr-scenario-configuration/dr-scenario-configuration.component';
|
|
7
|
+
import { DrScenarioTagConfigurationComponent } from './components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component';
|
|
8
|
+
import { DrTagModule } from '../dr-tags/dr-tag.module';
|
|
9
|
+
const COMPONENTS = [
|
|
10
|
+
DrScenarioConfigurationComponent,
|
|
11
|
+
DrScenarioTagConfigurationComponent,
|
|
12
|
+
];
|
|
13
|
+
export class DrScenarioModule {
|
|
14
|
+
}
|
|
15
|
+
DrScenarioModule.decorators = [
|
|
16
|
+
{ type: NgModule, args: [{
|
|
17
|
+
declarations: [...COMPONENTS],
|
|
18
|
+
providers: [ScenarioService],
|
|
19
|
+
imports: [
|
|
20
|
+
CommonModule,
|
|
21
|
+
DrInputsModule,
|
|
22
|
+
FormsModule,
|
|
23
|
+
DrTagModule
|
|
24
|
+
],
|
|
25
|
+
exports: [...COMPONENTS],
|
|
26
|
+
},] }
|
|
27
|
+
];
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItc2NlbmFyaW8ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItc2NlbmFyaW8vZHItc2NlbmFyaW8ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLDRFQUE0RSxDQUFDO0FBQzlILE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLG9GQUFvRixDQUFDO0FBQ3pJLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUd2RCxNQUFNLFVBQVUsR0FBRztJQUNmLGdDQUFnQztJQUNoQyxtQ0FBbUM7Q0FDdEMsQ0FBQTtBQWFELE1BQU0sT0FBTyxnQkFBZ0I7OztZQVg1QixRQUFRLFNBQUM7Z0JBQ04sWUFBWSxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7Z0JBQzdCLFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQztnQkFDNUIsT0FBTyxFQUFFO29CQUNMLFlBQVk7b0JBQ1osY0FBYztvQkFDZCxXQUFXO29CQUNYLFdBQVc7aUJBQ2Q7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUM7YUFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNjZW5hcmlvU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvc2NlbmFyaW8uc2VydmljZSc7XG5pbXBvcnQgeyBEcklucHV0c01vZHVsZSB9IGZyb20gJy4uL2RyLWlucHV0cy9kci1pbnB1dHMubW9kdWxlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRHJTY2VuYXJpb0NvbmZpZ3VyYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZHItc2NlbmFyaW8tY29uZmlndXJhdGlvbi9kci1zY2VuYXJpby1jb25maWd1cmF0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEclNjZW5hcmlvVGFnQ29uZmlndXJhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9kci1zY2VuYXJpby10YWctY29uZmlndXJhdGlvbi9kci1zY2VuYXJpby10YWctY29uZmlndXJhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRHJUYWdNb2R1bGUgfSBmcm9tICcuLi9kci10YWdzL2RyLXRhZy5tb2R1bGUnO1xuXG5cbmNvbnN0IENPTVBPTkVOVFMgPSBbXG4gICAgRHJTY2VuYXJpb0NvbmZpZ3VyYXRpb25Db21wb25lbnQsXG4gICAgRHJTY2VuYXJpb1RhZ0NvbmZpZ3VyYXRpb25Db21wb25lbnQsXG5dXG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbLi4uQ09NUE9ORU5UU10sXG4gICAgcHJvdmlkZXJzOiBbU2NlbmFyaW9TZXJ2aWNlXSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRHJJbnB1dHNNb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBEclRhZ01vZHVsZVxuICAgIF0sXG4gICAgZXhwb3J0czogWy4uLkNPTVBPTkVOVFNdLFxufSlcbmV4cG9ydCBjbGFzcyBEclNjZW5hcmlvTW9kdWxlIHtcbn1cbiJdfQ==
|