@sankhyalabs/sankhyablocks 0.0.0-bugfix-dev-KB-48570.0 → 0.0.0-bugfix-dev-KB-49699.0

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 (94) hide show
  1. package/dist/cjs/{ConfigStorage-d4c99a5e.js → ConfigStorage-34be11ce.js} +68 -5
  2. package/dist/cjs/{SnkFormConfigManager-0ffd098d.js → SnkFormConfigManager-6211fb28.js} +6 -1
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  5. package/dist/cjs/snk-actions-button_4.cjs.entry.js +1 -1
  6. package/dist/cjs/snk-application.cjs.entry.js +8 -2
  7. package/dist/cjs/snk-crud.cjs.entry.js +4 -1
  8. package/dist/cjs/snk-detail-view.cjs.entry.js +3 -3
  9. package/dist/cjs/snk-filter-bar.cjs.entry.js +8 -1
  10. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +1 -1
  11. package/dist/cjs/snk-form.cjs.entry.js +9 -2
  12. package/dist/cjs/snk-grid.cjs.entry.js +11 -2
  13. package/dist/cjs/{snk-guides-viewer-75047f22.js → snk-guides-viewer-508bb6fe.js} +8 -1
  14. package/dist/cjs/snk-guides-viewer.cjs.entry.js +3 -3
  15. package/dist/cjs/snk-personalized-filter.cjs.entry.js +1 -1
  16. package/dist/cjs/snk-simple-crud.cjs.entry.js +69 -11
  17. package/dist/cjs/snk-taskbar.cjs.entry.js +6 -1
  18. package/dist/collection/components/snk-application/snk-application.js +42 -2
  19. package/dist/collection/components/snk-crud/snk-crud.js +55 -1
  20. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +24 -0
  21. package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +24 -0
  22. package/dist/collection/components/snk-form/snk-form.js +24 -0
  23. package/dist/collection/components/snk-form-config/SnkFormConfigManager.js +6 -1
  24. package/dist/collection/components/snk-grid/snk-grid.js +44 -1
  25. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +122 -8
  26. package/dist/collection/components/snk-taskbar/snk-taskbar.js +7 -0
  27. package/dist/collection/lib/configs/ConfigStorage.js +63 -3
  28. package/dist/collection/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.js +6 -3
  29. package/dist/components/ConfigStorage.js +68 -5
  30. package/dist/components/SnkFormConfigManager.js +5 -0
  31. package/dist/components/snk-application2.js +9 -1
  32. package/dist/components/snk-crud.js +7 -1
  33. package/dist/components/snk-detail-view2.js +8 -0
  34. package/dist/components/snk-filter-bar2.js +8 -0
  35. package/dist/components/snk-form.js +8 -0
  36. package/dist/components/snk-grid2.js +12 -1
  37. package/dist/components/snk-simple-crud2.js +70 -9
  38. package/dist/components/snk-taskbar2.js +6 -1
  39. package/dist/esm/{ConfigStorage-39ed8aeb.js → ConfigStorage-101a2b4c.js} +68 -5
  40. package/dist/esm/{SnkFormConfigManager-dd450734.js → SnkFormConfigManager-d86ba46f.js} +6 -1
  41. package/dist/esm/loader.js +1 -1
  42. package/dist/esm/sankhyablocks.js +1 -1
  43. package/dist/esm/snk-actions-button_4.entry.js +1 -1
  44. package/dist/esm/snk-application.entry.js +8 -2
  45. package/dist/esm/snk-crud.entry.js +4 -1
  46. package/dist/esm/snk-detail-view.entry.js +3 -3
  47. package/dist/esm/snk-filter-bar.entry.js +8 -1
  48. package/dist/esm/snk-filter-modal-item.entry.js +1 -1
  49. package/dist/esm/snk-form.entry.js +9 -2
  50. package/dist/esm/snk-grid.entry.js +11 -2
  51. package/dist/esm/{snk-guides-viewer-8b679ee6.js → snk-guides-viewer-18859840.js} +8 -1
  52. package/dist/esm/snk-guides-viewer.entry.js +3 -3
  53. package/dist/esm/snk-personalized-filter.entry.js +1 -1
  54. package/dist/esm/snk-simple-crud.entry.js +69 -11
  55. package/dist/esm/snk-taskbar.entry.js +6 -1
  56. package/dist/sankhyablocks/p-1f3174cb.entry.js +1 -0
  57. package/dist/sankhyablocks/p-1fa5a18c.entry.js +11 -0
  58. package/dist/sankhyablocks/p-5c0b53ce.js +56 -0
  59. package/dist/sankhyablocks/p-5dbc1a3f.js +1 -0
  60. package/dist/sankhyablocks/p-60fa6c7a.js +1 -0
  61. package/dist/sankhyablocks/p-64c1b368.entry.js +1 -0
  62. package/dist/sankhyablocks/p-650f7216.entry.js +1 -0
  63. package/dist/sankhyablocks/{p-9d608b62.entry.js → p-6b28cc74.entry.js} +1 -1
  64. package/dist/sankhyablocks/{p-827e4b01.entry.js → p-7ddd95b6.entry.js} +1 -1
  65. package/dist/sankhyablocks/{p-9fb97691.entry.js → p-b41a622a.entry.js} +1 -1
  66. package/dist/sankhyablocks/{p-d0bc5ef3.entry.js → p-b4de81ac.entry.js} +1 -1
  67. package/dist/sankhyablocks/p-d01ceda6.entry.js +1 -0
  68. package/dist/sankhyablocks/p-d304659d.entry.js +1 -0
  69. package/dist/sankhyablocks/{p-a1c630fb.entry.js → p-e4fb3308.entry.js} +1 -1
  70. package/dist/sankhyablocks/p-fbfab20b.entry.js +1 -0
  71. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  72. package/dist/types/components/snk-application/snk-application.d.ts +8 -0
  73. package/dist/types/components/snk-crud/snk-crud.d.ts +12 -0
  74. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +5 -0
  75. package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +5 -0
  76. package/dist/types/components/snk-form/snk-form.d.ts +5 -0
  77. package/dist/types/components/snk-form-config/SnkFormConfigManager.d.ts +1 -0
  78. package/dist/types/components/snk-grid/snk-grid.d.ts +9 -0
  79. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +19 -0
  80. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +1 -0
  81. package/dist/types/components.d.ts +104 -0
  82. package/dist/types/lib/configs/ConfigStorage.d.ts +21 -1
  83. package/dist/types/lib/http/data-fetcher/fetchers/personalized-filter-fetcher.d.ts +2 -1
  84. package/package.json +1 -1
  85. package/dist/sankhyablocks/p-230f5148.entry.js +0 -1
  86. package/dist/sankhyablocks/p-3e2e2424.entry.js +0 -1
  87. package/dist/sankhyablocks/p-4b0c5921.entry.js +0 -1
  88. package/dist/sankhyablocks/p-5eaecd30.entry.js +0 -1
  89. package/dist/sankhyablocks/p-61da4a55.entry.js +0 -1
  90. package/dist/sankhyablocks/p-67aedbe0.js +0 -56
  91. package/dist/sankhyablocks/p-746fc99e.entry.js +0 -1
  92. package/dist/sankhyablocks/p-8a00836e.js +0 -1
  93. package/dist/sankhyablocks/p-9ea14b61.js +0 -1
  94. package/dist/sankhyablocks/p-c4bcdd4b.entry.js +0 -11
