@genexus/genexus-ide-ui 0.0.29 → 0.0.31
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/ch-action-group_2.cjs.entry.js +2 -9
- package/dist/cjs/ch-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/ch-dropdown-item.cjs.entry.js +8 -8
- package/dist/cjs/ch-dropdown.cjs.entry.js +11 -10
- package/dist/cjs/ch-suggest_4.cjs.entry.js +1 -0
- package/dist/cjs/ch-test-action-group.cjs.entry.js +2 -2
- package/dist/cjs/ch-test-tree-x.cjs.entry.js +150 -80
- package/dist/cjs/ch-tree-x_3.cjs.entry.js +211 -132
- package/dist/cjs/ch-window_2.cjs.entry.js +28 -12
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +3 -3
- package/dist/cjs/gxg-combo-box_6.cjs.entry.js +10 -4
- package/dist/cjs/gxg-date-picker.cjs.entry.js +4 -4
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/team-dev-commit/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.en.json +1 -1
- package/dist/collection/components/team-dev-commit/team-dev-commit.css +3 -0
- package/dist/collection/components/team-dev-commit/team-dev-commit.js +2 -2
- package/dist/components/action-group-item.js +1 -9
- package/dist/components/action-group.js +1 -1
- package/dist/components/ch-suggest2.js +1 -0
- package/dist/components/ch-test-action-group.js +2 -2
- package/dist/components/ch-test-tree-x.js +157 -83
- package/dist/components/ch-window2.js +31 -13
- package/dist/components/checkbox.js +1 -1
- package/dist/components/combo-box-item.js +2 -2
- package/dist/components/combo-box.js +8 -2
- package/dist/components/dropdown-item.js +8 -8
- package/dist/components/dropdown.js +11 -10
- package/dist/components/gx-ide-team-dev-commit.js +3 -3
- package/dist/components/gxg-date-picker.js +4 -4
- package/dist/components/tree-x-list-item.js +31 -17
- package/dist/components/tree-x-list.js +9 -4
- package/dist/components/tree-x.js +182 -117
- package/dist/esm/ch-action-group_2.entry.js +2 -9
- package/dist/esm/ch-checkbox.entry.js +1 -1
- package/dist/esm/ch-dropdown-item.entry.js +8 -8
- package/dist/esm/ch-dropdown.entry.js +11 -10
- package/dist/esm/ch-suggest_4.entry.js +1 -0
- package/dist/esm/ch-test-action-group.entry.js +2 -2
- package/dist/esm/ch-test-tree-x.entry.js +150 -80
- package/dist/esm/ch-tree-x_3.entry.js +211 -132
- package/dist/esm/ch-window_2.entry.js +28 -12
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-team-dev-commit.entry.js +3 -3
- package/dist/esm/gxg-combo-box_6.entry.js +10 -4
- package/dist/esm/gxg-date-picker.entry.js +4 -4
- package/dist/esm/loader.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.css +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/team-dev-commit/langs/team-dev-commit.lang.en.json +1 -1
- package/dist/genexus-ide-ui/p-1fe05a05.entry.js +1 -0
- package/dist/genexus-ide-ui/p-24f47ee2.entry.js +1 -0
- package/dist/genexus-ide-ui/{p-54bab171.entry.js → p-28d0afda.entry.js} +1 -1
- package/dist/genexus-ide-ui/{p-6050cdba.entry.js → p-48412811.entry.js} +1 -1
- package/dist/genexus-ide-ui/p-714bd8ea.entry.js +1 -0
- package/dist/genexus-ide-ui/p-8c2ab053.entry.js +1 -0
- package/dist/genexus-ide-ui/p-976e8118.entry.js +1 -0
- package/dist/genexus-ide-ui/p-a5463fc9.entry.js +1 -0
- package/dist/genexus-ide-ui/p-b54f448c.entry.js +1 -0
- package/dist/genexus-ide-ui/p-bb1809cb.entry.js +1 -0
- package/dist/genexus-ide-ui/p-cf41f154.entry.js +1 -0
- package/dist/genexus-ide-ui/p-e8a21ed7.entry.js +1 -0
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/action-group-item/action-group-item.css +0 -1
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/checkbox/checkbox.css +5 -3
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/dropdown/dropdown.css +15 -33
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/dropdown-item/dropdown-item.css +0 -4
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/test/test-tree-x.css +0 -10
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-x/tree-x.css +20 -3
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/tree-x-list-item/tree-x-list-item.css +25 -8
- package/dist/node_modules/@genexus/chameleon-controls-library/dist/collection/components/window/ch-window.css +51 -2
- package/dist/node_modules/@genexus/gemini/dist/collection/components/combo-box-item/combo-box-item.css +1 -1
- package/package.json +3 -3
- package/dist/genexus-ide-ui/p-097a3eeb.entry.js +0 -1
- package/dist/genexus-ide-ui/p-3d9a4ede.entry.js +0 -1
- package/dist/genexus-ide-ui/p-4bbe1c18.entry.js +0 -1
- package/dist/genexus-ide-ui/p-5c64c57f.entry.js +0 -1
- package/dist/genexus-ide-ui/p-5ff04ebe.entry.js +0 -1
- package/dist/genexus-ide-ui/p-757f8567.entry.js +0 -1
- package/dist/genexus-ide-ui/p-8d46f8d8.entry.js +0 -1
- package/dist/genexus-ide-ui/p-a0e85c2a.entry.js +0 -1
- package/dist/genexus-ide-ui/p-e4cac203.entry.js +0 -1
- package/dist/genexus-ide-ui/p-f8561da6.entry.js +0 -1
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { r as registerInstance, h, f as forceUpdate, H as Host } from './index-0da01575.js';
|
|
2
2
|
|
|
3
|
-
const testTreeXCss = "ch-test-tree-x{display:grid;grid-template-columns:350px max-content;grid-template-rows:1fr;height:100%}
|
|
3
|
+
const testTreeXCss = "ch-test-tree-x{display:grid;grid-template-columns:350px max-content;grid-template-rows:1fr;height:100%}.tree-buttons{display:grid;grid-auto-rows:max-content;row-gap:8px}:not(.ch-tree-x-dragging-item) ch-tree-x-list-item:not([selected])::part(header):hover{background-color:#e8e8e9}.ch-tree-x-list-item--drag-enter{background-color:#eee;box-shadow:inset 0 0 1px 0px black}.ch-tree-x-list-item--drag-enter[selected]::part(header){background-color:#eee}ch-tree-x-list-item::part(header){border:1px solid transparent}ch-tree-x-list-item[selected]::part(header){background-color:#cfdee6;border-color:#0266a0}ch-tree-x-list-item.ch-tree-x-list-item--editing::part(header){background-color:rgba(207, 222, 230, 0.5);border-color:transparent}ch-tree-x-list-item:not(.ch-tree-x-list-item--editing)::part(header):focus-visible{border-color:black;z-index:1}.ch-tree-x-drag-info{padding-inline:6px;padding-block:2px;background-color:#cfdee6;border:1px solid #0266a0;border-radius:10px;font-size:8px}";
|
|
4
4
|
|
|
5
5
|
const DEFAULT_EXPANDED_VALUE = false;
|
|
6
|
+
const DEFAULT_INDETERMINATE_VALUE = false;
|
|
6
7
|
const DEFAULT_LAZY_VALUE = false;
|
|
7
8
|
const DEFAULT_SELECTED_VALUE = false;
|
|
8
9
|
const ChTestTreeX = class {
|
|
@@ -26,18 +27,20 @@ const ChTestTreeX = class {
|
|
|
26
27
|
*/
|
|
27
28
|
this.multiSelection = false;
|
|
28
29
|
/**
|
|
29
|
-
*
|
|
30
|
+
* `true` to display the relation between tree items and tree lists using
|
|
30
31
|
* lines.
|
|
31
32
|
*/
|
|
32
|
-
this.showLines =
|
|
33
|
-
this.
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
33
|
+
this.showLines = "none";
|
|
34
|
+
this.handleDroppableZoneEnter = (event) => {
|
|
35
|
+
const dropInformation = event.detail;
|
|
36
|
+
if (!this.checkDroppableZoneCallback) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
const requestTimestamp = new Date().getTime();
|
|
40
|
+
const promise = this.checkDroppableZoneCallback(dropInformation);
|
|
41
|
+
promise.then(validDrop => {
|
|
42
|
+
this.treeRef.updateValidDroppableZone(requestTimestamp, dropInformation.newContainer.id, dropInformation.draggedItems, validDrop);
|
|
43
|
+
});
|
|
41
44
|
};
|
|
42
45
|
this.handleSelectedItemsChange = (event) => {
|
|
43
46
|
const itemsToProcess = new Map(event.detail);
|
|
@@ -64,22 +67,87 @@ const ChTestTreeX = class {
|
|
|
64
67
|
this.selectedItems.add(itemId);
|
|
65
68
|
});
|
|
66
69
|
};
|
|
67
|
-
this.
|
|
68
|
-
|
|
70
|
+
this.handleExpandedItemChange = (event) => {
|
|
71
|
+
const detail = event.detail;
|
|
72
|
+
const itemInfo = this.flattenedTreeModel.get(detail.id).item;
|
|
73
|
+
itemInfo.expanded = detail.expanded;
|
|
74
|
+
};
|
|
75
|
+
this.handleItemsDropped = (event) => {
|
|
76
|
+
const dataTransferInfo = event.detail;
|
|
77
|
+
const newContainer = dataTransferInfo.newContainer;
|
|
78
|
+
const newParentId = newContainer.id;
|
|
79
|
+
// Check if the parent exists in the UI Model
|
|
80
|
+
if (!this.flattenedTreeModel.get(newParentId)) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
const draggedItems = dataTransferInfo.draggedItems;
|
|
84
|
+
if (draggedItems.length === 0 || !this.dropItemsCallback) {
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
const promise = this.dropItemsCallback(dataTransferInfo);
|
|
88
|
+
this.waitDropProcessing = true;
|
|
89
|
+
promise.then(response => {
|
|
90
|
+
this.waitDropProcessing = false;
|
|
91
|
+
if (!response.acceptDrop) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
const newParentUIModel = this.flattenedTreeModel.get(newParentId).item;
|
|
95
|
+
// Only move the items to the new parent, keeping the state
|
|
96
|
+
if (dataTransferInfo.dropInTheSameTree) {
|
|
97
|
+
// Add the UI models to the new container and remove the UI models from
|
|
98
|
+
// the old containers
|
|
99
|
+
draggedItems.forEach(this.moveItemToNewParent(newParentUIModel));
|
|
100
|
+
}
|
|
101
|
+
// Add the new items
|
|
102
|
+
else {
|
|
103
|
+
if (response.items == null) {
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
// Add new items to the parent
|
|
107
|
+
newParentUIModel.items.push(...response.items);
|
|
108
|
+
// Flatten the new UI models
|
|
109
|
+
response.items.forEach(this.flattenItemUIModel(newParentUIModel));
|
|
110
|
+
}
|
|
111
|
+
this.sortItems(newParentUIModel.items);
|
|
112
|
+
// Open the item to visualize the new subitems
|
|
113
|
+
newParentUIModel.expanded = true;
|
|
114
|
+
// There is no need to force and update, since the waitDropProcessing
|
|
115
|
+
// prop was modified
|
|
116
|
+
});
|
|
117
|
+
};
|
|
118
|
+
this.moveItemToNewParent = (newParentUIModel) => (dataTransferInfo) => {
|
|
119
|
+
const itemUIModelExtended = this.flattenedTreeModel.get(dataTransferInfo.id);
|
|
120
|
+
const item = itemUIModelExtended.item;
|
|
121
|
+
const oldParentItem = itemUIModelExtended.parentItem;
|
|
122
|
+
// Remove the UI model from the previous parent
|
|
123
|
+
oldParentItem.items.splice(oldParentItem.items.indexOf(item), 1);
|
|
124
|
+
// Add the UI Model to the new parent
|
|
125
|
+
newParentUIModel.items.push(item);
|
|
126
|
+
// Reference the new parent in the item
|
|
127
|
+
itemUIModelExtended.parentItem = newParentUIModel;
|
|
69
128
|
};
|
|
70
|
-
|
|
71
|
-
// this.treeItemsModel = [];
|
|
72
|
-
// };
|
|
73
|
-
this.renderSubModel = (treeSubModel) => (h("ch-tree-x-list-item", { id: treeSubModel.id, caption: treeSubModel.caption, checkbox: treeSubModel.checkbox, checked: treeSubModel.checked, class: treeSubModel.class, disabled: treeSubModel.disabled, expanded: treeSubModel.expanded, lazyLoad: treeSubModel.lazy, leaf: treeSubModel.leaf, leftImgSrc: treeSubModel.leftImgSrc, rightImgSrc: treeSubModel.rightImgSrc, selected: treeSubModel.selected, showExpandableButton: treeSubModel.showExpandableButton, toggleCheckboxes: treeSubModel.toggleCheckboxes }, !treeSubModel.leaf &&
|
|
129
|
+
this.renderSubModel = (treeSubModel) => (h("ch-tree-x-list-item", { id: treeSubModel.id, caption: treeSubModel.caption, checkbox: treeSubModel.checkbox, checked: treeSubModel.checked, class: treeSubModel.class, disabled: treeSubModel.disabled, expanded: treeSubModel.expanded, indeterminate: treeSubModel.indeterminate, lazyLoad: treeSubModel.lazy, leaf: treeSubModel.leaf, leftImgSrc: treeSubModel.leftImgSrc, metadata: treeSubModel.metadata, rightImgSrc: treeSubModel.rightImgSrc, selected: treeSubModel.selected, showExpandableButton: treeSubModel.showExpandableButton, toggleCheckboxes: treeSubModel.toggleCheckboxes }, !treeSubModel.leaf &&
|
|
74
130
|
treeSubModel.items != null &&
|
|
75
131
|
treeSubModel.items.length !== 0 && (h("ch-tree-x-list", { slot: "tree" }, treeSubModel.items.map(this.renderSubModel)))));
|
|
76
|
-
this.
|
|
77
|
-
|
|
78
|
-
this.
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
132
|
+
this.flattenItemUIModel = (parentModel) => (item) => {
|
|
133
|
+
var _a, _b, _c, _d;
|
|
134
|
+
this.flattenedTreeModel.set(item.id, {
|
|
135
|
+
parentItem: parentModel,
|
|
136
|
+
item: item
|
|
137
|
+
});
|
|
138
|
+
// Make sure the properties are with their default values to avoid issues
|
|
139
|
+
// when reusing DOM nodes
|
|
140
|
+
(_a = item.expanded) !== null && _a !== void 0 ? _a : (item.expanded = DEFAULT_EXPANDED_VALUE);
|
|
141
|
+
(_b = item.indeterminate) !== null && _b !== void 0 ? _b : (item.indeterminate = DEFAULT_INDETERMINATE_VALUE);
|
|
142
|
+
(_c = item.lazy) !== null && _c !== void 0 ? _c : (item.lazy = DEFAULT_LAZY_VALUE);
|
|
143
|
+
(_d = item.selected) !== null && _d !== void 0 ? _d : (item.selected = DEFAULT_SELECTED_VALUE);
|
|
144
|
+
if (item.lazy) {
|
|
145
|
+
this.flattenedLazyTreeModel.set(item.id, item);
|
|
146
|
+
}
|
|
147
|
+
if (item.selected) {
|
|
148
|
+
this.selectedItems.add(item.id);
|
|
149
|
+
}
|
|
150
|
+
this.flattenSubModel(item);
|
|
83
151
|
};
|
|
84
152
|
}
|
|
85
153
|
handleTreeModelChange() {
|
|
@@ -108,45 +176,65 @@ const ChTestTreeX = class {
|
|
|
108
176
|
// expand the items, we have to delegate the responsibility to the tree-x
|
|
109
177
|
this.treeRef.scrollIntoVisible(treeItemId);
|
|
110
178
|
}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
179
|
+
/**
|
|
180
|
+
* This method is used to toggle a tree item by the tree item id/ids.
|
|
181
|
+
*
|
|
182
|
+
* @param treeItemIds An array id the tree items to be toggled.
|
|
183
|
+
* @param expand A boolean indicating that the tree item should be expanded or collapsed. (optional)
|
|
184
|
+
* @returns The modified items after the method was called.
|
|
185
|
+
*/
|
|
186
|
+
async toggleItems(treeItemIds, expand) {
|
|
187
|
+
if (!treeItemIds) {
|
|
188
|
+
return [];
|
|
118
189
|
}
|
|
119
|
-
const
|
|
120
|
-
|
|
121
|
-
|
|
190
|
+
const modifiedTreeItems = [];
|
|
191
|
+
treeItemIds.forEach(treeItemId => {
|
|
192
|
+
const itemInfo = this.flattenedTreeModel.get(treeItemId).item;
|
|
193
|
+
if (itemInfo) {
|
|
194
|
+
itemInfo.expanded = expand !== null && expand !== void 0 ? expand : !itemInfo.expanded;
|
|
195
|
+
modifiedTreeItems.push({
|
|
196
|
+
id: itemInfo.id,
|
|
197
|
+
expanded: itemInfo.expanded
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
});
|
|
201
|
+
// Force re-render
|
|
202
|
+
forceUpdate(this);
|
|
203
|
+
return modifiedTreeItems;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Given a subset of item's properties, it updates all item UI models.
|
|
207
|
+
*/
|
|
208
|
+
async updateAllItemsProperties(properties) {
|
|
209
|
+
[...this.flattenedTreeModel.values()].forEach(itemUIModel => {
|
|
210
|
+
if (properties.expanded != null) {
|
|
211
|
+
itemUIModel.item.expanded = properties.expanded;
|
|
212
|
+
}
|
|
213
|
+
if (properties.checked != null) {
|
|
214
|
+
itemUIModel.item.checked = properties.checked;
|
|
215
|
+
itemUIModel.item.indeterminate = false;
|
|
216
|
+
}
|
|
217
|
+
});
|
|
218
|
+
forceUpdate(this);
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Given a item list and the properties to update, it updates the properties
|
|
222
|
+
* of the items in the list.
|
|
223
|
+
*/
|
|
224
|
+
async updateItemsProperties(items, properties) {
|
|
225
|
+
items.forEach(item => {
|
|
226
|
+
const itemUIModel = this.flattenedTreeModel.get(item);
|
|
227
|
+
this.updateItemProperty(itemUIModel, properties);
|
|
228
|
+
});
|
|
229
|
+
forceUpdate(this);
|
|
230
|
+
}
|
|
231
|
+
updateItemProperty(itemUIModel, properties) {
|
|
232
|
+
if (!itemUIModel) {
|
|
122
233
|
return;
|
|
123
234
|
}
|
|
124
|
-
const
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
this.waitDropProcessing = false;
|
|
128
|
-
if (!acceptDrop) {
|
|
129
|
-
return;
|
|
130
|
-
}
|
|
131
|
-
const newParentItem = this.flattenedTreeModel.get(dropItemId).item;
|
|
132
|
-
// Add the UI models to the new container and remove the UI models from
|
|
133
|
-
// the old containers
|
|
134
|
-
draggedIds.forEach(itemId => {
|
|
135
|
-
const itemUIModelExtended = this.flattenedTreeModel.get(itemId);
|
|
136
|
-
const item = itemUIModelExtended.item;
|
|
137
|
-
const oldParentItem = itemUIModelExtended.parentItem;
|
|
138
|
-
// Remove the UI model from the previous parent
|
|
139
|
-
oldParentItem.items.splice(oldParentItem.items.indexOf(item), 1);
|
|
140
|
-
// Add the UI Model to the new parent
|
|
141
|
-
newParentItem.items.push(item);
|
|
142
|
-
// Reference the new parent in the item
|
|
143
|
-
itemUIModelExtended.parentItem = newParentItem;
|
|
144
|
-
});
|
|
145
|
-
this.sortItems(newParentItem.items);
|
|
146
|
-
// Open the item to visualize the new subitems
|
|
147
|
-
newParentItem.expanded = true;
|
|
148
|
-
// There is no need to force and update, since the waitDropProcessing
|
|
149
|
-
// prop was modified
|
|
235
|
+
const itemInfo = itemUIModel.item;
|
|
236
|
+
Object.keys(properties).forEach(propertyName => {
|
|
237
|
+
itemInfo[propertyName] = properties[propertyName];
|
|
150
238
|
});
|
|
151
239
|
}
|
|
152
240
|
loadLazyChildrenHandler(event) {
|
|
@@ -216,25 +304,7 @@ const ChTestTreeX = class {
|
|
|
216
304
|
return;
|
|
217
305
|
}
|
|
218
306
|
this.sortItems(items);
|
|
219
|
-
items.forEach(
|
|
220
|
-
var _a, _b, _c;
|
|
221
|
-
this.flattenedTreeModel.set(item.id, {
|
|
222
|
-
parentItem: model,
|
|
223
|
-
item: item
|
|
224
|
-
});
|
|
225
|
-
// Make sure the properties are with their default values to avoid issues
|
|
226
|
-
// when reusing DOM nodes
|
|
227
|
-
(_a = item.expanded) !== null && _a !== void 0 ? _a : (item.expanded = DEFAULT_EXPANDED_VALUE);
|
|
228
|
-
(_b = item.lazy) !== null && _b !== void 0 ? _b : (item.lazy = DEFAULT_LAZY_VALUE);
|
|
229
|
-
(_c = item.selected) !== null && _c !== void 0 ? _c : (item.selected = DEFAULT_SELECTED_VALUE);
|
|
230
|
-
if (item.lazy) {
|
|
231
|
-
this.flattenedLazyTreeModel.set(item.id, item);
|
|
232
|
-
}
|
|
233
|
-
if (item.selected) {
|
|
234
|
-
this.selectedItems.add(item.id);
|
|
235
|
-
}
|
|
236
|
-
this.flattenSubModel(item);
|
|
237
|
-
});
|
|
307
|
+
items.forEach(this.flattenItemUIModel(model));
|
|
238
308
|
}
|
|
239
309
|
sortItems(items) {
|
|
240
310
|
// Ensure that items are sorted
|
|
@@ -251,7 +321,7 @@ const ChTestTreeX = class {
|
|
|
251
321
|
this.flattenModel();
|
|
252
322
|
}
|
|
253
323
|
render() {
|
|
254
|
-
return (h(Host, null, h("
|
|
324
|
+
return (h(Host, null, h("ch-tree-x", { multiSelection: this.multiSelection, showLines: this.showLines, waitDropProcessing: this.waitDropProcessing, onDroppableZoneEnter: this.handleDroppableZoneEnter, onExpandedItemChange: this.handleExpandedItemChange, onItemsDropped: this.handleItemsDropped, onSelectedItemsChange: this.handleSelectedItemsChange, ref: el => (this.treeRef = el) }, h("ch-tree-x-list", null, this.treeModel.items.map(this.renderSubModel))), h("div", { class: "tree-buttons" })));
|
|
255
325
|
}
|
|
256
326
|
static get watchers() { return {
|
|
257
327
|
"treeModel": ["handleTreeModelChange"]
|