editor-svg 1.0.2 → 1.0.3

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 (695) hide show
  1. package/dist/editor-svg.es.js +3 -0
  2. package/dist/editor-svg.es.js.map +1 -0
  3. package/dist/editor-svg.umd.js +3 -0
  4. package/dist/editor-svg.umd.js.map +1 -0
  5. package/dist/src/editor/core/actuator/Actuator.d.ts +7 -0
  6. package/dist/src/editor/core/actuator/handlers/positionContextChange.d.ts +3 -0
  7. package/dist/src/editor/core/command/Command.d.ts +147 -0
  8. package/dist/src/editor/core/command/CommandAdapt.d.ts +190 -0
  9. package/dist/src/editor/core/contextmenu/ContextMenu.d.ts +31 -0
  10. package/dist/src/editor/core/contextmenu/menus/controlMenus.d.ts +2 -0
  11. package/dist/src/editor/core/contextmenu/menus/globalMenus.d.ts +2 -0
  12. package/dist/src/editor/core/contextmenu/menus/hyperlinkMenus.d.ts +2 -0
  13. package/dist/src/editor/core/contextmenu/menus/imageMenus.d.ts +2 -0
  14. package/dist/src/editor/core/contextmenu/menus/tableMenus.d.ts +2 -0
  15. package/dist/src/editor/core/cursor/Cursor.d.ts +41 -0
  16. package/dist/src/editor/core/cursor/CursorAgent.d.ts +16 -0
  17. package/dist/src/editor/core/draw/Draw.d.ts +252 -0
  18. package/dist/src/editor/core/draw/control/Control.d.ts +73 -0
  19. package/dist/src/editor/core/draw/control/checkbox/CheckboxControl.d.ts +16 -0
  20. package/dist/src/editor/core/draw/control/date/DateControl.d.ts +24 -0
  21. package/dist/src/editor/core/draw/control/interactive/ControlSearch.d.ts +20 -0
  22. package/dist/src/editor/core/draw/control/number/Calculator.d.ts +16 -0
  23. package/dist/src/editor/core/draw/control/number/NumberControl.d.ts +13 -0
  24. package/dist/src/editor/core/draw/control/radio/RadioControl.d.ts +5 -0
  25. package/dist/src/editor/core/draw/control/richtext/Border.d.ts +10 -0
  26. package/dist/src/editor/core/draw/control/select/SelectControl.d.ts +28 -0
  27. package/dist/src/editor/core/draw/control/text/TextControl.d.ts +18 -0
  28. package/dist/src/editor/core/draw/frame/Background.d.ts +11 -0
  29. package/dist/src/editor/core/draw/frame/Badge.d.ts +14 -0
  30. package/dist/src/editor/core/draw/frame/Footer.d.ts +27 -0
  31. package/dist/src/editor/core/draw/frame/Header.d.ts +27 -0
  32. package/dist/src/editor/core/draw/frame/LineNumber.d.ts +7 -0
  33. package/dist/src/editor/core/draw/frame/Margin.d.ts +7 -0
  34. package/dist/src/editor/core/draw/frame/PageBorder.d.ts +9 -0
  35. package/dist/src/editor/core/draw/frame/PageNumber.d.ts +9 -0
  36. package/dist/src/editor/core/draw/frame/Placeholder.d.ts +20 -0
  37. package/dist/src/editor/core/draw/frame/Watermark.d.ts +10 -0
  38. package/dist/src/editor/core/draw/graffiti/Graffiti.d.ts +19 -0
  39. package/dist/src/editor/core/draw/interactive/Area.d.ts +27 -0
  40. package/dist/src/editor/core/draw/interactive/Group.d.ts +18 -0
  41. package/dist/src/editor/core/draw/interactive/Search.d.ts +30 -0
  42. package/dist/src/editor/core/draw/particle/CheckboxParticle.d.ts +18 -0
  43. package/dist/src/editor/core/draw/particle/HyperlinkParticle.d.ts +17 -0
  44. package/dist/src/editor/core/draw/particle/ImageParticle.d.ts +23 -0
  45. package/dist/src/editor/core/draw/particle/LabelParticle.d.ts +8 -0
  46. package/dist/src/editor/core/draw/particle/LineBreakParticle.d.ts +10 -0
  47. package/dist/src/editor/core/draw/particle/ListParticle.d.ts +20 -0
  48. package/dist/src/editor/core/draw/particle/PageBreakParticle.d.ts +9 -0
  49. package/dist/src/editor/core/draw/particle/RadioParticle.d.ts +18 -0
  50. package/dist/src/editor/core/draw/particle/SeparatorParticle.d.ts +7 -0
  51. package/dist/src/editor/core/draw/particle/SubscriptParticle.d.ts +5 -0
  52. package/dist/src/editor/core/draw/particle/SuperscriptParticle.d.ts +5 -0
  53. package/dist/src/editor/core/draw/particle/TextParticle.d.ts +29 -0
  54. package/dist/src/editor/core/draw/particle/WhiteSpaceParticle.d.ts +7 -0
  55. package/dist/src/editor/core/draw/particle/block/BlockParticle.d.ts +14 -0
  56. package/dist/src/editor/core/draw/particle/block/modules/BaseBlock.d.ts +33 -0
  57. package/dist/src/editor/core/draw/particle/block/modules/IFrameBlock.d.ts +9 -0
  58. package/dist/src/editor/core/draw/particle/block/modules/VideoBlock.d.ts +8 -0
  59. package/dist/src/editor/core/draw/particle/date/DateParticle.d.ts +13 -0
  60. package/dist/src/editor/core/draw/particle/date/DatePicker.d.ts +64 -0
  61. package/dist/src/editor/core/draw/particle/latex/LaTexParticle.d.ts +7 -0
  62. package/dist/src/editor/core/draw/particle/latex/utils/LaTexUtils.d.ts +47 -0
  63. package/dist/src/editor/core/draw/particle/latex/utils/hershey.d.ts +10 -0
  64. package/dist/src/editor/core/draw/particle/latex/utils/symbols.d.ts +8 -0
  65. package/dist/src/editor/core/draw/particle/previewer/Previewer.d.ts +47 -0
  66. package/dist/src/editor/core/draw/particle/table/TableOperate.d.ts +32 -0
  67. package/dist/src/editor/core/draw/particle/table/TableParticle.d.ts +24 -0
  68. package/dist/src/editor/core/draw/particle/table/TableTool.d.ts +31 -0
  69. package/dist/src/editor/core/draw/richtext/AbstractRichText.d.ts +11 -0
  70. package/dist/src/editor/core/draw/richtext/Highlight.d.ts +7 -0
  71. package/dist/src/editor/core/draw/richtext/Strikeout.d.ts +7 -0
  72. package/dist/src/editor/core/draw/richtext/Underline.d.ts +10 -0
  73. package/dist/src/editor/core/event/CanvasEvent.d.ts +52 -0
  74. package/dist/src/editor/core/event/GlobalEvent.d.ts +26 -0
  75. package/dist/src/editor/core/event/eventbus/EventBus.d.ts +9 -0
  76. package/dist/src/editor/core/event/handlers/click.d.ts +11 -0
  77. package/dist/src/editor/core/event/handlers/composition.d.ts +8 -0
  78. package/dist/src/editor/core/event/handlers/copy.d.ts +3 -0
  79. package/dist/src/editor/core/event/handlers/cut.d.ts +2 -0
  80. package/dist/src/editor/core/event/handlers/drag.d.ts +6 -0
  81. package/dist/src/editor/core/event/handlers/drop.d.ts +2 -0
  82. package/dist/src/editor/core/event/handlers/input.d.ts +3 -0
  83. package/dist/src/editor/core/event/handlers/keydown/backspace.d.ts +2 -0
  84. package/dist/src/editor/core/event/handlers/keydown/delete.d.ts +2 -0
  85. package/dist/src/editor/core/event/handlers/keydown/end.d.ts +2 -0
  86. package/dist/src/editor/core/event/handlers/keydown/enter.d.ts +2 -0
  87. package/dist/src/editor/core/event/handlers/keydown/home.d.ts +2 -0
  88. package/dist/src/editor/core/event/handlers/keydown/index.d.ts +2 -0
  89. package/dist/src/editor/core/event/handlers/keydown/left.d.ts +2 -0
  90. package/dist/src/editor/core/event/handlers/keydown/right.d.ts +2 -0
  91. package/dist/src/editor/core/event/handlers/keydown/tab.d.ts +2 -0
  92. package/dist/src/editor/core/event/handlers/keydown/updown.d.ts +2 -0
  93. package/dist/src/editor/core/event/handlers/mousedown.d.ts +7 -0
  94. package/dist/src/editor/core/event/handlers/mouseleave.d.ts +2 -0
  95. package/dist/src/editor/core/event/handlers/mousemove.d.ts +2 -0
  96. package/dist/src/editor/core/event/handlers/mouseup.d.ts +2 -0
  97. package/dist/src/editor/core/event/handlers/paste.d.ts +8 -0
  98. package/dist/src/editor/core/history/HistoryManager.d.ts +15 -0
  99. package/dist/src/editor/core/i18n/I18n.d.ts +12 -0
  100. package/dist/src/editor/core/listener/Listener.d.ts +15 -0
  101. package/dist/src/editor/core/observer/ImageObserver.d.ts +7 -0
  102. package/dist/src/editor/core/observer/MouseObserver.d.ts +13 -0
  103. package/dist/src/editor/core/observer/ScrollObserver.d.ts +20 -0
  104. package/dist/src/editor/core/observer/SelectionObserver.d.ts +22 -0
  105. package/dist/src/editor/core/override/Override.d.ts +9 -0
  106. package/dist/src/editor/core/plugin/Plugin.d.ts +7 -0
  107. package/dist/src/editor/core/position/Position.d.ts +37 -0
  108. package/dist/src/editor/core/range/RangeManager.d.ts +45 -0
  109. package/dist/src/editor/core/register/Register.d.ts +20 -0
  110. package/dist/src/editor/core/shortcut/Shortcut.d.ts +16 -0
  111. package/dist/src/editor/core/shortcut/keys/listKeys.d.ts +2 -0
  112. package/dist/src/editor/core/shortcut/keys/richtextKeys.d.ts +2 -0
  113. package/dist/src/editor/core/shortcut/keys/titleKeys.d.ts +2 -0
  114. package/dist/src/editor/core/worker/WorkerManager.d.ts +16 -0
  115. package/dist/src/editor/core/worker/works/catalog.d.ts +1 -0
  116. package/dist/src/editor/core/worker/works/group.d.ts +1 -0
  117. package/dist/src/editor/core/worker/works/value.d.ts +1 -0
  118. package/dist/src/editor/core/worker/works/wordCount.d.ts +1 -0
  119. package/dist/src/editor/core/zone/Zone.d.ts +21 -0
  120. package/dist/src/editor/core/zone/ZoneTip.d.ts +17 -0
  121. package/dist/src/editor/dataset/constant/Background.d.ts +2 -0
  122. package/dist/src/editor/dataset/constant/Badge.d.ts +2 -0
  123. package/dist/src/editor/dataset/constant/Checkbox.d.ts +2 -0
  124. package/dist/src/editor/dataset/constant/Common.d.ts +21 -0
  125. package/dist/src/editor/dataset/constant/ContextMenu.d.ts +60 -0
  126. package/dist/src/editor/dataset/constant/Control.d.ts +2 -0
  127. package/dist/src/editor/dataset/constant/Cursor.d.ts +3 -0
  128. package/dist/src/editor/dataset/constant/Editor.d.ts +6 -0
  129. package/dist/src/editor/dataset/constant/Element.d.ts +21 -0
  130. package/dist/src/editor/dataset/constant/Footer.d.ts +2 -0
  131. package/dist/src/editor/dataset/constant/Graffiti.d.ts +2 -0
  132. package/dist/src/editor/dataset/constant/Group.d.ts +2 -0
  133. package/dist/src/editor/dataset/constant/Header.d.ts +2 -0
  134. package/dist/src/editor/dataset/constant/ImgCaption.d.ts +2 -0
  135. package/dist/src/editor/dataset/constant/Label.d.ts +2 -0
  136. package/dist/src/editor/dataset/constant/LineBreak.d.ts +2 -0
  137. package/dist/src/editor/dataset/constant/LineNumber.d.ts +2 -0
  138. package/dist/src/editor/dataset/constant/List.d.ts +6 -0
  139. package/dist/src/editor/dataset/constant/PageBorder.d.ts +2 -0
  140. package/dist/src/editor/dataset/constant/PageBreak.d.ts +2 -0
  141. package/dist/src/editor/dataset/constant/PageNumber.d.ts +6 -0
  142. package/dist/src/editor/dataset/constant/Placeholder.d.ts +2 -0
  143. package/dist/src/editor/dataset/constant/Radio.d.ts +2 -0
  144. package/dist/src/editor/dataset/constant/Regular.d.ts +10 -0
  145. package/dist/src/editor/dataset/constant/Separator.d.ts +2 -0
  146. package/dist/src/editor/dataset/constant/Shortcut.d.ts +3 -0
  147. package/dist/src/editor/dataset/constant/Table.d.ts +2 -0
  148. package/dist/src/editor/dataset/constant/Title.d.ts +6 -0
  149. package/dist/src/editor/dataset/constant/Watermark.d.ts +2 -0
  150. package/dist/src/editor/dataset/constant/WhiteSpace.d.ts +2 -0
  151. package/dist/src/editor/dataset/constant/Zone.d.ts +2 -0
  152. package/dist/src/editor/dataset/enum/Area.d.ts +5 -0
  153. package/dist/src/editor/dataset/enum/Background.d.ts +10 -0
  154. package/dist/src/editor/dataset/enum/Block.d.ts +4 -0
  155. package/dist/src/editor/dataset/enum/Common.d.ts +26 -0
  156. package/dist/src/editor/dataset/enum/Control.d.ts +32 -0
  157. package/dist/src/editor/dataset/enum/Editor.d.ts +44 -0
  158. package/dist/src/editor/dataset/enum/Element.d.ts +21 -0
  159. package/dist/src/editor/dataset/enum/ElementStyle.d.ts +12 -0
  160. package/dist/src/editor/dataset/enum/Event.d.ts +5 -0
  161. package/dist/src/editor/dataset/enum/KeyMap.d.ts +85 -0
  162. package/dist/src/editor/dataset/enum/LineNumber.d.ts +4 -0
  163. package/dist/src/editor/dataset/enum/List.d.ts +20 -0
  164. package/dist/src/editor/dataset/enum/Observer.d.ts +6 -0
  165. package/dist/src/editor/dataset/enum/Row.d.ts +7 -0
  166. package/dist/src/editor/dataset/enum/Text.d.ts +12 -0
  167. package/dist/src/editor/dataset/enum/Title.d.ts +8 -0
  168. package/dist/src/editor/dataset/enum/VerticalAlign.d.ts +5 -0
  169. package/dist/src/editor/dataset/enum/Watermark.d.ts +4 -0
  170. package/dist/src/editor/dataset/enum/table/Table.d.ts +17 -0
  171. package/dist/src/editor/dataset/enum/table/TableTool.d.ts +4 -0
  172. package/dist/src/editor/index.d.ts +57 -0
  173. package/dist/src/editor/interface/Area.d.ts +57 -0
  174. package/dist/src/editor/interface/Background.d.ts +8 -0
  175. package/dist/src/editor/interface/Badge.d.ts +15 -0
  176. package/dist/src/editor/interface/Block.d.ts +15 -0
  177. package/dist/src/editor/interface/Catalog.d.ts +9 -0
  178. package/dist/src/editor/interface/Checkbox.d.ts +15 -0
  179. package/dist/src/editor/interface/Command.d.ts +3 -0
  180. package/dist/src/editor/interface/Common.d.ts +14 -0
  181. package/dist/src/editor/interface/Control.d.ts +198 -0
  182. package/dist/src/editor/interface/Cursor.d.ts +7 -0
  183. package/dist/src/editor/interface/Draw.d.ts +74 -0
  184. package/dist/src/editor/interface/Editor.d.ts +143 -0
  185. package/dist/src/editor/interface/Element.d.ts +218 -0
  186. package/dist/src/editor/interface/Event.d.ts +22 -0
  187. package/dist/src/editor/interface/EventBus.d.ts +26 -0
  188. package/dist/src/editor/interface/Footer.d.ts +8 -0
  189. package/dist/src/editor/interface/Graffiti.d.ts +13 -0
  190. package/dist/src/editor/interface/Group.d.ts +8 -0
  191. package/dist/src/editor/interface/Header.d.ts +8 -0
  192. package/dist/src/editor/interface/Label.d.ts +7 -0
  193. package/dist/src/editor/interface/LineBreak.d.ts +5 -0
  194. package/dist/src/editor/interface/LineNumber.d.ts +9 -0
  195. package/dist/src/editor/interface/Listener.d.ts +66 -0
  196. package/{src/editor/interface/Margin.ts → dist/src/editor/interface/Margin.d.ts} +1 -1
  197. package/dist/src/editor/interface/PageBorder.d.ts +7 -0
  198. package/dist/src/editor/interface/PageBreak.d.ts +5 -0
  199. package/dist/src/editor/interface/PageNumber.d.ts +15 -0
  200. package/dist/src/editor/interface/Placeholder.d.ts +7 -0
  201. package/dist/src/editor/interface/Plugin.d.ts +3 -0
  202. package/dist/src/editor/interface/Position.d.ts +103 -0
  203. package/dist/src/editor/interface/Previewer.d.ts +13 -0
  204. package/dist/src/editor/interface/Radio.d.ts +15 -0
  205. package/dist/src/editor/interface/Range.d.ts +44 -0
  206. package/dist/src/editor/interface/Row.d.ts +23 -0
  207. package/dist/src/editor/interface/Search.d.ts +30 -0
  208. package/dist/src/editor/interface/Separator.d.ts +4 -0
  209. package/dist/src/editor/interface/Text.d.ts +13 -0
  210. package/dist/src/editor/interface/Title.d.ts +26 -0
  211. package/dist/src/editor/interface/Watermark.d.ts +15 -0
  212. package/dist/src/editor/interface/WhiteSpace.d.ts +5 -0
  213. package/{src/editor/interface/Zone.ts → dist/src/editor/interface/Zone.d.ts} +3 -3
  214. package/dist/src/editor/interface/contextmenu/ContextMenu.d.ts +73 -0
  215. package/dist/src/editor/interface/i18n/I18n.d.ts +6 -0
  216. package/dist/src/editor/interface/shortcut/Shortcut.d.ts +13 -0
  217. package/dist/src/editor/interface/table/Colgroup.d.ts +4 -0
  218. package/dist/src/editor/interface/table/Table.d.ts +8 -0
  219. package/dist/src/editor/interface/table/Td.d.ts +35 -0
  220. package/dist/src/editor/interface/table/Tr.d.ts +10 -0
  221. package/dist/src/editor/utils/clipboard.d.ts +13 -0
  222. package/dist/src/editor/utils/element.d.ts +57 -0
  223. package/dist/src/editor/utils/hotkey.d.ts +1 -0
  224. package/dist/src/editor/utils/index.d.ts +34 -0
  225. package/dist/src/editor/utils/option.d.ts +3 -0
  226. package/dist/src/editor/utils/paragraph.d.ts +8 -0
  227. package/dist/src/editor/utils/print.d.ts +7 -0
  228. package/dist/src/editor/utils/ua.d.ts +4 -0
  229. package/package.json +8 -1
  230. package/.editorconfig +0 -9
  231. package/.eslintrc +0 -46
  232. package/.prettierrc +0 -8
  233. package/AGENTS.md +0 -186
  234. package/CLAUDE.md +0 -110
  235. package/cypress/e2e/control/checkbox.cy.ts +0 -46
  236. package/cypress/e2e/control/select.cy.ts +0 -56
  237. package/cypress/e2e/control/text.cy.ts +0 -43
  238. package/cypress/e2e/editor.cy.ts +0 -67
  239. package/cypress/e2e/menus/block.cy.ts +0 -38
  240. package/cypress/e2e/menus/checkbox.cy.ts +0 -33
  241. package/cypress/e2e/menus/codeblock.cy.ts +0 -34
  242. package/cypress/e2e/menus/date.cy.ts +0 -28
  243. package/cypress/e2e/menus/format.cy.ts +0 -40
  244. package/cypress/e2e/menus/hyperlink.cy.ts +0 -39
  245. package/cypress/e2e/menus/image.cy.ts +0 -25
  246. package/cypress/e2e/menus/latex.cy.ts +0 -34
  247. package/cypress/e2e/menus/pagebreak.cy.ts +0 -21
  248. package/cypress/e2e/menus/painter.cy.ts +0 -53
  249. package/cypress/e2e/menus/print.cy.ts +0 -25
  250. package/cypress/e2e/menus/row.cy.ts +0 -103
  251. package/cypress/e2e/menus/search.cy.ts +0 -112
  252. package/cypress/e2e/menus/separator.cy.ts +0 -32
  253. package/cypress/e2e/menus/table.cy.ts +0 -25
  254. package/cypress/e2e/menus/text.cy.ts +0 -304
  255. package/cypress/e2e/menus/title.cy.ts +0 -43
  256. package/cypress/e2e/menus/undoRedo.cy.ts +0 -49
  257. package/cypress/e2e/menus/watermark.cy.ts +0 -64
  258. package/cypress/fixtures/example.json +0 -3
  259. package/cypress/fixtures/test.png +0 -0
  260. package/cypress/global.d.ts +0 -13
  261. package/cypress/support/commands.ts +0 -5
  262. package/cypress/support/e2e.ts +0 -1
  263. package/cypress/tsconfig.json +0 -21
  264. package/cypress.config.ts +0 -10
  265. package/docs/.vitepress/config.ts +0 -191
  266. package/docs/.vitepress/theme/components/DeepWikiBadge.vue +0 -21
  267. package/docs/.vitepress/theme/components/ZreadBadge.vue +0 -21
  268. package/docs/.vitepress/theme/index.ts +0 -27
  269. package/docs/en/guide/api-common.md +0 -49
  270. package/docs/en/guide/api-instance.md +0 -34
  271. package/docs/en/guide/command-execute.md +0 -1167
  272. package/docs/en/guide/command-get.md +0 -355
  273. package/docs/en/guide/contextmenu-custom.md +0 -44
  274. package/docs/en/guide/contextmenu-internal.md +0 -61
  275. package/docs/en/guide/eventbus.md +0 -260
  276. package/docs/en/guide/i18n.md +0 -112
  277. package/docs/en/guide/listener.md +0 -126
  278. package/docs/en/guide/option.md +0 -214
  279. package/docs/en/guide/override.md +0 -57
  280. package/docs/en/guide/plugin-custom.md +0 -25
  281. package/docs/en/guide/plugin-internal.md +0 -125
  282. package/docs/en/guide/schema.md +0 -237
  283. package/docs/en/guide/shortcut-custom.md +0 -22
  284. package/docs/en/guide/shortcut-internal.md +0 -189
  285. package/docs/en/guide/start.md +0 -97
  286. package/docs/en/index.md +0 -43
  287. package/docs/guide/api-common.md +0 -49
  288. package/docs/guide/api-instance.md +0 -34
  289. package/docs/guide/command-execute.md +0 -1157
  290. package/docs/guide/command-get.md +0 -353
  291. package/docs/guide/contextmenu-custom.md +0 -44
  292. package/docs/guide/contextmenu-internal.md +0 -61
  293. package/docs/guide/eventbus.md +0 -260
  294. package/docs/guide/i18n.md +0 -111
  295. package/docs/guide/listener.md +0 -126
  296. package/docs/guide/option.md +0 -214
  297. package/docs/guide/override.md +0 -57
  298. package/docs/guide/plugin-custom.md +0 -25
  299. package/docs/guide/plugin-internal.md +0 -125
  300. package/docs/guide/schema.md +0 -237
  301. package/docs/guide/shortcut-custom.md +0 -22
  302. package/docs/guide/shortcut-internal.md +0 -189
  303. package/docs/guide/start.md +0 -97
  304. package/docs/index.md +0 -43
  305. package/docs/public/favicon.png +0 -0
  306. package/favicon.png +0 -0
  307. package/index.html +0 -435
  308. package/pnpm-lock.yaml +0 -4113
  309. package/scripts/release.js +0 -43
  310. package/scripts/verifyCommit.js +0 -19
  311. package/src/assets/images/alignment.svg +0 -1
  312. package/src/assets/images/arrow-left.svg +0 -1
  313. package/src/assets/images/arrow-right.svg +0 -1
  314. package/src/assets/images/block.svg +0 -1
  315. package/src/assets/images/bold.svg +0 -1
  316. package/src/assets/images/catalog.svg +0 -1
  317. package/src/assets/images/center.svg +0 -1
  318. package/src/assets/images/checkbox.svg +0 -1
  319. package/src/assets/images/close.svg +0 -1
  320. package/src/assets/images/codeblock.svg +0 -1
  321. package/src/assets/images/color.svg +0 -1
  322. package/src/assets/images/control.svg +0 -1
  323. package/src/assets/images/date.svg +0 -1
  324. package/src/assets/images/exit-fullscreen.svg +0 -1
  325. package/src/assets/images/format.svg +0 -1
  326. package/src/assets/images/highlight.svg +0 -1
  327. package/src/assets/images/hyperlink.svg +0 -1
  328. package/src/assets/images/image.svg +0 -1
  329. package/src/assets/images/italic.svg +0 -1
  330. package/src/assets/images/justify.svg +0 -7
  331. package/src/assets/images/latex.svg +0 -1
  332. package/src/assets/images/left.svg +0 -1
  333. package/src/assets/images/line-dash-dot-dot.svg +0 -1
  334. package/src/assets/images/line-dash-dot.svg +0 -1
  335. package/src/assets/images/line-dash-large-gap.svg +0 -1
  336. package/src/assets/images/line-dash-small-gap.svg +0 -1
  337. package/src/assets/images/line-dot.svg +0 -1
  338. package/src/assets/images/line-double.svg +0 -1
  339. package/src/assets/images/line-single.svg +0 -1
  340. package/src/assets/images/line-wavy.svg +0 -1
  341. package/src/assets/images/list.svg +0 -1
  342. package/src/assets/images/option.svg +0 -1
  343. package/src/assets/images/page-break.svg +0 -1
  344. package/src/assets/images/page-mode.svg +0 -1
  345. package/src/assets/images/page-scale-add.svg +0 -1
  346. package/src/assets/images/page-scale-minus.svg +0 -1
  347. package/src/assets/images/painter.svg +0 -1
  348. package/src/assets/images/paper-direction.svg +0 -1
  349. package/src/assets/images/paper-margin.svg +0 -1
  350. package/src/assets/images/paper-size.svg +0 -1
  351. package/src/assets/images/print.svg +0 -1
  352. package/src/assets/images/radio.svg +0 -4
  353. package/src/assets/images/redo.svg +0 -1
  354. package/src/assets/images/request-fullscreen.svg +0 -1
  355. package/src/assets/images/right.svg +0 -1
  356. package/src/assets/images/row-margin.svg +0 -1
  357. package/src/assets/images/search.svg +0 -1
  358. package/src/assets/images/separator.svg +0 -1
  359. package/src/assets/images/signature-undo.svg +0 -1
  360. package/src/assets/images/signature.svg +0 -1
  361. package/src/assets/images/size-add.svg +0 -1
  362. package/src/assets/images/size-minus.svg +0 -1
  363. package/src/assets/images/strikeout.svg +0 -1
  364. package/src/assets/images/subscript.svg +0 -1
  365. package/src/assets/images/superscript.svg +0 -1
  366. package/src/assets/images/table.svg +0 -1
  367. package/src/assets/images/title.svg +0 -1
  368. package/src/assets/images/trash.svg +0 -1
  369. package/src/assets/images/underline.svg +0 -1
  370. package/src/assets/images/undo.svg +0 -1
  371. package/src/assets/images/watermark.svg +0 -1
  372. package/src/assets/images/word-tool.svg +0 -1
  373. package/src/assets/snapshots/main_v0.2.1.png +0 -0
  374. package/src/assets/snapshots/main_v0.2.2.png +0 -0
  375. package/src/assets/snapshots/main_v0.3.0.png +0 -0
  376. package/src/assets/snapshots/main_v0.3.1.png +0 -0
  377. package/src/assets/snapshots/main_v0.5.0.png +0 -0
  378. package/src/assets/snapshots/main_v0.5.1.png +0 -0
  379. package/src/assets/snapshots/main_v0.6.0.png +0 -0
  380. package/src/assets/snapshots/main_v0.6.1.png +0 -0
  381. package/src/assets/snapshots/main_v0.7.0.png +0 -0
  382. package/src/assets/snapshots/main_v0.7.1.png +0 -0
  383. package/src/assets/snapshots/main_v0.7.2.png +0 -0
  384. package/src/assets/snapshots/main_v0.7.3.png +0 -0
  385. package/src/assets/snapshots/main_v0.7.4.png +0 -0
  386. package/src/assets/snapshots/main_v0.7.6.png +0 -0
  387. package/src/assets/snapshots/main_v0.7.7.png +0 -0
  388. package/src/assets/snapshots/main_v0.8.0.png +0 -0
  389. package/src/assets/snapshots/main_v0.8.5.png +0 -0
  390. package/src/assets/snapshots/main_v0.8.6.png +0 -0
  391. package/src/assets/snapshots/main_v0.8.7.png +0 -0
  392. package/src/assets/snapshots/main_v0.8.8.png +0 -0
  393. package/src/assets/snapshots/main_v0.9.0.png +0 -0
  394. package/src/assets/snapshots/main_v0.9.1.png +0 -0
  395. package/src/assets/snapshots/main_v0.9.2.png +0 -0
  396. package/src/assets/snapshots/main_v0.9.23.png +0 -0
  397. package/src/assets/snapshots/main_v0.9.28.png +0 -0
  398. package/src/assets/snapshots/main_v0.9.29.png +0 -0
  399. package/src/assets/snapshots/main_v0.9.3.png +0 -0
  400. package/src/assets/snapshots/main_v0.9.30.png +0 -0
  401. package/src/assets/snapshots/main_v0.9.32.png +0 -0
  402. package/src/assets/snapshots/main_v0.9.35.png +0 -0
  403. package/src/assets/snapshots/main_v0.9.4.png +0 -0
  404. package/src/assets/snapshots/main_v0.9.5.png +0 -0
  405. package/src/assets/snapshots/main_v0.9.6.png +0 -0
  406. package/src/assets/snapshots/main_v0.9.8.png +0 -0
  407. package/src/components/dialog/Dialog.ts +0 -171
  408. package/src/components/dialog/dialog.css +0 -131
  409. package/src/components/signature/Signature.ts +0 -340
  410. package/src/components/signature/signature.css +0 -132
  411. package/src/editor/assets/css/block/block.css +0 -21
  412. package/src/editor/assets/css/contextmenu/contextmenu.css +0 -196
  413. package/src/editor/assets/css/control/calculator.css +0 -85
  414. package/src/editor/assets/css/control/select.css +0 -44
  415. package/src/editor/assets/css/date/datePicker.css +0 -233
  416. package/src/editor/assets/css/hyperlink/hyperlink.css +0 -26
  417. package/src/editor/assets/css/index.css +0 -78
  418. package/src/editor/assets/css/previewer/previewer.css +0 -122
  419. package/src/editor/assets/css/resizer/resizer.css +0 -74
  420. package/src/editor/assets/css/table/table.css +0 -155
  421. package/src/editor/assets/css/zone/zone.css +0 -61
  422. package/src/editor/assets/images/close.svg +0 -1
  423. package/src/editor/assets/images/delete-col.svg +0 -1
  424. package/src/editor/assets/images/delete-row-col.svg +0 -1
  425. package/src/editor/assets/images/delete-row.svg +0 -1
  426. package/src/editor/assets/images/delete-table.svg +0 -1
  427. package/src/editor/assets/images/image-change.svg +0 -1
  428. package/src/editor/assets/images/image-download.svg +0 -1
  429. package/src/editor/assets/images/image-next.svg +0 -1
  430. package/src/editor/assets/images/image-pre.svg +0 -1
  431. package/src/editor/assets/images/image.svg +0 -1
  432. package/src/editor/assets/images/insert-bottom-row.svg +0 -1
  433. package/src/editor/assets/images/insert-left-col.svg +0 -1
  434. package/src/editor/assets/images/insert-right-col.svg +0 -1
  435. package/src/editor/assets/images/insert-row-col.svg +0 -1
  436. package/src/editor/assets/images/insert-top-row.svg +0 -1
  437. package/src/editor/assets/images/merge-cancel-cell.svg +0 -1
  438. package/src/editor/assets/images/merge-cell.svg +0 -1
  439. package/src/editor/assets/images/original-size.svg +0 -1
  440. package/src/editor/assets/images/print.svg +0 -1
  441. package/src/editor/assets/images/rotate.svg +0 -1
  442. package/src/editor/assets/images/submenu-dropdown.svg +0 -1
  443. package/src/editor/assets/images/table-border-all.svg +0 -1
  444. package/src/editor/assets/images/table-border-dash.svg +0 -1
  445. package/src/editor/assets/images/table-border-empty.svg +0 -1
  446. package/src/editor/assets/images/table-border-external.svg +0 -1
  447. package/src/editor/assets/images/table-border-internal.svg +0 -1
  448. package/src/editor/assets/images/table-border-td-back.svg +0 -1
  449. package/src/editor/assets/images/table-border-td-bottom.svg +0 -1
  450. package/src/editor/assets/images/table-border-td-forward.svg +0 -1
  451. package/src/editor/assets/images/table-border-td-left.svg +0 -1
  452. package/src/editor/assets/images/table-border-td-right.svg +0 -1
  453. package/src/editor/assets/images/table-border-td-top.svg +0 -1
  454. package/src/editor/assets/images/table-border-td.svg +0 -1
  455. package/src/editor/assets/images/vertical-align-bottom.svg +0 -1
  456. package/src/editor/assets/images/vertical-align-middle.svg +0 -1
  457. package/src/editor/assets/images/vertical-align-top.svg +0 -1
  458. package/src/editor/assets/images/vertical-align.svg +0 -1
  459. package/src/editor/assets/images/zoom-in.svg +0 -1
  460. package/src/editor/assets/images/zoom-out.svg +0 -1
  461. package/src/editor/core/actuator/Actuator.ts +0 -21
  462. package/src/editor/core/actuator/handlers/positionContextChange.ts +0 -13
  463. package/src/editor/core/command/Command.ts +0 -312
  464. package/src/editor/core/command/CommandAdapt.ts +0 -2733
  465. package/src/editor/core/contextmenu/ContextMenu.ts +0 -363
  466. package/src/editor/core/contextmenu/menus/controlMenus.ts +0 -25
  467. package/src/editor/core/contextmenu/menus/globalMenus.ts +0 -66
  468. package/src/editor/core/contextmenu/menus/hyperlinkMenus.ts +0 -58
  469. package/src/editor/core/contextmenu/menus/imageMenus.ts +0 -134
  470. package/src/editor/core/contextmenu/menus/tableMenus.ts +0 -331
  471. package/src/editor/core/cursor/Cursor.ts +0 -248
  472. package/src/editor/core/cursor/CursorAgent.ts +0 -75
  473. package/src/editor/core/draw/Draw.ts +0 -2934
  474. package/src/editor/core/draw/control/Control.ts +0 -1767
  475. package/src/editor/core/draw/control/checkbox/CheckboxControl.ts +0 -154
  476. package/src/editor/core/draw/control/date/DateControl.ts +0 -363
  477. package/src/editor/core/draw/control/interactive/ControlSearch.ts +0 -214
  478. package/src/editor/core/draw/control/number/Calculator.ts +0 -183
  479. package/src/editor/core/draw/control/number/NumberControl.ts +0 -183
  480. package/src/editor/core/draw/control/radio/RadioControl.ts +0 -68
  481. package/src/editor/core/draw/control/richtext/Border.ts +0 -52
  482. package/src/editor/core/draw/control/select/SelectControl.ts +0 -567
  483. package/src/editor/core/draw/control/text/TextControl.ts +0 -280
  484. package/src/editor/core/draw/frame/Background.ts +0 -117
  485. package/src/editor/core/draw/frame/Badge.ts +0 -88
  486. package/src/editor/core/draw/frame/Footer.ts +0 -155
  487. package/src/editor/core/draw/frame/Header.ts +0 -158
  488. package/src/editor/core/draw/frame/LineNumber.ts +0 -43
  489. package/src/editor/core/draw/frame/Margin.ts +0 -53
  490. package/src/editor/core/draw/frame/PageBorder.ts +0 -47
  491. package/src/editor/core/draw/frame/PageNumber.ts +0 -88
  492. package/src/editor/core/draw/frame/Placeholder.ts +0 -114
  493. package/src/editor/core/draw/frame/Watermark.ts +0 -188
  494. package/src/editor/core/draw/graffiti/Graffiti.ts +0 -125
  495. package/src/editor/core/draw/interactive/Area.ts +0 -312
  496. package/src/editor/core/draw/interactive/Group.ts +0 -198
  497. package/src/editor/core/draw/interactive/Search.ts +0 -527
  498. package/src/editor/core/draw/particle/CheckboxParticle.ts +0 -111
  499. package/src/editor/core/draw/particle/HyperlinkParticle.ts +0 -86
  500. package/src/editor/core/draw/particle/ImageParticle.ts +0 -280
  501. package/src/editor/core/draw/particle/LabelParticle.ts +0 -79
  502. package/src/editor/core/draw/particle/LineBreakParticle.ts +0 -55
  503. package/src/editor/core/draw/particle/ListParticle.ts +0 -255
  504. package/src/editor/core/draw/particle/PageBreakParticle.ts +0 -54
  505. package/src/editor/core/draw/particle/RadioParticle.ts +0 -99
  506. package/src/editor/core/draw/particle/SeparatorParticle.ts +0 -37
  507. package/src/editor/core/draw/particle/SubscriptParticle.ts +0 -23
  508. package/src/editor/core/draw/particle/SuperscriptParticle.ts +0 -23
  509. package/src/editor/core/draw/particle/TextParticle.ts +0 -174
  510. package/src/editor/core/draw/particle/WhiteSpaceParticle.ts +0 -32
  511. package/src/editor/core/draw/particle/block/BlockParticle.ts +0 -76
  512. package/src/editor/core/draw/particle/block/modules/BaseBlock.ts +0 -280
  513. package/src/editor/core/draw/particle/block/modules/IFrameBlock.ts +0 -47
  514. package/src/editor/core/draw/particle/block/modules/VideoBlock.ts +0 -61
  515. package/src/editor/core/draw/particle/date/DateParticle.ts +0 -111
  516. package/src/editor/core/draw/particle/date/DatePicker.ts +0 -577
  517. package/src/editor/core/draw/particle/latex/LaTexParticle.ts +0 -43
  518. package/src/editor/core/draw/particle/latex/utils/LaTexUtils.ts +0 -1196
  519. package/src/editor/core/draw/particle/latex/utils/hershey.ts +0 -1632
  520. package/src/editor/core/draw/particle/latex/utils/symbols.ts +0 -318
  521. package/src/editor/core/draw/particle/previewer/Previewer.ts +0 -582
  522. package/src/editor/core/draw/particle/table/TableOperate.ts +0 -988
  523. package/src/editor/core/draw/particle/table/TableParticle.ts +0 -558
  524. package/src/editor/core/draw/particle/table/TableTool.ts +0 -551
  525. package/src/editor/core/draw/richtext/AbstractRichText.ts +0 -59
  526. package/src/editor/core/draw/richtext/Highlight.ts +0 -24
  527. package/src/editor/core/draw/richtext/Strikeout.ts +0 -28
  528. package/src/editor/core/draw/richtext/Underline.ts +0 -106
  529. package/src/editor/core/event/CanvasEvent.ts +0 -215
  530. package/src/editor/core/event/GlobalEvent.ts +0 -173
  531. package/src/editor/core/event/eventbus/EventBus.ts +0 -50
  532. package/src/editor/core/event/handlers/click.ts +0 -234
  533. package/src/editor/core/event/handlers/composition.ts +0 -45
  534. package/src/editor/core/event/handlers/copy.ts +0 -72
  535. package/src/editor/core/event/handlers/cut.ts +0 -47
  536. package/src/editor/core/event/handlers/drag.ts +0 -66
  537. package/src/editor/core/event/handlers/drop.ts +0 -28
  538. package/src/editor/core/event/handlers/input.ts +0 -129
  539. package/src/editor/core/event/handlers/keydown/backspace.ts +0 -161
  540. package/src/editor/core/event/handlers/keydown/delete.ts +0 -119
  541. package/src/editor/core/event/handlers/keydown/end.ts +0 -69
  542. package/src/editor/core/event/handlers/keydown/enter.ts +0 -126
  543. package/src/editor/core/event/handlers/keydown/home.ts +0 -69
  544. package/src/editor/core/event/handlers/keydown/index.ts +0 -85
  545. package/src/editor/core/event/handlers/keydown/left.ts +0 -162
  546. package/src/editor/core/event/handlers/keydown/right.ts +0 -178
  547. package/src/editor/core/event/handlers/keydown/tab.ts +0 -41
  548. package/src/editor/core/event/handlers/keydown/updown.ts +0 -342
  549. package/src/editor/core/event/handlers/mousedown.ts +0 -262
  550. package/src/editor/core/event/handlers/mouseleave.ts +0 -14
  551. package/src/editor/core/event/handlers/mousemove.ts +0 -133
  552. package/src/editor/core/event/handlers/mouseup.ts +0 -341
  553. package/src/editor/core/event/handlers/paste.ts +0 -231
  554. package/src/editor/core/history/HistoryManager.ts +0 -61
  555. package/src/editor/core/i18n/I18n.ts +0 -51
  556. package/src/editor/core/i18n/lang/en.json +0 -92
  557. package/src/editor/core/i18n/lang/zh-CN.json +0 -92
  558. package/src/editor/core/listener/Listener.ts +0 -41
  559. package/src/editor/core/observer/ImageObserver.ts +0 -19
  560. package/src/editor/core/observer/MouseObserver.ts +0 -56
  561. package/src/editor/core/observer/ScrollObserver.ts +0 -88
  562. package/src/editor/core/observer/SelectionObserver.ts +0 -143
  563. package/src/editor/core/override/Override.ts +0 -14
  564. package/src/editor/core/plugin/Plugin.ts +0 -17
  565. package/src/editor/core/position/Position.ts +0 -870
  566. package/src/editor/core/range/RangeManager.ts +0 -723
  567. package/src/editor/core/register/Register.ts +0 -28
  568. package/src/editor/core/shortcut/Shortcut.ts +0 -80
  569. package/src/editor/core/shortcut/keys/listKeys.ts +0 -22
  570. package/src/editor/core/shortcut/keys/richtextKeys.ts +0 -102
  571. package/src/editor/core/shortcut/keys/titleKeys.ts +0 -62
  572. package/src/editor/core/worker/WorkerManager.ts +0 -96
  573. package/src/editor/core/worker/works/catalog.ts +0 -189
  574. package/src/editor/core/worker/works/group.ts +0 -34
  575. package/src/editor/core/worker/works/value.ts +0 -32
  576. package/src/editor/core/worker/works/wordCount.ts +0 -132
  577. package/src/editor/core/zone/Zone.ts +0 -183
  578. package/src/editor/core/zone/ZoneTip.ts +0 -108
  579. package/src/editor/dataset/constant/Background.ts +0 -10
  580. package/src/editor/dataset/constant/Badge.ts +0 -6
  581. package/src/editor/dataset/constant/Checkbox.ts +0 -12
  582. package/src/editor/dataset/constant/Common.ts +0 -44
  583. package/src/editor/dataset/constant/ContextMenu.ts +0 -61
  584. package/src/editor/dataset/constant/Control.ts +0 -14
  585. package/src/editor/dataset/constant/Cursor.ts +0 -11
  586. package/src/editor/dataset/constant/Editor.ts +0 -19
  587. package/src/editor/dataset/constant/Element.ts +0 -173
  588. package/src/editor/dataset/constant/Footer.ts +0 -10
  589. package/src/editor/dataset/constant/Graffiti.ts +0 -6
  590. package/src/editor/dataset/constant/Group.ts +0 -10
  591. package/src/editor/dataset/constant/Header.ts +0 -10
  592. package/src/editor/dataset/constant/ImgCaption.ts +0 -8
  593. package/src/editor/dataset/constant/Label.ts +0 -8
  594. package/src/editor/dataset/constant/LineBreak.ts +0 -7
  595. package/src/editor/dataset/constant/LineNumber.ts +0 -11
  596. package/src/editor/dataset/constant/List.ts +0 -26
  597. package/src/editor/dataset/constant/PageBorder.ts +0 -8
  598. package/src/editor/dataset/constant/PageBreak.ts +0 -7
  599. package/src/editor/dataset/constant/PageNumber.ts +0 -22
  600. package/src/editor/dataset/constant/Placeholder.ts +0 -9
  601. package/src/editor/dataset/constant/Radio.ts +0 -12
  602. package/src/editor/dataset/constant/Regular.ts +0 -23
  603. package/src/editor/dataset/constant/Separator.ts +0 -6
  604. package/src/editor/dataset/constant/Shortcut.ts +0 -3
  605. package/src/editor/dataset/constant/Table.ts +0 -9
  606. package/src/editor/dataset/constant/Title.ts +0 -38
  607. package/src/editor/dataset/constant/Watermark.ts +0 -17
  608. package/src/editor/dataset/constant/WhiteSpace.ts +0 -7
  609. package/src/editor/dataset/constant/Zone.ts +0 -5
  610. package/src/editor/dataset/enum/Area.ts +0 -5
  611. package/src/editor/dataset/enum/Background.ts +0 -11
  612. package/src/editor/dataset/enum/Block.ts +0 -4
  613. package/src/editor/dataset/enum/Common.ts +0 -30
  614. package/src/editor/dataset/enum/Control.ts +0 -39
  615. package/src/editor/dataset/enum/Editor.ts +0 -51
  616. package/src/editor/dataset/enum/Element.ts +0 -21
  617. package/src/editor/dataset/enum/ElementStyle.ts +0 -12
  618. package/src/editor/dataset/enum/Event.ts +0 -5
  619. package/src/editor/dataset/enum/KeyMap.ts +0 -85
  620. package/src/editor/dataset/enum/LineNumber.ts +0 -4
  621. package/src/editor/dataset/enum/List.ts +0 -23
  622. package/src/editor/dataset/enum/Observer.ts +0 -6
  623. package/src/editor/dataset/enum/Row.ts +0 -7
  624. package/src/editor/dataset/enum/Text.ts +0 -13
  625. package/src/editor/dataset/enum/Title.ts +0 -8
  626. package/src/editor/dataset/enum/VerticalAlign.ts +0 -5
  627. package/src/editor/dataset/enum/Watermark.ts +0 -4
  628. package/src/editor/dataset/enum/table/Table.ts +0 -19
  629. package/src/editor/dataset/enum/table/TableTool.ts +0 -4
  630. package/src/editor/index.ts +0 -241
  631. package/src/editor/interface/Area.ts +0 -68
  632. package/src/editor/interface/Background.ts +0 -9
  633. package/src/editor/interface/Badge.ts +0 -17
  634. package/src/editor/interface/Block.ts +0 -18
  635. package/src/editor/interface/Catalog.ts +0 -11
  636. package/src/editor/interface/Checkbox.ts +0 -17
  637. package/src/editor/interface/Command.ts +0 -3
  638. package/src/editor/interface/Common.ts +0 -43
  639. package/src/editor/interface/Control.ts +0 -250
  640. package/src/editor/interface/Cursor.ts +0 -7
  641. package/src/editor/interface/Draw.ts +0 -86
  642. package/src/editor/interface/Editor.ts +0 -172
  643. package/src/editor/interface/Element.ts +0 -273
  644. package/src/editor/interface/Event.ts +0 -27
  645. package/src/editor/interface/EventBus.ts +0 -46
  646. package/src/editor/interface/Footer.ts +0 -9
  647. package/src/editor/interface/Graffiti.ts +0 -15
  648. package/src/editor/interface/Group.ts +0 -8
  649. package/src/editor/interface/Header.ts +0 -9
  650. package/src/editor/interface/Label.ts +0 -8
  651. package/src/editor/interface/LineBreak.ts +0 -5
  652. package/src/editor/interface/LineNumber.ts +0 -10
  653. package/src/editor/interface/Listener.ts +0 -88
  654. package/src/editor/interface/PageBorder.ts +0 -8
  655. package/src/editor/interface/PageBreak.ts +0 -5
  656. package/src/editor/interface/PageNumber.ts +0 -16
  657. package/src/editor/interface/Placeholder.ts +0 -7
  658. package/src/editor/interface/Plugin.ts +0 -8
  659. package/src/editor/interface/Position.ts +0 -113
  660. package/src/editor/interface/Previewer.ts +0 -15
  661. package/src/editor/interface/Radio.ts +0 -17
  662. package/src/editor/interface/Range.ts +0 -61
  663. package/src/editor/interface/Row.ts +0 -25
  664. package/src/editor/interface/Search.ts +0 -36
  665. package/src/editor/interface/Separator.ts +0 -4
  666. package/src/editor/interface/Text.ts +0 -15
  667. package/src/editor/interface/Title.ts +0 -32
  668. package/src/editor/interface/Watermark.ts +0 -16
  669. package/src/editor/interface/WhiteSpace.ts +0 -5
  670. package/src/editor/interface/contextmenu/ContextMenu.ts +0 -76
  671. package/src/editor/interface/i18n/I18n.ts +0 -7
  672. package/src/editor/interface/shortcut/Shortcut.ts +0 -14
  673. package/src/editor/interface/table/Colgroup.ts +0 -4
  674. package/src/editor/interface/table/Table.ts +0 -9
  675. package/src/editor/interface/table/Td.ts +0 -36
  676. package/src/editor/interface/table/Tr.ts +0 -11
  677. package/src/editor/types/index.d.ts +0 -5
  678. package/src/editor/utils/clipboard.ts +0 -94
  679. package/src/editor/utils/element.ts +0 -1877
  680. package/src/editor/utils/hotkey.ts +0 -5
  681. package/src/editor/utils/index.ts +0 -445
  682. package/src/editor/utils/option.ts +0 -253
  683. package/src/editor/utils/paragraph.ts +0 -28
  684. package/src/editor/utils/print.ts +0 -99
  685. package/src/editor/utils/ua.ts +0 -13
  686. package/src/main.ts +0 -2053
  687. package/src/mock.ts +0 -611
  688. package/src/plugins/copy/index.ts +0 -30
  689. package/src/plugins/markdown/index.ts +0 -118
  690. package/src/style.css +0 -1079
  691. package/src/utils/index.ts +0 -45
  692. package/src/utils/prism.ts +0 -89
  693. package/src/vite-env.d.ts +0 -1
  694. package/tsconfig.json +0 -25
  695. package/vite.config.ts +0 -46
