@sankhyalabs/sankhyablocks 8.0.2 → 8.1.0-dev.2

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 (140) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/{ConfigStorage-e044fff2.js → ConfigStorage-73e7afff.js} +4 -4
  3. package/dist/cjs/{DataFetcher-62b9b2c8.js → DataFetcher-004811c6.js} +13 -0
  4. package/dist/cjs/{SnkFormConfigManager-5d4b4765.js → SnkFormConfigManager-d1f1a222.js} +2 -2
  5. package/dist/cjs/auth-fetcher-58237931.js +34 -0
  6. package/dist/cjs/{dataunit-fetcher-2a3c86b1.js → dataunit-fetcher-029eafbd.js} +1 -1
  7. package/dist/cjs/{filter-bar-config-fetcher-71119171.js → filter-bar-config-fetcher-2b8ed9d0.js} +1 -1
  8. package/dist/cjs/{form-config-fetcher-2b32c782.js → form-config-fetcher-181767c9.js} +2 -2
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/cjs/{pesquisa-fetcher-ee74ae40.js → pesquisa-fetcher-9a97994a.js} +1 -1
  11. package/dist/cjs/{resource-fetcher-18c2d5ad.js → resource-fetcher-c0332609.js} +1 -1
  12. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  13. package/dist/cjs/snk-actions-button.cjs.entry.js +3 -2
  14. package/dist/cjs/snk-application.cjs.entry.js +21 -38
  15. package/dist/cjs/snk-attach.cjs.entry.js +3 -3
  16. package/dist/cjs/snk-crud.cjs.entry.js +11 -4
  17. package/dist/cjs/snk-data-exporter.cjs.entry.js +3 -2
  18. package/dist/cjs/{snk-data-unit-807a8684.js → snk-data-unit-cc7a7ed0.js} +5 -0
  19. package/dist/cjs/snk-data-unit.cjs.entry.js +1 -1
  20. package/dist/cjs/snk-detail-view.cjs.entry.js +14 -10
  21. package/dist/cjs/snk-filter-bar.cjs.entry.js +6 -5
  22. package/dist/cjs/snk-filter-detail.cjs.entry.js +4 -3
  23. package/dist/cjs/snk-filter-modal-item.cjs.entry.js +6 -5
  24. package/dist/cjs/snk-form-config.cjs.entry.js +4 -3
  25. package/dist/cjs/snk-form.cjs.entry.js +7 -6
  26. package/dist/cjs/snk-grid-config.cjs.entry.js +6 -5
  27. package/dist/cjs/snk-grid.cjs.entry.js +9 -6
  28. package/dist/cjs/{snk-guides-viewer-263de371.js → snk-guides-viewer-27f87d90.js} +5 -4
  29. package/dist/cjs/snk-guides-viewer.cjs.entry.js +9 -8
  30. package/dist/cjs/snk-personalized-filter.cjs.entry.js +6 -5
  31. package/dist/cjs/snk-print-selector.cjs.entry.js +2 -1
  32. package/dist/cjs/snk-simple-crud.cjs.entry.js +6 -4
  33. package/dist/collection/components/snk-application/snk-application.js +60 -0
  34. package/dist/collection/components/snk-crud/snk-crud.js +27 -3
  35. package/dist/collection/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.js +24 -2
  36. package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +20 -1
  37. package/dist/collection/components/snk-data-unit/snk-data-unit.js +39 -0
  38. package/dist/collection/components/snk-grid/snk-grid.js +60 -1
  39. package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +21 -2
  40. package/dist/collection/components/teste-pesquisa/teste-pesquisa.css +1 -1
  41. package/dist/collection/lib/http/data-fetcher/recaller/GraphQLRecaller.js +14 -0
  42. package/dist/components/DataFetcher.js +14 -1
  43. package/dist/components/auth-fetcher.js +32 -0
  44. package/dist/components/snk-application2.js +12 -29
  45. package/dist/components/snk-crud.js +9 -2
  46. package/dist/components/snk-data-unit2.js +6 -0
  47. package/dist/components/snk-detail-view2.js +10 -3
  48. package/dist/components/snk-grid2.js +7 -1
  49. package/dist/components/snk-simple-crud2.js +4 -2
  50. package/dist/esm/{ConfigStorage-6ec80135.js → ConfigStorage-19a7260b.js} +4 -4
  51. package/dist/esm/{DataFetcher-f7cf7302.js → DataFetcher-e0fc5549.js} +14 -1
  52. package/dist/esm/{SnkFormConfigManager-b8091dec.js → SnkFormConfigManager-1a42eb02.js} +2 -2
  53. package/dist/esm/auth-fetcher-83a946f8.js +32 -0
  54. package/dist/esm/{dataunit-fetcher-06e70d4c.js → dataunit-fetcher-6a695723.js} +1 -1
  55. package/dist/esm/{filter-bar-config-fetcher-efd7ab4e.js → filter-bar-config-fetcher-06e02851.js} +1 -1
  56. package/dist/esm/{form-config-fetcher-a5b23cd9.js → form-config-fetcher-9e167008.js} +2 -2
  57. package/dist/esm/loader.js +1 -1
  58. package/dist/esm/{pesquisa-fetcher-f06f4883.js → pesquisa-fetcher-9118eb7a.js} +1 -1
  59. package/dist/esm/{resource-fetcher-92640c2f.js → resource-fetcher-768d5556.js} +1 -1
  60. package/dist/esm/sankhyablocks.js +1 -1
  61. package/dist/esm/snk-actions-button.entry.js +3 -2
  62. package/dist/esm/snk-application.entry.js +19 -36
  63. package/dist/esm/snk-attach.entry.js +3 -3
  64. package/dist/esm/snk-crud.entry.js +11 -4
  65. package/dist/esm/snk-data-exporter.entry.js +3 -2
  66. package/dist/esm/{snk-data-unit-351ef08f.js → snk-data-unit-77508763.js} +5 -0
  67. package/dist/esm/snk-data-unit.entry.js +1 -1
  68. package/dist/esm/snk-detail-view.entry.js +14 -10
  69. package/dist/esm/snk-filter-bar.entry.js +6 -5
  70. package/dist/esm/snk-filter-detail.entry.js +4 -3
  71. package/dist/esm/snk-filter-modal-item.entry.js +6 -5
  72. package/dist/esm/snk-form-config.entry.js +4 -3
  73. package/dist/esm/snk-form.entry.js +7 -6
  74. package/dist/esm/snk-grid-config.entry.js +6 -5
  75. package/dist/esm/snk-grid.entry.js +9 -6
  76. package/dist/esm/{snk-guides-viewer-a6743bd9.js → snk-guides-viewer-c47cd45e.js} +5 -4
  77. package/dist/esm/snk-guides-viewer.entry.js +9 -8
  78. package/dist/esm/snk-personalized-filter.entry.js +6 -5
  79. package/dist/esm/snk-print-selector.entry.js +2 -1
  80. package/dist/esm/snk-simple-crud.entry.js +6 -4
  81. package/dist/sankhyablocks/{p-a54bdcc8.js → p-0a4c753d.js} +2 -2
  82. package/dist/sankhyablocks/{p-6785e5c9.entry.js → p-0ed0fc02.entry.js} +1 -1
  83. package/dist/sankhyablocks/p-22c6fe1a.entry.js +1 -0
  84. package/dist/sankhyablocks/{p-70b8e4a4.js → p-2ac9c585.js} +1 -1
  85. package/dist/sankhyablocks/p-34085ced.entry.js +1 -0
  86. package/dist/sankhyablocks/p-34a1357a.entry.js +1 -0
  87. package/dist/sankhyablocks/p-4721c3db.js +1 -0
  88. package/dist/sankhyablocks/p-6759adae.entry.js +1 -0
  89. package/dist/sankhyablocks/{p-49b24449.js → p-7b8b8ae9.js} +1 -1
  90. package/dist/sankhyablocks/p-7e285d6c.entry.js +11 -0
  91. package/dist/sankhyablocks/p-815a42c0.entry.js +1 -0
  92. package/dist/sankhyablocks/p-8a41172a.entry.js +1 -0
  93. package/dist/sankhyablocks/{p-bdcfbe10.js → p-8f8184ff.js} +1 -1
  94. package/dist/sankhyablocks/p-968741cc.js +1 -0
  95. package/dist/sankhyablocks/{p-e7aefd06.js → p-976e56e9.js} +1 -1
  96. package/dist/sankhyablocks/{p-10a1b3a6.js → p-98f9d076.js} +1 -1
  97. package/dist/sankhyablocks/p-bc735728.entry.js +1 -0
  98. package/dist/sankhyablocks/p-be684b38.entry.js +1 -0
  99. package/dist/sankhyablocks/p-c0f656af.entry.js +1 -0
  100. package/dist/sankhyablocks/p-c44f6aaf.entry.js +1 -0
  101. package/dist/sankhyablocks/p-c57bd935.entry.js +1 -0
  102. package/dist/sankhyablocks/p-cfd7da4a.entry.js +1 -0
  103. package/dist/sankhyablocks/{p-0d8f5882.js → p-d1b89765.js} +1 -1
  104. package/dist/sankhyablocks/p-df8621b4.js +1 -0
  105. package/dist/sankhyablocks/p-e28129aa.entry.js +1 -0
  106. package/dist/sankhyablocks/p-e7e54737.entry.js +1 -0
  107. package/dist/sankhyablocks/p-f31bfdee.entry.js +1 -0
  108. package/dist/sankhyablocks/p-f88c45bf.js +1 -0
  109. package/dist/sankhyablocks/p-fe010e54.entry.js +1 -0
  110. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  111. package/dist/types/components/snk-application/snk-application.d.ts +9 -1
  112. package/dist/types/components/snk-crud/snk-crud.d.ts +5 -0
  113. package/dist/types/components/snk-crud/subcomponents/snk-detail-view/snk-detail-view.d.ts +5 -0
  114. package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +4 -0
  115. package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +8 -0
  116. package/dist/types/components/snk-grid/snk-grid.d.ts +13 -0
  117. package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +4 -0
  118. package/dist/types/components.d.ts +72 -1
  119. package/dist/types/lib/http/data-fetcher/recaller/GraphQLRecaller.d.ts +1 -0
  120. package/package.json +2 -2
  121. package/dist/sankhyablocks/p-0e8136f6.entry.js +0 -1
  122. package/dist/sankhyablocks/p-29683966.entry.js +0 -1
  123. package/dist/sankhyablocks/p-2a57f7e1.entry.js +0 -1
  124. package/dist/sankhyablocks/p-3940f1e9.entry.js +0 -1
  125. package/dist/sankhyablocks/p-3e8e3025.entry.js +0 -1
  126. package/dist/sankhyablocks/p-3ef191cf.entry.js +0 -1
  127. package/dist/sankhyablocks/p-424a673f.entry.js +0 -1
  128. package/dist/sankhyablocks/p-5438f093.entry.js +0 -1
  129. package/dist/sankhyablocks/p-5807b3aa.entry.js +0 -1
  130. package/dist/sankhyablocks/p-5932777e.entry.js +0 -1
  131. package/dist/sankhyablocks/p-610e2459.js +0 -1
  132. package/dist/sankhyablocks/p-75cfc68e.entry.js +0 -1
  133. package/dist/sankhyablocks/p-7a43351d.entry.js +0 -11
  134. package/dist/sankhyablocks/p-829ebd26.entry.js +0 -1
  135. package/dist/sankhyablocks/p-8cf9c9ce.entry.js +0 -1
  136. package/dist/sankhyablocks/p-a304b0f3.entry.js +0 -1
  137. package/dist/sankhyablocks/p-a63aedf3.entry.js +0 -1
  138. package/dist/sankhyablocks/p-b8350ecf.entry.js +0 -1
  139. package/dist/sankhyablocks/p-cbc28ca6.js +0 -1
  140. package/dist/sankhyablocks/p-d23356a6.js +0 -1
