@esfaenza/es-table 12.2.25 → 13.1.2

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 (88) hide show
  1. package/esfaenza-es-table.d.ts +1 -7
  2. package/esm2020/esfaenza-es-table.mjs +5 -0
  3. package/esm2020/lib/components/es-table/es_table.component.loc.mjs +41 -0
  4. package/esm2020/lib/components/es-table/es_table.component.mjs +1396 -0
  5. package/esm2020/lib/components/es-td/es_td.component.mjs +106 -0
  6. package/esm2020/lib/components/es-th/es_th.component.mjs +176 -0
  7. package/esm2020/lib/components/pager/table_pager.component.loc.mjs +27 -0
  8. package/esm2020/lib/components/pager/table_pager.component.mjs +118 -0
  9. package/{esm2015/lib/core/handlers/classes/ColumnMetadataHandler.js → esm2020/lib/core/handlers/classes/ColumnMetadataHandler.mjs} +0 -0
  10. package/{esm2015/lib/core/handlers/classes/DynamicModeHandler.js → esm2020/lib/core/handlers/classes/DynamicModeHandler.mjs} +0 -0
  11. package/esm2020/lib/core/handlers/classes/ExportHandler.mjs +103 -0
  12. package/{esm2015/lib/core/handlers/classes/HierarchyModeHandler.js → esm2020/lib/core/handlers/classes/HierarchyModeHandler.mjs} +0 -0
  13. package/esm2020/lib/core/handlers/classes/ItemsHandler.mjs +129 -0
  14. package/{esm2015/lib/core/handlers/classes/ReportModeHandler.js → esm2020/lib/core/handlers/classes/ReportModeHandler.mjs} +0 -0
  15. package/esm2020/lib/core/handlers/classes/RowGroupingHandler.mjs +474 -0
  16. package/esm2020/lib/core/handlers/classes/SelectionHandler.mjs +525 -0
  17. package/esm2020/lib/core/handlers/classes/UtilitiesHandler.mjs +166 -0
  18. package/{esm2015/lib/core/handlers/index.js → esm2020/lib/core/handlers/index.mjs} +0 -0
  19. package/esm2020/lib/directives/es_td.directive.mjs +32 -0
  20. package/esm2020/lib/directives/es_th.directive.mjs +84 -0
  21. package/{esm2015/lib/domain/configuration/EsTableDefaultable.js → esm2020/lib/domain/configuration/EsTableDefaultable.mjs} +0 -0
  22. package/{esm2015/lib/domain/configuration/EsTableModuleConfig.js → esm2020/lib/domain/configuration/EsTableModuleConfig.mjs} +0 -0
  23. package/{esm2015/lib/domain/externals/classes/CornerMenuOption.js → esm2020/lib/domain/externals/classes/CornerMenuOption.mjs} +0 -0
  24. package/{esm2015/lib/domain/externals/classes/EsTableColumnsDefinition.js → esm2020/lib/domain/externals/classes/EsTableColumnsDefinition.mjs} +0 -0
  25. package/{esm2015/lib/domain/externals/classes/EsTableOperationDefinition.js → esm2020/lib/domain/externals/classes/EsTableOperationDefinition.mjs} +0 -0
  26. package/{esm2015/lib/domain/externals/classes/appsearch/AppOrdering.js → esm2020/lib/domain/externals/classes/appsearch/AppOrdering.mjs} +0 -0
  27. package/{esm2015/lib/domain/externals/classes/appsearch/AppSearch.js → esm2020/lib/domain/externals/classes/appsearch/AppSearch.mjs} +0 -0
  28. package/{esm2015/lib/domain/externals/classes/appsearch/GenericItem.js → esm2020/lib/domain/externals/classes/appsearch/GenericItem.mjs} +0 -0
  29. package/{esm2015/lib/domain/externals/classes/appsearch/Group.js → esm2020/lib/domain/externals/classes/appsearch/Group.mjs} +0 -0
  30. package/{esm2015/lib/domain/externals/classes/appsearch/GroupAggregation.js → esm2020/lib/domain/externals/classes/appsearch/GroupAggregation.mjs} +0 -0
  31. package/{esm2015/lib/domain/externals/classes/appsearch/GroupFilter.js → esm2020/lib/domain/externals/classes/appsearch/GroupFilter.mjs} +0 -0
  32. package/{esm2015/lib/domain/externals/classes/appsearch/GroupOrAggregation.js → esm2020/lib/domain/externals/classes/appsearch/GroupOrAggregation.mjs} +0 -0
  33. package/{esm2015/lib/domain/externals/classes/appsearch/ItemsSelection.js → esm2020/lib/domain/externals/classes/appsearch/ItemsSelection.mjs} +0 -0
  34. package/{esm2015/lib/domain/externals/classes/report/ReportColumn.js → esm2020/lib/domain/externals/classes/report/ReportColumn.mjs} +0 -0
  35. package/{esm2015/lib/domain/externals/classes/report/ReportDefinition.js → esm2020/lib/domain/externals/classes/report/ReportDefinition.mjs} +0 -0
  36. package/{esm2015/lib/domain/externals/classes/report/ReportOrder.js → esm2020/lib/domain/externals/classes/report/ReportOrder.mjs} +0 -0
  37. package/{esm2015/lib/domain/externals/classes/report/ReportParam.js → esm2020/lib/domain/externals/classes/report/ReportParam.mjs} +0 -0
  38. package/{esm2015/lib/domain/externals/classes/report/ReportResult.js → esm2020/lib/domain/externals/classes/report/ReportResult.mjs} +0 -0
  39. package/{esm2015/lib/domain/externals/classes/report/ReportRow.js → esm2020/lib/domain/externals/classes/report/ReportRow.mjs} +0 -0
  40. package/{esm2015/lib/domain/externals/index.js → esm2020/lib/domain/externals/index.mjs} +0 -0
  41. package/{esm2015/lib/domain/index.js → esm2020/lib/domain/index.mjs} +0 -0
  42. package/{esm2015/lib/domain/internals/classes/CacheTriptic.js → esm2020/lib/domain/internals/classes/CacheTriptic.mjs} +0 -0
  43. package/{esm2015/lib/domain/internals/classes/EsTableColumn.js → esm2020/lib/domain/internals/classes/EsTableColumn.mjs} +0 -0
  44. package/{esm2015/lib/domain/internals/classes/GroupPager.js → esm2020/lib/domain/internals/classes/GroupPager.mjs} +0 -0
  45. package/{esm2015/lib/domain/internals/classes/GroupRouteFragment.js → esm2020/lib/domain/internals/classes/GroupRouteFragment.mjs} +0 -0
  46. package/{esm2015/lib/domain/internals/classes/ThAggregation.js → esm2020/lib/domain/internals/classes/ThAggregation.mjs} +0 -0
  47. package/{esm2015/lib/domain/internals/classes/ThElement.js → esm2020/lib/domain/internals/classes/ThElement.mjs} +0 -0
  48. package/{esm2015/lib/domain/internals/index.js → esm2020/lib/domain/internals/index.mjs} +0 -0
  49. package/esm2020/lib/es-table.module.mjs +79 -0
  50. package/{esm2015/lib/tokens.js → esm2020/lib/tokens.mjs} +0 -0
  51. package/esm2020/public-api.mjs +14 -0
  52. package/fesm2015/esfaenza-es-table.mjs +4751 -0
  53. package/fesm2015/esfaenza-es-table.mjs.map +1 -0
  54. package/{fesm2015/esfaenza-es-table.js → fesm2020/esfaenza-es-table.mjs} +641 -437
  55. package/fesm2020/esfaenza-es-table.mjs.map +1 -0
  56. package/lib/components/es-table/es_table.component.d.ts +6 -3
  57. package/lib/components/es-table/es_table.component.loc.d.ts +3 -0
  58. package/lib/components/es-td/es_td.component.d.ts +3 -0
  59. package/lib/components/es-th/es_th.component.d.ts +3 -0
  60. package/lib/components/pager/table_pager.component.d.ts +3 -0
  61. package/lib/components/pager/table_pager.component.loc.d.ts +3 -0
  62. package/lib/core/handlers/classes/ExportHandler.d.ts +8 -2
  63. package/lib/core/handlers/classes/UtilitiesHandler.d.ts +3 -0
  64. package/lib/directives/es_td.directive.d.ts +3 -0
  65. package/lib/directives/es_th.directive.d.ts +3 -0
  66. package/lib/es-table.module.d.ts +21 -0
  67. package/package.json +30 -16
  68. package/public-api.d.ts +3 -0
  69. package/bundles/esfaenza-es-table.umd.js +0 -5065
  70. package/bundles/esfaenza-es-table.umd.js.map +0 -1
  71. package/esfaenza-es-table.metadata.json +0 -1
  72. package/esm2015/esfaenza-es-table.js +0 -12
  73. package/esm2015/lib/components/es-table/es_table.component.js +0 -1316
  74. package/esm2015/lib/components/es-table/es_table.component.loc.js +0 -36
  75. package/esm2015/lib/components/es-td/es_td.component.js +0 -106
  76. package/esm2015/lib/components/es-th/es_th.component.js +0 -160
  77. package/esm2015/lib/components/pager/table_pager.component.js +0 -106
  78. package/esm2015/lib/components/pager/table_pager.component.loc.js +0 -22
  79. package/esm2015/lib/core/handlers/classes/ExportHandler.js +0 -43
  80. package/esm2015/lib/core/handlers/classes/ItemsHandler.js +0 -130
  81. package/esm2015/lib/core/handlers/classes/RowGroupingHandler.js +0 -475
  82. package/esm2015/lib/core/handlers/classes/SelectionHandler.js +0 -527
  83. package/esm2015/lib/core/handlers/classes/UtilitiesHandler.js +0 -169
  84. package/esm2015/lib/directives/es_td.directive.js +0 -29
  85. package/esm2015/lib/directives/es_th.directive.js +0 -69
  86. package/esm2015/lib/es-table.module.js +0 -52
  87. package/esm2015/public-api.js +0 -11
  88. package/fesm2015/esfaenza-es-table.js.map +0 -1
