@esfaenza/forms-and-validations 13.3.7 → 13.3.10
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/esm2020/lib/forms/base-form-control.mjs +22 -11
- package/esm2020/lib/forms/form-adaptive/form-adaptive.component.mjs +27 -8
- package/esm2020/lib/forms/form-autocomplete/form-autocomplete.component.mjs +52 -8
- package/esm2020/lib/forms/form-checkbox/form-checkbox.component.mjs +7 -3
- package/esm2020/lib/forms/form-date/form-date.component.mjs +7 -3
- package/esm2020/lib/forms/form-datetime/form-datetime.component.mjs +7 -3
- package/esm2020/lib/forms/form-file/form-file.component.mjs +7 -4
- package/esm2020/lib/forms/form-input/form-input.component.mjs +3 -3
- package/esm2020/lib/forms/form-multiselect/form-multiselect.component.mjs +15 -6
- package/esm2020/lib/forms/form-select/form-select.component.mjs +10 -5
- package/esm2020/lib/forms/form-template/form-template.component.mjs +17 -3
- package/esm2020/lib/forms/form-textarea/form-textarea.component.mjs +3 -3
- package/esm2020/lib/forms/form-time/form-time.component.mjs +6 -3
- package/esm2020/lib/forms-and-validations.module.mjs +14 -1
- package/esm2020/lib/validations/base-validation.loc.mjs +2 -1
- package/esm2020/lib/validations/validation-autocomplete/validation-autocomplete.component.mjs +12 -34
- package/esm2020/lib/validations/validation-autocomplete-multi/validation-autocomplete-multi.component.mjs +199 -0
- package/esm2020/lib/validations/validation-input/validation-input.component.mjs +8 -7
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/esfaenza-forms-and-validations.mjs +418 -120
- package/fesm2015/esfaenza-forms-and-validations.mjs.map +1 -1
- package/fesm2020/esfaenza-forms-and-validations.mjs +412 -120
- package/fesm2020/esfaenza-forms-and-validations.mjs.map +1 -1
- package/lib/forms/base-form-control.d.ts +8 -4
- package/lib/forms/form-adaptive/form-adaptive.component.d.ts +2 -0
- package/lib/forms/form-autocomplete/form-autocomplete.component.d.ts +12 -1
- package/lib/forms/form-checkbox/form-checkbox.component.d.ts +1 -0
- package/lib/forms/form-date/form-date.component.d.ts +1 -0
- package/lib/forms/form-datetime/form-datetime.component.d.ts +1 -0
- package/lib/forms/form-multiselect/form-multiselect.component.d.ts +4 -2
- package/lib/forms/form-select/form-select.component.d.ts +1 -0
- package/lib/forms/form-template/form-template.component.d.ts +10 -1
- package/lib/forms-and-validations.module.d.ts +20 -16
- package/lib/validations/validation-autocomplete/validation-autocomplete.component.d.ts +14 -42
- package/lib/validations/validation-autocomplete-multi/validation-autocomplete-multi.component.d.ts +81 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -55,8 +55,6 @@ export declare abstract class BaseFormControl implements ControlValueAccessor {
|
|
|
55
55
|
FieldAppearence: "legacy" | "standard" | "fill" | "outline";
|
|
56
56
|
/** Utilizza o meno il Layout di un form (Label con input di fianco), se false mostra solo l'input */
|
|
57
57
|
FormLayout: boolean;
|
|
58
|
-
/** Indica che la parte input del controllo dev'essere una label readonly e la parte label di titolo dev'essere in bold. Per utilizzare un solo componente sia per la modifica che per il dettaglio */
|
|
59
|
-
DisplayMode: boolean;
|
|
60
58
|
/** Definisce se richiamare l'EventEmitter **inputChange** in maniera classica (true) o solo per la change considerate definitive come tasto invio / blur / ecc... (false) */
|
|
61
59
|
EmitPendingChanges: boolean;
|
|
62
60
|
/** Attiva o disattiva la validazione per questo componente */
|
|
@@ -83,8 +81,14 @@ export declare abstract class BaseFormControl implements ControlValueAccessor {
|
|
|
83
81
|
Source: any[];
|
|
84
82
|
/** Nome della proprietà che contiene l'Id degli oggetti bindati nella **Source** */
|
|
85
83
|
IdField: string;
|
|
84
|
+
/** Indica che la parte input del controllo dev'essere una label readonly e la parte label di titolo dev'essere in bold. Per utilizzare un solo componente sia per la modifica che per il dettaglio */
|
|
85
|
+
DisplayMode: boolean;
|
|
86
|
+
/** Indica la condizione per cui un elemento in Modalità Display può essere visibile in base a ulteriori controlli */
|
|
87
|
+
DisplayCondition: boolean;
|
|
86
88
|
/** Template per visualizzare la modalità **DisplayMode** come vuole il programmatore frocio di turno */
|
|
87
89
|
DisplayModeTemplate: TemplateRef<any>;
|
|
90
|
+
/** Layout del Form quando è in modalità Display. Di default mantiene la formattazione a form */
|
|
91
|
+
DisplayLayout: 'form' | 'inline' | 'hidden';
|
|
88
92
|
/**
|
|
89
93
|
* Espressione simil-Angular per cambiare il testo dei componenti che scelgono il proprio modello da una **Source**
|
|
90
94
|
*
|
|
@@ -205,7 +209,7 @@ export declare abstract class BaseFormControl implements ControlValueAccessor {
|
|
|
205
209
|
*
|
|
206
210
|
* Non posso tenerlo protected altrimenti posso eseguirlo solo dal .ts e non dall' .html
|
|
207
211
|
*/
|
|
208
|
-
changed(forcedValue?: any, markForCheck?: boolean): void;
|
|
212
|
+
changed(forcedValue?: any, markForCheck?: boolean, modelEvaluationHandled?: boolean): void;
|
|
209
213
|
/**
|
|
210
214
|
* @ignore
|
|
211
215
|
* Classico "spara fuori" sul focus. Mantengo lo stesso nome dell'evento dei <val-*> (inputChange) per retrocompatibilità.
|
|
@@ -229,5 +233,5 @@ export declare abstract class BaseFormControl implements ControlValueAccessor {
|
|
|
229
233
|
/** @ignore */
|
|
230
234
|
abstract onNotNullValueSet(): void;
|
|
231
235
|
static ɵfac: i0.ɵɵFactoryDeclaration<BaseFormControl, never>;
|
|
232
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<BaseFormControl, never, never, { "FocusSubject": "FocusSubject"; "FieldAppearence": "FieldAppearence"; "FormLayout": "FormLayout"; "
|
|
236
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<BaseFormControl, never, never, { "FocusSubject": "FocusSubject"; "FieldAppearence": "FieldAppearence"; "FormLayout": "FormLayout"; "EmitPendingChanges": "EmitPendingChanges"; "Validation": "Validation"; "Placeholder": "Placeholder"; "FormGroupClass": "FormGroupClass"; "FailedValidationMessage": "FailedValidationMessage"; "ForcedError": "ForcedError"; "Label": "Label"; "LabelColWidth": "LabelColWidth"; "InputColWidth": "InputColWidth"; "Last": "Last"; "Form": "Form"; "Source": "Source"; "IdField": "IdField"; "DisplayMode": "DisplayMode"; "DisplayCondition": "DisplayCondition"; "DisplayModeTemplate": "DisplayModeTemplate"; "DisplayLayout": "DisplayLayout"; "Display": "Display"; "Readonly": "Readonly"; "LabelInputRatio": "LabelInputRatio"; }, { "inputChange": "inputChange"; "inputFocus": "inputFocus"; "inputFinalized": "inputFinalized"; }, never>;
|
|
233
237
|
}
|
|
@@ -71,6 +71,8 @@ export declare class FormAdaptiveComponent extends BaseFormControl implements Co
|
|
|
71
71
|
* @param {string} event Input utente
|
|
72
72
|
*/
|
|
73
73
|
filterSource(event: string): void;
|
|
74
|
+
/** @ignore */
|
|
75
|
+
private removeFilteredSourceOnDescriptionSelection;
|
|
74
76
|
/** Metodo richiamato quando viene modificato il modello del campo di input */
|
|
75
77
|
changed(): void;
|
|
76
78
|
/** @ignore */
|
|
@@ -21,6 +21,10 @@ export declare class FormAutocompleteComponent extends BaseFormControl implement
|
|
|
21
21
|
RequiredPlaceholder: string;
|
|
22
22
|
/** Indica se i controlli devono essere effettuati tenendo conto del Case o meno. Vale solo qualora la **Source** fosse fornita */
|
|
23
23
|
CaseSensitive: boolean;
|
|
24
|
+
/** Indica se usare la modalità multiselezione o no */
|
|
25
|
+
Multi: boolean;
|
|
26
|
+
/** Indica se usare la modalità multiselezione o no */
|
|
27
|
+
MultiElementsThreshold: number;
|
|
24
28
|
/**
|
|
25
29
|
* Indica se ignorare il prossimo evento writeValue che normalmente dovrebbe richiedere la nuova source. Serve per quando l'utente seleziona un elemento:
|
|
26
30
|
* Subito dopo partirebbe un altro evento modelChange che ricaricherebbe nuovamente la source
|
|
@@ -41,6 +45,11 @@ export declare class FormAutocompleteComponent extends BaseFormControl implement
|
|
|
41
45
|
* @param {any} value Valore scritto nell'input di testo
|
|
42
46
|
*/
|
|
43
47
|
private finalizeValue;
|
|
48
|
+
/**
|
|
49
|
+
* Quando viene scritto un nuovo valore bisogna controllare se per botta di culo fosse un id, in tal caso dev'essere rieffettuato il bind
|
|
50
|
+
* per mostrare solo la descrizione nell'autocomplete
|
|
51
|
+
*/
|
|
52
|
+
evaluateIdResearch(): void;
|
|
44
53
|
/**
|
|
45
54
|
* Evento di filtro della sorgente dati in base all'input utente
|
|
46
55
|
*
|
|
@@ -48,6 +57,8 @@ export declare class FormAutocompleteComponent extends BaseFormControl implement
|
|
|
48
57
|
*/
|
|
49
58
|
filterSource(event: string): void;
|
|
50
59
|
/** @ignore */
|
|
60
|
+
private removeFilteredSourceOnDescriptionSelection;
|
|
61
|
+
/** @ignore */
|
|
51
62
|
ngOnChanges(changes: SimpleChanges): void;
|
|
52
63
|
/** @ignore Override che marca anche il prossimo evento di filterSource da ignorare */
|
|
53
64
|
changed(forcedValue?: any, markForCheck?: boolean): void;
|
|
@@ -58,5 +69,5 @@ export declare class FormAutocompleteComponent extends BaseFormControl implement
|
|
|
58
69
|
/** @ignore */
|
|
59
70
|
private throttla;
|
|
60
71
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormAutocompleteComponent, [null, null, { optional: true; self: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }]>;
|
|
61
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FormAutocompleteComponent, "form-autocomplete", never, { "SelectLabel": "SelectLabel"; "SearchFunction": "SearchFunction"; "MinChars": "MinChars"; "RequiredPlaceholder": "RequiredPlaceholder"; "CaseSensitive": "CaseSensitive"; }, {}, never, never>;
|
|
72
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FormAutocompleteComponent, "form-autocomplete", never, { "SelectLabel": "SelectLabel"; "SearchFunction": "SearchFunction"; "MinChars": "MinChars"; "RequiredPlaceholder": "RequiredPlaceholder"; "CaseSensitive": "CaseSensitive"; "Multi": "Multi"; "MultiElementsThreshold": "MultiElementsThreshold"; }, {}, never, never>;
|
|
62
73
|
}
|
|
@@ -11,6 +11,7 @@ export declare class FormCheckboxComponent extends BaseFormControl implements Co
|
|
|
11
11
|
constructor(lc: LocalizationService, cdr: ChangeDetectorRef, ngControl: NgControl, _validators: Array<any>, ac: AccessControlService, AppContext: ComponentContext, ACO_CUSTOMKEY: string);
|
|
12
12
|
/** @ignore */
|
|
13
13
|
writeValue(obj: any): void;
|
|
14
|
+
changed(): void;
|
|
14
15
|
/** @ignore */
|
|
15
16
|
onNotNullValueSet(): void;
|
|
16
17
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormCheckboxComponent, [null, null, { optional: true; self: true; }, { optional: true; host: true; }, null, { optional: true; }, { optional: true; }]>;
|
|
@@ -13,6 +13,7 @@ export declare class FormDateComponent extends BaseFormControl implements Contro
|
|
|
13
13
|
constructor(datesExts: DateService, cdr: ChangeDetectorRef, ngControl: NgControl, _validators: Array<any>, ac: AccessControlService, AppContext: ComponentContext, ACO_CUSTOMKEY: string, FAV_DEBUG_MODE: boolean);
|
|
14
14
|
/** @ignore */
|
|
15
15
|
writeValue(obj: any): void;
|
|
16
|
+
changed(): void;
|
|
16
17
|
/** @ignore */
|
|
17
18
|
onNotNullValueSet(): void;
|
|
18
19
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormDateComponent, [null, null, { optional: true; self: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }]>;
|
|
@@ -15,6 +15,7 @@ export declare class FormDateTimeComponent extends BaseFormControl implements Co
|
|
|
15
15
|
constructor(datesExts: DateService, cdr: ChangeDetectorRef, ngControl: NgControl, _validators: Array<any>, ac: AccessControlService, AppContext: ComponentContext, ACO_CUSTOMKEY: string, FAV_DEBUG_MODE: boolean);
|
|
16
16
|
/** @ignore */
|
|
17
17
|
writeValue(obj: any): void;
|
|
18
|
+
changed(): void;
|
|
18
19
|
/** @ignore */
|
|
19
20
|
onNotNullValueSet(): void;
|
|
20
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormDateTimeComponent, [null, null, { optional: true; self: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }]>;
|
|
@@ -25,6 +25,8 @@ export declare class FormMultiSelectComponent extends BaseFormControl implements
|
|
|
25
25
|
SelectLabel: string;
|
|
26
26
|
/** Permette al componente di gestire come modello non una lista di chiavi, ma una lista di KeyValue */
|
|
27
27
|
UseKeyValues: boolean;
|
|
28
|
+
/** Indica al componente di emettere una lista di chiavi separate da virgola piuttosto che una lista vera e propria di chiavi/KeyValue */
|
|
29
|
+
UseCommaSeparatedList: boolean;
|
|
28
30
|
/** Impostazioni del componente interno **angular2-multiselect** */
|
|
29
31
|
Settings: {
|
|
30
32
|
selectAllText: string;
|
|
@@ -55,9 +57,9 @@ export declare class FormMultiSelectComponent extends BaseFormControl implements
|
|
|
55
57
|
*/
|
|
56
58
|
handleNullNgControl(): boolean;
|
|
57
59
|
/** @ignore Override per gestire input in ingresso */
|
|
58
|
-
writeValue(obj: any[]): void;
|
|
60
|
+
writeValue(obj: any[] | string): void;
|
|
59
61
|
/** @ignore Override per gestire input in uscita */
|
|
60
62
|
changed(): void;
|
|
61
63
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormMultiSelectComponent, [null, null, { optional: true; self: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }]>;
|
|
62
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FormMultiSelectComponent, "form-multiselect", never, { "SelectLabel": "SelectLabel"; "UseKeyValues": "UseKeyValues"; }, {}, never, never>;
|
|
64
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FormMultiSelectComponent, "form-multiselect", never, { "SelectLabel": "SelectLabel"; "UseKeyValues": "UseKeyValues"; "UseCommaSeparatedList": "UseCommaSeparatedList"; }, {}, never, never>;
|
|
63
65
|
}
|
|
@@ -33,6 +33,7 @@ export declare class FormSelectComponent extends BaseFormControl implements Cont
|
|
|
33
33
|
private detatchPreviousAndRetatchNext;
|
|
34
34
|
/** @ignore */
|
|
35
35
|
writeValue(obj: any): void;
|
|
36
|
+
changed(): void;
|
|
36
37
|
/** @ignore */
|
|
37
38
|
onNotNullValueSet(): void;
|
|
38
39
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormSelectComponent, [null, null, { optional: true; self: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }]>;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TemplateRef } from "@angular/core";
|
|
1
2
|
import * as i0 from "@angular/core";
|
|
2
3
|
/**
|
|
3
4
|
* Componente da utilizzare quando l'implementazione dell'input non è disponibile nella libreria,
|
|
@@ -20,8 +21,16 @@ export declare class FormTemplateComponent {
|
|
|
20
21
|
Last: boolean;
|
|
21
22
|
/** Classe extra per il form-group in cui viene wrappato l'input */
|
|
22
23
|
FormGroupClass: string;
|
|
24
|
+
/** Indica che la parte input del controllo dev'essere una label readonly e la parte label di titolo dev'essere in bold. Per utilizzare un solo componente sia per la modifica che per il dettaglio */
|
|
25
|
+
DisplayMode: boolean;
|
|
26
|
+
/** Template per visualizzare la modalità **DisplayMode** come vuole il programmatore frocio di turno */
|
|
27
|
+
DisplayModeTemplate: TemplateRef<any>;
|
|
28
|
+
/** Layout del Form quando è in modalità Display. Di default mantiene la formattazione a form */
|
|
29
|
+
DisplayLayout: 'form' | 'inline' | 'hidden';
|
|
30
|
+
/** Indica la condizione per cui un elemento in Modalità Display può essere visibile in base a ulteriori controlli */
|
|
31
|
+
DisplayCondition: boolean;
|
|
23
32
|
/** Permette di settare in una volta solo gli input LabelColWidth e InputColWidth, basta scriverlo con la sintassi "X Y" */
|
|
24
33
|
set LabelInputRatio(input: string);
|
|
25
34
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormTemplateComponent, never>;
|
|
26
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FormTemplateComponent, "form-template", never, { "Required": "Required"; "Label": "Label"; "LabelClass": "LabelClass"; "FormLayout": "FormLayout"; "LabelColWidth": "LabelColWidth"; "InputColWidth": "InputColWidth"; "Last": "Last"; "FormGroupClass": "FormGroupClass"; "LabelInputRatio": "LabelInputRatio"; }, {}, never, ["*"
|
|
35
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FormTemplateComponent, "form-template", never, { "Required": "Required"; "Label": "Label"; "LabelClass": "LabelClass"; "FormLayout": "FormLayout"; "LabelColWidth": "LabelColWidth"; "InputColWidth": "InputColWidth"; "Last": "Last"; "FormGroupClass": "FormGroupClass"; "DisplayMode": "DisplayMode"; "DisplayModeTemplate": "DisplayModeTemplate"; "DisplayLayout": "DisplayLayout"; "DisplayCondition": "DisplayCondition"; "LabelInputRatio": "LabelInputRatio"; }, {}, never, ["*"]>;
|
|
27
36
|
}
|
|
@@ -20,24 +20,28 @@ import * as i16 from "./forms/form-adaptive/form-adaptive.component";
|
|
|
20
20
|
import * as i17 from "./forms/form-multiselect/form-multiselect.component";
|
|
21
21
|
import * as i18 from "./forms/form-file/form-file.component";
|
|
22
22
|
import * as i19 from "./validations/validation-autocomplete/validation-autocomplete.component";
|
|
23
|
-
import * as i20 from "./
|
|
24
|
-
import * as i21 from "./forms/form-
|
|
25
|
-
import * as i22 from "./
|
|
26
|
-
import * as i23 from "./
|
|
27
|
-
import * as i24 from "
|
|
28
|
-
import * as i25 from "@angular/
|
|
29
|
-
import * as i26 from "@
|
|
30
|
-
import * as i27 from "@
|
|
31
|
-
import * as i28 from "@angular/material/
|
|
32
|
-
import * as i29 from "@
|
|
33
|
-
import * as i30 from "
|
|
34
|
-
import * as i31 from "@
|
|
35
|
-
import * as i32 from "@angular/material/
|
|
36
|
-
import * as i33 from "@
|
|
37
|
-
import * as i34 from "
|
|
23
|
+
import * as i20 from "./validations/validation-autocomplete-multi/validation-autocomplete-multi.component";
|
|
24
|
+
import * as i21 from "./forms/form-autocomplete/form-autocomplete.component";
|
|
25
|
+
import * as i22 from "./forms/form-datetime/form-datetime.component";
|
|
26
|
+
import * as i23 from "./validations/validation-datetime/validation-datetime.component";
|
|
27
|
+
import * as i24 from "./forms/form-time/form-time.component";
|
|
28
|
+
import * as i25 from "@angular/common";
|
|
29
|
+
import * as i26 from "@angular/forms";
|
|
30
|
+
import * as i27 from "@esfaenza/localizations";
|
|
31
|
+
import * as i28 from "@angular/material/input";
|
|
32
|
+
import * as i29 from "@angular/material/chips";
|
|
33
|
+
import * as i30 from "@angular/material/icon";
|
|
34
|
+
import * as i31 from "@angular/material/checkbox";
|
|
35
|
+
import * as i32 from "@angular/material/datepicker";
|
|
36
|
+
import * as i33 from "@esfaenza/material-dayjs-adapter";
|
|
37
|
+
import * as i34 from "ngx-bootstrap/tooltip";
|
|
38
|
+
import * as i35 from "@esfaenza/ngx-currency-mask";
|
|
39
|
+
import * as i36 from "@angular/material/autocomplete";
|
|
40
|
+
import * as i37 from "@angular-material-components/datetime-picker";
|
|
41
|
+
import * as i38 from "angular2-multiselect-dropdown";
|
|
38
42
|
export declare class FormsAndValidationsModule {
|
|
39
43
|
static forRoot(config?: FormsAndValidationsModuleConfig): ModuleWithProviders<FormsAndValidationsModule>;
|
|
40
44
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormsAndValidationsModule, never>;
|
|
41
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<FormsAndValidationsModule, [typeof i1.ValidationInputComponent, typeof i2.ValidationSelectComponent, typeof i3.ValidationDateComponent, typeof i4.CustomRequiredDirective, typeof i5.ValidationCurrencyComponent, typeof i6.ValidationTextAreaComponent, typeof i7.FormCheckboxComponent, typeof i8.FormDateComponent, typeof i9.FormEmptyComponent, typeof i10.FormInputComponent, typeof i11.FormSelectComponent, typeof i12.FormTextareaComponent, typeof i13.FormTemplateComponent, typeof i14.FormErrorComponent, typeof i15.FormInfoComponent, typeof i16.FormAdaptiveComponent, typeof i17.FormMultiSelectComponent, typeof i18.FormFileComponent, typeof i19.ValidationAutocompleteComponent, typeof i20.
|
|
45
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<FormsAndValidationsModule, [typeof i1.ValidationInputComponent, typeof i2.ValidationSelectComponent, typeof i3.ValidationDateComponent, typeof i4.CustomRequiredDirective, typeof i5.ValidationCurrencyComponent, typeof i6.ValidationTextAreaComponent, typeof i7.FormCheckboxComponent, typeof i8.FormDateComponent, typeof i9.FormEmptyComponent, typeof i10.FormInputComponent, typeof i11.FormSelectComponent, typeof i12.FormTextareaComponent, typeof i13.FormTemplateComponent, typeof i14.FormErrorComponent, typeof i15.FormInfoComponent, typeof i16.FormAdaptiveComponent, typeof i17.FormMultiSelectComponent, typeof i18.FormFileComponent, typeof i19.ValidationAutocompleteComponent, typeof i20.ValidationAutocompleteMultiComponent, typeof i21.FormAutocompleteComponent, typeof i22.FormDateTimeComponent, typeof i23.ValidationDateTimeComponent, typeof i24.FormTimeComponent], [typeof i25.CommonModule, typeof i26.FormsModule, typeof i27.LocalizationModule, typeof i28.MatInputModule, typeof i29.MatChipsModule, typeof i30.MatIconModule, typeof i31.MatCheckboxModule, typeof i32.MatDatepickerModule, typeof i33.MatDayjsDateModule, typeof i34.TooltipModule, typeof i35.CurrencyMaskModule, typeof i36.MatAutocompleteModule, typeof i37.NgxMatDatetimePickerModule, typeof i37.NgxMatTimepickerModule, typeof i38.AngularMultiSelectModule], [typeof i38.AngularMultiSelectModule, typeof i1.ValidationInputComponent, typeof i2.ValidationSelectComponent, typeof i3.ValidationDateComponent, typeof i4.CustomRequiredDirective, typeof i5.ValidationCurrencyComponent, typeof i6.ValidationTextAreaComponent, typeof i7.FormCheckboxComponent, typeof i8.FormDateComponent, typeof i9.FormEmptyComponent, typeof i10.FormInputComponent, typeof i11.FormSelectComponent, typeof i12.FormTextareaComponent, typeof i13.FormTemplateComponent, typeof i14.FormErrorComponent, typeof i15.FormInfoComponent, typeof i16.FormAdaptiveComponent, typeof i17.FormMultiSelectComponent, typeof i18.FormFileComponent, typeof i19.ValidationAutocompleteComponent, typeof i20.ValidationAutocompleteMultiComponent, typeof i21.FormAutocompleteComponent, typeof i22.FormDateTimeComponent, typeof i23.ValidationDateTimeComponent, typeof i24.FormTimeComponent]>;
|
|
42
46
|
static ɵinj: i0.ɵɵInjectorDeclaration<FormsAndValidationsModule>;
|
|
43
47
|
}
|
|
@@ -11,61 +11,37 @@ export declare class ValidationAutocompleteComponent extends BaseValidation impl
|
|
|
11
11
|
private _asyncValidators;
|
|
12
12
|
private injector;
|
|
13
13
|
protected lc: LocalizationService;
|
|
14
|
-
/**
|
|
15
|
-
* Sorgente da cui scegliere valori filtrata in base a quello che ha scritto l'utente
|
|
16
|
-
*/
|
|
14
|
+
/** Sorgente da cui scegliere valori filtrata in base a quello che ha scritto l'utente */
|
|
17
15
|
FilteredSource: {
|
|
18
16
|
id: string;
|
|
19
17
|
description: string;
|
|
20
18
|
}[];
|
|
21
|
-
/**
|
|
22
|
-
* Valore del modello
|
|
23
|
-
*/
|
|
19
|
+
/** Valore del modello */
|
|
24
20
|
value: any;
|
|
25
|
-
/**
|
|
26
|
-
* Contenuto della label Floattante Material-Style
|
|
27
|
-
*/
|
|
21
|
+
/** Contenuto della label Floattante Material-Style */
|
|
28
22
|
label: string;
|
|
29
|
-
/**
|
|
30
|
-
* Evento che indica l'opzione selezionata dal componente. Il valore finale della selezione dovrà essere questo
|
|
31
|
-
*/
|
|
23
|
+
/** Evento che indica l'opzione selezionata dal componente. Il valore finale della selezione dovrà essere questo */
|
|
32
24
|
optionChange: EventEmitter<string>;
|
|
33
|
-
/**
|
|
34
|
-
* Subscription del tootltip da ripulire alla distruzione del componente
|
|
35
|
-
*/
|
|
25
|
+
/** Subscription del tootltip da ripulire alla distruzione del componente */
|
|
36
26
|
private tooltipSubscription;
|
|
37
|
-
/**
|
|
38
|
-
* Controllo esposto ottenuto tramite injector
|
|
39
|
-
*/
|
|
27
|
+
/** Controllo esposto ottenuto tramite injector */
|
|
40
28
|
private parentControl;
|
|
41
|
-
/**
|
|
42
|
-
* @ignore
|
|
43
|
-
*/
|
|
29
|
+
/** @ignore */
|
|
44
30
|
constructor(_validators: Array<any>, _asyncValidators: Array<any>, injector: Injector, lc: LocalizationService);
|
|
45
|
-
/**
|
|
46
|
-
* @ignore
|
|
47
|
-
*/
|
|
31
|
+
/** @ignore */
|
|
48
32
|
ngOnInit(): void;
|
|
49
|
-
/**
|
|
50
|
-
* @ignore
|
|
51
|
-
*/
|
|
33
|
+
/** @ignore */
|
|
52
34
|
ngOnDestroy(): void;
|
|
53
|
-
/**
|
|
54
|
-
* @ignore
|
|
55
|
-
*/
|
|
35
|
+
/** @ignore */
|
|
56
36
|
ngAfterViewInit(): void;
|
|
57
37
|
/**
|
|
58
38
|
* Metodo che si occupa di collegare i validatori e la funzione di reset dal **ControlValueAccessor** rappresentato
|
|
59
39
|
* da questo componente al **ControlValueAccessor** rappresentato dall'effettivo elemento di Input presente lato HTML
|
|
60
40
|
*/
|
|
61
41
|
private postBinding;
|
|
62
|
-
/**
|
|
63
|
-
* @ignore
|
|
64
|
-
*/
|
|
42
|
+
/** @ignore */
|
|
65
43
|
private onTouched;
|
|
66
|
-
/**
|
|
67
|
-
* @ignore
|
|
68
|
-
*/
|
|
44
|
+
/** @ignore */
|
|
69
45
|
writeValue(value: any): void;
|
|
70
46
|
/**
|
|
71
47
|
* L'emit della modifica al valore viene gestito su un evento custom (**inputChange**) come workaround al malfunzionamento dell'**ngModelChange** nativo
|
|
@@ -73,13 +49,9 @@ export declare class ValidationAutocompleteComponent extends BaseValidation impl
|
|
|
73
49
|
* @param {any} toEmit valore da propagare all'esterno
|
|
74
50
|
*/
|
|
75
51
|
onModelChange(toEmit: any): void;
|
|
76
|
-
/**
|
|
77
|
-
* @ignore
|
|
78
|
-
*/
|
|
52
|
+
/** @ignore */
|
|
79
53
|
registerOnChange(fn: any): void;
|
|
80
|
-
/**
|
|
81
|
-
* @ignore
|
|
82
|
-
*/
|
|
54
|
+
/** @ignore */
|
|
83
55
|
registerOnTouched(fn: any): void;
|
|
84
56
|
static ɵfac: i0.ɵɵFactoryDeclaration<ValidationAutocompleteComponent, [{ optional: true; }, { optional: true; }, null, null]>;
|
|
85
57
|
static ɵcmp: i0.ɵɵComponentDeclaration<ValidationAutocompleteComponent, "val-autocomplete", never, { "FilteredSource": "FilteredSource"; "value": "value"; "label": "label"; }, { "optionChange": "optionChange"; }, never, never>;
|
package/lib/validations/validation-autocomplete-multi/validation-autocomplete-multi.component.d.ts
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { ControlValueAccessor } from "@angular/forms";
|
|
2
|
+
import { EventEmitter, Injector, SimpleChanges } from "@angular/core";
|
|
3
|
+
import { LocalizationService } from "@esfaenza/localizations";
|
|
4
|
+
import { BaseValidation } from "../base-validation";
|
|
5
|
+
import { MatAutocompleteTrigger } from "@angular/material/autocomplete";
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
/**
|
|
8
|
+
* Componente di validaizone per gli input di Autocompletamento
|
|
9
|
+
*/
|
|
10
|
+
export declare class ValidationAutocompleteMultiComponent extends BaseValidation implements ControlValueAccessor {
|
|
11
|
+
private _validators;
|
|
12
|
+
private _asyncValidators;
|
|
13
|
+
private injector;
|
|
14
|
+
lc: LocalizationService;
|
|
15
|
+
displayFn: () => string;
|
|
16
|
+
/** Numero massimo di chip visualizzate */
|
|
17
|
+
ChipThreshold: number;
|
|
18
|
+
/** Sorgente da cui scegliere valori filtrata in base a quello che ha scritto l'utente */
|
|
19
|
+
FilteredSource: {
|
|
20
|
+
id: string;
|
|
21
|
+
description: string;
|
|
22
|
+
}[];
|
|
23
|
+
/** Valore del modello */
|
|
24
|
+
value: any;
|
|
25
|
+
/** Contenuto della label Floattante Material-Style */
|
|
26
|
+
label: string;
|
|
27
|
+
/** Evento che indica l'opzione selezionata dal componente. Il valore finale della selezione dovrà essere questo */
|
|
28
|
+
optionChange: EventEmitter<string>;
|
|
29
|
+
/** Trigger dell'autocomplete per tenerlo aperto */
|
|
30
|
+
autoTrigger: MatAutocompleteTrigger;
|
|
31
|
+
/** Subscription del tootltip da ripulire alla distruzione del componente */
|
|
32
|
+
private tooltipSubscription;
|
|
33
|
+
/** Controllo esposto ottenuto tramite injector */
|
|
34
|
+
private parentControl;
|
|
35
|
+
/** Elementi selezionati */
|
|
36
|
+
selectData: {
|
|
37
|
+
id: string;
|
|
38
|
+
description: string;
|
|
39
|
+
}[];
|
|
40
|
+
/** @ignore */
|
|
41
|
+
constructor(_validators: Array<any>, _asyncValidators: Array<any>, injector: Injector, lc: LocalizationService);
|
|
42
|
+
/** @ignore */
|
|
43
|
+
ngOnInit(): void;
|
|
44
|
+
/** @ignore */
|
|
45
|
+
ngOnDestroy(): void;
|
|
46
|
+
/** @ignore */
|
|
47
|
+
ngAfterViewInit(): void;
|
|
48
|
+
/** In caso arrivi una nuova sorgente devo reimpostare lo stato di selezione con quello attuale */
|
|
49
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
50
|
+
/**
|
|
51
|
+
* Metodo che si occupa di collegare i validatori e la funzione di reset dal **ControlValueAccessor** rappresentato
|
|
52
|
+
* da questo componente al **ControlValueAccessor** rappresentato dall'effettivo elemento di Input presente lato HTML
|
|
53
|
+
*/
|
|
54
|
+
private postBinding;
|
|
55
|
+
/** @ignore */
|
|
56
|
+
private onTouched;
|
|
57
|
+
/** @ignore */
|
|
58
|
+
writeValue(value: any, finalValue?: boolean): void;
|
|
59
|
+
/**
|
|
60
|
+
* L'emit della modifica al valore viene gestito su un evento custom (**inputChange**) come workaround al malfunzionamento dell'**ngModelChange** nativo
|
|
61
|
+
*
|
|
62
|
+
* @param {any} toEmit valore da propagare all'esterno
|
|
63
|
+
*/
|
|
64
|
+
onModelChange(toEmit: any, finalValue?: boolean): void;
|
|
65
|
+
/** @ignore */
|
|
66
|
+
registerOnChange(fn: any): void;
|
|
67
|
+
/** @ignore */
|
|
68
|
+
registerOnTouched(fn: any): void;
|
|
69
|
+
/** Rimuove un elemento selezionato */
|
|
70
|
+
removeChip(data: {
|
|
71
|
+
id: string;
|
|
72
|
+
description: string;
|
|
73
|
+
}): void;
|
|
74
|
+
/** Seleziona o deseleziona un oggetto */
|
|
75
|
+
toggleSelection(data: {
|
|
76
|
+
id: string;
|
|
77
|
+
description: string;
|
|
78
|
+
}): void;
|
|
79
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ValidationAutocompleteMultiComponent, [{ optional: true; }, { optional: true; }, null, null]>;
|
|
80
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ValidationAutocompleteMultiComponent, "val-autocomplete-multi", never, { "ChipThreshold": "ChipThreshold"; "FilteredSource": "FilteredSource"; "value": "value"; "label": "label"; }, { "optionChange": "optionChange"; }, never, never>;
|
|
81
|
+
}
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export * from './lib/validations/validation-select/validation-select.component';
|
|
|
9
9
|
export * from './lib/validations/validation-text-area/validation-text-area.component';
|
|
10
10
|
export * from './lib/validations/validation-currency/validation-currency.component';
|
|
11
11
|
export * from './lib/validations/validation-autocomplete/validation-autocomplete.component';
|
|
12
|
+
export * from './lib/validations/validation-autocomplete-multi/validation-autocomplete-multi.component';
|
|
12
13
|
export * from './lib/validations/customValidators/CustomRequiredDirective';
|
|
13
14
|
export * from './lib/forms/form-datetime/form-datetime.component';
|
|
14
15
|
export * from './lib/forms/form-adaptive/form-adaptive.component';
|