@esfaenza/parameters 13.3.0 → 14.2.0

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.
@@ -1,25 +1,20 @@
1
- import { ControlValueAccessor, FormControl, NgForm, Validator } from "@angular/forms";
1
+ import { ControlValueAccessor, UntypedFormControl, NgForm, Validator } from "@angular/forms";
2
2
  import { ChangeDetectorRef, Injector } from "@angular/core";
3
3
  import { LocalizationService } from "@esfaenza/localizations";
4
4
  import { DateService, UtilityService } from "@esfaenza/extensions";
5
5
  import { GenericParameter } from './models/GenericParameter';
6
+ import { Observable } from "rxjs";
6
7
  import * as i0 from "@angular/core";
7
- /**
8
- * Componente che permette di graficare una lista di **GenericParameter** come Input in base al loro tipo specifico
9
- */
8
+ /** Componente che permette di graficare una lista di **GenericParameter** come Input in base al loro tipo specifico */
10
9
  export declare class EsParametersComponent implements ControlValueAccessor, Validator {
11
10
  private utiExts;
12
11
  lc: LocalizationService;
13
12
  cdr: ChangeDetectorRef;
14
13
  private inj;
15
14
  dates: DateService;
16
- /**
17
- * Modello del componente su cui vengono effettuate le graficazioni
18
- */
15
+ /** Modello del componente su cui vengono effettuate le graficazioni */
19
16
  Parameters: GenericParameter[];
20
- /**
21
- * Cache per fare lookup rapidi in fase di valutazione espressioni di visibilità e obbligatorietà
22
- */
17
+ /** Cache per fare lookup rapidi in fase di valutazione espressioni di visibilità e obbligatorietà */
23
18
  private ParametersCache;
24
19
  /**
25
20
  * Pipeline di Angular
@@ -27,41 +22,30 @@ export declare class EsParametersComponent implements ControlValueAccessor, Vali
27
22
  * @ignore
28
23
  */
29
24
  propagateChange: (_: any) => void;
30
- /**
31
- * Indica che l'ultimo parametro non deve avere margine in fondo
32
- */
25
+ /** Indica che l'ultimo parametro non deve avere margine in fondo */
33
26
  LastParameterNoMargin: boolean;
34
- /**
35
- * col-md-X per la label
36
- */
27
+ /** col-md-X per la label */
37
28
  LabelColWidth: number;
38
- /**
39
- * col-md-X per l'input
40
- */
29
+ /** col-md-X per l'input */
41
30
  InputColWidth: number;
42
- /**
43
- * Input a cui collegare la variabile **submitted** del form all'interno del quale viene utilizzato questo componente
44
- */
31
+ /** Input a cui collegare la variabile **submitted** del form all'interno del quale viene utilizzato questo componente */
45
32
  submitted: boolean;
46
- /**
47
- * Valore da mostrare qualora non fossero ancora ricevuti i **Parameters** da mostrare
48
- */
33
+ /** Valore da mostrare qualora non fossero ancora ricevuti i **Parameters** da mostrare */
49
34
  EmptyMessage: string;
50
- /**
51
- * Permette di rimuovere i parametri dalla lista cliccando sulla X davanti alla Label
52
- */
35
+ /** Permette di rimuovere i parametri dalla lista cliccando sulla X davanti alla Label */
53
36
  Removal: boolean;
54
- /**
55
- * Indica se i componenti di Input generati sono Readonly o no
56
- */
37
+ /** Indica se i componenti di Input generati sono Readonly o no */
57
38
  Readonly: boolean;
58
- /**
59
- * Form che utilizza il componente. Fondamentale collegarlo se si vogliono le validazioni sul submit
60
- */
39
+ /** Form che utilizza il componente. Fondamentale collegarlo se si vogliono le validazioni sul submit */
61
40
  Form: NgForm;
62
- /**
63
- * Permette di settare in una volta solo gli input **LabelColWidth** e **InputColWidth**, basta scriverlo con la sintassi "X Y"
64
- */
41
+ /** Quando utilizza un sottocomponente autocomplete abilita o disabilita il reset dell'input per ogni selezione */
42
+ AutocompleteHideChoicesOnSelection: boolean;
43
+ /** Funzione da utilizzare per tirare fuori i dati di un autocomplete */
44
+ AutoCompleteDataRetrieve: (parameter: GenericParameter, search: string, byid: boolean) => Observable<{
45
+ id: string;
46
+ description: string;
47
+ }[]>;
48
+ /** Permette di settare in una volta solo gli input **LabelColWidth** e **InputColWidth**, basta scriverlo con la sintassi "X Y" */
65
49
  set LabelInputRatio(input: string);
66
50
  /**
67
51
  * Costruttore
@@ -80,7 +64,7 @@ export declare class EsParametersComponent implements ControlValueAccessor, Vali
80
64
  *
81
65
  * @ignore
82
66
  */
83
- validate(c: FormControl): any;
67
+ validate(c: UntypedFormControl): any;
84
68
  /**
85
69
  * Pipeline di Angular
86
70
  *
@@ -105,6 +89,8 @@ export declare class EsParametersComponent implements ControlValueAccessor, Vali
105
89
  removeParameter(par: GenericParameter): void;
106
90
  /**
107
91
  * Rivede i bindings dei parametri in base a loro eventuali espressioni di controllo
92
+ *
93
+ * @returns {string[]} lista con gli id dei parametri che sono stati modificati
108
94
  */
109
95
  private reviewParametersBindings;
110
96
  /**
@@ -128,6 +114,11 @@ export declare class EsParametersComponent implements ControlValueAccessor, Vali
128
114
  checkValue(key: string, operator: string, value: string): boolean;
129
115
  /** @ignore */
130
116
  private defaultIfnullOrUndefined;
117
+ /** @ignore */
118
+ getSource(parameter: GenericParameter, search: string, byid: boolean): Observable<{
119
+ id: string;
120
+ description: string;
121
+ }[]>;
131
122
  static ɵfac: i0.ɵɵFactoryDeclaration<EsParametersComponent, never>;
132
- static ɵcmp: i0.ɵɵComponentDeclaration<EsParametersComponent, "es-parameters", never, { "LastParameterNoMargin": "LastParameterNoMargin"; "LabelColWidth": "LabelColWidth"; "InputColWidth": "InputColWidth"; "submitted": "submitted"; "EmptyMessage": "EmptyMessage"; "Removal": "Removal"; "Readonly": "Readonly"; "Form": "Form"; "LabelInputRatio": "LabelInputRatio"; }, {}, never, never>;
123
+ static ɵcmp: i0.ɵɵComponentDeclaration<EsParametersComponent, "es-parameters", never, { "LastParameterNoMargin": "LastParameterNoMargin"; "LabelColWidth": "LabelColWidth"; "InputColWidth": "InputColWidth"; "submitted": "submitted"; "EmptyMessage": "EmptyMessage"; "Removal": "Removal"; "Readonly": "Readonly"; "Form": "Form"; "AutocompleteHideChoicesOnSelection": "AutocompleteHideChoicesOnSelection"; "AutoCompleteDataRetrieve": "AutoCompleteDataRetrieve"; "LabelInputRatio": "LabelInputRatio"; }, {}, never, never, false>;
133
124
  }
