@wavemaker/app-ng-runtime 11.4.2-next.25743 → 11.4.2-next.25745
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.
- app-ng-runtime/components/basic/tree/bundles/index.umd.js +93 -216
- app-ng-runtime/components/basic/tree/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/basic/tree/esm2015/tree.component.js +94 -185
- app-ng-runtime/components/basic/tree/fesm2015/index.js +93 -184
- app-ng-runtime/components/basic/tree/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/basic/tree/index.metadata.json +1 -1
- app-ng-runtime/components/basic/tree/tree.component.d.ts +20 -20
- app-ng-runtime/components/chart/bundles/index.umd.js +7 -1
- app-ng-runtime/components/chart/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/chart/esm2015/chart.component.js +8 -2
- app-ng-runtime/components/chart/fesm2015/index.js +7 -1
- app-ng-runtime/components/chart/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/chart/index.metadata.json +1 -1
- app-ng-runtime/components/data/form/bundles/index.umd.js +9 -3
- app-ng-runtime/components/data/form/bundles/index.umd.js.map +1 -1
- app-ng-runtime/components/data/form/esm2015/form.component.js +11 -5
- app-ng-runtime/components/data/form/fesm2015/index.js +10 -4
- app-ng-runtime/components/data/form/fesm2015/index.js.map +1 -1
- app-ng-runtime/components/data/form/index.metadata.json +1 -1
- app-ng-runtime/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Component, ViewEncapsulation, Injector, Attribute, NgModule } from '@angular/core';
|
|
2
2
|
import { CommonModule } from '@angular/common';
|
|
3
3
|
import { register, PROP_STRING, PROP_ANY, PROP_NUMBER, PROP_BOOLEAN, StylableComponent, styler, APPLY_STYLES_TYPE, getOrderedDataset, getEvaluatedData, provideAsWidgetRef, WmComponentsModule } from '@wm/components/base';
|
|
4
|
-
import { getClonedObject } from '@wm/core';
|
|
4
|
+
import { getClonedObject, $parseEvent } from '@wm/core';
|
|
5
5
|
|
|
6
6
|
const registerProps = () => {
|
|
7
7
|
register('wm-tree', new Map([
|
|
@@ -26,17 +26,17 @@ const registerProps = () => {
|
|
|
26
26
|
const WIDGET_INFO = { widgetType: 'wm-tree', hostClass: 'app-tree' };
|
|
27
27
|
const defaultTreeIconClass = 'plus-minus';
|
|
28
28
|
class TreeComponent extends StylableComponent {
|
|
29
|
-
constructor(inj, bindnodeid) {
|
|
29
|
+
constructor(inj, binddatavalue, bindnodelabel, bindnodeicon, bindnodechildren, bindnodeid) {
|
|
30
30
|
super(inj, WIDGET_INFO);
|
|
31
|
+
this.binddatavalue = binddatavalue;
|
|
32
|
+
this.bindnodelabel = bindnodelabel;
|
|
33
|
+
this.bindnodeicon = bindnodeicon;
|
|
34
|
+
this.bindnodechildren = bindnodechildren;
|
|
31
35
|
this.bindnodeid = bindnodeid;
|
|
32
36
|
this.setting = {
|
|
33
37
|
data: {
|
|
34
38
|
simpleData: {
|
|
35
39
|
enable: false
|
|
36
|
-
},
|
|
37
|
-
key: {
|
|
38
|
-
children: 'children',
|
|
39
|
-
name: 'label'
|
|
40
40
|
}
|
|
41
41
|
},
|
|
42
42
|
view: {
|
|
@@ -50,45 +50,45 @@ class TreeComponent extends StylableComponent {
|
|
|
50
50
|
callback: {}
|
|
51
51
|
};
|
|
52
52
|
styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER);
|
|
53
|
+
this.setting.view['nodeClasses'] = this.setNodeClasses;
|
|
54
|
+
this.setting.callback["onClick"] = this.onClick.bind(this);
|
|
55
|
+
this.setting.callback["onExpand"] = this.onExpand.bind(this);
|
|
56
|
+
this.setting.callback["onCollapse"] = this.onCollapse.bind(this);
|
|
53
57
|
}
|
|
54
58
|
onPropertyChange(key, nv, ov) {
|
|
55
59
|
switch (key) {
|
|
56
60
|
case 'dataset':
|
|
57
61
|
this.nodes = this.getNodes(nv);
|
|
58
|
-
if (this.level > 0) {
|
|
59
|
-
this.expandTree(this.level, this.nodes, 0);
|
|
60
|
-
}
|
|
61
62
|
this.renderTree();
|
|
62
63
|
break;
|
|
63
64
|
case 'levels':
|
|
64
|
-
|
|
65
|
-
this.level = nv;
|
|
66
|
-
}
|
|
65
|
+
this.level = nv;
|
|
67
66
|
this.renderTree();
|
|
68
67
|
break;
|
|
69
|
-
case '
|
|
70
|
-
this.
|
|
68
|
+
case 'nodeicon':
|
|
69
|
+
this.nodeicon = nv;
|
|
71
70
|
this.renderTree();
|
|
72
71
|
break;
|
|
73
72
|
case 'nodelabel':
|
|
74
|
-
this.
|
|
73
|
+
this.nodelabel = nv;
|
|
75
74
|
this.renderTree();
|
|
76
75
|
break;
|
|
77
76
|
case 'nodechildren':
|
|
78
|
-
this.
|
|
77
|
+
this.nodechildren = nv;
|
|
79
78
|
this.renderTree();
|
|
80
79
|
break;
|
|
81
|
-
case '
|
|
82
|
-
this.
|
|
80
|
+
case 'orderby':
|
|
81
|
+
this.orderby = nv;
|
|
83
82
|
this.renderTree();
|
|
84
83
|
break;
|
|
85
|
-
case '
|
|
84
|
+
case 'treeicons':
|
|
85
|
+
this.treeicons = nv;
|
|
86
86
|
this.renderTree();
|
|
87
87
|
break;
|
|
88
88
|
case 'class':
|
|
89
89
|
this.treeClass = nv;
|
|
90
|
+
this.setTreeTemplate(this.treeClass);
|
|
90
91
|
this.renderTree();
|
|
91
|
-
break;
|
|
92
92
|
default:
|
|
93
93
|
super.onPropertyChange(key, nv, ov);
|
|
94
94
|
break;
|
|
@@ -97,9 +97,9 @@ class TreeComponent extends StylableComponent {
|
|
|
97
97
|
// expands the tree nodes if the property is selected.
|
|
98
98
|
expandTree(level, node, childLevel) {
|
|
99
99
|
node.map(childNode => {
|
|
100
|
-
const children =
|
|
101
|
-
if (children &&
|
|
102
|
-
childNode
|
|
100
|
+
const children = childNode.children;
|
|
101
|
+
if (children && childLevel < level) {
|
|
102
|
+
childNode.open = true;
|
|
103
103
|
this.expandTree(level, children, childLevel + 1);
|
|
104
104
|
}
|
|
105
105
|
else {
|
|
@@ -110,14 +110,15 @@ class TreeComponent extends StylableComponent {
|
|
|
110
110
|
}
|
|
111
111
|
// sets the template for the tree based on the property selected.
|
|
112
112
|
setTreeTemplate(value) {
|
|
113
|
-
|
|
113
|
+
const classList = value.split(" ");
|
|
114
|
+
if (classList.includes('Classic')) {
|
|
114
115
|
this.setting.check["enable"] = false;
|
|
115
116
|
}
|
|
116
|
-
else if (
|
|
117
|
+
else if (classList.includes('Checkbox')) {
|
|
117
118
|
this.setting.check["enable"] = true;
|
|
118
119
|
this.setting.check["chkStyle"] = 'checkbox';
|
|
119
120
|
}
|
|
120
|
-
else if (
|
|
121
|
+
else if (classList.includes('Radio')) {
|
|
121
122
|
this.setting.check["enable"] = true;
|
|
122
123
|
this.setting.check["chkStyle"] = 'radio';
|
|
123
124
|
this.setting.check["radioType"] = "all";
|
|
@@ -149,52 +150,10 @@ class TreeComponent extends StylableComponent {
|
|
|
149
150
|
return nodes;
|
|
150
151
|
}
|
|
151
152
|
// adds class to the nodes inorder to add icons to respective node.
|
|
152
|
-
|
|
153
|
+
setNodeClasses(treeId, treeNode) {
|
|
153
154
|
return treeNode.icon ? { add: [`${treeNode.icon}`] } : '';
|
|
154
155
|
}
|
|
155
156
|
;
|
|
156
|
-
// Sets the node label with any icon if bound to
|
|
157
|
-
setNodeData(nodes, depth, level, parentNode, type) {
|
|
158
|
-
if (depth === 0) {
|
|
159
|
-
nodes.map(node => {
|
|
160
|
-
const children = this.getChildren(node);
|
|
161
|
-
if (children) {
|
|
162
|
-
this.setNodeData(children, depth, level, parentNode, type);
|
|
163
|
-
}
|
|
164
|
-
if (node.icon && this.nodelabel == 'icon') {
|
|
165
|
-
node[type] = node.icon;
|
|
166
|
-
}
|
|
167
|
-
else if (node.name && this.nodelabel == 'name') {
|
|
168
|
-
node[type] = node.name;
|
|
169
|
-
}
|
|
170
|
-
else {
|
|
171
|
-
return;
|
|
172
|
-
}
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
else {
|
|
176
|
-
nodes.map(node => {
|
|
177
|
-
const children = this.getChildren(node);
|
|
178
|
-
if (children && level > 1) {
|
|
179
|
-
if (depth === level) {
|
|
180
|
-
parentNode = node;
|
|
181
|
-
}
|
|
182
|
-
this.setNodeData(children, depth, level - 1, parentNode, type);
|
|
183
|
-
}
|
|
184
|
-
if (level === 1 && (type === "name" ? this.nodelabel.includes("label") || this.nodelabel.includes("name") : this.nodeicon.includes("label") || this.nodeicon.includes("name"))) {
|
|
185
|
-
parentNode[type] = node.name || node.label;
|
|
186
|
-
return;
|
|
187
|
-
}
|
|
188
|
-
else if (level === 1 && (node.icon !== undefined) && (type === "name" ? this.nodelabel.includes("icon") : this.nodeicon.includes("icon"))) {
|
|
189
|
-
parentNode[type] = node.icon;
|
|
190
|
-
return;
|
|
191
|
-
}
|
|
192
|
-
else {
|
|
193
|
-
return;
|
|
194
|
-
}
|
|
195
|
-
});
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
157
|
// adds tree icons to the nodes on load of the tree
|
|
199
158
|
changeTreeIcons(nv) {
|
|
200
159
|
let eleClose = $('ul[name="' + this.name + '"] li span.button.switch');
|
|
@@ -207,19 +166,20 @@ class TreeComponent extends StylableComponent {
|
|
|
207
166
|
});
|
|
208
167
|
});
|
|
209
168
|
}
|
|
169
|
+
// Returns the node path
|
|
210
170
|
getPath(treeNode, path) {
|
|
211
171
|
if (treeNode.getParentNode() === null) {
|
|
212
|
-
path = "/" + treeNode
|
|
172
|
+
path = "/" + treeNode.name + path;
|
|
213
173
|
}
|
|
214
174
|
else {
|
|
215
|
-
path = this.getPath(treeNode.getParentNode(), path) + "/" + treeNode
|
|
175
|
+
path = this.getPath(treeNode.getParentNode(), path) + "/" + treeNode.name;
|
|
216
176
|
}
|
|
217
177
|
return path;
|
|
218
178
|
}
|
|
219
179
|
// binds the click event to all nodes to open the child nodes
|
|
220
180
|
onClick(event, treeId, treeNode, clickFlag) {
|
|
221
181
|
if (this.nodeclick === "expand") {
|
|
222
|
-
var nodes = this.
|
|
182
|
+
var nodes = this.zTree.getSelectedNodes();
|
|
223
183
|
if (nodes.length > 0) {
|
|
224
184
|
this.expandNode(nodes[0], !nodes[0].open, true);
|
|
225
185
|
}
|
|
@@ -232,18 +192,18 @@ class TreeComponent extends StylableComponent {
|
|
|
232
192
|
let path = this.getPath(treeNode, "");
|
|
233
193
|
const eventParams = {
|
|
234
194
|
'$event': event,
|
|
235
|
-
"$item": treeNode,
|
|
195
|
+
"$item": getClonedObject(treeNode.data),
|
|
236
196
|
"$path": path
|
|
237
197
|
};
|
|
238
198
|
this.invokeEventCallback('expand', eventParams);
|
|
239
|
-
const children =
|
|
199
|
+
const children = treeNode.children;
|
|
240
200
|
children === null || children === void 0 ? void 0 : children.map((el) => {
|
|
241
201
|
if (el.isParent) {
|
|
242
202
|
let ele = $(`#${el.tId}_switch`);
|
|
243
|
-
$(ele).addClass(self.
|
|
203
|
+
$(ele).addClass(self.treeicons || defaultTreeIconClass);
|
|
244
204
|
$(ele).on("click", function (e) {
|
|
245
205
|
setTimeout(() => {
|
|
246
|
-
$(ele).addClass(self.
|
|
206
|
+
$(ele).addClass(self.treeicons || defaultTreeIconClass);
|
|
247
207
|
}, 0);
|
|
248
208
|
});
|
|
249
209
|
}
|
|
@@ -253,119 +213,54 @@ class TreeComponent extends StylableComponent {
|
|
|
253
213
|
let path = this.getPath(treeNode, "");
|
|
254
214
|
const eventParams = {
|
|
255
215
|
'$event': event,
|
|
256
|
-
"$item": treeNode,
|
|
216
|
+
"$item": getClonedObject(treeNode.data),
|
|
257
217
|
"$path": path
|
|
258
218
|
};
|
|
259
219
|
this.invokeEventCallback('collapse', eventParams);
|
|
260
220
|
}
|
|
261
|
-
getChildren(node) {
|
|
262
|
-
return node[this.childrenKey];
|
|
263
|
-
}
|
|
264
|
-
get childrenKey() {
|
|
265
|
-
if (!this.nodechildren) {
|
|
266
|
-
return 'children';
|
|
267
|
-
}
|
|
268
|
-
const depth = this.countDepth(this.nodechildren);
|
|
269
|
-
return depth ? this.nodechildren.split('.').pop() : this.nodechildren;
|
|
270
|
-
}
|
|
271
|
-
get labelKey() {
|
|
272
|
-
if (!this.nodelabel) {
|
|
273
|
-
return 'label';
|
|
274
|
-
}
|
|
275
|
-
const depth = this.countDepth(this.nodelabel);
|
|
276
|
-
return depth ? this.nodelabel.split('.').pop() : this.nodelabel;
|
|
277
|
-
}
|
|
278
|
-
get iconKey() {
|
|
279
|
-
if (!this.nodeicon) {
|
|
280
|
-
return 'icon';
|
|
281
|
-
}
|
|
282
|
-
const depth = this.countDepth(this.nodeicon);
|
|
283
|
-
return depth ? this.nodeicon.split('.').pop() : this.nodeicon;
|
|
284
|
-
}
|
|
285
|
-
get treeObj() {
|
|
286
|
-
return $.fn.zTree.getZTreeObj(`${this.name}`);
|
|
287
|
-
}
|
|
288
221
|
// function to support backward compatibility of objects
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
const
|
|
293
|
-
|
|
294
|
-
|
|
222
|
+
constructZTreeData(data, zTreeData) {
|
|
223
|
+
data.forEach(node => {
|
|
224
|
+
const zNode = {};
|
|
225
|
+
const name = getEvaluatedData(node, { field: this.nodelabel, bindExpression: this.bindnodelabel }, this.viewParent) || node.label;
|
|
226
|
+
const icon = getEvaluatedData(node, { field: this.nodeicon, bindExpression: this.bindnodeicon }, this.viewParent) || node.icon;
|
|
227
|
+
const nodeId = getEvaluatedData(node, { field: this.nodeid, bindExpression: this.bindnodeid }, this.viewParent);
|
|
228
|
+
const children = getEvaluatedData(node, { field: this.nodechildren, bindExpression: this.bindnodechildren }, this.viewParent) || node.children;
|
|
229
|
+
zNode['name'] = name;
|
|
230
|
+
zNode['icon'] = icon;
|
|
231
|
+
zNode['nodeId'] = nodeId;
|
|
232
|
+
zNode['data'] = getClonedObject(node);
|
|
233
|
+
if (_.isArray(children) && children.length) {
|
|
234
|
+
zNode['children'] = [];
|
|
235
|
+
this.constructZTreeData(children, zNode['children']);
|
|
295
236
|
}
|
|
237
|
+
zTreeData.push(zNode);
|
|
296
238
|
});
|
|
297
239
|
}
|
|
298
|
-
// sets the node children property to parent nodes
|
|
299
|
-
setNodeChildren(nodes, depth, level, parentNode) {
|
|
300
|
-
if (depth <= 0) {
|
|
301
|
-
return nodes;
|
|
302
|
-
}
|
|
303
|
-
for (let i = 0; i < nodes.length; i++) {
|
|
304
|
-
const node = nodes[i];
|
|
305
|
-
if (depth === level) {
|
|
306
|
-
parentNode = nodes[i];
|
|
307
|
-
}
|
|
308
|
-
const children = this.getChildren(node);
|
|
309
|
-
if (children === null || children === void 0 ? void 0 : children.length) {
|
|
310
|
-
if (level === 1) {
|
|
311
|
-
parentNode[this.childrenKey] = children.map(child => ({ [this.labelKey]: child[this.labelKey], [this.childrenKey]: this.getChildren(child), icon: child[this.iconKey] }));
|
|
312
|
-
return;
|
|
313
|
-
}
|
|
314
|
-
else {
|
|
315
|
-
this.setNodeChildren(children, depth, level - 1, parentNode);
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
|
-
}
|
|
319
|
-
return nodes;
|
|
320
|
-
}
|
|
321
|
-
countDepth(str) {
|
|
322
|
-
const regex = /\[.*?\]/g;
|
|
323
|
-
let matches = str.match(regex);
|
|
324
|
-
let count = 1;
|
|
325
|
-
if (matches === null)
|
|
326
|
-
return count;
|
|
327
|
-
for (let match of matches) {
|
|
328
|
-
count++;
|
|
329
|
-
}
|
|
330
|
-
return count;
|
|
331
|
-
}
|
|
332
240
|
// Renders the tree on to the dom
|
|
333
241
|
renderTree() {
|
|
334
|
-
|
|
242
|
+
var _a;
|
|
243
|
+
this.zTreeNodes = [];
|
|
244
|
+
if ((_a = this.nodes) === null || _a === void 0 ? void 0 : _a.length) {
|
|
335
245
|
this.nativeElement.setAttribute('id', this.name);
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
this.setTreeTemplate(this.treeClass);
|
|
340
|
-
if (this.nodelabel) {
|
|
341
|
-
let depth = 0;
|
|
342
|
-
if (this.nodelabel.includes("children")) {
|
|
343
|
-
depth = this.countDepth(this.nodelabel);
|
|
344
|
-
}
|
|
345
|
-
this.setNodeData(this.nodes, depth, depth, null, "name");
|
|
346
|
-
}
|
|
347
|
-
if (this.nodeicon) {
|
|
348
|
-
let depth = 0;
|
|
349
|
-
if (this.nodeicon.includes("children")) {
|
|
350
|
-
depth = this.countDepth(this.nodeicon);
|
|
351
|
-
}
|
|
352
|
-
this.setNodeData(this.nodes, depth, depth, null, "icon");
|
|
353
|
-
}
|
|
354
|
-
if (this.nodechildren) {
|
|
355
|
-
let depth = this.countDepth(this.nodechildren);
|
|
356
|
-
if (depth > 1) {
|
|
357
|
-
this.nodes = this.setNodeChildren(this.nodes, depth, depth, null);
|
|
358
|
-
}
|
|
246
|
+
this.constructZTreeData(this.nodes, this.zTreeNodes);
|
|
247
|
+
if (this.level > 0) {
|
|
248
|
+
this.expandTree(this.level, this.zTreeNodes, 0);
|
|
359
249
|
}
|
|
360
250
|
}
|
|
361
|
-
this.
|
|
362
|
-
this.
|
|
363
|
-
this.setting.callback["onExpand"] = this.onExpand.bind(this);
|
|
364
|
-
this.setting.callback["onCollapse"] = this.onCollapse.bind(this);
|
|
365
|
-
let zTree = $.fn.zTree.init($('ul[name="' + this.name + '"]'), this.setting, this.nodes);
|
|
366
|
-
$.fn.zTreeKeyboardNavigation(zTree, $('ul[name="' + this.name + '"]'), null, this.treeicon || defaultTreeIconClass);
|
|
251
|
+
this.zTree = $.fn.zTree.init($('ul[name="' + this.name + '"]'), this.setting, this.zTreeNodes);
|
|
252
|
+
$.fn.zTreeKeyboardNavigation(this.zTree, $('ul[name="' + this.name + '"]'), null, this.treeicons || defaultTreeIconClass);
|
|
367
253
|
this.postRenderTree();
|
|
368
254
|
}
|
|
255
|
+
setChecked(zNode, node) {
|
|
256
|
+
node.checked = zNode.checked;
|
|
257
|
+
const children = getEvaluatedData(node, { field: this.nodechildren, bindExpression: this.bindnodechildren }, this.viewParent) || node.children;
|
|
258
|
+
if (children === null || children === void 0 ? void 0 : children.length) {
|
|
259
|
+
children.forEach((node, index) => {
|
|
260
|
+
this.setChecked(zNode.children[index], node);
|
|
261
|
+
});
|
|
262
|
+
}
|
|
263
|
+
}
|
|
369
264
|
selectNode(event, node) {
|
|
370
265
|
const deSelectElm = $(`.app-tree[name=${this.name}] li[treenode].selected`);
|
|
371
266
|
deSelectElm.removeClass('selected');
|
|
@@ -374,26 +269,35 @@ class TreeComponent extends StylableComponent {
|
|
|
374
269
|
}
|
|
375
270
|
const selectElm = $(`#${node.tId}:has(.curSelectedNode)`);
|
|
376
271
|
selectElm.addClass('selected');
|
|
272
|
+
const classList = (this.treeClass || "").split(" ");
|
|
273
|
+
if (classList.includes('Checkbox') || classList.includes('Radio')) {
|
|
274
|
+
this.setChecked(node, node.data);
|
|
275
|
+
}
|
|
377
276
|
const path = this.getPath(node, "");
|
|
378
|
-
this.selecteditem = getClonedObject(node) || {};
|
|
277
|
+
this.selecteditem = getClonedObject(node.data) || {};
|
|
379
278
|
this.selecteditem.path = path;
|
|
380
279
|
const eventParams = {
|
|
381
280
|
'$event': event,
|
|
382
|
-
"$item": node,
|
|
281
|
+
"$item": getClonedObject(node.data),
|
|
383
282
|
"$path": path
|
|
384
283
|
};
|
|
284
|
+
//[Todo-CSP]: this data will be dynamic, can not generate function upfront
|
|
285
|
+
const nodeAction = node.data[this.nodeaction || 'action'];
|
|
286
|
+
if (nodeAction) {
|
|
287
|
+
$parseEvent(nodeAction)(this);
|
|
288
|
+
}
|
|
385
289
|
this.invokeEventCallback('select', eventParams);
|
|
386
290
|
}
|
|
387
291
|
expandNode(node, expand, eventFlag) {
|
|
388
|
-
this.
|
|
292
|
+
this.zTree.expandNode(node, expand, false, false, eventFlag);
|
|
389
293
|
const el = $(`#${node.tId}_switch`);
|
|
390
|
-
$(el).addClass(this.
|
|
294
|
+
$(el).addClass(this.treeicons || defaultTreeIconClass);
|
|
391
295
|
}
|
|
392
296
|
postRenderTree() {
|
|
393
297
|
setTimeout(() => {
|
|
394
|
-
this.changeTreeIcons(this.
|
|
298
|
+
this.changeTreeIcons(this.treeicons || defaultTreeIconClass);
|
|
395
299
|
if (this.datavalue && !this.selecteditem) {
|
|
396
|
-
const nodes = this.
|
|
300
|
+
const nodes = this.zTree.getNodes();
|
|
397
301
|
let node;
|
|
398
302
|
if (nodes.length) {
|
|
399
303
|
if (this.datavalue === 'FirstNode') {
|
|
@@ -404,7 +308,7 @@ class TreeComponent extends StylableComponent {
|
|
|
404
308
|
}
|
|
405
309
|
}
|
|
406
310
|
if (node) {
|
|
407
|
-
this.
|
|
311
|
+
this.zTree.selectNode(node, false);
|
|
408
312
|
this.selectNode(undefined, node);
|
|
409
313
|
this.expandNode(node, true, false);
|
|
410
314
|
}
|
|
@@ -412,10 +316,11 @@ class TreeComponent extends StylableComponent {
|
|
|
412
316
|
}, 200);
|
|
413
317
|
}
|
|
414
318
|
selectById(value) {
|
|
415
|
-
|
|
416
|
-
const
|
|
319
|
+
var _a;
|
|
320
|
+
const simpleNodes = (_a = this.zTree) === null || _a === void 0 ? void 0 : _a.transformToArray(this.zTree.getNodes());
|
|
321
|
+
const node = simpleNodes === null || simpleNodes === void 0 ? void 0 : simpleNodes.find(node => value === node.nodeId);
|
|
417
322
|
if (node) {
|
|
418
|
-
this.
|
|
323
|
+
this.zTree.selectNode(node, false);
|
|
419
324
|
this.selectNode(undefined, node);
|
|
420
325
|
}
|
|
421
326
|
}
|
|
@@ -437,6 +342,10 @@ TreeComponent.decorators = [
|
|
|
437
342
|
];
|
|
438
343
|
TreeComponent.ctorParameters = () => [
|
|
439
344
|
{ type: Injector },
|
|
345
|
+
{ type: undefined, decorators: [{ type: Attribute, args: ['datavalue.bind',] }] },
|
|
346
|
+
{ type: undefined, decorators: [{ type: Attribute, args: ['nodelabel.bind',] }] },
|
|
347
|
+
{ type: undefined, decorators: [{ type: Attribute, args: ['nodeicon.bind',] }] },
|
|
348
|
+
{ type: undefined, decorators: [{ type: Attribute, args: ['nodechildren.bind',] }] },
|
|
440
349
|
{ type: undefined, decorators: [{ type: Attribute, args: ['nodeid.bind',] }] }
|
|
441
350
|
];
|
|
442
351
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../projects/components/widgets/basic/tree/src/tree.props.ts","../../../../../projects/components/widgets/basic/tree/src/tree.component.ts","../../../../../projects/components/widgets/basic/tree/src/tree.module.ts","../../../../../projects/components/widgets/basic/tree/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-tree',\n new Map(\n [\n ['class', PROP_STRING],\n ['dataset', {value: 'node1, node2, node3', ...PROP_ANY}],\n ['datavalue', PROP_STRING],\n ['levels', {value: 0, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['nodeaction', PROP_STRING],\n ['nodechildren', PROP_STRING],\n ['nodeclick', {value: 'none', ...PROP_STRING}],\n ['nodeicon', PROP_STRING],\n ['nodeid', PROP_STRING],\n ['nodelabel', PROP_STRING],\n ['orderby', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['treeicons', PROP_STRING]\n ]\n )\n );\n};\n","import { Attribute, Component, Injector, OnInit, ViewEncapsulation } from '@angular/core';\nimport { APPLY_STYLES_TYPE, getEvaluatedData, getOrderedDataset, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\nimport { registerProps } from './tree.props';\nimport { getClonedObject } from \"@wm/core\";\n\ndeclare const _, $;\n\nconst WIDGET_INFO = {widgetType: 'wm-tree', hostClass: 'app-tree'};\nconst defaultTreeIconClass = 'plus-minus';\n\n@Component({\n selector: 'ul[wmTree]',\n templateUrl: './tree.component.html',\n providers: [\n provideAsWidgetRef(TreeComponent)\n ],\n encapsulation: ViewEncapsulation.None\n})\nexport class TreeComponent extends StylableComponent implements OnInit {\n static initializeProps = registerProps();\n\n public selecteditem: any;\n public nodeid: string;\n private nodes;\n private level;\n private orderby;\n private nodelabel;\n private treeicon;\n private nodechildren;\n private nodeclick;\n private treeClass;\n private nodeicon;\n private name;\n private datavalue;\n\n private setting = {\n data: {\n simpleData: {\n enable: false\n },\n key: {\n children: 'children',\n name: 'label'\n }\n },\n view: {\n dblClickExpand: false,\n fontCss: {\n 'font-awesome': true\n },\n switchIcon: {\n\n },\n },\n check: {\n },\n callback: {\n }\n };\n\n constructor(\n inj: Injector,\n @Attribute('nodeid.bind') private bindnodeid\n ) {\n super(inj, WIDGET_INFO);\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER);\n }\n\n public onPropertyChange(key: string, nv: any, ov?: any): void {\n switch (key) {\n case 'dataset':\n this.nodes = this.getNodes(nv);\n if(this.level > 0) {\n this.expandTree(this.level, this.nodes, 0);\n }\n this.renderTree();\n break;\n case 'levels':\n if (nv > 0) {\n this.level = nv;\n }\n this.renderTree();\n break;\n case 'treeicons':\n this.treeicon = nv;\n this.renderTree();\n break;\n case 'nodelabel':\n this.setting.data.key.name = this.labelKey;\n this.renderTree();\n break;\n case 'nodechildren':\n this.setting.data.key.children = this.childrenKey;\n this.renderTree();\n break;\n case 'nodeicon':\n this.nodeicon = this.iconKey;\n this.renderTree();\n break;\n case 'orderby':\n this.renderTree();\n break;\n case 'class':\n this.treeClass = nv;\n this.renderTree();\n break;\n default:\n super.onPropertyChange(key, nv, ov);\n break;\n }\n }\n\n // expands the tree nodes if the property is selected.\n private expandTree(level, node, childLevel) {\n node.map(childNode => {\n const children = this.getChildren(childNode);\n if (children && !(\"open\" in childNode) && childLevel < level) {\n childNode[\"open\"] = true;\n this.expandTree(level, children, childLevel+1);\n } else {\n childLevel = 0;\n return;\n }\n });\n }\n\n // sets the template for the tree based on the property selected.\n private setTreeTemplate(value) {\n if (value === 'Classic') {\n this.setting.check[\"enable\"] = false;\n } else if(value === 'Checkbox') {\n this.setting.check[\"enable\"] = true;\n this.setting.check[\"chkStyle\"] = 'checkbox';\n } else if (value === 'Radio') {\n this.setting.check[\"enable\"] = true;\n this.setting.check[\"chkStyle\"] = 'radio';\n this.setting.check[\"radioType\"] = \"all\";\n }\n }\n\n // extracts nodes from string format\n private getNodesFromString(value) {\n return value.split(',').map((item) => {\n return {\n 'label': item && item.trim()\n };\n });\n }\n\n // gets the nodes and orders the nodes if required\n private getNodes(newVal) {\n let nodes;\n if (_.isArray(newVal)) {\n nodes = getOrderedDataset(newVal, this.orderby);\n } else if (_.isObject(newVal)) {\n nodes = [newVal];\n } else if (_.isString(newVal) && !_.isEmpty(newVal)) {\n newVal = newVal.trim();\n if (newVal) {\n nodes = this.getNodesFromString(newVal);\n }\n }\n return nodes;\n }\n\n\n // adds class to the nodes inorder to add icons to respective node.\n private setNodeclasses(treeId, treeNode) {\n return treeNode.icon ? {add: [`${treeNode.icon}`]} : '';\n };\n\n // Sets the node label with any icon if bound to\n private setNodeData(nodes, depth, level, parentNode, type) {\n if(depth === 0) {\n nodes.map(node => {\n const children = this.getChildren(node);\n if (children) {\n this.setNodeData(children, depth, level , parentNode, type);\n }\n if (node.icon && this.nodelabel == 'icon') {\n node[type] = node.icon;\n } else if(node.name && this.nodelabel == 'name') {\n node[type] = node.name;\n } else {\n return;\n }\n })\n } else {\n nodes.map(node => {\n const children = this.getChildren(node);\n if (children && level > 1) {\n if(depth === level) {\n parentNode = node;\n }\n this.setNodeData(children, depth, level - 1, parentNode, type);\n }\n if (level === 1 && (type === \"name\" ? this.nodelabel.includes(\"label\") || this.nodelabel.includes(\"name\"): this.nodeicon.includes(\"label\") || this.nodeicon.includes(\"name\") )) {\n parentNode[type] = node.name || node.label;\n return\n } else if(level === 1 && (node.icon !== undefined) && (type === \"name\" ? this.nodelabel.includes(\"icon\") : this.nodeicon.includes(\"icon\"))) {\n parentNode[type] = node.icon;\n return;\n } else {\n return;\n }\n })\n }\n }\n\n // adds tree icons to the nodes on load of the tree\n private changeTreeIcons(nv) {\n let eleClose = $('ul[name=\"' + this.name + '\"] li span.button.switch');\n\n $(eleClose).map((idx, ele) => {\n $(ele).addClass(nv);\n $(ele).on(\"click\",function(e) {\n setTimeout(() => {\n $(ele).addClass(nv);\n }, 0);\n });\n })\n }\n\n private getPath(treeNode, path) {\n if(treeNode.getParentNode() === null) {\n path = \"/\" + treeNode[this.labelKey] + path;\n } else {\n path = this.getPath(treeNode.getParentNode(), path) + \"/\" + treeNode[this.labelKey];\n }\n return path;\n }\n\n // binds the click event to all nodes to open the child nodes\n public onClick(event, treeId, treeNode, clickFlag) {\n if(this.nodeclick === \"expand\") {\n var nodes = this.treeObj.getSelectedNodes();\n if (nodes.length>0) {\n this.expandNode(nodes[0], !nodes[0].open, true);\n }\n }\n this.selectNode(event, treeNode);\n }\n\n // Adds tree icon classes to child nodes when expanded\n public onExpand(event, treeId, treeNode) {\n let self = this;\n let path = this.getPath(treeNode, \"\");\n\n const eventParams = {\n '$event' : event,\n \"$item\" : treeNode,\n \"$path\" : path\n };\n this.invokeEventCallback('expand', eventParams);\n\n const children = this.getChildren(treeNode);\n children?.map((el) => {\n if (el.isParent) {\n let ele = $(`#${el.tId}_switch`);\n $(ele).addClass(self.treeicon || defaultTreeIconClass);\n $(ele).on(\"click\", function(e) {\n setTimeout(() => {\n $(ele).addClass(self.treeicon || defaultTreeIconClass);\n }, 0);\n });\n }\n });\n }\n\n public onCollapse(event, treeId, treeNode) {\n let path = this.getPath(treeNode, \"\");\n const eventParams = {\n '$event' : event,\n \"$item\" : treeNode,\n \"$path\" : path\n };\n this.invokeEventCallback('collapse', eventParams);\n }\n\n private getChildren(node) {\n return node[this.childrenKey];\n }\n get childrenKey() {\n if(!this.nodechildren) {\n return 'children';\n }\n const depth = this.countDepth(this.nodechildren);\n return depth ? this.nodechildren.split('.').pop() : this.nodechildren;\n }\n get labelKey() {\n if(!this.nodelabel) {\n return 'label';\n }\n const depth = this.countDepth(this.nodelabel);\n return depth ? this.nodelabel.split('.').pop() : this.nodelabel;\n }\n get iconKey() {\n if(!this.nodeicon) {\n return 'icon';\n }\n const depth = this.countDepth(this.nodeicon);\n return depth ? this.nodeicon.split('.').pop() : this.nodeicon;\n }\n\n get treeObj(){\n return $.fn.zTree.getZTreeObj(`${this.name}`)\n }\n\n // function to support backward compatibility of objects\n private modifyObjects(array) {\n array.forEach(obj => {\n obj.icon = obj[this.nodeicon];\n const children = this.getChildren(obj);\n if (children?.length) {\n this.modifyObjects(children);\n }\n });\n }\n\n // sets the node children property to parent nodes\n private setNodeChildren(nodes, depth, level, parentNode) {\n if (depth <= 0) {\n return nodes;\n }\n for (let i = 0; i < nodes.length; i++) {\n const node = nodes[i];\n\n if(depth === level) {\n parentNode = nodes[i];\n }\n const children = this.getChildren(node);\n if (children?.length) {\n if (level === 1) {\n parentNode[this.childrenKey] = children.map(child => ({ [this.labelKey]: child[this.labelKey], [this.childrenKey]: this.getChildren(child), icon: child[this.iconKey] }));\n return;\n } else {\n this.setNodeChildren(children, depth ,level - 1, parentNode);\n }\n }\n }\n\n return nodes;\n }\n\n private countDepth(str) {\n const regex = /\\[.*?\\]/g;\n let matches = str.match(regex);\n let count = 1;\n\n if(matches === null) return count;\n\n for (let match of matches) {\n count++;\n }\n\n return count;\n }\n\n\n // Renders the tree on to the dom\n public renderTree() {\n if(this.nodes) {\n this.nativeElement.setAttribute('id', this.name);\n if(this.nodeicon && this.nodeicon !== 'icon') {\n this.modifyObjects(this.nodes);\n }\n this.setTreeTemplate(this.treeClass);\n\n if (this.nodelabel) {\n let depth =0;\n if(this.nodelabel.includes(\"children\")) {\n depth = this.countDepth(this.nodelabel);\n }\n this.setNodeData(this.nodes, depth, depth, null, \"name\");\n }\n if(this.nodeicon) {\n let depth =0;\n if(this.nodeicon.includes(\"children\")) {\n depth = this.countDepth(this.nodeicon);\n }\n this.setNodeData(this.nodes, depth, depth, null, \"icon\");\n }\n\n if (this.nodechildren) {\n let depth = this.countDepth(this.nodechildren);\n if(depth > 1) {\n this.nodes = this.setNodeChildren(this.nodes, depth, depth, null);\n }\n }\n }\n\n\n this.setting.view['nodeClasses'] = this.setNodeclasses;\n this.setting.callback[\"onClick\"] = this.onClick.bind(this);\n this.setting.callback[\"onExpand\"] = this.onExpand.bind(this);\n this.setting.callback[\"onCollapse\"] = this.onCollapse.bind(this);\n\n let zTree = $.fn.zTree.init($('ul[name=\"' + this.name + '\"]'), this.setting, this.nodes);\n\n $.fn.zTreeKeyboardNavigation(zTree, $('ul[name=\"' + this.name + '\"]'), null, this.treeicon || defaultTreeIconClass);\n this.postRenderTree();\n }\n\n private selectNode(event, node) {\n const deSelectElm = $(`.app-tree[name=${this.name}] li[treenode].selected`);\n deSelectElm.removeClass('selected');\n\n if(!node) {\n return;\n }\n const selectElm = $(`#${node.tId}:has(.curSelectedNode)`);\n selectElm.addClass('selected');\n\n const path = this.getPath(node, \"\");\n this.selecteditem = getClonedObject(node) || {};\n this.selecteditem.path = path;\n\n const eventParams = {\n '$event' : event,\n \"$item\" : node,\n \"$path\" : path\n };\n this.invokeEventCallback('select', eventParams);\n }\n\n private expandNode(node, expand, eventFlag) {\n this.treeObj.expandNode(node, expand, false, false, eventFlag);\n const el = $(`#${node.tId}_switch`);\n $(el).addClass(this.treeicon || defaultTreeIconClass);\n }\n\n private postRenderTree() {\n setTimeout(() => {\n this.changeTreeIcons(this.treeicon || defaultTreeIconClass);\n\n if (this.datavalue && !this.selecteditem) {\n const nodes = this.treeObj.getNodes();\n let node;\n if(nodes.length) {\n if (this.datavalue === 'FirstNode') {\n node = nodes[0];\n }\n if(this.datavalue === 'LastNode') {\n node = nodes[nodes.length - 1]\n }\n }\n\n if(node) {\n this.treeObj.selectNode(node, false);\n this.selectNode(undefined, node);\n this.expandNode(node, true, false);\n }\n }\n }, 200);\n }\n\n private selectById(value?) {\n const simpleNodes = this.treeObj.transformToArray(this.treeObj.getNodes());\n const node = simpleNodes.find(node => value === getEvaluatedData(node, {field: this.nodeid, bindExpression: this.bindnodeid}, this.viewParent));\n if(node) {\n this.treeObj.selectNode(node, false);\n this.selectNode(undefined, node);\n }\n }\n private deselectById(value?) {\n this.selecteditem = {};\n this.selectById();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { TreeComponent } from './tree.component';\n\nconst components = [\n TreeComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components],\n entryComponents: []\n})\nexport class TreeModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {registerProps as ɵa} from './tree.props';"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../projects/components/widgets/basic/tree/src/tree.props.ts","../../../../../projects/components/widgets/basic/tree/src/tree.component.ts","../../../../../projects/components/widgets/basic/tree/src/tree.module.ts","../../../../../projects/components/widgets/basic/tree/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n register(\n 'wm-tree',\n new Map(\n [\n ['class', PROP_STRING],\n ['dataset', {value: 'node1, node2, node3', ...PROP_ANY}],\n ['datavalue', PROP_STRING],\n ['levels', {value: 0, ...PROP_NUMBER}],\n ['name', PROP_STRING],\n ['nodeaction', PROP_STRING],\n ['nodechildren', PROP_STRING],\n ['nodeclick', {value: 'none', ...PROP_STRING}],\n ['nodeicon', PROP_STRING],\n ['nodeid', PROP_STRING],\n ['nodelabel', PROP_STRING],\n ['orderby', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['treeicons', PROP_STRING]\n ]\n )\n );\n};\n","import { Attribute, Component, Injector, OnInit, ViewEncapsulation } from '@angular/core';\nimport { APPLY_STYLES_TYPE, getEvaluatedData, getOrderedDataset, provideAsWidgetRef, StylableComponent, styler } from '@wm/components/base';\nimport { registerProps } from './tree.props';\nimport { $parseEvent, getClonedObject } from \"@wm/core\";\n\ndeclare const _, $;\n\nconst WIDGET_INFO = {widgetType: 'wm-tree', hostClass: 'app-tree'};\nconst defaultTreeIconClass = 'plus-minus';\n\n@Component({\n selector: 'ul[wmTree]',\n templateUrl: './tree.component.html',\n providers: [\n provideAsWidgetRef(TreeComponent)\n ],\n encapsulation: ViewEncapsulation.None\n})\nexport class TreeComponent extends StylableComponent implements OnInit {\n static initializeProps = registerProps();\n\n private nodes: Array<any>;\n private zTreeNodes: Array<any>;\n private level;\n private treeClass;\n private name;\n private zTree;\n\n public datavalue: string;\n public treeicons: string;\n public selecteditem: any;\n public nodeid: string;\n public nodeaction: string;\n public nodeclick: string;\n public nodelabel: string;\n public nodeicon: string;\n public nodechildren: string;\n public orderby: string;\n\n private setting = {\n data: {\n simpleData: {\n enable: false\n }\n },\n view: {\n dblClickExpand: false,\n fontCss: {\n 'font-awesome': true\n },\n switchIcon: {},\n },\n check: {},\n callback: {}\n };\n\n constructor(\n inj: Injector,\n @Attribute('datavalue.bind') private binddatavalue,\n @Attribute('nodelabel.bind') private bindnodelabel,\n @Attribute('nodeicon.bind') private bindnodeicon,\n @Attribute('nodechildren.bind') private bindnodechildren,\n @Attribute('nodeid.bind') private bindnodeid\n ) {\n super(inj, WIDGET_INFO);\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER);\n\n this.setting.view['nodeClasses'] = this.setNodeClasses;\n this.setting.callback[\"onClick\"] = this.onClick.bind(this);\n this.setting.callback[\"onExpand\"] = this.onExpand.bind(this);\n this.setting.callback[\"onCollapse\"] = this.onCollapse.bind(this);\n }\n\n public onPropertyChange(key: string, nv: any, ov?: any): void {\n switch (key) {\n case 'dataset':\n this.nodes = this.getNodes(nv);\n this.renderTree();\n break;\n case 'levels':\n this.level = nv;\n this.renderTree();\n break;\n case 'nodeicon':\n this.nodeicon = nv;\n this.renderTree();\n break;\n case 'nodelabel':\n this.nodelabel = nv;\n this.renderTree();\n break;\n case 'nodechildren':\n this.nodechildren = nv;\n this.renderTree();\n break;\n case 'orderby':\n this.orderby = nv;\n this.renderTree();\n break;\n case 'treeicons':\n this.treeicons = nv;\n this.renderTree();\n break;\n case 'class':\n this.treeClass = nv;\n this.setTreeTemplate(this.treeClass);\n this.renderTree();\n default:\n super.onPropertyChange(key, nv, ov);\n break;\n }\n }\n\n // expands the tree nodes if the property is selected.\n private expandTree(level, node, childLevel) {\n node.map(childNode => {\n const children = childNode.children;\n if (children && childLevel < level) {\n childNode.open = true;\n this.expandTree(level, children, childLevel+1);\n } else {\n childLevel = 0;\n return;\n }\n });\n }\n\n // sets the template for the tree based on the property selected.\n private setTreeTemplate(value) {\n const classList = value.split(\" \");\n if (classList.includes('Classic')) {\n this.setting.check[\"enable\"] = false;\n } else if(classList.includes('Checkbox')) {\n this.setting.check[\"enable\"] = true;\n this.setting.check[\"chkStyle\"] = 'checkbox';\n } else if (classList.includes('Radio')) {\n this.setting.check[\"enable\"] = true;\n this.setting.check[\"chkStyle\"] = 'radio';\n this.setting.check[\"radioType\"] = \"all\";\n }\n }\n\n // extracts nodes from string format\n private getNodesFromString(value) {\n return value.split(',').map((item) => {\n return {\n 'label': item && item.trim()\n };\n });\n }\n\n // gets the nodes and orders the nodes if required\n private getNodes(newVal) {\n let nodes;\n if (_.isArray(newVal)) {\n nodes = getOrderedDataset(newVal, this.orderby);\n } else if (_.isObject(newVal)) {\n nodes = [newVal];\n } else if (_.isString(newVal) && !_.isEmpty(newVal)) {\n newVal = newVal.trim();\n if (newVal) {\n nodes = this.getNodesFromString(newVal);\n }\n }\n return nodes;\n }\n\n\n // adds class to the nodes inorder to add icons to respective node.\n private setNodeClasses(treeId, treeNode) {\n return treeNode.icon ? {add: [`${treeNode.icon}`]} : '';\n };\n\n // adds tree icons to the nodes on load of the tree\n private changeTreeIcons(nv) {\n let eleClose = $('ul[name=\"' + this.name + '\"] li span.button.switch');\n\n $(eleClose).map((idx, ele) => {\n $(ele).addClass(nv);\n $(ele).on(\"click\",function(e) {\n setTimeout(() => {\n $(ele).addClass(nv);\n }, 0);\n });\n })\n }\n\n // Returns the node path\n private getPath(treeNode, path) {\n if(treeNode.getParentNode() === null) {\n path = \"/\" + treeNode.name + path;\n } else {\n path = this.getPath(treeNode.getParentNode(), path) + \"/\" + treeNode.name;\n }\n return path;\n }\n\n // binds the click event to all nodes to open the child nodes\n public onClick(event, treeId, treeNode, clickFlag) {\n if(this.nodeclick === \"expand\") {\n var nodes = this.zTree.getSelectedNodes();\n if (nodes.length>0) {\n this.expandNode(nodes[0], !nodes[0].open, true);\n }\n }\n this.selectNode(event, treeNode);\n }\n\n // Adds tree icon classes to child nodes when expanded\n public onExpand(event, treeId, treeNode) {\n let self = this;\n let path = this.getPath(treeNode, \"\");\n\n const eventParams = {\n '$event' : event,\n \"$item\" : getClonedObject(treeNode.data),\n \"$path\" : path\n };\n this.invokeEventCallback('expand', eventParams);\n\n const children = treeNode.children;\n children?.map((el) => {\n if (el.isParent) {\n let ele = $(`#${el.tId}_switch`);\n $(ele).addClass(self.treeicons || defaultTreeIconClass);\n $(ele).on(\"click\", function(e) {\n setTimeout(() => {\n $(ele).addClass(self.treeicons || defaultTreeIconClass);\n }, 0);\n });\n }\n });\n }\n\n public onCollapse(event, treeId, treeNode) {\n let path = this.getPath(treeNode, \"\");\n const eventParams = {\n '$event' : event,\n \"$item\" : getClonedObject(treeNode.data),\n \"$path\" : path\n };\n this.invokeEventCallback('collapse', eventParams);\n }\n\n // function to support backward compatibility of objects\n private constructZTreeData(data, zTreeData) {\n data.forEach(node => {\n const zNode = {};\n const name = getEvaluatedData(node, {field: this.nodelabel, bindExpression: this.bindnodelabel}, this.viewParent) || node.label;\n const icon = getEvaluatedData(node, {field: this.nodeicon, bindExpression: this.bindnodeicon}, this.viewParent) || node.icon;\n const nodeId = getEvaluatedData(node, {field: this.nodeid, bindExpression: this.bindnodeid}, this.viewParent);\n const children = getEvaluatedData(node, {field: this.nodechildren, bindExpression: this.bindnodechildren}, this.viewParent) || node.children;\n zNode['name'] = name;\n zNode['icon'] = icon;\n zNode['nodeId'] = nodeId;\n zNode['data'] = getClonedObject(node);\n if (_.isArray(children) && children.length) {\n zNode['children'] = [];\n this.constructZTreeData(children, zNode['children']);\n }\n zTreeData.push(zNode);\n });\n }\n\n // Renders the tree on to the dom\n public renderTree() {\n this.zTreeNodes = [];\n if(this.nodes?.length) {\n this.nativeElement.setAttribute('id', this.name);\n this.constructZTreeData(this.nodes, this.zTreeNodes);\n if(this.level > 0) {\n this.expandTree(this.level, this.zTreeNodes, 0);\n }\n }\n this.zTree = $.fn.zTree.init($('ul[name=\"' + this.name + '\"]'), this.setting, this.zTreeNodes);\n $.fn.zTreeKeyboardNavigation(this.zTree, $('ul[name=\"' + this.name + '\"]'), null, this.treeicons || defaultTreeIconClass);\n this.postRenderTree();\n }\n\n private setChecked(zNode, node) {\n node.checked = zNode.checked;\n const children = getEvaluatedData(node, {field: this.nodechildren, bindExpression: this.bindnodechildren}, this.viewParent) || node.children;\n if(children?.length) {\n children.forEach((node, index) => {\n this.setChecked(zNode.children[index], node);\n });\n }\n }\n\n private selectNode(event, node) {\n const deSelectElm = $(`.app-tree[name=${this.name}] li[treenode].selected`);\n deSelectElm.removeClass('selected');\n\n if(!node) {\n return;\n }\n const selectElm = $(`#${node.tId}:has(.curSelectedNode)`);\n selectElm.addClass('selected');\n\n\n const classList = (this.treeClass || \"\").split(\" \");\n if (classList.includes('Checkbox') || classList.includes('Radio')) {\n this.setChecked(node, node.data);\n }\n\n const path = this.getPath(node, \"\");\n this.selecteditem = getClonedObject(node.data) || {};\n this.selecteditem.path = path;\n\n const eventParams = {\n '$event' : event,\n \"$item\" : getClonedObject(node.data),\n \"$path\" : path\n };\n\n //[Todo-CSP]: this data will be dynamic, can not generate function upfront\n const nodeAction = node.data[this.nodeaction || 'action'];\n if (nodeAction) {\n $parseEvent(nodeAction)(this);\n }\n this.invokeEventCallback('select', eventParams);\n }\n\n private expandNode(node, expand, eventFlag) {\n this.zTree.expandNode(node, expand, false, false, eventFlag);\n const el = $(`#${node.tId}_switch`);\n $(el).addClass(this.treeicons || defaultTreeIconClass);\n }\n\n private postRenderTree() {\n setTimeout(() => {\n this.changeTreeIcons(this.treeicons || defaultTreeIconClass);\n\n if (this.datavalue && !this.selecteditem) {\n const nodes = this.zTree.getNodes();\n let node;\n if(nodes.length) {\n if (this.datavalue === 'FirstNode') {\n node = nodes[0];\n }\n if(this.datavalue === 'LastNode') {\n node = nodes[nodes.length - 1];\n }\n }\n\n if(node) {\n this.zTree.selectNode(node, false);\n this.selectNode(undefined, node);\n this.expandNode(node, true, false);\n }\n }\n }, 200);\n }\n\n private selectById(value?) {\n const simpleNodes = this.zTree?.transformToArray(this.zTree.getNodes());\n const node = simpleNodes?.find(node => value === node.nodeId);\n if(node) {\n this.zTree.selectNode(node, false);\n this.selectNode(undefined, node);\n }\n }\n private deselectById(value?) {\n this.selecteditem = {};\n this.selectById();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { WmComponentsModule } from '@wm/components/base';\n\nimport { TreeComponent } from './tree.component';\n\nconst components = [\n TreeComponent\n];\n\n@NgModule({\n imports: [\n CommonModule,\n WmComponentsModule\n ],\n declarations: [...components],\n exports: [...components],\n entryComponents: []\n})\nexport class TreeModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {registerProps as ɵa} from './tree.props';"],"names":[],"mappings":";;;;;MAEa,aAAa,GAAG;IACzB,QAAQ,CACJ,SAAS,EACT,IAAI,GAAG,CACH;QACI,CAAC,OAAO,EAAE,WAAW,CAAC;QACtB,CAAC,SAAS,kBAAG,KAAK,EAAE,qBAAqB,IAAK,QAAQ,EAAE;QACxD,CAAC,WAAW,EAAE,WAAW,CAAC;QAC1B,CAAC,QAAQ,kBAAG,KAAK,EAAE,CAAC,IAAK,WAAW,EAAE;QACtC,CAAC,MAAM,EAAE,WAAW,CAAC;QACrB,CAAC,YAAY,EAAE,WAAW,CAAC;QAC3B,CAAC,cAAc,EAAE,WAAW,CAAC;QAC7B,CAAC,WAAW,kBAAG,KAAK,EAAE,MAAM,IAAK,WAAW,EAAE;QAC9C,CAAC,UAAU,EAAE,WAAW,CAAC;QACzB,CAAC,QAAQ,EAAE,WAAW,CAAC;QACvB,CAAC,WAAW,EAAE,WAAW,CAAC;QAC1B,CAAC,SAAS,EAAE,WAAW,CAAC;QACxB,CAAC,MAAM,kBAAG,KAAK,EAAE,IAAI,IAAK,YAAY,EAAE;QACxC,CAAC,UAAU,kBAAG,KAAK,EAAE,CAAC,IAAK,WAAW,EAAE;QACxC,CAAC,WAAW,EAAE,WAAW,CAAC;KAC7B,CACJ,CACJ,CAAC;AACN;;AClBA,MAAM,WAAW,GAAG,EAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAC,CAAC;AACnE,MAAM,oBAAoB,GAAG,YAAY,CAAC;MAU7B,aAAc,SAAQ,iBAAiB;IAsChD,YACI,GAAa,EACwB,aAAa,EACb,aAAa,EACd,YAAY,EACR,gBAAgB,EACtB,UAAU;QAE5C,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QANa,kBAAa,GAAb,aAAa,CAAA;QACb,kBAAa,GAAb,aAAa,CAAA;QACd,iBAAY,GAAZ,YAAY,CAAA;QACR,qBAAgB,GAAhB,gBAAgB,CAAA;QACtB,eAAU,GAAV,UAAU,CAAA;QAvBxC,YAAO,GAAG;YACd,IAAI,EAAE;gBACF,UAAU,EAAE;oBACR,MAAM,EAAE,KAAK;iBAChB;aACJ;YACD,IAAI,EAAE;gBACF,cAAc,EAAE,KAAK;gBACrB,OAAO,EAAE;oBACL,cAAc,EAAE,IAAI;iBACrB;gBACH,UAAU,EAAE,EAAE;aACjB;YACD,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,EAAE;SACf,CAAC;QAWE,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAE9D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,GAAM,IAAI,CAAC,cAAc,CAAC;QAC1D,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9D,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAK,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACpE;IAEM,gBAAgB,CAAC,GAAW,EAAE,EAAO,EAAE,EAAQ;QAClD,QAAQ,GAAG;YACP,KAAK,SAAS;gBACV,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAC/B,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,MAAM;YACV,KAAK,QAAQ;gBACT,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;gBAChB,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,MAAM;YACV,KAAK,UAAU;gBACX,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;gBACnB,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,MAAM;YACV,KAAK,WAAW;gBACZ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;gBACpB,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,MAAM;YACV,KAAK,cAAc;gBACf,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;gBACvB,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,MAAM;YACV,KAAK,SAAS;gBACV,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;gBAClB,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,MAAM;YACV,KAAK,WAAW;gBACZ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;gBACpB,IAAI,CAAC,UAAU,EAAE,CAAC;gBAClB,MAAM;YACV,KAAK,OAAO;gBACR,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;gBACpB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACrC,IAAI,CAAC,UAAU,EAAE,CAAC;YACtB;gBACI,KAAK,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBACpC,MAAM;SACb;KACJ;;IAGO,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU;QACtC,IAAI,CAAC,GAAG,CAAC,SAAS;YACd,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;YACpC,IAAI,QAAQ,IAAI,UAAU,GAAG,KAAK,EAAE;gBAChC,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC;gBACtB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,GAAC,CAAC,CAAC,CAAC;aAClD;iBAAM;gBACH,UAAU,GAAG,CAAC,CAAC;gBACf,OAAO;aACV;SACJ,CAAC,CAAC;KACN;;IAGO,eAAe,CAAC,KAAK;QACzB,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC/B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;SACxC;aAAM,IAAG,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;YACtC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC;SAC/C;aAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YACpC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;YACzC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC;SAC3C;KACJ;;IAGO,kBAAkB,CAAC,KAAK;QAC5B,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI;YAC7B,OAAO;gBACH,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;aAC/B,CAAC;SACL,CAAC,CAAC;KACN;;IAGO,QAAQ,CAAC,MAAM;QACnB,IAAI,KAAK,CAAC;QACV,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACnB,KAAK,GAAG,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SACnD;aAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YAC3B,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC;SACpB;aAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACjD,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;YACvB,IAAI,MAAM,EAAE;gBACR,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;aAC3C;SACJ;QACD,OAAO,KAAK,CAAC;KAChB;;IAIO,cAAc,CAAC,MAAM,EAAE,QAAQ;QACnC,OAAO,QAAQ,CAAC,IAAI,GAAG,EAAC,GAAG,EAAE,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAC,GAAG,EAAE,CAAC;KAC3D;;;IAGO,eAAe,CAAC,EAAE;QACtB,IAAI,QAAQ,GAAG,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC,CAAC;QAEvE,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG;YACrB,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACpB,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,EAAC,UAAS,CAAC;gBACxB,UAAU,CAAC;oBACP,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;iBACvB,EAAE,CAAC,CAAC,CAAC;aACT,CAAC,CAAC;SACN,CAAC,CAAA;KACL;;IAGO,OAAO,CAAC,QAAQ,EAAE,IAAI;QAC1B,IAAG,QAAQ,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE;YAClC,IAAI,GAAG,GAAG,GAAG,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;SACrC;aAAM;YACH,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,IAAI,CAAC,GAAG,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;SAC7E;QACD,OAAO,IAAI,CAAC;KACf;;IAGM,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS;QAC7C,IAAG,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE;YAC5B,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC1C,IAAI,KAAK,CAAC,MAAM,GAAC,CAAC,EAAE;gBAChB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;aACnD;SACJ;QACD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;KACpC;;IAGM,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ;QACnC,IAAI,IAAI,GAAG,IAAI,CAAC;QAChB,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAEtC,MAAM,WAAW,GAAG;YAChB,QAAQ,EAAI,KAAK;YACjB,OAAO,EAAK,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC1C,OAAO,EAAG,IAAI;SACjB,CAAC;QACF,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAEhD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACnC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,CAAC,CAAC,EAAE;YACb,IAAI,EAAE,CAAC,QAAQ,EAAE;gBACb,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;gBACjC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,IAAI,oBAAoB,CAAC,CAAC;gBACxD,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,UAAS,CAAC;oBACzB,UAAU,CAAC;wBACP,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,IAAI,oBAAoB,CAAC,CAAC;qBAC3D,EAAE,CAAC,CAAC,CAAC;iBACT,CAAC,CAAC;aACN;SACJ,CAAC,CAAC;KACN;IAEM,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ;QACrC,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACtC,MAAM,WAAW,GAAG;YAChB,QAAQ,EAAI,KAAK;YACjB,OAAO,EAAK,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC1C,OAAO,EAAG,IAAI;SACjB,CAAC;QACF,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;KACrD;;IAGO,kBAAkB,CAAC,IAAI,EAAE,SAAS;QACtC,IAAI,CAAC,OAAO,CAAC,IAAI;YACb,MAAM,KAAK,GAAG,EAAE,CAAC;YACjB,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,IAAI,CAAC,aAAa,EAAC,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC;YAChI,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,CAAC,YAAY,EAAC,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC;YAC7H,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,UAAU,EAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9G,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,EAAE,IAAI,CAAC,gBAAgB,EAAC,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC;YAC7I,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YACrB,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YACrB,KAAK,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;YACzB,KAAK,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,EAAE;gBACxC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;gBACvB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;aACxD;YACD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACzB,CAAC,CAAC;KACN;;IAGM,UAAU;;QACb,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,MAAM,EAAE;YACnB,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YACrD,IAAG,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE;gBACf,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;aACnD;SACJ;QACD,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/F,CAAC,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,oBAAoB,CAAC,CAAC;QAC1H,IAAI,CAAC,cAAc,EAAE,CAAC;KACzB;IAEO,UAAU,CAAC,KAAK,EAAE,IAAI;QAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,EAAE,EAAC,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,EAAE,IAAI,CAAC,gBAAgB,EAAC,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC;QAC7I,IAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,EAAE;YACjB,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK;gBACzB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;aAChD,CAAC,CAAC;SACN;KACJ;IAEO,UAAU,CAAC,KAAK,EAAE,IAAI;QAC1B,MAAM,WAAW,GAAG,CAAC,CAAC,kBAAkB,IAAI,CAAC,IAAI,yBAAyB,CAAC,CAAC;QAC5E,WAAW,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAEpC,IAAG,CAAC,IAAI,EAAE;YACN,OAAO;SACV;QACD,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,wBAAwB,CAAC,CAAC;QAC1D,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAG/B,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACpD,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC/D,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;SACpC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,YAAY,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACrD,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC;QAE9B,MAAM,WAAW,GAAG;YAChB,QAAQ,EAAI,KAAK;YACjB,OAAO,EAAK,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;YACtC,OAAO,EAAG,IAAI;SACjB,CAAC;;QAGF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,QAAQ,CAAC,CAAC;QAC1D,IAAI,UAAU,EAAE;YACZ,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;SACjC;QACD,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;KACnD;IAEO,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS;QACtC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QAC7D,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;QACpC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,IAAI,oBAAoB,CAAC,CAAC;KAC1D;IAEO,cAAc;QAClB,UAAU,CAAC;YACP,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,IAAI,oBAAoB,CAAC,CAAC;YAE7D,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;gBACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACpC,IAAI,IAAI,CAAC;gBACT,IAAG,KAAK,CAAC,MAAM,EAAE;oBACb,IAAI,IAAI,CAAC,SAAS,KAAK,WAAW,EAAE;wBAChC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;qBACnB;oBACD,IAAG,IAAI,CAAC,SAAS,KAAK,UAAU,EAAE;wBAC9B,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;qBAClC;iBACJ;gBAED,IAAG,IAAI,EAAE;oBACL,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBACnC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBACjC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;iBACtC;aACJ;SACJ,EAAE,GAAG,CAAC,CAAC;KACX;IAEO,UAAU,CAAC,KAAM;;QACrB,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxE,MAAM,IAAI,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,CAAC,IAAI,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9D,IAAG,IAAI,EAAE;YACL,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACnC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;SACpC;KACJ;IACO,YAAY,CAAC,KAAM;QACvB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,UAAU,EAAE,CAAC;KACrB;;AA1VM,6BAAe,GAAG,aAAa,EAAE,CAAC;;YAT5C,SAAS,SAAC;gBACP,QAAQ,EAAE,YAAY;gBACtB,4DAAoC;gBACpC,SAAS,EAAE;oBACP,kBAAkB,CAAC,aAAa,CAAC;iBACpC;gBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;aACxC;;;YAjB8B,QAAQ;4CA0D9B,SAAS,SAAC,gBAAgB;4CAC1B,SAAS,SAAC,gBAAgB;4CAC1B,SAAS,SAAC,eAAe;4CACzB,SAAS,SAAC,mBAAmB;4CAC7B,SAAS,SAAC,aAAa;;;ACvDhC,MAAM,UAAU,GAAG;IACf,aAAa;CAChB,CAAC;MAWW,UAAU;;;YATtB,QAAQ,SAAC;gBACN,OAAO,EAAE;oBACL,YAAY;oBACZ,kBAAkB;iBACrB;gBACD,YAAY,EAAE,CAAC,GAAG,UAAU,CAAC;gBAC7B,OAAO,EAAE,CAAC,GAAG,UAAU,CAAC;gBACxB,eAAe,EAAE,EAAE;aACtB;;;ACnBD;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"__symbolic":"module","version":4,"metadata":{"TreeModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":11,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":13,"character":8},{"__symbolic":"reference","module":"@wm/components/base","name":"WmComponentsModule","line":14,"character":8}],"declarations":[{"__symbolic":"reference","name":"TreeComponent"}],"exports":[{"__symbolic":"reference","name":"TreeComponent"}],"entryComponents":[]}]}],"members":{}},"TreeComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@wm/components/base","name":"StylableComponent","line":18,"character":35},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"ul[wmTree]","providers":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@wm/components/base","name":"provideAsWidgetRef","line":14,"character":8},"arguments":[{"__symbolic":"reference","name":"TreeComponent"}]}],"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":16,"character":19},"member":"None"},"template":"<ul #wmTree class=\"ztree\" id=\"ztree\"></ul> "}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Attribute","line":
|
|
1
|
+
{"__symbolic":"module","version":4,"metadata":{"TreeModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":11,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":13,"character":8},{"__symbolic":"reference","module":"@wm/components/base","name":"WmComponentsModule","line":14,"character":8}],"declarations":[{"__symbolic":"reference","name":"TreeComponent"}],"exports":[{"__symbolic":"reference","name":"TreeComponent"}],"entryComponents":[]}]}],"members":{}},"TreeComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@wm/components/base","name":"StylableComponent","line":18,"character":35},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"ul[wmTree]","providers":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@wm/components/base","name":"provideAsWidgetRef","line":14,"character":8},"arguments":[{"__symbolic":"reference","name":"TreeComponent"}]}],"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":16,"character":19},"member":"None"},"template":"<ul #wmTree class=\"ztree\" id=\"ztree\"></ul> "}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Attribute","line":58,"character":9},"arguments":["datavalue.bind"]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Attribute","line":59,"character":9},"arguments":["nodelabel.bind"]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Attribute","line":60,"character":9},"arguments":["nodeicon.bind"]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Attribute","line":61,"character":9},"arguments":["nodechildren.bind"]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Attribute","line":62,"character":9},"arguments":["nodeid.bind"]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":57,"character":13},null,null,null,null,null]}],"onPropertyChange":[{"__symbolic":"method"}],"expandTree":[{"__symbolic":"method"}],"setTreeTemplate":[{"__symbolic":"method"}],"getNodesFromString":[{"__symbolic":"method"}],"getNodes":[{"__symbolic":"method"}],"setNodeClasses":[{"__symbolic":"method"}],"changeTreeIcons":[{"__symbolic":"method"}],"getPath":[{"__symbolic":"method"}],"onClick":[{"__symbolic":"method"}],"onExpand":[{"__symbolic":"method"}],"onCollapse":[{"__symbolic":"method"}],"constructZTreeData":[{"__symbolic":"method"}],"renderTree":[{"__symbolic":"method"}],"setChecked":[{"__symbolic":"method"}],"selectNode":[{"__symbolic":"method"}],"expandNode":[{"__symbolic":"method"}],"postRenderTree":[{"__symbolic":"method"}],"selectById":[{"__symbolic":"method"}],"deselectById":[{"__symbolic":"method"}]},"statics":{"initializeProps":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵa"}}}},"ɵa":{"__symbolic":"error","message":"Lambda not supported","line":2,"character":29,"module":"./tree.props"}},"origins":{"TreeModule":"./tree.module","TreeComponent":"./tree.component","ɵa":"./tree.props"},"importAs":"@wm/components/basic/tree"}
|