UNPKG

@antv/s2

Version:

effective spreadsheet render core lib

91 lines (90 loc) 3.37 kB
import type { Group } from '@antv/g'; import type { DataCell } from '../../cell'; import { MergedCell } from '../../cell/merged-cell'; import type { MergedCellCallback, MergedCellInfo, TempMergedCell, ViewMeta } from '../../common/interface'; import type { SpreadSheet } from '../../sheet-type'; /** * get cells on the outside of visible area through mergeCellInfo * @param invisibleCellInfo * @param sheet */ export declare const getInvisibleInfo: (invisibleCellInfo: MergedCellInfo[], sheet: SpreadSheet) => { cells: DataCell[]; cellsMeta: ViewMeta | null | undefined; }; /** * get { cells, invisibleCellInfo, cellsMeta } in the inside of visible area through mergeCellInfo * @param cellsInfos * @param allVisibleCells * @returns { cells, invisibleCellInfo, cellsMeta } */ export declare const getVisibleInfo: (cellsInfos: MergedCellInfo[], allVisibleCells: DataCell[]) => { cells: DataCell[]; invisibleCellInfo: MergedCellInfo[]; cellsMeta: Node | ViewMeta | undefined; }; /** * get the data cell and meta that make up the mergedCell * @param cellsInfos * @param allVisibleCells * @param sheet */ export declare const getTempMergedCell: (allVisibleCells: DataCell[], sheet?: SpreadSheet, cellsInfos?: MergedCellInfo[]) => TempMergedCell; /** * get the active cells' info as the default info of merged cells * @param sheet */ export declare const getActiveCellsInfo: (sheet: SpreadSheet) => MergedCellInfo[]; /** * 创建 merged cell 实例 * @param spreadsheet 表格实例 * @param cells 待合并的单元格 * @param meta 元信息 * @returns */ export declare const getMergedCellInstance: MergedCellCallback; /** * draw the background of the merged cell * @param sheet the base sheet instance * @param cellsInfo * @param hideData */ export declare const mergeCell: (sheet: SpreadSheet, cellsInfo?: MergedCellInfo[], hideData?: boolean) => void; /** * remove unmergedCells Info, return new mergedCell info * @param removeMergedCell * @param mergedCellsInfo */ export declare const removeUnmergedCellsInfo: (removeMergedCell: MergedCell, mergedCellsInfo: MergedCellInfo[][]) => MergedCellInfo[][]; /** * unmerge MergedCell * @param removedCell * @param sheet */ export declare const unmergeCell: (sheet: SpreadSheet, removedCell: MergedCell) => void; /** * 合并 TempMergedCell, 通过 cell.viewMeta.id 判断 TempMergedCell 是否是同一个。 * @param TempMergedCells * @param otherTempMergedCells */ export declare const mergeTempMergedCell: (TempMergedCells: TempMergedCell[], otherTempMergedCells: TempMergedCell[]) => TempMergedCell[]; /** * 将 MergedCell 转换成 TempMergedCell * @param oldMergedCells * @constructor */ export declare const mergedCellConvertTempMergedCells: (oldMergedCells: MergedCell[]) => { cells: DataCell[]; viewMeta: ViewMeta; }[]; /** * 对比两个TempMergedCell,返回 mainTempMergedCells 中存在的,但是 otherTempMergedCells 中不存在的的 TempMergedCell * @param mainTempMergedCells * @param compareTempMergedCells */ export declare const differenceTempMergedCells: (mainTempMergedCells: TempMergedCell[], compareTempMergedCells: TempMergedCell[]) => TempMergedCell[]; /** * update the mergedCell * @param sheet the base sheet instance */ export declare const updateMergedCells: (sheet: SpreadSheet, mergedCellsGroup: Group) => void;