@@ -0,0 +1,166 @@
1
+ // Angular
2
+ import { Injectable } from "@angular/core";
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@esfaenza/extensions";
5
+ /** Classe di utilità per le cose comuni */
6
+ export class UtilitiesHandler {
7
+ /** @ignore Costruttore */
8
+ constructor(hashExts) {
9
+ this.hashExts = hashExts;
10
+ }
11
+ /**
12
+ * Data una lista di oggetti effettua dei raggruppamenti in base alla proprietà **field**,
13
+ * restituendo un oggetto del tipo { Gruppo1: oggetti[], Gruppo2: oggetti[], ecc... }
14
+ *
15
+ * @param {any[]} array Lista degli oggetti da raggruppare
16
+ * @param {string} field Campo su cui effettuare i raggruppamenti
17
+ *
18
+ * @returns {{ [id: string]: any[] }} Dizionario dei gruppi
19
+ */
20
+ groupBy(array, field) {
21
+ let ret = {};
22
+ for (let i = 0; i < array.length; i++) {
23
+ let x = array[i];
24
+ (ret[x[field]] = ret[x[field]] || []).push(x);
25
+ }
26
+ return ret;
27
+ }
28
+ ;
29
+ /**
30
+ * Helper per effettuare il caching delle aggregazioni. Le sposta da una lista di **GroupAggregation** a una **<Map<string, Map<string, string>>**
31
+ *
32
+ * @param {any} group Gruppo di cui cachare le aggregazioni
33
+ */
34
+ cacheAggregations(group) {
35
+ group._aggregationsCache = new Map();
36
+ let castedAgCache = group._aggregationsCache;
37
+ for (let i = 0; i < group.aggregations.length; i++) {
38
+ let agg = group.aggregations[i];
39
+ if (castedAgCache.has(agg.column))
40
+ castedAgCache.get(agg.column).set(agg.aggregation, agg.value);
41
+ else {
42
+ let tmp = new Map();
43
+ tmp.set(agg.aggregation, agg.value);
44
+ castedAgCache.set(agg.column, tmp);
45
+ }
46
+ }
47
+ }
48
+ /** Helper per spostare un oggetto di un array da un indice all'altro, in place */
49
+ arrayMove(array, oldI, newI) {
50
+ if (newI > array.length - 1 || oldI > array.length - 1 || newI < 0 || oldI < 0)
51
+ throw "Gli indici passati non fanno riferimento a una posizione dell'array. Length: " + array.length + " Old:" + oldI + " New: " + newI;
52
+ array.splice(newI, 0, array.splice(oldI, 1)[0]);
53
+ }
54
+ /**
55
+ * Helper che identifica se il td attuale è di tipo **EsTd**. In caso contrario è da considerarsi **EsTdDirective**
56
+ *
57
+ * @param {any} td Cella da valutare
58
+ * @returns {boolean} Restituisce **true** se il **td** è di tipo **EsTd**, **false** se è di tipo **EsTdDirective**
59
+ */
60
+ isEsTd(td) { return !td._directive; }
61
+ /**
62
+ * Helper che identifica se il th attuale è di tipo **EsTh**. In caso contrario è da considerarsi **EsThDirective**
63
+ *
64
+ * @param {any} td Header da valutare
65
+ * @returns {boolean} Restituisce **true** se il **th** è di tipo **EsTh**, **false** se è di tipo **EsThDirective**
66
+ */
67
+ isEsTh(th) { return !th._directive; }
68
+ /**
69
+ * Date le informazioni di paginazione ottiene l'array dei pulsanti
70
+ *
71
+ * @param {number} maxBtns Numero massimo di pulsanti da visualizzare
72
+ * @param {number} page Pagina corrente
73
+ * @param {number} lastPage Ultima pagina disponibile
74
+ *
75
+ * @returns {any[]} Pseudo-array di pulsanti a cui ci si può bindare lato HTML
76
+ */
77
+ getPagesArray(maxBtns, page, lastPage, actualCount = null, ipp = null) {
78
+ let result = [];
79
+ // Se sono in modalità "Numero di pagine ed oggetti sconosciuti" faccio in modo di mostrare la pagina successiva solo se gli items effettivamente pervenuti
80
+ // sono uguali alla paginazione attuale (cioè questa pagina è di sicuro riempita completamente)
81
+ if (lastPage == -1 && ((actualCount == null && ipp == null) || (actualCount == ipp)))
82
+ lastPage = page + 1;
83
+ // Se sono in modalità "Numero di pagine ed oggetti sconosciuti" e mi arrivano 0 oggetti significa che l'ultima pagina è la precedente e non mostro pagine oltre
84
+ if (lastPage == -1 && actualCount == 0)
85
+ lastPage = page;
86
+ let min, max;
87
+ if (lastPage <= maxBtns) {
88
+ min = 1;
89
+ max = lastPage - 1;
90
+ }
91
+ else {
92
+ // tolgo la pagina selected è l'ultima pagina che è quella delle pagine totali
93
+ let rangeOutside = (maxBtns - 2) / 2;
94
+ min = page - rangeOutside;
95
+ max = page + rangeOutside;
96
+ if (min < 1) {
97
+ min = 1;
98
+ max = maxBtns - 1;
99
+ }
100
+ else if (max >= lastPage) {
101
+ min = lastPage - maxBtns + 1;
102
+ max = lastPage - 1;
103
+ }
104
+ }
105
+ result.push({ val: 1, cssClass: (1 === page ? 'btn-main app-white-text' : 'app-white-button') });
106
+ if (max >= min) {
107
+ for (let i = min; i <= max; i++)
108
+ if (i !== 1)
109
+ result.push({ val: i, cssClass: (i === page ? 'btn-main app-white-text' : 'app-white-button') });
110
+ result.push({
111
+ val: lastPage,
112
+ cssClass: (lastPage === page ? 'btn-main app-white-text' : 'app-white-button')
113
+ });
114
+ }
115
+ return result;
116
+ }
117
+ /**
118
+ * Calcola l'hash di un oggetto qualsiasi
119
+ *
120
+ * @param {any[]} items Oggetti per cui calcolare l'hash
121
+ */
122
+ calculateHash(items) {
123
+ if (!items)
124
+ return;
125
+ // Supporto a hash duplicati di oggetti uguali
126
+ let usedHashesCache = {};
127
+ for (let i = 0; i < items.length; i++) {
128
+ let item = items[i];
129
+ // Prima di calcolare l'hash rimuovo le proprietà interne per evitare che mi scompensino i calcoli successivi
130
+ let tmp = Object.assign({}, items[i]);
131
+ delete tmp._selected;
132
+ delete tmp._visible;
133
+ delete tmp._hash;
134
+ let hash = this.hashExts.hashObject(tmp);
135
+ usedHashesCache[hash] = usedHashesCache[hash] ? usedHashesCache[hash] + 1 : 1;
136
+ item._hash = hash + (usedHashesCache[hash] > 1 ? "_" + usedHashesCache[hash] : "");
137
+ }
138
+ }
139
+ /**
140
+ * Se l'Input è null (valore non settato) vede se c'è un default con cui valorizzarlo. Se non c'è utilizza il valore di fallback (qualora fornito)
141
+ *
142
+ * @param {T} inputValue Valore dell'Input
143
+ * @param {T} defaultValue Valore di default impostato da configurazione
144
+ * @param {T} fallbackValue Valore dell'Input per quando non è stato assegnato dal programmatore e non ha un default
145
+ */
146
+ InputOrDefault(inputValue, defaultValue, fallbackValue) {
147
+ // Input valorizzato dal programmatore
148
+ if (inputValue != null && inputValue != undefined)
149
+ return inputValue;
150
+ // Input valorizzato da configurazione globale
151
+ if (defaultValue != null && defaultValue != undefined)
152
+ return defaultValue;
153
+ //Input non valorizzato da niente e da nessuno
154
+ if (fallbackValue != null && fallbackValue != undefined)
155
+ return fallbackValue;
156
+ // I casi in cui si arriva qui sono i casi di Input che di default va bene che siano nulli e che nessuno si caga
157
+ return null;
158
+ }
159
+ }
160
+ UtilitiesHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: UtilitiesHandler, deps: [{ token: i1.HashingService }], target: i0.ɵɵFactoryTarget.Injectable });
161
+ UtilitiesHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: UtilitiesHandler, providedIn: 'root' });
162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: UtilitiesHandler, decorators: [{
163
+ type: Injectable,
164
+ args: [{ providedIn: 'root' }]
165
+ }], ctorParameters: function () { return [{ type: i1.HashingService }]; } });
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXRpbGl0aWVzSGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VzLXRhYmxlL3NyYy9saWIvY29yZS9oYW5kbGVycy9jbGFzc2VzL1V0aWxpdGllc0hhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsVUFBVTtBQUNWLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVMzQywyQ0FBMkM7QUFFM0MsTUFBTSxPQUFPLGdCQUFnQjtJQUV6QiwwQkFBMEI7SUFDMUIsWUFBb0IsUUFBd0I7UUFBeEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7SUFBSSxDQUFDO0lBRWpEOzs7Ozs7OztPQVFHO0lBQ0ksT0FBTyxDQUFDLEtBQVksRUFBRSxLQUFhO1FBQ3RDLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUNiLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ25DLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2pEO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0lBQUEsQ0FBQztJQUVGOzs7O09BSUc7SUFDSSxpQkFBaUIsQ0FBQyxLQUFVO1FBQ3pCLEtBQU0sQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQzVDLElBQUksYUFBYSxHQUE0QyxLQUFNLENBQUMsa0JBQW1CLENBQUM7UUFDeEYsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUss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aEIsQ0FBQzs7NkdBNUtRLGdCQUFnQjtpSEFBaEIsZ0JBQWdCLGNBREgsTUFBTTsyRkFDbkIsZ0JBQWdCO2tCQUQ1QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEFuZ3VsYXJcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vLyBMaWJyZXJpZVxyXG5pbXBvcnQgeyBIYXNoaW5nU2VydmljZSB9IGZyb20gXCJAZXNmYWVuemEvZXh0ZW5zaW9uc1wiO1xyXG5cclxuLy8gQ29tcG9uZW50aVxyXG5pbXBvcnQgeyBFc1RkIH0gZnJvbSBcIi4uLy4uLy4uL2NvbXBvbmVudHMvZXMtdGQvZXNfdGQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEVzVGggfSBmcm9tIFwiLi4vLi4vLi4vY29tcG9uZW50cy9lcy10aC9lc190aC5jb21wb25lbnRcIjtcclxuXHJcbi8qKiBDbGFzc2UgZGkgdXRpbGl0w6AgcGVyIGxlIGNvc2UgY29tdW5pICovXHJcbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXHJcbmV4cG9ydCBjbGFzcyBVdGlsaXRpZXNIYW5kbGVyIHtcclxuXHJcbiAgICAvKiogQGlnbm9yZSBDb3N0cnV0dG9yZSAqL1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBoYXNoRXh0czogSGFzaGluZ1NlcnZpY2UpIHsgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGF0YSB1bmEgbGlzdGEgZGkgb2dnZXR0aSBlZmZldHR1YSBkZWkgcmFnZ3J1cHBhbWVudGkgaW4gYmFzZSBhbGxhIHByb3ByaWV0w6AgKipmaWVsZCoqLCBcclxuICAgICAqIHJlc3RpdHVlbmRvIHVuIG9nZ2V0dG8gZGVsIHRpcG8geyBHcnVwcG8xOiBvZ2dldHRpW10sIEdydXBwbzI6IG9nZ2V0dGlbXSwgZWNjLi4uIH1cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0ge2FueVtdfSBhcnJheSBMaXN0YSBkZWdsaSBvZ2dldHRpIGRhIHJhZ2dydXBwYXJlXHJcbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gZmllbGQgQ2FtcG8gc3UgY3VpIGVmZmV0dHVhcmUgaSByYWdncnVwcGFtZW50aVxyXG4gICAgICpcclxuICAgICAqIEByZXR1cm5zIHt7IFtpZDogc3RyaW5nXTogYW55W10gfX0gRGl6aW9uYXJpbyBkZWkgZ3J1cHBpXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBncm91cEJ5KGFycmF5OiBhbnlbXSwgZmllbGQ6IHN0cmluZyk6IHsgW2lkOiBzdHJpbmddOiBhbnlbXTsgfSB7XHJcbiAgICAgICAgbGV0IHJldCA9IHt9O1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXJyYXkubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICAgICAgbGV0IHggPSBhcnJheVtpXTtcclxuICAgICAgICAgICAgKHJldFt4W2ZpZWxkXV0gPSByZXRbeFtmaWVsZF1dIHx8IFtdKS5wdXNoKHgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcmV0O1xyXG4gICAgfTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEhlbHBlciBwZXIgZWZmZXR0dWFyZSBpbCBjYWNoaW5nIGRlbGxlIGFnZ3JlZ2F6aW9uaS4gTGUgc3Bvc3RhIGRhIHVuYSBsaXN0YSBkaSAqKkdyb3VwQWdncmVnYXRpb24qKiBhIHVuYSAqKjxNYXA8c3RyaW5nLCBNYXA8c3RyaW5nLCBzdHJpbmc+PioqXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHthbnl9IGdyb3VwIEdydXBwbyBkaSBjdWkgY2FjaGFyZSBsZSBhZ2dyZWdhemlvbmlcclxuICAgICAqL1xyXG4gICAgcHVibGljIGNhY2hlQWdncmVnYXRpb25zKGdyb3VwOiBhbnkpIHtcclxuICAgICAgICAoPGFueT5ncm91cCkuX2FnZ3JlZ2F0aW9uc0NhY2hlID0gbmV3IE1hcCgpO1xyXG4gICAgICAgIGxldCBjYXN0ZWRBZ0NhY2hlID0gKDxNYXA8c3RyaW5nLCBNYXA8c3RyaW5nLCBzdHJpbmc+Pj4oPGFueT5ncm91cCkuX2FnZ3JlZ2F0aW9uc0NhY2hlKTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdyb3VwLmFnZ3JlZ2F0aW9ucy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICBsZXQgYWdnID0gZ3JvdXAuYWdncmVnYXRpb25zW2ldO1xyXG4gICAgICAgICAgICBpZiAoY2FzdGVkQWdDYWNoZS5oYXMoYWdnLmNvbHVtbikpXHJcbiAgICAgICAgICAgICAgICBjYXN0ZWRBZ0NhY2hlLmdldChhZ2cuY29sdW1uKS5zZXQoYWdnLmFnZ3JlZ2F0aW9uLCBhZ2cudmFsdWUpO1xyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGxldCB0bXA6IE1hcDxzdHJpbmcsIHN0cmluZz4gPSBuZXcgTWFwKCk7XHJcbiAgICAgICAgICAgICAgICB0bXAuc2V0KGFnZy5hZ2dyZWdhdGlvbiwgYWdnLnZhbHVlKTtcclxuICAgICAgICAgICAgICAgIGNhc3RlZEFnQ2FjaGUuc2V0KGFnZy5jb2x1bW4sIHRtcCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqIEhlbHBlciBwZXIgc3Bvc3RhcmUgdW4gb2dnZXR0byBkaSB1biBhcnJheSBkYSB1biBpbmRpY2UgYWxsJ2FsdHJvLCBpbiBwbGFjZSAqL1xyXG4gICAgcHVibGljIGFycmF5TW92ZShhcnJheTogYW55W10sIG9sZEk6IG51bWJlciwgbmV3STogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKG5ld0kgPiBhcnJheS5sZW5ndGggLSAxIHx8IG9sZEkgPiBhcnJheS5sZW5ndGggLSAxIHx8IG5ld0kgPCAwIHx8IG9sZEkgPCAwKVxyXG4gICAgICAgICAgICB0aHJvdyBcIkdsaSBpbmRpY2kgcGFzc2F0aSBub24gZmFubm8gcmlmZXJpbWVudG8gYSB1bmEgcG9zaXppb25lIGRlbGwnYXJyYXkuIExlbmd0aDogXCIgKyBhcnJheS5sZW5ndGggKyBcIiBPbGQ6XCIgKyBvbGRJICsgXCIgTmV3OiBcIiArIG5ld0k7XHJcblxyXG4gICAgICAgIGFycmF5LnNwbGljZShuZXdJLCAwLCBhcnJheS5zcGxpY2Uob2xkSSwgMSlbMF0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogSGVscGVyIGNoZSBpZGVudGlmaWNhIHNlIGlsIHRkIGF0dHVhbGUgw6ggZGkgdGlwbyAqKkVzVGQqKi4gSW4gY2FzbyBjb250cmFyaW8gw6ggZGEgY29uc2lkZXJhcnNpICoqRXNUZERpcmVjdGl2ZSoqXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHthbnl9IHRkIENlbGxhIGRhIHZhbHV0YXJlXHJcbiAgICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gUmVzdGl0dWlzY2UgKip0cnVlKiogc2UgaWwgKip0ZCoqIMOoIGRpIHRpcG8gKipFc1RkKiosICoqZmFsc2UqKiBzZSDDqCBkaSB0aXBvICoqRXNUZERpcmVjdGl2ZSoqXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBpc0VzVGQodGQ6IGFueSk6IHRkIGlzIEVzVGQgeyByZXR1cm4gIXRkLl9kaXJlY3RpdmU7IH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEhlbHBlciBjaGUgaWRlbnRpZmljYSBzZSBpbCB0aCBhdHR1YWxlIMOoIGRpIHRpcG8gKipFc1RoKiouIEluIGNhc28gY29udHJhcmlvIMOoIGRhIGNvbnNpZGVyYXJzaSAqKkVzVGhEaXJlY3RpdmUqKlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB7YW55fSB0ZCBIZWFkZXIgZGEgdmFsdXRhcmVcclxuICAgICAqIEByZXR1cm5zIHtib29sZWFufSBSZXN0aXR1aXNjZSAqKnRydWUqKiBzZSBpbCAqKnRoKiogw6ggZGkgdGlwbyAqKkVzVGgqKiwgKipmYWxzZSoqIHNlIMOoIGRpIHRpcG8gKipFc1RoRGlyZWN0aXZlKipcclxuICAgICAqL1xyXG4gICAgcHVibGljIGlzRXNUaCh0aDogYW55KTogdGggaXMgRXNUaCB7IHJldHVybiAhdGguX2RpcmVjdGl2ZTsgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGF0ZSBsZSBpbmZvcm1hemlvbmkgZGkgcGFnaW5hemlvbmUgb3R0aWVuZSBsJ2FycmF5IGRlaSBwdWxzYW50aVxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB7bnVtYmVyfSBtYXhCdG5zIE51bWVybyBtYXNzaW1vIGRpIHB1bHNhbnRpIGRhIHZpc3VhbGl6emFyZVxyXG4gICAgICogQHBhcmFtIHtudW1iZXJ9IHBhZ2UgUGFnaW5hIGNvcnJlbnRlXHJcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gbGFzdFBhZ2UgVWx0aW1hIHBhZ2luYSBkaXNwb25pYmlsZVxyXG4gICAgICpcclxuICAgICAqIEByZXR1cm5zIHthbnlbXX0gUHNldWRvLWFycmF5IGRpIHB1bHNhbnRpIGEgY3VpIGNpIHNpIHB1w7IgYmluZGFyZSBsYXRvIEhUTUxcclxuICAgICAqL1xyXG4gICAgcHVibGljIGdldFBhZ2VzQXJyYXkobWF4QnRuczogbnVtYmVyLCBwYWdlOiBudW1iZXIsIGxhc3RQYWdlOiBudW1iZXIsIGFjdHVhbENvdW50OiBudW1iZXIgPSBudWxsLCBpcHA6IG51bWJlciA9IG51bGwpOiBhbnlbXSB7XHJcbiAgICAgICAgbGV0IHJlc3VsdCA9IFtdO1xyXG5cclxuICAgICAgICAvLyBTZSBzb25vIGluIG1vZGFsaXTDoCBcIk51bWVybyBkaSBwYWdpbmUgZWQgb2dnZXR0aSBzY29ub3NjaXV0aVwiIGZhY2NpbyBpbiBtb2RvIGRpIG1vc3RyYXJlIGxhIHBhZ2luYSBzdWNjZXNzaXZhIHNvbG8gc2UgZ2xpIGl0ZW1zIGVmZmV0dGl2YW1lbnRlIHBlcnZlbnV0aVxyXG4gICAgICAgIC8vIHNvbm8gdWd1YWxpIGFsbGEgcGFnaW5hemlvbmUgYXR0dWFsZSAoY2lvw6ggcXVlc3RhIHBhZ2luYSDDqCBkaSBzaWN1cm8gcmllbXBpdGEgY29tcGxldGFtZW50ZSlcclxuICAgICAgICBpZiAobGFzdFBhZ2UgPT0gLTEgJiYgKChhY3R1YWxDb3VudCA9PSBudWxsICYmIGlwcCA9PSBudWxsKSB8fCAoYWN0dWFsQ291bnQgPT0gaXBwKSkpXHJcbiAgICAgICAgICAgIGxhc3RQYWdlID0gcGFnZSArIDE7XHJcblxyXG4gICAgICAgIC8vIFNlIHNvbm8gaW4gbW9kYWxpdMOgIFwiTnVtZXJvIGRpIHBhZ2luZSBlZCBvZ2dldHRpIHNjb25vc2NpdXRpXCIgZSBtaSBhcnJpdmFubyAwIG9nZ2V0dGkgc2lnbmlmaWNhIGNoZSBsJ3VsdGltYSBwYWdpbmEgw6ggbGEgcHJlY2VkZW50ZSBlIG5vbiBtb3N0cm8gcGFnaW5lIG9sdHJlXHJcbiAgICAgICAgaWYgKGxhc3RQYWdlID09IC0xICYmIGFjdHVhbENvdW50ID09IDApXHJcbiAgICAgICAgICAgIGxhc3RQYWdlID0gcGFnZTtcclxuXHJcbiAgICAgICAgbGV0IG1pbiwgbWF4O1xyXG4gICAgICAgIGlmIChsYXN0UGFnZSA8PSBtYXhCdG5zKSB7XHJcbiAgICAgICAgICAgIG1pbiA9IDE7XHJcbiAgICAgICAgICAgIG1heCA9IGxhc3RQYWdlIC0gMTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAvLyB0b2xnbyBsYSBwYWdpbmEgc2VsZWN0ZWQgw6ggbCd1bHRpbWEgcGFnaW5hIGNoZSDDqCBxdWVsbGEgZGVsbGUgcGFnaW5lIHRvdGFsaVxyXG4gICAgICAgICAgICBsZXQgcmFuZ2VPdXRzaWRlID0gKG1heEJ0bnMgLSAyKSAvIDI7XHJcblxyXG4gICAgICAgICAgICBtaW4gPSBwYWdlIC0gcmFuZ2VPdXRzaWRlO1xyXG4gICAgICAgICAgICBtYXggPSBwYWdlICsgcmFuZ2VPdXRzaWRlO1xyXG5cclxuICAgICAgICAgICAgaWYgKG1pbiA8IDEpIHtcclxuICAgICAgICAgICAgICAgIG1pbiA9IDE7XHJcbiAgICAgICAgICAgICAgICBtYXggPSBtYXhCdG5zIC0gMTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChtYXggPj0gbGFzdFBhZ2UpIHtcclxuICAgICAgICAgICAgICAgIG1pbiA9IGxhc3RQYWdlIC0gbWF4QnRucyArIDE7XHJcbiAgICAgICAgICAgICAgICBtYXggPSBsYXN0UGFnZSAtIDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJlc3VsdC5wdXNoKHsgdmFsOiAxLCBjc3NDbGFzczogKDEgPT09IHBhZ2UgPyAnYnRuLW1haW4gYXBwLXdoaXRlLXRleHQnIDogJ2FwcC13aGl0ZS1idXR0b24nKSB9KTtcclxuXHJcbiAgICAgICAgaWYgKG1heCA+PSBtaW4pIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IG1pbjsgaSA8PSBtYXg7IGkrKylcclxuICAgICAgICAgICAgICAgIGlmIChpICE9PSAxKVxyXG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5wdXNoKHsgdmFsOiBpLCBjc3NDbGFzczogKGkgPT09IHBhZ2UgPyAnYnRuLW1haW4gYXBwLXdoaXRlLXRleHQnIDogJ2FwcC13aGl0ZS1idXR0b24nKSB9KTtcclxuXHJcbiAgICAgICAgICAgIHJlc3VsdC5wdXNoKHtcclxuICAgICAgICAgICAgICAgIHZhbDogbGFzdFBhZ2UsXHJcbiAgICAgICAgICAgICAgICBjc3NDbGFzczogKGxhc3RQYWdlID09PSBwYWdlID8gJ2J0bi1tYWluIGFwcC13aGl0ZS10ZXh0JyA6ICdhcHAtd2hpdGUtYnV0dG9uJylcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDYWxjb2xhIGwnaGFzaCBkaSB1biBvZ2dldHRvIHF1YWxzaWFzaVxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSB7YW55W119IGl0ZW1zIE9nZ2V0dGkgcGVyIGN1aSBjYWxjb2xhcmUgbCdoYXNoXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBjYWxjdWxhdGVIYXNoKGl0ZW1zOiBhbnlbXSkge1xyXG4gICAgICAgIGlmICghaXRlbXMpXHJcbiAgICAgICAgICAgIHJldHVybjtcclxuXHJcbiAgICAgICAgLy8gU3VwcG9ydG8gYSBoYXNoIGR1cGxpY2F0aSBkaSBvZ2dldHRpIHVndWFsaVxyXG4gICAgICAgIGxldCB1c2VkSGFzaGVzQ2FjaGU6IHsgW2luZGV4OiBzdHJpbmddOiBudW1iZXI7IH0gPSB7fTtcclxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIGxldCBpdGVtID0gaXRlbXNbaV07XHJcblxyXG4gICAgICAgICAgICAvLyBQcmltYSBkaSBjYWxjb2xhcmUgbCdoYXNoIHJpbXVvdm8gbGUgcHJvcHJpZXTDoCBpbnRlcm5lIHBlciBldml0YXJlIGNoZSBtaSBzY29tcGVuc2lubyBpIGNhbGNvbGkgc3VjY2Vzc2l2aVxyXG4gICAgICAgICAgICBsZXQgdG1wID0gT2JqZWN0LmFzc2lnbih7fSwgaXRlbXNbaV0pO1xyXG4gICAgICAgICAgICBkZWxldGUgdG1wLl9zZWxlY3RlZDtcclxuICAgICAgICAgICAgZGVsZXRlIHRtcC5fdmlzaWJsZTtcclxuICAgICAgICAgICAgZGVsZXRlIHRtcC5faGFzaDtcclxuICAgICAgICAgICAgbGV0IGhhc2ggPSB0aGlzLmhhc2hFeHRzLmhhc2hPYmplY3QodG1wKTtcclxuXHJcbiAgICAgICAgICAgIHVzZWRIYXNoZXNDYWNoZVtoYXNoXSA9IHVzZWRIYXNoZXNDYWNoZVtoYXNoXSA/IHVzZWRIYXNoZXNDYWNoZVtoYXNoXSArIDEgOiAxO1xyXG4gICAgICAgICAgICBpdGVtLl9oYXNoID0gaGFzaCArICh1c2VkSGFzaGVzQ2FjaGVbaGFzaF0gPiAxID8gXCJfXCIgKyB1c2VkSGFzaGVzQ2FjaGVbaGFzaF0gOiBcIlwiKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAqIFNlIGwnSW5wdXQgw6ggbnVsbCAodmFsb3JlIG5vbiBzZXR0YXRvKSB2ZWRlIHNlIGMnw6ggdW4gZGVmYXVsdCBjb24gY3VpIHZhbG9yaXp6YXJsby4gU2Ugbm9uIGMnw6ggdXRpbGl6emEgaWwgdmFsb3JlIGRpIGZhbGxiYWNrIChxdWFsb3JhIGZvcm5pdG8pXHJcbiAgICAqIFxyXG4gICAgKiBAcGFyYW0ge1R9IGlucHV0VmFsdWUgVmFsb3JlIGRlbGwnSW5wdXRcclxuICAgICogQHBhcmFtIHtUfSBkZWZhdWx0VmFsdWUgVmFsb3JlIGRpIGRlZmF1bHQgaW1wb3N0YXRvIGRhIGNvbmZpZ3VyYXppb25lXHJcbiAgICAqIEBwYXJhbSB7VH0gZmFsbGJhY2tWYWx1ZSBWYWxvcmUgZGVsbCdJbnB1dCBwZXIgcXVhbmRvIG5vbiDDqCBzdGF0byBhc3NlZ25hdG8gZGFsIHByb2dyYW1tYXRvcmUgZSBub24gaGEgdW4gZGVmYXVsdFxyXG4gICAgKi9cclxuICAgIHB1YmxpYyBJbnB1dE9yRGVmYXVsdDxUPihpbnB1dFZhbHVlOiBULCBkZWZhdWx0VmFsdWU6IFQsIGZhbGxiYWNrVmFsdWU/OiBUKSB7XHJcblxyXG4gICAgICAgIC8vIElucHV0IHZhbG9yaXp6YXRvIGRhbCBwcm9ncmFtbWF0b3JlXHJcbiAgICAgICAgaWYgKGlucHV0VmFsdWUgIT0gbnVsbCAmJiBpbnB1dFZhbHVlICE9IHVuZGVmaW5lZClcclxuICAgICAgICAgICAgcmV0dXJuIGlucHV0VmFsdWU7XHJcblxyXG4gICAgICAgIC8vIElucHV0IHZhbG9yaXp6YXRvIGRhIGNvbmZpZ3VyYXppb25lIGdsb2JhbGVcclxuICAgICAgICBpZiAoZGVmYXVsdFZhbHVlICE9IG51bGwgJiYgZGVmYXVsdFZhbHVlICE9IHVuZGVmaW5lZClcclxuICAgICAgICAgICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcclxuXHJcbiAgICAgICAgLy9JbnB1dCBub24gdmFsb3JpenphdG8gZGEgbmllbnRlIGUgZGEgbmVzc3Vub1xyXG4gICAgICAgIGlmIChmYWxsYmFja1ZhbHVlICE9IG51bGwgJiYgZmFsbGJhY2tWYWx1ZSAhPSB1bmRlZmluZWQpXHJcbiAgICAgICAgICAgIHJldHVybiBmYWxsYmFja1ZhbHVlO1xyXG5cclxuICAgICAgICAvLyBJIGNhc2kgaW4gY3VpIHNpIGFycml2YSBxdWkgc29ubyBpIGNhc2kgZGkgSW5wdXQgY2hlIGRpIGRlZmF1bHQgdmEgYmVuZSBjaGUgc2lhbm8gbnVsbGkgZSBjaGUgbmVzc3VubyBzaSBjYWdhXHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -0,0 +1,32 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ /** Direttiva per la dichiarazione snella di un EsTd da emettere per ogni elemento, data una colonna */
4
+ export class EsTdDirective {
5
+ /**
6
+ * @ignore
7
+ */
8
+ constructor(Template) {
9
+ this.Template = Template;
10
+ /** Variabile interna che indica il fatto che questo componente è una direttiva. Serve per disambigualrlo dell'EsTdComponent */
11
+ this._directive = true;
12
+ /** Indica se la cella è visibile o meno di default */
13
+ this.tdVisible = true;
14
+ /** Equivalente dell'NgIf sul td */
15
+ this.tdIf = true;
16
+ }
17
+ }
18
+ EsTdDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsTdDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
19
+ EsTdDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: EsTdDirective, selector: "[td]", inputs: { tdVisible: "tdVisible", td: "td", tdIf: "tdIf", tdClass: "tdClass" }, ngImport: i0 });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsTdDirective, decorators: [{
21
+ type: Directive,
22
+ args: [{ selector: '[td]' }]
23
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; }, propDecorators: { tdVisible: [{
24
+ type: Input
25
+ }], td: [{
26
+ type: Input
27
+ }], tdIf: [{
28
+ type: Input
29
+ }], tdClass: [{
30
+ type: Input
31
+ }] } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNfdGQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtdGFibGUvc3JjL2xpYi9kaXJlY3RpdmVzL2VzX3RkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQzs7QUFFOUQsdUdBQXVHO0FBRXZHLE1BQU0sT0FBTyxhQUFhO0lBaUJ0Qjs7T0FFRztJQUNILFlBQW1CLFFBQTBCO1FBQTFCLGFBQVEsR0FBUixRQUFRLENBQWtCO1FBbEI3QywrSEFBK0g7UUFDeEgsZUFBVSxHQUFHLElBQUksQ0FBQztRQUV6QixzREFBc0Q7UUFDN0MsY0FBUyxHQUFHLElBQUksQ0FBQztRQUsxQixtQ0FBbUM7UUFDMUIsU0FBSSxHQUFZLElBQUksQ0FBQztJQVFtQixDQUFDOzswR0FwQnpDLGFBQWE7OEZBQWIsYUFBYTsyRkFBYixhQUFhO2tCQUR6QixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRTtrR0FPbEIsU0FBUztzQkFBakIsS0FBSztnQkFHRyxFQUFFO3NCQUFWLEtBQUs7Z0JBR0csSUFBSTtzQkFBWixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG4vKiogRGlyZXR0aXZhIHBlciBsYSBkaWNoaWFyYXppb25lIHNuZWxsYSBkaSB1biBFc1RkIGRhIGVtZXR0ZXJlIHBlciBvZ25pIGVsZW1lbnRvLCBkYXRhIHVuYSBjb2xvbm5hICovXHJcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1t0ZF0nIH0pXHJcbmV4cG9ydCBjbGFzcyBFc1RkRGlyZWN0aXZlIHtcclxuXHJcbiAgICAvKiogVmFyaWFiaWxlIGludGVybmEgY2hlIGluZGljYSBpbCBmYXR0byBjaGUgcXVlc3RvIGNvbXBvbmVudGUgw6ggdW5hIGRpcmV0dGl2YS4gU2VydmUgcGVyIGRpc2FtYmlndWFscmxvIGRlbGwnRXNUZENvbXBvbmVudCAqL1xyXG4gICAgcHVibGljIF9kaXJlY3RpdmUgPSB0cnVlO1xyXG5cclxuICAgIC8qKiBJbmRpY2Egc2UgbGEgY2VsbGEgw6ggdmlzaWJpbGUgbyBtZW5vIGRpIGRlZmF1bHQgKi9cclxuICAgIEBJbnB1dCgpIHRkVmlzaWJsZSA9IHRydWU7XHJcblxyXG4gICAgLyoqIElkIGRlbGxhIGNvbG9ubmEsIGZhIHJpZmVyaW1lbnRvIGFsICoqdGgqKiBwYWRyZSAqL1xyXG4gICAgQElucHV0KCkgdGQ6IHN0cmluZztcclxuXHJcbiAgICAvKiogRXF1aXZhbGVudGUgZGVsbCdOZ0lmIHN1bCB0ZCAqL1xyXG4gICAgQElucHV0KCkgdGRJZjogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gICAgLyoqIEV2ZW50dWFsaSBjbGFzc2kgZGEgYXBwbGljYXJlIGFsICoqdGQqKiBnZW5lcmF0byAqL1xyXG4gICAgQElucHV0KCkgdGRDbGFzczogc3RyaW5nO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQGlnbm9yZVxyXG4gICAgICovXHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHsgfVxyXG59Il19
@@ -0,0 +1,84 @@
1
+ import { Directive, Input } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ /** Direttiva per la dichiarazione snella di un EsTh da emettere come header */
4
+ export class EsThDirective {
5
+ /**
6
+ * @ignore
7
+ */
8
+ constructor(Template) {
9
+ this.Template = Template;
10
+ /** Variabile interna all'interno della quale viene raccolta la cache delle aggregazioni specificate in thAggregation */
11
+ this._thAggregations = null;
12
+ /** Variabile interna contenente in maniera ordinata i template dei padri */
13
+ this._thParents = null;
14
+ /** Variabile interna che indica il fatto che questo componente è una direttiva. Serve per disambigualrlo dell'EsThComponent */
15
+ this._directive = true;
16
+ /** Variabile interna impostata dall'**EsTable**, per controllare che ci sia almeno un TD che utilizzi quest'header */
17
+ this._referenced = false;
18
+ /** Id della colonna, dev'essere lo stesso per tutti i **td** relativi */
19
+ this.th = "";
20
+ /** Indica se la colonna è pinnata o no */
21
+ this.thPinned = false;
22
+ /** Indica le dimensioni che deve avere questa colonna quando viene pinnata, senza questo tutte le colonne mi collasserebbero l'una sull'altra */
23
+ this.thPinnedWidth = 150;
24
+ /** Indicazione sulla visibilità della colonna */
25
+ this.thVisible = true;
26
+ /** Indica se la colonna è fixed, cioè se non può né essere nascosta, né riposizionata. Solo le prime colonne possono essere Fixed */
27
+ this.thFixed = false;
28
+ /** Indica che la colonna è sotto ad un raggruppamento padre, con questo nome nel **th** */
29
+ this.thParent = "";
30
+ /** Indica se questa colonna è ordinabile o meno */
31
+ this.thOrderable = true;
32
+ /** Indica se il testo presente in questo Header può andare a capo o meno, di default non può */
33
+ this.thWrap = false;
34
+ /** Indica se le dimnsioni di questa colonna sono modificabili o meno */
35
+ this.thResizable = false;
36
+ /** Equivalente dell'NgIf sul th */
37
+ this.thIf = true;
38
+ /** Campo particolare che indica che questo header è vuoto. Viene utilizzato solo a livello grafico per ignorare o meno l'emit del template */
39
+ this.thEmpty = false;
40
+ /** Indica che bisogna fare un raggruppamento su questa colonna */
41
+ this.thGroup = false;
42
+ /** Indica che bisogna fare una aggregazione su questa colonna, a fronte di almeno un altra con un raggruppamento */
43
+ this.thAggregation = null;
44
+ }
45
+ }
46
+ EsThDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsThDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
47
+ EsThDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.1.1", type: EsThDirective, selector: "[th]", inputs: { th: "th", thPinned: "thPinned", thPinnedWidth: "thPinnedWidth", thVisible: "thVisible", thFixed: "thFixed", thParent: "thParent", thOrder: "thOrder", thOrderable: "thOrderable", thWrap: "thWrap", thResizable: "thResizable", thClass: "thClass", thGroupClass: "thGroupClass", thIf: "thIf", thEmpty: "thEmpty", thGroup: "thGroup", thAggregation: "thAggregation" }, ngImport: i0 });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsThDirective, decorators: [{
49
+ type: Directive,
50
+ args: [{ selector: '[th]' }]
51
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; }, propDecorators: { th: [{
52
+ type: Input
53
+ }], thPinned: [{
54
+ type: Input
55
+ }], thPinnedWidth: [{
56
+ type: Input
57
+ }], thVisible: [{
58
+ type: Input
59
+ }], thFixed: [{
60
+ type: Input
61
+ }], thParent: [{
62
+ type: Input
63
+ }], thOrder: [{
64
+ type: Input
65
+ }], thOrderable: [{
66
+ type: Input
67
+ }], thWrap: [{
68
+ type: Input
69
+ }], thResizable: [{
70
+ type: Input
71
+ }], thClass: [{
72
+ type: Input
73
+ }], thGroupClass: [{
74
+ type: Input
75
+ }], thIf: [{
76
+ type: Input
77
+ }], thEmpty: [{
78
+ type: Input
79
+ }], thGroup: [{
80
+ type: Input
81
+ }], thAggregation: [{
82
+ type: Input
83
+ }] } });
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXNfdGguZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtdGFibGUvc3JjL2xpYi9kaXJlY3RpdmVzL2VzX3RoLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBZSxNQUFNLGVBQWUsQ0FBQzs7QUFJOUQsK0VBQStFO0FBRS9FLE1BQU0sT0FBTyxhQUFhO0lBOER0Qjs7T0FFRztJQUNILFlBQW1CLFFBQTBCO1FBQTFCLGFBQVEsR0FBUixRQUFRLENBQWtCO1FBL0Q3Qyx3SEFBd0g7UUFDakgsb0JBQWUsR0FBb0IsSUFBSSxDQUFDO1FBRS9DLDRFQUE0RTtRQUNyRSxlQUFVLEdBQXVCLElBQUksQ0FBQztRQUU3QywrSEFBK0g7UUFDeEgsZUFBVSxHQUFHLElBQUksQ0FBQztRQUV6QixzSEFBc0g7UUFDL0csZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFFcEMseUVBQXlFO1FBQ2hFLE9BQUUsR0FBVyxFQUFFLENBQUM7UUFFekIsMENBQTBDO1FBQ2pDLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFbkMsaUpBQWlKO1FBQ3hJLGtCQUFhLEdBQVcsR0FBRyxDQUFDO1FBRXJDLGlEQUFpRDtRQUN4QyxjQUFTLEdBQVksSUFBSSxDQUFDO1FBRW5DLHFJQUFxSTtRQUM1SCxZQUFPLEdBQVksS0FBSyxDQUFDO1FBRWxDLDJGQUEyRjtRQUNsRixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBSy9CLG1EQUFtRDtRQUMxQyxnQkFBVyxHQUFZLElBQUksQ0FBQztRQUVyQyxnR0FBZ0c7UUFDdkYsV0FBTSxHQUFZLEtBQUssQ0FBQztRQUVqQyx3RUFBd0U7UUFDL0QsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFRdEMsbUNBQW1DO1FBQzFCLFNBQUksR0FBWSxJQUFJLENBQUM7UUFFOUIsOElBQThJO1FBQ3JJLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFFbEMsa0VBQWtFO1FBQ3pELFlBQU8sR0FBYSxLQUFLLENBQUM7UUFFbkMsb0hBQW9IO1FBQzNHLGtCQUFhLEdBQVksSUFBSSxDQUFDO0lBS1UsQ0FBQzs7MEdBakV6QyxhQUFhOzhGQUFiLGFBQWE7MkZBQWIsYUFBYTtrQkFEekIsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUU7a0dBZ0JsQixFQUFFO3NCQUFWLEtBQUs7Z0JBR0csUUFBUTtzQkFBaEIsS0FBSztnQkFHRyxhQUFhO3NCQUFyQixLQUFLO2dCQUdHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBR0csT0FBTztzQkFBZixLQUFLO2dCQUdHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBR0csT0FBTztzQkFBZixLQUFLO2dCQUdHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR0csTUFBTTtzQkFBZCxLQUFLO2dCQUdHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR0csT0FBTztzQkFBZixLQUFLO2dCQUdHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR0csSUFBSTtzQkFBWixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSztnQkFHRyxPQUFPO3NCQUFmLEtBQUs7Z0JBR0csYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7IFRoQWdncmVnYXRpb24gfSBmcm9tIFwiLi4vZG9tYWluXCI7XHJcblxyXG4vKiogRGlyZXR0aXZhIHBlciBsYSBkaWNoaWFyYXppb25lIHNuZWxsYSBkaSB1biBFc1RoIGRhIGVtZXR0ZXJlIGNvbWUgaGVhZGVyICovXHJcbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ1t0aF0nIH0pXHJcbmV4cG9ydCBjbGFzcyBFc1RoRGlyZWN0aXZlIHtcclxuXHJcbiAgICAvKiogVmFyaWFiaWxlIGludGVybmEgYWxsJ2ludGVybm8gZGVsbGEgcXVhbGUgdmllbmUgcmFjY29sdGEgbGEgY2FjaGUgZGVsbGUgYWdncmVnYXppb25pIHNwZWNpZmljYXRlIGluIHRoQWdncmVnYXRpb24gKi9cclxuICAgIHB1YmxpYyBfdGhBZ2dyZWdhdGlvbnM6IFRoQWdncmVnYXRpb25bXSA9IG51bGw7XHJcblxyXG4gICAgLyoqIFZhcmlhYmlsZSBpbnRlcm5hIGNvbnRlbmVudGUgaW4gbWFuaWVyYSBvcmRpbmF0YSBpIHRlbXBsYXRlIGRlaSBwYWRyaSAqL1xyXG4gICAgcHVibGljIF90aFBhcmVudHM6IFRlbXBsYXRlUmVmPGFueT5bXSA9IG51bGw7XHJcblxyXG4gICAgLyoqIFZhcmlhYmlsZSBpbnRlcm5hIGNoZSBpbmRpY2EgaWwgZmF0dG8gY2hlIHF1ZXN0byBjb21wb25lbnRlIMOoIHVuYSBkaXJldHRpdmEuIFNlcnZlIHBlciBkaXNhbWJpZ3VhbHJsbyBkZWxsJ0VzVGhDb21wb25lbnQgKi9cclxuICAgIHB1YmxpYyBfZGlyZWN0aXZlID0gdHJ1ZTtcclxuXHJcbiAgICAvKiogVmFyaWFiaWxlIGludGVybmEgaW1wb3N0YXRhIGRhbGwnKipFc1RhYmxlKiosIHBlciBjb250cm9sbGFyZSBjaGUgY2kgc2lhIGFsbWVubyB1biBURCBjaGUgdXRpbGl6emkgcXVlc3QnaGVhZGVyICovXHJcbiAgICBwdWJsaWMgX3JlZmVyZW5jZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAvKiogSWQgZGVsbGEgY29sb25uYSwgZGV2J2Vzc2VyZSBsbyBzdGVzc28gcGVyIHR1dHRpIGkgKip0ZCoqIHJlbGF0aXZpICovXHJcbiAgICBASW5wdXQoKSB0aDogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgICAvKiogSW5kaWNhIHNlIGxhIGNvbG9ubmEgw6ggcGlubmF0YSBvIG5vICovXHJcbiAgICBASW5wdXQoKSB0aFBpbm5lZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIC8qKiBJbmRpY2EgbGUgZGltZW5zaW9uaSBjaGUgZGV2ZSBhdmVyZSBxdWVzdGEgY29sb25uYSBxdWFuZG8gdmllbmUgcGlubmF0YSwgc2VuemEgcXVlc3RvIHR1dHRlIGxlIGNvbG9ubmUgbWkgY29sbGFzc2VyZWJiZXJvIGwndW5hIHN1bGwnYWx0cmEgKi9cclxuICAgIEBJbnB1dCgpIHRoUGlubmVkV2lkdGg6IG51bWJlciA9IDE1MDtcclxuXHJcbiAgICAvKiogSW5kaWNhemlvbmUgc3VsbGEgdmlzaWJpbGl0w6AgZGVsbGEgY29sb25uYSAqL1xyXG4gICAgQElucHV0KCkgdGhWaXNpYmxlOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgICAvKiogSW5kaWNhIHNlIGxhIGNvbG9ubmEgw6ggZml4ZWQsIGNpb8OoIHNlIG5vbiBwdcOyIG7DqSBlc3NlcmUgbmFzY29zdGEsIG7DqSByaXBvc2l6aW9uYXRhLiBTb2xvIGxlIHByaW1lIGNvbG9ubmUgcG9zc29ubyBlc3NlcmUgRml4ZWQgKi9cclxuICAgIEBJbnB1dCgpIHRoRml4ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAvKiogSW5kaWNhIGNoZSBsYSBjb2xvbm5hIMOoIHNvdHRvIGFkIHVuIHJhZ2dydXBwYW1lbnRvIHBhZHJlLCBjb24gcXVlc3RvIG5vbWUgbmVsICoqdGgqKiAqL1xyXG4gICAgQElucHV0KCkgdGhQYXJlbnQ6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gICAgLyoqIE9yZGluYW1lbnRvIGF0dHVhbGUgZGVsbGEgY29sb25uYSAqL1xyXG4gICAgQElucHV0KCkgdGhPcmRlcj86ICdERVNDJyB8ICdBU0MnO1xyXG5cclxuICAgIC8qKiBJbmRpY2Egc2UgcXVlc3RhIGNvbG9ubmEgw6ggb3JkaW5hYmlsZSBvIG1lbm8gKi9cclxuICAgIEBJbnB1dCgpIHRoT3JkZXJhYmxlOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgICAvKiogSW5kaWNhIHNlIGlsIHRlc3RvIHByZXNlbnRlIGluIHF1ZXN0byBIZWFkZXIgcHXDsiBhbmRhcmUgYSBjYXBvIG8gbWVubywgZGkgZGVmYXVsdCBub24gcHXDsiAqL1xyXG4gICAgQElucHV0KCkgdGhXcmFwOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgLyoqIEluZGljYSBzZSBsZSBkaW1uc2lvbmkgZGkgcXVlc3RhIGNvbG9ubmEgc29ubyBtb2RpZmljYWJpbGkgbyBtZW5vICovXHJcbiAgICBASW5wdXQoKSB0aFJlc2l6YWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIC8qKiBDbGFzc2kgZGEgYXBwbGljYXJlIGFsbCdIZWFkZXIgZGVsbGEgY29sb25uYSAqL1xyXG4gICAgQElucHV0KCkgdGhDbGFzczogc3RyaW5nO1xyXG5cclxuICAgIC8qKiBDbGFzc2kgZGEgYXBwbGljYXJlIGFsbGUgcmlnaGUgcXVhbmRvIHJhcHByZXNlbnRhbm8gdW4gR3J1cHBvICovXHJcbiAgICBASW5wdXQoKSB0aEdyb3VwQ2xhc3M6IHN0cmluZztcclxuXHJcbiAgICAvKiogRXF1aXZhbGVudGUgZGVsbCdOZ0lmIHN1bCB0aCAqL1xyXG4gICAgQElucHV0KCkgdGhJZjogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gICAgLyoqIENhbXBvIHBhcnRpY29sYXJlIGNoZSBpbmRpY2EgY2hlIHF1ZXN0byBoZWFkZXIgw6ggdnVvdG8uIFZpZW5lIHV0aWxpenphdG8gc29sbyBhIGxpdmVsbG8gZ3JhZmljbyBwZXIgaWdub3JhcmUgbyBtZW5vIGwnZW1pdCBkZWwgdGVtcGxhdGUgKi9cclxuICAgIEBJbnB1dCgpIHRoRW1wdHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAvKiogSW5kaWNhIGNoZSBiaXNvZ25hIGZhcmUgdW4gcmFnZ3J1cHBhbWVudG8gc3UgcXVlc3RhIGNvbG9ubmEgKi9cclxuICAgIEBJbnB1dCgpIHRoR3JvdXAgOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgLyoqIEluZGljYSBjaGUgYmlzb2duYSBmYXJlIHVuYSBhZ2dyZWdhemlvbmUgc3UgcXVlc3RhIGNvbG9ubmEsIGEgZnJvbnRlIGRpIGFsbWVubyB1biBhbHRyYSBjb24gdW4gcmFnZ3J1cHBhbWVudG8gKi9cclxuICAgIEBJbnB1dCgpIHRoQWdncmVnYXRpb24gOiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICAgIC8qKiBcclxuICAgICAqIEBpZ25vcmVcclxuICAgICAqL1xyXG4gICAgY29uc3RydWN0b3IocHVibGljIFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7IH1cclxufSJdfQ==
@@ -0,0 +1,79 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { RouterModule } from '@angular/router';
5
+ import { MatSelectModule } from "@angular/material/select";
6
+ import { MatInputModule } from "@angular/material/input";
7
+ import { DragDropModule } from '@angular/cdk/drag-drop';
8
+ import { UtilityService, ExportService, HashingService, MessageService } from '@esfaenza/extensions';
9
+ import { LocalizationModule } from '@esfaenza/localizations';
10
+ import { EST_LOCALE, EST_DEBUG } from './tokens';
11
+ import { TablePagerComponent } from './components/pager/table_pager.component';
12
+ import { EsTableComponent } from './components/es-table/es_table.component';
13
+ import { EsTh } from './components/es-th/es_th.component';
14
+ import { EsTd } from './components/es-td/es_td.component';
15
+ import { EsTdDirective } from './directives/es_td.directive';
16
+ import { EsThDirective } from './directives/es_th.directive';
17
+ import { ModalModule } from "ngx-bootstrap/modal";
18
+ import { BsDropdownModule } from "ngx-bootstrap/dropdown";
19
+ import { CsvModule } from "@ctrl/ngx-csv";
20
+ import { ContextMenuModule } from "@esfaenza/ngx-contextmenu";
21
+ import * as i0 from "@angular/core";
22
+ export class EsTableModule {
23
+ static forRoot(config) {
24
+ return {
25
+ ngModule: EsTableModule,
26
+ providers: [
27
+ { provide: EST_LOCALE, useValue: config?.locale || 'it-IT' },
28
+ { provide: EST_DEBUG, useValue: config?.debugMode || false }
29
+ ]
30
+ };
31
+ }
32
+ }
33
+ EsTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
34
+ EsTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsTableModule, declarations: [EsTh, EsTd, EsTableComponent, EsTdDirective, EsThDirective, TablePagerComponent], imports: [CommonModule,
35
+ FormsModule,
36
+ RouterModule,
37
+ LocalizationModule,
38
+ ModalModule,
39
+ BsDropdownModule,
40
+ CsvModule,
41
+ ContextMenuModule,
42
+ MatSelectModule,
43
+ MatInputModule,
44
+ DragDropModule], exports: [EsTh, EsTd, EsTableComponent, EsTdDirective, EsThDirective, TablePagerComponent] });
45
+ EsTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsTableModule, providers: [UtilityService, ExportService, HashingService, MessageService], imports: [[
46
+ CommonModule,
47
+ FormsModule,
48
+ RouterModule,
49
+ LocalizationModule,
50
+ ModalModule,
51
+ BsDropdownModule,
52
+ CsvModule,
53
+ ContextMenuModule,
54
+ MatSelectModule,
55
+ MatInputModule,
56
+ DragDropModule
57
+ ]] });
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: EsTableModule, decorators: [{
59
+ type: NgModule,
60
+ args: [{
61
+ imports: [
62
+ CommonModule,
63
+ FormsModule,
64
+ RouterModule,
65
+ LocalizationModule,
66
+ ModalModule,
67
+ BsDropdownModule,
68
+ CsvModule,
69
+ ContextMenuModule,
70
+ MatSelectModule,
71
+ MatInputModule,
72
+ DragDropModule
73
+ ],
74
+ declarations: [EsTh, EsTd, EsTableComponent, EsTdDirective, EsThDirective, TablePagerComponent],
75
+ providers: [UtilityService, ExportService, HashingService, MessageService],
76
+ exports: [EsTh, EsTd, EsTableComponent, EsTdDirective, EsThDirective, TablePagerComponent]
77
+ }]
78
+ }] });
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtdGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtdGFibGUvc3JjL2xpYi9lcy10YWJsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTdELE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBR2pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMxRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUU3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFvQjlELE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBNEI7UUFDekMsT0FBTztZQUNMLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRTtnQkFDVCxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLElBQUksT0FBTyxFQUFFO2dCQUM1RCxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxTQUFTLElBQUksS0FBSyxFQUFFO2FBQzdEO1NBQ0YsQ0FBQztJQUNKLENBQUM7OzBHQVRVLGFBQWE7MkdBQWIsYUFBYSxpQkFKVCxJQUFJLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLGFBWjVGLFlBQVk7UUFDWixXQUFXO1FBQ1gsWUFBWTtRQUNaLGtCQUFrQjtRQUNsQixXQUFXO1FBQ1gsZ0JBQWdCO1FBQ2hCLFNBQVM7UUFDVCxpQkFBaUI7UUFDakIsZUFBZTtRQUNmLGNBQWM7UUFDZCxjQUFjLGFBSU4sSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLG1CQUFtQjsyR0FFOUUsYUFBYSxhQUhiLENBQUMsY0FBYyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDLFlBZGpFO1lBQ1AsWUFBWTtZQUNaLFdBQVc7WUFDWCxZQUFZO1lBQ1osa0JBQWtCO1lBQ2xCLFdBQVc7WUFDWCxnQkFBZ0I7WUFDaEIsU0FBUztZQUNULGlCQUFpQjtZQUNqQixlQUFlO1lBQ2YsY0FBYztZQUNkLGNBQWM7U0FDZjsyRkFLVSxhQUFhO2tCQWxCekIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osa0JBQWtCO3dCQUNsQixXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsU0FBUzt3QkFDVCxpQkFBaUI7d0JBQ2pCLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxjQUFjO3FCQUNmO29CQUNELFlBQVksRUFBRSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsYUFBYSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsQ0FBQztvQkFDL0YsU0FBUyxFQUFFLENBQUMsY0FBYyxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDO29CQUMxRSxPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLENBQUM7aUJBQzNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvc2VsZWN0XCI7XHJcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2lucHV0XCI7XHJcbmltcG9ydCB7IERyYWdEcm9wTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcblxyXG5pbXBvcnQgeyBVdGlsaXR5U2VydmljZSwgRXhwb3J0U2VydmljZSwgSGFzaGluZ1NlcnZpY2UsIE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnQGVzZmFlbnphL2V4dGVuc2lvbnMnO1xyXG5pbXBvcnQgeyBMb2NhbGl6YXRpb25Nb2R1bGUgfSBmcm9tICdAZXNmYWVuemEvbG9jYWxpemF0aW9ucyc7XHJcblxyXG5pbXBvcnQgeyBFU1RfTE9DQUxFLCBFU1RfREVCVUcgfSBmcm9tICcuL3Rva2Vucyc7XHJcbmltcG9ydCB7IEVzVGFibGVNb2R1bGVDb25maWcgfSBmcm9tICcuL2RvbWFpbi9jb25maWd1cmF0aW9uL0VzVGFibGVNb2R1bGVDb25maWcnO1xyXG5cclxuaW1wb3J0IHsgVGFibGVQYWdlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wYWdlci90YWJsZV9wYWdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFc1RhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2VzLXRhYmxlL2VzX3RhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEVzVGggfSBmcm9tICcuL2NvbXBvbmVudHMvZXMtdGgvZXNfdGguY29tcG9uZW50JztcclxuaW1wb3J0IHsgRXNUZCB9IGZyb20gJy4vY29tcG9uZW50cy9lcy10ZC9lc190ZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFc1RkRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL2VzX3RkLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEVzVGhEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZXNfdGguZGlyZWN0aXZlJztcclxuXHJcbmltcG9ydCB7IE1vZGFsTW9kdWxlIH0gZnJvbSBcIm5neC1ib290c3RyYXAvbW9kYWxcIjtcclxuaW1wb3J0IHsgQnNEcm9wZG93bk1vZHVsZSB9IGZyb20gXCJuZ3gtYm9vdHN0cmFwL2Ryb3Bkb3duXCI7XHJcbmltcG9ydCB7IENzdk1vZHVsZSB9IGZyb20gXCJAY3RybC9uZ3gtY3N2XCI7XHJcbmltcG9ydCB7IENvbnRleHRNZW51TW9kdWxlIH0gZnJvbSBcIkBlc2ZhZW56YS9uZ3gtY29udGV4dG1lbnVcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSb3V0ZXJNb2R1bGUsXHJcbiAgICBMb2NhbGl6YXRpb25Nb2R1bGUsXHJcbiAgICBNb2RhbE1vZHVsZSxcclxuICAgIEJzRHJvcGRvd25Nb2R1bGUsXHJcbiAgICBDc3ZNb2R1bGUsXHJcbiAgICBDb250ZXh0TWVudU1vZHVsZSxcclxuICAgIE1hdFNlbGVjdE1vZHVsZSxcclxuICAgIE1hdElucHV0TW9kdWxlLFxyXG4gICAgRHJhZ0Ryb3BNb2R1bGVcclxuICBdLFxyXG4gIGRlY2xhcmF0aW9uczogW0VzVGgsIEVzVGQsIEVzVGFibGVDb21wb25lbnQsIEVzVGREaXJlY3RpdmUsIEVzVGhEaXJlY3RpdmUsIFRhYmxlUGFnZXJDb21wb25lbnRdLFxyXG4gIHByb3ZpZGVyczogW1V0aWxpdHlTZXJ2aWNlLCBFeHBvcnRTZXJ2aWNlLCBIYXNoaW5nU2VydmljZSwgTWVzc2FnZVNlcnZpY2VdLFxyXG4gIGV4cG9ydHM6IFtFc1RoLCBFc1RkLCBFc1RhYmxlQ29tcG9uZW50LCBFc1RkRGlyZWN0aXZlLCBFc1RoRGlyZWN0aXZlLCBUYWJsZVBhZ2VyQ29tcG9uZW50XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRXNUYWJsZU1vZHVsZSB7XHJcbiAgc3RhdGljIGZvclJvb3QoY29uZmlnPzogRXNUYWJsZU1vZHVsZUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8RXNUYWJsZU1vZHVsZT4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IEVzVGFibGVNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIHsgcHJvdmlkZTogRVNUX0xPQ0FMRSwgdXNlVmFsdWU6IGNvbmZpZz8ubG9jYWxlIHx8ICdpdC1JVCcgfSxcclxuICAgICAgICB7IHByb3ZpZGU6IEVTVF9ERUJVRywgdXNlVmFsdWU6IGNvbmZpZz8uZGVidWdNb2RlIHx8IGZhbHNlIH1cclxuICAgICAgXVxyXG4gICAgfTtcclxuICB9XHJcbn0iXX0=
@@ -0,0 +1,14 @@
1
+ /*
2
+ * Public API Surface of es-table
3
+ */
4
+ export * from './lib/components/pager/table_pager.component';
5
+ export * from './lib/components/es-table/es_table.component';
6
+ export * from './lib/components/es-th/es_th.component';
7
+ export * from './lib/components/es-td/es_td.component';
8
+ export * from './lib/directives/es_td.directive';
9
+ export * from './lib/directives/es_th.directive';
10
+ export * from './lib/domain/configuration/EsTableModuleConfig';
11
+ export * from './lib/domain/configuration/EsTableDefaultable';
12
+ export * from './lib/es-table.module';
13
+ export * from './lib/domain/externals';
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2VzLXRhYmxlL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBlcy10YWJsZVxyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvcGFnZXIvdGFibGVfcGFnZXIuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9lcy10YWJsZS9lc190YWJsZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2VzLXRoL2VzX3RoLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZXMtdGQvZXNfdGQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9lc190ZC5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2VzX3RoLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RvbWFpbi9jb25maWd1cmF0aW9uL0VzVGFibGVNb2R1bGVDb25maWcnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kb21haW4vY29uZmlndXJhdGlvbi9Fc1RhYmxlRGVmYXVsdGFibGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9lcy10YWJsZS5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kb21haW4vZXh0ZXJuYWxzJzsiXX0=