@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.
- package/dist/cjs/{SnkMessageBuilder-13239761.js → SnkMessageBuilder-bb55d4c4.js} +2 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/snk-application.cjs.entry.js +17 -8
- package/dist/cjs/snk-crud.cjs.entry.js +2 -2
- package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
- package/dist/cjs/snk-form_2.cjs.entry.js +2 -2
- package/dist/cjs/snk-taskbar.cjs.entry.js +27 -30
- package/dist/cjs/{taskbar-elements-73d524e5.js → taskbar-elements-2888ceb6.js} +4 -0
- package/dist/collection/components/snk-application/snk-application.js +46 -4
- package/dist/collection/components/snk-crud/snk-crud.css +1 -0
- package/dist/collection/components/snk-crud/snk-crud.js +4 -5
- package/dist/collection/components/snk-data-unit/snk-data-unit.js +2 -2
- package/dist/collection/components/snk-form/snk-form.js +2 -4
- package/dist/collection/components/snk-grid/snk-grid.js +4 -2
- package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +4 -0
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +29 -30
- package/dist/collection/lib/http/data-fetcher/DataFetcher.js +7 -4
- package/dist/collection/lib/index.js +1 -0
- package/dist/collection/lib/message/resources/snk-taskbar.msg.js +2 -1
- package/dist/components/SnkMessageBuilder.js +2 -1
- package/dist/components/snk-application2.js +17 -7
- package/dist/components/snk-crud.js +3 -3
- package/dist/components/snk-data-unit.js +2 -2
- package/dist/components/snk-form2.js +1 -1
- package/dist/components/snk-grid2.js +1 -1
- package/dist/components/snk-taskbar2.js +30 -29
- package/dist/esm/{SnkMessageBuilder-3835f9d8.js → SnkMessageBuilder-17d91b88.js} +2 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/snk-application.entry.js +17 -8
- package/dist/esm/snk-crud.entry.js +2 -2
- package/dist/esm/snk-data-unit.entry.js +3 -3
- package/dist/esm/snk-form_2.entry.js +2 -2
- package/dist/esm/snk-taskbar.entry.js +27 -30
- package/dist/esm/{taskbar-elements-6d01a640.js → taskbar-elements-5ea74223.js} +5 -1
- package/dist/sankhyablocks/{p-5e1b7e51.entry.js → p-56a32417.entry.js} +1 -1
- package/dist/sankhyablocks/p-ab694dbc.js +1 -0
- package/dist/sankhyablocks/p-b559117b.js +1 -0
- package/dist/sankhyablocks/{p-e942c604.entry.js → p-b7e029cd.entry.js} +2 -2
- package/dist/sankhyablocks/{p-f4d0394b.entry.js → p-ce2d1214.entry.js} +1 -1
- package/dist/sankhyablocks/p-d25803a1.entry.js +1 -0
- package/dist/sankhyablocks/p-edf81d2c.entry.js +1 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-application/snk-application.d.ts +6 -2
- package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +3 -0
- package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +15 -0
- package/dist/types/components.d.ts +6 -2
- package/dist/types/lib/http/data-fetcher/DataFetcher.d.ts +5 -6
- package/dist/types/lib/index.d.ts +1 -0
- package/package.json +2 -2
- package/dist/sankhyablocks/p-72bccbb6.js +0 -1
- package/dist/sankhyablocks/p-8c74d163.entry.js +0 -1
- package/dist/sankhyablocks/p-bab507ad.entry.js +0 -1
- 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
|
-
|
|
69
|
+
forbidden: "Permissão não liberada"
|
|
69
70
|
};
|
|
70
71
|
|
|
71
72
|
class SnkMessageBuilder {
|
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -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":[
|
|
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":[
|
|
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-
|
|
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()}/
|
|
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
|
|
6531
|
-
const
|
|
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.
|
|
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,
|
|
7573
|
-
return utils.ApplicationUtils.confirm(title, message, icon,
|
|
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",
|
|
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-
|
|
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",
|
|
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-
|
|
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",
|
|
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-
|
|
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
|
-
|
|
46
|
-
|
|
47
|
-
|
|
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
|
-
|
|
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.
|
|
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,
|
|
310
|
-
return ApplicationUtils.confirm(title, message, icon,
|
|
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,
|
|
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"
|
|
@@ -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",
|
|
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": "
|
|
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",
|
|
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": "
|
|
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",
|
|
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
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
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()}/
|
|
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
|
|
76
|
-
const
|
|
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
|
-
|
|
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
|
-
|
|
47
|
+
forbidden: "Permissão não liberada"
|
|
47
48
|
};
|
|
48
49
|
|
|
49
50
|
class SnkMessageBuilder {
|