pro-design-vue 1.3.20 → 1.3.22
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 +1203 -1588
- package/dist/index.full.min.js +7 -9
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +7 -9
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +1204 -1589
- package/es/components/config-provider/src/typing.d.ts +3 -1
- package/es/components/table/src/components/Body/Body.vue.d.ts +270 -15
- package/es/components/table/src/components/Body/BodyCell.vue.d.ts +255 -0
- package/es/components/table/src/components/Body/BodyEditCell.d.ts +60 -0
- package/es/components/table/src/components/Body/BodyExtraCell.vue.d.ts +6 -1
- package/es/components/table/src/components/Body/BodyRow.vue.d.ts +270 -15
- package/es/components/table/src/components/Body/BodyRows.vue.d.ts +270 -15
- package/es/components/table/src/components/Body/{BodyCell.d.ts → BodyTextCell.d.ts} +1 -7
- package/es/components/table/src/components/ExpandIcon.vue.d.ts +3 -0
- package/es/components/table/src/components/InteralTable.vue.d.ts +332 -19
- package/es/components/table/src/components/Table.d.ts +60 -0
- package/es/components/table/src/components/context/TableContext.d.ts +6 -1
- package/es/components/table/src/components/interface.d.ts +308 -23
- package/es/components/table/src/hooks/useCellProps.d.ts +5 -1
- package/es/components/table/src/hooks/useEdit.d.ts +24 -7
- package/es/components/table/src/utils/form-model.d.ts +25 -0
- package/es/components/table/src/utils/util.d.ts +1 -0
- package/es/index.d.ts +291 -5
- package/es/packages/components/table/src/components/Body/BodyCell.vue.mjs +35 -0
- package/es/packages/components/table/src/components/Body/BodyCell.vue.mjs.map +1 -0
- package/es/packages/components/table/src/components/Body/BodyCell.vue2.mjs +129 -0
- package/es/packages/components/table/src/components/Body/BodyCell.vue2.mjs.map +1 -0
- package/es/packages/components/table/src/components/Body/BodyEditCell.mjs +256 -0
- package/es/packages/components/table/src/components/Body/BodyEditCell.mjs.map +1 -0
- package/es/packages/components/table/src/components/Body/BodyExtraCell.vue.mjs +2 -1
- package/es/packages/components/table/src/components/Body/BodyExtraCell.vue.mjs.map +1 -1
- package/es/packages/components/table/src/components/Body/BodyExtraCell.vue2.mjs +1 -0
- package/es/packages/components/table/src/components/Body/BodyExtraCell.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/components/Body/BodyRow.vue.mjs +66 -9
- package/es/packages/components/table/src/components/Body/BodyRow.vue.mjs.map +1 -1
- package/es/packages/components/table/src/components/Body/BodyRow.vue2.mjs +26 -18
- package/es/packages/components/table/src/components/Body/BodyRow.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/components/Body/{BodyCell.mjs → BodyTextCell.mjs} +25 -155
- package/es/packages/components/table/src/components/Body/BodyTextCell.mjs.map +1 -0
- package/es/packages/components/table/src/components/ExpandIcon.vue.mjs.map +1 -1
- package/es/packages/components/table/src/components/ExpandIcon.vue2.mjs +4 -2
- package/es/packages/components/table/src/components/ExpandIcon.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/components/InteralTable.vue.mjs +24 -25
- package/es/packages/components/table/src/components/InteralTable.vue.mjs.map +1 -1
- package/es/packages/components/table/src/components/InteralTable.vue2.mjs +43 -97
- package/es/packages/components/table/src/components/InteralTable.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/components/Table.mjs +24 -20
- package/es/packages/components/table/src/components/Table.mjs.map +1 -1
- package/es/packages/components/table/src/components/context/TableContext.mjs.map +1 -1
- package/es/packages/components/table/src/components/interface.mjs +28 -0
- package/es/packages/components/table/src/components/interface.mjs.map +1 -1
- package/es/packages/components/table/src/hooks/useCellProps.mjs +8 -0
- package/es/packages/components/table/src/hooks/useCellProps.mjs.map +1 -1
- package/es/packages/components/table/src/hooks/useEdit.mjs +293 -18
- package/es/packages/components/table/src/hooks/useEdit.mjs.map +1 -1
- package/es/packages/components/table/src/utils/form-model.mjs +98 -0
- package/es/packages/components/table/src/utils/form-model.mjs.map +1 -0
- package/es/packages/components/table/src/utils/util.mjs +4 -1
- package/es/packages/components/table/src/utils/util.mjs.map +1 -1
- package/es/packages/utils/dom.mjs +15 -1
- package/es/packages/utils/dom.mjs.map +1 -1
- package/es/packages/utils/index.mjs +1 -1
- package/es/utils/dom.d.ts +2 -0
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/config-provider/src/typing.d.ts +3 -1
- package/lib/components/table/src/components/Body/Body.vue.d.ts +270 -15
- package/lib/components/table/src/components/Body/BodyCell.vue.d.ts +255 -0
- package/lib/components/table/src/components/Body/BodyEditCell.d.ts +60 -0
- package/lib/components/table/src/components/Body/BodyExtraCell.vue.d.ts +6 -1
- package/lib/components/table/src/components/Body/BodyRow.vue.d.ts +270 -15
- package/lib/components/table/src/components/Body/BodyRows.vue.d.ts +270 -15
- package/lib/components/table/src/components/Body/{BodyCell.d.ts → BodyTextCell.d.ts} +1 -7
- package/lib/components/table/src/components/ExpandIcon.vue.d.ts +3 -0
- package/lib/components/table/src/components/InteralTable.vue.d.ts +332 -19
- package/lib/components/table/src/components/Table.d.ts +60 -0
- package/lib/components/table/src/components/context/TableContext.d.ts +6 -1
- package/lib/components/table/src/components/interface.d.ts +308 -23
- package/lib/components/table/src/hooks/useCellProps.d.ts +5 -1
- package/lib/components/table/src/hooks/useEdit.d.ts +24 -7
- package/lib/components/table/src/utils/form-model.d.ts +25 -0
- package/lib/components/table/src/utils/util.d.ts +1 -0
- package/lib/index.d.ts +291 -5
- package/lib/packages/components/table/src/components/Body/BodyCell.vue.js +39 -0
- package/lib/packages/components/table/src/components/Body/BodyCell.vue.js.map +1 -0
- package/lib/packages/components/table/src/components/Body/BodyCell.vue2.js +133 -0
- package/lib/packages/components/table/src/components/Body/BodyCell.vue2.js.map +1 -0
- package/lib/packages/components/table/src/components/Body/BodyEditCell.js +260 -0
- package/lib/packages/components/table/src/components/Body/BodyEditCell.js.map +1 -0
- package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue.js +2 -1
- package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue.js.map +1 -1
- package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue2.js +1 -0
- package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue2.js.map +1 -1
- package/lib/packages/components/table/src/components/Body/BodyRow.vue.js +66 -9
- package/lib/packages/components/table/src/components/Body/BodyRow.vue.js.map +1 -1
- package/lib/packages/components/table/src/components/Body/BodyRow.vue2.js +24 -16
- package/lib/packages/components/table/src/components/Body/BodyRow.vue2.js.map +1 -1
- package/lib/packages/components/table/src/components/Body/{BodyCell.js → BodyTextCell.js} +24 -154
- package/lib/packages/components/table/src/components/Body/BodyTextCell.js.map +1 -0
- package/lib/packages/components/table/src/components/ExpandIcon.vue.js.map +1 -1
- package/lib/packages/components/table/src/components/ExpandIcon.vue2.js +4 -2
- package/lib/packages/components/table/src/components/ExpandIcon.vue2.js.map +1 -1
- package/lib/packages/components/table/src/components/InteralTable.vue.js +24 -25
- package/lib/packages/components/table/src/components/InteralTable.vue.js.map +1 -1
- package/lib/packages/components/table/src/components/InteralTable.vue2.js +43 -97
- package/lib/packages/components/table/src/components/InteralTable.vue2.js.map +1 -1
- package/lib/packages/components/table/src/components/Table.js +24 -20
- package/lib/packages/components/table/src/components/Table.js.map +1 -1
- package/lib/packages/components/table/src/components/context/TableContext.js.map +1 -1
- package/lib/packages/components/table/src/components/interface.js +28 -0
- package/lib/packages/components/table/src/components/interface.js.map +1 -1
- package/lib/packages/components/table/src/hooks/useCellProps.js +8 -0
- package/lib/packages/components/table/src/hooks/useCellProps.js.map +1 -1
- package/lib/packages/components/table/src/hooks/useEdit.js +292 -17
- package/lib/packages/components/table/src/hooks/useEdit.js.map +1 -1
- package/lib/packages/components/table/src/utils/form-model.js +102 -0
- package/lib/packages/components/table/src/utils/form-model.js.map +1 -0
- package/lib/packages/components/table/src/utils/util.js +4 -0
- package/lib/packages/components/table/src/utils/util.js.map +1 -1
- package/lib/packages/utils/dom.js +16 -0
- package/lib/packages/utils/dom.js.map +1 -1
- package/lib/packages/utils/index.js +2 -0
- package/lib/packages/utils/index.js.map +1 -1
- package/lib/utils/dom.d.ts +2 -0
- 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/src/table/table.less +78 -25
- package/es/components/table/src/components/Body/EditInput.vue.d.ts +0 -102
- package/es/packages/components/table/src/components/Body/BodyCell.mjs.map +0 -1
- package/es/packages/components/table/src/components/Body/EditInput.vue.mjs +0 -48
- package/es/packages/components/table/src/components/Body/EditInput.vue.mjs.map +0 -1
- package/es/packages/components/table/src/components/Body/EditInput.vue2.mjs +0 -151
- package/es/packages/components/table/src/components/Body/EditInput.vue2.mjs.map +0 -1
- package/lib/components/table/src/components/Body/EditInput.vue.d.ts +0 -102
- package/lib/packages/components/table/src/components/Body/BodyCell.js.map +0 -1
- package/lib/packages/components/table/src/components/Body/EditInput.vue.js +0 -52
- package/lib/packages/components/table/src/components/Body/EditInput.vue.js.map +0 -1
- package/lib/packages/components/table/src/components/Body/EditInput.vue2.js +0 -155
- package/lib/packages/components/table/src/components/Body/EditInput.vue2.js.map +0 -1
|
@@ -1,14 +1,31 @@
|
|
|
1
|
-
import type { Ref, ShallowRef } from 'vue';
|
|
1
|
+
import type { Ref, ShallowRef, ComputedRef } from 'vue';
|
|
2
|
+
import type { AddLineOptions, DefaultRecordType, GetRowKey, Key, ProTableProps, RowEditableType, TableEditingCell, TablePromiseErrorData } from '../components/interface';
|
|
2
3
|
type EditProps = {
|
|
3
4
|
editCellKeys: Ref<string[]>;
|
|
4
|
-
openEditor: (key: string | string[]
|
|
5
|
-
closeEditor: (key
|
|
6
|
-
|
|
5
|
+
openEditor: (key: string | string[]) => void;
|
|
6
|
+
closeEditor: (key: string) => void;
|
|
7
|
+
editableType: ComputedRef<RowEditableType | undefined>;
|
|
8
|
+
mergedEditableKeys: Ref<Key[] | undefined>;
|
|
9
|
+
isRowEdit: ComputedRef<boolean>;
|
|
10
|
+
editRowsMap: ShallowRef<Record<string, Record<string, any>>>;
|
|
11
|
+
setEditingCell: (params: TableEditingCell, isEdit: boolean) => void;
|
|
7
12
|
};
|
|
8
|
-
export declare const useEditProvider: (
|
|
13
|
+
export declare const useEditProvider: (props: ProTableProps, { rawData, getRowKey, getIndexsByKey, getRecordByKey, }: {
|
|
14
|
+
rawData: ShallowRef<DefaultRecordType[]>;
|
|
15
|
+
getRowKey: ComputedRef<GetRowKey>;
|
|
16
|
+
getIndexsByKey: (key: Key) => number[];
|
|
17
|
+
getRecordByKey: (key: Key) => DefaultRecordType;
|
|
18
|
+
}) => {
|
|
9
19
|
editCellKeys: ShallowRef<string[], string[]>;
|
|
10
|
-
openEditor: (key: string | string[]
|
|
11
|
-
closeEditor: (key
|
|
20
|
+
openEditor: (key: string | string[]) => void;
|
|
21
|
+
closeEditor: (key: string) => void;
|
|
22
|
+
cancelEditable: (recordKey: Key) => boolean;
|
|
23
|
+
startEditable: (recordKey: Key, recordValue?: any) => boolean;
|
|
24
|
+
saveEditable: (recordKey: Key) => Promise<boolean>;
|
|
25
|
+
isEditable: (recordKey: Key) => boolean;
|
|
26
|
+
validateTableData: () => Promise<TablePromiseErrorData>;
|
|
27
|
+
validateRowData: (rowValue: any) => Promise<TablePromiseErrorData>;
|
|
28
|
+
addEditRecord: (recordValue: any, options: AddLineOptions) => boolean;
|
|
12
29
|
};
|
|
13
30
|
export declare const useEditInject: () => EditProps;
|
|
14
31
|
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export declare function isValueEmpty(val: any): boolean;
|
|
2
|
+
declare const VALIDATE_MAP: {
|
|
3
|
+
required: (val: any) => boolean;
|
|
4
|
+
whitespace: (val: any) => boolean;
|
|
5
|
+
boolean: (val: any) => boolean;
|
|
6
|
+
max: (val: any, num: number) => boolean;
|
|
7
|
+
min: (val: any, num: number) => boolean;
|
|
8
|
+
len: (val: any, num: number) => boolean;
|
|
9
|
+
number: (val: any) => boolean;
|
|
10
|
+
enum: (val: any, strs: Array<string>) => boolean;
|
|
11
|
+
idcard: (val: any) => boolean;
|
|
12
|
+
telnumber: (val: any) => boolean;
|
|
13
|
+
pattern: (val: any, regexp: RegExp) => boolean;
|
|
14
|
+
validator: (val: any, validate: any) => ReturnType<any>;
|
|
15
|
+
};
|
|
16
|
+
export type ValidateFuncType = (typeof VALIDATE_MAP)[keyof typeof VALIDATE_MAP];
|
|
17
|
+
/**
|
|
18
|
+
* 校验某一条数据的某一条规则,一种校验规则不满足则不再进行校验。
|
|
19
|
+
* @param value 值
|
|
20
|
+
* @param rule 校验规则
|
|
21
|
+
* @returns 两种校验结果,一种是内置校验规则的校验结果哦,二种是自定义校验规则(validator)的校验结果
|
|
22
|
+
*/
|
|
23
|
+
export declare function validateOneRule(value: any, rule: any): Promise<any>;
|
|
24
|
+
export declare function validate(value: any, rules: Array<any>): Promise<any[]>;
|
|
25
|
+
export {};
|
|
@@ -16,6 +16,7 @@ export declare function getColumnKey<RecordType>(column: ColumnType<RecordType>,
|
|
|
16
16
|
*/
|
|
17
17
|
export declare const genColumnKey: (key?: string | number, index?: number | string) => string;
|
|
18
18
|
export declare function getColumnPos(index: number, pos?: string): string;
|
|
19
|
+
export declare function getCellKey(rowKey: Key, colKey: Key): string;
|
|
19
20
|
export declare function getNewColumnsByWidth<RecordType>(columns: ColumnsType<RecordType>, newWidths: Record<string, number>, pos?: string): ColumnsType<RecordType>;
|
|
20
21
|
export declare type SortOrder = 'desc' | 'asc' | null;
|
|
21
22
|
export interface ColumnTitleProps<RecordType> {
|
package/lib/index.d.ts
CHANGED
|
@@ -803,7 +803,12 @@ declare type __VLS_WithSlots_7<T, S> = T & {
|
|
|
803
803
|
$slots: S;
|
|
804
804
|
};
|
|
805
805
|
};
|
|
806
|
+
declare type AddLineOptions = {
|
|
807
|
+
position?: "top" | "bottom";
|
|
808
|
+
newRecordType?: "dataSource" | "cache";
|
|
809
|
+
};
|
|
806
810
|
declare type AlignType = "left" | "center" | "right";
|
|
811
|
+
declare type AllValidateResult = CustomValidateObj | ValidateResultType;
|
|
807
812
|
declare interface AppendCellRange {
|
|
808
813
|
columnsKey?: ProTableKey[];
|
|
809
814
|
columnStartKey?: ProTableKey;
|
|
@@ -964,7 +969,6 @@ declare interface CellEditorArgs {
|
|
|
964
969
|
recordIndexs: number[];
|
|
965
970
|
record: any;
|
|
966
971
|
}
|
|
967
|
-
declare type CellEditorSlot = "cellEditorSlot";
|
|
968
972
|
declare type CellEllipsisType = {
|
|
969
973
|
showTitle?: boolean;
|
|
970
974
|
line?: number;
|
|
@@ -1137,9 +1141,15 @@ declare interface ColumnType<RecordType = DefaultRecordType> extends ColumnShare
|
|
|
1137
1141
|
record: RecordType;
|
|
1138
1142
|
index: number;
|
|
1139
1143
|
column: ColumnType<RecordType>;
|
|
1144
|
+
cancelEditable: (recordKey: ProTableKey) => boolean;
|
|
1145
|
+
startEditable: (recordKey: ProTableKey, recordValue?: any) => boolean;
|
|
1146
|
+
saveEditable: (recordKey: ProTableKey) => Promise<boolean>;
|
|
1147
|
+
isEditable: (recordKey: ProTableKey) => boolean;
|
|
1140
1148
|
}) => any | RenderedCell;
|
|
1141
|
-
|
|
1142
|
-
|
|
1149
|
+
/**
|
|
1150
|
+
* 可编辑单元格配置项,具体属性参考文档 `EditableCellConfig` 描述
|
|
1151
|
+
*/
|
|
1152
|
+
edit?: EditableCellConfig<RecordType>;
|
|
1143
1153
|
valueParser?: ValueParserFunc<RecordType>;
|
|
1144
1154
|
valueGetter?: ValueGetterFunc<RecordType>;
|
|
1145
1155
|
valueSetter?: (params: ValueParserParams<RecordType>) => boolean | Promise<any>;
|
|
@@ -1157,7 +1167,7 @@ declare interface ColumnType<RecordType = DefaultRecordType> extends ColumnShare
|
|
|
1157
1167
|
title?: string;
|
|
1158
1168
|
};
|
|
1159
1169
|
valueEnum?: ((row: RecordType) => Record<string, ProTableValueEnumType>) | Record<string, ProTableValueEnumType>;
|
|
1160
|
-
valueStatus?: ((value: any, row: RecordType) => ValueStatus) | ValueStatus;
|
|
1170
|
+
valueStatus?: ((value: any, row: RecordType, valueEnum?: ProTableValueEnumType) => ValueStatus) | ValueStatus;
|
|
1161
1171
|
renderText?: (text: any, record: RecordType, rowIndex: number) => string | number;
|
|
1162
1172
|
/** @name 列设置的 disabled */
|
|
1163
1173
|
disable?: boolean | {
|
|
@@ -1312,6 +1322,13 @@ export declare const CSS_VARIABLE_LAYOUT_FOOTER_HEIGHT = "--pro-footer-height";
|
|
|
1312
1322
|
/** layout header 组件的高度 */
|
|
1313
1323
|
export declare const CSS_VARIABLE_LAYOUT_HEADER_HEIGHT = "--pro-header-height";
|
|
1314
1324
|
declare type CustomSlotsType<T extends Record<string, any>> = SlotsType<T>;
|
|
1325
|
+
declare interface CustomValidateObj {
|
|
1326
|
+
result: boolean;
|
|
1327
|
+
message: string;
|
|
1328
|
+
type?: "error" | "warning" | "success";
|
|
1329
|
+
}
|
|
1330
|
+
declare type CustomValidateResolveType = boolean | CustomValidateObj;
|
|
1331
|
+
declare type CustomValidator = (val: any) => CustomValidateResolveType | Promise<CustomValidateResolveType>;
|
|
1315
1332
|
declare type DataIndex = string | number | readonly (string | number)[];
|
|
1316
1333
|
export { dayjs };
|
|
1317
1334
|
export declare const deDEIntl: IntlType;
|
|
@@ -1950,10 +1967,18 @@ declare const _default_17: DefineComponent<ExtractPropTypes<{
|
|
|
1950
1967
|
type: BooleanConstructor;
|
|
1951
1968
|
default: undefined;
|
|
1952
1969
|
};
|
|
1970
|
+
selectRowByClick: {
|
|
1971
|
+
type: BooleanConstructor;
|
|
1972
|
+
default: undefined;
|
|
1973
|
+
};
|
|
1953
1974
|
expandIcon: {
|
|
1954
1975
|
type: PropType<RenderExpandIcon<DefaultRecordType>>;
|
|
1955
1976
|
default: undefined;
|
|
1956
1977
|
};
|
|
1978
|
+
expandIconType: {
|
|
1979
|
+
type: PropType<ExpandIconType>;
|
|
1980
|
+
default: undefined;
|
|
1981
|
+
};
|
|
1957
1982
|
onExpand: {
|
|
1958
1983
|
type: PropType<(expanded: boolean, record: DefaultRecordType) => void>;
|
|
1959
1984
|
default: undefined;
|
|
@@ -2019,6 +2044,14 @@ declare const _default_17: DefineComponent<ExtractPropTypes<{
|
|
|
2019
2044
|
}) => Record<string, any>>;
|
|
2020
2045
|
default: () => {};
|
|
2021
2046
|
};
|
|
2047
|
+
editableKeys: {
|
|
2048
|
+
type: PropType<ProTableKey[]>;
|
|
2049
|
+
default: undefined;
|
|
2050
|
+
};
|
|
2051
|
+
rowEditable: {
|
|
2052
|
+
type: PropType<RowEditableConfig<DefaultRecordType>>;
|
|
2053
|
+
default: undefined;
|
|
2054
|
+
};
|
|
2022
2055
|
showHeader: {
|
|
2023
2056
|
type: BooleanConstructor;
|
|
2024
2057
|
default: boolean;
|
|
@@ -2191,6 +2224,9 @@ declare const _default_17: DefineComponent<ExtractPropTypes<{
|
|
|
2191
2224
|
type: BooleanConstructor;
|
|
2192
2225
|
default: undefined;
|
|
2193
2226
|
};
|
|
2227
|
+
editableCellState: {
|
|
2228
|
+
type: PropType<EditableCellType<DefaultRecordType>>;
|
|
2229
|
+
};
|
|
2194
2230
|
paginationSticky: {
|
|
2195
2231
|
type: PropType<boolean | BottomSticky>;
|
|
2196
2232
|
default: boolean;
|
|
@@ -2244,6 +2280,15 @@ declare const _default_17: DefineComponent<ExtractPropTypes<{
|
|
|
2244
2280
|
type: PropType<(opt: CellRenderArgs) => void>;
|
|
2245
2281
|
default: undefined;
|
|
2246
2282
|
};
|
|
2283
|
+
onDataChange: {
|
|
2284
|
+
type: PropType<(dataSource: DefaultRecordType[]) => void>;
|
|
2285
|
+
};
|
|
2286
|
+
onRowValidate: {
|
|
2287
|
+
type: PropType<(TablePromiseErrorData: any) => void>;
|
|
2288
|
+
};
|
|
2289
|
+
onValidate: {
|
|
2290
|
+
type: PropType<(TablePromiseErrorData: any) => void>;
|
|
2291
|
+
};
|
|
2247
2292
|
"onUpdate:pagination": {
|
|
2248
2293
|
type: PropType<(info: ProTablePaginationConfig) => void>;
|
|
2249
2294
|
};
|
|
@@ -2445,10 +2490,18 @@ declare const _default_17: DefineComponent<ExtractPropTypes<{
|
|
|
2445
2490
|
type: BooleanConstructor;
|
|
2446
2491
|
default: undefined;
|
|
2447
2492
|
};
|
|
2493
|
+
selectRowByClick: {
|
|
2494
|
+
type: BooleanConstructor;
|
|
2495
|
+
default: undefined;
|
|
2496
|
+
};
|
|
2448
2497
|
expandIcon: {
|
|
2449
2498
|
type: PropType<RenderExpandIcon<DefaultRecordType>>;
|
|
2450
2499
|
default: undefined;
|
|
2451
2500
|
};
|
|
2501
|
+
expandIconType: {
|
|
2502
|
+
type: PropType<ExpandIconType>;
|
|
2503
|
+
default: undefined;
|
|
2504
|
+
};
|
|
2452
2505
|
onExpand: {
|
|
2453
2506
|
type: PropType<(expanded: boolean, record: DefaultRecordType) => void>;
|
|
2454
2507
|
default: undefined;
|
|
@@ -2514,6 +2567,14 @@ declare const _default_17: DefineComponent<ExtractPropTypes<{
|
|
|
2514
2567
|
}) => Record<string, any>>;
|
|
2515
2568
|
default: () => {};
|
|
2516
2569
|
};
|
|
2570
|
+
editableKeys: {
|
|
2571
|
+
type: PropType<ProTableKey[]>;
|
|
2572
|
+
default: undefined;
|
|
2573
|
+
};
|
|
2574
|
+
rowEditable: {
|
|
2575
|
+
type: PropType<RowEditableConfig<DefaultRecordType>>;
|
|
2576
|
+
default: undefined;
|
|
2577
|
+
};
|
|
2517
2578
|
showHeader: {
|
|
2518
2579
|
type: BooleanConstructor;
|
|
2519
2580
|
default: boolean;
|
|
@@ -2686,6 +2747,9 @@ declare const _default_17: DefineComponent<ExtractPropTypes<{
|
|
|
2686
2747
|
type: BooleanConstructor;
|
|
2687
2748
|
default: undefined;
|
|
2688
2749
|
};
|
|
2750
|
+
editableCellState: {
|
|
2751
|
+
type: PropType<EditableCellType<DefaultRecordType>>;
|
|
2752
|
+
};
|
|
2689
2753
|
paginationSticky: {
|
|
2690
2754
|
type: PropType<boolean | BottomSticky>;
|
|
2691
2755
|
default: boolean;
|
|
@@ -2739,6 +2803,15 @@ declare const _default_17: DefineComponent<ExtractPropTypes<{
|
|
|
2739
2803
|
type: PropType<(opt: CellRenderArgs) => void>;
|
|
2740
2804
|
default: undefined;
|
|
2741
2805
|
};
|
|
2806
|
+
onDataChange: {
|
|
2807
|
+
type: PropType<(dataSource: DefaultRecordType[]) => void>;
|
|
2808
|
+
};
|
|
2809
|
+
onRowValidate: {
|
|
2810
|
+
type: PropType<(TablePromiseErrorData: any) => void>;
|
|
2811
|
+
};
|
|
2812
|
+
onValidate: {
|
|
2813
|
+
type: PropType<(TablePromiseErrorData: any) => void>;
|
|
2814
|
+
};
|
|
2742
2815
|
"onUpdate:pagination": {
|
|
2743
2816
|
type: PropType<(info: ProTablePaginationConfig) => void>;
|
|
2744
2817
|
};
|
|
@@ -2849,7 +2922,9 @@ declare const _default_17: DefineComponent<ExtractPropTypes<{
|
|
|
2849
2922
|
defaultExpandedRowKeys: ProTableKey[];
|
|
2850
2923
|
expandedRowRender: ExpandedRowRender<DefaultRecordType>;
|
|
2851
2924
|
expandRowByClick: boolean;
|
|
2925
|
+
selectRowByClick: boolean;
|
|
2852
2926
|
expandIcon: RenderExpandIcon<DefaultRecordType>;
|
|
2927
|
+
expandIconType: ExpandIconType;
|
|
2853
2928
|
onExpand: (expanded: boolean, record: DefaultRecordType) => void;
|
|
2854
2929
|
onExpandedRowsChange: (expandedKeys: ProTableKey[]) => void;
|
|
2855
2930
|
defaultExpandAllRows: boolean;
|
|
@@ -2873,6 +2948,8 @@ declare const _default_17: DefineComponent<ExtractPropTypes<{
|
|
|
2873
2948
|
column: ColumnType<DefaultRecordType>;
|
|
2874
2949
|
columnIndex: number;
|
|
2875
2950
|
}) => Record<string, any>;
|
|
2951
|
+
editableKeys: ProTableKey[];
|
|
2952
|
+
rowEditable: RowEditableConfig<DefaultRecordType>;
|
|
2876
2953
|
showHeader: boolean;
|
|
2877
2954
|
showSorterTooltip: boolean | Partial<ExtractPropTypes<{
|
|
2878
2955
|
title: VueTypeValidableDef_2<any>;
|
|
@@ -5117,6 +5194,64 @@ declare const drawerOrModalFormProps: () => {
|
|
|
5117
5194
|
};
|
|
5118
5195
|
name: StringConstructor;
|
|
5119
5196
|
};
|
|
5197
|
+
declare interface EditableCellConfig<T = DefaultRecordType> {
|
|
5198
|
+
/**
|
|
5199
|
+
* 除了点击非自身元素退出编辑态之外,还有哪些事件退出编辑态。示例:`abortEditOnEvent: ['onChange']`
|
|
5200
|
+
*/
|
|
5201
|
+
abortEditOnEvent?: string[];
|
|
5202
|
+
editableTrigger?: EditableTrigger | EditableTrigger[];
|
|
5203
|
+
/**
|
|
5204
|
+
* 组件定义,如:`Input` `Select`。对于完全自定义的组件(非组件库内的组件),组件需要支持 `value` 和 `onChange` ;如果还需要支持校验规则,则组件还需实现 `tips` 和 `status` 两个 API,实现规则可参考 `Input` 组件
|
|
5205
|
+
*/
|
|
5206
|
+
component?: any;
|
|
5207
|
+
/**
|
|
5208
|
+
* 单元格默认状态是否为编辑态
|
|
5209
|
+
* @default false
|
|
5210
|
+
*/
|
|
5211
|
+
defaultEditable?: boolean;
|
|
5212
|
+
/**
|
|
5213
|
+
* 设置当前列的单元格始终保持为编辑态
|
|
5214
|
+
* @default false
|
|
5215
|
+
*/
|
|
5216
|
+
keepEditMode?: boolean;
|
|
5217
|
+
/**
|
|
5218
|
+
* 是否可以编辑
|
|
5219
|
+
*/
|
|
5220
|
+
editable?: (context: EditableValueParams<T>) => boolean;
|
|
5221
|
+
valueParser?: ValueParserFunc<T>;
|
|
5222
|
+
valueGetter?: ValueGetterFunc<T>;
|
|
5223
|
+
valueSetter?: (params: EditableValueParams<T>) => boolean | Promise<any>;
|
|
5224
|
+
/**
|
|
5225
|
+
* 透传给编辑组件的事件,参数有({ row, rowIndex, col, colIndex, editedRow, updateEditedCellValue })。可以使用参数 `updateEditedCellValue` 更新当前单元格(或当前行任意编辑状态单元格)的值。<br/>更新当前单元格数据示例:`updateEditedCellValue(value)`;<br/>更新当前行编辑态数据示例:`updateEditedCellValue({ isUpdateCurrentRow: true, column_key: 'test' })`;<br/>更新其他行编辑态数据示例:`updateEditedCellValue({ rowValue: '124', column_key: 'test' })`
|
|
5226
|
+
*/
|
|
5227
|
+
on?: (context: EditableValueParams<T>) => {
|
|
5228
|
+
[eventName: string]: Function;
|
|
5229
|
+
};
|
|
5230
|
+
/**
|
|
5231
|
+
* 编辑完成后,退出编辑模式时触发
|
|
5232
|
+
*/
|
|
5233
|
+
onEdited?: (context: EditableValueParams<T>) => void;
|
|
5234
|
+
/**
|
|
5235
|
+
* 透传给组件 `edit.component` 的属性,可以使用 `updateEditedCellValue` 更新当前行任意编辑状态单元格的值
|
|
5236
|
+
*/
|
|
5237
|
+
props?: EditableCellProps<T>;
|
|
5238
|
+
/**
|
|
5239
|
+
* 校验规则
|
|
5240
|
+
*/
|
|
5241
|
+
rules?: EditableCellRules<T>;
|
|
5242
|
+
/**
|
|
5243
|
+
* 是否显示编辑图标
|
|
5244
|
+
* @default true
|
|
5245
|
+
*/
|
|
5246
|
+
/**
|
|
5247
|
+
* 触发校验的时机,有 2 种:退出编辑时和数据变化时
|
|
5248
|
+
* @default 'exit'
|
|
5249
|
+
*/
|
|
5250
|
+
validateTrigger?: "exit" | "change";
|
|
5251
|
+
}
|
|
5252
|
+
declare type EditableCellProps<T> = PlainObject | ((params: EditableValueParams<T>) => PlainObject);
|
|
5253
|
+
declare type EditableCellRules<T> = EditRule[] | ((params: EditableValueParams<T>) => EditRule[]);
|
|
5254
|
+
declare type EditableCellType<T> = (params: EditableValueParams<T>) => boolean;
|
|
5120
5255
|
declare type EditableTrigger = "click" | "dblClick" | "contextmenu";
|
|
5121
5256
|
declare interface EditableValueParams<RecordType = DefaultRecordType, TValue = any> {
|
|
5122
5257
|
value: TValue;
|
|
@@ -5124,11 +5259,74 @@ declare interface EditableValueParams<RecordType = DefaultRecordType, TValue = a
|
|
|
5124
5259
|
recordIndexs: number[];
|
|
5125
5260
|
column: ColumnType<RecordType>;
|
|
5126
5261
|
}
|
|
5262
|
+
declare interface EditRule {
|
|
5263
|
+
/**
|
|
5264
|
+
* 内置校验方法,校验值类型是否为布尔类型,示例:`{ boolean: true, message: '数据类型必须是布尔类型' }`
|
|
5265
|
+
*/
|
|
5266
|
+
boolean?: boolean;
|
|
5267
|
+
/**
|
|
5268
|
+
* 内置校验方法,校验值是否属于枚举值中的值。示例:`{ enum: ['primary', 'info', 'warning'], message: '值只能是 primary/info/warning 中的一种' }`
|
|
5269
|
+
*/
|
|
5270
|
+
enum?: Array<string>;
|
|
5271
|
+
/**
|
|
5272
|
+
* 内置校验方法,校验值是否为身份证号码,组件校验正则为 `/^(\\d{18,18}|\\d{15,15}|\\d{17,17}x)$/i`,示例:`{ idcard: true, message: '请输入正确的身份证号码' }`
|
|
5273
|
+
*/
|
|
5274
|
+
idcard?: boolean;
|
|
5275
|
+
/**
|
|
5276
|
+
* 内置校验方法,校验值固定长度,如:len: 10 表示值的字符长度只能等于 10 ,中文表示 2 个字符,英文为 1 个字符。示例:`{ len: 10, message: '内容长度不对' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length === 10, message: '内容文本长度只能是 10 个字' }`
|
|
5277
|
+
*/
|
|
5278
|
+
len?: number | boolean;
|
|
5279
|
+
/**
|
|
5280
|
+
* 内置校验方法,校验值最大长度,如:max: 100 表示值最多不能超过 100 个字符,中文表示 2 个字符,英文为 1 个字符。示例:`{ max: 10, message: '内容超出' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length <= 10, message: '内容文本长度不能超过 10 个字' }`<br />如果数据类型数字(Number),则自动变为数字大小的比对
|
|
5281
|
+
*/
|
|
5282
|
+
max?: number | boolean;
|
|
5283
|
+
/**
|
|
5284
|
+
* 校验未通过时呈现的错误信息,值为空则不显示
|
|
5285
|
+
* @default ''
|
|
5286
|
+
*/
|
|
5287
|
+
message?: string;
|
|
5288
|
+
/**
|
|
5289
|
+
* 内置校验方法,校验值最小长度,如:min: 10 表示值最多不能少于 10 个字符,中文表示 2 个字符,英文为 1 个字符。示例:`{ min: 10, message: '内容长度不够' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length >= 10, message: '内容文本长度至少为 10 个字' }`。<br />如果数据类型数字(Number),则自动变为数字大小的比对
|
|
5290
|
+
*/
|
|
5291
|
+
min?: number | boolean;
|
|
5292
|
+
/**
|
|
5293
|
+
* 内置校验方法,校验值是否为数字(1.2 、 1e5 都算数字),示例:`{ number: true, message: '请输入数字' }`
|
|
5294
|
+
*/
|
|
5295
|
+
number?: boolean;
|
|
5296
|
+
/**
|
|
5297
|
+
* 内置校验方法,校验值是否符合正则表达式匹配结果,示例:`{ pattern: /@qq.com/, message: '请输入 QQ 邮箱' }`
|
|
5298
|
+
*/
|
|
5299
|
+
pattern?: RegExp;
|
|
5300
|
+
/**
|
|
5301
|
+
* 内置校验方法,校验值是否已经填写。该值为 true,默认显示必填标记,可通过设置 `requiredMark: false` 隐藏必填标记
|
|
5302
|
+
*/
|
|
5303
|
+
required?: boolean;
|
|
5304
|
+
/**
|
|
5305
|
+
* 内置校验方法,校验值是否为手机号码,校验正则为 `/^1[3-9]\d{9}$/`,示例:`{ telnumber: true, message: '请输入正确的手机号码' }`
|
|
5306
|
+
*/
|
|
5307
|
+
telnumber?: boolean;
|
|
5308
|
+
/**
|
|
5309
|
+
* 校验未通过时呈现的错误信息类型,有 告警信息提示 和 错误信息提示 等两种
|
|
5310
|
+
* @default error
|
|
5311
|
+
*/
|
|
5312
|
+
type?: "error" | "warning";
|
|
5313
|
+
/**
|
|
5314
|
+
* 自定义校验规则,示例:`{ validator: (val) => val.length > 0, message: '请输入内容'}`
|
|
5315
|
+
*/
|
|
5316
|
+
validator?: CustomValidator;
|
|
5317
|
+
/**
|
|
5318
|
+
* 内置校验方法,校验值是否为空格。示例:`{ whitespace: true, message: '值不能为空' }`
|
|
5319
|
+
*/
|
|
5320
|
+
whitespace?: boolean;
|
|
5321
|
+
}
|
|
5127
5322
|
/** 内容区域的组件ID */
|
|
5128
5323
|
export declare const ELEMENT_ID_MAIN_CONTENT = "__pro_main_content";
|
|
5129
5324
|
export declare const enGBIntl: IntlType;
|
|
5130
5325
|
export declare type Entity = Record<string, any>;
|
|
5131
5326
|
export declare const enUSIntl: IntlType;
|
|
5327
|
+
declare type ErrorListObjectType = TableEditingCell & {
|
|
5328
|
+
errorList: AllValidateResult[];
|
|
5329
|
+
};
|
|
5132
5330
|
export declare const esESIntl: IntlType;
|
|
5133
5331
|
export declare type EventHandler = (...args: any[]) => void;
|
|
5134
5332
|
declare type ExpandedRowRender<ValueType> = (opt: {
|
|
@@ -5137,6 +5335,7 @@ declare type ExpandedRowRender<ValueType> = (opt: {
|
|
|
5137
5335
|
indent: number;
|
|
5138
5336
|
expanded: boolean;
|
|
5139
5337
|
}) => any;
|
|
5338
|
+
declare type ExpandIconType = "default" | "arrow";
|
|
5140
5339
|
export declare type ExtraSItemType = {
|
|
5141
5340
|
className?: string;
|
|
5142
5341
|
customUi?: boolean;
|
|
@@ -5640,10 +5839,18 @@ declare class Helper<T extends DefaultRecordType> {
|
|
|
5640
5839
|
type: BooleanConstructor;
|
|
5641
5840
|
default: undefined;
|
|
5642
5841
|
};
|
|
5842
|
+
selectRowByClick: {
|
|
5843
|
+
type: BooleanConstructor;
|
|
5844
|
+
default: undefined;
|
|
5845
|
+
};
|
|
5643
5846
|
expandIcon: {
|
|
5644
5847
|
type: PropType<RenderExpandIcon<T>>;
|
|
5645
5848
|
default: undefined;
|
|
5646
5849
|
};
|
|
5850
|
+
expandIconType: {
|
|
5851
|
+
type: PropType<ExpandIconType>;
|
|
5852
|
+
default: undefined;
|
|
5853
|
+
};
|
|
5647
5854
|
onExpand: {
|
|
5648
5855
|
type: PropType<(expanded: boolean, record: T) => void>;
|
|
5649
5856
|
default: undefined;
|
|
@@ -5707,6 +5914,14 @@ declare class Helper<T extends DefaultRecordType> {
|
|
|
5707
5914
|
}) => Record<string, any>>;
|
|
5708
5915
|
default: () => {};
|
|
5709
5916
|
};
|
|
5917
|
+
editableKeys: {
|
|
5918
|
+
type: PropType<ProTableKey[]>;
|
|
5919
|
+
default: undefined;
|
|
5920
|
+
};
|
|
5921
|
+
rowEditable: {
|
|
5922
|
+
type: PropType<RowEditableConfig<T>>;
|
|
5923
|
+
default: undefined;
|
|
5924
|
+
};
|
|
5710
5925
|
showHeader: {
|
|
5711
5926
|
type: BooleanConstructor;
|
|
5712
5927
|
default: boolean;
|
|
@@ -5877,6 +6092,9 @@ declare class Helper<T extends DefaultRecordType> {
|
|
|
5877
6092
|
type: BooleanConstructor;
|
|
5878
6093
|
default: undefined;
|
|
5879
6094
|
};
|
|
6095
|
+
editableCellState: {
|
|
6096
|
+
type: PropType<EditableCellType<T>>;
|
|
6097
|
+
};
|
|
5880
6098
|
paginationSticky: {
|
|
5881
6099
|
type: PropType<boolean | BottomSticky>;
|
|
5882
6100
|
default: boolean;
|
|
@@ -5930,6 +6148,15 @@ declare class Helper<T extends DefaultRecordType> {
|
|
|
5930
6148
|
type: PropType<(opt: CellRenderArgs) => void>;
|
|
5931
6149
|
default: undefined;
|
|
5932
6150
|
};
|
|
6151
|
+
onDataChange: {
|
|
6152
|
+
type: PropType<(dataSource: T[]) => void>;
|
|
6153
|
+
};
|
|
6154
|
+
onRowValidate: {
|
|
6155
|
+
type: PropType<(TablePromiseErrorData: any) => void>;
|
|
6156
|
+
};
|
|
6157
|
+
onValidate: {
|
|
6158
|
+
type: PropType<(TablePromiseErrorData: any) => void>;
|
|
6159
|
+
};
|
|
5933
6160
|
"onUpdate:pagination": {
|
|
5934
6161
|
type: PropType<(info: ProTablePaginationConfig) => void>;
|
|
5935
6162
|
};
|
|
@@ -6110,6 +6337,9 @@ declare interface PaginationProps {
|
|
|
6110
6337
|
role?: string;
|
|
6111
6338
|
showLessItems?: boolean;
|
|
6112
6339
|
}
|
|
6340
|
+
declare interface PlainObject {
|
|
6341
|
+
[key: string]: any;
|
|
6342
|
+
}
|
|
6113
6343
|
export declare const plPLIntl: IntlType;
|
|
6114
6344
|
export declare const ProButton: SFCWithInstall<DefineComponent<ExtractPropTypes<{
|
|
6115
6345
|
type: PropType<ButtonProps["type"]>;
|
|
@@ -6374,8 +6604,10 @@ export declare interface ProConfigProviderProps extends Omit<ConfigProviderProps
|
|
|
6374
6604
|
cardBordered?: Bordered;
|
|
6375
6605
|
childrenColumnName?: string;
|
|
6376
6606
|
expandRowByClick?: boolean;
|
|
6607
|
+
selectRowByClick?: boolean;
|
|
6377
6608
|
rowKey?: string;
|
|
6378
6609
|
size?: ProTableDensitySize;
|
|
6610
|
+
expandIconType?: ExpandIconType;
|
|
6379
6611
|
rowHover?: boolean;
|
|
6380
6612
|
summaryFixed?: boolean;
|
|
6381
6613
|
columnEmptyText?: string;
|
|
@@ -7060,6 +7292,12 @@ export declare interface ProTableExposeType {
|
|
|
7060
7292
|
calcTableHeight: () => Promise<void>;
|
|
7061
7293
|
formSearchSubmit: () => void;
|
|
7062
7294
|
getSearchParams: () => Record<string, any>;
|
|
7295
|
+
validateRowData: (rowValue: any) => Promise<TablePromiseErrorData>;
|
|
7296
|
+
validateTableData: () => Promise<TablePromiseErrorData>;
|
|
7297
|
+
addEditRecord: (recordValue?: any, options?: AddLineOptions) => false | undefined;
|
|
7298
|
+
startEditable: (recordKey: ProTableKey, recordValue?: any) => boolean;
|
|
7299
|
+
cancelEditable: (recordKey: ProTableKey) => boolean;
|
|
7300
|
+
saveEditable: (recordKey: ProTableKey) => Promise<boolean>;
|
|
7063
7301
|
}
|
|
7064
7302
|
export declare type ProTableInstance = InstanceType<typeof _default_17> & ProTableExposeType;
|
|
7065
7303
|
export declare type ProTableKey = string | number;
|
|
@@ -10502,6 +10740,34 @@ declare interface RowDragGhostArg<RecordT, ColumnT> {
|
|
|
10502
10740
|
preTargetInfo: DragRowsHandleInfo | null;
|
|
10503
10741
|
nextTargetInfo: DragRowsHandleInfo | null;
|
|
10504
10742
|
}
|
|
10743
|
+
declare type RowEditableConfig<DataType> = {
|
|
10744
|
+
/**
|
|
10745
|
+
* @type single | multiple
|
|
10746
|
+
* @name 编辑的类型,支持单选和多选
|
|
10747
|
+
*/
|
|
10748
|
+
type?: RowEditableType;
|
|
10749
|
+
/** @name 正在编辑的列 */
|
|
10750
|
+
editableKeys?: ProTableKey[];
|
|
10751
|
+
/** 只能编辑一行的的提示 */
|
|
10752
|
+
onlyOneLineEditorAlertMessage?: string;
|
|
10753
|
+
/** 同时只能新增一行的提示 */
|
|
10754
|
+
onlyAddOneLineAlertMessage?: string | false;
|
|
10755
|
+
/** 正在编辑的列修改的时候 */
|
|
10756
|
+
onChange?: (editableKeys: ProTableKey[], editableRows: DataType[] | DataType) => void;
|
|
10757
|
+
/** 行保存的时候 */
|
|
10758
|
+
onSave?: (
|
|
10759
|
+
/** 行 id,一般是唯一id */
|
|
10760
|
+
key: ProTableKey,
|
|
10761
|
+
/** 当前修改的行的值 */
|
|
10762
|
+
record: DataType & {
|
|
10763
|
+
index?: number;
|
|
10764
|
+
},
|
|
10765
|
+
/** 原始值,可以用于判断是否修改 */
|
|
10766
|
+
originRow: DataType & {
|
|
10767
|
+
index?: number;
|
|
10768
|
+
}) => Promise<any | void> | any | void;
|
|
10769
|
+
};
|
|
10770
|
+
declare type RowEditableType = "single" | "multiple";
|
|
10505
10771
|
export declare type RowHeight = ((p: Record<any, any>, isExpandRow: boolean, baseHeight: number) => number | undefined) | number;
|
|
10506
10772
|
declare type RowSelectionType = "checkbox" | "radio";
|
|
10507
10773
|
export declare const ruRUIntl: IntlType;
|
|
@@ -10794,6 +11060,18 @@ declare interface TableCurrentDataSource<RecordType = DefaultRecordType> {
|
|
|
10794
11060
|
currentDataSource: RecordType[];
|
|
10795
11061
|
action: TableAction;
|
|
10796
11062
|
}
|
|
11063
|
+
declare type TableEditingCell<RecordType = DefaultRecordType> = {
|
|
11064
|
+
recordIndexs: number[];
|
|
11065
|
+
column: ColumnType<RecordType>;
|
|
11066
|
+
rowKey: ProTableKey;
|
|
11067
|
+
originRecord: RecordType;
|
|
11068
|
+
rowIndex: number;
|
|
11069
|
+
columnKey: ProTableKey;
|
|
11070
|
+
validateEdit: () => Promise<true | AllValidateResult[]>;
|
|
11071
|
+
};
|
|
11072
|
+
declare type TableErrorListMap = {
|
|
11073
|
+
[key: string]: AllValidateResult[];
|
|
11074
|
+
};
|
|
10797
11075
|
declare interface TableLocale {
|
|
10798
11076
|
filterTitle?: string;
|
|
10799
11077
|
filterConfirm?: any;
|
|
@@ -10812,6 +11090,11 @@ declare interface TableLocale {
|
|
|
10812
11090
|
cancelSort?: string;
|
|
10813
11091
|
}
|
|
10814
11092
|
declare type TablePaginationPosition = "topLeft" | "topCenter" | "topRight" | "bottomLeft" | "bottomCenter" | "bottomRight";
|
|
11093
|
+
declare interface TablePromiseErrorData {
|
|
11094
|
+
errors: ErrorListObjectType[];
|
|
11095
|
+
errorMap: TableErrorListMap;
|
|
11096
|
+
data?: DefaultRecordType[];
|
|
11097
|
+
}
|
|
10815
11098
|
export declare type Theme = "default" | "custom";
|
|
10816
11099
|
export declare type ThemeModeType = "auto" | "dark" | "light";
|
|
10817
11100
|
declare type ThemeType = "light" | "dark";
|
|
@@ -10891,11 +11174,14 @@ export declare function useState<T, R = Ref<T>>(defaultStateValue?: T | (() => T
|
|
|
10891
11174
|
(val: T) => void
|
|
10892
11175
|
];
|
|
10893
11176
|
export declare const uzUZIntl: IntlType;
|
|
11177
|
+
declare interface ValidateResultType extends EditRule {
|
|
11178
|
+
result: boolean;
|
|
11179
|
+
}
|
|
10894
11180
|
declare interface ValueGetterFunc<T = any, TValue = any> {
|
|
10895
11181
|
(params: EditableValueParams<T, TValue>): string | null | undefined;
|
|
10896
11182
|
}
|
|
10897
11183
|
declare interface ValueParserFunc<T = any, TValue = any> {
|
|
10898
|
-
(params:
|
|
11184
|
+
(params: EditableValueParams<T, TValue>): TValue | null | undefined;
|
|
10899
11185
|
}
|
|
10900
11186
|
declare interface ValueParserParams<RecordType = DefaultRecordType, TValue = any> {
|
|
10901
11187
|
newValue: TValue;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var BodyCell_vue_vue_type_script_lang = require('./BodyCell.vue2.js');
|
|
6
|
+
var vue = require('vue');
|
|
7
|
+
var _pluginVue_exportHelper = require('../../../../../../_virtual/_plugin-vue_export-helper.js');
|
|
8
|
+
|
|
9
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
10
|
+
const _component_BodyEditCell = vue.resolveComponent("BodyEditCell");
|
|
11
|
+
const _component_BodyTextCell = vue.resolveComponent("BodyTextCell");
|
|
12
|
+
return _ctx.isEditing ? (vue.openBlock(), vue.createBlock(_component_BodyEditCell, {
|
|
13
|
+
key: _ctx.key,
|
|
14
|
+
prefixCls: _ctx.prefixCls,
|
|
15
|
+
rowIndex: _ctx.rowIndex,
|
|
16
|
+
flattenRowIndex: _ctx.flattenRowIndex,
|
|
17
|
+
rowKey: _ctx.rowKey,
|
|
18
|
+
column: _ctx.column,
|
|
19
|
+
item: _ctx.item,
|
|
20
|
+
"edit-row": _ctx.editRow,
|
|
21
|
+
"editable-keys": _ctx.editableKeys,
|
|
22
|
+
"is-row-edit": _ctx.isRowEdit
|
|
23
|
+
}, null, 8, ["prefixCls", "rowIndex", "flattenRowIndex", "rowKey", "column", "item", "edit-row", "editable-keys", "is-row-edit"])) : (vue.openBlock(), vue.createBlock(_component_BodyTextCell, vue.mergeProps({ key: 1 }, _ctx.props, {
|
|
24
|
+
style: { cursor: _ctx.editable ? "poiner" : "" },
|
|
25
|
+
onClick: _cache[0] || (_cache[0] = ($event) => _ctx.onCellEvent($event, "click")),
|
|
26
|
+
onDblClick: _cache[1] || (_cache[1] = ($event) => _ctx.onCellEvent($event, "dblClick")),
|
|
27
|
+
onContextmenu: _cache[2] || (_cache[2] = ($event) => _ctx.onCellEvent($event, "contextmenu"))
|
|
28
|
+
}), {
|
|
29
|
+
appendNode: vue.withCtx(() => [
|
|
30
|
+
vue.renderSlot(_ctx.$slots, "appendNode")
|
|
31
|
+
]),
|
|
32
|
+
_: 3
|
|
33
|
+
/* FORWARDED */
|
|
34
|
+
}, 16, ["style"]));
|
|
35
|
+
}
|
|
36
|
+
var BodyCell = /* @__PURE__ */ _pluginVue_exportHelper.default(BodyCell_vue_vue_type_script_lang.default, [["render", _sfc_render]]);
|
|
37
|
+
|
|
38
|
+
exports.default = BodyCell;
|
|
39
|
+
//# sourceMappingURL=BodyCell.vue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BodyCell.vue.js","sources":["../../../../../../../../../packages/components/table/src/components/Body/BodyCell.vue"],"sourcesContent":["<!--\n * @Author: shen\n * @Date: 2023-11-09 22:29:52\n * @LastEditors: shen\n * @LastEditTime: 2025-12-02 17:16:19\n * @Description:\n-->\n<script lang=\"ts\">\nimport type { PropType } from 'vue'\nimport type { EditableTrigger, FinallyColumnType, Key, RowType } from '../interface'\nimport { defineComponent, computed, watch, onMounted } from 'vue'\nimport { get } from '@pro-design-vue/utils'\nimport { useInjectTable } from '../context/TableContext'\nimport { getCellKey } from '../../utils/util'\nimport BodyTextCell from './BodyTextCell'\nimport BodyEditCell from './BodyEditCell'\nexport default defineComponent({\n inheritAttrs: false,\n props: {\n prefixCls: String as PropType<string>,\n rowIndex: { type: Number as PropType<number>, required: true },\n flattenRowIndex: { type: Number, required: true },\n rowKey: { type: [Number, String] },\n column: { type: Object as PropType<FinallyColumnType>, default: () => ({}) },\n item: { type: Object as PropType<any>, default: () => ({}) },\n wrapText: { type: Boolean as PropType<boolean>, default: false },\n type: { type: String as PropType<RowType> },\n height: Number as PropType<number>,\n hasAppendNode: Boolean as PropType<boolean>,\n resizeObserver: { type: Object as PropType<ResizeObserver> },\n editRow: { type: Object as PropType<any> },\n calMaxHeight: Function,\n editCellKeys: Array as PropType<string[]>,\n editableKeys: Array as PropType<Key[]>,\n isRowEdit: Boolean as PropType<boolean>,\n tooltipOpen: Boolean as PropType<boolean>,\n getPopupContainer: Function as PropType<() => HTMLElement>,\n onOpenEditor: Function,\n onCloseEditor: Function,\n onCellLeave: Function,\n onMouseenter: Function,\n },\n emits: ['mouseenter', 'cellLeave'],\n components: { BodyTextCell, BodyEditCell },\n setup(props) {\n const tableContext = useInjectTable()\n const isKeepEditMode = computed(() => props.column.edit?.keepEditMode)\n const cellValue = computed(() =>\n props.column!.dataIndex ? get(props.item, props.column!.dataIndex) : undefined,\n )\n\n const key = computed(() => getCellKey(props.rowKey!, props.column.columnKey))\n\n const cellParams = computed(() => ({\n column: props.column,\n record: props.isRowEdit ? props.editRow : props.item,\n recordIndexs: tableContext.getIndexsByKey(props.rowKey!),\n value: cellValue.value,\n }))\n\n const editable = computed(() => {\n if (!props.column.edit?.component) {\n return false\n }\n if (props.isRowEdit && !props.editableKeys?.includes(props.rowKey!)) {\n return false\n }\n if (!props.column.edit?.editable) {\n return true\n }\n const cellEditable = props.column.edit?.editable(cellParams.value)\n return cellEditable\n })\n\n const isEditing = computed(() => {\n if (props.isRowEdit) {\n return editable.value && props.editableKeys?.includes(props.rowKey!)\n }\n if (!editable.value) {\n return false\n }\n if (isKeepEditMode.value) {\n return true\n }\n if (props.editCellKeys?.includes(key.value)) {\n return true\n }\n return false\n })\n\n const editableTrigger = computed(() => {\n let { editableTrigger = ['click'] } = props.column!.edit ?? {}\n editableTrigger = Array.isArray(editableTrigger) ? editableTrigger : [editableTrigger]\n return editableTrigger\n })\n\n const onCellEvent = (e: MouseEvent, trigger: EditableTrigger) => {\n if (editable.value && editableTrigger.value?.includes(trigger) && !props.isRowEdit) {\n openEditor()\n closeEditor()\n e.stopPropagation()\n e.preventDefault()\n }\n }\n\n const openEditor = () => {\n const oldValue = props.column.edit?.valueGetter?.(cellParams.value) ?? cellValue.value\n props.onOpenEditor?.(key.value, { [key.value]: oldValue })\n }\n\n const closeEditor = () => {\n props.onCloseEditor?.(key.value)\n }\n\n watch(key, () => {\n if (props.column.edit?.defaultEditable && !props.isRowEdit) {\n openEditor()\n }\n })\n\n onMounted(() => {\n if (props.column.edit?.defaultEditable && !props.isRowEdit) {\n openEditor()\n }\n })\n\n return {\n props,\n key,\n isEditing,\n editable,\n onCellEvent,\n }\n },\n})\n</script>\n\n<template>\n <template v-if=\"isEditing\">\n <BodyEditCell\n :key=\"key\"\n :prefixCls=\"prefixCls\"\n :rowIndex=\"rowIndex\"\n :flattenRowIndex=\"flattenRowIndex\"\n :rowKey=\"rowKey\"\n :column=\"column\"\n :item=\"item\"\n :edit-row=\"editRow\"\n :editable-keys=\"editableKeys\"\n :is-row-edit=\"isRowEdit\"\n />\n </template>\n <template v-else>\n <BodyTextCell\n v-bind=\"props\"\n :style=\"{ cursor: editable ? 'poiner' : '' }\"\n @click=\"onCellEvent($event, 'click')\"\n @dblClick=\"onCellEvent($event, 'dblClick')\"\n @contextmenu=\"onCellEvent($event, 'contextmenu')\"\n >\n <template #appendNode>\n <slot name=\"appendNode\" />\n </template>\n </BodyTextCell>\n </template>\n</template>\n"],"names":["_openBlock","_createBlock","_mergeProps","_withCtx","_renderSlot"],"mappings":";;;;;;;;;;;AA0IkB,EAAA,OAAA,IAAA,CAAA,SAAA,IAAAA,aAAA,EAAA,EACdC,gBAWE,uBAAA,EAAA;AAAA,IAVC,KAAK,IAAA,CAAA,GAAA;AAAA,IACL,WAAW,IAAA,CAAA,SAAA;AAAA,IACX,UAAU,IAAA,CAAA,QAAA;AAAA,IACV,iBAAiB,IAAA,CAAA,eAAA;AAAA,IACjB,QAAQ,IAAA,CAAA,MAAA;AAAA,IACR,QAAQ,IAAA,CAAA,MAAA;AAAA,IACR,MAAM,IAAA,CAAA,IAAA;AAAA,IACN,YAAU,IAAA,CAAA,OAAA;AAAA,IACV,iBAAe,IAAA,CAAA,YAAA;AAAA,IACf,eAAa,IAAA,CAAA;AAAA,GAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,WAAA,EAAA,YAAA,iBAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,UAAA,EAAA,eAAA,EAAA,aAAA,CAAA,CAAA,KAAAD,aAAA,EAAA,EAIhBC,eAAA,CAUe,uBAAA,EAVfC,cAAA,CAUe,EAAA,GAAA,EAAA,CAAA,EAAA,EATL,IAAA,CAAA,KAAA,EAAK;AAAA,IACZ,OAAK,UAAY,IAAA,CAAA,QAAA,GAAQ,WAAA,EAAA,EAAA;AAAA,IACzB,OAAA,EAAK,MAAA,CAAA,CAAA,CAAA,KAAA,MAAA,CAAA,CAAA,CAAA,GAAA,CAAA,MAAA,KAAE,IAAA,CAAA,WAAA,CAAY,MAAA,EAAM,OAAA,CAAA,CAAA;AAAA,IACzB,UAAA,EAAQ,MAAA,CAAA,CAAA,CAAA,KAAA,MAAA,CAAA,CAAA,CAAA,GAAA,CAAA,MAAA,KAAE,IAAA,CAAA,WAAA,CAAY,MAAA,EAAM,UAAA,CAAA,CAAA;AAAA,IAC5B,aAAA,EAAW,MAAA,CAAA,CAAA,CAAA,KAAA,MAAA,CAAA,CAAA,CAAA,GAAA,CAAA,MAAA,KAAE,IAAA,CAAA,WAAA,CAAY,MAAA,EAAM,aAAA,CAAA;AAAA,GAAA,CAAA,EAAA;AAAA,IAErB,UAAA,EAAUC,YACnB,MAA0B;AAAA,MAA1BC,cAAA,CAA0B,IAAA,CAAA,MAAA,EAAA,YAAA;AAAA,KAAA,CAAA;AAAA;;;;;;;;"}
|