UNPKG

@antv/s2

Version:

effective spreadsheet render core lib

64 lines (63 loc) 2.49 kB
import { Group } from '@antv/g'; import { TableSeriesNumberCell } from '../cell'; import type { CellCallbackParams, LayoutResult, ViewMeta } from '../common/interface'; import type { SpreadSheet } from '../sheet-type'; import { FrozenFacet } from './frozen-facet'; export declare class TableFacet extends FrozenFacet { emptyPlaceholderGroup: Group; private lastRowOffset; constructor(spreadsheet: SpreadSheet); protected getCornerCellInstance(): null; protected getRowCellInstance(node: ViewMeta): import("../cell").DataCell; protected getColCellInstance(...args: CellCallbackParams): import("../cell").ColCell; protected initGroups(): void; protected shouldRender(): boolean; render(): void; clearAllGroup(): void; private initEmptyPlaceholderGroup; private renderEmptyPlaceholder; private getDataCellAdaptiveHeight; private getCellHeightByRowIndex; /** * 开启换行后, 需要自适应调整高度, 明细表通过 rowCell.heightByField 调整, 同时还有一个 rowOffsets 控制行高, 所以要提前设置好, 保证渲染正确. */ private presetRowCellHeightIfNeeded; protected calculateRowOffsets(): void; private onSortHandler; private onFilterHandler; destroy(): void; protected calculateCornerBBox(): void; protected doLayout(): LayoutResult; private buildColHeaderHierarchy; getCellMeta(rowIndex?: number, colIndex?: number): ViewMeta | null; private getAdaptiveColWidth; private calculateColLeafNodesWidth; private calculateColNodesHeight; private calculateColNodesCoordinate; private getCompactColNodeWidth; private getColLeafNodesWidth; getViewCellHeights(): { getTotalHeight: () => number; getCellOffsetY: (offset: number) => number; getTotalLength: () => number; getIndexRange: (minHeight: number, maxHeight: number) => { start: number; end: number; }; }; protected renderRowResizeArea(): void; protected getRowHeader(): null; protected getColHeader(): import("./header").ColHeader; protected getSeriesNumberHeader(): null; protected getScrollbarPosition(): { maxY: number; maxX: number; }; /** * 获取序号单元格 * @description 明细表序号单元格是基于 DataCell 实现 */ getSeriesNumberCells(): TableSeriesNumberCell[]; getContentWidth(): number; getContentHeight(): number; }