@@ -292,6 +292,8 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
292
292
  this._isLoadedByPk = false;
293
293
  this.messagesBuilder = undefined;
294
294
  this.configName = undefined;
295
+ this.gridLegacyConfigName = undefined;
296
+ this.formLegacyConfigName = undefined;
295
297
  this.loadByPK = undefined;
296
298
  }
297
299
  async processPendingActions(actionsLocker) {
@@ -1198,7 +1200,11 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
1198
1200
  ApplicationContext.setContextValue("__EZUI__GRID_LICENSE__", agGridLicense);
1199
1201
  this.registerPkChangeListener();
1200
1202
  ErrorTracking.init();
1201
- ConfigStorage.preload(this.applicationResourceID, this.configName);
1203
+ let legacyConfig = {
1204
+ gridLegacyConfig: this.gridLegacyConfigName,
1205
+ formLegacyConfig: this.formLegacyConfigName
1206
+ };
1207
+ ConfigStorage.preload(this.applicationResourceID, this.configName, legacyConfig);
1202
1208
  document.addEventListener("click", () => Workspace.applicationClick());
1203
1209
  this._waitingAppReady.forEach(resolve => resolve());
1204
1210
  }
@@ -1241,6 +1247,8 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
1241
1247
  }, [2, "snk-application", {
1242
1248
  "messagesBuilder": [1040],
1243
1249
  "configName": [1, "config-name"],
1250
+ "gridLegacyConfigName": [1, "grid-legacy-config-name"],
1251
+ "formLegacyConfigName": [1, "form-legacy-config-name"],
1244
1252
  "loadByPK": [16],
1245
1253
  "getKeyboardManager": [64],
1246
1254
  "isUserSup": [64],
@@ -70,6 +70,9 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
70
70
  this.presentationMode = PresentationMode.PRIMARY;
71
71
  this.messagesBuilder = undefined;
72
72
  this.useEnterLikeTab = false;
73
+ this.gridLegacyConfigName = undefined;
74
+ this.filterBarLegacyConfigName = undefined;
75
+ this.formLegacyConfigName = undefined;
73
76
  this.disablePersonalizedFilter = undefined;
74
77
  this.customContainerId = `SNK-CRUD-CUSTOM-CONTAINER-${StringUtils.generateUUID()}`;
75
78
  }
@@ -321,7 +324,7 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
321
324
  return;
322
325
  }
323
326
  this._snkDataUnit.ignoreSaveMessage = this._currentViewMode === VIEW_MODE.GRID;
324
- 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 }, 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" }))));
327
+ 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" }))));
325
328
  }
326
329
  get _element() { return this; }
