@antv/s2-vue 1.0.0 → 1.1.0-alpha.1

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.
Files changed (79) hide show
  1. package/README.md +26 -55
  2. package/dist/index.min.js +1 -1
  3. package/dist/index.min.js.map +1 -1
  4. package/dist/style.min.css +1 -1
  5. package/esm/index.d.ts +4366 -4
  6. package/esm/index.js +824 -150
  7. package/esm/index.js.map +1 -1
  8. package/esm/style.css +123 -21
  9. package/lib/index.js +821 -147
  10. package/lib/index.js.map +1 -1
  11. package/lib/style.css +123 -21
  12. package/package.json +11 -8
  13. package/esm/common/constant/index.d.ts +0 -3
  14. package/esm/common/constant/index.d.ts.map +0 -1
  15. package/esm/common/constant/options.d.ts +0 -3
  16. package/esm/common/constant/options.d.ts.map +0 -1
  17. package/esm/common/constant/sort.d.ts +0 -15
  18. package/esm/common/constant/sort.d.ts.map +0 -1
  19. package/esm/components/index.d.ts +0 -5
  20. package/esm/components/index.d.ts.map +0 -1
  21. package/esm/components/pagination/index.vue.d.ts +0 -43
  22. package/esm/components/pagination/index.vue.d.ts.map +0 -1
  23. package/esm/components/sheets/base-sheet.vue.d.ts +0 -287
  24. package/esm/components/sheets/base-sheet.vue.d.ts.map +0 -1
  25. package/esm/components/sheets/index.vue.d.ts +0 -432
  26. package/esm/components/sheets/index.vue.d.ts.map +0 -1
  27. package/esm/components/sheets/pivot-sheet.vue.d.ts +0 -217
  28. package/esm/components/sheets/pivot-sheet.vue.d.ts.map +0 -1
  29. package/esm/components/sheets/table-sheet.vue.d.ts +0 -217
  30. package/esm/components/sheets/table-sheet.vue.d.ts.map +0 -1
  31. package/esm/components/tooltip/components/detail.vue.d.ts +0 -7
  32. package/esm/components/tooltip/components/detail.vue.d.ts.map +0 -1
  33. package/esm/components/tooltip/components/head-info.vue.d.ts +0 -7
  34. package/esm/components/tooltip/components/head-info.vue.d.ts.map +0 -1
  35. package/esm/components/tooltip/components/infos.vue.d.ts +0 -7
  36. package/esm/components/tooltip/components/infos.vue.d.ts.map +0 -1
  37. package/esm/components/tooltip/components/operator/index.d.ts +0 -4
  38. package/esm/components/tooltip/components/operator/index.d.ts.map +0 -1
  39. package/esm/components/tooltip/components/operator/index.vue.d.ts +0 -11
  40. package/esm/components/tooltip/components/operator/index.vue.d.ts.map +0 -1
  41. package/esm/components/tooltip/components/operator/menu.vue.d.ts +0 -12
  42. package/esm/components/tooltip/components/operator/menu.vue.d.ts.map +0 -1
  43. package/esm/components/tooltip/components/operator/title.vue.d.ts +0 -11
  44. package/esm/components/tooltip/components/operator/title.vue.d.ts.map +0 -1
  45. package/esm/components/tooltip/components/simple-tips.vue.d.ts +0 -7
  46. package/esm/components/tooltip/components/simple-tips.vue.d.ts.map +0 -1
  47. package/esm/components/tooltip/components/summary.vue.d.ts +0 -9
  48. package/esm/components/tooltip/components/summary.vue.d.ts.map +0 -1
  49. package/esm/components/tooltip/custom-tooltip.d.ts +0 -7
  50. package/esm/components/tooltip/custom-tooltip.d.ts.map +0 -1
  51. package/esm/components/tooltip/index.vue.d.ts +0 -8
  52. package/esm/components/tooltip/index.vue.d.ts.map +0 -1
  53. package/esm/components/tooltip/interface.d.ts +0 -9
  54. package/esm/components/tooltip/interface.d.ts.map +0 -1
  55. package/esm/hooks/useEvents.d.ts +0 -5
  56. package/esm/hooks/useEvents.d.ts.map +0 -1
  57. package/esm/hooks/useExpose.d.ts +0 -6
  58. package/esm/hooks/useExpose.d.ts.map +0 -1
  59. package/esm/hooks/useLoading.d.ts +0 -7
  60. package/esm/hooks/useLoading.d.ts.map +0 -1
  61. package/esm/hooks/usePagination.d.ts +0 -14
  62. package/esm/hooks/usePagination.d.ts.map +0 -1
  63. package/esm/hooks/useResize.d.ts +0 -8
  64. package/esm/hooks/useResize.d.ts.map +0 -1
  65. package/esm/hooks/useSheetUpdate.d.ts +0 -5
  66. package/esm/hooks/useSheetUpdate.d.ts.map +0 -1
  67. package/esm/hooks/useSpreadSheet.d.ts +0 -19
  68. package/esm/hooks/useSpreadSheet.d.ts.map +0 -1
  69. package/esm/index.d.ts.map +0 -1
  70. package/esm/interface.d.ts +0 -36
  71. package/esm/interface.d.ts.map +0 -1
  72. package/esm/utils/extendLocale.d.ts +0 -2
  73. package/esm/utils/extendLocale.d.ts.map +0 -1
  74. package/esm/utils/initPropAndEmits.d.ts +0 -137
  75. package/esm/utils/initPropAndEmits.d.ts.map +0 -1
  76. package/esm/utils/options.d.ts +0 -3
  77. package/esm/utils/options.d.ts.map +0 -1
  78. package/esm/utils/traverse.d.ts +0 -2
  79. package/esm/utils/traverse.d.ts.map +0 -1
