@fmdevui/fm-dev 1.0.8 → 1.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/es/core/hook/useVxeTableOptionsHook.d.ts +3362 -0
- package/es/core/index.d.ts +1 -0
- package/es/index.mjs +1 -0
- package/es/packages/core/hook/useVxeTableOptionsHook.mjs +83 -0
- package/es/packages/core/index.mjs +1 -0
- package/index.js +2345 -182
- package/index.min.js +23 -23
- package/index.min.mjs +23 -23
- package/index.mjs +2346 -184
- package/lib/core/hook/useVxeTableOptionsHook.d.ts +3362 -0
- package/lib/core/index.d.ts +1 -0
- package/lib/index.js +2 -0
- package/lib/packages/core/hook/useVxeTableOptionsHook.js +85 -0
- package/lib/packages/core/index.js +2 -0
- package/package.json +1 -1
package/lib/core/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -32,6 +32,7 @@ var uploadfileurl = require('./packages/core/utils/comm/uploadfileurl.js');
|
|
|
32
32
|
var index$a = require('./packages/core/utils/const/index.js');
|
|
33
33
|
var index$b = require('./packages/core/auth/index.js');
|
|
34
34
|
var dateTimeShortCust = require('./packages/core/hook/dateTimeShortCust.js');
|
|
35
|
+
var useVxeTableOptionsHook = require('./packages/core/hook/useVxeTableOptionsHook.js');
|
|
35
36
|
|
|
36
37
|
const install = defaults.default.install;
|
|
37
38
|
|
|
@@ -127,4 +128,5 @@ exports.hAuth = index$b.hAuth;
|
|
|
127
128
|
exports.hAuthAll = index$b.hAuthAll;
|
|
128
129
|
exports.hAuths = index$b.hAuths;
|
|
129
130
|
exports.useDateTimeShortCust = dateTimeShortCust.useDateTimeShortCust;
|
|
131
|
+
exports.useVxeTable = useVxeTableOptionsHook.useVxeTable;
|
|
130
132
|
exports.install = install;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var vue = require('vue');
|
|
4
|
+
var elementPlus = require('element-plus');
|
|
5
|
+
require('../stores/index.js');
|
|
6
|
+
var lodashEs = require('lodash-es');
|
|
7
|
+
var themeConfig = require('../stores/themeConfig.js');
|
|
8
|
+
var inpinia = require('../stores/inpinia.js');
|
|
9
|
+
|
|
10
|
+
const vxeSize = themeConfig.useThemeConfig(inpinia.pinia).themeConfig.globalComponentSize == "small" ? "mini" : themeConfig.useThemeConfig(inpinia.pinia).themeConfig.globalComponentSize == "default" ? "small" : "medium";
|
|
11
|
+
const useVxeTable = (opt, extras) => {
|
|
12
|
+
opt.id = opt.id ? opt.id : String((/* @__PURE__ */ new Date()).getTime());
|
|
13
|
+
const options = vue.reactive({
|
|
14
|
+
id: opt.id,
|
|
15
|
+
height: "auto",
|
|
16
|
+
autoResize: true,
|
|
17
|
+
size: vxeSize,
|
|
18
|
+
loading: false,
|
|
19
|
+
align: "center",
|
|
20
|
+
// 自动监听父元素的变化去重新计算表格(对于父元素可能存在动态变化、显示隐藏的容器中、列宽异常等场景中的可能会用到)
|
|
21
|
+
// data: [] as Array<T>,
|
|
22
|
+
columns: opt.columns,
|
|
23
|
+
showFooter: opt.showFooter,
|
|
24
|
+
footerData: opt.footerData,
|
|
25
|
+
footerMethod: opt.footerMethod,
|
|
26
|
+
toolbarConfig: {
|
|
27
|
+
size: vxeSize,
|
|
28
|
+
slots: { buttons: "toolbar_buttons", tools: "toolbar_tools" },
|
|
29
|
+
refresh: {
|
|
30
|
+
code: "query"
|
|
31
|
+
},
|
|
32
|
+
export: true,
|
|
33
|
+
print: true,
|
|
34
|
+
zoom: true,
|
|
35
|
+
custom: true
|
|
36
|
+
},
|
|
37
|
+
checkboxConfig: { range: true },
|
|
38
|
+
// sortConfig: { trigger: 'cell', remote: true },
|
|
39
|
+
exportConfig: {
|
|
40
|
+
remote: false,
|
|
41
|
+
// 设置使用服务端导出
|
|
42
|
+
filename: `${opt.name}\u5BFC\u51FA_${elementPlus.dayjs().format("YYMMDDHHmmss")}`
|
|
43
|
+
},
|
|
44
|
+
pagerConfig: {
|
|
45
|
+
enabled: true,
|
|
46
|
+
size: vxeSize,
|
|
47
|
+
pageSize: 50
|
|
48
|
+
},
|
|
49
|
+
printConfig: { sheetName: "" },
|
|
50
|
+
customConfig: {
|
|
51
|
+
storage: {
|
|
52
|
+
// 是否启用 localStorage 本地保存,会将列操作状态保留在本地(需要有 id)
|
|
53
|
+
visible: true,
|
|
54
|
+
// 启用显示/隐藏列状态
|
|
55
|
+
resizable: true
|
|
56
|
+
// 启用列宽状态
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
if (opt.data) {
|
|
61
|
+
options.data = opt.data;
|
|
62
|
+
} else {
|
|
63
|
+
options.proxyConfig = {
|
|
64
|
+
enabled: true,
|
|
65
|
+
autoLoad: false,
|
|
66
|
+
sort: true,
|
|
67
|
+
props: {
|
|
68
|
+
list: "data.result",
|
|
69
|
+
// 全量
|
|
70
|
+
result: "data.result.items",
|
|
71
|
+
// 分页
|
|
72
|
+
total: "data.result.total",
|
|
73
|
+
message: "data.message"
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
if (opt.sortConfig) {
|
|
78
|
+
options.sortConfig = opt.sortConfig;
|
|
79
|
+
} else {
|
|
80
|
+
options.sortConfig = { remote: true };
|
|
81
|
+
}
|
|
82
|
+
return extras ? lodashEs.merge(options, extras) : options;
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
exports.useVxeTable = useVxeTable;
|
|
@@ -8,6 +8,7 @@ require('./stores/index.js');
|
|
|
8
8
|
require('./utils/index.js');
|
|
9
9
|
var index$b = require('./auth/index.js');
|
|
10
10
|
var dateTimeShortCust = require('./hook/dateTimeShortCust.js');
|
|
11
|
+
var useVxeTableOptionsHook = require('./hook/useVxeTableOptionsHook.js');
|
|
11
12
|
require('./types/index.js');
|
|
12
13
|
var index$1 = require('./api/base/index.js');
|
|
13
14
|
var index$2 = require('./api/sys/index.js');
|
|
@@ -49,6 +50,7 @@ exports.hAuth = index$b.hAuth;
|
|
|
49
50
|
exports.hAuthAll = index$b.hAuthAll;
|
|
50
51
|
exports.hAuths = index$b.hAuths;
|
|
51
52
|
exports.useDateTimeShortCust = dateTimeShortCust.useDateTimeShortCust;
|
|
53
|
+
exports.useVxeTable = useVxeTableOptionsHook.useVxeTable;
|
|
52
54
|
exports.useBaseApi = index$1.useBaseApi;
|
|
53
55
|
exports.feature = index$2.feature;
|
|
54
56
|
exports.useSysApi = index$2.useSysApi;
|