327
330
  static get watchers() { return {
@@ -341,6 +344,9 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
341
344
  "presentationMode": [1, "presentation-mode"],
342
345
  "messagesBuilder": [1040],
343
346
  "useEnterLikeTab": [4, "use-enter-like-tab"],
347
+ "gridLegacyConfigName": [1, "grid-legacy-config-name"],
348
+ "filterBarLegacyConfigName": [1, "filter-bar-legacy-config-name"],
349
+ "formLegacyConfigName": [1, "form-legacy-config-name"],
344
350
  "disablePersonalizedFilter": [4, "disable-personalized-filter"],
345
351
  "_dataUnit": [32],
346
352
  "_dataState": [32],
@@ -68,6 +68,7 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
68
68
  this.presentationMode = undefined;
69
69
  this.resourceID = undefined;
70
70
  this.detailTaskbarCustomContainerId = undefined;
71
+ this.formLegacyConfigName = undefined;
71
72
  this._hasToCreateFieldSearch = true;
72
73
  this._breadcrumbItems = [];
73
74
  this._guides = undefined;
@@ -365,11 +366,17 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
365
366
  var _a;
366
367
  return this.selectedGuide === undefined || '__main' === ((_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.id);
367
368
  }
369
+ addFormLegacyConfigName() {
370
+ if (this.formLegacyConfigName) {
371
+ this._configManager.addFormLegacyConfig(this.formLegacyConfigName);
372
+ }
373
+ }
368
374
  componentWillLoad() {
369
375
  if (this.resourceID == undefined) {
370
376
  throw new Error("Erro interno: resourceID não informado");
371
377
  }
372
378
  this._configManager = new SnkFormConfigManager(this.configName, this.resourceID, config => this.masterFormConfig = config);
379
+ this.addFormLegacyConfigName();
373
380
  this._configManager.loadConfig();
374
381
  }
375
382
  componentDidRender() {
@@ -519,6 +526,7 @@ const SnkGuidesViewer = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
519
526
  "presentationMode": [1, "presentation-mode"],
520
527
  "resourceID": [1, "resource-i-d"],
521
528
  "detailTaskbarCustomContainerId": [1, "detail-taskbar-custom-container-id"],
529
+ "formLegacyConfigName": [1, "form-legacy-config-name"],
522
530
  "_hasToCreateFieldSearch": [32],
523
531
  "_breadcrumbItems": [32],
524
532
  "_guides": [32],
@@ -287,6 +287,7 @@ const SnkFilterBar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
287
287
  this.filterConfig = undefined;
288
288
  this.messagesBuilder = undefined;
289
289
  this.disablePersonalizedFilter = undefined;
290
+ this.filterBarLegacyConfigName = undefined;
290
291
  this.allowDefault = undefined;
291
292
  this.scrollerLocked = false;
292
293
  this.showPersonalizedFilter = false;
@@ -554,6 +555,11 @@ const SnkFilterBar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
554
555
  loadPermitions() {
555
556
  this._application.isUserSup().then(value => this.allowDefault = value);
556
557
  }
558
+ addFilterBarLegacyConfigName() {
559
+ if (this.filterBarLegacyConfigName && this.configName) {
560
+ ConfigStorage.addFilterBarLegacyConfig(this.configName, this.filterBarLegacyConfigName);
561
+ }
562
+ }
557
563
  async loadConfigFromStorage(clearCache) {
558
564
  if (clearCache) {
559
565
  await ConfigStorage.deleteFilterBarConfigCache(this.configName, this.resourceID);
@@ -660,6 +666,7 @@ const SnkFilterBar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
660
666
  this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
661
667
  if (this._application) {
662
668
  this.loadPermitions();
669
+ this.addFilterBarLegacyConfigName();
663
670
  this.loadConfigFromStorage();
664
671
  }
665
672
  this.attachDataUnit();
@@ -692,6 +699,7 @@ const SnkFilterBar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
692
699
  "filterConfig": [1040],
693
700
  "messagesBuilder": [1040],
694
701
  "disablePersonalizedFilter": [4, "disable-personalized-filter"],
702
+ "filterBarLegacyConfigName": [1, "filter-bar-legacy-config-name"],
695
703
  "allowDefault": [32],
696
704
  "scrollerLocked": [32],
697
705
  "showPersonalizedFilter": [32],
@@ -23,6 +23,7 @@ const SnkForm$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
23
23
  this.configName = undefined;
24
24
  this.recordsValidator = undefined;
25
25
  this.messagesBuilder = undefined;
26
+ this.formLegacyConfigName = undefined;
26
27
  this.resourceID = undefined;
27
28
  }
28
29
  /**
@@ -70,8 +71,14 @@ const SnkForm$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
70
71
  this.resourceID = await ResourceIDUtils.getResourceID();
71
72
  }
72
73
  this._configManager = new SnkFormConfigManager(this.configName, this.resourceID);
74
+ this.addFormLegacyConfig();
73
75
  this._configManager.loadConfig();
74
76
  }
77
+ addFormLegacyConfig() {
78
+ if (this.formLegacyConfigName) {
79
+ this._configManager.addFormLegacyConfig(this.formLegacyConfigName);
80
+ }
81
+ }
75
82
  render() {
76
83
  if (!this._dataUnit || !this._dataState) {
77
84
  return undefined;
@@ -85,6 +92,7 @@ const SnkForm$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
85
92
  "configName": [1, "config-name"],
86
93
  "recordsValidator": [16],
87
94
  "messagesBuilder": [1040],
95
+ "formLegacyConfigName": [1, "form-legacy-config-name"],
88
96
  "resourceID": [1, "resource-i-d"],
89
97
  "_dataUnit": [32],
90
98
  "_dataState": [32],
@@ -81,6 +81,8 @@ const SnkGrid = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
81
81
  this.gridHeaderCustomSlotId = 'GRID_HEADER_CUSTOM_ELEMENTS';
82
82
  this.topTaskbarCustomSlotId = 'GRID_TASKBAR_CUSTOM_ELEMENTS';
83
83
  this.disablePersonalizedFilter = undefined;
84
+ this.gridLegacyConfigName = undefined;
85
+ this.filterBarLegacyConfigName = undefined;
84
86
  }
85
87
  /**
86
88
  * Exibe a janela de configurações da grade.
@@ -149,6 +151,11 @@ const SnkGrid = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
149
151
  console.warn(error);
150
152
  });
151
153
  }
154
+ addGridLegacyConfigName() {
155
+ if (this.gridLegacyConfigName && this.configName) {
156
+ ConfigStorage.addGridLegacyConfig(this.configName, this.gridLegacyConfigName);
157
+ }
158
+ }
152
159
  gridConfigChangeHandler(evt) {
153
160
  const config = evt.detail;
154
161
  ConfigStorage.saveGridConfig(config, this.configName, this.resourceID);
@@ -273,6 +280,7 @@ const SnkGrid = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
273
280
  }
274
281
  componentWillLoad() {
275
282
  this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
283
+ //TODO: substituir pelo metodo nativo closest
276
284
  let parent = this._element.parentElement;
277
285
  while (parent) {
278
286
  if (parent.tagName.toUpperCase() === "SNK-DATA-UNIT") {
@@ -302,6 +310,7 @@ const SnkGrid = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
302
310
  }
303
311
  parent = parent.parentElement;
304
312
  }
313
+ this.addGridLegacyConfigName();
305
314
  this.loadConfig();
306
315
  }
307
316
  getHeaderDisabledButtons() {
@@ -416,7 +425,7 @@ const SnkGrid = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
416
425
  return undefined;
417
426
  }
418
427
  return (h("div", { class: "snk-grid__container ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" }, h("div", { class: "snk-grid__header ez-margin-bottom--medium" }, this._showSnkFilterBar &&
419
- h(Fragment, null, h("snk-filter-bar", { ref: (ref) => this._snkFilterBar = ref, title: this.filterBarTitle, dataUnit: this._dataUnit, "data-element-id": "gridFilter", class: "snk-grid__filter-bar ez-align--top", configName: this.configName, messagesBuilder: this.messagesBuilder, resourceID: this.resourceID, onConfigUpdated: evt => this.handleFilterConfigUpdated(evt.detail), disablePersonalizedFilter: this.disablePersonalizedFilter }), h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-left--medium snk-grid__header-divider" })), h("snk-taskbar", { class: "ez-padding-left--medium", "data-element-id": "grid_top", key: "topTaskbar", configName: this.configName, dataUnit: this._dataUnit, messagesBuilder: this.messagesBuilder, buttons: this._topTaskbarProcessor.buttons, disabledButtons: this._topTaskbarProcessor.disabledButtons, customButtons: this._topTaskbarProcessor.customButtons, primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.topTaskbarCustomSlotId, overflowStrategy: 'none' }, h("slot", { name: this.topTaskbarCustomSlotId }))), h("ez-grid", { ref: ref => this._grid = ref, class: (this.presentationMode === PresentationMode.SECONDARY ? "snk-grid-container__without-shadow " : "") + "snk-grid__table", "data-element-id": "embedded", dataUnit: this._dataUnit, key: "grid-" + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: (evt) => { this.gridConfigChangeHandler(evt); }, onEzDoubleClick: (evt) => this.gridDoubleClick.emit(evt.detail), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, columnfilterDataSource: this.columnFilterDataSource, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, recordsValidator: this.recordsValidator, canEdit: this.canEdit }, h("snk-taskbar", { id: 'teste', dataUnit: this._dataUnit, configName: this.configName, messagesBuilder: this.messagesBuilder, "data-element-id": "grid_left", buttons: this._headerTaskbarProcessor.buttons, presentationMode: this.presentationMode, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.getActionsList(), primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.gridHeaderCustomSlotId }, h("slot", { name: this.gridHeaderCustomSlotId }))), h("div", { class: "ez-col ez-col--sd-12" }, h("slot", { name: "SnkGridFooter" })), h("ez-modal", { modalSize: "small", closeEsc: false, closeOutsideClick: false, opened: this._popUpGridConfig, 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.resourceID }))));
428
+ h(Fragment, null, h("snk-filter-bar", { ref: (ref) => this._snkFilterBar = ref, title: this.filterBarTitle, dataUnit: this._dataUnit, "data-element-id": "gridFilter", class: "snk-grid__filter-bar ez-align--top", configName: this.configName, messagesBuilder: this.messagesBuilder, resourceID: this.resourceID, onConfigUpdated: evt => this.handleFilterConfigUpdated(evt.detail), disablePersonalizedFilter: this.disablePersonalizedFilter, filterBarLegacyConfigName: this.filterBarLegacyConfigName }), h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-left--medium snk-grid__header-divider" })), h("snk-taskbar", { class: "ez-padding-left--medium", "data-element-id": "grid_top", key: "topTaskbar", configName: this.configName, dataUnit: this._dataUnit, messagesBuilder: this.messagesBuilder, buttons: this._topTaskbarProcessor.buttons, disabledButtons: this._topTaskbarProcessor.disabledButtons, customButtons: this._topTaskbarProcessor.customButtons, primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.topTaskbarCustomSlotId, overflowStrategy: 'none' }, h("slot", { name: this.topTaskbarCustomSlotId }))), h("ez-grid", { ref: ref => this._grid = ref, class: (this.presentationMode === PresentationMode.SECONDARY ? "snk-grid-container__without-shadow " : "") + "snk-grid__table", "data-element-id": "embedded", dataUnit: this._dataUnit, key: "grid-" + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: (evt) => { this.gridConfigChangeHandler(evt); }, onEzDoubleClick: (evt) => this.gridDoubleClick.emit(evt.detail), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, columnfilterDataSource: this.columnFilterDataSource, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, recordsValidator: this.recordsValidator, canEdit: this.canEdit }, h("snk-taskbar", { id: 'teste', dataUnit: this._dataUnit, configName: this.configName, messagesBuilder: this.messagesBuilder, "data-element-id": "grid_left", buttons: this._headerTaskbarProcessor.buttons, presentationMode: this.presentationMode, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.getActionsList(), primaryButton: this.getPrimaryButton(), resourceID: this.resourceID, customContainerId: this.taskbarCustomContainerId, customSlotId: this.gridHeaderCustomSlotId }, h("slot", { name: this.gridHeaderCustomSlotId }))), h("div", { class: "ez-col ez-col--sd-12" }, h("slot", { name: "SnkGridFooter" })), h("ez-modal", { modalSize: "small", closeEsc: false, closeOutsideClick: false, opened: this._popUpGridConfig, 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.resourceID }))));
420
429
  }
421
430
  get _element() { return this; }
422
431
  static get style() { return snkGridCss; }
@@ -440,6 +449,8 @@ const SnkGrid = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
440
449
  "gridHeaderCustomSlotId": [1, "grid-header-custom-slot-id"],
441
450
  "topTaskbarCustomSlotId": [1, "top-taskbar-custom-slot-id"],
442
451
  "disablePersonalizedFilter": [4, "disable-personalized-filter"],
452
+ "gridLegacyConfigName": [1, "grid-legacy-config-name"],
453
+ "filterBarLegacyConfigName": [1, "filter-bar-legacy-config-name"],
443
454
  "_dataUnit": [32],
444
455
  "_dataState": [32],
445
456
  "_gridConfig": [32],
@@ -69,6 +69,9 @@ const SnkSimpleCrud = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
69
69
  this.actionsList = undefined;
70
70
  this.configName = undefined;
71
71
  this.showConfiguratorButtons = undefined;
72
+ this.gridLegacyConfigName = undefined;
73
+ this.formLegacyConfigName = undefined;
74
+ this.ignoreReadOnlyFormFields = false;
72
75
  }
73
76
  getButtons(selected, changeModeBtn) {
74
77
  return this.addConfigButton(this.resolveInMemoryBtns(selected ? REGULAR_SELECTED_BTNS : REGULAR_DEFAULT_BTNS)
@@ -122,6 +125,44 @@ const SnkSimpleCrud = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
122
125
  this.dataStateChange.emit(newValue);
123
126
  }
124
127
  }
128
+ async observeFormLegacy() {
129
+ await this.handleUpdateFormLegacyConfig();
130
+ }
131
+ async observeGridLegacy() {
132
+ await this.handleUpdateGridLegacyConfig();
133
+ }
134
+ async handleUpdateGridLegacyConfig() {
135
+ if (this.gridLegacyConfigName) {
136
+ this.addGridLegacyConfigName();
137
+ if (this._gridConfigAlreadyLoaded) {
138
+ await this.loadGridConfig(true);
139
+ }
140
+ }
141
+ }
142
+ async handleUpdateFormLegacyConfig() {
143
+ var _a, _b, _c;
144
+ if (this.formLegacyConfigName) {
145
+ const legacyConfig = await this.fetchFormLegacyConfig();
146
+ if (!legacyConfig)
147
+ return;
148
+ const rawFields = (_c = (_b = (_a = legacyConfig === null || legacyConfig === void 0 ? void 0 : legacyConfig.formConfig) === null || _a === void 0 ? void 0 : _a.layout) === null || _b === void 0 ? void 0 : _b.field) !== null && _c !== void 0 ? _c : [];
149
+ const fields = Array.isArray(rawFields) ? rawFields : [rawFields];
150
+ const newConfig = { emptyConfig: false, fields: fields };
151
+ this.setFormConfig(newConfig, true);
152
+ this._formConfigManager.setConfig(this.formConfig);
153
+ }
154
+ }
155
+ async fetchFormLegacyConfig() {
156
+ const payload = {
157
+ 'requestBody': {
158
+ 'config': {
159
+ 'chave': this.formLegacyConfigName,
160
+ 'tipo': 'T',
161
+ },
162
+ },
163
+ };
164
+ return await this.application.callServiceBroker('SystemUtilsSP.getConf', JSON.stringify(payload));
165
+ }
125
166
  openConfig(viewMode) {
126
167
  this._snkConfigurator.close();
127
168
  if (viewMode === VIEW_MODE.GRID) {
@@ -140,10 +181,18 @@ const SnkSimpleCrud = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
140
181
  });
141
182
  }
142
183
  openFormConfig() {
184
+ //No momento não daremos suporte para configuraçao de formulário quando houver legacy config
185
+ if (this.formLegacyConfigName)
186
+ return;
143
187
  this._showFormConfig = true;
144
188
  }
145
- loadGridConfig() {
146
- if (this.gridConfig != undefined || this._gridConfigAlreadyLoaded) {
189
+ addGridLegacyConfigName() {
190
+ if (this.gridLegacyConfigName && this.configName) {
191
+ ConfigStorage.addGridLegacyConfig(this.configName, this.gridLegacyConfigName);
192
+ }
193
+ }
194
+ loadGridConfig(forceUpdate) {
195
+ if ((this.gridConfig != undefined || this._gridConfigAlreadyLoaded) && !forceUpdate) {
147
196
  return;
148
197
  }
149
198
  this._gridConfigAlreadyLoaded = true;
@@ -178,6 +227,7 @@ const SnkSimpleCrud = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
178
227
  if (this.gridConfig != undefined || this._gridConfigAlreadyLoaded) {
179
228
  return;
180
229
  }
230
+ await this.addGridLegacyConfigName();
181
231
  this.loadGridConfig();
182
232
  this.loadFormConfig();
183
233
  }
@@ -345,7 +395,9 @@ const SnkSimpleCrud = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
345
395
  return (_b = (_a = this.formConfig) === null || _a === void 0 ? void 0 : _a.fields) !== null && _b !== void 0 ? _b : this._formFields;
346
396
  }
347
397
  handleFormSetFields(fields) {
348
- this._formFields = fields !== null && fields !== void 0 ? fields : [];
398
+ if (!ObjectUtils.equals(this._formFields, fields)) {
399
+ this._formFields = fields !== null && fields !== void 0 ? fields : [];
400
+ }
349
401
  }
350
402
  fieldsOptionLoader(argument) {
351
403
  const searchTerm = argument === null || argument === void 0 ? void 0 : argument.toLowerCase();
@@ -435,7 +487,9 @@ const SnkSimpleCrud = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
435
487
  this.gridConfig = config;
436
488
  CrudUtils.assertDefaultSorting(this.gridConfig, this.dataUnit);
437
489
  }
438
- setFormConfig(config) {
490
+ setFormConfig(config, forceUpdate) {
491
+ if (this.formConfig && !forceUpdate)
492
+ return;
439
493
  this.formConfig = config;
440
494
  }
441
495
  closeGridConfig() {
@@ -444,22 +498,26 @@ const SnkSimpleCrud = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
444
498
  closeFormConfig() {
445
499
  this._showFormConfig = false;
446
500
  }
501
+ //No momento não daremos suporte para configuração de formulário quando houver formLegacyConfigName
502
+ handleShowFormConfig() {
503
+ return this._showFormConfig && !this.formLegacyConfigName;
504
+ }
447
505
  /* istanbul ignore next */
448
506
  render() {
449
- var _a;
507
+ var _a, _b, _c;
450
508
  if (this.dataUnit == undefined) {
451
509
  return;
452
510
  }
453
511
  return (h("snk-data-unit", { class: "simple-crud__container", dataUnit: this.dataUnit, useCancelConfirm: this.useCancelConfirm, onDataStateChange: evt => this.onDataStateChange(evt), onCancelEdition: this.handleCancelEdit.bind(this), onInsertionMode: () => this.goToView(VIEW_MODE.FORM), onDataUnitReady: (evt) => this.dataUnitReady.emit(evt.detail), ignoreSaveMessage: this._currentViewMode === VIEW_MODE.GRID, onMessagesBuilderUpdated: evt => this.messagesBuilder = evt.detail }, h("header", null, h("slot", { name: "snkSimpleCrudHeader" })), h("section", { class: "ez-box ez-box--shadow simple-crud__container-section" }, h("snk-taskbar", { class: "ez-box ez-box--shadow ez-padding--medium", dataUnit: this.dataUnit, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-element-id": "grid_left", messagesBuilder: this.messagesBuilder, buttons: this._taskbarProcessor.buttons, actionsList: this.getActionsList(), disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, slot: "leftButtons", presentationMode: PresentationMode.SECONDARY }, h("slot", { name: "TASKBAR_CUSTOM_ELEMENTS" })), h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "simple-crud" }, h("stack-item", null, h("ez-grid", { class: "ez-margin-bottom--large", ref: ref => this._grid = ref, dataUnit: this.dataUnit, config: this.gridConfig, "no-header": true, multipleSelection: this.multipleSelection, onEzDoubleClick: () => this.goToView(VIEW_MODE.FORM), onConfigChange: evt => this.gridConfigChangeHandler(evt), columnfilterDataSource: this.dataUnit.name && this.dataUnit.name.includes(InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME)
454
512
  ? undefined
455
- : this._multiSelectionListDataSource, useEnterLikeTab: this.useEnterLikeTab }, h("div", { slot: "footer" }, h("slot", { name: "snkSimpleCrudFooter" })))), h("stack-item", null, h("ez-form", { class: `ez-margin-top--large ${this._showFormConfig ? "simple-crud__form--hidden" : ""}`, dataUnit: this.dataUnit, config: this.formConfig,
456
- // config={this._formConfigManager?.getConfig(this.dataState?.insertionMode, this.dataUnit)}
457
- fieldToFocus: this._fieldToGetFocus, onEzFormSetFields: (evt) => this.handleFormSetFields(evt.detail), onEzFormRequestClearFieldToFocus: this.clearFieldToFocusHandler.bind(this) }), this._showFormConfig && h("snk-form-config", { messagesBuilder: this.messagesBuilder, dataUnit: this.dataUnit, configManager: this._formConfigManager, onConfigClose: () => this.closeFormConfig() })), this.messagesBuilder && h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.goToView(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showConfiguratorButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, 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._resourceID }))));
513
+ : this._multiSelectionListDataSource, useEnterLikeTab: this.useEnterLikeTab }, h("div", { slot: "footer" }, h("slot", { name: "snkSimpleCrudFooter" })))), h("stack-item", null, h("ez-form", { class: `ez-margin-top--large ${this.handleShowFormConfig() ? "simple-crud__form--hidden" : ""}`, dataUnit: this.dataUnit, config: (_b = this._formConfigManager) === null || _b === void 0 ? void 0 : _b.getConfig(this.ignoreReadOnlyFormFields ? (_c = this.dataState) === null || _c === void 0 ? void 0 : _c.insertionMode : false, this.dataUnit), fieldToFocus: this._fieldToGetFocus, onEzFormSetFields: (evt) => this.handleFormSetFields(evt.detail), onEzFormRequestClearFieldToFocus: this.clearFieldToFocusHandler.bind(this) }), this.handleShowFormConfig() && h("snk-form-config", { messagesBuilder: this.messagesBuilder, dataUnit: this.dataUnit, configManager: this._formConfigManager, onConfigClose: () => this.closeFormConfig() })), this.messagesBuilder && h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.goToView(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail), showActionButtons: this.showConfiguratorButtons, onSave: evt => this.handleConfiguratorEvent(evt, 'SAVE'), onCancel: evt => this.handleConfiguratorEvent(evt, 'CANCEL'), resourceID: this._resourceID, 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._resourceID }))));
458
514
  }
