@sankhyalabs/sankhyablocks 1.3.31-beta.11 → 1.3.31-beta.13

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 (55) hide show
  1. package/dist/cjs/{SnkMessageBuilder-13239761.js → SnkMessageBuilder-bb55d4c4.js} +2 -1
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/sankhyablocks.cjs.js +1 -1
  4. package/dist/cjs/snk-application.cjs.entry.js +17 -8
  5. package/dist/cjs/snk-crud.cjs.entry.js +2 -2
  6. package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
  7. package/dist/cjs/snk-form_2.cjs.entry.js +2 -2
  8. package/dist/cjs/snk-taskbar.cjs.entry.js +27 -30
  9. package/dist/cjs/{taskbar-elements-73d524e5.js → taskbar-elements-2888ceb6.js} +4 -0
  10. package/dist/collection/components/snk-application/snk-application.js +46 -4
  11. package/dist/collection/components/snk-crud/snk-crud.css +1 -0
  12. package/dist/collection/components/snk-crud/snk-crud.js +4 -5
  13. package/dist/collection/components/snk-data-unit/snk-data-unit.js +2 -2
  14. package/dist/collection/components/snk-form/snk-form.js +2 -4
  15. package/dist/collection/components/snk-grid/snk-grid.js +4 -2
  16. package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +4 -0
  17. package/dist/collection/components/snk-taskbar/snk-taskbar.js +29 -30
  18. package/dist/collection/lib/http/data-fetcher/DataFetcher.js +7 -4
  19. package/dist/collection/lib/index.js +1 -0
  20. package/dist/collection/lib/message/resources/snk-taskbar.msg.js +2 -1
  21. package/dist/components/SnkMessageBuilder.js +2 -1
  22. package/dist/components/snk-application2.js +17 -7
  23. package/dist/components/snk-crud.js +3 -3
  24. package/dist/components/snk-data-unit.js +2 -2
  25. package/dist/components/snk-form2.js +1 -1
  26. package/dist/components/snk-grid2.js +1 -1
  27. package/dist/components/snk-taskbar2.js +30 -29
  28. package/dist/esm/{SnkMessageBuilder-3835f9d8.js → SnkMessageBuilder-17d91b88.js} +2 -1
  29. package/dist/esm/loader.js +1 -1
  30. package/dist/esm/sankhyablocks.js +1 -1
  31. package/dist/esm/snk-application.entry.js +17 -8
  32. package/dist/esm/snk-crud.entry.js +2 -2
  33. package/dist/esm/snk-data-unit.entry.js +3 -3
  34. package/dist/esm/snk-form_2.entry.js +2 -2
  35. package/dist/esm/snk-taskbar.entry.js +27 -30
  36. package/dist/esm/{taskbar-elements-6d01a640.js → taskbar-elements-5ea74223.js} +5 -1
  37. package/dist/sankhyablocks/{p-5e1b7e51.entry.js → p-56a32417.entry.js} +1 -1
  38. package/dist/sankhyablocks/p-ab694dbc.js +1 -0
  39. package/dist/sankhyablocks/p-b559117b.js +1 -0
  40. package/dist/sankhyablocks/{p-e942c604.entry.js → p-b7e029cd.entry.js} +2 -2
  41. package/dist/sankhyablocks/{p-f4d0394b.entry.js → p-ce2d1214.entry.js} +1 -1
  42. package/dist/sankhyablocks/p-d25803a1.entry.js +1 -0
  43. package/dist/sankhyablocks/p-edf81d2c.entry.js +1 -0
  44. package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
  45. package/dist/types/components/snk-application/snk-application.d.ts +6 -2
  46. package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +3 -0
  47. package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +15 -0
  48. package/dist/types/components.d.ts +6 -2
  49. package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +5 -6
  50. package/dist/types/lib/index.d.ts +1 -0
  51. package/package.json +2 -2
  52. package/dist/sankhyablocks/p-72bccbb6.js +0 -1
  53. package/dist/sankhyablocks/p-8c74d163.entry.js +0 -1
  54. package/dist/sankhyablocks/p-bab507ad.entry.js +0 -1
  55. package/dist/sankhyablocks/p-dd10a5e3.js +0 -1
@@ -64,8 +64,9 @@ const snkTaskbarMessages = {
64
64
  titleCancel: "Cancelar",
65
65
  titleSave: "Salvar",
66
66
  titleGridMode: "Modo Grade",
67
+ titleFormMode: "Modo Formulário",
67
68
  titleConfigGrid: "Configuração da grade",
68
- titleFormMode: "Modo Formulário"
69
+ forbidden: "Permissão não liberada"
69
70
  };
70
71
 
