@sankhyalabs/sankhyablocks 8.15.0-dev.53 → 8.15.0-dev.54

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 (166) hide show
  1. package/dist/cjs/{ConfigStorage-8d4e9d53.js → ConfigStorage-085c7117.js} +11 -12
  2. package/dist/cjs/{SnkMultiSelectionListDataSource-d15f7aac.js → IExporterProvider-955812ad.js} +52 -5
  3. package/dist/cjs/RecordIDUtils-3735135c.js +43 -0
  4. package/dist/cjs/{SnkFormConfigManager-33995e92.js → SnkFormConfigManager-8986431f.js} +2 -2
  5. package/dist/cjs/{auth-fetcher-bb8e9ae4.js → auth-fetcher-eddaf17f.js} +1 -1
  6. package/dist/cjs/{DataFetcher-99f0f6ed.js → form-config-fetcher-cdd644a7.js} +251 -0
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/{pesquisa-fetcher-bdbbe9ac.js → pesquisa-fetcher-6e934fb5.js} +30 -16
  9. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  10. package/dist/cjs/snk-actions-button_4.cjs.entry.js +8 -9
  11. package/dist/cjs/snk-application.cjs.entry.js +22 -23
  12. package/dist/cjs/snk-attach.cjs.entry.js +12 -13
  13. package/dist/cjs/snk-crud.cjs.entry.js +4 -5
  14. package/dist/cjs/snk-data-exporter.cjs.entry.js +195 -78
  15. package/dist/cjs/{snk-data-unit-41c29713.js → snk-data-unit-abd2113f.js} +2 -37
  16. package/dist/cjs/snk-data-unit.cjs.entry.js +2 -1
  17. package/dist/cjs/snk-detail-view.cjs.entry.js +6 -7
  18. package/dist/cjs/snk-filter-bar.cjs.entry.js +2 -3
  19. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +2 -3
  20. package/dist/cjs/snk-form-config.cjs.entry.js +1 -2
  21. package/dist/cjs/snk-form.cjs.entry.js +3 -4
  22. package/dist/cjs/snk-grid.cjs.entry.js +65 -102
  23. package/dist/cjs/{snk-guides-viewer-a8dd24a3.js → snk-guides-viewer-4e8b517b.js} +4 -5
  24. package/dist/cjs/snk-guides-viewer.cjs.entry.js +6 -7
  25. package/dist/cjs/snk-personalized-filter.cjs.entry.js +2 -3
  26. package/dist/cjs/snk-simple-crud.cjs.entry.js +115 -32
  27. package/dist/cjs/snk-taskbar.cjs.entry.js +3 -2
  28. package/dist/cjs/{taskbar-elements-3ecd1278.js → taskbar-elements-d9392685.js} +2 -2
  29. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +90 -0
  30. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +68 -0
  31. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +48 -1
  32. package/dist/collection/components/snk-data-exporter/interfaces/IExporterStrategy.js +1 -0
  33. package/dist/collection/components/snk-data-exporter/providers/ClientSideExporterProvider.js +53 -0
  34. package/dist/collection/components/snk-data-exporter/providers/ServerSideExporterProvider.js +55 -0
  35. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +35 -45
  36. package/dist/collection/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.js +88 -0
  37. package/dist/collection/components/snk-data-exporter/utils/RecordIDUtils.js +38 -0
  38. package/dist/collection/components/snk-data-unit/snk-data-unit.js +3 -42
  39. package/dist/collection/components/snk-grid/snk-grid.js +3 -94
  40. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +81 -9
  41. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +2 -2
  42. package/dist/collection/components/snk-taskbar/snk-taskbar.js +2 -1
  43. package/dist/collection/lib/dataUnit/InMemoryLoader.js +1 -1
  44. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.js +3 -0
  45. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.js +4 -0
  46. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.js +8 -1
  47. package/dist/collection/lib/http/data-fetcher/fetchers/data-unit/dataunit-fetcher.js +1 -0
  48. package/dist/components/ConfigStorage.js +1 -2
  49. package/dist/components/{field-search.js → IExporterProvider.js} +52 -7
  50. package/dist/components/ISave.js +42 -0
  51. package/dist/components/dataunit-fetcher.js +18 -4
  52. package/dist/components/form-config-fetcher.js +7022 -3
  53. package/dist/components/index2.js +198 -33
  54. package/dist/components/snk-actions-button2.js +3 -12
  55. package/dist/components/snk-application2.js +1 -1
  56. package/dist/components/snk-attach2.js +3 -4
  57. package/dist/components/snk-crud.js +3 -4
  58. package/dist/components/snk-data-exporter2.js +192 -79
  59. package/dist/components/snk-data-unit2.js +41 -39
  60. package/dist/components/snk-detail-view2.js +4 -5
  61. package/dist/components/snk-expression-item2.js +1 -1
  62. package/dist/components/snk-form-config2.js +1 -1
  63. package/dist/components/snk-grid2.js +63 -100
  64. package/dist/components/snk-personalized-filter2.js +1 -1
  65. package/dist/components/snk-simple-crud2.js +101 -16
  66. package/dist/components/snk-taskbar2.js +6 -5
  67. package/dist/esm/{ConfigStorage-6e241cd7.js → ConfigStorage-cc3f3dd3.js} +1 -2
  68. package/dist/esm/{SnkMultiSelectionListDataSource-7084f3b3.js → IExporterProvider-6ebf47ab.js} +52 -6
  69. package/dist/esm/RecordIDUtils-87d02110.js +41 -0
  70. package/dist/esm/{SnkFormConfigManager-7a4e678f.js → SnkFormConfigManager-7edda7eb.js} +2 -2
  71. package/dist/esm/{auth-fetcher-8ec448b0.js → auth-fetcher-11dd9cae.js} +1 -1
  72. package/dist/esm/{DataFetcher-a650ae58.js → form-config-fetcher-13cd3285.js} +250 -1
  73. package/dist/esm/loader.js +1 -1
  74. package/dist/esm/{pesquisa-fetcher-96d2f351.js → pesquisa-fetcher-4eed47c6.js} +18 -4
  75. package/dist/esm/sankhyablocks.js +1 -1
  76. package/dist/esm/snk-actions-button_4.entry.js +3 -4
  77. package/dist/esm/snk-application.entry.js +4 -5
  78. package/dist/esm/snk-attach.entry.js +4 -5
  79. package/dist/esm/snk-crud.entry.js +4 -5
  80. package/dist/esm/snk-data-exporter.entry.js +195 -78
  81. package/dist/esm/{snk-data-unit-de1d140d.js → snk-data-unit-29eba11a.js} +3 -38
  82. package/dist/esm/snk-data-unit.entry.js +2 -1
  83. package/dist/esm/snk-detail-view.entry.js +6 -7
  84. package/dist/esm/snk-filter-bar.entry.js +2 -3
  85. package/dist/esm/snk-filter-modal-item.entry.js +2 -3
  86. package/dist/esm/snk-form-config.entry.js +1 -2
  87. package/dist/esm/snk-form.entry.js +3 -4
  88. package/dist/esm/snk-grid.entry.js +63 -100
  89. package/dist/esm/{snk-guides-viewer-131e9660.js → snk-guides-viewer-2742a9db.js} +4 -5
  90. package/dist/esm/snk-guides-viewer.entry.js +6 -7
  91. package/dist/esm/snk-personalized-filter.entry.js +2 -3
  92. package/dist/esm/snk-simple-crud.entry.js +102 -19
  93. package/dist/esm/snk-taskbar.entry.js +3 -2
  94. package/dist/esm/{taskbar-elements-2473c8ac.js → taskbar-elements-ad766858.js} +2 -2
  95. package/dist/sankhyablocks/p-07825198.js +1 -0
  96. package/dist/sankhyablocks/p-1d9d07b4.entry.js +1 -0
  97. package/dist/sankhyablocks/p-201e5588.entry.js +1 -0
  98. package/dist/sankhyablocks/p-33a6728e.js +26 -0
  99. package/dist/sankhyablocks/p-37afb96a.js +1 -0
  100. package/dist/sankhyablocks/p-411fe937.entry.js +1 -0
  101. package/dist/sankhyablocks/p-44d52fc6.js +1 -0
  102. package/dist/sankhyablocks/p-4ddf7add.entry.js +1 -0
  103. package/dist/sankhyablocks/p-7b797d8f.entry.js +1 -0
  104. package/dist/sankhyablocks/p-87cb937d.js +65 -0
  105. package/dist/sankhyablocks/{p-0624f62d.js → p-8a4c4b54.js} +6 -6
  106. package/dist/sankhyablocks/p-9863d682.js +1 -0
  107. package/dist/sankhyablocks/{p-125bb902.js → p-99b51d06.js} +1 -1
  108. package/dist/sankhyablocks/p-9ee96756.entry.js +1 -0
  109. package/dist/sankhyablocks/p-a4c94582.entry.js +1 -0
  110. package/dist/sankhyablocks/p-bf209f48.entry.js +1 -0
  111. package/dist/sankhyablocks/p-c2f3ebf3.entry.js +1 -0
  112. package/dist/sankhyablocks/p-c3c0ad0b.entry.js +1 -0
  113. package/dist/sankhyablocks/{p-619c5f6f.entry.js → p-c801a38a.entry.js} +2 -2
  114. package/dist/sankhyablocks/p-cfb98f51.entry.js +1 -0
  115. package/dist/sankhyablocks/{p-efeca7ba.js → p-d24c9dc6.js} +1 -1
  116. package/dist/sankhyablocks/p-e4225e8b.entry.js +1 -0
  117. package/dist/sankhyablocks/p-edd9dd1c.entry.js +1 -0
  118. package/dist/sankhyablocks/p-fa84e72f.entry.js +1 -0
  119. package/dist/sankhyablocks/p-fd44c905.entry.js +1 -0
  120. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  121. package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +13 -0
  122. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +11 -0
  123. package/dist/types/components/snk-data-exporter/interfaces/IExporterProvider.d.ts +21 -4
  124. package/dist/types/components/snk-data-exporter/interfaces/IExporterStrategy.d.ts +5 -0
  125. package/dist/types/components/snk-data-exporter/providers/ClientSideExporterProvider.d.ts +17 -0
  126. package/dist/types/components/snk-data-exporter/providers/ServerSideExporterProvider.d.ts +17 -0
  127. package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +3 -1
  128. package/dist/types/components/snk-data-exporter/test/resources/ClientSideExporterStrategyResources.d.ts +77 -0
  129. package/dist/types/components/snk-data-exporter/utils/RecordIDUtils.d.ts +3 -0
  130. package/dist/types/components/snk-grid/snk-grid.d.ts +0 -3
  131. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +14 -2
  132. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +1 -1
  133. package/dist/types/components.d.ts +16 -0
  134. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/DataUnitDataLoader.d.ts +2 -1
  135. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/ArrayRepository.d.ts +1 -0
  136. package/dist/types/lib/http/data-fetcher/fetchers/data-unit/cache/PreloadManager.d.ts +1 -0
  137. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IExporterColumnMetadata.d.ts +1 -0
  138. package/package.json +1 -1
  139. package/dist/cjs/form-config-fetcher-d73f4449.js +0 -256
  140. package/dist/collection/lib/http/data-fetcher/fetchers/fetchDataExporter/index.js +0 -34
  141. package/dist/components/DataFetcher.js +0 -7023
  142. package/dist/components/index3.js +0 -199
  143. package/dist/esm/form-config-fetcher-765b8498.js +0 -253
  144. package/dist/sankhyablocks/p-004c356e.js +0 -26
  145. package/dist/sankhyablocks/p-075bba4c.entry.js +0 -1
  146. package/dist/sankhyablocks/p-07a61550.entry.js +0 -1
  147. package/dist/sankhyablocks/p-103c5956.entry.js +0 -1
  148. package/dist/sankhyablocks/p-1048bd26.entry.js +0 -1
  149. package/dist/sankhyablocks/p-13ae1a89.entry.js +0 -1
  150. package/dist/sankhyablocks/p-24ed6ad6.entry.js +0 -1
  151. package/dist/sankhyablocks/p-34a7f2ab.js +0 -65
  152. package/dist/sankhyablocks/p-52c8e589.js +0 -1
  153. package/dist/sankhyablocks/p-5833cff9.js +0 -1
  154. package/dist/sankhyablocks/p-5a2e016a.entry.js +0 -1
  155. package/dist/sankhyablocks/p-6f560924.entry.js +0 -1
  156. package/dist/sankhyablocks/p-8967fa78.js +0 -1
  157. package/dist/sankhyablocks/p-9b1beac5.entry.js +0 -1
  158. package/dist/sankhyablocks/p-a87149e4.entry.js +0 -1
  159. package/dist/sankhyablocks/p-ac77949b.entry.js +0 -1
  160. package/dist/sankhyablocks/p-b10b9934.entry.js +0 -1
  161. package/dist/sankhyablocks/p-be75153c.js +0 -1
  162. package/dist/sankhyablocks/p-bf39bdb8.entry.js +0 -1
  163. package/dist/sankhyablocks/p-f7d0fab9.entry.js +0 -1
  164. package/dist/sankhyablocks/p-f7d9d148.entry.js +0 -1
  165. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/index.d.ts +0 -3
  166. /package/dist/sankhyablocks/{p-ae4fc9a9.js → p-61dd89eb.js} +0 -0
