@antv/s2-vue 2.0.0-next.14 → 2.0.0-next.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/esm/index.d.ts CHANGED
@@ -1,17 +1,17 @@
1
- import { AllowedComponentProps } from 'vue';
2
1
  import { BaseTooltip } from '@antv/s2';
3
2
  import { BaseTooltipOperatorMenuOptions } from '@antv/s2';
4
3
  import { Canvas } from '@antv/g';
5
4
  import { CanvasConfig } from '@antv/g';
6
5
  import type { CellScrollPosition } from '@antv/s2';
6
+ import { CellSelectedDetail } from '@antv/s2';
7
+ import { CellSelectedHandler } from '@antv/s2';
7
8
  import { ColCell } from '@antv/s2';
8
- import { ComponentCustomProps } from 'vue';
9
9
  import { ComponentOptionsMixin } from 'vue';
10
10
  import { ComputedRef } from 'vue';
11
11
  import { CopyableList } from '@antv/s2';
12
12
  import { CornerCell } from '@antv/s2';
13
13
  import type * as CSS_2 from 'csstype';
14
- import { CSSGlobalKeywords } from '@antv/g-lite/dist/css';
14
+ import { CSSGlobalKeywords } from '@antv/g-lite/types/css';
15
15
  import { DataCell } from '@antv/s2';
16
16
  import { DebouncedFunc } from 'lodash';
17
17
  import { DefineComponent } from 'vue';
@@ -22,7 +22,6 @@ import { ExtractPropTypes } from 'vue';
22
22
  import { FederatedPointerEvent } from '@antv/g';
23
23
  import { GEvent } from '@antv/s2';
24
24
  import { Group } from '@antv/g';
25
- import { Group as Group_2 } from '@antv/g-lite';
26
25
  import type { HeaderActionIcon } from '@antv/s2';
27
26
  import { HiddenColumnsInfo } from '@antv/s2';
28
27
  import { ICanvas } from '@antv/g';
@@ -41,13 +40,15 @@ import type { PaginationProps } from 'ant-design-vue';
41
40
  import { PointLike } from '@antv/g';
42
41
  import { Polygon } from '@antv/g';
43
42
  import { PropType } from 'vue';
43
+ import { PublicProps } from 'vue';
44
44
  import { RawData } from '@antv/s2';
45
45
  import { Rect } from '@antv/g';
46
46
  import { Rectangle } from '@antv/g';
47
- import { RectStyleProps } from '@antv/g';
48
47
  import { Ref } from 'vue';
48
+ import type { Renderer } from '@antv/g-canvas';
49
49
  import { ResizeInfo } from '@antv/s2';
50
50
  import { ResizeParams } from '@antv/s2';
51
+ import { RowCell } from '@antv/s2';
51
52
  import { RowCellCollapsedParams } from '@antv/s2';
52
53
  import { S2CellType } from '@antv/s2';
53
54
  import { S2DataConfig } from '@antv/s2';
@@ -68,7 +69,6 @@ import { Timer } from 'd3-timer';
68
69
  import { TooltipContentType } from '@antv/s2';
69
70
  import { ViewMeta } from '@antv/s2';
70
71
  import { ViewMetaData } from '@antv/s2';
71
- import { VNodeProps } from 'vue';
72
72
 
