special-forms 18.0.1 → 20.0.0-SNAPSHOT
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/README.md +147 -147
- package/fesm2022/special-forms.mjs +143 -147
- package/fesm2022/special-forms.mjs.map +1 -1
- package/index.d.ts +586 -5
- package/lib/styles/final.scss +2 -2
- package/lib/styles/styles-config.scss +36 -36
- package/lib/styles/tailwind-final.scss +7 -7
- package/package.json +7 -9
- package/esm2022/lib/components/index.mjs +0 -14
- package/esm2022/lib/components/special-autocomplete/special-autocomplete.component.mjs +0 -75
- package/esm2022/lib/components/special-autocomplete/special-autocomplete.interface.mjs +0 -2
- package/esm2022/lib/components/special-checkbox/special-checkbox.component.mjs +0 -38
- package/esm2022/lib/components/special-checkbox/special-checkbox.interface.mjs +0 -3
- package/esm2022/lib/components/special-datepicker/special-datepicker.component.mjs +0 -42
- package/esm2022/lib/components/special-datepicker/special-datepicker.interface.mjs +0 -3
- package/esm2022/lib/components/special-dropdown/special-dropdown.component.mjs +0 -47
- package/esm2022/lib/components/special-dropdown/special-dropdown.interface.mjs +0 -3
- package/esm2022/lib/components/special-form/special-form.component.mjs +0 -99
- package/esm2022/lib/components/special-form/special-form.module.mjs +0 -79
- package/esm2022/lib/components/special-input/special-input.component.mjs +0 -55
- package/esm2022/lib/components/special-input/special-input.interface.mjs +0 -2
- package/esm2022/lib/components/special-label/special-label.component.mjs +0 -27
- package/esm2022/lib/components/special-label/special-label.interface.mjs +0 -2
- package/esm2022/lib/components/special-multiple-autocomplete/special-multiple-autocomplete.component.mjs +0 -97
- package/esm2022/lib/components/special-multiple-autocomplete/special-multiple-autocomplete.interface.mjs +0 -2
- package/esm2022/lib/components/special-richtext/special-richtext.component.mjs +0 -53
- package/esm2022/lib/components/special-richtext/special-richtext.interface.mjs +0 -3
- package/esm2022/lib/components/special-text-area/special-text-area.component.mjs +0 -43
- package/esm2022/lib/components/special-text-area/special-text-area.interface.mjs +0 -2
- package/esm2022/lib/components/special-upload/filename.pipe.mjs +0 -18
- package/esm2022/lib/components/special-upload/preview-image-pipe.mjs +0 -104
- package/esm2022/lib/components/special-upload/special-upload.component.mjs +0 -146
- package/esm2022/lib/components/special-upload/special-upload.interface.mjs +0 -2
- package/esm2022/lib/components/special-upload/truncate.pipe.mjs +0 -14
- package/esm2022/lib/core/aux-data/control-types.enum.mjs +0 -18
- package/esm2022/lib/core/aux-data/input-types.mjs +0 -16
- package/esm2022/lib/core/forms/special-forms.mjs +0 -240
- package/esm2022/lib/core/interfaces/field-basics.interfaces.mjs +0 -2
- package/esm2022/lib/core/interfaces/form.interfaces.mjs +0 -2
- package/esm2022/lib/core/interfaces/special-control.interface.mjs +0 -3
- package/esm2022/lib/core/masks/currency.mask.mjs +0 -11
- package/esm2022/lib/core/masks/index.mjs +0 -3
- package/esm2022/lib/core/masks/number.mask.mjs +0 -3
- package/esm2022/lib/core/pipes/controls-list-pipe/controls-list.pipe.mjs +0 -18
- package/esm2022/lib/core/pipes/error-message-pipe/error.pipe.mjs +0 -23
- package/esm2022/lib/core/pipes/index.mjs +0 -4
- package/esm2022/lib/core/pipes/text-by-function/text-by-function.pipe.mjs +0 -22
- package/esm2022/lib/core/services/error-state-matcher/error-matcher.mjs +0 -13
- package/esm2022/lib/core/services/index.mjs +0 -4
- package/esm2022/lib/core/services/special-form-builder/special-form-builder.service.mjs +0 -156
- package/esm2022/public-api.mjs +0 -13
- package/esm2022/special-forms.mjs +0 -5
- package/lib/components/index.d.ts +0 -23
- package/lib/components/special-autocomplete/special-autocomplete.component.d.ts +0 -19
- package/lib/components/special-autocomplete/special-autocomplete.interface.d.ts +0 -19
- package/lib/components/special-checkbox/special-checkbox.component.d.ts +0 -12
- package/lib/components/special-checkbox/special-checkbox.interface.d.ts +0 -13
- package/lib/components/special-datepicker/special-datepicker.component.d.ts +0 -13
- package/lib/components/special-datepicker/special-datepicker.interface.d.ts +0 -12
- package/lib/components/special-dropdown/special-dropdown.component.d.ts +0 -11
- package/lib/components/special-dropdown/special-dropdown.interface.d.ts +0 -17
- package/lib/components/special-form/special-form.component.d.ts +0 -31
- package/lib/components/special-form/special-form.module.d.ts +0 -20
- package/lib/components/special-input/special-input.component.d.ts +0 -15
- package/lib/components/special-input/special-input.interface.d.ts +0 -17
- package/lib/components/special-label/special-label.component.d.ts +0 -13
- package/lib/components/special-label/special-label.interface.d.ts +0 -13
- package/lib/components/special-multiple-autocomplete/special-multiple-autocomplete.component.d.ts +0 -22
- package/lib/components/special-multiple-autocomplete/special-multiple-autocomplete.interface.d.ts +0 -19
- package/lib/components/special-richtext/special-richtext.component.d.ts +0 -15
- package/lib/components/special-richtext/special-richtext.interface.d.ts +0 -11
- package/lib/components/special-text-area/special-text-area.component.d.ts +0 -13
- package/lib/components/special-text-area/special-text-area.interface.d.ts +0 -8
- package/lib/components/special-upload/filename.pipe.d.ts +0 -7
- package/lib/components/special-upload/preview-image-pipe.d.ts +0 -23
- package/lib/components/special-upload/special-upload.component.d.ts +0 -31
- package/lib/components/special-upload/special-upload.interface.d.ts +0 -15
- package/lib/components/special-upload/truncate.pipe.d.ts +0 -7
- package/lib/core/aux-data/control-types.enum.d.ts +0 -16
- package/lib/core/aux-data/input-types.d.ts +0 -2
- package/lib/core/forms/special-forms.d.ts +0 -108
- package/lib/core/interfaces/field-basics.interfaces.d.ts +0 -22
- package/lib/core/interfaces/form.interfaces.d.ts +0 -64
- package/lib/core/interfaces/special-control.interface.d.ts +0 -4
- package/lib/core/masks/currency.mask.d.ts +0 -1
- package/lib/core/masks/index.d.ts +0 -2
- package/lib/core/masks/number.mask.d.ts +0 -1
- package/lib/core/pipes/controls-list-pipe/controls-list.pipe.d.ts +0 -11
- package/lib/core/pipes/error-message-pipe/error.pipe.d.ts +0 -12
- package/lib/core/pipes/index.d.ts +0 -3
- package/lib/core/pipes/text-by-function/text-by-function.pipe.d.ts +0 -7
- package/lib/core/services/error-state-matcher/error-matcher.d.ts +0 -8
- package/lib/core/services/index.d.ts +0 -3
- package/lib/core/services/special-form-builder/special-form-builder.service.d.ts +0 -25
- package/public-api.d.ts +0 -9
|
@@ -584,7 +584,7 @@
|
|
|
584
584
|
|
|
585
585
|
.divide-slate-200 > :not([hidden]) ~ :not([hidden]) {
|
|
586
586
|
--tw-divide-opacity: 1;
|
|
587
|
-
border-color: rgb(226 232 240 / var(--tw-divide-opacity))
|
|
587
|
+
border-color: rgb(226 232 240 / var(--tw-divide-opacity, 1))
|
|
588
588
|
}
|
|
589
589
|
|
|
590
590
|
.overflow-y-auto {
|
|
@@ -607,12 +607,12 @@
|
|
|
607
607
|
|
|
608
608
|
.border-slate-200 {
|
|
609
609
|
--tw-border-opacity: 1;
|
|
610
|
-
border-color: rgb(226 232 240 / var(--tw-border-opacity))
|
|
610
|
+
border-color: rgb(226 232 240 / var(--tw-border-opacity, 1))
|
|
611
611
|
}
|
|
612
612
|
|
|
613
613
|
.bg-red-500 {
|
|
614
614
|
--tw-bg-opacity: 1;
|
|
615
|
-
background-color: rgb(239 68 68 / var(--tw-bg-opacity))
|
|
615
|
+
background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1))
|
|
616
616
|
}
|
|
617
617
|
|
|
618
618
|
.p-2 {
|
|
@@ -677,17 +677,17 @@
|
|
|
677
677
|
|
|
678
678
|
.text-blue-600 {
|
|
679
679
|
--tw-text-opacity: 1;
|
|
680
|
-
color: rgb(37 99 235 / var(--tw-text-opacity))
|
|
680
|
+
color: rgb(37 99 235 / var(--tw-text-opacity, 1))
|
|
681
681
|
}
|
|
682
682
|
|
|
683
683
|
.text-blue-700 {
|
|
684
684
|
--tw-text-opacity: 1;
|
|
685
|
-
color: rgb(29 78 216 / var(--tw-text-opacity))
|
|
685
|
+
color: rgb(29 78 216 / var(--tw-text-opacity, 1))
|
|
686
686
|
}
|
|
687
687
|
|
|
688
688
|
.text-rose-500 {
|
|
689
689
|
--tw-text-opacity: 1;
|
|
690
|
-
color: rgb(244 63 94 / var(--tw-text-opacity))
|
|
690
|
+
color: rgb(244 63 94 / var(--tw-text-opacity, 1))
|
|
691
691
|
}
|
|
692
692
|
|
|
693
693
|
.underline {
|
|
@@ -709,7 +709,7 @@
|
|
|
709
709
|
|
|
710
710
|
.hover\:text-blue-700:hover {
|
|
711
711
|
--tw-text-opacity: 1;
|
|
712
|
-
color: rgb(29 78 216 / var(--tw-text-opacity))
|
|
712
|
+
color: rgb(29 78 216 / var(--tw-text-opacity, 1))
|
|
713
713
|
}
|
|
714
714
|
|
|
715
715
|
@media (min-width: 768px) {
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "special-forms",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "20.0.0-SNAPSHOT",
|
|
4
4
|
"peerDependencies": {
|
|
5
|
-
"@angular/common": "^
|
|
6
|
-
"@angular/cdk": "^
|
|
7
|
-
"@angular/core": "^
|
|
8
|
-
"@angular/material": "^
|
|
5
|
+
"@angular/common": "^20",
|
|
6
|
+
"@angular/cdk": "^20",
|
|
7
|
+
"@angular/core": "^20",
|
|
8
|
+
"@angular/material": "^20",
|
|
9
9
|
"@ngneat/input-mask": "^6",
|
|
10
|
-
"@ngx-dropzone/cdk": "^
|
|
11
|
-
"@ngx-dropzone/material": "^
|
|
10
|
+
"@ngx-dropzone/cdk": "^20",
|
|
11
|
+
"@ngx-dropzone/material": "^20",
|
|
12
12
|
"inputmask": "^5",
|
|
13
13
|
"ngx-editor": "^17"
|
|
14
14
|
},
|
|
@@ -24,8 +24,6 @@
|
|
|
24
24
|
},
|
|
25
25
|
".": {
|
|
26
26
|
"types": "./index.d.ts",
|
|
27
|
-
"esm2022": "./esm2022/special-forms.mjs",
|
|
28
|
-
"esm": "./esm2022/special-forms.mjs",
|
|
29
27
|
"default": "./fesm2022/special-forms.mjs"
|
|
30
28
|
}
|
|
31
29
|
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { SpecialAutocompleteComponent } from './special-autocomplete/special-autocomplete.component';
|
|
2
|
-
import { SpecialInputComponent } from './special-input/special-input.component';
|
|
3
|
-
import { SpecialDropdownComponent } from './special-dropdown/special-dropdown.component';
|
|
4
|
-
import { SpecialDatepickerComponent } from './special-datepicker/special-datepicker.component';
|
|
5
|
-
import { SpecialMultipleAutocompleteComponent } from './special-multiple-autocomplete/special-multiple-autocomplete.component';
|
|
6
|
-
import { SpecialCheckboxComponent } from './special-checkbox/special-checkbox.component';
|
|
7
|
-
import { SpecialTextAreaComponent } from './special-text-area/special-text-area.component';
|
|
8
|
-
import { SpecialUploadComponent } from './special-upload/special-upload.component';
|
|
9
|
-
import { SpecialLabelComponent } from './special-label/special-label.component';
|
|
10
|
-
import { SpecialFormModule } from './special-form/special-form.module';
|
|
11
|
-
import { SpecialRichtextComponent } from './special-richtext/special-richtext.component';
|
|
12
|
-
import { SpecialFormComponent, SpecialArrayComponent, FormControlsRenderDirective, } from './special-form/special-form.component';
|
|
13
|
-
export { SpecialRichtextComponent, SpecialAutocompleteComponent, SpecialDatepickerComponent, SpecialDropdownComponent, SpecialMultipleAutocompleteComponent, SpecialCheckboxComponent, SpecialTextAreaComponent, SpecialUploadComponent, SpecialArrayComponent, SpecialLabelComponent, SpecialFormComponent, SpecialFormModule, FormControlsRenderDirective, SpecialInputComponent, };
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVjaWFsLWZvcm1zL3NyYy9saWIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQztBQU1yRyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQU1oRixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQU16RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQU0vRixPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQztBQU0vSCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQU16RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQU0zRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQU1uRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQU1oRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUV2RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQU16RixPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQiwyQkFBMkIsR0FDNUIsTUFBTSx1Q0FBdUMsQ0FBQztBQUUvQyxPQUFPLEVBcUJMLHdCQUF3QixFQUN4Qiw0QkFBNEIsRUFDNUIsMEJBQTBCLEVBQzFCLHdCQUF3QixFQUN4QixvQ0FBb0MsRUFDcEMsd0JBQXdCLEVBQ3hCLHdCQUF3QixFQUN4QixzQkFBc0IsRUFDdEIscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQixvQkFBb0IsRUFDcEIsaUJBQWlCLEVBQ2pCLDJCQUEyQixFQUMzQixxQkFBcUIsR0FDdEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNwZWNpYWxBdXRvY29tcGxldGVDb21wb25lbnQgfSBmcm9tICcuL3NwZWNpYWwtYXV0b2NvbXBsZXRlL3NwZWNpYWwtYXV0b2NvbXBsZXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7XHJcbiAgSUF1dG9jb21wbGV0ZUZpZWxkLFxyXG4gIElBdXRvY29tcGxldGVTZXR0aW5ncyxcclxufSBmcm9tICcuL3NwZWNpYWwtYXV0b2NvbXBsZXRlL3NwZWNpYWwtYXV0b2NvbXBsZXRlLmludGVyZmFjZSc7XHJcblxyXG5pbXBvcnQgeyBTcGVjaWFsSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL3NwZWNpYWwtaW5wdXQvc3BlY2lhbC1pbnB1dC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIElJbnB1dEZpZWxkLFxyXG4gIElJbnB1dFNldHRpbmdzLFxyXG59IGZyb20gJy4vc3BlY2lhbC1pbnB1dC9zcGVjaWFsLWlucHV0LmludGVyZmFjZSc7XHJcblxyXG5pbXBvcnQgeyBTcGVjaWFsRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL3NwZWNpYWwtZHJvcGRvd24vc3BlY2lhbC1kcm9wZG93bi5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIElEcm9wZG93bkZpZWxkLFxyXG4gIElEcm9wZG93blNldHRpbmdzLFxyXG59IGZyb20gJy4vc3BlY2lhbC1kcm9wZG93bi9zcGVjaWFsLWRyb3Bkb3duLmludGVyZmFjZSc7XHJcblxyXG5pbXBvcnQgeyBTcGVjaWFsRGF0ZXBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vc3BlY2lhbC1kYXRlcGlja2VyL3NwZWNpYWwtZGF0ZXBpY2tlci5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIElEYXRlUGlja2VyRmllbGQsXHJcbiAgSURhdGVQaWNrZXJTZXR0aW5ncyxcclxufSBmcm9tICcuL3NwZWNpYWwtZGF0ZXBpY2tlci9zcGVjaWFsLWRhdGVwaWNrZXIuaW50ZXJmYWNlJztcclxuXHJcbmltcG9ydCB7IFNwZWNpYWxNdWx0aXBsZUF1dG9jb21wbGV0ZUNvbXBvbmVudCB9IGZyb20gJy4vc3BlY2lhbC1tdWx0aXBsZS1hdXRvY29tcGxldGUvc3BlY2lhbC1tdWx0aXBsZS1hdXRvY29tcGxldGUuY29tcG9uZW50JztcclxuaW1wb3J0IHtcclxuICBJTXVsdGlwbGVBdXRvY29tcGxldGVGaWVsZCxcclxuICBJTXVsdGlwbGVBdXRvY29tcGxldGVTZXR0aW5ncyxcclxufSBmcm9tICcuL3NwZWNpYWwtbXVsdGlwbGUtYXV0b2NvbXBsZXRlL3NwZWNpYWwtbXVsdGlwbGUtYXV0b2NvbXBsZXRlLmludGVyZmFjZSc7XHJcblxyXG5pbXBvcnQgeyBTcGVjaWFsQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL3NwZWNpYWwtY2hlY2tib3gvc3BlY2lhbC1jaGVja2JveC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIElDaGVja2JveEZpZWxkLFxyXG4gIElDaGVja2JveFNldHRpbmdzLFxyXG59IGZyb20gJy4vc3BlY2lhbC1jaGVja2JveC9zcGVjaWFsLWNoZWNrYm94LmludGVyZmFjZSc7XHJcblxyXG5pbXBvcnQgeyBTcGVjaWFsVGV4dEFyZWFDb21wb25lbnQgfSBmcm9tICcuL3NwZWNpYWwtdGV4dC1hcmVhL3NwZWNpYWwtdGV4dC1hcmVhLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7XHJcbiAgSVRleHRBcmVhRmllbGQsXHJcbiAgSVRleHRBcmVhU2V0dGluZ3MsXHJcbn0gZnJvbSAnLi9zcGVjaWFsLXRleHQtYXJlYS9zcGVjaWFsLXRleHQtYXJlYS5pbnRlcmZhY2UnO1xyXG5cclxuaW1wb3J0IHsgU3BlY2lhbFVwbG9hZENvbXBvbmVudCB9IGZyb20gJy4vc3BlY2lhbC11cGxvYWQvc3BlY2lhbC11cGxvYWQuY29tcG9uZW50JztcclxuaW1wb3J0IHtcclxuICBJVXBsb2FkRmllbGQsXHJcbiAgSVVwbG9hZFNldHRpbmdzLFxyXG59IGZyb20gJy4vc3BlY2lhbC11cGxvYWQvc3BlY2lhbC11cGxvYWQuaW50ZXJmYWNlJztcclxuXHJcbmltcG9ydCB7IFNwZWNpYWxMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vc3BlY2lhbC1sYWJlbC9zcGVjaWFsLWxhYmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7XHJcbiAgSUxhYmVsRmllbGQsXHJcbiAgSUxhYmVsU2V0dGluZ3MsXHJcbn0gZnJvbSAnLi9zcGVjaWFsLWxhYmVsL3NwZWNpYWwtbGFiZWwuaW50ZXJmYWNlJztcclxuXHJcbmltcG9ydCB7IFNwZWNpYWxGb3JtTW9kdWxlIH0gZnJvbSAnLi9zcGVjaWFsLWZvcm0vc3BlY2lhbC1mb3JtLm1vZHVsZSc7XHJcblxyXG5pbXBvcnQgeyBTcGVjaWFsUmljaHRleHRDb21wb25lbnQgfSBmcm9tICcuL3NwZWNpYWwtcmljaHRleHQvc3BlY2lhbC1yaWNodGV4dC5jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIElSaWNoVGV4dEZpZWxkLFxyXG4gIElSaWNoVGV4dFNldHRpbmdzLFxyXG59IGZyb20gJy4vc3BlY2lhbC1yaWNodGV4dC9zcGVjaWFsLXJpY2h0ZXh0LmludGVyZmFjZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gIFNwZWNpYWxGb3JtQ29tcG9uZW50LFxyXG4gIFNwZWNpYWxBcnJheUNvbXBvbmVudCxcclxuICBGb3JtQ29udHJvbHNSZW5kZXJEaXJlY3RpdmUsXHJcbn0gZnJvbSAnLi9zcGVjaWFsLWZvcm0vc3BlY2lhbC1mb3JtLmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQge1xyXG4gIElMYWJlbEZpZWxkLFxyXG4gIElMYWJlbFNldHRpbmdzLFxyXG4gIElUZXh0QXJlYUZpZWxkLFxyXG4gIElUZXh0QXJlYVNldHRpbmdzLFxyXG4gIElVcGxvYWRGaWVsZCxcclxuICBJVXBsb2FkU2V0dGluZ3MsXHJcbiAgSURyb3Bkb3duRmllbGQsXHJcbiAgSURhdGVQaWNrZXJGaWVsZCxcclxuICBJRGF0ZVBpY2tlclNldHRpbmdzLFxyXG4gIElSaWNoVGV4dEZpZWxkLFxyXG4gIElSaWNoVGV4dFNldHRpbmdzLFxyXG4gIElEcm9wZG93blNldHRpbmdzLFxyXG4gIElNdWx0aXBsZUF1dG9jb21wbGV0ZUZpZWxkLFxyXG4gIElNdWx0aXBsZUF1dG9jb21wbGV0ZVNldHRpbmdzLFxyXG4gIElDaGVja2JveEZpZWxkLFxyXG4gIElDaGVja2JveFNldHRpbmdzLFxyXG4gIElJbnB1dEZpZWxkLFxyXG4gIElJbnB1dFNldHRpbmdzLFxyXG4gIElBdXRvY29tcGxldGVGaWVsZCxcclxuICBJQXV0b2NvbXBsZXRlU2V0dGluZ3MsXHJcbiAgU3BlY2lhbFJpY2h0ZXh0Q29tcG9uZW50LFxyXG4gIFNwZWNpYWxBdXRvY29tcGxldGVDb21wb25lbnQsXHJcbiAgU3BlY2lhbERhdGVwaWNrZXJDb21wb25lbnQsXHJcbiAgU3BlY2lhbERyb3Bkb3duQ29tcG9uZW50LFxyXG4gIFNwZWNpYWxNdWx0aXBsZUF1dG9jb21wbGV0ZUNvbXBvbmVudCxcclxuICBTcGVjaWFsQ2hlY2tib3hDb21wb25lbnQsXHJcbiAgU3BlY2lhbFRleHRBcmVhQ29tcG9uZW50LFxyXG4gIFNwZWNpYWxVcGxvYWRDb21wb25lbnQsXHJcbiAgU3BlY2lhbEFycmF5Q29tcG9uZW50LFxyXG4gIFNwZWNpYWxMYWJlbENvbXBvbmVudCxcclxuICBTcGVjaWFsRm9ybUNvbXBvbmVudCxcclxuICBTcGVjaWFsRm9ybU1vZHVsZSxcclxuICBGb3JtQ29udHJvbHNSZW5kZXJEaXJlY3RpdmUsXHJcbiAgU3BlY2lhbElucHV0Q29tcG9uZW50LFxyXG59O1xyXG4iXX0=
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { Component, Input, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
-
import { debounceTime } from 'rxjs/operators';
|
|
3
|
-
import { MatAutocompleteModule, } from '@angular/material/autocomplete';
|
|
4
|
-
import { Subscription } from 'rxjs';
|
|
5
|
-
import { MatInputModule } from '@angular/material/input';
|
|
6
|
-
import { CommonModule } from '@angular/common';
|
|
7
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
8
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
9
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
10
|
-
import { ErrorMessagePipe, TextByFunctionPipe } from '../../core/pipes';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
import * as i1 from "@angular/material/input";
|
|
13
|
-
import * as i2 from "@angular/material/form-field";
|
|
14
|
-
import * as i3 from "@angular/common";
|
|
15
|
-
import * as i4 from "@angular/material/autocomplete";
|
|
16
|
-
import * as i5 from "@angular/material/core";
|
|
17
|
-
import * as i6 from "@angular/material/icon";
|
|
18
|
-
import * as i7 from "@angular/forms";
|
|
19
|
-
import * as i8 from "@angular/material/button";
|
|
20
|
-
export class SpecialAutocompleteComponent {
|
|
21
|
-
constructor() {
|
|
22
|
-
this.subs = new Subscription();
|
|
23
|
-
this.configValue = (item) => {
|
|
24
|
-
if (!item)
|
|
25
|
-
return '';
|
|
26
|
-
const fieldName = this.settings.fieldName;
|
|
27
|
-
return fieldName instanceof Function ? fieldName(item) : item[fieldName];
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
ngOnInit() {
|
|
31
|
-
this.init();
|
|
32
|
-
}
|
|
33
|
-
get settings() {
|
|
34
|
-
return this.control.settings;
|
|
35
|
-
}
|
|
36
|
-
init() {
|
|
37
|
-
this.subs.add(this.control.valueChanges.pipe(debounceTime(500)).subscribe((value) => {
|
|
38
|
-
if (typeof value === 'string') {
|
|
39
|
-
this.settings.getData(value, this.control);
|
|
40
|
-
}
|
|
41
|
-
}));
|
|
42
|
-
}
|
|
43
|
-
optionSelected(data) {
|
|
44
|
-
this.control.setValue(data.option.value);
|
|
45
|
-
if (this.settings.onSelect)
|
|
46
|
-
this.settings.onSelect(data.option.value);
|
|
47
|
-
}
|
|
48
|
-
iconClick(event) {
|
|
49
|
-
if (this.settings.iconAction) {
|
|
50
|
-
this.settings.iconAction(this.control.value);
|
|
51
|
-
event.stopPropagation();
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
ngOnDestroy() {
|
|
55
|
-
this.subs.unsubscribe();
|
|
56
|
-
}
|
|
57
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialAutocompleteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
58
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: SpecialAutocompleteComponent, isStandalone: true, selector: "sp-autocomplete", inputs: { control: "control" }, ngImport: i0, template: "@if (control && !control.hidden) {\r\n <mat-form-field\r\n class=\"special-autocomplete w-full mb-3 {{ control.styleClasses }}\"\r\n [id]=\"control.elementId\"\r\n [appearance]=\"control.label ? 'outline' : 'fill'\"\r\n >\r\n @if (control.label) {\r\n <mat-label>\r\n {{ control.label }}\r\n </mat-label>\r\n }\r\n <input\r\n type=\"text\"\r\n autocomplete=\"off\"\r\n [required]=\"control.required\"\r\n [readonly]=\"control.readOnly\"\r\n [placeholder]=\"control.placeholder\"\r\n matInput\r\n [formControl]=\"control\"\r\n [matAutocomplete]=\"auto\"\r\n />\r\n <mat-autocomplete\r\n #auto=\"matAutocomplete\"\r\n [displayWith]=\"configValue\"\r\n (optionSelected)=\"optionSelected($event)\"\r\n >\r\n @for (\r\n option of settings?.source | async;\r\n track option[settings.fieldId]\r\n ) {\r\n <mat-option [value]=\"option\">\r\n <div class=\"flex items-center\">\r\n @if (settings.fieldImage) {\r\n <img\r\n class=\"w-8 pr-2\"\r\n alt=\"\"\r\n [src]=\"option | textByFunction: settings.fieldImage\"\r\n />\r\n }\r\n <span>\r\n {{ option | textByFunction: settings.fieldName }}\r\n </span>\r\n </div>\r\n </mat-option>\r\n }\r\n </mat-autocomplete>\r\n @if (control.icon) {\r\n <mat-icon matPrefix>{{ control.icon }}</mat-icon>\r\n }\r\n @if (settings.icon) {\r\n <button mat-icon-button matSuffix (click)=\"iconClick($event)\">\r\n <mat-icon>\r\n {{ settings.icon }}\r\n </mat-icon>\r\n </button>\r\n }\r\n @if (control.tooltip) {\r\n <mat-hint>{{ control.tooltip }}</mat-hint>\r\n }\r\n <mat-error>\r\n {{ control.errors | errorMessage: control.errorMessages }}\r\n </mat-error>\r\n </mat-form-field>\r\n}\r\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatAutocompleteModule }, { kind: "component", type: i4.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i4.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i7.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "pipe", type: ErrorMessagePipe, name: "errorMessage" }, { kind: "pipe", type: TextByFunctionPipe, name: "textByFunction" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
59
|
-
}
|
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialAutocompleteComponent, decorators: [{
|
|
61
|
-
type: Component,
|
|
62
|
-
args: [{ standalone: true, selector: 'sp-autocomplete', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
63
|
-
MatInputModule,
|
|
64
|
-
CommonModule,
|
|
65
|
-
MatAutocompleteModule,
|
|
66
|
-
MatIconModule,
|
|
67
|
-
ReactiveFormsModule,
|
|
68
|
-
MatButtonModule,
|
|
69
|
-
ErrorMessagePipe,
|
|
70
|
-
TextByFunctionPipe,
|
|
71
|
-
], template: "@if (control && !control.hidden) {\r\n <mat-form-field\r\n class=\"special-autocomplete w-full mb-3 {{ control.styleClasses }}\"\r\n [id]=\"control.elementId\"\r\n [appearance]=\"control.label ? 'outline' : 'fill'\"\r\n >\r\n @if (control.label) {\r\n <mat-label>\r\n {{ control.label }}\r\n </mat-label>\r\n }\r\n <input\r\n type=\"text\"\r\n autocomplete=\"off\"\r\n [required]=\"control.required\"\r\n [readonly]=\"control.readOnly\"\r\n [placeholder]=\"control.placeholder\"\r\n matInput\r\n [formControl]=\"control\"\r\n [matAutocomplete]=\"auto\"\r\n />\r\n <mat-autocomplete\r\n #auto=\"matAutocomplete\"\r\n [displayWith]=\"configValue\"\r\n (optionSelected)=\"optionSelected($event)\"\r\n >\r\n @for (\r\n option of settings?.source | async;\r\n track option[settings.fieldId]\r\n ) {\r\n <mat-option [value]=\"option\">\r\n <div class=\"flex items-center\">\r\n @if (settings.fieldImage) {\r\n <img\r\n class=\"w-8 pr-2\"\r\n alt=\"\"\r\n [src]=\"option | textByFunction: settings.fieldImage\"\r\n />\r\n }\r\n <span>\r\n {{ option | textByFunction: settings.fieldName }}\r\n </span>\r\n </div>\r\n </mat-option>\r\n }\r\n </mat-autocomplete>\r\n @if (control.icon) {\r\n <mat-icon matPrefix>{{ control.icon }}</mat-icon>\r\n }\r\n @if (settings.icon) {\r\n <button mat-icon-button matSuffix (click)=\"iconClick($event)\">\r\n <mat-icon>\r\n {{ settings.icon }}\r\n </mat-icon>\r\n </button>\r\n }\r\n @if (control.tooltip) {\r\n <mat-hint>{{ control.tooltip }}</mat-hint>\r\n }\r\n <mat-error>\r\n {{ control.errors | errorMessage: control.errorMessages }}\r\n </mat-error>\r\n </mat-form-field>\r\n}\r\n", styles: [":host{display:contents}\n"] }]
|
|
72
|
-
}], ctorParameters: () => [], propDecorators: { control: [{
|
|
73
|
-
type: Input
|
|
74
|
-
}] } });
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY2lhbC1hdXRvY29tcGxldGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BlY2lhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvc3BlY2lhbC1hdXRvY29tcGxldGUvc3BlY2lhbC1hdXRvY29tcGxldGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BlY2lhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvc3BlY2lhbC1hdXRvY29tcGxldGUvc3BlY2lhbC1hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFDTCxxQkFBcUIsR0FFdEIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBTXBDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7OztBQWtCeEUsTUFBTSxPQUFPLDRCQUE0QjtJQUl2QztRQUZBLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBc0IxQixnQkFBVyxHQUFHLENBQUMsSUFBUyxFQUFFLEVBQUU7WUFDMUIsSUFBSSxDQUFDLElBQUk7Z0JBQUUsT0FBTyxFQUFFLENBQUM7WUFDckIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUM7WUFDMUMsT0FBTyxTQUFTLFlBQVksUUFBUSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzRSxDQUFDLENBQUM7SUF4QmEsQ0FBQztJQUVoQixRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDWCxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDcEUsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDOUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM3QyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFRRCxjQUFjLENBQUMsSUFBa0M7UUFDL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUTtZQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFZO1FBQ3BCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzdDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzFCLENBQUM7OEdBNUNVLDRCQUE0QjtrR0FBNUIsNEJBQTRCLDJHQ25DekMsKzdEQWdFQSxrRkR2Q0ksY0FBYyw2aUNBQ2QsWUFBWSxtRkFDWixxQkFBcUIsdzFCQUNyQixhQUFhLG1MQUNiLG1CQUFtQixzeUJBQ25CLGVBQWUsdUlBQ2YsZ0JBQWdCLGdEQUNoQixrQkFBa0I7OzJGQUdULDRCQUE0QjtrQkFqQnhDLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLGlCQUFpQixtQkFHVix1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLGNBQWM7d0JBQ2QsWUFBWTt3QkFDWixxQkFBcUI7d0JBQ3JCLGFBQWE7d0JBQ2IsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsa0JBQWtCO3FCQUNuQjt3REFHUSxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7XHJcbiAgTWF0QXV0b2NvbXBsZXRlTW9kdWxlLFxyXG4gIE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFNwZWNpYWxGb3JtQ29udHJvbCB9IGZyb20gJy4uLy4uL2NvcmUvZm9ybXMvc3BlY2lhbC1mb3Jtcyc7XHJcbmltcG9ydCB7XHJcbiAgSUF1dG9jb21wbGV0ZUZpZWxkLFxyXG4gIElBdXRvY29tcGxldGVTZXR0aW5ncyxcclxufSBmcm9tICcuL3NwZWNpYWwtYXV0b2NvbXBsZXRlLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IEVycm9yTWVzc2FnZVBpcGUsIFRleHRCeUZ1bmN0aW9uUGlwZSB9IGZyb20gJy4uLy4uL2NvcmUvcGlwZXMnO1xyXG5AQ29tcG9uZW50KHtcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHNlbGVjdG9yOiAnc3AtYXV0b2NvbXBsZXRlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3BlY2lhbC1hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NwZWNpYWwtYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgTWF0SW5wdXRNb2R1bGUsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBNYXRBdXRvY29tcGxldGVNb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIEVycm9yTWVzc2FnZVBpcGUsXHJcbiAgICBUZXh0QnlGdW5jdGlvblBpcGUsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNwZWNpYWxBdXRvY29tcGxldGVDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIGNvbnRyb2w6IFNwZWNpYWxGb3JtQ29udHJvbDxJQXV0b2NvbXBsZXRlRmllbGQ+O1xyXG4gIHN1YnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmluaXQoKTtcclxuICB9XHJcblxyXG4gIGdldCBzZXR0aW5ncygpOiBJQXV0b2NvbXBsZXRlU2V0dGluZ3M8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb250cm9sLnNldHRpbmdzO1xyXG4gIH1cclxuXHJcbiAgaW5pdCgpIHtcclxuICAgIHRoaXMuc3Vicy5hZGQoXHJcbiAgICAgIHRoaXMuY29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShkZWJvdW5jZVRpbWUoNTAwKSkuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xyXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgICB0aGlzLnNldHRpbmdzLmdldERhdGEodmFsdWUsIHRoaXMuY29udHJvbCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGNvbmZpZ1ZhbHVlID0gKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgaWYgKCFpdGVtKSByZXR1cm4gJyc7XHJcbiAgICBjb25zdCBmaWVsZE5hbWUgPSB0aGlzLnNldHRpbmdzLmZpZWxkTmFtZTtcclxuICAgIHJldHVybiBmaWVsZE5hbWUgaW5zdGFuY2VvZiBGdW5jdGlvbiA/IGZpZWxkTmFtZShpdGVtKSA6IGl0ZW1bZmllbGROYW1lXTtcclxuICB9O1xyXG5cclxuICBvcHRpb25TZWxlY3RlZChkYXRhOiBNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50KSB7XHJcbiAgICB0aGlzLmNvbnRyb2wuc2V0VmFsdWUoZGF0YS5vcHRpb24udmFsdWUpO1xyXG4gICAgaWYgKHRoaXMuc2V0dGluZ3Mub25TZWxlY3QpIHRoaXMuc2V0dGluZ3Mub25TZWxlY3QoZGF0YS5vcHRpb24udmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgaWNvbkNsaWNrKGV2ZW50OiBFdmVudCkge1xyXG4gICAgaWYgKHRoaXMuc2V0dGluZ3MuaWNvbkFjdGlvbikge1xyXG4gICAgICB0aGlzLnNldHRpbmdzLmljb25BY3Rpb24odGhpcy5jb250cm9sLnZhbHVlKTtcclxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuc3Vicy51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxufVxyXG4iLCJAaWYgKGNvbnRyb2wgJiYgIWNvbnRyb2wuaGlkZGVuKSB7XHJcbiAgPG1hdC1mb3JtLWZpZWxkXHJcbiAgICBjbGFzcz1cInNwZWNpYWwtYXV0b2NvbXBsZXRlIHctZnVsbCBtYi0zIHt7IGNvbnRyb2wuc3R5bGVDbGFzc2VzIH19XCJcclxuICAgIFtpZF09XCJjb250cm9sLmVsZW1lbnRJZFwiXHJcbiAgICBbYXBwZWFyYW5jZV09XCJjb250cm9sLmxhYmVsID8gJ291dGxpbmUnIDogJ2ZpbGwnXCJcclxuICA+XHJcbiAgICBAaWYgKGNvbnRyb2wubGFiZWwpIHtcclxuICAgICAgPG1hdC1sYWJlbD5cclxuICAgICAgICB7eyBjb250cm9sLmxhYmVsIH19XHJcbiAgICAgIDwvbWF0LWxhYmVsPlxyXG4gICAgfVxyXG4gICAgPGlucHV0XHJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcclxuICAgICAgW3JlcXVpcmVkXT1cImNvbnRyb2wucmVxdWlyZWRcIlxyXG4gICAgICBbcmVhZG9ubHldPVwiY29udHJvbC5yZWFkT25seVwiXHJcbiAgICAgIFtwbGFjZWhvbGRlcl09XCJjb250cm9sLnBsYWNlaG9sZGVyXCJcclxuICAgICAgbWF0SW5wdXRcclxuICAgICAgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIlxyXG4gICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIlxyXG4gICAgLz5cclxuICAgIDxtYXQtYXV0b2NvbXBsZXRlXHJcbiAgICAgICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCJcclxuICAgICAgW2Rpc3BsYXlXaXRoXT1cImNvbmZpZ1ZhbHVlXCJcclxuICAgICAgKG9wdGlvblNlbGVjdGVkKT1cIm9wdGlvblNlbGVjdGVkKCRldmVudClcIlxyXG4gICAgPlxyXG4gICAgICBAZm9yIChcclxuICAgICAgICBvcHRpb24gb2Ygc2V0dGluZ3M/LnNvdXJjZSB8IGFzeW5jO1xyXG4gICAgICAgIHRyYWNrIG9wdGlvbltzZXR0aW5ncy5maWVsZElkXVxyXG4gICAgICApIHtcclxuICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwib3B0aW9uXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgQGlmIChzZXR0aW5ncy5maWVsZEltYWdlKSB7XHJcbiAgICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ3LTggcHItMlwiXHJcbiAgICAgICAgICAgICAgICBhbHQ9XCJcIlxyXG4gICAgICAgICAgICAgICAgW3NyY109XCJvcHRpb24gfCB0ZXh0QnlGdW5jdGlvbjogc2V0dGluZ3MuZmllbGRJbWFnZVwiXHJcbiAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAgICB7eyBvcHRpb24gfCB0ZXh0QnlGdW5jdGlvbjogc2V0dGluZ3MuZmllbGROYW1lIH19XHJcbiAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgfVxyXG4gICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxyXG4gICAgQGlmIChjb250cm9sLmljb24pIHtcclxuICAgICAgPG1hdC1pY29uIG1hdFByZWZpeD57eyBjb250cm9sLmljb24gfX08L21hdC1pY29uPlxyXG4gICAgfVxyXG4gICAgQGlmIChzZXR0aW5ncy5pY29uKSB7XHJcbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIG1hdFN1ZmZpeCAoY2xpY2spPVwiaWNvbkNsaWNrKCRldmVudClcIj5cclxuICAgICAgICA8bWF0LWljb24+XHJcbiAgICAgICAgICB7eyBzZXR0aW5ncy5pY29uIH19XHJcbiAgICAgICAgPC9tYXQtaWNvbj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICB9XHJcbiAgICBAaWYgKGNvbnRyb2wudG9vbHRpcCkge1xyXG4gICAgICA8bWF0LWhpbnQ+e3sgY29udHJvbC50b29sdGlwIH19PC9tYXQtaGludD5cclxuICAgIH1cclxuICAgIDxtYXQtZXJyb3I+XHJcbiAgICAgIHt7IGNvbnRyb2wuZXJyb3JzIHwgZXJyb3JNZXNzYWdlOiBjb250cm9sLmVycm9yTWVzc2FnZXMgfX1cclxuICAgIDwvbWF0LWVycm9yPlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcbn1cclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY2lhbC1hdXRvY29tcGxldGUuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BlY2lhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvc3BlY2lhbC1hdXRvY29tcGxldGUvc3BlY2lhbC1hdXRvY29tcGxldGUuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRUNvbnRyb2xUeXBlcyB9IGZyb20gJy4uLy4uL2NvcmUvYXV4LWRhdGEvY29udHJvbC10eXBlcy5lbnVtJztcclxuaW1wb3J0IHsgSUZpZWxkRGF0YSB9IGZyb20gJy4uLy4uL2NvcmUvaW50ZXJmYWNlcy9maWVsZC1iYXNpY3MuaW50ZXJmYWNlcyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElBdXRvY29tcGxldGVTZXR0aW5nczxUPiB7XHJcbiAgZ2V0RGF0YTogKHF1ZXJ5OiBzdHJpbmcsIGNvbnRyb2w/OiBBYnN0cmFjdENvbnRyb2wpID0+IHZvaWQ7XHJcbiAgc291cmNlOiBPYnNlcnZhYmxlPFRbXT47XHJcbiAgZmllbGRJZDogc3RyaW5nO1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbiAgaWNvbkFjdGlvbj86IChkYXRhOiBUKSA9PiB2b2lkO1xyXG4gIG9uU2VsZWN0PzogKGRhdGE6IFQpID0+IHZvaWQ7XHJcbiAgZmllbGROYW1lOiBzdHJpbmcgfCAoKGE/OiBUKSA9PiBzdHJpbmcpO1xyXG4gIGZpZWxkSW1hZ2U/OiBzdHJpbmcgfCAoKGE/OiBUKSA9PiBzdHJpbmcpO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElBdXRvY29tcGxldGVGaWVsZDxUID0gYW55PiBleHRlbmRzIElGaWVsZERhdGEge1xyXG4gIHNldHRpbmdzOiBJQXV0b2NvbXBsZXRlU2V0dGluZ3M8VD47XHJcbiAgdHlwZTogRUNvbnRyb2xUeXBlcy5hdXRvY29tcGxldGU7XHJcbiAgZGVmYXVsdFZhbHVlOiBUO1xyXG59XHJcbiJdfQ==
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';
|
|
3
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
5
|
-
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
6
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
7
|
-
import { MatInputModule } from '@angular/material/input';
|
|
8
|
-
import { ErrorMessagePipe } from '../../core/pipes';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/forms";
|
|
11
|
-
import * as i2 from "@angular/material/checkbox";
|
|
12
|
-
import * as i3 from "@angular/material/form-field";
|
|
13
|
-
import * as i4 from "@angular/material/icon";
|
|
14
|
-
export class SpecialCheckboxComponent {
|
|
15
|
-
get settings() {
|
|
16
|
-
return this.control.settings;
|
|
17
|
-
}
|
|
18
|
-
constructor() { }
|
|
19
|
-
ngOnInit() { }
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialCheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: SpecialCheckboxComponent, isStandalone: true, selector: "sp-checkbox", inputs: { control: "control" }, ngImport: i0, template: "@if (control && !control.hidden) {\r\n <div\r\n [id]=\"control.elementId\"\r\n class=\"special-checkbox w-full mb-3 flex flex-col {{\r\n control.styleClasses\r\n }}\"\r\n >\r\n @if (control.label) {\r\n <mat-label>\r\n {{ control.label }}\r\n </mat-label>\r\n }\r\n <mat-checkbox\r\n [required]=\"control.required\"\r\n [ngModel]=\"control.value\"\r\n (ngModelChange)=\"control.setValue($event); control.markAsDirty()\"\r\n [indeterminate]=\"settings.indeterminate\"\r\n [labelPosition]=\"settings.labelPosition\"\r\n [color]=\"settings.color\"\r\n [disabled]=\"control.disabled\"\r\n >\r\n @if (control.icon) {\r\n <mat-icon matSuffix>{{ control.icon }}</mat-icon>\r\n }\r\n {{ control.placeholder }}\r\n </mat-checkbox>\r\n </div>\r\n}\r\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i2.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: MatButtonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
22
|
-
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialCheckboxComponent, decorators: [{
|
|
24
|
-
type: Component,
|
|
25
|
-
args: [{ standalone: true, selector: 'sp-checkbox', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
26
|
-
FormsModule,
|
|
27
|
-
MatCheckboxModule,
|
|
28
|
-
CommonModule,
|
|
29
|
-
MatInputModule,
|
|
30
|
-
MatIconModule,
|
|
31
|
-
ReactiveFormsModule,
|
|
32
|
-
MatButtonModule,
|
|
33
|
-
ErrorMessagePipe,
|
|
34
|
-
], template: "@if (control && !control.hidden) {\r\n <div\r\n [id]=\"control.elementId\"\r\n class=\"special-checkbox w-full mb-3 flex flex-col {{\r\n control.styleClasses\r\n }}\"\r\n >\r\n @if (control.label) {\r\n <mat-label>\r\n {{ control.label }}\r\n </mat-label>\r\n }\r\n <mat-checkbox\r\n [required]=\"control.required\"\r\n [ngModel]=\"control.value\"\r\n (ngModelChange)=\"control.setValue($event); control.markAsDirty()\"\r\n [indeterminate]=\"settings.indeterminate\"\r\n [labelPosition]=\"settings.labelPosition\"\r\n [color]=\"settings.color\"\r\n [disabled]=\"control.disabled\"\r\n >\r\n @if (control.icon) {\r\n <mat-icon matSuffix>{{ control.icon }}</mat-icon>\r\n }\r\n {{ control.placeholder }}\r\n </mat-checkbox>\r\n </div>\r\n}\r\n", styles: [":host{display:contents}\n"] }]
|
|
35
|
-
}], ctorParameters: () => [], propDecorators: { control: [{
|
|
36
|
-
type: Input
|
|
37
|
-
}] } });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY2lhbC1jaGVja2JveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVjaWFsLWZvcm1zL3NyYy9saWIvY29tcG9uZW50cy9zcGVjaWFsLWNoZWNrYm94L3NwZWNpYWwtY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BlY2lhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvc3BlY2lhbC1jaGVja2JveC9zcGVjaWFsLWNoZWNrYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7QUFxQnBELE1BQU0sT0FBTyx3QkFBd0I7SUFHbkMsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztJQUMvQixDQUFDO0lBQ0QsZ0JBQWUsQ0FBQztJQUNoQixRQUFRLEtBQVUsQ0FBQzs4R0FQUix3QkFBd0I7a0dBQXhCLHdCQUF3Qix1R0NqQ3JDLGkxQkE0QkEsa0ZETEksV0FBVywyakJBQ1gsaUJBQWlCLG9ZQUNqQixZQUFZLDhCQUNaLGNBQWMsZ09BQ2QsYUFBYSxtTEFDYixtQkFBbUIsOEJBQ25CLGVBQWU7OzJGQUlOLHdCQUF3QjtrQkFqQnBDLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLGFBQWEsbUJBR04sdUJBQXVCLENBQUMsTUFBTSxXQUN0Qzt3QkFDUCxXQUFXO3dCQUNYLGlCQUFpQjt3QkFDakIsWUFBWTt3QkFDWixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLGdCQUFnQjtxQkFDakI7d0RBR1EsT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0Q2hlY2tib3hNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XHJcbmltcG9ydCB7IEVycm9yTWVzc2FnZVBpcGUgfSBmcm9tICcuLi8uLi9jb3JlL3BpcGVzJztcclxuaW1wb3J0IHsgU3BlY2lhbEZvcm1Db250cm9sIH0gZnJvbSAnLi4vLi4vY29yZS9mb3Jtcy9zcGVjaWFsLWZvcm1zJztcclxuaW1wb3J0IHsgSUNoZWNrYm94RmllbGQsIElDaGVja2JveFNldHRpbmdzIH0gZnJvbSAnLi9zcGVjaWFsLWNoZWNrYm94LmludGVyZmFjZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHNlbGVjdG9yOiAnc3AtY2hlY2tib3gnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zcGVjaWFsLWNoZWNrYm94LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zcGVjaWFsLWNoZWNrYm94LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBNYXRDaGVja2JveE1vZHVsZSxcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgTWF0SWNvbk1vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICBFcnJvck1lc3NhZ2VQaXBlLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTcGVjaWFsQ2hlY2tib3hDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGNvbnRyb2whOiBTcGVjaWFsRm9ybUNvbnRyb2w8SUNoZWNrYm94RmllbGQ+O1xyXG5cclxuICBnZXQgc2V0dGluZ3MoKTogSUNoZWNrYm94U2V0dGluZ3Mge1xyXG4gICAgcmV0dXJuIHRoaXMuY29udHJvbC5zZXR0aW5ncztcclxuICB9XHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge31cclxuXHJcblxyXG59XHJcbiIsIkBpZiAoY29udHJvbCAmJiAhY29udHJvbC5oaWRkZW4pIHtcclxuICA8ZGl2XHJcbiAgICBbaWRdPVwiY29udHJvbC5lbGVtZW50SWRcIlxyXG4gICAgY2xhc3M9XCJzcGVjaWFsLWNoZWNrYm94IHctZnVsbCBtYi0zIGZsZXggZmxleC1jb2wge3tcclxuICAgICAgY29udHJvbC5zdHlsZUNsYXNzZXNcclxuICAgIH19XCJcclxuICA+XHJcbiAgICBAaWYgKGNvbnRyb2wubGFiZWwpIHtcclxuICAgICAgPG1hdC1sYWJlbD5cclxuICAgICAgICB7eyBjb250cm9sLmxhYmVsIH19XHJcbiAgICAgIDwvbWF0LWxhYmVsPlxyXG4gICAgfVxyXG4gICAgPG1hdC1jaGVja2JveFxyXG4gICAgICBbcmVxdWlyZWRdPVwiY29udHJvbC5yZXF1aXJlZFwiXHJcbiAgICAgIFtuZ01vZGVsXT1cImNvbnRyb2wudmFsdWVcIlxyXG4gICAgICAobmdNb2RlbENoYW5nZSk9XCJjb250cm9sLnNldFZhbHVlKCRldmVudCk7IGNvbnRyb2wubWFya0FzRGlydHkoKVwiXHJcbiAgICAgIFtpbmRldGVybWluYXRlXT1cInNldHRpbmdzLmluZGV0ZXJtaW5hdGVcIlxyXG4gICAgICBbbGFiZWxQb3NpdGlvbl09XCJzZXR0aW5ncy5sYWJlbFBvc2l0aW9uXCJcclxuICAgICAgW2NvbG9yXT1cInNldHRpbmdzLmNvbG9yXCJcclxuICAgICAgW2Rpc2FibGVkXT1cImNvbnRyb2wuZGlzYWJsZWRcIlxyXG4gICAgPlxyXG4gICAgICBAaWYgKGNvbnRyb2wuaWNvbikge1xyXG4gICAgICAgIDxtYXQtaWNvbiBtYXRTdWZmaXg+e3sgY29udHJvbC5pY29uIH19PC9tYXQtaWNvbj5cclxuICAgICAgfVxyXG4gICAgICB7eyBjb250cm9sLnBsYWNlaG9sZGVyIH19XHJcbiAgICA8L21hdC1jaGVja2JveD5cclxuICA8L2Rpdj5cclxufVxyXG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
;
|
|
2
|
-
export {};
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY2lhbC1jaGVja2JveC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVjaWFsLWZvcm1zL3NyYy9saWIvY29tcG9uZW50cy9zcGVjaWFsLWNoZWNrYm94L3NwZWNpYWwtY2hlY2tib3guaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcclxuaW1wb3J0IHsgRUNvbnRyb2xUeXBlcyB9IGZyb20gJy4uLy4uL2NvcmUvYXV4LWRhdGEvY29udHJvbC10eXBlcy5lbnVtJztcclxuaW1wb3J0IHsgSUZpZWxkRGF0YSB9IGZyb20gJy4uLy4uL2NvcmUvaW50ZXJmYWNlcy9maWVsZC1iYXNpY3MuaW50ZXJmYWNlcyc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElDaGVja2JveFNldHRpbmdze1xyXG4gIGxhYmVsUG9zaXRpb24/OiAnYmVmb3JlJyB8ICdhZnRlcic7XHJcbiAgaW5kZXRlcm1pbmF0ZT86IGJvb2xlYW47XHJcbiAgY29sb3I/OiBUaGVtZVBhbGV0dGU7XHJcbn07XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElDaGVja2JveEZpZWxkIGV4dGVuZHMgSUZpZWxkRGF0YSB7XHJcbiAgc2V0dGluZ3M6IElDaGVja2JveFNldHRpbmdzO1xyXG4gIHR5cGU6IEVDb250cm9sVHlwZXMuY2hlY2tib3g7XHJcbiAgZGVmYXVsdFZhbHVlOiBib29sZWFuO1xyXG59XHJcbiJdfQ==
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';
|
|
3
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
5
|
-
import { MatNativeDateModule } from '@angular/material/core';
|
|
6
|
-
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
7
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
8
|
-
import { MatInputModule } from '@angular/material/input';
|
|
9
|
-
import { ErrorMessagePipe } from '../../core/pipes';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "@angular/material/input";
|
|
12
|
-
import * as i2 from "@angular/material/form-field";
|
|
13
|
-
import * as i3 from "@angular/material/datepicker";
|
|
14
|
-
import * as i4 from "@angular/forms";
|
|
15
|
-
export class SpecialDatepickerComponent {
|
|
16
|
-
constructor() { }
|
|
17
|
-
get settings() {
|
|
18
|
-
return this.control.settings;
|
|
19
|
-
}
|
|
20
|
-
get startAt() {
|
|
21
|
-
return this.settings?.startAt || new Date();
|
|
22
|
-
}
|
|
23
|
-
ngOnInit() { }
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialDatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: SpecialDatepickerComponent, isStandalone: true, selector: "sp-datepicker", inputs: { control: "control" }, ngImport: i0, template: "@if (control && !control.hidden) {\r\n <mat-form-field\r\n [id]=\"control.elementId\"\r\n class=\"special-datepicker w-full mb-3 {{ control.styleClasses }}\"\r\n [appearance]=\"control.label ? 'outline' : 'fill'\"\r\n >\r\n @if (control.label) {\r\n <mat-label>\r\n {{ control.label }}\r\n </mat-label>\r\n }\r\n <input\r\n matInput\r\n autocomplete=\"off\"\r\n [readonly]=\"control.readOnly\"\r\n [matDatepicker]=\"picker\"\r\n [required]=\"control.required\"\r\n [placeholder]=\"control.placeholder\"\r\n [formControl]=\"control\"\r\n />\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-datepicker #picker startView=\"year\" [startAt]=\"startAt\">\r\n </mat-datepicker>\r\n <mat-hint>\r\n {{ control.tooltip }}\r\n </mat-hint>\r\n <mat-error>\r\n {{ control.errors | errorMessage: control.errorMessages }}\r\n </mat-error>\r\n </mat-form-field>\r\n}\r\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i3.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i3.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i3.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "pipe", type: ErrorMessagePipe, name: "errorMessage" }, { kind: "ngmodule", type: MatNativeDateModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
26
|
-
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialDatepickerComponent, decorators: [{
|
|
28
|
-
type: Component,
|
|
29
|
-
args: [{ standalone: true, selector: 'sp-datepicker', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
30
|
-
MatInputModule,
|
|
31
|
-
MatDatepickerModule,
|
|
32
|
-
CommonModule,
|
|
33
|
-
MatIconModule,
|
|
34
|
-
ReactiveFormsModule,
|
|
35
|
-
MatButtonModule,
|
|
36
|
-
ErrorMessagePipe,
|
|
37
|
-
MatNativeDateModule,
|
|
38
|
-
], template: "@if (control && !control.hidden) {\r\n <mat-form-field\r\n [id]=\"control.elementId\"\r\n class=\"special-datepicker w-full mb-3 {{ control.styleClasses }}\"\r\n [appearance]=\"control.label ? 'outline' : 'fill'\"\r\n >\r\n @if (control.label) {\r\n <mat-label>\r\n {{ control.label }}\r\n </mat-label>\r\n }\r\n <input\r\n matInput\r\n autocomplete=\"off\"\r\n [readonly]=\"control.readOnly\"\r\n [matDatepicker]=\"picker\"\r\n [required]=\"control.required\"\r\n [placeholder]=\"control.placeholder\"\r\n [formControl]=\"control\"\r\n />\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\"></mat-datepicker-toggle>\r\n <mat-datepicker #picker startView=\"year\" [startAt]=\"startAt\">\r\n </mat-datepicker>\r\n <mat-hint>\r\n {{ control.tooltip }}\r\n </mat-hint>\r\n <mat-error>\r\n {{ control.errors | errorMessage: control.errorMessages }}\r\n </mat-error>\r\n </mat-form-field>\r\n}\r\n", styles: [":host{display:contents}\n"] }]
|
|
39
|
-
}], ctorParameters: () => [], propDecorators: { control: [{
|
|
40
|
-
type: Input
|
|
41
|
-
}] } });
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY2lhbC1kYXRlcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwZWNpYWwtZm9ybXMvc3JjL2xpYi9jb21wb25lbnRzL3NwZWNpYWwtZGF0ZXBpY2tlci9zcGVjaWFsLWRhdGVwaWNrZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BlY2lhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvc3BlY2lhbC1kYXRlcGlja2VyL3NwZWNpYWwtZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXpELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7QUFzQnBELE1BQU0sT0FBTywwQkFBMEI7SUFHckMsZ0JBQWUsQ0FBQztJQUVoQixJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVELFFBQVEsS0FBVSxDQUFDOzhHQWJSLDBCQUEwQjtrR0FBMUIsMEJBQTBCLHlHQ3BDdkMsNCtCQStCQSxrRkRMSSxjQUFjLDQ2QkFDZCxtQkFBbUIsaWdCQUNuQixZQUFZLDhCQUNaLGFBQWEsOEJBQ2IsbUJBQW1CLHN5QkFDbkIsZUFBZSwwQkFDZixnQkFBZ0Isb0RBQ2hCLG1CQUFtQjs7MkZBR1YsMEJBQTBCO2tCQWpCdEMsU0FBUztpQ0FDSSxJQUFJLFlBQ04sZUFBZSxtQkFHUix1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3FCQUNwQjt3REFHUSxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7IE1hdE5hdGl2ZURhdGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcclxuaW1wb3J0IHsgTWF0RGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xyXG5pbXBvcnQgeyBTcGVjaWFsRm9ybUNvbnRyb2wgfSBmcm9tICcuLi8uLi9jb3JlL2Zvcm1zL3NwZWNpYWwtZm9ybXMnO1xyXG5pbXBvcnQgeyBFcnJvck1lc3NhZ2VQaXBlIH0gZnJvbSAnLi4vLi4vY29yZS9waXBlcyc7XHJcbmltcG9ydCB7XHJcbiAgSURhdGVQaWNrZXJGaWVsZCxcclxuICBJRGF0ZVBpY2tlclNldHRpbmdzLFxyXG59IGZyb20gJy4vc3BlY2lhbC1kYXRlcGlja2VyLmludGVyZmFjZSc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgc2VsZWN0b3I6ICdzcC1kYXRlcGlja2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3BlY2lhbC1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zcGVjaWFsLWRhdGVwaWNrZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBNYXRJbnB1dE1vZHVsZSxcclxuICAgIE1hdERhdGVwaWNrZXJNb2R1bGUsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBNYXRJY29uTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcclxuICAgIEVycm9yTWVzc2FnZVBpcGUsXHJcbiAgICBNYXROYXRpdmVEYXRlTW9kdWxlLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTcGVjaWFsRGF0ZXBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgY29udHJvbCE6IFNwZWNpYWxGb3JtQ29udHJvbDxJRGF0ZVBpY2tlckZpZWxkPjtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICBnZXQgc2V0dGluZ3MoKTogSURhdGVQaWNrZXJTZXR0aW5ncyB7XHJcbiAgICByZXR1cm4gdGhpcy5jb250cm9sLnNldHRpbmdzO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHN0YXJ0QXQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5zZXR0aW5ncz8uc3RhcnRBdCB8fCBuZXcgRGF0ZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7fVxyXG59XHJcbiIsIkBpZiAoY29udHJvbCAmJiAhY29udHJvbC5oaWRkZW4pIHtcclxuICA8bWF0LWZvcm0tZmllbGRcclxuICAgIFtpZF09XCJjb250cm9sLmVsZW1lbnRJZFwiXHJcbiAgICBjbGFzcz1cInNwZWNpYWwtZGF0ZXBpY2tlciB3LWZ1bGwgbWItMyAge3sgY29udHJvbC5zdHlsZUNsYXNzZXMgfX1cIlxyXG4gICAgW2FwcGVhcmFuY2VdPVwiY29udHJvbC5sYWJlbCA/ICdvdXRsaW5lJyA6ICdmaWxsJ1wiXHJcbiAgPlxyXG4gICAgQGlmIChjb250cm9sLmxhYmVsKSB7XHJcbiAgICAgIDxtYXQtbGFiZWw+XHJcbiAgICAgICAge3sgY29udHJvbC5sYWJlbCB9fVxyXG4gICAgICA8L21hdC1sYWJlbD5cclxuICAgIH1cclxuICAgIDxpbnB1dFxyXG4gICAgICBtYXRJbnB1dFxyXG4gICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxyXG4gICAgICBbcmVhZG9ubHldPVwiY29udHJvbC5yZWFkT25seVwiXHJcbiAgICAgIFttYXREYXRlcGlja2VyXT1cInBpY2tlclwiXHJcbiAgICAgIFtyZXF1aXJlZF09XCJjb250cm9sLnJlcXVpcmVkXCJcclxuICAgICAgW3BsYWNlaG9sZGVyXT1cImNvbnRyb2wucGxhY2Vob2xkZXJcIlxyXG4gICAgICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiXHJcbiAgICAvPlxyXG4gICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJwaWNrZXJcIj48L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cclxuICAgIDxtYXQtZGF0ZXBpY2tlciAjcGlja2VyIHN0YXJ0Vmlldz1cInllYXJcIiBbc3RhcnRBdF09XCJzdGFydEF0XCI+XHJcbiAgICA8L21hdC1kYXRlcGlja2VyPlxyXG4gICAgPG1hdC1oaW50PlxyXG4gICAgICB7eyBjb250cm9sLnRvb2x0aXAgfX1cclxuICAgIDwvbWF0LWhpbnQ+XHJcbiAgICA8bWF0LWVycm9yPlxyXG4gICAgICB7eyBjb250cm9sLmVycm9ycyB8IGVycm9yTWVzc2FnZTogY29udHJvbC5lcnJvck1lc3NhZ2VzIH19XHJcbiAgICA8L21hdC1lcnJvcj5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG59XHJcbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
;
|
|
2
|
-
export {};
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY2lhbC1kYXRlcGlja2VyLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwZWNpYWwtZm9ybXMvc3JjL2xpYi9jb21wb25lbnRzL3NwZWNpYWwtZGF0ZXBpY2tlci9zcGVjaWFsLWRhdGVwaWNrZXIuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFQ29udHJvbFR5cGVzIH0gZnJvbSAnLi4vLi4vY29yZS9hdXgtZGF0YS9jb250cm9sLXR5cGVzLmVudW0nO1xyXG5pbXBvcnQgeyBJRmllbGREYXRhIH0gZnJvbSAnLi4vLi4vY29yZS9pbnRlcmZhY2VzL2ZpZWxkLWJhc2ljcy5pbnRlcmZhY2VzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSURhdGVQaWNrZXJTZXR0aW5nc3tcclxuICBsb3dlckxpbWl0PzogbnVtYmVyO1xyXG4gIHVwcGVyTGltaXQ/OiBudW1iZXI7XHJcbiAgc3RhcnRBdD86IERhdGU7XHJcbn07XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElEYXRlUGlja2VyRmllbGQgZXh0ZW5kcyBJRmllbGREYXRhIHtcclxuICBzZXR0aW5nczogSURhdGVQaWNrZXJTZXR0aW5ncztcclxuICB0eXBlOiBFQ29udHJvbFR5cGVzLmRhdGU7XHJcbiAgZGVmYXVsdFZhbHVlOiBzdHJpbmc7XHJcbn1cclxuIl19
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Input, } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { MatSelectModule } from '@angular/material/select';
|
|
4
|
-
import { ReactiveFormsModule } from '@angular/forms';
|
|
5
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
6
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
7
|
-
import { ErrorMessagePipe, TextByFunctionPipe, } from '../../core/pipes';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/common";
|
|
10
|
-
import * as i2 from "@angular/material/form-field";
|
|
11
|
-
import * as i3 from "@angular/material/select";
|
|
12
|
-
import * as i4 from "@angular/material/core";
|
|
13
|
-
import * as i5 from "@angular/forms";
|
|
14
|
-
import * as i6 from "@angular/material/icon";
|
|
15
|
-
import * as i7 from "@angular/material/button";
|
|
16
|
-
export class SpecialDropdownComponent {
|
|
17
|
-
get settings() {
|
|
18
|
-
return this.control.settings;
|
|
19
|
-
}
|
|
20
|
-
iconClick(event) {
|
|
21
|
-
if (this.settings.iconAction) {
|
|
22
|
-
this.settings.iconAction(this.control.value);
|
|
23
|
-
event.stopPropagation();
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
optionSelected(value) {
|
|
27
|
-
if (this.settings.onSelect)
|
|
28
|
-
this.settings.onSelect(value);
|
|
29
|
-
}
|
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: SpecialDropdownComponent, isStandalone: true, selector: "sp-dropdown", inputs: { control: "control" }, ngImport: i0, template: "@if (control && !control.hidden) {\r\n <mat-form-field\r\n [id]=\"control.elementId\"\r\n class=\"special-dropdown w-full mb-3 {{ control.styleClasses }}\"\r\n [appearance]=\"control.label ? 'outline' : 'fill'\"\r\n >\r\n @if (control.label) {\r\n <mat-label>\r\n {{ control.label }}\r\n </mat-label>\r\n }\r\n <mat-select\r\n [formControl]=\"control\"\r\n [required]=\"control.required\"\r\n (selectionChange)=\"optionSelected($event.value)\"\r\n [placeholder]=\"control.placeholder\"\r\n >\r\n @if (!control.required) {\r\n <mat-option [value]=\"null\">\r\n {{ control.placeholder || settings.notSelectedText }}\r\n </mat-option>\r\n }\r\n @for (item of settings.source | async; track item[settings.fieldId]) {\r\n <mat-option [value]=\"item[settings.fieldId]\">\r\n {{ item | textByFunction: settings.fieldName }}\r\n </mat-option>\r\n }\r\n </mat-select>\r\n @if (settings.icon) {\r\n <button mat-icon-button matSuffix (click)=\"iconClick($event)\">\r\n <mat-icon>\r\n {{ settings.icon }}\r\n </mat-icon>\r\n </button>\r\n }\r\n @if (control.icon) {\r\n <mat-icon matPrefix>{{ control.icon }}</mat-icon>\r\n }\r\n @if (control.tooltip) {\r\n <mat-hint>{{ control.tooltip }}</mat-hint>\r\n }\r\n <mat-error>\r\n {{ control.errors | errorMessage: control.errorMessages }}\r\n </mat-error>\r\n </mat-form-field>\r\n}\r\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i2.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i3.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i4.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "pipe", type: ErrorMessagePipe, name: "errorMessage" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i7.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "pipe", type: TextByFunctionPipe, name: "textByFunction" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
32
|
-
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialDropdownComponent, decorators: [{
|
|
34
|
-
type: Component,
|
|
35
|
-
args: [{ standalone: true, selector: 'sp-dropdown', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
|
36
|
-
CommonModule,
|
|
37
|
-
MatSelectModule,
|
|
38
|
-
ReactiveFormsModule,
|
|
39
|
-
ErrorMessagePipe,
|
|
40
|
-
MatIconModule,
|
|
41
|
-
MatButtonModule,
|
|
42
|
-
TextByFunctionPipe,
|
|
43
|
-
], template: "@if (control && !control.hidden) {\r\n <mat-form-field\r\n [id]=\"control.elementId\"\r\n class=\"special-dropdown w-full mb-3 {{ control.styleClasses }}\"\r\n [appearance]=\"control.label ? 'outline' : 'fill'\"\r\n >\r\n @if (control.label) {\r\n <mat-label>\r\n {{ control.label }}\r\n </mat-label>\r\n }\r\n <mat-select\r\n [formControl]=\"control\"\r\n [required]=\"control.required\"\r\n (selectionChange)=\"optionSelected($event.value)\"\r\n [placeholder]=\"control.placeholder\"\r\n >\r\n @if (!control.required) {\r\n <mat-option [value]=\"null\">\r\n {{ control.placeholder || settings.notSelectedText }}\r\n </mat-option>\r\n }\r\n @for (item of settings.source | async; track item[settings.fieldId]) {\r\n <mat-option [value]=\"item[settings.fieldId]\">\r\n {{ item | textByFunction: settings.fieldName }}\r\n </mat-option>\r\n }\r\n </mat-select>\r\n @if (settings.icon) {\r\n <button mat-icon-button matSuffix (click)=\"iconClick($event)\">\r\n <mat-icon>\r\n {{ settings.icon }}\r\n </mat-icon>\r\n </button>\r\n }\r\n @if (control.icon) {\r\n <mat-icon matPrefix>{{ control.icon }}</mat-icon>\r\n }\r\n @if (control.tooltip) {\r\n <mat-hint>{{ control.tooltip }}</mat-hint>\r\n }\r\n <mat-error>\r\n {{ control.errors | errorMessage: control.errorMessages }}\r\n </mat-error>\r\n </mat-form-field>\r\n}\r\n", styles: [":host{display:contents}\n"] }]
|
|
44
|
-
}], propDecorators: { control: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY2lhbC1kcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVjaWFsLWZvcm1zL3NyYy9saWIvY29tcG9uZW50cy9zcGVjaWFsLWRyb3Bkb3duL3NwZWNpYWwtZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BlY2lhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvc3BlY2lhbC1kcm9wZG93bi9zcGVjaWFsLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixrQkFBa0IsR0FDbkIsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7Ozs7O0FBaUIxQixNQUFNLE9BQU8sd0JBQXdCO0lBR25DLElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7SUFDL0IsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFZO1FBQ3BCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzdDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRO1lBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUQsQ0FBQzs4R0FoQlUsd0JBQXdCO2tHQUF4Qix3QkFBd0IsdUdDaENyQyxxL0NBOENBLGtGRHZCSSxZQUFZLG1GQUNaLGVBQWUsczNDQUNmLG1CQUFtQixraEJBQ25CLGdCQUFnQixvREFDaEIsYUFBYSxtTEFDYixlQUFlLHVJQUNmLGtCQUFrQjs7MkZBR1Qsd0JBQXdCO2tCQWhCcEMsU0FBUztpQ0FDSSxJQUFJLFlBQ04sYUFBYSxtQkFHTix1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixlQUFlO3dCQUNmLGtCQUFrQjtxQkFDbkI7OEJBR1EsT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNwZWNpYWxGb3JtQ29udHJvbCB9IGZyb20gJy4uLy4uL2NvcmUvZm9ybXMvc3BlY2lhbC1mb3Jtcyc7XHJcbmltcG9ydCB7IElEcm9wZG93bkZpZWxkLCBJRHJvcGRvd25TZXR0aW5ncyB9IGZyb20gJy4vc3BlY2lhbC1kcm9wZG93bi5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7XHJcbiAgRXJyb3JNZXNzYWdlUGlwZSxcclxuICBUZXh0QnlGdW5jdGlvblBpcGUsXHJcbn0gZnJvbSAnLi4vLi4vY29yZS9waXBlcyc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgc2VsZWN0b3I6ICdzcC1kcm9wZG93bicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NwZWNpYWwtZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NwZWNpYWwtZHJvcGRvd24uY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBNYXRTZWxlY3RNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgRXJyb3JNZXNzYWdlUGlwZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXRCdXR0b25Nb2R1bGUsXHJcbiAgICBUZXh0QnlGdW5jdGlvblBpcGUsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNwZWNpYWxEcm9wZG93bkNvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgY29udHJvbCE6IFNwZWNpYWxGb3JtQ29udHJvbDxJRHJvcGRvd25GaWVsZD47XHJcblxyXG4gIGdldCBzZXR0aW5ncygpOiBJRHJvcGRvd25TZXR0aW5ncyB7XHJcbiAgICByZXR1cm4gdGhpcy5jb250cm9sLnNldHRpbmdzO1xyXG4gIH1cclxuXHJcbiAgaWNvbkNsaWNrKGV2ZW50OiBFdmVudCkge1xyXG4gICAgaWYgKHRoaXMuc2V0dGluZ3MuaWNvbkFjdGlvbikge1xyXG4gICAgICB0aGlzLnNldHRpbmdzLmljb25BY3Rpb24odGhpcy5jb250cm9sLnZhbHVlKTtcclxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvcHRpb25TZWxlY3RlZCh2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAodGhpcy5zZXR0aW5ncy5vblNlbGVjdCkgdGhpcy5zZXR0aW5ncy5vblNlbGVjdCh2YWx1ZSk7XHJcbiAgfVxyXG59XHJcbiIsIkBpZiAoY29udHJvbCAmJiAhY29udHJvbC5oaWRkZW4pIHtcclxuICA8bWF0LWZvcm0tZmllbGRcclxuICAgIFtpZF09XCJjb250cm9sLmVsZW1lbnRJZFwiXHJcbiAgICBjbGFzcz1cInNwZWNpYWwtZHJvcGRvd24gdy1mdWxsIG1iLTMge3sgY29udHJvbC5zdHlsZUNsYXNzZXMgfX1cIlxyXG4gICAgW2FwcGVhcmFuY2VdPVwiY29udHJvbC5sYWJlbCA/ICdvdXRsaW5lJyA6ICdmaWxsJ1wiXHJcbiAgPlxyXG4gICAgQGlmIChjb250cm9sLmxhYmVsKSB7XHJcbiAgICAgIDxtYXQtbGFiZWw+XHJcbiAgICAgICAge3sgY29udHJvbC5sYWJlbCB9fVxyXG4gICAgICA8L21hdC1sYWJlbD5cclxuICAgIH1cclxuICAgIDxtYXQtc2VsZWN0XHJcbiAgICAgIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcclxuICAgICAgW3JlcXVpcmVkXT1cImNvbnRyb2wucmVxdWlyZWRcIlxyXG4gICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cIm9wdGlvblNlbGVjdGVkKCRldmVudC52YWx1ZSlcIlxyXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiY29udHJvbC5wbGFjZWhvbGRlclwiXHJcbiAgICA+XHJcbiAgICAgIEBpZiAoIWNvbnRyb2wucmVxdWlyZWQpIHtcclxuICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwibnVsbFwiPlxyXG4gICAgICAgICAge3sgY29udHJvbC5wbGFjZWhvbGRlciB8fCBzZXR0aW5ncy5ub3RTZWxlY3RlZFRleHQgfX1cclxuICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgIH1cclxuICAgICAgQGZvciAoaXRlbSBvZiBzZXR0aW5ncy5zb3VyY2UgfCBhc3luYzsgdHJhY2sgaXRlbVtzZXR0aW5ncy5maWVsZElkXSkge1xyXG4gICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJpdGVtW3NldHRpbmdzLmZpZWxkSWRdXCI+XHJcbiAgICAgICAgICB7eyBpdGVtIHwgdGV4dEJ5RnVuY3Rpb246IHNldHRpbmdzLmZpZWxkTmFtZSB9fVxyXG4gICAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgfVxyXG4gICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgQGlmIChzZXR0aW5ncy5pY29uKSB7XHJcbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIG1hdFN1ZmZpeCAoY2xpY2spPVwiaWNvbkNsaWNrKCRldmVudClcIj5cclxuICAgICAgICA8bWF0LWljb24+XHJcbiAgICAgICAgICB7eyBzZXR0aW5ncy5pY29uIH19XHJcbiAgICAgICAgPC9tYXQtaWNvbj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICB9XHJcbiAgICBAaWYgKGNvbnRyb2wuaWNvbikge1xyXG4gICAgICA8bWF0LWljb24gbWF0UHJlZml4Pnt7IGNvbnRyb2wuaWNvbiB9fTwvbWF0LWljb24+XHJcbiAgICB9XHJcbiAgICBAaWYgKGNvbnRyb2wudG9vbHRpcCkge1xyXG4gICAgICA8bWF0LWhpbnQ+e3sgY29udHJvbC50b29sdGlwIH19PC9tYXQtaGludD5cclxuICAgIH1cclxuICAgIDxtYXQtZXJyb3I+XHJcbiAgICAgIHt7IGNvbnRyb2wuZXJyb3JzIHwgZXJyb3JNZXNzYWdlOiBjb250cm9sLmVycm9yTWVzc2FnZXMgfX1cclxuICAgIDwvbWF0LWVycm9yPlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcbn1cclxuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
;
|
|
2
|
-
export {};
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY2lhbC1kcm9wZG93bi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zcGVjaWFsLWZvcm1zL3NyYy9saWIvY29tcG9uZW50cy9zcGVjaWFsLWRyb3Bkb3duL3NwZWNpYWwtZHJvcGRvd24uaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEVDb250cm9sVHlwZXMgfSBmcm9tICcuLi8uLi9jb3JlL2F1eC1kYXRhL2NvbnRyb2wtdHlwZXMuZW51bSc7XHJcbmltcG9ydCB7IElGaWVsZERhdGEgfSBmcm9tICcuLi8uLi9jb3JlL2ludGVyZmFjZXMvZmllbGQtYmFzaWNzLmludGVyZmFjZXMnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJRHJvcGRvd25TZXR0aW5nc3tcclxuICBpY29uPzogc3RyaW5nO1xyXG4gIG9uU2VsZWN0PzogKGRhdGE6IGFueSkgPT4gdm9pZDtcclxuICBpY29uQWN0aW9uPzogKGRhdGE6IGFueSkgPT4gdm9pZDtcclxuICBzb3VyY2U6IE9ic2VydmFibGU8YW55W10+O1xyXG4gIGZpZWxkSWQ6IHN0cmluZztcclxuICBmaWVsZE5hbWU6IHN0cmluZyB8ICgoYT86IGFueSkgPT4gc3RyaW5nKTtcclxuICBub3RTZWxlY3RlZFRleHQ/OiBzdHJpbmc7XHJcbn07XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElEcm9wZG93bkZpZWxkIGV4dGVuZHMgSUZpZWxkRGF0YSB7XHJcbiAgc2V0dGluZ3M6IElEcm9wZG93blNldHRpbmdzO1xyXG4gIHR5cGU6IEVDb250cm9sVHlwZXMuZHJvcGRvd247XHJcbiAgZGVmYXVsdFZhbHVlOiBzdHJpbmc7XHJcbn1cclxuIl19
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Directive, } from '@angular/core';
|
|
2
|
-
import { Component, Input } from '@angular/core';
|
|
3
|
-
import { EControlTypes } from '../../core/aux-data/control-types.enum';
|
|
4
|
-
import { SpecialAutocompleteComponent } from '../special-autocomplete/special-autocomplete.component';
|
|
5
|
-
import { SpecialCheckboxComponent } from '../special-checkbox/special-checkbox.component';
|
|
6
|
-
import { SpecialDatepickerComponent } from '../special-datepicker/special-datepicker.component';
|
|
7
|
-
import { SpecialDropdownComponent } from '../special-dropdown/special-dropdown.component';
|
|
8
|
-
import { SpecialInputComponent } from '../special-input/special-input.component';
|
|
9
|
-
import { SpecialLabelComponent } from '../special-label/special-label.component';
|
|
10
|
-
import { SpecialMultipleAutocompleteComponent } from '../special-multiple-autocomplete/special-multiple-autocomplete.component';
|
|
11
|
-
import { SpecialRichtextComponent } from '../special-richtext/special-richtext.component';
|
|
12
|
-
import { SpecialTextAreaComponent } from '../special-text-area/special-text-area.component';
|
|
13
|
-
import { SpecialUploadComponent } from '../special-upload/special-upload.component';
|
|
14
|
-
import * as i0 from "@angular/core";
|
|
15
|
-
import * as i1 from "../../core/pipes/controls-list-pipe/controls-list.pipe";
|
|
16
|
-
import * as i2 from "@angular/common";
|
|
17
|
-
import * as i3 from "@angular/material/button";
|
|
18
|
-
export class SpecialFormComponent {
|
|
19
|
-
set control(form) {
|
|
20
|
-
this.form = form;
|
|
21
|
-
}
|
|
22
|
-
ngOnInit() { }
|
|
23
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
24
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: SpecialFormComponent, selector: "sp-form", inputs: { form: ["control", "form"] }, ngImport: i0, template: "@if (form && !form.hidden) {\r\n <div\r\n [id]=\"form.elementId\"\r\n class=\"special-form w-full box-border p-2 {{ form.styleClasses }}\"\r\n >\r\n @if (form) {\r\n <div\r\n [class]=\"\r\n form.label\r\n ? 'w-full mt-2 p-3 border-slate-200 border border-solid box-border'\r\n : 'container'\r\n \"\r\n >\r\n @if (form.label) {\r\n <h1 class=\"font-bold py-3\">{{ form.label }}</h1>\r\n }\r\n <div class=\"w-full flex flex-wrap\">\r\n @for (control of form.controls | controlsList; track control.name) {\r\n <ng-template controlRender [control]=\"control\"></ng-template>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n}\r\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(() => FormControlsRenderDirective), selector: "[controlRender]", inputs: ["control"] }, { kind: "pipe", type: i0.forwardRef(() => i1.FormControlsListPipe), name: "controlsList" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
25
|
-
}
|
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialFormComponent, decorators: [{
|
|
27
|
-
type: Component,
|
|
28
|
-
args: [{ selector: 'sp-form', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (form && !form.hidden) {\r\n <div\r\n [id]=\"form.elementId\"\r\n class=\"special-form w-full box-border p-2 {{ form.styleClasses }}\"\r\n >\r\n @if (form) {\r\n <div\r\n [class]=\"\r\n form.label\r\n ? 'w-full mt-2 p-3 border-slate-200 border border-solid box-border'\r\n : 'container'\r\n \"\r\n >\r\n @if (form.label) {\r\n <h1 class=\"font-bold py-3\">{{ form.label }}</h1>\r\n }\r\n <div class=\"w-full flex flex-wrap\">\r\n @for (control of form.controls | controlsList; track control.name) {\r\n <ng-template controlRender [control]=\"control\"></ng-template>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n}\r\n", styles: [":host{display:contents}\n"] }]
|
|
29
|
-
}], propDecorators: { form: [{
|
|
30
|
-
type: Input,
|
|
31
|
-
args: ['control']
|
|
32
|
-
}] } });
|
|
33
|
-
export class SpecialArrayComponent {
|
|
34
|
-
set control(formArray) {
|
|
35
|
-
this.formArray = formArray;
|
|
36
|
-
}
|
|
37
|
-
get withFormHeader() {
|
|
38
|
-
return this.formArray.settings.withFormHeader;
|
|
39
|
-
}
|
|
40
|
-
get settings() {
|
|
41
|
-
return this.formArray.settings;
|
|
42
|
-
}
|
|
43
|
-
constructor() { }
|
|
44
|
-
ngOnInit() { }
|
|
45
|
-
removeItem(index) {
|
|
46
|
-
this.formArray.removeAt(index);
|
|
47
|
-
}
|
|
48
|
-
addItem() {
|
|
49
|
-
this.formArray.addItem();
|
|
50
|
-
}
|
|
51
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialArrayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
52
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: SpecialArrayComponent, selector: "sp-array", inputs: { formArray: ["control", "formArray"] }, ngImport: i0, template: "@if (formArray && !formArray.hidden) {\r\n <div\r\n [id]=\"formArray.elementId\"\r\n class=\"special-form-array w-full box-border p-2 {{\r\n formArray.styleClasses\r\n }}\"\r\n >\r\n <div\r\n class=\"w-full mt-2 p-3 border-slate-200 border border-solid box-border\"\r\n >\r\n @if (formArray.label) {\r\n <h1 class=\"font-bold py-3\">\r\n {{ formArray.label }}\r\n </h1>\r\n }\r\n <div class=\"divide-y divide-x-0 divide-solid divide-slate-200\">\r\n @if (formArray.form) {\r\n <div\r\n [ngClass]=\"{ 'md:grid-cols-15': settings.withActionButtons }\"\r\n class=\"grid gap-4 grid-cols-12\"\r\n >\r\n @if (!withFormHeader) {\r\n @for (\r\n item of formArray.form.controls | controlsList;\r\n track item.name\r\n ) {\r\n <h2 [class]=\"item.styleClasses\">\r\n {{ item.label }}\r\n </h2>\r\n }\r\n @if (settings.withActionButtons) {\r\n <div\r\n class=\"col-start-7 col-end-13 md:col-start-13 md:col-end-16 pb-5 my-auto ml-auto md:m-auto\"\r\n ></div>\r\n }\r\n } @else {\r\n @for (\r\n item of formArray.form.controls | controlsList;\r\n track item.name\r\n ) {\r\n <ng-template controlRender [control]=\"item\"></ng-template>\r\n }\r\n @if (settings.withActionButtons) {\r\n <div\r\n class=\"col-start-7 col-end-13 md:col-start-13 md:col-end-16 pb-5 my-auto ml-auto md:m-auto\"\r\n >\r\n <button\r\n mat-flat-button\r\n color=\"primary\"\r\n [disabled]=\"formArray.form.invalid\"\r\n (click)=\"addItem()\"\r\n >\r\n {{ settings.addActionLabel || \"Add\" }}\r\n </button>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n @for (\r\n formGroup of formArray.controls;\r\n track formGroup.name;\r\n let i = $index\r\n ) {\r\n <div class=\"w-full pt-5 grid gap-4 grid-cols-12 md:grid-cols-15\">\r\n @for (item of formGroup.controls | controlsList; track item.name) {\r\n <ng-template controlRender [control]=\"item\"></ng-template>\r\n }\r\n <div\r\n class=\"col-start-7 col-end-13 md:col-start-13 md:col-end-16 pb-5 my-auto ml-auto md:m-auto\"\r\n >\r\n <button mat-flat-button color=\"warn\" (click)=\"removeItem(i)\">\r\n {{ settings.removeActionLabel || \"Remove\" }}\r\n </button>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n}\r\n", styles: [":host{display:contents}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(() => i2.NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i0.forwardRef(() => i3.MatButton), selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i0.forwardRef(() => FormControlsRenderDirective), selector: "[controlRender]", inputs: ["control"] }, { kind: "pipe", type: i0.forwardRef(() => i1.FormControlsListPipe), name: "controlsList" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
53
|
-
}
|
|
54
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: SpecialArrayComponent, decorators: [{
|
|
55
|
-
type: Component,
|
|
56
|
-
args: [{ selector: 'sp-array', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (formArray && !formArray.hidden) {\r\n <div\r\n [id]=\"formArray.elementId\"\r\n class=\"special-form-array w-full box-border p-2 {{\r\n formArray.styleClasses\r\n }}\"\r\n >\r\n <div\r\n class=\"w-full mt-2 p-3 border-slate-200 border border-solid box-border\"\r\n >\r\n @if (formArray.label) {\r\n <h1 class=\"font-bold py-3\">\r\n {{ formArray.label }}\r\n </h1>\r\n }\r\n <div class=\"divide-y divide-x-0 divide-solid divide-slate-200\">\r\n @if (formArray.form) {\r\n <div\r\n [ngClass]=\"{ 'md:grid-cols-15': settings.withActionButtons }\"\r\n class=\"grid gap-4 grid-cols-12\"\r\n >\r\n @if (!withFormHeader) {\r\n @for (\r\n item of formArray.form.controls | controlsList;\r\n track item.name\r\n ) {\r\n <h2 [class]=\"item.styleClasses\">\r\n {{ item.label }}\r\n </h2>\r\n }\r\n @if (settings.withActionButtons) {\r\n <div\r\n class=\"col-start-7 col-end-13 md:col-start-13 md:col-end-16 pb-5 my-auto ml-auto md:m-auto\"\r\n ></div>\r\n }\r\n } @else {\r\n @for (\r\n item of formArray.form.controls | controlsList;\r\n track item.name\r\n ) {\r\n <ng-template controlRender [control]=\"item\"></ng-template>\r\n }\r\n @if (settings.withActionButtons) {\r\n <div\r\n class=\"col-start-7 col-end-13 md:col-start-13 md:col-end-16 pb-5 my-auto ml-auto md:m-auto\"\r\n >\r\n <button\r\n mat-flat-button\r\n color=\"primary\"\r\n [disabled]=\"formArray.form.invalid\"\r\n (click)=\"addItem()\"\r\n >\r\n {{ settings.addActionLabel || \"Add\" }}\r\n </button>\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n @for (\r\n formGroup of formArray.controls;\r\n track formGroup.name;\r\n let i = $index\r\n ) {\r\n <div class=\"w-full pt-5 grid gap-4 grid-cols-12 md:grid-cols-15\">\r\n @for (item of formGroup.controls | controlsList; track item.name) {\r\n <ng-template controlRender [control]=\"item\"></ng-template>\r\n }\r\n <div\r\n class=\"col-start-7 col-end-13 md:col-start-13 md:col-end-16 pb-5 my-auto ml-auto md:m-auto\"\r\n >\r\n <button mat-flat-button color=\"warn\" (click)=\"removeItem(i)\">\r\n {{ settings.removeActionLabel || \"Remove\" }}\r\n </button>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n}\r\n", styles: [":host{display:contents}\n"] }]
|
|
57
|
-
}], ctorParameters: () => [], propDecorators: { formArray: [{
|
|
58
|
-
type: Input,
|
|
59
|
-
args: ['control']
|
|
60
|
-
}] } });
|
|
61
|
-
export class FormControlsRenderDirective {
|
|
62
|
-
set controlSetter(control) {
|
|
63
|
-
this.viewContainer.clear();
|
|
64
|
-
const component = this.componentsBuffer[control.type];
|
|
65
|
-
if (component) {
|
|
66
|
-
const componentRef = this.viewContainer.createComponent(component);
|
|
67
|
-
componentRef.instance.control = control;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
constructor(viewContainer) {
|
|
71
|
-
this.viewContainer = viewContainer;
|
|
72
|
-
this.componentsBuffer = {
|
|
73
|
-
[EControlTypes.autocomplete]: SpecialAutocompleteComponent,
|
|
74
|
-
[EControlTypes.checkbox]: SpecialCheckboxComponent,
|
|
75
|
-
[EControlTypes.date]: SpecialDatepickerComponent,
|
|
76
|
-
[EControlTypes.dropdown]: SpecialDropdownComponent,
|
|
77
|
-
[EControlTypes.array]: SpecialArrayComponent,
|
|
78
|
-
[EControlTypes.input]: SpecialInputComponent,
|
|
79
|
-
[EControlTypes.multiple]: SpecialMultipleAutocompleteComponent,
|
|
80
|
-
[EControlTypes.textArea]: SpecialTextAreaComponent,
|
|
81
|
-
[EControlTypes.label]: SpecialLabelComponent,
|
|
82
|
-
[EControlTypes.upload]: SpecialUploadComponent,
|
|
83
|
-
[EControlTypes.form]: SpecialFormComponent,
|
|
84
|
-
[EControlTypes.richText]: SpecialRichtextComponent,
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FormControlsRenderDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
88
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.0", type: FormControlsRenderDirective, selector: "[controlRender]", inputs: { controlSetter: ["control", "controlSetter"] }, ngImport: i0 }); }
|
|
89
|
-
}
|
|
90
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: FormControlsRenderDirective, decorators: [{
|
|
91
|
-
type: Directive,
|
|
92
|
-
args: [{
|
|
93
|
-
selector: `[controlRender]`,
|
|
94
|
-
}]
|
|
95
|
-
}], ctorParameters: () => [{ type: i0.ViewContainerRef }], propDecorators: { controlSetter: [{
|
|
96
|
-
type: Input,
|
|
97
|
-
args: ['control']
|
|
98
|
-
}] } });
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlY2lhbC1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwZWNpYWwtZm9ybXMvc3JjL2xpYi9jb21wb25lbnRzL3NwZWNpYWwtZm9ybS9zcGVjaWFsLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc3BlY2lhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvc3BlY2lhbC1mb3JtL3NwZWNpYWwtZm9ybS5jb21wb25lbnQuaHRtbCIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NwZWNpYWwtZm9ybXMvc3JjL2xpYi9jb21wb25lbnRzL3NwZWNpYWwtZm9ybS9zcGVjaWFsLWZvcm0tYXJyYXkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBTXZFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBQ2hJLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzVGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOzs7OztBQVFwRixNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLElBQUksT0FBTyxDQUFDLElBQXNCO1FBQ2hDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFDRCxRQUFRLEtBQVUsQ0FBQzs4R0FMUixvQkFBb0I7a0dBQXBCLG9CQUFvQixzRkM3QmpDLCt2QkF5QkEsdUdEZ0RhLDJCQUEyQjs7MkZBNUMzQixvQkFBb0I7a0JBTmhDLFNBQVM7K0JBQ0UsU0FBUyxtQkFHRix1QkFBdUIsQ0FBQyxNQUFNOzhCQUc3QixJQUFJO3NCQUFyQixLQUFLO3VCQUFDLFNBQVM7O0FBYWxCLE1BQU0sT0FBTyxxQkFBcUI7SUFHaEMsSUFBSSxPQUFPLENBQUMsU0FBYztRQUN4QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDO0lBQ2hELENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxnQkFBZSxDQUFDO0lBRWhCLFFBQVEsS0FBSSxDQUFDO0lBRWIsVUFBVSxDQUFDLEtBQWE7UUFDdEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUNELE9BQU87UUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzNCLENBQUM7OEdBeEJVLHFCQUFxQjtrR0FBckIscUJBQXFCLGlHRTNDbEMsZzhGQWlGQSw0YUZSYSwyQkFBMkI7OzJGQTlCM0IscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLFVBQVUsbUJBR0gsdUJBQXVCLENBQUMsTUFBTTt3REFHN0IsU0FBUztzQkFBMUIsS0FBSzt1QkFBQyxTQUFTOztBQTZCbEIsTUFBTSxPQUFPLDJCQUEyQjtJQWV0QyxJQUFzQixhQUFhLENBQUMsT0FBZ0M7UUFDbEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixNQUFNLFNBQVMsR0FBSSxJQUFJLENBQUMsZ0JBQXdCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9ELElBQUksU0FBUyxFQUFFLENBQUM7WUFDZCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNsRSxZQUFZLENBQUMsUUFBZ0IsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ25ELENBQUM7SUFDSCxDQUFDO0lBRUQsWUFBb0IsYUFBK0I7UUFBL0Isa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBdkJsQyxxQkFBZ0IsR0FBRztZQUNsQyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsRUFBRSw0QkFBNEI7WUFDMUQsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLEVBQUUsd0JBQXdCO1lBQ2xELENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLDBCQUEwQjtZQUNoRCxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsRUFBRSx3QkFBd0I7WUFDbEQsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUscUJBQXFCO1lBQzVDLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFLHFCQUFxQjtZQUM1QyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsRUFBRSxvQ0FBb0M7WUFDOUQsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLEVBQUUsd0JBQXdCO1lBQ2xELENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFLHFCQUFxQjtZQUM1QyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsRUFBRSxzQkFBc0I7WUFDOUMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsb0JBQW9CO1lBQzFDLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxFQUFFLHdCQUF3QjtTQUNuRCxDQUFDO0lBVW9ELENBQUM7OEdBeEI1QywyQkFBMkI7a0dBQTNCLDJCQUEyQjs7MkZBQTNCLDJCQUEyQjtrQkFIdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2lCQUM1QjtxRkFnQnVCLGFBQWE7c0JBQWxDLEtBQUs7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgRGlyZWN0aXZlLFxyXG4gIFZpZXdDb250YWluZXJSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBFQ29udHJvbFR5cGVzIH0gZnJvbSAnLi4vLi4vY29yZS9hdXgtZGF0YS9jb250cm9sLXR5cGVzLmVudW0nO1xyXG5pbXBvcnQge1xyXG4gIFNwZWNpYWxGb3JtR3JvdXAsXHJcbiAgU3BlY2lhbEZvcm1Db250cm9sLFxyXG4gIFNwZWNpYWxGb3JtQXJyYXlcclxufSBmcm9tICcuLi8uLi9jb3JlL2Zvcm1zL3NwZWNpYWwtZm9ybXMnO1xyXG5pbXBvcnQgeyBTcGVjaWFsQXV0b2NvbXBsZXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vc3BlY2lhbC1hdXRvY29tcGxldGUvc3BlY2lhbC1hdXRvY29tcGxldGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3BlY2lhbENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi4vc3BlY2lhbC1jaGVja2JveC9zcGVjaWFsLWNoZWNrYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNwZWNpYWxEYXRlcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vc3BlY2lhbC1kYXRlcGlja2VyL3NwZWNpYWwtZGF0ZXBpY2tlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTcGVjaWFsRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi9zcGVjaWFsLWRyb3Bkb3duL3NwZWNpYWwtZHJvcGRvd24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3BlY2lhbElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vc3BlY2lhbC1pbnB1dC9zcGVjaWFsLWlucHV0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNwZWNpYWxMYWJlbENvbXBvbmVudCB9IGZyb20gJy4uL3NwZWNpYWwtbGFiZWwvc3BlY2lhbC1sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTcGVjaWFsTXVsdGlwbGVBdXRvY29tcGxldGVDb21wb25lbnQgfSBmcm9tICcuLi9zcGVjaWFsLW11bHRpcGxlLWF1dG9jb21wbGV0ZS9zcGVjaWFsLW11bHRpcGxlLWF1dG9jb21wbGV0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTcGVjaWFsUmljaHRleHRDb21wb25lbnQgfSBmcm9tICcuLi9zcGVjaWFsLXJpY2h0ZXh0L3NwZWNpYWwtcmljaHRleHQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3BlY2lhbFRleHRBcmVhQ29tcG9uZW50IH0gZnJvbSAnLi4vc3BlY2lhbC10ZXh0LWFyZWEvc3BlY2lhbC10ZXh0LWFyZWEuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3BlY2lhbFVwbG9hZENvbXBvbmVudCB9IGZyb20gJy4uL3NwZWNpYWwtdXBsb2FkL3NwZWNpYWwtdXBsb2FkLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NwLWZvcm0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zcGVjaWFsLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NwZWNpYWwtZm9ybS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3BlY2lhbEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgnY29udHJvbCcpIGZvcm06IFNwZWNpYWxGb3JtR3JvdXA7XHJcbiAgc2V0IGNvbnRyb2woZm9ybTogU3BlY2lhbEZvcm1Hcm91cCkge1xyXG4gICAgdGhpcy5mb3JtID0gZm9ybTtcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7fVxyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NwLWFycmF5JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3BlY2lhbC1mb3JtLWFycmF5LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zcGVjaWFsLWZvcm0tYXJyYXkuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNwZWNpYWxBcnJheUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCdjb250cm9sJykgZm9ybUFycmF5OiBhbnk7XHJcblxyXG4gIHNldCBjb250cm9sKGZvcm1BcnJheTogYW55KSB7XHJcbiAgICB0aGlzLmZvcm1BcnJheSA9IGZvcm1BcnJheTtcclxuICB9XHJcblxyXG4gIGdldCB3aXRoRm9ybUhlYWRlcigpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1BcnJheS5zZXR0aW5ncy53aXRoRm9ybUhlYWRlcjtcclxuICB9XHJcblxyXG4gIGdldCBzZXR0aW5ncygpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1BcnJheS5zZXR0aW5ncztcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7fVxyXG5cclxuICByZW1vdmVJdGVtKGluZGV4OiBudW1iZXIpIHtcclxuICAgIHRoaXMuZm9ybUFycmF5LnJlbW92ZUF0KGluZGV4KTtcclxuICB9XHJcbiAgYWRkSXRlbSgpIHtcclxuICAgIHRoaXMuZm9ybUFycmF5LmFkZEl0ZW0oKTtcclxuICB9XHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiBgW2NvbnRyb2xSZW5kZXJdYCxcclxufSlcclxuZXhwb3J0IGNsYXNzIEZvcm1Db250cm9sc1JlbmRlckRpcmVjdGl2ZSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBjb21wb25lbnRzQnVmZmVyID0ge1xyXG4gICAgW0VDb250cm9sVHlwZXMuYXV0b2NvbXBsZXRlXTogU3BlY2lhbEF1dG9jb21wbGV0ZUNvbXBvbmVudCxcclxuICAgIFtFQ29udHJvbFR5cGVzLmNoZWNrYm94XTogU3BlY2lhbENoZWNrYm94Q29tcG9uZW50LFxyXG4gICAgW0VDb250cm9sVHlwZXMuZGF0ZV06IFNwZWNpYWxEYXRlcGlja2VyQ29tcG9uZW50LFxyXG4gICAgW0VDb250cm9sVHlwZXMuZHJvcGRvd25dOiBTcGVjaWFsRHJvcGRvd25Db21wb25lbnQsXHJcbiAgICBbRUNvbnRyb2xUeXBlcy5hcnJheV06IFNwZWNpYWxBcnJheUNvbXBvbmVudCxcclxuICAgIFtFQ29udHJvbFR5cGVzLmlucHV0XTogU3BlY2lhbElucHV0Q29tcG9uZW50LFxyXG4gICAgW0VDb250cm9sVHlwZXMubXVsdGlwbGVdOiBTcGVjaWFsTXVsdGlwbGVBdXRvY29tcGxldGVDb21wb25lbnQsXHJcbiAgICBbRUNvbnRyb2xUeXBlcy50ZXh0QXJlYV06IFNwZWNpYWxUZXh0QXJlYUNvbXBvbmVudCxcclxuICAgIFtFQ29udHJvbFR5cGVzLmxhYmVsXTogU3BlY2lhbExhYmVsQ29tcG9uZW50LFxyXG4gICAgW0VDb250cm9sVHlwZXMudXBsb2FkXTogU3BlY2lhbFVwbG9hZENvbXBvbmVudCxcclxuICAgIFtFQ29udHJvbFR5cGVzLmZvcm1dOiBTcGVjaWFsRm9ybUNvbXBvbmVudCxcclxuICAgIFtFQ29udHJvbFR5cGVzLnJpY2hUZXh0XTogU3BlY2lhbFJpY2h0ZXh0Q29tcG9uZW50LFxyXG4gIH07XHJcbiAgQElucHV0KCdjb250cm9sJykgc2V0IGNvbnRyb2xTZXR0ZXIoY29udHJvbDogU3BlY2lhbEZvcm1Db250cm9sPGFueT4pIHtcclxuICAgIHRoaXMudmlld0NvbnRhaW5lci5jbGVhcigpO1xyXG4gICAgY29uc3QgY29tcG9uZW50ID0gKHRoaXMuY29tcG9uZW50c0J1ZmZlciBhcyBhbnkpW2NvbnRyb2wudHlwZV07XHJcbiAgICBpZiAoY29tcG9uZW50KSB7XHJcbiAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoY29tcG9uZW50KTtcclxuICAgICAgKGNvbXBvbmVudFJlZi5pbnN0YW5jZSBhcyBhbnkpLmNvbnRyb2wgPSBjb250cm9sO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSB2aWV3Q29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmKSB7fVxyXG59XHJcbiIsIkBpZiAoZm9ybSAmJiAhZm9ybS5oaWRkZW4pIHtcclxuICA8ZGl2XHJcbiAgICBbaWRdPVwiZm9ybS5lbGVtZW50SWRcIlxyXG4gICAgY2xhc3M9XCJzcGVjaWFsLWZvcm0gdy1mdWxsIGJveC1ib3JkZXIgcC0yIHt7IGZvcm0uc3R5bGVDbGFzc2VzIH19XCJcclxuICA+XHJcbiAgICBAaWYgKGZvcm0pIHtcclxuICAgICAgPGRpdlxyXG4gICAgICAgIFtjbGFzc109XCJcclxuICAgICAgICAgIGZvcm0ubGFiZWxcclxuICAgICAgICAgICAgPyAndy1mdWxsIG10LTIgcC0zIGJvcmRlci1zbGF0ZS0yMDAgYm9yZGVyIGJvcmRlci1zb2xpZCBib3gtYm9yZGVyJ1xyXG4gICAgICAgICAgICA6ICdjb250YWluZXInXHJcbiAgICAgICAgXCJcclxuICAgICAgPlxyXG4gICAgICAgIEBpZiAoZm9ybS5sYWJlbCkge1xyXG4gICAgICAgICAgPGgxIGNsYXNzPVwiZm9udC1ib2xkIHB5LTNcIj57eyBmb3JtLmxhYmVsIH19PC9oMT5cclxuICAgICAgICB9XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInctZnVsbCBmbGV4IGZsZXgtd3JhcFwiPlxyXG4gICAgICAgICAgQGZvciAoY29udHJvbCBvZiBmb3JtLmNvbnRyb2xzIHwgY29udHJvbHNMaXN0OyB0cmFjayBjb250cm9sLm5hbWUpIHtcclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIGNvbnRyb2xSZW5kZXIgW2NvbnRyb2xdPVwiY29udHJvbFwiPjwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgfVxyXG4gIDwvZGl2PlxyXG59XHJcbiIsIkBpZiAoZm9ybUFycmF5ICYmICFmb3JtQXJyYXkuaGlkZGVuKSB7XHJcbiAgPGRpdlxyXG4gICAgW2lkXT1cImZvcm1BcnJheS5lbGVtZW50SWRcIlxyXG4gICAgY2xhc3M9XCJzcGVjaWFsLWZvcm0tYXJyYXkgdy1mdWxsIGJveC1ib3JkZXIgcC0yIHt7XHJcbiAgICAgIGZvcm1BcnJheS5zdHlsZUNsYXNzZXNcclxuICAgIH19XCJcclxuICA+XHJcbiAgICA8ZGl2XHJcbiAgICAgIGNsYXNzPVwidy1mdWxsIG10LTIgcC0zIGJvcmRlci1zbGF0ZS0yMDAgYm9yZGVyIGJvcmRlci1zb2xpZCBib3gtYm9yZGVyXCJcclxuICAgID5cclxuICAgICAgQGlmIChmb3JtQXJyYXkubGFiZWwpIHtcclxuICAgICAgICA8aDEgY2xhc3M9XCJmb250LWJvbGQgcHktM1wiPlxyXG4gICAgICAgICAge3sgZm9ybUFycmF5LmxhYmVsIH19XHJcbiAgICAgICAgPC9oMT5cclxuICAgICAgfVxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlLXkgZGl2aWRlLXgtMCBkaXZpZGUtc29saWQgZGl2aWRlLXNsYXRlLTIwMFwiPlxyXG4gICAgICAgIEBpZiAoZm9ybUFycmF5LmZvcm0pIHtcclxuICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgW25nQ2xhc3NdPVwieyAnbWQ6Z3JpZC1jb2xzLTE1Jzogc2V0dGluZ3Mud2l0aEFjdGlvbkJ1dHRvbnMgfVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiZ3JpZCBnYXAtNCBncmlkLWNvbHMtMTJcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICBAaWYgKCF3aXRoRm9ybUhlYWRlcikge1xyXG4gICAgICAgICAgICAgIEBmb3IgKFxyXG4gICAgICAgICAgICAgICAgaXRlbSBvZiBmb3JtQXJyYXkuZm9ybS5jb250cm9scyB8IGNvbnRyb2xzTGlzdDtcclxuICAgICAgICAgICAgICAgIHRyYWNrIGl0ZW0ubmFtZVxyXG4gICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgPGgyIFtjbGFzc109XCJpdGVtLnN0eWxlQ2xhc3Nlc1wiPlxyXG4gICAgICAgICAgICAgICAgICB7eyBpdGVtLmxhYmVsIH19XHJcbiAgICAgICAgICAgICAgICA8L2gyPlxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBAaWYgKHNldHRpbmdzLndpdGhBY3Rpb25CdXR0b25zKSB7XHJcbiAgICAgICAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY29sLXN0YXJ0LTcgY29sLWVuZC0xMyBtZDpjb2wtc3RhcnQtMTMgbWQ6Y29sLWVuZC0xNiBwYi01IG15LWF1dG8gbWwtYXV0byBtZDptLWF1dG9cIlxyXG4gICAgICAgICAgICAgICAgPjwvZGl2PlxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICAgICAgQGZvciAoXHJcbiAgICAgICAgICAgICAgICBpdGVtIG9mIGZvcm1BcnJheS5mb3JtLmNvbnRyb2xzIHwgY29udHJvbHNMaXN0O1xyXG4gICAgICAgICAgICAgICAgdHJhY2sgaXRlbS5uYW1lXHJcbiAgICAgICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgY29udHJvbFJlbmRlciBbY29udHJvbF09XCJpdGVtXCI+PC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgQGlmIChzZXR0aW5ncy53aXRoQWN0aW9uQnV0dG9ucykge1xyXG4gICAgICAgICAgICAgICAgPGRpdlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImNvbC1zdGFydC03IGNvbC1lbmQtMTMgbWQ6Y29sLXN0YXJ0LTEzIG1kOmNvbC1lbmQtMTYgcGItNSBteS1hdXRvIG1sLWF1dG8gbWQ6bS1hdXRvXCJcclxuICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgIG1hdC1mbGF0LWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yPVwicHJpbWFyeVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZvcm1BcnJheS5mb3JtLmludmFsaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJhZGRJdGVtKClcIlxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAge3sgc2V0dGluZ3MuYWRkQWN0aW9uTGFiZWwgfHwgXCJBZGRcIiB9fVxyXG4gICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBmb3IgKFxyXG4gICAgICAgICAgZm9ybUdyb3VwIG9mIGZvcm1BcnJheS5jb250cm9scztcclxuICAgICAgICAgIHRyYWNrIGZvcm1Hcm91cC5uYW1lO1xyXG4gICAgICAgICAgbGV0IGkgPSAkaW5kZXhcclxuICAgICAgICApIHtcclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LWZ1bGwgcHQtNSBncmlkIGdhcC00IGdyaWQtY29scy0xMiBtZDpncmlkLWNvbHMtMTVcIj5cclxuICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBmb3JtR3JvdXAuY29udHJvbHMgfCBjb250cm9sc0xpc3Q7IHRyYWNrIGl0ZW0ubmFtZSkge1xyXG4gICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBjb250cm9sUmVuZGVyIFtjb250cm9sXT1cIml0ZW1cIj48L25nLXRlbXBsYXRlPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICBjbGFzcz1cImNvbC1zdGFydC03IGNvbC1lbmQtMTMgbWQ6Y29sLXN0YXJ0LTEzIG1kOmNvbC1lbmQtMTYgcGItNSBteS1hdXRvIG1sLWF1dG8gbWQ6bS1hdXRvXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgIDxidXR0b24gbWF0LWZsYXQtYnV0dG9uIGNvbG9yPVwid2FyblwiIChjbGljayk9XCJyZW1vdmVJdGVtKGkpXCI+XHJcbiAgICAgICAgICAgICAgICB7eyBzZXR0aW5ncy5yZW1vdmVBY3Rpb25MYWJlbCB8fCBcIlJlbW92ZVwiIH19XHJcbiAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG59XHJcbiJdfQ==
|