Template
Port pages for data forms, score admin, student maintenance, vacation records, menu routing, and workbench. Add team switching, dynamic menu loading, viewport scaling, and bundled local fast-crud packages.
903 lines
56 KiB
JavaScript
903 lines
56 KiB
JavaScript
import { version as P, ElDialog as F, useFormItem as N, TableV2Placeholder as T, ElMessage as I, ElNotification as H, ElMessageBox as E } from "element-plus";
|
|
import { useUiRender as _, uiContext as D } from "@fast-crud/ui-interface";
|
|
import { computed as L, unref as G, createVNode as w, resolveComponent as k, createTextVNode as O } from "vue";
|
|
import { forEach as $, isFunction as x, union as z } from "lodash-es";
|
|
import * as W from "@element-plus/icons-vue";
|
|
const j = (g, p) => {
|
|
const e = g.split("."), a = p.split(".");
|
|
for (let n = 0; n < e.length; n++) {
|
|
const l = parseInt(e[n]), o = parseInt(a[n]);
|
|
if (l > o)
|
|
return !0;
|
|
if (l < o)
|
|
return !1;
|
|
}
|
|
return !1;
|
|
}, U = j(P, "2.10.5"), {
|
|
buildBinding: b,
|
|
creator: t
|
|
} = _();
|
|
class A {
|
|
constructor(p) {
|
|
this.type = "element", this.modelValue = "modelValue", this.switch = t({
|
|
activeColor: "active-color",
|
|
activeText: "active-text",
|
|
activeValue: "active-value",
|
|
inactiveColor: "inactive-color",
|
|
inactiveText: "inactive-text",
|
|
inactiveValue: "inactive-value",
|
|
modelValue: "modelValue",
|
|
name: "el-switch"
|
|
}), this.formWrapper = t({
|
|
visible: "modelValue",
|
|
customClass: (e) => "class",
|
|
titleSlotName: "header",
|
|
buildOnClosedBind(e, a) {
|
|
return {
|
|
onClosed: a
|
|
};
|
|
},
|
|
buildWidthBind(e, a) {
|
|
return {
|
|
width: a
|
|
};
|
|
},
|
|
buildInitBind(e) {
|
|
return {};
|
|
},
|
|
buildInnerBind() {
|
|
return {};
|
|
},
|
|
name: "fs-form-wrapper"
|
|
}), this.messageBox = t({
|
|
name: "el-message-box",
|
|
instance: void 0,
|
|
open: async (e) => this.messageBox.instance(e),
|
|
confirm: async (e) => this.messageBox.instance(e)
|
|
}), this.message = t({
|
|
instance: void 0,
|
|
name: "el-message",
|
|
open: (e) => {
|
|
this.message.instance.open(e);
|
|
},
|
|
success: (e) => {
|
|
this.message.instance.success(e);
|
|
},
|
|
error: (e) => {
|
|
this.message.instance.error(e);
|
|
},
|
|
warn: (e) => {
|
|
this.message.instance.warning(e);
|
|
},
|
|
info: (e) => {
|
|
this.message.instance(e);
|
|
}
|
|
}), this.notification = t({
|
|
instance: void 0,
|
|
name: "el-notification",
|
|
open: (e) => {
|
|
this.notification.instance.open(e);
|
|
},
|
|
success: (e) => {
|
|
this.notification.instance.success(e);
|
|
},
|
|
error: (e) => {
|
|
this.notification.instance.error(e);
|
|
},
|
|
warn: (e) => {
|
|
this.notification.instance.warn(e);
|
|
},
|
|
info: (e) => {
|
|
this.notification.instance.success(e);
|
|
}
|
|
}), this.icon = t({
|
|
name: "",
|
|
isComponent: !1
|
|
}), this.icons = {
|
|
add: "plus",
|
|
columnsFilter: "set-up",
|
|
compact: "rank",
|
|
edit: "edit",
|
|
remove: "delete",
|
|
search: "search",
|
|
refresh: "refresh",
|
|
export: "download",
|
|
check: "check",
|
|
sort: "sort",
|
|
left: "arrow-left",
|
|
right: "arrow-right",
|
|
close: "close",
|
|
arrowLeft: "left",
|
|
arrowRight: "right",
|
|
more: "more",
|
|
plus: "plus",
|
|
zoomIn: "zoom-in",
|
|
zoomOut: "zoom-out",
|
|
refreshLeft: "refresh-left",
|
|
refreshRight: "refresh-right",
|
|
upload: "upload",
|
|
fullScreen: "full-screen",
|
|
unFullScreen: "full-screen",
|
|
question: "question-filled",
|
|
caretUp: "CaretTop",
|
|
caretDown: "CaretBottom",
|
|
eye: "View",
|
|
info: "warning",
|
|
copy: "copy"
|
|
}, this.dialog = t({
|
|
name: "el-dialog",
|
|
visible: "modelValue",
|
|
customClass: "class",
|
|
titleSlotName: "header",
|
|
footerSlotName: "footer",
|
|
buildOnClosedBind(e) {
|
|
return {
|
|
onClosed: e
|
|
};
|
|
},
|
|
footer() {
|
|
return {};
|
|
},
|
|
open(e) {
|
|
F.open(e);
|
|
},
|
|
builder(e) {
|
|
return b(this, e, {
|
|
props: {
|
|
title: e.title,
|
|
width: e.width
|
|
},
|
|
slots: {
|
|
footer: e.footer
|
|
}
|
|
});
|
|
}
|
|
}), this.buttonGroup = t({
|
|
name: "el-button-group"
|
|
}), this.col = t({
|
|
name: "el-col"
|
|
}), this.row = t({
|
|
name: "el-row"
|
|
}), this.card = t({
|
|
name: "el-card"
|
|
}), this.checkboxGroup = t({
|
|
name: "el-checkbox-group",
|
|
modelValue: "modelValue"
|
|
}), this.checkbox = t({
|
|
name: "el-checkbox",
|
|
resolveEvent(e) {
|
|
return e;
|
|
},
|
|
modelValue: "modelValue",
|
|
value: "value",
|
|
onChange(e) {
|
|
return {
|
|
"onUpdate:modelValue": e
|
|
};
|
|
}
|
|
}), this.drawer = t({
|
|
name: "el-drawer",
|
|
visible: "modelValue",
|
|
customClass: "class",
|
|
width: "size"
|
|
}), this.collapseTransition = t({
|
|
name: "el-collapse-transition"
|
|
}), this.option = t({
|
|
name: U ? null : "el-option",
|
|
value: "value",
|
|
label: "label"
|
|
}), this.select = t({
|
|
name: "el-select",
|
|
modelValue: "modelValue",
|
|
clearable: "clearable",
|
|
filterable: "filterable",
|
|
fieldNames(e) {
|
|
return {
|
|
props: e
|
|
};
|
|
},
|
|
buildMultiBinding(e) {
|
|
return {
|
|
multiple: e
|
|
};
|
|
}
|
|
}), this.treeSelect = t({
|
|
name: "el-tree-select",
|
|
modelValue: "modelValue",
|
|
clearable: "select.clearable",
|
|
options: "data",
|
|
value: "tree.value",
|
|
label: "tree.label",
|
|
children: "tree.children",
|
|
buildOptionKeysNameBinding(e) {
|
|
return {
|
|
props: {
|
|
label: e.label,
|
|
value: e.value,
|
|
children: e.children
|
|
}
|
|
};
|
|
}
|
|
}), this.radio = t({
|
|
name: "el-radio",
|
|
value: "value",
|
|
builder(e) {
|
|
return b(this, e, {
|
|
props: {
|
|
[this.value]: e.value
|
|
}
|
|
});
|
|
}
|
|
}), this.radioButton = t({
|
|
name: "el-radio-button",
|
|
value: "value",
|
|
builder(e) {
|
|
return b(this, e, {
|
|
props: {
|
|
[this.value]: e.value
|
|
}
|
|
});
|
|
}
|
|
}), this.radioGroup = t({
|
|
name: "el-radio-group",
|
|
modelValue: "modelValue"
|
|
}), this.cascader = t({
|
|
name: "el-cascader",
|
|
modelValue: "modelValue",
|
|
clearable: "clearable",
|
|
fieldNames(e) {
|
|
return {
|
|
props: e
|
|
};
|
|
}
|
|
}), this.form = t({
|
|
name: "el-form",
|
|
inlineLayout: {
|
|
layout: "inline",
|
|
inline: !0
|
|
},
|
|
validateWrap: async (e) => e.validate(),
|
|
transformValidateErrors: (e) => {
|
|
const a = {};
|
|
return $(e, (n, l) => {
|
|
a[l] = !0;
|
|
}), a;
|
|
}
|
|
}), this.formItem = t({
|
|
name: "el-form-item",
|
|
prop: "prop",
|
|
label: "label",
|
|
rules: "rules",
|
|
skipValidationWrapper: "div",
|
|
injectFormItemContext() {
|
|
const {
|
|
formItem: e
|
|
} = N();
|
|
return {
|
|
async onChange() {
|
|
await (e == null ? void 0 : e.validate("change"));
|
|
},
|
|
async onBlur() {
|
|
await (e == null ? void 0 : e.validate("blur"));
|
|
}
|
|
};
|
|
},
|
|
builder(e) {
|
|
return b(this, e, {});
|
|
}
|
|
}), this.button = t({
|
|
name: "el-button",
|
|
textType: {
|
|
text: !0
|
|
},
|
|
linkType: {
|
|
link: !0,
|
|
type: "primary"
|
|
},
|
|
circle: {
|
|
circle: !0
|
|
},
|
|
colors: (e) => ({
|
|
type: e
|
|
})
|
|
}), this.pagination = t({
|
|
name: "el-pagination",
|
|
currentPage: "currentPage",
|
|
total: "total",
|
|
pageCount: null,
|
|
onChange({
|
|
setCurrentPage: e,
|
|
setPageSize: a,
|
|
doAfterChange: n
|
|
}) {
|
|
return {
|
|
// element 页码改动回调
|
|
onCurrentChange(l) {
|
|
e(l), n();
|
|
},
|
|
onSizeChange(l) {
|
|
a(l), n();
|
|
}
|
|
};
|
|
}
|
|
}), this.tableColumn = t({
|
|
name: "el-table-column",
|
|
label: "label",
|
|
prop: "prop",
|
|
row: "row",
|
|
index: "$index"
|
|
}), this.tableColumnGroup = t({
|
|
name: "el-table-column",
|
|
label: "label",
|
|
prop: "prop",
|
|
row: "row",
|
|
index: "$index"
|
|
}), this.table = t({
|
|
name: "el-table",
|
|
data: "data",
|
|
renderMode: "slot",
|
|
defaultRowKey: "id",
|
|
fixedHeaderNeedComputeBodyHeight: !1,
|
|
buildMaxHeight: (e) => ({
|
|
maxHeight: e
|
|
}),
|
|
hasMaxHeight: (e) => (e == null ? void 0 : e.maxHeight) != null,
|
|
headerDomSelector: "",
|
|
vLoading: "loading",
|
|
// 没太大用
|
|
setSelectedRows({
|
|
multiple: e,
|
|
selectedRowKeys: a,
|
|
tableRef: n,
|
|
getRowKey: l
|
|
}) {
|
|
const o = l(), i = [];
|
|
for (const r of a.value)
|
|
for (const s of n.data) {
|
|
let u = null;
|
|
x(o) ? u = o(s) : u = s[o], u === r && i.push(s);
|
|
}
|
|
if (e)
|
|
for (const r of i)
|
|
n.toggleRowSelection(r, !0);
|
|
else
|
|
a.value.length > 0 && n.setCurrentRow(i[0]);
|
|
},
|
|
buildSelectionCrudOptions(e) {
|
|
const {
|
|
compute: a
|
|
} = e.useCompute();
|
|
function n(l) {
|
|
const o = e.getRowKey(), i = e.getPageData();
|
|
let r = o;
|
|
x(o) || (r = (c) => c[o]);
|
|
const s = i.map(r), u = e.selectedRowKeys instanceof Function ? e.selectedRowKeys() : e.selectedRowKeys;
|
|
u.value || (u.value = []);
|
|
const d = u.value.filter((c) => !s.includes(c));
|
|
return z(d, l);
|
|
}
|
|
if (e.multiple)
|
|
return {
|
|
table: {
|
|
onSelectionChange: (o = []) => {
|
|
const i = e.getRowKey();
|
|
let r = o.map((s) => x(i) ? i(s) : s[i]);
|
|
e.crossPage && (r = n(r)), e.onSelectedKeysChanged(r);
|
|
}
|
|
},
|
|
columns: {
|
|
$checked: {
|
|
form: {
|
|
show: !1
|
|
},
|
|
column: {
|
|
type: "selection",
|
|
align: "center",
|
|
width: "55px",
|
|
order: -9999,
|
|
reserveSelection: e.crossPage,
|
|
columnSetDisabled: !0
|
|
//禁止在列设置中选择
|
|
}
|
|
}
|
|
}
|
|
};
|
|
{
|
|
const l = (r) => {
|
|
if (r == null) {
|
|
e.onSelectedKeysChanged([]);
|
|
return;
|
|
}
|
|
const s = e.getRowKey(), u = [x(s) ? s(r) : r[s]];
|
|
e.onSelectedKeysChanged(u);
|
|
}, o = e.selectedRowKeys instanceof Function ? e.selectedRowKeys() : e.selectedRowKeys, i = L(() => o.value.length > 0 ? o.value[0] : null);
|
|
return {
|
|
table: {
|
|
highlightCurrentRow: !0,
|
|
onCurrentChange: l
|
|
},
|
|
columns: {
|
|
$selected: {
|
|
form: {
|
|
show: !1
|
|
},
|
|
column: {
|
|
align: "center",
|
|
width: "55px",
|
|
order: -9999,
|
|
component: {
|
|
name: "el-radio",
|
|
label: a((r) => {
|
|
if (r.form) {
|
|
const s = e.getRowKey();
|
|
return x(s) ? s(r.form) : r.form[s];
|
|
}
|
|
}),
|
|
props: {
|
|
modelValue: i
|
|
},
|
|
slots: {
|
|
default() {
|
|
return "";
|
|
}
|
|
}
|
|
},
|
|
conditionalRender: {
|
|
match() {
|
|
return !1;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
};
|
|
}
|
|
},
|
|
rebuildRenderScope: (e) => e,
|
|
scrollTo(e) {
|
|
var a, n;
|
|
(n = (a = e.tableRef) == null ? void 0 : a.value) == null || n.setScrollTop(e.top);
|
|
},
|
|
onChange({
|
|
onSortChange: e,
|
|
onFilterChange: a,
|
|
bubbleUp: n
|
|
}) {
|
|
return {
|
|
onSortChange: (l) => {
|
|
const {
|
|
column: o,
|
|
prop: i,
|
|
order: r
|
|
} = l;
|
|
e && e({
|
|
isServerSort: i && o.sortable === "custom",
|
|
prop: i,
|
|
order: r,
|
|
asc: r === "ascending"
|
|
}), n((s) => {
|
|
s.onSortChange && s.onSortChange(l);
|
|
});
|
|
},
|
|
onFilterChange: (l) => {
|
|
a(l), n((o) => {
|
|
o.onFilterChange && o.onFilterChange(l);
|
|
});
|
|
}
|
|
};
|
|
}
|
|
}), this.tableColumnV2 = t({
|
|
name: "el-table-column",
|
|
label: "label",
|
|
prop: "prop",
|
|
row: "row",
|
|
index: "$index"
|
|
}), this.tableColumnGroupV2 = t({
|
|
name: "el-table-column",
|
|
label: "label",
|
|
prop: "prop",
|
|
row: "row",
|
|
index: "$index"
|
|
}), this.tableV2 = t({
|
|
name: "el-table-v2",
|
|
data: "data",
|
|
renderMode: "jsx",
|
|
defaultRowKey: "id",
|
|
fixedHeaderNeedComputeBodyHeight: !1,
|
|
renderMethod: "cellRenderer",
|
|
columnsIsFlat: !0,
|
|
//构建自定义表头插槽方法,element-table-v2需要自己写多级表头
|
|
buildMultiHeadersBind(e) {
|
|
const a = e.flatColumns;
|
|
e.treeColumns;
|
|
function n(u, d = 1) {
|
|
let c = 0;
|
|
for (const v of u)
|
|
if (v._parent == null)
|
|
c = Math.max(c, d);
|
|
else {
|
|
const y = n([v._parent], d + 1);
|
|
c = Math.max(c, y);
|
|
}
|
|
return c;
|
|
}
|
|
let l = 50;
|
|
const o = n(a);
|
|
o > 1 && (l = l - (o - 1) * 10, l = Math.max(30, l));
|
|
const i = o * l;
|
|
function r(u) {
|
|
const d = [];
|
|
for (const c of u)
|
|
c.children && c.children.length > 0 ? d.push(...r(c.children)) : d.push(c);
|
|
return d;
|
|
}
|
|
function s(u) {
|
|
const d = r(u);
|
|
let c = 0;
|
|
for (const v of d)
|
|
c += v.width;
|
|
return c;
|
|
}
|
|
return {
|
|
bind: {
|
|
headerHeight: i
|
|
},
|
|
slots: {
|
|
header: ({
|
|
cells: u,
|
|
columns: d,
|
|
headerIndex: c
|
|
}) => {
|
|
const v = {};
|
|
d.forEach((m, h) => {
|
|
v[m.key] = {
|
|
column: m,
|
|
index: h
|
|
};
|
|
});
|
|
const y = [], S = [];
|
|
function R(m, h) {
|
|
const C = [];
|
|
for (const f of m)
|
|
if (!f.children || f.children.length == 0)
|
|
C.push(w("div", {
|
|
class: "custom-header-cell fs-multi-head-text el-table-v2__header-cell-text",
|
|
style: {
|
|
width: f.width + "px",
|
|
height: l * h + "px",
|
|
justifyContent: f.align
|
|
}
|
|
}, [f.title])), S.push(f.key);
|
|
else {
|
|
const V = s(f.children);
|
|
C.push(w("div", {
|
|
class: "fs-multi-head-group "
|
|
}, [w("div", {
|
|
class: "custom-header-cell fs-multi-head-text el-table-v2__header-cell-text",
|
|
style: {
|
|
width: V + "px",
|
|
height: l + "px",
|
|
justifyContent: f.align
|
|
}
|
|
}, [f.title]), w("div", {
|
|
class: "fs-multi-head-sub "
|
|
}, [R(f.children, h - 1)])]));
|
|
}
|
|
return C;
|
|
}
|
|
function K(m, h = 1) {
|
|
return m._parent ? (h = h + 1, K(m._parent, h)) : {
|
|
parent: m,
|
|
deep: h
|
|
};
|
|
}
|
|
return d.forEach((m, h) => {
|
|
if ((m == null ? void 0 : m.placeholderSign) === T) {
|
|
y.push(u[h]);
|
|
return;
|
|
}
|
|
if (!S.includes(m.key))
|
|
if (m._parent) {
|
|
const {
|
|
parent: C,
|
|
deep: f
|
|
} = K(m), V = R([C], o);
|
|
y.push(...V);
|
|
} else
|
|
y.push(u[h]);
|
|
}), y;
|
|
}
|
|
}
|
|
};
|
|
},
|
|
rebuildRenderScope: (e) => ({
|
|
...e,
|
|
index: e.rowIndex,
|
|
row: e.rowData
|
|
}),
|
|
buildMaxHeight: (e) => ({
|
|
maxHeight: e
|
|
}),
|
|
hasMaxHeight: (e) => !1,
|
|
headerDomSelector: "",
|
|
vLoading: "loading",
|
|
// 没太大用
|
|
setSelectedRows({
|
|
multiple: e,
|
|
selectedRowKeys: a,
|
|
tableRef: n,
|
|
getRowKey: l
|
|
}) {
|
|
const o = l(), i = [];
|
|
for (const r of a.value)
|
|
for (const s of n.data)
|
|
s[o] === r && i.push(s);
|
|
if (e)
|
|
for (const r of i)
|
|
n.toggleRowSelection(r, !0);
|
|
else
|
|
a.value.length > 0 && n.setCurrentRow(i[0]);
|
|
},
|
|
buildSelectionCrudOptions(e) {
|
|
const a = (n = []) => {
|
|
e.onSelectedKeysChanged(n);
|
|
};
|
|
return G(e), {
|
|
table: {
|
|
// checkedRowKeys: req.selectedRowKeys,
|
|
// "onUpdate:checkedRowKeys": onSelectionChange
|
|
},
|
|
columns: {
|
|
$checked: {
|
|
form: {
|
|
show: !1
|
|
},
|
|
column: {
|
|
multiple: !!e.multiple,
|
|
align: "center",
|
|
width: 80,
|
|
order: -9999,
|
|
fixed: e.selectionFixed,
|
|
columnSetDisabled: !0,
|
|
cellRenderer: ({
|
|
rowData: n
|
|
}) => {
|
|
const l = e.selectedRowKeys instanceof Function ? e.selectedRowKeys() : e.selectedRowKeys;
|
|
l.value || (l.value = []);
|
|
const o = (r) => {
|
|
r ? l.value.push(n[e.getRowKey()]) : l.value = l.value.filter((s) => s !== n[e.getRowKey()]), a(l.value);
|
|
}, i = l.value.includes(n[e.getRowKey()]);
|
|
return w(k("ElCheckbox"), {
|
|
onChange: o,
|
|
modelValue: i
|
|
}, null);
|
|
},
|
|
headerCellRenderer: (n) => {
|
|
const l = e.getPageData() || [], o = e.selectedRowKeys instanceof Function ? e.selectedRowKeys() : e.selectedRowKeys, i = (u) => {
|
|
u ? o.value = l.map((d) => d[e.getRowKey()]) : o.value = [];
|
|
}, r = l.length > 0 && l.every((u) => o.value.includes(u[e.getRowKey()])), s = l.some((u) => o.value.includes(u[e.getRowKey()]));
|
|
return w(k("el-checkbox"), {
|
|
onChange: i,
|
|
modelValue: r,
|
|
indeterminate: s && !r
|
|
}, null);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
};
|
|
},
|
|
scrollTo(e) {
|
|
var a, n;
|
|
(n = (a = e.tableRef) == null ? void 0 : a.value) == null || n.scrollToTop(e.top);
|
|
},
|
|
onChange({
|
|
onSortChange: e,
|
|
onFilterChange: a,
|
|
bubbleUp: n
|
|
}) {
|
|
return {
|
|
onSortChange: (l) => {
|
|
const {
|
|
column: o,
|
|
prop: i,
|
|
order: r
|
|
} = l;
|
|
e && e({
|
|
isServerSort: i && o.sortable === "custom",
|
|
prop: i,
|
|
order: r,
|
|
asc: r === "ascending"
|
|
}), n((s) => {
|
|
s.onSortChange && s.onSortChange(l);
|
|
});
|
|
},
|
|
onFilterChange: (l) => {
|
|
a(l), n((o) => {
|
|
o.onFilterChange && o.onFilterChange(l);
|
|
});
|
|
}
|
|
};
|
|
}
|
|
}), this.textArea = t({
|
|
name: "el-input",
|
|
type: "textarea",
|
|
modelValue: "modelValue",
|
|
clearable: "clearable"
|
|
}), this.tag = t({
|
|
name: "el-tag",
|
|
type: "type",
|
|
colors: ["info", "success", "warning", "danger"]
|
|
}), this.inputGroup = t({
|
|
name: "el-input-group"
|
|
}), this.input = t({
|
|
name: "el-input",
|
|
clearable: "clearable",
|
|
modelValue: "modelValue"
|
|
}), this.inputPassword = t({
|
|
name: "el-input",
|
|
clearable: "clearable",
|
|
modelValue: "modelValue",
|
|
passwordType: {
|
|
showPassword: !0
|
|
}
|
|
}), this.number = t({
|
|
name: "el-input-number",
|
|
modelValue: "modelValue",
|
|
builder(e) {
|
|
return b(this, e, {});
|
|
}
|
|
}), this.datePicker = t({
|
|
name: "el-date-picker",
|
|
modelValue: "modelValue",
|
|
buildDateType(e) {
|
|
return {
|
|
name: "el-date-picker",
|
|
type: e
|
|
};
|
|
}
|
|
}), this.timePicker = t({
|
|
name: "el-time-picker",
|
|
modelValue: "modelValue"
|
|
}), this.dropdown = t({
|
|
name: "el-dropdown",
|
|
command(e) {
|
|
return {
|
|
onCommand(a) {
|
|
e(a);
|
|
}
|
|
};
|
|
},
|
|
slotName: "dropdown",
|
|
renderMode: "slot"
|
|
}), this.dropdownMenu = t({
|
|
name: "el-dropdown-menu",
|
|
command: () => ({})
|
|
}), this.dropdownItem = t({
|
|
name: "el-dropdown-item",
|
|
command: "command"
|
|
}), this.imageGroup = t({
|
|
name: "fs-box"
|
|
}), this.image = t({
|
|
name: "el-image",
|
|
buildPreviewBind: ({
|
|
url: e,
|
|
urls: a,
|
|
previewUrl: n,
|
|
previewUrls: l,
|
|
index: o
|
|
}) => ({
|
|
"preview-src-list": l,
|
|
"initial-index": o
|
|
}),
|
|
fallback: "error"
|
|
}), this.progress = t({
|
|
name: "el-progress"
|
|
}), this.loading = t({
|
|
name: "loading",
|
|
type: "directive"
|
|
}), this.upload = t({
|
|
id: "uid",
|
|
name: "el-upload",
|
|
type: "",
|
|
typeImageCard: "picture-card",
|
|
typeImage: "picture",
|
|
getStatusFromEvent(e) {
|
|
return e == null ? void 0 : e.status;
|
|
},
|
|
getFileListFromEvent(e, a, n) {
|
|
return n;
|
|
},
|
|
status: {
|
|
success: "success",
|
|
uploading: "uploading"
|
|
},
|
|
isSuccess(e) {
|
|
return e.status === "success";
|
|
},
|
|
limitAdd: 1
|
|
}), this.tabs = t({
|
|
name: "el-tabs",
|
|
modelValue: "modelValue",
|
|
tabChange: "tabChange"
|
|
}), this.tabPane = t({
|
|
name: "el-tab-pane",
|
|
key: "name",
|
|
tab: "label"
|
|
}), this.collapse = t({
|
|
name: "el-collapse",
|
|
modelValue: "modelValue",
|
|
keyName: "name"
|
|
}), this.collapseItem = t({
|
|
name: "el-collapse-item",
|
|
key: "name",
|
|
titleSlotName: "title",
|
|
/**
|
|
* element collapse只支持title插槽
|
|
*/
|
|
extraSlotName: "not_support_extra",
|
|
builder(e) {
|
|
return b(this, e, {
|
|
slots: {
|
|
[this.titleSlotName]() {
|
|
return w("div", {
|
|
class: "fsel-collapse-item-title fsel-flex-row space-between"
|
|
}, [w("span", {
|
|
class: "title-text"
|
|
}, [e.titleSlot(), O(" ")]), w("span", {
|
|
class: "title-extra"
|
|
}, [e.extraSlot()])]);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}), this.badge = t({
|
|
name: "el-badge",
|
|
value: "value",
|
|
dot: "isDot",
|
|
builder(e) {
|
|
return b(this, e, {
|
|
props: {
|
|
[this.value]: e.value
|
|
}
|
|
});
|
|
}
|
|
}), this.tooltip = t({
|
|
name: "el-tooltip",
|
|
content: "content",
|
|
trigger: "default"
|
|
}), this.divider = t({
|
|
name: "el-divider"
|
|
}), this.popover = t({
|
|
name: "el-popover",
|
|
contentSlotName: "default",
|
|
triggerSlotName: "reference",
|
|
visible: "visible"
|
|
}), p && (this.notification.instance = p.Notification, this.message.instance = p.Message, this.messageBox.instance = p.MessageBox);
|
|
}
|
|
}
|
|
const B = W;
|
|
function J(g) {
|
|
for (const p in B)
|
|
g.component(p, B[p]);
|
|
}
|
|
function M() {
|
|
const g = new A({
|
|
Message: I,
|
|
Notification: H,
|
|
MessageBox: E
|
|
});
|
|
return D.set(g), g;
|
|
}
|
|
const q = {
|
|
install(g, p = {}) {
|
|
return p.setupIcons !== !1 && J(g), M();
|
|
},
|
|
set: M
|
|
};
|
|
export {
|
|
A as Element,
|
|
q as default
|
|
};
|
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktZWxlbWVudC5tanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50LnRzeCIsIi4uLy4uL3NyYy9pY29ucy50cyIsIi4uLy4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6W251bGwsbnVsbCxudWxsXSwibmFtZXMiOlsidmVyc2lvbkdyZWF0ZXJUaGFuIiwidjEiLCJ2MiIsInYxUGFydHMiLCJzcGxpdCIsInYyUGFydHMiLCJpIiwibGVuZ3RoIiwidjFQYXJ0IiwicGFyc2VJbnQiLCJ2MlBhcnQiLCJzZWxlY3RPcHRpb25zUHJvcHNWZXJzaW9uIiwidmVyc2lvbiIsImJ1aWxkQmluZGluZyIsImNyZWF0b3IiLCJ1c2VVaVJlbmRlciIsIkVsZW1lbnQiLCJjb25zdHJ1Y3RvciIsInRhcmdldCIsInR5cGUiLCJtb2RlbFZhbHVlIiwic3dpdGNoIiwiYWN0aXZlQ29sb3IiLCJhY3RpdmVUZXh0IiwiYWN0aXZlVmFsdWUiLCJpbmFjdGl2ZUNvbG9yIiwiaW5hY3RpdmVUZXh0IiwiaW5hY3RpdmVWYWx1ZSIsIm5hbWUiLCJmb3JtV3JhcHBlciIsInZpc2libGUiLCJjdXN0b21DbGFzcyIsImlzIiwidGl0bGVTbG90TmFtZSIsImJ1aWxkT25DbG9zZWRCaW5kIiwib25DbG9zZWQiLCJidWlsZFdpZHRoQmluZCIsIndpZHRoIiwiYnVpbGRJbml0QmluZCIsImJ1aWxkSW5uZXJCaW5kIiwibWVzc2FnZUJveCIsImluc3RhbmNlIiwidW5kZWZpbmVkIiwib3BlbiIsImNvbnRleHQiLCJjb25maXJtIiwibWVzc2FnZSIsInN1Y2Nlc3MiLCJtc2ciLCJlcnJvciIsIndhcm4iLCJ3YXJuaW5nIiwiaW5mbyIsIm5vdGlmaWNhdGlvbiIsImljb24iLCJpc0NvbXBvbmVudCIsImljb25zIiwiYWRkIiwiY29sdW1uc0ZpbHRlciIsImNvbXBhY3QiLCJlZGl0IiwicmVtb3ZlIiwic2VhcmNoIiwicmVmcmVzaCIsImV4cG9ydCIsImNoZWNrIiwic29ydCIsImxlZnQiLCJyaWdodCIsImNsb3NlIiwiYXJyb3dMZWZ0IiwiYXJyb3dSaWdodCIsIm1vcmUiLCJwbHVzIiwiem9vbUluIiwiem9vbU91dCIsInJlZnJlc2hMZWZ0IiwicmVmcmVzaFJpZ2h0IiwidXBsb2FkIiwiZnVsbFNjcmVlbiIsInVuRnVsbFNjcmVlbiIsInF1ZXN0aW9uIiwiY2FyZXRVcCIsImNhcmV0RG93biIsImV5ZSIsImNvcHkiLCJkaWFsb2ciLCJmb290ZXJTbG90TmFtZSIsImZvb3RlciIsIm9wdHMiLCJFbERpYWxvZyIsImJ1aWxkZXIiLCJwcm9wcyIsInRpdGxlIiwic2xvdHMiLCJidXR0b25Hcm91cCIsImNvbCIsInJvdyIsImNhcmQiLCJjaGVja2JveEdyb3VwIiwiY2hlY2tib3giLCJyZXNvbHZlRXZlbnQiLCJlIiwidmFsdWUiLCJvbkNoYW5nZSIsImNhbGxiYWNrIiwiZHJhd2VyIiwiY29sbGFwc2VUcmFuc2l0aW9uIiwib3B0aW9uIiwibGFiZWwiLCJzZWxlY3QiLCJjbGVhcmFibGUiLCJmaWx0ZXJhYmxlIiwiZmllbGROYW1lcyIsIm5hbWVzTWFwIiwiYnVpbGRNdWx0aUJpbmRpbmciLCJtdWx0aXBsZSIsInRyZWVTZWxlY3QiLCJvcHRpb25zIiwiY2hpbGRyZW4iLCJidWlsZE9wdGlvbktleXNOYW1lQmluZGluZyIsInBhcmFtIiwicmFkaW8iLCJyYWRpb0J1dHRvbiIsInJhZGlvR3JvdXAiLCJjYXNjYWRlciIsImZvcm0iLCJpbmxpbmVMYXlvdXQiLCJsYXlvdXQiLCJpbmxpbmUiLCJ2YWxpZGF0ZVdyYXAiLCJmb3JtUmVmIiwidmFsaWRhdGUiLCJ0cmFuc2Zvcm1WYWxpZGF0ZUVycm9ycyIsImVycm9ycyIsImZvckVhY2giLCJpdGVtIiwia2V5IiwiZm9ybUl0ZW0iLCJwcm9wIiwicnVsZXMiLCJza2lwVmFsaWRhdGlvbldyYXBwZXIiLCJpbmplY3RGb3JtSXRlbUNvbnRleHQiLCJ1c2VGb3JtSXRlbSIsIm9uQmx1ciIsImJ1dHRvbiIsInRleHRUeXBlIiwidGV4dCIsImxpbmtUeXBlIiwibGluayIsImNpcmNsZSIsImNvbG9ycyIsInBhZ2luYXRpb24iLCJjdXJyZW50UGFnZSIsInRvdGFsIiwicGFnZUNvdW50Iiwic2V0Q3VycmVudFBhZ2UiLCJzZXRQYWdlU2l6ZSIsImRvQWZ0ZXJDaGFuZ2UiLCJvbkN1cnJlbnRDaGFuZ2UiLCJldmVudCIsIm9uU2l6ZUNoYW5nZSIsInRhYmxlQ29sdW1uIiwiaW5kZXgiLCJ0YWJsZUNvbHVtbkdyb3VwIiwidGFibGUiLCJkYXRhIiwicmVuZGVyTW9kZSIsImRlZmF1bHRSb3dLZXkiLCJmaXhlZEhlYWRlck5lZWRDb21wdXRlQm9keUhlaWdodCIsImJ1aWxkTWF4SGVpZ2h0IiwibWF4SGVpZ2h0IiwiaGFzTWF4SGVpZ2h0IiwiaGVhZGVyRG9tU2VsZWN0b3IiLCJ2TG9hZGluZyIsInNldFNlbGVjdGVkUm93cyIsInNlbGVjdGVkUm93S2V5cyIsInRhYmxlUmVmIiwiZ2V0Um93S2V5Iiwicm93S2V5IiwiY3VyU2VsZWN0ZWRSb3dzIiwibGluZUtleSIsImlzRnVuY3Rpb24iLCJwdXNoIiwidG9nZ2xlUm93U2VsZWN0aW9uIiwic2V0Q3VycmVudFJvdyIsImJ1aWxkU2VsZWN0aW9uQ3J1ZE9wdGlvbnMiLCJyZXEiLCJjb21wdXRlIiwidXNlQ29tcHV0ZSIsImdldENyb3NzUGFnZVNlbGVjdGVkIiwiY3VyU2VsZWN0ZWRJZHMiLCJnZXRQYWdlRGF0YSIsIm1hcElkIiwiY3VycmVudElkcyIsIm1hcCIsIkZ1bmN0aW9uIiwib3RoZXJQYWdlU2VsZWN0ZWQiLCJmaWx0ZXIiLCJpbmNsdWRlcyIsInVuaW9uIiwib25TZWxlY3Rpb25DaGFuZ2UiLCJjaGFuZ2VkUm93cyIsInNlbGVjdGVkS2V5cyIsImNyb3NzUGFnZSIsIm9uU2VsZWN0ZWRLZXlzQ2hhbmdlZCIsImNvbHVtbnMiLCIkY2hlY2tlZCIsInNob3ciLCJjb2x1bW4iLCJhbGlnbiIsIm9yZGVyIiwicmVzZXJ2ZVNlbGVjdGlvbiIsImNvbHVtblNldERpc2FibGVkIiwiY2hhbmdlZCIsImNvbXB1dGVkIiwiaGlnaGxpZ2h0Q3VycmVudFJvdyIsIiRzZWxlY3RlZCIsImNvbXBvbmVudCIsImN0eCIsImRlZmF1bHQiLCJjb25kaXRpb25hbFJlbmRlciIsIm1hdGNoIiwicmVidWlsZFJlbmRlclNjb3BlIiwic2NvcGUiLCJzY3JvbGxUbyIsInNldFNjcm9sbFRvcCIsInRvcCIsIm9uU29ydENoYW5nZSIsIm9uRmlsdGVyQ2hhbmdlIiwiYnViYmxlVXAiLCJpc1NlcnZlclNvcnQiLCJzb3J0YWJsZSIsImFzYyIsImV2ZW50cyIsImZpbHRlcnMiLCJ0YWJsZUNvbHVtblYyIiwidGFibGVDb2x1bW5Hcm91cFYyIiwidGFibGVWMiIsInJlbmRlck1ldGhvZCIsImNvbHVtbnNJc0ZsYXQiLCJidWlsZE11bHRpSGVhZGVyc0JpbmQiLCJmbGF0Q29sdW1ucyIsInRyZWVDb2x1bW5zIiwiZGVlcE9mQ29sdW1ucyIsImRlZXAiLCJtYXhEZWVwIiwiX3BhcmVudCIsIk1hdGgiLCJtYXgiLCJyZXMiLCJsaW5lSGVpZ2h0IiwiZmluZExlYWYiLCJwYXJlbnRzIiwibGVhZnMiLCJjb3VudExlYWZXaWR0aCIsImxlYWYiLCJiaW5kIiwiaGVhZGVySGVpZ2h0IiwiaGVhZGVyIiwiY2VsbHMiLCJoZWFkZXJJbmRleCIsImVsQ29sdW1uc01hcCIsImdyb3VwQ2VsbHMiLCJ1c2VkTGVhZktleXMiLCJidWlsZEhlYWRUcmVlIiwiX2NyZWF0ZVZOb2RlIiwiaGVpZ2h0IiwianVzdGlmeUNvbnRlbnQiLCJmaW5kVG9wUGFyZW50IiwicGFyZW50IiwicGxhY2Vob2xkZXJTaWduIiwiVGFibGVWMlBsYWNlaG9sZGVyIiwiaGVhZGVyQ2VsbCIsInJvd0luZGV4Iiwicm93RGF0YSIsInVucmVmIiwiZml4ZWQiLCJzZWxlY3Rpb25GaXhlZCIsImNlbGxSZW5kZXJlciIsImNoZWNrZWQiLCJfcmVzb2x2ZUNvbXBvbmVudCIsImhlYWRlckNlbGxSZW5kZXJlciIsIl9kYXRhIiwiYWxsU2VsZWN0ZWQiLCJldmVyeSIsImNvbnRhaW5zQ2hlY2tlZCIsInNvbWUiLCJzY3JvbGxUb1RvcCIsInRleHRBcmVhIiwidGFnIiwiaW5wdXRHcm91cCIsImlucHV0IiwiaW5wdXRQYXNzd29yZCIsInBhc3N3b3JkVHlwZSIsInNob3dQYXNzd29yZCIsIm51bWJlciIsImRhdGVQaWNrZXIiLCJidWlsZERhdGVUeXBlIiwidGltZVBpY2tlciIsImRyb3Bkb3duIiwiY29tbWFuZCIsIm9uQ29tbWFuZCIsIiRldmVudCIsInNsb3ROYW1lIiwiZHJvcGRvd25NZW51IiwiZHJvcGRvd25JdGVtIiwiaW1hZ2VHcm91cCIsImltYWdlIiwiYnVpbGRQcmV2aWV3QmluZCIsInVybCIsInVybHMiLCJwcmV2aWV3VXJsIiwicHJldmlld1VybHMiLCJmYWxsYmFjayIsInByb2dyZXNzIiwibG9hZGluZyIsImlkIiwidHlwZUltYWdlQ2FyZCIsInR5cGVJbWFnZSIsImdldFN0YXR1c0Zyb21FdmVudCIsInN0YXR1cyIsImdldEZpbGVMaXN0RnJvbUV2ZW50IiwicmVzcG9uc2UiLCJmaWxlIiwiZmlsZUxpc3QiLCJ1cGxvYWRpbmciLCJpc1N1Y2Nlc3MiLCJmaWxlSXRlbSIsImxpbWl0QWRkIiwidGFicyIsInRhYkNoYW5nZSIsInRhYlBhbmUiLCJ0YWIiLCJjb2xsYXBzZSIsImtleU5hbWUiLCJjb2xsYXBzZUl0ZW0iLCJleHRyYVNsb3ROYW1lIiwidGl0bGVTbG90IiwiX2NyZWF0ZVRleHRWTm9kZSIsImV4dHJhU2xvdCIsImJhZGdlIiwiZG90IiwidG9vbHRpcCIsImNvbnRlbnQiLCJ0cmlnZ2VyIiwiZGl2aWRlciIsInBvcG92ZXIiLCJjb250ZW50U2xvdE5hbWUiLCJ0cmlnZ2VyU2xvdE5hbWUiLCJOb3RpZmljYXRpb24iLCJNZXNzYWdlIiwiTWVzc2FnZUJveCIsImljb25zTGlzdCIsInNldHVwSWNvbnMiLCJhcHAiLCJzZXQiLCJlbGVtZW50VWkiLCJFbE1lc3NhZ2UiLCJFbE5vdGlmaWNhdGlvbiIsIkVsTWVzc2FnZUJveCIsInVpQ29udGV4dCJdLCJt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
|