@sankhyalabs/sankhyablocks 10.1.0-dev.57 → 10.1.0-dev.59

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 (150) hide show
  1. package/dist/cjs/{ConfigStorage-a28eceb2.js → ConfigStorage-156bfcac.js} +2 -2
  2. package/dist/cjs/{DataFetcher-98d95e8f.js → DataFetcher-d13b4637.js} +12 -0
  3. package/dist/cjs/{ISave-a9815bb3.js → ISave-55d9dcc3.js} +1 -1
  4. package/dist/cjs/{SnkFormConfigManager-af47ba2f.js → SnkFormConfigManager-5cb9a39c.js} +2 -2
  5. package/dist/cjs/{SnkMultiSelectionListDataSource-13774e5f.js → SnkMultiSelectionListDataSource-5c5badfc.js} +5 -5
  6. package/dist/cjs/{auth-fetcher-9c257a1f.js → auth-fetcher-d1715459.js} +1 -1
  7. package/dist/cjs/{dataunit-fetcher-afc246d8.js → dataunit-fetcher-fae710c5.js} +1 -1
  8. package/dist/cjs/{form-config-fetcher-1ce4125c.js → form-config-fetcher-bbebdcb8.js} +1 -1
  9. package/dist/cjs/{index-e3e39724.js → index-bc950921.js} +6 -0
  10. package/dist/cjs/loader.cjs.js +1 -1
  11. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +5 -5
  12. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  13. package/dist/cjs/snk-actions-button_9.cjs.entry.js +9 -9
  14. package/dist/cjs/snk-application.cjs.entry.js +7 -7
  15. package/dist/cjs/snk-attach_11.cjs.entry.js +14 -12
  16. package/dist/cjs/snk-crud.cjs.entry.js +14 -10
  17. package/dist/cjs/snk-data-exporter.cjs.entry.js +59 -14
  18. package/dist/cjs/{snk-data-unit-ab570f87.js → snk-data-unit-32237a2d.js} +2 -2
  19. package/dist/cjs/snk-data-unit.cjs.entry.js +3 -3
  20. package/dist/cjs/snk-detail-view.cjs.entry.js +9 -9
  21. package/dist/cjs/snk-dynaform-detail-view_2.cjs.entry.js +33 -10
  22. package/dist/cjs/{snk-dynaform-guides-view-30ce5a8c.js → snk-dynaform-guides-view-2c7c6ce4.js} +389 -42
  23. package/dist/cjs/snk-dynaform-guides-view.cjs.entry.js +6 -6
  24. package/dist/cjs/snk-dynaform.cjs.entry.js +14 -10
  25. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +4 -4
  26. package/dist/cjs/snk-form_2.cjs.entry.js +4 -4
  27. package/dist/cjs/snk-grid.cjs.entry.js +8 -8
  28. package/dist/cjs/{snk-guides-viewer-2a55fa3a.js → snk-guides-viewer-67b9cca9.js} +2 -2
  29. package/dist/cjs/snk-guides-viewer.cjs.entry.js +7 -7
  30. package/dist/cjs/snk-layout-form-config.cjs.entry.js +5 -5
  31. package/dist/cjs/snk-pesquisa.cjs.entry.js +5 -5
  32. package/dist/cjs/snk-taskbar.cjs.entry.js +2 -2
  33. package/dist/cjs/{taskbar-elements-80eddec8.js → taskbar-elements-25f800b3.js} +1 -1
  34. package/dist/cjs/{taskbarUtils-4ca4235e.js → taskbarUtils-99aaa01f.js} +11 -6
  35. package/dist/collection/components/snk-actions-button/snk-actions-button.js +3 -3
  36. package/dist/collection/components/snk-crud/snk-crud.css +9 -4
  37. package/dist/collection/components/snk-crud/snk-crud.js +5 -1
  38. package/dist/collection/components/snk-crud/utils/taskbarUtils.js +5 -0
  39. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +2 -2
  40. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +8 -4
  41. package/dist/collection/components/snk-data-exporter/structure/ItemBuilder.js +43 -2
  42. package/dist/collection/components/snk-dynaform/snk-dynaform.css +9 -4
  43. package/dist/collection/components/snk-dynaform/snk-dynaform.js +5 -1
  44. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.css +71 -1
  45. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.js +23 -0
  46. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.css +35 -1
  47. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.js +3 -1
  48. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.css +229 -6
  49. package/dist/collection/components/snk-dynaform/subcomponents/snk-dynaform-guides-view/snk-dynaform-guides-view.js +458 -38
  50. package/dist/collection/components/snk-dynaform-form-config/SnkFormConfigManager.js +8 -1
  51. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +1 -1
  52. package/dist/collection/lib/@types/index.js +6 -0
  53. package/dist/collection/lib/message/resources/en-us/snk-crud.msg.js +4 -0
  54. package/dist/collection/lib/message/resources/es-es/snk-crud.msg.js +4 -0
  55. package/dist/collection/lib/message/resources/pt-br/snk-crud.msg.js +4 -0
  56. package/dist/components/ISave.js +6 -0
  57. package/dist/components/SnkMessageBuilder.js +12 -0
  58. package/dist/components/snk-actions-button2.js +3 -3
  59. package/dist/components/snk-crud.js +6 -2
  60. package/dist/components/snk-data-exporter2.js +53 -8
  61. package/dist/components/snk-dynaform-detail-view2.js +419 -41
  62. package/dist/components/snk-dynaform-form-view2.js +4 -2
  63. package/dist/components/snk-dynaform.js +6 -2
  64. package/dist/components/snk-filter-bar2.js +1 -1
  65. package/dist/components/taskbarUtils.js +5 -0
  66. package/dist/esm/{ConfigStorage-346d781d.js → ConfigStorage-0d1c0695.js} +2 -2
  67. package/dist/esm/{DataFetcher-7d8df5a2.js → DataFetcher-70de9419.js} +12 -0
  68. package/dist/esm/{ISave-2117075a.js → ISave-f5704813.js} +1 -1
  69. package/dist/esm/{SnkFormConfigManager-066d370b.js → SnkFormConfigManager-e7f05f79.js} +2 -2
  70. package/dist/esm/{SnkMultiSelectionListDataSource-7c5ffcd4.js → SnkMultiSelectionListDataSource-6ac291a9.js} +5 -5
  71. package/dist/esm/{auth-fetcher-5891e22c.js → auth-fetcher-e34880e5.js} +1 -1
  72. package/dist/esm/{dataunit-fetcher-5dcb0e89.js → dataunit-fetcher-d26e4a08.js} +1 -1
  73. package/dist/esm/{form-config-fetcher-8e2082f3.js → form-config-fetcher-98c42169.js} +1 -1
  74. package/dist/esm/{index-b40568ff.js → index-c6721886.js} +6 -0
  75. package/dist/esm/loader.js +1 -1
  76. package/dist/esm/pesquisa-grid_2.entry.js +5 -5
  77. package/dist/esm/sankhyablocks.js +1 -1
  78. package/dist/esm/snk-actions-button_9.entry.js +9 -9
  79. package/dist/esm/snk-application.entry.js +7 -7
  80. package/dist/esm/snk-attach_11.entry.js +14 -12
  81. package/dist/esm/snk-crud.entry.js +14 -10
  82. package/dist/esm/snk-data-exporter.entry.js +59 -14
  83. package/dist/esm/{snk-data-unit-f697345b.js → snk-data-unit-ff57ac90.js} +2 -2
  84. package/dist/esm/snk-data-unit.entry.js +3 -3
  85. package/dist/esm/snk-detail-view.entry.js +9 -9
  86. package/dist/esm/snk-dynaform-detail-view_2.entry.js +33 -10
  87. package/dist/esm/{snk-dynaform-guides-view-6aae38f7.js → snk-dynaform-guides-view-0dfbefc1.js} +390 -43
  88. package/dist/esm/snk-dynaform-guides-view.entry.js +6 -6
  89. package/dist/esm/snk-dynaform.entry.js +14 -10
  90. package/dist/esm/snk-filter-bar_4.entry.js +4 -4
  91. package/dist/esm/snk-form_2.entry.js +4 -4
  92. package/dist/esm/snk-grid.entry.js +8 -8
  93. package/dist/esm/{snk-guides-viewer-3ea7e312.js → snk-guides-viewer-31a0a23d.js} +2 -2
  94. package/dist/esm/snk-guides-viewer.entry.js +7 -7
  95. package/dist/esm/snk-layout-form-config.entry.js +5 -5
  96. package/dist/esm/snk-pesquisa.entry.js +5 -5
  97. package/dist/esm/snk-taskbar.entry.js +2 -2
  98. package/dist/esm/{taskbar-elements-63651ca7.js → taskbar-elements-ba9d6889.js} +1 -1
  99. package/dist/esm/{taskbarUtils-a43e4bba.js → taskbarUtils-cb9db0d9.js} +11 -6
  100. package/dist/sankhyablocks/{p-3190ac29.js → p-097d75b3.js} +2 -2
  101. package/dist/sankhyablocks/{p-aa9d61fa.entry.js → p-12579574.entry.js} +1 -1
  102. package/dist/sankhyablocks/{p-741f1ad0.entry.js → p-1d31aec3.entry.js} +1 -1
  103. package/dist/sankhyablocks/{p-6f2de911.entry.js → p-250b273e.entry.js} +1 -1
  104. package/dist/sankhyablocks/p-2a83f20e.entry.js +1 -0
  105. package/dist/sankhyablocks/p-2c4f7fdd.entry.js +1 -0
  106. package/dist/sankhyablocks/{p-3072136e.js → p-2ec98523.js} +1 -1
  107. package/dist/sankhyablocks/{p-10d883b0.js → p-4dd574d6.js} +1 -1
  108. package/dist/sankhyablocks/{p-7827871d.entry.js → p-541c72ec.entry.js} +1 -1
  109. package/dist/sankhyablocks/p-5aeae67f.js +1 -0
  110. package/dist/sankhyablocks/p-5ef0e9a8.entry.js +1 -0
  111. package/dist/sankhyablocks/{p-9e97fabb.entry.js → p-6d3bcabf.entry.js} +1 -1
  112. package/dist/sankhyablocks/p-6f60df43.js +1 -0
  113. package/dist/sankhyablocks/{p-58e0f14b.entry.js → p-846d8f79.entry.js} +1 -1
  114. package/dist/sankhyablocks/{p-77f608bc.entry.js → p-885262ce.entry.js} +1 -1
  115. package/dist/sankhyablocks/{p-c1e168a2.js → p-8d1ef77a.js} +1 -1
  116. package/dist/sankhyablocks/{p-13f91e7e.js → p-8d81c8d3.js} +1 -1
  117. package/dist/sankhyablocks/{p-ee192f06.entry.js → p-8f5dd87d.entry.js} +1 -1
  118. package/dist/sankhyablocks/{p-c5889dae.js → p-90037547.js} +1 -1
  119. package/dist/sankhyablocks/p-9e02a785.js +1 -0
  120. package/dist/sankhyablocks/{p-5a8390f9.entry.js → p-a25ab2ff.entry.js} +1 -1
  121. package/dist/sankhyablocks/p-a696bbcd.entry.js +1 -0
  122. package/dist/sankhyablocks/{p-b3762105.entry.js → p-a9012341.entry.js} +1 -1
  123. package/dist/sankhyablocks/p-abcb646d.js +1 -0
  124. package/dist/sankhyablocks/{p-733eba69.js → p-bd2a845c.js} +1 -1
  125. package/dist/sankhyablocks/p-bfce617e.entry.js +1 -0
  126. package/dist/sankhyablocks/{p-3630a5ae.entry.js → p-c4b34e2b.entry.js} +1 -1
  127. package/dist/sankhyablocks/{p-8d513b64.js → p-c9440c8a.js} +1 -1
  128. package/dist/sankhyablocks/p-cd153f71.entry.js +1 -0
  129. package/dist/sankhyablocks/{p-e91bd00e.js → p-eac48627.js} +1 -1
  130. package/dist/sankhyablocks/{p-d7657667.js → p-ec7c87bb.js} +1 -1
  131. package/dist/sankhyablocks/p-fb6e3c65.entry.js +1 -0
  132. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  133. package/dist/types/components/snk-data-exporter/structure/ItemBuilder.d.ts +16 -0
  134. package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-detail-view/snk-dynaform-detail-view.d.ts +11 -0
  135. package/dist/types/components/snk-dynaform/subcomponents/snk-dynaform-form-view/snk-dynaform-form-view.d.ts +1 -0
  136. package/dist/types/components.d.ts +32 -0
  137. package/dist/types/lib/@types/index.d.ts +6 -0
  138. package/dist/types/lib/http/data-fetcher/fetchers/fetchDataExporter/interfaces/IFetchDataExporterParams.d.ts +2 -0
  139. package/package.json +1 -1
  140. package/dist/sankhyablocks/p-0f3698af.js +0 -1
  141. package/dist/sankhyablocks/p-1bc6849e.js +0 -1
  142. package/dist/sankhyablocks/p-2c65dc01.entry.js +0 -1
  143. package/dist/sankhyablocks/p-3cc67d50.entry.js +0 -1
  144. package/dist/sankhyablocks/p-4a53fbeb.entry.js +0 -1
  145. package/dist/sankhyablocks/p-7e63af25.entry.js +0 -1
  146. package/dist/sankhyablocks/p-a8a93568.entry.js +0 -1
  147. package/dist/sankhyablocks/p-acd3adf9.entry.js +0 -1
  148. package/dist/sankhyablocks/p-c3bc693a.js +0 -1
  149. package/dist/sankhyablocks/p-c6b6567f.entry.js +0 -1
  150. package/dist/sankhyablocks/p-ed1b1b14.js +0 -1