459
515
  get _element() { return this; }
460
516
  static get watchers() { return {
461
517
  "mode": ["onModeChange"],
462
- "dataState": ["observeDataState"]
518
+ "dataState": ["observeDataState"],
519
+ "formLegacyConfigName": ["observeFormLegacy"],
520
+ "gridLegacyConfigName": ["observeGridLegacy"]
463
521
  }; }
464
522
  static get style() { return snkSimpleCrudCss; }
465
523
  }, [6, "snk-simple-crud", {
@@ -476,6 +534,9 @@ const SnkSimpleCrud = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
476
534
  "actionsList": [16],
477
535
  "configName": [1025, "config-name"],
478
536
  "showConfiguratorButtons": [4, "show-configurator-buttons"],
537
+ "gridLegacyConfigName": [1, "grid-legacy-config-name"],
538
+ "formLegacyConfigName": [1, "form-legacy-config-name"],
539
+ "ignoreReadOnlyFormFields": [4, "ignore-read-only-form-fields"],
479
540
  "_showPopUpGridConfig": [32],
480
541
  "_showFormConfig": [32],
481
542
  "_currentViewMode": [32],
@@ -175,6 +175,10 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
175
175
  requestAnimationFrame(() => { var _a; return (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate(); });
176
176
  });
177
177
  }
