@datarailsshared/datarailsshared 1.4.188 → 1.4.193-rocket
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/datarailsshared-datarailsshared-1.4.193-rocket.tgz +0 -0
- package/esm2022/datarailsshared-datarailsshared.mjs +5 -0
- package/esm2022/lib/date-tags/any-tag.component.mjs +45 -0
- package/esm2022/lib/date-tags/date-tag.component.mjs +48 -0
- package/esm2022/lib/date-tags/date-tag.module.mjs +66 -0
- package/esm2022/lib/date-tags/day-tag/day-tag.component.mjs +84 -0
- package/esm2022/lib/date-tags/forecast-tag/forecast-tag.component.mjs +162 -0
- package/esm2022/lib/date-tags/month-tag/month-tag.component.mjs +87 -0
- package/esm2022/lib/date-tags/quarter-tag/quarter-tag.component.mjs +107 -0
- package/esm2022/lib/date-tags/week-tag/week-tag.component.mjs +91 -0
- package/esm2022/lib/date-tags/year-tag/year-tag.component.mjs +85 -0
- package/esm2022/lib/directives/click-outside/click-outside.directive.mjs +94 -0
- package/esm2022/lib/directives/click-outside/click-outside.module.mjs +18 -0
- package/esm2022/lib/dr-accordion/accordion-item-body.component.mjs +59 -0
- package/esm2022/lib/dr-accordion/accordion-item-header.component.mjs +109 -0
- package/esm2022/lib/dr-accordion/accordion-item.component.mjs +142 -0
- package/esm2022/lib/dr-accordion/accordion.component.mjs +41 -0
- package/esm2022/lib/dr-accordion/accordion.module.mjs +34 -0
- package/esm2022/lib/dr-avatar/dr-avatar.component.mjs +48 -0
- package/esm2022/lib/dr-avatar/dr-avatar.module.mjs +37 -0
- package/esm2022/lib/dr-avatar/dr-avatar.pipe.mjs +20 -0
- package/esm2022/lib/dr-badge-status/dr-badge-status.component.mjs +30 -0
- package/esm2022/lib/dr-badge-status/dr-badge-status.module.mjs +27 -0
- package/esm2022/lib/dr-chat/chat.component.mjs +147 -0
- package/esm2022/lib/dr-chat/chat.module.mjs +68 -0
- package/esm2022/lib/dr-chat/dr-chat-form/chat-form.component.mjs +169 -0
- package/esm2022/lib/dr-chat/dr-chat-message/chat-message.component.mjs +108 -0
- package/{esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.directive.js → esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.directive.mjs} +21 -21
- package/esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.service.mjs +24 -0
- package/esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-file/chat-message-file.component.mjs +57 -0
- package/esm2022/lib/dr-chat/dr-chat-message/dr-chat-message-text/chat-message-text.component.mjs +23 -0
- package/esm2022/lib/dr-chat/dr-chat-suggestions/chat-suggestions.component.mjs +89 -0
- package/esm2022/lib/dr-chat/dr-dot-flashing/dr-dot-flashing.component.mjs +13 -0
- package/esm2022/lib/dr-details-list/dr-details-list.component.mjs +78 -0
- package/esm2022/lib/dr-details-list/dr-details-list.module.mjs +21 -0
- package/esm2022/lib/dr-dialog/components/dialog-modal-wrapper/dialog-modal-wrapper.component.mjs +79 -0
- package/esm2022/lib/dr-dialog/components/dialog-wrapper/dialog-wrapper.component.mjs +102 -0
- package/esm2022/lib/dr-dialog/dialog.module.mjs +51 -0
- package/esm2022/lib/dr-dialog/interfaces/dialog-data.mjs +25 -0
- package/esm2022/lib/dr-dialog/services/dialog.service.mjs +78 -0
- package/esm2022/lib/dr-dropdown/dr-dropdown-item-show.pipe.mjs +16 -0
- package/esm2022/lib/dr-dropdown/dr-dropdown-position.directive.mjs +108 -0
- package/esm2022/lib/dr-dropdown/dr-dropdown.component.mjs +124 -0
- package/esm2022/lib/dr-dropdown/dr-dropdown.directive.mjs +125 -0
- package/esm2022/lib/dr-dropdown/dr-dropdown.module.mjs +49 -0
- package/esm2022/lib/dr-dropdown/dr-dropdown.service.mjs +26 -0
- package/esm2022/lib/dr-dynamic-tag/dr-dynamic-tag.component.mjs +119 -0
- package/esm2022/lib/dr-dynamic-tag/dr-dynamic-tag.module.mjs +28 -0
- package/esm2022/lib/dr-error/dr-error.component.mjs +69 -0
- package/esm2022/lib/dr-error/dr-error.module.mjs +31 -0
- package/esm2022/lib/dr-inputs/button/button.component.mjs +70 -0
- package/esm2022/lib/dr-inputs/checkbox/checkbox.component.mjs +67 -0
- package/esm2022/lib/dr-inputs/date-pickers/directives/dr-date-picker-format.directive.mjs +67 -0
- package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component.mjs +234 -0
- package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.mjs +194 -0
- package/esm2022/lib/dr-inputs/date-pickers/dr-date-picker_custom-header/dr-date-picker_custom-header.component.mjs +190 -0
- package/esm2022/lib/dr-inputs/date-pickers/dr-show-timeframe.pipe.mjs +16 -0
- package/esm2022/lib/dr-inputs/date-pickers/services/dr-date-picker.service.mjs +198 -0
- package/esm2022/lib/dr-inputs/dr-input/dr-input.component.mjs +232 -0
- package/esm2022/lib/dr-inputs/dr-inputs.module.mjs +108 -0
- package/esm2022/lib/dr-inputs/dr-model-debounce-change.directive.mjs +32 -0
- package/esm2022/lib/dr-inputs/dr-select/dr-select.component.mjs +182 -0
- package/esm2022/lib/dr-inputs/dr-select-add-item/dr-select-add-item.component.mjs +82 -0
- package/esm2022/lib/dr-inputs/dr-toggle/dr-toggle.component.mjs +77 -0
- package/esm2022/lib/dr-inputs/dr-toggle-button/dr-toggle-button.component.mjs +69 -0
- package/esm2022/lib/dr-inputs/radio-button/radio-button.component.mjs +82 -0
- package/esm2022/lib/dr-inputs/radio-button/radio-group.component.mjs +180 -0
- package/esm2022/lib/dr-layout/dr-layout-body.component.mjs +16 -0
- package/esm2022/lib/dr-layout/dr-layout-header.component.mjs +24 -0
- package/esm2022/lib/dr-layout/dr-layout.component.mjs +13 -0
- package/esm2022/lib/dr-layout/dr-layout.module.mjs +29 -0
- package/esm2022/lib/dr-popover/dr-popover-ref.mjs +23 -0
- package/esm2022/lib/dr-popover/dr-popover.component.mjs +141 -0
- package/esm2022/lib/dr-popover/dr-popover.directive.mjs +115 -0
- package/esm2022/lib/dr-popover/dr-popover.module.mjs +30 -0
- package/esm2022/lib/dr-popover/dr-popover.service.mjs +110 -0
- package/esm2022/lib/dr-scenario/components/dr-scenario-configuration/dr-scenario-configuration.component.mjs +110 -0
- package/esm2022/lib/dr-scenario/components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component.mjs +85 -0
- package/esm2022/lib/dr-scenario/consts/scenario-tags-config.mjs +81 -0
- package/esm2022/lib/dr-scenario/dr-scenario.module.mjs +41 -0
- package/esm2022/lib/dr-scenario/services/scenario.service.mjs +166 -0
- package/esm2022/lib/dr-spinner/dr-spinner.component.mjs +18 -0
- package/esm2022/lib/dr-spinner/dr-spinner.directive.mjs +66 -0
- package/esm2022/lib/dr-spinner/dr-spinner.module.mjs +23 -0
- package/esm2022/lib/dr-tabs/dr-tab.component.mjs +42 -0
- package/esm2022/lib/dr-tabs/dr-tabs.component.mjs +51 -0
- package/esm2022/lib/dr-tabs/dr-tabs.module.mjs +49 -0
- package/esm2022/lib/dr-tags/dr-tag.component.mjs +201 -0
- package/esm2022/lib/dr-tags/dr-tag.module.mjs +35 -0
- package/esm2022/lib/dr-tooltip/components/tooltip-info/tooltip-info.component.mjs +20 -0
- package/esm2022/lib/dr-tooltip/components/tooltip-info-simple/tooltip-info-simple.component.mjs +17 -0
- package/esm2022/lib/dr-tooltip/components/tooltip-no-body/tooltip-no-body.component.mjs +19 -0
- package/esm2022/lib/dr-tooltip/components/tooltip-process-default/tooltip-process-default.component.mjs +20 -0
- package/esm2022/lib/dr-tooltip/dr-tooltip.component.mjs +53 -0
- package/esm2022/lib/dr-tooltip/dr-tooltip.directive.mjs +165 -0
- package/esm2022/lib/dr-tooltip/dr-tooltip.module.mjs +48 -0
- package/esm2022/lib/dr-treeview/components/treeview/treeview.component.mjs +224 -0
- package/esm2022/lib/dr-treeview/components/treeview-item/treeview-item.component.mjs +62 -0
- package/esm2022/lib/dr-treeview/dr-tree-view.module.mjs +48 -0
- package/esm2022/lib/dr-treeview/helpers/treeview-event-parser.mjs +103 -0
- package/esm2022/lib/dr-treeview/models/treeview-config.mjs +23 -0
- package/esm2022/lib/dr-treeview/models/treeview-i18n.mjs +47 -0
- package/esm2022/lib/dr-treeview/models/treeview-item.mjs +158 -0
- package/esm2022/lib/dr-treeview/pipes/treeview.pipe.mjs +21 -0
- package/esm2022/lib/list-tags/list-tag.component.mjs +45 -0
- package/esm2022/lib/list-tags/list-tag.module.mjs +34 -0
- package/esm2022/lib/models/chat.mjs +49 -0
- package/esm2022/lib/models/datePicker.mjs +71 -0
- package/esm2022/lib/models/popover.mjs +27 -0
- package/esm2022/lib/stepper/stepper.component.mjs +66 -0
- package/esm2022/lib/stepper/stepper.module.mjs +24 -0
- package/esm2022/public-api.mjs +120 -0
- package/fesm2022/datarailsshared-datarailsshared.mjs +7893 -0
- package/fesm2022/datarailsshared-datarailsshared.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/date-tags/any-tag.component.d.ts +20 -0
- package/lib/date-tags/date-tag.component.d.ts +4 -16
- package/lib/date-tags/date-tag.module.d.ts +19 -2
- package/lib/date-tags/day-tag/day-tag.component.d.ts +4 -1
- package/lib/date-tags/forecast-tag/forecast-tag.component.d.ts +5 -2
- package/lib/date-tags/month-tag/month-tag.component.d.ts +4 -1
- package/lib/date-tags/quarter-tag/quarter-tag.component.d.ts +4 -1
- package/lib/date-tags/week-tag/week-tag.component.d.ts +4 -1
- package/lib/date-tags/year-tag/year-tag.component.d.ts +4 -1
- package/lib/directives/click-outside/click-outside.directive.d.ts +23 -0
- package/lib/directives/click-outside/click-outside.module.d.ts +8 -0
- package/lib/dr-accordion/accordion-item-body.component.d.ts +3 -0
- package/lib/dr-accordion/accordion-item-header.component.d.ts +3 -0
- package/lib/dr-accordion/accordion-item.component.d.ts +3 -0
- package/lib/dr-accordion/accordion.component.d.ts +3 -0
- package/lib/dr-accordion/accordion.module.d.ts +9 -0
- package/lib/dr-avatar/dr-avatar.component.d.ts +3 -0
- package/lib/dr-avatar/dr-avatar.module.d.ts +9 -0
- package/lib/dr-avatar/dr-avatar.pipe.d.ts +3 -0
- package/lib/dr-badge-status/dr-badge-status.component.d.ts +3 -0
- package/lib/dr-badge-status/dr-badge-status.module.d.ts +7 -0
- package/lib/dr-chat/chat.component.d.ts +3 -0
- package/lib/dr-chat/chat.module.d.ts +17 -0
- package/lib/dr-chat/dr-chat-form/chat-form.component.d.ts +3 -0
- package/lib/dr-chat/dr-chat-message/chat-message.component.d.ts +3 -0
- package/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.directive.d.ts +3 -0
- package/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.service.d.ts +3 -0
- package/lib/dr-chat/dr-chat-message/dr-chat-message-file/chat-message-file.component.d.ts +3 -0
- package/lib/dr-chat/dr-chat-message/dr-chat-message-text/chat-message-text.component.d.ts +3 -0
- package/lib/dr-chat/dr-chat-suggestions/chat-suggestions.component.d.ts +3 -0
- package/lib/dr-chat/dr-dot-flashing/dr-dot-flashing.component.d.ts +3 -0
- package/lib/dr-details-list/dr-details-list.component.d.ts +3 -0
- package/lib/dr-details-list/dr-details-list.module.d.ts +6 -0
- package/lib/dr-dialog/components/dialog-modal-wrapper/dialog-modal-wrapper.component.d.ts +4 -1
- package/lib/dr-dialog/components/dialog-wrapper/dialog-wrapper.component.d.ts +4 -1
- package/lib/dr-dialog/dialog.module.d.ts +12 -0
- package/lib/dr-dialog/interfaces/dialog-data.d.ts +7 -7
- package/lib/dr-dialog/services/dialog.service.d.ts +4 -1
- package/lib/dr-dropdown/dr-dropdown-item-show.pipe.d.ts +3 -0
- package/lib/dr-dropdown/dr-dropdown-position.directive.d.ts +3 -0
- package/lib/dr-dropdown/dr-dropdown.component.d.ts +3 -0
- package/lib/dr-dropdown/dr-dropdown.directive.d.ts +3 -0
- package/lib/dr-dropdown/dr-dropdown.module.d.ts +10 -0
- package/lib/dr-dropdown/dr-dropdown.service.d.ts +3 -0
- package/lib/dr-dynamic-tag/dr-dynamic-tag.component.d.ts +3 -0
- package/lib/dr-dynamic-tag/dr-dynamic-tag.module.d.ts +8 -0
- package/lib/dr-error/dr-error.component.d.ts +3 -0
- package/lib/dr-error/dr-error.module.d.ts +8 -0
- package/lib/dr-inputs/button/button.component.d.ts +4 -1
- package/lib/dr-inputs/checkbox/checkbox.component.d.ts +3 -0
- package/lib/dr-inputs/date-pickers/directives/dr-date-picker-format.directive.d.ts +3 -0
- package/lib/dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component.d.ts +3 -0
- package/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.d.ts +3 -0
- package/lib/dr-inputs/date-pickers/dr-date-picker_custom-header/dr-date-picker_custom-header.component.d.ts +4 -8
- package/lib/dr-inputs/date-pickers/dr-show-timeframe.pipe.d.ts +4 -2
- package/lib/dr-inputs/date-pickers/services/dr-date-picker.service.d.ts +3 -0
- package/lib/dr-inputs/dr-input/dr-input.component.d.ts +3 -0
- package/lib/dr-inputs/dr-inputs.module.d.ts +25 -0
- package/lib/dr-inputs/dr-model-debounce-change.directive.d.ts +3 -0
- package/lib/dr-inputs/dr-select/dr-select.component.d.ts +3 -0
- package/lib/dr-inputs/dr-select-add-item/dr-select-add-item.component.d.ts +3 -0
- package/lib/dr-inputs/dr-toggle/dr-toggle.component.d.ts +3 -0
- package/lib/dr-inputs/dr-toggle-button/dr-toggle-button.component.d.ts +3 -0
- package/lib/dr-inputs/radio-button/radio-button.component.d.ts +3 -0
- package/lib/dr-inputs/radio-button/radio-group.component.d.ts +3 -0
- package/lib/dr-layout/dr-layout-body.component.d.ts +3 -0
- package/lib/dr-layout/dr-layout-header.component.d.ts +3 -0
- package/lib/dr-layout/dr-layout.component.d.ts +3 -0
- package/lib/dr-layout/dr-layout.module.d.ts +8 -0
- package/lib/dr-popover/dr-popover.component.d.ts +8 -4
- package/lib/dr-popover/dr-popover.directive.d.ts +3 -0
- package/lib/dr-popover/dr-popover.module.d.ts +7 -0
- package/lib/dr-popover/dr-popover.service.d.ts +3 -0
- package/lib/dr-scenario/components/dr-scenario-configuration/dr-scenario-configuration.component.d.ts +3 -0
- package/lib/dr-scenario/components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component.d.ts +3 -0
- package/lib/dr-scenario/dr-scenario.module.d.ts +10 -0
- package/lib/dr-scenario/interfaces/scenario.d.ts +3 -3
- package/lib/dr-scenario/services/scenario.service.d.ts +3 -0
- package/lib/dr-spinner/dr-spinner.component.d.ts +3 -0
- package/lib/dr-spinner/dr-spinner.directive.d.ts +3 -0
- package/lib/dr-spinner/dr-spinner.module.d.ts +7 -0
- package/lib/dr-tabs/dr-tab.component.d.ts +3 -0
- package/lib/dr-tabs/dr-tabs.component.d.ts +3 -0
- package/lib/dr-tabs/dr-tabs.module.d.ts +11 -0
- package/lib/dr-tags/dr-tag.component.d.ts +3 -0
- package/lib/dr-tags/dr-tag.module.d.ts +9 -0
- package/lib/dr-tooltip/components/tooltip-info/tooltip-info.component.d.ts +3 -0
- package/lib/dr-tooltip/components/tooltip-info-simple/tooltip-info-simple.component.d.ts +3 -0
- package/lib/dr-tooltip/components/tooltip-no-body/tooltip-no-body.component.d.ts +3 -0
- package/lib/dr-tooltip/components/tooltip-process-default/tooltip-process-default.component.d.ts +3 -0
- package/lib/dr-tooltip/dr-tooltip.component.d.ts +4 -1
- package/lib/dr-tooltip/dr-tooltip.directive.d.ts +3 -0
- package/lib/dr-tooltip/dr-tooltip.module.d.ts +11 -0
- package/lib/dr-tooltip/interfaces/tooltip-component-context.d.ts +1 -1
- package/lib/dr-treeview/components/treeview/treeview.component.d.ts +3 -0
- package/lib/dr-treeview/components/treeview-item/treeview-item.component.d.ts +3 -0
- package/lib/dr-treeview/dr-tree-view.module.d.ts +9 -0
- package/lib/dr-treeview/helpers/treeview-event-parser.d.ts +9 -0
- package/lib/dr-treeview/models/treeview-config.d.ts +3 -0
- package/lib/dr-treeview/models/treeview-i18n.d.ts +5 -0
- package/lib/dr-treeview/pipes/treeview.pipe.d.ts +3 -0
- package/lib/list-tags/list-tag.component.d.ts +3 -0
- package/lib/list-tags/list-tag.module.d.ts +8 -0
- package/lib/models/chat.d.ts +2 -2
- package/lib/models/datePicker.d.ts +10 -3
- 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 +3 -0
- package/lib/stepper/stepper.module.d.ts +7 -0
- package/package.json +27 -15
- package/public-api.d.ts +27 -0
- package/bundles/datarailsshared-datarailsshared.umd.js +0 -8041
- package/bundles/datarailsshared-datarailsshared.umd.js.map +0 -1
- package/datarailsshared-datarailsshared-1.4.188.tgz +0 -0
- package/datarailsshared-datarailsshared.d.ts +0 -34
- package/datarailsshared-datarailsshared.metadata.json +0 -1
- package/esm2015/datarailsshared-datarailsshared.js +0 -35
- package/esm2015/lib/date-tags/date-tag.component.js +0 -73
- package/esm2015/lib/date-tags/date-tag.module.js +0 -36
- package/esm2015/lib/date-tags/day-tag/day-tag.component.js +0 -77
- package/esm2015/lib/date-tags/forecast-tag/forecast-tag.component.js +0 -153
- package/esm2015/lib/date-tags/month-tag/month-tag.component.js +0 -80
- package/esm2015/lib/date-tags/quarter-tag/quarter-tag.component.js +0 -105
- package/esm2015/lib/date-tags/week-tag/week-tag.component.js +0 -84
- package/esm2015/lib/date-tags/year-tag/year-tag.component.js +0 -78
- package/esm2015/lib/dr-accordion/accordion-item-body.component.js +0 -55
- package/esm2015/lib/dr-accordion/accordion-item-header.component.js +0 -77
- package/esm2015/lib/dr-accordion/accordion-item.component.js +0 -123
- package/esm2015/lib/dr-accordion/accordion.component.js +0 -43
- package/esm2015/lib/dr-accordion/accordion.module.js +0 -23
- package/esm2015/lib/dr-avatar/dr-avatar.component.js +0 -44
- package/esm2015/lib/dr-avatar/dr-avatar.module.js +0 -26
- package/esm2015/lib/dr-avatar/dr-avatar.pipe.js +0 -16
- package/esm2015/lib/dr-badge-status/dr-badge-status.component.js +0 -25
- package/esm2015/lib/dr-badge-status/dr-badge-status.module.js +0 -20
- package/esm2015/lib/dr-chat/chat.component.js +0 -119
- package/esm2015/lib/dr-chat/chat.module.js +0 -41
- package/esm2015/lib/dr-chat/dr-chat-form/chat-form.component.js +0 -155
- package/esm2015/lib/dr-chat/dr-chat-message/chat-message.component.js +0 -71
- package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.service.js +0 -23
- package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-file/chat-message-file.component.js +0 -47
- package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-text/chat-message-text.component.js +0 -18
- package/esm2015/lib/dr-chat/dr-chat-suggestions/chat-suggestions.component.js +0 -87
- package/esm2015/lib/dr-chat/dr-dot-flashing/dr-dot-flashing.component.js +0 -15
- package/esm2015/lib/dr-details-list/dr-details-list.component.js +0 -65
- package/esm2015/lib/dr-details-list/dr-details-list.module.js +0 -16
- package/esm2015/lib/dr-dialog/components/dialog-modal-wrapper/dialog-modal-wrapper.component.js +0 -70
- package/esm2015/lib/dr-dialog/components/dialog-wrapper/dialog-wrapper.component.js +0 -92
- package/esm2015/lib/dr-dialog/dialog.module.js +0 -34
- package/esm2015/lib/dr-dialog/interfaces/dialog-data.js +0 -25
- package/esm2015/lib/dr-dialog/services/dialog.service.js +0 -78
- package/esm2015/lib/dr-dropdown/dr-dropdown-item-show.pipe.js +0 -12
- package/esm2015/lib/dr-dropdown/dr-dropdown-position.directive.js +0 -104
- package/esm2015/lib/dr-dropdown/dr-dropdown.component.js +0 -114
- package/esm2015/lib/dr-dropdown/dr-dropdown.directive.js +0 -104
- package/esm2015/lib/dr-dropdown/dr-dropdown.module.js +0 -34
- package/esm2015/lib/dr-dropdown/dr-dropdown.service.js +0 -24
- package/esm2015/lib/dr-dynamic-tag/dr-dynamic-tag.component.js +0 -103
- package/esm2015/lib/dr-dynamic-tag/dr-dynamic-tag.module.js +0 -19
- package/esm2015/lib/dr-error/dr-error.component.js +0 -64
- package/esm2015/lib/dr-error/dr-error.module.js +0 -22
- package/esm2015/lib/dr-inputs/button/button.component.js +0 -39
- package/esm2015/lib/dr-inputs/checkbox/checkbox.component.js +0 -65
- package/esm2015/lib/dr-inputs/date-pickers/directives/dr-date-picker-format.directive.js +0 -47
- package/esm2015/lib/dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component.js +0 -216
- package/esm2015/lib/dr-inputs/date-pickers/dr-date-picker-with-timeframe/dr-date-picker-with-timeframe.component.js +0 -180
- package/esm2015/lib/dr-inputs/date-pickers/dr-date-picker_custom-header/dr-date-picker_custom-header.component.js +0 -183
- package/esm2015/lib/dr-inputs/date-pickers/dr-show-timeframe.pipe.js +0 -12
- package/esm2015/lib/dr-inputs/date-pickers/services/dr-date-picker.service.js +0 -194
- package/esm2015/lib/dr-inputs/dr-input/dr-input.component.js +0 -194
- package/esm2015/lib/dr-inputs/dr-inputs.module.js +0 -66
- package/esm2015/lib/dr-inputs/dr-model-debounce-change.directive.js +0 -29
- package/esm2015/lib/dr-inputs/dr-select/dr-select.component.js +0 -119
- package/esm2015/lib/dr-inputs/dr-select-add-item/dr-select-add-item.component.js +0 -74
- package/esm2015/lib/dr-inputs/dr-toggle/dr-toggle.component.js +0 -68
- package/esm2015/lib/dr-inputs/dr-toggle-button/dr-toggle-button.component.js +0 -63
- package/esm2015/lib/dr-inputs/radio-button/radio-button.component.js +0 -73
- package/esm2015/lib/dr-inputs/radio-button/radio-group.component.js +0 -157
- package/esm2015/lib/dr-layout/dr-layout-body.component.js +0 -13
- package/esm2015/lib/dr-layout/dr-layout-header.component.js +0 -17
- package/esm2015/lib/dr-layout/dr-layout.component.js +0 -14
- package/esm2015/lib/dr-layout/dr-layout.module.js +0 -20
- package/esm2015/lib/dr-popover/dr-popover-ref.js +0 -20
- package/esm2015/lib/dr-popover/dr-popover.component.js +0 -106
- package/esm2015/lib/dr-popover/dr-popover.directive.js +0 -84
- package/esm2015/lib/dr-popover/dr-popover.module.js +0 -23
- package/esm2015/lib/dr-popover/dr-popover.service.js +0 -106
- package/esm2015/lib/dr-scenario/components/dr-scenario-configuration/dr-scenario-configuration.component.js +0 -102
- package/esm2015/lib/dr-scenario/components/dr-scenario-tag-configuration/dr-scenario-tag-configuration.component.js +0 -74
- package/esm2015/lib/dr-scenario/consts/scenario-tags-config.js +0 -73
- package/esm2015/lib/dr-scenario/dr-scenario.module.js +0 -28
- package/esm2015/lib/dr-scenario/services/scenario.service.js +0 -167
- package/esm2015/lib/dr-spinner/dr-spinner.component.js +0 -18
- package/esm2015/lib/dr-spinner/dr-spinner.directive.js +0 -56
- package/esm2015/lib/dr-spinner/dr-spinner.module.js +0 -18
- package/esm2015/lib/dr-tabs/dr-tab.component.js +0 -26
- package/esm2015/lib/dr-tabs/dr-tabs.component.js +0 -35
- package/esm2015/lib/dr-tabs/dr-tabs.module.js +0 -32
- package/esm2015/lib/dr-tags/dr-tag.component.js +0 -177
- package/esm2015/lib/dr-tags/dr-tag.module.js +0 -24
- package/esm2015/lib/dr-tooltip/components/tooltip-info/tooltip-info.component.js +0 -19
- package/esm2015/lib/dr-tooltip/components/tooltip-info-simple/tooltip-info-simple.component.js +0 -18
- package/esm2015/lib/dr-tooltip/components/tooltip-no-body/tooltip-no-body.component.js +0 -20
- package/esm2015/lib/dr-tooltip/components/tooltip-process-default/tooltip-process-default.component.js +0 -34
- package/esm2015/lib/dr-tooltip/dr-tooltip.component.js +0 -40
- package/esm2015/lib/dr-tooltip/dr-tooltip.directive.js +0 -147
- package/esm2015/lib/dr-tooltip/dr-tooltip.module.js +0 -35
- package/esm2015/lib/dr-treeview/components/treeview/treeview.component.js +0 -210
- package/esm2015/lib/dr-treeview/components/treeview-item/treeview-item.component.js +0 -58
- package/esm2015/lib/dr-treeview/dr-tree-view.module.js +0 -38
- package/esm2015/lib/dr-treeview/helpers/treeview-event-parser.js +0 -97
- package/esm2015/lib/dr-treeview/models/treeview-config.js +0 -22
- package/esm2015/lib/dr-treeview/models/treeview-i18n.js +0 -42
- package/esm2015/lib/dr-treeview/models/treeview-item.js +0 -155
- package/esm2015/lib/dr-treeview/pipes/treeview.pipe.js +0 -17
- package/esm2015/lib/list-tags/list-tag.component.js +0 -37
- package/esm2015/lib/list-tags/list-tag.module.js +0 -23
- package/esm2015/lib/models/chat.js +0 -36
- package/esm2015/lib/models/datePicker.js +0 -73
- package/esm2015/lib/models/popover.js +0 -27
- package/esm2015/lib/stepper/stepper.component.js +0 -55
- package/esm2015/lib/stepper/stepper.module.js +0 -17
- package/esm2015/public-api.js +0 -93
- package/fesm2015/datarailsshared-datarailsshared.js +0 -6885
- package/fesm2015/datarailsshared-datarailsshared.js.map +0 -1
- /package/{esm2015/lib/dr-inputs/dr-toggle-button/toggle-button-mode.js → esm2022/lib/dr-inputs/dr-toggle-button/toggle-button-mode.mjs} +0 -0
- /package/{esm2015/lib/dr-scenario/interfaces/scenario.js → esm2022/lib/dr-scenario/interfaces/scenario.mjs} +0 -0
- /package/{esm2015/lib/dr-tooltip/enums/tooltip-position.enum.js → esm2022/lib/dr-tooltip/enums/tooltip-position.enum.mjs} +0 -0
- /package/{esm2015/lib/dr-tooltip/interfaces/tooltip-component-context.js → esm2022/lib/dr-tooltip/interfaces/tooltip-component-context.mjs} +0 -0
- /package/{esm2015/lib/dr-treeview/helpers/treeview-helper.js → esm2022/lib/dr-treeview/helpers/treeview-helper.mjs} +0 -0
- /package/{esm2015/lib/dr-treeview/models/treeview-header-template-context.js → esm2022/lib/dr-treeview/models/treeview-header-template-context.mjs} +0 -0
- /package/{esm2015/lib/dr-treeview/models/treeview-item-template-context.js → esm2022/lib/dr-treeview/models/treeview-item-template-context.mjs} +0 -0
- /package/{esm2015/lib/models/badgeStatus.js → esm2022/lib/models/badgeStatus.mjs} +0 -0
- /package/{esm2015/lib/models/constants.js → esm2022/lib/models/constants.mjs} +0 -0
- /package/{esm2015/lib/models/dropdown.js → esm2022/lib/models/dropdown.mjs} +0 -0
- /package/{esm2015/lib/models/serverTags.js → esm2022/lib/models/serverTags.mjs} +0 -0
- /package/{esm2015/lib/models/spinnerOptions.js → esm2022/lib/models/spinnerOptions.mjs} +0 -0
- /package/{esm2015/lib/models/validationError.js → esm2022/lib/models/validationError.mjs} +0 -0
- /package/{esm2015/lib/stepper/interfaces/stepper.js → esm2022/lib/stepper/interfaces/stepper.mjs} +0 -0
- /package/{esm2015/lib/utils/dr-shared-utils.js → esm2022/lib/utils/dr-shared-utils.mjs} +0 -0
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { Component, HostBinding, Input } from '@angular/core';
|
|
2
|
+
import { AnyTagComponent } from '../any-tag.component';
|
|
3
|
+
import { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';
|
|
4
|
+
import { MAT_MOMENT_DATE_ADAPTER_OPTIONS, MomentDateAdapter } from '@angular/material-moment-adapter';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/forms";
|
|
7
|
+
import * as i2 from "../../dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component";
|
|
8
|
+
// @ts-ignore
|
|
9
|
+
const moment = require('moment');
|
|
10
|
+
const WEEK_FORMATS = {
|
|
11
|
+
parse: {
|
|
12
|
+
dateInput: 'WW-YYYY',
|
|
13
|
+
},
|
|
14
|
+
display: {
|
|
15
|
+
dateInput: '[Week] WW, YYYY',
|
|
16
|
+
monthYearLabel: 'MMMM YYYY',
|
|
17
|
+
dateA11yLabel: 'LL',
|
|
18
|
+
monthYearA11yLabel: 'MMMM YYYY'
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
export class WeekTagComponent extends AnyTagComponent {
|
|
22
|
+
get isLocked() {
|
|
23
|
+
return this.date ? !this.dateFilter(moment.unix(this.date)) : false;
|
|
24
|
+
}
|
|
25
|
+
lockedDate = [];
|
|
26
|
+
date;
|
|
27
|
+
constructor() {
|
|
28
|
+
super();
|
|
29
|
+
}
|
|
30
|
+
ngOnInit() {
|
|
31
|
+
this.initName();
|
|
32
|
+
const timestamp = this.defaultValue || moment().unix();
|
|
33
|
+
this.date = timestamp;
|
|
34
|
+
this.dateObj.date = timestamp;
|
|
35
|
+
this.chosenTagHandler(timestamp);
|
|
36
|
+
}
|
|
37
|
+
initName() {
|
|
38
|
+
if (!this.name) {
|
|
39
|
+
this.name = 'Week';
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
dateFilter(date) {
|
|
43
|
+
const week = date.week();
|
|
44
|
+
const year = date.year();
|
|
45
|
+
return !this.lockedDate.some((timestamp) => {
|
|
46
|
+
const lockDate = moment.unix(timestamp);
|
|
47
|
+
return lockDate.week() === week && lockDate.year() === year;
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
;
|
|
51
|
+
chosenTagHandler(value) {
|
|
52
|
+
const resultDate = moment.unix(value);
|
|
53
|
+
const resultTag = {
|
|
54
|
+
name: this.name,
|
|
55
|
+
value: resultDate.unix(),
|
|
56
|
+
label: this.getWeekLabel(resultDate),
|
|
57
|
+
locked: !this.dateFilter(resultDate)
|
|
58
|
+
};
|
|
59
|
+
console.log('resultTag', resultTag);
|
|
60
|
+
this.dateChange.emit(resultTag);
|
|
61
|
+
}
|
|
62
|
+
getWeekLabel(moment) {
|
|
63
|
+
return `W${moment.isoWeek()} ${moment.year()}`;
|
|
64
|
+
}
|
|
65
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: WeekTagComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
66
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: WeekTagComponent, selector: "week-tag", inputs: { lockedDate: "lockedDate" }, host: { properties: { "class.locked": "this.isLocked" } }, providers: [
|
|
67
|
+
{
|
|
68
|
+
provide: DateAdapter,
|
|
69
|
+
useClass: MomentDateAdapter,
|
|
70
|
+
deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
|
|
71
|
+
},
|
|
72
|
+
{ provide: MAT_DATE_FORMATS, useValue: WEEK_FORMATS },
|
|
73
|
+
], usesInheritance: true, ngImport: i0, template: "<div class=\"tag-wrapper\">\n <p class=\"tag__label\">{{ name }}</p>\n <dr-date-picker format=\"week\"\n [(ngModel)]=\"date\"\n [datepickerFilter]=\"dateFilter.bind(this)\"\n (ngModelChange)=\"chosenTagHandler($event)\"></dr-date-picker>\n</div>\n", styles: [":host.locked>.tag-wrapper>dr-date-picker{opacity:.4}.tag__label{margin:0 0 4px;color:#0c142b;font-size:14px;font-weight:400;line-height:22px}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.DrDatePickerComponent, selector: "dr-date-picker", inputs: ["format", "min", "max", "periodPosition", "placeholder", "disabled", "fiscalYearMonthsModifier", "datepickerFilter"] }] });
|
|
74
|
+
}
|
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: WeekTagComponent, decorators: [{
|
|
76
|
+
type: Component,
|
|
77
|
+
args: [{ selector: 'week-tag', providers: [
|
|
78
|
+
{
|
|
79
|
+
provide: DateAdapter,
|
|
80
|
+
useClass: MomentDateAdapter,
|
|
81
|
+
deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
|
|
82
|
+
},
|
|
83
|
+
{ provide: MAT_DATE_FORMATS, useValue: WEEK_FORMATS },
|
|
84
|
+
], template: "<div class=\"tag-wrapper\">\n <p class=\"tag__label\">{{ name }}</p>\n <dr-date-picker format=\"week\"\n [(ngModel)]=\"date\"\n [datepickerFilter]=\"dateFilter.bind(this)\"\n (ngModelChange)=\"chosenTagHandler($event)\"></dr-date-picker>\n</div>\n", styles: [":host.locked>.tag-wrapper>dr-date-picker{opacity:.4}.tag__label{margin:0 0 4px;color:#0c142b;font-size:14px;font-weight:400;line-height:22px}\n"] }]
|
|
85
|
+
}], ctorParameters: function () { return []; }, propDecorators: { isLocked: [{
|
|
86
|
+
type: HostBinding,
|
|
87
|
+
args: ['class.locked']
|
|
88
|
+
}], lockedDate: [{
|
|
89
|
+
type: Input
|
|
90
|
+
}] } });
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2Vlay10YWcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZGF0ZS10YWdzL3dlZWstdGFnL3dlZWstdGFnLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RhdGUtdGFncy93ZWVrLXRhZy93ZWVrLXRhZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFdEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEYsT0FBTyxFQUFFLCtCQUErQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7QUFDdEcsYUFBYTtBQUNiLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUVqQyxNQUFNLFlBQVksR0FBRztJQUNqQixLQUFLLEVBQUU7UUFDSCxTQUFTLEVBQUUsU0FBUztLQUN2QjtJQUNELE9BQU8sRUFBRTtRQUNMLFNBQVMsRUFBRSxpQkFBaUI7UUFDNUIsY0FBYyxFQUFFLFdBQVc7UUFDM0IsYUFBYSxFQUFFLElBQUk7UUFDbkIsa0JBQWtCLEVBQUUsV0FBVztLQUNsQztDQUNKLENBQUM7QUFlRixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsZUFBZTtJQUNqRCxJQUNJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENB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IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElEYXRlVGFnIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3NlcnZlclRhZ3MnO1xuaW1wb3J0IHsgQW55VGFnQ29tcG9uZW50IH0gZnJvbSAnLi4vYW55LXRhZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF0ZUFkYXB0ZXIsIE1BVF9EQVRFX0ZPUk1BVFMsIE1BVF9EQVRFX0xPQ0FMRSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTUFUX01PTUVOVF9EQVRFX0FEQVBURVJfT1BUSU9OUywgTW9tZW50RGF0ZUFkYXB0ZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC1tb21lbnQtYWRhcHRlcic7XG4vLyBAdHMtaWdub3JlXG5jb25zdCBtb21lbnQgPSByZXF1aXJlKCdtb21lbnQnKTtcblxuY29uc3QgV0VFS19GT1JNQVRTID0ge1xuICAgIHBhcnNlOiB7XG4gICAgICAgIGRhdGVJbnB1dDogJ1dXLVlZWVknLFxuICAgIH0sXG4gICAgZGlzcGxheToge1xuICAgICAgICBkYXRlSW5wdXQ6ICdbV2Vla10gV1csIFlZWVknLFxuICAgICAgICBtb250aFllYXJMYWJlbDogJ01NTU0gWVlZWScsXG4gICAgICAgIGRhdGVBMTF5TGFiZWw6ICdMTCcsXG4gICAgICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NTU0gWVlZWSdcbiAgICB9LFxufTtcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6ICd3ZWVrLXRhZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc2VsZWN0b3I6ICd3ZWVrLXRhZycsXG4gICAgc3R5bGVVcmxzOiBbJy4vd2Vlay10YWcuY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogRGF0ZUFkYXB0ZXIsXG4gICAgICAgICAgICB1c2VDbGFzczogTW9tZW50RGF0ZUFkYXB0ZXIsXG4gICAgICAgICAgICBkZXBzOiBbTUFUX0RBVEVfTE9DQUxFLCBNQVRfTU9NRU5UX0RBVEVfQURBUFRFUl9PUFRJT05TXSxcbiAgICAgICAgfSxcbiAgICAgICAgeyBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZTogV0VFS19GT1JNQVRTIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgV2Vla1RhZ0NvbXBvbmVudCBleHRlbmRzIEFueVRhZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5sb2NrZWQnKVxuICAgIGdldCBpc0xvY2tlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZSA/ICF0aGlzLmRhdGVGaWx0ZXIobW9tZW50LnVuaXgodGhpcy5kYXRlKSkgOiBmYWxzZTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBsb2NrZWREYXRlOiBhbnlbXSA9IFtdO1xuXG4gICAgZGF0ZTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmluaXROYW1lKCk7XG4gICAgICAgIGNvbnN0IHRpbWVzdGFtcCA9IHRoaXMuZGVmYXVsdFZhbHVlIHx8IG1vbWVudCgpLnVuaXgoKSA7XG4gICAgICAgIHRoaXMuZGF0ZSA9IHRpbWVzdGFtcDtcbiAgICAgICAgdGhpcy5kYXRlT2JqLmRhdGUgPSB0aW1lc3RhbXA7XG4gICAgICAgIHRoaXMuY2hvc2VuVGFnSGFuZGxlcih0aW1lc3RhbXApO1xuICAgIH1cblxuICAgIGluaXROYW1lKCkge1xuICAgICAgICBpZiAoIXRoaXMubmFtZSkge1xuICAgICAgICAgICAgdGhpcy5uYW1lID0gJ1dlZWsnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGF0ZUZpbHRlcihkYXRlKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHdlZWsgPSBkYXRlLndlZWsoKTtcbiAgICAgICAgY29uc3QgeWVhciA9IGRhdGUueWVhcigpO1xuXG4gICAgICAgIHJldHVybiAhdGhpcy5sb2NrZWREYXRlLnNvbWUoKHRpbWVzdGFtcCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbG9ja0RhdGUgPSBtb21lbnQudW5peCh0aW1lc3RhbXApO1xuICAgICAgICAgICAgcmV0dXJuIGxvY2tEYXRlLndlZWsoKSA9PT0gd2VlayAmJiBsb2NrRGF0ZS55ZWFyKCkgPT09IHllYXI7XG4gICAgICAgIH0pO1xuICAgIH07XG5cbiAgICBjaG9zZW5UYWdIYW5kbGVyKHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0RGF0ZSA9IG1vbWVudC51bml4KHZhbHVlKTtcbiAgICAgICAgY29uc3QgcmVzdWx0VGFnOiBJRGF0ZVRhZyA9IHtcbiAgICAgICAgICAgIG5hbWU6IHRoaXMubmFtZSxcbiAgICAgICAgICAgIHZhbHVlOiByZXN1bHREYXRlLnVuaXgoKSxcbiAgICAgICAgICAgIGxhYmVsOiB0aGlzLmdldFdlZWtMYWJlbChyZXN1bHREYXRlKSxcbiAgICAgICAgICAgIGxvY2tlZDogIXRoaXMuZGF0ZUZpbHRlcihyZXN1bHREYXRlKVxuICAgICAgICB9O1xuICAgICAgICBjb25zb2xlLmxvZygncmVzdWx0VGFnJywgcmVzdWx0VGFnKTtcbiAgICAgICAgdGhpcy5kYXRlQ2hhbmdlLmVtaXQocmVzdWx0VGFnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFdlZWtMYWJlbChtb21lbnQpIHtcbiAgICAgICAgcmV0dXJuICBgVyR7IG1vbWVudC5pc29XZWVrKCkgfSAkeyBtb21lbnQueWVhcigpIH1gO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ0YWctd3JhcHBlclwiPlxuICAgIDxwIGNsYXNzPVwidGFnX19sYWJlbFwiPnt7IG5hbWUgfX08L3A+XG4gICAgPGRyLWRhdGUtcGlja2VyIGZvcm1hdD1cIndlZWtcIlxuICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImRhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbZGF0ZXBpY2tlckZpbHRlcl09XCJkYXRlRmlsdGVyLmJpbmQodGhpcylcIlxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJjaG9zZW5UYWdIYW5kbGVyKCRldmVudClcIj48L2RyLWRhdGUtcGlja2VyPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { Component, HostBinding, Input } from '@angular/core';
|
|
2
|
+
import { AnyTagComponent } from '../any-tag.component';
|
|
3
|
+
import { DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material/core';
|
|
4
|
+
import { MAT_MOMENT_DATE_ADAPTER_OPTIONS, MomentDateAdapter } from '@angular/material-moment-adapter';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/forms";
|
|
7
|
+
import * as i2 from "../../dr-inputs/date-pickers/dr-date-picker/dr-date-picker.component";
|
|
8
|
+
// @ts-ignore
|
|
9
|
+
const moment = require('moment');
|
|
10
|
+
const YEAR_FORMATS = {
|
|
11
|
+
parse: {
|
|
12
|
+
dateInput: 'YYYY',
|
|
13
|
+
},
|
|
14
|
+
display: {
|
|
15
|
+
dateInput: 'YYYY',
|
|
16
|
+
monthYearLabel: 'MMMM YYYY',
|
|
17
|
+
dateA11yLabel: 'LL',
|
|
18
|
+
monthYearA11yLabel: 'MMMM YYYY'
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
export class YearTagComponent extends AnyTagComponent {
|
|
22
|
+
get isLocked() {
|
|
23
|
+
return this.date ? !this.dateFilter(moment.unix(this.date)) : false;
|
|
24
|
+
}
|
|
25
|
+
lockedDate = [];
|
|
26
|
+
date;
|
|
27
|
+
constructor() {
|
|
28
|
+
super();
|
|
29
|
+
}
|
|
30
|
+
initDate() {
|
|
31
|
+
this.date = this.defaultValue || moment().unix();
|
|
32
|
+
this.dateObj.date = this.date;
|
|
33
|
+
}
|
|
34
|
+
initName() {
|
|
35
|
+
if (!this.name) {
|
|
36
|
+
this.name = 'Year';
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
chosenTagHandler(value) {
|
|
40
|
+
const resultDate = moment.unix(value);
|
|
41
|
+
resultDate.hour(12);
|
|
42
|
+
const resultTag = {
|
|
43
|
+
name: this.name,
|
|
44
|
+
value: resultDate.unix(),
|
|
45
|
+
label: resultDate.format('YYYY'),
|
|
46
|
+
locked: !this.dateFilter(resultDate)
|
|
47
|
+
};
|
|
48
|
+
console.log('resultTag', resultTag);
|
|
49
|
+
this.dateChange.emit(resultTag);
|
|
50
|
+
}
|
|
51
|
+
dateFilter(date) {
|
|
52
|
+
const calendarDateYear = date.year();
|
|
53
|
+
return !this.lockedDate.some((timestamp) => {
|
|
54
|
+
const lockDate = moment.unix(timestamp);
|
|
55
|
+
return lockDate.year() === calendarDateYear;
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
;
|
|
59
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: YearTagComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
60
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: YearTagComponent, selector: "year-tag", inputs: { lockedDate: "lockedDate" }, host: { properties: { "class.locked": "this.isLocked" } }, providers: [
|
|
61
|
+
{
|
|
62
|
+
provide: DateAdapter,
|
|
63
|
+
useClass: MomentDateAdapter,
|
|
64
|
+
deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
|
|
65
|
+
},
|
|
66
|
+
{ provide: MAT_DATE_FORMATS, useValue: YEAR_FORMATS },
|
|
67
|
+
], usesInheritance: true, ngImport: i0, template: "<div class=\"tag-wrapper\">\n <p class=\"tag__label\">{{ name }}</p>\n <dr-date-picker format=\"year\"\n [(ngModel)]=\"date\"\n [disabled]=\"disabled\"\n [datepickerFilter]=\"dateFilter.bind(this)\"\n (ngModelChange)=\"chosenTagHandler($event)\"></dr-date-picker>\n</div>\n", styles: [":host.locked>.tag-wrapper>dr-date-picker{opacity:.4}.tag__label{margin:0 0 4px;color:#0c142b;font-size:14px;font-weight:400;line-height:22px}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.DrDatePickerComponent, selector: "dr-date-picker", inputs: ["format", "min", "max", "periodPosition", "placeholder", "disabled", "fiscalYearMonthsModifier", "datepickerFilter"] }] });
|
|
68
|
+
}
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: YearTagComponent, decorators: [{
|
|
70
|
+
type: Component,
|
|
71
|
+
args: [{ selector: 'year-tag', providers: [
|
|
72
|
+
{
|
|
73
|
+
provide: DateAdapter,
|
|
74
|
+
useClass: MomentDateAdapter,
|
|
75
|
+
deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
|
|
76
|
+
},
|
|
77
|
+
{ provide: MAT_DATE_FORMATS, useValue: YEAR_FORMATS },
|
|
78
|
+
], template: "<div class=\"tag-wrapper\">\n <p class=\"tag__label\">{{ name }}</p>\n <dr-date-picker format=\"year\"\n [(ngModel)]=\"date\"\n [disabled]=\"disabled\"\n [datepickerFilter]=\"dateFilter.bind(this)\"\n (ngModelChange)=\"chosenTagHandler($event)\"></dr-date-picker>\n</div>\n", styles: [":host.locked>.tag-wrapper>dr-date-picker{opacity:.4}.tag__label{margin:0 0 4px;color:#0c142b;font-size:14px;font-weight:400;line-height:22px}\n"] }]
|
|
79
|
+
}], ctorParameters: function () { return []; }, propDecorators: { isLocked: [{
|
|
80
|
+
type: HostBinding,
|
|
81
|
+
args: ['class.locked']
|
|
82
|
+
}], lockedDate: [{
|
|
83
|
+
type: Input
|
|
84
|
+
}] } });
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieWVhci10YWcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZGF0ZS10YWdzL3llYXItdGFnL3llYXItdGFnLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RhdGUtdGFncy95ZWFyLXRhZy95ZWFyLXRhZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDeEYsT0FBTyxFQUFFLCtCQUErQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7QUFDdEcsYUFBYTtBQUNiLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUVqQyxNQUFNLFlBQVksR0FBRztJQUNqQixLQUFLLEVBQUU7UUFDSCxTQUFTLEVBQUUsTUFBTTtLQUNwQjtJQUNELE9BQU8sRUFBRTtRQUNMLFNBQVMsRUFBRSxNQUFNO1FBQ2pCLGNBQWMsRUFBRSxXQUFXO1FBQzNCLGFBQWEsRUFBRSxJQUFJO1FBQ25CLGtCQUFrQixFQUFFLFdBQVc7S0FDbEM7Q0FDSixDQUFDO0FBZ0JGLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxlQUFlO0lBQ2pELElBQ0ksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUN4RSxDQUFDO0lBRVEsVUFBVSxHQUFVLEVBQUUsQ0FBQztJQUVoQyxJQUFJLENBQUM7SUFFTDtRQUNJLEtBQUssRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLElBQUksTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDakQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztJQUNsQyxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1osSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7U0FDdEI7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBYTtRQUMxQixNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFcEIsTUFBTSxTQUFTLEdBQWE7WUFDeEIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsS0FBSyxFQUFFLFVBQVUsQ0FBQyxJQUFJLEVBQUU7WUFDeEIsS0FBSyxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO1lBQ2hDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDO1NBQ3ZDLENBQUM7UUFDRixPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQUk7UUFDWCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVyQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUN2QyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3hDLE9BQU8sUUFBUSxDQUFDLElBQUksRUFBRSxLQUFLLGdCQUFnQixDQUFDO1FBQ2hELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUFBLENBQUM7dUdBOUNPLGdCQUFnQjsyRkFBaEIsZ0JBQWdCLG9JQVZkO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLFdBQVc7Z0JBQ3BCLFFBQVEsRUFBRSxpQkFBaUI7Z0JBQzNCLElBQUksRUFBRSxDQUFDLGVBQWUsRUFBRSwrQkFBK0IsQ0FBQzthQUMzRDtZQUNELEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUU7U0FDeEQsaURDL0JMLHFXQVFBOzsyRkQwQmEsZ0JBQWdCO2tCQWQ1QixTQUFTOytCQUVJLFVBQVUsYUFFVDt3QkFDUDs0QkFDSSxPQUFPLEVBQUUsV0FBVzs0QkFDcEIsUUFBUSxFQUFFLGlCQUFpQjs0QkFDM0IsSUFBSSxFQUFFLENBQUMsZUFBZSxFQUFFLCtCQUErQixDQUFDO3lCQUMzRDt3QkFDRCxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFO3FCQUN4RDswRUFLRyxRQUFRO3NCQURYLFdBQVc7dUJBQUMsY0FBYztnQkFLbEIsVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJRGF0ZVRhZyB9IGZyb20gJy4uLy4uL21vZGVscy9zZXJ2ZXJUYWdzJztcbmltcG9ydCB7IEFueVRhZ0NvbXBvbmVudCB9IGZyb20gJy4uL2FueS10YWcuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVBZGFwdGVyLCBNQVRfREFURV9GT1JNQVRTLCBNQVRfREFURV9MT0NBTEUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1BVF9NT01FTlRfREFURV9BREFQVEVSX09QVElPTlMsIE1vbWVudERhdGVBZGFwdGVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwtbW9tZW50LWFkYXB0ZXInO1xuLy8gQHRzLWlnbm9yZVxuY29uc3QgbW9tZW50ID0gcmVxdWlyZSgnbW9tZW50Jyk7XG5cbmNvbnN0IFlFQVJfRk9STUFUUyA9IHtcbiAgICBwYXJzZToge1xuICAgICAgICBkYXRlSW5wdXQ6ICdZWVlZJyxcbiAgICB9LFxuICAgIGRpc3BsYXk6IHtcbiAgICAgICAgZGF0ZUlucHV0OiAnWVlZWScsXG4gICAgICAgIG1vbnRoWWVhckxhYmVsOiAnTU1NTSBZWVlZJyxcbiAgICAgICAgZGF0ZUExMXlMYWJlbDogJ0xMJyxcbiAgICAgICAgbW9udGhZZWFyQTExeUxhYmVsOiAnTU1NTSBZWVlZJ1xuICAgIH0sXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJ3llYXItdGFnLmNvbXBvbmVudC5odG1sJyxcbiAgICBzZWxlY3RvcjogJ3llYXItdGFnJyxcbiAgICBzdHlsZVVybHM6IFsnLi95ZWFyLXRhZy5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBEYXRlQWRhcHRlcixcbiAgICAgICAgICAgIHVzZUNsYXNzOiBNb21lbnREYXRlQWRhcHRlcixcbiAgICAgICAgICAgIGRlcHM6IFtNQVRfREFURV9MT0NBTEUsIE1BVF9NT01FTlRfREFURV9BREFQVEVSX09QVElPTlNdLFxuICAgICAgICB9LFxuICAgICAgICB7IHByb3ZpZGU6IE1BVF9EQVRFX0ZPUk1BVFMsIHVzZVZhbHVlOiBZRUFSX0ZPUk1BVFMgfSxcbiAgICBdLFxufSlcblxuZXhwb3J0IGNsYXNzIFllYXJUYWdDb21wb25lbnQgZXh0ZW5kcyBBbnlUYWdDb21wb25lbnQge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MubG9ja2VkJylcbiAgICBnZXQgaXNMb2NrZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGUgPyAhdGhpcy5kYXRlRmlsdGVyKG1vbWVudC51bml4KHRoaXMuZGF0ZSkpIDogZmFsc2U7XG4gICAgfVxuXG4gICAgQElucHV0KCkgbG9ja2VkRGF0ZTogYW55W10gPSBbXTtcblxuICAgIGRhdGU7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBpbml0RGF0ZSgpIHtcbiAgICAgICAgdGhpcy5kYXRlID0gdGhpcy5kZWZhdWx0VmFsdWUgfHwgbW9tZW50KCkudW5peCgpO1xuICAgICAgICB0aGlzLmRhdGVPYmouZGF0ZSA9IHRoaXMuZGF0ZTtcbiAgICB9XG5cbiAgICBpbml0TmFtZSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLm5hbWUpIHtcbiAgICAgICAgICAgIHRoaXMubmFtZSA9ICdZZWFyJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNob3NlblRhZ0hhbmRsZXIodmFsdWU6IG51bWJlcikge1xuICAgICAgICBjb25zdCByZXN1bHREYXRlID0gbW9tZW50LnVuaXgodmFsdWUpO1xuICAgICAgICByZXN1bHREYXRlLmhvdXIoMTIpO1xuXG4gICAgICAgIGNvbnN0IHJlc3VsdFRhZzogSURhdGVUYWcgPSB7XG4gICAgICAgICAgICBuYW1lOiB0aGlzLm5hbWUsXG4gICAgICAgICAgICB2YWx1ZTogcmVzdWx0RGF0ZS51bml4KCksXG4gICAgICAgICAgICBsYWJlbDogcmVzdWx0RGF0ZS5mb3JtYXQoJ1lZWVknKSxcbiAgICAgICAgICAgIGxvY2tlZDogIXRoaXMuZGF0ZUZpbHRlcihyZXN1bHREYXRlKVxuICAgICAgICB9O1xuICAgICAgICBjb25zb2xlLmxvZygncmVzdWx0VGFnJywgcmVzdWx0VGFnKTtcbiAgICAgICAgdGhpcy5kYXRlQ2hhbmdlLmVtaXQocmVzdWx0VGFnKTtcbiAgICB9XG5cbiAgICBkYXRlRmlsdGVyKGRhdGUpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgY2FsZW5kYXJEYXRlWWVhciA9IGRhdGUueWVhcigpO1xuXG4gICAgICAgIHJldHVybiAhdGhpcy5sb2NrZWREYXRlLnNvbWUoKHRpbWVzdGFtcCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbG9ja0RhdGUgPSBtb21lbnQudW5peCh0aW1lc3RhbXApO1xuICAgICAgICAgICAgcmV0dXJuIGxvY2tEYXRlLnllYXIoKSA9PT0gY2FsZW5kYXJEYXRlWWVhcjtcbiAgICAgICAgfSk7XG4gICAgfTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJ0YWctd3JhcHBlclwiPlxuICAgIDxwIGNsYXNzPVwidGFnX19sYWJlbFwiPnt7IG5hbWUgfX08L3A+XG4gICAgPGRyLWRhdGUtcGlja2VyIGZvcm1hdD1cInllYXJcIlxuICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImRhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICBbZGF0ZXBpY2tlckZpbHRlcl09XCJkYXRlRmlsdGVyLmJpbmQodGhpcylcIlxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJjaG9zZW5UYWdIYW5kbGVyKCRldmVudClcIj48L2RyLWRhdGUtcGlja2VyPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { Directive, EventEmitter, Inject, Input, Output } from '@angular/core';
|
|
2
|
+
import { DOCUMENT } from '@angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ClickOutsideDirective {
|
|
5
|
+
_document /*: HTMLDocument*/;
|
|
6
|
+
_el;
|
|
7
|
+
attachOutsideOnClick = false;
|
|
8
|
+
exclude = '';
|
|
9
|
+
clickOutside = new EventEmitter();
|
|
10
|
+
_nodesExcluded = [];
|
|
11
|
+
constructor(_document /*: HTMLDocument*/, _el) {
|
|
12
|
+
this._document = _document;
|
|
13
|
+
this._el = _el;
|
|
14
|
+
this._initOnClickBody = this._initOnClickBody.bind(this);
|
|
15
|
+
this._onClickBody = this._onClickBody.bind(this);
|
|
16
|
+
}
|
|
17
|
+
ngOnInit() {
|
|
18
|
+
this._init();
|
|
19
|
+
}
|
|
20
|
+
ngOnDestroy() {
|
|
21
|
+
if (this.attachOutsideOnClick) {
|
|
22
|
+
this._el.nativeElement.removeEventListener('click', this._initOnClickBody);
|
|
23
|
+
}
|
|
24
|
+
this._document.body.removeEventListener('click', this._onClickBody);
|
|
25
|
+
}
|
|
26
|
+
ngOnChanges(changes) {
|
|
27
|
+
if (changes['attachOutsideOnClick'] || changes['exclude']) {
|
|
28
|
+
this._init();
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
_init() {
|
|
32
|
+
if (this.exclude) {
|
|
33
|
+
this.exclude.split(',').forEach((selector) => {
|
|
34
|
+
if (selector) {
|
|
35
|
+
try {
|
|
36
|
+
const node = this._document.querySelector(selector.trim());
|
|
37
|
+
if (node) {
|
|
38
|
+
this._nodesExcluded.push(node);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
catch (err) {
|
|
42
|
+
if (window.console) {
|
|
43
|
+
window.console.error('[ng2-click-outside] Check your exclude selector syntax.', err);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
if (this.attachOutsideOnClick) {
|
|
50
|
+
this._el.nativeElement.addEventListener('click', this._initOnClickBody);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
this._initOnClickBody();
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/** @internal */
|
|
57
|
+
_initOnClickBody() {
|
|
58
|
+
this._document.body.addEventListener('click', this._onClickBody);
|
|
59
|
+
}
|
|
60
|
+
/** @internal */
|
|
61
|
+
_onClickBody(e) {
|
|
62
|
+
if (!this._el.nativeElement.contains(e.target) && !this._shouldExclude(e.target)) {
|
|
63
|
+
this.clickOutside.emit(e);
|
|
64
|
+
if (this.attachOutsideOnClick) {
|
|
65
|
+
this._document.body.removeEventListener('click', this._onClickBody);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/** @internal */
|
|
70
|
+
_shouldExclude(target) {
|
|
71
|
+
for (let i = 0; i < this._nodesExcluded.length; i++) {
|
|
72
|
+
if (this._nodesExcluded[i].contains(target)) {
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: ClickOutsideDirective, deps: [{ token: DOCUMENT }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
79
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: ClickOutsideDirective, selector: "[clickOutside]", inputs: { attachOutsideOnClick: "attachOutsideOnClick", exclude: "exclude" }, outputs: { clickOutside: "clickOutside" }, usesOnChanges: true, ngImport: i0 });
|
|
80
|
+
}
|
|
81
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: ClickOutsideDirective, decorators: [{
|
|
82
|
+
type: Directive,
|
|
83
|
+
args: [{ selector: '[clickOutside]' }]
|
|
84
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
85
|
+
type: Inject,
|
|
86
|
+
args: [DOCUMENT]
|
|
87
|
+
}] }, { type: i0.ElementRef }]; }, propDecorators: { attachOutsideOnClick: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], exclude: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}], clickOutside: [{
|
|
92
|
+
type: Output
|
|
93
|
+
}] } });
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kaXJlY3RpdmVzL2NsaWNrLW91dHNpZGUvY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFJTCxNQUFNLEVBRVQsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUczQyxNQUFNLE9BQU8scUJBQXFCO0lBU0EsVUFBVSxrQkFBa0I7SUFDOUM7SUFUSCxvQkFBb0IsR0FBWSxLQUFLLENBQUM7SUFDdEMsT0FBTyxHQUFXLEVBQUUsQ0FBQztJQUVwQixZQUFZLEdBQXdCLElBQUksWUFBWSxFQUFTLENBQUM7SUFFaEUsY0FBYyxHQUF1QixFQUFFLENBQUM7SUFFaEQsWUFDOEIsU0FBUyxDQUFDLGtCQUFrQixFQUM5QyxHQUFlO1FBREcsY0FBUyxHQUFULFNBQVMsQ0FBQTtRQUMzQixRQUFHLEdBQUgsR0FBRyxDQUFZO1FBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtZQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFD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O2dCQUVJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1tjbGlja091dHNpZGVdJyB9KVxuZXhwb3J0IGNsYXNzIENsaWNrT3V0c2lkZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpIGF0dGFjaE91dHNpZGVPbkNsaWNrOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgZXhjbHVkZTogc3RyaW5nID0gJyc7XG5cbiAgICBAT3V0cHV0KCkgY2xpY2tPdXRzaWRlOiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcblxuICAgIHByaXZhdGUgX25vZGVzRXhjbHVkZWQ6IEFycmF5PEhUTUxFbGVtZW50PiA9IFtdO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgX2RvY3VtZW50IC8qOiBIVE1MRG9jdW1lbnQqLyxcbiAgICAgICAgcHJpdmF0ZSBfZWw6IEVsZW1lbnRSZWYpIHtcbiAgICAgICAgdGhpcy5faW5pdE9uQ2xpY2tCb2R5ID0gdGhpcy5faW5pdE9uQ2xpY2tCb2R5LmJpbmQodGhpcyk7XG4gICAgICAgIHRoaXMuX29uQ2xpY2tCb2R5ID0gdGhpcy5fb25DbGlja0JvZHkuYmluZCh0aGlzKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5faW5pdCgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBpZiAodGhpcy5hdHRhY2hPdXRzaWRlT25DbGljaykge1xuICAgICAgICAgICAgdGhpcy5fZWwubmF0aXZlRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuX2luaXRPbkNsaWNrQm9keSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9kb2N1bWVudC5ib2R5LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5fb25DbGlja0JvZHkpO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICAgICAgaWYgKGNoYW5nZXNbJ2F0dGFjaE91dHNpZGVPbkNsaWNrJ10gfHwgY2hhbmdlc1snZXhjbHVkZSddKSB7XG4gICAgICAgICAgICB0aGlzLl9pbml0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIF9pbml0KCkge1xuICAgICAgICBpZiAodGhpcy5leGNsdWRlKSB7XG4gICAgICAgICAgICB0aGlzLmV4Y2x1ZGUuc3BsaXQoJywnKS5mb3JFYWNoKChzZWxlY3RvcikgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChzZWxlY3Rvcikge1xuICAgICAgICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMuX2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IudHJpbSgpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChub2RlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fbm9kZXNFeGNsdWRlZC5wdXNoKG5vZGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh3aW5kb3cuY29uc29sZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5jb25zb2xlLmVycm9yKCdbbmcyLWNsaWNrLW91dHNpZGVdIENoZWNrIHlvdXIgZXhjbHVkZSBzZWxlY3RvciBzeW50YXguJywgZXJyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuYXR0YWNoT3V0c2lkZU9uQ2xpY2spIHtcbiAgICAgICAgICAgIHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLl9pbml0T25DbGlja0JvZHkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5faW5pdE9uQ2xpY2tCb2R5KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGludGVybmFsICovXG4gICAgcHJpdmF0ZSBfaW5pdE9uQ2xpY2tCb2R5KCkge1xuICAgICAgICB0aGlzLl9kb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5fb25DbGlja0JvZHkpO1xuICAgIH1cblxuICAgIC8qKiBAaW50ZXJuYWwgKi9cbiAgICBwcml2YXRlIF9vbkNsaWNrQm9keShlOiBFdmVudCkge1xuICAgICAgICBpZiAoIXRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZS50YXJnZXQpICYmICF0aGlzLl9zaG91bGRFeGNsdWRlKGUudGFyZ2V0KSkge1xuICAgICAgICAgICAgdGhpcy5jbGlja091dHNpZGUuZW1pdChlKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuYXR0YWNoT3V0c2lkZU9uQ2xpY2spIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9kb2N1bWVudC5ib2R5LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5fb25DbGlja0JvZHkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBpbnRlcm5hbCAqL1xuICAgIHByaXZhdGUgX3Nob3VsZEV4Y2x1ZGUodGFyZ2V0KTogYm9vbGVhbiB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5fbm9kZXNFeGNsdWRlZC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKHRoaXMuX25vZGVzRXhjbHVkZWRbaV0uY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { ClickOutsideDirective } from './click-outside.directive';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class ClickOutsideModule {
|
|
6
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: ClickOutsideModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.5", ngImport: i0, type: ClickOutsideModule, declarations: [ClickOutsideDirective], imports: [CommonModule], exports: [ClickOutsideDirective] });
|
|
8
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: ClickOutsideModule, imports: [CommonModule] });
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: ClickOutsideModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
imports: [CommonModule],
|
|
14
|
+
declarations: [ClickOutsideDirective],
|
|
15
|
+
exports: [ClickOutsideDirective]
|
|
16
|
+
}]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2stb3V0c2lkZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kaXJlY3RpdmVzL2NsaWNrLW91dHNpZGUvY2xpY2stb3V0c2lkZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBTy9DLE1BQU0sT0FBTyxrQkFBa0I7dUdBQWxCLGtCQUFrQjt3R0FBbEIsa0JBQWtCLGlCQUhaLHFCQUFxQixhQUQxQixZQUFZLGFBRVoscUJBQXFCO3dHQUV0QixrQkFBa0IsWUFKakIsWUFBWTs7MkZBSWIsa0JBQWtCO2tCQUw5QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLENBQUMscUJBQXFCLENBQUM7b0JBQ3JDLE9BQU8sRUFBRSxDQUFDLHFCQUFxQixDQUFDO2lCQUNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGlja091dHNpZGVEaXJlY3RpdmUgfSBmcm9tICcuL2NsaWNrLW91dHNpZGUuZGlyZWN0aXZlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbQ2xpY2tPdXRzaWRlRGlyZWN0aXZlXSxcbiAgICBleHBvcnRzOiBbQ2xpY2tPdXRzaWRlRGlyZWN0aXZlXVxufSlcbmV4cG9ydCBjbGFzcyBDbGlja091dHNpZGVNb2R1bGUge31cbiJdfQ==
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Host, } from '@angular/core';
|
|
2
|
+
import { animate, state, style, transition, trigger } from '@angular/animations';
|
|
3
|
+
import { takeUntil } from 'rxjs/operators';
|
|
4
|
+
import { Subject } from 'rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "./accordion-item.component";
|
|
7
|
+
const accordionItemBodyTrigger = trigger('accordionItemBody', [
|
|
8
|
+
state('collapsed', style({
|
|
9
|
+
overflow: 'hidden',
|
|
10
|
+
visibility: 'hidden',
|
|
11
|
+
height: 0,
|
|
12
|
+
})),
|
|
13
|
+
state('expanded', style({
|
|
14
|
+
overflow: 'hidden',
|
|
15
|
+
visibility: 'visible',
|
|
16
|
+
})),
|
|
17
|
+
transition('collapsed => expanded', animate('100ms ease-in')),
|
|
18
|
+
transition('expanded => collapsed', animate('100ms ease-out')),
|
|
19
|
+
]);
|
|
20
|
+
export class DrAccordionItemBodyComponent {
|
|
21
|
+
accordionItem;
|
|
22
|
+
cd;
|
|
23
|
+
destroy$ = new Subject();
|
|
24
|
+
constructor(accordionItem, cd) {
|
|
25
|
+
this.accordionItem = accordionItem;
|
|
26
|
+
this.cd = cd;
|
|
27
|
+
}
|
|
28
|
+
get state() {
|
|
29
|
+
return this.accordionItem.collapsed ? 'collapsed' : 'expanded';
|
|
30
|
+
}
|
|
31
|
+
ngOnInit() {
|
|
32
|
+
this.accordionItem.accordionItemInvalidate.pipe(takeUntil(this.destroy$)).subscribe(() => this.cd.markForCheck());
|
|
33
|
+
}
|
|
34
|
+
ngOnDestroy() {
|
|
35
|
+
this.destroy$.next();
|
|
36
|
+
this.destroy$.complete();
|
|
37
|
+
}
|
|
38
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: DrAccordionItemBodyComponent, deps: [{ token: i1.DrAccordionItemComponent, host: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
39
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: DrAccordionItemBodyComponent, selector: "dr-accordion-item-body", ngImport: i0, template: `
|
|
40
|
+
<div [@accordionItemBody]="{ value: state }">
|
|
41
|
+
<div class="item-body">
|
|
42
|
+
<ng-content></ng-content>
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
`, isInline: true, styles: [".item-body{flex:1;-ms-flex:1 1 auto;overflow:auto;position:relative}\n"], animations: [accordionItemBodyTrigger], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
46
|
+
}
|
|
47
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: DrAccordionItemBodyComponent, decorators: [{
|
|
48
|
+
type: Component,
|
|
49
|
+
args: [{ selector: 'dr-accordion-item-body', template: `
|
|
50
|
+
<div [@accordionItemBody]="{ value: state }">
|
|
51
|
+
<div class="item-body">
|
|
52
|
+
<ng-content></ng-content>
|
|
53
|
+
</div>
|
|
54
|
+
</div>
|
|
55
|
+
`, animations: [accordionItemBodyTrigger], changeDetection: ChangeDetectionStrategy.OnPush, styles: [".item-body{flex:1;-ms-flex:1 1 auto;overflow:auto;position:relative}\n"] }]
|
|
56
|
+
}], ctorParameters: function () { return [{ type: i1.DrAccordionItemComponent, decorators: [{
|
|
57
|
+
type: Host
|
|
58
|
+
}] }, { type: i0.ChangeDetectorRef }]; } });
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWl0ZW0tYm9keS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9kci1hY2NvcmRpb24vYWNjb3JkaW9uLWl0ZW0tYm9keS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsSUFBSSxHQUFzQixNQUFNLGVBQWUsQ0FBQztBQUNoSCxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFHL0IsTUFBTSx3QkFBd0IsR0FBRyxPQUFPLENBQUMsbUJBQW1CLEVBQUU7SUFDMUQsS0FBSyxDQUNELFdBQVcsRUFDWCxLQUFLLENBQUM7UUFDRixRQUFRLEVBQUUsUUFBUTtRQUNsQixVQUFVLEVBQUUsUUFBUTtRQUNwQixNQUFNLEVBQUUsQ0FBQztLQUNaLENBQUMsQ0FDTDtJQUNELEtBQUssQ0FDRCxVQUFVLEVBQ1YsS0FBSyxDQUFDO1FBQ0YsUUFBUSxFQUFFLFFBQVE7UUFDbEIsVUFBVSxFQUFFLFNBQVM7S0FDeEIsQ0FBQyxDQUNMO0lBQ0QsVUFBVSxDQUFDLHVCQUF1QixFQUFFLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM3RCxVQUFVLENBQUMsdUJBQXVCLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7Q0FDakUsQ0FBQyxDQUFDO0FBZUgsTUFBTSxPQUFPLDRCQUE0QjtJQUdUO0lBQWlEO0lBRnJFLFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRXZDLFlBQTRCLGFBQXVDLEVBQVUsRUFBcUI7UUFBdEUsa0JBQWEsR0FBYixhQUFhLENBQTBCO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7SUFDbEcsQ0FBQztJQUVELElBQUksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDO0lBQ25FLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDdEgsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0IsQ0FBQzt1R0FqQlEsNEJBQTRCOzJGQUE1Qiw0QkFBNEIsOERBWDNCOzs7Ozs7S0FNVCxrSEFFVyxDQUFDLHdCQUF3QixDQUFDOzsyRkFHN0IsNEJBQTRCO2tCQWJ4QyxTQUFTOytCQUNJLHdCQUF3QixZQUN4Qjs7Ozs7O0tBTVQsY0FFVyxDQUFDLHdCQUF3QixDQUFDLG1CQUNyQix1QkFBdUIsQ0FBQyxNQUFNOzswQkFLbEMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBIb3N0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRHJBY2NvcmRpb25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9hY2NvcmRpb24taXRlbS5jb21wb25lbnQnO1xuXG5jb25zdCBhY2NvcmRpb25JdGVtQm9keVRyaWdnZXIgPSB0cmlnZ2VyKCdhY2NvcmRpb25JdGVtQm9keScsIFtcbiAgICBzdGF0ZShcbiAgICAgICAgJ2NvbGxhcHNlZCcsXG4gICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcbiAgICAgICAgICAgIHZpc2liaWxpdHk6ICdoaWRkZW4nLFxuICAgICAgICAgICAgaGVpZ2h0OiAwLFxuICAgICAgICB9KSxcbiAgICApLFxuICAgIHN0YXRlKFxuICAgICAgICAnZXhwYW5kZWQnLFxuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiAndmlzaWJsZScsXG4gICAgICAgIH0pLFxuICAgICksXG4gICAgdHJhbnNpdGlvbignY29sbGFwc2VkID0+IGV4cGFuZGVkJywgYW5pbWF0ZSgnMTAwbXMgZWFzZS1pbicpKSxcbiAgICB0cmFuc2l0aW9uKCdleHBhbmRlZCA9PiBjb2xsYXBzZWQnLCBhbmltYXRlKCcxMDBtcyBlYXNlLW91dCcpKSxcbl0pO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2RyLWFjY29yZGlvbi1pdGVtLWJvZHknLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgICAgIDxkaXYgW0BhY2NvcmRpb25JdGVtQm9keV09XCJ7IHZhbHVlOiBzdGF0ZSB9XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbS1ib2R5XCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIGAsXG4gICAgc3R5bGVVcmxzOiBbJy4vYWNjb3JkaW9uLWl0ZW0tYm9keS5jb21wb25lbnQuc2NzcyddLFxuICAgIGFuaW1hdGlvbnM6IFthY2NvcmRpb25JdGVtQm9keVRyaWdnZXJdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBEckFjY29yZGlvbkl0ZW1Cb2R5Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgY29uc3RydWN0b3IoQEhvc3QoKSBwcml2YXRlIGFjY29yZGlvbkl0ZW06IERyQWNjb3JkaW9uSXRlbUNvbXBvbmVudCwgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICB9XG5cbiAgICBnZXQgc3RhdGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWNjb3JkaW9uSXRlbS5jb2xsYXBzZWQgPyAnY29sbGFwc2VkJyA6ICdleHBhbmRlZCc7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuYWNjb3JkaW9uSXRlbS5hY2NvcmRpb25JdGVtSW52YWxpZGF0ZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2QubWFya0ZvckNoZWNrKCkpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Host, HostBinding, HostListener, } from '@angular/core';
|
|
2
|
+
import { animate, state, style, transition, trigger } from '@angular/animations';
|
|
3
|
+
import { takeUntil } from 'rxjs/operators';
|
|
4
|
+
import { Subject } from 'rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "./accordion-item.component";
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
export class DrAccordionItemHeaderComponent {
|
|
9
|
+
accordionItem;
|
|
10
|
+
cd;
|
|
11
|
+
destroy$ = new Subject();
|
|
12
|
+
get isCollapsed() {
|
|
13
|
+
return this.accordionItem.collapsed;
|
|
14
|
+
}
|
|
15
|
+
get expanded() {
|
|
16
|
+
return !this.accordionItem.collapsed;
|
|
17
|
+
}
|
|
18
|
+
get tabbable() {
|
|
19
|
+
return this.accordionItem.disabled ? '-1' : '0';
|
|
20
|
+
}
|
|
21
|
+
get disabled() {
|
|
22
|
+
return this.accordionItem.disabled;
|
|
23
|
+
}
|
|
24
|
+
toggle() {
|
|
25
|
+
this.accordionItem.toggle();
|
|
26
|
+
}
|
|
27
|
+
get state() {
|
|
28
|
+
if (this.isCollapsed) {
|
|
29
|
+
return 'collapsed';
|
|
30
|
+
}
|
|
31
|
+
return 'expanded';
|
|
32
|
+
}
|
|
33
|
+
constructor(accordionItem, cd) {
|
|
34
|
+
this.accordionItem = accordionItem;
|
|
35
|
+
this.cd = cd;
|
|
36
|
+
}
|
|
37
|
+
ngOnInit() {
|
|
38
|
+
this.accordionItem.accordionItemInvalidate.pipe(takeUntil(this.destroy$)).subscribe(() => this.cd.markForCheck());
|
|
39
|
+
}
|
|
40
|
+
ngOnDestroy() {
|
|
41
|
+
this.destroy$.next();
|
|
42
|
+
this.destroy$.complete();
|
|
43
|
+
}
|
|
44
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: DrAccordionItemHeaderComponent, deps: [{ token: i1.DrAccordionItemComponent, host: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
45
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.5", type: DrAccordionItemHeaderComponent, selector: "dr-accordion-item-header", host: { listeners: { "click": "toggle()", "keydown.space": "toggle()", "keydown.enter": "toggle()" }, properties: { "class.accordion-item-header-collapsed": "this.isCollapsed", "class.accordion-item-header-expanded": "this.expanded", "attr.aria-expanded": "this.expanded", "attr.tabindex": "this.tabbable", "attr.aria-disabled": "this.disabled" } }, ngImport: i0, template: `
|
|
46
|
+
<ng-content select="dr-accordion-item-title"></ng-content>
|
|
47
|
+
<ng-content select="dr-accordion-item-description"></ng-content>
|
|
48
|
+
<ng-content></ng-content>
|
|
49
|
+
<i class="dr-icon-arrow-down expansion-indicator"
|
|
50
|
+
[@expansionIndicator]="state"
|
|
51
|
+
*ngIf="!disabled">
|
|
52
|
+
</i>
|
|
53
|
+
`, isInline: true, styles: [":host{display:flex;align-items:center;cursor:pointer;position:relative;border-bottom:1px solid #edf1f7;color:#222b45;font-family:Poppins,sans-serif;font-size:13px;font-weight:600;line-height:1.5rem;padding:1.25rem;text-transform:capitalize}:host:focus{outline:0}:host .expansion-indicator{font-size:24px;position:absolute;right:10px;font-weight:700}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], animations: [
|
|
54
|
+
trigger('expansionIndicator', [
|
|
55
|
+
state('expanded', style({
|
|
56
|
+
transform: 'rotate(180deg)',
|
|
57
|
+
})),
|
|
58
|
+
transition('collapsed => expanded', animate('100ms ease-in')),
|
|
59
|
+
transition('expanded => collapsed', animate('100ms ease-out')),
|
|
60
|
+
]),
|
|
61
|
+
], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
62
|
+
}
|
|
63
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: DrAccordionItemHeaderComponent, decorators: [{
|
|
64
|
+
type: Component,
|
|
65
|
+
args: [{ selector: 'dr-accordion-item-header', template: `
|
|
66
|
+
<ng-content select="dr-accordion-item-title"></ng-content>
|
|
67
|
+
<ng-content select="dr-accordion-item-description"></ng-content>
|
|
68
|
+
<ng-content></ng-content>
|
|
69
|
+
<i class="dr-icon-arrow-down expansion-indicator"
|
|
70
|
+
[@expansionIndicator]="state"
|
|
71
|
+
*ngIf="!disabled">
|
|
72
|
+
</i>
|
|
73
|
+
`, animations: [
|
|
74
|
+
trigger('expansionIndicator', [
|
|
75
|
+
state('expanded', style({
|
|
76
|
+
transform: 'rotate(180deg)',
|
|
77
|
+
})),
|
|
78
|
+
transition('collapsed => expanded', animate('100ms ease-in')),
|
|
79
|
+
transition('expanded => collapsed', animate('100ms ease-out')),
|
|
80
|
+
]),
|
|
81
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:flex;align-items:center;cursor:pointer;position:relative;border-bottom:1px solid #edf1f7;color:#222b45;font-family:Poppins,sans-serif;font-size:13px;font-weight:600;line-height:1.5rem;padding:1.25rem;text-transform:capitalize}:host:focus{outline:0}:host .expansion-indicator{font-size:24px;position:absolute;right:10px;font-weight:700}\n"] }]
|
|
82
|
+
}], ctorParameters: function () { return [{ type: i1.DrAccordionItemComponent, decorators: [{
|
|
83
|
+
type: Host
|
|
84
|
+
}] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { isCollapsed: [{
|
|
85
|
+
type: HostBinding,
|
|
86
|
+
args: ['class.accordion-item-header-collapsed']
|
|
87
|
+
}], expanded: [{
|
|
88
|
+
type: HostBinding,
|
|
89
|
+
args: ['class.accordion-item-header-expanded']
|
|
90
|
+
}, {
|
|
91
|
+
type: HostBinding,
|
|
92
|
+
args: ['attr.aria-expanded']
|
|
93
|
+
}], tabbable: [{
|
|
94
|
+
type: HostBinding,
|
|
95
|
+
args: ['attr.tabindex']
|
|
96
|
+
}], disabled: [{
|
|
97
|
+
type: HostBinding,
|
|
98
|
+
args: ['attr.aria-disabled']
|
|
99
|
+
}], toggle: [{
|
|
100
|
+
type: HostListener,
|
|
101
|
+
args: ['click']
|
|
102
|
+
}, {
|
|
103
|
+
type: HostListener,
|
|
104
|
+
args: ['keydown.space']
|
|
105
|
+
}, {
|
|
106
|
+
type: HostListener,
|
|
107
|
+
args: ['keydown.enter']
|
|
108
|
+
}] } });
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWl0ZW0taGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGFyYWlsc3NoYXJlZC9zcmMvbGliL2RyLWFjY29yZGlvbi9hY2NvcmRpb24taXRlbS1oZWFkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFFdkIsU0FBUyxFQUNULElBQUksRUFDSixXQUFXLEVBQ1gsWUFBWSxHQUdmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUE2Qi9CLE1BQU0sT0FBTyw4QkFBOEI7SUFzQ1g7SUFBaUQ7SUFyQ3JFLFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRXZDLElBQ0ksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7SUFDeEMsQ0FBQztJQUVELElBRUksUUFBUTtRQUNSLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFDSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQ0ksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7SUFDdkMsQ0FBQztJQUtELE1BQU07UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDTCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDbEIsT0FBTyxXQUFXLENBQUM7U0FDdEI7UUFDRCxPQUFPLFVBQVUsQ0FBQztJQUN0QixDQUFDO0lBRUQsWUFBNEIsYUFBdUMsRUFBVSxFQUFxQjtRQUF0RSxrQkFBYSxHQUFiLGFBQWEsQ0FBMEI7UUFBVSxPQUFFLEdBQUYsRUFBRSxDQUFtQjtJQUNsRyxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ3RILENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzdCLENBQUM7dUdBaERRLDhCQUE4QjsyRkFBOUIsOEJBQThCLDhaQXZCN0I7Ozs7Ozs7O0tBUVQsK2ZBQ1c7WUFDUixPQUFPLENBQUMsb0JBQW9CLEVBQUU7Z0JBQzFCLEtBQUssQ0FDRCxVQUFVLEVBQ1YsS0FBSyxDQUFDO29CQUNGLFNBQVMsRUFBRSxnQkFBZ0I7aUJBQzlCLENBQUMsQ0FDTDtnQkFDRCxVQUFVLENBQUMsdUJBQXVCLEVBQUUsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUM3RCxVQUFVLENBQUMsdUJBQXVCLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7YUFDakUsQ0FBQztTQUNMOzsyRkFHUSw4QkFBOEI7a0JBMUIxQyxTQUFTOytCQUNJLDBCQUEwQixZQUUxQjs7Ozs7Ozs7S0FRVCxjQUNXO3dCQUNSLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRTs0QkFDMUIsS0FBSyxDQUNELFVBQVUsRUFDVixLQUFLLENBQUM7Z0NBQ0YsU0FBUyxFQUFFLGdCQUFnQjs2QkFDOUIsQ0FBQyxDQUNMOzRCQUNELFVBQVUsQ0FBQyx1QkFBdUIsRUFBRSxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7NEJBQzdELFVBQVUsQ0FBQyx1QkFBdUIsRUFBRSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzt5QkFDakUsQ0FBQztxQkFDTCxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTs7MEJBd0NsQyxJQUFJOzRFQWxDYixXQUFXO3NCQURkLFdBQVc7dUJBQUMsdUNBQXVDO2dCQU9oRCxRQUFRO3NCQUZYLFdBQVc7dUJBQUMsc0NBQXNDOztzQkFDbEQsV0FBVzt1QkFBQyxvQkFBb0I7Z0JBTTdCLFFBQVE7c0JBRFgsV0FBVzt1QkFBQyxlQUFlO2dCQU14QixRQUFRO3NCQURYLFdBQVc7dUJBQUMsb0JBQW9CO2dCQVFqQyxNQUFNO3NCQUhMLFlBQVk7dUJBQUMsT0FBTzs7c0JBQ3BCLFlBQVk7dUJBQUMsZUFBZTs7c0JBQzVCLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEhvc3QsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEckFjY29yZGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2FjY29yZGlvbi1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZHItYWNjb3JkaW9uLWl0ZW0taGVhZGVyJyxcbiAgICBzdHlsZVVybHM6IFsnLi9hY2NvcmRpb24taXRlbS1oZWFkZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJkci1hY2NvcmRpb24taXRlbS10aXRsZVwiPjwvbmctY29udGVudD5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZHItYWNjb3JkaW9uLWl0ZW0tZGVzY3JpcHRpb25cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgPGkgY2xhc3M9XCJkci1pY29uLWFycm93LWRvd24gZXhwYW5zaW9uLWluZGljYXRvclwiXG4gICAgICAgICAgIFtAZXhwYW5zaW9uSW5kaWNhdG9yXT1cInN0YXRlXCJcbiAgICAgICAgICAgKm5nSWY9XCIhZGlzYWJsZWRcIj5cbiAgICAgICAgPC9pPlxuICAgIGAsXG4gICAgYW5pbWF0aW9uczogW1xuICAgICAgICB0cmlnZ2VyKCdleHBhbnNpb25JbmRpY2F0b3InLCBbXG4gICAgICAgICAgICBzdGF0ZShcbiAgICAgICAgICAgICAgICAnZXhwYW5kZWQnLFxuICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAncm90YXRlKDE4MGRlZyknLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ2NvbGxhcHNlZCA9PiBleHBhbmRlZCcsIGFuaW1hdGUoJzEwMG1zIGVhc2UtaW4nKSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCdleHBhbmRlZCA9PiBjb2xsYXBzZWQnLCBhbmltYXRlKCcxMDBtcyBlYXNlLW91dCcpKSxcbiAgICAgICAgXSksXG4gICAgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRHJBY2NvcmRpb25JdGVtSGVhZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hY2NvcmRpb24taXRlbS1oZWFkZXItY29sbGFwc2VkJylcbiAgICBnZXQgaXNDb2xsYXBzZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFjY29yZGlvbkl0ZW0uY29sbGFwc2VkO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYWNjb3JkaW9uLWl0ZW0taGVhZGVyLWV4cGFuZGVkJylcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1leHBhbmRlZCcpXG4gICAgZ2V0IGV4cGFuZGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuYWNjb3JkaW9uSXRlbS5jb2xsYXBzZWQ7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLnRhYmluZGV4JylcbiAgICBnZXQgdGFiYmFibGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWNjb3JkaW9uSXRlbS5kaXNhYmxlZCA/ICctMScgOiAnMCc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtZGlzYWJsZWQnKVxuICAgIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWNjb3JkaW9uSXRlbS5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5zcGFjZScpXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5lbnRlcicpXG4gICAgdG9nZ2xlKCkge1xuICAgICAgICB0aGlzLmFjY29yZGlvbkl0ZW0udG9nZ2xlKCk7XG4gICAgfVxuXG4gICAgZ2V0IHN0YXRlKCk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmlzQ29sbGFwc2VkKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2NvbGxhcHNlZCc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICdleHBhbmRlZCc7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoQEhvc3QoKSBwcml2YXRlIGFjY29yZGlvbkl0ZW06IERyQWNjb3JkaW9uSXRlbUNvbXBvbmVudCwgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5hY2NvcmRpb25JdGVtLmFjY29yZGlvbkl0ZW1JbnZhbGlkYXRlLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jZC5tYXJrRm9yQ2hlY2soKSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxufVxuIl19
|