@indice/ng-components 0.2.139-beta → 0.2.139
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/CHANGELOG.md +1 -0
- package/README.md +4 -4
- package/karma.conf.js +44 -0
- package/ng-package.json +10 -0
- package/package.json +18 -9
- package/scripts/css-bundle.ts +33 -0
- package/src/_styles.css +36 -0
- package/src/_tests/utilities.service.spec.ts +16 -0
- package/src/assets/styles/avatar-initials.css +37 -0
- package/src/assets/styles/base.css +46 -0
- package/src/assets/styles/cards.css +71 -0
- package/src/assets/styles/collapsible-panel.css +25 -0
- package/src/assets/styles/components.css +34 -0
- package/src/assets/styles/date-picker.component.css +0 -0
- package/src/assets/styles/drop-down-menu.css +50 -0
- package/src/assets/styles/form-layout.css +49 -0
- package/{_styles.css → src/assets/styles/indice-ng-icons-inline.css} +2286 -3504
- package/src/assets/styles/list-view-empty-state.css +0 -0
- package/src/assets/styles/list-view.css +64 -0
- package/{modal.css → src/assets/styles/modal.css} +157 -157
- package/src/assets/styles/model-view-layout.css +45 -0
- package/src/assets/styles/nav-links.css +35 -0
- package/src/assets/styles/notifications-indicator.component.css +43 -0
- package/src/assets/styles/pager.css +29 -0
- package/src/assets/styles/shell-layout.css +232 -0
- package/src/assets/styles/side-pane.css +46 -0
- package/src/assets/styles/side-view-layout.css +58 -0
- package/src/assets/styles/toast.css +72 -0
- package/src/assets/styles/toggle.css +26 -0
- package/src/assets/styles/view-layout.css +58 -0
- package/src/lib/controls/avatar-initials/avatar-initials.component.html +3 -0
- package/src/lib/controls/avatar-initials/avatar-initials.component.ts +47 -0
- package/src/lib/controls/collapsible-panel/collapsible-panel.component.html +15 -0
- package/src/lib/controls/collapsible-panel/collapsible-panel.component.ts +16 -0
- package/src/lib/controls/date-picker/date-picker.component.html +133 -0
- package/src/lib/controls/date-picker/date-picker.component.ts +258 -0
- package/src/lib/controls/drop-down-menu/drop-down-menu.component.html +61 -0
- package/src/lib/controls/drop-down-menu/drop-down-menu.component.ts +59 -0
- package/src/lib/controls/kpi-tile/kpi-tile.component.html +18 -0
- package/src/lib/controls/kpi-tile/kpi-tile.component.ts +26 -0
- package/src/lib/controls/list-view/list-column.component.ts +10 -0
- package/src/lib/controls/list-view/list-details-section.component.ts +8 -0
- package/src/lib/controls/list-view/list-tile.component.ts +8 -0
- package/src/lib/controls/list-view/list-view-empty-state.component.html +20 -0
- package/src/lib/controls/list-view/list-view-empty-state.component.ts +19 -0
- package/src/lib/controls/list-view/list-view.component.html +151 -0
- package/src/lib/controls/list-view/list-view.component.ts +146 -0
- package/src/lib/controls/nav-links-list/nav-links-list.component.html +27 -0
- package/src/lib/controls/nav-links-list/nav-links-list.component.ts +25 -0
- package/src/lib/controls/notifications-indicator/notifications-indicator.component.html +78 -0
- package/src/lib/controls/notifications-indicator/notifications-indicator.component.ts +75 -0
- package/src/lib/controls/pager/pager.component.html +33 -0
- package/src/lib/controls/pager/pager.component.ts +106 -0
- package/src/lib/controls/side-pane/side-pane.component.html +10 -0
- package/src/lib/controls/side-pane/side-pane.component.ts +59 -0
- package/src/lib/controls/skeleton-loader/skeleton-loader.component.html +112 -0
- package/src/lib/controls/skeleton-loader/skeleton-loader.component.ts +20 -0
- package/src/lib/controls/toaster/toaster-container.component.html +1 -0
- package/src/lib/controls/toaster/toaster-container.component.ts +27 -0
- package/src/lib/controls/toaster/toaster.component.html +103 -0
- package/src/lib/controls/toaster/toaster.component.ts +26 -0
- package/src/lib/controls/toggle/toggle.component.html +15 -0
- package/src/lib/controls/toggle/toggle.component.ts +58 -0
- package/src/lib/directives/click-outside.directive.ts +196 -0
- package/src/lib/directives/dynamic-component-host.directive.ts +7 -0
- package/src/lib/directives/screen-size.directive.ts +67 -0
- package/src/lib/helpers/base-list.component.ts +204 -0
- package/src/lib/icons.ts +39 -0
- package/src/lib/layouts/shell/shell-footer/shell-footer.component.html +71 -0
- package/src/lib/layouts/shell/shell-footer/shell-footer.component.ts +14 -0
- package/src/lib/layouts/shell/shell-header/shell-header.component.html +199 -0
- package/src/lib/layouts/shell/shell-header/shell-header.component.ts +111 -0
- package/src/lib/layouts/shell/shell-layout/shell-layout.component.html +36 -0
- package/src/lib/layouts/shell/shell-layout/shell-layout.component.ts +91 -0
- package/src/lib/layouts/views/form-layout/form-layout.component.html +67 -0
- package/src/lib/layouts/views/form-layout/form-layout.component.ts +66 -0
- package/src/lib/layouts/views/model-view-layout/model-view-layout.component.html +43 -0
- package/src/lib/layouts/views/model-view-layout/model-view-layout.component.ts +37 -0
- package/src/lib/layouts/views/side-view-layout/side-view-layout.component.html +36 -0
- package/src/lib/layouts/views/side-view-layout/side-view-layout.component.ts +67 -0
- package/src/lib/layouts/views/view-layout/view-layout.component.html +68 -0
- package/src/lib/layouts/views/view-layout/view-layout.component.ts +82 -0
- package/src/lib/ng-components.module.ts +135 -0
- package/src/lib/pages/auth/auth-callback/auth-callback.component.html +1 -0
- package/src/lib/pages/auth/auth-callback/auth-callback.component.ts +22 -0
- package/src/lib/pages/auth/auth-renew/auth-renew.component.ts +20 -0
- package/src/lib/pages/auth/logged-out/logged-out.component.html +1 -0
- package/src/lib/pages/auth/logged-out/logged-out.component.ts +22 -0
- package/src/lib/pages/http-status/error/error.component.html +13 -0
- package/src/lib/pages/http-status/error/error.component.ts +13 -0
- package/src/lib/pages/http-status/page-not-found/page-not-found.component.html +14 -0
- package/src/lib/pages/http-status/page-not-found/page-not-found.component.ts +14 -0
- package/src/lib/pages/http-status/unauthorized/unauthorized.component.html +15 -0
- package/src/lib/pages/http-status/unauthorized/unauthorized.component.ts +11 -0
- package/src/lib/pipes/address.pipe.ts +17 -0
- package/src/lib/pipes/duration-format.pipe.ts +67 -0
- package/src/lib/services/component-loader/component-loader-options.class.ts +31 -0
- package/src/lib/services/component-loader/component-loader.class.ts +226 -0
- package/src/lib/services/component-loader/component-loader.factory.ts +27 -0
- package/src/lib/services/component-loader/content-ref.class.ts +10 -0
- package/src/lib/services/interceptors/bad-request.interceptor.ts +34 -0
- package/src/lib/services/modal-service/modal-backdrop-component.ts +40 -0
- package/src/lib/services/modal-service/modal-container-component.ts +125 -0
- package/src/lib/services/modal-service/modal-options.class.ts +92 -0
- package/src/lib/services/modal-service/modal-service.ts +237 -0
- package/src/lib/services/modal-service/modal-styles.class.ts +11 -0
- package/src/lib/services/modal-service/modal.class.ts +45 -0
- package/src/lib/services/shell-state-service.service.ts +10 -0
- package/src/lib/services/toaster.service.ts +23 -0
- package/src/lib/services/utilities.service.ts +40 -0
- package/src/lib/tokens.ts +6 -0
- package/src/lib/types.ts +210 -0
- package/{public-api.d.ts → src/public-api.ts} +60 -43
- package/src/test.ts +28 -0
- package/tsconfig.lib.json +26 -0
- package/tsconfig.lib.prod.json +10 -0
- package/tsconfig.spec.json +17 -0
- package/tslint.json +17 -0
- package/webpack.config.js +36 -0
- package/bundles/indice-ng-components.umd.js +0 -3828
- package/bundles/indice-ng-components.umd.js.map +0 -1
- package/esm2015/indice-ng-components.js +0 -5
- package/esm2015/lib/controls/avatar-initials/avatar-initials.component.js +0 -51
- package/esm2015/lib/controls/collapsible-panel/collapsible-panel.component.js +0 -23
- package/esm2015/lib/controls/date-picker/date-picker.component.js +0 -269
- package/esm2015/lib/controls/drop-down-menu/drop-down-menu.component.js +0 -72
- package/esm2015/lib/controls/kpi-tile/kpi-tile.component.js +0 -39
- package/esm2015/lib/controls/list-view/list-column.component.js +0 -25
- package/esm2015/lib/controls/list-view/list-details-section.component.js +0 -17
- package/esm2015/lib/controls/list-view/list-tile.component.js +0 -17
- package/esm2015/lib/controls/list-view/list-view-empty-state.component.js +0 -32
- package/esm2015/lib/controls/list-view/list-view.component.js +0 -186
- package/esm2015/lib/controls/pager/pager.component.js +0 -133
- package/esm2015/lib/controls/side-pane/side-pane.component.js +0 -76
- package/esm2015/lib/controls/skeleton-loader/skeleton-loader.component.js +0 -29
- package/esm2015/lib/controls/toaster/toaster-container.component.js +0 -31
- package/esm2015/lib/controls/toaster/toaster.component.js +0 -34
- package/esm2015/lib/controls/toggle/toggle.component.js +0 -68
- package/esm2015/lib/directives/click-outside.directive.js +0 -189
- package/esm2015/lib/directives/dynamic-component-host.directive.js +0 -17
- package/esm2015/lib/helpers/base-list.component.js +0 -182
- package/esm2015/lib/icons.js +0 -32
- package/esm2015/lib/layouts/shell/shell-footer/shell-footer.component.js +0 -22
- package/esm2015/lib/layouts/shell/shell-header/shell-header.component.js +0 -147
- package/esm2015/lib/layouts/shell/shell-layout/shell-layout.component.js +0 -101
- package/esm2015/lib/layouts/views/form-layout/form-layout.component.js +0 -86
- package/esm2015/lib/layouts/views/model-view-layout/model-view-layout.component.js +0 -55
- package/esm2015/lib/layouts/views/side-view-layout/side-view-layout.component.js +0 -101
- package/esm2015/lib/layouts/views/view-layout/view-layout.component.js +0 -110
- package/esm2015/lib/ng-components.module.js +0 -221
- package/esm2015/lib/pages/auth/auth-callback/auth-callback.component.js +0 -34
- package/esm2015/lib/pages/auth/auth-renew/auth-renew.component.js +0 -31
- package/esm2015/lib/pages/auth/logged-out/logged-out.component.js +0 -32
- package/esm2015/lib/pages/http-status/error/error.component.js +0 -20
- package/esm2015/lib/pages/http-status/page-not-found/page-not-found.component.js +0 -18
- package/esm2015/lib/pages/http-status/unauthorized/unauthorized.component.js +0 -17
- package/esm2015/lib/pipes/address.pipe.js +0 -21
- package/esm2015/lib/pipes/duration-format.pipe.js +0 -64
- package/esm2015/lib/pipes/obs-with-status.pipe.js +0 -26
- package/esm2015/lib/services/component-loader/component-loader-options.class.js +0 -8
- package/esm2015/lib/services/component-loader/component-loader.class.js +0 -192
- package/esm2015/lib/services/component-loader/component-loader.factory.js +0 -32
- package/esm2015/lib/services/component-loader/content-ref.class.js +0 -13
- package/esm2015/lib/services/modal-service/modal-backdrop-component.js +0 -44
- package/esm2015/lib/services/modal-service/modal-container-component.js +0 -128
- package/esm2015/lib/services/modal-service/modal-options.class.js +0 -35
- package/esm2015/lib/services/modal-service/modal-service.js +0 -220
- package/esm2015/lib/services/modal-service/modal-styles.class.js +0 -11
- package/esm2015/lib/services/modal-service/modal.class.js +0 -27
- package/esm2015/lib/services/notifications.service.js +0 -37
- package/esm2015/lib/services/toaster.service.js +0 -24
- package/esm2015/lib/tokens.js +0 -4
- package/esm2015/lib/types.js +0 -114
- package/esm2015/public-api.js +0 -53
- package/fesm2015/indice-ng-components.js +0 -3282
- package/fesm2015/indice-ng-components.js.map +0 -1
- package/indice-ng-components.d.ts +0 -5
- package/lib/controls/avatar-initials/avatar-initials.component.d.ts +0 -14
- package/lib/controls/collapsible-panel/collapsible-panel.component.d.ts +0 -10
- package/lib/controls/date-picker/date-picker.component.d.ts +0 -48
- package/lib/controls/drop-down-menu/drop-down-menu.component.d.ts +0 -25
- package/lib/controls/kpi-tile/kpi-tile.component.d.ts +0 -13
- package/lib/controls/list-view/list-column.component.d.ts +0 -9
- package/lib/controls/list-view/list-details-section.component.d.ts +0 -7
- package/lib/controls/list-view/list-tile.component.d.ts +0 -7
- package/lib/controls/list-view/list-view-empty-state.component.d.ts +0 -11
- package/lib/controls/list-view/list-view.component.d.ts +0 -55
- package/lib/controls/pager/pager.component.d.ts +0 -36
- package/lib/controls/side-pane/side-pane.component.d.ts +0 -18
- package/lib/controls/skeleton-loader/skeleton-loader.component.d.ts +0 -11
- package/lib/controls/toaster/toaster-container.component.d.ts +0 -13
- package/lib/controls/toaster/toaster.component.d.ts +0 -15
- package/lib/controls/toggle/toggle.component.d.ts +0 -19
- package/lib/directives/click-outside.directive.d.ts +0 -40
- package/lib/directives/dynamic-component-host.directive.d.ts +0 -9
- package/lib/helpers/base-list.component.d.ts +0 -42
- package/lib/icons.d.ts +0 -30
- package/lib/layouts/shell/shell-footer/shell-footer.component.d.ts +0 -8
- package/lib/layouts/shell/shell-header/shell-header.component.d.ts +0 -47
- package/lib/layouts/shell/shell-layout/shell-layout.component.d.ts +0 -27
- package/lib/layouts/views/form-layout/form-layout.component.d.ts +0 -25
- package/lib/layouts/views/model-view-layout/model-view-layout.component.d.ts +0 -25
- package/lib/layouts/views/side-view-layout/side-view-layout.component.d.ts +0 -28
- package/lib/layouts/views/view-layout/view-layout.component.d.ts +0 -31
- package/lib/ng-components.module.d.ts +0 -46
- package/lib/pages/auth/auth-callback/auth-callback.component.d.ts +0 -13
- package/lib/pages/auth/auth-renew/auth-renew.component.d.ts +0 -12
- package/lib/pages/auth/logged-out/logged-out.component.d.ts +0 -12
- package/lib/pages/http-status/error/error.component.d.ts +0 -8
- package/lib/pages/http-status/page-not-found/page-not-found.component.d.ts +0 -8
- package/lib/pages/http-status/unauthorized/unauthorized.component.d.ts +0 -8
- package/lib/pipes/address.pipe.d.ts +0 -8
- package/lib/pipes/duration-format.pipe.d.ts +0 -8
- package/lib/pipes/obs-with-status.pipe.d.ts +0 -13
- package/lib/services/component-loader/component-loader-options.class.d.ts +0 -30
- package/lib/services/component-loader/component-loader.class.d.ts +0 -92
- package/lib/services/component-loader/component-loader.factory.d.ts +0 -24
- package/lib/services/component-loader/content-ref.class.d.ts +0 -12
- package/lib/services/modal-service/modal-backdrop-component.d.ts +0 -20
- package/lib/services/modal-service/modal-container-component.d.ts +0 -33
- package/lib/services/modal-service/modal-options.class.d.ts +0 -81
- package/lib/services/modal-service/modal-service.d.ts +0 -58
- package/lib/services/modal-service/modal-styles.class.d.ts +0 -10
- package/lib/services/modal-service/modal.class.d.ts +0 -43
- package/lib/services/notifications.service.d.ts +0 -14
- package/lib/services/toaster.service.d.ts +0 -11
- package/lib/tokens.d.ts +0 -4
- package/lib/types.d.ts +0 -135
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
export class SkeletonLoaderComponent {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.count = 5;
|
|
7
|
-
this.type = 'tiles'; // 'large-tile', 'table'
|
|
8
|
-
}
|
|
9
|
-
ngOnInit() {
|
|
10
|
-
}
|
|
11
|
-
counter(i) {
|
|
12
|
-
return new Array(i);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
SkeletonLoaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: SkeletonLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
16
|
-
SkeletonLoaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: SkeletonLoaderComponent, selector: "lib-skeleton-loader", inputs: { count: "count", type: "type" }, ngImport: i0, template: "<!-- <h1>SKELETON LOADER!</h1> -->\r\n<ng-container *ngSwitch=\"type\">\r\n <div class=\"cards-deck-4\" *ngSwitchCase=\"'tiles'\">\r\n <ng-container *ngFor=\"let i of counter(count)\">\r\n <div class=\"relative p-4 w-full bg-white rounded-lg overflow-hidden shadow hover:shadow-md rounded-lg\">\r\n <div class=\"animate-pulse flex flex-col\">\r\n <div class=\"rounded w-full h-32 bg-gray-200\"></div>\r\n <div class=\"flex flex-col mt-5\">\r\n <div class=\"w-full h-5 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-10/12 h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-8/12 h-3 bg-gray-200 rounded\"></div>\r\n </div>\r\n\r\n <div class=\"grid grid-cols-2 mt-5 gap-x-2 gap-y-1\">\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n </div>\r\n\r\n <div class=\"flex items-center mt-5\">\r\n <div>\r\n <div class=\"rounded-full bg-gray-200 w-10 h-10\"></div>\r\n </div>\r\n <div class=\"flex justify-between w-full ml-3\">\r\n <div class=\"w-5/12 h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"w-2/12 h-3 bg-gray-200 rounded\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"cards-deck-3\" *ngSwitchCase=\"'large-tiles'\">\r\n <ng-container *ngFor=\"let i of counter(count)\">\r\n <div class=\"relative p-4 w-full bg-white rounded-lg overflow-hidden shadow hover:shadow-md rounded-lg\">\r\n <div class=\"animate-pulse flex flex-col\">\r\n <div class=\"rounded w-full h-52 bg-gray-200\"></div>\r\n <div class=\"flex flex-col mt-5\">\r\n <div class=\"w-full h-5 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-10/12 h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-8/12 h-3 bg-gray-200 rounded\"></div>\r\n </div>\r\n\r\n <div class=\"grid grid-cols-2 mt-5 gap-x-2 gap-y-1\">\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n </div>\r\n\r\n <div class=\"flex items-center mt-5\">\r\n <div>\r\n <div class=\"rounded-full bg-gray-200 w-10 h-10\"></div>\r\n </div>\r\n <div class=\"flex justify-between w-full ml-3\">\r\n <div class=\"w-5/12 h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"w-2/12 h-3 bg-gray-200 rounded\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"cards-deck-1\" *ngSwitchCase=\"'table'\">\r\n <ng-container *ngFor=\"let i of counter(count)\">\r\n <div class=\"border border-light-blue-300 shadow rounded-sm p-4 max-w-sm w-full mx-auto mb-4\">\r\n <div class=\"animate-pulse flex space-x-4\">\r\n <div class=\"rounded-full bg-light-blue-400 h-12 w-12\"> </div>\r\n <div class=\"flex-1 space-y-4 py-1\">\r\n <div class=\"h-4 bg-light-blue-400 rounded w-3/4\"> </div>\r\n <div class=\"space-y-2\">\r\n <div class=\"h-4 bg-light-blue-400 rounded\"> </div>\r\n <div class=\"h-4 bg-light-blue-400 rounded w-5/6\"> </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n <div class=\"cards-deck-3\" *ngSwitchDefault>\r\n <ng-container *ngFor=\"let i of counter(count)\">\r\n <div class=\"relative p-4 w-full bg-white rounded-lg overflow-hidden shadow hover:shadow-md rounded-lg\">\r\n <div class=\"animate-pulse flex flex-col\">\r\n <div class=\"rounded w-full h-52 bg-gray-200\"></div>\r\n <div class=\"flex flex-col mt-5\">\r\n <div class=\"w-full h-5 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-10/12 h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-8/12 h-3 bg-gray-200 rounded\"></div>\r\n </div>\r\n\r\n <div class=\"grid grid-cols-2 mt-5 gap-x-2 gap-y-1\">\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"mt-2 w-full h-3 bg-gray-200 rounded\"></div>\r\n </div>\r\n\r\n <div class=\"flex items-center mt-5\">\r\n <div>\r\n <div class=\"rounded-full bg-gray-200 w-10 h-10\"></div>\r\n </div>\r\n <div class=\"flex justify-between w-full ml-3\">\r\n <div class=\"w-5/12 h-3 bg-gray-200 rounded\"></div>\r\n <div class=\"w-2/12 h-3 bg-gray-200 rounded\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</ng-container>\r\n", directives: [{ type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }] });
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: SkeletonLoaderComponent, decorators: [{
|
|
18
|
-
type: Component,
|
|
19
|
-
args: [{
|
|
20
|
-
// tslint:disable-next-line:component-selector
|
|
21
|
-
selector: 'lib-skeleton-loader',
|
|
22
|
-
templateUrl: './skeleton-loader.component.html'
|
|
23
|
-
}]
|
|
24
|
-
}], ctorParameters: function () { return []; }, propDecorators: { count: [{
|
|
25
|
-
type: Input
|
|
26
|
-
}], type: [{
|
|
27
|
-
type: Input
|
|
28
|
-
}] } });
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tlbGV0b24tbG9hZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9za2VsZXRvbi1sb2FkZXIvc2tlbGV0b24tbG9hZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9za2VsZXRvbi1sb2FkZXIvc2tlbGV0b24tbG9hZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7QUFPekQsTUFBTSxPQUFPLHVCQUF1QjtJQUdsQztRQUZTLFVBQUssR0FBRyxDQUFDLENBQUM7UUFDVixTQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsd0JBQXdCO0lBQ2pDLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7SUFFTSxPQUFPLENBQUMsQ0FBUztRQUN0QixPQUFPLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7O29IQVZVLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLHFHQ1BwQyx1eUtBZ0hBOzJGRHpHYSx1QkFBdUI7a0JBTG5DLFNBQVM7bUJBQUM7b0JBQ1QsOENBQThDO29CQUM5QyxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixXQUFXLEVBQUUsa0NBQWtDO2lCQUNoRDswRUFFVSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICdsaWItc2tlbGV0b24tbG9hZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2tlbGV0b24tbG9hZGVyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2tlbGV0b25Mb2FkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGNvdW50ID0gNTtcclxuICBASW5wdXQoKSB0eXBlID0gJ3RpbGVzJzsgLy8gJ2xhcmdlLXRpbGUnLCAndGFibGUnXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY291bnRlcihpOiBudW1iZXIpOiBudW1iZXJbXSB7XHJcbiAgICByZXR1cm4gbmV3IEFycmF5KGkpO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPCEtLSA8aDE+U0tFTEVUT04gTE9BREVSITwvaDE+IC0tPlxyXG48bmctY29udGFpbmVyICpuZ1N3aXRjaD1cInR5cGVcIj5cclxuICA8ZGl2IGNsYXNzPVwiY2FyZHMtZGVjay00XCIgKm5nU3dpdGNoQ2FzZT1cIid0aWxlcydcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGkgb2YgY291bnRlcihjb3VudClcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInJlbGF0aXZlIHAtNCB3LWZ1bGwgYmctd2hpdGUgcm91bmRlZC1sZyBvdmVyZmxvdy1oaWRkZW4gc2hhZG93IGhvdmVyOnNoYWRvdy1tZCByb3VuZGVkLWxnXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFuaW1hdGUtcHVsc2UgZmxleCBmbGV4LWNvbFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJvdW5kZWQgdy1mdWxsIGgtMzIgYmctZ3JheS0yMDBcIj48L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIG10LTVcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbCBoLTUgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMiB3LTEwLzEyIGgtMyBiZy1ncmF5LTIwMCByb3VuZGVkXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yIHctOC8xMiBoLTMgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZ3JpZC1jb2xzLTIgbXQtNSBnYXAteC0yIGdhcC15LTFcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTIgdy1mdWxsIGgtMyBiZy1ncmF5LTIwMCByb3VuZGVkXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yIHctZnVsbCBoLTMgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMiB3LWZ1bGwgaC0zIGJnLWdyYXktMjAwIHJvdW5kZWRcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTIgdy1mdWxsIGgtMyBiZy1ncmF5LTIwMCByb3VuZGVkXCI+PC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgbXQtNVwiPlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3VuZGVkLWZ1bGwgYmctZ3JheS0yMDAgdy0xMCBoLTEwXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWJldHdlZW4gdy1mdWxsIG1sLTNcIj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy01LzEyIGgtMyBiZy1ncmF5LTIwMCByb3VuZGVkXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctMi8xMiBoLTMgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJjYXJkcy1kZWNrLTNcIiAqbmdTd2l0Y2hDYXNlPVwiJ2xhcmdlLXRpbGVzJ1wiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaSBvZiBjb3VudGVyKGNvdW50KVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmUgcC00IHctZnVsbCBiZy13aGl0ZSByb3VuZGVkLWxnIG92ZXJmbG93LWhpZGRlbiBzaGFkb3cgaG92ZXI6c2hhZG93LW1kIHJvdW5kZWQtbGdcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYW5pbWF0ZS1wdWxzZSBmbGV4IGZsZXgtY29sXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicm91bmRlZCB3LWZ1bGwgaC01MiBiZy1ncmF5LTIwMFwiPjwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgbXQtNVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy1mdWxsIGgtNSBiZy1ncmF5LTIwMCByb3VuZGVkXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yIHctMTAvMTIgaC0zIGJnLWdyYXktMjAwIHJvdW5kZWRcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTIgdy04LzEyIGgtMyBiZy1ncmF5LTIwMCByb3VuZGVkXCI+PC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBncmlkLWNvbHMtMiBtdC01IGdhcC14LTIgZ2FwLXktMVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMiB3LWZ1bGwgaC0zIGJnLWdyYXktMjAwIHJvdW5kZWRcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTIgdy1mdWxsIGgtMyBiZy1ncmF5LTIwMCByb3VuZGVkXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yIHctZnVsbCBoLTMgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMiB3LWZ1bGwgaC0zIGJnLWdyYXktMjAwIHJvdW5kZWRcIj48L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBtdC01XCI+XHJcbiAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdW5kZWQtZnVsbCBiZy1ncmF5LTIwMCB3LTEwIGgtMTBcIj48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktYmV0d2VlbiB3LWZ1bGwgbWwtM1wiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LTUvMTIgaC0zIGJnLWdyYXktMjAwIHJvdW5kZWRcIj48L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy0yLzEyIGgtMyBiZy1ncmF5LTIwMCByb3VuZGVkXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImNhcmRzLWRlY2stMVwiICpuZ1N3aXRjaENhc2U9XCIndGFibGUnXCI+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpIG9mIGNvdW50ZXIoY291bnQpXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXIgYm9yZGVyLWxpZ2h0LWJsdWUtMzAwIHNoYWRvdyByb3VuZGVkLXNtIHAtNCBtYXgtdy1zbSB3LWZ1bGwgbXgtYXV0byBtYi00XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFuaW1hdGUtcHVsc2UgZmxleCBzcGFjZS14LTRcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3VuZGVkLWZ1bGwgYmctbGlnaHQtYmx1ZS00MDAgaC0xMiB3LTEyXCI+Jm5ic3A7PC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC0xIHNwYWNlLXktNCBweS0xXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoLTQgYmctbGlnaHQtYmx1ZS00MDAgcm91bmRlZCB3LTMvNFwiPiZuYnNwOzwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3BhY2UteS0yXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImgtNCBiZy1saWdodC1ibHVlLTQwMCByb3VuZGVkXCI+Jm5ic3A7PC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImgtNCBiZy1saWdodC1ibHVlLTQwMCByb3VuZGVkIHctNS82XCI+Jm5ic3A7PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImNhcmRzLWRlY2stM1wiICpuZ1N3aXRjaERlZmF1bHQ+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpIG9mIGNvdW50ZXIoY291bnQpXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSBwLTQgdy1mdWxsIGJnLXdoaXRlIHJvdW5kZWQtbGcgb3ZlcmZsb3ctaGlkZGVuIHNoYWRvdyBob3ZlcjpzaGFkb3ctbWQgcm91bmRlZC1sZ1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhbmltYXRlLXB1bHNlIGZsZXggZmxleC1jb2xcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3VuZGVkIHctZnVsbCBoLTUyIGJnLWdyYXktMjAwXCI+PC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBtdC01XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LWZ1bGwgaC01IGJnLWdyYXktMjAwIHJvdW5kZWRcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTIgdy0xMC8xMiBoLTMgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMiB3LTgvMTIgaC0zIGJnLWdyYXktMjAwIHJvdW5kZWRcIj48L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJncmlkIGdyaWQtY29scy0yIG10LTUgZ2FwLXgtMiBnYXAteS0xXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yIHctZnVsbCBoLTMgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMiB3LWZ1bGwgaC0zIGJnLWdyYXktMjAwIHJvdW5kZWRcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm10LTIgdy1mdWxsIGgtMyBiZy1ncmF5LTIwMCByb3VuZGVkXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yIHctZnVsbCBoLTMgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIG10LTVcIj5cclxuICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm91bmRlZC1mdWxsIGJnLWdyYXktMjAwIHctMTAgaC0xMFwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1iZXR3ZWVuIHctZnVsbCBtbC0zXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctNS8xMiBoLTMgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LTIvMTIgaC0zIGJnLWdyYXktMjAwIHJvdW5kZWRcIj48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuPC9uZy1jb250YWluZXI+XHJcbiJdfQ==
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { Component } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../../services/toaster.service";
|
|
4
|
-
import * as i2 from "./toaster.component";
|
|
5
|
-
import * as i3 from "@angular/common";
|
|
6
|
-
export class ToasterContainerComponent {
|
|
7
|
-
constructor(toaster) {
|
|
8
|
-
this.toaster = toaster;
|
|
9
|
-
this.toasts = [];
|
|
10
|
-
}
|
|
11
|
-
ngOnInit() {
|
|
12
|
-
this.toaster.toast$
|
|
13
|
-
.subscribe(toast => {
|
|
14
|
-
this.toasts = [toast, ...this.toasts];
|
|
15
|
-
setTimeout(() => this.toasts.pop(), toast.delay || 6000);
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
remove(index) {
|
|
19
|
-
this.toasts = this.toasts.slice(0, index).concat(this.toasts.slice(index + 1));
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
ToasterContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: ToasterContainerComponent, deps: [{ token: i1.ToasterService }], target: i0.ɵɵFactoryTarget.Component });
|
|
23
|
-
ToasterContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: ToasterContainerComponent, selector: "lib-toaster-container", ngImport: i0, template: "<lib-toaster *ngFor=\"let toast of toasts; let i=index\" [toast]=\"toast\" [i]=\"i\" (remove)=\"remove($event)\"></lib-toaster>\r\n", components: [{ type: i2.ToasterComponent, selector: "lib-toaster", inputs: ["toast", "i"], outputs: ["remove"] }], directives: [{ type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: ToasterContainerComponent, decorators: [{
|
|
25
|
-
type: Component,
|
|
26
|
-
args: [{
|
|
27
|
-
selector: 'lib-toaster-container',
|
|
28
|
-
templateUrl: './toaster-container.component.html'
|
|
29
|
-
}]
|
|
30
|
-
}], ctorParameters: function () { return [{ type: i1.ToasterService }]; } });
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci1jb250YWluZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL3RvYXN0ZXIvdG9hc3Rlci1jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL3RvYXN0ZXIvdG9hc3Rlci1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFRbEQsTUFBTSxPQUFPLHlCQUF5QjtJQUlwQyxZQUFvQixPQUF1QjtRQUF2QixZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUYzQyxXQUFNLEdBQVksRUFBRSxDQUFDO0lBRTBCLENBQUM7SUFFaEQsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTthQUNoQixTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN0QyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsRUFBRSxLQUFLLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQzNELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFhO1FBQ2xCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqRixDQUFDOztzSEFoQlUseUJBQXlCOzBHQUF6Qix5QkFBeUIsNkRDUnRDLHFJQUNBOzJGRE9hLHlCQUF5QjtrQkFKckMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxXQUFXLEVBQUUsb0NBQW9DO2lCQUNsRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdG9hc3Rlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVG9hc3QgfSBmcm9tICcuLi8uLi90eXBlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi10b2FzdGVyLWNvbnRhaW5lcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RvYXN0ZXItY29udGFpbmVyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9hc3RlckNvbnRhaW5lckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIHRvYXN0czogVG9hc3RbXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRvYXN0ZXI6IFRvYXN0ZXJTZXJ2aWNlKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRvYXN0ZXIudG9hc3QkXHJcbiAgICAgIC5zdWJzY3JpYmUodG9hc3QgPT4ge1xyXG4gICAgICAgIHRoaXMudG9hc3RzID0gW3RvYXN0LCAuLi50aGlzLnRvYXN0c107XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnRvYXN0cy5wb3AoKSwgdG9hc3QuZGVsYXkgfHwgNjAwMCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMudG9hc3RzID0gdGhpcy50b2FzdHMuc2xpY2UoMCwgaW5kZXgpLmNvbmNhdCh0aGlzLnRvYXN0cy5zbGljZShpbmRleCArIDEpKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxsaWItdG9hc3RlciAqbmdGb3I9XCJsZXQgdG9hc3Qgb2YgdG9hc3RzOyBsZXQgaT1pbmRleFwiIFt0b2FzdF09XCJ0b2FzdFwiIFtpXT1cImlcIiAocmVtb3ZlKT1cInJlbW92ZSgkZXZlbnQpXCI+PC9saWItdG9hc3Rlcj5cclxuIl19
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
export class ToasterComponent {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.i = 0;
|
|
7
|
-
this.remove = new EventEmitter();
|
|
8
|
-
this.isMobile = false;
|
|
9
|
-
this.closed = false;
|
|
10
|
-
}
|
|
11
|
-
ngOnInit() {
|
|
12
|
-
window.screen.width > 640 ? this.isMobile = false : this.isMobile = true;
|
|
13
|
-
}
|
|
14
|
-
closeToast(index) {
|
|
15
|
-
this.closed = true;
|
|
16
|
-
setTimeout(() => this.remove.emit(index), 100);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
ToasterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: ToasterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
-
ToasterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: ToasterComponent, selector: "lib-toaster", inputs: { toast: "toast", i: "i" }, outputs: { remove: "remove" }, ngImport: i0, template: "<div aria-live=\"assertive\"\r\n [ngClass]=\"closed ? 'toast-closed': 'toast z-50'\"\r\n [ngStyle]=\"isMobile ? { 'margin-bottom.px': i * 85 } : {'margin-top.px': i * 85 }\">\r\n <div class=\"toast-container\">\r\n <div class=\"toast-pill\">\r\n <div class=\"toast-context-padding\">\r\n <div class=\"toast-context\"\r\n [ngSwitch]=\"toast?.type\">\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'info'\">\r\n <svg class=\"h-5 w-5 text-blue-400\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a1 1 0 000 2v3a1 1 0 001 1h1a1 1 0 100-2v-3a1 1 0 00-1-1H9z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'success'\">\r\n <svg class=\"h-5 w-5 text-green-400\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'error'\">\r\n <svg class=\"h-5 w-5 text-red-400\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchCase=\"'warning'\">\r\n <svg class=\"h-5 w-5 text-yellow-400\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </div>\r\n <div class=\"toast-icon\"\r\n *ngSwitchDefault>\r\n <svg class=\"h-5 w-5 text-green-400\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n fill=\"none\"\r\n viewBox=\"0 0 24 24\"\r\n stroke=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n stroke-width=\"2\"\r\n d=\"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z\" />\r\n </svg>\r\n </div>\r\n\r\n <div class=\"ml-3 w-0 flex-1\">\r\n <p class=\"toast-title\"\r\n *ngIf=\"toast?.title\">\r\n {{toast?.title}}\r\n </p>\r\n <p class=\"toast-body\">\r\n {{toast?.body}}\r\n </p>\r\n </div>\r\n <div class=\"toast-close-icon\">\r\n <button class=\"toast-close-button\"\r\n (click)=\"closeToast(i)\">\r\n <span class=\"sr-only\">Close</span>\r\n <!-- Heroicon name: solid/x -->\r\n <svg class=\"h-5 w-5\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"currentColor\"\r\n aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z\"\r\n clip-rule=\"evenodd\" />\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: ToasterComponent, decorators: [{
|
|
22
|
-
type: Component,
|
|
23
|
-
args: [{
|
|
24
|
-
selector: 'lib-toaster',
|
|
25
|
-
templateUrl: './toaster.component.html'
|
|
26
|
-
}]
|
|
27
|
-
}], ctorParameters: function () { return []; }, propDecorators: { toast: [{
|
|
28
|
-
type: Input
|
|
29
|
-
}], i: [{
|
|
30
|
-
type: Input
|
|
31
|
-
}], remove: [{
|
|
32
|
-
type: Output
|
|
33
|
-
}] } });
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvdG9hc3Rlci90b2FzdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy90b2FzdGVyL3RvYXN0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTy9FLE1BQU0sT0FBTyxnQkFBZ0I7SUFRM0I7UUFMUyxNQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ0wsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDdkMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixXQUFNLEdBQUcsS0FBSyxDQUFDO0lBRU4sQ0FBQztJQUVqQixRQUFRO1FBQ04sTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDM0UsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUFhO1FBQzdCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNqRCxDQUFDOzs2R0FqQlUsZ0JBQWdCO2lHQUFoQixnQkFBZ0Isc0hDUDdCLHl2SkFzR007MkZEL0ZPLGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsV0FBVyxFQUFFLDBCQUEwQjtpQkFDeEM7MEVBR1UsS0FBSztzQkFBYixLQUFLO2dCQUNHLENBQUM7c0JBQVQsS0FBSztnQkFDSSxNQUFNO3NCQUFmLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRvYXN0IH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItdG9hc3RlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RvYXN0ZXIuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUb2FzdGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgQElucHV0KCkgdG9hc3Q6IFRvYXN0IHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIGkgPSAwO1xyXG4gIEBPdXRwdXQoKSByZW1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuICBwdWJsaWMgaXNNb2JpbGUgPSBmYWxzZTtcclxuICBwdWJsaWMgY2xvc2VkID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgd2luZG93LnNjcmVlbi53aWR0aCA+IDY0MCA/IHRoaXMuaXNNb2JpbGUgPSBmYWxzZSA6IHRoaXMuaXNNb2JpbGUgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsb3NlVG9hc3QoaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5jbG9zZWQgPSB0cnVlO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnJlbW92ZS5lbWl0KGluZGV4KSwgMTAwKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBhcmlhLWxpdmU9XCJhc3NlcnRpdmVcIlxyXG4gICAgIFtuZ0NsYXNzXT1cImNsb3NlZCA/ICd0b2FzdC1jbG9zZWQnOiAndG9hc3Qgei01MCdcIlxyXG4gICAgIFtuZ1N0eWxlXT1cImlzTW9iaWxlID8geyAnbWFyZ2luLWJvdHRvbS5weCc6IGkgKiA4NSB9IDogeydtYXJnaW4tdG9wLnB4JzogaSAqIDg1IH1cIj5cclxuICA8ZGl2IGNsYXNzPVwidG9hc3QtY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwidG9hc3QtcGlsbFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidG9hc3QtY29udGV4dC1wYWRkaW5nXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInRvYXN0LWNvbnRleHRcIlxyXG4gICAgICAgICAgICAgW25nU3dpdGNoXT1cInRvYXN0Py50eXBlXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9hc3QtaWNvblwiXHJcbiAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInaW5mbydcIj5cclxuICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImgtNSB3LTUgdGV4dC1ibHVlLTQwMFwiXHJcbiAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyMCAyMFwiXHJcbiAgICAgICAgICAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiXHJcbiAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgZD1cIk0xOCAxMGE4IDggMCAxMS0xNiAwIDggOCAwIDAxMTYgMHptLTctNGExIDEgMCAxMS0yIDAgMSAxIDAgMDEyIDB6TTkgOWExIDEgMCAwMDAgMnYzYTEgMSAwIDAwMSAxaDFhMSAxIDAgMTAwLTJ2LTNhMSAxIDAgMDAtMS0xSDl6XCJcclxuICAgICAgICAgICAgICAgICAgICBjbGlwLXJ1bGU9XCJldmVub2RkXCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b2FzdC1pY29uXCJcclxuICAgICAgICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidzdWNjZXNzJ1wiPlxyXG4gICAgICAgICAgICA8c3ZnIGNsYXNzPVwiaC01IHctNSB0ZXh0LWdyZWVuLTQwMFwiXHJcbiAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxyXG4gICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiXHJcbiAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgPHBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIlxyXG4gICAgICAgICAgICAgICAgICAgIGQ9XCJNOSAxMmwyIDIgNC00bTYgMmE5IDkgMCAxMS0xOCAwIDkgOSAwIDAxMTggMHpcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRvYXN0LWljb25cIlxyXG4gICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ2Vycm9yJ1wiPlxyXG4gICAgICAgICAgICA8c3ZnIGNsYXNzPVwiaC01IHctNSB0ZXh0LXJlZC00MDBcIlxyXG4gICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjAgMjBcIlxyXG4gICAgICAgICAgICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxyXG4gICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIlxyXG4gICAgICAgICAgICAgICAgICAgIGQ9XCJNMTAgMThhOCA4IDAgMTAwLTE2IDggOCAwIDAwMCAxNnpNOC43MDcgNy4yOTNhMSAxIDAgMDAtMS40MTQgMS40MTRMOC41ODYgMTBsLTEuMjkzIDEuMjkzYTEgMSAwIDEwMS40MTQgMS40MTRMMTAgMTEuNDE0bDEuMjkzIDEuMjkzYTEgMSAwIDAwMS40MTQtMS40MTRMMTEuNDE0IDEwbDEuMjkzLTEuMjkzYTEgMSAwIDAwLTEuNDE0LTEuNDE0TDEwIDguNTg2IDguNzA3IDcuMjkzelwiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIC8+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9hc3QtaWNvblwiXHJcbiAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCInd2FybmluZydcIj5cclxuICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImgtNSB3LTUgdGV4dC15ZWxsb3ctNDAwXCJcclxuICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDIwIDIwXCJcclxuICAgICAgICAgICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcclxuICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIj5cclxuICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgICAgICBkPVwiTTguMjU3IDMuMDk5Yy43NjUtMS4zNiAyLjcyMi0xLjM2IDMuNDg2IDBsNS41OCA5LjkyYy43NSAxLjMzNC0uMjEzIDIuOTgtMS43NDIgMi45OEg0LjQyYy0xLjUzIDAtMi40OTMtMS42NDYtMS43NDMtMi45OGw1LjU4LTkuOTJ6TTExIDEzYTEgMSAwIDExLTIgMCAxIDEgMCAwMTIgMHptLTEtOGExIDEgMCAwMC0xIDF2M2ExIDEgMCAwMDIgMFY2YTEgMSAwIDAwLTEtMXpcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRvYXN0LWljb25cIlxyXG4gICAgICAgICAgICAgICAqbmdTd2l0Y2hEZWZhdWx0PlxyXG4gICAgICAgICAgICA8c3ZnIGNsYXNzPVwiaC01IHctNSB0ZXh0LWdyZWVuLTQwMFwiXHJcbiAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxyXG4gICAgICAgICAgICAgICAgIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiXHJcbiAgICAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgPHBhdGggc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjJcIlxyXG4gICAgICAgICAgICAgICAgICAgIGQ9XCJNOSAxMmwyIDIgNC00bTYgMmE5IDkgMCAxMS0xOCAwIDkgOSAwIDAxMTggMHpcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtbC0zIHctMCBmbGV4LTFcIj5cclxuICAgICAgICAgICAgPHAgY2xhc3M9XCJ0b2FzdC10aXRsZVwiXHJcbiAgICAgICAgICAgICAgICpuZ0lmPVwidG9hc3Q/LnRpdGxlXCI+XHJcbiAgICAgICAgICAgICAge3t0b2FzdD8udGl0bGV9fVxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICAgIDxwIGNsYXNzPVwidG9hc3QtYm9keVwiPlxyXG4gICAgICAgICAgICAgIHt7dG9hc3Q/LmJvZHl9fVxyXG4gICAgICAgICAgICA8L3A+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b2FzdC1jbG9zZS1pY29uXCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJ0b2FzdC1jbG9zZS1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJjbG9zZVRvYXN0KGkpXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzci1vbmx5XCI+Q2xvc2U8L3NwYW4+XHJcbiAgICAgICAgICAgICAgPCEtLSBIZXJvaWNvbiBuYW1lOiBzb2xpZC94IC0tPlxyXG4gICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJoLTUgdy01XCJcclxuICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxyXG4gICAgICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyMCAyMFwiXHJcbiAgICAgICAgICAgICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcclxuICAgICAgICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBkPVwiTTQuMjkzIDQuMjkzYTEgMSAwIDAxMS40MTQgMEwxMCA4LjU4Nmw0LjI5My00LjI5M2ExIDEgMCAxMTEuNDE0IDEuNDE0TDExLjQxNCAxMGw0LjI5MyA0LjI5M2ExIDEgMCAwMS0xLjQxNCAxLjQxNEwxMCAxMS40MTRsLTQuMjkzIDQuMjkzYTEgMSAwIDAxLTEuNDE0LTEuNDE0TDguNTg2IDEwIDQuMjkzIDUuNzA3YTEgMSAwIDAxMC0xLjQxNHpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIC8+XHJcbiAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, forwardRef, Input, Output } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
export class ToggleComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.valueChange = new EventEmitter();
|
|
8
|
-
this.onChange$ = undefined;
|
|
9
|
-
this.onTouched$ = undefined;
|
|
10
|
-
}
|
|
11
|
-
writeValue(obj) {
|
|
12
|
-
if (obj) {
|
|
13
|
-
this.value = obj || false;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
registerOnChange(fn) {
|
|
17
|
-
this.onChange$ = fn;
|
|
18
|
-
}
|
|
19
|
-
registerOnTouched(fn) {
|
|
20
|
-
this.onTouched$ = fn;
|
|
21
|
-
}
|
|
22
|
-
onBlur(event) {
|
|
23
|
-
if (this.onTouched$) {
|
|
24
|
-
this.onTouched$();
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
ngOnInit() {
|
|
28
|
-
}
|
|
29
|
-
changeValue() {
|
|
30
|
-
this.value = !this.value;
|
|
31
|
-
this.valueChange.emit(this.value);
|
|
32
|
-
if (this.onChange$) {
|
|
33
|
-
this.onChange$(this.value);
|
|
34
|
-
}
|
|
35
|
-
if (this.onTouched$) {
|
|
36
|
-
this.onTouched$();
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
ToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: ToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
41
|
-
ToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.1", type: ToggleComponent, selector: "lib-toggle", inputs: { value: "value", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, providers: [
|
|
42
|
-
{
|
|
43
|
-
provide: NG_VALUE_ACCESSOR,
|
|
44
|
-
useExisting: forwardRef(() => ToggleComponent),
|
|
45
|
-
multi: true
|
|
46
|
-
}
|
|
47
|
-
], ngImport: i0, template: "<button type=\"button\"\r\n [ngClass]=\"value ? (disabled ? 'on disabled' : 'on') : 'off'\"\r\n class=\"toggle-button\"\r\n role=\"switch\"\r\n aria-checked=\"false\"\r\n aria-labelledby=\"isPrivate\"\r\n (click)=\"changeValue()\"\r\n (blur)=\"onBlur($event)\"\r\n value=\"{{value}}\"\r\n [disabled]=\"disabled\"\r\n [title]=\"disabled ? '\u03A4\u03BF \u03B1\u03C1\u03C7\u03B5\u03AF\u03BF \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03B9\u03B4\u03C9\u03C4\u03B9\u03BA\u03CC' : '\u0399\u03B4\u03B9\u03C9\u03C4\u03B9\u03BA\u03CC'\">\r\n <span aria-hidden=\"true\"\r\n [ngClass]=\"value ? 'enabled-anim' : 'disabled-anim'\"\r\n class=\"toggle-span\"></span>\r\n</button>", directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: ToggleComponent, decorators: [{
|
|
49
|
-
type: Component,
|
|
50
|
-
args: [{
|
|
51
|
-
selector: 'lib-toggle',
|
|
52
|
-
templateUrl: './toggle.component.html',
|
|
53
|
-
providers: [
|
|
54
|
-
{
|
|
55
|
-
provide: NG_VALUE_ACCESSOR,
|
|
56
|
-
useExisting: forwardRef(() => ToggleComponent),
|
|
57
|
-
multi: true
|
|
58
|
-
}
|
|
59
|
-
]
|
|
60
|
-
}]
|
|
61
|
-
}], ctorParameters: function () { return []; }, propDecorators: { value: [{
|
|
62
|
-
type: Input
|
|
63
|
-
}], disabled: [{
|
|
64
|
-
type: Input
|
|
65
|
-
}], valueChange: [{
|
|
66
|
-
type: Output
|
|
67
|
-
}] } });
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy90b2dnbGUvdG9nZ2xlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy90b2dnbGUvdG9nZ2xlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxpQkFBaUIsRUFBd0IsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBYXpFLE1BQU0sT0FBTyxlQUFlO0lBVTFCO1FBTFUsZ0JBQVcsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUVuRSxjQUFTLEdBQW9CLFNBQVMsQ0FBQztRQUN2QyxlQUFVLEdBQW9CLFNBQVMsQ0FBQztJQUVoQyxDQUFDO0lBRWpCLFVBQVUsQ0FBQyxHQUFRO1FBQ2pCLElBQUcsR0FBRyxFQUFFO1lBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLElBQUksS0FBSyxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUNELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUNELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFVO1FBQ3RCLElBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNsQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxJQUFHLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDakIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDNUI7UUFDRCxJQUFHLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQzs7NEdBMUNVLGVBQWU7Z0dBQWYsZUFBZSxnSUFSZjtRQUNUO1lBQ0UsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQztZQUM5QyxLQUFLLEVBQUUsSUFBSTtTQUNaO0tBQ0YsMEJDWkgsK3hCQWNTOzJGREFJLGVBQWU7a0JBWDNCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFdBQVcsRUFBRSx5QkFBeUI7b0JBQ3RDLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsQ0FBQzs0QkFDOUMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0Y7MEVBR1EsS0FBSztzQkFEWCxLQUFLO2dCQUdDLFFBQVE7c0JBRGQsS0FBSztnQkFFSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiwgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi10b2dnbGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90b2dnbGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVG9nZ2xlQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUb2dnbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB2YWx1ZTogYm9vbGVhbiB8IG51bGwgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZGlzYWJsZWQ6Ym9vbGVhbiB8IG51bGwgfCB1bmRlZmluZWQ7XHJcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Qm9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPEJvb2xlYW4+KCk7XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2UkOiBhbnkgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbiAgcHJpdmF0ZSBvblRvdWNoZWQkOiBhbnkgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcbiAgXHJcbiAgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWQge1xyXG4gICAgaWYob2JqKSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSBvYmogfHwgZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkNoYW5nZSQgPSBmbjtcclxuICB9XHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWQkID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25CbHVyKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIGlmKHRoaXMub25Ub3VjaGVkJCkge1xyXG4gICAgICB0aGlzLm9uVG91Y2hlZCQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoYW5nZVZhbHVlKCl7XHJcbiAgICB0aGlzLnZhbHVlID0gIXRoaXMudmFsdWU7XHJcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XHJcbiAgICBpZih0aGlzLm9uQ2hhbmdlJCkge1xyXG4gICAgICB0aGlzLm9uQ2hhbmdlJCh0aGlzLnZhbHVlKTtcclxuICAgIH1cclxuICAgIGlmKHRoaXMub25Ub3VjaGVkJCkge1xyXG4gICAgICB0aGlzLm9uVG91Y2hlZCQoKTtcclxuICAgIH1cclxuICB9XHJcbn0iLCI8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cInZhbHVlID8gKGRpc2FibGVkID8gJ29uIGRpc2FibGVkJyA6ICdvbicpIDogJ29mZidcIlxyXG4gICAgICAgIGNsYXNzPVwidG9nZ2xlLWJ1dHRvblwiXHJcbiAgICAgICAgcm9sZT1cInN3aXRjaFwiXHJcbiAgICAgICAgYXJpYS1jaGVja2VkPVwiZmFsc2VcIlxyXG4gICAgICAgIGFyaWEtbGFiZWxsZWRieT1cImlzUHJpdmF0ZVwiXHJcbiAgICAgICAgKGNsaWNrKT1cImNoYW5nZVZhbHVlKClcIlxyXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcclxuICAgICAgICB2YWx1ZT1cInt7dmFsdWV9fVwiXHJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICBbdGl0bGVdPVwiZGlzYWJsZWQgPyAnzqTOvyDOsc+Bz4fOtc6vzr8gz4DPgc6tz4DOtc65IM69zrEgzrXOr869zrHOuSDOuc60z4nPhM65zrrPjCcgOiAnzpnOtM65z4nPhM65zrrPjCdcIj5cclxuICAgIDxzcGFuIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXHJcbiAgICAgICAgICBbbmdDbGFzc109XCJ2YWx1ZSA/ICdlbmFibGVkLWFuaW0nIDogJ2Rpc2FibGVkLWFuaW0nXCJcclxuICAgICAgICAgIGNsYXNzPVwidG9nZ2xlLXNwYW5cIj48L3NwYW4+XHJcbjwvYnV0dG9uPiJdfQ==
|
|
@@ -1,189 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// https://github.com/arkon/ng-click-outside
|
|
3
|
-
// the project is inactive - so imoved the directive code in our project
|
|
4
|
-
//
|
|
5
|
-
import { Directive, EventEmitter, Inject, Input, Output, PLATFORM_ID, } from '@angular/core';
|
|
6
|
-
import { isPlatformBrowser } from '@angular/common';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
// tslint:disable-next-line:directive-selector
|
|
9
|
-
export class ClickOutsideDirective {
|
|
10
|
-
constructor(
|
|
11
|
-
// tslint:disable-next-line:variable-name
|
|
12
|
-
_el,
|
|
13
|
-
// tslint:disable-next-line:variable-name
|
|
14
|
-
_ngZone, platformId) {
|
|
15
|
-
this._el = _el;
|
|
16
|
-
this._ngZone = _ngZone;
|
|
17
|
-
this.platformId = platformId;
|
|
18
|
-
this.clickOutsideEnabled = true;
|
|
19
|
-
this.attachOutsideOnClick = false;
|
|
20
|
-
this.delayClickOutsideInit = false;
|
|
21
|
-
this.emitOnBlur = false;
|
|
22
|
-
this.exclude = '';
|
|
23
|
-
this.excludeBeforeClick = false;
|
|
24
|
-
this.clickOutsideEvents = '';
|
|
25
|
-
this.clickOutside = new EventEmitter();
|
|
26
|
-
// tslint:disable-next-line:variable-name
|
|
27
|
-
this._nodesExcluded = [];
|
|
28
|
-
// tslint:disable-next-line:variable-name
|
|
29
|
-
this._events = ['click'];
|
|
30
|
-
this._initOnClickBody = this._initOnClickBody.bind(this);
|
|
31
|
-
this._onClickBody = this._onClickBody.bind(this);
|
|
32
|
-
this._onWindowBlur = this._onWindowBlur.bind(this);
|
|
33
|
-
}
|
|
34
|
-
ngOnInit() {
|
|
35
|
-
if (!isPlatformBrowser(this.platformId)) {
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
this._init();
|
|
39
|
-
}
|
|
40
|
-
ngOnDestroy() {
|
|
41
|
-
if (!isPlatformBrowser(this.platformId)) {
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
this._removeClickOutsideListener();
|
|
45
|
-
this._removeAttachOutsideOnClickListener();
|
|
46
|
-
this._removeWindowBlurListener();
|
|
47
|
-
}
|
|
48
|
-
ngOnChanges(changes) {
|
|
49
|
-
if (!isPlatformBrowser(this.platformId)) {
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
// tslint:disable-next-line:no-string-literal
|
|
53
|
-
if (changes['attachOutsideOnClick'] || changes['exclude'] || changes['emitOnBlur']) {
|
|
54
|
-
this._init();
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
_init() {
|
|
58
|
-
if (this.clickOutsideEvents !== '') {
|
|
59
|
-
this._events = this.clickOutsideEvents.split(',').map(e => e.trim());
|
|
60
|
-
}
|
|
61
|
-
this._excludeCheck();
|
|
62
|
-
if (this.attachOutsideOnClick) {
|
|
63
|
-
this._initAttachOutsideOnClickListener();
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
this._initOnClickBody();
|
|
67
|
-
}
|
|
68
|
-
if (this.emitOnBlur) {
|
|
69
|
-
this._initWindowBlurListener();
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
_initOnClickBody() {
|
|
73
|
-
if (this.delayClickOutsideInit) {
|
|
74
|
-
setTimeout(this._initClickOutsideListener.bind(this));
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
this._initClickOutsideListener();
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
_excludeCheck() {
|
|
81
|
-
if (this.exclude) {
|
|
82
|
-
try {
|
|
83
|
-
const nodes = Array.from(document.querySelectorAll(this.exclude));
|
|
84
|
-
if (nodes) {
|
|
85
|
-
this._nodesExcluded = nodes;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
catch (err) {
|
|
89
|
-
console.error('[ng-click-outside] Check your exclude selector syntax.', err);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
_onClickBody(ev) {
|
|
94
|
-
if (!this.clickOutsideEnabled) {
|
|
95
|
-
return;
|
|
96
|
-
}
|
|
97
|
-
if (this.excludeBeforeClick) {
|
|
98
|
-
this._excludeCheck();
|
|
99
|
-
}
|
|
100
|
-
if (!this._el.nativeElement.contains(ev.target) && !this._shouldExclude(ev.target)) {
|
|
101
|
-
this._emit(ev);
|
|
102
|
-
if (this.attachOutsideOnClick) {
|
|
103
|
-
this._removeClickOutsideListener();
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Resolves problem with outside click on iframe
|
|
109
|
-
* @see https://github.com/arkon/ng-click-outside/issues/32
|
|
110
|
-
*/
|
|
111
|
-
_onWindowBlur(ev) {
|
|
112
|
-
setTimeout(() => {
|
|
113
|
-
if (!document.hidden) {
|
|
114
|
-
this._emit(ev);
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
_emit(ev) {
|
|
119
|
-
if (!this.clickOutsideEnabled) {
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
this._ngZone.run(() => this.clickOutside.emit(ev));
|
|
123
|
-
}
|
|
124
|
-
_shouldExclude(target) {
|
|
125
|
-
// tslint:disable-next-line:prefer-const
|
|
126
|
-
for (let excludedNode of this._nodesExcluded) {
|
|
127
|
-
if (excludedNode.contains(target)) {
|
|
128
|
-
return true;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
return false;
|
|
132
|
-
}
|
|
133
|
-
_initClickOutsideListener() {
|
|
134
|
-
this._ngZone.runOutsideAngular(() => {
|
|
135
|
-
this._events.forEach(e => document.addEventListener(e, this._onClickBody));
|
|
136
|
-
});
|
|
137
|
-
}
|
|
138
|
-
_removeClickOutsideListener() {
|
|
139
|
-
this._ngZone.runOutsideAngular(() => {
|
|
140
|
-
this._events.forEach(e => document.removeEventListener(e, this._onClickBody));
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
_initAttachOutsideOnClickListener() {
|
|
144
|
-
this._ngZone.runOutsideAngular(() => {
|
|
145
|
-
this._events.forEach(e => this._el.nativeElement.addEventListener(e, this._initOnClickBody));
|
|
146
|
-
});
|
|
147
|
-
}
|
|
148
|
-
_removeAttachOutsideOnClickListener() {
|
|
149
|
-
this._ngZone.runOutsideAngular(() => {
|
|
150
|
-
this._events.forEach(e => this._el.nativeElement.removeEventListener(e, this._initOnClickBody));
|
|
151
|
-
});
|
|
152
|
-
}
|
|
153
|
-
_initWindowBlurListener() {
|
|
154
|
-
this._ngZone.runOutsideAngular(() => {
|
|
155
|
-
window.addEventListener('blur', this._onWindowBlur);
|
|
156
|
-
});
|
|
157
|
-
}
|
|
158
|
-
_removeWindowBlurListener() {
|
|
159
|
-
this._ngZone.runOutsideAngular(() => {
|
|
160
|
-
window.removeEventListener('blur', this._onWindowBlur);
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
ClickOutsideDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: ClickOutsideDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Directive });
|
|
165
|
-
ClickOutsideDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.0.1", type: ClickOutsideDirective, selector: "[clickOutside]", inputs: { clickOutsideEnabled: "clickOutsideEnabled", attachOutsideOnClick: "attachOutsideOnClick", delayClickOutsideInit: "delayClickOutsideInit", emitOnBlur: "emitOnBlur", exclude: "exclude", excludeBeforeClick: "excludeBeforeClick", clickOutsideEvents: "clickOutsideEvents" }, outputs: { clickOutside: "clickOutside" }, usesOnChanges: true, ngImport: i0 });
|
|
166
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: ClickOutsideDirective, decorators: [{
|
|
167
|
-
type: Directive,
|
|
168
|
-
args: [{ selector: '[clickOutside]' }]
|
|
169
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: undefined, decorators: [{
|
|
170
|
-
type: Inject,
|
|
171
|
-
args: [PLATFORM_ID]
|
|
172
|
-
}] }]; }, propDecorators: { clickOutsideEnabled: [{
|
|
173
|
-
type: Input
|
|
174
|
-
}], attachOutsideOnClick: [{
|
|
175
|
-
type: Input
|
|
176
|
-
}], delayClickOutsideInit: [{
|
|
177
|
-
type: Input
|
|
178
|
-
}], emitOnBlur: [{
|
|
179
|
-
type: Input
|
|
180
|
-
}], exclude: [{
|
|
181
|
-
type: Input
|
|
182
|
-
}], excludeBeforeClick: [{
|
|
183
|
-
type: Input
|
|
184
|
-
}], clickOutsideEvents: [{
|
|
185
|
-
type: Input
|
|
186
|
-
}], clickOutside: [{
|
|
187
|
-
type: Output
|
|
188
|
-
}] } });
|
|
189
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvZGlyZWN0aXZlcy9jbGljay1vdXRzaWRlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxFQUFFO0FBQ0YsNENBQTRDO0FBQzVDLHdFQUF3RTtBQUN4RSxFQUFFO0FBQ0YsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFJTCxNQUFNLEVBQ04sV0FBVyxHQUdaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQUVwRCw4Q0FBOEM7QUFFOUMsTUFBTSxPQUFPLHFCQUFxQjtJQW9CaEM7SUFDRSx5Q0FBeUM7SUFDakMsR0FBZTtJQUN2Qix5Q0FBeUM7SUFDakMsT0FBZSxFQUNNLFVBQWU7UUFIcEMsUUFBRyxHQUFILEdBQUcsQ0FBWTtRQUVmLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDTSxlQUFVLEdBQVYsVUFBVSxDQUFLO1FBdkJyQyx3QkFBbUIsR0FBRyxJQUFJLENBQUM7UUFFM0IseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBQzdCLDBCQUFxQixHQUFHLEtBQUssQ0FBQztRQUM5QixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRW5CLFlBQU8sR0FBRyxFQUFFLENBQUM7UUFDYix1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFFM0IsdUJBQWtCLEdBQUcsRUFBRSxDQUFDO1FBRXZCLGlCQUFZLEdBQXdCLElBQUksWUFBWSxFQUFTLENBQUM7UUFFeEUseUNBQXlDO1FBQ2pDLG1CQUFjLEdBQXVCLEVBQUUsQ0FBQztRQUNoRCx5Q0FBeUM7UUFDakMsWUFBTyxHQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBUXpDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENB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QUNMLENBQUM7SUFFTyx5QkFBeUI7UUFDL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDbEMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztrSEE1S1UscUJBQXFCLGtFQXlCdEIsV0FBVztzR0F6QlYscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUU7OzBCQTBCcEMsTUFBTTsyQkFBQyxXQUFXOzRDQXZCWixtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBRUcsb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBRUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvL1xyXG4vLyBodHRwczovL2dpdGh1Yi5jb20vYXJrb24vbmctY2xpY2stb3V0c2lkZVxyXG4vLyB0aGUgcHJvamVjdCBpcyBpbmFjdGl2ZSAtIHNvIGltb3ZlZCB0aGUgZGlyZWN0aXZlIGNvZGUgaW4gb3VyIHByb2plY3RcclxuLy9cclxuaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5qZWN0LFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBQTEFURk9STV9JRCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIE5nWm9uZSxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5cclxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmRpcmVjdGl2ZS1zZWxlY3RvclxyXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICdbY2xpY2tPdXRzaWRlXScgfSlcclxuZXhwb3J0IGNsYXNzIENsaWNrT3V0c2lkZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG5cclxuICBASW5wdXQoKSBjbGlja091dHNpZGVFbmFibGVkID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KCkgYXR0YWNoT3V0c2lkZU9uQ2xpY2sgPSBmYWxzZTtcclxuICBASW5wdXQoKSBkZWxheUNsaWNrT3V0c2lkZUluaXQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBlbWl0T25CbHVyID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpIGV4Y2x1ZGUgPSAnJztcclxuICBASW5wdXQoKSBleGNsdWRlQmVmb3JlQ2xpY2sgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgY2xpY2tPdXRzaWRlRXZlbnRzID0gJyc7XHJcblxyXG4gIEBPdXRwdXQoKSBjbGlja091dHNpZGU6IEV2ZW50RW1pdHRlcjxFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEV2ZW50PigpO1xyXG5cclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6dmFyaWFibGUtbmFtZVxyXG4gIHByaXZhdGUgX25vZGVzRXhjbHVkZWQ6IEFycmF5PEhUTUxFbGVtZW50PiA9IFtdO1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTp2YXJpYWJsZS1uYW1lXHJcbiAgcHJpdmF0ZSBfZXZlbnRzOiBBcnJheTxzdHJpbmc+ID0gWydjbGljayddO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTp2YXJpYWJsZS1uYW1lXHJcbiAgICBwcml2YXRlIF9lbDogRWxlbWVudFJlZixcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTp2YXJpYWJsZS1uYW1lXHJcbiAgICBwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSxcclxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogYW55KSB7XHJcbiAgICB0aGlzLl9pbml0T25DbGlja0JvZHkgPSB0aGlzLl9pbml0T25DbGlja0JvZHkuYmluZCh0aGlzKTtcclxuICAgIHRoaXMuX29uQ2xpY2tCb2R5ID0gdGhpcy5fb25DbGlja0JvZHkuYmluZCh0aGlzKTtcclxuICAgIHRoaXMuX29uV2luZG93Qmx1ciA9IHRoaXMuX29uV2luZG93Qmx1ci5iaW5kKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHsgcmV0dXJuOyB9XHJcblxyXG4gICAgdGhpcy5faW5pdCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHsgcmV0dXJuOyB9XHJcblxyXG4gICAgdGhpcy5fcmVtb3ZlQ2xpY2tPdXRzaWRlTGlzdGVuZXIoKTtcclxuICAgIHRoaXMuX3JlbW92ZUF0dGFjaE91dHNpZGVPbkNsaWNrTGlzdGVuZXIoKTtcclxuICAgIHRoaXMuX3JlbW92ZVdpbmRvd0JsdXJMaXN0ZW5lcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKCFpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7IHJldHVybjsgfVxyXG5cclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1zdHJpbmctbGl0ZXJhbFxyXG4gICAgaWYgKGNoYW5nZXNbJ2F0dGFjaE91dHNpZGVPbkNsaWNrJ10gfHwgY2hhbmdlc1snZXhjbHVkZSddIHx8IGNoYW5nZXNbJ2VtaXRPbkJsdXInXSkge1xyXG4gICAgICB0aGlzLl9pbml0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY2xpY2tPdXRzaWRlRXZlbnRzICE9PSAnJykge1xyXG4gICAgICB0aGlzLl9ldmVudHMgPSB0aGlzLmNsaWNrT3V0c2lkZUV2ZW50cy5zcGxpdCgnLCcpLm1hcChlID0+IGUudHJpbSgpKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9leGNsdWRlQ2hlY2soKTtcclxuXHJcbiAgICBpZiAodGhpcy5hdHRhY2hPdXRzaWRlT25DbGljaykge1xyXG4gICAgICB0aGlzLl9pbml0QXR0YWNoT3V0c2lkZU9uQ2xpY2tMaXN0ZW5lcigpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5faW5pdE9uQ2xpY2tCb2R5KCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuZW1pdE9uQmx1cikge1xyXG4gICAgICB0aGlzLl9pbml0V2luZG93Qmx1ckxpc3RlbmVyKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pbml0T25DbGlja0JvZHkoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5kZWxheUNsaWNrT3V0c2lkZUluaXQpIHtcclxuICAgICAgc2V0VGltZW91dCh0aGlzLl9pbml0Q2xpY2tPdXRzaWRlTGlzdGVuZXIuYmluZCh0aGlzKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLl9pbml0Q2xpY2tPdXRzaWRlTGlzdGVuZXIoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2V4Y2x1ZGVDaGVjaygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmV4Y2x1ZGUpIHtcclxuICAgICAgdHJ5IHtcclxuICAgICAgICBjb25zdCBub2RlcyA9IEFycmF5LmZyb20oZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCh0aGlzLmV4Y2x1ZGUpKSBhcyBBcnJheTxIVE1MRWxlbWVudD47XHJcbiAgICAgICAgaWYgKG5vZGVzKSB7XHJcbiAgICAgICAgICB0aGlzLl9ub2Rlc0V4Y2x1ZGVkID0gbm9kZXM7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGNhdGNoIChlcnIpIHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKCdbbmctY2xpY2stb3V0c2lkZV0gQ2hlY2sgeW91ciBleGNsdWRlIHNlbGVjdG9yIHN5bnRheC4nLCBlcnIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9vbkNsaWNrQm9keShldjogRXZlbnQpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5jbGlja091dHNpZGVFbmFibGVkKSB7IHJldHVybjsgfVxyXG5cclxuICAgIGlmICh0aGlzLmV4Y2x1ZGVCZWZvcmVDbGljaykge1xyXG4gICAgICB0aGlzLl9leGNsdWRlQ2hlY2soKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoIXRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZXYudGFyZ2V0KSAmJiAhdGhpcy5fc2hvdWxkRXhjbHVkZShldi50YXJnZXQpKSB7XHJcbiAgICAgIHRoaXMuX2VtaXQoZXYpO1xyXG5cclxuICAgICAgaWYgKHRoaXMuYXR0YWNoT3V0c2lkZU9uQ2xpY2spIHtcclxuICAgICAgICB0aGlzLl9yZW1vdmVDbGlja091dHNpZGVMaXN0ZW5lcigpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZXNvbHZlcyBwcm9ibGVtIHdpdGggb3V0c2lkZSBjbGljayBvbiBpZnJhbWVcclxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hcmtvbi9uZy1jbGljay1vdXRzaWRlL2lzc3Vlcy8zMlxyXG4gICAqL1xyXG4gIHByaXZhdGUgX29uV2luZG93Qmx1cihldjogRXZlbnQpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBpZiAoIWRvY3VtZW50LmhpZGRlbikge1xyXG4gICAgICAgIHRoaXMuX2VtaXQoZXYpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2VtaXQoZXY6IEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuY2xpY2tPdXRzaWRlRW5hYmxlZCkgeyByZXR1cm47IH1cclxuXHJcbiAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHRoaXMuY2xpY2tPdXRzaWRlLmVtaXQoZXYpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3Nob3VsZEV4Y2x1ZGUodGFyZ2V0OiBhbnkpOiBib29sZWFuIHtcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpwcmVmZXItY29uc3RcclxuICAgIGZvciAobGV0IGV4Y2x1ZGVkTm9kZSBvZiB0aGlzLl9ub2Rlc0V4Y2x1ZGVkKSB7XHJcbiAgICAgIGlmIChleGNsdWRlZE5vZGUuY29udGFpbnModGFyZ2V0KSkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaW5pdENsaWNrT3V0c2lkZUxpc3RlbmVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcclxuICAgICAgdGhpcy5fZXZlbnRzLmZvckVhY2goZSA9PiBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKGUsIHRoaXMuX29uQ2xpY2tCb2R5KSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3JlbW92ZUNsaWNrT3V0c2lkZUxpc3RlbmVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcclxuICAgICAgdGhpcy5fZXZlbnRzLmZvckVhY2goZSA9PiBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKGUsIHRoaXMuX29uQ2xpY2tCb2R5KSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2luaXRBdHRhY2hPdXRzaWRlT25DbGlja0xpc3RlbmVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcclxuICAgICAgdGhpcy5fZXZlbnRzLmZvckVhY2goZSA9PiB0aGlzLl9lbC5uYXRpdmVFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoZSwgdGhpcy5faW5pdE9uQ2xpY2tCb2R5KSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3JlbW92ZUF0dGFjaE91dHNpZGVPbkNsaWNrTGlzdGVuZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xyXG4gICAgICB0aGlzLl9ldmVudHMuZm9yRWFjaChlID0+IHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLCB0aGlzLl9pbml0T25DbGlja0JvZHkpKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaW5pdFdpbmRvd0JsdXJMaXN0ZW5lcigpOiB2b2lkIHtcclxuICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdibHVyJywgdGhpcy5fb25XaW5kb3dCbHVyKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfcmVtb3ZlV2luZG93Qmx1ckxpc3RlbmVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fbmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcclxuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2JsdXInLCB0aGlzLl9vbldpbmRvd0JsdXIpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Directive, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class DynamicComponentHostDirective {
|
|
4
|
-
constructor(viewContainerRef) {
|
|
5
|
-
this.viewContainerRef = viewContainerRef;
|
|
6
|
-
this.hostName = '';
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
DynamicComponentHostDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: DynamicComponentHostDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
10
|
-
DynamicComponentHostDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.0.1", type: DynamicComponentHostDirective, selector: "[appDynamicComponentHost]", inputs: { hostName: "hostName" }, ngImport: i0 });
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.1", ngImport: i0, type: DynamicComponentHostDirective, decorators: [{
|
|
12
|
-
type: Directive,
|
|
13
|
-
args: [{ selector: '[appDynamicComponentHost]' }]
|
|
14
|
-
}], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { hostName: [{
|
|
15
|
-
type: Input
|
|
16
|
-
}] } });
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQtaG9zdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvZGlyZWN0aXZlcy9keW5hbWljLWNvbXBvbmVudC1ob3N0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFvQixLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBR25FLE1BQU0sT0FBTyw2QkFBNkI7SUFFeEMsWUFBbUIsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFENUMsYUFBUSxHQUFXLEVBQUUsQ0FBQztJQUN5QixDQUFDOzswSEFGOUMsNkJBQTZCOzhHQUE3Qiw2QkFBNkI7MkZBQTdCLDZCQUE2QjtrQkFEekMsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSwyQkFBMkIsRUFBRTt1R0FFekMsUUFBUTtzQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgVmlld0NvbnRhaW5lclJlZiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1thcHBEeW5hbWljQ29tcG9uZW50SG9zdF0nIH0pXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljQ29tcG9uZW50SG9zdERpcmVjdGl2ZSB7XHJcbiAgQElucHV0KCkgaG9zdE5hbWU6IHN0cmluZyA9ICcnO1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmKSB7fVxyXG59Il19
|