@sankhyalabs/sankhyablocks 0.0.0-bugfix-dev-KB-74246.2 → 0.0.0-bugfix-dev-KB-80932.1

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 (167) hide show
  1. package/dist/cjs/{ConfigStorage-9b965af9.js → ConfigStorage-d024aec8.js} +2 -2
  2. package/dist/cjs/{ContinuousInsertUtils-42636ac1.js → ContinuousInsertUtils-54d44192.js} +5 -5
  3. package/dist/cjs/{DataFetcher-e059eb72.js → DataFetcher-65879b2c.js} +188 -56
  4. package/dist/cjs/{SnkFormConfigManager-46e90d8d.js → SnkFormConfigManager-ae3185b2.js} +6 -8
  5. package/dist/cjs/{auth-fetcher-a78242d1.js → auth-fetcher-8480751c.js} +1 -1
  6. package/dist/cjs/{dataunit-fetcher-228016f4.js → dataunit-fetcher-8ea97d88.js} +2 -2
  7. package/dist/cjs/{form-config-fetcher-91fba2b1.js → form-config-fetcher-90126e4c.js} +1 -1
  8. package/dist/cjs/index-f9e81701.js +4 -0
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/cjs/{pesquisa-fetcher-2ec4811b.js → pesquisa-fetcher-f3454c23.js} +176 -1
  11. package/dist/cjs/pesquisa-grid_2.cjs.entry.js +133 -0
  12. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  13. package/dist/cjs/snk-actions-button_5.cjs.entry.js +12 -10
  14. package/dist/cjs/snk-application.cjs.entry.js +144 -21
  15. package/dist/cjs/snk-attach.cjs.entry.js +5 -5
  16. package/dist/cjs/snk-config-options_3.cjs.entry.js +4 -4
  17. package/dist/cjs/snk-crud.cjs.entry.js +8 -7
  18. package/dist/cjs/snk-data-exporter.cjs.entry.js +25 -12
  19. package/dist/cjs/{snk-data-unit-3d9b6ed4.js → snk-data-unit-72ef8777.js} +1 -1
  20. package/dist/cjs/snk-data-unit.cjs.entry.js +3 -3
  21. package/dist/cjs/snk-detail-view.cjs.entry.js +7 -7
  22. package/dist/cjs/snk-filter-bar_4.cjs.entry.js +24 -10
  23. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  24. package/dist/cjs/snk-grid.cjs.entry.js +9 -8
  25. package/dist/cjs/{snk-guides-viewer-7d85e2fb.js → snk-guides-viewer-ea5d0907.js} +5 -5
  26. package/dist/cjs/snk-guides-viewer.cjs.entry.js +7 -7
  27. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  28. package/dist/cjs/snk-pesquisa.cjs.entry.js +123 -31
  29. package/dist/cjs/snk-simple-crud.cjs.entry.js +15 -10
  30. package/dist/collection/collection-manifest.json +2 -0
  31. package/dist/collection/components/snk-actions-button/actions/index.js +4 -4
  32. package/dist/collection/components/snk-application/request-listener/DebouncedRequestListener.js +4 -3
  33. package/dist/collection/components/snk-application/snk-application.css +34 -0
  34. package/dist/collection/components/snk-application/snk-application.js +197 -14
  35. package/dist/collection/components/snk-crud/snk-crud.js +39 -20
  36. package/dist/collection/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.js +8 -2
  37. package/dist/collection/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.js +11 -4
  38. package/dist/collection/components/snk-data-exporter/interfaces/IExporterProvider.js +1 -1
  39. package/dist/collection/components/snk-data-exporter/utils/ParserExport.js +1 -1
  40. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +40 -8
  41. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +4 -6
  42. package/dist/collection/components/snk-grid/snk-grid.js +39 -20
  43. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.css +10 -0
  44. package/dist/collection/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.js +190 -0
  45. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.css +25 -0
  46. package/dist/collection/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.js +179 -0
  47. package/dist/collection/components/snk-pesquisa/pesquisaHelper.js +89 -0
  48. package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +24 -5
  49. package/dist/collection/components/snk-pesquisa/snk-pesquisa.js +186 -32
  50. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +44 -21
  51. package/dist/collection/components/snk-simple-form-config/snk-simple-form-config.js +3 -1
  52. package/dist/collection/lib/dataUnit/dataUnitInMemoryUtils.js +1 -1
  53. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +89 -3
  54. package/dist/components/ContinuousInsertUtils.js +2 -3
  55. package/dist/components/DataFetcher.js +188 -56
  56. package/dist/components/ISave.js +346 -1
  57. package/dist/components/SnkFormConfigManager.js +4 -6
  58. package/dist/components/dataunit-fetcher.js +1 -1
  59. package/dist/components/index.d.ts +2 -0
  60. package/dist/components/index.js +2 -0
  61. package/dist/components/pesquisa-grid.d.ts +11 -0
  62. package/dist/components/pesquisa-grid.js +6 -0
  63. package/dist/components/pesquisa-grid2.js +86 -0
  64. package/dist/components/pesquisa-tree.d.ts +11 -0
  65. package/dist/components/pesquisa-tree.js +6 -0
  66. package/dist/components/pesquisa-tree2.js +82 -0
  67. package/dist/components/snk-actions-button2.js +4 -5
  68. package/dist/components/snk-application2.js +159 -20
  69. package/dist/components/snk-attach2.js +0 -1
  70. package/dist/components/snk-crud.js +5 -4
  71. package/dist/components/snk-data-exporter2.js +21 -9
  72. package/dist/components/snk-detail-view2.js +0 -1
  73. package/dist/components/snk-filter-bar2.js +23 -8
  74. package/dist/components/snk-grid2.js +5 -4
  75. package/dist/components/snk-pesquisa2.js +136 -33
  76. package/dist/components/snk-simple-crud2.js +11 -6
  77. package/dist/components/snk-simple-form-config2.js +4 -3
  78. package/dist/components/teste-pesquisa.js +13 -1
  79. package/dist/esm/{ConfigStorage-ff99377a.js → ConfigStorage-373bb440.js} +2 -2
  80. package/dist/esm/{ContinuousInsertUtils-071e0b6a.js → ContinuousInsertUtils-25e7bd9a.js} +5 -5
  81. package/dist/esm/{DataFetcher-5034df59.js → DataFetcher-5221b992.js} +188 -56
  82. package/dist/esm/{SnkFormConfigManager-035f2975.js → SnkFormConfigManager-b65e6db0.js} +6 -8
  83. package/dist/esm/{auth-fetcher-0b78ca31.js → auth-fetcher-e32fe8a4.js} +1 -1
  84. package/dist/esm/{dataunit-fetcher-56cb648b.js → dataunit-fetcher-8dd93d8b.js} +2 -2
  85. package/dist/esm/{form-config-fetcher-0c2620ef.js → form-config-fetcher-126e2471.js} +1 -1
  86. package/dist/esm/index-a7d3d3f1.js +4 -0
  87. package/dist/esm/loader.js +1 -1
  88. package/dist/{components/pesquisa-fetcher.js → esm/pesquisa-fetcher-0af41f09.js} +177 -3
  89. package/dist/esm/pesquisa-grid_2.entry.js +128 -0
  90. package/dist/esm/sankhyablocks.js +1 -1
  91. package/dist/esm/snk-actions-button_5.entry.js +12 -10
  92. package/dist/esm/snk-application.entry.js +146 -23
  93. package/dist/esm/snk-attach.entry.js +5 -5
  94. package/dist/esm/snk-config-options_3.entry.js +4 -4
  95. package/dist/esm/snk-crud.entry.js +8 -7
  96. package/dist/esm/snk-data-exporter.entry.js +25 -12
  97. package/dist/esm/{snk-data-unit-9fa7d2b9.js → snk-data-unit-11a49fc3.js} +1 -1
  98. package/dist/esm/snk-data-unit.entry.js +3 -3
  99. package/dist/esm/snk-detail-view.entry.js +7 -7
  100. package/dist/esm/snk-filter-bar_4.entry.js +25 -11
  101. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  102. package/dist/esm/snk-grid.entry.js +9 -8
  103. package/dist/esm/{snk-guides-viewer-2fd50f6b.js → snk-guides-viewer-830f5fb9.js} +5 -5
  104. package/dist/esm/snk-guides-viewer.entry.js +7 -7
  105. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  106. package/dist/esm/snk-pesquisa.entry.js +123 -31
  107. package/dist/esm/snk-simple-crud.entry.js +15 -10
  108. package/dist/sankhyablocks/p-05b6ff91.js +1 -0
  109. package/dist/sankhyablocks/p-09067bee.entry.js +1 -0
  110. package/dist/sankhyablocks/p-0cda2226.entry.js +11 -0
  111. package/dist/sankhyablocks/{p-acca8a69.js → p-1435701f.js} +1 -1
  112. package/dist/sankhyablocks/{p-4c5fde50.js → p-171b7623.js} +1 -1
  113. package/dist/sankhyablocks/{p-763edad2.js → p-19dc71e9.js} +1 -1
  114. package/dist/sankhyablocks/{p-0d2a2e9e.entry.js → p-1a91d1f3.entry.js} +1 -1
  115. package/dist/sankhyablocks/{p-e9432f45.entry.js → p-1cf39cfd.entry.js} +1 -1
  116. package/dist/sankhyablocks/{p-e7067256.entry.js → p-254c59d2.entry.js} +1 -1
  117. package/dist/sankhyablocks/p-422eb699.entry.js +1 -0
  118. package/dist/sankhyablocks/{p-c629c07a.entry.js → p-469384a2.entry.js} +1 -1
  119. package/dist/sankhyablocks/p-54f5354a.entry.js +1 -0
  120. package/dist/sankhyablocks/{p-342eeb3b.js → p-60e4db34.js} +1 -1
  121. package/dist/sankhyablocks/p-618a29ed.entry.js +1 -0
  122. package/dist/sankhyablocks/p-798386c7.js +6 -0
  123. package/dist/sankhyablocks/{p-35882caf.entry.js → p-82ee6dc3.entry.js} +1 -1
  124. package/dist/sankhyablocks/{p-c271fbf1.js → p-8a1ee5b5.js} +1 -1
  125. package/dist/sankhyablocks/p-8bd86610.entry.js +1 -0
  126. package/dist/sankhyablocks/p-a3803d7c.entry.js +1 -0
  127. package/dist/sankhyablocks/p-d62228fb.js +1 -0
  128. package/dist/sankhyablocks/p-d92d4f91.entry.js +1 -0
  129. package/dist/sankhyablocks/{p-47d24ac8.js → p-ddefbbc7.js} +1 -1
  130. package/dist/sankhyablocks/p-e5430b29.entry.js +1 -0
  131. package/dist/sankhyablocks/p-f0b9303b.js +1 -0
  132. package/dist/sankhyablocks/p-f258690a.entry.js +1 -0
  133. package/dist/sankhyablocks/{p-5136d9f0.entry.js → p-f975370f.entry.js} +1 -1
  134. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  135. package/dist/types/components/snk-application/snk-application.d.ts +22 -4
  136. package/dist/types/components/snk-crud/snk-crud.d.ts +8 -4
  137. package/dist/types/components/snk-data-exporter/exporter-strategy/ClientSideExporterStrategy.d.ts +1 -0
  138. package/dist/types/components/snk-data-exporter/exporter-strategy/ServerSideExporterStrategy.d.ts +1 -0
  139. package/dist/types/components/snk-data-exporter/utils/ParserExport.d.ts +1 -1
  140. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +6 -1
  141. package/dist/types/components/snk-grid/snk-grid.d.ts +8 -4
  142. package/dist/types/components/snk-pesquisa/pesquisa-grid/pesquisa-grid.d.ts +38 -0
  143. package/dist/types/components/snk-pesquisa/pesquisa-tree/pesquisa-tree.d.ts +29 -0
  144. package/dist/types/components/snk-pesquisa/pesquisaHelper.d.ts +19 -0
  145. package/dist/types/components/snk-pesquisa/snk-pesquisa.d.ts +36 -1
  146. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +8 -1
  147. package/dist/types/components/snk-simple-form-config/snk-simple-form-config.d.ts +1 -0
  148. package/dist/types/components.d.ts +206 -23
  149. package/dist/types/lib/http/data-fetcher/fetchers/pesquisa-fetcher.d.ts +10 -1
  150. package/package.json +1 -1
  151. package/react/components.d.ts +2 -0
  152. package/react/components.js +2 -0
  153. package/react/components.js.map +1 -1
  154. package/dist/esm/pesquisa-fetcher-24e5bba0.js +0 -172
  155. package/dist/sankhyablocks/p-00278e07.js +0 -1
  156. package/dist/sankhyablocks/p-262583c6.entry.js +0 -1
  157. package/dist/sankhyablocks/p-29643bef.entry.js +0 -1
  158. package/dist/sankhyablocks/p-365d8ed4.entry.js +0 -1
  159. package/dist/sankhyablocks/p-399e1b74.entry.js +0 -1
  160. package/dist/sankhyablocks/p-65650e05.entry.js +0 -1
  161. package/dist/sankhyablocks/p-70ed0b0f.js +0 -1
  162. package/dist/sankhyablocks/p-82274cb0.js +0 -1
  163. package/dist/sankhyablocks/p-8cf0a9fe.entry.js +0 -1
  164. package/dist/sankhyablocks/p-d1791da2.entry.js +0 -1
  165. package/dist/sankhyablocks/p-e6683406.js +0 -6
  166. package/dist/sankhyablocks/p-eda55eef.entry.js +0 -11
  167. package/dist/sankhyablocks/p-ff6c8f52.entry.js +0 -1
