@visactor/vtable 0.18.1 → 0.18.2-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/cjs/core/BaseTable.js +3 -3
  2. package/cjs/core/BaseTable.js.map +1 -1
  3. package/cjs/icons.js +10 -0
  4. package/cjs/icons.js.map +1 -1
  5. package/cjs/index.d.ts +1 -1
  6. package/cjs/index.js +1 -1
  7. package/cjs/index.js.map +1 -1
  8. package/cjs/scenegraph/graphic/contributions/draw-interceptor.d.ts +13 -0
  9. package/cjs/scenegraph/graphic/contributions/draw-interceptor.js +90 -0
  10. package/cjs/scenegraph/graphic/contributions/draw-interceptor.js.map +1 -0
  11. package/cjs/scenegraph/graphic/contributions/index.js +4 -2
  12. package/cjs/scenegraph/graphic/contributions/index.js.map +1 -1
  13. package/cjs/scenegraph/group-creater/cell-type/image-cell.js +38 -18
  14. package/cjs/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  15. package/cjs/scenegraph/stick-text/index.js +5 -5
  16. package/cjs/scenegraph/stick-text/index.js.map +1 -1
  17. package/cjs/scenegraph/utils/keep-aspect-ratio.js +5 -4
  18. package/cjs/scenegraph/utils/keep-aspect-ratio.js.map +1 -1
  19. package/cjs/themes/ARCO.js +1 -2
  20. package/cjs/themes/BRIGHT.js +2 -1
  21. package/cjs/ts-types/base-table.d.ts +1 -1
  22. package/cjs/ts-types/base-table.js.map +1 -1
  23. package/cjs/vrender.js.map +1 -1
  24. package/dist/vtable.js +802 -356
  25. package/dist/vtable.min.js +2 -2
  26. package/es/core/BaseTable.js +4 -3
  27. package/es/core/BaseTable.js.map +1 -1
  28. package/es/icons.js +10 -0
  29. package/es/icons.js.map +1 -1
  30. package/es/index.d.ts +1 -1
  31. package/es/index.js +1 -1
  32. package/es/index.js.map +1 -1
  33. package/es/scenegraph/graphic/contributions/draw-interceptor.d.ts +13 -0
  34. package/es/scenegraph/graphic/contributions/draw-interceptor.js +64 -0
  35. package/es/scenegraph/graphic/contributions/draw-interceptor.js.map +1 -0
  36. package/es/scenegraph/graphic/contributions/index.js +5 -2
  37. package/es/scenegraph/graphic/contributions/index.js.map +1 -1
  38. package/es/scenegraph/group-creater/cell-type/image-cell.js +35 -17
  39. package/es/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  40. package/es/scenegraph/stick-text/index.js +5 -5
  41. package/es/scenegraph/stick-text/index.js.map +1 -1
  42. package/es/scenegraph/utils/keep-aspect-ratio.js +5 -4
  43. package/es/scenegraph/utils/keep-aspect-ratio.js.map +1 -1
  44. package/es/themes/ARCO.js +1 -2
  45. package/es/themes/BRIGHT.js +2 -1
  46. package/es/ts-types/base-table.d.ts +1 -1
  47. package/es/ts-types/base-table.js.map +1 -1
  48. package/es/vrender.js.map +1 -1
  49. package/package.json +7 -7
package/cjs/icons.js CHANGED
@@ -169,6 +169,16 @@ const ts_types_1 = require("./ts-types"), helper_1 = require("./tools/helper"),
169
169
  cursor: "pointer"
170
170
  };
171
171
  },
