@sankhyalabs/sankhyablocks 5.1.4 → 5.2.1
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-47185d5d.js → SnkMessageBuilder-c6bd8bc7.js} +9 -2
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/sankhyablocks.cjs.js +1 -1
- package/dist/cjs/snk-application.cjs.entry.js +1 -1
- package/dist/cjs/snk-config-options.cjs.entry.js +2 -1
- package/dist/cjs/snk-configurator.cjs.entry.js +3 -2
- package/dist/cjs/snk-crud.cjs.entry.js +10 -3
- package/dist/cjs/snk-data-exporter.cjs.entry.js +10 -1
- package/dist/cjs/snk-data-unit-3b6ab2ad.js +436 -0
- package/dist/cjs/snk-data-unit.cjs.entry.js +6 -411
- package/dist/cjs/snk-detail-view.cjs.entry.js +7 -2
- package/dist/cjs/snk-field-config.cjs.entry.js +2 -4
- package/dist/cjs/snk-filter-bar.cjs.entry.js +3 -1
- package/dist/cjs/snk-filter-param-config.cjs.entry.js +2 -1
- package/dist/cjs/snk-form-config.cjs.entry.js +6 -5
- package/dist/cjs/snk-form.cjs.entry.js +2 -1
- package/dist/cjs/snk-grid.cjs.entry.js +3 -2
- package/dist/cjs/{snk-guides-viewer-6225bb73.js → snk-guides-viewer-21a2c43c.js} +13 -6
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +1 -1
- package/dist/cjs/snk-simple-crud.cjs.entry.js +2 -1
- package/dist/cjs/snk-tab-config.cjs.entry.js +2 -1
- package/dist/cjs/snk-taskbar.cjs.entry.js +3 -1
- package/dist/collection/components/snk-application/snk-application.js +2 -2
- package/dist/collection/components/snk-configurator/snk-configurator.js +23 -2
- package/dist/collection/components/snk-crud/snk-crud.js +30 -3
- package/dist/collection/components/snk-crud/subcomponents/snk-detail-view.js +27 -2
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +34 -7
- package/dist/collection/components/snk-data-exporter/snk-data-exporter.js +29 -1
- package/dist/collection/components/snk-data-unit/snk-data-unit.js +64 -3
- package/dist/collection/components/snk-filter-bar/snk-filter-bar.js +23 -1
- package/dist/collection/components/snk-form/snk-form.js +22 -1
- package/dist/collection/components/snk-form/subcomponents/snk-config-options/snk-config-options.js +22 -1
- package/dist/collection/components/snk-form/subcomponents/snk-field-config/snk-field-config.js +23 -5
- package/dist/collection/components/snk-form/subcomponents/snk-form-config/snk-form-config.js +26 -5
- package/dist/collection/components/snk-form/subcomponents/snk-tab-config/snk-tab-config.js +22 -1
- package/dist/collection/components/snk-grid/snk-grid.js +23 -2
- package/dist/collection/components/snk-personalized-filter/subcomponents/snk-filter-param-config/snk-filter-param-config.js +26 -1
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +22 -1
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +23 -1
- package/dist/collection/lib/message/SnkMessageBuilder.js +9 -2
- package/dist/components/SnkMessageBuilder.js +9 -2
- package/dist/components/snk-application2.js +1 -1
- package/dist/components/snk-config-options2.js +3 -1
- package/dist/components/snk-configurator2.js +4 -2
- package/dist/components/snk-crud.js +11 -3
- package/dist/components/snk-data-exporter2.js +10 -1
- package/dist/components/snk-data-unit2.js +25 -4
- package/dist/components/snk-detail-view2.js +22 -8
- package/dist/components/snk-field-config2.js +5 -6
- package/dist/components/snk-filter-bar2.js +4 -1
- package/dist/components/snk-filter-param-config.js +3 -1
- package/dist/components/snk-form-config2.js +7 -5
- package/dist/components/snk-form.js +3 -1
- package/dist/components/snk-grid2.js +4 -2
- package/dist/components/snk-simple-crud.js +3 -1
- package/dist/components/snk-tab-config2.js +3 -1
- package/dist/components/snk-taskbar2.js +4 -1
- package/dist/esm/{SnkMessageBuilder-ec0850af.js → SnkMessageBuilder-68bbf0ae.js} +9 -2
- package/dist/esm/loader.js +1 -1
- package/dist/esm/sankhyablocks.js +1 -1
- package/dist/esm/snk-application.entry.js +1 -1
- package/dist/esm/snk-config-options.entry.js +2 -1
- package/dist/esm/snk-configurator.entry.js +3 -2
- package/dist/esm/snk-crud.entry.js +10 -3
- package/dist/esm/snk-data-exporter.entry.js +10 -1
- package/dist/esm/snk-data-unit-a8093f95.js +434 -0
- package/dist/esm/snk-data-unit.entry.js +5 -414
- package/dist/esm/snk-detail-view.entry.js +7 -2
- package/dist/esm/snk-field-config.entry.js +3 -5
- package/dist/esm/snk-filter-bar.entry.js +3 -1
- package/dist/esm/snk-filter-param-config.entry.js +2 -1
- package/dist/esm/snk-form-config.entry.js +6 -5
- package/dist/esm/snk-form.entry.js +2 -1
- package/dist/esm/snk-grid.entry.js +3 -2
- package/dist/esm/{snk-guides-viewer-73b9eb29.js → snk-guides-viewer-c9e5aa60.js} +14 -7
- package/dist/esm/snk-guides-viewer.entry.js +1 -1
- package/dist/esm/snk-simple-crud.entry.js +2 -1
- package/dist/esm/snk-tab-config.entry.js +2 -1
- package/dist/esm/snk-taskbar.entry.js +3 -1
- package/dist/sankhyablocks/p-046b2563.entry.js +1 -0
- package/dist/sankhyablocks/p-0a1e7f75.entry.js +1 -0
- package/dist/sankhyablocks/{p-28c800b9.js → p-0d70c017.js} +1 -1
- package/dist/sankhyablocks/p-280b1321.entry.js +1 -0
- package/dist/sankhyablocks/p-32599159.entry.js +1 -0
- package/dist/sankhyablocks/{p-9ce550b7.entry.js → p-374af3cb.entry.js} +1 -1
- package/dist/sankhyablocks/p-39a49898.js +1 -0
- package/dist/sankhyablocks/p-5b84b0c5.entry.js +1 -0
- package/dist/sankhyablocks/p-601e6920.entry.js +1 -0
- package/dist/sankhyablocks/p-69af76d4.entry.js +1 -0
- package/dist/sankhyablocks/p-76f04efe.entry.js +1 -0
- package/dist/sankhyablocks/p-8293879e.entry.js +1 -0
- package/dist/sankhyablocks/p-93d8fe00.entry.js +1 -0
- package/dist/sankhyablocks/p-a12d74dc.entry.js +1 -0
- package/dist/sankhyablocks/p-a7468f4b.js +1 -0
- package/dist/sankhyablocks/p-a80c766c.entry.js +1 -0
- package/dist/sankhyablocks/p-b80cf644.entry.js +1 -0
- package/dist/sankhyablocks/p-d65809d5.entry.js +1 -0
- package/dist/sankhyablocks/{p-b9fe5ed3.entry.js → p-e999631f.entry.js} +2 -2
- package/dist/sankhyablocks/p-f29caa0a.entry.js +1 -0
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-application/snk-application.d.ts +1 -4
- package/dist/types/components/snk-configurator/snk-configurator.d.ts +5 -0
- package/dist/types/components/snk-crud/snk-crud.d.ts +6 -0
- package/dist/types/components/snk-crud/subcomponents/snk-detail-view.d.ts +2 -3
- package/dist/types/components/snk-crud/subcomponents/snk-guides-viewer.d.ts +6 -1
- package/dist/types/components/snk-data-exporter/snk-data-exporter.d.ts +5 -0
- package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +12 -1
- package/dist/types/components/snk-filter-bar/snk-filter-bar.d.ts +5 -0
- package/dist/types/components/snk-form/snk-form.d.ts +5 -0
- package/dist/types/components/snk-form/subcomponents/snk-config-options/snk-config-options.d.ts +5 -0
- package/dist/types/components/snk-form/subcomponents/snk-field-config/snk-field-config.d.ts +5 -2
- package/dist/types/components/snk-form/subcomponents/snk-form-config/snk-form-config.d.ts +5 -0
- package/dist/types/components/snk-form/subcomponents/snk-tab-config/snk-tab-config.d.ts +5 -0
- package/dist/types/components/snk-grid/snk-grid.d.ts +5 -0
- package/dist/types/components/snk-personalized-filter/subcomponents/snk-filter-param-config/snk-filter-param-config.d.ts +5 -0
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +5 -0
- package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +5 -0
- package/dist/types/components.d.ts +126 -12
- package/dist/types/lib/message/SnkMessageBuilder.d.ts +4 -2
- package/package.json +1 -1
- package/dist/sankhyablocks/p-0154ae58.entry.js +0 -1
- package/dist/sankhyablocks/p-10be1b2a.entry.js +0 -1
- package/dist/sankhyablocks/p-193b0fa5.entry.js +0 -1
- package/dist/sankhyablocks/p-31d4e5d4.entry.js +0 -1
- package/dist/sankhyablocks/p-68507ace.entry.js +0 -1
- package/dist/sankhyablocks/p-72277163.entry.js +0 -1
- package/dist/sankhyablocks/p-7d4bb27a.entry.js +0 -1
- package/dist/sankhyablocks/p-878a984f.entry.js +0 -1
- package/dist/sankhyablocks/p-94fef424.entry.js +0 -1
- package/dist/sankhyablocks/p-983fef8f.js +0 -1
- package/dist/sankhyablocks/p-af8cf505.entry.js +0 -1
- package/dist/sankhyablocks/p-c88c4f80.entry.js +0 -1
- package/dist/sankhyablocks/p-dd90bd52.entry.js +0 -1
- package/dist/sankhyablocks/p-eb7b2496.entry.js +0 -1
- package/dist/sankhyablocks/p-ecd3cad5.entry.js +0 -1
- package/dist/sankhyablocks/p-f9ca6d74.entry.js +0 -1
@@ -29,6 +29,7 @@ const SnkGuidesViewer = class {
|
|
29
29
|
this.masterFormConfig = undefined;
|
30
30
|
this.selectedGuide = undefined;
|
31
31
|
this.taskbarManager = undefined;
|
32
|
+
this.messagesBuilder = undefined;
|
32
33
|
this.presentationMode = undefined;
|
33
34
|
this._breadcrumbItems = [];
|
34
35
|
this._guides = undefined;
|
@@ -46,7 +47,7 @@ const SnkGuidesViewer = class {
|
|
46
47
|
}
|
47
48
|
}
|
48
49
|
observeMasterFormConfig() {
|
49
|
-
this.loadGuides(
|
50
|
+
this.loadGuides(this.noGuideSelected());
|
50
51
|
}
|
51
52
|
/**
|
52
53
|
* Abre o configurador do formulário
|
@@ -86,7 +87,7 @@ const SnkGuidesViewer = class {
|
|
86
87
|
* Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-crud.msg.ts"
|
87
88
|
*/
|
88
89
|
getMessage(key) {
|
89
|
-
return this.
|
90
|
+
return this.messagesBuilder.getMessage(key, this.dataUnit.getSelectedRecord());
|
90
91
|
}
|
91
92
|
loadGuides(changeSelection) {
|
92
93
|
if (!this.dataUnit) {
|
@@ -268,8 +269,11 @@ const SnkGuidesViewer = class {
|
|
268
269
|
}
|
269
270
|
}
|
270
271
|
}
|
272
|
+
noGuideSelected() {
|
273
|
+
var _a;
|
274
|
+
return this.selectedGuide === undefined || '__main' === ((_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.id);
|
275
|
+
}
|
271
276
|
componentWillLoad() {
|
272
|
-
this._application = core.ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
273
277
|
this._configManager = new SnkFormConfigManager.SnkFormConfigManager(this.configName, config => this.masterFormConfig = config);
|
274
278
|
this._configManager.loadConfig();
|
275
279
|
}
|
@@ -289,12 +293,12 @@ const SnkGuidesViewer = class {
|
|
289
293
|
}
|
290
294
|
buildTaskBar() {
|
291
295
|
var _a;
|
292
|
-
return index.h("div", { class: `ez-col ez-flex-item--align-center ez-col--sd-6 ez-col--tb-6 ${this.presentationMode != index$1.PresentationMode.SECONDARY ? 'ez-align--right' : 'ez-padding-bottom--medium'}` }, index.h("snk-taskbar", { key: "guideViewerTaskbar", "data-element-id": "guideViewer", configName: this.configName, buttons: this._taskbarProcessor.buttons, disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, actionsList: this.actionsList, presentationMode: this.presentationMode, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-taskbar-owner": "master", dataUnit: this.dataUnit }));
|
296
|
+
return index.h("div", { class: `ez-col ez-flex-item--align-center ez-col--sd-6 ez-col--tb-6 ${this.presentationMode != index$1.PresentationMode.SECONDARY ? 'ez-align--right' : 'ez-padding-bottom--medium'}` }, index.h("snk-taskbar", { key: "guideViewerTaskbar", "data-element-id": "guideViewer", configName: this.configName, buttons: this._taskbarProcessor.buttons, disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, actionsList: this.actionsList, messagesBuilder: this.messagesBuilder, presentationMode: this.presentationMode, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-taskbar-owner": "master", dataUnit: this.dataUnit }));
|
293
297
|
}
|
294
298
|
render() {
|
295
299
|
var _a, _b;
|
296
300
|
if (this._formEditorConfigManager != undefined) {
|
297
|
-
return (index.h("snk-form-config", { dataUnit: this._formEditorDataUnit, configManager: this._formEditorConfigManager, onConfigClose: () => this._formEditorConfigManager = null }));
|
301
|
+
return (index.h("snk-form-config", { dataUnit: this._formEditorDataUnit, messagesBuilder: this.messagesBuilder, configManager: this._formEditorConfigManager, onConfigClose: () => this._formEditorConfigManager = null }));
|
298
302
|
}
|
299
303
|
if (!this.dataUnit) {
|
300
304
|
return;
|
@@ -305,7 +309,10 @@ const SnkGuidesViewer = class {
|
|
305
309
|
this.loadTaskbarProcessor();
|
306
310
|
const showGuides = this._guides && (this._guides.length > 1);
|
307
311
|
return (index.h("section", { class: "snk-guides-viewer" }, index.h("div", { class: "ez-row snk-guides-viewer__header" }, index.h("div", { class: "ez-col ez-col--sd-6 ez-col--tb-6 ez-flex--align-items-center ez-flex-item--align-center ez-padding-left--large", key: "header" }, index.h("ez-button", { onClick: () => this.exitViewer(), title: this.getMessage("snkCrud.goBackTitle"), mode: "icon", iconName: "arrow_back", class: "ez-padding-right--medium", size: "small" }), index.h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto" }, index.h("h1", { class: "ez-title ez-title--primary ez-title--xlarge" }, this.getMessage("snkCrud.title")), ((_a = this._breadcrumbItems) === null || _a === void 0 ? void 0 : _a.length) > 1 &&
|
308
|
-
index.h("div", { class: "ez-margin-top--extra-small" }, index.h("ez-breadcrumb", Object.assign({ items: this._breadcrumbItems, onSelectedItem: (evt) => this.onBreadcrumbClickHandler(evt === null || evt === void 0 ? void 0 : evt.detail) }, { [core.ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${core.ElementIDUtils.getInternalIDInfo("breadcrumb")}` }))))), this.presentationMode != index$1.PresentationMode.SECONDARY && this.buildTaskBar()), index.h("div", { class:
|
312
|
+
index.h("div", { class: "ez-margin-top--extra-small" }, index.h("ez-breadcrumb", Object.assign({ items: this._breadcrumbItems, onSelectedItem: (evt) => this.onBreadcrumbClickHandler(evt === null || evt === void 0 ? void 0 : evt.detail) }, { [core.ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${core.ElementIDUtils.getInternalIDInfo("breadcrumb")}` }))))), this.presentationMode != index$1.PresentationMode.SECONDARY && this.buildTaskBar()), index.h("div", { class: "snk-guides-viewer__container" }, showGuides ?
|
313
|
+
index.h("ez-guide-navigator", { ref: (ref) => this._guideNavigator = ref, class: "snk-guides-viewer__guide-navigator", items: this._guides, selectedId: this.selectedGuide ? this.selectedGuide.id : undefined, onEzChange: evt => this.updateSelectedGuideHandler(evt.detail) })
|
314
|
+
:
|
315
|
+
index.h("div", null), index.h("div", { class: "snk-guides-viewer__detail-container" }, SnkGuidesViewer.buildFixedForms(this.masterFormConfig, this._masterFormMetadata, (_b = this.selectedGuide) === null || _b === void 0 ? void 0 : _b.id, this.dataUnit, this.recordsValidator), this.getContent())), index.h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this.getConfigViewMode(), onConfigSelected: (evt) => this.changeConfigViewMode(evt.detail), messagesBuilder: this.messagesBuilder, onOpenConfig: (evt) => this.openConfig(evt.detail) })));
|
309
316
|
}
|
310
317
|
static get watchers() { return {
|
311
318
|
"dataUnit": ["observeDataUnit"],
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
|
-
const snkGuidesViewer = require('./snk-guides-viewer-
|
5
|
+
const snkGuidesViewer = require('./snk-guides-viewer-21a2c43c.js');
|
6
6
|
require('./index-21bd01e1.js');
|
7
7
|
require('@sankhyalabs/core');
|
8
8
|
require('./SnkFormConfigManager-88559b73.js');
|
@@ -147,6 +147,7 @@ const SnkSimpleCrud = class {
|
|
147
147
|
this.dataUnit = undefined;
|
148
148
|
this.mode = constants.SIMPLE_CRUD_MODE.SERVER;
|
149
149
|
this.taskbarManager = undefined;
|
150
|
+
this.messagesBuilder = undefined;
|
150
151
|
}
|
151
152
|
resolveInMemoryBtns(taskbarButtons) {
|
152
153
|
const newTaskBarConfig = [...taskbarButtons];
|
@@ -262,7 +263,7 @@ const SnkSimpleCrud = class {
|
|
262
263
|
}
|
263
264
|
render() {
|
264
265
|
var _a;
|
265
|
-
return (index.h("snk-data-unit", { class: "simple-crud__container", dataUnit: this.dataUnit, onDataStateChange: evt => this.onDataStateChange(evt), onInsertionMode: () => this.goToView(constants.VIEW_MODE.FORM), onDataUnitReady: (evt) => this.dataUnitReady.emit(evt.detail) }, index.h("header", null, index.h("slot", { name: "snkSimpleCrudHeader" })), index.h("section", { class: "ez-flex ez-box ez-box--shadow" }, index.h("snk-taskbar", { class: "simple-crud__taskbar ez-box ez-box--shadow ez-padding--medium", dataUnit: this.dataUnit, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-element-id": "grid_left", buttons: this._taskbarProcessor.buttons, disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, slot: "leftButtons", presentationMode: index$1.PresentationMode.SECONDARY }), index.h("ez-view-stack", { class: "ez-flex ez-flex--column", ref: (ref) => this._viewStack = ref, "data-element-id": "simple-crud" }, index.h("stack-item", null, index.h("ez-grid", { dataUnit: this.dataUnit, onEzDoubleClick: () => this.goToView(constants.VIEW_MODE.FORM), "no-header": true }, index.h("div", { slot: "footer" }, index.h("slot", { name: "snkSimpleCrudFooter" })))), index.h("stack-item", null, index.h("ez-form", { dataUnit: this.dataUnit, config: this._config }))))));
|
266
|
+
return (index.h("snk-data-unit", { class: "simple-crud__container", dataUnit: this.dataUnit, onDataStateChange: evt => this.onDataStateChange(evt), onInsertionMode: () => this.goToView(constants.VIEW_MODE.FORM), onDataUnitReady: (evt) => this.dataUnitReady.emit(evt.detail), onMessagesBuilderUpdated: evt => this.messagesBuilder = evt.detail }, index.h("header", null, index.h("slot", { name: "snkSimpleCrudHeader" })), index.h("section", { class: "ez-flex ez-box ez-box--shadow" }, index.h("snk-taskbar", { class: "simple-crud__taskbar ez-box ez-box--shadow ez-padding--medium", dataUnit: this.dataUnit, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-element-id": "grid_left", messagesBuilder: this.messagesBuilder, buttons: this._taskbarProcessor.buttons, disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, slot: "leftButtons", presentationMode: index$1.PresentationMode.SECONDARY }), index.h("ez-view-stack", { class: "ez-flex ez-flex--column", ref: (ref) => this._viewStack = ref, "data-element-id": "simple-crud" }, index.h("stack-item", null, index.h("ez-grid", { dataUnit: this.dataUnit, onEzDoubleClick: () => this.goToView(constants.VIEW_MODE.FORM), "no-header": true }, index.h("div", { slot: "footer" }, index.h("slot", { name: "snkSimpleCrudFooter" })))), index.h("stack-item", null, index.h("ez-form", { dataUnit: this.dataUnit, config: this._config }))))));
|
266
267
|
}
|
267
268
|
get _element() { return index.getElement(this); }
|
268
269
|
static get watchers() { return {
|
@@ -28,6 +28,7 @@ const SnkTabConfig = class {
|
|
28
28
|
this.selectedIndex = undefined;
|
29
29
|
this.selectedTab = undefined;
|
30
30
|
this.tabs = undefined;
|
31
|
+
this.messagesBuilder = undefined;
|
31
32
|
}
|
32
33
|
/**
|
33
34
|
* Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
|
@@ -36,7 +37,7 @@ const SnkTabConfig = class {
|
|
36
37
|
* Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-form.msg.ts"
|
37
38
|
*/
|
38
39
|
getMessage(key, params) {
|
39
|
-
return this.
|
40
|
+
return this.messagesBuilder.getMessage(key, params);
|
40
41
|
}
|
41
42
|
controlSortableTab() {
|
42
43
|
if (this._sortableTab) {
|
@@ -39,6 +39,7 @@ const SnkTaskbar = class {
|
|
39
39
|
this.disabledButtons = undefined;
|
40
40
|
this.dataUnit = undefined;
|
41
41
|
this.presentationMode = index$1.PresentationMode.PRIMARY;
|
42
|
+
this.messagesBuilder = undefined;
|
42
43
|
}
|
43
44
|
observeButtons() {
|
44
45
|
this._definitions = undefined;
|
@@ -76,6 +77,7 @@ const SnkTaskbar = class {
|
|
76
77
|
* Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-taskbar.msg.ts"
|
77
78
|
*/
|
78
79
|
getTitle(element) {
|
80
|
+
var _a;
|
79
81
|
let key;
|
80
82
|
if (this.isAllowed(element)) {
|
81
83
|
key = this._titleKeyByElement[element];
|
@@ -83,7 +85,7 @@ const SnkTaskbar = class {
|
|
83
85
|
else {
|
84
86
|
key = "snkTaskbar.forbidden";
|
85
87
|
}
|
86
|
-
return key ? this.
|
88
|
+
return key ? (_a = this.messagesBuilder) === null || _a === void 0 ? void 0 : _a.getMessage(key, {}) : "";
|
87
89
|
}
|
88
90
|
elementClick(elem) {
|
89
91
|
if (this.dataUnit) {
|
@@ -6,7 +6,6 @@ import { SnkErrorHandler } from "./errorhandler/snk-error-handler";
|
|
6
6
|
import { PesquisaFetcher } from "../../lib/http/data-fetcher/fetchers/pesquisa-fetcher";
|
7
7
|
import { agGridLicense } from '../../lib/licenses/sankhyalicense.module';
|
8
8
|
import { TotalsFetcher } from "../../lib/http/data-fetcher/fetchers/totals-fetcher";
|
9
|
-
import { SnkMessageBuilder } from "../../lib/message/SnkMessageBuilder";
|
10
9
|
import { ConfigStorage } from "../../lib/configs/ConfigStorage";
|
11
10
|
import DataUnitFetcher from "../../lib/http/data-fetcher/fetchers/dataunit-fetcher";
|
12
11
|
import UrlUtils from "../../lib/utils/urlutils";
|
@@ -16,6 +15,7 @@ import ParametersFetcher from "../../lib/http/data-fetcher/fetchers/parameters-f
|
|
16
15
|
import MGEAuthorization from '../../lib/auth/mgeauthorization.module';
|
17
16
|
import GridConfigFetcher from "../../lib/http/data-fetcher/fetchers/grid-config-fetcher";
|
18
17
|
import AuthFetcher, { AutorizationType } from "../../lib/http/data-fetcher/fetchers/auth-fetcher";
|
18
|
+
import { SnkMessageBuilder } from "../../lib/message/SnkMessageBuilder";
|
19
19
|
/**
|
20
20
|
* É possível customizar as mensagens dos blocos de construção através de um pequeno modulo na estrutura da aplicação:
|
21
21
|
* - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
|
@@ -627,7 +627,7 @@ export class SnkApplication {
|
|
627
627
|
"optional": false,
|
628
628
|
"docs": {
|
629
629
|
"tags": [],
|
630
|
-
"text": "
|
630
|
+
"text": ""
|
631
631
|
}
|
632
632
|
},
|
633
633
|
"configName": {
|
@@ -8,6 +8,7 @@ export class SnkConfigurator {
|
|
8
8
|
this._permissions = undefined;
|
9
9
|
this.configName = undefined;
|
10
10
|
this.viewMode = VIEW_MODE.GRID;
|
11
|
+
this.messagesBuilder = undefined;
|
11
12
|
}
|
12
13
|
/**
|
13
14
|
* Exibe a janela de configuração.
|
@@ -63,8 +64,8 @@ export class SnkConfigurator {
|
|
63
64
|
* Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-configurator.msg.ts"
|
64
65
|
*/
|
65
66
|
getMessage(key) {
|
66
|
-
var _a
|
67
|
-
return (
|
67
|
+
var _a;
|
68
|
+
return (_a = this.messagesBuilder) === null || _a === void 0 ? void 0 : _a.getMessage(key, {});
|
68
69
|
}
|
69
70
|
componentWillLoad() {
|
70
71
|
this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
@@ -133,6 +134,26 @@ export class SnkConfigurator {
|
|
133
134
|
"attribute": "view-mode",
|
134
135
|
"reflect": false,
|
135
136
|
"defaultValue": "VIEW_MODE.GRID"
|
137
|
+
},
|
138
|
+
"messagesBuilder": {
|
139
|
+
"type": "unknown",
|
140
|
+
"mutable": true,
|
141
|
+
"complexType": {
|
142
|
+
"original": "SnkMessageBuilder",
|
143
|
+
"resolved": "SnkMessageBuilder",
|
144
|
+
"references": {
|
145
|
+
"SnkMessageBuilder": {
|
146
|
+
"location": "import",
|
147
|
+
"path": "../../lib/message/SnkMessageBuilder"
|
148
|
+
}
|
149
|
+
}
|
150
|
+
},
|
151
|
+
"required": false,
|
152
|
+
"optional": false,
|
153
|
+
"docs": {
|
154
|
+
"tags": [],
|
155
|
+
"text": "Respons\u00E1vel por flexibilizar e padronizar o uso de mensagens nos blocos de constru\u00E7\u00E3o."
|
156
|
+
}
|
136
157
|
}
|
137
158
|
};
|
138
159
|
}
|
@@ -20,6 +20,7 @@ export class SnkCrud {
|
|
20
20
|
this.statusResolver = undefined;
|
21
21
|
this.multipleSelection = true;
|
22
22
|
this.presentationMode = PresentationMode.PRIMARY;
|
23
|
+
this.messagesBuilder = undefined;
|
23
24
|
}
|
24
25
|
/**
|
25
26
|
* Usado para alternar a visão entre GRID e FORM externamente.
|
@@ -79,11 +80,11 @@ export class SnkCrud {
|
|
79
80
|
if (!this._dataUnit) {
|
80
81
|
this._snkDataUnit.addEventListener("dataUnitReady", (evt) => {
|
81
82
|
this._dataUnit = evt.detail;
|
82
|
-
this.
|
83
|
+
this.initDataUnit();
|
83
84
|
});
|
84
85
|
}
|
85
86
|
else {
|
86
|
-
this.
|
87
|
+
this.initDataUnit();
|
87
88
|
}
|
88
89
|
this._snkDataUnit.addEventListener("dataStateChange", (evt) => {
|
89
90
|
this._dataState = evt.detail;
|
@@ -97,8 +98,14 @@ export class SnkCrud {
|
|
97
98
|
this.configName = application.configName;
|
98
99
|
}
|
99
100
|
}
|
101
|
+
initDataUnit() {
|
102
|
+
this.addDataElementID();
|
103
|
+
if (!this.messagesBuilder) {
|
104
|
+
this.messagesBuilder = this._snkDataUnit.messagesBuilder;
|
105
|
+
}
|
106
|
+
}
|
100
107
|
render() {
|
101
|
-
return (h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode }, h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form" }, h("slot", { name: "SnkFormTaskBar" }))), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail) })));
|
108
|
+
return (h("ez-view-stack", { ref: (ref) => this._viewStack = ref, "data-element-id": "crud" }, h("stack-item", null, h("snk-grid", { ref: (ref) => this._snkGrid = ref, "data-element-id": "crud_grid", configName: this.configName, onGridDoubleClick: () => this.gridToForm(true), taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail), messagesBuilder: this.messagesBuilder, actionsList: this.actionsList, statusResolver: this.statusResolver, multipleSelection: this.multipleSelection, presentationMode: this.presentationMode }, h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-guides-viewer", { ref: ref => this._guidesViewer = ref, entityPath: this._snkDataUnit.entityName, messagesBuilder: this.messagesBuilder, onExit: () => this.setViewMode(VIEW_MODE.GRID), dataState: this._dataState, dataUnit: this._dataUnit, actionsList: this.actionsList, taskbarManager: this.taskbarManager, configName: this.configName, onActionClick: evt => this.executeAction(evt.detail), presentationMode: this.presentationMode, "data-element-id": "crud_form" }, h("slot", { name: "SnkFormTaskBar" }))), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._currentViewMode, messagesBuilder: this.messagesBuilder, onConfigSelected: (evt) => this.setViewMode(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail) })));
|
102
109
|
}
|
103
110
|
static get is() { return "snk-crud"; }
|
104
111
|
static get encapsulation() { return "scoped"; }
|
@@ -254,6 +261,26 @@ export class SnkCrud {
|
|
254
261
|
"attribute": "presentation-mode",
|
255
262
|
"reflect": false,
|
256
263
|
"defaultValue": "PresentationMode.PRIMARY"
|
264
|
+
},
|
265
|
+
"messagesBuilder": {
|
266
|
+
"type": "unknown",
|
267
|
+
"mutable": true,
|
268
|
+
"complexType": {
|
269
|
+
"original": "SnkMessageBuilder",
|
270
|
+
"resolved": "SnkMessageBuilder",
|
271
|
+
"references": {
|
272
|
+
"SnkMessageBuilder": {
|
273
|
+
"location": "import",
|
274
|
+
"path": "../../lib/message/SnkMessageBuilder"
|
275
|
+
}
|
276
|
+
}
|
277
|
+
},
|
278
|
+
"required": false,
|
279
|
+
"optional": false,
|
280
|
+
"docs": {
|
281
|
+
"tags": [],
|
282
|
+
"text": "Respons\u00E1vel por flexibilizar e padronizar o uso de mensagens nos blocos de constru\u00E7\u00E3o."
|
283
|
+
}
|
257
284
|
}
|
258
285
|
};
|
259
286
|
}
|
@@ -5,6 +5,7 @@ import { PresentationMode } from '../../../lib';
|
|
5
5
|
import { TaskbarElement } from '../../snk-taskbar/elements/taskbar-elements';
|
6
6
|
import { VIEW_MODE } from '../../../lib/utils/constants';
|
7
7
|
import { SnkGuidesViewer } from './snk-guides-viewer';
|
8
|
+
import { SnkMessageBuilder } from '../../../lib/message/SnkMessageBuilder';
|
8
9
|
import { GuideBuilder } from './GuideBuilder';
|
9
10
|
export class SnkDetailView {
|
10
11
|
constructor() {
|
@@ -17,6 +18,7 @@ export class SnkDetailView {
|
|
17
18
|
this.dataUnit = undefined;
|
18
19
|
this.selectedForm = undefined;
|
19
20
|
this.dataState = undefined;
|
21
|
+
this.messagesBuilder = undefined;
|
20
22
|
this.branchGuide = undefined;
|
21
23
|
}
|
22
24
|
observerDataState(newValue, oldValue) {
|
@@ -157,11 +159,14 @@ export class SnkDetailView {
|
|
157
159
|
this._configName = `dynaform.${this.entityName}`;
|
158
160
|
this.formConfigManager = new SnkFormConfigManager(this._configName, () => this.loadMetadata());
|
159
161
|
this.formConfigManager.loadConfig();
|
162
|
+
if (this.messagesBuilder == undefined) {
|
163
|
+
this.messagesBuilder = new SnkMessageBuilder(this.entityName);
|
164
|
+
}
|
160
165
|
}
|
161
166
|
render() {
|
162
167
|
this.updateLabel();
|
163
168
|
//const cardConfig: IFormCardConfig = this._cardsState?.get(this.selectedForm);
|
164
|
-
return (h(Host, null, h("snk-data-unit", { dataUnitName: `${this.dataUnitName}`, onDataUnitReady: evt => this.dataUnitReadyHandler(evt), entityName: this.entityName, onDataStateChange: evt => this.dataState = evt.detail }, h("ez-view-stack", { ref: ref => this.updateViewStack(ref) }, h("stack-item", null, h("div", { class: "ez-box ez-box--shadow grid-container" }, h("div", { class: "ez-flex ez-size-width--full ez-padding--large detail-header" }, h("div", { class: "ez-flex ez-text ez-text--bold ez-flex--justify-start ez-flex--align-items-center" }, this._levelPath ? h("span", { class: "level-path" }, this._levelPath + " /") : undefined, this.label)), h("snk-grid", { class: "ez-size-width--full ez-size-height--full", ref: (ref) => this._snkGrid = ref, configName: this._configName, onGridDoubleClick: () => this.emitSwitchEvent(VIEW_MODE.FORM), onActionClick: evt => this.executeActionHandler(evt), presentationMode: PresentationMode.SECONDARY, isDetail: true }))), h("stack-item", null, h("snk-form-view", { ref: (ref) => this._snkFormView = ref, canExpand: false, canFix: false, name: this.selectedForm, formMetadata: this._formMetadata, dataUnit: this.dataUnit, fields: this.getFormFields(), label: this.label, levelPath: this._levelPath }, h("snk-taskbar", { key: "guideViewerTaskbar", class: "form-taskbar", "data-element-id": "guideViewer", configName: this._configName, disabledButtons: this._disabledButtons, buttons: "INSERT,PREVIOUS,NEXT,DIVIDER,CLONE,REMOVE,MORE_OPTIONS,DIVIDER,GRID_MODE,CONFIGURATOR", primaryButton: "INSERT", presentationMode: PresentationMode.SECONDARY, onActionClick: evt => this.executeActionHandler(evt), dataUnit: this.dataUnit })))))));
|
169
|
+
return (h(Host, null, h("snk-data-unit", { dataUnitName: `${this.dataUnitName}`, onDataUnitReady: evt => this.dataUnitReadyHandler(evt), entityName: this.entityName, onDataStateChange: evt => this.dataState = evt.detail, messagesBuilder: this.messagesBuilder }, h("ez-view-stack", { ref: ref => this.updateViewStack(ref) }, h("stack-item", null, h("div", { class: "ez-box ez-box--shadow grid-container" }, h("div", { class: "ez-flex ez-size-width--full ez-padding--large detail-header" }, h("div", { class: "ez-flex ez-text ez-text--bold ez-flex--justify-start ez-flex--align-items-center" }, this._levelPath ? h("span", { class: "level-path" }, this._levelPath + " /") : undefined, this.label)), h("snk-grid", { class: "ez-size-width--full ez-size-height--full", ref: (ref) => this._snkGrid = ref, configName: this._configName, messagesBuilder: this.messagesBuilder, onGridDoubleClick: () => this.emitSwitchEvent(VIEW_MODE.FORM), onActionClick: evt => this.executeActionHandler(evt), presentationMode: PresentationMode.SECONDARY, isDetail: true }))), h("stack-item", null, h("snk-form-view", { ref: (ref) => this._snkFormView = ref, canExpand: false, canFix: false, name: this.selectedForm, formMetadata: this._formMetadata, dataUnit: this.dataUnit, fields: this.getFormFields(), label: this.label, levelPath: this._levelPath }, h("snk-taskbar", { key: "guideViewerTaskbar", class: "form-taskbar", "data-element-id": "guideViewer", configName: this._configName, messagesBuilder: this.messagesBuilder, disabledButtons: this._disabledButtons, buttons: "INSERT,PREVIOUS,NEXT,DIVIDER,CLONE,REMOVE,MORE_OPTIONS,DIVIDER,GRID_MODE,CONFIGURATOR", primaryButton: "INSERT", presentationMode: PresentationMode.SECONDARY, onActionClick: evt => this.executeActionHandler(evt), dataUnit: this.dataUnit })))))));
|
165
170
|
}
|
166
171
|
static get is() { return "snk-detail-view"; }
|
167
172
|
static get encapsulation() { return "scoped"; }
|
@@ -328,6 +333,26 @@ export class SnkDetailView {
|
|
328
333
|
"text": "Representa o estado do dataUnit detail."
|
329
334
|
}
|
330
335
|
},
|
336
|
+
"messagesBuilder": {
|
337
|
+
"type": "unknown",
|
338
|
+
"mutable": true,
|
339
|
+
"complexType": {
|
340
|
+
"original": "SnkMessageBuilder",
|
341
|
+
"resolved": "SnkMessageBuilder",
|
342
|
+
"references": {
|
343
|
+
"SnkMessageBuilder": {
|
344
|
+
"location": "import",
|
345
|
+
"path": "../../../lib/message/SnkMessageBuilder"
|
346
|
+
}
|
347
|
+
}
|
348
|
+
},
|
349
|
+
"required": false,
|
350
|
+
"optional": false,
|
351
|
+
"docs": {
|
352
|
+
"tags": [],
|
353
|
+
"text": ""
|
354
|
+
}
|
355
|
+
},
|
331
356
|
"branchGuide": {
|
332
357
|
"type": "unknown",
|
333
358
|
"mutable": false,
|
@@ -345,7 +370,7 @@ export class SnkDetailView {
|
|
345
370
|
"optional": false,
|
346
371
|
"docs": {
|
347
372
|
"tags": [],
|
348
|
-
"text": "
|
373
|
+
"text": ""
|
349
374
|
}
|
350
375
|
}
|
351
376
|
};
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import {
|
1
|
+
import { ElementIDUtils } from "@sankhyalabs/core";
|
2
2
|
import { Fragment, h } from "@stencil/core";
|
3
3
|
import { SnkFormConfigManager } from "../../snk-form/SnkFormConfigManager";
|
4
4
|
import { FormMetadata, buildFormMetadata } from "@sankhyalabs/ezui/dist/collection/utils/form";
|
@@ -19,6 +19,7 @@ export class SnkGuidesViewer {
|
|
19
19
|
this.masterFormConfig = undefined;
|
20
20
|
this.selectedGuide = undefined;
|
21
21
|
this.taskbarManager = undefined;
|
22
|
+
this.messagesBuilder = undefined;
|
22
23
|
this.presentationMode = undefined;
|
23
24
|
this._breadcrumbItems = [];
|
24
25
|
this._guides = undefined;
|
@@ -36,7 +37,7 @@ export class SnkGuidesViewer {
|
|
36
37
|
}
|
37
38
|
}
|
38
39
|
observeMasterFormConfig() {
|
39
|
-
this.loadGuides(
|
40
|
+
this.loadGuides(this.noGuideSelected());
|
40
41
|
}
|
41
42
|
/**
|
42
43
|
* Abre o configurador do formulário
|
@@ -76,7 +77,7 @@ export class SnkGuidesViewer {
|
|
76
77
|
* Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-crud.msg.ts"
|
77
78
|
*/
|
78
79
|
getMessage(key) {
|
79
|
-
return this.
|
80
|
+
return this.messagesBuilder.getMessage(key, this.dataUnit.getSelectedRecord());
|
80
81
|
}
|
81
82
|
loadGuides(changeSelection) {
|
82
83
|
if (!this.dataUnit) {
|
@@ -258,8 +259,11 @@ export class SnkGuidesViewer {
|
|
258
259
|
}
|
259
260
|
}
|
260
261
|
}
|
262
|
+
noGuideSelected() {
|
263
|
+
var _a;
|
264
|
+
return this.selectedGuide === undefined || '__main' === ((_a = this.selectedGuide) === null || _a === void 0 ? void 0 : _a.id);
|
265
|
+
}
|
261
266
|
componentWillLoad() {
|
262
|
-
this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
263
267
|
this._configManager = new SnkFormConfigManager(this.configName, config => this.masterFormConfig = config);
|
264
268
|
this._configManager.loadConfig();
|
265
269
|
}
|
@@ -279,12 +283,12 @@ export class SnkGuidesViewer {
|
|
279
283
|
}
|
280
284
|
buildTaskBar() {
|
281
285
|
var _a;
|
282
|
-
return h("div", { class: `ez-col ez-flex-item--align-center ez-col--sd-6 ez-col--tb-6 ${this.presentationMode != PresentationMode.SECONDARY ? 'ez-align--right' : 'ez-padding-bottom--medium'}` }, h("snk-taskbar", { key: "guideViewerTaskbar", "data-element-id": "guideViewer", configName: this.configName, buttons: this._taskbarProcessor.buttons, disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, actionsList: this.actionsList, presentationMode: this.presentationMode, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-taskbar-owner": "master", dataUnit: this.dataUnit }));
|
286
|
+
return h("div", { class: `ez-col ez-flex-item--align-center ez-col--sd-6 ez-col--tb-6 ${this.presentationMode != PresentationMode.SECONDARY ? 'ez-align--right' : 'ez-padding-bottom--medium'}` }, h("snk-taskbar", { key: "guideViewerTaskbar", "data-element-id": "guideViewer", configName: this.configName, buttons: this._taskbarProcessor.buttons, disabledButtons: this._taskbarProcessor.disabledButtons, customButtons: this._taskbarProcessor.customButtons, actionsList: this.actionsList, messagesBuilder: this.messagesBuilder, presentationMode: this.presentationMode, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? "SAVE" : "INSERT", "data-taskbar-owner": "master", dataUnit: this.dataUnit }));
|
283
287
|
}
|
284
288
|
render() {
|
285
289
|
var _a, _b;
|
286
290
|
if (this._formEditorConfigManager != undefined) {
|
287
|
-
return (h("snk-form-config", { dataUnit: this._formEditorDataUnit, configManager: this._formEditorConfigManager, onConfigClose: () => this._formEditorConfigManager = null }));
|
291
|
+
return (h("snk-form-config", { dataUnit: this._formEditorDataUnit, messagesBuilder: this.messagesBuilder, configManager: this._formEditorConfigManager, onConfigClose: () => this._formEditorConfigManager = null }));
|
288
292
|
}
|
289
293
|
if (!this.dataUnit) {
|
290
294
|
return;
|
@@ -295,7 +299,10 @@ export class SnkGuidesViewer {
|
|
295
299
|
this.loadTaskbarProcessor();
|
296
300
|
const showGuides = this._guides && (this._guides.length > 1);
|
297
301
|
return (h("section", { class: "snk-guides-viewer" }, h("div", { class: "ez-row snk-guides-viewer__header" }, h("div", { class: "ez-col ez-col--sd-6 ez-col--tb-6 ez-flex--align-items-center ez-flex-item--align-center ez-padding-left--large", key: "header" }, h("ez-button", { onClick: () => this.exitViewer(), title: this.getMessage("snkCrud.goBackTitle"), mode: "icon", iconName: "arrow_back", class: "ez-padding-right--medium", size: "small" }), h("div", { class: "ez-flex ez-flex--column ez-flex-item--auto" }, h("h1", { class: "ez-title ez-title--primary ez-title--xlarge" }, this.getMessage("snkCrud.title")), ((_a = this._breadcrumbItems) === null || _a === void 0 ? void 0 : _a.length) > 1 &&
|
298
|
-
h("div", { class: "ez-margin-top--extra-small" }, h("ez-breadcrumb", Object.assign({ items: this._breadcrumbItems, onSelectedItem: (evt) => this.onBreadcrumbClickHandler(evt === null || evt === void 0 ? void 0 : evt.detail) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("breadcrumb")}` }))))), this.presentationMode != PresentationMode.SECONDARY && this.buildTaskBar()), h("div", { class:
|
302
|
+
h("div", { class: "ez-margin-top--extra-small" }, h("ez-breadcrumb", Object.assign({ items: this._breadcrumbItems, onSelectedItem: (evt) => this.onBreadcrumbClickHandler(evt === null || evt === void 0 ? void 0 : evt.detail) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("breadcrumb")}` }))))), this.presentationMode != PresentationMode.SECONDARY && this.buildTaskBar()), h("div", { class: "snk-guides-viewer__container" }, showGuides ?
|
303
|
+
h("ez-guide-navigator", { ref: (ref) => this._guideNavigator = ref, class: "snk-guides-viewer__guide-navigator", items: this._guides, selectedId: this.selectedGuide ? this.selectedGuide.id : undefined, onEzChange: evt => this.updateSelectedGuideHandler(evt.detail) })
|
304
|
+
:
|
305
|
+
h("div", null), h("div", { class: "snk-guides-viewer__detail-container" }, SnkGuidesViewer.buildFixedForms(this.masterFormConfig, this._masterFormMetadata, (_b = this.selectedGuide) === null || _b === void 0 ? void 0 : _b.id, this.dataUnit, this.recordsValidator), this.getContent())), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this.getConfigViewMode(), onConfigSelected: (evt) => this.changeConfigViewMode(evt.detail), messagesBuilder: this.messagesBuilder, onOpenConfig: (evt) => this.openConfig(evt.detail) })));
|
299
306
|
}
|
300
307
|
static get is() { return "snk-guides-viewer"; }
|
301
308
|
static get encapsulation() { return "scoped"; }
|
@@ -512,6 +519,26 @@ export class SnkGuidesViewer {
|
|
512
519
|
"text": "Gerenciador das barras de tarefas. \u00C9 poss\u00EDvel determinar bot\u00F5es espec\u00EDficos\nou mesmo gerenciar o estado dos bot\u00F5es."
|
513
520
|
}
|
514
521
|
},
|
522
|
+
"messagesBuilder": {
|
523
|
+
"type": "unknown",
|
524
|
+
"mutable": true,
|
525
|
+
"complexType": {
|
526
|
+
"original": "SnkMessageBuilder",
|
527
|
+
"resolved": "SnkMessageBuilder",
|
528
|
+
"references": {
|
529
|
+
"SnkMessageBuilder": {
|
530
|
+
"location": "import",
|
531
|
+
"path": "../../../lib/message/SnkMessageBuilder"
|
532
|
+
}
|
533
|
+
}
|
534
|
+
},
|
535
|
+
"required": false,
|
536
|
+
"optional": false,
|
537
|
+
"docs": {
|
538
|
+
"tags": [],
|
539
|
+
"text": "Respons\u00E1vel por flexibilizar e padronizar o uso de mensagens nos blocos de constru\u00E7\u00E3o."
|
540
|
+
}
|
541
|
+
},
|
515
542
|
"presentationMode": {
|
516
543
|
"type": "string",
|
517
544
|
"mutable": false,
|
@@ -7,6 +7,7 @@ import { REPORT_LAUNCHER_RESOURCE_ID } from '../../lib/utils/constants';
|
|
7
7
|
import fetchDataExporter from "../../lib/http/data-fetcher/fetchers/fetchDataExporter";
|
8
8
|
import fileViewer from "../../lib/utils/fileViewer";
|
9
9
|
import getPersonalizedReports from '../../lib/http/data-fetcher/fetchers/fetchDataExporter/personalized-reports-fetcher';
|
10
|
+
import { SnkDataUnit } from '../snk-data-unit/snk-data-unit';
|
10
11
|
const LIMIT_PER_EXPORT = 5000;
|
11
12
|
export class SnkDataExporter {
|
12
13
|
constructor() {
|
@@ -24,6 +25,7 @@ export class SnkDataExporter {
|
|
24
25
|
DataExporterOption.EXPORT_PAGE_TO_XLS
|
25
26
|
];
|
26
27
|
this.provider = null;
|
28
|
+
this.messagesBuilder = undefined;
|
27
29
|
}
|
28
30
|
async exportByEmail() {
|
29
31
|
const selectedRows = this._selectedNumber;
|
@@ -53,7 +55,13 @@ export class SnkDataExporter {
|
|
53
55
|
* Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-data-exporter.msg.ts"
|
54
56
|
*/
|
55
57
|
getMessage(key, params) {
|
56
|
-
|
58
|
+
if (this.messagesBuilder == undefined) {
|
59
|
+
const dataUnit = SnkDataUnit.getNearestInstance(this._element);
|
60
|
+
if (dataUnit) {
|
61
|
+
this.messagesBuilder = dataUnit.messagesBuilder;
|
62
|
+
}
|
63
|
+
}
|
64
|
+
return this.messagesBuilder.getMessage(key, params);
|
57
65
|
}
|
58
66
|
positionDropdown() {
|
59
67
|
var _a;
|
@@ -324,6 +332,26 @@ export class SnkDataExporter {
|
|
324
332
|
"text": "Provedor das informa\u00E7\u00F5es para exporta\u00E7\u00E3o dos dados."
|
325
333
|
},
|
326
334
|
"defaultValue": "null"
|
335
|
+
},
|
336
|
+
"messagesBuilder": {
|
337
|
+
"type": "unknown",
|
338
|
+
"mutable": true,
|
339
|
+
"complexType": {
|
340
|
+
"original": "SnkMessageBuilder",
|
341
|
+
"resolved": "SnkMessageBuilder",
|
342
|
+
"references": {
|
343
|
+
"SnkMessageBuilder": {
|
344
|
+
"location": "import",
|
345
|
+
"path": "../../lib/message/SnkMessageBuilder"
|
346
|
+
}
|
347
|
+
}
|
348
|
+
},
|
349
|
+
"required": false,
|
350
|
+
"optional": false,
|
351
|
+
"docs": {
|
352
|
+
"tags": [],
|
353
|
+
"text": "Respons\u00E1vel por flexibilizar e padronizar o uso de mensagens nos blocos de constru\u00E7\u00E3o."
|
354
|
+
}
|
327
355
|
}
|
328
356
|
};
|
329
357
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { Host, h } from '@stencil/core';
|
2
2
|
import { Action, ApplicationContext, ObjectUtils, DataType, JSUtils } from '@sankhyalabs/core';
|
3
3
|
import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
|
4
|
-
import { OperationMap } from '../../lib/message/SnkMessageBuilder';
|
4
|
+
import { OperationMap, SnkMessageBuilder } from '../../lib/message/SnkMessageBuilder';
|
5
5
|
export class SnkDataUnit {
|
6
6
|
constructor() {
|
7
7
|
this._onDataUnitResolve = [];
|
@@ -44,9 +44,10 @@ export class SnkDataUnit {
|
|
44
44
|
}
|
45
45
|
}
|
46
46
|
}
|
47
|
-
this.
|
47
|
+
this.messagesBuilder.currentOperation = this.getMessageOperation();
|
48
48
|
};
|
49
49
|
this.dataState = undefined;
|
50
|
+
this.messagesBuilder = undefined;
|
50
51
|
this.dataUnitName = undefined;
|
51
52
|
this.entityName = undefined;
|
52
53
|
this.pageSize = 150;
|
@@ -85,6 +86,11 @@ export class SnkDataUnit {
|
|
85
86
|
this.handlerLinkFields();
|
86
87
|
this.dataUnitReady.emit(this.dataUnit);
|
87
88
|
}
|
89
|
+
observeMessagesBuilder(newValue) {
|
90
|
+
if (newValue) {
|
91
|
+
this.messagesBuilderUpdated.emit(newValue);
|
92
|
+
}
|
93
|
+
}
|
88
94
|
/**
|
89
95
|
* Obtém o dataUnit.
|
90
96
|
*/
|
@@ -280,7 +286,7 @@ export class SnkDataUnit {
|
|
280
286
|
if (!params) {
|
281
287
|
params = this.getMessageParams();
|
282
288
|
}
|
283
|
-
return this.
|
289
|
+
return this.messagesBuilder.getMessage(key, params);
|
284
290
|
}
|
285
291
|
getMessageParams() {
|
286
292
|
//FIXME: Devido ao recurso de multiseleção do dataunit, precisaremos criar um mecanismo para
|
@@ -352,6 +358,15 @@ export class SnkDataUnit {
|
|
352
358
|
});
|
353
359
|
this.dataUnit.metadata = metadata;
|
354
360
|
}
|
361
|
+
static getNearestInstance(element) {
|
362
|
+
let parent = element.parentElement;
|
363
|
+
while (parent) {
|
364
|
+
if (parent.tagName.toUpperCase() === "SNK-DATA-UNIT") {
|
365
|
+
return parent;
|
366
|
+
}
|
367
|
+
parent = parent.parentElement;
|
368
|
+
}
|
369
|
+
}
|
355
370
|
//---------------------------------------------
|
356
371
|
// Lifecycle web component
|
357
372
|
//---------------------------------------------
|
@@ -359,6 +374,9 @@ export class SnkDataUnit {
|
|
359
374
|
this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
360
375
|
this._application.getAllAccess().then(access => this._permissions = access);
|
361
376
|
this._parentSnkDataUnit = this.getParentSnkDataUnit();
|
377
|
+
if (this.messagesBuilder == undefined) {
|
378
|
+
this.messagesBuilder = new SnkMessageBuilder(this.entityName);
|
379
|
+
}
|
362
380
|
}
|
363
381
|
disconnectedCallback() {
|
364
382
|
if (this.dataUnit) {
|
@@ -405,6 +423,26 @@ export class SnkDataUnit {
|
|
405
423
|
"text": "Controla o estado atual dos dados."
|
406
424
|
}
|
407
425
|
},
|
426
|
+
"messagesBuilder": {
|
427
|
+
"type": "unknown",
|
428
|
+
"mutable": true,
|
429
|
+
"complexType": {
|
430
|
+
"original": "SnkMessageBuilder",
|
431
|
+
"resolved": "SnkMessageBuilder",
|
432
|
+
"references": {
|
433
|
+
"SnkMessageBuilder": {
|
434
|
+
"location": "import",
|
435
|
+
"path": "../../lib/message/SnkMessageBuilder"
|
436
|
+
}
|
437
|
+
}
|
438
|
+
},
|
439
|
+
"required": false,
|
440
|
+
"optional": false,
|
441
|
+
"docs": {
|
442
|
+
"tags": [],
|
443
|
+
"text": "Respons\u00E1vel por flexibilizar e padronizar o uso de mensagens nos blocos de constru\u00E7\u00E3o."
|
444
|
+
}
|
445
|
+
},
|
408
446
|
"dataUnitName": {
|
409
447
|
"type": "string",
|
410
448
|
"mutable": false,
|
@@ -562,6 +600,26 @@ export class SnkDataUnit {
|
|
562
600
|
}
|
563
601
|
}
|
564
602
|
}
|
603
|
+
}, {
|
604
|
+
"method": "messagesBuilderUpdated",
|
605
|
+
"name": "messagesBuilderUpdated",
|
606
|
+
"bubbles": false,
|
607
|
+
"cancelable": true,
|
608
|
+
"composed": true,
|
609
|
+
"docs": {
|
610
|
+
"tags": [],
|
611
|
+
"text": "Emitido quando o DataUnit est\u00E1 pronto."
|
612
|
+
},
|
613
|
+
"complexType": {
|
614
|
+
"original": "SnkMessageBuilder",
|
615
|
+
"resolved": "SnkMessageBuilder",
|
616
|
+
"references": {
|
617
|
+
"SnkMessageBuilder": {
|
618
|
+
"location": "import",
|
619
|
+
"path": "../../lib/message/SnkMessageBuilder"
|
620
|
+
}
|
621
|
+
}
|
622
|
+
}
|
565
623
|
}, {
|
566
624
|
"method": "insertionMode",
|
567
625
|
"name": "insertionMode",
|
@@ -665,6 +723,9 @@ export class SnkDataUnit {
|
|
665
723
|
}, {
|
666
724
|
"propName": "dataUnit",
|
667
725
|
"methodName": "observeDataUnit"
|
726
|
+
}, {
|
727
|
+
"propName": "messagesBuilder",
|
728
|
+
"methodName": "observeMessagesBuilder"
|
668
729
|
}];
|
669
730
|
}
|
670
731
|
}
|