ng-prime-tools 1.0.5 → 1.0.6
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 +276 -0
- package/esm2022/lib/enums/button-color.enum.mjs +10 -0
- package/esm2022/lib/enums/form-input-type.enum.mjs +14 -0
- package/esm2022/lib/enums/index.mjs +2 -6
- package/esm2022/lib/enums/input-validation.enum.mjs +8 -0
- package/esm2022/lib/enums/public-api.mjs +7 -0
- package/esm2022/lib/enums/{search-criteria-type-enum.mjs → search-criteria-type.enum.mjs} +1 -1
- package/esm2022/lib/enums/{table-type-enum.mjs → table-type.enum.mjs} +1 -1
- package/esm2022/lib/models/filter-option.model.mjs +2 -0
- package/esm2022/lib/models/form-button.model.mjs +2 -0
- package/esm2022/lib/models/form-check-field.model.mjs +2 -0
- package/esm2022/lib/models/form-date-field.model.mjs +2 -0
- package/esm2022/lib/models/form-drop-down-field.model.mjs +2 -0
- package/esm2022/lib/models/form-field-group.model.mjs +2 -0
- package/esm2022/lib/models/form-field.model.mjs +2 -0
- package/esm2022/lib/models/form-multi-select.model.mjs +2 -0
- package/esm2022/lib/models/form-number-field.model.mjs +2 -0
- package/esm2022/lib/models/form-switch-field.model.mjs +2 -0
- package/esm2022/lib/models/form-text-area-field.model.mjs +2 -0
- package/esm2022/lib/models/form-text-field.model.mjs +2 -0
- package/esm2022/lib/models/index.mjs +2 -2
- package/esm2022/lib/models/public-api.mjs +15 -0
- package/esm2022/lib/models/search-criteria.model.mjs +2 -0
- package/esm2022/lib/models/table-column.model.mjs +2 -0
- package/esm2022/lib/multi-search-criteria/multi-search-criteria.component.mjs +1 -1
- package/esm2022/lib/ng-prime-tools.module.mjs +66 -6
- package/esm2022/lib/pt-check-box-input/index.mjs +2 -0
- package/esm2022/lib/pt-check-box-input/pt-check-box-input.component.mjs +61 -0
- package/esm2022/lib/pt-check-box-input/pt-check-box-input.module.mjs +20 -0
- package/esm2022/lib/pt-check-box-input/public-api.mjs +3 -0
- package/esm2022/lib/pt-date-input/index.mjs +2 -0
- package/esm2022/lib/pt-date-input/pt-date-input.component.mjs +85 -0
- package/esm2022/lib/pt-date-input/pt-date-input.module.mjs +20 -0
- package/esm2022/lib/pt-date-input/pt-date.service.mjs +62 -0
- package/esm2022/lib/pt-date-input/public-api.mjs +3 -0
- package/esm2022/lib/pt-dropdown/index.mjs +2 -0
- package/esm2022/lib/pt-dropdown/pt-dropdown.component.mjs +57 -0
- package/esm2022/lib/pt-dropdown/pt-dropdown.module.mjs +20 -0
- package/esm2022/lib/pt-dropdown/public-api.mjs +3 -0
- package/esm2022/lib/pt-form-builder/index.mjs +2 -0
- package/esm2022/lib/pt-form-builder/pt-dynamic-form-field/pt-dynamic-form-field-module.mjs +59 -0
- package/esm2022/lib/pt-form-builder/pt-dynamic-form-field/pt-dynamic-form-field.component.mjs +55 -0
- package/esm2022/lib/pt-form-builder/pt-form-builder.component.mjs +77 -0
- package/esm2022/lib/pt-form-builder/pt-form-builder.module.mjs +32 -0
- package/esm2022/lib/pt-form-builder/public-api.mjs +3 -0
- package/esm2022/lib/pt-multi-select/index.mjs +2 -0
- package/esm2022/lib/pt-multi-select/pt-multi-select.component.mjs +57 -0
- package/esm2022/lib/pt-multi-select/pt-multi-select.module.mjs +20 -0
- package/esm2022/lib/pt-multi-select/public-api.mjs +3 -0
- package/esm2022/lib/pt-number-input/index.mjs +2 -0
- package/esm2022/lib/pt-number-input/pt-number-input.component.mjs +88 -0
- package/esm2022/lib/pt-number-input/pt-number-input.module.mjs +43 -0
- package/esm2022/lib/pt-number-input/public-api.mjs +3 -0
- package/esm2022/lib/pt-switch-input/index.mjs +2 -0
- package/esm2022/lib/pt-switch-input/pt-switch-input.component.mjs +62 -0
- package/esm2022/lib/pt-switch-input/pt-switch-input.module.mjs +20 -0
- package/esm2022/lib/pt-switch-input/public-api.mjs +3 -0
- package/esm2022/lib/pt-text-area-input/index.mjs +2 -0
- package/esm2022/lib/pt-text-area-input/pt-text-area-input.component.mjs +83 -0
- package/esm2022/lib/pt-text-area-input/pt-text-area-input.module.mjs +36 -0
- package/esm2022/lib/pt-text-area-input/public-api.mjs +3 -0
- package/esm2022/lib/pt-text-input/index.mjs +2 -0
- package/esm2022/lib/pt-text-input/pt-text-input.component.mjs +86 -0
- package/esm2022/lib/pt-text-input/pt-text-input.module.mjs +36 -0
- package/esm2022/lib/pt-text-input/public-api.mjs +3 -0
- package/esm2022/lib/types/date-format.type.mjs +2 -0
- package/esm2022/lib/types/date-input.type.mjs +2 -0
- package/esm2022/lib/types/index.mjs +2 -0
- package/esm2022/lib/types/public-api.mjs +2 -0
- package/esm2022/lib/utils/date.util.mjs +69 -0
- package/esm2022/public-api.mjs +11 -2
- package/fesm2022/ng-prime-tools.mjs +1099 -18
- package/fesm2022/ng-prime-tools.mjs.map +1 -1
- package/lib/enums/button-color.enum.d.ts +9 -0
- package/lib/enums/button-color.enum.d.ts.map +1 -0
- package/lib/enums/form-input-type.enum.d.ts +13 -0
- package/lib/enums/form-input-type.enum.d.ts.map +1 -0
- package/lib/enums/index.d.ts +1 -5
- package/lib/enums/index.d.ts.map +1 -1
- package/lib/enums/input-validation.enum.d.ts +7 -0
- package/lib/enums/input-validation.enum.d.ts.map +1 -0
- package/lib/enums/public-api.d.ts +6 -0
- package/lib/enums/public-api.d.ts.map +1 -0
- package/lib/enums/{search-criteria-type-enum.d.ts → search-criteria-type.enum.d.ts} +1 -1
- package/lib/enums/search-criteria-type.enum.d.ts.map +1 -0
- package/lib/enums/{table-type-enum.d.ts → table-type.enum.d.ts} +1 -1
- package/lib/enums/table-type.enum.d.ts.map +1 -0
- package/lib/models/{filter-option.d.ts → filter-option.model.d.ts} +1 -1
- package/lib/models/filter-option.model.d.ts.map +1 -0
- package/lib/models/form-button.model.d.ts +10 -0
- package/lib/models/form-button.model.d.ts.map +1 -0
- package/lib/models/form-check-field.model.d.ts +4 -0
- package/lib/models/form-check-field.model.d.ts.map +1 -0
- package/lib/models/form-date-field.model.d.ts +11 -0
- package/lib/models/form-date-field.model.d.ts.map +1 -0
- package/lib/models/form-drop-down-field.model.d.ts +5 -0
- package/lib/models/form-drop-down-field.model.d.ts.map +1 -0
- package/lib/models/form-field-group.model.d.ts +7 -0
- package/lib/models/form-field-group.model.d.ts.map +1 -0
- package/lib/models/form-field.model.d.ts +16 -0
- package/lib/models/form-field.model.d.ts.map +1 -0
- package/lib/models/form-multi-select.model.d.ts +5 -0
- package/lib/models/form-multi-select.model.d.ts.map +1 -0
- package/lib/models/form-number-field.model.d.ts +11 -0
- package/lib/models/form-number-field.model.d.ts.map +1 -0
- package/lib/models/form-switch-field.model.d.ts +4 -0
- package/lib/models/form-switch-field.model.d.ts.map +1 -0
- package/lib/models/form-text-area-field.model.d.ts +11 -0
- package/lib/models/form-text-area-field.model.d.ts.map +1 -0
- package/lib/models/form-text-field.model.d.ts +8 -0
- package/lib/models/form-text-field.model.d.ts.map +1 -0
- package/lib/models/index.d.ts +1 -1
- package/lib/models/public-api.d.ts +15 -0
- package/lib/models/public-api.d.ts.map +1 -0
- package/lib/models/{search-criteria.d.ts → search-criteria.model.d.ts} +3 -3
- package/lib/models/search-criteria.model.d.ts.map +1 -0
- package/lib/models/{table-column.d.ts → table-column.model.d.ts} +2 -2
- package/lib/models/table-column.model.d.ts.map +1 -0
- package/lib/multi-search-criteria/multi-search-criteria.component.d.ts +2 -2
- package/lib/multi-search-criteria/multi-search-criteria.component.d.ts.map +1 -1
- package/lib/ng-prime-tools.module.d.ts +8 -1
- package/lib/ng-prime-tools.module.d.ts.map +1 -1
- package/lib/pt-check-box-input/index.d.ts +2 -0
- package/lib/pt-check-box-input/index.d.ts.map +1 -0
- package/lib/pt-check-box-input/pt-check-box-input.component.d.ts +16 -0
- package/lib/pt-check-box-input/pt-check-box-input.component.d.ts.map +1 -0
- package/lib/pt-check-box-input/pt-check-box-input.module.d.ts +11 -0
- package/lib/pt-check-box-input/pt-check-box-input.module.d.ts.map +1 -0
- package/lib/pt-check-box-input/public-api.d.ts +3 -0
- package/lib/pt-check-box-input/public-api.d.ts.map +1 -0
- package/lib/pt-date-input/index.d.ts +2 -0
- package/lib/pt-date-input/index.d.ts.map +1 -0
- package/lib/pt-date-input/pt-date-input.component.d.ts +24 -0
- package/lib/pt-date-input/pt-date-input.component.d.ts.map +1 -0
- package/lib/pt-date-input/pt-date-input.module.d.ts +11 -0
- package/lib/pt-date-input/pt-date-input.module.d.ts.map +1 -0
- package/lib/pt-date-input/pt-date.service.d.ts +11 -0
- package/lib/pt-date-input/pt-date.service.d.ts.map +1 -0
- package/lib/pt-date-input/public-api.d.ts +3 -0
- package/lib/pt-date-input/public-api.d.ts.map +1 -0
- package/lib/pt-dropdown/index.d.ts +2 -0
- package/lib/pt-dropdown/index.d.ts.map +1 -0
- package/lib/pt-dropdown/pt-dropdown.component.d.ts +15 -0
- package/lib/pt-dropdown/pt-dropdown.component.d.ts.map +1 -0
- package/lib/pt-dropdown/pt-dropdown.module.d.ts +11 -0
- package/lib/pt-dropdown/pt-dropdown.module.d.ts.map +1 -0
- package/lib/pt-dropdown/public-api.d.ts +3 -0
- package/lib/pt-dropdown/public-api.d.ts.map +1 -0
- package/lib/pt-form-builder/index.d.ts +2 -0
- package/lib/pt-form-builder/index.d.ts.map +1 -0
- package/lib/pt-form-builder/pt-dynamic-form-field/pt-dynamic-form-field-module.d.ts +18 -0
- package/lib/pt-form-builder/pt-dynamic-form-field/pt-dynamic-form-field-module.d.ts.map +1 -0
- package/lib/pt-form-builder/pt-dynamic-form-field/pt-dynamic-form-field.component.d.ts +29 -0
- package/lib/pt-form-builder/pt-dynamic-form-field/pt-dynamic-form-field.component.d.ts.map +1 -0
- package/lib/pt-form-builder/pt-form-builder.component.d.ts +33 -0
- package/lib/pt-form-builder/pt-form-builder.component.d.ts.map +1 -0
- package/lib/pt-form-builder/pt-form-builder.module.d.ts +12 -0
- package/lib/pt-form-builder/pt-form-builder.module.d.ts.map +1 -0
- package/lib/pt-form-builder/public-api.d.ts +3 -0
- package/lib/pt-form-builder/public-api.d.ts.map +1 -0
- package/lib/pt-multi-select/index.d.ts +2 -0
- package/lib/pt-multi-select/index.d.ts.map +1 -0
- package/lib/pt-multi-select/pt-multi-select.component.d.ts +15 -0
- package/lib/pt-multi-select/pt-multi-select.component.d.ts.map +1 -0
- package/lib/pt-multi-select/pt-multi-select.module.d.ts +11 -0
- package/lib/pt-multi-select/pt-multi-select.module.d.ts.map +1 -0
- package/lib/pt-multi-select/public-api.d.ts +3 -0
- package/lib/pt-multi-select/public-api.d.ts.map +1 -0
- package/lib/pt-number-input/index.d.ts +2 -0
- package/lib/pt-number-input/index.d.ts.map +1 -0
- package/lib/pt-number-input/pt-number-input.component.d.ts +16 -0
- package/lib/pt-number-input/pt-number-input.component.d.ts.map +1 -0
- package/lib/pt-number-input/pt-number-input.module.d.ts +14 -0
- package/lib/pt-number-input/pt-number-input.module.d.ts.map +1 -0
- package/lib/pt-number-input/public-api.d.ts +3 -0
- package/lib/pt-number-input/public-api.d.ts.map +1 -0
- package/lib/pt-switch-input/index.d.ts +2 -0
- package/lib/pt-switch-input/index.d.ts.map +1 -0
- package/lib/pt-switch-input/pt-switch-input.component.d.ts +16 -0
- package/lib/pt-switch-input/pt-switch-input.component.d.ts.map +1 -0
- package/lib/pt-switch-input/pt-switch-input.module.d.ts +11 -0
- package/lib/pt-switch-input/pt-switch-input.module.d.ts.map +1 -0
- package/lib/pt-switch-input/public-api.d.ts +3 -0
- package/lib/pt-switch-input/public-api.d.ts.map +1 -0
- package/lib/pt-text-area-input/index.d.ts +2 -0
- package/lib/pt-text-area-input/index.d.ts.map +1 -0
- package/lib/pt-text-area-input/pt-text-area-input.component.d.ts +17 -0
- package/lib/pt-text-area-input/pt-text-area-input.component.d.ts.map +1 -0
- package/lib/pt-text-area-input/pt-text-area-input.module.d.ts +13 -0
- package/lib/pt-text-area-input/pt-text-area-input.module.d.ts.map +1 -0
- package/lib/pt-text-area-input/public-api.d.ts +3 -0
- package/lib/pt-text-area-input/public-api.d.ts.map +1 -0
- package/lib/pt-text-input/index.d.ts +2 -0
- package/lib/pt-text-input/index.d.ts.map +1 -0
- package/lib/pt-text-input/pt-text-input.component.d.ts +18 -0
- package/lib/pt-text-input/pt-text-input.component.d.ts.map +1 -0
- package/lib/pt-text-input/pt-text-input.module.d.ts +13 -0
- package/lib/pt-text-input/pt-text-input.module.d.ts.map +1 -0
- package/lib/pt-text-input/public-api.d.ts +3 -0
- package/lib/pt-text-input/public-api.d.ts.map +1 -0
- package/lib/types/date-format.type.d.ts +2 -0
- package/lib/types/date-format.type.d.ts.map +1 -0
- package/lib/types/date-input.type.d.ts +2 -0
- package/lib/types/date-input.type.d.ts.map +1 -0
- package/lib/types/index.d.ts +2 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/types/public-api.d.ts +2 -0
- package/lib/types/public-api.d.ts.map +1 -0
- package/lib/utils/date.util.d.ts +7 -0
- package/lib/utils/date.util.d.ts.map +1 -0
- package/package.json +1 -1
- package/public-api.d.ts +9 -0
- package/public-api.d.ts.map +1 -1
- package/esm2022/lib/enums/public_api.mjs +0 -4
- package/esm2022/lib/models/filter-option.mjs +0 -2
- package/esm2022/lib/models/public_api.mjs +0 -5
- package/esm2022/lib/models/search-criteria.mjs +0 -2
- package/esm2022/lib/models/table-column.mjs +0 -2
- package/lib/enums/public_api.d.ts +0 -3
- package/lib/enums/public_api.d.ts.map +0 -1
- package/lib/enums/search-criteria-type-enum.d.ts.map +0 -1
- package/lib/enums/table-type-enum.d.ts.map +0 -1
- package/lib/models/filter-option.d.ts.map +0 -1
- package/lib/models/public_api.d.ts +0 -4
- package/lib/models/public_api.d.ts.map +0 -1
- package/lib/models/search-criteria.d.ts.map +0 -1
- package/lib/models/table-column.d.ts.map +0 -1
@@ -0,0 +1,59 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
4
|
+
import { PTDynamicFormFieldComponent as PTDynamicFormFieldComponent } from './pt-dynamic-form-field.component';
|
5
|
+
import { PTCheckBoxInputModule } from '../../pt-check-box-input';
|
6
|
+
import { PTNumberInputModule } from '../../pt-number-input/pt-number-input.module';
|
7
|
+
import { PTSwitchInputModule } from '../../pt-switch-input/pt-switch-input.module';
|
8
|
+
import { PTTextInputModule } from '../../pt-text-input/pt-text-input.module';
|
9
|
+
import { PTTextAreaInputModule } from '../../pt-text-area-input/pt-text-area-input.module';
|
10
|
+
import { PTDateInputModule } from '../../pt-date-input';
|
11
|
+
import { PTDropdownModule } from '../../pt-dropdown';
|
12
|
+
import { PTMultiSelectModule } from '../../pt-multi-select';
|
13
|
+
import * as i0 from "@angular/core";
|
14
|
+
export class PTDynamicFormFieldModule {
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDynamicFormFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
16
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.11", ngImport: i0, type: PTDynamicFormFieldModule, declarations: [PTDynamicFormFieldComponent], imports: [CommonModule,
|
17
|
+
ReactiveFormsModule,
|
18
|
+
// Inputs
|
19
|
+
PTCheckBoxInputModule,
|
20
|
+
PTDateInputModule,
|
21
|
+
PTNumberInputModule,
|
22
|
+
PTSwitchInputModule,
|
23
|
+
PTTextAreaInputModule,
|
24
|
+
PTTextInputModule,
|
25
|
+
PTDropdownModule,
|
26
|
+
PTMultiSelectModule], exports: [PTDynamicFormFieldComponent] }); }
|
27
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDynamicFormFieldModule, imports: [CommonModule,
|
28
|
+
ReactiveFormsModule,
|
29
|
+
// Inputs
|
30
|
+
PTCheckBoxInputModule,
|
31
|
+
PTDateInputModule,
|
32
|
+
PTNumberInputModule,
|
33
|
+
PTSwitchInputModule,
|
34
|
+
PTTextAreaInputModule,
|
35
|
+
PTTextInputModule,
|
36
|
+
PTDropdownModule,
|
37
|
+
PTMultiSelectModule] }); }
|
38
|
+
}
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDynamicFormFieldModule, decorators: [{
|
40
|
+
type: NgModule,
|
41
|
+
args: [{
|
42
|
+
declarations: [PTDynamicFormFieldComponent],
|
43
|
+
imports: [
|
44
|
+
CommonModule,
|
45
|
+
ReactiveFormsModule,
|
46
|
+
// Inputs
|
47
|
+
PTCheckBoxInputModule,
|
48
|
+
PTDateInputModule,
|
49
|
+
PTNumberInputModule,
|
50
|
+
PTSwitchInputModule,
|
51
|
+
PTTextAreaInputModule,
|
52
|
+
PTTextInputModule,
|
53
|
+
PTDropdownModule,
|
54
|
+
PTMultiSelectModule,
|
55
|
+
],
|
56
|
+
exports: [PTDynamicFormFieldComponent],
|
57
|
+
}]
|
58
|
+
}] });
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtZHluYW1pYy1mb3JtLWZpZWxkLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtZm9ybS1idWlsZGVyL3B0LWR5bmFtaWMtZm9ybS1maWVsZC9wdC1keW5hbWljLWZvcm0tZmllbGQtbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSwyQkFBMkIsSUFBSSwyQkFBMkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQy9HLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQW9CNUQsTUFBTSxPQUFPLHdCQUF3QjsrR0FBeEIsd0JBQXdCO2dIQUF4Qix3QkFBd0IsaUJBakJwQiwyQkFBMkIsYUFFeEMsWUFBWTtZQUNaLG1CQUFtQjtZQUVuQixTQUFTO1lBQ1QscUJBQXFCO1lBQ3JCLGlCQUFpQjtZQUNqQixtQkFBbUI7WUFDbkIsbUJBQW1CO1lBQ25CLHFCQUFxQjtZQUNyQixpQkFBaUI7WUFDakIsZ0JBQWdCO1lBQ2hCLG1CQUFtQixhQUVYLDJCQUEyQjtnSEFFMUIsd0JBQXdCLFlBZmpDLFlBQVk7WUFDWixtQkFBbUI7WUFFbkIsU0FBUztZQUNULHFCQUFxQjtZQUNyQixpQkFBaUI7WUFDakIsbUJBQW1CO1lBQ25CLG1CQUFtQjtZQUNuQixxQkFBcUI7WUFDckIsaUJBQWlCO1lBQ2pCLGdCQUFnQjtZQUNoQixtQkFBbUI7OzRGQUlWLHdCQUF3QjtrQkFsQnBDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsMkJBQTJCLENBQUM7b0JBQzNDLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFFbkIsU0FBUzt3QkFDVCxxQkFBcUI7d0JBQ3JCLGlCQUFpQjt3QkFDakIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIsaUJBQWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLG1CQUFtQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsMkJBQTJCLENBQUM7aUJBQ3ZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUFREeW5hbWljRm9ybUZpZWxkQ29tcG9uZW50IGFzIFBURHluYW1pY0Zvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4vcHQtZHluYW1pYy1mb3JtLWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQVENoZWNrQm94SW5wdXRNb2R1bGUgfSBmcm9tICcuLi8uLi9wdC1jaGVjay1ib3gtaW5wdXQnO1xuaW1wb3J0IHsgUFROdW1iZXJJbnB1dE1vZHVsZSB9IGZyb20gJy4uLy4uL3B0LW51bWJlci1pbnB1dC9wdC1udW1iZXItaW5wdXQubW9kdWxlJztcbmltcG9ydCB7IFBUU3dpdGNoSW5wdXRNb2R1bGUgfSBmcm9tICcuLi8uLi9wdC1zd2l0Y2gtaW5wdXQvcHQtc3dpdGNoLWlucHV0Lm1vZHVsZSc7XG5pbXBvcnQgeyBQVFRleHRJbnB1dE1vZHVsZSB9IGZyb20gJy4uLy4uL3B0LXRleHQtaW5wdXQvcHQtdGV4dC1pbnB1dC5tb2R1bGUnO1xuaW1wb3J0IHsgUFRUZXh0QXJlYUlucHV0TW9kdWxlIH0gZnJvbSAnLi4vLi4vcHQtdGV4dC1hcmVhLWlucHV0L3B0LXRleHQtYXJlYS1pbnB1dC5tb2R1bGUnO1xuaW1wb3J0IHsgUFREYXRlSW5wdXRNb2R1bGUgfSBmcm9tICcuLi8uLi9wdC1kYXRlLWlucHV0JztcbmltcG9ydCB7IFBURHJvcGRvd25Nb2R1bGUgfSBmcm9tICcuLi8uLi9wdC1kcm9wZG93bic7XG5pbXBvcnQgeyBQVE11bHRpU2VsZWN0TW9kdWxlIH0gZnJvbSAnLi4vLi4vcHQtbXVsdGktc2VsZWN0JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbUFREeW5hbWljRm9ybUZpZWxkQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuXG4gICAgLy8gSW5wdXRzXG4gICAgUFRDaGVja0JveElucHV0TW9kdWxlLFxuICAgIFBURGF0ZUlucHV0TW9kdWxlLFxuICAgIFBUTnVtYmVySW5wdXRNb2R1bGUsXG4gICAgUFRTd2l0Y2hJbnB1dE1vZHVsZSxcbiAgICBQVFRleHRBcmVhSW5wdXRNb2R1bGUsXG4gICAgUFRUZXh0SW5wdXRNb2R1bGUsXG4gICAgUFREcm9wZG93bk1vZHVsZSxcbiAgICBQVE11bHRpU2VsZWN0TW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbUFREeW5hbWljRm9ybUZpZWxkQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgUFREeW5hbWljRm9ybUZpZWxkTW9kdWxlIHt9XG4iXX0=
|
@@ -0,0 +1,55 @@
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
2
|
+
import { FormInputTypeEnum } from '../../enums';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
import * as i1 from "@angular/common";
|
5
|
+
import * as i2 from "@angular/forms";
|
6
|
+
import * as i3 from "../../pt-check-box-input/pt-check-box-input.component";
|
7
|
+
import * as i4 from "../../pt-date-input/pt-date-input.component";
|
8
|
+
import * as i5 from "../../pt-number-input/pt-number-input.component";
|
9
|
+
import * as i6 from "../../pt-switch-input/pt-switch-input.component";
|
10
|
+
import * as i7 from "../../pt-text-area-input/pt-text-area-input.component";
|
11
|
+
import * as i8 from "../../pt-text-input/pt-text-input.component";
|
12
|
+
import * as i9 from "../../pt-dropdown/pt-dropdown.component";
|
13
|
+
import * as i10 from "../../pt-multi-select/pt-multi-select.component";
|
14
|
+
export class PTDynamicFormFieldComponent {
|
15
|
+
constructor() {
|
16
|
+
this.FormInputTypeEnum = FormInputTypeEnum;
|
17
|
+
}
|
18
|
+
asTextField(field) {
|
19
|
+
return field;
|
20
|
+
}
|
21
|
+
asNumberField(field) {
|
22
|
+
return field;
|
23
|
+
}
|
24
|
+
asTextAreaField(field) {
|
25
|
+
return field;
|
26
|
+
}
|
27
|
+
asDateField(field) {
|
28
|
+
return field;
|
29
|
+
}
|
30
|
+
asSelectField(field) {
|
31
|
+
return field;
|
32
|
+
}
|
33
|
+
asMultiSelectField(field) {
|
34
|
+
return field;
|
35
|
+
}
|
36
|
+
asCheckboxField(field) {
|
37
|
+
return field;
|
38
|
+
}
|
39
|
+
asSwitchField(field) {
|
40
|
+
return field;
|
41
|
+
}
|
42
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDynamicFormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
43
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: PTDynamicFormFieldComponent, selector: "pt-dynamic-form-field", inputs: { field: "field", form: "form", inputWidth: "inputWidth" }, ngImport: i0, template: "<div\n [formGroup]=\"form\"\n class=\"form-field\"\n [ngStyle]=\"{\n width:\n field.type !== FormInputTypeEnum.CHECKBOX &&\n field.type !== FormInputTypeEnum.SWITCH\n ? field.width || inputWidth\n : 'auto'\n }\"\n>\n <ng-container [ngSwitch]=\"field.type\">\n <pt-text-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXT\"\n [formGroup]=\"form\"\n [formField]=\"asTextField(field)\"\n ></pt-text-input>\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.NUMBER\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.AMOUNT\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n <pt-text-area-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXTAREA\"\n [formGroup]=\"form\"\n [formField]=\"asTextAreaField(field)\"\n ></pt-text-area-input>\n <pt-date-input\n *ngSwitchCase=\"FormInputTypeEnum.DATE\"\n [formGroup]=\"form\"\n [formField]=\"asDateField(field)\"\n ></pt-date-input>\n <pt-multi-select\n *ngSwitchCase=\"FormInputTypeEnum.MULTISELECT\"\n [formGroup]=\"form\"\n [formField]=\"asMultiSelectField(field)\"\n ></pt-multi-select>\n <pt-dropdown\n *ngSwitchCase=\"FormInputTypeEnum.SELECT\"\n [formGroup]=\"form\"\n [formField]=\"asSelectField(field)\"\n ></pt-dropdown>\n <pt-check-box-input\n *ngSwitchCase=\"FormInputTypeEnum.CHECKBOX\"\n [formGroup]=\"form\"\n [formField]=\"asCheckboxField(field)\"\n ></pt-check-box-input>\n <pt-switch-input\n *ngSwitchCase=\"FormInputTypeEnum.SWITCH\"\n [formGroup]=\"form\"\n [formField]=\"asSwitchField(field)\"\n ></pt-switch-input>\n </ng-container>\n</div>\n", styles: [".form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.PTCheckBoxInputComponent, selector: "pt-check-box-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i4.PTDateInputComponent, selector: "pt-date-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i5.PTNumberInputComponent, selector: "pt-number-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i6.PTSwitchInputComponent, selector: "pt-switch-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i7.PTTextAreaInputComponent, selector: "pt-text-area-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i8.PTTextInputComponent, selector: "pt-text-input", inputs: ["formGroup", "formField"] }, { kind: "component", type: i9.PTDropdownComponent, selector: "pt-dropdown", inputs: ["formGroup", "formField"] }, { kind: "component", type: i10.PTMultiSelectComponent, selector: "pt-multi-select", inputs: ["formGroup", "formField"] }] }); }
|
44
|
+
}
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTDynamicFormFieldComponent, decorators: [{
|
46
|
+
type: Component,
|
47
|
+
args: [{ selector: 'pt-dynamic-form-field', template: "<div\n [formGroup]=\"form\"\n class=\"form-field\"\n [ngStyle]=\"{\n width:\n field.type !== FormInputTypeEnum.CHECKBOX &&\n field.type !== FormInputTypeEnum.SWITCH\n ? field.width || inputWidth\n : 'auto'\n }\"\n>\n <ng-container [ngSwitch]=\"field.type\">\n <pt-text-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXT\"\n [formGroup]=\"form\"\n [formField]=\"asTextField(field)\"\n ></pt-text-input>\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.NUMBER\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n <pt-number-input\n *ngSwitchCase=\"FormInputTypeEnum.AMOUNT\"\n [formGroup]=\"form\"\n [formField]=\"asNumberField(field)\"\n ></pt-number-input>\n <pt-text-area-input\n *ngSwitchCase=\"FormInputTypeEnum.TEXTAREA\"\n [formGroup]=\"form\"\n [formField]=\"asTextAreaField(field)\"\n ></pt-text-area-input>\n <pt-date-input\n *ngSwitchCase=\"FormInputTypeEnum.DATE\"\n [formGroup]=\"form\"\n [formField]=\"asDateField(field)\"\n ></pt-date-input>\n <pt-multi-select\n *ngSwitchCase=\"FormInputTypeEnum.MULTISELECT\"\n [formGroup]=\"form\"\n [formField]=\"asMultiSelectField(field)\"\n ></pt-multi-select>\n <pt-dropdown\n *ngSwitchCase=\"FormInputTypeEnum.SELECT\"\n [formGroup]=\"form\"\n [formField]=\"asSelectField(field)\"\n ></pt-dropdown>\n <pt-check-box-input\n *ngSwitchCase=\"FormInputTypeEnum.CHECKBOX\"\n [formGroup]=\"form\"\n [formField]=\"asCheckboxField(field)\"\n ></pt-check-box-input>\n <pt-switch-input\n *ngSwitchCase=\"FormInputTypeEnum.SWITCH\"\n [formGroup]=\"form\"\n [formField]=\"asSwitchField(field)\"\n ></pt-switch-input>\n </ng-container>\n</div>\n", styles: [".form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}\n"] }]
|
48
|
+
}], propDecorators: { field: [{
|
49
|
+
type: Input
|
50
|
+
}], form: [{
|
51
|
+
type: Input
|
52
|
+
}], inputWidth: [{
|
53
|
+
type: Input
|
54
|
+
}] } });
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtZHluYW1pYy1mb3JtLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtZm9ybS1idWlsZGVyL3B0LWR5bmFtaWMtZm9ybS1maWVsZC9wdC1keW5hbWljLWZvcm0tZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctcHJpbWUtdG9vbHMvc3JjL2xpYi9wdC1mb3JtLWJ1aWxkZXIvcHQtZHluYW1pYy1mb3JtLWZpZWxkL3B0LWR5bmFtaWMtZm9ybS1maWVsZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7Ozs7Ozs7OztBQWVoRCxNQUFNLE9BQU8sMkJBQTJCO0lBTHhDO1FBVUUsc0JBQWlCLEdBQUcsaUJBQWlCLENBQUM7S0FpQ3ZDO0lBL0JDLFdBQVcsQ0FBQyxLQUFnQjtRQUMxQixPQUFPLEtBQXNCLENBQUM7SUFDaEMsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFnQjtRQUM1QixPQUFPLEtBQXdCLENBQUM7SUFDbEMsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFnQjtRQUM5QixPQUFPLEtBQTBCLENBQUM7SUFDcEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFnQjtRQUMxQixPQUFPLEtBQXNCLENBQUM7SUFDaEMsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFnQjtRQUM1QixPQUFPLEtBQTBCLENBQUM7SUFDcEMsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQWdCO1FBQ2pDLE9BQU8sS0FBNkIsQ0FBQztJQUN2QyxDQUFDO0lBRUQsZUFBZSxDQUFDLEtBQWdCO1FBQzlCLE9BQU8sS0FBMEIsQ0FBQztJQUNwQyxDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWdCO1FBQzVCLE9BQU8sS0FBd0IsQ0FBQztJQUNsQyxDQUFDOytHQXJDVSwyQkFBMkI7bUdBQTNCLDJCQUEyQixpSUNsQnhDLHV6REEyREE7OzRGRHpDYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0UsdUJBQXVCOzhCQUt4QixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3JtRmllbGQgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgRm9ybUlucHV0VHlwZUVudW0gfSBmcm9tICcuLi8uLi9lbnVtcyc7XG5pbXBvcnQgeyBGb3JtVGV4dEZpZWxkIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0tdGV4dC1maWVsZC5tb2RlbCc7XG5pbXBvcnQgeyBGb3JtVGV4dEFyZWFGaWVsZCB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLXRleHQtYXJlYS1maWVsZC5tb2RlbCc7XG5pbXBvcnQgeyBGb3JtTXVsdGlTZWxlY3RGaWVsZCB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLW11bHRpLXNlbGVjdC5tb2RlbCc7XG5pbXBvcnQgeyBGb3JtRHJvcGRvd25GaWVsZCB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLWRyb3AtZG93bi1maWVsZC5tb2RlbCc7XG5pbXBvcnQgeyBGb3JtU3dpdGNoRmllbGQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZm9ybS1zd2l0Y2gtZmllbGQubW9kZWwnO1xuaW1wb3J0IHsgRm9ybU51bWJlckZpZWxkIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0tbnVtYmVyLWZpZWxkLm1vZGVsJztcbmltcG9ydCB7IEZvcm1EYXRlRmllbGQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZm9ybS1kYXRlLWZpZWxkLm1vZGVsJztcbmltcG9ydCB7IEZvcm1DaGVja0JveEZpZWxkIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0tY2hlY2stZmllbGQubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwdC1keW5hbWljLWZvcm0tZmllbGQnLFxuICB0ZW1wbGF0ZVVybDogJy4vcHQtZHluYW1pYy1mb3JtLWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHQtZHluYW1pYy1mb3JtLWZpZWxkLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUFREeW5hbWljRm9ybUZpZWxkQ29tcG9uZW50IHtcbiAgQElucHV0KCkgZmllbGQhOiBGb3JtRmllbGQ7XG4gIEBJbnB1dCgpIGZvcm0hOiBGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIGlucHV0V2lkdGghOiBzdHJpbmc7XG5cbiAgRm9ybUlucHV0VHlwZUVudW0gPSBGb3JtSW5wdXRUeXBlRW51bTtcblxuICBhc1RleHRGaWVsZChmaWVsZDogRm9ybUZpZWxkKTogRm9ybVRleHRGaWVsZCB7XG4gICAgcmV0dXJuIGZpZWxkIGFzIEZvcm1UZXh0RmllbGQ7XG4gIH1cblxuICBhc051bWJlckZpZWxkKGZpZWxkOiBGb3JtRmllbGQpOiBGb3JtTnVtYmVyRmllbGQge1xuICAgIHJldHVybiBmaWVsZCBhcyBGb3JtTnVtYmVyRmllbGQ7XG4gIH1cblxuICBhc1RleHRBcmVhRmllbGQoZmllbGQ6IEZvcm1GaWVsZCk6IEZvcm1UZXh0QXJlYUZpZWxkIHtcbiAgICByZXR1cm4gZmllbGQgYXMgRm9ybVRleHRBcmVhRmllbGQ7XG4gIH1cblxuICBhc0RhdGVGaWVsZChmaWVsZDogRm9ybUZpZWxkKTogRm9ybURhdGVGaWVsZCB7XG4gICAgcmV0dXJuIGZpZWxkIGFzIEZvcm1EYXRlRmllbGQ7XG4gIH1cblxuICBhc1NlbGVjdEZpZWxkKGZpZWxkOiBGb3JtRmllbGQpOiBGb3JtRHJvcGRvd25GaWVsZCB7XG4gICAgcmV0dXJuIGZpZWxkIGFzIEZvcm1Ecm9wZG93bkZpZWxkO1xuICB9XG5cbiAgYXNNdWx0aVNlbGVjdEZpZWxkKGZpZWxkOiBGb3JtRmllbGQpOiBGb3JtTXVsdGlTZWxlY3RGaWVsZCB7XG4gICAgcmV0dXJuIGZpZWxkIGFzIEZvcm1NdWx0aVNlbGVjdEZpZWxkO1xuICB9XG5cbiAgYXNDaGVja2JveEZpZWxkKGZpZWxkOiBGb3JtRmllbGQpOiBGb3JtQ2hlY2tCb3hGaWVsZCB7XG4gICAgcmV0dXJuIGZpZWxkIGFzIEZvcm1DaGVja0JveEZpZWxkO1xuICB9XG5cbiAgYXNTd2l0Y2hGaWVsZChmaWVsZDogRm9ybUZpZWxkKTogRm9ybVN3aXRjaEZpZWxkIHtcbiAgICByZXR1cm4gZmllbGQgYXMgRm9ybVN3aXRjaEZpZWxkO1xuICB9XG59XG4iLCI8ZGl2XG4gIFtmb3JtR3JvdXBdPVwiZm9ybVwiXG4gIGNsYXNzPVwiZm9ybS1maWVsZFwiXG4gIFtuZ1N0eWxlXT1cIntcbiAgICB3aWR0aDpcbiAgICAgIGZpZWxkLnR5cGUgIT09IEZvcm1JbnB1dFR5cGVFbnVtLkNIRUNLQk9YICYmXG4gICAgICBmaWVsZC50eXBlICE9PSBGb3JtSW5wdXRUeXBlRW51bS5TV0lUQ0hcbiAgICAgICAgPyBmaWVsZC53aWR0aCB8fCBpbnB1dFdpZHRoXG4gICAgICAgIDogJ2F1dG8nXG4gIH1cIlxuPlxuICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJmaWVsZC50eXBlXCI+XG4gICAgPHB0LXRleHQtaW5wdXRcbiAgICAgICpuZ1N3aXRjaENhc2U9XCJGb3JtSW5wdXRUeXBlRW51bS5URVhUXCJcbiAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybVwiXG4gICAgICBbZm9ybUZpZWxkXT1cImFzVGV4dEZpZWxkKGZpZWxkKVwiXG4gICAgPjwvcHQtdGV4dC1pbnB1dD5cbiAgICA8cHQtbnVtYmVyLWlucHV0XG4gICAgICAqbmdTd2l0Y2hDYXNlPVwiRm9ybUlucHV0VHlwZUVudW0uTlVNQkVSXCJcbiAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybVwiXG4gICAgICBbZm9ybUZpZWxkXT1cImFzTnVtYmVyRmllbGQoZmllbGQpXCJcbiAgICA+PC9wdC1udW1iZXItaW5wdXQ+XG4gICAgPHB0LW51bWJlci1pbnB1dFxuICAgICAgKm5nU3dpdGNoQ2FzZT1cIkZvcm1JbnB1dFR5cGVFbnVtLkFNT1VOVFwiXG4gICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgW2Zvcm1GaWVsZF09XCJhc051bWJlckZpZWxkKGZpZWxkKVwiXG4gICAgPjwvcHQtbnVtYmVyLWlucHV0PlxuICAgIDxwdC10ZXh0LWFyZWEtaW5wdXRcbiAgICAgICpuZ1N3aXRjaENhc2U9XCJGb3JtSW5wdXRUeXBlRW51bS5URVhUQVJFQVwiXG4gICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgW2Zvcm1GaWVsZF09XCJhc1RleHRBcmVhRmllbGQoZmllbGQpXCJcbiAgICA+PC9wdC10ZXh0LWFyZWEtaW5wdXQ+XG4gICAgPHB0LWRhdGUtaW5wdXRcbiAgICAgICpuZ1N3aXRjaENhc2U9XCJGb3JtSW5wdXRUeXBlRW51bS5EQVRFXCJcbiAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybVwiXG4gICAgICBbZm9ybUZpZWxkXT1cImFzRGF0ZUZpZWxkKGZpZWxkKVwiXG4gICAgPjwvcHQtZGF0ZS1pbnB1dD5cbiAgICA8cHQtbXVsdGktc2VsZWN0XG4gICAgICAqbmdTd2l0Y2hDYXNlPVwiRm9ybUlucHV0VHlwZUVudW0uTVVMVElTRUxFQ1RcIlxuICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgICAgIFtmb3JtRmllbGRdPVwiYXNNdWx0aVNlbGVjdEZpZWxkKGZpZWxkKVwiXG4gICAgPjwvcHQtbXVsdGktc2VsZWN0PlxuICAgIDxwdC1kcm9wZG93blxuICAgICAgKm5nU3dpdGNoQ2FzZT1cIkZvcm1JbnB1dFR5cGVFbnVtLlNFTEVDVFwiXG4gICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIlxuICAgICAgW2Zvcm1GaWVsZF09XCJhc1NlbGVjdEZpZWxkKGZpZWxkKVwiXG4gICAgPjwvcHQtZHJvcGRvd24+XG4gICAgPHB0LWNoZWNrLWJveC1pbnB1dFxuICAgICAgKm5nU3dpdGNoQ2FzZT1cIkZvcm1JbnB1dFR5cGVFbnVtLkNIRUNLQk9YXCJcbiAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybVwiXG4gICAgICBbZm9ybUZpZWxkXT1cImFzQ2hlY2tib3hGaWVsZChmaWVsZClcIlxuICAgID48L3B0LWNoZWNrLWJveC1pbnB1dD5cbiAgICA8cHQtc3dpdGNoLWlucHV0XG4gICAgICAqbmdTd2l0Y2hDYXNlPVwiRm9ybUlucHV0VHlwZUVudW0uU1dJVENIXCJcbiAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybVwiXG4gICAgICBbZm9ybUZpZWxkXT1cImFzU3dpdGNoRmllbGQoZmllbGQpXCJcbiAgICA+PC9wdC1zd2l0Y2gtaW5wdXQ+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
|
@@ -0,0 +1,77 @@
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
2
|
+
import { Validators } from '@angular/forms';
|
3
|
+
import { FormInputTypeEnum } from '../enums/form-input-type.enum';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
import * as i1 from "@angular/forms";
|
6
|
+
import * as i2 from "@angular/common";
|
7
|
+
import * as i3 from "primeng/button";
|
8
|
+
import * as i4 from "./pt-dynamic-form-field/pt-dynamic-form-field.component";
|
9
|
+
export class PTFormBuilderComponent {
|
10
|
+
constructor(fb) {
|
11
|
+
this.fb = fb;
|
12
|
+
this.mainGroup = { fields: [], groups: [] };
|
13
|
+
this.buttons = [];
|
14
|
+
this.inputWidth = '100%';
|
15
|
+
this.language = 'en';
|
16
|
+
this.formSubmit = new EventEmitter();
|
17
|
+
this.FormInputTypeEnum = FormInputTypeEnum;
|
18
|
+
this.errorMessages = {
|
19
|
+
en: {
|
20
|
+
required: 'is required',
|
21
|
+
},
|
22
|
+
fr: {
|
23
|
+
required: 'est requis',
|
24
|
+
},
|
25
|
+
};
|
26
|
+
this.form = this.fb.group({});
|
27
|
+
}
|
28
|
+
ngOnInit() {
|
29
|
+
this.buildFormGroup(this.mainGroup);
|
30
|
+
}
|
31
|
+
buildFormGroup(group) {
|
32
|
+
group.fields?.forEach((field) => {
|
33
|
+
const validators = field.required ? [Validators.required] : [];
|
34
|
+
this.form.addControl(field.name, this.fb.control(field.value, validators));
|
35
|
+
});
|
36
|
+
group.groups?.forEach((subGroup) => {
|
37
|
+
this.buildFormGroup(subGroup);
|
38
|
+
});
|
39
|
+
}
|
40
|
+
getErrorMessage(field) {
|
41
|
+
if (this.form.get(field.name)?.hasError('required')) {
|
42
|
+
return (field.errorText ||
|
43
|
+
`${field.label} ${this.errorMessages[this.language].required}`);
|
44
|
+
}
|
45
|
+
return '';
|
46
|
+
}
|
47
|
+
onSubmit() {
|
48
|
+
this.form.markAllAsTouched();
|
49
|
+
if (this.form.valid) {
|
50
|
+
this.formSubmit.emit(this.form.value);
|
51
|
+
}
|
52
|
+
}
|
53
|
+
onClear() {
|
54
|
+
this.form.reset();
|
55
|
+
}
|
56
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTFormBuilderComponent, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
57
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: PTFormBuilderComponent, selector: "pt-form-builder", inputs: { mainGroup: "mainGroup", buttons: "buttons", title: "title", titleStyle: "titleStyle", inputWidth: "inputWidth", language: "language" }, outputs: { formSubmit: "formSubmit" }, ngImport: i0, template: "<div *ngIf=\"title\" [ngStyle]=\"titleStyle\" class=\"form-title\">{{ title }}</div>\n<form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\">\n <ng-container *ngFor=\"let field of mainGroup.fields\">\n <pt-dynamic-form-field\n [field]=\"field\"\n [form]=\"form\"\n [inputWidth]=\"inputWidth\"\n ></pt-dynamic-form-field>\n </ng-container>\n\n <ng-container *ngFor=\"let group of mainGroup.groups\">\n <div class=\"form-field-group\" [ngStyle]=\"{ width: group.width || '100%' }\">\n <ng-container *ngFor=\"let field of group.fields\">\n <pt-dynamic-form-field\n [field]=\"field\"\n [form]=\"form\"\n class=\"flex-item\"\n ></pt-dynamic-form-field>\n </ng-container>\n </div>\n </ng-container>\n\n <div class=\"button-group\">\n <button\n *ngFor=\"let button of buttons\"\n type=\"button\"\n pButton\n [label]=\"button.text\"\n [icon]=\"button.icon || ''\"\n [class]=\"button.color\"\n (click)=\"\n button.isSubmit\n ? onSubmit()\n : button.isClear\n ? onClear()\n : button.action\n ? button.action()\n : null\n \"\n ></button>\n </div>\n</form>\n", styles: [".form-title{text-align:center;margin-bottom:1rem;font-size:1.5rem;font-weight:700}.form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}::ng-deep .p-inputtext,::ng-deep .p-inputtextarea,::ng-deep .p-calendar,::ng-deep .p-inputnumber,::ng-deep .p-multiselect,::ng-deep .p-dropdown{width:100%!important}::ng-deep .p-inputnumber,::ng-deep p-inputnumber{display:flex!important}.button-group{display:flex;gap:1rem;margin-top:1rem;justify-content:space-between}.button-group button{flex:1;display:flex;align-items:center;justify-content:center}.button-group button i{margin-right:.5rem}.button-group button.p-button-primary{background-color:#007bff;color:#fff}.button-group button.p-button-secondary{background-color:#6c757d;color:#fff}.button-group button.p-button-success{background-color:#28a745;color:#fff}.button-group button:hover{opacity:.9}.form-field-group{display:flex;gap:1rem}.form-field-group .flex-item{flex:1}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i4.PTDynamicFormFieldComponent, selector: "pt-dynamic-form-field", inputs: ["field", "form", "inputWidth"] }] }); }
|
58
|
+
}
|
59
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTFormBuilderComponent, decorators: [{
|
60
|
+
type: Component,
|
61
|
+
args: [{ selector: 'pt-form-builder', template: "<div *ngIf=\"title\" [ngStyle]=\"titleStyle\" class=\"form-title\">{{ title }}</div>\n<form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\">\n <ng-container *ngFor=\"let field of mainGroup.fields\">\n <pt-dynamic-form-field\n [field]=\"field\"\n [form]=\"form\"\n [inputWidth]=\"inputWidth\"\n ></pt-dynamic-form-field>\n </ng-container>\n\n <ng-container *ngFor=\"let group of mainGroup.groups\">\n <div class=\"form-field-group\" [ngStyle]=\"{ width: group.width || '100%' }\">\n <ng-container *ngFor=\"let field of group.fields\">\n <pt-dynamic-form-field\n [field]=\"field\"\n [form]=\"form\"\n class=\"flex-item\"\n ></pt-dynamic-form-field>\n </ng-container>\n </div>\n </ng-container>\n\n <div class=\"button-group\">\n <button\n *ngFor=\"let button of buttons\"\n type=\"button\"\n pButton\n [label]=\"button.text\"\n [icon]=\"button.icon || ''\"\n [class]=\"button.color\"\n (click)=\"\n button.isSubmit\n ? onSubmit()\n : button.isClear\n ? onClear()\n : button.action\n ? button.action()\n : null\n \"\n ></button>\n </div>\n</form>\n", styles: [".form-title{text-align:center;margin-bottom:1rem;font-size:1.5rem;font-weight:700}.form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}::ng-deep .p-inputtext,::ng-deep .p-inputtextarea,::ng-deep .p-calendar,::ng-deep .p-inputnumber,::ng-deep .p-multiselect,::ng-deep .p-dropdown{width:100%!important}::ng-deep .p-inputnumber,::ng-deep p-inputnumber{display:flex!important}.button-group{display:flex;gap:1rem;margin-top:1rem;justify-content:space-between}.button-group button{flex:1;display:flex;align-items:center;justify-content:center}.button-group button i{margin-right:.5rem}.button-group button.p-button-primary{background-color:#007bff;color:#fff}.button-group button.p-button-secondary{background-color:#6c757d;color:#fff}.button-group button.p-button-success{background-color:#28a745;color:#fff}.button-group button:hover{opacity:.9}.form-field-group{display:flex;gap:1rem}.form-field-group .flex-item{flex:1}\n"] }]
|
62
|
+
}], ctorParameters: () => [{ type: i1.FormBuilder }], propDecorators: { mainGroup: [{
|
63
|
+
type: Input
|
64
|
+
}], buttons: [{
|
65
|
+
type: Input
|
66
|
+
}], title: [{
|
67
|
+
type: Input
|
68
|
+
}], titleStyle: [{
|
69
|
+
type: Input
|
70
|
+
}], inputWidth: [{
|
71
|
+
type: Input
|
72
|
+
}], language: [{
|
73
|
+
type: Input
|
74
|
+
}], formSubmit: [{
|
75
|
+
type: Output
|
76
|
+
}] } });
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtZm9ybS1idWlsZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtZm9ybS1idWlsZGVyL3B0LWZvcm0tYnVpbGRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wcmltZS10b29scy9zcmMvbGliL3B0LWZvcm0tYnVpbGRlci9wdC1mb3JtLWJ1aWxkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXBFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7QUFPbEUsTUFBTSxPQUFPLHNCQUFzQjtJQXFCakMsWUFBb0IsRUFBZTtRQUFmLE9BQUUsR0FBRixFQUFFLENBQWE7UUFwQjFCLGNBQVMsR0FBbUIsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUN2RCxZQUFPLEdBQWlCLEVBQUUsQ0FBQztRQUczQixlQUFVLEdBQVcsTUFBTSxDQUFDO1FBQzVCLGFBQVEsR0FBZ0IsSUFBSSxDQUFDO1FBQzVCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBMEIsQ0FBQztRQUdsRSxzQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQUU5QixrQkFBYSxHQUFHO1lBQ3RCLEVBQUUsRUFBRTtnQkFDRixRQUFRLEVBQUUsYUFBYTthQUN4QjtZQUNELEVBQUUsRUFBRTtnQkFDRixRQUFRLEVBQUUsWUFBWTthQUN2QjtTQUNGLENBQUM7UUFHQSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUFxQjtRQUNsQyxLQUFLLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQzlCLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDL0QsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQ2xCLEtBQUssQ0FBQyxJQUFJLEVBQ1YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FDekMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNqQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFnQjtRQUM5QixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUNwRCxPQUFPLENBQ0wsS0FBSyxDQUFDLFNBQVM7Z0JBQ2YsR0FBRyxLQUFLLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUMvRCxDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDN0IsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNwQixDQUFDOytHQTlEVSxzQkFBc0I7bUdBQXRCLHNCQUFzQixnUENabkMscXRDQTBDQTs7NEZEOUJhLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxpQkFBaUI7Z0ZBS2xCLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDSSxVQUFVO3NCQUFuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3JtQnVpbGRlciwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZvcm1GaWVsZCB9IGZyb20gJy4uL21vZGVscy9mb3JtLWZpZWxkLm1vZGVsJztcbmltcG9ydCB7IEZvcm1GaWVsZEdyb3VwIH0gZnJvbSAnLi4vbW9kZWxzL2Zvcm0tZmllbGQtZ3JvdXAubW9kZWwnO1xuaW1wb3J0IHsgRm9ybUJ1dHRvbiB9IGZyb20gJy4uL21vZGVscy9mb3JtLWJ1dHRvbi5tb2RlbCc7XG5pbXBvcnQgeyBGb3JtSW5wdXRUeXBlRW51bSB9IGZyb20gJy4uL2VudW1zL2Zvcm0taW5wdXQtdHlwZS5lbnVtJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHQtZm9ybS1idWlsZGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3B0LWZvcm0tYnVpbGRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3B0LWZvcm0tYnVpbGRlci5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFBURm9ybUJ1aWxkZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBtYWluR3JvdXA6IEZvcm1GaWVsZEdyb3VwID0geyBmaWVsZHM6IFtdLCBncm91cHM6IFtdIH07XG4gIEBJbnB1dCgpIGJ1dHRvbnM6IEZvcm1CdXR0b25bXSA9IFtdO1xuICBASW5wdXQoKSB0aXRsZT86IHN0cmluZztcbiAgQElucHV0KCkgdGl0bGVTdHlsZT86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIEBJbnB1dCgpIGlucHV0V2lkdGg6IHN0cmluZyA9ICcxMDAlJztcbiAgQElucHV0KCkgbGFuZ3VhZ2U6ICdlbicgfCAnZnInID0gJ2VuJztcbiAgQE91dHB1dCgpIGZvcm1TdWJtaXQgPSBuZXcgRXZlbnRFbWl0dGVyPHsgW2tleTogc3RyaW5nXTogYW55IH0+KCk7XG4gIGZvcm06IEZvcm1Hcm91cDtcblxuICBGb3JtSW5wdXRUeXBlRW51bSA9IEZvcm1JbnB1dFR5cGVFbnVtO1xuXG4gIHByaXZhdGUgZXJyb3JNZXNzYWdlcyA9IHtcbiAgICBlbjoge1xuICAgICAgcmVxdWlyZWQ6ICdpcyByZXF1aXJlZCcsXG4gICAgfSxcbiAgICBmcjoge1xuICAgICAgcmVxdWlyZWQ6ICdlc3QgcmVxdWlzJyxcbiAgICB9LFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyKSB7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7fSk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmJ1aWxkRm9ybUdyb3VwKHRoaXMubWFpbkdyb3VwKTtcbiAgfVxuXG4gIGJ1aWxkRm9ybUdyb3VwKGdyb3VwOiBGb3JtRmllbGRHcm91cCkge1xuICAgIGdyb3VwLmZpZWxkcz8uZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICAgIGNvbnN0IHZhbGlkYXRvcnMgPSBmaWVsZC5yZXF1aXJlZCA/IFtWYWxpZGF0b3JzLnJlcXVpcmVkXSA6IFtdO1xuICAgICAgdGhpcy5mb3JtLmFkZENvbnRyb2woXG4gICAgICAgIGZpZWxkLm5hbWUsXG4gICAgICAgIHRoaXMuZmIuY29udHJvbChmaWVsZC52YWx1ZSwgdmFsaWRhdG9ycylcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICBncm91cC5ncm91cHM/LmZvckVhY2goKHN1Ykdyb3VwKSA9PiB7XG4gICAgICB0aGlzLmJ1aWxkRm9ybUdyb3VwKHN1Ykdyb3VwKTtcbiAgICB9KTtcbiAgfVxuXG4gIGdldEVycm9yTWVzc2FnZShmaWVsZDogRm9ybUZpZWxkKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5mb3JtLmdldChmaWVsZC5uYW1lKT8uaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGZpZWxkLmVycm9yVGV4dCB8fFxuICAgICAgICBgJHtmaWVsZC5sYWJlbH0gJHt0aGlzLmVycm9yTWVzc2FnZXNbdGhpcy5sYW5ndWFnZV0ucmVxdWlyZWR9YFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgb25TdWJtaXQoKSB7XG4gICAgdGhpcy5mb3JtLm1hcmtBbGxBc1RvdWNoZWQoKTtcbiAgICBpZiAodGhpcy5mb3JtLnZhbGlkKSB7XG4gICAgICB0aGlzLmZvcm1TdWJtaXQuZW1pdCh0aGlzLmZvcm0udmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2xlYXIoKSB7XG4gICAgdGhpcy5mb3JtLnJlc2V0KCk7XG4gIH1cbn1cbiIsIjxkaXYgKm5nSWY9XCJ0aXRsZVwiIFtuZ1N0eWxlXT1cInRpdGxlU3R5bGVcIiBjbGFzcz1cImZvcm0tdGl0bGVcIj57eyB0aXRsZSB9fTwvZGl2PlxuPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZmllbGQgb2YgbWFpbkdyb3VwLmZpZWxkc1wiPlxuICAgIDxwdC1keW5hbWljLWZvcm0tZmllbGRcbiAgICAgIFtmaWVsZF09XCJmaWVsZFwiXG4gICAgICBbZm9ybV09XCJmb3JtXCJcbiAgICAgIFtpbnB1dFdpZHRoXT1cImlucHV0V2lkdGhcIlxuICAgID48L3B0LWR5bmFtaWMtZm9ybS1maWVsZD5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZ3JvdXAgb2YgbWFpbkdyb3VwLmdyb3Vwc1wiPlxuICAgIDxkaXYgY2xhc3M9XCJmb3JtLWZpZWxkLWdyb3VwXCIgW25nU3R5bGVdPVwieyB3aWR0aDogZ3JvdXAud2lkdGggfHwgJzEwMCUnIH1cIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGZpZWxkIG9mIGdyb3VwLmZpZWxkc1wiPlxuICAgICAgICA8cHQtZHluYW1pYy1mb3JtLWZpZWxkXG4gICAgICAgICAgW2ZpZWxkXT1cImZpZWxkXCJcbiAgICAgICAgICBbZm9ybV09XCJmb3JtXCJcbiAgICAgICAgICBjbGFzcz1cImZsZXgtaXRlbVwiXG4gICAgICAgID48L3B0LWR5bmFtaWMtZm9ybS1maWVsZD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8ZGl2IGNsYXNzPVwiYnV0dG9uLWdyb3VwXCI+XG4gICAgPGJ1dHRvblxuICAgICAgKm5nRm9yPVwibGV0IGJ1dHRvbiBvZiBidXR0b25zXCJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgcEJ1dHRvblxuICAgICAgW2xhYmVsXT1cImJ1dHRvbi50ZXh0XCJcbiAgICAgIFtpY29uXT1cImJ1dHRvbi5pY29uIHx8ICcnXCJcbiAgICAgIFtjbGFzc109XCJidXR0b24uY29sb3JcIlxuICAgICAgKGNsaWNrKT1cIlxuICAgICAgICBidXR0b24uaXNTdWJtaXRcbiAgICAgICAgICA/IG9uU3VibWl0KClcbiAgICAgICAgICA6IGJ1dHRvbi5pc0NsZWFyXG4gICAgICAgICAgPyBvbkNsZWFyKClcbiAgICAgICAgICA6IGJ1dHRvbi5hY3Rpb25cbiAgICAgICAgICA/IGJ1dHRvbi5hY3Rpb24oKVxuICAgICAgICAgIDogbnVsbFxuICAgICAgXCJcbiAgICA+PC9idXR0b24+XG4gIDwvZGl2PlxuPC9mb3JtPlxuIl19
|
@@ -0,0 +1,32 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
4
|
+
import { PTFormBuilderComponent } from './pt-form-builder.component';
|
5
|
+
import { ButtonModule } from 'primeng/button';
|
6
|
+
import { PTDynamicFormFieldModule } from './pt-dynamic-form-field/pt-dynamic-form-field-module';
|
7
|
+
import * as i0 from "@angular/core";
|
8
|
+
export class PTFormBuilderModule {
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTFormBuilderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.11", ngImport: i0, type: PTFormBuilderModule, declarations: [PTFormBuilderComponent], imports: [CommonModule,
|
11
|
+
ReactiveFormsModule,
|
12
|
+
ButtonModule,
|
13
|
+
PTDynamicFormFieldModule], exports: [PTFormBuilderComponent] }); }
|
14
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTFormBuilderModule, imports: [CommonModule,
|
15
|
+
ReactiveFormsModule,
|
16
|
+
ButtonModule,
|
17
|
+
PTDynamicFormFieldModule] }); }
|
18
|
+
}
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTFormBuilderModule, decorators: [{
|
20
|
+
type: NgModule,
|
21
|
+
args: [{
|
22
|
+
declarations: [PTFormBuilderComponent],
|
23
|
+
imports: [
|
24
|
+
CommonModule,
|
25
|
+
ReactiveFormsModule,
|
26
|
+
ButtonModule,
|
27
|
+
PTDynamicFormFieldModule,
|
28
|
+
],
|
29
|
+
exports: [PTFormBuilderComponent],
|
30
|
+
}]
|
31
|
+
}] });
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtZm9ybS1idWlsZGVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtZm9ybS1idWlsZGVyL3B0LWZvcm0tYnVpbGRlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOztBQVloRyxNQUFNLE9BQU8sbUJBQW1COytHQUFuQixtQkFBbUI7Z0hBQW5CLG1CQUFtQixpQkFUZixzQkFBc0IsYUFFbkMsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixZQUFZO1lBQ1osd0JBQXdCLGFBRWhCLHNCQUFzQjtnSEFFckIsbUJBQW1CLFlBUDVCLFlBQVk7WUFDWixtQkFBbUI7WUFDbkIsWUFBWTtZQUNaLHdCQUF3Qjs7NEZBSWYsbUJBQW1CO2tCQVYvQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUN0QyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLFlBQVk7d0JBQ1osd0JBQXdCO3FCQUN6QjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBQVEZvcm1CdWlsZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9wdC1mb3JtLWJ1aWxkZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYnV0dG9uJztcbmltcG9ydCB7IFBURHluYW1pY0Zvcm1GaWVsZE1vZHVsZSB9IGZyb20gJy4vcHQtZHluYW1pYy1mb3JtLWZpZWxkL3B0LWR5bmFtaWMtZm9ybS1maWVsZC1tb2R1bGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtQVEZvcm1CdWlsZGVyQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEJ1dHRvbk1vZHVsZSxcbiAgICBQVER5bmFtaWNGb3JtRmllbGRNb2R1bGUsXG4gIF0sXG4gIGV4cG9ydHM6IFtQVEZvcm1CdWlsZGVyQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgUFRGb3JtQnVpbGRlck1vZHVsZSB7fVxuIl19
|
@@ -0,0 +1,3 @@
|
|
1
|
+
export * from './pt-form-builder.component';
|
2
|
+
export * from './pt-form-builder.module';
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtZm9ybS1idWlsZGVyL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDBCQUEwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wdC1mb3JtLWJ1aWxkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcHQtZm9ybS1idWlsZGVyLm1vZHVsZSc7XG4iXX0=
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export * from './public-api';
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wcmltZS10b29scy9zcmMvbGliL3B0LW11bHRpLXNlbGVjdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
@@ -0,0 +1,57 @@
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
2
|
+
import { FormControl, Validators } from '@angular/forms';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
import * as i1 from "@angular/common";
|
5
|
+
import * as i2 from "@angular/forms";
|
6
|
+
import * as i3 from "primeng/multiselect";
|
7
|
+
export class PTMultiSelectComponent {
|
8
|
+
ngOnInit() {
|
9
|
+
this.setupControl();
|
10
|
+
}
|
11
|
+
setupControl() {
|
12
|
+
let control = this.formGroup.get(this.formField.name);
|
13
|
+
if (!control) {
|
14
|
+
control = new FormControl(this.formField.value || []);
|
15
|
+
this.formGroup.addControl(this.formField.name, control);
|
16
|
+
}
|
17
|
+
const validators = this.getValidators();
|
18
|
+
control.setValidators(validators);
|
19
|
+
// Manage the disabled state using form control
|
20
|
+
setTimeout(() => {
|
21
|
+
if (this.formField.disabled !== undefined) {
|
22
|
+
if (this.formField.disabled) {
|
23
|
+
control.disable({ emitEvent: false });
|
24
|
+
}
|
25
|
+
else {
|
26
|
+
control.enable({ emitEvent: false });
|
27
|
+
}
|
28
|
+
}
|
29
|
+
control.updateValueAndValidity({ emitEvent: false });
|
30
|
+
});
|
31
|
+
}
|
32
|
+
getValidators() {
|
33
|
+
const validators = [];
|
34
|
+
if (this.formField.required) {
|
35
|
+
validators.push(Validators.required);
|
36
|
+
}
|
37
|
+
return validators;
|
38
|
+
}
|
39
|
+
getErrorMessage() {
|
40
|
+
const control = this.formGroup.get(this.formField.name);
|
41
|
+
if (control?.hasError('required')) {
|
42
|
+
return this.formField.errorText || `${this.formField.label} is required`;
|
43
|
+
}
|
44
|
+
return '';
|
45
|
+
}
|
46
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTMultiSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
47
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: PTMultiSelectComponent, selector: "pt-multi-select", inputs: { formGroup: "formGroup", formField: "formField" }, ngImport: i0, template: "<div\n [formGroup]=\"formGroup\"\n class=\"form-field\"\n [ngStyle]=\"{ width: formField.width || '100%' }\"\n *ngIf=\"!formField.hidden\"\n>\n <label *ngIf=\"formField.label\">{{ formField.label }}</label>\n <p-multiSelect\n [formControlName]=\"formField.name\"\n [options]=\"formField.options\"\n [placeholder]=\"formField.placeholder || 'Select options'\"\n optionLabel=\"label\"\n ></p-multiSelect>\n <div\n *ngIf=\"\n formGroup.get(formField.name)?.invalid &&\n formGroup.get(formField.name)?.touched\n \"\n >\n <small class=\"p-error\">{{ getErrorMessage() }}</small>\n </div>\n</div>\n", styles: [".form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }] }); }
|
48
|
+
}
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTMultiSelectComponent, decorators: [{
|
50
|
+
type: Component,
|
51
|
+
args: [{ selector: 'pt-multi-select', template: "<div\n [formGroup]=\"formGroup\"\n class=\"form-field\"\n [ngStyle]=\"{ width: formField.width || '100%' }\"\n *ngIf=\"!formField.hidden\"\n>\n <label *ngIf=\"formField.label\">{{ formField.label }}</label>\n <p-multiSelect\n [formControlName]=\"formField.name\"\n [options]=\"formField.options\"\n [placeholder]=\"formField.placeholder || 'Select options'\"\n optionLabel=\"label\"\n ></p-multiSelect>\n <div\n *ngIf=\"\n formGroup.get(formField.name)?.invalid &&\n formGroup.get(formField.name)?.touched\n \"\n >\n <small class=\"p-error\">{{ getErrorMessage() }}</small>\n </div>\n</div>\n", styles: [".form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}\n"] }]
|
52
|
+
}], propDecorators: { formGroup: [{
|
53
|
+
type: Input
|
54
|
+
}], formField: [{
|
55
|
+
type: Input
|
56
|
+
}] } });
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtbXVsdGktc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtbXVsdGktc2VsZWN0L3B0LW11bHRpLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wcmltZS10b29scy9zcmMvbGliL3B0LW11bHRpLXNlbGVjdC9wdC1tdWx0aS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFhLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFRcEUsTUFBTSxPQUFPLHNCQUFzQjtJQUlqQyxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQWdCLENBQUM7UUFFckUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsT0FBTyxHQUFHLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzFELENBQUM7UUFFRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDeEMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVsQywrQ0FBK0M7UUFDL0MsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQzFDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDNUIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO2dCQUN4QyxDQUFDO3FCQUFNLENBQUM7b0JBQ04sT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO2dCQUN2QyxDQUFDO1lBQ0gsQ0FBQztZQUNELE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGFBQWE7UUFDbkIsTUFBTSxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1QixVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN2QyxDQUFDO1FBQ0QsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hELElBQUksT0FBTyxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ2xDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssY0FBYyxDQUFDO1FBQzNFLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7K0dBOUNVLHNCQUFzQjttR0FBdEIsc0JBQXNCLG1IQ1RuQywybkJBc0JBOzs0RkRiYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsaUJBQWlCOzhCQUtsQixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGb3JtTXVsdGlTZWxlY3RGaWVsZCB9IGZyb20gJy4uL21vZGVscy9mb3JtLW11bHRpLXNlbGVjdC5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3B0LW11bHRpLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wdC1tdWx0aS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wdC1tdWx0aS1zZWxlY3QuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQVE11bHRpU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZm9ybUdyb3VwITogRm9ybUdyb3VwO1xuICBASW5wdXQoKSBmb3JtRmllbGQhOiBGb3JtTXVsdGlTZWxlY3RGaWVsZDtcblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnNldHVwQ29udHJvbCgpO1xuICB9XG5cbiAgc2V0dXBDb250cm9sKCkge1xuICAgIGxldCBjb250cm9sID0gdGhpcy5mb3JtR3JvdXAuZ2V0KHRoaXMuZm9ybUZpZWxkLm5hbWUpIGFzIEZvcm1Db250cm9sO1xuXG4gICAgaWYgKCFjb250cm9sKSB7XG4gICAgICBjb250cm9sID0gbmV3IEZvcm1Db250cm9sKHRoaXMuZm9ybUZpZWxkLnZhbHVlIHx8IFtdKTtcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmFkZENvbnRyb2wodGhpcy5mb3JtRmllbGQubmFtZSwgY29udHJvbCk7XG4gICAgfVxuXG4gICAgY29uc3QgdmFsaWRhdG9ycyA9IHRoaXMuZ2V0VmFsaWRhdG9ycygpO1xuICAgIGNvbnRyb2wuc2V0VmFsaWRhdG9ycyh2YWxpZGF0b3JzKTtcblxuICAgIC8vIE1hbmFnZSB0aGUgZGlzYWJsZWQgc3RhdGUgdXNpbmcgZm9ybSBjb250cm9sXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5mb3JtRmllbGQuZGlzYWJsZWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAodGhpcy5mb3JtRmllbGQuZGlzYWJsZWQpIHtcbiAgICAgICAgICBjb250cm9sLmRpc2FibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnRyb2wuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0VmFsaWRhdG9ycygpIHtcbiAgICBjb25zdCB2YWxpZGF0b3JzID0gW107XG4gICAgaWYgKHRoaXMuZm9ybUZpZWxkLnJlcXVpcmVkKSB7XG4gICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgfVxuICAgIHJldHVybiB2YWxpZGF0b3JzO1xuICB9XG5cbiAgZ2V0RXJyb3JNZXNzYWdlKCk6IHN0cmluZyB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZm9ybUdyb3VwLmdldCh0aGlzLmZvcm1GaWVsZC5uYW1lKTtcbiAgICBpZiAoY29udHJvbD8uaGFzRXJyb3IoJ3JlcXVpcmVkJykpIHtcbiAgICAgIHJldHVybiB0aGlzLmZvcm1GaWVsZC5lcnJvclRleHQgfHwgYCR7dGhpcy5mb3JtRmllbGQubGFiZWx9IGlzIHJlcXVpcmVkYDtcbiAgICB9XG4gICAgcmV0dXJuICcnO1xuICB9XG59XG4iLCI8ZGl2XG4gIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCJcbiAgY2xhc3M9XCJmb3JtLWZpZWxkXCJcbiAgW25nU3R5bGVdPVwieyB3aWR0aDogZm9ybUZpZWxkLndpZHRoIHx8ICcxMDAlJyB9XCJcbiAgKm5nSWY9XCIhZm9ybUZpZWxkLmhpZGRlblwiXG4+XG4gIDxsYWJlbCAqbmdJZj1cImZvcm1GaWVsZC5sYWJlbFwiPnt7IGZvcm1GaWVsZC5sYWJlbCB9fTwvbGFiZWw+XG4gIDxwLW11bHRpU2VsZWN0XG4gICAgW2Zvcm1Db250cm9sTmFtZV09XCJmb3JtRmllbGQubmFtZVwiXG4gICAgW29wdGlvbnNdPVwiZm9ybUZpZWxkLm9wdGlvbnNcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJmb3JtRmllbGQucGxhY2Vob2xkZXIgfHwgJ1NlbGVjdCBvcHRpb25zJ1wiXG4gICAgb3B0aW9uTGFiZWw9XCJsYWJlbFwiXG4gID48L3AtbXVsdGlTZWxlY3Q+XG4gIDxkaXZcbiAgICAqbmdJZj1cIlxuICAgICAgZm9ybUdyb3VwLmdldChmb3JtRmllbGQubmFtZSk/LmludmFsaWQgJiZcbiAgICAgIGZvcm1Hcm91cC5nZXQoZm9ybUZpZWxkLm5hbWUpPy50b3VjaGVkXG4gICAgXCJcbiAgPlxuICAgIDxzbWFsbCBjbGFzcz1cInAtZXJyb3JcIj57eyBnZXRFcnJvck1lc3NhZ2UoKSB9fTwvc21hbGw+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
4
|
+
import { MultiSelectModule } from 'primeng/multiselect'; // PrimeNG module
|
5
|
+
import { PTMultiSelectComponent } from './pt-multi-select.component';
|
6
|
+
import * as i0 from "@angular/core";
|
7
|
+
export class PTMultiSelectModule {
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTMultiSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
9
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.11", ngImport: i0, type: PTMultiSelectModule, declarations: [PTMultiSelectComponent], imports: [CommonModule, ReactiveFormsModule, MultiSelectModule], exports: [PTMultiSelectComponent] }); }
|
10
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTMultiSelectModule, imports: [CommonModule, ReactiveFormsModule, MultiSelectModule] }); }
|
11
|
+
}
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTMultiSelectModule, decorators: [{
|
13
|
+
type: NgModule,
|
14
|
+
args: [{
|
15
|
+
declarations: [PTMultiSelectComponent],
|
16
|
+
imports: [CommonModule, ReactiveFormsModule, MultiSelectModule],
|
17
|
+
exports: [PTMultiSelectComponent],
|
18
|
+
}]
|
19
|
+
}] });
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtbXVsdGktc2VsZWN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtbXVsdGktc2VsZWN0L3B0LW11bHRpLXNlbGVjdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUMsQ0FBQyxpQkFBaUI7QUFDMUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBT3JFLE1BQU0sT0FBTyxtQkFBbUI7K0dBQW5CLG1CQUFtQjtnSEFBbkIsbUJBQW1CLGlCQUpmLHNCQUFzQixhQUMzQixZQUFZLEVBQUUsbUJBQW1CLEVBQUUsaUJBQWlCLGFBQ3BELHNCQUFzQjtnSEFFckIsbUJBQW1CLFlBSHBCLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUI7OzRGQUduRCxtQkFBbUI7a0JBTC9CLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ3RDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsQ0FBQztvQkFDL0QsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTXVsdGlTZWxlY3RNb2R1bGUgfSBmcm9tICdwcmltZW5nL211bHRpc2VsZWN0JzsgLy8gUHJpbWVORyBtb2R1bGVcbmltcG9ydCB7IFBUTXVsdGlTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL3B0LW11bHRpLXNlbGVjdC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtQVE11bHRpU2VsZWN0Q29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgTXVsdGlTZWxlY3RNb2R1bGVdLFxuICBleHBvcnRzOiBbUFRNdWx0aVNlbGVjdENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFBUTXVsdGlTZWxlY3RNb2R1bGUge31cbiJdfQ==
|
@@ -0,0 +1,3 @@
|
|
1
|
+
export * from './pt-multi-select.component';
|
2
|
+
export * from './pt-multi-select.module';
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtbXVsdGktc2VsZWN0L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDBCQUEwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wdC1tdWx0aS1zZWxlY3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcHQtbXVsdGktc2VsZWN0Lm1vZHVsZSc7XG4iXX0=
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export * from './public-api';
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wcmltZS10b29scy9zcmMvbGliL3B0LW51bWJlci1pbnB1dC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
@@ -0,0 +1,88 @@
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
2
|
+
import { Validators, } from '@angular/forms';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
import * as i1 from "@angular/common";
|
5
|
+
import * as i2 from "@angular/forms";
|
6
|
+
import * as i3 from "primeng/inputgroup";
|
7
|
+
import * as i4 from "primeng/inputgroupaddon";
|
8
|
+
import * as i5 from "primeng/inputnumber";
|
9
|
+
export class PTNumberInputComponent {
|
10
|
+
ngOnInit() {
|
11
|
+
this.setupControl();
|
12
|
+
}
|
13
|
+
setupControl() {
|
14
|
+
const control = this.formGroup.get(this.formField.name);
|
15
|
+
if (control) {
|
16
|
+
const validators = this.getValidators();
|
17
|
+
control.setValidators(validators);
|
18
|
+
// Manage the disabled state directly
|
19
|
+
setTimeout(() => {
|
20
|
+
if (this.formField.disabled) {
|
21
|
+
control.disable({ emitEvent: false });
|
22
|
+
}
|
23
|
+
else {
|
24
|
+
control.enable({ emitEvent: false });
|
25
|
+
}
|
26
|
+
control.updateValueAndValidity({ emitEvent: false });
|
27
|
+
});
|
28
|
+
}
|
29
|
+
}
|
30
|
+
getValidators() {
|
31
|
+
const validators = [];
|
32
|
+
if (this.formField.required) {
|
33
|
+
validators.push(Validators.required);
|
34
|
+
}
|
35
|
+
if (this.formField.minValue !== undefined) {
|
36
|
+
const minValue = Number(this.formField.minValue);
|
37
|
+
if (!isNaN(minValue)) {
|
38
|
+
validators.push(Validators.min(minValue));
|
39
|
+
}
|
40
|
+
else {
|
41
|
+
console.error(`Invalid minValue: ${this.formField.minValue} is not a number.`);
|
42
|
+
}
|
43
|
+
}
|
44
|
+
if (this.formField.maxValue !== undefined) {
|
45
|
+
const maxValue = Number(this.formField.maxValue);
|
46
|
+
if (!isNaN(maxValue)) {
|
47
|
+
validators.push(Validators.max(maxValue));
|
48
|
+
}
|
49
|
+
else {
|
50
|
+
console.error(`Invalid maxValue: ${this.formField.maxValue} is not a number.`);
|
51
|
+
}
|
52
|
+
}
|
53
|
+
if (this.formField.inputValidation) {
|
54
|
+
validators.push(this.validateWithInputValidation(this.formField.inputValidation));
|
55
|
+
}
|
56
|
+
return validators;
|
57
|
+
}
|
58
|
+
validateWithInputValidation(inputValidation) {
|
59
|
+
return Validators.pattern(new RegExp(inputValidation));
|
60
|
+
}
|
61
|
+
getErrorMessage() {
|
62
|
+
const control = this.formGroup.get(this.formField.name);
|
63
|
+
if (control?.hasError('required')) {
|
64
|
+
return this.formField.errorText || `${this.formField.label} is required`;
|
65
|
+
}
|
66
|
+
else if (control?.hasError('min')) {
|
67
|
+
return `${this.formField.label} must be at least ${this.formField.minValue}`;
|
68
|
+
}
|
69
|
+
else if (control?.hasError('max')) {
|
70
|
+
return `${this.formField.label} must be at most ${this.formField.maxValue}`;
|
71
|
+
}
|
72
|
+
else if (control?.hasError('pattern')) {
|
73
|
+
return `${this.formField.label} is invalid`;
|
74
|
+
}
|
75
|
+
return '';
|
76
|
+
}
|
77
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTNumberInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
78
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: PTNumberInputComponent, selector: "pt-number-input", inputs: { formGroup: "formGroup", formField: "formField" }, ngImport: i0, template: "<div\n [formGroup]=\"formGroup\"\n class=\"form-field\"\n [ngStyle]=\"{ width: formField.width || '100%' }\"\n *ngIf=\"!formField.hidden\"\n>\n <label *ngIf=\"formField.label\">{{ formField.label }}</label>\n <p-inputGroup>\n <ng-container\n *ngIf=\"!formField.iconPosition || formField.iconPosition === 'left'\"\n >\n <p-inputGroupAddon *ngIf=\"formField.iconClass || formField.currency\">\n <i *ngIf=\"formField.iconClass\" [ngClass]=\"formField.iconClass\"></i>\n <span *ngIf=\"!formField.iconClass && formField.currency\">\n {{ formField.currency }}\n </span>\n </p-inputGroupAddon>\n <p-inputNumber\n [formControlName]=\"formField.name\"\n mode=\"decimal\"\n [locale]=\"formField.numberFormat || undefined\"\n [useGrouping]=\"formField.numberFormat ? true : false\"\n [minFractionDigits]=\"formField.decimalDigits || 0\"\n [maxFractionDigits]=\"formField.decimalDigits || 0\"\n [placeholder]=\"formField.placeholder || ''\"\n ></p-inputNumber>\n </ng-container>\n <ng-container *ngIf=\"formField.iconPosition === 'right'\">\n <p-inputNumber\n [formControlName]=\"formField.name\"\n mode=\"decimal\"\n [locale]=\"formField.numberFormat || undefined\"\n [useGrouping]=\"formField.numberFormat ? true : false\"\n [minFractionDigits]=\"formField.decimalDigits || 0\"\n [maxFractionDigits]=\"formField.decimalDigits || 0\"\n [placeholder]=\"formField.placeholder || ''\"\n ></p-inputNumber>\n <p-inputGroupAddon *ngIf=\"formField.iconClass || formField.currency\">\n <i *ngIf=\"formField.iconClass\" [ngClass]=\"formField.iconClass\"></i>\n <span *ngIf=\"!formField.iconClass && formField.currency\">\n {{ formField.currency }}\n </span>\n </p-inputGroupAddon>\n </ng-container>\n </p-inputGroup>\n <div\n *ngIf=\"\n formGroup.get(formField.name)?.invalid &&\n formGroup.get(formField.name)?.touched\n \"\n >\n <small class=\"p-error\">{{ getErrorMessage() }}</small>\n </div>\n</div>\n", styles: [".form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3.InputGroup, selector: "p-inputGroup", inputs: ["style", "styleClass"] }, { kind: "component", type: i4.InputGroupAddon, selector: "p-inputGroupAddon", inputs: ["style", "styleClass"] }, { kind: "component", type: i5.InputNumber, selector: "p-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }] }); }
|
79
|
+
}
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTNumberInputComponent, decorators: [{
|
81
|
+
type: Component,
|
82
|
+
args: [{ selector: 'pt-number-input', template: "<div\n [formGroup]=\"formGroup\"\n class=\"form-field\"\n [ngStyle]=\"{ width: formField.width || '100%' }\"\n *ngIf=\"!formField.hidden\"\n>\n <label *ngIf=\"formField.label\">{{ formField.label }}</label>\n <p-inputGroup>\n <ng-container\n *ngIf=\"!formField.iconPosition || formField.iconPosition === 'left'\"\n >\n <p-inputGroupAddon *ngIf=\"formField.iconClass || formField.currency\">\n <i *ngIf=\"formField.iconClass\" [ngClass]=\"formField.iconClass\"></i>\n <span *ngIf=\"!formField.iconClass && formField.currency\">\n {{ formField.currency }}\n </span>\n </p-inputGroupAddon>\n <p-inputNumber\n [formControlName]=\"formField.name\"\n mode=\"decimal\"\n [locale]=\"formField.numberFormat || undefined\"\n [useGrouping]=\"formField.numberFormat ? true : false\"\n [minFractionDigits]=\"formField.decimalDigits || 0\"\n [maxFractionDigits]=\"formField.decimalDigits || 0\"\n [placeholder]=\"formField.placeholder || ''\"\n ></p-inputNumber>\n </ng-container>\n <ng-container *ngIf=\"formField.iconPosition === 'right'\">\n <p-inputNumber\n [formControlName]=\"formField.name\"\n mode=\"decimal\"\n [locale]=\"formField.numberFormat || undefined\"\n [useGrouping]=\"formField.numberFormat ? true : false\"\n [minFractionDigits]=\"formField.decimalDigits || 0\"\n [maxFractionDigits]=\"formField.decimalDigits || 0\"\n [placeholder]=\"formField.placeholder || ''\"\n ></p-inputNumber>\n <p-inputGroupAddon *ngIf=\"formField.iconClass || formField.currency\">\n <i *ngIf=\"formField.iconClass\" [ngClass]=\"formField.iconClass\"></i>\n <span *ngIf=\"!formField.iconClass && formField.currency\">\n {{ formField.currency }}\n </span>\n </p-inputGroupAddon>\n </ng-container>\n </p-inputGroup>\n <div\n *ngIf=\"\n formGroup.get(formField.name)?.invalid &&\n formGroup.get(formField.name)?.touched\n \"\n >\n <small class=\"p-error\">{{ getErrorMessage() }}</small>\n </div>\n</div>\n", styles: [".form-field{margin-bottom:1rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:700}\n"] }]
|
83
|
+
}], propDecorators: { formGroup: [{
|
84
|
+
type: Input
|
85
|
+
}], formField: [{
|
86
|
+
type: Input
|
87
|
+
}] } });
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtbnVtYmVyLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtbnVtYmVyLWlucHV0L3B0LW51bWJlci1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wcmltZS10b29scy9zcmMvbGliL3B0LW51bWJlci1pbnB1dC9wdC1udW1iZXItaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUVMLFVBQVUsR0FHWCxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBU3hCLE1BQU0sT0FBTyxzQkFBc0I7SUFJakMsUUFBUTtRQUNOLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsWUFBWTtRQUNWLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFnQixDQUFDO1FBQ3ZFLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDeEMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUVsQyxxQ0FBcUM7WUFDckMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7b0JBQzVCLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFDeEMsQ0FBQztxQkFBTSxDQUFDO29CQUNOLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztnQkFDdkMsQ0FBQztnQkFFRCxPQUFPLENBQUMsc0JBQXNCLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN2RCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRU8sYUFBYTtRQUNuQixNQUFNLFVBQVUsR0FBa0IsRUFBRSxDQUFDO1FBQ3JDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1QixVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN2QyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUMxQyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNqRCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQ3JCLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQzVDLENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLENBQUMsS0FBSyxDQUNYLHFCQUFxQixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsbUJBQW1CLENBQ2hFLENBQUM7WUFDSixDQUFDO1FBQ0gsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDMUMsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDakQsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUNyQixVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUM1QyxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sT0FBTyxDQUFDLEtBQUssQ0FDWCxxQkFBcUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLG1CQUFtQixDQUNoRSxDQUFDO1lBQ0osQ0FBQztRQUNILENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDbkMsVUFBVSxDQUFDLElBQUksQ0FDYixJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FDakUsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRU8sMkJBQTJCLENBQ2pDLGVBQW9DO1FBRXBDLE9BQU8sVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4RCxJQUFJLE9BQU8sRUFBRSxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUNsQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLGNBQWMsQ0FBQztRQUMzRSxDQUFDO2FBQU0sSUFBSSxPQUFPLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDcEMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxxQkFBcUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMvRSxDQUFDO2FBQU0sSUFBSSxPQUFPLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDcEMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxvQkFBb0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM5RSxDQUFDO2FBQU0sSUFBSSxPQUFPLEVBQUUsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDeEMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxhQUFhLENBQUM7UUFDOUMsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzsrR0E5RVUsc0JBQXNCO21HQUF0QixzQkFBc0IsbUhDZm5DLHVsRUFzREE7OzRGRHZDYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsaUJBQWlCOzhCQUtsQixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEZvcm1Hcm91cCxcbiAgVmFsaWRhdG9ycyxcbiAgVmFsaWRhdG9yRm4sXG4gIEZvcm1Db250cm9sLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBJbnB1dFZhbGlkYXRpb25FbnVtIH0gZnJvbSAnLi4vZW51bXMvaW5wdXQtdmFsaWRhdGlvbi5lbnVtJztcbmltcG9ydCB7IEZvcm1OdW1iZXJGaWVsZCB9IGZyb20gJy4uL21vZGVscy9mb3JtLW51bWJlci1maWVsZC5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3B0LW51bWJlci1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wdC1udW1iZXItaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wdC1udW1iZXItaW5wdXQuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQVE51bWJlcklucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgZm9ybUdyb3VwITogRm9ybUdyb3VwO1xuICBASW5wdXQoKSBmb3JtRmllbGQhOiBGb3JtTnVtYmVyRmllbGQ7XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZXR1cENvbnRyb2woKTtcbiAgfVxuXG4gIHNldHVwQ29udHJvbCgpIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtR3JvdXAuZ2V0KHRoaXMuZm9ybUZpZWxkLm5hbWUpIGFzIEZvcm1Db250cm9sO1xuICAgIGlmIChjb250cm9sKSB7XG4gICAgICBjb25zdCB2YWxpZGF0b3JzID0gdGhpcy5nZXRWYWxpZGF0b3JzKCk7XG4gICAgICBjb250cm9sLnNldFZhbGlkYXRvcnModmFsaWRhdG9ycyk7XG5cbiAgICAgIC8vIE1hbmFnZSB0aGUgZGlzYWJsZWQgc3RhdGUgZGlyZWN0bHlcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5mb3JtRmllbGQuZGlzYWJsZWQpIHtcbiAgICAgICAgICBjb250cm9sLmRpc2FibGUoeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnRyb2wuZW5hYmxlKHsgZW1pdEV2ZW50OiBmYWxzZSB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFZhbGlkYXRvcnMoKTogVmFsaWRhdG9yRm5bXSB7XG4gICAgY29uc3QgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXSA9IFtdO1xuICAgIGlmICh0aGlzLmZvcm1GaWVsZC5yZXF1aXJlZCkge1xuICAgICAgdmFsaWRhdG9ycy5wdXNoKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5mb3JtRmllbGQubWluVmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uc3QgbWluVmFsdWUgPSBOdW1iZXIodGhpcy5mb3JtRmllbGQubWluVmFsdWUpO1xuICAgICAgaWYgKCFpc05hTihtaW5WYWx1ZSkpIHtcbiAgICAgICAgdmFsaWRhdG9ycy5wdXNoKFZhbGlkYXRvcnMubWluKG1pblZhbHVlKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgIGBJbnZhbGlkIG1pblZhbHVlOiAke3RoaXMuZm9ybUZpZWxkLm1pblZhbHVlfSBpcyBub3QgYSBudW1iZXIuYFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAodGhpcy5mb3JtRmllbGQubWF4VmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgY29uc3QgbWF4VmFsdWUgPSBOdW1iZXIodGhpcy5mb3JtRmllbGQubWF4VmFsdWUpO1xuICAgICAgaWYgKCFpc05hTihtYXhWYWx1ZSkpIHtcbiAgICAgICAgdmFsaWRhdG9ycy5wdXNoKFZhbGlkYXRvcnMubWF4KG1heFZhbHVlKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgIGBJbnZhbGlkIG1heFZhbHVlOiAke3RoaXMuZm9ybUZpZWxkLm1heFZhbHVlfSBpcyBub3QgYSBudW1iZXIuYFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAodGhpcy5mb3JtRmllbGQuaW5wdXRWYWxpZGF0aW9uKSB7XG4gICAgICB2YWxpZGF0b3JzLnB1c2goXG4gICAgICAgIHRoaXMudmFsaWRhdGVXaXRoSW5wdXRWYWxpZGF0aW9uKHRoaXMuZm9ybUZpZWxkLmlucHV0VmFsaWRhdGlvbilcbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiB2YWxpZGF0b3JzO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZVdpdGhJbnB1dFZhbGlkYXRpb24oXG4gICAgaW5wdXRWYWxpZGF0aW9uOiBJbnB1dFZhbGlkYXRpb25FbnVtXG4gICk6IFZhbGlkYXRvckZuIHtcbiAgICByZXR1cm4gVmFsaWRhdG9ycy5wYXR0ZXJuKG5ldyBSZWdFeHAoaW5wdXRWYWxpZGF0aW9uKSk7XG4gIH1cblxuICBnZXRFcnJvck1lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtR3JvdXAuZ2V0KHRoaXMuZm9ybUZpZWxkLm5hbWUpO1xuICAgIGlmIChjb250cm9sPy5oYXNFcnJvcigncmVxdWlyZWQnKSkge1xuICAgICAgcmV0dXJuIHRoaXMuZm9ybUZpZWxkLmVycm9yVGV4dCB8fCBgJHt0aGlzLmZvcm1GaWVsZC5sYWJlbH0gaXMgcmVxdWlyZWRgO1xuICAgIH0gZWxzZSBpZiAoY29udHJvbD8uaGFzRXJyb3IoJ21pbicpKSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5mb3JtRmllbGQubGFiZWx9IG11c3QgYmUgYXQgbGVhc3QgJHt0aGlzLmZvcm1GaWVsZC5taW5WYWx1ZX1gO1xuICAgIH0gZWxzZSBpZiAoY29udHJvbD8uaGFzRXJyb3IoJ21heCcpKSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5mb3JtRmllbGQubGFiZWx9IG11c3QgYmUgYXQgbW9zdCAke3RoaXMuZm9ybUZpZWxkLm1heFZhbHVlfWA7XG4gICAgfSBlbHNlIGlmIChjb250cm9sPy5oYXNFcnJvcigncGF0dGVybicpKSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5mb3JtRmllbGQubGFiZWx9IGlzIGludmFsaWRgO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cbn1cbiIsIjxkaXZcbiAgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIlxuICBjbGFzcz1cImZvcm0tZmllbGRcIlxuICBbbmdTdHlsZV09XCJ7IHdpZHRoOiBmb3JtRmllbGQud2lkdGggfHwgJzEwMCUnIH1cIlxuICAqbmdJZj1cIiFmb3JtRmllbGQuaGlkZGVuXCJcbj5cbiAgPGxhYmVsICpuZ0lmPVwiZm9ybUZpZWxkLmxhYmVsXCI+e3sgZm9ybUZpZWxkLmxhYmVsIH19PC9sYWJlbD5cbiAgPHAtaW5wdXRHcm91cD5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cIiFmb3JtRmllbGQuaWNvblBvc2l0aW9uIHx8IGZvcm1GaWVsZC5pY29uUG9zaXRpb24gPT09ICdsZWZ0J1wiXG4gICAgPlxuICAgICAgPHAtaW5wdXRHcm91cEFkZG9uICpuZ0lmPVwiZm9ybUZpZWxkLmljb25DbGFzcyB8fCBmb3JtRmllbGQuY3VycmVuY3lcIj5cbiAgICAgICAgPGkgKm5nSWY9XCJmb3JtRmllbGQuaWNvbkNsYXNzXCIgW25nQ2xhc3NdPVwiZm9ybUZpZWxkLmljb25DbGFzc1wiPjwvaT5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIhZm9ybUZpZWxkLmljb25DbGFzcyAmJiBmb3JtRmllbGQuY3VycmVuY3lcIj5cbiAgICAgICAgICB7eyBmb3JtRmllbGQuY3VycmVuY3kgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9wLWlucHV0R3JvdXBBZGRvbj5cbiAgICAgIDxwLWlucHV0TnVtYmVyXG4gICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiZm9ybUZpZWxkLm5hbWVcIlxuICAgICAgICBtb2RlPVwiZGVjaW1hbFwiXG4gICAgICAgIFtsb2NhbGVdPVwiZm9ybUZpZWxkLm51bWJlckZvcm1hdCB8fCB1bmRlZmluZWRcIlxuICAgICAgICBbdXNlR3JvdXBpbmddPVwiZm9ybUZpZWxkLm51bWJlckZvcm1hdCA/IHRydWUgOiBmYWxzZVwiXG4gICAgICAgIFttaW5GcmFjdGlvbkRpZ2l0c109XCJmb3JtRmllbGQuZGVjaW1hbERpZ2l0cyB8fCAwXCJcbiAgICAgICAgW21heEZyYWN0aW9uRGlnaXRzXT1cImZvcm1GaWVsZC5kZWNpbWFsRGlnaXRzIHx8IDBcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZm9ybUZpZWxkLnBsYWNlaG9sZGVyIHx8ICcnXCJcbiAgICAgID48L3AtaW5wdXROdW1iZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZvcm1GaWVsZC5pY29uUG9zaXRpb24gPT09ICdyaWdodCdcIj5cbiAgICAgIDxwLWlucHV0TnVtYmVyXG4gICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiZm9ybUZpZWxkLm5hbWVcIlxuICAgICAgICBtb2RlPVwiZGVjaW1hbFwiXG4gICAgICAgIFtsb2NhbGVdPVwiZm9ybUZpZWxkLm51bWJlckZvcm1hdCB8fCB1bmRlZmluZWRcIlxuICAgICAgICBbdXNlR3JvdXBpbmddPVwiZm9ybUZpZWxkLm51bWJlckZvcm1hdCA/IHRydWUgOiBmYWxzZVwiXG4gICAgICAgIFttaW5GcmFjdGlvbkRpZ2l0c109XCJmb3JtRmllbGQuZGVjaW1hbERpZ2l0cyB8fCAwXCJcbiAgICAgICAgW21heEZyYWN0aW9uRGlnaXRzXT1cImZvcm1GaWVsZC5kZWNpbWFsRGlnaXRzIHx8IDBcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZm9ybUZpZWxkLnBsYWNlaG9sZGVyIHx8ICcnXCJcbiAgICAgID48L3AtaW5wdXROdW1iZXI+XG4gICAgICA8cC1pbnB1dEdyb3VwQWRkb24gKm5nSWY9XCJmb3JtRmllbGQuaWNvbkNsYXNzIHx8IGZvcm1GaWVsZC5jdXJyZW5jeVwiPlxuICAgICAgICA8aSAqbmdJZj1cImZvcm1GaWVsZC5pY29uQ2xhc3NcIiBbbmdDbGFzc109XCJmb3JtRmllbGQuaWNvbkNsYXNzXCI+PC9pPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFmb3JtRmllbGQuaWNvbkNsYXNzICYmIGZvcm1GaWVsZC5jdXJyZW5jeVwiPlxuICAgICAgICAgIHt7IGZvcm1GaWVsZC5jdXJyZW5jeSB9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L3AtaW5wdXRHcm91cEFkZG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L3AtaW5wdXRHcm91cD5cbiAgPGRpdlxuICAgICpuZ0lmPVwiXG4gICAgICBmb3JtR3JvdXAuZ2V0KGZvcm1GaWVsZC5uYW1lKT8uaW52YWxpZCAmJlxuICAgICAgZm9ybUdyb3VwLmdldChmb3JtRmllbGQubmFtZSk/LnRvdWNoZWRcbiAgICBcIlxuICA+XG4gICAgPHNtYWxsIGNsYXNzPVwicC1lcnJvclwiPnt7IGdldEVycm9yTWVzc2FnZSgpIH19PC9zbWFsbD5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
@@ -0,0 +1,43 @@
|
|
1
|
+
import { NgModule } from '@angular/core';
|
2
|
+
import { CommonModule } from '@angular/common';
|
3
|
+
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
4
|
+
import { InputGroupModule } from 'primeng/inputgroup';
|
5
|
+
import { InputGroupAddonModule } from 'primeng/inputgroupaddon';
|
6
|
+
import { PTNumberInputComponent } from './pt-number-input.component';
|
7
|
+
import { InputTextModule } from 'primeng/inputtext';
|
8
|
+
import { InputNumberModule } from 'primeng/inputnumber';
|
9
|
+
import * as i0 from "@angular/core";
|
10
|
+
export class PTNumberInputModule {
|
11
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTNumberInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
12
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.11", ngImport: i0, type: PTNumberInputModule, declarations: [PTNumberInputComponent], imports: [CommonModule,
|
13
|
+
ReactiveFormsModule,
|
14
|
+
FormsModule,
|
15
|
+
InputGroupModule,
|
16
|
+
InputGroupAddonModule,
|
17
|
+
InputTextModule,
|
18
|
+
InputNumberModule], exports: [PTNumberInputComponent] }); }
|
19
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTNumberInputModule, imports: [CommonModule,
|
20
|
+
ReactiveFormsModule,
|
21
|
+
FormsModule,
|
22
|
+
InputGroupModule,
|
23
|
+
InputGroupAddonModule,
|
24
|
+
InputTextModule,
|
25
|
+
InputNumberModule] }); }
|
26
|
+
}
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: PTNumberInputModule, decorators: [{
|
28
|
+
type: NgModule,
|
29
|
+
args: [{
|
30
|
+
declarations: [PTNumberInputComponent],
|
31
|
+
imports: [
|
32
|
+
CommonModule,
|
33
|
+
ReactiveFormsModule,
|
34
|
+
FormsModule,
|
35
|
+
InputGroupModule,
|
36
|
+
InputGroupAddonModule,
|
37
|
+
InputTextModule,
|
38
|
+
InputNumberModule,
|
39
|
+
],
|
40
|
+
exports: [PTNumberInputComponent],
|
41
|
+
}]
|
42
|
+
}] });
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHQtbnVtYmVyLWlucHV0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtbnVtYmVyLWlucHV0L3B0LW51bWJlci1pbnB1dC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFleEQsTUFBTSxPQUFPLG1CQUFtQjsrR0FBbkIsbUJBQW1CO2dIQUFuQixtQkFBbUIsaUJBWmYsc0JBQXNCLGFBRW5DLFlBQVk7WUFDWixtQkFBbUI7WUFDbkIsV0FBVztZQUNYLGdCQUFnQjtZQUNoQixxQkFBcUI7WUFDckIsZUFBZTtZQUNmLGlCQUFpQixhQUVULHNCQUFzQjtnSEFFckIsbUJBQW1CLFlBVjVCLFlBQVk7WUFDWixtQkFBbUI7WUFDbkIsV0FBVztZQUNYLGdCQUFnQjtZQUNoQixxQkFBcUI7WUFDckIsZUFBZTtZQUNmLGlCQUFpQjs7NEZBSVIsbUJBQW1CO2tCQWIvQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUN0QyxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixxQkFBcUI7d0JBQ3JCLGVBQWU7d0JBQ2YsaUJBQWlCO3FCQUNsQjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSW5wdXRHcm91cE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvaW5wdXRncm91cCc7XG5pbXBvcnQgeyBJbnB1dEdyb3VwQWRkb25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2lucHV0Z3JvdXBhZGRvbic7XG5pbXBvcnQgeyBQVE51bWJlcklucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9wdC1udW1iZXItaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IElucHV0VGV4dE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvaW5wdXR0ZXh0JztcbmltcG9ydCB7IElucHV0TnVtYmVyTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9pbnB1dG51bWJlcic7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1BUTnVtYmVySW5wdXRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgSW5wdXRHcm91cE1vZHVsZSxcbiAgICBJbnB1dEdyb3VwQWRkb25Nb2R1bGUsXG4gICAgSW5wdXRUZXh0TW9kdWxlLFxuICAgIElucHV0TnVtYmVyTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbUFROdW1iZXJJbnB1dENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFBUTnVtYmVySW5wdXRNb2R1bGUge31cbiJdfQ==
|
@@ -0,0 +1,3 @@
|
|
1
|
+
export * from './pt-number-input.module';
|
2
|
+
export * from './pt-number-input.component';
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLXByaW1lLXRvb2xzL3NyYy9saWIvcHQtbnVtYmVyLWlucHV0L3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQztBQUN6QyxjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wdC1udW1iZXItaW5wdXQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcHQtbnVtYmVyLWlucHV0LmNvbXBvbmVudCc7XG4iXX0=
|
@@ -0,0 +1,2 @@
|
|
1
|
+
export * from './public-api';
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1wcmltZS10b29scy9zcmMvbGliL3B0LXN3aXRjaC1pbnB1dC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|