@esfaenza/es-table 11.2.19 → 11.2.22-beta10

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.
Files changed (143) hide show
  1. package/bundles/esfaenza-es-table.umd.js +3574 -2084
  2. package/bundles/esfaenza-es-table.umd.js.map +1 -1
  3. package/bundles/esfaenza-es-table.umd.min.js +1 -15
  4. package/bundles/esfaenza-es-table.umd.min.js.map +1 -1
  5. package/esfaenza-es-table.d.ts +7 -6
  6. package/esfaenza-es-table.metadata.json +1 -1
  7. package/esm2015/esfaenza-es-table.js +8 -7
  8. package/esm2015/lib/components/es-table/es_table.component.js +1295 -0
  9. package/esm2015/lib/components/es-table/es_table.component.loc.js +36 -0
  10. package/esm2015/lib/components/es-td/es_td.component.js +106 -0
  11. package/esm2015/lib/components/es-th/es_th.component.js +160 -0
  12. package/esm2015/lib/components/pager/table_pager.component.js +100 -0
  13. package/esm2015/lib/components/pager/table_pager.component.loc.js +22 -0
  14. package/esm2015/lib/core/handlers/classes/ColumnMetadataHandler.js +669 -0
  15. package/esm2015/lib/core/handlers/classes/DynamicModeHandler.js +64 -0
  16. package/esm2015/lib/core/handlers/classes/ExportHandler.js +43 -0
  17. package/esm2015/lib/core/handlers/classes/HierarchyModeHandler.js +136 -0
  18. package/esm2015/lib/core/handlers/classes/ItemsHandler.js +121 -0
  19. package/esm2015/lib/core/handlers/classes/ReportModeHandler.js +70 -0
  20. package/esm2015/lib/core/handlers/classes/RowGroupingHandler.js +475 -0
  21. package/esm2015/lib/core/handlers/classes/SelectionHandler.js +527 -0
  22. package/esm2015/lib/core/handlers/classes/UtilitiesHandler.js +169 -0
  23. package/esm2015/lib/core/handlers/index.js +10 -0
  24. package/esm2015/lib/directives/es_td.directive.js +2 -4
  25. package/esm2015/lib/directives/es_th.directive.js +17 -8
  26. package/esm2015/lib/domain/configuration/EsTableDefaultable.js +4 -0
  27. package/esm2015/lib/domain/configuration/EsTableModuleConfig.js +4 -0
  28. package/esm2015/lib/domain/externals/classes/CornerMenuOption.js +4 -0
  29. package/esm2015/lib/domain/externals/classes/EsTableColumnsDefinition.js +31 -0
  30. package/esm2015/lib/domain/externals/classes/EsTableOperationDefinition.js +22 -0
  31. package/esm2015/lib/domain/externals/classes/appsearch/AppOrdering.js +16 -0
  32. package/esm2015/lib/domain/externals/classes/appsearch/AppSearch.js +35 -0
  33. package/esm2015/lib/domain/externals/classes/appsearch/GenericItem.js +11 -0
  34. package/esm2015/lib/domain/externals/classes/appsearch/Group.js +17 -0
  35. package/esm2015/lib/domain/externals/classes/appsearch/GroupAggregation.js +16 -0
  36. package/esm2015/lib/domain/externals/classes/appsearch/GroupFilter.js +14 -0
  37. package/esm2015/lib/domain/externals/classes/appsearch/GroupOrAggregation.js +16 -0
  38. package/esm2015/lib/domain/externals/classes/appsearch/ItemsSelection.js +23 -0
  39. package/esm2015/lib/domain/externals/classes/report/ReportColumn.js +4 -0
  40. package/esm2015/lib/domain/externals/classes/report/ReportDefinition.js +4 -0
  41. package/esm2015/lib/domain/externals/classes/report/ReportOrder.js +4 -0
  42. package/esm2015/lib/domain/externals/classes/report/ReportParam.js +4 -0
  43. package/esm2015/lib/domain/externals/classes/report/ReportResult.js +4 -0
  44. package/esm2015/lib/domain/externals/classes/report/ReportRow.js +4 -0
  45. package/esm2015/lib/domain/externals/index.js +18 -0
  46. package/esm2015/lib/domain/index.js +3 -16
  47. package/esm2015/lib/domain/internals/classes/CacheTriptic.js +16 -0
  48. package/esm2015/lib/domain/internals/classes/EsTableColumn.js +24 -0
  49. package/esm2015/lib/domain/internals/classes/GroupPager.js +21 -0
  50. package/esm2015/lib/domain/internals/classes/GroupRouteFragment.js +17 -0
  51. package/esm2015/lib/domain/internals/classes/ThAggregation.js +16 -0
  52. package/esm2015/lib/domain/internals/classes/ThElement.js +2 -0
  53. package/esm2015/lib/domain/internals/index.js +7 -0
  54. package/esm2015/lib/es-table.module.js +13 -8
  55. package/esm2015/lib/tokens.js +6 -4
  56. package/esm2015/public-api.js +7 -6
  57. package/fesm2015/esfaenza-es-table.js +3268 -1890
  58. package/fesm2015/esfaenza-es-table.js.map +1 -1
  59. package/lib/{es_table.component.d.ts → components/es-table/es_table.component.d.ts} +132 -403
  60. package/lib/{es_table.component.loc.d.ts → components/es-table/es_table.component.loc.d.ts} +2 -6
  61. package/lib/{es_td.component.d.ts → components/es-td/es_td.component.d.ts} +13 -36
  62. package/lib/{es_th.component.d.ts → components/es-th/es_th.component.d.ts} +27 -61
  63. package/lib/components/pager/table_pager.component.d.ts +50 -0
  64. package/lib/{pager → components/pager}/table_pager.component.loc.d.ts +2 -6
  65. package/lib/core/handlers/classes/ColumnMetadataHandler.d.ts +159 -0
  66. package/lib/core/handlers/classes/DynamicModeHandler.d.ts +32 -0
  67. package/lib/core/handlers/classes/ExportHandler.d.ts +22 -0
  68. package/lib/core/handlers/classes/HierarchyModeHandler.d.ts +40 -0
  69. package/lib/core/handlers/classes/ItemsHandler.d.ts +41 -0
  70. package/lib/core/handlers/classes/ReportModeHandler.d.ts +21 -0
  71. package/lib/core/handlers/classes/RowGroupingHandler.d.ts +114 -0
  72. package/lib/core/handlers/classes/SelectionHandler.d.ts +149 -0
  73. package/lib/core/handlers/classes/UtilitiesHandler.d.ts +67 -0
  74. package/lib/core/handlers/index.d.ts +9 -0
  75. package/lib/directives/es_td.directive.d.ts +1 -3
  76. package/lib/directives/es_th.directive.d.ts +14 -7
  77. package/lib/domain/configuration/EsTableDefaultable.d.ts +19 -0
  78. package/lib/domain/configuration/EsTableModuleConfig.d.ts +10 -0
  79. package/lib/domain/externals/classes/CornerMenuOption.d.ts +7 -0
  80. package/lib/domain/{classes → externals/classes}/EsTableColumnsDefinition.d.ts +2 -6
  81. package/lib/domain/{classes → externals/classes}/EsTableOperationDefinition.d.ts +1 -3
  82. package/lib/domain/{classes → externals/classes/appsearch}/AppOrdering.d.ts +0 -0
  83. package/lib/domain/externals/classes/appsearch/AppSearch.d.ts +67 -0
  84. package/lib/domain/externals/classes/appsearch/GenericItem.d.ts +13 -0
  85. package/lib/domain/externals/classes/appsearch/Group.d.ts +17 -0
  86. package/lib/domain/externals/classes/appsearch/GroupAggregation.d.ts +14 -0
  87. package/lib/domain/externals/classes/appsearch/GroupFilter.d.ts +12 -0
  88. package/lib/domain/externals/classes/appsearch/GroupOrAggregation.d.ts +14 -0
  89. package/lib/domain/externals/classes/appsearch/ItemsSelection.d.ts +22 -0
  90. package/lib/domain/externals/classes/report/ReportColumn.d.ts +15 -0
  91. package/lib/domain/externals/classes/report/ReportDefinition.d.ts +24 -0
  92. package/lib/domain/externals/classes/report/ReportOrder.d.ts +7 -0
  93. package/lib/domain/externals/classes/report/ReportParam.d.ts +40 -0
  94. package/lib/domain/externals/classes/report/ReportResult.d.ts +12 -0
  95. package/lib/domain/externals/classes/report/ReportRow.d.ts +5 -0
  96. package/lib/domain/externals/index.d.ts +17 -0
  97. package/lib/domain/index.d.ts +2 -15
  98. package/lib/domain/internals/classes/CacheTriptic.d.ts +14 -0
  99. package/lib/domain/{classes → internals/classes}/EsTableColumn.d.ts +8 -4
  100. package/lib/domain/internals/classes/GroupPager.d.ts +22 -0
  101. package/lib/domain/internals/classes/GroupRouteFragment.d.ts +15 -0
  102. package/lib/domain/internals/classes/ThAggregation.d.ts +14 -0
  103. package/lib/domain/internals/classes/ThElement.d.ts +13 -0
  104. package/lib/domain/internals/index.d.ts +6 -0
  105. package/lib/es-table.module.d.ts +1 -1
  106. package/lib/tokens.d.ts +6 -3
  107. package/package.json +2 -1
  108. package/public-api.d.ts +6 -5
  109. package/esm2015/lib/domain/classes/AppOrdering.js +0 -16
  110. package/esm2015/lib/domain/classes/AppSearch.js +0 -56
  111. package/esm2015/lib/domain/classes/CornerMenuOption.js +0 -6
  112. package/esm2015/lib/domain/classes/EsTableColumn.js +0 -22
  113. package/esm2015/lib/domain/classes/EsTableColumnsDefinition.js +0 -33
  114. package/esm2015/lib/domain/classes/EsTableOperationDefinition.js +0 -24
  115. package/esm2015/lib/domain/classes/GenericItem.js +0 -15
  116. package/esm2015/lib/domain/classes/IAppSearch.js +0 -2
  117. package/esm2015/lib/domain/classes/ItemsSelection.js +0 -25
  118. package/esm2015/lib/domain/classes/ReportColumn.js +0 -6
  119. package/esm2015/lib/domain/classes/ReportDefinition.js +0 -6
  120. package/esm2015/lib/domain/classes/ReportOrder.js +0 -6
  121. package/esm2015/lib/domain/classes/ReportParam.js +0 -6
  122. package/esm2015/lib/domain/classes/ReportResult.js +0 -6
  123. package/esm2015/lib/domain/classes/ReportRow.js +0 -6
  124. package/esm2015/lib/es_table.component.js +0 -2278
  125. package/esm2015/lib/es_table.component.loc.js +0 -38
  126. package/esm2015/lib/es_td.component.js +0 -117
  127. package/esm2015/lib/es_th.component.js +0 -178
  128. package/esm2015/lib/models/EsTableModuleConfig.js +0 -6
  129. package/esm2015/lib/pager/table_pager.component.js +0 -70
  130. package/esm2015/lib/pager/table_pager.component.loc.js +0 -24
  131. package/lib/domain/classes/AppSearch.d.ts +0 -110
  132. package/lib/domain/classes/CornerMenuOption.d.ts +0 -13
  133. package/lib/domain/classes/GenericItem.d.ts +0 -25
  134. package/lib/domain/classes/IAppSearch.d.ts +0 -67
  135. package/lib/domain/classes/ItemsSelection.d.ts +0 -27
  136. package/lib/domain/classes/ReportColumn.d.ts +0 -29
  137. package/lib/domain/classes/ReportDefinition.d.ts +0 -46
  138. package/lib/domain/classes/ReportOrder.d.ts +0 -13
  139. package/lib/domain/classes/ReportParam.d.ts +0 -76
  140. package/lib/domain/classes/ReportResult.d.ts +0 -22
  141. package/lib/domain/classes/ReportRow.d.ts +0 -9
  142. package/lib/models/EsTableModuleConfig.d.ts +0 -9
  143. package/lib/pager/table_pager.component.d.ts +0 -50
