snowy-designer
Version:
基于Epic-Designer-Pro版本的设计器,可视化开发页面表单
99 lines (98 loc) • 2.62 kB
JavaScript
import { defineComponent as h, ref as U, watch as u, computed as E, h as l } from "vue";
/* empty css */
import "radix-vue";
import "clsx";
import "tailwind-merge";
import "lucide-vue-next";
import "../../../ui-kit/base-ui/src/shadch-ui/button/index.js";
import "@vueuse/core";
import "../../../ui-kit/base-ui/src/shadch-ui/toast/index.js";
import "vuedraggable";
import { getFileNameByUrl as S, getUUID as x } from "../../../utils/src/common/string.js";
import "../../../hooks/src/store/index.js";
import "lodash";
import "../../../utils/src/manager/pluginManager.js";
import "monaco-editor";
import "../../../utils/src/request/index.js";
import { ElUpload as y, ElButton as B, ElMessage as F } from "element-plus";
const G = h({
emits: ["update:modelValue", "change"],
props: {
modelValue: {
default: "",
type: String
}
},
setup(n, { attrs: s, emit: a }) {
const t = U([]);
let r = "";
u(
() => t.value,
(e) => {
console.log("list", e), r = e.filter((o) => o.status === "success").map((o) => o.url).join(","), a("update:modelValue", r), a("change", r);
}
), u(
() => n.modelValue,
(e) => {
if (r !== e) {
if (e === "") {
t.value = [];
return;
}
e !== null && t.value !== null && (t.value = e.split(",").map((o) => ({
id: x(),
name: S(o),
status: "success",
url: o
})));
}
},
{ immediate: !0 }
);
const m = (e, o) => {
t.value = o;
}, c = () => {
}, d = (e, o, v) => {
t.value = v.map((p) => {
var i;
return {
...p,
url: (i = p.response.data) == null ? void 0 : i.url
};
});
}, f = (e) => {
F.error("上传失败"), console.error(e);
}, g = E(() => ({
...s,
onBeforeUpload: c,
onError: f,
onRemove: m,
onSuccess: d,
"file-list": t.value
}));
return () => l("div", null, {
default: () => [
l(y, g.value, {
default: () => [
l(
B,
{},
{
default: () => [
l("span", {
class: "icon--epic icon--epic--cloud-upload-outlined text-lg",
style: { "margin-right": "2px" }
}),
l("span", null, { default: () => "上传文件" })
]
}
)
]
})
]
});
}
});
export {
G as default
};