@progress-chef/platform-shared-components 0.0.111 → 0.0.113
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/esm2022/lib/atoms/alert/alert.component.mjs +40 -0
- package/esm2022/lib/atoms/alert/alert.module.mjs +24 -0
- package/esm2022/lib/atoms/angular-popup/angular-popup.component.mjs +34 -0
- package/esm2022/lib/atoms/angular-popup/angular-popup.module.mjs +32 -0
- package/esm2022/lib/atoms/atoms.module.mjs +304 -0
- package/esm2022/lib/atoms/avatar/avatar.component.mjs +62 -0
- package/esm2022/lib/atoms/avatar/avatar.module.mjs +32 -0
- package/esm2022/lib/atoms/breadcrumb/breadcrumb.component.mjs +58 -0
- package/esm2022/lib/atoms/breadcrumb/breadcrumb.module.mjs +40 -0
- package/esm2022/lib/atoms/button/button.component.mjs +85 -0
- package/esm2022/lib/atoms/button/button.module.mjs +36 -0
- package/esm2022/lib/atoms/button-group/button-group.component.mjs +51 -0
- package/esm2022/lib/atoms/button-group/button-group.module.mjs +36 -0
- package/esm2022/lib/atoms/checkbox/checkbox.component.mjs +47 -0
- package/esm2022/lib/atoms/checkbox/checkbox.module.mjs +36 -0
- package/esm2022/lib/atoms/chip/chip.component.mjs +32 -0
- package/esm2022/lib/atoms/chip/chip.module.mjs +44 -0
- package/esm2022/lib/atoms/chip-list/chip-list.component.mjs +87 -0
- package/esm2022/lib/atoms/chip-list/chip-list.module.mjs +52 -0
- package/esm2022/lib/atoms/clipboard/clipboard.component.mjs +111 -0
- package/esm2022/lib/atoms/clipboard/clipboard.module.mjs +40 -0
- package/esm2022/lib/atoms/container/container.component.mjs +28 -0
- package/esm2022/lib/atoms/container/container.module.mjs +24 -0
- package/esm2022/lib/atoms/date-range/date-range.component.mjs +49 -0
- package/esm2022/lib/atoms/date-range/date-range.module.mjs +39 -0
- package/esm2022/lib/atoms/datepicker/datepicker.component.mjs +91 -0
- package/esm2022/lib/atoms/datepicker/datepicker.module.mjs +35 -0
- package/esm2022/lib/atoms/drag-and-drop/drag-and-drop.component.mjs +88 -0
- package/esm2022/lib/atoms/drag-and-drop/drag-and-drop.module.mjs +44 -0
- package/esm2022/lib/atoms/dropdown/dropdown.component.mjs +200 -0
- package/esm2022/lib/atoms/dropdown/dropdown.module.mjs +43 -0
- package/esm2022/lib/atoms/dropdown-button/dropdown-button.component.mjs +46 -0
- package/esm2022/lib/atoms/dropdown-button/dropdown-button.module.mjs +36 -0
- package/esm2022/lib/atoms/dropdown-tree/dropdowntree.component.mjs +102 -0
- package/esm2022/lib/atoms/dropdown-tree/dropdowntree.module.mjs +43 -0
- package/esm2022/lib/atoms/expansion-panel/expansion-panel.component.mjs +51 -0
- package/esm2022/lib/atoms/expansion-panel/expansion-panel.module.mjs +56 -0
- package/esm2022/lib/atoms/icon/icon.component.mjs +37 -0
- package/esm2022/lib/atoms/icon/icon.module.mjs +21 -0
- package/esm2022/lib/atoms/labels/label.component.mjs +25 -0
- package/esm2022/lib/atoms/labels/label.module.mjs +32 -0
- package/esm2022/lib/atoms/list-views/list-view.component.mjs +91 -0
- package/esm2022/lib/atoms/list-views/list-view.module.mjs +60 -0
- package/esm2022/lib/atoms/loader/loader.component.mjs +48 -0
- package/esm2022/lib/atoms/loader/loader.module.mjs +28 -0
- package/esm2022/lib/atoms/loading-spinner/loading-spinner.component.mjs +25 -0
- package/esm2022/lib/atoms/loading-spinner/loading-spinner.module.mjs +24 -0
- package/esm2022/lib/atoms/multi-select-dropdown/multi-select-dropdown.component.mjs +150 -0
- package/esm2022/lib/atoms/multi-select-dropdown/multi-select-dropdown.module.mjs +43 -0
- package/esm2022/lib/atoms/notification/notification.component.mjs +69 -0
- package/esm2022/lib/atoms/notification/notification.module.mjs +24 -0
- package/esm2022/lib/atoms/numeric-textbox/numeric-textbox.component.mjs +75 -0
- package/esm2022/lib/atoms/numeric-textbox/numeric-textbox.module.mjs +35 -0
- package/esm2022/lib/atoms/progress-bar/progress-bar.component.mjs +19 -0
- package/esm2022/lib/atoms/progress-bar/progress-bar.module.mjs +24 -0
- package/esm2022/lib/atoms/radio-button/radio-button.component.mjs +53 -0
- package/esm2022/lib/atoms/radio-button/radio-button.module.mjs +39 -0
- package/esm2022/lib/atoms/search-box/search-box.component.mjs +108 -0
- package/esm2022/lib/atoms/search-box/search-box.module.mjs +40 -0
- package/esm2022/lib/atoms/slider/slider.component.mjs +58 -0
- package/esm2022/lib/atoms/slider/slider.module.mjs +28 -0
- package/esm2022/lib/atoms/stepper/stepper.component.mjs +38 -0
- package/esm2022/lib/atoms/stepper/stepper.module.mjs +52 -0
- package/esm2022/lib/atoms/switch/switch.component.mjs +53 -0
- package/esm2022/lib/atoms/switch/switch.module.mjs +59 -0
- package/esm2022/lib/atoms/text-area/text-area.component.mjs +93 -0
- package/esm2022/lib/atoms/text-area/text-area.module.mjs +36 -0
- package/esm2022/lib/atoms/textbox/textbox.component.mjs +115 -0
- package/esm2022/lib/atoms/textbox/textbox.module.mjs +40 -0
- package/esm2022/lib/atoms/time-picker/time-picker.component.mjs +83 -0
- package/esm2022/lib/atoms/time-picker/time-picker.module.mjs +35 -0
- package/esm2022/lib/atoms/timescheduler/timescheduler.component.mjs +79 -0
- package/esm2022/lib/atoms/timescheduler/timescheduler.module.mjs +35 -0
- package/esm2022/lib/atoms/toast-notification/toast-notification.module.mjs +31 -0
- package/esm2022/lib/atoms/toast-notification/toast-notification.service.mjs +160 -0
- package/esm2022/lib/atoms/tooltip/tooltip.component.mjs +48 -0
- package/esm2022/lib/atoms/tooltip/tooltip.module.mjs +24 -0
- package/esm2022/lib/atoms/typography/TypographyType.mjs +2 -0
- package/esm2022/lib/atoms/typography/typography.component.mjs +78 -0
- package/esm2022/lib/atoms/typography/typography.module.mjs +24 -0
- package/esm2022/lib/atoms/uploader/uploader.component.mjs +213 -0
- package/esm2022/lib/atoms/uploader/uploader.module.mjs +53 -0
- package/esm2022/lib/molecules/card/card-actions/card-actions.component.mjs +20 -0
- package/esm2022/lib/molecules/card/card-body/card-body.component.mjs +12 -0
- package/esm2022/lib/molecules/card/card-footer/card-footer.component.mjs +12 -0
- package/esm2022/lib/molecules/card/card-header/card-header.component.mjs +31 -0
- package/esm2022/lib/molecules/card/card.component.mjs +20 -0
- package/esm2022/lib/molecules/card/card.module.mjs +52 -0
- package/esm2022/lib/molecules/dialog/confirmation-dialog/confirmation-dialog.component.mjs +81 -0
- package/esm2022/lib/molecules/dialog/dialog-actions/dialog-actions.component.mjs +17 -0
- package/esm2022/lib/molecules/dialog/dialog-titlebar/dialog-titlebar.component.mjs +40 -0
- package/esm2022/lib/molecules/dialog/dialog.component.mjs +53 -0
- package/esm2022/lib/molecules/dialog/dialog.module.mjs +55 -0
- package/esm2022/lib/molecules/grid-form/grid-form.component.mjs +110 -0
- package/esm2022/lib/molecules/grid-form/grid-form.module.mjs +59 -0
- package/esm2022/lib/molecules/grid-layout/grid-layout-item/grid-layout-item.component.mjs +37 -0
- package/esm2022/lib/molecules/grid-layout/grid-layout.component.mjs +32 -0
- package/esm2022/lib/molecules/grid-layout/grid-layout.module.mjs +33 -0
- package/esm2022/lib/molecules/grid-pagination/grid-pagination-spacer/grid-pagination-spacer.component.mjs +12 -0
- package/esm2022/lib/molecules/grid-pagination/grid-pagination.component.mjs +621 -0
- package/esm2022/lib/molecules/grid-pagination/grid-pagination.module.mjs +84 -0
- package/esm2022/lib/molecules/grid-pagination/kebab-menu-filter.pipe.mjs +22 -0
- package/esm2022/lib/molecules/molecules.module.mjs +66 -0
- package/esm2022/lib/molecules/tabstrip/tabstrip-tab/tabstrip-tab.component.mjs +25 -0
- package/esm2022/lib/molecules/tabstrip/tabstrip.component.mjs +37 -0
- package/esm2022/lib/molecules/tabstrip/tabstrip.module.mjs +33 -0
- package/esm2022/lib/shared.component.mjs +4 -4
- package/esm2022/lib/shared.module.mjs +25 -10
- package/esm2022/public-api.mjs +114 -2
- package/fesm2022/progress-chef-platform-shared-components.mjs +5698 -14
- package/fesm2022/progress-chef-platform-shared-components.mjs.map +1 -1
- package/lib/atoms/alert/alert.component.d.ts +20 -0
- package/lib/atoms/alert/alert.module.d.ts +8 -0
- package/lib/atoms/angular-popup/angular-popup.component.d.ts +15 -0
- package/lib/atoms/angular-popup/angular-popup.module.d.ts +10 -0
- package/lib/atoms/atoms.module.d.ts +48 -0
- package/lib/atoms/avatar/avatar.component.d.ts +21 -0
- package/lib/atoms/avatar/avatar.module.d.ts +10 -0
- package/lib/atoms/breadcrumb/breadcrumb.component.d.ts +17 -0
- package/lib/atoms/breadcrumb/breadcrumb.module.d.ts +12 -0
- package/lib/atoms/button/button.component.d.ts +29 -0
- package/lib/atoms/button/button.module.d.ts +11 -0
- package/lib/atoms/button-group/button-group.component.d.ts +20 -0
- package/lib/atoms/button-group/button-group.module.d.ts +11 -0
- package/lib/atoms/checkbox/checkbox.component.d.ts +21 -0
- package/lib/atoms/checkbox/checkbox.module.d.ts +11 -0
- package/lib/atoms/chip/chip.component.d.ts +12 -0
- package/lib/atoms/chip/chip.module.d.ts +13 -0
- package/lib/atoms/chip-list/chip-list.component.d.ts +32 -0
- package/lib/atoms/chip-list/chip-list.module.d.ts +15 -0
- package/lib/atoms/clipboard/clipboard.component.d.ts +35 -0
- package/lib/atoms/clipboard/clipboard.module.d.ts +12 -0
- package/lib/atoms/container/container.component.d.ts +9 -0
- package/lib/atoms/container/container.module.d.ts +8 -0
- package/lib/atoms/date-range/date-range.component.d.ts +24 -0
- package/lib/atoms/date-range/date-range.module.d.ts +11 -0
- package/lib/atoms/datepicker/datepicker.component.d.ts +32 -0
- package/lib/atoms/datepicker/datepicker.module.d.ts +10 -0
- package/lib/atoms/drag-and-drop/drag-and-drop.component.d.ts +26 -0
- package/lib/atoms/drag-and-drop/drag-and-drop.module.d.ts +13 -0
- package/lib/atoms/dropdown/dropdown.component.d.ts +67 -0
- package/lib/atoms/dropdown/dropdown.module.d.ts +12 -0
- package/lib/atoms/dropdown-button/dropdown-button.component.d.ts +17 -0
- package/lib/atoms/dropdown-button/dropdown-button.module.d.ts +11 -0
- package/lib/atoms/dropdown-tree/dropdowntree.component.d.ts +35 -0
- package/lib/atoms/dropdown-tree/dropdowntree.module.d.ts +12 -0
- package/lib/atoms/expansion-panel/expansion-panel.component.d.ts +21 -0
- package/lib/atoms/expansion-panel/expansion-panel.module.d.ts +16 -0
- package/lib/atoms/icon/icon.component.d.ts +14 -0
- package/lib/atoms/icon/icon.module.d.ts +7 -0
- package/lib/atoms/labels/label.component.d.ts +12 -0
- package/lib/atoms/labels/label.module.d.ts +10 -0
- package/lib/atoms/list-views/list-view.component.d.ts +32 -0
- package/lib/atoms/list-views/list-view.module.d.ts +17 -0
- package/lib/atoms/loader/loader.component.d.ts +30 -0
- package/lib/atoms/loader/loader.module.d.ts +9 -0
- package/lib/atoms/loading-spinner/loading-spinner.component.d.ts +11 -0
- package/lib/atoms/loading-spinner/loading-spinner.module.d.ts +8 -0
- package/lib/atoms/multi-select-dropdown/multi-select-dropdown.component.d.ts +50 -0
- package/lib/atoms/multi-select-dropdown/multi-select-dropdown.module.d.ts +12 -0
- package/lib/atoms/notification/notification.component.d.ts +24 -0
- package/lib/atoms/notification/notification.module.d.ts +8 -0
- package/lib/atoms/numeric-textbox/numeric-textbox.component.d.ts +28 -0
- package/lib/atoms/numeric-textbox/numeric-textbox.module.d.ts +10 -0
- package/lib/atoms/progress-bar/progress-bar.component.d.ts +9 -0
- package/lib/atoms/progress-bar/progress-bar.module.d.ts +8 -0
- package/lib/atoms/radio-button/radio-button.component.d.ts +22 -0
- package/lib/atoms/radio-button/radio-button.module.d.ts +11 -0
- package/lib/atoms/search-box/search-box.component.d.ts +37 -0
- package/lib/atoms/search-box/search-box.module.d.ts +12 -0
- package/lib/atoms/slider/slider.component.d.ts +18 -0
- package/lib/atoms/slider/slider.module.d.ts +9 -0
- package/lib/atoms/stepper/stepper.component.d.ts +25 -0
- package/lib/atoms/stepper/stepper.module.d.ts +15 -0
- package/lib/atoms/switch/switch.component.d.ts +20 -0
- package/lib/atoms/switch/switch.module.d.ts +16 -0
- package/lib/atoms/text-area/text-area.component.d.ts +35 -0
- package/lib/atoms/text-area/text-area.module.d.ts +11 -0
- package/lib/atoms/textbox/textbox.component.d.ts +37 -0
- package/lib/atoms/textbox/textbox.module.d.ts +12 -0
- package/lib/atoms/time-picker/time-picker.component.d.ts +31 -0
- package/lib/atoms/time-picker/time-picker.module.d.ts +10 -0
- package/lib/atoms/timescheduler/timescheduler.component.d.ts +28 -0
- package/lib/atoms/timescheduler/timescheduler.module.d.ts +10 -0
- package/lib/atoms/toast-notification/toast-notification.module.d.ts +8 -0
- package/lib/atoms/toast-notification/toast-notification.service.d.ts +51 -0
- package/lib/atoms/tooltip/tooltip.component.d.ts +17 -0
- package/lib/atoms/tooltip/tooltip.module.d.ts +8 -0
- package/lib/atoms/typography/TypographyType.d.ts +1 -0
- package/lib/atoms/typography/typography.component.d.ts +25 -0
- package/lib/atoms/typography/typography.module.d.ts +8 -0
- package/lib/atoms/uploader/uploader.component.d.ts +64 -0
- package/lib/atoms/uploader/uploader.module.d.ts +14 -0
- package/lib/molecules/card/card-actions/card-actions.component.d.ts +8 -0
- package/lib/molecules/card/card-body/card-body.component.d.ts +5 -0
- package/lib/molecules/card/card-footer/card-footer.component.d.ts +5 -0
- package/lib/molecules/card/card-header/card-header.component.d.ts +11 -0
- package/lib/molecules/card/card.component.d.ts +7 -0
- package/lib/molecules/card/card.module.d.ts +14 -0
- package/lib/molecules/dialog/confirmation-dialog/confirmation-dialog.component.d.ts +20 -0
- package/lib/molecules/dialog/dialog-actions/dialog-actions.component.d.ts +7 -0
- package/lib/molecules/dialog/dialog-titlebar/dialog-titlebar.component.d.ts +16 -0
- package/lib/molecules/dialog/dialog.component.d.ts +20 -0
- package/lib/molecules/dialog/dialog.module.d.ts +15 -0
- package/lib/molecules/grid-form/grid-form.component.d.ts +33 -0
- package/lib/molecules/grid-form/grid-form.module.d.ts +16 -0
- package/lib/molecules/grid-layout/grid-layout-item/grid-layout-item.component.d.ts +14 -0
- package/lib/molecules/grid-layout/grid-layout.component.d.ts +11 -0
- package/lib/molecules/grid-layout/grid-layout.module.d.ts +10 -0
- package/lib/molecules/grid-pagination/grid-pagination-spacer/grid-pagination-spacer.component.d.ts +5 -0
- package/lib/molecules/grid-pagination/grid-pagination.component.d.ts +150 -0
- package/lib/molecules/grid-pagination/grid-pagination.module.d.ts +21 -0
- package/lib/molecules/grid-pagination/kebab-menu-filter.pipe.d.ts +7 -0
- package/lib/molecules/molecules.module.d.ts +14 -0
- package/lib/molecules/tabstrip/tabstrip-tab/tabstrip-tab.component.d.ts +10 -0
- package/lib/molecules/tabstrip/tabstrip.component.d.ts +15 -0
- package/lib/molecules/tabstrip/tabstrip.module.d.ts +10 -0
- package/lib/shared.module.d.ts +5 -2
- package/package.json +32 -5
- package/public-api.d.ts +108 -1
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
3
|
+
import { TimeschedulerComponent } from './timescheduler.component';
|
|
4
|
+
import { DateInputsModule } from '@progress/kendo-angular-dateinputs';
|
|
5
|
+
import { ButtonsModule } from '@progress/kendo-angular-buttons';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class TimeschedulerModule {
|
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TimeschedulerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
9
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: TimeschedulerModule, declarations: [TimeschedulerComponent], imports: [DateInputsModule,
|
|
10
|
+
ButtonsModule,
|
|
11
|
+
FormsModule,
|
|
12
|
+
ReactiveFormsModule], exports: [TimeschedulerComponent] }); }
|
|
13
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TimeschedulerModule, imports: [DateInputsModule,
|
|
14
|
+
ButtonsModule,
|
|
15
|
+
FormsModule,
|
|
16
|
+
ReactiveFormsModule] }); }
|
|
17
|
+
}
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TimeschedulerModule, decorators: [{
|
|
19
|
+
type: NgModule,
|
|
20
|
+
args: [{
|
|
21
|
+
declarations: [
|
|
22
|
+
TimeschedulerComponent
|
|
23
|
+
],
|
|
24
|
+
imports: [
|
|
25
|
+
DateInputsModule,
|
|
26
|
+
ButtonsModule,
|
|
27
|
+
FormsModule,
|
|
28
|
+
ReactiveFormsModule
|
|
29
|
+
],
|
|
30
|
+
exports: [
|
|
31
|
+
TimeschedulerComponent
|
|
32
|
+
]
|
|
33
|
+
}]
|
|
34
|
+
}] });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXNjaGVkdWxlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9hdG9tcy90aW1lc2NoZWR1bGVyL3RpbWVzY2hlZHVsZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFpQmhFLE1BQU0sT0FBTyxtQkFBbUI7K0dBQW5CLG1CQUFtQjtnSEFBbkIsbUJBQW1CLGlCQVo1QixzQkFBc0IsYUFHdEIsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixXQUFXO1lBQ1gsbUJBQW1CLGFBR25CLHNCQUFzQjtnSEFHYixtQkFBbUIsWUFUNUIsZ0JBQWdCO1lBQ2hCLGFBQWE7WUFDYixXQUFXO1lBQ1gsbUJBQW1COzs0RkFNVixtQkFBbUI7a0JBZC9CLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLHNCQUFzQjtxQkFDdkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixXQUFXO3dCQUNYLG1CQUFtQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHNCQUFzQjtxQkFDdkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUaW1lc2NoZWR1bGVyQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lc2NoZWR1bGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXRlSW5wdXRzTW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItZGF0ZWlucHV0cyc7XG5pbXBvcnQgeyBCdXR0b25zTW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItYnV0dG9ucyc7XG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVGltZXNjaGVkdWxlckNvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgRGF0ZUlucHV0c01vZHVsZSxcbiAgICBCdXR0b25zTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFRpbWVzY2hlZHVsZXJDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBUaW1lc2NoZWR1bGVyTW9kdWxlIHsgfVxuIl19
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { NotificationModule, NotificationService } from '@progress/kendo-angular-notification';
|
|
4
|
+
import { IconsService } from '@progress/kendo-angular-icons';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class ToastNotificationModule {
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ToastNotificationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: ToastNotificationModule, imports: [CommonModule,
|
|
9
|
+
NotificationModule] }); }
|
|
10
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ToastNotificationModule, providers: [
|
|
11
|
+
IconsService,
|
|
12
|
+
NotificationService
|
|
13
|
+
], imports: [CommonModule,
|
|
14
|
+
NotificationModule] }); }
|
|
15
|
+
}
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ToastNotificationModule, decorators: [{
|
|
17
|
+
type: NgModule,
|
|
18
|
+
args: [{
|
|
19
|
+
declarations: [],
|
|
20
|
+
imports: [
|
|
21
|
+
CommonModule,
|
|
22
|
+
NotificationModule
|
|
23
|
+
],
|
|
24
|
+
exports: [],
|
|
25
|
+
providers: [
|
|
26
|
+
IconsService,
|
|
27
|
+
NotificationService
|
|
28
|
+
]
|
|
29
|
+
}]
|
|
30
|
+
}] });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Qtbm90aWZpY2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvbGliL2F0b21zL3RvYXN0LW5vdGlmaWNhdGlvbi90b2FzdC1ub3RpZmljYXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9GLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFtQjdELE1BQU0sT0FBTyx1QkFBdUI7K0dBQXZCLHVCQUF1QjtnSEFBdkIsdUJBQXVCLFlBWGhDLFlBQVk7WUFDWixrQkFBa0I7Z0hBVVQsdUJBQXVCLGFBTHZCO1lBQ1QsWUFBWTtZQUNaLG1CQUFtQjtTQUNwQixZQVRDLFlBQVk7WUFDWixrQkFBa0I7OzRGQVVULHVCQUF1QjtrQkFoQm5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLEVBRWI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osa0JBQWtCO3FCQUNuQjtvQkFDRCxPQUFPLEVBQUUsRUFFUjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1QsWUFBWTt3QkFDWixtQkFBbUI7cUJBQ3BCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25Nb2R1bGUsIE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1ub3RpZmljYXRpb24nO1xuaW1wb3J0IHsgSWNvbnNTZXJ2aWNlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItaWNvbnMnO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE5vdGlmaWNhdGlvbk1vZHVsZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIEljb25zU2VydmljZSxcbiAgICBOb3RpZmljYXRpb25TZXJ2aWNlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVG9hc3ROb3RpZmljYXRpb25Nb2R1bGUgeyB9XG4iXX0=
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@progress/kendo-angular-notification";
|
|
4
|
+
export class ToastNotificationService {
|
|
5
|
+
constructor(notificationService, rendererFactory) {
|
|
6
|
+
this.notificationService = notificationService;
|
|
7
|
+
this.httpStatusHandledInHttpInterceptor = new Set([0, 202, 207, 401, 402, 403, 405, 500, 502, 503, 504]);
|
|
8
|
+
this.errMessagesSet = new Set();
|
|
9
|
+
this.allSubscriptions = [];
|
|
10
|
+
this.errorNotifications = [];
|
|
11
|
+
this.infoNotifications = [];
|
|
12
|
+
this.toastElement = null;
|
|
13
|
+
this.notificationsContainerSelector = "kendo-notification-container > div.k-notification-group";
|
|
14
|
+
this.errNotificationClickListener = null;
|
|
15
|
+
this.documentClickListener = null;
|
|
16
|
+
this.renderer = rendererFactory.createRenderer(null, null);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* @param notification
|
|
20
|
+
* default notification config:
|
|
21
|
+
* - content: '',
|
|
22
|
+
* - animation: { type: 'slide', duration: 400 },
|
|
23
|
+
* - position: { horizontal: 'center', vertical: 'top' },
|
|
24
|
+
* - type: { style: 'success', icon: true },
|
|
25
|
+
* - hideAfter: 4000,
|
|
26
|
+
*/
|
|
27
|
+
showToastNotification(notification) {
|
|
28
|
+
const defaultNotification = {
|
|
29
|
+
content: '',
|
|
30
|
+
animation: { type: 'slide', duration: 400 },
|
|
31
|
+
position: { horizontal: 'center', vertical: 'top' },
|
|
32
|
+
type: { style: 'success', icon: true },
|
|
33
|
+
hideAfter: window.hideAfter || 6000, // window.hideAfter is used to finalize final time for hideAfter. It must be removed.
|
|
34
|
+
action: {}
|
|
35
|
+
};
|
|
36
|
+
const mergedNotification = { ...defaultNotification, ...notification };
|
|
37
|
+
if (this.httpStatusHandledInHttpInterceptor.has(mergedNotification?.action?.payload?.error?.status) ||
|
|
38
|
+
this.httpStatusHandledInHttpInterceptor.has(mergedNotification?.action?.payload?.response?.code)) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
if (mergedNotification.type.style === 'error' && this.errMessagesSet.has(mergedNotification.content)) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
if (mergedNotification.type.style === 'error') {
|
|
45
|
+
this.processErrorNotification(mergedNotification);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
const nonErrNotification = this.notificationService.show({
|
|
49
|
+
content: mergedNotification.content,
|
|
50
|
+
cssClass: mergedNotification.cssClass,
|
|
51
|
+
animation: mergedNotification.animation,
|
|
52
|
+
position: mergedNotification.position,
|
|
53
|
+
type: mergedNotification.type,
|
|
54
|
+
closable: mergedNotification.closable,
|
|
55
|
+
hideAfter: mergedNotification.hideAfter,
|
|
56
|
+
});
|
|
57
|
+
if (mergedNotification.type.style === 'info') {
|
|
58
|
+
this.infoNotifications.push(nonErrNotification);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
processErrorNotification(notification) {
|
|
63
|
+
this.errMessagesSet.add(notification.content);
|
|
64
|
+
const errNotification = this.notificationService.show({
|
|
65
|
+
content: notification.content,
|
|
66
|
+
cssClass: notification.cssClass,
|
|
67
|
+
animation: notification.animation,
|
|
68
|
+
position: notification.position,
|
|
69
|
+
type: notification.type,
|
|
70
|
+
closable: notification.closable,
|
|
71
|
+
hideAfter: notification.hideAfter,
|
|
72
|
+
});
|
|
73
|
+
this.errorNotifications.push(errNotification);
|
|
74
|
+
try {
|
|
75
|
+
this.notificationsContainer = this.renderer.selectRootElement(this.notificationsContainerSelector, true);
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
console.error('Error Toast Notification Container NOT found', error);
|
|
79
|
+
}
|
|
80
|
+
if (this.notificationsContainer) {
|
|
81
|
+
console.log('Toast Notification Container found');
|
|
82
|
+
if (this.registerClickListenersTimeoutId) {
|
|
83
|
+
clearTimeout(this.registerClickListenersTimeoutId);
|
|
84
|
+
}
|
|
85
|
+
// This defers the execution of click listener addition to the next event loop cycle.
|
|
86
|
+
// It ensures that the current click event (which triggered the notification) is not captured by the newly added listener.
|
|
87
|
+
this.registerClickListenersTimeoutId = setTimeout(() => this.registerClickListenersErrNotifications(), 0);
|
|
88
|
+
}
|
|
89
|
+
// On click of close icon in notification, hide all error notifications present
|
|
90
|
+
if (errNotification?.afterHide) {
|
|
91
|
+
this.allSubscriptions.push(errNotification.afterHide.subscribe(() => {
|
|
92
|
+
if (this.errMessagesSet.size && this.errorNotifications.length) {
|
|
93
|
+
this.hideErrorToastNotifications();
|
|
94
|
+
}
|
|
95
|
+
}));
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
registerClickListenersErrNotifications() {
|
|
99
|
+
if (this.notificationsContainer && !this.documentClickListener) {
|
|
100
|
+
// listen for click events on the error notifications container
|
|
101
|
+
this.errNotificationClickListener = this.renderer.listen(this.notificationsContainer, 'click', (event) => event.stopPropagation());
|
|
102
|
+
// listen for click events on the document when error notifications are shown
|
|
103
|
+
this.documentClickListener = this.renderer.listen('document', 'click', (event) => this.onClickOutCloseErrors(event));
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
onClickOutCloseErrors(event) {
|
|
107
|
+
if (this.notificationsContainer && !this.notificationsContainer.contains(event.target)) {
|
|
108
|
+
this.hideErrorToastNotifications();
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
hideToastNotifications(filter) {
|
|
112
|
+
if (filter === 'error') {
|
|
113
|
+
this.errorNotifications.forEach((notification) => notification.hide());
|
|
114
|
+
this.errMessagesSet.clear();
|
|
115
|
+
this.errorNotifications = [];
|
|
116
|
+
this.cleanUpListenersAndSubsForErr();
|
|
117
|
+
}
|
|
118
|
+
else if (filter === 'info') {
|
|
119
|
+
this.infoNotifications.forEach((notification) => notification.hide());
|
|
120
|
+
this.infoNotifications = [];
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
hideErrorToastNotifications() {
|
|
124
|
+
this.hideToastNotifications('error');
|
|
125
|
+
}
|
|
126
|
+
hideInfoToastNotifications() {
|
|
127
|
+
this.hideToastNotifications('info');
|
|
128
|
+
}
|
|
129
|
+
// This method only handles the cleanup of error notifications
|
|
130
|
+
cleanUpListenersAndSubsForErr() {
|
|
131
|
+
if (this.notificationsContainer) {
|
|
132
|
+
if (this.errNotificationClickListener) {
|
|
133
|
+
this.errNotificationClickListener();
|
|
134
|
+
this.errNotificationClickListener = null;
|
|
135
|
+
}
|
|
136
|
+
if (this.documentClickListener) {
|
|
137
|
+
this.documentClickListener();
|
|
138
|
+
this.documentClickListener = null;
|
|
139
|
+
}
|
|
140
|
+
this.notificationsContainer = null;
|
|
141
|
+
}
|
|
142
|
+
if (this.registerClickListenersTimeoutId) {
|
|
143
|
+
clearTimeout(this.registerClickListenersTimeoutId);
|
|
144
|
+
this.registerClickListenersTimeoutId = null;
|
|
145
|
+
}
|
|
146
|
+
this.allSubscriptions.forEach((subs) => subs.unsubscribe());
|
|
147
|
+
}
|
|
148
|
+
ngOnDestroy() {
|
|
149
|
+
this.cleanUpListenersAndSubsForErr();
|
|
150
|
+
}
|
|
151
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ToastNotificationService, deps: [{ token: i1.NotificationService }, { token: i0.RendererFactory2 }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
152
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ToastNotificationService, providedIn: 'root' }); }
|
|
153
|
+
}
|
|
154
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ToastNotificationService, decorators: [{
|
|
155
|
+
type: Injectable,
|
|
156
|
+
args: [{
|
|
157
|
+
providedIn: 'root',
|
|
158
|
+
}]
|
|
159
|
+
}], ctorParameters: () => [{ type: i1.NotificationService }, { type: i0.RendererFactory2 }] });
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Qtbm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9hdG9tcy90b2FzdC1ub3RpZmljYXRpb24vdG9hc3Qtbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBdUQsTUFBTSxlQUFlLENBQUM7OztBQWtCaEcsTUFBTSxPQUFPLHdCQUF3QjtJQWdCbkMsWUFDbUIsbUJBQXdDLEVBQ3pELGVBQWlDO1FBRGhCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFmM0QsdUNBQWtDLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNwRyxtQkFBYyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDM0IscUJBQWdCLEdBQW1CLEVBQUUsQ0FBQztRQUN0Qyx1QkFBa0IsR0FBc0IsRUFBRSxDQUFDO1FBQzNDLHNCQUFpQixHQUFzQixFQUFFLENBQUM7UUFDMUMsaUJBQVksR0FBdUIsSUFBSSxDQUFDO1FBQ3hDLG1DQUE4QixHQUFHLHlEQUF5RCxDQUFDO1FBQ25GLGlDQUE0QixHQUF3QixJQUFJLENBQUM7UUFDekQsMEJBQXFCLEdBQXdCLElBQUksQ0FBQztRQVV4RCxJQUFJLENBQUMsUUFBUSxHQUFHLGVBQWUsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUVJLHFCQUFxQixDQUFDLFlBQStCO1FBQzFELE1BQU0sbUJBQW1CLEdBQXNCO1lBQzdDLE9BQU8sRUFBRSxFQUFFO1lBQ1gsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFO1lBQzNDLFFBQVEsRUFBRSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRTtZQUNuRCxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7WUFDdEMsU0FBUyxFQUFHLE1BQWMsQ0FBQyxTQUFTLElBQUksSUFBSSxFQUFFLHFGQUFxRjtZQUNuSSxNQUFNLEVBQUUsRUFBRTtTQUNYLENBQUE7UUFDRCxNQUFNLGtCQUFrQixHQUFHLEVBQUUsR0FBRyxtQkFBbUIsRUFBRSxHQUFHLFlBQVksRUFBRSxDQUFDO1FBQ3ZFLElBQUksSUFBSSxDQUFDLGtDQUFrQyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUM7WUFDakcsSUFBSSxDQUFDLGtDQUFrQyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ25HLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ3JHLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ25ELENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxrQkFBa0IsR0FBb0IsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQztnQkFDeEUsT0FBTyxFQUFFLGtCQUFrQixDQUFDLE9BQU87Z0JBQ25DLFFBQVEsRUFBRSxrQkFBa0IsQ0FBQyxRQUFRO2dCQUNyQyxTQUFTLEVBQUUsa0JBQWtCLENBQUMsU0FBUztnQkFDdkMsUUFBUSxFQUFFLGtCQUFrQixDQUFDLFFBQVE7Z0JBQ3JDLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxJQUFJO2dCQUM3QixRQUFRLEVBQUUsa0JBQWtCLENBQUMsUUFBUTtnQkFDckMsU0FBUyxFQUFFLGtCQUFrQixDQUFDLFNBQVM7YUFDeEMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLE1BQU0sRUFBRSxDQUFDO2dCQUM3QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7WUFDbEQsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRU8sd0JBQXdCLENBQUMsWUFBK0I7UUFDOUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlDLE1BQU0sZUFBZSxHQUFvQixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDO1lBQ3JFLE9BQU8sRUFBRSxZQUFZLENBQUMsT0FBTztZQUM3QixRQUFRLEVBQUUsWUFBWSxDQUFDLFFBQVE7WUFDL0IsU0FBUyxFQUFFLFlBQVksQ0FBQyxTQUFTO1lBQ2pDLFFBQVEsRUFBRSxZQUFZLENBQUMsUUFBUTtZQUMvQixJQUFJLEVBQUUsWUFBWSxDQUFDLElBQUk7WUFDdkIsUUFBUSxFQUFFLFlBQVksQ0FBQyxRQUFRO1lBQy9CLFNBQVMsRUFBRSxZQUFZLENBQUMsU0FBUztTQUNsQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQztZQUNILElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyw4QkFBOEIsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzRyxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsOENBQThDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkUsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFDaEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1lBQ2xELElBQUksSUFBSSxDQUFDLCtCQUErQixFQUFFLENBQUM7Z0JBQ3pDLFlBQVksQ0FBQyxJQUFJLENBQUMsK0JBQStCLENBQUMsQ0FBQztZQUNyRCxDQUFDO1lBQ0QscUZBQXFGO1lBQ3JGLGlJQUFpSTtZQUNqSSxJQUFJLENBQUMsK0JBQStCLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxzQ0FBc0MsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzVHLENBQUM7UUFFRCxnRkFBZ0Y7UUFDaEYsSUFBSSxlQUFlLEVBQUUsU0FBUyxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2xFLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUMvRCxJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztnQkFDckMsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDTixDQUFDO0lBQ0gsQ0FBQztJQUVPLHNDQUFzQztRQUM1QyxJQUFJLElBQUksQ0FBQyxzQkFBc0IsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQy9ELCtEQUErRDtZQUMvRCxJQUFJLENBQUMsNEJBQTRCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLE9BQU8sRUFBRSxDQUFDLEtBQWlCLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDO1lBQy9JLDZFQUE2RTtZQUM3RSxJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxDQUFDLEtBQWlCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ25JLENBQUM7SUFDSCxDQUFDO0lBRU8scUJBQXFCLENBQUMsS0FBaUI7UUFDN0MsSUFBSSxJQUFJLENBQUMsc0JBQXNCLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFjLENBQUMsRUFBRSxDQUFDO1lBQy9GLElBQUksQ0FBQywyQkFBMkIsRUFBRSxDQUFDO1FBQ3JDLENBQUM7SUFDSCxDQUFDO0lBRU0sc0JBQXNCLENBQUMsTUFBd0I7UUFDcEQsSUFBSSxNQUFNLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUE7WUFDdEUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyw2QkFBNkIsRUFBRSxDQUFDO1FBQ3ZDLENBQUM7YUFBTSxJQUFJLE1BQU0sS0FBSyxNQUFNLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQTtZQUNyRSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO1FBQzlCLENBQUM7SUFDSCxDQUFDO0lBRU0sMkJBQTJCO1FBQ2hDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRU0sMEJBQTBCO1FBQy9CLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsOERBQThEO0lBQ3RELDZCQUE2QjtRQUNuQyxJQUFJLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQ2hDLElBQUksSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7Z0JBQ3RDLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO2dCQUNwQyxJQUFJLENBQUMsNEJBQTRCLEdBQUcsSUFBSSxDQUFDO1lBQzNDLENBQUM7WUFDRCxJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO2dCQUMvQixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztnQkFDN0IsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztZQUNwQyxDQUFDO1lBQ0QsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQztRQUNyQyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsK0JBQStCLEVBQUUsQ0FBQztZQUN6QyxZQUFZLENBQUMsSUFBSSxDQUFDLCtCQUErQixDQUFDLENBQUM7WUFDbkQsSUFBSSxDQUFDLCtCQUErQixHQUFHLElBQUksQ0FBQztRQUM5QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUE7SUFDN0QsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsNkJBQTZCLEVBQUUsQ0FBQztJQUN2QyxDQUFDOytHQXJLVSx3QkFBd0I7bUhBQXhCLHdCQUF3QixjQUZ2QixNQUFNOzs0RkFFUCx3QkFBd0I7a0JBSHBDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBSZW5kZXJlcjIsIFJlbmRlcmVyRmFjdG9yeTIsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25SZWYsIE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1ub3RpZmljYXRpb24nO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVG9hc3ROb3RpZmljYXRpb24ge1xuICBjb250ZW50OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+IHwgRnVuY3Rpb24sXG4gIGNzc0NsYXNzPzogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPiB8IE9iamVjdCxcbiAgYW5pbWF0aW9uPzogYW55LFxuICBwb3NpdGlvbj86IGFueSxcbiAgdHlwZT86IGFueSxcbiAgY2xvc2FibGU/OiBib29sZWFuLFxuICBoaWRlQWZ0ZXI/OiBudW1iZXJcbiAgYWN0aW9uOiBhbnlcbn1cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0Tm90aWZpY2F0aW9uU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgaHR0cFN0YXR1c0hhbmRsZWRJbkh0dHBJbnRlcmNlcHRvciA9IG5ldyBTZXQoWzAsIDIwMiwgMjA3LCA0MDEsIDQwMiwgNDAzLCA0MDUsIDUwMCwgNTAyLCA1MDMsIDUwNF0pO1xuICBlcnJNZXNzYWdlc1NldCA9IG5ldyBTZXQoKTtcbiAgYWxsU3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcbiAgZXJyb3JOb3RpZmljYXRpb25zOiBOb3RpZmljYXRpb25SZWZbXSA9IFtdO1xuICBpbmZvTm90aWZpY2F0aW9uczogTm90aWZpY2F0aW9uUmVmW10gPSBbXTtcbiAgdG9hc3RFbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSBudWxsO1xuICBub3RpZmljYXRpb25zQ29udGFpbmVyU2VsZWN0b3IgPSBcImtlbmRvLW5vdGlmaWNhdGlvbi1jb250YWluZXIgPiBkaXYuay1ub3RpZmljYXRpb24tZ3JvdXBcIjtcbiAgcHJpdmF0ZSBlcnJOb3RpZmljYXRpb25DbGlja0xpc3RlbmVyOiAoKCkgPT4gdm9pZCkgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBkb2N1bWVudENsaWNrTGlzdGVuZXI6ICgoKSA9PiB2b2lkKSB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlbmRlcmVyOiBSZW5kZXJlcjI7XG4gIG5vdGlmaWNhdGlvbnNDb250YWluZXI6IGFueTtcbiAgcmVnaXN0ZXJDbGlja0xpc3RlbmVyc1RpbWVvdXRJZDogYW55O1xuICBub3RpZmljYXRpb25BZnRlckhpZGVTdWJzY3JpcHRpb24kOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBub3RpZmljYXRpb25TZXJ2aWNlOiBOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgIHJlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5MlxuICApIHtcbiAgICB0aGlzLnJlbmRlcmVyID0gcmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBub3RpZmljYXRpb24gXG4gICAqIGRlZmF1bHQgbm90aWZpY2F0aW9uIGNvbmZpZzpcbiAgICogLSBjb250ZW50OiAnJyxcbiAgICogLSBhbmltYXRpb246IHsgdHlwZTogJ3NsaWRlJywgZHVyYXRpb246IDQwMCB9LFxuICAgKiAtIHBvc2l0aW9uOiB7IGhvcml6b250YWw6ICdjZW50ZXInLCB2ZXJ0aWNhbDogJ3RvcCcgfSxcbiAgICogLSB0eXBlOiB7IHN0eWxlOiAnc3VjY2VzcycsIGljb246IHRydWUgfSxcbiAgICogLSBoaWRlQWZ0ZXI6IDQwMDAsXG4gICAqL1xuXG4gIHB1YmxpYyBzaG93VG9hc3ROb3RpZmljYXRpb24obm90aWZpY2F0aW9uOiBUb2FzdE5vdGlmaWNhdGlvbikge1xuICAgIGNvbnN0IGRlZmF1bHROb3RpZmljYXRpb246IFRvYXN0Tm90aWZpY2F0aW9uID0ge1xuICAgICAgY29udGVudDogJycsXG4gICAgICBhbmltYXRpb246IHsgdHlwZTogJ3NsaWRlJywgZHVyYXRpb246IDQwMCB9LFxuICAgICAgcG9zaXRpb246IHsgaG9yaXpvbnRhbDogJ2NlbnRlcicsIHZlcnRpY2FsOiAndG9wJyB9LFxuICAgICAgdHlwZTogeyBzdHlsZTogJ3N1Y2Nlc3MnLCBpY29uOiB0cnVlIH0sXG4gICAgICBoaWRlQWZ0ZXI6ICh3aW5kb3cgYXMgYW55KS5oaWRlQWZ0ZXIgfHwgNjAwMCwgLy8gd2luZG93LmhpZGVBZnRlciBpcyB1c2VkIHRvIGZpbmFsaXplIGZpbmFsIHRpbWUgZm9yIGhpZGVBZnRlci4gSXQgbXVzdCBiZSByZW1vdmVkLlxuICAgICAgYWN0aW9uOiB7fVxuICAgIH1cbiAgICBjb25zdCBtZXJnZWROb3RpZmljYXRpb24gPSB7IC4uLmRlZmF1bHROb3RpZmljYXRpb24sIC4uLm5vdGlmaWNhdGlvbiB9O1xuICAgIGlmICh0aGlzLmh0dHBTdGF0dXNIYW5kbGVkSW5IdHRwSW50ZXJjZXB0b3IuaGFzKG1lcmdlZE5vdGlmaWNhdGlvbj8uYWN0aW9uPy5wYXlsb2FkPy5lcnJvcj8uc3RhdHVzKSB8fFxuICAgICAgdGhpcy5odHRwU3RhdHVzSGFuZGxlZEluSHR0cEludGVyY2VwdG9yLmhhcyhtZXJnZWROb3RpZmljYXRpb24/LmFjdGlvbj8ucGF5bG9hZD8ucmVzcG9uc2U/LmNvZGUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKG1lcmdlZE5vdGlmaWNhdGlvbi50eXBlLnN0eWxlID09PSAnZXJyb3InICYmIHRoaXMuZXJyTWVzc2FnZXNTZXQuaGFzKG1lcmdlZE5vdGlmaWNhdGlvbi5jb250ZW50KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChtZXJnZWROb3RpZmljYXRpb24udHlwZS5zdHlsZSA9PT0gJ2Vycm9yJykge1xuICAgICB0aGlzLnByb2Nlc3NFcnJvck5vdGlmaWNhdGlvbihtZXJnZWROb3RpZmljYXRpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBub25FcnJOb3RpZmljYXRpb246IE5vdGlmaWNhdGlvblJlZiA9IHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5zaG93KHtcbiAgICAgICAgY29udGVudDogbWVyZ2VkTm90aWZpY2F0aW9uLmNvbnRlbnQsXG4gICAgICAgIGNzc0NsYXNzOiBtZXJnZWROb3RpZmljYXRpb24uY3NzQ2xhc3MsXG4gICAgICAgIGFuaW1hdGlvbjogbWVyZ2VkTm90aWZpY2F0aW9uLmFuaW1hdGlvbixcbiAgICAgICAgcG9zaXRpb246IG1lcmdlZE5vdGlmaWNhdGlvbi5wb3NpdGlvbixcbiAgICAgICAgdHlwZTogbWVyZ2VkTm90aWZpY2F0aW9uLnR5cGUsXG4gICAgICAgIGNsb3NhYmxlOiBtZXJnZWROb3RpZmljYXRpb24uY2xvc2FibGUsXG4gICAgICAgIGhpZGVBZnRlcjogbWVyZ2VkTm90aWZpY2F0aW9uLmhpZGVBZnRlcixcbiAgICAgIH0pO1xuICAgICAgaWYgKG1lcmdlZE5vdGlmaWNhdGlvbi50eXBlLnN0eWxlID09PSAnaW5mbycpIHtcbiAgICAgICAgdGhpcy5pbmZvTm90aWZpY2F0aW9ucy5wdXNoKG5vbkVyck5vdGlmaWNhdGlvbik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwcm9jZXNzRXJyb3JOb3RpZmljYXRpb24obm90aWZpY2F0aW9uOiBUb2FzdE5vdGlmaWNhdGlvbikge1xuICAgIHRoaXMuZXJyTWVzc2FnZXNTZXQuYWRkKG5vdGlmaWNhdGlvbi5jb250ZW50KTtcbiAgICBjb25zdCBlcnJOb3RpZmljYXRpb246IE5vdGlmaWNhdGlvblJlZiA9IHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5zaG93KHtcbiAgICAgIGNvbnRlbnQ6IG5vdGlmaWNhdGlvbi5jb250ZW50LFxuICAgICAgY3NzQ2xhc3M6IG5vdGlmaWNhdGlvbi5jc3NDbGFzcyxcbiAgICAgIGFuaW1hdGlvbjogbm90aWZpY2F0aW9uLmFuaW1hdGlvbixcbiAgICAgIHBvc2l0aW9uOiBub3RpZmljYXRpb24ucG9zaXRpb24sXG4gICAgICB0eXBlOiBub3RpZmljYXRpb24udHlwZSxcbiAgICAgIGNsb3NhYmxlOiBub3RpZmljYXRpb24uY2xvc2FibGUsXG4gICAgICBoaWRlQWZ0ZXI6IG5vdGlmaWNhdGlvbi5oaWRlQWZ0ZXIsXG4gICAgfSk7XG4gICAgdGhpcy5lcnJvck5vdGlmaWNhdGlvbnMucHVzaChlcnJOb3RpZmljYXRpb24pO1xuICAgIHRyeSB7XG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnNDb250YWluZXIgPSB0aGlzLnJlbmRlcmVyLnNlbGVjdFJvb3RFbGVtZW50KHRoaXMubm90aWZpY2F0aW9uc0NvbnRhaW5lclNlbGVjdG9yLCB0cnVlKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgVG9hc3QgTm90aWZpY2F0aW9uIENvbnRhaW5lciBOT1QgZm91bmQnLCBlcnJvcik7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubm90aWZpY2F0aW9uc0NvbnRhaW5lcikge1xuICAgICAgY29uc29sZS5sb2coJ1RvYXN0IE5vdGlmaWNhdGlvbiBDb250YWluZXIgZm91bmQnKTtcbiAgICAgIGlmICh0aGlzLnJlZ2lzdGVyQ2xpY2tMaXN0ZW5lcnNUaW1lb3V0SWQpIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVnaXN0ZXJDbGlja0xpc3RlbmVyc1RpbWVvdXRJZCk7XG4gICAgICB9XG4gICAgICAvLyBUaGlzIGRlZmVycyB0aGUgZXhlY3V0aW9uIG9mIGNsaWNrIGxpc3RlbmVyIGFkZGl0aW9uIHRvIHRoZSBuZXh0IGV2ZW50IGxvb3AgY3ljbGUuXG4gICAgICAvLyBJdCBlbnN1cmVzIHRoYXQgdGhlIGN1cnJlbnQgY2xpY2sgZXZlbnQgKHdoaWNoIHRyaWdnZXJlZCB0aGUgbm90aWZpY2F0aW9uKSBpcyBub3QgY2FwdHVyZWQgYnkgdGhlIG5ld2x5IGFkZGVkIGxpc3RlbmVyLiAgICAgICBcbiAgICAgIHRoaXMucmVnaXN0ZXJDbGlja0xpc3RlbmVyc1RpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4gdGhpcy5yZWdpc3RlckNsaWNrTGlzdGVuZXJzRXJyTm90aWZpY2F0aW9ucygpLCAwKTtcbiAgICB9XG5cbiAgICAvLyAgT24gY2xpY2sgb2YgY2xvc2UgaWNvbiBpbiBub3RpZmljYXRpb24sIGhpZGUgYWxsIGVycm9yIG5vdGlmaWNhdGlvbnMgcHJlc2VudFxuICAgIGlmIChlcnJOb3RpZmljYXRpb24/LmFmdGVySGlkZSkge1xuICAgICAgdGhpcy5hbGxTdWJzY3JpcHRpb25zLnB1c2goZXJyTm90aWZpY2F0aW9uLmFmdGVySGlkZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5lcnJNZXNzYWdlc1NldC5zaXplICYmIHRoaXMuZXJyb3JOb3RpZmljYXRpb25zLmxlbmd0aCkge1xuICAgICAgICAgIHRoaXMuaGlkZUVycm9yVG9hc3ROb3RpZmljYXRpb25zKCk7XG4gICAgICAgIH1cbiAgICAgIH0pKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJlZ2lzdGVyQ2xpY2tMaXN0ZW5lcnNFcnJOb3RpZmljYXRpb25zKCkge1xuICAgIGlmICh0aGlzLm5vdGlmaWNhdGlvbnNDb250YWluZXIgJiYgIXRoaXMuZG9jdW1lbnRDbGlja0xpc3RlbmVyKSB7XG4gICAgICAvLyBsaXN0ZW4gZm9yIGNsaWNrIGV2ZW50cyBvbiB0aGUgZXJyb3Igbm90aWZpY2F0aW9ucyBjb250YWluZXJcbiAgICAgIHRoaXMuZXJyTm90aWZpY2F0aW9uQ2xpY2tMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHRoaXMubm90aWZpY2F0aW9uc0NvbnRhaW5lciwgJ2NsaWNrJywgKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiBldmVudC5zdG9wUHJvcGFnYXRpb24oKSk7XG4gICAgICAvLyBsaXN0ZW4gZm9yIGNsaWNrIGV2ZW50cyBvbiB0aGUgZG9jdW1lbnQgd2hlbiBlcnJvciBub3RpZmljYXRpb25zIGFyZSBzaG93blxuICAgICAgdGhpcy5kb2N1bWVudENsaWNrTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbignZG9jdW1lbnQnLCAnY2xpY2snLCAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHRoaXMub25DbGlja091dENsb3NlRXJyb3JzKGV2ZW50KSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvbkNsaWNrT3V0Q2xvc2VFcnJvcnMoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBpZiAodGhpcy5ub3RpZmljYXRpb25zQ29udGFpbmVyICYmICF0aGlzLm5vdGlmaWNhdGlvbnNDb250YWluZXIuY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIE5vZGUpKSB7XG4gICAgICB0aGlzLmhpZGVFcnJvclRvYXN0Tm90aWZpY2F0aW9ucygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBoaWRlVG9hc3ROb3RpZmljYXRpb25zKGZpbHRlcjogJ2Vycm9yJyB8ICdpbmZvJykge1xuICAgIGlmIChmaWx0ZXIgPT09ICdlcnJvcicpIHtcbiAgICAgIHRoaXMuZXJyb3JOb3RpZmljYXRpb25zLmZvckVhY2goKG5vdGlmaWNhdGlvbikgPT4gbm90aWZpY2F0aW9uLmhpZGUoKSlcbiAgICAgIHRoaXMuZXJyTWVzc2FnZXNTZXQuY2xlYXIoKTtcbiAgICAgIHRoaXMuZXJyb3JOb3RpZmljYXRpb25zID0gW107XG4gICAgICB0aGlzLmNsZWFuVXBMaXN0ZW5lcnNBbmRTdWJzRm9yRXJyKCk7XG4gICAgfSBlbHNlIGlmIChmaWx0ZXIgPT09ICdpbmZvJykge1xuICAgICAgdGhpcy5pbmZvTm90aWZpY2F0aW9ucy5mb3JFYWNoKChub3RpZmljYXRpb24pID0+IG5vdGlmaWNhdGlvbi5oaWRlKCkpXG4gICAgICB0aGlzLmluZm9Ob3RpZmljYXRpb25zID0gW107XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGhpZGVFcnJvclRvYXN0Tm90aWZpY2F0aW9ucygpIHtcbiAgICB0aGlzLmhpZGVUb2FzdE5vdGlmaWNhdGlvbnMoJ2Vycm9yJyk7XG4gIH1cblxuICBwdWJsaWMgaGlkZUluZm9Ub2FzdE5vdGlmaWNhdGlvbnMoKSB7XG4gICAgdGhpcy5oaWRlVG9hc3ROb3RpZmljYXRpb25zKCdpbmZvJyk7XG4gIH1cblxuICAvLyBUaGlzIG1ldGhvZCBvbmx5IGhhbmRsZXMgdGhlIGNsZWFudXAgb2YgZXJyb3Igbm90aWZpY2F0aW9uc1xuICBwcml2YXRlIGNsZWFuVXBMaXN0ZW5lcnNBbmRTdWJzRm9yRXJyKCkge1xuICAgIGlmICh0aGlzLm5vdGlmaWNhdGlvbnNDb250YWluZXIpIHtcbiAgICAgIGlmICh0aGlzLmVyck5vdGlmaWNhdGlvbkNsaWNrTGlzdGVuZXIpIHtcbiAgICAgICAgdGhpcy5lcnJOb3RpZmljYXRpb25DbGlja0xpc3RlbmVyKCk7XG4gICAgICAgIHRoaXMuZXJyTm90aWZpY2F0aW9uQ2xpY2tMaXN0ZW5lciA9IG51bGw7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5kb2N1bWVudENsaWNrTGlzdGVuZXIpIHtcbiAgICAgICAgdGhpcy5kb2N1bWVudENsaWNrTGlzdGVuZXIoKTtcbiAgICAgICAgdGhpcy5kb2N1bWVudENsaWNrTGlzdGVuZXIgPSBudWxsO1xuICAgICAgfVxuICAgICAgdGhpcy5ub3RpZmljYXRpb25zQ29udGFpbmVyID0gbnVsbDtcbiAgICB9XG4gICAgaWYgKHRoaXMucmVnaXN0ZXJDbGlja0xpc3RlbmVyc1RpbWVvdXRJZCkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVnaXN0ZXJDbGlja0xpc3RlbmVyc1RpbWVvdXRJZCk7XG4gICAgICB0aGlzLnJlZ2lzdGVyQ2xpY2tMaXN0ZW5lcnNUaW1lb3V0SWQgPSBudWxsO1xuICAgIH1cbiAgICB0aGlzLmFsbFN1YnNjcmlwdGlvbnMuZm9yRWFjaCgoc3VicykgPT4gc3Vicy51bnN1YnNjcmliZSgpKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5jbGVhblVwTGlzdGVuZXJzQW5kU3Vic0ZvckVycigpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Component, HostListener, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@progress-chef/platform-themes-service";
|
|
4
|
+
import * as i2 from "@progress/kendo-angular-tooltip";
|
|
5
|
+
export class TooltipComponent {
|
|
6
|
+
constructor(themesService) {
|
|
7
|
+
this.themesService = themesService;
|
|
8
|
+
this.position = 'right';
|
|
9
|
+
this.showOn = 'hover';
|
|
10
|
+
this.closable = false;
|
|
11
|
+
this.title = 'tool';
|
|
12
|
+
}
|
|
13
|
+
onDocumentClick($event) {
|
|
14
|
+
if (this.closable) {
|
|
15
|
+
const elRef = document.getElementsByClassName(`tooltip-content`);
|
|
16
|
+
if (elRef?.length && !elRef?.[0]?.contains($event.target)) {
|
|
17
|
+
this.tooltip.hide();
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TooltipComponent, deps: [{ token: i1.ThemesService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
22
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TooltipComponent, selector: "lib-tooltip", inputs: { position: "position", tooltipWidth: "tooltipWidth", tooltipHeight: "tooltipHeight", showOn: "showOn", closable: "closable", title: "title", callout: "callout" }, host: { listeners: { "document:click": "onDocumentClick($event)" } }, viewQueries: [{ propertyName: "tooltip", first: true, predicate: ["tooltip"], descendants: true }], ngImport: i0, template: "<div #tooltip=\"kendoTooltip\" kendoTooltip [tooltipTemplate]=\"template\" [position]=\"position\" [title]=\"title\" [callout]=\"callout\"\n [showOn]=\"showOn\" [tooltipWidth]=\"tooltipWidth\" [tooltipHeight]=\"tooltipHeight\" [closable]=\"closable\">\n <ng-content></ng-content>\n</div>\n\n<ng-template #template>\n <ng-content select=\"div.tooltip-content\"></ng-content>\n</ng-template>\n", styles: [".random-css-to-not-keep-this-file-empty{display:none}\n"], dependencies: [{ kind: "directive", type: i2.TooltipDirective, selector: "[kendoTooltip]", inputs: ["filter", "position", "titleTemplate", "showOn", "showAfter", "callout", "closable", "offset", "tooltipWidth", "tooltipHeight", "tooltipClass", "collision", "closeTitle", "tooltipTemplate"], exportAs: ["kendoTooltip"] }] }); }
|
|
23
|
+
}
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TooltipComponent, decorators: [{
|
|
25
|
+
type: Component,
|
|
26
|
+
args: [{ selector: 'lib-tooltip', template: "<div #tooltip=\"kendoTooltip\" kendoTooltip [tooltipTemplate]=\"template\" [position]=\"position\" [title]=\"title\" [callout]=\"callout\"\n [showOn]=\"showOn\" [tooltipWidth]=\"tooltipWidth\" [tooltipHeight]=\"tooltipHeight\" [closable]=\"closable\">\n <ng-content></ng-content>\n</div>\n\n<ng-template #template>\n <ng-content select=\"div.tooltip-content\"></ng-content>\n</ng-template>\n", styles: [".random-css-to-not-keep-this-file-empty{display:none}\n"] }]
|
|
27
|
+
}], ctorParameters: () => [{ type: i1.ThemesService }], propDecorators: { position: [{
|
|
28
|
+
type: Input
|
|
29
|
+
}], tooltipWidth: [{
|
|
30
|
+
type: Input
|
|
31
|
+
}], tooltipHeight: [{
|
|
32
|
+
type: Input
|
|
33
|
+
}], showOn: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], closable: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}], title: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}], callout: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], tooltip: [{
|
|
42
|
+
type: ViewChild,
|
|
43
|
+
args: ['tooltip']
|
|
44
|
+
}], onDocumentClick: [{
|
|
45
|
+
type: HostListener,
|
|
46
|
+
args: ['document:click', ['$event']]
|
|
47
|
+
}] } });
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9hdG9tcy90b29sdGlwL3Rvb2x0aXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvYXRvbXMvdG9vbHRpcC90b29sdGlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFRMUUsTUFBTSxPQUFPLGdCQUFnQjtJQVczQixZQUFvQixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQVZ2QyxhQUFRLEdBQXdDLE9BQU8sQ0FBQztRQUd4RCxXQUFNLEdBQStCLE9BQU8sQ0FBQztRQUM3QyxhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLFVBQUssR0FBVyxNQUFNLENBQUM7SUFLb0IsQ0FBQztJQUdyRCxlQUFlLENBQUMsTUFBVztRQUN6QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsc0JBQXNCLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtZQUNoRSxJQUFJLEtBQUssRUFBRSxNQUFNLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQzFELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdEIsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDOytHQXJCVSxnQkFBZ0I7bUdBQWhCLGdCQUFnQix5WUNSN0IsNFlBUUE7OzRGREFhLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDRSxhQUFhO2tGQUtkLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRWdCLE9BQU87c0JBQTVCLFNBQVM7dUJBQUMsU0FBUztnQkFLcEIsZUFBZTtzQkFEZCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIElucHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRoZW1lc1NlcnZpY2UgfSBmcm9tICdAcHJvZ3Jlc3MtY2hlZi9wbGF0Zm9ybS10aGVtZXMtc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi10b29sdGlwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Rvb2x0aXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b29sdGlwLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHBvc2l0aW9uOiAndG9wJyB8ICdib3R0b20nIHwgJ2xlZnQnIHwgJ3JpZ2h0JyA9ICdyaWdodCc7XG4gIEBJbnB1dCgpIHRvb2x0aXBXaWR0aCE6IG51bWJlcjtcbiAgQElucHV0KCkgdG9vbHRpcEhlaWdodCE6IG51bWJlcjtcbiAgQElucHV0KCkgc2hvd09uOiAnaG92ZXInIHwgJ2NsaWNrJyB8ICdub25lJyA9ICdob3Zlcic7XG4gIEBJbnB1dCgpIGNsb3NhYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHRpdGxlOiBzdHJpbmcgPSAndG9vbCc7XG4gIEBJbnB1dCgpIGNhbGxvdXQhOiBib29sZWFuO1xuXG4gIEBWaWV3Q2hpbGQoJ3Rvb2x0aXAnKSB0b29sdGlwOiBhbnk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0aGVtZXNTZXJ2aWNlOiBUaGVtZXNTZXJ2aWNlKSB7IH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXG4gIG9uRG9jdW1lbnRDbGljaygkZXZlbnQ6IGFueSkge1xuICAgIGlmICh0aGlzLmNsb3NhYmxlKSB7XG4gICAgICBjb25zdCBlbFJlZiA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoYHRvb2x0aXAtY29udGVudGApXG4gICAgICBpZiAoZWxSZWY/Lmxlbmd0aCAmJiAhZWxSZWY/LlswXT8uY29udGFpbnMoJGV2ZW50LnRhcmdldCkpIHtcbiAgICAgICAgdGhpcy50b29sdGlwLmhpZGUoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG59XG4iLCI8ZGl2ICN0b29sdGlwPVwia2VuZG9Ub29sdGlwXCIga2VuZG9Ub29sdGlwIFt0b29sdGlwVGVtcGxhdGVdPVwidGVtcGxhdGVcIiBbcG9zaXRpb25dPVwicG9zaXRpb25cIiBbdGl0bGVdPVwidGl0bGVcIiBbY2FsbG91dF09XCJjYWxsb3V0XCJcbiAgW3Nob3dPbl09XCJzaG93T25cIiBbdG9vbHRpcFdpZHRoXT1cInRvb2x0aXBXaWR0aFwiIFt0b29sdGlwSGVpZ2h0XT1cInRvb2x0aXBIZWlnaHRcIiBbY2xvc2FibGVdPVwiY2xvc2FibGVcIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjdGVtcGxhdGU+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImRpdi50b29sdGlwLWNvbnRlbnRcIj48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { TooltipComponent } from './tooltip.component';
|
|
3
|
+
import { TooltipsModule } from '@progress/kendo-angular-tooltip';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class TooltipModule {
|
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: TooltipModule, declarations: [TooltipComponent], imports: [TooltipsModule], exports: [TooltipComponent] }); }
|
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TooltipModule, imports: [TooltipsModule] }); }
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TooltipModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
declarations: [
|
|
14
|
+
TooltipComponent
|
|
15
|
+
],
|
|
16
|
+
imports: [
|
|
17
|
+
TooltipsModule
|
|
18
|
+
],
|
|
19
|
+
exports: [
|
|
20
|
+
TooltipComponent
|
|
21
|
+
]
|
|
22
|
+
}]
|
|
23
|
+
}] });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9hdG9tcy90b29sdGlwL3Rvb2x0aXAubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQWVqRSxNQUFNLE9BQU8sYUFBYTsrR0FBYixhQUFhO2dIQUFiLGFBQWEsaUJBVHRCLGdCQUFnQixhQUdoQixjQUFjLGFBR2QsZ0JBQWdCO2dIQUdQLGFBQWEsWUFOdEIsY0FBYzs7NEZBTUwsYUFBYTtrQkFYekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osZ0JBQWdCO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsY0FBYztxQkFDZjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZ0JBQWdCO3FCQUNqQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi90b29sdGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb29sdGlwc01vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLXRvb2x0aXAnO1xuXG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVG9vbHRpcENvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgVG9vbHRpcHNNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFRvb2x0aXBDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBUb29sdGlwTW9kdWxlIHsgfVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHlwb2dyYXBoeVR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9hdG9tcy90eXBvZ3JhcGh5L1R5cG9ncmFwaHlUeXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBUeXBvZ3JhcGh5VHlwZSA9XG4gIC8vIGgxIHN0eWxlc1xuICB8ICdESVNQTEFZX0xBUkdFJ1xuICB8ICdESVNQTEFZX01FRElVTSdcbiAgfCAnRElTUExBWV9TTUFMTCdcbiAgLy8gaGVhZGluZyBzdHlsZXNcbiAgfCAnSEVBRElOR19MQVJHRSdcbiAgfCAnSEVBRElOR19NRURJVU0nXG4gIHwgJ0hFQURJTkdfU01BTEwnXG4gIC8vIHN1YnRpdGxlIHN0eWxlc1xuICB8ICdTVUJUSVRMRV9SRUdVTEFSJ1xuICB8ICdTVUJUSVRMRV9TTUFMTCdcbiAgLy8gYm9keSBzdHlsZXNcbiAgfCAnQk9EWV9MQVJHRSdcbiAgfCAnQk9EWV9NRURJVU0nXG4gIHwgJ0JPRFlfU01BTEwnXG4gIHwgJ0JPRFlfVU5JVF9MQUJFTCdcbiAgfCAnT1ZFUkxJTkVfTEFCRUxfUkVHVUxBUidcbiAgfCAnT1ZFUkxJTkVfTEFCRUxfU01BTEwnXG4gIHwgJ0JVVFRPTl9SRUdVTEFSJ1xuICB8ICdCVVRUT05fU01BTEwnXG4iXX0=
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Component, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@progress-chef/platform-themes-service";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
const Typography = {
|
|
6
|
+
DISPLAY_LARGE: 'display-large',
|
|
7
|
+
DISPLAY_MEDIUM: 'display-medium',
|
|
8
|
+
DISPLAY_SMALL: 'display-small',
|
|
9
|
+
HEADING_LARGE: 'heading-large',
|
|
10
|
+
HEADING_MEDIUM: 'heading-medium',
|
|
11
|
+
HEADING_SMALL: 'heading-small',
|
|
12
|
+
SUBTITLE_REGULAR: 'subtitle-regular',
|
|
13
|
+
SUBTITLE_SMALL: 'subtitle-small',
|
|
14
|
+
BODY_LARGE: 'body-large',
|
|
15
|
+
BODY_MEDIUM: 'body-medium',
|
|
16
|
+
BODY_SMALL: 'body-small',
|
|
17
|
+
BODY_UNIT_LABEL: 'body-unit-label',
|
|
18
|
+
OVERLINE_LABEL_REGULAR: 'overline-label-regular',
|
|
19
|
+
OVERLINE_LABEL_SMALL: 'overline-label-small',
|
|
20
|
+
BUTTON_REGULAR: 'button-regular',
|
|
21
|
+
BUTTON_SMALL: 'button-small',
|
|
22
|
+
CODE_BODY_MEDIUM: 'code-body-medium'
|
|
23
|
+
};
|
|
24
|
+
export class TypographyComponent {
|
|
25
|
+
constructor(themesService, cdRef) {
|
|
26
|
+
this.themesService = themesService;
|
|
27
|
+
this.cdRef = cdRef;
|
|
28
|
+
this.type = 'BODY_MEDIUM';
|
|
29
|
+
this.defaultText = "";
|
|
30
|
+
this.isLabel = false;
|
|
31
|
+
this.hiddenLabel = "";
|
|
32
|
+
this.showDefaultText = true;
|
|
33
|
+
this.font = Typography[this.type];
|
|
34
|
+
this.input_id = "";
|
|
35
|
+
}
|
|
36
|
+
ngAfterViewInit() {
|
|
37
|
+
if (!this.input_id) {
|
|
38
|
+
this.checkForLabel();
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
ngOnChanges() {
|
|
42
|
+
this.font = Typography[this.type];
|
|
43
|
+
}
|
|
44
|
+
ngAfterContentChecked() {
|
|
45
|
+
this.cdRef.detectChanges();
|
|
46
|
+
}
|
|
47
|
+
checkForLabel() {
|
|
48
|
+
let childrenCount = this.labelChild?.nativeElement.childElementCount;
|
|
49
|
+
if (childrenCount > 0) {
|
|
50
|
+
this.input_id = this.labelChild?.nativeElement.getElementsByTagName('input')[0]?.getAttribute('id');
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
checkShowDefaultText() {
|
|
54
|
+
let childrenCount = this.child?.nativeElement.childNodes.length;
|
|
55
|
+
this.showDefaultText = !this.isLabel && (!childrenCount || childrenCount == 0);
|
|
56
|
+
}
|
|
57
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TypographyComponent, deps: [{ token: i1.ThemesService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
58
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TypographyComponent, selector: "lib-typography", inputs: { type: "type", defaultText: "defaultText", isLabel: "isLabel", hiddenLabel: "hiddenLabel" }, viewQueries: [{ propertyName: "child", first: true, predicate: ["ref"], descendants: true }, { propertyName: "labelChild", first: true, predicate: ["ref_label"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container>\n <!-- <span *ngIf=\"!isLabel\" #ref [class]=\"font\"><ng-content></ng-content></span> -->\n <label *ngIf=\"isLabel\" #ref_label [class]=\"font\" attr.for=\"{{input_id || ''}}\">\n <span class=\"visually-hidden\">{{hiddenLabel}}</span>{{defaultText}}<ng-container\n *ngTemplateOutlet=\"customText\"></ng-container>\n </label>\n <span *ngIf=\"showDefaultText && !isLabel\" [class]=\"font\">{{defaultText}}<ng-container\n *ngTemplateOutlet=\"customText\"></ng-container>\n </span>\n</ng-container>\n\n<ng-template #customText>\n <ng-content></ng-content>\n</ng-template>\n", styles: [".display-large{font-family:Inter,sans-serif!important;font-weight:700!important;font-style:normal!important;font-size:40px!important;line-height:48px!important}.display-medium{font-family:Inter,sans-serif!important;font-weight:500!important;font-style:normal!important;font-size:32px!important;line-height:40px!important;letter-spacing:.25px!important}.display-small{font-family:Inter,sans-serif!important;font-weight:300!important;font-style:normal!important;font-size:32px!important;line-height:40px!important}.heading-large{font-family:Inter,sans-serif!important;font-weight:700!important;font-style:normal!important;font-size:24px!important;line-height:36px!important;letter-spacing:.15px!important}.heading-medium{font-family:Inter,sans-serif!important;font-weight:700!important;font-style:normal!important;font-size:18px!important;line-height:24px!important;letter-spacing:.15px!important}.heading-small{font-family:Inter,sans-serif!important;font-weight:500!important;font-style:normal!important;font-size:16px!important;line-height:24px!important}.subtitle-regular{font-family:Inter,sans-serif!important;font-weight:600!important;font-style:normal!important;font-size:14px!important;line-height:20px!important;letter-spacing:.25px!important}.subtitle-small{font-family:Inter,sans-serif!important;font-weight:600!important;font-style:normal!important;font-size:12px!important;line-height:16px!important;letter-spacing:.25px!important}.body-large{font-family:Inter,sans-serif!important;font-weight:400!important;font-style:normal!important;font-size:16px!important;line-height:24px!important}.body-medium{font-family:Inter,sans-serif!important;font-weight:400!important;font-style:normal!important;font-size:14px!important;line-height:20px!important;letter-spacing:.25px!important}.body-small{font-family:Inter,sans-serif!important;font-weight:400!important;font-style:normal;font-size:12px!important;line-height:16px!important;letter-spacing:.25px!important}.body-unit-label{font-family:Inter,sans-serif!important;font-weight:400!important;font-style:normal!important;font-size:11px!important;line-height:12px!important;letter-spacing:.5px!important}.overline-label-regular,.overline-label-small{font-family:Inter,sans-serif!important;font-weight:400!important;font-style:normal!important;font-size:14px!important;line-height:20px!important;letter-spacing:.5px!important;text-transform:uppercase}.button-regular{font-family:Inter,sans-serif!important;font-weight:500!important;font-style:normal!important;font-size:16px!important;line-height:24px!important;letter-spacing:.5px!important}.button-small{font-family:Inter,sans-serif!important;font-weight:500!important;font-style:normal!important;font-size:14px!important;line-height:20px!important;letter-spacing:.5px!important}.code-body-medium{font-family:Firacode,sans-serif!important;font-weight:400!important;font-style:normal!important;font-size:14px!important}.visually-hidden{border:0;padding:0;margin:0;position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap}label{display:inline}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
59
|
+
}
|
|
60
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TypographyComponent, decorators: [{
|
|
61
|
+
type: Component,
|
|
62
|
+
args: [{ selector: 'lib-typography', template: "<ng-container>\n <!-- <span *ngIf=\"!isLabel\" #ref [class]=\"font\"><ng-content></ng-content></span> -->\n <label *ngIf=\"isLabel\" #ref_label [class]=\"font\" attr.for=\"{{input_id || ''}}\">\n <span class=\"visually-hidden\">{{hiddenLabel}}</span>{{defaultText}}<ng-container\n *ngTemplateOutlet=\"customText\"></ng-container>\n </label>\n <span *ngIf=\"showDefaultText && !isLabel\" [class]=\"font\">{{defaultText}}<ng-container\n *ngTemplateOutlet=\"customText\"></ng-container>\n </span>\n</ng-container>\n\n<ng-template #customText>\n <ng-content></ng-content>\n</ng-template>\n", styles: [".display-large{font-family:Inter,sans-serif!important;font-weight:700!important;font-style:normal!important;font-size:40px!important;line-height:48px!important}.display-medium{font-family:Inter,sans-serif!important;font-weight:500!important;font-style:normal!important;font-size:32px!important;line-height:40px!important;letter-spacing:.25px!important}.display-small{font-family:Inter,sans-serif!important;font-weight:300!important;font-style:normal!important;font-size:32px!important;line-height:40px!important}.heading-large{font-family:Inter,sans-serif!important;font-weight:700!important;font-style:normal!important;font-size:24px!important;line-height:36px!important;letter-spacing:.15px!important}.heading-medium{font-family:Inter,sans-serif!important;font-weight:700!important;font-style:normal!important;font-size:18px!important;line-height:24px!important;letter-spacing:.15px!important}.heading-small{font-family:Inter,sans-serif!important;font-weight:500!important;font-style:normal!important;font-size:16px!important;line-height:24px!important}.subtitle-regular{font-family:Inter,sans-serif!important;font-weight:600!important;font-style:normal!important;font-size:14px!important;line-height:20px!important;letter-spacing:.25px!important}.subtitle-small{font-family:Inter,sans-serif!important;font-weight:600!important;font-style:normal!important;font-size:12px!important;line-height:16px!important;letter-spacing:.25px!important}.body-large{font-family:Inter,sans-serif!important;font-weight:400!important;font-style:normal!important;font-size:16px!important;line-height:24px!important}.body-medium{font-family:Inter,sans-serif!important;font-weight:400!important;font-style:normal!important;font-size:14px!important;line-height:20px!important;letter-spacing:.25px!important}.body-small{font-family:Inter,sans-serif!important;font-weight:400!important;font-style:normal;font-size:12px!important;line-height:16px!important;letter-spacing:.25px!important}.body-unit-label{font-family:Inter,sans-serif!important;font-weight:400!important;font-style:normal!important;font-size:11px!important;line-height:12px!important;letter-spacing:.5px!important}.overline-label-regular,.overline-label-small{font-family:Inter,sans-serif!important;font-weight:400!important;font-style:normal!important;font-size:14px!important;line-height:20px!important;letter-spacing:.5px!important;text-transform:uppercase}.button-regular{font-family:Inter,sans-serif!important;font-weight:500!important;font-style:normal!important;font-size:16px!important;line-height:24px!important;letter-spacing:.5px!important}.button-small{font-family:Inter,sans-serif!important;font-weight:500!important;font-style:normal!important;font-size:14px!important;line-height:20px!important;letter-spacing:.5px!important}.code-body-medium{font-family:Firacode,sans-serif!important;font-weight:400!important;font-style:normal!important;font-size:14px!important}.visually-hidden{border:0;padding:0;margin:0;position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap}label{display:inline}\n"] }]
|
|
63
|
+
}], ctorParameters: () => [{ type: i1.ThemesService }, { type: i0.ChangeDetectorRef }], propDecorators: { type: [{
|
|
64
|
+
type: Input
|
|
65
|
+
}], defaultText: [{
|
|
66
|
+
type: Input
|
|
67
|
+
}], isLabel: [{
|
|
68
|
+
type: Input
|
|
69
|
+
}], hiddenLabel: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], child: [{
|
|
72
|
+
type: ViewChild,
|
|
73
|
+
args: ['ref', { static: false }]
|
|
74
|
+
}], labelChild: [{
|
|
75
|
+
type: ViewChild,
|
|
76
|
+
args: ['ref_label', { static: false }]
|
|
77
|
+
}] } });
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwb2dyYXBoeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9hdG9tcy90eXBvZ3JhcGh5L3R5cG9ncmFwaHkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvYXRvbXMvdHlwb2dyYXBoeS90eXBvZ3JhcGh5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0MsU0FBUyxFQUFjLEtBQUssRUFBYSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFJckgsTUFBTSxVQUFVLEdBQUc7SUFDakIsYUFBYSxFQUFFLGVBQWU7SUFDOUIsY0FBYyxFQUFFLGdCQUFnQjtJQUNoQyxhQUFhLEVBQUUsZUFBZTtJQUM5QixhQUFhLEVBQUUsZUFBZTtJQUM5QixjQUFjLEVBQUUsZ0JBQWdCO0lBQ2hDLGFBQWEsRUFBRSxlQUFlO0lBQzlCLGdCQUFnQixFQUFFLGtCQUFrQjtJQUNwQyxjQUFjLEVBQUUsZ0JBQWdCO0lBQ2hDLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLFdBQVcsRUFBRSxhQUFhO0lBQzFCLFVBQVUsRUFBQyxZQUFZO0lBQ3ZCLGVBQWUsRUFBRSxpQkFBaUI7SUFDbEMsc0JBQXNCLEVBQUUsd0JBQXdCO0lBQ2hELG9CQUFvQixFQUFFLHNCQUFzQjtJQUM1QyxjQUFjLEVBQUUsZ0JBQWdCO0lBQ2hDLFlBQVksRUFBRSxjQUFjO0lBQzVCLGdCQUFnQixFQUFFLGtCQUFrQjtDQUNyQyxDQUFBO0FBT0QsTUFBTSxPQUFPLG1CQUFtQjtJQVc5QixZQUFvQixhQUE0QixFQUFVLEtBQXdCO1FBQTlELGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQVUsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFWekUsU0FBSSxHQUFtQixhQUFhLENBQUM7UUFDckMsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFDekIsWUFBTyxHQUFZLEtBQUssQ0FBQztRQUN6QixnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUdsQyxvQkFBZSxHQUFHLElBQUksQ0FBQztRQUN2QixTQUFJLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixhQUFRLEdBQUcsRUFBRSxDQUFDO0lBRXdFLENBQUM7SUFFdkYsZUFBZTtRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFBO1FBQ3RCLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxJQUFJLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQztRQUNyRSxJQUFJLGFBQWEsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0RyxDQUFDO0lBQ0gsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDO1FBQ2hFLElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxhQUFhLElBQUksYUFBYSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7K0dBckNVLG1CQUFtQjttR0FBbkIsbUJBQW1CLHlXQzdCaEMsOGxCQWNBOzs0RkRlYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsZ0JBQWdCO2tIQUtqQixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDK0IsS0FBSztzQkFBekMsU0FBUzt1QkFBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNRLFVBQVU7c0JBQXBELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGhlbWVzU2VydmljZSB9IGZyb20gJ0Bwcm9ncmVzcy1jaGVmL3BsYXRmb3JtLXRoZW1lcy1zZXJ2aWNlJztcbmltcG9ydCB7IFR5cG9ncmFwaHlUeXBlIH0gZnJvbSAnLi9UeXBvZ3JhcGh5VHlwZSc7XG5cbmNvbnN0IFR5cG9ncmFwaHkgPSB7XG4gIERJU1BMQVlfTEFSR0U6ICdkaXNwbGF5LWxhcmdlJyxcbiAgRElTUExBWV9NRURJVU06ICdkaXNwbGF5LW1lZGl1bScsXG4gIERJU1BMQVlfU01BTEw6ICdkaXNwbGF5LXNtYWxsJyxcbiAgSEVBRElOR19MQVJHRTogJ2hlYWRpbmctbGFyZ2UnLFxuICBIRUFESU5HX01FRElVTTogJ2hlYWRpbmctbWVkaXVtJyxcbiAgSEVBRElOR19TTUFMTDogJ2hlYWRpbmctc21hbGwnLFxuICBTVUJUSVRMRV9SRUdVTEFSOiAnc3VidGl0bGUtcmVndWxhcicsXG4gIFNVQlRJVExFX1NNQUxMOiAnc3VidGl0bGUtc21hbGwnLFxuICBCT0RZX0xBUkdFOiAnYm9keS1sYXJnZScsXG4gIEJPRFlfTUVESVVNOiAnYm9keS1tZWRpdW0nLFxuICBCT0RZX1NNQUxMOidib2R5LXNtYWxsJyxcbiAgQk9EWV9VTklUX0xBQkVMOiAnYm9keS11bml0LWxhYmVsJyxcbiAgT1ZFUkxJTkVfTEFCRUxfUkVHVUxBUjogJ292ZXJsaW5lLWxhYmVsLXJlZ3VsYXInLFxuICBPVkVSTElORV9MQUJFTF9TTUFMTDogJ292ZXJsaW5lLWxhYmVsLXNtYWxsJyxcbiAgQlVUVE9OX1JFR1VMQVI6ICdidXR0b24tcmVndWxhcicsXG4gIEJVVFRPTl9TTUFMTDogJ2J1dHRvbi1zbWFsbCcsXG4gIENPREVfQk9EWV9NRURJVU06ICdjb2RlLWJvZHktbWVkaXVtJ1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItdHlwb2dyYXBoeScsXG4gIHRlbXBsYXRlVXJsOiAnLi90eXBvZ3JhcGh5LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdHlwb2dyYXBoeS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFR5cG9ncmFwaHlDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSB0eXBlOiBUeXBvZ3JhcGh5VHlwZSA9ICdCT0RZX01FRElVTSc7XG4gIEBJbnB1dCgpIGRlZmF1bHRUZXh0OiBzdHJpbmcgPSBcIlwiO1xuICBASW5wdXQoKSBpc0xhYmVsOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGhpZGRlbkxhYmVsOiBzdHJpbmcgPSBcIlwiO1xuICBAVmlld0NoaWxkKCdyZWYnLCB7IHN0YXRpYzogZmFsc2UgfSkgY2hpbGQ6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG4gIEBWaWV3Q2hpbGQoJ3JlZl9sYWJlbCcsIHsgc3RhdGljOiBmYWxzZSB9KSBsYWJlbENoaWxkOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuICBzaG93RGVmYXVsdFRleHQgPSB0cnVlO1xuICBmb250ID0gVHlwb2dyYXBoeVt0aGlzLnR5cGVdO1xuICBpbnB1dF9pZCA9IFwiXCI7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0aGVtZXNTZXJ2aWNlOiBUaGVtZXNTZXJ2aWNlLCBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikgeyB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pbnB1dF9pZCkge1xuICAgICAgdGhpcy5jaGVja0ZvckxhYmVsKClcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICB0aGlzLmZvbnQgPSBUeXBvZ3JhcGh5W3RoaXMudHlwZV07XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudENoZWNrZWQoKSB7XG4gICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBjaGVja0ZvckxhYmVsKCkge1xuICAgIGxldCBjaGlsZHJlbkNvdW50ID0gdGhpcy5sYWJlbENoaWxkPy5uYXRpdmVFbGVtZW50LmNoaWxkRWxlbWVudENvdW50O1xuICAgIGlmIChjaGlsZHJlbkNvdW50ID4gMCkge1xuICAgICAgdGhpcy5pbnB1dF9pZCA9IHRoaXMubGFiZWxDaGlsZD8ubmF0aXZlRWxlbWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaW5wdXQnKVswXT8uZ2V0QXR0cmlidXRlKCdpZCcpO1xuICAgIH1cbiAgfVxuXG4gIGNoZWNrU2hvd0RlZmF1bHRUZXh0KCkge1xuICAgIGxldCBjaGlsZHJlbkNvdW50ID0gdGhpcy5jaGlsZD8ubmF0aXZlRWxlbWVudC5jaGlsZE5vZGVzLmxlbmd0aDtcbiAgICB0aGlzLnNob3dEZWZhdWx0VGV4dCA9ICF0aGlzLmlzTGFiZWwgJiYgKCFjaGlsZHJlbkNvdW50IHx8IGNoaWxkcmVuQ291bnQgPT0gMCk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXI+XG4gIDwhLS0gPHNwYW4gKm5nSWY9XCIhaXNMYWJlbFwiICNyZWYgW2NsYXNzXT1cImZvbnRcIj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9zcGFuPiAtLT5cbiAgPGxhYmVsICpuZ0lmPVwiaXNMYWJlbFwiICNyZWZfbGFiZWwgW2NsYXNzXT1cImZvbnRcIiBhdHRyLmZvcj1cInt7aW5wdXRfaWQgfHwgJyd9fVwiPlxuICAgIDxzcGFuIGNsYXNzPVwidmlzdWFsbHktaGlkZGVuXCI+e3toaWRkZW5MYWJlbH19PC9zcGFuPnt7ZGVmYXVsdFRleHR9fTxuZy1jb250YWluZXJcbiAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY3VzdG9tVGV4dFwiPjwvbmctY29udGFpbmVyPlxuICA8L2xhYmVsPlxuICA8c3BhbiAqbmdJZj1cInNob3dEZWZhdWx0VGV4dCAmJiAhaXNMYWJlbFwiIFtjbGFzc109XCJmb250XCI+e3tkZWZhdWx0VGV4dH19PG5nLWNvbnRhaW5lclxuICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjdXN0b21UZXh0XCI+PC9uZy1jb250YWluZXI+XG4gIDwvc3Bhbj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI2N1c3RvbVRleHQ+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { TypographyComponent } from './typography.component';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class TypographyModule {
|
|
6
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TypographyModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: TypographyModule, declarations: [TypographyComponent], imports: [CommonModule], exports: [TypographyComponent] }); }
|
|
8
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TypographyModule, imports: [CommonModule] }); }
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TypographyModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
declarations: [
|
|
14
|
+
TypographyComponent
|
|
15
|
+
],
|
|
16
|
+
imports: [
|
|
17
|
+
CommonModule
|
|
18
|
+
],
|
|
19
|
+
exports: [
|
|
20
|
+
TypographyComponent
|
|
21
|
+
]
|
|
22
|
+
}]
|
|
23
|
+
}] });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwb2dyYXBoeS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9hdG9tcy90eXBvZ3JhcGh5L3R5cG9ncmFwaHkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQWUvQyxNQUFNLE9BQU8sZ0JBQWdCOytHQUFoQixnQkFBZ0I7Z0hBQWhCLGdCQUFnQixpQkFUekIsbUJBQW1CLGFBR25CLFlBQVksYUFHWixtQkFBbUI7Z0hBR1YsZ0JBQWdCLFlBTnpCLFlBQVk7OzRGQU1ILGdCQUFnQjtrQkFYNUIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3FCQUNwQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsbUJBQW1CO3FCQUNwQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUeXBvZ3JhcGh5Q29tcG9uZW50IH0gZnJvbSAnLi90eXBvZ3JhcGh5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgVHlwb2dyYXBoeUNvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBUeXBvZ3JhcGh5Q29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVHlwb2dyYXBoeU1vZHVsZSB7IH1cbiJdfQ==
|