@@ -1,38 +1,47 @@
1
1
  import { QueryList, ChangeDetectorRef, EventEmitter, OnChanges, SimpleChanges, ElementRef, TemplateRef } from '@angular/core';
2
2
  import { ControlValueAccessor, NgControl } from '@angular/forms';
3
- import { HashingService, UtilityService, ExportService, MessageService, DateService } from '@esfaenza/extensions';
3
+ import { UtilityService, ExportService, MessageService, DateService } from '@esfaenza/extensions';
4
4
  import { LocalizationService } from '@esfaenza/localizations';
5
5
  import { PreferencesService } from '@esfaenza/preferences';
6
6
  import { ContextMenuComponent } from '@esfaenza/ngx-contextmenu';
7
- import { IAppSearch, AppSearch, AppOrdering, GenericItem, EsTableColumnsDefinition, CornerMenuOption, ReportResult, ReportColumn, EsTableOperationDefinition, EsTableColumn } from './domain';
8
- import { EsTd } from './es_td.component';
9
- import { EsTdDirective } from './directives/es_td.directive';
10
- import { EsThDirective } from './directives/es_th.directive';
11
- import { ItemsSelection } from './domain/classes/ItemsSelection';
12
- import { Group } from './domain/classes/AppSearch';
7
+ import { AppSearch, AppOrdering, EsTableColumnsDefinition, CornerMenuOption, ReportResult, EsTableOperationDefinition, EsTableColumn, GroupPager, GroupRouteFragment, ThElement } from '../../domain';
8
+ import { EsTd } from '../es-td/es_td.component';
9
+ import { EsTdDirective } from '../../directives/es_td.directive';
10
+ import { EsThDirective } from '../../directives/es_th.directive';
11
+ import { ItemsSelection } from '../../domain/externals/classes/appsearch/ItemsSelection';
12
+ import { Group } from "../../domain/externals/classes/appsearch/Group";
13
+ import { EsTableDefaultable } from '../../domain/configuration/EsTableDefaultable';
14
+ import { ExportHandler, ColumnMetadataHandler, DynamicModeHandler, HierarchyModeHandler, ItemsHandler, ReportModeHandler, RowGroupingHandler, SelectionHandler, UtilitiesHandler } from '../../core/handlers';
13
15
  /** Componente che permette di rappresentare una griglia di valori */
