@visactor/vtable 1.17.0-alpha.4 → 1.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (358) hide show
  1. package/cjs/ListTable-all.js +3 -2
  2. package/cjs/ListTable-all.js.map +1 -1
  3. package/cjs/ListTable.d.ts +4 -0
  4. package/cjs/ListTable.js +13 -1
  5. package/cjs/ListTable.js.map +1 -1
  6. package/cjs/PivotChart.d.ts +2 -0
  7. package/cjs/PivotChart.js +90 -31
  8. package/cjs/PivotChart.js.map +1 -1
  9. package/cjs/PivotTable.d.ts +1 -0
  10. package/cjs/PivotTable.js +29 -26
  11. package/cjs/PivotTable.js.map +1 -1
  12. package/cjs/body-helper/body-helper.d.ts +3 -1
  13. package/cjs/body-helper/body-helper.js +7 -1
  14. package/cjs/body-helper/body-helper.js.map +1 -1
  15. package/cjs/body-helper/style/ButtonStyle.d.ts +45 -0
  16. package/cjs/body-helper/style/ButtonStyle.js +110 -0
  17. package/cjs/body-helper/style/ButtonStyle.js.map +1 -0
  18. package/cjs/body-helper/style/SwitchStyle.d.ts +36 -0
  19. package/cjs/body-helper/style/SwitchStyle.js +90 -0
  20. package/cjs/body-helper/style/SwitchStyle.js.map +1 -0
  21. package/cjs/body-helper/style.js +5 -4
  22. package/cjs/body-helper/style.js.map +1 -1
  23. package/cjs/components/axis/axis.d.ts +1 -1
  24. package/cjs/components/axis/axis.js +3 -3
  25. package/cjs/components/axis/axis.js.map +1 -1
  26. package/cjs/components/axis/get-axis-component-size.js.map +1 -1
  27. package/cjs/components/axis/label-overlap.d.ts +1 -1
  28. package/cjs/components/axis/label-overlap.js.map +1 -1
  29. package/cjs/components/legend/continue-legend/continue-legend.d.ts +1 -1
  30. package/cjs/components/legend/continue-legend/continue-legend.js +3 -3
  31. package/cjs/components/legend/continue-legend/continue-legend.js.map +1 -1
  32. package/cjs/components/legend/discrete-legend/discrete-legend.d.ts +2 -2
  33. package/cjs/components/legend/discrete-legend/discrete-legend.js +5 -5
  34. package/cjs/components/legend/discrete-legend/discrete-legend.js.map +1 -1
  35. package/cjs/components/menu/dom/MenuHandler.js +10 -3
  36. package/cjs/components/menu/dom/MenuHandler.js.map +1 -1
  37. package/cjs/components/title/title.d.ts +2 -2
  38. package/cjs/components/title/title.js +2 -2
  39. package/cjs/components/title/title.js.map +1 -1
  40. package/cjs/core/BaseTable.d.ts +5 -1
  41. package/cjs/core/BaseTable.js +30 -27
  42. package/cjs/core/BaseTable.js.map +1 -1
  43. package/cjs/core/FouseInput.js +1 -2
  44. package/cjs/core/TABLE_EVENT_TYPE.d.ts +2 -0
  45. package/cjs/core/TABLE_EVENT_TYPE.js +3 -1
  46. package/cjs/core/TABLE_EVENT_TYPE.js.map +1 -1
  47. package/cjs/core/utils/get-cell-position.js +2 -2
  48. package/cjs/core/utils/get-cell-position.js.map +1 -1
  49. package/cjs/dataset/dataset-pivot-table.js +2 -1
  50. package/cjs/edit/edit-manager.d.ts +6 -4
  51. package/cjs/edit/edit-manager.js +16 -13
  52. package/cjs/edit/edit-manager.js.map +1 -1
  53. package/cjs/event/component/button.d.ts +2 -0
  54. package/cjs/event/component/button.js +21 -0
  55. package/cjs/event/component/button.js.map +1 -0
  56. package/cjs/event/event.js +6 -6
  57. package/cjs/event/event.js.map +1 -1
  58. package/cjs/event/listener/container-dom.js +1 -1
  59. package/cjs/event/listener/container-dom.js.map +1 -1
  60. package/cjs/event/listener/table-group.js +20 -0
  61. package/cjs/event/listener/table-group.js.map +1 -1
  62. package/cjs/header-helper/header-helper.js +30 -8
  63. package/cjs/header-helper/header-helper.js.map +1 -1
  64. package/cjs/index.d.ts +1 -1
  65. package/cjs/index.js +1 -1
  66. package/cjs/index.js.map +1 -1
  67. package/cjs/layout/chart-helper/get-chart-spec.js.map +1 -1
  68. package/cjs/render/jsx/index.d.ts +1 -1
  69. package/cjs/render/jsx/index.js +4 -4
  70. package/cjs/render/jsx/index.js.map +1 -1
  71. package/cjs/render/layout/index.d.ts +1 -1
  72. package/cjs/render/layout/index.js +3 -3
  73. package/cjs/render/layout/index.js.map +1 -1
  74. package/cjs/render/layout/tag.d.ts +2 -2
  75. package/cjs/render/layout/tag.js +2 -2
  76. package/cjs/render/layout/tag.js.map +1 -1
  77. package/cjs/render/layout/text.js.map +1 -1
  78. package/cjs/scenegraph/component/cell-content.d.ts +4 -4
  79. package/cjs/scenegraph/component/cell-content.js +1 -1
  80. package/cjs/scenegraph/component/cell-content.js.map +1 -1
  81. package/cjs/scenegraph/component/menu.js +6 -1
  82. package/cjs/scenegraph/component/menu.js.map +1 -1
  83. package/cjs/scenegraph/component/table-component.d.ts +1 -1
  84. package/cjs/scenegraph/component/table-component.js +3 -3
  85. package/cjs/scenegraph/component/table-component.js.map +1 -1
  86. package/cjs/scenegraph/graphic/chart.d.ts +2 -0
  87. package/cjs/scenegraph/graphic/chart.js +4 -4
  88. package/cjs/scenegraph/graphic/chart.js.map +1 -1
  89. package/cjs/scenegraph/graphic/contributions/chart-render-helper.d.ts +2 -0
  90. package/cjs/scenegraph/graphic/contributions/chart-render-helper.js +11 -9
  91. package/cjs/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -1
  92. package/cjs/scenegraph/graphic/contributions/chart-render.js +2 -2
  93. package/cjs/scenegraph/graphic/contributions/chart-render.js.map +1 -1
  94. package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js +2 -2
  95. package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -1
  96. package/cjs/scenegraph/graphic/icon.d.ts +8 -2
  97. package/cjs/scenegraph/graphic/icon.js +13 -1
  98. package/cjs/scenegraph/graphic/icon.js.map +1 -1
  99. package/cjs/scenegraph/group-creater/cell-helper.js +4 -0
  100. package/cjs/scenegraph/group-creater/cell-helper.js.map +1 -1
  101. package/cjs/scenegraph/group-creater/cell-type/button-cell.d.ts +6 -0
  102. package/cjs/scenegraph/group-creater/cell-type/button-cell.js +144 -0
  103. package/cjs/scenegraph/group-creater/cell-type/button-cell.js.map +1 -0
  104. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js +4 -2
  105. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  106. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js +2 -2
  107. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  108. package/cjs/scenegraph/group-creater/cell-type/index.d.ts +2 -0
  109. package/cjs/scenegraph/group-creater/cell-type/index.js +14 -2
  110. package/cjs/scenegraph/group-creater/cell-type/index.js.map +1 -1
  111. package/cjs/scenegraph/group-creater/cell-type/radio-cell.js +2 -2
  112. package/cjs/scenegraph/group-creater/cell-type/radio-cell.js.map +1 -1
  113. package/cjs/scenegraph/group-creater/cell-type/switch-cell.d.ts +6 -0
  114. package/cjs/scenegraph/group-creater/cell-type/switch-cell.js +152 -0
  115. package/cjs/scenegraph/group-creater/cell-type/switch-cell.js.map +1 -0
  116. package/cjs/scenegraph/layout/compute-col-width.js +23 -7
  117. package/cjs/scenegraph/layout/compute-col-width.js.map +1 -1
  118. package/cjs/scenegraph/layout/compute-row-height.js +4 -2
  119. package/cjs/scenegraph/layout/compute-row-height.js.map +1 -1
  120. package/cjs/scenegraph/layout/height-util.d.ts +2 -0
  121. package/cjs/scenegraph/layout/height-util.js +40 -3
  122. package/cjs/scenegraph/layout/height-util.js.map +1 -1
  123. package/cjs/scenegraph/scenegraph.d.ts +1 -1
  124. package/cjs/scenegraph/scenegraph.js +8 -7
  125. package/cjs/scenegraph/scenegraph.js.map +1 -1
  126. package/cjs/scenegraph/utils/cell-border-stroke-width.d.ts +1 -1
  127. package/cjs/scenegraph/utils/cell-border-stroke-width.js.map +1 -1
  128. package/cjs/scenegraph/utils/text-icon-layout.d.ts +2 -2
  129. package/cjs/scenegraph/utils/text-icon-layout.js +7 -6
  130. package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -1
  131. package/cjs/scenegraph/utils/text-measure.js.map +1 -1
  132. package/cjs/state/radio/radio.js +1 -1
  133. package/cjs/state/radio/radio.js.map +1 -1
  134. package/cjs/state/select/custom-select.js +2 -2
  135. package/cjs/state/select/custom-select.js.map +1 -1
  136. package/cjs/state/state.js +6 -2
  137. package/cjs/state/state.js.map +1 -1
  138. package/cjs/themes/theme.d.ts +4 -0
  139. package/cjs/themes/theme.js +19 -2
  140. package/cjs/themes/theme.js.map +1 -1
  141. package/cjs/tools/icons.d.ts +2 -2
  142. package/cjs/tools/icons.js +1 -1
  143. package/cjs/tools/icons.js.map +1 -1
  144. package/cjs/ts-types/base-table.d.ts +23 -4
  145. package/cjs/ts-types/base-table.js.map +1 -1
  146. package/cjs/ts-types/column/style.d.ts +32 -0
  147. package/cjs/ts-types/column/style.js.map +1 -1
  148. package/cjs/ts-types/column/type.d.ts +1 -1
  149. package/cjs/ts-types/column/type.js.map +1 -1
  150. package/cjs/ts-types/component/legend.d.ts +1 -1
  151. package/cjs/ts-types/component/legend.js.map +1 -1
  152. package/cjs/ts-types/events.d.ts +10 -0
  153. package/cjs/ts-types/events.js.map +1 -1
  154. package/cjs/ts-types/icon.d.ts +6 -6
  155. package/cjs/ts-types/icon.js.map +1 -1
  156. package/cjs/ts-types/list-table/define/button-define.d.ts +9 -0
  157. package/cjs/ts-types/list-table/define/{Composite-define.js → button-define.js} +1 -1
  158. package/cjs/ts-types/list-table/define/button-define.js.map +1 -0
  159. package/cjs/ts-types/list-table/define/composite-define.js +6 -0
  160. package/{es/ts-types/list-table/define/Composite-define.js.map → cjs/ts-types/list-table/define/composite-define.js.map} +1 -1
  161. package/cjs/ts-types/list-table/define/index.d.ts +7 -3
  162. package/cjs/ts-types/list-table/define/index.js.map +1 -1
  163. package/cjs/ts-types/list-table/define/switch-define.d.ts +11 -0
  164. package/cjs/ts-types/list-table/define/switch-define.js +6 -0
  165. package/cjs/ts-types/list-table/define/switch-define.js.map +1 -0
  166. package/cjs/ts-types/list-table/layout-map/api.d.ts +5 -1
  167. package/cjs/ts-types/list-table/layout-map/api.js.map +1 -1
  168. package/cjs/ts-types/pivot-table/dimension/basic-dimension.d.ts +5 -1
  169. package/cjs/ts-types/pivot-table/dimension/basic-dimension.js.map +1 -1
  170. package/cjs/ts-types/pivot-table/indicator/basic-indicator.d.ts +5 -1
  171. package/cjs/ts-types/pivot-table/indicator/basic-indicator.js.map +1 -1
  172. package/cjs/ts-types/table-engine.d.ts +8 -0
  173. package/cjs/ts-types/table-engine.js.map +1 -1
  174. package/cjs/ts-types/theme.d.ts +4 -2
  175. package/cjs/ts-types/theme.js.map +1 -1
  176. package/cjs/vrender.js.map +1 -1
  177. package/dist/vtable.js +1160 -88
  178. package/dist/vtable.min.js +2 -2
  179. package/es/ListTable-all.js +3 -2
  180. package/es/ListTable-all.js.map +1 -1
  181. package/es/ListTable.d.ts +4 -0
  182. package/es/ListTable.js +13 -1
  183. package/es/ListTable.js.map +1 -1
  184. package/es/PivotChart.d.ts +2 -0
  185. package/es/PivotChart.js +91 -30
  186. package/es/PivotChart.js.map +1 -1
  187. package/es/PivotTable.d.ts +1 -0
  188. package/es/PivotTable.js +29 -26
  189. package/es/PivotTable.js.map +1 -1
  190. package/es/body-helper/body-helper.d.ts +3 -1
  191. package/es/body-helper/body-helper.js +10 -0
  192. package/es/body-helper/body-helper.js.map +1 -1
  193. package/es/body-helper/style/ButtonStyle.d.ts +45 -0
  194. package/es/body-helper/style/ButtonStyle.js +102 -0
  195. package/es/body-helper/style/ButtonStyle.js.map +1 -0
  196. package/es/body-helper/style/SwitchStyle.d.ts +36 -0
  197. package/es/body-helper/style/SwitchStyle.js +82 -0
  198. package/es/body-helper/style/SwitchStyle.js.map +1 -0
  199. package/es/body-helper/style.js +8 -3
  200. package/es/body-helper/style.js.map +1 -1
  201. package/es/components/axis/axis.d.ts +1 -1
  202. package/es/components/axis/axis.js +1 -1
  203. package/es/components/axis/axis.js.map +1 -1
  204. package/es/components/axis/get-axis-component-size.js.map +1 -1
  205. package/es/components/axis/label-overlap.d.ts +1 -1
  206. package/es/components/axis/label-overlap.js.map +1 -1
  207. package/es/components/legend/continue-legend/continue-legend.d.ts +1 -1
  208. package/es/components/legend/continue-legend/continue-legend.js +1 -1
  209. package/es/components/legend/continue-legend/continue-legend.js.map +1 -1
  210. package/es/components/legend/discrete-legend/discrete-legend.d.ts +2 -2
  211. package/es/components/legend/discrete-legend/discrete-legend.js +1 -1
  212. package/es/components/legend/discrete-legend/discrete-legend.js.map +1 -1
  213. package/es/components/menu/dom/MenuHandler.js +10 -3
  214. package/es/components/menu/dom/MenuHandler.js.map +1 -1
  215. package/es/components/title/title.d.ts +2 -2
  216. package/es/components/title/title.js +1 -1
  217. package/es/components/title/title.js.map +1 -1
  218. package/es/core/BaseTable.d.ts +5 -1
  219. package/es/core/BaseTable.js +30 -27
  220. package/es/core/BaseTable.js.map +1 -1
  221. package/es/core/FouseInput.js +1 -2
  222. package/es/core/TABLE_EVENT_TYPE.d.ts +2 -0
  223. package/es/core/TABLE_EVENT_TYPE.js +3 -1
  224. package/es/core/TABLE_EVENT_TYPE.js.map +1 -1
  225. package/es/core/utils/get-cell-position.js +2 -2
  226. package/es/core/utils/get-cell-position.js.map +1 -1
  227. package/es/dataset/dataset-pivot-table.js +2 -1
  228. package/es/edit/edit-manager.d.ts +6 -4
  229. package/es/edit/edit-manager.js +17 -14
  230. package/es/edit/edit-manager.js.map +1 -1
  231. package/es/event/component/button.d.ts +2 -0
  232. package/es/event/component/button.js +13 -0
  233. package/es/event/component/button.js.map +1 -0
  234. package/es/event/event.js +7 -5
  235. package/es/event/event.js.map +1 -1
  236. package/es/event/listener/container-dom.js +1 -1
  237. package/es/event/listener/container-dom.js.map +1 -1
  238. package/es/event/listener/table-group.js +18 -0
  239. package/es/event/listener/table-group.js.map +1 -1
  240. package/es/header-helper/header-helper.js +30 -8
  241. package/es/header-helper/header-helper.js.map +1 -1
  242. package/es/index.d.ts +1 -1
  243. package/es/index.js +1 -1
  244. package/es/index.js.map +1 -1
  245. package/es/layout/chart-helper/get-chart-spec.js.map +1 -1
  246. package/es/render/jsx/index.d.ts +1 -1
  247. package/es/render/jsx/index.js +1 -1
  248. package/es/render/jsx/index.js.map +1 -1
  249. package/es/render/layout/index.d.ts +1 -1
  250. package/es/render/layout/index.js +1 -1
  251. package/es/render/layout/index.js.map +1 -1
  252. package/es/render/layout/tag.d.ts +2 -2
  253. package/es/render/layout/tag.js +1 -1
  254. package/es/render/layout/tag.js.map +1 -1
  255. package/es/render/layout/text.js.map +1 -1
  256. package/es/scenegraph/component/cell-content.d.ts +4 -4
  257. package/es/scenegraph/component/cell-content.js +2 -2
  258. package/es/scenegraph/component/cell-content.js.map +1 -1
  259. package/es/scenegraph/component/menu.js +6 -1
  260. package/es/scenegraph/component/menu.js.map +1 -1
  261. package/es/scenegraph/component/table-component.d.ts +1 -1
  262. package/es/scenegraph/component/table-component.js +1 -1
  263. package/es/scenegraph/component/table-component.js.map +1 -1
  264. package/es/scenegraph/graphic/chart.d.ts +2 -0
  265. package/es/scenegraph/graphic/chart.js +4 -4
  266. package/es/scenegraph/graphic/chart.js.map +1 -1
  267. package/es/scenegraph/graphic/contributions/chart-render-helper.d.ts +2 -0
  268. package/es/scenegraph/graphic/contributions/chart-render-helper.js +9 -9
  269. package/es/scenegraph/graphic/contributions/chart-render-helper.js.map +1 -1
  270. package/es/scenegraph/graphic/contributions/chart-render.js +2 -2
  271. package/es/scenegraph/graphic/contributions/chart-render.js.map +1 -1
  272. package/es/scenegraph/graphic/contributions/rect-contribution-render.js +1 -1
  273. package/es/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -1
  274. package/es/scenegraph/graphic/icon.d.ts +8 -2
  275. package/es/scenegraph/graphic/icon.js +11 -1
  276. package/es/scenegraph/graphic/icon.js.map +1 -1
  277. package/es/scenegraph/group-creater/cell-helper.js +4 -0
  278. package/es/scenegraph/group-creater/cell-helper.js.map +1 -1
  279. package/es/scenegraph/group-creater/cell-type/button-cell.d.ts +6 -0
  280. package/es/scenegraph/group-creater/cell-type/button-cell.js +135 -0
  281. package/es/scenegraph/group-creater/cell-type/button-cell.js.map +1 -0
  282. package/es/scenegraph/group-creater/cell-type/chart-cell.js +4 -2
  283. package/es/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  284. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js +1 -1
  285. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  286. package/es/scenegraph/group-creater/cell-type/index.d.ts +2 -0
  287. package/es/scenegraph/group-creater/cell-type/index.js +12 -0
  288. package/es/scenegraph/group-creater/cell-type/index.js.map +1 -1
  289. package/es/scenegraph/group-creater/cell-type/radio-cell.js +1 -1
  290. package/es/scenegraph/group-creater/cell-type/radio-cell.js.map +1 -1
  291. package/es/scenegraph/group-creater/cell-type/switch-cell.d.ts +6 -0
  292. package/es/scenegraph/group-creater/cell-type/switch-cell.js +150 -0
  293. package/es/scenegraph/group-creater/cell-type/switch-cell.js.map +1 -0
  294. package/es/scenegraph/layout/compute-col-width.js +24 -6
  295. package/es/scenegraph/layout/compute-col-width.js.map +1 -1
  296. package/es/scenegraph/layout/compute-row-height.js +2 -2
  297. package/es/scenegraph/layout/compute-row-height.js.map +1 -1
  298. package/es/scenegraph/layout/height-util.d.ts +2 -0
  299. package/es/scenegraph/layout/height-util.js +35 -2
  300. package/es/scenegraph/layout/height-util.js.map +1 -1
  301. package/es/scenegraph/scenegraph.d.ts +1 -1
  302. package/es/scenegraph/scenegraph.js +7 -6
  303. package/es/scenegraph/scenegraph.js.map +1 -1
  304. package/es/scenegraph/utils/cell-border-stroke-width.d.ts +1 -1
  305. package/es/scenegraph/utils/cell-border-stroke-width.js.map +1 -1
  306. package/es/scenegraph/utils/text-icon-layout.d.ts +2 -2
  307. package/es/scenegraph/utils/text-icon-layout.js +9 -8
  308. package/es/scenegraph/utils/text-icon-layout.js.map +1 -1
  309. package/es/scenegraph/utils/text-measure.js.map +1 -1
  310. package/es/state/radio/radio.js +1 -1
  311. package/es/state/radio/radio.js.map +1 -1
  312. package/es/state/select/custom-select.js +1 -1
  313. package/es/state/select/custom-select.js.map +1 -1
  314. package/es/state/state.js +6 -2
  315. package/es/state/state.js.map +1 -1
  316. package/es/themes/theme.d.ts +4 -0
  317. package/es/themes/theme.js +17 -2
  318. package/es/themes/theme.js.map +1 -1
  319. package/es/tools/icons.d.ts +2 -2
  320. package/es/tools/icons.js +1 -1
  321. package/es/tools/icons.js.map +1 -1
  322. package/es/ts-types/base-table.d.ts +23 -4
  323. package/es/ts-types/base-table.js.map +1 -1
  324. package/es/ts-types/column/style.d.ts +32 -0
  325. package/es/ts-types/column/style.js.map +1 -1
  326. package/es/ts-types/column/type.d.ts +1 -1
  327. package/es/ts-types/column/type.js.map +1 -1
  328. package/es/ts-types/component/legend.d.ts +1 -1
  329. package/es/ts-types/component/legend.js.map +1 -1
  330. package/es/ts-types/events.d.ts +10 -0
  331. package/es/ts-types/events.js.map +1 -1
  332. package/es/ts-types/icon.d.ts +6 -6
  333. package/es/ts-types/icon.js.map +1 -1
  334. package/es/ts-types/list-table/define/button-define.d.ts +9 -0
  335. package/es/ts-types/list-table/define/button-define.js +2 -0
  336. package/es/ts-types/list-table/define/button-define.js.map +1 -0
  337. package/es/ts-types/list-table/define/composite-define.js +2 -0
  338. package/{cjs/ts-types/list-table/define/Composite-define.js.map → es/ts-types/list-table/define/composite-define.js.map} +1 -1
  339. package/es/ts-types/list-table/define/index.d.ts +7 -3
  340. package/es/ts-types/list-table/define/index.js.map +1 -1
  341. package/es/ts-types/list-table/define/switch-define.d.ts +11 -0
  342. package/es/ts-types/list-table/define/switch-define.js +2 -0
  343. package/es/ts-types/list-table/define/switch-define.js.map +1 -0
  344. package/es/ts-types/list-table/layout-map/api.d.ts +5 -1
  345. package/es/ts-types/list-table/layout-map/api.js.map +1 -1
  346. package/es/ts-types/pivot-table/dimension/basic-dimension.d.ts +5 -1
  347. package/es/ts-types/pivot-table/dimension/basic-dimension.js.map +1 -1
  348. package/es/ts-types/pivot-table/indicator/basic-indicator.d.ts +5 -1
  349. package/es/ts-types/pivot-table/indicator/basic-indicator.js.map +1 -1
  350. package/es/ts-types/table-engine.d.ts +8 -0
  351. package/es/ts-types/table-engine.js.map +1 -1
  352. package/es/ts-types/theme.d.ts +4 -2
  353. package/es/ts-types/theme.js.map +1 -1
  354. package/es/vrender.js.map +1 -1
  355. package/package.json +6 -6
  356. package/es/ts-types/list-table/define/Composite-define.js +0 -2
  357. /package/cjs/ts-types/list-table/define/{Composite-define.d.ts → composite-define.d.ts} +0 -0
  358. /package/es/ts-types/list-table/define/{Composite-define.d.ts → composite-define.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/menu/dom/MenuHandler.ts"],"names":[],"mappings":"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","file":"MenuHandler.js","sourcesContent":["import type { CellRange, DropDownMenuOptions, MenuInstanceInfo, MenuInstanceType } from '../../../ts-types';\nimport type { BaseMenu } from './BaseMenu';\nimport { Container, Menu } from './Menu';\nimport { cellInRange } from '../../../tools/helper';\nimport { TABLE_EVENT_TYPE } from '../../../core/TABLE_EVENT_TYPE';\nimport type { BaseTableAPI, HeaderData } from '../../../ts-types/base-table';\n// import { DEFAULTFONT } from '../../tools/global';\n// import { getFontSize } from '../../tools/canvases';\n\nconst MENU_INSTANCE_FACTORY = {\n 'dropdown-menu': function (table: BaseTableAPI): BaseMenu {\n return new Menu(table);\n },\n 'context-menu': function (table: BaseTableAPI): BaseMenu {\n return new Menu(table);\n },\n container(table: BaseTableAPI): BaseMenu {\n return new Container(table);\n }\n};\n\n/** 获取下拉菜单展示内容及坐标位置 */\nfunction getMenuInstanceInfo(\n table: BaseTableAPI,\n col: number,\n row: number,\n type: MenuInstanceType,\n dropDownMenuOptions?: DropDownMenuOptions\n): MenuInstanceInfo | null {\n const { lineHeight, textBaseline, textStick } = table._getCellStyle(col, row);\n // table.internalProps.layoutMap.getHeader(col, row).style ?? {};\n // const lineHeight = getFontSize(table.getContext(), font).height;\n let rect = table.getCellRangeRelativeRect(table.getCellRange(col, row));\n if (textStick) {\n rect = table.getVisibleCellRangeRelativeRect({ col, row });\n }\n\n let { left, right, bottom, top, width, height } = rect;\n if (table.isHeader(col, row)) {\n ({ left, right, bottom, top, width, height } = table.internalProps.headerHelper.getDropDownIconRect(\n rect,\n // paddingArray[1]\n lineHeight as number,\n textBaseline || 'middle'\n ));\n }\n if (dropDownMenuOptions?.content) {\n //如果有指定的下拉菜单内容\n return {\n type,\n position: dropDownMenuOptions.position,\n referencePosition: dropDownMenuOptions.referencePosition ?? {\n rect: {\n left,\n right,\n top,\n bottom,\n width,\n height\n }\n },\n content: dropDownMenuOptions.content\n };\n } // 没有指定的下拉菜单 从headerLayout中获取下拉菜单内容\n else if (type === 'dropdown-menu') {\n // 获取下拉菜单信息及位置 注:这里逻辑特指内置的下拉菜单\n const { dropDownMenu = table.globalDropDownMenu, pivotInfo } = table._getHeaderLayoutMap(col, row) as HeaderData;\n\n // const x = (left + right) / 2;\n // const y = bottom;\n\n return {\n type,\n // position: {\n // x,\n // y,\n // },\n referencePosition: {\n rect: {\n left,\n right,\n top,\n bottom,\n width,\n height\n }\n },\n content: dropDownMenu,\n pivotInfo\n };\n }\n // else if (type === 'context-menu') {\n // // 获取右键菜单信息及位置\n // const abstractPos = table._getMouseAbstractPoint(event, false);\n // let menu = null;\n // if (abstractPos && typeof table.options.contextmenu === 'function') {\n // menu = table.options.contextmenu(table.getHeaderField(col, row) as string, row);\n // } else if (abstractPos && Array.isArray(table.options.contextmenu)) {\n // menu = table.options.contextmenu;\n // }\n // return {\n // position: {\n // x: abstractPos.x,\n // y: abstractPos.y,\n // },\n // type,\n // content: menu,\n // };\n // }\n return null;\n}\n\ntype AttachInfo = {\n instance?: BaseMenu;\n range: CellRange;\n};\n\nexport interface IMenuHandler {\n new (table: BaseTableAPI): MenuHandler;\n}\nexport class MenuHandler {\n private _table: BaseTableAPI;\n private _menuInstances?: { [type: string]: BaseMenu };\n private _attachInfo?: AttachInfo | null;\n constructor(table: BaseTableAPI) {\n this._table = table;\n this._menuInstances = {};\n this._bindTableEvent(table);\n }\n release(): void {\n const menuInstances = this._menuInstances;\n for (const k in menuInstances) {\n menuInstances[k].release();\n }\n delete this._menuInstances;\n this._attachInfo = null;\n }\n _bindToCell(col: number, row: number, type: MenuInstanceType, dropDownMenuOptions?: DropDownMenuOptions): void {\n const info = this._attachInfo;\n const instanceInfo = this._getMenuInstanceInfo(col, row, type, dropDownMenuOptions);\n if (info && (!instanceInfo || info.instance !== instanceInfo.instance)) {\n info.instance?.unbindMenuElement();\n this._attachInfo = null;\n }\n if (!instanceInfo) {\n return;\n }\n const { instance, info: menuInstanceInfo } = instanceInfo;\n const attach = instance && instance.bindMenuElement(col, row, menuInstanceInfo);\n if (attach) {\n const range = this._table.getCellRange(col, row);\n this._attachInfo = { range, instance };\n }\n }\n _unbindFromCell(): void {\n const info = this._attachInfo;\n if (!info) {\n return;\n }\n const { instance } = info;\n instance?.unbindMenuElement();\n this._attachInfo = null;\n // this._table.showHoverIcon = undefined;\n }\n _isBindToCell(col: number, row: number): boolean {\n const info = this._attachInfo;\n if (!info) {\n return false;\n }\n return cellInRange(info.range, col, row);\n }\n /** 鼠标坐标位置 是否位于下拉菜单内 */\n pointInMenuElement(x: number, y: number) {\n if (!this._attachInfo) {\n return false;\n }\n const info = this._attachInfo;\n const { instance } = info;\n return instance.pointInMenuElement(x, y);\n }\n _bindTableEvent(table: BaseTableAPI): void {\n // 监听按钮点击事件\n // 三种情况:\n // 1. 没有菜单,点击弹出菜单\n // 2. 已显示菜单,点击关闭菜单\n // 3. 已显示菜单,点击其他菜单按钮,关闭当前菜单,显示另一菜单\n table.on(TABLE_EVENT_TYPE.DROPDOWN_ICON_CLICK, e => {\n if (this._attachInfo) {\n if (this._isBindToCell(e.col, e.row)) {\n this._unbindFromCell();\n } else {\n this._bindToCell(e.col, e.row, 'dropdown-menu');\n }\n } else {\n this._bindToCell(e.col, e.row, 'dropdown-menu');\n }\n });\n // 监听菜单清除事件\n table.on(TABLE_EVENT_TYPE.DROPDOWN_MENU_CLEAR, e => {\n this._unbindFromCell();\n });\n // 监听右键菜单\n table.on(TABLE_EVENT_TYPE.CONTEXTMENU_CELL, e => {\n if (table.internalProps.menu?.renderMode === 'html') {\n // 获取右键菜单信息及位置\n const abstractPos = table._getMouseAbstractPoint(e.event, false);\n let menu = null;\n if (abstractPos.inTable && typeof table.internalProps.menu?.contextMenuItems === 'function') {\n menu = table.internalProps.menu.contextMenuItems(\n table.getHeaderField(e.col, e.row) as string,\n e.row,\n e.col,\n table\n );\n } else if (abstractPos.inTable && Array.isArray(table.internalProps.menu?.contextMenuItems)) {\n menu = table.internalProps.menu?.contextMenuItems;\n }\n\n this._bindToCell(e.col, e.row, 'context-menu', {\n content: menu,\n position: { x: abstractPos.x, y: abstractPos.y }\n });\n }\n });\n }\n _getMenuInstanceInfo(\n col: number,\n row: number,\n type: MenuInstanceType,\n dropDownMenuOptions?: DropDownMenuOptions\n ): {\n instance?: BaseMenu;\n type: MenuInstanceType;\n info: MenuInstanceInfo;\n } | null {\n const table = this._table;\n const menuInstances = this._menuInstances;\n\n const info = getMenuInstanceInfo(table, col, row, type, dropDownMenuOptions);\n if (!info) {\n return null;\n }\n\n // const { type } = info;\n const instance =\n (menuInstances && menuInstances[type]) ||\n (menuInstances && (menuInstances[type] = MENU_INSTANCE_FACTORY[type](table)));\n\n return {\n instance,\n type,\n info\n };\n }\n\n containElement(el: HTMLElement): boolean {\n for (const k in this._menuInstances) {\n const contain = this._menuInstances[k].getRootElement()?.contains(el);\n if (contain) {\n return true;\n }\n }\n return false;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/components/menu/dom/MenuHandler.ts"],"names":[],"mappings":"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","file":"MenuHandler.js","sourcesContent":["import type { CellRange, DropDownMenuOptions, MenuInstanceInfo, MenuInstanceType } from '../../../ts-types';\nimport type { BaseMenu } from './BaseMenu';\nimport { Container, Menu } from './Menu';\nimport { cellInRange } from '../../../tools/helper';\nimport { TABLE_EVENT_TYPE } from '../../../core/TABLE_EVENT_TYPE';\nimport type { BaseTableAPI, HeaderData } from '../../../ts-types/base-table';\n// import { DEFAULTFONT } from '../../tools/global';\n// import { getFontSize } from '../../tools/canvases';\n\nconst MENU_INSTANCE_FACTORY = {\n 'dropdown-menu': function (table: BaseTableAPI): BaseMenu {\n return new Menu(table);\n },\n 'context-menu': function (table: BaseTableAPI): BaseMenu {\n return new Menu(table);\n },\n container(table: BaseTableAPI): BaseMenu {\n return new Container(table);\n }\n};\n\n/** 获取下拉菜单展示内容及坐标位置 */\nfunction getMenuInstanceInfo(\n table: BaseTableAPI,\n col: number,\n row: number,\n type: MenuInstanceType,\n dropDownMenuOptions?: DropDownMenuOptions\n): MenuInstanceInfo | null {\n const { lineHeight, textBaseline, textStick } = table._getCellStyle(col, row);\n // table.internalProps.layoutMap.getHeader(col, row).style ?? {};\n // const lineHeight = getFontSize(table.getContext(), font).height;\n let rect = table.getCellRangeRelativeRect(table.getCellRange(col, row));\n if (textStick) {\n rect = table.getVisibleCellRangeRelativeRect({ col, row });\n }\n\n let { left, right, bottom, top, width, height } = rect;\n if (table.isHeader(col, row)) {\n ({ left, right, bottom, top, width, height } = table.internalProps.headerHelper.getDropDownIconRect(\n rect,\n // paddingArray[1]\n lineHeight as number,\n textBaseline || 'middle'\n ));\n }\n if (dropDownMenuOptions?.content) {\n //如果有指定的下拉菜单内容\n return {\n type,\n position: dropDownMenuOptions.position,\n referencePosition: dropDownMenuOptions.referencePosition ?? {\n rect: {\n left,\n right,\n top,\n bottom,\n width,\n height\n }\n },\n content: dropDownMenuOptions.content\n };\n } // 没有指定的下拉菜单 从headerLayout中获取下拉菜单内容\n else if (type === 'dropdown-menu') {\n // 获取下拉菜单信息及位置 注:这里逻辑特指内置的下拉菜单\n let dropDownMenu = table.globalDropDownMenu;\n const headerData = table._getHeaderLayoutMap(col, row) as HeaderData;\n dropDownMenu = headerData.dropDownMenu ?? dropDownMenu;\n const pivotInfo = headerData.pivotInfo;\n\n if (typeof dropDownMenu === 'function') {\n dropDownMenu = dropDownMenu({ row, col, table });\n }\n // const x = (left + right) / 2;\n // const y = bottom;\n\n return {\n type,\n // position: {\n // x,\n // y,\n // },\n referencePosition: {\n rect: {\n left,\n right,\n top,\n bottom,\n width,\n height\n }\n },\n content: dropDownMenu,\n pivotInfo\n };\n }\n // else if (type === 'context-menu') {\n // // 获取右键菜单信息及位置\n // const abstractPos = table._getMouseAbstractPoint(event, false);\n // let menu = null;\n // if (abstractPos && typeof table.options.contextmenu === 'function') {\n // menu = table.options.contextmenu(table.getHeaderField(col, row) as string, row);\n // } else if (abstractPos && Array.isArray(table.options.contextmenu)) {\n // menu = table.options.contextmenu;\n // }\n // return {\n // position: {\n // x: abstractPos.x,\n // y: abstractPos.y,\n // },\n // type,\n // content: menu,\n // };\n // }\n return null;\n}\n\ntype AttachInfo = {\n instance?: BaseMenu;\n range: CellRange;\n};\n\nexport interface IMenuHandler {\n new (table: BaseTableAPI): MenuHandler;\n}\nexport class MenuHandler {\n private _table: BaseTableAPI;\n private _menuInstances?: { [type: string]: BaseMenu };\n private _attachInfo?: AttachInfo | null;\n constructor(table: BaseTableAPI) {\n this._table = table;\n this._menuInstances = {};\n this._bindTableEvent(table);\n }\n release(): void {\n const menuInstances = this._menuInstances;\n for (const k in menuInstances) {\n menuInstances[k].release();\n }\n delete this._menuInstances;\n this._attachInfo = null;\n }\n _bindToCell(col: number, row: number, type: MenuInstanceType, dropDownMenuOptions?: DropDownMenuOptions): void {\n const info = this._attachInfo;\n const instanceInfo = this._getMenuInstanceInfo(col, row, type, dropDownMenuOptions);\n if (info && (!instanceInfo || info.instance !== instanceInfo.instance)) {\n info.instance?.unbindMenuElement();\n this._attachInfo = null;\n }\n if (!instanceInfo) {\n return;\n }\n const { instance, info: menuInstanceInfo } = instanceInfo;\n const attach = instance && instance.bindMenuElement(col, row, menuInstanceInfo);\n if (attach) {\n const range = this._table.getCellRange(col, row);\n this._attachInfo = { range, instance };\n }\n }\n _unbindFromCell(): void {\n const info = this._attachInfo;\n if (!info) {\n return;\n }\n const { instance } = info;\n instance?.unbindMenuElement();\n this._attachInfo = null;\n // this._table.showHoverIcon = undefined;\n }\n _isBindToCell(col: number, row: number): boolean {\n const info = this._attachInfo;\n if (!info) {\n return false;\n }\n return cellInRange(info.range, col, row);\n }\n /** 鼠标坐标位置 是否位于下拉菜单内 */\n pointInMenuElement(x: number, y: number) {\n if (!this._attachInfo) {\n return false;\n }\n const info = this._attachInfo;\n const { instance } = info;\n return instance.pointInMenuElement(x, y);\n }\n _bindTableEvent(table: BaseTableAPI): void {\n // 监听按钮点击事件\n // 三种情况:\n // 1. 没有菜单,点击弹出菜单\n // 2. 已显示菜单,点击关闭菜单\n // 3. 已显示菜单,点击其他菜单按钮,关闭当前菜单,显示另一菜单\n table.on(TABLE_EVENT_TYPE.DROPDOWN_ICON_CLICK, e => {\n if (this._attachInfo) {\n if (this._isBindToCell(e.col, e.row)) {\n this._unbindFromCell();\n } else {\n this._bindToCell(e.col, e.row, 'dropdown-menu');\n }\n } else {\n this._bindToCell(e.col, e.row, 'dropdown-menu');\n }\n });\n // 监听菜单清除事件\n table.on(TABLE_EVENT_TYPE.DROPDOWN_MENU_CLEAR, e => {\n this._unbindFromCell();\n });\n // 监听右键菜单\n table.on(TABLE_EVENT_TYPE.CONTEXTMENU_CELL, e => {\n if (table.internalProps.menu?.renderMode === 'html') {\n // 获取右键菜单信息及位置\n const abstractPos = table._getMouseAbstractPoint(e.event, false);\n let menu = null;\n if (abstractPos.inTable && typeof table.internalProps.menu?.contextMenuItems === 'function') {\n menu = table.internalProps.menu.contextMenuItems(\n table.getHeaderField(e.col, e.row) as string,\n e.row,\n e.col,\n table\n );\n } else if (abstractPos.inTable && Array.isArray(table.internalProps.menu?.contextMenuItems)) {\n menu = table.internalProps.menu?.contextMenuItems;\n }\n\n this._bindToCell(e.col, e.row, 'context-menu', {\n content: menu,\n position: { x: abstractPos.x, y: abstractPos.y }\n });\n }\n });\n }\n _getMenuInstanceInfo(\n col: number,\n row: number,\n type: MenuInstanceType,\n dropDownMenuOptions?: DropDownMenuOptions\n ): {\n instance?: BaseMenu;\n type: MenuInstanceType;\n info: MenuInstanceInfo;\n } | null {\n const table = this._table;\n const menuInstances = this._menuInstances;\n\n const info = getMenuInstanceInfo(table, col, row, type, dropDownMenuOptions);\n if (!info) {\n return null;\n }\n\n // const { type } = info;\n const instance =\n (menuInstances && menuInstances[type]) ||\n (menuInstances && (menuInstances[type] = MENU_INSTANCE_FACTORY[type](table)));\n\n return {\n instance,\n type,\n info\n };\n }\n\n containElement(el: HTMLElement): boolean {\n for (const k in this._menuInstances) {\n const contain = this._menuInstances[k].getRootElement()?.contains(el);\n if (contain) {\n return true;\n }\n }\n return false;\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
- import { Title as TitleComponents } from '@visactor/vrender-components';
2
- import type { TitleAttrs } from '@visactor/vrender-components';
1
+ import { Title as TitleComponents } from './../../vrender';
2
+ import type { TitleAttrs } from './../../vrender';
3
3
  import type { ITitle } from '../../ts-types/component/title';
4
4
  import type { BaseTableAPI } from '../../ts-types/base-table';
5
5
  export interface ITitleComponent {
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  }), exports.Title = void 0;
6
6
 
