@visactor/vtable 1.16.0-alpha.1 → 1.16.0

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/cjs/body-helper/body-helper.js +1 -1
  2. package/cjs/body-helper/style.js +1 -2
  3. package/cjs/core/BaseTable.js +3 -2
  4. package/cjs/core/BaseTable.js.map +1 -1
  5. package/cjs/dataset/dataset-pivot-table.js +1 -2
  6. package/cjs/dataset/flatDataToObject.js +2 -1
  7. package/cjs/event/media-click.js +21 -6
  8. package/cjs/event/media-click.js.map +1 -1
  9. package/cjs/index.d.ts +1 -1
  10. package/cjs/index.js +1 -1
  11. package/cjs/index.js.map +1 -1
  12. package/cjs/layout/index.js +1 -2
  13. package/cjs/layout/pivot-header-layout.js +35 -38
  14. package/cjs/layout/pivot-header-layout.js.map +1 -1
  15. package/cjs/layout/row-height-map.js +1 -1
  16. package/cjs/layout/simple-header-layout.js +2 -2
  17. package/cjs/layout/simple-header-layout.js.map +1 -1
  18. package/cjs/layout/tree-helper.js +1 -1
  19. package/cjs/plugins/custom-cell-style.js +1 -1
  20. package/cjs/plugins/icons.js +1 -1
  21. package/cjs/plugins/invert-highlight.js +1 -1
  22. package/cjs/plugins/list-tree-stick-cell.js +2 -1
  23. package/cjs/plugins/themes.js +1 -1
  24. package/cjs/scenegraph/group-creater/cell-helper.js +10 -2
  25. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  26. package/cjs/scenegraph/scenegraph.js +2 -7
  27. package/cjs/scenegraph/scenegraph.js.map +1 -1
  28. package/cjs/scenegraph/utils/text-icon-layout.js +1 -0
  29. package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -1
  30. package/cjs/scenegraph/utils/text-measure.js +6 -2
  31. package/cjs/scenegraph/utils/text-measure.js.map +1 -1
  32. package/cjs/state/checkbox/checkbox.js +1 -1
  33. package/cjs/state/checkbox/checkbox.js.map +1 -1
  34. package/cjs/ts-types/list-table/define/link-define.d.ts +4 -4
  35. package/cjs/ts-types/list-table/define/link-define.js.map +1 -1
  36. package/cjs/ts-types/style-define.d.ts +1 -1
  37. package/cjs/ts-types/style-define.js.map +1 -1
  38. package/cjs/vrender.js.map +1 -1
  39. package/dist/vtable.js +74 -48
  40. package/dist/vtable.min.js +2 -2
  41. package/es/body-helper/body-helper.js +1 -1
  42. package/es/body-helper/style.js +1 -2
  43. package/es/core/BaseTable.js +3 -2
  44. package/es/core/BaseTable.js.map +1 -1
  45. package/es/dataset/dataset-pivot-table.js +1 -2
  46. package/es/dataset/flatDataToObject.js +2 -1
  47. package/es/event/media-click.js +22 -5
  48. package/es/event/media-click.js.map +1 -1
  49. package/es/index.d.ts +1 -1
  50. package/es/index.js +1 -1
  51. package/es/index.js.map +1 -1
  52. package/es/layout/index.js +1 -2
  53. package/es/layout/pivot-header-layout.js +35 -38
  54. package/es/layout/pivot-header-layout.js.map +1 -1
  55. package/es/layout/row-height-map.js +1 -1
  56. package/es/layout/simple-header-layout.js +2 -2
  57. package/es/layout/simple-header-layout.js.map +1 -1
  58. package/es/layout/tree-helper.js +1 -1
  59. package/es/plugins/custom-cell-style.js +1 -1
  60. package/es/plugins/icons.js +1 -1
  61. package/es/plugins/invert-highlight.js +1 -1
  62. package/es/plugins/list-tree-stick-cell.js +2 -1
  63. package/es/plugins/themes.js +1 -1
  64. package/es/scenegraph/group-creater/cell-helper.js +10 -3
  65. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  66. package/es/scenegraph/scenegraph.js +1 -8
  67. package/es/scenegraph/scenegraph.js.map +1 -1
  68. package/es/scenegraph/utils/text-icon-layout.js +1 -0
  69. package/es/scenegraph/utils/text-icon-layout.js.map +1 -1
  70. package/es/scenegraph/utils/text-measure.js +7 -3
  71. package/es/scenegraph/utils/text-measure.js.map +1 -1
  72. package/es/state/checkbox/checkbox.js +2 -2
  73. package/es/state/checkbox/checkbox.js.map +1 -1
  74. package/es/ts-types/list-table/define/link-define.d.ts +4 -4
  75. package/es/ts-types/list-table/define/link-define.js.map +1 -1
  76. package/es/ts-types/style-define.d.ts +1 -1
  77. package/es/ts-types/style-define.js.map +1 -1
  78. package/es/vrender.js.map +1 -1
  79. package/package.json +5 -5
@@ -337,5 +337,4 @@ export class DatasetForPivotTable {
337
337
  }
338
338
  return tree.forEach((treeNode => getPath(treeNode, []))), result;
339
339
  }