@@ -2,16 +2,16 @@ import { r as registerInstance, h, f as Host, g as getElement } from './index-04
2
2
  import { ApplicationContext, ObjectUtils, UserInterface, DataType, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
4
  import { I as IExportType } from './IFetchDataExporterParams-d73bed3d.js';
5
- import { D as DataExporterOption, a as DataExporterType, b as DataExporterFormat } from './index-b40568ff.js';
5
+ import { D as DataExporterOption, a as DataExporterType, b as DataExporterFormat } from './index-c6721886.js';
6
6
  import { R as REPORT_LAUNCHER_RESOURCE_ID } from './constants-7b422de0.js';
7
- import { D as DataFetcher } from './DataFetcher-7d8df5a2.js';
8
- import { S as SnkDataUnit } from './snk-data-unit-f697345b.js';
9
- import './ISave-2117075a.js';
7
+ import { D as DataFetcher } from './DataFetcher-70de9419.js';
8
+ import { S as SnkDataUnit } from './snk-data-unit-ff57ac90.js';
9
+ import './ISave-f5704813.js';
10
10
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
11
11
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
12
- import './dataunit-fetcher-5dcb0e89.js';
12
+ import './dataunit-fetcher-d26e4a08.js';
13
13
  import './filter-item-type.enum-d45e026f.js';
14
- import './form-config-fetcher-8e2082f3.js';
14
+ import './form-config-fetcher-98c42169.js';
15
15
  import './PrintUtils-3e4ff0f5.js';
16
16
  import '@sankhyalabs/core/dist/dataunit/metadata/DataType';
17
17
  import './GetSelectedRecordsIDsInfo-9fa41508.js';
@@ -38,6 +38,9 @@ class ItemBuilder {
38
38
  if (option === DataExporterOption.EXPORT_TO_XLS) {
39
39
  items.push(this.getExportToXLS(groupName));
40
40
  }
41
+ if (option === DataExporterOption.EXPORT_TO_XLSX) {
42
+ items.push(this.getExportToXLSX(groupName));
43
+ }
41
44
  this.setExportCurrentPage(option, items);
42
45
  if (this._selectedNumber > 0) {
43
46
  this.setExportAllRecords(option, items);
@@ -51,7 +54,7 @@ class ItemBuilder {
51
54
  */
52
55
  setExportCurrentPage(option, items) {
53
56
  var _a;
54
- const pageOptions = [DataExporterOption.EXPORT_PAGE_TO_PDF, DataExporterOption.EXPORT_PAGE_TO_XLS];
57
+ const pageOptions = [DataExporterOption.EXPORT_PAGE_TO_PDF, DataExporterOption.EXPORT_PAGE_TO_XLS, DataExporterOption.EXPORT_PAGE_TO_XLSX];
55
58
  if (option === DataExporterOption.EXPORT_CURRENT_PAGE) {
56
59
  items.push(this.getCurrentPage());
57
60
  }
@@ -70,6 +73,9 @@ class ItemBuilder {
70
73
  if (option === DataExporterOption.EXPORT_PAGE_TO_XLS) {
71
74
  item.children.push(this.getExportPageToXLS());
72
75
  }
76
+ if (option === DataExporterOption.EXPORT_PAGE_TO_XLSX) {
77
+ item.children.push(this.getExportPageToXLSX());
78
+ }
73
79
  }
74
80
  }
75
81
  /**
@@ -79,7 +85,7 @@ class ItemBuilder {
79
85
  */
80
86
  setExportAllRecords(option, items) {
81
87
  var _a;
82
- const pageOptions = [DataExporterOption.EXPORT_ALL_RECORDS_TO_PDF, DataExporterOption.EXPORT_ALL_RECORDS_TO_XLS];
88
+ const pageOptions = [DataExporterOption.EXPORT_ALL_RECORDS_TO_PDF, DataExporterOption.EXPORT_ALL_RECORDS_TO_XLS, DataExporterOption.EXPORT_ALL_RECORDS_TO_XLSX];
83
89
  if (option === DataExporterOption.EXPORT_ALL_RECORDS) {
84
90
  items.push(this.getAllRecords());
85
91
  }
@@ -98,6 +104,9 @@ class ItemBuilder {
98
104
  if (option === DataExporterOption.EXPORT_ALL_RECORDS_TO_XLS) {
99
105
  item.children.push(this.getExportAllRecordsToXLS());
100
106
  }
107
+ if (option === DataExporterOption.EXPORT_ALL_RECORDS_TO_XLSX) {
108
+ item.children.push(this.getExportAllRecordsToXLSX());
109
+ }
101
110
  }
102
111
  }
103
112
  /**
@@ -134,6 +143,18 @@ class ItemBuilder {
134
143
  group: groupName
135
144
  };
136
145
  }
146
+ /**
147
+ * Método responsável por capturar o objeto com os dados de exportação em XLSX.
148
+ * @param groupName - Nome do grupo da opção que será inserida na lista.
149
+ * @returns Retorna o objeto com os dados de exportação em XLSX.
150
+ */
151
+ getExportToXLSX(groupName) {
152
+ return {
153
+ id: DataExporterOption.EXPORT_TO_XLSX,
154
+ label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.xlsx)`,
155
+ group: groupName
156
+ };
157
+ }
137
158
  /**
138
159
  * Método responsável por capturar o objeto com os dados de exportação personalizada.
139
160
  * @returns Retorna o objeto com os dados de exportação personalizada.
@@ -176,6 +197,16 @@ class ItemBuilder {
176
197
  label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.xls)`
177
198
  };
178
199
  }
200
+ /**
201
+ * Método responsável por capturar o objeto com os dados de exportação da página atual em XLSX.
202
+ * @returns Retorna o objeto com os dados de exportação da página atual em XLSX.
203
+ */
204
+ getExportPageToXLSX() {
205
+ return {
206
+ id: DataExporterOption.EXPORT_PAGE_TO_XLSX,
207
+ label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.xlsx)`
208
+ };
209
+ }
179
210
  /**
180
211
  * Método responsável por capturar o objeto com todos os dados de exportação em PDF.
181
212
  * @returns Retorna o objeto com todos os dados de exportação em PDF.
@@ -193,6 +224,16 @@ class ItemBuilder {
193
224
  getExportAllRecordsToXLS() {
194
225
  return {
195
226
  id: DataExporterOption.EXPORT_ALL_RECORDS_TO_XLS,
227
+ label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.xls)`
228
+ };
229
+ }
230
+ /**
231
+ * Método responsável por capturar o objeto com todos os dados de exportação em XLSX.
232
+ * @returns Retorna o objeto com todos os dados de exportação em XLSX.
233
+ */
234
+ getExportAllRecordsToXLSX() {
235
+ return {
236
+ id: DataExporterOption.EXPORT_ALL_RECORDS_TO_XLSX,
196
237
  label: `${this._getMessage("snkDataExporter.label.spreadsheet")} (.xlsx)`
197
238
  };
198
239
  }
@@ -356,7 +397,7 @@ class ClientSideExporterStrategy {
356
397
  return visibleColumns;
357
398
  }
358
399
  async executeExport(resolveProps) {
359
- var _a;
400
+ var _a, _b;
360
401
  const { methodName, gridTitle } = resolveProps;
361
402
  const records = await this._provider.getRecords(resolveProps.type);
362
403
  const columns = ((_a = getOptionKey(resolveProps === null || resolveProps === void 0 ? void 0 : resolveProps.exportOption)) === null || _a === void 0 ? void 0 : _a.includes("PDF")) ? await this.getParsedColumns() : await this._provider.getColumnsMetadata();
@@ -368,7 +409,7 @@ class ClientSideExporterStrategy {
368
409
  gridTitle,
369
410
  columns: this.buildColumnsObject(columns),
370
411
  rows: this.buildRowsObject(columns, records),
371
- customOptions: { xlsxExtension: false }
412
+ customOptions: { xlsxExtension: (_b = resolveProps === null || resolveProps === void 0 ? void 0 : resolveProps.xlsxExtension) !== null && _b !== void 0 ? _b : false }
372
413
  }
373
414
  }
374
415
  };
@@ -449,13 +490,16 @@ const SnkDataExporter = class {
449
490
  this._releasedToExport = [
450
491
  DataExporterOption.EXPORT_TO_PDF,
451
492
  DataExporterOption.EXPORT_TO_XLS,
493
+ DataExporterOption.EXPORT_TO_XLSX,
452
494
  DataExporterOption.EXPORT_BY_EMAIL,
453
495
  DataExporterOption.EXPORT_PDF_TO_EMAIL,
454
496
  DataExporterOption.EXPORT_XLS_TO_EMAIL,
455
497
  DataExporterOption.EXPORT_PAGE_TO_PDF,
456
498
  DataExporterOption.EXPORT_PAGE_TO_XLS,
499
+ DataExporterOption.EXPORT_PAGE_TO_XLSX,
457
500
  DataExporterOption.EXPORT_ALL_RECORDS_TO_PDF,
458
501
  DataExporterOption.EXPORT_ALL_RECORDS_TO_XLS,
502
+ DataExporterOption.EXPORT_ALL_RECORDS_TO_XLSX,
459
503
  ];
460
504
  this._items = [];
461
505
  this._showDropdown = false;
@@ -550,16 +594,16 @@ const SnkDataExporter = class {
550
594
  });
551
595
  }
