@visactor/vtable 0.17.5-alpha.0 → 0.17.5-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 (53) hide show
  1. package/cjs/ListTable.js +6 -8
  2. package/cjs/ListTable.js.map +1 -1
  3. package/cjs/PivotTable.d.ts +1 -0
  4. package/cjs/PivotTable.js +3 -0
  5. package/cjs/PivotTable.js.map +1 -1
  6. package/cjs/core/BaseTable.js +1 -1
  7. package/cjs/core/BaseTable.js.map +1 -1
  8. package/cjs/edit/edit-manager.js +4 -6
  9. package/cjs/edit/edit-manager.js.map +1 -1
  10. package/cjs/index.d.ts +1 -1
  11. package/cjs/index.js +1 -1
  12. package/cjs/index.js.map +1 -1
  13. package/cjs/layout/pivot-header-layout.d.ts +1 -4
  14. package/cjs/layout/pivot-header-layout.js +1 -1
  15. package/cjs/layout/pivot-header-layout.js.map +1 -1
  16. package/cjs/layout/simple-header-layout.d.ts +0 -1
  17. package/cjs/layout/simple-header-layout.js +0 -4
  18. package/cjs/layout/simple-header-layout.js.map +1 -1
  19. package/cjs/scenegraph/group-creater/cell-helper.js +1 -2
  20. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  21. package/cjs/state/cell-move/adjust-header.js.map +1 -1
  22. package/cjs/ts-types/list-table/define/basic-define.d.ts +0 -3
  23. package/cjs/ts-types/list-table/define/basic-define.js.map +1 -1
  24. package/cjs/ts-types/table-engine.d.ts +0 -3
  25. package/cjs/ts-types/table-engine.js.map +1 -1
  26. package/dist/vtable.js +23 -38
  27. package/dist/vtable.min.js +2 -2
  28. package/es/ListTable.js +6 -8
  29. package/es/ListTable.js.map +1 -1
  30. package/es/PivotTable.d.ts +1 -0
  31. package/es/PivotTable.js +3 -0
  32. package/es/PivotTable.js.map +1 -1
  33. package/es/core/BaseTable.js +1 -1
  34. package/es/core/BaseTable.js.map +1 -1
  35. package/es/edit/edit-manager.js +4 -6
  36. package/es/edit/edit-manager.js.map +1 -1
  37. package/es/index.d.ts +1 -1
  38. package/es/index.js +1 -1
  39. package/es/index.js.map +1 -1
  40. package/es/layout/pivot-header-layout.d.ts +1 -4
  41. package/es/layout/pivot-header-layout.js +1 -1
  42. package/es/layout/pivot-header-layout.js.map +1 -1
  43. package/es/layout/simple-header-layout.d.ts +0 -1
  44. package/es/layout/simple-header-layout.js +0 -4
  45. package/es/layout/simple-header-layout.js.map +1 -1
  46. package/es/scenegraph/group-creater/cell-helper.js +1 -1
  47. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  48. package/es/state/cell-move/adjust-header.js.map +1 -1
  49. package/es/ts-types/list-table/define/basic-define.d.ts +0 -3
  50. package/es/ts-types/list-table/define/basic-define.js.map +1 -1
  51. package/es/ts-types/table-engine.d.ts +0 -3
  52. package/es/ts-types/table-engine.js.map +1 -1
  53. package/package.json +4 -4
@@ -26,21 +26,19 @@ export class EditManeger {
26
26
  }
