@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
|
@@ -6512,20 +6512,23 @@ class DataFetcher {
|
|
|
6512
6512
|
resolveURL() {
|
|
6513
6513
|
return UrlUtils.getUrlBase();
|
|
6514
6514
|
}
|
|
6515
|
-
getContext() {
|
|
6515
|
+
getContext(module) {
|
|
6516
6516
|
const urlParams = UrlUtils.getQueryParams(location.search);
|
|
6517
6517
|
return {
|
|
6518
|
-
baseUrl: `${this.resolveURL()}/
|
|
6518
|
+
baseUrl: `${this.resolveURL()}/${module}/service.sbr`,
|
|
6519
6519
|
appName: "SankhyaBlocks",
|
|
6520
6520
|
mgeSession: `${window['skw_session'] || urlParams.mgeSession}`,
|
|
6521
6521
|
globalID: "85C0093DFA240EAB699B4E47A10215BD",
|
|
6522
|
+
//FIXME: Precisamos ajustar para buscar o resourceId pela aplicação
|
|
6522
6523
|
resourceID: "br.com.sankhya.mov.bancaria"
|
|
6523
6524
|
};
|
|
6524
6525
|
}
|
|
6525
6526
|
async callServiceBroker(serviceName, payload) {
|
|
6526
6527
|
return new Promise((accept, reject) => {
|
|
6527
|
-
const
|
|
6528
|
-
const
|
|
6528
|
+
const parts = serviceName.split("@");
|
|
6529
|
+
const [module, name] = parts.length === 2 ? parts : ['mge', serviceName];
|
|
6530
|
+
const ctx = this.getContext(module);
|
|
6531
|
+
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`;
|
|
6529
6532
|
document.cookie = `JSESSIONID=${ctx.mgeSession};`;
|
|
6530
6533
|
const http = new XMLHttpRequest();
|
|
6531
6534
|
DataFetcher.requestListener.forEach(listener => listener.onRequestStart({ url }));
|
|
@@ -7313,7 +7316,7 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
|
|
|
7313
7316
|
const waitingAuth = this._authPromises.length > 0;
|
|
7314
7317
|
this._authPromises.push(new PendingPromise(resolve, reject));
|
|
7315
7318
|
if (!waitingAuth) {
|
|
7316
|
-
this.authFetcher.getData(this.
|
|
7319
|
+
this.authFetcher.getData(this.resourceID).then((authList) => {
|
|
7317
7320
|
this._auth = authList;
|
|
7318
7321
|
while (this._authPromises.length > 0) {
|
|
7319
7322
|
this._authPromises.pop().resolve(this._auth);
|
|
@@ -7564,11 +7567,17 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
|
|
|
7564
7567
|
async error(title, message, icon, options) {
|
|
7565
7568
|
return ApplicationUtils.error(title, message, icon, options);
|
|
7566
7569
|
}
|
|
7570
|
+
/**
|
|
7571
|
+
* Exibe um diálogo de mensagem comum
|
|
7572
|
+
*/
|
|
7573
|
+
async message(title, message, icon, options) {
|
|
7574
|
+
return ApplicationUtils.message(title, message, icon, options);
|
|
7575
|
+
}
|
|
7567
7576
|
/**
|
|
7568
7577
|
* Exibe um diálogo de confirmação
|
|
7569
7578
|
*/
|
|
7570
|
-
async confirm(title, message, icon,
|
|
7571
|
-
return ApplicationUtils.confirm(title, message, icon,
|
|
7579
|
+
async confirm(title, message, icon, dialogType, options) {
|
|
7580
|
+
return ApplicationUtils.confirm(title, message, icon, dialogType, options);
|
|
7572
7581
|
}
|
|
7573
7582
|
/**
|
|
7574
7583
|
* Mostra uma informação efêmera (de segundo plano).
|
|
@@ -7753,6 +7762,7 @@ const SnkApplication = /*@__PURE__*/ proxyCustomElement(class extends HTMLElemen
|
|
|
7753
7762
|
"getResourceID": [64],
|
|
7754
7763
|
"alert": [64],
|
|
7755
7764
|
"error": [64],
|
|
7765
|
+
"message": [64],
|
|
7756
7766
|
"confirm": [64],
|
|
7757
7767
|
"info": [64],
|
|
7758
7768
|
"loadFormConfig": [64],
|
|
@@ -3,7 +3,7 @@ import { d as defineCustomElement$4 } from './snk-form2.js';
|
|
|
3
3
|
import { d as defineCustomElement$3 } from './snk-grid2.js';
|
|
4
4
|
import { d as defineCustomElement$2 } from './snk-taskbar2.js';
|
|
5
5
|
|
|
6
|
-
const snkCrudCss = ".sc-snk-crud-h{display:flex;height:100%;width:100%}";
|
|
6
|
+
const snkCrudCss = ".sc-snk-crud-h{display:flex;flex-direction:column;height:100%;width:100%}";
|
|
7
7
|
|
|
8
8
|
const GRID_MODE = 0;
|
|
9
9
|
const FORM_MODE = 1;
|
|
@@ -55,14 +55,14 @@ const SnkCrud$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
render() {
|
|
58
|
-
return (h("ez-view-stack", { ref: (ref) => this._viewStack = ref }, h("stack-item", null, h("snk-grid", { configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), onActionClick: evt => this.executeAction(evt.detail), actionsList: this.actionsList }, h("slot",
|
|
58
|
+
return (h("ez-view-stack", { ref: (ref) => this._viewStack = ref }, h("stack-item", null, h("snk-grid", { configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), onActionClick: evt => this.executeAction(evt.detail), actionsList: this.actionsList }, h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }))), h("stack-item", null, 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 this; }
|
|
61
61
|
static get style() { return snkCrudCss; }
|
|
62
62
|
}, [6, "snk-crud", {
|
|
63
63
|
"configName": [1, "config-name"],
|
|
64
64
|
"actionsList": [16],
|
|
65
|
-
"recordsValidator": [
|
|
65
|
+
"recordsValidator": [16],
|
|
66
66
|
"_dataUnit": [32],
|
|
67
67
|
"_dataState": [32]
|
|
68
68
|
}]);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
|
|
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 { O as OperationMap } from './SnkMessageBuilder.js';
|
|
5
5
|
|
|
6
6
|
const snkDataUnitCss = ".sc-snk-data-unit-h{display:flex;flex-direction:column;height:100%}";
|
|
@@ -181,7 +181,7 @@ const SnkDataUnit$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
|
|
|
181
181
|
}
|
|
182
182
|
else {
|
|
183
183
|
const removeConfirmationTitle = this.getMessage("snkDataUnit.removeConfirmationTitle");
|
|
184
|
-
ApplicationUtils.confirm(removeConfirmationTitle, removeConfirmation, "delete",
|
|
184
|
+
ApplicationUtils.confirm(removeConfirmationTitle, removeConfirmation, "delete", DialogType.CRITICAL, { btnConfirmDanger: true })
|
|
185
185
|
.then((result) => resolve(result ? action : undefined));
|
|
186
186
|
}
|
|
187
187
|
}
|
|
@@ -110,7 +110,7 @@ const SnkForm = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
110
110
|
static get style() { return snkFormCss; }
|
|
111
111
|
}, [2, "snk-form", {
|
|
112
112
|
"configName": [1, "config-name"],
|
|
113
|
-
"recordsValidator": [
|
|
113
|
+
"recordsValidator": [16],
|
|
114
114
|
"actionsList": [16],
|
|
115
115
|
"_dataUnit": [32],
|
|
116
116
|
"_configLoaded": [32],
|
|
@@ -57,7 +57,7 @@ const SnkGrid = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
57
57
|
if (!this._configLoaded || !this._dataUnit) {
|
|
58
58
|
return undefined;
|
|
59
59
|
}
|
|
60
|
-
return (h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" }, h("div", { class: "ez-row ez-padding-bottom--medium ez-margin-bottom--medium" }, h("div", { class: "ez-col ez-col--sd-9 ez-col--tb-9 ez-align--bottom" }, h("slot",
|
|
60
|
+
return (h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" }, h("div", { class: "ez-row ez-padding-bottom--medium ez-margin-bottom--medium" }, h("div", { class: "ez-col ez-col--sd-9 ez-col--tb-9 ez-align--bottom" }, h("slot", { name: "SnkGridHeader" })), h("div", { class: "ez-col ez-col--sd-3 ez-col--tb-3 ez-align--right" }, h("snk-taskbar", { onActionClick: evt => this.actionClickHandler(evt), key: "topTaskbar", dataUnit: this._dataUnit, buttons: "FORM_MODE,CONFIG_GRID,INSERT", primaryButton: "INSERT" }))), 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() }, h("snk-taskbar", { dataUnit: this._dataUnit, buttons: this.getHeaderButtons(), slot: "leftButtons", actionsList: this.actionsList })), h("div", { class: "ez-col ez-col--sd-12" }, h("slot", { name: "SnkGridFooter" }))));
|
|
61
61
|
}
|
|
62
62
|
get _element() { return this; }
|
|
63
63
|
static get style() { return snkGridCss; }
|
|
@@ -26,6 +26,10 @@ var AuthorizationElements;
|
|
|
26
26
|
AuthorizationElements["INSERT"] = "INSERT";
|
|
27
27
|
AuthorizationElements["CONFIG_GRID"] = "CONFIG_GRID";
|
|
28
28
|
})(AuthorizationElements || (AuthorizationElements = {}));
|
|
29
|
+
var VisibleWhenForbidden;
|
|
30
|
+
(function (VisibleWhenForbidden) {
|
|
31
|
+
VisibleWhenForbidden["CONFIG_GRID"] = "CONFIG_GRID";
|
|
32
|
+
})(VisibleWhenForbidden || (VisibleWhenForbidden = {}));
|
|
29
33
|
const buildElem = (element, className, getTitle, action, isEnabled, actions) => {
|
|
30
34
|
switch (element) {
|
|
31
35
|
case TaskbarElement.PREVIOUS:
|
|
@@ -73,6 +77,21 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
73
77
|
super();
|
|
74
78
|
this.__registerHost();
|
|
75
79
|
this.actionClick = createEvent(this, "actionClick", 7);
|
|
80
|
+
this._titleKeyByElement = {
|
|
81
|
+
[TaskbarElement.UPDATE]: "snkTaskbar.titleUpdate",
|
|
82
|
+
[TaskbarElement.PREVIOUS]: "snkTaskbar.titlePrevious",
|
|
83
|
+
[TaskbarElement.NEXT]: "snkTaskbar.titleNext",
|
|
84
|
+
[TaskbarElement.REFRESH]: "snkTaskbar.titleRefresh",
|
|
85
|
+
[TaskbarElement.CLONE]: "snkTaskbar.titleClone",
|
|
86
|
+
[TaskbarElement.REMOVE]: "snkTaskbar.titleRemove",
|
|
87
|
+
[TaskbarElement.MORE_OPTIONS]: "snkTaskbar.titleMoreOptions",
|
|
88
|
+
[TaskbarElement.INSERT]: "snkTaskbar.titleInsert",
|
|
89
|
+
[TaskbarElement.CANCEL]: "snkTaskbar.titleCancel",
|
|
90
|
+
[TaskbarElement.SAVE]: "snkTaskbar.titleSave",
|
|
91
|
+
[TaskbarElement.GRID_MODE]: "snkTaskbar.titleGridMode",
|
|
92
|
+
[TaskbarElement.CONFIG_GRID]: "snkTaskbar.titleConfigGrid",
|
|
93
|
+
[TaskbarElement.FORM_MODE]: "snkTaskbar.titleFormMode"
|
|
94
|
+
};
|
|
76
95
|
}
|
|
77
96
|
observeButtons() {
|
|
78
97
|
this._definitions = undefined;
|
|
@@ -83,7 +102,7 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
83
102
|
if (strButtons) {
|
|
84
103
|
strButtons.split(",").forEach(buttonName => {
|
|
85
104
|
buttonName = buttonName.trim();
|
|
86
|
-
if (this.isAllowed(buttonName)) {
|
|
105
|
+
if (VisibleWhenForbidden[buttonName] || this.isAllowed(buttonName)) {
|
|
87
106
|
elements.push(buttonName.trim());
|
|
88
107
|
}
|
|
89
108
|
});
|
|
@@ -103,35 +122,14 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
103
122
|
* Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-taskbar.msg.ts"
|
|
104
123
|
*/
|
|
105
124
|
getTitle(element) {
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
case TaskbarElement.PREVIOUS:
|
|
110
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titlePrevious", {});
|
|
111
|
-
case TaskbarElement.NEXT:
|
|
112
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleNext", {});
|
|
113
|
-
case TaskbarElement.REFRESH:
|
|
114
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleRefresh", {});
|
|
115
|
-
case TaskbarElement.CLONE:
|
|
116
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleClone", {});
|
|
117
|
-
case TaskbarElement.REMOVE:
|
|
118
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleRemove", {});
|
|
119
|
-
case TaskbarElement.MORE_OPTIONS:
|
|
120
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleMoreOptions", {});
|
|
121
|
-
case TaskbarElement.INSERT:
|
|
122
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleInsert", {});
|
|
123
|
-
case TaskbarElement.CANCEL:
|
|
124
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleCancel", {});
|
|
125
|
-
case TaskbarElement.SAVE:
|
|
126
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleSave", {});
|
|
127
|
-
case TaskbarElement.GRID_MODE:
|
|
128
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleGridMode", {});
|
|
129
|
-
case TaskbarElement.CONFIG_GRID:
|
|
130
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleConfigGrid", {});
|
|
131
|
-
case TaskbarElement.FORM_MODE:
|
|
132
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleFormMode", {});
|
|
125
|
+
let key;
|
|
126
|
+
if (this.isAllowed(element)) {
|
|
127
|
+
key = this._titleKeyByElement[element];
|
|
133
128
|
}
|
|
134
|
-
|
|
129
|
+
else {
|
|
130
|
+
key = "snkTaskbar.forbidden";
|
|
131
|
+
}
|
|
132
|
+
return key ? this._application.messagesBuilder.getMessage(key, {}) : "";
|
|
135
133
|
}
|
|
136
134
|
elementClick(elem) {
|
|
137
135
|
if (this.dataUnit) {
|
|
@@ -165,6 +163,9 @@ const SnkTaskbar = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
|
|
|
165
163
|
this.actionClick.emit(elem);
|
|
166
164
|
}
|
|
167
165
|
isEnabled(elem) {
|
|
166
|
+
if (!this.isAllowed(elem)) {
|
|
167
|
+
return false;
|
|
168
|
+
}
|
|
168
169
|
return !(this.disabledButtons && this.disabledButtons.includes(elem));
|
|
169
170
|
}
|
|
170
171
|
getElement(index, def) {
|
|
@@ -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 {
|
package/dist/esm/loader.js
CHANGED
|
@@ -10,7 +10,7 @@ const patchEsm = () => {
|
|
|
10
10
|
const defineCustomElements = (win, options) => {
|
|
11
11
|
if (typeof window === 'undefined') return Promise.resolve();
|
|
12
12
|
return patchEsm().then(() => {
|
|
13
|
-
return bootstrapLazy([["snk-crud",[[6,"snk-crud",{"configName":[1,"config-name"],"actionsList":[16],"recordsValidator":[
|
|
13
|
+
return bootstrapLazy([["snk-crud",[[6,"snk-crud",{"configName":[1,"config-name"],"actionsList":[16],"recordsValidator":[16],"_dataUnit":[32],"_dataState":[32]}]]],["teste-pesquisa",[[1,"teste-pesquisa"]]],["snk-data-unit",[[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",[[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",[[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",[[2,"snk-pesquisa",{"searchLoader":[16],"selectItem":[16],"argument":[1025],"_itemList":[32],"_startLoading":[32]}]]],["snk-taskbar",[[6,"snk-taskbar",{"buttons":[1],"actionsList":[16],"primaryButton":[1,"primary-button"],"disabledButtons":[16],"dataUnit":[16],"_permissions":[32]}]]]], options);
|
|
14
14
|
});
|
|
15
15
|
};
|
|
16
16
|
|
|
@@ -13,5 +13,5 @@ const patchBrowser = () => {
|
|
|
13
13
|
};
|
|
14
14
|
|
|
15
15
|
patchBrowser().then(options => {
|
|
16
|
-
return bootstrapLazy([["snk-crud",[[6,"snk-crud",{"configName":[1,"config-name"],"actionsList":[16],"recordsValidator":[
|
|
16
|
+
return bootstrapLazy([["snk-crud",[[6,"snk-crud",{"configName":[1,"config-name"],"actionsList":[16],"recordsValidator":[16],"_dataUnit":[32],"_dataState":[32]}]]],["teste-pesquisa",[[1,"teste-pesquisa"]]],["snk-data-unit",[[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",[[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",[[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",[[2,"snk-pesquisa",{"searchLoader":[16],"selectItem":[16],"argument":[1025],"_itemList":[32],"_startLoading":[32]}]]],["snk-taskbar",[[6,"snk-taskbar",{"buttons":[1],"actionsList":[16],"primaryButton":[1,"primary-button"],"disabledButtons":[16],"dataUnit":[16],"_permissions":[32]}]]]], options);
|
|
17
17
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, h } from './index-6a83ac96.js';
|
|
2
2
|
import { ErrorException, StringUtils, DataUnit, DataType, ChangeOperation, DateUtils, ObjectUtils, WaitingChangeException, WarningException, DependencyType, ApplicationContext, ErrorTracking } from '@sankhyalabs/core';
|
|
3
3
|
import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
|
|
4
|
-
import { S as SnkMessageBuilder } from './SnkMessageBuilder-
|
|
4
|
+
import { S as SnkMessageBuilder } from './SnkMessageBuilder-17d91b88.js';
|
|
5
5
|
|
|
6
6
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
7
7
|
|
|
@@ -6511,20 +6511,23 @@ class DataFetcher {
|
|
|
6511
6511
|
resolveURL() {
|
|
6512
6512
|
return UrlUtils.getUrlBase();
|
|
6513
6513
|
}
|
|
6514
|
-
getContext() {
|
|
6514
|
+
getContext(module) {
|
|
6515
6515
|
const urlParams = UrlUtils.getQueryParams(location.search);
|
|
6516
6516
|
return {
|
|
6517
|
-
baseUrl: `${this.resolveURL()}/
|
|
6517
|
+
baseUrl: `${this.resolveURL()}/${module}/service.sbr`,
|
|
6518
6518
|
appName: "SankhyaBlocks",
|
|
6519
6519
|
mgeSession: `${window['skw_session'] || urlParams.mgeSession}`,
|
|
6520
6520
|
globalID: "85C0093DFA240EAB699B4E47A10215BD",
|
|
6521
|
+
//FIXME: Precisamos ajustar para buscar o resourceId pela aplicação
|
|
6521
6522
|
resourceID: "br.com.sankhya.mov.bancaria"
|
|
6522
6523
|
};
|
|
6523
6524
|
}
|
|
6524
6525
|
async callServiceBroker(serviceName, payload) {
|
|
6525
6526
|
return new Promise((accept, reject) => {
|
|
6526
|
-
const
|
|
6527
|
-
const
|
|
6527
|
+
const parts = serviceName.split("@");
|
|
6528
|
+
const [module, name] = parts.length === 2 ? parts : ['mge', serviceName];
|
|
6529
|
+
const ctx = this.getContext(module);
|
|
6530
|
+
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`;
|
|
6528
6531
|
document.cookie = `JSESSIONID=${ctx.mgeSession};`;
|
|
6529
6532
|
const http = new XMLHttpRequest();
|
|
6530
6533
|
DataFetcher.requestListener.forEach(listener => listener.onRequestStart({ url }));
|
|
@@ -7311,7 +7314,7 @@ const SnkApplication = class {
|
|
|
7311
7314
|
const waitingAuth = this._authPromises.length > 0;
|
|
7312
7315
|
this._authPromises.push(new PendingPromise(resolve, reject));
|
|
7313
7316
|
if (!waitingAuth) {
|
|
7314
|
-
this.authFetcher.getData(this.
|
|
7317
|
+
this.authFetcher.getData(this.resourceID).then((authList) => {
|
|
7315
7318
|
this._auth = authList;
|
|
7316
7319
|
while (this._authPromises.length > 0) {
|
|
7317
7320
|
this._authPromises.pop().resolve(this._auth);
|
|
@@ -7562,11 +7565,17 @@ const SnkApplication = class {
|
|
|
7562
7565
|
async error(title, message, icon, options) {
|
|
7563
7566
|
return ApplicationUtils.error(title, message, icon, options);
|
|
7564
7567
|
}
|
|
7568
|
+
/**
|
|
7569
|
+
* Exibe um diálogo de mensagem comum
|
|
7570
|
+
*/
|
|
7571
|
+
async message(title, message, icon, options) {
|
|
7572
|
+
return ApplicationUtils.message(title, message, icon, options);
|
|
7573
|
+
}
|
|
7565
7574
|
/**
|
|
7566
7575
|
* Exibe um diálogo de confirmação
|
|
7567
7576
|
*/
|
|
7568
|
-
async confirm(title, message, icon,
|
|
7569
|
-
return ApplicationUtils.confirm(title, message, icon,
|
|
7577
|
+
async confirm(title, message, icon, dialogType, options) {
|
|
7578
|
+
return ApplicationUtils.confirm(title, message, icon, dialogType, options);
|
|
7570
7579
|
}
|
|
7571
7580
|
/**
|
|
7572
7581
|
* Mostra uma informação efêmera (de segundo plano).
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as registerInstance, h, g as getElement } from './index-6a83ac96.js';
|
|
2
2
|
|
|
3
|
-
const snkCrudCss = ".sc-snk-crud-h{display:flex;height:100%;width:100%}";
|
|
3
|
+
const snkCrudCss = ".sc-snk-crud-h{display:flex;flex-direction:column;height:100%;width:100%}";
|
|
4
4
|
|
|
5
5
|
const GRID_MODE = 0;
|
|
6
6
|
const FORM_MODE = 1;
|
|
@@ -51,7 +51,7 @@ const SnkCrud = class {
|
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
render() {
|
|
54
|
-
return (h("ez-view-stack", { ref: (ref) => this._viewStack = ref }, h("stack-item", null, h("snk-grid", { configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), onActionClick: evt => this.executeAction(evt.detail), actionsList: this.actionsList }, h("slot",
|
|
54
|
+
return (h("ez-view-stack", { ref: (ref) => this._viewStack = ref }, h("stack-item", null, h("snk-grid", { configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), onActionClick: evt => this.executeAction(evt.detail), actionsList: this.actionsList }, h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }))), h("stack-item", null, h("snk-form", { configName: this.configName, actionsList: this.actionsList, onExit: () => this._viewStack.show(GRID_MODE), recordsValidator: this.recordsValidator, onActionClick: evt => this.executeAction(evt.detail) }))));
|
|
55
55
|
}
|
|
56
56
|
get _element() { return getElement(this); }
|
|
57
57
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, g as getElement, H as Host } from './index-6a83ac96.js';
|
|
2
2
|
import { Action, ApplicationContext } from '@sankhyalabs/core';
|
|
3
|
-
import { ApplicationUtils } from '@sankhyalabs/ezui/dist/collection/utils';
|
|
4
|
-
import { O as OperationMap } from './SnkMessageBuilder-
|
|
3
|
+
import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
|
|
4
|
+
import { O as OperationMap } from './SnkMessageBuilder-17d91b88.js';
|
|
5
5
|
|
|
6
6
|
const snkDataUnitCss = ".sc-snk-data-unit-h{display:flex;flex-direction:column;height:100%}";
|
|
7
7
|
|
|
@@ -180,7 +180,7 @@ const SnkDataUnit = class {
|
|
|
180
180
|
}
|
|
181
181
|
else {
|
|
182
182
|
const removeConfirmationTitle = this.getMessage("snkDataUnit.removeConfirmationTitle");
|
|
183
|
-
ApplicationUtils.confirm(removeConfirmationTitle, removeConfirmation, "delete",
|
|
183
|
+
ApplicationUtils.confirm(removeConfirmationTitle, removeConfirmation, "delete", DialogType.CRITICAL, { btnConfirmDanger: true })
|
|
184
184
|
.then((result) => resolve(result ? action : undefined));
|
|
185
185
|
}
|
|
186
186
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, g as getElement } from './index-6a83ac96.js';
|
|
2
2
|
import { ApplicationContext } from '@sankhyalabs/core';
|
|
3
|
-
import { T as TaskbarElement } from './taskbar-elements-
|
|
3
|
+
import { T as TaskbarElement } from './taskbar-elements-5ea74223.js';
|
|
4
4
|
|
|
5
5
|
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))}";
|
|
6
6
|
|
|
@@ -163,7 +163,7 @@ const SnkGrid = class {
|
|
|
163
163
|
if (!this._configLoaded || !this._dataUnit) {
|
|
164
164
|
return undefined;
|
|
165
165
|
}
|
|
166
|
-
return (h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" }, h("div", { class: "ez-row ez-padding-bottom--medium ez-margin-bottom--medium" }, h("div", { class: "ez-col ez-col--sd-9 ez-col--tb-9 ez-align--bottom" }, h("slot",
|
|
166
|
+
return (h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" }, h("div", { class: "ez-row ez-padding-bottom--medium ez-margin-bottom--medium" }, h("div", { class: "ez-col ez-col--sd-9 ez-col--tb-9 ez-align--bottom" }, h("slot", { name: "SnkGridHeader" })), h("div", { class: "ez-col ez-col--sd-3 ez-col--tb-3 ez-align--right" }, h("snk-taskbar", { onActionClick: evt => this.actionClickHandler(evt), key: "topTaskbar", dataUnit: this._dataUnit, buttons: "FORM_MODE,CONFIG_GRID,INSERT", primaryButton: "INSERT" }))), 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() }, h("snk-taskbar", { dataUnit: this._dataUnit, buttons: this.getHeaderButtons(), slot: "leftButtons", actionsList: this.actionsList })), h("div", { class: "ez-col ez-col--sd-12" }, h("slot", { name: "SnkGridFooter" }))));
|
|
167
167
|
}
|
|
168
168
|
get _element() { return getElement(this); }
|
|
169
169
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, H as Host } from './index-6a83ac96.js';
|
|
2
2
|
import { ApplicationContext } from '@sankhyalabs/core';
|
|
3
|
-
import {
|
|
3
|
+
import { T as TaskbarElement, V as VisibleWhenForbidden, A as AuthorizationElements, b as buildElem } from './taskbar-elements-5ea74223.js';
|
|
4
4
|
|
|
5
5
|
const snkTaskbarCss = ".sc-snk-taskbar-h{display:flex}";
|
|
6
6
|
|
|
@@ -8,6 +8,21 @@ const SnkTaskbar = class {
|
|
|
8
8
|
constructor(hostRef) {
|
|
9
9
|
registerInstance(this, hostRef);
|
|
10
10
|
this.actionClick = createEvent(this, "actionClick", 7);
|
|
11
|
+
this._titleKeyByElement = {
|
|
12
|
+
[TaskbarElement.UPDATE]: "snkTaskbar.titleUpdate",
|
|
13
|
+
[TaskbarElement.PREVIOUS]: "snkTaskbar.titlePrevious",
|
|
14
|
+
[TaskbarElement.NEXT]: "snkTaskbar.titleNext",
|
|
15
|
+
[TaskbarElement.REFRESH]: "snkTaskbar.titleRefresh",
|
|
16
|
+
[TaskbarElement.CLONE]: "snkTaskbar.titleClone",
|
|
17
|
+
[TaskbarElement.REMOVE]: "snkTaskbar.titleRemove",
|
|
18
|
+
[TaskbarElement.MORE_OPTIONS]: "snkTaskbar.titleMoreOptions",
|
|
19
|
+
[TaskbarElement.INSERT]: "snkTaskbar.titleInsert",
|
|
20
|
+
[TaskbarElement.CANCEL]: "snkTaskbar.titleCancel",
|
|
21
|
+
[TaskbarElement.SAVE]: "snkTaskbar.titleSave",
|
|
22
|
+
[TaskbarElement.GRID_MODE]: "snkTaskbar.titleGridMode",
|
|
23
|
+
[TaskbarElement.CONFIG_GRID]: "snkTaskbar.titleConfigGrid",
|
|
24
|
+
[TaskbarElement.FORM_MODE]: "snkTaskbar.titleFormMode"
|
|
25
|
+
};
|
|
11
26
|
}
|
|
12
27
|
observeButtons() {
|
|
13
28
|
this._definitions = undefined;
|
|
@@ -18,7 +33,7 @@ const SnkTaskbar = class {
|
|
|
18
33
|
if (strButtons) {
|
|
19
34
|
strButtons.split(",").forEach(buttonName => {
|
|
20
35
|
buttonName = buttonName.trim();
|
|
21
|
-
if (this.isAllowed(buttonName)) {
|
|
36
|
+
if (VisibleWhenForbidden[buttonName] || this.isAllowed(buttonName)) {
|
|
22
37
|
elements.push(buttonName.trim());
|
|
23
38
|
}
|
|
24
39
|
});
|
|
@@ -38,35 +53,14 @@ const SnkTaskbar = class {
|
|
|
38
53
|
* Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-taskbar.msg.ts"
|
|
39
54
|
*/
|
|
40
55
|
getTitle(element) {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
case TaskbarElement.PREVIOUS:
|
|
45
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titlePrevious", {});
|
|
46
|
-
case TaskbarElement.NEXT:
|
|
47
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleNext", {});
|
|
48
|
-
case TaskbarElement.REFRESH:
|
|
49
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleRefresh", {});
|
|
50
|
-
case TaskbarElement.CLONE:
|
|
51
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleClone", {});
|
|
52
|
-
case TaskbarElement.REMOVE:
|
|
53
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleRemove", {});
|
|
54
|
-
case TaskbarElement.MORE_OPTIONS:
|
|
55
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleMoreOptions", {});
|
|
56
|
-
case TaskbarElement.INSERT:
|
|
57
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleInsert", {});
|
|
58
|
-
case TaskbarElement.CANCEL:
|
|
59
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleCancel", {});
|
|
60
|
-
case TaskbarElement.SAVE:
|
|
61
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleSave", {});
|
|
62
|
-
case TaskbarElement.GRID_MODE:
|
|
63
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleGridMode", {});
|
|
64
|
-
case TaskbarElement.CONFIG_GRID:
|
|
65
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleConfigGrid", {});
|
|
66
|
-
case TaskbarElement.FORM_MODE:
|
|
67
|
-
return this._application.messagesBuilder.getMessage("snkTaskbar.titleFormMode", {});
|
|
56
|
+
let key;
|
|
57
|
+
if (this.isAllowed(element)) {
|
|
58
|
+
key = this._titleKeyByElement[element];
|
|
68
59
|
}
|
|
69
|
-
|
|
60
|
+
else {
|
|
61
|
+
key = "snkTaskbar.forbidden";
|
|
62
|
+
}
|
|
63
|
+
return key ? this._application.messagesBuilder.getMessage(key, {}) : "";
|
|
70
64
|
}
|
|
71
65
|
elementClick(elem) {
|
|
72
66
|
if (this.dataUnit) {
|
|
@@ -100,6 +94,9 @@ const SnkTaskbar = class {
|
|
|
100
94
|
this.actionClick.emit(elem);
|
|
101
95
|
}
|
|
102
96
|
isEnabled(elem) {
|
|
97
|
+
if (!this.isAllowed(elem)) {
|
|
98
|
+
return false;
|
|
99
|
+
}
|
|
103
100
|
return !(this.disabledButtons && this.disabledButtons.includes(elem));
|
|
104
101
|
}
|
|
105
102
|
getElement(index, def) {
|
|
@@ -25,6 +25,10 @@ var AuthorizationElements;
|
|
|
25
25
|
AuthorizationElements["INSERT"] = "INSERT";
|
|
26
26
|
AuthorizationElements["CONFIG_GRID"] = "CONFIG_GRID";
|
|
27
27
|
})(AuthorizationElements || (AuthorizationElements = {}));
|
|
28
|
+
var VisibleWhenForbidden;
|
|
29
|
+
(function (VisibleWhenForbidden) {
|
|
30
|
+
VisibleWhenForbidden["CONFIG_GRID"] = "CONFIG_GRID";
|
|
31
|
+
})(VisibleWhenForbidden || (VisibleWhenForbidden = {}));
|
|
28
32
|
const buildElem = (element, className, getTitle, action, isEnabled, actions) => {
|
|
29
33
|
switch (element) {
|
|
30
34
|
case TaskbarElement.PREVIOUS:
|
|
@@ -65,4 +69,4 @@ function iconTextButton(iconName, element, className, getTitle, action, isEnable
|
|
|
65
69
|
h("ez-icon", { class: "ez-padding-right--small", slot: "leftIcon", iconName: iconName }));
|
|
66
70
|
}
|
|
67
71
|
|
|
68
|
-
export { AuthorizationElements as A, TaskbarElement as T, buildElem as b };
|
|
72
|
+
export { AuthorizationElements as A, TaskbarElement as T, VisibleWhenForbidden as V, buildElem as b };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as t,h as i,g as s}from"./p-cd1dc099.js";const
|
|
1
|
+
import{r as t,h as i,g as s}from"./p-cd1dc099.js";const e=class{constructor(i){t(this,i)}async gridToForm(t=!1){this._backToGrid=!t&&0===await this._viewStack.getSelectedIndex(),this._viewStack.show(1)}async executeAction(t){"GRID_MODE"===t?this._viewStack.show(0):"FORM_MODE"!==t&&"UPDATE"!==t||this.gridToForm("UPDATE"!==t)}insertionModeHandler(){this.gridToForm()}cancelHandler(){this._backToGrid&&this._viewStack.show(0)}componentWillLoad(){let t=this._element.parentElement;for(;t;){if("SNK-DATA-UNIT"===t.tagName.toUpperCase()){this._snkDataUnit=t,this._snkDataUnit.addEventListener("insertionMode",(()=>this.insertionModeHandler())),this._snkDataUnit.addEventListener("cancelEdition",(()=>this.cancelHandler())),this._dataUnit=this._snkDataUnit.dataUnit,this._dataState=this._snkDataUnit.dataState,this._dataUnit||this._snkDataUnit.addEventListener("dataUnitReady",(t=>{this._dataUnit=t.detail})),this._snkDataUnit.addEventListener("dataStateChange",(t=>{this._dataState=t.detail}));break}t=t.parentElement}}render(){return i("ez-view-stack",{ref:t=>this._viewStack=t},i("stack-item",null,i("snk-grid",{configName:this.configName,onGridDoubleClick:()=>this.gridToForm(!0),onActionClick:t=>this.executeAction(t.detail),actionsList:this.actionsList},i("slot",{name:"SnkGridHeader"}),i("slot",{name:"SnkGridFooter"}))),i("stack-item",null,i("snk-form",{configName:this.configName,actionsList:this.actionsList,onExit:()=>this._viewStack.show(0),recordsValidator:this.recordsValidator,onActionClick:t=>this.executeAction(t.detail)})))}get _element(){return s(this)}};e.style=".sc-snk-crud-h{display:flex;flex-direction:column;height:100%;width:100%}";export{e as snk_crud}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e={saveInfo:{clone:"Duplicação realizada!",insert:"Inclusão realizada!",update:"Aleração realizada!"},cancelInfo:{clone:"Duplicação descartada!",insert:"A inclusão descartada!",update:"A edição foi descartada!"},removeInfo:"Registro removido com sucesso!",cancelConfirmationTitle:"Aviso",cancelConfirmation:"As alterações realizadas serão descartadas<br/><br/><b>Você realmente gostaria de cancelar?",removeConfirmationTitle:"Excluir",removeConfirmation:"Deseja realmente excluir o registro atual?",forbiddenUpdate:"Não é possível fazer alterações. Verifique as permissões de acesso.",forbiddenInsert:"Não é possível incluir. Verifique as permissões de acesso.",forbiddenClone:"Não é possível duplicar. Verifique as permissões de acesso.",forbiddenRemove:"Não é possível remover. Verifique as permissões de acesso."},s={title:{clone:"Duplicar registro",insert:"Cadastrar registro",update:"Alterar registro",clean:"{{ENTITY_NAME}}"},goBackTitle:"Voltar"},r={titleUpdate:"Editar",titlePrevious:"Anterior",titleNext:"Próximo",titleRefresh:"Atualizar",titleClone:"Duplicar",titleRemove:"Excluir",titleMoreOptions:"Mais Opções",titleInsert:"Cadastrar",titleCancel:"Cancelar",titleSave:"Salvar",titleGridMode:"Modo Grade",titleFormMode:"Modo Formulário",titleConfigGrid:"Configuração da grade",forbidden:"Permissão não liberada"};class a{constructor(){this._defaults={snkDataUnit:e,snkForm:s,snkTaskbar:r},this._currentOperation=i.CLEAN,this.loadAppMessages().then((e=>{this._appMessages=e}),(e=>{console.info("O arquivo de mensagens personalizadas não foi encontrado no caminho /messages/appmessages.js",e)}))}set currentOperation(e){this._currentOperation=e}getMessage(e,s){if(null==e)return;var r=e.split(".");let a=this.resolveMessage(r,this._appMessages);if(null==a&&(a=this.resolveMessage(r,this._defaults)),this.customMessageBuilder){const r=this.customMessageBuilder(e,a,s);a=r.message,s=r.params}return this.postProcess(a,s)}resolveMessage(e,s){if(null==s)return;const r=s[e[0]];return r?this.isOperationSensitive(r)?r[this._currentOperation]:1===e.length||null==r||"string"==typeof r?r:this.resolveMessage(e.slice(1),r):void 0}isOperationSensitive(e){return null!=e[i.CLONE]||null!=e[i.INSERT]||null!=e[i.UPDATE]||null!=e[i.CLEAN]}postProcess(e,s){if(e){const r=/(.*?)\{\{(.+?)\}\}/g;let a,i="",t=e;for(;null!==(a=r.exec(e));){const[r,o,n]=a,l=a.index+r.length;t=l<e.length?e.substring(l):"";let d=s?s[n]:void 0;null==d&&(d=""),i+=o+d}return i+t}return e}loadAppMessages(){return new Promise(((e,s)=>{const r="dev"!==window.applicationenv?`/${window.MGE_MODULE_NAME}/labsApps/${window.APPLICATION_NAME}/messages/appmessages.js`:"/messages/appmessages.js";import(r).then((s=>{e(s.default)})).catch((e=>{s(e)}))}))}}var i;!function(e){e.CLONE="clone",e.INSERT="insert",e.UPDATE="update",e.CLEAN="clean"}(i||(i={}));export{i as O,a as S}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{h as e}from"./p-cd1dc099.js";var t,n,s;!function(e){e.PREVIOUS="PREVIOUS",e.NEXT="NEXT",e.REFRESH="REFRESH",e.UPDATE="UPDATE",e.CLONE="CLONE",e.REMOVE="REMOVE",e.INSERT="INSERT",e.CANCEL="CANCEL",e.SAVE="SAVE",e.GRID_MODE="GRID_MODE",e.FORM_MODE="FORM_MODE",e.CONFIG_GRID="CONFIG_GRID",e.MORE_OPTIONS="MORE_OPTIONS",e.DIVIDER="DIVIDER"}(t||(t={})),function(e){e.UPDATE="UPDATE",e.CLONE="CLONE",e.REMOVE="REMOVE",e.INSERT="INSERT",e.CONFIG_GRID="CONFIG_GRID"}(n||(n={})),function(e){e.CONFIG_GRID="CONFIG_GRID"}(s||(s={}));const r=(n,s,r,i,l,o)=>{switch(n){case t.PREVIOUS:return a("chevron-left",n,s,r,i,l);case t.NEXT:return a("chevron-right",n,s,r,i,l);case t.REFRESH:return a("sync",n,s,r,i,l);case t.UPDATE:return a("edit",n,s,r,i,l);case t.CLONE:return a("copy",n,s,r,i,l);case t.REMOVE:return a("delete",n,s,r,i,l);case t.INSERT:return c("plus",n,s,r,i,l);case t.CANCEL:return e("ez-button",{title:r(n),label:r(n),size:"small",enabled:l(n),onClick:()=>i(n)});case t.SAVE:return c("save",n,s,r,i,l);case t.GRID_MODE:return a("table",n,s,r,i,l);case t.FORM_MODE:return a("list",n,s,r,i,l);case t.CONFIG_GRID:return a("settings-inverted",n,s,r,i,l);case t.MORE_OPTIONS:return o&&o.length>0?e("ez-actions-button",{title:r(n),size:"small",class:s,enabled:l(n),onEzAction:e=>i(e.detail.value),actions:o}):void 0;case t.DIVIDER:return e("hr",{class:"ez-divider-vertical ez-divider--dark ez-margin-horizontal--medium"})}};function a(t,n,s,r,a,c){return e("ez-button",{key:t,title:r(n),mode:"icon",size:"small",class:s,iconName:t,enabled:c(n),onClick:()=>a(n)})}function c(t,n,s,r,a,c){return e("ez-button",{key:t,title:r(n),label:r(n),size:"small",class:s,enabled:c(n),onClick:()=>a(n)},e("ez-icon",{class:"ez-padding-right--small",slot:"leftIcon",iconName:t}))}export{n as A,t as T,s as V,r as b}
|