@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
100 lines (99 loc) • 2.58 kB
JavaScript
var g = Object.defineProperty;
var m = (o, e, t) => e in o ? g(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t;
var s = (o, e, t) => m(o, typeof e != "symbol" ? e + "" : e, t);
import { defineComponent as y, ref as l, createVNode as r, createTextVNode as d } from "vue";
const v = {
id: { type: String, default: "" },
type: { type: String, default: "" },
modelValue: { type: Object },
x: { type: Number, default: 0 },
y: { type: Number, default: 0 }
};
class C {
constructor() {
s(this, "propertyConfig", {
type: "object",
categories: {}
});
}
getPropertyConfig(e) {
return this.propertyConfig.categories.basic = this.getBasicPropConfig(e), this.propertyConfig;
}
getBasicPropConfig(e) {
return {
description: "Basic Information",
title: "基本信息",
properties: {
id: {
description: "组件标识",
title: "标识",
type: "string",
readonly: !0
},
type: {
description: "组件类型",
title: "控件类型",
type: "select",
editor: {
type: "combo-list",
textField: "name",
valueField: "value",
idField: "value",
editable: !1,
data: [{ value: e.type, name: "执行函数节点" }]
}
}
}
};
}
}
const n = /* @__PURE__ */ y({
name: "FFunctionCallNode",
props: v,
emits: ["connection-start", "node-select", "node-mouse-down"],
setup(o, e) {
l(o.id);
const t = l(o.modelValue), i = l(!1), c = (a) => {
a.stopPropagation(), i.value = !i.value, e.emit("node-select", {
nodeId: o.id,
selected: i.value
});
};
function p() {
e.emit("node-mouse-down");
}
function u() {
return r("div", {
class: "if-node-header"
}, [r("div", {
class: "if-node-icon"
}, [d("fx")]), r("div", {
class: "if-node-title"
}, [d("执行函数")])]);
}
function f() {
return new C().getPropertyConfig(t.value);
}
return e.expose({
getPropConfig: f
}), () => r("div", {
class: `if-node-content ${i.value ? "selected" : ""}`,
onMousedown: p,
onClick: c
}, [u()]);
}
});
n.install = (o) => {
o.component(n.name, n);
};
n.register = (o, e, t, i) => {
o["function-call-node"] = n;
};
n.registerDesigner = (o, e, t) => {
o["function-call-node"] = n;
};
export {
n as FFunctionCallNode,
n as default,
v as functionCallNodeProps
};