@sankhyalabs/sankhyablocks 8.15.0-rc.1 → 8.15.0-rc.10

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 (216) hide show
  1. package/dist/cjs/{ConfigStorage-302bbbd4.js → ConfigStorage-34be11ce.js} +70 -7
  2. package/dist/cjs/{DataFetcher-ba94ed5b.js → DataFetcher-99f0f6ed.js} +5 -3
  3. package/dist/cjs/{SnkFormConfigManager-71c4768e.js → SnkFormConfigManager-6211fb28.js} +7 -2
  4. package/dist/cjs/{SnkMessageBuilder-e7dcf408.js → SnkMessageBuilder-141aa18d.js} +2 -1
  5. package/dist/cjs/SnkMultiSelectionListDataSource-5213120b.js +140 -0
  6. package/dist/cjs/{auth-fetcher-c8467c07.js → auth-fetcher-5161d082.js} +1 -1
  7. package/dist/cjs/{form-config-fetcher-df043d3d.js → form-config-fetcher-9f1a13ca.js} +1 -1
  8. package/dist/cjs/index-f9e81701.js +2 -10
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/cjs/{pesquisa-fetcher-e4a7c4c3.js → pesquisa-fetcher-94f6b316.js} +235 -24
  11. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  12. package/dist/cjs/{snk-actions-button_2.cjs.entry.js → snk-actions-button_4.cjs.entry.js} +520 -5
  13. package/dist/cjs/snk-application.cjs.entry.js +34 -8
  14. package/dist/cjs/snk-attach.cjs.entry.js +7 -8
  15. package/dist/cjs/snk-crud.cjs.entry.js +16 -10
  16. package/dist/cjs/snk-data-exporter.cjs.entry.js +8 -4
  17. package/dist/cjs/{snk-data-unit-82c08a8c.js → snk-data-unit-6026a9f7.js} +1 -1
  18. package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
  19. package/dist/cjs/snk-detail-view.cjs.entry.js +9 -10
  20. package/dist/cjs/snk-entity-list.cjs.entry.js +5 -3
  21. package/dist/cjs/snk-filter-bar.cjs.entry.js +36 -7
  22. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +3 -3
  23. package/dist/cjs/snk-form-config.cjs.entry.js +47 -27
  24. package/dist/cjs/snk-form.cjs.entry.js +11 -4
  25. package/dist/cjs/snk-grid.cjs.entry.js +40 -22
  26. package/dist/cjs/{snk-guides-viewer-d32c096f.js → snk-guides-viewer-508bb6fe.js} +15 -9
  27. package/dist/cjs/snk-guides-viewer.cjs.entry.js +7 -8
  28. package/dist/cjs/snk-personalized-filter-editor.cjs.entry.js +3 -1
  29. package/dist/cjs/snk-personalized-filter.cjs.entry.js +3 -3
  30. package/dist/cjs/snk-simple-crud.cjs.entry.js +214 -23
  31. package/dist/cjs/snk-taskbar.cjs.entry.js +100 -14
  32. package/dist/cjs/{taskbar-elements-01b85b99.js → taskbar-elements-3ecd1278.js} +9 -9
  33. package/dist/collection/collection-manifest.json +6 -6
  34. package/dist/collection/components/snk-application/__mocks__/snk-application.js +7 -0
  35. package/dist/collection/components/snk-application/snk-application.js +51 -11
  36. package/dist/collection/components/snk-crud/snk-crud.js +95 -3
  37. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +2 -2
  38. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.css +11 -2
  39. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +27 -3
  40. package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +5 -1
  41. package/dist/collection/components/snk-entity-list/snk-entity-list.js +5 -3
  42. package/dist/collection/components/snk-filter-bar/filter-item/editors/snk-personalized-filter-editor/snk-personalized-filter-editor.js +3 -1
  43. package/dist/collection/components/snk-filter-bar/snk-filter-bar.css +23 -1
  44. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +116 -4
  45. package/dist/collection/components/snk-form/snk-form.js +25 -1
  46. package/dist/collection/components/{snk-form → snk-form-config}/SnkFormConfigManager.js +6 -1
  47. package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.js +50 -30
  48. package/dist/collection/components/snk-grid/snk-grid.js +103 -16
  49. package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.js +130 -123
  50. package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.js +1 -1
  51. package/dist/collection/components/snk-simple-crud/regular-buttons.js +3 -0
  52. package/dist/collection/components/snk-simple-crud/snk-simple-crud.css +5 -0
  53. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +325 -17
  54. package/dist/collection/components/snk-taskbar/elements/taskbar-actions-button/taskbar-actions-button.js +1 -1
  55. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +9 -9
  56. package/dist/collection/components/snk-taskbar/snk-taskbar.css +17 -0
  57. package/dist/collection/components/snk-taskbar/snk-taskbar.js +139 -13
  58. package/dist/collection/lib/configs/ConfigStorage.js +63 -3
  59. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +5 -3
  60. package/dist/collection/lib/http/data-fetcher/fetchers/parameters-fecher.js +21 -0
  61. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +6 -3
  62. package/dist/collection/lib/http/data-fetcher/fetchers/pesquisa-fetcher.js +4 -11
  63. package/dist/collection/lib/message/resources/snk-data-exporter.msg.js +2 -1
  64. package/dist/collection/lib/utils/CrudUtils.js +13 -1
  65. package/dist/components/ConfigStorage.js +68 -5
  66. package/dist/components/DataFetcher.js +5 -3
  67. package/dist/components/SnkFormConfigManager.js +5 -0
  68. package/dist/components/SnkMessageBuilder.js +2 -1
  69. package/dist/components/dataunit-fetcher.js +4 -11
  70. package/dist/components/field-search.js +93 -3
  71. package/dist/components/index.d.ts +6 -6
  72. package/dist/components/snk-application2.js +30 -1
  73. package/dist/components/snk-attach2.js +54 -12
  74. package/dist/components/snk-crud.js +15 -3
  75. package/dist/components/snk-data-exporter2.js +5 -1
  76. package/dist/components/snk-detail-view2.js +40 -7
  77. package/dist/components/snk-entity-list.js +5 -3
  78. package/dist/components/snk-filter-bar2.js +38 -5
  79. package/dist/components/snk-form-config2.js +46 -26
  80. package/dist/components/snk-form.js +8 -0
  81. package/dist/components/snk-grid-config2.js +128 -102
  82. package/dist/components/snk-grid2.js +41 -17
  83. package/dist/components/snk-personalized-filter-editor.js +3 -1
  84. package/dist/components/snk-simple-crud2.js +270 -28
  85. package/dist/components/snk-taskbar2.js +114 -24
  86. package/dist/components/taskbar-actions-button2.js +1 -1
  87. package/dist/esm/{ConfigStorage-4151acc8.js → ConfigStorage-101a2b4c.js} +70 -7
  88. package/dist/esm/{DataFetcher-aa159c5a.js → DataFetcher-a650ae58.js} +5 -3
  89. package/dist/esm/{SnkFormConfigManager-5c7d3771.js → SnkFormConfigManager-d86ba46f.js} +7 -2
  90. package/dist/esm/{SnkMessageBuilder-0fb796b9.js → SnkMessageBuilder-9747ddd2.js} +2 -1
  91. package/dist/esm/SnkMultiSelectionListDataSource-7e7eada5.js +133 -0
  92. package/dist/esm/{auth-fetcher-c05dc474.js → auth-fetcher-17dc5b5e.js} +1 -1
  93. package/dist/esm/{form-config-fetcher-36219cd3.js → form-config-fetcher-f121f880.js} +1 -1
  94. package/dist/esm/index-a7d3d3f1.js +2 -10
  95. package/dist/esm/loader.js +1 -1
  96. package/dist/esm/{pesquisa-fetcher-fa0c2540.js → pesquisa-fetcher-f05a12ca.js} +226 -16
  97. package/dist/esm/sankhyablocks.js +1 -1
  98. package/dist/esm/{snk-actions-button_2.entry.js → snk-actions-button_4.entry.js} +519 -6
  99. package/dist/esm/snk-application.entry.js +34 -8
  100. package/dist/esm/snk-attach.entry.js +6 -7
  101. package/dist/esm/snk-crud.entry.js +16 -10
  102. package/dist/esm/snk-data-exporter.entry.js +8 -4
  103. package/dist/esm/{snk-data-unit-5d201fb3.js → snk-data-unit-4c343635.js} +1 -1
  104. package/dist/esm/snk-data-unit.entry.js +2 -2
  105. package/dist/esm/snk-detail-view.entry.js +9 -10
  106. package/dist/esm/snk-entity-list.entry.js +5 -3
  107. package/dist/esm/snk-filter-bar.entry.js +36 -7
  108. package/dist/esm/snk-filter-modal-item.entry.js +3 -3
  109. package/dist/esm/snk-form-config.entry.js +48 -28
  110. package/dist/esm/snk-form.entry.js +11 -4
  111. package/dist/esm/snk-grid.entry.js +41 -23
  112. package/dist/esm/{snk-guides-viewer-f49613c6.js → snk-guides-viewer-18859840.js} +15 -9
  113. package/dist/esm/snk-guides-viewer.entry.js +7 -8
  114. package/dist/esm/snk-personalized-filter-editor.entry.js +3 -1
  115. package/dist/esm/snk-personalized-filter.entry.js +3 -3
  116. package/dist/esm/snk-simple-crud.entry.js +215 -24
  117. package/dist/esm/snk-taskbar.entry.js +101 -15
  118. package/dist/esm/{taskbar-elements-d4d0b424.js → taskbar-elements-2473c8ac.js} +9 -9
  119. package/dist/sankhyablocks/p-1f3174cb.entry.js +1 -0
  120. package/dist/sankhyablocks/p-1fa5a18c.entry.js +11 -0
  121. package/dist/sankhyablocks/p-20b46647.entry.js +1 -0
  122. package/dist/sankhyablocks/p-2897fb8c.js +1 -0
  123. package/dist/sankhyablocks/{p-05243555.js → p-2936303b.js} +1 -1
  124. package/dist/sankhyablocks/p-2b909f08.entry.js +1 -0
  125. package/dist/sankhyablocks/p-33718dfc.entry.js +1 -0
  126. package/dist/sankhyablocks/p-50783a8b.js +1 -0
  127. package/dist/sankhyablocks/p-5c0b53ce.js +56 -0
  128. package/dist/sankhyablocks/p-5dbc1a3f.js +1 -0
  129. package/dist/sankhyablocks/p-60fa6c7a.js +1 -0
  130. package/dist/sankhyablocks/p-64c1b368.entry.js +1 -0
  131. package/dist/sankhyablocks/{p-7f3c7b09.entry.js → p-6b28cc74.entry.js} +1 -1
  132. package/dist/sankhyablocks/{p-e0fd9555.entry.js → p-7ddd95b6.entry.js} +1 -1
  133. package/dist/sankhyablocks/p-7e05bd83.entry.js +1 -0
  134. package/dist/sankhyablocks/p-7f97fee2.entry.js +1 -0
  135. package/dist/sankhyablocks/{p-f3d1c48e.js → p-9a5d1b39.js} +1 -1
  136. package/dist/sankhyablocks/{p-0d7863ed.js → p-a13ccb86.js} +1 -1
  137. package/dist/sankhyablocks/p-ae4fc9a9.js +1 -0
  138. package/dist/sankhyablocks/p-b11aa1e0.entry.js +1 -0
  139. package/dist/sankhyablocks/p-b41a622a.entry.js +1 -0
  140. package/dist/sankhyablocks/p-b4de81ac.entry.js +1 -0
  141. package/dist/sankhyablocks/p-ba4871b5.entry.js +1 -0
  142. package/dist/sankhyablocks/{p-9695f78b.js → p-be75153c.js} +1 -1
  143. package/dist/sankhyablocks/p-d01ceda6.entry.js +1 -0
  144. package/dist/sankhyablocks/p-d304659d.entry.js +1 -0
  145. package/dist/sankhyablocks/p-d78d4062.js +65 -0
  146. package/dist/sankhyablocks/p-e4fb3308.entry.js +1 -0
  147. package/dist/sankhyablocks/p-e7dbe53a.entry.js +1 -0
  148. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  149. package/dist/types/components/snk-actions-button/subcomponents/snk-actions-form.d.ts +1 -1
  150. package/dist/types/components/snk-application/__mocks__/snk-application.d.ts +3 -0
  151. package/dist/types/components/snk-application/snk-application.d.ts +8 -0
  152. package/dist/types/components/snk-crud/snk-crud.d.ts +21 -0
  153. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +1 -1
  154. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +6 -1
  155. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +19 -1
  156. package/dist/types/components/snk-form/snk-form.d.ts +6 -1
  157. package/dist/types/components/{snk-form → snk-form-config}/SnkFormConfigManager.d.ts +1 -0
  158. package/dist/types/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.d.ts +5 -3
  159. package/dist/types/components/snk-grid/snk-grid.d.ts +20 -1
  160. package/dist/types/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.d.ts +11 -6
  161. package/dist/types/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.d.ts +1 -1
  162. package/dist/types/components/snk-simple-crud/regular-buttons.d.ts +3 -0
  163. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +61 -3
  164. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +28 -1
  165. package/dist/types/components.d.ts +193 -12
  166. package/dist/types/lib/configs/ConfigStorage.d.ts +21 -1
  167. package/dist/types/lib/http/data-fetcher/fetchers/parameters-fecher.d.ts +1 -0
  168. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
  169. package/dist/types/lib/utils/CrudUtils.d.ts +3 -0
  170. package/package.json +9 -2
  171. package/dist/cjs/PreloadManager-84466da6.js +0 -224
  172. package/dist/cjs/SnkMultiSelectionListDataSource-ba5838c2.js +0 -49
  173. package/dist/cjs/snk-grid-config.cjs.entry.js +0 -483
  174. package/dist/cjs/snk-select-box.cjs.entry.js +0 -25
  175. package/dist/esm/PreloadManager-c1c2f2b4.js +0 -222
  176. package/dist/esm/SnkMultiSelectionListDataSource-44494b0e.js +0 -43
  177. package/dist/esm/snk-grid-config.entry.js +0 -479
  178. package/dist/esm/snk-select-box.entry.js +0 -21
  179. package/dist/sankhyablocks/p-02e3a45b.entry.js +0 -1
  180. package/dist/sankhyablocks/p-094c30cb.js +0 -1
  181. package/dist/sankhyablocks/p-0ec5b2e5.js +0 -1
  182. package/dist/sankhyablocks/p-1d75d9f9.entry.js +0 -1
  183. package/dist/sankhyablocks/p-2582537c.entry.js +0 -1
  184. package/dist/sankhyablocks/p-282789a6.entry.js +0 -1
  185. package/dist/sankhyablocks/p-374d03f6.js +0 -1
  186. package/dist/sankhyablocks/p-3b0e4e08.js +0 -65
  187. package/dist/sankhyablocks/p-40915359.entry.js +0 -1
  188. package/dist/sankhyablocks/p-573a07c5.js +0 -1
  189. package/dist/sankhyablocks/p-62896624.entry.js +0 -1
  190. package/dist/sankhyablocks/p-69efa80d.entry.js +0 -1
  191. package/dist/sankhyablocks/p-761ed32f.entry.js +0 -1
  192. package/dist/sankhyablocks/p-98674137.entry.js +0 -1
  193. package/dist/sankhyablocks/p-9b5944a4.entry.js +0 -1
  194. package/dist/sankhyablocks/p-9bdbc7d8.entry.js +0 -1
  195. package/dist/sankhyablocks/p-aa95fb2c.js +0 -56
  196. package/dist/sankhyablocks/p-ac384baf.entry.js +0 -1
  197. package/dist/sankhyablocks/p-b05ab13d.entry.js +0 -1
  198. package/dist/sankhyablocks/p-c22c1d8e.js +0 -1
  199. package/dist/sankhyablocks/p-c4874327.entry.js +0 -1
  200. package/dist/sankhyablocks/p-c758265f.entry.js +0 -1
  201. package/dist/sankhyablocks/p-cb7419e0.entry.js +0 -1
  202. package/dist/sankhyablocks/p-d4f9ee17.entry.js +0 -1
  203. package/dist/sankhyablocks/p-e6380c60.js +0 -1
  204. package/dist/sankhyablocks/p-e817f254.entry.js +0 -11
  205. /package/dist/collection/components/{snk-form/subcomponents/snk-form-config → snk-form-config}/snk-form-config.css +0 -0
  206. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.css +0 -0
  207. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.js +0 -0
  208. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.css +0 -0
  209. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.js +0 -0
  210. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.css +0 -0
  211. /package/dist/collection/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.js +0 -0
  212. /package/dist/collection/components/{snk-grid/subcomponents/snk-grid-config → snk-grid-config}/snk-grid-config.css +0 -0
  213. /package/dist/collection/components/{snk-grid/subcomponents → snk-grid-config}/snk-select-box/snk-select-box.css +0 -0
  214. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-config-options/snk-config-options.d.ts +0 -0
  215. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-field-config/snk-field-config.d.ts +0 -0
  216. /package/dist/types/components/{snk-form → snk-form-config}/subcomponents/snk-tab-config/snk-tab-config.d.ts +0 -0
