@visactor/vtable 1.4.2-beta.0 → 1.4.2

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 (119) hide show
  1. package/cjs/ListTable.js +1 -1
  2. package/cjs/ListTable.js.map +1 -1
  3. package/cjs/PivotTable.js +19 -19
  4. package/cjs/PivotTable.js.map +1 -1
  5. package/cjs/components/tooltip/logic/BubbleTooltipElement.js +2 -0
  6. package/cjs/components/tooltip/logic/BubbleTooltipElement.js.map +1 -1
  7. package/cjs/core/BaseTable.d.ts +1 -2
  8. package/cjs/core/BaseTable.js +16 -150
  9. package/cjs/core/BaseTable.js.map +1 -1
  10. package/cjs/core/utils/get-cell-position.d.ts +42 -0
  11. package/cjs/core/utils/get-cell-position.js +204 -0
  12. package/cjs/core/utils/get-cell-position.js.map +1 -0
  13. package/cjs/edit/edit-manager.d.ts +1 -1
  14. package/cjs/edit/edit-manager.js +7 -6
  15. package/cjs/edit/edit-manager.js.map +1 -1
  16. package/cjs/event/event.js +7 -3
  17. package/cjs/event/event.js.map +1 -1
  18. package/cjs/event/listener/container-dom.js +92 -86
  19. package/cjs/event/listener/container-dom.js.map +1 -1
  20. package/cjs/event/listener/table-group.js +29 -20
  21. package/cjs/event/listener/table-group.js.map +1 -1
  22. package/cjs/index.d.ts +1 -1
  23. package/cjs/index.js +1 -1
  24. package/cjs/index.js.map +1 -1
  25. package/cjs/layout/layout-helper.js +2 -2
  26. package/cjs/layout/layout-helper.js.map +1 -1
  27. package/cjs/layout/pivot-header-layout.js +182 -53
  28. package/cjs/layout/pivot-header-layout.js.map +1 -1
  29. package/cjs/layout/simple-header-layout.d.ts +3 -0
  30. package/cjs/layout/simple-header-layout.js +28 -22
  31. package/cjs/layout/simple-header-layout.js.map +1 -1
  32. package/cjs/scenegraph/component/custom.js +4 -2
  33. package/cjs/scenegraph/component/custom.js.map +1 -1
  34. package/cjs/scenegraph/graphic/contributions/group-contribution-render.js +60 -56
  35. package/cjs/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -1
  36. package/cjs/scenegraph/group-creater/cell-helper.js +13 -11
  37. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  38. package/cjs/scenegraph/group-creater/progress/proxy.js +8 -8
  39. package/cjs/scenegraph/group-creater/progress/proxy.js.map +1 -1
  40. package/cjs/scenegraph/layout/compute-col-width.js +1 -1
  41. package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
  42. package/cjs/state/cell-move/index.js +4 -1
  43. package/cjs/state/cell-move/index.js.map +1 -1
  44. package/cjs/state/sort/index.js +7 -3
  45. package/cjs/state/sort/index.js.map +1 -1
  46. package/cjs/state/state.d.ts +1 -1
  47. package/cjs/state/state.js +10 -6
  48. package/cjs/state/state.js.map +1 -1
  49. package/cjs/tools/util.d.ts +1 -0
  50. package/cjs/tools/util.js +11 -2
  51. package/cjs/tools/util.js.map +1 -1
  52. package/cjs/ts-types/base-table.d.ts +2 -0
  53. package/cjs/ts-types/base-table.js.map +1 -1
  54. package/cjs/ts-types/list-table/define/basic-define.d.ts +1 -0
  55. package/cjs/ts-types/list-table/define/basic-define.js.map +1 -1
  56. package/cjs/ts-types/table-engine.d.ts +1 -1
  57. package/cjs/ts-types/table-engine.js.map +1 -1
  58. package/cjs/vrender.js.map +1 -1
  59. package/dist/vtable.js +791 -438
  60. package/dist/vtable.min.js +2 -2
  61. package/es/ListTable.js +1 -1
  62. package/es/ListTable.js.map +1 -1
  63. package/es/PivotTable.js +19 -19
  64. package/es/PivotTable.js.map +1 -1
  65. package/es/components/tooltip/logic/BubbleTooltipElement.js +3 -1
  66. package/es/components/tooltip/logic/BubbleTooltipElement.js.map +1 -1
  67. package/es/core/BaseTable.d.ts +1 -2
  68. package/es/core/BaseTable.js +18 -150
  69. package/es/core/BaseTable.js.map +1 -1
  70. package/es/core/utils/get-cell-position.d.ts +42 -0
  71. package/es/core/utils/get-cell-position.js +192 -0
  72. package/es/core/utils/get-cell-position.js.map +1 -0
  73. package/es/edit/edit-manager.d.ts +1 -1
  74. package/es/edit/edit-manager.js +7 -6
  75. package/es/edit/edit-manager.js.map +1 -1
  76. package/es/event/event.js +6 -2
  77. package/es/event/event.js.map +1 -1
  78. package/es/event/listener/container-dom.js +92 -86
  79. package/es/event/listener/container-dom.js.map +1 -1
  80. package/es/event/listener/table-group.js +29 -20
  81. package/es/event/listener/table-group.js.map +1 -1
  82. package/es/index.d.ts +1 -1
  83. package/es/index.js +1 -1
  84. package/es/index.js.map +1 -1
  85. package/es/layout/layout-helper.js +2 -2
  86. package/es/layout/layout-helper.js.map +1 -1
  87. package/es/layout/pivot-header-layout.js +182 -53
  88. package/es/layout/pivot-header-layout.js.map +1 -1
  89. package/es/layout/simple-header-layout.d.ts +3 -0
  90. package/es/layout/simple-header-layout.js +28 -22
  91. package/es/layout/simple-header-layout.js.map +1 -1
  92. package/es/scenegraph/component/custom.js +4 -2
  93. package/es/scenegraph/component/custom.js.map +1 -1
  94. package/es/scenegraph/graphic/contributions/group-contribution-render.js +60 -56
  95. package/es/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -1
  96. package/es/scenegraph/group-creater/cell-helper.js +13 -11
  97. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  98. package/es/scenegraph/group-creater/progress/proxy.js +8 -8
  99. package/es/scenegraph/group-creater/progress/proxy.js.map +1 -1
  100. package/es/scenegraph/layout/compute-col-width.js +1 -1
  101. package/es/scenegraph/layout/compute-col-width.js.map +1 -1
  102. package/es/state/cell-move/index.js +4 -1
  103. package/es/state/cell-move/index.js.map +1 -1
  104. package/es/state/sort/index.js +7 -3
  105. package/es/state/sort/index.js.map +1 -1
  106. package/es/state/state.d.ts +1 -1
  107. package/es/state/state.js +10 -6
  108. package/es/state/state.js.map +1 -1
  109. package/es/tools/util.d.ts +1 -0
  110. package/es/tools/util.js +9 -0
  111. package/es/tools/util.js.map +1 -1
  112. package/es/ts-types/base-table.d.ts +2 -0
  113. package/es/ts-types/base-table.js.map +1 -1
  114. package/es/ts-types/list-table/define/basic-define.d.ts +1 -0
  115. package/es/ts-types/list-table/define/basic-define.js.map +1 -1
  116. package/es/ts-types/table-engine.d.ts +1 -1
  117. package/es/ts-types/table-engine.js.map +1 -1
  118. package/es/vrender.js.map +1 -1
  119. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/layout/layout-helper.ts"],"names":[],"mappings":"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","file":"layout-helper.js","sourcesContent":["import { isArray, isString } from '@visactor/vutils';\nimport type { PivotTable } from '../PivotTable';\nimport { AggregationType } from '../ts-types';\nimport type { BaseTableAPI } from '../ts-types/base-table';\nimport type {\n Aggregation,\n IHeaderTreeDefine,\n IIndicator,\n ListTableConstructorOptions,\n PivotTableConstructorOptions\n} from '../ts-types';\nimport type { ColumnData } from '../ts-types/list-table/layout-map/api';\nimport type { IChartColumnIndicator } from '../ts-types/pivot-table/indicator/chart-indicator';\nimport type { SimpleHeaderLayoutMap } from './simple-header-layout';\nimport type { IImageDimension } from '../ts-types/pivot-table/dimension/image-dimension';\nimport type { IImageColumnIndicator, IImageHeaderIndicator } from '../ts-types/pivot-table/indicator/image-indicator';\nimport type { IImageColumnBodyDefine, IImageHeaderDefine } from '../ts-types/list-table/define/image-define';\nimport type { ITreeLayoutHeadNode } from './tree-helper';\nimport { DimensionTree } from './tree-helper';\n\nexport function checkHasAggregation(layoutMap: SimpleHeaderLayoutMap) {\n const columnObjects = layoutMap.columnObjects;\n for (let i = 0; i < columnObjects.length; i++) {\n const column = columnObjects[i];\n if ((column as ColumnData)?.aggregation) {\n return true;\n }\n }\n return false;\n}\n\nexport function checkHasAggregationOnTop(layoutMap: SimpleHeaderLayoutMap) {\n const columnObjects = layoutMap.columnObjects;\n let count = 0;\n for (let i = 0; i < columnObjects.length; i++) {\n const column = columnObjects[i];\n if ((column as ColumnData)?.aggregation) {\n if (Array.isArray((column as ColumnData)?.aggregation)) {\n count = Math.max(\n count,\n ((column as ColumnData).aggregation as Array<Aggregation>).filter(item => item.showOnTop === true).length\n );\n } else if (((column as ColumnData).aggregation as Aggregation).showOnTop === true) {\n count = Math.max(count, 1);\n }\n }\n }\n return count;\n}\n\nexport function checkHasAggregationOnBottom(layoutMap: SimpleHeaderLayoutMap) {\n const columnObjects = layoutMap.columnObjects;\n let count = 0;\n for (let i = 0; i < columnObjects.length; i++) {\n const column = columnObjects[i];\n if ((column as ColumnData)?.aggregation) {\n if (Array.isArray((column as ColumnData)?.aggregation)) {\n count = Math.max(\n count,\n ((column as ColumnData).aggregation as Array<Aggregation>).filter(item => item.showOnTop === false).length\n );\n } else if (((column as ColumnData).aggregation as Aggregation).showOnTop === false) {\n count = Math.max(count, 1);\n }\n }\n }\n return count;\n}\n\nexport function checkHasTreeDefine(layoutMap: SimpleHeaderLayoutMap) {\n const { columns } = layoutMap._table.options as ListTableConstructorOptions;\n if (isArray(columns) && columns.length > 0) {\n for (let i = 0; i < columns.length; i++) {\n const column = columns[i];\n if (isString(column)) {\n continue;\n }\n if (column.tree) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function hasAutoImageColumn(table: BaseTableAPI) {\n const { columns, rows, indicators } = table.options as PivotTableConstructorOptions;\n if (table.isPivotTable()) {\n // pivot table\n if (isArray(columns) && columns.length > 0) {\n for (let i = 0; i < columns.length; i++) {\n const column = columns[i];\n if (isString(column)) {\n continue;\n }\n if (\n (column.headerType === 'image' || column.headerType === 'video' || typeof column.headerType === 'function') &&\n (column as IImageDimension).imageAutoSizing\n ) {\n return true;\n }\n }\n }\n if (isArray(rows) && rows.length > 0) {\n for (let i = 0; i < rows.length; i++) {\n const row = rows[i];\n if (isString(row)) {\n continue;\n }\n if (\n (row.headerType === 'image' || row.headerType === 'video' || typeof row.headerType === 'function') &&\n (row as IImageDimension).imageAutoSizing\n ) {\n return true;\n }\n }\n }\n if (isArray(indicators) && indicators.length > 0) {\n for (let i = 0; i < indicators.length; i++) {\n const indicator = indicators[i];\n if (isString(indicator)) {\n continue;\n }\n if (\n ((indicator.cellType === 'image' ||\n indicator.cellType === 'video' ||\n typeof indicator.cellType === 'function') &&\n (indicator as IImageColumnIndicator).imageAutoSizing) ||\n ((indicator.headerType === 'image' ||\n indicator.headerType === 'video' ||\n typeof indicator.headerType === 'function') &&\n (indicator as IImageHeaderIndicator).imageAutoSizing)\n ) {\n return true;\n }\n }\n }\n } else {\n // list table\n if (isArray(columns) && columns.length > 0) {\n for (let i = 0; i < columns.length; i++) {\n const column = columns[i] as unknown as ListTableConstructorOptions['columns'][0];\n if (\n ((column.cellType === 'image' || column.cellType === 'video' || typeof column.cellType === 'function') &&\n (column as IImageColumnBodyDefine).imageAutoSizing) ||\n ((column.headerType === 'image' ||\n column.headerType === 'video' ||\n typeof column.headerType === 'function') &&\n (column as IImageHeaderDefine).imageAutoSizing)\n ) {\n return true;\n }\n }\n }\n }\n return false;\n}\n\nexport function parseColKeyRowKeyForPivotTable(table: PivotTable, options: PivotTableConstructorOptions) {\n let columnDimensionTree;\n let rowDimensionTree;\n // let isNeedResetColumnDimensionTree = true;\n // let isNeedResetRowDimensionTree = true;\n if (options.columnTree) {\n if (table.options.indicatorsAsCol !== false && table.options.supplementIndicatorNodes !== false) {\n table.internalProps.columnTree = supplementIndicatorNodesForCustomTree(\n table.internalProps.columnTree,\n options.indicators\n );\n }\n columnDimensionTree = new DimensionTree(\n (table.internalProps.columnTree as ITreeLayoutHeadNode[]) ?? [],\n table.layoutNodeId\n );\n\n // if (\n // table.options.supplementIndicatorNodes !== false &&\n // table.options.indicatorsAsCol !== false &&\n // !columnDimensionTree.dimensionKeys.contain(IndicatorDimensionKeyPlaceholder) &&\n // options.indicators?.length >= 1\n // ) {\n // isNeedResetColumnDimensionTree = true;\n // } else {\n // isNeedResetColumnDimensionTree = false;\n // }\n // } else {\n // if (options.indicatorsAsCol !== false) {\n // table.internalProps.columnTree = supplementIndicatorNodesForCustomTree([], options.indicators);\n // }\n }\n if (options.rowTree) {\n if (table.options.indicatorsAsCol === false && table.options.supplementIndicatorNodes !== false) {\n table.internalProps.rowTree = supplementIndicatorNodesForCustomTree(\n table.internalProps.rowTree,\n options.indicators\n );\n }\n rowDimensionTree = new DimensionTree(\n (table.internalProps.rowTree as ITreeLayoutHeadNode[]) ?? [],\n table.layoutNodeId,\n table.options.rowHierarchyType,\n table.options.rowHierarchyType === 'tree' ? table.options.rowExpandLevel ?? 1 : undefined\n );\n // if (\n // table.options.supplementIndicatorNodes !== false &&\n // table.options.indicatorsAsCol === false &&\n // !rowDimensionTree.dimensionKeys.contain(IndicatorDimensionKeyPlaceholder) &&\n // options.indicators?.length >= 1\n // ) {\n // isNeedResetRowDimensionTree = true;\n // } else {\n // isNeedResetRowDimensionTree = false;\n // }\n // } else {\n // if (options.indicatorsAsCol === false) {\n // table.internalProps.rowTree = supplementIndicatorNodesForCustomTree([], options.indicators);\n // }\n }\n const rowKeys = rowDimensionTree?.dimensionKeys?.count\n ? rowDimensionTree.dimensionKeys.valueArr()\n : options.rows?.reduce((keys: string[], rowObj) => {\n if (typeof rowObj === 'string') {\n keys.push(rowObj);\n } else {\n keys.push(rowObj.dimensionKey);\n }\n return keys;\n }, []) ?? [];\n const columnKeys = columnDimensionTree?.dimensionKeys?.count\n ? columnDimensionTree.dimensionKeys.valueArr()\n : options.columns?.reduce((keys: string[], columnObj) => {\n if (typeof columnObj === 'string') {\n keys.push(columnObj);\n } else {\n keys.push(columnObj.dimensionKey);\n }\n return keys;\n }, []) ?? [];\n const indicatorKeys =\n options.indicators?.reduce((keys: string[], indicatorObj) => {\n if (typeof indicatorObj === 'string') {\n keys.push(indicatorObj);\n } else {\n keys.push(indicatorObj.indicatorKey);\n if ((indicatorObj as IChartColumnIndicator).chartSpec) {\n if (table.internalProps.dataConfig?.aggregationRules) {\n table.internalProps.dataConfig?.aggregationRules.push({\n field: indicatorObj.indicatorKey,\n indicatorKey: indicatorObj.indicatorKey,\n aggregationType: AggregationType.NONE\n });\n } else if (table.internalProps.dataConfig) {\n table.internalProps.dataConfig.aggregationRules = [\n {\n field: indicatorObj.indicatorKey,\n indicatorKey: indicatorObj.indicatorKey,\n aggregationType: AggregationType.NONE\n }\n ];\n } else {\n table.internalProps.dataConfig = {\n aggregationRules: [\n {\n field: indicatorObj.indicatorKey,\n indicatorKey: indicatorObj.indicatorKey,\n aggregationType: AggregationType.NONE\n }\n ]\n };\n }\n }\n }\n return keys;\n }, []) ?? [];\n if (options.rowHierarchyType === 'tree' && (options.extensionRows?.length ?? 0) >= 1) {\n options.extensionRows?.forEach(extensionRow => {\n const extension_rowKeys: string[] = [];\n extensionRow.rows.forEach(row => {\n if (typeof row === 'string') {\n extension_rowKeys.push(row);\n } else {\n extension_rowKeys.push(row.dimensionKey);\n }\n });\n rowKeys.push(...extension_rowKeys);\n });\n }\n return {\n rowKeys,\n columnKeys,\n indicatorKeys,\n // isNeedResetColumnDimensionTree,\n // isNeedResetRowDimensionTree,\n columnDimensionTree,\n rowDimensionTree\n };\n}\n\nexport function supplementIndicatorNodesForCustomTree(\n customTree: IHeaderTreeDefine[],\n indicators: (string | IIndicator)[]\n) {\n const checkNode = (nodes: IHeaderTreeDefine[], isHasIndicator: boolean) => {\n nodes.forEach((node: IHeaderTreeDefine) => {\n if (\n !node.indicatorKey &&\n !isHasIndicator &&\n (!(node.children as IHeaderTreeDefine[])?.length || !node.children)\n ) {\n node.children = indicators?.map((indicator: IIndicator | string): { indicatorKey: string; value: string } => {\n if (typeof indicator === 'string') {\n return { indicatorKey: indicator, value: indicator };\n }\n return { indicatorKey: indicator.indicatorKey, value: indicator.title ?? indicator.indicatorKey };\n });\n } else if (node.children && Array.isArray(node.children)) {\n checkNode(node.children, isHasIndicator || !!node.indicatorKey);\n }\n });\n };\n if (customTree?.length) {\n checkNode(customTree, false);\n } else {\n customTree = indicators?.map((indicator: IIndicator | string): { indicatorKey: string; value: string } => {\n if (typeof indicator === 'string') {\n return { indicatorKey: indicator, value: indicator };\n }\n return { indicatorKey: indicator.indicatorKey, value: indicator.title ?? indicator.indicatorKey };\n });\n }\n return customTree;\n}\n"]}
1
+ {"version":3,"sources":["../src/layout/layout-helper.ts"],"names":[],"mappings":"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","file":"layout-helper.js","sourcesContent":["import { isArray, isString } from '@visactor/vutils';\nimport type { PivotTable } from '../PivotTable';\nimport { AggregationType } from '../ts-types';\nimport type { BaseTableAPI } from '../ts-types/base-table';\nimport type {\n Aggregation,\n IHeaderTreeDefine,\n IIndicator,\n ListTableConstructorOptions,\n PivotTableConstructorOptions\n} from '../ts-types';\nimport type { ColumnData } from '../ts-types/list-table/layout-map/api';\nimport type { IChartColumnIndicator } from '../ts-types/pivot-table/indicator/chart-indicator';\nimport type { SimpleHeaderLayoutMap } from './simple-header-layout';\nimport type { IImageDimension } from '../ts-types/pivot-table/dimension/image-dimension';\nimport type { IImageColumnIndicator, IImageHeaderIndicator } from '../ts-types/pivot-table/indicator/image-indicator';\nimport type { IImageColumnBodyDefine, IImageHeaderDefine } from '../ts-types/list-table/define/image-define';\nimport type { ITreeLayoutHeadNode } from './tree-helper';\nimport { DimensionTree } from './tree-helper';\nimport type { ISparklineColumnIndicator } from '../ts-types/pivot-table/indicator/sparkline-indicator';\n\nexport function checkHasAggregation(layoutMap: SimpleHeaderLayoutMap) {\n const columnObjects = layoutMap.columnObjects;\n for (let i = 0; i < columnObjects.length; i++) {\n const column = columnObjects[i];\n if ((column as ColumnData)?.aggregation) {\n return true;\n }\n }\n return false;\n}\n\nexport function checkHasAggregationOnTop(layoutMap: SimpleHeaderLayoutMap) {\n const columnObjects = layoutMap.columnObjects;\n let count = 0;\n for (let i = 0; i < columnObjects.length; i++) {\n const column = columnObjects[i];\n if ((column as ColumnData)?.aggregation) {\n if (Array.isArray((column as ColumnData)?.aggregation)) {\n count = Math.max(\n count,\n ((column as ColumnData).aggregation as Array<Aggregation>).filter(item => item.showOnTop === true).length\n );\n } else if (((column as ColumnData).aggregation as Aggregation).showOnTop === true) {\n count = Math.max(count, 1);\n }\n }\n }\n return count;\n}\n\nexport function checkHasAggregationOnBottom(layoutMap: SimpleHeaderLayoutMap) {\n const columnObjects = layoutMap.columnObjects;\n let count = 0;\n for (let i = 0; i < columnObjects.length; i++) {\n const column = columnObjects[i];\n if ((column as ColumnData)?.aggregation) {\n if (Array.isArray((column as ColumnData)?.aggregation)) {\n count = Math.max(\n count,\n ((column as ColumnData).aggregation as Array<Aggregation>).filter(item => item.showOnTop === false).length\n );\n } else if (((column as ColumnData).aggregation as Aggregation).showOnTop === false) {\n count = Math.max(count, 1);\n }\n }\n }\n return count;\n}\n\nexport function checkHasTreeDefine(layoutMap: SimpleHeaderLayoutMap) {\n const { columns } = layoutMap._table.options as ListTableConstructorOptions;\n if (isArray(columns) && columns.length > 0) {\n for (let i = 0; i < columns.length; i++) {\n const column = columns[i];\n if (isString(column)) {\n continue;\n }\n if (column.tree) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function hasAutoImageColumn(table: BaseTableAPI) {\n const { columns, rows, indicators } = table.options as PivotTableConstructorOptions;\n if (table.isPivotTable()) {\n // pivot table\n if (isArray(columns) && columns.length > 0) {\n for (let i = 0; i < columns.length; i++) {\n const column = columns[i];\n if (isString(column)) {\n continue;\n }\n if (\n (column.headerType === 'image' || column.headerType === 'video' || typeof column.headerType === 'function') &&\n (column as IImageDimension).imageAutoSizing\n ) {\n return true;\n }\n }\n }\n if (isArray(rows) && rows.length > 0) {\n for (let i = 0; i < rows.length; i++) {\n const row = rows[i];\n if (isString(row)) {\n continue;\n }\n if (\n (row.headerType === 'image' || row.headerType === 'video' || typeof row.headerType === 'function') &&\n (row as IImageDimension).imageAutoSizing\n ) {\n return true;\n }\n }\n }\n if (isArray(indicators) && indicators.length > 0) {\n for (let i = 0; i < indicators.length; i++) {\n const indicator = indicators[i];\n if (isString(indicator)) {\n continue;\n }\n if (\n ((indicator.cellType === 'image' ||\n indicator.cellType === 'video' ||\n typeof indicator.cellType === 'function') &&\n (indicator as IImageColumnIndicator).imageAutoSizing) ||\n ((indicator.headerType === 'image' ||\n indicator.headerType === 'video' ||\n typeof indicator.headerType === 'function') &&\n (indicator as IImageHeaderIndicator).imageAutoSizing)\n ) {\n return true;\n }\n }\n }\n } else {\n // list table\n if (isArray(columns) && columns.length > 0) {\n for (let i = 0; i < columns.length; i++) {\n const column = columns[i] as unknown as ListTableConstructorOptions['columns'][0];\n if (\n ((column.cellType === 'image' || column.cellType === 'video' || typeof column.cellType === 'function') &&\n (column as IImageColumnBodyDefine).imageAutoSizing) ||\n ((column.headerType === 'image' ||\n column.headerType === 'video' ||\n typeof column.headerType === 'function') &&\n (column as IImageHeaderDefine).imageAutoSizing)\n ) {\n return true;\n }\n }\n }\n }\n return false;\n}\n\nexport function parseColKeyRowKeyForPivotTable(table: PivotTable, options: PivotTableConstructorOptions) {\n let columnDimensionTree;\n let rowDimensionTree;\n // let isNeedResetColumnDimensionTree = true;\n // let isNeedResetRowDimensionTree = true;\n if (options.columnTree) {\n if (table.options.indicatorsAsCol !== false && table.options.supplementIndicatorNodes !== false) {\n table.internalProps.columnTree = supplementIndicatorNodesForCustomTree(\n table.internalProps.columnTree,\n options.indicators\n );\n }\n columnDimensionTree = new DimensionTree(\n (table.internalProps.columnTree as ITreeLayoutHeadNode[]) ?? [],\n table.layoutNodeId\n );\n\n // if (\n // table.options.supplementIndicatorNodes !== false &&\n // table.options.indicatorsAsCol !== false &&\n // !columnDimensionTree.dimensionKeys.contain(IndicatorDimensionKeyPlaceholder) &&\n // options.indicators?.length >= 1\n // ) {\n // isNeedResetColumnDimensionTree = true;\n // } else {\n // isNeedResetColumnDimensionTree = false;\n // }\n // } else {\n // if (options.indicatorsAsCol !== false) {\n // table.internalProps.columnTree = supplementIndicatorNodesForCustomTree([], options.indicators);\n // }\n }\n if (options.rowTree) {\n if (table.options.indicatorsAsCol === false && table.options.supplementIndicatorNodes !== false) {\n table.internalProps.rowTree = supplementIndicatorNodesForCustomTree(\n table.internalProps.rowTree,\n options.indicators\n );\n }\n rowDimensionTree = new DimensionTree(\n (table.internalProps.rowTree as ITreeLayoutHeadNode[]) ?? [],\n table.layoutNodeId,\n table.options.rowHierarchyType,\n table.options.rowHierarchyType === 'tree' ? table.options.rowExpandLevel ?? 1 : undefined\n );\n // if (\n // table.options.supplementIndicatorNodes !== false &&\n // table.options.indicatorsAsCol === false &&\n // !rowDimensionTree.dimensionKeys.contain(IndicatorDimensionKeyPlaceholder) &&\n // options.indicators?.length >= 1\n // ) {\n // isNeedResetRowDimensionTree = true;\n // } else {\n // isNeedResetRowDimensionTree = false;\n // }\n // } else {\n // if (options.indicatorsAsCol === false) {\n // table.internalProps.rowTree = supplementIndicatorNodesForCustomTree([], options.indicators);\n // }\n }\n const rowKeys = rowDimensionTree?.dimensionKeys?.count\n ? rowDimensionTree.dimensionKeys.valueArr()\n : options.rows?.reduce((keys: string[], rowObj) => {\n if (typeof rowObj === 'string') {\n keys.push(rowObj);\n } else {\n keys.push(rowObj.dimensionKey);\n }\n return keys;\n }, []) ?? [];\n const columnKeys = columnDimensionTree?.dimensionKeys?.count\n ? columnDimensionTree.dimensionKeys.valueArr()\n : options.columns?.reduce((keys: string[], columnObj) => {\n if (typeof columnObj === 'string') {\n keys.push(columnObj);\n } else {\n keys.push(columnObj.dimensionKey);\n }\n return keys;\n }, []) ?? [];\n const indicatorKeys =\n options.indicators?.reduce((keys: string[], indicatorObj) => {\n if (typeof indicatorObj === 'string') {\n keys.push(indicatorObj);\n } else {\n keys.push(indicatorObj.indicatorKey);\n if (\n (indicatorObj as IChartColumnIndicator).chartSpec ||\n (indicatorObj as ISparklineColumnIndicator).sparklineSpec\n ) {\n if (table.internalProps.dataConfig?.aggregationRules) {\n if (\n !table.internalProps.dataConfig.aggregationRules.find(aggregation => {\n return aggregation.indicatorKey === indicatorObj.indicatorKey;\n })\n ) {\n table.internalProps.dataConfig.aggregationRules.push({\n field: indicatorObj.indicatorKey,\n indicatorKey: indicatorObj.indicatorKey,\n aggregationType: AggregationType.NONE\n });\n }\n } else if (table.internalProps.dataConfig) {\n table.internalProps.dataConfig.aggregationRules = [\n {\n field: indicatorObj.indicatorKey,\n indicatorKey: indicatorObj.indicatorKey,\n aggregationType: AggregationType.NONE\n }\n ];\n } else {\n table.internalProps.dataConfig = {\n aggregationRules: [\n {\n field: indicatorObj.indicatorKey,\n indicatorKey: indicatorObj.indicatorKey,\n aggregationType: AggregationType.NONE\n }\n ]\n };\n }\n }\n }\n return keys;\n }, []) ?? [];\n if (options.rowHierarchyType === 'tree' && (options.extensionRows?.length ?? 0) >= 1) {\n options.extensionRows?.forEach(extensionRow => {\n const extension_rowKeys: string[] = [];\n extensionRow.rows.forEach(row => {\n if (typeof row === 'string') {\n extension_rowKeys.push(row);\n } else {\n extension_rowKeys.push(row.dimensionKey);\n }\n });\n rowKeys.push(...extension_rowKeys);\n });\n }\n return {\n rowKeys,\n columnKeys,\n indicatorKeys,\n // isNeedResetColumnDimensionTree,\n // isNeedResetRowDimensionTree,\n columnDimensionTree,\n rowDimensionTree\n };\n}\n\nexport function supplementIndicatorNodesForCustomTree(\n customTree: IHeaderTreeDefine[],\n indicators: (string | IIndicator)[]\n) {\n const checkNode = (nodes: IHeaderTreeDefine[], isHasIndicator: boolean) => {\n nodes.forEach((node: IHeaderTreeDefine) => {\n if (\n !node.indicatorKey &&\n !isHasIndicator &&\n (!(node.children as IHeaderTreeDefine[])?.length || !node.children)\n ) {\n node.children = indicators?.map((indicator: IIndicator | string): { indicatorKey: string; value: string } => {\n if (typeof indicator === 'string') {\n return { indicatorKey: indicator, value: indicator };\n }\n return { indicatorKey: indicator.indicatorKey, value: indicator.title ?? indicator.indicatorKey };\n });\n } else if (node.children && Array.isArray(node.children)) {\n checkNode(node.children, isHasIndicator || !!node.indicatorKey);\n }\n });\n };\n if (customTree?.length) {\n checkNode(customTree, false);\n } else {\n customTree = indicators?.map((indicator: IIndicator | string): { indicatorKey: string; value: string } => {\n if (typeof indicator === 'string') {\n return { indicatorKey: indicator, value: indicator };\n }\n return { indicatorKey: indicator.indicatorKey, value: indicator.title ?? indicator.indicatorKey };\n });\n }\n return customTree;\n}\n"]}
@@ -12,7 +12,7 @@ const util_1 = require("../tools/util"), ts_types_1 = require("../ts-types"), gl
12
12
  class PivotHeaderLayoutMap {
13
13
  constructor(table, dataset, columnDimensionTree, rowDimensionTree) {
14
14
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
15
- if (this.colIndex = 0, this._showHeader = !0, this.columnHeaderObjs = [], this.rowHeaderObjs = [],
15
+ this.colIndex = 0, this._showHeader = !0, this.columnHeaderObjs = [], this.rowHeaderObjs = [],
16
16
  this._cornerHeaderCellFullPathIds = [], this._columnHeaderCellFullPathIds = [],
17
17
  this._rowHeaderCellFullPathIds = [], this._rowHeaderCellFullPathIds_FULL = [], this._cornerHeaderCellIds = [],
18
18
  this._columnHeaderCellIds = [], this._rowHeaderCellIds = [], this._rowHeaderCellIds_FULL = [],
@@ -61,23 +61,21 @@ class PivotHeaderLayoutMap {
61
61
  extensionRow.rows.forEach((row => {
62
62
  "string" == typeof row ? rowKeys.push(row) : rowKeys.push(row.dimensionKey);
63
63
  })), this._extensionRowDimensionKeys.push(rowKeys), this.fullRowDimensionKeys = this.fullRowDimensionKeys.concat(rowKeys);
64
- }))), this.sharedVar.seqId = Math.max(this.sharedVar.seqId, this._headerObjects.length),
65
- "column" === this.cornerSetting.titleOnDimension) {
66
- let colDimensionKeys = this.columnDimensionTree.dimensionKeysIncludeVirtual.valueArr();
67
- !this.dataset || 0 !== (null !== (_q = null === (_p = this.dataset.records) || void 0 === _p ? void 0 : _p.length) && void 0 !== _q ? _q : 0) || this.dataset.customColTree || this.dataset.customRowTree || (colDimensionKeys = this.columnsDefine.map((define => "string" == typeof define ? define : define.dimensionKey)),
68
- this.indicatorsAsCol && colDimensionKeys.push(this.indicatorDimensionKey)), this.cornerHeaderObjs = this._addCornerHeaders(this.columnHeaderTitle ? [ "" ].concat(colDimensionKeys) : colDimensionKeys, this.columnsDefine);
69
- } else if ("row" === this.cornerSetting.titleOnDimension) if ("tree" === this.rowHierarchyType && (null === (_r = this.extensionRows) || void 0 === _r ? void 0 : _r.length) >= 1) {
64
+ }))), this.sharedVar.seqId = Math.max(this.sharedVar.seqId, this._headerObjects.length);
65
+ let rowDimensionKeys, colDimensionKeys = this.columnDimensionTree.dimensionKeysIncludeVirtual.valueArr();
66
+ !this.dataset || 0 !== (null !== (_q = null === (_p = this.dataset.records) || void 0 === _p ? void 0 : _p.length) && void 0 !== _q ? _q : 0) || this.dataset.customColTree || this.dataset.customRowTree || (colDimensionKeys = this.columnsDefine.map((define => "string" == typeof define ? define : define.dimensionKey)),
67
+ this.indicatorsAsCol && colDimensionKeys.push(this.indicatorDimensionKey)), colDimensionKeys = this.columnHeaderTitle ? [ "" ].concat(colDimensionKeys) : colDimensionKeys;
68
+ let extensionRowDimensions = [];
69
+ if ("tree" === this.rowHierarchyType && (null === (_r = this.extensionRows) || void 0 === _r ? void 0 : _r.length) >= 1) {
70
70
  const rowTreeFirstKey = [];
71
71
  rowTreeFirstKey.push(this.rowDimensionKeys[0]), this._extensionRowDimensionKeys.forEach((extensionRowKeys => {
72
72
  rowTreeFirstKey.push(extensionRowKeys[0]);
73
- }));
74
- const extensionRowDimensions = this.extensionRows.reduce(((dimensions, cur) => dimensions.concat(cur.rows)), []);
75
- this.cornerHeaderObjs = this._addCornerHeaders(this.rowHeaderTitle ? [ "" ].concat(rowTreeFirstKey) : rowTreeFirstKey, this.rowsDefine.concat(extensionRowDimensions));
76
- } else {
77
- let rowDimensionKeys = this.rowDimensionTree.dimensionKeysIncludeVirtual.valueArr();
78
- !this.dataset || 0 !== (null !== (_t = null === (_s = this.dataset.records) || void 0 === _s ? void 0 : _s.length) && void 0 !== _t ? _t : 0) || this.dataset.customColTree || this.dataset.customRowTree || (rowDimensionKeys = this.rowsDefine.map((define => "string" == typeof define ? define : define.dimensionKey)),
79
- this.indicatorsAsCol || rowDimensionKeys.push(this.indicatorDimensionKey)), this.cornerHeaderObjs = this._addCornerHeaders(this.rowHeaderTitle ? [ "" ].concat(rowDimensionKeys) : rowDimensionKeys, this.rowsDefine);
80
- } else this.cornerHeaderObjs = this._addCornerHeaders(null, void 0);
73
+ })), extensionRowDimensions = this.extensionRows.reduce(((dimensions, cur) => dimensions.concat(cur.rows)), []),
74
+ rowDimensionKeys = this.rowHeaderTitle ? [ "" ].concat(rowTreeFirstKey) : rowTreeFirstKey;
75
+ } else rowDimensionKeys = this.rowDimensionTree.dimensionKeysIncludeVirtual.valueArr(),
76
+ !this.dataset || 0 !== (null !== (_t = null === (_s = this.dataset.records) || void 0 === _s ? void 0 : _s.length) && void 0 !== _t ? _t : 0) || this.dataset.customColTree || this.dataset.customRowTree || (rowDimensionKeys = this.rowsDefine.map((define => "string" == typeof define ? define : define.dimensionKey)),
77
+ this.indicatorsAsCol || rowDimensionKeys.push(this.indicatorDimensionKey)), rowDimensionKeys = this.rowHeaderTitle ? [ "" ].concat(rowDimensionKeys) : rowDimensionKeys;
78
+ this.cornerHeaderObjs = this._addCornerHeaders(colDimensionKeys, rowDimensionKeys, this.columnsDefine.concat(...this.rowsDefine, ...extensionRowDimensions)),
81
79
  this.colIndex = 0, this._headerObjectMap = this._headerObjects.reduce(((o, e) => (o[e.id] = e,
82
80
  o)), {}), this.indicatorsAsCol && !this.hideIndicatorName ? this._indicatorShowType = "column" : this.indicatorsAsCol || this.hideIndicatorName ? this._indicatorShowType = "none" : this._indicatorShowType = "row",
