d-render
Version:
基于 Element Plus 二次封装的数据驱动渲染组件库 - 表单、搜索表单、表格配置化渲染
33 lines (32 loc) • 1.82 kB
TypeScript
import { IAnyObject } from '@d-render/shared';
import type { ITreeProps } from './table-props';
export declare const analyseData: (list: IAnyObject[] | undefined, treeProps: ITreeProps, count?: number, parentPath?: Array<number>) => Record<number, number[]>;
export declare const getPropertyKeyByPath: (path: number[], treeProps: {
children: string;
}) => string;
export declare const calculateCurrentWidth: (size: "default" | "small" | "large" | undefined, standardSize: "default" | "small" | "large" | undefined, width: number) => number;
/**
* 获取展开childrenKey后的数组,childrenKey的内的key重新为 `${childrenKey}_${key}`
* @param data 原数组
* @param childrenKey 待展开的子数组的key
* @returns {*}
*/
export declare const getExpendData: <T extends Record<string, unknown>, U extends keyof T>(data: T[], childrenKey: U) => (T & {
_columns?: number | undefined;
})[];
interface ITableCell<T> {
row: T & {
_columns?: number;
};
column: IAnyObject;
rowIndex: number;
columnIndex: number;
}
/**
* 生成一个合并column的函数
* @param excludeFn {Function} 排除判断
* @returns {(function({row: *, column: *, rowIndex: *, columnIndex: *}): ([number|*,number]|undefined))|*}
*/
export declare const generateSpanMethod: <T>(excludeFn: (cell: ITableCell<T>) => boolean) => ({ row, column, rowIndex, columnIndex }: ITableCell<T>) => (number | undefined)[] | undefined;
export { collectFilterableColumns, tableFilteredValuesToModel, modelToTableFilteredValues, mergeTableFilterModel, type TTableFilterModel, type TTableFilteredValues, type ITableFilterColumnMeta } from './filter-util';
export { resolveRowKeyGetter, createRowMatcher, flattenTreeRows, type TRowKeyGetter, type TRowMatcher } from './selection-util';