14
16
  export declare class EsTableComponent implements ControlValueAccessor, OnChanges {
15
17
  ngControl: NgControl;
16
18
  private prefService;
19
+ private deafults;
20
+ locale: string;
17
21
  lc: LocalizationService;
18
- private cdr;
19
- private hashExts;
22
+ cdr: ChangeDetectorRef;
23
+ private utilities_H;
20
24
  private utiExts;
21
25
  private expExts;
22
26
  private dateExts;
23
27
  private msgExts;
28
+ export_H: ExportHandler;
29
+ columnMetadata_H: ColumnMetadataHandler;
30
+ dynamicMode_H: DynamicModeHandler;
31
+ hierarchyMode_H: HierarchyModeHandler;
32
+ items_H: ItemsHandler;
33
+ reportMode_H: ReportModeHandler;
34
+ rowGrouping_H: RowGroupingHandler;
35
+ selection_H: SelectionHandler;
24
36
  /** @ignore */
25
- constructor(ngControl: NgControl, prefService: PreferencesService, lc: LocalizationService, cdr: ChangeDetectorRef, hashExts: HashingService, utiExts: UtilityService, expExts: ExportService, dateExts: DateService, msgExts: MessageService);
37
+ constructor(ngControl: NgControl, prefService: PreferencesService, deafults: EsTableDefaultable, locale: string, lc: LocalizationService, cdr: ChangeDetectorRef, utilities_H: UtilitiesHandler, utiExts: UtilityService, expExts: ExportService, dateExts: DateService, msgExts: MessageService);
26
38
  /** View finale su cui bindarsi lato Frontend, il tipo può essere IAppSearch<any> (per la **viewMode**), any[] (per l'**arrayMode**) e ReportDefinition per la **reportMode** */
27
39
  View: any;
28
40
  /** Modello da cui l'es-table mostra i pulsanti di paginazione in basso a destra */
29
41
  arrayPulsanti: any;
30
42
  /** Indica se l'es-table deve mostrare il check globale nell'header per fare il "seleziona tutto" */
31
43
  globalCheck: boolean;
32
- /**
33
- * Tiene da conto l'ultimo elemento selezionato in modo da fare ragionamenti del tipo
34
- * "Ho selezionato questo, l'ultimo selezionato era **lastSelected**, devo selezionare tutti quelli in mezzo", ad esempio per la selezione multipla
35
- */
44
+ /** Tiene da conto l'ultimo elemento selezionato in modo da poter effettuare il SHIFT+CLICK */
36
45
  private lastSelected;
37
46
  /** Conteggio interno per il numero di elementi selezionati */
38
47
  selectedObjects: number;
@@ -80,28 +89,19 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
80
89
  [context: string]: EsTd[];
81
90
  };
82
91
  /** Modello rappresentante un singolo th della tabella, generato in base alle configurazioni e agli oggetti ricevuti */
83
- RowTHs: {
84
- ID: string;
85
- Visible: boolean;
86
- Class: string;
87
- Content: string;
88
- Order: string;
89
- Orderable: boolean;
90
- Template: TemplateRef<any>;
91
- Wrap: boolean;
92
- }[];
92
+ RowTHs: ThElement[];
93
93
  /** Modello di appoggio temporaneo per i **RowTHs** */
94
- TMPRowTHs: {
95
- Fixed: boolean;
96
- ID: string;
97
- Visible: boolean;
98
- Class: string;
99
- Content: string;
100
- Order: string;
101
- Orderable: boolean;
94
+ TMPRowTHs: ThElement[];
95
+ /** Modello di appoggio temporaneo per i **RowThGroups** */
96
+ TMPRowThGroups: {
97
+ Span: number;
102
98
  Template: TemplateRef<any>;
103
- Wrap: boolean;
104
- }[];
99
+ }[][];
100
+ /** Modello rappresentante un singolo header group della tabella. Questa lista è già ordinata e pronta per essere utilizzata in ngFor */
101
+ RowThGroups: {
102
+ Span: number;
103
+ Template: TemplateRef<any>;
104
+ }[][];
105
105
  /** Cache per i routerLink generati nelle tabelle dinamiche */
106
106
  DynamicTableRouterLinkCache: {};
107
107
  /**
@@ -132,13 +132,13 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
132
132
  EsTdsDirective: QueryList<EsTdDirective>;
133
133
  /** Query per recuperare tutti gli es-td assegnati a direttiva (Per la modalità dinamica dell'es-table) */
134
134
  EsThsDirective: QueryList<EsThDirective>;
135
- /** Query per recuperare tutti gli es-th */
135
+ /** @deprecated Query per recuperare tutti gli es-th */
136
136
  private EsThs;
137
- /** Query per recuperare tutti gli es-td */
137
+ /** @deprecated Query per recuperare tutti gli es-td */
138
138
  private EsTds;
139
- /** Query per recuperare le informazioni del body (punto della tabella dove vengono mostrate le righe) */
139
+ /** @deprecated Query per recuperare le informazioni del body (punto della tabella dove vengono mostrate le righe) */
140
140
  bodyRef: any;
141
- /** Query per recuperare le informazioni dell'header (punto della tabella dove vengono mostrate le intestazioni delle righe) */
141
+ /** @deprecated Query per recuperare le informazioni dell'header (punto della tabella dove vengono mostrate le intestazioni delle righe) */
142
142
  headerRef: any;
143
143
  /** Query per recuperare le informazioni sul raggruppamento degli header */
144
144
  headerGroupRef: any;
@@ -184,14 +184,14 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
184
184
  UseCustomCells: boolean;
185
185
  /** Permette di impostare l'altezza massima della tabella. Se null la dimensione si adatta al numero di elementi attualmente in visualizzazione */
186
186
  MaxHeight: number;
187
- /** Classi da applicare alla tabella oltre a quelle gestite autonomamente dalla libreria */
188
- Class: string;
187
+ /** Classi da applicare al contenitore della tabella */
188
+ ContainerClass: any;
189
189
  /** Permette o meno l'export in formato XLSX */
190
190
  XLSXExport: boolean;
191
191
  /** Permette o meno l'export in formato CSV */
192
192
  CSVExport: boolean;
193
193
  /** Permette di visualizzare o meno l'opzione di paginazione "Tutti" */
194
- AllSearch: boolean;
194
+ AllSearch: any;
195
195
  /** Diminuisce gli spazi fra una cella e l'altra, e internamente il padding del font in modo da presentare molti più dati in un'unica pagina */
196
196
  HighCellDensity: boolean;
197
197
  /** Abilita o meno la possibilità di selezionare oggetti */
@@ -210,8 +210,6 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
210
210
  Export: boolean;
211
211
  /** Indica se permettere la selezione multipla Windows-like cliccando un oggetto e facendo poi Shift + click su un oggetto successivo */
212
212
  ShiftClick: boolean;
