@morozeckiy/dd-lib 0.1.1 → 0.1.2
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/common/lib-common-button.mjs +62 -0
- package/esm2022/lib/common/lib-common-input-text.mjs +172 -0
- package/esm2022/lib/core/dialog/dialog-config.mjs +15 -0
- package/esm2022/lib/core/dialog/dialog-container.component.mjs +40 -0
- package/esm2022/lib/core/dialog/dialog-ref.mjs +19 -0
- package/esm2022/lib/core/dialog/dialog.service.mjs +106 -0
- package/esm2022/lib/core/directives/auto-height.directive.mjs +36 -0
- package/esm2022/lib/core/directives/click-outside.directive.mjs +42 -0
- package/esm2022/lib/core/directives/counter.directive.mjs +64 -0
- package/esm2022/lib/core/directives/declension.directive.mjs +40 -0
- package/esm2022/lib/core/directives/resize-textarea.directive.mjs +26 -0
- package/esm2022/lib/core/directives/triangle.directive.mjs +75 -0
- package/esm2022/lib/core/index.mjs +26 -0
- package/esm2022/lib/core/pipes/filter-tabs.pipe.mjs +31 -0
- package/esm2022/lib/core/pipes/filter.pipe.mjs +49 -0
- package/esm2022/lib/core/pipes/highlight.pipe.mjs +23 -0
- package/esm2022/lib/core/pipes/reverse.pipe.mjs +17 -0
- package/esm2022/lib/core/pipes/safe.pipe.mjs +34 -0
- package/esm2022/lib/core/services/date.service.mjs +113 -0
- package/esm2022/lib/core/services/destroy.service.mjs +15 -0
- package/esm2022/lib/core/services/fetcher.service.mjs +92 -0
- package/esm2022/lib/core/services/interceptors.service.mjs +27 -0
- package/esm2022/lib/core/services/svg-icons.service.mjs +26 -0
- package/esm2022/lib/core/services/theme-constructor.service.mjs +64 -0
- package/esm2022/lib/core/services/validators.service.mjs +73 -0
- package/esm2022/lib/core/tools.mjs +128 -0
- package/esm2022/lib/core/tooltip/tooltip.component.mjs +27 -0
- package/esm2022/lib/core/tooltip/tooltip.directive.mjs +137 -0
- package/esm2022/lib/lib-accordion/lib-accordion.component.mjs +15 -0
- package/esm2022/lib/lib-back-button/lib-back-button.component.mjs +37 -0
- package/esm2022/lib/lib-button/lib-button.component.mjs +30 -0
- package/esm2022/lib/lib-calendar/lib-calendar.component.mjs +222 -0
- package/esm2022/lib/lib-card/lib-card.component.mjs +34 -0
- package/esm2022/lib/lib-checkbox/lib-checkbox.component.mjs +66 -0
- package/esm2022/lib/lib-comment-input/lib-comment-input.component.mjs +20 -0
- package/esm2022/lib/lib-file-upload/lib-file-upload.component.mjs +34 -0
- package/esm2022/lib/lib-filter-button/lib-filter-button.component.mjs +42 -0
- package/esm2022/lib/lib-image-loader/lib-image-loader.component.mjs +14 -0
- package/esm2022/lib/lib-input/lib-input.component.mjs +55 -0
- package/esm2022/lib/lib-loader/lib-loader.component.mjs +16 -0
- package/esm2022/lib/lib-period/lib-period.component.mjs +114 -0
- package/esm2022/lib/lib-radio/lib-radio.component.mjs +76 -0
- package/esm2022/lib/lib-search-input/lib-search-input.component.mjs +91 -0
- package/esm2022/lib/lib-select/lib-select.component.mjs +137 -0
- package/esm2022/lib/lib-skeleton/lib-skeleton.component.mjs +45 -0
- package/esm2022/lib/lib-sort/lib-sort.component.mjs +44 -0
- package/esm2022/lib/lib-step/lib-step.component.mjs +19 -0
- package/esm2022/lib/lib-svg/lib-svg.component.mjs +75 -0
- package/esm2022/lib/lib-svg-icon/lib-svg-icon.component.mjs +55 -0
- package/esm2022/lib/lib-tabs-fragment/lib-tabs-fragment.component.mjs +79 -0
- package/esm2022/lib/lib-textarea/lib-textarea.component.mjs +50 -0
- package/esm2022/lib/toast/toast-base/toast-base.component.mjs +29 -0
- package/esm2022/lib/toast/toast-placeholder/toast-placeholder.component.mjs +29 -0
- package/esm2022/lib/toast/toast.service.mjs +124 -0
- package/esm2022/lib/utils/decorators.mjs +102 -0
- package/esm2022/morozeckiy-dd-lib.mjs +5 -0
- package/esm2022/public-api.mjs +35 -0
- package/fesm2022/morozeckiy-dd-lib.mjs +3004 -0
- package/fesm2022/morozeckiy-dd-lib.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/common/lib-common-button.d.ts +20 -0
- package/lib/common/lib-common-input-text.d.ts +53 -0
- package/lib/core/dialog/dialog-config.d.ts +14 -0
- package/lib/core/dialog/dialog-container.component.d.ts +18 -0
- package/lib/core/dialog/dialog-ref.d.ts +18 -0
- package/lib/core/dialog/dialog.service.d.ts +28 -0
- package/lib/core/directives/auto-height.directive.d.ts +11 -0
- package/lib/core/directives/click-outside.directive.d.ts +11 -0
- package/lib/core/directives/counter.directive.d.ts +11 -0
- package/lib/core/directives/declension.directive.d.ts +13 -0
- package/lib/core/directives/resize-textarea.directive.d.ts +10 -0
- package/lib/core/directives/triangle.directive.d.ts +16 -0
- package/lib/core/index.d.ts +20 -0
- package/lib/core/pipes/filter-tabs.pipe.d.ts +7 -0
- package/lib/core/pipes/filter.pipe.d.ts +12 -0
- package/lib/core/pipes/highlight.pipe.d.ts +7 -0
- package/lib/core/pipes/reverse.pipe.d.ts +7 -0
- package/lib/core/pipes/safe.pipe.d.ts +10 -0
- package/lib/core/services/date.service.d.ts +41 -0
- package/lib/core/services/destroy.service.d.ts +8 -0
- package/lib/core/services/fetcher.service.d.ts +29 -0
- package/lib/core/services/interceptors.service.d.ts +12 -0
- package/lib/core/services/svg-icons.service.d.ts +9 -0
- package/lib/core/services/theme-constructor.service.d.ts +27 -0
- package/lib/core/services/validators.service.d.ts +18 -0
- package/lib/core/tools.d.ts +16 -0
- package/lib/core/tooltip/tooltip.component.d.ts +12 -0
- package/lib/core/tooltip/tooltip.directive.d.ts +22 -0
- package/lib/lib-accordion/lib-accordion.component.d.ts +8 -0
- package/lib/lib-back-button/lib-back-button.component.d.ts +13 -0
- package/lib/lib-button/lib-button.component.d.ts +10 -0
- package/lib/lib-calendar/lib-calendar.component.d.ts +76 -0
- package/lib/lib-card/lib-card.component.d.ts +16 -0
- package/lib/lib-checkbox/lib-checkbox.component.d.ts +23 -0
- package/lib/lib-comment-input/lib-comment-input.component.d.ts +8 -0
- package/lib/lib-file-upload/lib-file-upload.component.d.ts +12 -0
- package/lib/lib-filter-button/lib-filter-button.component.d.ts +13 -0
- package/lib/lib-image-loader/lib-image-loader.component.d.ts +6 -0
- package/lib/lib-input/lib-input.component.d.ts +13 -0
- package/lib/lib-loader/lib-loader.component.d.ts +6 -0
- package/lib/lib-period/lib-period.component.d.ts +41 -0
- package/lib/lib-radio/lib-radio.component.d.ts +25 -0
- package/lib/lib-search-input/lib-search-input.component.d.ts +29 -0
- package/lib/lib-select/lib-select.component.d.ts +30 -0
- package/lib/lib-skeleton/lib-skeleton.component.d.ts +16 -0
- package/lib/lib-sort/lib-sort.component.d.ts +18 -0
- package/lib/lib-step/lib-step.component.d.ts +7 -0
- package/{src/lib/lib-svg/lib-svg.component.ts → lib/lib-svg/lib-svg.component.d.ts} +38 -66
- package/lib/lib-svg-icon/lib-svg-icon.component.d.ts +18 -0
- package/lib/lib-tabs-fragment/lib-tabs-fragment.component.d.ts +29 -0
- package/lib/lib-textarea/lib-textarea.component.d.ts +13 -0
- package/lib/toast/toast-base/toast-base.component.d.ts +21 -0
- package/lib/toast/toast-placeholder/toast-placeholder.component.d.ts +12 -0
- package/lib/toast/toast.service.d.ts +35 -0
- package/lib/utils/decorators.d.ts +4 -0
- package/package.json +16 -3
- package/public-api.d.ts +30 -0
- package/ekgip-dd-lib-0.0.1.tgz +0 -0
- package/ng-package.json +0 -8
- package/src/lib/common/lib-common-button.ts +0 -34
- package/src/lib/common/lib-common-input-text.ts +0 -154
- package/src/lib/core/dialog/dialog-config.ts +0 -19
- package/src/lib/core/dialog/dialog-container.component.ts +0 -38
- package/src/lib/core/dialog/dialog-ref.ts +0 -28
- package/src/lib/core/dialog/dialog.service.ts +0 -144
- package/src/lib/core/directives/auto-height.directive.ts +0 -29
- package/src/lib/core/directives/click-outside.directive.ts +0 -33
- package/src/lib/core/directives/counter.directive.ts +0 -54
- package/src/lib/core/directives/declension.directive.ts +0 -29
- package/src/lib/core/directives/resize-textarea.directive.ts +0 -16
- package/src/lib/core/directives/triangle.directive.ts +0 -56
- package/src/lib/core/index.ts +0 -27
- package/src/lib/core/pipes/filter-tabs.pipe.ts +0 -25
- package/src/lib/core/pipes/filter.pipe.ts +0 -36
- package/src/lib/core/pipes/highlight.pipe.ts +0 -17
- package/src/lib/core/pipes/reverse.pipe.ts +0 -11
- package/src/lib/core/pipes/safe.pipe.ts +0 -37
- package/src/lib/core/services/date.service.ts +0 -153
- package/src/lib/core/services/destroy.service.ts +0 -10
- package/src/lib/core/services/fetcher.service.ts +0 -109
- package/src/lib/core/services/interceptors.service.ts +0 -26
- package/src/lib/core/services/svg-icons.service.ts +0 -25
- package/src/lib/core/services/theme-constructor.service.ts +0 -68
- package/src/lib/core/services/validators.service.ts +0 -73
- package/src/lib/core/tools.ts +0 -159
- package/src/lib/core/tooltip/tooltip.component.html +0 -10
- package/src/lib/core/tooltip/tooltip.component.scss +0 -59
- package/src/lib/core/tooltip/tooltip.component.ts +0 -27
- package/src/lib/core/tooltip/tooltip.directive.ts +0 -137
- package/src/lib/core/utils.ts +0 -28
- package/src/lib/lib-accordion/lib-accordion.component.html +0 -15
- package/src/lib/lib-accordion/lib-accordion.component.scss +0 -23
- package/src/lib/lib-accordion/lib-accordion.component.ts +0 -17
- package/src/lib/lib-back-button/lib-back-button.component.html +0 -4
- package/src/lib/lib-back-button/lib-back-button.component.scss +0 -3
- package/src/lib/lib-back-button/lib-back-button.component.ts +0 -31
- package/src/lib/lib-button/lib-button.component.html +0 -30
- package/src/lib/lib-button/lib-button.component.scss +0 -89
- package/src/lib/lib-button/lib-button.component.ts +0 -33
- package/src/lib/lib-calendar/lib-calendar.component.html +0 -64
- package/src/lib/lib-calendar/lib-calendar.component.scss +0 -88
- package/src/lib/lib-calendar/lib-calendar.component.ts +0 -227
- package/src/lib/lib-card/lib-card.component.html +0 -23
- package/src/lib/lib-card/lib-card.component.scss +0 -64
- package/src/lib/lib-card/lib-card.component.ts +0 -32
- package/src/lib/lib-checkbox/lib-checkbox.component.html +0 -15
- package/src/lib/lib-checkbox/lib-checkbox.component.scss +0 -80
- package/src/lib/lib-checkbox/lib-checkbox.component.ts +0 -67
- package/src/lib/lib-comment-input/lib-comment-input.component.html +0 -32
- package/src/lib/lib-comment-input/lib-comment-input.component.scss +0 -28
- package/src/lib/lib-comment-input/lib-comment-input.component.ts +0 -20
- package/src/lib/lib-file-upload/lib-file-upload.component.html +0 -14
- package/src/lib/lib-file-upload/lib-file-upload.component.scss +0 -3
- package/src/lib/lib-file-upload/lib-file-upload.component.ts +0 -26
- package/src/lib/lib-filter-button/lib-filter-button.component.html +0 -46
- package/src/lib/lib-filter-button/lib-filter-button.component.scss +0 -62
- package/src/lib/lib-filter-button/lib-filter-button.component.ts +0 -45
- package/src/lib/lib-image-loader/lib-image-loader.component.html +0 -17
- package/src/lib/lib-image-loader/lib-image-loader.component.scss +0 -6
- package/src/lib/lib-image-loader/lib-image-loader.component.ts +0 -16
- package/src/lib/lib-input/lib-input.component.html +0 -32
- package/src/lib/lib-input/lib-input.component.scss +0 -72
- package/src/lib/lib-input/lib-input.component.ts +0 -62
- package/src/lib/lib-loader/lib-loader.component.html +0 -29
- package/src/lib/lib-loader/lib-loader.component.scss +0 -26
- package/src/lib/lib-loader/lib-loader.component.ts +0 -13
- package/src/lib/lib-period/lib-period.component.html +0 -41
- package/src/lib/lib-period/lib-period.component.scss +0 -77
- package/src/lib/lib-period/lib-period.component.ts +0 -131
- package/src/lib/lib-radio/lib-radio.component.html +0 -22
- package/src/lib/lib-radio/lib-radio.component.scss +0 -113
- package/src/lib/lib-radio/lib-radio.component.ts +0 -78
- package/src/lib/lib-search-input/lib-search-input.component.html +0 -48
- package/src/lib/lib-search-input/lib-search-input.component.scss +0 -86
- package/src/lib/lib-search-input/lib-search-input.component.ts +0 -94
- package/src/lib/lib-select/lib-select.component.html +0 -83
- package/src/lib/lib-select/lib-select.component.scss +0 -130
- package/src/lib/lib-select/lib-select.component.ts +0 -152
- package/src/lib/lib-skeleton/lib-skeleton.component.html +0 -11
- package/src/lib/lib-skeleton/lib-skeleton.component.scss +0 -36
- package/src/lib/lib-skeleton/lib-skeleton.component.ts +0 -41
- package/src/lib/lib-sort/lib-sort.component.html +0 -21
- package/src/lib/lib-sort/lib-sort.component.scss +0 -21
- package/src/lib/lib-sort/lib-sort.component.ts +0 -52
- package/src/lib/lib-step/lib-step.component.html +0 -4
- package/src/lib/lib-step/lib-step.component.scss +0 -23
- package/src/lib/lib-step/lib-step.component.ts +0 -14
- package/src/lib/lib-svg/lib-svg.component.html +0 -15
- package/src/lib/lib-svg/lib-svg.component.scss +0 -81
- package/src/lib/lib-svg-icon/lib-svg-icon.component.css +0 -0
- package/src/lib/lib-svg-icon/lib-svg-icon.component.ts +0 -58
- package/src/lib/lib-tabs-fragment/lib-tabs-fragment.component.html +0 -12
- package/src/lib/lib-tabs-fragment/lib-tabs-fragment.component.scss +0 -19
- package/src/lib/lib-tabs-fragment/lib-tabs-fragment.component.ts +0 -88
- package/src/lib/lib-textarea/lib-textarea.component.html +0 -37
- package/src/lib/lib-textarea/lib-textarea.component.scss +0 -77
- package/src/lib/lib-textarea/lib-textarea.component.ts +0 -49
- package/src/lib/toast/toast-base/toast-base.component.html +0 -7
- package/src/lib/toast/toast-base/toast-base.component.scss +0 -44
- package/src/lib/toast/toast-base/toast-base.component.ts +0 -38
- package/src/lib/toast/toast-placeholder/toast-placeholder.component.ts +0 -20
- package/src/lib/toast/toast.service.ts +0 -130
- package/src/lib/utils/decorators.ts +0 -124
- package/src/public-api.ts +0 -35
- package/tsconfig.lib.json +0 -14
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -14
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class LibCommonButtonComponent {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.size = '';
|
|
6
|
+
this.autofocus = false;
|
|
7
|
+
this.btnColor = 'green';
|
|
8
|
+
this.active = false;
|
|
9
|
+
this.disabled = false;
|
|
10
|
+
this.showLoader = false;
|
|
11
|
+
this.buttonType = 'button';
|
|
12
|
+
this.clickEvent = new EventEmitter();
|
|
13
|
+
}
|
|
14
|
+
onClick(event) {
|
|
15
|
+
if (this.disabled || this.showLoader || this.active) {
|
|
16
|
+
event.stopPropagation();
|
|
17
|
+
event.preventDefault();
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
this.clickEvent.emit();
|
|
21
|
+
const el = document.activeElement;
|
|
22
|
+
el?.blur();
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LibCommonButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: LibCommonButtonComponent, selector: "ng-component", inputs: { width: "width", height: "height", size: "size", fontSize: "fontSize", autofocus: "autofocus", btnColor: "btnColor", active: "active", disabled: "disabled", showLoader: "showLoader", buttonType: "buttonType" }, outputs: { clickEvent: "clickEvent" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["contentData"], descendants: true }, { propertyName: "button", first: true, predicate: ["btn"], descendants: true }], ngImport: i0, template: '', isInline: true }); }
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LibCommonButtonComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{
|
|
31
|
+
template: '',
|
|
32
|
+
}]
|
|
33
|
+
}], propDecorators: { width: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], height: [{
|
|
36
|
+
type: Input
|
|
37
|
+
}], size: [{
|
|
38
|
+
type: Input
|
|
39
|
+
}], fontSize: [{
|
|
40
|
+
type: Input
|
|
41
|
+
}], autofocus: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}], btnColor: [{
|
|
44
|
+
type: Input
|
|
45
|
+
}], active: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], disabled: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], showLoader: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], buttonType: [{
|
|
52
|
+
type: Input
|
|
53
|
+
}], content: [{
|
|
54
|
+
type: ViewChild,
|
|
55
|
+
args: ['contentData', { static: false }]
|
|
56
|
+
}], button: [{
|
|
57
|
+
type: ViewChild,
|
|
58
|
+
args: ['btn', { static: false }]
|
|
59
|
+
}], clickEvent: [{
|
|
60
|
+
type: Output
|
|
61
|
+
}] } });
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLWNvbW1vbi1idXR0b24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb21tb24vbGliLWNvbW1vbi1idXR0b24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzlGLE1BQU0sT0FBZ0Isd0JBQXdCO0lBSDlDO1FBTWtCLFNBQUksR0FBcUIsRUFBRSxDQUFDO1FBRTVCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsYUFBUSxHQUF1RCxPQUFPLENBQUM7UUFDdkUsV0FBTSxHQUFHLEtBQUssQ0FBQztRQUNmLGFBQVEsR0FBbUIsS0FBSyxDQUFDO1FBRWpDLGVBQVUsR0FBK0IsS0FBSyxDQUFDO1FBQy9DLGVBQVUsR0FBa0MsUUFBUSxDQUFDO1FBS3BELGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0tBWXhEO0lBVlEsT0FBTyxDQUFDLEtBQVk7UUFDekIsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3BELEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN4QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDekIsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxhQUE0QixDQUFDO1lBQ2pELEVBQUUsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUNiLENBQUM7SUFDSCxDQUFDOytHQTNCbUIsd0JBQXdCO21HQUF4Qix3QkFBd0IsK2VBRmxDLEVBQUU7OzRGQUVRLHdCQUF3QjtrQkFIN0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsRUFBRTtpQkFDYjs4QkFFaUIsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxNQUFNO3NCQUFyQixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsTUFBTTtzQkFBckIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUVVLFVBQVU7c0JBQXpCLEtBQUs7Z0JBQ1UsVUFBVTtzQkFBekIsS0FBSztnQkFFOEMsT0FBTztzQkFBMUQsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNDLE1BQU07c0JBQWpELFNBQVM7dUJBQUMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFFbEIsVUFBVTtzQkFBMUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlOiAnJyxcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExpYkNvbW1vbkJ1dHRvbkNvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgcHVibGljIHdpZHRoOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgcHVibGljIGhlaWdodDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiAnbWQnIHwgJ2xnJyB8ICcnID0gJyc7XHJcbiAgQElucHV0KCkgcHVibGljIGZvbnRTaXplOiBudW1iZXIgfCBudWxsIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBhdXRvZm9jdXMgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgYnRuQ29sb3I6ICd3aGl0ZScgfCAnZ3JlZW4nIHwgJ3JlZCcgfCAndHJhbnNwYXJlbnQnIHwgJ2RhcmsnID0gJ2dyZWVuJztcclxuICBASW5wdXQoKSBwdWJsaWMgYWN0aXZlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkOiBib29sZWFuIHwgbnVsbCA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgc2hvd0xvYWRlcjogbnVsbCB8IGJvb2xlYW4gfCB1bmRlZmluZWQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBwdWJsaWMgYnV0dG9uVHlwZTogJ3N1Ym1pdCcgfCAncmVzZXQnIHwgJ2J1dHRvbicgPSAnYnV0dG9uJztcclxuXHJcbiAgQFZpZXdDaGlsZCgnY29udGVudERhdGEnLCB7IHN0YXRpYzogZmFsc2UgfSkgcHVibGljIGNvbnRlbnQ6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XHJcbiAgQFZpZXdDaGlsZCgnYnRuJywgeyBzdGF0aWM6IGZhbHNlIH0pIHB1YmxpYyBidXR0b246IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2xpY2tFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVsbD4oKTtcclxuXHJcbiAgcHVibGljIG9uQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLnNob3dMb2FkZXIgfHwgdGhpcy5hY3RpdmUpIHtcclxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNsaWNrRXZlbnQuZW1pdCgpO1xyXG4gICAgICBjb25zdCBlbCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICAgIGVsPy5ibHVyKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { Component, EventEmitter, forwardRef, Input, Output, ViewChild, } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class LibCommonInputTextComponent {
|
|
5
|
+
get id() {
|
|
6
|
+
return this._ID;
|
|
7
|
+
}
|
|
8
|
+
constructor(changeDetection) {
|
|
9
|
+
this.maxlength = 700;
|
|
10
|
+
this.required = false;
|
|
11
|
+
this.disabled = false;
|
|
12
|
+
this.commitOnInput = true; // коммитить по input или по change
|
|
13
|
+
this.clearable = false;
|
|
14
|
+
this.uppercase = false;
|
|
15
|
+
this.invalid = false;
|
|
16
|
+
this.cleared = new EventEmitter();
|
|
17
|
+
this.focus = new EventEmitter();
|
|
18
|
+
this.blur = new EventEmitter();
|
|
19
|
+
this.focused = false;
|
|
20
|
+
this.touched = false;
|
|
21
|
+
this.value = '';
|
|
22
|
+
this.destroyed = false;
|
|
23
|
+
this._ID = '';
|
|
24
|
+
this.changeDetection = changeDetection;
|
|
25
|
+
}
|
|
26
|
+
handleInput(_e) {
|
|
27
|
+
if (this.commitOnInput) {
|
|
28
|
+
this.commit(this.value);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
notifyFocusEvent(e) {
|
|
32
|
+
// this.focusManager.notifyFocusMayChanged(this, e.type === 'focus');
|
|
33
|
+
}
|
|
34
|
+
// public writeValue(value: string | number | null): void {
|
|
35
|
+
// this.value = value === null || value === undefined ? '' : '' + value;
|
|
36
|
+
// if (!this.destroyed) {
|
|
37
|
+
// this.changeDetection.detectChanges();
|
|
38
|
+
// }
|
|
39
|
+
// }
|
|
40
|
+
// public clearValue(e: Event): void {
|
|
41
|
+
// if (!this.disabled) {
|
|
42
|
+
// this.writeValue(null);
|
|
43
|
+
// this.commit(null);
|
|
44
|
+
// this.cleared.emit();
|
|
45
|
+
// this.returnFocus(e);
|
|
46
|
+
// }
|
|
47
|
+
// e.stopPropagation();
|
|
48
|
+
// }
|
|
49
|
+
handleBlur() {
|
|
50
|
+
this.focused = false;
|
|
51
|
+
if (this.onTouchedCallback) {
|
|
52
|
+
this.onTouchedCallback();
|
|
53
|
+
}
|
|
54
|
+
this.blur.emit();
|
|
55
|
+
this.changeDetection.detectChanges();
|
|
56
|
+
}
|
|
57
|
+
handleFocus() {
|
|
58
|
+
this.focused = this.touched = true;
|
|
59
|
+
if (this.onTouchedCallback) {
|
|
60
|
+
this.onTouchedCallback();
|
|
61
|
+
}
|
|
62
|
+
this.focus.emit();
|
|
63
|
+
}
|
|
64
|
+
returnFocus(e) {
|
|
65
|
+
if (this.inputElement &&
|
|
66
|
+
this.inputElement.nativeElement &&
|
|
67
|
+
(!e || e.target !== this.inputElement.nativeElement)) {
|
|
68
|
+
this.inputElement.nativeElement.focus();
|
|
69
|
+
// HelperService.resetSelection(this.inputElement.nativeElement);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
loseFocus() {
|
|
73
|
+
this.inputElement?.nativeElement.blur();
|
|
74
|
+
}
|
|
75
|
+
forceChange() {
|
|
76
|
+
if (this.inputElement) {
|
|
77
|
+
// this.inputElement.nativeElement.dispatchEvent(HelperService.createEvent('change', true, false));
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
registerOnChange(fn) {
|
|
81
|
+
this.commit = fn;
|
|
82
|
+
}
|
|
83
|
+
registerOnTouched(fn) {
|
|
84
|
+
this.onTouchedCallback = fn;
|
|
85
|
+
}
|
|
86
|
+
setDisabledState(isDisabled) {
|
|
87
|
+
this.disabled = isDisabled;
|
|
88
|
+
if (!this.destroyed) {
|
|
89
|
+
this.changeDetection.detectChanges();
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
handleChange() {
|
|
93
|
+
if (!this.commitOnInput) {
|
|
94
|
+
this.commit(this.value);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
commit(_value) { }
|
|
98
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LibCommonInputTextComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
99
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: LibCommonInputTextComponent, selector: "dd-lib-common-input", inputs: { name: "name", label: "label", formControlName: "formControlName", type: "type", contextClass: "contextClass", minlength: "minlength", maxlength: "maxlength", placeholder: "placeholder", autocomplete: "autocomplete", tabIndex: "tabIndex", readOnly: "readOnly", required: "required", disabled: "disabled", commitOnInput: "commitOnInput", clearable: "clearable", uppercase: "uppercase", invalid: "invalid", errorText: "errorText" }, outputs: { cleared: "cleared", focus: "focus", blur: "blur" }, providers: [
|
|
100
|
+
{
|
|
101
|
+
provide: NG_VALUE_ACCESSOR,
|
|
102
|
+
useExisting: forwardRef(() => LibCommonInputTextComponent),
|
|
103
|
+
multi: true,
|
|
104
|
+
},
|
|
105
|
+
], viewQueries: [{ propertyName: "inputSearchElement", first: true, predicate: ["searchInput"], descendants: true }, { propertyName: "inputElement", first: true, predicate: ["input"], descendants: true }, { propertyName: "textAreaElement", first: true, predicate: ["textarea"], descendants: true }], ngImport: i0, template: '', isInline: true }); }
|
|
106
|
+
}
|
|
107
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LibCommonInputTextComponent, decorators: [{
|
|
108
|
+
type: Component,
|
|
109
|
+
args: [{
|
|
110
|
+
selector: 'dd-lib-common-input',
|
|
111
|
+
template: '',
|
|
112
|
+
providers: [
|
|
113
|
+
{
|
|
114
|
+
provide: NG_VALUE_ACCESSOR,
|
|
115
|
+
useExisting: forwardRef(() => LibCommonInputTextComponent),
|
|
116
|
+
multi: true,
|
|
117
|
+
},
|
|
118
|
+
],
|
|
119
|
+
}]
|
|
120
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { inputSearchElement: [{
|
|
121
|
+
type: ViewChild,
|
|
122
|
+
args: ['searchInput']
|
|
123
|
+
}], inputElement: [{
|
|
124
|
+
type: ViewChild,
|
|
125
|
+
args: ['input']
|
|
126
|
+
}], textAreaElement: [{
|
|
127
|
+
type: ViewChild,
|
|
128
|
+
args: ['textarea']
|
|
129
|
+
}], name: [{
|
|
130
|
+
type: Input
|
|
131
|
+
}], label: [{
|
|
132
|
+
type: Input
|
|
133
|
+
}], formControlName: [{
|
|
134
|
+
type: Input
|
|
135
|
+
}], type: [{
|
|
136
|
+
type: Input
|
|
137
|
+
}], contextClass: [{
|
|
138
|
+
type: Input
|
|
139
|
+
}], minlength: [{
|
|
140
|
+
type: Input
|
|
141
|
+
}], maxlength: [{
|
|
142
|
+
type: Input
|
|
143
|
+
}], placeholder: [{
|
|
144
|
+
type: Input
|
|
145
|
+
}], autocomplete: [{
|
|
146
|
+
type: Input
|
|
147
|
+
}], tabIndex: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], readOnly: [{
|
|
150
|
+
type: Input
|
|
151
|
+
}], required: [{
|
|
152
|
+
type: Input
|
|
153
|
+
}], disabled: [{
|
|
154
|
+
type: Input
|
|
155
|
+
}], commitOnInput: [{
|
|
156
|
+
type: Input
|
|
157
|
+
}], clearable: [{
|
|
158
|
+
type: Input
|
|
159
|
+
}], uppercase: [{
|
|
160
|
+
type: Input
|
|
161
|
+
}], invalid: [{
|
|
162
|
+
type: Input
|
|
163
|
+
}], errorText: [{
|
|
164
|
+
type: Input
|
|
165
|
+
}], cleared: [{
|
|
166
|
+
type: Output
|
|
167
|
+
}], focus: [{
|
|
168
|
+
type: Output
|
|
169
|
+
}], blur: [{
|
|
170
|
+
type: Output
|
|
171
|
+
}] } });
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLWNvbW1vbi1pbnB1dC10ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvY29tbW9uL2xpYi1jb21tb24taW5wdXQtdGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFtQixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQWFwRSxNQUFNLE9BQWdCLDJCQUEyQjtJQXlCL0MsSUFBVyxFQUFFO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFXRCxZQUFzQixlQUFrQztRQTVCeEMsY0FBUyxHQUFHLEdBQUcsQ0FBQztRQUtoQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsa0JBQWEsR0FBRyxJQUFJLENBQUMsQ0FBQyxtQ0FBbUM7UUFDekQsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFZixZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNuQyxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNoQyxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUl6QyxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2hCLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFaEIsVUFBSyxHQUF1QixFQUFFLENBQUM7UUFHNUIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUVwQixRQUFHLEdBQUcsRUFBRSxDQUFDO1FBR2YsSUFBSSxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUM7SUFDekMsQ0FBQztJQUVNLFdBQVcsQ0FB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U0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixRQUFRLEVBQUUsRUFBRTtvQkFDWixTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsNEJBQTRCLENBQUM7NEJBQzFELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGO2lCQUNGO3NGQUVxQyxrQkFBa0I7c0JBQXJELFNBQVM7dUJBQUMsYUFBYTtnQkFDTSxZQUFZO3NCQUF6QyxTQUFTO3VCQUFDLE9BQU87Z0JBQ2UsZUFBZTtzQkFBL0MsU0FBUzt1QkFBQyxVQUFVO2dCQUNMLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxlQUFlO3NCQUE5QixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxZQUFZO3NCQUEzQixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsYUFBYTtzQkFBNUIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNXLE9BQU87c0JBQXZCLE1BQU07Z0JBQ1UsS0FBSztzQkFBckIsTUFBTTtnQkFDVSxJQUFJO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZC1saWItY29tbW9uLWlucHV0JyxcclxuICB0ZW1wbGF0ZTogJycsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBMaWJDb21tb25JbnB1dFRleHRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIExpYkNvbW1vbklucHV0VGV4dENvbXBvbmVudCB7XHJcbiAgQFZpZXdDaGlsZCgnc2VhcmNoSW5wdXQnKSBwcm90ZWN0ZWQgaW5wdXRTZWFyY2hFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+IHwgdW5kZWZpbmVkO1xyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0JykgcHJvdGVjdGVkIGlucHV0RWxlbWVudDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB8IHVuZGVmaW5lZDtcclxuICBAVmlld0NoaWxkKCd0ZXh0YXJlYScpIHByb3RlY3RlZCB0ZXh0QXJlYUVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTFRleHRBcmVhRWxlbWVudD4gfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgcHVibGljIG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBwdWJsaWMgbGFiZWw6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBwdWJsaWMgZm9ybUNvbnRyb2xOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgcHVibGljIHR5cGU6ICdwYXNzd29yZCcgfCAnZW1haWwnIHwgJ251bWJlcicgfCAndGV4dCcgfCB1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgcHVibGljIGNvbnRleHRDbGFzczogc3RyaW5nIHwgdW5kZWZpbmVkOyAvLyDQutC70LDRgdGBINGA0LDQt9C80LXRgtC60Lgg0LTQu9GPIGRlZXAg0YHRgtC40LvQtdC5XHJcbiAgQElucHV0KCkgcHVibGljIG1pbmxlbmd0aDogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhsZW5ndGggPSA3MDA7XHJcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBhdXRvY29tcGxldGU/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcHVibGljIHRhYkluZGV4Pzogc3RyaW5nIHwgbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkT25seT86IGJvb2xlYW47XHJcbiAgQElucHV0KCkgcHVibGljIHJlcXVpcmVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGNvbW1pdE9uSW5wdXQgPSB0cnVlOyAvLyDQutC+0LzQvNC40YLQuNGC0Ywg0L/QviBpbnB1dCDQuNC70Lgg0L/QviBjaGFuZ2VcclxuICBASW5wdXQoKSBwdWJsaWMgY2xlYXJhYmxlID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIHVwcGVyY2FzZSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpbnZhbGlkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcHVibGljIGVycm9yVGV4dDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2xlYXJlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIGZvY3VzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBibHVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgcHVibGljIGdldCBpZCgpIHtcclxuICAgIHJldHVybiB0aGlzLl9JRDtcclxuICB9XHJcbiAgcHVibGljIGZvY3VzZWQgPSBmYWxzZTtcclxuICBwdWJsaWMgdG91Y2hlZCA9IGZhbHNlO1xyXG4gIHB1YmxpYyBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCB1bmRlZmluZWQgfCBudWxsO1xyXG4gIHB1YmxpYyB2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gJyc7XHJcbiAgcHVibGljIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0b3JSZWY7XHJcblxyXG4gIHByb3RlY3RlZCBkZXN0cm95ZWQgPSBmYWxzZTtcclxuICBwcm90ZWN0ZWQgb25Ub3VjaGVkQ2FsbGJhY2s6ICgoKSA9PiB2b2lkKSB8IHVuZGVmaW5lZDtcclxuICBwcml2YXRlIF9JRCA9ICcnO1xyXG5cclxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rpb24gPSBjaGFuZ2VEZXRlY3Rpb247XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlSW5wdXQoX2U6IEV2ZW50KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5jb21taXRPbklucHV0KSB7XHJcbiAgICAgIHRoaXMuY29tbWl0KHRoaXMudmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG5vdGlmeUZvY3VzRXZlbnQoZTogRXZlbnQpOiB2b2lkIHtcclxuICAgIC8vIHRoaXMuZm9jdXNNYW5hZ2VyLm5vdGlmeUZvY3VzTWF5Q2hhbmdlZCh0aGlzLCBlLnR5cGUgPT09ICdmb2N1cycpO1xyXG4gIH1cclxuXHJcbiAgLy8gcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bWJlciB8IG51bGwpOiB2b2lkIHtcclxuICAvLyAgIHRoaXMudmFsdWUgPSB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkID8gJycgOiAnJyArIHZhbHVlO1xyXG4gIC8vICAgaWYgKCF0aGlzLmRlc3Ryb3llZCkge1xyXG4gIC8vICAgICB0aGlzLmNoYW5nZURldGVjdGlvbi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgLy8gICB9XHJcbiAgLy8gfVxyXG5cclxuICAvLyBwdWJsaWMgY2xlYXJWYWx1ZShlOiBFdmVudCk6IHZvaWQge1xyXG4gIC8vICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XHJcbiAgLy8gICAgIHRoaXMud3JpdGVWYWx1ZShudWxsKTtcclxuICAvLyAgICAgdGhpcy5jb21taXQobnVsbCk7XHJcbiAgLy8gICAgIHRoaXMuY2xlYXJlZC5lbWl0KCk7XHJcbiAgLy8gICAgIHRoaXMucmV0dXJuRm9jdXMoZSk7XHJcbiAgLy8gICB9XHJcbiAgLy8gICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIC8vIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUJsdXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLmZvY3VzZWQgPSBmYWxzZTtcclxuICAgIGlmICh0aGlzLm9uVG91Y2hlZENhbGxiYWNrKSB7XHJcbiAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2soKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmJsdXIuZW1pdCgpO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rpb24uZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUZvY3VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5mb2N1c2VkID0gdGhpcy50b3VjaGVkID0gdHJ1ZTtcclxuICAgIGlmICh0aGlzLm9uVG91Y2hlZENhbGxiYWNrKSB7XHJcbiAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2soKTtcclxuICAgIH1cclxuICAgIHRoaXMuZm9jdXMuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJldHVybkZvY3VzKGU/OiBFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLmlucHV0RWxlbWVudCAmJlxyXG4gICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50ICYmXHJcbiAgICAgICghZSB8fCBlLnRhcmdldCAhPT0gdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudClcclxuICAgICkge1xyXG4gICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgIC8vIEhlbHBlclNlcnZpY2UucmVzZXRTZWxlY3Rpb24odGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9zZUZvY3VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbnB1dEVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQuYmx1cigpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGZvcmNlQ2hhbmdlKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaW5wdXRFbGVtZW50KSB7XHJcbiAgICAgIC8vIHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChIZWxwZXJTZXJ2aWNlLmNyZWF0ZUV2ZW50KCdjaGFuZ2UnLCB0cnVlLCBmYWxzZSkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5jb21taXQgPSBmbjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcclxuICAgIGlmICghdGhpcy5kZXN0cm95ZWQpIHtcclxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rpb24uZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZUNoYW5nZSgpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5jb21taXRPbklucHV0KSB7XHJcbiAgICAgIHRoaXMuY29tbWl0KHRoaXMudmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbW1pdChfdmFsdWU6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpOiB2b2lkIHt9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export const DIALOG_CONFIG = new InjectionToken('Default options');
|
|
3
|
+
export class DialogConfig {
|
|
4
|
+
constructor(config) {
|
|
5
|
+
this.hasBackdrop = true;
|
|
6
|
+
this.backdropClass = 'modal-overlay';
|
|
7
|
+
this.dialogClass = '';
|
|
8
|
+
this.closeOnBackdropClick = true;
|
|
9
|
+
this.closeOnEsc = true;
|
|
10
|
+
this.hasScroll = false;
|
|
11
|
+
this.autoFocus = true;
|
|
12
|
+
Object.assign(this, config);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RkLWxpYi9zcmMvbGliL2NvcmUvZGlhbG9nL2RpYWxvZy1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFFakUsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLElBQUksY0FBYyxDQUFlLGlCQUFpQixDQUFDLENBQUM7QUFFakYsTUFBTSxPQUFPLFlBQVk7SUFXdkIsWUFBWSxNQUE2QjtRQVZsQyxnQkFBVyxHQUFHLElBQUksQ0FBQztRQUNuQixrQkFBYSxHQUFHLGVBQWUsQ0FBQztRQUNoQyxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQix5QkFBb0IsR0FBRyxJQUFJLENBQUM7UUFDNUIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNsQixjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFLdEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDOUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBjb25zdCBESUFMT0dfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPERpYWxvZ0NvbmZpZz4oJ0RlZmF1bHQgb3B0aW9ucycpO1xyXG5cclxuZXhwb3J0IGNsYXNzIERpYWxvZ0NvbmZpZzxEID0gYW55PiB7XHJcbiAgcHVibGljIGhhc0JhY2tkcm9wID0gdHJ1ZTtcclxuICBwdWJsaWMgYmFja2Ryb3BDbGFzcyA9ICdtb2RhbC1vdmVybGF5JztcclxuICBwdWJsaWMgZGlhbG9nQ2xhc3MgPSAnJztcclxuICBwdWJsaWMgY2xvc2VPbkJhY2tkcm9wQ2xpY2sgPSB0cnVlO1xyXG4gIHB1YmxpYyBjbG9zZU9uRXNjID0gdHJ1ZTtcclxuICBwdWJsaWMgaGFzU2Nyb2xsID0gZmFsc2U7XHJcbiAgcHVibGljIGF1dG9Gb2N1cyA9IHRydWU7XHJcbiAgcHVibGljIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYgfCB1bmRlZmluZWQ7XHJcbiAgcHVibGljIGNvbnRleHQ6IEQgfCB1bmRlZmluZWQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGNvbmZpZzogUGFydGlhbDxEaWFsb2dDb25maWc+KSB7XHJcbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIGNvbmZpZyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Component, ViewChild } from '@angular/core';
|
|
2
|
+
import { CdkPortalOutlet } from '@angular/cdk/portal';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "./dialog-config";
|
|
5
|
+
import * as i2 from "@angular/cdk/a11y";
|
|
6
|
+
export class DialogContainerComponent {
|
|
7
|
+
constructor(config, elementRef, focusTrapFactory) {
|
|
8
|
+
this.config = config;
|
|
9
|
+
this.elementRef = elementRef;
|
|
10
|
+
this.focusTrapFactory = focusTrapFactory;
|
|
11
|
+
}
|
|
12
|
+
ngOnInit() {
|
|
13
|
+
if (this.config.autoFocus) {
|
|
14
|
+
this.focusTrap = this.focusTrapFactory.create(this.elementRef.nativeElement);
|
|
15
|
+
// this.focusTrap.blurPreviouslyFocusedElement();
|
|
16
|
+
this.focusTrap.focusInitialElement();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
attachComponentPortal(portal) {
|
|
20
|
+
return this.portalOutlet.attachComponentPortal(portal);
|
|
21
|
+
}
|
|
22
|
+
attachTemplatePortal(portal) {
|
|
23
|
+
return this.portalOutlet.attachTemplatePortal(portal);
|
|
24
|
+
}
|
|
25
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DialogContainerComponent, deps: [{ token: i1.DialogConfig }, { token: i0.ElementRef }, { token: i2.FocusTrapFactory }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: DialogContainerComponent, isStandalone: true, selector: "dd-dialog-container", viewQueries: [{ propertyName: "portalOutlet", first: true, predicate: CdkPortalOutlet, descendants: true, static: true }], ngImport: i0, template: '<ng-template cdkPortalOutlet></ng-template>', isInline: true, dependencies: [{ kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] }); }
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DialogContainerComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{
|
|
31
|
+
selector: 'dd-dialog-container',
|
|
32
|
+
standalone: true,
|
|
33
|
+
imports: [CdkPortalOutlet],
|
|
34
|
+
template: '<ng-template cdkPortalOutlet></ng-template>',
|
|
35
|
+
}]
|
|
36
|
+
}], ctorParameters: () => [{ type: i1.DialogConfig }, { type: i0.ElementRef }, { type: i2.FocusTrapFactory }], propDecorators: { portalOutlet: [{
|
|
37
|
+
type: ViewChild,
|
|
38
|
+
args: [CdkPortalOutlet, { static: true }]
|
|
39
|
+
}] } });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb3JlL2RpYWxvZy9kaWFsb2ctY29udGFpbmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUE2QyxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFFLGVBQWUsRUFBbUMsTUFBTSxxQkFBcUIsQ0FBQzs7OztBQVV2RixNQUFNLE9BQU8sd0JBQXdCO0lBS25DLFlBQ1ksTUFBb0IsRUFDcEIsVUFBc0IsRUFDdEIsZ0JBQWtDO1FBRmxDLFdBQU0sR0FBTixNQUFNLENBQWM7UUFDcEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO0lBQzNDLENBQUM7SUFFRyxRQUFRO1FBQ2IsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzFCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzdFLGlEQUFpRDtZQUNqRCxJQUFJLENBQUMsU0FBUyxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDdkMsQ0FBQztJQUNILENBQUM7SUFFTSxxQkFBcUIsQ0FBSSxNQUEwQjtRQUN4RCxPQUFPLElBQUksQ0FBQyxZQUFhLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVNLG9CQUFvQixDQUFJLE1BQXlCO1FBQ3RELE9BQU8sSUFBSSxDQUFDLFlBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6RCxDQUFDOytHQXpCVSx3QkFBd0I7bUdBQXhCLHdCQUF3Qiw2SEFDeEIsZUFBZSw4REFIaEIsNkNBQTZDLDREQUQ3QyxlQUFlOzs0RkFHZCx3QkFBd0I7a0JBTnBDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQztvQkFDMUIsUUFBUSxFQUFFLDZDQUE2QztpQkFDeEQ7eUlBRXNELFlBQVk7c0JBQWhFLFNBQVM7dUJBQUMsZUFBZSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgQ29tcG9uZW50UmVmLCBFbGVtZW50UmVmLCBFbWJlZGRlZFZpZXdSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXQsIENvbXBvbmVudFBvcnRhbCwgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHsgRGlhbG9nQ29uZmlnIH0gZnJvbSAnLi9kaWFsb2ctY29uZmlnJztcclxuaW1wb3J0IHsgRm9jdXNUcmFwLCBGb2N1c1RyYXBGYWN0b3J5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZC1kaWFsb2ctY29udGFpbmVyJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDZGtQb3J0YWxPdXRsZXRdLFxyXG4gIHRlbXBsYXRlOiAnPG5nLXRlbXBsYXRlIGNka1BvcnRhbE91dGxldD48L25nLXRlbXBsYXRlPicsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEaWFsb2dDb250YWluZXJDb21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoQ2RrUG9ydGFsT3V0bGV0LCB7IHN0YXRpYzogdHJ1ZSB9KSBwdWJsaWMgcG9ydGFsT3V0bGV0OiBDZGtQb3J0YWxPdXRsZXQgfCB1bmRlZmluZWQ7XHJcblxyXG4gIHByb3RlY3RlZCBmb2N1c1RyYXA6IEZvY3VzVHJhcCB8IHVuZGVmaW5lZDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcm90ZWN0ZWQgY29uZmlnOiBEaWFsb2dDb25maWcsXHJcbiAgICBwcm90ZWN0ZWQgZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIHByb3RlY3RlZCBmb2N1c1RyYXBGYWN0b3J5OiBGb2N1c1RyYXBGYWN0b3J5LFxyXG4gICkge31cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY29uZmlnLmF1dG9Gb2N1cykge1xyXG4gICAgICB0aGlzLmZvY3VzVHJhcCA9IHRoaXMuZm9jdXNUcmFwRmFjdG9yeS5jcmVhdGUodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgICAvLyB0aGlzLmZvY3VzVHJhcC5ibHVyUHJldmlvdXNseUZvY3VzZWRFbGVtZW50KCk7XHJcbiAgICAgIHRoaXMuZm9jdXNUcmFwLmZvY3VzSW5pdGlhbEVsZW1lbnQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBhdHRhY2hDb21wb25lbnRQb3J0YWw8VD4ocG9ydGFsOiBDb21wb25lbnRQb3J0YWw8VD4pOiBDb21wb25lbnRSZWY8VD4ge1xyXG4gICAgcmV0dXJuIHRoaXMucG9ydGFsT3V0bGV0IS5hdHRhY2hDb21wb25lbnRQb3J0YWwocG9ydGFsKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhdHRhY2hUZW1wbGF0ZVBvcnRhbDxDPihwb3J0YWw6IFRlbXBsYXRlUG9ydGFsPEM+KTogRW1iZWRkZWRWaWV3UmVmPEM+IHtcclxuICAgIHJldHVybiB0aGlzLnBvcnRhbE91dGxldCEuYXR0YWNoVGVtcGxhdGVQb3J0YWwocG9ydGFsKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Subject } from 'rxjs';
|
|
2
|
+
export class DDDialogRef {
|
|
3
|
+
constructor(overlayRef) {
|
|
4
|
+
this.overlayRef = overlayRef;
|
|
5
|
+
this.onClose$ = new Subject();
|
|
6
|
+
this.onClose = this.onClose$.asObservable();
|
|
7
|
+
this.onBackdropClick = this.overlayRef.backdropClick();
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Hides dialog.
|
|
11
|
+
* */
|
|
12
|
+
close(res) {
|
|
13
|
+
this.overlayRef.detach();
|
|
14
|
+
this.overlayRef.dispose();
|
|
15
|
+
this.onClose$.next(res);
|
|
16
|
+
this.onClose$.complete();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXJlZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RkLWxpYi9zcmMvbGliL2NvcmUvZGlhbG9nL2RpYWxvZy1yZWYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUczQyxNQUFNLE9BQU8sV0FBVztJQVV0QixZQUFzQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBSGxDLGFBQVEsR0FBaUIsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUNqQyxZQUFPLEdBQW9CLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7UUFHdEUsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFFRDs7U0FFSztJQUNFLEtBQUssQ0FBQyxHQUFTO1FBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcblxyXG5leHBvcnQgY2xhc3MgREREaWFsb2dSZWY8VD4ge1xyXG4gIHB1YmxpYyBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxUPiB8IHVuZGVmaW5lZDtcclxuXHJcbiAgLyoqXHJcbiAgICogU3RyZWFtIG9mIGJhY2tkcm9wIGNsaWNrIGV2ZW50cy5cclxuICAgKiAqL1xyXG4gIHB1YmxpYyByZWFkb25seSBvbkJhY2tkcm9wQ2xpY2s6IE9ic2VydmFibGU8TW91c2VFdmVudD47XHJcbiAgcHJvdGVjdGVkIG9uQ2xvc2UkOiBTdWJqZWN0PGFueT4gPSBuZXcgU3ViamVjdCgpO1xyXG4gIHB1YmxpYyByZWFkb25seSBvbkNsb3NlOiBPYnNlcnZhYmxlPGFueT4gPSB0aGlzLm9uQ2xvc2UkLmFzT2JzZXJ2YWJsZSgpO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgb3ZlcmxheVJlZjogT3ZlcmxheVJlZikge1xyXG4gICAgdGhpcy5vbkJhY2tkcm9wQ2xpY2sgPSB0aGlzLm92ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSGlkZXMgZGlhbG9nLlxyXG4gICAqICovXHJcbiAgcHVibGljIGNsb3NlKHJlcz86IGFueSkge1xyXG4gICAgdGhpcy5vdmVybGF5UmVmLmRldGFjaCgpO1xyXG4gICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKTtcclxuICAgIHRoaXMub25DbG9zZSQubmV4dChyZXMpO1xyXG4gICAgdGhpcy5vbkNsb3NlJC5jb21wbGV0ZSgpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { Inject, Injectable, TemplateRef, } from '@angular/core';
|
|
2
|
+
import { DDDialogRef as DialogRef } from './dialog-ref';
|
|
3
|
+
import { DIALOG_CONFIG, DialogConfig } from './dialog-config';
|
|
4
|
+
import { DOCUMENT } from '@angular/common';
|
|
5
|
+
import { GlobalPositionStrategy, } from '@angular/cdk/overlay';
|
|
6
|
+
import { ComponentPortal, PortalInjector, TemplatePortal } from '@angular/cdk/portal';
|
|
7
|
+
import { DialogContainerComponent } from './dialog-container.component';
|
|
8
|
+
import { fromEvent } from 'rxjs';
|
|
9
|
+
import { filter, takeUntil } from 'rxjs/operators';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@angular/cdk/overlay";
|
|
12
|
+
import * as i2 from "./dialog-config";
|
|
13
|
+
export class DialogService {
|
|
14
|
+
constructor(document, globalConfig, overlay, injector, cfr) {
|
|
15
|
+
this.document = document;
|
|
16
|
+
this.globalConfig = globalConfig;
|
|
17
|
+
this.overlay = overlay;
|
|
18
|
+
this.injector = injector;
|
|
19
|
+
this.cfr = cfr;
|
|
20
|
+
}
|
|
21
|
+
open(content, userConfig = {}) {
|
|
22
|
+
const config = new DialogConfig({ ...this.globalConfig, ...userConfig });
|
|
23
|
+
const overlayRef = this.createOverlay(config);
|
|
24
|
+
const dialogRef = new DialogRef(overlayRef);
|
|
25
|
+
this.dialogRef = dialogRef;
|
|
26
|
+
const container = this.createContainer(config, overlayRef);
|
|
27
|
+
this.createContent(config, content, container, dialogRef);
|
|
28
|
+
this.registerCloseListeners(config, overlayRef, dialogRef);
|
|
29
|
+
return dialogRef;
|
|
30
|
+
}
|
|
31
|
+
createOverlay(config) {
|
|
32
|
+
const positionStrategy = this.createPositionStrategy();
|
|
33
|
+
const scrollStrategy = this.createScrollStrategy(config.hasScroll);
|
|
34
|
+
return this.overlay.create({
|
|
35
|
+
positionStrategy,
|
|
36
|
+
scrollStrategy,
|
|
37
|
+
hasBackdrop: config.hasBackdrop,
|
|
38
|
+
backdropClass: config.backdropClass,
|
|
39
|
+
panelClass: config.dialogClass,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
createPositionStrategy() {
|
|
43
|
+
return new GlobalPositionStrategy().centerVertically().centerHorizontally();
|
|
44
|
+
}
|
|
45
|
+
createScrollStrategy(hasScroll) {
|
|
46
|
+
if (hasScroll) {
|
|
47
|
+
return this.overlay.scrollStrategies.noop();
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
return this.overlay.scrollStrategies.block();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
createContainer(config, overlayRef) {
|
|
54
|
+
const injector = new PortalInjector(this.createInjector(config), new WeakMap([[DialogConfig, config]]));
|
|
55
|
+
const containerPortal = new ComponentPortal(DialogContainerComponent, null, injector, this.cfr);
|
|
56
|
+
const containerRef = overlayRef.attach(containerPortal);
|
|
57
|
+
return containerRef.instance;
|
|
58
|
+
}
|
|
59
|
+
createInjector(config) {
|
|
60
|
+
return (config.viewContainerRef && config.viewContainerRef.injector) || this.injector;
|
|
61
|
+
}
|
|
62
|
+
createContent(config, content, container, dialogRef) {
|
|
63
|
+
if (content instanceof TemplateRef) {
|
|
64
|
+
const portal = this.createTemplatePortal(config, content, dialogRef);
|
|
65
|
+
container.attachTemplatePortal(portal);
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
const portal = this.createComponentPortal(config, content, dialogRef);
|
|
69
|
+
dialogRef.componentRef = container.attachComponentPortal(portal);
|
|
70
|
+
if (config.context) {
|
|
71
|
+
Object.assign(dialogRef.componentRef.instance, { ...config.context });
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
createTemplatePortal(config, content, dialogRef) {
|
|
76
|
+
return new TemplatePortal(content, {}, { $implicit: config.context, dialogRef });
|
|
77
|
+
}
|
|
78
|
+
createComponentPortal(config, content, dialogRef) {
|
|
79
|
+
const injector = this.createInjector(config);
|
|
80
|
+
const portalInjector = new PortalInjector(injector, new WeakMap([[DialogRef, dialogRef]]));
|
|
81
|
+
return new ComponentPortal(content, config.viewContainerRef, portalInjector);
|
|
82
|
+
}
|
|
83
|
+
registerCloseListeners(config, overlayRef, dialogRef) {
|
|
84
|
+
if (config.closeOnBackdropClick) {
|
|
85
|
+
overlayRef.backdropClick().subscribe(() => dialogRef.close());
|
|
86
|
+
}
|
|
87
|
+
if (config.closeOnEsc) {
|
|
88
|
+
fromEvent(this.document, 'keyup')
|
|
89
|
+
.pipe(filter((event) => event.keyCode === 27), takeUntil(dialogRef.onClose))
|
|
90
|
+
.subscribe(() => dialogRef.close());
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DialogService, deps: [{ token: DOCUMENT }, { token: DIALOG_CONFIG }, { token: i1.Overlay }, { token: i0.Injector }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
94
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DialogService, providedIn: 'root' }); }
|
|
95
|
+
}
|
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DialogService, decorators: [{
|
|
97
|
+
type: Injectable,
|
|
98
|
+
args: [{ providedIn: 'root' }]
|
|
99
|
+
}], ctorParameters: () => [{ type: Document, decorators: [{
|
|
100
|
+
type: Inject,
|
|
101
|
+
args: [DOCUMENT]
|
|
102
|
+
}] }, { type: i2.DialogConfig, decorators: [{
|
|
103
|
+
type: Inject,
|
|
104
|
+
args: [DIALOG_CONFIG]
|
|
105
|
+
}] }, { type: i1.Overlay }, { type: i0.Injector }, { type: i0.ComponentFactoryResolver }] });
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb3JlL2RpYWxvZy9kaWFsb2cuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsTUFBTSxFQUNOLFVBQVUsRUFFVixXQUFXLEdBR1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsSUFBSSxTQUFTLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUNMLHNCQUFzQixHQUt2QixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakMsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUduRCxNQUFNLE9BQU8sYUFBYTtJQUd4QixZQUM4QixRQUFrQixFQUNiLFlBQTBCLEVBQ2pELE9BQWdCLEVBQ2hCLFFBQWtCLEVBQ2xCLEdBQTZCO1FBSlgsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNiLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQ2pELFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixRQUFHLEdBQUgsR0FBRyxDQUEwQjtJQUN0QyxDQUFDO0lBRUcsSUFBSSxDQUNULE9BQWlDLEVBQ2pDLGFBQXlELEVBQUU7UUFFM0QsTUFBTSxN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QVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLENBQUM7UUFFRCxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN0QixTQUFTLENBQWdCLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDO2lCQUM3QyxJQUFJLENBQ0gsTUFBTSxDQUFDLENBQUMsS0FBb0IsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsRUFDdEQsU0FBUyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FDN0I7aUJBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLENBQUM7SUFDSCxDQUFDOytHQXJIVSxhQUFhLGtCQUlkLFFBQVEsYUFDUixhQUFhO21IQUxaLGFBQWEsY0FEQSxNQUFNOzs0RkFDbkIsYUFBYTtrQkFEekIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7OzBCQUs3QixNQUFNOzJCQUFDLFFBQVE7OzBCQUNmLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxyXG4gIEluamVjdCxcclxuICBJbmplY3RhYmxlLFxyXG4gIEluamVjdG9yLFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFR5cGUsXHJcbiAgVmlld0NvbnRhaW5lclJlZixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgREREaWFsb2dSZWYgYXMgRGlhbG9nUmVmIH0gZnJvbSAnLi9kaWFsb2ctcmVmJztcclxuaW1wb3J0IHsgRElBTE9HX0NPTkZJRywgRGlhbG9nQ29uZmlnIH0gZnJvbSAnLi9kaWFsb2ctY29uZmlnJztcclxuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3ksXHJcbiAgT3ZlcmxheSxcclxuICBPdmVybGF5UmVmLFxyXG4gIFBvc2l0aW9uU3RyYXRlZ3ksXHJcbiAgU2Nyb2xsU3RyYXRlZ3ksXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwsIFBvcnRhbEluamVjdG9yLCBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xyXG5pbXBvcnQgeyBEaWFsb2dDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2RpYWxvZy1jb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIERpYWxvZ1NlcnZpY2Uge1xyXG4gIHB1YmxpYyBkaWFsb2dSZWY6IERpYWxvZ1JlZjxhbnk+IHwgdW5kZWZpbmVkO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByb3RlY3RlZCBkb2N1bWVudDogRG9jdW1lbnQsXHJcbiAgICBASW5qZWN0KERJQUxPR19DT05GSUcpIHByb3RlY3RlZCBnbG9iYWxDb25maWc6IERpYWxvZ0NvbmZpZyxcclxuICAgIHByb3RlY3RlZCBvdmVybGF5OiBPdmVybGF5LFxyXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByb3RlY3RlZCBjZnI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcclxuICApIHt9XHJcblxyXG4gIHB1YmxpYyBvcGVuPFQsIFIgPSBhbnk+KFxyXG4gICAgY29udGVudDogVHlwZTxUPiB8IFRlbXBsYXRlUmVmPFQ+LFxyXG4gICAgdXNlckNvbmZpZzogUGFydGlhbDxEaWFsb2dDb25maWc8UGFydGlhbDxSPiB8IHN0cmluZz4+ID0ge30sXHJcbiAgKTogRGlhbG9nUmVmPFQ+IHtcclxuICAgIGNvbnN0IGNvbmZpZyA9IG5ldyBEaWFsb2dDb25maWcoeyAuLi50aGlzLmdsb2JhbENvbmZpZywgLi4udXNlckNvbmZpZyB9KTtcclxuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLmNyZWF0ZU92ZXJsYXkoY29uZmlnKTtcclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IG5ldyBEaWFsb2dSZWY8VD4ob3ZlcmxheVJlZik7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZiA9IGRpYWxvZ1JlZjtcclxuICAgIGNvbnN0IGNvbnRhaW5lciA9IHRoaXMuY3JlYXRlQ29udGFpbmVyKGNvbmZpZywgb3ZlcmxheVJlZik7XHJcbiAgICB0aGlzLmNyZWF0ZUNvbnRlbnQoY29uZmlnLCBjb250ZW50LCBjb250YWluZXIsIGRpYWxvZ1JlZik7XHJcblxyXG4gICAgdGhpcy5yZWdpc3RlckNsb3NlTGlzdGVuZXJzKGNvbmZpZywgb3ZlcmxheVJlZiwgZGlhbG9nUmVmKTtcclxuXHJcbiAgICByZXR1cm4gZGlhbG9nUmVmO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGNyZWF0ZU92ZXJsYXkoY29uZmlnOiBEaWFsb2dDb25maWcpOiBPdmVybGF5UmVmIHtcclxuICAgIGNvbnN0IHBvc2l0aW9uU3RyYXRlZ3kgPSB0aGlzLmNyZWF0ZVBvc2l0aW9uU3RyYXRlZ3koKTtcclxuICAgIGNvbnN0IHNjcm9sbFN0cmF0ZWd5ID0gdGhpcy5jcmVhdGVTY3JvbGxTdHJhdGVneShjb25maWcuaGFzU2Nyb2xsKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5vdmVybGF5LmNyZWF0ZSh7XHJcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXHJcbiAgICAgIHNjcm9sbFN0cmF0ZWd5LFxyXG4gICAgICBoYXNCYWNrZHJvcDogY29uZmlnLmhhc0JhY2tkcm9wLFxyXG4gICAgICBiYWNrZHJvcENsYXNzOiBjb25maWcuYmFja2Ryb3BDbGFzcyxcclxuICAgICAgcGFuZWxDbGFzczogY29uZmlnLmRpYWxvZ0NsYXNzLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgY3JlYXRlUG9zaXRpb25TdHJhdGVneSgpOiBQb3NpdGlvblN0cmF0ZWd5IHtcclxuICAgIHJldHVybiBuZXcgR2xvYmFsUG9zaXRpb25TdHJhdGVneSgpLmNlbnRlclZlcnRpY2FsbHkoKS5jZW50ZXJIb3Jpem9udGFsbHkoKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBjcmVhdGVTY3JvbGxTdHJhdGVneShoYXNTY3JvbGw6IGJvb2xlYW4pOiBTY3JvbGxTdHJhdGVneSB7XHJcbiAgICBpZiAoaGFzU2Nyb2xsKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLm92ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ub29wKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuYmxvY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBjcmVhdGVDb250YWluZXIoY29uZmlnOiBEaWFsb2dDb25maWcsIG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYpOiBEaWFsb2dDb250YWluZXJDb21wb25lbnQge1xyXG4gICAgY29uc3QgaW5qZWN0b3IgPSBuZXcgUG9ydGFsSW5qZWN0b3IodGhpcy5jcmVhdGVJbmplY3Rvcihjb25maWcpLCBuZXcgV2Vha01hcChbW0RpYWxvZ0NvbmZpZywgY29uZmlnXV0pKTtcclxuICAgIGNvbnN0IGNvbnRhaW5lclBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwoRGlhbG9nQ29udGFpbmVyQ29tcG9uZW50LCBudWxsLCBpbmplY3RvciwgdGhpcy5jZnIpO1xyXG4gICAgY29uc3QgY29udGFpbmVyUmVmID0gb3ZlcmxheVJlZi5hdHRhY2goY29udGFpbmVyUG9ydGFsKTtcclxuICAgIHJldHVybiBjb250YWluZXJSZWYuaW5zdGFuY2U7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgY3JlYXRlSW5qZWN0b3IoY29uZmlnOiBEaWFsb2dDb25maWcpOiBJbmplY3RvciB7XHJcbiAgICByZXR1cm4gKGNvbmZpZy52aWV3Q29udGFpbmVyUmVmICYmIGNvbmZpZy52aWV3Q29udGFpbmVyUmVmLmluamVjdG9yKSB8fCB0aGlzLmluamVjdG9yO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGNyZWF0ZUNvbnRlbnQ8VD4oXHJcbiAgICBjb25maWc6IERpYWxvZ0NvbmZpZyxcclxuICAgIGNvbnRlbnQ6IFR5cGU8VD4gfCBUZW1wbGF0ZVJlZjxUPixcclxuICAgIGNvbnRhaW5lcjogRGlhbG9nQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgZGlhbG9nUmVmOiBEaWFsb2dSZWY8VD4sXHJcbiAgKSB7XHJcbiAgICBpZiAoY29udGVudCBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKSB7XHJcbiAgICAgIGNvbnN0IHBvcnRhbCA9IHRoaXMuY3JlYXRlVGVtcGxhdGVQb3J0YWwoY29uZmlnLCBjb250ZW50LCBkaWFsb2dSZWYpO1xyXG4gICAgICBjb250YWluZXIuYXR0YWNoVGVtcGxhdGVQb3J0YWwocG9ydGFsKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IHBvcnRhbCA9IHRoaXMuY3JlYXRlQ29tcG9uZW50UG9ydGFsKGNvbmZpZywgY29udGVudCwgZGlhbG9nUmVmKTtcclxuICAgICAgZGlhbG9nUmVmLmNvbXBvbmVudFJlZiA9IGNvbnRhaW5lci5hdHRhY2hDb21wb25lbnRQb3J0YWwocG9ydGFsKTtcclxuXHJcbiAgICAgIGlmIChjb25maWcuY29udGV4dCkge1xyXG4gICAgICAgIE9iamVjdC5hc3NpZ24oZGlhbG9nUmVmLmNvbXBvbmVudFJlZi5pbnN0YW5jZSBhcyBhbnksIHsgLi4uY29uZmlnLmNvbnRleHQgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBjcmVhdGVUZW1wbGF0ZVBvcnRhbDxUPihcclxuICAgIGNvbmZpZzogRGlhbG9nQ29uZmlnLFxyXG4gICAgY29udGVudDogVGVtcGxhdGVSZWY8VD4sXHJcbiAgICBkaWFsb2dSZWY6IERpYWxvZ1JlZjxUPixcclxuICApOiBUZW1wbGF0ZVBvcnRhbCB7XHJcbiAgICByZXR1cm4gbmV3IFRlbXBsYXRlUG9ydGFsKFxyXG4gICAgICBjb250ZW50LFxyXG4gICAgICB7fSBhcyBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgICB7ICRpbXBsaWNpdDogY29uZmlnLmNvbnRleHQsIGRpYWxvZ1JlZiB9IGFzIGFueSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgY3JlYXRlQ29tcG9uZW50UG9ydGFsPFQ+KFxyXG4gICAgY29uZmlnOiBEaWFsb2dDb25maWcsXHJcbiAgICBjb250ZW50OiBUeXBlPFQ+LFxyXG4gICAgZGlhbG9nUmVmOiBEaWFsb2dSZWY8VD4sXHJcbiAgKTogQ29tcG9uZW50UG9ydGFsPFQ+IHtcclxuICAgIGNvbnN0IGluamVjdG9yID0gdGhpcy5jcmVhdGVJbmplY3Rvcihjb25maWcpO1xyXG4gICAgY29uc3QgcG9ydGFsSW5qZWN0b3IgPSBuZXcgUG9ydGFsSW5qZWN0b3IoaW5qZWN0b3IsIG5ldyBXZWFrTWFwKFtbRGlhbG9nUmVmLCBkaWFsb2dSZWZdXSkpO1xyXG4gICAgcmV0dXJuIG5ldyBDb21wb25lbnRQb3J0YWwoY29udGVudCwgY29uZmlnLnZpZXdDb250YWluZXJSZWYsIHBvcnRhbEluamVjdG9yKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCByZWdpc3RlckNsb3NlTGlzdGVuZXJzPFQ+KGNvbmZpZzogRGlhbG9nQ29uZmlnLCBvdmVybGF5UmVmOiBPdmVybGF5UmVmLCBkaWFsb2dSZWY6IERpYWxvZ1JlZjxUPikge1xyXG4gICAgaWYgKGNvbmZpZy5jbG9zZU9uQmFja2Ryb3BDbGljaykge1xyXG4gICAgICBvdmVybGF5UmVmLmJhY2tkcm9wQ2xpY2soKS5zdWJzY3JpYmUoKCkgPT4gZGlhbG9nUmVmLmNsb3NlKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb25maWcuY2xvc2VPbkVzYykge1xyXG4gICAgICBmcm9tRXZlbnQ8S2V5Ym9hcmRFdmVudD4odGhpcy5kb2N1bWVudCwgJ2tleXVwJylcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIGZpbHRlcigoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IGV2ZW50LmtleUNvZGUgPT09IDI3KSxcclxuICAgICAgICAgIHRha2VVbnRpbChkaWFsb2dSZWYub25DbG9zZSksXHJcbiAgICAgICAgKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gZGlhbG9nUmVmLmNsb3NlKCkpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class AutoHeightDirective {
|
|
4
|
+
constructor(el, rdr) {
|
|
5
|
+
this.el = el;
|
|
6
|
+
this.rdr = rdr;
|
|
7
|
+
}
|
|
8
|
+
ngOnInit() {
|
|
9
|
+
setTimeout(() => {
|
|
10
|
+
if (this.ddAutoHeight) {
|
|
11
|
+
let i = 1;
|
|
12
|
+
let parent;
|
|
13
|
+
while (i <= this.ddAutoHeight) {
|
|
14
|
+
parent = parent ? parent.parentNode : this.el.nativeElement.parentNode;
|
|
15
|
+
i++;
|
|
16
|
+
}
|
|
17
|
+
const height = parent.clientHeight;
|
|
18
|
+
if (height) {
|
|
19
|
+
this.rdr.setStyle(this.el.nativeElement, 'height', height + 'px');
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}, 0);
|
|
23
|
+
}
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AutoHeightDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
25
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: AutoHeightDirective, isStandalone: true, selector: "[ddAutoHeight]", inputs: { ddAutoHeight: "ddAutoHeight" }, ngImport: i0 }); }
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AutoHeightDirective, decorators: [{
|
|
28
|
+
type: Directive,
|
|
29
|
+
args: [{
|
|
30
|
+
selector: '[ddAutoHeight]',
|
|
31
|
+
standalone: true,
|
|
32
|
+
}]
|
|
33
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { ddAutoHeight: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}] } });
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1oZWlnaHQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGQtbGliL3NyYy9saWIvY29yZS9kaXJlY3RpdmVzL2F1dG8taGVpZ2h0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7O0FBTWhGLE1BQU0sT0FBTyxtQkFBbUI7SUFJOUIsWUFBb0IsRUFBYyxFQUFVLEdBQWM7UUFBdEMsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUFVLFFBQUcsR0FBSCxHQUFHLENBQVc7SUFBRyxDQUFDO0lBRXZELFFBQVE7UUFDYixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQ3RCLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDVixJQUFJLE1BQVcsQ0FBQztnQkFDaEIsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO29CQUM5QixNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7b0JBQ3ZFLENBQUMsRUFBRSxDQUFDO2dCQUNOLENBQUM7Z0JBQ0QsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztnQkFDbkMsSUFBSSxNQUFNLEVBQUUsQ0FBQztvQkFDWCxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxRQUFRLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDO2dCQUNwRSxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7K0dBckJVLG1CQUFtQjttR0FBbkIsbUJBQW1COzs0RkFBbkIsbUJBQW1CO2tCQUovQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjt1R0FHaUIsWUFBWTtzQkFBM0IsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tkZEF1dG9IZWlnaHRdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQXV0b0hlaWdodERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8vINGD0YDQvtCy0LXQvdGMINC00L4g0YDQvtC00LjRgtC10LvRj1xuICBASW5wdXQoKSBwdWJsaWMgZGRBdXRvSGVpZ2h0OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZHI6IFJlbmRlcmVyMikge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5kZEF1dG9IZWlnaHQpIHtcbiAgICAgICAgbGV0IGkgPSAxO1xuICAgICAgICBsZXQgcGFyZW50OiBhbnk7XG4gICAgICAgIHdoaWxlIChpIDw9IHRoaXMuZGRBdXRvSGVpZ2h0KSB7XG4gICAgICAgICAgcGFyZW50ID0gcGFyZW50ID8gcGFyZW50LnBhcmVudE5vZGUgOiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucGFyZW50Tm9kZTtcbiAgICAgICAgICBpKys7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaGVpZ2h0ID0gcGFyZW50LmNsaWVudEhlaWdodDtcbiAgICAgICAgaWYgKGhlaWdodCkge1xuICAgICAgICAgIHRoaXMucmRyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ2hlaWdodCcsIGhlaWdodCArICdweCcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSwgMCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Directive, EventEmitter, HostListener, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class ClickOutsideDirective {
|
|
4
|
+
constructor(el) {
|
|
5
|
+
this.el = el;
|
|
6
|
+
this.ddClickOutside = new EventEmitter();
|
|
7
|
+
}
|
|
8
|
+
onClick(targetElement) {
|
|
9
|
+
let clickedElemInside = false;
|
|
10
|
+
if (this.elements?.length) {
|
|
11
|
+
this.elements.forEach(el => {
|
|
12
|
+
if (el) {
|
|
13
|
+
const elem = document.getElementById(el);
|
|
14
|
+
if (elem && !clickedElemInside) {
|
|
15
|
+
clickedElemInside = elem.contains(targetElement.target);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
const clickedInside = this.el.nativeElement.contains(targetElement.target);
|
|
21
|
+
if (!clickedElemInside) {
|
|
22
|
+
this.ddClickOutside.emit(clickedInside);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ClickOutsideDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
26
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: ClickOutsideDirective, isStandalone: true, selector: "[ddClickOutside]", inputs: { elements: "elements" }, outputs: { ddClickOutside: "ddClickOutside" }, host: { listeners: { "document:click": "onClick($event)" } }, ngImport: i0 }); }
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ClickOutsideDirective, decorators: [{
|
|
29
|
+
type: Directive,
|
|
30
|
+
args: [{
|
|
31
|
+
standalone: true,
|
|
32
|
+
selector: '[ddClickOutside]',
|
|
33
|
+
}]
|
|
34
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { elements: [{
|
|
35
|
+
type: Input
|
|
36
|
+
}], ddClickOutside: [{
|
|
37
|
+
type: Output
|
|
38
|
+
}], onClick: [{
|
|
39
|
+
type: HostListener,
|
|
40
|
+
args: ['document:click', ['$event']]
|
|
41
|
+
}] } });
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZC1saWIvc3JjL2xpYi9jb3JlL2RpcmVjdGl2ZXMvY2xpY2stb3V0c2lkZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTWpHLE1BQU0sT0FBTyxxQkFBcUI7SUFJaEMsWUFBb0IsRUFBYztRQUFkLE9BQUUsR0FBRixFQUFFLENBQVk7UUFGakIsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRWhCLENBQUM7SUFHL0IsT0FBTyxDQUFDLGFBQW9CO1FBQ2pDLElBQUksaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFDekIsSUFBSSxFQUFFLEVBQUUsQ0FBQztvQkFDUCxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBUSxDQUFDO29CQUNoRCxJQUFJLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7d0JBQy9CLGlCQUFpQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUMxRCxDQUFDO2dCQUNILENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRTNFLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzFDLENBQUM7SUFDSCxDQUFDOytHQXpCVSxxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFKakMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGtCQUFrQjtpQkFDN0I7K0VBRWlCLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1csY0FBYztzQkFBOUIsTUFBTTtnQkFLQSxPQUFPO3NCQURiLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHNlbGVjdG9yOiAnW2RkQ2xpY2tPdXRzaWRlXScsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbGlja091dHNpZGVEaXJlY3RpdmUge1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBlbGVtZW50cyE6IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgZGRDbGlja091dHNpZGUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYpIHt9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSlcclxuICBwdWJsaWMgb25DbGljayh0YXJnZXRFbGVtZW50OiBFdmVudCkge1xyXG4gICAgbGV0IGNsaWNrZWRFbGVtSW5zaWRlID0gZmFsc2U7XHJcbiAgICBpZiAodGhpcy5lbGVtZW50cz8ubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuZWxlbWVudHMuZm9yRWFjaChlbCA9PiB7XHJcbiAgICAgICAgaWYgKGVsKSB7XHJcbiAgICAgICAgICBjb25zdCBlbGVtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZWwpIGFzIGFueTtcclxuICAgICAgICAgIGlmIChlbGVtICYmICFjbGlja2VkRWxlbUluc2lkZSkge1xyXG4gICAgICAgICAgICBjbGlja2VkRWxlbUluc2lkZSA9IGVsZW0uY29udGFpbnModGFyZ2V0RWxlbWVudC50YXJnZXQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgY2xpY2tlZEluc2lkZSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5jb250YWlucyh0YXJnZXRFbGVtZW50LnRhcmdldCk7XHJcblxyXG4gICAgaWYgKCFjbGlja2VkRWxlbUluc2lkZSkge1xyXG4gICAgICB0aGlzLmRkQ2xpY2tPdXRzaWRlLmVtaXQoY2xpY2tlZEluc2lkZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|