@visactor/vtable 1.26.6 → 1.26.7

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 (289) hide show
  1. package/cjs/ListTable-all.js +5 -5
  2. package/cjs/ListTable-all.js.map +1 -1
  3. package/cjs/ListTable.d.ts +1 -1
  4. package/cjs/ListTable.js +5 -3
  5. package/cjs/ListTable.js.map +1 -1
  6. package/cjs/PivotChart.js +5 -4
  7. package/cjs/PivotChart.js.map +1 -1
  8. package/cjs/PivotTable-all.js +4 -3
  9. package/cjs/PivotTable-all.js.map +1 -1
  10. package/cjs/body-helper/body-helper.d.ts +1 -1
  11. package/cjs/body-helper/body-helper.js +1 -0
  12. package/cjs/body-helper/body-helper.js.map +1 -1
  13. package/cjs/components/tooltip/TooltipHandler.d.ts +4 -0
  14. package/cjs/components/tooltip/TooltipHandler.js +32 -7
  15. package/cjs/components/tooltip/TooltipHandler.js.map +1 -1
  16. package/cjs/core/BaseTable.js +7 -4
  17. package/cjs/core/BaseTable.js.map +1 -1
  18. package/cjs/core/TABLE_EVENT_TYPE.d.ts +1 -0
  19. package/cjs/core/TABLE_EVENT_TYPE.js +1 -0
  20. package/cjs/core/TABLE_EVENT_TYPE.js.map +1 -1
  21. package/cjs/core/tableHelper.js +1 -2
  22. package/cjs/data/DataSource.js +2 -1
  23. package/cjs/event/event.js +1 -1
  24. package/cjs/event/helper.js +1 -1
  25. package/cjs/event/media-click.js +145 -13
  26. package/cjs/event/media-click.js.map +1 -1
  27. package/cjs/event/scroll.js +1 -1
  28. package/cjs/event/sparkline-event.js +1 -1
  29. package/cjs/event/util.js +1 -1
  30. package/cjs/header-helper/header-helper.js +3 -1
  31. package/cjs/header-helper/header-helper.js.map +1 -1
  32. package/cjs/index.d.ts +3 -3
  33. package/cjs/index.js +1 -1
  34. package/cjs/index.js.map +1 -1
  35. package/cjs/plugins/custom-cell-style.js +1 -1
  36. package/cjs/plugins/index.js +1 -2
  37. package/cjs/plugins/interface.js +1 -1
  38. package/cjs/plugins/invert-highlight.js +1 -1
  39. package/cjs/plugins/list-tree-stick-cell.js +1 -1
  40. package/cjs/plugins/plugin-manager.js +1 -1
  41. package/cjs/scenegraph/group-creater/cell-helper.d.ts +4 -2
  42. package/cjs/scenegraph/group-creater/cell-helper.js +67 -42
  43. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  44. package/cjs/scenegraph/group-creater/cell-type/audio-cell.d.ts +7 -0
  45. package/cjs/scenegraph/group-creater/cell-type/audio-cell.js +83 -0
  46. package/cjs/scenegraph/group-creater/cell-type/audio-cell.js.map +1 -0
  47. package/cjs/scenegraph/group-creater/cell-type/button-cell.d.ts +1 -1
  48. package/cjs/scenegraph/group-creater/cell-type/button-cell.js +5 -4
  49. package/cjs/scenegraph/group-creater/cell-type/button-cell.js.map +1 -1
  50. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js +2 -2
  51. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  52. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.d.ts +1 -1
  53. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js +5 -4
  54. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  55. package/cjs/scenegraph/group-creater/cell-type/image-cell.d.ts +1 -1
  56. package/cjs/scenegraph/group-creater/cell-type/image-cell.js +43 -15
  57. package/cjs/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  58. package/cjs/scenegraph/group-creater/cell-type/index.d.ts +1 -0
  59. package/cjs/scenegraph/group-creater/cell-type/index.js +8 -2
  60. package/cjs/scenegraph/group-creater/cell-type/index.js.map +1 -1
  61. package/cjs/scenegraph/group-creater/cell-type/media-cell-helper.d.ts +13 -0
  62. package/cjs/scenegraph/group-creater/cell-type/media-cell-helper.js +64 -0
  63. package/cjs/scenegraph/group-creater/cell-type/media-cell-helper.js.map +1 -0
  64. package/cjs/scenegraph/group-creater/cell-type/radio-cell.d.ts +1 -1
  65. package/cjs/scenegraph/group-creater/cell-type/radio-cell.js +23 -7
  66. package/cjs/scenegraph/group-creater/cell-type/radio-cell.js.map +1 -1
  67. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.d.ts +1 -1
  68. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js +6 -5
  69. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -1
  70. package/cjs/scenegraph/group-creater/cell-type/switch-cell.d.ts +1 -1
  71. package/cjs/scenegraph/group-creater/cell-type/switch-cell.js +5 -4
  72. package/cjs/scenegraph/group-creater/cell-type/switch-cell.js.map +1 -1
  73. package/cjs/scenegraph/group-creater/cell-type/video-cell.d.ts +1 -1
  74. package/cjs/scenegraph/group-creater/cell-type/video-cell.js +44 -23
  75. package/cjs/scenegraph/group-creater/cell-type/video-cell.js.map +1 -1
  76. package/cjs/scenegraph/group-creater/column-helper.js +14 -7
  77. package/cjs/scenegraph/group-creater/column-helper.js.map +1 -1
  78. package/cjs/scenegraph/group-creater/progress/proxy.d.ts +1 -0
  79. package/cjs/scenegraph/group-creater/progress/proxy.js +11 -5
  80. package/cjs/scenegraph/group-creater/progress/proxy.js.map +1 -1
  81. package/cjs/scenegraph/icon/icon-update.js +1 -0
  82. package/cjs/scenegraph/icon/icon-update.js.map +1 -1
  83. package/cjs/scenegraph/layout/compute-col-width.js +8 -3
  84. package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
  85. package/cjs/scenegraph/layout/compute-row-height.js +18 -5
  86. package/cjs/scenegraph/layout/compute-row-height.js.map +1 -1
  87. package/cjs/scenegraph/layout/update-height.js +1 -1
  88. package/cjs/scenegraph/layout/update-height.js.map +1 -1
  89. package/cjs/scenegraph/layout/update-width.js +1 -1
  90. package/cjs/scenegraph/layout/update-width.js.map +1 -1
  91. package/cjs/scenegraph/scenegraph.d.ts +1 -0
  92. package/cjs/scenegraph/scenegraph.js +53 -46
  93. package/cjs/scenegraph/scenegraph.js.map +1 -1
  94. package/cjs/scenegraph/stick-text/index.js +46 -20
  95. package/cjs/scenegraph/stick-text/index.js.map +1 -1
  96. package/cjs/scenegraph/utils/deal-promise-data.d.ts +1 -1
  97. package/cjs/scenegraph/utils/deal-promise-data.js +2 -2
  98. package/cjs/scenegraph/utils/deal-promise-data.js.map +1 -1
  99. package/cjs/state/cell-move/index.js +6 -3
  100. package/cjs/state/cell-move/index.js.map +1 -1
  101. package/cjs/state/checkbox/checkbox.d.ts +3 -1
  102. package/cjs/state/checkbox/checkbox.js +53 -34
  103. package/cjs/state/checkbox/checkbox.js.map +1 -1
  104. package/cjs/state/radio/radio.d.ts +3 -1
  105. package/cjs/state/radio/radio.js +69 -12
  106. package/cjs/state/radio/radio.js.map +1 -1
  107. package/cjs/state/state.d.ts +3 -2
  108. package/cjs/state/state.js +6 -3
  109. package/cjs/state/state.js.map +1 -1
  110. package/cjs/tools/media.d.ts +1 -0
  111. package/cjs/tools/media.js +19 -0
  112. package/cjs/tools/media.js.map +1 -0
  113. package/cjs/ts-types/base-table.d.ts +1 -0
  114. package/cjs/ts-types/base-table.js.map +1 -1
  115. package/cjs/ts-types/column/type.d.ts +2 -2
  116. package/cjs/ts-types/column/type.js.map +1 -1
  117. package/cjs/ts-types/events.d.ts +3 -1
  118. package/cjs/ts-types/events.js.map +1 -1
  119. package/cjs/ts-types/icon.d.ts +1 -0
  120. package/cjs/ts-types/icon.js.map +1 -1
  121. package/cjs/ts-types/list-table/define/image-define.d.ts +10 -0
  122. package/cjs/ts-types/list-table/define/image-define.js.map +1 -1
  123. package/cjs/ts-types/list-table/define/index.d.ts +5 -4
  124. package/cjs/ts-types/list-table/define/index.js.map +1 -1
  125. package/cjs/ts-types/list-table/layout-map/api.d.ts +4 -4
  126. package/cjs/ts-types/list-table/layout-map/api.js.map +1 -1
  127. package/cjs/ts-types/list-table/layout-map/index.d.ts +1 -1
  128. package/cjs/ts-types/list-table/layout-map/index.js.map +1 -1
  129. package/cjs/ts-types/menu.d.ts +12 -0
  130. package/cjs/ts-types/menu.js.map +1 -1
  131. package/cjs/ts-types/pivot-table/dimension/image-dimension.d.ts +5 -0
  132. package/cjs/ts-types/pivot-table/dimension/image-dimension.js.map +1 -1
  133. package/cjs/ts-types/pivot-table/dimension/index.d.ts +5 -3
  134. package/cjs/ts-types/pivot-table/dimension/index.js.map +1 -1
  135. package/cjs/ts-types/pivot-table/indicator/image-indicator.d.ts +10 -0
  136. package/cjs/ts-types/pivot-table/indicator/image-indicator.js.map +1 -1
  137. package/cjs/ts-types/pivot-table/indicator/index.d.ts +3 -3
  138. package/cjs/ts-types/pivot-table/indicator/index.js.map +1 -1
  139. package/cjs/ts-types/table-engine.d.ts +6 -3
  140. package/cjs/ts-types/table-engine.js.map +1 -1
  141. package/cjs/ts-types/tooltip.d.ts +1 -0
  142. package/cjs/ts-types/tooltip.js.map +1 -1
  143. package/cjs/vrender.js.map +1 -1
  144. package/dist/vtable.js +1127 -325
  145. package/dist/vtable.min.js +1 -1
  146. package/es/ListTable-all.js +4 -4
  147. package/es/ListTable-all.js.map +1 -1
  148. package/es/ListTable.d.ts +1 -1
  149. package/es/ListTable.js +5 -3
  150. package/es/ListTable.js.map +1 -1
  151. package/es/PivotChart.js +4 -4
  152. package/es/PivotChart.js.map +1 -1
  153. package/es/PivotTable-all.js +4 -4
  154. package/es/PivotTable-all.js.map +1 -1
  155. package/es/body-helper/body-helper.d.ts +1 -1
  156. package/es/body-helper/body-helper.js +1 -0
  157. package/es/body-helper/body-helper.js.map +1 -1
  158. package/es/components/tooltip/TooltipHandler.d.ts +4 -0
  159. package/es/components/tooltip/TooltipHandler.js +32 -7
  160. package/es/components/tooltip/TooltipHandler.js.map +1 -1
  161. package/es/core/BaseTable.js +7 -4
  162. package/es/core/BaseTable.js.map +1 -1
  163. package/es/core/TABLE_EVENT_TYPE.d.ts +1 -0
  164. package/es/core/TABLE_EVENT_TYPE.js +1 -0
  165. package/es/core/TABLE_EVENT_TYPE.js.map +1 -1
  166. package/es/core/tableHelper.js +1 -2
  167. package/es/data/DataSource.js +2 -1
  168. package/es/event/event.js +1 -1
  169. package/es/event/helper.js +1 -1
  170. package/es/event/media-click.js +148 -12
  171. package/es/event/media-click.js.map +1 -1
  172. package/es/event/scroll.js +1 -1
  173. package/es/event/sparkline-event.js +1 -1
  174. package/es/event/util.js +1 -1
  175. package/es/header-helper/header-helper.js +3 -1
  176. package/es/header-helper/header-helper.js.map +1 -1
  177. package/es/index.d.ts +3 -3
  178. package/es/index.js +1 -1
  179. package/es/index.js.map +1 -1
  180. package/es/plugins/custom-cell-style.js +1 -1
  181. package/es/plugins/index.js +1 -2
  182. package/es/plugins/interface.js +1 -1
  183. package/es/plugins/invert-highlight.js +1 -1
  184. package/es/plugins/list-tree-stick-cell.js +1 -1
  185. package/es/plugins/plugin-manager.js +1 -1
  186. package/es/scenegraph/group-creater/cell-helper.d.ts +4 -2
  187. package/es/scenegraph/group-creater/cell-helper.js +67 -40
  188. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  189. package/es/scenegraph/group-creater/cell-type/audio-cell.d.ts +7 -0
  190. package/es/scenegraph/group-creater/cell-type/audio-cell.js +89 -0
  191. package/es/scenegraph/group-creater/cell-type/audio-cell.js.map +1 -0
  192. package/es/scenegraph/group-creater/cell-type/button-cell.d.ts +1 -1
  193. package/es/scenegraph/group-creater/cell-type/button-cell.js +5 -4
  194. package/es/scenegraph/group-creater/cell-type/button-cell.js.map +1 -1
  195. package/es/scenegraph/group-creater/cell-type/chart-cell.js +2 -2
  196. package/es/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  197. package/es/scenegraph/group-creater/cell-type/checkbox-cell.d.ts +1 -1
  198. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js +5 -4
  199. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  200. package/es/scenegraph/group-creater/cell-type/image-cell.d.ts +1 -1
  201. package/es/scenegraph/group-creater/cell-type/image-cell.js +43 -14
  202. package/es/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  203. package/es/scenegraph/group-creater/cell-type/index.d.ts +1 -0
  204. package/es/scenegraph/group-creater/cell-type/index.js +6 -0
  205. package/es/scenegraph/group-creater/cell-type/index.js.map +1 -1
  206. package/es/scenegraph/group-creater/cell-type/media-cell-helper.d.ts +13 -0
  207. package/es/scenegraph/group-creater/cell-type/media-cell-helper.js +56 -0
  208. package/es/scenegraph/group-creater/cell-type/media-cell-helper.js.map +1 -0
  209. package/es/scenegraph/group-creater/cell-type/radio-cell.d.ts +1 -1
  210. package/es/scenegraph/group-creater/cell-type/radio-cell.js +23 -7
  211. package/es/scenegraph/group-creater/cell-type/radio-cell.js.map +1 -1
  212. package/es/scenegraph/group-creater/cell-type/spark-line-cell.d.ts +1 -1
  213. package/es/scenegraph/group-creater/cell-type/spark-line-cell.js +6 -5
  214. package/es/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -1
  215. package/es/scenegraph/group-creater/cell-type/switch-cell.d.ts +1 -1
  216. package/es/scenegraph/group-creater/cell-type/switch-cell.js +5 -4
  217. package/es/scenegraph/group-creater/cell-type/switch-cell.js.map +1 -1
  218. package/es/scenegraph/group-creater/cell-type/video-cell.d.ts +1 -1
  219. package/es/scenegraph/group-creater/cell-type/video-cell.js +47 -22
  220. package/es/scenegraph/group-creater/cell-type/video-cell.js.map +1 -1
  221. package/es/scenegraph/group-creater/column-helper.js +14 -8
  222. package/es/scenegraph/group-creater/column-helper.js.map +1 -1
  223. package/es/scenegraph/group-creater/progress/proxy.d.ts +1 -0
  224. package/es/scenegraph/group-creater/progress/proxy.js +11 -5
  225. package/es/scenegraph/group-creater/progress/proxy.js.map +1 -1
  226. package/es/scenegraph/icon/icon-update.js +1 -0
  227. package/es/scenegraph/icon/icon-update.js.map +1 -1
  228. package/es/scenegraph/layout/compute-col-width.js +8 -3
  229. package/es/scenegraph/layout/compute-col-width.js.map +1 -1
  230. package/es/scenegraph/layout/compute-row-height.js +17 -5
  231. package/es/scenegraph/layout/compute-row-height.js.map +1 -1
  232. package/es/scenegraph/layout/update-height.js +1 -1
  233. package/es/scenegraph/layout/update-height.js.map +1 -1
  234. package/es/scenegraph/layout/update-width.js +1 -1
  235. package/es/scenegraph/layout/update-width.js.map +1 -1
  236. package/es/scenegraph/scenegraph.d.ts +1 -0
  237. package/es/scenegraph/scenegraph.js +53 -46
  238. package/es/scenegraph/scenegraph.js.map +1 -1
  239. package/es/scenegraph/stick-text/index.js +46 -18
  240. package/es/scenegraph/stick-text/index.js.map +1 -1
  241. package/es/scenegraph/utils/deal-promise-data.d.ts +1 -1
  242. package/es/scenegraph/utils/deal-promise-data.js +2 -2
  243. package/es/scenegraph/utils/deal-promise-data.js.map +1 -1
  244. package/es/state/cell-move/index.js +6 -3
  245. package/es/state/cell-move/index.js.map +1 -1
  246. package/es/state/checkbox/checkbox.d.ts +3 -1
  247. package/es/state/checkbox/checkbox.js +53 -34
  248. package/es/state/checkbox/checkbox.js.map +1 -1
  249. package/es/state/radio/radio.d.ts +3 -1
  250. package/es/state/radio/radio.js +70 -13
  251. package/es/state/radio/radio.js.map +1 -1
  252. package/es/state/state.d.ts +3 -2
  253. package/es/state/state.js +6 -2
  254. package/es/state/state.js.map +1 -1
  255. package/es/tools/media.d.ts +1 -0
  256. package/es/tools/media.js +11 -0
  257. package/es/tools/media.js.map +1 -0
  258. package/es/ts-types/base-table.d.ts +1 -0
  259. package/es/ts-types/base-table.js.map +1 -1
  260. package/es/ts-types/column/type.d.ts +2 -2
  261. package/es/ts-types/column/type.js.map +1 -1
  262. package/es/ts-types/events.d.ts +3 -1
  263. package/es/ts-types/events.js.map +1 -1
  264. package/es/ts-types/icon.d.ts +1 -0
  265. package/es/ts-types/icon.js.map +1 -1
  266. package/es/ts-types/list-table/define/image-define.d.ts +10 -0
  267. package/es/ts-types/list-table/define/image-define.js.map +1 -1
  268. package/es/ts-types/list-table/define/index.d.ts +5 -4
  269. package/es/ts-types/list-table/define/index.js.map +1 -1
  270. package/es/ts-types/list-table/layout-map/api.d.ts +4 -4
  271. package/es/ts-types/list-table/layout-map/api.js.map +1 -1
  272. package/es/ts-types/list-table/layout-map/index.d.ts +1 -1
  273. package/es/ts-types/list-table/layout-map/index.js.map +1 -1
  274. package/es/ts-types/menu.d.ts +12 -0
  275. package/es/ts-types/menu.js.map +1 -1
  276. package/es/ts-types/pivot-table/dimension/image-dimension.d.ts +5 -0
  277. package/es/ts-types/pivot-table/dimension/image-dimension.js.map +1 -1
  278. package/es/ts-types/pivot-table/dimension/index.d.ts +5 -3
  279. package/es/ts-types/pivot-table/dimension/index.js.map +1 -1
  280. package/es/ts-types/pivot-table/indicator/image-indicator.d.ts +10 -0
  281. package/es/ts-types/pivot-table/indicator/image-indicator.js.map +1 -1
  282. package/es/ts-types/pivot-table/indicator/index.d.ts +3 -3
  283. package/es/ts-types/pivot-table/indicator/index.js.map +1 -1
  284. package/es/ts-types/table-engine.d.ts +6 -3
  285. package/es/ts-types/table-engine.js.map +1 -1
  286. package/es/ts-types/tooltip.d.ts +1 -0
  287. package/es/ts-types/tooltip.js.map +1 -1
  288. package/es/vrender.js.map +1 -1
  289. package/package.json +4 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/scenegraph/group-creater/cell-type/button-cell.ts"],"names":[],"mappings":"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","file":"button-cell.js","sourcesContent":["import { Tag } from './../../../vrender';\nimport type { IThemeSpec, TagAttributes } from './../../../vrender';\nimport type { CellRange, ButtonColumnDefine, ButtonStyleOption, ButtonStyle } from '../../../ts-types';\nimport type { BaseTableAPI } from '../../../ts-types/base-table';\nimport { Group } from '../../graphic/group';\nimport { getCellBorderStrokeWidth } from '../../utils/cell-border-stroke-width';\nimport { getProp } from '../../utils/get-prop';\nimport { isObject } from '@visactor/vutils';\nimport { getOrApply } from '../../../tools/helper';\nimport { getHierarchyOffset } from '../../utils/get-hierarchy-offset';\nimport { dealWithIconLayout } from '../../utils/text-icon-layout';\n\nexport function createButtonCellGroup(\n cellGroup: Group | null,\n columnGroup: Group,\n xOrigin: number,\n yOrigin: number,\n col: number,\n row: number,\n colWidth: number,\n width: number,\n height: number,\n padding: number[],\n textAlign: CanvasTextAlign,\n textBaseline: CanvasTextBaseline,\n mayHaveIcon: boolean,\n table: BaseTableAPI,\n cellTheme: IThemeSpec,\n define: ButtonColumnDefine,\n range: CellRange | undefined,\n isAsync: boolean\n) {\n // cell\n if (!cellGroup) {\n const strokeArrayWidth = getCellBorderStrokeWidth(col, row, cellTheme, table);\n\n if (isAsync) {\n cellGroup = table.scenegraph.highPerformanceGetCell(col, row, true);\n if (cellGroup && cellGroup.role === 'cell') {\n cellGroup.setAttributes({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n }\n }\n if (!cellGroup || cellGroup.role !== 'cell') {\n cellGroup = new Group({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n cellGroup.role = 'cell';\n cellGroup.col = col;\n cellGroup.row = row;\n cellGroup = columnGroup?.addCellGroup(cellGroup) ?? cellGroup;\n }\n }\n\n let icons;\n if (mayHaveIcon) {\n let iconCol = col;\n let iconRow = row;\n if (range) {\n iconCol = range.start.col;\n iconRow = range.start.row;\n }\n icons = table.getCellIcons(iconCol, iconRow);\n }\n\n let iconWidth = 0;\n let cellLeftIconWidth = 0;\n let cellRightIconWidth = 0;\n if (Array.isArray(icons) && icons.length !== 0) {\n const { leftIconWidth, rightIconWidth, absoluteLeftIconWidth, absoluteRightIconWidth } = dealWithIconLayout(\n icons,\n cellGroup,\n range,\n table\n );\n\n iconWidth = leftIconWidth + rightIconWidth;\n cellLeftIconWidth = leftIconWidth;\n cellRightIconWidth = rightIconWidth;\n\n // 更新各个部分横向位置\n cellGroup.forEachChildren((child: any) => {\n if (child.role === 'icon-left') {\n child.setAttribute('x', child.attribute.x + padding[3]);\n } else if (child.role === 'icon-right') {\n child.setAttribute('x', child.attribute.x + width - rightIconWidth - padding[1]);\n } else if (child.role === 'icon-absolute-right') {\n child.setAttribute('x', child.attribute.x + width - absoluteRightIconWidth - padding[1]);\n }\n });\n\n // 更新各个部分纵向位置\n cellGroup.forEachChildren((child: any) => {\n if (textBaseline === 'middle') {\n child.setAttribute('y', (height - child.AABBBounds.height()) / 2);\n } else if (textBaseline === 'bottom') {\n child.setAttribute('y', height - child.AABBBounds.height() - padding[2]);\n } else {\n child.setAttribute('y', padding[0]);\n }\n });\n }\n\n const buttonComponent = createButton(\n col,\n row,\n colWidth - iconWidth,\n width,\n height,\n padding,\n cellTheme,\n define,\n table\n );\n if (buttonComponent) {\n cellGroup.appendChild(buttonComponent);\n }\n\n // buttonComponent.render();\n\n width -= padding[1] + padding[3] + iconWidth;\n height -= padding[0] + padding[2];\n if (textAlign === 'center') {\n buttonComponent.setAttribute(\n 'x',\n padding[3] + cellLeftIconWidth + (width - buttonComponent.AABBBounds.width()) / 2\n );\n } else if (textAlign === 'right') {\n buttonComponent.setAttribute('x', padding[3] + cellLeftIconWidth + width - buttonComponent.AABBBounds.width());\n } else {\n buttonComponent.setAttribute('x', padding[3] + cellLeftIconWidth);\n }\n\n if (textBaseline === 'middle') {\n buttonComponent.setAttribute('y', padding[0] + (height - buttonComponent.AABBBounds.height()) / 2);\n } else if (textBaseline === 'bottom') {\n buttonComponent.setAttribute('y', padding[0] + height - buttonComponent.AABBBounds.height());\n } else {\n buttonComponent.setAttribute('y', padding[0]);\n }\n\n return cellGroup;\n}\n\nfunction createButton(\n col: number,\n row: number,\n colWidth: number | 'auto',\n cellWidth: number,\n cellHeight: number,\n padding: number[],\n cellTheme: IThemeSpec,\n define: ButtonColumnDefine,\n table: BaseTableAPI\n) {\n const style = table._getCellStyle(col, row) as ButtonStyle;\n const buttonColor = getProp('buttonColor', style, col, row, table);\n const buttonBorderColor = getProp('buttonBorderColor', style, col, row, table);\n const buttonLineWidth = getProp('buttonLineWidth', style, col, row, table);\n const buttonBorderRadius = getProp('buttonBorderRadius', style, col, row, table);\n const buttonHoverColor = getProp('buttonHoverColor', style, col, row, table);\n const buttonHoverBorderColor = getProp('buttonHoverBorderColor', style, col, row, table);\n const buttonPadding = getProp('buttonPadding', style, col, row, table);\n const buttonTextHoverColor = getProp('buttonTextHoverColor', style, col, row, table);\n const buttonDisableColor = getProp('buttonDisableColor', style, col, row, table);\n const buttonDisableBorderColor = getProp('buttonDisableBorderColor', style, col, row, table);\n const buttonTextDisableColor = getProp('buttonTextDisableColor', style, col, row, table);\n\n const value = table.getCellValue(col, row) as string | { text: string; checked: boolean; disable: boolean } | boolean;\n const dataValue = table.getCellOriginValue(col, row);\n const hierarchyOffset = getHierarchyOffset(col, row, table);\n const cellStyle = table._getCellStyle(col, row) as ButtonStyleOption; // to be fixed\n const autoWrapText = cellStyle.autoWrapText ?? table.internalProps.autoWrapText;\n const { lineClamp } = cellStyle;\n const autoColWidth = colWidth === 'auto';\n const autoRowHeight = table.isAutoRowHeight(row);\n\n const { disable, text } = define;\n const isDisable = getOrApply(disable as any, {\n col,\n row,\n table,\n context: null,\n value,\n dataValue\n });\n const buttonTextValue = getOrApply(text as any, {\n col,\n row,\n table,\n context: null,\n value,\n dataValue\n });\n\n const buttonText = buttonTextValue ?? (value as string) ?? '';\n\n const attribute = {\n maxLineWidth: autoColWidth ? Infinity : cellWidth - (padding[1] + padding[3] + hierarchyOffset),\n // fill: true,\n textAlign: 'left',\n textBaseline: 'top',\n autoWrapText,\n lineClamp,\n wordBreak: 'break-word',\n // widthLimit: autoColWidth ? -1 : colWidth - (padding[1] + padding[3]),\n heightLimit: autoRowHeight ? -1 : cellHeight - Math.floor(padding[0] + padding[2]),\n pickable: false,\n dx: hierarchyOffset,\n whiteSpace: buttonText.length === 1 && !autoWrapText ? 'no-wrap' : 'normal'\n };\n const testAttribute = cellTheme.text ? (Object.assign({}, cellTheme.text, attribute) as any) : attribute;\n\n const buttonAttributes: TagAttributes = {\n x: 0,\n y: 0,\n cursor: isDisable ? 'not-allowed' : 'pointer',\n disable: isDisable,\n childrenPickable: false,\n text: buttonText.length === 1 ? buttonText[0] : buttonText,\n textStyle: testAttribute,\n padding: buttonPadding,\n panel: {\n visible: true,\n fill: isDisable ? buttonDisableColor : buttonColor,\n stroke: isDisable ? buttonDisableBorderColor : buttonBorderColor,\n lineWidth: buttonLineWidth,\n cornerRadius: buttonBorderRadius\n },\n state: {\n text: {\n hover: {}\n },\n panel: {\n hover: {\n fill: buttonHoverColor,\n stroke: buttonHoverBorderColor\n }\n }\n }\n } as any;\n buttonTextDisableColor && (buttonAttributes.state.text.fill = buttonTextDisableColor);\n buttonTextHoverColor && (buttonAttributes.state.text.hover.fill = buttonTextHoverColor);\n\n const buttonComponent = new Tag(buttonAttributes);\n buttonComponent.name = 'button';\n\n if (!isDisable) {\n buttonComponent.addEventListener('mouseenter', () => {\n buttonComponent.addState('hover', true, false);\n buttonComponent.stage.renderNextFrame();\n });\n buttonComponent.addEventListener('mouseleave', () => {\n buttonComponent.removeState('hover', false);\n buttonComponent.stage.renderNextFrame();\n });\n }\n\n return buttonComponent;\n}\n\nexport type CreateButtonCellGroup = typeof createButtonCellGroup;\n"]}
1
+ {"version":3,"sources":["../src/scenegraph/group-creater/cell-type/button-cell.ts"],"names":[],"mappings":"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","file":"button-cell.js","sourcesContent":["import { Tag } from './../../../vrender';\nimport type { IThemeSpec, TagAttributes } from './../../../vrender';\nimport type { CellRange, ButtonColumnDefine, ButtonStyleOption, ButtonStyle } from '../../../ts-types';\nimport type { BaseTableAPI } from '../../../ts-types/base-table';\nimport { Group } from '../../graphic/group';\nimport { getCellBorderStrokeWidth } from '../../utils/cell-border-stroke-width';\nimport { getProp } from '../../utils/get-prop';\nimport { isObject } from '@visactor/vutils';\nimport { getOrApply } from '../../../tools/helper';\nimport { getHierarchyOffset } from '../../utils/get-hierarchy-offset';\nimport { dealWithIconLayout } from '../../utils/text-icon-layout';\n\nexport function createButtonCellGroup(\n cellGroup: Group | null,\n columnGroup: Group,\n xOrigin: number,\n yOrigin: number,\n col: number,\n row: number,\n colWidth: number,\n width: number,\n height: number,\n padding: number[],\n textAlign: CanvasTextAlign,\n textBaseline: CanvasTextBaseline,\n mayHaveIcon: boolean,\n table: BaseTableAPI,\n cellTheme: IThemeSpec,\n define: ButtonColumnDefine,\n range: CellRange | undefined,\n isAsync: boolean,\n cellValue?: any\n) {\n const value = arguments.length >= 19 ? cellValue : table.getCellValue(col, row);\n // cell\n if (!cellGroup) {\n const strokeArrayWidth = getCellBorderStrokeWidth(col, row, cellTheme, table);\n\n if (isAsync) {\n cellGroup = table.scenegraph.highPerformanceGetCell(col, row, true);\n if (cellGroup && cellGroup.role === 'cell') {\n cellGroup.setAttributes({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n }\n }\n if (!cellGroup || cellGroup.role !== 'cell') {\n cellGroup = new Group({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n cellGroup.role = 'cell';\n cellGroup.col = col;\n cellGroup.row = row;\n cellGroup = columnGroup?.addCellGroup(cellGroup) ?? cellGroup;\n }\n }\n\n let icons;\n if (mayHaveIcon) {\n let iconCol = col;\n let iconRow = row;\n if (range) {\n iconCol = range.start.col;\n iconRow = range.start.row;\n }\n icons = table.getCellIcons(iconCol, iconRow);\n }\n\n let iconWidth = 0;\n let cellLeftIconWidth = 0;\n let cellRightIconWidth = 0;\n if (Array.isArray(icons) && icons.length !== 0) {\n const { leftIconWidth, rightIconWidth, absoluteLeftIconWidth, absoluteRightIconWidth } = dealWithIconLayout(\n icons,\n cellGroup,\n range,\n table\n );\n\n iconWidth = leftIconWidth + rightIconWidth;\n cellLeftIconWidth = leftIconWidth;\n cellRightIconWidth = rightIconWidth;\n\n // 更新各个部分横向位置\n cellGroup.forEachChildren((child: any) => {\n if (child.role === 'icon-left') {\n child.setAttribute('x', child.attribute.x + padding[3]);\n } else if (child.role === 'icon-right') {\n child.setAttribute('x', child.attribute.x + width - rightIconWidth - padding[1]);\n } else if (child.role === 'icon-absolute-right') {\n child.setAttribute('x', child.attribute.x + width - absoluteRightIconWidth - padding[1]);\n }\n });\n\n // 更新各个部分纵向位置\n cellGroup.forEachChildren((child: any) => {\n if (textBaseline === 'middle') {\n child.setAttribute('y', (height - child.AABBBounds.height()) / 2);\n } else if (textBaseline === 'bottom') {\n child.setAttribute('y', height - child.AABBBounds.height() - padding[2]);\n } else {\n child.setAttribute('y', padding[0]);\n }\n });\n }\n\n const buttonComponent = createButton(\n col,\n row,\n colWidth - iconWidth,\n width,\n height,\n padding,\n cellTheme,\n define,\n table,\n value\n );\n if (buttonComponent) {\n cellGroup.appendChild(buttonComponent);\n }\n\n // buttonComponent.render();\n\n width -= padding[1] + padding[3] + iconWidth;\n height -= padding[0] + padding[2];\n if (textAlign === 'center') {\n buttonComponent.setAttribute(\n 'x',\n padding[3] + cellLeftIconWidth + (width - buttonComponent.AABBBounds.width()) / 2\n );\n } else if (textAlign === 'right') {\n buttonComponent.setAttribute('x', padding[3] + cellLeftIconWidth + width - buttonComponent.AABBBounds.width());\n } else {\n buttonComponent.setAttribute('x', padding[3] + cellLeftIconWidth);\n }\n\n if (textBaseline === 'middle') {\n buttonComponent.setAttribute('y', padding[0] + (height - buttonComponent.AABBBounds.height()) / 2);\n } else if (textBaseline === 'bottom') {\n buttonComponent.setAttribute('y', padding[0] + height - buttonComponent.AABBBounds.height());\n } else {\n buttonComponent.setAttribute('y', padding[0]);\n }\n\n return cellGroup;\n}\n\nfunction createButton(\n col: number,\n row: number,\n colWidth: number | 'auto',\n cellWidth: number,\n cellHeight: number,\n padding: number[],\n cellTheme: IThemeSpec,\n define: ButtonColumnDefine,\n table: BaseTableAPI,\n cellValue: any\n) {\n const style = table._getCellStyle(col, row) as ButtonStyle;\n const buttonColor = getProp('buttonColor', style, col, row, table);\n const buttonBorderColor = getProp('buttonBorderColor', style, col, row, table);\n const buttonLineWidth = getProp('buttonLineWidth', style, col, row, table);\n const buttonBorderRadius = getProp('buttonBorderRadius', style, col, row, table);\n const buttonHoverColor = getProp('buttonHoverColor', style, col, row, table);\n const buttonHoverBorderColor = getProp('buttonHoverBorderColor', style, col, row, table);\n const buttonPadding = getProp('buttonPadding', style, col, row, table);\n const buttonTextHoverColor = getProp('buttonTextHoverColor', style, col, row, table);\n const buttonDisableColor = getProp('buttonDisableColor', style, col, row, table);\n const buttonDisableBorderColor = getProp('buttonDisableBorderColor', style, col, row, table);\n const buttonTextDisableColor = getProp('buttonTextDisableColor', style, col, row, table);\n\n const value = cellValue as string | { text: string; checked: boolean; disable: boolean } | boolean;\n const dataValue = table.getCellOriginValue(col, row);\n const hierarchyOffset = getHierarchyOffset(col, row, table);\n const cellStyle = table._getCellStyle(col, row) as ButtonStyleOption; // to be fixed\n const autoWrapText = cellStyle.autoWrapText ?? table.internalProps.autoWrapText;\n const { lineClamp } = cellStyle;\n const autoColWidth = colWidth === 'auto';\n const autoRowHeight = table.isAutoRowHeight(row);\n\n const { disable, text } = define;\n const isDisable = getOrApply(disable as any, {\n col,\n row,\n table,\n context: null,\n value,\n dataValue\n });\n const buttonTextValue = getOrApply(text as any, {\n col,\n row,\n table,\n context: null,\n value,\n dataValue\n });\n\n const buttonText = buttonTextValue ?? (value as string) ?? '';\n\n const attribute = {\n maxLineWidth: autoColWidth ? Infinity : cellWidth - (padding[1] + padding[3] + hierarchyOffset),\n // fill: true,\n textAlign: 'left',\n textBaseline: 'top',\n autoWrapText,\n lineClamp,\n wordBreak: 'break-word',\n // widthLimit: autoColWidth ? -1 : colWidth - (padding[1] + padding[3]),\n heightLimit: autoRowHeight ? -1 : cellHeight - Math.floor(padding[0] + padding[2]),\n pickable: false,\n dx: hierarchyOffset,\n whiteSpace: buttonText.length === 1 && !autoWrapText ? 'no-wrap' : 'normal'\n };\n const testAttribute = cellTheme.text ? (Object.assign({}, cellTheme.text, attribute) as any) : attribute;\n\n const buttonAttributes: TagAttributes = {\n x: 0,\n y: 0,\n cursor: isDisable ? 'not-allowed' : 'pointer',\n disable: isDisable,\n childrenPickable: false,\n text: buttonText.length === 1 ? buttonText[0] : buttonText,\n textStyle: testAttribute,\n padding: buttonPadding,\n panel: {\n visible: true,\n fill: isDisable ? buttonDisableColor : buttonColor,\n stroke: isDisable ? buttonDisableBorderColor : buttonBorderColor,\n lineWidth: buttonLineWidth,\n cornerRadius: buttonBorderRadius\n },\n state: {\n text: {\n hover: {}\n },\n panel: {\n hover: {\n fill: buttonHoverColor,\n stroke: buttonHoverBorderColor\n }\n }\n }\n } as any;\n buttonTextDisableColor && (buttonAttributes.state.text.fill = buttonTextDisableColor);\n buttonTextHoverColor && (buttonAttributes.state.text.hover.fill = buttonTextHoverColor);\n\n const buttonComponent = new Tag(buttonAttributes);\n buttonComponent.name = 'button';\n\n if (!isDisable) {\n buttonComponent.addEventListener('mouseenter', () => {\n buttonComponent.addState('hover', true, false);\n buttonComponent.stage.renderNextFrame();\n });\n buttonComponent.addEventListener('mouseleave', () => {\n buttonComponent.removeState('hover', false);\n buttonComponent.stage.renderNextFrame();\n });\n }\n\n return buttonComponent;\n}\n\nexport type CreateButtonCellGroup = typeof createButtonCellGroup;\n"]}
@@ -69,7 +69,7 @@ function createChartCellGroup(cellGroup, columnGroup, xOrigin, yOrigin, col, row
69
69
  cornerRadius: cellTheme.group.cornerRadius
70
70
  })).role = "cell", cellGroup.col = col, cellGroup.row = row, cellGroup = null !== (_0 = null == columnGroup ? void 0 : columnGroup.addCellGroup(cellGroup)) && void 0 !== _0 ? _0 : cellGroup);
