x-prop-tree 0.7.39 → 0.7.41
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/composables/uis/uiProperty.d.ts +2 -2
- package/dist/index.js +202 -181
- package/dist/utils/collapseState.d.ts +9 -0
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/propertyState.d.ts +12 -12
- package/dist/utils/provideInject.d.ts +3 -3
- package/package.json +16 -16
- package/dist/utils/branch.d.ts +0 -15
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Ref, VNode } from 'vue';
|
|
2
2
|
import { ZProperty } from 'x-runtime-lib';
|
|
3
|
-
import {
|
|
4
|
-
export declare function useUiProperty(
|
|
3
|
+
import { PropertyState } from '@/utils';
|
|
4
|
+
export declare function useUiProperty(propertyState: Ref<PropertyState>, entryHeight: Ref<string>, entryValueWidth: Ref<string>): {
|
|
5
5
|
renderProperty: (keys: (string | number)[], property: ZProperty, node: VNode) => VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
6
6
|
[key: string]: any;
|
|
7
7
|
}>;
|
package/dist/index.js
CHANGED
|
@@ -1,12 +1,28 @@
|
|
|
1
|
-
import { a as cloneDeep_default, i as isEqual_default, n as setCollapse, r as tidyList, t as getListEntry } from "./vendor.gmzhs72f.js";
|
|
2
|
-
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, h, inject, isRef, mergeModels, mergeProps, normalizeStyle, onBeforeUnmount, onMounted, onUnmounted, openBlock, provide,
|
|
1
|
+
import { a as cloneDeep_default, i as isEqual_default, n as setCollapse$1, r as tidyList, t as getListEntry } from "./vendor.gmzhs72f.js";
|
|
2
|
+
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, h, inject, isRef, mergeModels, mergeProps, normalizeStyle, onBeforeUnmount, onMounted, onUnmounted, openBlock, provide, ref, renderList, renderSlot, resolveComponent, resolveDirective, toDisplayString, unref, useId, useModel, useTemplateRef, watch, watchEffect, withCtx, withDirectives, withKeys, withModifiers } from "vue";
|
|
3
3
|
import { useI18n } from "vue-i18n";
|
|
4
4
|
import { eventBus, globalObjects, injectDark, injectLocale, openNumberDlg, openPromptDlg, useColor, useSystem, useViewStack } from "x-essential-lib";
|
|
5
5
|
import { getElement, getPropertyDefault, getTag, makeSlotId, parsePercentStr, parsePixelStr, pkgs } from "x-runtime-lib";
|
|
6
6
|
import { globalState } from "x-state-lib";
|
|
7
7
|
import { useDisplay } from "vuetify";
|
|
8
8
|
import { XBlockly } from "x-block-lib";
|
|
9
|
-
|
|
9
|
+
function isCollapse(e, m) {
|
|
10
|
+
let g = e.value;
|
|
11
|
+
for (let e of m) {
|
|
12
|
+
if (!g.children[e]) return !0;
|
|
13
|
+
g = g.children[e];
|
|
14
|
+
}
|
|
15
|
+
return g.collapse;
|
|
16
|
+
}
|
|
17
|
+
function setCollapse(e, m, g) {
|
|
18
|
+
let _ = e.value;
|
|
19
|
+
for (let e of m) _.children[e] || (_.children[e] = {
|
|
20
|
+
collapse: !0,
|
|
21
|
+
children: {}
|
|
22
|
+
}), _ = _.children[e];
|
|
23
|
+
_.collapse = g;
|
|
24
|
+
}
|
|
25
|
+
const isPropertyCompatible = (e, m) => {
|
|
10
26
|
let g = (e, m) => {
|
|
11
27
|
if (e.ui !== m.ui || e.array !== m.array) return !1;
|
|
12
28
|
if (e.ui || m.ui) return !0;
|
|
@@ -70,86 +86,136 @@ const isBranchChildrenMap = (e) => !(e instanceof Array), isBranchChildrenArray
|
|
|
70
86
|
let y = _;
|
|
71
87
|
(m.ui === "switch" || m.ui === "select" || m.ui === "colorPicker" || m.ui === "multiTypes" || m.ui === "selectComp" || m.ui === "selectSlot" || m.ui === "selectAdaptSlot") && (_ || (y = void 0)), y !== g[m.key] && (g[m.key] = y, v(e, g[m.key]));
|
|
72
88
|
}
|
|
73
|
-
}
|
|
89
|
+
};
|
|
74
90
|
var propertyStateIgnores = [["basic", "id"], ["basic", "name"]], isPropertyStateIgnored = (e) => propertyStateIgnores.find((g) => isEqual_default(e, g));
|
|
75
|
-
const execProperty = (m, g, _, v, y, b, x) => (m = cloneDeep_default(m), b === void 0 ? m.push(g.key) : (m.push(b), x && m.push(g.key)), isPropertyStateIgnored(m) ? (v.change = !1, v.
|
|
91
|
+
const execProperty = (m, g, _, v, y, b, x) => (m = cloneDeep_default(m), b === void 0 ? m.push(g.key) : (m.push(b), x && m.push(g.key)), isPropertyStateIgnored(m) ? (v.change = !1, v.warning = !1, {
|
|
92
|
+
change: v.change,
|
|
93
|
+
warning: v.warning
|
|
94
|
+
}) : g.ui ? g.array && v.children ? execPropertyLeafArray(m, g, _, v, y, b, x) : execPropertyLeafScalar(g, _, v, b, x) : g.array ? execPropertyBranchArray(m, g, _, v, y, b, x) : execPropertyBranchScalar(m, g, _, v, y, b, x));
|
|
76
95
|
var execPropertyBranchArray = (e, g, _, v, y, b, x) => {
|
|
77
|
-
if (g.ui) return console.assert(!1, "execPropertyBranchArray property ui must be invalid"),
|
|
78
|
-
|
|
79
|
-
|
|
96
|
+
if (g.ui) return console.assert(!1, "execPropertyBranchArray property ui must be invalid"), {
|
|
97
|
+
change: !1,
|
|
98
|
+
warning: !1
|
|
99
|
+
};
|
|
100
|
+
if (!g.array) return console.assert(!1, "execPropertyBranchArray property array must be valid"), {
|
|
101
|
+
change: !1,
|
|
102
|
+
warning: !1
|
|
103
|
+
};
|
|
80
104
|
let S;
|
|
81
|
-
b !== void 0 && !x ? (_[b] instanceof Array || (_[b] = getPropertyDefault(g), y?.(e, _[b])), S = _[b]) : (_[g.key] instanceof Array || (_[g.key] = getPropertyDefault(g), y?.(e, _[g.key])), S = _[g.key])
|
|
105
|
+
b !== void 0 && !x ? (_[b] instanceof Array || (_[b] = getPropertyDefault(g), y?.(e, _[b])), S = _[b]) : (_[g.key] instanceof Array || (_[g.key] = getPropertyDefault(g), y?.(e, _[g.key])), S = _[g.key]);
|
|
82
106
|
for (let m = 0; m < S.length; m++) {
|
|
83
|
-
v.children
|
|
107
|
+
v.children[m] = {
|
|
84
108
|
change: !1,
|
|
109
|
+
warning: !1,
|
|
85
110
|
children: {}
|
|
86
|
-
}
|
|
111
|
+
};
|
|
87
112
|
let _ = v.children[m];
|
|
88
|
-
g.children
|
|
89
|
-
|
|
90
|
-
console.assert(!1);
|
|
91
|
-
return;
|
|
92
|
-
}
|
|
93
|
-
_.children[g.key] = {
|
|
113
|
+
for (let b of g.children) {
|
|
114
|
+
_.children[b.key] = {
|
|
94
115
|
change: !1,
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
116
|
+
warning: !1,
|
|
117
|
+
children: {}
|
|
118
|
+
};
|
|
119
|
+
let { change: g, warning: x } = execProperty(e, b, S[m], _.children[b.key], y, m, !0);
|
|
120
|
+
!_.change && g && (_.change = g), !_.change && x && (_.warning = x), !v.change && _.change && (v.change = _.change), !v.warning && _.warning && (v.warning = _.warning);
|
|
121
|
+
}
|
|
98
122
|
}
|
|
99
|
-
return v.change ||= !isEqual_default(S, getPropertyDefault(g)),
|
|
123
|
+
return v.change ||= !isEqual_default(S, getPropertyDefault(g)), {
|
|
124
|
+
change: v.change,
|
|
125
|
+
warning: v.warning
|
|
126
|
+
};
|
|
100
127
|
}, execPropertyBranchScalar = (e, m, g, _, v, y, b) => {
|
|
101
|
-
if (m.ui) return console.assert(!1, "execPropertyBranchScalar property ui must be invalid"),
|
|
102
|
-
|
|
103
|
-
|
|
128
|
+
if (m.ui) return console.assert(!1, "execPropertyBranchScalar property ui must be invalid"), {
|
|
129
|
+
change: !1,
|
|
130
|
+
warning: !1
|
|
131
|
+
};
|
|
132
|
+
if (m.array) return console.assert(!1, "execPropertyBranchScalar property array must be invalid"), {
|
|
133
|
+
change: !1,
|
|
134
|
+
warning: !1
|
|
135
|
+
};
|
|
104
136
|
let x;
|
|
105
|
-
y !== void 0 && !b ? (g[y] || (g[y] = {}), x = g[y]) : (g[m.key] || (g[m.key] = {}), x = g[m.key])
|
|
137
|
+
y !== void 0 && !b ? (g[y] || (g[y] = {}), x = g[y]) : (g[m.key] || (g[m.key] = {}), x = g[m.key]);
|
|
106
138
|
for (let g = 0; g < m.children.length; g++) {
|
|
107
139
|
let y = m.children[g];
|
|
108
140
|
_.children[y.key] = {
|
|
109
141
|
change: !1,
|
|
110
|
-
|
|
111
|
-
|
|
142
|
+
warning: !1,
|
|
143
|
+
children: {}
|
|
144
|
+
};
|
|
145
|
+
let { change: b, warning: S } = execProperty(e, y, x, _.children[y.key], v);
|
|
146
|
+
!_.change && b && (_.change = b), !_.warning && S && (_.warning = S);
|
|
112
147
|
}
|
|
113
|
-
return
|
|
148
|
+
return {
|
|
149
|
+
change: _.change,
|
|
150
|
+
warning: _.change
|
|
151
|
+
};
|
|
114
152
|
}, execPropertyLeafArray = (e, g, _, v, y, b, x) => {
|
|
115
|
-
if (!g.ui) return console.assert(!1, "execPropertyLeafArray property ui must be valid"),
|
|
116
|
-
if (!g.array) return console.assert(!1, "execPropertyLeafArray property aray must be valid"), !1;
|
|
117
|
-
if (!v.children || !isPropertyStateChildrenArray(v.children)) return console.assert(!1, "execPropertyLeafArray state children must be array"), !1;
|
|
118
|
-
let S;
|
|
119
|
-
b !== void 0 && !x ? (_[b] instanceof Array || (_[b] = getPropertyDefault(g), y?.(e, _[b])), S = _[b]) : (_[g.key] instanceof Array || (_[g.key] = getPropertyDefault(g), y?.(e, _[g.key])), S = _[g.key]), v.change = !1;
|
|
120
|
-
for (let m = 0; m < S.length; m++) v.children[m] = {
|
|
153
|
+
if (!g.ui) return console.assert(!1, "execPropertyLeafArray property ui must be valid"), {
|
|
121
154
|
change: !1,
|
|
122
|
-
|
|
123
|
-
}
|
|
124
|
-
|
|
155
|
+
warning: !1
|
|
156
|
+
};
|
|
157
|
+
if (!g.array) return console.assert(!1, "execPropertyLeafArray property aray must be valid"), {
|
|
158
|
+
change: !1,
|
|
159
|
+
warning: !1
|
|
160
|
+
};
|
|
161
|
+
let S;
|
|
162
|
+
b !== void 0 && !x ? (_[b] instanceof Array || (_[b] = getPropertyDefault(g), y?.(e, _[b])), S = _[b]) : (_[g.key] instanceof Array || (_[g.key] = getPropertyDefault(g), y?.(e, _[g.key])), S = _[g.key]);
|
|
163
|
+
for (let m = 0; m < S.length; m++) {
|
|
164
|
+
v.children[m] = {
|
|
165
|
+
change: !1,
|
|
166
|
+
warning: !1,
|
|
167
|
+
children: {}
|
|
168
|
+
};
|
|
169
|
+
let { change: _, warning: b } = execProperty(e, g, S, v.children[m], y, m, !1);
|
|
170
|
+
!v.change && _ && (v.change = _), !v.warning && b && (v.warning = b);
|
|
171
|
+
}
|
|
172
|
+
return v.change ||= !isEqual_default(S, getPropertyDefault(g)), {
|
|
173
|
+
change: v.change,
|
|
174
|
+
warning: v.warning
|
|
175
|
+
};
|
|
125
176
|
}, execPropertyLeafScalar = (e, g, _, v, y) => {
|
|
126
|
-
if (!e.ui) return console.assert(!1, "execPropertyLeafScalar property ui must be valid"),
|
|
177
|
+
if (!e.ui) return console.assert(!1, "execPropertyLeafScalar property ui must be valid"), {
|
|
178
|
+
change: !1,
|
|
179
|
+
warning: !1
|
|
180
|
+
};
|
|
127
181
|
let b;
|
|
128
|
-
return b = v !== void 0 && !y ? g[v] : g[e.key], _.change = !isEqual_default(b, getPropertyDefault(e, !0)),
|
|
182
|
+
return b = v !== void 0 && !y ? g[v] : g[e.key], _.change = !isEqual_default(b, getPropertyDefault(e, !0)), {
|
|
183
|
+
change: _.change,
|
|
184
|
+
warning: _.warning
|
|
185
|
+
};
|
|
129
186
|
};
|
|
130
187
|
const rebuildPropertyState = (e, m, g, _) => {
|
|
131
188
|
if (m.length <= 0 || !g) {
|
|
132
|
-
e.value = {
|
|
189
|
+
e.value = {
|
|
190
|
+
change: !1,
|
|
191
|
+
warning: !1,
|
|
192
|
+
children: {}
|
|
193
|
+
};
|
|
133
194
|
return;
|
|
134
195
|
}
|
|
135
|
-
let v = {
|
|
136
|
-
m.forEach((e) => {
|
|
137
|
-
v[e.key] = {
|
|
138
|
-
change: !1,
|
|
139
|
-
children: e.array ? [] : {}
|
|
140
|
-
}, execProperty([], e, g, v[e.key], _);
|
|
141
|
-
}), e.value = v;
|
|
142
|
-
}, isPropertyChanged = (e, m) => {
|
|
143
|
-
let g = {
|
|
196
|
+
let v = {
|
|
144
197
|
change: !1,
|
|
145
|
-
|
|
198
|
+
warning: !1,
|
|
199
|
+
children: {}
|
|
146
200
|
};
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
201
|
+
for (let e of m) {
|
|
202
|
+
let m = {
|
|
203
|
+
change: !1,
|
|
204
|
+
warning: !1,
|
|
205
|
+
children: {}
|
|
206
|
+
};
|
|
207
|
+
v.children[e.key] = m, execProperty([], e, g, m, _);
|
|
208
|
+
}
|
|
209
|
+
e.value = v;
|
|
210
|
+
}, isPropertyChanged = (e, m) => {
|
|
211
|
+
let g = e;
|
|
212
|
+
for (let e of m) {
|
|
213
|
+
if (!g.children[e]) return !1;
|
|
214
|
+
g = g.children[e];
|
|
215
|
+
}
|
|
216
|
+
return g.change;
|
|
151
217
|
};
|
|
152
|
-
var versionKey = Symbol(), configKey = Symbol(), objectKey = Symbol(),
|
|
218
|
+
var versionKey = Symbol(), configKey = Symbol(), objectKey = Symbol(), propertyStateKey = Symbol(), changeEventKey = Symbol(), compListKey = Symbol(), slotListKey = Symbol(), adaptSlotListKey = Symbol();
|
|
153
219
|
function provideVersion(e) {
|
|
154
220
|
provide(versionKey, e);
|
|
155
221
|
}
|
|
@@ -168,11 +234,11 @@ function provideObject(e) {
|
|
|
168
234
|
function injectObject() {
|
|
169
235
|
return inject(objectKey);
|
|
170
236
|
}
|
|
171
|
-
function
|
|
172
|
-
provide(
|
|
237
|
+
function providePropertyState(e) {
|
|
238
|
+
provide(propertyStateKey, e);
|
|
173
239
|
}
|
|
174
|
-
function
|
|
175
|
-
return inject(
|
|
240
|
+
function injectPropertyState() {
|
|
241
|
+
return inject(propertyStateKey);
|
|
176
242
|
}
|
|
177
243
|
function provideChangeEvent(e) {
|
|
178
244
|
provide(changeEventKey, e);
|
|
@@ -201,7 +267,7 @@ function injectAdaptSlotList() {
|
|
|
201
267
|
var menu_default = /* @__PURE__ */ defineComponent({
|
|
202
268
|
__name: "index",
|
|
203
269
|
setup(e) {
|
|
204
|
-
let { t: m } = useI18n(), g = injectConfig(), _ = injectObject(), v =
|
|
270
|
+
let { t: m } = useI18n(), g = injectConfig(), _ = injectObject(), v = injectPropertyState(), S = injectChangeEvent(), w = ref(0), D = ref(0), O = ref([]), k = computed(() => [w.value, D.value]), j = (e) => {
|
|
205
271
|
(() => !(O.value.length <= 0 || !isPropertyChanged(v.value, O.value)))() && e.push({
|
|
206
272
|
title: m("x-prop-tree.reset"),
|
|
207
273
|
func: () => {
|
|
@@ -593,7 +659,7 @@ var _hoisted_1$17 = { class: "text-subtitle-2 ml-1" }, _hoisted_2$5 = { class: "
|
|
|
593
659
|
setup(e) {
|
|
594
660
|
let { nameList: m } = useSystem(), _ = useModel(e, "modelValue"), b = useModel(e, "open"), w = injectAdaptSlotList(), T = (e) => {
|
|
595
661
|
let m = getListEntry(w, e);
|
|
596
|
-
m && setCollapse(w, e, !m.collapse);
|
|
662
|
+
m && setCollapse$1(w, e, !m.collapse);
|
|
597
663
|
}, E = (e) => {
|
|
598
664
|
_.value = e, b.value = !1;
|
|
599
665
|
};
|
|
@@ -848,7 +914,7 @@ var _hoisted_1$17 = { class: "text-subtitle-2 ml-1" }, _hoisted_2$5 = { class: "
|
|
|
848
914
|
setup(e) {
|
|
849
915
|
let { nameList: m } = useSystem(), _ = useModel(e, "modelValue"), b = useModel(e, "open"), w = injectCompList(), T = (e) => {
|
|
850
916
|
let m = getListEntry(w, e);
|
|
851
|
-
m && setCollapse(w, e, !m.collapse);
|
|
917
|
+
m && setCollapse$1(w, e, !m.collapse);
|
|
852
918
|
}, E = (e) => {
|
|
853
919
|
_.value = e, b.value = !1, eventBus.emit("refreshDepends");
|
|
854
920
|
};
|
|
@@ -1721,7 +1787,14 @@ var propTree_default = /* @__PURE__ */ defineComponent({
|
|
|
1721
1787
|
},
|
|
1722
1788
|
emits: ["change"],
|
|
1723
1789
|
setup(m, { emit: g }) {
|
|
1724
|
-
let { t: _ } = useI18n(), { backgroundColor1: v } = useColor(), b = m, x = g, S = ref("20px"), w = ref("56px"), T = ref("200px"), D =
|
|
1790
|
+
let { t: _ } = useI18n(), { backgroundColor1: v } = useColor(), b = m, x = g, S = ref("20px"), w = ref("56px"), T = ref("200px"), D = ref({
|
|
1791
|
+
collapse: !0,
|
|
1792
|
+
children: {}
|
|
1793
|
+
}), k = ref({
|
|
1794
|
+
change: !1,
|
|
1795
|
+
warning: !1,
|
|
1796
|
+
children: {}
|
|
1797
|
+
}), A = (e, m) => {
|
|
1725
1798
|
rebuildPropertyState(k, b.config, b.object), x("change", e, m);
|
|
1726
1799
|
};
|
|
1727
1800
|
watch([() => b.config, () => b.object], () => {
|
|
@@ -1748,21 +1821,20 @@ var propTree_default = /* @__PURE__ */ defineComponent({
|
|
|
1748
1821
|
let F = ref(b.object);
|
|
1749
1822
|
provideObject(F), watch(() => b.object, () => {
|
|
1750
1823
|
F.value = b.object;
|
|
1751
|
-
}),
|
|
1752
|
-
let { renderProperty: I } = useUiProperty(k, w, T), { renderUiDummy: L } = useUiDummy(A), { renderUiStrInput: R } = useUiStrInput(A), { renderUiNumInput: z } = useUiNumInput(A), { renderUiSwitch: B } = useUiSwitch(A), { renderUiSelect: V } = useUiSelect(A), { renderUiColorPicker: H } = useUiColorPicker(A), { renderUiJsonEditor: U } = useUiJsonEditor(A), { renderUiMultiTypes: W } = useUiMultiTypes(A), { renderUiCompSelect: G } = useUiCompSelect(A), { renderUiSlotSelect: K } = useUiSlotSelect(A), { renderUiAdaptSlotSelect: q } = useUiAdaptSlotSelect(A), J = (m, g, _, v, y
|
|
1824
|
+
}), providePropertyState(k), provideChangeEvent(A), useCompList(), useSlotList(), useAdaptSlotList(j, M, N);
|
|
1825
|
+
let { renderProperty: I } = useUiProperty(k, w, T), { renderUiDummy: L } = useUiDummy(A), { renderUiStrInput: R } = useUiStrInput(A), { renderUiNumInput: z } = useUiNumInput(A), { renderUiSwitch: B } = useUiSwitch(A), { renderUiSelect: V } = useUiSelect(A), { renderUiColorPicker: H } = useUiColorPicker(A), { renderUiJsonEditor: U } = useUiJsonEditor(A), { renderUiMultiTypes: W } = useUiMultiTypes(A), { renderUiCompSelect: G } = useUiCompSelect(A), { renderUiSlotSelect: K } = useUiSlotSelect(A), { renderUiAdaptSlotSelect: q } = useUiAdaptSlotSelect(A), J = (m, g, _, v, y) => (m = cloneDeep_default(m), v === void 0 ? m.push(g.key) : (m.push(v), y && m.push(g.key)), g.ui ? g.array ? Z(m, g, _, v, y) : Q(m, g, _, v, y) : g.array ? Y(m, g, _, v, y) : X(m, g, _, v, y)), Y = (e, m, g, v, y) => {
|
|
1753
1826
|
if (m.ui) return console.assert(!1), h("div", "renderBranchArray property ui must be invalid");
|
|
1754
1827
|
if (!m.array) return console.assert(!1), h("div", "renderBranchArray property array must be valid");
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
collapse: v.collapse,
|
|
1828
|
+
let b;
|
|
1829
|
+
v !== void 0 && !y ? (g[v] instanceof Array || (g[v] = getPropertyDefault(m), A(e, g[m.key])), b = g[v]) : (g[m.key] instanceof Array || (g[m.key] = getPropertyDefault(m), A(e, g[m.key])), b = g[m.key]);
|
|
1830
|
+
let x = _(m.name);
|
|
1831
|
+
isCollapse(D, e) && isPropertyChanged(k.value, e) && (x += " *");
|
|
1832
|
+
let C = h(title_default, {
|
|
1833
|
+
title: x,
|
|
1834
|
+
collapse: isCollapse(D, e),
|
|
1763
1835
|
hasCreate: !0,
|
|
1764
|
-
onCollapse: (
|
|
1765
|
-
|
|
1836
|
+
onCollapse: (m) => {
|
|
1837
|
+
setCollapse(D, e, m);
|
|
1766
1838
|
},
|
|
1767
1839
|
onMenu: (m, g) => {
|
|
1768
1840
|
eventBus.emit("propTreeMenu", {
|
|
@@ -1772,84 +1844,59 @@ var propTree_default = /* @__PURE__ */ defineComponent({
|
|
|
1772
1844
|
});
|
|
1773
1845
|
},
|
|
1774
1846
|
onCreate: () => {
|
|
1775
|
-
|
|
1847
|
+
b.push({}), A(e, b);
|
|
1776
1848
|
}
|
|
1777
|
-
}),
|
|
1849
|
+
}), w = h("div", { style: { paddingLeft: S.value } }, (() => {
|
|
1778
1850
|
let g = [];
|
|
1779
|
-
for (let _ = 0; _ <
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
|
|
1783
|
-
|
|
1784
|
-
|
|
1785
|
-
collapse: !0,
|
|
1786
|
-
children: {}
|
|
1787
|
-
});
|
|
1788
|
-
let y = [...e, _], b = v.children[_], C = `[${_ + 1}]`;
|
|
1789
|
-
v.children[_].collapse && isPropertyChanged(k.value, y) && (C += " *");
|
|
1790
|
-
let w = h(title_default, {
|
|
1791
|
-
title: C,
|
|
1792
|
-
collapse: v.children[_].collapse,
|
|
1851
|
+
for (let _ = 0; _ < b.length; _++) {
|
|
1852
|
+
let v = [...e, _], y = `[${_ + 1}]`;
|
|
1853
|
+
isCollapse(D, [...e, _]) && isPropertyChanged(k.value, v) && (y += " *");
|
|
1854
|
+
let x = h(title_default, {
|
|
1855
|
+
title: y,
|
|
1856
|
+
collapse: isCollapse(D, [...e, _]),
|
|
1793
1857
|
hasDelete: !0,
|
|
1794
1858
|
index: _,
|
|
1795
|
-
onCollapse: (
|
|
1796
|
-
|
|
1797
|
-
console.assert(!1);
|
|
1798
|
-
return;
|
|
1799
|
-
}
|
|
1800
|
-
v.children[_].collapse = e;
|
|
1859
|
+
onCollapse: (m) => {
|
|
1860
|
+
setCollapse(D, [...e, _], m);
|
|
1801
1861
|
},
|
|
1802
1862
|
onMenu: (e, m) => {
|
|
1803
1863
|
eventBus.emit("propTreeMenu", {
|
|
1804
1864
|
x: e,
|
|
1805
1865
|
y: m,
|
|
1806
|
-
keys:
|
|
1866
|
+
keys: v
|
|
1807
1867
|
});
|
|
1808
1868
|
},
|
|
1809
1869
|
onDelete: (m) => {
|
|
1810
|
-
|
|
1811
|
-
console.assert(!1);
|
|
1812
|
-
return;
|
|
1813
|
-
}
|
|
1814
|
-
v.children.splice(m, 1), x.splice(m, 1), A(e, x);
|
|
1870
|
+
b.splice(m, 1), A(e, b);
|
|
1815
1871
|
}
|
|
1816
1872
|
});
|
|
1817
|
-
g.push(
|
|
1818
|
-
let
|
|
1873
|
+
g.push(x);
|
|
1874
|
+
let C = h("div", { style: { paddingLeft: S.value } }, (() => {
|
|
1819
1875
|
let g = [];
|
|
1820
1876
|
return m.children.forEach((m) => {
|
|
1821
|
-
|
|
1822
|
-
console.assert(!1);
|
|
1823
|
-
return;
|
|
1824
|
-
}
|
|
1825
|
-
b.children[m.key] || (b.children[m.key] = {
|
|
1826
|
-
collapse: !0,
|
|
1827
|
-
children: m.array ? [] : {}
|
|
1828
|
-
});
|
|
1829
|
-
let v = J(e, m, x[_], b.children[m.key], _, !0);
|
|
1877
|
+
let v = J(e, m, b[_], _, !0);
|
|
1830
1878
|
g.push(v);
|
|
1831
1879
|
}), g;
|
|
1832
1880
|
})());
|
|
1833
|
-
|
|
1881
|
+
isCollapse(D, [...e, _]) || g.push(C);
|
|
1834
1882
|
}
|
|
1835
1883
|
return g;
|
|
1836
1884
|
})());
|
|
1837
1885
|
return h("div", { style: { marginBottom: "1px" } }, (() => {
|
|
1838
|
-
let
|
|
1839
|
-
return
|
|
1886
|
+
let m = [];
|
|
1887
|
+
return m.push(C), isCollapse(D, e) || m.push(w), m;
|
|
1840
1888
|
})());
|
|
1841
|
-
}, X = (e, m, g, v, y
|
|
1889
|
+
}, X = (e, m, g, v, y) => {
|
|
1842
1890
|
if (m.ui) return console.assert(!1), h("div", "renderBranchScalar property ui must be invalid");
|
|
1843
1891
|
if (m.array) return console.assert(!1), h("div", "renderBranchScalar property array must be invalid");
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
v.collapse = e;
|
|
1892
|
+
let b = _(m.name);
|
|
1893
|
+
isCollapse(D, e) && isPropertyChanged(k.value, e) && (b += " *");
|
|
1894
|
+
let x = h(title_default, {
|
|
1895
|
+
title: b,
|
|
1896
|
+
collapse: isCollapse(D, e),
|
|
1897
|
+
hasDelete: v !== void 0 && !y,
|
|
1898
|
+
onCollapse: (m) => {
|
|
1899
|
+
setCollapse(D, e, m);
|
|
1853
1900
|
},
|
|
1854
1901
|
onMenu: (m, g) => {
|
|
1855
1902
|
eventBus.emit("propTreeMenu", {
|
|
@@ -1859,41 +1906,32 @@ var propTree_default = /* @__PURE__ */ defineComponent({
|
|
|
1859
1906
|
});
|
|
1860
1907
|
},
|
|
1861
1908
|
onDelete: () => {
|
|
1862
|
-
|
|
1909
|
+
v === void 0 || y || (g.splice(v, 1), A(e.slice(0, -1), g));
|
|
1863
1910
|
}
|
|
1864
|
-
}),
|
|
1911
|
+
}), C = h("div", { style: { paddingLeft: S.value } }, (() => {
|
|
1865
1912
|
let _ = [];
|
|
1866
|
-
return m.children.forEach((
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
return;
|
|
1870
|
-
}
|
|
1871
|
-
v.children[y.key] || (v.children[y.key] = {
|
|
1872
|
-
collapse: !0,
|
|
1873
|
-
children: !y.ui && y.array ? [] : {}
|
|
1874
|
-
});
|
|
1875
|
-
let b = J(e, y, (() => (typeof g[m.key] != "object" && (g[m.key] = {}, A(e, g[m.key])), g[m.key]))(), v.children[y.key]);
|
|
1876
|
-
_.push(b);
|
|
1913
|
+
return m.children.forEach((v) => {
|
|
1914
|
+
let y = J(e, v, (() => (typeof g[m.key] != "object" && (g[m.key] = {}, A(e, g[m.key])), g[m.key]))());
|
|
1915
|
+
_.push(y);
|
|
1877
1916
|
}), _;
|
|
1878
1917
|
})());
|
|
1879
1918
|
return h("div", { style: { marginBottom: "1px" } }, (() => {
|
|
1880
|
-
let
|
|
1881
|
-
return
|
|
1919
|
+
let m = [];
|
|
1920
|
+
return m.push(x), isCollapse(D, e) || m.push(C), m;
|
|
1882
1921
|
})());
|
|
1883
|
-
}, Z = (e, m, g, v, y
|
|
1922
|
+
}, Z = (e, m, g, v, y) => {
|
|
1884
1923
|
if (!m.ui) return console.assert(!1), h("div", "renderLeafArray property ui must be valid");
|
|
1885
1924
|
if (!m.array) return console.assert(!1), h("div", "renderLeafArray property array must be valid");
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
collapse: v.collapse,
|
|
1925
|
+
let b;
|
|
1926
|
+
v !== void 0 && !y ? (g[v] instanceof Array || (g[v] = getPropertyDefault(m), A(e, g[v])), b = g[v]) : (g[m.key] instanceof Array || (g[m.key] = getPropertyDefault(m), A(e, g[m.key])), b = g[m.key]);
|
|
1927
|
+
let x = _(m.name);
|
|
1928
|
+
isCollapse(D, e) && isPropertyChanged(k.value, e) && (x += " *");
|
|
1929
|
+
let C = h(title_default, {
|
|
1930
|
+
title: x,
|
|
1931
|
+
collapse: isCollapse(D, e),
|
|
1894
1932
|
hasCreate: !0,
|
|
1895
|
-
onCollapse: (
|
|
1896
|
-
|
|
1933
|
+
onCollapse: (m) => {
|
|
1934
|
+
setCollapse(D, e, m);
|
|
1897
1935
|
},
|
|
1898
1936
|
onMenu: (m, g) => {
|
|
1899
1937
|
eventBus.emit("propTreeMenu", {
|
|
@@ -1903,19 +1941,19 @@ var propTree_default = /* @__PURE__ */ defineComponent({
|
|
|
1903
1941
|
});
|
|
1904
1942
|
},
|
|
1905
1943
|
onCreate: () => {
|
|
1906
|
-
|
|
1944
|
+
b.push(getPropertyDefault(m, !0)), A(e, b);
|
|
1907
1945
|
}
|
|
1908
|
-
}),
|
|
1946
|
+
}), w = h("div", { style: { paddingLeft: S.value } }, (() => {
|
|
1909
1947
|
let g = [];
|
|
1910
|
-
for (let _ = 0; _ <
|
|
1911
|
-
let v = J(e, m,
|
|
1948
|
+
for (let _ = 0; _ < b.length; _++) {
|
|
1949
|
+
let v = J(e, m, b, _, !1);
|
|
1912
1950
|
g.push(v);
|
|
1913
1951
|
}
|
|
1914
1952
|
return g;
|
|
1915
1953
|
})());
|
|
1916
1954
|
return h("div", { style: { marginBottom: "1px" } }, (() => {
|
|
1917
|
-
let
|
|
1918
|
-
return
|
|
1955
|
+
let m = [];
|
|
1956
|
+
return m.push(C), isCollapse(D, e) || m.push(w), m;
|
|
1919
1957
|
})());
|
|
1920
1958
|
}, Q = (e, m, g, _, v) => {
|
|
1921
1959
|
if (!m.ui) return console.assert(!1), h("div", "renderLeafScalar property ui must be valid");
|
|
@@ -1926,29 +1964,12 @@ var propTree_default = /* @__PURE__ */ defineComponent({
|
|
|
1926
1964
|
style: { background: v.value }
|
|
1927
1965
|
}, (() => {
|
|
1928
1966
|
let e = [];
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
m[g.key] || (m[g.key] = {
|
|
1934
|
-
collapse: !0,
|
|
1935
|
-
children: !g.ui && g.array ? [] : {}
|
|
1936
|
-
});
|
|
1937
|
-
let _ = J([], g, b.object, m[g.key]);
|
|
1938
|
-
e.push(_);
|
|
1939
|
-
});
|
|
1940
|
-
}
|
|
1941
|
-
return e;
|
|
1967
|
+
return b.unique && b.config.length > 0 && b.object && b.config.forEach((m) => {
|
|
1968
|
+
let g = J([], m, b.object);
|
|
1969
|
+
e.push(g);
|
|
1970
|
+
}), e;
|
|
1942
1971
|
})());
|
|
1943
|
-
return (e, m) => (openBlock(), createElementBlock(Fragment, null, [createVNode($), createVNode(menu_default,
|
|
1944
|
-
config: b.config,
|
|
1945
|
-
object: b.object,
|
|
1946
|
-
"property-states": k.value
|
|
1947
|
-
}, null, 8, [
|
|
1948
|
-
"config",
|
|
1949
|
-
"object",
|
|
1950
|
-
"property-states"
|
|
1951
|
-
])], 64));
|
|
1972
|
+
return (e, m) => (openBlock(), createElementBlock(Fragment, null, [createVNode($), createVNode(menu_default)], 64));
|
|
1952
1973
|
}
|
|
1953
1974
|
}), install = (e) => {
|
|
1954
1975
|
e.component("XPropTree", propTree_default);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
export type CollapseState = {
|
|
3
|
+
collapse: boolean;
|
|
4
|
+
children: {
|
|
5
|
+
[key: string | number]: CollapseState;
|
|
6
|
+
};
|
|
7
|
+
};
|
|
8
|
+
export declare function isCollapse(root: Ref<CollapseState>, keys: (string | number)[]): boolean;
|
|
9
|
+
export declare function setCollapse(root: Ref<CollapseState>, keys: (string | number)[], collapse: boolean): void;
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { Ref } from 'vue';
|
|
2
2
|
import { ZProperty } from 'x-runtime-lib';
|
|
3
3
|
import { ChangeEvent } from './misc';
|
|
4
|
-
|
|
4
|
+
interface PropertyStateBase {
|
|
5
5
|
change: boolean;
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
export
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
export declare const
|
|
14
|
-
export declare const
|
|
15
|
-
export declare const
|
|
16
|
-
export
|
|
6
|
+
warning: string | boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface PropertyState extends PropertyStateBase {
|
|
9
|
+
children: {
|
|
10
|
+
[key: string]: PropertyState;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
export declare const execProperty: (keys: (string | number)[], property: ZProperty, object: any, state: PropertyState, changeEvent?: ChangeEvent, arrayIndex?: number, isBranch?: boolean) => PropertyStateBase;
|
|
14
|
+
export declare const rebuildPropertyState: (root: Ref<PropertyState>, config: ZProperty[], object: any, changeEvent?: ChangeEvent) => void;
|
|
15
|
+
export declare const isPropertyChanged: (root: PropertyState, keys: (string | number)[]) => boolean;
|
|
16
|
+
export {};
|
|
@@ -2,7 +2,7 @@ import { Ref } from 'vue';
|
|
|
2
2
|
import { ListEntry } from 'x-group-list';
|
|
3
3
|
import { ZProperty } from 'x-runtime-lib';
|
|
4
4
|
import { ChangeEvent } from './misc';
|
|
5
|
-
import {
|
|
5
|
+
import { PropertyState } from './propertyState';
|
|
6
6
|
export declare function provideVersion(version: Ref<string>): void;
|
|
7
7
|
export declare function injectVersion(): Ref<string>;
|
|
8
8
|
export declare function provideType(type: Ref<string>): void;
|
|
@@ -13,8 +13,8 @@ export declare function provideConfig(config: Ref<ZProperty[]>): void;
|
|
|
13
13
|
export declare function injectConfig(): Ref<ZProperty[]>;
|
|
14
14
|
export declare function provideObject(object: Ref<any>): void;
|
|
15
15
|
export declare function injectObject(): Ref<any>;
|
|
16
|
-
export declare function
|
|
17
|
-
export declare function
|
|
16
|
+
export declare function providePropertyState(propertyState: Ref<PropertyState>): void;
|
|
17
|
+
export declare function injectPropertyState(): Ref<PropertyState>;
|
|
18
18
|
export declare function provideChangeEvent(changeEvent: ChangeEvent): void;
|
|
19
19
|
export declare function injectChangeEvent(): ChangeEvent;
|
|
20
20
|
export declare function provideCompList(compList: Ref<ListEntry[]>): void;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "x-prop-tree",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "0.7.
|
|
4
|
+
"version": "0.7.41",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -22,40 +22,40 @@
|
|
|
22
22
|
"*": "prettier --write ."
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"lodash-es": "^4.17.
|
|
25
|
+
"lodash-es": "^4.17.23",
|
|
26
26
|
"vue": "^3.5.27",
|
|
27
27
|
"vue-i18n": "^11.2.8",
|
|
28
|
-
"vuetify": "^3.11.
|
|
28
|
+
"vuetify": "^3.11.8"
|
|
29
29
|
},
|
|
30
30
|
"peerDependencies": {
|
|
31
|
-
"x-block-lib": "^0.10.
|
|
32
|
-
"x-essential-lib": "^0.9.
|
|
33
|
-
"x-group-list": "^0.4.
|
|
34
|
-
"x-runtime-lib": "^0.8.
|
|
35
|
-
"x-state-lib": "^0.3.
|
|
31
|
+
"x-block-lib": "^0.10.4",
|
|
32
|
+
"x-essential-lib": "^0.9.25",
|
|
33
|
+
"x-group-list": "^0.4.10",
|
|
34
|
+
"x-runtime-lib": "^0.8.214",
|
|
35
|
+
"x-state-lib": "^0.3.39"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
38
|
"@eslint/js": "^9.39.2",
|
|
39
39
|
"@types/lodash-es": "^4.17.12",
|
|
40
|
-
"@types/node": "^25.0
|
|
41
|
-
"@vitejs/plugin-vue": "^6.0.
|
|
40
|
+
"@types/node": "^25.2.0",
|
|
41
|
+
"@vitejs/plugin-vue": "^6.0.4",
|
|
42
42
|
"eslint": "^9.39.2",
|
|
43
43
|
"eslint-config-prettier": "^10.1.8",
|
|
44
44
|
"eslint-plugin-prettier": "^5.5.5",
|
|
45
45
|
"eslint-plugin-vue": "^10.7.0",
|
|
46
|
-
"globals": "^17.
|
|
46
|
+
"globals": "^17.3.0",
|
|
47
47
|
"husky": "^9.1.7",
|
|
48
48
|
"lint-staged": "^16.2.7",
|
|
49
|
-
"prettier": "3.8.
|
|
50
|
-
"sass": "^1.97.
|
|
49
|
+
"prettier": "3.8.1",
|
|
50
|
+
"sass": "^1.97.3",
|
|
51
51
|
"typescript": "^5.9.3",
|
|
52
|
-
"typescript-eslint": "^8.
|
|
52
|
+
"typescript-eslint": "^8.54.0",
|
|
53
53
|
"vite": "npm:rolldown-vite@7.3.1",
|
|
54
54
|
"vite-plugin-css-injected-by-js": "^3.5.2",
|
|
55
55
|
"vite-plugin-vuetify": "^2.1.3",
|
|
56
56
|
"vue-eslint-parser": "^10.2.0",
|
|
57
|
-
"vue-router": "^
|
|
58
|
-
"vue-tsc": "^3.2.
|
|
57
|
+
"vue-router": "^5.0.2",
|
|
58
|
+
"vue-tsc": "^3.2.4"
|
|
59
59
|
},
|
|
60
60
|
"overrides": {
|
|
61
61
|
"vite": "npm:rolldown-vite@7.3.1"
|
package/dist/utils/branch.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export type Branch = {
|
|
2
|
-
collapse: boolean;
|
|
3
|
-
children: BranchMap | BranchArray;
|
|
4
|
-
};
|
|
5
|
-
export type BranchMap = {
|
|
6
|
-
[key: string]: Branch;
|
|
7
|
-
};
|
|
8
|
-
export type BranchArray = Branch[];
|
|
9
|
-
export type Branchs = {
|
|
10
|
-
[key: string]: {
|
|
11
|
-
[key: string]: Branch;
|
|
12
|
-
};
|
|
13
|
-
};
|
|
14
|
-
export declare const isBranchChildrenMap: (children: BranchMap | BranchArray) => children is BranchMap;
|
|
15
|
-
export declare const isBranchChildrenArray: (children: BranchMap | BranchArray) => children is BranchArray;
|