73
73
  declare type Adaptive = boolean | {
74
74
  width?: boolean;
@@ -145,7 +145,7 @@ declare abstract class BaseCell<T extends SimpleBBox> extends Group {
145
145
  protected textShapes: CustomText[];
146
146
  protected linkFieldShape: Line;
147
147
  protected actualText: string;
148
- protected originalText: string;
148
+ protected originalText: SimpleData;
149
149
  protected conditions: Conditions;
150
150
  protected conditionIntervalShape: Rect | undefined;
151
151
  protected conditionIconShape: GuiIcon;
@@ -217,7 +217,7 @@ declare abstract class BaseCell<T extends SimpleBBox> extends Group {
217
217
  /**
218
218
  * 获取原始的文本 (不含省略号)
219
219
  */
220
- getOriginalText(): string;
220
+ getOriginalText(): SimpleData;
221
221
  /**
222
222
  * 文本是否溢出 (有省略号)
223
223
  */
@@ -226,25 +226,25 @@ declare abstract class BaseCell<T extends SimpleBBox> extends Group {
226
226
  * 是否是多行文本
227
227
  */
228
228
  isMultiLineText(): boolean;
229
- /**
230
- * 获取单元格空值占位符
231
- */
232
- getEmptyPlaceholder(): string | null | undefined;
233
229
  /**
234
230
  * 获取文本包围盒
235
231
  */
236
232
  getTextLineBoundingRects(): Rectangle[];
233
+ /**
234
+ * 获取单元格空值占位符
235
+ */
236
+ getEmptyPlaceholder(): string | null | undefined;
237
237
  /**
238
238
  * 获取单元格展示的数值
239
239
  */
240
- getFieldValue(): string;
240
+ getFieldValue(): SimpleData;
241
241
  protected shouldInit(): boolean;
242
242
  getStyle<K extends keyof InternalFullyTheme = CellType>(name?: K): InternalFullyTheme[K] | InternalFullyCellTheme;
243
243
  getLinkFieldShape(): Line;
244
244
  getBackgroundShape(): Image_2 | Rect | Polygon;
245
245
  getStateShapes(): Map<StateShapeLayer, DisplayObject<any, any>>;
246
246
  protected getResizeAreaStyle(): ResizeArea;
247
- protected shouldDrawResizeAreaByType(type: keyof ResizeInteractionOptions, cell: S2CellType_2): number | boolean | ((cell: S2CellType_2) => boolean) | ResizeType | ((resizeInfo: ResizeInfo_2) => boolean) | undefined;
247
+ protected shouldDrawResizeAreaByType(type: keyof ResizeInteractionOptions, cell: S2CellType_2): number | boolean | "selected" | "all" | ((cell: S2CellType_2) => boolean) | "current" | ((resizeInfo: ResizeInfo_2) => boolean) | undefined;
248
248
  getBBoxByType(type?: CellClipBox): SimpleBBox;
249
249
  drawBorders(): void;
250
250
  /**
@@ -261,8 +261,8 @@ declare abstract class BaseCell<T extends SimpleBBox> extends Group {
261
261
  drawTextShape(): void;
262
262
  protected drawLinkFieldShape(showLinkFieldShape: boolean, linkFillColor: string): void;
263
263
  protected getLinkFieldStyle(): string;
264
- protected drawLinkField(meta: Node_2_2 | ViewMeta_2): void;
265
- updateByState(stateName: InteractionStateName, cell: S2CellType_2): void;
264
+ protected drawLinkField(meta: T): void;
265
+ updateByState(stateName: `${InteractionStateName}`, cell: S2CellType_2): void;
266
266
  protected getInteractiveBorderShapeStyle<T>(borderSize: T & number): {
267
267
  x: number;
268
268
  y: number;
@@ -302,10 +302,12 @@ declare abstract class BaseCell<T extends SimpleBBox> extends Group {
302
302
  protected getDefaultTextFill(textFill: string): string;
303
303
  getBackgroundConditionFill(): {
304
304
  backgroundColor: string;
305
+ backgroundColorOpacity: number;
305
306
  intelligentReverseTextColor: boolean;
306
307
  } | {
307
308
  intelligentReverseTextColor: boolean;
308
309
  backgroundColor?: undefined;
310
+ backgroundColorOpacity?: undefined;
309
311
  };
310
312
  getIconConditionResult(): HeaderActionNameOptions | undefined;
311
313
  protected getActionAndConditionIconWidth(position?: IconPosition): number;
@@ -346,7 +348,7 @@ declare interface BaseChartData {
346
348
  /**
347
349
  * 类型
348
350
  */
349
- type: MiniChartType;
351
+ type: `${MiniChartType}`;
350
352
  /**
351
353
  * 数据
352
354
  */
@@ -436,7 +438,7 @@ declare abstract class BaseDataSet_2 {
436
438
  */
437
439
  getCustomFieldDescription: (cell: S2CellType_2<ViewMeta_2 | Node_2_2>) => string | undefined;
438
440
  /**
439
- * 获得字段格式方法
441
+ * 获得字段格式化方法
440
442
  * @param field
441
443
  */
442
444
  getFieldFormatter(field: CustomHeaderField): Formatter;
@@ -482,7 +484,7 @@ declare abstract class BaseDataSet_2 {
482
484
  * @param field
483
485
  * @param query
484
486
  */
485
- abstract getDimensionValues(field: string, query?: Query): string[];
487
+ abstract getDimensionValues(field: string, query?: Query): SimpleData[];
486
488
  /**
487
489
  * 获取单个的单元格数据
488
490
  */
@@ -533,16 +535,10 @@ declare abstract class BaseFacet {
533
535
  backgroundGroup: Group;
534
536
  panelGroup: Group;
535
537
  panelScrollGroup: PanelScrollGroup;
536
- frozenRowGroup: FrozenGroup;
537
- frozenColGroup: FrozenGroup;
538
- frozenTrailingRowGroup: FrozenGroup;
539
- frozenTrailingColGroup: FrozenGroup;
540
- frozenTopGroup: FrozenGroup;
541
- frozenBottomGroup: FrozenGroup;
542
538
  foregroundGroup: Group;
543
539
  /**
544
540
  * 当前布局节点信息
545
- * @description 内部消费, 外部调用请使用 facet.getLayoutResult()
541
+ * @private 内部消费, 外部调用请使用 facet.getLayoutResult()
546
542
  */
547
543
  protected layoutResult: LayoutResult_2;
548
544
  viewCellWidths: number[];
@@ -559,9 +555,9 @@ declare abstract class BaseFacet {
559
555
  centerFrame: Frame;
560
556
  gridInfo: GridInfo;
561
557
  protected textWrapNodeHeightCache: Map<string, number>;
562
- protected textWrapTempRowCell: RowCell | DataCell_2;
558
+ protected textWrapTempRowCell: RowCell_2 | DataCell_2;
563
559
  protected textWrapTempColCell: ColCell_2 | TableColCell;
564
- protected abstract getRowCellInstance(node: Node_2_2 | ViewMeta_2, spreadsheet: SpreadSheet_2, config: Partial<BaseHeaderConfig>): RowCell | DataCell_2;
560
+ protected abstract getRowCellInstance(node: Node_2_2 | ViewMeta_2, spreadsheet: SpreadSheet_2, config: Partial<BaseHeaderConfig>): RowCell_2 | DataCell_2;
565
561
  protected abstract getColCellInstance(node: Node_2_2, spreadsheet: SpreadSheet_2, config: Partial<BaseHeaderConfig>): ColCell_2;
566
562
  protected abstract doLayout(): LayoutResult_2;
567
563
  protected abstract clip(scrollX: number, scrollY: number): void;
@@ -570,6 +566,8 @@ declare abstract class BaseFacet {
570
566
  abstract getViewCellHeights(): ViewCellHeights;
571
567
  abstract addDataCell(cell: DataCell_2): void;
572
568
  abstract getCellMeta(rowIndex: number, colIndex: number): ViewMeta_2 | null;
569
+ abstract getContentWidth(): number;
570
+ abstract getContentHeight(): number;
573
571
  protected scrollFrameId: ReturnType<typeof requestAnimationFrame> | null;
574
572
  protected scrollDirection: ScrollDirection;
575
573
  get scrollBarTheme(): DeepRequired<ScrollBarTheme>;
@@ -625,8 +623,10 @@ declare abstract class BaseFacet {
625
623
  width: number;
626
624
  height: number;
627
625
  };
628
- getContentHeight(): number;
629
- updateScrollOffset(offsetConfig: OffsetConfig): void;
626
+ /**
627
+ * @alias s2.interaction.scrollTo(offsetConfig)
628
+ */
629
+ updateScrollOffset(offsetConfig: ScrollOffsetConfig): void;
630
630
  getPaginationScrollY(): number;
631
631
  destroy(): void;
632
632
  setScrollOffset: (scrollOffset: ScrollOffset_2) => void;
@@ -638,6 +638,10 @@ declare abstract class BaseFacet {
638
638
  emitPaginationEvent: () => void;
639
639
  private unbindEvents;
640
640
  calculateCellWidthHeight: () => void;
641
+ /**
642
+ * 提供给明细表做 rowOffsets 计算的 hook
643
+ */
644
+ protected abstract calculateRowOffsets(): void;
641
645
  getRealScrollX: (scrollX: number, hRowScroll?: number) => number;
642
646
  protected calculateCornerBBox(): void;
643
647
  protected calculatePanelBBox: () => void;
@@ -648,10 +652,9 @@ declare abstract class BaseFacet {
648
652
  };
649
653
  getRealHeight: () => number;
650
654
  clearAllGroup(): void;
651
- scrollWithAnimation: (offsetConfig?: OffsetConfig, duration?: number, cb?: () => void) => void;
652
- scrollImmediately: (offsetConfig?: OffsetConfig) => void;
655
+ scrollWithAnimation: (offsetConfig?: ScrollOffsetConfig, duration?: number, cb?: () => void) => void;
656
+ scrollImmediately: (offsetConfig?: ScrollOffsetConfig) => void;
653
657
  /**
654
- *
655
658
  * @param skipScrollEvent 不触发 S2Event.GLOBAL_SCROLL
656
659
  */
657
660
  startScroll: (skipScrollEvent?: boolean) => void;
@@ -739,10 +742,7 @@ declare abstract class BaseFacet {
739
742
  };
740
743
  updatePanelScrollGroup(): void;
741
744
  /**
742
- *
743
- * @param skipScrollEvent: 如true则不触发GLOBAL_SCROLL事件
744
- * During scroll behavior, first call to this method fires immediately and then on interval.
745
- * @protected
745
+ * @param skipScrollEvent: 不触发 GLOBAL_SCROLL 事件
746
746
  */
747
747
  protected dynamicRenderCell(skipScrollEvent?: boolean): void;
748
748
  private emitScrollEvent;
@@ -803,6 +803,11 @@ declare abstract class BaseFacet {
803
803
  * @example facet.getColNodeByIndex(colIndex)
804
804
  */
805
805
  getColNodeByIndex(colIndex: number): Node_2_2 | undefined;
806
+ /**
807
+ * 获取在索引范围内的列头叶子节点
808
+ * @example facet.getColLeafNodesByRange(0,10) 获取索引范围在 0(包括 0) 到 10(包括 10)的列头叶子节点
809
+ */
810
+ getColLeafNodesByRange(minIndex: number, maxIndex: number): Node_2_2[];
806
811
  /**
807
812
  * 根据列头索引获取指定列头叶子节点
808
813
  * @example facet.getColLeafNodes(colIndex)
@@ -857,6 +862,11 @@ declare abstract class BaseFacet {
857
862
  * @example facet.getRowLeafNodeByIndex(rowIndex)
858
863
  */
859
864
  getRowLeafNodeByIndex(rowIndex: number): Node_2_2 | undefined;
865
+ /**
866
+ * 获取在索引范围内的行头叶子节点
867
+ * @example facet.getRowLeafNodesByRange(0,10) 获取索引范围在 0(包括 0) 到 10(包括 10)的行头叶子节点
868
+ */
869
+ getRowLeafNodesByRange(minIndex: number, maxIndex: number): Node_2_2[];
860
870
  /**
861
871
  * 根据 field 获取行头节点
862
872
  * @example facet.getRowNodeByField('number')
@@ -901,11 +911,11 @@ declare abstract class BaseFacet {
901
911
  /**
902
912
  * 获取行头单元格 (不含可视区域)
903
913
  */
904
- getRowCells(): RowCell[];
914
+ getRowCells(): RowCell_2[];
905
915
  /**
906
916
  * 获取行头叶子节点单元格 (不含可视区域)
907
917
  */
908
- getRowLeafCells(): RowCell[];
918
+ getRowLeafCells(): RowCell_2[];
909
919
  /**
910
920
  * 获取列头单元格 (不含可视区域)
911
921
  */
@@ -950,6 +960,12 @@ declare abstract class BaseFacet {
950
960
  getCells(cellIds?: string[]): S2CellType_2<ViewMeta_2>[];
951
961
  getInitColLeafNodes(): Node_2_2[];
952
962
  clearInitColLeafNodes(): void;
963
+ /**
964
+ * @tip 和 this.spreadsheet.measureTextWidth() 的区别在于:
965
+ * 1. 额外添加一像素余量,防止 maxLabel 有多个同样长度情况下,一些 label 不能展示完全, 出现省略号
966
+ * 2. 测量时, 文本宽度向上取整, 避免子像素的不一致性
967
+ */
968
+ protected measureTextWidth(text: SimpleData, font: unknown): number;
953
969
  }
954
970
 
955
971
  declare interface BaseFields {
@@ -966,21 +982,21 @@ declare interface BaseFields {
966
982
  /**
967
983
  * New Base Header for all headers(cornerHeader, rowHeader, colHeader)
968
984
  * NOTE: Do not use this.cfg(which lays in group) to get header config,
969
- * use {@see headerConfig} instead
985
+ * use @see headerConfig instead
970
986
  */
971
987
  declare abstract class BaseHeader<T extends BaseHeaderConfig> extends Group {
988
+ protected scrollGroup: Group;
989
+ protected frozenGroup: Group;
990
+ protected frozenTrailingGroup: Group;
991
+ protected extraFrozenNodes: Node_2_2[];
992
+ protected abstract initGroups(): void;
972
993
  protected abstract layout(): void;
973
994
  protected abstract offset(): void;
974
995
  protected abstract clip(): void;
975
996
  protected abstract getCellInstance(node: Node_2_2): S2CellType_2;
976
997
  protected headerConfig: T;
977
- protected constructor(config: T);
998
+ constructor(config: T);
978
999
  getHeaderConfig(): T;
979
- /**
980
- * 清空热区,为重绘做准备,防止热区重复渲染
981
- * @param type 当前重绘的header类型
982
- */
983
- protected clearResizeAreaGroup(type: string): void;
984
1000
  render(type: string): void;
985
1001
  /**
986
1002
  * Scroll header group's x,y
@@ -995,6 +1011,11 @@ declare abstract class BaseHeader<T extends BaseHeaderConfig> extends Group {
995
1011
  * @param type
996
1012
  */
997
1013
  onRowScrollX(rowHeaderScrollX: number, type: string): void;
1014
+ /**
1015
+ * 清空热区,为重绘做准备,防止热区重复渲染
1016
+ * @param type 当前重绘的header类型
1017
+ */
1018
+ protected clearResizeAreaGroup(type: string): void;
998
1019
  clear(): void;
999
1020
  /**
1000
1021
  * Check whether header cell in viewPort
@@ -1005,6 +1026,7 @@ declare abstract class BaseHeader<T extends BaseHeaderConfig> extends Group {
1005
1026
  viewportPosition: number;
1006
1027
  viewportSize: number;
1007
1028
  }) => boolean;
1029
+ getNodes(): Node_2_2[];
1008
1030
  }
1009
1031
 
1010
1032
  /**
@@ -1091,6 +1113,8 @@ default: Adaptive;
1091
1113
  };
1092
1114
  spreadsheet: PropType<(container: S2MountContainer, dataCfg: S2DataConfig, options: SheetComponentOptions) => SpreadSheet>;
1093
1115
  onMounted: PropType<(spreadsheet: SpreadSheet) => void>;
1116
+ onUpdate: PropType<(renderOptions: S2RenderOptions) => S2RenderOptions>;
1117
+ onUpdateAfterRender: PropType<(renderOptions: S2RenderOptions) => void>;
1094
1118
  }, {
1095
1119
  S2_PREFIX_CLS: string;
1096
1120
  wrapperRef: Ref<HTMLDivElement>;
@@ -1166,7 +1190,6 @@ handlePageChange: (nextCurrent: number) => void;
1166
1190
  handlePageSizeChange: (nextSize: number) => void;
1167
1191
  }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
1168
1192
  spreadsheet: (container: S2MountContainer, dataCfg: S2DataConfig, options: S2Options<TooltipContentType, Pagination, BaseTooltipOperatorMenuOptions>) => SpreadSheet;
1169
- sheetUpdate: SheetUpdateCallback;
1170
1193
  rowCellHover: (data: TargetCellInfo) => void;
1171
1194
  rowCellClick: (data: TargetCellInfo) => void;
1172
1195
  rowCellDoubleClick: (data: TargetCellInfo) => void;
@@ -1177,7 +1200,8 @@ rowCellMouseMove: (data: TargetCellInfo) => void;
1177
1200
  rowCellCollapsed: (params: RowCellCollapsedParams) => void;
1178
1201
  rowCellAllCollapsed: (isCollapsed: boolean) => void;
1179
1202
  rowCellScroll: (position: Required<ScrollOffset>) => void;
1180
- rowCellRender: (cell: ColCell) => void;
1203
+ rowCellRender: (cell: RowCell) => void;
1204
+ rowCellSelected: CellSelectedHandler;
1181
1205
  colCellHover: (data: TargetCellInfo) => void;
1182
1206
  colCellClick: (data: TargetCellInfo) => void;
1183
1207
  colCellDoubleClick: (data: TargetCellInfo) => void;
@@ -1191,6 +1215,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo;
1191
1215
  hiddenColumnsDetail: HiddenColumnsInfo[];
1192
1216
  }) => void;
1193
1217
  colCellRender: (cell: ColCell) => void;
1218
+ colCellSelected: CellSelectedHandler;
1194
1219
  dataCellHover: (data: TargetCellInfo) => void;
1195
1220
  dataCellClick: (data: TargetCellInfo) => void;
1196
1221
  dataCellDoubleClick: (data: TargetCellInfo) => void;
@@ -1203,6 +1228,7 @@ dataCellSelectMove: (metaList: ViewMetaData[]) => void;
1203
1228
  dataCellRender: (cell: DataCell) => void;
1204
1229
  dataCellEditStart: (meta: ViewMeta, cell: TableDataCell) => void;
1205
1230
  dataCellEditEnd: (meta: ViewMeta, cell: TableDataCell) => void;
1231
+ dataCellSelected: CellSelectedHandler;
1206
1232
  cornerCellHover: (data: TargetCellInfo) => void;
1207
1233
  cornerCellClick: (data: TargetCellInfo) => void;
1208
1234
  cornerCellDoubleClick: (data: TargetCellInfo) => void;
@@ -1211,6 +1237,7 @@ cornerCellMouseDown: (data: TargetCellInfo) => void;
1211
1237
  cornerCellMouseUp: (data: TargetCellInfo) => void;
1212
1238
  cornerCellMouseMove: (data: TargetCellInfo) => void;
1213
1239
  cornerCellRender: (cell: CornerCell) => void;
1240
+ cornerCellSelected: CellSelectedHandler;
1214
1241
  mergedCellsHover: (data: TargetCellInfo) => void;
1215
1242
  mergedCellsClick: (data: TargetCellInfo) => void;
1216
1243
  mergedCellsDoubleClick: (data: TargetCellInfo) => void;
@@ -1233,6 +1260,8 @@ layoutCellRender: <T extends S2CellType = S2CellType>(cell: T) => void;
1233
1260
  beforeRender: () => void;
1234
1261
  afterRender: () => void;
1235
1262
  mounted: (spreadsheet: SpreadSheet) => void;
1263
+ update: (renderOptions: S2RenderOptions) => S2RenderOptions;
1264
+ updateAfterRender: (renderOptions: S2RenderOptions) => void;
1236
1265
  destroy: () => void;
1237
1266
  layoutResize: (params: ResizeParams) => void;
1238
1267
  layoutResizeSeriesWidth: (params: ResizeParams) => void;
@@ -1267,7 +1296,7 @@ mouseHover: (event: GEvent) => void;
1267
1296
  mouseUp: (event: MouseEvent) => void;
1268
1297
  mouseDown: (event: MouseEvent) => void;
1269
1298
  mouseMove: (event: MouseEvent) => void;
1270
- selected: (cells: S2CellType[]) => void;
1299
+ selected: CellSelectedHandler;
1271
1300
  reset: (event: KeyboardEvent) => void;
1272
1301
  linkFieldJump: (data: {
1273
1302
  field: string;
@@ -1281,7 +1310,7 @@ spreadsheet: SpreadSheet;
1281
1310
  }) => void;
1282
1311
  rowCellBrushSelection: (event: GEvent) => void;
1283
1312
  colCellBrushSelection: (event: GEvent) => void;
1284
- }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
1313
+ }, string, PublicProps, Readonly<ExtractPropTypes< {
1285
1314
  sheetType: PropType<SheetType>;
1286
1315
  dataCfg: PropType<S2DataConfig>;
1287
1316
  themeCfg: PropType<ThemeCfg>;
@@ -1308,8 +1337,9 @@ default: Adaptive;
1308
1337
  };
1309
1338
  spreadsheet: PropType<(container: S2MountContainer, dataCfg: S2DataConfig, options: SheetComponentOptions) => SpreadSheet>;
1310
1339
  onMounted: PropType<(spreadsheet: SpreadSheet) => void>;
1340
+ onUpdate: PropType<(renderOptions: S2RenderOptions) => S2RenderOptions>;
1341
+ onUpdateAfterRender: PropType<(renderOptions: S2RenderOptions) => void>;
1311
1342
  }>> & {
1312
- onSheetUpdate?: (params: S2RenderOptions) => any;
1313
1343
  onRowCellHover?: (data: TargetCellInfo) => any;
1314
1344
  onRowCellClick?: (data: TargetCellInfo) => any;
1315
1345
  onRowCellDoubleClick?: (data: TargetCellInfo) => any;
@@ -1320,7 +1350,8 @@ onRowCellMouseMove?: (data: TargetCellInfo) => any;
1320
1350
  onRowCellCollapsed?: (params: RowCellCollapsedParams) => any;
1321
1351
  onRowCellAllCollapsed?: (isCollapsed: boolean) => any;
1322
1352
  onRowCellScroll?: (position: Required<ScrollOffset>) => any;
1323
- onRowCellRender?: (cell: ColCell) => any;
1353
+ onRowCellRender?: (cell: RowCell) => any;
1354
+ onRowCellSelected?: (cells: S2CellType<ViewMeta>[], detail: CellSelectedDetail) => any;
1324
1355
  onColCellHover?: (data: TargetCellInfo) => any;
1325
1356
  onColCellClick?: (data: TargetCellInfo) => any;
1326
1357
  onColCellDoubleClick?: (data: TargetCellInfo) => any;
@@ -1334,6 +1365,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo;
1334
1365
  hiddenColumnsDetail: HiddenColumnsInfo[];
1335
1366
  }) => any;
1336
1367
  onColCellRender?: (cell: ColCell) => any;
1368
+ onColCellSelected?: (cells: S2CellType<ViewMeta>[], detail: CellSelectedDetail) => any;
1337
1369
  onDataCellHover?: (data: TargetCellInfo) => any;
1338
1370
  onDataCellClick?: (data: TargetCellInfo) => any;
1339
1371
  onDataCellDoubleClick?: (data: TargetCellInfo) => any;
@@ -1346,6 +1378,7 @@ onDataCellSelectMove?: (metaList: ViewMetaData[]) => any;
1346
1378
  onDataCellRender?: (cell: DataCell) => any;
1347
1379
  onDataCellEditStart?: (meta: ViewMeta, cell: TableDataCell) => any;
1348
1380
  onDataCellEditEnd?: (meta: ViewMeta, cell: TableDataCell) => any;
1381
+ onDataCellSelected?: (cells: S2CellType<ViewMeta>[], detail: CellSelectedDetail) => any;
1349
1382
  onCornerCellHover?: (data: TargetCellInfo) => any;
1350
1383
  onCornerCellClick?: (data: TargetCellInfo) => any;
1351
1384
  onCornerCellDoubleClick?: (data: TargetCellInfo) => any;
@@ -1354,6 +1387,7 @@ onCornerCellMouseDown?: (data: TargetCellInfo) => any;
1354
1387
  onCornerCellMouseUp?: (data: TargetCellInfo) => any;
1355
1388
  onCornerCellMouseMove?: (data: TargetCellInfo) => any;
1356
1389
  onCornerCellRender?: (cell: CornerCell) => any;
1390
+ onCornerCellSelected?: (cells: S2CellType<ViewMeta>[], detail: CellSelectedDetail) => any;
1357
1391
  onMergedCellsHover?: (data: TargetCellInfo) => any;
1358
1392
  onMergedCellsClick?: (data: TargetCellInfo) => any;
1359
1393
  onMergedCellsDoubleClick?: (data: TargetCellInfo) => any;
@@ -1376,6 +1410,8 @@ onLayoutCellRender?: (cell: S2CellType) => any;
1376
1410
  onBeforeRender?: () => any;
1377
1411
  onAfterRender?: () => any;
1378
1412
  onMounted?: (spreadsheet: SpreadSheet) => any;
1413
+ onUpdate?: (renderOptions: S2RenderOptions) => any;
1414
+ onUpdateAfterRender?: (renderOptions: S2RenderOptions) => any;
1379
1415
  onDestroy?: () => any;
1380
1416
  onLayoutResize?: (params: ResizeParams) => any;
1381
1417
  onLayoutResizeSeriesWidth?: (params: ResizeParams) => any;
@@ -1410,7 +1446,7 @@ onMouseHover?: (event: GEvent) => any;
1410
1446
  onMouseUp?: (event: MouseEvent) => any;
1411
1447
  onMouseDown?: (event: MouseEvent) => any;
1412
1448
  onMouseMove?: (event: MouseEvent) => any;
1413
- onSelected?: (cells: S2CellType[]) => any;
1449
+ onSelected?: (cells: S2CellType<ViewMeta>[], detail: CellSelectedDetail) => any;
1414
1450
  onReset?: (event: KeyboardEvent) => any;
1415
1451
  onLinkFieldJump?: (data: {
1416
1452
  field: string;
@@ -1450,8 +1486,6 @@ declare interface BaseSheetComponentProps<PartialDrillDown = PartDrillDown, Head
1450
1486
  showPagination?: ShowPagination<OverrideShowPagination, Options>;
1451
1487
  themeCfg?: ThemeCfg;
1452
1488
  header?: Header;
1453
- /** 底表 render callback */
1454
- onSheetUpdate?: SheetUpdateCallback;
1455
1489
  onRowCellHover?: (data: TargetCellInfo) => void;
1456
1490
  onRowCellClick?: (data: TargetCellInfo) => void;
1457
1491
  onRowCellDoubleClick?: (data: TargetCellInfo) => void;
@@ -1462,7 +1496,8 @@ declare interface BaseSheetComponentProps<PartialDrillDown = PartDrillDown, Head
1462
1496
  onRowCellCollapsed?: (params: RowCellCollapsedParams) => void;
1463
1497
  onRowCellAllCollapsed?: (isCollapsed: boolean) => void;
1464
1498
  onRowCellScroll?: (position: CellScrollPosition) => void;
1465
- onRowCellRender?: (cell: ColCell) => void;
1499
+ onRowCellRender?: (cell: RowCell) => void;
1500
+ onRowCellSelected?: CellSelectedHandler;
1466
1501
  onColCellHover?: (data: TargetCellInfo) => void;
1467
1502
  onColCellClick?: (data: TargetCellInfo) => void;
1468
1503
  onColCellDoubleClick?: (data: TargetCellInfo) => void;
@@ -1476,6 +1511,7 @@ declare interface BaseSheetComponentProps<PartialDrillDown = PartDrillDown, Head
1476
1511
  hiddenColumnsDetail: HiddenColumnsInfo[];
1477
1512
  }) => void;
1478
1513
  onColCellRender?: (cell: ColCell) => void;
1514
+ onColCellSelected?: CellSelectedHandler;
1479
1515
  onDataCellHover?: (data: TargetCellInfo) => void;
1480
1516
  onDataCellClick?: (data: TargetCellInfo) => void;
1481
1517
  onDataCellDoubleClick?: (data: TargetCellInfo) => void;
@@ -1488,6 +1524,7 @@ declare interface BaseSheetComponentProps<PartialDrillDown = PartDrillDown, Head
1488
1524
  onDataCellRender?: (cell: DataCell) => void;
1489
1525
  onDataCellEditStart?: (meta: ViewMeta, cell: TableDataCell) => void;
1490
1526
  onDataCellEditEnd?: (meta: ViewMeta, cell: TableDataCell) => void;
1527
+ onDataCellSelected?: CellSelectedHandler;
1491
1528
  onCornerCellHover?: (data: TargetCellInfo) => void;
1492
1529
  onCornerCellClick?: (data: TargetCellInfo) => void;
1493
1530
  onCornerCellDoubleClick?: (data: TargetCellInfo) => void;
@@ -1496,6 +1533,7 @@ declare interface BaseSheetComponentProps<PartialDrillDown = PartDrillDown, Head
1496
1533
  onCornerCellMouseUp?: (data: TargetCellInfo) => void;
1497
1534
  onCornerCellMouseMove?: (data: TargetCellInfo) => void;
1498
1535
  onCornerCellRender?: (cell: CornerCell) => void;
1536
+ onCornerCellSelected?: CellSelectedHandler;
1499
1537
  onMergedCellsHover?: (data: TargetCellInfo) => void;
1500
1538
  onMergedCellsClick?: (data: TargetCellInfo) => void;
1501
1539
  onMergedCellsDoubleClick?: (data: TargetCellInfo) => void;
@@ -1519,6 +1557,8 @@ declare interface BaseSheetComponentProps<PartialDrillDown = PartDrillDown, Head
1519
1557
  onBeforeRender?: () => void;
1520
1558
  onAfterRender?: () => void;
1521
1559
  onMounted?: (spreadsheet: SpreadSheet) => void;
1560
+ onUpdate?: (renderOptions: S2RenderOptions) => S2RenderOptions;
1561
+ onUpdateAfterRender?: (renderOptions: S2RenderOptions) => void;
1522
1562
  onDestroy?: () => void;
1523
1563
  onLayoutResize?: (params: ResizeParams) => void;
1524
1564
  onLayoutResizeSeriesWidth?: (params: ResizeParams) => void;
@@ -1553,7 +1593,7 @@ declare interface BaseSheetComponentProps<PartialDrillDown = PartDrillDown, Head
1553
1593
  onMouseUp?: (event: MouseEvent) => void;
1554
1594
  onMouseDown?: (event: MouseEvent) => void;
1555
1595
  onMouseMove?: (event: MouseEvent) => void;
1556
- onSelected?: (cells: S2CellType[]) => void;
1596
+ onSelected?: CellSelectedHandler;
1557
1597
  onReset?: (event: KeyboardEvent) => void;
1558
1598
  onLinkFieldJump?: (data: {
1559
1599
  field: string;
@@ -1701,20 +1741,22 @@ declare interface BulletValue {
1701
1741
  }
1702
1742
 
1703
1743
  declare interface CalcTotals {
1704
- /** 聚合方式 */
1705
- aggregation?: Aggregation;
1744
+ /**
1745
+ * 聚合方式
1746
+ */
1747
+ aggregation?: `${Aggregation}`;
1706
1748
  /**
1707
1749
  * 自定义计算汇总
1708
1750
  * @see https://s2.antv.antgroup.com/examples/analysis/totals/#custom
1709
1751
  */
1710
- calcFunc?: (query: Query, data: CellData[]) => number;
1752
+ calcFunc?: (query: Query, data: CellData[], spreadsheet: SpreadSheet_2) => number;
1711
1753
  }
1712
1754
 
1713
1755
  declare type CanvasEventHandler = (event: FederatedPointerEvent) => void;
1714
1756
 
1715
- declare interface CellAppendInfo<T = Node_2_2> extends Partial<ResizeInfo_2> {
1757
+ declare interface CellAppendInfo<T = Node_2_2> extends Partial<Omit<ResizeInfo_2, 'meta'>> {
1716
1758
  isLinkFieldText?: boolean;
1717
- cellData?: T;
1759
+ meta?: T;
1718
1760
  }
1719
1761
 
1720
1762
  declare enum CellBorderPosition {
@@ -1752,8 +1794,8 @@ declare enum CellClipBox {
1752
1794
  declare type CellCustomSize = null | undefined | number | ((node: Node_2_2 | null) => number | null);
1753
1795
 
1754
1796
  declare class CellData {
1755
- private raw;
1756
- private extraField;
1797
+ readonly raw: RawData_2;
1798
+ readonly extraField: string;
1757
1799
  constructor(raw: RawData_2, extraField: string);
1758
1800
  static getCellData(raw: RawData_2, extraField: string): CellData;
1759
1801
  static getCellDataList(raw: RawData_2, extraFields: string[]): CellData[];
@@ -1787,6 +1829,30 @@ declare interface CellScrollOffset {
1787
1829
 
1788
1830
  declare type CellScrollPosition_2 = Required<ScrollOffset_2>;
1789
1831
 
1832
+ declare interface CellScrollToOptions {
1833
+ /**
1834
+ * 是否展示滚动动画
1835
+ */
1836
+ animate?: boolean;
1837
+ /**
1838
+ * 是否触发滚动事件
1839
+ */
1840
+ skipScrollEvent?: boolean;
1841
+ }
1842
+
1843
+ declare interface CellSelectedDetail_2 {
1844
+ /**
1845
+ * 触发选中的交互名
1846
+ */
1847
+ interactionName?: `${InteractionName}`;
1848
+ /**
1849
+ * 触发选中的单元格
1850
+ */
1851
+ targetCell?: S2CellType_2 | null;
1852
+ }
1853
+
1854
+ declare type CellSelectedHandler_2 = (cells: S2CellType_2[], detail: CellSelectedDetail_2) => void;
1855
+
1790
1856
  declare interface CellTextWordWrapStyle extends Pick<TextStyleProps, 'wordWrap' | 'maxLines' | 'textOverflow'> {
1791
1857
  }
1792
1858
 
@@ -1830,6 +1896,30 @@ declare enum CellType {
1830
1896
  MERGED_CELL = "mergedCell"
1831
1897
  }
1832
1898
 
1899
+ declare interface ChangeCellOptions extends CellScrollToOptions {
1900
+ /**
1901
+ * 目标单元格
1902
+ */
1903
+ cell: S2CellType_2<ViewMeta_2>;
1904
+ /**
1905
+ * 是否是多选
1906
+ */
1907
+ isMultiSelection?: boolean;
1908
+ /**
1909
+ * 状态名 (默认 `selected`)
1910
+ */
1911
+ stateName?: `${InteractionStateName}`;
1912
+ /**
1913
+ * 交互名
1914
+ */
1915
+ interactionName?: `${InteractionName}`;
1916
+ /**
1917
+ * 如果单元格不在可视范围, 是否自动滚动
1918
+ * @default true
1919
+ */
1920
+ scrollIntoView?: boolean;
1921
+ }
1922
+
1833
1923
  declare class ColCell_2 extends HeaderCell<ColHeaderConfig> {
1834
1924
  get cellType(): CellType;
1835
1925
  protected getBorderPositions(): CellBorderPosition[];
@@ -1891,10 +1981,11 @@ declare interface ColCellStyle extends BaseCellStyle, CellTextWordWrapStyle {
1891
1981
  * Column Header for SpreadSheet
1892
1982
  */
1893
1983
  declare class ColHeader extends BaseHeader<ColHeaderConfig> {
1894
- protected scrollGroup: Group;
1895
- constructor(config: ColHeaderConfig);
1984
+ protected initGroups(): void;
1985
+ protected getCellGroup(node: Node_2_2): Group;
1896
1986
  protected getCellInstance(node: Node_2_2): ColCell_2;
1897
- private initScrollGroup;
1987
+ protected appendNode(node: Node_2_2): void;
1988
+ protected layout(): void;
1898
1989
  /**
1899
1990
  * Make colHeader scroll with hScrollBar
1900
1991
  * @param scrollX horizontal offset
@@ -1903,10 +1994,7 @@ declare class ColHeader extends BaseHeader<ColHeaderConfig> {
1903
1994
  */
1904
1995
  onColScroll(scrollX: number, type: string): void;
1905
1996
  protected clip(): void;
1906
- clear(): void;
1907
- protected getCellGroup(node: Node_2_2): Group;
1908
1997
  protected isColCellInRect(node: Node_2_2): boolean;
1909
- protected layout(): void;
1910
1998
  protected offset(): void;
1911
1999
  }
1912
2000
 
@@ -1922,7 +2010,7 @@ declare interface Condition<T = unknown> {
1922
2010
  mapping: ConditionMapping<T>;
1923
2011
  }
1924
2012
 
1925
- declare type ConditionMapping<T = unknown> = (fieldValue: number | string, data: RawData_2, cell?: DataCell_2 | HeaderCell) => ConditionMappingResult<T>;
2013
+ declare type ConditionMapping<T = unknown> = (fieldValue: number | string, data: RawData_2, cell: S2CellType_2) => ConditionMappingResult<T>;
1926
2014
 
1927
2015
  declare type ConditionMappingResult<T = unknown> = T | undefined | null;
1928
2016
 
@@ -1934,14 +2022,14 @@ declare interface Conditions {
1934
2022
  }
1935
2023
 
1936
2024
  declare type CopyableHTML = {
1937
- type: CopyMIMEType.HTML;
2025
+ type: `${CopyMIMEType.HTML}`;
1938
2026
  content: string;
1939
2027
  };
1940
2028
 
1941
2029
  declare type CopyableList_2 = [CopyablePlain, CopyableHTML];
1942
2030
 
1943
2031
  declare type CopyablePlain = {
1944
- type: CopyMIMEType.PLAIN;
2032
+ type: `${CopyMIMEType.PLAIN}`;
1945
2033
  content: string;
1946
2034
  };
1947
2035
 
@@ -1984,7 +2072,7 @@ declare interface CornerCellStyle extends CellTextWordWrapStyle {
1984
2072
  * Corner Header for SpreadSheet
1985
2073
  */
1986
2074
  declare class CornerHeader extends BaseHeader<CornerHeaderConfig> {
1987
- constructor(config: CornerHeaderConfig);
2075
+ protected initGroups(): void;
1988
2076
  protected getCellInstance(node: Node_2_2): CornerCell_2;
1989
2077
  /**
1990
2078
  * Get corner Header by config
@@ -2000,19 +2088,16 @@ declare class CornerHeader extends BaseHeader<CornerHeaderConfig> {
2000
2088
  height: number;
2001
2089
  }): Node_2_2[];
2002
2090
  /**
2003
- * Make cornerHeader scroll with hScrollBar
2091
+ * Make cornerHeader scroll with hScrollBar
2004
2092
  * @param scrollX
2005
2093
  */
2006
2094
  onCorScroll(scrollX: number, type: string): void;
2007
- destroy(): void;
2008
2095
  protected layout(): void;
2009
- protected renderCells(): void;
2010
2096
  protected offset(): void;
2011
2097
  protected clip(): void;
2012
- getNodes(): Node_2_2[];
2013
2098
  }
2014
2099
 
2015
- declare type CornerHeaderCallback = (parent: S2CellType_2, spreadsheet: SpreadSheet_2, ...restOptions: unknown[]) => void;
2100
+ declare type CornerHeaderCallback = (cornerHeader: CornerHeader, spreadsheet: SpreadSheet_2, ...restOptions: unknown[]) => void;
2016
2101
 
2017
2102
  declare interface CornerHeaderConfig extends BaseHeaderConfig {
2018
2103
  seriesNumberWidth: number;
@@ -2089,6 +2174,7 @@ declare interface CustomTreeNode {
2089
2174
  title?: string;
2090
2175
  /**
2091
2176
  * 是否收起(默认都展开)
2177
+ * @description 优先级 `collapseFields` > `expandDepth` > `collapseAll` > `collapsed`
2092
2178
  */
2093
2179
  collapsed?: boolean;
2094
2180
  /**
@@ -2128,7 +2214,7 @@ declare class DataCell_2 extends BaseCell<ViewMeta_2> {
2128
2214
  isChartData(): boolean;
2129
2215
  getRenderChartData(): BaseChartData;
2130
2216
  getRenderChartOptions(): {
2131
- type: MiniChartType;
2217
+ type: "line" | "bar" | "bullet";
2132
2218
  data: RawData_2[];
2133
2219
  encode?: {
2134
2220
  x: string;
@@ -2144,8 +2230,8 @@ declare class DataCell_2 extends BaseCell<ViewMeta_2> {
2144
2230
  };
2145
2231
  };
2146
2232
  protected getBorderPositions(): CellBorderPosition[];
2147
- get valueRangeByField(): ValueRange;
2148
- protected handleByStateName(cells: CellMeta[], stateName: InteractionStateName): void;
2233
+ getValueRange(): ValueRange;
2234
+ protected handleByStateName(cells: CellMeta[], stateName: `${InteractionStateName}`): void;
2149
2235
  protected handleSearchResult(cells: CellMeta[]): void;
2150
2236
  protected handleSelect(cells: CellMeta[]): void;
2151
2237
  protected isDisableHover(cellMeta: CellMeta): boolean;
@@ -2168,21 +2254,18 @@ declare class DataCell_2 extends BaseCell<ViewMeta_2> {
2168
2254
  intelligentReverseTextColor: boolean;
2169
2255
  };
2170
2256
  protected changeRowColSelectState(indexType: ViewMetaIndexType): void;
2171
- /**
2172
- * 预留给明细表使用,透视表数据格不需要绘制 border, 已经交由 grid 处理
2173
- */
2174
2257
  drawBorders(): void;
2175
2258
  /**
2176
2259
  * Find current field related condition
2177
2260
  * @param conditions
2178
2261
  */
2179
- findFieldCondition<Con extends Condition>(conditions?: Con[]): Con | undefined;
2262
+ findFieldCondition<T extends Condition>(conditions?: T[]): T | undefined;
2180
2263
  /**
2181
2264
  * Mapping value to get condition related attrs
2182
2265
  * @param condition
2183
2266
  */
2184
2267
  mappingValue<Result>(condition: Condition<Result>): ConditionMappingResult<Result>;
2185
- updateByState(stateName: InteractionStateName): void;
2268
+ updateByState(stateName: `${InteractionStateName}`): void;
2186
2269
  clearUnselectedState(): void;
2187
2270
  private toggleConditionIntervalShapeOpacity;
2188
2271
  }
@@ -2218,7 +2301,7 @@ declare interface DataCellStyle extends CellTextWordWrapStyle {
2218
2301
  };
2219
2302
  }
2220
2303
 
2221
- declare type DataItem = SimpleData | MultiData | Record<string, unknown> | undefined | null;
2304
+ declare type DataItem = SimpleData | MultiData | Record<string, unknown>;
2222
2305
 
2223
2306
  declare type DataPath = (number | string | undefined)[];
2224
2307
 
@@ -2227,13 +2310,19 @@ declare type DeepRequired<T extends Record<string, any>> = {
2227
2310
  };
2228
2311
 
2229
2312
  declare interface DefaultCellTheme extends GridAnalysisCellTheme {
2230
- /** 粗体文本样式 */
2313
+ /**
2314
+ * 粗体文本样式 (如: 总计, 小计, 行列头非叶子节点文本)
2315
+ * @see https://s2.antv.antgroup.com/manual/advanced/custom/cell-align#%E8%A1%8C%E5%A4%B4%E5%AF%B9%E9%BD%90%E6%96%B9%E5%BC%8F
2316
+ */
2231
2317
  bolderText?: TextTheme;
2232
- /** 文本样式 */
2318
+ /** 文本样式 (如: 数值, 行列头叶子节点文本) */
2233
2319
  text?: TextTheme;
2234
- /** 序号样式 */
2320
+ /** 序号文本样式 */
2235
2321
  seriesText?: TextTheme;
2236
- /** 度量值文本样式 */
2322
+ /**
2323
+ * 度量值文本样式 (如: 数值挂行/列头时, 行列头所对应的虚拟数值单元格文本)
2324
+ * @see https://s2.antv.antgroup.com/manual/advanced/custom/cell-align#%E5%88%97%E5%A4%B4%E5%AF%B9%E9%BD%90%E6%96%B9%E5%BC%8F
2325
+ */
2237
2326
  measureText?: TextTheme;
2238
2327
  /** 单元格样式 */
2239
2328
  cell?: CellTheme;
@@ -2268,7 +2357,7 @@ declare interface EmitterType {
2268
2357
  [S2Event.GLOBAL_DOUBLE_CLICK]: CanvasEventHandler;
2269
2358
  [S2Event.GLOBAL_RESET]: EventHandler_2;
2270
2359
  [S2Event.GLOBAL_HOVER]: CanvasEventHandler;
2271
- [S2Event.GLOBAL_SELECTED]: SelectedHandler;
2360
+ [S2Event.GLOBAL_SELECTED]: CellSelectedHandler_2;
2272
2361
  [S2Event.GLOBAL_SCROLL]: (position: CellScrollPosition_2) => void;
2273
2362
  /** ================ Sort ================ */
2274
2363
  [S2Event.RANGE_SORT]: (info: SortParams_2) => void;
@@ -2278,7 +2367,7 @@ declare interface EmitterType {
2278
2367
  [S2Event.RANGE_FILTERED]: (data: RawData_2[]) => any;
2279
2368
  /** ================ Cell ================ */
2280
2369
  [S2Event.GLOBAL_LINK_FIELD_JUMP]: (data: {
2281
- cellData: Node_2_2;
2370
+ meta: Node_2_2 | ViewMeta_2;
2282
2371
  field: string;
2283
2372
  record: Data;
2284
2373
  }) => void;
@@ -2293,6 +2382,7 @@ declare interface EmitterType {
2293
2382
  [S2Event.DATA_CELL_BRUSH_SELECTION]: (cells: (DataCell_2 | CellMeta)[]) => void;
2294
2383
  [S2Event.DATA_CELL_SELECT_MOVE]: (metas: CellMeta[]) => void;
2295
2384
  [S2Event.DATA_CELL_RENDER]: (cell: DataCell_2) => void;
2385
+ [S2Event.DATA_CELL_SELECTED]: CellSelectedHandler_2;
2296
2386
  /** ================ Row Cell ================ */
2297
2387
  [S2Event.ROW_CELL_MOUSE_DOWN]: CanvasEventHandler;
2298
2388
  [S2Event.ROW_CELL_MOUSE_MOVE]: CanvasEventHandler;
@@ -2302,12 +2392,13 @@ declare interface EmitterType {
2302
2392
  [S2Event.ROW_CELL_CONTEXT_MENU]: CanvasEventHandler;
2303
2393
  [S2Event.ROW_CELL_MOUSE_UP]: CanvasEventHandler;
2304
2394
  [S2Event.ROW_CELL_SCROLL]: (position: CellScrollPosition_2) => void;
2305
- [S2Event.ROW_CELL_BRUSH_SELECTION]: (cells: RowCell[]) => void;
2395
+ [S2Event.ROW_CELL_BRUSH_SELECTION]: (cells: RowCell_2[]) => void;
2306
2396
  [S2Event.ROW_CELL_COLLAPSED]: (data: RowCellCollapsedParams_2) => void;
2307
2397
  [S2Event.ROW_CELL_COLLAPSED__PRIVATE]: (data: RowCellCollapsedParams_2) => void;
2308
2398
  [S2Event.ROW_CELL_ALL_COLLAPSED]: (isCollapsed: boolean) => void;
2309
2399
  [S2Event.ROW_CELL_ALL_COLLAPSED__PRIVATE]: (isCollapsed: boolean) => void;
2310
- [S2Event.ROW_CELL_RENDER]: (cell: RowCell) => void;
2400
+ [S2Event.ROW_CELL_RENDER]: (cell: RowCell_2) => void;
2401
+ [S2Event.ROW_CELL_SELECTED]: CellSelectedHandler_2;
2311
2402
  /** ================ Col Cell ================ */
2312
2403
  [S2Event.COL_CELL_MOUSE_DOWN]: CanvasEventHandler;
2313
2404
  [S2Event.COL_CELL_MOUSE_MOVE]: CanvasEventHandler;
@@ -2320,6 +2411,7 @@ declare interface EmitterType {
2320
2411
  [S2Event.COL_CELL_EXPANDED]: (expandedNode: Node_2_2) => void;
2321
2412
  [S2Event.COL_CELL_HIDDEN]: (currentHiddenColumnsInfo: HiddenColumnsInfo_2, hiddenColumnsDetail: HiddenColumnsInfo_2[]) => void;
2322
2413
  [S2Event.COL_CELL_RENDER]: (cell: ColCell_2) => void;
2414
+ [S2Event.COL_CELL_SELECTED]: CellSelectedHandler_2;
2323
2415
  /** ================ Corner Cell ================ */
2324
2416
  [S2Event.CORNER_CELL_MOUSE_MOVE]: CanvasEventHandler;
2325
2417
  [S2Event.CORNER_CELL_MOUSE_DOWN]: CanvasEventHandler;
@@ -2329,6 +2421,7 @@ declare interface EmitterType {
2329
2421
  [S2Event.CORNER_CELL_CONTEXT_MENU]: CanvasEventHandler;
2330
2422
  [S2Event.CORNER_CELL_MOUSE_UP]: CanvasEventHandler;
2331
2423
  [S2Event.CORNER_CELL_RENDER]: (cell: CornerCell_2) => void;
2424
+ [S2Event.CORNER_CELL_SELECTED]: CellSelectedHandler_2;
2332
2425
  /** ================ Merged Cells ================ */
2333
2426
  [S2Event.MERGED_CELLS_MOUSE_DOWN]: CanvasEventHandler;
2334
2427
  [S2Event.MERGED_CELLS_MOUSE_MOVE]: CanvasEventHandler;
@@ -2387,7 +2480,7 @@ declare class EventController {
2387
2480
  canvasMousemoveEvent: FederatedPointerEvent;
2388
2481
  constructor(spreadsheet: SpreadSheet_2);
2389
2482
  get canvasContainer(): Canvas;
2390
- get isAutoResetSheetStyle(): boolean | undefined;
2483
+ isAutoResetSheetStyle(event: Event | FederatedPointerEvent): boolean | undefined;
2391
2484
  bindEvents(): void;
2392
2485
  private isGuiIconShape;
2393
2486
  private isConditionIconShape;
@@ -2458,6 +2551,8 @@ declare interface Fields extends BaseFields {
2458
2551
  customValueOrder?: number;
2459
2552
  }
2460
2553
 
2554
+ declare type FieldValue = string | TotalClass | TotalMeasure;
2555
+
2461
2556
  declare interface FilterParam {
2462
2557
  filterKey: string;
2463
2558
  filteredValues?: unknown[];
@@ -2465,7 +2560,7 @@ declare interface FilterParam {
2465
2560
  }
2466
2561
 
2467
2562
  declare interface FormatResult {
2468
- formattedValue: string;
2563
+ formattedValue: SimpleData;
2469
2564
  value: DataItem;
2470
2565
  }
2471
2566
 
@@ -2475,10 +2570,12 @@ declare interface FormatResult {
2475
2570
  * 2. copy/export
2476
2571
  * 3. tooltip, 且仅在选择多个单元格时,data 类型为数组
2477
2572
  */
2478
- declare type Formatter = (v: unknown, data?: SimpleData | ViewMetaData_2 | ViewMetaData_2[], meta?: Node_2_2 | ViewMeta_2) => string;
2573
+ declare type Formatter = (value: DataItem, data?: DataItem | ViewMetaData_2 | ViewMetaData_2[], meta?: Node_2_2 | ViewMeta_2 | null | undefined) => SimpleData;
2479
2574
 
2480
2575
  declare class Frame extends Group {
2481
2576
  cfg: FrameConfig;
2577
+ cornerRightBorder: Line;
2578
+ cornerBottomBorder: Line;
2482
2579
  constructor(cfg: FrameConfig);
2483
2580
  layout(): void;
2484
2581
  /**
@@ -2513,7 +2610,11 @@ declare interface FrameConfig {
2513
2610
  spreadsheet: SpreadSheet_2;
2514
2611
  }
2515
2612
 
2516
- declare class FrozenGroup extends GridGroup {
2613
+ declare enum FrozenGroupArea {
2614
+ Row = "frozenRow",
2615
+ Col = "frozenCol",
2616
+ TrailingRow = "frozenTrailingRow",
2617
+ TrailingCol = "frozenTrailingCol"
2517
2618
  }
2518
2619
 
2519
2620
  declare interface GetCellDataParams {
@@ -2618,6 +2719,12 @@ declare class GuiIcon extends Group {
2618
2719
  name: string;
2619
2720
  fill: string | null;
2620
2721
  }>): void;
2722
+ /**
2723
+ * https://github.com/antvis/S2/issues/2772
2724
+ * G 6.0 如果是多图层, 需要手动全部隐藏, 直接隐藏父容器 Group 还不行, 或者使用 icon.show()
2725
+ * https://github.com/antvis/G/blob/277abff24936ef6f7c43407a16c5bc9260992511/packages/g-lite/src/display-objects/DisplayObject.ts#L853
2726
+ */
2727
+ toggleVisibility(visible: boolean): void;
2621
2728
  }
2622
2729
 
2623
2730
  declare interface GuiIconCfg extends Omit<ImageStyleProps, 'fill'> {
@@ -2625,11 +2732,18 @@ declare interface GuiIconCfg extends Omit<ImageStyleProps, 'fill'> {
2625
2732
  readonly fill?: string | null;
2626
2733
  }
2627
2734
 
2735
+ /**
2736
+ * 基于 Canvas 的高清适配方案
2737
+ * 1. 双屏切换, devicePixelRatio 变化时
2738
+ * 2. Mac 触控板缩放
2739
+ * 3. 浏览器窗口缩放
2740
+ */
2628
2741
  declare class HdAdapter {
2629
2742
  private viewport;
2630
2743
  private devicePixelRatioMedia;
2631
2744
  private spreadsheet;
2632
2745
  private isDevicePixelRatioChange;
2746
+ private zoomOffsetLeft;
2633
2747
  constructor(spreadsheet: SpreadSheet_2);
2634
2748
  init: () => void;
2635
2749
  destroy: () => void;
@@ -2642,6 +2756,9 @@ declare class HdAdapter {
2642
2756
  * @see https://github.com/antvis/S2/issues/2072
2643
2757
  */
2644
2758
  private renderByZoomScaleWithoutResizeEffect;
2759
+ /**
2760
+ * 如果是浏览器窗口的放大缩小 (command +/-), 也会触发
2761
+ */
2645
2762
  private renderByDevicePixelRatioChanged;
2646
2763
  private renderByDevicePixelRatio;
2647
2764
  private renderByZoomScale;
@@ -2660,7 +2777,7 @@ declare interface HeaderActionIcon_2 extends HeaderActionIconBaseOptions {
2660
2777
  * 所属的 cell 类型, 即当前 icon 展示在哪种类型单元格中
2661
2778
  * @example belongsCell: 'rowCell'
2662
2779
  */
2663
- belongsCell: Omit<CellType, 'dataCell' | 'mergedCell' | 'seriesNumberCell'>;
2780
+ belongsCell: Exclude<`${CellType}`, 'dataCell' | 'mergedCell' | 'seriesNumberCell'>;
2664
2781
  }
2665
2782
 
2666
2783
  declare interface HeaderActionIconBaseOptions {
@@ -2742,7 +2859,7 @@ declare abstract class HeaderCell<T extends BaseHeaderConfig = BaseHeaderConfig>
2742
2859
  protected addActionIcon(options: HeaderActionIconOptions): void;
2743
2860
  protected drawActionAndConditionIcons(): void;
2744
2861
  protected isSortCell(): boolean;
2745
- protected handleByStateName(cells: CellMeta[], stateName: InteractionStateName): void;
2862
+ protected handleByStateName(cells: CellMeta[], stateName: `${InteractionStateName}`): void;
2746
2863
  protected handleSearchResult(cells: CellMeta[]): void;
2747
2864
  protected handleHover(cells: CellMeta[]): void;
2748
2865
  protected handleSelect(cells: CellMeta[], nodes?: Node_2_2[]): void;
@@ -2752,16 +2869,17 @@ declare abstract class HeaderCell<T extends BaseHeaderConfig = BaseHeaderConfig>
2752
2869
  backgroundColorOpacity: number;
2753
2870
  } & {
2754
2871
  backgroundColor: string;
2872
+ backgroundColorOpacity: number;
2755
2873
  intelligentReverseTextColor: boolean;
2756
2874
  };
2757
2875
  toggleActionIcon(id: string): void;
2758
2876
  protected getIconPosition(): PointLike;
2759
2877
  update(): void;
2760
- updateByState(stateName: InteractionStateName): void;
2878
+ updateByState(stateName: `${InteractionStateName}`): void;
2761
2879
  hideInteractionShape(): void;
2762
2880
  isMeasureField(): boolean;
2763
2881
  mappingValue<Result>(condition: Condition<Result>): ConditionMappingResult<Result>;
2764
- findFieldCondition<Con extends Condition>(conditions?: Con[]): Con | undefined;
2882
+ findFieldCondition<T extends Condition>(conditions?: T[]): T | undefined;
2765
2883
  getTreeIcon(): GuiIcon | undefined;
2766
2884
  getActionIcons(): GuiIcon[];
2767
2885
  }
@@ -2852,18 +2970,47 @@ declare interface IconTheme {
2852
2970
  declare type Indexes = [number, number, number, number];
2853
2971
 
2854
2972
  declare interface InteractionCellHighlightOptions {
2855
- /** 高亮行头 */
2973
+ /**
2974
+ * 高亮行头
2975
+ */
2856
2976
  rowHeader?: boolean;
2857
- /** 高亮列头 */
2977
+ /**
2978
+ * 高亮列头
2979
+ */
2858
2980
  colHeader?: boolean;
2859
- /** 高亮选中单元格所在行 */
2981
+ /**
2982
+ * 高亮选中单元格所在行
2983
+ */
2860
2984
  currentRow?: boolean;
2861
- /** 高亮选中单元格所在列 */
2985
+ /**
2986
+ * 高亮选中单元格所在列
2987
+ */
2862
2988
  currentCol?: boolean;
2863
2989
  }
2864
2990
 
2865
2991
  declare type InteractionConstructor = new (spreadsheet: SpreadSheet_2) => BaseEvent;
2866
2992
 
2993
+ declare enum InteractionName {
2994
+ CORNER_CELL_CLICK = "cornerCellClick",
2995
+ DATA_CELL_CLICK = "dataCellClick",
2996
+ ROW_CELL_CLICK = "rowCellClick",
2997
+ COL_CELL_CLICK = "colCellClick",
2998
+ MERGED_CELLS_CLICK = "mergedCellsClick",
2999
+ ROW_COLUMN_CLICK = "rowColumnClick",
3000
+ HEADER_CELL_LINK_CLICK = "headerCellLinkClick",
3001
+ HOVER = "hover",
3002
+ DATA_CELL_BRUSH_SELECTION = "dataCellBrushSelection",
3003
+ ROW_CELL_BRUSH_SELECTION = "rowCellBrushSelection",
3004
+ COL_CELL_BRUSH_SELECTION = "colCellBrushSelection",
3005
+ COL_ROW_RESIZE = "rowColResize",
3006
+ DATA_CELL_MULTI_SELECTION = "dataCellMultiSelection",
3007
+ ROW_CELL_MULTI_SELECTION = "rowCellMultiSelection",
3008
+ COL_CELL_MULTI_SELECTION = "colCellMultiSelection",
3009
+ RANGE_SELECTION = "rangeSelection",
3010
+ SELECTED_CELL_MOVE = "selectedCellMove",
3011
+ GLOBAL_RESET = "globalReset"
3012
+ }
3013
+
2867
3014
  declare interface InteractionOptions {
2868
3015
  /**
2869
3016
  * 链接跳转
@@ -2907,10 +3054,11 @@ declare interface InteractionOptions {
2907
3054
  customTransformer?: (transformer: Transformer_2) => Partial<Transformer_2>;
2908
3055
  };
2909
3056
  /**
2910
- * 自动重置表格样式 (按下 ESC 键, 点击空白区域时, 关闭 tooltip/交互状态)
3057
+ * 自动重置表格样式 (按下 ESC 键, 点击空白区域时, 关闭 tooltip/交互状态), 支持根据 event 动态判断
2911
3058
  * @see https://s2.antv.antgroup.com/examples/interaction/basic/#auto-reset-sheet-style
3059
+ * @example autoResetSheetStyle: (event, spreadsheet) => event.target instanceof HTMLDivElement
2912
3060
  */
2913
- autoResetSheetStyle?: boolean;
3061
+ autoResetSheetStyle?: boolean | ((event: Event | FederatedPointerEvent, spreadsheet: SpreadSheet_2) => boolean);
2914
3062
  /**
2915
3063
  * 隐藏列头配置, 支持维度 (S2DataConfig.fields) 和具体维值 (id)
2916
3064
  * @example hiddenColumnFields: ['type', 'subType'];
@@ -2952,7 +3100,7 @@ declare interface InteractionOptions {
2952
3100
  * 滚动条位置 (可用于表格内容未撑满 Canvas 的场景)
2953
3101
  * @example scrollbarPosition: 'content'
2954
3102
  */
2955
- scrollbarPosition?: ScrollbarPositionType;
3103
+ scrollbarPosition?: `${ScrollbarPositionType}`;
2956
3104
  /**
2957
3105
  * 透传 listener 属性的可选参数对象
2958
3106
  * @see https://developer.mozilla.org/zh-CN/docs/Web/API/EventTarget/addEventListener
@@ -2991,7 +3139,7 @@ declare interface InteractionStateInfo {
2991
3139
  /**
2992
3140
  * 交互状态名
2993
3141
  */
2994
- stateName?: InteractionStateName;
3142
+ stateName?: `${InteractionStateName}`;
2995
3143
  /**
2996
3144
  * 单元格元数据 (包含不在可视范围内的)
2997
3145
  */
@@ -3091,7 +3239,7 @@ declare type KeyboardEventHandler = (event: KeyboardEvent) => void;
3091
3239
  /**
3092
3240
  * determine the order of every row/column tree branch
3093
3241
  */
3094
- declare type LayoutArrange = (spreadsheet: SpreadSheet_2, parent: Node_2_2, field: string, fieldValues: string[]) => string[];
3242
+ declare type LayoutArrange = (spreadsheet: SpreadSheet_2, parent: Node_2_2, field: string, fieldValues: FieldValue[]) => string[];
3095
3243
 
3096
3244
  /**
3097
3245
  * determine the data of cells in Cartesian coordinates
@@ -3227,9 +3375,13 @@ declare interface MergedCellStyle extends CellTextWordWrapStyle {
3227
3375
 
3228
3376
  declare interface Meta {
3229
3377
  /**
3230
- * 字段 id
3378
+ * 字段名
3379
+ * @example
3380
+ 1. 'city'
3381
+ 2. ['city', 'type']
3382
+ 3. /^city/
3231
3383
  */
3232
- field?: string;
3384
+ field?: string | string[] | RegExp;
3233
3385
  /**
3234
3386
  * 字段名称
3235
3387
  */
@@ -3242,6 +3394,7 @@ declare interface Meta {
3242
3394
  * 格式化
3243
3395
  * 数值字段:一般用于格式化数字单位
3244
3396
  * 文本字段:一般用于做字段枚举值的别名
3397
+ * @see https://s2.antv.antgroup.com/manual/basic/formatter
3245
3398
  */
3246
3399
  formatter?: Formatter;
3247
3400
  }
@@ -3313,6 +3466,10 @@ declare class Node_2_2 {
3313
3466
  hierarchy: Hierarchy;
3314
3467
  isPivotMode: boolean;
3315
3468
  seriesNumberWidth: number;
3469
+ /**
3470
+ * 给序号列单元格用,标识该序号单元格对应了行头节点,有了关联关系后,就可以在行头冻结时做区分
3471
+ */
3472
+ relatedNode: Node_2_2;
3316
3473
  spreadsheet: SpreadSheet_2;
3317
3474
  query?: Query;
3318
3475
  belongsCell?: S2CellType_2 | null | undefined;
@@ -3321,7 +3478,8 @@ declare class Node_2_2 {
3321
3478
  isGrandTotals?: boolean;
3322
3479
  isSubTotals?: boolean;
3323
3480
  isTotalRoot?: boolean;
3324
- isFrozen?: boolean;
3481
+ isFrozenHead?: boolean;
3482
+ isFrozenTrailing?: boolean;
3325
3483
  shallowRender?: boolean;
3326
3484
  extra?: {
3327
3485
  description?: string;
@@ -3384,21 +3542,8 @@ declare class Node_2_2 {
3384
3542
  */
3385
3543
  getTotalHeightForTreeHierarchy(): number;
3386
3544
  isSeriesNumberNode(): boolean;
3387
- }
3388
-
3389
- declare interface OffsetConfig {
3390
- rowHeaderOffsetX?: {
3391
- value: number | undefined;
3392
- animate?: boolean;
3393
- };
3394
- offsetX?: {
3395
- value: number | undefined;
3396
- animate?: boolean;
3397
- };
3398
- offsetY?: {
3399
- value: number | undefined;
3400
- animate?: boolean;
3401
- };
3545
+ clone(): Node_2_2;
3546
+ get isFrozen(): boolean | undefined;
3402
3547
  }
3403
3548
 
3404
3549
  declare type OnUpdateCells = (root: RootInteraction, defaultOnUpdateCells: () => void) => void;
@@ -3483,11 +3628,7 @@ declare class PanelBBox extends BaseBBox {
3483
3628
 
3484
3629
  declare type PanelIndexes = {
3485
3630
  center: Indexes;
3486
- frozenRow?: Indexes;
3487
- frozenCol?: Indexes;
3488
- frozenTrailingRow?: Indexes;
3489
- frozenTrailingCol?: Indexes;
3490
- };
3631
+ } & Partial<Record<FrozenGroupArea, Indexes>>;
3491
3632
 
3492
3633
  declare class PanelScrollGroup extends GridGroup {
3493
3634
  protected mergedCellsGroup: Group;
@@ -3545,12 +3686,13 @@ default: Adaptive;
3545
3686
  };
3546
3687
  spreadsheet: PropType<(container: S2MountContainer, dataCfg: S2DataConfig, options: SheetComponentOptions) => SpreadSheet>;
3547
3688
  onMounted: PropType<(spreadsheet: SpreadSheet) => void>;
3689
+ onUpdate: PropType<(renderOptions: S2RenderOptions) => S2RenderOptions>;
3690
+ onUpdateAfterRender: PropType<(renderOptions: S2RenderOptions) => void>;
3548
3691
  }, {
3549
3692
  s2Ref: ShallowRef<SheetExpose>;
3550
3693
  options: S2Options<TooltipContentType, Pagination, BaseTooltipOperatorMenuOptions>;
3551
3694
  }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3552
3695
  spreadsheet: (container: S2MountContainer, dataCfg: S2DataConfig, options: S2Options<TooltipContentType, Pagination, BaseTooltipOperatorMenuOptions>) => SpreadSheet;
3553
- sheetUpdate: SheetUpdateCallback;
3554
3696
  rowCellHover: (data: TargetCellInfo) => void;
3555
3697
  rowCellClick: (data: TargetCellInfo) => void;
3556
3698
  rowCellDoubleClick: (data: TargetCellInfo) => void;
@@ -3561,7 +3703,8 @@ rowCellMouseMove: (data: TargetCellInfo) => void;
3561
3703
  rowCellCollapsed: (params: RowCellCollapsedParams) => void;
3562
3704
  rowCellAllCollapsed: (isCollapsed: boolean) => void;
3563
3705
  rowCellScroll: (position: Required<ScrollOffset>) => void;
3564
- rowCellRender: (cell: ColCell) => void;
3706
+ rowCellRender: (cell: RowCell) => void;
3707
+ rowCellSelected: CellSelectedHandler;
3565
3708
  colCellHover: (data: TargetCellInfo) => void;
3566
3709
  colCellClick: (data: TargetCellInfo) => void;
3567
3710
  colCellDoubleClick: (data: TargetCellInfo) => void;
@@ -3575,6 +3718,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo;
3575
3718
  hiddenColumnsDetail: HiddenColumnsInfo[];
3576
3719
  }) => void;
3577
3720
  colCellRender: (cell: ColCell) => void;
3721
+ colCellSelected: CellSelectedHandler;
3578
3722
  dataCellHover: (data: TargetCellInfo) => void;
3579
3723
  dataCellClick: (data: TargetCellInfo) => void;
3580
3724
  dataCellDoubleClick: (data: TargetCellInfo) => void;
@@ -3587,6 +3731,7 @@ dataCellSelectMove: (metaList: ViewMetaData[]) => void;
3587
3731
  dataCellRender: (cell: DataCell) => void;
3588
3732
  dataCellEditStart: (meta: ViewMeta, cell: TableDataCell) => void;
3589
3733
  dataCellEditEnd: (meta: ViewMeta, cell: TableDataCell) => void;
3734
+ dataCellSelected: CellSelectedHandler;
3590
3735
  cornerCellHover: (data: TargetCellInfo) => void;
3591
3736
  cornerCellClick: (data: TargetCellInfo) => void;
3592
3737
  cornerCellDoubleClick: (data: TargetCellInfo) => void;
@@ -3595,6 +3740,7 @@ cornerCellMouseDown: (data: TargetCellInfo) => void;
3595
3740
  cornerCellMouseUp: (data: TargetCellInfo) => void;
3596
3741
  cornerCellMouseMove: (data: TargetCellInfo) => void;
3597
3742
  cornerCellRender: (cell: CornerCell) => void;
3743
+ cornerCellSelected: CellSelectedHandler;
3598
3744
  mergedCellsHover: (data: TargetCellInfo) => void;
3599
3745
  mergedCellsClick: (data: TargetCellInfo) => void;
3600
3746
  mergedCellsDoubleClick: (data: TargetCellInfo) => void;
@@ -3617,6 +3763,8 @@ layoutCellRender: <T extends S2CellType = S2CellType>(cell: T) => void;
3617
3763
  beforeRender: () => void;
3618
3764
  afterRender: () => void;
3619
3765
  mounted: (spreadsheet: SpreadSheet) => void;
3766
+ update: (renderOptions: S2RenderOptions) => S2RenderOptions;
3767
+ updateAfterRender: (renderOptions: S2RenderOptions) => void;
3620
3768
  destroy: () => void;
3621
3769
  layoutResize: (params: ResizeParams) => void;
3622
3770
  layoutResizeSeriesWidth: (params: ResizeParams) => void;
@@ -3651,7 +3799,7 @@ mouseHover: (event: GEvent) => void;
3651
3799
  mouseUp: (event: MouseEvent) => void;
3652
3800
  mouseDown: (event: MouseEvent) => void;
3653
3801
  mouseMove: (event: MouseEvent) => void;
3654
- selected: (cells: S2CellType[]) => void;
3802
+ selected: CellSelectedHandler;
3655
3803
  reset: (event: KeyboardEvent) => void;
3656
3804
  linkFieldJump: (data: {
3657
3805
  field: string;
@@ -3665,7 +3813,7 @@ spreadsheet: SpreadSheet;
3665
3813
  }) => void;
3666
3814
  rowCellBrushSelection: (event: GEvent) => void;
3667
3815
  colCellBrushSelection: (event: GEvent) => void;
3668
- }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
3816
+ }, string, PublicProps, Readonly<ExtractPropTypes< {
3669
3817
  sheetType: PropType<SheetType>;
3670
3818
  dataCfg: PropType<S2DataConfig>;
3671
3819
  themeCfg: PropType<ThemeCfg>;
@@ -3692,8 +3840,9 @@ default: Adaptive;
3692
3840
  };
3693
3841
  spreadsheet: PropType<(container: S2MountContainer, dataCfg: S2DataConfig, options: SheetComponentOptions) => SpreadSheet>;
3694
3842
  onMounted: PropType<(spreadsheet: SpreadSheet) => void>;
3843
+ onUpdate: PropType<(renderOptions: S2RenderOptions) => S2RenderOptions>;
3844
+ onUpdateAfterRender: PropType<(renderOptions: S2RenderOptions) => void>;
3695
3845
  }>> & {
3696
- onSheetUpdate?: (params: S2RenderOptions) => any;
3697
3846
  onRowCellHover?: (data: TargetCellInfo) => any;
3698
3847
  onRowCellClick?: (data: TargetCellInfo) => any;
3699
3848
  onRowCellDoubleClick?: (data: TargetCellInfo) => any;
@@ -3704,7 +3853,8 @@ onRowCellMouseMove?: (data: TargetCellInfo) => any;
3704
3853
  onRowCellCollapsed?: (params: RowCellCollapsedParams) => any;
3705
3854
  onRowCellAllCollapsed?: (isCollapsed: boolean) => any;
3706
3855
  onRowCellScroll?: (position: Required<ScrollOffset>) => any;
3707
- onRowCellRender?: (cell: ColCell) => any;
3856
+ onRowCellRender?: (cell: RowCell) => any;
3857
+ onRowCellSelected?: (cells: S2CellType<ViewMeta>[], detail: CellSelectedDetail) => any;
3708
3858
  onColCellHover?: (data: TargetCellInfo) => any;
3709
3859
  onColCellClick?: (data: TargetCellInfo) => any;
3710
3860
  onColCellDoubleClick?: (data: TargetCellInfo) => any;
@@ -3718,6 +3868,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo;
3718
3868
  hiddenColumnsDetail: HiddenColumnsInfo[];
3719
3869
  }) => any;
3720
3870
  onColCellRender?: (cell: ColCell) => any;
3871
+ onColCellSelected?: (cells: S2CellType<ViewMeta>[], detail: CellSelectedDetail) => any;
3721
3872
  onDataCellHover?: (data: TargetCellInfo) => any;
3722
3873
  onDataCellClick?: (data: TargetCellInfo) => any;
3723
3874
  onDataCellDoubleClick?: (data: TargetCellInfo) => any;
@@ -3730,6 +3881,7 @@ onDataCellSelectMove?: (metaList: ViewMetaData[]) => any;
3730
3881
  onDataCellRender?: (cell: DataCell) => any;
3731
3882
  onDataCellEditStart?: (meta: ViewMeta, cell: TableDataCell) => any;
3732
3883
  onDataCellEditEnd?: (meta: ViewMeta, cell: TableDataCell) => any;
3884
+ onDataCellSelected?: (cells: S2CellType<ViewMeta>[], detail: CellSelectedDetail) => any;
3733
3885
  onCornerCellHover?: (data: TargetCellInfo) => any;
3734
3886
  onCornerCellClick?: (data: TargetCellInfo) => any;
3735
3887
  onCornerCellDoubleClick?: (data: TargetCellInfo) => any;
@@ -3738,6 +3890,7 @@ onCornerCellMouseDown?: (data: TargetCellInfo) => any;
3738
3890
  onCornerCellMouseUp?: (data: TargetCellInfo) => any;
3739
3891
  onCornerCellMouseMove?: (data: TargetCellInfo) => any;
3740
3892
  onCornerCellRender?: (cell: CornerCell) => any;
3893
+ onCornerCellSelected?: (cells: S2CellType<ViewMeta>[], detail: CellSelectedDetail) => any;
3741
3894
  onMergedCellsHover?: (data: TargetCellInfo) => any;
3742
3895
  onMergedCellsClick?: (data: TargetCellInfo) => any;
3743
3896
  onMergedCellsDoubleClick?: (data: TargetCellInfo) => any;
@@ -3760,6 +3913,8 @@ onLayoutCellRender?: (cell: S2CellType) => any;
3760
3913
  onBeforeRender?: () => any;
3761
3914
  onAfterRender?: () => any;
3762
3915
  onMounted?: (spreadsheet: SpreadSheet) => any;
3916
+ onUpdate?: (renderOptions: S2RenderOptions) => any;
3917
+ onUpdateAfterRender?: (renderOptions: S2RenderOptions) => any;
3763
3918
  onDestroy?: () => any;
3764
3919
  onLayoutResize?: (params: ResizeParams) => any;
3765
3920
  onLayoutResizeSeriesWidth?: (params: ResizeParams) => any;
@@ -3794,7 +3949,7 @@ onMouseHover?: (event: GEvent) => any;
3794
3949
  onMouseUp?: (event: MouseEvent) => any;
3795
3950
  onMouseDown?: (event: MouseEvent) => any;
3796
3951
  onMouseMove?: (event: MouseEvent) => any;
3797
- onSelected?: (cells: S2CellType[]) => any;
3952
+ onSelected?: (cells: S2CellType<ViewMeta>[], detail: CellSelectedDetail) => any;
3798
3953
  onReset?: (event: KeyboardEvent) => any;
3799
3954
  onLinkFieldJump?: (data: {
3800
3955
  field: string;
@@ -3909,7 +4064,7 @@ declare type ResizeHandler = (data: {
3909
4064
 
3910
4065
  declare interface ResizeInfo_2 {
3911
4066
  theme: ResizeArea;
3912
- type: ResizeDirectionType;
4067
+ type: `${ResizeDirectionType}`;
3913
4068
  offsetX: number;
3914
4069
  offsetY: number;
3915
4070
  width: number;
@@ -3937,9 +4092,9 @@ declare interface ResizeInteractionOptions {
3937
4092
  /** 列头垂直方向 resize -> 针对列头各层级节点 */
3938
4093
  colCellVertical?: boolean;
3939
4094
  /** 行高调整时,影响当前行还是全部行 */
3940
- rowResizeType?: ResizeType;
4095
+ rowResizeType?: `${ResizeType}`;
3941
4096
  /** 列高调整时,影响当前列还是全部列 */
3942
- colResizeType?: ResizeType;
4097
+ colResizeType?: `${ResizeType}`;
3943
4098
  /** 是否允许调整, 返回 false 时拖拽的宽高无效 */
3944
4099
  disable?: (resizeInfo: ResizeInfo_2) => boolean;
3945
4100
  /** 是否显示热区 */
@@ -3974,39 +4129,221 @@ declare class RootInteraction {
3974
4129
  spreadsheet: SpreadSheet_2;
3975
4130
  interactions: Map<string, BaseEvent>;
3976
4131
  intercepts: Set<Intercept>;
4132
+ /**
4133
+ * hover有 keep-hover 态,是个计时器,hover后 800毫秒还在当前 cell 的情况下,该 cell 进入 keep-hover 状态
4134
+ * 在任何触发点击,或者点击空白区域时,说明已经不是 hover了,因此需要取消这个计时器。
4135
+ */
3977
4136
  private hoverTimer;
3978
4137
  eventController: EventController;
3979
4138
  private defaultState;
3980
4139
  constructor(spreadsheet: SpreadSheet_2);
4140
+ /**
4141
+ * 销毁交互
4142
+ * @example s2.interaction.destroy()
4143
+ */
3981
4144
  destroy(): void;
4145
+ /**
4146
+ * 重置交互
4147
+ * @example s2.interaction.reset()
4148
+ */
3982
4149
  reset(): void;
3983
4150
  private onTriggerInteractionsResetEffect;
4151
+ /**
4152
+ * 设置交互状态
4153
+ * @example
4154
+ s2.interaction.setState({
4155
+ stateName: InteractionStateName.SELECTED,
4156
+ cells: [{
4157
+ "id": "root[&]浙江省[&]舟山市",
4158
+ "colIndex": -1,
4159
+ "rowIndex": 3,
4160
+ "type": "rowCell"
4161
+ }]
4162
+ })
4163
+ */
3984
4164
  setState(interactionStateInfo: InteractionStateInfo): void;
4165
+ /**
4166
+ * 获取交互状态
4167
+ * @example s2.interaction.getState()
4168
+ */
3985
4169
  getState(): InteractionStateInfo;
4170
+ /**
4171
+ * 设置通过交互触发过更新的单元格
4172
+ * @example s2.interaction.setInteractedCells(dataCell)
4173
+ */
3986
4174
  setInteractedCells(cell: S2CellType_2): void;
4175
+ /**
4176
+ * 获取通过交互触发过更新的单元格
4177
+ * @example s2.interaction.getInteractedCells()
4178
+ */
3987
4179
  getInteractedCells(): S2CellType_2<ViewMeta_2>[];
4180
+ /**
4181
+ * 重置交互状态
4182
+ * @example s2.interaction.resetState()
4183
+ */
3988
4184
  resetState(): void;
3989
- getCurrentStateName(): InteractionStateName | undefined;
3990
- isEqualStateName(stateName: InteractionStateName): boolean;
4185
+ /**
4186
+ * 获取当前交互状态名
4187
+ * @example s2.interaction.getCurrentStateName()
4188
+ */
4189
+ getCurrentStateName(): "selected" | "hover" | "allSelected" | "rowCellBrushSelected" | "colCellBrushSelected" | "dataCellBrushSelected" | "unselected" | "hoverFocus" | "highlight" | "searchResult" | "prepareSelect" | undefined;
4190
+ /**
4191
+ * 是否和当前状态名相同
4192
+ * @example s2.interaction.isEqualStateName(InteractionStateName.SELECTED)
4193
+ */
4194
+ isEqualStateName(stateName: `${InteractionStateName}`): boolean;
3991
4195
  private isStateOf;
4196
+ /**
4197
+ * 是否是选中状态 (含单选,多选,圈选,全选)
4198
+ * @example s2.interaction.isSelectedState()
4199
+ */
3992
4200
  isSelectedState(): boolean;
4201
+ /**
4202
+ * 是否是刷选状态
4203
+ * @example s2.interaction.isBrushSelectedState()
4204
+ */
4205
+ isBrushSelectedState(): boolean;
4206
+ /**
4207
+ * 是否是全选状态
4208
+ * @example s2.interaction.isAllSelectedState()
4209
+ */
3993
4210
  isAllSelectedState(): boolean;
4211
+ /**
4212
+ * 是否是悬停聚焦状态
4213
+ * @example s2.interaction.isHoverFocusState()
4214
+ */
3994
4215
  isHoverFocusState(): boolean;
4216
+ /**
4217
+ * 是否是悬停状态
4218
+ * @example s2.interaction.isHoverState()
4219
+ */
3995
4220
  isHoverState(): boolean;
4221
+ /**
4222
+ * 是否是激活的单元格
4223
+ * @example s2.interaction.isActiveCell(cell)
4224
+ */
3996
4225
  isActiveCell(cell: S2CellType_2): boolean;
4226
+ /**
4227
+ * 是否是选中的单元格
4228
+ * @example s2.interaction.isSelectedCell(cell)
4229
+ */
3997
4230
  isSelectedCell(cell: S2CellType_2): boolean;
4231
+ /**
4232
+ * 获取当前 interaction 记录的 Cells 元信息列表,包括不在可视区域内的格子
4233
+ * @example s2.interaction.getCells(CellType.DATA_CELL)
4234
+ */
3998
4235
  getCells(cellType?: CellType[]): CellMeta[];
4236
+ /**
4237
+ * 获取已激活单元格 (不含非可视区域)
4238
+ * @example s2.interaction.getActiveCells()
4239
+ */
3999
4240
  getActiveCells(): S2CellType_2[];
4000
4241
  getActiveDataCells(): S2CellType_2[];
4001
4242
  getActiveRowCells(): S2CellType_2[];
4002
4243
  getActiveColCells(): S2CellType_2[];
4244
+ /**
4245
+ * 清除单元格交互样式
4246
+ * @example s2.interaction.clearStyleIndependent()
4247
+ */
4003
4248
  clearStyleIndependent(): void;
4249
+ /**
4250
+ * 获取未选中的单元格 (不含非可视区域)
4251
+ * @example s2.interaction.getUnSelectedDataCells()
4252
+ */
4004
4253
  getUnSelectedDataCells(): DataCell_2[];
4005
- selectAll: () => void;
4006
- selectHeaderCell: (selectHeaderCellInfo?: SelectHeaderCellInfo) => true | undefined;
4254
+ private scrollToCellByMeta;
4255
+ /**
4256
+ * 滚动至指定位置
4257
+ * @example
4258
+ s2.interaction.scrollTo({
4259
+ skipScrollEvent: false,
4260
+ offsetX: { value: 100, animate: true },
4261
+ offsetY: { value: 100, animate: true },
4262
+ })
4263
+ */
4264
+ scrollTo(offsetConfig: ScrollOffsetConfig): void;
4265
+ /**
4266
+ * 滚动至指定单元格节点
4267
+ * @example s2.interaction.scrollToNode(rowNode, { animate: true, skipScrollEvent: true })
4268
+ */
4269
+ scrollToNode(meta: ViewMeta_2 | Node_2_2, options?: CellScrollToOptions): void;
4270
+ /**
4271
+ * 滚动至指定单元格
4272
+ * @example s2.interaction.scrollToNode(rowCell, { animate: true, skipScrollEvent: true })
4273
+ */
4274
+ scrollToCell(cell: S2CellType_2, options?: CellScrollToOptions): void;
4275
+ /**
4276
+ * 滚动至指定单元格 id 对应的位置
4277
+ * @example s2.interaction.scrollToCellById('root[&]四川省[&]成都市', { animate: true, skipScrollEvent: true })
4278
+ */
4279
+ scrollToCellById(id: string, options?: CellScrollToOptions): void;
4280
+ /**
4281
+ * 滚动至顶部
4282
+ * @example s2.interaction.scrollToTop({ animate: true, skipScrollEvent: true })
4283
+ */
4284
+ scrollToTop(options?: CellScrollToOptions): void;
4285
+ /**
4286
+ * 滚动至右边
4287
+ * @example s2.interaction.scrollToRight({ animate: true, skipScrollEvent: true })
4288
+ */
4289
+ scrollToRight(options?: CellScrollToOptions): void;
4290
+ /**
4291
+ * 滚动至底部
4292
+ * @example s2.interaction.scrollToBottom({ animate: true, skipScrollEvent: true })
4293
+ */
4294
+ scrollToBottom(options?: CellScrollToOptions): void;
4295
+ /**
4296
+ * 滚动至左边
4297
+ * @example s2.interaction.scrollToLeft({ animate: true, skipScrollEvent: true })
4298
+ */
4299
+ scrollToLeft(options?: CellScrollToOptions): void;
4300
+ /**
4301
+ * 全选
4302
+ * @example s2.interaction.selectAll()
4303
+ */
4304
+ selectAll(): void;
4305
+ /**
4306
+ * 高亮指定单元格 (可视范围内)
4307
+ * @example s2.interaction.highlightCell(dataCell, options)
4308
+ */
4309
+ highlightCell(cell: S2CellType_2, options?: CellScrollToOptions): void;
4310
+ /**
4311
+ * 选中指定单元格 (可视范围内)
4312
+ * @example s2.interaction.selectCell(dataCell, options)
4313
+ */
4314
+ selectCell(cell: S2CellType_2, options?: CellScrollToOptions): void;
4315
+ /**
4316
+ * 改变指定单元格状态 (如: 选中/高亮/多选等) (可视范围内)
4317
+ * @example
4318
+ s2.interaction.changeCell({
4319
+ cell: rowCell,
4320
+ stateName: InteractionStateName.SELECTED,
4321
+ isMultiSelection: false,
4322
+ scrollIntoView: false,
4323
+ animate: true,
4324
+ skipScrollEvent: true,
4325
+ })
4326
+ */
4327
+ changeCell(options?: ChangeCellOptions): true | undefined;
4328
+ /**
4329
+ * 高亮节点对应的单元格
4330
+ * @example s2.interaction.highlightNodes([node])
4331
+ */
4007
4332
  highlightNodes: (nodes?: Node_2_2[]) => void;
4333
+ /**
4334
+ * 合并单元格
4335
+ * @example s2.interaction.mergeCells()
4336
+ */
4008
4337
  mergeCells: (cellsInfo?: MergedCellInfo[], hideData?: boolean) => void;
4009
- unmergeCell: (removedCells: MergedCell_2) => void;
4338
+ /**
4339
+ * 取消合并单元格
4340
+ * @example s2.interaction.unmergeCell(mergedCell)
4341
+ */
4342
+ unmergeCell: (removedCell: MergedCell_2) => void;
4343
+ /**
4344
+ * 隐藏列头
4345
+ * @example s2.interaction.hideColumns(['city'])
4346
+ */
4010
4347
  hideColumns(hiddenColumnFields?: string[], forceRender?: boolean): Promise<void>;
4011
4348
  private getBrushSelectionInfo;
4012
4349
  private getDefaultInteractions;
@@ -4014,12 +4351,41 @@ declare class RootInteraction {
4014
4351
  private registerEventController;
4015
4352
  draw(): void;
4016
4353
  clearState(): void;
4354
+ /**
4355
+ * 改变单元格交互状态后,进行更新和重新绘制
4356
+ * @example
4357
+ s2.interaction.changeState({
4358
+ cells: [{ id: 'city', colIndex: 1, rowIndex : 2, type: 'rowCell' }],
4359
+ stateName: InteractionStateName.SELECTED,
4360
+ force: false
4361
+ })
4362
+ */
4017
4363
  changeState(interactionStateInfo: InteractionStateInfo): void;
4018
- updatePanelGroupAllDataCells(): void;
4364
+ /**
4365
+ * 更新所有数值单元格
4366
+ * @example s2.interaction.updateAllDataCells()
4367
+ */
4368
+ updateAllDataCells(): void;
4369
+ /**
4370
+ * 更新指定单元格
4371
+ * @example s2.interaction.updateCells([rowCell, dataCell])
4372
+ */
4019
4373
  updateCells(cells?: S2CellType_2[]): void;
4020
- addIntercepts(interceptTypes?: InterceptType[]): void;
4021
- hasIntercepts(interceptTypes?: InterceptType[]): boolean;
4022
- removeIntercepts(interceptTypes?: InterceptType[]): void;
4374
+ /**
4375
+ * 添加交互拦截
4376
+ * @example s2.interaction.addIntercepts([InterceptType.HOVER])
4377
+ */
4378
+ addIntercepts(interceptTypes?: `${InterceptType}`[]): void;
4379
+ /**
4380
+ * 是否有指定交互拦截
4381
+ * @example s2.interaction.hasIntercepts([InterceptType.HOVER])
4382
+ */
4383
+ hasIntercepts(interceptTypes?: `${InterceptType}`[]): boolean;
4384
+ /**
4385
+ * 移除交互拦截
4386
+ * @example s2.interaction.removeIntercepts([InterceptType.HOVER])
4387
+ */
4388
+ removeIntercepts(interceptTypes?: `${InterceptType}`[]): void;
4023
4389
  clearHoverTimer(): void;
4024
4390
  setHoverTimer(timer: number): void;
4025
4391
  getHoverTimer(): number | null;
@@ -4030,9 +4396,12 @@ declare class RootInteraction {
4030
4396
  updateDataCellRelevantHeaderCells(stateName: InteractionStateName, meta: ViewMeta_2): void;
4031
4397
  updateDataCellRelevantRowCells(stateName: InteractionStateName, meta: ViewMeta_2): void;
4032
4398
  updateDataCellRelevantColCells(stateName: InteractionStateName, meta: ViewMeta_2): void;
4399
+ emitSelectEvent(options: CellSelectedDetail_2 & {
4400
+ cells?: S2CellType_2[];
4401
+ }): void;
4033
4402
  }
4034
4403
 
4035
- declare class RowCell extends HeaderCell<RowHeaderConfig> {
4404
+ declare class RowCell_2 extends HeaderCell<RowHeaderConfig> {
4036
4405
  get cellType(): CellType;
4037
4406
  protected getBorderPositions(): CellBorderPosition[];
4038
4407
  protected initCell(): void;
@@ -4041,6 +4410,7 @@ declare class RowCell extends HeaderCell<RowHeaderConfig> {
4041
4410
  backgroundColorOpacity: number;
4042
4411
  } & {
4043
4412
  backgroundColor: string;
4413
+ backgroundColorOpacity: number;
4044
4414
  intelligentReverseTextColor: boolean;
4045
4415
  };
4046
4416
  protected showTreeIcon(): boolean;
@@ -4051,8 +4421,11 @@ declare class RowCell extends HeaderCell<RowHeaderConfig> {
4051
4421
  protected drawTreeIcon(): void;
4052
4422
  protected drawTreeLeafNodeAlignDot(): void;
4053
4423
  protected isBolderText(): boolean;
4054
- drawTextShape(): void;
4055
4424
  protected drawResizeAreaInLeaf(): void;
4425
+ protected getHorizontalResizeAreaOffset(): {
4426
+ offsetX: number;
4427
+ offsetY: number;
4428
+ };
4056
4429
  protected getContentIndent(): number;
4057
4430
  protected getTextIndent(): number;
4058
4431
  protected isTreeLevel(): any;
@@ -4080,17 +4453,19 @@ declare interface RowCellStyle extends BaseCellStyle, CellTextWordWrapStyle {
4080
4453
  showTreeLeafNodeAlignDot?: boolean;
4081
4454
  /**
4082
4455
  * 收起所有 (对应角头收起展开按钮)
4456
+ * @description 优先级 `collapseFields` > `expandDepth` > `collapseAll`
4083
4457
  */
4084
4458
  collapseAll?: boolean | null;
4085
4459
  /**
4086
4460
  * 折叠节点
4087
- * 优先级大于 collapseAll 和 expandDepth
4088
4461
  * id 级别: { ['root[&]浙江省']: true, ['root[&]河南省']: false } 即 只有 浙江省 对应的节点才会被折叠
4089
4462
  * field 级别: { city: true, type: false } : 即 所有 city 对应的维值都会被折叠
4463
+ * @description 优先级 `collapseFields` > `expandDepth` > `collapseAll`
4090
4464
  */
4091
4465
  collapseFields?: Record<string, boolean> | null;
4092
4466
  /**
4093
- * 行头默认展开到第几层 (从 0 开始)
4467
+ * 行头节点默认展开到第几层 (从 0 开始)
4468
+ * @description 优先级 `collapseFields` > `expandDepth` > `collapseAll`
4094
4469
  */
4095
4470
  expandDepth?: number | null;
4096
4471
  }
@@ -4099,22 +4474,37 @@ declare interface RowCellStyle extends BaseCellStyle, CellTextWordWrapStyle {
4099
4474
  * Row Header for SpreadSheet
4100
4475
  */
4101
4476
  declare class RowHeader extends BaseHeader<RowHeaderConfig> {
4102
- scrollGroup: Group;
4103
- frozenRowGroup: Group;
4104
- constructor(config: RowHeaderConfig);
4105
- private initGroups;
4106
- getCellInstance(node: Node_2_2): RowCell;
4107
- protected isRowCellInRect(node: Node_2_2): boolean;
4108
- isFrozenRow(node: Node_2_2): boolean;
4477
+ protected initGroups(): void;
4478
+ getCellInstance(node: Node_2_2): RowCell_2 | SeriesNumberCell_2;
4479
+ protected isCellInRect(node: Node_2_2): boolean;
4109
4480
  protected getCellGroup(item: Node_2_2): Group;
4110
4481
  protected layout(): void;
4482
+ protected emitRenderEvent(cell: RowCell_2 | SeriesNumberCell_2): void;
4111
4483
  protected offset(): void;
4112
4484
  protected clip(): void;
4113
- clear(): void;
4114
4485
  }
4115
4486
 
4116
4487
  declare type RowHeaderConfig = BaseHeaderConfig;
4117
4488
 
4489
+ declare interface S2BaseFrozenOptions {
4490
+ /**
4491
+ * 行头冻结数量
4492
+ */
4493
+ rowCount?: number;
4494
+ /**
4495
+ * 行尾冻结数量
4496
+ */
4497
+ trailingRowCount?: number;
4498
+ /**
4499
+ * 列头冻结数量
4500
+ */
4501
+ colCount?: number;
4502
+ /**
4503
+ * 列尾冻结数量
4504
+ */
4505
+ trailingColCount?: number;
4506
+ }
4507
+
4118
4508
  declare interface S2BasicOptions<T = TooltipContentType_2, P = Pagination_2, Menu = BaseTooltipOperatorMenuOptions_2> {
4119
4509
  /**
4120
4510
  * 表格宽度
@@ -4217,7 +4607,7 @@ declare interface S2BasicOptions<T = TooltipContentType_2, P = Pagination_2, Men
4217
4607
  /**
4218
4608
  * 设备类型: pc / mobile
4219
4609
  */
4220
- device?: DeviceType;
4610
+ device?: `${DeviceType}`;
4221
4611
  /**
4222
4612
  * 自定义 AntV/G 渲染引擎配置参数 & 插件注册
4223
4613
  * @see https://g.antv.antgroup.com/plugins/intro
@@ -4235,7 +4625,7 @@ declare interface S2BasicOptions<T = TooltipContentType_2, P = Pagination_2, Men
4235
4625
  };
4236
4626
  },
4237
4627
  */
4238
- transformCanvasConfig?: (renderer: CanvasConfig['renderer'], spreadsheet: SpreadSheet_2) => (Partial<CanvasConfig> | null | undefined) | void;
4628
+ transformCanvasConfig?: (renderer: Renderer, spreadsheet: SpreadSheet_2) => (Partial<CanvasConfig> | null | undefined) | void;
4239
4629
  /** *********** 自定义单元格 hooks **************** */
4240
4630
  /**
4241
4631
  * 自定义数值单元格
@@ -4256,7 +4646,7 @@ declare interface S2BasicOptions<T = TooltipContentType_2, P = Pagination_2, Men
4256
4646
  * 自定义行头单元格
4257
4647
  * @see https://s2.antv.antgroup.com/examples/custom/custom-cell#row-cell
4258
4648
  */
4259
- rowCell?: CellCallback<RowHeaderConfig, RowCell>;
4649
+ rowCell?: CellCallback<RowHeaderConfig, RowCell_2>;
4260
4650
  /**
4261
4651
  * 自定义列头单元格
4262
4652
  * @see https://s2.antv.antgroup.com/examples/custom/custom-cell#col-cell
@@ -4316,11 +4706,12 @@ declare interface S2BasicOptions<T = TooltipContentType_2, P = Pagination_2, Men
4316
4706
  facet?: (spreadsheet: SpreadSheet_2) => BaseFacet;
4317
4707
  }
4318
4708
 
4319
- declare type S2CellType_2<T extends SimpleBBox = ViewMeta_2> = DataCell_2 | HeaderCell | ColCell_2 | CornerCell_2 | RowCell | SeriesNumberCell_2 | MergedCell_2 | TableDataCell_2 | TableCornerCell | TableSeriesNumberCell | BaseCell<T>;
4709
+ declare type S2CellType_2<T extends SimpleBBox = ViewMeta_2> = DataCell_2 | HeaderCell | ColCell_2 | CornerCell_2 | RowCell_2 | SeriesNumberCell_2 | MergedCell_2 | TableDataCell_2 | TableCornerCell | TableSeriesNumberCell | BaseCell<T>;
4320
4710
 
4321
4711
  declare interface S2DataConfig_2 {
4322
4712
  /**
4323
4713
  * 原始明细数据
4714
+ * @see https://assets.antv.antgroup.com/s2/basic.json
4324
4715
  */
4325
4716
  data: RawData_2[];
4326
4717
  /**
@@ -4329,14 +4720,18 @@ declare interface S2DataConfig_2 {
4329
4720
  fields: Fields;
4330
4721
  /**
4331
4722
  * 字段元数据
4723
+ * @see https://s2.antv.antgroup.com/manual/basic/formatter
4332
4724
  */
4333
4725
  meta?: Meta[];
4334
4726
  /**
4335
4727
  * 排序配置
4728
+ * @see https://s2.antv.antgroup.com/manual/basic/sort/basic
4336
4729
  */
4337
4730
  sortParams?: SortParams_2;
4338
4731
  /**
4339
4732
  * 筛选配置
4733
+ * @see https://s2.antv.antgroup.com/api/general/s2-data-config#filterparam
4734
+ * @example https://s2.antv.antgroup.com/examples/case/data-preview/#index
4340
4735
  */
4341
4736
  filterParams?: FilterParam[];
4342
4737
  [key: string]: unknown;
@@ -4356,6 +4751,7 @@ declare enum S2Event {
4356
4751
  ROW_CELL_COLLAPSED = "row-cell:collapsed",
4357
4752
  ROW_CELL_ALL_COLLAPSED = "row-cell:all-collapsed",
4358
4753
  ROW_CELL_RENDER = "row-cell:render",
4754
+ ROW_CELL_SELECTED = "row-cell:selected",
4359
4755
  ROW_CELL_COLLAPSED__PRIVATE = "row-cell:collapsed__private",
4360
4756
  ROW_CELL_ALL_COLLAPSED__PRIVATE = "row-cell:all-collapsed__private",
4361
4757
  /** ================ Col Cell ================ */
@@ -4370,6 +4766,7 @@ declare enum S2Event {
4370
4766
  COL_CELL_EXPANDED = "col-cell:expanded",
4371
4767
  COL_CELL_HIDDEN = "col-cell:hidden",
4372
4768
  COL_CELL_RENDER = "col-cell:render",
4769
+ COL_CELL_SELECTED = "col-cell:selected",
4373
4770
  /** ================ Data Cell ================ */
4374
4771
  DATA_CELL_HOVER = "data-cell:hover",
4375
4772
  DATA_CELL_CLICK = "data-cell:click",
@@ -4381,6 +4778,7 @@ declare enum S2Event {
4381
4778
  DATA_CELL_BRUSH_SELECTION = "data-cell:brush-selection",
4382
4779
  DATA_CELL_SELECT_MOVE = "data-cell:select-move",
4383
4780
  DATA_CELL_RENDER = "data-cell:render",
4781
+ DATA_CELL_SELECTED = "data-cell:selected",
4384
4782
  /** ================ Corner Cell ================ */
4385
4783
  CORNER_CELL_HOVER = "corner-cell:hover",
4386
4784
  CORNER_CELL_CLICK = "corner-cell:click",
@@ -4390,6 +4788,7 @@ declare enum S2Event {
4390
4788
  CORNER_CELL_MOUSE_UP = "corner-cell:mouse-up",
4391
4789
  CORNER_CELL_MOUSE_MOVE = "corner-cell:mouse-move",
4392
4790
  CORNER_CELL_RENDER = "corner-cell:render",
4791
+ CORNER_CELL_SELECTED = "corner-cell:selected",
4393
4792
  /** ================ Merged Cells ================ */
4394
4793
  MERGED_CELLS_HOVER = "merged-cells:hover",
4395
4794
  MERGED_CELLS_CLICK = "merged-cells:click",
@@ -4446,30 +4845,29 @@ declare enum S2Event {
4446
4845
  }
4447
4846
 
4448
4847
  declare interface S2EventHandler {
4449
- type: keyof EmitterType;
4848
+ type: `${keyof EmitterType}`;
4450
4849
  handler: EmitterType[keyof EmitterType];
4451
4850
  }
4452
4851
 
4453
- declare type S2MountContainer_2 = string | Element;
4454
-
4455
- declare interface S2Options_2<T = TooltipContentType_2, P = Pagination_2, Menu = BaseTooltipOperatorMenuOptions_2> extends S2BasicOptions<T, P, Menu>, S2PivotSheetOptions {
4852
+ declare interface S2FrozenOptions {
4456
4853
  /**
4457
4854
  * 行列冻结
4458
4855
  */
4459
- frozen?: S2PivotSheetFrozenOptions & S2TableSheetFrozenOptions;
4856
+ frozen?: S2PivotSheetFrozenOptions & S2BaseFrozenOptions;
4857
+ }
4858
+
4859
+ declare type S2MountContainer_2 = string | Element;
4860
+
4861
+ declare interface S2Options_2<T = TooltipContentType_2, P = Pagination_2, Menu = BaseTooltipOperatorMenuOptions_2> extends S2BasicOptions<T, P, Menu>, S2PivotSheetOptions, S2FrozenOptions {
4460
4862
  }
4461
4863
 
4462
- declare interface S2PivotSheetFrozenOptions {
4864
+ declare interface S2PivotSheetFrozenOptions extends S2BaseFrozenOptions {
4463
4865
  /**
4464
4866
  * 是否冻结行头 (含角头区域, 透视表有效),
4465
4867
  * 当值为 number 时,标识行头冻结的最大区域,取值范围: (0, 1),0 表示不固定行头
4466
4868
  * 当值为 boolean 时,true 对应冻结最大区域为 0.5, false 对应 0
4467
4869
  */
4468
4870
  rowHeader?: boolean | number;
4469
- /**
4470
- * 是否冻结首行 (适用于总计置于顶部, 树状模式等场景)
4471
- */
4472
- firstRow?: boolean;
4473
4871
  }
4474
4872
 
4475
4873
  declare interface S2PivotSheetOptions {
@@ -4497,6 +4895,9 @@ declare interface S2PivotSheetOptions {
4497
4895
  cornerExtraFieldText?: string;
4498
4896
  }
4499
4897
 
4898
+ /**
4899
+ * 自定义渲染模式
4900
+ */
4500
4901
  declare interface S2RenderOptions_2 {
4501
4902
  /**
4502
4903
  * 是否重新加载数据
@@ -4505,7 +4906,7 @@ declare interface S2RenderOptions_2 {
4505
4906
  /**
4506
4907
  * 是否重新生成数据集
4507
4908
  */
4508
- reBuildDataSet?: boolean;
4909
+ rebuildDataSet?: boolean;
4509
4910
  /**
4510
4911
  * 是否重新生成列头隐藏信息
4511
4912
  */
@@ -4516,7 +4917,7 @@ declare interface S2Style {
4516
4917
  /**
4517
4918
  * 布局类型
4518
4919
  */
4519
- layoutWidthType?: LayoutWidthType;
4920
+ layoutWidthType?: `${LayoutWidthType}`;
4520
4921
  /**
4521
4922
  * 数值单元格配置
4522
4923
  */
@@ -4543,25 +4944,6 @@ declare interface S2Style {
4543
4944
  seriesNumberCell?: SeriesNumberCellStyle | null;
4544
4945
  }
4545
4946
 
4546
- declare interface S2TableSheetFrozenOptions {
4547
- /**
4548
- * 行头冻结数量 (明细表有效)
4549
- */
4550
- rowCount?: number;
4551
- /**
4552
- * 列头冻结数量 (明细表有效)
4553
- */
4554
- colCount?: number;
4555
- /**
4556
- * 行尾冻结数量 (明细表有效)
4557
- */
4558
- trailingRowCount?: number;
4559
- /**
4560
- * 列尾冻结数量 (明细表有效)
4561
- */
4562
- trailingColCount?: number;
4563
- }
4564
-
4565
4947
  declare interface S2Theme extends CellThemes {
4566
4948
  /** 列宽行高调整热区 */
4567
4949
  resizeArea?: ResizeArea;
@@ -4674,7 +5056,9 @@ declare interface ScrollBarTheme {
4674
5056
 
4675
5057
  declare enum ScrollDirection {
4676
5058
  SCROLL_UP = "scrollUp",
4677
- SCROLL_DOWN = "scrollDown"
5059
+ SCROLL_DOWN = "scrollDown",
5060
+ SCROLL_LEFT = "scrollLeft",
5061
+ SCROLL_RIGHT = "scrollRight"
4678
5062
  }
4679
5063
 
4680
5064
  declare interface ScrollOffset_2 {
@@ -4683,19 +5067,36 @@ declare interface ScrollOffset_2 {
4683
5067
  rowHeaderScrollX?: number;
4684
5068
  }
4685
5069
 
5070
+ declare interface ScrollOffsetConfig extends Pick<CellScrollToOptions, 'skipScrollEvent'> {
5071
+ /**
5072
+ * 行头水平偏移量
5073
+ */
5074
+ rowHeaderOffsetX?: {
5075
+ value: number | undefined;
5076
+ animate?: boolean;
5077
+ };
5078
+ /**
5079
+ * 水平偏移量
5080
+ */
5081
+ offsetX?: {
5082
+ value: number | undefined;
5083
+ animate?: boolean;
5084
+ };
5085
+ /**
5086
+ * 垂直偏移量
5087
+ */
5088
+ offsetY?: {
5089
+ value: number | undefined;
5090
+ animate?: boolean;
5091
+ };
5092
+ }
5093
+
4686
5094
  declare interface ScrollSpeedRatio {
4687
5095
  horizontal?: number;
4688
5096
  vertical?: number;
4689
5097
  }
4690
5098
 
4691
- declare type SelectedHandler = (cells: S2CellType_2[]) => void;
4692
-
4693
- declare interface SelectHeaderCellInfo {
4694
- cell: S2CellType_2<ViewMeta_2>;
4695
- isMultiSelection?: boolean;
4696
- }
4697
-
4698
- declare class SeriesNumberCell_2 extends HeaderCell {
5099
+ declare class SeriesNumberCell_2 extends RowCell_2 {
4699
5100
  get cellType(): CellType;
4700
5101
  protected getBorderPositions(): CellBorderPosition[];
4701
5102
  protected initCell(): void;
@@ -4722,7 +5123,6 @@ declare class SeriesNumberCell_2 extends HeaderCell {
4722
5123
  };
4723
5124
  protected getFormattedFieldValue(): FormatResult;
4724
5125
  getMaxTextWidth(): number;
4725
- protected getTextPosition(): PointLike;
4726
5126
  protected isBolderText(): boolean;
4727
5127
  findFieldCondition(): undefined;
4728
5128
  mappingValue(): undefined;
@@ -4732,9 +5132,7 @@ declare class SeriesNumberCell_2 extends HeaderCell {
4732
5132
  declare interface SeriesNumberCellStyle extends CellTextWordWrapStyle {
4733
5133
  }
4734
5134
 
4735
- declare class SeriesNumberHeader extends BaseHeader<BaseHeaderConfig> {
4736
- constructor(config: BaseHeaderConfig);
4737
- protected getCellInstance(node: Node_2_2): SeriesNumberCell_2;
5135
+ declare class SeriesNumberHeader extends RowHeader {
4738
5136
  /**
4739
5137
  * Get seriesNumber header by config
4740
5138
  */
@@ -4745,13 +5143,12 @@ declare class SeriesNumberHeader extends BaseHeader<BaseHeaderConfig> {
4745
5143
  spreadsheet: SpreadSheet_2;
4746
5144
  cornerWidth: number;
4747
5145
  }): SeriesNumberHeader;
4748
- clip(): void;
4749
- layout(): void;
4750
- protected offset(): void;
4751
- getNodes(): Node_2_2[];
5146
+ protected initGroups(): void;
5147
+ getCellInstance(node: Node_2_2): SeriesNumberCell_2;
5148
+ protected emitRenderEvent(cell: SeriesNumberCell_2): void;
4752
5149
  }
4753
5150
 
4754
- export declare const SheetComponent: DefineComponent<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">, {
5151
+ export declare const SheetComponent: DefineComponent<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onRowCellSelected" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onColCellSelected" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onDataCellSelected" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onCornerCellSelected" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onUpdate" | "onUpdateAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">, {
4755
5152
  s2Ref: ShallowRef<SheetExpose>;
4756
5153
  sheetType: ComputedRef<DefineComponent< {
4757
5154
  sheetType: PropType<SheetType>;
@@ -4780,12 +5177,13 @@ default: Adaptive;
4780
5177
  };
4781
5178
  spreadsheet: PropType<(container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: SheetComponentOptions) => SpreadSheet_2>;
4782
5179
  onMounted: PropType<(spreadsheet: SpreadSheet_2) => void>;
5180
+ onUpdate: PropType<(renderOptions: S2RenderOptions_2) => S2RenderOptions_2>;
5181
+ onUpdateAfterRender: PropType<(renderOptions: S2RenderOptions_2) => void>;
4783
5182
  }, {
4784
5183
  s2Ref: ShallowRef<SheetExpose>;
4785
5184
  options: S2Options_2<TooltipContentType_2, Pagination_2, BaseTooltipOperatorMenuOptions_2>;
4786
5185
  }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
4787
5186
  spreadsheet: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<TooltipContentType_2, Pagination_2, BaseTooltipOperatorMenuOptions_2>) => SpreadSheet_2;
4788
- sheetUpdate: SheetUpdateCallback;
4789
5187
  rowCellHover: (data: TargetCellInfo_2) => void;
4790
5188
  rowCellClick: (data: TargetCellInfo_2) => void;
4791
5189
  rowCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -4796,7 +5194,8 @@ rowCellMouseMove: (data: TargetCellInfo_2) => void;
4796
5194
  rowCellCollapsed: (params: RowCellCollapsedParams_2) => void;
4797
5195
  rowCellAllCollapsed: (isCollapsed: boolean) => void;
4798
5196
  rowCellScroll: (position: Required<ScrollOffset_2>) => void;
4799
- rowCellRender: (cell: ColCell_2) => void;
5197
+ rowCellRender: (cell: RowCell_2) => void;
5198
+ rowCellSelected: CellSelectedHandler_2;
4800
5199
  colCellHover: (data: TargetCellInfo_2) => void;
4801
5200
  colCellClick: (data: TargetCellInfo_2) => void;
4802
5201
  colCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -4810,6 +5209,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
4810
5209
  hiddenColumnsDetail: HiddenColumnsInfo_2[];
4811
5210
  }) => void;
4812
5211
  colCellRender: (cell: ColCell_2) => void;
5212
+ colCellSelected: CellSelectedHandler_2;
4813
5213
  dataCellHover: (data: TargetCellInfo_2) => void;
4814
5214
  dataCellClick: (data: TargetCellInfo_2) => void;
4815
5215
  dataCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -4822,6 +5222,7 @@ dataCellSelectMove: (metaList: ViewMetaData_2[]) => void;
4822
5222
  dataCellRender: (cell: DataCell_2) => void;
4823
5223
  dataCellEditStart: (meta: ViewMeta_2, cell: TableDataCell_2) => void;
4824
5224
  dataCellEditEnd: (meta: ViewMeta_2, cell: TableDataCell_2) => void;
5225
+ dataCellSelected: CellSelectedHandler_2;
4825
5226
  cornerCellHover: (data: TargetCellInfo_2) => void;
4826
5227
  cornerCellClick: (data: TargetCellInfo_2) => void;
4827
5228
  cornerCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -4830,6 +5231,7 @@ cornerCellMouseDown: (data: TargetCellInfo_2) => void;
4830
5231
  cornerCellMouseUp: (data: TargetCellInfo_2) => void;
4831
5232
  cornerCellMouseMove: (data: TargetCellInfo_2) => void;
4832
5233
  cornerCellRender: (cell: CornerCell_2) => void;
5234
+ cornerCellSelected: CellSelectedHandler_2;
4833
5235
  mergedCellsHover: (data: TargetCellInfo_2) => void;
4834
5236
  mergedCellsClick: (data: TargetCellInfo_2) => void;
4835
5237
  mergedCellsDoubleClick: (data: TargetCellInfo_2) => void;
@@ -4852,6 +5254,8 @@ layoutCellRender: <T extends S2CellType_2 = S2CellType_2>(cell: T) => void;
4852
5254
  beforeRender: () => void;
4853
5255
  afterRender: () => void;
4854
5256
  mounted: (spreadsheet: SpreadSheet_2) => void;
5257
+ update: (renderOptions: S2RenderOptions_2) => S2RenderOptions_2;
5258
+ updateAfterRender: (renderOptions: S2RenderOptions_2) => void;
4855
5259
  destroy: () => void;
4856
5260
  layoutResize: (params: ResizeParams_2) => void;
4857
5261
  layoutResizeSeriesWidth: (params: ResizeParams_2) => void;
@@ -4886,7 +5290,7 @@ mouseHover: (event: FederatedPointerEvent) => void;
4886
5290
  mouseUp: (event: MouseEvent) => void;
4887
5291
  mouseDown: (event: MouseEvent) => void;
4888
5292
  mouseMove: (event: MouseEvent) => void;
4889
- selected: (cells: S2CellType_2[]) => void;
5293
+ selected: CellSelectedHandler_2;
4890
5294
  reset: (event: KeyboardEvent) => void;
4891
5295
  linkFieldJump: (data: {
4892
5296
  field: string;
@@ -4900,7 +5304,7 @@ spreadsheet: SpreadSheet_2;
4900
5304
  }) => void;
4901
5305
  rowCellBrushSelection: (event: FederatedPointerEvent) => void;
4902
5306
  colCellBrushSelection: (event: FederatedPointerEvent) => void;
4903
- }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
5307
+ }, string, PublicProps, Readonly<ExtractPropTypes< {
4904
5308
  sheetType: PropType<SheetType>;
4905
5309
  dataCfg: PropType<S2DataConfig_2>;
4906
5310
  themeCfg: PropType<ThemeCfg_2>;
@@ -4927,8 +5331,9 @@ default: Adaptive;
4927
5331
  };
4928
5332
  spreadsheet: PropType<(container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: SheetComponentOptions) => SpreadSheet_2>;
4929
5333
  onMounted: PropType<(spreadsheet: SpreadSheet_2) => void>;
5334
+ onUpdate: PropType<(renderOptions: S2RenderOptions_2) => S2RenderOptions_2>;
5335
+ onUpdateAfterRender: PropType<(renderOptions: S2RenderOptions_2) => void>;
4930
5336
  }>> & {
4931
- onSheetUpdate?: (params: S2RenderOptions_2) => any;
4932
5337
  onRowCellHover?: (data: TargetCellInfo_2) => any;
4933
5338
  onRowCellClick?: (data: TargetCellInfo_2) => any;
4934
5339
  onRowCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -4939,7 +5344,8 @@ onRowCellMouseMove?: (data: TargetCellInfo_2) => any;
4939
5344
  onRowCellCollapsed?: (params: RowCellCollapsedParams_2) => any;
4940
5345
  onRowCellAllCollapsed?: (isCollapsed: boolean) => any;
4941
5346
  onRowCellScroll?: (position: Required<ScrollOffset_2>) => any;
4942
- onRowCellRender?: (cell: ColCell_2) => any;
5347
+ onRowCellRender?: (cell: RowCell_2) => any;
5348
+ onRowCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
4943
5349
  onColCellHover?: (data: TargetCellInfo_2) => any;
4944
5350
  onColCellClick?: (data: TargetCellInfo_2) => any;
4945
5351
  onColCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -4953,6 +5359,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
4953
5359
  hiddenColumnsDetail: HiddenColumnsInfo_2[];
4954
5360
  }) => any;
4955
5361
  onColCellRender?: (cell: ColCell_2) => any;
5362
+ onColCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
4956
5363
  onDataCellHover?: (data: TargetCellInfo_2) => any;
4957
5364
  onDataCellClick?: (data: TargetCellInfo_2) => any;
4958
5365
  onDataCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -4965,6 +5372,7 @@ onDataCellSelectMove?: (metaList: ViewMetaData_2[]) => any;
4965
5372
  onDataCellRender?: (cell: DataCell_2) => any;
4966
5373
  onDataCellEditStart?: (meta: ViewMeta_2, cell: TableDataCell_2) => any;
4967
5374
  onDataCellEditEnd?: (meta: ViewMeta_2, cell: TableDataCell_2) => any;
5375
+ onDataCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
4968
5376
  onCornerCellHover?: (data: TargetCellInfo_2) => any;
4969
5377
  onCornerCellClick?: (data: TargetCellInfo_2) => any;
4970
5378
  onCornerCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -4973,6 +5381,7 @@ onCornerCellMouseDown?: (data: TargetCellInfo_2) => any;
4973
5381
  onCornerCellMouseUp?: (data: TargetCellInfo_2) => any;
4974
5382
  onCornerCellMouseMove?: (data: TargetCellInfo_2) => any;
4975
5383
  onCornerCellRender?: (cell: CornerCell_2) => any;
5384
+ onCornerCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
4976
5385
  onMergedCellsHover?: (data: TargetCellInfo_2) => any;
4977
5386
  onMergedCellsClick?: (data: TargetCellInfo_2) => any;
4978
5387
  onMergedCellsDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -4995,6 +5404,8 @@ onLayoutCellRender?: (cell: S2CellType_2) => any;
4995
5404
  onBeforeRender?: () => any;
4996
5405
  onAfterRender?: () => any;
4997
5406
  onMounted?: (spreadsheet: SpreadSheet_2) => any;
5407
+ onUpdate?: (renderOptions: S2RenderOptions_2) => any;
5408
+ onUpdateAfterRender?: (renderOptions: S2RenderOptions_2) => any;
4998
5409
  onDestroy?: () => any;
4999
5410
  onLayoutResize?: (params: ResizeParams_2) => any;
5000
5411
  onLayoutResizeSeriesWidth?: (params: ResizeParams_2) => any;
@@ -5029,7 +5440,7 @@ onMouseHover?: (event: FederatedPointerEvent) => any;
5029
5440
  onMouseUp?: (event: MouseEvent) => any;
5030
5441
  onMouseDown?: (event: MouseEvent) => any;
5031
5442
  onMouseMove?: (event: MouseEvent) => any;
5032
- onSelected?: (cells: S2CellType_2[]) => any;
5443
+ onSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
5033
5444
  onReset?: (event: KeyboardEvent) => any;
5034
5445
  onLinkFieldJump?: (data: {
5035
5446
  field: string;
@@ -5056,11 +5467,10 @@ showPagination: boolean | {
5056
5467
  onShowSizeChange?: (pageSize: number) => void;
5057
5468
  onChange?: (current: number) => void;
5058
5469
  };
5059
- }, {}> | DefineComponent<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">, {
5470
+ }, {}> | DefineComponent<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onRowCellSelected" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onColCellSelected" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onDataCellSelected" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onCornerCellSelected" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onUpdate" | "onUpdateAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">, {
5060
5471
  s2Ref: ShallowRef<SheetExpose>;
5061
5472
  }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
5062
5473
  spreadsheet: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<TooltipContentType_2, Pagination_2, BaseTooltipOperatorMenuOptions_2>) => SpreadSheet_2;
5063
- sheetUpdate: SheetUpdateCallback;
5064
5474
  rowCellHover: (data: TargetCellInfo_2) => void;
5065
5475
  rowCellClick: (data: TargetCellInfo_2) => void;
5066
5476
  rowCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -5071,7 +5481,8 @@ rowCellMouseMove: (data: TargetCellInfo_2) => void;
5071
5481
  rowCellCollapsed: (params: RowCellCollapsedParams_2) => void;
5072
5482
  rowCellAllCollapsed: (isCollapsed: boolean) => void;
5073
5483
  rowCellScroll: (position: Required<ScrollOffset_2>) => void;
5074
- rowCellRender: (cell: ColCell_2) => void;
5484
+ rowCellRender: (cell: RowCell_2) => void;
5485
+ rowCellSelected: CellSelectedHandler_2;
5075
5486
  colCellHover: (data: TargetCellInfo_2) => void;
5076
5487
  colCellClick: (data: TargetCellInfo_2) => void;
5077
5488
  colCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -5085,6 +5496,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
5085
5496
  hiddenColumnsDetail: HiddenColumnsInfo_2[];
5086
5497
  }) => void;
5087
5498
  colCellRender: (cell: ColCell_2) => void;
5499
+ colCellSelected: CellSelectedHandler_2;
5088
5500
  dataCellHover: (data: TargetCellInfo_2) => void;
5089
5501
  dataCellClick: (data: TargetCellInfo_2) => void;
5090
5502
  dataCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -5097,6 +5509,7 @@ dataCellSelectMove: (metaList: ViewMetaData_2[]) => void;
5097
5509
  dataCellRender: (cell: DataCell_2) => void;
5098
5510
  dataCellEditStart: (meta: ViewMeta_2, cell: TableDataCell_2) => void;
5099
5511
  dataCellEditEnd: (meta: ViewMeta_2, cell: TableDataCell_2) => void;
5512
+ dataCellSelected: CellSelectedHandler_2;
5100
5513
  cornerCellHover: (data: TargetCellInfo_2) => void;
5101
5514
  cornerCellClick: (data: TargetCellInfo_2) => void;
5102
5515
  cornerCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -5105,6 +5518,7 @@ cornerCellMouseDown: (data: TargetCellInfo_2) => void;
5105
5518
  cornerCellMouseUp: (data: TargetCellInfo_2) => void;
5106
5519
  cornerCellMouseMove: (data: TargetCellInfo_2) => void;
5107
5520
  cornerCellRender: (cell: CornerCell_2) => void;
5521
+ cornerCellSelected: CellSelectedHandler_2;
5108
5522
  mergedCellsHover: (data: TargetCellInfo_2) => void;
5109
5523
  mergedCellsClick: (data: TargetCellInfo_2) => void;
5110
5524
  mergedCellsDoubleClick: (data: TargetCellInfo_2) => void;
@@ -5127,6 +5541,8 @@ layoutCellRender: <T extends S2CellType_2 = S2CellType_2>(cell: T) => void;
5127
5541
  beforeRender: () => void;
5128
5542
  afterRender: () => void;
5129
5543
  mounted: (spreadsheet: SpreadSheet_2) => void;
5544
+ update: (renderOptions: S2RenderOptions_2) => S2RenderOptions_2;
5545
+ updateAfterRender: (renderOptions: S2RenderOptions_2) => void;
5130
5546
  destroy: () => void;
5131
5547
  layoutResize: (params: ResizeParams_2) => void;
5132
5548
  layoutResizeSeriesWidth: (params: ResizeParams_2) => void;
@@ -5161,7 +5577,7 @@ mouseHover: (event: FederatedPointerEvent) => void;
5161
5577
  mouseUp: (event: MouseEvent) => void;
5162
5578
  mouseDown: (event: MouseEvent) => void;
5163
5579
  mouseMove: (event: MouseEvent) => void;
5164
- selected: (cells: S2CellType_2[]) => void;
5580
+ selected: CellSelectedHandler_2;
5165
5581
  reset: (event: KeyboardEvent) => void;
5166
5582
  linkFieldJump: (data: {
5167
5583
  field: string;
@@ -5175,8 +5591,7 @@ spreadsheet: SpreadSheet_2;
5175
5591
  }) => void;
5176
5592
  rowCellBrushSelection: (event: FederatedPointerEvent) => void;
5177
5593
  colCellBrushSelection: (event: FederatedPointerEvent) => void;
5178
- }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">>> & {
5179
- onSheetUpdate?: (params: S2RenderOptions_2) => any;
5594
+ }, string, PublicProps, Readonly<ExtractPropTypes<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onRowCellSelected" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onColCellSelected" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onDataCellSelected" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onCornerCellSelected" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onUpdate" | "onUpdateAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">>> & {
5180
5595
  onRowCellHover?: (data: TargetCellInfo_2) => any;
5181
5596
  onRowCellClick?: (data: TargetCellInfo_2) => any;
5182
5597
  onRowCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -5187,7 +5602,8 @@ onRowCellMouseMove?: (data: TargetCellInfo_2) => any;
5187
5602
  onRowCellCollapsed?: (params: RowCellCollapsedParams_2) => any;
5188
5603
  onRowCellAllCollapsed?: (isCollapsed: boolean) => any;
5189
5604
  onRowCellScroll?: (position: Required<ScrollOffset_2>) => any;
5190
- onRowCellRender?: (cell: ColCell_2) => any;
5605
+ onRowCellRender?: (cell: RowCell_2) => any;
5606
+ onRowCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
5191
5607
  onColCellHover?: (data: TargetCellInfo_2) => any;
5192
5608
  onColCellClick?: (data: TargetCellInfo_2) => any;
5193
5609
  onColCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -5201,6 +5617,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
5201
5617
  hiddenColumnsDetail: HiddenColumnsInfo_2[];
5202
5618
  }) => any;
5203
5619
  onColCellRender?: (cell: ColCell_2) => any;
5620
+ onColCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
5204
5621
  onDataCellHover?: (data: TargetCellInfo_2) => any;
5205
5622
  onDataCellClick?: (data: TargetCellInfo_2) => any;
5206
5623
  onDataCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -5213,6 +5630,7 @@ onDataCellSelectMove?: (metaList: ViewMetaData_2[]) => any;
5213
5630
  onDataCellRender?: (cell: DataCell_2) => any;
5214
5631
  onDataCellEditStart?: (meta: ViewMeta_2, cell: TableDataCell_2) => any;
5215
5632
  onDataCellEditEnd?: (meta: ViewMeta_2, cell: TableDataCell_2) => any;
5633
+ onDataCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
5216
5634
  onCornerCellHover?: (data: TargetCellInfo_2) => any;
5217
5635
  onCornerCellClick?: (data: TargetCellInfo_2) => any;
5218
5636
  onCornerCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -5221,6 +5639,7 @@ onCornerCellMouseDown?: (data: TargetCellInfo_2) => any;
5221
5639
  onCornerCellMouseUp?: (data: TargetCellInfo_2) => any;
5222
5640
  onCornerCellMouseMove?: (data: TargetCellInfo_2) => any;
5223
5641
  onCornerCellRender?: (cell: CornerCell_2) => any;
5642
+ onCornerCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
5224
5643
  onMergedCellsHover?: (data: TargetCellInfo_2) => any;
5225
5644
  onMergedCellsClick?: (data: TargetCellInfo_2) => any;
5226
5645
  onMergedCellsDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -5243,6 +5662,8 @@ onLayoutCellRender?: (cell: S2CellType_2) => any;
5243
5662
  onBeforeRender?: () => any;
5244
5663
  onAfterRender?: () => any;
5245
5664
  onMounted?: (spreadsheet: SpreadSheet_2) => any;
5665
+ onUpdate?: (renderOptions: S2RenderOptions_2) => any;
5666
+ onUpdateAfterRender?: (renderOptions: S2RenderOptions_2) => any;
5246
5667
  onDestroy?: () => any;
5247
5668
  onLayoutResize?: (params: ResizeParams_2) => any;
5248
5669
  onLayoutResizeSeriesWidth?: (params: ResizeParams_2) => any;
@@ -5277,7 +5698,7 @@ onMouseHover?: (event: FederatedPointerEvent) => any;
5277
5698
  onMouseUp?: (event: MouseEvent) => any;
5278
5699
  onMouseDown?: (event: MouseEvent) => any;
5279
5700
  onMouseMove?: (event: MouseEvent) => any;
5280
- onSelected?: (cells: S2CellType_2[]) => any;
5701
+ onSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
5281
5702
  onReset?: (event: KeyboardEvent) => any;
5282
5703
  onLinkFieldJump?: (data: {
5283
5704
  field: string;
@@ -5295,7 +5716,6 @@ onSpreadsheet?: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options
5295
5716
  }, {}, {}>>;
5296
5717
  }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
5297
5718
  spreadsheet: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<TooltipContentType_2, Pagination_2, BaseTooltipOperatorMenuOptions_2>) => SpreadSheet_2;
5298
- sheetUpdate: SheetUpdateCallback;
5299
5719
  rowCellHover: (data: TargetCellInfo_2) => void;
5300
5720
  rowCellClick: (data: TargetCellInfo_2) => void;
5301
5721
  rowCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -5306,7 +5726,8 @@ rowCellMouseMove: (data: TargetCellInfo_2) => void;
5306
5726
  rowCellCollapsed: (params: RowCellCollapsedParams_2) => void;
5307
5727
  rowCellAllCollapsed: (isCollapsed: boolean) => void;
5308
5728
  rowCellScroll: (position: Required<ScrollOffset_2>) => void;
5309
- rowCellRender: (cell: ColCell_2) => void;
5729
+ rowCellRender: (cell: RowCell_2) => void;
5730
+ rowCellSelected: CellSelectedHandler_2;
5310
5731
  colCellHover: (data: TargetCellInfo_2) => void;
5311
5732
  colCellClick: (data: TargetCellInfo_2) => void;
5312
5733
  colCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -5320,6 +5741,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
5320
5741
  hiddenColumnsDetail: HiddenColumnsInfo_2[];
5321
5742
  }) => void;
5322
5743
  colCellRender: (cell: ColCell_2) => void;
5744
+ colCellSelected: CellSelectedHandler_2;
5323
5745
  dataCellHover: (data: TargetCellInfo_2) => void;
5324
5746
  dataCellClick: (data: TargetCellInfo_2) => void;
5325
5747
  dataCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -5332,6 +5754,7 @@ dataCellSelectMove: (metaList: ViewMetaData_2[]) => void;
5332
5754
  dataCellRender: (cell: DataCell_2) => void;
5333
5755
  dataCellEditStart: (meta: ViewMeta_2, cell: TableDataCell_2) => void;
5334
5756
  dataCellEditEnd: (meta: ViewMeta_2, cell: TableDataCell_2) => void;
5757
+ dataCellSelected: CellSelectedHandler_2;
5335
5758
  cornerCellHover: (data: TargetCellInfo_2) => void;
5336
5759
  cornerCellClick: (data: TargetCellInfo_2) => void;
5337
5760
  cornerCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -5340,6 +5763,7 @@ cornerCellMouseDown: (data: TargetCellInfo_2) => void;
5340
5763
  cornerCellMouseUp: (data: TargetCellInfo_2) => void;
5341
5764
  cornerCellMouseMove: (data: TargetCellInfo_2) => void;
5342
5765
  cornerCellRender: (cell: CornerCell_2) => void;
5766
+ cornerCellSelected: CellSelectedHandler_2;
5343
5767
  mergedCellsHover: (data: TargetCellInfo_2) => void;
5344
5768
  mergedCellsClick: (data: TargetCellInfo_2) => void;
5345
5769
  mergedCellsDoubleClick: (data: TargetCellInfo_2) => void;
@@ -5362,6 +5786,8 @@ layoutCellRender: <T extends S2CellType_2 = S2CellType_2>(cell: T) => void;
5362
5786
  beforeRender: () => void;
5363
5787
  afterRender: () => void;
5364
5788
  mounted: (spreadsheet: SpreadSheet_2) => void;
5789
+ update: (renderOptions: S2RenderOptions_2) => S2RenderOptions_2;
5790
+ updateAfterRender: (renderOptions: S2RenderOptions_2) => void;
5365
5791
  destroy: () => void;
5366
5792
  layoutResize: (params: ResizeParams_2) => void;
5367
5793
  layoutResizeSeriesWidth: (params: ResizeParams_2) => void;
@@ -5396,7 +5822,7 @@ mouseHover: (event: FederatedPointerEvent) => void;
5396
5822
  mouseUp: (event: MouseEvent) => void;
5397
5823
  mouseDown: (event: MouseEvent) => void;
5398
5824
  mouseMove: (event: MouseEvent) => void;
5399
- selected: (cells: S2CellType_2[]) => void;
5825
+ selected: CellSelectedHandler_2;
5400
5826
  reset: (event: KeyboardEvent) => void;
5401
5827
  linkFieldJump: (data: {
5402
5828
  field: string;
@@ -5410,8 +5836,7 @@ spreadsheet: SpreadSheet_2;
5410
5836
  }) => void;
5411
5837
  rowCellBrushSelection: (event: FederatedPointerEvent) => void;
5412
5838
  colCellBrushSelection: (event: FederatedPointerEvent) => void;
5413
- }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">>> & {
5414
- onSheetUpdate?: (params: S2RenderOptions_2) => any;
5839
+ }, string, PublicProps, Readonly<ExtractPropTypes<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onRowCellSelected" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onColCellSelected" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onDataCellSelected" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onCornerCellSelected" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onUpdate" | "onUpdateAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">>> & {
5415
5840
  onRowCellHover?: (data: TargetCellInfo_2) => any;
5416
5841
  onRowCellClick?: (data: TargetCellInfo_2) => any;
5417
5842
  onRowCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -5422,7 +5847,8 @@ onRowCellMouseMove?: (data: TargetCellInfo_2) => any;
5422
5847
  onRowCellCollapsed?: (params: RowCellCollapsedParams_2) => any;
5423
5848
  onRowCellAllCollapsed?: (isCollapsed: boolean) => any;
5424
5849
  onRowCellScroll?: (position: Required<ScrollOffset_2>) => any;
5425
- onRowCellRender?: (cell: ColCell_2) => any;
5850
+ onRowCellRender?: (cell: RowCell_2) => any;
5851
+ onRowCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
5426
5852
  onColCellHover?: (data: TargetCellInfo_2) => any;
5427
5853
  onColCellClick?: (data: TargetCellInfo_2) => any;
5428
5854
  onColCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -5436,6 +5862,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
5436
5862
  hiddenColumnsDetail: HiddenColumnsInfo_2[];
5437
5863
  }) => any;
5438
5864
  onColCellRender?: (cell: ColCell_2) => any;
5865
+ onColCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
5439
5866
  onDataCellHover?: (data: TargetCellInfo_2) => any;
5440
5867
  onDataCellClick?: (data: TargetCellInfo_2) => any;
5441
5868
  onDataCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -5448,6 +5875,7 @@ onDataCellSelectMove?: (metaList: ViewMetaData_2[]) => any;
5448
5875
  onDataCellRender?: (cell: DataCell_2) => any;
5449
5876
  onDataCellEditStart?: (meta: ViewMeta_2, cell: TableDataCell_2) => any;
5450
5877
  onDataCellEditEnd?: (meta: ViewMeta_2, cell: TableDataCell_2) => any;
5878
+ onDataCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
5451
5879
  onCornerCellHover?: (data: TargetCellInfo_2) => any;
5452
5880
  onCornerCellClick?: (data: TargetCellInfo_2) => any;
5453
5881
  onCornerCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -5456,6 +5884,7 @@ onCornerCellMouseDown?: (data: TargetCellInfo_2) => any;
5456
5884
  onCornerCellMouseUp?: (data: TargetCellInfo_2) => any;
5457
5885
  onCornerCellMouseMove?: (data: TargetCellInfo_2) => any;
5458
5886
  onCornerCellRender?: (cell: CornerCell_2) => any;
5887
+ onCornerCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
5459
5888
  onMergedCellsHover?: (data: TargetCellInfo_2) => any;
5460
5889
  onMergedCellsClick?: (data: TargetCellInfo_2) => any;
5461
5890
  onMergedCellsDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -5478,6 +5907,8 @@ onLayoutCellRender?: (cell: S2CellType_2) => any;
5478
5907
  onBeforeRender?: () => any;
5479
5908
  onAfterRender?: () => any;
5480
5909
  onMounted?: (spreadsheet: SpreadSheet_2) => any;
5910
+ onUpdate?: (renderOptions: S2RenderOptions_2) => any;
5911
+ onUpdateAfterRender?: (renderOptions: S2RenderOptions_2) => any;
5481
5912
  onDestroy?: () => any;
5482
5913
  onLayoutResize?: (params: ResizeParams_2) => any;
5483
5914
  onLayoutResizeSeriesWidth?: (params: ResizeParams_2) => any;
@@ -5512,7 +5943,7 @@ onMouseHover?: (event: FederatedPointerEvent) => any;
5512
5943
  onMouseUp?: (event: MouseEvent) => any;
5513
5944
  onMouseDown?: (event: MouseEvent) => any;
5514
5945
  onMouseMove?: (event: MouseEvent) => any;
5515
- onSelected?: (cells: S2CellType_2[]) => any;
5946
+ onSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
5516
5947
  onReset?: (event: KeyboardEvent) => any;
5517
5948
  onLinkFieldJump?: (data: {
5518
5949
  field: string;
@@ -5539,9 +5970,6 @@ export declare interface SheetExpose {
5539
5970
 
5540
5971
  declare type SheetType = 'pivot' | 'table' | 'chart' | 'gridAnalysis' | 'strategy' | 'editable';
5541
5972
 
5542
- /** render callback */
5543
- declare type SheetUpdateCallback = (params: S2RenderOptions) => S2RenderOptions;
5544
-
5545
5973
  declare type ShowPagination<OverrideShowPagination, Options> = OverrideShowPagination extends true ? Options extends {
5546
5974
  pagination?: {
5547
5975
  onShowSizeChange?: unknown;
@@ -5561,7 +5989,7 @@ declare interface SimpleBBox {
5561
5989
  height: number;
5562
5990
  }
5563
5991
 
5564
- declare type SimpleData = string | number | null;
5992
+ declare type SimpleData = string | number | null | undefined;
5565
5993
 
5566
5994
  declare interface Sort {
5567
5995
  /** 字段 id */
@@ -5639,7 +6067,6 @@ declare abstract class SpreadSheet_2 extends EE {
5639
6067
  private destroyed;
5640
6068
  protected abstract bindEvents(): void;
5641
6069
  abstract getDataSet(): BaseDataSet_2;
5642
- abstract enableFrozenHeaders(): boolean;
5643
6070
  abstract isPivotMode(): boolean;
5644
6071
  abstract isCustomRowFields(): boolean;
5645
6072
  abstract isHierarchyTreeType(): boolean;
@@ -5647,8 +6074,8 @@ declare abstract class SpreadSheet_2 extends EE {
5647
6074
  abstract isTableMode(): boolean;
5648
6075
  abstract isValueInCols(): boolean;
5649
6076
  protected abstract buildFacet(): void;
5650
- abstract clearDrillDownData(rowNodeId?: string, preventRender?: boolean): void;
5651
- abstract groupSortByMethod(sortMethod: SortMethod, meta: Node_2_2): void;
6077
+ abstract clearDrillDownData(rowNodeId?: string, preventRender?: boolean): Promise<void>;
6078
+ abstract groupSortByMethod(sortMethod: SortMethod, meta: Node_2_2): Promise<void> | void;
5652
6079
  constructor(dom: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2 | null);
5653
6080
  isCustomHeaderFields(fieldType?: keyof Pick<Fields, 'columns' | 'rows'>): boolean;
5654
6081
  isCustomColumnFields(): boolean;
@@ -5717,7 +6144,7 @@ declare abstract class SpreadSheet_2 extends EE {
5717
6144
  s2.render(false)
5718
6145
  s2.render({
5719
6146
  reloadData: true;
5720
- reBuildDataSet: true;
6147
+ rebuildDataSet: true;
5721
6148
  reBuildHiddenColumnsDetail: true;
5722
6149
  })
5723
6150
  */
@@ -5735,22 +6162,17 @@ declare abstract class SpreadSheet_2 extends EE {
5735
6162
  getTheme(): InternalFullyTheme;
5736
6163
  getThemeName(): "default" | "colorful" | "gray" | "dark";
5737
6164
  /**
5738
- * Update pagination config which store in {@see options}
5739
- * @param pagination
6165
+ * 更新分页配置
5740
6166
  */
5741
6167
  updatePagination(pagination: Pagination_2): void;
5742
- /**
5743
- * 获取当前表格实际内容高度
5744
- */
5745
- getContentHeight(): number;
5746
6168
  /**
5747
6169
  * 修改表格画布大小,不用重新加载数据
5748
6170
  * @param width
5749
6171
  * @param height
5750
6172
  */
5751
6173
  changeSheetSize(width?: number, height?: number): void;
5752
- on<K extends keyof EmitterType>(event: K, listener: EmitterType[K]): this;
5753
- emit<K extends keyof EmitterType>(event: K, ...args: Parameters<EmitterType[K]>): void;
6174
+ on<K extends keyof EmitterType>(event: `${K}`, listener: EmitterType[K]): this;
6175
+ emit<K extends keyof EmitterType>(event: `${K}`, ...args: Parameters<EmitterType[K]>): void;
5754
6176
  /**
5755
6177
  * 获取 G Canvas 实例
5756
6178
  * @see https://g.antv.antgroup.com/api/renderer/canvas
@@ -5767,15 +6189,7 @@ declare abstract class SpreadSheet_2 extends EE {
5767
6189
  getCanvasElement(): HTMLCanvasElement & {
5768
6190
  __s2_instance__: SpreadSheet_2;
5769
6191
  };
5770
- getLayoutWidthType(): LayoutWidthType;
5771
- /**
5772
- * Update scroll's offset, the value can be undefined,
5773
- * indicate not update current value
5774
- * @param offsetConfig
5775
- * default offsetX(horizontal scroll need animation)
5776
- * but offsetY(vertical scroll don't need animation)
5777
- */
5778
- updateScrollOffset(offsetConfig: OffsetConfig): void;
6192
+ getLayoutWidthType(): "adaptive" | "colAdaptive" | "compact";
5779
6193
  protected isCellType(cell?: CellEventTarget): boolean;
5780
6194
  getCell<T extends S2CellType_2 = S2CellType_2>(target: CellEventTarget): T | null;
5781
6195
  getCellType(target: CellEventTarget): CellType | undefined;
@@ -5793,7 +6207,7 @@ declare abstract class SpreadSheet_2 extends EE {
5793
6207
  * @private
5794
6208
  */
5795
6209
  protected initContainer(dom: S2MountContainer_2): void;
5796
- protected updateContainerStyle(): void;
6210
+ protected setupContainerStyle(): void;
5797
6211
  private initHiddenColumnsDetail;
5798
6212
  private clearCanvasEvent;
5799
6213
  /**
@@ -5802,21 +6216,21 @@ declare abstract class SpreadSheet_2 extends EE {
5802
6216
  * @param font 文本 css 样式
5803
6217
  * @returns 文本测量信息 TextMetrics
5804
6218
  */
5805
- measureText: ((text: string | number | undefined, font: unknown) => TextMetrics | null) & MemoizedFunction;
6219
+ measureText: ((text: SimpleData, font: unknown) => TextMetrics | null) & MemoizedFunction;
5806
6220
  /**
5807
6221
  * 计算文本在画布中的宽度
5808
6222
  * @param text 待计算的文本
5809
6223
  * @param font 文本 css 样式
5810
6224
  * @returns 文本宽度
5811
6225
  */
5812
- measureTextWidth: (text: string | number | undefined, font: unknown) => number;
6226
+ measureTextWidth: (text: SimpleData, font: unknown) => number;
5813
6227
  /**
5814
6228
  * 计算文本在画布中的宽度 https://developer.mozilla.org/zh-CN/docs/Web/API/TextMetrics
5815
6229
  * @param text 待计算的文本
5816
6230
  * @param font 文本 css 样式
5817
6231
  * @returns 文本高度
5818
6232
  */
5819
- measureTextHeight: (text: string | number | undefined, font: unknown) => number;
6233
+ measureTextHeight: (text: SimpleData, font: unknown) => number;
5820
6234
  /**
5821
6235
  * 粗略计算文本在画布中的宽度
5822
6236
  * @param text 待计算的文本
@@ -5827,6 +6241,7 @@ declare abstract class SpreadSheet_2 extends EE {
5827
6241
  updateSortMethodMap(nodeId: string, sortMethod: SortMethod, replace?: boolean): void;
5828
6242
  getMenuDefaultSelectedKeys(nodeId: string): string[];
5829
6243
  handleGroupSort(event: FederatedPointerEvent, meta: Node_2_2): void;
6244
+ getSeriesNumberText(): string;
5830
6245
  }
5831
6246
 
5832
6247
  declare type StateShapeLayer = 'interactiveBgShape' | 'interactiveBorderShape';
@@ -5940,7 +6355,6 @@ declare class TableColCell extends ColCell_2 {
5940
6355
  x: number;
5941
6356
  y: number;
5942
6357
  };
5943
- protected getColResizeArea(): Group_2 | undefined;
5944
6358
  protected isSortCell(): boolean;
5945
6359
  protected showSortIcon(): boolean | undefined;
5946
6360
  protected getTextStyle(): {
@@ -5961,28 +6375,13 @@ declare class TableColCell extends ColCell_2 {
5961
6375
  };
5962
6376
  protected getHorizontalResizeAreaName(): string;
5963
6377
  protected drawBackgroundShape(): void;
5964
- protected handleViewport(): AreaRange;
5965
6378
  }
5966
6379
 
5967
6380
  /**
5968
6381
  * Column Header for SpreadSheet
5969
6382
  */
5970
6383
  declare class TableColHeader extends ColHeader {
5971
- frozenColGroup: Group;
5972
- frozenTrailingColGroup: Group;
5973
- private finalColCount;
5974
- private finalTrailingColCount;
5975
- private topLevelColNodeLength;
5976
- constructor(config: ColHeaderConfig);
5977
6384
  protected getCellInstance(node: Node_2_2): ColCell_2;
5978
- private initFrozenColGroups;
5979
- clear(): void;
5980
- private getColFrozenOptionsByNode;
5981
- protected getCellGroup(node: Node_2_2): Group;
5982
- protected isColCellInRect(node: Node_2_2): boolean;
5983
- getScrollGroupClipBBox: () => RectStyleProps;
5984
- protected offset(): void;
5985
- protected clip(): void;
5986
6385
  }
5987
6386
 
5988
6387
  declare class TableCornerCell extends TableColCell {
@@ -5992,7 +6391,6 @@ declare class TableCornerCell extends TableColCell {
5992
6391
 
5993
6392
  declare class TableDataCell_2 extends DataCell_2 {
5994
6393
  protected getLinkFieldStyle(): string;
5995
- drawBorders(): void;
5996
6394
  protected shouldDrawResizeArea(): boolean;
5997
6395
  drawResizeArea(): void;
5998
6396
  protected isDisableHover(cellMeta: CellMeta): boolean;
@@ -6003,11 +6401,10 @@ declare class TableSeriesNumberCell extends TableDataCell_2 {
6003
6401
  protected getTextStyle(): TextTheme;
6004
6402
  }
6005
6403
 
6006
- export declare const TableSheet: DefineComponent<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">, {
6404
+ export declare const TableSheet: DefineComponent<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onRowCellSelected" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onColCellSelected" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onDataCellSelected" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onCornerCellSelected" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onUpdate" | "onUpdateAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">, {
6007
6405
  s2Ref: ShallowRef<SheetExpose>;
6008
6406
  }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
6009
6407
  spreadsheet: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<TooltipContentType_2, Pagination_2, BaseTooltipOperatorMenuOptions_2>) => SpreadSheet_2;
6010
- sheetUpdate: SheetUpdateCallback;
6011
6408
  rowCellHover: (data: TargetCellInfo_2) => void;
6012
6409
  rowCellClick: (data: TargetCellInfo_2) => void;
6013
6410
  rowCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -6018,7 +6415,8 @@ rowCellMouseMove: (data: TargetCellInfo_2) => void;
6018
6415
  rowCellCollapsed: (params: RowCellCollapsedParams_2) => void;
6019
6416
  rowCellAllCollapsed: (isCollapsed: boolean) => void;
6020
6417
  rowCellScroll: (position: Required<ScrollOffset_2>) => void;
6021
- rowCellRender: (cell: ColCell_2) => void;
6418
+ rowCellRender: (cell: RowCell_2) => void;
6419
+ rowCellSelected: CellSelectedHandler_2;
6022
6420
  colCellHover: (data: TargetCellInfo_2) => void;
6023
6421
  colCellClick: (data: TargetCellInfo_2) => void;
6024
6422
  colCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -6032,6 +6430,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
6032
6430
  hiddenColumnsDetail: HiddenColumnsInfo_2[];
6033
6431
  }) => void;
6034
6432
  colCellRender: (cell: ColCell_2) => void;
6433
+ colCellSelected: CellSelectedHandler_2;
6035
6434
  dataCellHover: (data: TargetCellInfo_2) => void;
6036
6435
  dataCellClick: (data: TargetCellInfo_2) => void;
6037
6436
  dataCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -6044,6 +6443,7 @@ dataCellSelectMove: (metaList: ViewMetaData_2[]) => void;
6044
6443
  dataCellRender: (cell: DataCell_2) => void;
6045
6444
  dataCellEditStart: (meta: ViewMeta_2, cell: TableDataCell_2) => void;
6046
6445
  dataCellEditEnd: (meta: ViewMeta_2, cell: TableDataCell_2) => void;
6446
+ dataCellSelected: CellSelectedHandler_2;
6047
6447
  cornerCellHover: (data: TargetCellInfo_2) => void;
6048
6448
  cornerCellClick: (data: TargetCellInfo_2) => void;
6049
6449
  cornerCellDoubleClick: (data: TargetCellInfo_2) => void;
@@ -6052,6 +6452,7 @@ cornerCellMouseDown: (data: TargetCellInfo_2) => void;
6052
6452
  cornerCellMouseUp: (data: TargetCellInfo_2) => void;
6053
6453
  cornerCellMouseMove: (data: TargetCellInfo_2) => void;
6054
6454
  cornerCellRender: (cell: CornerCell_2) => void;
6455
+ cornerCellSelected: CellSelectedHandler_2;
6055
6456
  mergedCellsHover: (data: TargetCellInfo_2) => void;
6056
6457
  mergedCellsClick: (data: TargetCellInfo_2) => void;
6057
6458
  mergedCellsDoubleClick: (data: TargetCellInfo_2) => void;
@@ -6074,6 +6475,8 @@ layoutCellRender: <T extends S2CellType_2 = S2CellType_2>(cell: T) => void;
6074
6475
  beforeRender: () => void;
6075
6476
  afterRender: () => void;
6076
6477
  mounted: (spreadsheet: SpreadSheet_2) => void;
6478
+ update: (renderOptions: S2RenderOptions_2) => S2RenderOptions_2;
6479
+ updateAfterRender: (renderOptions: S2RenderOptions_2) => void;
6077
6480
  destroy: () => void;
6078
6481
  layoutResize: (params: ResizeParams_2) => void;
6079
6482
  layoutResizeSeriesWidth: (params: ResizeParams_2) => void;
@@ -6108,7 +6511,7 @@ mouseHover: (event: FederatedPointerEvent) => void;
6108
6511
  mouseUp: (event: MouseEvent) => void;
6109
6512
  mouseDown: (event: MouseEvent) => void;
6110
6513
  mouseMove: (event: MouseEvent) => void;
6111
- selected: (cells: S2CellType_2[]) => void;
6514
+ selected: CellSelectedHandler_2;
6112
6515
  reset: (event: KeyboardEvent) => void;
6113
6516
  linkFieldJump: (data: {
6114
6517
  field: string;
@@ -6122,8 +6525,7 @@ spreadsheet: SpreadSheet_2;
6122
6525
  }) => void;
6123
6526
  rowCellBrushSelection: (event: FederatedPointerEvent) => void;
6124
6527
  colCellBrushSelection: (event: FederatedPointerEvent) => void;
6125
- }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">>> & {
6126
- onSheetUpdate?: (params: S2RenderOptions_2) => any;
6528
+ }, string, PublicProps, Readonly<ExtractPropTypes<GetInitProps<SheetComponentProps, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapsed" | "onRowCellAllCollapsed" | "onRowCellScroll" | "onRowCellRender" | "onRowCellSelected" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onColCellExpanded" | "onColCellHidden" | "onColCellRender" | "onColCellSelected" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onDataCellRender" | "onDataCellEditStart" | "onDataCellEditEnd" | "onDataCellSelected" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onCornerCellRender" | "onCornerCellSelected" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onMergedCellsRender" | "onSeriesNumberCellRender" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellRender" | "onBeforeRender" | "onAfterRender" | "onMounted" | "onUpdate" | "onUpdateAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconHoverOff" | "onActionIconClick" | "onContextMenu" | "onClick" | "onHover" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onMouseDown" | "onMouseMove" | "onSelected" | "onReset" | "onLinkFieldJump" | "onScroll" | "onLayoutAfterRealDataCellRender" | "onRowCellBrushSelection" | "onColCellBrushSelection">>> & {
6127
6529
  onRowCellHover?: (data: TargetCellInfo_2) => any;
6128
6530
  onRowCellClick?: (data: TargetCellInfo_2) => any;
6129
6531
  onRowCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -6134,7 +6536,8 @@ onRowCellMouseMove?: (data: TargetCellInfo_2) => any;
6134
6536
  onRowCellCollapsed?: (params: RowCellCollapsedParams_2) => any;
6135
6537
  onRowCellAllCollapsed?: (isCollapsed: boolean) => any;
6136
6538
  onRowCellScroll?: (position: Required<ScrollOffset_2>) => any;
6137
- onRowCellRender?: (cell: ColCell_2) => any;
6539
+ onRowCellRender?: (cell: RowCell_2) => any;
6540
+ onRowCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
6138
6541
  onColCellHover?: (data: TargetCellInfo_2) => any;
6139
6542
  onColCellClick?: (data: TargetCellInfo_2) => any;
6140
6543
  onColCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -6148,6 +6551,7 @@ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
6148
6551
  hiddenColumnsDetail: HiddenColumnsInfo_2[];
6149
6552
  }) => any;
6150
6553
  onColCellRender?: (cell: ColCell_2) => any;
6554
+ onColCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
6151
6555
  onDataCellHover?: (data: TargetCellInfo_2) => any;
6152
6556
  onDataCellClick?: (data: TargetCellInfo_2) => any;
6153
6557
  onDataCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -6160,6 +6564,7 @@ onDataCellSelectMove?: (metaList: ViewMetaData_2[]) => any;
6160
6564
  onDataCellRender?: (cell: DataCell_2) => any;
6161
6565
  onDataCellEditStart?: (meta: ViewMeta_2, cell: TableDataCell_2) => any;
6162
6566
  onDataCellEditEnd?: (meta: ViewMeta_2, cell: TableDataCell_2) => any;
6567
+ onDataCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
6163
6568
  onCornerCellHover?: (data: TargetCellInfo_2) => any;
6164
6569
  onCornerCellClick?: (data: TargetCellInfo_2) => any;
6165
6570
  onCornerCellDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -6168,6 +6573,7 @@ onCornerCellMouseDown?: (data: TargetCellInfo_2) => any;
6168
6573
  onCornerCellMouseUp?: (data: TargetCellInfo_2) => any;
6169
6574
  onCornerCellMouseMove?: (data: TargetCellInfo_2) => any;
6170
6575
  onCornerCellRender?: (cell: CornerCell_2) => any;
6576
+ onCornerCellSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
6171
6577
  onMergedCellsHover?: (data: TargetCellInfo_2) => any;
6172
6578
  onMergedCellsClick?: (data: TargetCellInfo_2) => any;
6173
6579
  onMergedCellsDoubleClick?: (data: TargetCellInfo_2) => any;
@@ -6190,6 +6596,8 @@ onLayoutCellRender?: (cell: S2CellType_2) => any;
6190
6596
  onBeforeRender?: () => any;
6191
6597
  onAfterRender?: () => any;
6192
6598
  onMounted?: (spreadsheet: SpreadSheet_2) => any;
6599
+ onUpdate?: (renderOptions: S2RenderOptions_2) => any;
6600
+ onUpdateAfterRender?: (renderOptions: S2RenderOptions_2) => any;
6193
6601
  onDestroy?: () => any;
6194
6602
  onLayoutResize?: (params: ResizeParams_2) => any;
6195
6603
  onLayoutResizeSeriesWidth?: (params: ResizeParams_2) => any;
@@ -6224,7 +6632,7 @@ onMouseHover?: (event: FederatedPointerEvent) => any;
6224
6632
  onMouseUp?: (event: MouseEvent) => any;
6225
6633
  onMouseDown?: (event: MouseEvent) => any;
6226
6634
  onMouseMove?: (event: MouseEvent) => any;
6227
- onSelected?: (cells: S2CellType_2[]) => any;
6635
+ onSelected?: (cells: S2CellType_2<ViewMeta_2>[], detail: CellSelectedDetail_2) => any;
6228
6636
  onReset?: (event: KeyboardEvent) => any;
6229
6637
  onLinkFieldJump?: (data: {
6230
6638
  field: string;
@@ -6244,7 +6652,7 @@ onSpreadsheet?: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options
6244
6652
  declare interface TargetCellInfo_2 {
6245
6653
  target: S2CellType_2;
6246
6654
  event: FederatedPointerEvent;
6247
- viewMeta: Node_2_2;
6655
+ viewMeta: ViewMeta_2 | Node_2_2;
6248
6656
  }
6249
6657
 
6250
6658
  declare type TextAlign = 'left' | 'center' | 'right';
@@ -6320,7 +6728,7 @@ declare type TooltipDataItem = ViewMetaData_2;
6320
6728
 
6321
6729
  declare type TooltipDetailListItem = {
6322
6730
  name: string;
6323
- value: string | number;
6731
+ value: SimpleData;
6324
6732
  icon?: Element | string;
6325
6733
  };
6326
6734
 
@@ -6527,6 +6935,29 @@ declare interface Total {
6527
6935
  subTotalsLabel?: string;
6528
6936
  }
6529
6937
 
6938
+ declare class TotalClass {
6939
+ label: string;
6940
+ isSubTotals: boolean;
6941
+ isGrandTotals: boolean;
6942
+ isTotalRoot: boolean;
6943
+ constructor(params: TotalClassConfig);
6944
+ }
6945
+
6946
+ /**
6947
+ * Class to mark '小计' & '总计'
6948
+ */
6949
+ declare interface TotalClassConfig {
6950
+ label: string;
6951
+ isSubTotals: boolean;
6952
+ isGrandTotals: boolean;
6953
+ isTotalRoot?: boolean;
6954
+ }
6955
+
6956
+ declare class TotalMeasure {
6957
+ label: string;
6958
+ constructor(label: string);
6959
+ }
6960
+
6530
6961
  declare interface Totals {
6531
6962
  row?: Total;
6532
6963
  col?: Total;
@@ -6555,7 +6986,7 @@ declare interface ValueRange {
6555
6986
 
6556
6987
  declare type ValueRanges = Record<string, ValueRange>;
6557
6988
 
6558
- export declare const version = "@antv/s2-vue-v2.0.0-next.14";
6989
+ export declare const version = "@antv/s2-vue-v2.0.0-next.16";
6559
6990
 
6560
6991
  declare interface ViewCellHeights {
6561
6992
  getCellOffsetY: (index: number) => number;
@@ -6568,29 +6999,45 @@ declare interface ViewCellHeights {
6568
6999
  }
6569
7000
 
6570
7001
  declare interface ViewMeta_2 {
7002
+ /** 表格实例 */
6571
7003
  spreadsheet: SpreadSheet_2;
7004
+ /** 数据唯一标识 */
6572
7005
  id: string;
7006
+ /** x 坐标 */
6573
7007
  x: number;
7008
+ /** y 坐标 */
6574
7009
  y: number;
7010
+ /** 单元格宽度 */
6575
7011
  width: number;
7012
+ /** 单元格高度 */
6576
7013
  height: number;
6577
- data: ViewMetaData_2 | SimpleData | undefined;
7014
+ /** 单元格数据 */
7015
+ data: ViewMetaData_2 | undefined;
7016
+ /** 行索引 */
6578
7017
  rowIndex: number;
7018
+ /** 列索引 */
6579
7019
  colIndex: number;
7020
+ /** 数值字段, 对应 s2DataConfig.fields */
6580
7021
  valueField: string;
7022
+ /** 数值 */
6581
7023
  fieldValue: DataItem;
7024
+ /** 是否是汇总字段 */
6582
7025
  isTotals?: boolean;
7026
+ /** 行查询条件 */
6583
7027
  rowQuery?: Query;
7028
+ /** 列查询条件 */
6584
7029
  colQuery?: Query;
7030
+ /** 行 id */
6585
7031
  rowId?: string;
7032
+ /** 列 id */
6586
7033
  colId?: string;
6587
- field?: string;
6588
- isFrozenCorner?: boolean;
6589
- label?: string;
6590
- value?: string | number;
7034
+ /** 查询条件 */
6591
7035
  query?: Query;
7036
+ /** 叶子节点 */
6592
7037
  isLeaf?: boolean;
7038
+ /** 是否是浅渲染 */
6593
7039
  shallowRender?: boolean;
7040
+ /** 其他字段 */
6594
7041
  [key: string]: unknown;
6595
7042
  }
6596
7043