hy-dispatch-ui-v3 0.1.0
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/LICENSE +21 -0
- package/README.md +3 -0
- package/dist/tailwind.css +1083 -0
- package/es/bussiness/index.mjs +2 -0
- package/es/bussiness/index.mjs.map +1 -0
- package/es/components/appConfirmDialog/appConfirmDialog.vue.mjs +204 -0
- package/es/components/appConfirmDialog/appConfirmDialog.vue.mjs.map +1 -0
- package/es/components/appConfirmDialog/appConfirmMethod.mjs +73 -0
- package/es/components/appConfirmDialog/appConfirmMethod.mjs.map +1 -0
- package/es/components/appConfirmDialog/index.mjs +8 -0
- package/es/components/appConfirmDialog/index.mjs.map +1 -0
- package/es/components/appConfirmDialog/style/appConfirmDialog.scss +5 -0
- package/es/components/appDatePicker/appDatePicker.vue.mjs +99 -0
- package/es/components/appDatePicker/appDatePicker.vue.mjs.map +1 -0
- package/es/components/appDatePicker/index.mjs +7 -0
- package/es/components/appDatePicker/index.mjs.map +1 -0
- package/es/components/appDatePicker/style/appDatePicker.scss +0 -0
- package/es/components/appForm/appForm.vue.mjs +331 -0
- package/es/components/appForm/appForm.vue.mjs.map +1 -0
- package/es/components/appForm/index.mjs +8 -0
- package/es/components/appForm/index.mjs.map +1 -0
- package/es/components/appForm/js/index.mjs +87 -0
- package/es/components/appForm/js/index.mjs.map +1 -0
- package/es/components/appForm/js/useAppForm.mjs +149 -0
- package/es/components/appForm/js/useAppForm.mjs.map +1 -0
- package/es/components/appForm/style/appForm.scss +16 -0
- package/es/components/appOrgCascader/appOrgCascader.vue.mjs +229 -0
- package/es/components/appOrgCascader/appOrgCascader.vue.mjs.map +1 -0
- package/es/components/appOrgCascader/index.mjs +7 -0
- package/es/components/appOrgCascader/index.mjs.map +1 -0
- package/es/components/appOrgCascader/style/appOrgCascader.scss +0 -0
- package/es/components/appSearch/appSearch.vue.mjs +408 -0
- package/es/components/appSearch/appSearch.vue.mjs.map +1 -0
- package/es/components/appSearch/index.mjs +8 -0
- package/es/components/appSearch/index.mjs.map +1 -0
- package/es/components/appSearch/js/index.mjs +114 -0
- package/es/components/appSearch/js/index.mjs.map +1 -0
- package/es/components/appSearch/js/useAppSearch.mjs +178 -0
- package/es/components/appSearch/js/useAppSearch.mjs.map +1 -0
- package/es/components/appSearch/style/appSearch.scss +53 -0
- package/es/components/appTable/appTable.vue.mjs +578 -0
- package/es/components/appTable/appTable.vue.mjs.map +1 -0
- package/es/components/appTable/cpns/columnSelect.vue.mjs +414 -0
- package/es/components/appTable/cpns/columnSelect.vue.mjs.map +1 -0
- package/es/components/appTable/index.mjs +8 -0
- package/es/components/appTable/index.mjs.map +1 -0
- package/es/components/appTable/js/index.mjs +304 -0
- package/es/components/appTable/js/index.mjs.map +1 -0
- package/es/components/appTable/js/search.mjs +129 -0
- package/es/components/appTable/js/search.mjs.map +1 -0
- package/es/components/appTable/js/useAppTable.mjs +63 -0
- package/es/components/appTable/js/useAppTable.mjs.map +1 -0
- package/es/components/appTable/style/appTable.scss +15 -0
- package/es/components/appTooltip/appTooltip.vue.mjs +94 -0
- package/es/components/appTooltip/appTooltip.vue.mjs.map +1 -0
- package/es/components/appTooltip/index.mjs +7 -0
- package/es/components/appTooltip/index.mjs.map +1 -0
- package/es/components/appTooltip/style/appTooltip.scss +0 -0
- package/es/components/index.mjs +12 -0
- package/es/components/index.mjs.map +1 -0
- package/es/components/svgIcon/iconBox.vue.mjs +99 -0
- package/es/components/svgIcon/iconBox.vue.mjs.map +1 -0
- package/es/components/svgIcon/index.mjs +9 -0
- package/es/components/svgIcon/index.mjs.map +1 -0
- package/es/components/svgIcon/style/iconBox.scss +13 -0
- package/es/components/svgIcon/style/svgIcon.scss +12 -0
- package/es/components/svgIcon/svgIcon.vue.mjs +47 -0
- package/es/components/svgIcon/svgIcon.vue.mjs.map +1 -0
- package/es/config/index.mjs +2 -0
- package/es/config/index.mjs.map +1 -0
- package/es/constants/index.mjs +4 -0
- package/es/constants/index.mjs.map +1 -0
- package/es/constants/keys.mjs +2 -0
- package/es/constants/keys.mjs.map +1 -0
- package/es/hooks/index.mjs +5 -0
- package/es/hooks/index.mjs.map +1 -0
- package/es/hooks/useApi.mjs +10 -0
- package/es/hooks/useApi.mjs.map +1 -0
- package/es/hooks/useGlobalConfig.mjs +56 -0
- package/es/hooks/useGlobalConfig.mjs.map +1 -0
- package/es/hooks/useLocale.mjs +34 -0
- package/es/hooks/useLocale.mjs.map +1 -0
- package/es/hooks/useMixins.mjs +19 -0
- package/es/hooks/useMixins.mjs.map +1 -0
- package/es/index.mjs +30 -0
- package/es/index.mjs.map +1 -0
- package/es/locale/en_US.mjs +67 -0
- package/es/locale/en_US.mjs.map +1 -0
- package/es/locale/index.mjs +3 -0
- package/es/locale/index.mjs.map +1 -0
- package/es/locale/zh_CN.mjs +67 -0
- package/es/locale/zh_CN.mjs.map +1 -0
- package/es/make-installer.mjs +29 -0
- package/es/make-installer.mjs.map +1 -0
- package/es/store/index.mjs +7 -0
- package/es/store/index.mjs.map +1 -0
- package/es/store/maintain.mjs +90 -0
- package/es/store/maintain.mjs.map +1 -0
- package/es/style/index.scss +46 -0
- package/es/style/tailwind.scss +3 -0
- package/es/style/theme.scss +123 -0
- package/es/utils/adaptive.mjs +30 -0
- package/es/utils/adaptive.mjs.map +1 -0
- package/es/utils/bus.mjs +6 -0
- package/es/utils/bus.mjs.map +1 -0
- package/es/utils/crypto.mjs +21 -0
- package/es/utils/crypto.mjs.map +1 -0
- package/es/utils/date.mjs +25 -0
- package/es/utils/date.mjs.map +1 -0
- package/es/utils/handler.mjs +83 -0
- package/es/utils/handler.mjs.map +1 -0
- package/es/utils/index.mjs +7 -0
- package/es/utils/index.mjs.map +1 -0
- package/es/utils/is.mjs +19 -0
- package/es/utils/is.mjs.map +1 -0
- package/es/version.mjs +4 -0
- package/es/version.mjs.map +1 -0
- package/lib/bussiness/index.js +3 -0
- package/lib/bussiness/index.js.map +1 -0
- package/lib/components/appConfirmDialog/appConfirmDialog.vue.js +208 -0
- package/lib/components/appConfirmDialog/appConfirmDialog.vue.js.map +1 -0
- package/lib/components/appConfirmDialog/appConfirmMethod.js +77 -0
- package/lib/components/appConfirmDialog/appConfirmMethod.js.map +1 -0
- package/lib/components/appConfirmDialog/index.js +13 -0
- package/lib/components/appConfirmDialog/index.js.map +1 -0
- package/lib/components/appConfirmDialog/style/appConfirmDialog.scss +5 -0
- package/lib/components/appDatePicker/appDatePicker.vue.js +103 -0
- package/lib/components/appDatePicker/appDatePicker.vue.js.map +1 -0
- package/lib/components/appDatePicker/index.js +12 -0
- package/lib/components/appDatePicker/index.js.map +1 -0
- package/lib/components/appDatePicker/style/appDatePicker.scss +0 -0
- package/lib/components/appForm/appForm.vue.js +335 -0
- package/lib/components/appForm/appForm.vue.js.map +1 -0
- package/lib/components/appForm/index.js +14 -0
- package/lib/components/appForm/index.js.map +1 -0
- package/lib/components/appForm/js/index.js +93 -0
- package/lib/components/appForm/js/index.js.map +1 -0
- package/lib/components/appForm/js/useAppForm.js +152 -0
- package/lib/components/appForm/js/useAppForm.js.map +1 -0
- package/lib/components/appForm/style/appForm.scss +16 -0
- package/lib/components/appOrgCascader/appOrgCascader.vue.js +233 -0
- package/lib/components/appOrgCascader/appOrgCascader.vue.js.map +1 -0
- package/lib/components/appOrgCascader/index.js +12 -0
- package/lib/components/appOrgCascader/index.js.map +1 -0
- package/lib/components/appOrgCascader/style/appOrgCascader.scss +0 -0
- package/lib/components/appSearch/appSearch.vue.js +412 -0
- package/lib/components/appSearch/appSearch.vue.js.map +1 -0
- package/lib/components/appSearch/index.js +14 -0
- package/lib/components/appSearch/index.js.map +1 -0
- package/lib/components/appSearch/js/index.js +122 -0
- package/lib/components/appSearch/js/index.js.map +1 -0
- package/lib/components/appSearch/js/useAppSearch.js +181 -0
- package/lib/components/appSearch/js/useAppSearch.js.map +1 -0
- package/lib/components/appSearch/style/appSearch.scss +53 -0
- package/lib/components/appTable/appTable.vue.js +582 -0
- package/lib/components/appTable/appTable.vue.js.map +1 -0
- package/lib/components/appTable/cpns/columnSelect.vue.js +418 -0
- package/lib/components/appTable/cpns/columnSelect.vue.js.map +1 -0
- package/lib/components/appTable/index.js +14 -0
- package/lib/components/appTable/index.js.map +1 -0
- package/lib/components/appTable/js/index.js +311 -0
- package/lib/components/appTable/js/index.js.map +1 -0
- package/lib/components/appTable/js/search.js +131 -0
- package/lib/components/appTable/js/search.js.map +1 -0
- package/lib/components/appTable/js/useAppTable.js +65 -0
- package/lib/components/appTable/js/useAppTable.js.map +1 -0
- package/lib/components/appTable/style/appTable.scss +15 -0
- package/lib/components/appTooltip/appTooltip.vue.js +98 -0
- package/lib/components/appTooltip/appTooltip.vue.js.map +1 -0
- package/lib/components/appTooltip/index.js +12 -0
- package/lib/components/appTooltip/index.js.map +1 -0
- package/lib/components/appTooltip/style/appTooltip.scss +0 -0
- package/lib/components/index.js +29 -0
- package/lib/components/index.js.map +1 -0
- package/lib/components/svgIcon/iconBox.vue.js +103 -0
- package/lib/components/svgIcon/iconBox.vue.js.map +1 -0
- package/lib/components/svgIcon/index.js +15 -0
- package/lib/components/svgIcon/index.js.map +1 -0
- package/lib/components/svgIcon/style/iconBox.scss +13 -0
- package/lib/components/svgIcon/style/svgIcon.scss +12 -0
- package/lib/components/svgIcon/svgIcon.vue.js +51 -0
- package/lib/components/svgIcon/svgIcon.vue.js.map +1 -0
- package/lib/config/index.js +3 -0
- package/lib/config/index.js.map +1 -0
- package/lib/constants/index.js +6 -0
- package/lib/constants/index.js.map +1 -0
- package/lib/constants/keys.js +3 -0
- package/lib/constants/keys.js.map +1 -0
- package/lib/hooks/index.js +21 -0
- package/lib/hooks/index.js.map +1 -0
- package/lib/hooks/useApi.js +13 -0
- package/lib/hooks/useApi.js.map +1 -0
- package/lib/hooks/useGlobalConfig.js +59 -0
- package/lib/hooks/useGlobalConfig.js.map +1 -0
- package/lib/hooks/useLocale.js +41 -0
- package/lib/hooks/useLocale.js.map +1 -0
- package/lib/hooks/useMixins.js +21 -0
- package/lib/hooks/useMixins.js.map +1 -0
- package/lib/index.js +85 -0
- package/lib/index.js.map +1 -0
- package/lib/locale/en_US.js +71 -0
- package/lib/locale/en_US.js.map +1 -0
- package/lib/locale/index.js +10 -0
- package/lib/locale/index.js.map +1 -0
- package/lib/locale/zh_CN.js +71 -0
- package/lib/locale/zh_CN.js.map +1 -0
- package/lib/make-installer.js +33 -0
- package/lib/make-installer.js.map +1 -0
- package/lib/store/index.js +10 -0
- package/lib/store/index.js.map +1 -0
- package/lib/store/maintain.js +92 -0
- package/lib/store/maintain.js.map +1 -0
- package/lib/style/index.scss +46 -0
- package/lib/style/tailwind.scss +3 -0
- package/lib/style/theme.scss +123 -0
- package/lib/utils/adaptive.js +35 -0
- package/lib/utils/adaptive.js.map +1 -0
- package/lib/utils/bus.js +8 -0
- package/lib/utils/bus.js.map +1 -0
- package/lib/utils/crypto.js +25 -0
- package/lib/utils/crypto.js.map +1 -0
- package/lib/utils/date.js +27 -0
- package/lib/utils/date.js.map +1 -0
- package/lib/utils/handler.js +89 -0
- package/lib/utils/handler.js.map +1 -0
- package/lib/utils/index.js +38 -0
- package/lib/utils/index.js.map +1 -0
- package/lib/utils/is.js +32 -0
- package/lib/utils/is.js.map +1 -0
- package/lib/version.js +6 -0
- package/lib/version.js.map +1 -0
- package/package.json +102 -0
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
import { ref, computed, watchEffect, unref, nextTick } from 'vue';
|
|
2
|
+
import { ElLoading } from 'element-plus';
|
|
3
|
+
import { isString, isBoolean, isFunction, isArray, isNumber } from '../../../utils/is.mjs';
|
|
4
|
+
import { useLocale } from '../../../hooks/useLocale.mjs';
|
|
5
|
+
|
|
6
|
+
function tableColumnShowHandler(column) {
|
|
7
|
+
const show = unref(column.show);
|
|
8
|
+
if (isBoolean(show)) return show;
|
|
9
|
+
if (isFunction(show)) return show(column);
|
|
10
|
+
return true;
|
|
11
|
+
}
|
|
12
|
+
function tableColumnsEditableleHandler(columns, columnsEditablele, searchArr) {
|
|
13
|
+
const searchLabelSet = /* @__PURE__ */ new Set();
|
|
14
|
+
const columnsEditableleObj = {};
|
|
15
|
+
for (const column of columns) {
|
|
16
|
+
const { editable } = column;
|
|
17
|
+
const columnsEditableleItem = columnsEditablele[column.prop] || editable;
|
|
18
|
+
const { index } = columnsEditableleItem;
|
|
19
|
+
if (!columnsEditableleObj[index]) {
|
|
20
|
+
columnsEditableleObj[index] = [];
|
|
21
|
+
}
|
|
22
|
+
columnsEditableleObj[index].push({
|
|
23
|
+
...columnsEditableleItem,
|
|
24
|
+
column
|
|
25
|
+
});
|
|
26
|
+
if (column.isSearch) {
|
|
27
|
+
searchLabelSet.add(column.label);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
if ((searchArr == null ? void 0 : searchArr.length) > 0) {
|
|
31
|
+
searchArr.forEach((item) => {
|
|
32
|
+
searchLabelSet.add(item.label);
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
return Object.keys(columnsEditableleObj).reduce(
|
|
36
|
+
({ columnsEditablele: columnsEditablele2, columnsList, searchText }, key) => {
|
|
37
|
+
const list = columnsEditableleObj[key];
|
|
38
|
+
for (let i = 0; i < list.length; i++) {
|
|
39
|
+
const target = list[i];
|
|
40
|
+
columnsEditablele2[target.column.prop] = {
|
|
41
|
+
...target,
|
|
42
|
+
index: columnsList.length + i
|
|
43
|
+
};
|
|
44
|
+
columnsList.push(target.column);
|
|
45
|
+
}
|
|
46
|
+
return { columnsEditablele: columnsEditablele2, columnsList, searchText };
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
columnsEditablele: {},
|
|
50
|
+
columnsList: [],
|
|
51
|
+
searchText: Array.from(searchLabelSet.values()).join("\u3001")
|
|
52
|
+
}
|
|
53
|
+
);
|
|
54
|
+
}
|
|
55
|
+
function tableColumnHandler(cacheKey, columns, searchArr) {
|
|
56
|
+
const cacheColumnsValue = JSON.parse(sessionStorage.getItem(cacheKey) || "{}");
|
|
57
|
+
const cacheColumnsEditablele = columns.reduce((obj, column) => {
|
|
58
|
+
obj[column.prop] = {
|
|
59
|
+
...column.editable,
|
|
60
|
+
...cacheColumnsValue[column.prop],
|
|
61
|
+
lock: column.editable.lock,
|
|
62
|
+
edit: column.editable.edit
|
|
63
|
+
};
|
|
64
|
+
return obj;
|
|
65
|
+
}, {});
|
|
66
|
+
return tableColumnsEditableleHandler(
|
|
67
|
+
columns,
|
|
68
|
+
cacheColumnsEditablele,
|
|
69
|
+
searchArr
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
function operatorShowHandler(operator, scope) {
|
|
73
|
+
const show = unref(operator.show);
|
|
74
|
+
if (isBoolean(show)) return show;
|
|
75
|
+
if (isFunction(show)) return show(scope);
|
|
76
|
+
return true;
|
|
77
|
+
}
|
|
78
|
+
function operatorDisabledHandler(column, scope) {
|
|
79
|
+
const { disabled } = column;
|
|
80
|
+
if (isBoolean(disabled)) return disabled;
|
|
81
|
+
if (isFunction(disabled)) return disabled(scope);
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
function operatorDisableTextdHandler(column, scope) {
|
|
85
|
+
const { t } = useLocale();
|
|
86
|
+
const { disabledText } = column;
|
|
87
|
+
if (isString(disabledText)) return disabledText;
|
|
88
|
+
if (isFunction(disabledText)) return disabledText(scope);
|
|
89
|
+
return t("table.nonsupport");
|
|
90
|
+
}
|
|
91
|
+
function operatorFilterHandler(column, scope, type = "all") {
|
|
92
|
+
let { width } = column;
|
|
93
|
+
width = isString(width) ? Number(width.replace(/[a-zA-Z]+/g, "")) : width;
|
|
94
|
+
const operator = (column.operator || []).filter(
|
|
95
|
+
(item) => operatorShowHandler(item, scope)
|
|
96
|
+
);
|
|
97
|
+
if (type === "all" || operator.length <= 1 && type === "default") {
|
|
98
|
+
return operator;
|
|
99
|
+
}
|
|
100
|
+
const btnWidth = 28;
|
|
101
|
+
const gapWidth = 12;
|
|
102
|
+
const operatorCount = Math.floor((width - 12 * 2) / (btnWidth + gapWidth));
|
|
103
|
+
if (operatorCount === operator.length) {
|
|
104
|
+
return type === "default" ? operator : [];
|
|
105
|
+
}
|
|
106
|
+
if (type === "default") {
|
|
107
|
+
return operator.slice(0, operatorCount - 1);
|
|
108
|
+
} else {
|
|
109
|
+
return operator.slice(operatorCount - 1);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
function operatorClickHandler(command, column, scope, type = "all") {
|
|
113
|
+
const operator = operatorFilterHandler(column, scope, type);
|
|
114
|
+
const target = operator[command];
|
|
115
|
+
(target == null ? void 0 : target.onClick) && target.onClick(scope);
|
|
116
|
+
}
|
|
117
|
+
const useAppTableWrapper = (hy) => {
|
|
118
|
+
const {
|
|
119
|
+
props,
|
|
120
|
+
emits,
|
|
121
|
+
containerRef,
|
|
122
|
+
tableRef,
|
|
123
|
+
tableDropdownRef,
|
|
124
|
+
operatorDropdownRef
|
|
125
|
+
} = hy;
|
|
126
|
+
const { t } = useLocale();
|
|
127
|
+
const CACHE_COLUMNS_KEY = "CACHE_COLUMNS_KEY";
|
|
128
|
+
const loading = ref(true);
|
|
129
|
+
const tableDataSource = ref([]);
|
|
130
|
+
const tableColumns = ref([]);
|
|
131
|
+
const tableColumnsEditablele = ref({});
|
|
132
|
+
const searchPlaceholder = ref("");
|
|
133
|
+
function getRowKey(row = {}) {
|
|
134
|
+
if (isString(props.rowKey)) return row[props.rowKey];
|
|
135
|
+
if (isFunction(props.rowKey)) return props.rowKey(row);
|
|
136
|
+
return row.id;
|
|
137
|
+
}
|
|
138
|
+
function onTableColumnsSelectHandler(value) {
|
|
139
|
+
const { columnsEditablele, columnsList, searchText } = tableColumnsEditableleHandler(props.tableColumns, value, props.searchArr);
|
|
140
|
+
tableColumns.value = columnsList;
|
|
141
|
+
tableColumnsEditablele.value = columnsEditablele;
|
|
142
|
+
searchPlaceholder.value = searchText;
|
|
143
|
+
sessionStorage.setItem(CACHE_COLUMNS_KEY, JSON.stringify(value));
|
|
144
|
+
}
|
|
145
|
+
function doLayout() {
|
|
146
|
+
var _a;
|
|
147
|
+
(_a = tableRef.value) == null ? void 0 : _a.doLayout();
|
|
148
|
+
}
|
|
149
|
+
let loadingInstance, loadingTimer;
|
|
150
|
+
function showAppTableLoading() {
|
|
151
|
+
if (loadingInstance || !props.showLoading) return;
|
|
152
|
+
closeAppTableLoading();
|
|
153
|
+
loadingInstance = ElLoading.service({
|
|
154
|
+
target: containerRef.value,
|
|
155
|
+
body: false,
|
|
156
|
+
fullscreen: false,
|
|
157
|
+
text: t("hy.loading"),
|
|
158
|
+
lock: true,
|
|
159
|
+
// spinner: 'el-icon-loading',
|
|
160
|
+
background: "rgba(0, 0, 0, 0.8)"
|
|
161
|
+
});
|
|
162
|
+
loadingTimer = setTimeout(() => {
|
|
163
|
+
closeAppTableLoading();
|
|
164
|
+
}, 60 * 1e3);
|
|
165
|
+
}
|
|
166
|
+
function closeAppTableLoading() {
|
|
167
|
+
loadingTimer && clearTimeout(loadingTimer);
|
|
168
|
+
loadingInstance == null ? void 0 : loadingInstance.close();
|
|
169
|
+
loadingInstance = null;
|
|
170
|
+
}
|
|
171
|
+
const tableTriggerPosition = ref({
|
|
172
|
+
top: 0,
|
|
173
|
+
left: 0,
|
|
174
|
+
bottom: 0,
|
|
175
|
+
right: 0
|
|
176
|
+
});
|
|
177
|
+
const tableTriggerRef = ref({
|
|
178
|
+
column: {},
|
|
179
|
+
scope: {},
|
|
180
|
+
getBoundingClientRect: () => tableTriggerPosition.value
|
|
181
|
+
});
|
|
182
|
+
function onTableRowContextmenuHandler(row, _, event) {
|
|
183
|
+
var _a, _b;
|
|
184
|
+
if (props.onRowContextmenu) {
|
|
185
|
+
props.onRowContextmenu(row, _, event);
|
|
186
|
+
return;
|
|
187
|
+
}
|
|
188
|
+
const { clientX, clientY } = event;
|
|
189
|
+
tableTriggerPosition.value = DOMRect.fromRect({
|
|
190
|
+
x: clientX,
|
|
191
|
+
y: clientY
|
|
192
|
+
});
|
|
193
|
+
const column = tableColumns.value.find(
|
|
194
|
+
(column2) => column2.prop === "operator"
|
|
195
|
+
);
|
|
196
|
+
const operator = operatorFilterHandler(column, { row });
|
|
197
|
+
if (!(operator == null ? void 0 : operator.length)) return;
|
|
198
|
+
tableTriggerRef.value.column = column;
|
|
199
|
+
tableTriggerRef.value.scope = { row };
|
|
200
|
+
event.preventDefault();
|
|
201
|
+
(_a = tableDropdownRef.value) == null ? void 0 : _a.handleOpen();
|
|
202
|
+
if (isArray(operatorDropdownRef.value)) {
|
|
203
|
+
operatorDropdownRef.value.forEach((item) => item.handleClose());
|
|
204
|
+
} else {
|
|
205
|
+
(_b = operatorDropdownRef.value) == null ? void 0 : _b.handleClose();
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
const selectedList = ref([]);
|
|
209
|
+
const selectedMap = computed(() => {
|
|
210
|
+
return (selectedList.value || []).reduce((map, row, index) => {
|
|
211
|
+
map.set(getRowKey(row), index);
|
|
212
|
+
return map;
|
|
213
|
+
}, /* @__PURE__ */ new Map());
|
|
214
|
+
});
|
|
215
|
+
function isSelectable(row) {
|
|
216
|
+
const column = tableColumns.value.find((column2) => {
|
|
217
|
+
return column2.type === "selection";
|
|
218
|
+
});
|
|
219
|
+
if (!isFunction(column == null ? void 0 : column.selectable)) return true;
|
|
220
|
+
return column.selectable(row);
|
|
221
|
+
}
|
|
222
|
+
function getSelectedIndex(row) {
|
|
223
|
+
let index = selectedMap.value.get(getRowKey(row));
|
|
224
|
+
return isNumber(index) ? index : -1;
|
|
225
|
+
}
|
|
226
|
+
function clearSelection() {
|
|
227
|
+
var _a;
|
|
228
|
+
(_a = tableRef.value) == null ? void 0 : _a.clearSelection();
|
|
229
|
+
}
|
|
230
|
+
function getSelectedList() {
|
|
231
|
+
return selectedList.value;
|
|
232
|
+
}
|
|
233
|
+
async function onTableRowClickHandler(row) {
|
|
234
|
+
emits("row-click", row);
|
|
235
|
+
if (tableColumns.value.some((column) => column.type === "expand")) {
|
|
236
|
+
tableRef.value.toggleRowExpansion(row);
|
|
237
|
+
}
|
|
238
|
+
if (!isSelectable(row)) return;
|
|
239
|
+
if (tableColumns.value.some((column) => column.type === "selection")) {
|
|
240
|
+
tableRef.value.toggleRowSelection(row);
|
|
241
|
+
const index = getSelectedIndex(row);
|
|
242
|
+
if (index !== -1) {
|
|
243
|
+
selectedList.value.splice(index, 1);
|
|
244
|
+
} else {
|
|
245
|
+
selectedList.value.push(row);
|
|
246
|
+
}
|
|
247
|
+
await nextTick();
|
|
248
|
+
emits("on-select-checkbox", selectedList.value, row);
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
function onTableSelectAllHandler(selectList = [], row) {
|
|
252
|
+
if (selectList.length === 0 && tableDataSource.value.length === 0) {
|
|
253
|
+
tableRef.value.clearSelection();
|
|
254
|
+
}
|
|
255
|
+
selectedList.value = [...selectList];
|
|
256
|
+
emits("on-select-checkbox", [...selectList], row);
|
|
257
|
+
}
|
|
258
|
+
function setTableRowClassName(obj) {
|
|
259
|
+
const row = obj.row;
|
|
260
|
+
let className = [];
|
|
261
|
+
if (props.rowClassName) {
|
|
262
|
+
className.push(props.rowClassName(obj));
|
|
263
|
+
}
|
|
264
|
+
if (getSelectedIndex(row) !== -1) {
|
|
265
|
+
className.push("selected");
|
|
266
|
+
}
|
|
267
|
+
return className.filter(Boolean).join(" ");
|
|
268
|
+
}
|
|
269
|
+
watchEffect(() => {
|
|
270
|
+
const { columnsList, columnsEditablele, searchText } = tableColumnHandler(
|
|
271
|
+
CACHE_COLUMNS_KEY,
|
|
272
|
+
props.tableColumns,
|
|
273
|
+
props.searchArr
|
|
274
|
+
);
|
|
275
|
+
tableColumns.value = columnsList;
|
|
276
|
+
tableColumnsEditablele.value = columnsEditablele;
|
|
277
|
+
searchPlaceholder.value = searchText;
|
|
278
|
+
});
|
|
279
|
+
return {
|
|
280
|
+
// 表格配置项
|
|
281
|
+
loading,
|
|
282
|
+
tableDataSource,
|
|
283
|
+
tableColumns,
|
|
284
|
+
tableColumnsEditablele,
|
|
285
|
+
searchPlaceholder,
|
|
286
|
+
doLayout,
|
|
287
|
+
showAppTableLoading,
|
|
288
|
+
closeAppTableLoading,
|
|
289
|
+
// 表格行操作配置
|
|
290
|
+
getRowKey,
|
|
291
|
+
selectedList,
|
|
292
|
+
tableTriggerRef,
|
|
293
|
+
setTableRowClassName,
|
|
294
|
+
onTableSelectAllHandler,
|
|
295
|
+
onTableRowContextmenuHandler,
|
|
296
|
+
onTableRowClickHandler,
|
|
297
|
+
onTableColumnsSelectHandler,
|
|
298
|
+
getSelectedList,
|
|
299
|
+
clearSelection
|
|
300
|
+
};
|
|
301
|
+
};
|
|
302
|
+
|
|
303
|
+
export { operatorClickHandler, operatorDisableTextdHandler, operatorDisabledHandler, operatorFilterHandler, tableColumnShowHandler, useAppTableWrapper };
|
|
304
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../packages/components/appTable/js/index.js"],"sourcesContent":["import { nextTick, ref, computed, watchEffect, unref } from 'vue'\nimport { ElLoading } from 'element-plus'\nimport { useLocale } from '@hy-dispatch-ui-v3/hooks'\nimport {\n isNumber,\n isArray,\n isBoolean,\n isFunction,\n isString,\n} from '@hy-dispatch-ui-v3/utils'\n\nexport function tableColumnShowHandler(column) {\n const show = unref(column.show)\n if (isBoolean(show)) return show\n if (isFunction(show)) return show(column)\n return true\n}\n\n// 表格列排序处理\nfunction tableColumnsEditableleHandler(columns, columnsEditablele, searchArr) {\n const searchLabelSet = new Set()\n const columnsEditableleObj = {}\n for (const column of columns) {\n const { editable } = column\n // 获取当前项缓存排序\n const columnsEditableleItem = columnsEditablele[column.prop] || editable\n const { index } = columnsEditableleItem\n if (!columnsEditableleObj[index]) {\n columnsEditableleObj[index] = []\n }\n columnsEditableleObj[index].push({\n ...columnsEditableleItem,\n column,\n })\n // 处理搜索的placeholder\n if (column.isSearch) {\n searchLabelSet.add(column.label)\n }\n }\n if (searchArr?.length > 0) {\n searchArr.forEach((item) => {\n searchLabelSet.add(item.label)\n })\n }\n return Object.keys(columnsEditableleObj).reduce(\n ({ columnsEditablele, columnsList, searchText }, key) => {\n const list = columnsEditableleObj[key]\n for (let i = 0; i < list.length; i++) {\n const target = list[i]\n columnsEditablele[target.column.prop] = {\n ...target,\n index: columnsList.length + i,\n }\n columnsList.push(target.column)\n }\n return { columnsEditablele, columnsList, searchText }\n },\n {\n columnsEditablele: {},\n columnsList: [],\n searchText: Array.from(searchLabelSet.values()).join('、'),\n }\n )\n}\n\n// 表格columns处理器\nfunction tableColumnHandler(cacheKey, columns, searchArr) {\n const cacheColumnsValue = JSON.parse(sessionStorage.getItem(cacheKey) || '{}')\n const cacheColumnsEditablele = columns.reduce((obj, column) => {\n obj[column.prop] = {\n ...column.editable,\n ...cacheColumnsValue[column.prop],\n lock: column.editable.lock,\n edit: column.editable.edit,\n }\n return obj\n }, {})\n\n return tableColumnsEditableleHandler(\n columns,\n cacheColumnsEditablele,\n searchArr\n )\n}\n\n// 操作选项显示处理\nfunction operatorShowHandler(operator, scope) {\n const show = unref(operator.show)\n if (isBoolean(show)) return show\n if (isFunction(show)) return show(scope)\n return true\n}\n\n// 操作选项禁用字段处理\nexport function operatorDisabledHandler(column, scope) {\n const { disabled } = column\n if (isBoolean(disabled)) return disabled\n if (isFunction(disabled)) return disabled(scope)\n return false\n}\n\n// 操作选项禁用处理\nexport function operatorDisableTextdHandler(column, scope) {\n const { t } = useLocale()\n const { disabledText } = column\n if (isString(disabledText)) return disabledText\n if (isFunction(disabledText)) return disabledText(scope)\n return t('table.nonsupport')\n}\n\n// 过滤出操作选项,type:default-默认未超出不隐藏 more-超出隐藏 all-全部\nexport function operatorFilterHandler(column, scope, type = 'all') {\n let { width } = column\n width = isString(width) ? Number(width.replace(/[a-zA-Z]+/g, '')) : width\n const operator = (column.operator || []).filter((item) =>\n operatorShowHandler(item, scope)\n )\n if (type === 'all' || (operator.length <= 1 && type === 'default')) {\n return operator\n }\n const btnWidth = 28\n const gapWidth = 12\n const operatorCount = Math.floor((width - 12 * 2) / (btnWidth + gapWidth))\n if (operatorCount === operator.length) {\n return type === 'default' ? operator : []\n }\n if (type === 'default') {\n return operator.slice(0, operatorCount - 1)\n } else {\n return operator.slice(operatorCount - 1)\n }\n}\n\n// 操作选项触发处理\nexport function operatorClickHandler(command, column, scope, type = 'all') {\n const operator = operatorFilterHandler(column, scope, type)\n const target = operator[command]\n target?.onClick && target.onClick(scope)\n}\n\nexport const useAppTableWrapper = (hy) => {\n const {\n props,\n emits,\n containerRef,\n tableRef,\n tableDropdownRef,\n operatorDropdownRef,\n } = hy\n\n const { t } = useLocale()\n\n // 表格配置\n const CACHE_COLUMNS_KEY = 'CACHE_COLUMNS_KEY'\n const loading = ref(true)\n const tableDataSource = ref([])\n const tableColumns = ref([])\n const tableColumnsEditablele = ref({})\n const searchPlaceholder = ref('')\n function getRowKey(row = {}) {\n if (isString(props.rowKey)) return row[props.rowKey]\n if (isFunction(props.rowKey)) return props.rowKey(row)\n return row.id\n }\n function onTableColumnsSelectHandler(value) {\n const { columnsEditablele, columnsList, searchText } =\n tableColumnsEditableleHandler(props.tableColumns, value, props.searchArr)\n tableColumns.value = columnsList\n tableColumnsEditablele.value = columnsEditablele\n searchPlaceholder.value = searchText\n sessionStorage.setItem(CACHE_COLUMNS_KEY, JSON.stringify(value))\n }\n function doLayout() {\n tableRef.value?.doLayout()\n }\n // 表格加载处理\n let loadingInstance, loadingTimer\n function showAppTableLoading() {\n if (loadingInstance || !props.showLoading) return\n closeAppTableLoading()\n loadingInstance = ElLoading.service({\n target: containerRef.value,\n body: false,\n fullscreen: false,\n text: t('hy.loading'),\n lock: true,\n // spinner: 'el-icon-loading',\n background: 'rgba(0, 0, 0, 0.8)',\n })\n loadingTimer = setTimeout(() => {\n closeAppTableLoading()\n }, 60 * 1000)\n }\n function closeAppTableLoading() {\n loadingTimer && clearTimeout(loadingTimer)\n loadingInstance?.close()\n loadingInstance = null\n }\n\n // 表格行右击\n const tableTriggerPosition = ref({\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n })\n const tableTriggerRef = ref({\n column: {},\n scope: {},\n getBoundingClientRect: () => tableTriggerPosition.value,\n })\n function onTableRowContextmenuHandler(row, _, event) {\n if (props.onRowContextmenu) {\n props.onRowContextmenu(row, _, event)\n return\n }\n const { clientX, clientY } = event\n tableTriggerPosition.value = DOMRect.fromRect({\n x: clientX,\n y: clientY,\n })\n const column = tableColumns.value.find(\n (column) => column.prop === 'operator'\n )\n const operator = operatorFilterHandler(column, { row })\n if (!operator?.length) return\n tableTriggerRef.value.column = column\n tableTriggerRef.value.scope = { row }\n event.preventDefault()\n tableDropdownRef.value?.handleOpen()\n if (isArray(operatorDropdownRef.value)) {\n operatorDropdownRef.value.forEach((item) => item.handleClose())\n } else {\n operatorDropdownRef.value?.handleClose()\n }\n }\n\n // 表格选中\n const selectedList = ref([]) // 已选中列表\n const selectedMap = computed(() => {\n return (selectedList.value || []).reduce((map, row, index) => {\n map.set(getRowKey(row), index)\n return map\n }, new Map())\n })\n // 是否已选中\n function isSelectable(row) {\n const column = tableColumns.value.find((column) => {\n return column.type === 'selection'\n })\n if (!isFunction(column?.selectable)) return true\n return column.selectable(row)\n }\n // 获取当前选中列表下标\n function getSelectedIndex(row) {\n let index = selectedMap.value.get(getRowKey(row))\n return isNumber(index) ? index : -1\n }\n // 清除选中\n function clearSelection() {\n tableRef.value?.clearSelection()\n }\n // 获取选中列表\n function getSelectedList() {\n return selectedList.value\n }\n // 点击行处理\n async function onTableRowClickHandler(row) {\n emits('row-click', row)\n // 判断是否有展开配置,并处理\n if (tableColumns.value.some((column) => column.type === 'expand')) {\n tableRef.value.toggleRowExpansion(row)\n }\n // 判断是否可以选中\n if (!isSelectable(row)) return\n // 判断是否有选中配置,并处理\n if (tableColumns.value.some((column) => column.type === 'selection')) {\n tableRef.value.toggleRowSelection(row)\n\n const index = getSelectedIndex(row)\n if (index !== -1) {\n selectedList.value.splice(index, 1)\n } else {\n selectedList.value.push(row)\n }\n await nextTick()\n emits('on-select-checkbox', selectedList.value, row)\n }\n }\n // 全选择时触发的事件\n function onTableSelectAllHandler(selectList = [], row) {\n if (selectList.length === 0 && tableDataSource.value.length === 0) {\n tableRef.value.clearSelection()\n }\n selectedList.value = [...selectList]\n emits('on-select-checkbox', [...selectList], row)\n }\n // 设置行类名\n function setTableRowClassName(obj) {\n const row = obj.row\n let className = []\n if (props.rowClassName) {\n className.push(props.rowClassName(obj))\n }\n\n if (getSelectedIndex(row) !== -1) {\n className.push('selected')\n }\n\n return className.filter(Boolean).join(' ')\n }\n\n // 处理表格column\n watchEffect(() => {\n const { columnsList, columnsEditablele, searchText } = tableColumnHandler(\n CACHE_COLUMNS_KEY,\n props.tableColumns,\n props.searchArr\n )\n tableColumns.value = columnsList\n tableColumnsEditablele.value = columnsEditablele\n searchPlaceholder.value = searchText\n })\n\n return {\n // 表格配置项\n loading,\n tableDataSource,\n tableColumns,\n tableColumnsEditablele,\n searchPlaceholder,\n doLayout,\n showAppTableLoading,\n closeAppTableLoading,\n // 表格行操作配置\n getRowKey,\n selectedList,\n tableTriggerRef,\n setTableRowClassName,\n onTableSelectAllHandler,\n onTableRowContextmenuHandler,\n onTableRowClickHandler,\n onTableColumnsSelectHandler,\n getSelectedList,\n clearSelection,\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { ref, nextTick, unref } from 'vue';
|
|
2
|
+
import { useAppSearch } from '../../appSearch/js/useAppSearch.mjs';
|
|
3
|
+
import { useApi } from '../../../hooks/useApi.mjs';
|
|
4
|
+
import { isEmpty, isNumber, isString } from '../../../utils/is.mjs';
|
|
5
|
+
|
|
6
|
+
function useAppTableSearch(hy) {
|
|
7
|
+
const {
|
|
8
|
+
props,
|
|
9
|
+
emits,
|
|
10
|
+
appSearchRef,
|
|
11
|
+
tableDataSource,
|
|
12
|
+
showAppTableLoading,
|
|
13
|
+
closeAppTableLoading,
|
|
14
|
+
clearSelection
|
|
15
|
+
} = hy;
|
|
16
|
+
const { api } = useApi();
|
|
17
|
+
const { formModel, formColumns } = useAppSearch(props.filterColumns, {
|
|
18
|
+
page: 1,
|
|
19
|
+
// 当前分页数
|
|
20
|
+
size: 15
|
|
21
|
+
// 每页数量
|
|
22
|
+
});
|
|
23
|
+
const totalElements = ref(0);
|
|
24
|
+
const showFilter = ref(true);
|
|
25
|
+
function switchShowFilter() {
|
|
26
|
+
showFilter.value = !showFilter.value;
|
|
27
|
+
}
|
|
28
|
+
async function getData(page = null) {
|
|
29
|
+
await nextTick();
|
|
30
|
+
showAppTableLoading();
|
|
31
|
+
return new Promise((resolve, reject) => {
|
|
32
|
+
if (!isEmpty(page)) {
|
|
33
|
+
if (isNumber(page) || isString(page)) {
|
|
34
|
+
formModel.value.page = page;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
const params = getParametersFn();
|
|
38
|
+
if (props.controller) {
|
|
39
|
+
api.page(props.controller, params).then(successFun).finally(() => {
|
|
40
|
+
resolve();
|
|
41
|
+
closeAppTableLoading();
|
|
42
|
+
clearSelection();
|
|
43
|
+
});
|
|
44
|
+
} else if (props.url) {
|
|
45
|
+
api.post(props.url, params).then(successFun).finally(() => {
|
|
46
|
+
resolve();
|
|
47
|
+
closeAppTableLoading();
|
|
48
|
+
clearSelection();
|
|
49
|
+
});
|
|
50
|
+
} else {
|
|
51
|
+
closeAppTableLoading();
|
|
52
|
+
reject();
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
function successFun(res) {
|
|
56
|
+
var _a;
|
|
57
|
+
if (!((_a = res.data.content) == null ? void 0 : _a.length) && formModel.value.page !== 1) {
|
|
58
|
+
getData(1);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const data = res.data.content ? res.data.content : res.data || [];
|
|
62
|
+
if (props.beforeDataHandler) {
|
|
63
|
+
tableDataSource.value = props.beforeDataHandler(data);
|
|
64
|
+
} else {
|
|
65
|
+
tableDataSource.value = data;
|
|
66
|
+
}
|
|
67
|
+
totalElements.value = res.data.totalElements;
|
|
68
|
+
emits("reqSuccess", tableDataSource.value);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
async function resetFn() {
|
|
72
|
+
await nextTick();
|
|
73
|
+
appSearchRef.value.resetFields();
|
|
74
|
+
formModel.value.query = null;
|
|
75
|
+
getData(1);
|
|
76
|
+
}
|
|
77
|
+
function getParametersFn() {
|
|
78
|
+
return Object.assign(
|
|
79
|
+
{
|
|
80
|
+
...unref(formModel),
|
|
81
|
+
page: unref(formModel).page - 1
|
|
82
|
+
},
|
|
83
|
+
{ isJSON: props.isJsonData },
|
|
84
|
+
unref(props.requestParams)
|
|
85
|
+
);
|
|
86
|
+
}
|
|
87
|
+
function getTableDataSource() {
|
|
88
|
+
return tableDataSource.value;
|
|
89
|
+
}
|
|
90
|
+
function getTotalElements() {
|
|
91
|
+
return totalElements.value;
|
|
92
|
+
}
|
|
93
|
+
function setData(dataSource) {
|
|
94
|
+
tableDataSource.value = dataSource || [];
|
|
95
|
+
closeAppTableLoading();
|
|
96
|
+
}
|
|
97
|
+
function onSizeChangeHandler(val) {
|
|
98
|
+
formModel.value.page = 1;
|
|
99
|
+
formModel.value.size = val;
|
|
100
|
+
getData();
|
|
101
|
+
}
|
|
102
|
+
function onCurrentChangeHandler(val) {
|
|
103
|
+
formModel.value.page = val;
|
|
104
|
+
getData();
|
|
105
|
+
}
|
|
106
|
+
let oldQueryValue;
|
|
107
|
+
function onSearchQueryHandler() {
|
|
108
|
+
const isReset = !(isEmpty(oldQueryValue) && isEmpty(formModel.value.query) || oldQueryValue === formModel.value.query);
|
|
109
|
+
getData(isReset ? 1 : null);
|
|
110
|
+
}
|
|
111
|
+
return {
|
|
112
|
+
formModel,
|
|
113
|
+
formColumns,
|
|
114
|
+
totalElements,
|
|
115
|
+
showFilter,
|
|
116
|
+
getData,
|
|
117
|
+
resetFn,
|
|
118
|
+
switchShowFilter,
|
|
119
|
+
getTableDataSource,
|
|
120
|
+
getTotalElements,
|
|
121
|
+
setData,
|
|
122
|
+
onSizeChangeHandler,
|
|
123
|
+
onCurrentChangeHandler,
|
|
124
|
+
onSearchQueryHandler
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
export { useAppTableSearch };
|
|
129
|
+
//# sourceMappingURL=search.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.mjs","sources":["../../../../packages/components/appTable/js/search.js"],"sourcesContent":["import { nextTick, ref, unref } from 'vue'\nimport { useAppSearch } from '@hy-dispatch-ui-v3/components'\nimport { isEmpty, isNumber, isString } from '@hy-dispatch-ui-v3/utils'\nimport { useApi } from '@hy-dispatch-ui-v3/hooks'\n\nexport function useAppTableSearch(hy) {\n const {\n props,\n emits,\n appSearchRef,\n tableDataSource,\n showAppTableLoading,\n closeAppTableLoading,\n clearSelection,\n } = hy\n\n const { api } = useApi()\n const { formModel, formColumns } = useAppSearch(props.filterColumns, {\n page: 1, // 当前分页数\n size: 15, // 每页数量\n })\n const totalElements = ref(0) // 数据总条数\n\n const showFilter = ref(true)\n function switchShowFilter() {\n showFilter.value = !showFilter.value\n }\n\n // 获取表格数据\n async function getData(page = null) {\n await nextTick()\n showAppTableLoading()\n return new Promise((resolve, reject) => {\n if (!isEmpty(page)) {\n if (isNumber(page) || isString(page)) {\n formModel.value.page = page\n }\n }\n\n const params = getParametersFn()\n if (props.controller) {\n api\n .page(props.controller, params)\n .then(successFun)\n .finally(() => {\n resolve()\n closeAppTableLoading()\n clearSelection()\n })\n } else if (props.url) {\n api\n .post(props.url, params)\n .then(successFun)\n .finally(() => {\n resolve()\n closeAppTableLoading()\n clearSelection()\n })\n } else {\n closeAppTableLoading()\n reject()\n }\n })\n function successFun(res) {\n if (!res.data.content?.length && formModel.value.page !== 1) {\n getData(1)\n return\n }\n const data = res.data.content ? res.data.content : res.data || []\n if (props.beforeDataHandler) {\n tableDataSource.value = props.beforeDataHandler(data)\n } else {\n tableDataSource.value = data\n }\n totalElements.value = res.data.totalElements\n emits('reqSuccess', tableDataSource.value)\n }\n }\n // 重置条件查询\n async function resetFn() {\n await nextTick()\n appSearchRef.value.resetFields()\n formModel.value.query = null\n getData(1)\n }\n // 获取当前请求参数\n function getParametersFn() {\n return Object.assign(\n {\n ...unref(formModel),\n page: unref(formModel).page - 1,\n },\n { isJSON: props.isJsonData },\n unref(props.requestParams)\n )\n }\n // 获取表格数据\n function getTableDataSource() {\n return tableDataSource.value\n }\n // 获取表格总数\n function getTotalElements() {\n return totalElements.value\n }\n // 自定义设置表格数据\n function setData(dataSource) {\n tableDataSource.value = dataSource || []\n closeAppTableLoading()\n }\n // 更改表格每页展示数目\n function onSizeChangeHandler(val) {\n formModel.value.page = 1\n formModel.value.size = val\n getData()\n }\n // 更改当前页码处理\n function onCurrentChangeHandler(val) {\n formModel.value.page = val\n getData()\n }\n // 查询变更处理\n let oldQueryValue\n function onSearchQueryHandler() {\n const isReset = !(\n (isEmpty(oldQueryValue) && isEmpty(formModel.value.query)) ||\n oldQueryValue === formModel.value.query\n )\n getData(isReset ? 1 : null)\n }\n\n return {\n formModel,\n formColumns,\n totalElements,\n showFilter,\n getData,\n resetFn,\n switchShowFilter,\n getTableDataSource,\n getTotalElements,\n setData,\n onSizeChangeHandler,\n onCurrentChangeHandler,\n onSearchQueryHandler,\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { toRef } from 'vue';
|
|
2
|
+
import { isEmpty, isBoolean } from '../../../utils/is.mjs';
|
|
3
|
+
import { useLocale } from '../../../hooks/useLocale.mjs';
|
|
4
|
+
|
|
5
|
+
function getColumnDefaultWidth(column) {
|
|
6
|
+
if (column.width) return column.width;
|
|
7
|
+
if (column.type === "index") return 80;
|
|
8
|
+
if (column.prop === "operator") return 132;
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
function getColumnDefaultLabel(column) {
|
|
12
|
+
const { t } = useLocale();
|
|
13
|
+
if (column.label) return column.label;
|
|
14
|
+
if (column.type === "index") return t("table.index");
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
function getColumnsEditable(column, index) {
|
|
18
|
+
const { editable, type, prop } = column;
|
|
19
|
+
if (isBoolean(editable)) {
|
|
20
|
+
return {
|
|
21
|
+
index,
|
|
22
|
+
lock: false,
|
|
23
|
+
edit: !type || type === "default",
|
|
24
|
+
checked: !!editable
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
return {
|
|
28
|
+
index,
|
|
29
|
+
lock: false,
|
|
30
|
+
edit: !type || type === "default",
|
|
31
|
+
checked: !type || type !== "default" || prop === "operator",
|
|
32
|
+
...editable || {}
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
const useAppTable = (config = {}) => {
|
|
36
|
+
const { columns, filterColumns } = config || {};
|
|
37
|
+
const tableColumns = [];
|
|
38
|
+
try {
|
|
39
|
+
for (let i = 0; i < (columns == null ? void 0 : columns.length); i++) {
|
|
40
|
+
const column = columns[i];
|
|
41
|
+
if (isEmpty(column.prop) && column.type === "default") {
|
|
42
|
+
throw Error("\u3010column.prop\u3011\u4E0D\u80FD\u4E3A\u7A7A");
|
|
43
|
+
}
|
|
44
|
+
tableColumns.push({
|
|
45
|
+
prop: column.type !== "default" ? `${column.type}_prop` : column.prop,
|
|
46
|
+
...column,
|
|
47
|
+
type: column.type || "default",
|
|
48
|
+
width: getColumnDefaultWidth(column),
|
|
49
|
+
label: getColumnDefaultLabel(column),
|
|
50
|
+
editable: getColumnsEditable(column, i)
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
} catch (err) {
|
|
54
|
+
console.error(err);
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
tableColumns: toRef(tableColumns),
|
|
58
|
+
filterColumns: toRef(filterColumns)
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
export { useAppTable };
|
|
63
|
+
//# sourceMappingURL=useAppTable.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAppTable.mjs","sources":["../../../../packages/components/appTable/js/useAppTable.js"],"sourcesContent":["import { toRef } from 'vue'\nimport { useLocale } from '@hy-dispatch-ui-v3/hooks'\nimport { isBoolean, isEmpty } from '@hy-dispatch-ui-v3/utils'\n\nfunction getColumnDefaultWidth(column) {\n if (column.width) return column.width\n if (column.type === 'index') return 80\n if (column.prop === 'operator') return 132\n return\n}\n\nfunction getColumnDefaultLabel(column) {\n const { t } = useLocale()\n if (column.label) return column.label\n if (column.type === 'index') return t('table.index')\n return\n}\n\nfunction getColumnsEditable(column, index) {\n const { editable, type, prop } = column\n if (isBoolean(editable)) {\n return {\n index,\n lock: false,\n edit: !type || type === 'default',\n checked: !!editable,\n }\n }\n return {\n index,\n lock: false,\n edit: !type || type === 'default',\n checked: !type || type !== 'default' || prop === 'operator',\n ...(editable || {}),\n }\n}\n\n// 生成表单配置\nexport const useAppTable = (config = {}) => {\n const { columns, filterColumns } = config || {}\n const tableColumns = []\n\n try {\n for (let i = 0; i < columns?.length; i++) {\n const column = columns[i]\n if (isEmpty(column.prop) && column.type === 'default') {\n throw Error('【column.prop】不能为空')\n }\n tableColumns.push({\n prop: column.type !== 'default' ? `${column.type}_prop` : column.prop,\n ...column,\n type: column.type || 'default',\n width: getColumnDefaultWidth(column),\n label: getColumnDefaultLabel(column),\n editable: getColumnsEditable(column, i),\n })\n }\n } catch (err) {\n console.error(err)\n }\n\n return {\n tableColumns: toRef(tableColumns),\n filterColumns: toRef(filterColumns),\n }\n}\n"],"names":[],"mappings":";;;;AAGA,SAAS,qBAAqB,CAAC,MAAM,EAAE;AACvC,EAAE,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,MAAM,CAAC,KAAK;AACvC,EAAE,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,OAAO,EAAE;AACxC,EAAE,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,OAAO,GAAG;AAC5C,EAAE;AACF;AACA,SAAS,qBAAqB,CAAC,MAAM,EAAE;AACvC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,SAAS,EAAE;AAC3B,EAAE,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,MAAM,CAAC,KAAK;AACvC,EAAE,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,OAAO,CAAC,CAAC,aAAa,CAAC;AACtD,EAAE;AACF;AACA,SAAS,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE;AAC3C,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM;AACzC,EAAE,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE;AAC3B,IAAI,OAAO;AACX,MAAM,KAAK;AACX,MAAM,IAAI,EAAE,KAAK;AACjB,MAAM,IAAI,EAAE,CAAC,IAAI,IAAI,IAAI,KAAK,SAAS;AACvC,MAAM,OAAO,EAAE,CAAC,CAAC;AACjB,KAAK;AACL,EAAE;AACF,EAAE,OAAO;AACT,IAAI,KAAK;AACT,IAAI,IAAI,EAAE,KAAK;AACf,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,IAAI,KAAK,SAAS;AACrC,IAAI,OAAO,EAAE,CAAC,IAAI,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,UAAU;AAC/D,IAAI,GAAG,QAAQ,IAAI;AACnB,GAAG;AACH;AACY,MAAC,WAAW,GAAG,CAAC,MAAM,GAAG,EAAE,KAAK;AAC5C,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,MAAM,IAAI,EAAE;AACjD,EAAE,MAAM,YAAY,GAAG,EAAE;AACzB,EAAE,IAAI;AACN,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE;AAC1E,MAAM,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;AAC/B,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE;AAC7D,QAAQ,MAAM,KAAK,CAAC,iDAAiD,CAAC;AACtE,MAAM;AACN,MAAM,YAAY,CAAC,IAAI,CAAC;AACxB,QAAQ,IAAI,EAAE,MAAM,CAAC,IAAI,KAAK,SAAS,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,IAAI;AAC7E,QAAQ,GAAG,MAAM;AACjB,QAAQ,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,SAAS;AACtC,QAAQ,KAAK,EAAE,qBAAqB,CAAC,MAAM,CAAC;AAC5C,QAAQ,KAAK,EAAE,qBAAqB,CAAC,MAAM,CAAC;AAC5C,QAAQ,QAAQ,EAAE,kBAAkB,CAAC,MAAM,EAAE,CAAC;AAC9C,OAAO,CAAC;AACR,IAAI;AACJ,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;AACtB,EAAE;AACF,EAAE,OAAO;AACT,IAAI,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC;AACrC,IAAI,aAAa,EAAE,KAAK,CAAC,aAAa;AACtC,GAAG;AACH;;;;"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { defineComponent, ref, computed, openBlock, createBlock, unref, mergeProps, createSlots, withCtx, createElementVNode, normalizeClass, renderSlot, createTextVNode, toDisplayString } from 'vue';
|
|
2
|
+
import { ElTooltip } from 'element-plus';
|
|
3
|
+
import { isOverflowing, isNumber } from '../../utils/is.mjs';
|
|
4
|
+
|
|
5
|
+
import "./style/appTooltip.scss";
|
|
6
|
+
|
|
7
|
+
const __default__ = defineComponent({
|
|
8
|
+
name: "AppTooltip"
|
|
9
|
+
});
|
|
10
|
+
const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
|
|
11
|
+
props: {
|
|
12
|
+
isAlways: {
|
|
13
|
+
type: Boolean,
|
|
14
|
+
default: false
|
|
15
|
+
},
|
|
16
|
+
disabled: {
|
|
17
|
+
type: Boolean
|
|
18
|
+
},
|
|
19
|
+
class: {
|
|
20
|
+
type: String
|
|
21
|
+
},
|
|
22
|
+
overLine: {
|
|
23
|
+
type: [String, Number]
|
|
24
|
+
},
|
|
25
|
+
content: {
|
|
26
|
+
type: String
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
setup(__props) {
|
|
30
|
+
const props = __props;
|
|
31
|
+
const isDisabled = ref(props.disabled);
|
|
32
|
+
const appClass = computed(() => {
|
|
33
|
+
const classList = [props.class, "break-all"];
|
|
34
|
+
const overLine = props.overLine;
|
|
35
|
+
if (isNumber(overLine) && !isNaN(overLine)) {
|
|
36
|
+
classList.push(overLine <= 1 ? "over_one_line" : "over_any_lines");
|
|
37
|
+
}
|
|
38
|
+
return classList.filter(Boolean);
|
|
39
|
+
});
|
|
40
|
+
function onMouseenterHandler(e) {
|
|
41
|
+
if (props.disabled || props.isAlways) {
|
|
42
|
+
isDisabled.value = props.disabled;
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
isDisabled.value = !isOverflowing(e.target);
|
|
46
|
+
}
|
|
47
|
+
return (_ctx, _cache) => {
|
|
48
|
+
return openBlock(), createBlock(unref(ElTooltip), mergeProps({
|
|
49
|
+
"open-delay": 500,
|
|
50
|
+
class: "item",
|
|
51
|
+
effect: "dark",
|
|
52
|
+
placement: "top",
|
|
53
|
+
"popper-class": "max-w-[300px]"
|
|
54
|
+
}, _ctx.$attrs, {
|
|
55
|
+
disabled: isDisabled.value,
|
|
56
|
+
content: __props.content
|
|
57
|
+
}), createSlots({
|
|
58
|
+
default: withCtx(() => [
|
|
59
|
+
createElementVNode(
|
|
60
|
+
"span",
|
|
61
|
+
{
|
|
62
|
+
class: normalizeClass(appClass.value),
|
|
63
|
+
onMouseenter: onMouseenterHandler
|
|
64
|
+
},
|
|
65
|
+
[
|
|
66
|
+
renderSlot(_ctx.$slots, "default", {}, () => [
|
|
67
|
+
createTextVNode(
|
|
68
|
+
toDisplayString(__props.content),
|
|
69
|
+
1
|
|
70
|
+
/* TEXT */
|
|
71
|
+
)
|
|
72
|
+
])
|
|
73
|
+
],
|
|
74
|
+
34
|
|
75
|
+
/* CLASS, NEED_HYDRATION */
|
|
76
|
+
)
|
|
77
|
+
]),
|
|
78
|
+
_: 2
|
|
79
|
+
/* DYNAMIC */
|
|
80
|
+
}, [
|
|
81
|
+
!_ctx.$slots.content ? {
|
|
82
|
+
name: "content",
|
|
83
|
+
fn: withCtx(() => [
|
|
84
|
+
renderSlot(_ctx.$slots, "content")
|
|
85
|
+
]),
|
|
86
|
+
key: "0"
|
|
87
|
+
} : void 0
|
|
88
|
+
]), 1040, ["disabled", "content"]);
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
|
|
93
|
+
export { _sfc_main as default };
|
|
94
|
+
//# sourceMappingURL=appTooltip.vue.mjs.map
|