178
+ observeDisabledButtons() {
179
+ var _a;
180
+ (_a = this._overFlowWatcher) === null || _a === void 0 ? void 0 : _a.forceUpdate();
181
+ }
178
182
  // Internal methods
179
183
  elementsFromString(strButtons) {
180
184
  const elements = [];
@@ -473,7 +477,8 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
473
477
  }
474
478
  get _element() { return this; }
475
479
  static get watchers() { return {
476
- "buttons": ["observeButtons"]
480
+ "buttons": ["observeButtons"],
481
+ "disabledButtons": ["observeDisabledButtons"]
477
482
  }; }
478
483
  static get style() { return snkTaskbarCss; }
479
484
  }, [6, "snk-taskbar", {
@@ -232,7 +232,7 @@ class PersonalizedFilterFetcher {
232
232
  assistent
233
233
  }
234
234
  }`);
235
- this.templateByQuery.set("savePersonalizedFilter", dist.gql `
235
+ this.templateByQuery.set("savePersonalizedFilter", dist.gql `
236
236
  mutation($name: String!, $filterAssistent: InputFilterAssistent!) {
237
237
  $queryAlias$: savePersonalizedFilter(name: $name, filterAssistent: $filterAssistent) {
238
238
  id
@@ -254,11 +254,11 @@ class PersonalizedFilterFetcher {
254
254
  }
255
255
  }`);
256
256
  }