@@ -1,723 +0,0 @@
1
- import { ElementType } from '../..'
2
- import { ZERO } from '../../dataset/constant/Common'
3
- import { TEXTLIKE_ELEMENT_TYPE } from '../../dataset/constant/Element'
4
- import { ControlComponent } from '../../dataset/enum/Control'
5
- import { EditorContext } from '../../dataset/enum/Editor'
6
- import { IControlContext } from '../../interface/Control'
7
- import { IEditorOption } from '../../interface/Editor'
8
- import { IElement } from '../../interface/Element'
9
- import { EventBusMap } from '../../interface/EventBus'
10
- import { IRangeStyle } from '../../interface/Listener'
11
- import {
12
- IRange,
13
- IRangeElementStyle,
14
- IRangeParagraphInfo,
15
- RangeRowArray,
16
- RangeRowMap
17
- } from '../../interface/Range'
18
- import { getAnchorElement } from '../../utils/element'
19
- import { Draw } from '../draw/Draw'
20
- import { EventBus } from '../event/eventbus/EventBus'
21
- import { HistoryManager } from '../history/HistoryManager'
22
- import { Listener } from '../listener/Listener'
23
- import { Position } from '../position/Position'
24
-
25
- export class RangeManager {
26
- private draw: Draw
27
- private options: Required<IEditorOption>
28
- private range: IRange
29
- private listener: Listener
30
- private eventBus: EventBus<EventBusMap>
31
- private position: Position
32
- private historyManager: HistoryManager
33
- private defaultStyle: IRangeElementStyle | null
34
-
35
- constructor(draw: Draw) {
36
- this.draw = draw
37
- this.options = draw.getOptions()
38
- this.listener = draw.getListener()
39
- this.eventBus = draw.getEventBus()
40
- this.position = draw.getPosition()
41
- this.historyManager = draw.getHistoryManager()
42
- this.range = {
43
- startIndex: -1,
44
- endIndex: -1
45
- }
46
- this.defaultStyle = null
47
- }
48
-
49
- public getRange(): IRange {
50
- return this.range
51
- }
52
-
53
- public clearRange() {
54
- this.setRange(-1, -1)
55
- }
56
-
57
- public setDefaultStyle(style: IRangeElementStyle | null) {
58
- if (!style) {
59
- this.defaultStyle = null
60
- } else {
61
- this.defaultStyle = {
62
- ...this.defaultStyle,
63
- ...style
64
- }
65
- }
66
- }
67
-
68
- public getDefaultStyle(): IRangeElementStyle | null {
69
- return this.defaultStyle
70
- }
71
-
72
- public getRangeAnchorStyle(
73
- elementList: IElement[],
74
- anchorIndex: number
75
- ): IElement | null {
76
- const anchorElement = getAnchorElement(elementList, anchorIndex)
77
- if (!anchorElement) return null
78
- return {
79
- ...anchorElement,
80
- ...this.defaultStyle
81
- }
82
- }
83
-
84
- public getIsRangeChange(
85
- startIndex: number,
86
- endIndex: number,
87
- tableId?: string,
88
- startTdIndex?: number,
89
- endTdIndex?: number,
90
- startTrIndex?: number,
91
- endTrIndex?: number
92
- ): boolean {
93
- return (
94
- this.range.startIndex !== startIndex ||
95
- this.range.endIndex !== endIndex ||
96
- this.range.tableId !== tableId ||
97
- this.range.startTdIndex !== startTdIndex ||
98
- this.range.endTdIndex !== endTdIndex ||
99
- this.range.startTrIndex !== startTrIndex ||
100
- this.range.endTrIndex !== endTrIndex
101
- )
102
- }
103
-
104
- public getIsCollapsed(): boolean {
105
- const { startIndex, endIndex } = this.range
106
- return startIndex === endIndex
107
- }
108
-
109
- public getIsSelection(): boolean {
110
- const { startIndex, endIndex } = this.range
111
- if (!~startIndex && !~endIndex) return false
112
- return startIndex !== endIndex
113
- }
114
-
115
- public getSelection(): IElement[] | null {
116
- const { startIndex, endIndex } = this.range
117
- if (startIndex === endIndex) return null
118
- const elementList = this.draw.getElementList()
119
- return elementList.slice(
120
- elementList[startIndex]?.value === ZERO ? startIndex : startIndex + 1,
121
- endIndex + 1
122
- )
123
- }
124
-
125
- public getSelectionElementList(): IElement[] | null {
126
- if (this.range.isCrossRowCol) {
127
- const rowCol = this.draw.getTableParticle().getRangeRowCol()
128
- if (!rowCol) return null
129
- const elementList: IElement[] = []
130
- for (let r = 0; r < rowCol.length; r++) {
131
- const row = rowCol[r]
132
- for (let c = 0; c < row.length; c++) {
133
- const col = row[c]
134
- elementList.push(...col.value)
135
- }
136
- }
137
- return elementList
138
- }
139
- return this.getSelection()
140
- }
141
-
142
- public getTextLikeSelection(): IElement[] | null {
143
- const selection = this.getSelection()
144
- if (!selection) return null
145
- return selection.filter(
146
- s => !s.type || TEXTLIKE_ELEMENT_TYPE.includes(s.type)
147
- )
148
- }
149
-
150
- public getTextLikeSelectionElementList(): IElement[] | null {
151
- const selection = this.getSelectionElementList()
152
- if (!selection) return null
153
- return selection.filter(
154
- s => !s.type || TEXTLIKE_ELEMENT_TYPE.includes(s.type)
155
- )
156
- }
157
-
158
- // 获取光标所选位置行信息
159
- public getRangeRow(): RangeRowMap | null {
160
- const { startIndex, endIndex } = this.range
161
- if (!~startIndex && !~endIndex) return null
162
- const positionList = this.position.getPositionList()
163
- const rangeRow: RangeRowMap = new Map()
164
- for (let p = startIndex; p < endIndex + 1; p++) {
165
- const { pageNo, rowNo } = positionList[p]
166
- const rowSet = rangeRow.get(pageNo)
167
- if (!rowSet) {
168
- rangeRow.set(pageNo, new Set([rowNo]))
169
- } else {
170
- if (!rowSet.has(rowNo)) {
171
- rowSet.add(rowNo)
172
- }
173
- }
174
- }
175
- return rangeRow
176
- }
177
-
178
- // 获取光标所选位置元素列表
179
- public getRangeRowElementList(): IElement[] | null {
180
- const { startIndex, endIndex, isCrossRowCol } = this.range
181
- if (!~startIndex && !~endIndex) return null
182
- if (isCrossRowCol) {
183
- return this.getSelectionElementList()
184
- }
185
- // 选区行信息
186
- const rangeRow = this.getRangeRow()
187
- if (!rangeRow) return null
188
- const positionList = this.position.getPositionList()
189
- const elementList = this.draw.getElementList()
190
- // 当前选区所在行
191
- const rowElementList: IElement[] = []
192
- for (let p = 0; p < positionList.length; p++) {
193
- const position = positionList[p]
194
- const rowSet = rangeRow.get(position.pageNo)
195
- if (!rowSet) continue
196
- if (rowSet.has(position.rowNo)) {
197
- rowElementList.push(elementList[p])
198
- }
199
- }
200
- return rowElementList
201
- }
202
-
203
- // 获取选取段落信息
204
- public getRangeParagraph(): RangeRowArray | null {
205
- const { startIndex, endIndex } = this.range
206
- if (!~startIndex && !~endIndex) return null
207
- const positionList = this.position.getPositionList()
208
- const elementList = this.draw.getElementList()
209
- const rangeRow: RangeRowArray = new Map()
210
- // 向上查找
211
- let start = startIndex
212
- while (start >= 0) {
213
- const { pageNo, rowNo } = positionList[start]
214
- let rowArray = rangeRow.get(pageNo)
215
- if (!rowArray) {
216
- rowArray = []
217
- rangeRow.set(pageNo, rowArray)
218
- }
219
- if (!rowArray.includes(rowNo)) {
220
- rowArray.unshift(rowNo)
221
- }
222
- const element = elementList[start]
223
- const preElement = elementList[start - 1]
224
- if (
225
- (element.value === ZERO && !element.listWrap) ||
226
- element.listId !== preElement?.listId ||
227
- element.titleId !== preElement?.titleId
228
- ) {
229
- break
230
- }
231
- start--
232
- }
233
- const isCollapsed = startIndex === endIndex
234
- // 中间选择
235
- if (!isCollapsed) {
236
- let middle = startIndex + 1
237
- while (middle < endIndex) {
238
- const { pageNo, rowNo } = positionList[middle]
239
- let rowArray = rangeRow.get(pageNo)
240
- if (!rowArray) {
241
- rowArray = []
242
- rangeRow.set(pageNo, rowArray)
243
- }
244
- if (!rowArray.includes(rowNo)) {
245
- rowArray.push(rowNo)
246
- }
247
- middle++
248
- }
249
- }
250
- // 向下查找
251
- let end = endIndex
252
- // 闭合选区&&首字符为换行符时继续向下查找
253
- if (isCollapsed && elementList[startIndex].value === ZERO) {
254
- end += 1
255
- }
256
- while (end < positionList.length) {
257
- const element = elementList[end]
258
- const nextElement = elementList[end + 1]
259
- if (
260
- (element.value === ZERO && !element.listWrap) ||
261
- element.listId !== nextElement?.listId ||
262
- element.titleId !== nextElement?.titleId
263
- ) {
264
- break
265
- }
266
- const { pageNo, rowNo } = positionList[end]
267
- let rowArray = rangeRow.get(pageNo)
268
- if (!rowArray) {
269
- rowArray = []
270
- rangeRow.set(pageNo, rowArray)
271
- }
272
- if (!rowArray.includes(rowNo)) {
273
- rowArray.push(rowNo)
274
- }
275
- end++
276
- }
277
- return rangeRow
278
- }
279
-
280
- // 获取选区段落信息
281
- public getRangeParagraphInfo(): IRangeParagraphInfo | null {
282
- const { startIndex, endIndex } = this.range
283
- if (!~startIndex && !~endIndex) return null
284
- /// 起始元素位置
285
- let startPositionIndex = -1
286
- // 需要改变的元素列表
287
- const rangeElementList: IElement[] = []
288
- // 选区行信息
289
- const rangeRow = this.getRangeParagraph()
290
- if (!rangeRow) return null
291
- const elementList = this.draw.getElementList()
292
- const positionList = this.position.getPositionList()
293
- for (let p = 0; p < positionList.length; p++) {
294
- const position = positionList[p]
295
- const rowArray = rangeRow.get(position.pageNo)
296
- if (!rowArray) continue
297
- if (rowArray.includes(position.rowNo)) {
298
- if (!~startPositionIndex) {
299
- startPositionIndex = position.index
300
- }
301
- rangeElementList.push(elementList[p])
302
- }
303
- }
304
- if (!rangeElementList.length) return null
305
- return {
306
- elementList: rangeElementList,
307
- startIndex: startPositionIndex
308
- }
309
- }
310
-
311
- // 获取选区段落元素列表
312
- public getRangeParagraphElementList(): IElement[] | null {
313
- return this.getRangeParagraphInfo()?.elementList || null
314
- }
315
-
316
- // 获取选区表格
317
- public getRangeTableElement(): IElement | null {
318
- const positionContext = this.position.getPositionContext()
319
- if (!positionContext.isTable) return null
320
- const originalElementList = this.draw.getOriginalElementList()
321
- return originalElementList[positionContext.index!]
322
- }
323
-
324
- public getIsSelectAll() {
325
- const elementList = this.draw.getElementList()
326
- const { startIndex, endIndex } = this.range
327
- return (
328
- startIndex === 0 &&
329
- elementList.length - 1 === endIndex &&
330
- !this.position.getPositionContext().isTable
331
- )
332
- }
333
-
334
- public getIsPointInRange(x: number, y: number): boolean {
335
- const { startIndex, endIndex } = this.range
336
- const positionList = this.position.getPositionList()
337
- for (let p = startIndex + 1; p <= endIndex; p++) {
338
- const position = positionList[p]
339
- if (!position) break
340
- const {
341
- coordinate: { leftTop, rightBottom }
342
- } = positionList[p]
343
- if (
344
- x >= leftTop[0] &&
345
- x <= rightBottom[0] &&
346
- y >= leftTop[1] &&
347
- y <= rightBottom[1]
348
- ) {
349
- return true
350
- }
351
- }
352
- return false
353
- }
354
-
355
- public getKeywordRangeList(payload: string): IRange[] {
356
- const searchMatchList = this.draw
357
- .getSearch()
358
- .getMatchList(payload, this.draw.getOriginalElementList())
359
- const searchRangeMap: Map<string, IRange> = new Map()
360
- for (const searchMatch of searchMatchList) {
361
- const searchRange = searchRangeMap.get(searchMatch.groupId)
362
- if (searchRange) {
363
- searchRange.endIndex += 1
364
- } else {
365
- const { type, groupId, tableId, index, tdIndex, trIndex } = searchMatch
366
- const range: IRange = {
367
- startIndex: index,
368
- endIndex: index
369
- }
370
- if (type === EditorContext.TABLE) {
371
- range.tableId = tableId
372
- range.startTdIndex = tdIndex
373
- range.endTdIndex = tdIndex
374
- range.startTrIndex = trIndex
375
- range.endTrIndex = trIndex
376
- }
377
- searchRangeMap.set(groupId, range)
378
- }
379
- }
380
- const rangeList: IRange[] = []
381
- searchRangeMap.forEach(searchRange => {
382
- rangeList.push(searchRange)
383
- })
384
- return rangeList
385
- }
386
-
387
- public getIsCanInput(): boolean {
388
- const { startIndex, endIndex } = this.getRange()
389
- if (!~startIndex && !~endIndex) return false
390
- const elementList = this.draw.getElementList()
391
- const startElement = elementList[startIndex]
392
- if (startIndex === endIndex) {
393
- return (
394
- (startElement.controlComponent !== ControlComponent.PRE_TEXT ||
395
- elementList[startIndex + 1]?.controlComponent !==
396
- ControlComponent.PRE_TEXT) &&
397
- startElement.controlComponent !== ControlComponent.POST_TEXT
398
- )
399
- }
400
- const endElement = elementList[endIndex]
401
- // 选区前后不是控件 || 选区前不是控件或是后缀&&选区后不是控件或是后缀 || 选区在控件内
402
- return (
403
- (!startElement.controlId && !endElement.controlId) ||
404
- ((!startElement.controlId ||
405
- startElement.controlComponent === ControlComponent.POSTFIX) &&
406
- (!endElement.controlId ||
407
- endElement.controlComponent === ControlComponent.POSTFIX)) ||
408
- (!!startElement.controlId &&
409
- endElement.controlId === startElement.controlId &&
410
- endElement.controlComponent !== ControlComponent.PRE_TEXT &&
411
- endElement.controlComponent !== ControlComponent.POST_TEXT &&
412
- endElement.controlComponent !== ControlComponent.POSTFIX)
413
- )
414
- }
415
-
416
- public setRange(
417
- startIndex: number,
418
- endIndex: number,
419
- tableId?: string,
420
- startTdIndex?: number,
421
- endTdIndex?: number,
422
- startTrIndex?: number,
423
- endTrIndex?: number
424
- ) {
425
- // 判断光标是否改变
426
- const isChange = this.getIsRangeChange(
427
- startIndex,
428
- endIndex,
429
- tableId,
430
- startTdIndex,
431
- endTdIndex,
432
- startTrIndex,
433
- endTrIndex
434
- )
435
- if (isChange) {
436
- this.range.startIndex = startIndex
437
- this.range.endIndex = endIndex
438
- this.range.tableId = tableId
439
- this.range.startTdIndex = startTdIndex
440
- this.range.endTdIndex = endTdIndex
441
- this.range.startTrIndex = startTrIndex
442
- this.range.endTrIndex = endTrIndex
443
- this.range.isCrossRowCol = !!(
444
- startTdIndex ||
445
- endTdIndex ||
446
- startTrIndex ||
447
- endTrIndex
448
- )
449
- this.setDefaultStyle(null)
450
- }
451
- this.range.zone = this.draw.getZone().getZone()
452
- // 激活控件
453
- const control = this.draw.getControl()
454
- if (~startIndex && ~endIndex) {
455
- const elementList = this.draw.getElementList()
456
- const element = elementList[startIndex]
457
- if (element?.controlId) {
458
- control.initControl()
459
- return
460
- }
461
- }
462
- control.destroyControl()
463
- }
464
-
465
- public replaceRange(range: IRange) {
466
- this.setRange(
467
- range.startIndex,
468
- range.endIndex,
469
- range.tableId,
470
- range.startTdIndex,
471
- range.endTdIndex,
472
- range.startTrIndex,
473
- range.endTrIndex
474
- )
475
- }
476
-
477
- public shrinkRange() {
478
- const { startIndex, endIndex } = this.range
479
- if (startIndex === endIndex || (!~startIndex && !~endIndex)) return
480
- this.replaceRange({
481
- ...this.range,
482
- startIndex: endIndex
483
- })
484
- }
485
-
486
- public setRangeStyle() {
487
- const rangeStyleChangeListener = this.listener.rangeStyleChange
488
- const isSubscribeRangeStyleChange =
489
- this.eventBus.isSubscribe('rangeStyleChange')
490
- if (!rangeStyleChangeListener && !isSubscribeRangeStyleChange) return
491
- // 结束光标位置
492
- const { startIndex, endIndex, isCrossRowCol } = this.range
493
- if (!~startIndex && !~endIndex) return
494
- let curElement: IElement | null
495
- if (isCrossRowCol) {
496
- // 单元格选择以当前表格定位
497
- const originalElementList = this.draw.getOriginalElementList()
498
- const positionContext = this.position.getPositionContext()
499
- curElement = originalElementList[positionContext.index!]
500
- } else {
501
- const index = ~endIndex ? endIndex : 0
502
- // 行首以第一个非换行符元素定位
503
- const elementList = this.draw.getElementList()
504
- curElement = this.getRangeAnchorStyle(elementList, index)
505
- }
506
- if (!curElement) return
507
- // 选取元素列表
508
- const curElementList = this.getSelection() || [curElement]
509
- // 类型
510
- const type = curElement.type || ElementType.TEXT
511
- // 富文本
512
- const font = curElement.font || this.options.defaultFont
513
- const size = curElement.size || this.options.defaultSize
514
- const bold = !~curElementList.findIndex(el => !el.bold)
515
- const italic = !~curElementList.findIndex(el => !el.italic)
516
- const underline = !~curElementList.findIndex(
517
- el => !el.underline && !el.control?.underline
518
- )
519
- const strikeout = !~curElementList.findIndex(el => !el.strikeout)
520
- const color = curElement.color || null
521
- const highlight = curElement.highlight || null
522
- const rowFlex = curElement.rowFlex || null
523
- const rowMargin = curElement.rowMargin ?? this.options.defaultRowMargin
524
- const dashArray = curElement.dashArray || []
525
- const level = curElement.level || null
526
- const listType = curElement.listType || null
527
- const listStyle = curElement.listStyle || null
528
- const textDecoration = underline ? curElement.textDecoration || null : null
529
- // 菜单
530
- const painter = !!this.draw.getPainterStyle()
531
- const undo = this.historyManager.isCanUndo()
532
- const redo = this.historyManager.isCanRedo()
533
- // 组信息
534
- const groupIds = curElement.groupIds || null
535
- // 扩展字段
536
- const extension = curElement.extension ?? null
537
- const rangeStyle: IRangeStyle = {
538
- type,
539
- undo,
540
- redo,
541
- painter,
542
- font,
543
- size,
544
- bold,
545
- italic,
546
- underline,
547
- strikeout,
548
- color,
549
- highlight,
550
- rowFlex,
551
- rowMargin,
552
- dashArray,
553
- level,
554
- listType,
555
- listStyle,
556
- groupIds,
557
- textDecoration,
558
- extension
559
- }
560
- if (rangeStyleChangeListener) {
561
- rangeStyleChangeListener(rangeStyle)
562
- }
563
- if (isSubscribeRangeStyleChange) {
564
- this.eventBus.emit('rangeStyleChange', rangeStyle)
565
- }
566
- }
567
-
568
- public recoveryRangeStyle() {
569
- const rangeStyleChangeListener = this.listener.rangeStyleChange
570
- const isSubscribeRangeStyleChange =
571
- this.eventBus.isSubscribe('rangeStyleChange')
572
- if (!rangeStyleChangeListener && !isSubscribeRangeStyleChange) return
573
- const font = this.options.defaultFont
574
- const size = this.options.defaultSize
575
- const rowMargin = this.options.defaultRowMargin
576
- const painter = !!this.draw.getPainterStyle()
577
- const undo = this.historyManager.isCanUndo()
578
- const redo = this.historyManager.isCanRedo()
579
- const rangeStyle: IRangeStyle = {
580
- type: null,
581
- undo,
582
- redo,
583
- painter,
584
- font,
585
- size,
586
- bold: false,
587
- italic: false,
588
- underline: false,
589
- strikeout: false,
590
- color: null,
591
- highlight: null,
592
- rowFlex: null,
593
- rowMargin,
594
- dashArray: [],
595
- level: null,
596
- listType: null,
597
- listStyle: null,
598
- groupIds: null,
599
- textDecoration: null,
600
- extension: null
601
- }
602
- if (rangeStyleChangeListener) {
603
- rangeStyleChangeListener(rangeStyle)
604
- }
605
- if (isSubscribeRangeStyleChange) {
606
- this.eventBus.emit('rangeStyleChange', rangeStyle)
607
- }
608
- }
609
-
610
- public shrinkBoundary(context: IControlContext = {}) {
611
- const elementList = context.elementList || this.draw.getElementList()
612
- const range = context.range || this.getRange()
613
- const { startIndex, endIndex } = range
614
- if (!~startIndex && !~endIndex) return
615
- const startElement = elementList[startIndex]
616
- const endElement = elementList[endIndex]
617
- if (startIndex === endIndex) {
618
- if (startElement.controlComponent === ControlComponent.PLACEHOLDER) {
619
- // 找到第一个placeholder字符
620
- let index = startIndex - 1
621
- while (index > 0) {
622
- const preElement = elementList[index]
623
- if (
624
- preElement.controlId !== startElement.controlId ||
625
- preElement.controlComponent === ControlComponent.PREFIX ||
626
- preElement.controlComponent === ControlComponent.PRE_TEXT
627
- ) {
628
- range.startIndex = index
629
- range.endIndex = index
630
- break
631
- }
632
- index--
633
- }
634
- }
635
- } else {
636
- // 首、尾为占位符时,收缩到最后一个前缀字符后
637
- if (
638
- startElement.controlComponent === ControlComponent.PLACEHOLDER ||
639
- endElement.controlComponent === ControlComponent.PLACEHOLDER
640
- ) {
641
- let index = endIndex - 1
642
- while (index > 0) {
643
- const preElement = elementList[index]
644
- if (
645
- preElement.controlId !== endElement.controlId ||
646
- preElement.controlComponent === ControlComponent.PREFIX ||
647
- preElement.controlComponent === ControlComponent.PRE_TEXT
648
- ) {
649
- range.startIndex = index
650
- range.endIndex = index
651
- return
652
- }
653
- index--
654
- }
655
- }
656
- // 向右查找到第一个Value
657
- if (startElement.controlComponent === ControlComponent.PREFIX) {
658
- let index = startIndex + 1
659
- while (index < elementList.length) {
660
- const nextElement = elementList[index]
661
- if (
662
- nextElement.controlId !== startElement.controlId ||
663
- nextElement.controlComponent === ControlComponent.VALUE
664
- ) {
665
- range.startIndex = index - 1
666
- break
667
- } else if (
668
- nextElement.controlComponent === ControlComponent.PLACEHOLDER
669
- ) {
670
- range.startIndex = index - 1
671
- range.endIndex = index - 1
672
- return
673
- }
674
- index++
675
- }
676
- }
677
- // 向左查找到第一个Value
678
- if (endElement.controlComponent !== ControlComponent.VALUE) {
679
- let index = startIndex - 1
680
- while (index > 0) {
681
- const preElement = elementList[index]
682
- if (
683
- preElement.controlId !== startElement.controlId ||
684
- preElement.controlComponent === ControlComponent.VALUE
685
- ) {
686
- range.startIndex = index
687
- break
688
- } else if (
689
- preElement.controlComponent === ControlComponent.PLACEHOLDER
690
- ) {
691
- range.startIndex = index
692
- range.endIndex = index
693
- return
694
- }
695
- index--
696
- }
697
- }
698
- }
699
- }
700
-
701
- public render(
702
- ctx: CanvasRenderingContext2D,
703
- x: number,
704
- y: number,
705
- width: number,
706
- height: number
707
- ) {
708
- ctx.save()
709
- ctx.globalAlpha = this.options.rangeAlpha
710
- ctx.fillStyle = this.options.rangeColor
711
- ctx.fillRect(x, y, width, height)
712
- ctx.restore()
713
- }
714
-
715
- public toString(): string {
716
- const selection = this.getTextLikeSelection()
717
- if (!selection) return ''
718
- return selection
719
- .map(s => s.value)
720
- .join('')
721
- .replace(new RegExp(ZERO, 'g'), '')
722
- }
723
- }