213
- /** Mostra o nasconde le informazioni di paginazione, sia i pulsanti, sia il selettore degli oggetti per pagina */
214
- ShowPaging: boolean;
215
213
  /** Indica se nascondere o mostrare il componente di paginazione */
216
214
  HidePaging: boolean;
217
215
  /** Indica se nascondere o mostrare il conteggio degli elementi trovati */
@@ -223,18 +221,16 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
223
221
  /** Nome dell'esportazione generata da questa tabella */
224
222
  ExportFileName: string;
225
223
  /** Classe (HTML) di default della tabella */
226
- TableClass: string;
227
- /** Testo da visualizzare nel conteggio. Di default: "Oggetti selezionati" */
228
- CountLabel: string;
224
+ TableClass: any;
229
225
  /**
230
226
  * Funzione da utilizzare in esportazione. Nel formato "Report" avrà un unico parametro "Formato" e nessun valore di ritorno.
231
227
  *
232
228
  * Nel formato "View" ha come parametro una callback con i dati completi da esportare (dato che di default la ricerca è paginata)
233
229
  */
234
230
  ExportFunction: any;
235
- /** Indica la presenza di raggruppamenti a livello di header */
231
+ /** @deprecated Indica la presenza di raggruppamenti a livello di header */
236
232
  HasHeaderGroup: boolean;
237
- /** Indica la presenza di raggruppamenti a livello del raggruppamento precedentemente esistente, chiaramente è insensata senza **HasHeaderGroup** */
233
+ /** @deprecated Indica la presenza di raggruppamenti a livello del raggruppamento precedentemente esistente, chiaramente è insensata senza **HasHeaderGroup** */
238
234
  HasSecondaryHeaderGroup: boolean;
239
235
  /** Utilizzato per dividere la sorgente in modalità EndlessScroll */
240
236
  SliceSize: number;
@@ -266,12 +262,8 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
266
262
  HiddenColumns: boolean;
267
263
  /** Permette di riordinare le colonne in base alle impostazioni effettuate dal Menù contestuale in alto a destra */
268
264
  ColumnsOrdering: boolean;
269
- /**
270
- * Eventuale supporto alle ricerche applicate alla modalità Array
271
- *
272
- * @deprecated Utilizzato solo per un caso particolare del Metering
273
- */
274
- SearchView: IAppSearch<any>;
265
+ /** Eventuale supporto alle ricerche applicate alla modalità Array */
266
+ SearchView: AppSearch<any>;
275
267
  /** Abilita o disabilita il sistema che permette di selezionare tutti gli elementi nella vista */
276
268
  SelectAll: boolean;
277
269
  /** Simula la paginazione anche per le tabelle che funzionano in modalità Array */
@@ -290,6 +282,10 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
290
282
  StartsExpanded: boolean;
291
283
  /** Indica se effettuare il salvataggio delle preferenze di ricerca */
292
284
  SavePreferences: boolean;
285
+ /** Indica dove visualizzare le informazioni di paginazione, se sopra, sotto o in entrambi */
286
+ PagingStyle: 'both' | 'top' | 'bottom';
287
+ /** Indica dove visualizzare le informazioni di paginazione, se sopra, sotto o in entrambi */
288
+ RowGroupingPagingStyle: 'left' | 'right';
293
289
  /**
294
290
  * Sorgente dati secondaria
295
291
  *
@@ -303,7 +299,9 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
303
299
  */
304
300
  TertiarySource: boolean;
305
301
  /** Indica se utilizzare la cache di selezione che permette di mantenere gli stati di selezione dei vari oggetti navigando da una pagina all'altra */
306
- UseSelectionCache: boolean;
302
+ UseSelectionCache: any;
303
+ /** Permette di decidere se, in modalità raggruppamento, mostrare o meno il valore delle colonne di gruppo negli oggetti finali. Di default sono nascosti */
304
+ ShowItemGroupsColumns: any;
307
305
  /** Evento che viene richiamato al cambio di oridnamento di una colonna */
308
306
  onOrderChanged: EventEmitter<AppOrdering>;
309
307
  /**
@@ -312,8 +310,10 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
312
310
  *
313
311
  * Solo in caso venga utilizzata la modalità a raggruppamenti di righe può succedere che l'es-table passi un intero AppSearch come parametro di ricerca,
314
312
  * in quel caso l'applicazione ricevente dovrà onorare la richiesta spedendo al backand l'oggetto di ricerca AS-IS
313
+ *
314
+ * il tipo dell'Emitter invece di essere [boolean | AppSearch<any>] è stato impostato a "any" per evitare problemi di retrocompatibilità
315
315
  */
316
- onSearchRequest: EventEmitter<boolean | AppSearch<any>>;
316
+ onSearchRequest: EventEmitter<any>;
317
317
  /** Evento che parte ad ogni modifica di "checkaggio" in forma di comodo array. Espone l'oggetto con lo stato di check attuale */
318
318
  onSelectionChanged: EventEmitter<ItemsSelection<any>>;
319
319
  /** Evento richiamato all'eliminazione di un oggetto */
@@ -353,16 +353,20 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
353
353
  /** Numero di pagine (durante la paginazione in modalità Array) */
354
354
  arraymodePages: number;
355
355
  /** Oggetti per ogni pagina (durante la paginazione in modalità Array) */
356
- ArraymodeItemsPerPage: number;
356
+ ArraymodeItemsPerPage: any;
357
357
  /** Oggetto di selezione per la modalità Array, che deve comportarsi come la controparte in modalità View */
358
358
  arraymodeSelection: ItemsSelection<any>;
359
+ /** Colonne da visualizzare in modalità array */
360
+ arrayColumns: string[];
361
+ /** Ordine delle colonne da visualizzare in modalità array */
362
+ arrayColumnOrdering: string[];
363
+ /** Ordinamenti ASC-DESC sulle colonne in modalità array */
364
+ arrayOrders: AppOrdering[];
359
365
  /**
360
366
  * Variabile che serve a gestire il momento in cui l'es-table aggiorna la paginazione (pulsanti ecc).
361
367
  * Essendo operazioni comunque costose le effettuo solo su binding esterni, non su rewrite generati internamente
362
368
  */
363
369
  private internalWriteCall;
364
- /** Cache di selezione Hash - Oggetto */
365
- private selOrDeselCache;
366
370
  /**
367
371
  * Cache che conterrà tutte le ricerche effettuate su gruppi diversi dal primo e su elementi contenuti nei gruppi.
368
372
  * In caso di cambi di ordinamento delle colonne diverse dalla prima tutte le chiamate fatte dal secondo livello in poi devono essere rieseguite secondo la seguente logica:
@@ -370,31 +374,49 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
370
374
  *
371
375
  * **Cambio ordinamento sul primo gruppo**: reload completo, non mi occupo di ripulire gli elementi bindati in alcun modo
372
376
  *
373
- * **Cambio ordinamento sulla colonna relativa all'N-esimo gruppo**: reload completo del contenuto del gruppo precedente, per quelli aperti, devo precedentemente ripulire
377
+ * **Cambio ordinamento sulla colonna relativa all'N-esimo gruppo**: reload completo del contenuto dei gruppi precedenti, ripulendo precedentemente
374
378
  * tutti gli elementi con **_grouplevel** = N
375
379
  *
376
380
  * **Cambio ordinamento su una colonna non raggruppata**: reload completo per tutti i gruppi finali aperti, devo precedentemente ripulire tutti gli elementi con **_item** = true
377
381
  *
378
- *
379
382
  * Altri eventi non dovrebbero rappresentare problemi:
380
383
  * - Selezione: non cambia nulla
381
384
  * - Paginazione: cambia a livello root quindi viene ricaricato tutto comunque, stesso vale per le paginazioni interne
382
- *
383
- */
384
- private groupSearchRequestsCache;
385
- /**
386
- * Variabile d'appoggio per capire se c'è bisogno di ri-effettuare una ricerca o meno
387
385
  */