83
81
  this.generateCellIdsConsiderHideHeader(), this.setPagination(table.options.pagination),
@@ -208,49 +206,180 @@ class PivotHeaderLayoutMap {
208
206
  (0, tree_helper_1.dealHeaderForTreeMode)(hd, _headerCellIds, results, roots, row, totalLevel, show, dimensions, this);
209
207
  }
210
208
  }
211
- _addCornerHeaders(dimensionKeys, dimensions) {
212
- var _a;
209
+ _addCornerHeaders(colDimensionKeys, rowDimensionKeys, dimensions) {
210
+ var _a, _b;
213
211
  const results = [];
214
- if (dimensionKeys) dimensionKeys.forEach(((dimensionKey, key) => {
215
- var _a, _b;
216
- const id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
217
- id: id,
218
- title: dimensionKey === this.indicatorDimensionKey ? this.indicatorTitle : dimensionInfo ? dimensionInfo.title : "axis" === dimensionKey ? "" : dimensionKey,
219
- field: dimensionKey,
220
- style: this.cornerSetting.headerStyle,
221
- headerType: null !== (_a = this.cornerSetting.headerType) && void 0 !== _a ? _a : "text",
222
- showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
223
- sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
224
- define: {
212
+ if ("all" === this.cornerSetting.titleOnDimension) if (this.indicatorsAsCol) {
213
+ let indicatorAtIndex = -1;
214
+ colDimensionKeys && colDimensionKeys.forEach(((dimensionKey, key) => {
215
+ var _a, _b;
216
+ dimensionKey === this.indicatorDimensionKey && (indicatorAtIndex = key);
217
+ const id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
218
+ id: id,
219
+ title: dimensionKey === this.indicatorDimensionKey ? this.indicatorTitle : dimensionInfo ? dimensionInfo.title : "axis" === dimensionKey ? "" : dimensionKey,
220
+ field: dimensionKey,
221
+ style: this.cornerSetting.headerStyle,
222
+ headerType: null !== (_a = this.cornerSetting.headerType) && void 0 !== _a ? _a : "text",
225
223
  showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
226
224
  sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
227
- dimensionKey: dimensionKey,
228
- id: id,
229
- value: dimensionKey,
230
- headerEditor: this.cornerSetting.headerEditor,
231
- disableHeaderHover: !!this.cornerSetting.disableHeaderHover,
232
- disableHeaderSelect: !!this.cornerSetting.disableHeaderSelect
233
- },
234
- dropDownMenu: null == dimensionInfo ? void 0 : dimensionInfo.cornerDropDownMenu,
235
- pivotInfo: {
236
- value: null !== (_b = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _b ? _b : "",
237
- dimensionKey: dimensionKey,
238
- isPivotCorner: !0
239
- },
240
- description: null == dimensionInfo ? void 0 : dimensionInfo.cornerDescription
241
- };
242
- if (results[id] = cell, this._headerObjects[id] = cell, "column" === this.cornerSetting.titleOnDimension) {
243
- this._cornerHeaderCellFullPathIds[key] || (this._cornerHeaderCellFullPathIds[key] = []);
225
+ define: {
226
+ showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
227
+ sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
228
+ dimensionKey: dimensionKey,
229
+ id: id,
230
+ value: dimensionKey,
231
+ headerEditor: this.cornerSetting.headerEditor,
232
+ disableHeaderHover: !!this.cornerSetting.disableHeaderHover,
233
+ disableHeaderSelect: !!this.cornerSetting.disableHeaderSelect
234
+ },
235
+ dropDownMenu: null == dimensionInfo ? void 0 : dimensionInfo.cornerDropDownMenu,
236
+ pivotInfo: {
237
+ value: null !== (_b = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _b ? _b : "",
238
+ dimensionKey: dimensionKey,
239
+ isPivotCorner: !0
240
+ },
241
+ description: null == dimensionInfo ? void 0 : dimensionInfo.cornerDescription
242
+ };
243
+ results[id] = cell, this._headerObjects[id] = cell, this._cornerHeaderCellFullPathIds[key] || (this._cornerHeaderCellFullPathIds[key] = []);
244
244
  for (let r = 0; r < this.rowHeaderLevelCount; r++) this._cornerHeaderCellFullPathIds[key][r] = id;
245
- } else if ("row" === this.cornerSetting.titleOnDimension) for (let r = 0; r < this.columnHeaderLevelCount; r++) this._cornerHeaderCellFullPathIds[r] || (this._cornerHeaderCellFullPathIds[r] = []),
246
- this._cornerHeaderCellFullPathIds[r][key] = id;
247
- })); else {
245
+ })), rowDimensionKeys && rowDimensionKeys.forEach(((dimensionKey, key) => {
246
+ var _a, _b;
247
+ const id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
248
+ id: id,
249
+ title: dimensionKey === this.indicatorDimensionKey ? this.indicatorTitle : dimensionInfo ? dimensionInfo.title : "axis" === dimensionKey ? "" : dimensionKey,
250
+ field: dimensionKey,
251
+ style: this.cornerSetting.headerStyle,
252
+ headerType: null !== (_a = this.cornerSetting.headerType) && void 0 !== _a ? _a : "text",
253
+ showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
254
+ sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
255
+ define: {
256
+ showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
257
+ sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
258
+ dimensionKey: dimensionKey,
259
+ id: id,
260
+ value: dimensionKey,
261
+ headerEditor: this.cornerSetting.headerEditor,
262
+ disableHeaderHover: !!this.cornerSetting.disableHeaderHover,
263
+ disableHeaderSelect: !!this.cornerSetting.disableHeaderSelect
264
+ },
265
+ dropDownMenu: null == dimensionInfo ? void 0 : dimensionInfo.cornerDropDownMenu,
266
+ pivotInfo: {
267
+ value: null !== (_b = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _b ? _b : "",
268
+ dimensionKey: dimensionKey,
269
+ isPivotCorner: !0
270
+ },
271
+ description: null == dimensionInfo ? void 0 : dimensionInfo.cornerDescription
272
+ };
273
+ results[id] = cell, this._headerObjects[id] = cell, this._cornerHeaderCellFullPathIds[indicatorAtIndex] || (this._cornerHeaderCellFullPathIds[indicatorAtIndex] = []),
274
+ this._cornerHeaderCellFullPathIds[indicatorAtIndex][key] = id;
275
+ }));
276
+ } else {
277
+ let indicatorAtIndex = -1;
278
+ rowDimensionKeys && rowDimensionKeys.forEach(((dimensionKey, key) => {
279
+ var _a, _b;
280
+ dimensionKey === this.indicatorDimensionKey && (indicatorAtIndex = key);
281
+ const id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
282
+ id: id,
283
+ title: dimensionKey === this.indicatorDimensionKey ? this.indicatorTitle : dimensionInfo ? dimensionInfo.title : "axis" === dimensionKey ? "" : dimensionKey,
284
+ field: dimensionKey,
285
+ style: this.cornerSetting.headerStyle,
286
+ headerType: null !== (_a = this.cornerSetting.headerType) && void 0 !== _a ? _a : "text",
287
+ showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
288
+ sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
289
+ define: {
290
+ showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
291
+ sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
292
+ dimensionKey: dimensionKey,
293
+ id: id,
294
+ value: dimensionKey,
295
+ headerEditor: this.cornerSetting.headerEditor,
296
+ disableHeaderHover: !!this.cornerSetting.disableHeaderHover,
297
+ disableHeaderSelect: !!this.cornerSetting.disableHeaderSelect
298
+ },
299
+ dropDownMenu: null == dimensionInfo ? void 0 : dimensionInfo.cornerDropDownMenu,
300
+ pivotInfo: {
301
+ value: null !== (_b = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _b ? _b : "",
302
+ dimensionKey: dimensionKey,
303
+ isPivotCorner: !0
304
+ },
305
+ description: null == dimensionInfo ? void 0 : dimensionInfo.cornerDescription
306
+ };
307
+ results[id] = cell, this._headerObjects[id] = cell;
308
+ for (let r = 0; r < this.columnHeaderLevelCount; r++) this._cornerHeaderCellFullPathIds[r] || (this._cornerHeaderCellFullPathIds[r] = []),
309
+ this._cornerHeaderCellFullPathIds[r][key] = id;
310
+ })), colDimensionKeys && colDimensionKeys.forEach(((dimensionKey, key) => {
311
+ var _a, _b;
312
+ const id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
313
+ id: id,
314
+ title: dimensionKey === this.indicatorDimensionKey ? this.indicatorTitle : dimensionInfo ? dimensionInfo.title : "axis" === dimensionKey ? "" : dimensionKey,
315
+ field: dimensionKey,
316
+ style: this.cornerSetting.headerStyle,
317
+ headerType: null !== (_a = this.cornerSetting.headerType) && void 0 !== _a ? _a : "text",
318
+ showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
319
+ sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
320
+ define: {
321
+ showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
322
+ sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
323
+ dimensionKey: dimensionKey,
324
+ id: id,
325
+ value: dimensionKey,
326
+ headerEditor: this.cornerSetting.headerEditor,
327
+ disableHeaderHover: !!this.cornerSetting.disableHeaderHover,
328
+ disableHeaderSelect: !!this.cornerSetting.disableHeaderSelect
329
+ },
330
+ dropDownMenu: null == dimensionInfo ? void 0 : dimensionInfo.cornerDropDownMenu,
331
+ pivotInfo: {
332
+ value: null !== (_b = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _b ? _b : "",
333
+ dimensionKey: dimensionKey,
334
+ isPivotCorner: !0
335
+ },
336
+ description: null == dimensionInfo ? void 0 : dimensionInfo.cornerDescription
337
+ };
338
+ results[id] = cell, this._headerObjects[id] = cell, this._cornerHeaderCellFullPathIds[key][indicatorAtIndex] = id;
339
+ }));
340
+ } else if ("row" === this.cornerSetting.titleOnDimension || "column" === this.cornerSetting.titleOnDimension) {
341
+ const dimensionKeys = "row" === (null === (_a = this.cornerSetting) || void 0 === _a ? void 0 : _a.titleOnDimension) ? rowDimensionKeys : colDimensionKeys;
342
+ dimensionKeys && dimensionKeys.forEach(((dimensionKey, key) => {
343
+ var _a, _b;
344
+ const id = ++this.sharedVar.seqId, dimensionInfo = dimensions.find((dimension => "string" != typeof dimension && dimension.dimensionKey === dimensionKey)), cell = {
345
+ id: id,
346
+ title: dimensionKey === this.indicatorDimensionKey ? this.indicatorTitle : dimensionInfo ? dimensionInfo.title : "axis" === dimensionKey ? "" : dimensionKey,
347
+ field: dimensionKey,
348
+ style: this.cornerSetting.headerStyle,
349
+ headerType: null !== (_a = this.cornerSetting.headerType) && void 0 !== _a ? _a : "text",
350
+ showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
351
+ sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
352
+ define: {
353
+ showSort: null == dimensionInfo ? void 0 : dimensionInfo.showSortInCorner,
354
+ sort: null == dimensionInfo ? void 0 : dimensionInfo.sort,
355
+ dimensionKey: dimensionKey,
356
+ id: id,
357
+ value: dimensionKey,
358
+ headerEditor: this.cornerSetting.headerEditor,
359
+ disableHeaderHover: !!this.cornerSetting.disableHeaderHover,
360
+ disableHeaderSelect: !!this.cornerSetting.disableHeaderSelect
361
+ },
362
+ dropDownMenu: null == dimensionInfo ? void 0 : dimensionInfo.cornerDropDownMenu,
363
+ pivotInfo: {
364
+ value: null !== (_b = null == dimensionInfo ? void 0 : dimensionInfo.title) && void 0 !== _b ? _b : "",
365
+ dimensionKey: dimensionKey,
366
+ isPivotCorner: !0
367
+ },
368
+ description: null == dimensionInfo ? void 0 : dimensionInfo.cornerDescription
369
+ };
370
+ if (results[id] = cell, this._headerObjects[id] = cell, "column" === this.cornerSetting.titleOnDimension) {
371
+ this._cornerHeaderCellFullPathIds[key] || (this._cornerHeaderCellFullPathIds[key] = []);
372
+ for (let r = 0; r < this.rowHeaderLevelCount; r++) this._cornerHeaderCellFullPathIds[key][r] = id;
373
+ } else if ("row" === this.cornerSetting.titleOnDimension) for (let r = 0; r < this.columnHeaderLevelCount; r++) this._cornerHeaderCellFullPathIds[r] || (this._cornerHeaderCellFullPathIds[r] = []),
374
+ this._cornerHeaderCellFullPathIds[r][key] = id;
375
+ }));
376
+ } else {
248
377
  const id = ++this.sharedVar.seqId, cell = {
249
378
  id: id,
250
379
  title: "",
251
380
  field: "维度名称",
252
381
  style: this.cornerSetting.headerStyle,
253
- headerType: null !== (_a = this.cornerSetting.headerType) && void 0 !== _a ? _a : "text",
382
+ headerType: null !== (_b = this.cornerSetting.headerType) && void 0 !== _b ? _b : "text",
254
383
  define: {
255
384
  dimensionKey: "维度名称",
256
385
  id: id,
@@ -498,8 +627,8 @@ class PivotHeaderLayoutMap {
498
627
  let count = this.indicatorsAsCol && this.hideIndicatorName && this.colDimensionKeys[this.colDimensionKeys.length - 1] === this.indicatorDimensionKey ? this.columnDimensionTree.totalLevel - 1 : this.columnDimensionTree.totalLevel;
499
628
  return this.columnHeaderTitle && (count += 1), this._table.isPivotChart() && this.indicatorsAsCol && !this.hasTwoIndicatorAxes && (0,
500
629
  get_chart_spec_1.checkHasCartesianChart)(this.indicatorsDefine) && (count -= 1),
501
- 0 !== count || !this.dataset || this.dataset.customColTree || this.dataset.customRowTree ? !this.dataset || 0 !== (null !== (_j = null === (_h = this.dataset.records) || void 0 === _h ? void 0 : _h.length) && void 0 !== _j ? _j : 0) || this.dataset.customColTree || this.dataset.customRowTree || "column" === this.cornerSetting.titleOnDimension && (count = null !== (_k = this.columnsDefine.length) && void 0 !== _k ? _k : 0,
502
- !this.hideIndicatorName && this.indicatorsAsCol && count++) : "row" === this.cornerSetting.titleOnDimension ? count = 1 : 0 === (null !== (_f = null === (_e = this.dataset.records) || void 0 === _e ? void 0 : _e.length) && void 0 !== _f ? _f : 0) && "column" === this.cornerSetting.titleOnDimension && (count = null !== (_g = this.columnsDefine.length) && void 0 !== _g ? _g : 0),
630
+ 0 !== count || !this.dataset || this.dataset.customColTree || this.dataset.customRowTree ? !this.dataset || 0 !== (null !== (_j = null === (_h = this.dataset.records) || void 0 === _h ? void 0 : _h.length) && void 0 !== _j ? _j : 0) || this.dataset.customColTree || this.dataset.customRowTree || "column" !== this.cornerSetting.titleOnDimension && "all" !== this.cornerSetting.titleOnDimension || (count = null !== (_k = this.columnsDefine.length) && void 0 !== _k ? _k : 0,
631
+ !this.hideIndicatorName && this.indicatorsAsCol && count++) : "row" === this.cornerSetting.titleOnDimension ? count = 1 : 0 !== (null !== (_f = null === (_e = this.dataset.records) || void 0 === _e ? void 0 : _e.length) && void 0 !== _f ? _f : 0) || "column" !== this.cornerSetting.titleOnDimension && "all" !== this.cornerSetting.titleOnDimension || (count = null !== (_g = this.columnsDefine.length) && void 0 !== _g ? _g : 0),
503
632
  void (this.columnHeaderLevelCount = count);
504
633
  }
505
634
  this.columnHeaderLevelCount = this.indicatorsAsCol ? this.hideIndicatorName ? 0 : 1 : 0;
@@ -514,8 +643,8 @@ class PivotHeaderLayoutMap {
514
643
  const rowLevelCount = this.rowDimensionTree.totalLevel;
515
644
  let count = rowLevelCount;
516
645
  return this.indicatorsAsCol || this.hideIndicatorName && this.rowDimensionKeys[this.rowDimensionKeys.length - 1] === this.indicatorDimensionKey && (count = rowLevelCount - 1),
517
- this.rowHeaderTitle && (count += 1), 0 !== count || !this.dataset || this.dataset.customColTree || this.dataset.customRowTree ? !this.dataset || 0 !== (null !== (_g = null === (_f = this.dataset.records) || void 0 === _f ? void 0 : _f.length) && void 0 !== _g ? _g : 0) || this.dataset.customColTree || this.dataset.customRowTree || "row" === this.cornerSetting.titleOnDimension && (count = this.rowsDefine.length,
518
- this.hideIndicatorName || this.indicatorsAsCol || count++) : "column" === this.cornerSetting.titleOnDimension ? count = 1 : 0 === (null !== (_d = null === (_c = this.dataset.records) || void 0 === _c ? void 0 : _c.length) && void 0 !== _d ? _d : 0) && "row" === this.cornerSetting.titleOnDimension && (count = null !== (_e = this.rowsDefine.length) && void 0 !== _e ? _e : 0),
646
+ this.rowHeaderTitle && (count += 1), 0 !== count || !this.dataset || this.dataset.customColTree || this.dataset.customRowTree ? !this.dataset || 0 !== (null !== (_g = null === (_f = this.dataset.records) || void 0 === _f ? void 0 : _f.length) && void 0 !== _g ? _g : 0) || this.dataset.customColTree || this.dataset.customRowTree || "row" !== this.cornerSetting.titleOnDimension && "all" !== this.cornerSetting.titleOnDimension || (count = this.rowsDefine.length,
647
+ this.hideIndicatorName || this.indicatorsAsCol || count++) : "column" === this.cornerSetting.titleOnDimension ? count = 1 : 0 !== (null !== (_d = null === (_c = this.dataset.records) || void 0 === _c ? void 0 : _c.length) && void 0 !== _d ? _d : 0) || "row" !== this.cornerSetting.titleOnDimension && "all" !== this.cornerSetting.titleOnDimension || (count = null !== (_e = this.rowsDefine.length) && void 0 !== _e ? _e : 0),
519
648
  void (this.rowHeaderLevelCount = count);
520
649
  }
521
650
  this.rowHeaderLevelCount = this.indicatorsAsCol || this.hideIndicatorName ? 0 : 1;