@ditari/bsui 1.0.7 → 1.0.8
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/dist/cjs/components/components.cjs.js +1 -1
- package/dist/cjs/components/components.d.ts +2 -0
- package/dist/cjs/components/desensitize/Desensitize.cjs.js +1 -0
- package/dist/cjs/components/desensitize/Desensitize.d.ts +30 -0
- package/dist/cjs/components/desensitize/index.cjs.js +1 -0
- package/dist/cjs/components/desensitize/index.d.ts +30 -0
- package/dist/cjs/components/dic/DicReplace.cjs.js +1 -0
- package/dist/cjs/components/dic/DicReplace.d.ts +23 -0
- package/dist/cjs/components/dic/dic.worker.cjs.js +1 -0
- package/dist/cjs/components/dic/index.cjs.js +1 -0
- package/dist/cjs/components/dic/index.d.ts +23 -0
- package/dist/cjs/components/index.cjs.js +1 -1
- package/dist/cjs/components/menu/Menu.cjs.js +1 -1
- package/dist/cjs/components/select/Select.vue.cjs.js +1 -1
- package/dist/cjs/components/select/dic.worker.cjs.js +1 -0
- package/dist/cjs/components/table/Table.cjs.js +1 -0
- package/dist/cjs/components/table/Table.d.ts +71 -0
- package/dist/cjs/components/table/index.cjs.js +1 -1
- package/dist/cjs/components/table/index.d.ts +29 -102
- package/dist/cjs/components/table/interface/table.d.ts +33 -0
- package/dist/cjs/hooks/http/index.cjs.js +1 -1
- package/dist/cjs/hooks/http/index.d.ts +4 -7
- package/dist/cjs/utils/html.cjs.js +1 -0
- package/dist/cjs/utils/html.d.ts +1 -0
- package/dist/cjs/utils/index.d.ts +1 -0
- package/dist/css/desensitize/style/index.css +1 -0
- package/dist/css/grid/style/index.css +1 -1
- package/dist/css/index.css +1 -1
- package/dist/css/table/style/index.css +1 -0
- package/dist/esm/components/components.d.ts +2 -0
- package/dist/esm/components/components.esm.js +18 -14
- package/dist/esm/components/desensitize/Desensitize.d.ts +30 -0
- package/dist/esm/components/desensitize/Desensitize.esm.js +46 -0
- package/dist/esm/components/desensitize/index.d.ts +30 -0
- package/dist/esm/components/desensitize/index.esm.js +7 -0
- package/dist/esm/components/dic/DicReplace.d.ts +23 -0
- package/dist/esm/components/dic/DicReplace.esm.js +38 -0
- package/dist/esm/components/dic/dic.worker.esm.js +17 -0
- package/dist/esm/components/dic/index.d.ts +23 -0
- package/dist/esm/components/dic/index.esm.js +7 -0
- package/dist/esm/components/index.esm.js +22 -18
- package/dist/esm/components/menu/Menu.esm.js +8 -9
- package/dist/esm/components/select/Select.vue.esm.js +32 -28
- package/dist/esm/components/select/dic.worker.esm.js +12 -0
- package/dist/esm/components/select/index.d.ts +39 -58
- package/dist/esm/components/table/Table.d.ts +71 -0
- package/dist/esm/components/table/Table.esm.js +214 -0
- package/dist/esm/components/table/index.d.ts +29 -102
- package/dist/esm/components/table/index.esm.js +4 -5
- package/dist/esm/components/table/interface/table.d.ts +33 -0
- package/dist/esm/hooks/http/index.d.ts +4 -7
- package/dist/esm/hooks/http/index.esm.js +26 -25
- package/dist/esm/utils/html.d.ts +1 -0
- package/dist/esm/utils/html.esm.js +15 -0
- package/dist/esm/utils/index.d.ts +1 -0
- package/dist/style/desensitize/style/index.scss +7 -0
- package/dist/style/grid/style/index.scss +15 -6
- package/dist/style/index.scss +2 -0
- package/dist/style/table/style/index.scss +10 -0
- package/dist/style/theme/variable.scss +1 -0
- package/package.json +1 -1
- package/src/components/components.ts +2 -0
- package/src/components/desensitize/Desensitize.tsx +69 -0
- package/src/components/desensitize/index.ts +5 -0
- package/src/components/desensitize/style/index.scss +7 -0
- package/src/components/dic/DicReplace.tsx +55 -0
- package/src/components/dic/dic.worker.ts +25 -0
- package/src/components/dic/index.ts +5 -0
- package/src/components/grid/style/index.scss +15 -6
- package/src/components/index.scss +2 -0
- package/src/components/menu/Menu.jsx +2 -3
- package/src/components/select/Select.vue +11 -5
- package/src/components/select/{dic-worker.ts → dic.worker.ts} +4 -3
- package/src/components/table/Table.tsx +343 -0
- package/src/components/table/{Table.vue → TableBak.vue} +39 -27
- package/src/components/table/index.ts +1 -2
- package/src/components/table/interface/table.ts +54 -0
- package/src/components/table/style/index.scss +10 -0
- package/src/components/theme/variable.scss +1 -0
- package/src/hooks/http/index.ts +12 -14
- package/src/utils/html.ts +17 -0
- package/src/utils/index.ts +1 -0
- package/dist/cjs/components/select/dic-worker.cjs.js +0 -1
- package/dist/cjs/components/table/Field.vue.cjs.js +0 -1
- package/dist/cjs/components/table/Field.vue.cjs2.js +0 -1
- package/dist/cjs/components/table/Field.vue.d.ts +0 -28
- package/dist/cjs/components/table/Table.vue.cjs.js +0 -1
- package/dist/cjs/components/table/Table.vue.cjs2.js +0 -1
- package/dist/cjs/components/table/Table.vue.cjs3.js +0 -1
- package/dist/cjs/components/table/Table.vue.d.ts +0 -142
- package/dist/esm/components/select/dic-worker.esm.js +0 -12
- package/dist/esm/components/table/Field.vue.d.ts +0 -28
- package/dist/esm/components/table/Field.vue.esm.js +0 -38
- package/dist/esm/components/table/Field.vue.esm2.js +0 -4
- package/dist/esm/components/table/Table.vue.d.ts +0 -142
- package/dist/esm/components/table/Table.vue.esm.js +0 -238
- package/dist/esm/components/table/Table.vue.esm2.js +0 -4
- package/dist/esm/components/table/Table.vue.esm3.js +0 -5
- package/dist/esm/style.css +0 -1
|
@@ -3,14 +3,13 @@
|
|
|
3
3
|
* 表单组件
|
|
4
4
|
*/
|
|
5
5
|
import { computed, ref, Ref, watch, inject } from "vue";
|
|
6
|
-
|
|
7
6
|
import Field from "./Field.vue";
|
|
8
|
-
|
|
7
|
+
import { prefixName } from "../theme";
|
|
9
8
|
type Key = string | number;
|
|
10
9
|
|
|
11
10
|
interface Props {
|
|
12
11
|
bordered?: boolean;
|
|
13
|
-
keys?:
|
|
12
|
+
keys?: Key[];
|
|
14
13
|
size?: string;
|
|
15
14
|
columns: any; //表格配置
|
|
16
15
|
data: any; //数据源
|
|
@@ -48,6 +47,10 @@ interface Emits {
|
|
|
48
47
|
}
|
|
49
48
|
|
|
50
49
|
const emits = defineEmits<Emits>();
|
|
50
|
+
|
|
51
|
+
//class名称
|
|
52
|
+
const basePageClassName = `${prefixName}-pagination`;
|
|
53
|
+
|
|
51
54
|
//antdv配置组件注入的变量
|
|
52
55
|
const configProvider = inject("configProvider") as any;
|
|
53
56
|
|
|
@@ -55,24 +58,12 @@ const configProvider = inject("configProvider") as any;
|
|
|
55
58
|
const tableRef = ref();
|
|
56
59
|
const tableHeight = ref(0);
|
|
57
60
|
const selectedRowKeys = ref<any>(props.keys);
|
|
61
|
+
const dataSource = ref(props.data);
|
|
58
62
|
//表体对象
|
|
59
63
|
const antTableBody = ref();
|
|
60
64
|
//分页配置 监听查询页码页数变化
|
|
61
65
|
const paginationState = computed(() => props.pagination);
|
|
62
66
|
|
|
63
|
-
//分页默认配置
|
|
64
|
-
const paginationConfig = {
|
|
65
|
-
defaultPageSize: 20,
|
|
66
|
-
hideOnSinglePage: false,
|
|
67
|
-
pageSizeOptions: ["10", "20", "30", "40"],
|
|
68
|
-
responsive: true,
|
|
69
|
-
showQuickJumper: true,
|
|
70
|
-
showLessItems: true,
|
|
71
|
-
showTotal: (total: number) => {
|
|
72
|
-
return `总共 ${total} 条`;
|
|
73
|
-
}
|
|
74
|
-
};
|
|
75
|
-
|
|
76
67
|
//分页
|
|
77
68
|
const { onPageChange } = usePaging();
|
|
78
69
|
function usePaging() {
|
|
@@ -100,14 +91,18 @@ function usePaging() {
|
|
|
100
91
|
}
|
|
101
92
|
|
|
102
93
|
//表格
|
|
103
|
-
const { customRow, rowSelection } = useTable();
|
|
94
|
+
const { rowClassName, customRow, rowSelection } = useTable();
|
|
104
95
|
|
|
105
96
|
function useTable() {
|
|
97
|
+
const {
|
|
98
|
+
config: { rowClassName }
|
|
99
|
+
} = props;
|
|
106
100
|
// 表格行事件
|
|
107
101
|
const customRow = useCustomRow();
|
|
108
102
|
// 表格选项
|
|
109
103
|
const rowSelection = useRowSelection();
|
|
110
104
|
return {
|
|
105
|
+
rowClassName,
|
|
111
106
|
customRow,
|
|
112
107
|
rowSelection
|
|
113
108
|
};
|
|
@@ -178,6 +173,19 @@ function useRowSelection() {
|
|
|
178
173
|
emits("update:keys", selectedRowKeys.value);
|
|
179
174
|
};
|
|
180
175
|
|
|
176
|
+
// 监听父组件手动改变keys 重新赋值给 表格选中变量selectedRowKeys
|
|
177
|
+
watch(
|
|
178
|
+
() => props.keys,
|
|
179
|
+
(val) => {
|
|
180
|
+
selectedRowKeys.value = val;
|
|
181
|
+
}
|
|
182
|
+
);
|
|
183
|
+
|
|
184
|
+
const disabled = computed(() => {
|
|
185
|
+
//const disabled = disabledData?.value?.includes("1");
|
|
186
|
+
return false; //disabledData.value.value;
|
|
187
|
+
});
|
|
188
|
+
|
|
181
189
|
return {
|
|
182
190
|
selectedRowKeys,
|
|
183
191
|
onSelect,
|
|
@@ -187,7 +195,7 @@ function useRowSelection() {
|
|
|
187
195
|
columnWidth: selection === "S" ? 60 : 40,
|
|
188
196
|
getCheckboxProps: (record: any) => {
|
|
189
197
|
return {
|
|
190
|
-
disabled:
|
|
198
|
+
disabled: disabled.value,
|
|
191
199
|
name: disabledData?.key
|
|
192
200
|
};
|
|
193
201
|
}
|
|
@@ -267,6 +275,14 @@ watch(
|
|
|
267
275
|
}
|
|
268
276
|
);
|
|
269
277
|
|
|
278
|
+
// 临时解决方案 如果不通过监听赋值 无法触发rowClass函数
|
|
279
|
+
watch(
|
|
280
|
+
() => props.data,
|
|
281
|
+
(val) => {
|
|
282
|
+
dataSource.value = val;
|
|
283
|
+
}
|
|
284
|
+
);
|
|
285
|
+
|
|
270
286
|
/**
|
|
271
287
|
* 监听loading加载状态
|
|
272
288
|
*
|
|
@@ -303,7 +319,7 @@ function initTable() {
|
|
|
303
319
|
let paginationHeight = 0;
|
|
304
320
|
if (props.pagination) {
|
|
305
321
|
paginationHeight = useEleHeight(
|
|
306
|
-
document.getElementsByClassName(
|
|
322
|
+
document.getElementsByClassName(basePageClassName)[0]
|
|
307
323
|
);
|
|
308
324
|
}
|
|
309
325
|
//56 为分页高度
|
|
@@ -341,12 +357,13 @@ export default {
|
|
|
341
357
|
ref="tableRef"
|
|
342
358
|
:bordered="bordered"
|
|
343
359
|
:columns="columns"
|
|
344
|
-
:data-source="
|
|
360
|
+
:data-source="dataSource"
|
|
345
361
|
:row-key="rowKey"
|
|
346
362
|
:pagination="false"
|
|
347
363
|
:custom-row="customRow"
|
|
348
364
|
:loading="loading"
|
|
349
365
|
:row-selection="rowSelection"
|
|
366
|
+
:row-class-name="rowClassName"
|
|
350
367
|
:size="size ?? 'small'"
|
|
351
368
|
:scroll="{
|
|
352
369
|
scrollToFirstRowOnChange: true,
|
|
@@ -374,7 +391,7 @@ export default {
|
|
|
374
391
|
v-show="pagination"
|
|
375
392
|
v-model:current="paginationState.current"
|
|
376
393
|
v-model:pageSize="paginationState.pageSize"
|
|
377
|
-
class="
|
|
394
|
+
:class="basePageClassName"
|
|
378
395
|
:disabled="loading"
|
|
379
396
|
show-size-changer
|
|
380
397
|
:size="configProvider.componentSize ?? 'middle '"
|
|
@@ -387,9 +404,4 @@ export default {
|
|
|
387
404
|
@change="onPageChange"
|
|
388
405
|
/>
|
|
389
406
|
</template>
|
|
390
|
-
<style>
|
|
391
|
-
.xi-pagination {
|
|
392
|
-
margin-top: 24px;
|
|
393
|
-
text-align: center;
|
|
394
|
-
}
|
|
395
|
-
</style>
|
|
407
|
+
<style></style>
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { RowClassName } from "ant-design-vue/es/vc-table/interface";
|
|
2
|
+
|
|
3
|
+
export type Key = string | number;
|
|
4
|
+
export type SelectionType = "N" | "S" | "M"; // 无选择/单选/多选
|
|
5
|
+
export type SizeType = "small" | "middle" | "middle";
|
|
6
|
+
|
|
7
|
+
//表格配置
|
|
8
|
+
export interface Config {
|
|
9
|
+
// 是否开启边框
|
|
10
|
+
bordered?: boolean;
|
|
11
|
+
//表格列配置
|
|
12
|
+
columns: any;
|
|
13
|
+
// 表格大小
|
|
14
|
+
size?: SizeType;
|
|
15
|
+
// 复选框
|
|
16
|
+
selection?: SelectionType;
|
|
17
|
+
// 是开启页码切换的时候保留选中的数据
|
|
18
|
+
keepSelected?: boolean;
|
|
19
|
+
// 分页
|
|
20
|
+
pagination?: Pagination;
|
|
21
|
+
// 分页事件
|
|
22
|
+
onPageChange?: (paging: { page: number; size: number }) => void;
|
|
23
|
+
// 自定义行样式
|
|
24
|
+
rowClassName?: (record: any, index: number) => any;
|
|
25
|
+
// 单击
|
|
26
|
+
click?: (record: unknown) => void;
|
|
27
|
+
// 双击
|
|
28
|
+
dbClick?: (record: any) => void;
|
|
29
|
+
// 选择框的默认属性配置
|
|
30
|
+
getCheckboxProps: (record: any) => any;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export interface Pagination {
|
|
34
|
+
total: number;
|
|
35
|
+
current: number;
|
|
36
|
+
pageSize: number;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface TableProps {
|
|
40
|
+
// 保留
|
|
41
|
+
keys?: Key[];
|
|
42
|
+
//数据源
|
|
43
|
+
data: any;
|
|
44
|
+
//主键id
|
|
45
|
+
rowKey: string;
|
|
46
|
+
//加载状态
|
|
47
|
+
loading?: false;
|
|
48
|
+
//表格高度
|
|
49
|
+
height: number;
|
|
50
|
+
//分页
|
|
51
|
+
pagination?: any;
|
|
52
|
+
// 配置
|
|
53
|
+
config: Config;
|
|
54
|
+
}
|
package/src/hooks/http/index.ts
CHANGED
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { computed, Ref, ref } from "vue";
|
|
2
2
|
import { usePagination } from "vue-request";
|
|
3
|
-
import { get } from "../../utils";
|
|
3
|
+
import { get } from "../../utils/get";
|
|
4
4
|
|
|
5
5
|
interface Pagination {
|
|
6
|
-
// 当前分页的key
|
|
7
6
|
currentKey: string;
|
|
8
|
-
// 每页条数的key
|
|
9
7
|
pageSizeKey: string;
|
|
10
|
-
// 总条数的key
|
|
11
8
|
totalKey: string;
|
|
12
9
|
}
|
|
13
10
|
|
|
@@ -15,15 +12,10 @@ interface Options {
|
|
|
15
12
|
//请求参数
|
|
16
13
|
params?: Ref;
|
|
17
14
|
pagination?: Pagination;
|
|
18
|
-
// 读取数据的key
|
|
19
15
|
dataKey?: string;
|
|
16
|
+
onSuccess?: any;
|
|
20
17
|
}
|
|
21
18
|
|
|
22
|
-
/**
|
|
23
|
-
* 请求分页数据列表
|
|
24
|
-
* @param service 请求后台服务的接口
|
|
25
|
-
* @param options 配置
|
|
26
|
-
*/
|
|
27
19
|
const useRequestList = (service: any, options: Options = {}) => {
|
|
28
20
|
if (!options.pagination) {
|
|
29
21
|
options.pagination = {
|
|
@@ -52,7 +44,9 @@ const useRequestList = (service: any, options: Options = {}) => {
|
|
|
52
44
|
pagination: options.pagination,
|
|
53
45
|
loadingDelay: 400,
|
|
54
46
|
loadingKeep: 100,
|
|
55
|
-
onSuccess: () => {
|
|
47
|
+
onSuccess: (data: any, params: any) => {
|
|
48
|
+
options.onSuccess ? options.onSuccess(data, params) : undefined;
|
|
49
|
+
},
|
|
56
50
|
onError: (error: Error, params: any) => {
|
|
57
51
|
//错误处理
|
|
58
52
|
console.log(params, error);
|
|
@@ -79,7 +73,7 @@ const useRequestList = (service: any, options: Options = {}) => {
|
|
|
79
73
|
* page和size改变时触发事件
|
|
80
74
|
* @param paging 页码对象
|
|
81
75
|
*/
|
|
82
|
-
const
|
|
76
|
+
const onPageChange = (paging: any) => {
|
|
83
77
|
params.value[currentKey] = paging.page;
|
|
84
78
|
params.value[pageSizeKey] = paging.size;
|
|
85
79
|
run(params.value || {});
|
|
@@ -99,9 +93,13 @@ const useRequestList = (service: any, options: Options = {}) => {
|
|
|
99
93
|
pagination,
|
|
100
94
|
loading,
|
|
101
95
|
run,
|
|
102
|
-
|
|
96
|
+
onPageChange,
|
|
103
97
|
onQuery
|
|
104
98
|
};
|
|
105
99
|
};
|
|
106
100
|
|
|
107
|
-
|
|
101
|
+
const useDoneXIRequest = () => {
|
|
102
|
+
//
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
export { useRequestList, useDoneXIRequest };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export const useEleHeight = (node: Element) => {
|
|
2
|
+
const list = [
|
|
3
|
+
"margin-top",
|
|
4
|
+
"margin-bottom",
|
|
5
|
+
"border-top",
|
|
6
|
+
"border-bottom",
|
|
7
|
+
"padding-top",
|
|
8
|
+
"padding-bottom",
|
|
9
|
+
"height"
|
|
10
|
+
];
|
|
11
|
+
const style = getComputedStyle(node);
|
|
12
|
+
return list
|
|
13
|
+
.map((k) => parseInt(style.getPropertyValue(k), 10))
|
|
14
|
+
.reduce((prev, cur) => {
|
|
15
|
+
return prev + cur;
|
|
16
|
+
});
|
|
17
|
+
};
|
package/src/utils/index.ts
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3NlbGYuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZnVuY3Rpb24oZSl7Y29uc3Qgcz1lLmRhdGEua2V5d29yZHN8fCIiLHQ9SlNPTi5wYXJzZShlLmRhdGEubGlzdCksYT10LmZpbHRlcihvPT5vLnZhbHVlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihzLnRvTG93ZXJDYXNlKCkpIT09LTF8fG8ubGFiZWwudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzLnRvTG93ZXJDYXNlKCkpKTthLmxlbmd0aD09PTA/c2VsZi5wb3N0TWVzc2FnZSh0LnNwbGljZSgwLDEwKSk6c2VsZi5wb3N0TWVzc2FnZShhLnNwbGljZSgwLDEwKSl9LCExKX0pKCk7Cg==",n=typeof window<"u"&&window.Blob&&new Blob([atob(l)],{type:"text/javascript;charset=utf-8"});function t(){const e=n&&(window.URL||window.webkitURL).createObjectURL(n);try{return e?new Worker(e):new Worker("data:application/javascript;base64,"+l)}finally{e&&(window.URL||window.webkitURL).revokeObjectURL(e)}}exports.default=t;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue"),i=require("ant-design-vue"),f=require("dayjs"),l=t.defineComponent({__name:"Field",props:{text:{default:""},config:{default:{}}},setup(c){const r=c,u=(e,n)=>e+n,a=()=>{const{text:e,config:{type:n}}=r;if(n==="dic"){const{name:s,style:o}=r.config;return t.h("div",[t.h(i.Badge,{color:o[e]||"#f50"}),t.h("span",{style:{color:o[e]||"#f50"}},u(s,e))])}else if(n==="date"){const{formatter:s}=r.config,o=e!==""?"":f(e).format(s||"YYYY-MM-DD HH:mm:ss");return t.h("span",o)}};return(e,n)=>(t.openBlock(),t.createBlock(a))}});exports.default=l;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./Field.vue.cjs.js");exports.default=e.default;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { PropType as __PropType } from 'vue';
|
|
2
|
-
declare const _sfc_main: import("vue").DefineComponent<{
|
|
3
|
-
text: {
|
|
4
|
-
type: __PropType<string>;
|
|
5
|
-
required: true;
|
|
6
|
-
default: string;
|
|
7
|
-
};
|
|
8
|
-
config: {
|
|
9
|
-
type: __PropType<any>;
|
|
10
|
-
required: true;
|
|
11
|
-
default: {};
|
|
12
|
-
};
|
|
13
|
-
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
14
|
-
text: {
|
|
15
|
-
type: __PropType<string>;
|
|
16
|
-
required: true;
|
|
17
|
-
default: string;
|
|
18
|
-
};
|
|
19
|
-
config: {
|
|
20
|
-
type: __PropType<any>;
|
|
21
|
-
required: true;
|
|
22
|
-
default: {};
|
|
23
|
-
};
|
|
24
|
-
}>>, {
|
|
25
|
-
text: string;
|
|
26
|
-
config: any;
|
|
27
|
-
}>;
|
|
28
|
-
export default _sfc_main;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),E=require("./Field.vue.cjs.js"),K={name:"DTable"},V=e.defineComponent({...K,props:{bordered:{type:Boolean,default:!1},keys:{default:void 0},size:{default:"small"},columns:{default:[]},data:{default:[]},rowKey:{default:"id"},loading:{type:Boolean,default:!1},height:{default:0},pagination:{default:!1},selection:{default:"N"},config:{default:{}},keepSelected:{type:Boolean,default:!1}},emits:["update:keys"],setup(g,{emit:d}){const u=g,z=e.inject("configProvider"),y=e.ref(),v=e.ref(0),l=e.ref(u.keys),w=e.ref(),p=e.computed(()=>u.pagination),m={defaultPageSize:20,hideOnSinglePage:!1,pageSizeOptions:["10","20","30","40"],responsive:!0,showQuickJumper:!0,showLessItems:!0,showTotal:t=>`总共 ${t} 条`},{onPageChange:T}=B();function B(){const{keepSelected:t,selection:o,config:{pagingChange:a}}=u;return{onPageChange:(s,n)=>{(o==="S"||!t)&&(l.value=[],d("update:keys",l.value)),a({page:s,size:n}),w.value.scrollTop=0}}}const{customRow:P,rowSelection:N}=O();function O(){const t=R(),o=$();return{customRow:t,rowSelection:o}}function R(){const{rowKey:t}=u;return o=>{const a=o[t],{$OnClick:i,$OnDblclick:s}=x(a);try{t||console.warn("未指定rowKey")}catch{console.warn()}return{onClick:()=>{i(o)},onDblclick:()=>{s(o)}}}}function $(){const{selection:t,rowKey:o,config:{disabledData:a}}=u;return t==="N"?void 0:{selectedRowKeys:l,onSelect:(n,c)=>{t==="S"?(l.value=[],l.value=c?[n[o]]:[]):l.value=c?l.value.concat(n[o]):l.value.filter(f=>f!==n[o]),d("update:keys",l.value)},onSelectAll:(n,c,f)=>{const r=f.map(h=>h[o]);l.value=n?l.value.concat(r):l.value.filter(h=>!r.includes(h)),d("update:keys",l.value)},fixed:!0,columnTitle:t==="S"?"选择":null,columnWidth:t==="S"?60:40,getCheckboxProps:n=>{var c;return{disabled:(c=a==null?void 0:a.value)==null?void 0:c.includes(n[a==null?void 0:a.key]),name:a==null?void 0:a.key}}}}function x(t){const{selection:o,config:{click:a,dbClick:i,disabledData:s}}=u;let n=null;return{$OnClick:r=>{clearTimeout(n),n=setTimeout(()=>{var b;if(a&&a(r),o==="N"||(b=s==null?void 0:s.value)!=null&&b.includes(r[s==null?void 0:s.key]))return;l.value.some(k=>k===t)?l.value=l.value.filter(k=>k!==t):(o==="S"&&(l.value=[]),l.value.push(t)),d("update:keys",l.value)},200)},$OnDblclick:r=>{clearTimeout(n),i&&i(r)}}}e.watch(()=>u.height,t=>{t!==0&&setTimeout(()=>{S()},100)}),e.watch(()=>u.loading,t=>{t&&u.selection==="S"&&(l.value=[],d("update:keys",l.value)),t&&u.selection==="M"&&!u.keepSelected&&(l.value=[],d("update:keys",l.value))}),u.height>0&&setTimeout(()=>{S()},100);function S(){const{height:t}=u,o=y.value.$el,a=C(o.getElementsByClassName("ant-table-header")[0]);let i=0;u.pagination&&(i=C(document.getElementsByClassName("xi-pagination")[0])),v.value=t-(a+i),o.getElementsByClassName("ant-table-body")[0].style.height=v.value-10+"px",w.value=o.getElementsByClassName("ant-table-body")[0]}function C(t){const o=["margin-top","margin-bottom","border-top","border-bottom","padding-top","padding-bottom","height"],a=getComputedStyle(t);return o.map(i=>parseInt(a.getPropertyValue(i),10)).reduce((i,s)=>i+s)}return(t,o)=>{const a=e.resolveComponent("a-space"),i=e.resolveComponent("a-table"),s=e.resolveComponent("a-pagination");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(i,{ref_key:"tableRef",ref:y,bordered:g.bordered,columns:g.columns,"data-source":g.data,"row-key":g.rowKey,pagination:!1,"custom-row":e.unref(P),loading:g.loading,"row-selection":e.unref(N),size:g.size??"small",scroll:{scrollToFirstRowOnChange:!0,x:"100%",y:v.value+"px"}},{bodyCell:e.withCtx(({column:n,text:c,record:f,index:r})=>[n.config?(e.openBlock(),e.createBlock(E.default,{key:0,text:c,config:n.config},null,8,["text","config"])):e.createCommentVNode("",!0),n.slot==="action"?(e.openBlock(),e.createBlock(a,{key:1,onClick:o[0]||(o[0]=e.withModifiers(()=>{},["stop"])),onDblclick:o[1]||(o[1]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"action",{index:r,record:f})]),_:2},1024)):e.createCommentVNode("",!0),n.slot&&n.slot!=="action"?e.renderSlot(t.$slots,n.slot,{key:2,index:r,record:f}):e.createCommentVNode("",!0)]),_:3},8,["bordered","columns","data-source","row-key","custom-row","loading","row-selection","size","scroll"]),e.withDirectives(e.createVNode(s,{current:e.unref(p).current,"onUpdate:current":o[2]||(o[2]=n=>e.unref(p).current=n),pageSize:e.unref(p).pageSize,"onUpdate:pageSize":o[3]||(o[3]=n=>e.unref(p).pageSize=n),class:"xi-pagination",disabled:g.loading,"show-size-changer":"",size:e.unref(z).componentSize??"middle ","hide-on-single-page":m.hideOnSinglePage,"show-quick-jumper":m.showQuickJumper,"default-page-size":m.defaultPageSize,"page-size-options":m.pageSizeOptions,"show-total":m.showTotal,total:e.unref(p).total,onChange:e.unref(T)},null,8,["current","pageSize","disabled","size","hide-on-single-page","show-quick-jumper","default-page-size","page-size-options","show-total","total","onChange"]),[[e.vShow,g.pagination]])],64)}}});exports.default=V;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e="";exports.default=e;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./Table.vue.cjs.js");require("./Table.vue.cjs2.js");exports.default=e.default;
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import type { PropType as __PropType } from 'vue';
|
|
2
|
-
import { Ref } from "vue";
|
|
3
|
-
type Key = string | number;
|
|
4
|
-
declare const _sfc_main: import("vue").DefineComponent<{
|
|
5
|
-
bordered: {
|
|
6
|
-
type: __PropType<boolean | undefined>;
|
|
7
|
-
required: false;
|
|
8
|
-
default: boolean;
|
|
9
|
-
};
|
|
10
|
-
keys: {
|
|
11
|
-
type: __PropType<Ref<Key[]> | undefined>;
|
|
12
|
-
required: false;
|
|
13
|
-
default: undefined;
|
|
14
|
-
};
|
|
15
|
-
size: {
|
|
16
|
-
type: __PropType<string | undefined>;
|
|
17
|
-
required: false;
|
|
18
|
-
default: string;
|
|
19
|
-
};
|
|
20
|
-
columns: {
|
|
21
|
-
type: __PropType<any>;
|
|
22
|
-
required: true;
|
|
23
|
-
default: never[];
|
|
24
|
-
};
|
|
25
|
-
data: {
|
|
26
|
-
type: __PropType<any>;
|
|
27
|
-
required: true;
|
|
28
|
-
default: never[];
|
|
29
|
-
};
|
|
30
|
-
rowKey: {
|
|
31
|
-
type: __PropType<string | undefined>;
|
|
32
|
-
required: false;
|
|
33
|
-
default: string;
|
|
34
|
-
};
|
|
35
|
-
loading: {
|
|
36
|
-
type: __PropType<false | undefined>;
|
|
37
|
-
required: false;
|
|
38
|
-
default: boolean;
|
|
39
|
-
};
|
|
40
|
-
height: {
|
|
41
|
-
type: __PropType<number>;
|
|
42
|
-
required: true;
|
|
43
|
-
default: number;
|
|
44
|
-
};
|
|
45
|
-
pagination: {
|
|
46
|
-
type: __PropType<any>;
|
|
47
|
-
required: false;
|
|
48
|
-
default: boolean;
|
|
49
|
-
};
|
|
50
|
-
selection: {
|
|
51
|
-
type: __PropType<"M" | "N" | "S" | undefined>;
|
|
52
|
-
required: false;
|
|
53
|
-
default: string;
|
|
54
|
-
};
|
|
55
|
-
config: {
|
|
56
|
-
type: __PropType<any>;
|
|
57
|
-
required: false;
|
|
58
|
-
default: {};
|
|
59
|
-
};
|
|
60
|
-
keepSelected: {
|
|
61
|
-
type: __PropType<boolean | undefined>;
|
|
62
|
-
required: false;
|
|
63
|
-
default: boolean;
|
|
64
|
-
};
|
|
65
|
-
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:keys"[], "update:keys", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
66
|
-
bordered: {
|
|
67
|
-
type: __PropType<boolean | undefined>;
|
|
68
|
-
required: false;
|
|
69
|
-
default: boolean;
|
|
70
|
-
};
|
|
71
|
-
keys: {
|
|
72
|
-
type: __PropType<Ref<Key[]> | undefined>;
|
|
73
|
-
required: false;
|
|
74
|
-
default: undefined;
|
|
75
|
-
};
|
|
76
|
-
size: {
|
|
77
|
-
type: __PropType<string | undefined>;
|
|
78
|
-
required: false;
|
|
79
|
-
default: string;
|
|
80
|
-
};
|
|
81
|
-
columns: {
|
|
82
|
-
type: __PropType<any>;
|
|
83
|
-
required: true;
|
|
84
|
-
default: never[];
|
|
85
|
-
};
|
|
86
|
-
data: {
|
|
87
|
-
type: __PropType<any>;
|
|
88
|
-
required: true;
|
|
89
|
-
default: never[];
|
|
90
|
-
};
|
|
91
|
-
rowKey: {
|
|
92
|
-
type: __PropType<string | undefined>;
|
|
93
|
-
required: false;
|
|
94
|
-
default: string;
|
|
95
|
-
};
|
|
96
|
-
loading: {
|
|
97
|
-
type: __PropType<false | undefined>;
|
|
98
|
-
required: false;
|
|
99
|
-
default: boolean;
|
|
100
|
-
};
|
|
101
|
-
height: {
|
|
102
|
-
type: __PropType<number>;
|
|
103
|
-
required: true;
|
|
104
|
-
default: number;
|
|
105
|
-
};
|
|
106
|
-
pagination: {
|
|
107
|
-
type: __PropType<any>;
|
|
108
|
-
required: false;
|
|
109
|
-
default: boolean;
|
|
110
|
-
};
|
|
111
|
-
selection: {
|
|
112
|
-
type: __PropType<"M" | "N" | "S" | undefined>;
|
|
113
|
-
required: false;
|
|
114
|
-
default: string;
|
|
115
|
-
};
|
|
116
|
-
config: {
|
|
117
|
-
type: __PropType<any>;
|
|
118
|
-
required: false;
|
|
119
|
-
default: {};
|
|
120
|
-
};
|
|
121
|
-
keepSelected: {
|
|
122
|
-
type: __PropType<boolean | undefined>;
|
|
123
|
-
required: false;
|
|
124
|
-
default: boolean;
|
|
125
|
-
};
|
|
126
|
-
}>> & {
|
|
127
|
-
"onUpdate:keys"?: ((...args: any[]) => any) | undefined;
|
|
128
|
-
}, {
|
|
129
|
-
keys: Ref<Key[]> | undefined;
|
|
130
|
-
data: any;
|
|
131
|
-
loading: false | undefined;
|
|
132
|
-
config: any;
|
|
133
|
-
size: string | undefined;
|
|
134
|
-
bordered: boolean | undefined;
|
|
135
|
-
columns: any;
|
|
136
|
-
rowKey: string | undefined;
|
|
137
|
-
height: number;
|
|
138
|
-
pagination: any;
|
|
139
|
-
selection: "M" | "N" | "S" | undefined;
|
|
140
|
-
keepSelected: boolean | undefined;
|
|
141
|
-
}>;
|
|
142
|
-
export default _sfc_main;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
const e = "KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3NlbGYuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZnVuY3Rpb24oZSl7Y29uc3Qgcz1lLmRhdGEua2V5d29yZHN8fCIiLHQ9SlNPTi5wYXJzZShlLmRhdGEubGlzdCksYT10LmZpbHRlcihvPT5vLnZhbHVlLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihzLnRvTG93ZXJDYXNlKCkpIT09LTF8fG8ubGFiZWwudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzLnRvTG93ZXJDYXNlKCkpKTthLmxlbmd0aD09PTA/c2VsZi5wb3N0TWVzc2FnZSh0LnNwbGljZSgwLDEwKSk6c2VsZi5wb3N0TWVzc2FnZShhLnNwbGljZSgwLDEwKSl9LCExKX0pKCk7Cg==", b = typeof window < "u" && window.Blob && new Blob([atob(e)], { type: "text/javascript;charset=utf-8" });
|
|
2
|
-
function l() {
|
|
3
|
-
const n = b && (window.URL || window.webkitURL).createObjectURL(b);
|
|
4
|
-
try {
|
|
5
|
-
return n ? new Worker(n) : new Worker("data:application/javascript;base64," + e);
|
|
6
|
-
} finally {
|
|
7
|
-
n && (window.URL || window.webkitURL).revokeObjectURL(n);
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
export {
|
|
11
|
-
l as default
|
|
12
|
-
};
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { PropType as __PropType } from 'vue';
|
|
2
|
-
declare const _sfc_main: import("vue").DefineComponent<{
|
|
3
|
-
text: {
|
|
4
|
-
type: __PropType<string>;
|
|
5
|
-
required: true;
|
|
6
|
-
default: string;
|
|
7
|
-
};
|
|
8
|
-
config: {
|
|
9
|
-
type: __PropType<any>;
|
|
10
|
-
required: true;
|
|
11
|
-
default: {};
|
|
12
|
-
};
|
|
13
|
-
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
14
|
-
text: {
|
|
15
|
-
type: __PropType<string>;
|
|
16
|
-
required: true;
|
|
17
|
-
default: string;
|
|
18
|
-
};
|
|
19
|
-
config: {
|
|
20
|
-
type: __PropType<any>;
|
|
21
|
-
required: true;
|
|
22
|
-
default: {};
|
|
23
|
-
};
|
|
24
|
-
}>>, {
|
|
25
|
-
text: string;
|
|
26
|
-
config: any;
|
|
27
|
-
}>;
|
|
28
|
-
export default _sfc_main;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { defineComponent as i, openBlock as m, createBlock as p, h as r } from "vue";
|
|
2
|
-
import { Badge as d } from "ant-design-vue";
|
|
3
|
-
import l from "dayjs";
|
|
4
|
-
const x = /* @__PURE__ */ i({
|
|
5
|
-
__name: "Field",
|
|
6
|
-
props: {
|
|
7
|
-
text: { default: "" },
|
|
8
|
-
config: { default: {} }
|
|
9
|
-
},
|
|
10
|
-
setup(s) {
|
|
11
|
-
const n = s, f = (t, e) => t + e, a = () => {
|
|
12
|
-
const {
|
|
13
|
-
text: t,
|
|
14
|
-
config: { type: e }
|
|
15
|
-
} = n;
|
|
16
|
-
if (e === "dic") {
|
|
17
|
-
const { name: c, style: o } = n.config;
|
|
18
|
-
return r("div", [
|
|
19
|
-
r(d, {
|
|
20
|
-
color: o[t] || "#f50"
|
|
21
|
-
}),
|
|
22
|
-
r(
|
|
23
|
-
"span",
|
|
24
|
-
{ style: { color: o[t] || "#f50" } },
|
|
25
|
-
f(c, t)
|
|
26
|
-
)
|
|
27
|
-
]);
|
|
28
|
-
} else if (e === "date") {
|
|
29
|
-
const { formatter: c } = n.config, o = t !== "" ? "" : l(t).format(c || "YYYY-MM-DD HH:mm:ss");
|
|
30
|
-
return r("span", o);
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
return (t, e) => (m(), p(a));
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
export {
|
|
37
|
-
x as default
|
|
38
|
-
};
|