@opensig/opendesign
Version:
50 lines (49 loc) • 1.66 kB
TypeScript
import { ComputedRef, ToRefs } from 'vue';
import { TableRowT } from '../table';
import { DataTableColumnFormatter, DataTableColumnT, DataTableExpandMethod, DataTablePropsT, EffectiveDataTableColumnT } from './types.ts';
export declare const getCellValue: ({ row, column }: {
row: TableRowT;
column: EffectiveDataTableColumnT;
}) => any;
export declare const isEmptyCell: (cellValue: string | number | unknown) => boolean;
/**
* 计算表头行数
*/
export declare const getTotalHeaderRows: (columns: DataTableColumnT[]) => number;
/**
* 计算表格列数
*/
export declare const getColumnCount: (columns: DataTableColumnT[]) => number;
export declare const getGroupColumns: (options: ToRefs<DataTablePropsT> & {
isMounted: boolean;
columnMap: Map<string, EffectiveDataTableColumnT>;
defaultFormatter: DataTableColumnFormatter;
}) => {
dataColumns: EffectiveDataTableColumnT[];
groupColumns: EffectiveDataTableColumnT[][];
};
/**
* 计算固定列的左右定位样式
*/
export declare const getColumnPosition: (options: {
column: EffectiveDataTableColumnT;
dataColumns: EffectiveDataTableColumnT[];
groupColumns: EffectiveDataTableColumnT[][];
border?: string;
isHeader?: boolean;
colSpan?: number;
}) => {
left?: string;
right?: string;
};
/**
* 判断当前层级是否有任何的可展开项,用于缩进对齐
*/
export declare const getIsLevelExpandable: ({ list, hasExpandSlot, expandMethod, }: {
list?: TableRowT[];
hasExpandSlot: ComputedRef<boolean>;
expandMethod?: DataTableExpandMethod;
}) => {
expandable: boolean;
expandableRowIndexes: number[];
};