27
27
  startEditCell(col, row) {
28
28
  var _a;
29
- if (this.table.isPivotTable() && this.table.isHeader(col, row)) return;
29
+ if (this.table.isHeader(col, row)) return;
30
30
  const editor = this.table.getEditor(col, row);
31
31
  if (editor) {
32
32
  if (this.table.getCustomRender(col, row) || this.table.getCustomLayout(col, row)) return;
33
- if (!this.table.isHeader(col, row)) {
34
- const range = this.table.getCellRange(col, row);
35
- if (range.start.col !== range.end.col || range.start.row !== range.end.row) return;
36
- }
33
+ const range = this.table.getCellRange(col, row);
34
+ if (range.start.col !== range.end.col || range.start.row !== range.end.row) return;
37
35
  null === (_a = editor.bindSuccessCallback) || void 0 === _a || _a.call(editor, (() => {
38
36
  this.completeEdit();
39
37
  })), this.editingEditor = editor, this.editCell = {
40
38
  col: col,
41
39
  row: row
42
40
  };
43
- const dataValue = this.table.getCellOriginValue(col, row), rect = this.table.getCellRangeRelativeRect(this.table.getCellRange(col, row));
41
+ const dataValue = this.table.getCellOriginValue(col, row), rect = this.table.getCellRelativeRect(col, row);
44
42
  editor.beginEditing(this.table.getElement(), {
45
43
  rect: {
46
44
  left: rect.left,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/edit/edit-manager.ts"],"names":[],"mappings":"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","file":"edit-manager.js","sourcesContent":["import type { IEditor } from '@visactor/vtable-editors';\nimport { TABLE_EVENT_TYPE } from '../core/TABLE_EVENT_TYPE';\nimport type { BaseTableAPI } from '../ts-types/base-table';\nimport type { ListTableAPI, ListTableConstructorOptions } from '../ts-types';\nimport { getCellEventArgsSet } from '../event/util';\n\nexport class EditManeger {\n table: BaseTableAPI;\n editingEditor: IEditor;\n editCell: { col: number; row: number };\n constructor(table: BaseTableAPI) {\n this.table = table;\n this.bindEvent();\n }\n bindEvent() {\n const handler = this.table.internalProps.handler;\n this.table.on(TABLE_EVENT_TYPE.DBLCLICK_CELL, e => {\n if (\n !(this.table.options as ListTableConstructorOptions).editCellTrigger || //默认为双击\n (this.table.options as ListTableConstructorOptions).editCellTrigger === 'doubleclick'\n ) {\n const { col, row } = e;\n\n //取双击自动列宽逻辑\n const eventArgsSet = getCellEventArgsSet(e.federatedEvent);\n const resizeCol = this.table.scenegraph.getResizeColAt(\n eventArgsSet.abstractPos.x,\n eventArgsSet.abstractPos.y,\n eventArgsSet.eventArgs?.targetCell\n );\n if (this.table._canResizeColumn(resizeCol.col, resizeCol.row) && resizeCol.col >= 0) {\n // 判断同双击自动列宽的时间监听的DBLCLICK_CELL\n // 如果是双击自动列宽 则编辑不开启\n return;\n }\n this.startEditCell(col, row);\n }\n });\n\n this.table.on(TABLE_EVENT_TYPE.CLICK_CELL, e => {\n if ((this.table.options as ListTableConstructorOptions).editCellTrigger === 'click') {\n const { col, row } = e;\n this.startEditCell(col, row);\n }\n });\n\n handler.on(this.table.getElement(), 'wheel', (e: WheelEvent) => {\n this.completeEdit();\n });\n }\n startEditCell(col: number, row: number) {\n //透视表的表头不允许编辑\n if (this.table.isPivotTable() && this.table.isHeader(col, row)) {\n return;\n }\n const editor = (this.table as ListTableAPI).getEditor(col, row);\n if (editor) {\n //自定义内容单元格不允许编辑\n if (this.table.getCustomRender(col, row) || this.table.getCustomLayout(col, row)) {\n console.warn(\"VTable Warn: cell has config custom render or layout, can't be edited\");\n return;\n }\n if (!this.table.isHeader(col, row)) {\n const range = this.table.getCellRange(col, row);\n const isMerge = range.start.col !== range.end.col || range.start.row !== range.end.row;\n if (isMerge) {\n console.warn(\"VTable Warn: this is merge cell, can't be edited\");\n return;\n }\n }\n editor.bindSuccessCallback?.(() => {\n this.completeEdit();\n });\n this.editingEditor = editor;\n this.editCell = { col, row };\n const dataValue = this.table.getCellOriginValue(col, row);\n const rect = this.table.getCellRangeRelativeRect(this.table.getCellRange(col, row));\n editor.beginEditing(\n this.table.getElement(),\n { rect: { left: rect.left, top: rect.top, width: rect.width, height: rect.height } },\n dataValue\n );\n }\n }\n /** 如果是事件触发调用该接口 请传入原始事件对象 将判断事件对象是否在编辑器本身上面 来处理是否结束编辑 */\n completeEdit(e?: any) {\n const target = e?.target;\n if (this.editingEditor && (!target || (target && !this.editingEditor.targetIsOnEditor(target as HTMLElement)))) {\n const changedValue = this.editingEditor.getValue();\n (this.table as ListTableAPI).changeCellValue(this.editCell.col, this.editCell.row, changedValue);\n this.editingEditor.exit();\n this.editingEditor = null;\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/edit/edit-manager.ts"],"names":[],"mappings":"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","file":"edit-manager.js","sourcesContent":["import type { IEditor } from '@visactor/vtable-editors';\nimport { TABLE_EVENT_TYPE } from '../core/TABLE_EVENT_TYPE';\nimport type { BaseTableAPI } from '../ts-types/base-table';\nimport type { ListTableAPI, ListTableConstructorOptions } from '../ts-types';\nimport { getCellEventArgsSet } from '../event/util';\n\nexport class EditManeger {\n table: BaseTableAPI;\n editingEditor: IEditor;\n editCell: { col: number; row: number };\n constructor(table: BaseTableAPI) {\n this.table = table;\n this.bindEvent();\n }\n bindEvent() {\n const handler = this.table.internalProps.handler;\n this.table.on(TABLE_EVENT_TYPE.DBLCLICK_CELL, e => {\n if (\n !(this.table.options as ListTableConstructorOptions).editCellTrigger || //默认为双击\n (this.table.options as ListTableConstructorOptions).editCellTrigger === 'doubleclick'\n ) {\n const { col, row } = e;\n\n //取双击自动列宽逻辑\n const eventArgsSet = getCellEventArgsSet(e.federatedEvent);\n const resizeCol = this.table.scenegraph.getResizeColAt(\n eventArgsSet.abstractPos.x,\n eventArgsSet.abstractPos.y,\n eventArgsSet.eventArgs?.targetCell\n );\n if (this.table._canResizeColumn(resizeCol.col, resizeCol.row) && resizeCol.col >= 0) {\n // 判断同双击自动列宽的时间监听的DBLCLICK_CELL\n // 如果是双击自动列宽 则编辑不开启\n return;\n }\n this.startEditCell(col, row);\n }\n });\n\n this.table.on(TABLE_EVENT_TYPE.CLICK_CELL, e => {\n if ((this.table.options as ListTableConstructorOptions).editCellTrigger === 'click') {\n const { col, row } = e;\n this.startEditCell(col, row);\n }\n });\n\n handler.on(this.table.getElement(), 'wheel', (e: WheelEvent) => {\n this.completeEdit();\n });\n }\n startEditCell(col: number, row: number) {\n //表头不允许编辑\n if (this.table.isHeader(col, row)) {\n return;\n }\n const editor = (this.table as ListTableAPI).getEditor(col, row);\n if (editor) {\n //自定义内容单元格不允许编辑\n if (this.table.getCustomRender(col, row) || this.table.getCustomLayout(col, row)) {\n console.warn(\"VTable Warn: cell has config custom render or layout, can't be edited\");\n return;\n }\n const range = this.table.getCellRange(col, row);\n const isMerge = range.start.col !== range.end.col || range.start.row !== range.end.row;\n if (isMerge) {\n console.warn(\"VTable Warn: this is merge cell, can't be edited\");\n return;\n }\n editor.bindSuccessCallback?.(() => {\n this.completeEdit();\n });\n this.editingEditor = editor;\n this.editCell = { col, row };\n const dataValue = this.table.getCellOriginValue(col, row);\n const rect = this.table.getCellRelativeRect(col, row);\n editor.beginEditing(\n this.table.getElement(),\n { rect: { left: rect.left, top: rect.top, width: rect.width, height: rect.height } },\n dataValue\n );\n }\n }\n /** 如果是事件触发调用该接口 请传入原始事件对象 将判断事件对象是否在编辑器本身上面 来处理是否结束编辑 */\n completeEdit(e?: any) {\n const target = e?.target;\n if (this.editingEditor && (!target || (target && !this.editingEditor.targetIsOnEditor(target as HTMLElement)))) {\n const changedValue = this.editingEditor.getValue();\n (this.table as ListTableAPI).changeCellValue(this.editCell.col, this.editCell.row, changedValue);\n this.editingEditor.exit();\n this.editingEditor = null;\n }\n }\n}\n"]}
package/es/index.d.ts CHANGED
@@ -15,7 +15,7 @@ import { updateCell } from './scenegraph/group-creater/cell-helper';
15
15
  import { renderChart } from './scenegraph/graphic/contributions/chart-render-helper';
16
16
  export { getDataCellPath } from './tools/get-data-path';
17
17
  export * from './render/jsx';
18
- export declare const version = "0.17.5-alpha.0";
18
+ export declare const version = "0.17.5-alpha.1";
19
19
  export { TYPES, core, ListTable, ListTableConstructorOptions, PivotTable, PivotTableConstructorOptions, PivotChartConstructorOptions, PivotChart, IHeaderTreeDefine, IDimension, IIndicator, ITitleDefine, ICornerDefine, ColumnsDefine, ColumnDefine, LinkColumnDefine, ChartColumnDefine, ImageColumnDefine, SparklineColumnDefine, ProgressbarColumnDefine, TextColumnDefine, GroupColumnDefine, TextAlignType, TextBaselineType, themes, data, MousePointerCellEvent, getIcons, clearGlobal, register, DataStatistics, CustomLayout, updateCell, renderChart, graphicUtil };
20
20
  declare function getIcons(): {
21
21
  [key: string]: TYPES.ColumnIconOption;
package/es/index.js CHANGED
@@ -30,7 +30,7 @@ export { getDataCellPath } from "./tools/get-data-path";
30
30
 
31
31
  export * from "./render/jsx";
32
32
 
33
- export const version = "0.17.5-alpha.0";
33
+ export const version = "0.17.5-alpha.1";
34
34
 
35
35
  export { TYPES, core, ListTable, PivotTable, PivotChart, themes, data, getIcons, clearGlobal, register, DataStatistics, CustomLayout, updateCell, renderChart, graphicUtil };
36
36
 
package/es/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,cAAc,MAAM,0BAA0B,CAAC;AAsB3D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,wDAAwD,CAAC;AAKrF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,cAAc,cAAc,CAAC;AAE7B,MAAM,CAAC,MAAM,OAAO,GAAG,gBAAgB,CAAC;AAIxC,OAAO,EAKL,KAAK,EACL,IAAI,EACJ,SAAS,EAET,UAAU,EAGV,UAAU,EAiBV,MAAM,EACN,IAAI,EAEJ,QAAQ,EACR,WAAW,EAEX,QAAQ,EAIR,cAAc,EACd,YAAY,EACZ,UAAU,EACV,WAAW,EACX,WAAW,EACZ,CAAC;AAGF,SAAS,QAAQ;IAGf,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC;AACrB,CAAC;AAED,SAAS,WAAW;IAClB,QAAQ,CAAC,QAAQ,EAAE,CAAC;AAGtB,CAAC;AACD,KAAK,CAAC,eAAe,CAAC","file":"index.js","sourcesContent":["/* eslint-disable sort-imports */\nimport { graphicUtil } from '@visactor/vrender';\n\nimport * as TYPES from './ts-types';\nimport * as core from './core';\nimport * as data from './data';\nimport * as icons from './icons';\nimport * as register from './register';\nimport * as themes from './themes';\nimport * as DataStatistics from './dataset/DataStatistics';\nimport type {\n ColumnDefine,\n ColumnsDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n ListTableConstructorOptions,\n PivotTableConstructorOptions,\n PivotChartConstructorOptions,\n IHeaderTreeDefine,\n IDimension,\n IIndicator,\n ITitleDefine,\n ICornerDefine,\n TextAlignType,\n TextBaselineType\n} from './ts-types';\nimport { ListTable } from './ListTable';\nimport { PivotTable } from './PivotTable';\nimport { PivotChart } from './PivotChart';\nimport type { MousePointerCellEvent } from './ts-types/events';\nimport * as CustomLayout from './render/layout';\n\nimport { updateCell } from './scenegraph/group-creater/cell-helper';\nimport { renderChart } from './scenegraph/graphic/contributions/chart-render-helper';\n\n// import { container, loadCanvasPicker } from '@visactor/vrender';\n// loadCanvasPicker(container);\n\nexport { getDataCellPath } from './tools/get-data-path';\nexport * from './render/jsx';\n\nexport const version = \"0.17.5-alpha.0\";\n/**\n * @namespace VTable\n */\nexport {\n /**\n * Types\n * @namespace VTable.TYPES\n */\n TYPES,\n core,\n ListTable,\n ListTableConstructorOptions,\n PivotTable,\n PivotTableConstructorOptions,\n PivotChartConstructorOptions,\n PivotChart,\n IHeaderTreeDefine,\n IDimension,\n IIndicator,\n ITitleDefine,\n ICornerDefine,\n ColumnsDefine,\n ColumnDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n TextAlignType,\n TextBaselineType,\n themes,\n data,\n MousePointerCellEvent,\n getIcons,\n clearGlobal,\n //plugin registers\n register,\n /**\n * 暂不推荐使用\n */\n DataStatistics,\n CustomLayout,\n updateCell,\n renderChart,\n graphicUtil\n};\n\n/** @private */\nfunction getIcons(): {\n [key: string]: TYPES.ColumnIconOption;\n} {\n return icons.get();\n}\n/** 清理内部的全局变量 如注册的icon theme等 以及共享的header column类实例 */\nfunction clearGlobal() {\n register.clearAll();\n // headers.type.clearGlobal();\n // columns.type.clearGlobal();\n}\nTYPES.AggregationType;\n"]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,cAAc,MAAM,0BAA0B,CAAC;AAsB3D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,wDAAwD,CAAC;AAKrF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,cAAc,cAAc,CAAC;AAE7B,MAAM,CAAC,MAAM,OAAO,GAAG,gBAAgB,CAAC;AAIxC,OAAO,EAKL,KAAK,EACL,IAAI,EACJ,SAAS,EAET,UAAU,EAGV,UAAU,EAiBV,MAAM,EACN,IAAI,EAEJ,QAAQ,EACR,WAAW,EAEX,QAAQ,EAIR,cAAc,EACd,YAAY,EACZ,UAAU,EACV,WAAW,EACX,WAAW,EACZ,CAAC;AAGF,SAAS,QAAQ;IAGf,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC;AACrB,CAAC;AAED,SAAS,WAAW;IAClB,QAAQ,CAAC,QAAQ,EAAE,CAAC;AAGtB,CAAC;AACD,KAAK,CAAC,eAAe,CAAC","file":"index.js","sourcesContent":["/* eslint-disable sort-imports */\nimport { graphicUtil } from '@visactor/vrender';\n\nimport * as TYPES from './ts-types';\nimport * as core from './core';\nimport * as data from './data';\nimport * as icons from './icons';\nimport * as register from './register';\nimport * as themes from './themes';\nimport * as DataStatistics from './dataset/DataStatistics';\nimport type {\n ColumnDefine,\n ColumnsDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n ListTableConstructorOptions,\n PivotTableConstructorOptions,\n PivotChartConstructorOptions,\n IHeaderTreeDefine,\n IDimension,\n IIndicator,\n ITitleDefine,\n ICornerDefine,\n TextAlignType,\n TextBaselineType\n} from './ts-types';\nimport { ListTable } from './ListTable';\nimport { PivotTable } from './PivotTable';\nimport { PivotChart } from './PivotChart';\nimport type { MousePointerCellEvent } from './ts-types/events';\nimport * as CustomLayout from './render/layout';\n\nimport { updateCell } from './scenegraph/group-creater/cell-helper';\nimport { renderChart } from './scenegraph/graphic/contributions/chart-render-helper';\n\n// import { container, loadCanvasPicker } from '@visactor/vrender';\n// loadCanvasPicker(container);\n\nexport { getDataCellPath } from './tools/get-data-path';\nexport * from './render/jsx';\n\nexport const version = \"0.17.5-alpha.1\";\n/**\n * @namespace VTable\n */\nexport {\n /**\n * Types\n * @namespace VTable.TYPES\n */\n TYPES,\n core,\n ListTable,\n ListTableConstructorOptions,\n PivotTable,\n PivotTableConstructorOptions,\n PivotChartConstructorOptions,\n PivotChart,\n IHeaderTreeDefine,\n IDimension,\n IIndicator,\n ITitleDefine,\n ICornerDefine,\n ColumnsDefine,\n ColumnDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n TextAlignType,\n TextBaselineType,\n themes,\n data,\n MousePointerCellEvent,\n getIcons,\n clearGlobal,\n //plugin registers\n register,\n /**\n * 暂不推荐使用\n */\n DataStatistics,\n CustomLayout,\n updateCell,\n renderChart,\n graphicUtil\n};\n\n/** @private */\nfunction getIcons(): {\n [key: string]: TYPES.ColumnIconOption;\n} {\n return icons.get();\n}\n/** 清理内部的全局变量 如注册的icon theme等 以及共享的header column类实例 */\nfunction clearGlobal() {\n register.clearAll();\n // headers.type.clearGlobal();\n // columns.type.clearGlobal();\n}\nTYPES.AggregationType;\n"]}
@@ -133,10 +133,7 @@ export declare class PivotHeaderLayoutMap implements LayoutMapAPI {
133
133
  getBodyIndexByCol(col: number): number;
134
134
  getRecordStartRowByRecordIndex(index: number): number;
135
135
  getRecordIndexByCell(col: number, row: number): number;
136
- getCellHeaderPathsWidthTreeNode(col: number, row: number): {
137
- readonly colHeaderPaths?: any[];
138
- readonly rowHeaderPaths?: any[];
139
- };
136
+ getCellHeaderPathsWidthTreeNode(col: number, row: number): IPivotTableCellHeaderPaths;
140
137
  getCellHeaderPaths(col: number, row: number): IPivotTableCellHeaderPaths;
141
138
  private getIndicatorInfoByIndicatorKey;
142
139
  private findFullCellIds;
@@ -680,7 +680,7 @@ export class PivotHeaderLayoutMap {
680
680
  const headerPathsWidthNode = this.getCellHeaderPathsWidthTreeNode(col, row), headerPaths = {
681
681
  colHeaderPaths: [],
682
682
  rowHeaderPaths: [],
683
- cellLocation: this.getCellLocation(col, row)
683
+ cellLocation: headerPathsWidthNode.cellLocation
684
684
  };
685
685
  return null === (_a = headerPathsWidthNode.colHeaderPaths) || void 0 === _a || _a.forEach((colHeader => {
686
686
  var _a, _b, _c;