@javaguns/flow-ui
Version:
``` <template> <a-spin :spinning="loading"> <FlowDesigner ref="flowDesigner" top="50px"> </FlowDesigner> </a-spin> </template> <script lang="ts" setup> import { ref, provide, onMounted } from 'vue'; import { FlowDesigner, LoadingKey } from '@j
67 lines (66 loc) • 2.41 kB
JavaScript
import { defineComponent as m, ref as h, computed as l, openBlock as i, createElementBlock as g, normalizeStyle as n, createElementVNode as a, renderSlot as y, createBlock as v, unref as p, isRef as w, createCommentVNode as z } from "vue";
import "./style/index.css";
import "../flow-widget/flow-node-addbutton/index.mjs";
import "../flow-widget/flow-node-delbutton/index.mjs";
import "../flow-widget/flow-node-delconfirm/index.mjs";
import "../flow-widget/flow-node-errorwarn/index.mjs";
import "../flow-widget/flow-node-dragtool/index.mjs";
import { GunsFlowZoom as B } from "../flow-widget/flow-node-zoom/index.mjs";
import "../flow-widget/flow-task-status/index.mjs";
import "../flow-widget/flow-task-image/index.mjs";
import "../flow-widget/flow-task-timeline/index.mjs";
import "../flow-widget/flow-task-user/index.mjs";
const V = { class: "guns-flow-design-panel-context" }, _ = m({ name: "flow-design-panel" }), O = /* @__PURE__ */ m({
..._,
props: {
paddingTop: {},
scroll: { type: Boolean, default: !0 },
top: { default: "" },
zoomTop: { default: 70 },
showZoom: { type: Boolean, default: !0 },
height: {},
drag: { type: Boolean, default: !1 }
},
setup(u) {
const o = u;
let t = h(100);
const d = l(() => ({ height: o.height ? o.height : "100vh" })), c = l(() => {
const e = { height: "100vh" };
return o.scroll && (e.overflow = "auto"), o.height && (e.height = o.height), o.top && (e.height = "calc(100vh - " + o.top + ")"), e;
}), f = l(() => {
const e = t.value / 100;
return {
zoom: t.value < 100 ? e : 0,
transform: t.value >= 100 ? `scale(${e},${e})` : 0,
transformOrigin: "0 0",
paddingBottom: "30px"
};
});
return (e, r) => (i(), g("main", {
class: "guns-flow-design-panel",
style: n(d.value)
}, [
a("div", V, [
a("div", {
class: "guns-flow-design-panel-container",
style: n(c.value)
}, [
a("div", {
style: n(f.value)
}, [
y(e.$slots, "default")
], 4)
], 4)
]),
e.showZoom ? (i(), v(p(B), {
key: 0,
modelValue: p(t),
"onUpdate:modelValue": r[0] || (r[0] = (s) => w(t) ? t.value = s : t = s),
top: o.zoomTop
}, null, 8, ["modelValue", "top"])) : z("", !0)
], 4));
}
});
export {
O as default
};