@@ -1,12 +1,15 @@
1
1
  import { r as registerInstance, c as createEvent, h, g as getElement } from './index-a7d3d3f1.js';
2
2
  import { ElementIDUtils, ApplicationContext } from '@sankhyalabs/core';
3
3
  import { T as TaskbarElement } from './taskbar-elements-2c761819.js';
4
- import './DataFetcher-f7cf7302.js';
5
- import './pesquisa-fetcher-f06f4883.js';
4
+ import './DataFetcher-e0fc5549.js';
5
+ import './pesquisa-fetcher-9118eb7a.js';
6
6
  import { P as PresentationMode } from './index-1564817d.js';
7
7
  import { c as VIEW_MODE } from './constants-3644f1b6.js';
8
+ import { A as AutorizationType } from './auth-fetcher-83a946f8.js';
8
9
  import './index-bdf75557.js';
9
10
  import './_commonjsHelpers-9943807e.js';
11
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
12
+ import './resource-fetcher-768d5556.js';
10
13
 
11
14
  const snkCrudCss = ".sc-snk-crud-h{display:flex;flex-direction:column;height:100%;width:100%}";
12
15
 
@@ -21,6 +24,7 @@ const SnkCrud = class {
21
24
  this._dataState = undefined;
22
25
  this.attachmentRegisterKey = undefined;
23
26
  this._currentViewMode = VIEW_MODE.GRID;
27
+ this._canEdit = undefined;
24
28
  this.configName = undefined;
25
29
  this.selectionToastConfig = undefined;
26
30
  this.showActionButtons = false;
@@ -31,6 +35,7 @@ const SnkCrud = class {
31
35
  this.multipleSelection = true;
32
36
  this.presentationMode = PresentationMode.PRIMARY;
33
37
  this.messagesBuilder = undefined;
38
+ this.useEnterLikeTab = false;
34
39
  }
35
40
  /**
36
41
  * Usado para alternar a visão entre GRID e FORM externamente.
@@ -113,6 +118,8 @@ const SnkCrud = class {
113
118
  return joinedPrimaryKeys;
114
119
  }
115
120
  componentWillLoad() {
121
+ const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
122
+ application.hasAccess(AutorizationType.UPDATE).then(canEdit => this._canEdit = canEdit);
116
123
  let parent = this._element.parentElement;
117
124
  while (parent) {
118
125
  if (parent.tagName.toUpperCase() === "SNK-DATA-UNIT") {
@@ -141,7 +148,6 @@ const SnkCrud = class {
141
148
  parent = parent.parentElement;
142
149
  }
143
150
  if (!this.configName) {
144
- const application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
145
151
  this.configName = application.configName;
146
152
  }
147
153
  }
@@ -160,7 +166,8 @@ const SnkCrud = class {
160
166
  this.configuratorCancel.emit();
161
167
  }
162
168
  render() {
163
- return (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, selectionToastConfig: this.selectionToastConfig }, 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" }, 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') }, h("div", { slot: "SnkConfigContainerSlot" }, h("slot", { name: "SnkConfigContainerSlot" })))));
169
+ this._snkDataUnit.ignoreSaveMessage = this._currentViewMode === VIEW_MODE.GRID;
170
+ return (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, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, canEdit: this._canEdit }, 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 }, 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') }, h("div", { slot: "SnkConfigContainerSlot" }, h("slot", { name: "SnkConfigContainerSlot" })))));
164
171
  }
165
172
  get _element() { return getElement(this); }
166
173
  static get watchers() { return {
@@ -3,9 +3,10 @@ import { ObjectUtils, ApplicationContext, 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-1564817d.js';
5
5
  import { R as REPORT_LAUNCHER_RESOURCE_ID } from './constants-3644f1b6.js';
6
- import { D as DataFetcher } from './DataFetcher-f7cf7302.js';
7
- import { S as SnkDataUnit } from './snk-data-unit-351ef08f.js';
6
+ import { D as DataFetcher } from './DataFetcher-e0fc5549.js';
7
+ import { S as SnkDataUnit } from './snk-data-unit-77508763.js';
8
8
  import './_commonjsHelpers-9943807e.js';
9
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
9
10
  import './SnkMessageBuilder-68c1c25a.js';
10
11
 
11
12
  class ItemBuilder {
@@ -20,6 +20,9 @@ const SnkDataUnit = class {
20
20
  const duState = this.buildDataState();
21
21
  this.dataState = duState;
22
22
  if (action.type === Action.DATA_SAVED) {
23
+ if (this.ignoreSaveMessage) {
24
+ return;
25
+ }
23
26
  const msg = this.getMessage("snkDataUnit.saveInfo", action.payload.records[0]);
24
27
  if (msg != undefined) {
25
28
  this.showSuccessMessage(msg);
@@ -65,6 +68,8 @@ const SnkDataUnit = class {
65
68
  this.beforeSave = undefined;
66
69
  this.afterSave = undefined;
67
70
  this.useCancelConfirm = true;
71
+ this.ignoreSaveMessage = undefined;
72
+ this.configName = undefined;
68
73
  this.configName = undefined;
69
74
  }
70
75
  observePageSize() {
@@ -1,4 +1,4 @@
1
- export { S as snk_data_unit } from './snk-data-unit-351ef08f.js';
1
+ export { S as snk_data_unit } from './snk-data-unit-77508763.js';
2
2
  import './index-a7d3d3f1.js';
3
3
  import '@sankhyalabs/core';
4
4
  import '@sankhyalabs/ezui/dist/collection/utils';
@@ -1,20 +1,21 @@
1
1
  import { r as registerInstance, c as createEvent, f as forceUpdate, h, H as Host } from './index-a7d3d3f1.js';
2
- import { S as SnkFormConfigManager } from './SnkFormConfigManager-b8091dec.js';
2
+ import { S as SnkFormConfigManager } from './SnkFormConfigManager-1a42eb02.js';
3
3
  import { FormMetadata, buildFormMetadata } from '@sankhyalabs/ezui/dist/collection/utils/form';
4
- import './DataFetcher-f7cf7302.js';
5
- import './pesquisa-fetcher-f06f4883.js';
4
+ import './DataFetcher-e0fc5549.js';
5
+ import './pesquisa-fetcher-9118eb7a.js';
6
6
  import '@sankhyalabs/core';
7
7
  import { P as PresentationMode } from './index-1564817d.js';
8
8
  import { T as TaskbarElement } from './taskbar-elements-2c761819.js';
9
9
  import { c as VIEW_MODE } from './constants-3644f1b6.js';
10
- import { S as SnkGuidesViewer } from './snk-guides-viewer-a6743bd9.js';
10
+ import { S as SnkGuidesViewer } from './snk-guides-viewer-c47cd45e.js';
11
11
  import { S as SnkMessageBuilder } from './SnkMessageBuilder-68c1c25a.js';
12
- import './ConfigStorage-6ec80135.js';
13
- import './form-config-fetcher-a5b23cd9.js';
14
- import './resource-fetcher-92640c2f.js';
15
- import './filter-bar-config-fetcher-efd7ab4e.js';
12
+ import './ConfigStorage-19a7260b.js';
13
+ import './form-config-fetcher-9e167008.js';
14
+ import './resource-fetcher-768d5556.js';
15
+ import './filter-bar-config-fetcher-06e02851.js';
16
16
  import './filter-item-type.enum-5028ed3f.js';
17
17
  import './_commonjsHelpers-9943807e.js';
18
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
18
19
  import './index-bdf75557.js';
19
20
  import './taskbar-processor-94402e6e.js';
20
21
  import '@sankhyalabs/core/dist/dataunit/DataUnit';
@@ -70,6 +71,7 @@ const SnkDetailView = class {
70
71
  this.snkDetailGuidesChange = createEvent(this, "snkDetailGuidesChange", 7);
71
72
  this.snkSwitchGuide = createEvent(this, "snkSwitchGuide", 7);
72
73
  this._disabledButtons = undefined;
74
+ this._currentView = undefined;
73
75
  this.attachmentRegisterKey = undefined;
74
76
  this.formConfigManager = undefined;
75
77
  this.dataUnitName = undefined;
@@ -81,6 +83,7 @@ const SnkDetailView = class {
81
83
  this.dataState = undefined;
82
84
  this.messagesBuilder = undefined;
83
85
  this.branchGuide = undefined;
86
+ this.canEdit = true;
84
87
  }
85
88
  observerDataState(newValue, oldValue) {
86
89
  const openInsertion = !(oldValue === null || oldValue === void 0 ? void 0 : oldValue.insertionMode) && (newValue === null || newValue === void 0 ? void 0 : newValue.insertionMode);
@@ -194,7 +197,8 @@ const SnkDetailView = class {
194
197
  updateViewStack(viewStack) {
195
198
  var _a, _b;
196
199
  this._viewStack = viewStack;
197
- (_b = (_a = this._viewStack) === null || _a === void 0 ? void 0 : _a.show) === null || _b === void 0 ? void 0 : _b.call(_a, this.selectedForm ? 1 : 0);
200
+ this._currentView = this.selectedForm ? 1 : 0;
201
+ (_b = (_a = this._viewStack) === null || _a === void 0 ? void 0 : _a.show) === null || _b === void 0 ? void 0 : _b.call(_a, this._currentView);
198
202
  }
199
203
  getFormFields() {
200
204
  if (this.selectedForm && this._formMetadata) {
@@ -249,7 +253,7 @@ const SnkDetailView = class {
249
253
  render() {
250
254
  this.updateLabel();
251
255
  //const cardConfig: IFormCardConfig = this._cardsState?.get(this.selectedForm);
252
- return (h(Host, null, h("snk-data-unit", { ref: (el) => this._snkDataUnit = el, dataUnitName: `${this.dataUnitName}`, onDataUnitReady: evt => this.dataUnitReadyHandler(evt), entityName: this.entityName, onDataStateChange: this.handleDataStateChange.bind(this), messagesBuilder: this.messagesBuilder, configName: this._configName }, h("ez-view-stack", { ref: (ref) => this.updateViewStack(ref) }, h("stack-item", null, h("div", { class: "ez-box ez-box--shadow grid-container" }, h("div", { class: "ez-flex ez-title--primary ez-size-width--full ez-padding--large detail-header" }, h("div", { class: "ez-flex ez-text ez-text--bold ez-flex--justify-start ez-flex--align-items-center" }, this._levelPath ? h("span", { class: "level-path" }, this._levelPath + " /") : undefined, this.label)), h("snk-grid", { class: "ez-size-width--full ez-size-height--full", ref: (ref) => this._snkGrid = ref, configName: this._configName, messagesBuilder: this.messagesBuilder, onGridDoubleClick: () => this.emitSwitchEvent(VIEW_MODE.FORM), onActionClick: (evt) => this.executeActionHandler(evt), presentationMode: PresentationMode.SECONDARY, isDetail: true }))), h("stack-item", null, h("snk-form-view", { ref: (ref) => this._snkFormView = ref, canExpand: false, canFix: false, name: this.selectedForm, formMetadata: this._formMetadata, dataUnit: this.dataUnit, fields: this.getFormFields(), label: this.label, levelPath: this._levelPath }, h("snk-taskbar", { key: "guideViewerTaskbar", class: "form-taskbar", "data-element-id": "guideViewer", configName: this._configName, messagesBuilder: this.messagesBuilder, disabledButtons: this._disabledButtons, buttons: "INSERT,PREVIOUS,NEXT,DIVIDER,CLONE,REMOVE,MORE_OPTIONS,DIVIDER,GRID_MODE,CONFIGURATOR", primaryButton: "INSERT", presentationMode: PresentationMode.SECONDARY, onActionClick: evt => this.executeActionHandler(evt), dataUnit: this.dataUnit }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this.entityName, onBack: this.handleAttachBack.bind(this) }))))));
256
+ return (h(Host, null, h("snk-data-unit", { ref: (el) => this._snkDataUnit = el, dataUnitName: `${this.dataUnitName}`, onDataUnitReady: evt => this.dataUnitReadyHandler(evt), entityName: this.entityName, onDataStateChange: this.handleDataStateChange.bind(this), ignoreSaveMessage: this._currentView === VIEW_MODE.GRID, messagesBuilder: this.messagesBuilder, configName: this._configName }, h("ez-view-stack", { ref: (ref) => this.updateViewStack(ref) }, h("stack-item", null, h("div", { class: "ez-box ez-box--shadow grid-container" }, h("div", { class: "ez-flex ez-title--primary ez-size-width--full ez-padding--large detail-header" }, h("div", { class: "ez-flex ez-text ez-text--bold ez-flex--justify-start ez-flex--align-items-center" }, this._levelPath ? h("span", { class: "level-path" }, this._levelPath + " /") : undefined, this.label)), h("snk-grid", { class: "ez-size-width--full ez-size-height--full", ref: (ref) => this._snkGrid = ref, configName: this._configName, messagesBuilder: this.messagesBuilder, onGridDoubleClick: () => this.emitSwitchEvent(VIEW_MODE.FORM), onActionClick: (evt) => this.executeActionHandler(evt), presentationMode: PresentationMode.SECONDARY, canEdit: this.canEdit, isDetail: true }))), h("stack-item", null, h("snk-form-view", { ref: (ref) => this._snkFormView = ref, canExpand: false, canFix: false, name: this.selectedForm, formMetadata: this._formMetadata, dataUnit: this.dataUnit, fields: this.getFormFields(), label: this.label, levelPath: this._levelPath }, h("snk-taskbar", { key: "guideViewerTaskbar", class: "form-taskbar", "data-element-id": "guideViewer", configName: this._configName, messagesBuilder: this.messagesBuilder, disabledButtons: this._disabledButtons, buttons: "INSERT,PREVIOUS,NEXT,DIVIDER,CLONE,REMOVE,MORE_OPTIONS,DIVIDER,GRID_MODE,CONFIGURATOR", primaryButton: "INSERT", presentationMode: PresentationMode.SECONDARY, onActionClick: evt => this.executeActionHandler(evt), dataUnit: this.dataUnit }))), h("stack-item", null, h("snk-attach", { registerKey: this.attachmentRegisterKey, messagesBuilder: this.messagesBuilder, entityName: this.entityName, onBack: this.handleAttachBack.bind(this) }))))));
253
257
  }
254
258
  static get watchers() { return {
255
259
  "dataState": ["observerDataState"]
@@ -1,17 +1,18 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-a7d3d3f1.js';
2
2
  import { DataType, 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-6ec80135.js';
4
+ import { C as ConfigStorage } from './ConfigStorage-19a7260b.js';
5
5
  import { toString } from '@sankhyalabs/core/dist/dataunit/metadata/DataType';
6
6
  import { F as FilterItemType } from './filter-item-type.enum-5028ed3f.js';
7
7
  import { F as FilterOperand } from './index-ae591a44.js';
8
8
  import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
9
9
  import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-75fb0106.js';
10
- import './form-config-fetcher-a5b23cd9.js';
11
- import './DataFetcher-f7cf7302.js';
10
+ import './form-config-fetcher-9e167008.js';
11
+ import './DataFetcher-e0fc5549.js';
12
12
  import './_commonjsHelpers-9943807e.js';
13
- import './resource-fetcher-92640c2f.js';
14
- import './filter-bar-config-fetcher-efd7ab4e.js';
13
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
14
+ import './resource-fetcher-768d5556.js';
15
+ import './filter-bar-config-fetcher-06e02851.js';
15
16
 
16
17
  const buildFilter = (item) => {
17
18
  switch (item.type) {
@@ -2,12 +2,13 @@ import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host, g
2
2
  import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
3
3
  import { F as FilterItemType } from './filter-item-type.enum-5028ed3f.js';
4
4
  import { ApplicationContext, ElementIDUtils, ObjectUtils } from '@sankhyalabs/core';
5
- import { F as FilterBarConfigFetcher } from './filter-bar-config-fetcher-efd7ab4e.js';
5
+ import { F as FilterBarConfigFetcher } from './filter-bar-config-fetcher-06e02851.js';
6
6
  import { E as EPresentationMode } from './presentationMode-783bbf9d.js';
7
7
  import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-75fb0106.js';
8
- import './resource-fetcher-92640c2f.js';
9
- import './DataFetcher-f7cf7302.js';
8
+ import './resource-fetcher-768d5556.js';
9
+ import './DataFetcher-e0fc5549.js';
10
10
  import './_commonjsHelpers-9943807e.js';
11
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
11
12
  import './index-ae591a44.js';
12
13
 
13
14
  const SnkFilterDetail = class {
@@ -2,13 +2,14 @@ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement
2
2
  import { ElementIDUtils, ApplicationContext, ObjectUtils } from '@sankhyalabs/core';
3
3
  import { F as FilterItemType } from './filter-item-type.enum-5028ed3f.js';
4
4
  import { E as EPresentationMode } from './presentationMode-783bbf9d.js';
5
- import { C as ConfigStorage } from './ConfigStorage-6ec80135.js';
5
+ import { C as ConfigStorage } from './ConfigStorage-19a7260b.js';
6
6
  import { F as FilterType } from './filter-type.enum-a80c1b6b.js';
7
- import './form-config-fetcher-a5b23cd9.js';
8
- import './DataFetcher-f7cf7302.js';
7
+ import './form-config-fetcher-9e167008.js';
8
+ import './DataFetcher-e0fc5549.js';
9
9
  import './_commonjsHelpers-9943807e.js';
10
- import './resource-fetcher-92640c2f.js';
11
- import './filter-bar-config-fetcher-efd7ab4e.js';
10
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
11
+ import './resource-fetcher-768d5556.js';
12
+ import './filter-bar-config-fetcher-06e02851.js';
12
13
 
13
14
  const snkFilterModalItemCss = ".grow{flex-grow:1}.gap{gap:4px}";
14
15
 
@@ -3,11 +3,12 @@ import { d as draggable_bundle } from './draggable.bundle-41d56f06.js';
3
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, T as TAB_NAMES, A as ACTION_CONFIG, D as DEFAULT_TYPE } from './constants-3644f1b6.js';
6
- import { U as UserConfigType } from './form-config-fetcher-a5b23cd9.js';
6
+ import { U as UserConfigType } from './form-config-fetcher-9e167008.js';
7
7
  import { buildFormConfigFromDataUnit } from '@sankhyalabs/ezui/dist/collection/utils/form';
8
8
  import './_commonjsHelpers-9943807e.js';
9
- import './DataFetcher-f7cf7302.js';
10
- import './resource-fetcher-92640c2f.js';
9
+ import './DataFetcher-e0fc5549.js';
10
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
11
+ import './resource-fetcher-768d5556.js';
11
12
 
12
13
  const snkFormConfigCss = ".sc-snk-form-config-h{--snk-form-config--z-index:var(--more-visible, 2);--snk-form-config--background-color:var(--background--xlight, #fff);--snk-form-config__icon--color:var(--text--disable, #AFB6C0);--snk-form-config__label-counter--font-weight:var(--text-weight--extra-small, 200);--snk-form-config__add-group-container--border-radius:var(--border--radius-medium, 12px);--snk-form-config__add-group-container--background-color:var(--background--medium, #d2dce9);--snk-form-config__add-group-container--padding:var(--space--small, 6px);--snk-form-config__add-group-content--border:2px dashed var(--color-strokes, #DCE0E8);--snk-form-config__add-group-content--border-radius:var(--border--radius-small, 6px);--snk-form-config__add-group-label--padding:var(--space--large, 24px);--snk-form-config__btn-add-group--padding:var(--space--large, 24px) var(--space--medium, 12px) 0;--snk-form-config__btn-add-group-container--padding:var(--space--medium, 12px);--snk-form-config__btn-add-group-container--border-radius:var(--border--radius-medium, 12px);--snk-form-config__btn-add-group-container--border:2px solid var(--color-strokes, #DCE0E8);--snk-form-config__btn-add-group-container--background-color:var(--background--body, #fafcff);display:flex;flex-direction:column;position:fixed;top:0;left:0;width:100%;height:100%;z-index:var(--snk-form-config--z-index);background-color:var(--snk-form-config--background-color)}.form-config__header-container.sc-snk-form-config{display:flex}.form-config__field-container.sc-snk-form-config{width:32%;padding:6px}.form-config__hide-content.sc-snk-form-config{display:none}ez-icon.sc-snk-form-config .left-icon.sc-snk-form-config{--ez-icon--color:var(--snk-form-config__icon--color)}.ez-box__label-counter.sc-snk-form-config{margin-top:-7px;font-weight:var(--snk-form-config__label-counter--font-weight)}.form-config__btn-options.sc-snk-form-config{--ez-button--min-width:300px;--ez-button--background-color:var(--snk-form-config--background-color)}[data-draggable-parent].sc-snk-form-config{position:relative}.form-config__field-config--selected.sc-snk-form-config{position:static}.form-config__field-config--dragged.sc-snk-form-config .draggable-mirror.sc-snk-form-config{z-index:var(--snk-form-config--z-index)}.form-config__config-options.sc-snk-form-config{position:relative;margin-top:-3px;min-width:100%;z-index:1}.form-config__tab-container.sc-snk-form-config,.form-config__fields-available.sc-snk-form-config{position:relative;height:100%;max-height:calc(100vh - 92px)}.form-config__tab-container.sc-snk-form-config .ez-box__container.sc-snk-form-config,.form-config__fields-available.sc-snk-form-config .ez-box__container.sc-snk-form-config{align-content:flex-start;height:100%}.form-config__fields-available.sc-snk-form-config [data-draggable-parent].sc-snk-form-config{align-content:flex-start;overflow-y:auto;height:100%;max-height:calc(100% - 122px)}.form-config__tab-content.sc-snk-form-config{align-content:flex-start;overflow-y:auto;height:auto;max-height:calc(100% - 128px)}[data-draggable-element].sc-snk-form-config{cursor:grab}.form-config__actions-button.sc-snk-form-config{--ez-actions-button__btn-action--min-width:235px}.form-config__add-group.sc-snk-form-config{position:relative;min-height:120px;margin-bottom:10px}.form-config__add-group-container.sc-snk-form-config{position:absolute;display:flex;flex-wrap:wrap;width:100%;box-sizing:border-box;border-radius:var(--snk-form-config__add-group-container--border-radius);background-color:var(--snk-form-config__add-group-container--background-color);padding:var(--snk-form-config__add-group-container--padding)}.form-config__add-group-content.sc-snk-form-config{width:100%;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;box-sizing:border-box;border:var(--snk-form-config__add-group-content--border);border-radius:var(--snk-form-config__add-group-content--border-radius)}.form-config__add-group-label.sc-snk-form-config{display:flex;justify-content:center;box-sizing:border-box;padding:var(--snk-form-config__add-group-label--padding)}.form-config__btn-add-group.sc-snk-form-config{position:relative;padding:var(--snk-form-config__btn-add-group--padding)}.form-config__btn-add-group-container.sc-snk-form-config{padding:var(--snk-form-config__btn-add-group-container--padding);border-radius:var(--snk-form-config__btn-add-group-container--border-radius);border:var(--snk-form-config__btn-add-group-container--border);background-color:var(--snk-form-config__btn-add-group-container--background-color)}ez-collapsible-box.draggable-mirror.sc-snk-form-config{display:table;background-color:var(--snk-form-config--background-color)}ez-collapsible-box.sc-snk-form-config{margin-bottom:10px}@media screen and (min-width: 480px){.form-config__field-config--selected.sc-snk-form-config .ez-flex.form-config__config-options.sc-snk-form-config{min-width:calc(300% + 12px)}.form-config__field-config--selected.sc-snk-form-config:nth-child(3n+2) .ez-flex.form-config__config-options.sc-snk-form-config{left:calc(100% / 1 * -1)}.form-config__field-config--selected.sc-snk-form-config:nth-child(3n+3) .ez-flex.form-config__config-options.sc-snk-form-config{left:calc(100% / 1 * -2)}}";
13
14
 
@@ -1,12 +1,13 @@
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-b8091dec.js';
4
- import './ConfigStorage-6ec80135.js';
5
- import './form-config-fetcher-a5b23cd9.js';
6
- import './DataFetcher-f7cf7302.js';
3
+ import { S as SnkFormConfigManager } from './SnkFormConfigManager-1a42eb02.js';
4
+ import './ConfigStorage-19a7260b.js';
5
+ import './form-config-fetcher-9e167008.js';
6
+ import './DataFetcher-e0fc5549.js';
7
7
  import './_commonjsHelpers-9943807e.js';
8
- import './resource-fetcher-92640c2f.js';
9
- import './filter-bar-config-fetcher-efd7ab4e.js';
8
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
9
+ import './resource-fetcher-768d5556.js';
10
+ import './filter-bar-config-fetcher-06e02851.js';
10
11
  import './filter-item-type.enum-5028ed3f.js';
11
12
 
12
13
  const snkFormCss = ".sc-snk-form-h{--snk-form__header--min-height:94px;display:block}.snk-form__form--hidden.sc-snk-form{display:none}";
@@ -2,13 +2,14 @@ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement
2
2
  import { StringUtils, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
4
  import { CheckMode } from '@sankhyalabs/ezui/dist/collection/components/ez-check/CheckMode';
5
- import { C as ConfigStorage } from './ConfigStorage-6ec80135.js';
5
+ import { C as ConfigStorage } from './ConfigStorage-19a7260b.js';
6
6
  import { O as ORDER_VALUES } from './constants-3644f1b6.js';
7
- import './form-config-fetcher-a5b23cd9.js';
8
- import './DataFetcher-f7cf7302.js';
7
+ import './form-config-fetcher-9e167008.js';
8
+ import './DataFetcher-e0fc5549.js';
9
9
  import './_commonjsHelpers-9943807e.js';
10
- import './resource-fetcher-92640c2f.js';
11
- import './filter-bar-config-fetcher-efd7ab4e.js';
10
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
11
+ import './resource-fetcher-768d5556.js';
12
+ import './filter-bar-config-fetcher-06e02851.js';
12
13
  import './filter-item-type.enum-5028ed3f.js';
13
14
 
14
15
  const snkGridConfigCss = ".sc-snk-grid-config-h{--snk-grid-config__footer--padding-top:var(--space--medium, 12px);--snk-grid-config__main--padding-right:var(--space--medium, 12px);--snk-grid-config__tabselector-container--padding:var(--space--medium, 12px);--snk-grid-config__button-close--padding-left:var(--space--medium, 12px);--snk-grid-config__title--color:var(--title--primary, #2B3A54);--snk-grid-config__title--font-family:var(--font-pattern, \"Roboto\");--snk-grid-config__title--font-size:var(--title--large, 20px);--snk-grid-config__title--font-weight:var(--text-weight--extra-large, 700);--snk-grid-config__subtitle--font-family:var(--font-pattern, \"Roboto\");--snk-grid-config__subtitle--font-size:var(--text--medium, 14px);--snk-grid-config__group--font-family:var(--font-pattern, \"Roboto\");--snk-grid-config__group--font-size:var(--text--medium, 14px);--snk-grid-config__group--font-weight:var(--text-weight--large, 600);--snk-grid-config__group--padding-bottom:var(--space-small, 6px);--snk-grid-config__scrollbar--color-default:var(--scrollbar--default, #626e82);--snk-grid-config__scrollbar--color-background:var(--scrollbar--background, #E5EAF0);--snk-grid-config__scrollbar--color-hover:var(--scrollbar--hover, #2B3A54);--snk-grid-config__scrollbar--color-clicked:var(--scrollbar--clicked, #a2abb9);--snk-grid-config__scrollbar--border-radius:var(--border--radius-small, 6px);--snk-grid-config__scrollbar--width:var(--space--medium, 12px);display:grid;grid-template-rows:auto 1fr auto;max-height:100%;width:100%}@media screen and (min-width: 480px){.sc-snk-grid-config-h{width:359px;max-width:359px}}.padding-right--medium.sc-snk-grid-config{padding-right:var(--space--medium)}ez-list.sc-snk-grid-config{height:100%}.height-calc.sc-snk-grid-config{max-height:calc(100% - 24px)}.grid-config__footer.sc-snk-grid-config{display:flex;justify-content:flex-end;width:100%;padding-top:var(--snk-grid-config__footer--padding-top)}.hidden.sc-snk-grid-config{display:none}.tabselector-container.sc-snk-grid-config{padding:var(--snk-grid-config__tabselector-container--padding) 0}.button-close.sc-snk-grid-config{padding-left:var(--snk-grid-config__button-close--padding-left)}.title-container.sc-snk-grid-config{display:flex;justify-content:space-between;align-items:center;width:100%}.title.sc-snk-grid-config{display:flex;margin:0;line-height:normal;letter-spacing:0em;text-align:left;color:var(--snk-grid-config__title--color);font-size:var(--snk-grid-config__title--font-size);font-family:var(--snk-grid-config__title--font-family);font-weight:var(--snk-grid-config__title--font-weight)}.subtitle.sc-snk-grid-config{color:var(--text--primary);font-size:var(--snk-grid-config__subtitle--font-size);font-family:var(--snk-grid-config__subtitle--font-family)}.grid-config__main.sc-snk-grid-config{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--snk-grid-config__scrollbar--color-clicked) var(--snk-grid-config__scrollbar--color-background);padding-right:var(--snk-grid-config__main--padding-right)}.grid-config__main.sc-snk-grid-config::-webkit-scrollbar{width:var(--snk-grid-config__scrollbar--width);max-width:var(--snk-grid-config__scrollbar--width);min-width:var(--snk-grid-config__scrollbar--width);background-color:var(--snk-grid-config__scrollbar--color-background)}.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-track{background-color:var(--snk-grid-config__scrollbar--color-background);border-radius:var(--snk-grid-config__scrollbar--border-radius)}.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-thumb{background-color:var(--snk-grid-config__scrollbar--color-default);border-radius:var(--snk-grid-config__scrollbar--border-radius)}.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-thumb:vertical:hover,.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-thumb:horizontal:hover{background-color:var(--snk-grid-config__scrollbar--color-hover)}.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-thumb:vertical:active,.grid-config__main.sc-snk-grid-config::-webkit-scrollbar-thumb:horizontal:active{background-color:var(--snk-grid-config__scrollbar--color-clicked)}.group-name.sc-snk-grid-config{font-family:var(--snk-grid-config__group--font-family);font-size:var(--snk-grid-config__group--font-size);font-weight:var(--snk-grid-config__group--font-weight);padding-bottom:var(--snk-grid-config__group--padding-bottom)}";
@@ -2,17 +2,17 @@ import { r as registerInstance, c as createEvent, h, g as getElement } from './i
2
2
  import { ElementIDUtils, ApplicationContext, DataType } from '@sankhyalabs/core';
3
3
  import { UserInterface } from '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
4
4
  import { T as TaskbarElement } from './taskbar-elements-2c761819.js';
5
- import { C as ConfigStorage } from './ConfigStorage-6ec80135.js';
5
+ import { C as ConfigStorage } from './ConfigStorage-19a7260b.js';
6
6
  import { P as PresentationMode } from './index-1564817d.js';
7
7
  import { T as TaskbarProcessor } from './taskbar-processor-94402e6e.js';
8
8
  import { s as store } from './index-bdf75557.js';
9
9
  import { S as SnkMultiSelectionListDataSource } from './SnkMultiSelectionListDataSource-892f37f9.js';
10
10
  import { SelectionMode } from '@sankhyalabs/core/dist/dataunit/DataUnit';
11
- import './form-config-fetcher-a5b23cd9.js';
12
- import './DataFetcher-f7cf7302.js';
11
+ import './form-config-fetcher-9e167008.js';
12
+ import './DataFetcher-e0fc5549.js';
13
13
  import './_commonjsHelpers-9943807e.js';
14
- import './resource-fetcher-92640c2f.js';
15
- import './filter-bar-config-fetcher-efd7ab4e.js';
14
+ import './resource-fetcher-768d5556.js';
15
+ import './filter-bar-config-fetcher-06e02851.js';
16
16
  import './filter-item-type.enum-5028ed3f.js';
17
17
 
18
18
  const snkGridCss = ".snk-grid__container.sc-snk-grid{display:flex;height:100%;width:100%}.snk-grid__header.sc-snk-grid{display:flex;flex-wrap:nowrap;width:100%}.snk-grid__filter-bar.sc-snk-grid{width:100%}.snk-grid__header-divider.sc-snk-grid{margin-bottom:var(--space--medium)}.snk-grid__table.sc-snk-grid{min-height:300px}.snk-grid-container__without-shadow.sc-snk-grid{--ezgrid__container--shadow:unset}";
@@ -48,6 +48,9 @@ const SnkGrid = class {
48
48
  this.multipleSelection = undefined;
49
49
  this.presentationMode = PresentationMode.PRIMARY;
50
50
  this.messagesBuilder = undefined;
51
+ this.useEnterLikeTab = false;
52
+ this.recordsValidator = undefined;
53
+ this.canEdit = true;
51
54
  }
52
55
  /**
53
56
  * Exibe a janela de configurações da grade.
@@ -316,7 +319,7 @@ const SnkGrid = class {
316
319
  return undefined;
317
320
  }
318
321
  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" }, h("snk-filter-bar", { ref: (ref) => this._snkFilterBar = ref, dataUnit: this._dataUnit, "data-element-id": "gridFilter", class: "snk-grid__filter-bar ez-align--top", configName: this.configName, messagesBuilder: this.messagesBuilder }), ((_b = (_a = this._snkFilterBar) === null || _a === void 0 ? void 0 : _a.filterConfig) === null || _b === void 0 ? void 0 : _b.length) > 0 &&
319
- 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() })), 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: () => this.gridDoubleClick.emit(), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, onComponentReady: () => this.onEzGridReady(), columnfilterDataSource: this._multiSelectionListDataSource, selectionToastConfig: this.selectionToastConfig }, h("snk-taskbar", { dataUnit: this._dataUnit, configName: this.configName, messagesBuilder: this.messagesBuilder, "data-element-id": "grid_left", buttons: this._headerTaskbarProcessor.buttons, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.actionsList })), 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), application: this._application, selectedIndex: 0, configName: this.configName, onConfigChange: (evt) => this.modalConfigChangeHandler(evt), onConfigCancel: () => this.closeGridConfig() }))));
322
+ 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() })), 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: () => this.gridDoubleClick.emit(), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, onComponentReady: () => this.onEzGridReady(), columnfilterDataSource: this._multiSelectionListDataSource, selectionToastConfig: this.selectionToastConfig, useEnterLikeTab: this.useEnterLikeTab, recordsValidator: this.recordsValidator, canEdit: this.canEdit }, h("snk-taskbar", { dataUnit: this._dataUnit, configName: this.configName, messagesBuilder: this.messagesBuilder, "data-element-id": "grid_left", buttons: this._headerTaskbarProcessor.buttons, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.actionsList })), 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), application: this._application, selectedIndex: 0, configName: this.configName, onConfigChange: (evt) => this.modalConfigChangeHandler(evt), onConfigCancel: () => this.closeGridConfig() }))));
320
323
  }
321
324
  get _element() { return getElement(this); }
322
325
  };
@@ -1,12 +1,12 @@
1
1
  import { r as registerInstance, c as createEvent, h, F as Fragment } from './index-a7d3d3f1.js';
2
2
  import { ElementIDUtils } from '@sankhyalabs/core';
3
- import { S as SnkFormConfigManager } from './SnkFormConfigManager-b8091dec.js';
3
+ import { S as SnkFormConfigManager } from './SnkFormConfigManager-1a42eb02.js';
4
4
  import { buildFormMetadata, FormMetadata } from '@sankhyalabs/ezui/dist/collection/utils/form';
5
5
  import { T as TaskbarProcessor } from './taskbar-processor-94402e6e.js';
6
6
  import { T as TaskbarElement } from './taskbar-elements-2c761819.js';
7
7
  import { c as VIEW_MODE } from './constants-3644f1b6.js';
8
- import './DataFetcher-f7cf7302.js';
9
- import './pesquisa-fetcher-f06f4883.js';
8
+ import './DataFetcher-e0fc5549.js';
9
+ import './pesquisa-fetcher-9118eb7a.js';
10
10
  import { P as PresentationMode } from './index-1564817d.js';
11
11
  import { SelectionMode } from '@sankhyalabs/core/dist/dataunit/DataUnit';
12
12
 
@@ -29,6 +29,7 @@ const SnkGuidesViewer = class {
29
29
  this.selectedGuide = undefined;
30
30
  this.taskbarManager = undefined;
31
31
  this.messagesBuilder = undefined;
32
+ this.canEdit = true;
32
33
  this.presentationMode = undefined;
33
34
  this._breadcrumbItems = [];
34
35
  this._guides = undefined;
@@ -231,7 +232,7 @@ const SnkGuidesViewer = class {
231
232
  else {
232
233
  detailBranch = this.selectedGuide;
233
234
  }
234
- content = this.wrapDetail(levels, h("snk-detail-view", { ref: (ref) => this._currentDetail = ref, dataUnitName: this.getDataUnitName(levels, childEntityName), onSnkDetailGuidesChange: (evt) => this.updateGuide(evt.detail), entityName: childEntityName, selectedForm: formName, branchGuide: detailBranch, guideItemPath: this._breadcrumbItems, key: `detail${detailId}`, onSnkSwitchGuide: evt => this._guideNavigator.selectGuide(evt.detail) }));
235
+ content = this.wrapDetail(levels, h("snk-detail-view", { ref: (ref) => this._currentDetail = ref, dataUnitName: this.getDataUnitName(levels, childEntityName), onSnkDetailGuidesChange: (evt) => this.updateGuide(evt.detail), entityName: childEntityName, selectedForm: formName, branchGuide: detailBranch, guideItemPath: this._breadcrumbItems, key: `detail${detailId}`, canEdit: this.canEdit, onSnkSwitchGuide: evt => this._guideNavigator.selectGuide(evt.detail) }));
235
236
  }
236
237
  else {
237
238
  const cardId = this.selectedGuide.id;
@@ -1,13 +1,14 @@
1
- export { S as snk_guides_viewer } from './snk-guides-viewer-a6743bd9.js';
1
+ export { S as snk_guides_viewer } from './snk-guides-viewer-c47cd45e.js';
2
2
  import './index-a7d3d3f1.js';
3
3
  import '@sankhyalabs/core';
4
- import './SnkFormConfigManager-b8091dec.js';
5
- import './ConfigStorage-6ec80135.js';
6
- import './form-config-fetcher-a5b23cd9.js';
7
- import './DataFetcher-f7cf7302.js';
4
+ import './SnkFormConfigManager-1a42eb02.js';
5
+ import './ConfigStorage-19a7260b.js';
6
+ import './form-config-fetcher-9e167008.js';
7
+ import './DataFetcher-e0fc5549.js';
8
8
  import './_commonjsHelpers-9943807e.js';
9
- import './resource-fetcher-92640c2f.js';
10
- import './filter-bar-config-fetcher-efd7ab4e.js';
9
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
10
+ import './resource-fetcher-768d5556.js';
11
+ import './filter-bar-config-fetcher-06e02851.js';
11
12
  import './filter-item-type.enum-5028ed3f.js';
12
13
  import '@sankhyalabs/ezui/dist/collection/utils/form';
13
14
  import './taskbar-processor-94402e6e.js';
@@ -15,5 +16,5 @@ import './taskbar-elements-2c761819.js';
15
16
  import './index-1564817d.js';
16
17
  import './index-bdf75557.js';
17
18
  import './constants-3644f1b6.js';
18
- import './pesquisa-fetcher-f06f4883.js';
19
+ import './pesquisa-fetcher-9118eb7a.js';
19
20
  import '@sankhyalabs/core/dist/dataunit/DataUnit';
@@ -1,16 +1,17 @@
1
1
  import { r as registerInstance, c as createEvent, h, F as Fragment, H as Host } from './index-a7d3d3f1.js';
2
2
  import { StringUtils, ObjectUtils, ApplicationContext, ElementIDUtils } from '@sankhyalabs/core';
3
3
  import { P as PersonalizedFilterUtils } from './PersonalizedFilterUtils-75fb0106.js';
4
- import { P as PersonalizedFilterFetcher, C as ConfigStorage } from './ConfigStorage-6ec80135.js';
4
+ import { P as PersonalizedFilterFetcher, C as ConfigStorage } from './ConfigStorage-19a7260b.js';
5
5
  import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
6
6
  import { a as FilterGroupCondition } from './index-ae591a44.js';
7
7
  import { s as store } from './index-bdf75557.js';
8
8
  import './filter-item-type.enum-5028ed3f.js';
9
- import './form-config-fetcher-a5b23cd9.js';
10
- import './DataFetcher-f7cf7302.js';
9
+ import './form-config-fetcher-9e167008.js';
10
+ import './DataFetcher-e0fc5549.js';
11
11
  import './_commonjsHelpers-9943807e.js';
12
- import './resource-fetcher-92640c2f.js';
13
- import './filter-bar-config-fetcher-efd7ab4e.js';
12
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
13
+ import './resource-fetcher-768d5556.js';
14
+ import './filter-bar-config-fetcher-06e02851.js';
14
15
 
15
16
  const snkPersonalizedFilterCss = ".sc-snk-personalized-filter-h{display:flex;height:100%;padding:var(--space--large, 24px);--snk-personalized-filter--width:100%;--snk-personalized-filter--height:100%;--snk-personalized-filter--background-color-line:var(--color--disable-secondary);--snk-personalized-filter--margin-line:var(--border--radius-medium, 12px)}.snk-personalized-filter.sc-snk-personalized-filter{height:var(--snk-personalized-filter--width);width:var(--snk-personalized-filter--height)}.snk-personalized-filter__header-actions.sc-snk-personalized-filter{display:flex;gap:var(--space--medium)}.snk-personalized-filter__group.sc-snk-personalized-filter{flex:1}.snk-personalized-filter__expression-input--line.sc-snk-personalized-filter{width:100%;height:2px;background-color:var(--snk-personalized-filter--background-color-line);margin-top:var(--snk-personalized-filter--margin-line);margin-bottom:var(--snk-personalized-filter--margin-line)}.ez-box__main.sc-snk-personalized-filter{height:90%}.snk-personalized-filter__button-mode.sc-snk-personalized-filter{height:35px}";
16
17
 
@@ -1,9 +1,10 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-a7d3d3f1.js';
2
- import { P as PrintUtils } from './DataFetcher-f7cf7302.js';
2
+ import { P as PrintUtils } from './DataFetcher-e0fc5549.js';
3
3
  import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
4
4
  import { ElementIDUtils, ApplicationContext } from '@sankhyalabs/core';
5
5
  import ModalButtonStatus from '@sankhyalabs/ezui/dist/collection/components/ez-modal-container/modal-button-status';
6
6
  import './_commonjsHelpers-9943807e.js';
7
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
7
8
 
8
9
  const snkPrintSelectorCss = ".sc-snk-print-selector-h{max-height:100%}ez-modal-container.sc-snk-print-selector{--ez-modal-container-overflow-y:hidden}ez-list.sc-snk-print-selector{height:100%}.list-scroll.sc-snk-print-selector{height:100%;overflow-y:auto;padding-right:var(--snk-grid-config__main--padding-right)}.with-header.sc-snk-print-selector{max-height:calc(100% - 125px)}.without-header.sc-snk-print-selector{max-height:calc(100% - 85px)}.list-scroll.sc-snk-print-selector::-webkit-scrollbar{width:var(--space--small);min-width:var(--space--small);max-width:var(--space--small)}.hidden.sc-snk-print-selector{display:none}";
9
10
 
@@ -2,14 +2,15 @@ import { r as registerInstance, c as createEvent, h, g as getElement } from './i
2
2
  import { DataUnit, StringUtils, SortMode, DataType, ChangeOperation, ObjectUtils, ApplicationContext, UserInterface } from '@sankhyalabs/core';
3
3
  import { c as VIEW_MODE, S as SIMPLE_CRUD_MODE } from './constants-3644f1b6.js';
4
4
  import { T as TaskbarElement } from './taskbar-elements-2c761819.js';
5
- import './DataFetcher-f7cf7302.js';
6
- import './pesquisa-fetcher-f06f4883.js';
5
+ import './DataFetcher-e0fc5549.js';
6
+ import './pesquisa-fetcher-9118eb7a.js';
7
7
  import { P as PresentationMode } from './index-1564817d.js';
8
8
  import { T as TaskbarProcessor } from './taskbar-processor-94402e6e.js';
9
9
  import { DISTINCT_FILTER_NAME_PREFIX } from '@sankhyalabs/ezui/dist/collection/utils/constants';
10
10
  import { S as SnkMultiSelectionListDataSource } from './SnkMultiSelectionListDataSource-892f37f9.js';
11
11
  import './index-bdf75557.js';
12
12
  import './_commonjsHelpers-9943807e.js';
13
+ import '@sankhyalabs/core/dist/dataunit/metadata/UnitMetadata';
13
14
 
14
15
  class InMemoryLoader {
15
16
  constructor(metadata, records) {
@@ -173,6 +174,7 @@ const SnkSimpleCrud = class {
173
174
  this.useCancelConfirm = true;
174
175
  this.taskbarManager = undefined;
175
176
  this.messagesBuilder = undefined;
177
+ this.useEnterLikeTab = false;
176
178
  }
177
179
  resolveInMemoryBtns(taskbarButtons) {
178
180
  const newTaskBarConfig = [...taskbarButtons];
@@ -317,9 +319,9 @@ const SnkSimpleCrud = class {
317
319
  }
318
320
  render() {
319
321
  var _a;
320
- 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), onMessagesBuilderUpdated: evt => this.messagesBuilder = evt.detail }, h("header", null, h("slot", { name: "snkSimpleCrudHeader" })), h("section", { class: "ez-flex ez-box ez-box--shadow" }, h("snk-taskbar", { class: "ez-box ez-box--shadow ez-padding--medium ez-margin-bottom--large", 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, disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, slot: "leftButtons", presentationMode: PresentationMode.SECONDARY }), h("ez-view-stack", { class: "ez-flex ez-flex--column", ref: (ref) => this._viewStack = ref, "data-element-id": "simple-crud" }, h("stack-item", null, h("ez-grid", { dataUnit: this.dataUnit, config: this.gridConfig, "no-header": true, multipleSelection: this.multipleSelection, onEzDoubleClick: () => this.goToView(VIEW_MODE.FORM), columnfilterDataSource: this.dataUnit.name.includes(InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME)
322
+ 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-flex ez-box ez-box--shadow" }, h("snk-taskbar", { class: "ez-box ez-box--shadow ez-padding--medium ez-margin-bottom--large", 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, disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, slot: "leftButtons", presentationMode: PresentationMode.SECONDARY }), h("ez-view-stack", { class: "ez-flex ez-flex--column", ref: (ref) => this._viewStack = ref, "data-element-id": "simple-crud" }, h("stack-item", null, h("ez-grid", { dataUnit: this.dataUnit, config: this.gridConfig, "no-header": true, multipleSelection: this.multipleSelection, onEzDoubleClick: () => this.goToView(VIEW_MODE.FORM), columnfilterDataSource: this.dataUnit.name.includes(InMemoryLoader.IN_MEMORY_DATA_UNIT_NAME)
321
323
  ? undefined
322
- : this._multiSelectionListDataSource }, h("div", { slot: "footer" }, h("slot", { name: "snkSimpleCrudFooter" })))), h("stack-item", null, h("ez-form", { dataUnit: this.dataUnit, config: this.formConfig }))))));
324
+ : this._multiSelectionListDataSource, useEnterLikeTab: this.useEnterLikeTab }, h("div", { slot: "footer" }, h("slot", { name: "snkSimpleCrudFooter" })))), h("stack-item", null, h("ez-form", { dataUnit: this.dataUnit, config: this.formConfig }))))));
323
325
  }
324
326
  get _element() { return getElement(this); }
325
327
  static get watchers() { return {
@@ -1,6 +1,6 @@
1
- import{DataType as e}from"@sankhyalabs/core";import{d as t,D as i}from"./p-cbc28ca6.js";class r{constructor(){this._defaultPageSize=100,this._templateByQuery=new Map,this._searchListenersByDataUnit=new Map,this.buldTemplates()}buldTemplates(){this._templateByQuery.set("search",t.gql`query($entityName: String! $argument: String $criteria: InputSearchCriteria $options: InputSearchOptions) {
1
+ import{DataType as e}from"@sankhyalabs/core";import{d as t,D as i}from"./p-df8621b4.js";class r{constructor(){this._defaultPageSize=100,this._templateByQuery=new Map,this._searchListenersByDataUnit=new Map,this.buldTemplates()}buldTemplates(){this._templateByQuery.set("search",t.gql`query($entityName: String! $argument: String $criteria: InputSearchCriteria $options: InputSearchOptions) {
2
2
  $queryAlias$: search(entityName: $entityName argument: $argument criteria: $criteria options: $options){
3
3
  value
4
4
  label
5
5
  }
6
- }`)}loadSearchOptions(t,r,a,o){var s;const l=(null==r?void 0:r.toString().trim())||void 0;r=isNaN(Number(l))&&l?`%${l}`:l,null==a||a.params.forEach((t=>{t.dataType===e.OBJECT&&(t.value=JSON.stringify(t.value))}));const u=this.applySearchListener(n.beforeSearch,t,r,a,o),c={argument:(null==u?void 0:u.argument)||r,entityName:t,criteria:(null==u?void 0:u.criteria)||a,options:(null==u?void 0:u.searchOptions)||o};return c.options&&(null===(s=c.options)||void 0===s||delete s.dataUnitId),new Promise(((e,t)=>{i.get().callGraphQL({values:c,query:this._templateByQuery.get("search")}).then((t=>{e(t)})).catch((e=>{t(e)}))}))}loadAdvancedSearch(t,r,a,o){var s,l,u;const c=this.applySearchListener(n.beforeSearch,t,r,a,o),d={argument:(null==c?void 0:c.argument)||r,criteria:(null==c?void 0:c.criteria)||a,searchOptions:(null==c?void 0:c.searchOptions)||o},v={query:{$:null===(s=d.criteria)||void 0===s?void 0:s.expression}};(null===(l=d.criteria)||void 0===l?void 0:l.params.length)>0&&(v.params={param:d.criteria.params.map((t=>{let i=t.value,r=t.dataType;return r===e.OBJECT?(i=i.value,r="S"):r=function(t){switch(t){case e.NUMBER:return"I";case e.DATE:return"D";default:return"S"}}(t.dataType),{$:i,type:r}}))});const h={serviceName:"PesquisaSP.getSuggestion",requestBody:{criteria:Object.assign({entityName:t,compacted:!1,ignoreEntityCriteria:!1,limit:this._defaultPageSize,query:{$:d.argument},orderByDesc:!1,externalCriteria:v,localEntityName:null===(u=d.searchOptions)||void 0===u?void 0:u.rootEntity},{options:null!=o?{pkFieldName:o.codeFieldName,label:o.descriptionFieldName,fieldName:o.codeFieldName,useDescriptionOptions:!1,enableRowsCounter:!0}:void 0}),clientEventList:{clientEvent:[]}}};return new Promise(((e,t)=>{i.get().callServiceBroker("PesquisaSP.getSuggestion",JSON.stringify(h)).then((t=>e(t))).catch((e=>t(e)))}))}addSearchListener(e,t,i){var r;const n=this._searchListenersByDataUnit.get(t)||[],a=n.find((t=>t.entity===e));if(a){for(const e of Object.keys(i))if(e in a.listener){if((null===(r=a.listener[e])||void 0===r?void 0:r.toString())===i[e].toString())continue;a.listener[e]=i[e]}}else this._searchListenersByDataUnit.set(t,[...n,{entity:e,listener:i}]);return()=>{const i=n.filter((t=>t.entity!==e));i.length?this._searchListenersByDataUnit.set(t,i):this._searchListenersByDataUnit.delete(t)}}applySearchListener(e,t,i,r,n){var a;const o=null==n?void 0:n.dataUnitId;if(!o)return;const s=null===(a=this._searchListenersByDataUnit.get(o))||void 0===a?void 0:a.find((({entity:e})=>e===t));if(!s)return;const{listener:l}=s;return e in l?l[e]({argument:i,criteria:r,searchOptions:n}):void 0}}var n;!function(e){e.beforeSearch="beforeSearch"}(n||(n={}));export{r as P}
6
+ }`)}loadSearchOptions(t,r,o,s){var a;const l=(null==r?void 0:r.toString().trim())||void 0;r=isNaN(Number(l))&&l?`%${l}`:l,null==o||o.params.forEach((t=>{t.dataType===e.OBJECT&&(t.value=JSON.stringify(t.value))}));const u=this.applySearchListener(n.beforeSearch,t,r,o,s),c={argument:(null==u?void 0:u.argument)||r,entityName:t,criteria:(null==u?void 0:u.criteria)||o,options:(null==u?void 0:u.searchOptions)||s};return c.options&&(null===(a=c.options)||void 0===a||delete a.dataUnitId),new Promise(((e,t)=>{i.get().callGraphQL({values:c,query:this._templateByQuery.get("search")}).then((t=>{e(t)})).catch((e=>{t(e)}))}))}loadAdvancedSearch(t,r,o,s){var a,l,u;const c=this.applySearchListener(n.beforeSearch,t,r,o,s),d={argument:(null==c?void 0:c.argument)||r,criteria:(null==c?void 0:c.criteria)||o,searchOptions:(null==c?void 0:c.searchOptions)||s},v={query:{$:null===(a=d.criteria)||void 0===a?void 0:a.expression}};(null===(l=d.criteria)||void 0===l?void 0:l.params.length)>0&&(v.params={param:d.criteria.params.map((t=>{let i=t.value,r=t.dataType;return r===e.OBJECT?(i=i.value,r="S"):r=function(t){switch(t){case e.NUMBER:return"I";case e.DATE:return"D";default:return"S"}}(t.dataType),{$:i,type:r}}))});const h={serviceName:"PesquisaSP.getSuggestion",requestBody:{criteria:Object.assign({entityName:t,compacted:!1,ignoreEntityCriteria:!1,limit:this._defaultPageSize,query:{$:d.argument},orderByDesc:!1,externalCriteria:v,localEntityName:null===(u=d.searchOptions)||void 0===u?void 0:u.rootEntity},{options:null!=s?{pkFieldName:s.codeFieldName,label:s.descriptionFieldName,fieldName:s.codeFieldName,useDescriptionOptions:!1,enableRowsCounter:!0}:void 0}),clientEventList:{clientEvent:[]}}};return new Promise(((e,t)=>{i.get().callServiceBroker("PesquisaSP.getSuggestion",JSON.stringify(h)).then((t=>e(t))).catch((e=>t(e)))}))}addSearchListener(e,t,i){var r;const n=this._searchListenersByDataUnit.get(t)||[],o=n.find((t=>t.entity===e));if(o){for(const e of Object.keys(i))if(e in o.listener){if((null===(r=o.listener[e])||void 0===r?void 0:r.toString())===i[e].toString())continue;o.listener[e]=i[e]}}else this._searchListenersByDataUnit.set(t,[...n,{entity:e,listener:i}]);return()=>{const i=n.filter((t=>t.entity!==e));i.length?this._searchListenersByDataUnit.set(t,i):this._searchListenersByDataUnit.delete(t)}}applySearchListener(e,t,i,r,n){var o;const s=null==n?void 0:n.dataUnitId;if(!s)return;const a=null===(o=this._searchListenersByDataUnit.get(s))||void 0===o?void 0:o.find((({entity:e})=>e===t));if(!a)return;const{listener:l}=a;return e in l?l[e]({argument:i,criteria:r,searchOptions:n}):void 0}}var n;!function(e){e.beforeSearch="beforeSearch"}(n||(n={}));export{r as P}