71
72
  class SnkMessageBuilder {
@@ -14,7 +14,7 @@ const patchEsm = () => {
14
14
  const defineCustomElements = (win, options) => {
15
15
  if (typeof window === 'undefined') return Promise.resolve();
16
16
  return patchEsm().then(() => {
17
- return index.bootstrapLazy([["snk-crud.cjs",[[6,"snk-crud",{"configName":[1,"config-name"],"actionsList":[16],"recordsValidator":[8,"records-validator"],"_dataUnit":[32],"_dataState":[32]}]]],["teste-pesquisa.cjs",[[1,"teste-pesquisa"]]],["snk-data-unit.cjs",[[2,"snk-data-unit",{"dataState":[1040],"dataUnitName":[1,"data-unit-name"],"entityName":[1,"entity-name"],"pageSize":[2,"page-size"],"dataUnit":[1040],"beforeSave":[16],"afterSave":[16],"autoLoad":[4,"auto-load"],"getDataUnit":[64]}]]],["snk-application.cjs",[[2,"snk-application",{"messagesBuilder":[1040],"isUserSup":[64],"hasAccess":[64],"getAllAccess":[64],"getStringParam":[64],"getIntParam":[64],"getFloatParam":[64],"getBooleanParam":[64],"getDateParam":[64],"showPopUp":[64],"closePopUp":[64],"temOpcional":[64],"getConfig":[64],"saveConfig":[64],"getAttributeFromHTMLWrapper":[64],"openApp":[64],"createDataunit":[64],"getDataUnit":[64],"getResourceID":[64],"alert":[64],"error":[64],"confirm":[64],"info":[64],"loadFormConfig":[64],"loadGridConfig":[64],"saveGridConfig":[64],"executeSearch":[64],"isDebugMode":[64]}]]],["snk-form_2.cjs",[[2,"snk-form",{"configName":[1,"config-name"],"recordsValidator":[8,"records-validator"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32],"_editionFormConfig":[32],"_insertionFormConfig":[32]}],[6,"snk-grid",{"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32],"_gridConfig":[32]}]]],["snk-pesquisa.cjs",[[2,"snk-pesquisa",{"searchLoader":[16],"selectItem":[16],"argument":[1025],"_itemList":[32],"_startLoading":[32]}]]],["snk-taskbar.cjs",[[6,"snk-taskbar",{"buttons":[1],"actionsList":[16],"primaryButton":[1,"primary-button"],"disabledButtons":[16],"dataUnit":[16],"_permissions":[32]}]]]], options);
17
+ return index.bootstrapLazy([["snk-crud.cjs",[[6,"snk-crud",{"configName":[1,"config-name"],"actionsList":[16],"recordsValidator":[16],"_dataUnit":[32],"_dataState":[32]}]]],["teste-pesquisa.cjs",[[1,"teste-pesquisa"]]],["snk-data-unit.cjs",[[2,"snk-data-unit",{"dataState":[1040],"dataUnitName":[1,"data-unit-name"],"entityName":[1,"entity-name"],"pageSize":[2,"page-size"],"dataUnit":[1040],"beforeSave":[16],"afterSave":[16],"autoLoad":[4,"auto-load"],"getDataUnit":[64]}]]],["snk-application.cjs",[[2,"snk-application",{"messagesBuilder":[1040],"isUserSup":[64],"hasAccess":[64],"getAllAccess":[64],"getStringParam":[64],"getIntParam":[64],"getFloatParam":[64],"getBooleanParam":[64],"getDateParam":[64],"showPopUp":[64],"closePopUp":[64],"temOpcional":[64],"getConfig":[64],"saveConfig":[64],"getAttributeFromHTMLWrapper":[64],"openApp":[64],"createDataunit":[64],"getDataUnit":[64],"getResourceID":[64],"alert":[64],"error":[64],"message":[64],"confirm":[64],"info":[64],"loadFormConfig":[64],"loadGridConfig":[64],"saveGridConfig":[64],"executeSearch":[64],"isDebugMode":[64]}]]],["snk-form_2.cjs",[[2,"snk-form",{"configName":[1,"config-name"],"recordsValidator":[16],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32],"_editionFormConfig":[32],"_insertionFormConfig":[32]}],[6,"snk-grid",{"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32],"_gridConfig":[32]}]]],["snk-pesquisa.cjs",[[2,"snk-pesquisa",{"searchLoader":[16],"selectItem":[16],"argument":[1025],"_itemList":[32],"_startLoading":[32]}]]],["snk-taskbar.cjs",[[6,"snk-taskbar",{"buttons":[1],"actionsList":[16],"primaryButton":[1,"primary-button"],"disabledButtons":[16],"dataUnit":[16],"_permissions":[32]}]]]], options);
18
18
  });
19
19
  };
20
20
 
@@ -15,5 +15,5 @@ const patchBrowser = () => {
15
15
  };
16
16
 
17
17
  patchBrowser().then(options => {
18
- return index.bootstrapLazy([["snk-crud.cjs",[[6,"snk-crud",{"configName":[1,"config-name"],"actionsList":[16],"recordsValidator":[8,"records-validator"],"_dataUnit":[32],"_dataState":[32]}]]],["teste-pesquisa.cjs",[[1,"teste-pesquisa"]]],["snk-data-unit.cjs",[[2,"snk-data-unit",{"dataState":[1040],"dataUnitName":[1,"data-unit-name"],"entityName":[1,"entity-name"],"pageSize":[2,"page-size"],"dataUnit":[1040],"beforeSave":[16],"afterSave":[16],"autoLoad":[4,"auto-load"],"getDataUnit":[64]}]]],["snk-application.cjs",[[2,"snk-application",{"messagesBuilder":[1040],"isUserSup":[64],"hasAccess":[64],"getAllAccess":[64],"getStringParam":[64],"getIntParam":[64],"getFloatParam":[64],"getBooleanParam":[64],"getDateParam":[64],"showPopUp":[64],"closePopUp":[64],"temOpcional":[64],"getConfig":[64],"saveConfig":[64],"getAttributeFromHTMLWrapper":[64],"openApp":[64],"createDataunit":[64],"getDataUnit":[64],"getResourceID":[64],"alert":[64],"error":[64],"confirm":[64],"info":[64],"loadFormConfig":[64],"loadGridConfig":[64],"saveGridConfig":[64],"executeSearch":[64],"isDebugMode":[64]}]]],["snk-form_2.cjs",[[2,"snk-form",{"configName":[1,"config-name"],"recordsValidator":[8,"records-validator"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32],"_editionFormConfig":[32],"_insertionFormConfig":[32]}],[6,"snk-grid",{"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32],"_gridConfig":[32]}]]],["snk-pesquisa.cjs",[[2,"snk-pesquisa",{"searchLoader":[16],"selectItem":[16],"argument":[1025],"_itemList":[32],"_startLoading":[32]}]]],["snk-taskbar.cjs",[[6,"snk-taskbar",{"buttons":[1],"actionsList":[16],"primaryButton":[1,"primary-button"],"disabledButtons":[16],"dataUnit":[16],"_permissions":[32]}]]]], options);
18
+ return index.bootstrapLazy([["snk-crud.cjs",[[6,"snk-crud",{"configName":[1,"config-name"],"actionsList":[16],"recordsValidator":[16],"_dataUnit":[32],"_dataState":[32]}]]],["teste-pesquisa.cjs",[[1,"teste-pesquisa"]]],["snk-data-unit.cjs",[[2,"snk-data-unit",{"dataState":[1040],"dataUnitName":[1,"data-unit-name"],"entityName":[1,"entity-name"],"pageSize":[2,"page-size"],"dataUnit":[1040],"beforeSave":[16],"afterSave":[16],"autoLoad":[4,"auto-load"],"getDataUnit":[64]}]]],["snk-application.cjs",[[2,"snk-application",{"messagesBuilder":[1040],"isUserSup":[64],"hasAccess":[64],"getAllAccess":[64],"getStringParam":[64],"getIntParam":[64],"getFloatParam":[64],"getBooleanParam":[64],"getDateParam":[64],"showPopUp":[64],"closePopUp":[64],"temOpcional":[64],"getConfig":[64],"saveConfig":[64],"getAttributeFromHTMLWrapper":[64],"openApp":[64],"createDataunit":[64],"getDataUnit":[64],"getResourceID":[64],"alert":[64],"error":[64],"message":[64],"confirm":[64],"info":[64],"loadFormConfig":[64],"loadGridConfig":[64],"saveGridConfig":[64],"executeSearch":[64],"isDebugMode":[64]}]]],["snk-form_2.cjs",[[2,"snk-form",{"configName":[1,"config-name"],"recordsValidator":[16],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32],"_editionFormConfig":[32],"_insertionFormConfig":[32]}],[6,"snk-grid",{"configName":[1,"config-name"],"actionsList":[16],"_dataUnit":[32],"_configLoaded":[32],"_dataState":[32],"_gridConfig":[32]}]]],["snk-pesquisa.cjs",[[2,"snk-pesquisa",{"searchLoader":[16],"selectItem":[16],"argument":[1025],"_itemList":[32],"_startLoading":[32]}]]],["snk-taskbar.cjs",[[6,"snk-taskbar",{"buttons":[1],"actionsList":[16],"primaryButton":[1,"primary-button"],"disabledButtons":[16],"dataUnit":[16],"_permissions":[32]}]]]], options);
19
19
  });
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-c6671817.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
  const utils = require('@sankhyalabs/ezui/dist/collection/utils');
8
- const SnkMessageBuilder = require('./SnkMessageBuilder-13239761.js');
8
+ const SnkMessageBuilder = require('./SnkMessageBuilder-bb55d4c4.js');
9
9
 
10
10
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
11
11
 
@@ -6515,20 +6515,23 @@ class DataFetcher {
6515
6515
  resolveURL() {
6516
6516
  return UrlUtils.getUrlBase();
6517
6517
  }
6518
- getContext() {
6518
+ getContext(module) {
6519
6519
  const urlParams = UrlUtils.getQueryParams(location.search);
6520
6520
  return {
6521
- baseUrl: `${this.resolveURL()}/mge/service.sbr`,
6521
+ baseUrl: `${this.resolveURL()}/${module}/service.sbr`,
6522
6522
  appName: "SankhyaBlocks",
6523
6523
  mgeSession: `${window['skw_session'] || urlParams.mgeSession}`,
6524
6524
  globalID: "85C0093DFA240EAB699B4E47A10215BD",
6525
+ //FIXME: Precisamos ajustar para buscar o resourceId pela aplicação
6525
6526
  resourceID: "br.com.sankhya.mov.bancaria"
6526
6527
  };
6527
6528
  }
6528
6529
  async callServiceBroker(serviceName, payload) {
6529
6530
  return new Promise((accept, reject) => {
6530
- const ctx = this.getContext();
6531
- const url = `${ctx.baseUrl}?serviceName=${serviceName}&counter=21&application=${ctx.appName}&outputType=json&preventTransform=false&mgeSession=${ctx.mgeSession}&resourceID=${ctx.resourceID}&globalID=${ctx.globalID}&allowConcurrentCalls=true`;
6531
+ const parts = serviceName.split("@");
6532
+ const [module, name] = parts.length === 2 ? parts : ['mge', serviceName];
6533
+ const ctx = this.getContext(module);
6534
+ const url = `${ctx.baseUrl}?serviceName=${name}&counter=21&application=${ctx.appName}&outputType=json&preventTransform=false&mgeSession=${ctx.mgeSession}&resourceID=${ctx.resourceID}&globalID=${ctx.globalID}&allowConcurrentCalls=true`;
6532
6535
  document.cookie = `JSESSIONID=${ctx.mgeSession};`;
6533
6536
  const http = new XMLHttpRequest();
6534
6537
  DataFetcher.requestListener.forEach(listener => listener.onRequestStart({ url }));
@@ -7315,7 +7318,7 @@ const SnkApplication = class {
7315
7318
  const waitingAuth = this._authPromises.length > 0;
7316
7319
  this._authPromises.push(new PendingPromise(resolve, reject));
7317
7320
  if (!waitingAuth) {
7318
- this.authFetcher.getData(this._resourceID).then((authList) => {
7321
+ this.authFetcher.getData(this.resourceID).then((authList) => {
7319
7322
  this._auth = authList;
7320
7323
  while (this._authPromises.length > 0) {
7321
7324
  this._authPromises.pop().resolve(this._auth);
@@ -7566,11 +7569,17 @@ const SnkApplication = class {
7566
7569
  async error(title, message, icon, options) {
7567
7570
  return utils.ApplicationUtils.error(title, message, icon, options);
7568
7571
  }
7572
+ /**
7573
+ * Exibe um diálogo de mensagem comum
7574
+ */
7575
+ async message(title, message, icon, options) {
7576
+ return utils.ApplicationUtils.message(title, message, icon, options);
7577
+ }
7569
7578
  /**
7570
7579
  * Exibe um diálogo de confirmação
7571
7580
  */
7572
- async confirm(title, message, icon, critical, options) {
7573
- return utils.ApplicationUtils.confirm(title, message, icon, critical, options);
7581
+ async confirm(title, message, icon, dialogType, options) {
7582
+ return utils.ApplicationUtils.confirm(title, message, icon, dialogType, options);
7574
7583
  }
7575
7584
  /**
7576
7585
  * Mostra uma informação efêmera (de segundo plano).
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-c6671817.js');
6
6
 
7
- const snkCrudCss = ".sc-snk-crud-h{display:flex;height:100%;width:100%}";
7
+ const snkCrudCss = ".sc-snk-crud-h{display:flex;flex-direction:column;height:100%;width:100%}";
8
8
 
9
9
  const GRID_MODE = 0;
10
10
  const FORM_MODE = 1;
@@ -55,7 +55,7 @@ const SnkCrud = class {
55
55
  }
56
56
  }
57
57
  render() {
58
- return (index.h("ez-view-stack", { ref: (ref) => this._viewStack = ref }, index.h("stack-item", null, index.h("snk-grid", { configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), onActionClick: evt => this.executeAction(evt.detail), actionsList: this.actionsList }, index.h("slot", null))), index.h("stack-item", null, index.h("snk-form", { configName: this.configName, actionsList: this.actionsList, onExit: () => this._viewStack.show(GRID_MODE), recordsValidator: this.recordsValidator, onActionClick: evt => this.executeAction(evt.detail) }))));
58
+ return (index.h("ez-view-stack", { ref: (ref) => this._viewStack = ref }, index.h("stack-item", null, index.h("snk-grid", { configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), onActionClick: evt => this.executeAction(evt.detail), actionsList: this.actionsList }, index.h("slot", { name: "SnkGridHeader" }), index.h("slot", { name: "SnkGridFooter" }))), index.h("stack-item", null, index.h("snk-form", { configName: this.configName, actionsList: this.actionsList, onExit: () => this._viewStack.show(GRID_MODE), recordsValidator: this.recordsValidator, onActionClick: evt => this.executeAction(evt.detail) }))));
59
59
  }
60
60
  get _element() { return index.getElement(this); }
61
61
  };
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-c6671817.js');
6
6
  const core = require('@sankhyalabs/core');
7
7
  const utils = require('@sankhyalabs/ezui/dist/collection/utils');
8
- const SnkMessageBuilder = require('./SnkMessageBuilder-13239761.js');
8
+ const SnkMessageBuilder = require('./SnkMessageBuilder-bb55d4c4.js');
9
9
 
10
10
  const snkDataUnitCss = ".sc-snk-data-unit-h{display:flex;flex-direction:column;height:100%}";
11
11
 
@@ -184,7 +184,7 @@ const SnkDataUnit = class {
184
184
  }
185
185
  else {
186
186
  const removeConfirmationTitle = this.getMessage("snkDataUnit.removeConfirmationTitle");
187
- utils.ApplicationUtils.confirm(removeConfirmationTitle, removeConfirmation, "delete", true, { btnConfirmDanger: true })
187
+ utils.ApplicationUtils.confirm(removeConfirmationTitle, removeConfirmation, "delete", utils.DialogType.CRITICAL, { btnConfirmDanger: true })
188
188
  .then((result) => resolve(result ? action : undefined));
189
189
  }
190
190
  }
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-c6671817.js');
6
6
  const core = require('@sankhyalabs/core');
7
- const taskbarElements = require('./taskbar-elements-73d524e5.js');
7
+ const taskbarElements = require('./taskbar-elements-2888ceb6.js');
8
8
 
9
9
  const snkFormCss = ".sc-snk-form-h{display:block}.snk-form.sc-snk-form{position:relative;padding:var(--space--large);padding-top:var(--space--medium)}.snk-form__header.sc-snk-form{position:relative;padding-top:var(--space--medium);padding-bottom:var(--space--medium);margin-bottom:var(--space--medium)}.snk-form__header--fixed.sc-snk-form{position:sticky;top:0;background:var(--background--body);z-index:var(--more-visible, 2);padding-left:var(--space--large);padding-right:var(--space--large);margin-left:calc(var(--space--large) * -1);margin-right:calc(var(--space--large) * -1);width:calc(100% + (var(--space--large) * 2))}";
10
10
 
@@ -167,7 +167,7 @@ const SnkGrid = class {
167
167
  if (!this._configLoaded || !this._dataUnit) {
168
168
  return undefined;
169
169
  }
170
- return (index.h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" }, index.h("div", { class: "ez-row ez-padding-bottom--medium ez-margin-bottom--medium" }, index.h("div", { class: "ez-col ez-col--sd-9 ez-col--tb-9 ez-align--bottom" }, index.h("slot", null)), index.h("div", { class: "ez-col ez-col--sd-3 ez-col--tb-3 ez-align--right" }, index.h("snk-taskbar", { onActionClick: evt => this.actionClickHandler(evt), key: "topTaskbar", dataUnit: this._dataUnit, buttons: "FORM_MODE,CONFIG_GRID,INSERT", primaryButton: "INSERT" }))), index.h("ez-grid", { ref: ref => this._grid = ref, dataUnit: this._dataUnit, key: "grid-" + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: evt => { this.saveConfig(evt.detail); }, onEzDoubleClick: () => this.gridDoubleClick.emit() }, index.h("snk-taskbar", { dataUnit: this._dataUnit, buttons: this.getHeaderButtons(), slot: "leftButtons", actionsList: this.actionsList }))));
170
+ return (index.h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" }, index.h("div", { class: "ez-row ez-padding-bottom--medium ez-margin-bottom--medium" }, index.h("div", { class: "ez-col ez-col--sd-9 ez-col--tb-9 ez-align--bottom" }, index.h("slot", { name: "SnkGridHeader" })), index.h("div", { class: "ez-col ez-col--sd-3 ez-col--tb-3 ez-align--right" }, index.h("snk-taskbar", { onActionClick: evt => this.actionClickHandler(evt), key: "topTaskbar", dataUnit: this._dataUnit, buttons: "FORM_MODE,CONFIG_GRID,INSERT", primaryButton: "INSERT" }))), index.h("ez-grid", { ref: ref => this._grid = ref, dataUnit: this._dataUnit, key: "grid-" + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: evt => { this.saveConfig(evt.detail); }, onEzDoubleClick: () => this.gridDoubleClick.emit() }, index.h("snk-taskbar", { dataUnit: this._dataUnit, buttons: this.getHeaderButtons(), slot: "leftButtons", actionsList: this.actionsList })), index.h("div", { class: "ez-col ez-col--sd-12" }, index.h("slot", { name: "SnkGridFooter" }))));
171
171
  }
172
172
  get _element() { return index.getElement(this); }
173
173
  };
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-c6671817.js');
6
6
  const core = require('@sankhyalabs/core');
7
- const taskbarElements = require('./taskbar-elements-73d524e5.js');
7
+ const taskbarElements = require('./taskbar-elements-2888ceb6.js');
8
8
 
9
9
  const snkTaskbarCss = ".sc-snk-taskbar-h{display:flex}";
10
10
 
@@ -12,6 +12,21 @@ const SnkTaskbar = class {
12
12
  constructor(hostRef) {
13
13
  index.registerInstance(this, hostRef);
14
14
  this.actionClick = index.createEvent(this, "actionClick", 7);
15
+ this._titleKeyByElement = {
16
+ [taskbarElements.TaskbarElement.UPDATE]: "snkTaskbar.titleUpdate",
17
+ [taskbarElements.TaskbarElement.PREVIOUS]: "snkTaskbar.titlePrevious",
18
+ [taskbarElements.TaskbarElement.NEXT]: "snkTaskbar.titleNext",
19
+ [taskbarElements.TaskbarElement.REFRESH]: "snkTaskbar.titleRefresh",
20
+ [taskbarElements.TaskbarElement.CLONE]: "snkTaskbar.titleClone",
21
+ [taskbarElements.TaskbarElement.REMOVE]: "snkTaskbar.titleRemove",
22
+ [taskbarElements.TaskbarElement.MORE_OPTIONS]: "snkTaskbar.titleMoreOptions",
23
+ [taskbarElements.TaskbarElement.INSERT]: "snkTaskbar.titleInsert",
24
+ [taskbarElements.TaskbarElement.CANCEL]: "snkTaskbar.titleCancel",
25
+ [taskbarElements.TaskbarElement.SAVE]: "snkTaskbar.titleSave",
26
+ [taskbarElements.TaskbarElement.GRID_MODE]: "snkTaskbar.titleGridMode",
27
+ [taskbarElements.TaskbarElement.CONFIG_GRID]: "snkTaskbar.titleConfigGrid",
28
+ [taskbarElements.TaskbarElement.FORM_MODE]: "snkTaskbar.titleFormMode"
29
+ };
15
30
  }
16
31
  observeButtons() {
17
32
  this._definitions = undefined;
@@ -22,7 +37,7 @@ const SnkTaskbar = class {
22
37
  if (strButtons) {
23
38
  strButtons.split(",").forEach(buttonName => {
24
39
  buttonName = buttonName.trim();
25
- if (this.isAllowed(buttonName)) {
40
+ if (taskbarElements.VisibleWhenForbidden[buttonName] || this.isAllowed(buttonName)) {
26
41
  elements.push(buttonName.trim());
27
42
  }
28
43
  });
@@ -42,35 +57,14 @@ const SnkTaskbar = class {
42
57
  * Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-taskbar.msg.ts"
43
58
  */
44
59
  getTitle(element) {
45
- switch (element) {
46
- case taskbarElements.TaskbarElement.UPDATE:
47
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleUpdate", {});
48
- case taskbarElements.TaskbarElement.PREVIOUS:
49
- return this._application.messagesBuilder.getMessage("snkTaskbar.titlePrevious", {});
50
- case taskbarElements.TaskbarElement.NEXT:
51
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleNext", {});
52
- case taskbarElements.TaskbarElement.REFRESH:
53
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleRefresh", {});
54
- case taskbarElements.TaskbarElement.CLONE:
55
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleClone", {});
56
- case taskbarElements.TaskbarElement.REMOVE:
57
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleRemove", {});
58
- case taskbarElements.TaskbarElement.MORE_OPTIONS:
59
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleMoreOptions", {});
60
- case taskbarElements.TaskbarElement.INSERT:
61
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleInsert", {});
62
- case taskbarElements.TaskbarElement.CANCEL:
63
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleCancel", {});
64
- case taskbarElements.TaskbarElement.SAVE:
65
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleSave", {});
66
- case taskbarElements.TaskbarElement.GRID_MODE:
67
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleGridMode", {});
68
- case taskbarElements.TaskbarElement.CONFIG_GRID:
69
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleConfigGrid", {});
70
- case taskbarElements.TaskbarElement.FORM_MODE:
71
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleFormMode", {});
60
+ let key;
61
+ if (this.isAllowed(element)) {
62
+ key = this._titleKeyByElement[element];
72
63
  }
73
- return "";
64
+ else {
65
+ key = "snkTaskbar.forbidden";
66
+ }
67
+ return key ? this._application.messagesBuilder.getMessage(key, {}) : "";
74
68
  }
75
69
  elementClick(elem) {
76
70
  if (this.dataUnit) {
@@ -104,6 +98,9 @@ const SnkTaskbar = class {
104
98
  this.actionClick.emit(elem);
105
99
  }
106
100
  isEnabled(elem) {
101
+ if (!this.isAllowed(elem)) {
102
+ return false;
103
+ }
107
104
  return !(this.disabledButtons && this.disabledButtons.includes(elem));
108
105
  }
109
106
  getElement(index, def) {
@@ -27,6 +27,10 @@ exports.AuthorizationElements = void 0;
27
27
  AuthorizationElements["INSERT"] = "INSERT";
28
28
  AuthorizationElements["CONFIG_GRID"] = "CONFIG_GRID";
29
29
  })(exports.AuthorizationElements || (exports.AuthorizationElements = {}));
30
+ exports.VisibleWhenForbidden = void 0;
31
+ (function (VisibleWhenForbidden) {
32
+ VisibleWhenForbidden["CONFIG_GRID"] = "CONFIG_GRID";
33
+ })(exports.VisibleWhenForbidden || (exports.VisibleWhenForbidden = {}));
30
34
  const buildElem = (element, className, getTitle, action, isEnabled, actions) => {
31
35
  switch (element) {
32
36
  case exports.TaskbarElement.PREVIOUS:
@@ -52,7 +52,7 @@ export class SnkApplication {
52
52
  const waitingAuth = this._authPromises.length > 0;
53
53
  this._authPromises.push(new PendingPromise(resolve, reject));
54
54
  if (!waitingAuth) {
55
- this.authFetcher.getData(this._resourceID).then((authList) => {
55
+ this.authFetcher.getData(this.resourceID).then((authList) => {
56
56
  this._auth = authList;
57
57
  while (this._authPromises.length > 0) {
58
58
  this._authPromises.pop().resolve(this._auth);
@@ -303,11 +303,17 @@ export class SnkApplication {
303
303
  async error(title, message, icon, options) {
304
304
  return ApplicationUtils.error(title, message, icon, options);
305
305
  }
306
+ /**
307
+ * Exibe um diálogo de mensagem comum
308
+ */
309
+ async message(title, message, icon, options) {
310
+ return ApplicationUtils.message(title, message, icon, options);
311
+ }
306
312
  /**
307
313
  * Exibe um diálogo de confirmação
308
314
  */
309
- async confirm(title, message, icon, critical, options) {
310
- return ApplicationUtils.confirm(title, message, icon, critical, options);
315
+ async confirm(title, message, icon, dialogType, options) {
316
+ return ApplicationUtils.confirm(title, message, icon, dialogType, options);
311
317
  }
312
318
  /**
313
319
  * Mostra uma informação efêmera (de segundo plano).
@@ -965,9 +971,41 @@ export class SnkApplication {
965
971
  "tags": []
966
972
  }
967
973
  },
974
+ "message": {
975
+ "complexType": {
976
+ "signature": "(title: string, message: string, icon?: string, options?: MessageOptions) => Promise<boolean>",
977
+ "parameters": [{
978
+ "tags": [],
979
+ "text": ""
980
+ }, {
981
+ "tags": [],
982
+ "text": ""
983
+ }, {
984
+ "tags": [],
985
+ "text": ""
986
+ }, {
987
+ "tags": [],
988
+ "text": ""
989
+ }],
990
+ "references": {
991
+ "Promise": {
992
+ "location": "global"
993
+ },
994
+ "MessageOptions": {
995
+ "location": "import",
996
+ "path": "@sankhyalabs/ezui/dist/collection/utils"
997
+ }
998
+ },
999
+ "return": "Promise<boolean>"
1000
+ },
1001
+ "docs": {
1002
+ "text": "Exibe um di\u00E1logo de mensagem comum",
1003
+ "tags": []
1004
+ }
1005
+ },
968
1006
  "confirm": {
969
1007
  "complexType": {
970
- "signature": "(title: string, message: string, icon?: string, critical?: boolean, options?: MessageOptions) => Promise<boolean>",
1008
+ "signature": "(title: string, message: string, icon?: string, dialogType?: DialogType, options?: MessageOptions) => Promise<boolean>",
971
1009
  "parameters": [{
972
1010
  "tags": [],
973
1011
  "text": ""
@@ -988,6 +1026,10 @@ export class SnkApplication {
988
1026
  "Promise": {
989
1027
  "location": "global"
990
1028
  },
1029
+ "DialogType": {
1030
+ "location": "import",
1031
+ "path": "@sankhyalabs/ezui/dist/collection/utils"
1032
+ },
991
1033
  "MessageOptions": {
992
1034
  "location": "import",
993
1035
  "path": "@sankhyalabs/ezui/dist/collection/utils"
@@ -1,5 +1,6 @@
1
1
  :host {
2
2
  display: flex;
3
+ flex-direction: column;
3
4
  height: 100%;
4
5
  width: 100%;
5
6
  }
@@ -53,7 +53,8 @@ export class SnkCrud {
53
53
  return (h("ez-view-stack", { ref: (ref) => this._viewStack = ref },
54
54
  h("stack-item", null,
55
55
  h("snk-grid", { configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), onActionClick: evt => this.executeAction(evt.detail), actionsList: this.actionsList },
56
- h("slot", null))),
56
+ h("slot", { name: "SnkGridHeader" }),
57
+ h("slot", { name: "SnkGridFooter" }))),
57
58
  h("stack-item", null,
58
59
  h("snk-form", { configName: this.configName, actionsList: this.actionsList, onExit: () => this._viewStack.show(GRID_MODE), recordsValidator: this.recordsValidator, onActionClick: evt => this.executeAction(evt.detail) }))));
59
60
  }
@@ -107,7 +108,7 @@ export class SnkCrud {
107
108
  }
108
109
  },
109
110
  "recordsValidator": {
110
- "type": "any",
111
+ "type": "unknown",
111
112
  "mutable": false,
112
113
  "complexType": {
113
114
  "original": "RecordValidator",
@@ -124,9 +125,7 @@ export class SnkCrud {
124
125
  "docs": {
125
126
  "tags": [],
126
127
  "text": "Validador respons\u00E1vel por checar a integridade das informa\u00E7\u00F5es do registro"
127
- },
128
- "attribute": "records-validator",
129
- "reflect": false
128
+ }
130
129
  }
131
130
  }; }
132
131
  static get states() { return {
@@ -1,6 +1,6 @@
1
1
  import { Component, Host, h, Event, Element, Prop, Watch, Method } from '@stencil/core';
2
2
  import { Action, ApplicationContext } from '@sankhyalabs/core';
3
- import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
3
+ import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
4
4
  import { OperationMap } from '../../lib/message/SnkMessageBuilder';
5
5
  export class SnkDataUnit {
6
6
  constructor() {
@@ -172,7 +172,7 @@ export class SnkDataUnit {
172
172
  }
173
173
  else {
174
174
  const removeConfirmationTitle = this.getMessage("snkDataUnit.removeConfirmationTitle");
175
- ApplicationUtils.confirm(removeConfirmationTitle, removeConfirmation, "delete", true, { btnConfirmDanger: true })
175
+ ApplicationUtils.confirm(removeConfirmationTitle, removeConfirmation, "delete", DialogType.CRITICAL, { btnConfirmDanger: true })
176
176
  .then((result) => resolve(result ? action : undefined));
177
177
  }
178
178
  }
@@ -133,7 +133,7 @@ export class SnkForm {
133
133
  "reflect": false
134
134
  },
135
135
  "recordsValidator": {
136
- "type": "any",
136
+ "type": "unknown",
137
137
  "mutable": false,
138
138
  "complexType": {
139
139
  "original": "RecordValidator",
@@ -150,9 +150,7 @@ export class SnkForm {
150
150
  "docs": {
151
151
  "tags": [],
152
152
  "text": "Validador respons\u00E1vel por checar a integridade das informa\u00E7\u00F5es do registro"
153
- },
154
- "attribute": "records-validator",
155
- "reflect": false
153
+ }
156
154
  },
157
155
  "actionsList": {
158
156
  "type": "unknown",
@@ -51,11 +51,13 @@ export class SnkGrid {
51
51
  return (h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" },
52
52
  h("div", { class: "ez-row ez-padding-bottom--medium ez-margin-bottom--medium" },
53
53
  h("div", { class: "ez-col ez-col--sd-9 ez-col--tb-9 ez-align--bottom" },
54
- h("slot", null)),
54
+ h("slot", { name: "SnkGridHeader" })),
55
55
  h("div", { class: "ez-col ez-col--sd-3 ez-col--tb-3 ez-align--right" },
56
56
  h("snk-taskbar", { onActionClick: evt => this.actionClickHandler(evt), key: "topTaskbar", dataUnit: this._dataUnit, buttons: "FORM_MODE,CONFIG_GRID,INSERT", primaryButton: "INSERT" }))),
57
57
  h("ez-grid", { ref: ref => this._grid = ref, dataUnit: this._dataUnit, key: "grid-" + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: evt => { this.saveConfig(evt.detail); }, onEzDoubleClick: () => this.gridDoubleClick.emit() },
58
- h("snk-taskbar", { dataUnit: this._dataUnit, buttons: this.getHeaderButtons(), slot: "leftButtons", actionsList: this.actionsList }))));
58
+ h("snk-taskbar", { dataUnit: this._dataUnit, buttons: this.getHeaderButtons(), slot: "leftButtons", actionsList: this.actionsList })),
59
+ h("div", { class: "ez-col ez-col--sd-12" },
60
+ h("slot", { name: "SnkGridFooter" }))));
59
61
  }
60
62
  static get is() { return "snk-grid"; }
61
63
  static get encapsulation() { return "scoped"; }
@@ -24,6 +24,10 @@ export var AuthorizationElements;
24
24
  AuthorizationElements["INSERT"] = "INSERT";
25
25
  AuthorizationElements["CONFIG_GRID"] = "CONFIG_GRID";
26
26
  })(AuthorizationElements || (AuthorizationElements = {}));
27
+ export var VisibleWhenForbidden;
28
+ (function (VisibleWhenForbidden) {
29
+ VisibleWhenForbidden["CONFIG_GRID"] = "CONFIG_GRID";
30
+ })(VisibleWhenForbidden || (VisibleWhenForbidden = {}));
27
31
  export const buildElem = (element, className, getTitle, action, isEnabled, actions) => {
28
32
  switch (element) {
29
33
  case TaskbarElement.PREVIOUS:
@@ -1,7 +1,24 @@
1
1
  import { ApplicationContext } from '@sankhyalabs/core';
2
2
  import { Component, Event, h, Host, Prop, State, Watch } from '@stencil/core';
3
- import { TaskbarElement, buildElem, AuthorizationElements } from './elements/taskbar-elements';
3
+ import { TaskbarElement, buildElem, AuthorizationElements, VisibleWhenForbidden } from './elements/taskbar-elements';
4
4
  export class SnkTaskbar {
5
+ constructor() {
6
+ this._titleKeyByElement = {
7
+ [TaskbarElement.UPDATE]: "snkTaskbar.titleUpdate",
8
+ [TaskbarElement.PREVIOUS]: "snkTaskbar.titlePrevious",
9
+ [TaskbarElement.NEXT]: "snkTaskbar.titleNext",
10
+ [TaskbarElement.REFRESH]: "snkTaskbar.titleRefresh",
11
+ [TaskbarElement.CLONE]: "snkTaskbar.titleClone",
12
+ [TaskbarElement.REMOVE]: "snkTaskbar.titleRemove",
13
+ [TaskbarElement.MORE_OPTIONS]: "snkTaskbar.titleMoreOptions",
14
+ [TaskbarElement.INSERT]: "snkTaskbar.titleInsert",
15
+ [TaskbarElement.CANCEL]: "snkTaskbar.titleCancel",
16
+ [TaskbarElement.SAVE]: "snkTaskbar.titleSave",
17
+ [TaskbarElement.GRID_MODE]: "snkTaskbar.titleGridMode",
18
+ [TaskbarElement.CONFIG_GRID]: "snkTaskbar.titleConfigGrid",
19
+ [TaskbarElement.FORM_MODE]: "snkTaskbar.titleFormMode"
20
+ };
21
+ }
5
22
  observeButtons() {
6
23
  this._definitions = undefined;
7
24
  }
@@ -11,7 +28,7 @@ export class SnkTaskbar {
11
28
  if (strButtons) {
12
29
  strButtons.split(",").forEach(buttonName => {
13
30
  buttonName = buttonName.trim();
14
- if (this.isAllowed(buttonName)) {
31
+ if (VisibleWhenForbidden[buttonName] || this.isAllowed(buttonName)) {
15
32
  elements.push(buttonName.trim());
16
33
  }
17
34
  });
@@ -31,35 +48,14 @@ export class SnkTaskbar {
31
48
  * Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-taskbar.msg.ts"
32
49
  */
33
50
  getTitle(element) {
34
- switch (element) {
35
- case TaskbarElement.UPDATE:
36
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleUpdate", {});
37
- case TaskbarElement.PREVIOUS:
38
- return this._application.messagesBuilder.getMessage("snkTaskbar.titlePrevious", {});
39
- case TaskbarElement.NEXT:
40
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleNext", {});
41
- case TaskbarElement.REFRESH:
42
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleRefresh", {});
43
- case TaskbarElement.CLONE:
44
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleClone", {});
45
- case TaskbarElement.REMOVE:
46
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleRemove", {});
47
- case TaskbarElement.MORE_OPTIONS:
48
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleMoreOptions", {});
49
- case TaskbarElement.INSERT:
50
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleInsert", {});
51
- case TaskbarElement.CANCEL:
52
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleCancel", {});
53
- case TaskbarElement.SAVE:
54
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleSave", {});
55
- case TaskbarElement.GRID_MODE:
56
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleGridMode", {});
57
- case TaskbarElement.CONFIG_GRID:
58
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleConfigGrid", {});
59
- case TaskbarElement.FORM_MODE:
60
- return this._application.messagesBuilder.getMessage("snkTaskbar.titleFormMode", {});
51
+ let key;
52
+ if (this.isAllowed(element)) {
53
+ key = this._titleKeyByElement[element];
54
+ }
55
+ else {
56
+ key = "snkTaskbar.forbidden";
61
57
  }
62
- return "";
58
+ return key ? this._application.messagesBuilder.getMessage(key, {}) : "";
63
59
  }
64
60
  elementClick(elem) {
65
61
  if (this.dataUnit) {
@@ -93,6 +89,9 @@ export class SnkTaskbar {
93
89
  this.actionClick.emit(elem);
94
90
  }
95
91
  isEnabled(elem) {
92
+ if (!this.isAllowed(elem)) {
93
+ return false;
94
+ }
96
95
  return !(this.disabledButtons && this.disabledButtons.includes(elem));
97
96
  }
98
97
  getElement(index, def) {
@@ -60,20 +60,23 @@ export class DataFetcher {
60
60
  resolveURL() {
61
61
  return UrlUtils.getUrlBase();
62
62
  }
63
- getContext() {
63
+ getContext(module) {
64
64
  const urlParams = UrlUtils.getQueryParams(location.search);
65
65
  return {
66
- baseUrl: `${this.resolveURL()}/mge/service.sbr`,
66
+ baseUrl: `${this.resolveURL()}/${module}/service.sbr`,
67
67
  appName: "SankhyaBlocks",
68
68
  mgeSession: `${window['skw_session'] || urlParams.mgeSession}`,
69
69
  globalID: "85C0093DFA240EAB699B4E47A10215BD",
70
+ //FIXME: Precisamos ajustar para buscar o resourceId pela aplicação
70
71
  resourceID: "br.com.sankhya.mov.bancaria"
71
72
  };
72
73
  }
73
74
  async callServiceBroker(serviceName, payload) {
74
75
  return new Promise((accept, reject) => {
75
- const ctx = this.getContext();
76
- const url = `${ctx.baseUrl}?serviceName=${serviceName}&counter=21&application=${ctx.appName}&outputType=json&preventTransform=false&mgeSession=${ctx.mgeSession}&resourceID=${ctx.resourceID}&globalID=${ctx.globalID}&allowConcurrentCalls=true`;
76
+ const parts = serviceName.split("@");
77
+ const [module, name] = parts.length === 2 ? parts : ['mge', serviceName];
78
+ const ctx = this.getContext(module);
79
+ const url = `${ctx.baseUrl}?serviceName=${name}&counter=21&application=${ctx.appName}&outputType=json&preventTransform=false&mgeSession=${ctx.mgeSession}&resourceID=${ctx.resourceID}&globalID=${ctx.globalID}&allowConcurrentCalls=true`;
77
80
  document.cookie = `JSESSIONID=${ctx.mgeSession};`;
78
81
  const http = new XMLHttpRequest();
79
82
  DataFetcher.requestListener.forEach(listener => listener.onRequestStart({ url }));
@@ -0,0 +1 @@
1
+ export { DataFetcher } from './http/data-fetcher/DataFetcher';
@@ -10,7 +10,8 @@ const snkTaskbarMessages = {
10
10
  titleCancel: "Cancelar",
11
11
  titleSave: "Salvar",
12
12
  titleGridMode: "Modo Grade",
13
+ titleFormMode: "Modo Formulário",
13
14
  titleConfigGrid: "Configuração da grade",
14
- titleFormMode: "Modo Formulário"
15
+ forbidden: "Permissão não liberada"
15
16
  };
16
17
  export default snkTaskbarMessages;
@@ -42,8 +42,9 @@ const snkTaskbarMessages = {
42
42
  titleCancel: "Cancelar",
43
43
  titleSave: "Salvar",
44
44
  titleGridMode: "Modo Grade",
45
+ titleFormMode: "Modo Formulário",
45
46
  titleConfigGrid: "Configuração da grade",
46
- titleFormMode: "Modo Formulário"
47
+ forbidden: "Permissão não liberada"
47
48
  };
48
49
 
49
50
  class SnkMessageBuilder {