@antv/s2
Version:
effective spreadsheet render core lib
35 lines (34 loc) • 1.96 kB
TypeScript
import type { CellMeta, DataItem, SimpleData } from '../../../common';
import { CopyMIMEType, type CopyAndExportUnifyConfig, type CopyableHTML, type CopyablePlain, type FormatOptions, type MatrixHTMLTransformer, type MatrixPlainTransformer, type SheetCopyConstructorParams } from '../../../common/interface/export';
import type { Node } from '../../../facet/layout/node';
import type { SpreadSheet } from '../../../sheet-type/spread-sheet';
export declare const matrixPlainTextTransformer: (dataMatrix: DataItem[][], separator?: string) => CopyablePlain;
export declare const matrixHtmlTransformer: (dataMatrix: DataItem[][]) => CopyableHTML;
export declare const Transformers: {
[CopyMIMEType.PLAIN]: MatrixPlainTransformer;
[CopyMIMEType.HTML]: MatrixHTMLTransformer;
};
export declare const assembleMatrix: ({ rowMatrix, colMatrix, dataMatrix, cornerMatrix, }: {
colMatrix: SimpleData[][];
dataMatrix: SimpleData[][];
rowMatrix?: SimpleData[][];
cornerMatrix?: SimpleData[][];
}) => SimpleData[][];
export declare function getMaxRowLen(matrix: SimpleData[][]): number;
/**
* 补全 matrix 中的元素个数, 使得每一行的元素个数一致,以最大的行元素个数为准
* @param {SimpleData[][]} matrix
* @return {SimpleData[][]}
*/
export declare function completeMatrix(matrix: SimpleData[][]): SimpleData[][];
export declare const getFormatOptions: (formatOptions?: FormatOptions) => {
formatHeader: boolean;
formatData: boolean;
};
export declare function unifyConfig({ spreadsheet: { options: { interaction }, }, config: { formatOptions, separator, selectedCells, customTransformer, async, }, isExport, }: SheetCopyConstructorParams): CopyAndExportUnifyConfig;
/**
* 获取到当前节点所有数据
* @param leafNode
*/
export declare const getNodeFormatData: (leafNode: Node) => string[];
export declare const getHeaderNodeFromMeta: (meta: CellMeta, spreadsheet: SpreadSheet) => (Node | undefined)[];