@@ -1,21 +1,20 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-a7d3d3f1.js';
2
2
  import { StringUtils, ElementIDUtils, ApplicationContext, JSUtils, FloatingManager } from '@sankhyalabs/core';
3
- import { T as TaskbarElement } from './taskbar-elements-d4d0b424.js';
4
- import './DataFetcher-aa159c5a.js';
5
- import './pesquisa-fetcher-fa0c2540.js';
3
+ import { T as TaskbarElement } from './taskbar-elements-2473c8ac.js';
4
+ import './DataFetcher-a650ae58.js';
5
+ import './pesquisa-fetcher-f05a12ca.js';
6
6
  import { P as PresentationMode } from './index-0ece87a6.js';
7
7
  import './ISave-d8c8bc59.js';
8
8
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
9
9
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
- import './PreloadManager-c1c2f2b4.js';
11
10
  import './filter-item-type.enum-d45e026f.js';
12
- import './form-config-fetcher-36219cd3.js';
11
+ import './form-config-fetcher-f121f880.js';
13
12
  import { d as VIEW_MODE } from './constants-8457af36.js';
14
- import { A as AutorizationType } from './auth-fetcher-c05dc474.js';
13
+ import { A as AutorizationType } from './auth-fetcher-17dc5b5e.js';
15
14
  import './index-bdf75557.js';
