@seniorsistemas/components-ai 0.0.0-master-d4a804fe
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/CHANGELOG.md +101 -0
- package/CONTRIBUTING.md +317 -0
- package/README.md +161 -0
- package/docs/API.md +486 -0
- package/docs/COMPONENTS.md +272 -0
- package/docs/EXAMPLES.md +559 -0
- package/docs/MIGRATION.md +367 -0
- package/esm2022/lib/angular-components.module.mjs +25 -0
- package/esm2022/lib/components/breadcrumb/breadcrumb.component.mjs +121 -0
- package/esm2022/lib/components/bulk-delete-dialog/bulk-delete-dialog.component.mjs +176 -0
- package/esm2022/lib/components/dynamic-form/dynamic-form.component.mjs +625 -0
- package/esm2022/lib/components/dynamic-form/fields/dynamic-field-date.component.mjs +86 -0
- package/esm2022/lib/components/dynamic-form/fields/dynamic-field-dropdown.component.mjs +103 -0
- package/esm2022/lib/components/dynamic-form/fields/dynamic-field-lookup.component.mjs +599 -0
- package/esm2022/lib/components/dynamic-form/fields/dynamic-field-number.component.mjs +92 -0
- package/esm2022/lib/components/dynamic-form/fields/dynamic-field-text.component.mjs +163 -0
- package/esm2022/lib/components/dynamic-form/fields/dynamic-field-textarea.component.mjs +81 -0
- package/esm2022/lib/components/dynamic-form/fields/dynamic-field-wrapper.component.mjs +93 -0
- package/esm2022/lib/components/dynamic-form/fields/index.mjs +8 -0
- package/esm2022/lib/components/dynamic-form/models/dynamic-form.models.mjs +2 -0
- package/esm2022/lib/components/export-dialog/export-dialog.component.mjs +219 -0
- package/esm2022/lib/config/translation.config.mjs +70 -0
- package/esm2022/lib/directives/cep-mask.directive.mjs +79 -0
- package/esm2022/lib/directives/document-mask.directive.mjs +62 -0
- package/esm2022/lib/directives/phone-mask.directive.mjs +59 -0
- package/esm2022/lib/interceptors/api.interceptor.mjs +55 -0
- package/esm2022/lib/models/base-entity.interface.mjs +2 -0
- package/esm2022/lib/models/entity-list.config.mjs +2 -0
- package/esm2022/lib/pipes/translate.pipe.mjs +74 -0
- package/esm2022/lib/services/auth.service.mjs +169 -0
- package/esm2022/lib/services/cookie.service.mjs +90 -0
- package/esm2022/lib/services/entity.service.mjs +208 -0
- package/esm2022/lib/services/mask.service.mjs +121 -0
- package/esm2022/lib/services/permission.service.mjs +180 -0
- package/esm2022/lib/services/senior-token.service.mjs +209 -0
- package/esm2022/lib/services/theme.service.mjs +85 -0
- package/esm2022/lib/services/translation.service.mjs +232 -0
- package/esm2022/public-api.mjs +90 -0
- package/esm2022/seniorsistemas-components-ai.mjs +5 -0
- package/fesm2022/seniorsistemas-components-ai.mjs +4006 -0
- package/fesm2022/seniorsistemas-components-ai.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/angular-components.module.d.ts +13 -0
- package/lib/components/breadcrumb/breadcrumb.component.d.ts +23 -0
- package/lib/components/bulk-delete-dialog/bulk-delete-dialog.component.d.ts +46 -0
- package/lib/components/dynamic-form/dynamic-form.component.d.ts +97 -0
- package/lib/components/dynamic-form/fields/dynamic-field-date.component.d.ts +16 -0
- package/lib/components/dynamic-form/fields/dynamic-field-dropdown.component.d.ts +17 -0
- package/lib/components/dynamic-form/fields/dynamic-field-lookup.component.d.ts +52 -0
- package/lib/components/dynamic-form/fields/dynamic-field-number.component.d.ts +16 -0
- package/lib/components/dynamic-form/fields/dynamic-field-text.component.d.ts +17 -0
- package/lib/components/dynamic-form/fields/dynamic-field-textarea.component.d.ts +16 -0
- package/lib/components/dynamic-form/fields/dynamic-field-wrapper.component.d.ts +20 -0
- package/lib/components/dynamic-form/fields/index.d.ts +7 -0
- package/lib/components/dynamic-form/models/dynamic-form.models.d.ts +178 -0
- package/lib/components/export-dialog/export-dialog.component.d.ts +56 -0
- package/lib/config/translation.config.d.ts +24 -0
- package/lib/directives/cep-mask.directive.d.ts +13 -0
- package/lib/directives/document-mask.directive.d.ts +19 -0
- package/lib/directives/phone-mask.directive.d.ts +11 -0
- package/lib/interceptors/api.interceptor.d.ts +2 -0
- package/lib/models/base-entity.interface.d.ts +7 -0
- package/lib/models/entity-list.config.d.ts +161 -0
- package/lib/pipes/translate.pipe.d.ts +21 -0
- package/lib/services/auth.service.d.ts +82 -0
- package/lib/services/cookie.service.d.ts +31 -0
- package/lib/services/entity.service.d.ts +99 -0
- package/lib/services/mask.service.d.ts +36 -0
- package/lib/services/permission.service.d.ts +91 -0
- package/lib/services/senior-token.service.d.ts +70 -0
- package/lib/services/theme.service.d.ts +16 -0
- package/lib/services/translation.service.d.ts +54 -0
- package/package.json +53 -0
- package/public-api.d.ts +17 -0
- package/src/lib/styles/entity-list.shared.scss +383 -0
- package/src/lib/styles/index.scss +10 -0
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { InputNumberModule } from 'primeng/inputnumber';
|
|
5
|
+
import { DynamicFieldWrapperComponent } from './dynamic-field-wrapper.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../../services/translation.service";
|
|
8
|
+
import * as i2 from "@angular/forms";
|
|
9
|
+
import * as i3 from "primeng/inputnumber";
|
|
10
|
+
export class DynamicFieldNumberComponent {
|
|
11
|
+
translationService;
|
|
12
|
+
field;
|
|
13
|
+
form;
|
|
14
|
+
mode = 'form';
|
|
15
|
+
constructor(translationService) {
|
|
16
|
+
this.translationService = translationService;
|
|
17
|
+
}
|
|
18
|
+
isFieldInvalid() {
|
|
19
|
+
const control = this.form.get(this.field.field);
|
|
20
|
+
return !!(control && control.invalid && (control.dirty || control.touched));
|
|
21
|
+
}
|
|
22
|
+
isFieldDirty() {
|
|
23
|
+
const control = this.form.get(this.field.field);
|
|
24
|
+
return !!(control && control.dirty);
|
|
25
|
+
}
|
|
26
|
+
getPlaceholder() {
|
|
27
|
+
if (this.mode === 'filter') {
|
|
28
|
+
return this.translationService.translate('crmx.business.filter_search_placeholder', {
|
|
29
|
+
label: this.field.label.toLowerCase()
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
return this.field.placeholder || '';
|
|
33
|
+
}
|
|
34
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFieldNumberComponent, deps: [{ token: i1.TranslationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
35
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: DynamicFieldNumberComponent, isStandalone: true, selector: "sia-dynamic-field-number", inputs: { field: "field", form: "form", mode: "mode" }, ngImport: i0, template: `
|
|
36
|
+
<sia-dynamic-field-wrapper [field]="field" [form]="form" [mode]="mode">
|
|
37
|
+
<div [formGroup]="form">
|
|
38
|
+
<p-inputNumber
|
|
39
|
+
[inputId]="field.field"
|
|
40
|
+
[formControlName]="field.field"
|
|
41
|
+
[placeholder]="getPlaceholder()"
|
|
42
|
+
[min]="field.min"
|
|
43
|
+
[max]="field.max"
|
|
44
|
+
[minFractionDigits]="field.minFractionDigits || 0"
|
|
45
|
+
[maxFractionDigits]="field.maxFractionDigits || 2"
|
|
46
|
+
[mode]="field.numberMode || 'decimal'"
|
|
47
|
+
[currency]="field.currency || 'BRL'"
|
|
48
|
+
[locale]="field.locale || 'pt-BR'"
|
|
49
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
50
|
+
[class.ng-dirty]="isFieldDirty()"
|
|
51
|
+
styleClass="w-full">
|
|
52
|
+
</p-inputNumber>
|
|
53
|
+
</div>
|
|
54
|
+
</sia-dynamic-field-wrapper>
|
|
55
|
+
`, isInline: true, styles: ["::ng-deep p-inputNumber{width:100%;.p-inputnumber,input{width:100%}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { 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: "ngmodule", type: InputNumberModule }, { kind: "component", type: i3.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", 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", "fluid"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: DynamicFieldWrapperComponent, selector: "sia-dynamic-field-wrapper", inputs: ["field", "form", "mode"] }] });
|
|
56
|
+
}
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFieldNumberComponent, decorators: [{
|
|
58
|
+
type: Component,
|
|
59
|
+
args: [{ selector: 'sia-dynamic-field-number', standalone: true, imports: [
|
|
60
|
+
CommonModule,
|
|
61
|
+
ReactiveFormsModule,
|
|
62
|
+
InputNumberModule,
|
|
63
|
+
DynamicFieldWrapperComponent
|
|
64
|
+
], template: `
|
|
65
|
+
<sia-dynamic-field-wrapper [field]="field" [form]="form" [mode]="mode">
|
|
66
|
+
<div [formGroup]="form">
|
|
67
|
+
<p-inputNumber
|
|
68
|
+
[inputId]="field.field"
|
|
69
|
+
[formControlName]="field.field"
|
|
70
|
+
[placeholder]="getPlaceholder()"
|
|
71
|
+
[min]="field.min"
|
|
72
|
+
[max]="field.max"
|
|
73
|
+
[minFractionDigits]="field.minFractionDigits || 0"
|
|
74
|
+
[maxFractionDigits]="field.maxFractionDigits || 2"
|
|
75
|
+
[mode]="field.numberMode || 'decimal'"
|
|
76
|
+
[currency]="field.currency || 'BRL'"
|
|
77
|
+
[locale]="field.locale || 'pt-BR'"
|
|
78
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
79
|
+
[class.ng-dirty]="isFieldDirty()"
|
|
80
|
+
styleClass="w-full">
|
|
81
|
+
</p-inputNumber>
|
|
82
|
+
</div>
|
|
83
|
+
</sia-dynamic-field-wrapper>
|
|
84
|
+
`, styles: ["::ng-deep p-inputNumber{width:100%;.p-inputnumber,input{width:100%}}\n"] }]
|
|
85
|
+
}], ctorParameters: () => [{ type: i1.TranslationService }], propDecorators: { field: [{
|
|
86
|
+
type: Input
|
|
87
|
+
}], form: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], mode: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}] } });
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC1udW1iZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy1haS9zcmMvbGliL2NvbXBvbmVudHMvZHluYW1pYy1mb3JtL2ZpZWxkcy9keW5hbWljLWZpZWxkLW51bWJlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBYSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR3hELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7OztBQThDakYsTUFBTSxPQUFPLDJCQUEyQjtJQUtsQjtJQUpYLEtBQUssQ0FBMEI7SUFDL0IsSUFBSSxDQUFhO0lBQ2pCLElBQUksR0FBc0IsTUFBTSxDQUFDO0lBRTFDLFlBQW9CLGtCQUFzQztRQUF0Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO0lBQUcsQ0FBQztJQUU5RCxjQUFjO1FBQ1osTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNoRCxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsWUFBWTtRQUNWLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzNCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyx5Q0FBeUMsRUFBRTtnQkFDbEYsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRTthQUN0QyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUM7SUFDdEMsQ0FBQzt3R0F4QlUsMkJBQTJCOzRGQUEzQiwyQkFBMkIsNElBbkM1Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQlQsK0lBekJDLFlBQVksOEJBQ1osbUJBQW1CLG1sQkFDbkIsaUJBQWlCLGt5QkFDakIsNEJBQTRCOzs0RkFxQ25CLDJCQUEyQjtrQkE1Q3ZDLFNBQVM7K0JBQ0UsMEJBQTBCLGNBQ3hCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsaUJBQWlCO3dCQUNqQiw0QkFBNEI7cUJBQzdCLFlBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JUO3VGQWdCUSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBJbnB1dE51bWJlck1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvaW5wdXRudW1iZXInO1xuaW1wb3J0IHsgRHluYW1pY0Zvcm1GaWVsZENvbmZpZyB9IGZyb20gJy4uL21vZGVscy9keW5hbWljLWZvcm0ubW9kZWxzJztcbmltcG9ydCB7IFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRHluYW1pY0ZpZWxkV3JhcHBlckNvbXBvbmVudCB9IGZyb20gJy4vZHluYW1pYy1maWVsZC13cmFwcGVyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpYS1keW5hbWljLWZpZWxkLW51bWJlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBJbnB1dE51bWJlck1vZHVsZSxcbiAgICBEeW5hbWljRmllbGRXcmFwcGVyQ29tcG9uZW50XG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPHNpYS1keW5hbWljLWZpZWxkLXdyYXBwZXIgW2ZpZWxkXT1cImZpZWxkXCIgW2Zvcm1dPVwiZm9ybVwiIFttb2RlXT1cIm1vZGVcIj5cbiAgICAgIDxkaXYgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gICAgICAgIDxwLWlucHV0TnVtYmVyXG4gICAgICAgICAgW2lucHV0SWRdPVwiZmllbGQuZmllbGRcIlxuICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiZmllbGQuZmllbGRcIlxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJnZXRQbGFjZWhvbGRlcigpXCJcbiAgICAgICAgICBbbWluXT1cImZpZWxkLm1pblwiXG4gICAgICAgICAgW21heF09XCJmaWVsZC5tYXhcIlxuICAgICAgICAgIFttaW5GcmFjdGlvbkRpZ2l0c109XCJmaWVsZC5taW5GcmFjdGlvbkRpZ2l0cyB8fCAwXCJcbiAgICAgICAgICBbbWF4RnJhY3Rpb25EaWdpdHNdPVwiZmllbGQubWF4RnJhY3Rpb25EaWdpdHMgfHwgMlwiXG4gICAgICAgICAgW21vZGVdPVwiZmllbGQubnVtYmVyTW9kZSB8fCAnZGVjaW1hbCdcIlxuICAgICAgICAgIFtjdXJyZW5jeV09XCJmaWVsZC5jdXJyZW5jeSB8fCAnQlJMJ1wiXG4gICAgICAgICAgW2xvY2FsZV09XCJmaWVsZC5sb2NhbGUgfHwgJ3B0LUJSJ1wiXG4gICAgICAgICAgW2NsYXNzLm5nLWludmFsaWRdPVwiaXNGaWVsZEludmFsaWQoKVwiXG4gICAgICAgICAgW2NsYXNzLm5nLWRpcnR5XT1cImlzRmllbGREaXJ0eSgpXCJcbiAgICAgICAgICBzdHlsZUNsYXNzPVwidy1mdWxsXCI+XG4gICAgICAgIDwvcC1pbnB1dE51bWJlcj5cbiAgICAgIDwvZGl2PlxuICAgIDwvc2lhLWR5bmFtaWMtZmllbGQtd3JhcHBlcj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIDo6bmctZGVlcCBwLWlucHV0TnVtYmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAucC1pbnB1dG51bWJlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgYF1cbn0pXG5leHBvcnQgY2xhc3MgRHluYW1pY0ZpZWxkTnVtYmVyQ29tcG9uZW50IHtcbiAgQElucHV0KCkgZmllbGQhOiBEeW5hbWljRm9ybUZpZWxkQ29uZmlnO1xuICBASW5wdXQoKSBmb3JtITogRm9ybUdyb3VwO1xuICBASW5wdXQoKSBtb2RlOiAnZm9ybScgfCAnZmlsdGVyJyA9ICdmb3JtJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlKSB7fVxuXG4gIGlzRmllbGRJbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KHRoaXMuZmllbGQuZmllbGQpO1xuICAgIHJldHVybiAhIShjb250cm9sICYmIGNvbnRyb2wuaW52YWxpZCAmJiAoY29udHJvbC5kaXJ0eSB8fCBjb250cm9sLnRvdWNoZWQpKTtcbiAgfVxuXG4gIGlzRmllbGREaXJ0eSgpOiBib29sZWFuIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtLmdldCh0aGlzLmZpZWxkLmZpZWxkKTtcbiAgICByZXR1cm4gISEoY29udHJvbCAmJiBjb250cm9sLmRpcnR5KTtcbiAgfVxuXG4gIGdldFBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMubW9kZSA9PT0gJ2ZpbHRlcicpIHtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGUoJ2NybXguYnVzaW5lc3MuZmlsdGVyX3NlYXJjaF9wbGFjZWhvbGRlcicsIHsgXG4gICAgICAgIGxhYmVsOiB0aGlzLmZpZWxkLmxhYmVsLnRvTG93ZXJDYXNlKCkgXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZmllbGQucGxhY2Vob2xkZXIgfHwgJyc7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { InputTextModule } from 'primeng/inputtext';
|
|
5
|
+
import { CepMaskDirective } from '../../../directives/cep-mask.directive';
|
|
6
|
+
import { PhoneMaskDirective } from '../../../directives/phone-mask.directive';
|
|
7
|
+
import { DocumentMaskDirective } from '../../../directives/document-mask.directive';
|
|
8
|
+
import { DynamicFieldWrapperComponent } from './dynamic-field-wrapper.component';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "../../../services/translation.service";
|
|
11
|
+
import * as i2 from "@angular/common";
|
|
12
|
+
import * as i3 from "@angular/forms";
|
|
13
|
+
import * as i4 from "primeng/inputtext";
|
|
14
|
+
export class DynamicFieldTextComponent {
|
|
15
|
+
translationService;
|
|
16
|
+
field;
|
|
17
|
+
form;
|
|
18
|
+
mode = 'form';
|
|
19
|
+
constructor(translationService) {
|
|
20
|
+
this.translationService = translationService;
|
|
21
|
+
}
|
|
22
|
+
isFieldInvalid() {
|
|
23
|
+
const control = this.form.get(this.field.field);
|
|
24
|
+
return !!(control && control.invalid && (control.dirty || control.touched));
|
|
25
|
+
}
|
|
26
|
+
isFieldDirty() {
|
|
27
|
+
const control = this.form.get(this.field.field);
|
|
28
|
+
return !!(control && control.dirty);
|
|
29
|
+
}
|
|
30
|
+
getPlaceholder() {
|
|
31
|
+
if (this.mode === 'filter') {
|
|
32
|
+
return this.translationService.translate('crmx.business.filter_search_placeholder', {
|
|
33
|
+
label: this.field.label.toLowerCase()
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
return this.field.placeholder || '';
|
|
37
|
+
}
|
|
38
|
+
getDocumentType() {
|
|
39
|
+
const typePersonValue = this.form?.get('typePerson')?.value;
|
|
40
|
+
return typePersonValue || 'JURIDICAL_PERSON';
|
|
41
|
+
}
|
|
42
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFieldTextComponent, deps: [{ token: i1.TranslationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
43
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: DynamicFieldTextComponent, isStandalone: true, selector: "sia-dynamic-field-text", inputs: { field: "field", form: "form", mode: "mode" }, ngImport: i0, template: `
|
|
44
|
+
<sia-dynamic-field-wrapper [field]="field" [form]="form" [mode]="mode">
|
|
45
|
+
<div [formGroup]="form">
|
|
46
|
+
<input
|
|
47
|
+
*ngIf="!field.mask"
|
|
48
|
+
pInputText
|
|
49
|
+
[id]="field.field"
|
|
50
|
+
[formControlName]="field.field"
|
|
51
|
+
[placeholder]="getPlaceholder()"
|
|
52
|
+
[maxlength]="field.maxLength || 524288"
|
|
53
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
54
|
+
[class.ng-dirty]="isFieldDirty()" />
|
|
55
|
+
|
|
56
|
+
<!-- Input com máscara CEP -->
|
|
57
|
+
<input
|
|
58
|
+
*ngIf="field.mask === 'cep'"
|
|
59
|
+
pInputText
|
|
60
|
+
appCepMask
|
|
61
|
+
[id]="field.field"
|
|
62
|
+
[formControlName]="field.field"
|
|
63
|
+
[placeholder]="getPlaceholder()"
|
|
64
|
+
[maxlength]="field.maxLength || 524288"
|
|
65
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
66
|
+
[class.ng-dirty]="isFieldDirty()" />
|
|
67
|
+
|
|
68
|
+
<!-- Input com máscara Telefone -->
|
|
69
|
+
<input
|
|
70
|
+
*ngIf="field.mask === 'phone'"
|
|
71
|
+
pInputText
|
|
72
|
+
appPhoneMask
|
|
73
|
+
[id]="field.field"
|
|
74
|
+
[formControlName]="field.field"
|
|
75
|
+
[placeholder]="getPlaceholder()"
|
|
76
|
+
[maxlength]="field.maxLength || 524288"
|
|
77
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
78
|
+
[class.ng-dirty]="isFieldDirty()" />
|
|
79
|
+
|
|
80
|
+
<!-- Input com máscara Documento -->
|
|
81
|
+
<input
|
|
82
|
+
*ngIf="field.mask === 'document'"
|
|
83
|
+
pInputText
|
|
84
|
+
appDocumentMask
|
|
85
|
+
[id]="field.field"
|
|
86
|
+
[formControlName]="field.field"
|
|
87
|
+
[placeholder]="getPlaceholder()"
|
|
88
|
+
[maxlength]="field.maxLength || 524288"
|
|
89
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
90
|
+
[class.ng-dirty]="isFieldDirty()" />
|
|
91
|
+
</div>
|
|
92
|
+
</sia-dynamic-field-wrapper>
|
|
93
|
+
`, isInline: true, styles: ["input{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i4.InputText, selector: "[pInputText]", inputs: ["variant", "fluid", "pSize"] }, { kind: "component", type: DynamicFieldWrapperComponent, selector: "sia-dynamic-field-wrapper", inputs: ["field", "form", "mode"] }] });
|
|
94
|
+
}
|
|
95
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFieldTextComponent, decorators: [{
|
|
96
|
+
type: Component,
|
|
97
|
+
args: [{ selector: 'sia-dynamic-field-text', standalone: true, imports: [
|
|
98
|
+
CommonModule,
|
|
99
|
+
ReactiveFormsModule,
|
|
100
|
+
InputTextModule,
|
|
101
|
+
CepMaskDirective,
|
|
102
|
+
PhoneMaskDirective,
|
|
103
|
+
DocumentMaskDirective,
|
|
104
|
+
DynamicFieldWrapperComponent
|
|
105
|
+
], template: `
|
|
106
|
+
<sia-dynamic-field-wrapper [field]="field" [form]="form" [mode]="mode">
|
|
107
|
+
<div [formGroup]="form">
|
|
108
|
+
<input
|
|
109
|
+
*ngIf="!field.mask"
|
|
110
|
+
pInputText
|
|
111
|
+
[id]="field.field"
|
|
112
|
+
[formControlName]="field.field"
|
|
113
|
+
[placeholder]="getPlaceholder()"
|
|
114
|
+
[maxlength]="field.maxLength || 524288"
|
|
115
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
116
|
+
[class.ng-dirty]="isFieldDirty()" />
|
|
117
|
+
|
|
118
|
+
<!-- Input com máscara CEP -->
|
|
119
|
+
<input
|
|
120
|
+
*ngIf="field.mask === 'cep'"
|
|
121
|
+
pInputText
|
|
122
|
+
appCepMask
|
|
123
|
+
[id]="field.field"
|
|
124
|
+
[formControlName]="field.field"
|
|
125
|
+
[placeholder]="getPlaceholder()"
|
|
126
|
+
[maxlength]="field.maxLength || 524288"
|
|
127
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
128
|
+
[class.ng-dirty]="isFieldDirty()" />
|
|
129
|
+
|
|
130
|
+
<!-- Input com máscara Telefone -->
|
|
131
|
+
<input
|
|
132
|
+
*ngIf="field.mask === 'phone'"
|
|
133
|
+
pInputText
|
|
134
|
+
appPhoneMask
|
|
135
|
+
[id]="field.field"
|
|
136
|
+
[formControlName]="field.field"
|
|
137
|
+
[placeholder]="getPlaceholder()"
|
|
138
|
+
[maxlength]="field.maxLength || 524288"
|
|
139
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
140
|
+
[class.ng-dirty]="isFieldDirty()" />
|
|
141
|
+
|
|
142
|
+
<!-- Input com máscara Documento -->
|
|
143
|
+
<input
|
|
144
|
+
*ngIf="field.mask === 'document'"
|
|
145
|
+
pInputText
|
|
146
|
+
appDocumentMask
|
|
147
|
+
[id]="field.field"
|
|
148
|
+
[formControlName]="field.field"
|
|
149
|
+
[placeholder]="getPlaceholder()"
|
|
150
|
+
[maxlength]="field.maxLength || 524288"
|
|
151
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
152
|
+
[class.ng-dirty]="isFieldDirty()" />
|
|
153
|
+
</div>
|
|
154
|
+
</sia-dynamic-field-wrapper>
|
|
155
|
+
`, styles: ["input{width:100%}\n"] }]
|
|
156
|
+
}], ctorParameters: () => [{ type: i1.TranslationService }], propDecorators: { field: [{
|
|
157
|
+
type: Input
|
|
158
|
+
}], form: [{
|
|
159
|
+
type: Input
|
|
160
|
+
}], mode: [{
|
|
161
|
+
type: Input
|
|
162
|
+
}] } });
|
|
163
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC10ZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtYWkvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9maWVsZHMvZHluYW1pYy1maWVsZC10ZXh0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFhLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7QUF1RWpGLE1BQU0sT0FBTyx5QkFBeUI7SUFLaEI7SUFKWCxLQUFLLENBQTBCO0lBQy9CLElBQUksQ0FBYTtJQUNqQixJQUFJLEdBQXNCLE1BQU0sQ0FBQztJQUUxQyxZQUFvQixrQkFBc0M7UUFBdEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtJQUFHLENBQUM7SUFFOUQsY0FBYztRQUNaLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVELFlBQVk7UUFDVixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hELE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUMzQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMseUNBQXlDLEVBQUU7Z0JBQ2xGLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUU7YUFDdEMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxlQUFlO1FBQ2IsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsWUFBWSxDQUFDLEVBQUUsS0FBSyxDQUFDO1FBQzVELE9BQU8sZUFBZSxJQUFJLGtCQUFrQixDQUFDO0lBQy9DLENBQUM7d0dBN0JVLHlCQUF5Qjs0RkFBekIseUJBQXlCLDBJQXpEMUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0RULDRGQTFEQyxZQUFZLGtJQUNaLG1CQUFtQixzZ0NBQ25CLGVBQWUsMklBSWYsNEJBQTRCOzs0RkEyRG5CLHlCQUF5QjtrQkFyRXJDLFNBQVM7K0JBQ0Usd0JBQXdCLGNBQ3RCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsZUFBZTt3QkFDZixnQkFBZ0I7d0JBQ2hCLGtCQUFrQjt3QkFDbEIscUJBQXFCO3dCQUNyQiw0QkFBNEI7cUJBQzdCLFlBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0RUO3VGQVFRLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IElucHV0VGV4dE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvaW5wdXR0ZXh0JztcbmltcG9ydCB7IER5bmFtaWNGb3JtRmllbGRDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvZHluYW1pYy1mb3JtLm1vZGVscyc7XG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy90cmFuc2xhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IENlcE1hc2tEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL2NlcC1tYXNrLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQaG9uZU1hc2tEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmVzL3Bob25lLW1hc2suZGlyZWN0aXZlJztcbmltcG9ydCB7IERvY3VtZW50TWFza0RpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZXMvZG9jdW1lbnQtbWFzay5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRHluYW1pY0ZpZWxkV3JhcHBlckNvbXBvbmVudCB9IGZyb20gJy4vZHluYW1pYy1maWVsZC13cmFwcGVyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpYS1keW5hbWljLWZpZWxkLXRleHQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgSW5wdXRUZXh0TW9kdWxlLFxuICAgIENlcE1hc2tEaXJlY3RpdmUsXG4gICAgUGhvbmVNYXNrRGlyZWN0aXZlLFxuICAgIERvY3VtZW50TWFza0RpcmVjdGl2ZSxcbiAgICBEeW5hbWljRmllbGRXcmFwcGVyQ29tcG9uZW50XG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPHNpYS1keW5hbWljLWZpZWxkLXdyYXBwZXIgW2ZpZWxkXT1cImZpZWxkXCIgW2Zvcm1dPVwiZm9ybVwiIFttb2RlXT1cIm1vZGVcIj5cbiAgICAgIDxkaXYgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICpuZ0lmPVwiIWZpZWxkLm1hc2tcIlxuICAgICAgICAgIHBJbnB1dFRleHRcbiAgICAgICAgICBbaWRdPVwiZmllbGQuZmllbGRcIlxuICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiZmllbGQuZmllbGRcIlxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJnZXRQbGFjZWhvbGRlcigpXCJcbiAgICAgICAgICBbbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aCB8fCA1MjQyODhcIlxuICAgICAgICAgIFtjbGFzcy5uZy1pbnZhbGlkXT1cImlzRmllbGRJbnZhbGlkKClcIlxuICAgICAgICAgIFtjbGFzcy5uZy1kaXJ0eV09XCJpc0ZpZWxkRGlydHkoKVwiIC8+XG4gICAgICAgIFxuICAgICAgICA8IS0tIElucHV0IGNvbSBtw6FzY2FyYSBDRVAgLS0+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICpuZ0lmPVwiZmllbGQubWFzayA9PT0gJ2NlcCdcIlxuICAgICAgICAgIHBJbnB1dFRleHRcbiAgICAgICAgICBhcHBDZXBNYXNrXG4gICAgICAgICAgW2lkXT1cImZpZWxkLmZpZWxkXCJcbiAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZpZWxkXCJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZ2V0UGxhY2Vob2xkZXIoKVwiXG4gICAgICAgICAgW21heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGggfHwgNTI0Mjg4XCJcbiAgICAgICAgICBbY2xhc3MubmctaW52YWxpZF09XCJpc0ZpZWxkSW52YWxpZCgpXCJcbiAgICAgICAgICBbY2xhc3MubmctZGlydHldPVwiaXNGaWVsZERpcnR5KClcIiAvPlxuICAgICAgICBcbiAgICAgICAgPCEtLSBJbnB1dCBjb20gbcOhc2NhcmEgVGVsZWZvbmUgLS0+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICpuZ0lmPVwiZmllbGQubWFzayA9PT0gJ3Bob25lJ1wiXG4gICAgICAgICAgcElucHV0VGV4dFxuICAgICAgICAgIGFwcFBob25lTWFza1xuICAgICAgICAgIFtpZF09XCJmaWVsZC5maWVsZFwiXG4gICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5maWVsZFwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImdldFBsYWNlaG9sZGVyKClcIlxuICAgICAgICAgIFttYXhsZW5ndGhdPVwiZmllbGQubWF4TGVuZ3RoIHx8IDUyNDI4OFwiXG4gICAgICAgICAgW2NsYXNzLm5nLWludmFsaWRdPVwiaXNGaWVsZEludmFsaWQoKVwiXG4gICAgICAgICAgW2NsYXNzLm5nLWRpcnR5XT1cImlzRmllbGREaXJ0eSgpXCIgLz5cbiAgICAgICAgXG4gICAgICAgIDwhLS0gSW5wdXQgY29tIG3DoXNjYXJhIERvY3VtZW50byAtLT5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgKm5nSWY9XCJmaWVsZC5tYXNrID09PSAnZG9jdW1lbnQnXCJcbiAgICAgICAgICBwSW5wdXRUZXh0XG4gICAgICAgICAgYXBwRG9jdW1lbnRNYXNrXG4gICAgICAgICAgW2lkXT1cImZpZWxkLmZpZWxkXCJcbiAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZpZWxkXCJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZ2V0UGxhY2Vob2xkZXIoKVwiXG4gICAgICAgICAgW21heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGggfHwgNTI0Mjg4XCJcbiAgICAgICAgICBbY2xhc3MubmctaW52YWxpZF09XCJpc0ZpZWxkSW52YWxpZCgpXCJcbiAgICAgICAgICBbY2xhc3MubmctZGlydHldPVwiaXNGaWVsZERpcnR5KClcIiAvPlxuICAgICAgPC9kaXY+XG4gICAgPC9zaWEtZHluYW1pYy1maWVsZC13cmFwcGVyPlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgaW5wdXQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICBgXVxufSlcbmV4cG9ydCBjbGFzcyBEeW5hbWljRmllbGRUZXh0Q29tcG9uZW50IHtcbiAgQElucHV0KCkgZmllbGQhOiBEeW5hbWljRm9ybUZpZWxkQ29uZmlnO1xuICBASW5wdXQoKSBmb3JtITogRm9ybUdyb3VwO1xuICBASW5wdXQoKSBtb2RlOiAnZm9ybScgfCAnZmlsdGVyJyA9ICdmb3JtJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlKSB7fVxuXG4gIGlzRmllbGRJbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KHRoaXMuZmllbGQuZmllbGQpO1xuICAgIHJldHVybiAhIShjb250cm9sICYmIGNvbnRyb2wuaW52YWxpZCAmJiAoY29udHJvbC5kaXJ0eSB8fCBjb250cm9sLnRvdWNoZWQpKTtcbiAgfVxuXG4gIGlzRmllbGREaXJ0eSgpOiBib29sZWFuIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtLmdldCh0aGlzLmZpZWxkLmZpZWxkKTtcbiAgICByZXR1cm4gISEoY29udHJvbCAmJiBjb250cm9sLmRpcnR5KTtcbiAgfVxuXG4gIGdldFBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMubW9kZSA9PT0gJ2ZpbHRlcicpIHtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGUoJ2NybXguYnVzaW5lc3MuZmlsdGVyX3NlYXJjaF9wbGFjZWhvbGRlcicsIHsgXG4gICAgICAgIGxhYmVsOiB0aGlzLmZpZWxkLmxhYmVsLnRvTG93ZXJDYXNlKCkgXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZmllbGQucGxhY2Vob2xkZXIgfHwgJyc7XG4gIH1cblxuICBnZXREb2N1bWVudFR5cGUoKTogJ05BVFVSQUxfUEVSU09OJyB8ICdKVVJJRElDQUxfUEVSU09OJyB7XG4gICAgY29uc3QgdHlwZVBlcnNvblZhbHVlID0gdGhpcy5mb3JtPy5nZXQoJ3R5cGVQZXJzb24nKT8udmFsdWU7XG4gICAgcmV0dXJuIHR5cGVQZXJzb25WYWx1ZSB8fCAnSlVSSURJQ0FMX1BFUlNPTic7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { InputTextarea } from 'primeng/inputtextarea';
|
|
5
|
+
import { DynamicFieldWrapperComponent } from './dynamic-field-wrapper.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../../services/translation.service";
|
|
8
|
+
import * as i2 from "@angular/forms";
|
|
9
|
+
export class DynamicFieldTextareaComponent {
|
|
10
|
+
translationService;
|
|
11
|
+
field;
|
|
12
|
+
form;
|
|
13
|
+
mode = 'form';
|
|
14
|
+
constructor(translationService) {
|
|
15
|
+
this.translationService = translationService;
|
|
16
|
+
}
|
|
17
|
+
isFieldInvalid() {
|
|
18
|
+
const control = this.form.get(this.field.field);
|
|
19
|
+
return !!(control && control.invalid && (control.dirty || control.touched));
|
|
20
|
+
}
|
|
21
|
+
isFieldDirty() {
|
|
22
|
+
const control = this.form.get(this.field.field);
|
|
23
|
+
return !!(control && control.dirty);
|
|
24
|
+
}
|
|
25
|
+
getPlaceholder() {
|
|
26
|
+
if (this.mode === 'filter') {
|
|
27
|
+
return this.translationService.translate('crmx.business.filter_search_placeholder', {
|
|
28
|
+
label: this.field.label.toLowerCase()
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
return this.field.placeholder || '';
|
|
32
|
+
}
|
|
33
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFieldTextareaComponent, deps: [{ token: i1.TranslationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
34
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: DynamicFieldTextareaComponent, isStandalone: true, selector: "sia-dynamic-field-textarea", inputs: { field: "field", form: "form", mode: "mode" }, ngImport: i0, template: `
|
|
35
|
+
<sia-dynamic-field-wrapper [field]="field" [form]="form" [mode]="mode">
|
|
36
|
+
<div [formGroup]="form">
|
|
37
|
+
<textarea
|
|
38
|
+
pInputTextarea
|
|
39
|
+
[id]="field.field"
|
|
40
|
+
[formControlName]="field.field"
|
|
41
|
+
[placeholder]="getPlaceholder()"
|
|
42
|
+
[rows]="field.rows || 3"
|
|
43
|
+
[maxlength]="field.maxLength || 524288"
|
|
44
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
45
|
+
[class.ng-dirty]="isFieldDirty()">
|
|
46
|
+
</textarea>
|
|
47
|
+
</div>
|
|
48
|
+
</sia-dynamic-field-wrapper>
|
|
49
|
+
`, isInline: true, styles: ["textarea{width:100%;resize:vertical}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { 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: "directive", type: InputTextarea, selector: "[pInputTextarea]", inputs: ["autoResize", "variant", "fluid"], outputs: ["onResize"] }, { kind: "component", type: DynamicFieldWrapperComponent, selector: "sia-dynamic-field-wrapper", inputs: ["field", "form", "mode"] }] });
|
|
50
|
+
}
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFieldTextareaComponent, decorators: [{
|
|
52
|
+
type: Component,
|
|
53
|
+
args: [{ selector: 'sia-dynamic-field-textarea', standalone: true, imports: [
|
|
54
|
+
CommonModule,
|
|
55
|
+
ReactiveFormsModule,
|
|
56
|
+
InputTextarea,
|
|
57
|
+
DynamicFieldWrapperComponent
|
|
58
|
+
], template: `
|
|
59
|
+
<sia-dynamic-field-wrapper [field]="field" [form]="form" [mode]="mode">
|
|
60
|
+
<div [formGroup]="form">
|
|
61
|
+
<textarea
|
|
62
|
+
pInputTextarea
|
|
63
|
+
[id]="field.field"
|
|
64
|
+
[formControlName]="field.field"
|
|
65
|
+
[placeholder]="getPlaceholder()"
|
|
66
|
+
[rows]="field.rows || 3"
|
|
67
|
+
[maxlength]="field.maxLength || 524288"
|
|
68
|
+
[class.ng-invalid]="isFieldInvalid()"
|
|
69
|
+
[class.ng-dirty]="isFieldDirty()">
|
|
70
|
+
</textarea>
|
|
71
|
+
</div>
|
|
72
|
+
</sia-dynamic-field-wrapper>
|
|
73
|
+
`, styles: ["textarea{width:100%;resize:vertical}\n"] }]
|
|
74
|
+
}], ctorParameters: () => [{ type: i1.TranslationService }], propDecorators: { field: [{
|
|
75
|
+
type: Input
|
|
76
|
+
}], form: [{
|
|
77
|
+
type: Input
|
|
78
|
+
}], mode: [{
|
|
79
|
+
type: Input
|
|
80
|
+
}] } });
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC10ZXh0YXJlYS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLWFpL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vZmllbGRzL2R5bmFtaWMtZmllbGQtdGV4dGFyZWEuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWEsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHdEQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7QUFrQ2pGLE1BQU0sT0FBTyw2QkFBNkI7SUFLcEI7SUFKWCxLQUFLLENBQTBCO0lBQy9CLElBQUksQ0FBYTtJQUNqQixJQUFJLEdBQXNCLE1BQU0sQ0FBQztJQUUxQyxZQUFvQixrQkFBc0M7UUFBdEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtJQUFHLENBQUM7SUFFOUQsY0FBYztRQUNaLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVELFlBQVk7UUFDVixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hELE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUMzQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMseUNBQXlDLEVBQUU7Z0JBQ2xGLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUU7YUFDdEMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDO0lBQ3RDLENBQUM7d0dBeEJVLDZCQUE2Qjs0RkFBN0IsNkJBQTZCLDhJQXZCOUI7Ozs7Ozs7Ozs7Ozs7OztHQWVULCtHQXBCQyxZQUFZLDhCQUNaLG1CQUFtQix1Z0NBQ25CLGFBQWEsZ0lBQ2IsNEJBQTRCOzs0RkF5Qm5CLDZCQUE2QjtrQkFoQ3pDLFNBQVM7K0JBQ0UsNEJBQTRCLGNBQzFCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsYUFBYTt3QkFDYiw0QkFBNEI7cUJBQzdCLFlBQ1M7Ozs7Ozs7Ozs7Ozs7OztHQWVUO3VGQVNRLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IElucHV0VGV4dGFyZWEgfSBmcm9tICdwcmltZW5nL2lucHV0dGV4dGFyZWEnO1xuaW1wb3J0IHsgRHluYW1pY0Zvcm1GaWVsZENvbmZpZyB9IGZyb20gJy4uL21vZGVscy9keW5hbWljLWZvcm0ubW9kZWxzJztcbmltcG9ydCB7IFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRHluYW1pY0ZpZWxkV3JhcHBlckNvbXBvbmVudCB9IGZyb20gJy4vZHluYW1pYy1maWVsZC13cmFwcGVyLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpYS1keW5hbWljLWZpZWxkLXRleHRhcmVhJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIElucHV0VGV4dGFyZWEsXG4gICAgRHluYW1pY0ZpZWxkV3JhcHBlckNvbXBvbmVudFxuICBdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxzaWEtZHluYW1pYy1maWVsZC13cmFwcGVyIFtmaWVsZF09XCJmaWVsZFwiIFtmb3JtXT1cImZvcm1cIiBbbW9kZV09XCJtb2RlXCI+XG4gICAgICA8ZGl2IFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgICAgICA8dGV4dGFyZWFcbiAgICAgICAgICBwSW5wdXRUZXh0YXJlYVxuICAgICAgICAgIFtpZF09XCJmaWVsZC5maWVsZFwiXG4gICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5maWVsZFwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImdldFBsYWNlaG9sZGVyKClcIlxuICAgICAgICAgIFtyb3dzXT1cImZpZWxkLnJvd3MgfHwgM1wiXG4gICAgICAgICAgW21heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGggfHwgNTI0Mjg4XCJcbiAgICAgICAgICBbY2xhc3MubmctaW52YWxpZF09XCJpc0ZpZWxkSW52YWxpZCgpXCJcbiAgICAgICAgICBbY2xhc3MubmctZGlydHldPVwiaXNGaWVsZERpcnR5KClcIj5cbiAgICAgICAgPC90ZXh0YXJlYT5cbiAgICAgIDwvZGl2PlxuICAgIDwvc2lhLWR5bmFtaWMtZmllbGQtd3JhcHBlcj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIHRleHRhcmVhIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgICB9XG4gIGBdXG59KVxuZXhwb3J0IGNsYXNzIER5bmFtaWNGaWVsZFRleHRhcmVhQ29tcG9uZW50IHtcbiAgQElucHV0KCkgZmllbGQhOiBEeW5hbWljRm9ybUZpZWxkQ29uZmlnO1xuICBASW5wdXQoKSBmb3JtITogRm9ybUdyb3VwO1xuICBASW5wdXQoKSBtb2RlOiAnZm9ybScgfCAnZmlsdGVyJyA9ICdmb3JtJztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlKSB7fVxuXG4gIGlzRmllbGRJbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KHRoaXMuZmllbGQuZmllbGQpO1xuICAgIHJldHVybiAhIShjb250cm9sICYmIGNvbnRyb2wuaW52YWxpZCAmJiAoY29udHJvbC5kaXJ0eSB8fCBjb250cm9sLnRvdWNoZWQpKTtcbiAgfVxuXG4gIGlzRmllbGREaXJ0eSgpOiBib29sZWFuIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtLmdldCh0aGlzLmZpZWxkLmZpZWxkKTtcbiAgICByZXR1cm4gISEoY29udHJvbCAmJiBjb250cm9sLmRpcnR5KTtcbiAgfVxuXG4gIGdldFBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMubW9kZSA9PT0gJ2ZpbHRlcicpIHtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGUoJ2NybXguYnVzaW5lc3MuZmlsdGVyX3NlYXJjaF9wbGFjZWhvbGRlcicsIHsgXG4gICAgICAgIGxhYmVsOiB0aGlzLmZpZWxkLmxhYmVsLnRvTG93ZXJDYXNlKCkgXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZmllbGQucGxhY2Vob2xkZXIgfHwgJyc7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { Component, Input } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { TranslatePipe } from '../../../pipes/translate.pipe';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../../../services/translation.service";
|
|
6
|
+
import * as i2 from "@angular/common";
|
|
7
|
+
/**
|
|
8
|
+
* Componente wrapper para campos de formulário dinâmico
|
|
9
|
+
* Centraliza a renderização de label, campo e mensagem de erro
|
|
10
|
+
*/
|
|
11
|
+
export class DynamicFieldWrapperComponent {
|
|
12
|
+
translationService;
|
|
13
|
+
field;
|
|
14
|
+
form;
|
|
15
|
+
mode = 'form';
|
|
16
|
+
constructor(translationService) {
|
|
17
|
+
this.translationService = translationService;
|
|
18
|
+
}
|
|
19
|
+
isRequired() {
|
|
20
|
+
return this.field.required === true && this.mode === 'form';
|
|
21
|
+
}
|
|
22
|
+
isFieldInvalid() {
|
|
23
|
+
const control = this.form.get(this.field.field);
|
|
24
|
+
return !!(control && control.invalid && (control.dirty || control.touched));
|
|
25
|
+
}
|
|
26
|
+
getFieldError() {
|
|
27
|
+
const control = this.form.get(this.field.field);
|
|
28
|
+
if (control?.hasError('required')) {
|
|
29
|
+
return this.translationService.translate('crmx.business.required_field');
|
|
30
|
+
}
|
|
31
|
+
if (control?.hasError('minlength')) {
|
|
32
|
+
const minLength = this.field.minLength || control.errors?.['minlength'].requiredLength;
|
|
33
|
+
return this.translationService.translate('crmx.business.min_length_error', { length: minLength });
|
|
34
|
+
}
|
|
35
|
+
if (control?.hasError('maxlength')) {
|
|
36
|
+
const maxLength = this.field.maxLength || control.errors?.['maxlength'].requiredLength;
|
|
37
|
+
return this.translationService.translate('crmx.business.max_length_error', { length: maxLength });
|
|
38
|
+
}
|
|
39
|
+
if (control?.hasError('min')) {
|
|
40
|
+
const min = this.field.min || control.errors?.['min'].min;
|
|
41
|
+
return this.translationService.translate('crmx.business.min_value_error', { value: min });
|
|
42
|
+
}
|
|
43
|
+
if (control?.hasError('max')) {
|
|
44
|
+
const max = this.field.max || control.errors?.['max'].max;
|
|
45
|
+
return this.translationService.translate('crmx.business.max_value_error', { value: max });
|
|
46
|
+
}
|
|
47
|
+
return '';
|
|
48
|
+
}
|
|
49
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFieldWrapperComponent, deps: [{ token: i1.TranslationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
50
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: DynamicFieldWrapperComponent, isStandalone: true, selector: "sia-dynamic-field-wrapper", inputs: { field: "field", form: "form", mode: "mode" }, ngImport: i0, template: `
|
|
51
|
+
<div class="field">
|
|
52
|
+
<label [for]="field.field">
|
|
53
|
+
{{ field.label | translate }}
|
|
54
|
+
<span *ngIf="isRequired()" class="required-asterisk">*</span>
|
|
55
|
+
</label>
|
|
56
|
+
|
|
57
|
+
<!-- Conteúdo do campo (projetado via ng-content) -->
|
|
58
|
+
<ng-content></ng-content>
|
|
59
|
+
|
|
60
|
+
<small *ngIf="isFieldInvalid()" class="p-error">
|
|
61
|
+
{{ getFieldError() }}
|
|
62
|
+
</small>
|
|
63
|
+
</div>
|
|
64
|
+
`, isInline: true, styles: [".field{display:flex;flex-direction:column;gap:.5rem;label{font-weight:500;color:var(--text-color);.required-asterisk{color:var(--p-red-500);margin-left:.25rem}}small.p-error{margin-top:.25rem;color:var(--p-red-500)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] });
|
|
65
|
+
}
|
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DynamicFieldWrapperComponent, decorators: [{
|
|
67
|
+
type: Component,
|
|
68
|
+
args: [{ selector: 'sia-dynamic-field-wrapper', standalone: true, imports: [
|
|
69
|
+
CommonModule,
|
|
70
|
+
TranslatePipe
|
|
71
|
+
], template: `
|
|
72
|
+
<div class="field">
|
|
73
|
+
<label [for]="field.field">
|
|
74
|
+
{{ field.label | translate }}
|
|
75
|
+
<span *ngIf="isRequired()" class="required-asterisk">*</span>
|
|
76
|
+
</label>
|
|
77
|
+
|
|
78
|
+
<!-- Conteúdo do campo (projetado via ng-content) -->
|
|
79
|
+
<ng-content></ng-content>
|
|
80
|
+
|
|
81
|
+
<small *ngIf="isFieldInvalid()" class="p-error">
|
|
82
|
+
{{ getFieldError() }}
|
|
83
|
+
</small>
|
|
84
|
+
</div>
|
|
85
|
+
`, styles: [".field{display:flex;flex-direction:column;gap:.5rem;label{font-weight:500;color:var(--text-color);.required-asterisk{color:var(--p-red-500);margin-left:.25rem}}small.p-error{margin-top:.25rem;color:var(--p-red-500)}}\n"] }]
|
|
86
|
+
}], ctorParameters: () => [{ type: i1.TranslationService }], propDecorators: { field: [{
|
|
87
|
+
type: Input
|
|
88
|
+
}], form: [{
|
|
89
|
+
type: Input
|
|
90
|
+
}], mode: [{
|
|
91
|
+
type: Input
|
|
92
|
+
}] } });
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC13cmFwcGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtYWkvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9maWVsZHMvZHluYW1pYy1maWVsZC13cmFwcGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7O0FBRzlEOzs7R0FHRztBQThDSCxNQUFNLE9BQU8sNEJBQTRCO0lBS25CO0lBSlgsS0FBSyxDQUEwQjtJQUMvQixJQUFJLENBQWE7SUFDakIsSUFBSSxHQUFzQixNQUFNLENBQUM7SUFFMUMsWUFBb0Isa0JBQXNDO1FBQXRDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7SUFBRyxDQUFDO0lBRTlELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQztJQUM5RCxDQUFDO0lBRUQsY0FBYztRQUNaLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVELGFBQWE7UUFDWCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWhELElBQUksT0FBTyxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ2xDLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1FBQzNFLENBQUM7UUFDRCxJQUFJLE9BQU8sRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUNuQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUMsY0FBYyxDQUFDO1lBQ3ZGLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxnQ0FBZ0MsRUFBRSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3BHLENBQUM7UUFDRCxJQUFJLE9BQU8sRUFBRSxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUNuQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUMsY0FBYyxDQUFDO1lBQ3ZGLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxnQ0FBZ0MsRUFBRSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3BHLENBQUM7UUFDRCxJQUFJLE9BQU8sRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM3QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQzFELE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQywrQkFBK0IsRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzVGLENBQUM7UUFDRCxJQUFJLE9BQU8sRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM3QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQzFELE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQywrQkFBK0IsRUFBRSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzVGLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7d0dBdkNVLDRCQUE0Qjs0RkFBNUIsNEJBQTRCLDZJQXRDN0I7Ozs7Ozs7Ozs7Ozs7O0dBY1QsbVNBakJDLFlBQVksOEhBQ1osYUFBYTs7NEZBd0NKLDRCQUE0QjtrQkE3Q3hDLFNBQVM7K0JBQ0UsMkJBQTJCLGNBQ3pCLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7cUJBQ2QsWUFDUzs7Ozs7Ozs7Ozs7Ozs7R0FjVDt1RkF5QlEsS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRHluYW1pY0Zvcm1GaWVsZENvbmZpZyB9IGZyb20gJy4uL21vZGVscy9keW5hbWljLWZvcm0ubW9kZWxzJztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICcuLi8uLi8uLi9waXBlcy90cmFuc2xhdGUucGlwZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy90cmFuc2xhdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBDb21wb25lbnRlIHdyYXBwZXIgcGFyYSBjYW1wb3MgZGUgZm9ybXVsw6FyaW8gZGluw6JtaWNvXG4gKiBDZW50cmFsaXphIGEgcmVuZGVyaXphw6fDo28gZGUgbGFiZWwsIGNhbXBvIGUgbWVuc2FnZW0gZGUgZXJyb1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaWEtZHluYW1pYy1maWVsZC13cmFwcGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBUcmFuc2xhdGVQaXBlXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XG4gICAgICA8bGFiZWwgW2Zvcl09XCJmaWVsZC5maWVsZFwiPlxuICAgICAgICB7eyBmaWVsZC5sYWJlbCB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8c3BhbiAqbmdJZj1cImlzUmVxdWlyZWQoKVwiIGNsYXNzPVwicmVxdWlyZWQtYXN0ZXJpc2tcIj4qPC9zcGFuPlxuICAgICAgPC9sYWJlbD5cbiAgICAgIFxuICAgICAgPCEtLSBDb250ZcO6ZG8gZG8gY2FtcG8gKHByb2pldGFkbyB2aWEgbmctY29udGVudCkgLS0+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICBcbiAgICAgIDxzbWFsbCAqbmdJZj1cImlzRmllbGRJbnZhbGlkKClcIiBjbGFzcz1cInAtZXJyb3JcIj5cbiAgICAgICAge3sgZ2V0RmllbGRFcnJvcigpIH19XG4gICAgICA8L3NtYWxsPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgLmZpZWxkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiAwLjVyZW07XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtY29sb3IpO1xuXG4gICAgICAgIC5yZXF1aXJlZC1hc3RlcmlzayB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLXAtcmVkLTUwMCk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc21hbGwucC1lcnJvciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgICAgIGNvbG9yOiB2YXIoLS1wLXJlZC01MDApO1xuICAgICAgfVxuICAgIH1cbiAgYF1cbn0pXG5leHBvcnQgY2xhc3MgRHluYW1pY0ZpZWxkV3JhcHBlckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGZpZWxkITogRHluYW1pY0Zvcm1GaWVsZENvbmZpZztcbiAgQElucHV0KCkgZm9ybSE6IEZvcm1Hcm91cDtcbiAgQElucHV0KCkgbW9kZTogJ2Zvcm0nIHwgJ2ZpbHRlcicgPSAnZm9ybSc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB0cmFuc2xhdGlvblNlcnZpY2U6IFRyYW5zbGF0aW9uU2VydmljZSkge31cblxuICBpc1JlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkLnJlcXVpcmVkID09PSB0cnVlICYmIHRoaXMubW9kZSA9PT0gJ2Zvcm0nO1xuICB9XG5cbiAgaXNGaWVsZEludmFsaWQoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY29udHJvbCA9IHRoaXMuZm9ybS5nZXQodGhpcy5maWVsZC5maWVsZCk7XG4gICAgcmV0dXJuICEhKGNvbnRyb2wgJiYgY29udHJvbC5pbnZhbGlkICYmIChjb250cm9sLmRpcnR5IHx8IGNvbnRyb2wudG91Y2hlZCkpO1xuICB9XG5cbiAgZ2V0RmllbGRFcnJvcigpOiBzdHJpbmcge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KHRoaXMuZmllbGQuZmllbGQpO1xuICAgIFxuICAgIGlmIChjb250cm9sPy5oYXNFcnJvcigncmVxdWlyZWQnKSkge1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZSgnY3JteC5idXNpbmVzcy5yZXF1aXJlZF9maWVsZCcpO1xuICAgIH1cbiAgICBpZiAoY29udHJvbD8uaGFzRXJyb3IoJ21pbmxlbmd0aCcpKSB7XG4gICAgICBjb25zdCBtaW5MZW5ndGggPSB0aGlzLmZpZWxkLm1pbkxlbmd0aCB8fCBjb250cm9sLmVycm9ycz8uWydtaW5sZW5ndGgnXS5yZXF1aXJlZExlbmd0aDtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGUoJ2NybXguYnVzaW5lc3MubWluX2xlbmd0aF9lcnJvcicsIHsgbGVuZ3RoOiBtaW5MZW5ndGggfSk7XG4gICAgfVxuICAgIGlmIChjb250cm9sPy5oYXNFcnJvcignbWF4bGVuZ3RoJykpIHtcbiAgICAgIGNvbnN0IG1heExlbmd0aCA9IHRoaXMuZmllbGQubWF4TGVuZ3RoIHx8IGNvbnRyb2wuZXJyb3JzPy5bJ21heGxlbmd0aCddLnJlcXVpcmVkTGVuZ3RoO1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZSgnY3JteC5idXNpbmVzcy5tYXhfbGVuZ3RoX2Vycm9yJywgeyBsZW5ndGg6IG1heExlbmd0aCB9KTtcbiAgICB9XG4gICAgaWYgKGNvbnRyb2w/Lmhhc0Vycm9yKCdtaW4nKSkge1xuICAgICAgY29uc3QgbWluID0gdGhpcy5maWVsZC5taW4gfHwgY29udHJvbC5lcnJvcnM/LlsnbWluJ10ubWluO1xuICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlLnRyYW5zbGF0ZSgnY3JteC5idXNpbmVzcy5taW5fdmFsdWVfZXJyb3InLCB7IHZhbHVlOiBtaW4gfSk7XG4gICAgfVxuICAgIGlmIChjb250cm9sPy5oYXNFcnJvcignbWF4JykpIHtcbiAgICAgIGNvbnN0IG1heCA9IHRoaXMuZmllbGQubWF4IHx8IGNvbnRyb2wuZXJyb3JzPy5bJ21heCddLm1heDtcbiAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0aW9uU2VydmljZS50cmFuc2xhdGUoJ2NybXguYnVzaW5lc3MubWF4X3ZhbHVlX2Vycm9yJywgeyB2YWx1ZTogbWF4IH0pO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from './dynamic-field-text.component';
|
|
2
|
+
export * from './dynamic-field-textarea.component';
|
|
3
|
+
export * from './dynamic-field-number.component';
|
|
4
|
+
export * from './dynamic-field-date.component';
|
|
5
|
+
export * from './dynamic-field-dropdown.component';
|
|
6
|
+
export * from './dynamic-field-lookup.component';
|
|
7
|
+
export * from './dynamic-field-wrapper.component';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzLWFpL3NyYy9saWIvY29tcG9uZW50cy9keW5hbWljLWZvcm0vZmllbGRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsbUNBQW1DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtZmllbGQtdGV4dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9keW5hbWljLWZpZWxkLXRleHRhcmVhLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtZmllbGQtbnVtYmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtZmllbGQtZGF0ZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9keW5hbWljLWZpZWxkLWRyb3Bkb3duLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtZmllbGQtbG9va3VwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtZmllbGQtd3JhcHBlci5jb21wb25lbnQnO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMtYWkvc3JjL2xpYi9jb21wb25lbnRzL2R5bmFtaWMtZm9ybS9tb2RlbHMvZHluYW1pYy1mb3JtLm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8qKlxuICogTG9va3VwIGNvbHVtbiBjb25maWd1cmF0aW9uIGZvciBkeW5hbWljIGZvcm0gbG9va3VwIGZpZWxkc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIER5bmFtaWNGb3JtTG9va3VwQ29sdW1uIHtcbiAgZmllbGQ6IHN0cmluZztcbiAgaGVhZGVyOiBzdHJpbmc7XG4gIHdpZHRoPzogc3RyaW5nO1xuICB0eXBlPzogJ3RleHQnIHwgJ251bWJlcic7XG59XG5cbi8qKlxuICogUmVzcG9uc2l2ZSBzaXplIGNvbmZpZ3VyYXRpb24gZm9yIGZvcm0gZmllbGRzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRHluYW1pY0Zvcm1GaWVsZFNpemUge1xuICB4cz86IG51bWJlcjsgLy8gRXh0cmEgc21hbGwgc2NyZWVucyAoPDU3NnB4KVxuICBzbT86IG51bWJlcjsgLy8gU21hbGwgc2NyZWVucyAo4omlNTc2cHgpXG4gIG1kPzogbnVtYmVyOyAvLyBNZWRpdW0gc2NyZWVucyAo4omlNzY4cHgpXG4gIGxnPzogbnVtYmVyOyAvLyBMYXJnZSBzY3JlZW5zICjiiaU5OTJweClcbiAgeGw/OiBudW1iZXI7IC8vIEV4dHJhIGxhcmdlIHNjcmVlbnMgKOKJpTEyMDBweClcbn1cblxuLyoqXG4gKiBEeW5hbWljIEZvcm0gRmllbGQgQ29uZmlndXJhdGlvblxuICogQ29tcGxldGUgY29uZmlndXJhdGlvbiBpbnRlcmZhY2UgZm9yIGFsbCBmaWVsZCB0eXBlcyBpbiBkeW5hbWljIGZvcm1zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRHluYW1pY0Zvcm1GaWVsZENvbmZpZyB7XG4gIC8vIEJhc2ljIHByb3BlcnRpZXNcbiAgZmllbGQ6IHN0cmluZztcbiAgbGFiZWw6IHN0cmluZztcbiAgdHlwZTogJ3RleHQnIHwgJ251bWJlcicgfCAnZHJvcGRvd24nIHwgJ2xvb2t1cCcgfCAndGV4dGFyZWEnIHwgJ2VudW0nIHwgJ2RhdGUnO1xuICBcbiAgLy8gVmFsaWRhdGlvblxuICB2YWxpZGF0b3JzPzogVmFsaWRhdG9yRm5bXTtcbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xuICBcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXNcbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIGRlZmF1bHRWYWx1ZT86IGFueTtcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBcbiAgLy8gTGF5b3V0IHByb3BlcnRpZXNcbiAgY29sc3Bhbj86IG51bWJlcjsgLy8gTnVtYmVyIG9mIGNvbHVtbnMgdG8gc3BhbiAoMS0xMiwgZGVmYXVsdDogNilcbiAgc2l6ZT86IER5bmFtaWNGb3JtRmllbGRTaXplOyAvLyBSZXNwb25zaXZlIHNpemVzIG9iamVjdFxuICBjb2xzcGFuWHM/OiBudW1iZXI7IC8vIERlcHJlY2F0ZWQ6IHVzZSBzaXplLnhzXG4gIGNvbHNwYW5TbT86IG51bWJlcjsgLy8gRGVwcmVjYXRlZDogdXNlIHNpemUuc21cbiAgY29sc3Bhbk1kPzogbnVtYmVyOyAvLyBEZXByZWNhdGVkOiB1c2Ugc2l6ZS5tZFxuICBjb2xzcGFuTGc/OiBudW1iZXI7IC8vIERlcHJlY2F0ZWQ6IHVzZSBzaXplLmxnXG4gIGNvbHNwYW5YbD86IG51bWJlcjsgLy8gRGVwcmVjYXRlZDogdXNlIHNpemUueGxcbiAgY29sc3BhbldoZW4/OiB7IC8vIENvbmRpdGlvbmFsIGNvbHNwYW4gYmFzZWQgb24gb3RoZXIgZmllbGQgdmFsdWVzXG4gICAgZmllbGQ6IHN0cmluZztcbiAgICB2YWx1ZTogYW55O1xuICAgIGNvbHNwYW46IG51bWJlcjtcbiAgfVtdO1xuICBcbiAgLy8gQ29uZGl0aW9uYWwgdmlzaWJpbGl0eSBhbmQgc3RhdGVcbiAgdmlzaWJsZVdoZW4/OiB7IC8vIENvbmRpdGlvbmFsIHZpc2liaWxpdHlcbiAgICBmaWVsZDogc3RyaW5nO1xuICAgIHZhbHVlOiBhbnk7XG4gIH07XG4gIGRpc2FibGVkV2hlbj86IHsgLy8gQ29uZGl0aW9uYWwgZGlzYWJsZWQgc3RhdGVcbiAgICBmaWVsZDogc3RyaW5nO1xuICAgIHZhbHVlOiBhbnk7XG4gIH07XG4gIFxuICAvLyBUZXh0IGZpZWxkIHByb3BlcnRpZXNcbiAgbWluTGVuZ3RoPzogbnVtYmVyO1xuICBtYXhMZW5ndGg/OiBudW1iZXI7XG4gIG1hc2s/OiAnY2VwJyB8ICdwaG9uZScgfCAnZG9jdW1lbnQnIHwgJ2NwZicgfCAnY25waicgfCAnZHluYW1pYyc7XG4gIHVzZUNlcE1hc2s/OiBib29sZWFuOyAvLyBEZXByZWNhdGVkOiB1c2UgbWFzaz0nY2VwJ1xuICB1c2VQaG9uZU1hc2s/OiBib29sZWFuOyAvLyBEZXByZWNhdGVkOiB1c2UgbWFzaz0ncGhvbmUnXG4gIFxuICAvLyBUZXh0YXJlYSBwcm9wZXJ0aWVzXG4gIHJvd3M/OiBudW1iZXI7XG4gIGZ1bGxTaXplPzogYm9vbGVhbjsgLy8gRm9yIHRleHRhcmVhIHRvIHRha2UgZnVsbCB3aWR0aFxuICBcbiAgLy8gTnVtYmVyIGZpZWxkIHByb3BlcnRpZXNcbiAgbWluPzogbnVtYmVyO1xuICBtYXg/OiBudW1iZXI7XG4gIG1pbkZyYWN0aW9uRGlnaXRzPzogbnVtYmVyO1xuICBtYXhGcmFjdGlvbkRpZ2l0cz86IG51bWJlcjtcbiAgbnVtYmVyTW9kZT86ICdkZWNpbWFsJyB8ICdjdXJyZW5jeSc7XG4gIGN1cnJlbmN5Pzogc3RyaW5nOyAvLyBDdXJyZW5jeSBjb2RlIChkZWZhdWx0OiAnQlJMJylcbiAgbG9jYWxlPzogc3RyaW5nOyAvLyBMb2NhbGUgZm9yIG51bWJlciBmb3JtYXR0aW5nIChkZWZhdWx0OiAncHQtQlInKVxuICB1c2VHcm91cGluZz86IGJvb2xlYW47IC8vIEZvciBudW1iZXIgaW5wdXRzXG4gIFxuICAvLyBEYXRlIGZpZWxkIHByb3BlcnRpZXNcbiAgZGF0ZUZvcm1hdD86IHN0cmluZzsgLy8gRGF0ZSBmb3JtYXQgZm9yIGNhbGVuZGFyIChkZWZhdWx0OiAnZGQvbW0veXknKVxuICBcbiAgLy8gRHJvcGRvd24gcHJvcGVydGllc1xuICBvcHRpb25zPzogYW55W107XG4gIG9wdGlvbkxhYmVsPzogc3RyaW5nO1xuICBvcHRpb25WYWx1ZT86IHN0cmluZztcbiAgc2hvd0NsZWFyPzogYm9vbGVhbjtcbiAgZmlsdGVyPzogYm9vbGVhbjtcbiAgZmlsdGVyQnk/OiBzdHJpbmc7XG4gIFxuICAvLyBFbnVtIHByb3BlcnRpZXNcbiAgZW51bVZhbHVlcz86IHN0cmluZ1tdO1xuICBlbnVtTGFiZWxzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgZW51bU9wdGlvbnM/OiB7IHZhbHVlOiBhbnk7IGxhYmVsOiBzdHJpbmcgfVtdOyAvLyBBbHRlcm5hdGl2ZSB0byBlbnVtVmFsdWVzL2VudW1MYWJlbHNcbiAgXG4gIC8vIExvb2t1cCBwcm9wZXJ0aWVzXG4gIGxvb2t1cEVudGl0eT86IHN0cmluZzsgLy8gRW50aXR5IG5hbWUgZm9yIGxvb2t1cFxuICBsb29rdXBTZXJ2aWNlPzogYW55OyAvLyBTZXJ2aWNlIHRvIGZldGNoIGxvb2t1cCBkYXRhXG4gIGxvb2t1cERpc3BsYXlGaWVsZD86IHN0cmluZzsgLy8gRmllbGQgdG8gZGlzcGxheSBpbiB0aGUgbG9va3VwIChkZWZhdWx0OiAnbmFtZScpXG4gIGxvb2t1cERpc3BsYXlGaWVsZHM/OiBzdHJpbmdbXTsgLy8gTXVsdGlwbGUgZmllbGRzIHRvIGRpc3BsYXkgc2VwYXJhdGVkIGJ5ICcgLSAnXG4gIGxvb2t1cFZhbHVlRmllbGQ/OiBzdHJpbmc7IC8vIEZpZWxkIHRvIHVzZSBhcyB2YWx1ZSAoZGVmYXVsdDogJ2lkJylcbiAgbG9va3VwU2VhcmNoRmllbGRzPzogc3RyaW5nW107IC8vIEZpZWxkcyB0byBzZWFyY2ggaW4gKGRlZmF1bHQ6IFsnbmFtZSddKVxuICBsb29rdXBDb2x1bW5zPzogRHluYW1pY0Zvcm1Mb29rdXBDb2x1bW5bXTsgLy8gQ29sdW1ucyB0byBkaXNwbGF5IGluIGxvb2t1cCB0YWJsZVxuICBsb29rdXBGaWx0ZXJzPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTsgLy8gU3RhdGljIGZpbHRlcnMgZm9yIGxvb2t1cFxuICBsb29rdXBEeW5hbWljRmlsdGVycz86IChmb3JtVmFsdWVzOiBhbnkpID0+IHsgW2tleTogc3RyaW5nXTogYW55IH07IC8vIER5bmFtaWMgZmlsdGVycyBiYXNlZCBvbiBmb3JtIHZhbHVlc1xufVxuXG4vKipcbiAqIER5bmFtaWMgRm9ybSBEaXNwbGF5IE1vZGVcbiAqIERlZmluZSBjb21vIG8gZm9ybXVsw6FyaW8gc2Vyw6EgZXhpYmlkb1xuICovXG5leHBvcnQgdHlwZSBEeW5hbWljRm9ybURpc3BsYXlNb2RlID0gJ2lubGluZScgfCAnZGlhbG9nJyB8ICdkcmF3ZXInIHwgJ2lubGluZS1lZGl0JztcblxuLyoqXG4gKiBEeW5hbWljIEZvcm0gRGlhbG9nIENvbmZpZ3VyYXRpb25cbiAqIENvbmZpZ3VyYcOnw7VlcyBlc3BlY8OtZmljYXMgcGFyYSBvIG1vZG8gZGlhbG9nXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRHluYW1pY0Zvcm1EaWFsb2dDb25maWcge1xuICBoZWFkZXI/OiBzdHJpbmc7XG4gIHdpZHRoPzogc3RyaW5nO1xuICBkcmFnZ2FibGU/OiBib29sZWFuO1xuICByZXNpemFibGU/OiBib29sZWFuO1xuICBtYXhpbWl6YWJsZT86IGJvb2xlYW47XG4gIGNsb3NlT25Fc2NhcGU/OiBib29sZWFuO1xuICBkaXNtaXNzYWJsZU1hc2s/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIER5bmFtaWMgRm9ybSBEcmF3ZXIgU2l6ZVxuICogVGFtYW5ob3MgcGFkcm9uaXphZG9zIHBhcmEgbyBkcmF3ZXJcbiAqL1xuZXhwb3J0IHR5cGUgRHluYW1pY0Zvcm1EcmF3ZXJTaXplID0gJ3NtYWxsJyB8ICdtZWRpdW0nIHwgJ2xhcmdlJyB8ICd4bGFyZ2UnIHwgJ2Z1bGwnO1xuXG4vKipcbiAqIER5bmFtaWMgRm9ybSBEcmF3ZXIgQ29uZmlndXJhdGlvblxuICogQ29uZmlndXJhw6fDtWVzIGVzcGVjw61maWNhcyBwYXJhIG8gbW9kbyBkcmF3ZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEeW5hbWljRm9ybURyYXdlckNvbmZpZyB7XG4gIGhlYWRlcj86IHN0cmluZztcbiAgcG9zaXRpb24/OiAnbGVmdCcgfCAncmlnaHQnIHwgJ3RvcCcgfCAnYm90dG9tJztcbiAgc2l6ZT86IER5bmFtaWNGb3JtRHJhd2VyU2l6ZTsgLy8gVGFtYW5obyBwYWRyb25pemFkbyBkbyBkcmF3ZXJcbiAgY3VzdG9tV2lkdGg/OiBzdHJpbmc7IC8vIExhcmd1cmEgY3VzdG9taXphZGEgKHNvYnJlc2NyZXZlIHNpemUpXG4gIHNob3dDbG9zZUljb24/OiBib29sZWFuO1xuICBjbG9zZU9uRXNjYXBlPzogYm9vbGVhbjtcbiAgZGlzbWlzc2FibGU/OiBib29sZWFuOyAvLyBDb250cm9scyBtb2RhbCBiZWhhdmlvciAoYmFja2Ryb3AgY2xpY2sgdG8gY2xvc2UpXG59XG5cbi8qKlxuICogRHluYW1pYyBGb3JtIFNlY3Rpb25cbiAqIEFncnVwYSBjYW1wb3MgZW0gc2XDp8O1ZXMgY29sYXBzw6F2ZWlzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRHluYW1pY0Zvcm1TZWN0aW9uIHtcbiAgdGl0bGU6IHN0cmluZztcbiAgZmllbGRzOiBEeW5hbWljRm9ybUZpZWxkQ29uZmlnW107XG4gIGNvbGxhcHNlZD86IGJvb2xlYW47IC8vIFNlIGEgc2XDp8OjbyBpbmljaWEgY29sYXBzYWRhIChwYWRyw6NvOiBmYWxzZSlcbiAgdG9nZ2xlYWJsZT86IGJvb2xlYW47IC8vIFNlIGEgc2XDp8OjbyBwb2RlIHNlciBjb2xhcHNhZGEgKHBhZHLDo286IHRydWUpXG4gIGljb24/OiBzdHJpbmc7IC8vIMONY29uZSBkYSBzZcOnw6NvIChvcGNpb25hbClcbn1cblxuLyoqXG4gKiBEeW5hbWljIEZvcm0gQ29uZmlndXJhdGlvblxuICogTWFpbiBjb25maWd1cmF0aW9uIGludGVyZmFjZSBmb3IgdGhlIGR5bmFtaWMgZm9ybSBjb21wb25lbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEeW5hbWljRm9ybUNvbmZpZyB7XG4gIGZpZWxkczogRHluYW1pY0Zvcm1GaWVsZENvbmZpZ1tdO1xuICBzZWN0aW9ucz86IER5bmFtaWNGb3JtU2VjdGlvbltdOyAvLyBTZcOnw7VlcyBkZSBjYW1wb3MgKG9wY2lvbmFsKVxuICBmaXhlZEZpbHRlcnM/OiBEeW5hbWljRm9ybUZpZWxkQ29uZmlnW107IC8vIEZpbHRyb3MgZml4b3MgKHNlbXByZSB2aXPDrXZlaXMgbm8gdG9wbywgYXBlbmFzIG1vZG8gZmlsdGVyKVxuICBmaWx0ZXJTZWN0aW9ucz86IER5bmFtaWNGb3JtU2VjdGlvbltdOyAvLyBTZcOnw7VlcyBkZSBmaWx0cm9zIChjb2xhcHPDoXZlaXMsIGFwZW5hcyBtb2RvIGZpbHRlcilcbiAgbW9kZT86ICdmb3JtJyB8ICdmaWx0ZXInO1xuICBkaXNwbGF5TW9kZT86IER5bmFtaWNGb3JtRGlzcGxheU1vZGU7IC8vIE1vZG8gZGUgZXhpYmnDp8OjbyAoaW5saW5lLCBkaWFsb2csIGRyYXdlcilcbiAgZGlhbG9nQ29uZmlnPzogRHluYW1pY0Zvcm1EaWFsb2dDb25maWc7IC8vIENvbmZpZ3VyYcOnw7VlcyBkbyBkaWFsb2dcbiAgZHJhd2VyQ29uZmlnPzogRHluYW1pY0Zvcm1EcmF3ZXJDb25maWc7IC8vIENvbmZpZ3VyYcOnw7VlcyBkbyBkcmF3ZXJcbiAgaW5pdGlhbERhdGE/OiBhbnk7XG4gIHN1Ym1pdE9uRW50ZXI/OiBib29sZWFuO1xuICBzaG93U3VibWl0QnV0dG9uPzogYm9vbGVhbjtcbiAgc3VibWl0QnV0dG9uTGFiZWw/OiBzdHJpbmc7XG4gIHNob3dDYW5jZWxCdXR0b24/OiBib29sZWFuO1xuICBjYW5jZWxCdXR0b25MYWJlbD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBEeW5hbWljIEZvcm0gU3VibWl0IEV2ZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRHluYW1pY0Zvcm1TdWJtaXRFdmVudCB7XG4gIHZhbHVlOiBhbnk7XG4gIHZhbGlkOiBib29sZWFuO1xuICBkaXJ0eTogYm9vbGVhbjtcbiAgdG91Y2hlZDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUeXBlIGFsaWFzIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHdpdGggRm9ybUZpZWxkQ29uZmlnXG4gKiBAZGVwcmVjYXRlZCBVc2UgRHluYW1pY0Zvcm1GaWVsZENvbmZpZyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCB0eXBlIEZvcm1GaWVsZENvbmZpZyA9IER5bmFtaWNGb3JtRmllbGRDb25maWc7XG4iXX0=
|