386
+ groupSearchRequestsCache: {
387
+ path: string;
388
+ route: GroupRouteFragment[];
389
+ view: AppSearch<any>;
390
+ group_column: string;
391
+ }[];
392
+ /** Variabile d'appoggio per capire se c'è bisogno di ri-effettuare una ricerca o meno */
388
393
  private ResearchNeeded;
389
- /**
390
- * Variabile da usare nei "colspan" quando si vuole dire "Tutte le colonne". 42 è un numero magico che mi serve per non calcolare questa variabile quando mi serve.
391
- *
392
- * Di base dovrebbe essere la somma dei RowTH con l'aggiunta di tutti gli Header extra in base alle situazioni. Dato che diventa una logica deficiente me la cavo così
393
- *
394
- * Se in una tabella ci sono meno di 42 colonne il colspan si ferma comunque alla fine, se invece ce ne sono di più... beh bisogna allungare sto numero
395
- *
396
- */
397
- allColumns: string;
394
+ /** Colonne visibili della vista attuale. Valorizzato di default al numero massimo di colonne supportate dalla tabella per le casistiche in assenza di custom cells */
395
+ Columns: {
396
+ Visibile: number;
397
+ VisibleUnpinned: number;
398
+ Global: number;
399
+ };
400
+ /** In caso di Row Grouping qui viene salvata la vista principale dei gruppi base */
401
+ MainGroupView: AppSearch<any>;
402
+ /** Conteggio base degli oggetti. In modalità normale viene resettato ad ogni nuova View inserita, in modalità RowGrouping viene resettato solo ad una nuova View di livello "0" */
403
+ BaseItemsCount: any;
404
+ /** Indica se ci sono delle colonne pinnate e visibili. Serve per poter settare tutte le colonne prima che arrivino dati a pinned*/
405
+ HasPinnedColumns: boolean;
406
+ /** Larghezza calcolata del container delle colonne pinnate */
407
+ PinnedContainerWidth: number;
408
+ /** Indica se nonostante siamo in modalità array sono stati individuati dei gruppi. In tal caso es-table si comporta da pseudo backend ed effettua le aggregazioni e raggruppamenti completamente lato client */
409
+ ArrayGrouping: boolean;
410
+ /** Opzioni di paginazione */
411
+ PagerOptions: {
412
+ PagerCount: number;
413
+ ShowCount: boolean;
414
+ ShowPaging: boolean;
415
+ UsesView: boolean;
416
+ View: any;
417
+ Ready: boolean;
418
+ Searches: 'items' | 'groups';
419
+ };
398
420
  /** @ignore */
399
421
  ngOnInit(): void;
400
422
  /** @ignore */
@@ -414,23 +436,12 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
414
436
  /** @ignore */
415
437
  writeValue(obj: any): void;
416
438
  /**
417
- * In base alla modalità specificata (ArrayMode, ViewMode, ecc...) questo metodo recupera l'array di oggetti da bindare ad interfaccia
418
- *
419
- * @param {boolean} onlyselected [false] Indica di prendere solo gli oggetti selezionati
420
- * @param {boolean} refreshPaging [false] Indica se aggiornare le informazioni di paginazione o meno
421
- * @param {boolean} allIfPossible [false] Indica se prendere tutti gli oggetti quaora possibile, usato solo in ArrayMode
422
- *
423
- * @returns {any[]} Lista degli oggetti su cui effettuare il bind lato interfaccia
439
+ * Successivamente al bind del nuovo input questa funzione si occupa di finalizzare tutti i parametri di funzionamento dell'es-table
440
+ * in base a Input - Modello, e qualsiasi altra cosa possa servire
424
441
  */
425
- private getItemsByMode;
426
- /** @ignore */
427
- private getViewItemsBySource;
428
- /**
429
- * Metodo che prende tutti gli oggetti di cui dispone divisi in bucket da 100 elementi
430
- *
431
- * @returns {any[][]} Matrice di array Nx100
432
- */
433
- private getItemSlices;
442
+ private finalizeContext;
443
+ /** Genera le informzioni di paginazione per la vista globale dell'es-table */
444
+ private setupPagingInformations;
434
445
  /**
435
446
  * Metodo che gestisce l'endless scroll e in base a quanto la tabella è stata scrollata aggiunge degli elementi extra a **TMPBoundSource**
436
447
  *
@@ -442,30 +453,23 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
442
453
  * all'es-table per renderizzare i valori da mostrare
443
454
  */
444
455
  private postBoundSourceCalculation;
445
- private bindDisplayToLoadedItemsOrGroups;
446
- /**
447
- * Metodo richiamato solo quando **TMPRowTDs** e **TMPRowTHs** sono completamente generati ed aggiustati. Serve per collegarli alle variabili usate lato binding HTML
448
- */
449
- private MoveTemporaryVariablesToRealOnes;
456
+ /** Per poter distinguere le chiamate a questo metodo: Dopo il setTimeout se uso gli EsTd/EsTh vecchi, senza il setTimeout se uso le nuove direttive */
457
+ private internalPostBoundSource;
450
458
  /**
451
- * Se non ho l'Input **DynamicRowColumnsDefinition** in modalità dinamica lo riempio con il default nome della colonna = testo della colonna
452
- */
453
- private eventuallyReviewDynamicColumns;
454
- /**
455
- * Partendo dagli **EsThs** estrappolo la lista di **EsTableColumn** che questa tabella dovrà eventualmente gestire per Visibilità e Ordine
456
- *
457
- * Costo: 1 scan EsThs
459
+ * Effettua il binding degli oggetti pervenuti da questa chiamata con gli oggetti effettivamente da graficare
458
460
  *
459
- * @param {EsTh[] | EsThDirective[]} ths Colonne della tabella
461
+ * @param {any} view View da cui sono arrivati gli oggetti. Può essere o un array se sono in **arrayMode** o una AppSearch<T> se sono in **viewMode**
460
462
  */
461
- private reviewColumnsList;
463
+ private bindDisplayToLoadedItemsOrGroups;
464
+ /** Metodo richiamato solo quando **TMPRowTDs** e **TMPRowTHs** sono completamente generati ed aggiustati. Serve per collegarli alle variabili usate lato binding HTML */
465
+ private MoveTemporaryVariablesToRealOnes;
462
466
  /**
463
- * Terminato il binding delle colonne da **reviewColumnsList** e della **View** dal **writeValue** questo metodo si occupa
464
- * dell'allineamento delle informazioni fra le colonne calcolate internamente e le informazioni sulle colonne che arrivano dall'AppSearch
467
+ * Permette di selezionare o deselezionare in maniera arbitraria degli oggetti
465
468
  *
466
- * @param {AppSearch<any>} view AppSearch da utilizzare per questa operazione
469
+ * @param {any[]} items Oggetti da selezionare o deselezionare
470
+ * @param {boolean} select **true** per selezionarli, **false** per non toccarli
467
471
  */
