@sankhyalabs/sankhyablocks 8.16.0-dev.104 → 8.16.0-dev.105
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-bae64d0d.js → SnkMessageBuilder-aecd7c18.js} +31 -24
- 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-attach.cjs.entry.js +1 -1
- package/dist/cjs/snk-crud.cjs.entry.js +18 -10
- package/dist/cjs/snk-data-exporter.cjs.entry.js +2 -2
- package/dist/cjs/{snk-data-unit-4b510d6e.js → snk-data-unit-9a463a4f.js} +225 -11
- package/dist/cjs/snk-data-unit.cjs.entry.js +2 -2
- package/dist/cjs/snk-detail-view.cjs.entry.js +3 -3
- package/dist/cjs/snk-grid.cjs.entry.js +21 -7
- package/dist/cjs/{snk-guides-viewer-e8e5f7b4.js → snk-guides-viewer-c9e1e97b.js} +98 -43
- package/dist/cjs/snk-guides-viewer.cjs.entry.js +2 -2
- package/dist/cjs/snk-simple-crud.cjs.entry.js +65 -22
- package/dist/cjs/snk-taskbar.cjs.entry.js +2 -1
- package/dist/cjs/{taskbar-elements-7e19882d.js → taskbar-elements-02379452.js} +3 -0
- package/dist/collection/components/snk-crud/snk-crud.js +35 -9
- package/dist/collection/components/snk-crud/subcomponents/snk-guides-viewer.js +117 -43
- package/dist/collection/components/snk-data-unit/MultipleUpdateHelper.js +128 -0
- package/dist/collection/components/snk-data-unit/snk-data-unit.js +107 -12
- package/dist/collection/components/snk-grid/snk-grid.js +38 -6
- package/dist/collection/components/snk-simple-crud/snk-simple-crud.js +83 -22
- package/dist/collection/components/snk-taskbar/elements/taskbar-elements.js +3 -0
- package/dist/collection/components/snk-taskbar/snk-taskbar.js +2 -2
- package/dist/collection/lib/message/SnkMessageBuilder.js +1 -0
- package/dist/collection/lib/message/resources/snk-data-unit.msg.js +28 -23
- package/dist/collection/lib/message/resources/snk-taskbar.msg.js +1 -0
- package/dist/components/SnkMessageBuilder.js +31 -24
- package/dist/components/snk-crud.js +18 -9
- package/dist/components/snk-data-unit2.js +225 -11
- package/dist/components/snk-detail-view2.js +98 -43
- package/dist/components/snk-grid2.js +21 -6
- package/dist/components/snk-simple-crud2.js +66 -22
- package/dist/components/snk-taskbar2.js +4 -0
- package/dist/esm/{SnkMessageBuilder-6fff4a4c.js → SnkMessageBuilder-12f5fe1a.js} +31 -24
- 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-attach.entry.js +1 -1
- package/dist/esm/snk-crud.entry.js +18 -10
- package/dist/esm/snk-data-exporter.entry.js +2 -2
- package/dist/esm/{snk-data-unit-7d0ce406.js → snk-data-unit-affee080.js} +225 -11
- package/dist/esm/snk-data-unit.entry.js +2 -2
- package/dist/esm/snk-detail-view.entry.js +3 -3
- package/dist/esm/snk-grid.entry.js +21 -7
- package/dist/esm/{snk-guides-viewer-c44b3839.js → snk-guides-viewer-3befd409.js} +99 -44
- package/dist/esm/snk-guides-viewer.entry.js +2 -2
- package/dist/esm/snk-simple-crud.entry.js +66 -23
- package/dist/esm/snk-taskbar.entry.js +2 -1
- package/dist/esm/{taskbar-elements-d2353c64.js → taskbar-elements-c62b6c66.js} +3 -0
- package/dist/sankhyablocks/{p-35f85998.entry.js → p-2101be8b.entry.js} +1 -1
- package/dist/sankhyablocks/{p-ef6f0a1b.entry.js → p-21a5acc4.entry.js} +1 -1
- package/dist/sankhyablocks/p-2d6df7e7.entry.js +1 -0
- package/dist/sankhyablocks/p-3f624cbe.js +1 -0
- package/dist/sankhyablocks/p-53e1de0a.entry.js +1 -0
- package/dist/sankhyablocks/{p-b2a2a83e.entry.js → p-624390bb.entry.js} +1 -1
- package/dist/sankhyablocks/p-80f8c22c.js +1 -0
- package/dist/sankhyablocks/p-82177c24.js +1 -0
- package/dist/sankhyablocks/{p-754559b9.entry.js → p-a5e5574c.entry.js} +1 -1
- package/dist/sankhyablocks/{p-5503e89f.entry.js → p-cbb4c043.entry.js} +1 -1
- package/dist/sankhyablocks/p-cf685cef.entry.js +1 -0
- package/dist/sankhyablocks/p-dcfc8b35.entry.js +1 -0
- package/dist/sankhyablocks/{p-38e3ffda.entry.js → p-ea55f2ab.entry.js} +1 -1
- package/dist/sankhyablocks/p-fb0f0087.js +1 -0
- 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-crud/subcomponents/snk-guides-viewer.d.ts +10 -1
- package/dist/types/components/snk-data-unit/MultipleUpdateHelper.d.ts +9 -0
- package/dist/types/components/snk-data-unit/snk-data-unit.d.ts +17 -0
- package/dist/types/components/snk-grid/snk-grid.d.ts +5 -0
- package/dist/types/components/snk-simple-crud/snk-simple-crud.d.ts +9 -2
- package/dist/types/components/snk-taskbar/elements/taskbar-elements.d.ts +2 -1
- package/dist/types/components/snk-taskbar/snk-taskbar.d.ts +1 -0
- package/dist/types/components.d.ts +28 -0
- package/dist/types/lib/message/SnkMessageBuilder.d.ts +2 -1
- package/package.json +1 -1
- package/dist/sankhyablocks/p-17425c72.js +0 -1
- package/dist/sankhyablocks/p-3fc82614.js +0 -1
- package/dist/sankhyablocks/p-460f1827.entry.js +0 -1
- package/dist/sankhyablocks/p-6e0a5314.js +0 -1
- package/dist/sankhyablocks/p-835128f5.entry.js +0 -1
- package/dist/sankhyablocks/p-92778d5a.js +0 -1
- package/dist/sankhyablocks/p-a962a3e4.entry.js +0 -1
- package/dist/sankhyablocks/p-e35fe2bd.entry.js +0 -1
@@ -1,11 +1,140 @@
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, g as getElement, H as Host } from './index-a7d3d3f1.js';
|
2
2
|
import { Action, ObjectUtils, DataUnitAction, StringUtils, ApplicationContext } from '@sankhyalabs/core';
|
3
3
|
import { ApplicationUtils, DialogType } from '@sankhyalabs/ezui/dist/collection/utils';
|
4
|
-
import { O as OperationMap, S as SnkMessageBuilder } from './SnkMessageBuilder-
|
4
|
+
import { O as OperationMap, S as SnkMessageBuilder } from './SnkMessageBuilder-12f5fe1a.js';
|
5
5
|
import { g as getRecordValue, a as DatasetStrategy } from './dataunit-fetcher-1d02ecfc.js';
|
6
6
|
import { convertType } from '@sankhyalabs/core/dist/dataunit/metadata/DataType';
|
7
7
|
import { g as getSelectedRecordsIDsInfo } from './GetSelectedRecordsIDsInfo-9fa41508.js';
|
8
8
|
|
9
|
+
const NO_TAB_NAME = "__NO_TAB_NAME__";
|
10
|
+
const MAIN_TAB_NAME = "__main";
|
11
|
+
async function showConfirmMultipleUpdatePopup({ title, labelBtnConfirm, labelBtnCancel, message, changingFields, }) {
|
12
|
+
return new Promise((resolve) => {
|
13
|
+
const popup = builPopup(title, resolve);
|
14
|
+
const contentContainer = buildContentContainer();
|
15
|
+
contentContainer.appendChild(buildMessage(message));
|
16
|
+
contentContainer.appendChild(buildChangesContainer(changingFields));
|
17
|
+
const actionsContainer = buildActionsContainer();
|
18
|
+
actionsContainer.appendChild(buildCancelBtn(popup, labelBtnCancel, resolve));
|
19
|
+
actionsContainer.appendChild(buildConfirmBtn(popup, labelBtnConfirm, resolve));
|
20
|
+
contentContainer.appendChild(actionsContainer);
|
21
|
+
popup.appendChild(contentContainer);
|
22
|
+
document.body.appendChild(popup);
|
23
|
+
});
|
24
|
+
}
|
25
|
+
function groupChanges(changingFields) {
|
26
|
+
const changesMap = new Map();
|
27
|
+
changingFields.forEach(change => {
|
28
|
+
var _a;
|
29
|
+
const key = (_a = change.tabName) !== null && _a !== void 0 ? _a : NO_TAB_NAME;
|
30
|
+
if (!changesMap.has(key))
|
31
|
+
changesMap.set(key, []);
|
32
|
+
changesMap.get(key).push(change);
|
33
|
+
});
|
34
|
+
return changesMap;
|
35
|
+
}
|
36
|
+
function getTabName(tabName) {
|
37
|
+
switch (tabName) {
|
38
|
+
case NO_TAB_NAME:
|
39
|
+
return "";
|
40
|
+
case MAIN_TAB_NAME:
|
41
|
+
return "Principal";
|
42
|
+
default:
|
43
|
+
return tabName;
|
44
|
+
}
|
45
|
+
}
|
46
|
+
function buildChangesDiv(tabName, changes) {
|
47
|
+
const changeLabel = document.createElement('span');
|
48
|
+
changeLabel.innerText = getTabName(tabName);
|
49
|
+
changeLabel.style.display = 'block';
|
50
|
+
changeLabel.style.fontWeight = 'var(--text-weight--large, 500)';
|
51
|
+
changeLabel.style.fontSize = 'var(--text--medium, 14px)';
|
52
|
+
changeLabel.style.marginBottom = 'var(--space--small, 6px)';
|
53
|
+
const changeDiv = document.createElement('div');
|
54
|
+
changeDiv.style.padding = 'var(--space--medium, 12px) 0';
|
55
|
+
changeDiv.style.borderTop = '1px solid var(--color--disable-secondary, #f2f5f8)';
|
56
|
+
changeDiv.appendChild(changeLabel);
|
57
|
+
changes.forEach(change => {
|
58
|
+
const changeLine = document.createElement('span');
|
59
|
+
changeLine.innerHTML = `${change.label}: <span style="color: var(--text--primary, #626e82)">${change.value}</span>`;
|
60
|
+
changeLine.style.display = 'block';
|
61
|
+
changeLine.style.marginBottom = 'var(--space--extra-small, 3px)';
|
62
|
+
changeDiv.appendChild(changeLine);
|
63
|
+
});
|
64
|
+
return changeDiv;
|
65
|
+
}
|
66
|
+
function buildChangesContainer(changingFields) {
|
67
|
+
const changesContainer = document.createElement('div');
|
68
|
+
changesContainer.style.flexDirection = 'column';
|
69
|
+
changesContainer.style.display = 'flex';
|
70
|
+
changesContainer.style.overflow = 'auto';
|
71
|
+
changesContainer.style.maxHeight = '300px';
|
72
|
+
const changesMap = groupChanges(changingFields);
|
73
|
+
changesMap.forEach((changes, key) => {
|
74
|
+
changesContainer.appendChild(buildChangesDiv(key, changes));
|
75
|
+
});
|
76
|
+
return changesContainer;
|
77
|
+
}
|
78
|
+
function buildMessage(messageContent) {
|
79
|
+
const message = document.createElement('p');
|
80
|
+
message.textContent = messageContent;
|
81
|
+
message.style.fontSize = 'var(--text--medium, 14px)';
|
82
|
+
return message;
|
83
|
+
}
|
84
|
+
function buildContentContainer() {
|
85
|
+
const contentContainer = document.createElement('div');
|
86
|
+
contentContainer.style.display = 'flex';
|
87
|
+
contentContainer.style.flexDirection = 'column';
|
88
|
+
contentContainer.style.fontFamily = 'var(--font-pattern, Roboto)';
|
89
|
+
contentContainer.style.fontSize = 'var(--text--medium, 14px)';
|
90
|
+
return contentContainer;
|
91
|
+
}
|
92
|
+
function buildActionsContainer() {
|
93
|
+
const actionsContainer = document.createElement('div');
|
94
|
+
actionsContainer.style.display = 'flex';
|
95
|
+
actionsContainer.style.flexDirection = 'row';
|
96
|
+
actionsContainer.style.justifyContent = 'flex-end';
|
97
|
+
actionsContainer.style.gap = '5px';
|
98
|
+
return actionsContainer;
|
99
|
+
}
|
100
|
+
function builPopup(title, resolve) {
|
101
|
+
const popup = document.createElement('ez-popup');
|
102
|
+
popup.opened = true;
|
103
|
+
popup.size = 'small';
|
104
|
+
popup.ezTitle = title;
|
105
|
+
popup.heightMode = 'auto';
|
106
|
+
popup.addEventListener('ezClosePopup', () => {
|
107
|
+
document.body.removeChild(popup);
|
108
|
+
resolve(false);
|
109
|
+
}, { once: true });
|
110
|
+
popup.addEventListener('ezPopupAction', () => {
|
111
|
+
document.body.removeChild(popup);
|
112
|
+
resolve(false);
|
113
|
+
}, { once: true });
|
114
|
+
return popup;
|
115
|
+
}
|
116
|
+
function buildConfirmBtn(popup, confirmBtnLabel, resolve) {
|
117
|
+
const confirmBtn = document.createElement('ez-button');
|
118
|
+
confirmBtn.label = confirmBtnLabel;
|
119
|
+
confirmBtn.size = 'medium';
|
120
|
+
confirmBtn.classList.add('ez-button--primary');
|
121
|
+
confirmBtn.onclick = () => {
|
122
|
+
document.body.removeChild(popup);
|
123
|
+
resolve(true);
|
124
|
+
};
|
125
|
+
return confirmBtn;
|
126
|
+
}
|
127
|
+
function buildCancelBtn(popup, cancelBtnLabel, resolve) {
|
128
|
+
const cancelBtn = document.createElement('ez-button');
|
129
|
+
cancelBtn.label = cancelBtnLabel;
|
130
|
+
cancelBtn.size = 'medium';
|
131
|
+
cancelBtn.onclick = () => {
|
132
|
+
document.body.removeChild(popup);
|
133
|
+
resolve(false);
|
134
|
+
};
|
135
|
+
return cancelBtn;
|
136
|
+
}
|
137
|
+
|
9
138
|
const SnkDataUnit = class {
|
10
139
|
constructor(hostRef) {
|
11
140
|
registerInstance(this, hostRef);
|
@@ -21,6 +150,7 @@ const SnkDataUnit = class {
|
|
21
150
|
this._fieldsWithRmPrecision = [];
|
22
151
|
this._metadataByRow = new Map();
|
23
152
|
this._rowMetadataCache = new Map();
|
153
|
+
this._formFieldsConfig = [];
|
24
154
|
this.REGEX_DATAUNIT_NAME = /dd:\/\/(.+?)\//;
|
25
155
|
this._dataUnitObserver = async (action) => {
|
26
156
|
const duState = await this.buildDataState(action.type);
|
@@ -97,6 +227,10 @@ const SnkDataUnit = class {
|
|
97
227
|
this.messagesBuilderUpdated.emit(newValue);
|
98
228
|
}
|
99
229
|
}
|
230
|
+
onMasterFormConfigChange({ detail }) {
|
231
|
+
var _a;
|
232
|
+
this._formFieldsConfig = (_a = detail === null || detail === void 0 ? void 0 : detail.fields) !== null && _a !== void 0 ? _a : [];
|
233
|
+
}
|
100
234
|
/**
|
101
235
|
* Obtém o dataUnit.
|
102
236
|
*/
|
@@ -271,9 +405,13 @@ const SnkDataUnit = class {
|
|
271
405
|
this._openedAlert = false;
|
272
406
|
}
|
273
407
|
async interceptSavingData(action) {
|
274
|
-
if (
|
275
|
-
|
408
|
+
if (this.dataUnit.isMultipleEdition) {
|
409
|
+
const confirm = await this.confirmMultipleSavingData();
|
410
|
+
if (!confirm)
|
411
|
+
return undefined;
|
276
412
|
}
|
413
|
+
if (!this.beforeSave)
|
414
|
+
return action;
|
277
415
|
const continueAction = this.beforeSave(this.dataUnit);
|
278
416
|
if (continueAction instanceof Promise) {
|
279
417
|
const result = await continueAction;
|
@@ -281,6 +419,46 @@ const SnkDataUnit = class {
|
|
281
419
|
}
|
282
420
|
return continueAction ? action : undefined;
|
283
421
|
}
|
422
|
+
async confirmMultipleSavingData() {
|
423
|
+
const selectedRecords = this.dataUnit.getSelectionInfo().records;
|
424
|
+
const title = this.getMessage('snkDataUnit.multipleUpdateConfirmationTitle');
|
425
|
+
const message = this.getMessage('snkDataUnit.multipleUpdateConfirmationMessage', { size: selectedRecords.length });
|
426
|
+
const labelBtnCancel = this.getMessage('snkDataUnit.confirm.cancel');
|
427
|
+
const labelBtnConfirm = this.getMessage('snkDataUnit.confirm.updateMultipleConfirm');
|
428
|
+
return await showConfirmMultipleUpdatePopup({
|
429
|
+
title,
|
430
|
+
message,
|
431
|
+
labelBtnConfirm,
|
432
|
+
labelBtnCancel,
|
433
|
+
changingFields: this.getChangingFields(),
|
434
|
+
});
|
435
|
+
}
|
436
|
+
getChangingFields() {
|
437
|
+
const changes = this.dataUnit.buildChangesToSave();
|
438
|
+
if (!(changes === null || changes === void 0 ? void 0 : changes.length))
|
439
|
+
return [];
|
440
|
+
const change = changes[0];
|
441
|
+
const changingFields = Object.keys(change.updatingFields).map(key => this.buildChangingField(key, change[key]));
|
442
|
+
return changingFields;
|
443
|
+
}
|
444
|
+
buildChangingField(key, value) {
|
445
|
+
const fieldLabel = this.dataUnit.getField(key).label;
|
446
|
+
const formattedValue = this.dataUnit.getFormattedValue(key, value);
|
447
|
+
return {
|
448
|
+
label: fieldLabel,
|
449
|
+
value: formattedValue,
|
450
|
+
tabName: this.getFieldTabName(key),
|
451
|
+
};
|
452
|
+
}
|
453
|
+
getFieldTabName(fieldName) {
|
454
|
+
var _a;
|
455
|
+
const tab = (_a = this._formFieldsConfig.find(f => f.name === fieldName)) === null || _a === void 0 ? void 0 : _a.tab;
|
456
|
+
if (!tab)
|
457
|
+
return undefined;
|
458
|
+
if (typeof tab === 'string')
|
459
|
+
return tab;
|
460
|
+
return tab.label;
|
461
|
+
}
|
284
462
|
interceptDataSaved(action) {
|
285
463
|
if (this.afterSave) {
|
286
464
|
this.afterSave(this.dataUnit);
|
@@ -300,7 +478,17 @@ const SnkDataUnit = class {
|
|
300
478
|
}
|
301
479
|
const cancelConfirmationTitle = this.getMessage("snkDataUnit.cancelConfirmationTitle");
|
302
480
|
const confirm = await ApplicationUtils.confirm(cancelConfirmationTitle, cancelConfirmation);
|
303
|
-
|
481
|
+
if (confirm) {
|
482
|
+
let editionCanceledMessage;
|
483
|
+
if (this.dataUnit.isMultipleEdition) {
|
484
|
+
const selectedRecords = this.dataUnit.getSelectionInfo().records;
|
485
|
+
editionCanceledMessage = this.buildMultipleUpdateMessage(selectedRecords, true);
|
486
|
+
}
|
487
|
+
else {
|
488
|
+
editionCanceledMessage = this.getMessage("snkDataUnit.cancelInfo");
|
489
|
+
}
|
490
|
+
this.showSuccessMessage(editionCanceledMessage);
|
491
|
+
}
|
304
492
|
return confirm ? action : undefined;
|
305
493
|
}
|
306
494
|
async interceptRemovingRecords(action) {
|
@@ -478,24 +666,50 @@ const SnkDataUnit = class {
|
|
478
666
|
}
|
479
667
|
async handleDataSaved(action) {
|
480
668
|
var _a, _b, _c;
|
481
|
-
const
|
669
|
+
const changes = (_a = action === null || action === void 0 ? void 0 : action.payload) === null || _a === void 0 ? void 0 : _a.changes;
|
670
|
+
const affectedRecords = (_b = action === null || action === void 0 ? void 0 : action.payload) === null || _b === void 0 ? void 0 : _b.records;
|
671
|
+
const newRowMetadata = await this.handleLoadRowMetadata((_c = changes === null || changes === void 0 ? void 0 : changes[0]) === null || _c === void 0 ? void 0 : _c.record);
|
482
672
|
if (newRowMetadata) {
|
483
673
|
newRowMetadata.getProp = this.buildGetPropRowMetadata(newRowMetadata);
|
484
674
|
}
|
485
|
-
const recordId =
|
675
|
+
const recordId = affectedRecords[0].__record__id__;
|
486
676
|
this._metadataByRow.set(recordId, newRowMetadata);
|
487
677
|
this.dataState = await this.buildDataState();
|
488
|
-
let saveOperation =
|
489
|
-
if (saveOperation == 'copy')
|
678
|
+
let saveOperation = changes[0]._operation.toLowerCase();
|
679
|
+
if (saveOperation == 'copy') {
|
490
680
|
saveOperation = OperationMap.CLONE;
|
491
|
-
if (this.ignoreSaveMessage && ![OperationMap.CLONE, OperationMap.INSERT].includes(saveOperation)) {
|
492
|
-
return;
|
493
681
|
}
|
494
|
-
|
682
|
+
if (this.canIgnoreOperationMessage(saveOperation))
|
683
|
+
return;
|
684
|
+
let msg = this.buildOperationMessage(saveOperation, affectedRecords);
|
495
685
|
if (msg != undefined) {
|
496
686
|
this.showSuccessMessage(msg);
|
497
687
|
}
|
498
688
|
}
|
689
|
+
canIgnoreOperationMessage(saveOperation) {
|
690
|
+
return this.ignoreSaveMessage && !this.isCloneOrInsertOperation(saveOperation);
|
691
|
+
}
|
692
|
+
isCloneOrInsertOperation(saveOperation) {
|
693
|
+
return [OperationMap.CLONE, OperationMap.INSERT].includes(saveOperation);
|
694
|
+
}
|
695
|
+
buildOperationMessage(saveOperation, records) {
|
696
|
+
if (this.isMultiplesUpdate(saveOperation, records)) {
|
697
|
+
return this.buildMultipleUpdateMessage(records);
|
698
|
+
}
|
699
|
+
return this.getMessage('snkDataUnit.saveInfo', records[0], saveOperation);
|
700
|
+
}
|
701
|
+
buildMultipleUpdateMessage(records, isCancel) {
|
702
|
+
/**
|
703
|
+
* FIXME: No futuro, precisamos pensar em um mecanismo para deixar as mensagens de feedback mais dinâmicas.
|
704
|
+
* Podemo ocorrer cenários onde temos mais de um registro selecionado e também cenários onde a chave primária
|
705
|
+
* de um registro se trata de uma chave composta.
|
706
|
+
*/
|
707
|
+
const key = `snkDataUnit.${isCancel ? 'cancelInfo' : 'saveInfo'}`;
|
708
|
+
return this.getMessage(key, { records: records }, OperationMap.UPDATE_MULTIPLES);
|
709
|
+
}
|
710
|
+
isMultiplesUpdate(saveOperation, records) {
|
711
|
+
return saveOperation === OperationMap.UPDATE && records.length > 1;
|
712
|
+
}
|
499
713
|
handleRecordsRemoved(action) {
|
500
714
|
var _a, _b;
|
501
715
|
let removeFinishMsg = this.buildRemoveFinishMessage(action);
|
@@ -1,8 +1,8 @@
|
|
1
|
-
export { S as snk_data_unit } from './snk-data-unit-
|
1
|
+
export { S as snk_data_unit } from './snk-data-unit-affee080.js';
|
2
2
|
import './index-a7d3d3f1.js';
|
3
3
|
import '@sankhyalabs/core';
|
4
4
|
import '@sankhyalabs/ezui/dist/collection/utils';
|
5
|
-
import './SnkMessageBuilder-
|
5
|
+
import './SnkMessageBuilder-12f5fe1a.js';
|
6
6
|
import './dataunit-fetcher-1d02ecfc.js';
|
7
7
|
import './DataFetcher-88e56266.js';
|
8
8
|
import './PrintUtils-3e4ff0f5.js';
|
@@ -11,9 +11,9 @@ import './dataunit-fetcher-1d02ecfc.js';
|
|
11
11
|
import './filter-item-type.enum-d45e026f.js';
|
12
12
|
import './form-config-fetcher-fa208a6c.js';
|
13
13
|
import { V as VIEW_MODE } from './constants-7db1128a.js';
|
14
|
-
import { T as TaskbarElement } from './taskbar-elements-
|
15
|
-
import { S as SnkGuidesViewer } from './snk-guides-viewer-
|
16
|
-
import { S as SnkMessageBuilder } from './SnkMessageBuilder-
|
14
|
+
import { T as TaskbarElement } from './taskbar-elements-c62b6c66.js';
|
15
|
+
import { S as SnkGuidesViewer } from './snk-guides-viewer-3befd409.js';
|
16
|
+
import { S as SnkMessageBuilder } from './SnkMessageBuilder-12f5fe1a.js';
|
17
17
|
import './ConfigStorage-71e6766f.js';
|
18
18
|
import './PrintUtils-3e4ff0f5.js';
|
19
19
|
import '@sankhyalabs/ezui/dist/collection/components/ez-grid/utils';
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, F as Fragment, g as getElement } from './index-a7d3d3f1.js';
|
2
2
|
import { Action, ElementIDUtils, ApplicationContext, StringUtils } from '@sankhyalabs/core';
|
3
|
-
import { T as TaskbarElement } from './taskbar-elements-
|
3
|
+
import { T as TaskbarElement } from './taskbar-elements-c62b6c66.js';
|
4
4
|
import { C as ConfigStorage } from './ConfigStorage-71e6766f.js';
|
5
5
|
import { P as PresentationMode, E as ExporterStrategy } from './index-b40568ff.js';
|
6
6
|
import { T as TaskbarProcessor, o as openFieldSearch, b as buildFieldSearch } from './field-search-f8b1d91e.js';
|
@@ -96,7 +96,7 @@ const SnkGrid = class {
|
|
96
96
|
});
|
97
97
|
this._headerTaskbarProcessor = new TaskbarProcessor({
|
98
98
|
"snkGridHeaderTaskbar.unselected": ["REFRESH", "DATA_EXPORTER", "ACTIONS_BUTTON", "MORE_OPTIONS"],
|
99
|
-
"snkGridHeaderTaskbar.selected":
|
99
|
+
"snkGridHeaderTaskbar.selected": this.getGridHeaderSelectedBtns(),
|
100
100
|
"snkGridHeaderTaskbar.detail.unselected": ["REFRESH", "MORE_OPTIONS"],
|
101
101
|
"snkGridHeaderTaskbar.detail.selected": ["UPDATE", "ATTACH", "CLONE", "REMOVE", "MORE_OPTIONS", "DIVIDER", "REFRESH"],
|
102
102
|
"snkGridHeaderTaskbar.singleTaskbar.unselected": ["INSERT", "FORM_MODE", "CONFIGURATOR", "REFRESH", "DATA_EXPORTER", "ACTIONS_BUTTON", "MORE_OPTIONS"],
|
@@ -147,6 +147,17 @@ const SnkGrid = class {
|
|
147
147
|
this.enableGridInsert = false;
|
148
148
|
this.outlineMode = false;
|
149
149
|
this.strategyExporter = ExporterStrategy.SERVER_SIDE;
|
150
|
+
this.multipleEditionEnabled = true;
|
151
|
+
}
|
152
|
+
getGridHeaderSelectedBtns() {
|
153
|
+
const btns = [
|
154
|
+
TaskbarElement.UPDATE, TaskbarElement.CLONE, TaskbarElement.REMOVE,
|
155
|
+
TaskbarElement.MORE_OPTIONS, TaskbarElement.DIVIDER, TaskbarElement.ATTACH, TaskbarElement.FORM_MODE,
|
156
|
+
TaskbarElement.CONFIGURATOR, TaskbarElement.REFRESH, TaskbarElement.DATA_EXPORTER, TaskbarElement.ACTIONS_BUTTON
|
157
|
+
];
|
158
|
+
if (this.multipleEditionEnabled)
|
159
|
+
btns.unshift(TaskbarElement.UPDATE_MULTIPLE);
|
160
|
+
return btns;
|
150
161
|
}
|
151
162
|
reloadConfig() {
|
152
163
|
this.loadConfig();
|
@@ -431,20 +442,23 @@ const SnkGrid = class {
|
|
431
442
|
const disabledButtons = [];
|
432
443
|
if ((_a = this._dataState) === null || _a === void 0 ? void 0 : _a.selectionInfo) {
|
433
444
|
if (this._dataState.selectionInfo.length > 1) {
|
434
|
-
disabledButtons.push(TaskbarElement.CLONE,
|
445
|
+
disabledButtons.push(TaskbarElement.CLONE, TaskbarElement.ATTACH, TaskbarElement.UPDATE);
|
435
446
|
}
|
436
447
|
if (this._dataState.selectionInfo.isAllRecords()) {
|
437
|
-
disabledButtons.push(
|
448
|
+
disabledButtons.push(TaskbarElement.REMOVE);
|
438
449
|
}
|
439
450
|
}
|
440
451
|
return disabledButtons;
|
441
452
|
}
|
442
453
|
getInvisibleButtons() {
|
454
|
+
var _a, _b;
|
443
455
|
let invisibleButtons = [];
|
444
456
|
if (!this._dataUnit || this._dataUnit.records.length === 0)
|
445
|
-
invisibleButtons.push(
|
446
|
-
if (this._dataState
|
447
|
-
invisibleButtons.push(
|
457
|
+
invisibleButtons.push(TaskbarElement.DATA_EXPORTER);
|
458
|
+
if (((_a = this._dataState) === null || _a === void 0 ? void 0 : _a.selectionInfo.mode) === SelectionMode.ALL_RECORDS)
|
459
|
+
invisibleButtons.push(TaskbarElement.ACTIONS_BUTTON);
|
460
|
+
if (((_b = this._dataState) === null || _b === void 0 ? void 0 : _b.selectionInfo.length) === 1)
|
461
|
+
invisibleButtons.push(TaskbarElement.UPDATE_MULTIPLE);
|
448
462
|
return invisibleButtons;
|
449
463
|
}
|
450
464
|
componentWillRender() {
|
@@ -1,9 +1,9 @@
|
|
1
1
|
import { r as registerInstance, c as createEvent, h, F as Fragment } from './index-a7d3d3f1.js';
|
2
|
-
import { Action, ElementIDUtils } from '@sankhyalabs/core';
|
2
|
+
import { ObjectUtils, Action, ElementIDUtils } from '@sankhyalabs/core';
|
3
3
|
import { S as SnkFormConfigManager } from './SnkFormConfigManager-be490a33.js';
|
4
4
|
import { buildFormMetadata, FormMetadata } from '@sankhyalabs/ezui/dist/collection/utils/form';
|
5
5
|
import { o as openFieldSearch, T as TaskbarProcessor, b as buildFieldSearch } from './field-search-f8b1d91e.js';
|
6
|
-
import { T as TaskbarElement } from './taskbar-elements-
|
6
|
+
import { T as TaskbarElement } from './taskbar-elements-c62b6c66.js';
|
7
7
|
import { V as VIEW_MODE } from './constants-7db1128a.js';
|
8
8
|
import './DataFetcher-88e56266.js';
|
9
9
|
import './ISave-5efafc97.js';
|
@@ -21,6 +21,7 @@ const FORM_NAME_PREFIX = "__FORM:";
|
|
21
21
|
const SnkGuidesViewer = class {
|
22
22
|
constructor(hostRef) {
|
23
23
|
registerInstance(this, hostRef);
|
24
|
+
this.snkMasterFormConfigChange = createEvent(this, "snkMasterFormConfigChange", 7);
|
24
25
|
this.exit = createEvent(this, "exit", 7);
|
25
26
|
this.actionClick = createEvent(this, "actionClick", 7);
|
26
27
|
this.formItemsReady = createEvent(this, "formItemsReady", 7);
|
@@ -57,14 +58,16 @@ const SnkGuidesViewer = class {
|
|
57
58
|
this.loadGuides(true);
|
58
59
|
}
|
59
60
|
observeDataState(newValue, oldValue) {
|
60
|
-
|
61
|
-
const
|
62
|
-
|
61
|
+
var _a, _b, _c, _d, _e, _f;
|
62
|
+
const newRecordsIds = (_b = (_a = newValue === null || newValue === void 0 ? void 0 : newValue.selectionInfo) === null || _a === void 0 ? void 0 : _a.recordIds) !== null && _b !== void 0 ? _b : (_c = newValue === null || newValue === void 0 ? void 0 : newValue.selectedRecord) === null || _c === void 0 ? void 0 : _c['__record__id__'];
|
63
|
+
const oldRecordsIds = (_e = (_d = oldValue === null || oldValue === void 0 ? void 0 : oldValue.selectionInfo) === null || _d === void 0 ? void 0 : _d.recordIds) !== null && _e !== void 0 ? _e : (_f = oldValue === null || oldValue === void 0 ? void 0 : oldValue.selectedRecord) === null || _f === void 0 ? void 0 : _f['__record__id__'];
|
64
|
+
if (!ObjectUtils.equals(newRecordsIds, oldRecordsIds)) {
|
63
65
|
this.loadGuides((oldValue === null || oldValue === void 0 ? void 0 : oldValue.insertionMode) != (newValue === null || newValue === void 0 ? void 0 : newValue.insertionMode));
|
64
66
|
}
|
65
67
|
}
|
66
68
|
observeMasterFormConfig() {
|
67
69
|
this.loadGuides(this.noGuideSelected());
|
70
|
+
this.snkMasterFormConfigChange.emit(this.masterFormConfig);
|
68
71
|
}
|
69
72
|
/**
|
70
73
|
* Abre o configurador do formulário
|
@@ -138,6 +141,11 @@ const SnkGuidesViewer = class {
|
|
138
141
|
* Para conhecer os detalhes do módulo, vide o arquivo neste projeto "/src/lib/message/resources/snk-crud.msg.ts"
|
139
142
|
*/
|
140
143
|
getMessage(key) {
|
144
|
+
var _a, _b;
|
145
|
+
if (this.dataUnit.isMultipleEdition) {
|
146
|
+
const selectedRecords = (_b = (_a = this.dataUnit.getSelectionInfo()) === null || _a === void 0 ? void 0 : _a.records) !== null && _b !== void 0 ? _b : [];
|
147
|
+
return `Editando ${selectedRecords.length} registros`;
|
148
|
+
}
|
141
149
|
return this.messagesBuilder.getMessage(key, this.dataUnit.getSelectedRecord());
|
142
150
|
}
|
143
151
|
loadGuides(changeSelection) {
|
@@ -150,12 +158,12 @@ const SnkGuidesViewer = class {
|
|
150
158
|
this._masterFormMetadata = buildFormMetadata(this.masterFormConfig, this.dataUnit, true);
|
151
159
|
const allSheets = this._masterFormMetadata.getAllSheets();
|
152
160
|
const currentRecord = this.dataUnit.getSelectedRecord();
|
153
|
-
const disableDetails =
|
161
|
+
const disableDetails = this.hasToDisableDetails(currentRecord);
|
154
162
|
const guides = [];
|
155
163
|
Array.from(allSheets.values()).forEach((sheet) => {
|
156
164
|
const item = { id: sheet.name, label: sheet.label };
|
157
165
|
if (this.isDetail(sheet.name) && disableDetails) {
|
158
|
-
item.tooltip = "Para alterar detalhes é necessário estar com um registro selecionado.";
|
166
|
+
item.tooltip = "Para alterar detalhes é necessário estar com um (e apenas um) registro selecionado.";
|
159
167
|
item.disabled = true;
|
160
168
|
}
|
161
169
|
guides.push(item);
|
@@ -168,6 +176,11 @@ const SnkGuidesViewer = class {
|
|
168
176
|
this.selectedGuide = this._guides.length > 0 ? this._guides[0] : undefined;
|
169
177
|
}
|
170
178
|
}
|
179
|
+
hasToDisableDetails(currentRecord) {
|
180
|
+
return !currentRecord
|
181
|
+
|| this.dataUnit.isNewRecord(currentRecord.__record__id__)
|
182
|
+
|| this.dataUnit.isMultipleEdition;
|
183
|
+
}
|
171
184
|
isDetail(formId) {
|
172
185
|
return FormMetadata.getDetailName(formId) != undefined;
|
173
186
|
}
|
@@ -190,47 +203,59 @@ const SnkGuidesViewer = class {
|
|
190
203
|
}
|
191
204
|
getTaskBarId() {
|
192
205
|
var _a;
|
193
|
-
|
194
|
-
|
195
|
-
loadTaskbarProcessor() {
|
196
|
-
var _a;
|
197
|
-
const taskbarId = this.getTaskBarId();
|
198
|
-
const disabledButtons = [];
|
199
|
-
if (!this.dataState || !this.dataState.hasPrevious) {
|
200
|
-
disabledButtons.push("PREVIOUS");
|
206
|
+
if ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) {
|
207
|
+
return TASKBAR_ID.FINISH_EDITION;
|
201
208
|
}
|
202
|
-
if (
|
203
|
-
|
209
|
+
if (this.dataUnit.isMultipleEdition) {
|
210
|
+
return TASKBAR_ID.MUTIPLE_EDITION;
|
204
211
|
}
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
+
return TASKBAR_ID.REGULAR;
|
213
|
+
}
|
214
|
+
loadTaskbarProcessor() {
|
215
|
+
const taskbarIDs = {};
|
216
|
+
taskbarIDs[TASKBAR_ID.REGULAR] = this.buildBtnsRegularMode();
|
217
|
+
taskbarIDs[TASKBAR_ID.FINISH_EDITION] = [TaskbarElement.CANCEL, TaskbarElement.SAVE, this.handleAddGridMode()];
|
218
|
+
taskbarIDs[TASKBAR_ID.MUTIPLE_EDITION] = [TaskbarElement.CANCEL];
|
219
|
+
this._taskbarProcessor = new TaskbarProcessor(taskbarIDs);
|
220
|
+
this._taskbarProcessor.process(this.getTaskBarId(), this.taskbarManager, this.dataState, this.buildDisabledButtons(), this.buildInvisibleButtons());
|
221
|
+
}
|
222
|
+
buildBtnsRegularMode() {
|
223
|
+
var _a, _b;
|
224
|
+
const btnsRegularMode = [
|
225
|
+
TaskbarElement.ATTACH, TaskbarElement.CLONE, TaskbarElement.REMOVE, TaskbarElement.MORE_OPTIONS,
|
226
|
+
TaskbarElement.ACTIONS_BUTTON, TaskbarElement.DIVIDER, TaskbarElement.GRID_MODE, TaskbarElement.CONFIGURATOR,
|
227
|
+
];
|
228
|
+
if (((_b = (_a = this.dataState) === null || _a === void 0 ? void 0 : _a.selectionInfo) === null || _b === void 0 ? void 0 : _b.length) <= 1) {
|
229
|
+
btnsRegularMode.unshift(TaskbarElement.PREVIOUS, TaskbarElement.NEXT, TaskbarElement.DIVIDER);
|
212
230
|
}
|
213
|
-
const btnsRegularMode = ["PREVIOUS", "NEXT", "DIVIDER", "ATTACH", "CLONE", "REMOVE", "MORE_OPTIONS", "ACTIONS_BUTTON", "DIVIDER", "GRID_MODE", "CONFIGURATOR"];
|
214
231
|
if (this.presentationMode == PresentationMode.SECONDARY) {
|
215
|
-
btnsRegularMode.unshift(
|
232
|
+
btnsRegularMode.unshift(TaskbarElement.INSERT);
|
216
233
|
}
|
217
234
|
else {
|
218
|
-
btnsRegularMode.push(
|
235
|
+
btnsRegularMode.push(TaskbarElement.INSERT);
|
219
236
|
}
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
237
|
+
return btnsRegularMode;
|
238
|
+
}
|
239
|
+
buildDisabledButtons() {
|
240
|
+
var _a, _b, _c, _d, _e, _f;
|
241
|
+
const disabledButtons = [];
|
242
|
+
if (!((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.hasPrevious))
|
243
|
+
disabledButtons.push(TaskbarElement.PREVIOUS);
|
244
|
+
if (!((_b = this.dataState) === null || _b === void 0 ? void 0 : _b.hasNext))
|
245
|
+
disabledButtons.push(TaskbarElement.NEXT);
|
246
|
+
if (((_d = (_c = this.dataState) === null || _c === void 0 ? void 0 : _c.selectionInfo) === null || _d === void 0 ? void 0 : _d.length) > 1)
|
247
|
+
disabledButtons.push(TaskbarElement.CLONE);
|
248
|
+
if ((_f = (_e = this.dataState) === null || _e === void 0 ? void 0 : _e.selectionInfo) === null || _f === void 0 ? void 0 : _f.isAllRecords())
|
249
|
+
disabledButtons.push(TaskbarElement.REMOVE);
|
250
|
+
return disabledButtons;
|
226
251
|
}
|
227
252
|
handleAddGridMode() {
|
228
253
|
return this.enableGridInsert ? TaskbarElement.GRID_MODE : "";
|
229
254
|
}
|
230
|
-
|
255
|
+
buildInvisibleButtons() {
|
231
256
|
const invisibleButtons = [];
|
232
257
|
if (this.dataState && this.dataState.selectionInfo.mode === SelectionMode.ALL_RECORDS)
|
233
|
-
invisibleButtons.push(
|
258
|
+
invisibleButtons.push(TaskbarElement.ACTIONS_BUTTON);
|
234
259
|
return invisibleButtons;
|
235
260
|
}
|
236
261
|
static updateContentCard(formName, cardConfig, propertyChanged, configManager) {
|
@@ -443,17 +468,27 @@ const SnkGuidesViewer = class {
|
|
443
468
|
}
|
444
469
|
buildTaskBar() {
|
445
470
|
var _a;
|
446
|
-
return h("div", { class: `snk-guides-viewer__header-taskbar ${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.getActionsList(), messagesBuilder: this.messagesBuilder, presentationMode: this.presentationMode, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ?
|
471
|
+
return h("div", { class: `snk-guides-viewer__header-taskbar ${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.getActionsList(), messagesBuilder: this.messagesBuilder, presentationMode: this.presentationMode, primaryButton: ((_a = this.dataState) === null || _a === void 0 ? void 0 : _a.isDirty) ? TaskbarElement.SAVE : TaskbarElement.INSERT, "data-taskbar-owner": "master", dataUnit: this.dataUnit, resourceID: this.resourceID, customSlotId: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS", alignRigth: true }, h("slot", { name: "GUIDES_VIEWER_TASKBAR_CUSTOM_ELEMENTS" })));
|
447
472
|
}
|
448
473
|
async dataUnitActionHandler(action) {
|
449
474
|
var _a;
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
475
|
+
switch (action.type) {
|
476
|
+
case Action.EDITION_CANCELED:
|
477
|
+
case Action.DATA_SAVED:
|
478
|
+
if (this.dataUnit.isMultipleEdition) {
|
479
|
+
this.exitViewer();
|
480
|
+
this.dataUnit.isMultipleEdition = false;
|
481
|
+
}
|
482
|
+
break;
|
483
|
+
case Action.FIELD_INVALIDATED:
|
484
|
+
const guideName = this.getGuideName((_a = action.payload) === null || _a === void 0 ? void 0 : _a.fieldName);
|
485
|
+
await this.addErrorBadgeToGuide(guideName);
|
486
|
+
await this.openGuideNavigator(guideName);
|
487
|
+
break;
|
488
|
+
case Action.METADATA_LOADED:
|
489
|
+
case Action.MULTIPLE_EDITION_CHANGED:
|
490
|
+
this.loadGuides(this.noGuideSelected());
|
491
|
+
break;
|
457
492
|
}
|
458
493
|
}
|
459
494
|
async addErrorBadgeToGuide(guideName) {
|
@@ -493,6 +528,20 @@ const SnkGuidesViewer = class {
|
|
493
528
|
var _a, _b;
|
494
529
|
return (_b = (_a = this.getCustomTitle) === null || _a === void 0 ? void 0 : _a.call(this)) !== null && _b !== void 0 ? _b : this.getMessage("snkCrud.title");
|
495
530
|
}
|
531
|
+
getTitleTooltip() {
|
532
|
+
if (!this.dataUnit.isMultipleEdition)
|
533
|
+
return;
|
534
|
+
return this.buildRecordIdsArray();
|
535
|
+
}
|
536
|
+
buildRecordIdsArray() {
|
537
|
+
var _a, _b;
|
538
|
+
const selectedRecords = (_b = (_a = this.dataUnit.getSelectionInfo()) === null || _a === void 0 ? void 0 : _a.records) !== null && _b !== void 0 ? _b : [];
|
539
|
+
if (selectedRecords.length === 0) {
|
540
|
+
return "[]";
|
541
|
+
}
|
542
|
+
const labels = selectedRecords.map(record => this.messagesBuilder.getMessage("snkCrud.title", record));
|
543
|
+
return `[${labels.join(", ")}]`;
|
544
|
+
}
|
496
545
|
componentDidLoad() {
|
497
546
|
this.dataUnit.subscribe(this.dataUnitActionHandler.bind(this));
|
498
547
|
}
|
@@ -506,7 +555,7 @@ const SnkGuidesViewer = class {
|
|
506
555
|
}
|
507
556
|
this.loadTaskbarProcessor();
|
508
557
|
const showGuides = this._guides && (this._guides.length > 1);
|
509
|
-
return (h("section", { class: "snk-guides-viewer", ref: ref => this._container = ref, tabindex: -1 }, h("div", { class: "ez-row snk-guides-viewer__header" }, h("div", { class: "snk-guides-viewer__header-breadcrumb 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.getTitle()), ((_a = this._breadcrumbItems) === null || _a === void 0 ? void 0 : _a.length) > 1 &&
|
558
|
+
return (h("section", { class: "snk-guides-viewer", ref: ref => this._container = ref, tabindex: -1 }, h("div", { class: "ez-row snk-guides-viewer__header" }, h("div", { class: "snk-guides-viewer__header-breadcrumb 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", title: this.getTitleTooltip() }, this.getTitle()), ((_a = this._breadcrumbItems) === null || _a === void 0 ? void 0 : _a.length) > 1 &&
|
510
559
|
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 ?
|
511
560
|
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, onEzSelectionChange: evt => this.updateSelectedGuideHandler(evt.detail) })
|
512
561
|
:
|
@@ -528,6 +577,12 @@ const SnkGuidesViewer = class {
|
|
528
577
|
"masterFormConfig": ["observeMasterFormConfig"]
|
529
578
|
}; }
|
530
579
|
};
|
580
|
+
var TASKBAR_ID;
|
581
|
+
(function (TASKBAR_ID) {
|
582
|
+
TASKBAR_ID["FINISH_EDITION"] = "snkGuideViewer.finish_edition";
|
583
|
+
TASKBAR_ID["MUTIPLE_EDITION"] = "snkGuideViewer.multiple_edition";
|
584
|
+
TASKBAR_ID["REGULAR"] = "snkGuideViewer.regular";
|
585
|
+
})(TASKBAR_ID || (TASKBAR_ID = {}));
|
531
586
|
SnkGuidesViewer.style = snkGuidesViewerCss;
|
532
587
|
|
533
588
|
export { SnkGuidesViewer as S };
|
@@ -1,4 +1,4 @@
|
|
1
|
-
export { S as snk_guides_viewer } from './snk-guides-viewer-
|
1
|
+
export { S as snk_guides_viewer } from './snk-guides-viewer-3befd409.js';
|
2
2
|
import './index-a7d3d3f1.js';
|
3
3
|
import '@sankhyalabs/core';
|
4
4
|
import './SnkFormConfigManager-be490a33.js';
|
@@ -11,7 +11,7 @@ import './filter-item-type.enum-d45e026f.js';
|
|
11
11
|
import './constants-7db1128a.js';
|
12
12
|
import '@sankhyalabs/ezui/dist/collection/utils/form';
|
13
13
|
import './field-search-f8b1d91e.js';
|
14
|
-
import './taskbar-elements-
|
14
|
+
import './taskbar-elements-c62b6c66.js';
|
15
15
|
import './index-b40568ff.js';
|
16
16
|
import './index-bdf75557.js';
|
17
17
|
import './ISave-5efafc97.js';
|