oolong-engine 0.0.10 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (217) hide show
  1. package/dist/ability/ai-anchor/AIAnchorUtils.d.ts.map +1 -1
  2. package/dist/ability/block/BlockZoomWorker.d.ts +0 -9
  3. package/dist/ability/block/BlockZoomWorker.d.ts.map +1 -1
  4. package/dist/ability/create/CreateWorker.d.ts.map +1 -1
  5. package/dist/ability/create/handler/EditablePathCreateHandler.d.ts +9 -0
  6. package/dist/ability/create/handler/EditablePathCreateHandler.d.ts.map +1 -0
  7. package/dist/ability/delete/DeleteWorker.d.ts.map +1 -1
  8. package/dist/ability/export/pdf/PdfExportWorker.d.ts +18 -2
  9. package/dist/ability/export/pdf/PdfExportWorker.d.ts.map +1 -1
  10. package/dist/ability/export/pdf/SectionPageOrder.d.ts +25 -0
  11. package/dist/ability/export/pdf/SectionPageOrder.d.ts.map +1 -0
  12. package/dist/ability/export/pdf/SectionPagesExport.d.ts +11 -0
  13. package/dist/ability/export/pdf/SectionPagesExport.d.ts.map +1 -0
  14. package/dist/ability/index.d.ts +2 -0
  15. package/dist/ability/index.d.ts.map +1 -1
  16. package/dist/ability/placement/EmptyPlaceFinder.d.ts +31 -0
  17. package/dist/ability/placement/EmptyPlaceFinder.d.ts.map +1 -0
  18. package/dist/ability/placement/index.d.ts +2 -0
  19. package/dist/ability/placement/index.d.ts.map +1 -0
  20. package/dist/ability/svg/CreateSvgWorker.d.ts.map +1 -1
  21. package/dist/ability/svg/SvgDecomposeWorker.d.ts +9 -0
  22. package/dist/ability/svg/SvgDecomposeWorker.d.ts.map +1 -0
  23. package/dist/ability/svg/SvgImportWorker.d.ts +20 -0
  24. package/dist/ability/svg/SvgImportWorker.d.ts.map +1 -0
  25. package/dist/ability/svg/SvgPathParser.d.ts +7 -0
  26. package/dist/ability/svg/SvgPathParser.d.ts.map +1 -0
  27. package/dist/action/executor/node/SelectNodeExecutor.d.ts.map +1 -1
  28. package/dist/action/msgPack/NodeMsgPkg.d.ts.map +1 -1
  29. package/dist/app/ai-api/OolongAIAPI.d.ts +2 -0
  30. package/dist/app/ai-api/OolongAIAPI.d.ts.map +1 -1
  31. package/dist/app/ai-api/module/AINodeAPI.d.ts +35 -1
  32. package/dist/app/ai-api/module/AINodeAPI.d.ts.map +1 -1
  33. package/dist/app/ai-api/module/AIPaintAPI.d.ts +54 -0
  34. package/dist/app/ai-api/module/AIPaintAPI.d.ts.map +1 -0
  35. package/dist/app/ai-api/module/AIViewportAPI.d.ts.map +1 -1
  36. package/dist/app/api/OolongAPI.d.ts +17 -2
  37. package/dist/app/api/OolongAPI.d.ts.map +1 -1
  38. package/dist/app/api/module/CopyPasteAPI.d.ts +16 -2
  39. package/dist/app/api/module/CopyPasteAPI.d.ts.map +1 -1
  40. package/dist/app/api/module/CreateAPI.d.ts +4 -0
  41. package/dist/app/api/module/CreateAPI.d.ts.map +1 -1
  42. package/dist/app/index.d.ts +1 -0
  43. package/dist/app/index.d.ts.map +1 -1
  44. package/dist/{arc-CSWTb5GY.js → arc-DH1IX_g-.js} +1 -1
  45. package/dist/architecture-PBZL5I3N-CG-ZiX9a.js +6 -0
  46. package/dist/{architectureDiagram-2XIMDMQ5-DAaect6d.js → architectureDiagram-2XIMDMQ5-DRUUqHaE.js} +4 -4
  47. package/dist/auxiliary/graphics/select/SelectEditControlPoint.d.ts +6 -2
  48. package/dist/auxiliary/graphics/select/SelectEditControlPoint.d.ts.map +1 -1
  49. package/dist/{blockDiagram-WCTKOSBZ-CyacKypS.js → blockDiagram-WCTKOSBZ-DMTJs-Mc.js} +3 -3
  50. package/dist/{c4Diagram-IC4MRINW-DEOutSFw.js → c4Diagram-IC4MRINW-DQgXnJgr.js} +2 -2
  51. package/dist/{channel-Dww5hNDG.js → channel-BbHV6g1r.js} +1 -1
  52. package/dist/{chunk-4BX2VUAB-CL_kBK_5.js → chunk-4BX2VUAB-DtD0pWDt.js} +1 -1
  53. package/dist/{chunk-55IACEB6-DGeBZgIU.js → chunk-55IACEB6-D_-CWWUC.js} +1 -1
  54. package/dist/{chunk-FMBD7UC4-DtpgX_y3.js → chunk-FMBD7UC4-YNq-BREK.js} +1 -1
  55. package/dist/{chunk-JSJVCQXG-CnQXCevi.js → chunk-JSJVCQXG-DPF_GJzO.js} +1 -1
  56. package/dist/{chunk-KX2RTZJC-BhOYPVoH.js → chunk-KX2RTZJC-Zvg0y1ox.js} +1 -1
  57. package/dist/{chunk-NQ4KR5QH-BvQdiOFM.js → chunk-NQ4KR5QH-D6sWM2Su.js} +3 -3
  58. package/dist/{chunk-QZHKN3VN-BoDqsMGa.js → chunk-QZHKN3VN-BBpn1JbJ.js} +1 -1
  59. package/dist/{chunk-WL4C6EOR-Bt7TOns7.js → chunk-WL4C6EOR-Dr2PHEht.js} +5 -5
  60. package/dist/{classDiagram-VBA2DB6C-B3nzN307.js → classDiagram-VBA2DB6C-DhhJRa4M.js} +2 -2
  61. package/dist/{classDiagram-v2-RAHNMMFH-B3nzN307.js → classDiagram-v2-RAHNMMFH-DhhJRa4M.js} +2 -2
  62. package/dist/{cose-bilkent-S5V4N54A-DK7a4MMq.js → cose-bilkent-S5V4N54A-BVoUqyrd.js} +2 -2
  63. package/dist/{dagre-KLK3FWXG-BXyGgw_3.js → dagre-KLK3FWXG-CKOGkkuE.js} +1 -1
  64. package/dist/{diagram-E7M64L7V-DueFFAqZ.js → diagram-E7M64L7V-ELjaC4Tf.js} +4 -4
  65. package/dist/{diagram-IFDJBPK2-lgsKSJRQ.js → diagram-IFDJBPK2-kNNymIHU.js} +3 -3
  66. package/dist/{diagram-P4PSJMXO-CROKs052.js → diagram-P4PSJMXO-z7yOLG6H.js} +3 -3
  67. package/dist/engine.js +436 -393
  68. package/dist/engine.umd.cjs +484 -481
  69. package/dist/{erDiagram-INFDFZHY-D1s2Vc-g.js → erDiagram-INFDFZHY-CNLDvH_k.js} +4 -4
  70. package/dist/{flowDiagram-PKNHOUZH-CQoquShN.js → flowDiagram-PKNHOUZH-BiXG-_ny.js} +6 -6
  71. package/dist/{ganttDiagram-A5KZAMGK-DJlEcXmK.js → ganttDiagram-A5KZAMGK-vmrEM9Zc.js} +2 -2
  72. package/dist/gitGraph-HDMCJU4V-B42udaBp.js +6 -0
  73. package/dist/{gitGraphDiagram-K3NZZRJ6-DVnRa9H6.js → gitGraphDiagram-K3NZZRJ6-DXuUCkUy.js} +4 -4
  74. package/dist/graphics/OolongGroup.d.ts +2 -0
  75. package/dist/graphics/OolongGroup.d.ts.map +1 -1
  76. package/dist/graphics/OolongSVGUtils.d.ts.map +1 -1
  77. package/dist/graphics/drawer/chart/EditablePathDrawer.d.ts +13 -0
  78. package/dist/graphics/drawer/chart/EditablePathDrawer.d.ts.map +1 -0
  79. package/dist/graphics/editable/EditableGraphicNode.d.ts +6 -0
  80. package/dist/graphics/editable/EditableGraphicNode.d.ts.map +1 -0
  81. package/dist/graphics/editable/OolongEditablePathNode.d.ts +68 -0
  82. package/dist/graphics/editable/OolongEditablePathNode.d.ts.map +1 -0
  83. package/dist/graphics/img/AbsImgNode.d.ts +5 -0
  84. package/dist/graphics/img/AbsImgNode.d.ts.map +1 -1
  85. package/dist/graphics/index.d.ts +15 -3
  86. package/dist/graphics/index.d.ts.map +1 -1
  87. package/dist/graphics/line/OolongLine.d.ts +10 -1
  88. package/dist/graphics/line/OolongLine.d.ts.map +1 -1
  89. package/dist/graphics/node/GraphicNode.d.ts +11 -1
  90. package/dist/graphics/node/GraphicNode.d.ts.map +1 -1
  91. package/dist/graphics/node/NodeFactory.d.ts.map +1 -1
  92. package/dist/graphics/paint/OolongPaint.d.ts +7 -3
  93. package/dist/graphics/paint/OolongPaint.d.ts.map +1 -1
  94. package/dist/graphics/paint/PaintDrawer.d.ts +16 -6
  95. package/dist/graphics/paint/PaintDrawer.d.ts.map +1 -1
  96. package/dist/graphics/paint/PaintGeometryCache.d.ts +17 -0
  97. package/dist/graphics/paint/PaintGeometryCache.d.ts.map +1 -0
  98. package/dist/graphics/paint/PaintPresets.d.ts +10 -0
  99. package/dist/graphics/paint/PaintPresets.d.ts.map +1 -0
  100. package/dist/graphics/paint/PaintStroke.d.ts +21 -0
  101. package/dist/graphics/paint/PaintStroke.d.ts.map +1 -0
  102. package/dist/graphics/paint/brush/AbsPaintDrawer.d.ts +29 -0
  103. package/dist/graphics/paint/brush/AbsPaintDrawer.d.ts.map +1 -0
  104. package/dist/graphics/paint/brush/AbsPaintGeometryCache.d.ts +21 -0
  105. package/dist/graphics/paint/brush/AbsPaintGeometryCache.d.ts.map +1 -0
  106. package/dist/graphics/paint/brush/EraserPaintDrawer.d.ts +13 -0
  107. package/dist/graphics/paint/brush/EraserPaintDrawer.d.ts.map +1 -0
  108. package/dist/graphics/paint/brush/HighlighterPaintDrawer.d.ts +13 -0
  109. package/dist/graphics/paint/brush/HighlighterPaintDrawer.d.ts.map +1 -0
  110. package/dist/graphics/paint/brush/LaserPaintDrawer.d.ts +12 -0
  111. package/dist/graphics/paint/brush/LaserPaintDrawer.d.ts.map +1 -0
  112. package/dist/graphics/paint/brush/LaserPaintGeometryCache.d.ts +12 -0
  113. package/dist/graphics/paint/brush/LaserPaintGeometryCache.d.ts.map +1 -0
  114. package/dist/graphics/paint/brush/PenPaintDrawer.d.ts +12 -0
  115. package/dist/graphics/paint/brush/PenPaintDrawer.d.ts.map +1 -0
  116. package/dist/graphics/paint/brush/PenPaintGeometryCache.d.ts +6 -0
  117. package/dist/graphics/paint/brush/PenPaintGeometryCache.d.ts.map +1 -0
  118. package/dist/graphics/paint/brush/index.d.ts +9 -0
  119. package/dist/graphics/paint/brush/index.d.ts.map +1 -0
  120. package/dist/graphics/props/AbsProps.d.ts +2 -1
  121. package/dist/graphics/props/AbsProps.d.ts.map +1 -1
  122. package/dist/graphics/props/EditablePathProps.d.ts +13 -0
  123. package/dist/graphics/props/EditablePathProps.d.ts.map +1 -0
  124. package/dist/graphics/props/EditableProps.d.ts +2 -1
  125. package/dist/graphics/props/EditableProps.d.ts.map +1 -1
  126. package/dist/graphics/props/PaintProps.d.ts +15 -7
  127. package/dist/graphics/props/PaintProps.d.ts.map +1 -1
  128. package/dist/graphics/props/PropType.d.ts +2 -1
  129. package/dist/graphics/props/PropType.d.ts.map +1 -1
  130. package/dist/graphics/utils/GraphicUtils.d.ts.map +1 -1
  131. package/dist/graphics/utils/ImageUtils.d.ts +23 -0
  132. package/dist/graphics/utils/ImageUtils.d.ts.map +1 -1
  133. package/dist/idl/NodeType.d.ts +2 -0
  134. package/dist/idl/NodeType.d.ts.map +1 -1
  135. package/dist/idl/capInfo/ICapInfo.d.ts +2 -0
  136. package/dist/idl/capInfo/ICapInfo.d.ts.map +1 -1
  137. package/dist/idl/capInfo/IEditablePathProps.d.ts +26 -0
  138. package/dist/idl/capInfo/IEditablePathProps.d.ts.map +1 -0
  139. package/dist/idl/capInfo/IPaintProps.d.ts +39 -2
  140. package/dist/idl/capInfo/IPaintProps.d.ts.map +1 -1
  141. package/dist/idl/index.d.ts +3 -0
  142. package/dist/idl/index.d.ts.map +1 -1
  143. package/dist/image-render/ImageRenderManager.d.ts.map +1 -1
  144. package/dist/{index-Dv97Yc4U.js → index-BwiJSQmf.js} +19803 -17018
  145. package/dist/index.css +1 -1
  146. package/dist/{index.es-D_XOZnzq.js → index.es-DIy5ksdP.js} +1 -1
  147. package/dist/info-3K5VOQVL-CjUzp6oG.js +6 -0
  148. package/dist/{infoDiagram-LFFYTUFH-B7sONglt.js → infoDiagram-LFFYTUFH-BudwsZt3.js} +2 -2
  149. package/dist/{ishikawaDiagram-PHBUUO56-DJBUdty8.js → ishikawaDiagram-PHBUUO56-B5waeCJ_.js} +1 -1
  150. package/dist/{journeyDiagram-4ABVD52K-DarLs5WT.js → journeyDiagram-4ABVD52K-avDiCSP1.js} +4 -4
  151. package/dist/{kanban-definition-K7BYSVSG-CTnRDDYJ.js → kanban-definition-K7BYSVSG-zJEtc6ic.js} +2 -2
  152. package/dist/memory/EngineMemoryManager.d.ts +4 -2
  153. package/dist/memory/EngineMemoryManager.d.ts.map +1 -1
  154. package/dist/memory/index.d.ts +1 -0
  155. package/dist/memory/index.d.ts.map +1 -1
  156. package/dist/memory/paint/index.d.ts +2 -0
  157. package/dist/memory/paint/index.d.ts.map +1 -0
  158. package/dist/memory/paint/paintStyleMemory.d.ts +17 -0
  159. package/dist/memory/paint/paintStyleMemory.d.ts.map +1 -0
  160. package/dist/{mermaid-parser.core-wn55x8_n.js → mermaid-parser.core-TLuXz-z0.js} +8 -8
  161. package/dist/{mermaid.core-DcdJJEs9.js → mermaid.core-BikCpVlF.js} +32 -32
  162. package/dist/{mindmap-definition-YRQLILUH-Xvc5BhMB.js → mindmap-definition-YRQLILUH-D4rBsFBN.js} +3 -3
  163. package/dist/packet-RMMSAZCW-BVmtOL8e.js +6 -0
  164. package/dist/pie-UPGHQEXC-BZkQmtxo.js +6 -0
  165. package/dist/{pieDiagram-SKSYHLDU-D6b24_PY.js → pieDiagram-SKSYHLDU-BXcSt5bL.js} +4 -4
  166. package/dist/plugin-copy-paste/copy-paste/paste/svg/OolongSvgPasteHandler.d.ts +0 -1
  167. package/dist/plugin-copy-paste/copy-paste/paste/svg/OolongSvgPasteHandler.d.ts.map +1 -1
  168. package/dist/plugin-copy-paste/copy-paste/paste/svg/SvgClipboardUtils.d.ts +14 -0
  169. package/dist/plugin-copy-paste/copy-paste/paste/svg/SvgClipboardUtils.d.ts.map +1 -0
  170. package/dist/plugin-pointer/interact/basic/constants.d.ts.map +1 -1
  171. package/dist/plugin-pointer/interact/basic/cursor/handler/ToolCursorHandler.d.ts.map +1 -1
  172. package/dist/plugin-pointer/interact/default/click/handler/AnchorQuickCreateHandler.d.ts.map +1 -1
  173. package/dist/plugin-pointer/interact/default/create/normal/grab/handler/CreateUpEditableHandler.d.ts.map +1 -1
  174. package/dist/plugin-pointer/interact/default/create/normal/grab/handler/CreateUpResourceHandler.d.ts.map +1 -1
  175. package/dist/plugin-pointer/interact/default/create/normal/hover/CreateHoverNodeProcessor.d.ts.map +1 -1
  176. package/dist/plugin-pointer/interact/default/create/paint/CreatePaintMode.d.ts.map +1 -1
  177. package/dist/plugin-pointer/interact/default/create/paint/CreatePaintProcessor.d.ts +18 -8
  178. package/dist/plugin-pointer/interact/default/create/paint/CreatePaintProcessor.d.ts.map +1 -1
  179. package/dist/plugin-pointer/interact/default/create/paint/ErasePaintProcessor.d.ts +21 -0
  180. package/dist/plugin-pointer/interact/default/create/paint/ErasePaintProcessor.d.ts.map +1 -0
  181. package/dist/plugin-pointer/interact/default/editControl/EditControlPointProcessor.d.ts +6 -2
  182. package/dist/plugin-pointer/interact/default/editControl/EditControlPointProcessor.d.ts.map +1 -1
  183. package/dist/plugin-pointer/interact/default/editPoint/EditPointProcessor.d.ts +2 -2
  184. package/dist/plugin-pointer/interact/default/editPoint/EditPointProcessor.d.ts.map +1 -1
  185. package/dist/plugin-pointer/interact/default/normal/hover/HoverProcessor.d.ts.map +1 -1
  186. package/dist/plugin-pointer/interact/default/rotate/handler/RotateNodeHandler.d.ts.map +1 -1
  187. package/dist/plugin-pointer/interact/detector/RotateDetector.d.ts.map +1 -1
  188. package/dist/plugin-pointer/interact/detector/editable/EditControlPointDetector.d.ts +10 -2
  189. package/dist/plugin-pointer/interact/detector/editable/EditControlPointDetector.d.ts.map +1 -1
  190. package/dist/plugin-pointer/interact/detector/editable/EditablePointDetector.d.ts +2 -2
  191. package/dist/plugin-pointer/interact/detector/editable/EditablePointDetector.d.ts.map +1 -1
  192. package/dist/preview/PreviewQuickCreateManager.d.ts.map +1 -1
  193. package/dist/preview/previewCreate/handler/PreviewEditableHandler.d.ts.map +1 -1
  194. package/dist/{quadrantDiagram-337W2JSQ-BpZ7l9yI.js → quadrantDiagram-337W2JSQ-CWzggCiE.js} +1 -1
  195. package/dist/radar-KQ55EAFF-DZ_MDzaV.js +6 -0
  196. package/dist/{requirementDiagram-Z7DCOOCP-DR9HWgE2.js → requirementDiagram-Z7DCOOCP-BkuJ8CKj.js} +3 -3
  197. package/dist/{sankeyDiagram-WA2Y5GQK-Covj-_CY.js → sankeyDiagram-WA2Y5GQK-BFgq6RpQ.js} +1 -1
  198. package/dist/select/status/single/SingleEditableStatusHandler.d.ts.map +1 -1
  199. package/dist/select/status/single/SingleStatusHandler.d.ts.map +1 -1
  200. package/dist/{sequenceDiagram-2WXFIKYE-D3BVtjuv.js → sequenceDiagram-2WXFIKYE-w-APRlOk.js} +3 -3
  201. package/dist/{stateDiagram-RAJIS63D-CjZzUaCd.js → stateDiagram-RAJIS63D-D4iow99y.js} +2 -2
  202. package/dist/{stateDiagram-v2-FVOUBMTO-BxSP5tqg.js → stateDiagram-v2-FVOUBMTO-p0CapLAG.js} +2 -2
  203. package/dist/{timeline-definition-YZTLITO2-6iF8MhjE.js → timeline-definition-YZTLITO2-BM7_sm21.js} +2 -2
  204. package/dist/treemap-KZPCXAKY-C2pDg8rm.js +6 -0
  205. package/dist/utils/IdGenerator.d.ts.map +1 -1
  206. package/dist/utils/SvgNumberUtils.d.ts +5 -0
  207. package/dist/utils/SvgNumberUtils.d.ts.map +1 -0
  208. package/dist/{vennDiagram-LZ73GAT5-C2Bz34Zv.js → vennDiagram-LZ73GAT5-DWHtFWMq.js} +1 -1
  209. package/dist/{xychartDiagram-JWTSCODW-CPVSnUZC.js → xychartDiagram-JWTSCODW-9bvBnezZ.js} +1 -1
  210. package/package.json +3 -1
  211. package/dist/architecture-PBZL5I3N-BxkBDwcC.js +0 -6
  212. package/dist/gitGraph-HDMCJU4V-sddMyHUw.js +0 -6
  213. package/dist/info-3K5VOQVL-D7BiwmjR.js +0 -6
  214. package/dist/packet-RMMSAZCW-zNABrbX3.js +0 -6
  215. package/dist/pie-UPGHQEXC-BZP2xlXX.js +0 -6
  216. package/dist/radar-KQ55EAFF-DZkVXw6z.js +0 -6
  217. package/dist/treemap-KZPCXAKY-Bx2PeAeG.js +0 -6