71
71
  }
72
- if (cellGroup.AABBBounds.width(), isNoChartDataRenderNothing && Array.isArray(table.getCellValue(col, row)) || !isNoChartDataRenderNothing) {
72
+ if (cellGroup.AABBBounds.width(), isNoChartDataRenderNothing && Array.isArray(dataValue) || !isNoChartDataRenderNothing) {
73
73
  const chartGroup = new chart_1.Chart(isShareChartSpec, {
74
74
  stroke: !1,
75
75
  x: padding[3],
@@ -83,7 +83,7 @@ function createChartCellGroup(cellGroup, columnGroup, xOrigin, yOrigin, col, row
83
83
  height: height - padding[2] - padding[0],
84
84
  chartInstance: chartInstance,
85
85
  dataId: dataId,
86
- data: table.getCellValue(col, row) || [],
86
+ data: dataValue || [],
87
87
  cellPadding: padding,
88
88
  dpr: table.internalProps.pixelRatio,
89
89
  detectPickChartItem: null === (_2 = table.options.customConfig) || void 0 === _2 ? void 0 : _2.detectPickChartItem,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/scenegraph/group-creater/cell-type/chart-cell.ts"],"names":[],"mappings":"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","file":"chart-cell.js","sourcesContent":["import { Group } from '../../graphic/group';\nimport { Chart } from '../../graphic/chart';\nimport * as registerChartTypes from '../../../chartModule';\nimport { getFunctionalProp } from '../../utils/get-prop';\nimport { isValid } from '@visactor/vutils';\nimport type { BaseTableAPI } from '../../../ts-types/base-table';\nimport type { IThemeSpec } from './../../../vrender';\nimport { getCellBorderStrokeWidth } from '../../utils/cell-border-stroke-width';\nexport function createChartCellGroup(\n cellGroup: Group | null,\n columnGroup: Group,\n xOrigin: number,\n yOrigin: number,\n col: number,\n row: number,\n width: number,\n height: number,\n padding: number[],\n dataValue: string,\n chartModule: any,\n chartSpec: any,\n chartInstance: any,\n dataId: string | Record<string, string>,\n table: BaseTableAPI,\n cellTheme: IThemeSpec,\n isShareChartSpec: true,\n isAsync: boolean,\n isNoChartDataRenderNothing: boolean\n) {\n // 获取注册的chart图表类型\n const registerCharts = registerChartTypes.get();\n const ClassType = registerCharts[chartModule];\n const headerStyle = table._getCellStyle(col, row); // to be fixed\n const functionalPadding = getFunctionalProp('padding', headerStyle, col, row, table);\n if (isValid(functionalPadding)) {\n padding = functionalPadding;\n }\n // cell\n if (!cellGroup) {\n const strokeArrayWidth = getCellBorderStrokeWidth(col, row, cellTheme, table);\n\n if (isAsync) {\n cellGroup = table.scenegraph.highPerformanceGetCell(col, row, true);\n if (cellGroup && cellGroup.role === 'cell') {\n cellGroup.setAttributes({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n }\n }\n if (!cellGroup || cellGroup.role !== 'cell') {\n cellGroup = new Group({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n cellGroup.role = 'cell';\n cellGroup.col = col;\n cellGroup.row = row;\n cellGroup = columnGroup?.addCellGroup(cellGroup) ?? cellGroup;\n }\n }\n cellGroup.AABBBounds.width(); // TODO 需要底层VRender修改\n // chart\n if ((isNoChartDataRenderNothing && Array.isArray(table.getCellValue(col, row))) || !isNoChartDataRenderNothing) {\n const chartGroup = new Chart(isShareChartSpec, {\n stroke: false,\n x: padding[3],\n y: padding[0],\n // canvas: table.canvas,\n canvas: table.canvas ?? (table.scenegraph.stage.window.getContext().canvas as unknown as HTMLCanvasElement),\n mode: table.options.mode,\n modeParams: table.options.modeParams,\n spec: table.options.specTransformInCell ? table.options.specTransformInCell(chartSpec, col, row) : chartSpec,\n ClassType,\n width: width - padding[3] - padding[1],\n height: height - padding[2] - padding[0],\n chartInstance,\n dataId,\n data: table.getCellValue(col, row) || [],\n cellPadding: padding,\n dpr: table.internalProps.pixelRatio,\n detectPickChartItem: table.options.customConfig?.detectPickChartItem,\n // viewBox: {\n // x1: Math.ceil(cellGroup.globalAABBBounds.x1 + padding[3] + table.scrollLeft),\n // x2: Math.ceil(cellGroup.globalAABBBounds.x1 + width - padding[1] + table.scrollLeft),\n // y1: Math.ceil(cellGroup.globalAABBBounds.y1 + padding[0] + table.scrollTop),\n // y2: Math.ceil(cellGroup.globalAABBBounds.y1 + height - padding[2] + table.scrollTop)\n // },\n axes: table.isPivotChart() ? table.internalProps.layoutMap.getChartAxes(col, row) : [],\n // clipRect: {\n // left: cellGroup.globalAABBBounds.x1 + (table as any).tableX + padding[3],\n // top: cellGroup.globalAABBBounds.y1 + (table as any).tableY + padding[0],\n // width: width - padding[1] - padding[3], //cellGroup.globalAABBBounds.width() - padding[1] - padding[3],\n // height: height - padding[0] - padding[2],\n // },\n tableChartOption: table.options.chartOption,\n col,\n row\n });\n cellGroup.appendChild(chartGroup);\n // 将生成的实例存到layoutMap中 共享\n table.internalProps.layoutMap.setChartInstance(col, row, chartGroup.chartInstance);\n }\n return cellGroup;\n}\n\nexport type CreateChartCellGroup = typeof createChartCellGroup;\n"]}
1
+ {"version":3,"sources":["../src/scenegraph/group-creater/cell-type/chart-cell.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA4C;AAC5C,+CAA4C;AAC5C,yEAA2D;AAC3D,mDAAyD;AACzD,6CAA2C;AAG3C,mFAAgF;AAChF,SAAgB,oBAAoB,CAClC,SAAuB,EACvB,WAAkB,EAClB,OAAe,EACf,OAAe,EACf,GAAW,EACX,GAAW,EACX,KAAa,EACb,MAAc,EACd,OAAiB,EACjB,SAAiB,EACjB,WAAgB,EAChB,SAAc,EACd,aAAkB,EAClB,MAAuC,EACvC,KAAmB,EACnB,SAAqB,EACrB,gBAAsB,EACtB,OAAgB,EAChB,0BAAmC;;IAGnC,MAAM,cAAc,GAAG,kBAAkB,CAAC,GAAG,EAAE,CAAC;IAChD,MAAM,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAClD,MAAM,iBAAiB,GAAG,IAAA,4BAAiB,EAAC,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IACrF,IAAI,IAAA,gBAAO,EAAC,iBAAiB,CAAC,EAAE;QAC9B,OAAO,GAAG,iBAAiB,CAAC;KAC7B;IAED,IAAI,CAAC,SAAS,EAAE;QACd,MAAM,gBAAgB,GAAG,IAAA,mDAAwB,EAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAE9E,IAAI,OAAO,EAAE;YACX,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YACpE,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE;gBAC1C,SAAS,CAAC,aAAa,CAAC;oBACtB,CAAC,EAAE,OAAO;oBACV,CAAC,EAAE,OAAO;oBACV,KAAK;oBACL,MAAM;oBAEN,SAAS,EAAE,MAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS,mCAAI,SAAS;oBACnD,IAAI,EAAE,MAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,IAAI,mCAAI,SAAS;oBACzC,MAAM,EAAE,MAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,MAAM,mCAAI,SAAS;oBAC7C,gBAAgB,EAAE,gBAAgB;oBAClC,gBAAgB,EAAE,MAAA,MAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAa,0CAAE,gBAAgB,mCAAI,SAAS;oBAC1E,MAAM,EAAE,MAAA,MAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAa,0CAAE,MAAM,mCAAI,SAAS;oBACtD,QAAQ,EAAE,MAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,QAAQ,mCAAI,SAAS;oBACjD,OAAO,EAAE,MAAM;oBACf,IAAI,EAAE,IAAI;oBACV,YAAY,EAAE,SAAS,CAAC,KAAK,CAAC,YAAY;iBACpC,CAAC,CAAC;aACX;SACF;QACD,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE;YAC3C,SAAS,GAAG,IAAI,aAAK,CAAC;gBACpB,CAAC,EAAE,OAAO;gBACV,CAAC,EAAE,OAAO;gBACV,KAAK;gBACL,MAAM;gBAEN,SAAS,EAAE,MAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS,mCAAI,SAAS;gBACnD,IAAI,EAAE,MAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,IAAI,mCAAI,SAAS;gBACzC,MAAM,EAAE,MAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,MAAM,mCAAI,SAAS;gBAC7C,gBAAgB,EAAE,gBAAgB;gBAClC,gBAAgB,EAAE,MAAA,MAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAa,0CAAE,gBAAgB,mCAAI,SAAS;gBAC1E,MAAM,EAAE,MAAA,MAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAa,0CAAE,MAAM,mCAAI,SAAS;gBACtD,QAAQ,EAAE,MAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,QAAQ,mCAAI,SAAS;gBACjD,OAAO,EAAE,MAAM;gBACf,IAAI,EAAE,IAAI;gBACV,YAAY,EAAE,SAAS,CAAC,KAAK,CAAC,YAAY;aACpC,CAAC,CAAC;YACV,SAAS,CAAC,IAAI,GAAG,MAAM,CAAC;YACxB,SAAS,CAAC,GAAG,GAAG,GAAG,CAAC;YACpB,SAAS,CAAC,GAAG,GAAG,GAAG,CAAC;YACpB,SAAS,GAAG,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,YAAY,CAAC,SAAS,CAAC,mCAAI,SAAS,CAAC;SAC/D;KACF;IACD,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAE7B,IAAI,CAAC,0BAA0B,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,0BAA0B,EAAE;QAC3F,MAAM,UAAU,GAAG,IAAI,aAAK,CAAC,gBAAgB,EAAE;YAC7C,MAAM,EAAE,KAAK;YACb,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YACb,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YAEb,MAAM,EAAE,MAAA,KAAK,CAAC,MAAM,mCAAK,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,MAAuC;YAC3G,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;YACxB,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;YACpC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,mBAAmB,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;YAC5G,SAAS;YACT,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YACtC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YACxC,aAAa;YACb,MAAM;YACN,IAAI,EAAE,SAAS,IAAI,EAAE;YACrB,WAAW,EAAE,OAAO;YACpB,GAAG,EAAE,KAAK,CAAC,aAAa,CAAC,UAAU;YACnC,mBAAmB,EAAE,MAAA,KAAK,CAAC,OAAO,CAAC,YAAY,0CAAE,mBAAmB;YAOpE,IAAI,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;YAOtF,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW;YAC3C,GAAG;YACH,GAAG;SACJ,CAAC,CAAC;QACH,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAElC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;KACpF;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AA1HD,oDA0HC","file":"chart-cell.js","sourcesContent":["import { Group } from '../../graphic/group';\nimport { Chart } from '../../graphic/chart';\nimport * as registerChartTypes from '../../../chartModule';\nimport { getFunctionalProp } from '../../utils/get-prop';\nimport { isValid } from '@visactor/vutils';\nimport type { BaseTableAPI } from '../../../ts-types/base-table';\nimport type { IThemeSpec } from './../../../vrender';\nimport { getCellBorderStrokeWidth } from '../../utils/cell-border-stroke-width';\nexport function createChartCellGroup(\n cellGroup: Group | null,\n columnGroup: Group,\n xOrigin: number,\n yOrigin: number,\n col: number,\n row: number,\n width: number,\n height: number,\n padding: number[],\n dataValue: string,\n chartModule: any,\n chartSpec: any,\n chartInstance: any,\n dataId: string | Record<string, string>,\n table: BaseTableAPI,\n cellTheme: IThemeSpec,\n isShareChartSpec: true,\n isAsync: boolean,\n isNoChartDataRenderNothing: boolean\n) {\n // 获取注册的chart图表类型\n const registerCharts = registerChartTypes.get();\n const ClassType = registerCharts[chartModule];\n const headerStyle = table._getCellStyle(col, row); // to be fixed\n const functionalPadding = getFunctionalProp('padding', headerStyle, col, row, table);\n if (isValid(functionalPadding)) {\n padding = functionalPadding;\n }\n // cell\n if (!cellGroup) {\n const strokeArrayWidth = getCellBorderStrokeWidth(col, row, cellTheme, table);\n\n if (isAsync) {\n cellGroup = table.scenegraph.highPerformanceGetCell(col, row, true);\n if (cellGroup && cellGroup.role === 'cell') {\n cellGroup.setAttributes({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n }\n }\n if (!cellGroup || cellGroup.role !== 'cell') {\n cellGroup = new Group({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n cellGroup.role = 'cell';\n cellGroup.col = col;\n cellGroup.row = row;\n cellGroup = columnGroup?.addCellGroup(cellGroup) ?? cellGroup;\n }\n }\n cellGroup.AABBBounds.width(); // TODO 需要底层VRender修改\n // chart\n if ((isNoChartDataRenderNothing && Array.isArray(dataValue)) || !isNoChartDataRenderNothing) {\n const chartGroup = new Chart(isShareChartSpec, {\n stroke: false,\n x: padding[3],\n y: padding[0],\n // canvas: table.canvas,\n canvas: table.canvas ?? (table.scenegraph.stage.window.getContext().canvas as unknown as HTMLCanvasElement),\n mode: table.options.mode,\n modeParams: table.options.modeParams,\n spec: table.options.specTransformInCell ? table.options.specTransformInCell(chartSpec, col, row) : chartSpec,\n ClassType,\n width: width - padding[3] - padding[1],\n height: height - padding[2] - padding[0],\n chartInstance,\n dataId,\n data: dataValue || [],\n cellPadding: padding,\n dpr: table.internalProps.pixelRatio,\n detectPickChartItem: table.options.customConfig?.detectPickChartItem,\n // viewBox: {\n // x1: Math.ceil(cellGroup.globalAABBBounds.x1 + padding[3] + table.scrollLeft),\n // x2: Math.ceil(cellGroup.globalAABBBounds.x1 + width - padding[1] + table.scrollLeft),\n // y1: Math.ceil(cellGroup.globalAABBBounds.y1 + padding[0] + table.scrollTop),\n // y2: Math.ceil(cellGroup.globalAABBBounds.y1 + height - padding[2] + table.scrollTop)\n // },\n axes: table.isPivotChart() ? table.internalProps.layoutMap.getChartAxes(col, row) : [],\n // clipRect: {\n // left: cellGroup.globalAABBBounds.x1 + (table as any).tableX + padding[3],\n // top: cellGroup.globalAABBBounds.y1 + (table as any).tableY + padding[0],\n // width: width - padding[1] - padding[3], //cellGroup.globalAABBBounds.width() - padding[1] - padding[3],\n // height: height - padding[0] - padding[2],\n // },\n tableChartOption: table.options.chartOption,\n col,\n row\n });\n cellGroup.appendChild(chartGroup);\n // 将生成的实例存到layoutMap中 共享\n table.internalProps.layoutMap.setChartInstance(col, row, chartGroup.chartInstance);\n }\n return cellGroup;\n}\n\nexport type CreateChartCellGroup = typeof createChartCellGroup;\n"]}
@@ -2,5 +2,5 @@ import type { IThemeSpec } from './../../../vrender';
2
2
  import { Group } from '../../graphic/group';
3
3
  import { type CellRange, type CheckboxColumnDefine } from '../../../ts-types';
4
4
  import type { BaseTableAPI } from '../../../ts-types/base-table';
5
- export declare function createCheckboxCellGroup(cellGroup: Group | null, columnGroup: Group, xOrigin: number, yOrigin: number, col: number, row: number, colWidth: number, width: number, height: number, padding: number[], textAlign: CanvasTextAlign, textBaseline: CanvasTextBaseline, mayHaveIcon: boolean, table: BaseTableAPI, cellTheme: IThemeSpec, define: CheckboxColumnDefine, range: CellRange | undefined, isAsync: boolean, isCheckboxTree: boolean): Group;
5
+ export declare function createCheckboxCellGroup(cellGroup: Group | null, columnGroup: Group, xOrigin: number, yOrigin: number, col: number, row: number, colWidth: number, width: number, height: number, padding: number[], textAlign: CanvasTextAlign, textBaseline: CanvasTextBaseline, mayHaveIcon: boolean, table: BaseTableAPI, cellTheme: IThemeSpec, define: CheckboxColumnDefine, range: CellRange | undefined, isAsync: boolean, isCheckboxTree: boolean, cellValue?: any): Group;
6
6
  export type CreateCheckboxCellGroup = typeof createCheckboxCellGroup;
@@ -6,8 +6,9 @@ Object.defineProperty(exports, "__esModule", {
6
6
 
7
7
  const group_1 = require("../../graphic/group"), ts_types_1 = require("../../../ts-types"), vutils_1 = require("@visactor/vutils"), vrender_1 = require("./../../../vrender"), get_hierarchy_offset_1 = require("../../utils/get-hierarchy-offset"), helper_1 = require("../../../tools/helper"), get_prop_1 = require("../../utils/get-prop"), cell_border_stroke_width_1 = require("../../utils/cell-border-stroke-width"), text_icon_layout_1 = require("../../utils/text-icon-layout"), checkbox_content_1 = require("../../component/checkbox-content"), custom_1 = require("../../component/custom");
8
8
 
9
- function createCheckboxCellGroup(cellGroup, columnGroup, xOrigin, yOrigin, col, row, colWidth, width, height, padding, textAlign, textBaseline, mayHaveIcon, table, cellTheme, define, range, isAsync, isCheckboxTree) {
9
+ function createCheckboxCellGroup(cellGroup, columnGroup, xOrigin, yOrigin, col, row, colWidth, width, height, padding, textAlign, textBaseline, mayHaveIcon, table, cellTheme, define, range, isAsync, isCheckboxTree, cellValue) {
10
10
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0;
11
+ const value = arguments.length >= 20 ? cellValue : table.getCellValue(col, row);
11
12
  if (!cellGroup) {
12
13
  const strokeArrayWidth = (0, cell_border_stroke_width_1.getCellBorderStrokeWidth)(col, row, cellTheme, table);
13
14
  isAsync && (cellGroup = table.scenegraph.highPerformanceGetCell(col, row, !0)) && "cell" === cellGroup.role && cellGroup.setAttributes({
@@ -59,7 +60,7 @@ function createCheckboxCellGroup(cellGroup, columnGroup, xOrigin, yOrigin, col,
59
60
  "middle" === textBaseline ? child.setAttribute("y", (height - child.AABBBounds.height()) / 2) : "bottom" === textBaseline ? child.setAttribute("y", height - child.AABBBounds.height() - padding[2]) : child.setAttribute("y", padding[0]);
60
61
  }));
61
62
  }
62
- const checkboxComponent = createCheckbox(col, row, colWidth - iconWidth, width, height, padding, cellTheme, define, table, isCheckboxTree);
63
+ const checkboxComponent = createCheckbox(col, row, colWidth - iconWidth, width, height, padding, cellTheme, define, table, isCheckboxTree, value);
63
64
  if (1 !== cellContentLeftIcons.length || cellContentLeftIcons[0].name !== ts_types_1.InternalIconName.expandIconName && cellContentLeftIcons[0].name !== ts_types_1.InternalIconName.collapseIconName) checkboxComponent && cellGroup.appendChild(checkboxComponent),
64
65
  checkboxComponent.render(); else {
65
66
  const checkContent = new checkbox_content_1.CheckboxContent({
@@ -99,7 +100,7 @@ function createCheckboxCellGroup(cellGroup, columnGroup, xOrigin, yOrigin, col,
99
100
  cellGroup;
100
101
  }
101
102
 
102
- function createCheckbox(col, row, colWidth, cellWidth, cellHeight, padding, cellTheme, define, table, isCheckboxTree) {
103
+ function createCheckbox(col, row, colWidth, cellWidth, cellHeight, padding, cellTheme, define, table, isCheckboxTree, cellValue) {
103
104
  var _a, _b, _c, _d;
104
105
  const style = table._getCellStyle(col, row), size = (0, get_prop_1.getProp)("size", style, col, row, table), spaceBetweenTextAndIcon = (0,
105
106
  get_prop_1.getProp)("spaceBetweenTextAndIcon", style, col, row, table), defaultFill = (0,
@@ -110,7 +111,7 @@ function createCheckbox(col, row, colWidth, cellWidth, cellHeight, padding, cell
110
111
  get_prop_1.getProp)("disableCheckedFill", style, col, row, table), disableCheckedStroke = (0,
111
112
  get_prop_1.getProp)("disableCheckedStroke", style, col, row, table), checkIconImage = (0,
112
113
  get_prop_1.getProp)("checkIconImage", style, col, row, table), indeterminateIconImage = (0,
113
- get_prop_1.getProp)("indeterminateIconImage", style, col, row, table), value = table.getCellValue(col, row), dataValue = table.getCellOriginValue(col, row);
114
+ get_prop_1.getProp)("indeterminateIconImage", style, col, row, table), value = cellValue, dataValue = table.getCellOriginValue(col, row);
114
115
  let isChecked, isDisabled, text = null !== (_a = value) && void 0 !== _a ? _a : "";
115
116
  if ((0, vutils_1.isObject)(value) ? (isChecked = value.checked, isDisabled = value.disable,
116
117
  text = null !== (_b = value.text) && void 0 !== _b ? _b : "") : "boolean" == typeof value && (isChecked = value,
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/scenegraph/group-creater/cell-type/checkbox-cell.ts"],"names":[],"mappings":"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","file":"checkbox-cell.js","sourcesContent":["import type { IThemeSpec } from './../../../vrender';\nimport { Group } from '../../graphic/group';\nimport {\n InternalIconName,\n type CellInfo,\n type CellRange,\n type CheckboxColumnDefine,\n type CheckboxStyleOption,\n type ColumnIconOption,\n type SparklineSpec\n} from '../../../ts-types';\nimport type { BaseTableAPI } from '../../../ts-types/base-table';\nimport { isObject } from '@visactor/vutils';\nimport type { CheckboxAttributes } from './../../../vrender';\nimport { CheckBox } from './../../../vrender';\nimport { getHierarchyOffset } from '../../utils/get-hierarchy-offset';\nimport { getOrApply } from '../../../tools/helper';\nimport type { CheckboxStyle } from '../../../body-helper/style/CheckboxStyle';\nimport { getProp } from '../../utils/get-prop';\nimport { getCellBorderStrokeWidth } from '../../utils/cell-border-stroke-width';\nimport { dealWithIcon, dealWithIconLayout } from '../../utils/text-icon-layout';\nimport { CheckboxContent } from '../../component/checkbox-content';\nimport { CUSTOM_CONTAINER_NAME } from '../../component/custom';\nimport type { ListTable } from '../../..';\n\nexport function createCheckboxCellGroup(\n cellGroup: Group | null,\n columnGroup: Group,\n xOrigin: number,\n yOrigin: number,\n col: number,\n row: number,\n colWidth: number,\n width: number,\n height: number,\n padding: number[],\n textAlign: CanvasTextAlign,\n textBaseline: CanvasTextBaseline,\n mayHaveIcon: boolean,\n table: BaseTableAPI,\n cellTheme: IThemeSpec,\n define: CheckboxColumnDefine,\n range: CellRange | undefined,\n isAsync: boolean,\n isCheckboxTree: boolean\n) {\n // cell\n if (!cellGroup) {\n const strokeArrayWidth = getCellBorderStrokeWidth(col, row, cellTheme, table);\n\n if (isAsync) {\n cellGroup = table.scenegraph.highPerformanceGetCell(col, row, true);\n if (cellGroup && cellGroup.role === 'cell') {\n cellGroup.setAttributes({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n }\n }\n if (!cellGroup || cellGroup.role !== 'cell') {\n cellGroup = new Group({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n cellGroup.role = 'cell';\n cellGroup.col = col;\n cellGroup.row = row;\n cellGroup = columnGroup?.addCellGroup(cellGroup) ?? cellGroup;\n }\n }\n\n let icons;\n if (mayHaveIcon) {\n let iconCol = col;\n let iconRow = row;\n if (range) {\n iconCol = range.start.col;\n iconRow = range.start.row;\n }\n icons = table.getCellIcons(iconCol, iconRow);\n }\n\n let iconWidth = 0;\n let cellLeftIconWidth = 0;\n let cellRightIconWidth = 0;\n let cellabsoluteRightIconWidth = 0;\n let cellContentLeftIcons: ColumnIconOption[] = [];\n let cellContentRightIcons: ColumnIconOption[] = [];\n if (Array.isArray(icons) && icons.length !== 0) {\n const {\n leftIconWidth,\n rightIconWidth,\n contentLeftIcons,\n contentRightIcons,\n absoluteLeftIconWidth,\n absoluteRightIconWidth\n } = dealWithIconLayout(icons, cellGroup, range, table);\n\n iconWidth = leftIconWidth + rightIconWidth;\n cellLeftIconWidth = leftIconWidth;\n cellRightIconWidth = rightIconWidth;\n cellContentLeftIcons = contentLeftIcons;\n cellContentRightIcons = contentRightIcons;\n cellabsoluteRightIconWidth = absoluteRightIconWidth;\n\n // 更新各个部分横向位置\n cellGroup.forEachChildren((child: any) => {\n if (child.role === 'icon-left') {\n child.setAttribute('x', child.attribute.x + padding[3]);\n } else if (child.role === 'icon-right') {\n child.setAttribute('x', child.attribute.x + width - rightIconWidth - padding[1]);\n } else if (child.role === 'icon-absolute-right') {\n child.setAttribute('x', child.attribute.x + width - absoluteRightIconWidth - padding[1]);\n }\n });\n\n // 更新各个部分纵向位置\n cellGroup.forEachChildren((child: any) => {\n if (textBaseline === 'middle') {\n child.setAttribute('y', (height - child.AABBBounds.height()) / 2);\n } else if (textBaseline === 'bottom') {\n child.setAttribute('y', height - child.AABBBounds.height() - padding[2]);\n } else {\n child.setAttribute('y', padding[0]);\n }\n });\n }\n\n // checkbox\n const checkboxComponent = createCheckbox(\n col,\n row,\n colWidth - iconWidth,\n width,\n height,\n padding,\n cellTheme,\n define,\n table,\n isCheckboxTree\n );\n\n // 目前只支持展示折叠或者展开icons\n if (\n cellContentLeftIcons.length === 1 &&\n (cellContentLeftIcons[0].name === InternalIconName.expandIconName ||\n cellContentLeftIcons[0].name === InternalIconName.collapseIconName)\n ) {\n const checkContent = new CheckboxContent({\n x: 0,\n y: 0,\n fill: false,\n stroke: false,\n pickable: false\n });\n checkContent.name = 'checkbox-content';\n\n checkContent.setCheckboxContentOption({\n autoWidth: false,\n autoHeight: false,\n cellWidth: width - (padding[1] + padding[3]),\n cellHeight: height - padding[0] - padding[2],\n align: textAlign,\n baseline: textBaseline\n });\n\n const dealWithIconComputeVar = {\n addedHierarchyOffset: 0\n }; //为了只增加一次indent的缩进值,如果有两个icon都dealWithIcon的话\n\n cellContentLeftIcons.forEach(icon => {\n const iconMark = dealWithIcon(\n icon,\n undefined,\n cellGroup.col,\n cellGroup.row,\n range,\n table,\n dealWithIconComputeVar\n );\n iconMark.role = 'icon-content-left';\n iconMark.name = icon.name;\n checkContent.addLeftOccupyingIcon(iconMark);\n });\n\n if (checkboxComponent) {\n checkContent.addCheckbox(checkboxComponent);\n }\n cellGroup.appendChild(checkContent);\n checkContent.layout();\n\n const contentWidth = checkContent.AABBBounds.width();\n const contentHeight = checkContent.AABBBounds.height();\n\n // 内容添加后单元格的宽高\n const Awidth = false\n ? cellLeftIconWidth + contentWidth + cellRightIconWidth // + padding[1] + padding[3]\n : width - (padding[1] + padding[3]);\n const Aheight = height - (padding[0] + padding[2]);\n\n // 更新各个部分横向位置\n cellGroup.forEachChildren((child: any) => {\n if (child.role === 'icon-left') {\n child.setAttribute('x', child.attribute.x + padding[3]);\n } else if (child.role === 'icon-right') {\n child.setAttribute('x', child.attribute.x + Awidth - cellRightIconWidth + padding[3]);\n } else if (child.role === 'icon-absolute-right') {\n child.setAttribute('x', child.attribute.x + Awidth - cellabsoluteRightIconWidth + padding[3] + padding[1]);\n } else if (child.name === 'content' || child.name === 'checkbox-content') {\n if (textAlign === 'center' && child.type !== 'richtext') {\n child.setAttribute(\n 'x',\n padding[3] + cellLeftIconWidth + (Awidth - cellLeftIconWidth - cellRightIconWidth) / 2\n );\n } else if (textAlign === 'right' && child.type !== 'richtext') {\n child.setAttribute('x', padding[3] + Awidth - cellRightIconWidth);\n } else {\n child.setAttribute('x', padding[3] + cellLeftIconWidth);\n }\n }\n });\n\n // 更新各个部分纵向位置\n cellGroup.forEachChildren((child: any) => {\n if (child.name === CUSTOM_CONTAINER_NAME) {\n return;\n }\n if (textBaseline === 'middle') {\n // child.setAttribute('y', padding[0] + (Aheight - child.AABBBounds.height()) / 2);\n if (child?._checkboxGroup as Group) {\n child._leftGroup.setAttribute('y', padding[0] + (Aheight - child._checkboxGroup.AABBBounds.height()) / 2);\n }\n } else if (textBaseline === 'bottom') {\n child.setAttribute('y', padding[0] + Aheight - child.AABBBounds.height());\n } else {\n child.setAttribute('y', padding[0]);\n }\n });\n } else {\n if (checkboxComponent) {\n cellGroup.appendChild(checkboxComponent);\n }\n\n checkboxComponent.render();\n }\n\n width -= padding[1] + padding[3] + iconWidth;\n height -= padding[0] + padding[2];\n if (textAlign === 'center') {\n checkboxComponent.setAttribute(\n 'x',\n padding[3] + cellLeftIconWidth + (width - checkboxComponent.AABBBounds.width()) / 2\n );\n } else if (textAlign === 'right') {\n checkboxComponent.setAttribute('x', padding[3] + cellLeftIconWidth + width - checkboxComponent.AABBBounds.width());\n } else {\n checkboxComponent.setAttribute('x', padding[3] + cellLeftIconWidth);\n }\n\n if (textBaseline === 'middle') {\n checkboxComponent.setAttribute('y', padding[0] + (height - checkboxComponent.AABBBounds.height()) / 2);\n } else if (textBaseline === 'bottom') {\n checkboxComponent.setAttribute('y', padding[0] + height - checkboxComponent.AABBBounds.height());\n } else {\n checkboxComponent.setAttribute('y', padding[0]);\n }\n\n return cellGroup;\n}\n\nfunction createCheckbox(\n col: number,\n row: number,\n colWidth: number | 'auto',\n cellWidth: number,\n cellHeight: number,\n padding: number[],\n cellTheme: IThemeSpec,\n define: CheckboxColumnDefine,\n table: BaseTableAPI,\n isCheckboxTree: boolean\n) {\n const style = table._getCellStyle(col, row) as CheckboxStyle;\n const size = getProp('size', style, col, row, table);\n const spaceBetweenTextAndIcon = getProp('spaceBetweenTextAndIcon', style, col, row, table);\n const defaultFill = getProp('defaultFill', style, col, row, table);\n const defaultStroke = getProp('defaultStroke', style, col, row, table);\n const disableFill = getProp('disableFill', style, col, row, table);\n const checkedFill = getProp('checkedFill', style, col, row, table);\n const checkedStroke = getProp('checkedStroke', style, col, row, table);\n const disableCheckedFill = getProp('disableCheckedFill', style, col, row, table);\n const disableCheckedStroke = getProp('disableCheckedStroke', style, col, row, table);\n const checkIconImage = getProp('checkIconImage', style, col, row, table);\n const indeterminateIconImage = getProp('indeterminateIconImage', style, col, row, table);\n\n const value = table.getCellValue(col, row) as string | { text: string; checked: boolean; disable: boolean } | boolean;\n const dataValue = table.getCellOriginValue(col, row);\n let isChecked;\n let isDisabled;\n let text = (value as string) ?? '';\n if (isObject(value)) {\n isChecked = value.checked;\n isDisabled = value.disable;\n text = value.text ?? '';\n } else if (typeof value === 'boolean') {\n isChecked = value;\n text = '';\n }\n // 处理 rowSeriesNumbe 在record设置checkbox是否勾选与是否禁用的场景\n if (table.internalProps.layoutMap.isSeriesNumber(col, row)) {\n const checkboxSeriesNumberStyle = (table as ListTable).getFieldData(define.field, col, row);\n if (checkboxSeriesNumberStyle) {\n if (typeof checkboxSeriesNumberStyle === 'string') {\n } else if (typeof checkboxSeriesNumberStyle === 'object') {\n isChecked = checkboxSeriesNumberStyle.checked;\n isDisabled = checkboxSeriesNumberStyle.disable;\n } else if (typeof checkboxSeriesNumberStyle === 'boolean') {\n isChecked = checkboxSeriesNumberStyle;\n }\n }\n }\n isChecked = table.stateManager.syncCheckedState(col, row, define.field as string | number, isChecked);\n const hierarchyOffset = getHierarchyOffset(col, row, table);\n const cellStyle = table._getCellStyle(col, row) as CheckboxStyleOption; // to be fixed\n const autoWrapText = cellStyle.autoWrapText ?? table.internalProps.autoWrapText;\n const { lineClamp } = cellStyle;\n const { checked, disable } = define;\n if (isChecked === undefined || isChecked === null || typeof isChecked === 'function') {\n //isChecked无效值 取全局设置的值\n const globalChecked = getOrApply(checked as any, {\n col,\n row,\n table,\n context: null,\n value,\n dataValue\n });\n isChecked = table.stateManager.syncCheckedState(col, row, define.field as string | number, globalChecked);\n }\n const globalDisable = getOrApply(disable as any, {\n col,\n row,\n table,\n context: null,\n value,\n dataValue\n });\n\n const autoColWidth = colWidth === 'auto';\n const autoRowHeight = table.isAutoRowHeight(row);\n\n const attribute = {\n text: text.length === 1 ? text[0] : text,\n maxLineWidth: autoColWidth\n ? Infinity\n : cellWidth - (padding[1] + padding[3] + hierarchyOffset) - size - spaceBetweenTextAndIcon,\n // fill: true,\n textAlign: 'left',\n textBaseline: 'top',\n autoWrapText,\n lineClamp,\n wordBreak: 'break-word',\n // widthLimit: autoColWidth ? -1 : colWidth - (padding[1] + padding[3]),\n heightLimit: autoRowHeight ? -1 : cellHeight - Math.floor(padding[0] + padding[2]),\n pickable: false,\n dx: isCheckboxTree ? 0 : hierarchyOffset,\n whiteSpace: text.length === 1 && !autoWrapText ? 'no-wrap' : 'normal'\n };\n const testAttribute = cellTheme.text ? (Object.assign({}, cellTheme.text, attribute) as any) : attribute;\n const checkboxAttributes: CheckboxAttributes = {\n x: 0,\n y: 0,\n text: testAttribute,\n icon: {\n width: Math.floor(size / 1.4), // icon : box => 10 : 14\n height: Math.floor(size / 1.4)\n },\n box: {\n width: size,\n height: size\n },\n dx: isCheckboxTree ? hierarchyOffset : 0,\n spaceBetweenTextAndIcon,\n disabled: isDisabled ?? globalDisable ?? false\n };\n\n if (isChecked === 'indeterminate') {\n checkboxAttributes.checked = undefined;\n checkboxAttributes.indeterminate = true;\n } else {\n checkboxAttributes.checked = isChecked;\n checkboxAttributes.indeterminate = undefined;\n }\n defaultFill && (checkboxAttributes.box.fill = defaultFill);\n defaultStroke && (checkboxAttributes.box.stroke = defaultStroke);\n disableFill && (checkboxAttributes.box.disableFill = disableFill);\n checkedFill && (checkboxAttributes.box.checkedFill = checkedFill);\n checkedStroke && (checkboxAttributes.box.checkedStroke = checkedStroke);\n disableCheckedFill && (checkboxAttributes.box.disableCheckedFill = disableCheckedFill);\n disableCheckedStroke && (checkboxAttributes.box.disableCheckedStroke = disableCheckedStroke);\n checkIconImage && (checkboxAttributes.icon.checkIconImage = checkIconImage);\n indeterminateIconImage && (checkboxAttributes.icon.indeterminateIconImage = indeterminateIconImage);\n\n const checkbox = new CheckBox(checkboxAttributes);\n checkbox.name = 'checkbox';\n\n return checkbox;\n}\n\nexport type CreateCheckboxCellGroup = typeof createCheckboxCellGroup;\n"]}
1
+ {"version":3,"sources":["../src/scenegraph/group-creater/cell-type/checkbox-cell.ts"],"names":[],"mappings":"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","file":"checkbox-cell.js","sourcesContent":["import type { IThemeSpec } from './../../../vrender';\nimport { Group } from '../../graphic/group';\nimport {\n InternalIconName,\n type CellInfo,\n type CellRange,\n type CheckboxColumnDefine,\n type CheckboxStyleOption,\n type ColumnIconOption,\n type SparklineSpec\n} from '../../../ts-types';\nimport type { BaseTableAPI } from '../../../ts-types/base-table';\nimport { isObject } from '@visactor/vutils';\nimport type { CheckboxAttributes } from './../../../vrender';\nimport { CheckBox } from './../../../vrender';\nimport { getHierarchyOffset } from '../../utils/get-hierarchy-offset';\nimport { getOrApply } from '../../../tools/helper';\nimport type { CheckboxStyle } from '../../../body-helper/style/CheckboxStyle';\nimport { getProp } from '../../utils/get-prop';\nimport { getCellBorderStrokeWidth } from '../../utils/cell-border-stroke-width';\nimport { dealWithIcon, dealWithIconLayout } from '../../utils/text-icon-layout';\nimport { CheckboxContent } from '../../component/checkbox-content';\nimport { CUSTOM_CONTAINER_NAME } from '../../component/custom';\nimport type { ListTable } from '../../..';\n\nexport function createCheckboxCellGroup(\n cellGroup: Group | null,\n columnGroup: Group,\n xOrigin: number,\n yOrigin: number,\n col: number,\n row: number,\n colWidth: number,\n width: number,\n height: number,\n padding: number[],\n textAlign: CanvasTextAlign,\n textBaseline: CanvasTextBaseline,\n mayHaveIcon: boolean,\n table: BaseTableAPI,\n cellTheme: IThemeSpec,\n define: CheckboxColumnDefine,\n range: CellRange | undefined,\n isAsync: boolean,\n isCheckboxTree: boolean,\n cellValue?: any\n) {\n const value = arguments.length >= 20 ? cellValue : table.getCellValue(col, row);\n // cell\n if (!cellGroup) {\n const strokeArrayWidth = getCellBorderStrokeWidth(col, row, cellTheme, table);\n\n if (isAsync) {\n cellGroup = table.scenegraph.highPerformanceGetCell(col, row, true);\n if (cellGroup && cellGroup.role === 'cell') {\n cellGroup.setAttributes({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n }\n }\n if (!cellGroup || cellGroup.role !== 'cell') {\n cellGroup = new Group({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: strokeArrayWidth,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n lineDash: cellTheme?.group?.lineDash ?? undefined,\n lineCap: 'butt',\n clip: true,\n cornerRadius: cellTheme.group.cornerRadius\n } as any);\n cellGroup.role = 'cell';\n cellGroup.col = col;\n cellGroup.row = row;\n cellGroup = columnGroup?.addCellGroup(cellGroup) ?? cellGroup;\n }\n }\n\n let icons;\n if (mayHaveIcon) {\n let iconCol = col;\n let iconRow = row;\n if (range) {\n iconCol = range.start.col;\n iconRow = range.start.row;\n }\n icons = table.getCellIcons(iconCol, iconRow);\n }\n\n let iconWidth = 0;\n let cellLeftIconWidth = 0;\n let cellRightIconWidth = 0;\n let cellabsoluteRightIconWidth = 0;\n let cellContentLeftIcons: ColumnIconOption[] = [];\n let cellContentRightIcons: ColumnIconOption[] = [];\n if (Array.isArray(icons) && icons.length !== 0) {\n const {\n leftIconWidth,\n rightIconWidth,\n contentLeftIcons,\n contentRightIcons,\n absoluteLeftIconWidth,\n absoluteRightIconWidth\n } = dealWithIconLayout(icons, cellGroup, range, table);\n\n iconWidth = leftIconWidth + rightIconWidth;\n cellLeftIconWidth = leftIconWidth;\n cellRightIconWidth = rightIconWidth;\n cellContentLeftIcons = contentLeftIcons;\n cellContentRightIcons = contentRightIcons;\n cellabsoluteRightIconWidth = absoluteRightIconWidth;\n\n // 更新各个部分横向位置\n cellGroup.forEachChildren((child: any) => {\n if (child.role === 'icon-left') {\n child.setAttribute('x', child.attribute.x + padding[3]);\n } else if (child.role === 'icon-right') {\n child.setAttribute('x', child.attribute.x + width - rightIconWidth - padding[1]);\n } else if (child.role === 'icon-absolute-right') {\n child.setAttribute('x', child.attribute.x + width - absoluteRightIconWidth - padding[1]);\n }\n });\n\n // 更新各个部分纵向位置\n cellGroup.forEachChildren((child: any) => {\n if (textBaseline === 'middle') {\n child.setAttribute('y', (height - child.AABBBounds.height()) / 2);\n } else if (textBaseline === 'bottom') {\n child.setAttribute('y', height - child.AABBBounds.height() - padding[2]);\n } else {\n child.setAttribute('y', padding[0]);\n }\n });\n }\n\n // checkbox\n const checkboxComponent = createCheckbox(\n col,\n row,\n colWidth - iconWidth,\n width,\n height,\n padding,\n cellTheme,\n define,\n table,\n isCheckboxTree,\n value\n );\n\n // 目前只支持展示折叠或者展开icons\n if (\n cellContentLeftIcons.length === 1 &&\n (cellContentLeftIcons[0].name === InternalIconName.expandIconName ||\n cellContentLeftIcons[0].name === InternalIconName.collapseIconName)\n ) {\n const checkContent = new CheckboxContent({\n x: 0,\n y: 0,\n fill: false,\n stroke: false,\n pickable: false\n });\n checkContent.name = 'checkbox-content';\n\n checkContent.setCheckboxContentOption({\n autoWidth: false,\n autoHeight: false,\n cellWidth: width - (padding[1] + padding[3]),\n cellHeight: height - padding[0] - padding[2],\n align: textAlign,\n baseline: textBaseline\n });\n\n const dealWithIconComputeVar = {\n addedHierarchyOffset: 0\n }; //为了只增加一次indent的缩进值,如果有两个icon都dealWithIcon的话\n\n cellContentLeftIcons.forEach(icon => {\n const iconMark = dealWithIcon(\n icon,\n undefined,\n cellGroup.col,\n cellGroup.row,\n range,\n table,\n dealWithIconComputeVar\n );\n iconMark.role = 'icon-content-left';\n iconMark.name = icon.name;\n checkContent.addLeftOccupyingIcon(iconMark);\n });\n\n if (checkboxComponent) {\n checkContent.addCheckbox(checkboxComponent);\n }\n cellGroup.appendChild(checkContent);\n checkContent.layout();\n\n const contentWidth = checkContent.AABBBounds.width();\n const contentHeight = checkContent.AABBBounds.height();\n\n // 内容添加后单元格的宽高\n const Awidth = false\n ? cellLeftIconWidth + contentWidth + cellRightIconWidth // + padding[1] + padding[3]\n : width - (padding[1] + padding[3]);\n const Aheight = height - (padding[0] + padding[2]);\n\n // 更新各个部分横向位置\n cellGroup.forEachChildren((child: any) => {\n if (child.role === 'icon-left') {\n child.setAttribute('x', child.attribute.x + padding[3]);\n } else if (child.role === 'icon-right') {\n child.setAttribute('x', child.attribute.x + Awidth - cellRightIconWidth + padding[3]);\n } else if (child.role === 'icon-absolute-right') {\n child.setAttribute('x', child.attribute.x + Awidth - cellabsoluteRightIconWidth + padding[3] + padding[1]);\n } else if (child.name === 'content' || child.name === 'checkbox-content') {\n if (textAlign === 'center' && child.type !== 'richtext') {\n child.setAttribute(\n 'x',\n padding[3] + cellLeftIconWidth + (Awidth - cellLeftIconWidth - cellRightIconWidth) / 2\n );\n } else if (textAlign === 'right' && child.type !== 'richtext') {\n child.setAttribute('x', padding[3] + Awidth - cellRightIconWidth);\n } else {\n child.setAttribute('x', padding[3] + cellLeftIconWidth);\n }\n }\n });\n\n // 更新各个部分纵向位置\n cellGroup.forEachChildren((child: any) => {\n if (child.name === CUSTOM_CONTAINER_NAME) {\n return;\n }\n if (textBaseline === 'middle') {\n // child.setAttribute('y', padding[0] + (Aheight - child.AABBBounds.height()) / 2);\n if (child?._checkboxGroup as Group) {\n child._leftGroup.setAttribute('y', padding[0] + (Aheight - child._checkboxGroup.AABBBounds.height()) / 2);\n }\n } else if (textBaseline === 'bottom') {\n child.setAttribute('y', padding[0] + Aheight - child.AABBBounds.height());\n } else {\n child.setAttribute('y', padding[0]);\n }\n });\n } else {\n if (checkboxComponent) {\n cellGroup.appendChild(checkboxComponent);\n }\n\n checkboxComponent.render();\n }\n\n width -= padding[1] + padding[3] + iconWidth;\n height -= padding[0] + padding[2];\n if (textAlign === 'center') {\n checkboxComponent.setAttribute(\n 'x',\n padding[3] + cellLeftIconWidth + (width - checkboxComponent.AABBBounds.width()) / 2\n );\n } else if (textAlign === 'right') {\n checkboxComponent.setAttribute('x', padding[3] + cellLeftIconWidth + width - checkboxComponent.AABBBounds.width());\n } else {\n checkboxComponent.setAttribute('x', padding[3] + cellLeftIconWidth);\n }\n\n if (textBaseline === 'middle') {\n checkboxComponent.setAttribute('y', padding[0] + (height - checkboxComponent.AABBBounds.height()) / 2);\n } else if (textBaseline === 'bottom') {\n checkboxComponent.setAttribute('y', padding[0] + height - checkboxComponent.AABBBounds.height());\n } else {\n checkboxComponent.setAttribute('y', padding[0]);\n }\n\n return cellGroup;\n}\n\nfunction createCheckbox(\n col: number,\n row: number,\n colWidth: number | 'auto',\n cellWidth: number,\n cellHeight: number,\n padding: number[],\n cellTheme: IThemeSpec,\n define: CheckboxColumnDefine,\n table: BaseTableAPI,\n isCheckboxTree: boolean,\n cellValue: any\n) {\n const style = table._getCellStyle(col, row) as CheckboxStyle;\n const size = getProp('size', style, col, row, table);\n const spaceBetweenTextAndIcon = getProp('spaceBetweenTextAndIcon', style, col, row, table);\n const defaultFill = getProp('defaultFill', style, col, row, table);\n const defaultStroke = getProp('defaultStroke', style, col, row, table);\n const disableFill = getProp('disableFill', style, col, row, table);\n const checkedFill = getProp('checkedFill', style, col, row, table);\n const checkedStroke = getProp('checkedStroke', style, col, row, table);\n const disableCheckedFill = getProp('disableCheckedFill', style, col, row, table);\n const disableCheckedStroke = getProp('disableCheckedStroke', style, col, row, table);\n const checkIconImage = getProp('checkIconImage', style, col, row, table);\n const indeterminateIconImage = getProp('indeterminateIconImage', style, col, row, table);\n\n const value = cellValue as string | { text: string; checked: boolean; disable: boolean } | boolean;\n const dataValue = table.getCellOriginValue(col, row);\n let isChecked;\n let isDisabled;\n let text = (value as string) ?? '';\n if (isObject(value)) {\n isChecked = value.checked;\n isDisabled = value.disable;\n text = value.text ?? '';\n } else if (typeof value === 'boolean') {\n isChecked = value;\n text = '';\n }\n // 处理 rowSeriesNumbe 在record设置checkbox是否勾选与是否禁用的场景\n if (table.internalProps.layoutMap.isSeriesNumber(col, row)) {\n const checkboxSeriesNumberStyle = (table as ListTable).getFieldData(define.field, col, row);\n if (checkboxSeriesNumberStyle) {\n if (typeof checkboxSeriesNumberStyle === 'string') {\n } else if (typeof checkboxSeriesNumberStyle === 'object') {\n isChecked = checkboxSeriesNumberStyle.checked;\n isDisabled = checkboxSeriesNumberStyle.disable;\n } else if (typeof checkboxSeriesNumberStyle === 'boolean') {\n isChecked = checkboxSeriesNumberStyle;\n }\n }\n }\n isChecked = table.stateManager.syncCheckedState(col, row, define.field as string | number, isChecked);\n const hierarchyOffset = getHierarchyOffset(col, row, table);\n const cellStyle = table._getCellStyle(col, row) as CheckboxStyleOption; // to be fixed\n const autoWrapText = cellStyle.autoWrapText ?? table.internalProps.autoWrapText;\n const { lineClamp } = cellStyle;\n const { checked, disable } = define;\n if (isChecked === undefined || isChecked === null || typeof isChecked === 'function') {\n //isChecked无效值 取全局设置的值\n const globalChecked = getOrApply(checked as any, {\n col,\n row,\n table,\n context: null,\n value,\n dataValue\n });\n isChecked = table.stateManager.syncCheckedState(col, row, define.field as string | number, globalChecked);\n }\n const globalDisable = getOrApply(disable as any, {\n col,\n row,\n table,\n context: null,\n value,\n dataValue\n });\n\n const autoColWidth = colWidth === 'auto';\n const autoRowHeight = table.isAutoRowHeight(row);\n\n const attribute = {\n text: text.length === 1 ? text[0] : text,\n maxLineWidth: autoColWidth\n ? Infinity\n : cellWidth - (padding[1] + padding[3] + hierarchyOffset) - size - spaceBetweenTextAndIcon,\n // fill: true,\n textAlign: 'left',\n textBaseline: 'top',\n autoWrapText,\n lineClamp,\n wordBreak: 'break-word',\n // widthLimit: autoColWidth ? -1 : colWidth - (padding[1] + padding[3]),\n heightLimit: autoRowHeight ? -1 : cellHeight - Math.floor(padding[0] + padding[2]),\n pickable: false,\n dx: isCheckboxTree ? 0 : hierarchyOffset,\n whiteSpace: text.length === 1 && !autoWrapText ? 'no-wrap' : 'normal'\n };\n const testAttribute = cellTheme.text ? (Object.assign({}, cellTheme.text, attribute) as any) : attribute;\n const checkboxAttributes: CheckboxAttributes = {\n x: 0,\n y: 0,\n text: testAttribute,\n icon: {\n width: Math.floor(size / 1.4), // icon : box => 10 : 14\n height: Math.floor(size / 1.4)\n },\n box: {\n width: size,\n height: size\n },\n dx: isCheckboxTree ? hierarchyOffset : 0,\n spaceBetweenTextAndIcon,\n disabled: isDisabled ?? globalDisable ?? false\n };\n\n if (isChecked === 'indeterminate') {\n checkboxAttributes.checked = undefined;\n checkboxAttributes.indeterminate = true;\n } else {\n checkboxAttributes.checked = isChecked;\n checkboxAttributes.indeterminate = undefined;\n }\n defaultFill && (checkboxAttributes.box.fill = defaultFill);\n defaultStroke && (checkboxAttributes.box.stroke = defaultStroke);\n disableFill && (checkboxAttributes.box.disableFill = disableFill);\n checkedFill && (checkboxAttributes.box.checkedFill = checkedFill);\n checkedStroke && (checkboxAttributes.box.checkedStroke = checkedStroke);\n disableCheckedFill && (checkboxAttributes.box.disableCheckedFill = disableCheckedFill);\n disableCheckedStroke && (checkboxAttributes.box.disableCheckedStroke = disableCheckedStroke);\n checkIconImage && (checkboxAttributes.icon.checkIconImage = checkIconImage);\n indeterminateIconImage && (checkboxAttributes.icon.indeterminateIconImage = indeterminateIconImage);\n\n const checkbox = new CheckBox(checkboxAttributes);\n checkbox.name = 'checkbox';\n\n return checkbox;\n}\n\nexport type CreateCheckboxCellGroup = typeof createCheckboxCellGroup;\n"]}
@@ -3,7 +3,7 @@ import { Group } from '../../graphic/group';
3
3
  import type { Scenegraph } from '../../scenegraph';
4
4
  import type { BaseTableAPI } from '../../../ts-types/base-table';
5
5
  import type { CellRange } from '../../../ts-types';
6
- export declare function createImageCellGroup(columnGroup: Group, xOrigin: number, yOrigin: number, col: number, row: number, width: number, height: number, keepAspectRatio: boolean, imageAutoSizing: boolean, padding: [number, number, number, number], textAlign: CanvasTextAlign, textBaseline: CanvasTextBaseline, mayHaveIcon: boolean, table: BaseTableAPI, cellTheme: IThemeSpec, range: CellRange | undefined, isAsync: boolean): Group;
6
+ export declare function createImageCellGroup(columnGroup: Group, xOrigin: number, yOrigin: number, col: number, row: number, width: number, height: number, keepAspectRatio: boolean, imageAutoSizing: boolean, padding: [number, number, number, number], textAlign: CanvasTextAlign, textBaseline: CanvasTextBaseline, mayHaveIcon: boolean, table: BaseTableAPI, cellTheme: IThemeSpec, range: CellRange | undefined, isAsync: boolean, cellValue?: any): Group;
7
7
  export type CreateImageCellGroup = typeof createImageCellGroup;
8
8
  export declare function _adjustWidthHeight(col: number, row: number, width: number, height: number, scene: Scenegraph, padding: [number, number, number, number], cellGroup: Group): boolean;
9
9
  export declare function updateImageCellContentWhileResize(cellGroup: Group, col: number, row: number, deltaX: number, deltaY: number, table: BaseTableAPI): void;
@@ -29,9 +29,21 @@ Object.defineProperty(exports, "__esModule", {
29
29
  value: !0
30
30
  }), exports.isDamagePic = exports.updateAutoSizingAndKeepAspectRatio = exports.updateImageDxDy = exports.getCellRange = exports.updateImageCellContentWhileResize = exports._adjustWidthHeight = exports.createImageCellGroup = void 0;
31
31
 
32
- const vrender_1 = require("./../../../vrender"), icons = __importStar(require("../../../icons")), group_1 = require("../../graphic/group"), keep_aspect_ratio_1 = require("../../utils/keep-aspect-ratio"), cell_pos_1 = require("../../utils/cell-pos"), get_prop_1 = require("../../utils/get-prop"), vutils_1 = require("@visactor/vutils"), padding_1 = require("../../utils/padding"), cell_border_stroke_width_1 = require("../../utils/cell-border-stroke-width"), text_icon_layout_1 = require("../../utils/text-icon-layout");
32
+ const vrender_1 = require("./../../../vrender"), icons = __importStar(require("../../../icons")), group_1 = require("../../graphic/group"), keep_aspect_ratio_1 = require("../../utils/keep-aspect-ratio"), cell_pos_1 = require("../../utils/cell-pos"), get_prop_1 = require("../../utils/get-prop"), vutils_1 = require("@visactor/vutils"), padding_1 = require("../../utils/padding"), cell_border_stroke_width_1 = require("../../utils/cell-border-stroke-width"), text_icon_layout_1 = require("../../utils/text-icon-layout"), media_cell_helper_1 = require("./media-cell-helper");
33
33
 
34
- function createImageCellGroup(columnGroup, xOrigin, yOrigin, col, row, width, height, keepAspectRatio, imageAutoSizing, padding, textAlign, textBaseline, mayHaveIcon, table, cellTheme, range, isAsync) {
34
+ function hasCellMedia(cellGroup) {
35
+ return (0, media_cell_helper_1.getCellMediaChildren)(cellGroup).length > 0;
36
+ }
37
+
38
+ function getResizeImage(cellGroup) {
39
+ return hasCellMedia(cellGroup) ? (0, media_cell_helper_1.getCellMediaImage)(cellGroup) : void 0;
40
+ }
41
+
42
+ function getResizePlayIcon(cellGroup) {
43
+ return hasCellMedia(cellGroup) ? (0, media_cell_helper_1.getCellMediaPlayIcon)(cellGroup) : void 0;
44
+ }
45
+
46
+ function createImageCellGroup(columnGroup, xOrigin, yOrigin, col, row, width, height, keepAspectRatio, imageAutoSizing, padding, textAlign, textBaseline, mayHaveIcon, table, cellTheme, range, isAsync, cellValue) {
35
47
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6;
36
48
  const headerStyle = table._getCellStyle(col, row), functionalPadding = (0, get_prop_1.getFunctionalProp)("padding", headerStyle, col, row, table);
37
49
  (null === (_a = table.options.customConfig) || void 0 === _a ? void 0 : _a.imageMargin) ? padding = (0,
@@ -85,16 +97,19 @@ function createImageCellGroup(columnGroup, xOrigin, yOrigin, col, row, width, he
85
97
  "icon-left" === child.role ? child.setAttribute("x", child.attribute.x + padding[3]) : "icon-right" === child.role ? child.setAttribute("x", child.attribute.x + width - rightIconWidth - padding[1]) : "icon-absolute-right" === child.role && child.setAttribute("x", child.attribute.x + width - absoluteRightIconWidth - padding[1]);
86
98
  })), cellGroup.forEachChildren((child => {
87
99
  "middle" === textBaseline ? child.setAttribute("y", (height - child.AABBBounds.height()) / 2) : "bottom" === textBaseline ? child.setAttribute("y", height - child.AABBBounds.height() - padding[2]) : child.setAttribute("y", padding[0]);
88
- })), cellGroup._cellLeftIconWidth = cellLeftIconWidth, cellGroup._cellRightIconWidth = cellRightIconWidth;
100
+ }));
89
101
  }
90
- const value = table.getCellValue(col, row), image = (0, vrender_1.createImage)({
102
+ cellGroup._cellLeftIconWidth = cellLeftIconWidth, cellGroup._cellRightIconWidth = cellRightIconWidth;
103
+ const value = arguments.length >= 18 ? cellValue : table.getCellValue(col, row);
104
+ (0, media_cell_helper_1.removeCellMediaChildren)(cellGroup);
105
+ const image = (0, media_cell_helper_1.markCellMedia)((0, vrender_1.createImage)({
91
106
  x: padding[3],
92
107
  y: padding[0],
93
108
  width: width - padding[1] - padding[3] - iconWidth,
94
109
  height: height - padding[0] - padding[2],
95
110
  image: value,
96
111
  cursor: "pointer"
97
- });
112
+ }), "image");
98
113
  if (image.name = "image", image.keepAspectRatio = keepAspectRatio, image.textAlign = textAlign,
99
114
  image.textBaseline = textBaseline, keepAspectRatio || imageAutoSizing ? image.resources && image.resources.has(image.attribute.image) && "success" === image.resources.get(image.attribute.image).state ? (image.setAttribute("opacity", 0),
100
115
  setTimeout((() => {
@@ -131,10 +146,10 @@ function _adjustWidthHeight(col, row, width, height, scene, padding, cellGroup)
131
146
 
132
147
  function updateImageCellContentWhileResize(cellGroup, col, row, deltaX, deltaY, table) {
133
148
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
134
- const image = cellGroup.getChildByName("image");
149
+ const image = getResizeImage(cellGroup);
135
150
  if (!image) return;
136
151
  const originImage = "string" != typeof image.attribute.image && image.attribute.image || (null === (_a = image.resources) || void 0 === _a ? void 0 : _a.get(image.attribute.image).data);
137
- if (!originImage) return;
152
+ if (!originImage && !image.isAudioIcon) return;
138
153
  const headerStyle = table._getCellStyle(col, row), textAlign = null !== (_b = (0,
139
154
  get_prop_1.getProp)("textAlign", headerStyle, col, row, table)) && void 0 !== _b ? _b : "left", textBaseline = null !== (_c = (0,
140
155
  get_prop_1.getProp)("textBaseline", headerStyle, col, row, table)) && void 0 !== _c ? _c : "middle";
@@ -142,12 +157,24 @@ function updateImageCellContentWhileResize(cellGroup, col, row, deltaX, deltaY,
142
157
  padding = (null === (_d = table.options.customConfig) || void 0 === _d ? void 0 : _d.imageMargin) ? (0,
143
158
  padding_1.getQuadProps)(null === (_e = table.options.customConfig) || void 0 === _e ? void 0 : _e.imageMargin) : null !== (_f = (0,
144
159
  padding_1.getQuadProps)((0, get_prop_1.getProp)("padding", headerStyle, col, row, table))) && void 0 !== _f ? _f : [ 0, 0, 0, 0 ];
145
- const {width: cellWidth, height: cellHeight, isMerge: isMerge} = getCellRange(cellGroup, table), colStart = null !== (_g = cellGroup.mergeStartCol) && void 0 !== _g ? _g : cellGroup.col, rowStart = null !== (_h = cellGroup.mergeStartRow) && void 0 !== _h ? _h : cellGroup.row, colEnd = null !== (_j = cellGroup.mergeEndCol) && void 0 !== _j ? _j : cellGroup.col, rowEnd = null !== (_k = cellGroup.mergeEndCol) && void 0 !== _k ? _k : cellGroup.row, leftIconWidth = null !== (_l = cellGroup._cellLeftIconWidth) && void 0 !== _l ? _l : 0, rightIconWidth = null !== (_m = cellGroup._cellRightIconWidth) && void 0 !== _m ? _m : 0;
146
- if (image.keepAspectRatio || isDamagePic(image)) {
160
+ const {width: cellWidth, height: cellHeight, isMerge: isMerge} = getCellRange(cellGroup, table), colStart = null !== (_g = cellGroup.mergeStartCol) && void 0 !== _g ? _g : cellGroup.col, rowStart = null !== (_h = cellGroup.mergeStartRow) && void 0 !== _h ? _h : cellGroup.row, colEnd = null !== (_j = cellGroup.mergeEndCol) && void 0 !== _j ? _j : cellGroup.col, rowEnd = null !== (_k = cellGroup.mergeEndRow) && void 0 !== _k ? _k : cellGroup.row, leftIconWidth = null !== (_l = cellGroup._cellLeftIconWidth) && void 0 !== _l ? _l : 0, rightIconWidth = null !== (_m = cellGroup._cellRightIconWidth) && void 0 !== _m ? _m : 0;
161
+ if (image.isAudioIcon) {
162
+ const availableWidth = Math.max(1, cellWidth - padding[1] - padding[3] - leftIconWidth - rightIconWidth), availableHeight = Math.max(1, cellHeight - padding[0] - padding[2]), iconSize = Math.max(1, Math.min(availableWidth, availableHeight, 32)), pos = (0,
163
+ cell_pos_1.calcStartPosition)(leftIconWidth, 0, cellWidth - leftIconWidth - rightIconWidth, cellHeight, iconSize, iconSize, textAlign, textBaseline, padding);
164
+ for (let col = colStart; col <= colEnd; col++) for (let row = rowStart; row <= rowEnd; row++) {
165
+ const image = getResizeImage(table.scenegraph.getCell(col, row));
166
+ null == image || image.setAttributes({
167
+ x: pos.x,
168
+ y: pos.y,
169
+ width: iconSize,
170
+ height: iconSize
171
+ });
172
+ }
173
+ } else if (image.keepAspectRatio || isDamagePic(image)) {
147
174
  const {width: imageWidth, height: imageHeight} = (0, keep_aspect_ratio_1.calcKeepAspectRatioSize)(originImage.width || originImage.videoWidth, originImage.height || originImage.videoHeight, cellWidth - (padding[1] + padding[3]), cellHeight - (padding[0] + padding[2])), pos = (0,
148
175
  cell_pos_1.calcStartPosition)(0, 0, cellWidth, cellHeight, imageWidth, imageHeight, textAlign, textBaseline, padding);
149
176
  for (let col = colStart; col <= colEnd; col++) for (let row = rowStart; row <= rowEnd; row++) {
150
- const image = table.scenegraph.getCell(col, row).getChildByName("image");
177
+ const image = getResizeImage(table.scenegraph.getCell(col, row));
151
178
  null == image || image.setAttributes({
152
179
  x: pos.x,
153
180
  y: pos.y,
@@ -156,7 +183,7 @@ function updateImageCellContentWhileResize(cellGroup, col, row, deltaX, deltaY,
156
183
  });
157
184
  }
158
185
  } else for (let col = colStart; col <= colEnd; col++) for (let row = rowStart; row <= rowEnd; row++) {
159
- const image = table.scenegraph.getCell(col, row).getChildByName("image");
186
+ const image = getResizeImage(table.scenegraph.getCell(col, row));
160
187
  null == image || image.setAttributes({
161
188
  x: leftIconWidth + padding[3],
162
189
  y: padding[0],
@@ -164,10 +191,11 @@ function updateImageCellContentWhileResize(cellGroup, col, row, deltaX, deltaY,
164
191
  height: cellHeight - padding[0] - padding[2]
165
192
  });
166
193
  }
167
- if (cellGroup.getChildByName("play-icon")) {
194
+ if (getResizePlayIcon(cellGroup)) {
168
195
  const left = 0, top = 0, {width: width, height: height} = getCellRange(cellGroup, table), iconSize = Math.floor(Math.min(width - padding[1] - padding[3], height - padding[2] - padding[0]) / 2), anchorX = left + (width > image.attribute.width ? image.attribute.x - left + image.attribute.width / 2 : width / 2), anchorY = top + (height > image.attribute.height ? image.attribute.y - top + image.attribute.height / 2 : height / 2);
169
196
  for (let col = colStart; col <= colEnd; col++) for (let row = rowStart; row <= rowEnd; row++) {
170
- table.scenegraph.getCell(col, row).getChildByName("play-icon").setAttributes({
197
+ const playIcon = getResizePlayIcon(table.scenegraph.getCell(col, row));
198
+ null == playIcon || playIcon.setAttributes({
171
199
  x: anchorX - iconSize / 2,
172
200
  y: anchorY - iconSize / 2,
173
201
  width: iconSize,
@@ -200,12 +228,12 @@ function updateImageDxDy(startCol, endCol, startRow, endRow, table) {
200
228
  for (let col = startCol; col <= endCol; col++) for (let row = startRow; row <= endRow; row++) {
201
229
  const cellGroup = table.scenegraph.getCell(col, row);
202
230
  if (cellGroup) {
203
- const image = cellGroup.getChildByName("image");
231
+ const image = getResizeImage(cellGroup);
204
232
  image && image.setAttributes({
205
233
  dx: -table.getColsWidth(cellGroup.mergeStartCol, col - 1),
206
234
  dy: -table.getRowsHeight(cellGroup.mergeStartRow, row - 1)
207
235
  });
208
- const playIcon = cellGroup.getChildByName("play-icon");
236
+ const playIcon = getResizePlayIcon(cellGroup);
209
237
  playIcon && playIcon.setAttributes({
210
238
  dx: -table.getColsWidth(cellGroup.mergeStartCol, col - 1),
211
239
  dy: -table.getRowsHeight(cellGroup.mergeStartRow, row - 1)