@@ -11,6 +11,8 @@ export declare class GenericParameter {
11
11
  description: string;
12
12
  }[];
13
13
  multienum?: boolean;
14
+ sourceapi?: string;
15
+ pageddata?: boolean;
14
16
  /**
15
17
  * Costruttore
16
18
  *
@@ -22,45 +24,29 @@ export declare class GenericParameter {
22
24
  * @param {any} v_default Valore di default per questo Parametro
23
25
  * @param {{ id: string, description: string }[]} enumvalues Qualora il **type** fosse di tipo **enum**, qui devono esserci tutti i valori che può assumere
24
26
  * @param {boolean} multienum Qualora il **type** fosse di tipo **enum**, indica se è possibile selezionare più valori (multiselect)
27
+ * @param {string} sourceapi Nei casi in cui il **type** è **enum** indica l'api da cui recuperare i valori da bindare alla select o alla multiselect
28
+ * @param {boolean} pageddata Nei casi in cui il **type** è **enum** indica che l'api specificata eventualmetne da **sourceapi** è paginata
25
29
  */
26
30
  constructor(id: string, description: string, pattern: string, type: 'date' | 'string' | 'number' | 'boolean' | 'enum', required: boolean, v_default?: any, enumvalues?: {
27
31
  id: string;
28
32
  description: string;
29
- }[], multienum?: boolean);
30
- /**
31
- * Tipo di dato rappresentato da questo parametro
32
- */
33
+ }[], multienum?: boolean, sourceapi?: string, pageddata?: boolean);
34
+ /** Tipo di dato rappresentato da questo parametro */
33
35
  type: string;
