@design-factory/design-factory 15.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/LICENSE +26 -0
- package/README.md +47 -0
- package/assets/.gitkeep +0 -0
- package/assets/fonts/amadeus-bold/amadeus-bold.svg +5131 -0
- package/assets/fonts/amadeus-bold/amadeus-bold.ttf +0 -0
- package/assets/fonts/amadeus-bold/amadeus-bold.woff +0 -0
- package/assets/fonts/amadeus-bold/amadeus-bold.woff2 +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-bold.woff +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-bold.woff2 +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-bolditalic.woff +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-bolditalic.woff2 +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-italic.woff +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-italic.woff2 +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-light.woff +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-light.woff2 +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-lightitalic.woff +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-lightitalic.woff2 +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-regular.woff +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-regular.woff2 +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-thin.woff +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-thin.woff2 +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-thinitalic.woff +0 -0
- package/assets/fonts/amadeus-full/amadeus-full-thinitalic.woff2 +0 -0
- package/assets/fonts/amadeus-light/amadeus-light.svg +8658 -0
- package/assets/fonts/amadeus-light/amadeus-light.ttf +0 -0
- package/assets/fonts/amadeus-light/amadeus-light.woff +0 -0
- package/assets/fonts/amadeus-light/amadeus-light.woff2 +0 -0
- package/assets/fonts/amadeus-regular/amadeus-regular.svg +5131 -0
- package/assets/fonts/amadeus-regular/amadeus-regular.ttf +0 -0
- package/assets/fonts/amadeus-regular/amadeus-regular.woff +0 -0
- package/assets/fonts/amadeus-regular/amadeus-regular.woff2 +0 -0
- package/assets/fonts/amadeus-thin/amadeus-thin.svg +5131 -0
- package/assets/fonts/amadeus-thin/amadeus-thin.ttf +0 -0
- package/assets/fonts/amadeus-thin/amadeus-thin.woff +0 -0
- package/assets/fonts/amadeus-thin/amadeus-thin.woff2 +0 -0
- package/assets/fonts/icon-font/light/df-light-300.svg +1709 -0
- package/assets/fonts/icon-font/light/df-light-300.ttf +0 -0
- package/assets/fonts/icon-font/light/df-light-300.woff +0 -0
- package/assets/fonts/icon-font/light/df-light-300.woff2 +0 -0
- package/assets/fonts/icon-font/solid/df-solid-900.svg +1709 -0
- package/assets/fonts/icon-font/solid/df-solid-900.ttf +0 -0
- package/assets/fonts/icon-font/solid/df-solid-900.woff +0 -0
- package/assets/fonts/icon-font/solid/df-solid-900.woff2 +0 -0
- package/assets/fonts/noto/notosans-bold.woff +0 -0
- package/assets/fonts/noto/notosans-bold.woff2 +0 -0
- package/assets/fonts/noto/notosans-bolditalic.woff +0 -0
- package/assets/fonts/noto/notosans-bolditalic.woff2 +0 -0
- package/assets/fonts/noto/notosans-italic.woff +0 -0
- package/assets/fonts/noto/notosans-italic.woff2 +0 -0
- package/assets/fonts/noto/notosans-light.woff +0 -0
- package/assets/fonts/noto/notosans-light.woff2 +0 -0
- package/assets/fonts/noto/notosans-lightitalic.woff +0 -0
- package/assets/fonts/noto/notosans-lightitalic.woff2 +0 -0
- package/assets/fonts/noto/notosans-regular.woff +0 -0
- package/assets/fonts/noto/notosans-regular.woff2 +0 -0
- package/assets/fonts/noto/notosans-thin.woff +0 -0
- package/assets/fonts/noto/notosans-thin.woff2 +0 -0
- package/assets/fonts/noto/notosans-thinitalic.woff +0 -0
- package/assets/fonts/noto/notosans-thinitalic.woff2 +0 -0
- package/assets/fonts/noto/notosansarabic-bold.woff +0 -0
- package/assets/fonts/noto/notosansarabic-bold.woff2 +0 -0
- package/assets/fonts/noto/notosansarabic-light.woff +0 -0
- package/assets/fonts/noto/notosansarabic-light.woff2 +0 -0
- package/assets/fonts/noto/notosansarabic-regular.woff +0 -0
- package/assets/fonts/noto/notosansarabic-regular.woff2 +0 -0
- package/assets/fonts/noto/notosansarabic-thin.woff +0 -0
- package/assets/fonts/noto/notosansarabic-thin.woff2 +0 -0
- package/assets/fonts/noto/notosansgeorgian-bold.woff +0 -0
- package/assets/fonts/noto/notosansgeorgian-bold.woff2 +0 -0
- package/assets/fonts/noto/notosansgeorgian-light.woff +0 -0
- package/assets/fonts/noto/notosansgeorgian-light.woff2 +0 -0
- package/assets/fonts/noto/notosansgeorgian-regular.woff +0 -0
- package/assets/fonts/noto/notosansgeorgian-regular.woff2 +0 -0
- package/assets/fonts/noto/notosansgeorgian-thin.woff +0 -0
- package/assets/fonts/noto/notosansgeorgian-thin.woff2 +0 -0
- package/assets/fonts/noto/notosanshebrew-bold.woff +0 -0
- package/assets/fonts/noto/notosanshebrew-bold.woff2 +0 -0
- package/assets/fonts/noto/notosanshebrew-light.woff +0 -0
- package/assets/fonts/noto/notosanshebrew-light.woff2 +0 -0
- package/assets/fonts/noto/notosanshebrew-regular.woff +0 -0
- package/assets/fonts/noto/notosanshebrew-regular.woff2 +0 -0
- package/assets/fonts/noto/notosanshebrew-thin.woff +0 -0
- package/assets/fonts/noto/notosanshebrew-thin.woff2 +0 -0
- package/assets/fonts/source-sans-pro-bold/source-sans-pro-bold.svg +19926 -0
- package/assets/fonts/source-sans-pro-bold/source-sans-pro-bold.ttf +0 -0
- package/assets/fonts/source-sans-pro-bold/source-sans-pro-bold.woff +0 -0
- package/assets/fonts/source-sans-pro-bold/source-sans-pro-bold.woff2 +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bold.woff +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bold.woff2 +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bolditalic.woff +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bolditalic.woff2 +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-italic.woff +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-italic.woff2 +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-light.woff +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-light.woff2 +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-lightitalic.woff +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-lightitalic.woff2 +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-regular.woff +0 -0
- package/assets/fonts/source-sans-pro-full/sourcesanspro-full-regular.woff2 +0 -0
- package/assets/fonts/source-sans-pro-light/source-sans-pro-light.svg +19165 -0
- package/assets/fonts/source-sans-pro-light/source-sans-pro-light.ttf +0 -0
- package/assets/fonts/source-sans-pro-light/source-sans-pro-light.woff +0 -0
- package/assets/fonts/source-sans-pro-light/source-sans-pro-light.woff2 +0 -0
- package/assets/fonts/source-sans-pro-regular/source-sans-pro-regular.svg +20412 -0
- package/assets/fonts/source-sans-pro-regular/source-sans-pro-regular.ttf +0 -0
- package/assets/fonts/source-sans-pro-regular/source-sans-pro-regular.woff +0 -0
- package/assets/fonts/source-sans-pro-regular/source-sans-pro-regular.woff2 +0 -0
- package/assets/fonts/source-sans-pro-semibold/source-sans-pro-semibold.svg +20019 -0
- package/assets/fonts/source-sans-pro-semibold/source-sans-pro-semibold.ttf +0 -0
- package/assets/fonts/source-sans-pro-semibold/source-sans-pro-semibold.woff +0 -0
- package/assets/fonts/source-sans-pro-semibold/source-sans-pro-semibold.woff2 +0 -0
- package/assets/icon-amadeus.svg +1 -0
- package/assets/readme.png +0 -0
- package/design-factory-utilities.scss +5 -0
- package/design-factory.css +3 -0
- package/design-factory.scss +1 -0
- package/environment.d.ts +4 -0
- package/esm2022/design-factory.mjs +5 -0
- package/esm2022/environment.mjs +5 -0
- package/esm2022/index.mjs +5 -0
- package/esm2022/lib/angular/accessibility/accessibility.module.mjs +19 -0
- package/esm2022/lib/angular/accessibility/components/skip-links-container/skip-links-container.component.mjs +32 -0
- package/esm2022/lib/angular/accessibility/directives/skip-link.directive.mjs +64 -0
- package/esm2022/lib/angular/alert/alert.module.mjs +17 -0
- package/esm2022/lib/angular/animation/ngbTransition.mjs +76 -0
- package/esm2022/lib/angular/animation/util.mjs +30 -0
- package/esm2022/lib/angular/card/card-advanced.module.mjs +17 -0
- package/esm2022/lib/angular/card/manage-card-selection.directive.mjs +47 -0
- package/esm2022/lib/angular/datepicker/closedatepicker.directive.mjs +38 -0
- package/esm2022/lib/angular/datepicker/datepicker-keyboard-nav.service.mjs +39 -0
- package/esm2022/lib/angular/datepicker/datepicker-range.directive.mjs +101 -0
- package/esm2022/lib/angular/datepicker/datepicker-range.service.mjs +97 -0
- package/esm2022/lib/angular/datepicker/datepicker.module.mjs +42 -0
- package/esm2022/lib/angular/footer/footer.module.mjs +17 -0
- package/esm2022/lib/angular/icon/amadeus-icon.mjs +79 -0
- package/esm2022/lib/angular/icon/icon.module.mjs +17 -0
- package/esm2022/lib/angular/icon/insert/insert-icon.directive.mjs +47 -0
- package/esm2022/lib/angular/icon/insert/insert-icon.module.mjs +17 -0
- package/esm2022/lib/angular/inputs/click/trigger-click.directive.mjs +28 -0
- package/esm2022/lib/angular/inputs/icon/inputicon.directive.mjs +95 -0
- package/esm2022/lib/angular/inputs/input-advanced.module.mjs +19 -0
- package/esm2022/lib/angular/mediaqueries/ifMedia.directive.mjs +52 -0
- package/esm2022/lib/angular/mediaqueries/media.module.mjs +17 -0
- package/esm2022/lib/angular/mediaqueries/media.service.mjs +46 -0
- package/esm2022/lib/angular/mediaqueries/mediaUtils.service.mjs +185 -0
- package/esm2022/lib/angular/modal/modal.service.mjs +36 -0
- package/esm2022/lib/angular/popover/config/popover.config.mjs +16 -0
- package/esm2022/lib/angular/popover/popover.module.mjs +17 -0
- package/esm2022/lib/angular/progressbar/progressbar.component.mjs +158 -0
- package/esm2022/lib/angular/progressbar/progressbar.module.mjs +18 -0
- package/esm2022/lib/angular/progressindicator/default/default-spinner.component.mjs +23 -0
- package/esm2022/lib/angular/progressindicator/progressindicator-backdrop.component.mjs +29 -0
- package/esm2022/lib/angular/progressindicator/progressindicator-config.mjs +25 -0
- package/esm2022/lib/angular/progressindicator/progressindicator-container.component.mjs +52 -0
- package/esm2022/lib/angular/progressindicator/progressindicator-ref.mjs +8 -0
- package/esm2022/lib/angular/progressindicator/progressindicator.directive.mjs +39 -0
- package/esm2022/lib/angular/progressindicator/progressindicator.module.mjs +45 -0
- package/esm2022/lib/angular/progressindicator/progressindicator.service.mjs +170 -0
- package/esm2022/lib/angular/right-to-left/directionDetection.service.mjs +32 -0
- package/esm2022/lib/angular/selects/events/manage-badge-events.directive.mjs +65 -0
- package/esm2022/lib/angular/selects/nav/manage-nav-select.directive.mjs +108 -0
- package/esm2022/lib/angular/selects/option-highlight.directive.mjs +59 -0
- package/esm2022/lib/angular/selects/select.model.mjs +2 -0
- package/esm2022/lib/angular/selects/select.module.mjs +22 -0
- package/esm2022/lib/angular/sidenav/dfSideNavAnimation.mjs +73 -0
- package/esm2022/lib/angular/sidenav/dfSideNavCollapse.mjs +94 -0
- package/esm2022/lib/angular/sidenav/dfSideNavCollapse.module.mjs +18 -0
- package/esm2022/lib/angular/sidenav/dfSideNavCollapse.service.mjs +37 -0
- package/esm2022/lib/angular/sidenav/dfSideNavCollapseConfig.mjs +27 -0
- package/esm2022/lib/angular/sidenav/excludeTrap.directive.mjs +55 -0
- package/esm2022/lib/angular/sidenav/manage-sidenav.directive.mjs +26 -0
- package/esm2022/lib/angular/sidenav/sidenav-config.mjs +25 -0
- package/esm2022/lib/angular/sidenav/sidenav.component.mjs +86 -0
- package/esm2022/lib/angular/sidenav/sidenav.module.mjs +52 -0
- package/esm2022/lib/angular/sidenav/sidenav.service.mjs +315 -0
- package/esm2022/lib/angular/sidenav/sidenavlist.component.mjs +50 -0
- package/esm2022/lib/angular/slider/direction/sliderdirection.directive.mjs +33 -0
- package/esm2022/lib/angular/slider/lib/change-context.mjs +3 -0
- package/esm2022/lib/angular/slider/lib/compatibility-helper.mjs +15 -0
- package/esm2022/lib/angular/slider/lib/event-listener-helper.mjs +77 -0
- package/esm2022/lib/angular/slider/lib/event-listener.mjs +3 -0
- package/esm2022/lib/angular/slider/lib/math-helper.mjs +15 -0
- package/esm2022/lib/angular/slider/lib/options.mjs +123 -0
- package/esm2022/lib/angular/slider/lib/pointer-type.mjs +9 -0
- package/esm2022/lib/angular/slider/lib/slider-element.directive.mjs +187 -0
- package/esm2022/lib/angular/slider/lib/slider-handle.directive.mjs +62 -0
- package/esm2022/lib/angular/slider/lib/slider-label.directive.mjs +38 -0
- package/esm2022/lib/angular/slider/lib/slider.component.mjs +2020 -0
- package/esm2022/lib/angular/slider/lib/tooltip-wrapper.component.mjs +20 -0
- package/esm2022/lib/angular/slider/lib/value-helper.mjs +50 -0
- package/esm2022/lib/angular/slider/slider.module.mjs +29 -0
- package/esm2022/lib/angular/toast/toast.module.mjs +17 -0
- package/esm2022/lib/angular/tooltip/tooltip.module.mjs +18 -0
- package/esm2022/lib/angular/tooltip/truncate/tooltipTruncate.directive.mjs +33 -0
- package/esm2022/lib/angular/utils/scrollbar.service.mjs +79 -0
- package/esm2022/lib/index.mjs +172 -0
- package/fesm2022/design-factory.mjs +5664 -0
- package/fesm2022/design-factory.mjs.map +1 -0
- package/index.d.ts +4 -0
- package/lib/angular/accessibility/accessibility.module.d.ts +10 -0
- package/lib/angular/accessibility/components/skip-links-container/skip-links-container.component.d.ts +13 -0
- package/lib/angular/accessibility/directives/skip-link.directive.d.ts +15 -0
- package/lib/angular/alert/alert.module.d.ts +8 -0
- package/lib/angular/animation/ngbTransition.d.ts +16 -0
- package/lib/angular/animation/util.d.ts +14 -0
- package/lib/angular/card/card-advanced.module.d.ts +8 -0
- package/lib/angular/card/manage-card-selection.directive.d.ts +13 -0
- package/lib/angular/datepicker/closedatepicker.directive.d.ts +10 -0
- package/lib/angular/datepicker/datepicker-keyboard-nav.service.d.ts +7 -0
- package/lib/angular/datepicker/datepicker-range.directive.d.ts +31 -0
- package/lib/angular/datepicker/datepicker-range.service.d.ts +32 -0
- package/lib/angular/datepicker/datepicker.module.d.ts +12 -0
- package/lib/angular/footer/footer.module.d.ts +8 -0
- package/lib/angular/icon/amadeus-icon.d.ts +5 -0
- package/lib/angular/icon/icon.module.d.ts +8 -0
- package/lib/angular/icon/insert/insert-icon.directive.d.ts +12 -0
- package/lib/angular/icon/insert/insert-icon.module.d.ts +8 -0
- package/lib/angular/inputs/click/trigger-click.directive.d.ts +9 -0
- package/lib/angular/inputs/icon/inputicon.directive.d.ts +28 -0
- package/lib/angular/inputs/input-advanced.module.d.ts +10 -0
- package/lib/angular/mediaqueries/ifMedia.directive.d.ts +26 -0
- package/lib/angular/mediaqueries/media.module.d.ts +8 -0
- package/lib/angular/mediaqueries/media.service.d.ts +24 -0
- package/lib/angular/mediaqueries/mediaUtils.service.d.ts +75 -0
- package/lib/angular/modal/modal.service.d.ts +13 -0
- package/lib/angular/popover/config/popover.config.d.ts +8 -0
- package/lib/angular/popover/popover.module.d.ts +7 -0
- package/lib/angular/progressbar/progressbar.component.d.ts +71 -0
- package/lib/angular/progressbar/progressbar.module.d.ts +9 -0
- package/lib/angular/progressindicator/default/default-spinner.component.d.ts +8 -0
- package/lib/angular/progressindicator/progressindicator-backdrop.component.d.ts +8 -0
- package/lib/angular/progressindicator/progressindicator-config.d.ts +54 -0
- package/lib/angular/progressindicator/progressindicator-container.component.d.ts +13 -0
- package/lib/angular/progressindicator/progressindicator-ref.d.ts +9 -0
- package/lib/angular/progressindicator/progressindicator.directive.d.ts +18 -0
- package/lib/angular/progressindicator/progressindicator.module.d.ts +15 -0
- package/lib/angular/progressindicator/progressindicator.service.d.ts +33 -0
- package/lib/angular/right-to-left/directionDetection.service.d.ts +12 -0
- package/lib/angular/selects/events/manage-badge-events.directive.d.ts +16 -0
- package/lib/angular/selects/nav/manage-nav-select.directive.d.ts +20 -0
- package/lib/angular/selects/option-highlight.directive.d.ts +19 -0
- package/lib/angular/selects/select.model.d.ts +1 -0
- package/lib/angular/selects/select.module.d.ts +13 -0
- package/lib/angular/sidenav/dfSideNavAnimation.d.ts +7 -0
- package/lib/angular/sidenav/dfSideNavCollapse.d.ts +48 -0
- package/lib/angular/sidenav/dfSideNavCollapse.module.d.ts +9 -0
- package/lib/angular/sidenav/dfSideNavCollapse.service.d.ts +24 -0
- package/lib/angular/sidenav/dfSideNavCollapseConfig.d.ts +17 -0
- package/lib/angular/sidenav/excludeTrap.directive.d.ts +30 -0
- package/lib/angular/sidenav/manage-sidenav.directive.d.ts +10 -0
- package/lib/angular/sidenav/sidenav-config.d.ts +17 -0
- package/lib/angular/sidenav/sidenav.component.d.ts +43 -0
- package/lib/angular/sidenav/sidenav.module.d.ts +14 -0
- package/lib/angular/sidenav/sidenav.service.d.ts +178 -0
- package/lib/angular/sidenav/sidenavlist.component.d.ts +25 -0
- package/lib/angular/slider/direction/sliderdirection.directive.d.ts +12 -0
- package/lib/angular/slider/lib/change-context.d.ts +6 -0
- package/lib/angular/slider/lib/compatibility-helper.d.ts +7 -0
- package/lib/angular/slider/lib/event-listener-helper.d.ts +13 -0
- package/lib/angular/slider/lib/event-listener.d.ts +7 -0
- package/lib/angular/slider/lib/math-helper.d.ts +6 -0
- package/lib/angular/slider/lib/options.d.ts +241 -0
- package/lib/angular/slider/lib/pointer-type.d.ts +7 -0
- package/lib/angular/slider/lib/slider-element.directive.d.ts +47 -0
- package/lib/angular/slider/lib/slider-handle.directive.d.ts +19 -0
- package/lib/angular/slider/lib/slider-label.directive.d.ts +11 -0
- package/lib/angular/slider/lib/slider.component.d.ts +190 -0
- package/lib/angular/slider/lib/tooltip-wrapper.component.d.ts +10 -0
- package/lib/angular/slider/lib/value-helper.d.ts +13 -0
- package/lib/angular/slider/slider.module.d.ts +12 -0
- package/lib/angular/toast/toast.module.d.ts +8 -0
- package/lib/angular/tooltip/tooltip.module.d.ts +9 -0
- package/lib/angular/tooltip/truncate/tooltipTruncate.directive.d.ts +17 -0
- package/lib/angular/utils/scrollbar.service.d.ts +46 -0
- package/lib/index.d.ts +82 -0
- package/package.json +44 -0
- package/schematics/collection.json +10 -0
- package/schematics/migrations/15_0_0/remove-ngx-slider/index.d.ts +2 -0
- package/schematics/migrations/15_0_0/remove-ngx-slider/index.js +113 -0
- package/schematics/migrations/15_0_0/remove-ngx-slider/index.js.map +1 -0
- package/schematics/migrations/helpers.d.ts +13 -0
- package/schematics/migrations/helpers.js +33 -0
- package/schematics/migrations/helpers.js.map +1 -0
- package/schematics/migrations/migration.json +10 -0
- package/schematics/migrations/utils/project_tsconfig_paths.d.ts +16 -0
- package/schematics/migrations/utils/project_tsconfig_paths.js +91 -0
- package/schematics/migrations/utils/project_tsconfig_paths.js.map +1 -0
- package/schematics/migrations/utils/typescript/compiler_host.d.ts +44 -0
- package/schematics/migrations/utils/typescript/compiler_host.js +86 -0
- package/schematics/migrations/utils/typescript/compiler_host.js.map +1 -0
- package/schematics/migrations/utils/typescript/parse_tsconfig.d.ts +9 -0
- package/schematics/migrations/utils/typescript/parse_tsconfig.js +30 -0
- package/schematics/migrations/utils/typescript/parse_tsconfig.js.map +1 -0
- package/schematics/ng-add/index.d.ts +3 -0
- package/schematics/ng-add/index.js +84 -0
- package/schematics/ng-add/index.js.map +1 -0
- package/schematics/ng-add/schema.d.ts +6 -0
- package/schematics/ng-add/schema.js +3 -0
- package/schematics/ng-add/schema.js.map +1 -0
- package/schematics/ng-add/schema.json +15 -0
- package/styles/scss/_common.mixins.scss +19 -0
- package/styles/scss/_common.scss +57 -0
- package/styles/scss/_common.variables.scss +62 -0
- package/styles/scss/_variables.scss +56 -0
- package/styles/scss/bootstrap/_maps.scss +50 -0
- package/styles/scss/bootstrap/_mixins-override.scss +69 -0
- package/styles/scss/bootstrap/_rtl-styles-override.scss +125 -0
- package/styles/scss/bootstrap/_utilities-override.scss +19 -0
- package/styles/scss/bootstrap/_variables.scss +1684 -0
- package/styles/scss/components/.gitkeep +0 -0
- package/styles/scss/components/accordion/_accordion.scss +87 -0
- package/styles/scss/components/accordion/_accordion.variables.scss +8 -0
- package/styles/scss/components/alert/_alert.scss +301 -0
- package/styles/scss/components/alert/_alert.variables.scss +70 -0
- package/styles/scss/components/badge/_badge.scss +160 -0
- package/styles/scss/components/badge/_badge.variables.scss +10 -0
- package/styles/scss/components/brand-color/_brand-color.mixins.scss +11 -0
- package/styles/scss/components/brand-color/_brand-color.scss +18 -0
- package/styles/scss/components/brand-color/_brand-color.variables.scss +158 -0
- package/styles/scss/components/breadcrumbs/_breadcrumbs.scss +91 -0
- package/styles/scss/components/breadcrumbs/_breadcrumbs.variables.scss +13 -0
- package/styles/scss/components/button/_button.scss +249 -0
- package/styles/scss/components/button/_button.utils.scss +16 -0
- package/styles/scss/components/button/_button.variables.scss +27 -0
- package/styles/scss/components/button/_button_container.scss +66 -0
- package/styles/scss/components/card/_card.scss +73 -0
- package/styles/scss/components/card/_card.variables.scss +22 -0
- package/styles/scss/components/carousel/_carousel.scss +52 -0
- package/styles/scss/components/carousel/_carousel.variables.scss +11 -0
- package/styles/scss/components/checkbox/_checkbox.scss +37 -0
- package/styles/scss/components/checkbox/_checkbox.variables.scss +6 -0
- package/styles/scss/components/collapse/_collapse.scss +35 -0
- package/styles/scss/components/collapse/_collapse.variables.scss +7 -0
- package/styles/scss/components/datepicker/_datepicker.scss +251 -0
- package/styles/scss/components/datepicker/_datepicker.variables.scss +52 -0
- package/styles/scss/components/dropdown/_dropdown.mixins.scss +26 -0
- package/styles/scss/components/dropdown/_dropdown.scss +81 -0
- package/styles/scss/components/dropdown/_dropdown.variables.scss +18 -0
- package/styles/scss/components/fieldset/_fieldset.scss +6 -0
- package/styles/scss/components/fieldset/_fieldset.variables.scss +2 -0
- package/styles/scss/components/fonts/_font-faces.mixins.scss +525 -0
- package/styles/scss/components/fonts/_fonts-family.scss +98 -0
- package/styles/scss/components/fonts/_fonts.scss +83 -0
- package/styles/scss/components/fonts/_fonts.variables.scss +31 -0
- package/styles/scss/components/fonts/_icon-font.scss +5107 -0
- package/styles/scss/components/fonts/_icon-font.variables.scss +14 -0
- package/styles/scss/components/fonts/_multi-lang.mixins.scss +8 -0
- package/styles/scss/components/fonts/multi-lang/_arabic.mixins.scss +8 -0
- package/styles/scss/components/fonts/multi-lang/_chinese.mixins.scss +12 -0
- package/styles/scss/components/fonts/multi-lang/_cyrillic-extended.mixins.scss +11 -0
- package/styles/scss/components/fonts/multi-lang/_cyrillic.mixins.scss +10 -0
- package/styles/scss/components/fonts/multi-lang/_georgian.mixins.scss +9 -0
- package/styles/scss/components/fonts/multi-lang/_hebrew.mixins.scss +9 -0
- package/styles/scss/components/fonts/multi-lang/_japanese.mixins.scss +23 -0
- package/styles/scss/components/fonts/multi-lang/_korean.mixins.scss +10 -0
- package/styles/scss/components/footer/_footer.scss +23 -0
- package/styles/scss/components/footer/_footer.variables.scss +13 -0
- package/styles/scss/components/form/_form.scss +104 -0
- package/styles/scss/components/form/_form.variables.scss +23 -0
- package/styles/scss/components/icon/_amadeus-icon.scss +39 -0
- package/styles/scss/components/icon/_amadeus-icon.variables.scss +3 -0
- package/styles/scss/components/inputs/_inputs.mixin.scss +51 -0
- package/styles/scss/components/inputs/_inputs.scss +290 -0
- package/styles/scss/components/inputs/_inputs.variables.scss +41 -0
- package/styles/scss/components/link/_link.mixins.scss +190 -0
- package/styles/scss/components/link/_link.scss +88 -0
- package/styles/scss/components/link/_link.variables.scss +55 -0
- package/styles/scss/components/list/_list.scss +15 -0
- package/styles/scss/components/list/_list.variables.scss +4 -0
- package/styles/scss/components/list-group/_list-group.scss +61 -0
- package/styles/scss/components/list-group/_list-group.variables.scss +14 -0
- package/styles/scss/components/media/_media.scss +42 -0
- package/styles/scss/components/media/_media.variables.scss +7 -0
- package/styles/scss/components/modal/_modal.scss +147 -0
- package/styles/scss/components/modal/_modal.variables.scss +23 -0
- package/styles/scss/components/navbar/_navbar.scss +253 -0
- package/styles/scss/components/navbar/_navbar.variables.scss +62 -0
- package/styles/scss/components/pagination/_pagination.scss +195 -0
- package/styles/scss/components/pagination/_pagination.variables.scss +27 -0
- package/styles/scss/components/pagination/_pagination_container.scss +14 -0
- package/styles/scss/components/popover/_popover.mixin.scss +57 -0
- package/styles/scss/components/popover/_popover.scss +25 -0
- package/styles/scss/components/popover/_popover.variables.scss +18 -0
- package/styles/scss/components/popover/_popover_container.scss +156 -0
- package/styles/scss/components/progressbar/_progressbar.scss +74 -0
- package/styles/scss/components/progressbar/_progressbar.variables.scss +13 -0
- package/styles/scss/components/radio/_radio.scss +25 -0
- package/styles/scss/components/radio/_radio.variables.scss +3 -0
- package/styles/scss/components/rating/_rating.scss +81 -0
- package/styles/scss/components/rating/_rating.variables.scss +20 -0
- package/styles/scss/components/scrollspy/_scrollspy.scss +34 -0
- package/styles/scss/components/scrollspy/_scrollspy.variables.scss +11 -0
- package/styles/scss/components/select/_select.scss +734 -0
- package/styles/scss/components/select/_select.variables.scss +85 -0
- package/styles/scss/components/separator/_separator.scss +8 -0
- package/styles/scss/components/separator/_separator.variables.scss +1 -0
- package/styles/scss/components/sidenav/_sidenav.scss +259 -0
- package/styles/scss/components/sidenav/_sidenav.variables.scss +87 -0
- package/styles/scss/components/skip-links/_skip-links.scss +24 -0
- package/styles/scss/components/skip-links/_skip-links.variables.scss +7 -0
- package/styles/scss/components/slider/_slider.scss +407 -0
- package/styles/scss/components/slider/_slider.variables.scss +58 -0
- package/styles/scss/components/speechbubble/_speechbubble.scss +127 -0
- package/styles/scss/components/speechbubble/_speechbubble.variables.scss +19 -0
- package/styles/scss/components/spinner/_spinner.scss +88 -0
- package/styles/scss/components/spinner/_spinner.variables.scss +21 -0
- package/styles/scss/components/spinner/_spinner_container.scss +43 -0
- package/styles/scss/components/stepper/_stepper.mixins.scss +193 -0
- package/styles/scss/components/stepper/_stepper.scss +130 -0
- package/styles/scss/components/stepper/_stepper.variables.scss +63 -0
- package/styles/scss/components/table/_advancedtables.scss +229 -0
- package/styles/scss/components/table/_table.scss +7 -0
- package/styles/scss/components/table/_table.variables.scss +24 -0
- package/styles/scss/components/tabs/_tabs.scss +123 -0
- package/styles/scss/components/tabs/_tabs.variables.scss +32 -0
- package/styles/scss/components/toast/_toast.scss +189 -0
- package/styles/scss/components/toast/_toast.variables.scss +13 -0
- package/styles/scss/components/toggle/_toggle.scss +93 -0
- package/styles/scss/components/toggle/_toggle.variables.scss +17 -0
- package/styles/scss/components/tooltip/_tooltip.scss +3 -0
- package/styles/scss/components/tooltip/_tooltip.variables.scss +5 -0
- package/styles/scss/components/tooltip/_tooltip_container.scss +112 -0
- package/styles/scss/components/typeahead/_typeahead.scss +45 -0
- package/styles/scss/components/typeahead/_typeahead.variables.scss +10 -0
- package/styles/scss/df-styles-namespace.scss +160 -0
- package/styles/scss/df-styles.scss +107 -0
- package/styles/scss/utilities/_common.utilities.scss +70 -0
- package/styles/scss/utilities/_form.mixins.scss +26 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import './styles/scss/df-styles';
|
package/environment.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduLWZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvZGVzaWduLWZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export const environment = {
|
|
2
|
+
animation: true,
|
|
3
|
+
transitionTimerDelayMs: 5
|
|
4
|
+
};
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvZW52aXJvbm1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHO0lBQ3pCLFNBQVMsRUFBRSxJQUFJO0lBQ2Ysc0JBQXNCLEVBQUUsQ0FBQztDQUMxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGVudmlyb25tZW50ID0ge1xuICBhbmltYXRpb246IHRydWUsXG4gIHRyYW5zaXRpb25UaW1lckRlbGF5TXM6IDVcbn07XG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Public API Surface of design-factory
|
|
3
|
+
*/
|
|
4
|
+
export * from './lib/index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGRlc2lnbi1mYWN0b3J5XG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvaW5kZXgnO1xuIl19
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { SkipLinksContainerComponent } from './components/skip-links-container/skip-links-container.component';
|
|
3
|
+
import { SkipLinkDirective } from './directives/skip-link.directive';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export { SkipLinksContainerComponent } from './components/skip-links-container/skip-links-container.component';
|
|
6
|
+
export { SkipLinkDirective } from './directives/skip-link.directive';
|
|
7
|
+
export class DfAccessibilityModule {
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfAccessibilityModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.4", ngImport: i0, type: DfAccessibilityModule, imports: [SkipLinkDirective, SkipLinksContainerComponent], exports: [SkipLinkDirective, SkipLinksContainerComponent] }); }
|
|
10
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfAccessibilityModule }); }
|
|
11
|
+
}
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfAccessibilityModule, decorators: [{
|
|
13
|
+
type: NgModule,
|
|
14
|
+
args: [{
|
|
15
|
+
imports: [SkipLinkDirective, SkipLinksContainerComponent],
|
|
16
|
+
exports: [SkipLinkDirective, SkipLinksContainerComponent]
|
|
17
|
+
}]
|
|
18
|
+
}] });
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzaWJpbGl0eS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2FuZ3VsYXIvYWNjZXNzaWJpbGl0eS9hY2Nlc3NpYmlsaXR5Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQy9HLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQUVyRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQztBQUMvRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUtyRSxNQUFNLE9BQU8scUJBQXFCOzhHQUFyQixxQkFBcUI7K0dBQXJCLHFCQUFxQixZQUh0QixpQkFBaUIsRUFBRSwyQkFBMkIsYUFDOUMsaUJBQWlCLEVBQUUsMkJBQTJCOytHQUU3QyxxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBSmpDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsMkJBQTJCLENBQUM7b0JBQ3pELE9BQU8sRUFBRSxDQUFDLGlCQUFpQixFQUFFLDJCQUEyQixDQUFDO2lCQUMxRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa2lwTGlua3NDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2tpcC1saW5rcy1jb250YWluZXIvc2tpcC1saW5rcy1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNraXBMaW5rRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3NraXAtbGluay5kaXJlY3RpdmUnO1xuXG5leHBvcnQgeyBTa2lwTGlua3NDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2tpcC1saW5rcy1jb250YWluZXIvc2tpcC1saW5rcy1jb250YWluZXIuY29tcG9uZW50JztcbmV4cG9ydCB7IFNraXBMaW5rRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3NraXAtbGluay5kaXJlY3RpdmUnO1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1NraXBMaW5rRGlyZWN0aXZlLCBTa2lwTGlua3NDb250YWluZXJDb21wb25lbnRdLFxuICBleHBvcnRzOiBbU2tpcExpbmtEaXJlY3RpdmUsIFNraXBMaW5rc0NvbnRhaW5lckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgRGZBY2Nlc3NpYmlsaXR5TW9kdWxlIHtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { SkipLinkDirective } from '../../directives/skip-link.directive';
|
|
2
|
+
import { Component, ContentChildren, ChangeDetectionStrategy } from '@angular/core';
|
|
3
|
+
import { merge } from 'rxjs';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class SkipLinksContainerComponent {
|
|
6
|
+
constructor(changeDetector) {
|
|
7
|
+
this.changeDetector = changeDetector;
|
|
8
|
+
this.inFocus = false;
|
|
9
|
+
}
|
|
10
|
+
ngAfterContentInit() {
|
|
11
|
+
if (!this.links.length) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
this.focusSubscription = merge(...this.links.map((link) => link.inFocus)).subscribe((focus) => {
|
|
15
|
+
this.inFocus = focus;
|
|
16
|
+
this.changeDetector.detectChanges();
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
ngOnDestroy() {
|
|
20
|
+
this.focusSubscription.unsubscribe();
|
|
21
|
+
}
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: SkipLinksContainerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.4", type: SkipLinksContainerComponent, isStandalone: true, selector: "df-skip-links-container", queries: [{ propertyName: "links", predicate: SkipLinkDirective }], ngImport: i0, template: "<section class=\"df-skip-links__section\">\n <div class=\"df-skip-links\">\n <div\n class=\"df-skip-links__wrap list-group\"\n [class.focus]=\"inFocus\"\n (blur)=\"inFocus=false\"\n >\n <ng-content></ng-content>\n </div>\n </div>\n</section>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: SkipLinksContainerComponent, decorators: [{
|
|
26
|
+
type: Component,
|
|
27
|
+
args: [{ selector: 'df-skip-links-container', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<section class=\"df-skip-links__section\">\n <div class=\"df-skip-links\">\n <div\n class=\"df-skip-links__wrap list-group\"\n [class.focus]=\"inFocus\"\n (blur)=\"inFocus=false\"\n >\n <ng-content></ng-content>\n </div>\n </div>\n</section>\n" }]
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { links: [{
|
|
29
|
+
type: ContentChildren,
|
|
30
|
+
args: [SkipLinkDirective]
|
|
31
|
+
}] } });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpcC1saW5rcy1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL2FjY2Vzc2liaWxpdHkvY29tcG9uZW50cy9za2lwLWxpbmtzLWNvbnRhaW5lci9za2lwLWxpbmtzLWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2FuZ3VsYXIvYWNjZXNzaWJpbGl0eS9jb21wb25lbnRzL3NraXAtbGlua3MtY29udGFpbmVyL3NraXAtbGlua3MtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3pFLE9BQU8sRUFDTCxTQUFTLEVBQ1QsZUFBZSxFQUlmLHVCQUF1QixFQUV4QixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsS0FBSyxFQUFnQixNQUFNLE1BQU0sQ0FBQzs7QUFRM0MsTUFBTSxPQUFPLDJCQUEyQjtJQUt0QyxZQUFvQixjQUFpQztRQUFqQyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFKckQsWUFBTyxHQUFHLEtBQUssQ0FBQztJQUl3QyxDQUFDO0lBRXpELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDdEIsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFjLEVBQUUsRUFBRTtZQUNyRyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkMsQ0FBQzs4R0FuQlUsMkJBQTJCO2tHQUEzQiwyQkFBMkIseUdBRXJCLGlCQUFpQiw2QkNwQnBDLG9SQVdBOzsyRkRPYSwyQkFBMkI7a0JBTnZDLFNBQVM7K0JBQ0UseUJBQXlCLG1CQUVsQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUk7d0dBSTRCLEtBQUs7c0JBQWhELGVBQWU7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2tpcExpbmtEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3NraXAtbGluay5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIFF1ZXJ5TGlzdCxcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgT25EZXN0cm95LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBtZXJnZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2RmLXNraXAtbGlua3MtY29udGFpbmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NraXAtbGlua3MtY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgU2tpcExpbmtzQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95IHtcbiAgaW5Gb2N1cyA9IGZhbHNlO1xuICBAQ29udGVudENoaWxkcmVuKFNraXBMaW5rRGlyZWN0aXZlKSBwcml2YXRlIGxpbmtzITogUXVlcnlMaXN0PFNraXBMaW5rRGlyZWN0aXZlPjtcbiAgcHJpdmF0ZSBmb2N1c1N1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgaWYgKCF0aGlzLmxpbmtzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmZvY3VzU3Vic2NyaXB0aW9uID0gbWVyZ2UoLi4udGhpcy5saW5rcy5tYXAoKGxpbmspID0+IGxpbmsuaW5Gb2N1cykpLnN1YnNjcmliZSgoZm9jdXM6IGJvb2xlYW4pID0+IHtcbiAgICAgIHRoaXMuaW5Gb2N1cyA9IGZvY3VzO1xuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmZvY3VzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiIsIjxzZWN0aW9uIGNsYXNzPVwiZGYtc2tpcC1saW5rc19fc2VjdGlvblwiPlxuICA8ZGl2IGNsYXNzPVwiZGYtc2tpcC1saW5rc1wiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiZGYtc2tpcC1saW5rc19fd3JhcCBsaXN0LWdyb3VwXCJcbiAgICAgIFtjbGFzcy5mb2N1c109XCJpbkZvY3VzXCJcbiAgICAgIChibHVyKT1cImluRm9jdXM9ZmFsc2VcIlxuICAgID5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L3NlY3Rpb24+XG4iXX0=
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { Output, EventEmitter, Directive, HostListener, HostBinding, Inject } from '@angular/core';
|
|
2
|
+
import { DOCUMENT } from '@angular/common';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class SkipLinkDirective {
|
|
5
|
+
onFocus() {
|
|
6
|
+
this.inFocus.emit(true);
|
|
7
|
+
}
|
|
8
|
+
onClick() {
|
|
9
|
+
this.focusOnTarget();
|
|
10
|
+
}
|
|
11
|
+
onBlur() {
|
|
12
|
+
this.inFocus.emit(false);
|
|
13
|
+
}
|
|
14
|
+
constructor(element, document) {
|
|
15
|
+
this.element = element;
|
|
16
|
+
this.document = document;
|
|
17
|
+
this.class = 'list-group-item list-group-item-action';
|
|
18
|
+
this.inFocus = new EventEmitter();
|
|
19
|
+
}
|
|
20
|
+
focusOnTarget() {
|
|
21
|
+
const href = String(this.element.nativeElement.getAttribute('href'));
|
|
22
|
+
const parts = href.split('#');
|
|
23
|
+
if (parts.length < 2) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
const id = parts.pop();
|
|
27
|
+
if (!id) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
setTimeout(() => {
|
|
31
|
+
const target = this.document.getElementById(id);
|
|
32
|
+
if (target) {
|
|
33
|
+
target.focus();
|
|
34
|
+
this.onBlur();
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: SkipLinkDirective, deps: [{ token: i0.ElementRef }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
39
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.4", type: SkipLinkDirective, isStandalone: true, selector: "[dfSkipLink]", outputs: { inFocus: "inFocus" }, host: { listeners: { "focus": "onFocus()", "click": "onClick()", "blur": "onBlur()" }, properties: { "class": "this.class" } }, ngImport: i0 }); }
|
|
40
|
+
}
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: SkipLinkDirective, decorators: [{
|
|
42
|
+
type: Directive,
|
|
43
|
+
args: [{
|
|
44
|
+
selector: '[dfSkipLink]',
|
|
45
|
+
standalone: true
|
|
46
|
+
}]
|
|
47
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
|
|
48
|
+
type: Inject,
|
|
49
|
+
args: [DOCUMENT]
|
|
50
|
+
}] }]; }, propDecorators: { class: [{
|
|
51
|
+
type: HostBinding
|
|
52
|
+
}], inFocus: [{
|
|
53
|
+
type: Output
|
|
54
|
+
}], onFocus: [{
|
|
55
|
+
type: HostListener,
|
|
56
|
+
args: ['focus']
|
|
57
|
+
}], onClick: [{
|
|
58
|
+
type: HostListener,
|
|
59
|
+
args: ['click']
|
|
60
|
+
}], onBlur: [{
|
|
61
|
+
type: HostListener,
|
|
62
|
+
args: ['blur']
|
|
63
|
+
}] } });
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tpcC1saW5rLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci9hY2Nlc3NpYmlsaXR5L2RpcmVjdGl2ZXMvc2tpcC1saW5rLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBYyxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0csT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQU0zQyxNQUFNLE9BQU8saUJBQWlCO0lBS3JCLE9BQU87UUFDWixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sTUFBTTtRQUNYLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxZQUE2QixPQUFtQixFQUFxQyxRQUFhO1FBQXJFLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBcUMsYUFBUSxHQUFSLFFBQVEsQ0FBSztRQWhCbkYsVUFBSyxHQUFHLHdDQUF3QyxDQUFDO1FBaUI5RCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVPLGFBQWE7UUFDbkIsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ3JFLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDOUIsSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNwQixPQUFPO1NBQ1I7UUFDRCxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNQLE9BQU87U0FDUjtRQUNELFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNoRCxJQUFJLE1BQU0sRUFBRTtnQkFDVixNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2YsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQ2Y7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBdENVLGlCQUFpQiw0Q0FpQjhCLFFBQVE7a0dBakJ2RCxpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBSjdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBa0JvRCxNQUFNOzJCQUFDLFFBQVE7NENBaEJuRCxLQUFLO3NCQUFuQixXQUFXO2dCQUVGLE9BQU87c0JBQWhCLE1BQU07Z0JBRUEsT0FBTztzQkFEYixZQUFZO3VCQUFDLE9BQU87Z0JBS2QsT0FBTztzQkFEYixZQUFZO3VCQUFDLE9BQU87Z0JBS2QsTUFBTTtzQkFEWixZQUFZO3VCQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdXRwdXQsIEV2ZW50RW1pdHRlciwgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIEhvc3RCaW5kaW5nLCBFbGVtZW50UmVmLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RmU2tpcExpbmtdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBTa2lwTGlua0RpcmVjdGl2ZSB7XG4gIEBIb3N0QmluZGluZygpIGNsYXNzID0gJ2xpc3QtZ3JvdXAtaXRlbSBsaXN0LWdyb3VwLWl0ZW0tYWN0aW9uJztcblxuICBAT3V0cHV0KCkgaW5Gb2N1czogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xuICBASG9zdExpc3RlbmVyKCdmb2N1cycpXG4gIHB1YmxpYyBvbkZvY3VzKCkge1xuICAgIHRoaXMuaW5Gb2N1cy5lbWl0KHRydWUpO1xuICB9XG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgcHVibGljIG9uQ2xpY2soKSB7XG4gICAgdGhpcy5mb2N1c09uVGFyZ2V0KCk7XG4gIH1cbiAgQEhvc3RMaXN0ZW5lcignYmx1cicpXG4gIHB1YmxpYyBvbkJsdXIoKSB7XG4gICAgdGhpcy5pbkZvY3VzLmVtaXQoZmFsc2UpO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBlbGVtZW50OiBFbGVtZW50UmVmLCBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50OiBhbnkpIHtcbiAgICB0aGlzLmluRm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIH1cblxuICBwcml2YXRlIGZvY3VzT25UYXJnZXQoKSB7XG4gICAgY29uc3QgaHJlZiA9IFN0cmluZyh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSk7XG4gICAgY29uc3QgcGFydHMgPSBocmVmLnNwbGl0KCcjJyk7XG4gICAgaWYgKHBhcnRzLmxlbmd0aCA8IDIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgaWQgPSBwYXJ0cy5wb3AoKTtcbiAgICBpZiAoIWlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3QgdGFyZ2V0ID0gdGhpcy5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCk7XG4gICAgICBpZiAodGFyZ2V0KSB7XG4gICAgICAgIHRhcmdldC5mb2N1cygpO1xuICAgICAgICB0aGlzLm9uQmx1cigpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { NgbAlertModule } from '@ng-bootstrap/ng-bootstrap';
|
|
3
|
+
import { DfInsertIconModule } from '../icon/insert/insert-icon.module';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class DfAlertModule {
|
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfAlertModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.4", ngImport: i0, type: DfAlertModule, imports: [DfInsertIconModule], exports: [NgbAlertModule, DfInsertIconModule] }); }
|
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfAlertModule, imports: [DfInsertIconModule, NgbAlertModule, DfInsertIconModule] }); }
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfAlertModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
imports: [DfInsertIconModule],
|
|
14
|
+
exports: [NgbAlertModule, DfInsertIconModule]
|
|
15
|
+
}]
|
|
16
|
+
}] });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzaWduLWZhY3Rvcnkvc3JjL2xpYi9hbmd1bGFyL2FsZXJ0L2FsZXJ0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFNdkUsTUFBTSxPQUFPLGFBQWE7OEdBQWIsYUFBYTsrR0FBYixhQUFhLFlBSGQsa0JBQWtCLGFBQ2xCLGNBQWMsRUFBRSxrQkFBa0I7K0dBRWpDLGFBQWEsWUFIZCxrQkFBa0IsRUFDbEIsY0FBYyxFQUFFLGtCQUFrQjs7MkZBRWpDLGFBQWE7a0JBSnpCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsa0JBQWtCLENBQUM7b0JBQzdCLE9BQU8sRUFBRSxDQUFDLGNBQWMsRUFBRSxrQkFBa0IsQ0FBQztpQkFDOUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdiQWxlcnRNb2R1bGUgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBEZkluc2VydEljb25Nb2R1bGUgfSBmcm9tICcuLi9pY29uL2luc2VydC9pbnNlcnQtaWNvbi5tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbRGZJbnNlcnRJY29uTW9kdWxlXSxcbiAgZXhwb3J0czogW05nYkFsZXJ0TW9kdWxlLCBEZkluc2VydEljb25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIERmQWxlcnRNb2R1bGUge1xufVxuIl19
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { environment } from '../../../environment';
|
|
2
|
+
import { EMPTY, fromEvent, of, race, Subject, timer } from 'rxjs';
|
|
3
|
+
import { endWith, filter, takeUntil } from 'rxjs/operators';
|
|
4
|
+
import { getTransitionDurationMs, runInZone } from './util';
|
|
5
|
+
const noopFn = () => { };
|
|
6
|
+
const { transitionTimerDelayMs } = environment;
|
|
7
|
+
const runningTransitions = new Map();
|
|
8
|
+
export const ngbRunTransition = (zone, element, startFn, options) => {
|
|
9
|
+
// Getting initial context from options
|
|
10
|
+
let context = options.context || {};
|
|
11
|
+
// Checking if there are already running transitions on the given element.
|
|
12
|
+
const running = runningTransitions.get(element);
|
|
13
|
+
if (running) {
|
|
14
|
+
switch (options.runningTransition) {
|
|
15
|
+
// If there is one running and we want for it to 'continue' to run, we have to cancel the new one.
|
|
16
|
+
// We're not emitting any values, but simply completing the observable (EMPTY).
|
|
17
|
+
case 'continue':
|
|
18
|
+
return EMPTY;
|
|
19
|
+
// If there is one running and we want for it to 'stop', we have to complete the running one.
|
|
20
|
+
// We're simply completing the running one and not emitting any values and merging newly provided context
|
|
21
|
+
// with the one coming from currently running transition.
|
|
22
|
+
case 'stop':
|
|
23
|
+
zone.run(() => running.transition$.complete());
|
|
24
|
+
context = Object.assign(running.context, context);
|
|
25
|
+
runningTransitions.delete(element);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
// Running the start function
|
|
29
|
+
const endFn = startFn(element, options.animation, context) || noopFn;
|
|
30
|
+
// If 'prefer-reduced-motion' is enabled, the 'transition' will be set to 'none'.
|
|
31
|
+
// If animations are disabled, we have to emit a value and complete the observable
|
|
32
|
+
// In this case we have to call the end function, but can finish immediately by emitting a value,
|
|
33
|
+
// completing the observable and executing end functions synchronously.
|
|
34
|
+
if (!options.animation || window.getComputedStyle(element).transitionProperty === 'none') {
|
|
35
|
+
zone.run(() => endFn());
|
|
36
|
+
return of(undefined).pipe(runInZone(zone));
|
|
37
|
+
}
|
|
38
|
+
// Starting a new transition
|
|
39
|
+
const transition$ = new Subject();
|
|
40
|
+
const finishTransition$ = new Subject();
|
|
41
|
+
const stop$ = transition$.pipe(endWith(true));
|
|
42
|
+
runningTransitions.set(element, {
|
|
43
|
+
transition$,
|
|
44
|
+
complete: () => {
|
|
45
|
+
finishTransition$.next({});
|
|
46
|
+
finishTransition$.complete();
|
|
47
|
+
},
|
|
48
|
+
context
|
|
49
|
+
});
|
|
50
|
+
const transitionDurationMs = getTransitionDurationMs(element);
|
|
51
|
+
// 1. We have to both listen for the 'transitionend' event and have a 'just-in-case' timer,
|
|
52
|
+
// because 'transitionend' event might not be fired in some browsers, if the transitioning
|
|
53
|
+
// element becomes invisible (ex. when scrolling, making browser tab inactive, etc.). The timer
|
|
54
|
+
// guarantees, that we'll release the DOM element and complete 'ngbRunTransition'.
|
|
55
|
+
// 2. We need to filter transition end events, because they might bubble from shorter transitions
|
|
56
|
+
// on inner DOM elements. We're only interested in the transition on the 'element' itself.
|
|
57
|
+
zone.runOutsideAngular(() => {
|
|
58
|
+
const transitionEnd$ = fromEvent(element, 'transitionend').pipe(takeUntil(stop$), filter(({ target }) => target === element));
|
|
59
|
+
const timer$ = timer(transitionDurationMs + transitionTimerDelayMs).pipe(takeUntil(stop$));
|
|
60
|
+
race(timer$, transitionEnd$, finishTransition$)
|
|
61
|
+
.pipe(takeUntil(stop$))
|
|
62
|
+
.subscribe(() => {
|
|
63
|
+
runningTransitions.delete(element);
|
|
64
|
+
zone.run(() => {
|
|
65
|
+
endFn();
|
|
66
|
+
transition$.next({});
|
|
67
|
+
transition$.complete();
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
});
|
|
71
|
+
return transition$.asObservable();
|
|
72
|
+
};
|
|
73
|
+
export const ngbCompleteTransition = (element) => {
|
|
74
|
+
runningTransitions.get(element)?.complete();
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdiVHJhbnNpdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci9hbmltYXRpb24vbmdiVHJhbnNpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQWMsRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFxQjVELE1BQU0sTUFBTSxHQUF1QixHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7QUFFNUMsTUFBTSxFQUFFLHNCQUFzQixFQUFFLEdBQUcsV0FBVyxDQUFDO0FBQy9DLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxHQUFHLEVBQXNDLENBQUM7QUFFekUsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FDOUIsSUFBWSxFQUNaLE9BQW9CLEVBQ3BCLE9BQWdDLEVBQ2hDLE9BQWdDLEVBQ1QsRUFBRTtJQUN6Qix1Q0FBdUM7SUFDdkMsSUFBSSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sSUFBSyxFQUFRLENBQUM7SUFFM0MsMEVBQTBFO0lBQzFFLE1BQU0sT0FBTyxHQUFHLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoRCxJQUFJLE9BQU8sRUFBRTtRQUNYLFFBQVEsT0FBTyxDQUFDLGlCQUFpQixFQUFFO1lBQ2pDLGtHQUFrRztZQUNsRywrRUFBK0U7WUFDL0UsS0FBSyxVQUFVO2dCQUNiLE9BQU8sS0FBSyxDQUFD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QUFDLFlBQVksRUFBRSxDQUFDO0FBQ3BDLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLENBQUMsT0FBb0IsRUFBRSxFQUFFO0lBQzVELGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQztBQUM5QyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGVudmlyb25tZW50IH0gZnJvbSAnLi4vLi4vLi4vZW52aXJvbm1lbnQnO1xuaW1wb3J0IHsgRU1QVFksIGZyb21FdmVudCwgT2JzZXJ2YWJsZSwgb2YsIHJhY2UsIFN1YmplY3QsIHRpbWVyIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBlbmRXaXRoLCBmaWx0ZXIsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IGdldFRyYW5zaXRpb25EdXJhdGlvbk1zLCBydW5JblpvbmUgfSBmcm9tICcuL3V0aWwnO1xuXG5leHBvcnQgdHlwZSBOZ2JUcmFuc2l0aW9uU3RhcnRGbjxUID0gYW55PiA9IChcbiAgZWxlbWVudDogSFRNTEVsZW1lbnQsXG4gIGFuaW1hdGlvbjogYm9vbGVhbixcbiAgY29udGV4dDogVFxuKSA9PiBOZ2JUcmFuc2l0aW9uRW5kRm4gfCB2b2lkO1xuZXhwb3J0IHR5cGUgTmdiVHJhbnNpdGlvbkVuZEZuID0gKCkgPT4gdm9pZDtcblxuZXhwb3J0IGludGVyZmFjZSBOZ2JUcmFuc2l0aW9uT3B0aW9uczxUPiB7XG4gIGFuaW1hdGlvbjogYm9vbGVhbjtcbiAgcnVubmluZ1RyYW5zaXRpb246ICdjb250aW51ZScgfCAnc3RvcCc7XG4gIGNvbnRleHQ/OiBUO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5nYlRyYW5zaXRpb25DdHg8VD4ge1xuICB0cmFuc2l0aW9uJDogU3ViamVjdDxhbnk+O1xuICBjb21wbGV0ZTogKCkgPT4gdm9pZDtcbiAgY29udGV4dDogVDtcbn1cblxuY29uc3Qgbm9vcEZuOiBOZ2JUcmFuc2l0aW9uRW5kRm4gPSAoKSA9PiB7fTtcblxuY29uc3QgeyB0cmFuc2l0aW9uVGltZXJEZWxheU1zIH0gPSBlbnZpcm9ubWVudDtcbmNvbnN0IHJ1bm5pbmdUcmFuc2l0aW9ucyA9IG5ldyBNYXA8SFRNTEVsZW1lbnQsIE5nYlRyYW5zaXRpb25DdHg8YW55Pj4oKTtcblxuZXhwb3J0IGNvbnN0IG5nYlJ1blRyYW5zaXRpb24gPSA8VD4oXG4gIHpvbmU6IE5nWm9uZSxcbiAgZWxlbWVudDogSFRNTEVsZW1lbnQsXG4gIHN0YXJ0Rm46IE5nYlRyYW5zaXRpb25TdGFydEZuPFQ+LFxuICBvcHRpb25zOiBOZ2JUcmFuc2l0aW9uT3B0aW9uczxUPlxuKTogT2JzZXJ2YWJsZTx1bmRlZmluZWQ+ID0+IHtcbiAgLy8gR2V0dGluZyBpbml0aWFsIGNvbnRleHQgZnJvbSBvcHRpb25zXG4gIGxldCBjb250ZXh0ID0gb3B0aW9ucy5jb250ZXh0IHx8ICh7fSBhcyBUKTtcblxuICAvLyBDaGVja2luZyBpZiB0aGVyZSBhcmUgYWxyZWFkeSBydW5uaW5nIHRyYW5zaXRpb25zIG9uIHRoZSBnaXZlbiBlbGVtZW50LlxuICBjb25zdCBydW5uaW5nID0gcnVubmluZ1RyYW5zaXRpb25zLmdldChlbGVtZW50KTtcbiAgaWYgKHJ1bm5pbmcpIHtcbiAgICBzd2l0Y2ggKG9wdGlvbnMucnVubmluZ1RyYW5zaXRpb24pIHtcbiAgICAgIC8vIElmIHRoZXJlIGlzIG9uZSBydW5uaW5nIGFuZCB3ZSB3YW50IGZvciBpdCB0byAnY29udGludWUnIHRvIHJ1biwgd2UgaGF2ZSB0byBjYW5jZWwgdGhlIG5ldyBvbmUuXG4gICAgICAvLyBXZSdyZSBub3QgZW1pdHRpbmcgYW55IHZhbHVlcywgYnV0IHNpbXBseSBjb21wbGV0aW5nIHRoZSBvYnNlcnZhYmxlIChFTVBUWSkuXG4gICAgICBjYXNlICdjb250aW51ZSc6XG4gICAgICAgIHJldHVybiBFTVBUWTtcbiAgICAgIC8vIElmIHRoZXJlIGlzIG9uZSBydW5uaW5nIGFuZCB3ZSB3YW50IGZvciBpdCB0byAnc3RvcCcsIHdlIGhhdmUgdG8gY29tcGxldGUgdGhlIHJ1bm5pbmcgb25lLlxuICAgICAgLy8gV2UncmUgc2ltcGx5IGNvbXBsZXRpbmcgdGhlIHJ1bm5pbmcgb25lIGFuZCBub3QgZW1pdHRpbmcgYW55IHZhbHVlcyBhbmQgbWVyZ2luZyBuZXdseSBwcm92aWRlZCBjb250ZXh0XG4gICAgICAvLyB3aXRoIHRoZSBvbmUgY29taW5nIGZyb20gY3VycmVudGx5IHJ1bm5pbmcgdHJhbnNpdGlvbi5cbiAgICAgIGNhc2UgJ3N0b3AnOlxuICAgICAgICB6b25lLnJ1bigoKSA9PiBydW5uaW5nLnRyYW5zaXRpb24kLmNvbXBsZXRlKCkpO1xuICAgICAgICBjb250ZXh0ID0gT2JqZWN0LmFzc2lnbihydW5uaW5nLmNvbnRleHQsIGNvbnRleHQpO1xuICAgICAgICBydW5uaW5nVHJhbnNpdGlvbnMuZGVsZXRlKGVsZW1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJ1bm5pbmcgdGhlIHN0YXJ0IGZ1bmN0aW9uXG4gIGNvbnN0IGVuZEZuID0gc3RhcnRGbihlbGVtZW50LCBvcHRpb25zLmFuaW1hdGlvbiwgY29udGV4dCkgfHwgbm9vcEZuO1xuXG4gIC8vIElmICdwcmVmZXItcmVkdWNlZC1tb3Rpb24nIGlzIGVuYWJsZWQsIHRoZSAndHJhbnNpdGlvbicgd2lsbCBiZSBzZXQgdG8gJ25vbmUnLlxuICAvLyBJZiBhbmltYXRpb25zIGFyZSBkaXNhYmxlZCwgd2UgaGF2ZSB0byBlbWl0IGEgdmFsdWUgYW5kIGNvbXBsZXRlIHRoZSBvYnNlcnZhYmxlXG4gIC8vIEluIHRoaXMgY2FzZSB3ZSBoYXZlIHRvIGNhbGwgdGhlIGVuZCBmdW5jdGlvbiwgYnV0IGNhbiBmaW5pc2ggaW1tZWRpYXRlbHkgYnkgZW1pdHRpbmcgYSB2YWx1ZSxcbiAgLy8gY29tcGxldGluZyB0aGUgb2JzZXJ2YWJsZSBhbmQgZXhlY3V0aW5nIGVuZCBmdW5jdGlvbnMgc3luY2hyb25vdXNseS5cbiAgaWYgKCFvcHRpb25zLmFuaW1hdGlvbiB8fCB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbGVtZW50KS50cmFuc2l0aW9uUHJvcGVydHkgPT09ICdub25lJykge1xuICAgIHpvbmUucnVuKCgpID0+IGVuZEZuKCkpO1xuICAgIHJldHVybiBvZih1bmRlZmluZWQpLnBpcGUocnVuSW5ab25lKHpvbmUpKTtcbiAgfVxuXG4gIC8vIFN0YXJ0aW5nIGEgbmV3IHRyYW5zaXRpb25cbiAgY29uc3QgdHJhbnNpdGlvbiQgPSBuZXcgU3ViamVjdDxhbnk+KCk7XG4gIGNvbnN0IGZpbmlzaFRyYW5zaXRpb24kID0gbmV3IFN1YmplY3Q8YW55PigpO1xuICBjb25zdCBzdG9wJCA9IHRyYW5zaXRpb24kLnBpcGUoZW5kV2l0aCh0cnVlKSk7XG4gIHJ1bm5pbmdUcmFuc2l0aW9ucy5zZXQoZWxlbWVudCwge1xuICAgIHRyYW5zaXRpb24kLFxuICAgIGNvbXBsZXRlOiAoKSA9PiB7XG4gICAgICBmaW5pc2hUcmFuc2l0aW9uJC5uZXh0KHt9KTtcbiAgICAgIGZpbmlzaFRyYW5zaXRpb24kLmNvbXBsZXRlKCk7XG4gICAgfSxcbiAgICBjb250ZXh0XG4gIH0pO1xuXG4gIGNvbnN0IHRyYW5zaXRpb25EdXJhdGlvbk1zID0gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uTXMoZWxlbWVudCk7XG5cbiAgLy8gMS4gV2UgaGF2ZSB0byBib3RoIGxpc3RlbiBmb3IgdGhlICd0cmFuc2l0aW9uZW5kJyBldmVudCBhbmQgaGF2ZSBhICdqdXN0LWluLWNhc2UnIHRpbWVyLFxuICAvLyBiZWNhdXNlICd0cmFuc2l0aW9uZW5kJyBldmVudCBtaWdodCBub3QgYmUgZmlyZWQgaW4gc29tZSBicm93c2VycywgaWYgdGhlIHRyYW5zaXRpb25pbmdcbiAgLy8gZWxlbWVudCBiZWNvbWVzIGludmlzaWJsZSAoZXguIHdoZW4gc2Nyb2xsaW5nLCBtYWtpbmcgYnJvd3NlciB0YWIgaW5hY3RpdmUsIGV0Yy4pLiBUaGUgdGltZXJcbiAgLy8gZ3VhcmFudGVlcywgdGhhdCB3ZSdsbCByZWxlYXNlIHRoZSBET00gZWxlbWVudCBhbmQgY29tcGxldGUgJ25nYlJ1blRyYW5zaXRpb24nLlxuICAvLyAyLiBXZSBuZWVkIHRvIGZpbHRlciB0cmFuc2l0aW9uIGVuZCBldmVudHMsIGJlY2F1c2UgdGhleSBtaWdodCBidWJibGUgZnJvbSBzaG9ydGVyIHRyYW5zaXRpb25zXG4gIC8vIG9uIGlubmVyIERPTSBlbGVtZW50cy4gV2UncmUgb25seSBpbnRlcmVzdGVkIGluIHRoZSB0cmFuc2l0aW9uIG9uIHRoZSAnZWxlbWVudCcgaXRzZWxmLlxuICB6b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICBjb25zdCB0cmFuc2l0aW9uRW5kJCA9IGZyb21FdmVudChlbGVtZW50LCAndHJhbnNpdGlvbmVuZCcpLnBpcGUoXG4gICAgICB0YWtlVW50aWwoc3RvcCQpLFxuICAgICAgZmlsdGVyKCh7IHRhcmdldCB9KSA9PiB0YXJnZXQgPT09IGVsZW1lbnQpXG4gICAgKTtcbiAgICBjb25zdCB0aW1lciQgPSB0aW1lcih0cmFuc2l0aW9uRHVyYXRpb25NcyArIHRyYW5zaXRpb25UaW1lckRlbGF5TXMpLnBpcGUodGFrZVVudGlsKHN0b3AkKSk7XG5cbiAgICByYWNlKHRpbWVyJCwgdHJhbnNpdGlvbkVuZCQsIGZpbmlzaFRyYW5zaXRpb24kKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHN0b3AkKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBydW5uaW5nVHJhbnNpdGlvbnMuZGVsZXRlKGVsZW1lbnQpO1xuICAgICAgICB6b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgZW5kRm4oKTtcbiAgICAgICAgICB0cmFuc2l0aW9uJC5uZXh0KHt9KTtcbiAgICAgICAgICB0cmFuc2l0aW9uJC5jb21wbGV0ZSgpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICB9KTtcblxuICByZXR1cm4gdHJhbnNpdGlvbiQuYXNPYnNlcnZhYmxlKCk7XG59O1xuXG5leHBvcnQgY29uc3QgbmdiQ29tcGxldGVUcmFuc2l0aW9uID0gKGVsZW1lbnQ6IEhUTUxFbGVtZW50KSA9PiB7XG4gIHJ1bm5pbmdUcmFuc2l0aW9ucy5nZXQoZWxlbWVudCk/LmNvbXBsZXRlKCk7XG59O1xuIl19
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
/**
|
|
3
|
+
* Creates an observable where all callbacks are executed inside a given zone
|
|
4
|
+
*
|
|
5
|
+
* @param zone Angular Zone element
|
|
6
|
+
*/
|
|
7
|
+
export function runInZone(zone) {
|
|
8
|
+
return source => {
|
|
9
|
+
return new Observable(observer => {
|
|
10
|
+
const onNext = (value) => zone.run(() => observer.next(value));
|
|
11
|
+
const onError = (e) => zone.run(() => observer.error(e));
|
|
12
|
+
const onComplete = () => zone.run(() => observer.complete());
|
|
13
|
+
return source.subscribe(onNext, onError, onComplete);
|
|
14
|
+
});
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
export function getTransitionDurationMs(element) {
|
|
18
|
+
const { transitionDelay, transitionDuration } = window.getComputedStyle(element);
|
|
19
|
+
const transitionDelaySec = parseFloat(transitionDelay);
|
|
20
|
+
const transitionDurationSec = parseFloat(transitionDuration);
|
|
21
|
+
return (transitionDelaySec + transitionDurationSec) * 1000;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Force a browser reflow
|
|
25
|
+
* @param element element where to apply the reflow
|
|
26
|
+
*/
|
|
27
|
+
export function reflow(element) {
|
|
28
|
+
return (element || document.body).getBoundingClientRect();
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci9hbmltYXRpb24vdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFvQixNQUFNLE1BQU0sQ0FBQztBQUVwRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBSSxJQUFZO0lBQ3ZDLE9BQU8sTUFBTSxDQUFDLEVBQUU7UUFDZCxPQUFPLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQy9CLE1BQU0sTUFBTSxHQUFHLENBQUMsS0FBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNsRSxNQUFNLE9BQU8sR0FBRyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDOUQsTUFBTSxVQUFVLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUM3RCxPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxVQUFVLENBQUMsQ0FBQztRQUN2RCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLFVBQVUsdUJBQXVCLENBQUMsT0FBb0I7SUFDMUQsTUFBTSxFQUFFLGVBQWUsRUFBRSxrQkFBa0IsRUFBRSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqRixNQUFNLGtCQUFrQixHQUFHLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN2RCxNQUFNLHFCQUFxQixHQUFHLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBRTdELE9BQU8sQ0FBQyxrQkFBa0IsR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLElBQUksQ0FBQztBQUM3RCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLE1BQU0sQ0FBQyxPQUFvQjtJQUN6QyxPQUFPLENBQUMsT0FBTyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0FBQzVELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIE9wZXJhdG9yRnVuY3Rpb24gfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBDcmVhdGVzIGFuIG9ic2VydmFibGUgd2hlcmUgYWxsIGNhbGxiYWNrcyBhcmUgZXhlY3V0ZWQgaW5zaWRlIGEgZ2l2ZW4gem9uZVxuICpcbiAqIEBwYXJhbSB6b25lIEFuZ3VsYXIgWm9uZSBlbGVtZW50XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBydW5JblpvbmU8VD4oem9uZTogTmdab25lKTogT3BlcmF0b3JGdW5jdGlvbjxULCBUPiB7XG4gIHJldHVybiBzb3VyY2UgPT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZShvYnNlcnZlciA9PiB7XG4gICAgICBjb25zdCBvbk5leHQgPSAodmFsdWU6IFQpID0+IHpvbmUucnVuKCgpID0+IG9ic2VydmVyLm5leHQodmFsdWUpKTtcbiAgICAgIGNvbnN0IG9uRXJyb3IgPSAoZTogYW55KSA9PiB6b25lLnJ1bigoKSA9PiBvYnNlcnZlci5lcnJvcihlKSk7XG4gICAgICBjb25zdCBvbkNvbXBsZXRlID0gKCkgPT4gem9uZS5ydW4oKCkgPT4gb2JzZXJ2ZXIuY29tcGxldGUoKSk7XG4gICAgICByZXR1cm4gc291cmNlLnN1YnNjcmliZShvbk5leHQsIG9uRXJyb3IsIG9uQ29tcGxldGUpO1xuICAgIH0pO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VHJhbnNpdGlvbkR1cmF0aW9uTXMoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgY29uc3QgeyB0cmFuc2l0aW9uRGVsYXksIHRyYW5zaXRpb25EdXJhdGlvbiB9ID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XG4gIGNvbnN0IHRyYW5zaXRpb25EZWxheVNlYyA9IHBhcnNlRmxvYXQodHJhbnNpdGlvbkRlbGF5KTtcbiAgY29uc3QgdHJhbnNpdGlvbkR1cmF0aW9uU2VjID0gcGFyc2VGbG9hdCh0cmFuc2l0aW9uRHVyYXRpb24pO1xuXG4gIHJldHVybiAodHJhbnNpdGlvbkRlbGF5U2VjICsgdHJhbnNpdGlvbkR1cmF0aW9uU2VjKSAqIDEwMDA7XG59XG5cbi8qKlxuICogRm9yY2UgYSBicm93c2VyIHJlZmxvd1xuICogQHBhcmFtIGVsZW1lbnQgZWxlbWVudCB3aGVyZSB0byBhcHBseSB0aGUgcmVmbG93XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWZsb3coZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgcmV0dXJuIChlbGVtZW50IHx8IGRvY3VtZW50LmJvZHkpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xufVxuIl19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { DfManageCardSelectionDirective } from './manage-card-selection.directive';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export { DfManageCardSelectionDirective } from './manage-card-selection.directive';
|
|
5
|
+
export class DfAdvancedCardModule {
|
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfAdvancedCardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.4", ngImport: i0, type: DfAdvancedCardModule, imports: [DfManageCardSelectionDirective], exports: [DfManageCardSelectionDirective] }); }
|
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfAdvancedCardModule }); }
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfAdvancedCardModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
imports: [DfManageCardSelectionDirective],
|
|
14
|
+
exports: [DfManageCardSelectionDirective]
|
|
15
|
+
}]
|
|
16
|
+
}] });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1hZHZhbmNlZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2FuZ3VsYXIvY2FyZC9jYXJkLWFkdmFuY2VkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOztBQUVuRixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQU1uRixNQUFNLE9BQU8sb0JBQW9COzhHQUFwQixvQkFBb0I7K0dBQXBCLG9CQUFvQixZQUhyQiw4QkFBOEIsYUFDOUIsOEJBQThCOytHQUU3QixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBSmhDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsOEJBQThCLENBQUM7b0JBQ3pDLE9BQU8sRUFBRSxDQUFDLDhCQUE4QixDQUFDO2lCQUMxQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZk1hbmFnZUNhcmRTZWxlY3Rpb25EaXJlY3RpdmUgfSBmcm9tICcuL21hbmFnZS1jYXJkLXNlbGVjdGlvbi5kaXJlY3RpdmUnO1xuXG5leHBvcnQgeyBEZk1hbmFnZUNhcmRTZWxlY3Rpb25EaXJlY3RpdmUgfSBmcm9tICcuL21hbmFnZS1jYXJkLXNlbGVjdGlvbi5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbRGZNYW5hZ2VDYXJkU2VsZWN0aW9uRGlyZWN0aXZlXSxcbiAgZXhwb3J0czogW0RmTWFuYWdlQ2FyZFNlbGVjdGlvbkRpcmVjdGl2ZV1cbn0pXG5leHBvcnQgY2xhc3MgRGZBZHZhbmNlZENhcmRNb2R1bGUge31cbiJdfQ==
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Directive, HostListener, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class DfManageCardSelectionDirective {
|
|
4
|
+
set dfManageCardSelected(isSelected) {
|
|
5
|
+
const selectedClass = 'df-card-selected';
|
|
6
|
+
if (isSelected === true) {
|
|
7
|
+
this.renderer.addClass(this.element.nativeElement, selectedClass);
|
|
8
|
+
}
|
|
9
|
+
else {
|
|
10
|
+
this.renderer.removeClass(this.element.nativeElement, selectedClass);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
constructor(element, renderer) {
|
|
14
|
+
this.element = element;
|
|
15
|
+
this.renderer = renderer;
|
|
16
|
+
}
|
|
17
|
+
ngAfterViewInit() {
|
|
18
|
+
this.input = this.element.nativeElement.querySelector('.form-check-input');
|
|
19
|
+
this.renderer.setAttribute(this.input, 'tabIndex', '-1');
|
|
20
|
+
}
|
|
21
|
+
click(event) {
|
|
22
|
+
const target = event.target;
|
|
23
|
+
// If the input or the label is clicked then the selection is already made
|
|
24
|
+
// The card must have only one input
|
|
25
|
+
if (!(target.classList.contains('form-check-input') || target.classList.contains('form-check-label'))) {
|
|
26
|
+
this.input.click();
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
this.element.nativeElement.focus();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfManageCardSelectionDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
33
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.4", type: DfManageCardSelectionDirective, isStandalone: true, selector: "[dfManageCardSelected]", inputs: { dfManageCardSelected: "dfManageCardSelected" }, host: { listeners: { "click": "click($event)" } }, ngImport: i0 }); }
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfManageCardSelectionDirective, decorators: [{
|
|
36
|
+
type: Directive,
|
|
37
|
+
args: [{
|
|
38
|
+
selector: '[dfManageCardSelected]',
|
|
39
|
+
standalone: true
|
|
40
|
+
}]
|
|
41
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { dfManageCardSelected: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], click: [{
|
|
44
|
+
type: HostListener,
|
|
45
|
+
args: ['click', ['$event']]
|
|
46
|
+
}] } });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLWNhcmQtc2VsZWN0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci9jYXJkL21hbmFnZS1jYXJkLXNlbGVjdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQTRCLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNckcsTUFBTSxPQUFPLDhCQUE4QjtJQUd6QyxJQUFhLG9CQUFvQixDQUFDLFVBQW1CO1FBQ25ELE1BQU0sYUFBYSxHQUFHLGtCQUFrQixDQUFDO1FBQ3pDLElBQUksVUFBVSxLQUFLLElBQUksRUFBRTtZQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxhQUFhLENBQUMsQ0FBQztTQUNuRTthQUFNO1lBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsYUFBYSxDQUFDLENBQUM7U0FDdEU7SUFDSCxDQUFDO0lBRUQsWUFBNkIsT0FBbUIsRUFBbUIsUUFBbUI7UUFBekQsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUFtQixhQUFRLEdBQVIsUUFBUSxDQUFXO0lBQUcsQ0FBQztJQUUxRixlQUFlO1FBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUMzRSxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBR0QsS0FBSyxDQUFDLEtBQVU7UUFDZCxNQUFNLE1BQU0sR0FBZ0IsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUN6QywwRUFBMEU7UUFDMUUsb0NBQW9DO1FBQ3BDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLElBQUksTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxFQUFFO1lBQ3JHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDcEI7YUFBTTtZQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQzs4R0E3QlUsOEJBQThCO2tHQUE5Qiw4QkFBOEI7OzJGQUE5Qiw4QkFBOEI7a0JBSjFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO3lIQUljLG9CQUFvQjtzQkFBaEMsS0FBSztnQkFpQk4sS0FBSztzQkFESixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBBZnRlclZpZXdJbml0LCBSZW5kZXJlcjIsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkZk1hbmFnZUNhcmRTZWxlY3RlZF0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIERmTWFuYWdlQ2FyZFNlbGVjdGlvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBwcml2YXRlIGlucHV0ITogSFRNTElucHV0RWxlbWVudDtcblxuICBASW5wdXQoKSBzZXQgZGZNYW5hZ2VDYXJkU2VsZWN0ZWQoaXNTZWxlY3RlZDogYm9vbGVhbikge1xuICAgIGNvbnN0IHNlbGVjdGVkQ2xhc3MgPSAnZGYtY2FyZC1zZWxlY3RlZCc7XG4gICAgaWYgKGlzU2VsZWN0ZWQgPT09IHRydWUpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHNlbGVjdGVkQ2xhc3MpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LCBzZWxlY3RlZENsYXNzKTtcbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnQ6IEVsZW1lbnRSZWYsIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMikge31cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5pbnB1dCA9IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5mb3JtLWNoZWNrLWlucHV0Jyk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5pbnB1dCwgJ3RhYkluZGV4JywgJy0xJyk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIGNsaWNrKGV2ZW50OiBhbnkpIHtcbiAgICBjb25zdCB0YXJnZXQ6IEhUTUxFbGVtZW50ID0gZXZlbnQudGFyZ2V0O1xuICAgIC8vIElmIHRoZSBpbnB1dCBvciB0aGUgbGFiZWwgaXMgY2xpY2tlZCB0aGVuIHRoZSBzZWxlY3Rpb24gaXMgYWxyZWFkeSBtYWRlXG4gICAgLy8gVGhlIGNhcmQgbXVzdCBoYXZlIG9ubHkgb25lIGlucHV0XG4gICAgaWYgKCEodGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucygnZm9ybS1jaGVjay1pbnB1dCcpIHx8IHRhcmdldC5jbGFzc0xpc3QuY29udGFpbnMoJ2Zvcm0tY2hlY2stbGFiZWwnKSkpIHtcbiAgICAgIHRoaXMuaW5wdXQuY2xpY2soKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Directive, HostListener, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class CloseInputDatePickerDirective {
|
|
4
|
+
constructor(elementRef) {
|
|
5
|
+
this.elementRef = elementRef;
|
|
6
|
+
}
|
|
7
|
+
onClick(targetElement) {
|
|
8
|
+
const isConnected = document.body.parentElement.contains(targetElement);
|
|
9
|
+
// targetElement.isConnected to check if it is attached to the DOM
|
|
10
|
+
if (!targetElement || !isConnected || !this.inputDatePicker._cRef) {
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
const clickedInside = this.inputDatePicker._cRef.location.nativeElement.contains(targetElement);
|
|
14
|
+
const clickedInsideInput = this.elementRef.nativeElement.contains(targetElement);
|
|
15
|
+
if (!(clickedInside || clickedInsideInput)) {
|
|
16
|
+
this.inputDatePicker.close();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: CloseInputDatePickerDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
20
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.4", type: CloseInputDatePickerDirective, isStandalone: true, selector: "[dfCloseInputDatePicker]", inputs: { inputDatePicker: ["dfCloseInputDatePicker", "inputDatePicker"] }, host: { listeners: { "document:click": "onClick($event.target)", "document:keyup": "onClick($event.target)" } }, ngImport: i0 }); }
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: CloseInputDatePickerDirective, decorators: [{
|
|
23
|
+
type: Directive,
|
|
24
|
+
args: [{
|
|
25
|
+
selector: '[dfCloseInputDatePicker]',
|
|
26
|
+
standalone: true
|
|
27
|
+
}]
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { inputDatePicker: [{
|
|
29
|
+
type: Input,
|
|
30
|
+
args: ['dfCloseInputDatePicker']
|
|
31
|
+
}], onClick: [{
|
|
32
|
+
type: HostListener,
|
|
33
|
+
args: ['document:click', ['$event.target']]
|
|
34
|
+
}, {
|
|
35
|
+
type: HostListener,
|
|
36
|
+
args: ['document:keyup', ['$event.target']]
|
|
37
|
+
}] } });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvc2VkYXRlcGlja2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci9kYXRlcGlja2VyL2Nsb3NlZGF0ZXBpY2tlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFjLE1BQU0sZUFBZSxDQUFDOztBQU0zRSxNQUFNLE9BQU8sNkJBQTZCO0lBSXhDLFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7SUFBRyxDQUFDO0lBSXZDLE9BQU8sQ0FBQyxhQUFrQjtRQUMvQixNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWMsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDekUsa0VBQWtFO1FBQ2xFLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRTtZQUNqRSxPQUFPO1NBQ1I7UUFDRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNoRyxNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNqRixJQUFJLENBQUMsQ0FBQyxhQUFhLElBQUksa0JBQWtCLENBQUMsRUFBRTtZQUMxQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQzs4R0FuQlUsNkJBQTZCO2tHQUE3Qiw2QkFBNkI7OzJGQUE3Qiw2QkFBNkI7a0JBSnpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2lHQUdRLGVBQWU7c0JBRHJCLEtBQUs7dUJBQUMsd0JBQXdCO2dCQU94QixPQUFPO3NCQUZiLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxlQUFlLENBQUM7O3NCQUNoRCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkZkNsb3NlSW5wdXREYXRlUGlja2VyXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQ2xvc2VJbnB1dERhdGVQaWNrZXJEaXJlY3RpdmUge1xuICBASW5wdXQoJ2RmQ2xvc2VJbnB1dERhdGVQaWNrZXInKVxuICBwdWJsaWMgaW5wdXREYXRlUGlja2VyOiBhbnk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQudGFyZ2V0J10pXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleXVwJywgWyckZXZlbnQudGFyZ2V0J10pXG4gIHB1YmxpYyBvbkNsaWNrKHRhcmdldEVsZW1lbnQ6IGFueSkge1xuICAgIGNvbnN0IGlzQ29ubmVjdGVkID0gZG9jdW1lbnQuYm9keS5wYXJlbnRFbGVtZW50IS5jb250YWlucyh0YXJnZXRFbGVtZW50KTtcbiAgICAvLyB0YXJnZXRFbGVtZW50LmlzQ29ubmVjdGVkIHRvIGNoZWNrIGlmIGl0IGlzIGF0dGFjaGVkIHRvIHRoZSBET01cbiAgICBpZiAoIXRhcmdldEVsZW1lbnQgfHwgIWlzQ29ubmVjdGVkIHx8ICF0aGlzLmlucHV0RGF0ZVBpY2tlci5fY1JlZikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBjbGlja2VkSW5zaWRlID0gdGhpcy5pbnB1dERhdGVQaWNrZXIuX2NSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5jb250YWlucyh0YXJnZXRFbGVtZW50KTtcbiAgICBjb25zdCBjbGlja2VkSW5zaWRlSW5wdXQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyh0YXJnZXRFbGVtZW50KTtcbiAgICBpZiAoIShjbGlja2VkSW5zaWRlIHx8IGNsaWNrZWRJbnNpZGVJbnB1dCkpIHtcbiAgICAgIHRoaXMuaW5wdXREYXRlUGlja2VyLmNsb3NlKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { NgbDatepickerKeyboardService } from '@ng-bootstrap/ng-bootstrap';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
const Key = {
|
|
5
|
+
PageUp: 'PageUp',
|
|
6
|
+
PageDown: 'PageDown',
|
|
7
|
+
End: 'End',
|
|
8
|
+
Home: 'Home'
|
|
9
|
+
};
|
|
10
|
+
export class DfDatepickerKeyboardService extends NgbDatepickerKeyboardService {
|
|
11
|
+
processKey(event, dp) {
|
|
12
|
+
const { state, calendar } = dp;
|
|
13
|
+
switch (event.code) {
|
|
14
|
+
case Key.PageUp:
|
|
15
|
+
dp.focusDate(calendar.getPrev(state.focusedDate, event.altKey ? 'y' : 'm'));
|
|
16
|
+
break;
|
|
17
|
+
case Key.PageDown:
|
|
18
|
+
dp.focusDate(calendar.getNext(state.focusedDate, event.altKey ? 'y' : 'm'));
|
|
19
|
+
break;
|
|
20
|
+
case Key.End:
|
|
21
|
+
dp.focusDate(event.altKey ? state.maxDate : state.lastDate);
|
|
22
|
+
break;
|
|
23
|
+
case Key.Home:
|
|
24
|
+
dp.focusDate(event.altKey ? state.minDate : state.firstDate);
|
|
25
|
+
break;
|
|
26
|
+
default:
|
|
27
|
+
super.processKey(event, dp);
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
event.preventDefault();
|
|
31
|
+
event.stopPropagation();
|
|
32
|
+
}
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfDatepickerKeyboardService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
34
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfDatepickerKeyboardService }); }
|
|
35
|
+
}
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfDatepickerKeyboardService, decorators: [{
|
|
37
|
+
type: Injectable
|
|
38
|
+
}] });
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1rZXlib2FyZC1uYXYuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc2lnbi1mYWN0b3J5L3NyYy9saWIvYW5ndWxhci9kYXRlcGlja2VyL2RhdGVwaWNrZXIta2V5Ym9hcmQtbmF2LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWlCLDRCQUE0QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBRXpGLE1BQU0sR0FBRyxHQUFHO0lBQ1YsTUFBTSxFQUFFLFFBQVE7SUFDaEIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsR0FBRyxFQUFFLEtBQUs7SUFDVixJQUFJLEVBQUUsTUFBTTtDQUNiLENBQUM7QUFHRixNQUFNLE9BQU8sMkJBQTRCLFNBQVEsNEJBQTRCO0lBQ2xFLFVBQVUsQ0FBQyxLQUFvQixFQUFFLEVBQWlCO1FBQ3pELE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQy9CLFFBQVEsS0FBSyxDQUFDLElBQUksRUFBRTtZQUNsQixLQUFLLEdBQUcsQ0FBQyxNQUFNO2dCQUNiLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDNUUsTUFBTTtZQUNSLEtBQUssR0FBRyxDQUFDLFFBQVE7Z0JBQ2YsRUFBRSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUM1RSxNQUFNO1lBQ1IsS0FBSyxHQUFHLENBQUMsR0FBRztnQkFDVixFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDNUQsTUFBTTtZQUNSLEtBQUssR0FBRyxDQUFDLElBQUk7Z0JBQ1gsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQzdELE1BQU07WUFDUjtnQkFDRSxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDNUIsT0FBTztTQUNWO1FBQ0QsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMxQixDQUFDOzhHQXRCVSwyQkFBMkI7a0hBQTNCLDJCQUEyQjs7MkZBQTNCLDJCQUEyQjtrQkFEdkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nYkRhdGVwaWNrZXIsIE5nYkRhdGVwaWNrZXJLZXlib2FyZFNlcnZpY2UgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XG5cbmNvbnN0IEtleSA9IHtcbiAgUGFnZVVwOiAnUGFnZVVwJyxcbiAgUGFnZURvd246ICdQYWdlRG93bicsXG4gIEVuZDogJ0VuZCcsXG4gIEhvbWU6ICdIb21lJ1xufTtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERmRGF0ZXBpY2tlcktleWJvYXJkU2VydmljZSBleHRlbmRzIE5nYkRhdGVwaWNrZXJLZXlib2FyZFNlcnZpY2Uge1xuICBvdmVycmlkZSBwcm9jZXNzS2V5KGV2ZW50OiBLZXlib2FyZEV2ZW50LCBkcDogTmdiRGF0ZXBpY2tlcikge1xuICAgIGNvbnN0IHsgc3RhdGUsIGNhbGVuZGFyIH0gPSBkcDtcbiAgICBzd2l0Y2ggKGV2ZW50LmNvZGUpIHtcbiAgICAgIGNhc2UgS2V5LlBhZ2VVcDpcbiAgICAgICAgZHAuZm9jdXNEYXRlKGNhbGVuZGFyLmdldFByZXYoc3RhdGUuZm9jdXNlZERhdGUsIGV2ZW50LmFsdEtleSA/ICd5JyA6ICdtJykpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgS2V5LlBhZ2VEb3duOlxuICAgICAgICBkcC5mb2N1c0RhdGUoY2FsZW5kYXIuZ2V0TmV4dChzdGF0ZS5mb2N1c2VkRGF0ZSwgZXZlbnQuYWx0S2V5ID8gJ3knIDogJ20nKSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBLZXkuRW5kOlxuICAgICAgICBkcC5mb2N1c0RhdGUoZXZlbnQuYWx0S2V5ID8gc3RhdGUubWF4RGF0ZSA6IHN0YXRlLmxhc3REYXRlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEtleS5Ib21lOlxuICAgICAgICBkcC5mb2N1c0RhdGUoZXZlbnQuYWx0S2V5ID8gc3RhdGUubWluRGF0ZSA6IHN0YXRlLmZpcnN0RGF0ZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgc3VwZXIucHJvY2Vzc0tleShldmVudCwgZHApO1xuICAgICAgICByZXR1cm47XG4gICAgfVxuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { RightToLeftDirectionEnum } from '../right-to-left/directionDetection.service';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../right-to-left/directionDetection.service";
|
|
5
|
+
/**
|
|
6
|
+
* My dfDatepickerRange directive
|
|
7
|
+
*/
|
|
8
|
+
export class DfDatepickerRangeDirective {
|
|
9
|
+
constructor(renderer, el, dfDirectionServ) {
|
|
10
|
+
this.renderer = renderer;
|
|
11
|
+
this.el = el;
|
|
12
|
+
this.dfDirectionServ = dfDirectionServ;
|
|
13
|
+
this.isDisabled = false;
|
|
14
|
+
this.siblingsNode = [];
|
|
15
|
+
this.removeListener = [];
|
|
16
|
+
this.focusState = [];
|
|
17
|
+
}
|
|
18
|
+
ngOnInit() {
|
|
19
|
+
this.renderer.addClass(this.el.nativeElement, 'df-input-datepicker-range');
|
|
20
|
+
this.inputsElements = [...this.el.nativeElement.querySelectorAll('input')];
|
|
21
|
+
if (this.inputsElements.length === 2) {
|
|
22
|
+
this.inputsElements.forEach((el, index) => this.initInput(el, index));
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
initInput(el, index) {
|
|
26
|
+
this.renderer.addClass(el, 'df-input-withicon');
|
|
27
|
+
this.renderer.addClass(el, 'append');
|
|
28
|
+
this.renderer.addClass(el.parentNode, 'df-input-append');
|
|
29
|
+
const sibling = el.parentNode.querySelector('.input-group-append');
|
|
30
|
+
if (sibling) {
|
|
31
|
+
this.siblingsNode.push(sibling);
|
|
32
|
+
}
|
|
33
|
+
this.removeListener.push(this.renderer.listen(el, 'focus', () => {
|
|
34
|
+
this.focusState[index] = true;
|
|
35
|
+
this.renderer.addClass(this.el.nativeElement, 'df-focused');
|
|
36
|
+
}));
|
|
37
|
+
this.removeListener.push(this.renderer.listen(el, 'blur', () => {
|
|
38
|
+
this.focusState[index] = false;
|
|
39
|
+
setTimeout(() => this.removeFocus(), 10);
|
|
40
|
+
}));
|
|
41
|
+
}
|
|
42
|
+
removeFocus() {
|
|
43
|
+
if (!this.focusState.reduce((prev, curr) => prev || curr)) {
|
|
44
|
+
this.renderer.removeClass(this.el.nativeElement, 'df-focused');
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
ngAfterViewInit() {
|
|
48
|
+
this.updateDirection();
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* You need to manually update the direction or update the icon
|
|
52
|
+
* if the direction (rtl / ltr) is changing dynamically
|
|
53
|
+
*/
|
|
54
|
+
updateDirection() {
|
|
55
|
+
const currentDirection = this.dfDirectionServ.getPageDirection(this.el);
|
|
56
|
+
if (this.direction !== currentDirection) {
|
|
57
|
+
this.direction = currentDirection;
|
|
58
|
+
const icon = this.el.nativeElement.querySelector('.icon-long-arrow-right') ||
|
|
59
|
+
this.el.nativeElement.querySelector('.icon-long-arrow-left');
|
|
60
|
+
if (icon) {
|
|
61
|
+
if (currentDirection === RightToLeftDirectionEnum.RightToLeft) {
|
|
62
|
+
this.renderer.removeClass(icon, 'icon-long-arrow-right');
|
|
63
|
+
this.renderer.addClass(icon, 'icon-long-arrow-left');
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
this.renderer.removeClass(icon, 'icon-long-arrow-left');
|
|
67
|
+
this.renderer.addClass(icon, 'icon-long-arrow-right');
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
ngDoCheck() {
|
|
73
|
+
// Update this to support disabled
|
|
74
|
+
const currentStatus = this.inputsElements.reduce((prev, current) => prev || current.disabled, false);
|
|
75
|
+
if (this.isDisabled !== currentStatus) {
|
|
76
|
+
this.isDisabled = currentStatus;
|
|
77
|
+
this.siblingsNode.forEach(siblings => {
|
|
78
|
+
if (this.isDisabled) {
|
|
79
|
+
this.renderer.addClass(siblings, 'df-disabled');
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
this.renderer.removeClass(siblings, 'df-disabled');
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
ngOnDestroy() {
|
|
88
|
+
this.removeListener.forEach(item => item());
|
|
89
|
+
}
|
|
90
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfDatepickerRangeDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.DfDirectionDetectionService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
91
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.4", type: DfDatepickerRangeDirective, isStandalone: true, selector: "[dfDatepickerRange]", exportAs: ["dfDatepickerRange"], ngImport: i0 }); }
|
|
92
|
+
}
|
|
93
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.4", ngImport: i0, type: DfDatepickerRangeDirective, decorators: [{
|
|
94
|
+
type: Directive,
|
|
95
|
+
args: [{
|
|
96
|
+
exportAs: 'dfDatepickerRange',
|
|
97
|
+
selector: '[dfDatepickerRange]',
|
|
98
|
+
standalone: true
|
|
99
|
+
}]
|
|
100
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.DfDirectionDetectionService }]; } });
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1yYW5nZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXNpZ24tZmFjdG9yeS9zcmMvbGliL2FuZ3VsYXIvZGF0ZXBpY2tlci9kYXRlcGlja2VyLXJhbmdlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFvRSxNQUFNLGVBQWUsQ0FBQztBQUM1RyxPQUFPLEVBQStCLHdCQUF3QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7OztBQUVwSDs7R0FFRztBQU1ILE1BQU0sT0FBTywwQkFBMEI7SUFRckMsWUFDbUIsUUFBbUIsRUFDcEIsRUFBYyxFQUNiLGVBQTRDO1FBRjVDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDcEIsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNiLG9CQUFlLEdBQWYsZUFBZSxDQUE2QjtRQVR2RCxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ1YsaUJBQVksR0FBYyxFQUFFLENBQUM7UUFDN0IsbUJBQWMsR0FBbUIsRUFBRSxDQUFDO1FBQzdDLGVBQVUsR0FBYyxFQUFFLENBQUM7SUFPaEMsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSwyQkFBMkIsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDM0UsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDcEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUs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LFFBQVEsQ0FBQyxJQUFJLEVBQUUsdUJBQXVCLENBQUMsQ0FBQztpQkFDdkQ7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVELFNBQVM7UUFDUCxrQ0FBa0M7UUFDbEMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNyRyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssYUFBYSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxVQUFVLEdBQUcsYUFBYSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUNuQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7b0JBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQztpQkFDakQ7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDO2lCQUNwRDtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5QyxDQUFDOzhHQTlGVSwwQkFBMEI7a0dBQTFCLDBCQUEwQjs7MkZBQTFCLDBCQUEwQjtrQkFMdEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixRQUFRLEVBQUUscUJBQXFCO29CQUMvQixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIFJlbmRlcmVyMiwgT25Jbml0LCBPbkRlc3Ryb3ksIERvQ2hlY2ssIEFmdGVyVmlld0luaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERmRGlyZWN0aW9uRGV0ZWN0aW9uU2VydmljZSwgUmlnaHRUb0xlZnREaXJlY3Rpb25FbnVtIH0gZnJvbSAnLi4vcmlnaHQtdG8tbGVmdC9kaXJlY3Rpb25EZXRlY3Rpb24uc2VydmljZSc7XG5cbi8qKlxuICogTXkgZGZEYXRlcGlja2VyUmFuZ2UgZGlyZWN0aXZlXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBleHBvcnRBczogJ2RmRGF0ZXBpY2tlclJhbmdlJyxcbiAgc2VsZWN0b3I6ICdbZGZEYXRlcGlja2VyUmFuZ2VdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBEZkRhdGVwaWNrZXJSYW5nZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBEb0NoZWNrLCBBZnRlclZpZXdJbml0IHtcbiAgcHJpdmF0ZSBpbnB1dHNFbGVtZW50cyE6IEhUTUxJbnB1dEVsZW1lbnRbXTtcbiAgcHJpdmF0ZSBpc0Rpc2FibGVkID0gZmFsc2U7XG4gIHByaXZhdGUgcmVhZG9ubHkgc2libGluZ3NOb2RlOiBFbGVtZW50W10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSByZW1vdmVMaXN0ZW5lcjogKCgpID0+IHZvaWQpW10gPSBbXTtcbiAgcHJpdmF0ZSBmb2N1c1N0YXRlOiBib29sZWFuW10gPSBbXTtcbiAgcHJpdmF0ZSBkaXJlY3Rpb24/OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHB1YmxpYyByZWFkb25seSBlbDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRmRGlyZWN0aW9uU2VydjogRGZEaXJlY3Rpb25EZXRlY3Rpb25TZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2RmLWlucHV0LWRhdGVwaWNrZXItcmFuZ2UnKTtcbiAgICB0aGlzLmlucHV0c0VsZW1lbnRzID0gWy4uLnRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCdpbnB1dCcpXTtcbiAgICBpZiAodGhpcy5pbnB1dHNFbGVtZW50cy5sZW5ndGggPT09IDIpIHtcbiAgICAgIHRoaXMuaW5wdXRzRWxlbWVudHMuZm9yRWFjaCgoZWwsIGluZGV4KSA9PiB0aGlzLmluaXRJbnB1dChlbCwgaW5kZXgpKTtcbiAgICB9XG4gIH1cblxuICBpbml0SW5wdXQoZWw6IEhUTUxJbnB1dEVsZW1lbnQsIGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGVsLCAnZGYtaW5wdXQtd2l0aGljb24nKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGVsLCAnYXBwZW5kJyk7XG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhlbC5wYXJlbnROb2RlLCAnZGYtaW5wdXQtYXBwZW5kJyk7XG4gICAgY29uc3Qgc2libGluZyA9IGVsLnBhcmVudE5vZGUhLnF1ZXJ5U2VsZWN0b3IoJy5pbnB1dC1ncm91cC1hcHBlbmQnKTtcbiAgICBpZiAoc2libGluZykge1xuICAgICAgdGhpcy5zaWJsaW5nc05vZGUucHVzaChzaWJsaW5nKTtcbiAgICB9XG4gICAgdGhpcy5yZW1vdmVMaXN0ZW5lci5wdXNoKFxuICAgICAgdGhpcy5yZW5kZXJlci5saXN0ZW4oZWwsICdmb2N1cycsICgpID0+IHtcbiAgICAgICAgdGhpcy5mb2N1c1N0YXRlW2luZGV4XSA9IHRydWU7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnZGYtZm9jdXNlZCcpO1xuICAgICAgfSlcbiAgICApO1xuICAgIHRoaXMucmVtb3ZlTGlzdGVuZXIucHVzaChcbiAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKGVsLCAnYmx1cicsICgpID0+IHtcbiAgICAgICAgdGhpcy5mb2N1c1N0YXRlW2luZGV4XSA9IGZhbHNlO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMucmVtb3ZlRm9jdXMoKSwgMTApO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcmVtb3ZlRm9jdXMoKSB7XG4gICAgaWYgKCF0aGlzLmZvY3VzU3RhdGUucmVkdWNlKChwcmV2LCBjdXJyKSA9PiBwcmV2IHx8IGN1cnIpKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2RmLWZvY3VzZWQnKTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy51cGRhdGVEaXJlY3Rpb24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBZb3UgbmVlZCB0byBtYW51YWxseSB1cGRhdGUgdGhlIGRpcmVjdGlvbiBvciB1cGRhdGUgdGhlIGljb25cbiAgICogaWYgdGhlIGRpcmVjdGlvbiAocnRsIC8gbHRyKSBpcyBjaGFuZ2luZyBkeW5hbWljYWxseVxuICAgKi9cbiAgdXBkYXRlRGlyZWN0aW9uKCkge1xuICAgIGNvbnN0IGN1cnJlbnREaXJlY3Rpb24gPSB0aGlzLmRmRGlyZWN0aW9uU2Vydi5nZXRQYWdlRGlyZWN0aW9uKHRoaXMuZWwpO1xuICAgIGlmICh0aGlzLmRpcmVjdGlvbiAhPT0gY3VycmVudERpcmVjdGlvbikge1xuICAgICAgdGhpcy5kaXJlY3Rpb24gPSBjdXJyZW50RGlyZWN0aW9uO1xuICAgICAgY29uc3QgaWNvbiA9XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKCcuaWNvbi1sb25nLWFycm93LXJpZ2h0JykgfHxcbiAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJy5pY29uLWxvbmctYXJyb3ctbGVmdCcpO1xuICAgICAgaWYgKGljb24pIHtcbiAgICAgICAgaWYgKGN1cnJlbnREaXJlY3Rpb24gPT09IFJpZ2h0VG9MZWZ0RGlyZWN0aW9uRW51bS5SaWdodFRvTGVmdCkge1xuICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3MoaWNvbiwgJ2ljb24tbG9uZy1hcnJvdy1yaWdodCcpO1xuICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoaWNvbiwgJ2ljb24tbG9uZy1hcnJvdy1sZWZ0Jyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyhpY29uLCAnaWNvbi1sb25nLWFycm93LWxlZnQnKTtcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKGljb24sICdpY29uLWxvbmctYXJyb3ctcmlnaHQnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nRG9DaGVjaygpIHtcbiAgICAvLyBVcGRhdGUgdGhpcyB0byBzdXBwb3J0IGRpc2FibGVkXG4gICAgY29uc3QgY3VycmVudFN0YXR1cyA9IHRoaXMuaW5wdXRzRWxlbWVudHMucmVkdWNlKChwcmV2LCBjdXJyZW50KSA9PiBwcmV2IHx8IGN1cnJlbnQuZGlzYWJsZWQsIGZhbHNlKTtcbiAgICBpZiAodGhpcy5pc0Rpc2FibGVkICE9PSBjdXJyZW50U3RhdHVzKSB7XG4gICAgICB0aGlzLmlzRGlzYWJsZWQgPSBjdXJyZW50U3RhdHVzO1xuICAgICAgdGhpcy5zaWJsaW5nc05vZGUuZm9yRWFjaChzaWJsaW5ncyA9PiB7XG4gICAgICAgIGlmICh0aGlzLmlzRGlzYWJsZWQpIHtcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHNpYmxpbmdzLCAnZGYtZGlzYWJsZWQnKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHNpYmxpbmdzLCAnZGYtZGlzYWJsZWQnKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5yZW1vdmVMaXN0ZW5lci5mb3JFYWNoKGl0ZW0gPT4gaXRlbSgpKTtcbiAgfVxufVxuIl19
|