@evotor-dev/ui-kit 7.1.0 → 7.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +71 -114
- package/esm2020/evotor-dev-ui-kit.mjs +4 -4
- package/esm2020/icons/category/evotor-dev-ui-kit-icons-category.mjs +4 -4
- package/esm2020/icons/category/index.mjs +61 -61
- package/esm2020/icons/emotions/evotor-dev-ui-kit-icons-emotions.mjs +4 -4
- package/esm2020/icons/emotions/index.mjs +17 -17
- package/esm2020/icons/evotor-dev-ui-kit-icons.mjs +4 -4
- package/esm2020/icons/header/evotor-dev-ui-kit-icons-header.mjs +4 -4
- package/esm2020/icons/header/index.mjs +27 -27
- package/esm2020/icons/index.mjs +8 -8
- package/esm2020/icons/info/evotor-dev-ui-kit-icons-info.mjs +4 -4
- package/esm2020/icons/info/index.mjs +39 -39
- package/esm2020/icons/navigation/evotor-dev-ui-kit-icons-navigation.mjs +4 -4
- package/esm2020/icons/navigation/index.mjs +56 -56
- package/esm2020/icons/side-menu/evotor-dev-ui-kit-icons-side-menu.mjs +4 -4
- package/esm2020/icons/side-menu/index.mjs +63 -63
- package/esm2020/icons/system/evotor-dev-ui-kit-icons-system.mjs +4 -4
- package/esm2020/icons/system/index.mjs +372 -372
- package/esm2020/lib/common/Serializable.mjs +5 -5
- package/esm2020/lib/common/animations/expand.animation.mjs +27 -27
- package/esm2020/lib/common/animations/index.mjs +3 -3
- package/esm2020/lib/common/animations/sidebar.animation.mjs +9 -9
- package/esm2020/lib/common/animations/skip-initial-render.animation.mjs +2 -2
- package/esm2020/lib/common/collection/evo-collection-fabric.mjs +9 -9
- package/esm2020/lib/common/collection/evo-collection.mjs +6 -6
- package/esm2020/lib/common/collection/index.mjs +2 -2
- package/esm2020/lib/common/constants/css-breakpoints.mjs +8 -8
- package/esm2020/lib/common/constants/view-breakpoint-streams.mjs +23 -23
- package/esm2020/lib/common/evo-base-control.mjs +45 -45
- package/esm2020/lib/common/evo-control-state-manager/evo-control-state-manager.mjs +12 -12
- package/esm2020/lib/common/evo-control-state-manager/evo-control-state.interface.mjs +1 -1
- package/esm2020/lib/common/evo-control-state-manager/evo-control-states.enum.mjs +5 -5
- package/esm2020/lib/common/form-helper/form-helper.mjs +30 -30
- package/esm2020/lib/common/types/evo-color.mjs +1 -1
- package/esm2020/lib/common/types/evo-size.mjs +1 -1
- package/esm2020/lib/common/types/index.mjs +2 -2
- package/esm2020/lib/components/evo-accordion/evo-accordion-content/evo-accordion-content.component.mjs +30 -30
- package/esm2020/lib/components/evo-accordion/evo-accordion-panel/evo-accordion-panel.component.mjs +18 -18
- package/esm2020/lib/components/evo-accordion/evo-accordion-title/evo-accordion-title.component.mjs +56 -56
- package/esm2020/lib/components/evo-accordion/evo-accordion.component.mjs +16 -16
- package/esm2020/lib/components/evo-accordion/evo-accordion.module.mjs +65 -65
- package/esm2020/lib/components/evo-accordion/index.mjs +1 -1
- package/esm2020/lib/components/evo-accordion/public-api.mjs +5 -5
- package/esm2020/lib/components/evo-alert/evo-alert.component.mjs +78 -78
- package/esm2020/lib/components/evo-alert/evo-alert.module.mjs +28 -28
- package/esm2020/lib/components/evo-alert/index.mjs +1 -1
- package/esm2020/lib/components/evo-alert/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-autocomplete/components/evo-autocomplete.component.mjs +357 -357
- package/esm2020/lib/components/evo-autocomplete/components/templates/evo-autocomplete-default-option.component.mjs +42 -42
- package/esm2020/lib/components/evo-autocomplete/evo-autocomplete.module.mjs +57 -57
- package/esm2020/lib/components/evo-autocomplete/helpers/switch-query-to-list.mjs +6 -6
- package/esm2020/lib/components/evo-autocomplete/index.mjs +1 -1
- package/esm2020/lib/components/evo-autocomplete/models/DaDataParty.mjs +27 -27
- package/esm2020/lib/components/evo-autocomplete/models/dadata.model.mjs +47 -47
- package/esm2020/lib/components/evo-autocomplete/public-api.mjs +6 -6
- package/esm2020/lib/components/evo-autocomplete/types/evo-autocomplete-size.mjs +1 -1
- package/esm2020/lib/components/evo-badge/evo-badge.component.mjs +39 -39
- package/esm2020/lib/components/evo-badge/evo-badge.module.mjs +27 -27
- package/esm2020/lib/components/evo-badge/index.mjs +2 -2
- package/esm2020/lib/components/evo-badge/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-badge/types/evo-badge-color.mjs +1 -1
- package/esm2020/lib/components/evo-badge/types/evo-badge-size.mjs +1 -1
- package/esm2020/lib/components/evo-badge/types/index.mjs +2 -2
- package/esm2020/lib/components/evo-banner/evo-banner.component.mjs +109 -109
- package/esm2020/lib/components/evo-banner/evo-banner.module.mjs +23 -23
- package/esm2020/lib/components/evo-banner/index.mjs +1 -1
- package/esm2020/lib/components/evo-banner/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-button/components/evo-button/evo-button.component.mjs +86 -86
- package/esm2020/lib/components/evo-button/components/evo-button-old/evo-button-old.component.mjs +91 -91
- package/esm2020/lib/components/evo-button/constants/evo-button-themes-map.mjs +31 -31
- package/esm2020/lib/components/evo-button/evo-button.module.mjs +21 -21
- package/esm2020/lib/components/evo-button/index.mjs +1 -1
- package/esm2020/lib/components/evo-button/public-api.mjs +5 -5
- package/esm2020/lib/components/evo-button/types/evo-button-color.mjs +2 -2
- package/esm2020/lib/components/evo-button/types/evo-button-shape.mjs +2 -2
- package/esm2020/lib/components/evo-button/types/evo-button-size.mjs +2 -2
- package/esm2020/lib/components/evo-button/types/evo-button-theme-params.mjs +2 -2
- package/esm2020/lib/components/evo-button/types/evo-button-theme.mjs +2 -2
- package/esm2020/lib/components/evo-button/types/index.mjs +6 -6
- package/esm2020/lib/components/evo-checkbox/evo-checkbox.component.mjs +86 -86
- package/esm2020/lib/components/evo-checkbox/evo-checkbox.module.mjs +33 -33
- package/esm2020/lib/components/evo-checkbox/index.mjs +1 -1
- package/esm2020/lib/components/evo-checkbox/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-chip/evo-chip.component.mjs +129 -129
- package/esm2020/lib/components/evo-chip/evo-chip.module.mjs +44 -44
- package/esm2020/lib/components/evo-chip/index.mjs +1 -1
- package/esm2020/lib/components/evo-chip/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-control-error/evo-control-error.component.mjs +40 -40
- package/esm2020/lib/components/evo-control-error/evo-control-error.module.mjs +29 -29
- package/esm2020/lib/components/evo-control-error/index.mjs +1 -1
- package/esm2020/lib/components/evo-control-error/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-control-label/evo-control-label.component.mjs +18 -18
- package/esm2020/lib/components/evo-control-label/evo-control-label.module.mjs +21 -21
- package/esm2020/lib/components/evo-control-label/index.mjs +1 -1
- package/esm2020/lib/components/evo-control-label/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-counter/evo-counter.component.mjs +37 -37
- package/esm2020/lib/components/evo-counter/evo-counter.module.mjs +29 -29
- package/esm2020/lib/components/evo-counter/index.mjs +1 -1
- package/esm2020/lib/components/evo-counter/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-datepicker/evo-datepicker.component.mjs +554 -554
- package/esm2020/lib/components/evo-datepicker/evo-datepicker.module.mjs +33 -33
- package/esm2020/lib/components/evo-datepicker/flatpickr-options.interface.mjs +1 -1
- package/esm2020/lib/components/evo-datepicker/index.mjs +1 -1
- package/esm2020/lib/components/evo-datepicker/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-datepicker/templates/index.mjs +19 -19
- package/esm2020/lib/components/evo-dropdown/evo-dropdown-origin.directive.mjs +40 -40
- package/esm2020/lib/components/evo-dropdown/evo-dropdown-position-description.mjs +50 -50
- package/esm2020/lib/components/evo-dropdown/evo-dropdown.component.mjs +106 -106
- package/esm2020/lib/components/evo-dropdown/evo-dropdown.module.mjs +19 -19
- package/esm2020/lib/components/evo-dropdown/index.mjs +1 -1
- package/esm2020/lib/components/evo-dropdown/public-api.mjs +4 -4
- package/esm2020/lib/components/evo-dropdown/types/evo-dropdown-positions.mjs +1 -1
- package/esm2020/lib/components/evo-icon/classes/evo-icons-library.mjs +18 -18
- package/esm2020/lib/components/evo-icon/evo-icon.component.mjs +56 -56
- package/esm2020/lib/components/evo-icon/evo-icon.module.mjs +56 -56
- package/esm2020/lib/components/evo-icon/index.mjs +1 -1
- package/esm2020/lib/components/evo-icon/interfaces/icons-category.mjs +1 -1
- package/esm2020/lib/components/evo-icon/interfaces/icons-source.mjs +1 -1
- package/esm2020/lib/components/evo-icon/public-api.mjs +5 -5
- package/esm2020/lib/components/evo-icon-button/evo-icon-button.component.mjs +64 -64
- package/esm2020/lib/components/evo-icon-button/evo-icon-button.module.mjs +25 -25
- package/esm2020/lib/components/evo-icon-button/index.mjs +1 -1
- package/esm2020/lib/components/evo-icon-button/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-icon-button/types/evo-icon-button-size.mjs +1 -1
- package/esm2020/lib/components/evo-icon-button/types/evo-icon-button-theme.mjs +1 -1
- package/esm2020/lib/components/evo-icon-number/components/evo-icon-number/evo-icon-number.component.mjs +13 -13
- package/esm2020/lib/components/evo-icon-number/evo-icon-number.module.mjs +17 -17
- package/esm2020/lib/components/evo-icon-number/index.mjs +1 -1
- package/esm2020/lib/components/evo-icon-number/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-input/evo-input-icon/evo-input-icon.directive.mjs +12 -12
- package/esm2020/lib/components/evo-input/evo-input.component.mjs +358 -358
- package/esm2020/lib/components/evo-input/evo-input.module.mjs +65 -65
- package/esm2020/lib/components/evo-input/index.mjs +1 -1
- package/esm2020/lib/components/evo-input/public-api.mjs +3 -3
- package/esm2020/lib/components/evo-input-contenteditable/evo-input-contenteditable.component.mjs +149 -149
- package/esm2020/lib/components/evo-input-contenteditable/evo-input-contenteditable.module.mjs +33 -33
- package/esm2020/lib/components/evo-input-contenteditable/index.mjs +1 -1
- package/esm2020/lib/components/evo-input-contenteditable/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-input-contenteditable/utils/clear-multiline.mjs +6 -6
- package/esm2020/lib/components/evo-loader/evo-circular-loader.component.mjs +18 -18
- package/esm2020/lib/components/evo-loader/evo-loader.component.mjs +27 -27
- package/esm2020/lib/components/evo-loader/evo-loader.module.mjs +32 -32
- package/esm2020/lib/components/evo-loader/index.mjs +1 -1
- package/esm2020/lib/components/evo-loader/public-api.mjs +3 -3
- package/esm2020/lib/components/evo-modal/evo-modal.component.mjs +127 -127
- package/esm2020/lib/components/evo-modal/evo-modal.module.mjs +31 -31
- package/esm2020/lib/components/evo-modal/evo-modal.service.mjs +31 -31
- package/esm2020/lib/components/evo-modal/index.mjs +1 -1
- package/esm2020/lib/components/evo-modal/public-api.mjs +3 -3
- package/esm2020/lib/components/evo-navbar/evo-navbar-item/evo-navbar-item.component.mjs +57 -57
- package/esm2020/lib/components/evo-navbar/evo-navbar.component.mjs +45 -45
- package/esm2020/lib/components/evo-navbar/evo-navbar.module.mjs +23 -23
- package/esm2020/lib/components/evo-navbar/index.mjs +1 -1
- package/esm2020/lib/components/evo-navbar/interfaces/nav-item-main-info.mjs +1 -1
- package/esm2020/lib/components/evo-navbar/interfaces/nav-item-router-link.mjs +1 -1
- package/esm2020/lib/components/evo-navbar/interfaces/nav-item.href.mjs +1 -1
- package/esm2020/lib/components/evo-navbar/public-api.mjs +3 -3
- package/esm2020/lib/components/evo-navbar/types/nav-item.mjs +1 -1
- package/esm2020/lib/components/evo-navigation-button/evo-navigation-button.component.mjs +12 -12
- package/esm2020/lib/components/evo-navigation-button/evo-navigation-button.module.mjs +45 -45
- package/esm2020/lib/components/evo-navigation-button/index.mjs +2 -2
- package/esm2020/lib/components/evo-navigation-button/public-api.mjs +3 -3
- package/esm2020/lib/components/evo-note/evo-note.component.mjs +39 -39
- package/esm2020/lib/components/evo-note/evo-note.module.mjs +44 -44
- package/esm2020/lib/components/evo-note/index.mjs +1 -1
- package/esm2020/lib/components/evo-note/public.api.mjs +3 -3
- package/esm2020/lib/components/evo-note/types/evo-note-type.mjs +1 -1
- package/esm2020/lib/components/evo-paginator/evo-paginator.component.mjs +107 -107
- package/esm2020/lib/components/evo-paginator/evo-paginator.module.mjs +21 -21
- package/esm2020/lib/components/evo-paginator/index.mjs +1 -1
- package/esm2020/lib/components/evo-paginator/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-plus-minus/evo-plus-minus.component.mjs +25 -25
- package/esm2020/lib/components/evo-plus-minus/evo-plus-minus.module.mjs +21 -21
- package/esm2020/lib/components/evo-plus-minus/index.mjs +1 -1
- package/esm2020/lib/components/evo-plus-minus/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-popover/evo-popover.component.mjs +173 -173
- package/esm2020/lib/components/evo-popover/evo-popover.module.mjs +25 -25
- package/esm2020/lib/components/evo-popover/index.mjs +1 -1
- package/esm2020/lib/components/evo-popover/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-portal/evo-portal-outlet.class.mjs +6 -6
- package/esm2020/lib/components/evo-portal/evo-portal-outlet.directive.mjs +18 -18
- package/esm2020/lib/components/evo-portal/evo-portal.module.mjs +31 -31
- package/esm2020/lib/components/evo-portal/evo-portal.service.mjs +91 -91
- package/esm2020/lib/components/evo-portal/index.mjs +1 -1
- package/esm2020/lib/components/evo-portal/public-api.mjs +4 -4
- package/esm2020/lib/components/evo-radio/evo-radio.component.mjs +50 -50
- package/esm2020/lib/components/evo-radio/evo-radio.module.mjs +25 -25
- package/esm2020/lib/components/evo-radio/index.mjs +1 -1
- package/esm2020/lib/components/evo-radio/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-radio-group/evo-radio-group.component.mjs +122 -122
- package/esm2020/lib/components/evo-radio-group/evo-radio-group.module.mjs +33 -33
- package/esm2020/lib/components/evo-radio-group/index.mjs +1 -1
- package/esm2020/lib/components/evo-radio-group/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-radio-group/typings/options.mjs +1 -1
- package/esm2020/lib/components/evo-radioshape/components/evo-radioshape.component.mjs +55 -55
- package/esm2020/lib/components/evo-radioshape/evo-radioshape.module.mjs +32 -32
- package/esm2020/lib/components/evo-radioshape/index.mjs +1 -1
- package/esm2020/lib/components/evo-radioshape/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-segmented-bar/evo-segmented-bar/evo-segmented-bar.component.mjs +21 -21
- package/esm2020/lib/components/evo-segmented-bar/evo-segmented-bar-button/evo-segmented-bar-button.component.mjs +77 -77
- package/esm2020/lib/components/evo-segmented-bar/evo-segmented-bar.module.mjs +24 -24
- package/esm2020/lib/components/evo-segmented-bar/index.mjs +1 -1
- package/esm2020/lib/components/evo-segmented-bar/public-api.mjs +3 -3
- package/esm2020/lib/components/evo-select/evo-select.component.mjs +115 -115
- package/esm2020/lib/components/evo-select/evo-select.module.mjs +33 -33
- package/esm2020/lib/components/evo-select/index.mjs +1 -1
- package/esm2020/lib/components/evo-select/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-sidebar/enums/evo-sidebar-close-targets.mjs +7 -7
- package/esm2020/lib/components/evo-sidebar/enums/evo-sidebar-sizes.mjs +6 -6
- package/esm2020/lib/components/evo-sidebar/enums/evo-sidebar-states.mjs +5 -5
- package/esm2020/lib/components/evo-sidebar/evo-sidebar-content/evo-sidebar-content.component.mjs +32 -32
- package/esm2020/lib/components/evo-sidebar/evo-sidebar-footer/evo-sidebar-footer.component.mjs +12 -12
- package/esm2020/lib/components/evo-sidebar/evo-sidebar-header/evo-sidebar-header.component.mjs +39 -39
- package/esm2020/lib/components/evo-sidebar/evo-sidebar-portal.mjs +20 -20
- package/esm2020/lib/components/evo-sidebar/evo-sidebar.component.mjs +172 -172
- package/esm2020/lib/components/evo-sidebar/evo-sidebar.module.mjs +89 -89
- package/esm2020/lib/components/evo-sidebar/evo-sidebar.service.mjs +104 -104
- package/esm2020/lib/components/evo-sidebar/index.mjs +1 -1
- package/esm2020/lib/components/evo-sidebar/interfaces.mjs +1 -1
- package/esm2020/lib/components/evo-sidebar/public-api.mjs +11 -11
- package/esm2020/lib/components/evo-sidebar/sidebar-injection-token.mjs +2 -2
- package/esm2020/lib/components/evo-sidebar/tokens.mjs +11 -11
- package/esm2020/lib/components/evo-stepper/evo-stepper-events.mjs +24 -24
- package/esm2020/lib/components/evo-stepper/evo-stepper-item/evo-stepper-item.component.mjs +30 -30
- package/esm2020/lib/components/evo-stepper/evo-stepper.component.mjs +66 -66
- package/esm2020/lib/components/evo-stepper/evo-stepper.module.mjs +26 -26
- package/esm2020/lib/components/evo-stepper/index.mjs +1 -1
- package/esm2020/lib/components/evo-stepper/public-api.mjs +3 -3
- package/esm2020/lib/components/evo-submenu/evo-submenu.component.mjs +159 -159
- package/esm2020/lib/components/evo-submenu/evo-submenu.module.mjs +26 -26
- package/esm2020/lib/components/evo-submenu/index.mjs +1 -1
- package/esm2020/lib/components/evo-submenu/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-switcher/components/evo-switcher-item/evo-switcher-item.component.mjs +10 -10
- package/esm2020/lib/components/evo-switcher/evo-switcher.component.mjs +31 -31
- package/esm2020/lib/components/evo-switcher/evo-switcher.module.mjs +26 -26
- package/esm2020/lib/components/evo-switcher/index.mjs +1 -1
- package/esm2020/lib/components/evo-switcher/public-api.mjs +3 -3
- package/esm2020/lib/components/evo-table/evo-table/evo-table.component.mjs +66 -66
- package/esm2020/lib/components/evo-table/evo-table-column/evo-table-column.component.mjs +30 -30
- package/esm2020/lib/components/evo-table/evo-table.module.mjs +22 -22
- package/esm2020/lib/components/evo-table/index.mjs +1 -1
- package/esm2020/lib/components/evo-table/public-api.mjs +3 -3
- package/esm2020/lib/components/evo-tabs/enums/evo-tabs-size.mjs +5 -5
- package/esm2020/lib/components/evo-tabs/evo-tab/evo-tab.component.mjs +87 -87
- package/esm2020/lib/components/evo-tabs/evo-tab-content/evo-tab-content.component.mjs +36 -36
- package/esm2020/lib/components/evo-tabs/evo-tab-state.collection.mjs +42 -42
- package/esm2020/lib/components/evo-tabs/evo-tabs-size.service.mjs +23 -23
- package/esm2020/lib/components/evo-tabs/evo-tabs.component.mjs +82 -82
- package/esm2020/lib/components/evo-tabs/evo-tabs.module.mjs +29 -29
- package/esm2020/lib/components/evo-tabs/evo-tabs.service.mjs +66 -66
- package/esm2020/lib/components/evo-tabs/index.mjs +1 -1
- package/esm2020/lib/components/evo-tabs/public-api.mjs +8 -8
- package/esm2020/lib/components/evo-textarea/evo-textarea.component.mjs +78 -78
- package/esm2020/lib/components/evo-textarea/evo-textarea.module.mjs +36 -36
- package/esm2020/lib/components/evo-textarea/index.mjs +1 -1
- package/esm2020/lib/components/evo-textarea/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-toast/evo-toast.component.mjs +97 -97
- package/esm2020/lib/components/evo-toast/evo-toast.module.mjs +44 -44
- package/esm2020/lib/components/evo-toast/evo-toast.service.mjs +48 -48
- package/esm2020/lib/components/evo-toast/index.mjs +1 -1
- package/esm2020/lib/components/evo-toast/public-api.mjs +3 -3
- package/esm2020/lib/components/evo-toggle/evo-toggle.component.mjs +63 -63
- package/esm2020/lib/components/evo-toggle/evo-toggle.module.mjs +29 -29
- package/esm2020/lib/components/evo-toggle/index.mjs +1 -1
- package/esm2020/lib/components/evo-toggle/public-api.mjs +2 -2
- package/esm2020/lib/components/evo-upload/evo-upload.component.mjs +287 -287
- package/esm2020/lib/components/evo-upload/evo-upload.module.mjs +58 -58
- package/esm2020/lib/components/evo-upload/index.mjs +1 -1
- package/esm2020/lib/components/evo-upload/public-api.mjs +2 -2
- package/esm2020/lib/decorators/deprecate-method.decorator.mjs +7 -7
- package/esm2020/lib/decorators/deprecate-variable.decorator.mjs +16 -16
- package/esm2020/lib/decorators/index.mjs +1 -1
- package/esm2020/lib/decorators/public-api.mjs +2 -2
- package/esm2020/lib/directives/evo-click-outside.directive.mjs +39 -39
- package/esm2020/lib/directives/evo-is-expanded.directive.mjs +70 -70
- package/esm2020/lib/directives/evo-let/evo-let.directive.mjs +45 -45
- package/esm2020/lib/directives/evo-ui-class.directive.mjs +158 -158
- package/esm2020/lib/directives/index.mjs +1 -1
- package/esm2020/lib/directives/public-api.mjs +4 -4
- package/esm2020/lib/evo-ui-kit.module.mjs +64 -64
- package/esm2020/lib/operators/enter-zone.operator.mjs +8 -8
- package/esm2020/lib/operators/index.mjs +1 -1
- package/esm2020/lib/operators/public-api.mjs +1 -1
- package/esm2020/lib/pipes/declination.pipe.mjs +39 -39
- package/esm2020/lib/pipes/evo-pipes.module.mjs +16 -16
- package/esm2020/lib/pipes/index.mjs +1 -1
- package/esm2020/lib/pipes/public-api.mjs +3 -3
- package/esm2020/lib/pipes/safe-html.pipe.mjs +17 -17
- package/esm2020/lib/services/evo-expanded.service.mjs +22 -22
- package/esm2020/lib/services/index.mjs +1 -1
- package/esm2020/lib/services/public-api.mjs +1 -1
- package/esm2020/lib/services/window.service.mjs +48 -48
- package/esm2020/public_api.mjs +74 -74
- package/evotor-dev-ui-kit.d.ts +5 -5
- package/fesm2015/evotor-dev-ui-kit-icons-category.mjs +62 -62
- package/fesm2015/evotor-dev-ui-kit-icons-emotions.mjs +18 -18
- package/fesm2015/evotor-dev-ui-kit-icons-header.mjs +28 -28
- package/fesm2015/evotor-dev-ui-kit-icons-info.mjs +40 -40
- package/fesm2015/evotor-dev-ui-kit-icons-navigation.mjs +56 -56
- package/fesm2015/evotor-dev-ui-kit-icons-navigation.mjs.map +1 -1
- package/fesm2015/evotor-dev-ui-kit-icons-side-menu.mjs +64 -64
- package/fesm2015/evotor-dev-ui-kit-icons-system.mjs +372 -372
- package/fesm2015/evotor-dev-ui-kit-icons-system.mjs.map +1 -1
- package/fesm2015/evotor-dev-ui-kit-icons.mjs +628 -628
- package/fesm2015/evotor-dev-ui-kit-icons.mjs.map +1 -1
- package/fesm2015/evotor-dev-ui-kit.mjs +7041 -7041
- package/fesm2015/evotor-dev-ui-kit.mjs.map +1 -1
- package/fesm2020/evotor-dev-ui-kit-icons-category.mjs +62 -62
- package/fesm2020/evotor-dev-ui-kit-icons-emotions.mjs +18 -18
- package/fesm2020/evotor-dev-ui-kit-icons-header.mjs +28 -28
- package/fesm2020/evotor-dev-ui-kit-icons-info.mjs +40 -40
- package/fesm2020/evotor-dev-ui-kit-icons-navigation.mjs +56 -56
- package/fesm2020/evotor-dev-ui-kit-icons-navigation.mjs.map +1 -1
- package/fesm2020/evotor-dev-ui-kit-icons-side-menu.mjs +64 -64
- package/fesm2020/evotor-dev-ui-kit-icons-system.mjs +372 -372
- package/fesm2020/evotor-dev-ui-kit-icons-system.mjs.map +1 -1
- package/fesm2020/evotor-dev-ui-kit-icons.mjs +628 -628
- package/fesm2020/evotor-dev-ui-kit-icons.mjs.map +1 -1
- package/fesm2020/evotor-dev-ui-kit.mjs +7021 -7021
- package/fesm2020/evotor-dev-ui-kit.mjs.map +1 -1
- package/icons/category/evotor-dev-ui-kit-icons-category.d.ts +5 -5
- package/icons/category/index.d.ts +59 -59
- package/icons/emotions/evotor-dev-ui-kit-icons-emotions.d.ts +5 -5
- package/icons/emotions/index.d.ts +15 -15
- package/icons/evotor-dev-ui-kit-icons.d.ts +5 -5
- package/icons/header/evotor-dev-ui-kit-icons-header.d.ts +5 -5
- package/icons/header/index.d.ts +25 -25
- package/icons/index.d.ts +321 -321
- package/icons/info/evotor-dev-ui-kit-icons-info.d.ts +5 -5
- package/icons/info/index.d.ts +37 -37
- package/icons/navigation/evotor-dev-ui-kit-icons-navigation.d.ts +5 -5
- package/icons/navigation/index.d.ts +53 -53
- package/icons/side-menu/evotor-dev-ui-kit-icons-side-menu.d.ts +5 -5
- package/icons/side-menu/index.d.ts +61 -61
- package/icons/system/evotor-dev-ui-kit-icons-system.d.ts +5 -5
- package/icons/system/index.d.ts +369 -369
- package/lib/common/Serializable.d.ts +3 -3
- package/lib/common/animations/expand.animation.d.ts +1 -1
- package/lib/common/animations/index.d.ts +3 -3
- package/lib/common/animations/sidebar.animation.d.ts +2 -2
- package/lib/common/animations/skip-initial-render.animation.d.ts +1 -1
- package/lib/common/collection/evo-collection-fabric.d.ts +4 -4
- package/lib/common/collection/evo-collection.d.ts +3 -3
- package/lib/common/collection/index.d.ts +2 -2
- package/lib/common/constants/css-breakpoints.d.ts +8 -8
- package/lib/common/constants/view-breakpoint-streams.d.ts +9 -9
- package/lib/common/evo-base-control.d.ts +21 -21
- package/lib/common/evo-control-state-manager/evo-control-state-manager.d.ts +7 -7
- package/lib/common/evo-control-state-manager/evo-control-state.interface.d.ts +5 -5
- package/lib/common/evo-control-state-manager/evo-control-states.enum.d.ts +4 -4
- package/lib/common/form-helper/form-helper.d.ts +5 -5
- package/lib/common/types/evo-color.d.ts +1 -1
- package/lib/common/types/evo-size.d.ts +1 -1
- package/lib/common/types/index.d.ts +2 -2
- package/lib/components/evo-accordion/evo-accordion-content/evo-accordion-content.component.d.ts +11 -11
- package/lib/components/evo-accordion/evo-accordion-panel/evo-accordion-panel.component.d.ts +9 -9
- package/lib/components/evo-accordion/evo-accordion-title/evo-accordion-title.component.d.ts +11 -11
- package/lib/components/evo-accordion/evo-accordion.component.d.ts +9 -9
- package/lib/components/evo-accordion/evo-accordion.module.d.ts +13 -13
- package/lib/components/evo-accordion/index.d.ts +1 -1
- package/lib/components/evo-accordion/public-api.d.ts +5 -5
- package/lib/components/evo-alert/evo-alert.component.d.ts +38 -38
- package/lib/components/evo-alert/evo-alert.module.d.ts +9 -9
- package/lib/components/evo-alert/index.d.ts +1 -1
- package/lib/components/evo-alert/public-api.d.ts +2 -2
- package/lib/components/evo-autocomplete/components/evo-autocomplete.component.d.ts +115 -115
- package/lib/components/evo-autocomplete/components/templates/evo-autocomplete-default-option.component.d.ts +16 -16
- package/lib/components/evo-autocomplete/evo-autocomplete.module.d.ts +15 -15
- package/lib/components/evo-autocomplete/helpers/switch-query-to-list.d.ts +2 -2
- package/lib/components/evo-autocomplete/index.d.ts +1 -1
- package/lib/components/evo-autocomplete/models/DaDataParty.d.ts +37 -37
- package/lib/components/evo-autocomplete/models/dadata.model.d.ts +320 -320
- package/lib/components/evo-autocomplete/public-api.d.ts +6 -6
- package/lib/components/evo-autocomplete/types/evo-autocomplete-size.d.ts +1 -1
- package/lib/components/evo-badge/evo-badge.component.d.ts +12 -12
- package/lib/components/evo-badge/evo-badge.module.d.ts +9 -9
- package/lib/components/evo-badge/index.d.ts +2 -2
- package/lib/components/evo-badge/public-api.d.ts +2 -2
- package/lib/components/evo-badge/types/evo-badge-color.d.ts +2 -2
- package/lib/components/evo-badge/types/evo-badge-size.d.ts +2 -2
- package/lib/components/evo-badge/types/index.d.ts +2 -2
- package/lib/components/evo-banner/evo-banner.component.d.ts +46 -46
- package/lib/components/evo-banner/evo-banner.module.d.ts +9 -9
- package/lib/components/evo-banner/index.d.ts +1 -1
- package/lib/components/evo-banner/public-api.d.ts +2 -2
- package/lib/components/evo-button/components/evo-button/evo-button.component.d.ts +24 -24
- package/lib/components/evo-button/components/evo-button-old/evo-button-old.component.d.ts +39 -39
- package/lib/components/evo-button/constants/evo-button-themes-map.d.ts +2 -2
- package/lib/components/evo-button/evo-button.module.d.ts +11 -11
- package/lib/components/evo-button/index.d.ts +1 -1
- package/lib/components/evo-button/public-api.d.ts +4 -4
- package/lib/components/evo-button/types/evo-button-color.d.ts +5 -5
- package/lib/components/evo-button/types/evo-button-shape.d.ts +4 -4
- package/lib/components/evo-button/types/evo-button-size.d.ts +5 -5
- package/lib/components/evo-button/types/evo-button-theme-params.d.ts +5 -5
- package/lib/components/evo-button/types/evo-button-theme.d.ts +1 -1
- package/lib/components/evo-button/types/index.d.ts +5 -5
- package/lib/components/evo-checkbox/evo-checkbox.component.d.ts +29 -29
- package/lib/components/evo-checkbox/evo-checkbox.module.d.ts +11 -11
- package/lib/components/evo-checkbox/index.d.ts +1 -1
- package/lib/components/evo-checkbox/public-api.d.ts +2 -2
- package/lib/components/evo-chip/evo-chip.component.d.ts +45 -45
- package/lib/components/evo-chip/evo-chip.module.d.ts +11 -11
- package/lib/components/evo-chip/index.d.ts +1 -1
- package/lib/components/evo-chip/public-api.d.ts +2 -2
- package/lib/components/evo-control-error/evo-control-error.component.d.ts +14 -14
- package/lib/components/evo-control-error/evo-control-error.module.d.ts +10 -10
- package/lib/components/evo-control-error/index.d.ts +1 -1
- package/lib/components/evo-control-error/public-api.d.ts +2 -2
- package/lib/components/evo-control-label/evo-control-label.component.d.ts +9 -9
- package/lib/components/evo-control-label/evo-control-label.module.d.ts +8 -8
- package/lib/components/evo-control-label/index.d.ts +1 -1
- package/lib/components/evo-control-label/public-api.d.ts +2 -2
- package/lib/components/evo-counter/evo-counter.component.d.ts +16 -16
- package/lib/components/evo-counter/evo-counter.module.d.ts +9 -9
- package/lib/components/evo-counter/index.d.ts +1 -1
- package/lib/components/evo-counter/public-api.d.ts +2 -2
- package/lib/components/evo-datepicker/evo-datepicker.component.d.ts +174 -174
- package/lib/components/evo-datepicker/evo-datepicker.module.d.ts +11 -11
- package/lib/components/evo-datepicker/flatpickr-options.interface.d.ts +10 -10
- package/lib/components/evo-datepicker/index.d.ts +1 -1
- package/lib/components/evo-datepicker/public-api.d.ts +2 -2
- package/lib/components/evo-datepicker/templates/index.d.ts +16 -16
- package/lib/components/evo-dropdown/evo-dropdown-origin.directive.d.ts +15 -15
- package/lib/components/evo-dropdown/evo-dropdown-position-description.d.ts +3 -3
- package/lib/components/evo-dropdown/evo-dropdown.component.d.ts +34 -34
- package/lib/components/evo-dropdown/evo-dropdown.module.d.ts +10 -10
- package/lib/components/evo-dropdown/index.d.ts +1 -1
- package/lib/components/evo-dropdown/public-api.d.ts +4 -4
- package/lib/components/evo-dropdown/types/evo-dropdown-positions.d.ts +1 -1
- package/lib/components/evo-icon/classes/evo-icons-library.d.ts +11 -11
- package/lib/components/evo-icon/evo-icon.component.d.ts +20 -20
- package/lib/components/evo-icon/evo-icon.module.d.ts +16 -16
- package/lib/components/evo-icon/index.d.ts +1 -1
- package/lib/components/evo-icon/interfaces/icons-category.d.ts +5 -5
- package/lib/components/evo-icon/interfaces/icons-source.d.ts +3 -3
- package/lib/components/evo-icon/public-api.d.ts +5 -5
- package/lib/components/evo-icon-button/evo-icon-button.component.d.ts +26 -26
- package/lib/components/evo-icon-button/evo-icon-button.module.d.ts +8 -8
- package/lib/components/evo-icon-button/index.d.ts +1 -1
- package/lib/components/evo-icon-button/public-api.d.ts +2 -2
- package/lib/components/evo-icon-button/types/evo-icon-button-size.d.ts +2 -2
- package/lib/components/evo-icon-button/types/evo-icon-button-theme.d.ts +1 -1
- package/lib/components/evo-icon-number/components/evo-icon-number/evo-icon-number.component.d.ts +6 -6
- package/lib/components/evo-icon-number/evo-icon-number.module.d.ts +8 -8
- package/lib/components/evo-icon-number/index.d.ts +1 -1
- package/lib/components/evo-icon-number/public-api.d.ts +2 -2
- package/lib/components/evo-input/evo-input-icon/evo-input-icon.directive.d.ts +5 -5
- package/lib/components/evo-input/evo-input.component.d.ts +93 -93
- package/lib/components/evo-input/evo-input.module.d.ts +14 -14
- package/lib/components/evo-input/index.d.ts +1 -1
- package/lib/components/evo-input/public-api.d.ts +3 -3
- package/lib/components/evo-input-contenteditable/evo-input-contenteditable.component.d.ts +44 -44
- package/lib/components/evo-input-contenteditable/evo-input-contenteditable.module.d.ts +10 -10
- package/lib/components/evo-input-contenteditable/index.d.ts +1 -1
- package/lib/components/evo-input-contenteditable/public-api.d.ts +2 -2
- package/lib/components/evo-input-contenteditable/utils/clear-multiline.d.ts +1 -1
- package/lib/components/evo-loader/evo-circular-loader.component.d.ts +8 -8
- package/lib/components/evo-loader/evo-loader.component.d.ts +14 -14
- package/lib/components/evo-loader/evo-loader.module.d.ts +10 -10
- package/lib/components/evo-loader/index.d.ts +1 -1
- package/lib/components/evo-loader/public-api.d.ts +3 -3
- package/lib/components/evo-modal/evo-modal.component.d.ts +41 -41
- package/lib/components/evo-modal/evo-modal.module.d.ts +10 -10
- package/lib/components/evo-modal/evo-modal.service.d.ts +22 -22
- package/lib/components/evo-modal/index.d.ts +1 -1
- package/lib/components/evo-modal/public-api.d.ts +3 -3
- package/lib/components/evo-navbar/evo-navbar-item/evo-navbar-item.component.d.ts +21 -21
- package/lib/components/evo-navbar/evo-navbar.component.d.ts +18 -18
- package/lib/components/evo-navbar/evo-navbar.module.d.ts +12 -12
- package/lib/components/evo-navbar/index.d.ts +1 -1
- package/lib/components/evo-navbar/interfaces/nav-item-main-info.d.ts +5 -5
- package/lib/components/evo-navbar/interfaces/nav-item-router-link.d.ts +14 -14
- package/lib/components/evo-navbar/interfaces/nav-item.href.d.ts +4 -4
- package/lib/components/evo-navbar/public-api.d.ts +7 -7
- package/lib/components/evo-navbar/types/nav-item.d.ts +4 -4
- package/lib/components/evo-navigation-button/evo-navigation-button.component.d.ts +5 -5
- package/lib/components/evo-navigation-button/evo-navigation-button.module.d.ts +9 -9
- package/lib/components/evo-navigation-button/index.d.ts +1 -1
- package/lib/components/evo-navigation-button/public-api.d.ts +2 -2
- package/lib/components/evo-note/evo-note.component.d.ts +13 -13
- package/lib/components/evo-note/evo-note.module.d.ts +10 -10
- package/lib/components/evo-note/index.d.ts +1 -1
- package/lib/components/evo-note/public.api.d.ts +3 -3
- package/lib/components/evo-note/types/evo-note-type.d.ts +1 -1
- package/lib/components/evo-paginator/evo-paginator.component.d.ts +26 -26
- package/lib/components/evo-paginator/evo-paginator.module.d.ts +8 -8
- package/lib/components/evo-paginator/index.d.ts +1 -1
- package/lib/components/evo-paginator/public-api.d.ts +2 -2
- package/lib/components/evo-plus-minus/evo-plus-minus.component.d.ts +13 -13
- package/lib/components/evo-plus-minus/evo-plus-minus.module.d.ts +8 -8
- package/lib/components/evo-plus-minus/index.d.ts +1 -1
- package/lib/components/evo-plus-minus/public-api.d.ts +2 -2
- package/lib/components/evo-popover/evo-popover.component.d.ts +43 -43
- package/lib/components/evo-popover/evo-popover.module.d.ts +9 -9
- package/lib/components/evo-popover/index.d.ts +1 -1
- package/lib/components/evo-popover/public-api.d.ts +2 -2
- package/lib/components/evo-portal/evo-portal-outlet.class.d.ts +6 -6
- package/lib/components/evo-portal/evo-portal-outlet.directive.d.ts +10 -10
- package/lib/components/evo-portal/evo-portal.module.d.ts +8 -8
- package/lib/components/evo-portal/evo-portal.service.d.ts +27 -27
- package/lib/components/evo-portal/index.d.ts +1 -1
- package/lib/components/evo-portal/public-api.d.ts +4 -4
- package/lib/components/evo-radio/evo-radio.component.d.ts +18 -18
- package/lib/components/evo-radio/evo-radio.module.d.ts +9 -9
- package/lib/components/evo-radio/index.d.ts +1 -1
- package/lib/components/evo-radio/public-api.d.ts +2 -2
- package/lib/components/evo-radio-group/evo-radio-group.component.d.ts +56 -56
- package/lib/components/evo-radio-group/evo-radio-group.module.d.ts +11 -11
- package/lib/components/evo-radio-group/index.d.ts +1 -1
- package/lib/components/evo-radio-group/public-api.d.ts +2 -2
- package/lib/components/evo-radio-group/typings/options.d.ts +6 -6
- package/lib/components/evo-radioshape/components/evo-radioshape.component.d.ts +19 -19
- package/lib/components/evo-radioshape/evo-radioshape.module.d.ts +9 -9
- package/lib/components/evo-radioshape/index.d.ts +1 -1
- package/lib/components/evo-radioshape/public-api.d.ts +2 -2
- package/lib/components/evo-segmented-bar/evo-segmented-bar/evo-segmented-bar.component.d.ts +10 -10
- package/lib/components/evo-segmented-bar/evo-segmented-bar-button/evo-segmented-bar-button.component.d.ts +22 -22
- package/lib/components/evo-segmented-bar/evo-segmented-bar.module.d.ts +11 -11
- package/lib/components/evo-segmented-bar/index.d.ts +1 -1
- package/lib/components/evo-segmented-bar/public-api.d.ts +3 -3
- package/lib/components/evo-select/evo-select.component.d.ts +37 -37
- package/lib/components/evo-select/evo-select.module.d.ts +11 -11
- package/lib/components/evo-select/index.d.ts +1 -1
- package/lib/components/evo-select/public-api.d.ts +2 -2
- package/lib/components/evo-sidebar/enums/evo-sidebar-close-targets.d.ts +6 -6
- package/lib/components/evo-sidebar/enums/evo-sidebar-sizes.d.ts +5 -5
- package/lib/components/evo-sidebar/enums/evo-sidebar-states.d.ts +4 -4
- package/lib/components/evo-sidebar/evo-sidebar-content/evo-sidebar-content.component.d.ts +12 -12
- package/lib/components/evo-sidebar/evo-sidebar-footer/evo-sidebar-footer.component.d.ts +5 -5
- package/lib/components/evo-sidebar/evo-sidebar-header/evo-sidebar-header.component.d.ts +13 -13
- package/lib/components/evo-sidebar/evo-sidebar-portal.d.ts +13 -13
- package/lib/components/evo-sidebar/evo-sidebar.component.d.ts +42 -42
- package/lib/components/evo-sidebar/evo-sidebar.module.d.ts +17 -17
- package/lib/components/evo-sidebar/evo-sidebar.service.d.ts +26 -26
- package/lib/components/evo-sidebar/index.d.ts +1 -1
- package/lib/components/evo-sidebar/interfaces.d.ts +23 -23
- package/lib/components/evo-sidebar/public-api.d.ts +11 -11
- package/lib/components/evo-sidebar/sidebar-injection-token.d.ts +2 -2
- package/lib/components/evo-sidebar/tokens.d.ts +7 -7
- package/lib/components/evo-stepper/evo-stepper-events.d.ts +12 -12
- package/lib/components/evo-stepper/evo-stepper-item/evo-stepper-item.component.d.ts +13 -13
- package/lib/components/evo-stepper/evo-stepper.component.d.ts +27 -27
- package/lib/components/evo-stepper/evo-stepper.module.d.ts +10 -10
- package/lib/components/evo-stepper/index.d.ts +1 -1
- package/lib/components/evo-stepper/public-api.d.ts +3 -3
- package/lib/components/evo-submenu/evo-submenu.component.d.ts +49 -49
- package/lib/components/evo-submenu/evo-submenu.module.d.ts +11 -11
- package/lib/components/evo-submenu/index.d.ts +1 -1
- package/lib/components/evo-submenu/public-api.d.ts +2 -2
- package/lib/components/evo-switcher/components/evo-switcher-item/evo-switcher-item.component.d.ts +9 -9
- package/lib/components/evo-switcher/evo-switcher.component.d.ts +14 -14
- package/lib/components/evo-switcher/evo-switcher.module.d.ts +10 -10
- package/lib/components/evo-switcher/index.d.ts +1 -1
- package/lib/components/evo-switcher/public-api.d.ts +3 -3
- package/lib/components/evo-table/evo-table/evo-table.component.d.ts +35 -35
- package/lib/components/evo-table/evo-table-column/evo-table-column.component.d.ts +12 -12
- package/lib/components/evo-table/evo-table.module.d.ts +9 -9
- package/lib/components/evo-table/index.d.ts +1 -1
- package/lib/components/evo-table/public-api.d.ts +3 -3
- package/lib/components/evo-tabs/enums/evo-tabs-size.d.ts +4 -4
- package/lib/components/evo-tabs/evo-tab/evo-tab.component.d.ts +35 -35
- package/lib/components/evo-tabs/evo-tab-content/evo-tab-content.component.d.ts +16 -16
- package/lib/components/evo-tabs/evo-tab-state.collection.d.ts +15 -15
- package/lib/components/evo-tabs/evo-tabs-size.service.d.ts +12 -12
- package/lib/components/evo-tabs/evo-tabs.component.d.ts +22 -22
- package/lib/components/evo-tabs/evo-tabs.module.d.ts +11 -11
- package/lib/components/evo-tabs/evo-tabs.service.d.ts +19 -19
- package/lib/components/evo-tabs/index.d.ts +1 -1
- package/lib/components/evo-tabs/public-api.d.ts +8 -8
- package/lib/components/evo-textarea/evo-textarea.component.d.ts +25 -25
- package/lib/components/evo-textarea/evo-textarea.module.d.ts +11 -11
- package/lib/components/evo-textarea/index.d.ts +1 -1
- package/lib/components/evo-textarea/public-api.d.ts +2 -2
- package/lib/components/evo-toast/evo-toast.component.d.ts +23 -23
- package/lib/components/evo-toast/evo-toast.module.d.ts +10 -10
- package/lib/components/evo-toast/evo-toast.service.d.ts +22 -22
- package/lib/components/evo-toast/index.d.ts +1 -1
- package/lib/components/evo-toast/public-api.d.ts +3 -3
- package/lib/components/evo-toggle/evo-toggle.component.d.ts +20 -20
- package/lib/components/evo-toggle/evo-toggle.module.d.ts +10 -10
- package/lib/components/evo-toggle/index.d.ts +1 -1
- package/lib/components/evo-toggle/public-api.d.ts +2 -2
- package/lib/components/evo-upload/evo-upload.component.d.ts +65 -65
- package/lib/components/evo-upload/evo-upload.module.d.ts +13 -13
- package/lib/components/evo-upload/index.d.ts +1 -1
- package/lib/components/evo-upload/public-api.d.ts +2 -2
- package/lib/decorators/deprecate-method.decorator.d.ts +1 -1
- package/lib/decorators/deprecate-variable.decorator.d.ts +1 -1
- package/lib/decorators/index.d.ts +1 -1
- package/lib/decorators/public-api.d.ts +2 -2
- package/lib/directives/evo-click-outside.directive.d.ts +12 -12
- package/lib/directives/evo-is-expanded.directive.d.ts +19 -19
- package/lib/directives/evo-let/evo-let.directive.d.ts +33 -33
- package/lib/directives/evo-ui-class.directive.d.ts +61 -61
- package/lib/directives/index.d.ts +1 -1
- package/lib/directives/public-api.d.ts +4 -4
- package/lib/evo-ui-kit.module.d.ts +16 -16
- package/lib/operators/enter-zone.operator.d.ts +3 -3
- package/lib/operators/index.d.ts +1 -1
- package/lib/operators/public-api.d.ts +1 -1
- package/lib/pipes/declination.pipe.d.ts +7 -7
- package/lib/pipes/evo-pipes.module.d.ts +8 -8
- package/lib/pipes/index.d.ts +1 -1
- package/lib/pipes/public-api.d.ts +3 -3
- package/lib/pipes/safe-html.pipe.d.ts +10 -10
- package/lib/services/evo-expanded.service.d.ts +11 -11
- package/lib/services/index.d.ts +1 -1
- package/lib/services/public-api.d.ts +1 -1
- package/lib/services/window.service.d.ts +14 -14
- package/package.json +4 -2
- package/public_api.d.ts +63 -63
- package/styles/components/evo-button.scss +233 -233
- package/styles/components/evo-chip.scss +167 -167
- package/styles/components/evo-table.scss +42 -42
- package/styles/components/evo-title.scss +23 -23
- package/styles/globals.scss +78 -78
- package/styles/main.scss +24 -24
- package/styles/mixins/_evo-input-mixins.scss +74 -74
- package/styles/mixins/_evo-text-button-mixin.scss +24 -24
- package/styles/mixins/_evo-text-caption-mixin.scss +26 -26
- package/styles/mixins/_evo-text-field-mixin.scss +36 -36
- package/styles/mixins/_evo-text-header-mixin.scss +62 -62
- package/styles/mixins/_evo-text-mobile-header-mixin.scss +34 -34
- package/styles/mixins/_evo-text-paragraph-mixin.scss +34 -34
- package/styles/mixins/_evo-text-subtitle-mixin.scss +20 -20
- package/styles/mixins/_evo-text-tips-mixin.scss +9 -9
- package/styles/mixins/_media-mixins.scss +38 -38
- package/styles/mixins.scss +96 -96
- package/styles/partials/_fonts.scss +2 -2
- package/styles/partials/_typography.scss +135 -135
- package/styles/variables.scss +140 -140
|
@@ -1,159 +1,159 @@
|
|
|
1
|
-
import { Component, HostListener, Inject, Input, ViewChild } from '@angular/core';
|
|
2
|
-
import { of } from 'rxjs';
|
|
3
|
-
import { delay } from 'rxjs/operators';
|
|
4
|
-
import { WINDOW } from '../../services/window.service';
|
|
5
|
-
import { DOCUMENT } from '@angular/common';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../../directives/evo-ui-class.directive";
|
|
8
|
-
import * as i2 from "@angular/common";
|
|
9
|
-
import * as i3 from "ngx-page-scroll";
|
|
10
|
-
import * as i4 from "@angular/router";
|
|
11
|
-
/**
|
|
12
|
-
* scroll - [default] link type with auto scroll to section on the same page
|
|
13
|
-
* outer - outer link (not accesible with router)
|
|
14
|
-
* router - router type link
|
|
15
|
-
*/
|
|
16
|
-
export var EvoSubmenuType;
|
|
17
|
-
(function (EvoSubmenuType) {
|
|
18
|
-
EvoSubmenuType[EvoSubmenuType["scroll"] = 0] = "scroll";
|
|
19
|
-
EvoSubmenuType[EvoSubmenuType["outer"] = 1] = "outer";
|
|
20
|
-
EvoSubmenuType[EvoSubmenuType["router"] = 2] = "router";
|
|
21
|
-
})(EvoSubmenuType || (EvoSubmenuType = {}));
|
|
22
|
-
/**
|
|
23
|
-
* @deprecated use `EvoTabsComponent`
|
|
24
|
-
*/
|
|
25
|
-
export class EvoSubmenuComponent {
|
|
26
|
-
constructor(elRef, window, document) {
|
|
27
|
-
this.elRef = elRef;
|
|
28
|
-
this.window = window;
|
|
29
|
-
this.document = document;
|
|
30
|
-
this.menuType = EvoSubmenuType.scroll;
|
|
31
|
-
this.offsetLeft = false;
|
|
32
|
-
this.isFloated = false;
|
|
33
|
-
this.activeItemIndex = 0;
|
|
34
|
-
this.evoSubmenuType = EvoSubmenuType;
|
|
35
|
-
this._items = [];
|
|
36
|
-
this.submenuOffset = 0;
|
|
37
|
-
this.isWindowResize = false;
|
|
38
|
-
}
|
|
39
|
-
get items() {
|
|
40
|
-
return this._items;
|
|
41
|
-
}
|
|
42
|
-
set items(items) {
|
|
43
|
-
this._items = items;
|
|
44
|
-
if (this.menuType === EvoSubmenuType.scroll) {
|
|
45
|
-
this.calculateActiveItemIndex();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
ngOnInit() { }
|
|
49
|
-
onWindowResize() {
|
|
50
|
-
if (this.menuType === EvoSubmenuType.scroll) {
|
|
51
|
-
this.isWindowResize = true;
|
|
52
|
-
this.submenuOffset = this.elRef.nativeElement.offsetTop;
|
|
53
|
-
this.onWindowScroll();
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
onWindowScroll() {
|
|
57
|
-
if (this.menuType === EvoSubmenuType.scroll) {
|
|
58
|
-
this.submenuOffset = this.elRef.nativeElement.offsetTop;
|
|
59
|
-
this.isFloated = this.window.pageYOffset + this.headerHeight >= this.submenuOffset;
|
|
60
|
-
this.calculateActiveItemIndex();
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
ngAfterViewInit() {
|
|
64
|
-
if (this.menuType === EvoSubmenuType.scroll) {
|
|
65
|
-
this.submenuOffset = this.elRef.nativeElement.offsetTop;
|
|
66
|
-
this.header = this.document.querySelector('evo-header');
|
|
67
|
-
if (this.header) {
|
|
68
|
-
this.headerHeight = this.header.getBoundingClientRect().height;
|
|
69
|
-
}
|
|
70
|
-
this.onWindowScroll();
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
calculateActiveItemIndex() {
|
|
74
|
-
let newIndex;
|
|
75
|
-
const { documentElement } = this.document;
|
|
76
|
-
if (documentElement.clientHeight + documentElement.scrollTop >= documentElement.scrollHeight) {
|
|
77
|
-
newIndex = this.items.length - 1;
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
newIndex =
|
|
81
|
-
this.items
|
|
82
|
-
.map((item) => {
|
|
83
|
-
const anchorSection = this.document.querySelector('#' + item.href);
|
|
84
|
-
if (anchorSection) {
|
|
85
|
-
return anchorSection.getBoundingClientRect().top - item.scrollOffset - 1;
|
|
86
|
-
}
|
|
87
|
-
})
|
|
88
|
-
.filter((value) => value < 0).length - 1;
|
|
89
|
-
}
|
|
90
|
-
if (this.isWindowResize || newIndex !== this.activeItemIndex) {
|
|
91
|
-
this.activeItemIndex = newIndex;
|
|
92
|
-
this.isWindowResize = false;
|
|
93
|
-
// Timeout to get correct container scrollWidth
|
|
94
|
-
of({})
|
|
95
|
-
.pipe(delay(0))
|
|
96
|
-
.subscribe(() => {
|
|
97
|
-
this.checkHorizontalScroll();
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
checkHorizontalScroll() {
|
|
102
|
-
const container = this.container.nativeElement;
|
|
103
|
-
if (container.scrollWidth > container.clientWidth) {
|
|
104
|
-
const items = container.querySelectorAll('.evo-submenu__item');
|
|
105
|
-
const item = items ? items[this.activeItemIndex] : null;
|
|
106
|
-
if (item) {
|
|
107
|
-
const itemOffset = item.getBoundingClientRect().left;
|
|
108
|
-
if (itemOffset >= 0) {
|
|
109
|
-
if (item.clientWidth + itemOffset > container.clientWidth) {
|
|
110
|
-
container.scroll({
|
|
111
|
-
left: container.scrollLeft + item.clientWidth + itemOffset - container.clientWidth,
|
|
112
|
-
behavior: 'smooth',
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
else {
|
|
117
|
-
container.scroll({
|
|
118
|
-
left: container.scrollLeft + itemOffset,
|
|
119
|
-
behavior: 'smooth',
|
|
120
|
-
});
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
else {
|
|
124
|
-
container.scroll({
|
|
125
|
-
left: 0,
|
|
126
|
-
behavior: 'smooth',
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
EvoSubmenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuComponent, deps: [{ token: i0.ElementRef }, { token: WINDOW }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
133
|
-
EvoSubmenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: EvoSubmenuComponent, selector: "evo-submenu", inputs: { menuType: "menuType", offsetLeft: "offsetLeft", items: "items" }, host: { listeners: { "window:resize": "onWindowResize()", "window:scroll": "onWindowScroll()" } }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, static: true }], ngImport: i0, template: "<section class=\"evo-submenu\">\n <div class=\"evo-submenu__wrapper\" [evoUiClass]=\"{affix: isFloated, 'has-offset-left': offsetLeft}\">\n <div #container class=\"container evo-submenu__container\">\n <ul class=\"evo-submenu__list\">\n <ng-container *ngIf=\"menuType === evoSubmenuType.scroll\">\n <li *ngFor=\"let item of items; let index = index;\"\n class=\"evo-submenu__item\"\n [evoUiClass]=\"{active: index === activeItemIndex}\"\n role=\"presentation\">\n <a class=\"evo-submenu__link\"\n [pageScrollDuration]=\"200\"\n [pageScrollOffset]=\"item.scrollOffset || 0\"\n pageScroll\n href=\"#{{ item.href }}\">{{ item.title }}</a>\n </li>\n </ng-container>\n <ng-container *ngIf=\"menuType === evoSubmenuType.router || menuType === evoSubmenuType.outer\">\n <li *ngFor=\"let item of items; let index = index;\"\n class=\"evo-submenu__item\"\n routerLinkActive=\"evo-submenu__item_active\"\n [ngClass]=\"{'evo-submenu__item_active': item.isActive}\"\n role=\"presentation\">\n <ng-container *ngIf=\"item.type === evoSubmenuType.router || (! item.type && menuType === evoSubmenuType.router)\">\n <a class=\"evo-submenu__link\"\n [routerLink]=\"[item.href]\">{{ item.title }}</a>\n </ng-container>\n <ng-container *ngIf=\"item.type === evoSubmenuType.outer || (! item.type && menuType === evoSubmenuType.outer)\">\n <a class=\"evo-submenu__link\"\n href=\"{{ item.href }}\"\n [target]=\"item.target || '_self'\"\n >{{ item.title }}</a>\n </ng-container>\n </li>\n </ng-container>\n </ul>\n </div>\n </div>\n</section>\n", styles: [".evo-submenu{height:60px;margin-top:38px}.evo-submenu__wrapper{height:60px;overflow:hidden;background-color:#fff;border-bottom:solid 1px #C6C6C6}.evo-submenu__wrapper_affix{position:fixed;top:80px;right:0;left:0;z-index:110;box-shadow:0 1px 10px #0003,0 4px 5px #0000001f,0 2px 4px #00000024}.evo-submenu__container{padding-bottom:20px;overflow-y:auto;-webkit-overflow-scrolling:touch}.evo-submenu__button{display:none}@media (min-width: 992px){.evo-submenu__button{display:block;float:right;margin-top:12px}}.evo-submenu__list{display:flex;float:left;margin:0;padding:0;list-style:none}.evo-submenu__item_active .evo-submenu__link{color:#f05023}.evo-submenu__item_active .evo-submenu__link:before{position:absolute;right:15px;bottom:0;left:15px;height:3px;background-color:#f05023;content:\"\"}.evo-submenu__link,.evo-submenu__link:hover,.evo-submenu__link:focus{position:relative;display:flex;align-items:center;height:60px;padding:20px 15px;color:#212121;font-size:14px;font-family:var(--evo-font-secondary);white-space:nowrap;text-transform:uppercase;text-decoration:none}\n"], directives: [{ type: i1.EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgxPageScrollDirective, selector: "[pageScroll]", inputs: ["routerLink", "href", "fragment", "pageScrollTarget", "pageScrollHorizontal", "pageScrollOffset", "pageScrollDuration", "pageScrollSpeed", "pageScrollEasing", "pageScrollInterruptible", "pageScrollInView", "pageScrollAdjustHash", "pageScroll"], outputs: ["pageScrollFinish"] }, { type: i4.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }] });
|
|
134
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuComponent, decorators: [{
|
|
135
|
-
type: Component,
|
|
136
|
-
args: [{ selector: 'evo-submenu', template: "<section class=\"evo-submenu\">\n <div class=\"evo-submenu__wrapper\" [evoUiClass]=\"{affix: isFloated, 'has-offset-left': offsetLeft}\">\n <div #container class=\"container evo-submenu__container\">\n <ul class=\"evo-submenu__list\">\n <ng-container *ngIf=\"menuType === evoSubmenuType.scroll\">\n <li *ngFor=\"let item of items; let index = index;\"\n class=\"evo-submenu__item\"\n [evoUiClass]=\"{active: index === activeItemIndex}\"\n role=\"presentation\">\n <a class=\"evo-submenu__link\"\n [pageScrollDuration]=\"200\"\n [pageScrollOffset]=\"item.scrollOffset || 0\"\n pageScroll\n href=\"#{{ item.href }}\">{{ item.title }}</a>\n </li>\n </ng-container>\n <ng-container *ngIf=\"menuType === evoSubmenuType.router || menuType === evoSubmenuType.outer\">\n <li *ngFor=\"let item of items; let index = index;\"\n class=\"evo-submenu__item\"\n routerLinkActive=\"evo-submenu__item_active\"\n [ngClass]=\"{'evo-submenu__item_active': item.isActive}\"\n role=\"presentation\">\n <ng-container *ngIf=\"item.type === evoSubmenuType.router || (! item.type && menuType === evoSubmenuType.router)\">\n <a class=\"evo-submenu__link\"\n [routerLink]=\"[item.href]\">{{ item.title }}</a>\n </ng-container>\n <ng-container *ngIf=\"item.type === evoSubmenuType.outer || (! item.type && menuType === evoSubmenuType.outer)\">\n <a class=\"evo-submenu__link\"\n href=\"{{ item.href }}\"\n [target]=\"item.target || '_self'\"\n >{{ item.title }}</a>\n </ng-container>\n </li>\n </ng-container>\n </ul>\n </div>\n </div>\n</section>\n", styles: [".evo-submenu{height:60px;margin-top:38px}.evo-submenu__wrapper{height:60px;overflow:hidden;background-color:#fff;border-bottom:solid 1px #C6C6C6}.evo-submenu__wrapper_affix{position:fixed;top:80px;right:0;left:0;z-index:110;box-shadow:0 1px 10px #0003,0 4px 5px #0000001f,0 2px 4px #00000024}.evo-submenu__container{padding-bottom:20px;overflow-y:auto;-webkit-overflow-scrolling:touch}.evo-submenu__button{display:none}@media (min-width: 992px){.evo-submenu__button{display:block;float:right;margin-top:12px}}.evo-submenu__list{display:flex;float:left;margin:0;padding:0;list-style:none}.evo-submenu__item_active .evo-submenu__link{color:#f05023}.evo-submenu__item_active .evo-submenu__link:before{position:absolute;right:15px;bottom:0;left:15px;height:3px;background-color:#f05023;content:\"\"}.evo-submenu__link,.evo-submenu__link:hover,.evo-submenu__link:focus{position:relative;display:flex;align-items:center;height:60px;padding:20px 15px;color:#212121;font-size:14px;font-family:var(--evo-font-secondary);white-space:nowrap;text-transform:uppercase;text-decoration:none}\n"] }]
|
|
137
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
138
|
-
type: Inject,
|
|
139
|
-
args: [WINDOW]
|
|
140
|
-
}] }, { type: undefined, decorators: [{
|
|
141
|
-
type: Inject,
|
|
142
|
-
args: [DOCUMENT]
|
|
143
|
-
}] }]; }, propDecorators: { menuType: [{
|
|
144
|
-
type: Input
|
|
145
|
-
}], offsetLeft: [{
|
|
146
|
-
type: Input
|
|
147
|
-
}], items: [{
|
|
148
|
-
type: Input
|
|
149
|
-
}], container: [{
|
|
150
|
-
type: ViewChild,
|
|
151
|
-
args: ['container', { static: true }]
|
|
152
|
-
}], onWindowResize: [{
|
|
153
|
-
type: HostListener,
|
|
154
|
-
args: ['window:resize', []]
|
|
155
|
-
}], onWindowScroll: [{
|
|
156
|
-
type: HostListener,
|
|
157
|
-
args: ['window:scroll', []]
|
|
158
|
-
}] } });
|
|
159
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXN1Ym1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXN1Ym1lbnUvZXZvLXN1Ym1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXN1Ym1lbnUvZXZvLXN1Ym1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQXNCLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQUMsRUFBRSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3hCLE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDckQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7QUFFekM7Ozs7R0FJRztBQUNILE1BQU0sQ0FBTixJQUFZLGNBSVg7QUFKRCxXQUFZLGNBQWM7SUFDdEIsdURBQU0sQ0FBQTtJQUNOLHFEQUFLLENBQUE7SUFDTCx1REFBTSxDQUFBO0FBQ1YsQ0FBQyxFQUpXLGNBQWMsS0FBZCxjQUFjLFFBSXpCO0FBa0JEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLG1CQUFtQjtJQTRCNUIsWUFDYyxLQUFpQixFQUNELE1BQVcsRUFDVCxRQUFhO1FBRi9CLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDRCxXQUFNLEdBQU4sTUFBTSxDQUFLO1FBQ1QsYUFBUSxHQUFSLFFBQVEsQ0FBSztRQTFCcEMsYUFBUSxHQUFtQixjQUFjLENBQUMsTUFBTSxDQUFDO1FBQ2pELGVBQVUsR0FBRyxLQUFLLENBQUM7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LFFBQVEsRUFBRSxRQUFRO3lCQUNyQixDQUFDLENBQUM7cUJBQ047aUJBQ0o7cUJBQU07b0JBQ0gsU0FBUyxDQUFDLE1BQU0sQ0FBQzt3QkFDYixJQUFJLEVBQUUsU0FBUyxDQUFDLFVBQVUsR0FBRyxVQUFVO3dCQUN2QyxRQUFRLEVBQUUsUUFBUTtxQkFDckIsQ0FBQyxDQUFDO2lCQUNOO2FBQ0o7aUJBQU07Z0JBQ0gsU0FBUyxDQUFDLE1BQU0sQ0FBQztvQkFDYixJQUFJLEVBQUUsQ0FBQztvQkFDUCxRQUFRLEVBQUUsUUFBUTtpQkFDckIsQ0FBQyxDQUFDO2FBQ047U0FDSjtJQUNMLENBQUM7O2dIQS9IUSxtQkFBbUIsNENBOEJoQixNQUFNLGFBQ04sUUFBUTtvR0EvQlgsbUJBQW1CLHdWQ3BDaEMsNHNFQXNDQTsyRkRGYSxtQkFBbUI7a0JBUi9CLFNBQVM7K0JBQ0ksYUFBYTs7MEJBcUNsQixNQUFNOzJCQUFDLE1BQU07OzBCQUNiLE1BQU07MkJBQUMsUUFBUTs0Q0ExQlgsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVPLEtBQUs7c0JBQWpCLEtBQUs7Z0JBT2tDLFNBQVM7c0JBQWhELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFzQnRDLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsRUFBRTtnQkFVakMsY0FBYztzQkFEYixZQUFZO3VCQUFDLGVBQWUsRUFBRSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIE9uSW5pdCwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbmplY3QsIElucHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge29mfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtkZWxheX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQge1dJTkRPV30gZnJvbSAnLi4vLi4vc2VydmljZXMvd2luZG93LnNlcnZpY2UnO1xyXG5pbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuLyoqXHJcbiAqIHNjcm9sbCAtIFtkZWZhdWx0XSBsaW5rIHR5cGUgd2l0aCBhdXRvIHNjcm9sbCB0byBzZWN0aW9uIG9uIHRoZSBzYW1lIHBhZ2VcclxuICogb3V0ZXIgLSBvdXRlciBsaW5rIChub3QgYWNjZXNpYmxlIHdpdGggcm91dGVyKVxyXG4gKiByb3V0ZXIgLSByb3V0ZXIgdHlwZSBsaW5rXHJcbiAqL1xyXG5leHBvcnQgZW51bSBFdm9TdWJtZW51VHlwZSB7XHJcbiAgICBzY3JvbGwsXHJcbiAgICBvdXRlcixcclxuICAgIHJvdXRlcixcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFdm9TdWJtZW51SXRlbSB7XHJcbiAgICB0aXRsZTogc3RyaW5nO1xyXG4gICAgaHJlZjogc3RyaW5nO1xyXG4gICAgdHlwZT86IEV2b1N1Ym1lbnVUeXBlOyAvLyBpZiBtZW51VHlwZSA9PT0gc2Nyb2xsLCB0aGlzIHByb3BlcnR5IGlzIGlnbm9yZWQgKGZvciBub3cpXHJcbiAgICB0YXJnZXQ/OiBzdHJpbmc7IC8vIHVzZWQgb25seSBmb3Igb3V0ZXIgdHlwZVxyXG4gICAgaXNBY3RpdmU/OiBib29sZWFuOyAvLyB1c2VkIG9ubHkgZm9yIG91dGVyIHR5cGVcclxuICAgIGluZGV4PzogbnVtYmVyO1xyXG4gICAgc2Nyb2xsT2Zmc2V0PzogbnVtYmVyO1xyXG4gICAgc2Nyb2xsRHVyYXRpb24/OiBudW1iZXI7XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdldm8tc3VibWVudScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXZvLXN1Ym1lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vZXZvLXN1Ym1lbnUuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuLyoqXHJcbiAqIEBkZXByZWNhdGVkIHVzZSBgRXZvVGFic0NvbXBvbmVudGBcclxuICovXHJcbmV4cG9ydCBjbGFzcyBFdm9TdWJtZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICAgIGdldCBpdGVtcygpOiBFdm9TdWJtZW51SXRlbVtdIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5faXRlbXM7XHJcbiAgICB9XHJcblxyXG4gICAgQElucHV0KCkgbWVudVR5cGU6IEV2b1N1Ym1lbnVUeXBlID0gRXZvU3VibWVudVR5cGUuc2Nyb2xsO1xyXG4gICAgQElucHV0KCkgb2Zmc2V0TGVmdCA9IGZhbHNlO1xyXG5cclxuICAgIEBJbnB1dCgpIHNldCBpdGVtcyhpdGVtczogRXZvU3VibWVudUl0ZW1bXSkge1xyXG4gICAgICAgIHRoaXMuX2l0ZW1zID0gaXRlbXM7XHJcbiAgICAgICAgaWYgKHRoaXMubWVudVR5cGUgPT09IEV2b1N1Ym1lbnVUeXBlLnNjcm9sbCkge1xyXG4gICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZUFjdGl2ZUl0ZW1JbmRleCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7c3RhdGljOiB0cnVlfSkgY29udGFpbmVyOiBFbGVtZW50UmVmO1xyXG5cclxuICAgIGlzRmxvYXRlZCA9IGZhbHNlO1xyXG4gICAgYWN0aXZlSXRlbUluZGV4ID0gMDtcclxuICAgIGV2b1N1Ym1lbnVUeXBlID0gRXZvU3VibWVudVR5cGU7XHJcblxyXG4gICAgcHJpdmF0ZSBfaXRlbXM6IEV2b1N1Ym1lbnVJdGVtW10gPSBbXTtcclxuXHJcbiAgICBwcml2YXRlIGhlYWRlckhlaWdodDogbnVtYmVyO1xyXG4gICAgcHJpdmF0ZSBzdWJtZW51T2Zmc2V0ID0gMDtcclxuICAgIHByaXZhdGUgaXNXaW5kb3dSZXNpemUgPSBmYWxzZTtcclxuICAgIHByaXZhdGUgaGVhZGVyOiBFbGVtZW50IHwgbnVsbDtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcm90ZWN0ZWQgZWxSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByb3RlY3RlZCB3aW5kb3c6IGFueSxcclxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcm90ZWN0ZWQgZG9jdW1lbnQ6IGFueSxcclxuICAgICkge31cclxuXHJcbiAgICBuZ09uSW5pdCgpIHt9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFtdKVxyXG4gICAgb25XaW5kb3dSZXNpemUoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMubWVudVR5cGUgPT09IEV2b1N1Ym1lbnVUeXBlLnNjcm9sbCkge1xyXG4gICAgICAgICAgICB0aGlzLmlzV2luZG93UmVzaXplID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5zdWJtZW51T2Zmc2V0ID0gdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFRvcDtcclxuICAgICAgICAgICAgdGhpcy5vbldpbmRvd1Njcm9sbCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6c2Nyb2xsJywgW10pXHJcbiAgICBvbldpbmRvd1Njcm9sbCgpIHtcclxuICAgICAgICBpZiAodGhpcy5tZW51VHlwZSA9PT0gRXZvU3VibWVudVR5cGUuc2Nyb2xsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3VibWVudU9mZnNldCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRUb3A7XHJcbiAgICAgICAgICAgIHRoaXMuaXNGbG9hdGVkID0gdGhpcy53aW5kb3cucGFnZVlPZmZzZXQgKyB0aGlzLmhlYWRlckhlaWdodCA+PSB0aGlzLnN1Ym1lbnVPZmZzZXQ7XHJcbiAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlQWN0aXZlSXRlbUluZGV4KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgICAgICBpZiAodGhpcy5tZW51VHlwZSA9PT0gRXZvU3VibWVudVR5cGUuc2Nyb2xsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuc3VibWVudU9mZnNldCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRUb3A7XHJcbiAgICAgICAgICAgIHRoaXMuaGVhZGVyID0gdGhpcy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdldm8taGVhZGVyJyk7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLmhlYWRlcikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5oZWFkZXJIZWlnaHQgPSB0aGlzLmhlYWRlci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5vbldpbmRvd1Njcm9sbCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNhbGN1bGF0ZUFjdGl2ZUl0ZW1JbmRleCgpIHtcclxuICAgICAgICBsZXQgbmV3SW5kZXg7XHJcbiAgICAgICAgY29uc3Qge2RvY3VtZW50RWxlbWVudH0gPSB0aGlzLmRvY3VtZW50O1xyXG5cclxuICAgICAgICBpZiAoZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCArIGRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgPj0gZG9jdW1lbnRFbGVtZW50LnNjcm9sbEhlaWdodCkge1xyXG4gICAgICAgICAgICBuZXdJbmRleCA9IHRoaXMuaXRlbXMubGVuZ3RoIC0gMTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBuZXdJbmRleCA9XHJcbiAgICAgICAgICAgICAgICB0aGlzLml0ZW1zXHJcbiAgICAgICAgICAgICAgICAgICAgLm1hcCgoaXRlbTogRXZvU3VibWVudUl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYW5jaG9yU2VjdGlvbiA9IHRoaXMuZG9jdW1lbnQucXVlcnlTZWxlY3RvcignIycgKyBpdGVtLmhyZWYpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGFuY2hvclNlY3Rpb24pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhbmNob3JTZWN0aW9uLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCAtIGl0ZW0uc2Nyb2xsT2Zmc2V0IC0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcigodmFsdWU6IG51bWJlcikgPT4gdmFsdWUgPCAwKS5sZW5ndGggLSAxO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuaXNXaW5kb3dSZXNpemUgfHwgbmV3SW5kZXggIT09IHRoaXMuYWN0aXZlSXRlbUluZGV4KSB7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlSXRlbUluZGV4ID0gbmV3SW5kZXg7XHJcbiAgICAgICAgICAgIHRoaXMuaXNXaW5kb3dSZXNpemUgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgICAgIC8vICBUaW1lb3V0IHRvIGdldCBjb3JyZWN0IGNvbnRhaW5lciBzY3JvbGxXaWR0aFxyXG4gICAgICAgICAgICBvZih7fSlcclxuICAgICAgICAgICAgICAgIC5waXBlKGRlbGF5KDApKVxyXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jaGVja0hvcml6b250YWxTY3JvbGwoKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNoZWNrSG9yaXpvbnRhbFNjcm9sbCgpIHtcclxuICAgICAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50O1xyXG5cclxuICAgICAgICBpZiAoY29udGFpbmVyLnNjcm9sbFdpZHRoID4gY29udGFpbmVyLmNsaWVudFdpZHRoKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGl0ZW1zID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3JBbGwoJy5ldm8tc3VibWVudV9faXRlbScpO1xyXG4gICAgICAgICAgICBjb25zdCBpdGVtID0gaXRlbXMgPyBpdGVtc1t0aGlzLmFjdGl2ZUl0ZW1JbmRleF0gOiBudWxsO1xyXG5cclxuICAgICAgICAgICAgaWYgKGl0ZW0pIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1PZmZzZXQgPSBpdGVtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKGl0ZW1PZmZzZXQgPj0gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmIChpdGVtLmNsaWVudFdpZHRoICsgaXRlbU9mZnNldCA+IGNvbnRhaW5lci5jbGllbnRXaWR0aCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250YWluZXIuc2Nyb2xsKHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGNvbnRhaW5lci5zY3JvbGxMZWZ0ICsgaXRlbS5jbGllbnRXaWR0aCArIGl0ZW1PZmZzZXQgLSBjb250YWluZXIuY2xpZW50V2lkdGgsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGFpbmVyLnNjcm9sbCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGNvbnRhaW5lci5zY3JvbGxMZWZ0ICsgaXRlbU9mZnNldCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgY29udGFpbmVyLnNjcm9sbCh7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMCxcclxuICAgICAgICAgICAgICAgICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCI8c2VjdGlvbiBjbGFzcz1cImV2by1zdWJtZW51XCI+XG4gICAgPGRpdiBjbGFzcz1cImV2by1zdWJtZW51X193cmFwcGVyXCIgW2V2b1VpQ2xhc3NdPVwie2FmZml4OiBpc0Zsb2F0ZWQsICdoYXMtb2Zmc2V0LWxlZnQnOiBvZmZzZXRMZWZ0fVwiPlxuICAgICAgICA8ZGl2ICNjb250YWluZXIgY2xhc3M9XCJjb250YWluZXIgZXZvLXN1Ym1lbnVfX2NvbnRhaW5lclwiPlxuICAgICAgICAgICAgPHVsIGNsYXNzPVwiZXZvLXN1Ym1lbnVfX2xpc3RcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibWVudVR5cGUgPT09IGV2b1N1Ym1lbnVUeXBlLnNjcm9sbFwiPlxuICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGxldCBpbmRleCA9IGluZGV4O1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV2by1zdWJtZW51X19pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtldm9VaUNsYXNzXT1cInthY3RpdmU6IGluZGV4ID09PSBhY3RpdmVJdGVtSW5kZXh9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJwcmVzZW50YXRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwiZXZvLXN1Ym1lbnVfX2xpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2VTY3JvbGxEdXJhdGlvbl09XCIyMDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2VTY3JvbGxPZmZzZXRdPVwiaXRlbS5zY3JvbGxPZmZzZXQgfHwgMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlU2Nyb2xsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPVwiI3t7IGl0ZW0uaHJlZiB9fVwiPnt7IGl0ZW0udGl0bGUgfX08L2E+XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1lbnVUeXBlID09PSBldm9TdWJtZW51VHlwZS5yb3V0ZXIgfHwgbWVudVR5cGUgPT09IGV2b1N1Ym1lbnVUeXBlLm91dGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtczsgbGV0IGluZGV4ID0gaW5kZXg7XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXZvLXN1Ym1lbnVfX2l0ZW1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyTGlua0FjdGl2ZT1cImV2by1zdWJtZW51X19pdGVtX2FjdGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2V2by1zdWJtZW51X19pdGVtX2FjdGl2ZSc6IGl0ZW0uaXNBY3RpdmV9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJwcmVzZW50YXRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLnR5cGUgPT09IGV2b1N1Ym1lbnVUeXBlLnJvdXRlciB8fCAoISBpdGVtLnR5cGUgJiYgbWVudVR5cGUgPT09IGV2b1N1Ym1lbnVUeXBlLnJvdXRlcilcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz1cImV2by1zdWJtZW51X19saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbaXRlbS5ocmVmXVwiPnt7IGl0ZW0udGl0bGUgfX08L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLnR5cGUgPT09IGV2b1N1Ym1lbnVUeXBlLm91dGVyIHx8ICghIGl0ZW0udHlwZSAmJiBtZW51VHlwZSA9PT0gZXZvU3VibWVudVR5cGUub3V0ZXIpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJldm8tc3VibWVudV9fbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj1cInt7IGl0ZW0uaHJlZiB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RhcmdldF09XCJpdGVtLnRhcmdldCB8fCAnX3NlbGYnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgaXRlbS50aXRsZSB9fTwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L3NlY3Rpb24+XG4iXX0=
|
|
1
|
+
import { Component, HostListener, Inject, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import { of } from 'rxjs';
|
|
3
|
+
import { delay } from 'rxjs/operators';
|
|
4
|
+
import { WINDOW } from '../../services/window.service';
|
|
5
|
+
import { DOCUMENT } from '@angular/common';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../directives/evo-ui-class.directive";
|
|
8
|
+
import * as i2 from "@angular/common";
|
|
9
|
+
import * as i3 from "ngx-page-scroll";
|
|
10
|
+
import * as i4 from "@angular/router";
|
|
11
|
+
/**
|
|
12
|
+
* scroll - [default] link type with auto scroll to section on the same page
|
|
13
|
+
* outer - outer link (not accesible with router)
|
|
14
|
+
* router - router type link
|
|
15
|
+
*/
|
|
16
|
+
export var EvoSubmenuType;
|
|
17
|
+
(function (EvoSubmenuType) {
|
|
18
|
+
EvoSubmenuType[EvoSubmenuType["scroll"] = 0] = "scroll";
|
|
19
|
+
EvoSubmenuType[EvoSubmenuType["outer"] = 1] = "outer";
|
|
20
|
+
EvoSubmenuType[EvoSubmenuType["router"] = 2] = "router";
|
|
21
|
+
})(EvoSubmenuType || (EvoSubmenuType = {}));
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated use `EvoTabsComponent`
|
|
24
|
+
*/
|
|
25
|
+
export class EvoSubmenuComponent {
|
|
26
|
+
constructor(elRef, window, document) {
|
|
27
|
+
this.elRef = elRef;
|
|
28
|
+
this.window = window;
|
|
29
|
+
this.document = document;
|
|
30
|
+
this.menuType = EvoSubmenuType.scroll;
|
|
31
|
+
this.offsetLeft = false;
|
|
32
|
+
this.isFloated = false;
|
|
33
|
+
this.activeItemIndex = 0;
|
|
34
|
+
this.evoSubmenuType = EvoSubmenuType;
|
|
35
|
+
this._items = [];
|
|
36
|
+
this.submenuOffset = 0;
|
|
37
|
+
this.isWindowResize = false;
|
|
38
|
+
}
|
|
39
|
+
get items() {
|
|
40
|
+
return this._items;
|
|
41
|
+
}
|
|
42
|
+
set items(items) {
|
|
43
|
+
this._items = items;
|
|
44
|
+
if (this.menuType === EvoSubmenuType.scroll) {
|
|
45
|
+
this.calculateActiveItemIndex();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
ngOnInit() { }
|
|
49
|
+
onWindowResize() {
|
|
50
|
+
if (this.menuType === EvoSubmenuType.scroll) {
|
|
51
|
+
this.isWindowResize = true;
|
|
52
|
+
this.submenuOffset = this.elRef.nativeElement.offsetTop;
|
|
53
|
+
this.onWindowScroll();
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
onWindowScroll() {
|
|
57
|
+
if (this.menuType === EvoSubmenuType.scroll) {
|
|
58
|
+
this.submenuOffset = this.elRef.nativeElement.offsetTop;
|
|
59
|
+
this.isFloated = this.window.pageYOffset + this.headerHeight >= this.submenuOffset;
|
|
60
|
+
this.calculateActiveItemIndex();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
ngAfterViewInit() {
|
|
64
|
+
if (this.menuType === EvoSubmenuType.scroll) {
|
|
65
|
+
this.submenuOffset = this.elRef.nativeElement.offsetTop;
|
|
66
|
+
this.header = this.document.querySelector('evo-header');
|
|
67
|
+
if (this.header) {
|
|
68
|
+
this.headerHeight = this.header.getBoundingClientRect().height;
|
|
69
|
+
}
|
|
70
|
+
this.onWindowScroll();
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
calculateActiveItemIndex() {
|
|
74
|
+
let newIndex;
|
|
75
|
+
const { documentElement } = this.document;
|
|
76
|
+
if (documentElement.clientHeight + documentElement.scrollTop >= documentElement.scrollHeight) {
|
|
77
|
+
newIndex = this.items.length - 1;
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
newIndex =
|
|
81
|
+
this.items
|
|
82
|
+
.map((item) => {
|
|
83
|
+
const anchorSection = this.document.querySelector('#' + item.href);
|
|
84
|
+
if (anchorSection) {
|
|
85
|
+
return anchorSection.getBoundingClientRect().top - item.scrollOffset - 1;
|
|
86
|
+
}
|
|
87
|
+
})
|
|
88
|
+
.filter((value) => value < 0).length - 1;
|
|
89
|
+
}
|
|
90
|
+
if (this.isWindowResize || newIndex !== this.activeItemIndex) {
|
|
91
|
+
this.activeItemIndex = newIndex;
|
|
92
|
+
this.isWindowResize = false;
|
|
93
|
+
// Timeout to get correct container scrollWidth
|
|
94
|
+
of({})
|
|
95
|
+
.pipe(delay(0))
|
|
96
|
+
.subscribe(() => {
|
|
97
|
+
this.checkHorizontalScroll();
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
checkHorizontalScroll() {
|
|
102
|
+
const container = this.container.nativeElement;
|
|
103
|
+
if (container.scrollWidth > container.clientWidth) {
|
|
104
|
+
const items = container.querySelectorAll('.evo-submenu__item');
|
|
105
|
+
const item = items ? items[this.activeItemIndex] : null;
|
|
106
|
+
if (item) {
|
|
107
|
+
const itemOffset = item.getBoundingClientRect().left;
|
|
108
|
+
if (itemOffset >= 0) {
|
|
109
|
+
if (item.clientWidth + itemOffset > container.clientWidth) {
|
|
110
|
+
container.scroll({
|
|
111
|
+
left: container.scrollLeft + item.clientWidth + itemOffset - container.clientWidth,
|
|
112
|
+
behavior: 'smooth',
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
container.scroll({
|
|
118
|
+
left: container.scrollLeft + itemOffset,
|
|
119
|
+
behavior: 'smooth',
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
else {
|
|
124
|
+
container.scroll({
|
|
125
|
+
left: 0,
|
|
126
|
+
behavior: 'smooth',
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
EvoSubmenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuComponent, deps: [{ token: i0.ElementRef }, { token: WINDOW }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
133
|
+
EvoSubmenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: EvoSubmenuComponent, selector: "evo-submenu", inputs: { menuType: "menuType", offsetLeft: "offsetLeft", items: "items" }, host: { listeners: { "window:resize": "onWindowResize()", "window:scroll": "onWindowScroll()" } }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, static: true }], ngImport: i0, template: "<section class=\"evo-submenu\">\n <div class=\"evo-submenu__wrapper\" [evoUiClass]=\"{affix: isFloated, 'has-offset-left': offsetLeft}\">\n <div #container class=\"container evo-submenu__container\">\n <ul class=\"evo-submenu__list\">\n <ng-container *ngIf=\"menuType === evoSubmenuType.scroll\">\n <li *ngFor=\"let item of items; let index = index;\"\n class=\"evo-submenu__item\"\n [evoUiClass]=\"{active: index === activeItemIndex}\"\n role=\"presentation\">\n <a class=\"evo-submenu__link\"\n [pageScrollDuration]=\"200\"\n [pageScrollOffset]=\"item.scrollOffset || 0\"\n pageScroll\n href=\"#{{ item.href }}\">{{ item.title }}</a>\n </li>\n </ng-container>\n <ng-container *ngIf=\"menuType === evoSubmenuType.router || menuType === evoSubmenuType.outer\">\n <li *ngFor=\"let item of items; let index = index;\"\n class=\"evo-submenu__item\"\n routerLinkActive=\"evo-submenu__item_active\"\n [ngClass]=\"{'evo-submenu__item_active': item.isActive}\"\n role=\"presentation\">\n <ng-container *ngIf=\"item.type === evoSubmenuType.router || (! item.type && menuType === evoSubmenuType.router)\">\n <a class=\"evo-submenu__link\"\n [routerLink]=\"[item.href]\">{{ item.title }}</a>\n </ng-container>\n <ng-container *ngIf=\"item.type === evoSubmenuType.outer || (! item.type && menuType === evoSubmenuType.outer)\">\n <a class=\"evo-submenu__link\"\n href=\"{{ item.href }}\"\n [target]=\"item.target || '_self'\"\n >{{ item.title }}</a>\n </ng-container>\n </li>\n </ng-container>\n </ul>\n </div>\n </div>\n</section>\n", styles: [".evo-submenu{height:60px;margin-top:38px}.evo-submenu__wrapper{height:60px;overflow:hidden;background-color:#fff;border-bottom:solid 1px #C6C6C6}.evo-submenu__wrapper_affix{position:fixed;top:80px;right:0;left:0;z-index:110;box-shadow:0 1px 10px #0003,0 4px 5px #0000001f,0 2px 4px #00000024}.evo-submenu__container{padding-bottom:20px;overflow-y:auto;-webkit-overflow-scrolling:touch}.evo-submenu__button{display:none}@media (min-width: 992px){.evo-submenu__button{display:block;float:right;margin-top:12px}}.evo-submenu__list{display:flex;float:left;margin:0;padding:0;list-style:none}.evo-submenu__item_active .evo-submenu__link{color:#f05023}.evo-submenu__item_active .evo-submenu__link:before{position:absolute;right:15px;bottom:0;left:15px;height:3px;background-color:#f05023;content:\"\"}.evo-submenu__link,.evo-submenu__link:hover,.evo-submenu__link:focus{position:relative;display:flex;align-items:center;height:60px;padding:20px 15px;color:#212121;font-size:14px;font-family:var(--evo-font-secondary);white-space:nowrap;text-transform:uppercase;text-decoration:none}\n"], directives: [{ type: i1.EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }, { type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.NgxPageScrollDirective, selector: "[pageScroll]", inputs: ["routerLink", "href", "fragment", "pageScrollTarget", "pageScrollHorizontal", "pageScrollOffset", "pageScrollDuration", "pageScrollSpeed", "pageScrollEasing", "pageScrollInterruptible", "pageScrollInView", "pageScrollAdjustHash", "pageScroll"], outputs: ["pageScrollFinish"] }, { type: i4.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }] });
|
|
134
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuComponent, decorators: [{
|
|
135
|
+
type: Component,
|
|
136
|
+
args: [{ selector: 'evo-submenu', template: "<section class=\"evo-submenu\">\n <div class=\"evo-submenu__wrapper\" [evoUiClass]=\"{affix: isFloated, 'has-offset-left': offsetLeft}\">\n <div #container class=\"container evo-submenu__container\">\n <ul class=\"evo-submenu__list\">\n <ng-container *ngIf=\"menuType === evoSubmenuType.scroll\">\n <li *ngFor=\"let item of items; let index = index;\"\n class=\"evo-submenu__item\"\n [evoUiClass]=\"{active: index === activeItemIndex}\"\n role=\"presentation\">\n <a class=\"evo-submenu__link\"\n [pageScrollDuration]=\"200\"\n [pageScrollOffset]=\"item.scrollOffset || 0\"\n pageScroll\n href=\"#{{ item.href }}\">{{ item.title }}</a>\n </li>\n </ng-container>\n <ng-container *ngIf=\"menuType === evoSubmenuType.router || menuType === evoSubmenuType.outer\">\n <li *ngFor=\"let item of items; let index = index;\"\n class=\"evo-submenu__item\"\n routerLinkActive=\"evo-submenu__item_active\"\n [ngClass]=\"{'evo-submenu__item_active': item.isActive}\"\n role=\"presentation\">\n <ng-container *ngIf=\"item.type === evoSubmenuType.router || (! item.type && menuType === evoSubmenuType.router)\">\n <a class=\"evo-submenu__link\"\n [routerLink]=\"[item.href]\">{{ item.title }}</a>\n </ng-container>\n <ng-container *ngIf=\"item.type === evoSubmenuType.outer || (! item.type && menuType === evoSubmenuType.outer)\">\n <a class=\"evo-submenu__link\"\n href=\"{{ item.href }}\"\n [target]=\"item.target || '_self'\"\n >{{ item.title }}</a>\n </ng-container>\n </li>\n </ng-container>\n </ul>\n </div>\n </div>\n</section>\n", styles: [".evo-submenu{height:60px;margin-top:38px}.evo-submenu__wrapper{height:60px;overflow:hidden;background-color:#fff;border-bottom:solid 1px #C6C6C6}.evo-submenu__wrapper_affix{position:fixed;top:80px;right:0;left:0;z-index:110;box-shadow:0 1px 10px #0003,0 4px 5px #0000001f,0 2px 4px #00000024}.evo-submenu__container{padding-bottom:20px;overflow-y:auto;-webkit-overflow-scrolling:touch}.evo-submenu__button{display:none}@media (min-width: 992px){.evo-submenu__button{display:block;float:right;margin-top:12px}}.evo-submenu__list{display:flex;float:left;margin:0;padding:0;list-style:none}.evo-submenu__item_active .evo-submenu__link{color:#f05023}.evo-submenu__item_active .evo-submenu__link:before{position:absolute;right:15px;bottom:0;left:15px;height:3px;background-color:#f05023;content:\"\"}.evo-submenu__link,.evo-submenu__link:hover,.evo-submenu__link:focus{position:relative;display:flex;align-items:center;height:60px;padding:20px 15px;color:#212121;font-size:14px;font-family:var(--evo-font-secondary);white-space:nowrap;text-transform:uppercase;text-decoration:none}\n"] }]
|
|
137
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
138
|
+
type: Inject,
|
|
139
|
+
args: [WINDOW]
|
|
140
|
+
}] }, { type: undefined, decorators: [{
|
|
141
|
+
type: Inject,
|
|
142
|
+
args: [DOCUMENT]
|
|
143
|
+
}] }]; }, propDecorators: { menuType: [{
|
|
144
|
+
type: Input
|
|
145
|
+
}], offsetLeft: [{
|
|
146
|
+
type: Input
|
|
147
|
+
}], items: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], container: [{
|
|
150
|
+
type: ViewChild,
|
|
151
|
+
args: ['container', { static: true }]
|
|
152
|
+
}], onWindowResize: [{
|
|
153
|
+
type: HostListener,
|
|
154
|
+
args: ['window:resize', []]
|
|
155
|
+
}], onWindowScroll: [{
|
|
156
|
+
type: HostListener,
|
|
157
|
+
args: ['window:scroll', []]
|
|
158
|
+
}] } });
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXN1Ym1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXN1Ym1lbnUvZXZvLXN1Ym1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXN1Ym1lbnUvZXZvLXN1Ym1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQXNCLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQUMsRUFBRSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3hCLE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDckQsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7QUFFekM7Ozs7R0FJRztBQUNILE1BQU0sQ0FBTixJQUFZLGNBSVg7QUFKRCxXQUFZLGNBQWM7SUFDdEIsdURBQU0sQ0FBQTtJQUNOLHFEQUFLLENBQUE7SUFDTCx1REFBTSxDQUFBO0FBQ1YsQ0FBQyxFQUpXLGNBQWMsS0FBZCxjQUFjLFFBSXpCO0FBa0JEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLG1CQUFtQjtJQTRCNUIsWUFDYyxLQUFpQixFQUNELE1BQVcsRUFDVCxRQUFhO1FBRi9CLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDRCxXQUFNLEdBQU4sTUFBTSxDQUFLO1FBQ1QsYUFBUSxHQUFSLFFBQVEsQ0FBSztRQTFCcEMsYUFBUSxHQUFtQixjQUFjLENBQUMsTUFBTSxDQUFDO1FBQ2pELGVBQVUsR0FBRyxLQUFLLENBQUM7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LFFBQVEsRUFBRSxRQUFRO3lCQUNyQixDQUFDLENBQUM7cUJBQ047aUJBQ0o7cUJBQU07b0JBQ0gsU0FBUyxDQUFDLE1BQU0sQ0FBQzt3QkFDYixJQUFJLEVBQUUsU0FBUyxDQUFDLFVBQVUsR0FBRyxVQUFVO3dCQUN2QyxRQUFRLEVBQUUsUUFBUTtxQkFDckIsQ0FBQyxDQUFDO2lCQUNOO2FBQ0o7aUJBQU07Z0JBQ0gsU0FBUyxDQUFDLE1BQU0sQ0FBQztvQkFDYixJQUFJLEVBQUUsQ0FBQztvQkFDUCxRQUFRLEVBQUUsUUFBUTtpQkFDckIsQ0FBQyxDQUFDO2FBQ047U0FDSjtJQUNMLENBQUM7O2dIQS9IUSxtQkFBbUIsNENBOEJoQixNQUFNLGFBQ04sUUFBUTtvR0EvQlgsbUJBQW1CLHdWQ3BDaEMsNHNFQXNDQTsyRkRGYSxtQkFBbUI7a0JBUi9CLFNBQVM7K0JBQ0ksYUFBYTs7MEJBcUNsQixNQUFNOzJCQUFDLE1BQU07OzBCQUNiLE1BQU07MkJBQUMsUUFBUTs0Q0ExQlgsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVPLEtBQUs7c0JBQWpCLEtBQUs7Z0JBT2tDLFNBQVM7c0JBQWhELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFzQnRDLGNBQWM7c0JBRGIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsRUFBRTtnQkFVakMsY0FBYztzQkFEYixZQUFZO3VCQUFDLGVBQWUsRUFBRSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIE9uSW5pdCwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbmplY3QsIElucHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtvZn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2RlbGF5fSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1dJTkRPV30gZnJvbSAnLi4vLi4vc2VydmljZXMvd2luZG93LnNlcnZpY2UnO1xuaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuLyoqXG4gKiBzY3JvbGwgLSBbZGVmYXVsdF0gbGluayB0eXBlIHdpdGggYXV0byBzY3JvbGwgdG8gc2VjdGlvbiBvbiB0aGUgc2FtZSBwYWdlXG4gKiBvdXRlciAtIG91dGVyIGxpbmsgKG5vdCBhY2Nlc2libGUgd2l0aCByb3V0ZXIpXG4gKiByb3V0ZXIgLSByb3V0ZXIgdHlwZSBsaW5rXG4gKi9cbmV4cG9ydCBlbnVtIEV2b1N1Ym1lbnVUeXBlIHtcbiAgICBzY3JvbGwsXG4gICAgb3V0ZXIsXG4gICAgcm91dGVyLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV2b1N1Ym1lbnVJdGVtIHtcbiAgICB0aXRsZTogc3RyaW5nO1xuICAgIGhyZWY6IHN0cmluZztcbiAgICB0eXBlPzogRXZvU3VibWVudVR5cGU7IC8vIGlmIG1lbnVUeXBlID09PSBzY3JvbGwsIHRoaXMgcHJvcGVydHkgaXMgaWdub3JlZCAoZm9yIG5vdylcbiAgICB0YXJnZXQ/OiBzdHJpbmc7IC8vIHVzZWQgb25seSBmb3Igb3V0ZXIgdHlwZVxuICAgIGlzQWN0aXZlPzogYm9vbGVhbjsgLy8gdXNlZCBvbmx5IGZvciBvdXRlciB0eXBlXG4gICAgaW5kZXg/OiBudW1iZXI7XG4gICAgc2Nyb2xsT2Zmc2V0PzogbnVtYmVyO1xuICAgIHNjcm9sbER1cmF0aW9uPzogbnVtYmVyO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2V2by1zdWJtZW51JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXZvLXN1Ym1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2V2by1zdWJtZW51LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2UgYEV2b1RhYnNDb21wb25lbnRgXG4gKi9cbmV4cG9ydCBjbGFzcyBFdm9TdWJtZW51Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgICBnZXQgaXRlbXMoKTogRXZvU3VibWVudUl0ZW1bXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pdGVtcztcbiAgICB9XG5cbiAgICBASW5wdXQoKSBtZW51VHlwZTogRXZvU3VibWVudVR5cGUgPSBFdm9TdWJtZW51VHlwZS5zY3JvbGw7XG4gICAgQElucHV0KCkgb2Zmc2V0TGVmdCA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgc2V0IGl0ZW1zKGl0ZW1zOiBFdm9TdWJtZW51SXRlbVtdKSB7XG4gICAgICAgIHRoaXMuX2l0ZW1zID0gaXRlbXM7XG4gICAgICAgIGlmICh0aGlzLm1lbnVUeXBlID09PSBFdm9TdWJtZW51VHlwZS5zY3JvbGwpIHtcbiAgICAgICAgICAgIHRoaXMuY2FsY3VsYXRlQWN0aXZlSXRlbUluZGV4KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7c3RhdGljOiB0cnVlfSkgY29udGFpbmVyOiBFbGVtZW50UmVmO1xuXG4gICAgaXNGbG9hdGVkID0gZmFsc2U7XG4gICAgYWN0aXZlSXRlbUluZGV4ID0gMDtcbiAgICBldm9TdWJtZW51VHlwZSA9IEV2b1N1Ym1lbnVUeXBlO1xuXG4gICAgcHJpdmF0ZSBfaXRlbXM6IEV2b1N1Ym1lbnVJdGVtW10gPSBbXTtcblxuICAgIHByaXZhdGUgaGVhZGVySGVpZ2h0OiBudW1iZXI7XG4gICAgcHJpdmF0ZSBzdWJtZW51T2Zmc2V0ID0gMDtcbiAgICBwcml2YXRlIGlzV2luZG93UmVzaXplID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBoZWFkZXI6IEVsZW1lbnQgfCBudWxsO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBlbFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgQEluamVjdChXSU5ET1cpIHByb3RlY3RlZCB3aW5kb3c6IGFueSxcbiAgICAgICAgQEluamVjdChET0NVTUVOVCkgcHJvdGVjdGVkIGRvY3VtZW50OiBhbnksXG4gICAgKSB7fVxuXG4gICAgbmdPbkluaXQoKSB7fVxuXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFtdKVxuICAgIG9uV2luZG93UmVzaXplKCkge1xuICAgICAgICBpZiAodGhpcy5tZW51VHlwZSA9PT0gRXZvU3VibWVudVR5cGUuc2Nyb2xsKSB7XG4gICAgICAgICAgICB0aGlzLmlzV2luZG93UmVzaXplID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuc3VibWVudU9mZnNldCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRUb3A7XG4gICAgICAgICAgICB0aGlzLm9uV2luZG93U2Nyb2xsKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6c2Nyb2xsJywgW10pXG4gICAgb25XaW5kb3dTY3JvbGwoKSB7XG4gICAgICAgIGlmICh0aGlzLm1lbnVUeXBlID09PSBFdm9TdWJtZW51VHlwZS5zY3JvbGwpIHtcbiAgICAgICAgICAgIHRoaXMuc3VibWVudU9mZnNldCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRUb3A7XG4gICAgICAgICAgICB0aGlzLmlzRmxvYXRlZCA9IHRoaXMud2luZG93LnBhZ2VZT2Zmc2V0ICsgdGhpcy5oZWFkZXJIZWlnaHQgPj0gdGhpcy5zdWJtZW51T2Zmc2V0O1xuICAgICAgICAgICAgdGhpcy5jYWxjdWxhdGVBY3RpdmVJdGVtSW5kZXgoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMubWVudVR5cGUgPT09IEV2b1N1Ym1lbnVUeXBlLnNjcm9sbCkge1xuICAgICAgICAgICAgdGhpcy5zdWJtZW51T2Zmc2V0ID0gdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFRvcDtcbiAgICAgICAgICAgIHRoaXMuaGVhZGVyID0gdGhpcy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdldm8taGVhZGVyJyk7XG4gICAgICAgICAgICBpZiAodGhpcy5oZWFkZXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmhlYWRlckhlaWdodCA9IHRoaXMuaGVhZGVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMub25XaW5kb3dTY3JvbGwoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlQWN0aXZlSXRlbUluZGV4KCkge1xuICAgICAgICBsZXQgbmV3SW5kZXg7XG4gICAgICAgIGNvbnN0IHtkb2N1bWVudEVsZW1lbnR9ID0gdGhpcy5kb2N1bWVudDtcblxuICAgICAgICBpZiAoZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCArIGRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgPj0gZG9jdW1lbnRFbGVtZW50LnNjcm9sbEhlaWdodCkge1xuICAgICAgICAgICAgbmV3SW5kZXggPSB0aGlzLml0ZW1zLmxlbmd0aCAtIDE7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdJbmRleCA9XG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtc1xuICAgICAgICAgICAgICAgICAgICAubWFwKChpdGVtOiBFdm9TdWJtZW51SXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgYW5jaG9yU2VjdGlvbiA9IHRoaXMuZG9jdW1lbnQucXVlcnlTZWxlY3RvcignIycgKyBpdGVtLmhyZWYpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoYW5jaG9yU2VjdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBhbmNob3JTZWN0aW9uLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCAtIGl0ZW0uc2Nyb2xsT2Zmc2V0IC0gMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcigodmFsdWU6IG51bWJlcikgPT4gdmFsdWUgPCAwKS5sZW5ndGggLSAxO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuaXNXaW5kb3dSZXNpemUgfHwgbmV3SW5kZXggIT09IHRoaXMuYWN0aXZlSXRlbUluZGV4KSB7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleCA9IG5ld0luZGV4O1xuICAgICAgICAgICAgdGhpcy5pc1dpbmRvd1Jlc2l6ZSA9IGZhbHNlO1xuXG4gICAgICAgICAgICAvLyAgVGltZW91dCB0byBnZXQgY29ycmVjdCBjb250YWluZXIgc2Nyb2xsV2lkdGhcbiAgICAgICAgICAgIG9mKHt9KVxuICAgICAgICAgICAgICAgIC5waXBlKGRlbGF5KDApKVxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNoZWNrSG9yaXpvbnRhbFNjcm9sbCgpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjaGVja0hvcml6b250YWxTY3JvbGwoKSB7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKGNvbnRhaW5lci5zY3JvbGxXaWR0aCA+IGNvbnRhaW5lci5jbGllbnRXaWR0aCkge1xuICAgICAgICAgICAgY29uc3QgaXRlbXMgPSBjb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgnLmV2by1zdWJtZW51X19pdGVtJyk7XG4gICAgICAgICAgICBjb25zdCBpdGVtID0gaXRlbXMgPyBpdGVtc1t0aGlzLmFjdGl2ZUl0ZW1JbmRleF0gOiBudWxsO1xuXG4gICAgICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1PZmZzZXQgPSBpdGVtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQ7XG5cbiAgICAgICAgICAgICAgICBpZiAoaXRlbU9mZnNldCA+PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpdGVtLmNsaWVudFdpZHRoICsgaXRlbU9mZnNldCA+IGNvbnRhaW5lci5jbGllbnRXaWR0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGFpbmVyLnNjcm9sbCh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogY29udGFpbmVyLnNjcm9sbExlZnQgKyBpdGVtLmNsaWVudFdpZHRoICsgaXRlbU9mZnNldCAtIGNvbnRhaW5lci5jbGllbnRXaWR0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRhaW5lci5zY3JvbGwoe1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogY29udGFpbmVyLnNjcm9sbExlZnQgKyBpdGVtT2Zmc2V0LFxuICAgICAgICAgICAgICAgICAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnRhaW5lci5zY3JvbGwoe1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwLFxuICAgICAgICAgICAgICAgICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8c2VjdGlvbiBjbGFzcz1cImV2by1zdWJtZW51XCI+XG4gICAgPGRpdiBjbGFzcz1cImV2by1zdWJtZW51X193cmFwcGVyXCIgW2V2b1VpQ2xhc3NdPVwie2FmZml4OiBpc0Zsb2F0ZWQsICdoYXMtb2Zmc2V0LWxlZnQnOiBvZmZzZXRMZWZ0fVwiPlxuICAgICAgICA8ZGl2ICNjb250YWluZXIgY2xhc3M9XCJjb250YWluZXIgZXZvLXN1Ym1lbnVfX2NvbnRhaW5lclwiPlxuICAgICAgICAgICAgPHVsIGNsYXNzPVwiZXZvLXN1Ym1lbnVfX2xpc3RcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibWVudVR5cGUgPT09IGV2b1N1Ym1lbnVUeXBlLnNjcm9sbFwiPlxuICAgICAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXM7IGxldCBpbmRleCA9IGluZGV4O1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImV2by1zdWJtZW51X19pdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtldm9VaUNsYXNzXT1cInthY3RpdmU6IGluZGV4ID09PSBhY3RpdmVJdGVtSW5kZXh9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJwcmVzZW50YXRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwiZXZvLXN1Ym1lbnVfX2xpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2VTY3JvbGxEdXJhdGlvbl09XCIyMDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW3BhZ2VTY3JvbGxPZmZzZXRdPVwiaXRlbS5zY3JvbGxPZmZzZXQgfHwgMFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlU2Nyb2xsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBocmVmPVwiI3t7IGl0ZW0uaHJlZiB9fVwiPnt7IGl0ZW0udGl0bGUgfX08L2E+XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1lbnVUeXBlID09PSBldm9TdWJtZW51VHlwZS5yb3V0ZXIgfHwgbWVudVR5cGUgPT09IGV2b1N1Ym1lbnVUeXBlLm91dGVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtczsgbGV0IGluZGV4ID0gaW5kZXg7XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZXZvLXN1Ym1lbnVfX2l0ZW1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyTGlua0FjdGl2ZT1cImV2by1zdWJtZW51X19pdGVtX2FjdGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2V2by1zdWJtZW51X19pdGVtX2FjdGl2ZSc6IGl0ZW0uaXNBY3RpdmV9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvbGU9XCJwcmVzZW50YXRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLnR5cGUgPT09IGV2b1N1Ym1lbnVUeXBlLnJvdXRlciB8fCAoISBpdGVtLnR5cGUgJiYgbWVudVR5cGUgPT09IGV2b1N1Ym1lbnVUeXBlLnJvdXRlcilcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz1cImV2by1zdWJtZW51X19saW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJbaXRlbS5ocmVmXVwiPnt7IGl0ZW0udGl0bGUgfX08L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLnR5cGUgPT09IGV2b1N1Ym1lbnVUeXBlLm91dGVyIHx8ICghIGl0ZW0udHlwZSAmJiBtZW51VHlwZSA9PT0gZXZvU3VibWVudVR5cGUub3V0ZXIpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJldm8tc3VibWVudV9fbGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHJlZj1cInt7IGl0ZW0uaHJlZiB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RhcmdldF09XCJpdGVtLnRhcmdldCB8fCAnX3NlbGYnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+e3sgaXRlbS50aXRsZSB9fTwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L3NlY3Rpb24+XG4iXX0=
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { EvoSubmenuComponent } from './evo-submenu.component';
|
|
4
|
-
import { EvoUiKitModule } from '../../evo-ui-kit.module';
|
|
5
|
-
import { NgxPageScrollModule } from 'ngx-page-scroll';
|
|
6
|
-
import { RouterModule } from '@angular/router';
|
|
7
|
-
import { WINDOW_PROVIDERS } from '../../services/window.service';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
/**
|
|
10
|
-
* @deprecated use `EvoTabsModule`
|
|
11
|
-
*/
|
|
12
|
-
export class EvoSubmenuModule {
|
|
13
|
-
}
|
|
14
|
-
EvoSubmenuModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
15
|
-
EvoSubmenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuModule, declarations: [EvoSubmenuComponent], imports: [CommonModule, RouterModule, EvoUiKitModule, NgxPageScrollModule], exports: [EvoSubmenuComponent] });
|
|
16
|
-
EvoSubmenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuModule, providers: [...WINDOW_PROVIDERS], imports: [[CommonModule, RouterModule, EvoUiKitModule, NgxPageScrollModule]] });
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuModule, decorators: [{
|
|
18
|
-
type: NgModule,
|
|
19
|
-
args: [{
|
|
20
|
-
imports: [CommonModule, RouterModule, EvoUiKitModule, NgxPageScrollModule],
|
|
21
|
-
declarations: [EvoSubmenuComponent],
|
|
22
|
-
exports: [EvoSubmenuComponent],
|
|
23
|
-
providers: [...WINDOW_PROVIDERS],
|
|
24
|
-
}]
|
|
25
|
-
}] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { EvoSubmenuComponent } from './evo-submenu.component';
|
|
4
|
+
import { EvoUiKitModule } from '../../evo-ui-kit.module';
|
|
5
|
+
import { NgxPageScrollModule } from 'ngx-page-scroll';
|
|
6
|
+
import { RouterModule } from '@angular/router';
|
|
7
|
+
import { WINDOW_PROVIDERS } from '../../services/window.service';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
/**
|
|
10
|
+
* @deprecated use `EvoTabsModule`
|
|
11
|
+
*/
|
|
12
|
+
export class EvoSubmenuModule {
|
|
13
|
+
}
|
|
14
|
+
EvoSubmenuModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
15
|
+
EvoSubmenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuModule, declarations: [EvoSubmenuComponent], imports: [CommonModule, RouterModule, EvoUiKitModule, NgxPageScrollModule], exports: [EvoSubmenuComponent] });
|
|
16
|
+
EvoSubmenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuModule, providers: [...WINDOW_PROVIDERS], imports: [[CommonModule, RouterModule, EvoUiKitModule, NgxPageScrollModule]] });
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSubmenuModule, decorators: [{
|
|
18
|
+
type: NgModule,
|
|
19
|
+
args: [{
|
|
20
|
+
imports: [CommonModule, RouterModule, EvoUiKitModule, NgxPageScrollModule],
|
|
21
|
+
declarations: [EvoSubmenuComponent],
|
|
22
|
+
exports: [EvoSubmenuComponent],
|
|
23
|
+
providers: [...WINDOW_PROVIDERS],
|
|
24
|
+
}]
|
|
25
|
+
}] });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXN1Ym1lbnUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXN1Ym1lbnUvZXZvLXN1Ym1lbnUubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzVELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sK0JBQStCLENBQUM7O0FBUS9EOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGdCQUFnQjs7NkdBQWhCLGdCQUFnQjs4R0FBaEIsZ0JBQWdCLGlCQVBWLG1CQUFtQixhQUR4QixZQUFZLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsYUFFL0QsbUJBQW1COzhHQU1wQixnQkFBZ0IsYUFMZCxDQUFDLEdBQUcsZ0JBQWdCLENBQUMsWUFIdkIsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxtQkFBbUIsQ0FBQzsyRkFRakUsZ0JBQWdCO2tCQVQ1QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLG1CQUFtQixDQUFDO29CQUMxRSxZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztvQkFDbkMsT0FBTyxFQUFFLENBQUMsbUJBQW1CLENBQUM7b0JBQzlCLFNBQVMsRUFBRSxDQUFDLEdBQUcsZ0JBQWdCLENBQUM7aUJBQ25DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RXZvU3VibWVudUNvbXBvbmVudH0gZnJvbSAnLi9ldm8tc3VibWVudS5jb21wb25lbnQnO1xuaW1wb3J0IHtFdm9VaUtpdE1vZHVsZX0gZnJvbSAnLi4vLi4vZXZvLXVpLWtpdC5tb2R1bGUnO1xuaW1wb3J0IHtOZ3hQYWdlU2Nyb2xsTW9kdWxlfSBmcm9tICduZ3gtcGFnZS1zY3JvbGwnO1xuaW1wb3J0IHtSb3V0ZXJNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1dJTkRPV19QUk9WSURFUlN9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3dpbmRvdy5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSb3V0ZXJNb2R1bGUsIEV2b1VpS2l0TW9kdWxlLCBOZ3hQYWdlU2Nyb2xsTW9kdWxlXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtFdm9TdWJtZW51Q29tcG9uZW50XSxcbiAgICBleHBvcnRzOiBbRXZvU3VibWVudUNvbXBvbmVudF0sXG4gICAgcHJvdmlkZXJzOiBbLi4uV0lORE9XX1BST1ZJREVSU10sXG59KVxuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2UgYEV2b1RhYnNNb2R1bGVgXG4gKi9cbmV4cG9ydCBjbGFzcyBFdm9TdWJtZW51TW9kdWxlIHt9XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './public-api';
|
|
1
|
+
export * from './public-api';
|
|
2
2
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ldm8tdWkta2l0L3NyYy9saWIvY29tcG9uZW50cy9ldm8tc3VibWVudS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from './evo-submenu.module';
|
|
2
|
-
export * from './evo-submenu.component';
|
|
1
|
+
export * from './evo-submenu.module';
|
|
2
|
+
export * from './evo-submenu.component';
|
|
3
3
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by1zdWJtZW51L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9ldm8tc3VibWVudS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9ldm8tc3VibWVudS5jb21wb25lbnQnO1xuIl19
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class EvoSwitcherItemComponent {
|
|
4
|
-
}
|
|
5
|
-
EvoSwitcherItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSwitcherItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6
|
-
EvoSwitcherItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: EvoSwitcherItemComponent, selector: "evo-switcher-item", ngImport: i0, template: "<div class=\"evo-switcher-item\">\n <ng-content></ng-content>\n</div>\n\n", styles: [""] });
|
|
7
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSwitcherItemComponent, decorators: [{
|
|
8
|
-
type: Component,
|
|
9
|
-
args: [{ selector: 'evo-switcher-item', template: "<div class=\"evo-switcher-item\">\n <ng-content></ng-content>\n</div>\n\n", styles: [""] }]
|
|
10
|
-
}] });
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class EvoSwitcherItemComponent {
|
|
4
|
+
}
|
|
5
|
+
EvoSwitcherItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSwitcherItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6
|
+
EvoSwitcherItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: EvoSwitcherItemComponent, selector: "evo-switcher-item", ngImport: i0, template: "<div class=\"evo-switcher-item\">\n <ng-content></ng-content>\n</div>\n\n", styles: [""] });
|
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSwitcherItemComponent, decorators: [{
|
|
8
|
+
type: Component,
|
|
9
|
+
args: [{ selector: 'evo-switcher-item', template: "<div class=\"evo-switcher-item\">\n <ng-content></ng-content>\n</div>\n\n", styles: [""] }]
|
|
10
|
+
}] });
|
|
11
11
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXN3aXRjaGVyLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXN3aXRjaGVyL2NvbXBvbmVudHMvZXZvLXN3aXRjaGVyLWl0ZW0vZXZvLXN3aXRjaGVyLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXN3aXRjaGVyL2NvbXBvbmVudHMvZXZvLXN3aXRjaGVyLWl0ZW0vZXZvLXN3aXRjaGVyLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFZMUMsTUFBTSxPQUFPLHdCQUF3Qjs7cUhBQXhCLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLHlEQ1pyQyw4RUFJQTsyRkRRYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0UsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZvU3dpdGNoZXJJdGVtIHtcbiAgICB0ZXh0OiBzdHJpbmc7XG4gICAgY2xpY2tGdW5jdGlvbjogRnVuY3Rpb247XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2V2by1zd2l0Y2hlci1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2V2by1zd2l0Y2hlci1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL2V2by1zd2l0Y2hlci1pdGVtLmNvbXBvbmVudC5zY3NzJyBdLFxufSlcbmV4cG9ydCBjbGFzcyBFdm9Td2l0Y2hlckl0ZW1Db21wb25lbnQge31cbiIsIjxkaXYgY2xhc3M9XCJldm8tc3dpdGNoZXItaXRlbVwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuXG4iXX0=
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
import * as i2 from "../../directives/evo-ui-class.directive";
|
|
5
|
-
export class EvoSwitcherComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.onItemSelection = new EventEmitter();
|
|
8
|
-
}
|
|
9
|
-
get selectedIndex() {
|
|
10
|
-
return this._selectedIndex;
|
|
11
|
-
}
|
|
12
|
-
set selectedIndex(index) {
|
|
13
|
-
this._selectedIndex = index > this.items.length ? this.items.length - 1 : index;
|
|
14
|
-
}
|
|
15
|
-
handleItemClick(index) {
|
|
16
|
-
this.selectedIndex = index;
|
|
17
|
-
this.onItemSelection.emit(index);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
EvoSwitcherComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSwitcherComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
21
|
-
EvoSwitcherComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: EvoSwitcherComponent, selector: "evo-switcher", inputs: { items: "items", selectedIndex: "selectedIndex" }, outputs: { onItemSelection: "onItemSelection" }, ngImport: i0, template: "<div class=\"evo-switcher\">\n <div class=\"evo-switcher__item\"\n *ngFor=\"let item of items; let i = index;\"\n [evoUiClass]=\"{selected: i === selectedIndex}\"\n (click)=\"handleItemClick(i)\">{{ item }}\n </div>\n</div>\n", styles: [".evo-switcher{position:relative;display:flex;flex-wrap:nowrap;box-sizing:border-box;height:30px;overflow:hidden;background:#FFFFFF;border:solid 1px #78909c;border-radius:30px}.evo-switcher__item{width:140px;padding:6px 0;color:#435b67;font-weight:600;font-size:14px;line-height:16px;cursor:pointer;transition:.2s}.evo-switcher__item_selected{width:140px;color:#fff;background:#435B67;border-radius:30px}@media (max-width: 768px){:host{display:block;width:100%;height:60px;overflow:hidden;box-shadow:0 1px #ededed}.evo-switcher{justify-content:left;box-sizing:content-box;height:60px;padding-bottom:20px;overflow-x:scroll;overflow-y:hidden;background:none;border:none;border-radius:0}.evo-switcher__item{position:relative;display:flex;align-items:center;width:auto;height:60px;margin-right:30px;padding:20px 0;color:#546e7a;font-weight:700;font-size:14px;font-family:var(--evo-font-secondary);white-space:nowrap;text-transform:uppercase;text-decoration:none;background:none;transition:none}.evo-switcher__item_selected{color:#f05023}.evo-switcher__item_selected:before{position:absolute;right:0;bottom:0;left:0;height:3px;background-color:#f05023;content:\"\"}}\n"], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }] });
|
|
22
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSwitcherComponent, decorators: [{
|
|
23
|
-
type: Component,
|
|
24
|
-
args: [{ selector: 'evo-switcher', template: "<div class=\"evo-switcher\">\n <div class=\"evo-switcher__item\"\n *ngFor=\"let item of items; let i = index;\"\n [evoUiClass]=\"{selected: i === selectedIndex}\"\n (click)=\"handleItemClick(i)\">{{ item }}\n </div>\n</div>\n", styles: [".evo-switcher{position:relative;display:flex;flex-wrap:nowrap;box-sizing:border-box;height:30px;overflow:hidden;background:#FFFFFF;border:solid 1px #78909c;border-radius:30px}.evo-switcher__item{width:140px;padding:6px 0;color:#435b67;font-weight:600;font-size:14px;line-height:16px;cursor:pointer;transition:.2s}.evo-switcher__item_selected{width:140px;color:#fff;background:#435B67;border-radius:30px}@media (max-width: 768px){:host{display:block;width:100%;height:60px;overflow:hidden;box-shadow:0 1px #ededed}.evo-switcher{justify-content:left;box-sizing:content-box;height:60px;padding-bottom:20px;overflow-x:scroll;overflow-y:hidden;background:none;border:none;border-radius:0}.evo-switcher__item{position:relative;display:flex;align-items:center;width:auto;height:60px;margin-right:30px;padding:20px 0;color:#546e7a;font-weight:700;font-size:14px;font-family:var(--evo-font-secondary);white-space:nowrap;text-transform:uppercase;text-decoration:none;background:none;transition:none}.evo-switcher__item_selected{color:#f05023}.evo-switcher__item_selected:before{position:absolute;right:0;bottom:0;left:0;height:3px;background-color:#f05023;content:\"\"}}\n"] }]
|
|
25
|
-
}], ctorParameters: function () { return []; }, propDecorators: { items: [{
|
|
26
|
-
type: Input
|
|
27
|
-
}], onItemSelection: [{
|
|
28
|
-
type: Output
|
|
29
|
-
}], selectedIndex: [{
|
|
30
|
-
type: Input
|
|
31
|
-
}] } });
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "../../directives/evo-ui-class.directive";
|
|
5
|
+
export class EvoSwitcherComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.onItemSelection = new EventEmitter();
|
|
8
|
+
}
|
|
9
|
+
get selectedIndex() {
|
|
10
|
+
return this._selectedIndex;
|
|
11
|
+
}
|
|
12
|
+
set selectedIndex(index) {
|
|
13
|
+
this._selectedIndex = index > this.items.length ? this.items.length - 1 : index;
|
|
14
|
+
}
|
|
15
|
+
handleItemClick(index) {
|
|
16
|
+
this.selectedIndex = index;
|
|
17
|
+
this.onItemSelection.emit(index);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
EvoSwitcherComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSwitcherComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
21
|
+
EvoSwitcherComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: EvoSwitcherComponent, selector: "evo-switcher", inputs: { items: "items", selectedIndex: "selectedIndex" }, outputs: { onItemSelection: "onItemSelection" }, ngImport: i0, template: "<div class=\"evo-switcher\">\n <div class=\"evo-switcher__item\"\n *ngFor=\"let item of items; let i = index;\"\n [evoUiClass]=\"{selected: i === selectedIndex}\"\n (click)=\"handleItemClick(i)\">{{ item }}\n </div>\n</div>\n", styles: [".evo-switcher{position:relative;display:flex;flex-wrap:nowrap;box-sizing:border-box;height:30px;overflow:hidden;background:#FFFFFF;border:solid 1px #78909c;border-radius:30px}.evo-switcher__item{width:140px;padding:6px 0;color:#435b67;font-weight:600;font-size:14px;line-height:16px;cursor:pointer;transition:.2s}.evo-switcher__item_selected{width:140px;color:#fff;background:#435B67;border-radius:30px}@media (max-width: 768px){:host{display:block;width:100%;height:60px;overflow:hidden;box-shadow:0 1px #ededed}.evo-switcher{justify-content:left;box-sizing:content-box;height:60px;padding-bottom:20px;overflow-x:scroll;overflow-y:hidden;background:none;border:none;border-radius:0}.evo-switcher__item{position:relative;display:flex;align-items:center;width:auto;height:60px;margin-right:30px;padding:20px 0;color:#546e7a;font-weight:700;font-size:14px;font-family:var(--evo-font-secondary);white-space:nowrap;text-transform:uppercase;text-decoration:none;background:none;transition:none}.evo-switcher__item_selected{color:#f05023}.evo-switcher__item_selected:before{position:absolute;right:0;bottom:0;left:0;height:3px;background-color:#f05023;content:\"\"}}\n"], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.EvoUiClassDirective, selector: "[evoUiClass]", inputs: ["class", "evoUiClass"] }] });
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: EvoSwitcherComponent, decorators: [{
|
|
23
|
+
type: Component,
|
|
24
|
+
args: [{ selector: 'evo-switcher', template: "<div class=\"evo-switcher\">\n <div class=\"evo-switcher__item\"\n *ngFor=\"let item of items; let i = index;\"\n [evoUiClass]=\"{selected: i === selectedIndex}\"\n (click)=\"handleItemClick(i)\">{{ item }}\n </div>\n</div>\n", styles: [".evo-switcher{position:relative;display:flex;flex-wrap:nowrap;box-sizing:border-box;height:30px;overflow:hidden;background:#FFFFFF;border:solid 1px #78909c;border-radius:30px}.evo-switcher__item{width:140px;padding:6px 0;color:#435b67;font-weight:600;font-size:14px;line-height:16px;cursor:pointer;transition:.2s}.evo-switcher__item_selected{width:140px;color:#fff;background:#435B67;border-radius:30px}@media (max-width: 768px){:host{display:block;width:100%;height:60px;overflow:hidden;box-shadow:0 1px #ededed}.evo-switcher{justify-content:left;box-sizing:content-box;height:60px;padding-bottom:20px;overflow-x:scroll;overflow-y:hidden;background:none;border:none;border-radius:0}.evo-switcher__item{position:relative;display:flex;align-items:center;width:auto;height:60px;margin-right:30px;padding:20px 0;color:#546e7a;font-weight:700;font-size:14px;font-family:var(--evo-font-secondary);white-space:nowrap;text-transform:uppercase;text-decoration:none;background:none;transition:none}.evo-switcher__item_selected{color:#f05023}.evo-switcher__item_selected:before{position:absolute;right:0;bottom:0;left:0;height:3px;background-color:#f05023;content:\"\"}}\n"] }]
|
|
25
|
+
}], ctorParameters: function () { return []; }, propDecorators: { items: [{
|
|
26
|
+
type: Input
|
|
27
|
+
}], onItemSelection: [{
|
|
28
|
+
type: Output
|
|
29
|
+
}], selectedIndex: [{
|
|
30
|
+
type: Input
|
|
31
|
+
}] } });
|
|
32
32
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZvLXN3aXRjaGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2V2by11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2V2by1zd2l0Y2hlci9ldm8tc3dpdGNoZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXZvLXVpLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvZXZvLXN3aXRjaGVyL2V2by1zd2l0Y2hlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBUXZFLE1BQU0sT0FBTyxvQkFBb0I7SUFNN0I7UUFKVSxvQkFBZSxHQUF5QixJQUFJLFlBQVksRUFBRSxDQUFDO0lBTXJFLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDYixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQWEsYUFBYSxDQUFDLEtBQWE7UUFDcEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ3BGLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBYTtRQUN6QixJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQztRQUMzQixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDOztpSEFyQlEsb0JBQW9CO3FHQUFwQixvQkFBb0IsaUtDUmpDLGlRQU9BOzJGRENhLG9CQUFvQjtrQkFMaEMsU0FBUzsrQkFDSSxjQUFjOzBFQUtmLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxlQUFlO3NCQUF4QixNQUFNO2dCQVlNLGFBQWE7c0JBQXpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXZvU3dpdGNoZXJJdGVtIH0gZnJvbSAnLi9jb21wb25lbnRzL2V2by1zd2l0Y2hlci1pdGVtL2V2by1zd2l0Y2hlci1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXZvLXN3aXRjaGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXZvLXN3aXRjaGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9ldm8tc3dpdGNoZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRXZvU3dpdGNoZXJDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIGl0ZW1zOiBFdm9Td2l0Y2hlckl0ZW1bXTtcbiAgICBAT3V0cHV0KCkgb25JdGVtU2VsZWN0aW9uOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIHByaXZhdGUgX3NlbGVjdGVkSW5kZXg6IG51bWJlcjtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuXG4gICAgfVxuXG4gICAgZ2V0IHNlbGVjdGVkSW5kZXgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkSW5kZXg7XG4gICAgfVxuXG4gICAgQElucHV0KCkgc2V0IHNlbGVjdGVkSW5kZXgoaW5kZXg6IG51bWJlcikge1xuICAgICAgICB0aGlzLl9zZWxlY3RlZEluZGV4ID0gaW5kZXggPiB0aGlzLml0ZW1zLmxlbmd0aCA/IHRoaXMuaXRlbXMubGVuZ3RoIC0gMSA6IGluZGV4O1xuICAgIH1cblxuICAgIGhhbmRsZUl0ZW1DbGljayhpbmRleDogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJbmRleCA9IGluZGV4O1xuICAgICAgICB0aGlzLm9uSXRlbVNlbGVjdGlvbi5lbWl0KGluZGV4KTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZXZvLXN3aXRjaGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImV2by1zd2l0Y2hlcl9faXRlbVwiXG4gICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtczsgbGV0IGkgPSBpbmRleDtcIlxuICAgICAgICAgW2V2b1VpQ2xhc3NdPVwie3NlbGVjdGVkOiBpID09PSBzZWxlY3RlZEluZGV4fVwiXG4gICAgICAgICAoY2xpY2spPVwiaGFuZGxlSXRlbUNsaWNrKGkpXCI+e3sgaXRlbSB9fVxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|