468
- private alignColumnsIfLoadedView;
472
+ setSelectionStatus(items: any[], select: boolean): void;
469
473
  /**
470
474
  * Metodo che gestisce il cambio di Ordinamento di una colonna
471
475
  *
@@ -479,24 +483,7 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
479
483
  * @param {boolean} resetsPage Indica al listener che deve resettare il numero di pagina
480
484
  * @param {AppSearch<any>} viewOverride Override della view da emettere per questa ricerca
481
485
  */
482
- private emitSearchRequest;
483
- /**
484
- * In base alla visibilità registrata nelle **ColumnsList** questo metodo si occupa di prendere tutti i **EsThs** ed **EsTds** relativi e nasonderli/mostrarli
485
- *
486
- * Costo: 1 scan ColumnsList, 1 scan EsThs, 1 scan EsTds
487
- *
488
- * @param {EsTh[] | EsThDirective[]} ths Header della tabella
489
- * @param {EsTd[] | EsTdDirective[]} tds Celle della tabella
490
- * @param {AppSearch<any>} view AppSearch da utilizzare per questa operazione
491
- */
492
- private refreshColumnsVisibility;
493
- /**
494
- * Allinea gli ordinamenti dati fra le **EsThs** e le informazioni all'interno della View bindata
495
- *
496
- * @param {AppSearch<any>} view AppSearch da utilizzare per questa operazione
497
- * @param {EsTh[] | EsThDirective[]} ths Colonne della tabella
498
- */
499
- private alignHeadersOrdering;
486
+ emitSearchRequest(resetsPage: boolean, viewOverride?: AppSearch<any>): void;
500
487
  /**
501
488
  * Partendo dagli **EsTds** bindati genera, all'interno del dizionario **TMPRowTDs** tutti i contesti dei vari oggetti.
502
489
  *
@@ -519,73 +506,19 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
519
506
  */
520
507
  private evaluateRowThs;
521
508
  /**
522
- * Data una direttiva EsTh restituisce la lista delle aggregazioni richiesta per questa colonna o il gruppo che rappresenta
523
- *
524
- * @param {EsThDirective} th Direttiva
525
- *
526
- * @returns {GroupOrAggregation[]} Lista dei gruppi o aggregazioni relativi alla Direttiva passata
527
- */
528
- private getGroupAggregations;
529
- /**
530
- * Data una direttiva con un formato restituisce tutte le coppie Funzione di Aggregazione - Formato
531
- *
532
- * @param {EsThDirective} th Direttiva EsTh di cui calcolare le funzioni di aggregazione usate
533
- *
534
- * @returns {{ func: string, format: string }[]} Lista delle funzioni di aggregazione rilevate
535
- */
536
- private getEsThDirectiveListOfAggregations;
537
- /**
538
- * Metodo che genera l'ordine di default delle colonne
539
- *
540
- * @param {AppSearch<any>} view AppSearch da utilizzare per questa operazione
541
- */
542
- private generateDefaultOrder;
543
- /**
544
- * Applica l'ordine specificato alle varie colonne
545
- *
546
- * @param {AppSearch<any>} view AppSearch da utilizzare per questa operazione
547
- * @param {boolean} finalize Se **true** significa che non mi aspetto di dover effettuare altre operazioni e posso renderizzare la situazione in base ai RowContext
548
- * Senza finalize significa che mi aspetto altre operazioni che prima o poi richiameranno questa funzione col finalize.
549
- *
550
- * Ad esempio, una volta selezionato ordinamento fisico/logico delle colonne so che parte un altra ricerca che mi rivalorizzera da "writeValue", che già chiama questa funzione.
551
- * Mettendo solo la chiamata da "writeValue" come "finalizzante" mi assicuro che smanattamenti a frontend non causino flickering fino a quando non servono
552
- */
553
- private applyOrdering;
554
- /**
555
- * Ottiene un elemento di separazione fra Gruppi che serve per paginare le ricerche all'interno di ogni singolo gruppo
556
- *
557
- * @param {AppSearch<any>} view View utilizzata per la ricerca. Me ne salvo i parametri nel separatore attuale dato che ne ho bisogno per caricare altri elementi
558
- * facenti riferimento allo stesso contesto
559
- * @param {string} parent Parent path che rappresenta a quale gruppo è affibbiato questo separatore
560
- * @param {number} level Livello del gruppo di cui questo elemento è separatore, viene usato per applicare la classe "est-lvl-{{level}}"
561
- *
562
- * @returns {any} Elemento di separazione contenente tutti i bind per presentare una paginazione sotto questo gruppo lato interfaccia
563
- */
564
- private getGroupSeparator;
565
- /**
566
- * Data una colonna effettua la riemissione di tutte le ricerche relative.
509
+ * Sposta la ricerca di una pagina in avanti (o indietro)
567
510
  *
568
- * Es. Ho 2 campi di gruppo e ho espanso fino a vedere i valori fino ad un livello qualsiasi.
569
- * Clicco l'ordinamento sul secondo gruppo.
570
- * Tutte le ricerche relative ai primi gruppi devono essere rieseguite. Quando i risultati arriveranno ci penserà il metodo **bindDisplayToLoadedItemsOrGroups**
571
- * a tagliare via gli oggetti non più visualizzati
572
- *
573
- * @param {string} column Colonna su cui si è effettuata un'operazione di ordinamento
574
- * @param {AppOrdering[]} orderings Direttive di ordinamento da applicare alle varie sottoricerche
575
- *
576
- * @todo: Testare
511
+ * @param {number} page Numero di pagine da aggiungere (o sottrarre, se negativo) alla pagina attuale
512
+ * @param {any} pager Elemento di separazione su cui è effettuata la ricerca
577
513
  */
578
- private emitRowGroupingSearches;
514
+ addToPageGroup(page: number, pager: GroupPager): void;
579
515
  /**
580
- * Helper che calcola il contenuto di una cella relativa a un gruppo riga, tenendo conto del formato delle eventuali aggregazioni
581
- *
582
- * @param {Group} grp Gruppo di cui mostrare le celle
583
- * @param {string} cell Cella attuale di cui calcolare il testo
584
- * @param {EsThDirective} header Header relativo alla cella attuale, utilizzata per identificare le informazioni di aggregazione
516
+ * Sposta la ricerca alla pagina specificata
585
517
  *
586
- * @returns {string} Testo finale calcolato per la **cell** corrente, in base alle aggregazioni di **header**
518
+ * @param {number} page Pagina a cui navigare
519
+ * @param {any} pager Elemento di separazione su cui è effettuata la ricerca
587
520
  */