@@ -1,5 +1,8 @@
1
- import { ObjectUtils, StringUtils, ElementIDUtils } from '@sankhyalabs/core';
1
+ import { ElementIDUtils, ObjectUtils, StringUtils } from '@sankhyalabs/core';
2
2
  import { h, Host } from '@stencil/core';
3
+ import { buildGridMetadata } from './pesquisaHelper';
4
+ import { PesquisaFetcher } from '../../lib';
5
+ import { EzScrollDirection } from '@sankhyalabs/ezui/dist/collection/components/ez-scroller/EzScrollDirection';
3
6
  export class SnkPesquisa {
4
7
  constructor() {
5
8
  this._mdByName = {};
@@ -11,11 +14,18 @@ export class SnkPesquisa {
11
14
  this._changeDeboucingTimeout = null;
12
15
  this._limitCharsToSearch = 3;
13
16
  this._deboucingTime = 450;
17
+ this._gridDataSource = [];
18
+ this.pesquisaFetcher = new PesquisaFetcher();
14
19
  this._itemList = undefined;
15
20
  this._startLoading = false;
21
+ this._presentationMode = "list";
16
22
  this.searchLoader = undefined;
23
+ this.treeLoader = undefined;
17
24
  this.selectItem = undefined;
25
+ this.entityName = undefined;
18
26
  this.argument = undefined;
27
+ this.isHierarchyEntity = false;
28
+ this.allowsNonAnalytic = false;
19
29
  }
20
30
  observeArgument() {
21
31
  if (this._textInput) {
@@ -53,36 +63,42 @@ export class SnkPesquisa {
53
63
  this._startLoading = true;
54
64
  this.searchLoader(argument)
55
65
  .then((resp) => {
66
+ if (!resp)
67
+ return;
68
+ this.processSearchResponse(resp);
69
+ }).finally(() => {
56
70
  this._startLoading = false;
57
- if (resp) {
58
- resp = ObjectUtils.stringToObject(resp.json.$);
59
- let descriptionField = resp.descriptionField;
60
- let pkField = resp.pkField;
61
- if (pkField) {
62
- let newItemList = [];
63
- resp.data.forEach((item) => {
64
- var _a;
65
- let fieldsMetadata = this.filterFieldsMetadata(resp, item);
66
- let fields = this.buildFirstFields(item['__matchFields'], fieldsMetadata);
67
- let exibitionItem = {
68
- key: this.highlightValue(item['__matchFields'], (_a = item[pkField]) === null || _a === void 0 ? void 0 : _a.toString(), fields, true),
69
- title: descriptionField ? this.highlightValue(item['__matchFields'], item[descriptionField], fields, true) : "",
70
- details: this.buildDetails(fields, item)
71
- };
72
- newItemList.push(exibitionItem);
73
- });
74
- this._itemList = newItemList;
75
- }
76
- }
77
- }).catch((error) => {
78
- this._startLoading = false;
79
- this._itemList = [];
80
- console.warn(error);
81
71
  });
82
72
  }
83
73
  }
74
+ processSearchResponse(resp) {
75
+ resp = ObjectUtils.stringToObject(resp.json.$);
76
+ let descriptionField = resp.descriptionField;
77
+ let pkField = resp.pkField;
78
+ if (!pkField)
79
+ return;
80
+ this._gridMetadata = buildGridMetadata(resp);
81
+ this._gridDataSource = [...resp.data];
82
+ this._pkField = pkField;
83
+ this._descriptionField = descriptionField;
84
+ this._itemList = this.buildCardItemList(resp, pkField, descriptionField);
85
+ }
86
+ buildCardItemList(resp, pkField, descriptionField) {
87
+ var _a;
88
+ let newItemList = (_a = resp.data) === null || _a === void 0 ? void 0 : _a.map((item) => {
89
+ var _a;
90
+ let fieldsMetadata = this.filterFieldsMetadata(resp, item);
91
+ let fields = this.buildFirstFields(item['__matchFields'], fieldsMetadata);
92
+ return {
93
+ key: this.highlightValue(item['__matchFields'], (_a = item[pkField]) === null || _a === void 0 ? void 0 : _a.toString(), fields, true),
94
+ title: descriptionField ? this.highlightValue(item['__matchFields'], item[descriptionField], fields, true) : '',
95
+ details: this.buildDetails(fields, item),
96
+ };
97
+ });
98
+ return newItemList;
99
+ }
84
100
  filterFieldsMetadata(resp, item) {
85
- let fieldsMetadata = resp.fieldsMetadata.filter((field) => {
101
+ return resp.fieldsMetadata.filter((field) => {
86
102
  let accept = !StringUtils.isEmpty(item[field.fieldName]) &&
87
103
  field.visible !== false &&
88
104
  field.type !== 'B' &&
@@ -99,7 +115,6 @@ export class SnkPesquisa {
99
115
  }
100
116
  return accept;
101
117
  });
102
- return fieldsMetadata;
103
118
  }
104
119
  removeAtIndex(array, index) {
105
120
  if (index >= 0 && index < array.length) {
@@ -257,6 +272,7 @@ export class SnkPesquisa {
257
272
  this.selectItem(option);
258
273
  }
259
274
  onChangeValue(event) {
275
+ var _a;
260
276
  this.clearDeboucingTimeout();
261
277
  if (this._startLoading) {
262
278
  this._changeDeboucingTimeout = setTimeout(() => {
@@ -265,6 +281,10 @@ export class SnkPesquisa {
265
281
  return;
266
282
  }
267
283
  this.argument = (event.detail || "").trim();
284
+ if (this.isHierarchyEntity && this._presentationMode === 'list') {
285
+ (_a = this._pesquisaTree) === null || _a === void 0 ? void 0 : _a.applyFilter();
286
+ return;
287
+ }
268
288
  const argumentNumber = this.getArgumentNumber();
269
289
  if (this.argument && (!isNaN(argumentNumber) || this.argument.length >= this._limitCharsToSearch)) {
270
290
  this._changeDeboucingTimeout = setTimeout(() => {
@@ -295,16 +315,77 @@ export class SnkPesquisa {
295
315
  : 'Nenhum registro encontrado'
296
316
  : 'Os resultados de sua pesquisa aparecerão aqui...';
297
317
  }
298
- componentDidLoad() {
318
+ async componentWillLoad() {
319
+ const mode = await this.pesquisaFetcher.loadPresentationConfig(this.entityName);
320
+ this._presentationMode = mode === 'list' ? 'list' : 'table';
321
+ }
322
+ async componentDidLoad() {
299
323
  ElementIDUtils.addIDInfo(this._element);
300
324
  }
325
+ async onClickList() {
326
+ this._presentationMode = this._presentationMode === 'list' ? 'table' : 'list';
327
+ await this.pesquisaFetcher.savePresentationConfig(this.entityName, this._presentationMode);
328
+ }
329
+ enableListButton() {
330
+ var _a;
331
+ return ((_a = this._itemList) === null || _a === void 0 ? void 0 : _a.length) > 0;
332
+ }
333
+ //Os limites de exibição são diferentes para lista e grade
334
+ hideLimitMessage() {
335
+ if (!this._itemList)
336
+ return true;
337
+ if (this._presentationMode === "list") {
338
+ if (this.isHierarchyEntity)
339
+ return true;
340
+ return this._itemList.length <= 100;
341
+ }
342
+ return this._itemList.length <= 150;
343
+ }
344
+ hideRecordsMessage() {
345
+ return (this._presentationMode === "list" && this.isHierarchyEntity);
346
+ }
347
+ getButtonModeInfo() {
348
+ if (this._presentationMode === 'list') {
349
+ return {
350
+ iconName: 'table',
351
+ title: 'Modo grade',
352
+ };
353
+ }
354
+ if (this.isHierarchyEntity) {
355
+ return {
356
+ iconName: 'hierarchical-tree',
357
+ title: 'Modo árvore hierárquica',
358
+ };
359
+ }
360
+ return {
361
+ iconName: 'list',
362
+ title: 'Modo lista',
363
+ };
364
+ }
365
+ renderContent() {
366
+ if (!this._itemList)
367
+ return;
368
+ if (this._presentationMode === 'list') {
369
+ return this.isHierarchyEntity ? this.renderTree() : this.renderCards();
370
+ }
371
+ return this.renderPesquisaGrid();
372
+ }
373
+ renderTree() {
374
+ return h("ez-scroller", { direction: EzScrollDirection.VERTICAL }, h("pesquisa-tree", { ref: (element) => this._pesquisaTree = element, argument: this.argument, treeLoader: this.treeLoader, allowsNonAnalytic: this.allowsNonAnalytic, onPesquisaTreeSelectItem: ({ detail }) => this.selectItem(detail) }));
375
+ }
376
+ renderCards() {
377
+ return (h("ez-scroller", { direction: EzScrollDirection.VERTICAL }, h("div", { class: "snk-pesquisa__cards-container" }, this._itemList.map((item) => {
378
+ return (h("ez-card-item", { onEzClick: (event) => this.createOption(event.detail), item: item }));
379
+ }))));
380
+ }
381
+ renderPesquisaGrid() {
382
+ return h("pesquisa-grid", { metadata: this._gridMetadata, dataSource: this._gridDataSource, pkField: this._pkField, descriptionField: this._descriptionField, entityName: this.entityName, onPesquisaGridSelectItem: ({ detail }) => this.selectItem(detail) });
383
+ }
301
384
  render() {
302
385
  var _a;
303
386
  return (h(Host, null, h("div", { class: "snk-pesquisa" }, h("div", { class: "snk-pesquisa__input" }, h("ez-text-input", { label: "Buscar", class: "ez-margin-right--medium", canShowError: false, ref: (ref) => this._textInput = ref, onEzChange: (event) => this.onChangeValue(event), value: this.argument, "data-element-id": "searchInput" }, h("ez-icon", { slot: "leftIcon", iconName: "search" }), this.argument && ((_a = this._textInput) === null || _a === void 0 ? void 0 : _a.value)
304
387
  ? h("button", { slot: "rightIcon", class: "snk-pesquisa__btn", onClick: () => this.clearSearch() }, h("ez-icon", { iconName: "close" }))
305
- : undefined), h("ez-button", { class: "ez-button--primary", label: "Pesquisar", onClick: () => this.onClickSearch() })), h("label", { class: "snk-pesquisa__records" }, this.getMessageView()), h("div", { class: "snk-pesquisa__content" }, this._itemList && this._itemList.map((item) => {
306
- return (h("ez-card-item", { onEzClick: (event) => this.createOption(event.detail), item: item }));
307
- })))));
388
+ : undefined), h("ez-button", { class: "ez-button--primary", label: "Pesquisar", onClick: () => this.onClickSearch() }), h("ez-button", { class: "ez-margin-left--medium", mode: "icon", iconName: this.getButtonModeInfo().iconName, title: this.getButtonModeInfo().title, onClick: async () => await this.onClickList(), enabled: this.enableListButton() })), h("div", { class: "snk-pesquisa__records-label" }, h("label", { class: `snk-pesquisa__records ${this.hideRecordsMessage() ? "hidden" : ""}` }, this.getMessageView()), h("label", { class: `snk-pesquisa__records-limit ${this.hideLimitMessage() ? "hidden" : ""}` }, "Essa pesquisa foi limitada, existem mais resultados.")), h("div", { class: "snk-pesquisa__content" }, this.renderContent()))));
308
389
  }
309
390
  static get is() { return "snk-pesquisa"; }
310
391
  static get encapsulation() { return "scoped"; }
@@ -339,6 +420,25 @@ export class SnkPesquisa {
339
420
  "text": "Fun\u00E7\u00E3o respons\u00E1vel em carregar os itens do componente snk-pesquisa."
340
421
  }
341
422
  },
423
+ "treeLoader": {
424
+ "type": "unknown",
425
+ "mutable": false,
426
+ "complexType": {
427
+ "original": "(text: string) => Promise<any>",
428
+ "resolved": "(text: string) => Promise<any>",
429
+ "references": {
430
+ "Promise": {
431
+ "location": "global"
432
+ }
433
+ }
434
+ },
435
+ "required": false,
436
+ "optional": true,
437
+ "docs": {
438
+ "tags": [],
439
+ "text": "Fun\u00E7\u00E3o respons\u00E1vel por carregar a \u00E1rvore hier\u00E1rquica do componente"
440
+ }
441
+ },
342
442
  "selectItem": {
343
443
  "type": "unknown",
344
444
  "mutable": false,
@@ -359,6 +459,23 @@ export class SnkPesquisa {
359
459
  "text": "Fun\u00E7\u00E3o disparada ao selecionar um item."
360
460
  }
361
461
  },
462
+ "entityName": {
463
+ "type": "string",
464
+ "mutable": false,
465
+ "complexType": {
466
+ "original": "string",
467
+ "resolved": "string",
468
+ "references": {}
469
+ },
470
+ "required": false,
471
+ "optional": false,
472
+ "docs": {
473
+ "tags": [],
474
+ "text": "Nome da entidade onde a pesquisa \u00E9 aplicada."
475
+ },
476
+ "attribute": "entity-name",
477
+ "reflect": false
478
+ },
362
479
  "argument": {
363
480
  "type": "string",
364
481
  "mutable": true,
@@ -375,13 +492,50 @@ export class SnkPesquisa {
375
492
  },
376
493
  "attribute": "argument",
377
494
  "reflect": false
495
+ },
496
+ "isHierarchyEntity": {
497
+ "type": "boolean",
498
+ "mutable": false,
499
+ "complexType": {
500
+ "original": "boolean",
501
+ "resolved": "boolean",
502
+ "references": {}
503
+ },
504
+ "required": false,
505
+ "optional": false,
506
+ "docs": {
507
+ "tags": [],
508
+ "text": "Define se a popup de pesquisa possuir\u00E1 ou n\u00E3o modo Hierarquico."
509
+ },
510
+ "attribute": "is-hierarchy-entity",
511
+ "reflect": false,
512
+ "defaultValue": "false"
513
+ },
514
+ "allowsNonAnalytic": {
515
+ "type": "boolean",
516
+ "mutable": false,
517
+ "complexType": {
518
+ "original": "boolean",
519
+ "resolved": "boolean",
520
+ "references": {}
521
+ },
522
+ "required": false,
523
+ "optional": false,
524
+ "docs": {
525
+ "tags": [],
526
+ "text": "Define se permite sele\u00E7\u00E3o de items n\u00E3o anal\u00EDticos"
527
+ },
528
+ "attribute": "allows-non-analytic",
529
+ "reflect": false,
530
+ "defaultValue": "false"
378
531
  }
379
532
  };
380
533
  }
381
534
  static get states() {
382
535
  return {
383
536
  "_itemList": {},
384
- "_startLoading": {}
537
+ "_startLoading": {},
538
+ "_presentationMode": {}
385
539
  };
386
540
  }
387
541
  static get elementRef() { return "_element"; }
@@ -34,13 +34,14 @@ export class SnkSimpleCrud {
34
34
  this._config = undefined;
35
35
  this._fieldToGetFocus = undefined;
36
36
  this._customContainerId = `SNK-SIMPLE-CRUD-CUSTOM-CONTAINER-${StringUtils.generateUUID()}`;
37
+ this.enableLockManagerLoadingComp = false;
38
+ this.enableLockManagerTaskbarClick = false;
37
39
  this.dataState = undefined;
38
40
  this.dataUnit = undefined;
39
41
  this.entityName = undefined;
40
42
  this.mode = SIMPLE_CRUD_MODE.SERVER;
41
43
  this.gridConfig = undefined;
42
44
  this.formConfig = undefined;
43
- this.enableLockManger = false;
44
45
  this._formFields = [];
45
46
  this._fieldsProps = new Map();
46
47
  this._enableContinuousInsert = true;
@@ -718,8 +719,12 @@ export class SnkSimpleCrud {
718
719
  this.goToView(VIEW_MODE.FORM);
719
720
  }
720
721
  async initKeyboardManager() {
722
+ var _a;
721
723
  const keyboardManager = new KeyboardManager();
722
- const dataUnit = this.dataUnit || await this._snkDataUnit.getDataUnit();
724
+ const dataUnit = this.dataUnit || await ((_a = this._snkDataUnit) === null || _a === void 0 ? void 0 : _a.getDataUnit());
725
+ if (dataUnit == undefined) {
726
+ return;
727
+ }
723
728
  keyboardManager
724
729
  .bind("F7", () => dataUnit.saveData(), { description: "Salva os dados.", element: this._element })
725
730
  .bind("F8", dataUnit.addRecord.bind(dataUnit), { description: "Adiciona um novo registro.", element: this._element })
@@ -748,7 +753,7 @@ export class SnkSimpleCrud {
748
753
  }
749
754
  return (h("snk-data-unit", { ref: ref => this._snkDataUnit = ref, 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.handleDataUnitOnInsertionMode.bind(this), onDataUnitReady: (evt) => this.dataUnitReady.emit(evt.detail), ignoreSaveMessage: this._currentViewMode === VIEW_MODE.GRID, onMessagesBuilderUpdated: evt => this.messagesBuilder = evt.detail, onDataUnitFieldsHidded: this.updateFormConfig.bind(this), domainMessagesBuilder: this.domainMessagesBuilder }, h("header", null, h("slot", { name: "snkSimpleCrudHeader" })), h("section", { class: `ez-box ${this.outlineMode ? 'ez-box--outline' : 'ez-box--shadow'} simple-crud__container-section` }, 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)
750
755
  ? undefined
751
- : this._multiSelectionListDataSource, useEnterLikeTab: this.useEnterLikeTab, autoFocus: this.autoFocus, enableGridInsert: this.enableGridInsert, enableContinuousInsert: this._enableContinuousInsert, enableLockManger: this.enableLockManger, outlineMode: this.outlineMode }, this.renderTaskbarContent(), h("div", { slot: "footer" }, h("slot", { name: "snkSimpleCrudFooter" })))), h("stack-item", null, this.renderTaskbarContent(), h("ez-form", { ref: (ref) => this._form = ref, class: `ez-margin-top--large`, dataUnit: this.dataUnit, config: this.getFormConfig(), fieldToFocus: this._fieldToGetFocus, onEzFormSetFields: (evt) => this.handleFormSetFields(evt.detail), onEzFormRequestClearFieldToFocus: this.clearFieldToFocusHandler.bind(this) }), h("snk-simple-form-config", { ref: (ref) => this._snkSimpleFormConfig = ref, dataUnit: this.dataUnit, onSnkConfigSaved: this.handleFormConfigSaved.bind(this), configName: (_a = this.formLegacyConfigName) !== null && _a !== void 0 ? _a : this.configName })), 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() }))));
756
+ : this._multiSelectionListDataSource, useEnterLikeTab: this.useEnterLikeTab, autoFocus: this.autoFocus, enableGridInsert: this.enableGridInsert, enableContinuousInsert: this._enableContinuousInsert, enableLockManagerTaskbarClick: this.enableLockManagerTaskbarClick, enableLockManagerLoadingComp: this.enableLockManagerLoadingComp, outlineMode: this.outlineMode }, this.renderTaskbarContent(), h("div", { slot: "footer" }, h("slot", { name: "snkSimpleCrudFooter" })))), h("stack-item", null, this.renderTaskbarContent(), h("ez-form", { ref: (ref) => this._form = ref, class: `ez-margin-top--large`, dataUnit: this.dataUnit, config: this.getFormConfig(), fieldToFocus: this._fieldToGetFocus, onEzFormSetFields: (evt) => this.handleFormSetFields(evt.detail), onEzFormRequestClearFieldToFocus: this.clearFieldToFocusHandler.bind(this) }), h("snk-simple-form-config", { ref: (ref) => this._snkSimpleFormConfig = ref, dataUnit: this.dataUnit, onSnkConfigSaved: this.handleFormConfigSaved.bind(this), configName: (_a = this.formLegacyConfigName) !== null && _a !== void 0 ? _a : this.configName })), 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() }))));
752
757
  }
