@vue-ui-kit/ant 2.0.9 → 2.1.1
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/index.js +5 -4
- package/dist/declarations/antProxy.d.ts +1 -0
- package/dist/es/index.js +4817 -4029
- package/dist/packages/components/PCanvasTable.vue.d.ts +46 -12
- package/package.json +2 -2
- package/src/declarations/antProxy.ts +1 -0
- package/src/packages/components/CollapseCard.vue +1 -1
- package/src/packages/components/PCanvasGrid.vue +2 -1
- package/src/packages/components/PCanvasTable.vue +2 -0
- package/src/packages/components/PGrid.vue +1 -0
- package/src/packages/store/renderStore.tsx +39 -11
|
@@ -43,6 +43,7 @@ declare const _default: <T extends Recordable = Recordable, B extends Recordable
|
|
|
43
43
|
render: import('e-virt-table').Render;
|
|
44
44
|
renderFooter: import('e-virt-table').Render;
|
|
45
45
|
style: any;
|
|
46
|
+
domDataset: any;
|
|
46
47
|
rules: import('e-virt-table/dist/lib/Validator').Rules | import('e-virt-table/dist/lib/Validator').Rule;
|
|
47
48
|
message: string;
|
|
48
49
|
text: string;
|
|
@@ -57,12 +58,28 @@ declare const _default: <T extends Recordable = Recordable, B extends Recordable
|
|
|
57
58
|
drawTextColor: string;
|
|
58
59
|
drawTextX: number;
|
|
59
60
|
drawTextY: number;
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
61
|
+
drawTextWidth: number;
|
|
62
|
+
drawTextHeight: number;
|
|
63
|
+
drawTreeImageX: number;
|
|
64
|
+
drawTreeImageY: number;
|
|
65
|
+
drawTreeImageWidth: number;
|
|
66
|
+
drawTreeImageHeight: number;
|
|
67
|
+
drawTreeImageName: string;
|
|
68
|
+
drawTreeImageSource?: HTMLImageElement;
|
|
69
|
+
drawSelectionImageX: number;
|
|
70
|
+
drawSelectionImageY: number;
|
|
71
|
+
drawSelectionImageWidth: number;
|
|
72
|
+
drawSelectionImageHeight: number;
|
|
73
|
+
drawSelectionImageName: string;
|
|
74
|
+
drawSelectionImageSource?: HTMLImageElement;
|
|
75
|
+
drawHoverImageX: number;
|
|
76
|
+
drawHoverImageY: number;
|
|
77
|
+
drawHoverImageWidth: number;
|
|
78
|
+
drawHoverImageHeight: number;
|
|
79
|
+
drawHoverImageName: string;
|
|
80
|
+
drawHoverImageSource?: HTMLImageElement;
|
|
81
|
+
autoRowHeight: boolean;
|
|
82
|
+
calculatedHeight: number;
|
|
66
83
|
ellipsis: boolean;
|
|
67
84
|
rowExpand: boolean;
|
|
68
85
|
rowHasChildren: boolean;
|
|
@@ -70,6 +87,7 @@ declare const _default: <T extends Recordable = Recordable, B extends Recordable
|
|
|
70
87
|
selectorCellValueType: import('e-virt-table').SelectorCellValueType;
|
|
71
88
|
overflowTooltipMaxWidth: number;
|
|
72
89
|
overflowTooltipPlacement: import('e-virt-table').OverflowTooltipPlacement;
|
|
90
|
+
maxLineClamp: import('e-virt-table').LineClampType;
|
|
73
91
|
ctx: import('e-virt-table/dist/lib/Context').default;
|
|
74
92
|
x: number;
|
|
75
93
|
y: number;
|
|
@@ -78,6 +96,7 @@ declare const _default: <T extends Recordable = Recordable, B extends Recordable
|
|
|
78
96
|
} | {
|
|
79
97
|
cell: Cell | import('e-virt-table/dist/lib/CellHeader').default;
|
|
80
98
|
align: import('e-virt-table').Align;
|
|
99
|
+
hideHeaderSelection: boolean;
|
|
81
100
|
verticalAlign: import('e-virt-table').VerticalAlign;
|
|
82
101
|
fixed?: import('e-virt-table').Fixed;
|
|
83
102
|
minWidth?: number;
|
|
@@ -107,16 +126,31 @@ declare const _default: <T extends Recordable = Recordable, B extends Recordable
|
|
|
107
126
|
style: Partial<CSSStyleDeclaration>;
|
|
108
127
|
drawX: number;
|
|
109
128
|
drawY: number;
|
|
129
|
+
sortIconName: string;
|
|
130
|
+
sortAscIconName: string;
|
|
131
|
+
sortDescIconName: string;
|
|
110
132
|
visibleWidth: number;
|
|
111
133
|
visibleHeight: number;
|
|
134
|
+
maxLineClampHeader: import('e-virt-table').LineClampType;
|
|
135
|
+
domDataset: any;
|
|
136
|
+
drawTextX: number;
|
|
137
|
+
drawTextY: number;
|
|
138
|
+
drawTextWidth: number;
|
|
139
|
+
drawTextHeight: number;
|
|
112
140
|
drawCellBgColor: string;
|
|
113
141
|
drawTextColor: string;
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
142
|
+
drawSelectionImageX: number;
|
|
143
|
+
drawSelectionImageY: number;
|
|
144
|
+
drawSelectionImageWidth: number;
|
|
145
|
+
drawSelectionImageHeight: number;
|
|
146
|
+
drawSelectionImageName: string;
|
|
147
|
+
drawSelectionImageSource?: HTMLImageElement;
|
|
148
|
+
drawSortImageX: number;
|
|
149
|
+
drawSortImageY: number;
|
|
150
|
+
drawSortImageWidth: number;
|
|
151
|
+
drawSortImageHeight: number;
|
|
152
|
+
drawSortImageName: string;
|
|
153
|
+
drawSortImageSource?: HTMLImageElement;
|
|
120
154
|
ctx: import('e-virt-table/dist/lib/Context').default;
|
|
121
155
|
x: number;
|
|
122
156
|
y: number;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vue-ui-kit/ant",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.1.1",
|
|
4
4
|
"description": "Vue3 UI Kit based on Ant Design",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/cjs/index.js",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"email": "adoin@qq.com"
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
|
49
|
-
"e-virt-table": "^1.2.
|
|
49
|
+
"e-virt-table": "^1.2.35",
|
|
50
50
|
"uuid": "^10.0.0",
|
|
51
51
|
"xe-utils": "^3.7.6"
|
|
52
52
|
},
|
|
@@ -314,7 +314,7 @@
|
|
|
314
314
|
const firstColumn: CanvasColumnProps<D> =
|
|
315
315
|
staticConfig.value.selectable && staticConfig.value.tree
|
|
316
316
|
? {
|
|
317
|
-
type: 'tree
|
|
317
|
+
type: 'selection-tree',
|
|
318
318
|
width: 40,
|
|
319
319
|
widthFillDisable: true,
|
|
320
320
|
title: '',
|
|
@@ -517,6 +517,7 @@
|
|
|
517
517
|
:loading="loading.toolbar || (!!tool.code && codeLoadings[tool.code])"
|
|
518
518
|
>
|
|
519
519
|
<Icon :icon="tool.icon" />
|
|
520
|
+
{{ tool.content }}
|
|
520
521
|
</a-button>
|
|
521
522
|
</template>
|
|
522
523
|
</span>
|
|
@@ -38,6 +38,7 @@
|
|
|
38
38
|
const propsWithDefaults = computed(() => ({
|
|
39
39
|
...props,
|
|
40
40
|
config: {
|
|
41
|
+
AUTO_ROW_HEIGHT: true,
|
|
41
42
|
DISABLED: true, // 内部写死的默认配置
|
|
42
43
|
...canvasTableDefaults, // 全局配置
|
|
43
44
|
...props.config, // 用户传入的配置
|
|
@@ -299,6 +300,7 @@
|
|
|
299
300
|
v-for="cell in view.cells"
|
|
300
301
|
:key="`${cell.rowKey}_${cell.key}`"
|
|
301
302
|
:style="cell.style"
|
|
303
|
+
v-bind="cell.domDataset"
|
|
302
304
|
>
|
|
303
305
|
<component
|
|
304
306
|
v-if="typeof cell.render === 'function'"
|
|
@@ -26,7 +26,7 @@ import { ButtonProps } from 'ant-design-vue/lib/button';
|
|
|
26
26
|
import { isBadValue, isGoodValue, valued } from '@/utils/is';
|
|
27
27
|
import TableInput from '@/renders/TableInput.vue';
|
|
28
28
|
import Icon from '@/renders/Icon';
|
|
29
|
-
import { computed, Ref } from 'vue';
|
|
29
|
+
import { computed, ref, Ref } from 'vue';
|
|
30
30
|
|
|
31
31
|
interface BtnOptions extends ButtonProps {
|
|
32
32
|
content?: string;
|
|
@@ -210,12 +210,20 @@ const renderBasic = (name: string) => {
|
|
|
210
210
|
},
|
|
211
211
|
};
|
|
212
212
|
};
|
|
213
|
-
|
|
214
|
-
const renderBtn = (
|
|
213
|
+
type GetPopupContainer = () => HTMLElement;
|
|
214
|
+
const renderBtn = (
|
|
215
|
+
btnOpt: BtnOptions,
|
|
216
|
+
params: RenderTableParams,
|
|
217
|
+
getPopupContainer?: GetPopupContainer,
|
|
218
|
+
) =>
|
|
215
219
|
btnOpt.dropdowns &&
|
|
216
220
|
btnOpt.dropdowns.length > 0 &&
|
|
217
221
|
btnOpt.dropdowns.filter((f) => !f.hiddenIf?.(params)).length > 0 ? (
|
|
218
|
-
<Dropdown
|
|
222
|
+
<Dropdown
|
|
223
|
+
getPopupContainer={
|
|
224
|
+
getPopupContainer ?? (() => document.querySelector('.p-wrapper') as HTMLElement)
|
|
225
|
+
}
|
|
226
|
+
>
|
|
219
227
|
{{
|
|
220
228
|
default: () => (
|
|
221
229
|
<Button
|
|
@@ -236,7 +244,7 @@ const renderBtn = (btnOpt: BtnOptions, params: RenderTableParams) =>
|
|
|
236
244
|
<div class={`dropdown-wrapper ${btnOpt?.dynamicClassName?.(params) ?? ''}`}>
|
|
237
245
|
{btnOpt
|
|
238
246
|
.dropdowns!.filter((f) => !f.hiddenIf?.(params))
|
|
239
|
-
.map((b) => renderBtn(b, params))}
|
|
247
|
+
.map((b) => renderBtn(b, params, getPopupContainer))}
|
|
240
248
|
</div>
|
|
241
249
|
),
|
|
242
250
|
}}
|
|
@@ -456,20 +464,31 @@ const renders: RenderFactory = {
|
|
|
456
464
|
},
|
|
457
465
|
ButtonTree: {
|
|
458
466
|
renderDefault({ children = [], props = {} as Recordable }, params: RenderTableParams) {
|
|
467
|
+
const spanRef = ref<HTMLElement | null>(null);
|
|
459
468
|
return (
|
|
460
|
-
<span class={props.noGap ? 'align-no-gap-box' : 'align-gap-box'}>
|
|
469
|
+
<span ref={spanRef} class={props.noGap ? 'align-no-gap-box' : 'align-gap-box'}>
|
|
461
470
|
{(children as BtnOptions[])
|
|
462
471
|
.filter((f) => !f.hiddenIf?.(params))
|
|
463
|
-
.map((item) =>
|
|
472
|
+
.map((item) =>
|
|
473
|
+
renderBtn(item, params, () => {
|
|
474
|
+
return (
|
|
475
|
+
spanRef.value?.parentElement?.parentElement?.parentElement?.parentElement ||
|
|
476
|
+
document.body
|
|
477
|
+
);
|
|
478
|
+
}),
|
|
479
|
+
) ?? []}
|
|
464
480
|
</span>
|
|
465
481
|
);
|
|
466
482
|
},
|
|
467
483
|
},
|
|
468
484
|
$radio: {
|
|
469
485
|
renderItemContent(
|
|
470
|
-
{ props = {}, events = {}, options }: RenderOptions,
|
|
486
|
+
{ props = {}, events = {}, options, defaultValue }: RenderOptions,
|
|
471
487
|
{ data, field }: RenderFormParams,
|
|
472
488
|
) {
|
|
489
|
+
if (isGoodValue(defaultValue) && valued(field) && isBadValue(data[field!])) {
|
|
490
|
+
data[field!] = defaultValue;
|
|
491
|
+
}
|
|
473
492
|
return valued(field) ? (
|
|
474
493
|
<RadioGroup
|
|
475
494
|
v-model:value={data[field!]}
|
|
@@ -518,9 +537,12 @@ const renders: RenderFactory = {
|
|
|
518
537
|
},
|
|
519
538
|
$switch: {
|
|
520
539
|
renderItemContent(
|
|
521
|
-
{ props = {}, events = {} }: RenderOptions,
|
|
540
|
+
{ props = {}, events = {}, defaultValue }: RenderOptions,
|
|
522
541
|
{ data, field }: RenderFormParams,
|
|
523
542
|
) {
|
|
543
|
+
if (isGoodValue(defaultValue) && valued(field) && isBadValue(data[field!])) {
|
|
544
|
+
data[field!] = defaultValue;
|
|
545
|
+
}
|
|
524
546
|
return valued(field) ? (
|
|
525
547
|
<Switch
|
|
526
548
|
v-model:checked={data[field!]}
|
|
@@ -534,9 +556,12 @@ const renders: RenderFactory = {
|
|
|
534
556
|
},
|
|
535
557
|
$checkbox: {
|
|
536
558
|
renderItemContent(
|
|
537
|
-
{ props = {}, options, events = {} }: RenderOptions,
|
|
559
|
+
{ props = {}, options, events = {}, defaultValue }: RenderOptions,
|
|
538
560
|
{ data, field }: RenderFormParams,
|
|
539
561
|
) {
|
|
562
|
+
if (isGoodValue(defaultValue) && valued(field) && isBadValue(data[field!])) {
|
|
563
|
+
data[field!] = defaultValue;
|
|
564
|
+
}
|
|
540
565
|
return valued(field) ? (
|
|
541
566
|
<CheckboxGroup
|
|
542
567
|
v-model:value={data[field!]}
|
|
@@ -596,11 +621,14 @@ const renders: RenderFactory = {
|
|
|
596
621
|
},
|
|
597
622
|
PercentInput: {
|
|
598
623
|
renderItemContent(
|
|
599
|
-
{ props = {}, attrs = {} }: RenderOptions,
|
|
624
|
+
{ props = {}, attrs = {}, defaultValue }: RenderOptions,
|
|
600
625
|
{ data, field }: RenderFormParams,
|
|
601
626
|
) {
|
|
602
627
|
const rate = props.parse ? 100 : 1;
|
|
603
628
|
if (valued(field)) {
|
|
629
|
+
if (isGoodValue(defaultValue) && isBadValue(data[field!])) {
|
|
630
|
+
data[field!] = defaultValue;
|
|
631
|
+
}
|
|
604
632
|
const percentage = computed({
|
|
605
633
|
get: () => (data[field!] ?? 0) * rate,
|
|
606
634
|
set: (val) => {
|