@indice/ng-components 0.2.174 → 0.3.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/_styles.scss +63 -15
- package/{esm2020 → esm2022}/indice-ng-components.mjs +4 -4
- package/esm2022/lib/controls/advanced-search/advanced-search.component.mjs +156 -0
- package/esm2022/lib/controls/advanced-search/models.mjs +109 -0
- package/esm2022/lib/controls/avatar-initials/avatar-initials.component.mjs +48 -0
- package/{esm2020 → esm2022}/lib/controls/breadcrumb/breadcrumb-item.mjs +14 -14
- package/{esm2020 → esm2022}/lib/controls/breadcrumb/breadcrumb.component.mjs +26 -26
- package/{esm2020 → esm2022}/lib/controls/collapsible-panel/collapsible-panel.component.mjs +20 -20
- package/esm2022/lib/controls/combobox/combobox.component.mjs +121 -0
- package/esm2022/lib/controls/content-tile/content-tile-header/content-tile-header.component.mjs +17 -0
- package/esm2022/lib/controls/content-tile/content-tile-item/content-tile-item.component.mjs +19 -0
- package/esm2022/lib/controls/content-tile/content-tile.component.mjs +63 -0
- package/esm2022/lib/controls/date-picker/date-picker.component.mjs +300 -0
- package/esm2022/lib/controls/drop-down-menu/drop-down-menu.component.mjs +72 -0
- package/{esm2020 → esm2022}/lib/controls/kpi-tile/kpi-tile.component.mjs +43 -43
- package/esm2022/lib/controls/language-selection/language-selection.component.mjs +31 -0
- package/{esm2020 → esm2022}/lib/controls/list-view/list-column.component.mjs +25 -25
- package/{esm2020 → esm2022}/lib/controls/list-view/list-details-section.component.mjs +17 -17
- package/{esm2020 → esm2022}/lib/controls/list-view/list-tile.component.mjs +17 -17
- package/esm2022/lib/controls/list-view/list-view-empty-state.component.mjs +29 -0
- package/esm2022/lib/controls/list-view/list-view.component.mjs +210 -0
- package/{esm2020 → esm2022}/lib/controls/nav-links-list/nav-links-list.component.mjs +54 -54
- package/esm2022/lib/controls/notifications-indicator/notifications-indicator.component.mjs +79 -0
- package/esm2022/lib/controls/pager/pager.component.mjs +130 -0
- package/esm2022/lib/controls/progress-bar/progress-bar.component.mjs +46 -0
- package/esm2022/lib/controls/side-pane/side-pane.component.mjs +87 -0
- package/esm2022/lib/controls/skeleton-loader/skeleton-loader.component.mjs +29 -0
- package/esm2022/lib/controls/stats-grid/stats-grid.component.mjs +49 -0
- package/{esm2020 → esm2022}/lib/controls/stepper/lib-step-info.directive.mjs +16 -16
- package/{esm2020 → esm2022}/lib/controls/stepper/lib-step-label.directive.mjs +16 -16
- package/esm2022/lib/controls/stepper/lib-step.component.mjs +81 -0
- package/esm2022/lib/controls/stepper/lib-stepper.component.mjs +108 -0
- package/{esm2020 → esm2022}/lib/controls/stepper/types/step-selected-event.mjs +3 -3
- package/{esm2020 → esm2022}/lib/controls/stepper/types/stepper-type.mjs +11 -11
- package/esm2022/lib/controls/tabs/lib-tab-group.component.mjs +66 -0
- package/{esm2020 → esm2022}/lib/controls/tabs/lib-tab-label.directive.mjs +16 -16
- package/{esm2020 → esm2022}/lib/controls/tabs/lib-tab.component.mjs +57 -57
- package/{esm2020 → esm2022}/lib/controls/toaster/toaster-container.component.mjs +28 -28
- package/{esm2020 → esm2022}/lib/controls/toaster/toaster.component.mjs +31 -31
- package/esm2022/lib/controls/toggle/toggle.component.mjs +64 -0
- package/esm2022/lib/controls/toggle-button/toggle-button.component.mjs +87 -0
- package/esm2022/lib/controls/toggle-buttons-list/toggle-buttons-list.component.mjs +34 -0
- package/esm2022/lib/controls/user-profile-menu/user-profile-menu.component.mjs +71 -0
- package/esm2022/lib/directives/click-outside.directive.mjs +189 -0
- package/{esm2020 → esm2022}/lib/directives/dynamic-component-host.directive.mjs +17 -17
- package/esm2022/lib/helpers/base-list.component.mjs +230 -0
- package/esm2022/lib/icons.mjs +36 -0
- package/{esm2020 → esm2022}/lib/layouts/shell/shell-footer/shell-footer.component.mjs +19 -19
- package/esm2022/lib/layouts/shell/shell-header/shell-header.component.mjs +130 -0
- package/esm2022/lib/layouts/shell/shell-layout/shell-layout.component.mjs +90 -0
- package/{esm2020 → esm2022}/lib/layouts/shell/shell-sidebar/shell-sidebar.component.mjs +54 -54
- package/{esm2020 → esm2022}/lib/layouts/shell/shell-sidebar-header/shell-sidebar-header.component.mjs +45 -45
- package/esm2022/lib/layouts/shell/shell-sidebar-layout/shell-sidebar-layout.component.mjs +30 -0
- package/{esm2020 → esm2022}/lib/layouts/shell/shell-stacked-layout/shell-stacked-layout.component.mjs +20 -20
- package/esm2022/lib/layouts/views/form-layout/form-layout.component.mjs +86 -0
- package/esm2022/lib/layouts/views/model-view-layout/model-view-layout.component.mjs +101 -0
- package/esm2022/lib/layouts/views/side-view-layout/side-view-layout.component.mjs +106 -0
- package/esm2022/lib/layouts/views/view-layout/view-layout.component.mjs +104 -0
- package/esm2022/lib/ng-components.module.mjs +320 -0
- package/esm2022/lib/pages/auth/auth-callback/auth-callback.component.mjs +30 -0
- package/esm2022/lib/pages/auth/auth-renew/auth-renew.component.mjs +31 -0
- package/{esm2020 → esm2022}/lib/pages/auth/logged-out/logged-out.component.mjs +28 -28
- package/{esm2020 → esm2022}/lib/pages/http-status/error/error.component.mjs +17 -17
- package/{esm2020 → esm2022}/lib/pages/http-status/page-not-found/page-not-found.component.mjs +15 -15
- package/{esm2020 → esm2022}/lib/pages/http-status/unauthorized/unauthorized.component.mjs +14 -14
- package/esm2022/lib/pipes/address.pipe.mjs +21 -0
- package/esm2022/lib/pipes/duration-format.pipe.mjs +64 -0
- package/esm2022/lib/pipes/short-number.pipe.mjs +43 -0
- package/esm2022/lib/services/breadcrumb.service.mjs +174 -0
- package/{esm2020 → esm2022}/lib/services/component-loader/component-loader-options.class.mjs +7 -7
- package/esm2022/lib/services/component-loader/component-loader.class.mjs +188 -0
- package/esm2022/lib/services/component-loader/component-loader.factory.mjs +32 -0
- package/{esm2020 → esm2022}/lib/services/component-loader/content-ref.class.mjs +12 -12
- package/esm2022/lib/services/modal-service/modal-backdrop-component.mjs +44 -0
- package/esm2022/lib/services/modal-service/modal-container-component.mjs +126 -0
- package/{esm2020 → esm2022}/lib/services/modal-service/modal-options.class.mjs +35 -35
- package/esm2022/lib/services/modal-service/modal-service.mjs +220 -0
- package/{esm2020 → esm2022}/lib/services/modal-service/modal-styles.class.mjs +10 -10
- package/{esm2020 → esm2022}/lib/services/modal-service/modal.class.mjs +27 -27
- package/{esm2020 → esm2022}/lib/services/toaster.service.mjs +26 -26
- package/esm2022/lib/services/user-settings.service.mjs +35 -0
- package/esm2022/lib/services/utilities.service.mjs +47 -0
- package/{esm2020 → esm2022}/lib/tokens.mjs +7 -7
- package/esm2022/lib/types.mjs +133 -0
- package/{esm2020 → esm2022}/public-api.mjs +78 -70
- package/{fesm2020 → fesm2022}/indice-ng-components.mjs +4898 -4592
- package/fesm2022/indice-ng-components.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/controls/advanced-search/advanced-search.component.d.ts +40 -40
- package/lib/controls/advanced-search/models.d.ts +91 -91
- package/lib/controls/avatar-initials/avatar-initials.component.d.ts +14 -14
- package/lib/controls/breadcrumb/breadcrumb-item.d.ts +7 -7
- package/lib/controls/breadcrumb/breadcrumb.component.d.ts +12 -12
- package/lib/controls/collapsible-panel/collapsible-panel.component.d.ts +10 -10
- package/lib/controls/combobox/combobox.component.d.ts +35 -34
- package/lib/controls/content-tile/content-tile-header/content-tile-header.component.d.ts +7 -0
- package/lib/controls/content-tile/content-tile-item/content-tile-item.component.d.ts +8 -0
- package/lib/controls/content-tile/content-tile.component.d.ts +23 -0
- package/lib/controls/date-picker/date-picker.component.d.ts +53 -53
- package/lib/controls/drop-down-menu/drop-down-menu.component.d.ts +26 -26
- package/lib/controls/kpi-tile/kpi-tile.component.d.ts +15 -15
- package/lib/controls/language-selection/language-selection.component.d.ts +14 -14
- package/lib/controls/list-view/list-column.component.d.ts +9 -9
- package/lib/controls/list-view/list-details-section.component.d.ts +7 -7
- package/lib/controls/list-view/list-tile.component.d.ts +7 -7
- package/lib/controls/list-view/list-view-empty-state.component.d.ts +11 -11
- package/lib/controls/list-view/list-view.component.d.ts +62 -61
- package/lib/controls/nav-links-list/nav-links-list.component.d.ts +21 -21
- package/lib/controls/notifications-indicator/notifications-indicator.component.d.ts +22 -22
- package/lib/controls/pager/pager.component.d.ts +36 -36
- package/lib/controls/progress-bar/progress-bar.component.d.ts +16 -0
- package/lib/controls/side-pane/side-pane.component.d.ts +22 -18
- package/lib/controls/skeleton-loader/skeleton-loader.component.d.ts +12 -11
- package/lib/controls/stats-grid/stats-grid.component.d.ts +16 -0
- package/lib/controls/stepper/lib-step-info.directive.d.ts +8 -8
- package/lib/controls/stepper/lib-step-label.directive.d.ts +8 -8
- package/lib/controls/stepper/lib-step.component.d.ts +34 -34
- package/lib/controls/stepper/lib-stepper.component.d.ts +43 -43
- package/lib/controls/stepper/types/step-selected-event.d.ts +12 -12
- package/lib/controls/stepper/types/stepper-type.d.ts +10 -10
- package/lib/controls/tabs/lib-tab-group.component.d.ts +21 -21
- package/lib/controls/tabs/lib-tab-label.directive.d.ts +8 -8
- package/lib/controls/tabs/lib-tab.component.d.ts +24 -24
- package/lib/controls/toaster/toaster-container.component.d.ts +13 -13
- package/lib/controls/toaster/toaster.component.d.ts +15 -15
- package/lib/controls/toggle/toggle.component.d.ts +19 -19
- package/lib/controls/toggle-button/toggle-button.component.d.ts +25 -25
- package/lib/controls/toggle-buttons-list/toggle-buttons-list.component.d.ts +15 -14
- package/lib/controls/user-profile-menu/user-profile-menu.component.d.ts +24 -24
- package/lib/directives/click-outside.directive.d.ts +40 -40
- package/lib/directives/dynamic-component-host.directive.d.ts +9 -9
- package/lib/helpers/base-list.component.d.ts +54 -53
- package/lib/icons.d.ts +34 -34
- package/lib/layouts/shell/shell-footer/shell-footer.component.d.ts +8 -8
- package/lib/layouts/shell/shell-header/shell-header.component.d.ts +39 -39
- package/lib/layouts/shell/shell-layout/shell-layout.component.d.ts +26 -26
- package/lib/layouts/shell/shell-sidebar/shell-sidebar.component.d.ts +20 -20
- package/lib/layouts/shell/shell-sidebar-header/shell-sidebar-header.component.d.ts +14 -14
- package/lib/layouts/shell/shell-sidebar-layout/shell-sidebar-layout.component.d.ts +15 -15
- package/lib/layouts/shell/shell-stacked-layout/shell-stacked-layout.component.d.ts +10 -10
- package/lib/layouts/views/form-layout/form-layout.component.d.ts +26 -24
- package/lib/layouts/views/model-view-layout/model-view-layout.component.d.ts +42 -42
- package/lib/layouts/views/side-view-layout/side-view-layout.component.d.ts +29 -28
- package/lib/layouts/views/view-layout/view-layout.component.d.ts +31 -31
- package/lib/ng-components.module.d.ts +71 -65
- package/lib/pages/auth/auth-callback/auth-callback.component.d.ts +13 -13
- package/lib/pages/auth/auth-renew/auth-renew.component.d.ts +12 -12
- package/lib/pages/auth/logged-out/logged-out.component.d.ts +12 -12
- package/lib/pages/http-status/error/error.component.d.ts +8 -8
- package/lib/pages/http-status/page-not-found/page-not-found.component.d.ts +8 -8
- package/lib/pages/http-status/unauthorized/unauthorized.component.d.ts +8 -8
- package/lib/pipes/address.pipe.d.ts +8 -8
- package/lib/pipes/duration-format.pipe.d.ts +8 -8
- package/lib/pipes/short-number.pipe.d.ts +7 -0
- package/lib/services/breadcrumb.service.d.ts +29 -29
- package/lib/services/component-loader/component-loader-options.class.d.ts +30 -30
- package/lib/services/component-loader/component-loader.class.d.ts +92 -92
- package/lib/services/component-loader/component-loader.factory.d.ts +24 -24
- package/lib/services/component-loader/content-ref.class.d.ts +12 -12
- package/lib/services/modal-service/modal-backdrop-component.d.ts +20 -20
- package/lib/services/modal-service/modal-container-component.d.ts +33 -33
- package/lib/services/modal-service/modal-options.class.d.ts +81 -81
- package/lib/services/modal-service/modal-service.d.ts +58 -58
- package/lib/services/modal-service/modal-styles.class.d.ts +10 -10
- package/lib/services/modal-service/modal.class.d.ts +43 -43
- package/lib/services/toaster.service.d.ts +11 -11
- package/lib/services/user-settings.service.d.ts +13 -13
- package/lib/services/utilities.service.d.ts +11 -11
- package/lib/tokens.d.ts +10 -10
- package/lib/types.d.ts +179 -177
- package/package.json +14 -21
- package/public-api.d.ts +68 -60
- package/esm2020/lib/controls/advanced-search/advanced-search.component.mjs +0 -156
- package/esm2020/lib/controls/advanced-search/models.mjs +0 -109
- package/esm2020/lib/controls/avatar-initials/avatar-initials.component.mjs +0 -48
- package/esm2020/lib/controls/combobox/combobox.component.mjs +0 -117
- package/esm2020/lib/controls/date-picker/date-picker.component.mjs +0 -292
- package/esm2020/lib/controls/drop-down-menu/drop-down-menu.component.mjs +0 -72
- package/esm2020/lib/controls/language-selection/language-selection.component.mjs +0 -31
- package/esm2020/lib/controls/list-view/list-view-empty-state.component.mjs +0 -29
- package/esm2020/lib/controls/list-view/list-view.component.mjs +0 -206
- package/esm2020/lib/controls/notifications-indicator/notifications-indicator.component.mjs +0 -79
- package/esm2020/lib/controls/pager/pager.component.mjs +0 -130
- package/esm2020/lib/controls/side-pane/side-pane.component.mjs +0 -72
- package/esm2020/lib/controls/skeleton-loader/skeleton-loader.component.mjs +0 -25
- package/esm2020/lib/controls/stepper/lib-step.component.mjs +0 -81
- package/esm2020/lib/controls/stepper/lib-stepper.component.mjs +0 -108
- package/esm2020/lib/controls/tabs/lib-tab-group.component.mjs +0 -66
- package/esm2020/lib/controls/toggle/toggle.component.mjs +0 -64
- package/esm2020/lib/controls/toggle-button/toggle-button.component.mjs +0 -87
- package/esm2020/lib/controls/toggle-buttons-list/toggle-buttons-list.component.mjs +0 -31
- package/esm2020/lib/controls/user-profile-menu/user-profile-menu.component.mjs +0 -71
- package/esm2020/lib/directives/click-outside.directive.mjs +0 -189
- package/esm2020/lib/helpers/base-list.component.mjs +0 -226
- package/esm2020/lib/icons.mjs +0 -36
- package/esm2020/lib/layouts/shell/shell-header/shell-header.component.mjs +0 -130
- package/esm2020/lib/layouts/shell/shell-layout/shell-layout.component.mjs +0 -90
- package/esm2020/lib/layouts/shell/shell-sidebar-layout/shell-sidebar-layout.component.mjs +0 -30
- package/esm2020/lib/layouts/views/form-layout/form-layout.component.mjs +0 -80
- package/esm2020/lib/layouts/views/model-view-layout/model-view-layout.component.mjs +0 -101
- package/esm2020/lib/layouts/views/side-view-layout/side-view-layout.component.mjs +0 -98
- package/esm2020/lib/layouts/views/view-layout/view-layout.component.mjs +0 -104
- package/esm2020/lib/ng-components.module.mjs +0 -288
- package/esm2020/lib/pages/auth/auth-callback/auth-callback.component.mjs +0 -30
- package/esm2020/lib/pages/auth/auth-renew/auth-renew.component.mjs +0 -31
- package/esm2020/lib/pipes/address.pipe.mjs +0 -21
- package/esm2020/lib/pipes/duration-format.pipe.mjs +0 -64
- package/esm2020/lib/services/breadcrumb.service.mjs +0 -174
- package/esm2020/lib/services/component-loader/component-loader.class.mjs +0 -188
- package/esm2020/lib/services/component-loader/component-loader.factory.mjs +0 -32
- package/esm2020/lib/services/modal-service/modal-backdrop-component.mjs +0 -44
- package/esm2020/lib/services/modal-service/modal-container-component.mjs +0 -126
- package/esm2020/lib/services/modal-service/modal-service.mjs +0 -220
- package/esm2020/lib/services/user-settings.service.mjs +0 -35
- package/esm2020/lib/services/utilities.service.mjs +0 -47
- package/esm2020/lib/types.mjs +0 -132
- package/fesm2015/indice-ng-components.mjs +0 -4852
- package/fesm2015/indice-ng-components.mjs.map +0 -1
- package/fesm2020/indice-ng-components.mjs.map +0 -1
|
@@ -0,0 +1,29 @@
|
|
|
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 = 7;
|
|
7
|
+
this.type = 'tiles'; // 'large-tile', 'table'
|
|
8
|
+
this.deckClass = 'cards-deck-4'; // 'large-tile', 'table'
|
|
9
|
+
}
|
|
10
|
+
ngOnInit() {
|
|
11
|
+
}
|
|
12
|
+
counter(i) {
|
|
13
|
+
return new Array(i);
|
|
14
|
+
}
|
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: SkeletonLoaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
16
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.6", type: SkeletonLoaderComponent, selector: "lib-skeleton-loader", inputs: { count: "count", type: "type", deckClass: ["deck-class", "deckClass"] }, ngImport: i0, template: "<div [class]=\"deckClass\" *ngIf=\"type === 'tiles'\">\r\n <div class=\"relative p-4 w-80 bg-white overflow-hidden shadow hover:shadow-md rounded-sm\" *ngFor=\"let i of counter(count)\">\r\n <div class=\"animate-pulse flex flex-col\">\r\n <div class=\"rounded w-full h-32 bg-gray-200\"></div>\r\n \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>\r\n\r\n </div>\r\n </div>\r\n</div>\r\n \r\n<div class=\"cards-deck-1\" *ngIf=\"type === 'table'\">\r\n <div class=\"border border-light-blue-300 shadow rounded-sm p-4 max-w-sm w-full mx-auto mb-4\" *ngFor=\"let i of counter(count)\">\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</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
17
|
+
}
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: SkeletonLoaderComponent, decorators: [{
|
|
19
|
+
type: Component,
|
|
20
|
+
args: [{ selector: 'lib-skeleton-loader', template: "<div [class]=\"deckClass\" *ngIf=\"type === 'tiles'\">\r\n <div class=\"relative p-4 w-80 bg-white overflow-hidden shadow hover:shadow-md rounded-sm\" *ngFor=\"let i of counter(count)\">\r\n <div class=\"animate-pulse flex flex-col\">\r\n <div class=\"rounded w-full h-32 bg-gray-200\"></div>\r\n \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>\r\n\r\n </div>\r\n </div>\r\n</div>\r\n \r\n<div class=\"cards-deck-1\" *ngIf=\"type === 'table'\">\r\n <div class=\"border border-light-blue-300 shadow rounded-sm p-4 max-w-sm w-full mx-auto mb-4\" *ngFor=\"let i of counter(count)\">\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</div>" }]
|
|
21
|
+
}], ctorParameters: () => [], propDecorators: { count: [{
|
|
22
|
+
type: Input
|
|
23
|
+
}], type: [{
|
|
24
|
+
type: Input
|
|
25
|
+
}], deckClass: [{
|
|
26
|
+
type: Input,
|
|
27
|
+
args: ['deck-class']
|
|
28
|
+
}] } });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2tlbGV0b24tbG9hZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9za2VsZXRvbi1sb2FkZXIvc2tlbGV0b24tbG9hZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9za2VsZXRvbi1sb2FkZXIvc2tlbGV0b24tbG9hZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7QUFPekQsTUFBTSxPQUFPLHVCQUF1QjtJQUlsQztRQUhTLFVBQUssR0FBRyxDQUFDLENBQUM7UUFDVixTQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsd0JBQXdCO1FBQzVCLGNBQVMsR0FBRyxjQUFjLENBQUMsQ0FBQyx3QkFBd0I7SUFDekQsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQztJQUVNLE9BQU8sQ0FBQyxDQUFTO1FBQ3RCLE9BQU8sSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdEIsQ0FBQzs4R0FYVSx1QkFBdUI7a0dBQXZCLHVCQUF1Qiw2SUNQcEMsMmdEQWlDTTs7MkZEMUJPLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFFRSxxQkFBcUI7d0RBSXRCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ2UsU0FBUztzQkFBN0IsS0FBSzt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICdsaWItc2tlbGV0b24tbG9hZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc2tlbGV0b24tbG9hZGVyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2tlbGV0b25Mb2FkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGNvdW50ID0gNztcclxuICBASW5wdXQoKSB0eXBlID0gJ3RpbGVzJzsgLy8gJ2xhcmdlLXRpbGUnLCAndGFibGUnXHJcbiAgQElucHV0KCdkZWNrLWNsYXNzJykgZGVja0NsYXNzID0gJ2NhcmRzLWRlY2stNCc7IC8vICdsYXJnZS10aWxlJywgJ3RhYmxlJ1xyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvdW50ZXIoaTogbnVtYmVyKTogbnVtYmVyW10ge1xyXG4gICAgcmV0dXJuIG5ldyBBcnJheShpKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgW2NsYXNzXT1cImRlY2tDbGFzc1wiICpuZ0lmPVwidHlwZSA9PT0gJ3RpbGVzJ1wiPlxyXG4gIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSBwLTQgdy04MCBiZy13aGl0ZSBvdmVyZmxvdy1oaWRkZW4gc2hhZG93IGhvdmVyOnNoYWRvdy1tZCByb3VuZGVkLXNtXCIgICpuZ0Zvcj1cImxldCBpIG9mIGNvdW50ZXIoY291bnQpXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYW5pbWF0ZS1wdWxzZSBmbGV4IGZsZXgtY29sXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3VuZGVkIHctZnVsbCBoLTMyIGJnLWdyYXktMjAwXCI+PC9kaXY+XHJcbiAgICAgIFxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBtdC01XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbCBoLTUgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yIHctMTAvMTIgaC0zIGJnLWdyYXktMjAwIHJvdW5kZWRcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMiB3LTgvMTIgaC0zIGJnLWdyYXktMjAwIHJvdW5kZWRcIj48L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZ3JpZCBncmlkLWNvbHMtMiBtdC01IGdhcC14LTIgZ2FwLXktMVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yIHctZnVsbCBoLTMgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtdC0yIHctZnVsbCBoLTMgYmctZ3JheS0yMDAgcm91bmRlZFwiPjwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiAgXHJcbjxkaXYgY2xhc3M9XCJjYXJkcy1kZWNrLTFcIiAgKm5nSWY9XCJ0eXBlID09PSAndGFibGUnXCI+XHJcbiAgPGRpdiBjbGFzcz1cImJvcmRlciBib3JkZXItbGlnaHQtYmx1ZS0zMDAgc2hhZG93IHJvdW5kZWQtc20gcC00IG1heC13LXNtIHctZnVsbCBteC1hdXRvIG1iLTRcIiAqbmdGb3I9XCJsZXQgaSBvZiBjb3VudGVyKGNvdW50KVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImFuaW1hdGUtcHVsc2UgZmxleCBzcGFjZS14LTRcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInJvdW5kZWQtZnVsbCBiZy1saWdodC1ibHVlLTQwMCBoLTEyIHctMTJcIj4mbmJzcDs8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZsZXgtMSBzcGFjZS15LTQgcHktMVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoLTQgYmctbGlnaHQtYmx1ZS00MDAgcm91bmRlZCB3LTMvNFwiPiZuYnNwOzwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJzcGFjZS15LTJcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoLTQgYmctbGlnaHQtYmx1ZS00MDAgcm91bmRlZFwiPiZuYnNwOzwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImgtNCBiZy1saWdodC1ibHVlLTQwMCByb3VuZGVkIHctNS82XCI+Jm5ic3A7PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class StatsGridComponent {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.busy = false;
|
|
7
|
+
this.count = 6;
|
|
8
|
+
this.loader = ['', '', '', '', '', ''];
|
|
9
|
+
this.mode = 'normal';
|
|
10
|
+
this.labels = ['Online', 'Offline', 'Faulted'];
|
|
11
|
+
this.values = [10, 20, 30];
|
|
12
|
+
this.colors = [
|
|
13
|
+
'rgb(53, 177, 201, 0.6)',
|
|
14
|
+
'rgb(168, 162, 158, 0.2)',
|
|
15
|
+
'rgb(233, 96, 96, 0.8)'
|
|
16
|
+
];
|
|
17
|
+
}
|
|
18
|
+
ngOnChanges(changes) {
|
|
19
|
+
if (changes.count) {
|
|
20
|
+
this.loader = [];
|
|
21
|
+
for (let i = 0; i <= this.count; i++) {
|
|
22
|
+
this.loader.push('');
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
isNumber(value) {
|
|
27
|
+
return !isNaN(Number(value));
|
|
28
|
+
;
|
|
29
|
+
}
|
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: StatsGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.6", type: StatsGridComponent, selector: "lib-stats-grid", inputs: { busy: "busy", count: "count", mode: "mode", labels: "labels", values: "values", colors: "colors" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!busy\">\r\n <ul role=\"list\" class=\"grid gap-1\"\r\n [class.grid-cols-4]=\"mode==='normal'\"\r\n [class.grid-flow-col]=\"mode!=='normal'\">\r\n <ng-container *ngFor=\"let value of values; index as i\">\r\n <li class=\"col-span-1 flex pb-2\" *ngIf=\"mode==='normal'\">\r\n <div class=\"grid-cols-1 border-l-2 px-1\" [style]=\"'border-color:' + colors[i]\">\r\n <div class=\"text-xs text-ellipsis overflow-hidden\">{{labels[i]}}</div>\r\n <div *ngIf=\"isNumber(values[i])\" class=\"font-medium text-sm md:text-lg text-ellipsis overflow-hidden\">{{values[i] | number:'1.0-2':'el'}}</div>\r\n <div *ngIf=\"!isNumber(values[i])\" class=\"font-medium text-sm md:text-lg text-ellipsis overflow-hidden\">{{values[i]}}</div>\r\n </div>\r\n </li>\r\n <li class=\"col-span-1 flex pb-2\" *ngIf=\"mode!=='normal'\">\r\n <div class=\"grid-cols-1 border-l-2 pl-1 pr-2\" [style]=\"'border-color:' + colors[i]\">\r\n <div *ngIf=\"isNumber(values[i])\" class=\"font-medium text-xs lg:text-sm text-ellipsis overflow-hidden\">{{values[i] | number:'1.0-2':'el'}}</div>\r\n <div *ngIf=\"!isNumber(values[i])\" class=\"font-medium text-xs lg:text-sm text-ellipsis overflow-hidden\">{{values[i]}}</div>\r\n <div class=\"text-xs max-w-18 lg:w-auto truncate text-ellipsis overflow-hidden\">{{labels[i]}}</div>\r\n </div>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </div>\r\n <div *ngIf=\"busy\">\r\n <ul role=\"list\" class=\"grid gap-1\"\r\n [class.grid-cols-4]=\"mode==='normal'\"\r\n [class.grid-flow-col]=\"mode!=='normal'\">\r\n <ng-container *ngFor=\"let value of values; index as i\">\r\n <li class=\"animate-pulse col-span-1 flex pb-2\" *ngIf=\"mode==='normal'\">\r\n <div class=\"grid-cols-1 border-l-2 px-1\" style=\"border-color:rgb(168, 162, 158, 0.2)\">\r\n <div class=\"rounded-md bg-slate-400/25 h-3 w-14\"></div>\r\n <div class=\"rounded-md bg-slate-400/25 mt-2 h-4 w-6\"></div>\r\n </div>\r\n </li>\r\n <li class=\"animate-pulse col-span-1 flex pb-2\" *ngIf=\"mode!=='normal'\">\r\n <div class=\"grid-cols-1 border-l-2 pl-1 pr-2\" style=\"border-color:rgb(168, 162, 158, 0.2)\">\r\n <div class=\"rounded-md bg-slate-400/25 h-3 w-14\"></div>\r\n <div class=\"rounded-md bg-slate-400/25 mt-2 h-4 w-6\"></div>\r\n </div>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </div> ", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }] }); }
|
|
32
|
+
}
|
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: StatsGridComponent, decorators: [{
|
|
34
|
+
type: Component,
|
|
35
|
+
args: [{ selector: 'lib-stats-grid', template: "<div *ngIf=\"!busy\">\r\n <ul role=\"list\" class=\"grid gap-1\"\r\n [class.grid-cols-4]=\"mode==='normal'\"\r\n [class.grid-flow-col]=\"mode!=='normal'\">\r\n <ng-container *ngFor=\"let value of values; index as i\">\r\n <li class=\"col-span-1 flex pb-2\" *ngIf=\"mode==='normal'\">\r\n <div class=\"grid-cols-1 border-l-2 px-1\" [style]=\"'border-color:' + colors[i]\">\r\n <div class=\"text-xs text-ellipsis overflow-hidden\">{{labels[i]}}</div>\r\n <div *ngIf=\"isNumber(values[i])\" class=\"font-medium text-sm md:text-lg text-ellipsis overflow-hidden\">{{values[i] | number:'1.0-2':'el'}}</div>\r\n <div *ngIf=\"!isNumber(values[i])\" class=\"font-medium text-sm md:text-lg text-ellipsis overflow-hidden\">{{values[i]}}</div>\r\n </div>\r\n </li>\r\n <li class=\"col-span-1 flex pb-2\" *ngIf=\"mode!=='normal'\">\r\n <div class=\"grid-cols-1 border-l-2 pl-1 pr-2\" [style]=\"'border-color:' + colors[i]\">\r\n <div *ngIf=\"isNumber(values[i])\" class=\"font-medium text-xs lg:text-sm text-ellipsis overflow-hidden\">{{values[i] | number:'1.0-2':'el'}}</div>\r\n <div *ngIf=\"!isNumber(values[i])\" class=\"font-medium text-xs lg:text-sm text-ellipsis overflow-hidden\">{{values[i]}}</div>\r\n <div class=\"text-xs max-w-18 lg:w-auto truncate text-ellipsis overflow-hidden\">{{labels[i]}}</div>\r\n </div>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </div>\r\n <div *ngIf=\"busy\">\r\n <ul role=\"list\" class=\"grid gap-1\"\r\n [class.grid-cols-4]=\"mode==='normal'\"\r\n [class.grid-flow-col]=\"mode!=='normal'\">\r\n <ng-container *ngFor=\"let value of values; index as i\">\r\n <li class=\"animate-pulse col-span-1 flex pb-2\" *ngIf=\"mode==='normal'\">\r\n <div class=\"grid-cols-1 border-l-2 px-1\" style=\"border-color:rgb(168, 162, 158, 0.2)\">\r\n <div class=\"rounded-md bg-slate-400/25 h-3 w-14\"></div>\r\n <div class=\"rounded-md bg-slate-400/25 mt-2 h-4 w-6\"></div>\r\n </div>\r\n </li>\r\n <li class=\"animate-pulse col-span-1 flex pb-2\" *ngIf=\"mode!=='normal'\">\r\n <div class=\"grid-cols-1 border-l-2 pl-1 pr-2\" style=\"border-color:rgb(168, 162, 158, 0.2)\">\r\n <div class=\"rounded-md bg-slate-400/25 h-3 w-14\"></div>\r\n <div class=\"rounded-md bg-slate-400/25 mt-2 h-4 w-6\"></div>\r\n </div>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </div> " }]
|
|
36
|
+
}], ctorParameters: () => [], propDecorators: { busy: [{
|
|
37
|
+
type: Input
|
|
38
|
+
}], count: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], mode: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], labels: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], values: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], colors: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}] } });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHMtZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvc3RhdHMtZ3JpZC9zdGF0cy1ncmlkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWNvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9zdGF0cy1ncmlkL3N0YXRzLWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDOzs7QUFPM0UsTUFBTSxPQUFPLGtCQUFrQjtJQWE3QjtRQVpTLFNBQUksR0FBRyxLQUFLLENBQUM7UUFDYixVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ1osV0FBTSxHQUFVLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN2QyxTQUFJLEdBQVcsUUFBUSxDQUFDO1FBQ3hCLFdBQU0sR0FBYSxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDcEQsV0FBTSxHQUFhLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNoQyxXQUFNLEdBQWE7WUFDMUIsd0JBQXdCO1lBQ3hCLHlCQUF5QjtZQUN6Qix1QkFBdUI7U0FDeEIsQ0FBQztJQUdGLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7WUFDakIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDckMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDdkIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRU0sUUFBUSxDQUFDLEtBQVU7UUFDeEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUFBLENBQUM7SUFDaEMsQ0FBQzs4R0EzQlUsa0JBQWtCO2tHQUFsQixrQkFBa0IseUxDUC9CLHFoRkF5Q1U7OzJGRGxDRyxrQkFBa0I7a0JBSjlCLFNBQVM7K0JBQ0UsZ0JBQWdCO3dEQUlqQixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUVHLElBQUk7c0JBQVosS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbGliLXN0YXRzLWdyaWQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zdGF0cy1ncmlkLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RhdHNHcmlkQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSBidXN5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgY291bnQgPSA2O1xyXG4gIHB1YmxpYyBsb2FkZXI6IGFueVtdID0gWycnLCAnJywgJycsICcnLCAnJywgJyddO1xyXG4gIEBJbnB1dCgpIG1vZGU6IHN0cmluZyA9ICdub3JtYWwnO1xyXG4gIEBJbnB1dCgpIGxhYmVsczogc3RyaW5nW10gPSBbJ09ubGluZScsICdPZmZsaW5lJywgJ0ZhdWx0ZWQnXTtcclxuICBASW5wdXQoKSB2YWx1ZXM6IG51bWJlcltdID0gWzEwLCAyMCwgMzBdO1xyXG4gIEBJbnB1dCgpIGNvbG9yczogc3RyaW5nW10gPSBbXHJcbiAgICAncmdiKDUzLCAxNzcsIDIwMSwgMC42KScsXHJcbiAgICAncmdiKDE2OCwgMTYyLCAxNTgsIDAuMiknLFxyXG4gICAgJ3JnYigyMzMsIDk2LCA5NiwgMC44KSdcclxuICBdO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzLmNvdW50KSB7XHJcbiAgICAgIHRoaXMubG9hZGVyID0gW107XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IHRoaXMuY291bnQ7IGkrKykge1xyXG4gICAgICAgIHRoaXMubG9hZGVyLnB1c2goJycpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaXNOdW1iZXIodmFsdWU6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuICFpc05hTihOdW1iZXIodmFsdWUpKTs7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgKm5nSWY9XCIhYnVzeVwiPlxyXG4gICAgPHVsIHJvbGU9XCJsaXN0XCIgY2xhc3M9XCJncmlkIGdhcC0xXCJcclxuICAgICAgICBbY2xhc3MuZ3JpZC1jb2xzLTRdPVwibW9kZT09PSdub3JtYWwnXCJcclxuICAgICAgICBbY2xhc3MuZ3JpZC1mbG93LWNvbF09XCJtb2RlIT09J25vcm1hbCdcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdmFsdWUgb2YgdmFsdWVzOyBpbmRleCBhcyBpXCI+XHJcbiAgICAgICAgPGxpIGNsYXNzPVwiY29sLXNwYW4tMSBmbGV4IHBiLTJcIiAqbmdJZj1cIm1vZGU9PT0nbm9ybWFsJ1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQtY29scy0xIGJvcmRlci1sLTIgcHgtMVwiIFtzdHlsZV09XCInYm9yZGVyLWNvbG9yOicgKyBjb2xvcnNbaV1cIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQteHMgdGV4dC1lbGxpcHNpcyBvdmVyZmxvdy1oaWRkZW5cIj57e2xhYmVsc1tpXX19PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpc051bWJlcih2YWx1ZXNbaV0pXCIgY2xhc3M9XCJmb250LW1lZGl1bSB0ZXh0LXNtIG1kOnRleHQtbGcgdGV4dC1lbGxpcHNpcyBvdmVyZmxvdy1oaWRkZW5cIj57e3ZhbHVlc1tpXSB8IG51bWJlcjonMS4wLTInOidlbCd9fTwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWlzTnVtYmVyKHZhbHVlc1tpXSlcIiBjbGFzcz1cImZvbnQtbWVkaXVtIHRleHQtc20gbWQ6dGV4dC1sZyB0ZXh0LWVsbGlwc2lzIG92ZXJmbG93LWhpZGRlblwiPnt7dmFsdWVzW2ldfX08L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbGk+XHJcbiAgICAgICAgPGxpIGNsYXNzPVwiY29sLXNwYW4tMSBmbGV4IHBiLTJcIiAqbmdJZj1cIm1vZGUhPT0nbm9ybWFsJ1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdyaWQtY29scy0xIGJvcmRlci1sLTIgcGwtMSBwci0yXCIgW3N0eWxlXT1cIidib3JkZXItY29sb3I6JyArIGNvbG9yc1tpXVwiPlxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNOdW1iZXIodmFsdWVzW2ldKVwiIGNsYXNzPVwiZm9udC1tZWRpdW0gdGV4dC14cyBsZzp0ZXh0LXNtIHRleHQtZWxsaXBzaXMgb3ZlcmZsb3ctaGlkZGVuXCI+e3t2YWx1ZXNbaV0gfCBudW1iZXI6JzEuMC0yJzonZWwnfX08L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFpc051bWJlcih2YWx1ZXNbaV0pXCIgY2xhc3M9XCJmb250LW1lZGl1bSB0ZXh0LXhzIGxnOnRleHQtc20gdGV4dC1lbGxpcHNpcyBvdmVyZmxvdy1oaWRkZW5cIj57e3ZhbHVlc1tpXX19PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXhzIG1heC13LTE4IGxnOnctYXV0byB0cnVuY2F0ZSB0ZXh0LWVsbGlwc2lzIG92ZXJmbG93LWhpZGRlblwiPnt7bGFiZWxzW2ldfX08L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbGk+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC91bD5cclxuICA8L2Rpdj5cclxuICA8ZGl2ICpuZ0lmPVwiYnVzeVwiPlxyXG4gICAgPHVsIHJvbGU9XCJsaXN0XCIgY2xhc3M9XCJncmlkIGdhcC0xXCJcclxuICAgICAgICBbY2xhc3MuZ3JpZC1jb2xzLTRdPVwibW9kZT09PSdub3JtYWwnXCJcclxuICAgICAgICBbY2xhc3MuZ3JpZC1mbG93LWNvbF09XCJtb2RlIT09J25vcm1hbCdcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdmFsdWUgb2YgdmFsdWVzOyBpbmRleCBhcyBpXCI+XHJcbiAgICAgICAgPGxpIGNsYXNzPVwiYW5pbWF0ZS1wdWxzZSBjb2wtc3Bhbi0xIGZsZXggcGItMlwiICpuZ0lmPVwibW9kZT09PSdub3JtYWwnXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZC1jb2xzLTEgYm9yZGVyLWwtMiBweC0xXCIgc3R5bGU9XCJib3JkZXItY29sb3I6cmdiKDE2OCwgMTYyLCAxNTgsIDAuMilcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdW5kZWQtbWQgYmctc2xhdGUtNDAwLzI1IGgtMyB3LTE0XCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3VuZGVkLW1kIGJnLXNsYXRlLTQwMC8yNSBtdC0yIGgtNCB3LTZcIj48L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbGk+XHJcbiAgICAgICAgPGxpIGNsYXNzPVwiYW5pbWF0ZS1wdWxzZSBjb2wtc3Bhbi0xIGZsZXggcGItMlwiICpuZ0lmPVwibW9kZSE9PSdub3JtYWwnXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ3JpZC1jb2xzLTEgYm9yZGVyLWwtMiBwbC0xIHByLTJcIiBzdHlsZT1cImJvcmRlci1jb2xvcjpyZ2IoMTY4LCAxNjIsIDE1OCwgMC4yKVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm91bmRlZC1tZCBiZy1zbGF0ZS00MDAvMjUgaC0zIHctMTRcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdW5kZWQtbWQgYmctc2xhdGUtNDAwLzI1IG10LTIgaC00IHctNlwiPjwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9saT5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L3VsPlxyXG4gIDwvZGl2PiAgIl19
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { Directive } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class LibStepInfoDirective {
|
|
4
|
-
constructor(template) {
|
|
5
|
-
this.template = template;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
11
|
-
type: Directive,
|
|
12
|
-
args: [{
|
|
13
|
-
selector: '[libStepInfo]',
|
|
14
|
-
}]
|
|
15
|
-
}], ctorParameters:
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class LibStepInfoDirective {
|
|
4
|
+
constructor(template) {
|
|
5
|
+
this.template = template;
|
|
6
|
+
}
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: LibStepInfoDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
8
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.6", type: LibStepInfoDirective, selector: "[libStepInfo]", ngImport: i0 }); }
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: LibStepInfoDirective, decorators: [{
|
|
11
|
+
type: Directive,
|
|
12
|
+
args: [{
|
|
13
|
+
selector: '[libStepInfo]',
|
|
14
|
+
}]
|
|
15
|
+
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLXN0ZXAtaW5mby5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvc3RlcHBlci9saWItc3RlcC1pbmZvLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFlLE1BQU0sZUFBZSxDQUFDOztBQUt2RCxNQUFNLE9BQU8sb0JBQW9CO0lBQzdCLFlBQW1CLFFBQTBCO1FBQTFCLGFBQVEsR0FBUixRQUFRLENBQWtCO0lBQUksQ0FBQzs4R0FEekMsb0JBQW9CO2tHQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBSGhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGVBQWU7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1tsaWJTdGVwSW5mb10nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTGliU3RlcEluZm9EaXJlY3RpdmUge1xyXG4gICAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7IH1cclxufVxyXG4iXX0=
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { Directive } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class LibStepLabelDirective {
|
|
4
|
-
constructor(template) {
|
|
5
|
-
this.template = template;
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
11
|
-
type: Directive,
|
|
12
|
-
args: [{
|
|
13
|
-
selector: '[libStepLabel]'
|
|
14
|
-
}]
|
|
15
|
-
}], ctorParameters:
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class LibStepLabelDirective {
|
|
4
|
+
constructor(template) {
|
|
5
|
+
this.template = template;
|
|
6
|
+
}
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: LibStepLabelDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
8
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.6", type: LibStepLabelDirective, selector: "[libStepLabel]", ngImport: i0 }); }
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: LibStepLabelDirective, decorators: [{
|
|
11
|
+
type: Directive,
|
|
12
|
+
args: [{
|
|
13
|
+
selector: '[libStepLabel]'
|
|
14
|
+
}]
|
|
15
|
+
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLXN0ZXAtbGFiZWwuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL3N0ZXBwZXIvbGliLXN0ZXAtbGFiZWwuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWUsTUFBTSxlQUFlLENBQUM7O0FBS3ZELE1BQU0sT0FBTyxxQkFBcUI7SUFDOUIsWUFBbUIsUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFBSSxDQUFDOzhHQUR6QyxxQkFBcUI7a0dBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbbGliU3RlcExhYmVsXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIExpYlN0ZXBMYWJlbERpcmVjdGl2ZSB7XHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHsgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ContentChild, Inject, Input, Optional, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { LIBSTEPPER_ACCESSOR } from '../../tokens';
|
|
3
|
+
import { LibStepInfoDirective } from './lib-step-info.directive';
|
|
4
|
+
import { LibStepLabelDirective } from './lib-step-label.directive';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export var StepState;
|
|
7
|
+
(function (StepState) {
|
|
8
|
+
StepState["Active"] = "Active";
|
|
9
|
+
StepState["Completed"] = "Completed";
|
|
10
|
+
StepState["Upcoming"] = "Upcoming";
|
|
11
|
+
})(StepState || (StepState = {}));
|
|
12
|
+
;
|
|
13
|
+
export class LibStepComponent {
|
|
14
|
+
constructor(_stepper) {
|
|
15
|
+
this._stepper = _stepper;
|
|
16
|
+
}
|
|
17
|
+
/** Indicates the index of the step. */
|
|
18
|
+
get index() {
|
|
19
|
+
return this._stepper ? this._stepper.steps.toArray().indexOf(this) : -1;
|
|
20
|
+
}
|
|
21
|
+
/** Indicates whether this step is the last step. */
|
|
22
|
+
get isLast() {
|
|
23
|
+
return this._stepper ? this._stepper.steps.length - 1 === this.index : false;
|
|
24
|
+
}
|
|
25
|
+
/** Indicates whether you can navigate to the step or not. */
|
|
26
|
+
get isValid() {
|
|
27
|
+
if (!this.stepControl) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
return this.stepControl.valid;
|
|
31
|
+
}
|
|
32
|
+
/** Shows the current state of the step. */
|
|
33
|
+
get state() {
|
|
34
|
+
const currentIndex = this._stepper?.currentStepIndex;
|
|
35
|
+
if (currentIndex === this.index) {
|
|
36
|
+
return StepState.Active;
|
|
37
|
+
}
|
|
38
|
+
if (currentIndex > this.index) {
|
|
39
|
+
return StepState.Completed;
|
|
40
|
+
}
|
|
41
|
+
return StepState.Upcoming;
|
|
42
|
+
}
|
|
43
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: LibStepComponent, deps: [{ token: LIBSTEPPER_ACCESSOR, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.6", type: LibStepComponent, selector: "lib-step", inputs: { class: "class", stepControl: "stepControl" }, queries: [{ propertyName: "stepLabel", first: true, predicate: LibStepLabelDirective, descendants: true }, { propertyName: "stepInfo", first: true, predicate: LibStepInfoDirective, descendants: true }], viewQueries: [{ propertyName: "content", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: `
|
|
45
|
+
<ng-template>
|
|
46
|
+
<ng-content></ng-content>
|
|
47
|
+
</ng-template>
|
|
48
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
49
|
+
}
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.6", ngImport: i0, type: LibStepComponent, decorators: [{
|
|
51
|
+
type: Component,
|
|
52
|
+
args: [{
|
|
53
|
+
selector: 'lib-step',
|
|
54
|
+
template: `
|
|
55
|
+
<ng-template>
|
|
56
|
+
<ng-content></ng-content>
|
|
57
|
+
</ng-template>
|
|
58
|
+
`,
|
|
59
|
+
encapsulation: ViewEncapsulation.None,
|
|
60
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
|
61
|
+
}]
|
|
62
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
63
|
+
type: Optional
|
|
64
|
+
}, {
|
|
65
|
+
type: Inject,
|
|
66
|
+
args: [LIBSTEPPER_ACCESSOR]
|
|
67
|
+
}] }], propDecorators: { content: [{
|
|
68
|
+
type: ViewChild,
|
|
69
|
+
args: [TemplateRef, { static: true }]
|
|
70
|
+
}], stepLabel: [{
|
|
71
|
+
type: ContentChild,
|
|
72
|
+
args: [LibStepLabelDirective]
|
|
73
|
+
}], stepInfo: [{
|
|
74
|
+
type: ContentChild,
|
|
75
|
+
args: [LibStepInfoDirective]
|
|
76
|
+
}], class: [{
|
|
77
|
+
type: Input
|
|
78
|
+
}], stepControl: [{
|
|
79
|
+
type: Input
|
|
80
|
+
}] } });
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLXN0ZXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL3N0ZXBwZXIvbGliLXN0ZXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHckosT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ25ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQUVuRSxNQUFNLENBQU4sSUFBWSxTQUlYO0FBSkQsV0FBWSxTQUFTO0lBQ2pCLDhCQUFpQixDQUFBO0lBQ2pCLG9DQUF1QixDQUFBO0lBQ3ZCLGtDQUFxQixDQUFBO0FBQ3pCLENBQUMsRUFKVyxTQUFTLEtBQVQsU0FBUyxRQUlwQjtBQUFBLENBQUM7QUFZRixNQUFNLE9BQU8sZ0JBQWdCO0lBQ3pCLFlBQzZELFFBQWM7UUFBZCxhQUFRLEdBQVIsUUFBUSxDQUFNO0lBQ3ZFLENBQUM7SUFhTCx1Q0FBdUM7SUFDdkMsSUFBVyxLQUFLO1FBQ1osT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFRCxvREFBb0Q7SUFDcEQsSUFBVyxNQUFNO1FBQ2IsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNqRixDQUFDO0lBRUQsNkRBQTZEO0lBQzdELElBQVcsT0FBTztRQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEIsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7SUFDbEMsQ0FBQztJQUVELDJDQUEyQztJQUMzQyxJQUFXLEtBQUs7UUFDWixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLGdCQUFnQixDQUFDO1FBQ3JELElBQUksWUFBWSxLQUFLLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM5QixPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQUM7UUFDNUIsQ0FBQztRQUNELElBQUksWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM1QixPQUFPLFNBQVMsQ0FBQyxTQUFTLENBQUM7UUFDL0IsQ0FBQztRQUNELE9BQU8sU0FBUyxDQUFDLFFBQVEsQ0FBQztJQUM5QixDQUFDOzhHQTVDUSxnQkFBZ0Isa0JBRUQsbUJBQW1CO2tHQUZsQyxnQkFBZ0IsK0lBUVgscUJBQXFCLDJFQUVyQixvQkFBb0IseUZBSnZCLFdBQVcsOERBZFo7Ozs7S0FJVDs7MkZBSVEsZ0JBQWdCO2tCQVY1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxVQUFVO29CQUNwQixRQUFRLEVBQUU7Ozs7S0FJVDtvQkFDRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTtvQkFDckMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEOzswQkFHUSxRQUFROzswQkFBSSxNQUFNOzJCQUFDLG1CQUFtQjt5Q0FJTSxPQUFPO3NCQUF2RCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBRUksU0FBUztzQkFBcEQsWUFBWTt1QkFBQyxxQkFBcUI7Z0JBRVEsUUFBUTtzQkFBbEQsWUFBWTt1QkFBQyxvQkFBb0I7Z0JBRWxCLEtBQUs7c0JBQXBCLEtBQUs7Z0JBRVUsV0FBVztzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgSW5qZWN0LCBJbnB1dCwgT3B0aW9uYWwsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IExJQlNURVBQRVJfQUNDRVNTT1IgfSBmcm9tICcuLi8uLi90b2tlbnMnO1xyXG5pbXBvcnQgeyBMaWJTdGVwSW5mb0RpcmVjdGl2ZSB9IGZyb20gJy4vbGliLXN0ZXAtaW5mby5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBMaWJTdGVwTGFiZWxEaXJlY3RpdmUgfSBmcm9tICcuL2xpYi1zdGVwLWxhYmVsLmRpcmVjdGl2ZSc7XHJcblxyXG5leHBvcnQgZW51bSBTdGVwU3RhdGUge1xyXG4gICAgQWN0aXZlID0gJ0FjdGl2ZScsXHJcbiAgICBDb21wbGV0ZWQgPSAnQ29tcGxldGVkJyxcclxuICAgIFVwY29taW5nID0gJ1VwY29taW5nJ1xyXG59O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2xpYi1zdGVwJyxcclxuICAgIHRlbXBsYXRlOiBgXHJcbiAgICAgICAgPG5nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIGAsXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIExpYlN0ZXBDb21wb25lbnQge1xyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChMSUJTVEVQUEVSX0FDQ0VTU09SKSBwdWJsaWMgcmVhZG9ubHkgX3N0ZXBwZXI/OiBhbnlcclxuICAgICkgeyB9XHJcblxyXG4gICAgLyoqIFRoZSBjb250ZW50IHByb3ZpZGVkIGZvciB0aGUgc3RlcC4gKi9cclxuICAgIEBWaWV3Q2hpbGQoVGVtcGxhdGVSZWYsIHsgc3RhdGljOiB0cnVlIH0pIHB1YmxpYyBjb250ZW50ITogVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIC8qKiBUaGUgbGFiZWwgb2YgdGhlIHN0ZXAgZGlzcGxheWVkIGluIGhlYWRlciwgaWYgYXBwbGljYWJsZS4gKi9cclxuICAgIEBDb250ZW50Q2hpbGQoTGliU3RlcExhYmVsRGlyZWN0aXZlKSBwdWJsaWMgc3RlcExhYmVsOiBMaWJTdGVwTGFiZWxEaXJlY3RpdmUgfCB1bmRlZmluZWQ7XHJcbiAgICAvKiogVGhlIGluZm8gb2YgdGhlIHN0ZXAgZGlzcGxheWVkIGluIGhlYWRlciwgaWYgYXBwbGljYWJsZS4gKi9cclxuICAgIEBDb250ZW50Q2hpbGQoTGliU3RlcEluZm9EaXJlY3RpdmUpIHB1YmxpYyBzdGVwSW5mbzogTGliU3RlcEluZm9EaXJlY3RpdmUgfCB1bmRlZmluZWQ7XHJcbiAgICAvKiogQW4gb3B0aW9uYWwgQ1NTIGNsYXNzIGZvciB0aGUgc3RlcCBoZWFkZXIuICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgY2xhc3M6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICAgIC8qKiBUaGUgYWJzdHJhY3QgY29udHJvbCBvZiB0aGUgc3RlcC4gKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzdGVwQ29udHJvbDogQWJzdHJhY3RDb250cm9sIHwgdW5kZWZpbmVkO1xyXG5cclxuICAgIC8qKiBJbmRpY2F0ZXMgdGhlIGluZGV4IG9mIHRoZSBzdGVwLiAqL1xyXG4gICAgcHVibGljIGdldCBpbmRleCgpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9zdGVwcGVyID8gdGhpcy5fc3RlcHBlci5zdGVwcy50b0FycmF5KCkuaW5kZXhPZih0aGlzKSA6IC0xO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKiBJbmRpY2F0ZXMgd2hldGhlciB0aGlzIHN0ZXAgaXMgdGhlIGxhc3Qgc3RlcC4gKi9cclxuICAgIHB1YmxpYyBnZXQgaXNMYXN0KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9zdGVwcGVyID8gdGhpcy5fc3RlcHBlci5zdGVwcy5sZW5ndGggLSAxID09PSB0aGlzLmluZGV4IDogZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEluZGljYXRlcyB3aGV0aGVyIHlvdSBjYW4gbmF2aWdhdGUgdG8gdGhlIHN0ZXAgb3Igbm90LiAqL1xyXG4gICAgcHVibGljIGdldCBpc1ZhbGlkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghdGhpcy5zdGVwQ29udHJvbCkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RlcENvbnRyb2wudmFsaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIFNob3dzIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBzdGVwLiAqL1xyXG4gICAgcHVibGljIGdldCBzdGF0ZSgpOiBTdGVwU3RhdGUge1xyXG4gICAgICAgIGNvbnN0IGN1cnJlbnRJbmRleCA9IHRoaXMuX3N0ZXBwZXI/LmN1cnJlbnRTdGVwSW5kZXg7XHJcbiAgICAgICAgaWYgKGN1cnJlbnRJbmRleCA9PT0gdGhpcy5pbmRleCkge1xyXG4gICAgICAgICAgICByZXR1cm4gU3RlcFN0YXRlLkFjdGl2ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGN1cnJlbnRJbmRleCA+IHRoaXMuaW5kZXgpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFN0ZXBTdGF0ZS5Db21wbGV0ZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBTdGVwU3RhdGUuVXBjb21pbmc7XHJcbiAgICB9XHJcbn1cclxuIl19
|