@sankhyalabs/sankhyablocks 2.4.7 → 2.4.9
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-61f00e7f.js → SnkMessageBuilder-370e23ae.js} +24 -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 +1 -1
- package/dist/cjs/snk-configurator_3.cjs.entry.js +45 -7
- package/dist/cjs/snk-crud.cjs.entry.js +6 -2
- package/dist/cjs/snk-data-unit.cjs.entry.js +1 -1
- package/dist/cjs/{snk-filter-bar_7.cjs.entry.js → snk-exporter-email-sender_8.cjs.entry.js} +121 -10
- package/dist/cjs/snk-form.cjs.entry.js +1 -1
- package/dist/cjs/snk-pesquisa.cjs.entry.js +1 -1
- package/dist/cjs/{taskbar-elements-b995b84d.js → taskbar-elements-3807c809.js} +3 -0
- package/dist/cjs/{taskbar-processor-6bd0d35c.js → taskbar-processor-6f3d2a75.js} +9 -7
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/snk-configurator/snk-configurator.css +30 -15
- package/dist/collection/components/snk-crud/snk-crud.js +23 -1
- package/dist/collection/components/snk-data-exporter/data/attachment.js +1 -0
- package/dist/collection/components/snk-data-exporter/data/email.js +1 -0
- package/dist/collection/components/snk-data-exporter/data/export-config.js +1 -0
- package/dist/collection/components/snk-data-exporter/data/export-result.js +1 -0
- package/dist/collection/components/snk-data-exporter/data/report.js +1 -0
- package/dist/collection/components/snk-data-exporter/exporter-email-sender/email-info-step.js +6 -0
- package/dist/collection/components/snk-data-exporter/exporter-email-sender/options-step.js +21 -0
- package/dist/collection/components/snk-data-exporter/exporter-email-sender/snk-exporter-email-sender.js +141 -0
- package/dist/collection/components/snk-grid/snk-grid.js +71 -6
- package/dist/collection/components/snk-grid/subcomponents/snk-grid-config/snk-grid-config.css +35 -20
- package/dist/collection/components/snk-grid/subcomponents/snk-grid-config/snk-grid-config.js +25 -8
- package/dist/collection/components/snk-pesquisa/snk-pesquisa.css +36 -22
- package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +3 -0
- package/dist/collection/components/snk-taskbar/processor/taskbar-processor.js +9 -7
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +2 -1
- package/dist/collection/lib/message/SnkMessageBuilder.js +3 -1
- package/dist/collection/lib/message/resources/snk-exporter.msg.js +21 -0
- package/dist/collection/lib/message/resources/snk-taskbar.msg.js +1 -0
- package/dist/components/SnkMessageBuilder.js +24 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +1 -0
- package/dist/components/snk-configurator2.js +1 -1
- package/dist/components/snk-crud.js +16 -5
- package/dist/components/snk-exporter-email-sender.d.ts +11 -0
- package/dist/components/snk-exporter-email-sender.js +6 -0
- package/dist/components/snk-exporter-email-sender2.js +136 -0
- package/dist/components/snk-grid-config2.js +7 -9
- package/dist/components/snk-grid2.js +53 -9
- package/dist/components/snk-pesquisa2.js +1 -1
- package/dist/components/snk-taskbar2.js +5 -1
- package/dist/components/taskbar-processor.js +9 -7
- package/dist/esm/{SnkMessageBuilder-f5ef87df.js → SnkMessageBuilder-7d583c9a.js} +24 -1
- 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-configurator_3.entry.js +45 -7
- package/dist/esm/snk-crud.entry.js +6 -2
- package/dist/esm/snk-data-unit.entry.js +1 -1
- package/dist/esm/{snk-filter-bar_7.entry.js → snk-exporter-email-sender_8.entry.js} +123 -13
- package/dist/esm/snk-form.entry.js +1 -1
- package/dist/esm/snk-pesquisa.entry.js +1 -1
- package/dist/esm/{taskbar-elements-a0a8c3ac.js → taskbar-elements-b2bbe275.js} +3 -0
- package/dist/esm/{taskbar-processor-aa6772c9.js → taskbar-processor-c2a99aba.js} +9 -7
- package/dist/sankhyablocks/p-14af45cc.entry.js +1 -0
- package/dist/sankhyablocks/{p-a72a0a5d.entry.js → p-1b7f87cf.entry.js} +1 -1
- package/dist/sankhyablocks/p-37f489d3.entry.js +1 -0
- package/dist/sankhyablocks/p-5a3e0eb6.js +1 -0
- package/dist/sankhyablocks/{p-eb94df0b.entry.js → p-70e52fee.entry.js} +1 -1
- package/dist/sankhyablocks/p-c118ef2a.entry.js +1 -0
- package/dist/sankhyablocks/p-dbaad88c.js +1 -0
- package/dist/sankhyablocks/p-df53643b.entry.js +1 -0
- package/dist/sankhyablocks/p-e7f772ed.js +1 -0
- package/dist/sankhyablocks/{p-71997e4c.entry.js → p-fb96840c.entry.js} +1 -1
- package/dist/sankhyablocks/sankhyablocks.esm.js +1 -1
- package/dist/types/components/snk-crud/snk-crud.d.ts +4 -0
- package/dist/types/components/snk-data-exporter/data/attachment.d.ts +4 -0
- package/dist/types/components/snk-data-exporter/data/email.d.ts +7 -0
- package/dist/types/components/snk-data-exporter/data/export-config.d.ts +9 -0
- package/dist/types/components/snk-data-exporter/data/export-result.d.ts +8 -0
- package/dist/types/components/snk-data-exporter/data/report.d.ts +4 -0
- package/dist/types/components/snk-data-exporter/exporter-email-sender/email-info-step.d.ts +9 -0
- package/dist/types/components/snk-data-exporter/exporter-email-sender/options-step.d.ts +9 -0
- package/dist/types/components/snk-grid/subcomponents/snk-grid-config/snk-grid-config.d.ts +6 -3
- package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +2 -1
- package/dist/types/components/snk-taskbar/processor/taskbar-processor.d.ts +1 -1
- package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +1 -0
- package/dist/types/components.d.ts +43 -0
- package/dist/types/lib/message/resources/snk-exporter.msg.d.ts +2 -0
- package/package.json +1 -1
- package/react/components.d.ts +1 -0
- package/react/components.js +1 -0
- package/react/components.js.map +1 -1
- package/dist/sankhyablocks/p-03f9c407.js +0 -1
- package/dist/sankhyablocks/p-1bc8f32f.entry.js +0 -1
- package/dist/sankhyablocks/p-4cbc4ae3.js +0 -1
- package/dist/sankhyablocks/p-60038252.entry.js +0 -1
- package/dist/sankhyablocks/p-877bd6cf.js +0 -1
- package/dist/sankhyablocks/p-b05638d2.entry.js +0 -1
- package/dist/sankhyablocks/p-e6e0efe7.entry.js +0 -1
- package/dist/types/components/snk-grid/snk-grid.d.ts +0 -70
|
@@ -26,17 +26,19 @@
|
|
|
26
26
|
/*@doc Define o peso da fonte utilizada para o subtitulo do componente.*/
|
|
27
27
|
--snk-configurator__subtitle--font-weight: var(--text-weight--large, 600);
|
|
28
28
|
|
|
29
|
+
/* scrollbar */
|
|
30
|
+
/*@doc Define a cor da barra de rolagem do componente.*/
|
|
31
|
+
--snk-configurator__scrollbar--color-default: var(--scrollbar--default, #626e82);
|
|
32
|
+
/*@doc Define a cor de fundo da barra de rolagem do componente.*/
|
|
33
|
+
--snk-configurator__scrollbar--color-background: var(--scrollbar--background, #E5EAF0);
|
|
34
|
+
/*@doc Define a cor do hover na barra de rolagem do componente.*/
|
|
35
|
+
--snk-configurator__scrollbar--color-hover: var(--scrollbar--hover, #2B3A54);
|
|
36
|
+
/*@doc Define a cor do active na barra de rolagem do componente.*/
|
|
37
|
+
--snk-configurator__scrollbar--color-clicked: var(--scrollbar--clicked, #a2abb9);
|
|
29
38
|
/*@doc Define o raio da borda da barra de rolagem do componente.*/
|
|
30
39
|
--snk-configurator__scrollbar--border-radius: var(--border--radius-small, 6px);
|
|
31
|
-
|
|
32
40
|
/*@doc Define a largura da barra de rolagem do componente.*/
|
|
33
41
|
--snk-configurator__scrollbar--width: var(--space--medium, 12px);
|
|
34
|
-
|
|
35
|
-
/*@doc Define a cor da barra de rolagem do componente.*/
|
|
36
|
-
--snk-configurator__scrollbar--background-color-primary: var(--scrollbar--primary, #2B3A54);
|
|
37
|
-
|
|
38
|
-
/*@doc Define a cor de fundo da barra de rolagem do componente.*/
|
|
39
|
-
--snk-configurator__scrollbar--background-color-secondary: var(--scrollbar--secondary, #E5EAF0);
|
|
40
42
|
}
|
|
41
43
|
|
|
42
44
|
.snk-configurator {
|
|
@@ -101,24 +103,37 @@
|
|
|
101
103
|
scrollbar-width: thin;
|
|
102
104
|
|
|
103
105
|
/*public*/
|
|
104
|
-
scrollbar-color: var(--snk-configurator__scrollbar--
|
|
106
|
+
scrollbar-color: var(--snk-configurator__scrollbar--color-clicked) var(--snk-configurator__scrollbar--color-background);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.snk-configurator__main::-webkit-scrollbar {
|
|
110
|
+
/*public*/
|
|
111
|
+
background-color: var(--snk-configurator__scrollbar--color-background);
|
|
112
|
+
width: var(--snk-configurator__scrollbar--width);
|
|
113
|
+
max-width: var(--snk-configurator__scrollbar--width);
|
|
114
|
+
min-width: var(--snk-configurator__scrollbar--width);
|
|
105
115
|
}
|
|
106
116
|
|
|
107
117
|
.snk-configurator__main::-webkit-scrollbar-track {
|
|
108
118
|
/*public*/
|
|
109
|
-
background-color: var(--snk-configurator__scrollbar--
|
|
119
|
+
background-color: var(--snk-configurator__scrollbar--color-background);
|
|
120
|
+
border-radius: var(--snk-configurator__scrollbar--border-radius);
|
|
110
121
|
}
|
|
111
122
|
|
|
112
123
|
.snk-configurator__main::-webkit-scrollbar-thumb {
|
|
113
124
|
/*public*/
|
|
114
|
-
background-color: var(--snk-configurator__scrollbar--
|
|
125
|
+
background-color: var(--snk-configurator__scrollbar--color-default);
|
|
115
126
|
border-radius: var(--snk-configurator__scrollbar--border-radius);
|
|
116
127
|
}
|
|
117
128
|
|
|
118
|
-
.snk-configurator__main::-webkit-scrollbar
|
|
129
|
+
.snk-configurator__main::-webkit-scrollbar-thumb:vertical:hover,
|
|
130
|
+
.snk-configurator__main::-webkit-scrollbar-thumb:horizontal:hover {
|
|
119
131
|
/*public*/
|
|
120
|
-
background-color: var(--snk-configurator__scrollbar--
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
132
|
+
background-color: var(--snk-configurator__scrollbar--color-hover);
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.snk-configurator__main::-webkit-scrollbar-thumb:vertical:active,
|
|
136
|
+
.snk-configurator__main::-webkit-scrollbar-thumb:horizontal:active {
|
|
137
|
+
/*public*/
|
|
138
|
+
background-color: var(--snk-configurator__scrollbar--color-clicked);
|
|
124
139
|
}
|
|
@@ -16,6 +16,10 @@ export class SnkCrud {
|
|
|
16
16
|
* Determina se pode haver mais de uma linha selecionada na grade.
|
|
17
17
|
*/
|
|
18
18
|
this.multipleSelection = true;
|
|
19
|
+
/**
|
|
20
|
+
* Determina se haverá exportação de dados
|
|
21
|
+
*/
|
|
22
|
+
this.enableDataExporter = false;
|
|
19
23
|
}
|
|
20
24
|
/**
|
|
21
25
|
* Usado para alternar a visão entre GRID e FORM externamente.
|
|
@@ -94,7 +98,7 @@ export class SnkCrud {
|
|
|
94
98
|
ElementIDUtils.addIDInfo(this._element, null, dataInfo);
|
|
95
99
|
}
|
|
96
100
|
render() {
|
|
97
|
-
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 }, h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-form", { ref: (ref) => this._snkForm = ref, "data-element-id": "crud_form", configName: this.configName, actionsList: this.actionsList, onExit: () => this.setViewMode(GRID_MODE), recordsValidator: this.recordsValidator, taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail) }, h("slot", { name: "SnkFormTaskBar" }))), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._viewMode, onConfigSelected: (evt) => this.executeAction(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail) })));
|
|
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, enableDataExporter: this.enableDataExporter }, h("slot", { name: "SnkGridHeader" }), h("slot", { name: "SnkGridFooter" }), h("slot", { name: "SnkGridTaskBar" }))), h("stack-item", null, h("snk-form", { ref: (ref) => this._snkForm = ref, "data-element-id": "crud_form", configName: this.configName, actionsList: this.actionsList, onExit: () => this.setViewMode(GRID_MODE), recordsValidator: this.recordsValidator, taskbarManager: this.taskbarManager, onActionClick: evt => this.executeAction(evt.detail) }, h("slot", { name: "SnkFormTaskBar" }))), h("snk-configurator", { ref: (ref) => this._snkConfigurator = ref, viewMode: this._viewMode, onConfigSelected: (evt) => this.executeAction(evt.detail), onOpenConfig: (evt) => this.openConfig(evt.detail) })));
|
|
98
102
|
}
|
|
99
103
|
static get is() { return "snk-crud"; }
|
|
100
104
|
static get encapsulation() { return "scoped"; }
|
|
@@ -227,6 +231,24 @@ export class SnkCrud {
|
|
|
227
231
|
"attribute": "multiple-selection",
|
|
228
232
|
"reflect": false,
|
|
229
233
|
"defaultValue": "true"
|
|
234
|
+
},
|
|
235
|
+
"enableDataExporter": {
|
|
236
|
+
"type": "boolean",
|
|
237
|
+
"mutable": false,
|
|
238
|
+
"complexType": {
|
|
239
|
+
"original": "boolean",
|
|
240
|
+
"resolved": "boolean",
|
|
241
|
+
"references": {}
|
|
242
|
+
},
|
|
243
|
+
"required": false,
|
|
244
|
+
"optional": false,
|
|
245
|
+
"docs": {
|
|
246
|
+
"tags": [],
|
|
247
|
+
"text": "Determina se haver\u00E1 exporta\u00E7\u00E3o de dados"
|
|
248
|
+
},
|
|
249
|
+
"attribute": "enable-data-exporter",
|
|
250
|
+
"reflect": false,
|
|
251
|
+
"defaultValue": "false"
|
|
230
252
|
}
|
|
231
253
|
};
|
|
232
254
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { ElementIDUtils } from '@sankhyalabs/core';
|
|
3
|
+
export const EmailInfoStep = ({ getMessage, changeInfo, data }) => {
|
|
4
|
+
return h("div", null, h("ez-text-input", Object.assign({ label: `${getMessage("snkExporter.emailSenderInfoStep_sendTo")} (obrigatório) *`, required: true, value: data === null || data === void 0 ? void 0 : data.to, onEzChange: evt => changeInfo("to", evt.detail) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("sendTo")}` })), h("ez-text-input", Object.assign({ label: `${getMessage("snkExporter.emailSenderInfoStep_subject")} (obrigatório) *`, required: true, value: data === null || data === void 0 ? void 0 : data.subject, onEzChange: evt => changeInfo("subject", evt.detail) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("subject")}` })), h("ez-text-area", Object.assign({ label: getMessage("snkExporter.emailSenderInfoStep_message"), value: data === null || data === void 0 ? void 0 : data.message, onEzChange: evt => changeInfo("message", evt.detail) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("message")}` })), ((data === null || data === void 0 ? void 0 : data.attachments) || [])
|
|
5
|
+
.map((file, index) => h("ez-file-item", Object.assign({ class: "ez-padding-bottom--large", fileName: file.name, fileSize: file.size, canRemove: false }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("fileItem_") + (index + 1)}` }))));
|
|
6
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ElementIDUtils } from "@sankhyalabs/core";
|
|
2
|
+
import { h } from "@stencil/core";
|
|
3
|
+
export const OptionsStep = ({ getMessage, changeInfo, data }) => {
|
|
4
|
+
const selectionCount = (data === null || data === void 0 ? void 0 : data.selectedRows) || 0;
|
|
5
|
+
const formatOptions = [
|
|
6
|
+
{ label: getMessage("snkExporter.emailSenderOptStep_formatPDF"), value: "pdf" },
|
|
7
|
+
{ label: getMessage("snkExporter.emailSenderOptStep_formatXLSX"), value: "xlsx" }
|
|
8
|
+
];
|
|
9
|
+
const typeOptions = [
|
|
10
|
+
{ label: getMessage("snkExporter.emailSenderOptStep_allData"), value: "all" },
|
|
11
|
+
{ label: getMessage("snkExporter.emailSenderOptStep_currentPage"), value: "page" },
|
|
12
|
+
];
|
|
13
|
+
if (selectionCount > 0) {
|
|
14
|
+
const label = getMessage(selectionCount > 1 ? "snkExporter.emailSenderOptStep_someRecords" : "snkExporter.emailSenderOptStep_oneRecord", { SELECTION_COUNT: selectionCount });
|
|
15
|
+
typeOptions.push({
|
|
16
|
+
label,
|
|
17
|
+
value: "selection"
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return h("div", null, h("ez-radio-button", Object.assign({ class: "ez-margin-bottom--large" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("formato")}` }, { label: getMessage("snkExporter.emailSenderOptStep_lblFormat"), direction: "horizontal", value: (data === null || data === void 0 ? void 0 : data.format) || "pdf", onEzChange: evt => changeInfo("format", evt.detail), options: formatOptions })), h("ez-radio-button", Object.assign({ class: "ez-margin-bottom--large" }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("type")}` }, { label: getMessage("snkExporter.emailSenderOptStep_export"), value: (data === null || data === void 0 ? void 0 : data.type) || "all", onEzChange: evt => changeInfo("type", evt.detail), options: typeOptions })));
|
|
21
|
+
};
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { ElementIDUtils } from '@sankhyalabs/core';
|
|
2
|
+
import { h } from '@stencil/core';
|
|
3
|
+
import { EmailInfoStep } from './email-info-step';
|
|
4
|
+
import { OptionsStep } from './options-step';
|
|
5
|
+
export class SnkExporterEmailSender {
|
|
6
|
+
constructor() {
|
|
7
|
+
this._stepInfo = [
|
|
8
|
+
{
|
|
9
|
+
subTitle: "snkExporter.emailSenderOptStep_subtitle",
|
|
10
|
+
firstButton: "snkExporter.emailSenderCancelButton",
|
|
11
|
+
secondButton: "snkExporter.emailSenderNextButton",
|
|
12
|
+
firstButtonAction: () => this.close(),
|
|
13
|
+
secondButtonAction: () => this.changeStep(1)
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
subTitle: "snkExporter.emailSenderInfoStep_subtitle",
|
|
17
|
+
firstButton: "snkExporter.emailSenderBackButton",
|
|
18
|
+
secondButton: "snkExporter.emailSenderSendButton",
|
|
19
|
+
firstButtonAction: () => this.changeStep(0),
|
|
20
|
+
secondButtonAction: () => this.send(),
|
|
21
|
+
secondButtonEnabledTester: () => this.isFilled()
|
|
22
|
+
}
|
|
23
|
+
];
|
|
24
|
+
this._opened = false;
|
|
25
|
+
this._currentStep = 0;
|
|
26
|
+
}
|
|
27
|
+
open(config) {
|
|
28
|
+
this._config = config;
|
|
29
|
+
this._opened = true;
|
|
30
|
+
this.changeStep(0);
|
|
31
|
+
return new Promise(accept => {
|
|
32
|
+
this._promiseResolver = accept;
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
getStepMessage(key) {
|
|
36
|
+
const stepInfo = this._stepInfo[this._currentStep] || {};
|
|
37
|
+
return this.getMessage(stepInfo[key]);
|
|
38
|
+
}
|
|
39
|
+
executeButtonAction(first) {
|
|
40
|
+
const stepInfo = this._stepInfo[this._currentStep] || {};
|
|
41
|
+
stepInfo[first ? "firstButtonAction" : "secondButtonAction"]();
|
|
42
|
+
}
|
|
43
|
+
checkButtonEnabled(first) {
|
|
44
|
+
const stepInfo = this._stepInfo[this._currentStep] || {};
|
|
45
|
+
const testFunction = stepInfo[first ? "firstButtonEnabledTester" : "secondButtonEnabledTester"];
|
|
46
|
+
if (testFunction) {
|
|
47
|
+
return testFunction();
|
|
48
|
+
}
|
|
49
|
+
return true;
|
|
50
|
+
}
|
|
51
|
+
changeStep(index) {
|
|
52
|
+
this._currentStep = index;
|
|
53
|
+
if (this._viewStack) {
|
|
54
|
+
this._viewStack.show(this._currentStep);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
send() {
|
|
58
|
+
const { format, type, email } = this._config;
|
|
59
|
+
this._promiseResolver({ format, type, email, report: undefined });
|
|
60
|
+
}
|
|
61
|
+
close() {
|
|
62
|
+
this._opened = false;
|
|
63
|
+
}
|
|
64
|
+
isFilled() {
|
|
65
|
+
var _a, _b;
|
|
66
|
+
return ((_a = this._config.email) === null || _a === void 0 ? void 0 : _a.to) && ((_b = this._config.email) === null || _b === void 0 ? void 0 : _b.subject) ? true : false;
|
|
67
|
+
}
|
|
68
|
+
updateEmailInfo(field, value) {
|
|
69
|
+
this._config = Object.assign(Object.assign({}, this._config), { email: Object.assign(Object.assign({}, this._config.email), { [field]: value }) });
|
|
70
|
+
}
|
|
71
|
+
updateConfigInfo(field, value) {
|
|
72
|
+
this._config = Object.assign(Object.assign({}, this._config), { [field]: value });
|
|
73
|
+
}
|
|
74
|
+
render() {
|
|
75
|
+
var _a;
|
|
76
|
+
ElementIDUtils.addIDInfoIfNotExists(this._element, 'snkExporterEmailSender');
|
|
77
|
+
return (h("ez-popup", { useHeader: false, size: "x-small", heightMode: "auto", opened: this._opened }, h("ez-modal-container", { onEzModalAction: evt => {
|
|
78
|
+
if (evt.detail === "CLOSE")
|
|
79
|
+
this.close();
|
|
80
|
+
}, modalTitle: this.getMessage("snkExporter.emailSenderTitle"), modalSubTitle: this.getStepMessage("subTitle") }, h("ez-view-stack", { ref: ref => this._viewStack = ref }, h("stack-item", null, h(OptionsStep, { getMessage: this.getMessage, data: this._config, changeInfo: (field, value) => this.updateConfigInfo(field, value) })), h("stack-item", null, h(EmailInfoStep, { getMessage: this.getMessage, data: (_a = this._config) === null || _a === void 0 ? void 0 : _a.email, changeInfo: (field, value) => this.updateEmailInfo(field, value) }))), h("div", { class: "ez-col ez-col--sd-12 ez-flex--justify-end ez-margin-vertical--small" }, h("ez-button", Object.assign({ class: "ez-button--tertiary ez-padding-right--medium", label: this.getStepMessage("firstButton"), onClick: () => this.executeButtonAction(true), enabled: this.checkButtonEnabled(true) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("firstButton")}` })), h("ez-button", Object.assign({ class: "ez-button--secondary", label: this.getStepMessage("secondButton"), onClick: () => this.executeButtonAction(false), enabled: this.checkButtonEnabled(false) }, { [ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: `${ElementIDUtils.getInternalIDInfo("secondButton")}` }))))));
|
|
81
|
+
}
|
|
82
|
+
static get is() { return "snk-exporter-email-sender"; }
|
|
83
|
+
static get properties() {
|
|
84
|
+
return {
|
|
85
|
+
"getMessage": {
|
|
86
|
+
"type": "unknown",
|
|
87
|
+
"mutable": false,
|
|
88
|
+
"complexType": {
|
|
89
|
+
"original": "(key: string, params?: any) => string",
|
|
90
|
+
"resolved": "(key: string, params?: any) => string",
|
|
91
|
+
"references": {}
|
|
92
|
+
},
|
|
93
|
+
"required": false,
|
|
94
|
+
"optional": false,
|
|
95
|
+
"docs": {
|
|
96
|
+
"tags": [],
|
|
97
|
+
"text": ""
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
static get states() {
|
|
103
|
+
return {
|
|
104
|
+
"_config": {},
|
|
105
|
+
"_opened": {},
|
|
106
|
+
"_currentStep": {}
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
static get methods() {
|
|
110
|
+
return {
|
|
111
|
+
"open": {
|
|
112
|
+
"complexType": {
|
|
113
|
+
"signature": "(config: ExportConfig) => Promise<ExportResult>",
|
|
114
|
+
"parameters": [{
|
|
115
|
+
"tags": [],
|
|
116
|
+
"text": ""
|
|
117
|
+
}],
|
|
118
|
+
"references": {
|
|
119
|
+
"Promise": {
|
|
120
|
+
"location": "global"
|
|
121
|
+
},
|
|
122
|
+
"ExportResult": {
|
|
123
|
+
"location": "import",
|
|
124
|
+
"path": "../data/export-result"
|
|
125
|
+
},
|
|
126
|
+
"ExportConfig": {
|
|
127
|
+
"location": "import",
|
|
128
|
+
"path": "../data/export-config"
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
"return": "Promise<ExportResult>"
|
|
132
|
+
},
|
|
133
|
+
"docs": {
|
|
134
|
+
"text": "",
|
|
135
|
+
"tags": []
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
static get elementRef() { return "_element"; }
|
|
141
|
+
}
|
|
@@ -1,17 +1,22 @@
|
|
|
1
|
-
import { ElementIDUtils } from '@sankhyalabs/core';
|
|
2
1
|
import { h } from '@stencil/core';
|
|
2
|
+
import { ApplicationContext, ElementIDUtils } from '@sankhyalabs/core';
|
|
3
3
|
import TaskbarProcessor from '../snk-taskbar/processor/taskbar-processor';
|
|
4
4
|
import { ConfigStorage } from '../../lib/configs/ConfigStorage';
|
|
5
|
+
import { TaskbarElement } from '../snk-taskbar/elements/taskbar-elements';
|
|
5
6
|
export class SnkGrid {
|
|
6
7
|
constructor() {
|
|
7
8
|
this._topTaskbarProcessor = new TaskbarProcessor({
|
|
8
9
|
"snkGridTopTaskbar": ["FORM_MODE", "CONFIGURATOR", "INSERT"]
|
|
9
10
|
});
|
|
10
11
|
this._headerTaskbarProcessor = new TaskbarProcessor({
|
|
11
|
-
"snkGridHeaderTaskbar.unselected": ["REFRESH"],
|
|
12
|
-
"snkGridHeaderTaskbar.selected": ["UPDATE", "CLONE", "REMOVE", "MORE_OPTIONS", "DIVIDER", "REFRESH"]
|
|
12
|
+
"snkGridHeaderTaskbar.unselected": ["REFRESH", "EXPORT"],
|
|
13
|
+
"snkGridHeaderTaskbar.selected": ["UPDATE", "CLONE", "REMOVE", "MORE_OPTIONS", "DIVIDER", "REFRESH", "EXPORT"]
|
|
13
14
|
});
|
|
14
15
|
this._popUpGridConfig = false;
|
|
16
|
+
/**
|
|
17
|
+
* Determina se haverá exportação de dados
|
|
18
|
+
*/
|
|
19
|
+
this.enableDataExporter = false;
|
|
15
20
|
}
|
|
16
21
|
/**
|
|
17
22
|
* Exibe a janela de configurações da grade.
|
|
@@ -37,6 +42,37 @@ export class SnkGrid {
|
|
|
37
42
|
async setConfig(config) {
|
|
38
43
|
this.setGridConfig(config);
|
|
39
44
|
}
|
|
45
|
+
actionClickHandler(event) {
|
|
46
|
+
if (event.detail === TaskbarElement.EXPORT) {
|
|
47
|
+
// TODO: Quando o exportador de grades for implementado, essa ação
|
|
48
|
+
// vai fazer mostrar as opções disponíveis. Enviar por email será
|
|
49
|
+
// apenas mais uma
|
|
50
|
+
const selectedRows = this._dataState.selectedRecords.length;
|
|
51
|
+
const config = {
|
|
52
|
+
format: "pdf",
|
|
53
|
+
type: selectedRows > 0 ? "selection" : "all",
|
|
54
|
+
selectedRows,
|
|
55
|
+
email: {
|
|
56
|
+
attachments: [
|
|
57
|
+
{ name: "Movimentação Financeira.pdf", size: 1024 * 231 }
|
|
58
|
+
]
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
this._snkEmailSender.open(config)
|
|
62
|
+
.then((result) => {
|
|
63
|
+
this._application.message("resultado", JSON.stringify(result));
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Conforme mecanismo de mensagens, é possível customizar as mensagens dos blocos de construção
|
|
69
|
+
* através de um pequeno modulo na estrutura da aplicação:
|
|
70
|
+
* - Criar um arquivo no seguinte caminho: /messages/appmessages.msg.js.
|
|
71
|
+
* Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-grid.msg.ts"
|
|
72
|
+
*/
|
|
73
|
+
getMessage(key, params) {
|
|
74
|
+
return this._application.messagesBuilder.getMessage(key, params);
|
|
75
|
+
}
|
|
40
76
|
openGridConfig() {
|
|
41
77
|
this._grid.getColumnsState()
|
|
42
78
|
.then((gridColumns) => {
|
|
@@ -72,6 +108,7 @@ export class SnkGrid {
|
|
|
72
108
|
});
|
|
73
109
|
}
|
|
74
110
|
componentWillLoad() {
|
|
111
|
+
this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
|
75
112
|
let parent = this._element.parentElement;
|
|
76
113
|
while (parent) {
|
|
77
114
|
if (parent.tagName.toUpperCase() === "SNK-DATA-UNIT") {
|
|
@@ -96,9 +133,10 @@ export class SnkGrid {
|
|
|
96
133
|
this.loadConfig();
|
|
97
134
|
}
|
|
98
135
|
componentWillRender() {
|
|
136
|
+
const invisibleButtons = this.enableDataExporter ? [] : ["EXPORT"];
|
|
99
137
|
const headerTaskbarId = this._dataState && this._dataState.selectedRecords.length > 0 ? "snkGridHeaderTaskbar.selected" : "snkGridHeaderTaskbar.unselected";
|
|
100
|
-
this._headerTaskbarProcessor.process(headerTaskbarId, this.taskbarManager, this._dataState);
|
|
101
|
-
this._topTaskbarProcessor.process("snkGridTopTaskbar", this.taskbarManager, this._dataState);
|
|
138
|
+
this._headerTaskbarProcessor.process(headerTaskbarId, this.taskbarManager, this._dataState, undefined, invisibleButtons);
|
|
139
|
+
this._topTaskbarProcessor.process("snkGridTopTaskbar", this.taskbarManager, this._dataState, undefined, invisibleButtons);
|
|
102
140
|
}
|
|
103
141
|
addElementID() {
|
|
104
142
|
const dataInfo = { dataUnit: this._dataUnit };
|
|
@@ -108,7 +146,7 @@ export class SnkGrid {
|
|
|
108
146
|
if (!this._dataUnit) {
|
|
109
147
|
return undefined;
|
|
110
148
|
}
|
|
111
|
-
return (h("div", { class: "snk-grid__container ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" }, h("div", { class: "snk-grid__header ez-padding-bottom--medium ez-margin-bottom--medium" }, h("snk-filter-bar", { dataUnit: this._dataUnit, "data-element-id": "gridFilter", class: "snk-grid__filter-bar ez-align--top", configName: this.configName }), h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-left--medium snk-grid__header-divider" }), h("snk-taskbar", { class: "ez-padding-left--medium", "data-element-id": "grid_top", key: "topTaskbar", configName: this.configName, dataUnit: this._dataUnit, buttons: this._topTaskbarProcessor.buttons, disabledButtons: this._topTaskbarProcessor.disabledButtons, customButtons: this._topTaskbarProcessor.customButtons, primaryButton: "INSERT" })), h("ez-grid", { ref: ref => this._grid = ref, "data-element-id": "embedded", dataUnit: this._dataUnit, key: "grid-" + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: (evt) => { this.saveConfig(evt.detail); }, onEzDoubleClick: () => this.gridDoubleClick.emit(), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection }, h("snk-taskbar", { dataUnit: this._dataUnit, "data-element-id": "grid_left", buttons: this._headerTaskbarProcessor.buttons, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.actionsList })), h("div", { class: "ez-col ez-col--sd-12" }, h("slot", { name: "SnkGridFooter" })), h("ez-modal", { modalSize: "small", closeEsc: false, closeOutsideClick: false, opened: this._popUpGridConfig, onEzCloseModal: () => this.closeGridConfig() }, h("snk-grid-config", { ref: ref => this._snkGridConfig = ref, config: this._gridConfig, "data-element-id": this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME), selectedIndex: 0, onConfigChange: (evt) => this.changeConfig(evt.detail), onConfigCancel: () => this.closeGridConfig() }))));
|
|
149
|
+
return (h("div", { class: "snk-grid__container ez-flex ez-flex--column ez-flex-item--auto ez-padding--large" }, h("div", { class: "snk-grid__header ez-padding-bottom--medium ez-margin-bottom--medium" }, h("snk-filter-bar", { dataUnit: this._dataUnit, "data-element-id": "gridFilter", class: "snk-grid__filter-bar ez-align--top", configName: this.configName }), h("hr", { class: "ez-divider-vertical ez-divider--dark ez-margin-left--medium snk-grid__header-divider" }), h("snk-taskbar", { class: "ez-padding-left--medium", "data-element-id": "grid_top", key: "topTaskbar", configName: this.configName, dataUnit: this._dataUnit, buttons: this._topTaskbarProcessor.buttons, disabledButtons: this._topTaskbarProcessor.disabledButtons, customButtons: this._topTaskbarProcessor.customButtons, primaryButton: "INSERT" })), h("ez-grid", { ref: ref => this._grid = ref, "data-element-id": "embedded", dataUnit: this._dataUnit, key: "grid-" + this._snkDataUnit.entityName, config: this._gridConfig, onConfigChange: (evt) => { this.saveConfig(evt.detail); }, onEzDoubleClick: () => this.gridDoubleClick.emit(), statusResolver: this.statusResolver, multipleSelection: this.multipleSelection }, h("snk-taskbar", { dataUnit: this._dataUnit, "data-element-id": "grid_left", buttons: this._headerTaskbarProcessor.buttons, disabledButtons: this._headerTaskbarProcessor.disabledButtons, customButtons: this._headerTaskbarProcessor.customButtons, slot: "leftButtons", actionsList: this.actionsList })), h("div", { class: "ez-col ez-col--sd-12" }, h("slot", { name: "SnkGridFooter" })), h("snk-exporter-email-sender", { ref: ref => this._snkEmailSender = ref, getMessage: (key, params) => this.getMessage(key, params) }), h("ez-modal", { modalSize: "small", closeEsc: false, closeOutsideClick: false, opened: this._popUpGridConfig, onEzCloseModal: () => this.closeGridConfig() }, h("snk-grid-config", { ref: ref => this._snkGridConfig = ref, config: this._gridConfig, "data-element-id": this._element.getAttribute(ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME), application: this._application, selectedIndex: 0, onConfigChange: (evt) => this.changeConfig(evt.detail), onConfigCancel: () => this.closeGridConfig() }))));
|
|
112
150
|
}
|
|
113
151
|
static get is() { return "snk-grid"; }
|
|
114
152
|
static get encapsulation() { return "scoped"; }
|
|
@@ -220,6 +258,24 @@ export class SnkGrid {
|
|
|
220
258
|
},
|
|
221
259
|
"attribute": "multiple-selection",
|
|
222
260
|
"reflect": false
|
|
261
|
+
},
|
|
262
|
+
"enableDataExporter": {
|
|
263
|
+
"type": "boolean",
|
|
264
|
+
"mutable": false,
|
|
265
|
+
"complexType": {
|
|
266
|
+
"original": "boolean",
|
|
267
|
+
"resolved": "boolean",
|
|
268
|
+
"references": {}
|
|
269
|
+
},
|
|
270
|
+
"required": false,
|
|
271
|
+
"optional": false,
|
|
272
|
+
"docs": {
|
|
273
|
+
"tags": [],
|
|
274
|
+
"text": "Determina se haver\u00E1 exporta\u00E7\u00E3o de dados"
|
|
275
|
+
},
|
|
276
|
+
"attribute": "enable-data-exporter",
|
|
277
|
+
"reflect": false,
|
|
278
|
+
"defaultValue": "false"
|
|
223
279
|
}
|
|
224
280
|
};
|
|
225
281
|
}
|
|
@@ -324,4 +380,13 @@ export class SnkGrid {
|
|
|
324
380
|
};
|
|
325
381
|
}
|
|
326
382
|
static get elementRef() { return "_element"; }
|
|
383
|
+
static get listeners() {
|
|
384
|
+
return [{
|
|
385
|
+
"name": "actionClick",
|
|
386
|
+
"method": "actionClickHandler",
|
|
387
|
+
"target": undefined,
|
|
388
|
+
"capture": false,
|
|
389
|
+
"passive": false
|
|
390
|
+
}];
|
|
391
|
+
}
|
|
327
392
|
}
|
package/dist/collection/components/snk-grid/subcomponents/snk-grid-config/snk-grid-config.css
CHANGED
|
@@ -29,18 +29,6 @@
|
|
|
29
29
|
/*@doc Define o tamanho da fonte utilizada para o subtitulo do componente.*/
|
|
30
30
|
--snk-grid-config__subtitle--font-size: var(--text--medium, 14px);
|
|
31
31
|
|
|
32
|
-
/*@doc Define a largura da barra de rolagem do componente.*/
|
|
33
|
-
--snk-grid-config__scrollbar--width: var(--space--medium, 12px);
|
|
34
|
-
|
|
35
|
-
/*@doc Define a cor da barra de rolagem do componente.*/
|
|
36
|
-
--snk-grid-config__scrollbar--background-color-primary: var(--scrollbar--primary, #2B3A54);
|
|
37
|
-
|
|
38
|
-
/*@doc Define a cor de fundo da barra de rolagem do componente.*/
|
|
39
|
-
--snk-grid-config__scrollbar--background-color-secondary: var(--scrollbar--secondary, #E5EAF0);
|
|
40
|
-
|
|
41
|
-
/*@doc Define o raio da borda da barra de rolagem do componente.*/
|
|
42
|
-
--snk-grid-config__scrollbar--border-radius: var(--border--radius-small, 6px);
|
|
43
|
-
|
|
44
32
|
/* @doc Define o estilo do texto do grupo da lista. */
|
|
45
33
|
--snk-grid-config__group--font-family: var(--font-pattern, "Roboto");
|
|
46
34
|
|
|
@@ -53,6 +41,20 @@
|
|
|
53
41
|
/* @doc Define o espaçamento inferior do grupo da lista. */
|
|
54
42
|
--snk-grid-config__group--padding-bottom: var(--space-small, 6px);
|
|
55
43
|
|
|
44
|
+
/* scrollbar */
|
|
45
|
+
/*@doc Define a cor da barra de rolagem do componente.*/
|
|
46
|
+
--snk-grid-config__scrollbar--color-default: var(--scrollbar--default, #626e82);
|
|
47
|
+
/*@doc Define a cor de fundo da barra de rolagem do componente.*/
|
|
48
|
+
--snk-grid-config__scrollbar--color-background: var(--scrollbar--background, #E5EAF0);
|
|
49
|
+
/*@doc Define a cor do hover na barra de rolagem do componente.*/
|
|
50
|
+
--snk-grid-config__scrollbar--color-hover: var(--scrollbar--hover, #2B3A54);
|
|
51
|
+
/*@doc Define a cor do active na barra de rolagem do componente.*/
|
|
52
|
+
--snk-grid-config__scrollbar--color-clicked: var(--scrollbar--clicked, #a2abb9);
|
|
53
|
+
/*@doc Define o raio da borda da barra de rolagem do componente.*/
|
|
54
|
+
--snk-grid-config__scrollbar--border-radius: var(--border--radius-small, 6px);
|
|
55
|
+
/*@doc Define a largura da barra de rolagem do componente.*/
|
|
56
|
+
--snk-grid-config__scrollbar--width: var(--space--medium, 12px);
|
|
57
|
+
|
|
56
58
|
display: grid;
|
|
57
59
|
grid-template-rows: auto 1fr auto;
|
|
58
60
|
max-height: 100%;
|
|
@@ -134,27 +136,40 @@ ez-list {
|
|
|
134
136
|
scrollbar-width: thin;
|
|
135
137
|
|
|
136
138
|
/*public*/
|
|
137
|
-
scrollbar-color: var(--snk-grid-config__scrollbar--
|
|
139
|
+
scrollbar-color: var(--snk-grid-config__scrollbar--color-clicked) var(--snk-grid-config__scrollbar--color-background);
|
|
138
140
|
padding-right: var(--snk-grid-config__main--padding-right);
|
|
139
141
|
}
|
|
140
142
|
|
|
143
|
+
.grid-config__main::-webkit-scrollbar {
|
|
144
|
+
/*public*/
|
|
145
|
+
width: var(--snk-grid-config__scrollbar--width);
|
|
146
|
+
max-width: var(--snk-grid-config__scrollbar--width);
|
|
147
|
+
min-width: var(--snk-grid-config__scrollbar--width);
|
|
148
|
+
background-color: var(--snk-grid-config__scrollbar--color-background);
|
|
149
|
+
}
|
|
150
|
+
|
|
141
151
|
.grid-config__main::-webkit-scrollbar-track {
|
|
142
152
|
/*public*/
|
|
143
|
-
background-color: var(--snk-grid-config__scrollbar--
|
|
153
|
+
background-color: var(--snk-grid-config__scrollbar--color-background);
|
|
154
|
+
border-radius: var(--snk-grid-config__scrollbar--border-radius);
|
|
144
155
|
}
|
|
145
156
|
|
|
146
157
|
.grid-config__main::-webkit-scrollbar-thumb {
|
|
147
158
|
/*public*/
|
|
148
|
-
background-color: var(--snk-grid-config__scrollbar--
|
|
159
|
+
background-color: var(--snk-grid-config__scrollbar--color-default);
|
|
149
160
|
border-radius: var(--snk-grid-config__scrollbar--border-radius);
|
|
150
161
|
}
|
|
151
162
|
|
|
152
|
-
.grid-config__main::-webkit-scrollbar
|
|
163
|
+
.grid-config__main::-webkit-scrollbar-thumb:vertical:hover,
|
|
164
|
+
.grid-config__main::-webkit-scrollbar-thumb:horizontal:hover {
|
|
153
165
|
/*public*/
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
166
|
+
background-color: var(--snk-grid-config__scrollbar--color-hover);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.grid-config__main::-webkit-scrollbar-thumb:vertical:active,
|
|
170
|
+
.grid-config__main::-webkit-scrollbar-thumb:horizontal:active {
|
|
171
|
+
/*public*/
|
|
172
|
+
background-color: var(--snk-grid-config__scrollbar--color-clicked);
|
|
158
173
|
}
|
|
159
174
|
|
|
160
175
|
.group-name {
|
package/dist/collection/components/snk-grid/subcomponents/snk-grid-config/snk-grid-config.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { StringUtils, ElementIDUtils } from '@sankhyalabs/core';
|
|
2
2
|
import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
|
|
3
3
|
import { h, Host } from '@stencil/core';
|
|
4
4
|
import { ConfigStorage } from '../../../../lib/configs/ConfigStorage';
|
|
@@ -13,7 +13,7 @@ export class EzGridConfig {
|
|
|
13
13
|
this._componenteInternalKey = Date.now();
|
|
14
14
|
/**
|
|
15
15
|
* Aba selecionada das configurações da grade.
|
|
16
|
-
|
|
16
|
+
*/
|
|
17
17
|
this.selectedIndex = 0;
|
|
18
18
|
}
|
|
19
19
|
/* Creation Methods */
|
|
@@ -22,10 +22,10 @@ export class EzGridConfig {
|
|
|
22
22
|
*/
|
|
23
23
|
async saveConfig(config) {
|
|
24
24
|
var _a;
|
|
25
|
-
if (config == undefined || ((_a = this.
|
|
25
|
+
if (config == undefined || ((_a = this.application) === null || _a === void 0 ? void 0 : _a.configName) == undefined) {
|
|
26
26
|
return;
|
|
27
27
|
}
|
|
28
|
-
ConfigStorage.saveGridConfig(config, this.
|
|
28
|
+
ConfigStorage.saveGridConfig(config, this.application.configName)
|
|
29
29
|
.then((response) => {
|
|
30
30
|
if ((response === null || response === void 0 ? void 0 : response.resource) != undefined) {
|
|
31
31
|
this.configChange.emit(config);
|
|
@@ -40,7 +40,7 @@ export class EzGridConfig {
|
|
|
40
40
|
* Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-grid.msg.ts"
|
|
41
41
|
*/
|
|
42
42
|
getMessage(key, params) {
|
|
43
|
-
return this.
|
|
43
|
+
return this.application.messagesBuilder.getMessage(key, params);
|
|
44
44
|
}
|
|
45
45
|
createOrderList() {
|
|
46
46
|
let newList = [];
|
|
@@ -459,9 +459,6 @@ export class EzGridConfig {
|
|
|
459
459
|
this.locateColumn(new KeyboardEvent("arrow-right", { key: "ArrowRight" }), this._searchElement.value);
|
|
460
460
|
}
|
|
461
461
|
}
|
|
462
|
-
componentWillLoad() {
|
|
463
|
-
this._application = ApplicationContext.getContextValue("__SNK__APPLICATION__");
|
|
464
|
-
}
|
|
465
462
|
componentDidLoad() {
|
|
466
463
|
ElementIDUtils.addIDInfo(this._element);
|
|
467
464
|
}
|
|
@@ -501,6 +498,26 @@ export class EzGridConfig {
|
|
|
501
498
|
"reflect": false,
|
|
502
499
|
"defaultValue": "0"
|
|
503
500
|
},
|
|
501
|
+
"application": {
|
|
502
|
+
"type": "unknown",
|
|
503
|
+
"mutable": false,
|
|
504
|
+
"complexType": {
|
|
505
|
+
"original": "SnkApplication",
|
|
506
|
+
"resolved": "SnkApplication",
|
|
507
|
+
"references": {
|
|
508
|
+
"SnkApplication": {
|
|
509
|
+
"location": "import",
|
|
510
|
+
"path": "../../../snk-application/snk-application"
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
},
|
|
514
|
+
"required": false,
|
|
515
|
+
"optional": false,
|
|
516
|
+
"docs": {
|
|
517
|
+
"tags": [],
|
|
518
|
+
"text": "Refer\u00EAncia para o SnkApplication"
|
|
519
|
+
}
|
|
520
|
+
},
|
|
504
521
|
"columns": {
|
|
505
522
|
"type": "unknown",
|
|
506
523
|
"mutable": true,
|