340
- }
341
- //# sourceMappingURL=dataset-pivot-table.js.map
340
+ }
@@ -120,4 +120,5 @@ export class FlatDataToObjects {
120
120
  this.rowFlatKeys = {}, this.colFlatKeys = {}, this.tree = {}, this.processRecords();
121
121
  }
122
122
  }
123
- }
123
+ }
124
+ //# sourceMappingURL=flatDataToObject.js.map
@@ -6,6 +6,8 @@ import { Env } from "../tools/env";
6
6
 
7
7
  import { regUrl } from "../tools/global";
8
8
 
9
+ import { getOrApply } from "../tools/helper";
10
+
9
11
  export function bindMediaClick(table) {
10
12
  "browser" === Env.mode && table.on(TABLE_EVENT_TYPE.CLICK_CELL, (e => {
11
13
  const {col: col, row: row} = e;
@@ -14,12 +16,27 @@ export function bindMediaClick(table) {
14
16
  cellType = table.internalProps.layoutMap.isHeader(col, row) ? table.isPivotTable() ? table._getHeaderLayoutMap(col, row).headerType : table.getHeaderDefine(col, row).headerType : table.getBodyColumnType(col, row);
15
17
  const columnDefine = table.isHeader(col, row) ? table.getHeaderDefine(col, row) : table.getBodyColumnDefine(col, row), cellValue = table.getCellValue(col, row), cellOriginValue = table.getCellOriginValue(col, row);
16
18
  if ("link" === cellType) {
17
- if (!(!1 !== columnDefine.linkJump)) return;
18
- const templateLink = columnDefine.templateLink, linkDetect = !1 !== columnDefine.linkDetect;
19
- let url;
20
- if (templateLink) {
19
+ let linkJump = getOrApply(columnDefine.linkJump, {
20
+ col: col,
21
+ row: row,
22
+ table: table,
23
+ value: cellValue,
24
+ dataValue: cellOriginValue,
25
+ cellHeaderPaths: void 0
26
+ });
27
+ if (linkJump = !1 !== linkJump, !linkJump) return;
28
+ const templateLink = columnDefine.templateLink;
29
+ let url, linkDetect = getOrApply(columnDefine.linkDetect, {
30
+ col: col,
31
+ row: row,
32
+ table: table,
33
+ value: cellValue,
34
+ dataValue: cellOriginValue,
35
+ cellHeaderPaths: void 0
36
+ });
37
+ if (linkDetect = !1 !== linkDetect, templateLink) {
21
38
  const rowData = table.getCellOriginRecord(col, row);
22
- if (rowData.vtableMerge) return;
39
+ if (rowData && rowData.vtableMerge) return;
23
40
  const data = Object.assign({
24
41
  __value: cellValue,
25
42
  __dataValue: cellOriginValue
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/event/media-click.ts"],"names":[],"mappings":"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","file":"media-click.js","sourcesContent":["import { isFunction } from '@visactor/vutils';\nimport { TABLE_EVENT_TYPE } from '../core/TABLE_EVENT_TYPE';\nimport { Env } from '../tools/env';\nimport { regUrl } from '../tools/global';\nimport type { LinkColumnDefine, MousePointerCellEvent } from '../ts-types';\nimport type { BaseTableAPI, HeaderData } from '../ts-types/base-table';\nimport type { IImageColumnBodyDefine } from '../ts-types/list-table/define/image-define';\n\nexport function bindMediaClick(table: BaseTableAPI): void {\n if (Env.mode === 'browser') {\n // table.hasMedia = false;\n\n table.on(TABLE_EVENT_TYPE.CLICK_CELL, (e: MousePointerCellEvent) => {\n //如果目前是在某个icon上,如收起展开按钮 则不进行其他点击逻辑\n const { col, row } = e;\n\n if (e.target.type === 'image' && (e.target as any).role && (e.target as any).role.startsWith('icon')) {\n // click icon\n return;\n }\n let cellType;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n cellType = table.isPivotTable()\n ? (table._getHeaderLayoutMap(col, row) as HeaderData).headerType\n : (table.getHeaderDefine(col, row) as HeaderData).headerType;\n } else {\n cellType = table.getBodyColumnType(col, row);\n }\n const columnDefine = table.isHeader(col, row)\n ? table.getHeaderDefine(col, row)\n : table.getBodyColumnDefine(col, row);\n const cellValue = table.getCellValue(col, row);\n const cellOriginValue = table.getCellOriginValue(col, row);\n if (cellType === 'link') {\n const linkJump = (columnDefine as LinkColumnDefine).linkJump !== false;\n if (!linkJump) {\n return;\n }\n\n // 点击链接,打开相应页面\n const templateLink = (columnDefine as LinkColumnDefine).templateLink;\n const linkDetect = (columnDefine as LinkColumnDefine).linkDetect !== false;\n let url;\n if (templateLink) {\n // 如果有模板链接,使用模板\n const rowData = table.getCellOriginRecord(col, row);\n if (rowData.vtableMerge) {\n // group title\n return;\n }\n const data = Object.assign(\n {\n __value: cellValue,\n __dataValue: cellOriginValue\n },\n rowData\n );\n if (isFunction(templateLink)) {\n url = templateLink(data, col, row, table);\n } else {\n const re = /\\{\\s*(\\S+?)\\s*\\}/g;\n url = templateLink.replace(re, (matchs: string, key: string) => {\n matchs;\n return (data as any)[key];\n });\n }\n } else if (!linkDetect) {\n url = cellValue;\n } else if (regUrl.test(cellValue)) {\n // 没有模板链接,使用单元格内的字符串\n url = cellValue;\n } else {\n return;\n }\n\n if (!url) {\n return;\n }\n\n const linkTarget = (columnDefine as LinkColumnDefine).linkTarget;\n const linkWindowFeatures = (columnDefine as LinkColumnDefine).linkWindowFeatures;\n window.open(url, linkTarget, linkWindowFeatures);\n } else if (cellType === 'image') {\n // 点击图片,打开放大图片\n const { clickToPreview } = columnDefine as IImageColumnBodyDefine;\n if (clickToPreview === false) {\n return;\n }\n\n // 开启蒙版\n const overlay = document.createElement('div');\n overlay.style.width = '100%';\n overlay.style.height = '100%';\n overlay.style.position = 'absolute';\n overlay.style.top = '0';\n overlay.style.left = '0';\n overlay.style.backgroundColor = 'rgba(30, 30, 30, 0.4)';\n overlay.style.display = 'flex';\n overlay.style.justifyContent = 'center';\n overlay.style.alignItems = 'center';\n overlay.style.overflow = 'hidden';\n overlay.style.zIndex = '9999';\n\n overlay.addEventListener('click', e => {\n if (e.target === overlay) {\n document.body.removeChild(overlay);\n }\n });\n // overlay.addEventListener('pointermove', (e) => {\n // e.stopPropagation();\n // e.preventDefault();\n // });\n // overlay.addEventListener('mousemove', (e) => {\n // e.stopPropagation();\n // e.preventDefault();\n // });\n // 创建图片\n const image = new Image();\n image.src = cellValue;\n image.style.maxWidth = '80%';\n image.style.maxHeight = '80%';\n overlay.appendChild(image);\n\n document.body.appendChild(overlay);\n } else if (cellType === 'video') {\n // 点击视频,弹出播放窗口\n const { clickToPreview } = columnDefine as IImageColumnBodyDefine;\n if (clickToPreview === false) {\n return;\n }\n\n // 开启蒙版\n const overlay = document.createElement('div');\n overlay.style.width = '100%';\n overlay.style.height = '100%';\n overlay.style.position = 'absolute';\n overlay.style.top = '0';\n overlay.style.left = '0';\n overlay.style.backgroundColor = 'rgba(30, 30, 30, 0.4)';\n overlay.style.display = 'flex';\n overlay.style.justifyContent = 'center';\n overlay.style.alignItems = 'center';\n overlay.style.overflow = 'hidden';\n overlay.style.zIndex = '9999';\n\n overlay.addEventListener('click', e => {\n if (e.target === overlay) {\n document.body.removeChild(overlay);\n }\n });\n\n // 创建视频\n const video = document.createElement('video');\n video.src = cellValue;\n video.style.maxWidth = '80%';\n video.style.maxHeight = '80%';\n video.setAttribute('preload', 'auto');\n video.setAttribute('controls', 'true');\n overlay.appendChild(video);\n\n document.body.appendChild(overlay);\n }\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/event/media-click.ts"],"names":[],"mappings":"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","file":"media-click.js","sourcesContent":["import { isFunction } from '@visactor/vutils';\nimport { TABLE_EVENT_TYPE } from '../core/TABLE_EVENT_TYPE';\nimport { Env } from '../tools/env';\nimport { regUrl } from '../tools/global';\nimport type { LinkColumnDefine, MousePointerCellEvent } from '../ts-types';\nimport type { BaseTableAPI, HeaderData } from '../ts-types/base-table';\nimport type { IImageColumnBodyDefine } from '../ts-types/list-table/define/image-define';\nimport { getOrApply } from '../tools/helper';\n\nexport function bindMediaClick(table: BaseTableAPI): void {\n if (Env.mode === 'browser') {\n // table.hasMedia = false;\n\n table.on(TABLE_EVENT_TYPE.CLICK_CELL, (e: MousePointerCellEvent) => {\n //如果目前是在某个icon上,如收起展开按钮 则不进行其他点击逻辑\n const { col, row } = e;\n\n if (e.target.type === 'image' && (e.target as any).role && (e.target as any).role.startsWith('icon')) {\n // click icon\n return;\n }\n let cellType;\n if (table.internalProps.layoutMap.isHeader(col, row)) {\n cellType = table.isPivotTable()\n ? (table._getHeaderLayoutMap(col, row) as HeaderData).headerType\n : (table.getHeaderDefine(col, row) as HeaderData).headerType;\n } else {\n cellType = table.getBodyColumnType(col, row);\n }\n const columnDefine = table.isHeader(col, row)\n ? table.getHeaderDefine(col, row)\n : table.getBodyColumnDefine(col, row);\n const cellValue = table.getCellValue(col, row);\n const cellOriginValue = table.getCellOriginValue(col, row);\n if (cellType === 'link') {\n let linkJump: boolean | undefined = getOrApply((columnDefine as LinkColumnDefine).linkJump, {\n col,\n row,\n table,\n value: cellValue,\n dataValue: cellOriginValue,\n cellHeaderPaths: undefined\n });\n linkJump = linkJump !== false;\n if (!linkJump) {\n return;\n }\n\n // 点击链接,打开相应页面\n const templateLink = (columnDefine as LinkColumnDefine).templateLink;\n let linkDetect = getOrApply((columnDefine as LinkColumnDefine).linkDetect, {\n col,\n row,\n table,\n value: cellValue,\n dataValue: cellOriginValue,\n cellHeaderPaths: undefined\n });\n linkDetect = linkDetect !== false;\n let url;\n if (templateLink) {\n // 如果有模板链接,使用模板\n const rowData = table.getCellOriginRecord(col, row);\n if (rowData && rowData.vtableMerge) {\n // group title\n return;\n }\n const data = Object.assign(\n {\n __value: cellValue,\n __dataValue: cellOriginValue\n },\n rowData\n );\n if (isFunction(templateLink)) {\n url = templateLink(data, col, row, table);\n } else {\n const re = /\\{\\s*(\\S+?)\\s*\\}/g;\n url = templateLink.replace(re, (matchs: string, key: string) => {\n matchs;\n return (data as any)[key];\n });\n }\n } else if (!linkDetect) {\n url = cellValue;\n } else if (regUrl.test(cellValue)) {\n // 没有模板链接,使用单元格内的字符串\n url = cellValue;\n } else {\n return;\n }\n\n if (!url) {\n return;\n }\n\n const linkTarget = (columnDefine as LinkColumnDefine).linkTarget;\n const linkWindowFeatures = (columnDefine as LinkColumnDefine).linkWindowFeatures;\n window.open(url, linkTarget, linkWindowFeatures);\n } else if (cellType === 'image') {\n // 点击图片,打开放大图片\n const { clickToPreview } = columnDefine as IImageColumnBodyDefine;\n if (clickToPreview === false) {\n return;\n }\n\n // 开启蒙版\n const overlay = document.createElement('div');\n overlay.style.width = '100%';\n overlay.style.height = '100%';\n overlay.style.position = 'absolute';\n overlay.style.top = '0';\n overlay.style.left = '0';\n overlay.style.backgroundColor = 'rgba(30, 30, 30, 0.4)';\n overlay.style.display = 'flex';\n overlay.style.justifyContent = 'center';\n overlay.style.alignItems = 'center';\n overlay.style.overflow = 'hidden';\n overlay.style.zIndex = '9999';\n\n overlay.addEventListener('click', e => {\n if (e.target === overlay) {\n document.body.removeChild(overlay);\n }\n });\n // overlay.addEventListener('pointermove', (e) => {\n // e.stopPropagation();\n // e.preventDefault();\n // });\n // overlay.addEventListener('mousemove', (e) => {\n // e.stopPropagation();\n // e.preventDefault();\n // });\n // 创建图片\n const image = new Image();\n image.src = cellValue;\n image.style.maxWidth = '80%';\n image.style.maxHeight = '80%';\n overlay.appendChild(image);\n\n document.body.appendChild(overlay);\n } else if (cellType === 'video') {\n // 点击视频,弹出播放窗口\n const { clickToPreview } = columnDefine as IImageColumnBodyDefine;\n if (clickToPreview === false) {\n return;\n }\n\n // 开启蒙版\n const overlay = document.createElement('div');\n overlay.style.width = '100%';\n overlay.style.height = '100%';\n overlay.style.position = 'absolute';\n overlay.style.top = '0';\n overlay.style.left = '0';\n overlay.style.backgroundColor = 'rgba(30, 30, 30, 0.4)';\n overlay.style.display = 'flex';\n overlay.style.justifyContent = 'center';\n overlay.style.alignItems = 'center';\n overlay.style.overflow = 'hidden';\n overlay.style.zIndex = '9999';\n\n overlay.addEventListener('click', e => {\n if (e.target === overlay) {\n document.body.removeChild(overlay);\n }\n });\n\n // 创建视频\n const video = document.createElement('video');\n video.src = cellValue;\n video.style.maxWidth = '80%';\n video.style.maxHeight = '80%';\n video.setAttribute('preload', 'auto');\n video.setAttribute('controls', 'true');\n overlay.appendChild(video);\n\n document.body.appendChild(overlay);\n }\n });\n }\n}\n"]}
package/es/index.d.ts CHANGED
@@ -20,7 +20,7 @@ export { getDataCellPath } from './tools/get-data-path';
20
20
  export * from './render/jsx';
21
21
  export { getTargetCell } from './event/util';
22
22
  export { Icon } from './scenegraph/graphic/icon';
23
- export declare const version = "1.16.0-alpha.1";
23
+ export declare const version = "1.16.0";
24
24
  export { TYPES, core, ListTable, ListTableSimple, ListTableConstructorOptions, PivotTable, PivotTableSimple, 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, setCustomAlphabetCharSet, restoreMeasureText };
25
25
  declare function getIcons(): {
26
26
  [key: string]: TYPES.ColumnIconOption;
package/es/index.js CHANGED
@@ -42,7 +42,7 @@ export { getTargetCell } from "./event/util";
42
42
 
43
43
  export { Icon } from "./scenegraph/graphic/icon";
44
44
 
45
- export const version = "1.16.0-alpha.1";
45
+ export const version = "1.16.0";
46
46
 
47
47
  export { TYPES, core, ListTable, ListTableSimple, PivotTable, PivotTableSimple, PivotChart, themes, data, getIcons, clearGlobal, register, DataStatistics, CustomLayout, updateCell, renderChart, graphicUtil, setCustomAlphabetCharSet, restoreMeasureText };
48
48
 
package/es/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC5D,kBAAkB,EAAE,CAAC;AAErB,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,YAAY,IAAI,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,aAAa,IAAI,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,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;AACrF,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAK/F,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAKjD,MAAM,CAAC,MAAM,OAAO,GAAG,gBAAgB,CAAC;AAIxC,OAAO,EAKL,KAAK,EACL,IAAI,EACJ,SAAS,EACT,eAAe,EAEf,UAAU,EACV,gBAAgB,EAGhB,UAAU,EAiBV,MAAM,EACN,IAAI,EAEJ,QAAQ,EACR,WAAW,EAEX,QAAQ,EAIR,cAAc,EACd,YAAY,EACZ,UAAU,EACV,WAAW,EACX,WAAW,EACX,wBAAwB,EACxB,kBAAkB,EAGnB,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;AAEtB,cAAc,cAAc,CAAC;AAC7B,cAAc,sCAAsC,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AAE/G,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC","file":"index.js","sourcesContent":["/* eslint-disable sort-imports */\nimport { graphicUtil, registerForVrender } from './vrender';\nregisterForVrender();\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 { ListTableAll as ListTable } from './ListTable-all';\nimport { ListTableSimple } from './ListTable-simple';\n// import { PivotTable } from './PivotTable';\nimport { PivotTableAll as PivotTable } from './PivotTable-all';\nimport { PivotTableSimple } from './PivotTable-simple';\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';\nimport { restoreMeasureText, setCustomAlphabetCharSet } from './scenegraph/utils/text-measure';\n\n// import { container, loadCanvasPicker } from '@src/vrender';\n// loadCanvasPicker(container);\n\nexport { getDataCellPath } from './tools/get-data-path';\nexport * from './render/jsx';\nexport { getTargetCell } from './event/util';\n\nexport { Icon } from './scenegraph/graphic/icon';\n\n// export * as VRender from './vrender';\n// import * as VRender from './vrender';\n\nexport const version = \"1.16.0-alpha.1\";\n/**\n * @namespace VTable\n */\nexport {\n /**\n * Types\n * @namespace VTable.TYPES\n */\n TYPES,\n core,\n ListTable,\n ListTableSimple,\n ListTableConstructorOptions,\n PivotTable,\n PivotTableSimple,\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 setCustomAlphabetCharSet,\n restoreMeasureText\n\n // VRender // should use import {xxx} from '@visactor/vtable/es/vrender'\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\nexport * from './components';\nexport * from './scenegraph/group-creater/cell-type';\n\nexport { TABLE_EVENT_TYPE } from './core/TABLE_EVENT_TYPE';\nexport { PIVOT_CHART_EVENT_TYPE, PIVOT_TABLE_EVENT_TYPE } from './ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE';\n\nexport { EventTarget } from './event/EventTarget';\n"]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC5D,kBAAkB,EAAE,CAAC;AAErB,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,YAAY,IAAI,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,aAAa,IAAI,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,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;AACrF,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAK/F,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAKjD,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC;AAIhC,OAAO,EAKL,KAAK,EACL,IAAI,EACJ,SAAS,EACT,eAAe,EAEf,UAAU,EACV,gBAAgB,EAGhB,UAAU,EAiBV,MAAM,EACN,IAAI,EAEJ,QAAQ,EACR,WAAW,EAEX,QAAQ,EAIR,cAAc,EACd,YAAY,EACZ,UAAU,EACV,WAAW,EACX,WAAW,EACX,wBAAwB,EACxB,kBAAkB,EAGnB,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;AAEtB,cAAc,cAAc,CAAC;AAC7B,cAAc,sCAAsC,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AAE/G,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC","file":"index.js","sourcesContent":["/* eslint-disable sort-imports */\nimport { graphicUtil, registerForVrender } from './vrender';\nregisterForVrender();\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 { ListTableAll as ListTable } from './ListTable-all';\nimport { ListTableSimple } from './ListTable-simple';\n// import { PivotTable } from './PivotTable';\nimport { PivotTableAll as PivotTable } from './PivotTable-all';\nimport { PivotTableSimple } from './PivotTable-simple';\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';\nimport { restoreMeasureText, setCustomAlphabetCharSet } from './scenegraph/utils/text-measure';\n\n// import { container, loadCanvasPicker } from '@src/vrender';\n// loadCanvasPicker(container);\n\nexport { getDataCellPath } from './tools/get-data-path';\nexport * from './render/jsx';\nexport { getTargetCell } from './event/util';\n\nexport { Icon } from './scenegraph/graphic/icon';\n\n// export * as VRender from './vrender';\n// import * as VRender from './vrender';\n\nexport const version = \"1.16.0\";\n/**\n * @namespace VTable\n */\nexport {\n /**\n * Types\n * @namespace VTable.TYPES\n */\n TYPES,\n core,\n ListTable,\n ListTableSimple,\n ListTableConstructorOptions,\n PivotTable,\n PivotTableSimple,\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 setCustomAlphabetCharSet,\n restoreMeasureText\n\n // VRender // should use import {xxx} from '@visactor/vtable/es/vrender'\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\nexport * from './components';\nexport * from './scenegraph/group-creater/cell-type';\n\nexport { TABLE_EVENT_TYPE } from './core/TABLE_EVENT_TYPE';\nexport { PIVOT_CHART_EVENT_TYPE, PIVOT_TABLE_EVENT_TYPE } from './ts-types/pivot-table/PIVOT_TABLE_EVENT_TYPE';\n\nexport { EventTarget } from './event/EventTarget';\n"]}
@@ -1,2 +1 @@
1
- export { SimpleHeaderLayoutMap } from "./simple-header-layout";
2
- //# sourceMappingURL=index.js.map
1
+ export { SimpleHeaderLayoutMap } from "./simple-header-layout";
@@ -251,14 +251,12 @@ export class PivotHeaderLayoutMap {
251
251
  }
252
252
  }
253
253
  _addCornerHeaders(colDimensionKeys, rowDimensionKeys, dimensions) {
254
- var _a, _b;
255
- const results = [];
254
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
255
+ this._cornerHeaderCellFullPathIds = [];
256
+ const results = [], colLevelCount = "grid-tree" === this.columnHierarchyType && this._getColumnHeaderTreeExpandedMaxLevelCount() || this.columnHeaderLevelCount, rowLevelCount = "grid-tree" === this.rowHierarchyType && this._getRowHeaderTreeExpandedMaxLevelCount() || this.rowHeaderLevelCount;
256
257
  if ("all" === this.cornerSetting.titleOnDimension) if (this.indicatorsAsCol) {
257
- let indicatorAtIndex = -1;
258
- colDimensionKeys && colDimensionKeys.forEach(((dimensionKey, key) => {
259
- var _a, _b;
260
- dimensionKey === this.indicatorDimensionKey && (indicatorAtIndex = key);
261
- const id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
258
+ if (colDimensionKeys) for (let i = 0; i < colLevelCount; i++) {
259
+ const dimensionKey = colDimensionKeys[i], id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
262
260
  id: id,
263
261
  title: dimensionKey === this.indicatorDimensionKey ? this.indicatorTitle : dimensionInfo ? dimensionInfo.title : "axis" === dimensionKey ? "" : dimensionKey,
264
262
  field: dimensionKey,
@@ -285,16 +283,16 @@ export class PivotHeaderLayoutMap {
285
283
  },
286
284
  description: null == dimensionInfo ? void 0 : dimensionInfo.cornerDescription
287
285
  };
288
- results[id] = cell, this._headerObjects[id] = cell, this._cornerHeaderCellFullPathIds[key] || (this._cornerHeaderCellFullPathIds[key] = []);
289
- for (let r = 0; r < this.rowHeaderLevelCount; r++) this._cornerHeaderCellFullPathIds[key][r] = id;
290
- })), rowDimensionKeys && rowDimensionKeys.forEach(((dimensionKey, key) => {
291
- var _a, _b;
292
- const id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
286
+ results[id] = cell, this._headerObjects[id] = cell, this._cornerHeaderCellFullPathIds[i] || (this._cornerHeaderCellFullPathIds[i] = []);
287
+ for (let r = 0; r < rowLevelCount; r++) this._cornerHeaderCellFullPathIds[i][r] = id;
288
+ }
289
+ if (rowDimensionKeys) for (let i = 0; i < rowLevelCount; i++) {
290
+ const dimensionKey = rowDimensionKeys[i], id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
293
291
  id: id,
294
292
  title: dimensionKey === this.indicatorDimensionKey ? this.indicatorTitle : dimensionInfo ? dimensionInfo.title : "axis" === dimensionKey ? "" : dimensionKey,
295
293
  field: dimensionKey,
296
294
  style: this.cornerSetting.headerStyle,
297
- headerType: null !== (_a = this.cornerSetting.headerType) && void 0 !== _a ? _a : "text",
295
+ headerType: null !== (_c = this.cornerSetting.headerType) && void 0 !== _c ? _c : "text",
298
296
  showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
299
297
  sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
300
298
  define: {
@@ -310,26 +308,23 @@ export class PivotHeaderLayoutMap {
310
308
  dropDownMenu: null == dimensionInfo ? void 0 : dimensionInfo.cornerDropDownMenu,
311
309
  headerIcon: null == dimensionInfo ? void 0 : dimensionInfo.cornerHeaderIcon,
312
310
  pivotInfo: {
313
- value: null !== (_b = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _b ? _b : "",
311
+ value: null !== (_d = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _d ? _d : "",
314
312
  dimensionKey: dimensionKey,
315
313
  isPivotCorner: !0
316
314
  },
317
315
  description: null == dimensionInfo ? void 0 : dimensionInfo.cornerDescription
318
316
  };
319
- results[id] = cell, this._headerObjects[id] = cell, this._cornerHeaderCellFullPathIds[indicatorAtIndex] || (this._cornerHeaderCellFullPathIds[indicatorAtIndex] = []),
320
- this._cornerHeaderCellFullPathIds[indicatorAtIndex][key] = id;
321
- }));
317
+ results[id] = cell, this._headerObjects[id] = cell, this._cornerHeaderCellFullPathIds[this._cornerHeaderCellFullPathIds.length - 1] || (this._cornerHeaderCellFullPathIds[this._cornerHeaderCellFullPathIds.length - 1] = []),
318
+ this._cornerHeaderCellFullPathIds[this._cornerHeaderCellFullPathIds.length - 1][i] = id;
319
+ }
322
320
  } else {
323
- let indicatorAtIndex = -1;
324
- rowDimensionKeys && rowDimensionKeys.forEach(((dimensionKey, key) => {
325
- var _a, _b;
326
- dimensionKey === this.indicatorDimensionKey && (indicatorAtIndex = key);
327
- const id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
321
+ if (rowDimensionKeys) for (let i = 0; i < rowLevelCount; i++) {
322
+ const dimensionKey = rowDimensionKeys[i], id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
328
323
  id: id,
329
324
  title: dimensionKey === this.indicatorDimensionKey ? this.indicatorTitle : dimensionInfo ? dimensionInfo.title : "axis" === dimensionKey ? "" : dimensionKey,
330
325
  field: dimensionKey,
331
326
  style: this.cornerSetting.headerStyle,
332
- headerType: null !== (_a = this.cornerSetting.headerType) && void 0 !== _a ? _a : "text",
327
+ headerType: null !== (_e = this.cornerSetting.headerType) && void 0 !== _e ? _e : "text",
333
328
  showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
334
329
  sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
335
330
  define: {
@@ -345,23 +340,23 @@ export class PivotHeaderLayoutMap {
345
340
  dropDownMenu: null == dimensionInfo ? void 0 : dimensionInfo.cornerDropDownMenu,
346
341
  headerIcon: null == dimensionInfo ? void 0 : dimensionInfo.cornerHeaderIcon,
347
342
  pivotInfo: {
348
- value: null !== (_b = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _b ? _b : "",
343
+ value: null !== (_f = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _f ? _f : "",
349
344
  dimensionKey: dimensionKey,
350
345
  isPivotCorner: !0
351
346
  },
352
347
  description: null == dimensionInfo ? void 0 : dimensionInfo.cornerDescription
353
348
  };
354
349
  results[id] = cell, this._headerObjects[id] = cell;
355
- for (let r = 0; r < this.columnHeaderLevelCount; r++) this._cornerHeaderCellFullPathIds[r] || (this._cornerHeaderCellFullPathIds[r] = []),
356
- this._cornerHeaderCellFullPathIds[r][key] = id;
357
- })), colDimensionKeys && colDimensionKeys.forEach(((dimensionKey, key) => {
358
- var _a, _b;
359
- const id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
350
+ for (let r = 0; r < colLevelCount; r++) this._cornerHeaderCellFullPathIds[r] || (this._cornerHeaderCellFullPathIds[r] = []),
351
+ this._cornerHeaderCellFullPathIds[r][i] = id;
352
+ }
353
+ if (colDimensionKeys) for (let c = 0; c < colLevelCount; c++) {
354
+ const dimensionKey = colDimensionKeys[c], id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
360
355
  id: id,
361
356
  title: dimensionKey === this.indicatorDimensionKey ? this.indicatorTitle : dimensionInfo ? dimensionInfo.title : "axis" === dimensionKey ? "" : dimensionKey,
362
357
  field: dimensionKey,
363
358
  style: this.cornerSetting.headerStyle,
364
- headerType: null !== (_a = this.cornerSetting.headerType) && void 0 !== _a ? _a : "text",
359
+ headerType: null !== (_g = this.cornerSetting.headerType) && void 0 !== _g ? _g : "text",
365
360
  showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
366
361
  sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
367
362
  define: {
@@ -377,16 +372,16 @@ export class PivotHeaderLayoutMap {
377
372
  dropDownMenu: null == dimensionInfo ? void 0 : dimensionInfo.cornerDropDownMenu,
378
373
  headerIcon: null == dimensionInfo ? void 0 : dimensionInfo.cornerHeaderIcon,
379
374
  pivotInfo: {
380
- value: null !== (_b = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _b ? _b : "",
375
+ value: null !== (_h = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _h ? _h : "",
381
376
  dimensionKey: dimensionKey,
382
377
  isPivotCorner: !0
383
378
  },
384
379
  description: null == dimensionInfo ? void 0 : dimensionInfo.cornerDescription
385
380
  };
386
- results[id] = cell, this._headerObjects[id] = cell, this._cornerHeaderCellFullPathIds[key][indicatorAtIndex] = id;
387
- }));
381
+ results[id] = cell, this._headerObjects[id] = cell, this._cornerHeaderCellFullPathIds[c][this._cornerHeaderCellFullPathIds[c].length - 1] = id;
382
+ }
388
383
  } else if ("row" === this.cornerSetting.titleOnDimension || "column" === this.cornerSetting.titleOnDimension) {
389
- const dimensionKeys = "row" === (null === (_a = this.cornerSetting) || void 0 === _a ? void 0 : _a.titleOnDimension) ? rowDimensionKeys : colDimensionKeys;
384
+ const dimensionKeys = "row" === (null === (_j = this.cornerSetting) || void 0 === _j ? void 0 : _j.titleOnDimension) ? rowDimensionKeys : colDimensionKeys;
390
385
  dimensionKeys && dimensionKeys.forEach(((dimensionKey, key) => {
391
386
  var _a, _b;
392
387
  const id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
@@ -430,7 +425,7 @@ export class PivotHeaderLayoutMap {
430
425
  title: "",
431
426
  field: "维度名称",
432
427
  style: this.cornerSetting.headerStyle,
433
- headerType: null !== (_b = this.cornerSetting.headerType) && void 0 !== _b ? _b : "text",
428
+ headerType: null !== (_k = this.cornerSetting.headerType) && void 0 !== _k ? _k : "text",
434
429
  define: {
435
430
  dimensionKey: "维度名称",
436
431
  id: id,
@@ -1044,7 +1039,8 @@ export class PivotHeaderLayoutMap {
1044
1039
  this.fullRowDimensionKeys = [], this.fullRowDimensionKeys = this.fullRowDimensionKeys.concat(this.rowDimensionKeys),
1045
1040
  "tree" === this.rowHierarchyType) this._addHeadersForTreeMode(this._rowHeaderCellFullPathIds_FULL, 0, this.rowDimensionTree.tree.children, [], this.rowDimensionTree.totalLevel, !0, this.rowsDefine, this.rowHeaderObjs); else if ("grid-tree" === this.rowHierarchyType) {
1046
1041
  const startRow = 0;
1047
- this._addHeadersForGridTreeMode(this._rowHeaderCellFullPathIds_FULL, startRow, this.rowDimensionTree.tree.children, [], this.rowDimensionTree.totalLevel, this._getRowHeaderTreeExpandedMaxLevelCount(), !0, this.rowsDefine, this.rowHeaderObjs, !0);
1042
+ this._addHeadersForGridTreeMode(this._rowHeaderCellFullPathIds_FULL, startRow, this.rowDimensionTree.tree.children, [], this.rowDimensionTree.totalLevel, this._getRowHeaderTreeExpandedMaxLevelCount(), !0, this.rowsDefine, this.rowHeaderObjs, !0),
1043
+ this.cornerHeaderObjs = this._addCornerHeaders(this.colDimensionKeys, this.rowDimensionKeys, this.columnsDefine.concat(...this.rowsDefine));
1048
1044
  }
1049
1045
  if (this.rowHeaderTitle) {
1050
1046
  const id = ++this.sharedVar.seqId, firstColIds = Array(this.rowCount - this.columnHeaderLevelCount).fill(id);
@@ -1089,7 +1085,8 @@ export class PivotHeaderLayoutMap {
1089
1085
  this._columnHeaderCellFullPathIds = [], this.colDimensionKeys = this.columnDimensionTree.dimensionKeysIncludeVirtual.valueArr(),
1090
1086
  "grid-tree" === this.columnHierarchyType) {
1091
1087
  const startRow = 0;
1092
- this._addHeadersForGridTreeMode(this._columnHeaderCellFullPathIds, startRow, this.columnDimensionTree.tree.children, [], this.columnDimensionTree.totalLevel, this._getColumnHeaderTreeExpandedMaxLevelCount(), !0, this.columnsDefine, this.columnHeaderObjs, !1);
1088
+ this._addHeadersForGridTreeMode(this._columnHeaderCellFullPathIds, startRow, this.columnDimensionTree.tree.children, [], this.columnDimensionTree.totalLevel, this._getColumnHeaderTreeExpandedMaxLevelCount(), !0, this.columnsDefine, this.columnHeaderObjs, !1),
1089
+ this.cornerHeaderObjs = this._addCornerHeaders(this.colDimensionKeys, this.rowDimensionKeys, this.columnsDefine.concat(...this.rowsDefine));
1093
1090
  }
1094
1091
  if (this.columnHeaderTitle) {
1095
1092
  const id = ++this.sharedVar.seqId, firstRowIds = Array(this.colCount - this.rowHeaderLevelCount - this.rightFrozenColCount).fill(id);
@@ -1713,7 +1710,7 @@ export class PivotHeaderLayoutMap {
1713
1710
  }
1714
1711
  getSeriesNumberHeader(col, row) {
1715
1712
  return this.leftRowSeriesNumberColumnCount > 0 && col >= 0 && col < this.leftRowSeriesNumberColumnCount && row < this.headerLevelCount ? Object.assign({}, this.leftRowSeriesNumberColumn[col], {
1716
- style: this._table.internalProps.rowSeriesNumber.headerStyle
1713
+ style: Object.assign({}, this._table.internalProps.theme.cornerHeaderStyle, this._table.internalProps.rowSeriesNumber.headerStyle)
1717
1714
  }) : this.rightRowSeriesNumberColumnCount > 0 && col >= this.colCount - this.rightRowSeriesNumberColumnCount && row < this.headerLevelCount && row < this.headerLevelCount ? this.rightRowSeriesNumberColumn[col - (this.colCount - this.rightRowSeriesNumberColumnCount)] : void 0;
1718
1715
  }
1719
1716
  getSeriesNumberBody(col, row) {