@@ -1,8 +1,8 @@
1
- import { g as Vt } from "./chunk-55IACEB6-DGeBZgIU.js";
2
- import { s as Mt } from "./chunk-KX2RTZJC-BhOYPVoH.js";
3
- import { _ as u, b as Bt, a as Ft, s as Yt, g as Pt, o as zt, p as Gt, c as it, l as L, x as Kt, v as Ut, z as Zt, A as jt, n as Wt, r as Qt, u as Xt } from "./mermaid.core-DcdJJEs9.js";
1
+ import { g as Vt } from "./chunk-55IACEB6-D_-CWWUC.js";
2
+ import { s as Mt } from "./chunk-KX2RTZJC-Zvg0y1ox.js";
3
+ import { _ as u, b as Bt, a as Ft, s as Yt, g as Pt, o as zt, p as Gt, c as it, l as L, x as Kt, v as Ut, z as Zt, A as jt, n as Wt, r as Qt, u as Xt } from "./mermaid.core-BikCpVlF.js";
4
4
  import { s as qt } from "./transform-QfIdy88w.js";
5
- import { c as Ht } from "./channel-Dww5hNDG.js";
5
+ import { c as Ht } from "./channel-BbHV6g1r.js";
6
6
  var _t = function() {
7
7
  var s = /* @__PURE__ */ u(function(R, n, a, c) {
8
8
  for (a = a || {}, c = R.length; c--; a[R[c]] = n) ;
@@ -1,11 +1,11 @@
1
- import { g as Ht } from "./chunk-FMBD7UC4-DtpgX_y3.js";
2
- import { _ as m, m as Mt, l as t1, c as b1, n as Xt, r as Qt, u as rt, b as Jt, s as Zt, o as $t, a as te, g as ee, p as se, j as ie, q as re, J as ae, t as ne, v as it, x as ue, y as oe, z as le } from "./mermaid.core-DcdJJEs9.js";
3
- import { c as ce } from "./chunk-JSJVCQXG-CnQXCevi.js";
4
- import { g as he } from "./chunk-55IACEB6-DGeBZgIU.js";
5
- import { s as de } from "./chunk-KX2RTZJC-BhOYPVoH.js";
1
+ import { g as Ht } from "./chunk-FMBD7UC4-YNq-BREK.js";
2
+ import { _ as m, m as Mt, l as t1, c as b1, n as Xt, r as Qt, u as rt, b as Jt, s as Zt, o as $t, a as te, g as ee, p as se, j as ie, q as re, J as ae, t as ne, v as it, x as ue, y as oe, z as le } from "./mermaid.core-BikCpVlF.js";
3
+ import { c as ce } from "./chunk-JSJVCQXG-DPF_GJzO.js";
4
+ import { g as he } from "./chunk-55IACEB6-D_-CWWUC.js";
5
+ import { s as de } from "./chunk-KX2RTZJC-Zvg0y1ox.js";
6
6
  import { s as O1 } from "./transform-QfIdy88w.js";
7
7
  import pe from "./purify.es-BpFm6ZGf.js";
8
- import { c as fe } from "./channel-Dww5hNDG.js";
8
+ import { c as fe } from "./channel-BbHV6g1r.js";
9
9
  var ge = "flowchart-", G1, be = (G1 = class {
10
10
  // cspell:ignore funs
11
11
  constructor() {
@@ -1,5 +1,5 @@
1
- import { g as En, s as In, p as An, o as Wn, a as On, b as $n, _ as d, c as _t, d as Hn, aF as rt, l as Tt, j as Nn, i as Pn, x as Vn, u as zn } from "./mermaid.core-DcdJJEs9.js";
2
- import { c as ne, g as re } from "./index-Dv97Yc4U.js";
1
+ import { g as En, s as In, p as An, o as Wn, a as On, b as $n, _ as d, c as _t, d as Hn, aF as rt, l as Tt, j as Nn, i as Pn, x as Vn, u as zn } from "./mermaid.core-BikCpVlF.js";
2
+ import { c as ne, g as re } from "./index-BwiJSQmf.js";
3
3
  import { R as Je, r as Rn, h as Ke, j as tn, C as en, n as se, k as Zn, s as Bt } from "./transform-QfIdy88w.js";
4
4
  import { b as Bn, t as We, c as Xn, a as jn, l as qn } from "./linear-Dzjs91Hs.js";
5
5
  import { i as Gn } from "./init-DjUOC4st.js";
@@ -0,0 +1,6 @@
1
+ import { f as e } from "./mermaid-parser.core-TLuXz-z0.js";
2
+ import { G as a } from "./mermaid-parser.core-TLuXz-z0.js";
3
+ export {
4
+ a as GitGraphModule,
5
+ e as createGitGraphServices
6
+ };
@@ -1,7 +1,7 @@
1
- import { p as V } from "./chunk-4BX2VUAB-CL_kBK_5.js";
2
- import { I as X } from "./chunk-QZHKN3VN-BoDqsMGa.js";
3
- import { p as J, o as Q, s as Z, g as rr, a as er, b as tr, _ as $, l as m, u as ar, B as sr, x as nr, j as E, C as or, D as cr, E as ir, F as dr } from "./mermaid.core-DcdJJEs9.js";
4
- import { p as hr } from "./mermaid-parser.core-wn55x8_n.js";
1
+ import { p as V } from "./chunk-4BX2VUAB-DtD0pWDt.js";
2
+ import { I as X } from "./chunk-QZHKN3VN-BBpn1JbJ.js";
3
+ import { p as J, o as Q, s as Z, g as rr, a as er, b as tr, _ as $, l as m, u as ar, B as sr, x as nr, j as E, C as or, D as cr, E as ir, F as dr } from "./mermaid.core-BikCpVlF.js";
4
+ import { p as hr } from "./mermaid-parser.core-TLuXz-z0.js";
5
5
  import { s as lr } from "./transform-QfIdy88w.js";
6
6
  var p = {
7
7
  NORMAL: 0,
@@ -18,6 +18,8 @@ export declare class OolongGroup extends GraphicNode {
18
18
  toGlobal(localPoint: IPoint): IPoint;
19
19
  nameGlobalTransform(): AffineMatrix;
20
20
  selfTransform(): AffineMatrix;
21
+ /** 组合的位移在 selfTransform() 里,transform 恒为单位阵,不能用基类那份 */
22
+ getParentSpacePoints(): IPoint[];
21
23
  updateTransformMatrix(): void;
22
24
  static load(id: string, type: NodeType, zIndex: number, props: Partial<AbsProps>[], parent: GraphicNode, ctx: CanvasRenderingContext2D): OolongGroup;
23
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OolongGroup.d.ts","sourceRoot":"","sources":["../../src/graphics/OolongGroup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAQ,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,qBAAa,WAAY,SAAQ,WAAW;IAC1C,IAAI,EAAE,QAAQ,CAAkB;IAEhC,IAAI,SAAS,IAAI,MAAM,CAEtB;gBAEW,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,wBAAwB;IAKrD,0BAA0B,IAAI,SAAS;IA2BvC,QAAQ,CAAC,GAAG,EAAE,wBAAwB,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC;IAmBrE,WAAW,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAChD,kBAAkB,IAAI,KAAK;IAI3B,cAAc,IAAI,OAAO;IAIzB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAK9C,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO;IAMlD,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAKpC,mBAAmB,IAAI,YAAY;IAMnC,aAAa,IAAI,YAAY;IAM7B,qBAAqB,IAAI,IAAI;IAE7B,MAAM,CAAC,IAAI,CACT,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,EAC1B,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,wBAAwB,GAC5B,WAAW;CAQf"}
1
+ {"version":3,"file":"OolongGroup.d.ts","sourceRoot":"","sources":["../../src/graphics/OolongGroup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAQ,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,qBAAa,WAAY,SAAQ,WAAW;IAC1C,IAAI,EAAE,QAAQ,CAAkB;IAEhC,IAAI,SAAS,IAAI,MAAM,CAEtB;gBAEW,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,wBAAwB;IAKrD,0BAA0B,IAAI,SAAS;IA2BvC,QAAQ,CAAC,GAAG,EAAE,wBAAwB,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC;IAmBrE,WAAW,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAChD,kBAAkB,IAAI,KAAK;IAI3B,cAAc,IAAI,OAAO;IAIzB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAK9C,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO;IAMlD,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAKpC,mBAAmB,IAAI,YAAY;IAMnC,aAAa,IAAI,YAAY;IAM7B,uDAAuD;IACvD,oBAAoB,IAAI,MAAM,EAAE;IAWhC,qBAAqB,IAAI,IAAI;IAE7B,MAAM,CAAC,IAAI,CACT,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,EAC1B,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,wBAAwB,GAC5B,WAAW;CAQf"}
@@ -1 +1 @@
1
- {"version":3,"file":"OolongSVGUtils.d.ts","sourceRoot":"","sources":["../../src/graphics/OolongSVGUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAID,qBAAa,cAAc;IACzB;;;;;;;;;OASG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IASlC,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,MAAM;IAe3C,MAAM,CAAC,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,WAAW;CAsCvD"}
1
+ {"version":3,"file":"OolongSVGUtils.d.ts","sourceRoot":"","sources":["../../src/graphics/OolongSVGUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAGhC,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAID,qBAAa,cAAc;IACzB;;;;;;;;;OASG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IASlC,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,MAAM;IAI3C,MAAM,CAAC,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,WAAW;CA2CvD"}
@@ -0,0 +1,13 @@
1
+ import { GraphicNode } from "@/graphics";
2
+ import type { OolongEditablePathNode } from "@/graphics/editable/OolongEditablePathNode";
3
+ import { IPoint } from "@/idl";
4
+ export declare class EditablePathDrawer {
5
+ draw(node: OolongEditablePathNode, ctx: CanvasRenderingContext2D): void;
6
+ toSvg(node: OolongEditablePathNode): string;
7
+ borderContains(node: GraphicNode, point: IPoint, buffer: number): IPoint | null;
8
+ getConnectAnchor(): IPoint[];
9
+ private pathFallbackDraw;
10
+ private appendPath;
11
+ private pathData;
12
+ }
13
+ //# sourceMappingURL=EditablePathDrawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditablePathDrawer.d.ts","sourceRoot":"","sources":["../../../../src/graphics/drawer/chart/EditablePathDrawer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAA0B,MAAM,YAAY,CAAC;AAEjE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,EAAsC,MAAM,EAAgB,MAAM,OAAO,CAAC;AAKjF,qBAAa,kBAAkB;IAC7B,IAAI,CAAC,IAAI,EAAE,sBAAsB,EAAE,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAwBvE,KAAK,CAAC,IAAI,EAAE,sBAAsB,GAAG,MAAM;IAc3C,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAc/E,gBAAgB,IAAI,MAAM,EAAE;IAI5B,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,QAAQ;CAYjB"}
@@ -0,0 +1,6 @@
1
+ import { GraphicNode } from "@/graphics/node/GraphicNode";
2
+ import { OolongEditableNode } from "./OolongEditableNode";
3
+ import { OolongEditablePathNode } from "./OolongEditablePathNode";
4
+ export type EditableGraphicNode = OolongEditableNode | OolongEditablePathNode;
5
+ export declare function isEditableGraphicNode(node: GraphicNode): node is EditableGraphicNode;
6
+ //# sourceMappingURL=EditableGraphicNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditableGraphicNode.d.ts","sourceRoot":"","sources":["../../../src/graphics/editable/EditableGraphicNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,GAAG,sBAAsB,CAAC;AAE9E,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,IAAI,mBAAmB,CAEpF"}
@@ -0,0 +1,68 @@
1
+ import { IRect, Point } from "@/common";
2
+ import { AffineMatrix } from "@/math";
3
+ import { IBaseProps, IEditablePath, IPoint, NodeType } from "@/idl";
4
+ import { AbsProps } from "@/graphics/props/AbsProps";
5
+ import { BorderProps } from "@/graphics/props/BorderProps";
6
+ import { ColorProps } from "@/graphics/props/ColorProps";
7
+ import { EditablePathProps } from "@/graphics/props/EditablePathProps";
8
+ import { EditablePathDrawer } from "@/graphics/drawer/chart/EditablePathDrawer";
9
+ import { GraphicNode } from "@/graphics/node/GraphicNode";
10
+ import { EditStatus } from "./EditStatus";
11
+ export interface EditablePathSegmentRef {
12
+ pathIndex: number;
13
+ commandIndex: number;
14
+ }
15
+ export interface EditablePathSegment extends EditablePathSegmentRef {
16
+ point: IPoint;
17
+ }
18
+ export declare class OolongEditablePathNode extends GraphicNode {
19
+ type: NodeType;
20
+ drawer: EditablePathDrawer;
21
+ editStatus: EditStatus | null;
22
+ get editProps(): EditablePathProps;
23
+ get borderProps(): BorderProps;
24
+ get colorProps(): ColorProps;
25
+ get globalEditPoints(): IPoint[];
26
+ getEditableSegments(): EditablePathSegment[];
27
+ splitSegment(segment: EditablePathSegmentRef): {
28
+ paths: IEditablePath[];
29
+ anchorIndex: number;
30
+ } | null;
31
+ constructor(id: string, ctx: CanvasRenderingContext2D);
32
+ rebuildFromGlobalAnchor(globalAnchorIndex: number, globalPoint: IPoint, sourcePaths?: IEditablePath[]): {
33
+ baseProps: IBaseProps;
34
+ paths: IEditablePath[];
35
+ };
36
+ rebuildFromGlobalControl(pathIndex: number, commandIndex: number, controlIndex: 1 | 2, globalPoint: IPoint): {
37
+ baseProps: IBaseProps;
38
+ paths: IEditablePath[];
39
+ } | null;
40
+ rebuildWithoutAnchor(globalAnchorIndex: number): {
41
+ baseProps: IBaseProps;
42
+ paths: IEditablePath[];
43
+ } | null;
44
+ updateProps(props: Partial<AbsProps>[]): void;
45
+ treeDraw(ctx: CanvasRenderingContext2D, drawNodeSet: Set<GraphicNode>): void;
46
+ drawOnGLCtx(ctx: CanvasRenderingContext2D): void;
47
+ drawOnGLCtxWithMatrix(ctx: CanvasRenderingContext2D, matrix: AffineMatrix): void;
48
+ loseFocus(): void;
49
+ protected svgContent(): string;
50
+ borderContains(globalPoint: IPoint, buffer: number): IPoint | null;
51
+ contains(point: Point): boolean;
52
+ getStretchMinSize(): Point;
53
+ getTextContentRect(): IRect;
54
+ getConnectAnchor(): IPoint[];
55
+ canQuickCreate(): boolean;
56
+ canBeConnected(): boolean;
57
+ private translateCommandEndpoint;
58
+ private previousCommandPoint;
59
+ private subpathStartPoint;
60
+ private isClosingCommand;
61
+ private findClosingCommand;
62
+ private midpoint;
63
+ private linearPoint;
64
+ private cubicPoint;
65
+ private normalizeGlobalPaths;
66
+ static load(id: string, type: NodeType, zIndex: number, props: Partial<AbsProps>[], parent: GraphicNode, ctx: CanvasRenderingContext2D): OolongEditablePathNode;
67
+ }
68
+ //# sourceMappingURL=OolongEditablePathNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OolongEditablePathNode.d.ts","sourceRoot":"","sources":["../../../src/graphics/editable/OolongEditablePathNode.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,11 @@ export declare abstract class AbsImgNode extends GraphicNode {
39
39
  * 外层g transform承担全局变换。
40
40
  */
41
41
  protected svgContent(): string;
42
+ /**
43
+ * 映射到节点宽度上的原图像素数:未裁剪即整张位图宽度,裁剪时是参与显示的那段源像素
44
+ * (与 clipDrawImage 的 sWidth 同一口径)。用于按原图密度决定内嵌位图的栅格化倍率。
45
+ */
46
+ private exportSourcePixelWidth;
42
47
  private reportExportFailure;
43
48
  private vectorSvgContent;
44
49
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AbsImgNode.d.ts","sourceRoot":"","sources":["../../../src/graphics/img/AbsImgNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C,OAAO,EAAE,MAAM,EAAgB,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAE,KAAK,EAAS,IAAI,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAI/C,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,8BAAsB,UAAW,SAAQ,WAAW;IAClD,SAAS,EAAE,WAAW,GAAG,IAAI,CAAQ;IACrC,iBAAiB,EAAE,iBAAiB,CAA2B;IAC/D,kBAAkB,EAAE,kBAAkB,CAA4B;IAClE,MAAM,EAAE,OAAO,CAAS;IACxB,WAAW,EAAE,OAAO,CAAS;IAE7B,SAAS,CAAC,MAAM,GAAE,OAAc;IAIhC,cAAc,CAAC,SAAS,EAAE,WAAW;IAKrC,gBAAgB;IAIhB,YAAY,CAAC,WAAW,EAAE,OAAO;IAIjC,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,SAAS,IAAI,SAAS,CAEzB;IAED,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;IAQtC,QAAQ,CAAC,GAAG,EAAE,wBAAwB,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC;IAIrE,WAAW,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAIhD,eAAe,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAIpD,qBAAqB,CAAC,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,YAAY,EAAE,oBAAoB,GAAE,OAAc;IAuB/G,OAAO,CAAC,iBAAiB;IAmCzB,OAAO,CAAC,kBAAkB;IAa1B;;;;OAIG;IACH,SAAS,CAAC,eAAe,IAAI,MAAM;IAInC;;;;;OAKG;IACH,SAAS,CAAC,UAAU,IAAI,MAAM;IA4C9B,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,gBAAgB;IAexB;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAsB/B,OAAO,CAAC,cAAc;IA6BtB,OAAO,CAAC,aAAa;IAoCrB,UAAU,IAAI;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IAWrD,kBAAkB;IAUlB,kBAAkB,IAAI,KAAK;IAI3B,gBAAgB,IAAI,MAAM,EAAE;IAI5B,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;CAoBnE"}
1
+ {"version":3,"file":"AbsImgNode.d.ts","sourceRoot":"","sources":["../../../src/graphics/img/AbsImgNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C,OAAO,EAAE,MAAM,EAAgB,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAE,KAAK,EAAS,IAAI,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAK/C,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,8BAAsB,UAAW,SAAQ,WAAW;IAClD,SAAS,EAAE,WAAW,GAAG,IAAI,CAAQ;IACrC,iBAAiB,EAAE,iBAAiB,CAA2B;IAC/D,kBAAkB,EAAE,kBAAkB,CAA4B;IAClE,MAAM,EAAE,OAAO,CAAS;IACxB,WAAW,EAAE,OAAO,CAAS;IAE7B,SAAS,CAAC,MAAM,GAAE,OAAc;IAIhC,cAAc,CAAC,SAAS,EAAE,WAAW;IAKrC,gBAAgB;IAIhB,YAAY,CAAC,WAAW,EAAE,OAAO;IAIjC,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,SAAS,IAAI,SAAS,CAEzB;IAED,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;IAQtC,QAAQ,CAAC,GAAG,EAAE,wBAAwB,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC;IAIrE,WAAW,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAIhD,eAAe,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAIpD,qBAAqB,CAAC,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,YAAY,EAAE,oBAAoB,GAAE,OAAc;IAuB/G,OAAO,CAAC,iBAAiB;IAmCzB,OAAO,CAAC,kBAAkB;IAa1B;;;;OAIG;IACH,SAAS,CAAC,eAAe,IAAI,MAAM;IAInC;;;;;OAKG;IACH,SAAS,CAAC,UAAU,IAAI,MAAM;IA2C9B;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAa9B,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,gBAAgB;IAexB;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAsB/B,OAAO,CAAC,cAAc;IA6BtB,OAAO,CAAC,aAAa;IAoCrB,UAAU,IAAI;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;IAWrD,kBAAkB;IAUlB,kBAAkB,IAAI,KAAK;IAI3B,gBAAgB,IAAI,MAAM,EAAE;IAI5B,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;CAoBnE"}
@@ -12,9 +12,9 @@ export * from "./base/ShapeType";
12
12
  export * from "./base/SectionType";
13
13
  export * from "./drawer/AbsDrawer";
14
14
  export * from "./OolongGroup";
15
- export * from "./node/GraphicNode";
16
- export * from "./node/NodeFactory";
17
- export * from "./node/RootNode";
15
+ export * from "./editable/OolongEditableNode";
16
+ export * from "./editable/OolongEditablePathNode";
17
+ export * from "./editable/EditableGraphicNode";
18
18
  export * from "./props/AbsProps";
19
19
  export * from "./props/ArrowProps";
20
20
  export * from "./props/BaseProps";
@@ -30,16 +30,28 @@ export * from "./props/CropProps";
30
30
  export * from "./props/ClipProps";
31
31
  export * from "./props/DescriptionProps";
32
32
  export * from "./props/FormulaProps";
33
+ export * from "./props/EditableProps";
34
+ export * from "./props/EditablePathProps";
33
35
  export * from "./props/chart/ChartProps";
34
36
  export * from "./props/widget/CheckSizeProps";
35
37
  export * from "./props/widget/CheckStatusProps";
36
38
  export * from "./props/TextParagraphProps";
37
39
  export * from "./props/TextParagraphQuoteProps";
40
+ export * from "./node/GraphicNode";
41
+ export * from "./node/NodeFactory";
42
+ export * from "./node/RootNode";
38
43
  export * from "./utils/GraphicUtils";
39
44
  export * from "./utils/ImageUtils";
40
45
  export * from "./OolongSVGUtils";
41
46
  export * from "./mindmap/OolongMindmapNode";
42
47
  export * from "./mathFormula/MathFormula";
43
48
  export * from "./props/MermaidProps";
49
+ export * from "./props/PaintProps";
50
+ export * from "./paint/PaintPresets";
51
+ export * from "./paint/PaintStroke";
52
+ export * from "./paint/OolongPaint";
53
+ export * from "./paint/PaintDrawer";
54
+ export * from "./paint/PaintGeometryCache";
55
+ export * from "./paint/brush";
44
56
  export * from "./mermaid/MermaidSection";
45
57
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graphics/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAgC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/graphics/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAgC/C,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,eAAe,CAAC;AAC9B,cAAc,0BAA0B,CAAC"}
@@ -68,7 +68,16 @@ export declare class OolongLine extends GraphicTextNode {
68
68
  isEmptyText(): boolean;
69
69
  updateProps(props: Partial<AbsProps>[]): void;
70
70
  getArrowDrawer(arrowType: LineArrowType): AbsArrowDrawer | null;
71
- private getBoundsPoints;
71
+ /**
72
+ * 连线在父坐标系下的范围点集。
73
+ *
74
+ * points 本身就是父坐标系的坐标(自身 transform 恒为单位阵),直接返回即可;
75
+ * 走 getBoundsPoints() 而不是 points,是为了带上箭头包围盒——否则按它做适配时,
76
+ * 箭头尖会被容器边缘切掉。
77
+ */
78
+ getParentSpacePoints(): IPoint[];
79
+ /** 连线本体 + 两端箭头的包围点(父坐标系) */
80
+ getBoundsPoints(): IPoint[];
72
81
  private getTransformedArrowBoundsPoints;
73
82
  draw(): void;
74
83
  getBounds(): RectNode;
@@ -1 +1 @@
1
- {"version":3,"file":"OolongLine.d.ts","sourceRoot":"","sources":["../../../src/graphics/line/OolongLine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OolongLine.d.ts","sourceRoot":"","sources":["../../../src/graphics/line/OolongLine.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { IPoint, NodeInfo, NodeType } from "../../idl";
2
+ import { PaintBrushType } from "@/idl/capInfo/IPaintProps";
2
3
  import { PropType } from "../props/PropType";
3
4
  import { AbsProps } from "../props/AbsProps";
4
5
  import { AffineMatrix } from "../../math";
@@ -46,7 +47,7 @@ export declare abstract class GraphicNode {
46
47
  constructor(id: string, graphicContext: CanvasRenderingContext2D);
47
48
  setParent(parent: GraphicNode): void;
48
49
  updateProps(props: Partial<AbsProps>[]): void;
49
- getProp<Prop extends AbsProps>(type: PropType): Prop | null;
50
+ getProp<Prop extends AbsProps>(type: PropType | PaintBrushType): Prop | null;
50
51
  updateTransformMatrix(): void;
51
52
  contains(point: Point, scale?: number): boolean;
52
53
  canQuickCreate(): boolean;
@@ -71,6 +72,15 @@ export declare abstract class GraphicNode {
71
72
  * 子内容坐标系变换(如 BlockSection 的 anchor/scale),仅作用于子孙节点,不影响自身 frame
72
73
  */
73
74
  contentTransform(): AffineMatrix | null;
75
+ /**
76
+ * 节点在**父坐标系**下的范围点集(默认为 baseProps 矩形四角经自身 transform 映射)。
77
+ *
78
+ * 需要在父坐标系里求包围盒的场景请统一走它,不要再手写「baseProps 四角 × transform」:
79
+ * - OolongLine 的 transform 恒为单位阵,位置在 points 里,baseProps 只是派生包围盒;
80
+ * - OolongGroup 的 transform 也是单位阵,位移单独放在 selfTransform()。
81
+ * 这两类都重写了本方法,手写那份会把它们折叠到父坐标系原点上。
82
+ */
83
+ getParentSpacePoints(): IPoint[];
74
84
  globalTransform(): AffineMatrix;
75
85
  /**
76
86
  * 绘制用的全局变换:在 globalTransform() 之上,额外叠上各祖先的 contentTransform()
@@ -1 +1 @@
1
- {"version":3,"file":"GraphicNode.d.ts","sourceRoot":"","sources":["../../../src/graphics/node/GraphicNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GraphicNode.d.ts","sourceRoot":"","sources":["../../../src/graphics/node/GraphicNode.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"NodeFactory.d.ts","sourceRoot":"","sources":["../../../src/graphics/node/NodeFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAqB5C,qBAAa,WAAW;IACtB,MAAM,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAQ;IAE3C,MAAM,CAAC,WAAW,IAAI,WAAW;IAOjC,MAAM,CACJ,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,EAC1B,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,wBAAwB,GAC5B,WAAW;IA0Cd,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,wBAAwB,GAAG,WAAW;CAItG"}
1
+ {"version":3,"file":"NodeFactory.d.ts","sourceRoot":"","sources":["../../../src/graphics/node/NodeFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAsB5C,qBAAa,WAAW;IACtB,MAAM,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAQ;IAE3C,MAAM,CAAC,WAAW,IAAI,WAAW;IAOjC,MAAM,CACJ,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,EAC1B,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,wBAAwB,GAC5B,WAAW;IA4Cd,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,wBAAwB,GAAG,WAAW;CAItG"}
@@ -1,4 +1,6 @@
1
- import { AbsProps, BorderProps, GraphicNode } from "@/graphics";
1
+ import { AbsProps } from "../props/AbsProps";
2
+ import { ColorProps } from "../props/ColorProps";
3
+ import { GraphicNode } from "../node/GraphicNode";
2
4
  import { IRect, Point } from "@/common";
3
5
  import { IPoint, NodeType } from "@/idl";
4
6
  import { PaintProps } from "@/graphics/props/PaintProps";
@@ -6,18 +8,20 @@ import { PaintDrawer } from "@/graphics/paint/PaintDrawer";
6
8
  import { AffineMatrix } from "@/math";
7
9
  export declare class OolongPaint extends GraphicNode {
8
10
  type: NodeType;
9
- get borderProps(): BorderProps;
10
11
  get paintProps(): PaintProps;
12
+ get colorProps(): ColorProps;
11
13
  drawer: PaintDrawer;
12
14
  constructor(id: string, ctx: CanvasRenderingContext2D);
13
15
  updateProps(props: Partial<AbsProps>[]): void;
14
- contains(point: Point): boolean;
16
+ contains(point: Point, scale?: number): boolean;
15
17
  treeDraw(ctx: CanvasRenderingContext2D, drawNodeSet: Set<GraphicNode>): void;
16
18
  drawOnGLCtx(ctx: CanvasRenderingContext2D): void;
17
19
  drawOnGLCtxWithMatrix(ctx: CanvasRenderingContext2D, matrix: AffineMatrix): void;
18
20
  getStretchMinSize(): Point;
19
21
  getTextContentRect(): IRect;
20
22
  getConnectAnchor(): IPoint[];
23
+ borderContains(globalPoint: IPoint, buffer: number): IPoint | null;
24
+ protected svgContent(): string;
21
25
  canQuickCreate(): boolean;
22
26
  canBeConnected(): boolean;
23
27
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"OolongPaint.d.ts","sourceRoot":"","sources":["../../../src/graphics/paint/OolongPaint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAa,WAAW,EAAE,WAAW,EAAsC,MAAM,YAAY,CAAC;AAC/G,OAAO,EAAE,KAAK,EAAE,KAAK,EAAQ,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,qBAAa,WAAY,SAAQ,WAAW;IAC1C,IAAI,EAAE,QAAQ,CAAkB;IAEhC,IAAI,WAAW,IAAI,WAAW,CAE7B;IAED,IAAI,UAAU,IAAI,UAAU,CAE3B;IAED,MAAM,EAAE,WAAW,CAAqB;gBAE5B,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,wBAAwB;IAQrD,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;IAQtC,QAAQ,CAAC,KAAK,EAAE,KAAK;IAMrB,QAAQ,CAAC,GAAG,EAAE,wBAAwB,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC;IAIrE,WAAW,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAIhD,qBAAqB,CAAC,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAUhF,iBAAiB,IAAI,KAAK;IAI1B,kBAAkB,IAAI,KAAK;IAI3B,gBAAgB,IAAI,MAAM,EAAE;IAI5B,cAAc,IAAI,OAAO;IAOzB,cAAc,IAAI,OAAO;IAOzB;;;;;;;;OAQG;IACH,MAAM,CAAC,IAAI,CACT,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,EAC1B,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,wBAAwB,GAC5B,WAAW;CAQf"}
1
+ {"version":3,"file":"OolongPaint.d.ts","sourceRoot":"","sources":["../../../src/graphics/paint/OolongPaint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAQ,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAuB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAqCtC,qBAAa,WAAY,SAAQ,WAAW;IAC1C,IAAI,EAAE,QAAQ,CAAkB;IAEhC,IAAI,UAAU,IAAI,UAAU,CAE3B;IAED,IAAI,UAAU,IAAI,UAAU,CAE3B;IAED,MAAM,EAAE,WAAW,CAAqB;gBAE5B,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,wBAAwB;IAgBrD,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;IAQtC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO;IAKlD,QAAQ,CAAC,GAAG,EAAE,wBAAwB,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC;IAIrE,WAAW,CAAC,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAIhD,qBAAqB,CAAC,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAUhF,iBAAiB,IAAI,KAAK;IAI1B,kBAAkB,IAAI,KAAK;IAI3B,gBAAgB,IAAI,MAAM,EAAE;IAI5B,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIlE,SAAS,CAAC,UAAU,IAAI,MAAM;IAmD9B,cAAc,IAAI,OAAO;IAOzB,cAAc,IAAI,OAAO;IAOzB;;;;;;;;OAQG;IACH,MAAM,CAAC,IAAI,CACT,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,EAC1B,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,wBAAwB,GAC5B,WAAW;CAQf"}
@@ -1,15 +1,25 @@
1
1
  import { OolongPaint } from "@/graphics/paint/OolongPaint";
2
2
  import { IPoint } from "@/idl";
3
+ import { PaintBrushType } from "@/idl/capInfo/IPaintProps";
3
4
  import { GraphicNode } from "@/graphics";
4
5
  import { ShapeInfo } from "kld-intersections";
6
+ import { AbsPaintDrawer, PenPaintDrawer, LaserPaintDrawer, EraserPaintDrawer, HighlighterPaintDrawer } from "./brush";
7
+ import { PaintGeometryCache } from "./PaintGeometryCache";
8
+ /**
9
+ * 画笔绘制门面(Facade),根据笔刷类型将渲染、命中检测和几何缓存分发给具体的 Drawer。
10
+ */
5
11
  export declare class PaintDrawer {
12
+ readonly penDrawer: PenPaintDrawer;
13
+ readonly laserDrawer: LaserPaintDrawer;
14
+ readonly eraserDrawer: EraserPaintDrawer;
15
+ readonly highlighterDrawer: HighlighterPaintDrawer;
16
+ readonly geometry: PaintGeometryCache;
17
+ private drawerMap;
18
+ constructor();
19
+ getDrawer(type: PaintBrushType): AbsPaintDrawer<any>;
20
+ registerDrawer(type: PaintBrushType, drawer: AbsPaintDrawer<any>): void;
6
21
  draw(node: OolongPaint, ctx: CanvasRenderingContext2D): void;
7
- private fallbackDraw;
8
- /**
9
- * 需要完善之后
10
- * @param node
11
- * @protected
12
- */
22
+ contains(node: OolongPaint, point: IPoint, buffer?: number): boolean;
13
23
  protected nodeShapeInfo(node: GraphicNode): ShapeInfo;
14
24
  borderContains(node: GraphicNode, p: IPoint, buffer: number): IPoint | null;
15
25
  getConnectAnchor(): IPoint[];
@@ -1 +1 @@
1
- {"version":3,"file":"PaintDrawer.d.ts","sourceRoot":"","sources":["../../../src/graphics/paint/PaintDrawer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAgB,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAgB,MAAM,YAAY,CAAC;AACvD,OAAO,EAAgB,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG5D,qBAAa,WAAW;IACtB,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,wBAAwB;IAqDrD,OAAO,CAAC,YAAY;IAWpB;;;;OAIG;IACH,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS;IAKrD,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAa3E,gBAAgB,IAAI,MAAM,EAAE;CAQ7B"}
1
+ {"version":3,"file":"PaintDrawer.d.ts","sourceRoot":"","sources":["../../../src/graphics/paint/PaintDrawer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AACtH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;GAEG;AACH,qBAAa,WAAW;IACtB,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACzC,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IAEnD,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IAEtC,OAAO,CAAC,SAAS,CAA2C;;IAqB5D,SAAS,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,CAAC,GAAG,CAAC;IAIpD,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,IAAI;IAIvE,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAK5D,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,MAAU,GAAG,OAAO;IAKvE,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS;IAIrD,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAI3E,gBAAgB,IAAI,MAAM,EAAE;CAG7B"}
@@ -0,0 +1,17 @@
1
+ import type { IPoint } from "@/idl";
2
+ import type { IPaintBrush, IPaintPoint, PaintBrushType } from "@/idl/capInfo/IPaintProps";
3
+ import { AbsPaintGeometryCache, ILaserPaintGeometry, PenPaintGeometryCache, LaserPaintGeometryCache } from "./brush";
4
+ export type PaintGeometryEntry = ILaserPaintGeometry;
5
+ /**
6
+ * 统一的画笔几何缓存,内部按笔刷类型分发到对应的专用缓存(如 PenPaintGeometryCache、LaserPaintGeometryCache)。
7
+ */
8
+ export declare class PaintGeometryCache {
9
+ readonly penCache: PenPaintGeometryCache;
10
+ readonly laserCache: LaserPaintGeometryCache;
11
+ constructor(penCache?: PenPaintGeometryCache, laserCache?: LaserPaintGeometryCache);
12
+ getCache(type: PaintBrushType): AbsPaintGeometryCache<any>;
13
+ get(source: IPaintPoint[], brush: IPaintBrush, width: number, height: number): PaintGeometryEntry;
14
+ seed(source: IPaintPoint[], brush: IPaintBrush, width: number, height: number, outline: IPoint[], coreOutline?: IPoint[]): void;
15
+ clear(): void;
16
+ }
17
+ //# sourceMappingURL=PaintGeometryCache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PaintGeometryCache.d.ts","sourceRoot":"","sources":["../../../src/graphics/paint/PaintGeometryCache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC1F,OAAO,EACL,qBAAqB,EAErB,mBAAmB,EACnB,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,SAAS,CAAC;AAEjB,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAErD;;GAEG;AACH,qBAAa,kBAAkB;IAC7B,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,uBAAuB,CAAC;gBAEjC,QAAQ,CAAC,EAAE,qBAAqB,EAAE,UAAU,CAAC,EAAE,uBAAuB;IAKlF,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,qBAAqB,CAAC,GAAG,CAAC;IAI1D,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,kBAAkB;IAIjG,IAAI,CACF,MAAM,EAAE,WAAW,EAAE,EACrB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EAAE,EACjB,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB,IAAI;IASP,KAAK,IAAI,IAAI;CAId"}
@@ -0,0 +1,10 @@
1
+ import { IPaintBrush, IPaintColor, PaintBrushType } from "@/idl/capInfo/IPaintProps";
2
+ export declare const DEFAULT_PAINT_BRUSH: IPaintBrush;
3
+ export declare const PAINT_BRUSH_PRESETS: Record<PaintBrushType, IPaintBrush>;
4
+ export declare const DEFAULT_PAINT_COLOR: IPaintColor;
5
+ export declare const PAINT_COLOR_PRESETS: Record<PaintBrushType, IPaintColor>;
6
+ export declare const ALL_PAINT_BRUSH_TYPES: PaintBrushType[];
7
+ export declare function getPaintBrushPreset(type: PaintBrushType): IPaintBrush;
8
+ export declare function getPaintColorPreset(type: PaintBrushType): IPaintColor;
9
+ export declare function createPaintBrush(update?: Partial<IPaintBrush>): IPaintBrush;
10
+ //# sourceMappingURL=PaintPresets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PaintPresets.d.ts","sourceRoot":"","sources":["../../../src/graphics/paint/PaintPresets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAErF,eAAO,MAAM,mBAAmB,EAAE,WAOjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,cAAc,EAAE,WAAW,CA0DnE,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,WAGjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,cAAc,EAAE,WAAW,CAQnE,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,cAAc,EAQjD,CAAC;AAEF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,WAAW,CAErE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,GAAG,WAAW,CAErE;AAED,wBAAgB,gBAAgB,CAAC,MAAM,GAAE,OAAO,CAAC,WAAW,CAAM,GAAG,WAAW,CAkB/E"}
@@ -0,0 +1,21 @@
1
+ import { IPoint } from "@/idl";
2
+ import { IPaintBrush, IPaintPoint } from "@/idl/capInfo/IPaintProps";
3
+ /**
4
+ * 对一组画笔采样点进行稳定和平滑处理,重点消除绘制过程中的抖动、起笔毛刺和阶梯感,同时保留尖锐转角。
5
+ */
6
+ export declare function smoothPaintPoints(points: IPaintPoint[]): IPaintPoint[];
7
+ /**
8
+ * 沿向心 Catmull-Rom 样条曲线细分并插值采样点。
9
+ * 这样可以彻底消除绘制转角和曲线时出现的多边形线段或弦线感。
10
+ */
11
+ export declare function fitSplineCurve(points: IPaintPoint[], maxSegmentLength?: number): IPaintPoint[];
12
+ /** 生成 Canvas 渲染器使用的填充轮廓。 */
13
+ export declare function getPaintOutline(points: IPaintPoint[], brush: IPaintBrush, last?: boolean): IPoint[];
14
+ export declare function isPointInPolygon(point: IPoint, polygon: IPoint[]): boolean;
15
+ export declare function distanceToSegment(point: IPoint, start: IPoint, end: IPoint): number;
16
+ export declare function distanceToPolyline(point: IPoint, points: IPoint[]): number;
17
+ /** Closed midpoint quadratics keep a continuous tangent, including the seam.
18
+ * All curves stay inside the outline's control bounds, so node bounds remain valid.
19
+ */
20
+ export declare function tracePaintOutline(ctx: Pick<CanvasRenderingContext2D, "moveTo" | "quadraticCurveTo" | "closePath">, outline: IPoint[]): void;
21
+ //# sourceMappingURL=PaintStroke.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PaintStroke.d.ts","sourceRoot":"","sources":["../../../src/graphics/paint/PaintStroke.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AASrE;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,CAiEtE;AAuDD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,gBAAgB,GAAE,MAAY,GAAG,WAAW,EAAE,CAyCnG;AAED,4BAA4B;AAC5B,wBAAgB,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,GAAE,OAAc,GAAG,MAAM,EAAE,CAmDzG;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAiB1E;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAWnF;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAa1E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,IAAI,CAAC,wBAAwB,EAAE,QAAQ,GAAG,kBAAkB,GAAG,WAAW,CAAC,EAChF,OAAO,EAAE,MAAM,EAAE,GAChB,IAAI,CAWN"}
@@ -0,0 +1,29 @@
1
+ import { OolongPaint } from "../OolongPaint";
2
+ import { IPoint } from "@/idl";
3
+ import { IPaintBrush } from "@/idl/capInfo/IPaintProps";
4
+ import { GraphicNode } from "@/graphics";
5
+ import { ShapeInfo } from "kld-intersections";
6
+ import { AbsPaintGeometryCache, IPaintGeometry } from "./AbsPaintGeometryCache";
7
+ export declare const clamp01: (value: number) => number;
8
+ export declare abstract class AbsPaintDrawer<TGeometry extends IPaintGeometry = IPaintGeometry> {
9
+ abstract readonly geometry: AbsPaintGeometryCache<TGeometry>;
10
+ draw(node: OolongPaint, ctx: CanvasRenderingContext2D): void;
11
+ /**
12
+ * 配置绘制上下文公共样式,如 globalAlpha, fillStyle, compositeOperation 等。
13
+ */
14
+ protected setupContext(ctx: CanvasRenderingContext2D, node: OolongPaint, geometry: TGeometry): void;
15
+ /**
16
+ * 实际的笔画绘制逻辑,由具体笔刷 Drawer 实现。
17
+ */
18
+ abstract renderStroke(ctx: CanvasRenderingContext2D, node: OolongPaint, geometry: TGeometry): void;
19
+ /**
20
+ * 单点点击(采样点不足 3 个)时的后备绘制。
21
+ */
22
+ abstract fallbackDraw(point: IPoint, brush: IPaintBrush, color: string, alpha: number, ctx: CanvasRenderingContext2D): void;
23
+ /** 判断局部坐标点是否命中实际笔迹。 */
24
+ contains(node: OolongPaint, point: IPoint, buffer?: number): boolean;
25
+ protected nodeShapeInfo(node: GraphicNode): ShapeInfo;
26
+ borderContains(node: GraphicNode, p: IPoint, buffer: number): IPoint | null;
27
+ getConnectAnchor(): IPoint[];
28
+ }
29
+ //# sourceMappingURL=AbsPaintDrawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbsPaintDrawer.d.ts","sourceRoot":"","sources":["../../../../src/graphics/paint/brush/AbsPaintDrawer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAgB,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEhF,eAAO,MAAM,OAAO,GAAI,OAAO,MAAM,KAAG,MAAyC,CAAC;AAElF,8BAAsB,cAAc,CAAC,SAAS,SAAS,cAAc,GAAG,cAAc;IACpF,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAE7D,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,wBAAwB,GAAG,IAAI;IAqB5D;;OAEG;IACH,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,GAAG,IAAI;IAMnG;;OAEG;IACH,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,GAAG,IAAI;IAElG;;OAEG;IACH,QAAQ,CAAC,YAAY,CACnB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,wBAAwB,GAC5B,IAAI;IAEP,uBAAuB;IACvB,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,MAAU,GAAG,OAAO;IAavE,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS;IAKrD,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAa3E,gBAAgB,IAAI,MAAM,EAAE;CAG7B"}
@@ -0,0 +1,21 @@
1
+ import type { IPoint } from "@/idl";
2
+ import type { IPaintBrush, IPaintPoint } from "@/idl/capInfo/IPaintProps";
3
+ export interface IPaintGeometry {
4
+ source: IPaintPoint[];
5
+ brush: IPaintBrush;
6
+ width: number;
7
+ height: number;
8
+ points: IPaintPoint[];
9
+ outline: IPoint[];
10
+ }
11
+ export declare abstract class AbsPaintGeometryCache<T extends IPaintGeometry = IPaintGeometry> {
12
+ protected entry?: T;
13
+ /** PaintProps is updated in place, so keep an immutable value snapshot for cache validation. */
14
+ private cachedBrush?;
15
+ abstract createGeometry(source: IPaintPoint[], brush: IPaintBrush, width: number, height: number, points: IPaintPoint[]): T;
16
+ get(source: IPaintPoint[], brush: IPaintBrush, width: number, height: number): T;
17
+ seed(source: IPaintPoint[], brush: IPaintBrush, width: number, height: number, outline: IPoint[]): void;
18
+ protected createSeededGeometry(source: IPaintPoint[], brush: IPaintBrush, width: number, height: number, points: IPaintPoint[], outline: IPoint[]): T;
19
+ clear(): void;
20
+ }
21
+ //# sourceMappingURL=AbsPaintGeometryCache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AbsPaintGeometryCache.d.ts","sourceRoot":"","sources":["../../../../src/graphics/paint/brush/AbsPaintGeometryCache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAe1E,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,8BAAsB,qBAAqB,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc;IACnF,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpB,gGAAgG;IAChG,OAAO,CAAC,WAAW,CAAC,CAAc;IAElC,QAAQ,CAAC,cAAc,CACrB,MAAM,EAAE,WAAW,EAAE,EACrB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,WAAW,EAAE,GACpB,CAAC;IAEJ,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC;IAiBhF,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAMvG,SAAS,CAAC,oBAAoB,CAC5B,MAAM,EAAE,WAAW,EAAE,EACrB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,WAAW,EAAE,EACrB,OAAO,EAAE,MAAM,EAAE,GAChB,CAAC;IAWJ,KAAK,IAAI,IAAI;CAId"}
@@ -0,0 +1,13 @@
1
+ import { OolongPaint } from "../OolongPaint";
2
+ import { IPoint } from "@/idl";
3
+ import { IPaintBrush } from "@/idl/capInfo/IPaintProps";
4
+ import { AbsPaintDrawer } from "./AbsPaintDrawer";
5
+ import { IPaintGeometry } from "./AbsPaintGeometryCache";
6
+ import { PenPaintGeometryCache } from "./PenPaintGeometryCache";
7
+ export declare class EraserPaintDrawer extends AbsPaintDrawer<IPaintGeometry> {
8
+ readonly geometry: PenPaintGeometryCache;
9
+ protected setupContext(ctx: CanvasRenderingContext2D, node: OolongPaint, geometry: IPaintGeometry): void;
10
+ renderStroke(ctx: CanvasRenderingContext2D, node: OolongPaint, geometry: IPaintGeometry): void;
11
+ fallbackDraw(point: IPoint, brush: IPaintBrush, color: string, alpha: number, ctx: CanvasRenderingContext2D): void;
12
+ }
13
+ //# sourceMappingURL=EraserPaintDrawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EraserPaintDrawer.d.ts","sourceRoot":"","sources":["../../../../src/graphics/paint/brush/EraserPaintDrawer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,EAAE,cAAc,EAAW,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,qBAAa,iBAAkB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACnE,QAAQ,CAAC,QAAQ,wBAA+B;cAE7B,YAAY,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI;IAKjH,YAAY,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI;IAM9F,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,wBAAwB,GAAG,IAAI;CAWnH"}