pro-design-vue 1.0.0-beta.2 → 1.0.0-rc.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/dist/index.css +1 -1
- package/dist/index.full.js +10 -10
- package/dist/index.full.min.js +4 -4
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +4 -4
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +10 -10
- package/es/components/button/index.d.ts +3 -3
- package/es/components/button/src/Button.d.ts +3 -3
- package/es/components/button/src/Button.mjs +3 -6
- package/es/components/button/src/Button.mjs.map +1 -1
- package/es/components/form/src/Form.d.ts +9 -2
- package/es/components/form/src/base/BaseForm.d.ts +9 -2
- package/es/components/form/src/base/StepForm.d.ts +9 -2
- package/es/components/form/src/layouts/DrawerForm.d.ts +9 -2
- package/es/components/form/src/layouts/ModalForm.d.ts +9 -2
- package/es/components/form/src/layouts/QueryFilter.d.ts +9 -2
- package/es/components/form/src/layouts/StepsForm.d.ts +9 -2
- package/es/components/form/src/props.d.ts +24 -6
- package/es/components/form/src/props.mjs +4 -1
- package/es/components/form/src/props.mjs.map +1 -1
- package/es/components/table/src/components/AutoHeightHeader/Header.vue.d.ts +3 -3
- package/es/components/table/src/components/AutoHeightHeader/HeaderRow.vue.d.ts +3 -3
- package/es/components/table/src/components/Body/BodyRow.vue.mjs.map +1 -1
- package/es/components/table/src/components/Body/BodyRow.vue2.mjs +1 -1
- package/es/components/table/src/components/Body/BodyRow.vue2.mjs.map +1 -1
- package/es/components/table/src/components/Filter/FilterDropdown.vue.d.ts +3 -3
- package/es/components/table/src/components/Header/Header.vue.d.ts +3 -3
- package/es/components/table/src/components/Header/HeaderCell.vue.d.ts +3 -3
- package/es/components/table/src/components/Header/HeaderRows.vue.d.ts +3 -3
- package/es/components/table/src/components/Header/HeaderRowsWrap.vue.d.ts +3 -3
- package/es/components/table/src/components/InteralTable.vue.d.ts +6 -6
- package/es/index.d.ts +69 -18
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/button/index.d.ts +3 -3
- package/lib/components/button/src/Button.d.ts +3 -3
- package/lib/components/button/src/Button.js +3 -6
- package/lib/components/button/src/Button.js.map +1 -1
- package/lib/components/form/src/Form.d.ts +9 -2
- package/lib/components/form/src/base/BaseForm.d.ts +9 -2
- package/lib/components/form/src/base/StepForm.d.ts +9 -2
- package/lib/components/form/src/layouts/DrawerForm.d.ts +9 -2
- package/lib/components/form/src/layouts/ModalForm.d.ts +9 -2
- package/lib/components/form/src/layouts/QueryFilter.d.ts +9 -2
- package/lib/components/form/src/layouts/StepsForm.d.ts +9 -2
- package/lib/components/form/src/props.d.ts +24 -6
- package/lib/components/form/src/props.js +4 -1
- package/lib/components/form/src/props.js.map +1 -1
- package/lib/components/table/src/components/AutoHeightHeader/Header.vue.d.ts +3 -3
- package/lib/components/table/src/components/AutoHeightHeader/HeaderRow.vue.d.ts +3 -3
- package/lib/components/table/src/components/Body/BodyRow.vue.js.map +1 -1
- package/lib/components/table/src/components/Body/BodyRow.vue2.js +1 -1
- package/lib/components/table/src/components/Body/BodyRow.vue2.js.map +1 -1
- package/lib/components/table/src/components/Filter/FilterDropdown.vue.d.ts +3 -3
- package/lib/components/table/src/components/Header/Header.vue.d.ts +3 -3
- package/lib/components/table/src/components/Header/HeaderCell.vue.d.ts +3 -3
- package/lib/components/table/src/components/Header/HeaderRows.vue.d.ts +3 -3
- package/lib/components/table/src/components/Header/HeaderRowsWrap.vue.d.ts +3 -3
- package/lib/components/table/src/components/InteralTable.vue.d.ts +6 -6
- package/lib/index.d.ts +69 -18
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +1 -1
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/pro-table.css +1 -1
- package/theme-chalk/src/table/common/default.less +1 -1
@@ -134,6 +134,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
134
134
|
type: PropType<import("ant-design-vue").FormProps["colon"]>;
|
135
135
|
default: boolean;
|
136
136
|
};
|
137
|
+
requiredMark: {
|
138
|
+
type: PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
139
|
+
default: boolean;
|
140
|
+
};
|
137
141
|
labelAlign: {
|
138
142
|
type: PropType<import("ant-design-vue").FormProps["labelAlign"]>;
|
139
143
|
default: string;
|
@@ -144,7 +148,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
144
148
|
default: boolean;
|
145
149
|
};
|
146
150
|
prefixCls: PropType<import("ant-design-vue").FormProps["prefixCls"]>;
|
147
|
-
requiredMark: PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
148
151
|
validateMessages: PropType<import("ant-design-vue").FormProps["validateMessages"]>;
|
149
152
|
validateTrigger: {
|
150
153
|
type: PropType<import("ant-design-vue").FormProps["validateTrigger"]>;
|
@@ -292,6 +295,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
292
295
|
type: PropType<import("ant-design-vue").FormProps["colon"]>;
|
293
296
|
default: boolean;
|
294
297
|
};
|
298
|
+
requiredMark: {
|
299
|
+
type: PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
300
|
+
default: boolean;
|
301
|
+
};
|
295
302
|
labelAlign: {
|
296
303
|
type: PropType<import("ant-design-vue").FormProps["labelAlign"]>;
|
297
304
|
default: string;
|
@@ -302,7 +309,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
302
309
|
default: boolean;
|
303
310
|
};
|
304
311
|
prefixCls: PropType<import("ant-design-vue").FormProps["prefixCls"]>;
|
305
|
-
requiredMark: PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
306
312
|
validateMessages: PropType<import("ant-design-vue").FormProps["validateMessages"]>;
|
307
313
|
validateTrigger: {
|
308
314
|
type: PropType<import("ant-design-vue").FormProps["validateTrigger"]>;
|
@@ -334,6 +340,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
334
340
|
layout: string | undefined;
|
335
341
|
colon: boolean | undefined;
|
336
342
|
labelAlign: import("ant-design-vue/es/form/interface").FormLabelAlign | undefined;
|
343
|
+
requiredMark: "" | import("ant-design-vue/es/form/Form").RequiredMark | undefined;
|
337
344
|
validateOnRuleChange: boolean | undefined;
|
338
345
|
scrollToFirstError: boolean | import("scroll-into-view-if-needed").Options<any> | undefined;
|
339
346
|
validateTrigger: string | string[] | undefined;
|
@@ -131,6 +131,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
131
131
|
type: PropType<import("ant-design-vue").FormProps["colon"]>;
|
132
132
|
default: boolean;
|
133
133
|
};
|
134
|
+
requiredMark: {
|
135
|
+
type: PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
136
|
+
default: boolean;
|
137
|
+
};
|
134
138
|
labelAlign: {
|
135
139
|
type: PropType<import("ant-design-vue").FormProps["labelAlign"]>;
|
136
140
|
default: string;
|
@@ -141,7 +145,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
141
145
|
default: boolean;
|
142
146
|
};
|
143
147
|
prefixCls: PropType<import("ant-design-vue").FormProps["prefixCls"]>;
|
144
|
-
requiredMark: PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
145
148
|
validateMessages: PropType<import("ant-design-vue").FormProps["validateMessages"]>;
|
146
149
|
validateTrigger: {
|
147
150
|
type: PropType<import("ant-design-vue").FormProps["validateTrigger"]>;
|
@@ -286,6 +289,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
286
289
|
type: PropType<import("ant-design-vue").FormProps["colon"]>;
|
287
290
|
default: boolean;
|
288
291
|
};
|
292
|
+
requiredMark: {
|
293
|
+
type: PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
294
|
+
default: boolean;
|
295
|
+
};
|
289
296
|
labelAlign: {
|
290
297
|
type: PropType<import("ant-design-vue").FormProps["labelAlign"]>;
|
291
298
|
default: string;
|
@@ -296,7 +303,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
296
303
|
default: boolean;
|
297
304
|
};
|
298
305
|
prefixCls: PropType<import("ant-design-vue").FormProps["prefixCls"]>;
|
299
|
-
requiredMark: PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
300
306
|
validateMessages: PropType<import("ant-design-vue").FormProps["validateMessages"]>;
|
301
307
|
validateTrigger: {
|
302
308
|
type: PropType<import("ant-design-vue").FormProps["validateTrigger"]>;
|
@@ -324,6 +330,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
324
330
|
layout: string | undefined;
|
325
331
|
colon: boolean | undefined;
|
326
332
|
labelAlign: import("ant-design-vue/es/form/interface").FormLabelAlign | undefined;
|
333
|
+
requiredMark: "" | import("ant-design-vue/es/form/Form").RequiredMark | undefined;
|
327
334
|
validateOnRuleChange: boolean | undefined;
|
328
335
|
scrollToFirstError: boolean | import("scroll-into-view-if-needed").Options<any> | undefined;
|
329
336
|
validateTrigger: string | string[] | undefined;
|
@@ -137,6 +137,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
137
137
|
type: import("vue").PropType<FormProps["colon"]>;
|
138
138
|
default: boolean;
|
139
139
|
};
|
140
|
+
requiredMark: {
|
141
|
+
type: import("vue").PropType<FormProps["requiredMark"]>;
|
142
|
+
default: boolean;
|
143
|
+
};
|
140
144
|
labelAlign: {
|
141
145
|
type: import("vue").PropType<FormProps["labelAlign"]>;
|
142
146
|
default: string;
|
@@ -147,7 +151,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
147
151
|
default: boolean;
|
148
152
|
};
|
149
153
|
prefixCls: import("vue").PropType<FormProps["prefixCls"]>;
|
150
|
-
requiredMark: import("vue").PropType<FormProps["requiredMark"]>;
|
151
154
|
validateMessages: import("vue").PropType<FormProps["validateMessages"]>;
|
152
155
|
validateTrigger: {
|
153
156
|
type: import("vue").PropType<FormProps["validateTrigger"]>;
|
@@ -298,6 +301,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
298
301
|
type: import("vue").PropType<FormProps["colon"]>;
|
299
302
|
default: boolean;
|
300
303
|
};
|
304
|
+
requiredMark: {
|
305
|
+
type: import("vue").PropType<FormProps["requiredMark"]>;
|
306
|
+
default: boolean;
|
307
|
+
};
|
301
308
|
labelAlign: {
|
302
309
|
type: import("vue").PropType<FormProps["labelAlign"]>;
|
303
310
|
default: string;
|
@@ -308,7 +315,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
308
315
|
default: boolean;
|
309
316
|
};
|
310
317
|
prefixCls: import("vue").PropType<FormProps["prefixCls"]>;
|
311
|
-
requiredMark: import("vue").PropType<FormProps["requiredMark"]>;
|
312
318
|
validateMessages: import("vue").PropType<FormProps["validateMessages"]>;
|
313
319
|
validateTrigger: {
|
314
320
|
type: import("vue").PropType<FormProps["validateTrigger"]>;
|
@@ -334,6 +340,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
334
340
|
layout: string | undefined;
|
335
341
|
colon: boolean | undefined;
|
336
342
|
labelAlign: import("ant-design-vue/es/form/interface").FormLabelAlign | undefined;
|
343
|
+
requiredMark: "" | import("ant-design-vue/es/form/Form").RequiredMark | undefined;
|
337
344
|
validateOnRuleChange: boolean | undefined;
|
338
345
|
scrollToFirstError: boolean | import("scroll-into-view-if-needed").Options<any> | undefined;
|
339
346
|
validateTrigger: string | string[] | undefined;
|
@@ -118,6 +118,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
118
118
|
type: import("vue").PropType<import("ant-design-vue").FormProps["colon"]>;
|
119
119
|
default: boolean;
|
120
120
|
};
|
121
|
+
requiredMark: {
|
122
|
+
type: import("vue").PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
123
|
+
default: boolean;
|
124
|
+
};
|
121
125
|
labelAlign: {
|
122
126
|
type: import("vue").PropType<import("ant-design-vue").FormProps["labelAlign"]>;
|
123
127
|
default: string;
|
@@ -128,7 +132,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
128
132
|
default: boolean;
|
129
133
|
};
|
130
134
|
prefixCls: import("vue").PropType<import("ant-design-vue").FormProps["prefixCls"]>;
|
131
|
-
requiredMark: import("vue").PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
132
135
|
validateMessages: import("vue").PropType<import("ant-design-vue").FormProps["validateMessages"]>;
|
133
136
|
validateTrigger: {
|
134
137
|
type: import("vue").PropType<import("ant-design-vue").FormProps["validateTrigger"]>;
|
@@ -262,6 +265,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
262
265
|
type: import("vue").PropType<import("ant-design-vue").FormProps["colon"]>;
|
263
266
|
default: boolean;
|
264
267
|
};
|
268
|
+
requiredMark: {
|
269
|
+
type: import("vue").PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
270
|
+
default: boolean;
|
271
|
+
};
|
265
272
|
labelAlign: {
|
266
273
|
type: import("vue").PropType<import("ant-design-vue").FormProps["labelAlign"]>;
|
267
274
|
default: string;
|
@@ -272,7 +279,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
272
279
|
default: boolean;
|
273
280
|
};
|
274
281
|
prefixCls: import("vue").PropType<import("ant-design-vue").FormProps["prefixCls"]>;
|
275
|
-
requiredMark: import("vue").PropType<import("ant-design-vue").FormProps["requiredMark"]>;
|
276
282
|
validateMessages: import("vue").PropType<import("ant-design-vue").FormProps["validateMessages"]>;
|
277
283
|
validateTrigger: {
|
278
284
|
type: import("vue").PropType<import("ant-design-vue").FormProps["validateTrigger"]>;
|
@@ -296,6 +302,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
296
302
|
layout: string | undefined;
|
297
303
|
colon: boolean | undefined;
|
298
304
|
labelAlign: import("ant-design-vue/es/form/interface").FormLabelAlign | undefined;
|
305
|
+
requiredMark: "" | import("ant-design-vue/es/form/Form").RequiredMark | undefined;
|
299
306
|
validateOnRuleChange: boolean | undefined;
|
300
307
|
scrollToFirstError: boolean | import("scroll-into-view-if-needed").Options<any> | undefined;
|
301
308
|
validateTrigger: string | string[] | undefined;
|
@@ -16,6 +16,10 @@ export declare const antFormProps: () => {
|
|
16
16
|
type: PropType<FormProps["colon"]>;
|
17
17
|
default: boolean;
|
18
18
|
};
|
19
|
+
requiredMark: {
|
20
|
+
type: PropType<FormProps["requiredMark"]>;
|
21
|
+
default: boolean;
|
22
|
+
};
|
19
23
|
labelAlign: {
|
20
24
|
type: PropType<FormProps["labelAlign"]>;
|
21
25
|
default: string;
|
@@ -26,7 +30,6 @@ export declare const antFormProps: () => {
|
|
26
30
|
default: boolean;
|
27
31
|
};
|
28
32
|
prefixCls: PropType<FormProps["prefixCls"]>;
|
29
|
-
requiredMark: PropType<FormProps["requiredMark"]>;
|
30
33
|
validateMessages: PropType<FormProps["validateMessages"]>;
|
31
34
|
validateTrigger: {
|
32
35
|
type: PropType<FormProps["validateTrigger"]>;
|
@@ -176,6 +179,10 @@ export declare const baseFormProps: () => {
|
|
176
179
|
type: PropType<FormProps["colon"]>;
|
177
180
|
default: boolean;
|
178
181
|
};
|
182
|
+
requiredMark: {
|
183
|
+
type: PropType<FormProps["requiredMark"]>;
|
184
|
+
default: boolean;
|
185
|
+
};
|
179
186
|
labelAlign: {
|
180
187
|
type: PropType<FormProps["labelAlign"]>;
|
181
188
|
default: string;
|
@@ -186,7 +193,6 @@ export declare const baseFormProps: () => {
|
|
186
193
|
default: boolean;
|
187
194
|
};
|
188
195
|
prefixCls: PropType<FormProps["prefixCls"]>;
|
189
|
-
requiredMark: PropType<FormProps["requiredMark"]>;
|
190
196
|
validateMessages: PropType<FormProps["validateMessages"]>;
|
191
197
|
validateTrigger: {
|
192
198
|
type: PropType<FormProps["validateTrigger"]>;
|
@@ -328,6 +334,10 @@ export declare const drawerOrModalFormProps: () => {
|
|
328
334
|
type: PropType<FormProps["colon"]>;
|
329
335
|
default: boolean;
|
330
336
|
};
|
337
|
+
requiredMark: {
|
338
|
+
type: PropType<FormProps["requiredMark"]>;
|
339
|
+
default: boolean;
|
340
|
+
};
|
331
341
|
labelAlign: {
|
332
342
|
type: PropType<FormProps["labelAlign"]>;
|
333
343
|
default: string;
|
@@ -338,7 +348,6 @@ export declare const drawerOrModalFormProps: () => {
|
|
338
348
|
default: boolean;
|
339
349
|
};
|
340
350
|
prefixCls: PropType<FormProps["prefixCls"]>;
|
341
|
-
requiredMark: PropType<FormProps["requiredMark"]>;
|
342
351
|
validateMessages: PropType<FormProps["validateMessages"]>;
|
343
352
|
validateTrigger: {
|
344
353
|
type: PropType<FormProps["validateTrigger"]>;
|
@@ -490,6 +499,10 @@ export declare const queryFilterProps: () => {
|
|
490
499
|
type: PropType<FormProps["colon"]>;
|
491
500
|
default: boolean;
|
492
501
|
};
|
502
|
+
requiredMark: {
|
503
|
+
type: PropType<FormProps["requiredMark"]>;
|
504
|
+
default: boolean;
|
505
|
+
};
|
493
506
|
labelAlign: {
|
494
507
|
type: PropType<FormProps["labelAlign"]>;
|
495
508
|
default: string;
|
@@ -500,7 +513,6 @@ export declare const queryFilterProps: () => {
|
|
500
513
|
default: boolean;
|
501
514
|
};
|
502
515
|
prefixCls: PropType<FormProps["prefixCls"]>;
|
503
|
-
requiredMark: PropType<FormProps["requiredMark"]>;
|
504
516
|
validateMessages: PropType<FormProps["validateMessages"]>;
|
505
517
|
validateTrigger: {
|
506
518
|
type: PropType<FormProps["validateTrigger"]>;
|
@@ -635,6 +647,10 @@ export declare const stepsFormProps: () => {
|
|
635
647
|
type: PropType<FormProps["colon"]>;
|
636
648
|
default: boolean;
|
637
649
|
};
|
650
|
+
requiredMark: {
|
651
|
+
type: PropType<FormProps["requiredMark"]>;
|
652
|
+
default: boolean;
|
653
|
+
};
|
638
654
|
labelAlign: {
|
639
655
|
type: PropType<FormProps["labelAlign"]>;
|
640
656
|
default: string;
|
@@ -645,7 +661,6 @@ export declare const stepsFormProps: () => {
|
|
645
661
|
default: boolean;
|
646
662
|
};
|
647
663
|
prefixCls: PropType<FormProps["prefixCls"]>;
|
648
|
-
requiredMark: PropType<FormProps["requiredMark"]>;
|
649
664
|
validateMessages: PropType<FormProps["validateMessages"]>;
|
650
665
|
validateTrigger: {
|
651
666
|
type: PropType<FormProps["validateTrigger"]>;
|
@@ -780,6 +795,10 @@ export declare const formProps: () => {
|
|
780
795
|
type: PropType<FormProps["colon"]>;
|
781
796
|
default: boolean;
|
782
797
|
};
|
798
|
+
requiredMark: {
|
799
|
+
type: PropType<FormProps["requiredMark"]>;
|
800
|
+
default: boolean;
|
801
|
+
};
|
783
802
|
labelAlign: {
|
784
803
|
type: PropType<FormProps["labelAlign"]>;
|
785
804
|
default: string;
|
@@ -790,7 +809,6 @@ export declare const formProps: () => {
|
|
790
809
|
default: boolean;
|
791
810
|
};
|
792
811
|
prefixCls: PropType<FormProps["prefixCls"]>;
|
793
|
-
requiredMark: PropType<FormProps["requiredMark"]>;
|
794
812
|
validateMessages: PropType<FormProps["validateMessages"]>;
|
795
813
|
validateTrigger: {
|
796
814
|
type: PropType<FormProps["validateTrigger"]>;
|
@@ -15,6 +15,10 @@ const antFormProps = () => ({
|
|
15
15
|
type: Boolean,
|
16
16
|
default: true
|
17
17
|
},
|
18
|
+
requiredMark: {
|
19
|
+
type: [Boolean, String],
|
20
|
+
default: true
|
21
|
+
},
|
18
22
|
labelAlign: {
|
19
23
|
type: String,
|
20
24
|
default: "right"
|
@@ -25,7 +29,6 @@ const antFormProps = () => ({
|
|
25
29
|
default: false
|
26
30
|
},
|
27
31
|
prefixCls: String,
|
28
|
-
requiredMark: [String, Boolean],
|
29
32
|
validateMessages: Object,
|
30
33
|
validateTrigger: {
|
31
34
|
type: [String, Array],
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"props.js","sources":["../../../../../../packages/components/form/src/props.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-07-30 08:16:14\n * @LastEditors: shen\n * @LastEditTime: 2025-09-08 09:37:42\n * @Description:\n */\nimport type { CSSProperties, ExtractPropTypes, PropType } from 'vue'\nimport type {\n ProFormPropsType,\n ProFormItemType,\n Entity,\n SpanConfig,\n ProFormActionType,\n} from './type'\n\nimport type { StepsProps, StepProps, FormProps } from 'ant-design-vue'\n\nexport const antFormProps = () => ({\n layout: {\n type: String as PropType<FormProps['layout']>,\n default: 'horizontal',\n },\n labelCol: {\n type: Object as PropType<FormProps['labelCol']>,\n },\n wrapperCol: {\n type: Object as PropType<FormProps['wrapperCol']>,\n },\n colon: {\n type: Boolean as PropType<FormProps['colon']>,\n default: true,\n },\n labelAlign: {\n type: String as PropType<FormProps['labelAlign']>,\n default: 'right',\n },\n labelWrap: Boolean as PropType<FormProps['labelWrap']>,\n disabled: {\n type: Boolean as PropType<FormProps['disabled']>,\n default: false,\n },\n prefixCls: String as PropType<FormProps['prefixCls']>,\n requiredMark: [String, Boolean] as PropType<FormProps['requiredMark']>,\n validateMessages: Object as PropType<FormProps['validateMessages']>,\n validateTrigger: {\n type: [String, Array] as PropType<FormProps['validateTrigger']>,\n default: 'change',\n },\n validateOnRuleChange: {\n type: Boolean as PropType<FormProps['validateOnRuleChange']>,\n default: true,\n },\n scrollToFirstError: {\n type: [Boolean, Object] as PropType<FormProps['scrollToFirstError']>,\n default: false,\n },\n name: String,\n})\n\nexport const commonFieldProps = () => ({\n value: {\n type: [String, Array, Number, Object, Boolean] as PropType<any>,\n },\n readonly: {\n type: Boolean,\n default: undefined,\n },\n readonlyProps: {\n type: Object as PropType<ProFormItemType['readonlyProps']>,\n default: undefined,\n },\n valueEnum: {\n type: [Function, Object] as PropType<ProFormItemType['valueEnum']>,\n default: undefined,\n },\n options: {\n type: [Array, Function] as PropType<ProFormItemType['options']>,\n default: undefined,\n },\n request: {\n type: Function as PropType<ProFormItemType['request']>,\n default: undefined,\n },\n params: {\n type: [Function, Object] as PropType<ProFormItemType['params']>,\n default: undefined,\n },\n dependencies: {\n type: Array as PropType<ProFormItemType['dependencies']>,\n default: undefined,\n },\n onChange: {\n type: Function as PropType<ProFormItemType['onChange']>,\n },\n})\n\nexport const baseFormProps = () => ({\n ...antFormProps(),\n // name: String,\n loading: {\n type: Boolean,\n default: undefined,\n },\n showLoading: {\n type: Boolean,\n default: true,\n },\n submitOnLoading: {\n type: Boolean,\n default: true,\n },\n gridSubmitter: {\n type: Boolean,\n default: false,\n },\n omitNil: { type: Boolean, default: true },\n readonly: Boolean,\n grid: Boolean,\n isKeyPressSubmit: Boolean,\n formKey: String,\n theme: {\n type: String as PropType<ProFormPropsType['theme']>,\n default: 'custom',\n },\n customUi: {\n type: Boolean,\n default: true,\n },\n initialValues: {\n type: Object as PropType<ProFormPropsType['initialValues']>,\n },\n readonlyProps: {\n type: Object as PropType<ProFormPropsType['readonlyProps']>,\n },\n colProps: {\n type: Object as PropType<ProFormPropsType['colProps']>,\n },\n rowProps: {\n type: Object as PropType<ProFormPropsType['rowProps']>,\n },\n dateFormatter: {\n type: [String, Function, Boolean] as PropType<ProFormPropsType['dateFormatter']>,\n default: 'string',\n },\n params: {\n type: Object as PropType<ProFormPropsType['params']>,\n },\n items: {\n type: Array as PropType<ProFormItemType<Entity, any>[]>,\n },\n request: {\n type: Function as PropType<ProFormPropsType['request']>,\n },\n requestAbort: {\n type: Boolean,\n },\n submitter: {\n type: [Object, Boolean] as PropType<ProFormPropsType['submitter']>,\n default: undefined,\n },\n onReset: {\n type: Function as PropType<ProFormPropsType['onReset']>,\n },\n onFinish: {\n type: Function as PropType<ProFormPropsType['onFinish']>,\n },\n onFinishFailed: {\n type: Function as PropType<ProFormPropsType['onFinishFailed']>,\n },\n onLoadingChange: {\n type: Function as PropType<ProFormPropsType['onLoadingChange']>,\n },\n onValuesChange: {\n type: Function as PropType<ProFormPropsType['onValuesChange']>,\n },\n onInit: {\n type: Function as PropType<(values: any, formAction: ProFormActionType) => void>,\n default: undefined,\n },\n})\n\nexport const drawerOrModalFormProps = () => ({\n ...baseFormProps(),\n submitTimeout: {\n type: Number,\n default: undefined,\n },\n title: {\n type: String,\n default: undefined,\n },\n width: {\n type: [String, Number] as PropType<string | number>,\n default: 800,\n },\n open: {\n type: Boolean,\n default: undefined,\n },\n closeOnFinish: {\n type: Boolean,\n default: true,\n },\n confirmOnValuesChange: {\n type: Boolean,\n default: true,\n },\n onOpenChange: {\n type: Function as PropType<(open: boolean) => void>,\n default: undefined,\n },\n})\n\nexport const queryFilterProps = () => ({\n ...baseFormProps(),\n preserve: {\n type: Boolean,\n default: true,\n },\n defaultCollapsed: {\n type: Boolean,\n default: true,\n },\n collapsed: {\n type: Boolean as PropType<boolean | undefined>,\n default: undefined,\n },\n defaultColsNumber: Number,\n defaultFormItemsNumber: Number,\n labelWidth: {\n type: [String, Number] as PropType<number | 'auto'>,\n default: '80',\n },\n searchText: String,\n resetText: String,\n searchGutter: {\n type: Number,\n default: 24,\n },\n span: {\n type: [Number, Object] as PropType<SpanConfig>,\n },\n // span: definePropType<SpanConfig>([Number, String]),\n showHiddenNum: Boolean,\n ignoreRules: Boolean,\n resetOnSubmit: Boolean,\n onCollapse: {\n type: Function as PropType<(val: boolean) => void>,\n default: undefined,\n },\n onResize: {\n type: Function as PropType<(width: number, height: number) => void>,\n default: undefined,\n },\n})\nexport const stepsFormProps = () => ({\n ...baseFormProps(),\n current: {\n type: Number,\n default: undefined,\n },\n steps: {\n type: Array as PropType<(StepProps & { formProps?: BaseFormProps })[]>,\n default: () => [],\n },\n items: {\n type: Array as PropType<ProFormItemType<Entity, any>[][]>,\n default: () => [],\n },\n stepsProps: {\n type: Object as PropType<StepsProps>,\n },\n containerStyle: {\n type: Object as PropType<CSSProperties>,\n },\n onCurrentChange: {\n type: Function as PropType<(current: number) => void>,\n default: undefined,\n },\n})\n\nexport const formProps = () => ({\n ...baseFormProps(),\n ...drawerOrModalFormProps(),\n ...queryFilterProps(),\n ...stepsFormProps(),\n items: {\n type: Array as PropType<Array<ProFormItemType<Entity, any>[]> | ProFormItemType<Entity, any>[]>,\n default: () => [],\n },\n})\n\nexport type BaseFormProps = Partial<ExtractPropTypes<ReturnType<typeof baseFormProps>>>\n\nexport type ProFormProps = Partial<ExtractPropTypes<ReturnType<typeof formProps>>>\nexport type ProQueryFilterProps = Partial<ExtractPropTypes<ReturnType<typeof queryFilterProps>>>\nexport type ProStepsFormProps = Partial<ExtractPropTypes<ReturnType<typeof stepsFormProps>>>\nexport type ProDrawerOrModalFormProps = Partial<\n ExtractPropTypes<ReturnType<typeof drawerOrModalFormProps>>\n>\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"props.js","sources":["../../../../../../packages/components/form/src/props.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-07-30 08:16:14\n * @LastEditors: shen\n * @LastEditTime: 2025-09-09 16:58:33\n * @Description:\n */\nimport type { CSSProperties, ExtractPropTypes, PropType } from 'vue'\nimport type {\n ProFormPropsType,\n ProFormItemType,\n Entity,\n SpanConfig,\n ProFormActionType,\n} from './type'\n\nimport type { StepsProps, StepProps, FormProps } from 'ant-design-vue'\n\nexport const antFormProps = () => ({\n layout: {\n type: String as PropType<FormProps['layout']>,\n default: 'horizontal',\n },\n labelCol: {\n type: Object as PropType<FormProps['labelCol']>,\n },\n wrapperCol: {\n type: Object as PropType<FormProps['wrapperCol']>,\n },\n colon: {\n type: Boolean as PropType<FormProps['colon']>,\n default: true,\n },\n requiredMark: {\n type: [Boolean, String] as PropType<FormProps['requiredMark']>,\n default: true,\n },\n labelAlign: {\n type: String as PropType<FormProps['labelAlign']>,\n default: 'right',\n },\n labelWrap: Boolean as PropType<FormProps['labelWrap']>,\n disabled: {\n type: Boolean as PropType<FormProps['disabled']>,\n default: false,\n },\n prefixCls: String as PropType<FormProps['prefixCls']>,\n validateMessages: Object as PropType<FormProps['validateMessages']>,\n validateTrigger: {\n type: [String, Array] as PropType<FormProps['validateTrigger']>,\n default: 'change',\n },\n validateOnRuleChange: {\n type: Boolean as PropType<FormProps['validateOnRuleChange']>,\n default: true,\n },\n scrollToFirstError: {\n type: [Boolean, Object] as PropType<FormProps['scrollToFirstError']>,\n default: false,\n },\n name: String,\n})\n\nexport const commonFieldProps = () => ({\n value: {\n type: [String, Array, Number, Object, Boolean] as PropType<any>,\n },\n readonly: {\n type: Boolean,\n default: undefined,\n },\n readonlyProps: {\n type: Object as PropType<ProFormItemType['readonlyProps']>,\n default: undefined,\n },\n valueEnum: {\n type: [Function, Object] as PropType<ProFormItemType['valueEnum']>,\n default: undefined,\n },\n options: {\n type: [Array, Function] as PropType<ProFormItemType['options']>,\n default: undefined,\n },\n request: {\n type: Function as PropType<ProFormItemType['request']>,\n default: undefined,\n },\n params: {\n type: [Function, Object] as PropType<ProFormItemType['params']>,\n default: undefined,\n },\n dependencies: {\n type: Array as PropType<ProFormItemType['dependencies']>,\n default: undefined,\n },\n onChange: {\n type: Function as PropType<ProFormItemType['onChange']>,\n },\n})\n\nexport const baseFormProps = () => ({\n ...antFormProps(),\n // name: String,\n loading: {\n type: Boolean,\n default: undefined,\n },\n showLoading: {\n type: Boolean,\n default: true,\n },\n submitOnLoading: {\n type: Boolean,\n default: true,\n },\n gridSubmitter: {\n type: Boolean,\n default: false,\n },\n omitNil: { type: Boolean, default: true },\n readonly: Boolean,\n grid: Boolean,\n isKeyPressSubmit: Boolean,\n formKey: String,\n theme: {\n type: String as PropType<ProFormPropsType['theme']>,\n default: 'custom',\n },\n customUi: {\n type: Boolean,\n default: true,\n },\n initialValues: {\n type: Object as PropType<ProFormPropsType['initialValues']>,\n },\n readonlyProps: {\n type: Object as PropType<ProFormPropsType['readonlyProps']>,\n },\n colProps: {\n type: Object as PropType<ProFormPropsType['colProps']>,\n },\n rowProps: {\n type: Object as PropType<ProFormPropsType['rowProps']>,\n },\n dateFormatter: {\n type: [String, Function, Boolean] as PropType<ProFormPropsType['dateFormatter']>,\n default: 'string',\n },\n params: {\n type: Object as PropType<ProFormPropsType['params']>,\n },\n items: {\n type: Array as PropType<ProFormItemType<Entity, any>[]>,\n },\n request: {\n type: Function as PropType<ProFormPropsType['request']>,\n },\n requestAbort: {\n type: Boolean,\n },\n submitter: {\n type: [Object, Boolean] as PropType<ProFormPropsType['submitter']>,\n default: undefined,\n },\n onReset: {\n type: Function as PropType<ProFormPropsType['onReset']>,\n },\n onFinish: {\n type: Function as PropType<ProFormPropsType['onFinish']>,\n },\n onFinishFailed: {\n type: Function as PropType<ProFormPropsType['onFinishFailed']>,\n },\n onLoadingChange: {\n type: Function as PropType<ProFormPropsType['onLoadingChange']>,\n },\n onValuesChange: {\n type: Function as PropType<ProFormPropsType['onValuesChange']>,\n },\n onInit: {\n type: Function as PropType<(values: any, formAction: ProFormActionType) => void>,\n default: undefined,\n },\n})\n\nexport const drawerOrModalFormProps = () => ({\n ...baseFormProps(),\n submitTimeout: {\n type: Number,\n default: undefined,\n },\n title: {\n type: String,\n default: undefined,\n },\n width: {\n type: [String, Number] as PropType<string | number>,\n default: 800,\n },\n open: {\n type: Boolean,\n default: undefined,\n },\n closeOnFinish: {\n type: Boolean,\n default: true,\n },\n confirmOnValuesChange: {\n type: Boolean,\n default: true,\n },\n onOpenChange: {\n type: Function as PropType<(open: boolean) => void>,\n default: undefined,\n },\n})\n\nexport const queryFilterProps = () => ({\n ...baseFormProps(),\n preserve: {\n type: Boolean,\n default: true,\n },\n defaultCollapsed: {\n type: Boolean,\n default: true,\n },\n collapsed: {\n type: Boolean as PropType<boolean | undefined>,\n default: undefined,\n },\n defaultColsNumber: Number,\n defaultFormItemsNumber: Number,\n labelWidth: {\n type: [String, Number] as PropType<number | 'auto'>,\n default: '80',\n },\n searchText: String,\n resetText: String,\n searchGutter: {\n type: Number,\n default: 24,\n },\n span: {\n type: [Number, Object] as PropType<SpanConfig>,\n },\n // span: definePropType<SpanConfig>([Number, String]),\n showHiddenNum: Boolean,\n ignoreRules: Boolean,\n resetOnSubmit: Boolean,\n onCollapse: {\n type: Function as PropType<(val: boolean) => void>,\n default: undefined,\n },\n onResize: {\n type: Function as PropType<(width: number, height: number) => void>,\n default: undefined,\n },\n})\nexport const stepsFormProps = () => ({\n ...baseFormProps(),\n current: {\n type: Number,\n default: undefined,\n },\n steps: {\n type: Array as PropType<(StepProps & { formProps?: BaseFormProps })[]>,\n default: () => [],\n },\n items: {\n type: Array as PropType<ProFormItemType<Entity, any>[][]>,\n default: () => [],\n },\n stepsProps: {\n type: Object as PropType<StepsProps>,\n },\n containerStyle: {\n type: Object as PropType<CSSProperties>,\n },\n onCurrentChange: {\n type: Function as PropType<(current: number) => void>,\n default: undefined,\n },\n})\n\nexport const formProps = () => ({\n ...baseFormProps(),\n ...drawerOrModalFormProps(),\n ...queryFilterProps(),\n ...stepsFormProps(),\n items: {\n type: Array as PropType<Array<ProFormItemType<Entity, any>[]> | ProFormItemType<Entity, any>[]>,\n default: () => [],\n },\n})\n\nexport type BaseFormProps = Partial<ExtractPropTypes<ReturnType<typeof baseFormProps>>>\n\nexport type ProFormProps = Partial<ExtractPropTypes<ReturnType<typeof formProps>>>\nexport type ProQueryFilterProps = Partial<ExtractPropTypes<ReturnType<typeof queryFilterProps>>>\nexport type ProStepsFormProps = Partial<ExtractPropTypes<ReturnType<typeof stepsFormProps>>>\nexport type ProDrawerOrModalFormProps = Partial<\n ExtractPropTypes<ReturnType<typeof drawerOrModalFormProps>>\n>\n"],"names":[],"mappings":"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"}
|
@@ -6129,7 +6129,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
6129
6129
|
}>;
|
6130
6130
|
};
|
6131
6131
|
icon: {
|
6132
|
-
type:
|
6132
|
+
type: PropType<any>;
|
6133
6133
|
default: string;
|
6134
6134
|
};
|
6135
6135
|
iconStyle: {
|
@@ -6212,7 +6212,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
6212
6212
|
}>;
|
6213
6213
|
};
|
6214
6214
|
icon: {
|
6215
|
-
type:
|
6215
|
+
type: PropType<any>;
|
6216
6216
|
default: string;
|
6217
6217
|
};
|
6218
6218
|
iconStyle: {
|
@@ -6237,7 +6237,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
6237
6237
|
"onMenu-click"?: ((...args: any[]) => any) | undefined;
|
6238
6238
|
}>, {
|
6239
6239
|
danger: boolean;
|
6240
|
-
icon:
|
6240
|
+
icon: any;
|
6241
6241
|
htmlType: import("ant-design-vue/es/button/buttonTypes").ButtonHTMLType | undefined;
|
6242
6242
|
loading: boolean | {
|
6243
6243
|
delay?: number;
|
@@ -6059,7 +6059,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
6059
6059
|
}>;
|
6060
6060
|
};
|
6061
6061
|
icon: {
|
6062
|
-
type:
|
6062
|
+
type: PropType<any>;
|
6063
6063
|
default: string;
|
6064
6064
|
};
|
6065
6065
|
iconStyle: {
|
@@ -6142,7 +6142,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
6142
6142
|
}>;
|
6143
6143
|
};
|
6144
6144
|
icon: {
|
6145
|
-
type:
|
6145
|
+
type: PropType<any>;
|
6146
6146
|
default: string;
|
6147
6147
|
};
|
6148
6148
|
iconStyle: {
|
@@ -6167,7 +6167,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
6167
6167
|
"onMenu-click"?: ((...args: any[]) => any) | undefined;
|
6168
6168
|
}>, {
|
6169
6169
|
danger: boolean;
|
6170
|
-
icon:
|
6170
|
+
icon: any;
|
6171
6171
|
htmlType: import("ant-design-vue/es/button/buttonTypes").ButtonHTMLType | undefined;
|
6172
6172
|
loading: boolean | {
|
6173
6173
|
delay?: number;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"BodyRow.vue.js","sources":["../../../../../../../../packages/components/table/src/components/Body/BodyRow.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2023-11-08 21:59:48\n * @LastEditors: shen\n * @LastEditTime: 2024-06-04 22:33:24\n * @Description: \n-->\n<script lang=\"ts\">\nimport {\n defineComponent,\n getCurrentInstance,\n ref,\n watch,\n onBeforeUnmount,\n computed,\n nextTick,\n watchEffect,\n} from 'vue'\nimport { useInjectTable } from '../context/TableContext'\nimport { useInjectBody } from '../context/BodyContext'\nimport { useInjectBodyRows, useProvideBodyRow } from '../context/BodyRowsContext'\nimport { ExpandColumnKey } from '../../hooks/useColumns'\nimport { RenderSlot } from '../../utils/renderVNode'\nimport { useEditInject } from '../../hooks/useEdit'\nimport { useCellSelection } from '../../hooks/useCellSelection'\nimport { useCellKeyboard } from '../../hooks/useCellKeyboard'\nimport { useInjectHover } from '../../hooks/useHover'\nimport { addClass, removeClass } from '../../utils/class'\nimport ResizeObserver from 'resize-observer-polyfill'\nimport eagerComputed from '../../utils/eagerComputed'\nimport classNames from '../../utils/classNames'\nimport BodyCell from './BodyCell'\nimport ExpandedRow from './ExpandedRow.vue'\nimport BodyExtraCell from './BodyExtraCell.vue'\nimport ExpandIcon from '../ExpandIcon.vue'\n\nimport type { CSSProperties, PropType } from 'vue'\nimport type { RowClassName, RowType, Key } from '../interface'\n\nlet uniIdCount = 0\nexport default defineComponent({\n name: 'STableBodyRow',\n components: {\n ExpandIcon,\n BodyCell,\n ExpandedRow,\n BodyExtraCell,\n RenderSlot,\n },\n inheritAttrs: false,\n props: {\n prefixCls: String as PropType<string>,\n isExpandRow: Boolean as PropType<boolean>,\n record: { type: Object },\n type: { type: String as PropType<RowType> },\n rowKey: { type: [Number, String] as PropType<Key>, required: true },\n supportExpand: Boolean,\n pos: Number as PropType<number>,\n rowIndex: Number as PropType<number>,\n flattenRowIndex: Number,\n indent: Number as PropType<number>,\n wrapText: { type: Boolean as PropType<boolean>, default: false },\n getRowClassName: { type: Function as PropType<RowClassName<any>> },\n },\n setup(props) {\n const rowUniId = 'row_uni_id_' + uniIdCount++\n const tableContext = useInjectTable()\n const rowInstance = getCurrentInstance()\n\n const { editCellKeys, closeEditor, openEditor } = useEditInject()\n\n let isUnmount = false\n const bodyRow = ref()\n\n const { onCellMousedown, onCellMousemove, onCellClick } = useCellSelection()\n const { onCellKeydown } = useCellKeyboard()\n\n const calMaxHeight = () => {\n if (isUnmount) return\n let rowHeight = 0\n let autoCells: HTMLDivElement[] = []\n if (bodyRow.value) {\n autoCells = bodyRow.value.querySelectorAll('div[data-cell-auto=true]')\n }\n autoCells.forEach((autoCell: HTMLDivElement) => {\n const { offsetWidth, offsetHeight } = autoCell\n let autoCellHeight = offsetWidth ? offsetHeight : 0\n const parentStyle = getComputedStyle(autoCell.parentNode as Element)\n autoCellHeight +=\n parseFloat(parentStyle.getPropertyValue('border-top-width')) +\n parseFloat(parentStyle.getPropertyValue('border-bottom-width'))\n rowHeight = rowHeight > autoCellHeight ? rowHeight : autoCellHeight\n })\n if (autoCells.length) {\n tableContext.addRowHeight(rowUniId, props.rowKey!, rowHeight)\n } else {\n tableContext.removeRowHeight(rowUniId)\n }\n }\n\n watch(\n () => props.rowKey,\n () => {\n calMaxHeight()\n },\n { flush: 'post' },\n )\n\n const resizeObserver: ResizeObserver = new ResizeObserver(() => {\n calMaxHeight()\n })\n\n const { columns, columnStartIndex } = useInjectBodyRows()\n const mergedColumns = computed(() =>\n (props.type === 'center'\n ? tableContext.centerRowColumnsMap.value.get(props.rowKey)\n : columns.value)!.filter((item) => !!item),\n )\n\n const { tooltipOpen, leftPopupContainer, centerPopupContainer, rightPopupContainer } =\n useInjectBody()\n const { handleCellBlur, handleCellHover, hoverRowKey, hoverColumnKey } = useInjectHover()\n\n const popupContainer = computed(() =>\n props.type === 'left'\n ? leftPopupContainer.value\n : props.type === 'center'\n ? centerPopupContainer.value\n : props.type === 'right'\n ? rightPopupContainer.value\n : null,\n )\n\n const isDragging = eagerComputed(() => tableContext.draggingRowKey.value === props.rowKey)\n const isRowHover = eagerComputed(() => hoverRowKey.value === props.rowKey)\n\n watch(\n [isRowHover, bodyRow],\n () => {\n bodyRow.value &&\n (isRowHover.value\n ? addClass(bodyRow.value, `${props.prefixCls}-row-hover`)\n : removeClass(bodyRow.value, `${props.prefixCls}-row-hover`))\n },\n { immediate: true, flush: 'post' },\n )\n\n const mergedTooltipOpen = eagerComputed(() => tooltipOpen.value && isRowHover.value)\n\n let timer: any\n onBeforeUnmount(() => {\n isUnmount = true\n resizeObserver.disconnect()\n clearTimeout(timer)\n tableContext.removeRowHeight(rowUniId)\n })\n\n const hasMultiRowSpanInfo = eagerComputed(() => {\n return !tableContext.hasMultiRowSpanInfo.value[props.rowKey!]\n })\n\n const customRowProps = computed(() => {\n return tableContext.props.customRow?.(props.record!, props.rowIndex)\n })\n\n const rowSelectionType = computed(() => {\n return tableContext.props.rowSelection?.type\n })\n\n const isExpanded = ref(false)\n const expandedRowKeys = computed(() => tableContext.expandedRowKeys.value)\n const expanded = eagerComputed(() => expandedRowKeys.value.has?.(props.rowKey!))\n const expandIconColumnIndex = computed(() => tableContext.expandIconColumnIndex.value || 0)\n const indentSize = computed(() => tableContext.indentSize.value)\n\n watchEffect(() => {\n if (expanded.value) {\n isExpanded.value = true\n }\n })\n\n const rowExpandable = computed(\n () =>\n tableContext.expandType.value === 'row' &&\n tableContext.props.rowExpandable?.(props.record!),\n )\n\n const nestExpandable = computed(() => tableContext.expandType.value === 'nest')\n\n const hasNestChildren = computed(\n () =>\n !!(\n tableContext.childrenColumnName.value &&\n props.record?.[tableContext.childrenColumnName.value]\n ),\n )\n const mergedExpandable = computed(() => rowExpandable.value || nestExpandable.value)\n\n const onInternalTriggerExpand = (record: any, event: any) => {\n tableContext.onTriggerExpand(record, props.rowKey!, event)\n }\n\n const mergedRowHeights = computed(() => tableContext.mergedRowHeights.value)\n\n const height = eagerComputed(() => mergedRowHeights.value[props.rowKey!])\n const cellHeight = eagerComputed(() => tableContext.rowHeights.value[props.rowKey!])\n\n const isSelected = computed(\n () =>\n tableContext.props.highlightSelectRow &&\n tableContext.selection.derivedSelectedKeySet.value.has(props.rowKey!),\n )\n\n const rowClass = computed(() => {\n const { prefixCls, record, rowIndex, indent } = props\n const isEven = rowIndex! % 2 == 0\n return classNames(\n {\n [`${prefixCls}-row`]: true,\n [`${prefixCls}-row-level-${indent}`]: true,\n [`${prefixCls}-row-hover`]: isRowHover.value,\n [`${prefixCls}-row-dragging`]: isDragging.value,\n [`${prefixCls}-row-dragging-insert-target`]:\n tableContext.insertToRowKey.value === props.rowKey,\n [`${prefixCls}-row-odd`]: !isEven,\n [`${prefixCls}-row-even`]: isEven,\n [`${prefixCls}-no-height`]: !height.value,\n [`${prefixCls}-row-selected`]: isSelected.value,\n },\n props.getRowClassName?.(record, rowIndex!, indent),\n )\n })\n\n const expandRowClass = computed(() => {\n const { prefixCls, record, rowIndex, indent } = props\n return classNames(\n {\n [`${prefixCls}-row`]: true,\n [`${prefixCls}-expanded-row`]: true,\n [`${prefixCls}-expanded-row-level-${indent! + 1}`]: true,\n [`${prefixCls}-no-height`]: !height.value,\n },\n props.getRowClassName?.(record, rowIndex!, indent),\n )\n })\n\n const expandColumnWidth = eagerComputed(() => {\n return tableContext.allCellProps.value[props.rowKey!]?.[ExpandColumnKey]?.props?.style?.width\n })\n\n const rowStyle = computed<CSSProperties>(() => {\n const style: CSSProperties = {\n opacity: 1,\n [`--${props.prefixCls}-row-bg`]: `var(--${props.prefixCls}-row-bg-${props.rowKey}, var(--${props.prefixCls}-bg))`,\n }\n if (hasMultiRowSpanInfo.value) {\n style.transform = `translateY(${props.pos}px)`\n } else {\n style.top = `${props.pos}px`\n }\n if (height.value !== undefined) {\n style.height = `${height.value}px`\n } else {\n style.height = `${tableContext.baseHeight.value}px`\n }\n if (props.isExpandRow && columnStartIndex.value === 0) {\n style.width = expandColumnWidth.value\n style.minWidth = '100%'\n }\n return style\n })\n\n watch(\n () => ({ ...rowStyle.value }),\n (newStyle, oldStyle = {}) => {\n if (tableContext.animateRows.value && !tableContext.useAnimate.value) {\n if (\n newStyle.top !== oldStyle.top ||\n newStyle.height !== oldStyle.height ||\n newStyle.transform !== oldStyle.transform\n ) {\n nextTick(() => {\n clearTimeout(timer)\n if (rowInstance?.vnode.el && rowInstance.vnode.el.style) {\n rowInstance.vnode.el.style.transition = 'none'\n timer = setTimeout(() => {\n if (rowInstance?.vnode?.el?.style) {\n rowInstance.vnode.el.style.transition = null\n }\n }, 100)\n }\n })\n }\n }\n },\n { immediate: true },\n )\n\n useProvideBodyRow({\n top: computed(() => props.pos!),\n height: computed(() =>\n height.value !== undefined ? height.value : tableContext.baseHeight.value,\n ),\n rowKey: computed(() => props.rowKey),\n })\n\n const cellClass = computed(() => ({\n [`${props.prefixCls}-cell`]: true,\n [`${props.prefixCls}-position-absolute`]: true,\n }))\n\n return {\n rowClass,\n rowStyle,\n cellClass,\n tableContext,\n mergedRowHeights,\n handleCellBlur,\n handleCellHover,\n handleClick: (event: any) => {\n tableContext.props.expandRowByClick &&\n mergedExpandable.value &&\n onInternalTriggerExpand(props.record, event)\n },\n rowSelectionType,\n nestExpandable,\n hasNestChildren,\n mergedExpandable,\n expandIconColumnIndex,\n indentSize,\n expanded,\n onInternalTriggerExpand,\n customRowProps,\n expandColumnKey: ExpandColumnKey,\n expandRowClass,\n mergedColumns,\n height,\n cellHeight,\n columnStartIndex,\n resizeObserver,\n calMaxHeight,\n bodyRow,\n hoverRowKey,\n hoverColumnKey,\n xVirtual: eagerComputed(() => tableContext.xVirtual.value),\n getPopupContainer: () => popupContainer.value!,\n editCellKeys,\n closeEditor,\n openEditor,\n mergedTooltipOpen,\n onCellMousedown,\n onCellKeydown,\n onCellMousemove,\n onCellClick,\n }\n },\n})\n</script>\n\n<template>\n <template v-if=\"isExpandRow\">\n <div\n v-if=\"columnStartIndex === 0\"\n ref=\"bodyRow\"\n :data-row-key=\"rowKey\"\n :class=\"expandRowClass\"\n :style=\"rowStyle\"\n role=\"row\"\n >\n <ExpandedRow\n :prefix-cls=\"prefixCls\"\n :item=\"record\"\n :row-key=\"rowKey\"\n :row-index=\"rowIndex\"\n :resize-observer=\"resizeObserver\"\n :cal-max-height=\"calMaxHeight\"\n />\n </div>\n </template>\n <div\n v-else\n v-bind=\"customRowProps\"\n ref=\"bodyRow\"\n :class=\"rowClass\"\n :style=\"rowStyle\"\n :data-row-key=\"rowKey\"\n role=\"row\"\n @click=\"handleClick\"\n >\n <RenderSlot>\n <template v-for=\"(column, index) in mergedColumns\" :key=\"column && column.columnKey\">\n <BodyExtraCell\n v-if=\"column && column.__Internal__Column__\"\n :prefix-cls=\"prefixCls\"\n :row-key=\"rowKey\"\n :row-index=\"rowIndex!\"\n :type=\"type\"\n :column=\"mergedColumns?.[index]\"\n :expanded=\"expanded\"\n :support-expand=\"mergedExpandable\"\n :record=\"record\"\n @mouseenter=\"\n handleCellHover(rowKey, column.columnKey, tableContext.draggingRowKey.value!)\n \"\n @mouseleave=\"handleCellBlur\"\n />\n <BodyCell\n v-else-if=\"column\"\n :prefix-cls=\"prefixCls\"\n :item=\"record\"\n :row-key=\"rowKey\"\n :type=\"type\"\n :row-index=\"rowIndex!\"\n :flatten-row-index=\"flattenRowIndex\"\n :wrap-text=\"wrapText\"\n :column=\"column\"\n :resize-observer=\"resizeObserver\"\n :cal-max-height=\"calMaxHeight\"\n :has-append-node=\"column.columnIndex === expandIconColumnIndex && nestExpandable\"\n :height=\"cellHeight\"\n :get-popup-container=\"getPopupContainer\"\n :tooltip-open=\"mergedTooltipOpen && hoverColumnKey === column.columnKey\"\n :edit-cell-keys=\"editCellKeys\"\n @closeEditor=\"closeEditor\"\n @openEditor=\"openEditor\"\n @mouseenter=\"\n handleCellHover(rowKey, column.columnKey, tableContext.draggingRowKey.value!)\n \"\n @cellLeave=\"handleCellBlur\"\n @mousedown=\"onCellMousedown\"\n @mousemove=\"onCellMousemove\"\n @keydown=\"onCellKeydown\"\n @click=\"onCellClick\"\n >\n <template #appendNode>\n <div :class=\"`${prefixCls}-append-node`\">\n <span\n :style=\"`padding-left: ${(indent || 0) * indentSize}px`\"\n :class=\"`${prefixCls}-row-indent indent-level-${indent}`\"\n ></span>\n <ExpandIcon\n :expanded=\"expanded\"\n :prefix-cls=\"prefixCls\"\n :expandable=\"hasNestChildren\"\n :record=\"record\"\n :disabled=\"!mergedExpandable\"\n @expand=\"onInternalTriggerExpand\"\n />\n </div>\n </template>\n </BodyCell>\n </template>\n </RenderSlot>\n <div v-if=\"type !== 'center'\" :class=\"`${prefixCls}-cell-shadow-${type}`\"></div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_Fragment","_normalizeClass","_normalizeStyle","_createVNode","_mergeProps","_withCtx","_renderList","_createBlock","_createElementVNode"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"BodyRow.vue.js","sources":["../../../../../../../../packages/components/table/src/components/Body/BodyRow.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2023-11-08 21:59:48\n * @LastEditors: shen\n * @LastEditTime: 2025-09-10 15:16:56\n * @Description:\n-->\n<script lang=\"ts\">\nimport {\n defineComponent,\n getCurrentInstance,\n ref,\n watch,\n onBeforeUnmount,\n computed,\n nextTick,\n watchEffect,\n} from 'vue'\nimport { useInjectTable } from '../context/TableContext'\nimport { useInjectBody } from '../context/BodyContext'\nimport { useInjectBodyRows, useProvideBodyRow } from '../context/BodyRowsContext'\nimport { ExpandColumnKey } from '../../hooks/useColumns'\nimport { RenderSlot } from '../../utils/renderVNode'\nimport { useEditInject } from '../../hooks/useEdit'\nimport { useCellSelection } from '../../hooks/useCellSelection'\nimport { useCellKeyboard } from '../../hooks/useCellKeyboard'\nimport { useInjectHover } from '../../hooks/useHover'\nimport { addClass, removeClass } from '../../utils/class'\nimport ResizeObserver from 'resize-observer-polyfill'\nimport eagerComputed from '../../utils/eagerComputed'\nimport classNames from '../../utils/classNames'\nimport BodyCell from './BodyCell'\nimport ExpandedRow from './ExpandedRow.vue'\nimport BodyExtraCell from './BodyExtraCell.vue'\nimport ExpandIcon from '../ExpandIcon.vue'\n\nimport type { CSSProperties, PropType } from 'vue'\nimport type { RowClassName, RowType, Key } from '../interface'\n\nlet uniIdCount = 0\nexport default defineComponent({\n name: 'ProTableBodyRow',\n components: {\n ExpandIcon,\n BodyCell,\n ExpandedRow,\n BodyExtraCell,\n RenderSlot,\n },\n inheritAttrs: false,\n props: {\n prefixCls: String as PropType<string>,\n isExpandRow: Boolean as PropType<boolean>,\n record: { type: Object },\n type: { type: String as PropType<RowType> },\n rowKey: { type: [Number, String] as PropType<Key>, required: true },\n supportExpand: Boolean,\n pos: Number as PropType<number>,\n rowIndex: Number as PropType<number>,\n flattenRowIndex: Number,\n indent: Number as PropType<number>,\n wrapText: { type: Boolean as PropType<boolean>, default: false },\n getRowClassName: { type: Function as PropType<RowClassName<any>> },\n },\n setup(props) {\n const rowUniId = 'row_uni_id_' + uniIdCount++\n const tableContext = useInjectTable()\n const rowInstance = getCurrentInstance()\n\n const { editCellKeys, closeEditor, openEditor } = useEditInject()\n\n let isUnmount = false\n const bodyRow = ref()\n\n const { onCellMousedown, onCellMousemove, onCellClick } = useCellSelection()\n const { onCellKeydown } = useCellKeyboard()\n\n const calMaxHeight = () => {\n if (isUnmount) return\n let rowHeight = 0\n let autoCells: HTMLDivElement[] = []\n if (bodyRow.value) {\n autoCells = bodyRow.value.querySelectorAll('div[data-cell-auto=true]')\n }\n autoCells.forEach((autoCell: HTMLDivElement) => {\n const { offsetWidth, offsetHeight } = autoCell\n let autoCellHeight = offsetWidth ? offsetHeight : 0\n const parentStyle = getComputedStyle(autoCell.parentNode as Element)\n autoCellHeight +=\n parseFloat(parentStyle.getPropertyValue('border-top-width')) +\n parseFloat(parentStyle.getPropertyValue('border-bottom-width'))\n rowHeight = rowHeight > autoCellHeight ? rowHeight : autoCellHeight\n })\n if (autoCells.length) {\n tableContext.addRowHeight(rowUniId, props.rowKey!, rowHeight)\n } else {\n tableContext.removeRowHeight(rowUniId)\n }\n }\n\n watch(\n () => props.rowKey,\n () => {\n calMaxHeight()\n },\n { flush: 'post' },\n )\n\n const resizeObserver: ResizeObserver = new ResizeObserver(() => {\n calMaxHeight()\n })\n\n const { columns, columnStartIndex } = useInjectBodyRows()\n const mergedColumns = computed(() =>\n (props.type === 'center'\n ? tableContext.centerRowColumnsMap.value.get(props.rowKey)\n : columns.value)!.filter((item) => !!item),\n )\n\n const { tooltipOpen, leftPopupContainer, centerPopupContainer, rightPopupContainer } =\n useInjectBody()\n const { handleCellBlur, handleCellHover, hoverRowKey, hoverColumnKey } = useInjectHover()\n\n const popupContainer = computed(() =>\n props.type === 'left'\n ? leftPopupContainer.value\n : props.type === 'center'\n ? centerPopupContainer.value\n : props.type === 'right'\n ? rightPopupContainer.value\n : null,\n )\n\n const isDragging = eagerComputed(() => tableContext.draggingRowKey.value === props.rowKey)\n const isRowHover = eagerComputed(() => hoverRowKey.value === props.rowKey)\n\n watch(\n [isRowHover, bodyRow],\n () => {\n bodyRow.value &&\n (isRowHover.value\n ? addClass(bodyRow.value, `${props.prefixCls}-row-hover`)\n : removeClass(bodyRow.value, `${props.prefixCls}-row-hover`))\n },\n { immediate: true, flush: 'post' },\n )\n\n const mergedTooltipOpen = eagerComputed(() => tooltipOpen.value && isRowHover.value)\n\n let timer: any\n onBeforeUnmount(() => {\n isUnmount = true\n resizeObserver.disconnect()\n clearTimeout(timer)\n tableContext.removeRowHeight(rowUniId)\n })\n\n const hasMultiRowSpanInfo = eagerComputed(() => {\n return !tableContext.hasMultiRowSpanInfo.value[props.rowKey!]\n })\n\n const customRowProps = computed(() => {\n return tableContext.props.customRow?.(props.record!, props.rowIndex)\n })\n\n const rowSelectionType = computed(() => {\n return tableContext.props.rowSelection?.type\n })\n\n const isExpanded = ref(false)\n const expandedRowKeys = computed(() => tableContext.expandedRowKeys.value)\n const expanded = eagerComputed(() => expandedRowKeys.value.has?.(props.rowKey!))\n const expandIconColumnIndex = computed(() => tableContext.expandIconColumnIndex.value || 0)\n const indentSize = computed(() => tableContext.indentSize.value)\n\n watchEffect(() => {\n if (expanded.value) {\n isExpanded.value = true\n }\n })\n\n const rowExpandable = computed(\n () =>\n tableContext.expandType.value === 'row' &&\n tableContext.props.rowExpandable?.(props.record!),\n )\n\n const nestExpandable = computed(() => tableContext.expandType.value === 'nest')\n\n const hasNestChildren = computed(\n () =>\n !!(\n tableContext.childrenColumnName.value &&\n props.record?.[tableContext.childrenColumnName.value]\n ),\n )\n const mergedExpandable = computed(() => rowExpandable.value || nestExpandable.value)\n\n const onInternalTriggerExpand = (record: any, event: any) => {\n tableContext.onTriggerExpand(record, props.rowKey!, event)\n }\n\n const mergedRowHeights = computed(() => tableContext.mergedRowHeights.value)\n\n const height = eagerComputed(() => mergedRowHeights.value[props.rowKey!])\n const cellHeight = eagerComputed(() => tableContext.rowHeights.value[props.rowKey!])\n\n const isSelected = computed(\n () =>\n tableContext.props.highlightSelectRow &&\n tableContext.selection.derivedSelectedKeySet.value.has(props.rowKey!),\n )\n\n const rowClass = computed(() => {\n const { prefixCls, record, rowIndex, indent } = props\n const isEven = rowIndex! % 2 == 0\n return classNames(\n {\n [`${prefixCls}-row`]: true,\n [`${prefixCls}-row-level-${indent}`]: true,\n [`${prefixCls}-row-hover`]: isRowHover.value,\n [`${prefixCls}-row-dragging`]: isDragging.value,\n [`${prefixCls}-row-dragging-insert-target`]:\n tableContext.insertToRowKey.value === props.rowKey,\n [`${prefixCls}-row-odd`]: !isEven,\n [`${prefixCls}-row-even`]: isEven,\n [`${prefixCls}-no-height`]: !height.value,\n [`${prefixCls}-row-selected`]: isSelected.value,\n },\n props.getRowClassName?.(record, rowIndex!, indent),\n )\n })\n\n const expandRowClass = computed(() => {\n const { prefixCls, record, rowIndex, indent } = props\n return classNames(\n {\n [`${prefixCls}-row`]: true,\n [`${prefixCls}-expanded-row`]: true,\n [`${prefixCls}-expanded-row-level-${indent! + 1}`]: true,\n [`${prefixCls}-no-height`]: !height.value,\n },\n props.getRowClassName?.(record, rowIndex!, indent),\n )\n })\n\n const expandColumnWidth = eagerComputed(() => {\n return tableContext.allCellProps.value[props.rowKey!]?.[ExpandColumnKey]?.props?.style?.width\n })\n\n const rowStyle = computed<CSSProperties>(() => {\n const style: CSSProperties = {\n opacity: 1,\n [`--${props.prefixCls}-row-bg`]: `var(--${props.prefixCls}-row-bg-${props.rowKey}, var(--${props.prefixCls}-bg))`,\n }\n if (hasMultiRowSpanInfo.value) {\n style.transform = `translateY(${props.pos}px)`\n } else {\n style.top = `${props.pos}px`\n }\n if (height.value !== undefined) {\n style.height = `${height.value}px`\n } else {\n style.height = `${tableContext.baseHeight.value}px`\n }\n if (props.isExpandRow && columnStartIndex.value === 0) {\n style.width = expandColumnWidth.value\n style.minWidth = '100%'\n }\n return style\n })\n\n watch(\n () => ({ ...rowStyle.value }),\n (newStyle, oldStyle = {}) => {\n if (tableContext.animateRows.value && !tableContext.useAnimate.value) {\n if (\n newStyle.top !== oldStyle.top ||\n newStyle.height !== oldStyle.height ||\n newStyle.transform !== oldStyle.transform\n ) {\n nextTick(() => {\n clearTimeout(timer)\n if (rowInstance?.vnode.el && rowInstance.vnode.el.style) {\n rowInstance.vnode.el.style.transition = 'none'\n timer = setTimeout(() => {\n if (rowInstance?.vnode?.el?.style) {\n rowInstance.vnode.el.style.transition = null\n }\n }, 100)\n }\n })\n }\n }\n },\n { immediate: true },\n )\n\n useProvideBodyRow({\n top: computed(() => props.pos!),\n height: computed(() =>\n height.value !== undefined ? height.value : tableContext.baseHeight.value,\n ),\n rowKey: computed(() => props.rowKey),\n })\n\n const cellClass = computed(() => ({\n [`${props.prefixCls}-cell`]: true,\n [`${props.prefixCls}-position-absolute`]: true,\n }))\n\n return {\n rowClass,\n rowStyle,\n cellClass,\n tableContext,\n mergedRowHeights,\n handleCellBlur,\n handleCellHover,\n handleClick: (event: any) => {\n tableContext.props.expandRowByClick &&\n mergedExpandable.value &&\n onInternalTriggerExpand(props.record, event)\n },\n rowSelectionType,\n nestExpandable,\n hasNestChildren,\n mergedExpandable,\n expandIconColumnIndex,\n indentSize,\n expanded,\n onInternalTriggerExpand,\n customRowProps,\n expandColumnKey: ExpandColumnKey,\n expandRowClass,\n mergedColumns,\n height,\n cellHeight,\n columnStartIndex,\n resizeObserver,\n calMaxHeight,\n bodyRow,\n hoverRowKey,\n hoverColumnKey,\n xVirtual: eagerComputed(() => tableContext.xVirtual.value),\n getPopupContainer: () => popupContainer.value!,\n editCellKeys,\n closeEditor,\n openEditor,\n mergedTooltipOpen,\n onCellMousedown,\n onCellKeydown,\n onCellMousemove,\n onCellClick,\n }\n },\n})\n</script>\n\n<template>\n <template v-if=\"isExpandRow\">\n <div\n v-if=\"columnStartIndex === 0\"\n ref=\"bodyRow\"\n :data-row-key=\"rowKey\"\n :class=\"expandRowClass\"\n :style=\"rowStyle\"\n role=\"row\"\n >\n <ExpandedRow\n :prefix-cls=\"prefixCls\"\n :item=\"record\"\n :row-key=\"rowKey\"\n :row-index=\"rowIndex\"\n :resize-observer=\"resizeObserver\"\n :cal-max-height=\"calMaxHeight\"\n />\n </div>\n </template>\n <div\n v-else\n v-bind=\"customRowProps\"\n ref=\"bodyRow\"\n :class=\"rowClass\"\n :style=\"rowStyle\"\n :data-row-key=\"rowKey\"\n role=\"row\"\n @click=\"handleClick\"\n >\n <RenderSlot>\n <template v-for=\"(column, index) in mergedColumns\" :key=\"column && column.columnKey\">\n <BodyExtraCell\n v-if=\"column && column.__Internal__Column__\"\n :prefix-cls=\"prefixCls\"\n :row-key=\"rowKey\"\n :row-index=\"rowIndex!\"\n :type=\"type\"\n :column=\"mergedColumns?.[index]\"\n :expanded=\"expanded\"\n :support-expand=\"mergedExpandable\"\n :record=\"record\"\n @mouseenter=\"\n handleCellHover(rowKey, column.columnKey, tableContext.draggingRowKey.value!)\n \"\n @mouseleave=\"handleCellBlur\"\n />\n <BodyCell\n v-else-if=\"column\"\n :prefix-cls=\"prefixCls\"\n :item=\"record\"\n :row-key=\"rowKey\"\n :type=\"type\"\n :row-index=\"rowIndex!\"\n :flatten-row-index=\"flattenRowIndex\"\n :wrap-text=\"wrapText\"\n :column=\"column\"\n :resize-observer=\"resizeObserver\"\n :cal-max-height=\"calMaxHeight\"\n :has-append-node=\"column.columnIndex === expandIconColumnIndex && nestExpandable\"\n :height=\"cellHeight\"\n :get-popup-container=\"getPopupContainer\"\n :tooltip-open=\"mergedTooltipOpen && hoverColumnKey === column.columnKey\"\n :edit-cell-keys=\"editCellKeys\"\n @closeEditor=\"closeEditor\"\n @openEditor=\"openEditor\"\n @mouseenter=\"\n handleCellHover(rowKey, column.columnKey, tableContext.draggingRowKey.value!)\n \"\n @cellLeave=\"handleCellBlur\"\n @mousedown=\"onCellMousedown\"\n @mousemove=\"onCellMousemove\"\n @keydown=\"onCellKeydown\"\n @click=\"onCellClick\"\n >\n <template #appendNode>\n <div :class=\"`${prefixCls}-append-node`\">\n <span\n :style=\"`padding-left: ${(indent || 0) * indentSize}px`\"\n :class=\"`${prefixCls}-row-indent indent-level-${indent}`\"\n ></span>\n <ExpandIcon\n :expanded=\"expanded\"\n :prefix-cls=\"prefixCls\"\n :expandable=\"hasNestChildren\"\n :record=\"record\"\n :disabled=\"!mergedExpandable\"\n @expand=\"onInternalTriggerExpand\"\n />\n </div>\n </template>\n </BodyCell>\n </template>\n </RenderSlot>\n <div v-if=\"type !== 'center'\" :class=\"`${prefixCls}-cell-shadow-${type}`\"></div>\n </div>\n</template>\n"],"names":["_openBlock","_createElementBlock","_Fragment","_normalizeClass","_normalizeStyle","_createVNode","_mergeProps","_withCtx","_renderList","_createBlock","_createElementVNode"],"mappings":"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"}
|