@@ -1,7 +1,8 @@
1
1
  import { Host, h } from '@stencil/core';
2
- import { Action, ApplicationContext, DataUnitAction, ObjectUtils, DataType, JSUtils } from '@sankhyalabs/core';
2
+ import { Action, ApplicationContext, DataUnitAction, ObjectUtils } from '@sankhyalabs/core';
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
4
  import { OperationMap, SnkMessageBuilder } from '../../lib/message/SnkMessageBuilder';
5
+ import { getSelectedIDs } from '../snk-data-exporter/utils/RecordIDUtils';
5
6
  export class SnkDataUnit {
6
7
  constructor() {
7
8
  this._onDataUnitResolve = [];
@@ -117,43 +118,7 @@ export class SnkDataUnit {
117
118
  * @returns Retorna a lista de IDs dos registros selecionados.
118
119
  */
119
120
  async getSelectedRecordsIDsInfo() {
120
- var _a;
121
- const selectionInfo = (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.getSelectionInfo();
122
- if (selectionInfo === null || selectionInfo === void 0 ? void 0 : selectionInfo.isAllRecords()) {
123
- return [];
124
- }
125
- const selectedRecordsIDsInfo = [];
126
- const selectedRecords = selectionInfo === null || selectionInfo === void 0 ? void 0 : selectionInfo.records;
127
- if ((selectedRecords === null || selectedRecords === void 0 ? void 0 : selectedRecords.length) > 0) {
128
- selectedRecords.forEach(({ __record__id__ }) => {
129
- if (!this.dataUnit.isNewRecord(__record__id__)) {
130
- /*
131
- Esse if foi necessário para tratar corretamente o ID
132
- do record quando está sendo utilizado no modo standAlone
133
- isso não faz a exportação da grid funcionar no modo standAlone
134
- mas deixa de causar erro nas oprações de CRUD.
135
- */
136
- if (!JSUtils.isBase64(__record__id__)) {
137
- selectedRecordsIDsInfo.push({
138
- name: "__record__id__",
139
- type: DataType.TEXT,
140
- value: __record__id__
141
- });
142
- return;
143
- }
144
- const revertBase64ToObject = JSON.parse(window.atob(__record__id__));
145
- Object.entries(revertBase64ToObject).forEach(([name, value]) => {
146
- var _a;
147
- const metadataField = (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.getField(name);
148
- if (metadataField == undefined) {
149
- return;
150
- }
151
- selectedRecordsIDsInfo.push(Object.assign({ name, type: metadataField.dataType }, value));
152
- });
153
- }
154
- });
155
- }
156
- return selectedRecordsIDsInfo;
121
+ return Promise.resolve(getSelectedIDs(this.dataUnit));
157
122
  }
158
123
  getCleanOnCopyFields() {
159
124
  var _a;
@@ -774,10 +739,6 @@ export class SnkDataUnit {
774
739
  },
775
740
  "Array": {
776
741
  "location": "global"
777
- },
778
- "Record": {
779
- "location": "import",
780
- "path": "@sankhyalabs/core"
781
742
  }
782
743
  },
783
744
  "return": "Promise<IRecordID[]>"
@@ -1,6 +1,5 @@
1
1
  import { h, Fragment } from '@stencil/core';
2
- import { ApplicationContext, DataType, ElementIDUtils, StringUtils } from '@sankhyalabs/core';
3
- import { UserInterface } from '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
2
+ import { ApplicationContext, ElementIDUtils, StringUtils } from '@sankhyalabs/core';
4
3
  import { TaskbarElement } from '../snk-taskbar/elements/taskbar-elements';
5
4
  import { ConfigStorage } from '../../lib/configs/ConfigStorage';
6
5
  import { PresentationMode } from '../../lib/@types';
@@ -10,6 +9,7 @@ import SnkMultiSelectionListDataSource from './filtercolumn/SnkMultiSelectionLis
10
9
  import { SelectionMode } from '@sankhyalabs/core/dist/dataunit/DataUnit';
11
10
  import { buildFieldSearch, openFieldSearch } from '../snk-taskbar/subcomponents/field-search';
12
11
  import { CrudUtils } from '../../lib';
12
+ import ServerSideExporterProvider from '../snk-data-exporter/providers/ServerSideExporterProvider';
13
13
  export class SnkGrid {
14
14
  constructor() {
15
15
  this._topTaskbarProcessor = new TaskbarProcessor({
@@ -155,99 +155,8 @@ export class SnkGrid {
155
155
  });
156
156
  evt.stopPropagation();
157
157
  }
158
- buildColumnsMetadata(gridColumns) {
159
- const columnsMetadata = [];
160
- gridColumns === null || gridColumns === void 0 ? void 0 : gridColumns.forEach((column) => {
161
- var _a, _b;
162
- /**
163
- * TODO: Analisar e criar uma melhor forma de tratar essa validação do "RECDESP".
164
- */
165
- if (column.hidden && column.name !== "RECDESP") {
166
- return;
167
- }
168
- const fieldData = (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.getField(column.name);
169
- const columnData = {
170
- label: column.label,
171
- id: column.name,
172
- width: column.width,
173
- type: fieldData === null || fieldData === void 0 ? void 0 : fieldData.dataType,
174
- userInterface: fieldData === null || fieldData === void 0 ? void 0 : fieldData.userInterface
175
- };
176
- columnsMetadata.push(columnData);
177
- if (((_b = fieldData === null || fieldData === void 0 ? void 0 : fieldData.properties) === null || _b === void 0 ? void 0 : _b.DESCRIPTIONFIELD) != undefined) {
178
- const mergedFrom = fieldData.properties.mergedFrom;
179
- const descriptionField = `${fieldData.properties.ENTITYNAME}.${fieldData.properties.DESCRIPTIONFIELD}`;
180
- const descriptionColumn = {
181
- label: fieldData.properties.DESCRIPTIONENTITY,
182
- id: `${mergedFrom ? (mergedFrom + ".") : ""}${descriptionField}`,
183
- width: 200,
184
- type: DataType.TEXT,
185
- userInterface: UserInterface.LONGTEXT
186
- };
187
- columnsMetadata.push(descriptionColumn);
188
- }
189
- });
190
- return columnsMetadata || [];
191
- }
192
- getPaginationInfo() {
193
- var _a;
194
- return (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.getPaginationInfo();
195
- }
196
- getExporterOffset(paginationInfo) {
197
- if (paginationInfo == undefined) {
198
- return;
199
- }
200
- const offset = paginationInfo.firstRecord;
201
- if (offset > 0) {
202
- return (offset - 1);
203
- }
204
- return offset;
205
- }
206
158
  async dataExporterProviderStore() {
207
- var _a;
208
- const selectedIDs = await ((_a = this._snkDataUnit) === null || _a === void 0 ? void 0 : _a.getSelectedRecordsIDsInfo());
209
- const dataExporterProvider = {
210
- getFilters: () => {
211
- var _a;
212
- return (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.getAppliedFilters();
213
- },
214
- getColumnsMetadata: async () => {
215
- var _a;
216
- const columnsState = await ((_a = this._grid) === null || _a === void 0 ? void 0 : _a.getColumnsState());
217
- return this.buildColumnsMetadata(columnsState);
218
- },
219
- getOrders: () => {
220
- var _a;
221
- return (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.getSort();
222
- },
223
- getResourceURI: () => {
224
- var _a;
225
- return (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.name;
226
- },
227
- getSelectedNumber: () => {
228
- var _a, _b;
229
- return (_b = (_a = this._dataState) === null || _a === void 0 ? void 0 : _a.selectionInfo) === null || _b === void 0 ? void 0 : _b.length;
230
- },
231
- getTotalRecords: () => {
232
- var _a, _b, _c;
233
- const { total } = ((_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.getPaginationInfo()) || {};
234
- return total !== null && total !== void 0 ? total : (_c = (_b = this._dataUnit) === null || _b === void 0 ? void 0 : _b.records) === null || _c === void 0 ? void 0 : _c.length;
235
- },
236
- getSelectedIDs: () => {
237
- return selectedIDs || [];
238
- },
239
- getOffset: () => {
240
- return this.getExporterOffset(this.getPaginationInfo());
241
- },
242
- getLimit: () => {
243
- var _a;
244
- return (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.pageSize;
245
- },
246
- getRecordID: () => {
247
- var _a, _b, _c;
248
- return (_c = (_b = (_a = this._dataUnit) === null || _a === void 0 ? void 0 : _a.records) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.__record__id__;
249
- }
250
- };
159
+ const dataExporterProvider = new ServerSideExporterProvider(this._dataUnit, this._grid);
251
160
  store.set("exporterProviders", Object.assign(Object.assign({}, store.get("exporterProviders")), { [this.configName]: dataExporterProvider }));
252
161
  }
253
162
  addElementID() {
@@ -11,16 +11,18 @@ import { buildFieldSearch, openFieldSearch } from '../snk-taskbar/subcomponents/
11
11
  import { ConfigStorage } from '../../lib/configs/ConfigStorage';
12
12
  import { SnkFormConfigManager } from '../snk-form-config/SnkFormConfigManager';
13
13
  import { REGULAR_DEFAULT_BTNS, REGULAR_SELECTED_BTNS } from './regular-buttons';
14
+ import ClientSideExporterProvider from '../snk-data-exporter/providers/ClientSideExporterProvider';
15
+ import store from "../../lib/store";
14
16
  export class SnkSimpleCrud {
15
17
  constructor() {
16
18
  this._multiSelectionListDataSource = new SnkMultiSelectionListDataSource();
17
19
  this._keyDownHandler = (event) => this.keyDownListener(event);
18
20
  this._formConfigFetcher = new FormConfigFetcher();
19
21
  this._taskbarProcessor = new TaskbarProcessor({
20
- "snkSimpleCrudTaskbar.form_regular": this.getButtons(false, TaskbarElement.GRID_MODE),
21
- "snkSimpleCrudTaskbar.grid_regular": this.getButtons(false, TaskbarElement.FORM_MODE),
22
- "snkSimpleCrudTaskbar.form_selected": this.getButtons(true, TaskbarElement.GRID_MODE),
23
- "snkSimpleCrudTaskbar.grid_selected": this.getButtons(true, TaskbarElement.FORM_MODE),
22
+ "snkSimpleCrudTaskbar.form_regular": this.getButtons(false, [TaskbarElement.GRID_MODE]),
23
+ "snkSimpleCrudTaskbar.grid_regular": this.getButtons(false, [TaskbarElement.DATA_EXPORTER, TaskbarElement.FORM_MODE]),
24
+ "snkSimpleCrudTaskbar.form_selected": this.getButtons(true, [TaskbarElement.GRID_MODE]),
25
+ "snkSimpleCrudTaskbar.grid_selected": this.getButtons(true, [TaskbarElement.DATA_EXPORTER, TaskbarElement.FORM_MODE]),
24
26
  "snkSimpleCrudTaskbar.finish_edition": ["CANCEL", "SAVE"]
25
27
  });
26
28
  this._showPopUpGridConfig = false;
@@ -31,12 +33,14 @@ export class SnkSimpleCrud {
31
33
  this._customContainerId = `SNK-SIMPLE-CRUD-CUSTOM-CONTAINER-${StringUtils.generateUUID()}`;
32
34
  this.dataState = undefined;
33
35
  this.dataUnit = undefined;
36
+ this.entityName = undefined;
34
37
  this.mode = SIMPLE_CRUD_MODE.SERVER;
35
38
  this.gridConfig = undefined;
36
39
  this.formConfig = undefined;
37
40
  this._formFields = [];
38
41
  this.multipleSelection = undefined;
39
42
  this.useCancelConfirm = true;
43
+ this.pageSize = 150;
40
44
  this.resourceID = undefined;
41
45
  this.taskbarManager = undefined;
42
46
  this.messagesBuilder = undefined;
@@ -58,9 +62,9 @@ export class SnkSimpleCrud {
58
62
  this.loadFormConfig(true);
59
63
  this.loadGridConfig(true);
60
64
  }
61
- getButtons(selected, changeModeBtn) {
65
+ getButtons(selected, extraButtons) {
62
66
  return this.addConfigButton(this.resolveInMemoryBtns(selected ? REGULAR_SELECTED_BTNS : REGULAR_DEFAULT_BTNS)
63
- .concat(changeModeBtn));
67
+ .concat(extraButtons));
64
68
  }
65
69
  addConfigButton(buttons) {
66
70
  if (this.configName === undefined) {
@@ -100,6 +104,12 @@ export class SnkSimpleCrud {
100
104
  }
101
105
  evt.stopPropagation();
102
106
  }
107
+ async onChangeEntityName(newValue) {
108
+ if (this.dataUnit)
109
+ return;
110
+ const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
111
+ this.dataUnit = await application.getDataUnit(newValue, null, null, this.configName);
112
+ }
103
113
  onModeChange() {
104
114
  if (this.mode == SIMPLE_CRUD_MODE.IN_MEMORY) {
105
115
  this.initInMemoryDataUnit();
@@ -212,6 +222,7 @@ export class SnkSimpleCrud {
212
222
  }
213
223
  async componentWillRender() {
214
224
  this._resourceID = await this.application.getResourceID();
225
+ this.dataExporterProviderStore();
215
226
  this._taskbarProcessor.process(this.getTaskBarId(), this.taskbarManager, this.dataState, this.getTaskBarDisabledButtons());
216
227
  if (this.configName === undefined) {
217
228
  return;
@@ -236,13 +247,13 @@ export class SnkSimpleCrud {
236
247
  this._multiSelectionListDataSource.setDataUnit(this.dataUnit);
237
248
  }
238
249
  getTaskBarId() {
239
- var _a, _b, _c;
250
+ var _a, _b;
240
251
  if ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) {
241
252
  return "snkSimpleCrudTaskbar.finish_edition";
242
253
  }
243
254
  if (((_b = this.dataState) === null || _b === void 0 ? void 0 : _b.selectionInfo) &&
244
255
  !this.dataState.selectionInfo.isAllRecords() &&
245
- ((_c = this.dataState.selectionInfo.records) === null || _c === void 0 ? void 0 : _c.length) > 0) {
256
+ this.dataState.selectionInfo.length > 0) {
246
257
  return this._currentViewMode === VIEW_MODE.GRID ? "snkSimpleCrudTaskbar.grid_selected" : "snkSimpleCrudTaskbar.form_selected";
247
258
  }
248
259
  return this._currentViewMode === VIEW_MODE.GRID ? "snkSimpleCrudTaskbar.grid_regular" : "snkSimpleCrudTaskbar.form_regular";
@@ -482,9 +493,23 @@ export class SnkSimpleCrud {
482
493
  .then(() => {
483
494
  this.setGridConfig(config);
484
495
  this.closeGridConfig();
496
+ this.dataExporterProviderStore();
485
497
  });
486
498
  evt.stopPropagation();
487
499
  }
500
+ async dataExporterProviderStore() {
501
+ if (this.dataUnit == undefined) {
502
+ return;
503
+ }
504
+ if (this._grid == undefined) {
505
+ return;
506
+ }
507
+ const dataExporterProvider = new ClientSideExporterProvider(this.dataUnit, this._grid);
508
+ store.set("exporterProviders", Object.assign(Object.assign({}, store.get("exporterProviders")), { [this.getDataExporterStoreKey()]: dataExporterProvider }));
509
+ }
510
+ getDataExporterStoreKey() {
511
+ return `SnkSimpleCrudDataExporter:${this.configName == undefined ? this.dataUnit.name : this.configName}`;
512
+ }
488
513
  setGridConfig(config) {
489
514
  this.gridConfig = config;
490
515
  CrudUtils.assertDefaultSorting(this.gridConfig, this.dataUnit);
@@ -500,6 +525,15 @@ export class SnkSimpleCrud {
500
525
  closeFormConfig() {
501
526
  this._showFormConfig = false;
502
527
  }
528
+ getPageSize() {
529
+ if (this.mode === SIMPLE_CRUD_MODE.IN_MEMORY) {
530
+ return 0;
531
+ }
532
+ if (this.pageSize == undefined) {
533
+ return 150;
534
+ }
535
+ return this.pageSize;
536
+ }
503
537
  //No momento não daremos suporte para configuração de formulário quando houver formLegacyConfigName
504
538
  handleShowFormConfig() {
505
539
  return this._showFormConfig && !this.formLegacyConfigName;
@@ -521,7 +555,7 @@ export class SnkSimpleCrud {
521
555
  if (this.dataUnit == undefined) {
522
556
  return;
523
557
  }
524
- return (h("snk-data-unit", { class: "simple-crud__container", dataUnit: this.dataUnit, useCancelConfirm: this.useCancelConfirm, onDataStateChange: evt => this.onDataStateChange(evt), onCancelEdition: this.handleCancelEdit.bind(this), onInsertionMode: () => this.goToView(VIEW_MODE.FORM), onDataUnitReady: (evt) => this.dataUnitReady.emit(evt.detail), ignoreSaveMessage: this._currentViewMode === VIEW_MODE.GRID, onMessagesBuilderUpdated: evt => this.messagesBuilder = evt.detail }, h("header", null, h("slot", { name: "snkSimpleCrudHeader" })), h("section", { class: "ez-box ez-box--shadow simple-crud__container-section" }, h("snk-taskbar", { class: "ez-box ez-box--shadow ez-padding--medium", dataUnit: this.dataUnit, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-element-id": "grid_left", messagesBuilder: this.messagesBuilder, buttons: this._taskbarProcessor.buttons, actionsList: this.getActionsList(), disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, slot: "leftButtons", presentationMode: PresentationMode.SECONDARY }, h("slot", { name: "TASKBAR_CUSTOM_ELEMENTS" })), h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "simple-crud" }, h("stack-item", null, h("ez-grid", { class: "ez-margin-bottom--large", ref: ref => this._grid = ref, dataUnit: this.dataUnit, config: this.gridConfig, "no-header": true, multipleSelection: this.multipleSelection, onEzDoubleClick: () => this.goToView(VIEW_MODE.FORM), onConfigChange: evt => this.gridConfigChangeHandler(evt), columnfilterDataSource: this.dataUnit.name && this.dataUnit.name.includes(InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME)
558
+ return (h("snk-data-unit", { class: "simple-crud__container", dataUnit: this.dataUnit, useCancelConfirm: this.useCancelConfirm, onDataStateChange: evt => this.onDataStateChange(evt), onCancelEdition: this.handleCancelEdit.bind(this), pageSize: this.getPageSize(), onInsertionMode: () => this.goToView(VIEW_MODE.FORM), onDataUnitReady: (evt) => this.dataUnitReady.emit(evt.detail), ignoreSaveMessage: this._currentViewMode === VIEW_MODE.GRID, onMessagesBuilderUpdated: evt => this.messagesBuilder = evt.detail }, h("header", null, h("slot", { name: "snkSimpleCrudHeader" })), h("section", { class: "ez-box ez-box--shadow simple-crud__container-section" }, h("snk-taskbar", { class: "ez-box ez-box--shadow ez-padding--medium", dataUnit: this.dataUnit, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-element-id": "grid_left", messagesBuilder: this.messagesBuilder, buttons: this._taskbarProcessor.buttons, actionsList: this.getActionsList(), disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, "data-exporter-store-key": this.getDataExporterStoreKey(), slot: "leftButtons", presentationMode: PresentationMode.SECONDARY }, h("slot", { name: "TASKBAR_CUSTOM_ELEMENTS" })), h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "simple-crud" }, h("stack-item", null, h("ez-grid", { class: "ez-margin-bottom--large", ref: ref => this._grid = ref, dataUnit: this.dataUnit, config: this.gridConfig, "no-header": true, multipleSelection: this.multipleSelection, onEzDoubleClick: () => this.goToView(VIEW_MODE.FORM), onConfigChange: evt => this.gridConfigChangeHandler(evt), columnfilterDataSource: this.dataUnit.name && this.dataUnit.name.includes(InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME)
525
559
  ? undefined
526
560
  : this._multiSelectionListDataSource, useEnterLikeTab: this.useEnterLikeTab }, h("div", { slot: "footer" }, h("slot", { name: "snkSimpleCrudFooter" })))), h("stack-item", null, h("ez-form", { class: `ez-margin-top--large ${this.handleShowFormConfig() ? "simple-crud__form--hidden" : ""}`, dataUnit: this.dataUnit, config: this.getFormConfig(), fieldToFocus: this._fieldToGetFocus, onEzFormSetFields: (evt) => this.handleFormSetFields(evt.detail), onEzFormRequestClearFieldToFocus: this.clearFieldToFocusHandler.bind(this) }), this.handleShowFormConfig() && h("snk-form-config", { messagesBuilder: this.messagesBuilder, dataUnit: this.dataUnit, configManager: this._formConfigManager, onConfigClose: () => this.closeFormConfig() })), this.messagesBuilder && h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.goToView(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showConfiguratorButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this.resolveResourceID(), customContainerId: this._customContainerId })), h("div", { id: `${this._customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }))), h("ez-modal", { modalSize: "small", closeEsc: false, closeOutsideClick: false, opened: this._showPopUpGridConfig, onEzCloseModal: () => this.closeGridConfig() }, h("snk-grid-config", { ref: ref => this._snkGridConfig = ref, config: this.gridConfig, "data-element-id": this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME), selectedIndex: 0, configName: this.configName, onConfigChange: (evt) => this.modalConfigChangeHandler(evt), onConfigCancel: () => this.closeGridConfig(), resourceID: this.resolveResourceID() }))));
527
561
  }
@@ -579,6 +613,23 @@ export class SnkSimpleCrud {
579
613
  "text": ""
580
614
  }
581
615
  },
616
+ "entityName": {
617
+ "type": "string",
618
+ "mutable": false,
619
+ "complexType": {
620
+ "original": "string",
621
+ "resolved": "string",
622
+ "references": {}
623
+ },
624
+ "required": false,
625
+ "optional": false,
626
+ "docs": {
627
+ "tags": [],
628
+ "text": "Define o nome da entidade que o componente vai utilizar para fazer as opera\u00E7\u00F5es de CRUD"
629
+ },
630
+ "attribute": "entity-name",
631
+ "reflect": false
632
+ },
582
633
  "mode": {
583
634
  "type": "number",
584
635
  "mutable": false,
@@ -677,6 +728,24 @@ export class SnkSimpleCrud {
677
728
  "reflect": false,
678
729
  "defaultValue": "true"
679
730
  },
731
+ "pageSize": {
732
+ "type": "number",
733
+ "mutable": false,
734
+ "complexType": {
735
+ "original": "number",
736
+ "resolved": "number",
737
+ "references": {}
738
+ },
739
+ "required": false,
740
+ "optional": false,
741
+ "docs": {
742
+ "tags": [],
743
+ "text": "Determina quantas linhas s\u00E3o retornadas por p\u00E1gina."
744
+ },
745
+ "attribute": "page-size",
746
+ "reflect": false,
747
+ "defaultValue": "150"
748
+ },
680
749
  "resourceID": {
681
750
  "type": "string",
682
751
  "mutable": false,
@@ -1136,6 +1205,9 @@ export class SnkSimpleCrud {
1136
1205
  return [{
1137
1206
  "propName": "resourceID",
1138
1207
  "methodName": "handleResourceIDChanged"
1208
+ }, {
1209
+ "propName": "entityName",
1210
+ "methodName": "onChangeEntityName"
1139
1211
  }, {
1140
1212
  "propName": "mode",
1141
1213
  "methodName": "onModeChange"
@@ -47,7 +47,7 @@ export const buildCustomButton = (def, className, dataElementId, action, isEnabl
47
47
  return textButton(def.name, className, dataElementId, text, hint, action, isEnabled);
48
48
  }
49
49
  };
50
- export const buildElem = (element, className, dataElementId, getTitle, action, isEnabled, actions, configName, presentationMode) => {
50
+ export const buildElem = (element, className, dataElementId, getTitle, action, isEnabled, actions, dataExporterStoreKey, presentationMode) => {
51
51
  var _a;
52
52
  const title = getTitle(element);
53
53
  switch (element) {
@@ -90,7 +90,7 @@ export const buildElem = (element, className, dataElementId, getTitle, action, i
90
90
  case TaskbarElement.DIVIDER:
91
91
  return h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin--none ez-margin-left--medium", "data-taskbar-divider": true });
92
92
  case TaskbarElement.DATA_EXPORTER:
93
- const provider = (_a = store.get("exporterProviders")) === null || _a === void 0 ? void 0 : _a[configName];
93
+ const provider = (_a = store.get("exporterProviders")) === null || _a === void 0 ? void 0 : _a[dataExporterStoreKey];
94
94
  return h("snk-data-exporter", { class: className, provider: provider, "data-element-id": dataElementId, "data-taskbar-element": element });
95
95
  case TaskbarElement.ATTACH:
96
96
  return iconButton("anexo", element, className, dataElementId, title, action, isEnabled);
@@ -156,8 +156,9 @@ export class SnkTaskbar {
156
156
  className += "ez-padding-left--medium";
157
157
  }
158
158
  const taskbarElement = TaskbarElement[def.toString()];
159
+ const dataExporterStoreKey = this._element.dataset.exporterStoreKey || this.configName;
159
160
  if (taskbarElement) {
160
- return buildElem(def, className, this.getIdElemBtnNative(def), elem => this.getTitle(elem), elem => this.elementClick(elem), elem => this.isEnabled(elem), this.buildDynamicActionsList(), this.configName, this.presentationMode);
161
+ return buildElem(def, className, this.getIdElemBtnNative(def), elem => this.getTitle(elem), elem => this.elementClick(elem), elem => this.isEnabled(elem), this.buildDynamicActionsList(), dataExporterStoreKey, this.presentationMode);
161
162
  }
162
163
  else {
163
164
  return buildCustomButton(def, className, this.getIdElemBtnCustom(def), elem => this.elementClick(elem), elem => this.isEnabled(elem));
@@ -61,7 +61,7 @@ export default class InMemoryLoader {
61
61
  this._initialRecords = newRecords;
62
62
  if (this._dataUnit) {
63
63
  //Isso força o refresh internamente no datunit
64
- this._dataUnit.gotoPage(0);
64
+ this._dataUnit.loadData();
65
65
  }
66
66
  }
67
67
  get metadata() {
@@ -21,6 +21,9 @@ export default class DataUnitDataLoader {
21
21
  });
22
22
  });
23
23
  }
24
+ static getCachedRecords(dataUnit) {
25
+ return PreloadManager.getCachedRecords(dataUnit);
26
+ }
24
27
  static async loadFromServer(dataUnit, request, loadingInfo) {
25
28
  try {
26
29
  //Registramos a request com as informações de carga para determinarmos a última.
@@ -1,3 +1,4 @@
1
+ import { ObjectUtils } from "@sankhyalabs/core";
1
2
  export class ArrayRepository {
2
3
  constructor(equalsFunction) {
3
4
  this._list = [];
@@ -77,4 +78,7 @@ export class ArrayRepository {
77
78
  async count() {
78
79
  return Promise.resolve(this._list.length);
79
80
  }
81
+ getFromCache() {
82
+ return ObjectUtils.copy(this._list);
83
+ }
80
84
  }
@@ -67,7 +67,11 @@ export default class PreloadManager {
67
67
  static async loadData(dataUnit, request, loadFromServer) {
68
68
  try {
69
69
  if (PreloadManager.isCacheEnabled(dataUnit)) {
70
- let useCache = request.source === "EZ_GRID_LOADING_SOURCE" || request.source === DataUnit.CHANGING_PAGE_LOADING_SOURCE;
70
+ const useCache = [
71
+ "EZ_GRID_LOADING_SOURCE",
72
+ DataUnit.CHANGING_PAGE_LOADING_SOURCE,
73
+ DataUnit.ALL_RECORDS_SELECTION_SOURCE
74
+ ].includes(request.source);
71
75
  if (useCache) {
72
76
  const isCacheEmpty = await PreloadManager.getRepository(dataUnit).isEmpty();
73
77
  if (!isCacheEmpty) {
@@ -134,6 +138,9 @@ export default class PreloadManager {
134
138
  .catch(reason => reject(reason));
135
139
  });
136
140
  }
141
+ static getCachedRecords(dataUnit) {
142
+ return PreloadManager.getRepository(dataUnit).getFromCache();
143
+ }
137
144
  }
138
145
  PreloadManager._repositories = new Map();
139
146
  PreloadManager._loadingStatus = new Map();
@@ -111,6 +111,7 @@ export default class DataUnitFetcher {
111
111
  dataUnit.saveLoader = (_dataUnit, changes) => this.saveData(dataUnit, changes);
112
112
  dataUnit.removeLoader = (dataUnit, recordIds) => this.removeRecords(dataUnit, recordIds);
113
113
  dataUnit.recordLoader = (dataUnit, recordIds) => this.loadRecord(dataUnit, recordIds);
114
+ dataUnit.allRecordsLoader = (dataUnit) => DataUnitDataLoader.getCachedRecords(dataUnit);
114
115
  return dataUnit;
115
116
  }
116
117
  loadMetadata(dataUnit) {
@@ -1,7 +1,6 @@
1
- import { R as ResourceFetcher, F as FormConfigFetcher } from './form-config-fetcher.js';
1
+ import { R as ResourceFetcher, d as dist, D as DataFetcher, F as FormConfigFetcher } from './form-config-fetcher.js';
2
2
  import { F as FilterItemType } from './filter-item-type.enum.js';
3
3
  import { ObjectUtils } from '@sankhyalabs/core';
4
- import { d as dist, D as DataFetcher } from './DataFetcher.js';
5
4
 
6
5
  var __rest = (undefined && undefined.__rest) || function (s, e) {
7
6
  var t = {};
@@ -1,12 +1,10 @@
1
- import { D as DataFetcher } from './DataFetcher.js';
1
+ import { D as DataFetcher } from './form-config-fetcher.js';
2
2
  import { a as PreloadManager } from './dataunit-fetcher.js';
3
- import { SortMode, ApplicationContext, UserInterface, DateUtils } from '@sankhyalabs/core';
4
- import './index2.js';
5
- import './snk-actions-button2.js';
3
+ import { SortMode, ApplicationContext, UserInterface, DateUtils, DataType } from '@sankhyalabs/core';
4
+ import './ISave.js';
6
5
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
7
- import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
6
+ import { UserInterface as UserInterface$1 } from '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
8
7
  import './filter-item-type.enum.js';
9
- import './form-config-fetcher.js';
10
8
  import InMemoryFilterColumnDataSource from '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils/InMemoryFilterColumnDataSource';
11
9
  import { h } from '@stencil/core/internal/client';
12
10
 
@@ -208,4 +206,51 @@ const openFieldSearch = async (moreOptions, field) => {
208
206
  await moreOptions.showActions();
209
207
  };
210
208
 
211
- export { CrudUtils as C, SnkMultiSelectionListDataSource as S, TaskbarProcessor as T, buildFieldSearch as b, openFieldSearch as o };
209
+ class CommonsExporter {
210
+ constructor(dataUnit, grid) {
211
+ this.dataUnit = dataUnit;
212
+ this.grid = grid;
213
+ }
214
+ async getColumnsMetadata() {
215
+ var _a;
216
+ const columnsState = await ((_a = this.grid) === null || _a === void 0 ? void 0 : _a.getColumnsState());
217
+ return this.buildColumnsMetadata(columnsState);
218
+ }
219
+ buildColumnsMetadata(gridColumns) {
220
+ const columnsMetadata = [];
221
+ gridColumns === null || gridColumns === void 0 ? void 0 : gridColumns.forEach((column) => {
222
+ var _a, _b;
223
+ /**
224
+ * TODO: Analisar e criar uma melhor forma de tratar essa validação do "RECDESP".
225
+ */
226
+ if (column.hidden && column.name !== "RECDESP") {
227
+ return;
228
+ }
229
+ const fieldData = (_a = this.dataUnit) === null || _a === void 0 ? void 0 : _a.getField(column.name);
230
+ const columnData = {
231
+ label: column.label,
232
+ id: column.name,
233
+ width: (fieldData === null || fieldData === void 0 ? void 0 : fieldData.userInterface) === UserInterface$1.SEARCH ? 30 : column.width,
234
+ type: fieldData === null || fieldData === void 0 ? void 0 : fieldData.dataType,
235
+ userInterface: fieldData === null || fieldData === void 0 ? void 0 : fieldData.userInterface
236
+ };
237
+ columnsMetadata.push(columnData);
238
+ if (((_b = fieldData === null || fieldData === void 0 ? void 0 : fieldData.properties) === null || _b === void 0 ? void 0 : _b.DESCRIPTIONFIELD) != undefined) {
239
+ const mergedFrom = fieldData.properties.mergedFrom;
240
+ const descriptionField = `${fieldData.properties.ENTITYNAME}.${fieldData.properties.DESCRIPTIONFIELD}`;
241
+ const descriptionColumn = {
242
+ label: fieldData.properties.DESCRIPTIONENTITY,
243
+ id: `${mergedFrom ? (mergedFrom + ".") : ""}${descriptionField}`,
244
+ width: 200,
245
+ type: DataType.TEXT,
246
+ userInterface: UserInterface$1.LONGTEXT,
247
+ descriptionFrom: fieldData.name
248
+ };
249
+ columnsMetadata.push(descriptionColumn);
250
+ }
251
+ });
252
+ return columnsMetadata || [];
253
+ }
254
+ }
255
+
256
+ export { CommonsExporter as C, SnkMultiSelectionListDataSource as S, TaskbarProcessor as T, CrudUtils as a, buildFieldSearch as b, openFieldSearch as o };
@@ -0,0 +1,42 @@
1
+ var PresentationMode;
2
+ (function (PresentationMode) {
3
+ PresentationMode["PRIMARY"] = "primary";
4
+ PresentationMode["SECONDARY"] = "secondary";
5
+ PresentationMode["SINGLE_TASKBAR"] = "singleTaskbar";
6
+ })(PresentationMode || (PresentationMode = {}));
7
+ var DataExporterOption;
8
+ (function (DataExporterOption) {
9
+ DataExporterOption["EXPORT_TO_PDF"] = "exportToPDF";
10
+ DataExporterOption["EXPORT_TO_XLS"] = "exportToXLS";
11
+ DataExporterOption["EXPORT_CURRENT_PAGE"] = "exportCurrentPage";
12
+ DataExporterOption["EXPORT_PAGE_TO_PDF"] = "exportPageToPDF";
13
+ DataExporterOption["EXPORT_PAGE_TO_XLS"] = "exportPageToXLS";
14
+ DataExporterOption["EXPORT_BY_EMAIL"] = "exportToEmail";
15
+ DataExporterOption["EXPORT_PDF_TO_EMAIL"] = "exportPDFToEmail";
16
+ DataExporterOption["EXPORT_XLS_TO_EMAIL"] = "exportXLSToEmail";
17
+ })(DataExporterOption || (DataExporterOption = {}));
18
+ var DataExporterFormat;
19
+ (function (DataExporterFormat) {
20
+ DataExporterFormat["PDF"] = "exportPDFToEmail";
21
+ DataExporterFormat["XLS"] = "exportXLSToEmail";
22
+ DataExporterFormat["XLSX"] = "exportXLSToEmail";
23
+ })(DataExporterFormat || (DataExporterFormat = {}));
24
+ var DataExporterType;
25
+ (function (DataExporterType) {
26
+ DataExporterType["EXPORT_TO_PDF"] = "PDF";
27
+ DataExporterType["EXPORT_TO_XLS"] = "XLS";
28
+ DataExporterType["EXPORT_PAGE_TO_PDF"] = "PDF";
29
+ DataExporterType["EXPORT_PAGE_TO_XLS"] = "XLS";
30
+ DataExporterType["EXPORT_PDF_TO_EMAIL"] = "PDF";
31
+ DataExporterType["EXPORT_XLS_TO_EMAIL"] = "XLS";
32
+ })(DataExporterType || (DataExporterType = {}));
33
+
34
+ var SaveErrorsEnum;
35
+ (function (SaveErrorsEnum) {
36
+ SaveErrorsEnum["LINK_AND_FILE_AT_THE_SAME_TIME"] = "LINK_AND_FILE_AT_THE_SAME_TIME";
37
+ SaveErrorsEnum["ANY_LINK_OR_FILE_FILLED"] = "ANY_LINK_OR_FILE_FILLED";
38
+ SaveErrorsEnum["UNKNOWN"] = "UNKNOWN";
39
+ SaveErrorsEnum["DESCRIPTION_CANNOT_BE_CHANGED"] = "DESCRIPTION_CANNOT_BE_CHANGED";
40
+ })(SaveErrorsEnum || (SaveErrorsEnum = {}));
41
+
42
+ export { DataExporterOption as D, PresentationMode as P, SaveErrorsEnum as S, DataExporterFormat as a, DataExporterType as b };