@molian-z/flow-designer
Version:
[文档中心](https://www.yuque.com/u12572940/wujiemofang) ### 商用请保留版权信息 [演示网址](http://demo.mlyt.top/) ``` 这是一个支持VUE3主流UI组件库的可视化框架 问题交流请加QQ群:685018059 ```
2,053 lines • 525 kB
JavaScript
import { getCurrentInstance as ya, onMounted as oo, nextTick as wn, watch as ue, unref as y, getCurrentScope as kg, onScopeDispose as Sg, ref as P, readonly as Tc, isRef as Ue, toRefs as Og, customRef as Ag, shallowRef as ws, reactive as Re, computed as N, watchEffect as Tg, markRaw as xs, onBeforeMount as Vg, onBeforeUpdate as Eg, onUpdated as Pg, onBeforeUnmount as Ig, onUnmounted as Vc, onErrorCaptured as jg, onActivated as Dg, onDeactivated as Rg, defineComponent as q, inject as K, h as Cs, openBlock as k, createElementBlock as j, createElementVNode as w, normalizeStyle as pe, normalizeClass as W, Fragment as te, renderList as ie, createVNode as C, toDisplayString as H, createCommentVNode as G, createBlock as M, Transition as Fr, withCtx as V, renderSlot as zt, pushScopeId as Me, popScopeId as Be, provide as Mg, resolveComponent as ge, withDirectives as Kr, vShow as Hr, createTextVNode as ae, resolveDynamicComponent as $i, mergeProps as zn, Teleport as Bg, withModifiers as ke, useCssVars as Ec, createSlots as Pc, TransitionGroup as Ng, toHandlers as jl } from "vue";
import Dl from "ace-builds";
if (typeof window < "u") {
let e = function() {
var t = document.body, n = document.getElementById("__svg__icons__dom__");
n || (n = document.createElementNS("http://www.w3.org/2000/svg", "svg"), n.style.position = "absolute", n.style.width = "0", n.style.height = "0", n.id = "__svg__icons__dom__", n.setAttribute("xmlns", "http://www.w3.org/2000/svg"), n.setAttribute("xmlns:link", "http://www.w3.org/1999/xlink")), n.innerHTML = "", t.insertBefore(n, t.lastChild);
};
document.readyState === "loading" ? document.addEventListener("DOMContentLoaded", e) : e();
}
const Ic = "元素标签", jc = {
flex: "布局填充",
lg: "大尺寸",
md: "中尺寸",
sm: "小尺寸",
xs: "超小尺寸",
xl: "超大尺寸",
xxl: "超超大尺寸",
offset: "左侧间隔格数",
order: "栅格顺序",
pull: "向左移动格数",
push: "向右移动格数",
span: "栅格占位格数"
}, Dc = {
align: "纵向对齐方式",
gutter: "栅格间隔",
justify: "水平排列方式",
type: "类型",
start: "排列起始位置",
end: "排列结束位置",
center: "排列居中",
"space-around": "间隔排列",
"space-between": "两侧排列",
"space-evenly": "平均排列",
top: "排列顶部",
bottom: "排列底部",
left: "排列左侧",
right: "排列右侧",
stretch: "伸展",
baseline: "基线"
}, Lg = {
tag: Ic,
TCol: jc,
TRow: Dc
}, Ug = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
TCol: jc,
TRow: Dc,
default: Lg,
tag: Ic
}, Symbol.toStringTag, { value: "Module" })), Rc = {
basic: "基础",
layout: "布局",
menu: "导航",
form: "表单",
data: "数据",
content: "内容",
modal: "弹框",
more: "更多",
other: "其他"
}, Mc = "行", Bc = "列", Nc = "按钮", Lc = "固钉", Uc = "图标", Fc = "连接", Kc = "分割线", Hc = "栅格", zc = "布局", Wc = "间距", qc = "锚点", Gc = "返回顶部", Yc = "面包屑", Xc = "下拉菜单", Jc = "导航菜单", Zc = "分页", Qc = "步骤条", ed = "侧边栏", td = "选项卡", nd = "自动填充", rd = "级联选择器", od = "多选框", ad = "颜色选择器", id = "日期选择器", sd = "表单", ld = "输入框", ud = "输入装饰器", cd = "数字输入框", dd = "标签输入框", fd = "单选框", pd = "范围输入框", vd = "选择器", hd = "筛选器输入框", md = "滑块", gd = "开关", yd = "多行文本框", bd = "穿梭框", _d = "时间选择器", wd = "树选择", xd = "上传", Cd = "头像 ", $d = "徽标", kd = "日历", Sd = "卡片", Od = "折叠面板", Ad = "评论", Td = "图片", Vd = "图片预览", Ed = "加载中", Pd = "进度条", Id = "骨架屏", jd = "统计数值", Dd = "轮播框", Rd = "表格", Md = "标签", Bd = "时间轴", Nd = "文字提示", Ld = "树", Ud = "水印", Fd = "评分", Kd = "警告", Hd = "对话框", zd = "抽屉", Wd = "引导", qd = "全局提示", Gd = "消息通知", Yd = "气泡确认框", Xd = "弹出层", Jd = "布局(头部)", Zd = "布局(底部)", Qd = "布局(侧边)", ef = "布局(内容)", tf = "颜色选择面板", nf = "折叠面板(item)", rf = "锚点(item)", of = "交互锚点", af = "面包屑(item)", sf = "下拉菜单(item)", lf = "下拉菜单(menu)", uf = "导航菜单(head)", cf = "导航菜单(item)", df = "导航菜单(group)", ff = "分页(mini)", pf = "级联面板", vf = "多选框(group)", hf = "日期面板", mf = "日期范围选择器", gf = "日期范围(面板)", yf = "表单(item)", bf = "组合输入框", _f = "分组单选框", wf = "单选按钮", xf = "滑块按钮", Cf = "时间范围选择器", $f = "时间面板", kf = "范围输入框(提示)", Sf = "组合头像", Of = "基础表格", Af = "主表格", Tf = "增强型表格", Vf = "可选择标签", Ef = "可选择标签组", Pf = "时间轴(item)", If = "日期面板", jf = "穿梭面板", Df = "穿梭面板(item)", Rf = "树选择面板", Mf = "上传面板", Bf = "上传列表", Nf = "上传列表(item)", Lf = "日期范围面板", Uf = "时间范围面板", Ff = "选择面板", Kf = "选择面板(item)", Hf = "选择面板(group)", zf = "选择面板(option)", Wf = "选择面板(option group)", qf = "选择面板(option item)", Fg = {
category: Rc,
Row: Mc,
Col: Bc,
Button: Nc,
Affix: Lc,
Icon: Uc,
Link: Fc,
Divider: Kc,
Grid: Hc,
Layout: zc,
Space: Wc,
Anchor: qc,
BackTop: Gc,
Breadcrumb: Yc,
Dropdown: Xc,
Menu: Jc,
Pagination: Zc,
Steps: Qc,
StickyTool: ed,
Tabs: td,
AutoComplete: nd,
Cascader: rd,
Checkbox: od,
ColorPicker: ad,
DatePicker: id,
Form: sd,
Input: ld,
InputAdornment: ud,
InputNumber: cd,
TagInput: dd,
Radio: fd,
RangeInput: pd,
Select: vd,
SelectInput: hd,
Slider: md,
Switch: gd,
Textarea: yd,
Transfer: bd,
TimePicker: _d,
TreeSelect: wd,
Upload: xd,
Avatar: Cd,
Badge: $d,
Calendar: kd,
Card: Sd,
Collapse: Od,
Comment: Ad,
Image: Td,
ImageViewer: Vd,
"List ": "列表",
Loading: Ed,
Progress: Pd,
Skeleton: Id,
Statistic: jd,
Swiper: Dd,
Table: Rd,
Tag: Md,
Timeline: Bd,
Tooltip: Nd,
Tree: Ld,
Watermark: Ud,
Rate: Fd,
Alert: Kd,
Dialog: Hd,
Drawer: zd,
Guide: Wd,
Message: qd,
Notification: Gd,
Popconfirm: Yd,
Popup: Xd,
Header: Jd,
Footer: Zd,
Aside: Qd,
Content: ef,
ColorPickerPanel: tf,
CollapsePanel: nf,
AnchorItem: rf,
AnchorTarget: of,
BreadcrumbItem: af,
DropdownItem: sf,
DropdownMenu: lf,
HeadMenu: uf,
MenuItem: cf,
MenuGroup: df,
PaginationMini: ff,
CascaderPanel: pf,
CheckboxGroup: vf,
DatePickPanel: hf,
DateRangePicker: mf,
DateRangePickePanel: gf,
FormItem: yf,
InputGroup: bf,
RadioGroup: _f,
RadioButton: wf,
SliderButton: xf,
TimeRangePicker: Cf,
TimePickerPanel: $f,
RangeInputPopup: kf,
AvatarGroup: Sf,
BaseTable: Of,
PrimaryTable: Af,
EnhancedTable: Tf,
CheckTag: Vf,
CheckTagGroup: Ef,
TimelineItem: Pf,
DatePickerPanel: If,
TransferPanel: jf,
TransferItem: Df,
TreeSelectPanel: Rf,
UploadPanel: Mf,
UploadList: Bf,
UploadItem: Nf,
DateRangePickerPanel: Lf,
TimeRangePickerPanel: Uf,
SelectPanel: Ff,
SelectItem: Kf,
SelectGroup: Hf,
SelectOption: zf,
SelectOptionGroup: Wf,
SelectOptionItem: qf
}, Kg = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
Affix: Lc,
Alert: Kd,
Anchor: qc,
AnchorItem: rf,
AnchorTarget: of,
Aside: Qd,
AutoComplete: nd,
Avatar: Cd,
AvatarGroup: Sf,
BackTop: Gc,
Badge: $d,
BaseTable: Of,
Breadcrumb: Yc,
BreadcrumbItem: af,
Button: Nc,
Calendar: kd,
Card: Sd,
Cascader: rd,
CascaderPanel: pf,
CheckTag: Vf,
CheckTagGroup: Ef,
Checkbox: od,
CheckboxGroup: vf,
Col: Bc,
Collapse: Od,
CollapsePanel: nf,
ColorPicker: ad,
ColorPickerPanel: tf,
Comment: Ad,
Content: ef,
DatePickPanel: hf,
DatePicker: id,
DatePickerPanel: If,
DateRangePickePanel: gf,
DateRangePicker: mf,
DateRangePickerPanel: Lf,
Dialog: Hd,
Divider: Kc,
Drawer: zd,
Dropdown: Xc,
DropdownItem: sf,
DropdownMenu: lf,
EnhancedTable: Tf,
Footer: Zd,
Form: sd,
FormItem: yf,
Grid: Hc,
Guide: Wd,
HeadMenu: uf,
Header: Jd,
Icon: Uc,
Image: Td,
ImageViewer: Vd,
Input: ld,
InputAdornment: ud,
InputGroup: bf,
InputNumber: cd,
Layout: zc,
Link: Fc,
Loading: Ed,
Menu: Jc,
MenuGroup: df,
MenuItem: cf,
Message: qd,
Notification: Gd,
Pagination: Zc,
PaginationMini: ff,
Popconfirm: Yd,
Popup: Xd,
PrimaryTable: Af,
Progress: Pd,
Radio: fd,
RadioButton: wf,
RadioGroup: _f,
RangeInput: pd,
RangeInputPopup: kf,
Rate: Fd,
Row: Mc,
Select: vd,
SelectGroup: Hf,
SelectInput: hd,
SelectItem: Kf,
SelectOption: zf,
SelectOptionGroup: Wf,
SelectOptionItem: qf,
SelectPanel: Ff,
Skeleton: Id,
Slider: md,
SliderButton: xf,
Space: Wc,
Statistic: jd,
Steps: Qc,
StickyTool: ed,
Swiper: Dd,
Switch: gd,
Table: Rd,
Tabs: td,
Tag: Md,
TagInput: dd,
Textarea: yd,
TimePicker: _d,
TimePickerPanel: $f,
TimeRangePicker: Cf,
TimeRangePickerPanel: Uf,
Timeline: Bd,
TimelineItem: Pf,
Tooltip: Nd,
Transfer: bd,
TransferItem: Df,
TransferPanel: jf,
Tree: Ld,
TreeSelect: wd,
TreeSelectPanel: Rf,
Upload: xd,
UploadItem: Nf,
UploadList: Bf,
UploadPanel: Mf,
Watermark: Ud,
category: Rc,
default: Fg
}, Symbol.toStringTag, { value: "Module" })), Gf = "请放置组件至", Yf = "插槽", Xf = "组件", Jf = "放置内容", Zf = "移动组件", Qf = "删除组件", ep = "结构目录", tp = "组件将放置于", np = "插入组件", rp = "插入插槽", op = "放置", ap = "AI交互", Hg = {
dropSlot: Gf,
slot: Yf,
component: Xf,
dropContent: Jf,
moveComp: Zf,
deleteComp: Qf,
treeDir: ep,
dropComp: tp,
appendComp: np,
appendSlot: rp,
drop: op,
aiIm: ap
}, zg = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
aiIm: ap,
appendComp: np,
appendSlot: rp,
component: Xf,
default: Hg,
deleteComp: Qf,
drop: op,
dropComp: tp,
dropContent: Jf,
dropSlot: Gf,
moveComp: Zf,
slot: Yf,
treeDir: ep
}, Symbol.toStringTag, { value: "Module" })), ip = "边距", sp = "外边距", lp = "内边距", up = {
left: "左侧约束",
right: "右侧约束",
center: "居中约束",
left2right: "两侧约束"
}, cp = {
top: "顶部约束",
center: "居中约束",
bottom: "底部约束",
top2bottom: "两端约束"
}, dp = "变换", fp = "填充", pp = "效果", vp = "文本", hp = "字体", mp = "字重", gp = "大小", yp = "行高", bp = "字间距", _p = "字段间距", wp = "删除线", xp = "下划线", Cp = "倾斜", $p = "溢出省略", kp = "文本色", Sp = {
left: "左对齐",
center: "水平居中对齐",
right: "右对齐"
}, Op = {
top: "头部对齐",
middle: "垂直居中对齐",
bottom: "底部对齐"
}, Ap = {
vbetween: "垂直两侧对齐",
hbetween: "水平两侧对齐"
}, Tp = "描边", Vp = "样式调整", Ep = "图层", Pp = "x偏移", Ip = "y偏移", jp = "模糊", Dp = "扩展", Rp = {
solid: "实线",
dashed: "虚线",
dotted: "点线",
double: "双线",
groove: "3D凹槽",
ridge: "菱形框",
inset: "内边框",
outset: "外边框",
none: "无",
hidden: "隐藏"
}, Mp = {
colorMixMode: "颜色混合",
normal: "默认",
multiply: "正片叠底",
screen: "滤色",
overlay: "叠加",
darken: "变暗",
lighten: "变亮",
"color-dodge": "颜色减淡",
"color-burn": "颜色加深",
"hard-light": "强光",
"soft-light": "柔光",
difference: "差值",
exclusion: "排除",
hue: "色相",
saturation: "饱和度",
color: "颜色",
luminosity: "明度",
modeInfo: {
normal: "-",
darken: "暗",
lighten: "亮",
overlay: "混合",
difference: "差异",
color: "色泽"
},
shadow: "阴影",
blur: "模糊",
backdropFilter: "背景模糊",
filter: "模糊",
null: "无",
outset: "外阴影",
inset: "内阴影"
}, Wg = {
margins: ip,
margin: sp,
padding: lp,
const: "约束",
left: up,
top: cp,
transform: dp,
fill: fp,
effect: pp,
text: vp,
font: hp,
fontWeight: mp,
fontSize: gp,
lineHeight: yp,
letterSpacing: bp,
paragraphSpacing: _p,
lineThrough: wp,
underline: xp,
italic: Cp,
ellipsis: $p,
textColor: kp,
textAlign: Sp,
verticalAlign: Op,
space: Ap,
stroke: Tp,
styleEdit: Vp,
layer: Ep,
hX: Pp,
vY: Ip,
blur: jp,
spread: Dp,
borderObj: Rp,
effectObj: Mp
}, qg = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
blur: jp,
borderObj: Rp,
default: Wg,
effect: pp,
effectObj: Mp,
ellipsis: $p,
fill: fp,
font: hp,
fontSize: gp,
fontWeight: mp,
hX: Pp,
italic: Cp,
layer: Ep,
left: up,
letterSpacing: bp,
lineHeight: yp,
lineThrough: wp,
margin: sp,
margins: ip,
padding: lp,
paragraphSpacing: _p,
space: Ap,
spread: Dp,
stroke: Tp,
styleEdit: Vp,
text: vp,
textAlign: Sp,
textColor: kp,
top: cp,
transform: dp,
underline: xp,
vY: Ip,
verticalAlign: Op
}, Symbol.toStringTag, { value: "Module" })), Bp = "生成css", Np = "生成js", Lp = "生成vue", Up = "生成选项式Vue", Fp = "生成组合式Vue", Kp = "生成", Hp = "树目录", zp = "载入库", Wp = "发送到频道", qp = "请监听频道广播", Gg = {
createCss: Bp,
createJs: Np,
createVue: Lp,
createOptionsVue: Up,
createCompositionVue: Fp,
create: Kp,
treeDir: Hp,
loadLib: zp,
sendToChannel: Wp,
onChannel: qp
}, Yg = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
create: Kp,
createCompositionVue: Fp,
createCss: Bp,
createJs: Np,
createOptionsVue: Up,
createVue: Lp,
default: Gg,
loadLib: zp,
onChannel: qp,
sendToChannel: Wp,
treeDir: Hp
}, Symbol.toStringTag, { value: "Module" })), Gp = "样式调整", Yp = "组件控制", Xp = "交互操作", Jp = "全局配置", Xg = {
style: Gp,
component: Yp,
action: Xp,
global: Jp
}, Jg = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
action: Xp,
component: Yp,
default: Xg,
global: Jp,
style: Gp
}, Symbol.toStringTag, { value: "Module" })), Zp = "追加", Qp = "修改", ev = "编辑", tv = "复制", nv = "粘贴", rv = "重置", ov = "保存", av = "取消", iv = "确定", sv = "关闭", lv = "打开", uv = "搜索", cv = "添加", dv = "删除", fv = "基础", pv = "插槽", vv = "事件", hv = "函数", mv = "数组", gv = "对象", yv = "代码", bv = "数据", _v = "生命周期", wv = "原生事件", xv = "异步函数", Cv = "新增事件", $v = "+ 新标签", kv = "+ 新变量", Sv = "+ 新指令", Ov = "+ 新修饰符", Av = "显示", Tv = "变量", Vv = "操作", Ev = "新增", Pv = "字符串", Iv = "数字", jv = "布尔", Dv = "计算函数", Rv = "数据", Mv = "数据类型", Bv = "标签", Nv = "验证错误", Lv = "验证成功", Uv = "不是JSON格式数据", Fv = "Key", Kv = "值", Hv = "键", zv = "索引", Zg = {
append: Zp,
modify: Qp,
edit: ev,
copy: tv,
paste: nv,
reset: rv,
save: ov,
cancel: av,
confirm: iv,
close: sv,
open: lv,
search: uv,
add: cv,
remove: dv,
basic: fv,
slot: pv,
js: vv,
funciton: hv,
array: mv,
object: gv,
javascript: yv,
json: bv,
lifecycle: _v,
nativeOn: wv,
asyncFunction: xv,
function: "函数",
appendOn: Cv,
addNewTag: $v,
addNewVar: kv,
addNewDirective: Sv,
addNewModifier: Ov,
for: "循环",
if: "判断",
show: Av,
variable: Tv,
continue: "继续",
operate: Vv,
addNew: Ev,
string: Pv,
number: Iv,
boolean: jv,
computed: Dv,
null: "空",
undefined: "未定义",
true: "真",
false: "假",
modelValue: Rv,
dataType: Mv,
label: Bv,
validateError: Nv,
validateSuccess: Lv,
isNotJSONFormatData: Uv,
idKey: Fv,
dataKey: Kv,
objectKey: Hv,
indexKey: zv
}, Qg = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
add: cv,
addNew: Ev,
addNewDirective: Sv,
addNewModifier: Ov,
addNewTag: $v,
addNewVar: kv,
append: Zp,
appendOn: Cv,
array: mv,
asyncFunction: xv,
basic: fv,
boolean: jv,
cancel: av,
close: sv,
computed: Dv,
confirm: iv,
copy: tv,
dataKey: Kv,
dataType: Mv,
default: Zg,
edit: ev,
funciton: hv,
idKey: Fv,
indexKey: zv,
isNotJSONFormatData: Uv,
javascript: yv,
js: vv,
json: bv,
label: Bv,
lifecycle: _v,
modelValue: Rv,
modify: Qp,
nativeOn: wv,
number: Iv,
object: gv,
objectKey: Hv,
open: lv,
operate: Vv,
paste: nv,
remove: dv,
reset: rv,
save: ov,
search: uv,
show: Av,
slot: pv,
string: Pv,
validateError: Nv,
validateSuccess: Lv,
variable: Tv
}, Symbol.toStringTag, { value: "Module" })), Wv = "头部", qv = "尾部", Gv = "左侧", Yv = "右侧", Xv = "异步加载", Jv = "操作", Zv = "内容", Qv = "头像", eh = "标题", th = "描述", nh = "图片", rh = "图标", oh = "按钮", ey = {
default: "默认",
header: Wv,
footer: qv,
left: Gv,
right: Yv,
asyncLoading: Xv,
action: Jv,
content: Zv,
avatar: Qv,
title: eh,
description: th,
image: nh,
icon: rh,
button: oh
}, ty = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
__proto__: null,
action: Jv,
asyncLoading: Xv,
avatar: Qv,
button: oh,
content: Zv,
default: ey,
description: th,
footer: qv,
header: Wv,
icon: rh,
image: nh,
left: Gv,
right: Yv,
title: eh
}, Symbol.toStringTag, { value: "Module" }));
function ao(e) {
return kg() ? (Sg(e), !0) : !1;
}
function Ae(e) {
return typeof e == "function" ? e() : y(e);
}
const ba = typeof window < "u" && typeof document < "u", ny = (e) => typeof e < "u", ry = Object.prototype.toString, oy = (e) => ry.call(e) === "[object Object]", ay = () => +Date.now(), Wt = () => {
}, iy = /* @__PURE__ */ sy();
function sy() {
var e;
return ba && ((e = window == null ? void 0 : window.navigator) == null ? void 0 : e.userAgent) && /* @__PURE__ */ /iP(ad|hone|od)/.test(window.navigator.userAgent);
}
function _a(e, t) {
function n(...r) {
return new Promise((o, a) => {
Promise.resolve(e(() => t.apply(this, r), { fn: t, thisArg: this, args: r })).then(o).catch(a);
});
}
return n;
}
const $s = (e) => e();
function ah(e, t = {}) {
let n, r, o = Wt;
const a = (s) => {
clearTimeout(s), o(), o = Wt;
};
return (s) => {
const l = Ae(e), c = Ae(t.maxWait);
return n && a(n), l <= 0 || c !== void 0 && c <= 0 ? (r && (a(r), r = null), Promise.resolve(s())) : new Promise((u, f) => {
o = t.rejectOnCancel ? f : u, c && !r && (r = setTimeout(() => {
n && a(n), r = null, u(s());
}, c)), n = setTimeout(() => {
r && a(r), r = null, u(s());
}, l);
});
};
}
function ly(e, t = !0, n = !0, r = !1) {
let o = 0, a, i = !0, s = Wt, l;
const c = () => {
a && (clearTimeout(a), a = void 0, s(), s = Wt);
};
return (f) => {
const d = Ae(e), p = Date.now() - o, v = () => l = f();
return c(), d <= 0 ? (o = Date.now(), v()) : (p > d && (n || !i) ? (o = Date.now(), v()) : t && (l = new Promise((h, m) => {
s = r ? m : h, a = setTimeout(() => {
o = Date.now(), i = !0, h(v()), c();
}, Math.max(0, d - p));
})), !n && !a && (a = setTimeout(() => i = !0, d)), i = !1, l);
};
}
function ih(e = $s) {
const t = P(!0);
function n() {
t.value = !1;
}
function r() {
t.value = !0;
}
const o = (...a) => {
t.value && e(...a);
};
return { isActive: Tc(t), pause: n, resume: r, eventFilter: o };
}
function pn(e, t = 200, n = {}) {
return _a(
ah(t, n),
e
);
}
function uy(e, t = 200, n = !1, r = !0, o = !1) {
return _a(
ly(t, n, r, o),
e
);
}
function cy(e, t, n = {}) {
const {
eventFilter: r = $s,
...o
} = n;
return ue(
e,
_a(
r,
t
),
o
);
}
function dy(e, t, n = {}) {
const {
eventFilter: r,
...o
} = n, { eventFilter: a, pause: i, resume: s, isActive: l } = ih(r);
return { stop: cy(
e,
t,
{
...o,
eventFilter: a
}
), pause: i, resume: s, isActive: l };
}
function fy(e, t = {}) {
if (!Ue(e))
return Og(e);
const n = Array.isArray(e.value) ? Array.from({ length: e.value.length }) : {};
for (const r in e.value)
n[r] = Ag(() => ({
get() {
return e.value[r];
},
set(o) {
var a;
if ((a = Ae(t.replaceRef)) != null ? a : !0)
if (Array.isArray(e.value)) {
const s = [...e.value];
s[r] = o, e.value = s;
} else {
const s = { ...e.value, [r]: o };
Object.setPrototypeOf(s, Object.getPrototypeOf(e.value)), e.value = s;
}
else
e.value[r] = o;
}
}));
return n;
}
function _t(e, t = !0) {
ya() ? oo(e) : t ? e() : wn(e);
}
function py(e, t, n = {}) {
const {
eventFilter: r = $s,
...o
} = n, a = _a(
r,
t
);
let i, s, l;
if (o.flush === "sync") {
const c = P(!1);
s = () => {
}, i = (u) => {
c.value = !0, u(), c.value = !1;
}, l = ue(
e,
(...u) => {
c.value || a(...u);
},
o
);
} else {
const c = [], u = P(0), f = P(0);
s = () => {
u.value = f.value;
}, c.push(
ue(
e,
() => {
f.value++;
},
{ ...o, flush: "sync" }
)
), i = (d) => {
const p = f.value;
d(), u.value += f.value - p;
}, c.push(
ue(
e,
(...d) => {
const p = u.value > 0 && u.value === f.value;
u.value = 0, f.value = 0, !p && a(...d);
},
o
)
), l = () => {
c.forEach((d) => d());
};
}
return { stop: l, ignoreUpdates: i, ignorePrevAsyncUpdates: s };
}
function fe(e, t, n) {
return ue(
e,
(r, o, a) => {
r && t(r, o, a);
},
n
);
}
function Tt(e) {
var t;
const n = Ae(e);
return (t = n == null ? void 0 : n.$el) != null ? t : n;
}
const it = ba ? window : void 0, vy = ba ? window.document : void 0;
function je(...e) {
let t, n, r, o;
if (typeof e[0] == "string" || Array.isArray(e[0]) ? ([n, r, o] = e, t = it) : [t, n, r, o] = e, !t)
return Wt;
Array.isArray(n) || (n = [n]), Array.isArray(r) || (r = [r]);
const a = [], i = () => {
a.forEach((u) => u()), a.length = 0;
}, s = (u, f, d, p) => (u.addEventListener(f, d, p), () => u.removeEventListener(f, d, p)), l = ue(
() => [Tt(t), Ae(o)],
([u, f]) => {
if (i(), !u)
return;
const d = oy(f) ? { ...f } : f;
a.push(
...n.flatMap((p) => r.map((v) => s(u, p, v, d)))
);
},
{ immediate: !0, flush: "post" }
), c = () => {
l(), i();
};
return ao(c), c;
}
let Rl = !1;
function ks(e, t, n = {}) {
const { window: r = it, ignore: o = [], capture: a = !0, detectIframe: i = !1 } = n;
if (!r)
return;
iy && !Rl && (Rl = !0, Array.from(r.document.body.children).forEach((d) => d.addEventListener("click", Wt)), r.document.documentElement.addEventListener("click", Wt));
let s = !0;
const l = (d) => o.some((p) => {
if (typeof p == "string")
return Array.from(r.document.querySelectorAll(p)).some((v) => v === d.target || d.composedPath().includes(v));
{
const v = Tt(p);
return v && (d.target === v || d.composedPath().includes(v));
}
}), u = [
je(r, "click", (d) => {
const p = Tt(e);
if (!(!p || p === d.target || d.composedPath().includes(p))) {
if (d.detail === 0 && (s = !l(d)), !s) {
s = !0;
return;
}
t(d);
}
}, { passive: !0, capture: a }),
je(r, "pointerdown", (d) => {
const p = Tt(e);
p && (s = !d.composedPath().includes(p) && !l(d));
}, { passive: !0 }),
i && je(r, "blur", (d) => {
setTimeout(() => {
var p;
const v = Tt(e);
((p = r.document.activeElement) == null ? void 0 : p.tagName) === "IFRAME" && !(v != null && v.contains(r.document.activeElement)) && t(d);
}, 0);
})
].filter(Boolean);
return () => u.forEach((d) => d());
}
function hy() {
const e = P(!1);
return ya() && oo(() => {
e.value = !0;
}), e;
}
function wa(e) {
const t = hy();
return N(() => (t.value, !!e()));
}
function my(e, t = {}) {
const { window: n = it } = t, r = wa(() => n && "matchMedia" in n && typeof n.matchMedia == "function");
let o;
const a = P(!1), i = (c) => {
a.value = c.matches;
}, s = () => {
o && ("removeEventListener" in o ? o.removeEventListener("change", i) : o.removeListener(i));
}, l = Tg(() => {
r.value && (s(), o = n.matchMedia(Ae(e)), "addEventListener" in o ? o.addEventListener("change", i) : o.addListener(i), a.value = o.matches);
});
return ao(() => {
l(), s(), o = void 0;
}), a;
}
function gy(e) {
const {
name: t,
window: n = it
} = e, r = wa(() => n && "BroadcastChannel" in n), o = P(!1), a = P(), i = P(), s = ws(null), l = (u) => {
a.value && a.value.postMessage(u);
}, c = () => {
a.value && a.value.close(), o.value = !0;
};
return r.value && _t(() => {
s.value = null, a.value = new BroadcastChannel(t), a.value.addEventListener("message", (u) => {
i.value = u.data;
}, { passive: !0 }), a.value.addEventListener("messageerror", (u) => {
s.value = u;
}, { passive: !0 }), a.value.addEventListener("close", () => {
o.value = !0;
});
}), ao(() => {
c();
}), {
isSupported: r,
channel: a,
data: i,
post: l,
close: c,
error: s,
isClosed: o
};
}
function xa(e) {
return JSON.parse(JSON.stringify(e));
}
function qt(e, t = {}) {
const n = P({}), {
manual: r,
clone: o = xa,
// watch options
deep: a = !0,
immediate: i = !0
} = t;
function s() {
n.value = o(Ae(e));
}
return !r && (Ue(e) || typeof e == "function") ? ue(e, s, {
...t,
deep: a,
immediate: i
}) : s(), { cloned: n, sync: s };
}
const _o = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {}, wo = "__vueuse_ssr_handlers__", yy = /* @__PURE__ */ by();
function by() {
return wo in _o || (_o[wo] = _o[wo] || {}), _o[wo];
}
function _y(e, t) {
return yy[e] || t;
}
function wy(e) {
return e == null ? "any" : e instanceof Set ? "set" : e instanceof Map ? "map" : e instanceof Date ? "date" : typeof e == "boolean" ? "boolean" : typeof e == "string" ? "string" : typeof e == "object" ? "object" : Number.isNaN(e) ? "any" : "number";
}
const xy = {
boolean: {
read: (e) => e === "true",
write: (e) => String(e)
},
object: {
read: (e) => JSON.parse(e),
write: (e) => JSON.stringify(e)
},
number: {
read: (e) => Number.parseFloat(e),
write: (e) => String(e)
},
any: {
read: (e) => e,
write: (e) => String(e)
},
string: {
read: (e) => e,
write: (e) => String(e)
},
map: {
read: (e) => new Map(JSON.parse(e)),
write: (e) => JSON.stringify(Array.from(e.entries()))
},
set: {
read: (e) => new Set(JSON.parse(e)),
write: (e) => JSON.stringify(Array.from(e))
},
date: {
read: (e) => new Date(e),
write: (e) => e.toISOString()
}
}, Ml = "vueuse-storage";
function sh(e, t, n, r = {}) {
var o;
const {
flush: a = "pre",
deep: i = !0,
listenToStorageChanges: s = !0,
writeDefaults: l = !0,
mergeDefaults: c = !1,
shallow: u,
window: f = it,
eventFilter: d,
onError: p = (E) => {
console.error(E);
}
} = r, v = (u ? ws : P)(t);
if (!n)
try {
n = _y("getDefaultStorage", () => {
var E;
return (E = it) == null ? void 0 : E.localStorage;
})();
} catch (E) {
p(E);
}
if (!n)
return v;
const h = Ae(t), m = wy(h), g = (o = r.serializer) != null ? o : xy[m], { pause: b, resume: _ } = dy(
v,
() => S(v.value),
{ flush: a, deep: i, eventFilter: d }
);
return f && s && (je(f, "storage", $), je(f, Ml, O)), $(), v;
function S(E) {
try {
if (E == null)
n.removeItem(e);
else {
const A = g.write(E), D = n.getItem(e);
D !== A && (n.setItem(e, A), f && f.dispatchEvent(new CustomEvent(Ml, {
detail: {
key: e,
oldValue: D,
newValue: A,
storageArea: n
}
})));
}
} catch (A) {
p(A);
}
}
function x(E) {
const A = E ? E.newValue : n.getItem(e);
if (A == null)
return l && h !== null && n.setItem(e, g.write(h)), h;
if (!E && c) {
const D = g.read(A);
return typeof c == "function" ? c(D, h) : m === "object" && !Array.isArray(D) ? { ...h, ...D } : D;
} else
return typeof A != "string" ? A : g.read(A);
}
function O(E) {
$(E.detail);
}
function $(E) {
if (!(E && E.storageArea !== n)) {
if (E && E.key == null) {
v.value = h;
return;
}
if (!(E && E.key !== e)) {
b();
try {
(E == null ? void 0 : E.newValue) !== g.write(v.value) && (v.value = x(E));
} catch (A) {
p(A);
} finally {
E ? wn(_) : _();
}
}
}
}
}
function lh(e) {
return e;
}
function Cy(e, t) {
return e.value = t;
}
function $y(e) {
return e ? typeof e == "function" ? e : xa : lh;
}
function ky(e) {
return e ? typeof e == "function" ? e : xa : lh;
}
function Sy(e, t = {}) {
const {
clone: n = !1,
dump: r = $y(n),
parse: o = ky(n),
setSource: a = Cy
} = t;
function i() {
return xs({
snapshot: r(e.value),
timestamp: ay()
});
}
const s = P(i()), l = P([]), c = P([]), u = (_) => {
a(e, o(_.snapshot)), s.value = _;
}, f = () => {
l.value.unshift(s.value), s.value = i(), t.capacity && l.value.length > t.capacity && l.value.splice(t.capacity, Number.POSITIVE_INFINITY), c.value.length && c.value.splice(0, c.value.length);
}, d = () => {
l.value.splice(0, l.value.length), c.value.splice(0, c.value.length);
}, p = () => {
const _ = l.value.shift();
_ && (c.value.unshift(s.value), u(_));
}, v = () => {
const _ = c.value.shift();
_ && (l.value.unshift(s.value), u(_));
}, h = () => {
u(s.value);
}, m = N(() => [s.value, ...l.value]), g = N(() => l.value.length > 0), b = N(() => c.value.length > 0);
return {
source: e,
undoStack: l,
redoStack: c,
last: s,
history: m,
canUndo: g,
canRedo: b,
clear: d,
commit: f,
reset: h,
undo: p,
redo: v
};
}
function Oy(e, t = {}) {
const {
deep: n = !1,
flush: r = "pre",
eventFilter: o
} = t, {
eventFilter: a,
pause: i,
resume: s,
isActive: l
} = ih(o), {
ignoreUpdates: c,
ignorePrevAsyncUpdates: u,
stop: f
} = py(
e,
m,
{ deep: n, flush: r, eventFilter: a }
);
function d(S, x) {
u(), c(() => {
S.value = x;
});
}
const p = Sy(e, { ...t, clone: t.clone || n, setSource: d }), { clear: v, commit: h } = p;
function m() {
u(), h();
}
function g(S) {
s(), S && m();
}
function b(S) {
let x = !1;
const O = () => x = !0;
c(() => {
S(O);
}), x || m();
}
function _() {
f(), v();
}
return {
...p,
isTracking: l,
pause: i,
resume: g,
commit: m,
batch: b,
dispose: _
};
}
function Ay(e, t = {}) {
const n = t.debounce ? ah(t.debounce) : void 0;
return {
...Oy(e, { ...t, eventFilter: n })
};
}
function uh(e, t = {}) {
var n, r;
const {
pointerTypes: o,
preventDefault: a,
stopPropagation: i,
exact: s,
onMove: l,
onEnd: c,
onStart: u,
initialValue: f,
axis: d = "both",
draggingElement: p = it,
containerElement: v,
handle: h = e
} = t, m = P(
(n = Ae(f)) != null ? n : { x: 0, y: 0 }
), g = P(), b = ($) => o ? o.includes($.pointerType) : !0, _ = ($) => {
Ae(a) && $.preventDefault(), Ae(i) && $.stopPropagation();
}, S = ($) => {
var E;
if (!b($) || Ae(s) && $.target !== Ae(e))
return;
const D = ((E = Ae(v)) != null ? E : Ae(e)).getBoundingClientRect(), I = {
x: $.clientX - D.left,
y: $.clientY - D.top
};
(u == null ? void 0 : u(I, $)) !== !1 && (g.value = I, _($));
}, x = ($) => {
if (!b($) || !g.value)
return;
let { x: E, y: A } = m.value;
(d === "x" || d === "both") && (E = $.clientX - g.value.x), (d === "y" || d === "both") && (A = $.clientY - g.value.y), m.value = {
x: E,
y: A
}, l == null || l(m.value, $), _($);
}, O = ($) => {
b($) && g.value && (g.value = void 0, c == null || c(m.value, $), _($));
};
if (ba) {
const $ = { capture: (r = t.capture) != null ? r : !0 };
je(h, "pointerdown", S, $), je(p, "pointermove", x, $), je(p, "pointerup", O, $);
}
return {
...fy(m),
position: m,
isDragging: N(() => !!g.value),
style: N(
() => `left:${m.value.x}px;top:${m.value.y}px;`
)
};
}
function Ty(e, t, n = {}) {
const { window: r = it, ...o } = n;
let a;
const i = wa(() => r && "ResizeObserver" in r), s = () => {
a && (a.disconnect(), a = void 0);
}, l = N(() => Array.isArray(e) ? e.map((f) => Tt(f)) : [Tt(e)]), c = ue(
l,
(f) => {
if (s(), i.value && r) {
a = new ResizeObserver(t);
for (const d of f)
d && a.observe(d, o);
}
},
{ immediate: !0, flush: "post", deep: !0 }
), u = () => {
s(), c();
};
return ao(u), {
isSupported: i,
stop: u
};
}
function Ho(e, t = {}) {
const {
reset: n = !0,
windowResize: r = !0,
windowScroll: o = !0,
immediate: a = !0
} = t, i = P(0), s = P(0), l = P(0), c = P(0), u = P(0), f = P(0), d = P(0), p = P(0);
function v() {
const h = Tt(e);
if (!h) {
n && (i.value = 0, s.value = 0, l.value = 0, c.value = 0, u.value = 0, f.value = 0, d.value = 0, p.value = 0);
return;
}
const m = h.getBoundingClientRect();
i.value = m.height, s.value = m.bottom, l.value = m.left, c.value = m.right, u.value = m.top, f.value = m.width, d.value = m.x, p.value = m.y;
}
return Ty(e, v), ue(() => Tt(e), (h) => !h && v()), o && je("scroll", v, { capture: !0, passive: !0 }), r && je("resize", v, { passive: !0 }), _t(() => {
a && v();
}), {
height: i,
bottom: s,
left: l,
right: c,
top: u,
width: f,
x: d,
y: p,
update: v
};
}
function Ss(e, t, n = {}) {
const { window: r = it } = n;
return sh(e, t, r == null ? void 0 : r.localStorage, n);
}
const Vy = {
ctrl: "control",
command: "meta",
cmd: "meta",
option: "alt",
up: "arrowup",
down: "arrowdown",
left: "arrowleft",
right: "arrowright"
};
function Ey(e = {}) {
const {
reactive: t = !1,
target: n = it,
aliasMap: r = Vy,
passive: o = !0,
onEventFired: a = Wt
} = e, i = Re(/* @__PURE__ */ new Set()), s = {
toJSON() {
return {};
},
current: i
}, l = t ? Re(s) : s, c = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Set();
function f(h, m) {
h in l && (t ? l[h] = m : l[h].value = m);
}
function d() {
i.clear();
for (const h of u)
f(h, !1);
}
function p(h, m) {
var g, b;
const _ = (g = h.key) == null ? void 0 : g.toLowerCase(), x = [(b = h.code) == null ? void 0 : b.toLowerCase(), _].filter(Boolean);
_ && (m ? i.add(_) : i.delete(_));
for (const O of x)
u.add(O), f(O, m);
_ === "meta" && !m ? (c.forEach((O) => {
i.delete(O), f(O, !1);
}), c.clear()) : typeof h.getModifierState == "function" && h.getModifierState("Meta") && m && [...i, ...x].forEach((O) => c.add(O));
}
je(n, "keydown", (h) => (p(h, !0), a(h)), { passive: o }), je(n, "keyup", (h) => (p(h, !1), a(h)), { passive: o }), je("blur", d, { passive: !0 }), je("focus", d, { passive: !0 });
const v = new Proxy(
l,
{
get(h, m, g) {
if (typeof m != "string")
return Reflect.get(h, m, g);
if (m = m.toLowerCase(), m in r && (m = r[m]), !(m in l))
if (/[+_-]/.test(m)) {
const _ = m.split(/[+_-]/g).map((S) => S.trim());
l[m] = N(() => _.every((S) => Ae(v[S])));
} else
l[m] = P(!1);
const b = Reflect.get(h, m, g);
return t ? Ae(b) : b;
}
}
);
return v;
}
function Py(e = {}) {
const { window: t = it } = e, n = t == null ? void 0 : t.navigator, r = wa(() => n && "language" in n), o = P(n == null ? void 0 : n.language);
return je(t, "languagechange", () => {
n && (o.value = n.language);
}), {
isSupported: r,
language: o
};
}
let Iy = 0;
function jy(e, t = {}) {
const n = P(!1), {
document: r = vy,
immediate: o = !0,
manual: a = !1,
id: i = `vueuse_styletag_${++Iy}`
} = t, s = P(e);
let l = () => {
};
const c = () => {
if (!r)
return;
const f = r.getElementById(i) || r.createElement("style");
f.isConnected || (f.id = i, t.media && (f.media = t.media), r.head.appendChild(f)), !n.value && (l = ue(
s,
(d) => {
f.textContent = d;
},
{ immediate: !0 }
), n.value = !0);
}, u = () => {
!r || !n.value || (l(), r.head.removeChild(r.getElementById(i)), n.value = !1);
};
return o && !a && _t(c), a || ao(u), {
id: i,
css: s,
unload: u,
load: c,
isLoaded: Tc(n)
};
}
function Os(e, t, n, r = {}) {
var o, a, i;
const {
clone: s = !1,
passive: l = !1,
eventName: c,
deep: u = !1,
defaultValue: f,
shouldEmit: d
} = r, p = ya(), v = n || (p == null ? void 0 : p.emit) || ((o = p == null ? void 0 : p.$emit) == null ? void 0 : o.bind(p)) || ((i = (a = p == null ? void 0 : p.proxy) == null ? void 0 : a.$emit) == null ? void 0 : i.bind(p == null ? void 0 : p.proxy));
let h = c;
t || (t = "modelValue"), h = h || `update:${t.toString()}`;
const m = (_) => s ? typeof s == "function" ? s(_) : xa(_) : _, g = () => ny(e[t]) ? m(e[t]) : f, b = (_) => {
d ? d(_) && v(h, _) : v(h, _);
};
if (l) {
const _ = g(), S = P(_);
let x = !1;
return ue(
() => e[t],
(O) => {
x || (x = !0, S.value = m(O), wn(() => x = !1));
}
), ue(
S,
(O) => {
!x && (O !== e[t] || u) && b(O);
},
{ deep: u }
), S;
} else
return N({
get() {
return g();
},
set(_) {
b(_);
}
});
}
function ch(e = {}) {
const {
window: t = it,
initialWidth: n = Number.POSITIVE_INFINITY,
initialHeight: r = Number.POSITIVE_INFINITY,
listenOrientation: o = !0,
includeScrollbar: a = !0
} = e, i = P(n), s = P(r), l = () => {
t && (a ? (i.value = t.innerWidth, s.value = t.innerHeight) : (i.value = t.document.documentElement.clientWidth, s.value = t.document.documentElement.clientHeight));
};
if (l(), _t(l), je("resize", l, { passive: !0 }), o) {
const c = my("(orientation: portrait)");
ue(c, () => l());
}
return { width: i, height: s };
}
const Ha = /* @__PURE__ */ Object.assign({ "../i18n/zh-CN/attrs.json": Ug, "../i18n/zh-CN/component.json": Kg, "../i18n/zh-CN/container.json": zg, "../i18n/zh-CN/css.json": qg, "../i18n/zh-CN/global.json": Yg, "../i18n/zh-CN/globalTool.json": Jg, "../i18n/zh-CN/options.json": Qg, "../i18n/zh-CN/slot.json": ty }), { language: ki } = Py(), zo = P({}), dh = function(e) {
return zo.value[e] || e.split(".")[e.split(".").length - 1];
}, Dy = function(e) {
let t = {};
for (const n in Ha)
if (Object.hasOwnProperty.call(Ha, n)) {
const r = Ha[n], o = n.split("/"), a = o.findIndex((i) => i === "i18n");
if (o[a + 1] === e) {
const i = {
[o[o.length - 1].split(".")[0]]: r.default
};
t = Object.assign({}, t, My(i));
}
}
zo.value = t;
}, Ry = function(e) {
ue(ki, (t) => {
Dy(t);
}, {
immediate: !0
}), e.provide("mlLangs", dh);
}, My = (e) => {
const t = {}, n = (o) => Object.keys(o).length === 0, r = (o, a) => {
if (Object(o) !== o)
t[a] = o;
else if (Array.isArray(o)) {
const i = o.length;
for (let s = 0; s < i; s++)
r(o[s], `${a}[${s}]`);
i === 0 && (t[a] = []);
} else
n(o) ? t[a] = {} : Object.keys(o).forEach(
(i) => r(o[i], a ? `${a}.${i}` : i)
);
};
return r(e, ""), t;
}, fh = [{
icon: "basic",
name: "basic",
component: ["div", "span", "ul", "li", "text"]
}, {
icon: "container",
name: "layout",
rule: /.*(Row|Col|Container|Header|Main|Footer|Aside|Layout|Grid|Cell|Split|List).*/
}, {
icon: "menu",
name: "menu",
rule: /.*(Anchor|Breadcrumb|Dropdown|Menu|Pagination).*/
}, {
icon: "form",
name: "form",
rule: /.*(Input|Picker|Checkbox|Radio|Form|AutoComplete|Cascader|Select|Slider|Switch|Textarea|Transfer|Upload|Wheel).*/
}, {
icon: "content",
name: "content",
rule: /.*(Avatar|Badge|Bubble|Calendar|Card|Carousel|Collapse|Ellipsis|Highlight|Image|Result|Table|TabNav|Tabs|Tag|TimeAgo|Timeline|Tooltip|Tree|Viewer).*/
}, {
icon: "modal",
name: "modal",
rule: /.*(Alert|Confirm|Contextmenu|Drawer|Loading|Message|Modal|Notice|progress|Skeleton|spin|Toast|Tour).*/
}, {
icon: "more",
name: "more",
rule: /.*(Affix|FullScreen|Masker|Overflow|Renderer|ResizeObserver|Scrollbar|VirtualList).*/
}], Bl = {
TRow: {
align: {
default: "center",
optionItems: ["top", "center", "end", "stretch", "baseline"]
},
justify: {
default: "center",
optionItems: ["start", "end", "center", "space-around", "space-between", "space-evenly"]
}
}
}, Nl = {
click: ["evt"],
//点击
dblclick: ["evt"],
//双击
mouseenter: ["evt"],
//鼠标移入
mouseleave: ["evt"],
//鼠标移出
keydown: ["evt"],
//按键按下
keyup: ["evt"],
//按键抬起
keypress: ["evt"],
//按键按下
wheel: ["evt"],
//滚轮滚动
contextmenu: ["evt"],
//右键
scroll: ["evt"],
//滚动
resize: ["evt"]
//窗口大小改变
}, Wo = {
beforeCreate: {
codeVar: [],
code: ""
},
created: {
codeVar: [],
code: ""
},
beforeMount: {
codeVar: [],
code: "",
function: Vg
},
mounted: {
codeVar: [],
code: "",
function: oo
},
beforeUpdate: {
codeVar: [],
code: "",
function: Eg
},
updated: {
codeVar: [],
code: "",
function: Pg
},
beforeUnmount: {
codeVar: [],
code: "",
function: Ig
},
unmounted: {
codeVar: [],
code: "",
function: Vc
},
errorCaptured: {
codeVar: ["err", "vm", "info"],
code: "",
function: jg
},
activated: {
codeVar: [],
code: "",
function: Dg
},
deactivated: {
codeVar: [],
code: "",
function: Rg
}
}, By = {
TRow: {
default: {
auto: !0,
allowComps: ["TCol"]
}
},
TCol: {
default: "auto"
},
TLayout: {
default: {
allowComps: ["THeader", "TLayout", "TContent", "TAside", "TFooter"]
}
},
TSpace: {
default: "auto"
},
TForm: {
default: {
allowComps: ["TFormItem"]
}
},
TFormItem: {
default: "auto"
},
TList: {
header: !0,
default: {
auto: !0,
allowComps: ["TListItem"]
},
footer: !0,
asyncLoading: !0
},
TListItem: {
action: !0,
default: {
auto: !0,
allowComps: ["TListItemMeta"]
},
content: !0
},
TListItemMeta: {
avatar: !0,
description: !0,
image: !0,
title: !0
}
}, vn = {
current: "tdesign-vue-next",
data: [{
name: "tdesign-vue-next",
prefix: "T",
icon: "TDesign",
compMapping: {
Button: {
theme: "theme",
text: {
variant: "text"
}
},
Tag: {},
Input: {
prefixIcon: "prefixIcon",
onKeyup: {}
},
InputNumber: {},
Select: {},
Switch: {},
Tooltip: {
content: {
content: "content",
destroyOnClose: !0
}
},
Popup: {
component: "Popup",
default: "default",
content: "content"
},
RadioGroup: {},
RadioButton: {
value: "label"
},
Cascader: {
optionItems: "options"
},
CascaderPanel: {
optionItems: "options"
},
Dropdown: {
optionItems: (e) => ({
options: e.map((t) => ({
content: t.label,
value: t.value,
disabled: t.disabled,
onClick: t.onclick
}))
})
},
Dialog: {
appendToBody: {
attach: "body"
}
}
}
}, {
name: "element-plus",
prefix: "El",
icon: "ElementPlus",
compMapping: {
Button: {
theme: "type",
text: "text"
},
Tag: {
theme: "type"
},
Input: {
prefixIcon: "prefix",
onEnter: {}
},
InputNumber: {},
Select: {
component: "SelectV2",
// 切换组件
size: {
// 设置大小的同时设置组件的props
size: "small",
props: {
options: "children"
}
}
},
Switch: {},
Tooltip: {
content: "content"
},
Popup: {
component: "Popover",
default: "reference",
content: "default",
trigger: {
trigger: "click",
width: "auto"
}
},
RadioGroup: {},
RadioButton: {
value: "label"
},
Cascader: {
optionItems: "options",
checkStrictly: {
props: {
checkStrictly: !0
}
}
},
CascaderPanel: {
optionItems: "options",
checkStrictly: {
props: {
checkStrictly: !0
}
}
},
Dropdown: {
optionItems: (e) => ({
dropdown: {
_isSlot: !0,
tag: "ElDropdownMenu",
attrs: {},
slots: e.map((t) => ({
_isSlot: !0,
tag: "ElDropdownItem",
attrs: {
disabled: t.disabled,
onClick: t.onclick,
command: t.value
},
slots: t.label
}))
}
})
},
Dialog: {
visible: "modelValue",
"onUpdate:visible": "onUpdate:modelValue",
destroyOnClose: "destroy-on-close",
appendToBody: "append-to-body",
header: "title"
}
}
}, {
name: "ant-design-vue",
prefix: "A",
icon: "Ant",
compMapping: {
Button: {
theme: (e) => e === "warning" ? {
type: "primary",
danger: !0
} : {
type: "primary"
},
text: {
type: "link"
}
},
Tag: {},
Input: {
prefixIcon: "prefix",
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value"
},
InputNumber: {
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value"
},
Select: {
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value"
},
Switch: {
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value"
},
Tooltip: {
content: "title"
},
Popup: {
component: "Popover"
},
RadioGroup: {
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value",
variant: {
buttonStyle: "solid"
}
},
RadioButton: {
value: "label"
},
Cascader: {
optionItems: "options",
valueType: (e) => e === "full" ? {
changeOnSelect: !0
} : {},
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value"
},
CascaderPanel: {
component: "Cascader",
optionItems: "options",
valueType: (e) => e === "full" ? {
changeOnSelect: !0
} : {},
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value"
},
Dropdown: {
optionItems: (e) => ({
overlay: {
_isSlot: !0,
tag: "AMenu",
attrs: {},
slots: e.map((t) => ({
_isSlot: !0,
tag: "AMenuItem",
attrs: {
disabled: t.disabled,
onClick: t.onclick,
command: t.value
},
slots: t.label
}))
}
})
},
Dialog: {
component: "Modal",
appendToBody: {
getContainer: () => document.body,
zIndex: 1001
},
header: "title",
visible: "open",
"onUpdate:visible": "onUpdate:open"
}
}
}, {
name: "naive",
prefix: "N",
icon: "naive",
compMapping: {
Button: {
theme: "type",
text: "text"
},
Tag: {
theme: "type"
},
Input: {
prefixIcon: "prefix",
onEnter: {},
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value"
},
InputNumber: {
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value"
},
Select: {
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value",
size: {
size: "small",
virtualScroll: !1
}
},
Switch: {
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value"
},
Tooltip: {
default: "trigger",
content: (e) => ({
default: {
_isSlot: !0,
tag: "NEllipsis",
attrs: {},
slots: e
}
})
},
Popup: {
component: "Popover",
default: "trigger",
content: "default",
trigger: {
trigger: "click",
style: "min-width:180px;"
},
visible: "show",
"onUpdate:visible": "onUpdate:show"
},
RadioGroup: {
modelValue: "value",
"onUpdate:modelValue": "onUpdate:value"
},
RadioButton: {
value: "label"
},
Cascader: {
optionItems: "options",
checkStrictly: {
checkStrategy: "all",
separator: ".",
virtualScroll: !1,
cascade: !1
},
modelValue: (e) => ({
value: e[e.length - 1]
}),
"onUpdate:modelValue": "onUpdate:value"
},
CascaderPanel: {
component: "Cascader",
optionItems: "options",
checkStrictly: {
checkStrategy: "all",
separator: ".",
virtualScroll: !1,
cascade: !1
},
modelValue: (e) => ({
value: e[e.length - 1]
}),
"onUpdate:modelValue": "onUpdate:value"
},
Dropdown: {
optionItems: (e) => ({
options: e.map((t) => ({
label: t.label,
key: t.value,
disabled: t.disabled,
props: {
onClick: t.onclick
}
}))
})
},
Dialog: {
component: "Modal",
visible: "show",
"onUpdate:visible": "onUpdate:show",
destroyOnClose: "destroy-on-close",
appendToBody: {
preset: "dialog",
style: {
width: "80vw"
}
},
header: "title",
footer: "action"
}
}
}, {
name: "vexip",
prefix: "V",
icon: "vexip",
compMapping: {
Button: {
theme: "type",
text: {
variant: "text"
}
},
Input: {},
InputNumbe