pro-design-vue 1.3.26 → 1.3.28
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.full.js +4 -8
- package/dist/index.full.min.js +3 -3
- package/dist/index.full.min.js.map +1 -1
- package/dist/index.full.min.mjs +3 -3
- package/dist/index.full.min.mjs.map +1 -1
- package/dist/index.full.mjs +4 -8
- package/es/components/form/src/type.d.ts +1 -1
- package/es/components/table/src/components/interface.d.ts +1 -0
- package/es/index.d.ts +2 -1
- package/es/packages/components/form/src/components/FormItem.mjs +1 -1
- package/es/packages/components/form/src/components/FormItem.mjs.map +1 -1
- package/es/packages/components/table/src/components/Body/BodyCellTooltip.mjs +1 -1
- package/es/packages/components/table/src/components/Body/BodyCellTooltip.mjs.map +1 -1
- package/es/packages/components/table/src/components/Body/BodyEditCell.mjs +0 -4
- package/es/packages/components/table/src/components/Body/BodyEditCell.mjs.map +1 -1
- package/es/packages/components/table/src/components/interface.mjs.map +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/form/src/type.d.ts +1 -1
- package/lib/components/table/src/components/interface.d.ts +1 -0
- package/lib/index.d.ts +2 -1
- package/lib/packages/components/form/src/components/FormItem.js +1 -1
- package/lib/packages/components/form/src/components/FormItem.js.map +1 -1
- package/lib/packages/components/table/src/components/Body/BodyCellTooltip.js +1 -1
- package/lib/packages/components/table/src/components/Body/BodyCellTooltip.js.map +1 -1
- package/lib/packages/components/table/src/components/Body/BodyEditCell.js +0 -4
- package/lib/packages/components/table/src/components/Body/BodyEditCell.js.map +1 -1
- package/lib/packages/components/table/src/components/interface.js.map +1 -1
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interface.mjs","sources":["../../../../../../../../packages/components/table/src/components/interface.ts"],"sourcesContent":["import type { TooltipProps } from 'ant-design-vue/es/tooltip'\nimport type { SpinProps } from 'ant-design-vue/es/spin'\nimport type { CSSProperties, ExtractPropTypes, HTMLAttributes, PropType, Ref, VNode } from 'vue'\nimport type {\n AppendCellRange,\n FormatRangeCellTextParams,\n KeydownPayload,\n SelectedRangeItem,\n} from '../hooks/RangeInterface'\nimport type { INTERNAL_SELECTION_ITEM } from '../hooks/useRowSelection'\nimport type { DOWN, LEFT, RIGHT, UP } from './Drag/constant'\nimport type { TablePaginationConfig, TablePaginationPosition } from './PaginationConfig'\nimport type { InputProps } from 'ant-design-vue/es/input'\nimport type { UseFetchDataAction } from '../hooks/useFetchData'\nimport type { CardProps, PopoverProps } from 'ant-design-vue'\nimport type {\n ProFormActionType,\n ProFormItemType,\n ProQueryFilterProps,\n} from '@pro-design-vue/components/form'\nexport type DefaultRecordType = Record<string, any>\nexport interface TooltipAlignConfig {\n points?: [string, string]\n offset?: [number | string, number | string]\n targetOffset?: [number | string, number | string]\n overflow?: {\n adjustX: boolean\n adjustY: boolean\n }\n useCssRight?: boolean\n useCssBottom?: boolean\n useCssTransform?: boolean\n}\nexport type RowType = 'left' | 'center' | 'right'\nexport type ValueStatus = 'success' | 'processing' | 'error' | 'warning' | string | undefined\nexport type Key = string | number\nexport interface Position {\n left?: number\n top?: number\n columnIndex?: number\n columnKey?: Key\n rowKey?: Key\n}\nexport type { TablePaginationPosition, TablePaginationConfig }\nexport type DataIndex = string | number | readonly (string | number)[]\nexport type CellEllipsisType =\n | {\n showTitle?: boolean\n line?: number\n }\n | boolean\nexport type FixedType = 'left' | 'right' | boolean\nexport type RowHeight =\n | ((p: Record<any, any>, isExpandRow: boolean, baseHeight: number) => number | undefined)\n | number\nexport type HeaderHeight = number[] | number\nexport interface RowsRefsItem {\n left?: any\n right?: any\n conter?: any\n}\n// const SpinSizes = ['small', 'default', 'large']\nexport type SpinSize = 'small' | 'default' | 'large'\n// const TableActions = ['paginate', 'sort', 'filter']\nexport type TableAction = 'paginate' | 'sort' | 'filter'\nexport interface StickyOffsets {\n left: readonly number[]\n right: readonly number[]\n isSticky?: boolean\n}\nexport interface CellEditorArgs {\n modelValue: Ref<any>\n save: () => void\n onInput: (event: Event, value: any) => void\n closeEditor: () => void\n column: ColumnType\n editorRef: Ref<any>\n getPopupContainer: () => HTMLElement\n recordIndexs: number[]\n record: any\n}\n\nexport const checkboxProps = () => ({\n prefixCls: String as PropType<string>,\n disabled: Boolean as PropType<boolean>,\n tabindex: [String, Number],\n name: String as PropType<string>,\n id: String as PropType<string>,\n style: {\n type: Object as PropType<CSSProperties>,\n default: () => ({}),\n },\n class: String as PropType<string>,\n checked: Boolean as PropType<boolean>,\n indeterminate: Boolean as PropType<boolean>,\n ariaLabel: String as PropType<string>,\n})\n\nexport type CheckboxProps = Partial<ExtractPropTypes<ReturnType<typeof checkboxProps>>>\nexport type RowSelectionType = 'checkbox' | 'radio'\nexport type GetRowKey<RecordType = DefaultRecordType> = (record: RecordType, index?: number) => Key\nexport interface HeaderSticky {\n offsetHeader?: number\n topSummary?: boolean\n}\n\nexport interface BottomSticky {\n offsetBottom?: number\n}\n\nexport type FlatRecord<T = DefaultRecordType> = {\n record: T\n indent: number\n rowKey: Key\n isExpandRow?: boolean\n rowIndex: number\n pos: string\n flattenIndex: number\n level: number\n}\nexport type GetPopupContainer = (triggerNode: HTMLElement) => HTMLElement\nexport interface SorterResult<RecordType> {\n column?: ColumnType<RecordType>\n order?: SortOrder\n field?: Key | readonly Key[]\n columnKey?: Key\n}\nexport interface TableCurrentDataSource<RecordType = DefaultRecordType> {\n currentDataSource: RecordType[]\n action: TableAction\n}\ntype ChangeEvent<RecordType> = (\n pagination: TablePaginationConfig,\n filters: Record<string, FilterValue | null>,\n sorter: SorterResult<RecordType> | SorterResult<RecordType>[],\n extra: TableCurrentDataSource<RecordType>,\n) => void\ntype Scroll = {\n x?: number | string\n y?: number | string\n scrollToFirstRowOnChange?: boolean\n}\nexport type RowClassName<RecordType> = (\n record: RecordType,\n index: number,\n indent?: number,\n) => string\nexport type ExpandType = null | 'row' | 'nest'\nexport type ExpandedRowRender<ValueType> = (opt: {\n record: ValueType\n index: number\n indent: number\n expanded: boolean\n}) => any\nexport type TriggerEventHandler<RecordType> = (\n record: RecordType,\n key: Key,\n event: MouseEvent,\n) => void\nexport interface RenderExpandIconProps<RecordType> {\n prefixCls: string\n expanded: boolean\n record: RecordType\n expandable: boolean\n onExpand: TriggerEventHandler<RecordType>\n}\nexport type RenderExpandIcon<RecordType> = (props: RenderExpandIconProps<RecordType>) => any\nexport type ExpandIconType = 'default' | 'arrow'\nexport type SelectionItemSelectFn = (currentRowKeys: Key[]) => void\nexport interface SelectionItem {\n key: string\n text: any\n onSelect?: SelectionItemSelectFn\n}\nexport type SelectionSelectFn<T> = (\n record: T,\n selected: boolean,\n selectedRows: T[],\n nativeEvent: Event,\n) => void\nexport interface TableRowSelection<T = DefaultRecordType> {\n /** Keep the selection keys in list even the key not exist in `dataSource` anymore */\n preserveSelectedRowKeys?: boolean\n type?: RowSelectionType\n allowCancelRadio?: boolean\n selectedRowKeys?: Key[]\n defaultSelectedRowKeys?: Key[]\n onChange?: (selectedRowKeys: Key[], selectedRows: T[]) => void\n getCheckboxProps?: (record: T) => Partial<Omit<CheckboxProps, 'checked' | 'defaultChecked'>>\n onSelect?: SelectionSelectFn<T>\n onSelectMultiple?: (selected: boolean, selectedRows: T[], changeRows: T[]) => void\n /** @deprecated This function is meaningless and should use `onChange` instead */\n onSelectAll?: (selected: boolean, selectedRows: T[], changeRows: T[]) => void\n /** @deprecated This function is meaningless and should use `onChange` instead */\n onSelectInvert?: (selectedRowKeys: Key[]) => void\n onSelectNone?: () => void\n selections?: INTERNAL_SELECTION_ITEM[] | boolean\n hideSelectAll?: boolean\n fixed?: boolean\n columnWidth?: string | number\n columnTitle?: any\n checkStrictly?: boolean\n renderCell?: (value: boolean, record: T, index: number, originNode: any) => any\n}\ntype GetComponentProps<DataType> = (\n data: DataType,\n index?: number,\n) => Omit<HTMLAttributes, 'style'> & {\n style?: CSSProperties\n}\nexport type ResizeActionType = 'start' | 'move' | 'end'\nexport type SummaryFixed = boolean | 'top' | 'bottom'\nexport interface ValueParserParams<RecordType = DefaultRecordType, TValue = any> {\n newValue: TValue\n oldValue: TValue\n record: RecordType\n recordIndexs: number[]\n column: ColumnType<RecordType>\n}\nexport interface EditableValueParams<RecordType = DefaultRecordType, TValue = any> {\n value: TValue\n record: RecordType\n recordIndexs: number[]\n column: ColumnType<RecordType>\n updateEditedCellValue?: (key: DataIndex, value: any) => void\n}\n\nexport interface ValueParserFunc<T = any, TValue = any> {\n (params: EditableValueParams<T, TValue>): TValue | null | undefined\n}\nexport interface ValueGetterFunc<T = any, TValue = any> {\n (params: EditableValueParams<T, TValue>): string | null | undefined\n}\nexport type EditableTrigger = 'click' | 'dblClick' | 'contextmenu'\n\nexport interface PlainObject {\n [key: string]: any\n}\nexport type EditableCellProps<T> = PlainObject | ((params: EditableValueParams<T>) => PlainObject)\n\nexport type EditableCellRules<T> = EditRule[] | ((params: EditableValueParams<T>) => EditRule[])\n\nexport type EditableCellType<T> = (params: EditableValueParams<T>) => boolean\n\nexport type RowEditableType = 'single' | 'multiple'\nexport type RowEditableConfig<DataType> = {\n /**\n * @type single | multiple\n * @name 编辑的类型,支持单选和多选\n */\n type?: RowEditableType\n /** @name 正在编辑的列 */\n editableKeys?: Key[]\n /** 只能编辑一行的的提示 */\n onlyOneLineEditorAlertMessage?: string\n /** 同时只能新增一行的提示 */\n onlyAddOneLineAlertMessage?: string | false\n /** 正在编辑的列修改的时候 */\n onChange?: (editableKeys: Key[], editableRows: DataType[] | DataType) => void\n // /** 正在编辑的列修改的时候 */\n // onValuesChange?: (record: DataType, dataSource: DataType[]) => void\n /** 行保存的时候 */\n onSave?: (\n /** 行 id,一般是唯一id */\n key: Key,\n /** 当前修改的行的值 */\n record: DataType & { index?: number },\n /** 原始值,可以用于判断是否修改 */\n originRow: DataType & { index?: number },\n ) => Promise<any | void> | any | void\n}\n\nexport const baseTableProps = <T = DefaultRecordType>() => ({\n ignoreCellKey: Boolean,\n showHeaderScrollbar: Boolean,\n deepWatchDataSource: Boolean,\n deepWatchColumns: Boolean,\n prefixCls: String,\n columnDrag: {\n type: Boolean,\n default: false,\n },\n animateRows: {\n type: Boolean,\n default: undefined,\n },\n dropdownPrefixCls: { type: String },\n columns: {\n type: Array as PropType<ColumnsType<T>>,\n default: () => [],\n },\n dataSource: {\n type: Array as PropType<T[]>,\n default: () => [],\n },\n virtual: {\n type: Boolean,\n default: false,\n },\n xVirtual: {\n type: Boolean,\n default: undefined,\n },\n rowHeight: {\n type: [Number, Function] as PropType<RowHeight>,\n default: undefined,\n },\n autoHeaderHeight: {\n type: Boolean,\n default: false,\n },\n headerHeight: {\n type: [Number, Array] as PropType<HeaderHeight>,\n },\n height: {\n type: [Number, String],\n },\n maxHeight: {\n type: [Number, String],\n },\n minHeight: {\n type: [Number, String],\n },\n size: {\n type: String as PropType<DensitySize>,\n default: undefined,\n },\n bordered: {\n type: Boolean,\n default: undefined,\n },\n wrapText: {\n type: Boolean,\n default: false,\n },\n loading: {\n type: [Boolean, Object] as PropType<boolean | SpinProps>,\n default: undefined,\n },\n pagination: {\n type: [Boolean, Object] as PropType<false | TablePaginationConfig>,\n default: () => ({}),\n },\n direction: {\n type: String as PropType<'rtl'>,\n default: undefined,\n },\n stripe: {\n type: Boolean,\n default: false,\n },\n rowClassName: {\n type: [String, Function] as PropType<string | RowClassName<T>>,\n default: undefined,\n },\n sticky: {\n type: [Boolean, Object] as PropType<boolean | HeaderSticky>,\n default: true,\n },\n selectedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n expandFixed: {\n type: [Boolean, String] as PropType<FixedType>,\n default: undefined,\n },\n expandColumnWidth: {\n type: Number,\n default: undefined,\n },\n expandedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n defaultExpandedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n expandedRowRender: {\n type: Function as PropType<ExpandedRowRender<T>>,\n default: undefined,\n },\n expandRowByClick: {\n type: Boolean,\n default: undefined,\n },\n selectRowByClick: {\n type: Boolean,\n default: undefined,\n },\n expandIcon: {\n type: Function as PropType<RenderExpandIcon<T>>,\n default: undefined,\n },\n expandIconType: {\n type: String as PropType<ExpandIconType>,\n default: undefined,\n },\n onExpand: {\n type: Function as PropType<(expanded: boolean, record: T) => void>,\n default: undefined,\n },\n onExpandedRowsChange: {\n type: Function as PropType<(expandedKeys: Key[]) => void>,\n default: undefined,\n },\n defaultExpandAllRows: {\n type: Boolean,\n default: undefined,\n },\n indentSize: Number,\n expandIconColumnIndex: Number,\n childrenColumnName: {\n type: String,\n default: undefined,\n },\n rowExpandable: {\n type: Function as PropType<(record: T) => boolean>,\n default: () => true,\n },\n rowSelection: {\n type: Object as PropType<TableRowSelection<DefaultRecordType>>,\n default: undefined,\n },\n rowHoverDelay: {\n type: Number,\n default: 59,\n },\n rowHover: {\n type: Boolean,\n default: undefined,\n },\n rowKey: {\n type: [Function, String] as PropType<string | GetRowKey<T>>,\n default: undefined,\n },\n customRow: {\n type: Function as PropType<GetComponentProps<T>>,\n default: () => ({}),\n },\n customCell: {\n type: Function as PropType<\n (obj: { record: T; rowIndex: number; column: ColumnType<T> }) => Record<string, any>\n >,\n default: () => ({}),\n },\n customHeaderCell: {\n type: Function as PropType<(column: ColumnType<T>) => Record<string, any>>,\n default: () => ({}),\n },\n customSummaryCellProps: {\n type: Function as PropType<\n (obj: {\n record: T\n rowIndex: number\n column: ColumnType<T>\n columnIndex: number\n }) => Record<string, any>\n >,\n default: () => ({}),\n },\n editableKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n rowEditable: {\n type: Object as PropType<RowEditableConfig<T>>,\n default: undefined,\n },\n showHeader: {\n type: Boolean,\n default: true,\n },\n showSorterTooltip: {\n type: [Boolean, Object] as PropType<boolean | TooltipProps>,\n default: true,\n },\n getPopupContainer: {\n type: Function as PropType<GetPopupContainer>,\n },\n locale: {\n type: Object as PropType<TableLocale>,\n default: undefined,\n },\n scrollX: {\n type: [Number, String] as PropType<string | number>,\n },\n scroll: {\n type: Object as PropType<Scroll>,\n default: undefined,\n },\n autoHeight: {\n type: [Boolean, Function] as PropType<boolean | ((autoHeight: number) => number)>,\n default: false,\n },\n rangeSelection: {\n type: [String, Boolean] as PropType<boolean | 'single'>,\n default: false,\n },\n copyDelimiter: {\n type: String,\n default: '',\n },\n rowDrag: {\n type: [Boolean],\n },\n onChange: {\n type: Function as PropType<ChangeEvent<T>>,\n },\n summaryFixed: {\n type: [Boolean, String] as PropType<SummaryFixed>,\n default: undefined,\n },\n hasContextmenuPopup: Boolean,\n formatRangeCellText: {\n type: Function as PropType<(params: FormatRangeCellTextParams) => string>,\n },\n\n columnEmptyText: {\n type: [String, Boolean] as PropType<string | false>,\n default: undefined,\n },\n toolBar: { type: Boolean, default: undefined },\n options: { type: [Object, Boolean] as PropType<OptionConfig | false>, default: undefined },\n alwaysShowAlert: { type: Boolean, default: undefined },\n showAlert: { type: Boolean, default: undefined },\n // requst 相关配置\n request: Function as PropType<Request>,\n params: Object as PropType<Record<string, any>>,\n defaultData: Array as PropType<T[]>,\n manual: Boolean,\n manualRequest: Boolean,\n polling: [Number, Function] as PropType<number | ((dataSource: any[]) => number)>,\n debounceTime: Number,\n onLoad: {\n type: Function as PropType<(dataSource: T[], extra: any) => void>,\n default: undefined,\n },\n onLoadingChange: {\n type: Function as PropType<(loading: boolean | SpinProps | undefined) => void>,\n default: undefined,\n },\n onRequestError: {\n type: Function as PropType<(e: Error) => void>,\n default: undefined,\n },\n onSizeChange: {\n type: Function as PropType<(size: DensitySize) => void>,\n default: undefined,\n },\n onSubmit: {\n type: Function as PropType<ProQueryFilterProps['onFinish']>,\n default: undefined,\n },\n onReset: {\n type: Function as PropType<ProQueryFilterProps['onReset']>,\n default: undefined,\n },\n /** @name 列状态的配置,可以用来操作列功能 */\n columnsState: {\n type: Object as PropType<ColumnStateType>,\n default: undefined,\n },\n /** @name 是否要高亮选择行\t */\n highlightSelectRow: {\n type: Boolean,\n default: undefined,\n },\n editableCellState: {\n type: Function as PropType<EditableCellType<T>>,\n },\n\n paginationSticky: {\n type: [Boolean, Object] as PropType<boolean | BottomSticky>,\n default: true,\n },\n horizontalScrollSticky: {\n type: [Boolean, Object] as PropType<boolean | BottomSticky>,\n default: true,\n },\n 'onUpdate:selectedRowKeys': {\n type: Function as PropType<(selectedRowKeys: Key[], selectedRows: T[]) => void>,\n },\n onScroll: {\n type: Function as PropType<(e: UIEvent) => void>,\n },\n 'onUpdate:expandedRowKeys': {\n type: Function as PropType<(info: Key[]) => void>,\n },\n onResizeColumn: {\n type: Function as PropType<\n (w: number, col: ColumnType, action: ResizeActionType) => boolean | void\n >,\n default: undefined,\n },\n onRowDragEnd: {\n type: Function as PropType<(opt: DragRowEventInfo) => boolean | Promise<any> | void>,\n default: undefined,\n },\n onColumnDragEnd: {\n type: Function as PropType<(opt: DragColumnEventInfo) => boolean | Promise<any> | void>,\n default: undefined,\n },\n onCellKeydown: {\n type: Function as PropType<(e: KeyboardEvent, opt: KeydownPayload) => boolean | void>,\n default: undefined,\n },\n onCellClick: {\n type: Function as PropType<(e: MouseEvent, opt: CellRenderArgs) => void>,\n default: undefined,\n },\n onBeforeOpenEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => boolean | Promise<boolean> | void>,\n default: undefined,\n },\n onOpenEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => void>,\n default: undefined,\n },\n onBeforeCloseEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => boolean | Promise<boolean> | void>,\n default: undefined,\n },\n onCloseEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => void>,\n default: undefined,\n },\n onDataChange: {\n type: Function as PropType<(dataSource: T[]) => void>,\n },\n onRowValidate: {\n type: Function as PropType<(TablePromiseErrorData) => void>,\n },\n onValidate: {\n type: Function as PropType<(TablePromiseErrorData) => void>,\n },\n 'onUpdate:pagination': {\n type: Function as PropType<(info: TablePaginationConfig) => void>,\n },\n 'onUpdate:dataSource': {\n type: Function as PropType<(dataSource: T[]) => void>,\n },\n 'onUpdate:columns': {\n type: Function as PropType<(columns: ColumnsType<T>, action: 'resize' | 'drag') => void>,\n },\n 'onUpdate:showAlert': {\n type: Function as PropType<(show: boolean) => void>,\n },\n})\n\nexport const tableProps = <T = DefaultRecordType>() => ({\n ...baseTableProps<T>(),\n title: String,\n subTitle: String,\n footer: Function,\n tooltip: String,\n cardProps: {\n type: [Object, Boolean] as PropType<CardProps | false>,\n default: undefined,\n },\n search: {\n type: [Object, Boolean] as PropType<SearchConfig | false>,\n default: undefined,\n },\n beforeSearchSubmit: {\n type: Function as PropType<(params: Partial<T>) => any>,\n default: undefined,\n },\n cardBordered: {\n type: [Boolean, Object] as PropType<Bordered>,\n default: undefined,\n },\n})\nclass Helper<T extends DefaultRecordType> {\n Return = tableProps<T>()\n}\nexport type ProTableProps<T extends DefaultRecordType = DefaultRecordType> = Partial<\n ExtractPropTypes<Helper<T>['Return']>\n>\nexport interface TableLocale {\n filterTitle?: string\n filterConfirm?: any\n filterReset?: any\n filterEmptyText?: any\n emptyText?: any | (() => any)\n selectAll?: any\n selectNone?: any\n selectInvert?: any\n selectionAll?: any\n sortTitle?: string\n expand?: string\n collapse?: string\n triggerDesc?: string\n triggerAsc?: string\n cancelSort?: string\n}\nexport interface ColumnTitleProps<RecordType> {\n /** @deprecated Please use `sorterColumns` instead. */\n sortOrder?: SortOrder\n /** @deprecated Please use `sorterColumns` instead. */\n sortColumn?: ColumnType<RecordType>\n column: ColumnType<RecordType>\n sortColumns?: {\n column: ColumnType<RecordType>\n order: SortOrder\n }[]\n filters?: Record<string, string[]>\n}\nexport type ColumnTitle<RecordType = DefaultRecordType> =\n | string\n | number\n | object\n | ((props: ColumnTitleProps<RecordType>) => any)\ninterface ColumnSharedType {\n title?: ColumnTitle\n key?: Key\n className?: string\n class?: string\n fixed?: FixedType\n ellipsis?: CellEllipsisType\n align?: AlignType\n wrapText?: boolean\n dataIndex?: DataIndex\n}\nexport interface FilterConfirmProps {\n closeDropdown: boolean\n}\nexport type AlignType = 'left' | 'center' | 'right'\nexport interface ColumnFilterItem {\n text: string | number\n value: string | number | boolean\n children?: ColumnFilterItem[]\n}\nexport type SortOrder = 'desc' | 'asc' | null\nexport type CompareFn<T> = (a: T, b: T, sortOrder?: SortOrder) => number\nexport type FilterValue = (Key | boolean)[]\nexport type FilterKey = Key[] | null\nexport interface FilterDropdownProps {\n prefixCls: string\n confirm: (param?: FilterConfirmProps) => void\n clearFilters?: () => void\n filters?: ColumnFilterItem[]\n /** @deprecated Please use `open` instead */\n visible: boolean\n open: boolean\n}\nexport interface CellType {\n key?: Key\n class?: string\n style?: CSSProperties\n colSpan?: number\n rowSpan?: number\n}\nexport interface HeaderCellType {\n key?: Key\n class?: string\n style?: CSSProperties\n column?: FinallyColumnType\n colSpan?: number\n rowSpan?: number\n hasSubColumns?: boolean\n colStart?: number\n colEnd?: number\n}\nexport interface RenderedCell {\n props?: CellType\n children?: any\n}\nexport type CellRenderArgs = {\n record: any\n column: ColumnType<DefaultRecordType> | ColumnGroupType<DefaultRecordType>\n text: any\n value: any\n index: number\n oldValue?: any\n recordIndexs: number[]\n openEditor: () => void\n closeEditor: () => void\n}\nexport interface ContextmenuPopupArg<RecordT, ColumnT>\n extends Omit<Partial<CellRenderArgs>, 'column' | 'record'> {\n column?: ColumnT\n record?: RecordT\n event: MouseEvent\n isExpand?: boolean\n hidePopup: () => void\n}\nexport type MenuFilterProps = {\n prefixCls: string\n setSelectedKeys: (selectedKeys: Key[]) => void\n selectedKeysRef: Ref<Key[]>\n confirm: () => void\n clearFilters: () => void\n filters: ColumnFilterItem[]\n}\nexport interface MenuPopupArg<ColumnT> {\n column: ColumnT\n event: MouseEvent\n hidePopup: () => void\n filter: MenuFilterProps\n}\nexport interface CellTooltip {\n placement?:\n | 'top'\n | 'left'\n | 'right'\n | 'bottom'\n | 'topLeft'\n | 'topRight'\n | 'bottomLeft'\n | 'bottomRight'\n | 'leftTop'\n | 'leftBottom'\n | 'rightTop'\n | 'rightBottom'\n color?: string\n overlayStyle?: CSSProperties\n overlayClassName?: string\n openClassName?: string\n title?: (args: CellRenderArgs) => any\n align?: TooltipAlignConfig\n shouldOpen?: (isEllipsis: boolean, args: CellRenderArgs) => boolean\n allowEnter?: boolean\n}\n\nexport interface EditableCellConfig<T = DefaultRecordType> {\n /**\n * 触发编辑的事件\n */\n editableTrigger?: EditableTrigger | EditableTrigger[]\n /**\n * 组件定义,如:`Input` `Select`。对于完全自定义的组件(非组件库内的组件),组件需要支持 `value` 和 `onChange` ;如果还需要支持校验规则,则组件还需实现 `tips` 和 `status` 两个 API,实现规则可参考 `Input` 组件\n */\n component?: any\n /**\n * 单元格默认状态是否为编辑态\n * @default false\n */\n defaultEditable?: boolean\n /**\n * 设置当前列的单元格始终保持为编辑态\n * @default false\n */\n keepEditMode?: boolean\n\n /**\n * 行内错误提示\n * @default false\n */\n inlineError?: boolean\n /**\n * 是否可以编辑\n */\n editable?: (context: EditableValueParams<T>) => boolean\n valueParser?: ValueParserFunc<T>\n valueGetter?: ValueGetterFunc<T>\n valueSetter?: (params: EditableValueParams<T>) => boolean | Promise<any>\n /**\n * 透传给编辑组件的事件,参数有({ row, rowIndex, col, colIndex, editedRow, updateEditedCellValue })。可以使用参数 `updateEditedCellValue` 更新当前单元格(或当前行任意编辑状态单元格)的值。<br/>更新当前单元格数据示例:`updateEditedCellValue(value)`;<br/>更新当前行编辑态数据示例:`updateEditedCellValue({ isUpdateCurrentRow: true, column_key: 'test' })`;<br/>更新其他行编辑态数据示例:`updateEditedCellValue({ rowValue: '124', column_key: 'test' })`\n */\n on?: (context: EditableValueParams<T>) => { [eventName: string]: Function }\n /**\n * 编辑完成后,退出编辑模式时触发\n */\n onEdited?: (context: EditableValueParams<T>) => void\n /**\n * 透传给组件 `edit.component` 的属性,可以使用 `updateEditedCellValue` 更新当前行任意编辑状态单元格的值\n */\n props?: EditableCellProps<T>\n /**\n * 校验规则\n */\n rules?: EditableCellRules<T>\n /**\n * 是否显示编辑图标\n * @default true\n */\n request?: (params: Record<string, any>) => Promise<Record<string, any>[]>\n /** @name 依赖字段的name,暂时只在拥有 request 的项目中生效,会自动注入到 params 中 */\n dependencies?: DataIndex[]\n}\n\nexport interface ColumnType<RecordType = DefaultRecordType>\n extends ColumnSharedType,\n Omit<\n ProFormItemType,\n | 'key'\n | 'originKey'\n | 'tooltip'\n | 'hidden'\n | 'grid'\n | 'title'\n | 'spaceProps'\n | 'children'\n | 'width'\n | 'ignoreWidth'\n | 'name'\n | 'originName'\n | 'rowProps'\n | 'colProps'\n | 'valueEnum'\n > {\n search?: ProFormItemType\n colSpan?: number\n dataIndex?: DataIndex\n key?: Key\n rowSpan?: number\n width?: number\n minWidth?: number\n maxWidth?: number\n resizable?: boolean\n flex?: number\n autoHeight?: boolean\n tooltip?: true | CellTooltip\n headerTooltip?: string | true\n hidden?: boolean\n sorter?:\n | boolean\n | CompareFn<RecordType>\n | {\n compare?: CompareFn<RecordType>\n /** Config multiple sorter order priority */\n multiple?: number\n }\n showCellPopover?: boolean | PopoverProps\n sortOrder?: SortOrder\n defaultSortOrder?: SortOrder\n sortDirections?: SortOrder[]\n showSorterTooltip?: boolean | TooltipProps\n filtered?: boolean\n filters?: ColumnFilterItem[]\n filterIcon?: ({ filtered }: { filtered: boolean }) => any\n filterDropdown?: (props: FilterDropdownProps) => any\n filterMultiple?: boolean\n filteredValue?: FilterValue | null\n defaultFilteredValue?: FilterValue | null\n onFilter?: (value: string | number | boolean, record: RecordType) => boolean\n showFilter?: boolean\n showMenu?: boolean | 'hover'\n /** @deprecated Please use `filterDropdownOpen` instead */\n filterDropdownVisible?: boolean\n /** @deprecated Please use `onFilterDropdownOpenChange` instead */\n onFilterDropdownVisibleChange?: (open: boolean) => void\n filterDropdownOpen?: boolean\n onFilterDropdownOpenChange?: (open: boolean) => void\n customFilterDropdown?: boolean\n getPopupContainer?: GetPopupContainer\n customCell?: (obj: {\n record: any\n rowIndex: number\n column: ColumnType<RecordType>\n }) => Record<string, any>\n customHeaderCell?: (column: ColumnType<RecordType>) => Record<string, any>\n customRender?: (opt: {\n value: any\n text: any\n record: RecordType\n index: number\n column: ColumnType<RecordType>\n cancelEditable: (recordKey: Key) => boolean\n startEditable: (recordKey: Key, recordValue?: any) => boolean\n saveEditable: (recordKey: Key) => Promise<boolean>\n isEditable: (recordKey: Key) => boolean\n }) => any | RenderedCell\n /**\n * 可编辑单元格配置项,具体属性参考文档 `EditableCellConfig` 描述\n */\n edit?: EditableCellConfig<RecordType>\n\n valueParser?: ValueParserFunc<RecordType>\n valueGetter?: ValueGetterFunc<RecordType>\n valueSetter?: (params: ValueParserParams<RecordType>) => boolean | Promise<any>\n valueChange?: (e: Event, params: ValueParserParams<RecordType>) => void\n rowDrag?: boolean | ((arg: { record: RecordType; column: ColumnType<RecordType> }) => boolean)\n drag?: boolean\n /** @deprecated Please use `v-slot:customFilterIcon` `v-slot:bodyCell` `v-slot:headerCell` instead */\n slots?: {\n filterIcon?: string\n filterDropdown?: string\n customRender?: string\n title?: string\n }\n valueEnum?: ((row: RecordType) => Record<string, ValueEnumType>) | Record<string, ValueEnumType>\n valueStatus?:\n | ((value: any, row: RecordType, valueEnum?: ValueEnumType) => ValueStatus)\n | ValueStatus\n renderText?: (text: any, record: RecordType, rowIndex: number) => string | number\n /** @name 列设置的 disabled */\n disable?:\n | boolean\n | {\n checkbox: boolean\n }\n /** @name 在 table 中隐藏 */\n hideInTable?: boolean\n\n /** @name 在 search 中隐藏 */\n hideInSearch?: boolean\n\n /** @name 不在配置工具中显示 */\n hideInSetting?: boolean\n\n children?: ColumnType<RecordType>[]\n}\nexport interface ColumnGroupType<RecordType = DefaultRecordType> extends ColumnType<RecordType> {\n children?: ColumnsType<RecordType>\n}\nexport type ColumnsType<RecordType = DefaultRecordType> = (\n | ColumnGroupType<RecordType>\n | ColumnType<RecordType>\n)[]\nexport interface FinallyColumnType<RecordType = DefaultRecordType> extends ColumnType<RecordType> {\n finallyWidth?: number\n rowSpan?: number\n height?: number\n left?: number\n top?: number\n type?: 'checkbox' | 'expand' | 'rowIndex' | 'draggable'\n columnKey: Key\n columnIndex: number\n children?: FinallyColumnType<RecordType>[]\n originColumn?: ColumnsType[number]\n __Internal__Column__?: boolean\n showTitle: boolean\n fixed?: 'left' | 'right'\n}\ntype CellInfo = {\n columnKey: Key\n rowKey: Key\n}\nexport interface TableExposeType {\n scrollTo: (pos: string | Position, behavior: 'auto' | 'smooth') => void\n scrollLeft?: number\n scrollTop?: number\n bodyRef: HTMLDivElement\n rootRef: HTMLDivElement\n paginationRef: HTMLDivElement\n formAction: ProFormActionType\n getSelectedRange: () => SelectedRangeItem[]\n clearAllSelectedRange: () => void\n clearDataSource: () => void\n copySelectedRange: () => void\n appendCellToSelectedRange: (cell: AppendCellRange) => void\n openEditor: (cellInfos: CellInfo[]) => void\n closeEditor: (cellInfos?: CellInfo[]) => void\n reload: (resetPageIndex?: boolean) => Promise<void>\n reset: () => void\n calcTableHeight: () => Promise<void>\n formSearchSubmit: () => void\n getSearchParams: () => Record<string, any>\n validateRowData: (rowValue: any) => Promise<TablePromiseErrorData>\n validateTableData: () => Promise<TablePromiseErrorData>\n addEditRecord: (recordValue?: any, options?: AddLineOptions) => false | undefined\n startEditable: (recordKey: Key, recordValue?: any) => boolean\n cancelEditable: (recordKey: Key) => boolean\n saveEditable: (recordKey: Key) => Promise<boolean>\n}\nexport interface DragRowsHandleInfo {\n y: number\n top: number\n height: number\n rowKey: Key\n centerY: number\n record: DefaultRecordType\n indexs: number[]\n}\nexport interface DragColumnHandleInfo {\n x: number\n left: number\n width: number\n columnKey: Key\n centerX: number\n indexs: number[]\n}\nexport interface DragRowEventInfo {\n top: number\n height: number\n dir: typeof DOWN | typeof UP\n rowKey: Key\n record: DefaultRecordType\n event: MouseEvent | Touch\n column: ColumnType\n preTargetInfo: DragRowsHandleInfo | null\n nextTargetInfo: DragRowsHandleInfo | null\n fromIndexs: number[]\n insertToRowKey: Key\n}\nexport interface RowDragGhostArg<RecordT, ColumnT> {\n record: RecordT\n column: ColumnT\n icon: VNode\n allowed: boolean\n dragging: boolean\n event: MouseEvent | Touch\n preTargetInfo: DragRowsHandleInfo | null\n nextTargetInfo: DragRowsHandleInfo | null\n}\nexport interface DragColumnEventInfo {\n event: MouseEvent | Touch\n column: ColumnType\n targetColumn: ColumnType\n dir: typeof LEFT | typeof RIGHT\n}\nexport interface ColumnDragGhostArg<ColumnT> {\n column: ColumnT\n icon: VNode\n allowed: boolean\n dragging: boolean\n event: MouseEvent | Touch\n targetColumn: ColumnT\n}\n\nexport type DensitySize = 'small' | 'middle' | 'large' | undefined\nexport type Request<T = DefaultRecordType, U = Record<string, any>> = (\n params: U & {\n pageSize?: number\n current?: number\n keyword?: string\n },\n sorters?: SorterResult<T>[],\n filter?: Record<string, (string | number)[] | null>,\n) => Promise<Partial<RequestData<T>>>\n\nexport type RequestData<T = DefaultRecordType> = {\n data: T[] | undefined\n success?: boolean\n total?: number\n} & Record<string, any>\n\nexport type OptionsFunctionType = (e: any, action?: UseFetchDataAction<any>) => void\nexport type OptionsType = OptionsFunctionType | boolean\n\nexport type SettingOptionType = {\n draggable?: boolean\n checkable?: boolean\n checkedReset?: boolean\n listsHeight?: number\n}\n\nexport type OptionSearchProps = Omit<InputProps, 'onSearch'> & {\n /** 如果 onSearch 返回一个false,直接拦截请求 */\n onSearch?: (keyword: string) => Promise<boolean | undefined> | boolean | undefined\n}\n\nexport type OptionConfig = {\n density?: boolean\n filter?: boolean\n fullScreen?: OptionsType\n reload?: OptionsType\n setting?: boolean | SettingOptionType\n search?: (OptionSearchProps & { name?: string }) | boolean\n}\n\nexport type ValueEnumType = {\n text: string | number\n label?: string | number\n status?: string\n color?: string\n disabled?: boolean\n value?: string | number | boolean\n children?: ValueEnumType[]\n}\n\nexport type ColumnsState = {\n show?: boolean\n fixed?: true | 'right' | 'left' | undefined\n order?: number\n width?: number\n disable?:\n | boolean\n | {\n checkbox: boolean\n }\n}\n\nexport type ColumnStateType = {\n /**\n * 持久化的类型,支持 localStorage 和 sessionStorage\n *\n * @param localStorage 设置在关闭浏览器后也是存在的\n * @param sessionStorage 关闭浏览器后会丢失\n */\n persistenceType?: 'localStorage' | 'sessionStorage'\n /** 持久化的key,用于存储到 storage 中 */\n persistenceKey?: string\n /** ColumnsState 的值 */\n defaultValue?: Record<string, ColumnsState>\n /** ColumnsState 的值 */\n value?: Record<string, ColumnsState>\n onChange?: (map: Record<string, ColumnsState>) => void\n}\n\nexport type SearchConfig = ProQueryFilterProps & {\n cardProps?: CardProps | false\n tabName?: string\n style?: CSSProperties\n}\n\nexport type BorderedType = 'search' | 'table'\n\nexport type Bordered =\n | boolean\n | {\n search?: boolean\n table?: boolean\n }\n\nexport interface IsDateOptions {\n format: string\n strictMode: boolean\n delimiters: string[]\n}\n\nexport type CustomValidator = (\n val: any,\n) => CustomValidateResolveType | Promise<CustomValidateResolveType>\n\nexport type CustomValidateResolveType = boolean | CustomValidateObj\n\nexport interface CustomValidateObj {\n result: boolean\n message: string\n type?: 'error' | 'warning' | 'success'\n}\n\nexport type AddLineOptions = {\n position?: 'top' | 'bottom'\n newRecordType?: 'dataSource' | 'cache'\n}\n\nexport type TableEditingCell<RecordType = DefaultRecordType> = {\n recordIndexs: number[]\n column: ColumnType<RecordType>\n rowKey: Key\n originRecord: RecordType\n rowIndex: number\n columnKey: Key\n validateEdit: () => Promise<true | AllValidateResult[]>\n}\nexport type AllValidateResult = CustomValidateObj | ValidateResultType\n\nexport type TableErrorListMap = { [key: string]: AllValidateResult[] }\nexport type ErrorListObjectType = TableEditingCell & { errorList: AllValidateResult[] }\n\nexport interface TablePromiseErrorData {\n errors: ErrorListObjectType[]\n errorMap: TableErrorListMap\n data?: DefaultRecordType[]\n}\nexport interface ValidateResultType extends EditRule {\n result: boolean\n}\nexport interface EditRule {\n /**\n * 内置校验方法,校验值类型是否为布尔类型,示例:`{ boolean: true, message: '数据类型必须是布尔类型' }`\n */\n boolean?: boolean\n /**\n * 内置校验方法,校验值是否属于枚举值中的值。示例:`{ enum: ['primary', 'info', 'warning'], message: '值只能是 primary/info/warning 中的一种' }`\n */\n enum?: Array<string>\n /**\n * 内置校验方法,校验值是否为身份证号码,组件校验正则为 `/^(\\\\d{18,18}|\\\\d{15,15}|\\\\d{17,17}x)$/i`,示例:`{ idcard: true, message: '请输入正确的身份证号码' }`\n */\n idcard?: boolean\n /**\n * 内置校验方法,校验值固定长度,如:len: 10 表示值的字符长度只能等于 10 ,中文表示 2 个字符,英文为 1 个字符。示例:`{ len: 10, message: '内容长度不对' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length === 10, message: '内容文本长度只能是 10 个字' }`\n */\n len?: number | boolean\n /**\n * 内置校验方法,校验值最大长度,如:max: 100 表示值最多不能超过 100 个字符,中文表示 2 个字符,英文为 1 个字符。示例:`{ max: 10, message: '内容超出' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length <= 10, message: '内容文本长度不能超过 10 个字' }`<br />如果数据类型数字(Number),则自动变为数字大小的比对\n */\n max?: number | boolean\n /**\n * 校验未通过时呈现的错误信息,值为空则不显示\n * @default ''\n */\n message?: string\n /**\n * 内置校验方法,校验值最小长度,如:min: 10 表示值最多不能少于 10 个字符,中文表示 2 个字符,英文为 1 个字符。示例:`{ min: 10, message: '内容长度不够' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length >= 10, message: '内容文本长度至少为 10 个字' }`。<br />如果数据类型数字(Number),则自动变为数字大小的比对\n */\n min?: number | boolean\n /**\n * 内置校验方法,校验值是否为数字(1.2 、 1e5 都算数字),示例:`{ number: true, message: '请输入数字' }`\n */\n number?: boolean\n /**\n * 内置校验方法,校验值是否符合正则表达式匹配结果,示例:`{ pattern: /@qq.com/, message: '请输入 QQ 邮箱' }`\n */\n pattern?: RegExp\n /**\n * 内置校验方法,校验值是否已经填写。该值为 true,默认显示必填标记,可通过设置 `requiredMark: false` 隐藏必填标记\n */\n required?: boolean\n /**\n * 内置校验方法,校验值是否为手机号码,校验正则为 `/^1[3-9]\\d{9}$/`,示例:`{ telnumber: true, message: '请输入正确的手机号码' }`\n */\n telnumber?: boolean\n /**\n * 校验未通过时呈现的错误信息类型,有 告警信息提示 和 错误信息提示 等两种\n * @default error\n */\n type?: 'error' | 'warning'\n /**\n * 自定义校验规则,示例:`{ validator: (val) => val.length > 0, message: '请输入内容'}`\n */\n validator?: CustomValidator\n /**\n * 内置校验方法,校验值是否为空格。示例:`{ whitespace: true, message: '值不能为空' }`\n */\n whitespace?: boolean\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interface.mjs","sources":["../../../../../../../../packages/components/table/src/components/interface.ts"],"sourcesContent":["import type { TooltipProps } from 'ant-design-vue/es/tooltip'\nimport type { SpinProps } from 'ant-design-vue/es/spin'\nimport type { CSSProperties, ExtractPropTypes, HTMLAttributes, PropType, Ref, VNode } from 'vue'\nimport type {\n AppendCellRange,\n FormatRangeCellTextParams,\n KeydownPayload,\n SelectedRangeItem,\n} from '../hooks/RangeInterface'\nimport type { INTERNAL_SELECTION_ITEM } from '../hooks/useRowSelection'\nimport type { DOWN, LEFT, RIGHT, UP } from './Drag/constant'\nimport type { TablePaginationConfig, TablePaginationPosition } from './PaginationConfig'\nimport type { InputProps } from 'ant-design-vue/es/input'\nimport type { UseFetchDataAction } from '../hooks/useFetchData'\nimport type { CardProps, PopoverProps } from 'ant-design-vue'\nimport type {\n ProFormActionType,\n ProFormItemType,\n ProQueryFilterProps,\n} from '@pro-design-vue/components/form'\nexport type DefaultRecordType = Record<string, any>\nexport interface TooltipAlignConfig {\n points?: [string, string]\n offset?: [number | string, number | string]\n targetOffset?: [number | string, number | string]\n overflow?: {\n adjustX: boolean\n adjustY: boolean\n }\n useCssRight?: boolean\n useCssBottom?: boolean\n useCssTransform?: boolean\n}\nexport type RowType = 'left' | 'center' | 'right'\nexport type ValueStatus = 'success' | 'processing' | 'error' | 'warning' | string | undefined\nexport type Key = string | number\nexport interface Position {\n left?: number\n top?: number\n columnIndex?: number\n columnKey?: Key\n rowKey?: Key\n}\nexport type { TablePaginationPosition, TablePaginationConfig }\nexport type DataIndex = string | number | readonly (string | number)[]\nexport type CellEllipsisType =\n | {\n showTitle?: boolean\n line?: number\n }\n | boolean\nexport type FixedType = 'left' | 'right' | boolean\nexport type RowHeight =\n | ((p: Record<any, any>, isExpandRow: boolean, baseHeight: number) => number | undefined)\n | number\nexport type HeaderHeight = number[] | number\nexport interface RowsRefsItem {\n left?: any\n right?: any\n conter?: any\n}\n// const SpinSizes = ['small', 'default', 'large']\nexport type SpinSize = 'small' | 'default' | 'large'\n// const TableActions = ['paginate', 'sort', 'filter']\nexport type TableAction = 'paginate' | 'sort' | 'filter'\nexport interface StickyOffsets {\n left: readonly number[]\n right: readonly number[]\n isSticky?: boolean\n}\nexport interface CellEditorArgs {\n modelValue: Ref<any>\n save: () => void\n onInput: (event: Event, value: any) => void\n closeEditor: () => void\n column: ColumnType\n editorRef: Ref<any>\n getPopupContainer: () => HTMLElement\n recordIndexs: number[]\n record: any\n}\n\nexport const checkboxProps = () => ({\n prefixCls: String as PropType<string>,\n disabled: Boolean as PropType<boolean>,\n tabindex: [String, Number],\n name: String as PropType<string>,\n id: String as PropType<string>,\n style: {\n type: Object as PropType<CSSProperties>,\n default: () => ({}),\n },\n class: String as PropType<string>,\n checked: Boolean as PropType<boolean>,\n indeterminate: Boolean as PropType<boolean>,\n ariaLabel: String as PropType<string>,\n})\n\nexport type CheckboxProps = Partial<ExtractPropTypes<ReturnType<typeof checkboxProps>>>\nexport type RowSelectionType = 'checkbox' | 'radio'\nexport type GetRowKey<RecordType = DefaultRecordType> = (record: RecordType, index?: number) => Key\nexport interface HeaderSticky {\n offsetHeader?: number\n topSummary?: boolean\n}\n\nexport interface BottomSticky {\n offsetBottom?: number\n}\n\nexport type FlatRecord<T = DefaultRecordType> = {\n record: T\n indent: number\n rowKey: Key\n isExpandRow?: boolean\n rowIndex: number\n pos: string\n flattenIndex: number\n level: number\n}\nexport type GetPopupContainer = (triggerNode: HTMLElement) => HTMLElement\nexport interface SorterResult<RecordType> {\n column?: ColumnType<RecordType>\n order?: SortOrder\n field?: Key | readonly Key[]\n columnKey?: Key\n}\nexport interface TableCurrentDataSource<RecordType = DefaultRecordType> {\n currentDataSource: RecordType[]\n action: TableAction\n}\ntype ChangeEvent<RecordType> = (\n pagination: TablePaginationConfig,\n filters: Record<string, FilterValue | null>,\n sorter: SorterResult<RecordType> | SorterResult<RecordType>[],\n extra: TableCurrentDataSource<RecordType>,\n) => void\ntype Scroll = {\n x?: number | string\n y?: number | string\n scrollToFirstRowOnChange?: boolean\n}\nexport type RowClassName<RecordType> = (\n record: RecordType,\n index: number,\n indent?: number,\n) => string\nexport type ExpandType = null | 'row' | 'nest'\nexport type ExpandedRowRender<ValueType> = (opt: {\n record: ValueType\n index: number\n indent: number\n expanded: boolean\n}) => any\nexport type TriggerEventHandler<RecordType> = (\n record: RecordType,\n key: Key,\n event: MouseEvent,\n) => void\nexport interface RenderExpandIconProps<RecordType> {\n prefixCls: string\n expanded: boolean\n record: RecordType\n expandable: boolean\n onExpand: TriggerEventHandler<RecordType>\n}\nexport type RenderExpandIcon<RecordType> = (props: RenderExpandIconProps<RecordType>) => any\nexport type ExpandIconType = 'default' | 'arrow'\nexport type SelectionItemSelectFn = (currentRowKeys: Key[]) => void\nexport interface SelectionItem {\n key: string\n text: any\n onSelect?: SelectionItemSelectFn\n}\nexport type SelectionSelectFn<T> = (\n record: T,\n selected: boolean,\n selectedRows: T[],\n nativeEvent: Event,\n) => void\nexport interface TableRowSelection<T = DefaultRecordType> {\n /** Keep the selection keys in list even the key not exist in `dataSource` anymore */\n preserveSelectedRowKeys?: boolean\n type?: RowSelectionType\n allowCancelRadio?: boolean\n selectedRowKeys?: Key[]\n defaultSelectedRowKeys?: Key[]\n onChange?: (selectedRowKeys: Key[], selectedRows: T[]) => void\n getCheckboxProps?: (record: T) => Partial<Omit<CheckboxProps, 'checked' | 'defaultChecked'>>\n onSelect?: SelectionSelectFn<T>\n onSelectMultiple?: (selected: boolean, selectedRows: T[], changeRows: T[]) => void\n /** @deprecated This function is meaningless and should use `onChange` instead */\n onSelectAll?: (selected: boolean, selectedRows: T[], changeRows: T[]) => void\n /** @deprecated This function is meaningless and should use `onChange` instead */\n onSelectInvert?: (selectedRowKeys: Key[]) => void\n onSelectNone?: () => void\n selections?: INTERNAL_SELECTION_ITEM[] | boolean\n hideSelectAll?: boolean\n fixed?: boolean\n columnWidth?: string | number\n columnTitle?: any\n checkStrictly?: boolean\n renderCell?: (value: boolean, record: T, index: number, originNode: any) => any\n}\ntype GetComponentProps<DataType> = (\n data: DataType,\n index?: number,\n) => Omit<HTMLAttributes, 'style'> & {\n style?: CSSProperties\n}\nexport type ResizeActionType = 'start' | 'move' | 'end'\nexport type SummaryFixed = boolean | 'top' | 'bottom'\nexport interface ValueParserParams<RecordType = DefaultRecordType, TValue = any> {\n newValue: TValue\n oldValue: TValue\n record: RecordType\n recordIndexs: number[]\n column: ColumnType<RecordType>\n}\nexport interface EditableValueParams<RecordType = DefaultRecordType, TValue = any> {\n value: TValue\n record: RecordType\n recordIndexs: number[]\n column: ColumnType<RecordType>\n updateEditedCellValue?: (key: DataIndex, value: any) => void\n}\n\nexport interface ValueParserFunc<T = any, TValue = any> {\n (params: EditableValueParams<T, TValue>): TValue | null | undefined\n}\nexport interface ValueGetterFunc<T = any, TValue = any> {\n (params: EditableValueParams<T, TValue>): string | null | undefined\n}\nexport type EditableTrigger = 'click' | 'dblClick' | 'contextmenu'\n\nexport interface PlainObject {\n [key: string]: any\n}\nexport type EditableCellProps<T> = PlainObject | ((params: EditableValueParams<T>) => PlainObject)\n\nexport type EditableCellRules<T> = EditRule[] | ((params: EditableValueParams<T>) => EditRule[])\n\nexport type EditableCellType<T> = (params: EditableValueParams<T>) => boolean\n\nexport type RowEditableType = 'single' | 'multiple'\nexport type RowEditableConfig<DataType> = {\n /**\n * @type single | multiple\n * @name 编辑的类型,支持单选和多选\n */\n type?: RowEditableType\n /** @name 正在编辑的列 */\n editableKeys?: Key[]\n /** 只能编辑一行的的提示 */\n onlyOneLineEditorAlertMessage?: string\n /** 同时只能新增一行的提示 */\n onlyAddOneLineAlertMessage?: string | false\n /** 正在编辑的列修改的时候 */\n onChange?: (editableKeys: Key[], editableRows: DataType[] | DataType) => void\n // /** 正在编辑的列修改的时候 */\n // onValuesChange?: (record: DataType, dataSource: DataType[]) => void\n /** 行保存的时候 */\n onSave?: (\n /** 行 id,一般是唯一id */\n key: Key,\n /** 当前修改的行的值 */\n record: DataType & { index?: number },\n /** 原始值,可以用于判断是否修改 */\n originRow: DataType & { index?: number },\n ) => Promise<any | void> | any | void\n}\n\nexport const baseTableProps = <T = DefaultRecordType>() => ({\n ignoreCellKey: Boolean,\n showHeaderScrollbar: Boolean,\n deepWatchDataSource: Boolean,\n deepWatchColumns: Boolean,\n prefixCls: String,\n columnDrag: {\n type: Boolean,\n default: false,\n },\n animateRows: {\n type: Boolean,\n default: undefined,\n },\n dropdownPrefixCls: { type: String },\n columns: {\n type: Array as PropType<ColumnsType<T>>,\n default: () => [],\n },\n dataSource: {\n type: Array as PropType<T[]>,\n default: () => [],\n },\n virtual: {\n type: Boolean,\n default: false,\n },\n xVirtual: {\n type: Boolean,\n default: undefined,\n },\n rowHeight: {\n type: [Number, Function] as PropType<RowHeight>,\n default: undefined,\n },\n autoHeaderHeight: {\n type: Boolean,\n default: false,\n },\n headerHeight: {\n type: [Number, Array] as PropType<HeaderHeight>,\n },\n height: {\n type: [Number, String],\n },\n maxHeight: {\n type: [Number, String],\n },\n minHeight: {\n type: [Number, String],\n },\n size: {\n type: String as PropType<DensitySize>,\n default: undefined,\n },\n bordered: {\n type: Boolean,\n default: undefined,\n },\n wrapText: {\n type: Boolean,\n default: false,\n },\n loading: {\n type: [Boolean, Object] as PropType<boolean | SpinProps>,\n default: undefined,\n },\n pagination: {\n type: [Boolean, Object] as PropType<false | TablePaginationConfig>,\n default: () => ({}),\n },\n direction: {\n type: String as PropType<'rtl'>,\n default: undefined,\n },\n stripe: {\n type: Boolean,\n default: false,\n },\n rowClassName: {\n type: [String, Function] as PropType<string | RowClassName<T>>,\n default: undefined,\n },\n sticky: {\n type: [Boolean, Object] as PropType<boolean | HeaderSticky>,\n default: true,\n },\n selectedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n expandFixed: {\n type: [Boolean, String] as PropType<FixedType>,\n default: undefined,\n },\n expandColumnWidth: {\n type: Number,\n default: undefined,\n },\n expandedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n defaultExpandedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n expandedRowRender: {\n type: Function as PropType<ExpandedRowRender<T>>,\n default: undefined,\n },\n expandRowByClick: {\n type: Boolean,\n default: undefined,\n },\n selectRowByClick: {\n type: Boolean,\n default: undefined,\n },\n expandIcon: {\n type: Function as PropType<RenderExpandIcon<T>>,\n default: undefined,\n },\n expandIconType: {\n type: String as PropType<ExpandIconType>,\n default: undefined,\n },\n onExpand: {\n type: Function as PropType<(expanded: boolean, record: T) => void>,\n default: undefined,\n },\n onExpandedRowsChange: {\n type: Function as PropType<(expandedKeys: Key[]) => void>,\n default: undefined,\n },\n defaultExpandAllRows: {\n type: Boolean,\n default: undefined,\n },\n indentSize: Number,\n expandIconColumnIndex: Number,\n childrenColumnName: {\n type: String,\n default: undefined,\n },\n rowExpandable: {\n type: Function as PropType<(record: T) => boolean>,\n default: () => true,\n },\n rowSelection: {\n type: Object as PropType<TableRowSelection<DefaultRecordType>>,\n default: undefined,\n },\n rowHoverDelay: {\n type: Number,\n default: 59,\n },\n rowHover: {\n type: Boolean,\n default: undefined,\n },\n rowKey: {\n type: [Function, String] as PropType<string | GetRowKey<T>>,\n default: undefined,\n },\n customRow: {\n type: Function as PropType<GetComponentProps<T>>,\n default: () => ({}),\n },\n customCell: {\n type: Function as PropType<\n (obj: { record: T; rowIndex: number; column: ColumnType<T> }) => Record<string, any>\n >,\n default: () => ({}),\n },\n customHeaderCell: {\n type: Function as PropType<(column: ColumnType<T>) => Record<string, any>>,\n default: () => ({}),\n },\n customSummaryCellProps: {\n type: Function as PropType<\n (obj: {\n record: T\n rowIndex: number\n column: ColumnType<T>\n columnIndex: number\n }) => Record<string, any>\n >,\n default: () => ({}),\n },\n editableKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n rowEditable: {\n type: Object as PropType<RowEditableConfig<T>>,\n default: undefined,\n },\n showHeader: {\n type: Boolean,\n default: true,\n },\n showSorterTooltip: {\n type: [Boolean, Object] as PropType<boolean | TooltipProps>,\n default: true,\n },\n getPopupContainer: {\n type: Function as PropType<GetPopupContainer>,\n },\n locale: {\n type: Object as PropType<TableLocale>,\n default: undefined,\n },\n scrollX: {\n type: [Number, String] as PropType<string | number>,\n },\n scroll: {\n type: Object as PropType<Scroll>,\n default: undefined,\n },\n autoHeight: {\n type: [Boolean, Function] as PropType<boolean | ((autoHeight: number) => number)>,\n default: false,\n },\n rangeSelection: {\n type: [String, Boolean] as PropType<boolean | 'single'>,\n default: false,\n },\n copyDelimiter: {\n type: String,\n default: '',\n },\n rowDrag: {\n type: [Boolean],\n },\n onChange: {\n type: Function as PropType<ChangeEvent<T>>,\n },\n summaryFixed: {\n type: [Boolean, String] as PropType<SummaryFixed>,\n default: undefined,\n },\n hasContextmenuPopup: Boolean,\n formatRangeCellText: {\n type: Function as PropType<(params: FormatRangeCellTextParams) => string>,\n },\n\n columnEmptyText: {\n type: [String, Boolean] as PropType<string | false>,\n default: undefined,\n },\n toolBar: { type: Boolean, default: undefined },\n options: { type: [Object, Boolean] as PropType<OptionConfig | false>, default: undefined },\n alwaysShowAlert: { type: Boolean, default: undefined },\n showAlert: { type: Boolean, default: undefined },\n // requst 相关配置\n request: Function as PropType<Request>,\n params: Object as PropType<Record<string, any>>,\n defaultData: Array as PropType<T[]>,\n manual: Boolean,\n manualRequest: Boolean,\n polling: [Number, Function] as PropType<number | ((dataSource: any[]) => number)>,\n debounceTime: Number,\n onLoad: {\n type: Function as PropType<(dataSource: T[], extra: any) => void>,\n default: undefined,\n },\n onLoadingChange: {\n type: Function as PropType<(loading: boolean | SpinProps | undefined) => void>,\n default: undefined,\n },\n onRequestError: {\n type: Function as PropType<(e: Error) => void>,\n default: undefined,\n },\n onSizeChange: {\n type: Function as PropType<(size: DensitySize) => void>,\n default: undefined,\n },\n onSubmit: {\n type: Function as PropType<ProQueryFilterProps['onFinish']>,\n default: undefined,\n },\n onReset: {\n type: Function as PropType<ProQueryFilterProps['onReset']>,\n default: undefined,\n },\n /** @name 列状态的配置,可以用来操作列功能 */\n columnsState: {\n type: Object as PropType<ColumnStateType>,\n default: undefined,\n },\n /** @name 是否要高亮选择行\t */\n highlightSelectRow: {\n type: Boolean,\n default: undefined,\n },\n editableCellState: {\n type: Function as PropType<EditableCellType<T>>,\n },\n\n paginationSticky: {\n type: [Boolean, Object] as PropType<boolean | BottomSticky>,\n default: true,\n },\n horizontalScrollSticky: {\n type: [Boolean, Object] as PropType<boolean | BottomSticky>,\n default: true,\n },\n 'onUpdate:selectedRowKeys': {\n type: Function as PropType<(selectedRowKeys: Key[], selectedRows: T[]) => void>,\n },\n onScroll: {\n type: Function as PropType<(e: UIEvent) => void>,\n },\n 'onUpdate:expandedRowKeys': {\n type: Function as PropType<(info: Key[]) => void>,\n },\n onResizeColumn: {\n type: Function as PropType<\n (w: number, col: ColumnType, action: ResizeActionType) => boolean | void\n >,\n default: undefined,\n },\n onRowDragEnd: {\n type: Function as PropType<(opt: DragRowEventInfo) => boolean | Promise<any> | void>,\n default: undefined,\n },\n onColumnDragEnd: {\n type: Function as PropType<(opt: DragColumnEventInfo) => boolean | Promise<any> | void>,\n default: undefined,\n },\n onCellKeydown: {\n type: Function as PropType<(e: KeyboardEvent, opt: KeydownPayload) => boolean | void>,\n default: undefined,\n },\n onCellClick: {\n type: Function as PropType<(e: MouseEvent, opt: CellRenderArgs) => void>,\n default: undefined,\n },\n onBeforeOpenEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => boolean | Promise<boolean> | void>,\n default: undefined,\n },\n onOpenEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => void>,\n default: undefined,\n },\n onBeforeCloseEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => boolean | Promise<boolean> | void>,\n default: undefined,\n },\n onCloseEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => void>,\n default: undefined,\n },\n onDataChange: {\n type: Function as PropType<(dataSource: T[]) => void>,\n },\n onRowValidate: {\n type: Function as PropType<(TablePromiseErrorData) => void>,\n },\n onValidate: {\n type: Function as PropType<(TablePromiseErrorData) => void>,\n },\n 'onUpdate:pagination': {\n type: Function as PropType<(info: TablePaginationConfig) => void>,\n },\n 'onUpdate:dataSource': {\n type: Function as PropType<(dataSource: T[]) => void>,\n },\n 'onUpdate:columns': {\n type: Function as PropType<(columns: ColumnsType<T>, action: 'resize' | 'drag') => void>,\n },\n 'onUpdate:showAlert': {\n type: Function as PropType<(show: boolean) => void>,\n },\n})\n\nexport const tableProps = <T = DefaultRecordType>() => ({\n ...baseTableProps<T>(),\n title: String,\n subTitle: String,\n footer: Function,\n tooltip: String,\n cardProps: {\n type: [Object, Boolean] as PropType<CardProps | false>,\n default: undefined,\n },\n search: {\n type: [Object, Boolean] as PropType<SearchConfig | false>,\n default: undefined,\n },\n beforeSearchSubmit: {\n type: Function as PropType<(params: Partial<T>) => any>,\n default: undefined,\n },\n cardBordered: {\n type: [Boolean, Object] as PropType<Bordered>,\n default: undefined,\n },\n})\nclass Helper<T extends DefaultRecordType> {\n Return = tableProps<T>()\n}\nexport type ProTableProps<T extends DefaultRecordType = DefaultRecordType> = Partial<\n ExtractPropTypes<Helper<T>['Return']>\n>\nexport interface TableLocale {\n filterTitle?: string\n filterConfirm?: any\n filterReset?: any\n filterEmptyText?: any\n emptyText?: any | (() => any)\n selectAll?: any\n selectNone?: any\n selectInvert?: any\n selectionAll?: any\n sortTitle?: string\n expand?: string\n collapse?: string\n triggerDesc?: string\n triggerAsc?: string\n cancelSort?: string\n}\nexport interface ColumnTitleProps<RecordType> {\n /** @deprecated Please use `sorterColumns` instead. */\n sortOrder?: SortOrder\n /** @deprecated Please use `sorterColumns` instead. */\n sortColumn?: ColumnType<RecordType>\n column: ColumnType<RecordType>\n sortColumns?: {\n column: ColumnType<RecordType>\n order: SortOrder\n }[]\n filters?: Record<string, string[]>\n}\nexport type ColumnTitle<RecordType = DefaultRecordType> =\n | string\n | number\n | object\n | ((props: ColumnTitleProps<RecordType>) => any)\ninterface ColumnSharedType {\n title?: ColumnTitle\n key?: Key\n className?: string\n class?: string\n fixed?: FixedType\n ellipsis?: CellEllipsisType\n align?: AlignType\n wrapText?: boolean\n dataIndex?: DataIndex\n}\nexport interface FilterConfirmProps {\n closeDropdown: boolean\n}\nexport type AlignType = 'left' | 'center' | 'right'\nexport interface ColumnFilterItem {\n text: string | number\n value: string | number | boolean\n children?: ColumnFilterItem[]\n}\nexport type SortOrder = 'desc' | 'asc' | null\nexport type CompareFn<T> = (a: T, b: T, sortOrder?: SortOrder) => number\nexport type FilterValue = (Key | boolean)[]\nexport type FilterKey = Key[] | null\nexport interface FilterDropdownProps {\n prefixCls: string\n confirm: (param?: FilterConfirmProps) => void\n clearFilters?: () => void\n filters?: ColumnFilterItem[]\n /** @deprecated Please use `open` instead */\n visible: boolean\n open: boolean\n}\nexport interface CellType {\n key?: Key\n class?: string\n style?: CSSProperties\n colSpan?: number\n rowSpan?: number\n}\nexport interface HeaderCellType {\n key?: Key\n class?: string\n style?: CSSProperties\n column?: FinallyColumnType\n colSpan?: number\n rowSpan?: number\n hasSubColumns?: boolean\n colStart?: number\n colEnd?: number\n}\nexport interface RenderedCell {\n props?: CellType\n children?: any\n}\nexport type CellRenderArgs = {\n record: any\n column: ColumnType<DefaultRecordType> | ColumnGroupType<DefaultRecordType>\n text: any\n value: any\n index: number\n oldValue?: any\n recordIndexs: number[]\n openEditor: () => void\n closeEditor: () => void\n}\nexport interface ContextmenuPopupArg<RecordT, ColumnT>\n extends Omit<Partial<CellRenderArgs>, 'column' | 'record'> {\n column?: ColumnT\n record?: RecordT\n event: MouseEvent\n isExpand?: boolean\n hidePopup: () => void\n}\nexport type MenuFilterProps = {\n prefixCls: string\n setSelectedKeys: (selectedKeys: Key[]) => void\n selectedKeysRef: Ref<Key[]>\n confirm: () => void\n clearFilters: () => void\n filters: ColumnFilterItem[]\n}\nexport interface MenuPopupArg<ColumnT> {\n column: ColumnT\n event: MouseEvent\n hidePopup: () => void\n filter: MenuFilterProps\n}\nexport interface CellTooltip {\n placement?:\n | 'top'\n | 'left'\n | 'right'\n | 'bottom'\n | 'topLeft'\n | 'topRight'\n | 'bottomLeft'\n | 'bottomRight'\n | 'leftTop'\n | 'leftBottom'\n | 'rightTop'\n | 'rightBottom'\n color?: string\n overlayStyle?: CSSProperties\n overlayClassName?: string\n openClassName?: string\n title?: (args: CellRenderArgs) => any\n align?: TooltipAlignConfig\n shouldOpen?: (isEllipsis: boolean, args: CellRenderArgs) => boolean\n allowEnter?: boolean\n}\n\nexport interface EditableCellConfig<T = DefaultRecordType> {\n /**\n * 触发编辑的事件\n */\n editableTrigger?: EditableTrigger | EditableTrigger[]\n /**\n * 组件定义,如:`Input` `Select`。对于完全自定义的组件(非组件库内的组件),组件需要支持 `value` 和 `onChange` ;如果还需要支持校验规则,则组件还需实现 `tips` 和 `status` 两个 API,实现规则可参考 `Input` 组件\n */\n component?: any\n /**\n * 单元格默认状态是否为编辑态\n * @default false\n */\n defaultEditable?: boolean\n /**\n * 设置当前列的单元格始终保持为编辑态\n * @default false\n */\n keepEditMode?: boolean\n\n /**\n * 行内错误提示\n * @default false\n */\n inlineError?: boolean\n /**\n * 是否可以编辑\n */\n editable?: (context: EditableValueParams<T>) => boolean\n valueParser?: ValueParserFunc<T>\n valueGetter?: ValueGetterFunc<T>\n valueSetter?: (params: EditableValueParams<T>) => boolean | Promise<any>\n /**\n * 透传给编辑组件的事件,参数有({ row, rowIndex, col, colIndex, editedRow, updateEditedCellValue })。可以使用参数 `updateEditedCellValue` 更新当前单元格(或当前行任意编辑状态单元格)的值。<br/>更新当前单元格数据示例:`updateEditedCellValue(value)`;<br/>更新当前行编辑态数据示例:`updateEditedCellValue({ isUpdateCurrentRow: true, column_key: 'test' })`;<br/>更新其他行编辑态数据示例:`updateEditedCellValue({ rowValue: '124', column_key: 'test' })`\n */\n on?: (context: EditableValueParams<T>) => { [eventName: string]: Function }\n /**\n * 编辑完成后,退出编辑模式时触发\n */\n onEdited?: (context: EditableValueParams<T>) => void\n /**\n * 透传给组件 `edit.component` 的属性,可以使用 `updateEditedCellValue` 更新当前行任意编辑状态单元格的值\n */\n props?: EditableCellProps<T>\n /**\n * 校验规则\n */\n rules?: EditableCellRules<T>\n /**\n * 是否显示编辑图标\n * @default true\n */\n request?: (params: Record<string, any>) => Promise<Record<string, any>[]>\n /** @name 依赖字段的name,暂时只在拥有 request 的项目中生效,会自动注入到 params 中 */\n dependencies?: DataIndex[]\n}\n\nexport interface ColumnType<RecordType = DefaultRecordType>\n extends ColumnSharedType,\n Omit<\n ProFormItemType,\n | 'key'\n | 'originKey'\n | 'tooltip'\n | 'hidden'\n | 'grid'\n | 'title'\n | 'spaceProps'\n | 'children'\n | 'width'\n | 'ignoreWidth'\n | 'name'\n | 'originName'\n | 'rowProps'\n | 'colProps'\n | 'valueEnum'\n > {\n search?: ProFormItemType\n colSpan?: number\n dataIndex?: DataIndex\n key?: Key\n rowSpan?: number\n width?: number\n minWidth?: number\n maxWidth?: number\n resizable?: boolean\n flex?: number\n autoHeight?: boolean\n tooltip?: true | CellTooltip\n headerTooltip?: string | true\n hidden?: boolean\n sorter?:\n | boolean\n | CompareFn<RecordType>\n | {\n compare?: CompareFn<RecordType>\n /** Config multiple sorter order priority */\n multiple?: number\n }\n showCellPopover?: boolean | PopoverProps\n sortOrder?: SortOrder\n defaultSortOrder?: SortOrder\n sortDirections?: SortOrder[]\n showSorterTooltip?: boolean | TooltipProps\n filtered?: boolean\n filters?: ColumnFilterItem[]\n filterIcon?: ({ filtered }: { filtered: boolean }) => any\n filterDropdown?: (props: FilterDropdownProps) => any\n filterMultiple?: boolean\n filteredValue?: FilterValue | null\n defaultFilteredValue?: FilterValue | null\n onFilter?: (value: string | number | boolean, record: RecordType) => boolean\n showFilter?: boolean\n showMenu?: boolean | 'hover'\n /** @deprecated Please use `filterDropdownOpen` instead */\n filterDropdownVisible?: boolean\n /** @deprecated Please use `onFilterDropdownOpenChange` instead */\n onFilterDropdownVisibleChange?: (open: boolean) => void\n filterDropdownOpen?: boolean\n onFilterDropdownOpenChange?: (open: boolean) => void\n customFilterDropdown?: boolean\n getPopupContainer?: GetPopupContainer\n customCell?: (obj: {\n record: any\n rowIndex: number\n column: ColumnType<RecordType>\n }) => Record<string, any>\n customHeaderCell?: (column: ColumnType<RecordType>) => Record<string, any>\n customRender?: (opt: {\n value: any\n text: any\n record: RecordType\n index: number\n column: ColumnType<RecordType>\n cancelEditable: (recordKey: Key) => boolean\n startEditable: (recordKey: Key, recordValue?: any) => boolean\n saveEditable: (recordKey: Key) => Promise<boolean>\n isEditable: (recordKey: Key) => boolean\n }) => any | RenderedCell\n /**\n * 可编辑单元格配置项,具体属性参考文档 `EditableCellConfig` 描述\n */\n edit?: EditableCellConfig<RecordType>\n\n valueParser?: ValueParserFunc<RecordType>\n valueGetter?: ValueGetterFunc<RecordType>\n valueSetter?: (params: ValueParserParams<RecordType>) => boolean | Promise<any>\n valueChange?: (e: Event, params: ValueParserParams<RecordType>) => void\n rowDrag?: boolean | ((arg: { record: RecordType; column: ColumnType<RecordType> }) => boolean)\n drag?: boolean\n /** @deprecated Please use `v-slot:customFilterIcon` `v-slot:bodyCell` `v-slot:headerCell` instead */\n slots?: {\n filterIcon?: string\n filterDropdown?: string\n customRender?: string\n title?: string\n }\n valueEnum?: ((row: RecordType) => Record<string, ValueEnumType>) | Record<string, ValueEnumType>\n valueStatus?:\n | ((value: any, row: RecordType, valueEnum?: ValueEnumType) => ValueStatus)\n | ValueStatus\n renderText?: (text: any, record: RecordType, rowIndex: number) => string | number\n /** @name 列设置的 disabled */\n disable?:\n | boolean\n | {\n checkbox: boolean\n }\n /** @name 在 table 中隐藏 */\n hideInTable?: boolean\n\n /** @name 在 search 中隐藏 */\n hideInSearch?: boolean\n\n /** @name 不在配置工具中显示 */\n hideInSetting?: boolean\n\n children?: ColumnType<RecordType>[]\n}\nexport interface ColumnGroupType<RecordType = DefaultRecordType> extends ColumnType<RecordType> {\n children?: ColumnsType<RecordType>\n}\nexport type ColumnsType<RecordType = DefaultRecordType> = (\n | ColumnGroupType<RecordType>\n | ColumnType<RecordType>\n)[]\nexport interface FinallyColumnType<RecordType = DefaultRecordType> extends ColumnType<RecordType> {\n finallyWidth?: number\n rowSpan?: number\n height?: number\n left?: number\n top?: number\n type?: 'checkbox' | 'expand' | 'rowIndex' | 'draggable'\n columnKey: Key\n columnIndex: number\n children?: FinallyColumnType<RecordType>[]\n originColumn?: ColumnsType[number]\n __Internal__Column__?: boolean\n showTitle: boolean\n fixed?: 'left' | 'right'\n}\ntype CellInfo = {\n columnKey: Key\n rowKey: Key\n}\nexport interface TableExposeType {\n scrollTo: (pos: string | Position, behavior: 'auto' | 'smooth') => void\n scrollLeft?: number\n scrollTop?: number\n bodyRef: HTMLDivElement\n rootRef: HTMLDivElement\n paginationRef: HTMLDivElement\n formAction: ProFormActionType\n getSelectedRange: () => SelectedRangeItem[]\n clearAllSelectedRange: () => void\n clearDataSource: () => void\n copySelectedRange: () => void\n appendCellToSelectedRange: (cell: AppendCellRange) => void\n openEditor: (cellInfos: CellInfo[]) => void\n closeEditor: (cellInfos?: CellInfo[]) => void\n reload: (resetPageIndex?: boolean) => Promise<void>\n reset: () => void\n calcTableHeight: () => Promise<void>\n formSearchSubmit: () => void\n getSearchParams: () => Record<string, any>\n validateRowData: (rowValue: any) => Promise<TablePromiseErrorData>\n validateTableData: () => Promise<TablePromiseErrorData>\n addEditRecord: (recordValue?: any, options?: AddLineOptions) => false | undefined\n startEditable: (recordKey: Key, recordValue?: any) => boolean\n cancelEditable: (recordKey: Key) => boolean\n saveEditable: (recordKey: Key) => Promise<boolean>\n cleanSelected: (keys?: Key[]) => void\n}\nexport interface DragRowsHandleInfo {\n y: number\n top: number\n height: number\n rowKey: Key\n centerY: number\n record: DefaultRecordType\n indexs: number[]\n}\nexport interface DragColumnHandleInfo {\n x: number\n left: number\n width: number\n columnKey: Key\n centerX: number\n indexs: number[]\n}\nexport interface DragRowEventInfo {\n top: number\n height: number\n dir: typeof DOWN | typeof UP\n rowKey: Key\n record: DefaultRecordType\n event: MouseEvent | Touch\n column: ColumnType\n preTargetInfo: DragRowsHandleInfo | null\n nextTargetInfo: DragRowsHandleInfo | null\n fromIndexs: number[]\n insertToRowKey: Key\n}\nexport interface RowDragGhostArg<RecordT, ColumnT> {\n record: RecordT\n column: ColumnT\n icon: VNode\n allowed: boolean\n dragging: boolean\n event: MouseEvent | Touch\n preTargetInfo: DragRowsHandleInfo | null\n nextTargetInfo: DragRowsHandleInfo | null\n}\nexport interface DragColumnEventInfo {\n event: MouseEvent | Touch\n column: ColumnType\n targetColumn: ColumnType\n dir: typeof LEFT | typeof RIGHT\n}\nexport interface ColumnDragGhostArg<ColumnT> {\n column: ColumnT\n icon: VNode\n allowed: boolean\n dragging: boolean\n event: MouseEvent | Touch\n targetColumn: ColumnT\n}\n\nexport type DensitySize = 'small' | 'middle' | 'large' | undefined\nexport type Request<T = DefaultRecordType, U = Record<string, any>> = (\n params: U & {\n pageSize?: number\n current?: number\n keyword?: string\n },\n sorters?: SorterResult<T>[],\n filter?: Record<string, (string | number)[] | null>,\n) => Promise<Partial<RequestData<T>>>\n\nexport type RequestData<T = DefaultRecordType> = {\n data: T[] | undefined\n success?: boolean\n total?: number\n} & Record<string, any>\n\nexport type OptionsFunctionType = (e: any, action?: UseFetchDataAction<any>) => void\nexport type OptionsType = OptionsFunctionType | boolean\n\nexport type SettingOptionType = {\n draggable?: boolean\n checkable?: boolean\n checkedReset?: boolean\n listsHeight?: number\n}\n\nexport type OptionSearchProps = Omit<InputProps, 'onSearch'> & {\n /** 如果 onSearch 返回一个false,直接拦截请求 */\n onSearch?: (keyword: string) => Promise<boolean | undefined> | boolean | undefined\n}\n\nexport type OptionConfig = {\n density?: boolean\n filter?: boolean\n fullScreen?: OptionsType\n reload?: OptionsType\n setting?: boolean | SettingOptionType\n search?: (OptionSearchProps & { name?: string }) | boolean\n}\n\nexport type ValueEnumType = {\n text: string | number\n label?: string | number\n status?: string\n color?: string\n disabled?: boolean\n value?: string | number | boolean\n children?: ValueEnumType[]\n}\n\nexport type ColumnsState = {\n show?: boolean\n fixed?: true | 'right' | 'left' | undefined\n order?: number\n width?: number\n disable?:\n | boolean\n | {\n checkbox: boolean\n }\n}\n\nexport type ColumnStateType = {\n /**\n * 持久化的类型,支持 localStorage 和 sessionStorage\n *\n * @param localStorage 设置在关闭浏览器后也是存在的\n * @param sessionStorage 关闭浏览器后会丢失\n */\n persistenceType?: 'localStorage' | 'sessionStorage'\n /** 持久化的key,用于存储到 storage 中 */\n persistenceKey?: string\n /** ColumnsState 的值 */\n defaultValue?: Record<string, ColumnsState>\n /** ColumnsState 的值 */\n value?: Record<string, ColumnsState>\n onChange?: (map: Record<string, ColumnsState>) => void\n}\n\nexport type SearchConfig = ProQueryFilterProps & {\n cardProps?: CardProps | false\n tabName?: string\n style?: CSSProperties\n}\n\nexport type BorderedType = 'search' | 'table'\n\nexport type Bordered =\n | boolean\n | {\n search?: boolean\n table?: boolean\n }\n\nexport interface IsDateOptions {\n format: string\n strictMode: boolean\n delimiters: string[]\n}\n\nexport type CustomValidator = (\n val: any,\n) => CustomValidateResolveType | Promise<CustomValidateResolveType>\n\nexport type CustomValidateResolveType = boolean | CustomValidateObj\n\nexport interface CustomValidateObj {\n result: boolean\n message: string\n type?: 'error' | 'warning' | 'success'\n}\n\nexport type AddLineOptions = {\n position?: 'top' | 'bottom'\n newRecordType?: 'dataSource' | 'cache'\n}\n\nexport type TableEditingCell<RecordType = DefaultRecordType> = {\n recordIndexs: number[]\n column: ColumnType<RecordType>\n rowKey: Key\n originRecord: RecordType\n rowIndex: number\n columnKey: Key\n validateEdit: () => Promise<true | AllValidateResult[]>\n}\nexport type AllValidateResult = CustomValidateObj | ValidateResultType\n\nexport type TableErrorListMap = { [key: string]: AllValidateResult[] }\nexport type ErrorListObjectType = TableEditingCell & { errorList: AllValidateResult[] }\n\nexport interface TablePromiseErrorData {\n errors: ErrorListObjectType[]\n errorMap: TableErrorListMap\n data?: DefaultRecordType[]\n}\nexport interface ValidateResultType extends EditRule {\n result: boolean\n}\nexport interface EditRule {\n /**\n * 内置校验方法,校验值类型是否为布尔类型,示例:`{ boolean: true, message: '数据类型必须是布尔类型' }`\n */\n boolean?: boolean\n /**\n * 内置校验方法,校验值是否属于枚举值中的值。示例:`{ enum: ['primary', 'info', 'warning'], message: '值只能是 primary/info/warning 中的一种' }`\n */\n enum?: Array<string>\n /**\n * 内置校验方法,校验值是否为身份证号码,组件校验正则为 `/^(\\\\d{18,18}|\\\\d{15,15}|\\\\d{17,17}x)$/i`,示例:`{ idcard: true, message: '请输入正确的身份证号码' }`\n */\n idcard?: boolean\n /**\n * 内置校验方法,校验值固定长度,如:len: 10 表示值的字符长度只能等于 10 ,中文表示 2 个字符,英文为 1 个字符。示例:`{ len: 10, message: '内容长度不对' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length === 10, message: '内容文本长度只能是 10 个字' }`\n */\n len?: number | boolean\n /**\n * 内置校验方法,校验值最大长度,如:max: 100 表示值最多不能超过 100 个字符,中文表示 2 个字符,英文为 1 个字符。示例:`{ max: 10, message: '内容超出' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length <= 10, message: '内容文本长度不能超过 10 个字' }`<br />如果数据类型数字(Number),则自动变为数字大小的比对\n */\n max?: number | boolean\n /**\n * 校验未通过时呈现的错误信息,值为空则不显示\n * @default ''\n */\n message?: string\n /**\n * 内置校验方法,校验值最小长度,如:min: 10 表示值最多不能少于 10 个字符,中文表示 2 个字符,英文为 1 个字符。示例:`{ min: 10, message: '内容长度不够' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length >= 10, message: '内容文本长度至少为 10 个字' }`。<br />如果数据类型数字(Number),则自动变为数字大小的比对\n */\n min?: number | boolean\n /**\n * 内置校验方法,校验值是否为数字(1.2 、 1e5 都算数字),示例:`{ number: true, message: '请输入数字' }`\n */\n number?: boolean\n /**\n * 内置校验方法,校验值是否符合正则表达式匹配结果,示例:`{ pattern: /@qq.com/, message: '请输入 QQ 邮箱' }`\n */\n pattern?: RegExp\n /**\n * 内置校验方法,校验值是否已经填写。该值为 true,默认显示必填标记,可通过设置 `requiredMark: false` 隐藏必填标记\n */\n required?: boolean\n /**\n * 内置校验方法,校验值是否为手机号码,校验正则为 `/^1[3-9]\\d{9}$/`,示例:`{ telnumber: true, message: '请输入正确的手机号码' }`\n */\n telnumber?: boolean\n /**\n * 校验未通过时呈现的错误信息类型,有 告警信息提示 和 错误信息提示 等两种\n * @default error\n */\n type?: 'error' | 'warning'\n /**\n * 自定义校验规则,示例:`{ validator: (val) => val.length > 0, message: '请输入内容'}`\n */\n validator?: CustomValidator\n /**\n * 内置校验方法,校验值是否为空格。示例:`{ whitespace: true, message: '值不能为空' }`\n */\n whitespace?: boolean\n}\n"],"names":[],"mappings":"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"}
|
package/es/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "1.3.
|
|
1
|
+
export declare const version = "1.3.28";
|
package/es/version.mjs
CHANGED
package/es/version.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.mjs","sources":["../../../packages/pro-design-vue/version.ts"],"sourcesContent":["export const version = '1.3.
|
|
1
|
+
{"version":3,"file":"version.mjs","sources":["../../../packages/pro-design-vue/version.ts"],"sourcesContent":["export const version = '1.3.28'\n"],"names":[],"mappings":"AAAO,MAAM,OAAA,GAAU;;;;"}
|
|
@@ -329,7 +329,7 @@ export type ProFormItemType<T = Entity, FieldType = 'text'> = {
|
|
|
329
329
|
order?: number;
|
|
330
330
|
placeholder?: string | string[];
|
|
331
331
|
fieldType?: FieldType | `${ProFieldType}`;
|
|
332
|
-
fieldProps?: ((formData: T, rowData?: Entity) => Record<string, any>) | Record<string, any>;
|
|
332
|
+
fieldProps?: ((formData: T, action: ProFormActionType, rowData?: Entity) => Record<string, any>) | Record<string, any>;
|
|
333
333
|
spaceProps?: SpaceProps;
|
|
334
334
|
/** @name 从服务器请求枚举 */
|
|
335
335
|
request?: FieldRequestData;
|
|
@@ -1945,6 +1945,7 @@ export interface TableExposeType {
|
|
|
1945
1945
|
startEditable: (recordKey: Key, recordValue?: any) => boolean;
|
|
1946
1946
|
cancelEditable: (recordKey: Key) => boolean;
|
|
1947
1947
|
saveEditable: (recordKey: Key) => Promise<boolean>;
|
|
1948
|
+
cleanSelected: (keys?: Key[]) => void;
|
|
1948
1949
|
}
|
|
1949
1950
|
export interface DragRowsHandleInfo {
|
|
1950
1951
|
y: number;
|
package/lib/index.d.ts
CHANGED
|
@@ -6978,7 +6978,7 @@ export declare type ProFormItemType<T = Entity, FieldType = "text"> = {
|
|
|
6978
6978
|
order?: number;
|
|
6979
6979
|
placeholder?: string | string[];
|
|
6980
6980
|
fieldType?: FieldType | `${ProFieldType}`;
|
|
6981
|
-
fieldProps?: ((formData: T, rowData?: Entity) => Record<string, any>) | Record<string, any>;
|
|
6981
|
+
fieldProps?: ((formData: T, action: ProFormActionType, rowData?: Entity) => Record<string, any>) | Record<string, any>;
|
|
6982
6982
|
spaceProps?: SpaceProps;
|
|
6983
6983
|
/** @name 从服务器请求枚举 */
|
|
6984
6984
|
request?: FieldRequestData;
|
|
@@ -7301,6 +7301,7 @@ export declare interface ProTableExposeType {
|
|
|
7301
7301
|
startEditable: (recordKey: ProTableKey, recordValue?: any) => boolean;
|
|
7302
7302
|
cancelEditable: (recordKey: ProTableKey) => boolean;
|
|
7303
7303
|
saveEditable: (recordKey: ProTableKey) => Promise<boolean>;
|
|
7304
|
+
cleanSelected: (keys?: ProTableKey[]) => void;
|
|
7304
7305
|
}
|
|
7305
7306
|
export declare type ProTableInstance = InstanceType<typeof _default_17> & ProTableExposeType;
|
|
7306
7307
|
export declare type ProTableKey = string | number;
|
|
@@ -128,7 +128,7 @@ var FormItem = /* @__PURE__ */ vue.defineComponent({
|
|
|
128
128
|
};
|
|
129
129
|
const fieldProps = vue.computed(() => {
|
|
130
130
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
|
|
131
|
-
const baseProps = runFunction.runFunction((_a = props.item.fieldProps) != null ? _a : {}, formData.value, rowData == null ? void 0 : rowData.value);
|
|
131
|
+
const baseProps = runFunction.runFunction((_a = props.item.fieldProps) != null ? _a : {}, formData.value, action, rowData == null ? void 0 : rowData.value);
|
|
132
132
|
const mergeProps = {
|
|
133
133
|
...baseProps,
|
|
134
134
|
id: (_c = baseProps == null ? void 0 : baseProps.id) != null ? _c : `form-${(_b = formKey.value) != null ? _b : ""}-${props.item.key}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormItem.js","sources":["../../../../../../../../packages/components/form/src/components/FormItem.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 16:56:49\n * @LastEditors: shen\n * @LastEditTime: 2025-11-25 14:46:07\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { defineComponent, computed, watch, ref } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useInjectForm } from '../context/FormContext'\nimport { useFieldValue } from '../hooks/useFieldValue'\nimport { useInjectFormList } from '../context/FormListContext'\nimport { fieldComponentMap } from '../fieldMap'\nimport {\n get,\n isEqual,\n isNumber,\n merge,\n omitUndefined,\n pickKeys,\n RenderVNode,\n runFunction,\n set,\n} from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nimport FormColWrapper from './FormColWrapper'\nimport FormTitle from './FormTitle'\nimport covertFormName from '../utils/namePath'\nimport fieldPropsMap from '../utils/fieldPropsMap'\nimport fieldWidthSizeMap from '../utils/fieldWidthSizeMap'\n\nconst ALL_ANTD_PROP_KEYS = [\n 'autoLink',\n 'colon',\n 'hasFeedback',\n 'labelAlign',\n 'labelCol',\n 'htmlFor',\n 'required',\n 'validateFirst',\n 'validateStatus',\n 'validateTrigger',\n 'wrapperCol',\n 'rules',\n 'style',\n 'class',\n]\n\nconst IGNORE_WIDTH_VALUE_TYPE = ['switch', 'radioButton', 'radio', 'rate']\nconst SLOT_NAMES = ['extra', 'help']\n\nexport default defineComponent({\n name: 'FormItem',\n inheritAttrs: false,\n props: {\n item: {\n type: Object as PropType<ProFormItemType>,\n default: () => ({}),\n },\n grid: {\n type: Boolean,\n default: undefined,\n },\n },\n setup(props) {\n const {\n grid,\n action,\n formKey,\n prefixCls,\n formData,\n readonly,\n readonlyProps,\n disabledKeys,\n hiddenKeys,\n allDisabledKeys,\n labelCol,\n wrapperCol,\n onPressEnter,\n updateHiddenKeys,\n updateDisabledKeys,\n } = useInjectForm()\n const { isList, listKey, listName, rowData } = useInjectFormList()\n const formSlotsContext = useInjectSlots()\n const { fieldValue, onValueChange } = useFieldValue<any>({\n isList,\n namePath: computed(() => props.item.name!),\n initialValue: props.item.initialValue,\n convertValue: props.item.convertValue,\n transform: props.item.transform,\n })\n const fieldRef = ref()\n const mergeGrid = computed(() => props.grid ?? grid?.value)\n const fieldType = computed(() => props.item.fieldType ?? 'text')\n const mergeReadonly = computed(() =>\n runFunction(props.item.readonly ?? readonly?.value, formData.value, rowData?.value),\n )\n const mergeReadonlyProps = computed(() =>\n merge({}, readonlyProps?.value, props.item.readonlyProps),\n )\n const linkageDisabledKeys = computed(() => disabledKeys.value.map((key) => key.split(':')[1]))\n const linkageHiddenKeys = computed(() => hiddenKeys.value.map((key) => key.split(':')[1]))\n const isIgnoreWidth = computed(\n () => props.item.ignoreWidth ?? IGNORE_WIDTH_VALUE_TYPE.includes(fieldType.value),\n )\n const formItemProps = computed(\n () => runFunction(props.item.formItemProps, formData.value, rowData?.value) ?? {},\n )\n const restItemProps = computed(() =>\n omitUndefined({\n ...pickKeys(formItemProps.value, ALL_ANTD_PROP_KEYS),\n labelCol: formItemProps.value?.labelCol ?? labelCol?.value,\n wrapperCol: formItemProps.value?.wrapperCol ?? wrapperCol?.value,\n name: mergeReadonly.value ? undefined : props.item.name,\n htmlFor: mergeReadonly.value\n ? undefined\n : (formItemProps.value?.htmlFor ?? `form-${formKey.value ?? ''}-${props.item.key}`),\n rules: mergeReadonly.value\n ? undefined\n : runFunction(\n props.item.rules ?? formItemProps.value.rules,\n formData.value,\n action,\n rowData?.value,\n ),\n }),\n )\n\n const clearOnChange = (newValue: any) => {\n const { clear } = props.item.linkage ?? {}\n if (clear) {\n const clearNamePaths = runFunction(clear, newValue, formData.value, rowData?.value) ?? []\n if (clearNamePaths.length > 0) {\n clearNamePaths.forEach((namePath) => {\n const path = isList\n ? [...(listName?.value ?? [])!, ...covertFormName(namePath)!]\n .filter((item) => item !== undefined)\n .flat(1)\n : covertFormName(namePath)\n const value = get(formData.value, path!)\n if (typeof value !== 'undefined') {\n set(formData.value, path!, undefined)\n }\n })\n }\n }\n }\n\n const fieldProps = computed(() => {\n const baseProps = runFunction(props.item.fieldProps ?? {}, formData.value, rowData?.value)\n const mergeProps = {\n ...baseProps,\n id: baseProps?.id ?? `form-${formKey.value ?? ''}-${props.item.key}`,\n disabled:\n (runFunction(\n props.item.disabled ?? baseProps?.disabled,\n formData.value,\n rowData?.value,\n ) ?? allDisabledKeys.value.includes(props.item.key as string))\n ? true\n : undefined,\n placeholder: props.item.placeholder ?? baseProps?.placeholder,\n options: props.item.options ?? baseProps?.options ?? baseProps?.treeData,\n allowClear: props.item.allowClear ?? baseProps?.allowClear ?? true,\n }\n\n return omitUndefined({\n valueEnum: props.item.valueEnum,\n dependencies: props.item.dependencies,\n readonly: mergeReadonly.value,\n readonlyProps: mergeReadonlyProps.value,\n request: props.item.request,\n params: props.item.params,\n onChange: (value: any, ...args) => {\n clearOnChange(value)\n onValueChange(value)\n props.item.onChange?.(value, ...args, action)\n },\n ...(fieldPropsMap[fieldType.value]\n ? pickKeys(mergeProps, fieldPropsMap[fieldType.value]!)\n : mergeProps),\n })\n })\n\n const fieldStyle = computed(() => {\n const baseProps = runFunction(props.item.fieldProps ?? {}, formData.value, rowData?.value)\n const newStyle = {\n ...baseProps?.style,\n }\n\n if (props.item.width && !fieldWidthSizeMap[props.item.width]) {\n newStyle.width = isNumber(props.item.width) ? props.item.width + 'px' : props.item.width\n } else if (mergeGrid?.value) {\n newStyle.maxWidth = '100%'\n newStyle.width = '100%'\n }\n\n if (isIgnoreWidth.value) Reflect.deleteProperty(newStyle, 'width')\n\n return omitUndefined(newStyle)\n })\n\n const fieldClassName = computed(() => {\n const isSizeEnum = props.item.width && fieldWidthSizeMap[props.item.width]\n const className = {\n [`${prefixCls}-field`]: !!isSizeEnum,\n [`${prefixCls}-field-${props.item.width}`]: isSizeEnum && !isIgnoreWidth.value,\n }\n if (props.item.className) {\n className[props.item.className] = true\n }\n return className\n })\n\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(formItemProps.value[name], formSlotsContext)\n if (slot) {\n temp[name] = () => (\n <RenderVNode\n vnode={slot}\n props={{ formData: formData.value, rowData: rowData?.value }}\n />\n )\n }\n })\n if (props.item.title) {\n const extraRender = getSlot(props.item.extra?.label, formSlotsContext)\n temp['label'] = () => (\n <>\n <div class={`${prefixCls}-item-title`} style={formItemProps.value.titleStyles}>\n <FormTitle\n title={props.item.title}\n tooltip={props.item.tooltip}\n readonly={mergeReadonly.value}\n />\n </div>\n <div class={`${prefixCls}-item-title-extra`}>\n <RenderVNode\n vnode={extraRender}\n props={{ formData: formData.value, rowData: rowData?.value }}\n />\n </div>\n </>\n )\n }\n return temp\n })\n\n watch(\n fieldValue,\n (newValue) => {\n const { linkage } = props.item\n if (linkage) {\n const { hidden, disabled } = linkage\n if (hidden) {\n const hiddenKeys = runFunction(hidden, newValue, formData.value, rowData?.value) ?? []\n if (!isEqual(hiddenKeys, linkageHiddenKeys.value)) {\n updateHiddenKeys(\n props.item.key as string,\n isList ? hiddenKeys.map((key) => `${listKey}_${key}`) : hiddenKeys,\n )\n }\n }\n\n if (disabled) {\n const disabledKeys =\n runFunction(disabled, newValue, formData.value, rowData?.value) ?? []\n if (!isEqual(disabledKeys, linkageDisabledKeys.value)) {\n updateDisabledKeys(\n props.item.key as string,\n isList ? disabledKeys.map((key) => `${listKey}_${key}`) : disabledKeys,\n )\n }\n }\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(fieldRef, () => {\n props.item.onInit?.(fieldRef.value)\n })\n\n watch(mergeReadonly, () => {\n if (mergeReadonly.value) {\n action.clearValidate(props.item.name)\n }\n })\n\n watch(\n () => restItemProps.value?.rules,\n () => {\n action.clearValidate(props.item.name)\n },\n )\n\n return () => {\n const renderFormItem = getSlot(props.item.renderFormItem, formSlotsContext)\n const extraRender = getSlot(props.item.extra?.item, formSlotsContext)\n const FieldComponent = fieldComponentMap[fieldType.value] ?? fieldComponentMap['text']\n let defaultDom = (\n <FieldComponent\n ref={fieldRef}\n value={fieldValue.value}\n {...fieldProps.value}\n style={fieldStyle.value}\n class={fieldClassName.value}\n onPressEnter={onPressEnter}\n />\n )\n if (renderFormItem) {\n defaultDom = (\n <RenderVNode\n vnode={renderFormItem}\n props={{\n value: fieldValue.value,\n onChange: fieldProps.value.onChange,\n defaultDom,\n formData: formData.value,\n rowData: rowData?.value,\n action,\n listName: listName?.value,\n name: props.item.name,\n }}\n />\n )\n }\n\n if (extraRender) {\n defaultDom = (\n <div style=\"display: flex; flex-direction: row; justify-content: flex-start; align-items: center;\">\n {defaultDom}\n <div style=\"margin-inline-start: 5px; flex-shrink: 0;\">\n <RenderVNode\n vnode={extraRender}\n props={{\n formData: formData.value,\n listName: listName?.value,\n name: props.item.name,\n rowData: rowData?.value,\n }}\n />\n </div>\n </div>\n )\n }\n\n const formItemDom = (\n <Form.Item {...restItemProps.value} v-slots={slotsGetter.value}>\n {defaultDom}\n </Form.Item>\n )\n\n const render = getSlot(props.item.render, formSlotsContext)\n return (\n <FormColWrapper colProps={props.item.colProps} grid={mergeGrid.value}>\n {render ? (\n <RenderVNode\n vnode={render}\n props={{\n formData: formData.value,\n defaultDom: formItemDom,\n rowData: rowData?.value,\n }}\n />\n ) : (\n formItemDom\n )}\n </FormColWrapper>\n )\n }\n },\n})\n"],"names":["ALL_ANTD_PROP_KEYS","IGNORE_WIDTH_VALUE_TYPE","SLOT_NAMES","name","inheritAttrs","props","item","type","Object","default","grid","Boolean","undefined","setup","action","formKey","prefixCls","formData","readonly","readonlyProps","disabledKeys","hiddenKeys","allDisabledKeys","labelCol","wrapperCol","onPressEnter","updateHiddenKeys","updateDisabledKeys","useInjectForm","isList","listKey","listName","rowData","useInjectFormList","formSlotsContext","useInjectSlots","fieldValue","onValueChange","useFieldValue","namePath","computed","initialValue","convertValue","transform","fieldRef","ref","mergeGrid","value","fieldType","mergeReadonly","runFunction","mergeReadonlyProps","merge","linkageDisabledKeys","map","key","split","linkageHiddenKeys","isIgnoreWidth","ignoreWidth","includes","formItemProps","restItemProps","omitUndefined","pickKeys","htmlFor","rules","clearOnChange","newValue","clear","linkage","clearNamePaths","length","forEach","_a","path","covertFormName","filter","flat","get","set","fieldProps","baseProps","mergeProps","id","disabled","placeholder","options","treeData","allowClear","valueEnum","dependencies","request","params","onChange","args","_b","fieldPropsMap","fieldStyle","newStyle","style","width","fieldWidthSizeMap","isNumber","maxWidth","Reflect","deleteProperty","fieldClassName","isSizeEnum","className","slotsGetter","temp","slot","getSlot","_createVNode","RenderVNode","title","extraRender","extra","label","_Fragment","titleStyles","FormTitle","tooltip","watch","hidden","isEqual","immediate","onInit","clearValidate","renderFormItem","FieldComponent","fieldComponentMap","defaultDom","_mergeProps","formItemDom","Form","Item","render","FormColWrapper","colProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FormItem.js","sources":["../../../../../../../../packages/components/form/src/components/FormItem.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-08-09 16:56:49\n * @LastEditors: shen\n * @LastEditTime: 2025-12-09 14:15:51\n * @Description:\n */\nimport type { PropType } from 'vue'\nimport type { ProFormItemType } from '../type'\n\nimport { defineComponent, computed, watch, ref } from 'vue'\nimport { Form } from 'ant-design-vue'\nimport { useInjectSlots } from '../context/FormSlotsContext'\nimport { useInjectForm } from '../context/FormContext'\nimport { useFieldValue } from '../hooks/useFieldValue'\nimport { useInjectFormList } from '../context/FormListContext'\nimport { fieldComponentMap } from '../fieldMap'\nimport {\n get,\n isEqual,\n isNumber,\n merge,\n omitUndefined,\n pickKeys,\n RenderVNode,\n runFunction,\n set,\n} from '@pro-design-vue/utils'\nimport getSlot from '../utils/getSlot'\nimport FormColWrapper from './FormColWrapper'\nimport FormTitle from './FormTitle'\nimport covertFormName from '../utils/namePath'\nimport fieldPropsMap from '../utils/fieldPropsMap'\nimport fieldWidthSizeMap from '../utils/fieldWidthSizeMap'\n\nconst ALL_ANTD_PROP_KEYS = [\n 'autoLink',\n 'colon',\n 'hasFeedback',\n 'labelAlign',\n 'labelCol',\n 'htmlFor',\n 'required',\n 'validateFirst',\n 'validateStatus',\n 'validateTrigger',\n 'wrapperCol',\n 'rules',\n 'style',\n 'class',\n]\n\nconst IGNORE_WIDTH_VALUE_TYPE = ['switch', 'radioButton', 'radio', 'rate']\nconst SLOT_NAMES = ['extra', 'help']\n\nexport default defineComponent({\n name: 'FormItem',\n inheritAttrs: false,\n props: {\n item: {\n type: Object as PropType<ProFormItemType>,\n default: () => ({}),\n },\n grid: {\n type: Boolean,\n default: undefined,\n },\n },\n setup(props) {\n const {\n grid,\n action,\n formKey,\n prefixCls,\n formData,\n readonly,\n readonlyProps,\n disabledKeys,\n hiddenKeys,\n allDisabledKeys,\n labelCol,\n wrapperCol,\n onPressEnter,\n updateHiddenKeys,\n updateDisabledKeys,\n } = useInjectForm()\n const { isList, listKey, listName, rowData } = useInjectFormList()\n const formSlotsContext = useInjectSlots()\n const { fieldValue, onValueChange } = useFieldValue<any>({\n isList,\n namePath: computed(() => props.item.name!),\n initialValue: props.item.initialValue,\n convertValue: props.item.convertValue,\n transform: props.item.transform,\n })\n const fieldRef = ref()\n const mergeGrid = computed(() => props.grid ?? grid?.value)\n const fieldType = computed(() => props.item.fieldType ?? 'text')\n const mergeReadonly = computed(() =>\n runFunction(props.item.readonly ?? readonly?.value, formData.value, rowData?.value),\n )\n const mergeReadonlyProps = computed(() =>\n merge({}, readonlyProps?.value, props.item.readonlyProps),\n )\n const linkageDisabledKeys = computed(() => disabledKeys.value.map((key) => key.split(':')[1]))\n const linkageHiddenKeys = computed(() => hiddenKeys.value.map((key) => key.split(':')[1]))\n const isIgnoreWidth = computed(\n () => props.item.ignoreWidth ?? IGNORE_WIDTH_VALUE_TYPE.includes(fieldType.value),\n )\n const formItemProps = computed(\n () => runFunction(props.item.formItemProps, formData.value, rowData?.value) ?? {},\n )\n const restItemProps = computed(() =>\n omitUndefined({\n ...pickKeys(formItemProps.value, ALL_ANTD_PROP_KEYS),\n labelCol: formItemProps.value?.labelCol ?? labelCol?.value,\n wrapperCol: formItemProps.value?.wrapperCol ?? wrapperCol?.value,\n name: mergeReadonly.value ? undefined : props.item.name,\n htmlFor: mergeReadonly.value\n ? undefined\n : (formItemProps.value?.htmlFor ?? `form-${formKey.value ?? ''}-${props.item.key}`),\n rules: mergeReadonly.value\n ? undefined\n : runFunction(\n props.item.rules ?? formItemProps.value.rules,\n formData.value,\n action,\n rowData?.value,\n ),\n }),\n )\n\n const clearOnChange = (newValue: any) => {\n const { clear } = props.item.linkage ?? {}\n if (clear) {\n const clearNamePaths = runFunction(clear, newValue, formData.value, rowData?.value) ?? []\n if (clearNamePaths.length > 0) {\n clearNamePaths.forEach((namePath) => {\n const path = isList\n ? [...(listName?.value ?? [])!, ...covertFormName(namePath)!]\n .filter((item) => item !== undefined)\n .flat(1)\n : covertFormName(namePath)\n const value = get(formData.value, path!)\n if (typeof value !== 'undefined') {\n set(formData.value, path!, undefined)\n }\n })\n }\n }\n }\n\n const fieldProps = computed(() => {\n const baseProps = runFunction(\n props.item.fieldProps ?? {},\n formData.value,\n action,\n rowData?.value,\n )\n const mergeProps = {\n ...baseProps,\n id: baseProps?.id ?? `form-${formKey.value ?? ''}-${props.item.key}`,\n disabled:\n (runFunction(\n props.item.disabled ?? baseProps?.disabled,\n formData.value,\n rowData?.value,\n ) ?? allDisabledKeys.value.includes(props.item.key as string))\n ? true\n : undefined,\n placeholder: props.item.placeholder ?? baseProps?.placeholder,\n options: props.item.options ?? baseProps?.options ?? baseProps?.treeData,\n allowClear: props.item.allowClear ?? baseProps?.allowClear ?? true,\n }\n\n return omitUndefined({\n valueEnum: props.item.valueEnum,\n dependencies: props.item.dependencies,\n readonly: mergeReadonly.value,\n readonlyProps: mergeReadonlyProps.value,\n request: props.item.request,\n params: props.item.params,\n onChange: (value: any, ...args) => {\n clearOnChange(value)\n onValueChange(value)\n props.item.onChange?.(value, ...args, action)\n },\n ...(fieldPropsMap[fieldType.value]\n ? pickKeys(mergeProps, fieldPropsMap[fieldType.value]!)\n : mergeProps),\n })\n })\n\n const fieldStyle = computed(() => {\n const baseProps = runFunction(props.item.fieldProps ?? {}, formData.value, rowData?.value)\n const newStyle = {\n ...baseProps?.style,\n }\n\n if (props.item.width && !fieldWidthSizeMap[props.item.width]) {\n newStyle.width = isNumber(props.item.width) ? props.item.width + 'px' : props.item.width\n } else if (mergeGrid?.value) {\n newStyle.maxWidth = '100%'\n newStyle.width = '100%'\n }\n\n if (isIgnoreWidth.value) Reflect.deleteProperty(newStyle, 'width')\n\n return omitUndefined(newStyle)\n })\n\n const fieldClassName = computed(() => {\n const isSizeEnum = props.item.width && fieldWidthSizeMap[props.item.width]\n const className = {\n [`${prefixCls}-field`]: !!isSizeEnum,\n [`${prefixCls}-field-${props.item.width}`]: isSizeEnum && !isIgnoreWidth.value,\n }\n if (props.item.className) {\n className[props.item.className] = true\n }\n return className\n })\n\n const slotsGetter = computed(() => {\n const temp = {}\n SLOT_NAMES.forEach((name) => {\n const slot = getSlot(formItemProps.value[name], formSlotsContext)\n if (slot) {\n temp[name] = () => (\n <RenderVNode\n vnode={slot}\n props={{ formData: formData.value, rowData: rowData?.value }}\n />\n )\n }\n })\n if (props.item.title) {\n const extraRender = getSlot(props.item.extra?.label, formSlotsContext)\n temp['label'] = () => (\n <>\n <div class={`${prefixCls}-item-title`} style={formItemProps.value.titleStyles}>\n <FormTitle\n title={props.item.title}\n tooltip={props.item.tooltip}\n readonly={mergeReadonly.value}\n />\n </div>\n <div class={`${prefixCls}-item-title-extra`}>\n <RenderVNode\n vnode={extraRender}\n props={{ formData: formData.value, rowData: rowData?.value }}\n />\n </div>\n </>\n )\n }\n return temp\n })\n\n watch(\n fieldValue,\n (newValue) => {\n const { linkage } = props.item\n if (linkage) {\n const { hidden, disabled } = linkage\n if (hidden) {\n const hiddenKeys = runFunction(hidden, newValue, formData.value, rowData?.value) ?? []\n if (!isEqual(hiddenKeys, linkageHiddenKeys.value)) {\n updateHiddenKeys(\n props.item.key as string,\n isList ? hiddenKeys.map((key) => `${listKey}_${key}`) : hiddenKeys,\n )\n }\n }\n\n if (disabled) {\n const disabledKeys =\n runFunction(disabled, newValue, formData.value, rowData?.value) ?? []\n if (!isEqual(disabledKeys, linkageDisabledKeys.value)) {\n updateDisabledKeys(\n props.item.key as string,\n isList ? disabledKeys.map((key) => `${listKey}_${key}`) : disabledKeys,\n )\n }\n }\n }\n },\n {\n immediate: true,\n },\n )\n\n watch(fieldRef, () => {\n props.item.onInit?.(fieldRef.value)\n })\n\n watch(mergeReadonly, () => {\n if (mergeReadonly.value) {\n action.clearValidate(props.item.name)\n }\n })\n\n watch(\n () => restItemProps.value?.rules,\n () => {\n action.clearValidate(props.item.name)\n },\n )\n\n return () => {\n const renderFormItem = getSlot(props.item.renderFormItem, formSlotsContext)\n const extraRender = getSlot(props.item.extra?.item, formSlotsContext)\n const FieldComponent = fieldComponentMap[fieldType.value] ?? fieldComponentMap['text']\n let defaultDom = (\n <FieldComponent\n ref={fieldRef}\n value={fieldValue.value}\n {...fieldProps.value}\n style={fieldStyle.value}\n class={fieldClassName.value}\n onPressEnter={onPressEnter}\n />\n )\n if (renderFormItem) {\n defaultDom = (\n <RenderVNode\n vnode={renderFormItem}\n props={{\n value: fieldValue.value,\n onChange: fieldProps.value.onChange,\n defaultDom,\n formData: formData.value,\n rowData: rowData?.value,\n action,\n listName: listName?.value,\n name: props.item.name,\n }}\n />\n )\n }\n\n if (extraRender) {\n defaultDom = (\n <div style=\"display: flex; flex-direction: row; justify-content: flex-start; align-items: center;\">\n {defaultDom}\n <div style=\"margin-inline-start: 5px; flex-shrink: 0;\">\n <RenderVNode\n vnode={extraRender}\n props={{\n formData: formData.value,\n listName: listName?.value,\n name: props.item.name,\n rowData: rowData?.value,\n }}\n />\n </div>\n </div>\n )\n }\n\n const formItemDom = (\n <Form.Item {...restItemProps.value} v-slots={slotsGetter.value}>\n {defaultDom}\n </Form.Item>\n )\n\n const render = getSlot(props.item.render, formSlotsContext)\n return (\n <FormColWrapper colProps={props.item.colProps} grid={mergeGrid.value}>\n {render ? (\n <RenderVNode\n vnode={render}\n props={{\n formData: formData.value,\n defaultDom: formItemDom,\n rowData: rowData?.value,\n }}\n />\n ) : (\n formItemDom\n )}\n </FormColWrapper>\n )\n }\n },\n})\n"],"names":["ALL_ANTD_PROP_KEYS","IGNORE_WIDTH_VALUE_TYPE","SLOT_NAMES","name","inheritAttrs","props","item","type","Object","default","grid","Boolean","undefined","setup","action","formKey","prefixCls","formData","readonly","readonlyProps","disabledKeys","hiddenKeys","allDisabledKeys","labelCol","wrapperCol","onPressEnter","updateHiddenKeys","updateDisabledKeys","useInjectForm","isList","listKey","listName","rowData","useInjectFormList","formSlotsContext","useInjectSlots","fieldValue","onValueChange","useFieldValue","namePath","computed","initialValue","convertValue","transform","fieldRef","ref","mergeGrid","value","fieldType","mergeReadonly","runFunction","mergeReadonlyProps","merge","linkageDisabledKeys","map","key","split","linkageHiddenKeys","isIgnoreWidth","ignoreWidth","includes","formItemProps","restItemProps","omitUndefined","pickKeys","htmlFor","rules","clearOnChange","newValue","clear","linkage","clearNamePaths","length","forEach","_a","path","covertFormName","filter","flat","get","set","fieldProps","baseProps","mergeProps","id","disabled","placeholder","options","treeData","allowClear","valueEnum","dependencies","request","params","onChange","args","_b","fieldPropsMap","fieldStyle","newStyle","style","width","fieldWidthSizeMap","isNumber","maxWidth","Reflect","deleteProperty","fieldClassName","isSizeEnum","className","slotsGetter","temp","slot","getSlot","_createVNode","RenderVNode","title","extraRender","extra","label","_Fragment","titleStyles","FormTitle","tooltip","watch","hidden","isEqual","immediate","onInit","clearValidate","renderFormItem","FieldComponent","fieldComponentMap","defaultDom","_mergeProps","formItemDom","Form","Item","render","FormColWrapper","colProps"],"mappings":"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"}
|
|
@@ -91,7 +91,7 @@ var BodyCellTooltip = /* @__PURE__ */ vue.defineComponent({
|
|
|
91
91
|
var _a;
|
|
92
92
|
if (shouldOpen.value) {
|
|
93
93
|
return vue.createVNode(antDesignVue.Tooltip, vue.mergeProps({
|
|
94
|
-
"get-popup-container":
|
|
94
|
+
"get-popup-container": () => document.body,
|
|
95
95
|
"align": align.value
|
|
96
96
|
}, props.tooltipProps, {
|
|
97
97
|
"open": props.open,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BodyCellTooltip.js","sources":["../../../../../../../../../packages/components/table/src/components/Body/BodyCellTooltip.tsx"],"sourcesContent":["import { Tooltip } from 'ant-design-vue'\nimport { defineComponent, ref, computed, watch, getCurrentInstance, nextTick } from 'vue'\nimport type { PropType } from 'vue'\n\nexport default defineComponent({\n inheritAttrs: false,\n props: {\n prefixCls: String as PropType<string>,\n tooltipProps: {\n type: Object as PropType<any>,\n default: () => ({}),\n },\n getPopupContainer: Function as PropType<() => HTMLElement>,\n open: Boolean,\n onCellLeave: Function,\n align: Object as PropType<any>,\n shouldOpen: {\n type: [Function, Boolean] as PropType<boolean | ((isEllipsis: boolean) => boolean)>,\n },\n allowEnter: { type: Boolean, default: true },\n },\n setup(props, { slots, emit }) {\n const align = computed(() => ({ offset: [0, 13] }))\n const instance = getCurrentInstance()\n const shouldOpen = ref(false)\n\n const hasEllipsis = (firstChild: HTMLElement) => {\n const range = document.createRange()\n range.setStart(firstChild, 0)\n range.setEnd(firstChild, firstChild.childNodes.length)\n let rangeWidth = range.getBoundingClientRect().width\n // let rangeHeight = range.getBoundingClientRect().height\n rangeWidth - Math.floor(rangeWidth) < 1e-3 && (rangeWidth = Math.floor(rangeWidth))\n // rangeHeight - Math.floor(rangeHeight) < 1e-3 && (rangeHeight = Math.floor(rangeHeight))\n const {\n pLeft: pLeft,\n pRight: pRight,\n // pTop: pTop,\n // pBottom: pBottom,\n } = ((child) => {\n const styles = window.getComputedStyle(child, null)\n return {\n pLeft: Number.parseInt(styles.paddingLeft, 10) || 0,\n pRight: Number.parseInt(styles.paddingRight, 10) || 0,\n // pTop: Number.parseInt(styles.paddingTop, 10) || 0,\n // pBottom: Number.parseInt(styles.paddingBottom, 10) || 0,\n }\n })(firstChild)\n return (\n rangeWidth + (pLeft + pRight) > firstChild.offsetWidth ||\n // rangeHeight + (pTop + pBottom) > firstChild.offsetHeight ||\n firstChild.scrollWidth > firstChild.offsetWidth\n )\n }\n\n watch(\n () => props.open,\n (newValue) => {\n if (newValue) {\n if ('function' === typeof props.shouldOpen) {\n nextTick(() => {\n const el: HTMLElement = ((ins) => {\n let el = ins?.vnode?.el || (ins as any)?.$el || ins\n for (; el && !el.tagName; ) el = el.nextSibling\n return el\n })(instance)\n if (el) {\n const firstChild = el.childNodes[0]\n const isEllipsis = firstChild && hasEllipsis(firstChild as HTMLElement)\n shouldOpen.value = (props.shouldOpen as any)?.(isEllipsis)\n }\n })\n } else {\n shouldOpen.value = props.shouldOpen!\n }\n } else {\n shouldOpen.value = false\n }\n },\n { immediate: true, flush: 'post' },\n )\n\n const onOpenChange = () => {\n emit('cellLeave')\n }\n\n return () => {\n if (shouldOpen.value) {\n return (\n <Tooltip\n get-popup-container={
|
|
1
|
+
{"version":3,"file":"BodyCellTooltip.js","sources":["../../../../../../../../../packages/components/table/src/components/Body/BodyCellTooltip.tsx"],"sourcesContent":["import { Tooltip } from 'ant-design-vue'\nimport { defineComponent, ref, computed, watch, getCurrentInstance, nextTick } from 'vue'\nimport type { PropType } from 'vue'\n\nexport default defineComponent({\n inheritAttrs: false,\n props: {\n prefixCls: String as PropType<string>,\n tooltipProps: {\n type: Object as PropType<any>,\n default: () => ({}),\n },\n getPopupContainer: Function as PropType<() => HTMLElement>,\n open: Boolean,\n onCellLeave: Function,\n align: Object as PropType<any>,\n shouldOpen: {\n type: [Function, Boolean] as PropType<boolean | ((isEllipsis: boolean) => boolean)>,\n },\n allowEnter: { type: Boolean, default: true },\n },\n setup(props, { slots, emit }) {\n const align = computed(() => ({ offset: [0, 13] }))\n const instance = getCurrentInstance()\n const shouldOpen = ref(false)\n\n const hasEllipsis = (firstChild: HTMLElement) => {\n const range = document.createRange()\n range.setStart(firstChild, 0)\n range.setEnd(firstChild, firstChild.childNodes.length)\n let rangeWidth = range.getBoundingClientRect().width\n // let rangeHeight = range.getBoundingClientRect().height\n rangeWidth - Math.floor(rangeWidth) < 1e-3 && (rangeWidth = Math.floor(rangeWidth))\n // rangeHeight - Math.floor(rangeHeight) < 1e-3 && (rangeHeight = Math.floor(rangeHeight))\n const {\n pLeft: pLeft,\n pRight: pRight,\n // pTop: pTop,\n // pBottom: pBottom,\n } = ((child) => {\n const styles = window.getComputedStyle(child, null)\n return {\n pLeft: Number.parseInt(styles.paddingLeft, 10) || 0,\n pRight: Number.parseInt(styles.paddingRight, 10) || 0,\n // pTop: Number.parseInt(styles.paddingTop, 10) || 0,\n // pBottom: Number.parseInt(styles.paddingBottom, 10) || 0,\n }\n })(firstChild)\n return (\n rangeWidth + (pLeft + pRight) > firstChild.offsetWidth ||\n // rangeHeight + (pTop + pBottom) > firstChild.offsetHeight ||\n firstChild.scrollWidth > firstChild.offsetWidth\n )\n }\n\n watch(\n () => props.open,\n (newValue) => {\n if (newValue) {\n if ('function' === typeof props.shouldOpen) {\n nextTick(() => {\n const el: HTMLElement = ((ins) => {\n let el = ins?.vnode?.el || (ins as any)?.$el || ins\n for (; el && !el.tagName; ) el = el.nextSibling\n return el\n })(instance)\n if (el) {\n const firstChild = el.childNodes[0]\n const isEllipsis = firstChild && hasEllipsis(firstChild as HTMLElement)\n shouldOpen.value = (props.shouldOpen as any)?.(isEllipsis)\n }\n })\n } else {\n shouldOpen.value = props.shouldOpen!\n }\n } else {\n shouldOpen.value = false\n }\n },\n { immediate: true, flush: 'post' },\n )\n\n const onOpenChange = () => {\n emit('cellLeave')\n }\n\n return () => {\n if (shouldOpen.value) {\n return (\n <Tooltip\n get-popup-container={() => document.body}\n align={align.value}\n {...props.tooltipProps}\n open={props.open}\n overlay-style={\n !props.allowEnter\n ? {\n pointerEvents: 'none',\n }\n : {}\n }\n onOpenChange={onOpenChange}\n v-slots={{ ...slots }}\n />\n )\n }\n return slots.default?.()\n }\n },\n})\n"],"names":["inheritAttrs","props","prefixCls","String","tooltipProps","type","Object","default","getPopupContainer","Function","open","Boolean","onCellLeave","align","shouldOpen","allowEnter","setup","slots","emit","computed","offset","instance","getCurrentInstance","ref","hasEllipsis","firstChild","range","document","createRange","setStart","setEnd","childNodes","length","rangeWidth","getBoundingClientRect","width","Math","floor","pLeft","pRight","child","styles","window","getComputedStyle","Number","parseInt","paddingLeft","paddingRight","offsetWidth","scrollWidth","watch","newValue","nextTick","el","ins","vnode","$el","tagName","nextSibling","isEllipsis","value","immediate","flush","onOpenChange","_createVNode","Tooltip","_mergeProps","get-popup-container","body","pointerEvents"],"mappings":"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"}
|
|
@@ -272,16 +272,12 @@ var BodyEditCell = /* @__PURE__ */ vue.defineComponent({
|
|
|
272
272
|
}
|
|
273
273
|
});
|
|
274
274
|
vue.onMounted(() => {
|
|
275
|
-
var _a2;
|
|
276
275
|
if (!props.isRowEdit && !editRowsMap.value[props.rowKey]) {
|
|
277
276
|
editRowsMap.value[props.rowKey] = {
|
|
278
277
|
...props.item
|
|
279
278
|
};
|
|
280
279
|
vue.triggerRef(editRowsMap);
|
|
281
280
|
}
|
|
282
|
-
if ((_a2 = props.column.edit) == null ? void 0 : _a2.request) {
|
|
283
|
-
requestOptions();
|
|
284
|
-
}
|
|
285
281
|
setEditingCell({
|
|
286
282
|
recordIndexs: recordIndexs.value,
|
|
287
283
|
column: props.column,
|