16
15
  import './PrintUtils-3e4ff0f5.js';
17
- import './ResourceIDUtils-a114189a.js';
18
16
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
17
+ import './ResourceIDUtils-a114189a.js';
19
18
 
20
19
  const snkCrudCss = ".sc-snk-crud-h{display:flex;flex-direction:column;height:100%;width:100%}";
21
20
 
@@ -35,6 +34,7 @@ const SnkCrud = class {
35
34
  this._canEdit = undefined;
36
35
  this._resourceID = undefined;
37
36
  this.configName = undefined;
37
+ this.filterBarTitle = undefined;
38
38
  this.selectionToastConfig = undefined;
39
39
  this.showActionButtons = false;
40
40
  this.actionsList = undefined;
@@ -45,6 +45,10 @@ const SnkCrud = class {
45
45
  this.presentationMode = PresentationMode.PRIMARY;
46
46
  this.messagesBuilder = undefined;
47
47
  this.useEnterLikeTab = false;
48
+ this.gridLegacyConfigName = undefined;
49
+ this.filterBarLegacyConfigName = undefined;
50
+ this.formLegacyConfigName = undefined;
51
+ this.disablePersonalizedFilter = undefined;
48
52
  this.customContainerId = `SNK-CRUD-CUSTOM-CONTAINER-${StringUtils.generateUUID()}`;
49
53
  }
50
54
  /**
@@ -177,7 +181,8 @@ const SnkCrud = class {
177
181
  window.removeEventListener("keydown", this._keyDownHandler);
178
182
  }
179
183
  async initKeyboardManager() {
180
- const keyboardManager = await this._application.getKeyboardManager();
184
+ var _a;
185
+ const keyboardManager = await ((_a = this._application) === null || _a === void 0 ? void 0 : _a.getKeyboardManager());
181
186
  if (keyboardManager) {
182
187
  const dataUnit = this._dataUnit || await this._snkDataUnit.getDataUnit();
183
188
  async function saveDataUnitHandlingFocus() {
@@ -226,7 +231,8 @@ const SnkCrud = class {
226
231
  }
227
232
  }
228
233
  async removeShortcuts() {
229
- const keyboardManager = await this._application.getKeyboardManager();
234
+ var _a;
235
+ const keyboardManager = await ((_a = this._application) === null || _a === void 0 ? void 0 : _a.getKeyboardManager());
230
236
  if (keyboardManager) {
231
237
  keyboardManager
232
238
  .unbind("F6")
@@ -293,7 +299,7 @@ const SnkCrud = class {
293
299
  return;
294
300
  }
295
301
  this._snkDataUnit.ignoreSaveMessage = this._currentViewMode === VIEW_MODE.GRID;
296
- return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, recordsValidator: this.recordsValidator, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, recordsValidator: this.recordsValidator, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
302
+ return (h(Host, null, h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, filterBarTitle: this.filterBarTitle, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode, recordsValidator: this.recordsValidator, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit, resourceID: this._resourceID, disablePersonalizedFilter: this.disablePersonalizedFilter, gridLegacyConfigName: this.gridLegacyConfigName, filterBarLegacyConfigName: this.filterBarLegacyConfigName }, h("slot", { name: "GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form", canEdit: this._canEdit, recordsValidator: this.recordsValidator, resourceID: this._resourceID, detailTaskbarCustomContainerId: this.customContainerId, formLegacyConfigName: this.formLegacyConfigName }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "SnkFormTaskBar" }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this._snkDataUnit.entityName, onBack: this.backView.bind(this) })), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showActionButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, customContainerId: this.customContainerId })), h("div", { id: `${this.customContainerId}` }, h("slot", { name: "SnkConfigContainerSlot" }), h("slot", { name: "DETAIL_GRID_HEADER_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_GRID_TASKBAR_CUSTOM_ELEMENTS" }), h("slot", { name: "DETAIL_TASKBAR_CUSTOM_ELEMENTS" }))));
297
303
  }
298
304
  get _element() { return getElement(this); }
299
305
  static get watchers() { return {
@@ -3,11 +3,11 @@ import { ApplicationContext, ObjectUtils, DataType, ElementIDUtils } from '@sank
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
4
  import { D as DataExporterOption, a as DataExporterFormat, b as DataExporterType } from './index-0ece87a6.js';
5
5
  import { R as REPORT_LAUNCHER_RESOURCE_ID } from './constants-8457af36.js';
6
- import { D as DataFetcher } from './DataFetcher-aa159c5a.js';
7
- import { S as SnkDataUnit } from './snk-data-unit-5d201fb3.js';
6
+ import { D as DataFetcher } from './DataFetcher-a650ae58.js';
7
+ import { S as SnkDataUnit } from './snk-data-unit-4c343635.js';
8
8
  import './PrintUtils-3e4ff0f5.js';
9
9
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
- import './SnkMessageBuilder-0fb796b9.js';
10
+ import './SnkMessageBuilder-9747ddd2.js';
11
11
 
12
12
  class ItemBuilder {
13
13
  constructor(getMessage, selectedNumber) {
@@ -324,7 +324,11 @@ const SnkDataExporter = class {
324
324
  }
325
325
  fetchDataExporter(params)
326
326
  .then((result) => callbackResolver(result))
327
- .catch((exception) => ApplicationUtils.error(this.getMessage("snkDataExporter.message.exportError"), exception ? exception.statusMessage : this.getMessage("snkDataExporter.message.exportError")));
327
+ .catch((exception) => {
328
+ console.error(exception);
329
+ let { title, message, statusMessage } = exception || {};
330
+ ApplicationUtils.error(title || this.getMessage("snkDataExporter.message.exportError"), statusMessage || message || this.getMessage("snkDataExporter.message.unknownFailure"));
331
+ });
328
332
  }
329
333
  getOptionKey(option) {
330
334
  return Object.keys(DataExporterOption)
@@ -1,7 +1,7 @@
1
1
  import { r as registerInstance, c as createEvent, h, g as getElement, H as Host } from './index-a7d3d3f1.js';
2
2
  import { Action, ObjectUtils, JSUtils, DataUnitAction, ApplicationContext, DataType } from '@sankhyalabs/core';
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
- import { O as OperationMap, S as SnkMessageBuilder } from './SnkMessageBuilder-0fb796b9.js';
4
+ import { O as OperationMap, S as SnkMessageBuilder } from './SnkMessageBuilder-9747ddd2.js';
5
5
 
6
6
  const SnkDataUnit = class {
7
7
  constructor(hostRef) {
@@ -1,5 +1,5 @@
1
- export { S as snk_data_unit } from './snk-data-unit-5d201fb3.js';
1
+ export { S as snk_data_unit } from './snk-data-unit-4c343635.js';
2
2
  import './index-a7d3d3f1.js';
3
3
  import '@sankhyalabs/core';
4
4
  import '@sankhyalabs/ezui/dist/collection/utils';
5
- import './SnkMessageBuilder-0fb796b9.js';
5
+ import './SnkMessageBuilder-9747ddd2.js';
@@ -1,24 +1,23 @@
1
1
  import { r as registerInstance, c as createEvent, f as forceUpdate, h, H as Host } from './index-a7d3d3f1.js';
2
2
  import { Action } from '@sankhyalabs/core';
3
- import { S as SnkFormConfigManager } from './SnkFormConfigManager-5c7d3771.js';
3
+ import { S as SnkFormConfigManager } from './SnkFormConfigManager-d86ba46f.js';
4
4
  import { FormMetadata, buildFormMetadata } from '@sankhyalabs/ezui/dist/collection/utils/form';
5
- import './DataFetcher-aa159c5a.js';
6
- import './pesquisa-fetcher-fa0c2540.js';
5
+ import './DataFetcher-a650ae58.js';
6
+ import './pesquisa-fetcher-f05a12ca.js';
7
7
  import { P as PresentationMode } from './index-0ece87a6.js';
8
8
  import './ISave-d8c8bc59.js';
9
9
  import '@sankhyalabs/ezui/dist/collection/utils/constants';
10
10
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
11
- import './PreloadManager-c1c2f2b4.js';
12
11
  import './filter-item-type.enum-d45e026f.js';
13
- import './form-config-fetcher-36219cd3.js';
14
- import { T as TaskbarElement } from './taskbar-elements-d4d0b424.js';
12
+ import './form-config-fetcher-f121f880.js';
13
+ import { T as TaskbarElement } from './taskbar-elements-2473c8ac.js';
15
14
  import { d as VIEW_MODE } from './constants-8457af36.js';
16
- import { S as SnkGuidesViewer } from './snk-guides-viewer-f49613c6.js';
17
- import { S as SnkMessageBuilder } from './SnkMessageBuilder-0fb796b9.js';
18
- import './ConfigStorage-4151acc8.js';
15
+ import { S as SnkGuidesViewer } from './snk-guides-viewer-18859840.js';
16
+ import { S as SnkMessageBuilder } from './SnkMessageBuilder-9747ddd2.js';
17
+ import './ConfigStorage-101a2b4c.js';
19
18
  import './PrintUtils-3e4ff0f5.js';
20
- import './ResourceIDUtils-a114189a.js';
21
19
  import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
20
+ import './ResourceIDUtils-a114189a.js';
22
21
  import './index-bdf75557.js';
23
22
  import './field-search-efbe307f.js';
24
23
  import '@sankhyalabs/core/dist/dataunit/DataUnit';
@@ -61,16 +61,18 @@ const SnkEntityList = class {
61
61
  this.loadListSource();
62
62
  }
63
63
  optionLoader(searchArgument) {
64
- var _a, _b, _c, _d;
64
+ var _a, _b, _c, _d, _e, _f;
65
65
  const { mode, argument } = searchArgument;
66
66
  if (this._application === undefined) {
67
67
  return;
68
68
  }
69
69
  const searchOptions = (_c = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.props) === null || _b === void 0 ? void 0 : _b.searchContext) === null || _c === void 0 ? void 0 : _c.searchOptions;
70
+ const criteria = (_e = (_d = this.config) === null || _d === void 0 ? void 0 : _d.props) === null || _e === void 0 ? void 0 : _e.criteria;
70
71
  const options = {
71
- entityDescription: (_d = this.config) === null || _d === void 0 ? void 0 : _d.label,
72
+ entityDescription: (_f = this.config) === null || _f === void 0 ? void 0 : _f.label,
72
73
  entity: this._entityName,
73
- searchOptions: searchOptions
74
+ searchOptions: searchOptions,
75
+ criteria,
74
76
  };
75
77
  return this._application.executePreparedSearch(mode, argument, options);
76
78
  }
@@ -1,15 +1,15 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-a7d3d3f1.js';
2
2
  import { DataType, StringUtils, ObjectUtils, ElementIDUtils, ErrorException, ApplicationContext } from '@sankhyalabs/core';
3
3
  import { EzScrollDirection } from '@sankhyalabs/ezui/dist/collection/components/ez-scroller/EzScrollDirection';
4
- import { C as ConfigStorage } from './ConfigStorage-4151acc8.js';
4
+ import { C as ConfigStorage } from './ConfigStorage-101a2b4c.js';
5
5
  import { toString } from '@sankhyalabs/core/dist/dataunit/metadata/DataType';
6
6
  import { F as FilterItemType } from './filter-item-type.enum-d45e026f.js';
7
7
  import { F as FilterOperand } from './index-ae591a44.js';
8
8
  import { F as FilterNumberVariation } from './filterNumberVariation-8cee02ea.js';
9
9
  import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
10
10
  import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-e2b38ef7.js';
11
- import './form-config-fetcher-36219cd3.js';
12
- import './DataFetcher-aa159c5a.js';
11
+ import './form-config-fetcher-f121f880.js';
12
+ import './DataFetcher-a650ae58.js';
13
13
  import './PrintUtils-3e4ff0f5.js';
14
14
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
15
15
 
@@ -248,7 +248,7 @@ class SnkFilterModalFactory {
248
248
  }
249
249
  }
250
250
 
251
- const snkFilterBarCss = ".sc-snk-filter-bar-h{display:grid;grid-template-columns:minmax(100px, 100%) 1fr 1fr;--snk-personalized-filter--z-index:var(--elevation--20, 20);--snk-personalized-filter--background-color:var(--background--xlight, #fff)}.snk-filter__popover-container.sc-snk-filter-bar{display:flex;cursor:auto}.filter-bar__personalized-filter.sc-snk-filter-bar{display:flex;flex-direction:column;position:fixed;top:0;left:0;width:100%;height:100%;overflow:auto;z-index:var(--snk-personalized-filter--z-index);background-color:var(--snk-personalized-filter--background-color)}.snk-filter__popover.sc-snk-filter-bar{display:flex;flex-direction:column;position:absolute;width:fit-content;height:fit-content;min-width:265px;background-color:var(--background--xlight, #fff);border-radius:var(--border--radius-medium, 12px);box-shadow:var(--shadow, 0px 0px 16px 0px #000)}.snk-filter-item__editor-header.sc-snk-filter-bar{flex-grow:1;font-weight:var(--text-weight--medium, 400);color:var(--color--title-primary, #2B3A54)}.snk-filter__popover-rule.sc-snk-filter-bar{border-style:solid;border-color:var(--color--disable-secondary, #F2F5F8);border-radius:1px;border-width:1px;width:100%}.editor__ez-check.sc-snk-filter-bar{--ez-check__label--padding-left:0}.snk-filter-item__editor-header-button.sc-snk-filter-bar{cursor:pointer;background-color:transparent;border:none;padding:3px;outline-color:var(--color--primary)}.snk-filter-bar__divider.sc-snk-filter-bar{margin-bottom:var(--space--small)}.snk-filter-bar__scroller.sc-snk-filter-bar{height:calc(100% + var(--space-extra-small, 3px))}.snk-filter-bar__filter-item-container.sc-snk-filter-bar{display:flex;align-self:center}.snk-filter-bar__scroller.sc-snk-filter-bar .sc-snk-filter-bar:first-child{margin-left:var(--space-extra-small, 3px)}.snk-filter-bar__filter-list-items-container.sc-snk-filter-bar{overflow-y:auto;max-height:360px;margin-top:var(--space--small, 6px)}.snk-filter-bar__filter-list-item.sc-snk-filter-bar{cursor:pointer;border-radius:var(--border--radius-small, 6px);border:none;background-color:transparent}.snk-filter-bar__filter-list-item__label.sc-snk-filter-bar{color:var(--title--primary)}.snk-filter-bar__filter-list-item__label--secondary.sc-snk-filter-bar{color:var(--text--primary)}.snk-filter-bar__filter-list-item__icon.sc-snk-filter-bar{--ez-icon--color:var(--title--primary)}.snk-filter-bar__filter-list-item__icon--secondary.sc-snk-filter-bar{--ez-icon--color:var(--text--secondary)}.snk-filter-bar__filter-list-item.sc-snk-filter-bar:focus-visible{outline:none;background-color:var(--background--medium)}.snk-filter-bar__filter-list-item.sc-snk-filter-bar:hover{background-color:var(--background--medium)}.snk-filter-bar__filter-list-items-container--empty.sc-snk-filter-bar{width:100%;height:100px;display:flex;justify-content:center;align-self:center;align-items:center}.snk-filter-bar__filter-list-items-button--active.sc-snk-filter-bar{position:relative}.snk-filter-bar__filter-list-items-button--active.sc-snk-filter-bar::after{display:flex;position:absolute;content:\"\";width:8px;height:8px;top:7px;left:17px;background-color:var(--icon--alert--color, #008561);border-radius:50%}.snk-filter-bar__filter-modal-item.sc-snk-filter-bar{--modal-item-border-width:2px;display:flex;flex-direction:row;margin-left:var(--modal-item-border-width);border-radius:var(--border--radius-medium, 12px);background-color:var(--background--medium, #f0f3f7);border:none;width:100%}.snk-filter-bar__filter-modal-item.sc-snk-filter-bar:focus-visible{outline:var(--color--primary) solid var(--modal-item-border-width)}.snk-filter-bar__filter-modal-item__check.sc-snk-filter-bar{width:auto}.snk-filter-bar__filter-modal-item__label.sc-snk-filter-bar{font-weight:var(--text-weight--medium)}.snk-filter-bar__filter-modal-content.sc-snk-filter-bar{display:grid;grid-template-rows:auto auto 1fr auto;width:99%;height:100%}";
251
+ const snkFilterBarCss = ".sc-snk-filter-bar-h{display:grid;grid-template-columns:1fr minmax(100px, 100%) 1fr 1fr;--snk-personalized-filter--z-index:var(--elevation--20, 20);--snk-personalized-filter--background-color:var(--background--xlight, #fff)}.snk-filter-bar__title.sc-snk-filter-bar{max-width:260px;display:inline-block;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:16px;font-family:var(--font-pattern, Arial);font-weight:var(--text-weight--large, 600);color:var(--color--title-primary, #2B3A54);margin-top:8px}[data-mode=\"hidden\"].sc-snk-filter-bar-h{display:none}[data-mode=\"button\"].sc-snk-filter-bar-h{grid-template-columns:1fr;width:fit-content}.snk-filter__popover-container.sc-snk-filter-bar{display:flex;cursor:auto}.filter-bar__personalized-filter.sc-snk-filter-bar{display:flex;flex-direction:column;position:fixed;top:0;left:0;width:100%;height:100%;overflow:auto;z-index:var(--snk-personalized-filter--z-index);background-color:var(--snk-personalized-filter--background-color)}.snk-filter__popover.sc-snk-filter-bar{display:flex;flex-direction:column;position:absolute;width:fit-content;height:fit-content;min-width:265px;background-color:var(--background--xlight, #fff);border-radius:var(--border--radius-medium, 12px);box-shadow:var(--shadow, 0px 0px 16px 0px #000)}.snk-filter-item__editor-header.sc-snk-filter-bar{flex-grow:1;font-weight:var(--text-weight--medium, 400);color:var(--color--title-primary, #2B3A54)}.snk-filter__popover-rule.sc-snk-filter-bar{border-style:solid;border-color:var(--color--disable-secondary, #F2F5F8);border-radius:1px;border-width:1px;width:100%}.editor__ez-check.sc-snk-filter-bar{--ez-check__label--padding-left:0}.snk-filter-item__editor-header-button.sc-snk-filter-bar{cursor:pointer;background-color:transparent;border:none;padding:3px;outline-color:var(--color--primary)}.snk-filter-bar__divider.sc-snk-filter-bar{margin-bottom:var(--space--small)}.snk-filter-bar__scroller.sc-snk-filter-bar{height:calc(100% + var(--space-extra-small, 3px))}.snk-filter-bar__filter-item-container.sc-snk-filter-bar{display:flex;align-self:center}.snk-filter-bar__scroller.sc-snk-filter-bar .sc-snk-filter-bar:first-child{margin-left:var(--space-extra-small, 3px)}.snk-filter-bar__filter-list-items-container.sc-snk-filter-bar{overflow-y:auto;max-height:360px;margin-top:var(--space--small, 6px)}.snk-filter-bar__filter-list-item.sc-snk-filter-bar{cursor:pointer;border-radius:var(--border--radius-small, 6px);border:none;background-color:transparent}.snk-filter-bar__filter-list-item__label.sc-snk-filter-bar{color:var(--title--primary)}.snk-filter-bar__filter-list-item__label--secondary.sc-snk-filter-bar{color:var(--text--primary)}.snk-filter-bar__filter-list-item__icon.sc-snk-filter-bar{--ez-icon--color:var(--title--primary)}.snk-filter-bar__filter-list-item__icon--secondary.sc-snk-filter-bar{--ez-icon--color:var(--text--secondary)}.snk-filter-bar__filter-list-item.sc-snk-filter-bar:focus-visible{outline:none;background-color:var(--background--medium)}.snk-filter-bar__filter-list-item.sc-snk-filter-bar:hover{background-color:var(--background--medium)}.snk-filter-bar__filter-list-items-container--empty.sc-snk-filter-bar{width:100%;height:100px;display:flex;justify-content:center;align-self:center;align-items:center}.snk-filter-bar__filter-list-items-button--active.sc-snk-filter-bar{position:relative}.snk-filter-bar__filter-list-items-button--active.sc-snk-filter-bar::after{display:flex;position:absolute;content:\"\";width:8px;height:8px;top:7px;left:17px;background-color:var(--icon--alert--color, #008561);border-radius:50%}.snk-filter-bar__filter-modal-item.sc-snk-filter-bar{--modal-item-border-width:2px;display:flex;flex-direction:row;margin-left:var(--modal-item-border-width);border-radius:var(--border--radius-medium, 12px);background-color:var(--background--medium, #f0f3f7);border:none;width:100%}.snk-filter-bar__filter-modal-item.sc-snk-filter-bar:focus-visible{outline:var(--color--primary) solid var(--modal-item-border-width)}.snk-filter-bar__filter-modal-item__check.sc-snk-filter-bar{width:auto}.snk-filter-bar__filter-modal-item__label.sc-snk-filter-bar{font-weight:var(--text-weight--medium)}.snk-filter-bar__filter-modal-content.sc-snk-filter-bar{display:grid;grid-template-rows:auto auto 1fr auto;width:99%;height:100%}";
252
252
 
253
253
  const SnkFilterBar = class {
254
254
  constructor(hostRef) {
@@ -257,6 +257,7 @@ const SnkFilterBar = class {
257
257
  this._updateSequence = [];
258
258
  this._loadingPending = false;
259
259
  this._configUpdated = false;
260
+ this._firstLoad = true;
260
261
  this._pendingVariables = false;
261
262
  this._customfiltersToBeUpdated = [];
262
263
  this._calculateSortIndex = (item) => {
@@ -273,11 +274,14 @@ const SnkFilterBar = class {
273
274
  return this._calculateSortIndex(b) - this._calculateSortIndex(a);
274
275
  };
275
276
  this.dataUnit = undefined;
277
+ this.title = undefined;
276
278
  this.configName = undefined;
277
279
  this.resourceID = undefined;
280
+ this.mode = "regular";
278
281
  this.filterConfig = undefined;
279
282
  this.messagesBuilder = undefined;
280
283
  this.disablePersonalizedFilter = undefined;
284
+ this.filterBarLegacyConfigName = undefined;
281
285
  this.allowDefault = undefined;
282
286
  this.scrollerLocked = false;
283
287
  this.showPersonalizedFilter = false;
@@ -410,13 +414,27 @@ const SnkFilterBar = class {
410
414
  return;
411
415
  }
412
416
  this._loadingPending = false;
413
- this.dataUnit.loadData(undefined, undefined, true);
417
+ this.doLoadData(this.dataUnit.getLastLoadRequest() != undefined);
414
418
  }
415
419
  if (this._configUpdated) {
416
420
  this._configUpdated = false;
417
421
  ConfigStorage.saveFilterBarConfig(this.filterConfig, this.configName, this.resourceID);
418
422
  }
419
423
  }
424
+ async doLoadData(forceReload = false) {
425
+ try {
426
+ if (this._firstLoad && !forceReload) {
427
+ let autoLoad = await this._application.getBooleanParam("global.carregar.registros.iniciar.tela");
428
+ if (!autoLoad) {
429
+ return;
430
+ }
431
+ }
432
+ this.dataUnit.loadData(undefined, undefined, true);
433
+ }
434
+ finally {
435
+ this._firstLoad = false;
436
+ }
437
+ }
420
438
  /**
421
439
  * Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
422
440
  * através de um pequeno modulo na estrutura da aplicação:
@@ -454,7 +472,7 @@ const SnkFilterBar = class {
454
472
  registryFilterProvider() {
455
473
  this.dataUnit.addFilterProvider(this);
456
474
  if (this.filterConfig) {
457
- this.dataUnit.loadData(undefined, undefined, true);
475
+ this.doLoadData();
458
476
  }
459
477
  }
460
478
  itemFocused(selectedItem) {
@@ -531,6 +549,11 @@ const SnkFilterBar = class {
531
549
  loadPermitions() {
532
550
  this._application.isUserSup().then(value => this.allowDefault = value);
533
551
  }
552
+ addFilterBarLegacyConfigName() {
553
+ if (this.filterBarLegacyConfigName && this.configName) {
554
+ ConfigStorage.addFilterBarLegacyConfig(this.configName, this.filterBarLegacyConfigName);
555
+ }
556
+ }
534
557
  async loadConfigFromStorage(clearCache) {
535
558
  if (clearCache) {
536
559
  await ConfigStorage.deleteFilterBarConfigCache(this.configName, this.resourceID);
@@ -577,6 +600,9 @@ const SnkFilterBar = class {
577
600
  filterChangeListener(evt) {
578
601
  this.updateFilter(evt.detail);
579
602
  }
603
+ /**
604
+ * Abre o modal de filtros
605
+ */
580
606
  async showFilterModal() {
581
607
  const callbackOnApplyFilter = (filters) => {
582
608
  this.filterConfig = filters.map(this.normalizeItem).sort((a, b) => this._filtersComparator(a, b));
@@ -634,6 +660,7 @@ const SnkFilterBar = class {
634
660
  this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
635
661
  if (this._application) {
636
662
  this.loadPermitions();
663
+ this.addFilterBarLegacyConfigName();
637
664
  this.loadConfigFromStorage();
638
665
  }
639
666
  this.attachDataUnit();
@@ -648,7 +675,9 @@ const SnkFilterBar = class {
648
675
  if (this.showPersonalizedFilter) {
649
676
  return h("snk-personalized-filter", { class: "filter-bar__personalized-filter", filterId: this.personalizedFilterId, ref: (el) => this._elPersonalizedFilter = el, onEzCancel: () => this.handleHidePersonalizedFilter(false), onEzAfterSave: () => this.handleHidePersonalizedFilter(true), entityUri: this.dataUnit.name, configName: this.configName, resourceID: this.resourceID });
650
677
  }
651
- return (h(Host, null, h("ez-scroller", { class: "snk-filter-bar__scroller", direction: EzScrollDirection.HORIZONTAL, activeShadow: true, locked: this.scrollerLocked }, h("section", { class: "snk-filter-bar__filter-item-container" }, this.getFilterItems())), h("ez-button", { class: "ez-padding-left--medium", size: "small", label: this.getMessage('snkFilterBar.filters', undefined, 'Filtros'), onClick: this.showFilterModal.bind(this) }, h("ez-icon", { slot: "leftIcon", iconName: "plus", class: "ez-padding-right--small" }))));
678
+ if (this.mode === "button")
679
+ return (h(Host, { "data-mode": this.mode }, h("ez-button", { class: "ez-margin-left--medium", size: "small", label: this.getMessage('snkFilterBar.filters', undefined, 'Filtros'), onClick: this.showFilterModal.bind(this) })));
680
+ return (h(Host, { "data-mode": this.mode }, h("div", null, h("span", { class: "snk-filter-bar__title", title: this.title, "data-tooltip": this.title, "data-flow": "bottom" }, this.title)), h("ez-scroller", { class: "snk-filter-bar__scroller", direction: EzScrollDirection.HORIZONTAL, activeShadow: true, locked: this.scrollerLocked }, h("section", { class: "snk-filter-bar__filter-item-container" }, this.getFilterItems())), h("ez-button", { class: "ez-padding-left--medium", size: "small", label: this.getMessage('snkFilterBar.filters', undefined, 'Filtros'), onClick: this.showFilterModal.bind(this) }, h("ez-icon", { slot: "leftIcon", iconName: "plus", class: "ez-padding-right--small" }))));
652
681
  }
653
682
  get _element() { return getElement(this); }
654
683
  static get watchers() { return {
@@ -2,10 +2,10 @@ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement
2
2
  import { ElementIDUtils, ObjectUtils } from '@sankhyalabs/core';
3
3
  import { F as FilterItemType } from './filter-item-type.enum-d45e026f.js';
4
4
  import { E as EPresentationMode } from './presentationMode-783bbf9d.js';
5
- import { C as ConfigStorage } from './ConfigStorage-4151acc8.js';
5
+ import { C as ConfigStorage } from './ConfigStorage-101a2b4c.js';
6
6
  import { F as FilterType } from './filter-type.enum-a80c1b6b.js';
7
- import './form-config-fetcher-36219cd3.js';
8
- import './DataFetcher-aa159c5a.js';
7
+ import './form-config-fetcher-f121f880.js';
8
+ import './DataFetcher-a650ae58.js';
9
9
  import './PrintUtils-3e4ff0f5.js';
10
10
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
11
11
 
@@ -1,11 +1,11 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-a7d3d3f1.js';
2
2
  import { S as Sortable } from './Sortable-83960219.js';
3
- import { ObjectUtils, ElementIDUtils, ArrayUtils } from '@sankhyalabs/core';
3
+ import { ObjectUtils, ElementIDUtils, ArrayUtils, ApplicationContext } from '@sankhyalabs/core';
4
4
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
5
5
  import { C as CONFIG_EVENTS, a as CONFIG_SORTABLE_EVENTS, T as TAB_NAMES, A as ACTION_CONFIG, D as DEFAULT_TYPE } from './constants-8457af36.js';
6
- import { U as UserConfigType } from './form-config-fetcher-36219cd3.js';
6
+ import { U as UserConfigType } from './form-config-fetcher-f121f880.js';
7
7
  import { buildFormConfigFromDataUnit } from '@sankhyalabs/ezui/dist/collection/utils/form';
8
- import './DataFetcher-aa159c5a.js';
8
+ import './DataFetcher-a650ae58.js';
9
9
  import './PrintUtils-3e4ff0f5.js';
10
10
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
11
11
 
@@ -34,6 +34,7 @@ const SnkFormConfig = class {
34
34
  this._formFieldsStyle = "ez-col ez-col--sd-12 ez-col--tb-4 ez-padding-right--small ez-padding-bottom--medium sc-snk-form-config";
35
35
  this._fieldsAvailableStyle = "ez-col ez-col--sd-12 ez-col--tb-12 ez-margin-bottom--medium ez-margin-right--medium sc-snk-form-config";
36
36
  this._fieldFloatingStyle = "form-config__field-config--dragged";
37
+ this._sortableTimer = 100;
37
38
  this._formConfigOptions = [];
38
39
  this._fieldConfigSelected = undefined;
39
40
  this._layoutFormConfig = undefined;
@@ -48,20 +49,27 @@ const SnkFormConfig = class {
48
49
  this.messagesBuilder = undefined;
49
50
  }
50
51
  observeConfigManager() {
51
- this.loadConfig();
52
+ this.loadConfig(this._sortableTimer);
52
53
  }
53
- loadFields() {
54
+ loadFields(updateTimer = 0) {
54
55
  this._layoutFormConfig = [];
55
- this.buildFields();
56
+ if (updateTimer > 0) {
57
+ setTimeout(() => {
58
+ this.buildFields();
59
+ }, updateTimer);
60
+ }
61
+ else {
62
+ this.buildFields();
63
+ }
56
64
  }
57
65
  buildFields() {
58
66
  this.buildFormConfig();
59
67
  this.buildAvailableFields();
60
68
  }
61
- loadFormConfig() {
69
+ loadFormConfig(updateTimer) {
62
70
  var _a;
63
71
  this._formConfig = this.getConfig();
64
- this.loadFields();
72
+ this.loadFields(updateTimer);
65
73
  this.controlFieldConfig();
66
74
  if (((_a = this._filterFieldsAvailable) === null || _a === void 0 ? void 0 : _a.value) != undefined) {
67
75
  this._filterFieldsAvailable.value = "";
@@ -104,12 +112,12 @@ const SnkFormConfig = class {
104
112
  }
105
113
  }
106
114
  resetChangeConfig() {
107
- this.loadFormConfig();
115
+ this.loadFormConfig(this._sortableTimer);
108
116
  this.clearTempGroups();
109
117
  }
110
118
  resetChangeOptionConfig() {
111
119
  this._formConfigChanged = false;
112
- this.loadConfig();
120
+ this.loadConfig(this._sortableTimer);
113
121
  this.clearTempGroups();
114
122
  }
115
123
  getTabsToSave() {
@@ -324,7 +332,9 @@ const SnkFormConfig = class {
324
332
  && oldContainer.id === newContainer.id) {
325
333
  evt.cancel();
326
334
  this._fieldsAvailable = [];
327
- this.buildAvailableFields();
335
+ setTimeout(() => {
336
+ this.buildAvailableFields();
337
+ }, this._sortableTimer);
328
338
  return true;
329
339
  }
330
340
  return false;
@@ -367,7 +377,11 @@ const SnkFormConfig = class {
367
377
  if (isNewGroup) {
368
378
  this.clearTempGroups(true);
369
379
  }
370
- this.updateFieldsToSave();
380
+ const sortableTimer = oldContainer.dataset.groupName !== newContainer.dataset.groupName
381
+ || (newContainer.id === CONTAINER_ID.withoutGroup && oldContainer.id === CONTAINER_ID.fieldsAvailable)
382
+ ? this._sortableTimer
383
+ : 0;
384
+ this.updateFieldsToSave(sortableTimer);
371
385
  }, this._renderTimer);
372
386
  return true;
373
387
  }
@@ -397,12 +411,12 @@ const SnkFormConfig = class {
397
411
  return;
398
412
  }
399
413
  }
400
- updateFieldsToSave() {
414
+ updateFieldsToSave(updateTimer = 0) {
401
415
  const fields = this.getFieldsToSave();
402
416
  if ((fields === null || fields === void 0 ? void 0 : fields.length) > 0) {
403
417
  this._formConfig.fields = fields;
404
418
  }
405
- this.loadFields();
419
+ this.loadFields(updateTimer);
406
420
  this._formConfigChanged = true;
407
421
  }
408
422
  controlSortableField() {
@@ -432,7 +446,7 @@ const SnkFormConfig = class {
432
446
  controlStopDraggingGroup(evt) {
433
447
  if (evt.data.newIndex !== evt.data.oldIndex) {
434
448
  setTimeout(() => {
435
- this.updateFieldsToSave();
449
+ this.updateFieldsToSave(this._sortableTimer);
436
450
  }, this._renderTimer);
437
451
  }
438
452
  }
@@ -505,7 +519,7 @@ const SnkFormConfig = class {
505
519
  });
506
520
  if (tabs.length > 0) {
507
521
  this._formConfig.tabs = tabs;
508
- this.loadFields();
522
+ this.loadFields(this._sortableTimer);
509
523
  this.controlFieldConfig();
510
524
  this._formConfigChanged = true;
511
525
  }
@@ -529,13 +543,13 @@ const SnkFormConfig = class {
529
543
  if (config != undefined) {
530
544
  this._formConfig = config;
531
545
  this._tabSelected = 1;
532
- this.loadFields();
546
+ this.loadFields(this._sortableTimer);
533
547
  this.controlFieldConfig();
534
548
  this.clearTempGroups();
535
549
  }
536
550
  }
537
- loadConfig() {
538
- this.loadFormConfig();
551
+ loadConfig(updateTimer = 0) {
552
+ this.loadFormConfig(updateTimer);
539
553
  this.loadUserConfig();
540
554
  }
541
555
  addNewGroup() {
@@ -576,7 +590,7 @@ const SnkFormConfig = class {
576
590
  });
577
591
  }
578
592
  else {
579
- this.updateFieldsToSave();
593
+ this.updateFieldsToSave(this._sortableTimer);
580
594
  }
581
595
  }
582
596
  checkGroupExists(newLabel, indexGroup, isTempGroup = false) {
@@ -622,7 +636,7 @@ const SnkFormConfig = class {
622
636
  field.group = newLabel;
623
637
  }
624
638
  });
625
- this.loadFields();
639
+ this.loadFields(this._sortableTimer);
626
640
  this.controlFieldConfig();
627
641
  this._formConfigChanged = true;
628
642
  }
@@ -836,14 +850,14 @@ const SnkFormConfig = class {
836
850
  this._formConfigChanged = true;
837
851
  this.resetSortables();
838
852
  }
839
- controlRemoveFieldConfig(fieldConfig) {
853
+ controlRemoveFieldConfig(fieldConfig, updateTimer) {
840
854
  var _a;
841
855
  this._formConfigChanged = false;
842
856
  if (fieldConfig == undefined) {
843
857
  return;
844
858
  }
845
859
  this._formConfig.fields = (_a = this._formConfig.fields) === null || _a === void 0 ? void 0 : _a.filter((field) => field.name !== fieldConfig.name);
846
- this.loadFields();
860
+ this.loadFields(updateTimer);
847
861
  this.controlFieldConfig();
848
862
  this._formConfigChanged = true;
849
863
  this.resetSortables();
@@ -852,14 +866,14 @@ const SnkFormConfig = class {
852
866
  this.controlSortableField();
853
867
  this.controlSortableGroup();
854
868
  }
855
- handleFieldConfigChange(evt) {
869
+ handleFieldConfigChange(evt, updateTimer = 0) {
856
870
  const { field: fieldConfig, type: actionType } = evt.detail;
857
871
  if (actionType === ACTION_CONFIG.configuration) {
858
872
  this.controlFieldConfig(fieldConfig);
859
873
  return;
860
874
  }
861
875
  if (actionType === ACTION_CONFIG.remove) {
862
- this.controlRemoveFieldConfig(fieldConfig);
876
+ this.controlRemoveFieldConfig(fieldConfig, updateTimer);
863
877
  return;
864
878
  }
865
879
  if (actionType === ACTION_CONFIG.add) {
@@ -880,7 +894,7 @@ const SnkFormConfig = class {
880
894
  tab.label = newLabel;
881
895
  }
882
896
  });
883
- this.loadFields();
897
+ this.loadFields(this._sortableTimer);
884
898
  this.controlFieldConfig();
885
899
  this._formConfigChanged = true;
886
900
  }
@@ -900,7 +914,7 @@ const SnkFormConfig = class {
900
914
  this._formConfig.tabs = (_a = this._formConfig.tabs) === null || _a === void 0 ? void 0 : _a.filter((tab) => {
901
915
  return tab.label !== tabSelected.detail.label;
902
916
  });
903
- this.loadFields();
917
+ this.loadFields(this._sortableTimer);
904
918
  this.controlFieldConfig();
905
919
  this._formConfigChanged = true;
906
920
  }
@@ -913,7 +927,7 @@ const SnkFormConfig = class {
913
927
  tab.visible = !tab.visible;
914
928
  }
915
929
  });
916
- this.loadFields();
930
+ this.loadFields(this._sortableTimer);
917
931
  this.controlFieldConfig();
918
932
  this._formConfigChanged = true;
919
933
  }
@@ -938,6 +952,12 @@ const SnkFormConfig = class {
938
952
  this.controlSortableField();
939
953
  this.controlSortableGroup();
940
954
  }
955
+ async componentWillRender() {
956
+ if (this.messagesBuilder == undefined) {
957
+ const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
958
+ this.messagesBuilder = application.messagesBuilder;
959
+ }
960
+ }
941
961
  componentWillLoad() {
942
962
  this.loadConfig();
943
963
  }
@@ -1,10 +1,10 @@
1
1
  import { r as registerInstance, c as createEvent, h, g as getElement } from './index-a7d3d3f1.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
- import { S as SnkFormConfigManager } from './SnkFormConfigManager-5c7d3771.js';
3
+ import { S as SnkFormConfigManager } from './SnkFormConfigManager-d86ba46f.js';
4
4
  import { R as ResourceIDUtils } from './ResourceIDUtils-a114189a.js';
5
- import './ConfigStorage-4151acc8.js';
6
- import './form-config-fetcher-36219cd3.js';
7
- import './DataFetcher-aa159c5a.js';
5
+ import './ConfigStorage-101a2b4c.js';
6
+ import './form-config-fetcher-f121f880.js';
7
+ import './DataFetcher-a650ae58.js';
8
8
  import './PrintUtils-3e4ff0f5.js';
9
9
  import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
10
  import './filter-item-type.enum-d45e026f.js';
@@ -24,6 +24,7 @@ const SnkForm = class {
24
24
  this.configName = undefined;
25
25
  this.recordsValidator = undefined;
26
26
  this.messagesBuilder = undefined;
27
+ this.formLegacyConfigName = undefined;
27
28
  this.resourceID = undefined;
28
29
  }
29
30
  /**
@@ -71,8 +72,14 @@ const SnkForm = class {
71
72
  this.resourceID = await ResourceIDUtils.getResourceID();
72
73
  }
73
74
  this._configManager = new SnkFormConfigManager(this.configName, this.resourceID);
75
+ this.addFormLegacyConfig();
74
76
  this._configManager.loadConfig();
75
77
  }
78
+ addFormLegacyConfig() {
79
+ if (this.formLegacyConfigName) {
80
+ this._configManager.addFormLegacyConfig(this.formLegacyConfigName);
81
+ }
82
+ }
76
83
  render() {
77
84
  if (!this._dataUnit || !this._dataState) {
78
85
  return undefined;