257
- async loadPersonalizedFilter(resourceID, filterID, configName) {
257
+ async loadPersonalizedFilter(resourceID, filterID, configName, legacyConfigName) {
258
258
  return new Promise((resolve, reject) => {
259
259
  DataFetcher.get()
260
260
  .callGraphQL({
261
- values: { name: this.resolveURI(resourceID, configName) + "/" + filterID },
261
+ values: { name: this.resolveURI(resourceID, configName) + "/" + filterID + this.resolveLegacyConfigName(legacyConfigName) },
262
262
  query: this.templateByQuery.get("fetchFilterAssistent"),
263
263
  })
264
264
  .then((resp) => {
@@ -270,6 +270,9 @@ class PersonalizedFilterFetcher {
270
270
  });
271
271
  });
272
272
  }
273
+ resolveLegacyConfigName(legacyConfigName) {
274
+ return legacyConfigName ? `?legacyResourceID=${legacyConfigName}` : '';
275
+ }
273
276
  async savePersonalizedFilter(personalizedFilter, resourceID, configName) {
274
277
  if (!personalizedFilter || Object.keys(personalizedFilter).length == 0) {
275
278
  return Promise.reject(new Error("personalizedFilter não pode ser vazio"));
@@ -358,11 +361,30 @@ var CONFIG_SOURCE;
358
361
  CONFIG_SOURCE["filterBar"] = "filterBar";
359
362
  })(CONFIG_SOURCE || (CONFIG_SOURCE = {}));
360
363
  class ConfigStorage {
361
- static preload(resourceID, configName) {
364
+ static addFilterBarLegacyConfig(configName, legacyConfigName) {
365
+ this.validateConfigName(configName, legacyConfigName);
366
+ this.filterBarLegacyConfig.set(configName, legacyConfigName);
367
+ }
368
+ static addFormLegacyConfig(configName, legacyConfigName) {
369
+ this.validateConfigName(configName, legacyConfigName);
370
+ this.formLegacyConfig.set(configName, legacyConfigName);
371
+ }
372
+ static addGridLegacyConfig(configName, legacyConfigName) {
373
+ this.validateConfigName(configName, legacyConfigName);
374
+ this.gridLegacyConfig.set(configName, legacyConfigName);
375
+ }
376
+ static preload(resourceID, configName, legacyConfigs) {
377
+ if (configName && (legacyConfigs === null || legacyConfigs === void 0 ? void 0 : legacyConfigs.gridLegacyConfig)) {
378
+ ConfigStorage.addGridLegacyConfig(configName, legacyConfigs.gridLegacyConfig);
379
+ }
380
+ if (configName && (legacyConfigs === null || legacyConfigs === void 0 ? void 0 : legacyConfigs.formLegacyConfig)) {
381
+ ConfigStorage.addFormLegacyConfig(configName, legacyConfigs.formLegacyConfig);
382
+ }
362
383
  ConfigStorage.loadFormConfig(configName, resourceID);
363
384
  ConfigStorage.loadGridConfig(configName, resourceID);
364
385
  }
365
386
  static async loadFilterBarConfig(name, resourceID, urlParams) {
387
+ urlParams = this.handleLegacyConfig(name, CONFIG_SOURCE.filterBar, urlParams);
366
388
  const cacheID = ConfigStorage.buildCacheID(name, CONFIG_SOURCE.filterBar, resourceID);
367
389
  if (!ConfigStorage.configById.has(cacheID)) {
368
390
  ConfigStorage.configById.set(cacheID, ConfigStorage.filterBarConfigFetcher.getConfig(resourceID, name, urlParams));
@@ -370,6 +392,7 @@ class ConfigStorage {
370
392
  return ConfigStorage.configById.get(cacheID);
371
393
  }
372
394
  static async loadFormConfig(name, resourceID) {
395
+ name = this.handleLegacyConfigAsString(name, CONFIG_SOURCE.form);
373
396
  const cacheID = ConfigStorage.buildCacheID(name, CONFIG_SOURCE.form, resourceID);
374
397
  if (!ConfigStorage.configById.has(cacheID)) {
375
398
  ConfigStorage.configById.set(cacheID, ConfigStorage.formConfigFetcher.loadFormConfig(name, resourceID));
@@ -377,6 +400,7 @@ class ConfigStorage {
377
400
  return ConfigStorage.configById.get(cacheID);
378
401
  }
379
402
  static async loadGridConfig(name, resourceID) {
403
+ name = this.handleLegacyConfigAsString(name, CONFIG_SOURCE.grid);
380
404
  const cacheID = ConfigStorage.buildCacheID(name, CONFIG_SOURCE.grid, resourceID);
381
405
  if (!ConfigStorage.configById.has(cacheID)) {
382
406
  ConfigStorage.configById.set(cacheID, ConfigStorage.gridConfigFetcher.getConfig(name, resourceID));
@@ -388,6 +412,7 @@ class ConfigStorage {
388
412
  return this.filterBarConfigFetcher.saveConfig(config, resourceID, name);
389
413
  }
390
414
  static async saveFormConfig(config, name, resourceID) {
415
+ name = this.handleLegacyConfigAsString(name, CONFIG_SOURCE.form);
391
416
  await this.deleteFormConfigCache(name, resourceID);
392
417
  return this.formConfigFetcher.saveConfig(config, name, resourceID);
393
418
  }
@@ -402,7 +427,8 @@ class ConfigStorage {
402
427
  return this.gridConfigFetcher.saveConfig(config, name, resourceID);
403
428
  }
404
429
  static async loadPersonalizedFilter(filterId, resourceID, configName) {
405
- return this.personalizedFilterFetcher.loadPersonalizedFilter(resourceID, filterId, configName);
430
+ const legacyConfigName = this.filterBarLegacyConfig.get(configName);
431
+ return this.personalizedFilterFetcher.loadPersonalizedFilter(resourceID, filterId, configName, legacyConfigName);
406
432
  }
407
433
  static async savePersonalizedFilter(personalizedFilter, resourceID, configName) {
408
434
  //Ao criar ou alterar um filtro personalizado,
@@ -425,6 +451,38 @@ class ConfigStorage {
425
451
  static async deleteFilterBarConfigCache(name, resourceID) {
426
452
  await this.deleteConfigCache(name, resourceID, CONFIG_SOURCE.filterBar);
427
453
  }
454
+ static validateConfigName(configName, legacyConfigName) {
455
+ if (!configName)
456
+ throw Error(this.CONFIG_NAME_ERROR_MESSAGE);
457
+ if (!legacyConfigName)
458
+ throw Error(this.LEGACY_CONFIG_NAME_ERROR_MESSAGE);
459
+ }
460
+ static handleLegacyConfig(configName, configSource, urlParams) {
461
+ let legacyConfigName;
462
+ switch (configSource) {
463
+ case CONFIG_SOURCE.filterBar:
464
+ legacyConfigName = this.filterBarLegacyConfig.get(configName);
465
+ break;
466
+ case CONFIG_SOURCE.grid:
467
+ legacyConfigName = this.gridLegacyConfig.get(configName);
468
+ break;
469
+ case CONFIG_SOURCE.form:
470
+ legacyConfigName = this.formLegacyConfig.get(configName);
471
+ }
472
+ const params = urlParams ? Object.assign({}, urlParams) : {};
473
+ if (legacyConfigName) {
474
+ params['legacyResourceID'] = legacyConfigName;
475
+ }
476
+ return params;
477
+ }
478
+ static handleLegacyConfigAsString(name, source) {
479
+ const params = this.handleLegacyConfig(name, source);
480
+ const legacyResourceID = params['legacyResourceID'];
481
+ if (legacyResourceID) {
482
+ name = name + `?legacyResourceID=${legacyResourceID}`;
483
+ }
484
+ return name;
485
+ }
428
486
  static async deleteConfigCache(name, resourceID, source) {
429
487
  const cacheID = ConfigStorage.buildCacheID(name, source, resourceID);
430
488
  this.configById.delete(cacheID);
@@ -436,6 +494,11 @@ class ConfigStorage {
436
494
  return `req_${source}_${name}_${resourceID}`;
437
495
  }
438
496
  }
497
+ ConfigStorage.CONFIG_NAME_ERROR_MESSAGE = "ConfigName precisa ser informado.";
498
+ ConfigStorage.LEGACY_CONFIG_NAME_ERROR_MESSAGE = "LegacyConfigName precisa ser informado.";
499
+ ConfigStorage.filterBarLegacyConfig = new Map();
500
+ ConfigStorage.formLegacyConfig = new Map();
501
+ ConfigStorage.gridLegacyConfig = new Map();
439
502
  ConfigStorage.configById = new Map();
440
503
  ConfigStorage.filterBarConfigFetcher = new FilterBarConfigFetcher();
441
504
  ConfigStorage.formConfigFetcher = new FormConfigFetcher();
@@ -1,4 +1,4 @@
1
- import { C as ConfigStorage } from './ConfigStorage-39ed8aeb.js';
1
+ import { C as ConfigStorage } from './ConfigStorage-101a2b4c.js';
2
2
  import { ObjectUtils, StringUtils } from '@sankhyalabs/core';
3
3
  import { F as FormConfigFetcher } from './form-config-fetcher-f121f880.js';
4
4
 
@@ -8,6 +8,11 @@ class SnkFormConfigManager {
8
8
  this._configName = configName;
9
9
  this._onConfigChange = onConfigChange;
10
10
  }
11
+ addFormLegacyConfig(legacyConfigName) {
12
+ if (this._configName) {
13
+ ConfigStorage.addFormLegacyConfig(this._configName, legacyConfigName);
14
+ }
15
+ }
11
16
  async loadConfig() {
12
17
  return new Promise(resolve => {
13
18
  ConfigStorage.loadFormConfig(this._configName, this._resourceID)