@sankhyalabs/ezui 2.12.0 → 2.14.0-develop.1
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-tree.cjs.entry.js → ez-filter-input_3.cjs.entry.js} +103 -16
- package/dist/cjs/ez-form.cjs.entry.js +325 -184
- package/dist/cjs/ez-guide-navigator.cjs.entry.js +339 -0
- package/dist/cjs/ezui.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/ez-form/ez-form.css +1 -1
- package/dist/collection/components/ez-form/ez-form.js +20 -16
- package/dist/collection/components/ez-form/fieldbuilder/FieldBuilder.js +48 -0
- package/dist/collection/components/{ez-form-view/fieldbuilder/templates → ez-form/fieldbuilder/tpl}/CheckBox.tpl.js +4 -4
- package/dist/collection/components/{ez-form-view/fieldbuilder/templates → ez-form/fieldbuilder/tpl}/ComboBox.tpl.js +2 -2
- package/dist/collection/components/{ez-form-view/fieldbuilder/templates → ez-form/fieldbuilder/tpl}/DateInput.tpl.js +1 -1
- package/dist/collection/components/{ez-form-view/fieldbuilder/templates → ez-form/fieldbuilder/tpl}/NumberInput.tpl.js +3 -3
- package/dist/collection/components/ez-form/structure/FormItem.js +11 -0
- package/dist/collection/components/ez-form/{FormMetadata.js → structure/FormMetadata.js} +53 -38
- package/dist/collection/components/ez-form/structure/FormSheet.js +6 -0
- package/dist/collection/components/ez-guide-navigator/Guide.js +200 -0
- package/dist/collection/components/ez-guide-navigator/ez-guide-navigator.css +53 -0
- package/dist/collection/components/ez-guide-navigator/ez-guide-navigator.js +230 -0
- package/dist/collection/components/ez-tree/ez-tree.js +5 -5
- package/dist/collection/components/ez-tree/subcomponents/TreeItem.js +1 -1
- package/dist/collection/components/ez-tree/types/Tree.js +0 -11
- package/dist/custom-elements/index.d.ts +6 -6
- package/dist/custom-elements/index.js +667 -337
- package/dist/esm/{ez-tree.entry.js → ez-filter-input_3.entry.js} +103 -18
- package/dist/esm/ez-form.entry.js +327 -186
- package/dist/esm/ez-guide-navigator.entry.js +335 -0
- package/dist/esm/ezui.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/ezui/ezui.esm.js +1 -1
- package/dist/ezui/p-6500a260.entry.js +1 -0
- package/dist/ezui/p-6c45dc64.entry.js +1 -0
- package/dist/ezui/p-fa2f4ea5.entry.js +1 -0
- package/dist/types/components/ez-form/DataBinder.d.ts +1 -1
- package/dist/types/components/ez-form/ez-form.d.ts +3 -4
- package/dist/types/components/ez-form/fieldbuilder/FieldBuilder.d.ts +2 -0
- package/dist/types/components/ez-form/fieldbuilder/tpl/CheckBox.tpl.d.ts +3 -0
- package/dist/types/components/ez-form/fieldbuilder/tpl/ComboBox.tpl.d.ts +6 -0
- package/dist/types/components/ez-form/fieldbuilder/tpl/DateInput.tpl.d.ts +15 -0
- package/dist/types/components/ez-form/fieldbuilder/tpl/FileInput.tpl.d.ts +5 -0
- package/dist/types/components/ez-form/fieldbuilder/tpl/NumberInput.tpl.d.ts +7 -0
- package/dist/types/components/ez-form/fieldbuilder/tpl/SearchInput.tpl.d.ts +6 -0
- package/dist/types/components/ez-form/fieldbuilder/tpl/TextArea.tpl.d.ts +5 -0
- package/dist/types/components/ez-form/fieldbuilder/tpl/TextInput.tpl.d.ts +5 -0
- package/dist/types/components/ez-form/store/form.slice.d.ts +2 -2
- package/dist/types/components/ez-form/structure/FormItem.d.ts +9 -0
- package/dist/types/components/ez-form/{FormMetadata.d.ts → structure/FormMetadata.d.ts} +5 -2
- package/dist/types/components/ez-form/structure/FormSheet.d.ts +10 -0
- package/dist/types/components/ez-guide-navigator/Guide.d.ts +69 -0
- package/dist/types/components/ez-tree/types/Tree.d.ts +0 -1
- package/dist/types/components.d.ts +41 -26
- package/dist/types/interfaces/ez-form/IFieldMetadata.d.ts +6 -0
- package/dist/types/interfaces/ez-form/IFieldSetMetadata.d.ts +5 -0
- package/dist/types/{components/ez-form/interfaces → interfaces/ez-form}/IFormSheetMetadata.d.ts +3 -2
- package/dist/types/{components/ez-form/interfaces → interfaces/ez-form}/IRecordValidator.d.ts +1 -1
- package/dist/types/{components/ez-form/interfaces → interfaces/ez-form}/index.d.ts +2 -0
- package/package.json +2 -2
- package/react/components.d.ts +1 -1
- package/react/components.js +1 -1
- package/react/components.js.map +1 -1
- package/dist/cjs/ez-filter-input.cjs.entry.js +0 -81
- package/dist/cjs/ez-form-view.cjs.entry.js +0 -140
- package/dist/cjs/ez-sidebar-button.cjs.entry.js +0 -31
- package/dist/collection/components/ez-form-view/ez-form-view.css +0 -6
- package/dist/collection/components/ez-form-view/ez-form-view.js +0 -71
- package/dist/collection/components/ez-form-view/fieldbuilder/FieldBuilder.js +0 -26
- package/dist/esm/ez-filter-input.entry.js +0 -77
- package/dist/esm/ez-form-view.entry.js +0 -136
- package/dist/esm/ez-sidebar-button.entry.js +0 -27
- package/dist/ezui/p-36ed5c45.entry.js +0 -1
- package/dist/ezui/p-7799666d.entry.js +0 -1
- package/dist/ezui/p-81897c04.entry.js +0 -1
- package/dist/ezui/p-97d2d2f6.entry.js +0 -1
- package/dist/ezui/p-ba03ac61.entry.js +0 -1
- package/dist/types/components/ez-form-view/fieldbuilder/FieldBuilder.d.ts +0 -2
- package/dist/types/components/ez-form-view/fieldbuilder/templates/CheckBox.tpl.d.ts +0 -3
- package/dist/types/components/ez-form-view/fieldbuilder/templates/ComboBox.tpl.d.ts +0 -2
- package/dist/types/components/ez-form-view/fieldbuilder/templates/DateInput.tpl.d.ts +0 -4
- package/dist/types/components/ez-form-view/fieldbuilder/templates/FileInput.tpl.d.ts +0 -2
- package/dist/types/components/ez-form-view/fieldbuilder/templates/NumberInput.tpl.d.ts +0 -3
- package/dist/types/components/ez-form-view/fieldbuilder/templates/SearchInput.tpl.d.ts +0 -2
- package/dist/types/components/ez-form-view/fieldbuilder/templates/TextArea.tpl.d.ts +0 -2
- package/dist/types/components/ez-form-view/fieldbuilder/templates/TextInput.tpl.d.ts +0 -2
- package/dist/types/components/ez-form-view/interfaces/IFormViewField.d.ts +0 -10
- package/dist/types/components/ez-form-view/interfaces/index.d.ts +0 -1
- /package/dist/collection/components/{ez-form-view/fieldbuilder/templates → ez-form/fieldbuilder/tpl}/FileInput.tpl.js +0 -0
- /package/dist/collection/components/{ez-form-view/fieldbuilder/templates → ez-form/fieldbuilder/tpl}/SearchInput.tpl.js +0 -0
- /package/dist/collection/components/{ez-form-view/fieldbuilder/templates → ez-form/fieldbuilder/tpl}/TextArea.tpl.js +0 -0
- /package/dist/collection/components/{ez-form-view/fieldbuilder/templates → ez-form/fieldbuilder/tpl}/TextInput.tpl.js +0 -0
- /package/dist/collection/{components/ez-form/interfaces → interfaces/ez-form}/IDefaultConfig.js +0 -0
- /package/dist/collection/{components/ez-form/interfaces → interfaces/ez-form}/IFieldConfig.js +0 -0
- /package/dist/collection/{components/ez-form-view/interfaces/IFormViewField.js → interfaces/ez-form/IFieldMetadata.js} +0 -0
- /package/dist/collection/{components/ez-form-view/interfaces/index.js → interfaces/ez-form/IFieldSetMetadata.js} +0 -0
- /package/dist/collection/{components/ez-form/interfaces → interfaces/ez-form}/IFormConfig.js +0 -0
- /package/dist/collection/{components/ez-form/interfaces → interfaces/ez-form}/IFormSheetMetadata.js +0 -0
- /package/dist/collection/{components/ez-form/interfaces → interfaces/ez-form}/IInvalidField.js +0 -0
- /package/dist/collection/{components/ez-form/interfaces → interfaces/ez-form}/IRecordValidator.js +0 -0
- /package/dist/collection/{components/ez-form/interfaces → interfaces/ez-form}/ITabConfig.js +0 -0
- /package/dist/collection/{components/ez-form/interfaces → interfaces/ez-form}/IValidationResult.js +0 -0
- /package/dist/collection/{components/ez-form/interfaces → interfaces/ez-form}/index.js +0 -0
- /package/dist/types/{components/ez-form/interfaces → interfaces/ez-form}/IDefaultConfig.d.ts +0 -0
- /package/dist/types/{components/ez-form/interfaces → interfaces/ez-form}/IFieldConfig.d.ts +0 -0
- /package/dist/types/{components/ez-form/interfaces → interfaces/ez-form}/IFormConfig.d.ts +0 -0
- /package/dist/types/{components/ez-form/interfaces → interfaces/ez-form}/IInvalidField.d.ts +0 -0
- /package/dist/types/{components/ez-form/interfaces → interfaces/ez-form}/ITabConfig.d.ts +0 -0
- /package/dist/types/{components/ez-form/interfaces → interfaces/ez-form}/IValidationResult.d.ts +0 -0
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
import { Component, Prop, State, h, Host, Method, Element, Watch } from '@stencil/core';
|
|
2
|
+
import { ElementIDUtils } from '@sankhyalabs/core';
|
|
3
|
+
import { Guide, HIERARCHY_SEPARATOR } from './Guide';
|
|
4
|
+
const ENTER_KEY = 'Enter';
|
|
5
|
+
export class EzGuideNavigator {
|
|
6
|
+
constructor() {
|
|
7
|
+
//TODO: Quando a filtragem for feita dentro da árvore, não será mais necessário
|
|
8
|
+
this.guide = new Guide();
|
|
9
|
+
//TODO: Destituir esse binder. Rediscutida a arquitetura desse componente
|
|
10
|
+
//vimos que o binder só dificulta a vida de quem vai usar... assim teremos
|
|
11
|
+
//apenas uma lista de IGuideItems e o resto fica como a própria árvore...
|
|
12
|
+
/**
|
|
13
|
+
* Provedor de dados para o guide navigator.
|
|
14
|
+
*/
|
|
15
|
+
this.binder = null;
|
|
16
|
+
/**
|
|
17
|
+
* Define se o menu de navegação está aberto.
|
|
18
|
+
*/
|
|
19
|
+
this.open = true;
|
|
20
|
+
//TODO: Destituir esse binder. Rediscutida a arquitetura desse componente
|
|
21
|
+
//vimos que o binder só dificulta a vida de quem vai usar... assim teremos
|
|
22
|
+
//apenas uma lista de IGuideItems e o resto fica como a própria árvore...
|
|
23
|
+
/**
|
|
24
|
+
* Lista de itens do menu de navegação.
|
|
25
|
+
*/
|
|
26
|
+
this.items = [];
|
|
27
|
+
/**
|
|
28
|
+
* Valor do campo de pesquisa usado na filtragem de guias.
|
|
29
|
+
*/
|
|
30
|
+
this.filterText = '';
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Habilita itens específicos a partir de uma lista de ID's.
|
|
34
|
+
*/
|
|
35
|
+
async enableOnly(id, customTooltip) {
|
|
36
|
+
//TODO: Levar para a árvore
|
|
37
|
+
this._tree.items = await this.guide.enableItemsById(id, customTooltip);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Habilita todos os itens do menu de navegação.
|
|
41
|
+
*/
|
|
42
|
+
async enableAll() {
|
|
43
|
+
//TODO: Levar para a árvore
|
|
44
|
+
this._tree.items = await this.guide.enableAllItems();
|
|
45
|
+
}
|
|
46
|
+
//TODO: Destituir esse binder. Rediscutida a arquitetura desse componente
|
|
47
|
+
//vimos que o binder só dificulta a vida de quem vai usar... assim teremos
|
|
48
|
+
//apenas uma lista de IGuideItems e o resto fica como a própria árvore...
|
|
49
|
+
handleBinderChange(newBinder, oldBinder) {
|
|
50
|
+
if (newBinder != oldBinder) {
|
|
51
|
+
this.initTree();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
async handleToggleSidebar() {
|
|
55
|
+
this.open = !this.open;
|
|
56
|
+
if (this.open) {
|
|
57
|
+
await this.initTree();
|
|
58
|
+
this.filterItems();
|
|
59
|
+
}
|
|
60
|
+
;
|
|
61
|
+
}
|
|
62
|
+
handleSelectTreeItem({ detail: parent }) {
|
|
63
|
+
if (!parent.expanded)
|
|
64
|
+
return;
|
|
65
|
+
//TODO: Destituir esse binder. Rediscutida a arquitetura desse componente
|
|
66
|
+
//vimos que o binder só dificulta a vida de quem vai usar... assim teremos
|
|
67
|
+
//apenas uma lista de IGuideItems e o resto fica como a própria árvore...
|
|
68
|
+
this.binder.fetchItems(parent.id).then(async (children) => {
|
|
69
|
+
if (!(children === null || children === void 0 ? void 0 : children.length))
|
|
70
|
+
return;
|
|
71
|
+
await this.guide.addChildren(parent, children);
|
|
72
|
+
const { list } = await this.guide.getItemsByLabel(this.filterText, 'label', parent);
|
|
73
|
+
this._tree.items = list;
|
|
74
|
+
this._tree.openItem(parent.hierarchyId || parent.id);
|
|
75
|
+
});
|
|
76
|
+
this.binder.onSelectItem(parent);
|
|
77
|
+
}
|
|
78
|
+
//TODO: Destituir esse binder. Rediscutida a arquitetura desse componente
|
|
79
|
+
//vimos que o binder só dificulta a vida de quem vai usar... assim teremos
|
|
80
|
+
//apenas uma lista de IGuideItems e o resto fica como a própria árvore...
|
|
81
|
+
handleFilterTree(event) {
|
|
82
|
+
if (event.key === ENTER_KEY)
|
|
83
|
+
this.filterItems();
|
|
84
|
+
}
|
|
85
|
+
//TODO: Destituir esse binder. Rediscutida a arquitetura desse componente
|
|
86
|
+
//vimos que o binder só dificulta a vida de quem vai usar... assim teremos
|
|
87
|
+
//apenas uma lista de IGuideItems e o resto fica como a própria árvore...
|
|
88
|
+
async setTreeIems(list, first) {
|
|
89
|
+
var _a;
|
|
90
|
+
this._tree.items = list;
|
|
91
|
+
if (first && !(first === null || first === void 0 ? void 0 : first.disabled)) {
|
|
92
|
+
const parentHierarchyId = ((_a = first.hierarchy) === null || _a === void 0 ? void 0 : _a.slice(0, -1).join(HIERARCHY_SEPARATOR)) || first.id;
|
|
93
|
+
await this._tree.openItem(parentHierarchyId);
|
|
94
|
+
await this._tree.selectItem(first.id);
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
this._tree.selectItem(null);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
//TODO: Destituir esse binder. Rediscutida a arquitetura desse componente
|
|
101
|
+
//vimos que o binder só dificulta a vida de quem vai usar... assim teremos
|
|
102
|
+
//apenas uma lista de IGuideItems e o resto fica como a própria árvore...
|
|
103
|
+
filterItems() {
|
|
104
|
+
this.guide.getItemsByLabel(this.filterText).then(async ({ list, first }) => {
|
|
105
|
+
this.setTreeIems(list, first);
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
//TODO: Destituir esse binder. Rediscutida a arquitetura desse componente
|
|
109
|
+
//vimos que o binder só dificulta a vida de quem vai usar... assim teremos
|
|
110
|
+
//apenas uma lista de IGuideItems e o resto fica como a própria árvore...
|
|
111
|
+
async initTree() {
|
|
112
|
+
if (!this.binder)
|
|
113
|
+
return;
|
|
114
|
+
const binderItems = await this.binder.fetchItems();
|
|
115
|
+
await this.guide.setList(binderItems);
|
|
116
|
+
const guideItems = await this.guide.getList();
|
|
117
|
+
this.setTreeIems(guideItems);
|
|
118
|
+
}
|
|
119
|
+
componentDidLoad() {
|
|
120
|
+
ElementIDUtils.addIDInfoIfNotExists(this._element);
|
|
121
|
+
this.initTree();
|
|
122
|
+
}
|
|
123
|
+
render() {
|
|
124
|
+
return (h(Host, null, this.open ? (h("aside", { tabIndex: -1, id: "navigator", class: "ez-col ez-col--sd-12 ez-col--tb-3 ez-guide-navigator", "data-element-id": ElementIDUtils.getInternalIDInfo("sidebar") },
|
|
125
|
+
h("div", { role: "search", class: "ez-guide-navigator__actions" },
|
|
126
|
+
h("ez-filter-input", { mode: "slim", value: this.filterText, onEzChange: (event) => (this.filterText = event.detail), label: "Buscar guia", "aria-placeholder": "Buscar guia", onKeyUp: this.handleFilterTree.bind(this), "data-element-id": ElementIDUtils.getInternalIDInfo("textinput") }),
|
|
127
|
+
h("ez-button", { onClick: this.handleToggleSidebar.bind(this), class: "inverted", mode: "icon", size: "small", iconName: "show_menu", title: "Ocultar menu", "aria-label": "Ocultar menu", "aria-controls": "navigator", "data-element-id": ElementIDUtils.getInternalIDInfo("closeButton") })),
|
|
128
|
+
h("ez-tree", { ref: element => (this._tree = element), onEzChange: evt => this.handleSelectTreeItem(evt), "data-element-id": ElementIDUtils.getInternalIDInfo("tree") }))) : (h("ez-sidebar-button", { onEzClick: this.handleToggleSidebar.bind(this), "aria-controls": "navigator", "aria-expanded": this.open, "data-element-id": ElementIDUtils.getInternalIDInfo("openButton") }))));
|
|
129
|
+
}
|
|
130
|
+
static get is() { return "ez-guide-navigator"; }
|
|
131
|
+
static get encapsulation() { return "shadow"; }
|
|
132
|
+
static get originalStyleUrls() { return {
|
|
133
|
+
"$": ["ez-guide-navigator.css"]
|
|
134
|
+
}; }
|
|
135
|
+
static get styleUrls() { return {
|
|
136
|
+
"$": ["ez-guide-navigator.css"]
|
|
137
|
+
}; }
|
|
138
|
+
static get properties() { return {
|
|
139
|
+
"binder": {
|
|
140
|
+
"type": "unknown",
|
|
141
|
+
"mutable": false,
|
|
142
|
+
"complexType": {
|
|
143
|
+
"original": "IGuideBinder",
|
|
144
|
+
"resolved": "IGuideBinder",
|
|
145
|
+
"references": {
|
|
146
|
+
"IGuideBinder": {
|
|
147
|
+
"location": "local"
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
"required": false,
|
|
152
|
+
"optional": false,
|
|
153
|
+
"docs": {
|
|
154
|
+
"tags": [],
|
|
155
|
+
"text": "Provedor de dados para o guide navigator."
|
|
156
|
+
},
|
|
157
|
+
"defaultValue": "null"
|
|
158
|
+
},
|
|
159
|
+
"open": {
|
|
160
|
+
"type": "boolean",
|
|
161
|
+
"mutable": true,
|
|
162
|
+
"complexType": {
|
|
163
|
+
"original": "boolean",
|
|
164
|
+
"resolved": "boolean",
|
|
165
|
+
"references": {}
|
|
166
|
+
},
|
|
167
|
+
"required": false,
|
|
168
|
+
"optional": false,
|
|
169
|
+
"docs": {
|
|
170
|
+
"tags": [],
|
|
171
|
+
"text": "Define se o menu de navega\u00E7\u00E3o est\u00E1 aberto."
|
|
172
|
+
},
|
|
173
|
+
"attribute": "open",
|
|
174
|
+
"reflect": true,
|
|
175
|
+
"defaultValue": "true"
|
|
176
|
+
}
|
|
177
|
+
}; }
|
|
178
|
+
static get states() { return {
|
|
179
|
+
"items": {},
|
|
180
|
+
"filterText": {}
|
|
181
|
+
}; }
|
|
182
|
+
static get methods() { return {
|
|
183
|
+
"enableOnly": {
|
|
184
|
+
"complexType": {
|
|
185
|
+
"signature": "(id: Array<string>, customTooltip: string) => Promise<void>",
|
|
186
|
+
"parameters": [{
|
|
187
|
+
"tags": [],
|
|
188
|
+
"text": ""
|
|
189
|
+
}, {
|
|
190
|
+
"tags": [],
|
|
191
|
+
"text": ""
|
|
192
|
+
}],
|
|
193
|
+
"references": {
|
|
194
|
+
"Promise": {
|
|
195
|
+
"location": "global"
|
|
196
|
+
},
|
|
197
|
+
"Array": {
|
|
198
|
+
"location": "global"
|
|
199
|
+
}
|
|
200
|
+
},
|
|
201
|
+
"return": "Promise<void>"
|
|
202
|
+
},
|
|
203
|
+
"docs": {
|
|
204
|
+
"text": "Habilita itens espec\u00EDficos a partir de uma lista de ID's.",
|
|
205
|
+
"tags": []
|
|
206
|
+
}
|
|
207
|
+
},
|
|
208
|
+
"enableAll": {
|
|
209
|
+
"complexType": {
|
|
210
|
+
"signature": "() => Promise<void>",
|
|
211
|
+
"parameters": [],
|
|
212
|
+
"references": {
|
|
213
|
+
"Promise": {
|
|
214
|
+
"location": "global"
|
|
215
|
+
}
|
|
216
|
+
},
|
|
217
|
+
"return": "Promise<void>"
|
|
218
|
+
},
|
|
219
|
+
"docs": {
|
|
220
|
+
"text": "Habilita todos os itens do menu de navega\u00E7\u00E3o.",
|
|
221
|
+
"tags": []
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
}; }
|
|
225
|
+
static get elementRef() { return "_element"; }
|
|
226
|
+
static get watchers() { return [{
|
|
227
|
+
"propName": "binder",
|
|
228
|
+
"methodName": "handleBinderChange"
|
|
229
|
+
}]; }
|
|
230
|
+
}
|
|
@@ -81,7 +81,7 @@ export class EzTree {
|
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
observeItems() {
|
|
84
|
-
this._tree.load(this.items);
|
|
84
|
+
return this._tree.load(this.items || []);
|
|
85
85
|
}
|
|
86
86
|
observeValue() {
|
|
87
87
|
var _a;
|
|
@@ -129,7 +129,7 @@ export class EzTree {
|
|
|
129
129
|
if (expanded) {
|
|
130
130
|
this.ezOpenItem.emit(item);
|
|
131
131
|
}
|
|
132
|
-
this
|
|
132
|
+
forceUpdate(this);
|
|
133
133
|
}
|
|
134
134
|
previousLevel() {
|
|
135
135
|
var _a;
|
|
@@ -138,7 +138,7 @@ export class EzTree {
|
|
|
138
138
|
}
|
|
139
139
|
if (this.value.expanded) {
|
|
140
140
|
this.value.expanded = false;
|
|
141
|
-
|
|
141
|
+
forceUpdate(this);
|
|
142
142
|
}
|
|
143
143
|
else {
|
|
144
144
|
const node = this._tree.getNode(this.value.id);
|
|
@@ -161,7 +161,7 @@ export class EzTree {
|
|
|
161
161
|
}
|
|
162
162
|
else {
|
|
163
163
|
this.value.expanded = true;
|
|
164
|
-
|
|
164
|
+
forceUpdate(this);
|
|
165
165
|
}
|
|
166
166
|
}
|
|
167
167
|
indexOf(id) {
|
|
@@ -232,7 +232,7 @@ export class EzTree {
|
|
|
232
232
|
static get properties() { return {
|
|
233
233
|
"items": {
|
|
234
234
|
"type": "unknown",
|
|
235
|
-
"mutable":
|
|
235
|
+
"mutable": true,
|
|
236
236
|
"complexType": {
|
|
237
237
|
"original": "Array<ITreeItem>",
|
|
238
238
|
"resolved": "ITreeItem[]",
|
|
@@ -19,7 +19,7 @@ export const TreeItem = (props) => {
|
|
|
19
19
|
}),
|
|
20
20
|
h("div", { class: "item-icon-box" }, expandable &&
|
|
21
21
|
h("ez-icon", { id: treeItem.id, class: "item-icon", size: "small", iconName: iconResolver(treeItem, expanded, level), onClick: () => available && iconClick(treeItem) })),
|
|
22
|
-
h("label", { class: "item-label" }, treeItem.label)),
|
|
22
|
+
h("label", { class: "item-label", title: treeItem.disabled ? (treeItem.tooltip || treeItem.label) : treeItem.label }, treeItem.label)),
|
|
23
23
|
expanded
|
|
24
24
|
&& node.getChildren().map(child => h(TreeItem, { selectedId: selectedId, node: child, itemClick: itemClick, iconClick: iconClick, level: level + 1, iconResolver: iconResolver, tooltipResolver: tooltipResolver, itemsList: itemsList }))));
|
|
25
25
|
};
|
|
@@ -37,17 +37,6 @@ export class Tree extends Node {
|
|
|
37
37
|
}
|
|
38
38
|
});
|
|
39
39
|
}
|
|
40
|
-
updateItem(item) {
|
|
41
|
-
if (item == undefined) {
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
const node = this.getNode(item.id);
|
|
45
|
-
if (node == undefined) {
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
Object.keys(item).forEach(attrib => node.item[attrib] = item[attrib]);
|
|
49
|
-
this._changeCallback();
|
|
50
|
-
}
|
|
51
40
|
async open(path) {
|
|
52
41
|
return new Promise(async (resolve) => {
|
|
53
42
|
await this.walk(this, path, node => node.item.expanded = true);
|
|
@@ -110,18 +110,18 @@ export const EzForm: {
|
|
|
110
110
|
new (): EzForm;
|
|
111
111
|
};
|
|
112
112
|
|
|
113
|
-
interface EzFormView extends Components.EzFormView, HTMLElement {}
|
|
114
|
-
export const EzFormView: {
|
|
115
|
-
prototype: EzFormView;
|
|
116
|
-
new (): EzFormView;
|
|
117
|
-
};
|
|
118
|
-
|
|
119
113
|
interface EzGrid extends Components.EzGrid, HTMLElement {}
|
|
120
114
|
export const EzGrid: {
|
|
121
115
|
prototype: EzGrid;
|
|
122
116
|
new (): EzGrid;
|
|
123
117
|
};
|
|
124
118
|
|
|
119
|
+
interface EzGuideNavigator extends Components.EzGuideNavigator, HTMLElement {}
|
|
120
|
+
export const EzGuideNavigator: {
|
|
121
|
+
prototype: EzGuideNavigator;
|
|
122
|
+
new (): EzGuideNavigator;
|
|
123
|
+
};
|
|
124
|
+
|
|
125
125
|
interface EzIcon extends Components.EzIcon, HTMLElement {}
|
|
126
126
|
export const EzIcon: {
|
|
127
127
|
prototype: EzIcon;
|