172
+ get loading_pic() {
173
+ return {
174
+ type: "svg",
175
+ svg: '<svg viewBox="0 0 400 300" fill="none" xmlns="http://www.w3.org/2000/svg"><mask id="a" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="50" y="65" width="301" height="170"><path d="M350.3 65H50v169.8h300.3V65Z" fill="#fff"/></mask><g mask="url(#a)"><path fill-rule="evenodd" clip-rule="evenodd" d="M58.3 233.2h32.8v-36.8H58.3v36.8Z" fill="#C7DEFF"/><path d="M91.1 224.5v8.8H58.3M82.4 196.2H58.3" stroke="#071F4D"/><path fill-rule="evenodd" clip-rule="evenodd" d="M305.4 182.5s-2.7 12.6 0 17.4c2.7 4.8 8.3 6.7 12.4 4.4 4.2-2.4 5.3-8.1 2.6-12.9-2.7-4.8-15-8.9-15-8.9ZM336 204.7c4.3 2 9.7-.4 12-5.4 2.3-5-1.5-17.3-1.5-17.3s-11.8 5.1-14.1 10.1c-2.3 5-.7 10.6 3.6 12.6Z" fill="#00E4E5"/><path fill-rule="evenodd" clip-rule="evenodd" d="M326.7 174s-10 11.8-10 18.6c0 6.7 4.5 12.2 10 12.2s10-5.5 10-12.3c0-6.8-10-18.5-10-18.5Z" fill="#00E4E5"/><path d="M332.3 181.5c2.3 3.6 4.4 7.8 4.4 10.9M316.7 192.5c0-3.1 2.1-7.2 4.3-10.8" stroke="#071F4D"/><path fill-rule="evenodd" clip-rule="evenodd" d="M343.1 227.3v-9.7h-34v9.7c0 3.7 3 6.6 6.6 6.6h20.9c3.6 0 6.5-2.9 6.5-6.6Z" fill="#071F4D"/><path fill-rule="evenodd" clip-rule="evenodd" d="M350.4 220.8V198H302v22.8c0 5.9 4.8 10.7 10.7 10.7h26.9c5.9 0 10.7-4.8 10.8-10.7Z" fill="#C7DEFF"/><path fill-rule="evenodd" clip-rule="evenodd" d="M331.7 74.2H117.8L87.4 203h213.8l30.5-128.8Z" fill="#fff"/><path fill-rule="evenodd" clip-rule="evenodd" d="M337 74.2h-6.2l-30.6 129.2h6.2L337 74.2Z" fill="#fff"/><path fill-rule="evenodd" clip-rule="evenodd" d="M303.8 203.5h2.4l30.7-129.3h-1.8l-31.3 129.3Z" fill="#C7DEFF"/><path d="m337 74.2-30.6 129.2h-5.9" stroke="#071F4D"/><path fill-rule="evenodd" clip-rule="evenodd" d="M229.9 202.1h-47.6l2 9.6h47.3l-1.7-9.6Z" fill="#C7DEFF"/><path fill-rule="evenodd" clip-rule="evenodd" d="M94.7 172.6 87.4 203h213.1l7.8-30.4H94.7Z" fill="#006EFF"/><path fill-rule="evenodd" clip-rule="evenodd" d="M94.7 172.6 87.4 203h213.1l7.8-30.4H94.7Z" fill="#006EFF"/><path d="M138.5 74.2h193.2l-23.4 98.6M94.5 172.7l11-46.3M104.8 155.4l-2.3 11.5h6.7M316 112.1l1.1-4.5" stroke="#071F4D"/><path fill-rule="evenodd" clip-rule="evenodd" d="M148.3 138.1h97V119h-97v19.1Z" fill="#00E4E5"/><path d="M303.1 80.6h20.3l-4.6 19.6M228.3 234.3c3.6 0 6.3-3.2 5.7-6.8l-4.1-24.1" stroke="#071F4D"/><path fill-rule="evenodd" clip-rule="evenodd" d="M226.2 229.5h-68.9v1.2c0 2 1.6 3.7 3.7 3.7h60.1c2.8 0 5-2.2 5.1-4.9Z" fill="#C7DEFF"/><path d="M180.699 226.8h-19.9c-2.8 0-4.6 3-3.3 5.5m0 0c.6 1.2 1.9 2 3.3 2h57.8M175.9 203.4l3.6 17.6M241.2 234.3h65.1M104.6 234.3h41.3" stroke="#071F4D"/><path d="M206.2 234.3h14.9c3.1 0 5.5-2.8 5-5.9l-4.3-24.9M160.7 226.8h46M62.2 226.1h-9.5c-1.2 0-2.2-1-2.2-2.2v-18.3c0-1.2 1-2.2 2.2-2.2h9.5" stroke="#071F4D"/><path d="M53.4 171.7H68c2.1 0 3.7 1.7 3.7 3.7v16.1M79.1 192v-21.8c0-2.5 2-4.6 4.6-4.6h2.2c2.5 0 4.5-2 4.5-4.5m0 0c0-2.5-2-4.5-4.5-4.5H56.1c-2.4 0-4.3-1.9-4.3-4.3V148M71.2 165.2h-18M64 181.7v10.1" stroke="#C7DEFF"/><path fill-rule="evenodd" clip-rule="evenodd" d="M85.7 120H124c4.3 0 7.7-3.5 7.7-7.7V65.5H94.2c-4.7 0-8.5 4.9-8.5 11V120Z" fill="#C7DEFF"/><path d="M85.7 110.7V73c0-4.1 3.4-7.5 7.5-7.5h38.5M146.2 73.8v-2.5c0-3.2-2-5.8-5.8-5.8-2.8 0-6 1.1-6 5.8v42.4c0 4.7-3.8 8.5-8.5 8.5h-15.6" stroke="#071F4D"/><path d="M119.7 122.3H87c-6.1 0-11.1-5-11.1-11.1m0 0h39M126.1 122.3c-6.1 0-11.1-5-11.1-11.1" stroke="#071F4D"/><path fill-rule="evenodd" clip-rule="evenodd" d="M85.4 122.1h37.2c-6.5-1.8-8-10.5-8-10.5H76.2c.6 8.8 9.2 10.5 9.2 10.5Z" fill="#071F4D"/><path fill-rule="evenodd" clip-rule="evenodd" d="M95.8 102.9h4.8V83.6h-4.8v19.3ZM106.6 102.9h4.8V77.6h-4.8v25.3ZM117.3 102.9h4.8V89.1h-4.8v13.8Z" fill="#fff"/><path d="M273.2 195.9h16.9M261.2 195.9h5" stroke="#fff"/><path d="M62.4 201.9v2.9M62.4 224.5v2.9" stroke="#071F4D"/><path d="m153.6 138.1 9.7-19.1M168.8 138.1l9.7-19.1M184.1 138.1l9.7-19.1M199.4 138.1l9.7-19.1M214.6 138.1l9.8-19.1M229.9 138.1l9.7-19.1" stroke="#fff"/><path d="M148.3 138.1h121.6V119H148.3v19.1Z" stroke="#071F4D"/></g></svg>',
176
+ width: 400,
177
+ height: 300,
178
+ name: "loading_pic",
179
+ positionType: ts_types_1.IconPosition.left
180
+ };
181
+ },
172
182
  get expand() {
173
183
  return {
174
184
  type: "svg",
package/cjs/icons.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/icons.ts"],"names":[],"mappings":"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","file":"icons.js","sourcesContent":["/* eslint-disable max-len */\n/*eslint-disable camelcase*/\n\nimport type { ColumnIconOption, SvgIcon } from './ts-types';\nimport { IconPosition, IconFuncTypeEnum } from './ts-types';\nimport { extend } from './tools/helper';\nimport { icons as plugins } from './plugins/icons';\nimport { DrillDown, DrillUp } from './tools/global';\nconst builtins = {\n get sort_downward(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n ' <path d=\"M4.6665 9H11.3332L7.99984 13.1667L4.6665 9Z\" fill=\"#282F38\" fill-opacity=\"0.35\"/>' +\n '<path d=\"M11.3335 7L4.66683 7L8.00016 2.83333L11.3335 7Z\" fill=\"#416EFF\"/>' +\n ' </svg>',\n width: 16, //其实指定的是svg图片绘制多大,实际下面的阴影是box,margin也是相对阴影范围指定的\n height: 16,\n funcType: IconFuncTypeEnum.sort,\n name: 'sort_downward',\n // positionType: IconPosition.inlineEnd,\n positionType: IconPosition.contentRight,\n marginLeft: 3, //设计要求的是距离8px,这个些5是基于外面的box而言的\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n get sort_upward(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n ' <path d=\"M4.6665 9H11.3332L7.99984 13.1667L4.6665 9Z\" fill=\"#416EFF\"/>' +\n '<path d=\"M11.3335 7L4.66683 7L8.00016 2.83333L11.3335 7Z\" fill=\"#282F38\" fill-opacity=\"0.35\"/>' +\n '</svg> ',\n width: 16,\n height: 16,\n funcType: IconFuncTypeEnum.sort,\n // positionType: IconPosition.inlineEnd,\n positionType: IconPosition.contentRight,\n name: 'sort_upward',\n marginLeft: 3,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n get sort_normal(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n '<path d=\"M4.6665 9H11.3332L7.99984 13.1667L4.6665 9Z\" fill=\"#282F38\" fill-opacity=\"0.35\"/>' +\n '<path d=\"M11.3335 7L4.66683 7L8.00016 2.83333L11.3335 7Z\" fill=\"#282F38\" fill-opacity=\"0.35\"/>' +\n '</svg> ',\n width: 16,\n height: 16,\n funcType: IconFuncTypeEnum.sort,\n // positionType: IconPosition.inlineEnd,\n positionType: IconPosition.contentRight,\n name: 'sort_normal',\n marginLeft: 3,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n\n get freeze(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n '<g clip-path=\"url(#clip0)\">' +\n '<path d=\"M17.1313 8.42047C17.1932 8.48238 17.2423 8.55587 17.2759 8.63676C17.3094 8.71764 17.3266 8.80434 17.3266 8.89189C17.3266 8.97944 17.3094 9.06613 17.2759 9.14702C17.2423 9.2279 17.1932 9.3014 17.1313 9.3633L13.3843 13.1103C13.7007 14.3048 13.5305 15.4443 12.8388 16.2395C12.8104 16.2781 12.7778 16.3136 12.7417 16.3451L12.712 16.3755C12.6501 16.4374 12.5766 16.4865 12.4957 16.52C12.4148 16.5535 12.3281 16.5707 12.2406 16.5707C12.153 16.5707 12.0663 16.5535 11.9854 16.52C11.9046 16.4865 11.8311 16.4374 11.7692 16.3755L9.17633 13.7826L6.05316 16.9058L5.11983 17.0925C5.09291 17.0979 5.06508 17.0965 5.03881 17.0886C5.01254 17.0806 4.98863 17.0663 4.96923 17.0469C4.94982 17.0275 4.9355 17.0036 4.92755 16.9773C4.9196 16.951 4.91827 16.9232 4.92366 16.8963L5.11033 15.963L8.23333 12.8396L5.64066 10.2471C5.57875 10.1852 5.52964 10.1117 5.49614 10.0309C5.46263 9.94997 5.44539 9.86327 5.44539 9.77572C5.44539 9.68817 5.46263 9.60148 5.49614 9.52059C5.52964 9.43971 5.57875 9.36621 5.64066 9.3043C5.65066 9.2943 5.66066 9.2843 5.67099 9.27464C5.70266 9.2383 5.73833 9.20547 5.77766 9.17664C6.57283 8.48564 7.71199 8.31564 8.90599 8.63197L12.6528 4.88497C12.7147 4.82306 12.7882 4.77395 12.8691 4.74045C12.95 4.70694 13.0367 4.6897 13.1242 4.6897C13.2118 4.6897 13.2985 4.70694 13.3794 4.74045C13.4603 4.77395 13.5338 4.82306 13.5957 4.88497L17.1312 8.42047H17.1313ZM15.7172 8.8918L13.1243 6.29914L9.56483 9.8588C9.47574 9.94788 9.36323 10.0099 9.24034 10.0376C9.11746 10.0654 8.98922 10.0578 8.87049 10.0156C8.22783 9.78764 7.63899 9.7553 7.17749 9.89814L12.1182 14.8388C12.261 14.3771 12.2287 13.7885 12.0007 13.146C11.9585 13.0272 11.9509 12.899 11.9787 12.7761C12.0064 12.6532 12.0684 12.5407 12.1575 12.4516L15.7172 8.89164V8.8918Z\" fill=\"#282F38\" fill-opacity=\"0.2\"/>' +\n '</g>' +\n '<defs>' +\n '<clipPath id=\"clip0\">' +\n '<rect width=\"22\" height=\"22\" fill=\"white\"/>' +\n '</clipPath>' +\n '</defs>' +\n '</svg>',\n width: 22,\n height: 22,\n name: 'freeze',\n funcType: IconFuncTypeEnum.frozen,\n positionType: IconPosition.right,\n marginRight: 0,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n get frozen(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n ' <path d=\"M8.49975 3.66663C8.32294 3.66663 8.15337 3.73686 8.02835 3.86189C7.90332 3.98691 7.83309 4.15648 7.83309 4.33329V9.63246C6.76475 10.2533 6.07942 11.1795 6.00625 12.2308C5.99892 12.2786 5.99692 12.3268 6.00009 12.3741L5.99975 12.4166C5.99975 12.5934 6.06999 12.763 6.19501 12.888C6.32004 13.0131 6.48961 13.0833 6.66642 13.0833H10.3333L10.3331 17.5L10.8611 18.292C10.8763 18.3148 10.8969 18.3335 10.9211 18.3464C10.9453 18.3594 10.9723 18.3662 10.9998 18.3662C11.0272 18.3662 11.0542 18.3594 11.0784 18.3464C11.1026 18.3335 11.1232 18.3148 11.1384 18.292L11.6664 17.5L11.6666 13.0833H15.3331C15.5099 13.0833 15.6795 13.0131 15.8045 12.888C15.9295 12.763 15.9998 12.5934 15.9998 12.4166C15.9998 12.4025 15.9998 12.3883 15.9994 12.3741C16.0028 12.3263 16.0008 12.2776 15.9933 12.2295C15.9196 11.1786 15.2343 10.2528 14.1664 9.63229V4.33329C14.1664 4.15648 14.0962 3.98691 13.9712 3.86189C13.8461 3.73686 13.6766 3.66663 13.4998 3.66663H8.49975Z\" fill=\"#282F38\" fill-opacity=\"0.35\"/>' +\n '</svg>',\n width: 22,\n height: 22,\n name: 'frozen',\n funcType: IconFuncTypeEnum.frozen,\n positionType: IconPosition.right,\n marginRight: 0,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n get frozenCurrent(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n '<path d=\"M8.49975 3.66663C8.32294 3.66663 8.15337 3.73686 8.02835 3.86189C7.90332 3.98691 7.83309 4.15648 7.83309 4.33329V9.63246C6.76475 10.2533 6.07942 11.1795 6.00625 12.2308C5.99892 12.2786 5.99692 12.3268 6.00009 12.3741L5.99975 12.4166C5.99975 12.5934 6.06999 12.763 6.19501 12.888C6.32004 13.0131 6.48961 13.0833 6.66642 13.0833H10.3333L10.3331 17.5L10.8611 18.292C10.8763 18.3148 10.8969 18.3335 10.9211 18.3464C10.9453 18.3594 10.9723 18.3662 10.9998 18.3662C11.0272 18.3662 11.0542 18.3594 11.0784 18.3464C11.1026 18.3335 11.1232 18.3148 11.1384 18.292L11.6664 17.5L11.6666 13.0833H15.3331C15.5099 13.0833 15.6795 13.0131 15.8045 12.888C15.9295 12.763 15.9998 12.5934 15.9998 12.4166C15.9998 12.4025 15.9998 12.3883 15.9994 12.3741C16.0028 12.3263 16.0008 12.2776 15.9933 12.2295C15.9196 11.1786 15.2343 10.2528 14.1664 9.63229V4.33329C14.1664 4.15648 14.0962 3.98691 13.9712 3.86189C13.8461 3.73686 13.6766 3.66663 13.4998 3.66663H8.49975Z\" fill=\"#416EFF\"/>' +\n '</svg>',\n width: 22,\n height: 22,\n funcType: IconFuncTypeEnum.frozen,\n positionType: IconPosition.right,\n name: 'frozenCurrent',\n marginRight: 0,\n // marginLeft: 6,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n\n // get dropdownIcon_hover(): SvgIcon {\n // return {\n // type: 'svg',\n // svg: '<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g><rect x=\"2\" y=\"1\" width=\"20\" height=\"20\" rx=\"10\" fill=\"#1E54C9\"/><rect x=\"2.5\" y=\"1.5\" width=\"19\" height=\"19\" rx=\"9.5\" stroke=\"#141414\" stroke-opacity=\"0.2\"/></g><path d=\"M14.9492 9.39531C15.0086 9.31911 15.0165 9.21887 14.9698 9.1356C14.923 9.05234 14.8294 9 14.7273 9L9.27273 9C9.17057 9 9.07697 9.05234 9.03023 9.1356C8.98348 9.21887 8.99142 9.31911 9.0508 9.39531L11.7781 12.8953C11.8293 12.961 11.9119 13 12 13C12.0881 13 12.1707 12.961 12.2219 12.8953L14.9492 9.39531Z\" fill=\"white\"/></svg>',\n // width: 24, //其实指定的是svg图片绘制多大,实际下面的阴影是box,margin也是相对阴影范围指定的\n // height: 24,\n // funcType: IconFuncTypeEnum.dropDown,\n // positionType: IconPosition.absoluteRight,\n // name: 'dropdownIcon_hover',\n // marginRight: 0, //设计要求的是距离8px,这个些5是基于外面的box而言的\n // hover: {\n // width: 24,\n // height: 24,\n // bgColor: 'rgba(101, 117, 168, 0.1)',\n // },\n // cursor: 'pointer',\n // };\n // },\n\n get dropdownIcon(): SvgIcon {\n return {\n type: 'svg',\n svg: '<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g><rect x=\"2\" y=\"1\" width=\"20\" height=\"20\" rx=\"10\" fill=\"white\"/><rect x=\"2.5\" y=\"1.5\" width=\"19\" height=\"19\" rx=\"9.5\" stroke=\"#959DA5\"/></g><path d=\"M14.9492 9.39531C15.0086 9.31911 15.0165 9.21887 14.9698 9.1356C14.923 9.05234 14.8294 9 14.7273 9L9.27273 9C9.17057 9 9.07697 9.05234 9.03023 9.1356C8.98348 9.21887 8.99142 9.31911 9.0508 9.39531L11.7781 12.8953C11.8293 12.961 11.9119 13 12 13C12.0881 13 12.1707 12.961 12.2219 12.8953L14.9492 9.39531Z\" fill=\"#4F5965\"/></svg>',\n width: 24, //其实指定的是svg图片绘制多大,实际下面的阴影是box,margin也是相对阴影范围指定的\n height: 24,\n funcType: IconFuncTypeEnum.dropDown,\n positionType: IconPosition.absoluteRight,\n // positionType: IconPosition.inlineEnd,\n name: 'dropdownIcon',\n marginRight: 0, //设计要求的是距离8px,这个些5是基于外面的box而言的\n hover: {\n width: 24,\n height: 24,\n bgColor: 'rgba(101, 117, 168, 0.1)',\n image:\n '<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g><rect x=\"2\" y=\"1\" width=\"20\" height=\"20\" rx=\"10\" fill=\"#1E54C9\"/><rect x=\"2.5\" y=\"1.5\" width=\"19\" height=\"19\" rx=\"9.5\" stroke=\"#141414\" stroke-opacity=\"0.2\"/></g><path d=\"M14.9492 9.39531C15.0086 9.31911 15.0165 9.21887 14.9698 9.1356C14.923 9.05234 14.8294 9 14.7273 9L9.27273 9C9.17057 9 9.07697 9.05234 9.03023 9.1356C8.98348 9.21887 8.99142 9.31911 9.0508 9.39531L11.7781 12.8953C11.8293 12.961 11.9119 13 12 13C12.0881 13 12.1707 12.961 12.2219 12.8953L14.9492 9.39531Z\" fill=\"white\"/></svg>'\n },\n cursor: 'pointer',\n visibleTime: 'mouseenter_cell'\n };\n },\n\n get play(): SvgIcon {\n return {\n type: 'svg',\n svg: '<svg width=\"24\" height=\"24\" viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"48\" height=\"48\" fill=\"white\" fill-opacity=\"0.01\" /><path d=\"M24 44C35.0457 44 44 35.0457 44 24C44 12.9543 35.0457 4 24 4C12.9543 4 4 12.9543 4 24C4 35.0457 12.9543 44 24 44Z\" fill=\"none\" stroke=\"#686a6e\" stroke-width=\"4\" stroke-linejoin=\"round\" stroke-opacity=\"0.7\" /><path d=\"M20 24V17.0718L26 20.5359L32 24L26 27.4641L20 30.9282V24Z\" fill=\"none\" stroke=\"#686a6e\" stroke-width=\"4\" stroke-linejoin=\"round\" stroke-opacity=\"0.7\" /></svg>',\n width: 24, //其实指定的是svg图片绘制多大,实际下面的阴影是box,margin也是相对阴影范围指定的\n height: 24,\n funcType: IconFuncTypeEnum.play,\n positionType: IconPosition.right,\n name: 'play',\n marginRight: 0, //设计要求的是距离8px,这个些5是基于外面的box而言的\n hover: {\n width: 24,\n height: 24,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n\n get damage_pic(): SvgIcon {\n return {\n type: 'svg',\n svg: '<svg width=\"24\" height=\"24\" viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M5 10V38C5 39.1046 5.89543 40 7 40H14H18L15 29L22 27L21 20L29 16L27 13L30 8H7C5.89543 8 5 8.89543 5 10Z\" fill=\"none\" stroke=\"#333\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M43 38V10C43 8.89543 42.1046 8 41 8H38L34 14L37 19L28 23L29 31L22 33L24 40H41C42.1046 40 43 39.1046 43 38Z\" fill=\"none\" stroke=\"#333\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M14.5 18C15.3284 18 16 17.3284 16 16.5C16 15.6716 15.3284 15 14.5 15C13.6716 15 13 15.6716 13 16.5C13 17.3284 13.6716 18 14.5 18Z\" fill=\"none\" stroke=\"#333\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>',\n width: 24, //其实指定的是svg图片绘制多大,实际下面的阴影是box,margin也是相对阴影范围指定的\n height: 24,\n funcType: IconFuncTypeEnum.damagePic,\n positionType: IconPosition.left,\n name: 'damage_pic',\n marginRight: 0, //设计要求的是距离8px,这个些5是基于外面的box而言的\n hover: {\n width: 24,\n height: 24,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n //展开状态的按钮 向下三角\n get expand(): SvgIcon {\n return {\n type: 'svg',\n svg: `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <path d=\"M4.64988 6.81235C4.38797 6.48497 4.62106 6 5.04031 6L10.9597 6C11.3789 6 11.612 6.48497 11.3501 6.81235L8.39043 10.512C8.19027 10.7622 7.80973 10.7622 7.60957 10.512L4.64988 6.81235Z\" fill=\"#141414\" fill-opacity=\"0.65\"/>\n </svg>`,\n width: 16, //其实指定的是svg图片绘制多大,实际占位是box,margin也是相对阴影范围指定的\n height: 16,\n funcType: IconFuncTypeEnum.expand,\n name: 'expand',\n positionType: IconPosition.contentLeft,\n marginLeft: 0,\n marginRight: 4,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n //折叠状态的按钮 向右三角\n get collapse(): SvgIcon {\n return {\n type: 'svg',\n svg: `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <path d=\"M5.81235 11.3501C5.48497 11.612 5 11.3789 5 10.9597L5 5.04031C5 4.62106 5.48497 4.38797 5.81235 4.64988L9.51196 7.60957C9.76216 7.80973 9.76216 8.19027 9.51196 8.39044L5.81235 11.3501Z\" fill=\"#141414\" fill-opacity=\"0.65\"/>\n </svg>`,\n width: 16, //其实指定的是svg图片绘制多大,实际占位是box,margin也是相对阴影范围指定的\n height: 16,\n funcType: IconFuncTypeEnum.collapse,\n name: 'collapse',\n positionType: IconPosition.contentLeft,\n marginLeft: 0,\n marginRight: 4,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n\n // drill按钮\n get drillDown(): SvgIcon {\n return {\n name: 'drillDown',\n type: 'svg',\n positionType: IconPosition.absolute,\n funcType: IconFuncTypeEnum.drillDown,\n svg: DrillDown,\n width: 13,\n height: 13,\n cursor: 'pointer'\n };\n },\n get drillUp(): SvgIcon {\n return {\n name: 'drillUp',\n type: 'svg',\n positionType: IconPosition.absolute,\n funcType: IconFuncTypeEnum.drillUp,\n svg: DrillUp,\n width: 13,\n height: 13,\n cursor: 'pointer'\n };\n }\n};\n\nexport function get(): { [key: string]: ColumnIconOption } {\n return extend(builtins, plugins);\n}\n"]}
1
+ {"version":3,"sources":["../src/icons.ts"],"names":[],"mappings":"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","file":"icons.js","sourcesContent":["/* eslint-disable max-len */\n/*eslint-disable camelcase*/\n\nimport type { ColumnIconOption, SvgIcon } from './ts-types';\nimport { IconPosition, IconFuncTypeEnum } from './ts-types';\nimport { extend } from './tools/helper';\nimport { icons as plugins } from './plugins/icons';\nimport { DrillDown, DrillUp } from './tools/global';\nconst builtins = {\n get sort_downward(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n ' <path d=\"M4.6665 9H11.3332L7.99984 13.1667L4.6665 9Z\" fill=\"#282F38\" fill-opacity=\"0.35\"/>' +\n '<path d=\"M11.3335 7L4.66683 7L8.00016 2.83333L11.3335 7Z\" fill=\"#416EFF\"/>' +\n ' </svg>',\n width: 16, //其实指定的是svg图片绘制多大,实际下面的阴影是box,margin也是相对阴影范围指定的\n height: 16,\n funcType: IconFuncTypeEnum.sort,\n name: 'sort_downward',\n // positionType: IconPosition.inlineEnd,\n positionType: IconPosition.contentRight,\n marginLeft: 3, //设计要求的是距离8px,这个些5是基于外面的box而言的\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n get sort_upward(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n ' <path d=\"M4.6665 9H11.3332L7.99984 13.1667L4.6665 9Z\" fill=\"#416EFF\"/>' +\n '<path d=\"M11.3335 7L4.66683 7L8.00016 2.83333L11.3335 7Z\" fill=\"#282F38\" fill-opacity=\"0.35\"/>' +\n '</svg> ',\n width: 16,\n height: 16,\n funcType: IconFuncTypeEnum.sort,\n // positionType: IconPosition.inlineEnd,\n positionType: IconPosition.contentRight,\n name: 'sort_upward',\n marginLeft: 3,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n get sort_normal(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n '<path d=\"M4.6665 9H11.3332L7.99984 13.1667L4.6665 9Z\" fill=\"#282F38\" fill-opacity=\"0.35\"/>' +\n '<path d=\"M11.3335 7L4.66683 7L8.00016 2.83333L11.3335 7Z\" fill=\"#282F38\" fill-opacity=\"0.35\"/>' +\n '</svg> ',\n width: 16,\n height: 16,\n funcType: IconFuncTypeEnum.sort,\n // positionType: IconPosition.inlineEnd,\n positionType: IconPosition.contentRight,\n name: 'sort_normal',\n marginLeft: 3,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n\n get freeze(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n '<g clip-path=\"url(#clip0)\">' +\n '<path d=\"M17.1313 8.42047C17.1932 8.48238 17.2423 8.55587 17.2759 8.63676C17.3094 8.71764 17.3266 8.80434 17.3266 8.89189C17.3266 8.97944 17.3094 9.06613 17.2759 9.14702C17.2423 9.2279 17.1932 9.3014 17.1313 9.3633L13.3843 13.1103C13.7007 14.3048 13.5305 15.4443 12.8388 16.2395C12.8104 16.2781 12.7778 16.3136 12.7417 16.3451L12.712 16.3755C12.6501 16.4374 12.5766 16.4865 12.4957 16.52C12.4148 16.5535 12.3281 16.5707 12.2406 16.5707C12.153 16.5707 12.0663 16.5535 11.9854 16.52C11.9046 16.4865 11.8311 16.4374 11.7692 16.3755L9.17633 13.7826L6.05316 16.9058L5.11983 17.0925C5.09291 17.0979 5.06508 17.0965 5.03881 17.0886C5.01254 17.0806 4.98863 17.0663 4.96923 17.0469C4.94982 17.0275 4.9355 17.0036 4.92755 16.9773C4.9196 16.951 4.91827 16.9232 4.92366 16.8963L5.11033 15.963L8.23333 12.8396L5.64066 10.2471C5.57875 10.1852 5.52964 10.1117 5.49614 10.0309C5.46263 9.94997 5.44539 9.86327 5.44539 9.77572C5.44539 9.68817 5.46263 9.60148 5.49614 9.52059C5.52964 9.43971 5.57875 9.36621 5.64066 9.3043C5.65066 9.2943 5.66066 9.2843 5.67099 9.27464C5.70266 9.2383 5.73833 9.20547 5.77766 9.17664C6.57283 8.48564 7.71199 8.31564 8.90599 8.63197L12.6528 4.88497C12.7147 4.82306 12.7882 4.77395 12.8691 4.74045C12.95 4.70694 13.0367 4.6897 13.1242 4.6897C13.2118 4.6897 13.2985 4.70694 13.3794 4.74045C13.4603 4.77395 13.5338 4.82306 13.5957 4.88497L17.1312 8.42047H17.1313ZM15.7172 8.8918L13.1243 6.29914L9.56483 9.8588C9.47574 9.94788 9.36323 10.0099 9.24034 10.0376C9.11746 10.0654 8.98922 10.0578 8.87049 10.0156C8.22783 9.78764 7.63899 9.7553 7.17749 9.89814L12.1182 14.8388C12.261 14.3771 12.2287 13.7885 12.0007 13.146C11.9585 13.0272 11.9509 12.899 11.9787 12.7761C12.0064 12.6532 12.0684 12.5407 12.1575 12.4516L15.7172 8.89164V8.8918Z\" fill=\"#282F38\" fill-opacity=\"0.2\"/>' +\n '</g>' +\n '<defs>' +\n '<clipPath id=\"clip0\">' +\n '<rect width=\"22\" height=\"22\" fill=\"white\"/>' +\n '</clipPath>' +\n '</defs>' +\n '</svg>',\n width: 22,\n height: 22,\n name: 'freeze',\n funcType: IconFuncTypeEnum.frozen,\n positionType: IconPosition.right,\n marginRight: 0,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n get frozen(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n ' <path d=\"M8.49975 3.66663C8.32294 3.66663 8.15337 3.73686 8.02835 3.86189C7.90332 3.98691 7.83309 4.15648 7.83309 4.33329V9.63246C6.76475 10.2533 6.07942 11.1795 6.00625 12.2308C5.99892 12.2786 5.99692 12.3268 6.00009 12.3741L5.99975 12.4166C5.99975 12.5934 6.06999 12.763 6.19501 12.888C6.32004 13.0131 6.48961 13.0833 6.66642 13.0833H10.3333L10.3331 17.5L10.8611 18.292C10.8763 18.3148 10.8969 18.3335 10.9211 18.3464C10.9453 18.3594 10.9723 18.3662 10.9998 18.3662C11.0272 18.3662 11.0542 18.3594 11.0784 18.3464C11.1026 18.3335 11.1232 18.3148 11.1384 18.292L11.6664 17.5L11.6666 13.0833H15.3331C15.5099 13.0833 15.6795 13.0131 15.8045 12.888C15.9295 12.763 15.9998 12.5934 15.9998 12.4166C15.9998 12.4025 15.9998 12.3883 15.9994 12.3741C16.0028 12.3263 16.0008 12.2776 15.9933 12.2295C15.9196 11.1786 15.2343 10.2528 14.1664 9.63229V4.33329C14.1664 4.15648 14.0962 3.98691 13.9712 3.86189C13.8461 3.73686 13.6766 3.66663 13.4998 3.66663H8.49975Z\" fill=\"#282F38\" fill-opacity=\"0.35\"/>' +\n '</svg>',\n width: 22,\n height: 22,\n name: 'frozen',\n funcType: IconFuncTypeEnum.frozen,\n positionType: IconPosition.right,\n marginRight: 0,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n get frozenCurrent(): SvgIcon {\n return {\n type: 'svg',\n svg:\n '<svg width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">' +\n '<path d=\"M8.49975 3.66663C8.32294 3.66663 8.15337 3.73686 8.02835 3.86189C7.90332 3.98691 7.83309 4.15648 7.83309 4.33329V9.63246C6.76475 10.2533 6.07942 11.1795 6.00625 12.2308C5.99892 12.2786 5.99692 12.3268 6.00009 12.3741L5.99975 12.4166C5.99975 12.5934 6.06999 12.763 6.19501 12.888C6.32004 13.0131 6.48961 13.0833 6.66642 13.0833H10.3333L10.3331 17.5L10.8611 18.292C10.8763 18.3148 10.8969 18.3335 10.9211 18.3464C10.9453 18.3594 10.9723 18.3662 10.9998 18.3662C11.0272 18.3662 11.0542 18.3594 11.0784 18.3464C11.1026 18.3335 11.1232 18.3148 11.1384 18.292L11.6664 17.5L11.6666 13.0833H15.3331C15.5099 13.0833 15.6795 13.0131 15.8045 12.888C15.9295 12.763 15.9998 12.5934 15.9998 12.4166C15.9998 12.4025 15.9998 12.3883 15.9994 12.3741C16.0028 12.3263 16.0008 12.2776 15.9933 12.2295C15.9196 11.1786 15.2343 10.2528 14.1664 9.63229V4.33329C14.1664 4.15648 14.0962 3.98691 13.9712 3.86189C13.8461 3.73686 13.6766 3.66663 13.4998 3.66663H8.49975Z\" fill=\"#416EFF\"/>' +\n '</svg>',\n width: 22,\n height: 22,\n funcType: IconFuncTypeEnum.frozen,\n positionType: IconPosition.right,\n name: 'frozenCurrent',\n marginRight: 0,\n // marginLeft: 6,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n\n // get dropdownIcon_hover(): SvgIcon {\n // return {\n // type: 'svg',\n // svg: '<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g><rect x=\"2\" y=\"1\" width=\"20\" height=\"20\" rx=\"10\" fill=\"#1E54C9\"/><rect x=\"2.5\" y=\"1.5\" width=\"19\" height=\"19\" rx=\"9.5\" stroke=\"#141414\" stroke-opacity=\"0.2\"/></g><path d=\"M14.9492 9.39531C15.0086 9.31911 15.0165 9.21887 14.9698 9.1356C14.923 9.05234 14.8294 9 14.7273 9L9.27273 9C9.17057 9 9.07697 9.05234 9.03023 9.1356C8.98348 9.21887 8.99142 9.31911 9.0508 9.39531L11.7781 12.8953C11.8293 12.961 11.9119 13 12 13C12.0881 13 12.1707 12.961 12.2219 12.8953L14.9492 9.39531Z\" fill=\"white\"/></svg>',\n // width: 24, //其实指定的是svg图片绘制多大,实际下面的阴影是box,margin也是相对阴影范围指定的\n // height: 24,\n // funcType: IconFuncTypeEnum.dropDown,\n // positionType: IconPosition.absoluteRight,\n // name: 'dropdownIcon_hover',\n // marginRight: 0, //设计要求的是距离8px,这个些5是基于外面的box而言的\n // hover: {\n // width: 24,\n // height: 24,\n // bgColor: 'rgba(101, 117, 168, 0.1)',\n // },\n // cursor: 'pointer',\n // };\n // },\n\n get dropdownIcon(): SvgIcon {\n return {\n type: 'svg',\n svg: '<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g><rect x=\"2\" y=\"1\" width=\"20\" height=\"20\" rx=\"10\" fill=\"white\"/><rect x=\"2.5\" y=\"1.5\" width=\"19\" height=\"19\" rx=\"9.5\" stroke=\"#959DA5\"/></g><path d=\"M14.9492 9.39531C15.0086 9.31911 15.0165 9.21887 14.9698 9.1356C14.923 9.05234 14.8294 9 14.7273 9L9.27273 9C9.17057 9 9.07697 9.05234 9.03023 9.1356C8.98348 9.21887 8.99142 9.31911 9.0508 9.39531L11.7781 12.8953C11.8293 12.961 11.9119 13 12 13C12.0881 13 12.1707 12.961 12.2219 12.8953L14.9492 9.39531Z\" fill=\"#4F5965\"/></svg>',\n width: 24, //其实指定的是svg图片绘制多大,实际下面的阴影是box,margin也是相对阴影范围指定的\n height: 24,\n funcType: IconFuncTypeEnum.dropDown,\n positionType: IconPosition.absoluteRight,\n // positionType: IconPosition.inlineEnd,\n name: 'dropdownIcon',\n marginRight: 0, //设计要求的是距离8px,这个些5是基于外面的box而言的\n hover: {\n width: 24,\n height: 24,\n bgColor: 'rgba(101, 117, 168, 0.1)',\n image:\n '<svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><g><rect x=\"2\" y=\"1\" width=\"20\" height=\"20\" rx=\"10\" fill=\"#1E54C9\"/><rect x=\"2.5\" y=\"1.5\" width=\"19\" height=\"19\" rx=\"9.5\" stroke=\"#141414\" stroke-opacity=\"0.2\"/></g><path d=\"M14.9492 9.39531C15.0086 9.31911 15.0165 9.21887 14.9698 9.1356C14.923 9.05234 14.8294 9 14.7273 9L9.27273 9C9.17057 9 9.07697 9.05234 9.03023 9.1356C8.98348 9.21887 8.99142 9.31911 9.0508 9.39531L11.7781 12.8953C11.8293 12.961 11.9119 13 12 13C12.0881 13 12.1707 12.961 12.2219 12.8953L14.9492 9.39531Z\" fill=\"white\"/></svg>'\n },\n cursor: 'pointer',\n visibleTime: 'mouseenter_cell'\n };\n },\n\n get play(): SvgIcon {\n return {\n type: 'svg',\n svg: '<svg width=\"24\" height=\"24\" viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"48\" height=\"48\" fill=\"white\" fill-opacity=\"0.01\" /><path d=\"M24 44C35.0457 44 44 35.0457 44 24C44 12.9543 35.0457 4 24 4C12.9543 4 4 12.9543 4 24C4 35.0457 12.9543 44 24 44Z\" fill=\"none\" stroke=\"#686a6e\" stroke-width=\"4\" stroke-linejoin=\"round\" stroke-opacity=\"0.7\" /><path d=\"M20 24V17.0718L26 20.5359L32 24L26 27.4641L20 30.9282V24Z\" fill=\"none\" stroke=\"#686a6e\" stroke-width=\"4\" stroke-linejoin=\"round\" stroke-opacity=\"0.7\" /></svg>',\n width: 24, //其实指定的是svg图片绘制多大,实际下面的阴影是box,margin也是相对阴影范围指定的\n height: 24,\n funcType: IconFuncTypeEnum.play,\n positionType: IconPosition.right,\n name: 'play',\n marginRight: 0, //设计要求的是距离8px,这个些5是基于外面的box而言的\n hover: {\n width: 24,\n height: 24,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n\n get damage_pic(): SvgIcon {\n return {\n type: 'svg',\n svg: '<svg width=\"24\" height=\"24\" viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M5 10V38C5 39.1046 5.89543 40 7 40H14H18L15 29L22 27L21 20L29 16L27 13L30 8H7C5.89543 8 5 8.89543 5 10Z\" fill=\"none\" stroke=\"#333\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path d=\"M43 38V10C43 8.89543 42.1046 8 41 8H38L34 14L37 19L28 23L29 31L22 33L24 40H41C42.1046 40 43 39.1046 43 38Z\" fill=\"none\" stroke=\"#333\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M14.5 18C15.3284 18 16 17.3284 16 16.5C16 15.6716 15.3284 15 14.5 15C13.6716 15 13 15.6716 13 16.5C13 17.3284 13.6716 18 14.5 18Z\" fill=\"none\" stroke=\"#333\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>',\n width: 24, //其实指定的是svg图片绘制多大,实际下面的阴影是box,margin也是相对阴影范围指定的\n height: 24,\n funcType: IconFuncTypeEnum.damagePic,\n positionType: IconPosition.left,\n name: 'damage_pic',\n marginRight: 0, //设计要求的是距离8px,这个些5是基于外面的box而言的\n hover: {\n width: 24,\n height: 24,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n get loading_pic(): SvgIcon {\n return {\n type: 'svg',\n svg: '<svg viewBox=\"0 0 400 300\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"><mask id=\"a\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"50\" y=\"65\" width=\"301\" height=\"170\"><path d=\"M350.3 65H50v169.8h300.3V65Z\" fill=\"#fff\"/></mask><g mask=\"url(#a)\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M58.3 233.2h32.8v-36.8H58.3v36.8Z\" fill=\"#C7DEFF\"/><path d=\"M91.1 224.5v8.8H58.3M82.4 196.2H58.3\" stroke=\"#071F4D\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M305.4 182.5s-2.7 12.6 0 17.4c2.7 4.8 8.3 6.7 12.4 4.4 4.2-2.4 5.3-8.1 2.6-12.9-2.7-4.8-15-8.9-15-8.9ZM336 204.7c4.3 2 9.7-.4 12-5.4 2.3-5-1.5-17.3-1.5-17.3s-11.8 5.1-14.1 10.1c-2.3 5-.7 10.6 3.6 12.6Z\" fill=\"#00E4E5\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M326.7 174s-10 11.8-10 18.6c0 6.7 4.5 12.2 10 12.2s10-5.5 10-12.3c0-6.8-10-18.5-10-18.5Z\" fill=\"#00E4E5\"/><path d=\"M332.3 181.5c2.3 3.6 4.4 7.8 4.4 10.9M316.7 192.5c0-3.1 2.1-7.2 4.3-10.8\" stroke=\"#071F4D\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M343.1 227.3v-9.7h-34v9.7c0 3.7 3 6.6 6.6 6.6h20.9c3.6 0 6.5-2.9 6.5-6.6Z\" fill=\"#071F4D\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M350.4 220.8V198H302v22.8c0 5.9 4.8 10.7 10.7 10.7h26.9c5.9 0 10.7-4.8 10.8-10.7Z\" fill=\"#C7DEFF\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M331.7 74.2H117.8L87.4 203h213.8l30.5-128.8Z\" fill=\"#fff\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M337 74.2h-6.2l-30.6 129.2h6.2L337 74.2Z\" fill=\"#fff\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M303.8 203.5h2.4l30.7-129.3h-1.8l-31.3 129.3Z\" fill=\"#C7DEFF\"/><path d=\"m337 74.2-30.6 129.2h-5.9\" stroke=\"#071F4D\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M229.9 202.1h-47.6l2 9.6h47.3l-1.7-9.6Z\" fill=\"#C7DEFF\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M94.7 172.6 87.4 203h213.1l7.8-30.4H94.7Z\" fill=\"#006EFF\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M94.7 172.6 87.4 203h213.1l7.8-30.4H94.7Z\" fill=\"#006EFF\"/><path d=\"M138.5 74.2h193.2l-23.4 98.6M94.5 172.7l11-46.3M104.8 155.4l-2.3 11.5h6.7M316 112.1l1.1-4.5\" stroke=\"#071F4D\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M148.3 138.1h97V119h-97v19.1Z\" fill=\"#00E4E5\"/><path d=\"M303.1 80.6h20.3l-4.6 19.6M228.3 234.3c3.6 0 6.3-3.2 5.7-6.8l-4.1-24.1\" stroke=\"#071F4D\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M226.2 229.5h-68.9v1.2c0 2 1.6 3.7 3.7 3.7h60.1c2.8 0 5-2.2 5.1-4.9Z\" fill=\"#C7DEFF\"/><path d=\"M180.699 226.8h-19.9c-2.8 0-4.6 3-3.3 5.5m0 0c.6 1.2 1.9 2 3.3 2h57.8M175.9 203.4l3.6 17.6M241.2 234.3h65.1M104.6 234.3h41.3\" stroke=\"#071F4D\"/><path d=\"M206.2 234.3h14.9c3.1 0 5.5-2.8 5-5.9l-4.3-24.9M160.7 226.8h46M62.2 226.1h-9.5c-1.2 0-2.2-1-2.2-2.2v-18.3c0-1.2 1-2.2 2.2-2.2h9.5\" stroke=\"#071F4D\"/><path d=\"M53.4 171.7H68c2.1 0 3.7 1.7 3.7 3.7v16.1M79.1 192v-21.8c0-2.5 2-4.6 4.6-4.6h2.2c2.5 0 4.5-2 4.5-4.5m0 0c0-2.5-2-4.5-4.5-4.5H56.1c-2.4 0-4.3-1.9-4.3-4.3V148M71.2 165.2h-18M64 181.7v10.1\" stroke=\"#C7DEFF\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M85.7 120H124c4.3 0 7.7-3.5 7.7-7.7V65.5H94.2c-4.7 0-8.5 4.9-8.5 11V120Z\" fill=\"#C7DEFF\"/><path d=\"M85.7 110.7V73c0-4.1 3.4-7.5 7.5-7.5h38.5M146.2 73.8v-2.5c0-3.2-2-5.8-5.8-5.8-2.8 0-6 1.1-6 5.8v42.4c0 4.7-3.8 8.5-8.5 8.5h-15.6\" stroke=\"#071F4D\"/><path d=\"M119.7 122.3H87c-6.1 0-11.1-5-11.1-11.1m0 0h39M126.1 122.3c-6.1 0-11.1-5-11.1-11.1\" stroke=\"#071F4D\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M85.4 122.1h37.2c-6.5-1.8-8-10.5-8-10.5H76.2c.6 8.8 9.2 10.5 9.2 10.5Z\" fill=\"#071F4D\"/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M95.8 102.9h4.8V83.6h-4.8v19.3ZM106.6 102.9h4.8V77.6h-4.8v25.3ZM117.3 102.9h4.8V89.1h-4.8v13.8Z\" fill=\"#fff\"/><path d=\"M273.2 195.9h16.9M261.2 195.9h5\" stroke=\"#fff\"/><path d=\"M62.4 201.9v2.9M62.4 224.5v2.9\" stroke=\"#071F4D\"/><path d=\"m153.6 138.1 9.7-19.1M168.8 138.1l9.7-19.1M184.1 138.1l9.7-19.1M199.4 138.1l9.7-19.1M214.6 138.1l9.8-19.1M229.9 138.1l9.7-19.1\" stroke=\"#fff\"/><path d=\"M148.3 138.1h121.6V119H148.3v19.1Z\" stroke=\"#071F4D\"/></g></svg>',\n width: 400,\n height: 300,\n name: 'loading_pic',\n positionType: IconPosition.left\n };\n },\n //展开状态的按钮 向下三角\n get expand(): SvgIcon {\n return {\n type: 'svg',\n svg: `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <path d=\"M4.64988 6.81235C4.38797 6.48497 4.62106 6 5.04031 6L10.9597 6C11.3789 6 11.612 6.48497 11.3501 6.81235L8.39043 10.512C8.19027 10.7622 7.80973 10.7622 7.60957 10.512L4.64988 6.81235Z\" fill=\"#141414\" fill-opacity=\"0.65\"/>\n </svg>`,\n width: 16, //其实指定的是svg图片绘制多大,实际占位是box,margin也是相对阴影范围指定的\n height: 16,\n funcType: IconFuncTypeEnum.expand,\n name: 'expand',\n positionType: IconPosition.contentLeft,\n marginLeft: 0,\n marginRight: 4,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n //折叠状态的按钮 向右三角\n get collapse(): SvgIcon {\n return {\n type: 'svg',\n svg: `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <path d=\"M5.81235 11.3501C5.48497 11.612 5 11.3789 5 10.9597L5 5.04031C5 4.62106 5.48497 4.38797 5.81235 4.64988L9.51196 7.60957C9.76216 7.80973 9.76216 8.19027 9.51196 8.39044L5.81235 11.3501Z\" fill=\"#141414\" fill-opacity=\"0.65\"/>\n </svg>`,\n width: 16, //其实指定的是svg图片绘制多大,实际占位是box,margin也是相对阴影范围指定的\n height: 16,\n funcType: IconFuncTypeEnum.collapse,\n name: 'collapse',\n positionType: IconPosition.contentLeft,\n marginLeft: 0,\n marginRight: 4,\n hover: {\n width: 22,\n height: 22,\n bgColor: 'rgba(101, 117, 168, 0.1)'\n },\n cursor: 'pointer'\n };\n },\n\n // drill按钮\n get drillDown(): SvgIcon {\n return {\n name: 'drillDown',\n type: 'svg',\n positionType: IconPosition.absolute,\n funcType: IconFuncTypeEnum.drillDown,\n svg: DrillDown,\n width: 13,\n height: 13,\n cursor: 'pointer'\n };\n },\n get drillUp(): SvgIcon {\n return {\n name: 'drillUp',\n type: 'svg',\n positionType: IconPosition.absolute,\n funcType: IconFuncTypeEnum.drillUp,\n svg: DrillUp,\n width: 13,\n height: 13,\n cursor: 'pointer'\n };\n }\n};\n\nexport function get(): { [key: string]: ColumnIconOption } {\n return extend(builtins, plugins);\n}\n"]}
package/cjs/index.d.ts CHANGED
@@ -15,7 +15,7 @@ import { updateCell } from './scenegraph/group-creater/cell-helper';
15
15
  import { renderChart } from './scenegraph/graphic/contributions/chart-render-helper';
16
16
  export { getDataCellPath } from './tools/get-data-path';
17
17
  export * from './render/jsx';
18
- export declare const version = "0.18.1";
18
+ export declare const version = "0.18.2-alpha.1";
19
19
  export { TYPES, core, ListTable, ListTableConstructorOptions, PivotTable, PivotTableConstructorOptions, PivotChartConstructorOptions, PivotChart, IHeaderTreeDefine, IDimension, IIndicator, ITitleDefine, ICornerDefine, ColumnsDefine, ColumnDefine, LinkColumnDefine, ChartColumnDefine, ImageColumnDefine, SparklineColumnDefine, ProgressbarColumnDefine, TextColumnDefine, GroupColumnDefine, TextAlignType, TextBaselineType, themes, data, MousePointerCellEvent, getIcons, clearGlobal, register, DataStatistics, CustomLayout, updateCell, renderChart, graphicUtil };
20
20
  declare function getIcons(): {
21
21
  [key: string]: TYPES.ColumnIconOption;
package/cjs/index.js CHANGED
@@ -128,6 +128,6 @@ Object.defineProperty(exports, "getDataCellPath", {
128
128
  get: function() {
129
129
  return get_data_path_1.getDataCellPath;
130
130
  }
131
- }), __exportStar(require("./render/jsx"), exports), exports.version = "0.18.1",
131
+ }), __exportStar(require("./render/jsx"), exports), exports.version = "0.18.2-alpha.1",
132
132
  exports.getIcons = getIcons, exports.clearGlobal = clearGlobal, TYPES.AggregationType;
133
133
  //# sourceMappingURL=index.js.map
package/cjs/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,uCAA4D;AA6F1D,4FA7FO,qBAAW,OA6FP;AA5Fb,IAAA,4BAAkB,GAAE,CAAC;AAErB,kDAAoC;AAoDlC,sBAAK;AAnDP,6CAA+B;AAoD7B,oBAAI;AAnDN,6CAA+B;AA2E7B,oBAAI;AA1EN,+CAAiC;AACjC,qDAAuC;AA8ErC,4BAAQ;AA7EV,iDAAmC;AAuEjC,wBAAM;AAtER,yEAA2D;AAgFzD,wCAAc;AA1DhB,2CAAwC;AA0BtC,0FA1BO,qBAAS,OA0BP;AAzBX,6CAA0C;AA2BxC,2FA3BO,uBAAU,OA2BP;AA1BZ,6CAA0C;AA6BxC,2FA7BO,uBAAU,OA6BP;AA3BZ,8DAAgD;AAuD9C,oCAAY;AArDd,wEAAoE;AAsDlE,2FAtDO,wBAAU,OAsDP;AArDZ,gGAAqF;AAsDnF,4FAtDO,iCAAW,OAsDP;AAjDb,uDAAwD;AAA/C,gHAAA,eAAe,OAAA;AACxB,+CAA6B;AAEhB,QAAA,OAAO,GAAG,QAAQ,CAAC;AAmDhC,SAAS,QAAQ;IAGf,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC;AACrB,CAAC;AAnBC,4BAAQ;AAqBV,SAAS,WAAW;IAClB,QAAQ,CAAC,QAAQ,EAAE,CAAC;AAGtB,CAAC;AAxBC,kCAAW;AAyBb,KAAK,CAAC,eAAe,CAAC","file":"index.js","sourcesContent":["/* eslint-disable sort-imports */\nimport { graphicUtil, registerForVrender } from './vrender';\nregisterForVrender();\n\nimport * as TYPES from './ts-types';\nimport * as core from './core';\nimport * as data from './data';\nimport * as icons from './icons';\nimport * as register from './register';\nimport * as themes from './themes';\nimport * as DataStatistics from './dataset/DataStatistics';\nimport type {\n ColumnDefine,\n ColumnsDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n ListTableConstructorOptions,\n PivotTableConstructorOptions,\n PivotChartConstructorOptions,\n IHeaderTreeDefine,\n IDimension,\n IIndicator,\n ITitleDefine,\n ICornerDefine,\n TextAlignType,\n TextBaselineType\n} from './ts-types';\nimport { ListTable } from './ListTable';\nimport { PivotTable } from './PivotTable';\nimport { PivotChart } from './PivotChart';\nimport type { MousePointerCellEvent } from './ts-types/events';\nimport * as CustomLayout from './render/layout';\n\nimport { updateCell } from './scenegraph/group-creater/cell-helper';\nimport { renderChart } from './scenegraph/graphic/contributions/chart-render-helper';\n\n// import { container, loadCanvasPicker } from '@src/vrender';\n// loadCanvasPicker(container);\n\nexport { getDataCellPath } from './tools/get-data-path';\nexport * from './render/jsx';\n\nexport const version = \"0.18.1\";\n/**\n * @namespace VTable\n */\nexport {\n /**\n * Types\n * @namespace VTable.TYPES\n */\n TYPES,\n core,\n ListTable,\n ListTableConstructorOptions,\n PivotTable,\n PivotTableConstructorOptions,\n PivotChartConstructorOptions,\n PivotChart,\n IHeaderTreeDefine,\n IDimension,\n IIndicator,\n ITitleDefine,\n ICornerDefine,\n ColumnsDefine,\n ColumnDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n TextAlignType,\n TextBaselineType,\n themes,\n data,\n MousePointerCellEvent,\n getIcons,\n clearGlobal,\n //plugin registers\n register,\n /**\n * 暂不推荐使用\n */\n DataStatistics,\n CustomLayout,\n updateCell,\n renderChart,\n graphicUtil\n};\n\n/** @private */\nfunction getIcons(): {\n [key: string]: TYPES.ColumnIconOption;\n} {\n return icons.get();\n}\n/** 清理内部的全局变量 如注册的icon theme等 以及共享的header column类实例 */\nfunction clearGlobal() {\n register.clearAll();\n // headers.type.clearGlobal();\n // columns.type.clearGlobal();\n}\nTYPES.AggregationType;\n"]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,uCAA4D;AA6F1D,4FA7FO,qBAAW,OA6FP;AA5Fb,IAAA,4BAAkB,GAAE,CAAC;AAErB,kDAAoC;AAoDlC,sBAAK;AAnDP,6CAA+B;AAoD7B,oBAAI;AAnDN,6CAA+B;AA2E7B,oBAAI;AA1EN,+CAAiC;AACjC,qDAAuC;AA8ErC,4BAAQ;AA7EV,iDAAmC;AAuEjC,wBAAM;AAtER,yEAA2D;AAgFzD,wCAAc;AA1DhB,2CAAwC;AA0BtC,0FA1BO,qBAAS,OA0BP;AAzBX,6CAA0C;AA2BxC,2FA3BO,uBAAU,OA2BP;AA1BZ,6CAA0C;AA6BxC,2FA7BO,uBAAU,OA6BP;AA3BZ,8DAAgD;AAuD9C,oCAAY;AArDd,wEAAoE;AAsDlE,2FAtDO,wBAAU,OAsDP;AArDZ,gGAAqF;AAsDnF,4FAtDO,iCAAW,OAsDP;AAjDb,uDAAwD;AAA/C,gHAAA,eAAe,OAAA;AACxB,+CAA6B;AAEhB,QAAA,OAAO,GAAG,gBAAgB,CAAC;AAmDxC,SAAS,QAAQ;IAGf,OAAO,KAAK,CAAC,GAAG,EAAE,CAAC;AACrB,CAAC;AAnBC,4BAAQ;AAqBV,SAAS,WAAW;IAClB,QAAQ,CAAC,QAAQ,EAAE,CAAC;AAGtB,CAAC;AAxBC,kCAAW;AAyBb,KAAK,CAAC,eAAe,CAAC","file":"index.js","sourcesContent":["/* eslint-disable sort-imports */\nimport { graphicUtil, registerForVrender } from './vrender';\nregisterForVrender();\n\nimport * as TYPES from './ts-types';\nimport * as core from './core';\nimport * as data from './data';\nimport * as icons from './icons';\nimport * as register from './register';\nimport * as themes from './themes';\nimport * as DataStatistics from './dataset/DataStatistics';\nimport type {\n ColumnDefine,\n ColumnsDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n ListTableConstructorOptions,\n PivotTableConstructorOptions,\n PivotChartConstructorOptions,\n IHeaderTreeDefine,\n IDimension,\n IIndicator,\n ITitleDefine,\n ICornerDefine,\n TextAlignType,\n TextBaselineType\n} from './ts-types';\nimport { ListTable } from './ListTable';\nimport { PivotTable } from './PivotTable';\nimport { PivotChart } from './PivotChart';\nimport type { MousePointerCellEvent } from './ts-types/events';\nimport * as CustomLayout from './render/layout';\n\nimport { updateCell } from './scenegraph/group-creater/cell-helper';\nimport { renderChart } from './scenegraph/graphic/contributions/chart-render-helper';\n\n// import { container, loadCanvasPicker } from '@src/vrender';\n// loadCanvasPicker(container);\n\nexport { getDataCellPath } from './tools/get-data-path';\nexport * from './render/jsx';\n\nexport const version = \"0.18.2-alpha.1\";\n/**\n * @namespace VTable\n */\nexport {\n /**\n * Types\n * @namespace VTable.TYPES\n */\n TYPES,\n core,\n ListTable,\n ListTableConstructorOptions,\n PivotTable,\n PivotTableConstructorOptions,\n PivotChartConstructorOptions,\n PivotChart,\n IHeaderTreeDefine,\n IDimension,\n IIndicator,\n ITitleDefine,\n ICornerDefine,\n ColumnsDefine,\n ColumnDefine,\n LinkColumnDefine,\n ChartColumnDefine,\n ImageColumnDefine,\n SparklineColumnDefine,\n ProgressbarColumnDefine,\n TextColumnDefine,\n GroupColumnDefine,\n TextAlignType,\n TextBaselineType,\n themes,\n data,\n MousePointerCellEvent,\n getIcons,\n clearGlobal,\n //plugin registers\n register,\n /**\n * 暂不推荐使用\n */\n DataStatistics,\n CustomLayout,\n updateCell,\n renderChart,\n graphicUtil\n};\n\n/** @private */\nfunction getIcons(): {\n [key: string]: TYPES.ColumnIconOption;\n} {\n return icons.get();\n}\n/** 清理内部的全局变量 如注册的icon theme等 以及共享的header column类实例 */\nfunction clearGlobal() {\n register.clearAll();\n // headers.type.clearGlobal();\n // columns.type.clearGlobal();\n}\nTYPES.AggregationType;\n"]}
@@ -0,0 +1,13 @@
1
+ import type { IDrawItemInterceptorContribution, IGraphic, IRenderService, IDrawContext, IDrawContribution, IGraphicRenderDrawParams, IImage } from './../../../vrender';
2
+ export declare class VTableDrawItemInterceptorContribution implements IDrawItemInterceptorContribution {
3
+ order: number;
4
+ interceptors: IDrawItemInterceptorContribution[];
5
+ constructor();
6
+ afterDrawItem(graphic: IGraphic, renderService: IRenderService, drawContext: IDrawContext, drawContribution: IDrawContribution, params?: IGraphicRenderDrawParams): boolean;
7
+ beforeDrawItem(graphic: IGraphic, renderService: IRenderService, drawContext: IDrawContext, drawContribution: IDrawContribution, params?: IGraphicRenderDrawParams): boolean;
8
+ }
9
+ export declare class ImageDrawItemInterceptorContribution implements IDrawItemInterceptorContribution {
10
+ order: number;
11
+ afterDrawItem(graphic: IGraphic, renderService: IRenderService, drawContext: IDrawContext, drawContribution: IDrawContribution, params?: IGraphicRenderDrawParams): boolean;
12
+ protected drawItem(graphic: IImage, renderService: IRenderService, drawContext: IDrawContext, drawContribution: IDrawContribution, params?: IGraphicRenderDrawParams): boolean;
13
+ }
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ var __createBinding = this && this.__createBinding || (Object.create ? function(o, m, k, k2) {
4
+ void 0 === k2 && (k2 = k);
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ desc && !("get" in desc ? !m.__esModule : desc.writable || desc.configurable) || (desc = {
7
+ enumerable: !0,
8
+ get: function() {
9
+ return m[k];
10
+ }
11
+ }), Object.defineProperty(o, k2, desc);
12
+ } : function(o, m, k, k2) {
13
+ void 0 === k2 && (k2 = k), o[k2] = m[k];
14
+ }), __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function(o, v) {
15
+ Object.defineProperty(o, "default", {
16
+ enumerable: !0,
17
+ value: v
18
+ });
19
+ } : function(o, v) {
20
+ o.default = v;
21
+ }), __decorate = this && this.__decorate || function(decorators, target, key, desc) {
22
+ var d, c = arguments.length, r = c < 3 ? target : null === desc ? desc = Object.getOwnPropertyDescriptor(target, key) : desc;
23
+ if ("object" == typeof Reflect && "function" == typeof Reflect.decorate) r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) (d = decorators[i]) && (r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r);
24
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
25
+ }, __importStar = this && this.__importStar || function(mod) {
26
+ if (mod && mod.__esModule) return mod;
27
+ var result = {};
28
+ if (null != mod) for (var k in mod) "default" !== k && Object.prototype.hasOwnProperty.call(mod, k) && __createBinding(result, mod, k);
29
+ return __setModuleDefault(result, mod), result;
30
+ };
31
+
32
+ Object.defineProperty(exports, "__esModule", {
33
+ value: !0
34
+ }), exports.ImageDrawItemInterceptorContribution = exports.VTableDrawItemInterceptorContribution = void 0;
35
+
36
+ const vrender_1 = require("./../../../vrender"), icons = __importStar(require("../../../icons")), keep_aspect_ratio_1 = require("../../utils/keep-aspect-ratio");
37
+
38
+ let loadingImage, VTableDrawItemInterceptorContribution = class {
39
+ constructor() {
40
+ this.order = 1, this.interceptors = [ new ImageDrawItemInterceptorContribution ];
41
+ }
42
+ afterDrawItem(graphic, renderService, drawContext, drawContribution, params) {
43
+ for (let i = 0; i < this.interceptors.length; i++) if (this.interceptors[i].afterDrawItem && this.interceptors[i].afterDrawItem(graphic, renderService, drawContext, drawContribution, params)) return !0;
44
+ return !1;
45
+ }
46
+ beforeDrawItem(graphic, renderService, drawContext, drawContribution, params) {
47
+ if ((!graphic.in3dMode || drawContext.in3dInterceptor) && !graphic.shadowRoot && !(graphic.baseGraphic || graphic.attribute.globalZIndex || graphic.interactiveGraphic)) return !1;
48
+ for (let i = 0; i < this.interceptors.length; i++) if (this.interceptors[i].beforeDrawItem && this.interceptors[i].beforeDrawItem(graphic, renderService, drawContext, drawContribution, params)) return !0;
49
+ return !1;
50
+ }
51
+ };
52
+
53
+ VTableDrawItemInterceptorContribution = __decorate([ (0, vrender_1.injectable)() ], VTableDrawItemInterceptorContribution),
54
+ exports.VTableDrawItemInterceptorContribution = VTableDrawItemInterceptorContribution;
55
+
56
+ class ImageDrawItemInterceptorContribution {
57
+ constructor() {
58
+ this.order = 1;
59
+ }
60
+ afterDrawItem(graphic, renderService, drawContext, drawContribution, params) {
61
+ return "image" === graphic.type && this.drawItem(graphic, renderService, drawContext, drawContribution, params),
62
+ !1;
63
+ }
64
+ drawItem(graphic, renderService, drawContext, drawContribution, params) {
65
+ const {image: url} = graphic.attribute;
66
+ if (!url || !graphic.resources) return !1;
67
+ if ("loading" !== graphic.resources.get(url).state) return !1;
68
+ if (!loadingImage) {
69
+ const regedIcons = icons.get(), svg = regedIcons.loading_pic.svg, width = regedIcons.loading_pic.width, height = regedIcons.loading_pic.height;
70
+ loadingImage = (0, vrender_1.createImage)({
71
+ width: width,
72
+ height: height,
73
+ image: svg
74
+ });
75
+ }
76
+ const {image: loadingUrl} = loadingImage.attribute;
77
+ if (!url || !loadingImage.resources) return !1;
78
+ const loadingRes = loadingImage.resources.get(loadingUrl);
79
+ if ("success" !== loadingRes.state) return !1;
80
+ const {context: context} = drawContext;
81
+ context.highPerformanceSave(), graphic.parent && context.setTransformFromMatrix(graphic.parent.globalTransMatrix, !0),
82
+ graphic.glyphHost && graphic.glyphHost.parent && context.setTransformFromMatrix(graphic.glyphHost.parent.globalTransMatrix, !0);
83
+ const b = graphic.AABBBounds, {width: width, height: height} = (0, keep_aspect_ratio_1.calcKeepAspectRatioSize)(loadingRes.data.width, loadingRes.data.height, b.width(), b.height());
84
+ return context.drawImage(loadingRes.data, b.x1 + (b.width() - width) / 2, b.y1 + (b.height() - height) / 2, width, height),
85
+ context.highPerformanceRestore(), !0;
86
+ }
87
+ }
88
+
89
+ exports.ImageDrawItemInterceptorContribution = ImageDrawItemInterceptorContribution;
90
+ //# sourceMappingURL=draw-interceptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/scenegraph/graphic/contributions/draw-interceptor.ts"],"names":[],"mappings":"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","file":"draw-interceptor.js","sourcesContent":["import type {\n IDrawItemInterceptorContribution,\n IGraphic,\n IRenderService,\n IDrawContext,\n IDrawContribution,\n IGraphicRenderDrawParams,\n IImage\n} from './../../../vrender';\nimport { injectable, createImage } from './../../../vrender';\nimport * as icons from '../../../icons';\nimport { calcKeepAspectRatioSize } from '../../utils/keep-aspect-ratio';\nlet loadingImage: IImage;\n\n@injectable()\nexport class VTableDrawItemInterceptorContribution implements IDrawItemInterceptorContribution {\n order: number = 1;\n interceptors: IDrawItemInterceptorContribution[];\n constructor() {\n this.interceptors = [new ImageDrawItemInterceptorContribution()];\n }\n afterDrawItem(\n graphic: IGraphic,\n renderService: IRenderService,\n drawContext: IDrawContext,\n drawContribution: IDrawContribution,\n params?: IGraphicRenderDrawParams\n ): boolean {\n for (let i = 0; i < this.interceptors.length; i++) {\n if (\n this.interceptors[i].afterDrawItem &&\n this.interceptors[i].afterDrawItem(graphic, renderService, drawContext, drawContribution, params)\n ) {\n return true;\n }\n }\n return false;\n }\n\n beforeDrawItem(\n graphic: IGraphic,\n renderService: IRenderService,\n drawContext: IDrawContext,\n drawContribution: IDrawContribution,\n params?: IGraphicRenderDrawParams\n ): boolean {\n // 【性能方案】判定写在外层,减少遍历判断耗时,10000条数据减少1ms\n if (\n (!graphic.in3dMode || drawContext.in3dInterceptor) &&\n !graphic.shadowRoot &&\n !(graphic.baseGraphic || graphic.attribute.globalZIndex || graphic.interactiveGraphic)\n ) {\n return false;\n }\n\n for (let i = 0; i < this.interceptors.length; i++) {\n if (\n this.interceptors[i].beforeDrawItem &&\n this.interceptors[i].beforeDrawItem(graphic, renderService, drawContext, drawContribution, params)\n ) {\n return true;\n }\n }\n return false;\n }\n}\n\nexport class ImageDrawItemInterceptorContribution implements IDrawItemInterceptorContribution {\n order: number = 1;\n\n afterDrawItem(\n graphic: IGraphic,\n renderService: IRenderService,\n drawContext: IDrawContext,\n drawContribution: IDrawContribution,\n params?: IGraphicRenderDrawParams\n ): boolean {\n if (graphic.type === 'image') {\n this.drawItem(graphic, renderService, drawContext, drawContribution, params);\n }\n return false;\n }\n\n protected drawItem(\n graphic: IImage,\n renderService: IRenderService,\n drawContext: IDrawContext,\n drawContribution: IDrawContribution,\n params?: IGraphicRenderDrawParams\n ): boolean {\n const { image: url } = graphic.attribute;\n if (!url || !graphic.resources) {\n return false;\n }\n const res = graphic.resources.get(url);\n if (res.state !== 'loading') {\n return false;\n }\n\n if (!loadingImage) {\n const regedIcons = icons.get();\n const svg = (regedIcons.loading_pic as any).svg;\n const width = (regedIcons.loading_pic as any).width;\n const height = (regedIcons.loading_pic as any).height;\n loadingImage = createImage({\n width,\n height,\n image: svg\n });\n }\n const { image: loadingUrl } = loadingImage.attribute;\n if (!url || !loadingImage.resources) {\n return false;\n }\n const loadingRes = loadingImage.resources.get(loadingUrl);\n if (loadingRes.state !== 'success') {\n return false;\n }\n\n const { context } = drawContext;\n context.highPerformanceSave();\n // 直接transform\n graphic.parent && context.setTransformFromMatrix(graphic.parent.globalTransMatrix, true);\n graphic.glyphHost &&\n graphic.glyphHost.parent &&\n context.setTransformFromMatrix(graphic.glyphHost.parent.globalTransMatrix, true);\n\n const b = graphic.AABBBounds;\n\n const { width, height } = calcKeepAspectRatioSize(\n loadingRes.data.width,\n loadingRes.data.height,\n b.width(),\n b.height()\n );\n\n context.drawImage(loadingRes.data, b.x1 + (b.width() - width) / 2, b.y1 + (b.height() - height) / 2, width, height);\n\n context.highPerformanceRestore();\n\n return true;\n }\n}\n"]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  });
6
6
 
7
- const vrender_1 = require("./../../../vrender"), chart_render_1 = require("./chart-render"), image_contribution_render_1 = require("./image-contribution-render"), rect_contribution_render_1 = require("./rect-contribution-render"), group_contribution_render_1 = require("./group-contribution-render");
7
+ const vrender_1 = require("./../../../vrender"), chart_render_1 = require("./chart-render"), image_contribution_render_1 = require("./image-contribution-render"), rect_contribution_render_1 = require("./rect-contribution-render"), group_contribution_render_1 = require("./group-contribution-render"), draw_interceptor_1 = require("./draw-interceptor");
8
8
 
9
9
  exports.default = new vrender_1.ContainerModule(((bind, unbind, isBound, rebind) => {
10
10
  isBound(vrender_1.SplitRectBeforeRenderContribution) ? rebind(vrender_1.SplitRectBeforeRenderContribution).to(rect_contribution_render_1.SplitRectBeforeRenderContribution).inSingletonScope() : (bind(rect_contribution_render_1.SplitRectBeforeRenderContribution).toSelf().inSingletonScope(),
@@ -35,6 +35,8 @@ exports.default = new vrender_1.ContainerModule(((bind, unbind, isBound, rebind)
35
35
  bind(group_contribution_render_1.ClipBodyGroupBeforeRenderContribution).toSelf().inSingletonScope(),
36
36
  bind(vrender_1.GroupRenderContribution).toService(group_contribution_render_1.ClipBodyGroupBeforeRenderContribution),
37
37
  bind(group_contribution_render_1.ClipBodyGroupAfterRenderContribution).toSelf().inSingletonScope(),
38
- bind(vrender_1.GroupRenderContribution).toService(group_contribution_render_1.ClipBodyGroupAfterRenderContribution);
38
+ bind(vrender_1.GroupRenderContribution).toService(group_contribution_render_1.ClipBodyGroupAfterRenderContribution),
39
+ bind(draw_interceptor_1.VTableDrawItemInterceptorContribution).toSelf().inSingletonScope(),
40
+ bind(vrender_1.DrawItemInterceptor).toService(draw_interceptor_1.VTableDrawItemInterceptorContribution);
39
41
  }));
40
42
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/scenegraph/graphic/contributions/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import {\n GraphicRender,\n GroupRenderContribution,\n ImageRenderContribution,\n RectRenderContribution,\n SplitRectBeforeRenderContribution,\n SplitRectAfterRenderContribution,\n ContainerModule\n} from './../../../vrender';\nimport { ChartRender, DefaultCanvasChartRender } from './chart-render';\nimport { AfterImageRenderContribution, BeforeImageRenderContribution } from './image-contribution-render';\nimport {\n SplitRectBeforeRenderContribution as VTableSplitRectBeforeRenderContribution,\n SplitRectAfterRenderContribution as VTableSplitRectAfterRenderContribution\n} from './rect-contribution-render';\nimport {\n DashGroupAfterRenderContribution,\n DashGroupBeforeRenderContribution,\n SplitGroupBeforeRenderContribution,\n SplitGroupAfterRenderContribution,\n AdjustPosGroupBeforeRenderContribution,\n AdjustPosGroupAfterRenderContribution,\n AdjustColorGroupBeforeRenderContribution,\n AdjustColorGroupAfterRenderContribution,\n ClipBodyGroupBeforeRenderContribution,\n ClipBodyGroupAfterRenderContribution\n} from './group-contribution-render';\n\nexport default new ContainerModule((bind, unbind, isBound, rebind) => {\n // rect 渲染器注入contributions\n if (isBound(SplitRectBeforeRenderContribution)) {\n rebind(SplitRectBeforeRenderContribution).to(VTableSplitRectBeforeRenderContribution).inSingletonScope();\n } else {\n bind(VTableSplitRectBeforeRenderContribution).toSelf().inSingletonScope();\n bind(RectRenderContribution).toService(VTableSplitRectBeforeRenderContribution);\n }\n if (isBound(SplitRectAfterRenderContribution)) {\n rebind(SplitRectAfterRenderContribution).to(VTableSplitRectAfterRenderContribution).inSingletonScope();\n } else {\n bind(VTableSplitRectAfterRenderContribution).toSelf().inSingletonScope();\n bind(RectRenderContribution).toService(VTableSplitRectAfterRenderContribution);\n }\n\n // chart渲染器注入\n bind(DefaultCanvasChartRender).toSelf().inSingletonScope();\n bind(ChartRender).to(DefaultCanvasChartRender);\n bind(GraphicRender).to(DefaultCanvasChartRender);\n\n // image 渲染器注入contributions\n bind(BeforeImageRenderContribution).toSelf().inSingletonScope();\n bind(ImageRenderContribution).toService(BeforeImageRenderContribution);\n bind(AfterImageRenderContribution).toSelf().inSingletonScope();\n bind(ImageRenderContribution).toService(AfterImageRenderContribution);\n\n // group 渲染器注入contributions\n bind(AdjustColorGroupBeforeRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(AdjustColorGroupBeforeRenderContribution);\n bind(AdjustColorGroupAfterRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(AdjustColorGroupAfterRenderContribution);\n\n bind(SplitGroupAfterRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(SplitGroupAfterRenderContribution);\n bind(SplitGroupBeforeRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(SplitGroupBeforeRenderContribution);\n\n bind(DashGroupBeforeRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(DashGroupBeforeRenderContribution);\n bind(DashGroupAfterRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(DashGroupAfterRenderContribution);\n\n bind(AdjustPosGroupBeforeRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(AdjustPosGroupBeforeRenderContribution);\n bind(AdjustPosGroupAfterRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(AdjustPosGroupAfterRenderContribution);\n\n bind(ClipBodyGroupBeforeRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(ClipBodyGroupBeforeRenderContribution);\n bind(ClipBodyGroupAfterRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(ClipBodyGroupAfterRenderContribution);\n});\n"]}
1
+ {"version":3,"sources":["../src/scenegraph/graphic/contributions/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import {\n GraphicRender,\n GroupRenderContribution,\n ImageRenderContribution,\n RectRenderContribution,\n SplitRectBeforeRenderContribution,\n SplitRectAfterRenderContribution,\n ContainerModule,\n DrawItemInterceptor\n} from './../../../vrender';\nimport { ChartRender, DefaultCanvasChartRender } from './chart-render';\nimport { AfterImageRenderContribution, BeforeImageRenderContribution } from './image-contribution-render';\nimport {\n SplitRectBeforeRenderContribution as VTableSplitRectBeforeRenderContribution,\n SplitRectAfterRenderContribution as VTableSplitRectAfterRenderContribution\n} from './rect-contribution-render';\nimport {\n DashGroupAfterRenderContribution,\n DashGroupBeforeRenderContribution,\n SplitGroupBeforeRenderContribution,\n SplitGroupAfterRenderContribution,\n AdjustPosGroupBeforeRenderContribution,\n AdjustPosGroupAfterRenderContribution,\n AdjustColorGroupBeforeRenderContribution,\n AdjustColorGroupAfterRenderContribution,\n ClipBodyGroupBeforeRenderContribution,\n ClipBodyGroupAfterRenderContribution\n} from './group-contribution-render';\nimport { VTableDrawItemInterceptorContribution } from './draw-interceptor';\n\nexport default new ContainerModule((bind, unbind, isBound, rebind) => {\n // rect 渲染器注入contributions\n if (isBound(SplitRectBeforeRenderContribution)) {\n rebind(SplitRectBeforeRenderContribution).to(VTableSplitRectBeforeRenderContribution).inSingletonScope();\n } else {\n bind(VTableSplitRectBeforeRenderContribution).toSelf().inSingletonScope();\n bind(RectRenderContribution).toService(VTableSplitRectBeforeRenderContribution);\n }\n if (isBound(SplitRectAfterRenderContribution)) {\n rebind(SplitRectAfterRenderContribution).to(VTableSplitRectAfterRenderContribution).inSingletonScope();\n } else {\n bind(VTableSplitRectAfterRenderContribution).toSelf().inSingletonScope();\n bind(RectRenderContribution).toService(VTableSplitRectAfterRenderContribution);\n }\n\n // chart渲染器注入\n bind(DefaultCanvasChartRender).toSelf().inSingletonScope();\n bind(ChartRender).to(DefaultCanvasChartRender);\n bind(GraphicRender).to(DefaultCanvasChartRender);\n\n // image 渲染器注入contributions\n bind(BeforeImageRenderContribution).toSelf().inSingletonScope();\n bind(ImageRenderContribution).toService(BeforeImageRenderContribution);\n bind(AfterImageRenderContribution).toSelf().inSingletonScope();\n bind(ImageRenderContribution).toService(AfterImageRenderContribution);\n\n // group 渲染器注入contributions\n bind(AdjustColorGroupBeforeRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(AdjustColorGroupBeforeRenderContribution);\n bind(AdjustColorGroupAfterRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(AdjustColorGroupAfterRenderContribution);\n\n bind(SplitGroupAfterRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(SplitGroupAfterRenderContribution);\n bind(SplitGroupBeforeRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(SplitGroupBeforeRenderContribution);\n\n bind(DashGroupBeforeRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(DashGroupBeforeRenderContribution);\n bind(DashGroupAfterRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(DashGroupAfterRenderContribution);\n\n bind(AdjustPosGroupBeforeRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(AdjustPosGroupBeforeRenderContribution);\n bind(AdjustPosGroupAfterRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(AdjustPosGroupAfterRenderContribution);\n\n bind(ClipBodyGroupBeforeRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(ClipBodyGroupBeforeRenderContribution);\n bind(ClipBodyGroupAfterRenderContribution).toSelf().inSingletonScope();\n bind(GroupRenderContribution).toService(ClipBodyGroupAfterRenderContribution);\n\n // interceptor\n bind(VTableDrawItemInterceptorContribution).toSelf().inSingletonScope();\n bind(DrawItemInterceptor).toService(VTableDrawItemInterceptorContribution);\n});\n"]}
@@ -29,7 +29,7 @@ Object.defineProperty(exports, "__esModule", {
29
29
  value: !0
30
30
  }), 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"), regedIcons = icons.get();
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");
33
33
 
34
34
  function createImageCellGroup(columnGroup, xOrigin, yOrigin, col, row, width, height, keepAspectRatio, imageAutoSizing, padding, textAlign, textBaseline, table, cellTheme) {
35
35
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
@@ -60,24 +60,10 @@ function createImageCellGroup(columnGroup, xOrigin, yOrigin, col, row, width, he
60
60
  image: value,
61
61
  cursor: "pointer"
62
62
  });
63
- return image.name = "image", image.keepAspectRatio = keepAspectRatio, image.successCallback = keepAspectRatio || imageAutoSizing ? () => {
64
- const originImage = image.resources.get(image.attribute.image).data;
65
- if (imageAutoSizing && _adjustWidthHeight(col, row, originImage.width, originImage.height, table.scenegraph, padding),
66
- keepAspectRatio) {
67
- const {width: cellWidth, height: cellHeight, isMerge: isMerge} = getCellRange(cellGroup, table), {width: imageWidth, height: imageHeight} = (0,
68
- keep_aspect_ratio_1.calcKeepAspectRatioSize)(originImage.width, originImage.height, cellWidth - padding[1] - padding[3], cellHeight - padding[0] - padding[2]), pos = (0,
69
- cell_pos_1.calcStartPosition)(0, 0, cellWidth, cellHeight, imageWidth, imageHeight, textAlign, textBaseline, padding);
70
- image.setAttributes({
71
- x: pos.x,
72
- y: pos.y,
73
- width: imageWidth,
74
- height: imageHeight,
75
- dx: isMerge ? -table.getColsWidth(cellGroup.mergeStartCol, col - 1) : 0,
76
- dy: isMerge ? -table.getRowsHeight(cellGroup.mergeStartRow, row - 1) : 0
77
- });
78
- }
63
+ return image.name = "image", image.keepAspectRatio = keepAspectRatio, keepAspectRatio || imageAutoSizing ? image.resources && image.resources.has(image.attribute.image) && "success" === image.resources.get(image.attribute.image).state ? updateAutoSizingAndKeepAspectRatio(imageAutoSizing, keepAspectRatio, padding, textAlign, textBaseline, image, cellGroup, table) : image.successCallback = () => {
64
+ updateAutoSizingAndKeepAspectRatio(imageAutoSizing, keepAspectRatio, padding, textAlign, textBaseline, image, cellGroup, table),
79
65
  table.scenegraph.updateNextFrame();
80
- } : () => {
66
+ } : image.resources && image.resources.has(image.attribute.image) && "success" === image.resources.get(image.attribute.image).state ? updateImageCellContentWhileResize(cellGroup, col, row, table) : image.successCallback = () => {
81
67
  updateImageCellContentWhileResize(cellGroup, col, row, table);
82
68
  }, image.failCallback = () => {
83
69
  const regedIcons = icons.get();
@@ -150,6 +136,40 @@ function getCellRange(cellGroup, table) {
150
136
  };
151
137
  }
152
138
 
139
+ function updateImageDxDy(startCol, endCol, startRow, endRow, table) {
140
+ for (let col = startCol; col <= endCol; col++) for (let row = startRow; row <= endRow; row++) {
141
+ const cellGroup = table.scenegraph.getCell(col, row);
142
+ if (cellGroup) {
143
+ const image = cellGroup.getChildByName("image");
144
+ image && image.setAttributes({
145
+ dx: -table.getColsWidth(cellGroup.mergeStartCol, col - 1),
146
+ dy: -table.getRowsHeight(cellGroup.mergeStartRow, row - 1)
147
+ });
148
+ }
149
+ }
150
+ }
151
+
152
+ function updateAutoSizingAndKeepAspectRatio(imageAutoSizing, keepAspectRatio, padding, textAlign, textBaseline, image, cellGroup, table) {
153
+ const originImage = image.resources.get(image.attribute.image).data, {col: col, row: row} = cellGroup;
154
+ if (imageAutoSizing && !isDamagePic(image) && _adjustWidthHeight(col, row, originImage.width, originImage.height, table.scenegraph, padding),
155
+ keepAspectRatio || isDamagePic(image)) {
156
+ const {width: cellWidth, height: cellHeight, isMerge: isMerge} = getCellRange(cellGroup, table), {width: imageWidth, height: imageHeight} = (0,
157
+ keep_aspect_ratio_1.calcKeepAspectRatioSize)(originImage.width, originImage.height, cellWidth - padding[1] - padding[3], cellHeight - padding[0] - padding[2]), pos = (0,
158
+ cell_pos_1.calcStartPosition)(0, 0, cellWidth, cellHeight, imageWidth, imageHeight, textAlign, textBaseline, padding);
159
+ image.setAttributes({
160
+ x: pos.x,
161
+ y: pos.y,
162
+ width: imageWidth,
163
+ height: imageHeight
164
+ }), isMerge && updateImageDxDy(cellGroup.mergeStartCol, cellGroup.mergeEndCol, cellGroup.mergeStartRow, cellGroup.mergeEndRow, table);
165
+ }
166
+ }
167
+
168
+ function isDamagePic(image) {
169
+ const regedIcons = icons.get();
170
+ return image.attribute.image === regedIcons.damage_pic.svg;
171
+ }
172
+
153
173
  exports.createImageCellGroup = createImageCellGroup, exports._adjustWidthHeight = _adjustWidthHeight,
154
174
  exports.updateImageCellContentWhileResize = updateImageCellContentWhileResize;
155
175
  //# sourceMappingURL=image-cell.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/scenegraph/group-creater/cell-type/image-cell.ts"],"names":[],"mappings":"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","file":"image-cell.js","sourcesContent":["// @ts-nocheck\n/* eslint-disable no-undef */\nimport type { IImage, Image, IThemeSpec } from './../../../vrender';\nimport { createImage } from './../../../vrender';\nimport type { BaseTableAPI } from '../../../ts-types';\nimport * as icons from '../../../icons';\nimport { Group } from '../../graphic/group';\nimport { calcKeepAspectRatioSize } from '../../utils/keep-aspect-ratio';\nimport { calcStartPosition } from '../../utils/cell-pos';\nimport type { Scenegraph } from '../../scenegraph';\nimport { getProp, getFunctionalProp } from '../../utils/get-prop';\nimport { isValid } from '@visactor/vutils';\nimport { getQuadProps } from '../../utils/padding';\n\nconst regedIcons = icons.get();\n\nexport function createImageCellGroup(\n columnGroup: Group,\n xOrigin: number,\n yOrigin: number,\n col: number,\n row: number,\n width: number,\n height: number,\n keepAspectRatio: boolean,\n imageAutoSizing: boolean,\n padding: [number, number, number, number],\n textAlign: CanvasTextAlign,\n textBaseline: CanvasTextBaseline,\n table: BaseTableAPI,\n cellTheme: IThemeSpec\n) {\n const headerStyle = table._getCellStyle(col, row); // to be fixed\n const functionalPadding = getFunctionalProp('padding', headerStyle, col, row, table);\n // const margin = getProp('padding', headerStyle, col, row, table);\n if (isValid(functionalPadding)) {\n padding = functionalPadding;\n }\n if (cellTheme?.text?.textAlign) {\n textAlign = cellTheme?.text?.textAlign;\n }\n if (cellTheme?.text?.textBaseline) {\n textBaseline = cellTheme?.text?.textBaseline;\n }\n\n // cell\n const cellGroup = new Group({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // childrenPickable: false,\n\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: (cellTheme?.group as any)?.strokeArrayWidth ?? undefined,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n\n lineCap: 'square',\n\n clip: true,\n\n cornerRadius: cellTheme.group.cornerRadius\n });\n cellGroup.role = 'cell';\n cellGroup.col = col;\n cellGroup.row = row;\n columnGroup?.addChild(cellGroup);\n\n // image\n const value = table.getCellValue(col, row);\n const image: IImage = createImage({\n x: padding[3],\n y: padding[0],\n width: width - padding[1] - padding[3],\n height: height - padding[0] - padding[2],\n image: value, //?? (regedIcons.damage_pic as any).svg,\n cursor: 'pointer' as Cursor\n });\n image.name = 'image';\n image.keepAspectRatio = keepAspectRatio;\n if (keepAspectRatio || imageAutoSizing) {\n image.successCallback = () => {\n const originImage = image.resources.get(image.attribute.image).data;\n\n if (imageAutoSizing) {\n _adjustWidthHeight(\n col,\n row,\n (originImage as HTMLImageElement).width,\n (originImage as HTMLImageElement).height,\n table.scenegraph,\n padding\n );\n }\n\n if (keepAspectRatio) {\n const { width: cellWidth, height: cellHeight, isMerge } = getCellRange(cellGroup, table);\n\n const { width: imageWidth, height: imageHeight } = calcKeepAspectRatioSize(\n originImage.width,\n originImage.height,\n // cellGroup.attribute.width - padding[1] - padding[3],\n // cellGroup.attribute.height - padding[0] - padding[2]\n cellWidth - padding[1] - padding[3],\n cellHeight - padding[0] - padding[2]\n );\n\n // const left = 0;\n // const top = 0;\n const pos = calcStartPosition(\n 0,\n 0,\n // cellGroup.attribute.width,\n // cellGroup.attribute.height,\n cellWidth,\n cellHeight,\n imageWidth,\n imageHeight,\n textAlign,\n textBaseline,\n padding\n );\n\n image.setAttributes({\n x: pos.x,\n y: pos.y,\n width: imageWidth,\n height: imageHeight,\n dx: isMerge ? -table.getColsWidth(cellGroup.mergeStartCol, col - 1) : 0,\n dy: isMerge ? -table.getRowsHeight(cellGroup.mergeStartRow, row - 1) : 0\n });\n }\n\n table.scenegraph.updateNextFrame();\n };\n } else {\n image.successCallback = () => {\n updateImageCellContentWhileResize(cellGroup, col, row, table);\n };\n }\n (image as any).failCallback = () => {\n const regedIcons = icons.get();\n // image.setAttribute('image', (regedIcons.damage_pic as any).svg);\n (image as any).image = (regedIcons.damage_pic as any).svg;\n };\n cellGroup.appendChild(image);\n\n return cellGroup;\n}\n\n/**\n * 调整某个图片资源所在行列的行高列宽 之后重绘\n * @param col\n * @param row\n * @param img\n * @param table\n * @returns 行高或者列宽是否进行了调整\n */\nexport function _adjustWidthHeight(\n col: number,\n row: number,\n // img: HTMLImageElement,\n width: number,\n height: number,\n scene: Scenegraph,\n padding: [number, number, number, number]\n): boolean {\n // const { width, height } = img as any;\n // const currentContext = context.toCurrentContext();\n\n let needInvalidate = false;\n let targetWidth: number = null;\n let targetHeight: number = null;\n const cellGroup = scene.getCell(col, row, true);\n const { width: cellWidth, height: cellHeight, isMerge } = getCellRange(cellGroup, scene.table);\n\n if (cellWidth < width + padding[1] + padding[3]) {\n targetWidth = width + padding[1] + padding[3];\n needInvalidate = true;\n }\n if (cellHeight < height + padding[2] + padding[0]) {\n targetHeight = height + padding[2] + padding[0];\n needInvalidate = true;\n }\n if (needInvalidate) {\n if (typeof targetWidth === 'number') {\n // table.setColWidth(col, targetWidth, true);\n if (isMerge) {\n for (let col = cellGroup.mergeStartCol; col <= cellGroup.mergeEndCol; col++) {\n scene.setColWidth(col, targetWidth / (cellGroup.mergeEndCol - cellGroup.mergeStartCol + 1));\n }\n } else {\n scene.setColWidth(col, targetWidth);\n }\n }\n if (typeof targetHeight === 'number') {\n // table.setRowHeight(row, targetHeight, true);\n if (isMerge) {\n for (let row = cellGroup.mergeStartRow; row <= cellGroup.mergeEndRow; row++) {\n scene.setRowHeight(row, targetHeight / (cellGroup.mergeEndRow - cellGroup.mergeStartRow + 1));\n }\n } else {\n scene.setRowHeight(row, targetHeight);\n }\n }\n // table.updateCanvasScroll();\n // // table.throttleInvalidate(); // 这里会造成每一张图加载后就重绘 造成多次绘制问题!节流绘制\n // table.invalidate(); //节流绘制改回及时绘制 节流绘制在图片加载过程中的效果不太好\n\n scene.component.updateScrollBar();\n // scene.updateNextFrame();\n return true;\n }\n return false;\n}\n\nexport function updateImageCellContentWhileResize(cellGroup: Group, col: number, row: number, table: BaseTableAPI) {\n const image = cellGroup.getChildByName('image') as Image;\n const originImage =\n (typeof image.attribute.image !== 'string' && image.attribute.image) ||\n image.resources?.get(image.attribute.image).data;\n\n if (!originImage) {\n return;\n }\n\n const headerStyle = table._getCellStyle(col, row); // to be fixed\n const textAlign = getProp('textAlign', headerStyle, col, row, table) ?? 'left';\n const textBaseline = getProp('textBaseline', headerStyle, col, row, table) ?? 'middle';\n const padding = getQuadProps(getProp('padding', headerStyle, col, row, table)) ?? [0, 0, 0, 0];\n\n if (image.keepAspectRatio) {\n const { width: cellWidth, height: cellHeight } = getCellRange(cellGroup, table);\n\n const { width: imageWidth, height: imageHeight } = calcKeepAspectRatioSize(\n originImage.width || originImage.videoWidth,\n originImage.height || originImage.videoHeight,\n // cellGroup.attribute.width - (padding[1] + padding[3]),\n // cellGroup.attribute.height - (padding[0] + padding[2])\n cellWidth - (padding[1] + padding[3]),\n cellHeight - (padding[0] + padding[2])\n );\n\n const pos = calcStartPosition(\n 0,\n 0,\n // cellGroup.attribute.width,\n // cellGroup.attribute.height,\n cellWidth,\n cellHeight,\n imageWidth,\n imageHeight,\n textAlign,\n textBaseline,\n padding\n );\n\n image.setAttributes({\n x: pos.x,\n y: pos.y,\n width: imageWidth,\n height: imageHeight\n });\n } else {\n const { width: cellWidth, height: cellHeight } = getCellRange(cellGroup, table);\n\n image.setAttributes({\n x: padding[3],\n y: padding[0],\n // width: cellGroup.attribute.width - padding[1] - padding[3],\n // height: cellGroup.attribute.height - padding[0] - padding[2]\n width: cellWidth - padding[1] - padding[3],\n height: cellHeight - padding[0] - padding[2]\n });\n }\n\n // update video play icon\n const playIcon = cellGroup.getChildByName('play-icon');\n if (playIcon) {\n const left = 0;\n const top = 0;\n // const width = cellGroup.attribute.width;\n // const height = cellGroup.attribute.height;\n const { width, height } = getCellRange(cellGroup, table);\n const iconSize = Math.floor(Math.min(width - padding[1] - padding[3], height - padding[2] - padding[0]) / 2);\n const anchorX =\n left + (width > image.attribute.width ? image.attribute.x - left + image.attribute.width / 2 : width / 2);\n const anchorY =\n top + (height > image.attribute.height ? image.attribute.y - top + image.attribute.height / 2 : height / 2);\n\n playIcon.setAttributes({\n x: anchorX - iconSize / 2,\n y: anchorY - iconSize / 2,\n width: iconSize,\n height: iconSize\n });\n }\n}\n\nfunction getCellRange(cellGroup: Group, table: BaseTableAPI) {\n if (\n isValid(cellGroup.mergeStartCol) &&\n isValid(cellGroup.mergeEndCol) &&\n isValid(cellGroup.mergeStartRow) &&\n isValid(cellGroup.mergeEndRow)\n ) {\n return {\n width: table.getColsWidth(cellGroup.mergeStartCol, cellGroup.mergeEndCol),\n height: table.getRowsHeight(cellGroup.mergeStartRow, cellGroup.mergeEndRow),\n isMerge: true\n };\n }\n return {\n width: cellGroup.attribute.width,\n height: cellGroup.attribute.height,\n isMerge: false\n };\n}\n"]}
1
+ {"version":3,"sources":["../src/scenegraph/group-creater/cell-type/image-cell.ts"],"names":[],"mappings":"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","file":"image-cell.js","sourcesContent":["// @ts-nocheck\n/* eslint-disable no-undef */\nimport type { IImage, Image, IThemeSpec } from './../../../vrender';\nimport { createImage } from './../../../vrender';\nimport type { BaseTableAPI } from '../../../ts-types';\nimport * as icons from '../../../icons';\nimport { Group } from '../../graphic/group';\nimport { calcKeepAspectRatioSize } from '../../utils/keep-aspect-ratio';\nimport { calcStartPosition } from '../../utils/cell-pos';\nimport type { Scenegraph } from '../../scenegraph';\nimport { getProp, getFunctionalProp } from '../../utils/get-prop';\nimport { isValid } from '@visactor/vutils';\nimport { getQuadProps } from '../../utils/padding';\n\nexport function createImageCellGroup(\n columnGroup: Group,\n xOrigin: number,\n yOrigin: number,\n col: number,\n row: number,\n width: number,\n height: number,\n keepAspectRatio: boolean,\n imageAutoSizing: boolean,\n padding: [number, number, number, number],\n textAlign: CanvasTextAlign,\n textBaseline: CanvasTextBaseline,\n table: BaseTableAPI,\n cellTheme: IThemeSpec\n) {\n const headerStyle = table._getCellStyle(col, row); // to be fixed\n const functionalPadding = getFunctionalProp('padding', headerStyle, col, row, table);\n // const margin = getProp('padding', headerStyle, col, row, table);\n if (isValid(functionalPadding)) {\n padding = functionalPadding;\n }\n if (cellTheme?.text?.textAlign) {\n textAlign = cellTheme?.text?.textAlign;\n }\n if (cellTheme?.text?.textBaseline) {\n textBaseline = cellTheme?.text?.textBaseline;\n }\n\n // cell\n const cellGroup = new Group({\n x: xOrigin,\n y: yOrigin,\n width,\n height,\n // childrenPickable: false,\n\n // 背景相关,cell背景由cellGroup绘制\n lineWidth: cellTheme?.group?.lineWidth ?? undefined,\n fill: cellTheme?.group?.fill ?? undefined,\n stroke: cellTheme?.group?.stroke ?? undefined,\n strokeArrayWidth: (cellTheme?.group as any)?.strokeArrayWidth ?? undefined,\n strokeArrayColor: (cellTheme?.group as any)?.strokeArrayColor ?? undefined,\n cursor: (cellTheme?.group as any)?.cursor ?? undefined,\n\n lineCap: 'square',\n\n clip: true,\n\n cornerRadius: cellTheme.group.cornerRadius\n });\n cellGroup.role = 'cell';\n cellGroup.col = col;\n cellGroup.row = row;\n columnGroup?.addChild(cellGroup);\n\n // image\n const value = table.getCellValue(col, row);\n const image: IImage = createImage({\n x: padding[3],\n y: padding[0],\n width: width - padding[1] - padding[3],\n height: height - padding[0] - padding[2],\n image: value, //?? (regedIcons.damage_pic as any).svg,\n cursor: 'pointer' as Cursor\n });\n image.name = 'image';\n image.keepAspectRatio = keepAspectRatio;\n if (keepAspectRatio || imageAutoSizing) {\n if (\n image.resources &&\n image.resources.has(image.attribute.image) &&\n image.resources.get(image.attribute.image).state === 'success'\n ) {\n updateAutoSizingAndKeepAspectRatio(\n imageAutoSizing,\n keepAspectRatio,\n padding,\n textAlign,\n textBaseline,\n image,\n cellGroup,\n table\n );\n } else {\n image.successCallback = () => {\n updateAutoSizingAndKeepAspectRatio(\n imageAutoSizing,\n keepAspectRatio,\n padding,\n textAlign,\n textBaseline,\n image,\n cellGroup,\n table\n );\n table.scenegraph.updateNextFrame();\n };\n }\n } else {\n if (\n image.resources &&\n image.resources.has(image.attribute.image) &&\n image.resources.get(image.attribute.image).state === 'success'\n ) {\n updateImageCellContentWhileResize(cellGroup, col, row, table);\n } else {\n image.successCallback = () => {\n updateImageCellContentWhileResize(cellGroup, col, row, table);\n };\n }\n }\n (image as any).failCallback = () => {\n const regedIcons = icons.get();\n // image.setAttribute('image', (regedIcons.damage_pic as any).svg);\n (image as any).image = (regedIcons.damage_pic as any).svg;\n };\n cellGroup.appendChild(image);\n\n return cellGroup;\n}\n\n/**\n * 调整某个图片资源所在行列的行高列宽 之后重绘\n * @param col\n * @param row\n * @param img\n * @param table\n * @returns 行高或者列宽是否进行了调整\n */\nexport function _adjustWidthHeight(\n col: number,\n row: number,\n // img: HTMLImageElement,\n width: number,\n height: number,\n scene: Scenegraph,\n padding: [number, number, number, number]\n): boolean {\n // const { width, height } = img as any;\n // const currentContext = context.toCurrentContext();\n\n let needInvalidate = false;\n let targetWidth: number = null;\n let targetHeight: number = null;\n const cellGroup = scene.getCell(col, row, true);\n const { width: cellWidth, height: cellHeight, isMerge } = getCellRange(cellGroup, scene.table);\n\n if (cellWidth < width + padding[1] + padding[3]) {\n targetWidth = width + padding[1] + padding[3];\n needInvalidate = true;\n }\n if (cellHeight < height + padding[2] + padding[0]) {\n targetHeight = height + padding[2] + padding[0];\n needInvalidate = true;\n }\n if (needInvalidate) {\n if (typeof targetWidth === 'number') {\n // table.setColWidth(col, targetWidth, true);\n if (isMerge) {\n for (let col = cellGroup.mergeStartCol; col <= cellGroup.mergeEndCol; col++) {\n scene.setColWidth(col, targetWidth / (cellGroup.mergeEndCol - cellGroup.mergeStartCol + 1));\n }\n } else {\n scene.setColWidth(col, targetWidth);\n }\n }\n if (typeof targetHeight === 'number') {\n // table.setRowHeight(row, targetHeight, true);\n if (isMerge) {\n for (let row = cellGroup.mergeStartRow; row <= cellGroup.mergeEndRow; row++) {\n scene.setRowHeight(row, targetHeight / (cellGroup.mergeEndRow - cellGroup.mergeStartRow + 1));\n }\n } else {\n scene.setRowHeight(row, targetHeight);\n }\n }\n // table.updateCanvasScroll();\n // // table.throttleInvalidate(); // 这里会造成每一张图加载后就重绘 造成多次绘制问题!节流绘制\n // table.invalidate(); //节流绘制改回及时绘制 节流绘制在图片加载过程中的效果不太好\n\n scene.component.updateScrollBar();\n // scene.updateNextFrame();\n return true;\n }\n return false;\n}\n\nexport function updateImageCellContentWhileResize(cellGroup: Group, col: number, row: number, table: BaseTableAPI) {\n const image = cellGroup.getChildByName('image') as Image;\n const originImage =\n (typeof image.attribute.image !== 'string' && image.attribute.image) ||\n image.resources?.get(image.attribute.image).data;\n\n if (!originImage) {\n return;\n }\n\n const headerStyle = table._getCellStyle(col, row); // to be fixed\n const textAlign = getProp('textAlign', headerStyle, col, row, table) ?? 'left';\n const textBaseline = getProp('textBaseline', headerStyle, col, row, table) ?? 'middle';\n const padding = getQuadProps(getProp('padding', headerStyle, col, row, table)) ?? [0, 0, 0, 0];\n\n if (image.keepAspectRatio) {\n const { width: cellWidth, height: cellHeight } = getCellRange(cellGroup, table);\n\n const { width: imageWidth, height: imageHeight } = calcKeepAspectRatioSize(\n originImage.width || originImage.videoWidth,\n originImage.height || originImage.videoHeight,\n // cellGroup.attribute.width - (padding[1] + padding[3]),\n // cellGroup.attribute.height - (padding[0] + padding[2])\n cellWidth - (padding[1] + padding[3]),\n cellHeight - (padding[0] + padding[2])\n );\n\n const pos = calcStartPosition(\n 0,\n 0,\n // cellGroup.attribute.width,\n // cellGroup.attribute.height,\n cellWidth,\n cellHeight,\n imageWidth,\n imageHeight,\n textAlign,\n textBaseline,\n padding\n );\n\n image.setAttributes({\n x: pos.x,\n y: pos.y,\n width: imageWidth,\n height: imageHeight\n });\n } else {\n const { width: cellWidth, height: cellHeight } = getCellRange(cellGroup, table);\n\n image.setAttributes({\n x: padding[3],\n y: padding[0],\n // width: cellGroup.attribute.width - padding[1] - padding[3],\n // height: cellGroup.attribute.height - padding[0] - padding[2]\n width: cellWidth - padding[1] - padding[3],\n height: cellHeight - padding[0] - padding[2]\n });\n }\n\n // update video play icon\n const playIcon = cellGroup.getChildByName('play-icon');\n if (playIcon) {\n const left = 0;\n const top = 0;\n // const width = cellGroup.attribute.width;\n // const height = cellGroup.attribute.height;\n const { width, height } = getCellRange(cellGroup, table);\n const iconSize = Math.floor(Math.min(width - padding[1] - padding[3], height - padding[2] - padding[0]) / 2);\n const anchorX =\n left + (width > image.attribute.width ? image.attribute.x - left + image.attribute.width / 2 : width / 2);\n const anchorY =\n top + (height > image.attribute.height ? image.attribute.y - top + image.attribute.height / 2 : height / 2);\n\n playIcon.setAttributes({\n x: anchorX - iconSize / 2,\n y: anchorY - iconSize / 2,\n width: iconSize,\n height: iconSize\n });\n }\n}\n\nfunction getCellRange(cellGroup: Group, table: BaseTableAPI) {\n if (\n isValid(cellGroup.mergeStartCol) &&\n isValid(cellGroup.mergeEndCol) &&\n isValid(cellGroup.mergeStartRow) &&\n isValid(cellGroup.mergeEndRow)\n ) {\n return {\n width: table.getColsWidth(cellGroup.mergeStartCol, cellGroup.mergeEndCol),\n height: table.getRowsHeight(cellGroup.mergeStartRow, cellGroup.mergeEndRow),\n isMerge: true\n };\n }\n return {\n width: cellGroup.attribute.width,\n height: cellGroup.attribute.height,\n isMerge: false\n };\n}\n\nfunction updateImageDxDy(startCol, endCol, startRow, endRow, table) {\n for (let col = startCol; col <= endCol; col++) {\n for (let row = startRow; row <= endRow; row++) {\n const cellGroup = table.scenegraph.getCell(col, row);\n if (cellGroup) {\n const image = cellGroup.getChildByName('image');\n if (image) {\n image.setAttributes({\n dx: -table.getColsWidth(cellGroup.mergeStartCol, col - 1),\n dy: -table.getRowsHeight(cellGroup.mergeStartRow, row - 1)\n });\n }\n }\n }\n }\n}\n\nfunction updateAutoSizingAndKeepAspectRatio(\n imageAutoSizing: boolean,\n keepAspectRatio: boolean,\n padding: [number, number, number, number],\n textAlign: CanvasTextAlign,\n textBaseline: CanvasTextBaseline,\n image: Image,\n cellGroup: Group,\n table: BaseTableAPI\n) {\n const originImage = image.resources.get(image.attribute.image).data;\n const { col, row } = cellGroup;\n\n if (imageAutoSizing && !isDamagePic(image)) {\n _adjustWidthHeight(\n col,\n row,\n (originImage as HTMLImageElement).width,\n (originImage as HTMLImageElement).height,\n table.scenegraph,\n padding\n );\n }\n if (keepAspectRatio || isDamagePic(image)) {\n const { width: cellWidth, height: cellHeight, isMerge } = getCellRange(cellGroup, table);\n\n const { width: imageWidth, height: imageHeight } = calcKeepAspectRatioSize(\n originImage.width,\n originImage.height,\n // cellGroup.attribute.width - padding[1] - padding[3],\n // cellGroup.attribute.height - padding[0] - padding[2]\n cellWidth - padding[1] - padding[3],\n cellHeight - padding[0] - padding[2]\n );\n\n // const left = 0;\n // const top = 0;\n const pos = calcStartPosition(\n 0,\n 0,\n // cellGroup.attribute.width,\n // cellGroup.attribute.height,\n cellWidth,\n cellHeight,\n imageWidth,\n imageHeight,\n textAlign,\n textBaseline,\n padding\n );\n\n image.setAttributes({\n x: pos.x,\n y: pos.y,\n width: imageWidth,\n height: imageHeight\n // dx: isMerge ? -table.getColsWidth(cellGroup.mergeStartCol, col - 1) : 0,\n // dy: isMerge ? -table.getRowsHeight(cellGroup.mergeStartRow, row - 1) : 0\n });\n\n if (isMerge) {\n updateImageDxDy(\n cellGroup.mergeStartCol,\n cellGroup.mergeEndCol,\n cellGroup.mergeStartRow,\n cellGroup.mergeEndRow,\n table\n );\n }\n }\n}\n\nfunction isDamagePic(image: IImage) {\n const regedIcons = icons.get();\n return image.attribute.image === (regedIcons.damage_pic as any).svg;\n}\n"]}