package/esm/index.d.ts CHANGED
@@ -1,4 +1,4366 @@
1
- import './utils/extendLocale';
2
- export * from './hooks/useExpose';
3
- export * from './components';
4
- //# sourceMappingURL=index.d.ts.map
1
+ import { AllowedComponentProps } from 'vue';
2
+ import type { BBox } from '@antv/g-canvas';
3
+ import { Canvas } from '@antv/g-canvas';
4
+ import { CellMeta } from '@antv/s2';
5
+ import { CellScrollPosition } from '@antv/s2';
6
+ import { CollapsedRowsType } from '@antv/s2';
7
+ import { ComponentCustomProps } from 'vue';
8
+ import { ComponentOptionsMixin } from 'vue';
9
+ import { ComputedRef } from 'vue';
10
+ import type * as CSS_2 from 'csstype';
11
+ import { Data } from '@antv/s2';
12
+ import { DataCell } from '@antv/s2';
13
+ import { DataType } from '@antv/s2';
14
+ import { DebouncedFunc } from 'lodash';
15
+ import { default as default_2 } from '@antv/g-base/lib/event/graph-event';
16
+ import { DefineComponent } from 'vue';
17
+ import EE from '@antv/event-emitter';
18
+ import { Event as Event_2 } from '@antv/g-canvas';
19
+ import { ExtractPropTypes } from 'vue';
20
+ import type { GEvent } from '@antv/s2';
21
+ import { Group } from '@antv/g-canvas';
22
+ import { HiddenColumnsInfo } from '@antv/s2';
23
+ import type { IElement } from '@antv/g-canvas';
24
+ import { IGroup } from '@antv/g-canvas';
25
+ import type { IShape } from '@antv/g-canvas';
26
+ import { LayoutResult } from '@antv/s2';
27
+ import { MemoizedFunction } from 'lodash';
28
+ import { Node as Node_2 } from '@antv/s2';
29
+ import { Omit as Omit_2 } from 'lodash';
30
+ import { Point } from '@antv/g-canvas';
31
+ import { PropType } from 'vue';
32
+ import { Ref } from 'vue';
33
+ import { ResizeInfo } from '@antv/s2';
34
+ import { ResizeParams } from '@antv/s2';
35
+ import { S2DataConfig } from '@antv/s2';
36
+ import { S2MountContainer } from '@antv/s2';
37
+ import { S2Options } from '@antv/s2';
38
+ import { S2RenderOptions } from '@antv/s2';
39
+ import { ShallowRef } from 'vue';
40
+ import { Shape } from '@antv/g-canvas';
41
+ import { ShapeAttrs } from '@antv/g-canvas';
42
+ import type { SimpleBBox } from '@antv/g-canvas';
43
+ import { SortParams } from '@antv/s2';
44
+ import { SpreadSheet } from '@antv/s2';
45
+ import { TargetCellInfo } from '@antv/s2';
46
+ import { ThemeCfg } from '@antv/s2';
47
+ import { Timer } from 'd3-timer';
48
+ import { ViewMeta } from '@antv/s2';
49
+ import { VNodeProps } from 'vue';
50
+ import { Wheel } from '@antv/g-gesture';
51
+
52
+ declare type Adaptive = boolean | {
53
+ width?: boolean;
54
+ height?: boolean;
55
+ getContainer?: () => HTMLElement;
56
+ };
57
+
58
+ declare enum Aggregation {
59
+ SUM = "SUM",
60
+ MIN = "MIN",
61
+ MAX = "MAX",
62
+ AVG = "AVG"
63
+ }
64
+
65
+ declare interface Background {
66
+ opacity?: number;
67
+ color?: string;
68
+ }
69
+
70
+ declare abstract class BaseBBox implements BBox {
71
+ protected spreadsheet: SpreadSheet_2;
72
+ protected facet: BaseFacet;
73
+ protected layoutResult: LayoutResult_2;
74
+ x: number;
75
+ y: number;
76
+ minX: number;
77
+ minY: number;
78
+ maxX: number;
79
+ maxY: number;
80
+ width: number;
81
+ height: number;
82
+ originalWidth: number;
83
+ originalHeight: number;
84
+ viewportHeight: number;
85
+ viewportWidth: number;
86
+ constructor(facet: BaseFacet, autoCalculateBBoxWhenCreated?: boolean);
87
+ abstract calculateBBox(): void;
88
+ }
89
+
90
+ declare abstract class BaseCell<T extends SimpleBBox> extends Group {
91
+ protected meta: T;
92
+ protected spreadsheet: SpreadSheet_2;
93
+ protected theme: S2Theme;
94
+ protected backgroundShape: IShape;
95
+ protected textShape: IShape;
96
+ protected linkFieldShape: IShape;
97
+ protected actualText: string;
98
+ protected actualTextWidth: number;
99
+ protected stateShapes: Map<StateShapeLayer, IShape>;
100
+ constructor(meta: T, spreadsheet: SpreadSheet_2, ...restOptions: unknown[]);
101
+ getMeta(): T;
102
+ setMeta(viewMeta: T): void;
103
+ getIconStyle(): IconTheme;
104
+ getTextAndIconPosition(iconCount?: number): {
105
+ text: {
106
+ x: number;
107
+ y: number;
108
+ };
109
+ icon: {
110
+ x: number;
111
+ y: number;
112
+ };
113
+ };
114
+ getActualText(): string;
115
+ getFieldValue(): string;
116
+ /**
117
+ * in case there are more params to be handled
118
+ * @param options any type's rest params
119
+ */
120
+ protected handleRestOptions(...options: unknown[]): void;
121
+ /**
122
+ * Return the type of the cell
123
+ */
124
+ abstract get cellType(): CellTypes;
125
+ /**
126
+ * Determine how to render this cell area
127
+ */
128
+ protected abstract initCell(): void;
129
+ /**
130
+ * Update cell's selected state
131
+ */
132
+ abstract update(): void;
133
+ protected abstract getTextStyle(): TextTheme;
134
+ protected abstract getFormattedFieldValue(): FormatResult;
135
+ protected abstract getMaxTextWidth(): number;
136
+ protected abstract getTextPosition(): Point;
137
+ getStyle<K extends keyof S2Theme = keyof CellThemes>(name?: K): DefaultCellTheme | S2Theme[K];
138
+ protected getResizeAreaStyle(): ResizeArea;
139
+ protected shouldDrawResizeAreaByType(type: keyof ResizeActiveOptions): boolean | ResizeType;
140
+ protected getCellArea(): {
141
+ x: number;
142
+ y: number;
143
+ height: number;
144
+ width: number;
145
+ };
146
+ getContentArea(): {
147
+ x: number;
148
+ y: number;
149
+ width: number;
150
+ height: number;
151
+ };
152
+ protected getIconPosition(iconCount?: number): {
153
+ x: number;
154
+ y: number;
155
+ };
156
+ protected drawTextShape(): void;
157
+ protected drawLinkFieldShape(showLinkFieldShape: boolean, linkFillColor: string): void;
158
+ updateByState(stateName: InteractionStateName, cell: S2CellType): void;
159
+ hideInteractionShape(): void;
160
+ clearUnselectedState(): void;
161
+ getTextShape(): IShape;
162
+ }
163
+
164
+ declare interface BaseDataSet {
165
+ name: string;
166
+ value: string;
167
+ type?: 'text' | 'location' | 'date';
168
+ disabled?: boolean;
169
+ }
170
+
171
+ declare abstract class BaseDataSet_2 {
172
+ fields: Fields;
173
+ meta: Meta[];
174
+ originData: DataType_2[];
175
+ totalData: DataType_2[];
176
+ indexesData: DataType_2[][] | DataType_2[];
177
+ sortParams: SortParams_2;
178
+ filterParams: FilterParam[];
179
+ protected spreadsheet: SpreadSheet_2;
180
+ constructor(spreadsheet: SpreadSheet_2);
181
+ protected displayData: DataType_2[];
182
+ /**
183
+ * 查找字段信息
184
+ */
185
+ getFieldMeta: ((field: string, meta?: Meta[]) => Meta) & MemoizedFunction;
186
+ /**
187
+ * 获得字段名称
188
+ * @param field
189
+ */
190
+ getFieldName(field: string): string;
191
+ /**
192
+ * 获得字段格式方法
193
+ * @param field
194
+ */
195
+ getFieldFormatter(field: string): Formatter;
196
+ /**
197
+ * 获得字段描述
198
+ * @param field
199
+ */
200
+ getFieldDescription(field: string): string;
201
+ setDataCfg(dataCfg: S2DataConfig_2): void;
202
+ getDisplayDataSet(): DataType_2[];
203
+ getValueRangeByField(field: string): ValueRange;
204
+ /** ******************NEED IMPLEMENT BY USER CASE************************ */
205
+ /**
206
+ * Try to process dataConfig in different mode
207
+ * @param dataCfg
208
+ */
209
+ abstract processDataCfg(dataCfg: S2DataConfig_2): S2DataConfig_2;
210
+ /**
211
+ * 1、query !== null
212
+ * province city => field
213
+ * 辽宁省
214
+ * 达州市
215
+ * 芜湖市
216
+ * field = province
217
+ * query = {province: '辽宁省'}
218
+ * => [达州市,芜湖市]
219
+ *
220
+ * 2、query = null
221
+ * query param is not necessary, when just
222
+ * get some field's all dimension values
223
+ *
224
+ * @param field current dimensions
225
+ * @param query dimension value query
226
+ */
227
+ abstract getDimensionValues(field: string, query?: DataType_2): string[];
228
+ /**
229
+ * In most cases, this function to get the specific
230
+ * cross data cell data
231
+ * @param params
232
+ */
233
+ abstract getCellData(params: CellDataParams): DataType_2;
234
+ /**
235
+ * To get a row or column cells data;
236
+ * if query is empty, return all data
237
+ * @param query
238
+ * @param isTotals
239
+ * @param isRow
240
+ * @param drillDownFields
241
+ */
242
+ abstract getMultiData(query: DataType_2, isTotals?: boolean, isRow?: boolean, drillDownFields?: string[]): DataType_2[];
243
+ moreThanOneValue(): boolean;
244
+ }
245
+
246
+ declare interface BaseDrillDownComponentProps<DataSet = BaseDataSet> {
247
+ className?: string;
248
+ titleText?: string;
249
+ searchText?: string;
250
+ clearButtonText?: string;
251
+ dataSet: DataSet[];
252
+ drillFields?: string[];
253
+ disabledFields?: string[];
254
+ getDrillFields?: (drillFields: string[]) => void;
255
+ setDrillFields?: (drillFields: string[]) => void;
256
+ drillVisible?: boolean;
257
+ }
258
+
259
+ declare abstract class BaseEvent {
260
+ spreadsheet: SpreadSheet_2;
261
+ constructor(spreadsheet: SpreadSheet_2);
262
+ abstract bindEvents(): void;
263
+ }
264
+
265
+ declare abstract class BaseFacet {
266
+ spreadsheet: SpreadSheet_2;
267
+ cornerBBox: CornerBBox;
268
+ panelBBox: PanelBBox;
269
+ backgroundGroup: IGroup;
270
+ panelGroup: IGroup;
271
+ foregroundGroup: IGroup;
272
+ cfg: SpreadSheetFacetCfg;
273
+ layoutResult: LayoutResult_2;
274
+ viewCellWidths: number[];
275
+ viewCellHeights: ViewCellHeights;
276
+ protected mobileWheel: Wheel;
277
+ protected timer: Timer;
278
+ hScrollBar: ScrollBar;
279
+ hRowScrollBar: ScrollBar;
280
+ vScrollBar: ScrollBar;
281
+ rowHeader: RowHeader;
282
+ columnHeader: ColHeader;
283
+ cornerHeader: CornerHeader;
284
+ rowIndexHeader: SeriesNumberHeader;
285
+ centerFrame: Frame;
286
+ gridInfo: GridInfo;
287
+ protected abstract doLayout(): LayoutResult_2;
288
+ abstract getViewCellHeights(layoutResult: LayoutResult_2): ViewCellHeights;
289
+ protected scrollFrameId: ReturnType<typeof requestAnimationFrame>;
290
+ get scrollBarTheme(): ScrollBarTheme;
291
+ get scrollBarSize(): number;
292
+ protected preCellIndexes: PanelIndexes;
293
+ constructor(cfg: SpreadSheetFacetCfg);
294
+ hideScrollBar: () => void;
295
+ delayHideScrollBar: DebouncedFunc<() => void>;
296
+ delayHideScrollbarOnMobile: () => void;
297
+ showVerticalScrollBar: () => void;
298
+ showHorizontalScrollBar: () => void;
299
+ onContainerWheel: () => void;
300
+ onContainerWheelForPc: () => void;
301
+ onContainerWheelForMobile: () => void;
302
+ bindEvents: () => void;
303
+ /**
304
+ * Start render, call from outside
305
+ */
306
+ render(): void;
307
+ /**
308
+ * 在每次render, 校验scroll offset是否在合法范围中
309
+ * 比如在滚动条已经滚动到100%的状态的前提下:( maxAvailableScrollOffsetX = colsHierarchy.width - viewportBBox.width )
310
+ * 此时changeSheetSize,sheet从 small width 变为 big width
311
+ * 导致后者 viewport 区域更大,其结果就是后者的 maxAvailableScrollOffsetX 更小
312
+ * 此时就需要重置 scrollOffsetX,否则就会导致滚动过多,出现空白区域
313
+ */
314
+ protected adjustScrollOffset(): void;
315
+ getSeriesNumberWidth(): number;
316
+ getCanvasHW(): {
317
+ width: number;
318
+ height: number;
319
+ };
320
+ getContentHeight(): number;
321
+ updateScrollOffset(offsetConfig: OffsetConfig): void;
322
+ getPaginationScrollY(): number;
323
+ destroy(): void;
324
+ setScrollOffset: (scrollOffset: ScrollOffset) => void;
325
+ getScrollOffset: () => ScrollOffset;
326
+ emitPaginationEvent: () => void;
327
+ private unbindEvents;
328
+ clipPanelGroup: () => void;
329
+ calculateCellWidthHeight: () => void;
330
+ /**
331
+ * The purpose of this rewrite is to take into account that when rowHeader supports scrollbars
332
+ the panel viewable area must vary with the horizontal distance of the scroll
333
+ * @param scrollX
334
+ * @param scrollY
335
+ * @public
336
+ */
337
+ calculateXYIndexes(scrollX: number, scrollY: number): PanelIndexes;
338
+ getRealScrollX: (scrollX: number, hRowScroll?: number) => number;
339
+ protected calculateCornerBBox(): void;
340
+ protected calculatePanelBBox: () => void;
341
+ getRealWidth: () => number;
342
+ getCellRange(): {
343
+ start: number;
344
+ end: number;
345
+ };
346
+ getRealHeight: () => number;
347
+ clearAllGroup: () => void;
348
+ scrollWithAnimation: (offsetConfig?: OffsetConfig, duration?: number, cb?: () => void) => void;
349
+ scrollImmediately: (offsetConfig?: OffsetConfig) => void;
350
+ startScroll: (newX: number, newY: number) => void;
351
+ getRendererHeight: () => number;
352
+ private getAdjustedScrollOffset;
353
+ renderRowScrollBar: (rowScrollX: number) => void;
354
+ getValidScrollBarOffset: (offset: number, maxOffset: number) => number;
355
+ renderHScrollBar: (width: number, realWidth: number, scrollX: number) => void;
356
+ private getScrollbarPosition;
357
+ renderVScrollBar: (height: number, realHeight: number, scrollY: number) => void;
358
+ getScrollBarOffset: (offset: number, scrollbar: ScrollBar) => number;
359
+ isScrollOverThePanelArea: ({ layerX, layerY }: Partial<S2WheelEvent>) => boolean;
360
+ isScrollOverTheCornerArea: ({ layerX, layerY }: Partial<S2WheelEvent>) => boolean;
361
+ updateHorizontalRowScrollOffset: ({ offset, layerX, layerY }: {
362
+ offset: any;
363
+ layerX: any;
364
+ layerY: any;
365
+ }) => void;
366
+ updateHorizontalScrollOffset: ({ offset, layerX, layerY }: {
367
+ offset: any;
368
+ layerX: any;
369
+ layerY: any;
370
+ }) => void;
371
+ isScrollToLeft: (deltaX: number) => boolean;
372
+ isScrollToRight: (deltaX: number) => boolean;
373
+ isScrollToTop: (deltaY: number) => boolean;
374
+ isScrollToBottom: (deltaY: number) => boolean;
375
+ isVerticalScrollOverTheViewport: (deltaY: number) => boolean;
376
+ isHorizontalScrollOverTheViewport: (deltaX: number) => boolean;
377
+ /**
378
+ 在当前表格滚动分两种情况:
379
+ 1. 当前表格无滚动条: 无需阻止外部容器滚动
380
+ 2. 当前表格有滚动条:
381
+ - 未滚动到顶部或底部: 当前表格滚动, 阻止外部容器滚动
382
+ - 滚动到顶部或底部: 恢复外部容器滚动
383
+ */
384
+ isScrollOverTheViewport: (deltaX: number, deltaY: number, layerY: number) => boolean;
385
+ cancelScrollFrame: () => boolean;
386
+ clearScrollFrameIdOnMobile: () => void;
387
+ /**
388
+ https://developer.mozilla.org/zh-CN/docs/Web/CSS/overscroll-behavior
389
+ 阻止外部容器滚动: 表格是虚拟滚动, 这里按照标准模拟浏览器的 [overscroll-behavior] 实现
390
+ 1. auto => 只有在滚动到表格顶部或底部时才触发外部容器滚动
391
+ 1. contain => 默认的滚动边界行为不变(“触底”效果或者刷新),但是临近的滚动区域不会被滚动链影响到
392
+ 2. none => 临近滚动区域不受到滚动链影响,而且默认的滚动到边界的表现也被阻止
393
+ 所以只要不为 `auto`, 或者表格内, 都需要阻止外部容器滚动
394
+ */
395
+ private stopScrollChainingIfNeeded;
396
+ private stopScrollChaining;
397
+ onWheel: (event: S2WheelEvent) => void;
398
+ protected clip(scrollX: number, scrollY: number): void;
399
+ /**
400
+ * Translate panelGroup, rowHeader, cornerHeader, columnHeader ect
401
+ * according to new scroll offset
402
+ * @param scrollX
403
+ * @param scrollY
404
+ * @param hRowScroll
405
+ * @protected
406
+ */
407
+ protected translateRelatedGroups(scrollX: number, scrollY: number, hRowScroll: number): void;
408
+ addCell: (cell: S2CellType<ViewMeta_2>) => void;
409
+ realCellRender: (scrollX: number, scrollY: number) => void;
410
+ protected init(): void;
411
+ protected renderBackground(): void;
412
+ /**
413
+ * Render all scrollbars, default horizontal scrollbar only control viewport
414
+ * area(it means not contains row header)
415
+ * 1. individual row scrollbar
416
+ * 2. horizontal scroll bar(can control whether contains row header)
417
+ * 3. vertical scroll bar
418
+ */
419
+ protected renderScrollBars(): void;
420
+ /**
421
+ * Render all headers in {@link #foregroundGroup}, contains:
422
+ * 1. row header
423
+ * 2. col header
424
+ * 3. center frame
425
+ * 4. corner header
426
+ * 5. series number header
427
+ */
428
+ protected renderHeaders(): void;
429
+ protected getRowHeader(): RowHeader;
430
+ protected getColHeader(): ColHeader;
431
+ protected getCornerHeader(): CornerHeader;
432
+ protected getSeriesNumberHeader(): SeriesNumberHeader;
433
+ protected getCenterFrame(): Frame;
434
+ protected getGridInfo: () => {
435
+ cols: number[];
436
+ rows: any[];
437
+ };
438
+ drawGrid(): void;
439
+ /**
440
+ * When scroll behavior happened, only render one time in a period,
441
+ * but render immediately in initiate
442
+ * @protected
443
+ */
444
+ protected dynamicRenderCell(): void;
445
+ protected onAfterScroll: DebouncedFunc<() => void>;
446
+ protected saveInitColumnLeafNodes(columnNodes?: Node_2_2[]): void;
447
+ }
448
+
449
+ /**
450
+ * New Base Header for all headers(cornerHeader, rowHeader, colHeader)
451
+ * NOTE: Do not use this.cfg(which lays in group) to get header config,
452
+ * use {@see headerConfig} instead
453
+ */
454
+ declare abstract class BaseHeader<T extends BaseHeaderConfig> extends Group {
455
+ protected headerConfig: T;
456
+ protected constructor(cfg: T);
457
+ /**
458
+ * 清空热区,为重绘做准备,防止热区重复渲染
459
+ * @param type 当前重绘的header类型
460
+ */
461
+ protected clearResizeAreaGroup(type: string): void;
462
+ render(type: string): void;
463
+ /**
464
+ * Scroll header group's x,y
465
+ * @param scrollX hScrollBar horizontal offset
466
+ * @param scrollY hScrollBar vertical offset
467
+ * @param type
468
+ */
469
+ onScrollXY(scrollX: number, scrollY: number, type: string): void;
470
+ /**
471
+ * Only call when hRowScrollBar scrolls
472
+ * @param rowScrollX hRowScrollbar horizontal offset
473
+ * @param type
474
+ */
475
+ onRowScrollX(rowScrollX: number, type: string): void;
476
+ protected abstract layout(): any;
477
+ protected abstract offset(): any;
478
+ protected abstract clip(): any;
479
+ clear(): void;
480
+ /**
481
+ * Check whether header cell in viewPort
482
+ * @param gridPos
483
+ * @param gridSize
484
+ * @param viewportPos
485
+ * @param viewportSize
486
+ */
487
+ protected isHeaderCellInViewport: (gridPos: any, gridSize: any, viewportPos: any, viewportSize: any) => boolean;
488
+ }
489
+
490
+ /**
491
+ * Base header config interface
492
+ */
493
+ declare interface BaseHeaderConfig {
494
+ scrollX?: number;
495
+ scrollY?: number;
496
+ width: number;
497
+ height: number;
498
+ originalWidth?: number;
499
+ originalHeight?: number;
500
+ viewportWidth: number;
501
+ viewportHeight: number;
502
+ position: Point;
503
+ data: Node_2_2[];
504
+ spreadsheet: SpreadSheet_2;
505
+ sortParam?: SortParam;
506
+ }
507
+
508
+ declare interface BaseNodeConfig {
509
+ id: string;
510
+ key: string;
511
+ value: string;
512
+ label?: string;
513
+ level?: number;
514
+ rowIndex?: number;
515
+ colIndex?: number;
516
+ parent?: Node_2_2;
517
+ isTotals?: boolean;
518
+ isSubTotals?: boolean;
519
+ isCollapsed?: boolean;
520
+ isGrandTotals?: boolean;
521
+ hierarchy?: Hierarchy;
522
+ isPivotMode?: boolean;
523
+ seriesNumberWidth?: number;
524
+ field?: string;
525
+ spreadsheet?: SpreadSheet_2;
526
+ query?: Record<string, any>;
527
+ belongsCell?: S2CellType;
528
+ isTotalMeasure?: boolean;
529
+ inCollapseNode?: boolean;
530
+ isLeaf?: boolean;
531
+ x?: number;
532
+ y?: number;
533
+ width?: number;
534
+ height?: number;
535
+ padding?: number;
536
+ children?: Node_2_2[];
537
+ extra?: Record<string, any>;
538
+ }
539
+
540
+ export declare const BaseSheet: DefineComponent< {
541
+ sheetType: PropType<SheetType>;
542
+ dataCfg: PropType<S2DataConfig>;
543
+ themeCfg: PropType<ThemeCfg>;
544
+ showPagination: {
545
+ type: PropType<boolean | {
546
+ onShowSizeChange?: (pageSize: number) => void;
547
+ onChange?: (current: number) => void;
548
+ }>;
549
+ default: boolean | {
550
+ onShowSizeChange?: (pageSize: number) => void;
551
+ onChange?: (current: number) => void;
552
+ };
553
+ };
554
+ loading: BooleanConstructor;
555
+ partDrillDown: ObjectConstructor;
556
+ header: ObjectConstructor;
557
+ options: {
558
+ type: PropType<S2Options<string | Element>>;
559
+ default: S2Options<string | Element>;
560
+ };
561
+ adaptive: {
562
+ type: PropType<Adaptive>;
563
+ default: Adaptive;
564
+ };
565
+ onSpreadsheet: PropType<(container: S2MountContainer, dataCfg: S2DataConfig, options: S2Options<string | Element>) => SpreadSheet>;
566
+ onGetSpreadSheet: PropType<(spreadsheet: SpreadSheet) => void>;
567
+ }, {
568
+ S2_PREFIX_CLS: string;
569
+ wrapperRef: Ref<HTMLDivElement>;
570
+ containerRef: Ref<HTMLDivElement>;
571
+ s2Ref: ShallowRef<SpreadSheet>;
572
+ loading: Ref<boolean>;
573
+ pagination: {
574
+ visible: ComputedRef<boolean>;
575
+ current: Ref<number>;
576
+ pageSize: Ref<number>;
577
+ total: Ref<number>;
578
+ change: (nextCurrent: number) => void;
579
+ showSizeChange: (nextPageSize: number) => void;
580
+ };
581
+ handlePageChange: (nextCurrent: number) => void;
582
+ handlePageSizeChange: (nextSize: number) => void;
583
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
584
+ spreadsheet: (container: S2MountContainer, dataCfg: S2DataConfig, options: S2Options<string | Element>) => SpreadSheet;
585
+ getSpreadSheet: (spreadsheet: SpreadSheet) => void;
586
+ sheetUpdate: SheetUpdateCallback;
587
+ rowCellHover: (data: TargetCellInfo) => void;
588
+ rowCellClick: (data: TargetCellInfo) => void;
589
+ rowCellDoubleClick: (data: TargetCellInfo) => void;
590
+ rowCellContextMenu: (data: TargetCellInfo) => void;
591
+ rowCellMouseDown: (data: TargetCellInfo) => void;
592
+ rowCellMouseUp: (data: TargetCellInfo) => void;
593
+ rowCellMouseMove: (data: TargetCellInfo) => void;
594
+ rowCellCollapseTreeRows: (params: {
595
+ id: number;
596
+ isCollapsed: boolean;
597
+ node: Node_2;
598
+ }) => void;
599
+ colCellHover: (data: TargetCellInfo) => void;
600
+ colCellClick: (data: TargetCellInfo) => void;
601
+ colCellDoubleClick: (data: TargetCellInfo) => void;
602
+ colCellContextMenu: (data: TargetCellInfo) => void;
603
+ colCellMouseDown: (data: TargetCellInfo) => void;
604
+ colCellMouseUp: (data: TargetCellInfo) => void;
605
+ colCellMouseMove: (data: TargetCellInfo) => void;
606
+ dataCellHover: (data: TargetCellInfo) => void;
607
+ dataCellClick: (data: TargetCellInfo) => void;
608
+ dataCellDoubleClick: (data: TargetCellInfo) => void;
609
+ dataCellContextMenu: (data: TargetCellInfo) => void;
610
+ dataCellMouseDown: (data: TargetCellInfo) => void;
611
+ dataCellMouseUp: (data: TargetCellInfo) => void;
612
+ dataCellMouseMove: (data: TargetCellInfo) => void;
613
+ dataCellTrendIconClick: (meta: ViewMeta) => void;
614
+ dataCellBrushSelection: (brushRangeDataCells: DataCell[]) => void;
615
+ dataCellSelectMove: (metas: CellMeta[]) => void;
616
+ cornerCellHover: (data: TargetCellInfo) => void;
617
+ cornerCellClick: (data: TargetCellInfo) => void;
618
+ cornerCellDoubleClick: (data: TargetCellInfo) => void;
619
+ cornerCellContextMenu: (data: TargetCellInfo) => void;
620
+ cornerCellMouseDown: (data: TargetCellInfo) => void;
621
+ cornerCellMouseUp: (data: TargetCellInfo) => void;
622
+ cornerCellMouseMove: (data: TargetCellInfo) => void;
623
+ mergedCellsHover: (data: TargetCellInfo) => void;
624
+ mergedCellsClick: (data: TargetCellInfo) => void;
625
+ mergedCellsDoubleClick: (data: TargetCellInfo) => void;
626
+ mergedCellsContextMenu: (data: TargetCellInfo) => void;
627
+ mergedCellsMouseDown: (data: TargetCellInfo) => void;
628
+ mergedCellsMouseUp: (data: TargetCellInfo) => void;
629
+ mergedCellsMouseMove: (data: TargetCellInfo) => void;
630
+ rangeSort: (params: SortParams) => void;
631
+ rangeSorted: (event: default_2) => void;
632
+ rangeFilter: (data: {
633
+ filterKey: string;
634
+ filteredValues: string[];
635
+ }) => void;
636
+ rangeFiltered: (data: DataType[]) => void;
637
+ layoutAfterHeaderLayout: (layoutResult: LayoutResult) => void;
638
+ layoutPagination: (data: {
639
+ pageSize: number;
640
+ pageCount: number;
641
+ total: number;
642
+ current: number;
643
+ }) => void;
644
+ layoutCellScroll: (position: CellScrollPosition) => void;
645
+ layoutAfterCollapseRows: (data: CollapsedRowsType) => void;
646
+ collapseRowsAll: (hierarchyCollapse: boolean) => void;
647
+ layoutColsExpanded: (node: Node_2) => void;
648
+ layoutColsHidden: (data: {
649
+ currentHiddenColumnsInfo: HiddenColumnsInfo;
650
+ hiddenColumnsDetail: HiddenColumnsInfo[];
651
+ }) => void;
652
+ beforeRender: () => void;
653
+ afterRender: () => void;
654
+ destroy: () => void;
655
+ layoutResize: (params: ResizeParams) => void;
656
+ layoutResizeSeriesWidth: (params: ResizeParams) => void;
657
+ layoutResizeRowWidth: (params: ResizeParams) => void;
658
+ layoutResizeRowHeight: (params: ResizeParams) => void;
659
+ layoutResizeColWidth: (params: ResizeParams) => void;
660
+ layoutResizeColHeight: (params: ResizeParams) => void;
661
+ layoutResizeTreeWidth: (params: ResizeParams) => void;
662
+ layoutResizeMouseDown: (data: {
663
+ event: Partial<MouseEvent>;
664
+ resizeInfo?: ResizeInfo;
665
+ }) => void;
666
+ layoutResizeMouseUp: (data: {
667
+ event: Partial<MouseEvent>;
668
+ resizeInfo?: ResizeInfo;
669
+ }) => void;
670
+ layoutResizeMouseMove: (data: {
671
+ event: Partial<MouseEvent>;
672
+ resizeInfo?: ResizeInfo;
673
+ }) => void;
674
+ keyBoardDown: (event: KeyboardEvent) => void;
675
+ keyBoardUp: (event: KeyboardEvent) => void;
676
+ copied: (copyData: string) => void;
677
+ actionIconHover: (event: default_2) => void;
678
+ actionIconClick: (event: default_2) => void;
679
+ contextMenu: (event: default_2) => void;
680
+ click: (event: default_2) => void;
681
+ doubleClick: (event: default_2) => void;
682
+ mouseHover: (event: default_2) => void;
683
+ mouseUp: (event: MouseEvent) => void;
684
+ selected: (cells: DataCell[]) => void;
685
+ reset: (event: KeyboardEvent) => void;
686
+ linkFieldJump: (data: {
687
+ key: string;
688
+ record: Data;
689
+ }) => void;
690
+ }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
691
+ sheetType: PropType<SheetType>;
692
+ dataCfg: PropType<S2DataConfig>;
693
+ themeCfg: PropType<ThemeCfg>;
694
+ showPagination: {
695
+ type: PropType<boolean | {
696
+ onShowSizeChange?: (pageSize: number) => void;
697
+ onChange?: (current: number) => void;
698
+ }>;
699
+ default: boolean | {
700
+ onShowSizeChange?: (pageSize: number) => void;
701
+ onChange?: (current: number) => void;
702
+ };
703
+ };
704
+ loading: BooleanConstructor;
705
+ partDrillDown: ObjectConstructor;
706
+ header: ObjectConstructor;
707
+ options: {
708
+ type: PropType<S2Options<string | Element>>;
709
+ default: S2Options<string | Element>;
710
+ };
711
+ adaptive: {
712
+ type: PropType<Adaptive>;
713
+ default: Adaptive;
714
+ };
715
+ onSpreadsheet: PropType<(container: S2MountContainer, dataCfg: S2DataConfig, options: S2Options<string | Element>) => SpreadSheet>;
716
+ onGetSpreadSheet: PropType<(spreadsheet: SpreadSheet) => void>;
717
+ }>> & {
718
+ onSheetUpdate?: (params: S2RenderOptions) => any;
719
+ onRowCellHover?: (data: TargetCellInfo) => any;
720
+ onRowCellClick?: (data: TargetCellInfo) => any;
721
+ onRowCellDoubleClick?: (data: TargetCellInfo) => any;
722
+ onRowCellContextMenu?: (data: TargetCellInfo) => any;
723
+ onRowCellMouseDown?: (data: TargetCellInfo) => any;
724
+ onRowCellMouseUp?: (data: TargetCellInfo) => any;
725
+ onRowCellMouseMove?: (data: TargetCellInfo) => any;
726
+ onRowCellCollapseTreeRows?: (params: {
727
+ id: number;
728
+ isCollapsed: boolean;
729
+ node: Node_2;
730
+ }) => any;
731
+ onColCellHover?: (data: TargetCellInfo) => any;
732
+ onColCellClick?: (data: TargetCellInfo) => any;
733
+ onColCellDoubleClick?: (data: TargetCellInfo) => any;
734
+ onColCellContextMenu?: (data: TargetCellInfo) => any;
735
+ onColCellMouseDown?: (data: TargetCellInfo) => any;
736
+ onColCellMouseUp?: (data: TargetCellInfo) => any;
737
+ onColCellMouseMove?: (data: TargetCellInfo) => any;
738
+ onDataCellHover?: (data: TargetCellInfo) => any;
739
+ onDataCellClick?: (data: TargetCellInfo) => any;
740
+ onDataCellDoubleClick?: (data: TargetCellInfo) => any;
741
+ onDataCellContextMenu?: (data: TargetCellInfo) => any;
742
+ onDataCellMouseDown?: (data: TargetCellInfo) => any;
743
+ onDataCellMouseUp?: (data: TargetCellInfo) => any;
744
+ onDataCellMouseMove?: (data: TargetCellInfo) => any;
745
+ onDataCellTrendIconClick?: (meta: ViewMeta) => any;
746
+ onDataCellBrushSelection?: (brushRangeDataCells: DataCell[]) => any;
747
+ onDataCellSelectMove?: (metas: CellMeta[]) => any;
748
+ onCornerCellHover?: (data: TargetCellInfo) => any;
749
+ onCornerCellClick?: (data: TargetCellInfo) => any;
750
+ onCornerCellDoubleClick?: (data: TargetCellInfo) => any;
751
+ onCornerCellContextMenu?: (data: TargetCellInfo) => any;
752
+ onCornerCellMouseDown?: (data: TargetCellInfo) => any;
753
+ onCornerCellMouseUp?: (data: TargetCellInfo) => any;
754
+ onCornerCellMouseMove?: (data: TargetCellInfo) => any;
755
+ onMergedCellsHover?: (data: TargetCellInfo) => any;
756
+ onMergedCellsClick?: (data: TargetCellInfo) => any;
757
+ onMergedCellsDoubleClick?: (data: TargetCellInfo) => any;
758
+ onMergedCellsContextMenu?: (data: TargetCellInfo) => any;
759
+ onMergedCellsMouseDown?: (data: TargetCellInfo) => any;
760
+ onMergedCellsMouseUp?: (data: TargetCellInfo) => any;
761
+ onMergedCellsMouseMove?: (data: TargetCellInfo) => any;
762
+ onRangeSort?: (params: SortParams) => any;
763
+ onRangeSorted?: (event: default_2) => any;
764
+ onRangeFilter?: (data: {
765
+ filterKey: string;
766
+ filteredValues: string[];
767
+ }) => any;
768
+ onRangeFiltered?: (data: DataType[]) => any;
769
+ onLayoutAfterHeaderLayout?: (layoutResult: LayoutResult) => any;
770
+ onLayoutPagination?: (data: {
771
+ pageSize: number;
772
+ pageCount: number;
773
+ total: number;
774
+ current: number;
775
+ }) => any;
776
+ onLayoutCellScroll?: (position: CellScrollPosition) => any;
777
+ onLayoutAfterCollapseRows?: (data: CollapsedRowsType) => any;
778
+ onCollapseRowsAll?: (hierarchyCollapse: boolean) => any;
779
+ onLayoutColsExpanded?: (node: Node_2) => any;
780
+ onLayoutColsHidden?: (data: {
781
+ currentHiddenColumnsInfo: HiddenColumnsInfo;
782
+ hiddenColumnsDetail: HiddenColumnsInfo[];
783
+ }) => any;
784
+ onBeforeRender?: () => any;
785
+ onAfterRender?: () => any;
786
+ onDestroy?: () => any;
787
+ onLayoutResize?: (params: ResizeParams) => any;
788
+ onLayoutResizeSeriesWidth?: (params: ResizeParams) => any;
789
+ onLayoutResizeRowWidth?: (params: ResizeParams) => any;
790
+ onLayoutResizeRowHeight?: (params: ResizeParams) => any;
791
+ onLayoutResizeColWidth?: (params: ResizeParams) => any;
792
+ onLayoutResizeColHeight?: (params: ResizeParams) => any;
793
+ onLayoutResizeTreeWidth?: (params: ResizeParams) => any;
794
+ onLayoutResizeMouseDown?: (data: {
795
+ event: Partial<MouseEvent>;
796
+ resizeInfo?: ResizeInfo;
797
+ }) => any;
798
+ onLayoutResizeMouseUp?: (data: {
799
+ event: Partial<MouseEvent>;
800
+ resizeInfo?: ResizeInfo;
801
+ }) => any;
802
+ onLayoutResizeMouseMove?: (data: {
803
+ event: Partial<MouseEvent>;
804
+ resizeInfo?: ResizeInfo;
805
+ }) => any;
806
+ onKeyBoardDown?: (event: KeyboardEvent) => any;
807
+ onKeyBoardUp?: (event: KeyboardEvent) => any;
808
+ onCopied?: (copyData: string) => any;
809
+ onActionIconHover?: (event: default_2) => any;
810
+ onActionIconClick?: (event: default_2) => any;
811
+ onContextMenu?: (event: default_2) => any;
812
+ onClick?: (event: default_2) => any;
813
+ onDoubleClick?: (event: default_2) => any;
814
+ onMouseHover?: (event: default_2) => any;
815
+ onMouseUp?: (event: MouseEvent) => any;
816
+ onSelected?: (cells: DataCell[]) => any;
817
+ onReset?: (event: KeyboardEvent) => any;
818
+ onLinkFieldJump?: (data: {
819
+ key: string;
820
+ record: Data;
821
+ }) => any;
822
+ onSpreadsheet?: (container: S2MountContainer, dataCfg: S2DataConfig, options: S2Options<string | Element>) => any;
823
+ onGetSpreadSheet?: (spreadsheet: SpreadSheet) => any;
824
+ }, {
825
+ options: S2Options<string | Element>;
826
+ loading: boolean;
827
+ adaptive: boolean | {
828
+ width?: boolean;
829
+ height?: boolean;
830
+ getContainer?: () => HTMLElement;
831
+ };
832
+ showPagination: boolean | {
833
+ onShowSizeChange?: (pageSize: number) => void;
834
+ onChange?: (current: number) => void;
835
+ };
836
+ }>;
837
+
838
+ declare interface BaseSheetComponentProps<PartialDrillDown = unknown, Header = unknown> {
839
+ sheetType?: SheetType;
840
+ spreadsheet?: (container: S2MountContainer, dataCfg: S2DataConfig, options: S2Options) => SpreadSheet;
841
+ dataCfg: S2DataConfig;
842
+ options?: S2Options;
843
+ loading?: boolean;
844
+ partDrillDown?: PartialDrillDown;
845
+ adaptive?: Adaptive;
846
+ showPagination?: boolean | {
847
+ onShowSizeChange?: (pageSize: number) => void;
848
+ onChange?: (current: number) => void;
849
+ };
850
+ themeCfg?: ThemeCfg;
851
+ header?: Header;
852
+ getSpreadSheet?: (spreadsheet: SpreadSheet) => void;
853
+ /** 底表 render callback */
854
+ onSheetUpdate?: SheetUpdateCallback;
855
+ onRowCellHover?: (data: TargetCellInfo) => void;
856
+ onRowCellClick?: (data: TargetCellInfo) => void;
857
+ onRowCellDoubleClick?: (data: TargetCellInfo) => void;
858
+ onRowCellContextMenu?: (data: TargetCellInfo) => void;
859
+ onRowCellMouseDown?: (data: TargetCellInfo) => void;
860
+ onRowCellMouseUp?: (data: TargetCellInfo) => void;
861
+ onRowCellMouseMove?: (data: TargetCellInfo) => void;
862
+ onRowCellCollapseTreeRows?: (params: {
863
+ id: number;
864
+ isCollapsed: boolean;
865
+ node: Node_2;
866
+ }) => void;
867
+ onColCellHover?: (data: TargetCellInfo) => void;
868
+ onColCellClick?: (data: TargetCellInfo) => void;
869
+ onColCellDoubleClick?: (data: TargetCellInfo) => void;
870
+ onColCellContextMenu?: (data: TargetCellInfo) => void;
871
+ onColCellMouseDown?: (data: TargetCellInfo) => void;
872
+ onColCellMouseUp?: (data: TargetCellInfo) => void;
873
+ onColCellMouseMove?: (data: TargetCellInfo) => void;
874
+ onDataCellHover?: (data: TargetCellInfo) => void;
875
+ onDataCellClick?: (data: TargetCellInfo) => void;
876
+ onDataCellDoubleClick?: (data: TargetCellInfo) => void;
877
+ onDataCellContextMenu?: (data: TargetCellInfo) => void;
878
+ onDataCellMouseDown?: (data: TargetCellInfo) => void;
879
+ onDataCellMouseUp?: (data: TargetCellInfo) => void;
880
+ onDataCellMouseMove?: (data: TargetCellInfo) => void;
881
+ onDataCellTrendIconClick?: (meta: ViewMeta) => void;
882
+ onDataCellBrushSelection?: (brushRangeDataCells: DataCell[]) => void;
883
+ onDataCellSelectMove?: (metas: CellMeta[]) => void;
884
+ onCornerCellHover?: (data: TargetCellInfo) => void;
885
+ onCornerCellClick?: (data: TargetCellInfo) => void;
886
+ onCornerCellDoubleClick?: (data: TargetCellInfo) => void;
887
+ onCornerCellContextMenu?: (data: TargetCellInfo) => void;
888
+ onCornerCellMouseDown?: (data: TargetCellInfo) => void;
889
+ onCornerCellMouseUp?: (data: TargetCellInfo) => void;
890
+ onCornerCellMouseMove?: (data: TargetCellInfo) => void;
891
+ onMergedCellsHover?: (data: TargetCellInfo) => void;
892
+ onMergedCellsClick?: (data: TargetCellInfo) => void;
893
+ onMergedCellsDoubleClick?: (data: TargetCellInfo) => void;
894
+ onMergedCellsContextMenu?: (data: TargetCellInfo) => void;
895
+ onMergedCellsMouseDown?: (data: TargetCellInfo) => void;
896
+ onMergedCellsMouseUp?: (data: TargetCellInfo) => void;
897
+ onMergedCellsMouseMove?: (data: TargetCellInfo) => void;
898
+ onRangeSort?: (params: SortParams) => void;
899
+ onRangeSorted?: (event: GEvent) => void;
900
+ onRangeFilter?: (data: {
901
+ filterKey: string;
902
+ filteredValues: string[];
903
+ }) => void;
904
+ onRangeFiltered?: (data: DataType[]) => void;
905
+ onLayoutAfterHeaderLayout?: (layoutResult: LayoutResult) => void;
906
+ onLayoutPagination?: (data: {
907
+ pageSize: number;
908
+ pageCount: number;
909
+ total: number;
910
+ current: number;
911
+ }) => void;
912
+ onLayoutCellScroll?: (position: CellScrollPosition) => void;
913
+ onLayoutAfterCollapseRows?: (data: CollapsedRowsType) => void;
914
+ onCollapseRowsAll?: (hierarchyCollapse: boolean) => void;
915
+ onLayoutColsExpanded?: (node: Node_2) => void;
916
+ onLayoutColsHidden?: (data: {
917
+ currentHiddenColumnsInfo: HiddenColumnsInfo;
918
+ hiddenColumnsDetail: HiddenColumnsInfo[];
919
+ }) => void;
920
+ onBeforeRender?: () => void;
921
+ onAfterRender?: () => void;
922
+ onDestroy?: () => void;
923
+ onLayoutResize?: (params: ResizeParams) => void;
924
+ onLayoutResizeSeriesWidth?: (params: ResizeParams) => void;
925
+ onLayoutResizeRowWidth?: (params: ResizeParams) => void;
926
+ onLayoutResizeRowHeight?: (params: ResizeParams) => void;
927
+ onLayoutResizeColWidth?: (params: ResizeParams) => void;
928
+ onLayoutResizeColHeight?: (params: ResizeParams) => void;
929
+ onLayoutResizeTreeWidth?: (params: ResizeParams) => void;
930
+ onLayoutResizeMouseDown?: (data: {
931
+ event: Partial<MouseEvent>;
932
+ resizeInfo?: ResizeInfo;
933
+ }) => void;
934
+ onLayoutResizeMouseUp?: (data: {
935
+ event: Partial<MouseEvent>;
936
+ resizeInfo?: ResizeInfo;
937
+ }) => void;
938
+ onLayoutResizeMouseMove?: (data: {
939
+ event: Partial<MouseEvent>;
940
+ resizeInfo?: ResizeInfo;
941
+ }) => void;
942
+ onKeyBoardDown?: (event: KeyboardEvent) => void;
943
+ onKeyBoardUp?: (event: KeyboardEvent) => void;
944
+ onCopied?: (copyData: string) => void;
945
+ onActionIconHover?: (event: GEvent) => void;
946
+ onActionIconClick?: (event: GEvent) => void;
947
+ onContextMenu?: (event: GEvent) => void;
948
+ onClick?: (event: GEvent) => void;
949
+ onDoubleClick?: (event: GEvent) => void;
950
+ onMouseHover?: (event: GEvent) => void;
951
+ onMouseUp?: (event: MouseEvent) => void;
952
+ onSelected?: (cells: DataCell[]) => void;
953
+ onReset?: (event: KeyboardEvent) => void;
954
+ onLinkFieldJump?: (data: {
955
+ key: string;
956
+ record: Data;
957
+ }) => void;
958
+ }
959
+
960
+ /**
961
+ * Base tooltips component
962
+ */
963
+ declare class BaseTooltip {
964
+ visible: boolean;
965
+ spreadsheet: SpreadSheet_2;
966
+ container: HTMLElement;
967
+ options: TooltipShowOptions;
968
+ position: TooltipPosition;
969
+ constructor(spreadsheet: SpreadSheet_2);
970
+ show<T = Element | string>(showOptions: TooltipShowOptions<T>): void;
971
+ hide(): void;
972
+ destroy(): void;
973
+ renderContent<T = TooltipContentType>(content: T): void;
974
+ clearContent(): void;
975
+ disablePointerEvent(): void;
976
+ private resetPosition;
977
+ private getContainer;
978
+ }
979
+
980
+ declare interface BaseTooltipConfig<T = TooltipContentType> {
981
+ showTooltip?: boolean;
982
+ content?: TooltipShowOptions<T>['content'];
983
+ operation?: TooltipOperation;
984
+ autoAdjustBoundary?: TooltipAutoAdjustBoundary;
985
+ renderTooltip?: (spreadsheet: SpreadSheet_2) => BaseTooltip;
986
+ adjustPosition?: (positionInfo: TooltipPositionInfo) => TooltipPosition;
987
+ getContainer?: () => HTMLElement;
988
+ className?: string;
989
+ style?: CSS_2.Properties;
990
+ }
991
+
992
+ declare interface BulletTheme {
993
+ progressBar: {
994
+ widthPercent: number;
995
+ height: number;
996
+ innerHeight: number;
997
+ };
998
+ comparativeMeasure: {
999
+ width: number;
1000
+ height: number;
1001
+ color?: string;
1002
+ opacity?: number;
1003
+ };
1004
+ rangeColors: RangeColors;
1005
+ backgroundColor: string;
1006
+ }
1007
+
1008
+ declare interface BulletValue {
1009
+ measure: number | string;
1010
+ target: number | string;
1011
+ [key: string]: unknown;
1012
+ }
1013
+
1014
+ declare interface CalcTotals {
1015
+ aggregation?: Aggregation;
1016
+ calcFunc?: (query: DataType_2, arr: DataType_2[]) => number;
1017
+ }
1018
+
1019
+ declare type CanvasEventHandler = (event: Event_2) => void;
1020
+
1021
+ declare enum CellBorderPosition {
1022
+ TOP = "TOP",
1023
+ BOTTOM = "BOTTOM",
1024
+ LEFT = "LEFT",
1025
+ RIGHT = "RIGHT"
1026
+ }
1027
+
1028
+ declare type CellCallback<T extends BaseHeaderConfig> = (node: Node_2_2, spreadsheet: SpreadSheet_2, headerConfig: T) => S2CellType;
1029
+
1030
+ declare interface CellCfg {
1031
+ width?: number;
1032
+ height?: number;
1033
+ valuesCfg?: {
1034
+ originalValueField?: string;
1035
+ widthPercent?: number[];
1036
+ conditions?: {
1037
+ text: Condition;
1038
+ };
1039
+ };
1040
+ }
1041
+
1042
+ declare interface CellDataParams {
1043
+ query: DataType_2;
1044
+ isTotals?: boolean;
1045
+ rowNode?: Node_2_2;
1046
+ isRow?: boolean;
1047
+ }
1048
+
1049
+ declare interface CellMeta_2 {
1050
+ id: string;
1051
+ colIndex: number;
1052
+ rowIndex: number;
1053
+ type: CellTypes;
1054
+ [key: string]: unknown;
1055
+ }
1056
+
1057
+ declare interface CellScrollPosition_2 {
1058
+ scrollX: number;
1059
+ scrollY: number;
1060
+ thumbOffset?: number;
1061
+ }
1062
+
1063
+ declare interface CellTheme {
1064
+ crossBackgroundColor?: string;
1065
+ backgroundColor?: string;
1066
+ backgroundColorOpacity?: number;
1067
+ horizontalBorderColor?: string;
1068
+ horizontalBorderColorOpacity?: number;
1069
+ verticalBorderColor?: string;
1070
+ verticalBorderColorOpacity?: number;
1071
+ horizontalBorderWidth?: number;
1072
+ verticalBorderWidth?: number;
1073
+ padding?: Padding;
1074
+ interactionState?: InteractionState;
1075
+ miniBarChartHeight?: number;
1076
+ miniBarChartFillColor?: string;
1077
+ }
1078
+
1079
+ declare type CellThemes = {
1080
+ [K in CellTypes]?: DefaultCellTheme;
1081
+ };
1082
+
1083
+ declare enum CellTypes {
1084
+ DATA_CELL = "dataCell",
1085
+ HEADER_CELL = "headerCell",
1086
+ ROW_CELL = "rowCell",
1087
+ COL_CELL = "colCell",
1088
+ CORNER_CELL = "cornerCell",
1089
+ MERGED_CELL = "mergedCell"
1090
+ }
1091
+
1092
+ declare class ColCell extends HeaderCell {
1093
+ protected headerConfig: ColHeaderConfig;
1094
+ /** 文字区域(含icon)绘制起始坐标 */
1095
+ protected textAreaPosition: Point;
1096
+ get cellType(): CellTypes;
1097
+ protected initCell(): void;
1098
+ protected drawBackgroundShape(): void;
1099
+ protected drawInteractiveBgShape(): void;
1100
+ protected getTextStyle(): TextTheme;
1101
+ protected getMaxTextWidth(): number;
1102
+ protected getIconPosition(): Point;
1103
+ protected getTextPosition(): Point;
1104
+ protected getActionIconsWidth(): number;
1105
+ protected getColResizeAreaKey(): string;
1106
+ protected getColResizeArea(): IGroup;
1107
+ protected getHorizontalResizeAreaName(): string;
1108
+ protected drawHorizontalResizeArea(): void;
1109
+ protected shouldAddVerticalResizeArea(): boolean;
1110
+ protected getVerticalResizeAreaOffset(): {
1111
+ x: number;
1112
+ y: number;
1113
+ };
1114
+ protected drawVerticalResizeArea(): void;
1115
+ private drawResizeArea;
1116
+ protected drawHorizontalBorder(): void;
1117
+ protected drawVerticalBorder(dir: CellBorderPosition): void;
1118
+ protected drawBorders(): void;
1119
+ protected hasHiddenColumnCell(): boolean;
1120
+ private getExpandIconTheme;
1121
+ private addExpandColumnSplitLine;
1122
+ private addExpandColumnIconShapes;
1123
+ private addExpandColumnIcon;
1124
+ private getExpandColumnIconConfig;
1125
+ private isLastColumn;
1126
+ }
1127
+
1128
+ declare interface ColCfg {
1129
+ height?: number;
1130
+ widthByFieldValue?: Record<string, number>;
1131
+ heightByField?: Record<string, number>;
1132
+ hideMeasureColumn?: boolean;
1133
+ }
1134
+
1135
+ /**
1136
+ * Column Header for SpreadSheet
1137
+ */
1138
+ declare class ColHeader extends BaseHeader<ColHeaderConfig> {
1139
+ protected scrollGroup: IGroup;
1140
+ protected background: IShape;
1141
+ constructor(cfg: ColHeaderConfig);
1142
+ /**
1143
+ * Make colHeader scroll with hScrollBar
1144
+ * @param scrollX horizontal offset
1145
+ * @param cornerWidth only has real meaning when scroll contains rowCell
1146
+ * @param type
1147
+ */
1148
+ onColScroll(scrollX: number, type: string): void;
1149
+ protected clip(): void;
1150
+ clear(): void;
1151
+ protected getCellInstance(item: Node_2_2, spreadsheet: SpreadSheet_2, headerConfig: ColHeaderConfig): ColCell;
1152
+ protected getCellGroup(node: Node_2_2): IGroup;
1153
+ protected isColCellInRect(item: Node_2_2): boolean;
1154
+ protected layout(): void;
1155
+ protected offset(): void;
1156
+ }
1157
+
1158
+ declare interface ColHeaderConfig extends BaseHeaderConfig {
1159
+ cornerWidth?: number;
1160
+ scrollContainsRowHeader?: boolean;
1161
+ }
1162
+
1163
+ declare type CollapsedRowsType_2 = {
1164
+ collapsedRows: Record<string, boolean> & {
1165
+ [x: number]: any;
1166
+ };
1167
+ meta?: Node_2_2;
1168
+ };
1169
+
1170
+ /**
1171
+ * One field can hold a condition
1172
+ */
1173
+ declare interface Condition {
1174
+ field: string | RegExp;
1175
+ mapping: MappingFunction;
1176
+ }
1177
+
1178
+ declare interface Conditions {
1179
+ text?: Condition[];
1180
+ background?: Condition[];
1181
+ interval?: Condition[];
1182
+ icon?: IconCondition[];
1183
+ }
1184
+
1185
+ declare class CornerBBox extends BaseBBox {
1186
+ calculateBBox(): void;
1187
+ private getCornerBBoxHeight;
1188
+ private getCornerBBoxWidth;
1189
+ private adjustCornerBBoxWidth;
1190
+ }
1191
+
1192
+ declare class CornerCell extends HeaderCell {
1193
+ protected headerConfig: CornerHeaderConfig;
1194
+ protected textShapes: IShape[];
1195
+ cornerType: CornerNodeType;
1196
+ get cellType(): CellTypes;
1197
+ update(): void;
1198
+ protected initCell(): void;
1199
+ protected drawCellText(): void;
1200
+ /**
1201
+ * 绘制折叠展开的icon
1202
+ */
1203
+ private drawTreeIcon;
1204
+ private drawBackgroundShape;
1205
+ /**
1206
+ * Render cell horizontalBorder border
1207
+ * @private
1208
+ */
1209
+ protected drawBorderShape(): void;
1210
+ private isLastRowCornerCell;
1211
+ private getResizeAreaEffect;
1212
+ private drawResizeArea;
1213
+ private showTreeIcon;
1214
+ protected getIconPosition(): Point;
1215
+ private getTreeIconWidth;
1216
+ protected getTextStyle(): TextTheme;
1217
+ protected getMaxTextWidth(): number;
1218
+ protected getTextPosition(): Point;
1219
+ protected getFormattedFieldValue(): FormatResult;
1220
+ protected getCornerText(): string;
1221
+ }
1222
+
1223
+ /**
1224
+ * Corner Header for SpreadSheet
1225
+ */
1226
+ declare class CornerHeader extends BaseHeader<CornerHeaderConfig> {
1227
+ /**
1228
+ * Get corner Header by config
1229
+ * @param panelBBox
1230
+ * @param cornerBBox
1231
+ * @param seriesNumberWidth
1232
+ * @param cfg
1233
+ * @param layoutResult
1234
+ * @param s2 spreadsheet
1235
+ */
1236
+ static getCornerHeader(panelBBox: PanelBBox, cornerBBox: CornerBBox, seriesNumberWidth: number, cfg: SpreadSheetFacetCfg, layoutResult: LayoutResult_2, s2: SpreadSheet_2): CornerHeader;
1237
+ static getCornerNodes(position: Point, width: number, height: number, rows: string[], columns: string[], rowsHierarchy: Hierarchy, colsHierarchy: Hierarchy, dataSet: BaseDataSet_2, seriesNumberWidth: number, s2: SpreadSheet_2): Node_2_2[];
1238
+ constructor(cfg: CornerHeaderConfig);
1239
+ /**
1240
+ * Make cornerHeader scroll with hScrollBar
1241
+ * @param scrollX
1242
+ */
1243
+ onCorScroll(scrollX: number, type: string): void;
1244
+ destroy(): void;
1245
+ protected layout(): void;
1246
+ protected renderCells(): void;
1247
+ protected offset(): void;
1248
+ protected clip(): void;
1249
+ }
1250
+
1251
+ declare type CornerHeaderCallback = (parent: S2CellType, spreadsheet: SpreadSheet_2, ...restOptions: unknown[]) => void;
1252
+
1253
+ declare interface CornerHeaderConfig extends BaseHeaderConfig {
1254
+ hierarchyType: S2Options_2['hierarchyType'];
1255
+ hierarchyCollapse: boolean;
1256
+ rows: string[];
1257
+ columns: string[];
1258
+ seriesNumberWidth: number;
1259
+ }
1260
+
1261
+ declare enum CornerNodeType {
1262
+ Row = "row",
1263
+ Col = "col",
1264
+ Series = "series"
1265
+ }
1266
+
1267
+ declare interface CustomInteraction {
1268
+ key: string;
1269
+ interaction: InteractionConstructor;
1270
+ }
1271
+
1272
+ declare interface CustomSVGIcon {
1273
+ name: string;
1274
+ svg: string;
1275
+ }
1276
+
1277
+ declare interface CustomTreeItem {
1278
+ key: string;
1279
+ title: string;
1280
+ collapsed?: boolean;
1281
+ description?: string;
1282
+ children?: CustomTreeItem[];
1283
+ }
1284
+
1285
+ declare type Data_2 = Record<string, DataItem>;
1286
+
1287
+ /**
1288
+ * DataCell for panelGroup area
1289
+ * ----------------------------
1290
+ * | | |
1291
+ * |interval text| icon |
1292
+ * | | |
1293
+ * ----------------------------
1294
+ * There are four conditions(]{@see BaseCell.conditions}) to determine how to render
1295
+ * 1、background color
1296
+ * 2、icon align in right with size {@link ICON_SIZE}
1297
+ * 3、left rect area is interval(in left) and text(in right)
1298
+ */
1299
+ declare class DataCell_2 extends BaseCell<ViewMeta_2> {
1300
+ protected conditions: Conditions;
1301
+ protected conditionIntervalShape: IShape;
1302
+ protected conditionIconShape: GuiIcon;
1303
+ get cellType(): CellTypes;
1304
+ protected handleByStateName(cells: CellMeta_2[], stateName: InteractionStateName): void;
1305
+ protected handleSearchResult(cells: CellMeta_2[]): void;
1306
+ protected handleSelect(cells: CellMeta_2[]): void;
1307
+ protected handleHover(cells: CellMeta_2[]): void;
1308
+ update(): void;
1309
+ setMeta(viewMeta: ViewMeta_2): void;
1310
+ protected initCell(): void;
1311
+ protected getTextStyle(): TextTheme;
1312
+ getIconStyle(): IconCfg | undefined;
1313
+ protected getFormattedFieldValue(): FormatResult;
1314
+ protected getMaxTextWidth(): number;
1315
+ protected getTextPosition(): Point;
1316
+ protected drawConditionIconShapes(): void;
1317
+ /**
1318
+ * Draw interval condition shape
1319
+ * @private
1320
+ */
1321
+ protected drawConditionIntervalShape(): void;
1322
+ getBackgroundColor(): {
1323
+ backgroundColor: string;
1324
+ backgroundColorOpacity: number;
1325
+ };
1326
+ /**
1327
+ * Draw cell background
1328
+ */
1329
+ protected drawBackgroundShape(): void;
1330
+ /**
1331
+ * 绘制hover悬停,刷选的外框
1332
+ */
1333
+ protected drawInteractiveBorderShape(): void;
1334
+ /**
1335
+ * Draw interactive color
1336
+ */
1337
+ protected drawInteractiveBgShape(): void;
1338
+ private changeRowColSelectState;
1339
+ /**
1340
+ * Render cell border controlled by verticalBorder & horizontalBorder
1341
+ * @private
1342
+ */
1343
+ protected drawBorderShape(): void;
1344
+ /**
1345
+ * Find current field related condition
1346
+ * @param conditions
1347
+ */
1348
+ protected findFieldCondition(conditions: Condition[]): Condition;
1349
+ /**
1350
+ * Mapping value to get condition related attrs
1351
+ * @param condition
1352
+ */
1353
+ protected mappingValue(condition: Condition): MappingResult;
1354
+ updateByState(stateName: InteractionStateName): void;
1355
+ clearUnselectedState(): void;
1356
+ protected drawLeftBorder(): void;
1357
+ }
1358
+
1359
+ declare type DataCellCallback = (viewMeta: ViewMeta_2) => S2CellType;
1360
+
1361
+ declare type DataItem = SimpleDataItem | MultiData;
1362
+
1363
+ declare type DataType_2 = Record<string, any>;
1364
+
1365
+ declare interface DefaultCellTheme extends GridAnalysisCellTheme {
1366
+ bolderText?: TextTheme;
1367
+ text?: TextTheme;
1368
+ seriesText?: TextTheme;
1369
+ measureText?: TextTheme;
1370
+ cell?: CellTheme;
1371
+ icon?: IconTheme;
1372
+ seriesNumberWidth?: number;
1373
+ }
1374
+
1375
+ declare interface EmitterType {
1376
+ /** ================ Global ================ */
1377
+ [S2Event.GLOBAL_ACTION_ICON_CLICK]: CanvasEventHandler;
1378
+ [S2Event.GLOBAL_ACTION_ICON_HOVER]: CanvasEventHandler;
1379
+ [S2Event.GLOBAL_COPIED]: (data: string) => void;
1380
+ [S2Event.GLOBAL_KEYBOARD_DOWN]: KeyboardEventHandler;
1381
+ [S2Event.GLOBAL_KEYBOARD_UP]: KeyboardEventHandler;
1382
+ [S2Event.GLOBAL_MOUSE_UP]: MouseEventHandler;
1383
+ [S2Event.GLOBAL_MOUSE_MOVE]: MouseEventHandler;
1384
+ [S2Event.LAYOUT_RESIZE_MOUSE_DOWN]: CanvasEventHandler;
1385
+ [S2Event.LAYOUT_RESIZE_MOUSE_UP]: CanvasEventHandler;
1386
+ [S2Event.LAYOUT_RESIZE_MOUSE_MOVE]: CanvasEventHandler;
1387
+ [S2Event.GLOBAL_CONTEXT_MENU]: CanvasEventHandler;
1388
+ [S2Event.GLOBAL_CLICK]: CanvasEventHandler;
1389
+ [S2Event.GLOBAL_DOUBLE_CLICK]: CanvasEventHandler;
1390
+ [S2Event.GLOBAL_RESET]: EventHandler_3;
1391
+ [S2Event.GLOBAL_HOVER]: CanvasEventHandler;
1392
+ [S2Event.GLOBAL_SELECTED]: SelectedHandler;
1393
+ /** ================ Sort ================ */
1394
+ [S2Event.RANGE_SORT]: (info: SortParams_2) => void;
1395
+ [S2Event.RANGE_SORTED]: SortedHandler | CanvasEventHandler;
1396
+ /** ================ Filter ================ */
1397
+ [S2Event.RANGE_FILTER]: (info: FilterParam) => void;
1398
+ [S2Event.RANGE_FILTERED]: (data: Data_2[]) => any;
1399
+ /** ================ Cell ================ */
1400
+ [S2Event.GLOBAL_LINK_FIELD_JUMP]: (data: {
1401
+ key: string;
1402
+ record: Data_2;
1403
+ }) => void;
1404
+ /** ================ Date Cell ================ */
1405
+ [S2Event.DATA_CELL_MOUSE_DOWN]: CanvasEventHandler;
1406
+ [S2Event.DATA_CELL_MOUSE_UP]: CanvasEventHandler;
1407
+ [S2Event.DATA_CELL_MOUSE_MOVE]: CanvasEventHandler;
1408
+ [S2Event.DATA_CELL_HOVER]: CanvasEventHandler;
1409
+ [S2Event.DATA_CELL_CLICK]: CanvasEventHandler;
1410
+ [S2Event.DATA_CELL_DOUBLE_CLICK]: CanvasEventHandler;
1411
+ [S2Event.DATA_CELL_CONTEXT_MENU]: CanvasEventHandler;
1412
+ [S2Event.DATA_CELL_TREND_ICON_CLICK]: (data: ViewMeta_2) => void;
1413
+ [S2Event.DATE_CELL_BRUSH_SELECTION]: (cells: DataCell_2[]) => void;
1414
+ [S2Event.DATE_CELL_SELECT_MOVE]: (metas: CellMeta_2[]) => void;
1415
+ /** ================ Row Cell ================ */
1416
+ [S2Event.ROW_CELL_MOUSE_DOWN]: CanvasEventHandler;
1417
+ [S2Event.ROW_CELL_MOUSE_MOVE]: CanvasEventHandler;
1418
+ [S2Event.ROW_CELL_HOVER]: CanvasEventHandler;
1419
+ [S2Event.ROW_CELL_CLICK]: CanvasEventHandler;
1420
+ [S2Event.ROW_CELL_DOUBLE_CLICK]: CanvasEventHandler;
1421
+ [S2Event.ROW_CELL_CONTEXT_MENU]: CanvasEventHandler;
1422
+ [S2Event.ROW_CELL_MOUSE_UP]: CanvasEventHandler;
1423
+ [S2Event.ROW_CELL_COLLAPSE_TREE_ROWS]: (data: RowCellCollapseTreeRowsType) => void;
1424
+ /** ================ Col Cell ================ */
1425
+ [S2Event.COL_CELL_MOUSE_DOWN]: CanvasEventHandler;
1426
+ [S2Event.COL_CELL_MOUSE_MOVE]: CanvasEventHandler;
1427
+ [S2Event.COL_CELL_HOVER]: CanvasEventHandler;
1428
+ [S2Event.COL_CELL_CLICK]: CanvasEventHandler;
1429
+ [S2Event.COL_CELL_DOUBLE_CLICK]: CanvasEventHandler;
1430
+ [S2Event.COL_CELL_CONTEXT_MENU]: CanvasEventHandler;
1431
+ [S2Event.COL_CELL_MOUSE_UP]: CanvasEventHandler;
1432
+ /** ================ Corner Cell ================ */
1433
+ [S2Event.CORNER_CELL_MOUSE_MOVE]: CanvasEventHandler;
1434
+ [S2Event.CORNER_CELL_MOUSE_DOWN]: CanvasEventHandler;
1435
+ [S2Event.CORNER_CELL_HOVER]: CanvasEventHandler;
1436
+ [S2Event.CORNER_CELL_CLICK]: CanvasEventHandler;
1437
+ [S2Event.CORNER_CELL_DOUBLE_CLICK]: CanvasEventHandler;
1438
+ [S2Event.CORNER_CELL_CONTEXT_MENU]: CanvasEventHandler;
1439
+ [S2Event.CORNER_CELL_MOUSE_UP]: CanvasEventHandler;
1440
+ /** ================ Merged Cells ================ */
1441
+ [S2Event.MERGED_CELLS_MOUSE_DOWN]: CanvasEventHandler;
1442
+ [S2Event.MERGED_CELLS_MOUSE_MOVE]: CanvasEventHandler;
1443
+ [S2Event.MERGED_CELLS_HOVER]: CanvasEventHandler;
1444
+ [S2Event.MERGED_CELLS_MOUSE_UP]: CanvasEventHandler;
1445
+ [S2Event.MERGED_CELLS_CLICK]: CanvasEventHandler;
1446
+ [S2Event.MERGED_CELLS_CONTEXT_MENU]: CanvasEventHandler;
1447
+ [S2Event.MERGED_CELLS_DOUBLE_CLICK]: CanvasEventHandler;
1448
+ /** ================ Layout ================ */
1449
+ [S2Event.LAYOUT_COLLAPSE_ROWS]: (data: CollapsedRowsType_2) => void;
1450
+ [S2Event.LAYOUT_AFTER_COLLAPSE_ROWS]: (data: CollapsedRowsType_2) => void;
1451
+ [S2Event.LAYOUT_TREE_ROWS_COLLAPSE_ALL]: (hierarchyCollapse: boolean) => void;
1452
+ [S2Event.LAYOUT_PAGINATION]: (data: {
1453
+ pageSize: number;
1454
+ pageCount: number;
1455
+ total: number;
1456
+ current: number;
1457
+ }) => void;
1458
+ [S2Event.LAYOUT_AFTER_HEADER_LAYOUT]: (data: LayoutResult_2) => void;
1459
+ [S2Event.LAYOUT_CELL_SCROLL]: (data: CellScrollPosition_2) => void;
1460
+ [S2Event.LAYOUT_COLS_EXPANDED]: (expandedNode: Node_2_2) => void;
1461
+ [S2Event.LAYOUT_COLS_HIDDEN]: (currentHiddenColumnsInfo: HiddenColumnsInfo_2, hiddenColumnsDetail: HiddenColumnsInfo_2[]) => void;
1462
+ [S2Event.LAYOUT_BEFORE_RENDER]: () => void;
1463
+ [S2Event.LAYOUT_AFTER_RENDER]: () => void;
1464
+ [S2Event.LAYOUT_DESTROY]: () => void;
1465
+ /** ================ Layout Resize ================ */
1466
+ [S2Event.LAYOUT_RESIZE]: ResizeHandler;
1467
+ [S2Event.LAYOUT_RESIZE_SERIES_WIDTH]: ResizeHandler;
1468
+ [S2Event.LAYOUT_RESIZE_ROW_WIDTH]: ResizeHandler;
1469
+ [S2Event.LAYOUT_RESIZE_ROW_HEIGHT]: ResizeHandler;
1470
+ [S2Event.LAYOUT_RESIZE_COL_WIDTH]: ResizeHandler;
1471
+ [S2Event.LAYOUT_RESIZE_COL_HEIGHT]: ResizeHandler;
1472
+ [S2Event.LAYOUT_RESIZE_TREE_WIDTH]: ResizeHandler;
1473
+ }
1474
+
1475
+ declare class EventController {
1476
+ spreadsheet: SpreadSheet_2;
1477
+ private target;
1478
+ canvasEventHandlers: EventHandler_2[];
1479
+ s2EventHandlers: S2EventHandler[];
1480
+ domEventListeners: EventListener_2[];
1481
+ isCanvasEffect: boolean;
1482
+ constructor(spreadsheet: SpreadSheet_2);
1483
+ get canvasContainer(): Canvas;
1484
+ get isAutoResetSheetStyle(): boolean;
1485
+ bindEvents(): void;
1486
+ private isGuiIconShape;
1487
+ private onKeyboardCopy;
1488
+ private onKeyboardEsc;
1489
+ private resetSheetStyle;
1490
+ private isMouseOnTheCanvasContainer;
1491
+ private getContainerRect;
1492
+ private isMouseOnTheTooltip;
1493
+ private isResizeArea;
1494
+ private activeResizeArea;
1495
+ private resetResizeArea;
1496
+ private onCanvasMousedown;
1497
+ private onCanvasMousemove;
1498
+ private onCanvasMouseup;
1499
+ private onCanvasClick;
1500
+ private onCanvasDoubleClick;
1501
+ private onCanvasMouseout;
1502
+ private onCanvasContextMenu;
1503
+ clear(): void;
1504
+ private unbindEvents;
1505
+ private addCanvasEvent;
1506
+ private addS2Event;
1507
+ private addDomEventListener;
1508
+ clearAllEvents(): void;
1509
+ }
1510
+
1511
+ declare interface EventHandler {
1512
+ target: IElement;
1513
+ type: keyof HTMLElementEventMap;
1514
+ handler: (e: MouseEvent | TouchEvent) => void;
1515
+ }
1516
+
1517
+ declare interface EventHandler_2 {
1518
+ type: string;
1519
+ handler: (event: Event_2) => void;
1520
+ }
1521
+
1522
+ declare type EventHandler_3 = (event: Event) => void;
1523
+
1524
+ declare interface EventListener_2 {
1525
+ target: EventTarget;
1526
+ type: string;
1527
+ handler: EventListenerOrEventListenerObject;
1528
+ options?: AddEventListenerOptions | boolean;
1529
+ }
1530
+
1531
+ declare interface EventListenerReturn {
1532
+ remove: () => void;
1533
+ }
1534
+
1535
+ declare interface Fields {
1536
+ rows?: string[];
1537
+ customTreeItems?: CustomTreeItem[];
1538
+ columns?: string[];
1539
+ values?: string[];
1540
+ valueInCols?: boolean;
1541
+ customValueOrder?: number;
1542
+ }
1543
+
1544
+ declare type FilterDataItemCallback = (valueField: string, data: DataItem) => DataItem;
1545
+
1546
+ declare interface FilterParam {
1547
+ filterKey: string;
1548
+ filteredValues?: unknown[];
1549
+ customFilter?: (row: DataType_2) => boolean;
1550
+ }
1551
+
1552
+ declare interface FormatResult {
1553
+ formattedValue: string;
1554
+ value: DataItem;
1555
+ }
1556
+
1557
+ declare type Formatter = (v: unknown, data?: Data_2 | Data_2[]) => string;
1558
+
1559
+ declare class Frame extends Group {
1560
+ cfg: FrameConfig;
1561
+ constructor(cfg: FrameConfig);
1562
+ layout(): void;
1563
+ /**
1564
+ * 渲染
1565
+ */
1566
+ render(): void;
1567
+ onBorderScroll(scrollX: number): void;
1568
+ onChangeShadowVisibility(scrollX: number, maxScrollX: number): void;
1569
+ private addCornerRightBorder;
1570
+ private addCornerBottomBorder;
1571
+ private addSplitLineShadow;
1572
+ private addSplitLineLeftShadow;
1573
+ private addSplitLineRightShadow;
1574
+ }
1575
+
1576
+ declare type FrameCallback = (cfg: FrameConfig) => Frame;
1577
+
1578
+ declare interface FrameConfig {
1579
+ position: {
1580
+ x: number;
1581
+ y: number;
1582
+ };
1583
+ scrollX?: number;
1584
+ width: number;
1585
+ height: number;
1586
+ viewportWidth: number;
1587
+ viewportHeight: number;
1588
+ showViewportLeftShadow: boolean;
1589
+ showViewportRightShadow: boolean;
1590
+ scrollContainsRowHeader: boolean;
1591
+ isPivotMode: boolean;
1592
+ spreadsheet: SpreadSheet_2;
1593
+ }
1594
+
1595
+ declare class FrozenGroup_2 extends GridGroup {
1596
+ }
1597
+
1598
+ declare type GetCellMeta = (rowIndex?: number, colIndex?: number) => ViewMeta_2;
1599
+
1600
+ declare type GetInitProps<T, OptionalKeys = GetOptionalKeys<T>> = {
1601
+ [K in keyof T as IsEmitKey<T[K]> extends true ? never : K]-?: K extends OptionalKeys ? PropOption<NonNullable<T[K]>> : RequiredPropOption<NonNullable<T[K]>>;
1602
+ };
1603
+
1604
+ declare type GetOptionalKeys<T> = keyof {
1605
+ [K in keyof T as Pick<T, K> extends Required<Pick<T, K>> ? never : K]: K;
1606
+ };
1607
+
1608
+ declare interface GridAnalysisCellTheme {
1609
+ minorText?: TextTheme;
1610
+ derivedMeasureText?: {
1611
+ mainUp: string;
1612
+ mainDown: string;
1613
+ minorUp: string;
1614
+ minorDown: string;
1615
+ };
1616
+ }
1617
+
1618
+ declare class GridGroup extends Group {
1619
+ private s2;
1620
+ constructor(cfg: any);
1621
+ private gridGroup;
1622
+ private gridInfo;
1623
+ updateGrid: (gridInfo: GridInfo, id?: string) => void;
1624
+ }
1625
+
1626
+ declare interface GridInfo {
1627
+ cols: number[];
1628
+ rows: number[];
1629
+ }
1630
+
1631
+ /**
1632
+ * 使用 iconfont 上的 svg 来创建 Icon
1633
+ */
1634
+ declare class GuiIcon extends Group {
1635
+ static type: string;
1636
+ iconImageShape: Shape.Image;
1637
+ constructor(cfg: GuiIconCfg);
1638
+ private getImage;
1639
+ hasSupportSuffix: (image: string) => boolean;
1640
+ private render;
1641
+ }
1642
+
1643
+ declare interface GuiIconCfg extends ShapeAttrs {
1644
+ readonly name: string;
1645
+ }
1646
+
1647
+ declare class HdAdapter {
1648
+ private viewport;
1649
+ private devicePixelRatioMedia;
1650
+ private spreadsheet;
1651
+ constructor(spreadsheet: SpreadSheet_2);
1652
+ init: () => void;
1653
+ destroy: () => void;
1654
+ private initDevicePixelRatioListener;
1655
+ private removeDevicePixelRatioListener;
1656
+ private initDeviceZoomListener;
1657
+ private removeDeviceZoomListener;
1658
+ private renderByDevicePixelRatioChanged;
1659
+ private renderByDevicePixelRatio;
1660
+ private renderByZoomScale;
1661
+ }
1662
+
1663
+ declare interface HeaderActionIcon {
1664
+ iconNames: string[];
1665
+ belongsCell: Omit<CellTypes, 'dataCell'>;
1666
+ defaultHide?: boolean;
1667
+ displayCondition?: (mete: Node_2_2) => boolean;
1668
+ action?: (headerActionIconProps: HeaderActionIconProps) => void;
1669
+ }
1670
+
1671
+ declare interface HeaderActionIconOptions {
1672
+ iconName: string;
1673
+ x: number;
1674
+ y: number;
1675
+ action: (props: HeaderActionIconProps) => void;
1676
+ defaultHide?: boolean;
1677
+ }
1678
+
1679
+ declare interface HeaderActionIconProps {
1680
+ iconName: string;
1681
+ meta: Node_2_2;
1682
+ event?: Event_2;
1683
+ }
1684
+
1685
+ declare abstract class HeaderCell extends BaseCell<Node_2_2> {
1686
+ protected headerConfig: BaseHeaderConfig;
1687
+ protected treeIcon: GuiIcon | undefined;
1688
+ protected treeLeafNodeAlignDot: IShape | undefined;
1689
+ protected actionIcons: GuiIcon[];
1690
+ protected handleRestOptions(...[headerConfig]: [BaseHeaderConfig]): void;
1691
+ protected initCell(): void;
1692
+ protected getFormattedFieldValue(): FormatResult;
1693
+ protected showActionIcons(actionIconCfg: HeaderActionIcon): boolean;
1694
+ protected getActionIconCfg(): HeaderActionIcon;
1695
+ protected showSortIcon(): boolean;
1696
+ protected getActionIconsCount(): number;
1697
+ protected getActionIconsWidth(): number;
1698
+ protected drawSortIcons(): void;
1699
+ protected hasDefaultHideActionIcon(): boolean;
1700
+ protected addActionIcon(options: HeaderActionIconOptions): void;
1701
+ protected drawActionIcons(): void;
1702
+ protected isSortCell(): boolean;
1703
+ protected handleByStateName(cells: CellMeta_2[], stateName: InteractionStateName): void;
1704
+ protected handleSearchResult(cells: CellMeta_2[]): void;
1705
+ protected handleHover(cells: CellMeta_2[]): void;
1706
+ protected handleSelect(cells: CellMeta_2[], nodes: Node_2_2[]): void;
1707
+ toggleActionIcon(id: string): void;
1708
+ update(): void;
1709
+ updateByState(stateName: InteractionStateName): void;
1710
+ hideInteractionShape(): void;
1711
+ isMeasureField(): boolean;
1712
+ }
1713
+
1714
+ declare interface HiddenColumnsInfo_2 {
1715
+ hideColumnNodes: Node_2_2[];
1716
+ displaySiblingNode: {
1717
+ prev: Node_2_2;
1718
+ next: Node_2_2;
1719
+ };
1720
+ }
1721
+
1722
+ /**
1723
+ * Row and Column hierarchy to handle all contained nodes
1724
+ */
1725
+ declare class Hierarchy {
1726
+ rows: string[];
1727
+ width: number;
1728
+ height: number;
1729
+ maxLevel: number;
1730
+ sampleNodesForAllLevels?: Node_2_2[];
1731
+ sampleNodeForLastLevel?: Node_2_2;
1732
+ private allNodesWithoutRoot;
1733
+ private indexNode;
1734
+ getLeaves(): Node_2_2[];
1735
+ /**
1736
+ * Get all or level-related nodes in hierarchy
1737
+ * @param level
1738
+ */
1739
+ getNodes(level?: number): Node_2_2[];
1740
+ /**
1741
+ * Get all or less than level-related nodes in hierarchy
1742
+ * @param lessThanLevel
1743
+ */
1744
+ getNodesLessThanLevel(lessThanLevel: number): Node_2_2[];
1745
+ /**
1746
+ * Add new node
1747
+ * @param value
1748
+ * @param insetIndex
1749
+ */
1750
+ pushNode(value: Node_2_2, insetIndex?: number): void;
1751
+ pushIndexNode(value: Node_2_2): void;
1752
+ getIndexNodes(): Node_2_2[];
1753
+ }
1754
+
1755
+ declare interface HoverFocusOptions {
1756
+ duration?: number;
1757
+ }
1758
+
1759
+ declare type IconCfg = Pick<IconTheme, 'size' | 'margin'> & Pick<IconCondition, 'position'>;
1760
+
1761
+ declare interface IconCondition extends Condition {
1762
+ position?: IconPosition;
1763
+ }
1764
+
1765
+ declare type IconPosition = 'left' | 'right';
1766
+
1767
+ declare interface IconTheme {
1768
+ fill?: string;
1769
+ downIconColor?: string;
1770
+ upIconColor?: string;
1771
+ size?: number;
1772
+ margin?: Margin;
1773
+ }
1774
+
1775
+ declare type Indexes = [number, number, number, number];
1776
+
1777
+ declare type InteractionConstructor = new (spreadsheet: SpreadSheet_2) => BaseEvent;
1778
+
1779
+ declare interface InteractionOptions {
1780
+ linkFields?: string[];
1781
+ selectedCellsSpotlight?: boolean;
1782
+ hoverHighlight?: boolean;
1783
+ hoverFocus?: boolean | HoverFocusOptions;
1784
+ enableCopy?: boolean;
1785
+ copyWithFormat?: boolean;
1786
+ autoResetSheetStyle?: boolean;
1787
+ hiddenColumnFields?: string[];
1788
+ scrollSpeedRatio?: ScrollSpeedRatio;
1789
+ resize?: boolean | ResizeActiveOptions;
1790
+ brushSelection?: boolean;
1791
+ multiSelection?: boolean;
1792
+ rangeSelection?: boolean;
1793
+ selectedCellMove?: boolean;
1794
+ scrollbarPosition?: ScrollbarPositionType;
1795
+ eventListenerOptions?: boolean | AddEventListenerOptions;
1796
+ selectedCellHighlight?: boolean;
1797
+ overscrollBehavior?: 'auto' | 'none' | 'contain';
1798
+ /** ***********CUSTOM INTERACTION HOOKS**************** */
1799
+ customInteractions?: CustomInteraction[];
1800
+ }
1801
+
1802
+ declare type InteractionState = {
1803
+ [K in InteractionStateName]?: InteractionStateTheme;
1804
+ };
1805
+
1806
+ declare interface InteractionStateInfo {
1807
+ stateName?: InteractionStateName;
1808
+ cells?: CellMeta_2[];
1809
+ interactedCells?: S2CellType[];
1810
+ nodes?: Node_2_2[];
1811
+ force?: boolean;
1812
+ }
1813
+
1814
+ declare enum InteractionStateName {
1815
+ ALL_SELECTED = "allSelected",
1816
+ SELECTED = "selected",
1817
+ UNSELECTED = "unselected",
1818
+ HOVER = "hover",
1819
+ HOVER_FOCUS = "hoverFocus",
1820
+ HIGHLIGHT = "highlight",
1821
+ SEARCH_RESULT = "searchResult",
1822
+ PREPARE_SELECT = "prepareSelect"
1823
+ }
1824
+
1825
+ declare interface InteractionStateTheme {
1826
+ backgroundOpacity?: number;
1827
+ backgroundColor?: string;
1828
+ textOpacity?: number;
1829
+ borderColor?: string;
1830
+ borderWidth?: number;
1831
+ borderOpacity?: number;
1832
+ opacity?: number;
1833
+ }
1834
+
1835
+ declare type Intercept = InterceptType.HOVER | InterceptType.CLICK | InterceptType.BRUSH_SELECTION | InterceptType.MULTI_SELECTION | InterceptType.RESIZE;
1836
+
1837
+ declare enum InterceptType {
1838
+ HOVER = "hover",
1839
+ CLICK = "click",
1840
+ BRUSH_SELECTION = "brushSelection",
1841
+ MULTI_SELECTION = "multiSelection",
1842
+ RESIZE = "resize"
1843
+ }
1844
+
1845
+ declare type IsEmitKey<Type> = Exclude<Type, undefined> extends (...args: any) => any ? true : false;
1846
+
1847
+ declare type KeyboardEventHandler = (event: KeyboardEvent) => void;
1848
+
1849
+ /**
1850
+ * determine the order of every row/column tree branch
1851
+ */
1852
+ declare type LayoutArrange = (spreadsheet: SpreadSheet_2, parent: Node_2_2, field: string, fieldValues: string[]) => string[];
1853
+
1854
+ /**
1855
+ * determine the location(x,y,width,height eg..) of every node
1856
+ */
1857
+ declare type LayoutCoordinate = (spreadsheet: SpreadSheet_2, rowNode: Node_2_2, colNode: Node_2_2) => void;
1858
+
1859
+ /**
1860
+ * determine the data of cells in Cartesian coordinates
1861
+ */
1862
+ declare type LayoutDataPosition = (spreadsheet: SpreadSheet_2, getCellData: GetCellMeta) => GetCellMeta;
1863
+
1864
+ /**
1865
+ * determine what does row/column hierarchy look like
1866
+ * eg: add/delete some nodes in the specified position
1867
+ */
1868
+ declare type LayoutHierarchy = (spreadsheet: SpreadSheet_2, node: Node_2_2) => LayoutHierarchyReturnType;
1869
+
1870
+ declare interface LayoutHierarchyReturnType {
1871
+ push?: Node_2_2[];
1872
+ unshift?: Node_2_2[];
1873
+ delete?: boolean;
1874
+ }
1875
+
1876
+ declare interface LayoutResult_2 {
1877
+ colNodes: Node_2_2[];
1878
+ colsHierarchy: Hierarchy;
1879
+ rowNodes: Node_2_2[];
1880
+ rowsHierarchy: Hierarchy;
1881
+ rowLeafNodes: Node_2_2[];
1882
+ colLeafNodes: Node_2_2[];
1883
+ getCellMeta: GetCellMeta;
1884
+ spreadsheet: SpreadSheet_2;
1885
+ }
1886
+
1887
+ /**
1888
+ * 布局类型:
1889
+ * adaptive: 行列等宽,均分整个 canvas 画布宽度
1890
+ * colAdaptive:列等宽,行头紧凑布局,列等分画布宽度减去行头宽度的剩余宽度
1891
+ * compact:行列紧凑布局,指标维度少的时候无法布满整个画布
1892
+ */
1893
+ declare type LayoutWidthType = 'adaptive' | 'colAdaptive' | 'compact';
1894
+
1895
+ declare type ListItem = {
1896
+ name: string;
1897
+ value: string | number;
1898
+ icon?: Element | string;
1899
+ };
1900
+
1901
+ declare type MappingDataItemCallback = (valueField: string, data: DataItem) => Record<string, string | number> | DataItem;
1902
+
1903
+ declare type MappingFunction = (fieldValue: number | string, data: Record<string, any>) => MappingResult;
1904
+
1905
+ declare interface MappingResult extends ValueRange {
1906
+ icon?: string;
1907
+ fill: string;
1908
+ isCompare?: boolean;
1909
+ }
1910
+
1911
+ declare type Margin = Padding;
1912
+
1913
+ /**
1914
+ * Cell for panelGroup area
1915
+ */
1916
+ declare class MergedCell extends DataCell_2 {
1917
+ cells: S2CellType[];
1918
+ isPartiallyVisible: boolean;
1919
+ constructor(spreadsheet: SpreadSheet_2, cells: S2CellType[], meta?: ViewMeta_2, isPartiallyVisible?: boolean);
1920
+ handleRestOptions(...[cells]: [S2CellType[]]): void;
1921
+ get cellType(): CellTypes;
1922
+ update(): void;
1923
+ protected initCell(): void;
1924
+ /**
1925
+ * Draw merged cells background
1926
+ */
1927
+ protected drawBackgroundShape(): void;
1928
+ /**
1929
+ * Render data text
1930
+ */
1931
+ drawTextShape(): void;
1932
+ }
1933
+
1934
+ /**
1935
+ * the index of rows or columns.
1936
+ */
1937
+ declare interface MergedCellInfo {
1938
+ colIndex?: number;
1939
+ rowIndex?: number;
1940
+ showText?: boolean;
1941
+ }
1942
+
1943
+ declare interface Meta {
1944
+ field?: string;
1945
+ name?: string;
1946
+ description?: string;
1947
+ formatter?: Formatter;
1948
+ }
1949
+
1950
+ declare type MouseEventHandler = (event: MouseEvent) => void;
1951
+
1952
+ /** use for gridAnalysisSheet
1953
+ * eg. { label: '余额女',
1954
+ values: [
1955
+ ['最近7天登端天数', 1, 3423423, 323],
1956
+ ['自然月新登用户数', 1, 3423423, 323],
1957
+ ['最近7天登端天数', 1, 3423423, 323],
1958
+ ['自然月新登用户数', 1, 3423423, 323],
1959
+ ],
1960
+ }
1961
+ */
1962
+ declare interface MultiData<T = SimpleDataItem[][] | BulletValue> {
1963
+ values: T;
1964
+ originalValues?: T;
1965
+ label?: string;
1966
+ [key: string]: unknown;
1967
+ }
1968
+
1969
+ /**
1970
+ * Node for cornerHeader, colHeader, rowHeader
1971
+ */
1972
+ declare class Node_2_2 {
1973
+ isTotalMeasure: boolean;
1974
+ config: BaseNodeConfig;
1975
+ constructor(cfg: BaseNodeConfig);
1976
+ /**
1977
+ * Get node's field path
1978
+ * eg: node.id = root[&]东北[&]黑龙江
1979
+ * => [area, province]
1980
+ * @param node
1981
+ */
1982
+ static getFieldPath(node: Node_2_2, isDrillDown?: boolean): string[];
1983
+ /**
1984
+ * Get all leaves in this node branch, eg:
1985
+ * c1
1986
+ * b1〈
1987
+ * c2
1988
+ * a〈
1989
+ * c3
1990
+ * b2〈
1991
+ * c4
1992
+ * get a branch's all leaves(c1~c4)
1993
+ * @param node
1994
+ */
1995
+ static getAllLeaveNodes(node: Node_2_2): Node_2_2[];
1996
+ /**
1997
+ * Get all children nodes in this node branch, eg:
1998
+ * c1
1999
+ * b1〈
2000
+ * c2
2001
+ * a〈
2002
+ * c3
2003
+ * b2〈
2004
+ * c4
2005
+ * get a branch's all nodes(c1~c4, b1, b2)
2006
+ * @param node
2007
+ */
2008
+ static getAllChildrenNodes(node: Node_2_2): Node_2_2[];
2009
+ /**
2010
+ * Get all children branch in this node branch, eg:
2011
+ * c1
2012
+ * b1〈
2013
+ * c2
2014
+ * a〈
2015
+ * c3
2016
+ * b2〈
2017
+ * c4
2018
+ * get all branch [[b1,c1],[b1,c2],[b2,c3],[b2,c4]]
2019
+ * @param parent
2020
+ */
2021
+ static getAllBranch(parent: Node_2_2): Node_2_2[][];
2022
+ id: string;
2023
+ x: number;
2024
+ y: number;
2025
+ width: number;
2026
+ height: number;
2027
+ label: string;
2028
+ key: string;
2029
+ value: string;
2030
+ colIndex: number;
2031
+ level: number;
2032
+ rowIndex: number;
2033
+ parent: Node_2_2;
2034
+ isLeaf: boolean;
2035
+ isTotals: boolean;
2036
+ colId: string;
2037
+ static blankNode(): Node_2_2;
2038
+ isCollapsed: boolean;
2039
+ children: Node_2_2[];
2040
+ padding: number;
2041
+ hierarchy: Hierarchy;
2042
+ isPivotMode: boolean;
2043
+ seriesNumberWidth: number;
2044
+ field: string;
2045
+ spreadsheet: SpreadSheet_2;
2046
+ query?: Record<string, any>;
2047
+ belongsCell?: S2CellType;
2048
+ inCollapseNode?: boolean;
2049
+ cornerType?: CornerNodeType;
2050
+ isGrandTotals?: boolean;
2051
+ isSubTotals?: boolean;
2052
+ [key: string]: any;
2053
+ static rootNode(): Node_2_2;
2054
+ toJSON(): Omit_2<this, "spreadsheet" | "config" | "parent" | "hierarchy">;
2055
+ }
2056
+
2057
+ declare interface OffsetConfig {
2058
+ offsetX?: {
2059
+ value: number | undefined;
2060
+ animate?: boolean;
2061
+ };
2062
+ offsetY?: {
2063
+ value: number | undefined;
2064
+ animate?: boolean;
2065
+ };
2066
+ }
2067
+
2068
+ declare interface Padding {
2069
+ top?: number;
2070
+ right?: number;
2071
+ bottom?: number;
2072
+ left?: number;
2073
+ }
2074
+
2075
+ declare type Pagination = {
2076
+ pageSize: number;
2077
+ current: number;
2078
+ total?: number;
2079
+ };
2080
+
2081
+ declare interface Palette extends PaletteMeta {
2082
+ basicColors: string[];
2083
+ }
2084
+
2085
+ declare interface PaletteMeta {
2086
+ /** 主题色 */
2087
+ brandColor: string;
2088
+ /**
2089
+ * basicColors 与标准色卡 standardColors 数组下标的对应关系
2090
+ * @see generateStandardColors
2091
+ */
2092
+ basicColorRelations: Array<{
2093
+ basicColorIndex: number;
2094
+ standardColorIndex: number;
2095
+ }>;
2096
+ semanticColors: {
2097
+ red?: string;
2098
+ green?: string;
2099
+ yellow?: string;
2100
+ [key: string]: string;
2101
+ };
2102
+ others?: {
2103
+ [key: string]: string;
2104
+ };
2105
+ }
2106
+
2107
+ declare class PanelBBox extends BaseBBox {
2108
+ calculateBBox(): void;
2109
+ }
2110
+
2111
+ declare type PanelIndexes = {
2112
+ center: Indexes;
2113
+ frozenRow?: Indexes;
2114
+ frozenCol?: Indexes;
2115
+ frozenTrailingRow?: Indexes;
2116
+ frozenTrailingCol?: Indexes;
2117
+ };
2118
+
2119
+ declare class PanelScrollGroup extends GridGroup {
2120
+ }
2121
+
2122
+ declare interface PartDrillDown {
2123
+ drillConfig: BaseDrillDownComponentProps;
2124
+ drillItemsNum?: number;
2125
+ fetchData: (meta: Node_2, drillFields: string[]) => Promise<PartDrillDownInfo>;
2126
+ clearDrillDown?: {
2127
+ rowId: string;
2128
+ };
2129
+ displayCondition?: (meta: Node_2) => boolean;
2130
+ }
2131
+
2132
+ declare interface PartDrillDownFieldInLevel {
2133
+ drillField: string;
2134
+ drillLevel: number;
2135
+ }
2136
+
2137
+ declare interface PartDrillDownInfo {
2138
+ drillData: Record<string, string | number>[];
2139
+ drillField: string;
2140
+ }
2141
+
2142
+ export declare const PivotSheet: DefineComponent< {
2143
+ sheetType: PropType<SheetType>;
2144
+ dataCfg: PropType<S2DataConfig>;
2145
+ themeCfg: PropType<ThemeCfg>;
2146
+ showPagination: {
2147
+ type: PropType<boolean | {
2148
+ onShowSizeChange?: (pageSize: number) => void;
2149
+ onChange?: (current: number) => void;
2150
+ }>;
2151
+ default: boolean | {
2152
+ onShowSizeChange?: (pageSize: number) => void;
2153
+ onChange?: (current: number) => void;
2154
+ };
2155
+ };
2156
+ loading: BooleanConstructor;
2157
+ partDrillDown: ObjectConstructor;
2158
+ header: ObjectConstructor;
2159
+ options: {
2160
+ type: PropType<S2Options<string | Element>>;
2161
+ default: S2Options<string | Element>;
2162
+ };
2163
+ adaptive: {
2164
+ type: PropType<Adaptive>;
2165
+ default: Adaptive;
2166
+ };
2167
+ onSpreadsheet: PropType<(container: S2MountContainer, dataCfg: S2DataConfig, options: S2Options<string | Element>) => SpreadSheet>;
2168
+ onGetSpreadSheet: PropType<(spreadsheet: SpreadSheet) => void>;
2169
+ }, {
2170
+ s2Ref: ShallowRef<SheetExpose>;
2171
+ options: S2Options<string | Element>;
2172
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2173
+ spreadsheet: (container: S2MountContainer, dataCfg: S2DataConfig, options: S2Options<string | Element>) => SpreadSheet;
2174
+ getSpreadSheet: (spreadsheet: SpreadSheet) => void;
2175
+ sheetUpdate: SheetUpdateCallback;
2176
+ rowCellHover: (data: TargetCellInfo) => void;
2177
+ rowCellClick: (data: TargetCellInfo) => void;
2178
+ rowCellDoubleClick: (data: TargetCellInfo) => void;
2179
+ rowCellContextMenu: (data: TargetCellInfo) => void;
2180
+ rowCellMouseDown: (data: TargetCellInfo) => void;
2181
+ rowCellMouseUp: (data: TargetCellInfo) => void;
2182
+ rowCellMouseMove: (data: TargetCellInfo) => void;
2183
+ rowCellCollapseTreeRows: (params: {
2184
+ id: number;
2185
+ isCollapsed: boolean;
2186
+ node: Node_2;
2187
+ }) => void;
2188
+ colCellHover: (data: TargetCellInfo) => void;
2189
+ colCellClick: (data: TargetCellInfo) => void;
2190
+ colCellDoubleClick: (data: TargetCellInfo) => void;
2191
+ colCellContextMenu: (data: TargetCellInfo) => void;
2192
+ colCellMouseDown: (data: TargetCellInfo) => void;
2193
+ colCellMouseUp: (data: TargetCellInfo) => void;
2194
+ colCellMouseMove: (data: TargetCellInfo) => void;
2195
+ dataCellHover: (data: TargetCellInfo) => void;
2196
+ dataCellClick: (data: TargetCellInfo) => void;
2197
+ dataCellDoubleClick: (data: TargetCellInfo) => void;
2198
+ dataCellContextMenu: (data: TargetCellInfo) => void;
2199
+ dataCellMouseDown: (data: TargetCellInfo) => void;
2200
+ dataCellMouseUp: (data: TargetCellInfo) => void;
2201
+ dataCellMouseMove: (data: TargetCellInfo) => void;
2202
+ dataCellTrendIconClick: (meta: ViewMeta) => void;
2203
+ dataCellBrushSelection: (brushRangeDataCells: DataCell[]) => void;
2204
+ dataCellSelectMove: (metas: CellMeta[]) => void;
2205
+ cornerCellHover: (data: TargetCellInfo) => void;
2206
+ cornerCellClick: (data: TargetCellInfo) => void;
2207
+ cornerCellDoubleClick: (data: TargetCellInfo) => void;
2208
+ cornerCellContextMenu: (data: TargetCellInfo) => void;
2209
+ cornerCellMouseDown: (data: TargetCellInfo) => void;
2210
+ cornerCellMouseUp: (data: TargetCellInfo) => void;
2211
+ cornerCellMouseMove: (data: TargetCellInfo) => void;
2212
+ mergedCellsHover: (data: TargetCellInfo) => void;
2213
+ mergedCellsClick: (data: TargetCellInfo) => void;
2214
+ mergedCellsDoubleClick: (data: TargetCellInfo) => void;
2215
+ mergedCellsContextMenu: (data: TargetCellInfo) => void;
2216
+ mergedCellsMouseDown: (data: TargetCellInfo) => void;
2217
+ mergedCellsMouseUp: (data: TargetCellInfo) => void;
2218
+ mergedCellsMouseMove: (data: TargetCellInfo) => void;
2219
+ rangeSort: (params: SortParams) => void;
2220
+ rangeSorted: (event: default_2) => void;
2221
+ rangeFilter: (data: {
2222
+ filterKey: string;
2223
+ filteredValues: string[];
2224
+ }) => void;
2225
+ rangeFiltered: (data: DataType[]) => void;
2226
+ layoutAfterHeaderLayout: (layoutResult: LayoutResult) => void;
2227
+ layoutPagination: (data: {
2228
+ pageSize: number;
2229
+ pageCount: number;
2230
+ total: number;
2231
+ current: number;
2232
+ }) => void;
2233
+ layoutCellScroll: (position: CellScrollPosition) => void;
2234
+ layoutAfterCollapseRows: (data: CollapsedRowsType) => void;
2235
+ collapseRowsAll: (hierarchyCollapse: boolean) => void;
2236
+ layoutColsExpanded: (node: Node_2) => void;
2237
+ layoutColsHidden: (data: {
2238
+ currentHiddenColumnsInfo: HiddenColumnsInfo;
2239
+ hiddenColumnsDetail: HiddenColumnsInfo[];
2240
+ }) => void;
2241
+ beforeRender: () => void;
2242
+ afterRender: () => void;
2243
+ destroy: () => void;
2244
+ layoutResize: (params: ResizeParams) => void;
2245
+ layoutResizeSeriesWidth: (params: ResizeParams) => void;
2246
+ layoutResizeRowWidth: (params: ResizeParams) => void;
2247
+ layoutResizeRowHeight: (params: ResizeParams) => void;
2248
+ layoutResizeColWidth: (params: ResizeParams) => void;
2249
+ layoutResizeColHeight: (params: ResizeParams) => void;
2250
+ layoutResizeTreeWidth: (params: ResizeParams) => void;
2251
+ layoutResizeMouseDown: (data: {
2252
+ event: Partial<MouseEvent>;
2253
+ resizeInfo?: ResizeInfo;
2254
+ }) => void;
2255
+ layoutResizeMouseUp: (data: {
2256
+ event: Partial<MouseEvent>;
2257
+ resizeInfo?: ResizeInfo;
2258
+ }) => void;
2259
+ layoutResizeMouseMove: (data: {
2260
+ event: Partial<MouseEvent>;
2261
+ resizeInfo?: ResizeInfo;
2262
+ }) => void;
2263
+ keyBoardDown: (event: KeyboardEvent) => void;
2264
+ keyBoardUp: (event: KeyboardEvent) => void;
2265
+ copied: (copyData: string) => void;
2266
+ actionIconHover: (event: default_2) => void;
2267
+ actionIconClick: (event: default_2) => void;
2268
+ contextMenu: (event: default_2) => void;
2269
+ click: (event: default_2) => void;
2270
+ doubleClick: (event: default_2) => void;
2271
+ mouseHover: (event: default_2) => void;
2272
+ mouseUp: (event: MouseEvent) => void;
2273
+ selected: (cells: DataCell[]) => void;
2274
+ reset: (event: KeyboardEvent) => void;
2275
+ linkFieldJump: (data: {
2276
+ key: string;
2277
+ record: Data;
2278
+ }) => void;
2279
+ }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
2280
+ sheetType: PropType<SheetType>;
2281
+ dataCfg: PropType<S2DataConfig>;
2282
+ themeCfg: PropType<ThemeCfg>;
2283
+ showPagination: {
2284
+ type: PropType<boolean | {
2285
+ onShowSizeChange?: (pageSize: number) => void;
2286
+ onChange?: (current: number) => void;
2287
+ }>;
2288
+ default: boolean | {
2289
+ onShowSizeChange?: (pageSize: number) => void;
2290
+ onChange?: (current: number) => void;
2291
+ };
2292
+ };
2293
+ loading: BooleanConstructor;
2294
+ partDrillDown: ObjectConstructor;
2295
+ header: ObjectConstructor;
2296
+ options: {
2297
+ type: PropType<S2Options<string | Element>>;
2298
+ default: S2Options<string | Element>;
2299
+ };
2300
+ adaptive: {
2301
+ type: PropType<Adaptive>;
2302
+ default: Adaptive;
2303
+ };
2304
+ onSpreadsheet: PropType<(container: S2MountContainer, dataCfg: S2DataConfig, options: S2Options<string | Element>) => SpreadSheet>;
2305
+ onGetSpreadSheet: PropType<(spreadsheet: SpreadSheet) => void>;
2306
+ }>> & {
2307
+ onSheetUpdate?: (params: S2RenderOptions) => any;
2308
+ onRowCellHover?: (data: TargetCellInfo) => any;
2309
+ onRowCellClick?: (data: TargetCellInfo) => any;
2310
+ onRowCellDoubleClick?: (data: TargetCellInfo) => any;
2311
+ onRowCellContextMenu?: (data: TargetCellInfo) => any;
2312
+ onRowCellMouseDown?: (data: TargetCellInfo) => any;
2313
+ onRowCellMouseUp?: (data: TargetCellInfo) => any;
2314
+ onRowCellMouseMove?: (data: TargetCellInfo) => any;
2315
+ onRowCellCollapseTreeRows?: (params: {
2316
+ id: number;
2317
+ isCollapsed: boolean;
2318
+ node: Node_2;
2319
+ }) => any;
2320
+ onColCellHover?: (data: TargetCellInfo) => any;
2321
+ onColCellClick?: (data: TargetCellInfo) => any;
2322
+ onColCellDoubleClick?: (data: TargetCellInfo) => any;
2323
+ onColCellContextMenu?: (data: TargetCellInfo) => any;
2324
+ onColCellMouseDown?: (data: TargetCellInfo) => any;
2325
+ onColCellMouseUp?: (data: TargetCellInfo) => any;
2326
+ onColCellMouseMove?: (data: TargetCellInfo) => any;
2327
+ onDataCellHover?: (data: TargetCellInfo) => any;
2328
+ onDataCellClick?: (data: TargetCellInfo) => any;
2329
+ onDataCellDoubleClick?: (data: TargetCellInfo) => any;
2330
+ onDataCellContextMenu?: (data: TargetCellInfo) => any;
2331
+ onDataCellMouseDown?: (data: TargetCellInfo) => any;
2332
+ onDataCellMouseUp?: (data: TargetCellInfo) => any;
2333
+ onDataCellMouseMove?: (data: TargetCellInfo) => any;
2334
+ onDataCellTrendIconClick?: (meta: ViewMeta) => any;
2335
+ onDataCellBrushSelection?: (brushRangeDataCells: DataCell[]) => any;
2336
+ onDataCellSelectMove?: (metas: CellMeta[]) => any;
2337
+ onCornerCellHover?: (data: TargetCellInfo) => any;
2338
+ onCornerCellClick?: (data: TargetCellInfo) => any;
2339
+ onCornerCellDoubleClick?: (data: TargetCellInfo) => any;
2340
+ onCornerCellContextMenu?: (data: TargetCellInfo) => any;
2341
+ onCornerCellMouseDown?: (data: TargetCellInfo) => any;
2342
+ onCornerCellMouseUp?: (data: TargetCellInfo) => any;
2343
+ onCornerCellMouseMove?: (data: TargetCellInfo) => any;
2344
+ onMergedCellsHover?: (data: TargetCellInfo) => any;
2345
+ onMergedCellsClick?: (data: TargetCellInfo) => any;
2346
+ onMergedCellsDoubleClick?: (data: TargetCellInfo) => any;
2347
+ onMergedCellsContextMenu?: (data: TargetCellInfo) => any;
2348
+ onMergedCellsMouseDown?: (data: TargetCellInfo) => any;
2349
+ onMergedCellsMouseUp?: (data: TargetCellInfo) => any;
2350
+ onMergedCellsMouseMove?: (data: TargetCellInfo) => any;
2351
+ onRangeSort?: (params: SortParams) => any;
2352
+ onRangeSorted?: (event: default_2) => any;
2353
+ onRangeFilter?: (data: {
2354
+ filterKey: string;
2355
+ filteredValues: string[];
2356
+ }) => any;
2357
+ onRangeFiltered?: (data: DataType[]) => any;
2358
+ onLayoutAfterHeaderLayout?: (layoutResult: LayoutResult) => any;
2359
+ onLayoutPagination?: (data: {
2360
+ pageSize: number;
2361
+ pageCount: number;
2362
+ total: number;
2363
+ current: number;
2364
+ }) => any;
2365
+ onLayoutCellScroll?: (position: CellScrollPosition) => any;
2366
+ onLayoutAfterCollapseRows?: (data: CollapsedRowsType) => any;
2367
+ onCollapseRowsAll?: (hierarchyCollapse: boolean) => any;
2368
+ onLayoutColsExpanded?: (node: Node_2) => any;
2369
+ onLayoutColsHidden?: (data: {
2370
+ currentHiddenColumnsInfo: HiddenColumnsInfo;
2371
+ hiddenColumnsDetail: HiddenColumnsInfo[];
2372
+ }) => any;
2373
+ onBeforeRender?: () => any;
2374
+ onAfterRender?: () => any;
2375
+ onDestroy?: () => any;
2376
+ onLayoutResize?: (params: ResizeParams) => any;
2377
+ onLayoutResizeSeriesWidth?: (params: ResizeParams) => any;
2378
+ onLayoutResizeRowWidth?: (params: ResizeParams) => any;
2379
+ onLayoutResizeRowHeight?: (params: ResizeParams) => any;
2380
+ onLayoutResizeColWidth?: (params: ResizeParams) => any;
2381
+ onLayoutResizeColHeight?: (params: ResizeParams) => any;
2382
+ onLayoutResizeTreeWidth?: (params: ResizeParams) => any;
2383
+ onLayoutResizeMouseDown?: (data: {
2384
+ event: Partial<MouseEvent>;
2385
+ resizeInfo?: ResizeInfo;
2386
+ }) => any;
2387
+ onLayoutResizeMouseUp?: (data: {
2388
+ event: Partial<MouseEvent>;
2389
+ resizeInfo?: ResizeInfo;
2390
+ }) => any;
2391
+ onLayoutResizeMouseMove?: (data: {
2392
+ event: Partial<MouseEvent>;
2393
+ resizeInfo?: ResizeInfo;
2394
+ }) => any;
2395
+ onKeyBoardDown?: (event: KeyboardEvent) => any;
2396
+ onKeyBoardUp?: (event: KeyboardEvent) => any;
2397
+ onCopied?: (copyData: string) => any;
2398
+ onActionIconHover?: (event: default_2) => any;
2399
+ onActionIconClick?: (event: default_2) => any;
2400
+ onContextMenu?: (event: default_2) => any;
2401
+ onClick?: (event: default_2) => any;
2402
+ onDoubleClick?: (event: default_2) => any;
2403
+ onMouseHover?: (event: default_2) => any;
2404
+ onMouseUp?: (event: MouseEvent) => any;
2405
+ onSelected?: (cells: DataCell[]) => any;
2406
+ onReset?: (event: KeyboardEvent) => any;
2407
+ onLinkFieldJump?: (data: {
2408
+ key: string;
2409
+ record: Data;
2410
+ }) => any;
2411
+ onSpreadsheet?: (container: S2MountContainer, dataCfg: S2DataConfig, options: S2Options<string | Element>) => any;
2412
+ onGetSpreadSheet?: (spreadsheet: SpreadSheet) => any;
2413
+ }, {
2414
+ options: S2Options<string | Element>;
2415
+ loading: boolean;
2416
+ adaptive: boolean | {
2417
+ width?: boolean;
2418
+ height?: boolean;
2419
+ getContainer?: () => HTMLElement;
2420
+ };
2421
+ showPagination: boolean | {
2422
+ onShowSizeChange?: (pageSize: number) => void;
2423
+ onChange?: (current: number) => void;
2424
+ };
2425
+ }>;
2426
+
2427
+ declare interface PointObject {
2428
+ x: number;
2429
+ y: number;
2430
+ }
2431
+
2432
+ declare interface PropOption<T = any> {
2433
+ type: PropType<T>;
2434
+ default?: T;
2435
+ }
2436
+
2437
+ declare interface RangeColors {
2438
+ good: string;
2439
+ satisfactory: string;
2440
+ bad: string;
2441
+ }
2442
+
2443
+ declare interface RequiredPropOption<T = any> {
2444
+ type?: PropType<T>;
2445
+ required: true;
2446
+ }
2447
+
2448
+ declare interface ResizeActiveOptions {
2449
+ rowCellVertical?: boolean;
2450
+ cornerCellHorizontal?: boolean;
2451
+ colCellHorizontal?: boolean;
2452
+ colCellVertical?: boolean;
2453
+ rowResizeType?: ResizeType;
2454
+ }
2455
+
2456
+ declare interface ResizeArea {
2457
+ size?: number;
2458
+ background?: string;
2459
+ guideLineColor?: string;
2460
+ guideLineDash?: number[];
2461
+ backgroundOpacity?: number;
2462
+ interactionState?: InteractionState;
2463
+ }
2464
+
2465
+ declare enum ResizeAreaEffect {
2466
+ Field = "field",
2467
+ Cell = "cell",
2468
+ Tree = "tree",
2469
+ Series = "series"
2470
+ }
2471
+
2472
+ declare enum ResizeDirectionType {
2473
+ Horizontal = "col",
2474
+ Vertical = "row"
2475
+ }
2476
+
2477
+ declare type ResizeHandler = (data: {
2478
+ info: ResizeInfo_2;
2479
+ style?: Style;
2480
+ seriesNumberWidth?: number;
2481
+ }) => void;
2482
+
2483
+ declare interface ResizeInfo_2 {
2484
+ theme: ResizeArea;
2485
+ type: ResizeDirectionType;
2486
+ offsetX: number;
2487
+ offsetY: number;
2488
+ width: number;
2489
+ height: number;
2490
+ size: number;
2491
+ /** 改动影响区域 */
2492
+ effect: ResizeAreaEffect;
2493
+ isResizeArea?: boolean;
2494
+ /** 字段id */
2495
+ id?: string;
2496
+ }
2497
+
2498
+ declare interface ResizeParams_2 {
2499
+ resizeInfo?: ResizeInfo_2;
2500
+ style?: Style;
2501
+ }
2502
+
2503
+ declare enum ResizeType {
2504
+ ALL = "all",
2505
+ CURRENT = "current"
2506
+ }
2507
+
2508
+ declare class RootInteraction {
2509
+ spreadsheet: SpreadSheet_2;
2510
+ interactions: Map<string, BaseEvent>;
2511
+ intercepts: Set<Intercept>;
2512
+ private hoverTimer;
2513
+ eventController: EventController;
2514
+ private defaultState;
2515
+ constructor(spreadsheet: SpreadSheet_2);
2516
+ destroy(): void;
2517
+ reset(): void;
2518
+ setState(interactionStateInfo: InteractionStateInfo): void;
2519
+ getState(): InteractionStateInfo;
2520
+ setInteractedCells(cell: S2CellType): void;
2521
+ getInteractedCells(): S2CellType<ViewMeta_2>[];
2522
+ resetState(): void;
2523
+ getCurrentStateName(): InteractionStateName;
2524
+ isEqualStateName(stateName: InteractionStateName): boolean;
2525
+ private isStateOf;
2526
+ isSelectedState(): boolean;
2527
+ isAllSelectedState(): boolean;
2528
+ isHoverFocusState(): boolean;
2529
+ isHoverState(): boolean;
2530
+ isActiveCell(cell: S2CellType): boolean;
2531
+ isSelectedCell(cell: S2CellType): boolean;
2532
+ getCells(): CellMeta_2[];
2533
+ getActiveCells(): S2CellType<ViewMeta_2>[];
2534
+ clearStyleIndependent(): void;
2535
+ getPanelGroupAllUnSelectedDataCells(): DataCell_2[];
2536
+ getPanelGroupAllDataCells(): DataCell_2[];
2537
+ getAllRowHeaderCells(): RowCell[];
2538
+ getAllColHeaderCells(): ColCell[];
2539
+ getRowColActiveCells(ids: string[]): S2CellType<ViewMeta_2>[];
2540
+ getAllCells(): S2CellType<ViewMeta_2>[];
2541
+ selectAll: () => void;
2542
+ getCellChildrenNodes: (cell: S2CellType) => Node_2_2[];
2543
+ selectHeaderCell: (selectHeaderCellInfo?: SelectHeaderCellInfo) => boolean;
2544
+ highlightNodes: (nodes?: Node_2_2[]) => void;
2545
+ mergeCells: (cellsInfo?: MergedCellInfo[], hideData?: boolean) => void;
2546
+ unmergeCell: (removedCells: MergedCell) => void;
2547
+ hideColumns(hiddenColumnFields?: string[], forceRender?: boolean): void;
2548
+ private getDefaultInteractions;
2549
+ private registerInteractions;
2550
+ private registerEventController;
2551
+ draw(): void;
2552
+ clearState(): void;
2553
+ changeState(interactionStateInfo: InteractionStateInfo): void;
2554
+ updatePanelGroupAllDataCells(): void;
2555
+ updateCells(cells?: S2CellType[]): void;
2556
+ addIntercepts(interceptTypes?: InterceptType[]): void;
2557
+ hasIntercepts(interceptTypes?: InterceptType[]): boolean;
2558
+ removeIntercepts(interceptTypes?: InterceptType[]): void;
2559
+ clearHoverTimer(): void;
2560
+ setHoverTimer(timer: number): void;
2561
+ getHoverTimer(): number;
2562
+ }
2563
+
2564
+ declare class RowCell extends HeaderCell {
2565
+ protected headerConfig: RowHeaderConfig;
2566
+ private gm;
2567
+ get cellType(): CellTypes;
2568
+ destroy(): void;
2569
+ protected initCell(): void;
2570
+ protected drawBackgroundShape(): void;
2571
+ protected drawInteractiveBgShape(): void;
2572
+ private showTreeIcon;
2573
+ private showTreeLeafNodeAlignDot;
2574
+ private getParentTreeIconCfg;
2575
+ protected drawTreeIcon(): void;
2576
+ protected drawTreeLeafNodeAlignDot(): void;
2577
+ protected drawTextShape(): void;
2578
+ protected drawLinkFieldShape(): void;
2579
+ protected drawRectBorder(): void;
2580
+ protected drawResizeAreaInLeaf(): void;
2581
+ protected getContentIndent(): number;
2582
+ protected getTextIndent(): number;
2583
+ protected isTreeLevel(): any;
2584
+ protected isBolderText(): boolean;
2585
+ protected getTextStyle(): TextTheme;
2586
+ protected getIconPosition(): {
2587
+ x: any;
2588
+ y: any;
2589
+ };
2590
+ protected getMaxTextWidth(): number;
2591
+ private getTextArea;
2592
+ protected getTextPosition(): Point;
2593
+ private getIconYPosition;
2594
+ }
2595
+
2596
+ declare type RowCellCollapseTreeRowsType = {
2597
+ id: string;
2598
+ isCollapsed: boolean;
2599
+ node: Node_2_2;
2600
+ };
2601
+
2602
+ declare interface RowCfg {
2603
+ width?: number;
2604
+ widthByField?: Record<string, number>;
2605
+ heightByField?: Record<string, number>;
2606
+ treeRowsWidth?: number;
2607
+ }
2608
+
2609
+ /**
2610
+ * Row Header for SpreadSheet
2611
+ */
2612
+ declare class RowHeader extends BaseHeader<RowHeaderConfig> {
2613
+ private gm;
2614
+ constructor(cfg: RowHeaderConfig);
2615
+ destroy(): void;
2616
+ protected layout(): void;
2617
+ protected offset(): void;
2618
+ protected clip(): void;
2619
+ }
2620
+
2621
+ declare interface RowHeaderConfig extends BaseHeaderConfig {
2622
+ hierarchyType: S2Options_2['hierarchyType'];
2623
+ linkFields: string[];
2624
+ seriesNumberWidth: number;
2625
+ }
2626
+
2627
+ declare interface S2BasicOptions<T = Element | string> {
2628
+ width?: number;
2629
+ height?: number;
2630
+ debug?: boolean;
2631
+ hierarchyType?: 'grid' | 'tree' | 'customTree';
2632
+ conditions?: Conditions;
2633
+ totals?: Totals;
2634
+ tooltip?: Tooltip<T>;
2635
+ interaction?: InteractionOptions;
2636
+ pagination?: Pagination;
2637
+ frozenRowHeader?: boolean;
2638
+ showSeriesNumber?: boolean;
2639
+ showDefaultHeaderActionIcon?: boolean;
2640
+ headerActionIcons?: HeaderActionIcon[];
2641
+ customSVGIcons?: CustomSVGIcon[];
2642
+ style?: Style;
2643
+ hdAdapter?: boolean;
2644
+ mergedCellsInfo?: MergedCellInfo[][];
2645
+ placeholder?: ((meta: Record<string, any>) => string) | string;
2646
+ cornerText?: string;
2647
+ cornerExtraFieldText?: string;
2648
+ supportCSSTransform?: boolean;
2649
+ devicePixelRatio?: number;
2650
+ /** ***********CUSTOM CELL/HEADER HOOKS**************** */
2651
+ dataCell?: DataCellCallback;
2652
+ cornerCell?: CellCallback<CornerHeaderConfig>;
2653
+ rowCell?: CellCallback<RowHeaderConfig>;
2654
+ colCell?: CellCallback<ColHeaderConfig>;
2655
+ frame?: FrameCallback;
2656
+ cornerHeader?: CornerHeaderCallback;
2657
+ /** ***********CUSTOM LIFECYCLE HOOKS**************** */
2658
+ layoutHierarchy?: LayoutHierarchy;
2659
+ layoutArrange?: LayoutArrange;
2660
+ layoutCoordinate?: LayoutCoordinate;
2661
+ layoutDataPosition?: LayoutDataPosition;
2662
+ /** ***********CUSTOM DATA CELL RENDER HOOKS**************** */
2663
+ filterDisplayDataItem?: FilterDataItemCallback;
2664
+ mappingDisplayDataItem?: MappingDataItemCallback;
2665
+ }
2666
+
2667
+ declare type S2CellType<T extends SimpleBBox = ViewMeta_2> = DataCell_2 | HeaderCell | ColCell | CornerCell | RowCell | MergedCell | BaseCell<T>;
2668
+
2669
+ declare interface S2DataConfig_2 {
2670
+ data: Data_2[];
2671
+ totalData?: Data_2[];
2672
+ fields: Fields;
2673
+ meta?: Meta[];
2674
+ sortParams?: SortParams_2;
2675
+ filterParams?: FilterParam[];
2676
+ [key: string]: unknown;
2677
+ }
2678
+
2679
+ declare enum S2Event {
2680
+ /** ================ Row Cell ================ */
2681
+ ROW_CELL_HOVER = "row-cell:hover",
2682
+ ROW_CELL_CLICK = "row-cell:click",
2683
+ ROW_CELL_DOUBLE_CLICK = "row-cell:double-click",
2684
+ ROW_CELL_CONTEXT_MENU = "row-cell:context-menu",
2685
+ ROW_CELL_MOUSE_DOWN = "row-cell:mouse-down",
2686
+ ROW_CELL_MOUSE_UP = "row-cell:mouse-up",
2687
+ ROW_CELL_MOUSE_MOVE = "row-cell:mouse-move",
2688
+ ROW_CELL_COLLAPSE_TREE_ROWS = "row-cell:collapsed-tree-rows",
2689
+ /** ================ Col Cell ================ */
2690
+ COL_CELL_HOVER = "col-cell:hover",
2691
+ COL_CELL_CLICK = "col-cell:click",
2692
+ COL_CELL_DOUBLE_CLICK = "col-cell:double-click",
2693
+ COL_CELL_CONTEXT_MENU = "col-cell:context-menu",
2694
+ COL_CELL_MOUSE_DOWN = "col-cell:mouse-down",
2695
+ COL_CELL_MOUSE_UP = "col-cell:mouse-up",
2696
+ COL_CELL_MOUSE_MOVE = "col-cell:mouse-move",
2697
+ /** ================ Data Cell ================ */
2698
+ DATA_CELL_HOVER = "data-cell:hover",
2699
+ DATA_CELL_CLICK = "data-cell:click",
2700
+ DATA_CELL_DOUBLE_CLICK = "data-cell:double-click",
2701
+ DATA_CELL_CONTEXT_MENU = "data-cell:context-menu",
2702
+ DATA_CELL_MOUSE_UP = "data-cell:mouse-up",
2703
+ DATA_CELL_MOUSE_DOWN = "data-cell:mouse-down",
2704
+ DATA_CELL_MOUSE_MOVE = "data-cell:mouse-move",
2705
+ DATA_CELL_TREND_ICON_CLICK = "data-cell:trend-icon-click",
2706
+ DATE_CELL_BRUSH_SELECTION = "data-cell:brush-selection",
2707
+ DATE_CELL_SELECT_MOVE = "data-cell:select-move",
2708
+ /** ================ Corner Cell ================ */
2709
+ CORNER_CELL_HOVER = "corner-cell:hover",
2710
+ CORNER_CELL_CLICK = "corner-cell:click",
2711
+ CORNER_CELL_DOUBLE_CLICK = "corner-cell:double-click",
2712
+ CORNER_CELL_CONTEXT_MENU = "corner-cell:context-menu",
2713
+ CORNER_CELL_MOUSE_DOWN = "corner-cell:mouse-down",
2714
+ CORNER_CELL_MOUSE_UP = "corner-cell:mouse-up",
2715
+ CORNER_CELL_MOUSE_MOVE = "corner-cell:mouse-move",
2716
+ /** ================ Merged Cells ================ */
2717
+ MERGED_CELLS_HOVER = "merged-cells:hover",
2718
+ MERGED_CELLS_CLICK = "merged-cells:click",
2719
+ MERGED_CELLS_DOUBLE_CLICK = "merged-cells:double-click",
2720
+ MERGED_CELLS_CONTEXT_MENU = "merged-cell:context-menu",
2721
+ MERGED_CELLS_MOUSE_DOWN = "merged-cells:mouse-down",
2722
+ MERGED_CELLS_MOUSE_UP = "merged-cells:mouse-up",
2723
+ MERGED_CELLS_MOUSE_MOVE = "merged-cells:mouse-move",
2724
+ /** ================ Sort ================ */
2725
+ RANGE_SORT = "sort:range-sort",
2726
+ RANGE_SORTED = "sort:range-sorted",
2727
+ /** ================ Table Filter ================ */
2728
+ RANGE_FILTER = "filter:range-filter",
2729
+ RANGE_FILTERED = "filter:range-filtered",
2730
+ /** ================ Table Layout ================ */
2731
+ LAYOUT_AFTER_HEADER_LAYOUT = "layout:after-header-layout",
2732
+ LAYOUT_CELL_SCROLL = "layout:cell-scroll",
2733
+ LAYOUT_PAGINATION = "layout:pagination",
2734
+ LAYOUT_COLLAPSE_ROWS = "layout:collapsed-rows",
2735
+ LAYOUT_AFTER_COLLAPSE_ROWS = "layout:after-collapsed-rows",
2736
+ LAYOUT_TREE_ROWS_COLLAPSE_ALL = "layout:toggle-collapse-all",
2737
+ LAYOUT_COLS_EXPANDED = "layout:table-col-expanded",
2738
+ LAYOUT_COLS_HIDDEN = "layout:table-col-hidden",
2739
+ LAYOUT_AFTER_RENDER = "layout:after-render",
2740
+ LAYOUT_BEFORE_RENDER = "layout:before-render",
2741
+ LAYOUT_DESTROY = "layout:destroy",
2742
+ /** ================ Table Layout Resize ================ */
2743
+ LAYOUT_RESIZE = "layout:resize",
2744
+ LAYOUT_RESIZE_SERIES_WIDTH = "layout:resize-series-width",
2745
+ LAYOUT_RESIZE_ROW_WIDTH = "layout:resize-row-width",
2746
+ LAYOUT_RESIZE_ROW_HEIGHT = "layout:resize-row-height",
2747
+ LAYOUT_RESIZE_COL_WIDTH = "layout:resize-column-width",
2748
+ LAYOUT_RESIZE_COL_HEIGHT = "layout:resize-column-height",
2749
+ LAYOUT_RESIZE_TREE_WIDTH = "layout:resize-tree-width",
2750
+ LAYOUT_RESIZE_MOUSE_DOWN = "layout:resize:mouse-down",
2751
+ LAYOUT_RESIZE_MOUSE_MOVE = "layout:resize:mouse-move",
2752
+ LAYOUT_RESIZE_MOUSE_UP = "layout:resize-mouse-up",
2753
+ /** ================ Global ================ */
2754
+ GLOBAL_KEYBOARD_DOWN = "global:keyboard-down",
2755
+ GLOBAL_KEYBOARD_UP = "global:keyboard-up",
2756
+ GLOBAL_COPIED = "global:copied",
2757
+ GLOBAL_MOUSE_UP = "global:mouse-up",
2758
+ GLOBAL_MOUSE_MOVE = "global:mouse-move",
2759
+ GLOBAL_ACTION_ICON_CLICK = "global:action-icon-click",
2760
+ GLOBAL_ACTION_ICON_HOVER = "global:action-icon-hover",
2761
+ GLOBAL_CONTEXT_MENU = "global:context-menu",
2762
+ GLOBAL_CLICK = "global:click",
2763
+ GLOBAL_DOUBLE_CLICK = "global:double-click",
2764
+ GLOBAL_SELECTED = "global:selected",
2765
+ GLOBAL_HOVER = "global:hover",
2766
+ GLOBAL_RESET = "global:reset",
2767
+ GLOBAL_LINK_FIELD_JUMP = "global:link-field-jump"
2768
+ }
2769
+
2770
+ declare interface S2EventHandler {
2771
+ type: keyof EmitterType;
2772
+ handler: EmitterType[keyof EmitterType];
2773
+ }
2774
+
2775
+ declare type S2MountContainer_2 = string | Element;
2776
+
2777
+ declare interface S2Options_2<T = Element | string> extends S2BasicOptions<T>, S2TableSheetOptions, S2PivotSheetOptions {
2778
+ dataSet?: (spreadsheet: SpreadSheet_2) => BaseDataSet_2;
2779
+ }
2780
+
2781
+ declare interface S2PivotSheetOptions {
2782
+ }
2783
+
2784
+ declare interface S2RenderOptions_2 {
2785
+ reloadData?: boolean;
2786
+ reBuildDataSet?: boolean;
2787
+ reBuildHiddenColumnsDetail?: boolean;
2788
+ }
2789
+
2790
+ declare interface S2TableSheetOptions {
2791
+ frozenRowCount?: number;
2792
+ frozenColCount?: number;
2793
+ frozenTrailingRowCount?: number;
2794
+ frozenTrailingColCount?: number;
2795
+ }
2796
+
2797
+ declare interface S2Theme extends CellThemes {
2798
+ resizeArea?: ResizeArea;
2799
+ scrollBar?: ScrollBarTheme;
2800
+ splitLine?: SplitLine;
2801
+ bullet?: BulletTheme;
2802
+ prepareSelectMask?: InteractionStateTheme;
2803
+ background?: Background;
2804
+ }
2805
+
2806
+ declare interface S2WheelEvent extends WheelEvent {
2807
+ layerX: number;
2808
+ layerY: number;
2809
+ }
2810
+
2811
+ declare class ScrollBar extends Group {
2812
+ isHorizontal: boolean;
2813
+ trackLen: number;
2814
+ thumbLen: number;
2815
+ position: PointObject;
2816
+ minThumbLen: number;
2817
+ thumbOffset: number;
2818
+ scrollTargetMaxOffset: number;
2819
+ theme: ScrollBarTheme;
2820
+ scrollBarGroup: IGroup;
2821
+ trackShape: IShape;
2822
+ thumbShape: IShape;
2823
+ private startPos;
2824
+ private isMobile;
2825
+ private clearEvents;
2826
+ private eventHandlers;
2827
+ private scrollFrameId;
2828
+ constructor(scrollBarCfg: ScrollBarCfg);
2829
+ getCoordinates: () => {
2830
+ from: string;
2831
+ to: string;
2832
+ };
2833
+ /**
2834
+ * 当前滑块滑动的位置 0 ~ 1
2835
+ */
2836
+ current: () => number;
2837
+ /**
2838
+ * 更新滑道长度
2839
+ * @param newTrackLen 新的滑块长度
2840
+ */
2841
+ updateTrackLen: (newTrackLen: number) => void;
2842
+ /**
2843
+ * 更新滑块长度
2844
+ * @param newThumbLen 新的滑道长度
2845
+ */
2846
+ updateThumbLen: (newThumbLen: number) => void;
2847
+ /**
2848
+ * 更新滑块的 offset 值
2849
+ * @param offset
2850
+ */
2851
+ updateThumbOffset: (offset: number, emitScrollChange?: boolean) => void;
2852
+ /**
2853
+ * 只更新位置属性,而不emit滚动事件
2854
+ * @param offset
2855
+ */
2856
+ onlyUpdateThumbOffset: (offset: number) => void;
2857
+ emitScrollChange: (offset: number, updateThumbOffset?: boolean) => void;
2858
+ protected addEventListener: (target: EventTarget, eventType: keyof HTMLElementEventMap, callback: EventListenerOrEventListenerObject) => EventListenerReturn;
2859
+ protected addEvent: (target: EventHandler['target'], type: EventHandler['type'], handler: EventHandler['handler']) => void;
2860
+ private initScrollBar;
2861
+ private createScrollBarGroup;
2862
+ private createTrackShape;
2863
+ private createThumbShape;
2864
+ private bindEvents;
2865
+ private onStartEvent;
2866
+ private bindLaterEvent;
2867
+ private onTrackClick;
2868
+ private onMouseMove;
2869
+ private onMouseUp;
2870
+ private onTrackMouseOver;
2871
+ private onTrackMouseOut;
2872
+ private validateRange;
2873
+ }
2874
+
2875
+ declare interface ScrollBarCfg {
2876
+ readonly isHorizontal?: boolean;
2877
+ readonly trackLen: number;
2878
+ readonly thumbLen: number;
2879
+ readonly position: PointObject;
2880
+ readonly minThumbLen?: number;
2881
+ readonly thumbOffset?: number;
2882
+ readonly scrollTargetMaxOffset: number;
2883
+ readonly theme?: ScrollBarTheme;
2884
+ }
2885
+
2886
+ declare enum ScrollbarPositionType {
2887
+ CONTENT = "content",
2888
+ CANVAS = "canvas"
2889
+ }
2890
+
2891
+ declare interface ScrollBarTheme {
2892
+ trackColor?: string;
2893
+ thumbHoverColor?: string;
2894
+ thumbColor?: string;
2895
+ size?: number;
2896
+ hoverSize?: number;
2897
+ /** 指定如何绘制每一条线段末端,lineCap?: 'butt' | 'round' | 'square'; */
2898
+ lineCap?: ShapeAttrs['lineCap'];
2899
+ }
2900
+
2901
+ declare interface ScrollOffset {
2902
+ scrollX?: number;
2903
+ scrollY?: number;
2904
+ hRowScrollX?: number;
2905
+ }
2906
+
2907
+ declare interface ScrollSpeedRatio {
2908
+ horizontal?: number;
2909
+ vertical?: number;
2910
+ }
2911
+
2912
+ declare type SelectedHandler = (cells: S2CellType[]) => void;
2913
+
2914
+ declare interface SelectHeaderCellInfo {
2915
+ cell: S2CellType<ViewMeta_2>;
2916
+ isMultiSelection?: boolean;
2917
+ }
2918
+
2919
+ declare class SeriesNumberHeader extends BaseHeader<BaseHeaderConfig> {
2920
+ private backgroundShape;
2921
+ private leftBorderShape;
2922
+ /**
2923
+ * Get seriesNumber header by config
2924
+ * @param viewportBBox
2925
+ * @param seriesNumberWidth
2926
+ * @param leafNodes
2927
+ * @param spreadsheet
2928
+ * @param cornerWidth
2929
+ */
2930
+ static getSeriesNumberHeader(viewportBBox: PanelBBox, seriesNumberWidth: number, leafNodes: Node_2_2[], spreadsheet: SpreadSheet_2, cornerWidth: number): SeriesNumberHeader;
2931
+ constructor(cfg: BaseHeaderConfig);
2932
+ clip(): void;
2933
+ layout(): void;
2934
+ protected offset(): void;
2935
+ private addBackGround;
2936
+ private addBorder;
2937
+ private getStyle;
2938
+ private addText;
2939
+ private getTextPadding;
2940
+ }
2941
+
2942
+ export declare const SheetComponent: DefineComponent<GetInitProps<BaseSheetComponentProps<PartDrillDown, unknown>, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "getSpreadSheet" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapseTreeRows" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellTrendIconClick" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellScroll" | "onLayoutAfterCollapseRows" | "onCollapseRowsAll" | "onLayoutColsExpanded" | "onLayoutColsHidden" | "onBeforeRender" | "onAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconClick" | "onContextMenu" | "onClick" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onSelected" | "onReset" | "onLinkFieldJump">, {
2943
+ s2Ref: ShallowRef<SheetExpose>;
2944
+ sheetType: ComputedRef<DefineComponent< {
2945
+ sheetType: PropType<SheetType>;
2946
+ dataCfg: PropType<S2DataConfig_2>;
2947
+ themeCfg: PropType<ThemeCfg_2>;
2948
+ showPagination: {
2949
+ type: PropType<boolean | {
2950
+ onShowSizeChange?: (pageSize: number) => void;
2951
+ onChange?: (current: number) => void;
2952
+ }>;
2953
+ default: boolean | {
2954
+ onShowSizeChange?: (pageSize: number) => void;
2955
+ onChange?: (current: number) => void;
2956
+ };
2957
+ };
2958
+ loading: BooleanConstructor;
2959
+ partDrillDown: ObjectConstructor;
2960
+ header: ObjectConstructor;
2961
+ options: {
2962
+ type: PropType<S2Options_2<string | Element>>;
2963
+ default: S2Options_2<string | Element>;
2964
+ };
2965
+ adaptive: {
2966
+ type: PropType<Adaptive>;
2967
+ default: Adaptive;
2968
+ };
2969
+ onSpreadsheet: PropType<(container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<string | Element>) => SpreadSheet_2>;
2970
+ onGetSpreadSheet: PropType<(spreadsheet: SpreadSheet_2) => void>;
2971
+ }, {
2972
+ s2Ref: ShallowRef<SheetExpose>;
2973
+ options: S2Options_2<string | Element>;
2974
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
2975
+ spreadsheet: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<string | Element>) => SpreadSheet_2;
2976
+ getSpreadSheet: (spreadsheet: SpreadSheet_2) => void;
2977
+ sheetUpdate: SheetUpdateCallback;
2978
+ rowCellHover: (data: TargetCellInfo_2) => void;
2979
+ rowCellClick: (data: TargetCellInfo_2) => void;
2980
+ rowCellDoubleClick: (data: TargetCellInfo_2) => void;
2981
+ rowCellContextMenu: (data: TargetCellInfo_2) => void;
2982
+ rowCellMouseDown: (data: TargetCellInfo_2) => void;
2983
+ rowCellMouseUp: (data: TargetCellInfo_2) => void;
2984
+ rowCellMouseMove: (data: TargetCellInfo_2) => void;
2985
+ rowCellCollapseTreeRows: (params: {
2986
+ id: number;
2987
+ isCollapsed: boolean;
2988
+ node: Node_2_2;
2989
+ }) => void;
2990
+ colCellHover: (data: TargetCellInfo_2) => void;
2991
+ colCellClick: (data: TargetCellInfo_2) => void;
2992
+ colCellDoubleClick: (data: TargetCellInfo_2) => void;
2993
+ colCellContextMenu: (data: TargetCellInfo_2) => void;
2994
+ colCellMouseDown: (data: TargetCellInfo_2) => void;
2995
+ colCellMouseUp: (data: TargetCellInfo_2) => void;
2996
+ colCellMouseMove: (data: TargetCellInfo_2) => void;
2997
+ dataCellHover: (data: TargetCellInfo_2) => void;
2998
+ dataCellClick: (data: TargetCellInfo_2) => void;
2999
+ dataCellDoubleClick: (data: TargetCellInfo_2) => void;
3000
+ dataCellContextMenu: (data: TargetCellInfo_2) => void;
3001
+ dataCellMouseDown: (data: TargetCellInfo_2) => void;
3002
+ dataCellMouseUp: (data: TargetCellInfo_2) => void;
3003
+ dataCellMouseMove: (data: TargetCellInfo_2) => void;
3004
+ dataCellTrendIconClick: (meta: ViewMeta_2) => void;
3005
+ dataCellBrushSelection: (brushRangeDataCells: DataCell_2[]) => void;
3006
+ dataCellSelectMove: (metas: CellMeta_2[]) => void;
3007
+ cornerCellHover: (data: TargetCellInfo_2) => void;
3008
+ cornerCellClick: (data: TargetCellInfo_2) => void;
3009
+ cornerCellDoubleClick: (data: TargetCellInfo_2) => void;
3010
+ cornerCellContextMenu: (data: TargetCellInfo_2) => void;
3011
+ cornerCellMouseDown: (data: TargetCellInfo_2) => void;
3012
+ cornerCellMouseUp: (data: TargetCellInfo_2) => void;
3013
+ cornerCellMouseMove: (data: TargetCellInfo_2) => void;
3014
+ mergedCellsHover: (data: TargetCellInfo_2) => void;
3015
+ mergedCellsClick: (data: TargetCellInfo_2) => void;
3016
+ mergedCellsDoubleClick: (data: TargetCellInfo_2) => void;
3017
+ mergedCellsContextMenu: (data: TargetCellInfo_2) => void;
3018
+ mergedCellsMouseDown: (data: TargetCellInfo_2) => void;
3019
+ mergedCellsMouseUp: (data: TargetCellInfo_2) => void;
3020
+ mergedCellsMouseMove: (data: TargetCellInfo_2) => void;
3021
+ rangeSort: (params: SortParams_2) => void;
3022
+ rangeSorted: (event: default_2) => void;
3023
+ rangeFilter: (data: {
3024
+ filterKey: string;
3025
+ filteredValues: string[];
3026
+ }) => void;
3027
+ rangeFiltered: (data: DataType_2[]) => void;
3028
+ layoutAfterHeaderLayout: (layoutResult: LayoutResult_2) => void;
3029
+ layoutPagination: (data: {
3030
+ pageSize: number;
3031
+ pageCount: number;
3032
+ total: number;
3033
+ current: number;
3034
+ }) => void;
3035
+ layoutCellScroll: (position: CellScrollPosition_2) => void;
3036
+ layoutAfterCollapseRows: (data: CollapsedRowsType_2) => void;
3037
+ collapseRowsAll: (hierarchyCollapse: boolean) => void;
3038
+ layoutColsExpanded: (node: Node_2_2) => void;
3039
+ layoutColsHidden: (data: {
3040
+ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
3041
+ hiddenColumnsDetail: HiddenColumnsInfo_2[];
3042
+ }) => void;
3043
+ beforeRender: () => void;
3044
+ afterRender: () => void;
3045
+ destroy: () => void;
3046
+ layoutResize: (params: ResizeParams_2) => void;
3047
+ layoutResizeSeriesWidth: (params: ResizeParams_2) => void;
3048
+ layoutResizeRowWidth: (params: ResizeParams_2) => void;
3049
+ layoutResizeRowHeight: (params: ResizeParams_2) => void;
3050
+ layoutResizeColWidth: (params: ResizeParams_2) => void;
3051
+ layoutResizeColHeight: (params: ResizeParams_2) => void;
3052
+ layoutResizeTreeWidth: (params: ResizeParams_2) => void;
3053
+ layoutResizeMouseDown: (data: {
3054
+ event: Partial<MouseEvent>;
3055
+ resizeInfo?: ResizeInfo_2;
3056
+ }) => void;
3057
+ layoutResizeMouseUp: (data: {
3058
+ event: Partial<MouseEvent>;
3059
+ resizeInfo?: ResizeInfo_2;
3060
+ }) => void;
3061
+ layoutResizeMouseMove: (data: {
3062
+ event: Partial<MouseEvent>;
3063
+ resizeInfo?: ResizeInfo_2;
3064
+ }) => void;
3065
+ keyBoardDown: (event: KeyboardEvent) => void;
3066
+ keyBoardUp: (event: KeyboardEvent) => void;
3067
+ copied: (copyData: string) => void;
3068
+ actionIconHover: (event: default_2) => void;
3069
+ actionIconClick: (event: default_2) => void;
3070
+ contextMenu: (event: default_2) => void;
3071
+ click: (event: default_2) => void;
3072
+ doubleClick: (event: default_2) => void;
3073
+ mouseHover: (event: default_2) => void;
3074
+ mouseUp: (event: MouseEvent) => void;
3075
+ selected: (cells: DataCell_2[]) => void;
3076
+ reset: (event: KeyboardEvent) => void;
3077
+ linkFieldJump: (data: {
3078
+ key: string;
3079
+ record: Data_2;
3080
+ }) => void;
3081
+ }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes< {
3082
+ sheetType: PropType<SheetType>;
3083
+ dataCfg: PropType<S2DataConfig_2>;
3084
+ themeCfg: PropType<ThemeCfg_2>;
3085
+ showPagination: {
3086
+ type: PropType<boolean | {
3087
+ onShowSizeChange?: (pageSize: number) => void;
3088
+ onChange?: (current: number) => void;
3089
+ }>;
3090
+ default: boolean | {
3091
+ onShowSizeChange?: (pageSize: number) => void;
3092
+ onChange?: (current: number) => void;
3093
+ };
3094
+ };
3095
+ loading: BooleanConstructor;
3096
+ partDrillDown: ObjectConstructor;
3097
+ header: ObjectConstructor;
3098
+ options: {
3099
+ type: PropType<S2Options_2<string | Element>>;
3100
+ default: S2Options_2<string | Element>;
3101
+ };
3102
+ adaptive: {
3103
+ type: PropType<Adaptive>;
3104
+ default: Adaptive;
3105
+ };
3106
+ onSpreadsheet: PropType<(container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<string | Element>) => SpreadSheet_2>;
3107
+ onGetSpreadSheet: PropType<(spreadsheet: SpreadSheet_2) => void>;
3108
+ }>> & {
3109
+ onSheetUpdate?: (params: S2RenderOptions_2) => any;
3110
+ onRowCellHover?: (data: TargetCellInfo_2) => any;
3111
+ onRowCellClick?: (data: TargetCellInfo_2) => any;
3112
+ onRowCellDoubleClick?: (data: TargetCellInfo_2) => any;
3113
+ onRowCellContextMenu?: (data: TargetCellInfo_2) => any;
3114
+ onRowCellMouseDown?: (data: TargetCellInfo_2) => any;
3115
+ onRowCellMouseUp?: (data: TargetCellInfo_2) => any;
3116
+ onRowCellMouseMove?: (data: TargetCellInfo_2) => any;
3117
+ onRowCellCollapseTreeRows?: (params: {
3118
+ id: number;
3119
+ isCollapsed: boolean;
3120
+ node: Node_2_2;
3121
+ }) => any;
3122
+ onColCellHover?: (data: TargetCellInfo_2) => any;
3123
+ onColCellClick?: (data: TargetCellInfo_2) => any;
3124
+ onColCellDoubleClick?: (data: TargetCellInfo_2) => any;
3125
+ onColCellContextMenu?: (data: TargetCellInfo_2) => any;
3126
+ onColCellMouseDown?: (data: TargetCellInfo_2) => any;
3127
+ onColCellMouseUp?: (data: TargetCellInfo_2) => any;
3128
+ onColCellMouseMove?: (data: TargetCellInfo_2) => any;
3129
+ onDataCellHover?: (data: TargetCellInfo_2) => any;
3130
+ onDataCellClick?: (data: TargetCellInfo_2) => any;
3131
+ onDataCellDoubleClick?: (data: TargetCellInfo_2) => any;
3132
+ onDataCellContextMenu?: (data: TargetCellInfo_2) => any;
3133
+ onDataCellMouseDown?: (data: TargetCellInfo_2) => any;
3134
+ onDataCellMouseUp?: (data: TargetCellInfo_2) => any;
3135
+ onDataCellMouseMove?: (data: TargetCellInfo_2) => any;
3136
+ onDataCellTrendIconClick?: (meta: ViewMeta_2) => any;
3137
+ onDataCellBrushSelection?: (brushRangeDataCells: DataCell_2[]) => any;
3138
+ onDataCellSelectMove?: (metas: CellMeta_2[]) => any;
3139
+ onCornerCellHover?: (data: TargetCellInfo_2) => any;
3140
+ onCornerCellClick?: (data: TargetCellInfo_2) => any;
3141
+ onCornerCellDoubleClick?: (data: TargetCellInfo_2) => any;
3142
+ onCornerCellContextMenu?: (data: TargetCellInfo_2) => any;
3143
+ onCornerCellMouseDown?: (data: TargetCellInfo_2) => any;
3144
+ onCornerCellMouseUp?: (data: TargetCellInfo_2) => any;
3145
+ onCornerCellMouseMove?: (data: TargetCellInfo_2) => any;
3146
+ onMergedCellsHover?: (data: TargetCellInfo_2) => any;
3147
+ onMergedCellsClick?: (data: TargetCellInfo_2) => any;
3148
+ onMergedCellsDoubleClick?: (data: TargetCellInfo_2) => any;
3149
+ onMergedCellsContextMenu?: (data: TargetCellInfo_2) => any;
3150
+ onMergedCellsMouseDown?: (data: TargetCellInfo_2) => any;
3151
+ onMergedCellsMouseUp?: (data: TargetCellInfo_2) => any;
3152
+ onMergedCellsMouseMove?: (data: TargetCellInfo_2) => any;
3153
+ onRangeSort?: (params: SortParams_2) => any;
3154
+ onRangeSorted?: (event: default_2) => any;
3155
+ onRangeFilter?: (data: {
3156
+ filterKey: string;
3157
+ filteredValues: string[];
3158
+ }) => any;
3159
+ onRangeFiltered?: (data: DataType_2[]) => any;
3160
+ onLayoutAfterHeaderLayout?: (layoutResult: LayoutResult_2) => any;
3161
+ onLayoutPagination?: (data: {
3162
+ pageSize: number;
3163
+ pageCount: number;
3164
+ total: number;
3165
+ current: number;
3166
+ }) => any;
3167
+ onLayoutCellScroll?: (position: CellScrollPosition_2) => any;
3168
+ onLayoutAfterCollapseRows?: (data: CollapsedRowsType_2) => any;
3169
+ onCollapseRowsAll?: (hierarchyCollapse: boolean) => any;
3170
+ onLayoutColsExpanded?: (node: Node_2_2) => any;
3171
+ onLayoutColsHidden?: (data: {
3172
+ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
3173
+ hiddenColumnsDetail: HiddenColumnsInfo_2[];
3174
+ }) => any;
3175
+ onBeforeRender?: () => any;
3176
+ onAfterRender?: () => any;
3177
+ onDestroy?: () => any;
3178
+ onLayoutResize?: (params: ResizeParams_2) => any;
3179
+ onLayoutResizeSeriesWidth?: (params: ResizeParams_2) => any;
3180
+ onLayoutResizeRowWidth?: (params: ResizeParams_2) => any;
3181
+ onLayoutResizeRowHeight?: (params: ResizeParams_2) => any;
3182
+ onLayoutResizeColWidth?: (params: ResizeParams_2) => any;
3183
+ onLayoutResizeColHeight?: (params: ResizeParams_2) => any;
3184
+ onLayoutResizeTreeWidth?: (params: ResizeParams_2) => any;
3185
+ onLayoutResizeMouseDown?: (data: {
3186
+ event: Partial<MouseEvent>;
3187
+ resizeInfo?: ResizeInfo_2;
3188
+ }) => any;
3189
+ onLayoutResizeMouseUp?: (data: {
3190
+ event: Partial<MouseEvent>;
3191
+ resizeInfo?: ResizeInfo_2;
3192
+ }) => any;
3193
+ onLayoutResizeMouseMove?: (data: {
3194
+ event: Partial<MouseEvent>;
3195
+ resizeInfo?: ResizeInfo_2;
3196
+ }) => any;
3197
+ onKeyBoardDown?: (event: KeyboardEvent) => any;
3198
+ onKeyBoardUp?: (event: KeyboardEvent) => any;
3199
+ onCopied?: (copyData: string) => any;
3200
+ onActionIconHover?: (event: default_2) => any;
3201
+ onActionIconClick?: (event: default_2) => any;
3202
+ onContextMenu?: (event: default_2) => any;
3203
+ onClick?: (event: default_2) => any;
3204
+ onDoubleClick?: (event: default_2) => any;
3205
+ onMouseHover?: (event: default_2) => any;
3206
+ onMouseUp?: (event: MouseEvent) => any;
3207
+ onSelected?: (cells: DataCell_2[]) => any;
3208
+ onReset?: (event: KeyboardEvent) => any;
3209
+ onLinkFieldJump?: (data: {
3210
+ key: string;
3211
+ record: Data_2;
3212
+ }) => any;
3213
+ onSpreadsheet?: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<string | Element>) => any;
3214
+ onGetSpreadSheet?: (spreadsheet: SpreadSheet_2) => any;
3215
+ }, {
3216
+ options: S2Options_2<string | Element>;
3217
+ loading: boolean;
3218
+ adaptive: boolean | {
3219
+ width?: boolean;
3220
+ height?: boolean;
3221
+ getContainer?: () => HTMLElement;
3222
+ };
3223
+ showPagination: boolean | {
3224
+ onShowSizeChange?: (pageSize: number) => void;
3225
+ onChange?: (current: number) => void;
3226
+ };
3227
+ }> | DefineComponent<GetInitProps<BaseSheetComponentProps<PartDrillDown, unknown>, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "getSpreadSheet" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapseTreeRows" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellTrendIconClick" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellScroll" | "onLayoutAfterCollapseRows" | "onCollapseRowsAll" | "onLayoutColsExpanded" | "onLayoutColsHidden" | "onBeforeRender" | "onAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconClick" | "onContextMenu" | "onClick" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onSelected" | "onReset" | "onLinkFieldJump">, {
3228
+ s2Ref: ShallowRef<SheetExpose>;
3229
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3230
+ spreadsheet: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<string | Element>) => SpreadSheet_2;
3231
+ getSpreadSheet: (spreadsheet: SpreadSheet_2) => void;
3232
+ sheetUpdate: SheetUpdateCallback;
3233
+ rowCellHover: (data: TargetCellInfo_2) => void;
3234
+ rowCellClick: (data: TargetCellInfo_2) => void;
3235
+ rowCellDoubleClick: (data: TargetCellInfo_2) => void;
3236
+ rowCellContextMenu: (data: TargetCellInfo_2) => void;
3237
+ rowCellMouseDown: (data: TargetCellInfo_2) => void;
3238
+ rowCellMouseUp: (data: TargetCellInfo_2) => void;
3239
+ rowCellMouseMove: (data: TargetCellInfo_2) => void;
3240
+ rowCellCollapseTreeRows: (params: {
3241
+ id: number;
3242
+ isCollapsed: boolean;
3243
+ node: Node_2_2;
3244
+ }) => void;
3245
+ colCellHover: (data: TargetCellInfo_2) => void;
3246
+ colCellClick: (data: TargetCellInfo_2) => void;
3247
+ colCellDoubleClick: (data: TargetCellInfo_2) => void;
3248
+ colCellContextMenu: (data: TargetCellInfo_2) => void;
3249
+ colCellMouseDown: (data: TargetCellInfo_2) => void;
3250
+ colCellMouseUp: (data: TargetCellInfo_2) => void;
3251
+ colCellMouseMove: (data: TargetCellInfo_2) => void;
3252
+ dataCellHover: (data: TargetCellInfo_2) => void;
3253
+ dataCellClick: (data: TargetCellInfo_2) => void;
3254
+ dataCellDoubleClick: (data: TargetCellInfo_2) => void;
3255
+ dataCellContextMenu: (data: TargetCellInfo_2) => void;
3256
+ dataCellMouseDown: (data: TargetCellInfo_2) => void;
3257
+ dataCellMouseUp: (data: TargetCellInfo_2) => void;
3258
+ dataCellMouseMove: (data: TargetCellInfo_2) => void;
3259
+ dataCellTrendIconClick: (meta: ViewMeta_2) => void;
3260
+ dataCellBrushSelection: (brushRangeDataCells: DataCell_2[]) => void;
3261
+ dataCellSelectMove: (metas: CellMeta_2[]) => void;
3262
+ cornerCellHover: (data: TargetCellInfo_2) => void;
3263
+ cornerCellClick: (data: TargetCellInfo_2) => void;
3264
+ cornerCellDoubleClick: (data: TargetCellInfo_2) => void;
3265
+ cornerCellContextMenu: (data: TargetCellInfo_2) => void;
3266
+ cornerCellMouseDown: (data: TargetCellInfo_2) => void;
3267
+ cornerCellMouseUp: (data: TargetCellInfo_2) => void;
3268
+ cornerCellMouseMove: (data: TargetCellInfo_2) => void;
3269
+ mergedCellsHover: (data: TargetCellInfo_2) => void;
3270
+ mergedCellsClick: (data: TargetCellInfo_2) => void;
3271
+ mergedCellsDoubleClick: (data: TargetCellInfo_2) => void;
3272
+ mergedCellsContextMenu: (data: TargetCellInfo_2) => void;
3273
+ mergedCellsMouseDown: (data: TargetCellInfo_2) => void;
3274
+ mergedCellsMouseUp: (data: TargetCellInfo_2) => void;
3275
+ mergedCellsMouseMove: (data: TargetCellInfo_2) => void;
3276
+ rangeSort: (params: SortParams_2) => void;
3277
+ rangeSorted: (event: default_2) => void;
3278
+ rangeFilter: (data: {
3279
+ filterKey: string;
3280
+ filteredValues: string[];
3281
+ }) => void;
3282
+ rangeFiltered: (data: DataType_2[]) => void;
3283
+ layoutAfterHeaderLayout: (layoutResult: LayoutResult_2) => void;
3284
+ layoutPagination: (data: {
3285
+ pageSize: number;
3286
+ pageCount: number;
3287
+ total: number;
3288
+ current: number;
3289
+ }) => void;
3290
+ layoutCellScroll: (position: CellScrollPosition_2) => void;
3291
+ layoutAfterCollapseRows: (data: CollapsedRowsType_2) => void;
3292
+ collapseRowsAll: (hierarchyCollapse: boolean) => void;
3293
+ layoutColsExpanded: (node: Node_2_2) => void;
3294
+ layoutColsHidden: (data: {
3295
+ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
3296
+ hiddenColumnsDetail: HiddenColumnsInfo_2[];
3297
+ }) => void;
3298
+ beforeRender: () => void;
3299
+ afterRender: () => void;
3300
+ destroy: () => void;
3301
+ layoutResize: (params: ResizeParams_2) => void;
3302
+ layoutResizeSeriesWidth: (params: ResizeParams_2) => void;
3303
+ layoutResizeRowWidth: (params: ResizeParams_2) => void;
3304
+ layoutResizeRowHeight: (params: ResizeParams_2) => void;
3305
+ layoutResizeColWidth: (params: ResizeParams_2) => void;
3306
+ layoutResizeColHeight: (params: ResizeParams_2) => void;
3307
+ layoutResizeTreeWidth: (params: ResizeParams_2) => void;
3308
+ layoutResizeMouseDown: (data: {
3309
+ event: Partial<MouseEvent>;
3310
+ resizeInfo?: ResizeInfo_2;
3311
+ }) => void;
3312
+ layoutResizeMouseUp: (data: {
3313
+ event: Partial<MouseEvent>;
3314
+ resizeInfo?: ResizeInfo_2;
3315
+ }) => void;
3316
+ layoutResizeMouseMove: (data: {
3317
+ event: Partial<MouseEvent>;
3318
+ resizeInfo?: ResizeInfo_2;
3319
+ }) => void;
3320
+ keyBoardDown: (event: KeyboardEvent) => void;
3321
+ keyBoardUp: (event: KeyboardEvent) => void;
3322
+ copied: (copyData: string) => void;
3323
+ actionIconHover: (event: default_2) => void;
3324
+ actionIconClick: (event: default_2) => void;
3325
+ contextMenu: (event: default_2) => void;
3326
+ click: (event: default_2) => void;
3327
+ doubleClick: (event: default_2) => void;
3328
+ mouseHover: (event: default_2) => void;
3329
+ mouseUp: (event: MouseEvent) => void;
3330
+ selected: (cells: DataCell_2[]) => void;
3331
+ reset: (event: KeyboardEvent) => void;
3332
+ linkFieldJump: (data: {
3333
+ key: string;
3334
+ record: Data_2;
3335
+ }) => void;
3336
+ }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<GetInitProps<BaseSheetComponentProps<PartDrillDown, unknown>, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "getSpreadSheet" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapseTreeRows" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellTrendIconClick" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellScroll" | "onLayoutAfterCollapseRows" | "onCollapseRowsAll" | "onLayoutColsExpanded" | "onLayoutColsHidden" | "onBeforeRender" | "onAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconClick" | "onContextMenu" | "onClick" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onSelected" | "onReset" | "onLinkFieldJump">>> & {
3337
+ onSheetUpdate?: (params: S2RenderOptions_2) => any;
3338
+ onRowCellHover?: (data: TargetCellInfo_2) => any;
3339
+ onRowCellClick?: (data: TargetCellInfo_2) => any;
3340
+ onRowCellDoubleClick?: (data: TargetCellInfo_2) => any;
3341
+ onRowCellContextMenu?: (data: TargetCellInfo_2) => any;
3342
+ onRowCellMouseDown?: (data: TargetCellInfo_2) => any;
3343
+ onRowCellMouseUp?: (data: TargetCellInfo_2) => any;
3344
+ onRowCellMouseMove?: (data: TargetCellInfo_2) => any;
3345
+ onRowCellCollapseTreeRows?: (params: {
3346
+ id: number;
3347
+ isCollapsed: boolean;
3348
+ node: Node_2_2;
3349
+ }) => any;
3350
+ onColCellHover?: (data: TargetCellInfo_2) => any;
3351
+ onColCellClick?: (data: TargetCellInfo_2) => any;
3352
+ onColCellDoubleClick?: (data: TargetCellInfo_2) => any;
3353
+ onColCellContextMenu?: (data: TargetCellInfo_2) => any;
3354
+ onColCellMouseDown?: (data: TargetCellInfo_2) => any;
3355
+ onColCellMouseUp?: (data: TargetCellInfo_2) => any;
3356
+ onColCellMouseMove?: (data: TargetCellInfo_2) => any;
3357
+ onDataCellHover?: (data: TargetCellInfo_2) => any;
3358
+ onDataCellClick?: (data: TargetCellInfo_2) => any;
3359
+ onDataCellDoubleClick?: (data: TargetCellInfo_2) => any;
3360
+ onDataCellContextMenu?: (data: TargetCellInfo_2) => any;
3361
+ onDataCellMouseDown?: (data: TargetCellInfo_2) => any;
3362
+ onDataCellMouseUp?: (data: TargetCellInfo_2) => any;
3363
+ onDataCellMouseMove?: (data: TargetCellInfo_2) => any;
3364
+ onDataCellTrendIconClick?: (meta: ViewMeta_2) => any;
3365
+ onDataCellBrushSelection?: (brushRangeDataCells: DataCell_2[]) => any;
3366
+ onDataCellSelectMove?: (metas: CellMeta_2[]) => any;
3367
+ onCornerCellHover?: (data: TargetCellInfo_2) => any;
3368
+ onCornerCellClick?: (data: TargetCellInfo_2) => any;
3369
+ onCornerCellDoubleClick?: (data: TargetCellInfo_2) => any;
3370
+ onCornerCellContextMenu?: (data: TargetCellInfo_2) => any;
3371
+ onCornerCellMouseDown?: (data: TargetCellInfo_2) => any;
3372
+ onCornerCellMouseUp?: (data: TargetCellInfo_2) => any;
3373
+ onCornerCellMouseMove?: (data: TargetCellInfo_2) => any;
3374
+ onMergedCellsHover?: (data: TargetCellInfo_2) => any;
3375
+ onMergedCellsClick?: (data: TargetCellInfo_2) => any;
3376
+ onMergedCellsDoubleClick?: (data: TargetCellInfo_2) => any;
3377
+ onMergedCellsContextMenu?: (data: TargetCellInfo_2) => any;
3378
+ onMergedCellsMouseDown?: (data: TargetCellInfo_2) => any;
3379
+ onMergedCellsMouseUp?: (data: TargetCellInfo_2) => any;
3380
+ onMergedCellsMouseMove?: (data: TargetCellInfo_2) => any;
3381
+ onRangeSort?: (params: SortParams_2) => any;
3382
+ onRangeSorted?: (event: default_2) => any;
3383
+ onRangeFilter?: (data: {
3384
+ filterKey: string;
3385
+ filteredValues: string[];
3386
+ }) => any;
3387
+ onRangeFiltered?: (data: DataType_2[]) => any;
3388
+ onLayoutAfterHeaderLayout?: (layoutResult: LayoutResult_2) => any;
3389
+ onLayoutPagination?: (data: {
3390
+ pageSize: number;
3391
+ pageCount: number;
3392
+ total: number;
3393
+ current: number;
3394
+ }) => any;
3395
+ onLayoutCellScroll?: (position: CellScrollPosition_2) => any;
3396
+ onLayoutAfterCollapseRows?: (data: CollapsedRowsType_2) => any;
3397
+ onCollapseRowsAll?: (hierarchyCollapse: boolean) => any;
3398
+ onLayoutColsExpanded?: (node: Node_2_2) => any;
3399
+ onLayoutColsHidden?: (data: {
3400
+ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
3401
+ hiddenColumnsDetail: HiddenColumnsInfo_2[];
3402
+ }) => any;
3403
+ onBeforeRender?: () => any;
3404
+ onAfterRender?: () => any;
3405
+ onDestroy?: () => any;
3406
+ onLayoutResize?: (params: ResizeParams_2) => any;
3407
+ onLayoutResizeSeriesWidth?: (params: ResizeParams_2) => any;
3408
+ onLayoutResizeRowWidth?: (params: ResizeParams_2) => any;
3409
+ onLayoutResizeRowHeight?: (params: ResizeParams_2) => any;
3410
+ onLayoutResizeColWidth?: (params: ResizeParams_2) => any;
3411
+ onLayoutResizeColHeight?: (params: ResizeParams_2) => any;
3412
+ onLayoutResizeTreeWidth?: (params: ResizeParams_2) => any;
3413
+ onLayoutResizeMouseDown?: (data: {
3414
+ event: Partial<MouseEvent>;
3415
+ resizeInfo?: ResizeInfo_2;
3416
+ }) => any;
3417
+ onLayoutResizeMouseUp?: (data: {
3418
+ event: Partial<MouseEvent>;
3419
+ resizeInfo?: ResizeInfo_2;
3420
+ }) => any;
3421
+ onLayoutResizeMouseMove?: (data: {
3422
+ event: Partial<MouseEvent>;
3423
+ resizeInfo?: ResizeInfo_2;
3424
+ }) => any;
3425
+ onKeyBoardDown?: (event: KeyboardEvent) => any;
3426
+ onKeyBoardUp?: (event: KeyboardEvent) => any;
3427
+ onCopied?: (copyData: string) => any;
3428
+ onActionIconHover?: (event: default_2) => any;
3429
+ onActionIconClick?: (event: default_2) => any;
3430
+ onContextMenu?: (event: default_2) => any;
3431
+ onClick?: (event: default_2) => any;
3432
+ onDoubleClick?: (event: default_2) => any;
3433
+ onMouseHover?: (event: default_2) => any;
3434
+ onMouseUp?: (event: MouseEvent) => any;
3435
+ onSelected?: (cells: DataCell_2[]) => any;
3436
+ onReset?: (event: KeyboardEvent) => any;
3437
+ onLinkFieldJump?: (data: {
3438
+ key: string;
3439
+ record: Data_2;
3440
+ }) => any;
3441
+ onSpreadsheet?: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<string | Element>) => any;
3442
+ onGetSpreadSheet?: (spreadsheet: SpreadSheet_2) => any;
3443
+ }, {}>>;
3444
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3445
+ spreadsheet: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<string | Element>) => SpreadSheet_2;
3446
+ getSpreadSheet: (spreadsheet: SpreadSheet_2) => void;
3447
+ sheetUpdate: SheetUpdateCallback;
3448
+ rowCellHover: (data: TargetCellInfo_2) => void;
3449
+ rowCellClick: (data: TargetCellInfo_2) => void;
3450
+ rowCellDoubleClick: (data: TargetCellInfo_2) => void;
3451
+ rowCellContextMenu: (data: TargetCellInfo_2) => void;
3452
+ rowCellMouseDown: (data: TargetCellInfo_2) => void;
3453
+ rowCellMouseUp: (data: TargetCellInfo_2) => void;
3454
+ rowCellMouseMove: (data: TargetCellInfo_2) => void;
3455
+ rowCellCollapseTreeRows: (params: {
3456
+ id: number;
3457
+ isCollapsed: boolean;
3458
+ node: Node_2_2;
3459
+ }) => void;
3460
+ colCellHover: (data: TargetCellInfo_2) => void;
3461
+ colCellClick: (data: TargetCellInfo_2) => void;
3462
+ colCellDoubleClick: (data: TargetCellInfo_2) => void;
3463
+ colCellContextMenu: (data: TargetCellInfo_2) => void;
3464
+ colCellMouseDown: (data: TargetCellInfo_2) => void;
3465
+ colCellMouseUp: (data: TargetCellInfo_2) => void;
3466
+ colCellMouseMove: (data: TargetCellInfo_2) => void;
3467
+ dataCellHover: (data: TargetCellInfo_2) => void;
3468
+ dataCellClick: (data: TargetCellInfo_2) => void;
3469
+ dataCellDoubleClick: (data: TargetCellInfo_2) => void;
3470
+ dataCellContextMenu: (data: TargetCellInfo_2) => void;
3471
+ dataCellMouseDown: (data: TargetCellInfo_2) => void;
3472
+ dataCellMouseUp: (data: TargetCellInfo_2) => void;
3473
+ dataCellMouseMove: (data: TargetCellInfo_2) => void;
3474
+ dataCellTrendIconClick: (meta: ViewMeta_2) => void;
3475
+ dataCellBrushSelection: (brushRangeDataCells: DataCell_2[]) => void;
3476
+ dataCellSelectMove: (metas: CellMeta_2[]) => void;
3477
+ cornerCellHover: (data: TargetCellInfo_2) => void;
3478
+ cornerCellClick: (data: TargetCellInfo_2) => void;
3479
+ cornerCellDoubleClick: (data: TargetCellInfo_2) => void;
3480
+ cornerCellContextMenu: (data: TargetCellInfo_2) => void;
3481
+ cornerCellMouseDown: (data: TargetCellInfo_2) => void;
3482
+ cornerCellMouseUp: (data: TargetCellInfo_2) => void;
3483
+ cornerCellMouseMove: (data: TargetCellInfo_2) => void;
3484
+ mergedCellsHover: (data: TargetCellInfo_2) => void;
3485
+ mergedCellsClick: (data: TargetCellInfo_2) => void;
3486
+ mergedCellsDoubleClick: (data: TargetCellInfo_2) => void;
3487
+ mergedCellsContextMenu: (data: TargetCellInfo_2) => void;
3488
+ mergedCellsMouseDown: (data: TargetCellInfo_2) => void;
3489
+ mergedCellsMouseUp: (data: TargetCellInfo_2) => void;
3490
+ mergedCellsMouseMove: (data: TargetCellInfo_2) => void;
3491
+ rangeSort: (params: SortParams_2) => void;
3492
+ rangeSorted: (event: default_2) => void;
3493
+ rangeFilter: (data: {
3494
+ filterKey: string;
3495
+ filteredValues: string[];
3496
+ }) => void;
3497
+ rangeFiltered: (data: DataType_2[]) => void;
3498
+ layoutAfterHeaderLayout: (layoutResult: LayoutResult_2) => void;
3499
+ layoutPagination: (data: {
3500
+ pageSize: number;
3501
+ pageCount: number;
3502
+ total: number;
3503
+ current: number;
3504
+ }) => void;
3505
+ layoutCellScroll: (position: CellScrollPosition_2) => void;
3506
+ layoutAfterCollapseRows: (data: CollapsedRowsType_2) => void;
3507
+ collapseRowsAll: (hierarchyCollapse: boolean) => void;
3508
+ layoutColsExpanded: (node: Node_2_2) => void;
3509
+ layoutColsHidden: (data: {
3510
+ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
3511
+ hiddenColumnsDetail: HiddenColumnsInfo_2[];
3512
+ }) => void;
3513
+ beforeRender: () => void;
3514
+ afterRender: () => void;
3515
+ destroy: () => void;
3516
+ layoutResize: (params: ResizeParams_2) => void;
3517
+ layoutResizeSeriesWidth: (params: ResizeParams_2) => void;
3518
+ layoutResizeRowWidth: (params: ResizeParams_2) => void;
3519
+ layoutResizeRowHeight: (params: ResizeParams_2) => void;
3520
+ layoutResizeColWidth: (params: ResizeParams_2) => void;
3521
+ layoutResizeColHeight: (params: ResizeParams_2) => void;
3522
+ layoutResizeTreeWidth: (params: ResizeParams_2) => void;
3523
+ layoutResizeMouseDown: (data: {
3524
+ event: Partial<MouseEvent>;
3525
+ resizeInfo?: ResizeInfo_2;
3526
+ }) => void;
3527
+ layoutResizeMouseUp: (data: {
3528
+ event: Partial<MouseEvent>;
3529
+ resizeInfo?: ResizeInfo_2;
3530
+ }) => void;
3531
+ layoutResizeMouseMove: (data: {
3532
+ event: Partial<MouseEvent>;
3533
+ resizeInfo?: ResizeInfo_2;
3534
+ }) => void;
3535
+ keyBoardDown: (event: KeyboardEvent) => void;
3536
+ keyBoardUp: (event: KeyboardEvent) => void;
3537
+ copied: (copyData: string) => void;
3538
+ actionIconHover: (event: default_2) => void;
3539
+ actionIconClick: (event: default_2) => void;
3540
+ contextMenu: (event: default_2) => void;
3541
+ click: (event: default_2) => void;
3542
+ doubleClick: (event: default_2) => void;
3543
+ mouseHover: (event: default_2) => void;
3544
+ mouseUp: (event: MouseEvent) => void;
3545
+ selected: (cells: DataCell_2[]) => void;
3546
+ reset: (event: KeyboardEvent) => void;
3547
+ linkFieldJump: (data: {
3548
+ key: string;
3549
+ record: Data_2;
3550
+ }) => void;
3551
+ }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<GetInitProps<BaseSheetComponentProps<PartDrillDown, unknown>, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "getSpreadSheet" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapseTreeRows" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellTrendIconClick" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellScroll" | "onLayoutAfterCollapseRows" | "onCollapseRowsAll" | "onLayoutColsExpanded" | "onLayoutColsHidden" | "onBeforeRender" | "onAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconClick" | "onContextMenu" | "onClick" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onSelected" | "onReset" | "onLinkFieldJump">>> & {
3552
+ onSheetUpdate?: (params: S2RenderOptions_2) => any;
3553
+ onRowCellHover?: (data: TargetCellInfo_2) => any;
3554
+ onRowCellClick?: (data: TargetCellInfo_2) => any;
3555
+ onRowCellDoubleClick?: (data: TargetCellInfo_2) => any;
3556
+ onRowCellContextMenu?: (data: TargetCellInfo_2) => any;
3557
+ onRowCellMouseDown?: (data: TargetCellInfo_2) => any;
3558
+ onRowCellMouseUp?: (data: TargetCellInfo_2) => any;
3559
+ onRowCellMouseMove?: (data: TargetCellInfo_2) => any;
3560
+ onRowCellCollapseTreeRows?: (params: {
3561
+ id: number;
3562
+ isCollapsed: boolean;
3563
+ node: Node_2_2;
3564
+ }) => any;
3565
+ onColCellHover?: (data: TargetCellInfo_2) => any;
3566
+ onColCellClick?: (data: TargetCellInfo_2) => any;
3567
+ onColCellDoubleClick?: (data: TargetCellInfo_2) => any;
3568
+ onColCellContextMenu?: (data: TargetCellInfo_2) => any;
3569
+ onColCellMouseDown?: (data: TargetCellInfo_2) => any;
3570
+ onColCellMouseUp?: (data: TargetCellInfo_2) => any;
3571
+ onColCellMouseMove?: (data: TargetCellInfo_2) => any;
3572
+ onDataCellHover?: (data: TargetCellInfo_2) => any;
3573
+ onDataCellClick?: (data: TargetCellInfo_2) => any;
3574
+ onDataCellDoubleClick?: (data: TargetCellInfo_2) => any;
3575
+ onDataCellContextMenu?: (data: TargetCellInfo_2) => any;
3576
+ onDataCellMouseDown?: (data: TargetCellInfo_2) => any;
3577
+ onDataCellMouseUp?: (data: TargetCellInfo_2) => any;
3578
+ onDataCellMouseMove?: (data: TargetCellInfo_2) => any;
3579
+ onDataCellTrendIconClick?: (meta: ViewMeta_2) => any;
3580
+ onDataCellBrushSelection?: (brushRangeDataCells: DataCell_2[]) => any;
3581
+ onDataCellSelectMove?: (metas: CellMeta_2[]) => any;
3582
+ onCornerCellHover?: (data: TargetCellInfo_2) => any;
3583
+ onCornerCellClick?: (data: TargetCellInfo_2) => any;
3584
+ onCornerCellDoubleClick?: (data: TargetCellInfo_2) => any;
3585
+ onCornerCellContextMenu?: (data: TargetCellInfo_2) => any;
3586
+ onCornerCellMouseDown?: (data: TargetCellInfo_2) => any;
3587
+ onCornerCellMouseUp?: (data: TargetCellInfo_2) => any;
3588
+ onCornerCellMouseMove?: (data: TargetCellInfo_2) => any;
3589
+ onMergedCellsHover?: (data: TargetCellInfo_2) => any;
3590
+ onMergedCellsClick?: (data: TargetCellInfo_2) => any;
3591
+ onMergedCellsDoubleClick?: (data: TargetCellInfo_2) => any;
3592
+ onMergedCellsContextMenu?: (data: TargetCellInfo_2) => any;
3593
+ onMergedCellsMouseDown?: (data: TargetCellInfo_2) => any;
3594
+ onMergedCellsMouseUp?: (data: TargetCellInfo_2) => any;
3595
+ onMergedCellsMouseMove?: (data: TargetCellInfo_2) => any;
3596
+ onRangeSort?: (params: SortParams_2) => any;
3597
+ onRangeSorted?: (event: default_2) => any;
3598
+ onRangeFilter?: (data: {
3599
+ filterKey: string;
3600
+ filteredValues: string[];
3601
+ }) => any;
3602
+ onRangeFiltered?: (data: DataType_2[]) => any;
3603
+ onLayoutAfterHeaderLayout?: (layoutResult: LayoutResult_2) => any;
3604
+ onLayoutPagination?: (data: {
3605
+ pageSize: number;
3606
+ pageCount: number;
3607
+ total: number;
3608
+ current: number;
3609
+ }) => any;
3610
+ onLayoutCellScroll?: (position: CellScrollPosition_2) => any;
3611
+ onLayoutAfterCollapseRows?: (data: CollapsedRowsType_2) => any;
3612
+ onCollapseRowsAll?: (hierarchyCollapse: boolean) => any;
3613
+ onLayoutColsExpanded?: (node: Node_2_2) => any;
3614
+ onLayoutColsHidden?: (data: {
3615
+ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
3616
+ hiddenColumnsDetail: HiddenColumnsInfo_2[];
3617
+ }) => any;
3618
+ onBeforeRender?: () => any;
3619
+ onAfterRender?: () => any;
3620
+ onDestroy?: () => any;
3621
+ onLayoutResize?: (params: ResizeParams_2) => any;
3622
+ onLayoutResizeSeriesWidth?: (params: ResizeParams_2) => any;
3623
+ onLayoutResizeRowWidth?: (params: ResizeParams_2) => any;
3624
+ onLayoutResizeRowHeight?: (params: ResizeParams_2) => any;
3625
+ onLayoutResizeColWidth?: (params: ResizeParams_2) => any;
3626
+ onLayoutResizeColHeight?: (params: ResizeParams_2) => any;
3627
+ onLayoutResizeTreeWidth?: (params: ResizeParams_2) => any;
3628
+ onLayoutResizeMouseDown?: (data: {
3629
+ event: Partial<MouseEvent>;
3630
+ resizeInfo?: ResizeInfo_2;
3631
+ }) => any;
3632
+ onLayoutResizeMouseUp?: (data: {
3633
+ event: Partial<MouseEvent>;
3634
+ resizeInfo?: ResizeInfo_2;
3635
+ }) => any;
3636
+ onLayoutResizeMouseMove?: (data: {
3637
+ event: Partial<MouseEvent>;
3638
+ resizeInfo?: ResizeInfo_2;
3639
+ }) => any;
3640
+ onKeyBoardDown?: (event: KeyboardEvent) => any;
3641
+ onKeyBoardUp?: (event: KeyboardEvent) => any;
3642
+ onCopied?: (copyData: string) => any;
3643
+ onActionIconHover?: (event: default_2) => any;
3644
+ onActionIconClick?: (event: default_2) => any;
3645
+ onContextMenu?: (event: default_2) => any;
3646
+ onClick?: (event: default_2) => any;
3647
+ onDoubleClick?: (event: default_2) => any;
3648
+ onMouseHover?: (event: default_2) => any;
3649
+ onMouseUp?: (event: MouseEvent) => any;
3650
+ onSelected?: (cells: DataCell_2[]) => any;
3651
+ onReset?: (event: KeyboardEvent) => any;
3652
+ onLinkFieldJump?: (data: {
3653
+ key: string;
3654
+ record: Data_2;
3655
+ }) => any;
3656
+ onSpreadsheet?: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<string | Element>) => any;
3657
+ onGetSpreadSheet?: (spreadsheet: SpreadSheet_2) => any;
3658
+ }, {}>;
3659
+
3660
+ export declare interface SheetExpose {
3661
+ instance: SpreadSheet | undefined;
3662
+ }
3663
+
3664
+ declare type SheetType = 'pivot' | 'table' | 'gridAnalysis' | 'strategy';
3665
+
3666
+ /** render callback */
3667
+ declare type SheetUpdateCallback = (params: S2RenderOptions) => S2RenderOptions;
3668
+
3669
+ declare type SimpleDataItem = string | number;
3670
+
3671
+ declare interface Sort {
3672
+ /** 字段id,业务中一般是displayId */
3673
+ sortFieldId: string;
3674
+ sortMethod?: SortMethod;
3675
+ /** 自定义排序 */
3676
+ sortBy?: string[];
3677
+ /** 按照数值字段排序 */
3678
+ sortByMeasure?: string;
3679
+ /** 筛选条件,缩小排序范围 */
3680
+ query?: Record<string, any>;
3681
+ /** 组内排序用来显示icon */
3682
+ type?: string;
3683
+ }
3684
+
3685
+ declare type SortedHandler = (rangeData: Data_2[]) => any;
3686
+
3687
+ declare interface SortFuncParam extends Sort {
3688
+ data: Array<string | Record<string, any>>;
3689
+ }
3690
+
3691
+ declare type SortMethod = 'ASC' | 'DESC' | 'asc' | 'desc';
3692
+
3693
+ declare interface SortParam extends Sort {
3694
+ /** 自定义func */
3695
+ sortFunc?: (v: SortFuncParam) => Array<string | Record<string, any>>;
3696
+ }
3697
+
3698
+ declare type SortParams_2 = SortParam[];
3699
+
3700
+ declare interface SplitLine {
3701
+ horizontalBorderColor?: string;
3702
+ horizontalBorderColorOpacity?: number;
3703
+ horizontalBorderWidth?: number;
3704
+ verticalBorderColor?: string;
3705
+ verticalBorderColorOpacity?: number;
3706
+ verticalBorderWidth?: number;
3707
+ showShadow?: boolean;
3708
+ shadowWidth?: number;
3709
+ shadowColors?: {
3710
+ left: string;
3711
+ right: string;
3712
+ };
3713
+ }
3714
+
3715
+ declare abstract class SpreadSheet_2 extends EE {
3716
+ theme: S2Theme;
3717
+ store: Store;
3718
+ dataCfg: S2DataConfig_2;
3719
+ options: S2Options_2;
3720
+ /**
3721
+ * processed data structure, include {@link Fields}, {@link Meta}
3722
+ * {@link Data}, {@link SortParams}
3723
+ */
3724
+ dataSet: BaseDataSet_2;
3725
+ /**
3726
+ * Facet: determine how to render headers/cell
3727
+ */
3728
+ facet: BaseFacet;
3729
+ tooltip: BaseTooltip;
3730
+ container: Canvas;
3731
+ backgroundGroup: IGroup;
3732
+ panelGroup: IGroup;
3733
+ panelScrollGroup: PanelScrollGroup;
3734
+ frozenRowGroup: FrozenGroup_2;
3735
+ frozenColGroup: FrozenGroup_2;
3736
+ frozenTrailingRowGroup: FrozenGroup_2;
3737
+ frozenTrailingColGroup: FrozenGroup_2;
3738
+ frozenTopGroup: FrozenGroup_2;
3739
+ frozenBottomGroup: FrozenGroup_2;
3740
+ foregroundGroup: IGroup;
3741
+ interaction: RootInteraction;
3742
+ hdAdapter: HdAdapter;
3743
+ private untypedOn;
3744
+ private untypedEmit;
3745
+ on: <K extends keyof EmitterType>(event: K, listener: EmitterType[K]) => this;
3746
+ emit: <K extends keyof EmitterType>(event: K, ...args: Parameters<EmitterType[K]>) => boolean;
3747
+ constructor(dom: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2);
3748
+ private setOverscrollBehavior;
3749
+ private restoreOverscrollBehavior;
3750
+ private setDebug;
3751
+ private initTheme;
3752
+ private getMountContainer;
3753
+ private initHdAdapter;
3754
+ private initInteraction;
3755
+ private initTooltip;
3756
+ private renderTooltip;
3757
+ protected abstract bindEvents(): void;
3758
+ abstract getDataSet(options: S2Options_2): BaseDataSet_2;
3759
+ /**
3760
+ * Check if is pivot mode
3761
+ */
3762
+ abstract isPivotMode(): boolean;
3763
+ /**
3764
+ * tree type must be in strategy mode
3765
+ */
3766
+ abstract isHierarchyTreeType(): boolean;
3767
+ /**
3768
+ * Check whether scroll contains row header
3769
+ * For now contains row header in ListSheet mode by default
3770
+ */
3771
+ abstract isScrollContainsRowHeader(): boolean;
3772
+ /**
3773
+ * Scroll Freeze Row Header
3774
+ */
3775
+ abstract isFrozenRowHeader(): boolean;
3776
+ /**
3777
+ * Check if is pivot mode
3778
+ */
3779
+ abstract isTableMode(): boolean;
3780
+ /**
3781
+ * Check if the value is in the columns
3782
+ */
3783
+ abstract isValueInCols(): boolean;
3784
+ /**
3785
+ * 避免每次新增、变更dataSet和options时,生成SpreadSheetFacetCfg
3786
+ * 要多出定义匹配的问题,直接按需&部分拆分options/dataSet合并为facetCfg
3787
+ */
3788
+ protected abstract getFacetCfgFromDataSetAndOptions(): SpreadSheetFacetCfg;
3789
+ protected abstract buildFacet(): void;
3790
+ abstract clearDrillDownData(rowNodeId?: string, preventRender?: boolean): void;
3791
+ abstract handleGroupSort(event: Event_2, meta: Node_2_2): void;
3792
+ showTooltip<T = TooltipContentType>(showOptions: TooltipShowOptions<T>): void;
3793
+ showTooltipWithInfo(event: Event_2 | MouseEvent, data: TooltipData[], options?: TooltipOptions): void;
3794
+ hideTooltip(): void;
3795
+ destroyTooltip(): void;
3796
+ registerIcons(): void;
3797
+ /**
3798
+ * Update data config and keep pre-sort operations
3799
+ * Group sort params kept in {@see store} and
3800
+ * Priority: group sort > advanced sort
3801
+ * @param dataCfg
3802
+ */
3803
+ setDataCfg(dataCfg: S2DataConfig_2): void;
3804
+ setOptions(options: Partial<S2Options_2>): void;
3805
+ render(reloadData?: boolean, options?: S2RenderOptions_2): void;
3806
+ destroy(): void;
3807
+ /**
3808
+ * Update theme config, if the {@param type} is exists, re-use it,
3809
+ * otherwise create new one {@see theme}
3810
+ * @param type string
3811
+ * @param theme
3812
+ */
3813
+ setThemeCfg(themeCfg?: ThemeCfg_2): void;
3814
+ /**
3815
+ * Update pagination config which store in {@see options}
3816
+ * @param pagination
3817
+ */
3818
+ updatePagination(pagination: Pagination): void;
3819
+ /**
3820
+ * 获取当前表格实际内容高度
3821
+ */
3822
+ getContentHeight(): number;
3823
+ /**
3824
+ * @param width
3825
+ * @param height
3826
+ * @deprecated 该方法将会在2.0被移除, 请使用 changeSheetSize 代替
3827
+ */
3828
+ changeSize(width?: number, height?: number): void;
3829
+ /**
3830
+ * 修改表格画布大小,不用重新加载数据
3831
+ * @param width
3832
+ * @param height
3833
+ */
3834
+ changeSheetSize(width?: number, height?: number): void;
3835
+ /**
3836
+ * 获取 <canvas/> HTML元素
3837
+ */
3838
+ getCanvasElement(): HTMLCanvasElement;
3839
+ getLayoutWidthType(): LayoutWidthType;
3840
+ getRowNodes(level?: number): Node_2_2[];
3841
+ getRowLeafNodes(): Node_2_2[];
3842
+ /**
3843
+ * get columnNode in levels,
3844
+ * @param level -1 = get all
3845
+ */
3846
+ getColumnNodes(level?: number): Node_2_2[];
3847
+ getColumnLeafNodes(): Node_2_2[];
3848
+ /**
3849
+ * Update scroll's offset, the value can be undefined,
3850
+ * indicate not update current value
3851
+ * @param offsetConfig
3852
+ * default offsetX(horizontal scroll need animation)
3853
+ * but offsetY(vertical scroll don't need animation)
3854
+ */
3855
+ updateScrollOffset(offsetConfig: OffsetConfig): void;
3856
+ getTooltipDataItemMappingCallback(): MappingDataItemCallback;
3857
+ getCell<T extends S2CellType = S2CellType>(target: Event_2['target']): T;
3858
+ getCellType(target: Event_2['target']): CellTypes;
3859
+ /**
3860
+ * get total's config by dimension id
3861
+ * @param dimension unique dimension id
3862
+ */
3863
+ getTotalsConfig(dimension: string): Partial<Totals['row']>;
3864
+ /**
3865
+ * Create all related groups, contains:
3866
+ * 1. container -- base canvas group
3867
+ * 2. backgroundGroup
3868
+ * 3. panelGroup -- main facet group belongs to
3869
+ * 4. foregroundGroup
3870
+ * @param dom
3871
+ * @private
3872
+ */
3873
+ protected initGroups(dom: S2MountContainer_2): void;
3874
+ protected updateContainerStyle(): void;
3875
+ protected initPanelGroupChildren(): void;
3876
+ getInitColumnLeafNodes(): Node_2_2[];
3877
+ clearColumnLeafNodes(): void;
3878
+ private initHiddenColumnsDetail;
3879
+ private clearCanvasEvent;
3880
+ }
3881
+
3882
+ /**
3883
+ * Spreadsheet facet config
3884
+ */
3885
+ declare interface SpreadSheetFacetCfg extends Fields, S2BasicOptions, S2TableSheetOptions, Style {
3886
+ spreadsheet: SpreadSheet_2;
3887
+ dataSet: BaseDataSet_2;
3888
+ meta?: Meta[];
3889
+ }
3890
+
3891
+ declare type StateShapeLayer = 'interactiveBgShape' | 'interactiveBorderShape';
3892
+
3893
+ /**
3894
+ * Store something in {@link SpreadSheet} temporary along with it's lifecycle
3895
+ * All the keys need be declare in {@see StoreKey} first
3896
+ */
3897
+ declare class Store {
3898
+ private store;
3899
+ set<T extends keyof StoreKey>(key: T, value: StoreKey[T]): Map<keyof StoreKey, unknown>;
3900
+ get<T extends keyof StoreKey>(key: T, defaultValue?: StoreKey[T]): StoreKey[T];
3901
+ clear(): void;
3902
+ size(): number;
3903
+ }
3904
+
3905
+ /**
3906
+ * All stored keys need type define here
3907
+ */
3908
+ declare interface StoreKey {
3909
+ scrollX: number;
3910
+ scrollY: number;
3911
+ hRowScrollX: number;
3912
+ sortParam: SortParam;
3913
+ drillDownIdPathMap: Map<string, number[][]>;
3914
+ drillDownNode: Node_2_2;
3915
+ drillItemsNum: number;
3916
+ drillDownFieldInLevel: PartDrillDownFieldInLevel[];
3917
+ interactionStateInfo: InteractionStateInfo;
3918
+ originalDataCfg: S2DataConfig_2;
3919
+ panelBBox: BBox;
3920
+ activeResizeArea: Group;
3921
+ valueRanges: ValueRanges;
3922
+ initColumnLeafNodes: Node_2_2[];
3923
+ /**
3924
+ * 隐藏列详情
3925
+ * | a, b, [c,d 隐藏] [icon e ] , [f 隐藏], [icon g] |
3926
+ */
3927
+ hiddenColumnsDetail: HiddenColumnsInfo_2[];
3928
+ lastRenderedColumnFields: string[];
3929
+ resized: boolean;
3930
+ visibleActionIcons: GuiIcon[];
3931
+ lastClickedCell: S2CellType<ViewMeta_2>;
3932
+ initOverscrollBehavior: InteractionOptions['overscrollBehavior'];
3933
+ [key: string]: unknown;
3934
+ }
3935
+
3936
+ declare interface Style {
3937
+ layoutWidthType?: LayoutWidthType;
3938
+ showTreeLeafNodeAlignDot?: boolean;
3939
+ treeRowsWidth?: number;
3940
+ hierarchyCollapse?: boolean;
3941
+ collapsedRows?: Record<string, boolean>;
3942
+ collapsedCols?: Record<string, boolean>;
3943
+ cellCfg?: CellCfg;
3944
+ colCfg?: ColCfg;
3945
+ rowCfg?: RowCfg;
3946
+ device?: 'pc' | 'mobile';
3947
+ }
3948
+
3949
+ export declare const TableSheet: DefineComponent<GetInitProps<BaseSheetComponentProps<PartDrillDown, unknown>, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "getSpreadSheet" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapseTreeRows" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellTrendIconClick" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellScroll" | "onLayoutAfterCollapseRows" | "onCollapseRowsAll" | "onLayoutColsExpanded" | "onLayoutColsHidden" | "onBeforeRender" | "onAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconClick" | "onContextMenu" | "onClick" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onSelected" | "onReset" | "onLinkFieldJump">, {
3950
+ s2Ref: ShallowRef<SheetExpose>;
3951
+ }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
3952
+ spreadsheet: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<string | Element>) => SpreadSheet_2;
3953
+ getSpreadSheet: (spreadsheet: SpreadSheet_2) => void;
3954
+ sheetUpdate: SheetUpdateCallback;
3955
+ rowCellHover: (data: TargetCellInfo_2) => void;
3956
+ rowCellClick: (data: TargetCellInfo_2) => void;
3957
+ rowCellDoubleClick: (data: TargetCellInfo_2) => void;
3958
+ rowCellContextMenu: (data: TargetCellInfo_2) => void;
3959
+ rowCellMouseDown: (data: TargetCellInfo_2) => void;
3960
+ rowCellMouseUp: (data: TargetCellInfo_2) => void;
3961
+ rowCellMouseMove: (data: TargetCellInfo_2) => void;
3962
+ rowCellCollapseTreeRows: (params: {
3963
+ id: number;
3964
+ isCollapsed: boolean;
3965
+ node: Node_2_2;
3966
+ }) => void;
3967
+ colCellHover: (data: TargetCellInfo_2) => void;
3968
+ colCellClick: (data: TargetCellInfo_2) => void;
3969
+ colCellDoubleClick: (data: TargetCellInfo_2) => void;
3970
+ colCellContextMenu: (data: TargetCellInfo_2) => void;
3971
+ colCellMouseDown: (data: TargetCellInfo_2) => void;
3972
+ colCellMouseUp: (data: TargetCellInfo_2) => void;
3973
+ colCellMouseMove: (data: TargetCellInfo_2) => void;
3974
+ dataCellHover: (data: TargetCellInfo_2) => void;
3975
+ dataCellClick: (data: TargetCellInfo_2) => void;
3976
+ dataCellDoubleClick: (data: TargetCellInfo_2) => void;
3977
+ dataCellContextMenu: (data: TargetCellInfo_2) => void;
3978
+ dataCellMouseDown: (data: TargetCellInfo_2) => void;
3979
+ dataCellMouseUp: (data: TargetCellInfo_2) => void;
3980
+ dataCellMouseMove: (data: TargetCellInfo_2) => void;
3981
+ dataCellTrendIconClick: (meta: ViewMeta_2) => void;
3982
+ dataCellBrushSelection: (brushRangeDataCells: DataCell_2[]) => void;
3983
+ dataCellSelectMove: (metas: CellMeta_2[]) => void;
3984
+ cornerCellHover: (data: TargetCellInfo_2) => void;
3985
+ cornerCellClick: (data: TargetCellInfo_2) => void;
3986
+ cornerCellDoubleClick: (data: TargetCellInfo_2) => void;
3987
+ cornerCellContextMenu: (data: TargetCellInfo_2) => void;
3988
+ cornerCellMouseDown: (data: TargetCellInfo_2) => void;
3989
+ cornerCellMouseUp: (data: TargetCellInfo_2) => void;
3990
+ cornerCellMouseMove: (data: TargetCellInfo_2) => void;
3991
+ mergedCellsHover: (data: TargetCellInfo_2) => void;
3992
+ mergedCellsClick: (data: TargetCellInfo_2) => void;
3993
+ mergedCellsDoubleClick: (data: TargetCellInfo_2) => void;
3994
+ mergedCellsContextMenu: (data: TargetCellInfo_2) => void;
3995
+ mergedCellsMouseDown: (data: TargetCellInfo_2) => void;
3996
+ mergedCellsMouseUp: (data: TargetCellInfo_2) => void;
3997
+ mergedCellsMouseMove: (data: TargetCellInfo_2) => void;
3998
+ rangeSort: (params: SortParams_2) => void;
3999
+ rangeSorted: (event: default_2) => void;
4000
+ rangeFilter: (data: {
4001
+ filterKey: string;
4002
+ filteredValues: string[];
4003
+ }) => void;
4004
+ rangeFiltered: (data: DataType_2[]) => void;
4005
+ layoutAfterHeaderLayout: (layoutResult: LayoutResult_2) => void;
4006
+ layoutPagination: (data: {
4007
+ pageSize: number;
4008
+ pageCount: number;
4009
+ total: number;
4010
+ current: number;
4011
+ }) => void;
4012
+ layoutCellScroll: (position: CellScrollPosition_2) => void;
4013
+ layoutAfterCollapseRows: (data: CollapsedRowsType_2) => void;
4014
+ collapseRowsAll: (hierarchyCollapse: boolean) => void;
4015
+ layoutColsExpanded: (node: Node_2_2) => void;
4016
+ layoutColsHidden: (data: {
4017
+ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
4018
+ hiddenColumnsDetail: HiddenColumnsInfo_2[];
4019
+ }) => void;
4020
+ beforeRender: () => void;
4021
+ afterRender: () => void;
4022
+ destroy: () => void;
4023
+ layoutResize: (params: ResizeParams_2) => void;
4024
+ layoutResizeSeriesWidth: (params: ResizeParams_2) => void;
4025
+ layoutResizeRowWidth: (params: ResizeParams_2) => void;
4026
+ layoutResizeRowHeight: (params: ResizeParams_2) => void;
4027
+ layoutResizeColWidth: (params: ResizeParams_2) => void;
4028
+ layoutResizeColHeight: (params: ResizeParams_2) => void;
4029
+ layoutResizeTreeWidth: (params: ResizeParams_2) => void;
4030
+ layoutResizeMouseDown: (data: {
4031
+ event: Partial<MouseEvent>;
4032
+ resizeInfo?: ResizeInfo_2;
4033
+ }) => void;
4034
+ layoutResizeMouseUp: (data: {
4035
+ event: Partial<MouseEvent>;
4036
+ resizeInfo?: ResizeInfo_2;
4037
+ }) => void;
4038
+ layoutResizeMouseMove: (data: {
4039
+ event: Partial<MouseEvent>;
4040
+ resizeInfo?: ResizeInfo_2;
4041
+ }) => void;
4042
+ keyBoardDown: (event: KeyboardEvent) => void;
4043
+ keyBoardUp: (event: KeyboardEvent) => void;
4044
+ copied: (copyData: string) => void;
4045
+ actionIconHover: (event: default_2) => void;
4046
+ actionIconClick: (event: default_2) => void;
4047
+ contextMenu: (event: default_2) => void;
4048
+ click: (event: default_2) => void;
4049
+ doubleClick: (event: default_2) => void;
4050
+ mouseHover: (event: default_2) => void;
4051
+ mouseUp: (event: MouseEvent) => void;
4052
+ selected: (cells: DataCell_2[]) => void;
4053
+ reset: (event: KeyboardEvent) => void;
4054
+ linkFieldJump: (data: {
4055
+ key: string;
4056
+ record: Data_2;
4057
+ }) => void;
4058
+ }, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<GetInitProps<BaseSheetComponentProps<PartDrillDown, unknown>, "sheetType" | "spreadsheet" | "options" | "loading" | "partDrillDown" | "adaptive" | "showPagination" | "themeCfg" | "header" | "getSpreadSheet" | "onSheetUpdate" | "onRowCellHover" | "onRowCellClick" | "onRowCellDoubleClick" | "onRowCellContextMenu" | "onRowCellMouseDown" | "onRowCellMouseUp" | "onRowCellMouseMove" | "onRowCellCollapseTreeRows" | "onColCellHover" | "onColCellClick" | "onColCellDoubleClick" | "onColCellContextMenu" | "onColCellMouseDown" | "onColCellMouseUp" | "onColCellMouseMove" | "onDataCellHover" | "onDataCellClick" | "onDataCellDoubleClick" | "onDataCellContextMenu" | "onDataCellMouseDown" | "onDataCellMouseUp" | "onDataCellMouseMove" | "onDataCellTrendIconClick" | "onDataCellBrushSelection" | "onDataCellSelectMove" | "onCornerCellHover" | "onCornerCellClick" | "onCornerCellDoubleClick" | "onCornerCellContextMenu" | "onCornerCellMouseDown" | "onCornerCellMouseUp" | "onCornerCellMouseMove" | "onMergedCellsHover" | "onMergedCellsClick" | "onMergedCellsDoubleClick" | "onMergedCellsContextMenu" | "onMergedCellsMouseDown" | "onMergedCellsMouseUp" | "onMergedCellsMouseMove" | "onRangeSort" | "onRangeSorted" | "onRangeFilter" | "onRangeFiltered" | "onLayoutAfterHeaderLayout" | "onLayoutPagination" | "onLayoutCellScroll" | "onLayoutAfterCollapseRows" | "onCollapseRowsAll" | "onLayoutColsExpanded" | "onLayoutColsHidden" | "onBeforeRender" | "onAfterRender" | "onDestroy" | "onLayoutResize" | "onLayoutResizeSeriesWidth" | "onLayoutResizeRowWidth" | "onLayoutResizeRowHeight" | "onLayoutResizeColWidth" | "onLayoutResizeColHeight" | "onLayoutResizeTreeWidth" | "onLayoutResizeMouseDown" | "onLayoutResizeMouseUp" | "onLayoutResizeMouseMove" | "onKeyBoardDown" | "onKeyBoardUp" | "onCopied" | "onActionIconHover" | "onActionIconClick" | "onContextMenu" | "onClick" | "onDoubleClick" | "onMouseHover" | "onMouseUp" | "onSelected" | "onReset" | "onLinkFieldJump">>> & {
4059
+ onSheetUpdate?: (params: S2RenderOptions_2) => any;
4060
+ onRowCellHover?: (data: TargetCellInfo_2) => any;
4061
+ onRowCellClick?: (data: TargetCellInfo_2) => any;
4062
+ onRowCellDoubleClick?: (data: TargetCellInfo_2) => any;
4063
+ onRowCellContextMenu?: (data: TargetCellInfo_2) => any;
4064
+ onRowCellMouseDown?: (data: TargetCellInfo_2) => any;
4065
+ onRowCellMouseUp?: (data: TargetCellInfo_2) => any;
4066
+ onRowCellMouseMove?: (data: TargetCellInfo_2) => any;
4067
+ onRowCellCollapseTreeRows?: (params: {
4068
+ id: number;
4069
+ isCollapsed: boolean;
4070
+ node: Node_2_2;
4071
+ }) => any;
4072
+ onColCellHover?: (data: TargetCellInfo_2) => any;
4073
+ onColCellClick?: (data: TargetCellInfo_2) => any;
4074
+ onColCellDoubleClick?: (data: TargetCellInfo_2) => any;
4075
+ onColCellContextMenu?: (data: TargetCellInfo_2) => any;
4076
+ onColCellMouseDown?: (data: TargetCellInfo_2) => any;
4077
+ onColCellMouseUp?: (data: TargetCellInfo_2) => any;
4078
+ onColCellMouseMove?: (data: TargetCellInfo_2) => any;
4079
+ onDataCellHover?: (data: TargetCellInfo_2) => any;
4080
+ onDataCellClick?: (data: TargetCellInfo_2) => any;
4081
+ onDataCellDoubleClick?: (data: TargetCellInfo_2) => any;
4082
+ onDataCellContextMenu?: (data: TargetCellInfo_2) => any;
4083
+ onDataCellMouseDown?: (data: TargetCellInfo_2) => any;
4084
+ onDataCellMouseUp?: (data: TargetCellInfo_2) => any;
4085
+ onDataCellMouseMove?: (data: TargetCellInfo_2) => any;
4086
+ onDataCellTrendIconClick?: (meta: ViewMeta_2) => any;
4087
+ onDataCellBrushSelection?: (brushRangeDataCells: DataCell_2[]) => any;
4088
+ onDataCellSelectMove?: (metas: CellMeta_2[]) => any;
4089
+ onCornerCellHover?: (data: TargetCellInfo_2) => any;
4090
+ onCornerCellClick?: (data: TargetCellInfo_2) => any;
4091
+ onCornerCellDoubleClick?: (data: TargetCellInfo_2) => any;
4092
+ onCornerCellContextMenu?: (data: TargetCellInfo_2) => any;
4093
+ onCornerCellMouseDown?: (data: TargetCellInfo_2) => any;
4094
+ onCornerCellMouseUp?: (data: TargetCellInfo_2) => any;
4095
+ onCornerCellMouseMove?: (data: TargetCellInfo_2) => any;
4096
+ onMergedCellsHover?: (data: TargetCellInfo_2) => any;
4097
+ onMergedCellsClick?: (data: TargetCellInfo_2) => any;
4098
+ onMergedCellsDoubleClick?: (data: TargetCellInfo_2) => any;
4099
+ onMergedCellsContextMenu?: (data: TargetCellInfo_2) => any;
4100
+ onMergedCellsMouseDown?: (data: TargetCellInfo_2) => any;
4101
+ onMergedCellsMouseUp?: (data: TargetCellInfo_2) => any;
4102
+ onMergedCellsMouseMove?: (data: TargetCellInfo_2) => any;
4103
+ onRangeSort?: (params: SortParams_2) => any;
4104
+ onRangeSorted?: (event: default_2) => any;
4105
+ onRangeFilter?: (data: {
4106
+ filterKey: string;
4107
+ filteredValues: string[];
4108
+ }) => any;
4109
+ onRangeFiltered?: (data: DataType_2[]) => any;
4110
+ onLayoutAfterHeaderLayout?: (layoutResult: LayoutResult_2) => any;
4111
+ onLayoutPagination?: (data: {
4112
+ pageSize: number;
4113
+ pageCount: number;
4114
+ total: number;
4115
+ current: number;
4116
+ }) => any;
4117
+ onLayoutCellScroll?: (position: CellScrollPosition_2) => any;
4118
+ onLayoutAfterCollapseRows?: (data: CollapsedRowsType_2) => any;
4119
+ onCollapseRowsAll?: (hierarchyCollapse: boolean) => any;
4120
+ onLayoutColsExpanded?: (node: Node_2_2) => any;
4121
+ onLayoutColsHidden?: (data: {
4122
+ currentHiddenColumnsInfo: HiddenColumnsInfo_2;
4123
+ hiddenColumnsDetail: HiddenColumnsInfo_2[];
4124
+ }) => any;
4125
+ onBeforeRender?: () => any;
4126
+ onAfterRender?: () => any;
4127
+ onDestroy?: () => any;
4128
+ onLayoutResize?: (params: ResizeParams_2) => any;
4129
+ onLayoutResizeSeriesWidth?: (params: ResizeParams_2) => any;
4130
+ onLayoutResizeRowWidth?: (params: ResizeParams_2) => any;
4131
+ onLayoutResizeRowHeight?: (params: ResizeParams_2) => any;
4132
+ onLayoutResizeColWidth?: (params: ResizeParams_2) => any;
4133
+ onLayoutResizeColHeight?: (params: ResizeParams_2) => any;
4134
+ onLayoutResizeTreeWidth?: (params: ResizeParams_2) => any;
4135
+ onLayoutResizeMouseDown?: (data: {
4136
+ event: Partial<MouseEvent>;
4137
+ resizeInfo?: ResizeInfo_2;
4138
+ }) => any;
4139
+ onLayoutResizeMouseUp?: (data: {
4140
+ event: Partial<MouseEvent>;
4141
+ resizeInfo?: ResizeInfo_2;
4142
+ }) => any;
4143
+ onLayoutResizeMouseMove?: (data: {
4144
+ event: Partial<MouseEvent>;
4145
+ resizeInfo?: ResizeInfo_2;
4146
+ }) => any;
4147
+ onKeyBoardDown?: (event: KeyboardEvent) => any;
4148
+ onKeyBoardUp?: (event: KeyboardEvent) => any;
4149
+ onCopied?: (copyData: string) => any;
4150
+ onActionIconHover?: (event: default_2) => any;
4151
+ onActionIconClick?: (event: default_2) => any;
4152
+ onContextMenu?: (event: default_2) => any;
4153
+ onClick?: (event: default_2) => any;
4154
+ onDoubleClick?: (event: default_2) => any;
4155
+ onMouseHover?: (event: default_2) => any;
4156
+ onMouseUp?: (event: MouseEvent) => any;
4157
+ onSelected?: (cells: DataCell_2[]) => any;
4158
+ onReset?: (event: KeyboardEvent) => any;
4159
+ onLinkFieldJump?: (data: {
4160
+ key: string;
4161
+ record: Data_2;
4162
+ }) => any;
4163
+ onSpreadsheet?: (container: S2MountContainer_2, dataCfg: S2DataConfig_2, options: S2Options_2<string | Element>) => any;
4164
+ onGetSpreadSheet?: (spreadsheet: SpreadSheet_2) => any;
4165
+ }, {}>;
4166
+
4167
+ declare interface TargetCellInfo_2 {
4168
+ target: S2CellType;
4169
+ event: Event_2;
4170
+ viewMeta: Node_2_2;
4171
+ }
4172
+
4173
+ declare type TextAlign = 'left' | 'center' | 'right';
4174
+
4175
+ declare interface TextAlignCfg {
4176
+ textAlign?: TextAlign;
4177
+ textBaseline?: TextBaseline;
4178
+ }
4179
+
4180
+ declare type TextBaseline = 'top' | 'middle' | 'bottom';
4181
+
4182
+ declare interface TextTheme extends TextAlignCfg {
4183
+ fontFamily?: string;
4184
+ fontSize?: number;
4185
+ fontWeight?: number | 'normal' | 'bold' | 'bolder' | 'lighter';
4186
+ fill?: string;
4187
+ linkTextFill?: string;
4188
+ opacity?: number;
4189
+ }
4190
+
4191
+ declare interface ThemeCfg_2 {
4192
+ theme?: S2Theme;
4193
+ palette?: Pick<Palette, 'basicColors' | 'semanticColors' | 'others'>;
4194
+ name?: ThemeName;
4195
+ }
4196
+
4197
+ declare type ThemeName = 'default' | 'colorful' | 'gray';
4198
+
4199
+ declare interface Tooltip<T = TooltipContentType> extends BaseTooltipConfig<T> {
4200
+ row?: BaseTooltipConfig<T>;
4201
+ col?: BaseTooltipConfig<T>;
4202
+ corner?: BaseTooltipConfig<T>;
4203
+ data?: BaseTooltipConfig<T>;
4204
+ }
4205
+
4206
+ declare type TooltipAutoAdjustBoundary = 'body' | 'container';
4207
+
4208
+ declare type TooltipContentType = Element | string;
4209
+
4210
+ declare type TooltipData = {
4211
+ summaries?: TooltipSummaryOptions[];
4212
+ details?: ListItem[];
4213
+ headInfo?: TooltipHeadInfo;
4214
+ name?: string;
4215
+ tips?: string;
4216
+ infos?: string;
4217
+ interpretation?: TooltipInterpretationOptions;
4218
+ colIndex?: number;
4219
+ rowIndex?: number;
4220
+ };
4221
+
4222
+ declare type TooltipDataItem = Record<string, any>;
4223
+
4224
+ declare type TooltipHeadInfo = {
4225
+ rows: ListItem[];
4226
+ cols: ListItem[];
4227
+ };
4228
+
4229
+ declare type TooltipInterpretationOptions = {
4230
+ name: string;
4231
+ icon?: Element | string;
4232
+ text?: string;
4233
+ render?: Element | string;
4234
+ };
4235
+
4236
+ declare interface TooltipOperation extends TooltipOperatorOptions {
4237
+ hiddenColumns?: boolean;
4238
+ trend?: boolean;
4239
+ sort?: boolean;
4240
+ tableSort?: boolean;
4241
+ }
4242
+
4243
+ declare interface TooltipOperatorMenu {
4244
+ key: string;
4245
+ icon?: Element | string;
4246
+ text?: string;
4247
+ onClick?: (cell: S2CellType) => void;
4248
+ visible?: boolean | ((cell: S2CellType) => boolean);
4249
+ children?: TooltipOperatorMenu[];
4250
+ }
4251
+
4252
+ declare interface TooltipOperatorOptions {
4253
+ onClick?: (...args: unknown[]) => void;
4254
+ menus?: TooltipOperatorMenu[];
4255
+ }
4256
+
4257
+ declare interface TooltipOptions {
4258
+ hideSummary?: boolean;
4259
+ operator?: TooltipOperatorOptions;
4260
+ enterable?: boolean;
4261
+ isTotals?: boolean;
4262
+ showSingleTips?: boolean;
4263
+ onlyMenu?: boolean;
4264
+ enableFormat?: boolean;
4265
+ }
4266
+
4267
+ declare interface TooltipPosition {
4268
+ x: number;
4269
+ y: number;
4270
+ }
4271
+
4272
+ declare interface TooltipPositionInfo {
4273
+ position: TooltipPosition;
4274
+ event: Event_2 | MouseEvent;
4275
+ }
4276
+
4277
+ declare type TooltipShowOptions<T = TooltipContentType> = {
4278
+ position: TooltipPosition;
4279
+ data?: TooltipData;
4280
+ cellInfos?: TooltipDataItem[];
4281
+ options?: TooltipOptions;
4282
+ content?: ((cell: S2CellType, defaultTooltipShowOptions: TooltipShowOptions<T>) => T) | T;
4283
+ event?: Event_2 | MouseEvent;
4284
+ };
4285
+
4286
+ declare interface TooltipSummaryOptions {
4287
+ name: string;
4288
+ value: number | string;
4289
+ selectedData: TooltipDataItem[];
4290
+ }
4291
+
4292
+ declare interface Total {
4293
+ /** 是否显示总计 */
4294
+ showGrandTotals: boolean;
4295
+ /** 是否显示小计 */
4296
+ showSubTotals: boolean | {
4297
+ /** 当子维度个数 <=1 时,仍然展示小计:默认 true */
4298
+ always: boolean;
4299
+ };
4300
+ calcTotals?: CalcTotals;
4301
+ calcSubTotals?: CalcTotals;
4302
+ /** 小计的汇总维度 */
4303
+ subTotalsDimensions: string[];
4304
+ /** 总计布局位置,默认是下或右 */
4305
+ reverseLayout: boolean;
4306
+ /** 小计布局位置,默认下或者右 */
4307
+ reverseSubLayout: boolean;
4308
+ label?: string;
4309
+ subLabel?: string;
4310
+ }
4311
+
4312
+ /**
4313
+ * tableau的英文是这个,这里有个绕的概念
4314
+ * 如,某行维度需要展示小计,实际上是将对应的一列数据进行聚合,所以文案上显示的应该是“展示列小计”
4315
+ * 但是内部配置我倾向于仍然按照字段所属维度区,即配置的row,代表的是行维度而不是行小计
4316
+ */
4317
+ declare interface Totals {
4318
+ row?: Partial<Total>;
4319
+ col?: Partial<Total>;
4320
+ }
4321
+
4322
+ export declare const useExpose: (expose: (exposed?: Record<string, any>) => void) => ShallowRef<SheetExpose>;
4323
+
4324
+ declare interface ValueRange {
4325
+ minValue?: number;
4326
+ maxValue?: number;
4327
+ }
4328
+
4329
+ declare type ValueRanges = Record<string, ValueRange>;
4330
+
4331
+ declare interface ViewCellHeights {
4332
+ getCellOffsetY: (index: number) => number;
4333
+ getTotalHeight: () => number;
4334
+ getTotalLength: () => number;
4335
+ getIndexRange: (minHeight: number, maxHeight: number) => {
4336
+ start: number;
4337
+ end: number;
4338
+ };
4339
+ }
4340
+
4341
+ declare interface ViewMeta_2 {
4342
+ spreadsheet: SpreadSheet_2;
4343
+ id: string;
4344
+ x: number;
4345
+ y: number;
4346
+ width: number;
4347
+ height: number;
4348
+ data: Record<string, any>;
4349
+ rowIndex: number;
4350
+ colIndex: number;
4351
+ valueField: string;
4352
+ fieldValue: DataItem;
4353
+ isTotals?: boolean;
4354
+ rowQuery?: Record<string, any>;
4355
+ colQuery?: Record<string, any>;
4356
+ rowId?: string;
4357
+ colId?: string;
4358
+ field?: string;
4359
+ isFrozenCorner?: boolean;
4360
+ label?: string;
4361
+ value?: string | number;
4362
+ query?: Record<string, any>;
4363
+ [key: string]: unknown;
4364
+ }
4365
+
4366
+ export { }