753
758
  static get is() { return "snk-simple-crud"; }
754
759
  static get encapsulation() { return "scoped"; }
@@ -764,6 +769,42 @@ export class SnkSimpleCrud {
764
769
  }
765
770
  static get properties() {
766
771
  return {
772
+ "enableLockManagerLoadingComp": {
773
+ "type": "boolean",
774
+ "mutable": false,
775
+ "complexType": {
776
+ "original": "boolean",
777
+ "resolved": "boolean",
778
+ "references": {}
779
+ },
780
+ "required": false,
781
+ "optional": true,
782
+ "docs": {
783
+ "tags": [],
784
+ "text": "Define se o componente deve usar o LockManager para controle de carregamento da aplica\u00E7\u00E3o"
785
+ },
786
+ "attribute": "enable-lock-manager-loading-comp",
787
+ "reflect": false,
788
+ "defaultValue": "false"
789
+ },
790
+ "enableLockManagerTaskbarClick": {
791
+ "type": "boolean",
792
+ "mutable": false,
793
+ "complexType": {
794
+ "original": "boolean",
795
+ "resolved": "boolean",
796
+ "references": {}
797
+ },
798
+ "required": false,
799
+ "optional": true,
800
+ "docs": {
801
+ "tags": [],
802
+ "text": "Ativa o gerenciamento de locks na grade pela Taskbar."
803
+ },
804
+ "attribute": "enable-lock-manager-taskbar-click",
805
+ "reflect": false,
806
+ "defaultValue": "false"
807
+ },
767
808
  "dataState": {
768
809
  "type": "unknown",
769
810
  "mutable": false,
@@ -884,24 +925,6 @@ export class SnkSimpleCrud {
884
925
  "text": ""
885
926
  }
886
927
  },
887
- "enableLockManger": {
888
- "type": "boolean",
889
- "mutable": false,
890
- "complexType": {
891
- "original": "boolean",
892
- "resolved": "boolean",
893
- "references": {}
894
- },
895
- "required": false,
896
- "optional": true,
897
- "docs": {
898
- "tags": [],
899
- "text": ""
900
- },
901
- "attribute": "enable-lock-manger",
902
- "reflect": false,
903
- "defaultValue": "false"
904
- },
905
928
  "multipleSelection": {
906
929
  "type": "boolean",
907
930
  "mutable": false,
@@ -13,6 +13,8 @@ export class SnkSimpleFormConfig {
13
13
  * Responsável por abrir o configurador.
14
14
  */
15
15
  async show() {
16
+ var _a;
17
+ await ((_a = this.ezDoubleListRef) === null || _a === void 0 ? void 0 : _a.resetSelectedLists());
16
18
  await this.initializeFormConfig();
17
19
  this.ezPopupRef.opened = true;
18
20
  }
@@ -78,7 +80,7 @@ export class SnkSimpleFormConfig {
78
80
  this.snkConfigSaved.emit();
79
81
  }
80
82
  render() {
81
- return (h("ez-popup", { ref: (ref) => this.ezPopupRef = ref, heightMode: 'auto', size: 'auto', ezTitle: 'Configurar formul\u00E1rio' }, h("div", { class: 'config-container' }, h("div", { class: 'config-lists' }, h("ez-double-list", { leftList: this.avaliableFields, leftTitle: 'Campos disponíveis', rightList: this.selectedFields, rightTitle: 'Campos selecionados', onEzRightListChanged: ({ detail }) => this.fieldsToSave = [...detail], entityLabel: 'campo', entityLabelPlural: 'campos' })), h("div", { class: 'config-actions' }, h("ez-button", { label: 'Restaurar', onClick: this.handleResetConfigs.bind(this), size: 'small' }), h("ez-button", { label: 'Cancelar', onClick: this.handleCancel.bind(this), size: 'small' }), h("ez-button", { label: 'Salvar', class: 'ez-button--primary', onClick: this.handleSave.bind(this), size: 'small' })))));
83
+ return (h("ez-popup", { ref: (ref) => this.ezPopupRef = ref, heightMode: 'auto', size: 'auto', ezTitle: 'Configurar formul\u00E1rio' }, h("div", { class: 'config-container' }, h("div", { class: 'config-lists' }, h("ez-double-list", { ref: (ref) => this.ezDoubleListRef = ref, leftList: this.avaliableFields, leftTitle: 'Campos disponíveis', rightList: this.selectedFields, rightTitle: 'Campos selecionados', onEzRightListChanged: ({ detail }) => this.fieldsToSave = [...detail], entityLabel: 'campo', entityLabelPlural: 'campos' })), h("div", { class: 'config-actions' }, h("ez-button", { label: 'Restaurar', onClick: this.handleResetConfigs.bind(this), size: 'small' }), h("ez-button", { label: 'Cancelar', onClick: this.handleCancel.bind(this), size: 'small' }), h("ez-button", { label: 'Salvar', class: 'ez-button--primary', onClick: this.handleSave.bind(this), size: 'small' })))));
82
84
  }
83
85
  static get is() { return "snk-simple-form-config"; }
84
86
  static get originalStyleUrls() {
@@ -23,7 +23,7 @@ export function buildLoadDataResponse(recordsIn, dataUnit, request) {
23
23
  };
24
24
  return Promise.resolve({
25
25
  records: getPagesByRecords(records, offset, limit),
26
- paginationInfo: buildPaginationInfo(paginationInfoBuilderParams),
26
+ paginationInfo: dataUnit.pageSize ? buildPaginationInfo(paginationInfoBuilderParams) : undefined,
27
27
  });
28
28
  }
29
29
  export function applySorting(records, dataUnit, sorting) {
@@ -1,6 +1,7 @@
1
- import { ApplicationContext, DataType, ErrorException } from "@sankhyalabs/core";
2
- import { gql } from "graphql-request";
3
- import { DataFetcher } from "../DataFetcher";
1
+ import { parseGridConfig, parseLegacyTree } from '../../../../components/snk-pesquisa/pesquisaHelper';
2
+ import { ApplicationContext, DataType, ErrorException } from '@sankhyalabs/core';
3
+ import { gql } from 'graphql-request';
4
+ import { DataFetcher } from '../DataFetcher';
4
5
  export class PesquisaFetcher {
5
6
  constructor() {
6
7
  this._defaultPageSize = 100;
@@ -150,6 +151,91 @@ export class PesquisaFetcher {
150
151
  return;
151
152
  return listener[listenerType]({ argument, criteria, searchOptions });
152
153
  }
154
+ async loadPresentationConfig(entityName) {
155
+ var _a, _b;
156
+ let payload = buildLoadConfig(entityName);
157
+ const response = await DataFetcher.get().callServiceBroker("SystemUtilsSP.getConf", JSON.stringify(payload));
158
+ return (_b = (_a = response === null || response === void 0 ? void 0 : response.config) === null || _a === void 0 ? void 0 : _a.lastUsedMode) !== null && _b !== void 0 ? _b : 'list';
159
+ }
160
+ async savePresentationConfig(entityName, lastUsedMode) {
161
+ let payload = buildSaveConfig(entityName, lastUsedMode);
162
+ await DataFetcher.get().callServiceBroker("SystemUtilsSP.saveConf", JSON.stringify(payload));
163
+ }
164
+ async loadPesquisaGridConfig(entityName) {
165
+ const payload = buildLoadGridConfigPayload(entityName);
166
+ const response = await DataFetcher.get().callServiceBroker("GridConfig.getGridConfigFromJson", JSON.stringify(payload));
167
+ return parseGridConfig(response);
168
+ }
169
+ async savePesquisaGridConfig(entityName, columns) {
170
+ const payload = buildSaveGridConfigPayload(entityName, columns);
171
+ await DataFetcher.get().callServiceBroker("GridConfig.saveGridConfigFromJSON", JSON.stringify(payload));
172
+ }
173
+ async loadTree(entityName, argument, criteria, searchOptions) {
174
+ const requestBody = this.buildLoadTreeRequestBody(entityName, argument, criteria, searchOptions);
175
+ const response = await DataFetcher.get().callServiceBroker("Pesquisa.getStructuredData", JSON.stringify(requestBody));
176
+ return parseLegacyTree(response);
177
+ }
178
+ buildLoadTreeRequestBody(entityName, argument, criteria, searchOptions) {
179
+ var _a, _b, _c;
180
+ const listenerResult = this.applySearchListener(SearchListenerType.beforeSearch, entityName, argument, criteria, searchOptions);
181
+ console.log("criteria: ", criteria);
182
+ const incomeSearchOptions = (_a = listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.searchOptions) !== null && _a !== void 0 ? _a : searchOptions;
183
+ const rootEntity = incomeSearchOptions === null || incomeSearchOptions === void 0 ? void 0 : incomeSearchOptions.rootEntity;
184
+ const codeFieldName = incomeSearchOptions === null || incomeSearchOptions === void 0 ? void 0 : incomeSearchOptions.codeFieldName;
185
+ const expression = (_b = listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.criteria) === null || _b === void 0 ? void 0 : _b.expression;
186
+ const params = (_c = listenerResult === null || listenerResult === void 0 ? void 0 : listenerResult.criteria) === null || _c === void 0 ? void 0 : _c.params;
187
+ const instancia = {
188
+ 'nome': entityName,
189
+ 'nomeInstanciaLocal': rootEntity,
190
+ 'codeFieldName': codeFieldName,
191
+ };
192
+ if (expression) {
193
+ instancia['criterioLiteral'] = {
194
+ 'expressao': {
195
+ '$': expression,
196
+ },
197
+ 'parametro': params,
198
+ };
199
+ }
200
+ return {
201
+ 'instancia': instancia,
202
+ };
203
+ }
204
+ }
205
+ function buildLoadGridConfigPayload(entityName) {
206
+ return {
207
+ 'gridConfig': {
208
+ 'configName': `GrdCfgHtml5:grdcfg.dynaform.pesquisa.${entityName}`,
209
+ },
210
+ };
211
+ }
212
+ function buildSaveGridConfigPayload(entityName, columns) {
213
+ const field = {};
214
+ columns === null || columns === void 0 ? void 0 : columns.forEach((col, index) => field[`field${index}`] = col);
215
+ return {
216
+ 'gridConfig': {
217
+ 'compactMode': true,
218
+ 'configName': `GrdCfgHtml5:grdcfg.dynaform.pesquisa.${entityName}`,
219
+ field,
220
+ },
221
+ };
222
+ }
223
+ function buildLoadConfig(entityName) {
224
+ return {
225
+ 'config': {
226
+ 'chave': `PesquisaContent:${entityName}`,
227
+ 'tipo': 'T',
228
+ },
229
+ };
230
+ }
231
+ function buildSaveConfig(entityName, lastUsedMode) {
232
+ return {
233
+ 'config': {
234
+ lastUsedMode,
235
+ 'chave': `PesquisaContent:${entityName}`,
236
+ 'tipo': 'T',
237
+ }
238
+ };
153
239
  }
154
240
  function convertParamType(dataType) {
155
241
  //Alerta: Cuidado pra não contaminar o DataType com a implementação
@@ -1,7 +1,6 @@
1
1
  import { D as DataFetcher } from './DataFetcher.js';
2
- import './pesquisa-fetcher.js';
3
- import { SortMode, ApplicationContext, UserInterface, DateUtils, ObjectUtils, StringUtils, NumberUtils, DataType } from '@sankhyalabs/core';
4
2
  import './ISave.js';
3
+ import { SortMode, ApplicationContext, UserInterface, DateUtils, ObjectUtils, StringUtils, NumberUtils, DataType } from '@sankhyalabs/core';
5
4
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
6
5
  import { UserInterface as UserInterface$1 } from '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
7
6
  import { P as PreloadManager } from './dataunit-fetcher.js';
@@ -284,7 +283,7 @@ class CommonsExporter {
284
283
  const columnData = {
285
284
  label: column.label,
286
285
  id: column.name,
287
- width: column.width,
286
+ width: (fieldData === null || fieldData === void 0 ? void 0 : fieldData.userInterface) === UserInterface$1.SEARCH ? 60 : column.width,
288
287
  type: fieldData === null || fieldData === void 0 ? void 0 : fieldData.dataType,
289
288
  userInterface: fieldData === null || fieldData === void 0 ? void 0 : fieldData.userInterface,
290
289
  customFormatter