552
596
  getExportType(option) {
553
- if (option === DataExporterOption.EXPORT_ALL_RECORDS_TO_PDF || option === DataExporterOption.EXPORT_ALL_RECORDS_TO_XLS) {
597
+ if (option === DataExporterOption.EXPORT_ALL_RECORDS_TO_PDF || option === DataExporterOption.EXPORT_ALL_RECORDS_TO_XLS || option === DataExporterOption.EXPORT_ALL_RECORDS_TO_XLSX) {
554
598
  return IExportType.ALL;
555
599
  }
556
- if (option === DataExporterOption.EXPORT_PAGE_TO_PDF || option === DataExporterOption.EXPORT_PAGE_TO_XLS) {
600
+ if (option === DataExporterOption.EXPORT_PAGE_TO_PDF || option === DataExporterOption.EXPORT_PAGE_TO_XLS || option === DataExporterOption.EXPORT_PAGE_TO_XLSX) {
557
601
  return IExportType.PAGE;
558
602
  }
559
603
  return IExportType.SELECTION;
560
604
  }
561
605
  async dispatchExporter(option) {
562
- var _a, _b, _c;
606
+ var _a, _b, _c, _d;
563
607
  const optionKey = this.getOptionKey(option);
564
608
  const fileType = (_a = DataExporterType[optionKey]) !== null && _a !== void 0 ? _a : DataExporterType.EXPORT_TO_PDF;
565
609
  const params = {
@@ -569,6 +613,7 @@ const SnkDataExporter = class {
569
613
  exportOption: option,
570
614
  limit: (_c = (_b = this.provider) === null || _b === void 0 ? void 0 : _b.getExportLimit) === null || _c === void 0 ? void 0 : _c.call(_b),
571
615
  type: this.getExportType(option),
616
+ xlsxExtension: (_d = optionKey === null || optionKey === void 0 ? void 0 : optionKey.includes("XLSX")) !== null && _d !== void 0 ? _d : false,
572
617
  };
573
618
  await this.resolveExporter(params, (response) => {
574
619
  if (response.canExport || fileType === DataExporterType.EXPORT_TO_PDF) {
@@ -582,7 +627,7 @@ const SnkDataExporter = class {
582
627
  async processExporter(evt) {
583
628
  var _a, _b, _c, _d, _e, _f, _g;
584
629
  const item = evt === null || evt === void 0 ? void 0 : evt.detail;
585
- const exportCurrentPageOptions = [DataExporterOption.EXPORT_PAGE_TO_PDF, DataExporterOption.EXPORT_PAGE_TO_XLS];
630
+ const exportCurrentPageOptions = [DataExporterOption.EXPORT_PAGE_TO_PDF, DataExporterOption.EXPORT_PAGE_TO_XLS, DataExporterOption.EXPORT_PAGE_TO_XLSX];
586
631
  const isCustomReport = (_a = item === null || item === void 0 ? void 0 : item.id) === null || _a === void 0 ? void 0 : _a.includes(this._customPrefix);
587
632
  if ((item === null || item === void 0 ? void 0 : item.id) === DataExporterOption.EXPORT_CURRENT_PAGE)
588
633
  return;
@@ -1,8 +1,8 @@
1
1
  import { r as registerInstance, e as createEvent, h, g as getElement, f as Host } from './index-04f73a26.js';
2
2
  import { ApplicationContext, Action, ObjectUtils, DataUnitAction, StringUtils } from '@sankhyalabs/core';
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
- import { O as OperationMap, S as SnkMessageBuilder } from './DataFetcher-7d8df5a2.js';
5
- import { g as getRecordValue, a as DatasetStrategy } from './dataunit-fetcher-5dcb0e89.js';
4
+ import { O as OperationMap, S as SnkMessageBuilder } from './DataFetcher-70de9419.js';
5
+ import { g as getRecordValue, a as DatasetStrategy } from './dataunit-fetcher-d26e4a08.js';
6
6
  import { convertType } from '@sankhyalabs/core/dist/dataunit/metadata/DataType';
7
7
  import { g as getSelectedRecordsIDsInfo } from './GetSelectedRecordsIDsInfo-9fa41508.js';
8
8
 
@@ -1,11 +1,11 @@
1
- export { S as snk_data_unit } from './snk-data-unit-f697345b.js';
1
+ export { S as snk_data_unit } from './snk-data-unit-ff57ac90.js';
2
2
  import './index-04f73a26.js';
3
3
  import '@sankhyalabs/core';
4
4
  import '@sankhyalabs/ezui/dist/collection/utils';
5
- import './DataFetcher-7d8df5a2.js';
5
+ import './DataFetcher-70de9419.js';
6
6
  import './PrintUtils-3e4ff0f5.js';
7
7
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
8
- import './dataunit-fetcher-5dcb0e89.js';
8
+ import './dataunit-fetcher-d26e4a08.js';
9
9
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
10
10
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
11
11
  import '@sankhyalabs/core/dist/utils/SortingUtils';
@@ -1,20 +1,20 @@
1
1
  import { r as registerInstance, e as createEvent, i as forceUpdate, h, f as Host, g as getElement } from './index-04f73a26.js';
2
2
  import { Action, StringUtils, KeyboardManager } from '@sankhyalabs/core';
3
- import { S as SnkFormConfigManager } from './SnkFormConfigManager-066d370b.js';
3
+ import { S as SnkFormConfigManager } from './SnkFormConfigManager-e7f05f79.js';
4
4
  import { FormMetadata, buildFormMetadata } from '@sankhyalabs/ezui/dist/collection/utils/form';
5
- import { S as SnkMessageBuilder } from './DataFetcher-7d8df5a2.js';
6
- import './ISave-2117075a.js';
7
- import { P as PresentationMode } from './index-b40568ff.js';
5
+ import { S as SnkMessageBuilder } from './DataFetcher-70de9419.js';
6
+ import './ISave-f5704813.js';
7
+ import { P as PresentationMode } from './index-c6721886.js';
8
8
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
9
9
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
- import './dataunit-fetcher-5dcb0e89.js';
10
+ import './dataunit-fetcher-d26e4a08.js';
11
11
  import './filter-item-type.enum-d45e026f.js';
12
- import './form-config-fetcher-8e2082f3.js';
12
+ import './form-config-fetcher-98c42169.js';
13
13
  import { V as VIEW_MODE } from './constants-7b422de0.js';
14
- import { T as TaskbarElement } from './taskbar-elements-63651ca7.js';
15
- import { S as SnkGuidesViewer } from './snk-guides-viewer-3ea7e312.js';
14
+ import { T as TaskbarElement } from './taskbar-elements-ba9d6889.js';
15
+ import { S as SnkGuidesViewer } from './snk-guides-viewer-31a0a23d.js';
16
16
  import { buildFieldSearch, SHORTCUT_SEARCH_FIELD } from '@sankhyalabs/ezui/dist/collection/utils';
17
- import './ConfigStorage-346d781d.js';
17
+ import './ConfigStorage-0d1c0695.js';
18
18
  import './PrintUtils-3e4ff0f5.js';
19
19
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
20
20
  import '@sankhyalabs/core/dist/utils/SortingUtils';
@@ -1,33 +1,35 @@
1
1
  import { r as registerInstance, i as forceUpdate, h, f as Host, g as getElement, e as createEvent } from './index-04f73a26.js';
2
2
  import { Action, StringUtils, KeyboardManager, ObjectUtils, ApplicationContext } from '@sankhyalabs/core';
3
- import { S as SnkDynaformGuidesViewer, a as SnkFormConfigManager } from './snk-dynaform-guides-view-6aae38f7.js';
3
+ import { S as SnkDynaformGuidesViewer, a as SnkFormConfigManager } from './snk-dynaform-guides-view-0dfbefc1.js';
4
4
  import { buildFormMetadata, FormMetadata, buildFormConfigFromDataUnit } from '@sankhyalabs/ezui/dist/collection/utils/form';
5
- import { S as SnkMessageBuilder } from './DataFetcher-7d8df5a2.js';
6
- import './ISave-2117075a.js';
7
- import { P as PresentationMode } from './index-b40568ff.js';
5
+ import { S as SnkMessageBuilder } from './DataFetcher-70de9419.js';
6
+ import './ISave-f5704813.js';
7
+ import { P as PresentationMode } from './index-c6721886.js';
8
8
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
9
9
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
- import './dataunit-fetcher-5dcb0e89.js';
10
+ import './dataunit-fetcher-d26e4a08.js';
11
11
  import './filter-item-type.enum-d45e026f.js';
12
- import { U as UserConfigType } from './form-config-fetcher-8e2082f3.js';
12
+ import { U as UserConfigType } from './form-config-fetcher-98c42169.js';
13
13
  import { V as VIEW_MODE, a as TAB_NAMES, G as GROUP_NAMES } from './constants-7b422de0.js';
14
- import { T as TaskbarElement } from './taskbar-elements-63651ca7.js';
14
+ import { T as TaskbarElement } from './taskbar-elements-ba9d6889.js';
15
15
  import { buildFieldSearch, SHORTCUT_SEARCH_FIELD, ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
16
- import { S as SimpleTaskbarProcessor, D as DEFAULT_TASKBAR_BUTTONS, g as getTopTaskBarId } from './taskbarUtils-a43e4bba.js';
16
+ import { S as SimpleTaskbarProcessor, D as DEFAULT_TASKBAR_BUTTONS, g as getTopTaskBarId } from './taskbarUtils-cb9db0d9.js';
17
17
  import { b as buildGuides, a as buildChildrenGuides, c as buildCustomGuides, d as buildGuidesMap, g as getFieldsToSave, u as updateTabInFieldsFromGroupList, e as buildNewGuideName } from './FormConfigHelper-efc29480.js';
18
- import './ConfigStorage-346d781d.js';
18
+ import './ConfigStorage-0d1c0695.js';
19
19
  import './PrintUtils-3e4ff0f5.js';
20
20
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
21
21
  import '@sankhyalabs/core/dist/utils/SortingUtils';
22
22
  import './ResourceIDUtils-a114189a.js';
23
23
  import './index-ea250be6.js';
24
24
 
25
- const snkDynaformDetailViewCss = ".sc-snk-dynaform-detail-view-h{display:flex;row-gap:24px;flex-direction:column;width:100%;height:100%;overflow:hidden}.level-path.sc-snk-dynaform-detail-view{color:var(--color--title-primary, #2B3A54);font-weight:var(--text-weight--medium, 400);padding-right:3px}.grid-container.sc-snk-dynaform-detail-view{min-height:100px;height:100%;width:100%;display:flex;flex-wrap:wrap;text-decoration:none;border-radius:var(--border--radius-medium);background-color:var(--color--gray-70, #FFFFFF);border:1px solid var(--color--petroleum-100, #C8CCD3)}.detail-header.sc-snk-dynaform-detail-view{padding-bottom:0}snk-data-unit.sc-snk-dynaform-detail-view{flex:1;gap:var(--space--12, 12px);display:flex;flex-direction:column}snk-grid.sc-snk-dynaform-detail-view{height:100%;--snk-grid-margin:0px;--snk-grid-box-shadow:none}.form-and-detail-container.sc-snk-dynaform-detail-view{display:flex;flex-direction:column;height:100%;width:100%;overflow:auto;padding:var(--space--12, 12px)}.ez-tabselector-internal.sc-snk-dynaform-detail-view{margin:var(--space--8, 8px) 0}.selected-record-header.sc-snk-dynaform-detail-view{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space--8, 8px) var(--space--12, 12px);padding:var(--space--12, 12px) var(--space--16, 16px);margin-bottom:var(--space--12, 12px);background:var(--color--gray-80, #F9F9F9);border-radius:var(--border--radius-12, 12px);font-family:var(--font--pattern);border:1px solid var(--color--petroleum-100, #C8CCD3);border-left:4px solid var(--color--ocean-green-500, #00B07E)}.selected-record-header--message.sc-snk-dynaform-detail-view{border-left-color:var(--color--primary, #007EFF)}.selected-record-header__message.sc-snk-dynaform-detail-view{font-size:var(--font-size--default, 14px);font-weight:var(--font-weight--medium, 500);color:var(--color--title-primary, #2B3A54)}.selected-record-header__chip.sc-snk-dynaform-detail-view{display:inline-flex;flex-direction:row;align-items:center;gap:var(--space--4, 4px);min-width:0}.selected-record-header__label.sc-snk-dynaform-detail-view{font-size:var(--font-size--xs, 11px);font-weight:var(--font-weight--medium, 500);text-transform:uppercase;letter-spacing:0.04em;color:var(--color--text-secondary, #6E7A8A)}.selected-record-header__value.sc-snk-dynaform-detail-view{font-size:var(--font-size--md, 15px);font-weight:var(--font-weight--semibold, 600);color:var(--color--ocean-green-1000, #00281D);line-height:1.2;word-break:break-word}.selected-record-header__separator.sc-snk-dynaform-detail-view{display:inline-block;align-self:stretch;width:1px;background:var(--color--petroleum-100, #C8CCD3);margin:0 var(--space--4, 4px)}";
25
+ const snkDynaformDetailViewCss = ".sc-snk-dynaform-detail-view-h{display:flex;row-gap:24px;flex-direction:column;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;padding:var(--space--4, 4px);scrollbar-width:auto;scrollbar-color:var(--color--strokes, #E1E2E5) transparent}.sc-snk-dynaform-detail-view-h::-webkit-scrollbar{width:var(--space--14, 14px);height:var(--space--14, 14px)}.sc-snk-dynaform-detail-view-h::-webkit-scrollbar-track{background:transparent}.sc-snk-dynaform-detail-view-h::-webkit-scrollbar-thumb{background-color:var(--color--strokes, #E1E2E5);border-radius:var(--border--radius-100, 100px);border:2px solid transparent;background-clip:padding-box}.sc-snk-dynaform-detail-view-h::-webkit-scrollbar-thumb:hover{background-color:var(--color--petroleum-100, #C8CCD3);background-clip:padding-box}.sc-snk-dynaform-detail-view-h::-webkit-scrollbar-corner{background:transparent}.level-path.sc-snk-dynaform-detail-view{color:var(--color--title-primary, #2B3A54);font-weight:var(--text-weight--medium, 400);padding-right:3px}.grid-container.sc-snk-dynaform-detail-view{min-height:100px;height:100%;width:100%;display:flex;flex-wrap:wrap;text-decoration:none;border-radius:var(--border--radius-medium);background-color:var(--color--gray-70, #FFFFFF);border:1px solid var(--color--petroleum-100, #C8CCD3)}.detail-header.sc-snk-dynaform-detail-view{padding-bottom:0}snk-data-unit.sc-snk-dynaform-detail-view{flex:1;min-height:0;gap:var(--space--12, 12px);display:flex;flex-direction:column}snk-data-unit.sc-snk-dynaform-detail-view ez-view-stack.sc-snk-dynaform-detail-view{flex:1;min-height:0}snk-grid.sc-snk-dynaform-detail-view{height:100%;--snk-grid-margin:0px;--snk-grid-box-shadow:none;--snk-grid-min-height:135px}.form-and-detail-container.sc-snk-dynaform-detail-view>ez-tabselector.sc-snk-dynaform-detail-view{flex-shrink:0}.form-and-detail-container.sc-snk-dynaform-detail-view{display:flex;flex-direction:column;height:100%;width:100%;overflow:auto;padding:var(--space--12, 12px);scrollbar-width:auto;scrollbar-color:var(--color--strokes, #E1E2E5) transparent}.form-and-detail-container.sc-snk-dynaform-detail-view::-webkit-scrollbar{width:var(--space--14, 14px);height:var(--space--14, 14px)}.form-and-detail-container.sc-snk-dynaform-detail-view::-webkit-scrollbar-track{background:transparent}.form-and-detail-container.sc-snk-dynaform-detail-view::-webkit-scrollbar-thumb{background-color:var(--color--strokes, #E1E2E5);border-radius:var(--border--radius-100, 100px);border:2px solid transparent;background-clip:padding-box}.form-and-detail-container.sc-snk-dynaform-detail-view::-webkit-scrollbar-thumb:hover{background-color:var(--color--petroleum-100, #C8CCD3);background-clip:padding-box}.form-and-detail-container.sc-snk-dynaform-detail-view::-webkit-scrollbar-corner{background:transparent}.ez-tabselector-internal.sc-snk-dynaform-detail-view{margin:var(--space--8, 8px) 0}.selected-record-header.sc-snk-dynaform-detail-view{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space--8, 8px) var(--space--12, 12px);padding:var(--space--12, 12px) var(--space--16, 16px);margin-bottom:var(--space--12, 12px);background:var(--color--gray-80, #F9F9F9);border-radius:var(--border--radius-12, 12px);font-family:var(--font--pattern);border:1px solid var(--color--petroleum-100, #C8CCD3);border-left:4px solid var(--color--ocean-green-500, #00B07E)}.selected-record-header--message.sc-snk-dynaform-detail-view{border-left-color:var(--color--primary, #007EFF)}.selected-record-header__message.sc-snk-dynaform-detail-view{font-size:var(--font-size--default, 14px);font-weight:var(--font-weight--medium, 500);color:var(--color--title-primary, #2B3A54)}.selected-record-header__chip.sc-snk-dynaform-detail-view{display:inline-flex;flex-direction:row;align-items:center;gap:var(--space--4, 4px);min-width:0}.selected-record-header__label.sc-snk-dynaform-detail-view{font-size:var(--font-size--xs, 11px);font-weight:var(--font-weight--medium, 500);text-transform:uppercase;letter-spacing:0.04em;color:var(--color--text-secondary, #6E7A8A)}.selected-record-header__value.sc-snk-dynaform-detail-view{font-size:var(--font-size--md, 15px);font-weight:var(--font-weight--semibold, 600);color:var(--color--ocean-green-1000, #00281D);line-height:1.2;word-break:break-word}.selected-record-header__separator.sc-snk-dynaform-detail-view{display:inline-block;align-self:stretch;width:1px;background:var(--color--petroleum-100, #C8CCD3);margin:0 var(--space--4, 4px)}";
26
26
 
27
27
  const SnkDynaformDetailView = class {
28
28
  constructor(hostRef) {
29
29
  registerInstance(this, hostRef);
30
30
  this._taskbarProcessor = new SimpleTaskbarProcessor(DEFAULT_TASKBAR_BUTTONS);
31
+ /** Evita repetir a carga inicial da grade no mesmo mount da aba. */
32
+ this._didInitialLoad = false;
31
33
  this._currentView = 0;
32
34
  this.attachmentRegisterKey = undefined;
33
35
  this._fieldToGetFocus = undefined;
@@ -176,6 +178,27 @@ const SnkDynaformDetailView = class {
176
178
  dataUnitReadyHandler(evt) {
177
179
  this.dataUnit = evt.detail;
178
180
  this.loadMetadata();
181
+ this.ensureInitialLoad();
182
+ }
183
+ /**
184
+ * Dispara a carga inicial da grade quando a aba é montada com o master já
185
+ * selecionado. A carga do filho normalmente é disparada pelo evento de troca
186
+ * de seleção do master; uma aba montada tardiamente (aberta depois que o
187
+ * registro master já estava selecionado) não recebe esse evento e ficaria
188
+ * vazia até um refresh manual. Navegações seguintes do master continuam
189
+ * recarregando pela assinatura existente do DataUnit.
190
+ */
191
+ ensureInitialLoad() {
192
+ var _a, _b, _c, _d, _e;
193
+ if (this._didInitialLoad) {
194
+ return;
195
+ }
196
+ const dataUnit = this.dataUnit;
197
+ const parentDataUnit = (_a = dataUnit === null || dataUnit === void 0 ? void 0 : dataUnit.getParentDataUnit) === null || _a === void 0 ? void 0 : _a.call(dataUnit);
198
+ if (((_b = parentDataUnit === null || parentDataUnit === void 0 ? void 0 : parentDataUnit.getSelectedRecord) === null || _b === void 0 ? void 0 : _b.call(parentDataUnit)) && ((_d = (_c = dataUnit === null || dataUnit === void 0 ? void 0 : dataUnit.records) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : 0) === 0) {
199
+ this._didInitialLoad = true;
200
+ (_e = dataUnit === null || dataUnit === void 0 ? void 0 : dataUnit.loadData) === null || _e === void 0 ? void 0 : _e.call(dataUnit);
201
+ }
179
202
  }
180
203
  getFormFields() {
181
204
  var _a, _b, _c;