super-page-designer 2.3.1 → 2.3.2-sit1-design1
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/design/utils/assemblys-config.js +1 -1
- package/dist/es/components/design/utils/page-table-util.js +2 -2
- package/dist/es/components/design/views/assemblys/button/component/set-dialog.vue.js +20 -20
- package/dist/es/components/design/views/assemblys/common/common-advanced-basic-showcondition.vue.js +24 -24
- package/dist/es/components/design/views/assemblys/common/common-icon-bind.vue.js +1 -1
- package/dist/es/components/design/views/assemblys/common/common-icon-bind.vue2.js +69 -55
- package/dist/es/components/design/views/assemblys/container/tabs/tabs-attr-base.vue.js +37 -34
- package/dist/es/components/design/views/assemblys/container/tabs/tabs-design.vue.js +1 -1
- package/dist/es/components/design/views/assemblys/container/tabs/tabs-design.vue2.js +36 -32
- package/dist/es/components/design/views/assemblys/data/table/tablecolumn-attr-base.vue2.js +1 -0
- package/dist/es/components/design/views/assemblys/form/common/hyperlink-mult-config.vue.js +16 -16
- package/dist/es/components/design/views/assemblys/form/dept-tree/depttree-attr-base.vue.js +29 -21
- package/dist/es/components/design/views/assemblys/form/dept-tree/depttree-autoset.vue.js +12 -12
- package/dist/es/components/design/views/assemblys/form/dept-tree/depttree-design.vue2.js +13 -13
- package/dist/es/components/design/views/design/page-event/completion-data.d.ts +7 -0
- package/dist/es/components/design/views/design/page-event/completion-data.js +4 -0
- package/dist/es/components/design/views/design/page-event/{config.vue2.js → config.vue.js} +2 -2
- package/dist/es/components/design/views/design/page-event/config.vue3.js +56 -50
- package/dist/es/components/design/views/design/page-event/page-event-content.vue.js +1 -1
- package/dist/es/components/design/views/design/view/view-design-display.vue.js +1 -1
- package/dist/es/components/design/views/design/view/view-design.vue.js +16 -16
- package/dist/es/style.css +20 -17
- package/package.json +5 -5
package/dist/es/components/design/views/assemblys/common/common-advanced-basic-showcondition.vue.js
CHANGED
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import { defineComponent as e, ref as l, resolveComponent as a, createElementBlock as
|
|
1
|
+
import { defineComponent as e, ref as l, resolveComponent as a, createElementBlock as o, openBlock as t, Fragment as r, createElementVNode as u, createVNode as d, withDirectives as n, withCtx as p, createTextVNode as i, vShow as s, unref as c } from "vue";
|
|
2
2
|
import { Plus as b, Delete as f } from "@element-plus/icons";
|
|
3
3
|
import m from "./common-variable-bind.vue.js";
|
|
4
4
|
import { getUuidv4 as w } from "../../../utils/common-util.js";
|
|
5
|
-
import { usePageContextStore as
|
|
6
|
-
import { getModelOptionsByFields as
|
|
5
|
+
import { usePageContextStore as g } from "../../../../../stores/page-store.js";
|
|
6
|
+
import { getModelOptionsByFields as y } from "../../../utils/page-table-util.js";
|
|
7
7
|
const v = { style: { "text-align": "center", margin: "0px -8px", "padding-top": "4px", "padding-left": "2px" } }, T = e({ __name: "common-advanced-basic-showcondition", props: { configure: { type: Object, required: true }, title: { type: String, default: "显示条件" }, type: { type: String, required: false, default: "showConditions" }, tableConfigure: { type: Object, default: () => {
|
|
8
8
|
} } }, setup(e2) {
|
|
9
|
-
const T2 =
|
|
9
|
+
const T2 = g(), V = e2;
|
|
10
10
|
V.configure.props || (V.configure.props = { base: {} });
|
|
11
11
|
let h = null;
|
|
12
12
|
V.configure.props.base || (V.configure.props.base = {}), V.configure.props.base[V.type] || (V.configure.props.base[V.type] = []), h = V.configure.props.base[V.type];
|
|
13
|
-
const _ = l(null);
|
|
14
|
-
var
|
|
15
|
-
(
|
|
16
|
-
const N = l(300),
|
|
17
|
-
function
|
|
13
|
+
const _ = l(null), k = T2.pageContext;
|
|
14
|
+
var C;
|
|
15
|
+
(C = V.tableConfigure ? V.tableConfigure : k.currentTableConfig) && (_.value = y(C.modelFields));
|
|
16
|
+
const N = l(300), U = l(false);
|
|
17
|
+
function j() {
|
|
18
18
|
let e3 = window.innerHeight - 140 - 176;
|
|
19
|
-
e3 > 500 ? e3 = 500 : e3 < 100 && (e3 = 100), N.value = e3,
|
|
19
|
+
e3 > 500 ? e3 = 500 : e3 < 100 && (e3 = 100), N.value = e3, U.value = true;
|
|
20
20
|
}
|
|
21
|
-
function
|
|
21
|
+
function x(e3) {
|
|
22
22
|
let l2 = -1;
|
|
23
23
|
const a2 = h.length;
|
|
24
|
-
for (let
|
|
25
|
-
l2 =
|
|
24
|
+
for (let o2 = 0; o2 < a2; o2++) if (h[o2].uuid == e3.uuid) {
|
|
25
|
+
l2 = o2;
|
|
26
26
|
break;
|
|
27
27
|
}
|
|
28
28
|
return l2;
|
|
29
29
|
}
|
|
30
|
-
function
|
|
30
|
+
function O(e3) {
|
|
31
31
|
let l2 = -1;
|
|
32
|
-
e3 && (l2 =
|
|
32
|
+
e3 && (l2 = x(e3));
|
|
33
33
|
const a2 = { uuid: w(), leftBracket: "", propName: "", operator: "", propValueType: "", rightBracket: "", joinSign: "", dataType: "" };
|
|
34
34
|
h.splice(l2 + 1, 0, a2);
|
|
35
35
|
}
|
|
@@ -37,7 +37,7 @@ const v = { style: { "text-align": "center", margin: "0px -8px", "padding-top":
|
|
|
37
37
|
function L(e3) {
|
|
38
38
|
B.value = e3;
|
|
39
39
|
}
|
|
40
|
-
function
|
|
40
|
+
function S(e3, l2, a2) {
|
|
41
41
|
if ("propValue" == a2) l2.propValue = e3;
|
|
42
42
|
else {
|
|
43
43
|
l2.propName = e3;
|
|
@@ -55,21 +55,21 @@ const v = { style: { "text-align": "center", margin: "0px -8px", "padding-top":
|
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
57
|
return (l2, w2) => {
|
|
58
|
-
const
|
|
59
|
-
return
|
|
60
|
-
let l4 =
|
|
58
|
+
const g2 = a("el-button"), y2 = a("el-text"), T3 = a("el-row"), V2 = a("Top"), k2 = a("el-icon"), C2 = a("Bottom"), N2 = a("el-table-column"), B2 = a("el-option"), I = a("el-select"), E = a("el-table"), M = a("el-dialog");
|
|
59
|
+
return t(), o(r, null, [u("div", null, [d(g2, { type: "primary", onClick: j }, { default: p(() => w2[1] || (w2[1] = [i("编辑")])), _: 1 }), n(d(y2, { type: "success" }, { default: p(() => w2[2] || (w2[2] = [i(" 已设置条件.")])), _: 1 }, 512), [[s, c(h) && c(h).length > 0]])]), d(M, { "append-to-body": "", modelValue: U.value, "onUpdate:modelValue": w2[0] || (w2[0] = (e3) => U.value = e3), title: e2.title, width: "900" }, { default: p(() => [d(T3, { style: { "padding-bottom": "8px" } }, { default: p(() => [d(g2, { icon: c(b), plain: "", type: "primary", onClick: O }, { default: p(() => w2[3] || (w2[3] = [i(" 添加 ")])), _: 1 }, 8, ["icon"])]), _: 1 }), d(E, { border: "", "highlight-current-row": "", onCurrentChange: L, "current-row-key": "uuid", "row-key": "uuid", data: c(h), style: { width: "100%" } }, { default: p(() => [d(N2, { label: "", width: "50" }, { default: p((e3) => [u("div", v, [d(k2, { size: "14", style: { cursor: "pointer" }, onClick: (l3) => function(e4) {
|
|
60
|
+
let l4 = x(e4);
|
|
61
61
|
if (l4 < 1) return;
|
|
62
62
|
const a2 = h;
|
|
63
63
|
[a2[l4 - 1], a2[l4]] = [a2[l4], a2[l4 - 1]];
|
|
64
|
-
}(e3.row) }, { default:
|
|
65
|
-
let l4 =
|
|
64
|
+
}(e3.row) }, { default: p(() => [d(V2)]), _: 2 }, 1032, ["onClick"]), d(k2, { size: "14", style: { "margin-left": "2px", cursor: "pointer" }, onClick: (l3) => function(e4) {
|
|
65
|
+
let l4 = x(e4);
|
|
66
66
|
if (-1 == l4 || h.length == l4 + 1) return;
|
|
67
67
|
const a2 = h;
|
|
68
68
|
[a2[l4], a2[l4 + 1]] = [a2[l4 + 1], a2[l4]];
|
|
69
|
-
}(e3.row) }, { default:
|
|
70
|
-
let l4 =
|
|
69
|
+
}(e3.row) }, { default: p(() => [d(C2)]), _: 2 }, 1032, ["onClick"])])]), _: 1 }), d(N2, { prop: "leftBracket", label: "(", width: "80" }, { default: p((e3) => [d(I, { modelValue: e3.row.leftBracket, "onUpdate:modelValue": (l3) => e3.row.leftBracket = l3, clearable: "", placeholder: "请选择" }, { default: p(() => [d(B2, { label: "", value: "" }), d(B2, { label: "(", value: "(" }), d(B2, { label: "((", value: "((" }), d(B2, { label: "(((", value: "(((" }), d(B2, { label: "((((", value: "((((" })]), _: 2 }, 1032, ["modelValue", "onUpdate:modelValue"])]), _: 1 }), d(N2, { prop: "propName", label: "字段名(*)", width: "150" }, { default: p((e3) => [d(m, { modelValue: e3.row.propName, objModelOptions: _.value, paramTypes: ["data", "task", "page", "request", "row"], "onUpdate:modelValue": (l3) => S(l3, e3.row, "propName") }, null, 8, ["modelValue", "objModelOptions", "onUpdate:modelValue"])]), _: 1 }), d(N2, { prop: "operator", label: "操作符", width: "90" }, { default: p((e3) => [d(I, { modelValue: e3.row.operator, "onUpdate:modelValue": (l3) => e3.row.operator = l3, clearable: "", placeholder: "请选择" }, { default: p(() => [n(d(B2, { label: "大于", value: "GT" }, null, 512), [[s, "int" == e3.row.dataType || "long" == e3.row.dataType || "float" == e3.row.dataType || "double" == e3.row.dataType]]), n(d(B2, { label: "小于", value: "LT" }, null, 512), [[s, "int" == e3.row.dataType || "long" == e3.row.dataType || "float" == e3.row.dataType || "double" == e3.row.dataType]]), n(d(B2, { label: "晚于", value: "GT" }, null, 512), [[s, "date" == e3.row.dataType || "datetime" == e3.row.dataType]]), n(d(B2, { label: "早于", value: "LT" }, null, 512), [[s, "date" == e3.row.dataType || "datetime" == e3.row.dataType]]), d(B2, { label: "等于", value: "EQ" }), n(d(B2, { label: "不大于", value: "LET" }, null, 512), [[s, "int" == e3.row.dataType || "long" == e3.row.dataType || "float" == e3.row.dataType || "double" == e3.row.dataType]]), n(d(B2, { label: "不小于", value: "GET" }, null, 512), [[s, "int" == e3.row.dataType || "long" == e3.row.dataType || "float" == e3.row.dataType || "double" == e3.row.dataType]]), n(d(B2, { label: "不晚于", value: "LET" }, null, 512), [[s, "date" == e3.row.dataType || "datetime" == e3.row.dataType]]), n(d(B2, { label: "不早于", value: "GET" }, null, 512), [[s, "date" == e3.row.dataType || "datetime" == e3.row.dataType]]), d(B2, { label: "不等于", value: "NET" }), d(B2, { label: "包含", value: "CONTAIN" }), d(B2, { label: "不包含", value: "NOT_CONTAIN" }), d(B2, { label: "等于Null", value: "IS_NULL" }), d(B2, { label: "不等于Null", value: "IS_NOT_NULL" })]), _: 2 }, 1032, ["modelValue", "onUpdate:modelValue"])]), _: 1 }), d(N2, { prop: "propValue", label: "值(*)", width: "150" }, { default: p((e3) => [d(m, { modelValue: e3.row.propValue, objModelOptions: _.value, "onUpdate:modelValue": (l3) => S(l3, e3.row, "propValue") }, null, 8, ["modelValue", "objModelOptions", "onUpdate:modelValue"])]), _: 1 }), d(N2, { prop: "rightBracket", label: ")", width: "80" }, { default: p((e3) => [d(I, { modelValue: e3.row.rightBracket, "onUpdate:modelValue": (l3) => e3.row.rightBracket = l3, placeholder: "请选择", clearable: "" }, { default: p(() => [d(B2, { label: "", value: "" }), d(B2, { label: ")", value: ")" }), d(B2, { label: "))", value: "))" }), d(B2, { label: ")))", value: ")))" }), d(B2, { label: "))))", value: "))))" })]), _: 2 }, 1032, ["modelValue", "onUpdate:modelValue"])]), _: 1 }), d(N2, { prop: "joinSign", label: "并且/或者", width: "80" }, { default: p((e3) => [d(I, { modelValue: e3.row.joinSign, "onUpdate:modelValue": (l3) => e3.row.joinSign = l3, clearable: "", placeholder: "请选择" }, { default: p(() => [d(B2, { label: "或者", value: "or" }), d(B2, { label: "并且", value: "and" })]), _: 2 }, 1032, ["modelValue", "onUpdate:modelValue"])]), _: 1 }), d(N2, { prop: "variableIsNull", label: "变量为空时", width: "120" }, { default: p((e3) => [d(I, { modelValue: e3.row.variableIsNull, "onUpdate:modelValue": (l3) => e3.row.variableIsNull = l3, clearable: "", placeholder: "请选择" }, { default: p(() => [d(B2, { label: "Null", value: "null" }), d(B2, { label: "忽略(1=1)", value: "ignore" }), d(B2, { label: "不符合(1<>1)", value: "notequal" })]), _: 2 }, 1032, ["modelValue", "onUpdate:modelValue"])]), _: 1 }), d(N2, { label: "操作", width: "60" }, { default: p((e3) => [d(k2, { size: "14", style: { color: "#5893ef", cursor: "pointer", "font-weight": "bold", "margin-right": "8px", "margin-left": "6px" }, onClick: (l3) => O(e3.row) }, { default: p(() => [d(c(b))]), _: 2 }, 1032, ["onClick"]), d(k2, { size: "14", style: { color: "#5893ef", cursor: "pointer" }, onClick: (l3) => function(e4) {
|
|
70
|
+
let l4 = x(e4);
|
|
71
71
|
l4 > -1 && h.splice(l4, 1);
|
|
72
|
-
}(e3.row) }, { default:
|
|
72
|
+
}(e3.row) }, { default: p(() => [d(c(f))]), _: 2 }, 1032, ["onClick"])]), _: 1 })]), _: 1 }, 8, ["data"])]), _: 1 }, 8, ["modelValue", "title"])], 64);
|
|
73
73
|
};
|
|
74
74
|
} });
|
|
75
75
|
export {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./common-icon-bind.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import e from "../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const i = e(o, [["__scopeId", "data-v-
|
|
4
|
+
const i = e(o, [["__scopeId", "data-v-70020263"]]);
|
|
5
5
|
export {
|
|
6
6
|
i as default
|
|
7
7
|
};
|
|
@@ -1,94 +1,108 @@
|
|
|
1
|
-
import { defineComponent as e, ref as l, computed as o, resolveComponent as a, resolveDirective as n, createElementBlock as t, createBlock as u, openBlock as i, toDisplayString as c, withCtx as s, createVNode as
|
|
2
|
-
import { Close as k, Check as I, Search as x, Plus as
|
|
1
|
+
import { defineComponent as e, ref as l, computed as o, resolveComponent as a, resolveDirective as n, createElementBlock as t, createBlock as u, openBlock as i, toDisplayString as c, withCtx as s, createVNode as p, withDirectives as v, unref as r, createElementVNode as m, Fragment as d, renderList as f, normalizeClass as g, vShow as b, createCommentVNode as y, createTextVNode as h, withModifiers as w, nextTick as _ } from "vue";
|
|
2
|
+
import { Close as k, Check as I, Search as x, Plus as C, InfoFilled as A, CircleClose as $ } from "@element-plus/icons-vue";
|
|
3
3
|
import * as V from "@element-plus/icons";
|
|
4
|
-
import
|
|
5
|
-
|
|
4
|
+
import P from "agilebuilder-ui/src/utils/request";
|
|
5
|
+
import { ElMessage as z } from "element-plus";
|
|
6
|
+
const O = { key: 0 }, U = { class: "amb-component-popover-left-menu-main" }, j = ["onClick"], S = { key: 1, style: { display: "flex", gap: "10px", "align-items": "center" } }, T = { key: 2 }, L = { key: 3, class: "amb-component-popover-icon-list-scroll", style: { overflow: "auto" } }, N = { class: "amb-component-popover-icon-grid" }, E = ["onClick"], q = { key: 4, style: { "text-align": "right" } }, D = e({ __name: "common-icon-bind", props: { iconType: String, iconValue: String, size: { type: String, default: "small" }, showLabel: { type: Boolean, default: false } }, emits: ["update:modelValue"], setup(e2, { emit: D2 }) {
|
|
6
7
|
var _a, _b;
|
|
7
|
-
const
|
|
8
|
+
const R = D2, B = e2, F = l([]), G = l([]), W = l([]), H = l([]), J = l([{ value: "ElementUI", label: "ElementUI" }, { value: "ambIcon", label: "Amb图标库" }, { value: "ambColorIcon", label: "Amb彩色图标库", dataList: [] }, { value: "custom", label: "自定义" }]);
|
|
8
9
|
l(false);
|
|
9
|
-
const
|
|
10
|
+
const K = l(1), M = l(B.iconType ?? ((_b = (_a = J.value) == null ? void 0 : _a[0]) == null ? void 0 : _b.value)), Q = l("");
|
|
10
11
|
Q.value = B.iconValue;
|
|
11
|
-
const
|
|
12
|
-
let e3 =
|
|
13
|
-
return
|
|
12
|
+
const X = l({}), Y = l(""), Z = l(), ee = l(), le = l(false), oe = o(() => ["ElementUI"].includes(M.value) ? F.value : ["ambIcon"].includes(M.value) ? G.value : ["ambColorIcon"].includes(M.value) ? W.value : H.value), ae = o(() => {
|
|
13
|
+
let e3 = oe.value ?? [];
|
|
14
|
+
return Y.value && (e3 = e3.filter((e4) => [e4.label ?? "", e4.value ?? ""].some((e5) => {
|
|
14
15
|
var _a2;
|
|
15
|
-
return (_a2 = e5.toLowerCase()) == null ? void 0 : _a2.includes(
|
|
16
|
-
}))), e3.slice(0, 50 *
|
|
17
|
-
}),
|
|
18
|
-
|
|
16
|
+
return (_a2 = e5.toLowerCase()) == null ? void 0 : _a2.includes(Y.value.toLowerCase());
|
|
17
|
+
}))), e3.slice(0, 50 * K.value);
|
|
18
|
+
}), ne = () => {
|
|
19
|
+
ae.value.length > 0 && !le.value && oe.value.length > ae.value.length && !Y.value && K.value++;
|
|
19
20
|
};
|
|
20
|
-
const
|
|
21
|
-
if (!(
|
|
21
|
+
const te = async () => {
|
|
22
|
+
if (!(H.value.length > 0)) {
|
|
22
23
|
try {
|
|
23
|
-
|
|
24
|
-
const e3 = await
|
|
24
|
+
le.value = true;
|
|
25
|
+
const e3 = await P.post(window.$vueApp.config.globalProperties.baseAPI + "/component/general-icon/query", { pageSize: 200, pageNo: 1 }), l2 = (e3 == null ? void 0 : e3.data) ?? [], o2 = [];
|
|
25
26
|
for (let e4 of l2) o2.push({ value: e4.iconName, label: e4.iconName });
|
|
26
|
-
|
|
27
|
+
X.value.customOptions = o2, H.value = o2;
|
|
27
28
|
} catch (e3) {
|
|
28
29
|
}
|
|
29
|
-
|
|
30
|
+
le.value = false;
|
|
30
31
|
}
|
|
31
32
|
};
|
|
32
|
-
function
|
|
33
|
+
function ue(e3) {
|
|
33
34
|
var l2;
|
|
34
|
-
|
|
35
|
+
K.value = 1, M.value = e3, "ElementUI" === (l2 = M.value) ? F.value = X.value.elementUIOptions : "custom" === l2 ? te() : ["ambIcon"].includes(l2) ? (async () => {
|
|
35
36
|
var _a2, _b2, _c;
|
|
36
|
-
if (!(
|
|
37
|
+
if (!(G.value.length > 0)) {
|
|
37
38
|
try {
|
|
38
|
-
|
|
39
|
+
le.value = true;
|
|
39
40
|
let e4 = `${window.location.origin}${window.location.pathname}font-icon/iconfont.json`;
|
|
40
41
|
((_c = (_b2 = (_a2 = window.$vueApp) == null ? void 0 : _a2.config) == null ? void 0 : _b2.globalProperties) == null ? void 0 : _c.fontIconAddress) && (e4 = `${window.$vueApp.config.globalProperties.fontIconAddress}/iconfont.json`);
|
|
41
42
|
const l3 = await fetch(e4, { mode: "cors" }).then((e5) => e5.json()), { css_prefix_text: o2, glyphs: a2 = [] } = l3 ?? {};
|
|
42
|
-
|
|
43
|
+
G.value = a2.map((e5) => ({ label: e5.name, value: `${o2}${e5.font_class}` }));
|
|
43
44
|
} catch (e4) {
|
|
44
45
|
}
|
|
45
|
-
|
|
46
|
+
le.value = false;
|
|
46
47
|
}
|
|
47
48
|
})() : ["ambColorIcon"].includes(l2) && async function() {
|
|
48
49
|
var _a2, _b2, _c;
|
|
49
|
-
if (!(
|
|
50
|
+
if (!(W.value.length > 0)) {
|
|
50
51
|
try {
|
|
51
|
-
|
|
52
|
+
le.value = true;
|
|
52
53
|
let e4 = `${window.location.origin}${window.location.pathname}font-icon/iconfont.json`;
|
|
53
54
|
((_c = (_b2 = (_a2 = window.$vueApp) == null ? void 0 : _a2.config) == null ? void 0 : _b2.globalProperties) == null ? void 0 : _c.fontIconAddress) && (e4 = `${window.$vueApp.config.globalProperties.fontIconAddress}-color/iconfont.json`);
|
|
54
55
|
const l3 = await fetch(e4, { mode: "cors", headers: { "Content-Type": "application/json" } }).then((e5) => e5.json()), { css_prefix_text: o2, glyphs: a2 = [] } = l3 ?? {};
|
|
55
|
-
|
|
56
|
+
W.value = a2.map((e5) => ({ label: e5.name, value: `${o2}${e5.font_class}` }));
|
|
56
57
|
} catch (e4) {
|
|
57
58
|
}
|
|
58
|
-
|
|
59
|
+
le.value = false;
|
|
59
60
|
}
|
|
60
61
|
}();
|
|
61
62
|
}
|
|
62
|
-
function
|
|
63
|
+
function ie() {
|
|
63
64
|
var _a2, _b2;
|
|
64
|
-
(_b2 = (_a2 =
|
|
65
|
+
(_b2 = (_a2 = Z.value) == null ? void 0 : _a2.hide) == null ? void 0 : _b2.call(_a2);
|
|
65
66
|
}
|
|
66
|
-
function
|
|
67
|
-
Q.value = "",
|
|
67
|
+
function ce() {
|
|
68
|
+
Q.value = "", R("update:modelValue", "", ""), Z.value.hide();
|
|
68
69
|
}
|
|
69
|
-
function
|
|
70
|
-
if (
|
|
71
|
-
const e3 =
|
|
70
|
+
function se() {
|
|
71
|
+
if (Y.value = Y.value.trim(), !Y.value) return void z.warning("请输入图标名!");
|
|
72
|
+
const e3 = X.value.customOptions || [];
|
|
72
73
|
let l2 = false;
|
|
73
|
-
for (let
|
|
74
|
+
for (let o2 of e3) if (o2.value === Y.value) {
|
|
74
75
|
l2 = true;
|
|
75
76
|
break;
|
|
76
77
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
const e4 =
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
78
|
+
if (!l2 && Y.value.startsWith("svg-img-")) z.info("请选择需要上传的SVG文件!"), ee.value.click();
|
|
79
|
+
else {
|
|
80
|
+
M.value = "custom", Q.value = Y.value;
|
|
81
|
+
const e4 = Y.value;
|
|
82
|
+
if (Y.value = "", R("update:modelValue", M.value, Q.value), Z.value.hide(), !l2) {
|
|
83
|
+
const l3 = { iconName: e4 };
|
|
84
|
+
P.post(window.$vueApp.config.globalProperties.baseAPI + "/bs/general-icon/get-or-create", l3).then((e5) => {
|
|
85
|
+
"custom" == M.value && te();
|
|
86
|
+
}).catch((e5) => {
|
|
87
|
+
z.warning("保存图标失败!");
|
|
88
|
+
});
|
|
89
|
+
}
|
|
86
90
|
}
|
|
87
91
|
}
|
|
88
|
-
function
|
|
92
|
+
function pe(e3) {
|
|
93
|
+
const l2 = e3.target.files[0];
|
|
94
|
+
if (!l2) return;
|
|
95
|
+
const o2 = new FormData();
|
|
96
|
+
o2.append("file", l2), o2.append("iconName", Y.value.trim()), P.post(window.$vueApp.config.globalProperties.baseAPI + "/bs/general-icon/upload-icon", o2, { headers: { "Content-Type": "multipart/form-data" } }).then((e4) => {
|
|
97
|
+
ee.value.value = "", z.success("上传成功!"), H.value.unshift({ value: Y.value.trim(), label: Y.value.trim() }), Y.value = "";
|
|
98
|
+
}).catch((e4) => {
|
|
99
|
+
z.warning("保存图标失败!");
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
function ve() {
|
|
89
103
|
_(() => {
|
|
90
104
|
!function() {
|
|
91
|
-
if (!
|
|
105
|
+
if (!X.value.elementUIOptions) {
|
|
92
106
|
if (!window.temp_Icon_Options) {
|
|
93
107
|
const e3 = [];
|
|
94
108
|
for (const [l2, o2] of Object.entries(V)) e3.push({ value: l2, label: l2, component: o2 });
|
|
@@ -97,19 +111,19 @@ const U = { key: 0 }, j = { class: "amb-component-popover-left-menu-main" }, z =
|
|
|
97
111
|
return o2.localeCompare(a2);
|
|
98
112
|
}), window.temp_Icon_Options = e3;
|
|
99
113
|
}
|
|
100
|
-
|
|
114
|
+
X.value.elementUIOptions = window.temp_Icon_Options;
|
|
101
115
|
}
|
|
102
|
-
}(),
|
|
116
|
+
}(), ue(M.value);
|
|
103
117
|
});
|
|
104
118
|
}
|
|
105
119
|
return l(), (l2, o2) => {
|
|
106
|
-
const _2 = a("el-icon"), V2 = a("el-input"),
|
|
107
|
-
return e2.showLabel ? (i(), t("span",
|
|
108
|
-
return o3 = e3, Q.value = o3.value,
|
|
120
|
+
const _2 = a("el-icon"), V2 = a("el-input"), P2 = a("el-button"), z2 = a("el-tooltip"), D3 = a("el-scrollbar"), B2 = a("el-col"), F2 = a("el-empty"), G2 = a("el-tag"), W2 = a("SuperIcon"), H2 = a("ArrowDown"), K2 = a("el-row"), X2 = a("el-popover"), te2 = n("infinite-scroll"), re = n("loading");
|
|
121
|
+
return e2.showLabel ? (i(), t("span", O, c(Q.value), 1)) : (i(), u(X2, { key: 1, ref_key: "popoverRef", ref: Z, "popper-class": "amb-component-popover-main", trigger: "click", width: 540 }, { reference: s(() => [p(V2, { readonly: "", size: e2.size, onClick: ve, modelValue: Q.value, "onUpdate:modelValue": o2[0] || (o2[0] = (e3) => Q.value = e3), placeholder: "请选择" }, { suffix: s(() => [v(p(_2, { style: { cursor: "pointer" }, onClick: w(ce, ["stop"]) }, { default: s(() => [p(r($))]), _: 1 }, 512), [[b, Q.value]])]), _: 1 }, 8, ["size", "modelValue"])]), default: s(() => [p(K2, null, { default: s(() => [p(z2, { effect: "dark", content: "关闭", placement: "top-end" }, { default: s(() => [p(P2, { type: "text", class: "amb-component-popover-close-btn", icon: r(k), onClick: ie }, null, 8, ["icon"])]), _: 1 }), p(B2, { span: 8 }, { default: s(() => [m("div", U, [p(D3, { "max-height": "100%" }, { default: s(() => [(i(true), t(d, null, f(J.value, (e3) => (i(), t("div", { class: g(["amb-popover-menu-item", e3.value == M.value ? "is-active" : ""]), onClick: (l3) => ue(e3.value) }, [p(_2, null, { default: s(() => [v(p(r(I), null, null, 512), [[b, e3.value == M.value]])]), _: 2 }, 1024), m("span", null, c(e3.label), 1)], 10, j))), 256))]), _: 1 })])]), _: 1 }), v((i(), u(B2, { span: 16, style: { "padding-left": "10px" }, class: "amb-component-popover-icon-list-view" }, { default: s(() => [M.value ? y("", true) : (i(), u(F2, { key: 0, description: "请选择类型", "image-size": 80 })), M.value ? (i(), t("div", S, [p(V2, { modelValue: Y.value, "onUpdate:modelValue": o2[1] || (o2[1] = (e3) => Y.value = e3), placeholder: "搜索", size: "default", "prefix-icon": r(x), clearable: "", style: { flex: "1 1 auto" } }, null, 8, ["modelValue", "prefix-icon"]), ["custom"].includes(M.value) && Y.value && !ae.value.length ? (i(), u(z2, { key: 0, effect: "dark", content: "创建该图标", placement: "top-end" }, { default: s(() => [p(P2, { type: "primary", circle: "", icon: r(C), onClick: se }, null, 8, ["icon"])]), _: 1 })) : y("", true)])) : y("", true), m("input", { ref_key: "uplooadSvgInputRef", ref: ee, type: "file", accept: ".svg", style: { display: "none" }, onChange: pe }, null, 544), ["custom"].includes(M.value) ? (i(), t("div", T, [p(_2, null, { default: s(() => [p(r(A))]), _: 1 }), o2[5] || (o2[5] = m("span", { style: { "margin-left": "5px" } }, "输入图标名后点击加号按钮添加", -1)), o2[6] || (o2[6] = h(" ")), p(z2, null, { content: s(() => o2[3] || (o2[3] = [h(" 1.支持fa图标,图标名称详见官网:https://fontawesome.com.cn/v4/icons-ui/; "), m("br", null, null, -1), h(" 2.支持svg图标,需以svg-img-开头,接svg内容,如:svg-img-xxxxxx. ")])), default: s(() => [p(G2, { type: "primary" }, { default: s(() => o2[4] || (o2[4] = [h("更多")])), _: 1 })]), _: 1 })])) : y("", true), M.value ? v((i(), t("div", L, [ae.value.length || le.value ? y("", true) : (i(), u(F2, { key: 0, description: "没有相关图标", "image-size": 80 })), m("div", N, [(i(true), t(d, null, f(ae.value, (e3) => (i(), u(z2, { key: e3.value, effect: "dark", content: e3.label, placement: "top" }, { default: s(() => [m("div", { class: "amb-component-popover-icon-grid-item", onClick: (l3) => {
|
|
122
|
+
return o3 = e3, Q.value = o3.value, R("update:modelValue", M.value, Q.value), void Z.value.hide();
|
|
109
123
|
var o3;
|
|
110
|
-
} }, [
|
|
124
|
+
} }, [p(W2, { iconType: M.value, iconValue: e3.value }, null, 8, ["iconType", "iconValue"])], 8, E)]), _: 2 }, 1032, ["content"]))), 128))])])), [[te2, ne]]) : y("", true), M.value ? (i(), t("div", q, [ae.value.length < oe.value.length ? (i(), u(_2, { key: 0, style: { "padding-left": "10px", "font-size": "20px" }, onClick: o2[2] || (o2[2] = (e3) => ne()) }, { default: s(() => [p(H2)]), _: 1 })) : y("", true), h(c(ae.value.length) + "/" + c(oe.value.length), 1)])) : y("", true)]), _: 1 })), [[re, le.value]])]), _: 1 })]), _: 1 }, 512));
|
|
111
125
|
};
|
|
112
126
|
} });
|
|
113
127
|
export {
|
|
114
|
-
|
|
128
|
+
D as default
|
|
115
129
|
};
|
|
@@ -1,55 +1,58 @@
|
|
|
1
|
-
import { defineComponent as e, ref as l, resolveComponent as o, createBlock as
|
|
2
|
-
import { Top as
|
|
1
|
+
import { defineComponent as e, ref as l, resolveComponent as o, createBlock as a, openBlock as t, withCtx as i, createVNode as n, createElementVNode as u, createTextVNode as r, toDisplayString as d, createCommentVNode as c, unref as p, createElementBlock as m, Fragment as f, renderList as s } from "vue";
|
|
2
|
+
import { Top as g, Bottom as b, Plus as V, Delete as x, Close as v, Check as _ } from "@element-plus/icons-vue";
|
|
3
3
|
import y from "../../common/common-attr-size.vue.js";
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
const
|
|
4
|
+
import h from "../../common/common-function-code.vue.js";
|
|
5
|
+
import w from "../../common/common-icon-bind.vue.js";
|
|
6
|
+
import U from "../../common/common-i18n-key-input.vue.js";
|
|
7
|
+
const k = { style: { padding: "8px 0px 0px 0px" } }, z = { style: { padding: "8px 0px 0px 0px" }, ref: "panels" }, C = { style: { "text-align": "center", margin: "0px -8px", "padding-top": "4px", "padding-left": "2px" } }, T = e({ __name: "tabs-attr-base", props: { configure: { type: Object, required: true }, pageDesign: { type: Object, default: () => {
|
|
8
8
|
} } }, setup(e2) {
|
|
9
|
-
const
|
|
9
|
+
const T2 = e2;
|
|
10
10
|
l([2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 24]);
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
const j = l(["1", "2", "attrSize"]);
|
|
12
|
+
function O(e3) {
|
|
13
|
+
e3 && (T2.configure.props.editable = true, T2.configure.props.closable = true);
|
|
14
|
+
}
|
|
15
|
+
return (l2, B) => {
|
|
16
|
+
const F = o("el-text"), N = o("el-form-item"), P = o("el-input"), R = o("el-collapse-item"), q = o("el-icon"), D = o("el-table-column"), H = o("el-table"), S = o("el-option"), A = o("el-select"), E = o("el-radio-button"), G = o("el-radio-group"), I = o("el-switch"), J = o("el-collapse"), K = o("el-form");
|
|
17
|
+
return t(), a(K, { "label-width": "80px", size: "small" }, { default: i(() => [n(J, { modelValue: j.value, "onUpdate:modelValue": B[10] || (B[10] = (e3) => j.value = e3), style: { "margin-top": "6px" } }, { default: i(() => [n(R, { title: "基本", name: "1", class: "amb-design-attr-group-header" }, { default: i(() => [u("div", k, [n(N, { label: "组件类型" }, { default: i(() => [n(F, null, { default: i(() => [r(d(e2.configure.label) + "(" + d(e2.configure.name) + ")", 1)]), _: 1 })]), _: 1 }), n(N, { label: "唯一编码", style: { "margin-top": "-10px" } }, { default: i(() => [n(P, { modelValue: e2.configure.uuid, "onUpdate:modelValue": B[0] || (B[0] = (l3) => e2.configure.uuid = l3), readonly: "", title: e2.configure.uuid }, null, 8, ["modelValue", "title"])]), _: 1 }), n(N, { label: "自定义编码", style: { "margin-top": "-10px" } }, { default: i(() => [n(P, { modelValue: e2.configure.code, "onUpdate:modelValue": B[1] || (B[1] = (l3) => e2.configure.code = l3), placeholder: "请输入" }, null, 8, ["modelValue"])]), _: 1 }), n(N, { label: "绑定权限", style: { "margin-top": "-10px", "margin-bottom": "-10px" } }, { default: i(() => [n(h, { configure: e2.configure }, null, 8, ["configure"])]), _: 1 })])]), _: 1 }), n(R, { title: "页签列表", name: "2", class: "amb-design-attr-group-header" }, { default: i(() => [u("div", z, [n(H, { data: e2.configure.items, border: "", style: { width: "100%" }, class: "panelTable" }, { default: i(() => [n(D, { label: "", width: "32" }, { default: i((e3) => [u("div", C, [n(q, { size: "14", style: { cursor: "pointer" }, onClick: (l3) => function(e4) {
|
|
15
18
|
let l4 = -1;
|
|
16
|
-
const o2 =
|
|
17
|
-
for (let
|
|
18
|
-
l4 =
|
|
19
|
+
const o2 = T2.configure.items.length;
|
|
20
|
+
for (let a3 = 0; a3 < o2; a3++) if (T2.configure.items[a3].index == e4.index) {
|
|
21
|
+
l4 = a3;
|
|
19
22
|
break;
|
|
20
23
|
}
|
|
21
24
|
if (l4 < 1) return;
|
|
22
|
-
const
|
|
23
|
-
[
|
|
24
|
-
}(e3.row) }, { default:
|
|
25
|
+
const a2 = T2.configure.items;
|
|
26
|
+
[a2[l4 - 1], a2[l4]] = [a2[l4], a2[l4 - 1]];
|
|
27
|
+
}(e3.row) }, { default: i(() => [n(p(g))]), _: 2 }, 1032, ["onClick"]), n(q, { size: "14", style: { "margin-left": "2px", cursor: "pointer" }, onClick: (l3) => function(e4) {
|
|
25
28
|
let l4 = -1;
|
|
26
|
-
const o2 =
|
|
27
|
-
for (let
|
|
28
|
-
l4 =
|
|
29
|
+
const o2 = T2.configure.items.length;
|
|
30
|
+
for (let a3 = 0; a3 < o2; a3++) if (T2.configure.items[a3].index == e4.index) {
|
|
31
|
+
l4 = a3;
|
|
29
32
|
break;
|
|
30
33
|
}
|
|
31
|
-
if (-1 == l4 ||
|
|
32
|
-
const
|
|
33
|
-
[
|
|
34
|
-
}(e3.row) }, { default:
|
|
34
|
+
if (-1 == l4 || T2.configure.items.length == l4 + 1) return;
|
|
35
|
+
const a2 = T2.configure.items;
|
|
36
|
+
[a2[l4], a2[l4 + 1]] = [a2[l4 + 1], a2[l4]];
|
|
37
|
+
}(e3.row) }, { default: i(() => [n(p(b))]), _: 2 }, 1032, ["onClick"])])]), _: 1 }), n(D, { prop: "label", label: "标题", width: "110" }, { default: i((e3) => [n(U, { modelValue: e3.row.label, "onUpdate:modelValue": (l3) => e3.row.label = l3 }, null, 8, ["modelValue", "onUpdate:modelValue"])]), _: 1 }), n(D, { label: "图标", width: "70" }, { default: i((e3) => [n(w, { iconType: e3.row.iconType, iconValue: e3.row.iconValue, "onUpdate:modelValue": (l3, o2) => function(e4, l4, o3) {
|
|
35
38
|
e4.iconType = l4, e4.iconValue = o3;
|
|
36
|
-
}(e3.row, l3, o2) }, null, 8, ["iconType", "iconValue", "onUpdate:modelValue"])]), _: 1 }), n(D, { label: "编码", width: "70" }, { default:
|
|
39
|
+
}(e3.row, l3, o2) }, null, 8, ["iconType", "iconValue", "onUpdate:modelValue"])]), _: 1 }), n(D, { label: "编码", width: "70" }, { default: i((e3) => [n(P, { modelValue: e3.row.code, "onUpdate:modelValue": (l3) => e3.row.code = l3 }, null, 8, ["modelValue", "onUpdate:modelValue"])]), _: 1 }), n(D, { label: "操作", width: "90" }, { default: i((e3) => [n(q, { size: "14", style: { color: "#5893ef", cursor: "pointer", "font-weight": "bold", "margin-right": "8px" }, onClick: (l3) => function(e4) {
|
|
37
40
|
let l4 = -1, o2 = -1;
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}), o2 > -1 &&
|
|
41
|
-
}(e3.row) }, { default:
|
|
42
|
-
if (1 ==
|
|
41
|
+
T2.configure.items.find((a2, t2) => {
|
|
42
|
+
a2.index == e4.index && (o2 = t2), a2.index > l4 && (l4 = a2.index);
|
|
43
|
+
}), o2 > -1 && T2.configure.items.splice(o2 + 1, 0, { label: "Tab" + (l4 + 1), index: l4 + 1, items: [] });
|
|
44
|
+
}(e3.row) }, { default: i(() => [n(p(V))]), _: 2 }, 1032, ["onClick"]), n(q, { size: "14", style: { color: "#5893ef", cursor: "pointer" }, onClick: (l3) => function(e4) {
|
|
45
|
+
if (1 == T2.configure.items.length) return void alert("必须保留一个Tab!");
|
|
43
46
|
if (!confirm("确定要删除吗?")) return;
|
|
44
47
|
let l4 = -1;
|
|
45
|
-
for (let o2 in
|
|
48
|
+
for (let o2 in T2.configure.items) if (T2.configure.items[o2].index == e4.index) {
|
|
46
49
|
l4 = o2;
|
|
47
50
|
break;
|
|
48
51
|
}
|
|
49
|
-
l4 > -1 &&
|
|
50
|
-
}(e3.row) }, { default:
|
|
52
|
+
l4 > -1 && T2.configure.items.splice(l4, 1);
|
|
53
|
+
}(e3.row) }, { default: i(() => [n(p(x))]), _: 2 }, 1032, ["onClick"])]), _: 1 })]), _: 1 }, 8, ["data"]), n(N, { label: "默认打开", style: { "margin-top": "10px" } }, { default: i(() => [n(A, { modelValue: e2.configure.props.defaultOpen, "onUpdate:modelValue": B[2] || (B[2] = (l3) => e2.configure.props.defaultOpen = l3), placeholder: "默认", clearable: "" }, { default: i(() => [(t(true), m(f, null, s(e2.configure.items, (e3) => (t(), a(S, { label: e3.label, value: e3.code || e3.index }, null, 8, ["label", "value"]))), 256))]), _: 1 }, 8, ["modelValue"])]), _: 1 }), n(N, { label: "标签风格", style: { "margin-top": "-10px" } }, { default: i(() => [n(A, { modelValue: e2.configure.props.cardType, "onUpdate:modelValue": B[3] || (B[3] = (l3) => e2.configure.props.cardType = l3), placeholder: "默认", clearable: "" }, { default: i(() => [n(S, { label: "卡片", value: "card" }), n(S, { label: "边框", value: "border-card" })]), _: 1 }, 8, ["modelValue"])]), _: 1 }), n(N, { label: "标签位置", style: { "margin-top": "-10px" } }, { default: i(() => [n(G, { modelValue: e2.configure.props.tabPosition, "onUpdate:modelValue": B[4] || (B[4] = (l3) => e2.configure.props.tabPosition = l3) }, { default: i(() => [n(E, { value: "top" }, { default: i(() => B[11] || (B[11] = [r("上")])), _: 1 }), n(E, { value: "right" }, { default: i(() => B[12] || (B[12] = [r("右")])), _: 1 }), n(E, { value: "bottom" }, { default: i(() => B[13] || (B[13] = [r("下")])), _: 1 }), n(E, { value: "left" }, { default: i(() => B[14] || (B[14] = [r("左")])), _: 1 })]), _: 1 }, 8, ["modelValue"])]), _: 1 }), n(N, { label: "全部渲染", style: { "margin-top": "-10px" } }, { default: i(() => [n(I, { modelValue: e2.configure.props.isFullyRendered, "onUpdate:modelValue": B[5] || (B[5] = (l3) => e2.configure.props.isFullyRendered = l3), "inline-prompt": "", "active-icon": p(_), "inactive-icon": p(v) }, null, 8, ["modelValue", "active-icon", "inactive-icon"])]), _: 1 }), n(N, { label: "延迟渲染", style: { "margin-top": "-10px" } }, { default: i(() => [n(I, { modelValue: e2.configure.props.lazy, "onUpdate:modelValue": B[6] || (B[6] = (l3) => e2.configure.props.lazy = l3), "inline-prompt": "", "active-icon": p(_), "inactive-icon": p(v) }, null, 8, ["modelValue", "active-icon", "inactive-icon"])]), _: 1 }), n(N, { label: "页签可重置", style: { "margin-top": "-10px" } }, { default: i(() => [n(I, { modelValue: e2.configure.props.resetable, "onUpdate:modelValue": B[7] || (B[7] = (l3) => e2.configure.props.resetable = l3), "inline-prompt": "", "active-icon": p(_), "inactive-icon": p(v), onChange: O }, null, 8, ["modelValue", "active-icon", "inactive-icon"])]), _: 1 }), e2.configure.props.resetable ? (t(), a(N, { key: 0, label: "", style: { "margin-top": "-10px" } }, { default: i(() => [n(P, { modelValue: e2.configure.props.resetButtonName, "onUpdate:modelValue": B[8] || (B[8] = (l3) => e2.configure.props.resetButtonName = l3), placeholder: "重置按钮名称" }, null, 8, ["modelValue"])]), _: 1 })) : c("", true), n(N, { label: "页签可关闭", style: { "margin-top": "-10px" } }, { default: i(() => [n(I, { modelValue: e2.configure.props.closable, "onUpdate:modelValue": B[9] || (B[9] = (l3) => e2.configure.props.closable = l3), "inline-prompt": "", "active-icon": p(_), "inactive-icon": p(v) }, null, 8, ["modelValue", "active-icon", "inactive-icon"])]), _: 1 })], 512)]), _: 1 }), n(y, { size: e2.configure.props.size, showCalcHeight: true }, null, 8, ["size"])]), _: 1 }, 8, ["modelValue"])]), _: 1 });
|
|
51
54
|
};
|
|
52
55
|
} });
|
|
53
56
|
export {
|
|
54
|
-
|
|
57
|
+
T as default
|
|
55
58
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import e from "./tabs-design.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import t from "../../../../../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const s = t(e, [["__scopeId", "data-v-
|
|
4
|
+
const s = t(e, [["__scopeId", "data-v-a504bfb3"]]);
|
|
5
5
|
export {
|
|
6
6
|
s as default
|
|
7
7
|
};
|
|
@@ -1,48 +1,52 @@
|
|
|
1
|
-
import { defineComponent as e, ref as t, watch as i,
|
|
2
|
-
import { ElTabs as
|
|
3
|
-
import { SuperIcon as
|
|
4
|
-
import { VueDraggable as
|
|
5
|
-
import
|
|
6
|
-
import { deepCopy as
|
|
7
|
-
import { caculateComponentStyle as
|
|
8
|
-
import { copyHandleEvents as
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
const
|
|
15
|
-
function
|
|
16
|
-
|
|
1
|
+
import { defineComponent as e, ref as t, watch as i, resolveComponent as n, createBlock as l, openBlock as o, unref as s, normalizeStyle as a, normalizeClass as u, withCtx as r, createElementBlock as c, createCommentVNode as m, Fragment as g, renderList as d, createVNode as p, createElementVNode as f, toDisplayString as b, withModifiers as y, createTextVNode as v, reactive as x } from "vue";
|
|
2
|
+
import { ElTabs as O, ElTabPane as V } from "element-plus";
|
|
3
|
+
import { SuperIcon as W } from "agilebuilder-ui";
|
|
4
|
+
import { VueDraggable as j } from "vue-draggable-plus";
|
|
5
|
+
import _ from "../../object-design.vue.js";
|
|
6
|
+
import { deepCopy as h, getUuidv4 as k } from "../../../../utils/common-util.js";
|
|
7
|
+
import { caculateComponentStyle as D } from "../../../../utils/container-design-util.js";
|
|
8
|
+
import { copyHandleEvents as T, deleteDesignItem as C } from "../../../../utils/page-design-util.js";
|
|
9
|
+
const S = e({ __name: "tabs-design", props: { pageDesign: {}, configure: {}, indexObj: {}, selectWidget: {} }, emits: ["onSelectWidget", "onCustomAttrWidget"], setup(e2, { emit: S2 }) {
|
|
10
|
+
const z = e2;
|
|
11
|
+
z.configure.items || (z.configure.items = [{ label: "Tab1", index: 1, items: [] }, { label: "Tab2", index: 2, items: [] }]);
|
|
12
|
+
const A = t("design-tab-pane-1");
|
|
13
|
+
z.configure.runtime || (z.configure.runtime = {});
|
|
14
|
+
const U = t({}), w = t(""), B = t({});
|
|
15
|
+
function F() {
|
|
16
|
+
D(z.configure, U, w, B), z.configure.runtime.style = U.value, z.configure.runtime.class = w.value, z.configure.runtime.headerStyle = B.value;
|
|
17
17
|
}
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
F(), i(z.configure.style, () => {
|
|
19
|
+
F();
|
|
20
20
|
});
|
|
21
|
-
const
|
|
22
|
-
function F(e3, t2) {
|
|
23
|
-
w("onSelectWidget", e3, t2);
|
|
24
|
-
}
|
|
21
|
+
const N = S2;
|
|
25
22
|
function P(e3, t2) {
|
|
26
|
-
|
|
23
|
+
N("onSelectWidget", e3, t2);
|
|
24
|
+
}
|
|
25
|
+
function q(e3, t2) {
|
|
26
|
+
N("onCustomAttrWidget", e3, t2);
|
|
27
27
|
}
|
|
28
|
-
function
|
|
29
|
-
let t2 =
|
|
28
|
+
function E(e3) {
|
|
29
|
+
let t2 = z.configure.items;
|
|
30
30
|
for (let i2 = 0; i2 < t2.length; i2++) {
|
|
31
31
|
let n2 = t2[i2];
|
|
32
32
|
if (n2.items) for (let t3 = 0; t3 < n2.items.length; t3++) {
|
|
33
33
|
const t4 = n2.items.indexOf(e3);
|
|
34
34
|
if (t4 > -1) {
|
|
35
|
-
const i3 =
|
|
36
|
-
return i3.uuid =
|
|
35
|
+
const i3 = x(h(e3));
|
|
36
|
+
return i3.uuid = k(), T(i3, z.pageDesign), void n2.items.splice(t4, 0, i3);
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
-
return (e3, t2) =>
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
|
|
41
|
+
return (e3, t2) => {
|
|
42
|
+
const i2 = n("el-button");
|
|
43
|
+
return o(), l(s(O), { modelValue: A.value, "onUpdate:modelValue": t2[1] || (t2[1] = (e4) => A.value = e4), type: e3.configure.props.cardType, editable: e3.configure.props.editable, closable: e3.configure.props.closable, "tab-position": e3.configure.props.tabPosition, class: u(["amb-design-item-default runtime-page-container-tabs-view", w.value]), style: a(U.value) }, { "add-icon": r(() => t2[2] || (t2[2] = [])), default: r(() => [(o(true), c(g, null, d(e3.configure.items, (t3, i3) => (o(), l(s(V), { key: i3, label: t3.label, name: "design-tab-pane-" + t3.index, lazy: !!e3.configure.props.lazy }, { label: r(() => [t3.iconType && t3.iconValue ? (o(), l(s(W), { key: 0, iconType: t3.iconType, iconValue: t3.iconValue, style: { "margin-right": "2px" } }, null, 8, ["iconType", "iconValue"])) : m("", true), f("span", { style: a(B.value) }, b(t3.label), 5)]), default: r(() => [p(s(j), { tag: "div", class: "amb-design-item-default", style: { "padding-bottom": "40px" }, group: "amb-assembly-item", "force-fallback": true, modelValue: t3.items, "onUpdate:modelValue": (e4) => t3.items = e4, sort: true, filter: ".el-scrollbar__bar", preventOnFilter: false, animation: 300, "ghost-class": "amb-item-ghost", fallbackClass: true }, { default: r(() => [(o(true), c(g, null, d(t3.items, (i4, n2) => (o(), l(_, { key: i4, pageDesign: e3.pageDesign, configure: i4, selectWidget: e3.selectWidget, indexObj: e3.indexObj, onOnSelectWidget: P, onOnCustomAttrWidget: q, onOnCopy: E, onOnDelete: (e4) => function(e5, t4) {
|
|
44
|
+
const i5 = e5.items;
|
|
45
|
+
C(i5, t4, t4.items && t4.items.length > 0, true);
|
|
46
|
+
}(t3, e4) }, null, 8, ["pageDesign", "configure", "selectWidget", "indexObj", "onOnDelete"]))), 128))]), _: 2 }, 1032, ["modelValue", "onUpdate:modelValue"])]), _: 2 }, 1032, ["label", "name", "lazy"]))), 128)), e3.configure.props.resetable ? (o(), l(s(V), { key: 0, disabled: "", name: "-1" }, { label: r(() => [p(i2, { type: "text", circle: "", onClick: t2[0] || (t2[0] = y(() => {
|
|
47
|
+
}, ["stop"])) }, { default: r(() => [v(b(e3.configure.props.resetButtonName || "重置"), 1)]), _: 1 })]), _: 1 })) : m("", true)]), _: 1 }, 8, ["modelValue", "type", "editable", "closable", "tab-position", "style", "class"]);
|
|
48
|
+
};
|
|
45
49
|
} });
|
|
46
50
|
export {
|
|
47
|
-
|
|
51
|
+
S as default
|
|
48
52
|
};
|
|
@@ -11,6 +11,7 @@ import T from "../component/variate-select.vue.js";
|
|
|
11
11
|
import "@element-plus/icons";
|
|
12
12
|
import "agilebuilder-ui/src/utils/request";
|
|
13
13
|
import { queryTableFields as S, tableResetConfigIndo as H } from "../../../../utils/page-table-util.js";
|
|
14
|
+
import "element-plus";
|
|
14
15
|
/* empty css */
|
|
15
16
|
import N from "../../common/common-i18n-key-input.vue.js";
|
|
16
17
|
import j from "../../form/common/hyperlink-mult-config.vue.js";
|