epic-designer-cjh
Version:
基于vue3的设计器,可视化开发页面表单
437 lines (436 loc) • 14.2 kB
JavaScript
import { i as Y } from "./interopRequireDefault-40f894e3.js";
import { r as J } from "./_vue_commonjs-external-eb7fec7f.js";
import { a as ae, r as Fe } from "./public_api-1267ff2a.js";
import { r as Oe } from "./index-bdab2b06.js";
import { d as ne } from "./useConfigInject-d85d8c62.js";
import { r as le } from "./index-f96a976e.js";
var T = {}, k = {}, V = {}, ve;
function we() {
if (ve)
return V;
ve = 1, Object.defineProperty(V, "__esModule", {
value: !0
}), V.useInjectOverflowContext = V.OverflowContextProvider = void 0;
var l = J;
const e = Symbol("OverflowContextProviderKey"), u = (0, l.defineComponent)({
compatConfig: {
MODE: 3
},
name: "OverflowContextProvider",
inheritAttrs: !1,
props: {
value: {
type: Object
}
},
setup(x, b) {
let {
slots: h
} = b;
return (0, l.provide)(e, (0, l.computed)(() => x.value)), () => {
var s;
return (s = h.default) === null || s === void 0 ? void 0 : s.call(h);
};
}
});
V.OverflowContextProvider = u;
const O = () => (0, l.inject)(e, (0, l.computed)(() => null));
return V.useInjectOverflowContext = O, V;
}
var B = {}, ce;
function _e() {
if (ce)
return B;
ce = 1;
var l = Y;
Object.defineProperty(B, "__esModule", {
value: !0
}), B.default = void 0;
var e = J, u = l(ae()), O = l(Oe()), x = l(ne()), b = l(le()), h = function(n, y) {
var d = {};
for (var a in n)
Object.prototype.hasOwnProperty.call(n, a) && y.indexOf(a) < 0 && (d[a] = n[a]);
if (n != null && typeof Object.getOwnPropertySymbols == "function")
for (var o = 0, a = Object.getOwnPropertySymbols(n); o < a.length; o++)
y.indexOf(a[o]) < 0 && Object.prototype.propertyIsEnumerable.call(n, a[o]) && (d[a[o]] = n[a[o]]);
return d;
};
const s = void 0;
var j = (0, e.defineComponent)({
compatConfig: {
MODE: 3
},
name: "Item",
props: {
prefixCls: String,
item: b.default.any,
renderItem: Function,
responsive: Boolean,
itemKey: {
type: [String, Number]
},
registerSize: Function,
display: Boolean,
order: Number,
component: b.default.any,
invalidate: Boolean
},
setup(n, y) {
let {
slots: d,
expose: a
} = y;
const o = (0, e.computed)(() => n.responsive && !n.display), C = (0, e.ref)();
a({
itemNodeRef: C
});
function w(R) {
n.registerSize(n.itemKey, R);
}
return (0, e.onUnmounted)(() => {
w(null);
}), () => {
var R;
const {
prefixCls: t,
invalidate: g,
item: p,
renderItem: f,
responsive: c,
registerSize: Q,
itemKey: L,
display: S,
order: F,
component: U = "div"
} = n, E = h(n, ["prefixCls", "invalidate", "item", "renderItem", "responsive", "registerSize", "itemKey", "display", "order", "component"]), q = (R = d.default) === null || R === void 0 ? void 0 : R.call(d), N = f && p !== s ? f(p) : q;
let M;
g || (M = {
opacity: o.value ? 0 : 1,
height: o.value ? 0 : s,
overflowY: o.value ? "hidden" : s,
order: c ? F : s,
pointerEvents: o.value ? "none" : s,
position: o.value ? "absolute" : s
});
const I = {};
return o.value && (I["aria-hidden"] = !0), (0, e.createVNode)(O.default, {
disabled: !c,
onResize: (X) => {
let {
offsetWidth: z
} = X;
w(z);
}
}, {
default: () => (0, e.createVNode)(U, (0, u.default)((0, u.default)((0, u.default)({
class: (0, x.default)(!g && t),
style: M
}, I), E), {}, {
ref: C
}), {
default: () => [N]
})
});
};
}
});
return B.default = j, B;
}
var G = {}, me;
function Me() {
if (me)
return G;
me = 1;
var l = Y;
Object.defineProperty(G, "__esModule", {
value: !0
}), G.default = void 0;
var e = J, u = l(ae()), O = l(ne()), x = l(le()), b = we(), h = l(_e()), s = function(n, y) {
var d = {};
for (var a in n)
Object.prototype.hasOwnProperty.call(n, a) && y.indexOf(a) < 0 && (d[a] = n[a]);
if (n != null && typeof Object.getOwnPropertySymbols == "function")
for (var o = 0, a = Object.getOwnPropertySymbols(n); o < a.length; o++)
y.indexOf(a[o]) < 0 && Object.prototype.propertyIsEnumerable.call(n, a[o]) && (d[a[o]] = n[a[o]]);
return d;
}, j = (0, e.defineComponent)({
compatConfig: {
MODE: 3
},
name: "RawItem",
inheritAttrs: !1,
props: {
component: x.default.any,
title: x.default.any,
id: String,
onMouseenter: {
type: Function
},
onMouseleave: {
type: Function
},
onClick: {
type: Function
},
onKeydown: {
type: Function
},
onFocus: {
type: Function
},
role: String,
tabindex: Number
},
setup(n, y) {
let {
slots: d,
attrs: a
} = y;
const o = (0, b.useInjectOverflowContext)();
return () => {
var C;
if (!o.value) {
const {
component: f = "div"
} = n, c = s(n, ["component"]);
return (0, e.createVNode)(f, (0, u.default)((0, u.default)({}, c), a), {
default: () => [(C = d.default) === null || C === void 0 ? void 0 : C.call(d)]
});
}
const w = o.value, {
className: R
} = w, t = s(w, ["className"]), {
class: g
} = a, p = s(a, ["class"]);
return (0, e.createVNode)(b.OverflowContextProvider, {
value: null
}, {
default: () => [(0, e.createVNode)(h.default, (0, u.default)((0, u.default)((0, u.default)({
class: (0, O.default)(R, g)
}, t), p), n), d)]
});
};
}
});
return G.default = j, G;
}
var ye;
function ze() {
if (ye)
return k;
ye = 1;
var l = Y;
Object.defineProperty(k, "__esModule", {
value: !0
}), k.default = void 0;
var e = J, u = l(ae()), O = l(Fe()), x = l(Oe()), b = l(ne()), h = l(le()), s = we(), j = l(_e()), n = l(Me()), y = function(t, g) {
var p = {};
for (var f in t)
Object.prototype.hasOwnProperty.call(t, f) && g.indexOf(f) < 0 && (p[f] = t[f]);
if (t != null && typeof Object.getOwnPropertySymbols == "function")
for (var c = 0, f = Object.getOwnPropertySymbols(t); c < f.length; c++)
g.indexOf(f[c]) < 0 && Object.prototype.propertyIsEnumerable.call(t, f[c]) && (p[f[c]] = t[f[c]]);
return p;
};
const d = "responsive", a = "invalidate";
function o(t) {
return `+ ${t.length} ...`;
}
const C = () => ({
id: String,
prefixCls: String,
data: Array,
itemKey: [String, Number, Function],
/** Used for `responsive`. It will limit render node to avoid perf issue */
itemWidth: {
type: Number,
default: 10
},
renderItem: Function,
/** @private Do not use in your production. Render raw node that need wrap Item by developer self */
renderRawItem: Function,
maxCount: [Number, String],
renderRest: Function,
/** @private Do not use in your production. Render raw node that need wrap Item by developer self */
renderRawRest: Function,
suffix: h.default.any,
component: String,
itemComponent: h.default.any,
/** @private This API may be refactor since not well design */
onVisibleChange: Function,
/** When set to `full`, ssr will render full items by default and remove at client side */
ssr: String,
onMousedown: Function
}), w = (0, e.defineComponent)({
name: "Overflow",
inheritAttrs: !1,
props: C(),
emits: ["visibleChange"],
setup(t, g) {
let {
attrs: p,
emit: f,
slots: c
} = g;
const Q = (0, e.computed)(() => t.ssr === "full"), L = (0, e.shallowRef)(null), S = (0, e.computed)(() => L.value || 0), F = (0, e.shallowRef)(/* @__PURE__ */ new Map()), U = (0, e.shallowRef)(0), E = (0, e.shallowRef)(0), q = (0, e.shallowRef)(0), N = (0, e.shallowRef)(null), M = (0, e.shallowRef)(null), I = (0, e.computed)(() => M.value === null && Q.value ? Number.MAX_SAFE_INTEGER : M.value || 0), X = (0, e.shallowRef)(!1), z = (0, e.computed)(() => `${t.prefixCls}-item`), oe = (0, e.computed)(() => Math.max(U.value, E.value)), K = (0, e.computed)(() => !!(t.data.length && t.maxCount === d)), ue = (0, e.computed)(() => t.maxCount === a), be = (0, e.computed)(() => K.value || typeof t.maxCount == "number" && t.data.length > t.maxCount), D = (0, e.computed)(() => {
let r = t.data;
return K.value ? L.value === null && Q.value ? r = t.data : r = t.data.slice(0, Math.min(t.data.length, S.value / t.itemWidth)) : typeof t.maxCount == "number" && (r = t.data.slice(0, t.maxCount)), r;
}), Z = (0, e.computed)(() => K.value ? t.data.slice(I.value + 1) : t.data.slice(D.value.length)), ee = (r, i) => {
var v;
return typeof t.itemKey == "function" ? t.itemKey(r) : (v = t.itemKey && (r == null ? void 0 : r[t.itemKey])) !== null && v !== void 0 ? v : i;
}, he = (0, e.computed)(() => t.renderItem || ((r) => r)), H = (r, i) => {
M.value = r, i || (X.value = r < t.data.length - 1, f("visibleChange", r));
}, Re = (r, i) => {
L.value = i.clientWidth;
}, ie = (r, i) => {
const v = new Map(F.value);
i === null ? v.delete(r) : v.set(r, i), F.value = v;
}, ge = (r, i) => {
U.value = E.value, E.value = i;
}, xe = (r, i) => {
q.value = i;
}, te = (r) => F.value.get(ee(D.value[r], r));
return (0, e.watch)([S, F, E, q, () => t.itemKey, D], () => {
if (S.value && oe.value && D.value) {
let r = q.value;
const i = D.value.length, v = i - 1;
if (!i) {
H(0), N.value = null;
return;
}
for (let _ = 0; _ < i; _ += 1) {
const W = te(_);
if (W === void 0) {
H(_ - 1, !0);
break;
}
if (r += W, // Only one means `totalWidth` is the final width
v === 0 && r <= S.value || // Last two width will be the final width
_ === v - 1 && r + te(v) <= S.value) {
H(v), N.value = null;
break;
} else if (r + oe.value > S.value) {
H(_ - 1), N.value = r - W - q.value + E.value;
break;
}
}
t.suffix && te(0) + q.value > S.value && (N.value = null);
}
}), () => {
const r = X.value && !!Z.value.length, {
itemComponent: i,
renderRawItem: v,
renderRawRest: _,
renderRest: W,
prefixCls: Ce = "rc-overflow",
suffix: se,
component: Se = "div",
id: Ne,
onMousedown: Ie
} = t, {
class: Pe,
style: je
} = p, Ee = y(p, ["class", "style"]);
let de = {};
N.value !== null && K.value && (de = {
position: "absolute",
left: `${N.value}px`,
top: 0
});
const A = {
prefixCls: z.value,
responsive: K.value,
component: i,
invalidate: ue.value
}, qe = v ? (m, P) => {
const $ = ee(m, P);
return (0, e.createVNode)(s.OverflowContextProvider, {
key: $,
value: (0, O.default)((0, O.default)({}, A), {
order: P,
item: m,
itemKey: $,
registerSize: ie,
display: P <= I.value
})
}, {
default: () => [v(m, P)]
});
} : (m, P) => {
const $ = ee(m, P);
return (0, e.createVNode)(j.default, (0, u.default)((0, u.default)({}, A), {}, {
order: P,
key: $,
item: m,
renderItem: he.value,
itemKey: $,
registerSize: ie,
display: P <= I.value
}), null);
};
let re = () => null;
const fe = {
order: r ? I.value : Number.MAX_SAFE_INTEGER,
className: `${z.value} ${z.value}-rest`,
registerSize: ge,
display: r
};
if (_)
_ && (re = () => (0, e.createVNode)(s.OverflowContextProvider, {
value: (0, O.default)((0, O.default)({}, A), fe)
}, {
default: () => [_(Z.value)]
}));
else {
const m = W || o;
re = () => (0, e.createVNode)(j.default, (0, u.default)((0, u.default)({}, A), fe), {
default: () => typeof m == "function" ? m(Z.value) : m
});
}
const Ve = () => {
var m;
return (0, e.createVNode)(Se, (0, u.default)({
id: Ne,
class: (0, b.default)(!ue.value && Ce, Pe),
style: je,
onMousedown: Ie
}, Ee), {
default: () => [D.value.map(qe), be.value ? re() : null, se && (0, e.createVNode)(j.default, (0, u.default)((0, u.default)({}, A), {}, {
order: I.value,
class: `${z.value}-suffix`,
registerSize: xe,
display: !0,
style: de
}), {
default: () => se
}), (m = c.default) === null || m === void 0 ? void 0 : m.call(c)]
});
};
return (0, e.createVNode)(x.default, {
disabled: !K.value,
onResize: Re
}, {
default: Ve
});
};
}
});
w.Item = n.default, w.RESPONSIVE = d, w.INVALIDATE = a;
var R = w;
return k.default = R, k;
}
var pe;
function ke() {
if (pe)
return T;
pe = 1;
var l = Y;
Object.defineProperty(T, "__esModule", {
value: !0
}), T.default = void 0;
var e = l(ze()), u = e.default;
return T.default = u, T;
}
export {
ke as r
};