7
- const vrender_components_1 = require("@visactor/vrender-components"), padding_1 = require("../../scenegraph/utils/padding"), vutils_1 = require("@visactor/vutils");
7
+ const vrender_1 = require("./../../vrender"), padding_1 = require("../../scenegraph/utils/padding"), vutils_1 = require("@visactor/vutils");
8
8
 
9
9
  class Title {
10
10
  constructor(titleOption, table) {
@@ -14,7 +14,7 @@ class Title {
14
14
  }
15
15
  _createOrUpdateTitleComponent(attrs) {
16
16
  if (this._titleComponent) (0, vutils_1.isEqual)(attrs, this._cacheAttrs) || this._titleComponent.setAttributes(attrs); else {
17
- const title = new vrender_components_1.Title(attrs);
17
+ const title = new vrender_1.Title(attrs);
18
18
  title.name = "title", this.table.scenegraph.stage.defaultLayer.appendChild(title),
19
19
  this._titleComponent = title;
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/title/title.ts"],"names":[],"mappings":"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","file":"title.js","sourcesContent":["import { Title as TitleComponents } from '@visactor/vrender-components';\n// eslint-disable-next-line no-duplicate-imports\nimport type { TitleAttrs } from '@visactor/vrender-components';\nimport type { ITitle } from '../../ts-types/component/title';\nimport { getQuadProps } from '../../scenegraph/utils/padding';\nimport type { BaseTableAPI } from '../../ts-types/base-table';\nimport { isEqual, merge } from '@visactor/vutils';\n\nexport interface ITitleComponent {\n new (titleOption: ITitle, table: BaseTableAPI): Title;\n}\nexport class Title {\n table: BaseTableAPI;\n _titleOption: ITitle;\n isReleased: boolean = false;\n private _titleComponent: TitleComponents;\n private _cacheAttrs: TitleAttrs;\n constructor(titleOption: ITitle, table: BaseTableAPI) {\n this.table = table;\n this._titleOption = merge({ orient: 'top' }, titleOption);\n if (titleOption.visible !== false) {\n this._titleComponent = this._createOrUpdateTitleComponent(this._getTitleAttrs());\n }\n }\n\n private _createOrUpdateTitleComponent(attrs: TitleAttrs): TitleComponents {\n if (this._titleComponent) {\n if (!isEqual(attrs, this._cacheAttrs)) {\n this._titleComponent.setAttributes(attrs);\n }\n } else {\n const title = new TitleComponents(attrs);\n title.name = 'title';\n this.table.scenegraph.stage.defaultLayer.appendChild(title);\n this._titleComponent = title;\n // 代理 title 组件上的事件\n // title.on('*', (event: any, type: string) => this._delegateEvent(title as unknown as INode, event, type));\n }\n // update table size\n this._adjustTableSize(this._titleComponent.attribute);\n return this._titleComponent;\n }\n\n resize() {\n if (!this._titleComponent) {\n return;\n }\n const padding = getQuadProps(this._titleOption.padding ?? 10);\n const realWidth =\n this._titleOption.width ??\n (this.table.widthMode === 'adaptive'\n ? this.table.tableNoFrameWidth\n : Math.min(this.table.tableNoFrameWidth, this.table.getDrawRange().width)) -\n padding[1] -\n padding[3];\n const realHeight =\n this._titleOption.height ??\n (this.table.heightMode === 'adaptive'\n ? this.table.tableNoFrameHeight\n : Math.min(this.table.tableNoFrameHeight, this.table.getDrawRange().height)) -\n padding[0] -\n padding[2];\n this._titleComponent.setAttributes({\n x:\n this._titleOption.x ?? this._titleOption.orient === 'right'\n ? this.table.tableX + Math.min(this.table.tableNoFrameWidth, this.table.getDrawRange().width)\n : this.table.tableX,\n y:\n this._titleOption.y ?? this._titleOption.orient === 'bottom'\n ? this.table.tableY + this.table.tableNoFrameHeight\n : this.table.tableY,\n // width: realWidth,\n width:\n this._titleOption.orient === 'top' || this._titleOption.orient === 'bottom'\n ? realWidth\n : this._titleOption.width,\n height:\n this._titleOption.orient === 'left' || this._titleOption.orient === 'right'\n ? realHeight\n : this._titleOption.height,\n textStyle: {\n width: realWidth,\n ...this._titleOption.textStyle\n },\n subtextStyle: {\n width: realWidth,\n ...this._titleOption.subtextStyle\n }\n });\n this._adjustTableSize(this._titleComponent.attribute);\n }\n\n _adjustTableSize(attrs: TitleAttrs) {\n // 调整位置\n const width = isFinite(this._titleComponent?.AABBBounds.width()) ? this._titleComponent.AABBBounds.width() : 0;\n const height = isFinite(this._titleComponent?.AABBBounds.height()) ? this._titleComponent.AABBBounds.height() : 0;\n // const rectWidth = this.table.tableNoFrameWidth;\n // const rectHeight = this.table.tableNoFrameHeight;\n // const padding = getQuadProps((attrs.padding as number | number[]) ?? this._titleOption.padding ?? 10);\n\n // let x = 0;\n // let y = 0;\n // if (this._titleOption.orient === 'left') {\n // x = padding[3];\n // y = 0;\n // // width += padding[1] + padding[3];\n // } else if (this._titleOption.orient === 'top') {\n // x = 0;\n // y = padding[0];\n // // height += padding[0] + padding[2];\n // } else if (this._titleOption.orient === 'right') {\n // x = rectWidth - width - padding[1];\n // y = 0;\n // width += padding[1] + padding[3];\n // } else if (this._titleOption.orient === 'bottom') {\n // x = 0;\n // y = rectHeight - height - padding[2];\n // // height += padding[0] + padding[2];\n // }\n if (this._titleOption.orient === 'left') {\n this.table.tableNoFrameWidth = this.table.tableNoFrameWidth - Math.ceil(width);\n this.table.tableX += Math.ceil(width);\n } else if (this._titleOption.orient === 'top') {\n this.table.tableNoFrameHeight = this.table.tableNoFrameHeight - Math.ceil(height);\n this.table.tableY += Math.ceil(height);\n } else if (this._titleOption.orient === 'right') {\n this.table.tableNoFrameWidth = this.table.tableNoFrameWidth - Math.ceil(width);\n } else if (this._titleOption.orient === 'bottom') {\n this.table.tableNoFrameHeight = this.table.tableNoFrameHeight - Math.ceil(height);\n }\n this._cacheAttrs = attrs;\n if (this._titleOption.orient === 'right' || this._titleOption.orient === 'bottom') {\n this._titleComponent.setAttributes({\n x:\n this._titleOption.x ?? this._titleOption.orient === 'right'\n ? this.table.tableX + this.table.tableNoFrameWidth\n : this.table.tableX,\n y:\n this._titleOption.y ?? this._titleOption.orient === 'bottom'\n ? this.table.tableY + this.table.tableNoFrameHeight\n : this.table.tableY\n });\n }\n }\n\n release(): void {\n this._titleComponent && this.table.scenegraph.stage.defaultLayer.removeChild(this._titleComponent);\n this._titleComponent = null;\n this.isReleased = true;\n }\n private _getTitleAttrs() {\n const defaultPadding = this._titleOption.text || this._titleOption.subtext ? 10 : 0;\n const padding = getQuadProps(this._titleOption.padding ?? defaultPadding);\n const realWidth =\n this._titleOption.width ??\n Math.min(this.table.tableNoFrameWidth, this.table.getDrawRange().width) - padding[1] - padding[3];\n const realHeight =\n this._titleOption.height ??\n Math.min(this.table.tableNoFrameHeight, this.table.getDrawRange().height) - padding[0] - padding[2];\n return {\n text: this._titleOption.text ?? '',\n subtext: this._titleOption.subtext ?? '',\n x:\n this._titleOption.x ?? this._titleOption.orient === 'right'\n ? this.table.tableX + Math.min(this.table.tableNoFrameWidth, this.table.getDrawRange().width)\n : this.table.tableX,\n y:\n this._titleOption.y ?? this._titleOption.orient === 'bottom'\n ? this.table.tableY + this.table.tableNoFrameHeight\n : this.table.tableY,\n width:\n this._titleOption.orient === 'top' || this._titleOption.orient === 'bottom'\n ? realWidth\n : this._titleOption.width,\n height:\n this._titleOption.orient === 'left' || this._titleOption.orient === 'right'\n ? realHeight\n : this._titleOption.height,\n minWidth: this._titleOption.minWidth,\n maxWidth: this._titleOption.maxWidth,\n minHeight: this._titleOption.minHeight,\n maxHeight: this._titleOption.maxHeight,\n padding: this._titleOption.padding,\n align: this._titleOption.align ?? 'left',\n verticalAlign: this._titleOption.verticalAlign ?? 'top',\n textStyle: {\n width: realWidth,\n ...this._titleOption.textStyle\n },\n subtextStyle: {\n width: realWidth,\n ...this._titleOption.subtextStyle\n },\n dx: this._titleOption.dx ?? 0,\n dy: this._titleOption.dy ?? 0\n } as TitleAttrs;\n }\n\n getComponentGraphic() {\n return this._titleComponent;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/components/title/title.ts"],"names":[],"mappings":"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","file":"title.js","sourcesContent":["import { Title as TitleComponents } from './../../vrender';\n// eslint-disable-next-line no-duplicate-imports\nimport type { TitleAttrs } from './../../vrender';\nimport type { ITitle } from '../../ts-types/component/title';\nimport { getQuadProps } from '../../scenegraph/utils/padding';\nimport type { BaseTableAPI } from '../../ts-types/base-table';\nimport { isEqual, merge } from '@visactor/vutils';\n\nexport interface ITitleComponent {\n new (titleOption: ITitle, table: BaseTableAPI): Title;\n}\nexport class Title {\n table: BaseTableAPI;\n _titleOption: ITitle;\n isReleased: boolean = false;\n private _titleComponent: TitleComponents;\n private _cacheAttrs: TitleAttrs;\n constructor(titleOption: ITitle, table: BaseTableAPI) {\n this.table = table;\n this._titleOption = merge({ orient: 'top' }, titleOption);\n if (titleOption.visible !== false) {\n this._titleComponent = this._createOrUpdateTitleComponent(this._getTitleAttrs());\n }\n }\n\n private _createOrUpdateTitleComponent(attrs: TitleAttrs): TitleComponents {\n if (this._titleComponent) {\n if (!isEqual(attrs, this._cacheAttrs)) {\n this._titleComponent.setAttributes(attrs);\n }\n } else {\n const title = new TitleComponents(attrs);\n title.name = 'title';\n this.table.scenegraph.stage.defaultLayer.appendChild(title);\n this._titleComponent = title;\n // 代理 title 组件上的事件\n // title.on('*', (event: any, type: string) => this._delegateEvent(title as unknown as INode, event, type));\n }\n // update table size\n this._adjustTableSize(this._titleComponent.attribute);\n return this._titleComponent;\n }\n\n resize() {\n if (!this._titleComponent) {\n return;\n }\n const padding = getQuadProps(this._titleOption.padding ?? 10);\n const realWidth =\n this._titleOption.width ??\n (this.table.widthMode === 'adaptive'\n ? this.table.tableNoFrameWidth\n : Math.min(this.table.tableNoFrameWidth, this.table.getDrawRange().width)) -\n padding[1] -\n padding[3];\n const realHeight =\n this._titleOption.height ??\n (this.table.heightMode === 'adaptive'\n ? this.table.tableNoFrameHeight\n : Math.min(this.table.tableNoFrameHeight, this.table.getDrawRange().height)) -\n padding[0] -\n padding[2];\n this._titleComponent.setAttributes({\n x:\n this._titleOption.x ?? this._titleOption.orient === 'right'\n ? this.table.tableX + Math.min(this.table.tableNoFrameWidth, this.table.getDrawRange().width)\n : this.table.tableX,\n y:\n this._titleOption.y ?? this._titleOption.orient === 'bottom'\n ? this.table.tableY + this.table.tableNoFrameHeight\n : this.table.tableY,\n // width: realWidth,\n width:\n this._titleOption.orient === 'top' || this._titleOption.orient === 'bottom'\n ? realWidth\n : this._titleOption.width,\n height:\n this._titleOption.orient === 'left' || this._titleOption.orient === 'right'\n ? realHeight\n : this._titleOption.height,\n textStyle: {\n width: realWidth,\n ...this._titleOption.textStyle\n },\n subtextStyle: {\n width: realWidth,\n ...this._titleOption.subtextStyle\n }\n });\n this._adjustTableSize(this._titleComponent.attribute);\n }\n\n _adjustTableSize(attrs: TitleAttrs) {\n // 调整位置\n const width = isFinite(this._titleComponent?.AABBBounds.width()) ? this._titleComponent.AABBBounds.width() : 0;\n const height = isFinite(this._titleComponent?.AABBBounds.height()) ? this._titleComponent.AABBBounds.height() : 0;\n // const rectWidth = this.table.tableNoFrameWidth;\n // const rectHeight = this.table.tableNoFrameHeight;\n // const padding = getQuadProps((attrs.padding as number | number[]) ?? this._titleOption.padding ?? 10);\n\n // let x = 0;\n // let y = 0;\n // if (this._titleOption.orient === 'left') {\n // x = padding[3];\n // y = 0;\n // // width += padding[1] + padding[3];\n // } else if (this._titleOption.orient === 'top') {\n // x = 0;\n // y = padding[0];\n // // height += padding[0] + padding[2];\n // } else if (this._titleOption.orient === 'right') {\n // x = rectWidth - width - padding[1];\n // y = 0;\n // width += padding[1] + padding[3];\n // } else if (this._titleOption.orient === 'bottom') {\n // x = 0;\n // y = rectHeight - height - padding[2];\n // // height += padding[0] + padding[2];\n // }\n if (this._titleOption.orient === 'left') {\n this.table.tableNoFrameWidth = this.table.tableNoFrameWidth - Math.ceil(width);\n this.table.tableX += Math.ceil(width);\n } else if (this._titleOption.orient === 'top') {\n this.table.tableNoFrameHeight = this.table.tableNoFrameHeight - Math.ceil(height);\n this.table.tableY += Math.ceil(height);\n } else if (this._titleOption.orient === 'right') {\n this.table.tableNoFrameWidth = this.table.tableNoFrameWidth - Math.ceil(width);\n } else if (this._titleOption.orient === 'bottom') {\n this.table.tableNoFrameHeight = this.table.tableNoFrameHeight - Math.ceil(height);\n }\n this._cacheAttrs = attrs;\n if (this._titleOption.orient === 'right' || this._titleOption.orient === 'bottom') {\n this._titleComponent.setAttributes({\n x:\n this._titleOption.x ?? this._titleOption.orient === 'right'\n ? this.table.tableX + this.table.tableNoFrameWidth\n : this.table.tableX,\n y:\n this._titleOption.y ?? this._titleOption.orient === 'bottom'\n ? this.table.tableY + this.table.tableNoFrameHeight\n : this.table.tableY\n });\n }\n }\n\n release(): void {\n this._titleComponent && this.table.scenegraph.stage.defaultLayer.removeChild(this._titleComponent);\n this._titleComponent = null;\n this.isReleased = true;\n }\n private _getTitleAttrs() {\n const defaultPadding = this._titleOption.text || this._titleOption.subtext ? 10 : 0;\n const padding = getQuadProps(this._titleOption.padding ?? defaultPadding);\n const realWidth =\n this._titleOption.width ??\n Math.min(this.table.tableNoFrameWidth, this.table.getDrawRange().width) - padding[1] - padding[3];\n const realHeight =\n this._titleOption.height ??\n Math.min(this.table.tableNoFrameHeight, this.table.getDrawRange().height) - padding[0] - padding[2];\n return {\n text: this._titleOption.text ?? '',\n subtext: this._titleOption.subtext ?? '',\n x:\n this._titleOption.x ?? this._titleOption.orient === 'right'\n ? this.table.tableX + Math.min(this.table.tableNoFrameWidth, this.table.getDrawRange().width)\n : this.table.tableX,\n y:\n this._titleOption.y ?? this._titleOption.orient === 'bottom'\n ? this.table.tableY + this.table.tableNoFrameHeight\n : this.table.tableY,\n width:\n this._titleOption.orient === 'top' || this._titleOption.orient === 'bottom'\n ? realWidth\n : this._titleOption.width,\n height:\n this._titleOption.orient === 'left' || this._titleOption.orient === 'right'\n ? realHeight\n : this._titleOption.height,\n minWidth: this._titleOption.minWidth,\n maxWidth: this._titleOption.maxWidth,\n minHeight: this._titleOption.minHeight,\n maxHeight: this._titleOption.maxHeight,\n padding: this._titleOption.padding,\n align: this._titleOption.align ?? 'left',\n verticalAlign: this._titleOption.verticalAlign ?? 'top',\n textStyle: {\n width: realWidth,\n ...this._titleOption.textStyle\n },\n subtextStyle: {\n width: realWidth,\n ...this._titleOption.subtextStyle\n },\n dx: this._titleOption.dx ?? 0,\n dy: this._titleOption.dy ?? 0\n } as TitleAttrs;\n }\n\n getComponentGraphic() {\n return this._titleComponent;\n }\n}\n"]}
@@ -32,7 +32,11 @@ export declare abstract class BaseTable extends EventTarget implements BaseTable
32
32
  right: number;
33
33
  bottom: number;
34
34
  };
35
- globalDropDownMenu?: MenuListItem[];
35
+ globalDropDownMenu?: MenuListItem[] | ((args: {
36
+ row: number;
37
+ col: number;
38
+ table: BaseTableAPI;
39
+ }) => MenuListItem[]);
36
40
  tableNoFrameWidth: number;
37
41
  tableNoFrameHeight: number;
38
42
  tableX: number;
@@ -42,12 +42,12 @@ class BaseTable extends EventTarget_1.EventTarget {
42
42
  return TABLE_EVENT_TYPE_1.TABLE_EVENT_TYPE;
43
43
  }
44
44
  constructor(container, options = {}) {
45
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
46
- if (super(), this.showFrozenIcon = !0, this.version = "1.17.0-alpha.4", this.id = `VTable${Date.now()}`,
45
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
46
+ if (super(), this.showFrozenIcon = !0, this.version = "1.17.0", this.id = `VTable${Date.now()}`,
47
47
  this.isReleased = !1, this._chartEventMap = {}, this.throttleInvalidate = (0, util_1.throttle2)(this.render.bind(this), 200),
48
48
  !container && "node" !== options.mode && !options.canvas) throw new Error("vtable's container is undefined");
49
49
  !1 === (null === (_a = options.customConfig) || void 0 === _a ? void 0 : _a.imageAnonymous) && (vrender_1.vglobal.isImageAnonymous = !1);
50
- const {frozenColCount: frozenColCount = 0, unfreezeAllOnExceedsMaxWidth: unfreezeAllOnExceedsMaxWidth, frozenRowCount: frozenRowCount, defaultRowHeight: defaultRowHeight = 40, defaultHeaderRowHeight: defaultHeaderRowHeight, defaultColWidth: defaultColWidth = 80, defaultHeaderColWidth: defaultHeaderColWidth, widthMode: widthMode = "standard", heightMode: heightMode = "standard", autoFillWidth: autoFillWidth = !1, autoFillHeight: autoFillHeight = !1, widthAdaptiveMode: widthAdaptiveMode = "only-body", heightAdaptiveMode: heightAdaptiveMode = "only-body", keyboardOptions: keyboardOptions, eventOptions: eventOptions, rowSeriesNumber: rowSeriesNumber, columnResizeMode: columnResizeMode, rowResizeMode: rowResizeMode = "none", dragHeaderMode: dragHeaderMode, showFrozenIcon: showFrozenIcon, allowFrozenColCount: allowFrozenColCount, padding: padding, hover: hover, menu: menu, select: click, customRender: customRender, pixelRatio: pixelRatio = pixel_ratio_1.defaultPixelRatio, renderChartAsync: renderChartAsync, renderChartAsyncBatchCount: renderChartAsyncBatchCount, mode: mode, modeParams: modeParams, canvasWidth: canvasWidth, canvasHeight: canvasHeight, overscrollBehavior: overscrollBehavior, limitMinWidth: limitMinWidth, limitMinHeight: limitMinHeight, clearDOM: clearDOM = !0} = options;
50
+ const {frozenColCount: frozenColCount = 0, unfreezeAllOnExceedsMaxWidth: unfreezeAllOnExceedsMaxWidth, frozenRowCount: frozenRowCount, defaultRowHeight: defaultRowHeight = 40, defaultHeaderRowHeight: defaultHeaderRowHeight, defaultColWidth: defaultColWidth = 80, defaultHeaderColWidth: defaultHeaderColWidth, widthMode: widthMode = "standard", heightMode: heightMode = "standard", autoFillWidth: autoFillWidth = !1, autoFillHeight: autoFillHeight = !1, widthAdaptiveMode: widthAdaptiveMode = "only-body", heightAdaptiveMode: heightAdaptiveMode = "only-body", keyboardOptions: keyboardOptions, eventOptions: eventOptions, rowSeriesNumber: rowSeriesNumber, columnResizeMode: columnResizeMode, rowResizeMode: rowResizeMode = "none", resize: resize, dragHeaderMode: dragHeaderMode, showFrozenIcon: showFrozenIcon, allowFrozenColCount: allowFrozenColCount, padding: padding, hover: hover, menu: menu, select: click, customRender: customRender, pixelRatio: pixelRatio = pixel_ratio_1.defaultPixelRatio, renderChartAsync: renderChartAsync, renderChartAsyncBatchCount: renderChartAsyncBatchCount, mode: mode, modeParams: modeParams, canvasWidth: canvasWidth, canvasHeight: canvasHeight, overscrollBehavior: overscrollBehavior, limitMinWidth: limitMinWidth, limitMinHeight: limitMinHeight, clearDOM: clearDOM = !0} = options;
51
51
  this.container = container, this.options = options, this._widthMode = widthMode,
52
52
  this._heightMode = heightMode, this._widthAdaptiveMode = widthAdaptiveMode, this._heightAdaptiveMode = heightAdaptiveMode,
53
53
  this._autoFillWidth = autoFillWidth, this._autoFillHeight = autoFillHeight, this.customRender = customRender,
@@ -66,8 +66,8 @@ class BaseTable extends EventTarget_1.EventTarget {
66
66
  this.columnWidthComputeMode = null !== (_b = options.columnWidthComputeMode) && void 0 !== _b ? _b : "normal";
67
67
  const internalProps = this.internalProps = {};
68
68
  void 0 !== showFrozenIcon && (this.showFrozenIcon = showFrozenIcon), "number" == typeof allowFrozenColCount && allowFrozenColCount <= 0 && (this.showFrozenIcon = !1),
69
- this.options.canvas ? (internalProps.element = this.options.canvas.parentElement,
70
- internalProps.element.style.position = "relative", internalProps.focusControl = new FouseInput_1.FocusInput(this, internalProps.element),
69
+ this.options.canvas ? ("node" !== env_1.Env.mode && (internalProps.element = this.options.canvas.parentElement,
70
+ internalProps.element.style.position = "relative"), internalProps.focusControl = new FouseInput_1.FocusInput(this, internalProps.element),
71
71
  internalProps.canvas = this.options.canvas, internalProps.context = internalProps.canvas.getContext("2d")) : "node" !== env_1.Env.mode && (internalProps.element = (0,
72
72
  tableHelper_1.createRootElement)(this.padding), internalProps.focusControl = new FouseInput_1.FocusInput(this, internalProps.element),
73
73
  internalProps.canvas = document.createElement("canvas"), internalProps.element.appendChild(internalProps.canvas),
@@ -79,8 +79,9 @@ class BaseTable extends EventTarget_1.EventTarget {
79
79
  internalProps.defaultRowHeight = defaultRowHeight, internalProps.defaultHeaderRowHeight = null != defaultHeaderRowHeight ? defaultHeaderRowHeight : defaultRowHeight,
80
80
  internalProps.defaultColWidth = defaultColWidth, internalProps.defaultHeaderColWidth = null != defaultHeaderColWidth ? defaultHeaderColWidth : defaultColWidth,
81
81
  internalProps.keyboardOptions = keyboardOptions, internalProps.eventOptions = eventOptions,
82
- internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.columnResizeMode = columnResizeMode,
83
- internalProps.rowResizeMode = rowResizeMode, internalProps.dragHeaderMode = null != dragHeaderMode ? dragHeaderMode : "none",
82
+ internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.columnResizeMode = null !== (_d = null == resize ? void 0 : resize.columnResizeMode) && void 0 !== _d ? _d : columnResizeMode,
83
+ internalProps.rowResizeMode = null !== (_e = null == resize ? void 0 : resize.rowResizeMode) && void 0 !== _e ? _e : rowResizeMode,
84
+ internalProps.dragHeaderMode = null != dragHeaderMode ? dragHeaderMode : "none",
84
85
  internalProps.renderChartAsync = renderChartAsync, (0, chart_render_helper_1.setBatchRenderChartCount)(renderChartAsyncBatchCount),
85
86
  internalProps.overscrollBehavior = null != overscrollBehavior ? overscrollBehavior : "auto",
86
87
  internalProps._rowHeightsMap = new row_height_map_1.NumberRangeMap(this), internalProps._rowRangeHeightsMap = new Map,
@@ -94,14 +95,14 @@ class BaseTable extends EventTarget_1.EventTarget {
94
95
  var _a;
95
96
  return "node" === env_1.Env.mode ? that.canvasWidth / (null != pixelRatio ? pixelRatio : 1) : this._.canvas.width / (null !== (_a = this._.context.pixelRatio) && void 0 !== _a ? _a : window.devicePixelRatio);
96
97
  }
97
- }, internalProps.cellTextOverflows = {}, internalProps.focusedTable = !1, internalProps.theme = themes_1.default.of(null !== (_d = options.theme) && void 0 !== _d ? _d : themes_1.default.DEFAULT),
98
+ }, internalProps.cellTextOverflows = {}, internalProps.focusedTable = !1, internalProps.theme = themes_1.default.of(null !== (_f = options.theme) && void 0 !== _f ? _f : themes_1.default.DEFAULT),
98
99
  internalProps.theme.isPivot = this.isPivotTable(), (0, icons_2.setIconColor)(internalProps.theme.functionalIconsStyle),
99
100
  container ? (clearDOM && (container.innerHTML = ""), container.appendChild(internalProps.element),
100
101
  this._updateSize()) : this._updateSize(), internalProps.bodyHelper = new body_helper_1.BodyHelper(this),
101
102
  internalProps.headerHelper = new header_helper_1.HeaderHelper(this), internalProps.rowSeriesNumberHelper = new row_series_number_helper_1.RowSeriesNumberHelper(this),
102
103
  internalProps.autoWrapText = options.autoWrapText, internalProps.enableLineBreak = options.enableLineBreak,
103
- internalProps.allowFrozenColCount = null !== (_e = options.allowFrozenColCount) && void 0 !== _e ? _e : 0,
104
- internalProps.limitMaxAutoWidth = null !== (_f = options.limitMaxAutoWidth) && void 0 !== _f ? _f : 450,
104
+ internalProps.allowFrozenColCount = null !== (_g = options.allowFrozenColCount) && void 0 !== _g ? _g : 0,
105
+ internalProps.limitMaxAutoWidth = null !== (_h = options.limitMaxAutoWidth) && void 0 !== _h ? _h : 450,
105
106
  internalProps.limitMinWidth = null != limitMinWidth ? "number" == typeof limitMinWidth ? limitMinWidth : limitMinWidth ? 10 : 0 : 10,
106
107
  internalProps.limitMinHeight = null != limitMinHeight ? "number" == typeof limitMinHeight ? limitMinHeight : limitMinHeight ? 10 : 0 : 10,
107
108
  this.scenegraph = new scenegraph_1.Scenegraph(this), this.stateManager = new state_1.StateManager(this),
@@ -132,8 +133,8 @@ class BaseTable extends EventTarget_1.EventTarget {
132
133
  }
133
134
  if (internalProps.menu = Object.assign({
134
135
  renderMode: "html"
135
- }, options.menu), Array.isArray(null === (_g = options.menu) || void 0 === _g ? void 0 : _g.dropDownMenuHighlight) && this.setDropDownMenuHighlight(null === (_h = options.menu) || void 0 === _h ? void 0 : _h.dropDownMenuHighlight),
136
- Array.isArray(null === (_j = options.menu) || void 0 === _j ? void 0 : _j.defaultHeaderMenuItems) && (this.globalDropDownMenu = options.menu.defaultHeaderMenuItems),
136
+ }, options.menu), Array.isArray(null === (_j = options.menu) || void 0 === _j ? void 0 : _j.dropDownMenuHighlight) && this.setDropDownMenuHighlight(null === (_k = options.menu) || void 0 === _k ? void 0 : _k.dropDownMenuHighlight),
137
+ (Array.isArray(null === (_l = options.menu) || void 0 === _l ? void 0 : _l.defaultHeaderMenuItems) || "function" == typeof (null === (_m = options.menu) || void 0 === _m ? void 0 : _m.defaultHeaderMenuItems)) && (this.globalDropDownMenu = options.menu.defaultHeaderMenuItems),
137
138
  "html" === internalProps.menu.renderMode) {
138
139
  const MenuHandler = factory_1.Factory.getComponent("menuHandler");
139
140
  internalProps.menuHandler = new MenuHandler(this);
@@ -143,7 +144,7 @@ class BaseTable extends EventTarget_1.EventTarget {
143
144
  changedCells: new Map
144
145
  }, internalProps.customMergeCell = (0, get_custom_merge_cell_func_1.getCustomMergeCellFunc)(options.customMergeCell);
145
146
  const CustomCellStylePlugin = factory_1.Factory.getComponent("customCellStylePlugin");
146
- CustomCellStylePlugin && (this.customCellStylePlugin = new CustomCellStylePlugin(this, null !== (_k = options.customCellStyle) && void 0 !== _k ? _k : [], null !== (_l = options.customCellStyleArrangement) && void 0 !== _l ? _l : [])),
147
+ CustomCellStylePlugin && (this.customCellStylePlugin = new CustomCellStylePlugin(this, null !== (_o = options.customCellStyle) && void 0 !== _o ? _o : [], null !== (_p = options.customCellStyleArrangement) && void 0 !== _p ? _p : [])),
147
148
  this._adjustCanvasSizeByOption();
148
149
  }
149
150
  _adjustCanvasSizeByOption() {
@@ -398,7 +399,8 @@ class BaseTable extends EventTarget_1.EventTarget {
398
399
  return this.internalProps.pixelRatio;
399
400
  }
400
401
  setPixelRatio(pixelRatio) {
401
- if (pixelRatio !== this.internalProps.pixelRatio) {
402
+ var _a;
403
+ if (pixelRatio !== (null === (_a = this.internalProps) || void 0 === _a ? void 0 : _a.pixelRatio)) {
402
404
  this.internalProps.pixelRatio = pixelRatio;
403
405
  const canvasWidth = this.canvasWidth;
404
406
  this.internalProps.calcWidthContext = {
@@ -844,9 +846,9 @@ class BaseTable extends EventTarget_1.EventTarget {
844
846
  return super.fireListeners(type, event);
845
847
  }
846
848
  updateOption(options) {
847
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
849
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
848
850
  this.options = options, this._hasAutoImageColumn = void 0;
849
- const {frozenColCount: frozenColCount = 0, unfreezeAllOnExceedsMaxWidth: unfreezeAllOnExceedsMaxWidth, defaultRowHeight: defaultRowHeight = 40, defaultHeaderRowHeight: defaultHeaderRowHeight, defaultColWidth: defaultColWidth = 80, defaultHeaderColWidth: defaultHeaderColWidth = 80, keyboardOptions: keyboardOptions, eventOptions: eventOptions, rowSeriesNumber: rowSeriesNumber, columnResizeMode: columnResizeMode, rowResizeMode: rowResizeMode = "none", dragHeaderMode: dragHeaderMode, showFrozenIcon: showFrozenIcon, allowFrozenColCount: allowFrozenColCount, padding: padding, hover: hover, menu: menu, select: click, pixelRatio: pixelRatio, widthMode: widthMode, heightMode: heightMode, autoFillWidth: autoFillWidth, autoFillHeight: autoFillHeight, widthAdaptiveMode: widthAdaptiveMode, heightAdaptiveMode: heightAdaptiveMode, customRender: customRender, renderChartAsync: renderChartAsync, renderChartAsyncBatchCount: renderChartAsyncBatchCount, canvasWidth: canvasWidth, canvasHeight: canvasHeight, overscrollBehavior: overscrollBehavior, limitMinWidth: limitMinWidth, limitMinHeight: limitMinHeight} = options;
851
+ const {frozenColCount: frozenColCount = 0, unfreezeAllOnExceedsMaxWidth: unfreezeAllOnExceedsMaxWidth, defaultRowHeight: defaultRowHeight = 40, defaultHeaderRowHeight: defaultHeaderRowHeight, defaultColWidth: defaultColWidth = 80, defaultHeaderColWidth: defaultHeaderColWidth = 80, keyboardOptions: keyboardOptions, eventOptions: eventOptions, rowSeriesNumber: rowSeriesNumber, columnResizeMode: columnResizeMode, rowResizeMode: rowResizeMode = "none", resize: resize, dragHeaderMode: dragHeaderMode, showFrozenIcon: showFrozenIcon, allowFrozenColCount: allowFrozenColCount, padding: padding, hover: hover, menu: menu, select: click, pixelRatio: pixelRatio, widthMode: widthMode, heightMode: heightMode, autoFillWidth: autoFillWidth, autoFillHeight: autoFillHeight, widthAdaptiveMode: widthAdaptiveMode, heightAdaptiveMode: heightAdaptiveMode, customRender: customRender, renderChartAsync: renderChartAsync, renderChartAsyncBatchCount: renderChartAsyncBatchCount, canvasWidth: canvasWidth, canvasHeight: canvasHeight, overscrollBehavior: overscrollBehavior, limitMinWidth: limitMinWidth, limitMinHeight: limitMinHeight} = options;
850
852
  pixelRatio && pixelRatio !== this.internalProps.pixelRatio && (this.internalProps.pixelRatio = pixelRatio),
851
853
  padding && ("number" == typeof padding ? (this.padding.top = padding, this.padding.left = padding,
852
854
  this.padding.bottom = padding, this.padding.right = padding) : (padding.top && (this.padding.top = padding.top),
@@ -866,25 +868,26 @@ class BaseTable extends EventTarget_1.EventTarget {
866
868
  internalProps.defaultRowHeight = defaultRowHeight, internalProps.defaultHeaderRowHeight = null != defaultHeaderRowHeight ? defaultHeaderRowHeight : defaultRowHeight,
867
869
  internalProps.defaultColWidth = defaultColWidth, internalProps.defaultHeaderColWidth = null != defaultHeaderColWidth ? defaultHeaderColWidth : defaultColWidth,
868
870
  internalProps.keyboardOptions = keyboardOptions, internalProps.eventOptions = eventOptions,
869
- internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.columnResizeMode = columnResizeMode,
870
- internalProps.rowResizeMode = rowResizeMode, internalProps.dragHeaderMode = null != dragHeaderMode ? dragHeaderMode : "none",
871
+ internalProps.rowSeriesNumber = rowSeriesNumber, internalProps.columnResizeMode = null !== (_b = null == resize ? void 0 : resize.columnResizeMode) && void 0 !== _b ? _b : columnResizeMode,
872
+ internalProps.rowResizeMode = null !== (_c = null == resize ? void 0 : resize.rowResizeMode) && void 0 !== _c ? _c : rowResizeMode,
873
+ internalProps.dragHeaderMode = null != dragHeaderMode ? dragHeaderMode : "none",
871
874
  internalProps.renderChartAsync = renderChartAsync, (0, chart_render_helper_1.setBatchRenderChartCount)(renderChartAsyncBatchCount),
872
875
  internalProps.overscrollBehavior = null != overscrollBehavior ? overscrollBehavior : "auto",
873
876
  internalProps.cellTextOverflows = {}, internalProps._rowHeightsMap = new row_height_map_1.NumberRangeMap(this),
874
877
  internalProps._rowRangeHeightsMap = new Map, internalProps._colRangeWidthsMap = new Map,
875
878
  internalProps._widthResizedColMap = new Set, internalProps._heightResizedRowMap = new Set,
876
879
  this.colWidthsMap = new NumberMap_1.NumberMap, this.colContentWidthsMap = new NumberMap_1.NumberMap,
877
- this.colWidthsLimit = {}, internalProps.stick.changedCells.clear(), internalProps.theme = themes_1.default.of(null !== (_b = options.theme) && void 0 !== _b ? _b : themes_1.default.DEFAULT),
880
+ this.colWidthsLimit = {}, internalProps.stick.changedCells.clear(), internalProps.theme = themes_1.default.of(null !== (_d = options.theme) && void 0 !== _d ? _d : themes_1.default.DEFAULT),
878
881
  internalProps.theme.isPivot = this.isPivotTable(), (0, icons_2.setIconColor)(internalProps.theme.functionalIconsStyle),
879
882
  this.scenegraph.updateStageBackground(), internalProps.autoWrapText = options.autoWrapText,
880
- internalProps.enableLineBreak = options.enableLineBreak, internalProps.allowFrozenColCount = null !== (_c = options.allowFrozenColCount) && void 0 !== _c ? _c : 0,
881
- internalProps.limitMaxAutoWidth = null !== (_d = options.limitMaxAutoWidth) && void 0 !== _d ? _d : 450,
883
+ internalProps.enableLineBreak = options.enableLineBreak, internalProps.allowFrozenColCount = null !== (_e = options.allowFrozenColCount) && void 0 !== _e ? _e : 0,
884
+ internalProps.limitMaxAutoWidth = null !== (_f = options.limitMaxAutoWidth) && void 0 !== _f ? _f : 450,
882
885
  internalProps.limitMinWidth = null != limitMinWidth ? "number" == typeof limitMinWidth ? limitMinWidth : limitMinWidth ? 10 : 0 : 10,
883
886
  internalProps.limitMinHeight = null != limitMinHeight ? "number" == typeof limitMinHeight ? limitMinHeight : limitMinHeight ? 10 : 0 : 10,
884
- null === (_e = internalProps.legends) || void 0 === _e || _e.forEach((legend => {
887
+ null === (_g = internalProps.legends) || void 0 === _g || _g.forEach((legend => {
885
888
  null == legend || legend.release();
886
- })), null === (_f = internalProps.title) || void 0 === _f || _f.release(), internalProps.title = null,
887
- null === (_g = internalProps.emptyTip) || void 0 === _g || _g.release(), internalProps.emptyTip = null,
889
+ })), null === (_h = internalProps.title) || void 0 === _h || _h.release(), internalProps.title = null,
890
+ null === (_j = internalProps.emptyTip) || void 0 === _j || _j.release(), internalProps.emptyTip = null,
888
891
  internalProps.layoutMap.release(), this.scenegraph.clearCells(), this.scenegraph.updateComponent(),
889
892
  this.stateManager.updateOptionSetState(), this._updateSize(), this.eventManager.updateEventBinder(),
890
893
  options.legends) {
@@ -913,15 +916,15 @@ class BaseTable extends EventTarget_1.EventTarget {
913
916
  }
914
917
  if (internalProps.menu = Object.assign({
915
918
  renderMode: "html"
916
- }, options.menu), Array.isArray(null === (_h = options.menu) || void 0 === _h ? void 0 : _h.dropDownMenuHighlight) && this.setDropDownMenuHighlight(null === (_j = options.menu) || void 0 === _j ? void 0 : _j.dropDownMenuHighlight),
917
- Array.isArray(null === (_k = options.menu) || void 0 === _k ? void 0 : _k.defaultHeaderMenuItems) && (this.globalDropDownMenu = options.menu.defaultHeaderMenuItems),
919
+ }, options.menu), Array.isArray(null === (_k = options.menu) || void 0 === _k ? void 0 : _k.dropDownMenuHighlight) && this.setDropDownMenuHighlight(null === (_l = options.menu) || void 0 === _l ? void 0 : _l.dropDownMenuHighlight),
920
+ (Array.isArray(null === (_m = options.menu) || void 0 === _m ? void 0 : _m.defaultHeaderMenuItems) || "function" == typeof (null === (_o = options.menu) || void 0 === _o ? void 0 : _o.defaultHeaderMenuItems)) && (this.globalDropDownMenu = options.menu.defaultHeaderMenuItems),
918
921
  "html" === internalProps.menu.renderMode && !internalProps.menuHandler) {
919
922
  const MenuHandler = factory_1.Factory.getComponent("menuHandler");
920
923
  internalProps.menuHandler = new MenuHandler(this);
921
924
  }
922
925
  this.clearCellStyleCache(), this.clearColWidthCache(), this.clearRowHeightCache(),
923
926
  internalProps.customMergeCell = (0, get_custom_merge_cell_func_1.getCustomMergeCellFunc)(options.customMergeCell),
924
- null === (_l = this.customCellStylePlugin) || void 0 === _l || _l.updateCustomCell(null !== (_m = options.customCellStyle) && void 0 !== _m ? _m : [], null !== (_o = options.customCellStyleArrangement) && void 0 !== _o ? _o : []),
927
+ null === (_p = this.customCellStylePlugin) || void 0 === _p || _p.updateCustomCell(null !== (_q = options.customCellStyle) && void 0 !== _q ? _q : [], null !== (_r = options.customCellStyleArrangement) && void 0 !== _r ? _r : []),
925
928
  this._adjustCanvasSizeByOption();
926
929
  }
927
930
  renderWithRecreateCells() {