588
- private getGroupCellDisplay;
521
+ goToPageGroup(page: number, pager: GroupPager): void;
589
522
  /**
590
523
  * Gestisce i click sulla tabella solo per le righe a gruppo.
591
524
  * O rimuove gli elementi attualmente presenti o carica il contenuto del gruppo
@@ -595,131 +528,12 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
595
528
  * @returns {boolean} **true** se l'operaizone è andata a buon fine, **false** altrimenti
596
529
  */
597
530
  handleGroupClick(group: Group): boolean;
598
- /**
599
- * Funzione che dato un valore lo formatta in base al tipo
600
- *
601
- * @param {string} value Valore che generalemnte può essere una data o un numero
602
- * @param {string} fromat Formato su cui formattare il valore. Può essere ad esempio "small", "long" "verylong" per le date o F{0-9} per i numeri decimali
603
- *
604
- * @returns {string} Valore dell'aggregazione formattato come si deve
605
- */
606
- private formatAggregationValue;
607
- /**
608
- * All'interno della dialog "Ordinamento e Visibilità Colonne" mette la colonna specificata prima della colonna precedente
609
- *
610
- * @param {EsTableColumn} columnItem Colonna da spostare
611
- */
612
- sendUp(columnItem: EsTableColumn): void;
613
- /**
614
- * All'interno della dialog "Ordinamento e Visibilità Colonne" mette la colonna specificata dopo la colonna successiva
615
- *
616
- * @param {EsTableColumn} columnItem Colonna da spostare
617
- */
618
- sendDown(columnItem: EsTableColumn): void;
619
- /**
620
- * All'interno della dialog "Ordinamento e Visibilità Colonne" inverte le impostazioni di visibilità della colonna
621
- *
622
- * @param {EsTableColumn} columnItem Colonna da spostare
623
- */
624
- columnClicked(item: EsTableColumn): void;
625
- /**
626
- * All'apertura della dialog "Ordinamento e Visibilità Colonne" ricarica le informazioni attuali per permettere la modifica
627
- */
628
- resetColumnVisSelection(): void;
629
- /**
630
- * Riaggiorna le **OrderDirectives** con le informazioni in **ColumnsList**
631
- */
632
- private refreshColumnOrdering;
633
- /**
634
- * Effettua la selezione o meno del check globale (**globalColVisCheck**) di visibilità in base a se tutte le **TMPColumnsList** sono visibili o no
635
- */
636
- updateGlobalColVisCheck(): void;
637
- /**
638
- * Funzione che effettua la conferma della visibilità e dell'ordine delle colonne.
639
- *
640
- * Questa selezione viene inoltre salvata nelle preferenze (**@esfaenza/preferences**), qualora l'Input **SavePreferences** fosse valorizzato
641
- *
642
- * @returns {boolean} **true** se non ci sono problemi, **false** altrimenti
643
- */
644
- confirmColumnVisibilitySelection(): boolean;
645
- /**
646
- * Sul click nella checkbox di selezione globale si scorrono tutte le colonne e si impostano al valore della check globale
647
- */
648
- globalColVisCheckChanged(): void;
649
- /**
650
- * Data una lista di oggetti assegno il livello gerarchico rispetto alla lista di oggetti passata
651
- *
652
- * @param {any[]} objs Lista di oggetti a cui aggiungere l'informazione del livello gerarchico
653
- */
654
- private assignHierarchyLevels;
655
- /**
656
- * Per ognuno degli oggetti passati gli assegna un livello di gerarchia in base a **ParentKey** e **OwnKey**
657
- *
658
- * @param {any[]} objs Oggetti a cui assegnare il livello di gerarchia
659
- * @param {number} levelToAssign Livello che sta assegnando attualmente questa iterazione (dato che è ricorsiva)
660
- *
661
- * @returns {number} Numero di oggetti a cui è stato assegnato un livello gerarchico
662
- */
663
- private assignLevel;
664
- /**
665
- * Funzione che permette di effettuare l'espansione di un parent quando la tabella funziona in modalità gerarchica
666
- *
667
- * @param {string} key Chiave del parent da espandere
668
- */
669
- expandParent(key: string): void;
670
- /**
671
- * Funzione che permette di effettuare il collapse di un parent quando la tabella funziona in modalità gerarchica
672
- *
673
- * @param {string} key Chiave del parent da collassare
674
- */
675
- collapseParent(key: string): void;
676
- /**
677
- * Collassa ricorsivamente tutti i figli di un parent identificato dalla **parentKey**
678
- *
679
- * @param {string} parentKey Chiave del parent di cui collassare i figli
680
- */
681
- private collapseChildOfParent;
682
- /**
683
- * Valuta quali elementi devono essere marcati come selezionati nella vista attuale. Si basa sull'oggetto **selection** interno all'AppSearch
684
- *
685
- * @param {any[]} items Oggetti di cui valutare la selezione
686
- * @param {ItemsSelection<any>} selectionItem Oggetti di selezione derivante dalla view o dall'oggetto per Array
687
- */
688
- private evaluateSelection;
689
- /**
690
- * Valuta quali elementi devono essere marcati come selezionati nella vista attuale. Si basa sull'oggetto **arraymodeSelection** dell'es-table
691
- *
692
- * @param {any[]} array Lista di oggetti di cui valutare la selezione in modalità array
693
- */
694
- private arrayModeEvaluateSelection;
695
- /**
696
- * Implementazione agnostica della valutazione delle selezioni degli oggetti. Richiede gli oggetti della vista attuale e l'itemSelector
697
- *
698
- * @param {any[]} items Oggetti di cui aggiornare lo stato di selezione
699
- * @param {ItemsSelection<any>} selectionItem Oggetto contenente lo stato attuale di selezione
700
- */
701
- private handleSelectionEvaluation;
702
531
  /**
703
532
  * Gestisce la selezione globale degli oggetti, sia per pagina che a livello di **SelectAll**
704
533
  *
705
534
  * @param {boolean} forcedVal Valore forzato di check da assegnare agli oggetti
706
535
  */
707
536
  globalCheckChanged(forcedVal?: boolean): void;
708
- /**
709
- * Helper per gestire la selezione di N elementi utilizzando la Cache di selezione ed eventualmente aggiornando il concetto di "all selection"
710
- *
711
- * Vunziona sia in modalità Array che in modalità View Semplice o View Avanzata (con le Custom Cells)
712
- *
713
- * @param {any[]} items Oggetti da selezionare o deselezionare
714
- * @param {boolean} forcedVal Valore forzato di check da assegnare agli oggetti
715
- *
716
- * @returns {ItemsSelection<any>} Oggetto di selezione aggiornato con le informazioni sull'ultima operazione effettuata
717
- */
718
- private handleItemsSelection;
719
- /**
720
- * Finalizza le informazioni di selezione del **ItemsSelection** corrente
721
- */
722
- private finalizeSelectionInformations;
723
537
  /**
724
538
  * Gestisce i click sulla tabella, gestendo eventualmente anche gli Shift + Click per selezionare un range di oggetti
725
539
  *
@@ -729,16 +543,6 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
729
543
  * @returns {boolean} **true** se l'operaizone è andata a buon fine, **false** altrimenti
730
544
  */
731
545
  handleClick(event: any, item: any): boolean;
