@sankhyalabs/ezui 7.1.0-dev.1 → 7.1.0-dev.11
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/ez-actions-button.cjs.entry.js +1 -1
- package/dist/cjs/ez-alert-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-alert.cjs.entry.js +1 -1
- package/dist/cjs/ez-application.cjs.entry.js +1 -1
- package/dist/cjs/ez-avatar.cjs.entry.js +1 -1
- package/dist/cjs/ez-badge.cjs.entry.js +1 -1
- package/dist/cjs/ez-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/ez-button.cjs.entry.js +1 -1
- package/dist/cjs/ez-calendar.cjs.entry.js +1 -1
- package/dist/cjs/ez-card-item.cjs.entry.js +1 -1
- package/dist/cjs/ez-chart.cjs.entry.js +1 -1
- package/dist/cjs/ez-check.cjs.entry.js +1 -1
- package/dist/cjs/ez-chip.cjs.entry.js +1 -1
- package/dist/cjs/ez-classic-combo-box.cjs.entry.js +1 -1
- package/dist/cjs/ez-classic-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-classic-text-area.cjs.entry.js +1 -1
- package/dist/cjs/ez-collapsible-box.cjs.entry.js +1 -1
- package/dist/cjs/ez-combo-box-list_4.cjs.entry.js +3 -3
- package/dist/cjs/ez-combo-box.cjs.entry.js +1 -1
- package/dist/cjs/ez-date-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-date-time-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-dialog.cjs.entry.js +2 -2
- package/dist/cjs/ez-double-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/ez-empty-card.cjs.entry.js +1 -1
- package/dist/cjs/ez-file-item.cjs.entry.js +1 -1
- package/dist/cjs/ez-filter-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-form-view.cjs.entry.js +1 -1
- package/dist/cjs/ez-form.cjs.entry.js +111 -39
- package/dist/cjs/ez-grid-view.cjs.entry.js +1 -1
- package/dist/cjs/ez-grid.cjs.entry.js +4 -4
- package/dist/cjs/ez-guide-navigator.cjs.entry.js +1 -1
- package/dist/cjs/ez-icon.cjs.entry.js +1 -1
- package/dist/cjs/ez-link-builder_6.cjs.entry.js +1 -1
- package/dist/cjs/ez-list-item.cjs.entry.js +1 -1
- package/dist/cjs/ez-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-loading-bar.cjs.entry.js +1 -1
- package/dist/cjs/ez-modal-container.cjs.entry.js +16 -17
- package/dist/cjs/ez-modal.cjs.entry.js +1 -1
- package/dist/cjs/ez-multi-selection-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-number-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-pagination.cjs.entry.js +1 -1
- package/dist/cjs/ez-popover-core.cjs.entry.js +1 -1
- package/dist/cjs/ez-popover-plus_3.cjs.entry.js +1 -1
- package/dist/cjs/ez-popover.cjs.entry.js +1 -1
- package/dist/cjs/ez-popup.cjs.entry.js +10 -7
- package/dist/cjs/ez-progress-bar.cjs.entry.js +1 -1
- package/dist/cjs/ez-radio-button.cjs.entry.js +1 -1
- package/dist/cjs/ez-rich-toolbar-item.cjs.entry.js +1 -1
- package/dist/cjs/ez-scroller_2.cjs.entry.js +1 -1
- package/dist/cjs/ez-search-plus.cjs.entry.js +1 -1
- package/dist/cjs/ez-search-result-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-search.cjs.entry.js +1 -1
- package/dist/cjs/ez-sidebar-navigator.cjs.entry.js +1 -1
- package/dist/cjs/ez-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/ez-sortable-list.cjs.entry.js +1 -1
- package/dist/cjs/ez-spinner.cjs.entry.js +1 -1
- package/dist/cjs/ez-split-button.cjs.entry.js +1 -1
- package/dist/cjs/ez-split-item.cjs.entry.js +1 -1
- package/dist/cjs/ez-split-panel.cjs.entry.js +1 -1
- package/dist/cjs/ez-tabselector.cjs.entry.js +1 -1
- package/dist/cjs/ez-tag-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-tag.cjs.entry.js +1 -1
- package/dist/cjs/ez-text-area.cjs.entry.js +1 -1
- package/dist/cjs/ez-text-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-tile-medium.cjs.entry.js +1 -1
- package/dist/cjs/ez-tile.cjs.entry.js +1 -1
- package/dist/cjs/ez-time-input.cjs.entry.js +1 -1
- package/dist/cjs/ez-toast.cjs.entry.js +1 -1
- package/dist/cjs/ez-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/ez-tree.cjs.entry.js +155 -8
- package/dist/cjs/ez-underface.cjs.entry.js +1 -1
- package/dist/cjs/ez-upload.cjs.entry.js +1 -1
- package/dist/cjs/ez-view-stack.cjs.entry.js +1 -1
- package/dist/cjs/ezui.cjs.js +2 -2
- package/dist/cjs/filter-column.cjs.entry.js +1 -1
- package/dist/cjs/{index-a7b0c73d.js → index-9e5554cb.js} +3 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{purify-47a2f27b.js → purify-453a8028.js} +35 -12
- package/dist/cjs/{search-column-9aa090ec.js → search-column-540f3925.js} +2 -2
- package/dist/collection/components/ez-dialog/ez-dialog.css +6 -1
- package/dist/collection/components/ez-grid/controller/ag-grid/AgGridController.js +1 -1
- package/dist/collection/components/ez-modal-container/ez-modal-container.css +4 -9
- package/dist/collection/components/ez-modal-container/ez-modal-container.js +32 -15
- package/dist/collection/components/ez-popup/ez-popup.css +3 -2
- package/dist/collection/components/ez-popup/ez-popup.js +9 -6
- package/dist/collection/components/ez-tree/ez-tree.css +4 -0
- package/dist/collection/components/ez-tree/ez-tree.js +185 -6
- package/dist/collection/components/ez-tree/subcomponents/TreeItem.js +4 -1
- package/dist/collection/components/ez-tree/types/Node.js +7 -0
- package/dist/collection/components/ez-tree/types/Tree.js +19 -0
- package/dist/collection/components/ez-tree/types/UpdateItemConfig.js +1 -0
- package/dist/collection/utils/form/DataBinder.js +1 -1
- package/dist/collection/utils/form/FormMetadata.js +109 -37
- package/dist/custom-elements/index.js +327 -83
- package/dist/esm/ez-actions-button.entry.js +1 -1
- package/dist/esm/ez-alert-list.entry.js +1 -1
- package/dist/esm/ez-alert.entry.js +1 -1
- package/dist/esm/ez-application.entry.js +1 -1
- package/dist/esm/ez-avatar.entry.js +1 -1
- package/dist/esm/ez-badge.entry.js +1 -1
- package/dist/esm/ez-breadcrumb.entry.js +1 -1
- package/dist/esm/ez-button.entry.js +1 -1
- package/dist/esm/ez-calendar.entry.js +1 -1
- package/dist/esm/ez-card-item.entry.js +1 -1
- package/dist/esm/ez-chart.entry.js +1 -1
- package/dist/esm/ez-check.entry.js +1 -1
- package/dist/esm/ez-chip.entry.js +1 -1
- package/dist/esm/ez-classic-combo-box.entry.js +1 -1
- package/dist/esm/ez-classic-input.entry.js +1 -1
- package/dist/esm/ez-classic-text-area.entry.js +1 -1
- package/dist/esm/ez-collapsible-box.entry.js +1 -1
- package/dist/esm/ez-combo-box-list_4.entry.js +3 -3
- package/dist/esm/ez-combo-box.entry.js +1 -1
- package/dist/esm/ez-date-input.entry.js +1 -1
- package/dist/esm/ez-date-time-input.entry.js +1 -1
- package/dist/esm/ez-dialog.entry.js +2 -2
- package/dist/esm/ez-double-list.entry.js +1 -1
- package/dist/esm/ez-dropdown.entry.js +1 -1
- package/dist/esm/ez-empty-card.entry.js +1 -1
- package/dist/esm/ez-file-item.entry.js +1 -1
- package/dist/esm/ez-filter-input.entry.js +1 -1
- package/dist/esm/ez-form-view.entry.js +1 -1
- package/dist/esm/ez-form.entry.js +111 -39
- package/dist/esm/ez-grid-view.entry.js +1 -1
- package/dist/esm/ez-grid.entry.js +4 -4
- package/dist/esm/ez-guide-navigator.entry.js +1 -1
- package/dist/esm/ez-icon.entry.js +1 -1
- package/dist/esm/ez-link-builder_6.entry.js +1 -1
- package/dist/esm/ez-list-item.entry.js +1 -1
- package/dist/esm/ez-list.entry.js +1 -1
- package/dist/esm/ez-loading-bar.entry.js +1 -1
- package/dist/esm/ez-modal-container.entry.js +16 -17
- package/dist/esm/ez-modal.entry.js +1 -1
- package/dist/esm/ez-multi-selection-list.entry.js +1 -1
- package/dist/esm/ez-number-input.entry.js +1 -1
- package/dist/esm/ez-pagination.entry.js +1 -1
- package/dist/esm/ez-popover-core.entry.js +1 -1
- package/dist/esm/ez-popover-plus_3.entry.js +1 -1
- package/dist/esm/ez-popover.entry.js +1 -1
- package/dist/esm/ez-popup.entry.js +10 -7
- package/dist/esm/ez-progress-bar.entry.js +1 -1
- package/dist/esm/ez-radio-button.entry.js +1 -1
- package/dist/esm/ez-rich-toolbar-item.entry.js +1 -1
- package/dist/esm/ez-scroller_2.entry.js +1 -1
- package/dist/esm/ez-search-plus.entry.js +1 -1
- package/dist/esm/ez-search-result-list.entry.js +1 -1
- package/dist/esm/ez-search.entry.js +1 -1
- package/dist/esm/ez-sidebar-navigator.entry.js +1 -1
- package/dist/esm/ez-skeleton.entry.js +1 -1
- package/dist/esm/ez-sortable-list.entry.js +1 -1
- package/dist/esm/ez-spinner.entry.js +1 -1
- package/dist/esm/ez-split-button.entry.js +1 -1
- package/dist/esm/ez-split-item.entry.js +1 -1
- package/dist/esm/ez-split-panel.entry.js +1 -1
- package/dist/esm/ez-tabselector.entry.js +1 -1
- package/dist/esm/ez-tag-input.entry.js +1 -1
- package/dist/esm/ez-tag.entry.js +1 -1
- package/dist/esm/ez-text-area.entry.js +1 -1
- package/dist/esm/ez-text-input.entry.js +1 -1
- package/dist/esm/ez-tile-medium.entry.js +1 -1
- package/dist/esm/ez-tile.entry.js +1 -1
- package/dist/esm/ez-time-input.entry.js +1 -1
- package/dist/esm/ez-toast.entry.js +1 -1
- package/dist/esm/ez-tooltip.entry.js +1 -1
- package/dist/esm/ez-tree.entry.js +155 -8
- package/dist/esm/ez-underface.entry.js +1 -1
- package/dist/esm/ez-upload.entry.js +1 -1
- package/dist/esm/ez-view-stack.entry.js +1 -1
- package/dist/esm/ezui.js +3 -3
- package/dist/esm/filter-column.entry.js +1 -1
- package/dist/esm/{index-baa5e267.js → index-5a720e56.js} +3 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{purify-dc6814bf.js → purify-003c47e2.js} +35 -12
- package/dist/esm/{search-column-83562552.js → search-column-4e827a95.js} +2 -2
- package/dist/ezui/ezui.esm.js +1 -1
- package/dist/ezui/{p-e75c7a23.entry.js → p-000159dc.entry.js} +1 -1
- package/dist/ezui/{p-7f8c1fce.entry.js → p-0391f255.entry.js} +1 -1
- package/dist/ezui/{p-93e1c917.entry.js → p-05e68ab3.entry.js} +1 -1
- package/dist/ezui/{p-1730ee24.entry.js → p-06ca9d9a.entry.js} +1 -1
- package/dist/ezui/{p-288631d1.entry.js → p-06f1b8e4.entry.js} +1 -1
- package/dist/ezui/{p-6d596a5a.entry.js → p-0b531233.entry.js} +1 -1
- package/dist/ezui/{p-5ab08b60.entry.js → p-129fea99.entry.js} +1 -1
- package/dist/ezui/{p-1bfef8e5.entry.js → p-13949839.entry.js} +1 -1
- package/dist/ezui/p-14d6aeb8.entry.js +1 -0
- package/dist/ezui/{p-2528e988.entry.js → p-169d460d.entry.js} +1 -1
- package/dist/ezui/{p-6f77a359.entry.js → p-1723f728.entry.js} +1 -1
- package/dist/ezui/{p-0c0eb410.entry.js → p-1d846a77.entry.js} +1 -1
- package/dist/ezui/{p-8bb3aeb0.entry.js → p-1d8ea7d2.entry.js} +1 -1
- package/dist/ezui/p-231cf227.entry.js +1 -0
- package/dist/ezui/{p-1266fe78.entry.js → p-26077a43.entry.js} +1 -1
- package/dist/ezui/{p-3fe05d6b.entry.js → p-2d803ee6.entry.js} +1 -1
- package/dist/ezui/{p-6f119d5f.entry.js → p-30513f10.entry.js} +1 -1
- package/dist/ezui/{p-2a70f094.entry.js → p-3136f418.entry.js} +1 -1
- package/dist/ezui/{p-ef8bd3e8.entry.js → p-35e3715c.entry.js} +1 -1
- package/dist/ezui/{p-1adf7139.entry.js → p-3b5bafe4.entry.js} +1 -1
- package/dist/ezui/p-3be7d8d8.entry.js +1 -0
- package/dist/ezui/p-4296e9f9.js +1 -0
- package/dist/ezui/{p-a7eab406.entry.js → p-43106b79.entry.js} +1 -1
- package/dist/ezui/{p-fa6732f2.entry.js → p-44b39e81.entry.js} +1 -1
- package/dist/ezui/{p-e46a4d06.entry.js → p-4815ddbf.entry.js} +1 -1
- package/dist/ezui/{p-d0e6911e.entry.js → p-4a530109.entry.js} +1 -1
- package/dist/ezui/{p-4d30b703.entry.js → p-4a876b8b.entry.js} +1 -1
- package/dist/ezui/{p-1cde96f9.entry.js → p-4cc79a52.entry.js} +1 -1
- package/dist/ezui/{p-e882635e.entry.js → p-4dc07e01.entry.js} +1 -1
- package/dist/ezui/{p-6369a0cd.entry.js → p-51e34317.entry.js} +1 -1
- package/dist/ezui/{p-eee3c7ff.entry.js → p-53412766.entry.js} +1 -1
- package/dist/ezui/{p-8dc267ff.entry.js → p-53e773a4.entry.js} +1 -1
- package/dist/ezui/{p-48effc69.entry.js → p-570cf58a.entry.js} +1 -1
- package/dist/ezui/p-580f5fb8.entry.js +1 -0
- package/dist/ezui/{p-0b333f09.entry.js → p-5d1adf13.entry.js} +1 -1
- package/dist/ezui/{p-dee18824.entry.js → p-5f4a66ec.entry.js} +1 -1
- package/dist/ezui/{p-1f50fa05.entry.js → p-6b51c9cc.entry.js} +1 -1
- package/dist/ezui/p-6ec40dec.entry.js +1 -0
- package/dist/ezui/{p-5ed81457.entry.js → p-6fc26622.entry.js} +1 -1
- package/dist/ezui/{p-e27d7dc2.entry.js → p-74f08ec9.entry.js} +1 -1
- package/dist/ezui/{p-d6f50207.entry.js → p-770cf2b8.entry.js} +1 -1
- package/dist/ezui/{p-124699e0.entry.js → p-77e738d5.entry.js} +1 -1
- package/dist/ezui/{p-91c9d50e.entry.js → p-78e975b4.entry.js} +1 -1
- package/dist/ezui/{p-59a98e31.entry.js → p-78f18973.entry.js} +1 -1
- package/dist/ezui/{p-957d08cd.entry.js → p-7fdf1f2b.entry.js} +1 -1
- package/dist/ezui/{p-1e7a8633.entry.js → p-81461d2f.entry.js} +1 -1
- package/dist/ezui/{p-8df1ca33.entry.js → p-82fa4b09.entry.js} +1 -1
- package/dist/ezui/{p-59092a66.entry.js → p-8aa7d60b.entry.js} +1 -1
- package/dist/ezui/{p-a3075f52.entry.js → p-9bcfa689.entry.js} +1 -1
- package/dist/ezui/{p-ba7e908a.entry.js → p-a48979a8.entry.js} +1 -1
- package/dist/ezui/{p-e8c6c973.entry.js → p-a859ea2e.entry.js} +1 -1
- package/dist/ezui/{p-d6742c1e.entry.js → p-a9432878.entry.js} +1 -1
- package/dist/ezui/{p-e8c57463.entry.js → p-b21efe83.entry.js} +1 -1
- package/dist/ezui/{p-6a9a20a0.entry.js → p-b3530711.entry.js} +1 -1
- package/dist/ezui/{p-4e1df756.entry.js → p-b5b33be8.entry.js} +1 -1
- package/dist/ezui/{p-2ba2d792.entry.js → p-b77a0ce4.entry.js} +1 -1
- package/dist/ezui/{p-7fe97ef5.entry.js → p-b7c6ce20.entry.js} +1 -1
- package/dist/ezui/p-b81d19c7.entry.js +1 -0
- package/dist/ezui/p-bb409cba.js +3 -0
- package/dist/ezui/p-bb7cf512.entry.js +1 -0
- package/dist/ezui/{p-a0bf1fc7.entry.js → p-bc693db6.entry.js} +1 -1
- package/dist/ezui/{p-9f5fa3f9.entry.js → p-c2b20f78.entry.js} +1 -1
- package/dist/ezui/{p-a401041c.entry.js → p-c73964f8.entry.js} +1 -1
- package/dist/ezui/{p-6020f3d5.entry.js → p-c754774e.entry.js} +1 -1
- package/dist/ezui/{p-d2645bdf.entry.js → p-c96e536d.entry.js} +1 -1
- package/dist/ezui/{p-d66bf34e.entry.js → p-cb4f1ee9.entry.js} +2 -2
- package/dist/ezui/{p-20c024f7.entry.js → p-cf33bc48.entry.js} +1 -1
- package/dist/ezui/{p-0e49c0ff.entry.js → p-cf4e2a35.entry.js} +1 -1
- package/dist/ezui/p-cff2434d.entry.js +1 -0
- package/dist/ezui/{p-9b2e6438.entry.js → p-d3779449.entry.js} +1 -1
- package/dist/ezui/{p-a80b1287.entry.js → p-dfca5946.entry.js} +1 -1
- package/dist/ezui/{p-7f792043.entry.js → p-e195eaad.entry.js} +1 -1
- package/dist/ezui/{p-79277e43.entry.js → p-e2eb894a.entry.js} +1 -1
- package/dist/ezui/{p-23a36bb6.js → p-e4c7eb39.js} +2 -2
- package/dist/ezui/{p-e7a7c594.entry.js → p-e9b409c1.entry.js} +1 -1
- package/dist/ezui/{p-e99cbb51.entry.js → p-f17e7182.entry.js} +1 -1
- package/dist/ezui/{p-a3ada561.entry.js → p-f26b97e9.entry.js} +1 -1
- package/dist/ezui/{p-411c0222.entry.js → p-f7ca8634.entry.js} +1 -1
- package/dist/types/components/ez-modal-container/ez-modal-container.d.ts +6 -2
- package/dist/types/components/ez-popup/ez-popup.d.ts +1 -0
- package/dist/types/components/ez-tree/ez-tree.d.ts +20 -1
- package/dist/types/components/ez-tree/types/Node.d.ts +1 -0
- package/dist/types/components/ez-tree/types/Tree.d.ts +1 -0
- package/dist/types/components/ez-tree/types/UpdateItemConfig.d.ts +4 -0
- package/dist/types/components.d.ts +26 -1
- package/dist/types/utils/form/FormMetadata.d.ts +2 -1
- package/dist/types/utils/form/interfaces/IFormSheetMetadata.d.ts +3 -0
- package/dist/types/utils/form/interfaces/ITabConfig.d.ts +3 -0
- package/package.json +1 -1
- package/dist/ezui/p-02f6e3b0.entry.js +0 -1
- package/dist/ezui/p-191cfbc8.entry.js +0 -1
- package/dist/ezui/p-228a4d2f.js +0 -3
- package/dist/ezui/p-2df50161.entry.js +0 -1
- package/dist/ezui/p-4c4f0850.entry.js +0 -1
- package/dist/ezui/p-623161e2.js +0 -1
- package/dist/ezui/p-bc2f844e.entry.js +0 -1
- package/dist/ezui/p-bd6146c5.entry.js +0 -1
- package/dist/ezui/p-c943f7c4.entry.js +0 -1
- package/dist/ezui/p-d8cc640d.entry.js +0 -1
|
@@ -7,11 +7,18 @@ import initI18n from '../../utils/i18n';
|
|
|
7
7
|
export class EzTree {
|
|
8
8
|
constructor() {
|
|
9
9
|
this._onItemClick = (item) => {
|
|
10
|
-
this.
|
|
10
|
+
if (!this.selectable) {
|
|
11
|
+
this.openClose(item);
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
if (this.value && this.value.id === item.id) {
|
|
15
|
+
this.value = undefined;
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
this.value = item;
|
|
11
19
|
};
|
|
12
20
|
this._onIconClick = (item) => {
|
|
13
21
|
this.openClose(item);
|
|
14
|
-
this.value = item;
|
|
15
22
|
};
|
|
16
23
|
this._tree = new Tree(() => forceUpdate(this));
|
|
17
24
|
this._waintingForLoad = undefined;
|
|
@@ -21,6 +28,7 @@ export class EzTree {
|
|
|
21
28
|
this.iconResolver = defaultIconResolver;
|
|
22
29
|
this.tooltipResolver = undefined;
|
|
23
30
|
this.enableHierarchicalFilter = true;
|
|
31
|
+
this.selectable = true;
|
|
24
32
|
}
|
|
25
33
|
/**
|
|
26
34
|
* Efetua a seleção de um item.
|
|
@@ -71,10 +79,14 @@ export class EzTree {
|
|
|
71
79
|
parentId = (_a = this.value) === null || _a === void 0 ? void 0 : _a.id;
|
|
72
80
|
}
|
|
73
81
|
this._tree.addChildAt(parentId, item);
|
|
82
|
+
this.addItemInIndexedList(parentId, item);
|
|
74
83
|
const node = this._tree.getNode(parentId);
|
|
75
84
|
if (node) {
|
|
76
85
|
node.item.expanded = true;
|
|
77
86
|
}
|
|
87
|
+
else {
|
|
88
|
+
this.collapseAll();
|
|
89
|
+
}
|
|
78
90
|
}
|
|
79
91
|
/**
|
|
80
92
|
* Efetua a seleção de um item.
|
|
@@ -97,12 +109,48 @@ export class EzTree {
|
|
|
97
109
|
/**
|
|
98
110
|
* Atualiza um item
|
|
99
111
|
*/
|
|
100
|
-
async updateItem(item) {
|
|
101
|
-
var _a;
|
|
102
|
-
|
|
112
|
+
async updateItem(item, config) {
|
|
113
|
+
var _a, _b, _c;
|
|
114
|
+
if (Array.isArray(item)) {
|
|
115
|
+
item.forEach(i => this.updateItem(i, config));
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
if (config === null || config === void 0 ? void 0 : config.updatedBySelectedId) {
|
|
119
|
+
Object.assign(item, { id: this.selectedId });
|
|
120
|
+
}
|
|
121
|
+
this._tree.updateItem((config === null || config === void 0 ? void 0 : config.forceDefaultValues) ? this.applyDefaultValues(item) : item);
|
|
122
|
+
this.updateItemInIndexedList(item, config === null || config === void 0 ? void 0 : config.forceDefaultValues);
|
|
103
123
|
const node = (_a = this._tree) === null || _a === void 0 ? void 0 : _a.getNode(this.selectedId);
|
|
104
124
|
if (node == undefined) {
|
|
105
125
|
this.value = this._visibleItems ? this._visibleItems[0] : undefined;
|
|
126
|
+
this._tree.collapseAll();
|
|
127
|
+
}
|
|
128
|
+
if (((_b = this.value) === null || _b === void 0 ? void 0 : _b.id) === item.id) {
|
|
129
|
+
this.value = item;
|
|
130
|
+
this.ezChange.emit(this.value);
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
const childSelected = this.getItemById((_c = this.value) === null || _c === void 0 ? void 0 : _c.id, [item]);
|
|
134
|
+
if (childSelected) {
|
|
135
|
+
this.value = childSelected;
|
|
136
|
+
this.ezChange.emit(this.value);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Remove um item da árvore pelo seu ID.
|
|
141
|
+
* Se o item removido estiver selecionado, a seleção será limpa.
|
|
142
|
+
*/
|
|
143
|
+
async removeItem(id) {
|
|
144
|
+
var _a;
|
|
145
|
+
id = id !== null && id !== void 0 ? id : this.selectedId;
|
|
146
|
+
if (!id) {
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
this._tree.removeItem(id);
|
|
150
|
+
this.removeItemFromIndexedList(id);
|
|
151
|
+
this.ezRemoveItem.emit(id);
|
|
152
|
+
if (((_a = this.value) === null || _a === void 0 ? void 0 : _a.id) === id) {
|
|
153
|
+
this.value = undefined;
|
|
106
154
|
}
|
|
107
155
|
}
|
|
108
156
|
/**
|
|
@@ -190,6 +238,75 @@ export class EzTree {
|
|
|
190
238
|
event.preventDefault();
|
|
191
239
|
}
|
|
192
240
|
}
|
|
241
|
+
getItemById(id, items) {
|
|
242
|
+
for (const treeItem of items) {
|
|
243
|
+
if (treeItem.id === id) {
|
|
244
|
+
return treeItem;
|
|
245
|
+
}
|
|
246
|
+
else if (treeItem.children && Array.isArray(treeItem.children)) {
|
|
247
|
+
const itemFound = this.getItemById(id, treeItem.children);
|
|
248
|
+
if (itemFound) {
|
|
249
|
+
return itemFound;
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
return undefined;
|
|
254
|
+
}
|
|
255
|
+
addItemInIndexedList(parentId, item, items) {
|
|
256
|
+
var _a, _b;
|
|
257
|
+
items = (_a = items !== null && items !== void 0 ? items : this.items) !== null && _a !== void 0 ? _a : [];
|
|
258
|
+
if (!parentId) {
|
|
259
|
+
items.push(item);
|
|
260
|
+
}
|
|
261
|
+
const itemFound = this.getItemById(parentId, items);
|
|
262
|
+
itemFound.children = ((_b = itemFound.children) !== null && _b !== void 0 ? _b : []);
|
|
263
|
+
itemFound.children.push(item);
|
|
264
|
+
itemFound.childrenCount = itemFound.children.length;
|
|
265
|
+
}
|
|
266
|
+
applyDefaultValues(item) {
|
|
267
|
+
if (item.disabled === undefined) {
|
|
268
|
+
item.disabled = false;
|
|
269
|
+
}
|
|
270
|
+
if (item.expanded === undefined) {
|
|
271
|
+
item.expanded = false;
|
|
272
|
+
}
|
|
273
|
+
return item;
|
|
274
|
+
}
|
|
275
|
+
updateItemInIndexedList(item, forceDefaultValues = false) {
|
|
276
|
+
if (!item || !this.items) {
|
|
277
|
+
return;
|
|
278
|
+
}
|
|
279
|
+
const itemFound = this.getItemById(item.id, this.items);
|
|
280
|
+
if (itemFound) {
|
|
281
|
+
Object.assign(itemFound, forceDefaultValues ? this.applyDefaultValues(item) : item);
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
removeItemFromIndexedList(id, items) {
|
|
285
|
+
var _a;
|
|
286
|
+
items = (_a = items !== null && items !== void 0 ? items : this.items) !== null && _a !== void 0 ? _a : [];
|
|
287
|
+
if (!id) {
|
|
288
|
+
return false;
|
|
289
|
+
}
|
|
290
|
+
const rootIndex = items.findIndex(item => item.id === id);
|
|
291
|
+
if (rootIndex !== -1) {
|
|
292
|
+
items.splice(rootIndex, 1);
|
|
293
|
+
return true;
|
|
294
|
+
}
|
|
295
|
+
for (const treeItem of items) {
|
|
296
|
+
if (treeItem.children && Array.isArray(treeItem.children)) {
|
|
297
|
+
const childIndex = treeItem.children.findIndex(child => child.id === id);
|
|
298
|
+
if (childIndex !== -1) {
|
|
299
|
+
treeItem.children.splice(childIndex, 1);
|
|
300
|
+
treeItem.childrenCount = treeItem.children.length;
|
|
301
|
+
return true;
|
|
302
|
+
}
|
|
303
|
+
if (this.removeItemFromIndexedList(id, treeItem.children)) {
|
|
304
|
+
return true;
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
return false;
|
|
309
|
+
}
|
|
193
310
|
getItemPathAttrs({ id, label }) {
|
|
194
311
|
return { id, label };
|
|
195
312
|
}
|
|
@@ -427,6 +544,24 @@ export class EzTree {
|
|
|
427
544
|
"attribute": "enable-hierarchical-filter",
|
|
428
545
|
"reflect": false,
|
|
429
546
|
"defaultValue": "true"
|
|
547
|
+
},
|
|
548
|
+
"selectable": {
|
|
549
|
+
"type": "boolean",
|
|
550
|
+
"mutable": false,
|
|
551
|
+
"complexType": {
|
|
552
|
+
"original": "boolean",
|
|
553
|
+
"resolved": "boolean",
|
|
554
|
+
"references": {}
|
|
555
|
+
},
|
|
556
|
+
"required": false,
|
|
557
|
+
"optional": false,
|
|
558
|
+
"docs": {
|
|
559
|
+
"tags": [],
|
|
560
|
+
"text": "Define se os itens da \u00E1rvore s\u00E3o selecion\u00E1veis."
|
|
561
|
+
},
|
|
562
|
+
"attribute": "selectable",
|
|
563
|
+
"reflect": false,
|
|
564
|
+
"defaultValue": "true"
|
|
430
565
|
}
|
|
431
566
|
};
|
|
432
567
|
}
|
|
@@ -497,6 +632,21 @@ export class EzTree {
|
|
|
497
632
|
}
|
|
498
633
|
}
|
|
499
634
|
}
|
|
635
|
+
}, {
|
|
636
|
+
"method": "ezRemoveItem",
|
|
637
|
+
"name": "ezRemoveItem",
|
|
638
|
+
"bubbles": true,
|
|
639
|
+
"cancelable": true,
|
|
640
|
+
"composed": true,
|
|
641
|
+
"docs": {
|
|
642
|
+
"tags": [],
|
|
643
|
+
"text": "Emitido ao remover um item da \u00E1rvore."
|
|
644
|
+
},
|
|
645
|
+
"complexType": {
|
|
646
|
+
"original": "string",
|
|
647
|
+
"resolved": "string",
|
|
648
|
+
"references": {}
|
|
649
|
+
}
|
|
500
650
|
}];
|
|
501
651
|
}
|
|
502
652
|
static get methods() {
|
|
@@ -662,10 +812,13 @@ export class EzTree {
|
|
|
662
812
|
},
|
|
663
813
|
"updateItem": {
|
|
664
814
|
"complexType": {
|
|
665
|
-
"signature": "(item: ITreeItem) => Promise<void>",
|
|
815
|
+
"signature": "(item: ITreeItem | ITreeItem[], config?: Partial<UpdateItemConfig>) => Promise<void>",
|
|
666
816
|
"parameters": [{
|
|
667
817
|
"tags": [],
|
|
668
818
|
"text": ""
|
|
819
|
+
}, {
|
|
820
|
+
"tags": [],
|
|
821
|
+
"text": ""
|
|
669
822
|
}],
|
|
670
823
|
"references": {
|
|
671
824
|
"Promise": {
|
|
@@ -674,6 +827,13 @@ export class EzTree {
|
|
|
674
827
|
"ITreeItem": {
|
|
675
828
|
"location": "import",
|
|
676
829
|
"path": "./interfaces/ITreeItem"
|
|
830
|
+
},
|
|
831
|
+
"Partial": {
|
|
832
|
+
"location": "global"
|
|
833
|
+
},
|
|
834
|
+
"UpdateItemConfig": {
|
|
835
|
+
"location": "import",
|
|
836
|
+
"path": "./types/UpdateItemConfig"
|
|
677
837
|
}
|
|
678
838
|
},
|
|
679
839
|
"return": "Promise<void>"
|
|
@@ -683,6 +843,25 @@ export class EzTree {
|
|
|
683
843
|
"tags": []
|
|
684
844
|
}
|
|
685
845
|
},
|
|
846
|
+
"removeItem": {
|
|
847
|
+
"complexType": {
|
|
848
|
+
"signature": "(id?: string) => Promise<void>",
|
|
849
|
+
"parameters": [{
|
|
850
|
+
"tags": [],
|
|
851
|
+
"text": ""
|
|
852
|
+
}],
|
|
853
|
+
"references": {
|
|
854
|
+
"Promise": {
|
|
855
|
+
"location": "global"
|
|
856
|
+
}
|
|
857
|
+
},
|
|
858
|
+
"return": "Promise<void>"
|
|
859
|
+
},
|
|
860
|
+
"docs": {
|
|
861
|
+
"text": "Remove um item da \u00E1rvore pelo seu ID.\nSe o item removido estiver selecionado, a sele\u00E7\u00E3o ser\u00E1 limpa.",
|
|
862
|
+
"tags": []
|
|
863
|
+
}
|
|
864
|
+
},
|
|
686
865
|
"getItem": {
|
|
687
866
|
"complexType": {
|
|
688
867
|
"signature": "(id: string) => Promise<ITreeItem>",
|
|
@@ -20,12 +20,15 @@ export const TreeItem = (props) => {
|
|
|
20
20
|
iconClick(treeItem);
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
+
function handleIconDoubleClick(event) {
|
|
24
|
+
event.stopPropagation();
|
|
25
|
+
}
|
|
23
26
|
return (h("ul", { class: level === 1 ? "first-level" : undefined }, h("li", Object.assign({ title: tooltipResolver(treeItem, !disabled, level), class: `tree-item ${treeItem.id !== selectedId ? "tree-item-error" : ""}`, onClick: () => available && itemClick(treeItem), onDblClick: () => available && itemDoubleClick(treeItem) }, {
|
|
24
27
|
disabled,
|
|
25
28
|
selected: treeItem.id === selectedId,
|
|
26
29
|
[ElementIDUtils.DATA_ELEMENT_ID_ATTRIBUTE_NAME]: ElementIDUtils.getInternalIDInfo(`ezTreeItem_${treeItem.id}`)
|
|
27
30
|
}), h("div", { class: "item-label-container" }, h("div", { class: "item-icon-box" }, expandable &&
|
|
28
|
-
h("ez-icon", { id: treeItem.id, class: "item-icon", size: "small", iconName: iconResolver(treeItem, expanded, level), onClick: (event) => handleIconClick(event) })), h("label", { class: `item-label ${treeItem.bold ? "item-label--bold" : ""}` }, treeItem.label)), getBadgeElement(treeItem.id, treeItem.badge, treeItem.id === selectedId)), expanded
|
|
31
|
+
h("ez-icon", { id: treeItem.id, class: "item-icon", size: "small", iconName: iconResolver(treeItem, expanded, level), onClick: (event) => handleIconClick(event), onDblClick: (event) => handleIconDoubleClick(event) })), h("label", { class: `item-label ${treeItem.bold ? "item-label--bold" : ""}` }, treeItem.label)), getBadgeElement(treeItem.id, treeItem.badge, treeItem.id === selectedId)), expanded
|
|
29
32
|
&& node.getChildren().map(child => h(TreeItem, { selectedId: selectedId, node: child, itemClick: itemClick, iconClick: iconClick, level: level + 1, iconResolver: iconResolver, tooltipResolver: tooltipResolver, itemsList: itemsList, itemDoubleClick: itemDoubleClick }))));
|
|
30
33
|
};
|
|
31
34
|
function getBadgeElement(itemId, badge, isSelectedItem) {
|
|
@@ -69,6 +69,13 @@ export class Node {
|
|
|
69
69
|
this.children.set(item.id, new Node(tree, item, this));
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
|
+
removeChild(id) {
|
|
73
|
+
if (this.children.has(id)) {
|
|
74
|
+
this.children.delete(id);
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
return false;
|
|
78
|
+
}
|
|
72
79
|
addPlaceHolder() {
|
|
73
80
|
this.children.clear();
|
|
74
81
|
const id = this.item.id;
|
|
@@ -9,6 +9,8 @@ export class Tree extends Node {
|
|
|
9
9
|
async addChildAt(parentId, item) {
|
|
10
10
|
const parent = this.getNode(parentId);
|
|
11
11
|
if (parent == undefined) {
|
|
12
|
+
this.addChild(this, item);
|
|
13
|
+
this._changeCallback();
|
|
12
14
|
return;
|
|
13
15
|
}
|
|
14
16
|
parent.addChild(this, item);
|
|
@@ -72,6 +74,23 @@ export class Tree extends Node {
|
|
|
72
74
|
}
|
|
73
75
|
this._changeCallback();
|
|
74
76
|
}
|
|
77
|
+
removeItem(id) {
|
|
78
|
+
if (!id) {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
const node = this.getNode(id);
|
|
82
|
+
if (!node) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
if (node.parent) {
|
|
86
|
+
node.parent.removeChild(id);
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
this.children.delete(id);
|
|
90
|
+
}
|
|
91
|
+
this._disabledValues.delete(id);
|
|
92
|
+
this._changeCallback();
|
|
93
|
+
}
|
|
75
94
|
async open(path) {
|
|
76
95
|
return new Promise(async (resolve) => {
|
|
77
96
|
await this.walkPath(this, path, node => node.item.expanded = true);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -120,7 +120,7 @@ export default class DataBinder {
|
|
|
120
120
|
clearFieldError(fieldName) {
|
|
121
121
|
var _a;
|
|
122
122
|
const field = (_a = this._fields.get(fieldName)) === null || _a === void 0 ? void 0 : _a.field;
|
|
123
|
-
if (field["errorMessage"]) {
|
|
123
|
+
if (field && field["errorMessage"]) {
|
|
124
124
|
field["errorMessage"] = "";
|
|
125
125
|
this._dataUnit.clearInvalid(this.getCurrentRecordId(), fieldName);
|
|
126
126
|
}
|
|
@@ -72,28 +72,59 @@ export const buildFormConfigFromDataUnit = (dataUnit) => {
|
|
|
72
72
|
.filter(descriptor => descriptor.visible !== false)
|
|
73
73
|
.map(descriptor => { return { name: descriptor.name, defaultValue: descriptor.defaultValue }; });
|
|
74
74
|
}
|
|
75
|
-
|
|
76
|
-
return config;
|
|
75
|
+
return { emptyConfig: false, fields };
|
|
77
76
|
};
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
if (
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
const defaultValues = {};
|
|
88
|
-
(_a = config === null || config === void 0 ? void 0 : config.tabs) === null || _a === void 0 ? void 0 : _a.forEach((tab) => {
|
|
89
|
-
if (!hiddenTabs.has(tab.label) && tab.visible === false) {
|
|
90
|
-
hiddenTabs.set(tab.label, tab);
|
|
77
|
+
function handleDetailTabs(dataUnit, config, sheets) {
|
|
78
|
+
const unitMD = dataUnit.metadata;
|
|
79
|
+
if (unitMD === undefined || unitMD.children === undefined)
|
|
80
|
+
return;
|
|
81
|
+
unitMD.children.forEach((child) => {
|
|
82
|
+
const tabConfig = getTabFromConfig(child.label, config);
|
|
83
|
+
if (tabConfig) {
|
|
84
|
+
sheets.set(Object.assign(tabConfig, { name: buildChildName(child), isDetail: true }), []);
|
|
85
|
+
return;
|
|
91
86
|
}
|
|
87
|
+
const { label, name, fields } = buildDetailSheet(child);
|
|
88
|
+
sheets.set({ name, label, isDetail: true }, fields);
|
|
92
89
|
});
|
|
93
|
-
|
|
90
|
+
}
|
|
91
|
+
function handleCustomTabs(customGuides, config, sheets) {
|
|
92
|
+
customGuides.forEach((guide) => {
|
|
93
|
+
const tabConfig = getTabFromConfig(guide.label, config);
|
|
94
|
+
const ctxProps = {};
|
|
95
|
+
Object.entries(guide).forEach(([key, value]) => {
|
|
96
|
+
if (!isReservedKey(key)) {
|
|
97
|
+
ctxProps[key] = value;
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
if (tabConfig) {
|
|
101
|
+
sheets.set(Object.assign(tabConfig, { name: guide.id, isCustom: true, ctxProps }), []);
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
const sheet = { label: guide.label, name: guide.id, isCustom: true, visible: true, ctxProps };
|
|
105
|
+
sheets.set(sheet, []);
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
function isReservedKey(key) {
|
|
109
|
+
return ['id', 'label'].includes(key);
|
|
110
|
+
}
|
|
111
|
+
function parseTabToFormSheet(key, fields) {
|
|
112
|
+
const i18n = getI18n();
|
|
113
|
+
return {
|
|
114
|
+
label: (key.label === "__main") ? i18n("ez-form.mainTab") : key.label,
|
|
115
|
+
name: key.name || key.label,
|
|
116
|
+
isCustom: key.isCustom,
|
|
117
|
+
isDetail: key.isDetail,
|
|
118
|
+
ctxProps: key.ctxProps,
|
|
119
|
+
fields
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
function handleFields(config, sheets, hiddenTabs, dataUnit, requiredFields, cleanOnCopyFields, defaultValues) {
|
|
123
|
+
var _a;
|
|
124
|
+
(_a = config === null || config === void 0 ? void 0 : config.fields) === null || _a === void 0 ? void 0 : _a.forEach((field) => {
|
|
94
125
|
var _a, _b, _c;
|
|
95
126
|
if (field.visible !== false) {
|
|
96
|
-
const tabConfig = getTabConfig(field.tab || "__main", sheets);
|
|
127
|
+
const tabConfig = getTabConfig(field.tab || "__main", sheets, config);
|
|
97
128
|
if (hiddenTabs.has(tabConfig.label)) {
|
|
98
129
|
return;
|
|
99
130
|
}
|
|
@@ -129,7 +160,8 @@ export const buildFormMetadata = (config, dataUnit, includeDetails = false) => {
|
|
|
129
160
|
defaultValue = value;
|
|
130
161
|
}
|
|
131
162
|
}
|
|
132
|
-
catch (_d) {
|
|
163
|
+
catch (_d) {
|
|
164
|
+
}
|
|
133
165
|
}
|
|
134
166
|
}
|
|
135
167
|
defaultValues[field.name] = defaultValue;
|
|
@@ -137,42 +169,82 @@ export const buildFormMetadata = (config, dataUnit, includeDetails = false) => {
|
|
|
137
169
|
}
|
|
138
170
|
}
|
|
139
171
|
});
|
|
172
|
+
}
|
|
173
|
+
export const buildFormMetadata = (config, dataUnit, includeDetails = false, customGuides) => {
|
|
174
|
+
var _a;
|
|
175
|
+
if (config == undefined || (config === null || config === void 0 ? void 0 : config.emptyConfig) === true) {
|
|
176
|
+
config = buildFormConfigFromDataUnit(dataUnit);
|
|
177
|
+
}
|
|
178
|
+
const sheets = new Map();
|
|
179
|
+
const hiddenTabs = new Map();
|
|
180
|
+
const requiredFields = [];
|
|
181
|
+
const cleanOnCopyFields = [];
|
|
182
|
+
const defaultValues = {};
|
|
183
|
+
const tabs = (_a = config === null || config === void 0 ? void 0 : config.tabs) !== null && _a !== void 0 ? _a : [];
|
|
184
|
+
tabs.forEach((tab) => {
|
|
185
|
+
if (!hiddenTabs.has(tab.label) && tab.visible === false) {
|
|
186
|
+
hiddenTabs.set(tab.label, tab);
|
|
187
|
+
}
|
|
188
|
+
});
|
|
189
|
+
handleFields(config, sheets, hiddenTabs, dataUnit, requiredFields, cleanOnCopyFields, defaultValues);
|
|
140
190
|
const metadata = new FormMetadata();
|
|
141
191
|
metadata.setDefaultVars(config.defaultVars);
|
|
142
192
|
if (includeDetails) {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
sheets.set({ name, label }, fields);
|
|
148
|
-
});
|
|
149
|
-
}
|
|
193
|
+
handleDetailTabs(dataUnit, config, sheets);
|
|
194
|
+
}
|
|
195
|
+
if (customGuides) {
|
|
196
|
+
handleCustomTabs(customGuides, config, sheets);
|
|
150
197
|
}
|
|
151
|
-
const i18n = getI18n();
|
|
152
198
|
Array.from(sheets.entries())
|
|
153
199
|
.sort(sortTabs)
|
|
154
|
-
.forEach(([
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
fields
|
|
159
|
-
});
|
|
200
|
+
.forEach(([tab, fields]) => {
|
|
201
|
+
if (!hiddenTabs.has(tab.label)) {
|
|
202
|
+
metadata.addSheet(parseTabToFormSheet(tab, fields));
|
|
203
|
+
}
|
|
160
204
|
});
|
|
161
205
|
metadata.addRequiredFields(requiredFields);
|
|
162
206
|
metadata.addCleanOnCopyFields(cleanOnCopyFields);
|
|
163
207
|
metadata.addDefaultValues(defaultValues);
|
|
164
208
|
return metadata;
|
|
165
209
|
};
|
|
166
|
-
const
|
|
167
|
-
|
|
210
|
+
const getTabFromConfig = (tab, config) => {
|
|
211
|
+
var _a;
|
|
212
|
+
if (!config) {
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
return (_a = config.tabs) === null || _a === void 0 ? void 0 : _a.find(t => t.label === tab);
|
|
216
|
+
};
|
|
217
|
+
const getTabConfig = (tab, sheets, config) => {
|
|
218
|
+
if (typeof tab !== "string") {
|
|
219
|
+
return tab;
|
|
220
|
+
}
|
|
221
|
+
if (config) {
|
|
222
|
+
const tabConfig = getTabFromConfig(tab, config);
|
|
223
|
+
if (tabConfig) {
|
|
224
|
+
return tabConfig;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
const tabConfig = Array.from(sheets.keys()).find(t => t.label === tab);
|
|
168
228
|
return tabConfig || { label: tab, visible: true };
|
|
169
229
|
};
|
|
170
|
-
|
|
171
|
-
|
|
230
|
+
function sortTabs(a, b) {
|
|
231
|
+
var _a, _b;
|
|
232
|
+
if (a[0].label === '__main' && b[0].label !== '__main') {
|
|
233
|
+
return -1;
|
|
234
|
+
}
|
|
235
|
+
if (a[0].label !== '__main' && b[0].label === '__main') {
|
|
236
|
+
return 1;
|
|
237
|
+
}
|
|
238
|
+
const aOrder = (_a = a[0].order) !== null && _a !== void 0 ? _a : Number.MAX_VALUE;
|
|
239
|
+
const bOrder = (_b = b[0].order) !== null && _b !== void 0 ? _b : Number.MAX_VALUE;
|
|
240
|
+
return aOrder - bOrder;
|
|
241
|
+
}
|
|
242
|
+
const buildChildName = (child) => {
|
|
243
|
+
return `child[${child.name}]`;
|
|
172
244
|
};
|
|
173
245
|
const buildDetailSheet = (child) => {
|
|
174
246
|
return {
|
|
175
|
-
name:
|
|
247
|
+
name: buildChildName(child),
|
|
176
248
|
label: child.label,
|
|
177
249
|
fields: []
|
|
178
250
|
};
|