super-page-runtime 2.2.55 → 2.2.59
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/es/components/runtime/utils/events/standard-event.d.ts +1 -1
- package/dist/es/components/runtime/utils/events/standard-event.js +78 -82
- package/dist/es/components/runtime/utils/page-helper-util.d.ts +0 -2
- package/dist/es/components/runtime/utils/page-helper-util.js +0 -14
- package/dist/es/components/runtime/utils/page-init-util.js +10 -21
- package/dist/es/components/runtime/utils/tree-utils.js +15 -49
- package/dist/es/components/runtime/views/assemblys/container/card/card-runtime.vue.js +1 -1
- package/dist/es/components/runtime/views/assemblys/container/card/card-runtime.vue2.js +1 -1
- package/dist/es/components/runtime/views/assemblys/container/fixed/FixedBox.vue.js +1 -1
- package/dist/es/components/runtime/views/assemblys/container/fixed/YxAffix.vue.js +71 -5
- package/dist/es/components/runtime/views/assemblys/container/fixed/YxAffix.vue2.js +2 -72
- package/dist/es/components/runtime/views/assemblys/container/tabs/tabs-runtime.vue.js +1 -4
- package/dist/es/components/runtime/views/assemblys/container/tabs/tabs-runtime.vue2.js +3 -3
- package/dist/es/components/runtime/views/assemblys/container/tools/tools-runtime.vue.js +1 -1
- package/dist/es/components/runtime/views/assemblys/container/tools/tools-runtime.vue2.js +19 -22
- package/dist/es/components/runtime/views/assemblys/data/tree/tree-runtime.vue.js +1 -4
- package/dist/es/components/runtime/views/assemblys/data/tree/tree-runtime.vue2.js +45 -113
- package/dist/es/components/runtime/views/assemblys/form/input-text/inputtext-runtime.vue2.js +54 -59
- package/dist/es/components/runtime/views/super-page.vue.js +1 -1
- package/dist/es/index.d.ts +1 -2
- package/dist/es/index.js +0 -2
- package/dist/es/style.css +26 -370
- package/package.json +2 -2
- package/dist/es/assets/file.png.js +0 -4
- package/dist/es/assets/folder.png.js +0 -4
- package/dist/es/components/runtime/views/assemblys/container/fixed/YxAffix.vue.d.ts +0 -94
|
@@ -1,7 +1,73 @@
|
|
|
1
|
-
import e from "
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { defineComponent as e, ref as t, onMounted as o, nextTick as n, onUnmounted as i, watchEffect as l, computed as a, createElementBlock as r, openBlock as s, createCommentVNode as u, createElementVNode as f, normalizeStyle as c, normalizeClass as d, renderSlot as p } from "vue";
|
|
2
|
+
const v = e({ __name: "YxAffix", props: { offset: { type: Number, default: 0 }, position: { type: String, default: "top", validator: (e2) => ["top", "bottom"].includes(e2) }, target: { type: [String, HTMLElement], default: () => window }, autoDetectParentScroll: { type: Boolean, default: true }, stickyInScrollContainer: { type: Boolean, default: true }, zIndex: { type: Number, default: 100 }, enableIntervalUpdate: { type: Boolean, default: true }, enableIntervalTime: { type: Number, default: 2e3 } }, emits: ["change"], setup(e2, { emit: v2 }) {
|
|
3
|
+
const m = e2, w = v2, x = t(null), y = t(null), h = t(false), g = t({}), b = t([]), T = t(window), B = t(0), I = t(null), E = () => {
|
|
4
|
+
try {
|
|
5
|
+
if (!y.value) return;
|
|
6
|
+
const e3 = y.value.getBoundingClientRect(), t2 = T.value;
|
|
7
|
+
if (t2 === window) {
|
|
8
|
+
const t3 = "top" === m.position ? e3.top <= m.offset : e3.bottom >= window.innerHeight - m.offset;
|
|
9
|
+
B.value = 0, S(t3, e3);
|
|
10
|
+
} else if (m.stickyInScrollContainer) {
|
|
11
|
+
const o2 = t2.getBoundingClientRect(), { isFixTop: n2, isFixBottom: i2, containerOffset: l2 } = ((e4) => {
|
|
12
|
+
const t3 = ["top"].includes(m.position), o3 = ["bottom"].includes(m.position);
|
|
13
|
+
if (!x.value) return { isTop: t3, isBottom: o3 };
|
|
14
|
+
const n3 = x.value.getBoundingClientRect(), i3 = n3.top - e4.top, l3 = n3.left - e4.left, a2 = e4.height - n3.height - i3, r2 = e4.top, s2 = window.innerHeight - e4.bottom;
|
|
15
|
+
return { isTop: t3, isBottom: o3, containerTop: r2, containerBottom: s2, containerOffset: t3 ? r2 : o3 ? s2 : 0, offsetTop: i3, offsetLeft: l3, offsetBottom: a2, isFixTop: t3 && i3 <= 0, isFixBottom: o3 && a2 <= 0 };
|
|
16
|
+
})(o2);
|
|
17
|
+
B.value = l2 ?? 0, S(n2 || i2 || false, e3);
|
|
18
|
+
}
|
|
19
|
+
} catch (e3) {
|
|
20
|
+
}
|
|
21
|
+
}, S = (e3, t2) => {
|
|
22
|
+
e3 !== h.value && (h.value = e3, w("change", e3), g.value = e3 ? { width: `${t2.width}px`, height: `${t2.height}px` } : {});
|
|
23
|
+
}, C = () => {
|
|
24
|
+
requestAnimationFrame(E);
|
|
25
|
+
};
|
|
26
|
+
let L;
|
|
27
|
+
const k = () => {
|
|
28
|
+
h.value = false, clearTimeout(L), L = window.setTimeout(() => {
|
|
29
|
+
E();
|
|
30
|
+
}, 100);
|
|
31
|
+
};
|
|
32
|
+
o(() => {
|
|
33
|
+
setTimeout(() => {
|
|
34
|
+
n(() => {
|
|
35
|
+
try {
|
|
36
|
+
m.enableIntervalUpdate && (I.value = setInterval(C, m.enableIntervalTime));
|
|
37
|
+
const e3 = (() => {
|
|
38
|
+
if (m.autoDetectParentScroll && y.value) {
|
|
39
|
+
const e4 = [];
|
|
40
|
+
let t2 = y.value.parentElement;
|
|
41
|
+
for (; t2 && t2 !== document.body; ) {
|
|
42
|
+
const { overflowY: o2 } = window.getComputedStyle(t2);
|
|
43
|
+
/(auto|scroll)/.test(o2) && e4.push(t2), t2 = t2.parentElement;
|
|
44
|
+
}
|
|
45
|
+
return [...e4, window];
|
|
46
|
+
}
|
|
47
|
+
if ("string" == typeof m.target) {
|
|
48
|
+
const e4 = document.querySelector(m.target);
|
|
49
|
+
return [...e4 ? [e4] : [], window];
|
|
50
|
+
}
|
|
51
|
+
return [window];
|
|
52
|
+
})();
|
|
53
|
+
b.value = e3, T.value = e3[0], b.value.forEach((e4) => e4.addEventListener("scroll", C)), window.addEventListener("resize", k), E();
|
|
54
|
+
} catch (e3) {
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}, 100);
|
|
58
|
+
}), i(() => {
|
|
59
|
+
T.value && b.value.forEach((e3) => e3.removeEventListener("scroll", C)), window.removeEventListener("resize", k), clearTimeout(L), I.value && clearInterval(I.value);
|
|
60
|
+
}), l(() => {
|
|
61
|
+
n(() => {
|
|
62
|
+
C();
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
const z = a(() => {
|
|
66
|
+
var _a;
|
|
67
|
+
return h.value ? { position: "fixed", width: `${(_a = y.value) == null ? void 0 : _a.offsetWidth}px`, zIndex: m.zIndex, [m.position]: `${m.offset + B.value}px` } : { position: "relative" };
|
|
68
|
+
});
|
|
69
|
+
return (e3, t2) => (s(), r("div", { ref_key: "affixMainRef", ref: x, class: "yx-affix" }, [h.value ? (s(), r("div", { key: 0, style: c(g.value), class: "yx-affix-placeholder" }, null, 4)) : u("", true), f("div", { ref_key: "affixRef", ref: y, style: c(z.value), class: d({ "yx-affix-content": true, "is-fixed": h.value, "is-top": "top" === m.position, "is-bottom": "bottom" === m.position }) }, [p(e3.$slots, "default")], 6)], 512));
|
|
70
|
+
} });
|
|
5
71
|
export {
|
|
6
|
-
|
|
72
|
+
v as default
|
|
7
73
|
};
|
|
@@ -1,74 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
const v = e({ __name: "YxAffix", props: { offset: { type: Number, default: 0 }, position: { type: String, default: "top", validator: (e2) => ["top", "bottom"].includes(e2) }, target: { type: [String, HTMLElement], default: () => window }, autoDetectParentScroll: { type: Boolean, default: true }, stickyInScrollContainer: { type: Boolean, default: true }, zIndex: { type: Number, default: 100 }, enableIntervalUpdate: { type: Boolean, default: true }, enableIntervalTime: { type: Number, default: 2e3 } }, emits: ["change"], setup(e2, { emit: v2 }) {
|
|
3
|
-
const m = e2, w = v2, h = t(null), x = t(null), y = t(false), g = t({}), b = t([]), T = t(window), B = t(0), I = t(null), E = () => {
|
|
4
|
-
try {
|
|
5
|
-
if (!x.value) return;
|
|
6
|
-
const e3 = x.value.getBoundingClientRect(), t2 = T.value;
|
|
7
|
-
if (t2 === window) {
|
|
8
|
-
const t3 = "top" === m.position ? e3.top <= m.offset : e3.bottom >= window.innerHeight - m.offset;
|
|
9
|
-
B.value = 0, S(t3, e3);
|
|
10
|
-
} else if (m.stickyInScrollContainer) {
|
|
11
|
-
const o2 = t2.getBoundingClientRect(), { isFixTop: n2, isFixBottom: i2, containerOffset: l2 } = ((e4) => {
|
|
12
|
-
const t3 = ["top"].includes(m.position), o3 = ["bottom"].includes(m.position);
|
|
13
|
-
if (!h.value) return { isTop: t3, isBottom: o3 };
|
|
14
|
-
const n3 = h.value.getBoundingClientRect(), i3 = n3.top - e4.top, l3 = n3.left - e4.left, a2 = e4.height - n3.height - i3, r2 = e4.top, s2 = window.innerHeight - e4.bottom;
|
|
15
|
-
return { isTop: t3, isBottom: o3, containerTop: r2, containerBottom: s2, containerOffset: t3 ? r2 : o3 ? s2 : 0, offsetTop: i3, offsetLeft: l3, offsetBottom: a2, isFixTop: t3 && i3 <= 0, isFixBottom: o3 && a2 <= 0 };
|
|
16
|
-
})(o2);
|
|
17
|
-
B.value = l2 ?? 0, S(n2 || i2 || false, e3);
|
|
18
|
-
}
|
|
19
|
-
} catch (e3) {
|
|
20
|
-
}
|
|
21
|
-
}, S = (e3, t2) => {
|
|
22
|
-
var _a;
|
|
23
|
-
e3 === y.value && ((_a = g.value) == null ? void 0 : _a.height) === `${t2.height}px` || (y.value = e3, w("change", e3), g.value = e3 ? { width: "100%", height: `${t2.height}px` } : {});
|
|
24
|
-
}, C = () => {
|
|
25
|
-
requestAnimationFrame(E);
|
|
26
|
-
};
|
|
27
|
-
let L;
|
|
28
|
-
const k = () => {
|
|
29
|
-
y.value = false, clearTimeout(L), L = window.setTimeout(() => {
|
|
30
|
-
E();
|
|
31
|
-
}, 100);
|
|
32
|
-
};
|
|
33
|
-
o(() => {
|
|
34
|
-
setTimeout(() => {
|
|
35
|
-
n(() => {
|
|
36
|
-
try {
|
|
37
|
-
m.enableIntervalUpdate && (I.value = setInterval(C, m.enableIntervalTime));
|
|
38
|
-
const e3 = (() => {
|
|
39
|
-
if (m.autoDetectParentScroll && x.value) {
|
|
40
|
-
const e4 = [];
|
|
41
|
-
let t2 = x.value.parentElement;
|
|
42
|
-
for (; t2 && t2 !== document.body; ) {
|
|
43
|
-
const { overflowY: o2 } = window.getComputedStyle(t2);
|
|
44
|
-
/(auto|scroll)/.test(o2) && e4.push(t2), t2 = t2.parentElement;
|
|
45
|
-
}
|
|
46
|
-
return [...e4, window];
|
|
47
|
-
}
|
|
48
|
-
if ("string" == typeof m.target) {
|
|
49
|
-
const e4 = document.querySelector(m.target);
|
|
50
|
-
return [...e4 ? [e4] : [], window];
|
|
51
|
-
}
|
|
52
|
-
return [window];
|
|
53
|
-
})();
|
|
54
|
-
b.value = e3, T.value = e3[0], b.value.forEach((e4) => e4.addEventListener("scroll", C)), window.addEventListener("resize", k), E();
|
|
55
|
-
} catch (e3) {
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
}, 100);
|
|
59
|
-
}), i(() => {
|
|
60
|
-
T.value && b.value.forEach((e3) => e3.removeEventListener("scroll", C)), window.removeEventListener("resize", k), clearTimeout(L), I.value && clearInterval(I.value);
|
|
61
|
-
}), l(() => {
|
|
62
|
-
n(() => {
|
|
63
|
-
C();
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
const z = a(() => {
|
|
67
|
-
var _a;
|
|
68
|
-
return y.value ? { position: "fixed", width: `${(_a = x.value) == null ? void 0 : _a.offsetWidth}px`, zIndex: m.zIndex, [m.position]: `${m.offset + B.value}px` } : { position: "relative" };
|
|
69
|
-
});
|
|
70
|
-
return (e3, t2) => (s(), r("div", { ref_key: "affixMainRef", ref: h, class: "yx-affix" }, [y.value ? (s(), r("div", { key: 0, style: c(g.value), class: "yx-affix-placeholder" }, null, 4)) : u("", true), f("div", { ref_key: "affixRef", ref: x, style: c(z.value), class: d({ "yx-affix-content": true, "is-fixed": y.value, "is-top": "top" === m.position, "is-bottom": "bottom" === m.position }) }, [p(e3.$slots, "default", {}, void 0, true)], 6)], 512));
|
|
71
|
-
} });
|
|
1
|
+
import f from "./YxAffix.vue.js";
|
|
72
2
|
export {
|
|
73
|
-
|
|
3
|
+
f as default
|
|
74
4
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent as e, ref as t, onMounted as n, nextTick as o, createBlock as a, openBlock as i, unref as
|
|
1
|
+
import { defineComponent as e, ref as t, onMounted as n, nextTick as o, createBlock as a, openBlock as i, unref as l, normalizeClass as u, normalizeStyle as r, withCtx as c, createElementBlock as p, Fragment as s, renderList as g, createElementVNode as f, createCommentVNode as m, toDisplayString as d } from "vue";
|
|
2
2
|
import { ElTabs as b, ElTabPane as y } from "element-plus";
|
|
3
3
|
import x from "../../object-render.vue.js";
|
|
4
4
|
import { SuperIcon as C } from "agilebuilder-ui";
|
|
@@ -23,7 +23,7 @@ const V = e({ __name: "tabs-runtime", props: { pageContext: {}, configure: {} },
|
|
|
23
23
|
function q() {
|
|
24
24
|
return T(null, V2.pageContext, V2.configure, "tab-add");
|
|
25
25
|
}
|
|
26
|
-
function
|
|
26
|
+
function A(e3, t2) {
|
|
27
27
|
const n2 = { paneName: e3, action: t2 };
|
|
28
28
|
return T(e3, V2.pageContext, V2.configure, "edit", n2);
|
|
29
29
|
}
|
|
@@ -34,7 +34,7 @@ const V = e({ __name: "tabs-runtime", props: { pageContext: {}, configure: {} },
|
|
|
34
34
|
t2.code && e3.push(document.querySelector("." + t2.code));
|
|
35
35
|
}), v(null, V2.pageContext, V2.configure, { componentRef: _.value, tabsDom: e3, entity: V2.pageContext.entity.data, pageData: V2.pageContext.entity.page });
|
|
36
36
|
});
|
|
37
|
-
}), (e3, t2) => (i(), a(
|
|
37
|
+
}), (e3, t2) => (i(), a(l(b), { ref_key: "thisRef", ref: _, modelValue: k.value, "onUpdate:modelValue": t2[0] || (t2[0] = (e4) => k.value = e4), type: e3.configure.props.cardType, "tab-position": e3.configure.props.tabPosition, style: r(l(N)), class: u(l(R)), onTabClick: E, onTabChange: O, onTabRemove: S, onTabAdd: q, onEdit: A }, { default: c(() => [(i(true), p(s, null, g(e3.configure.items, (t3, n2) => (i(), a(l(y), { label: t3.label, name: t3.index }, { label: c(() => [f("span", { class: u(t3.code) }, [t3.iconType && t3.iconValue ? (i(), a(l(C), { key: 0, iconType: t3.iconType, iconValue: t3.iconValue, style: { "margin-right": "2px" } }, null, 8, ["iconType", "iconValue"])) : m("", true), f("span", { style: r(l(D)) }, d(l(h)(t3.label)), 5)], 2)]), default: c(() => [f("div", null, [(i(true), p(s, null, g(t3.items, (t4, n3) => (i(), a(x, { key: t4.uuid, pageContext: e3.pageContext, configure: t4 }, null, 8, ["pageContext", "configure"]))), 128))])]), _: 2 }, 1032, ["label", "name"]))), 256))]), _: 1 }, 8, ["modelValue", "type", "tab-position", "style", "class"]));
|
|
38
38
|
} });
|
|
39
39
|
export {
|
|
40
40
|
V as default
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./tools-runtime.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import t from "../../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const e = t(o, [["__scopeId", "data-v-
|
|
4
|
+
const e = t(o, [["__scopeId", "data-v-7aefa8b2"]]);
|
|
5
5
|
export {
|
|
6
6
|
e as default
|
|
7
7
|
};
|
|
@@ -1,35 +1,32 @@
|
|
|
1
|
-
import { defineComponent as e, ref as t, computed as o, onMounted as i, nextTick as a, onUnmounted as n, createBlock as l, createElementBlock as u,
|
|
2
|
-
import
|
|
3
|
-
import { handleAfterInitEvent as
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
return !!((_b = (_a = j2.configure) == null ? void 0 : _a.items) == null ? void 0 : _b.length);
|
|
10
|
-
}), D = o(() => {
|
|
11
|
-
const { gap: e3 } = F.value ?? {};
|
|
1
|
+
import { defineComponent as e, ref as t, computed as o, onMounted as i, nextTick as a, onUnmounted as n, createBlock as l, createElementBlock as u, openBlock as s, withCtx as f, createElementVNode as r, normalizeStyle as p, normalizeClass as g, unref as d, Fragment as v, renderList as c } from "vue";
|
|
2
|
+
import m from "../../object-render.vue.js";
|
|
3
|
+
import { handleAfterInitEvent as x } from "../../../../utils/events/event-util.js";
|
|
4
|
+
import y from "../fixed/YxAffix.vue.js";
|
|
5
|
+
import C from "../fixed/FixedBox.vue.js";
|
|
6
|
+
const b = { "data-v": "1.0.0", class: "amb-widget-tools-parent" }, k = { "data-v": "1.0.0", class: "amb-widget-tools-parent" }, w = { key: 2, "data-v": "1.0.0", class: "amb-widget-tools-parent" }, _ = e({ __name: "tools-runtime", props: { pageContext: {}, configure: {} }, setup(e2) {
|
|
7
|
+
const _2 = e2, j = t(null), R = _2.configure.runtime ?? {}, h = R.class, A = o(() => _2.configure.props), F = o(() => {
|
|
8
|
+
const { gap: e3 } = A.value ?? {};
|
|
12
9
|
return { backgroundColor: "#fff", ...e3 ? { gap: `${e3}px` } : {}, ...R.style ?? {} };
|
|
13
|
-
}),
|
|
10
|
+
}), B = o(() => {
|
|
14
11
|
var _a, _b, _c;
|
|
15
|
-
return !![(_a =
|
|
16
|
-
}),
|
|
12
|
+
return !![(_a = A.value) == null ? void 0 : _a.isAffix, (_b = A.value) == null ? void 0 : _b.isFixed].every((e3) => void 0 === e3) || ((_c = A.value) == null ? void 0 : _c.isAffix);
|
|
13
|
+
}), D = o(() => {
|
|
17
14
|
var _a;
|
|
18
|
-
return (_a =
|
|
19
|
-
}),
|
|
15
|
+
return (_a = A.value) == null ? void 0 : _a.isFixed;
|
|
16
|
+
}), Y = o(() => {
|
|
20
17
|
var _a, _b;
|
|
21
|
-
return ["top"].includes((_a =
|
|
22
|
-
}),
|
|
18
|
+
return ["top"].includes((_a = A.value) == null ? void 0 : _a.position) ? "top" : ["bottom"].includes((_b = A.value) == null ? void 0 : _b.position) ? "bottom" : void 0;
|
|
19
|
+
}), $ = o(() => {
|
|
23
20
|
var _a;
|
|
24
|
-
return ((_a =
|
|
21
|
+
return ((_a = A.value) == null ? void 0 : _a.offset) ?? 0;
|
|
25
22
|
});
|
|
26
23
|
return i(() => {
|
|
27
24
|
a(() => {
|
|
28
|
-
|
|
25
|
+
x(null, _2.pageContext, _2.configure, { componentRef: j.value, entity: _2.pageContext.entity.data, pageData: _2.pageContext.entity.page });
|
|
29
26
|
});
|
|
30
27
|
}), n(() => {
|
|
31
|
-
}), (e3, t2) =>
|
|
28
|
+
}), (e3, t2) => D.value ? (s(), l(C, { key: 0, position: Y.value, offset: $.value }, { default: f(() => [r("div", b, [r("div", { class: g(["amb-widget-container-tool amb-widget-tools", d(h)]), style: p(F.value), ref_key: "thisRef", ref: j }, [(s(true), u(v, null, c(_2.configure.items, (e4) => (s(), l(m, { pageContext: _2.pageContext, configure: e4, key: e4.uuid }, null, 8, ["pageContext", "configure"]))), 128))], 6)])]), _: 1 }, 8, ["position", "offset"])) : B.value ? (s(), l(y, { key: 1, position: Y.value, offset: $.value }, { default: f(() => [r("div", k, [r("div", { class: g(["amb-widget-container-tool amb-widget-tools", d(h)]), style: p(F.value), ref_key: "thisRef", ref: j }, [(s(true), u(v, null, c(_2.configure.items, (e4) => (s(), l(m, { pageContext: _2.pageContext, configure: e4, key: e4.uuid }, null, 8, ["pageContext", "configure"]))), 128))], 6)])]), _: 1 }, 8, ["position", "offset"])) : (s(), u("div", w, [r("div", { class: g(["amb-widget-container-tool amb-widget-tools", d(h)]), style: p(F.value), ref_key: "thisRef", ref: j }, [(s(true), u(v, null, c(_2.configure.items, (e4) => (s(), l(m, { pageContext: _2.pageContext, configure: e4, key: e4.uuid }, null, 8, ["pageContext", "configure"]))), 128))], 6)]));
|
|
32
29
|
} });
|
|
33
30
|
export {
|
|
34
|
-
|
|
31
|
+
_ as default
|
|
35
32
|
};
|
|
@@ -1,130 +1,62 @@
|
|
|
1
|
-
import { defineComponent as e,
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}) : J.value = G.configure.props.contextMenus);
|
|
20
|
-
let Q = V(G.pageContext, G.configure);
|
|
21
|
-
const X = t({ get: () => E(H, Q), set(e3) {
|
|
22
|
-
b(H, Q, e3);
|
|
23
|
-
} }), Y = a(!!((_c = (_b = G.configure.props) == null ? void 0 : _b.base) == null ? void 0 : _c.lazy)), Z = G.configure.runtime ? G.configure.runtime : {}, $ = Z.style, ee = Z.class, ae = a(), te = a(Z.props ? Z.props : {}), ne = a({ id: "nodeId", label: "name", children: "children", isLeaf: "leaf", disabled: "disabled", nodeType: "nodeType", iconType: "iconType", iconValue: "iconValue" }), le = a(false), oe = a([]), ue = a(null), de = a(""), ie = a(false), se = a(""), ce = a(""), re = a("");
|
|
24
|
-
n(() => {
|
|
25
|
-
l(() => {
|
|
26
|
-
const e3 = X.value;
|
|
27
|
-
w(e3, G.pageContext, G.configure, { componentRef: ae.value, value: e3, entity: G.pageContext.entity.data, pageData: G.pageContext.entity.page });
|
|
1
|
+
import { defineComponent as e, computed as a, ref as n, onMounted as l, nextTick as t, watch as o, resolveComponent as u, createElementBlock as i, openBlock as d, normalizeClass as c, unref as r, createBlock as p, createCommentVNode as s, normalizeStyle as v, withCtx as f, createElementVNode as g, createVNode as y, toDisplayString as h } from "vue";
|
|
2
|
+
import { getFormModelFields as x } from "../../../../utils/page-init-util.js";
|
|
3
|
+
import { setVariableValue as m, getVariableValue as C } from "../../../../utils/page-helper-util.js";
|
|
4
|
+
import { getMenuTreeData as k } from "../../../../utils/tree-utils.js";
|
|
5
|
+
import { handleAfterInitEvent as V, handleFormEvent as T } from "../../../../utils/events/event-util.js";
|
|
6
|
+
const b = ["title"], N = e({ __name: "tree-runtime", props: { pageContext: {}, configure: {} }, setup(e2, { expose: N2 }) {
|
|
7
|
+
var _a, _b;
|
|
8
|
+
const I = e2, S = I.pageContext.entity ? I.pageContext.entity : {};
|
|
9
|
+
let _ = x(I.pageContext, I.configure);
|
|
10
|
+
const j = a({ get: () => C(S, _), set(e3) {
|
|
11
|
+
m(S, _, e3);
|
|
12
|
+
} }), w = n(!!((_b = (_a = I.configure.props) == null ? void 0 : _a.base) == null ? void 0 : _b.lazy)), z = I.configure.runtime ? I.configure.runtime : {}, M = z.style, W = z.class;
|
|
13
|
+
z.headerStyle;
|
|
14
|
+
const A = n(null), D = n(z.props ? z.props : {}), E = n({ id: "nodeId", label: "name", children: "children", isLeaf: "leaf", disabled: "disabled", nodeType: "nodeType", iconType: "iconType", iconValue: "iconValue" }), F = n(false), K = n(null), L = n(null), O = n(""), R = n(false);
|
|
15
|
+
l(() => {
|
|
16
|
+
t(() => {
|
|
17
|
+
const e3 = j.value;
|
|
18
|
+
V(e3, I.pageContext, I.configure, { componentRef: A.value, value: e3, entity: I.pageContext.entity.data, pageData: I.pageContext.entity.page });
|
|
28
19
|
});
|
|
29
|
-
}),
|
|
30
|
-
|
|
31
|
-
}), o(
|
|
32
|
-
|
|
20
|
+
}), w.value ? F.value = true : k(I.pageContext, I.configure).then((e3) => {
|
|
21
|
+
K.value = e3, F.value = true;
|
|
22
|
+
}), o(O, (e3) => {
|
|
23
|
+
R.value = true, A.value.filter(e3);
|
|
33
24
|
});
|
|
34
|
-
const
|
|
35
|
-
function
|
|
36
|
-
|
|
25
|
+
const U = (e3, a2) => !e3 || a2.name.includes(e3);
|
|
26
|
+
function q(e3, a2, n2) {
|
|
27
|
+
L.value = a2, T(null, I.pageContext, I.configure, "node-click", { data: e3, node: a2, nodeTree: n2 });
|
|
37
28
|
}
|
|
38
|
-
function
|
|
39
|
-
let
|
|
40
|
-
|
|
41
|
-
const
|
|
42
|
-
|
|
43
|
-
if (
|
|
29
|
+
function B(e3, a2) {
|
|
30
|
+
let n2 = "0";
|
|
31
|
+
n2 = 0 === e3.level ? "0" : e3.data.nodeId, function(e4, a3, n3) {
|
|
32
|
+
const l2 = { parentNodeId: e4, data: a3.data, searchValue: O, isSearch: R.value };
|
|
33
|
+
k(I.pageContext, I.configure, e4, a3, l2).then((l3) => {
|
|
34
|
+
if (R.value = false, n3(l3), "0" === e4) {
|
|
44
35
|
!function(e5, a4) {
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
|
|
36
|
+
const n4 = { parentNodeId: e5, data: a4.data, searchValue: O, isSearch: R.value };
|
|
37
|
+
k(I.pageContext, I.configure, e5, a4, n4).then((a5) => {
|
|
38
|
+
R.value = false, A.value.updateKeyChildren(e5, a5), A.value.store.nodesMap[e5] && (A.value.store.nodesMap[e5].expanded = true);
|
|
48
39
|
});
|
|
49
|
-
}(
|
|
40
|
+
}(l3[0].nodeId, a3);
|
|
50
41
|
}
|
|
51
42
|
});
|
|
52
|
-
}(
|
|
43
|
+
}(n2, e3, a2);
|
|
53
44
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
document.removeEventListener("click", he), ge.value = t2, F.value = true;
|
|
57
|
-
const l2 = document.documentElement.scrollTop || document.body.scrollTop;
|
|
58
|
-
q.value.style.display = "block", q.value.style.left = e3.x + "px", q.value.style.top = e3.y + l2 - 10 + "px", document.addEventListener("click", he);
|
|
59
|
-
}, he = () => {
|
|
60
|
-
F.value = false, document.removeEventListener("click", he);
|
|
61
|
-
}, ye = (e3, a2) => {
|
|
62
|
-
if (e3.parent && e3.parent.level > 0) {
|
|
63
|
-
const t2 = e3.parent.data.children.findIndex((a3) => a3.nodeId === e3.data.nodeId);
|
|
64
|
-
e3.parent.data.children[t2] = a2, e3.data = a2;
|
|
65
|
-
} else {
|
|
66
|
-
const t2 = e3.parent.data.findIndex((a3) => a3.nodeId === e3.data.nodeId);
|
|
67
|
-
e3.parent.data[t2] = a2, e3.data = a2;
|
|
68
|
-
}
|
|
69
|
-
}, Ce = () => {
|
|
70
|
-
se.value = "", re.value = "", ce.value = "";
|
|
71
|
-
}, xe = () => ({ nodeId: "primary" + (/* @__PURE__ */ new Date()).getTime(), name: "新增节点", disabled: false, iconType: "custom", isLeaf: true });
|
|
72
|
-
function ke(e3) {
|
|
73
|
-
e3.tipMessage ? S.confirm(e3.tipMessage, { confirmButtonText: "确定", cancelButtonText: "取消", type: "error" }).then(() => {
|
|
74
|
-
_(ge.value, G.configure, G.pageContext).then(() => {
|
|
75
|
-
z.success("删除成功!"), Ne(), ge.value = null;
|
|
76
|
-
});
|
|
77
|
-
}).catch(() => {
|
|
78
|
-
ge.value = null;
|
|
79
|
-
}) : _(ge.value, G.configure, G.pageContext).then(() => {
|
|
80
|
-
z.success("删除成功!"), Ne(), ge.value = null;
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
const Ne = () => {
|
|
84
|
-
const e3 = ge.value.parent;
|
|
85
|
-
ae.value.remove(ge.value), e3.childNodes && 0 === e3.childNodes.length && (e3.data.isLeaf = true), e3.data.children && e3.data.children.length > 0 && (e3.data.children = e3.data.children.filter((e4) => e4.nodeId !== ge.value.data.nodeId));
|
|
86
|
-
};
|
|
87
|
-
return A2({ getSelectNode: function() {
|
|
88
|
-
return ue.value;
|
|
45
|
+
return N2({ getSelectNode: function() {
|
|
46
|
+
return L.value;
|
|
89
47
|
}, expandNode: function(e3) {
|
|
90
48
|
e3.loaded = false, e3.expand();
|
|
91
49
|
}, loadTreeNodes: function() {
|
|
92
|
-
|
|
93
|
-
|
|
50
|
+
k(I.pageContext, I.configure).then((e3) => {
|
|
51
|
+
R.value = false, K.value = e3;
|
|
94
52
|
});
|
|
95
53
|
}, getNode: function(e3) {
|
|
96
|
-
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
ae.value.setCheckedKeys(e3, a2);
|
|
101
|
-
}, setChecked: (e3, a2, t2) => {
|
|
102
|
-
ae.value.setChecked(e3, a2, t2);
|
|
103
|
-
}, getCurrentKey: () => ae.value.getCurrentKey(), getCurrentNode: () => ae.value.getCurrentNode(), setCurrentKey: (e3, a2 = true) => ae.value.setCurrentKey(e3, a2), setCurrentNode: (e3, a2 = true) => ae.value.setCurrentNode(e3, a2) }), (e3, a2) => {
|
|
104
|
-
var _a2;
|
|
105
|
-
const t2 = u("el-input"), n2 = u("el-button"), l2 = u("SuperIcon"), o2 = u("el-tree");
|
|
106
|
-
return i(), d("div", { class: s(c(ee)) }, [te.value.filter ? (i(), r(t2, { key: 0, modelValue: de.value, "onUpdate:modelValue": a2[0] || (a2[0] = (e4) => de.value = e4), style: { width: "240px" }, placeholder: "请输入查询条件" }, null, 8, ["modelValue"])) : p("", true), le.value ? (i(), r(o2, { key: 1, ref_key: "menuTreeRef", ref: ae, style: f(c($)), load: fe, data: oe.value, "node-key": "nodeId", props: ne.value, "default-expand-all": te.value.defaultExpandAll, "expand-on-click-node": te.value.expandOnClickNode, indent: te.value.retractWidth ? te.value.retractWidth : 18, accordion: te.value.accordion, "show-checkbox": !!te.value.showCheckbox, "highlight-current": "", lazy: Y.value, "filter-node-method": pe, onNodeClick: ve, onNodeContextmenu: me }, { default: g(({ node: o3, data: u2 }) => [u2.nodeId === se.value ? (i(), d("div", P, [m(t2, { modelValue: re.value, "onUpdate:modelValue": a2[1] || (a2[1] = (e4) => re.value = e4), size: "small" }, null, 8, ["modelValue"]), h("div", null, [m(n2, { type: "primary", link: "", onClick: (e4) => ((e5) => {
|
|
107
|
-
"" !== re.value ? (e5.data.name = re.value, ce.value && e5.data.nodeId === ce.value ? M(e5, G.configure, G.pageContext).then((a3) => {
|
|
108
|
-
ye(e5, a3.currentNode), Ce(), z.success("保存成功!");
|
|
109
|
-
}) : K(e5, G.configure, G.pageContext).then((a3) => {
|
|
110
|
-
ye(e5, a3.currentNode), Ce(), z.success("保存成功!");
|
|
111
|
-
})) : z.warning("请输入节点名称");
|
|
112
|
-
})(o3) }, { default: g(() => a2[2] || (a2[2] = [y(" 保存 ")])), _: 2 }, 1032, ["onClick"]), m(n2, { style: { "margin-left": "4px" }, type: "primary", link: "", onClick: (a3) => ((e4) => {
|
|
113
|
-
ce.value && e4.data.nodeId === ce.value && ae.value.remove(e4), Ce();
|
|
114
|
-
})(o3, e3.configure, e3.pageContext) }, { default: g(() => a2[3] || (a2[3] = [y(" 撤销 ")])), _: 2 }, 1032, ["onClick"])])])) : (i(), d("span", { key: 1, title: o3.label, class: "ellipsis" }, [u2.iconValue ? (i(), r(l2, { key: 0, iconType: u2.iconType, iconValue: u2.iconValue }, null, 8, ["iconType", "iconValue"])) : te.value.iconValue ? (i(), r(l2, { key: 1, iconType: te.value.iconType, iconValue: te.value.iconValue }, null, 8, ["iconType", "iconValue"])) : (i(), d(C, { key: 2 }, [u2.isLeaf ? (i(), d("div", U, [a2[5] || (a2[5] = h("img", { src: I, class: "file" }, null, -1)), h("span", null, x(u2.name), 1)])) : (i(), d("div", D, [h("div", O, [a2[4] || (a2[4] = h("img", { src: T, class: "file" }, null, -1)), h("span", null, x(u2.name), 1)])]))], 64))], 8, R))]), _: 1 }, 8, ["style", "data", "props", "default-expand-all", "expand-on-click-node", "indent", "accordion", "show-checkbox", "lazy"])) : p("", true), v(h("div", null, [h("ul", { ref_key: "contxtMenuRef", ref: q, class: "context-menu" }, [(i(true), d(C, null, k(J.value, (e4, a3) => (i(), d("li", { key: a3, tabindex: "-1", class: "menu__item", onClick: (a4) => ((e5) => {
|
|
115
|
-
if (ge.value && "standard" === e5.type && e5.standardEvent) if ("edit" === e5.standardEvent) se.value = ge.value.data.nodeId, re.value = ge.value.data.name;
|
|
116
|
-
else if ("delete" === e5.standardEvent) ge.value.childNodes && ge.value.childNodes.length > 0 && e5.deleteParentNodeTip ? (e5.deleteParentNodeTipMessage || (e5.deleteParentNodeTipMessage = "当前节点下有子节点,确认删除?"), S.confirm(e5.deleteParentNodeTipMessage, { confirmButtonText: "确定", cancelButtonText: "取消", type: "error" }).then(() => {
|
|
117
|
-
ke(e5);
|
|
118
|
-
}).catch(() => {
|
|
119
|
-
ge.value = null;
|
|
120
|
-
})) : ke(e5);
|
|
121
|
-
else {
|
|
122
|
-
const a5 = xe();
|
|
123
|
-
se.value = a5.nodeId, ce.value = a5.nodeId, re.value = a5.name, "addSiblingNode" === e5.standardEvent ? (a5.isLeaf = ge.value.data.isLeaf, ge.value.parent && ge.value.parent.level > 0 ? ae.value.append(a5, ge.value.parent) : oe.value.push(a5)) : "addChildNode" === e5.standardEvent && (a5.isLeaf = true, ge.value.data.isLeaf = false, ae.value.append(a5, ge.value), ae.value.setCurrentKey(a5.nodeId, true));
|
|
124
|
-
}
|
|
125
|
-
})(e4) }, [h("span", null, x(e4.name), 1)], 8, W))), 128))], 512)], 512), [[N, F.value && ((_a2 = J.value) == null ? void 0 : _a2.length) > 0]])], 2);
|
|
54
|
+
A.value.getNode(e3);
|
|
55
|
+
} }), (e3, a2) => {
|
|
56
|
+
const n2 = u("el-input"), l2 = u("SuperIcon"), t2 = u("Folder"), o2 = u("el-icon"), x2 = u("el-tree");
|
|
57
|
+
return d(), i("div", { class: c(r(W)) }, [D.value.filter ? (d(), p(n2, { key: 0, modelValue: O.value, "onUpdate:modelValue": a2[0] || (a2[0] = (e4) => O.value = e4), style: { width: "240px" }, placeholder: "请输入查询条件" }, null, 8, ["modelValue"])) : s("", true), F.value ? (d(), p(x2, { key: 1, ref_key: "menuTree", ref: A, style: v(r(M)), load: B, data: K.value, props: E.value, "default-expand-all": D.value.defaultExpandAll, "expand-on-click-node": D.value.expandOnClickNode, indent: D.value.retractWidth ? D.value.retractWidth : 18, accordion: D.value.accordion, "show-checkbox": !!D.value.showCheckbox, "highlight-current": "", lazy: w.value, "node-key": "nodeId", "filter-node-method": U, onNodeClick: q }, { default: f(({ node: e4, data: a3 }) => [g("span", { title: e4.label, class: "ellipsis" }, [a3.iconValue ? (d(), p(l2, { key: 0, iconType: a3.iconType, iconValue: a3.iconValue }, null, 8, ["iconType", "iconValue"])) : D.value.iconValue ? (d(), p(l2, { key: 1, iconType: D.value.iconType, iconValue: D.value.iconValue }, null, 8, ["iconType", "iconValue"])) : (d(), p(o2, { key: 2 }, { default: f(() => [y(t2)]), _: 1 })), g("span", null, h(e4.label), 1)], 8, b)]), _: 1 }, 8, ["style", "data", "props", "default-expand-all", "expand-on-click-node", "indent", "accordion", "show-checkbox", "lazy"])) : s("", true)], 2);
|
|
126
58
|
};
|
|
127
59
|
} });
|
|
128
60
|
export {
|
|
129
|
-
|
|
61
|
+
N as default
|
|
130
62
|
};
|