732
- /**
733
- * Valuta la quantità di oggetti che sono stati selezionati al termine di un evento di selezione
734
- *
735
- * @returns {number} Numero di oggetti selezionati
736
- */
737
- private evaluateSelected;
738
- /**
739
- * Gestisce il comando di "Seleziona tutto in tutte le pagine" o il suo contrario, cioè "Reimposta selezione"
740
- */
741
- selectAllOrResetSelection(): void;
742
546
  /**
743
547
  * Sposta la ricerca di una pagina in avanti (o indeitro)
744
548
  *
@@ -755,35 +559,10 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
755
559
  * Evento richiamato sul cambio della paginazione. Verrà richiamato l'evento **emitSearchRequest**
756
560
  * per comunicare al componente che utilizza questa tabella che i dati sono da aggiornare
757
561
  */
758
- onItemsPerPageChanged(): void;
759
- /**
760
- * Effettua l'esportazione dei dati
761
- *
762
- * @param {string} format Formato di esportazione. Letto solo in modalità Report della tabella
763
- */
764
- tryExport(format?: string): void;
765
- /**
766
- * Metodo che effettivamente genera gli header e i dati per l'esportazione con **ngx-csv**
767
- *
768
- * @param {any[]} items Oggetti da esportare
769
- */
770
- private setupExport;
771
- /**
772
- * Sul click dell'Header di una colonna questo metodo si occupa di applicare l'ordinamento successivo e di notificare con **emitSearchRequest**
773
- * il bisogno di aggiornare i dati da parte del componente che utilizza la tabella
774
- *
775
- * Utilizzato solo in modalità REport
776
- *
777
- * @param {ReportColumn} clm Colonna del report per cui ordinare
778
- */
779
- setupNextOrderAndSearch(clm: ReportColumn): void;
780
- /**
781
- * Metodo che si occupa di gestire la grafica della tabella in base alle informazioni di ordinamento colonne e paginazione contenuti nel modello
782
- */
783
- private reviewReportBindings;
784
- /**
785
- * Metodo che gestisce la modifica del tempo specificato per l'aggiornamento automatico
786
- */
562
+ onItemsPerPageChanged(newIpp: any): void;
563
+ /** Evento richiamato sul cambio della paginazione. Verrà richiamato l'evento **emitSearchRequest** con la vista del separatore */
564
+ onGroupItemsPerPageChanged(pager: GroupPager, newIpp: number): void;
565
+ /** Metodo che gestisce la modifica del tempo specificato per l'aggiornamento automatico */
787
566
  autoUpdateChanged(): void;
788
567
  /**
789
568
  * Metodo chiamato dal click su una delle colonne generate dall'Input **DynamicOperations**
@@ -800,28 +579,6 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
800
579
  * @returns {TemplateRef<any>} Template da usare per la colonna
801
580
  */
802
581
  findEsTd(column: string): TemplateRef<any>;
803
- /**
804
- * Metodo di supporto alla creazione di un router link parametrizzato all'oggetto corrente utilizzato nella modalità dinamica
805
- *
806
- * @param {string} path Path su cui navigare con eventuali parametri riferiti all'oggetto cotnestuale come {0}, {1}, ecc...
807
- * @param {string[]} parameterProps Lista posizionale delle proprietà a cui bindare i riferimenti del parametro **path**
808
- * Es. Il valore dela proprietà all'indice 0 di questo array verrà sostituita al valore {0} del parametro **path**
809
- * @param {GenericItem} item Oggetto generico collegato a questo contesto
810
- *
811
- * @returns {any} Router link generato in base al parametri
812
- */
813
- generateRouterLink(path: string, parameterProps: string[], item: GenericItem): any;
814
- /**
815
- * Crea un router link
816
- *
817
- * @param {string} path Path su cui navigare con eventuali parametri riferiti all'oggetto cotnestuale come {0}, {1}, ecc...
818
- * @param {string[]} pars Lista posizionale delle proprietà a cui bindare i riferimenti del parametro **path**
819
- * Es. Il valore dela proprietà all'indice 0 di questo array verrà sostituita al valore {0} del parametro **path**
820
- * @param {GenericItem} item Oggetto generico collegato a questo contesto
821
- *
822
- * @returns {any} Router link generato in base al parametri
823
- */
824
- private getRouterLink;
825
582
  /**
826
583
  * Equivalente del metodo **addToPage** riadattato per la modalità array
827
584
  *
@@ -834,18 +591,6 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
834
591
  * @param {number} page Pagina a cui navigare
835
592
  */
836
593
  arrayGoToPage(page: number): void;
837
- /**
838
- * Metodo per effettuare il refresh della paginazione sul cambiamento degli oggetti da visualizzare in una singola pagina.
839
- *
840
- * Vale solo per la modalità Array
841
- *
842
- * @param {number} pageSize Dimensione della pagina
843
- */
844
- refreshPaging(pageSize: number): void;
845
- /**
846
- * Genera le informazioni di paginazione e taglia la View in modalità array per mostrare solo gli oggetti della pagina specificata
847
- */
848
- private adaptViewToPaging;
849
594
  /**
850
595
  * Gestore dei click sulle celle per le quali era impostata una azione custom da **CustomCellActionsOn**
851
596
  *
@@ -861,33 +606,17 @@ export declare class EsTableComponent implements ControlValueAccessor, OnChanges
861
606
  * @param {string} cornerid Codice dell'operazione selezionata
862
607
  */
863
608
  cornerActionClicked(cornerid: string): void;
864
- /** Helper che identifica se il td attuale è di tipo **EsTd**. In caso contrario è da considerarsi **EsTdDirective** */
865
- private isEsTd;
866
- /** Helper che identifica se il th attuale è di tipo **EsTh**. In caso contrario è da considerarsi **EsThDirective** */
867
- private isEsTh;
868
- /** Impostazione modalità dell'EsTable */
609
+ /**
610
+ * Impostazione modalità dell'EsTable
611
+ *
612
+ * @param {'array' | 'view' | 'report'} mode Modalità da impostare
613
+ **/
869
614
  private setMode;
870
615
  /**
871
616
  * Helper per effettuare chiamate interne di allineamento alla funzione **writeValue**,
872
617
  * impostando prima **internalWriteCall** in modo da non effettuare operazioni inutili
873
618
  */
874
- private internalWriteValue;
875
- /**
876
- * Date le informazioni di paginazione ottiene l'array dei pulsanti
877
- *
878
- * @param {number} maxBtns Numero massimo di pulsanti da visualizzare
879
- * @param {number} page Pagina corrente
880
- * @param {number} lastPage Ultima pagina disponibile
881
- *
882
- * @returns {any[]} Pseudo-array di pulsanti a cui ci si può bindare lato HTML
883
- */
884
- private getPagesArray;
885
- /**
886
- * Calcola l'hash di un oggetto qualsiasi
887
- *
888
- * @param {any[]} items Oggetti per cui calcolare l'hash
889
- */
890
- private calculateHash;
619
+ internalWriteValue(): void;
891
620
  /**
892
621
  * Metodo eventualmente richiamabile anche dal componente esterno che permette di forzare un refresh della tabella
893
622
  */