34
- /**
35
- * Typecode lato C# che rappresenta il tipo di dato
36
- */
36
+ /** Typecode lato C# che rappresenta il tipo di dato */
37
37
  typecode: number;
38
- /**
39
- * Indica se il campo specificato dev'essere di sola lettura o meno
40
- */
38
+ /** Indica se il campo specificato dev'essere di sola lettura o meno */
41
39
  isreadonly: boolean;
42
- /**
43
- * Valore del parametro
44
- */
40
+ /** Valore del parametro */
45
41
  value: any;
46
- /**
47
- * Indica se questo parametro dev'essere inserito o no. In caso contrario viene semplicemente nascosto
48
- */
42
+ /** Indica se questo parametro dev'essere inserito o no. In caso contrario viene semplicemente nascosto */
49
43
  visible: boolean;
50
- /**
51
- * Tipo Enum, valorizzato dal Backend
52
- */
44
+ /** Tipo Enum, valorizzato dal Backend */
53
45
  enumtype: string;
54
- /**
55
- * Tipo Dizionario, valorizzato dal Backend
56
- */
46
+ /** Tipo Dizionario, valorizzato dal Backend */
57
47
  dicttype: string;
58
- /**
59
- * Espressione di obbligatorietà
60
- */
48
+ /** Espressione di obbligatorietà */
61
49
  requiredexp?: string;
62
- /**
63
- * Espressione di visibilità
64
- */
50
+ /** Espressione di visibilità */
65
51
  visibleexp?: string;
66
52
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esfaenza/parameters",
3
- "version": "13.3.0",
3
+ "version": "14.2.0",
4
4
  "dependencies": {
5
5
  "tslib": "^2.0.0"
6
6
  },
@@ -14,7 +14,7 @@
14
14
  "@esfaenza/extensions": "^13.3.3",
15
15
  "@esfaenza/material-dayjs-adapter": "^13.3.2",
16
16
  "@esfaenza/ngx-currency-mask": "^13.3.2",
17
- "@esfaenza/forms-and-validations": "^13.3.2",
17
+ "@esfaenza/forms-and-validations": "^14.2.0",
18
18
  "@angular-material-components/datetime-picker": "7.0.1",
19
19
  "angular2-multiselect-dropdown": "5.0.4",
20
20
  "ngx-toastr": "14.3.0",
@@ -28,13 +28,13 @@
28
28
  "esm2020": "esm2020/esfaenza-parameters.mjs",
29
29
  "fesm2020": "fesm2020/esfaenza-parameters.mjs",
30
30
  "fesm2015": "fesm2015/esfaenza-parameters.mjs",
31
- "typings": "esfaenza-parameters.d.ts",
31
+ "typings": "index.d.ts",
32
32
  "exports": {
33
33
  "./package.json": {
34
34
  "default": "./package.json"
35
35
  },
36
36
  ".": {
37
- "types": "./esfaenza-parameters.d.ts",
37
+ "types": "./index.d.ts",
38
38
  "esm2020": "./esm2020/esfaenza-parameters.mjs",
39
39
  "es2020": "./fesm2020/esfaenza-parameters.mjs",
40
40
  "es2015": "./fesm2015/esfaenza-parameters.mjs",