@agile_jy/word-editor 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (230) hide show
  1. package/CHANGELOG.md +2543 -0
  2. package/LICENSE +21 -0
  3. package/README.md +110 -0
  4. package/dist/canvas-editor.es.js +25197 -0
  5. package/dist/canvas-editor.es.js.map +1 -0
  6. package/dist/canvas-editor.umd.js +97 -0
  7. package/dist/canvas-editor.umd.js.map +1 -0
  8. package/dist/src/editor/core/actuator/Actuator.d.ts +7 -0
  9. package/dist/src/editor/core/actuator/handlers/positionContextChange.d.ts +3 -0
  10. package/dist/src/editor/core/command/Command.d.ts +147 -0
  11. package/dist/src/editor/core/command/CommandAdapt.d.ts +190 -0
  12. package/dist/src/editor/core/contextmenu/ContextMenu.d.ts +31 -0
  13. package/dist/src/editor/core/contextmenu/menus/controlMenus.d.ts +2 -0
  14. package/dist/src/editor/core/contextmenu/menus/globalMenus.d.ts +2 -0
  15. package/dist/src/editor/core/contextmenu/menus/hyperlinkMenus.d.ts +2 -0
  16. package/dist/src/editor/core/contextmenu/menus/imageMenus.d.ts +2 -0
  17. package/dist/src/editor/core/contextmenu/menus/tableMenus.d.ts +2 -0
  18. package/dist/src/editor/core/cursor/Cursor.d.ts +41 -0
  19. package/dist/src/editor/core/cursor/CursorAgent.d.ts +16 -0
  20. package/dist/src/editor/core/draw/Draw.d.ts +252 -0
  21. package/dist/src/editor/core/draw/control/Control.d.ts +73 -0
  22. package/dist/src/editor/core/draw/control/checkbox/CheckboxControl.d.ts +16 -0
  23. package/dist/src/editor/core/draw/control/date/DateControl.d.ts +24 -0
  24. package/dist/src/editor/core/draw/control/interactive/ControlSearch.d.ts +20 -0
  25. package/dist/src/editor/core/draw/control/number/Calculator.d.ts +16 -0
  26. package/dist/src/editor/core/draw/control/number/NumberControl.d.ts +13 -0
  27. package/dist/src/editor/core/draw/control/radio/RadioControl.d.ts +5 -0
  28. package/dist/src/editor/core/draw/control/richtext/Border.d.ts +10 -0
  29. package/dist/src/editor/core/draw/control/select/SelectControl.d.ts +28 -0
  30. package/dist/src/editor/core/draw/control/text/TextControl.d.ts +18 -0
  31. package/dist/src/editor/core/draw/frame/Background.d.ts +11 -0
  32. package/dist/src/editor/core/draw/frame/Badge.d.ts +14 -0
  33. package/dist/src/editor/core/draw/frame/Footer.d.ts +27 -0
  34. package/dist/src/editor/core/draw/frame/Header.d.ts +27 -0
  35. package/dist/src/editor/core/draw/frame/LineNumber.d.ts +7 -0
  36. package/dist/src/editor/core/draw/frame/Margin.d.ts +7 -0
  37. package/dist/src/editor/core/draw/frame/PageBorder.d.ts +9 -0
  38. package/dist/src/editor/core/draw/frame/PageNumber.d.ts +9 -0
  39. package/dist/src/editor/core/draw/frame/Placeholder.d.ts +20 -0
  40. package/dist/src/editor/core/draw/frame/Watermark.d.ts +10 -0
  41. package/dist/src/editor/core/draw/graffiti/Graffiti.d.ts +19 -0
  42. package/dist/src/editor/core/draw/interactive/Area.d.ts +27 -0
  43. package/dist/src/editor/core/draw/interactive/Group.d.ts +18 -0
  44. package/dist/src/editor/core/draw/interactive/Search.d.ts +30 -0
  45. package/dist/src/editor/core/draw/particle/CheckboxParticle.d.ts +18 -0
  46. package/dist/src/editor/core/draw/particle/HyperlinkParticle.d.ts +17 -0
  47. package/dist/src/editor/core/draw/particle/ImageParticle.d.ts +23 -0
  48. package/dist/src/editor/core/draw/particle/LabelParticle.d.ts +8 -0
  49. package/dist/src/editor/core/draw/particle/LineBreakParticle.d.ts +10 -0
  50. package/dist/src/editor/core/draw/particle/ListParticle.d.ts +20 -0
  51. package/dist/src/editor/core/draw/particle/PageBreakParticle.d.ts +9 -0
  52. package/dist/src/editor/core/draw/particle/RadioParticle.d.ts +18 -0
  53. package/dist/src/editor/core/draw/particle/SeparatorParticle.d.ts +7 -0
  54. package/dist/src/editor/core/draw/particle/SubscriptParticle.d.ts +5 -0
  55. package/dist/src/editor/core/draw/particle/SuperscriptParticle.d.ts +5 -0
  56. package/dist/src/editor/core/draw/particle/TextParticle.d.ts +29 -0
  57. package/dist/src/editor/core/draw/particle/WhiteSpaceParticle.d.ts +7 -0
  58. package/dist/src/editor/core/draw/particle/block/BlockParticle.d.ts +14 -0
  59. package/dist/src/editor/core/draw/particle/block/modules/BaseBlock.d.ts +33 -0
  60. package/dist/src/editor/core/draw/particle/block/modules/IFrameBlock.d.ts +9 -0
  61. package/dist/src/editor/core/draw/particle/block/modules/VideoBlock.d.ts +8 -0
  62. package/dist/src/editor/core/draw/particle/date/DateParticle.d.ts +13 -0
  63. package/dist/src/editor/core/draw/particle/date/DatePicker.d.ts +64 -0
  64. package/dist/src/editor/core/draw/particle/latex/LaTexParticle.d.ts +7 -0
  65. package/dist/src/editor/core/draw/particle/latex/utils/LaTexUtils.d.ts +47 -0
  66. package/dist/src/editor/core/draw/particle/latex/utils/hershey.d.ts +10 -0
  67. package/dist/src/editor/core/draw/particle/latex/utils/symbols.d.ts +8 -0
  68. package/dist/src/editor/core/draw/particle/previewer/Previewer.d.ts +47 -0
  69. package/dist/src/editor/core/draw/particle/table/TableOperate.d.ts +32 -0
  70. package/dist/src/editor/core/draw/particle/table/TableParticle.d.ts +24 -0
  71. package/dist/src/editor/core/draw/particle/table/TableTool.d.ts +31 -0
  72. package/dist/src/editor/core/draw/richtext/AbstractRichText.d.ts +11 -0
  73. package/dist/src/editor/core/draw/richtext/Highlight.d.ts +7 -0
  74. package/dist/src/editor/core/draw/richtext/Strikeout.d.ts +7 -0
  75. package/dist/src/editor/core/draw/richtext/Underline.d.ts +10 -0
  76. package/dist/src/editor/core/event/CanvasEvent.d.ts +52 -0
  77. package/dist/src/editor/core/event/GlobalEvent.d.ts +26 -0
  78. package/dist/src/editor/core/event/eventbus/EventBus.d.ts +9 -0
  79. package/dist/src/editor/core/event/handlers/click.d.ts +11 -0
  80. package/dist/src/editor/core/event/handlers/composition.d.ts +8 -0
  81. package/dist/src/editor/core/event/handlers/copy.d.ts +3 -0
  82. package/dist/src/editor/core/event/handlers/cut.d.ts +2 -0
  83. package/dist/src/editor/core/event/handlers/drag.d.ts +6 -0
  84. package/dist/src/editor/core/event/handlers/drop.d.ts +2 -0
  85. package/dist/src/editor/core/event/handlers/input.d.ts +3 -0
  86. package/dist/src/editor/core/event/handlers/keydown/backspace.d.ts +2 -0
  87. package/dist/src/editor/core/event/handlers/keydown/delete.d.ts +2 -0
  88. package/dist/src/editor/core/event/handlers/keydown/enter.d.ts +2 -0
  89. package/dist/src/editor/core/event/handlers/keydown/index.d.ts +2 -0
  90. package/dist/src/editor/core/event/handlers/keydown/left.d.ts +2 -0
  91. package/dist/src/editor/core/event/handlers/keydown/right.d.ts +2 -0
  92. package/dist/src/editor/core/event/handlers/keydown/tab.d.ts +2 -0
  93. package/dist/src/editor/core/event/handlers/keydown/updown.d.ts +2 -0
  94. package/dist/src/editor/core/event/handlers/mousedown.d.ts +7 -0
  95. package/dist/src/editor/core/event/handlers/mouseleave.d.ts +2 -0
  96. package/dist/src/editor/core/event/handlers/mousemove.d.ts +2 -0
  97. package/dist/src/editor/core/event/handlers/mouseup.d.ts +2 -0
  98. package/dist/src/editor/core/event/handlers/paste.d.ts +8 -0
  99. package/dist/src/editor/core/history/HistoryManager.d.ts +15 -0
  100. package/dist/src/editor/core/i18n/I18n.d.ts +12 -0
  101. package/dist/src/editor/core/listener/Listener.d.ts +15 -0
  102. package/dist/src/editor/core/observer/ImageObserver.d.ts +7 -0
  103. package/dist/src/editor/core/observer/MouseObserver.d.ts +13 -0
  104. package/dist/src/editor/core/observer/ScrollObserver.d.ts +20 -0
  105. package/dist/src/editor/core/observer/SelectionObserver.d.ts +22 -0
  106. package/dist/src/editor/core/override/Override.d.ts +8 -0
  107. package/dist/src/editor/core/plugin/Plugin.d.ts +7 -0
  108. package/dist/src/editor/core/position/Position.d.ts +37 -0
  109. package/dist/src/editor/core/range/RangeManager.d.ts +45 -0
  110. package/dist/src/editor/core/register/Register.d.ts +20 -0
  111. package/dist/src/editor/core/shortcut/Shortcut.d.ts +16 -0
  112. package/dist/src/editor/core/shortcut/keys/listKeys.d.ts +2 -0
  113. package/dist/src/editor/core/shortcut/keys/richtextKeys.d.ts +2 -0
  114. package/dist/src/editor/core/shortcut/keys/titleKeys.d.ts +2 -0
  115. package/dist/src/editor/core/worker/WorkerManager.d.ts +16 -0
  116. package/dist/src/editor/core/worker/works/catalog.d.ts +1 -0
  117. package/dist/src/editor/core/worker/works/group.d.ts +1 -0
  118. package/dist/src/editor/core/worker/works/value.d.ts +1 -0
  119. package/dist/src/editor/core/worker/works/wordCount.d.ts +1 -0
  120. package/dist/src/editor/core/zone/Zone.d.ts +21 -0
  121. package/dist/src/editor/core/zone/ZoneTip.d.ts +17 -0
  122. package/dist/src/editor/dataset/constant/Background.d.ts +2 -0
  123. package/dist/src/editor/dataset/constant/Badge.d.ts +2 -0
  124. package/dist/src/editor/dataset/constant/Checkbox.d.ts +2 -0
  125. package/dist/src/editor/dataset/constant/Common.d.ts +21 -0
  126. package/dist/src/editor/dataset/constant/ContextMenu.d.ts +60 -0
  127. package/dist/src/editor/dataset/constant/Control.d.ts +2 -0
  128. package/dist/src/editor/dataset/constant/Cursor.d.ts +3 -0
  129. package/dist/src/editor/dataset/constant/Editor.d.ts +6 -0
  130. package/dist/src/editor/dataset/constant/Element.d.ts +21 -0
  131. package/dist/src/editor/dataset/constant/Footer.d.ts +2 -0
  132. package/dist/src/editor/dataset/constant/Graffiti.d.ts +2 -0
  133. package/dist/src/editor/dataset/constant/Group.d.ts +2 -0
  134. package/dist/src/editor/dataset/constant/Header.d.ts +2 -0
  135. package/dist/src/editor/dataset/constant/ImgCaption.d.ts +2 -0
  136. package/dist/src/editor/dataset/constant/Label.d.ts +2 -0
  137. package/dist/src/editor/dataset/constant/LineBreak.d.ts +2 -0
  138. package/dist/src/editor/dataset/constant/LineNumber.d.ts +2 -0
  139. package/dist/src/editor/dataset/constant/List.d.ts +6 -0
  140. package/dist/src/editor/dataset/constant/PageBorder.d.ts +2 -0
  141. package/dist/src/editor/dataset/constant/PageBreak.d.ts +2 -0
  142. package/dist/src/editor/dataset/constant/PageNumber.d.ts +6 -0
  143. package/dist/src/editor/dataset/constant/Placeholder.d.ts +2 -0
  144. package/dist/src/editor/dataset/constant/Radio.d.ts +2 -0
  145. package/dist/src/editor/dataset/constant/Regular.d.ts +10 -0
  146. package/dist/src/editor/dataset/constant/Separator.d.ts +2 -0
  147. package/dist/src/editor/dataset/constant/Shortcut.d.ts +3 -0
  148. package/dist/src/editor/dataset/constant/Table.d.ts +2 -0
  149. package/dist/src/editor/dataset/constant/Title.d.ts +6 -0
  150. package/dist/src/editor/dataset/constant/Watermark.d.ts +2 -0
  151. package/dist/src/editor/dataset/constant/WhiteSpace.d.ts +2 -0
  152. package/dist/src/editor/dataset/constant/Zone.d.ts +2 -0
  153. package/dist/src/editor/dataset/enum/Area.d.ts +5 -0
  154. package/dist/src/editor/dataset/enum/Background.d.ts +10 -0
  155. package/dist/src/editor/dataset/enum/Block.d.ts +4 -0
  156. package/dist/src/editor/dataset/enum/Common.d.ts +26 -0
  157. package/dist/src/editor/dataset/enum/Control.d.ts +32 -0
  158. package/dist/src/editor/dataset/enum/Editor.d.ts +44 -0
  159. package/dist/src/editor/dataset/enum/Element.d.ts +21 -0
  160. package/dist/src/editor/dataset/enum/ElementStyle.d.ts +12 -0
  161. package/dist/src/editor/dataset/enum/Event.d.ts +5 -0
  162. package/dist/src/editor/dataset/enum/KeyMap.d.ts +83 -0
  163. package/dist/src/editor/dataset/enum/LineNumber.d.ts +4 -0
  164. package/dist/src/editor/dataset/enum/List.d.ts +20 -0
  165. package/dist/src/editor/dataset/enum/Observer.d.ts +6 -0
  166. package/dist/src/editor/dataset/enum/Row.d.ts +7 -0
  167. package/dist/src/editor/dataset/enum/Text.d.ts +12 -0
  168. package/dist/src/editor/dataset/enum/Title.d.ts +8 -0
  169. package/dist/src/editor/dataset/enum/VerticalAlign.d.ts +5 -0
  170. package/dist/src/editor/dataset/enum/Watermark.d.ts +4 -0
  171. package/dist/src/editor/dataset/enum/table/Table.d.ts +17 -0
  172. package/dist/src/editor/dataset/enum/table/TableTool.d.ts +4 -0
  173. package/dist/src/editor/index.d.ts +59 -0
  174. package/dist/src/editor/interface/Area.d.ts +55 -0
  175. package/dist/src/editor/interface/Background.d.ts +8 -0
  176. package/dist/src/editor/interface/Badge.d.ts +15 -0
  177. package/dist/src/editor/interface/Block.d.ts +15 -0
  178. package/dist/src/editor/interface/Catalog.d.ts +9 -0
  179. package/dist/src/editor/interface/Checkbox.d.ts +15 -0
  180. package/dist/src/editor/interface/Command.d.ts +3 -0
  181. package/dist/src/editor/interface/Common.d.ts +14 -0
  182. package/dist/src/editor/interface/Control.d.ts +198 -0
  183. package/dist/src/editor/interface/Cursor.d.ts +7 -0
  184. package/dist/src/editor/interface/Draw.d.ts +74 -0
  185. package/dist/src/editor/interface/Editor.d.ts +143 -0
  186. package/dist/src/editor/interface/Element.d.ts +234 -0
  187. package/dist/src/editor/interface/Event.d.ts +22 -0
  188. package/dist/src/editor/interface/EventBus.d.ts +26 -0
  189. package/dist/src/editor/interface/Footer.d.ts +8 -0
  190. package/dist/src/editor/interface/Graffiti.d.ts +13 -0
  191. package/dist/src/editor/interface/Group.d.ts +8 -0
  192. package/dist/src/editor/interface/Header.d.ts +8 -0
  193. package/dist/src/editor/interface/Label.d.ts +7 -0
  194. package/dist/src/editor/interface/LineBreak.d.ts +5 -0
  195. package/dist/src/editor/interface/LineNumber.d.ts +9 -0
  196. package/dist/src/editor/interface/Listener.d.ts +66 -0
  197. package/dist/src/editor/interface/Margin.d.ts +1 -0
  198. package/dist/src/editor/interface/PageBorder.d.ts +7 -0
  199. package/dist/src/editor/interface/PageBreak.d.ts +5 -0
  200. package/dist/src/editor/interface/PageNumber.d.ts +15 -0
  201. package/dist/src/editor/interface/Placeholder.d.ts +7 -0
  202. package/dist/src/editor/interface/Plugin.d.ts +3 -0
  203. package/dist/src/editor/interface/Position.d.ts +103 -0
  204. package/dist/src/editor/interface/Previewer.d.ts +13 -0
  205. package/dist/src/editor/interface/Radio.d.ts +15 -0
  206. package/dist/src/editor/interface/Range.d.ts +44 -0
  207. package/dist/src/editor/interface/Row.d.ts +23 -0
  208. package/dist/src/editor/interface/Search.d.ts +30 -0
  209. package/dist/src/editor/interface/Separator.d.ts +4 -0
  210. package/dist/src/editor/interface/Text.d.ts +13 -0
  211. package/dist/src/editor/interface/Title.d.ts +26 -0
  212. package/dist/src/editor/interface/Watermark.d.ts +15 -0
  213. package/dist/src/editor/interface/WhiteSpace.d.ts +5 -0
  214. package/dist/src/editor/interface/Zone.d.ts +3 -0
  215. package/dist/src/editor/interface/contextmenu/ContextMenu.d.ts +73 -0
  216. package/dist/src/editor/interface/i18n/I18n.d.ts +6 -0
  217. package/dist/src/editor/interface/shortcut/Shortcut.d.ts +13 -0
  218. package/dist/src/editor/interface/table/Colgroup.d.ts +4 -0
  219. package/dist/src/editor/interface/table/Table.d.ts +8 -0
  220. package/dist/src/editor/interface/table/Td.d.ts +35 -0
  221. package/dist/src/editor/interface/table/Tr.d.ts +10 -0
  222. package/dist/src/editor/utils/clipboard.d.ts +13 -0
  223. package/dist/src/editor/utils/element.d.ts +57 -0
  224. package/dist/src/editor/utils/hotkey.d.ts +1 -0
  225. package/dist/src/editor/utils/index.d.ts +34 -0
  226. package/dist/src/editor/utils/option.d.ts +3 -0
  227. package/dist/src/editor/utils/paragraph.d.ts +8 -0
  228. package/dist/src/editor/utils/print.d.ts +7 -0
  229. package/dist/src/editor/utils/ua.d.ts +4 -0
  230. package/package.json +77 -0
@@ -0,0 +1,27 @@
1
+ import { Draw } from '../Draw';
2
+ import { IAreaInfo, IGetAreaValueOption, IGetAreaValueResult, IInsertAreaOption, ILocationAreaOption, ISetAreaPropertiesOption, ISetAreaValueOption } from '../../../interface/Area';
3
+ import { IRange } from '../../../interface/Range';
4
+ import { IElementPosition } from '../../../interface/Element';
5
+ export declare class Area {
6
+ private draw;
7
+ private zone;
8
+ private range;
9
+ private position;
10
+ private options;
11
+ private areaInfoMap;
12
+ constructor(draw: Draw);
13
+ getAreaInfo(): Map<string, IAreaInfo>;
14
+ getActiveAreaId(): string | null;
15
+ getActiveAreaInfo(): IAreaInfo | null;
16
+ isReadonly(): boolean;
17
+ insertArea(payload: IInsertAreaOption): string | null;
18
+ render(ctx: CanvasRenderingContext2D, pageNo: number): void;
19
+ compute(): void;
20
+ getAreaValue(options?: IGetAreaValueOption): IGetAreaValueResult | null;
21
+ getContextByAreaId(areaId: string, options?: ILocationAreaOption): {
22
+ range: IRange;
23
+ elementPosition: IElementPosition;
24
+ } | null;
25
+ setAreaProperties(payload: ISetAreaPropertiesOption): void;
26
+ setAreaValue(payload: ISetAreaValueOption): void;
27
+ }
@@ -0,0 +1,18 @@
1
+ import { IElement } from '../../../interface/Element';
2
+ import { IPositionContext } from '../../../interface/Position';
3
+ import { IRange } from '../../../interface/Range';
4
+ import { Draw } from '../Draw';
5
+ export declare class Group {
6
+ private draw;
7
+ private options;
8
+ private range;
9
+ private fillRectMap;
10
+ constructor(draw: Draw);
11
+ setGroup(): string | null;
12
+ getElementListByGroupId(elementList: IElement[], groupId: string): IElement[];
13
+ deleteGroup(groupId: string): void;
14
+ getContextByGroupId(elementList: IElement[], groupId: string): (IRange & IPositionContext) | null;
15
+ clearFillInfo(): void;
16
+ recordFillInfo(element: IElement, x: number, y: number, width: number, height: number): void;
17
+ render(ctx: CanvasRenderingContext2D): void;
18
+ }
@@ -0,0 +1,30 @@
1
+ import { IElement, IElementPosition } from '../../../interface/Element';
2
+ import { IReplaceOption, ISearchOption, ISearchResult } from '../../../interface/Search';
3
+ import { Draw } from '../Draw';
4
+ export interface INavigateInfo {
5
+ index: number;
6
+ count: number;
7
+ }
8
+ export declare class Search {
9
+ private draw;
10
+ private options;
11
+ private position;
12
+ private range;
13
+ private searchKeyword;
14
+ private searchNavigateIndex;
15
+ private searchOptions;
16
+ private searchMatchList;
17
+ constructor(draw: Draw);
18
+ getSearchKeyword(): string | null;
19
+ setSearchKeyword(payload: string | null, options?: ISearchOption): void;
20
+ searchNavigatePre(): number | null;
21
+ searchNavigateNext(): number | null;
22
+ searchNavigateScrollIntoView(position: IElementPosition): void;
23
+ getSearchNavigateIndexList(): any[];
24
+ getSearchMatchList(): ISearchResult[];
25
+ getSearchNavigateInfo(): null | INavigateInfo;
26
+ getMatchList(payload: string, originalElementList: IElement[]): ISearchResult[];
27
+ compute(payload: string): void;
28
+ render(ctx: CanvasRenderingContext2D, pageIndex: number): void;
29
+ replace(payload: string, option?: IReplaceOption): void;
30
+ }
@@ -0,0 +1,18 @@
1
+ import { IElement } from '../../../interface/Element';
2
+ import { IRow } from '../../../interface/Row';
3
+ import { Draw } from '../Draw';
4
+ interface ICheckboxRenderOption {
5
+ ctx: CanvasRenderingContext2D;
6
+ x: number;
7
+ y: number;
8
+ row: IRow;
9
+ index: number;
10
+ }
11
+ export declare class CheckboxParticle {
12
+ private draw;
13
+ private options;
14
+ constructor(draw: Draw);
15
+ setSelect(element: IElement): void;
16
+ render(payload: ICheckboxRenderOption): void;
17
+ }
18
+ export {};
@@ -0,0 +1,17 @@
1
+ import { IElement } from '../../..';
2
+ import { IElementPosition } from '../../../interface/Element';
3
+ import { IRowElement } from '../../../interface/Row';
4
+ import { Draw } from '../Draw';
5
+ export declare class HyperlinkParticle {
6
+ private draw;
7
+ private options;
8
+ private container;
9
+ private hyperlinkPopupContainer;
10
+ private hyperlinkDom;
11
+ constructor(draw: Draw);
12
+ private _createHyperlinkPopupDom;
13
+ drawHyperlinkPopup(element: IElement, position: IElementPosition): void;
14
+ clearHyperlinkPopup(): void;
15
+ openHyperlink(element: IElement): void;
16
+ render(ctx: CanvasRenderingContext2D, element: IRowElement, x: number, y: number): void;
17
+ }
@@ -0,0 +1,23 @@
1
+ import { DeepRequired } from '../../../interface/Common';
2
+ import { IEditorOption } from '../../../interface/Editor';
3
+ import { IElement } from '../../../interface/Element';
4
+ import { Draw } from '../Draw';
5
+ export declare class ImageParticle {
6
+ private draw;
7
+ protected options: DeepRequired<IEditorOption>;
8
+ protected imageCache: Map<string, HTMLImageElement>;
9
+ private container;
10
+ private floatImageContainer;
11
+ private floatImage;
12
+ constructor(draw: Draw);
13
+ getOriginalMainImageList(): IElement[];
14
+ private _countImagesBeforeTarget;
15
+ createFloatImage(element: IElement): void;
16
+ dragFloatImage(movementX: number, movementY: number): void;
17
+ destroyFloatImage(): void;
18
+ protected addImageObserver(promise: Promise<unknown>): void;
19
+ protected getFallbackImage(width: number, height: number): HTMLImageElement;
20
+ private _drawImageWithCrop;
21
+ private _renderCaption;
22
+ render(ctx: CanvasRenderingContext2D, element: IElement, x: number, y: number): void;
23
+ }
@@ -0,0 +1,8 @@
1
+ import { IRowElement } from '../../../interface/Row';
2
+ import { Draw } from '../Draw';
3
+ export declare class LabelParticle {
4
+ private options;
5
+ constructor(draw: Draw);
6
+ render(ctx: CanvasRenderingContext2D, element: IRowElement, x: number, y: number): void;
7
+ private _drawRoundedRect;
8
+ }
@@ -0,0 +1,10 @@
1
+ import { IRowElement } from '../../../interface/Row';
2
+ import { Draw } from '../Draw';
3
+ export declare class LineBreakParticle {
4
+ private options;
5
+ static readonly WIDTH = 12;
6
+ static readonly HEIGHT = 9;
7
+ static readonly GAP = 3;
8
+ constructor(draw: Draw);
9
+ render(ctx: CanvasRenderingContext2D, element: IRowElement, x: number, y: number): void;
10
+ }
@@ -0,0 +1,20 @@
1
+ import { ListStyle, ListType } from '../../../dataset/enum/List';
2
+ import { IElement, IElementPosition } from '../../../interface/Element';
3
+ import { IRow } from '../../../interface/Row';
4
+ import { Draw } from '../Draw';
5
+ export declare class ListParticle {
6
+ private draw;
7
+ private range;
8
+ private options;
9
+ private readonly UN_COUNT_STYLE_WIDTH;
10
+ private readonly MEASURE_BASE_TEXT;
11
+ private readonly LIST_GAP;
12
+ constructor(draw: Draw);
13
+ setList(listType: ListType | null, listStyle?: ListStyle): void;
14
+ unsetList(): void;
15
+ computeListStyle(ctx: CanvasRenderingContext2D, elementList: IElement[]): Map<string, number>;
16
+ private findStyledElement;
17
+ private getListFontStyle;
18
+ getListStyleWidth(ctx: CanvasRenderingContext2D, listElementList: IElement[]): number;
19
+ drawListStyle(ctx: CanvasRenderingContext2D, row: IRow, position: IElementPosition): void;
20
+ }
@@ -0,0 +1,9 @@
1
+ import { IRowElement } from '../../../interface/Row';
2
+ import { Draw } from '../Draw';
3
+ export declare class PageBreakParticle {
4
+ private draw;
5
+ private options;
6
+ private i18n;
7
+ constructor(draw: Draw);
8
+ render(ctx: CanvasRenderingContext2D, element: IRowElement, x: number, y: number): void;
9
+ }
@@ -0,0 +1,18 @@
1
+ import { IElement } from '../../../interface/Element';
2
+ import { IRow } from '../../../interface/Row';
3
+ import { Draw } from '../Draw';
4
+ interface IRadioRenderOption {
5
+ ctx: CanvasRenderingContext2D;
6
+ x: number;
7
+ y: number;
8
+ row: IRow;
9
+ index: number;
10
+ }
11
+ export declare class RadioParticle {
12
+ private draw;
13
+ private options;
14
+ constructor(draw: Draw);
15
+ setSelect(element: IElement): void;
16
+ render(payload: IRadioRenderOption): void;
17
+ }
18
+ export {};
@@ -0,0 +1,7 @@
1
+ import { IRowElement } from '../../../interface/Row';
2
+ import { Draw } from '../Draw';
3
+ export declare class SeparatorParticle {
4
+ private options;
5
+ constructor(draw: Draw);
6
+ render(ctx: CanvasRenderingContext2D, element: IRowElement, x: number, y: number): void;
7
+ }
@@ -0,0 +1,5 @@
1
+ import { IRowElement } from '../../../interface/Row';
2
+ export declare class SubscriptParticle {
3
+ getOffsetY(element: IRowElement): number;
4
+ render(ctx: CanvasRenderingContext2D, element: IRowElement, x: number, y: number): void;
5
+ }
@@ -0,0 +1,5 @@
1
+ import { IRowElement } from '../../../interface/Row';
2
+ export declare class SuperscriptParticle {
3
+ getOffsetY(element: IRowElement): number;
4
+ render(ctx: CanvasRenderingContext2D, element: IRowElement, x: number, y: number): void;
5
+ }
@@ -0,0 +1,29 @@
1
+ import { IElement } from '../../..';
2
+ import { IRowElement } from '../../../interface/Row';
3
+ import { ITextMetrics } from '../../../interface/Text';
4
+ import { Draw } from '../Draw';
5
+ export interface IMeasureWordResult {
6
+ width: number;
7
+ endElement: IElement | null;
8
+ }
9
+ export declare class TextParticle {
10
+ private draw;
11
+ private options;
12
+ private ctx;
13
+ private curX;
14
+ private curY;
15
+ private text;
16
+ private curStyle;
17
+ private curColor?;
18
+ cacheMeasureText: Map<string, TextMetrics>;
19
+ constructor(draw: Draw);
20
+ measureBasisWord(ctx: CanvasRenderingContext2D, font: string): ITextMetrics;
21
+ measureWord(ctx: CanvasRenderingContext2D, elementList: IElement[], curIndex: number): IMeasureWordResult;
22
+ measurePunctuationWidth(ctx: CanvasRenderingContext2D, element: IElement): number;
23
+ measureText(ctx: CanvasRenderingContext2D, element: IElement): ITextMetrics;
24
+ getBasisWordBoundingBoxAscent(ctx: CanvasRenderingContext2D, font: string): number;
25
+ complete(): void;
26
+ record(ctx: CanvasRenderingContext2D, element: IRowElement, x: number, y: number): void;
27
+ private _setCurXY;
28
+ private _render;
29
+ }
@@ -0,0 +1,7 @@
1
+ import { IRowElement } from '../../../interface/Row';
2
+ import { Draw } from '../Draw';
3
+ export declare class WhiteSpaceParticle {
4
+ private options;
5
+ constructor(draw: Draw);
6
+ render(ctx: CanvasRenderingContext2D, element: IRowElement, x: number, y: number): void;
7
+ }
@@ -0,0 +1,14 @@
1
+ import { IRowElement } from '../../../../interface/Row';
2
+ import { Draw } from '../../Draw';
3
+ export declare class BlockParticle {
4
+ private draw;
5
+ private container;
6
+ private blockContainer;
7
+ private blockMap;
8
+ constructor(draw: Draw);
9
+ private _createBlockContainer;
10
+ getDraw(): Draw;
11
+ getBlockContainer(): HTMLDivElement;
12
+ render(ctx: CanvasRenderingContext2D, pageNo: number, element: IRowElement, x: number, y: number): void;
13
+ clear(): void;
14
+ }
@@ -0,0 +1,33 @@
1
+ import { IRowElement } from '../../../../../interface/Row';
2
+ import { BlockParticle } from '../BlockParticle';
3
+ import { IFrameBlock } from './IFrameBlock';
4
+ import { VideoBlock } from './VideoBlock';
5
+ export declare class BaseBlock {
6
+ private draw;
7
+ private options;
8
+ private element;
9
+ private block;
10
+ private blockContainer;
11
+ private blockItem;
12
+ protected blockCache: Map<string, IFrameBlock | VideoBlock>;
13
+ private resizerMask;
14
+ private resizerSelection;
15
+ private resizerHandleList;
16
+ private width;
17
+ private height;
18
+ private mousedownX;
19
+ private mousedownY;
20
+ private curHandleIndex;
21
+ private isAllowResize;
22
+ constructor(blockParticle: BlockParticle, element: IRowElement);
23
+ getBlockElement(): IRowElement;
24
+ getBlockWidth(): number;
25
+ private _createBlockItem;
26
+ private _updateResizerRect;
27
+ private _mousedown;
28
+ private _mousemove;
29
+ snapshot(ctx: CanvasRenderingContext2D, x: number, y: number): void;
30
+ render(): void;
31
+ setClientRects(pageNo: number, x: number, y: number): void;
32
+ remove(): void;
33
+ }
@@ -0,0 +1,9 @@
1
+ import { IRowElement } from '../../../../../interface/Row';
2
+ export declare class IFrameBlock {
3
+ static readonly sandbox: string[];
4
+ static readonly allow: string[];
5
+ private element;
6
+ constructor(element: IRowElement);
7
+ private _defineIframeProperties;
8
+ render(blockItemContainer: HTMLDivElement): void;
9
+ }
@@ -0,0 +1,8 @@
1
+ import { IRowElement } from '../../../../../interface/Row';
2
+ export declare class VideoBlock {
3
+ private element;
4
+ protected videoCache: Map<string, HTMLVideoElement>;
5
+ constructor(element: IRowElement);
6
+ snapshot(ctx: CanvasRenderingContext2D, x: number, y: number): Promise<unknown>;
7
+ render(blockItemContainer: HTMLDivElement): void;
8
+ }
@@ -0,0 +1,13 @@
1
+ import { IElement, IElementPosition } from '../../../../interface/Element';
2
+ import { Draw } from '../../Draw';
3
+ export declare class DateParticle {
4
+ private draw;
5
+ private range;
6
+ private datePicker;
7
+ private options;
8
+ constructor(draw: Draw);
9
+ private _setValue;
10
+ getDateElementRange(): [number, number] | null;
11
+ clearDatePicker(): void;
12
+ renderDatePicker(element: IElement, position: IElementPosition): void;
13
+ }
@@ -0,0 +1,64 @@
1
+ import { IElementPosition } from '../../../../interface/Element';
2
+ import { Draw } from '../../Draw';
3
+ export interface IDatePickerLang {
4
+ now: string;
5
+ confirm: string;
6
+ return: string;
7
+ timeSelect: string;
8
+ weeks: {
9
+ sun: string;
10
+ mon: string;
11
+ tue: string;
12
+ wed: string;
13
+ thu: string;
14
+ fri: string;
15
+ sat: string;
16
+ };
17
+ year: string;
18
+ month: string;
19
+ hour: string;
20
+ minute: string;
21
+ second: string;
22
+ }
23
+ export interface IDatePickerOption {
24
+ onSubmit?: (date: string) => void;
25
+ }
26
+ interface IRenderOption {
27
+ value: string;
28
+ position: IElementPosition;
29
+ dateFormat?: string;
30
+ }
31
+ export declare class DatePicker {
32
+ private draw;
33
+ private options;
34
+ private now;
35
+ private dom;
36
+ private renderOptions;
37
+ private isDatePicker;
38
+ private pickDate;
39
+ private lang;
40
+ constructor(draw: Draw, options?: IDatePickerOption);
41
+ private _createDom;
42
+ private _bindEvent;
43
+ private _setPosition;
44
+ isInvalidDate(value: Date): boolean;
45
+ private _setValue;
46
+ private _getLang;
47
+ private _setLangChange;
48
+ private _update;
49
+ private _toggleDateTimePicker;
50
+ private _setDatePick;
51
+ private _setTimePick;
52
+ private _preMonth;
53
+ private _nextMonth;
54
+ private _preYear;
55
+ private _nextYear;
56
+ private _now;
57
+ private _toggleVisible;
58
+ private _submit;
59
+ formatDate(date: Date, format?: string): string;
60
+ render(option: IRenderOption): void;
61
+ dispose(): void;
62
+ destroy(): void;
63
+ }
64
+ export {};
@@ -0,0 +1,7 @@
1
+ import { IElement } from '../../../../interface/Element';
2
+ import { ImageParticle } from '../ImageParticle';
3
+ import { LaTexSVG } from './utils/LaTexUtils';
4
+ export declare class LaTexParticle extends ImageParticle {
5
+ static convertLaTextToSVG(laTex: string): LaTexSVG;
6
+ render(ctx: CanvasRenderingContext2D, element: IElement, x: number, y: number): void;
7
+ }
@@ -0,0 +1,47 @@
1
+ declare const CONFIG: Record<string, number>;
2
+ interface Bbox {
3
+ x: number;
4
+ y: number;
5
+ w: number;
6
+ h: number;
7
+ }
8
+ interface Expr {
9
+ type: string;
10
+ text: string;
11
+ mode: string;
12
+ chld: Expr[];
13
+ bbox: Bbox;
14
+ }
15
+ interface ExportOpt {
16
+ MIN_CHAR_H?: number;
17
+ MAX_W?: number;
18
+ MAX_H?: number;
19
+ MARGIN_X?: number;
20
+ MARGIN_Y?: number;
21
+ SCALE_X?: number;
22
+ SCALE_Y?: number;
23
+ STROKE_W?: number;
24
+ FG_COLOR?: string;
25
+ BG_COLOR?: string;
26
+ }
27
+ export interface LaTexSVG {
28
+ svg: string;
29
+ width: number;
30
+ height: number;
31
+ }
32
+ export declare class LaTexUtils {
33
+ _latex: string;
34
+ _tree: Expr;
35
+ _tokens: string[];
36
+ _polylines: number[][][];
37
+ constructor(latex: string);
38
+ private resolveScale;
39
+ polylines(opt?: ExportOpt): number[][][];
40
+ pathd(opt?: ExportOpt): string;
41
+ svg(opt: ExportOpt): LaTexSVG;
42
+ pdf(opt: ExportOpt): string;
43
+ boxes(opt: ExportOpt): Bbox[];
44
+ box(opt: ExportOpt): Bbox;
45
+ }
46
+ declare const _impl: Record<string, Function>;
47
+ export { CONFIG, _impl };
@@ -0,0 +1,10 @@
1
+ interface HersheyEntry {
2
+ w: number;
3
+ xmin: number;
4
+ xmax: number;
5
+ ymin: number;
6
+ ymax: number;
7
+ polylines: Array<Array<Array<number>>>;
8
+ }
9
+ export declare function HERSHEY(i: number): HersheyEntry;
10
+ export {};
@@ -0,0 +1,8 @@
1
+ export interface Symb {
2
+ glyph: number;
3
+ arity?: number;
4
+ flags: Record<string, boolean>;
5
+ }
6
+ declare const SYMB: Record<string, Symb>;
7
+ export { SYMB };
8
+ export declare function asciiMap(x: string, mode?: string): number;
@@ -0,0 +1,47 @@
1
+ import { IElement, IElementPosition } from '../../../../interface/Element';
2
+ import { IPreviewerDrawOption } from '../../../../interface/Previewer';
3
+ import { Draw } from '../../Draw';
4
+ export declare class Previewer {
5
+ private container;
6
+ private canvas;
7
+ private draw;
8
+ private options;
9
+ private curElement;
10
+ private curElementSrc;
11
+ private previewerDrawOption;
12
+ private curPosition;
13
+ private eventBus;
14
+ private imageList;
15
+ private curShowElement;
16
+ private imageCount;
17
+ private imagePre;
18
+ private imageNext;
19
+ private resizerSelection;
20
+ private resizerHandleList;
21
+ private resizerImageContainer;
22
+ private resizerImage;
23
+ private resizerSize;
24
+ private width;
25
+ private height;
26
+ private mousedownX;
27
+ private mousedownY;
28
+ private curHandleIndex;
29
+ private previewerContainer;
30
+ private previewerImage;
31
+ constructor(draw: Draw);
32
+ private _getElementPosition;
33
+ private _createResizerDom;
34
+ private _keydown;
35
+ private _mousedown;
36
+ private _mousemove;
37
+ private _drawPreviewer;
38
+ private _updateImageNavigate;
39
+ _setPreviewerTransform(scale: number, rotate: number, x: number, y: number): void;
40
+ private _clearPreviewer;
41
+ _updateResizerRect(width: number, height: number): void;
42
+ _updateResizerSizeView(width: number, height: number): void;
43
+ render(): void;
44
+ drawResizer(element: IElement, position?: IElementPosition | null, options?: IPreviewerDrawOption): void;
45
+ updateResizer(element: IElement, position?: IElementPosition | null): void;
46
+ clearResizer(): void;
47
+ }
@@ -0,0 +1,32 @@
1
+ import { IElement, TableBorder, VerticalAlign } from '../../../..';
2
+ import { TdBorder, TdSlash } from '../../../../dataset/enum/table/Table';
3
+ import { Draw } from '../../Draw';
4
+ export declare class TableOperate {
5
+ private draw;
6
+ private range;
7
+ private position;
8
+ private tableTool;
9
+ private tableParticle;
10
+ private options;
11
+ constructor(draw: Draw);
12
+ insertTable(row: number, col: number): void;
13
+ insertTableTopRow(): void;
14
+ insertTableBottomRow(): void;
15
+ adjustColWidth(element: IElement): void;
16
+ insertTableLeftCol(): void;
17
+ insertTableRightCol(): void;
18
+ deleteTableRow(): void;
19
+ deleteTableCol(): void;
20
+ deleteTable(): void;
21
+ mergeTableCell(): void;
22
+ cancelMergeTableCell(): void;
23
+ splitVerticalTableCell(): void;
24
+ splitHorizontalTableCell(): void;
25
+ tableTdVerticalAlign(payload: VerticalAlign): void;
26
+ tableBorderType(payload: TableBorder): void;
27
+ tableBorderColor(payload: string): void;
28
+ tableTdBorderType(payload: TdBorder): void;
29
+ tableTdSlashType(payload: TdSlash): void;
30
+ tableTdBackgroundColor(payload: string): void;
31
+ tableSelectAll(): void;
32
+ }
@@ -0,0 +1,24 @@
1
+ import { IElement } from '../../../..';
2
+ import { ITd } from '../../../../interface/table/Td';
3
+ import { ITr } from '../../../../interface/table/Tr';
4
+ import { Draw } from '../../Draw';
5
+ export declare class TableParticle {
6
+ private draw;
7
+ private range;
8
+ private options;
9
+ constructor(draw: Draw);
10
+ getTrListGroupByCol(payload: ITr[]): ITr[];
11
+ getRangeRowCol(): ITd[][] | null;
12
+ private _drawOuterBorder;
13
+ private _drawSlash;
14
+ private _drawBorder;
15
+ private _drawBackgroundColor;
16
+ getTableWidth(element: IElement): number;
17
+ getTableHeight(element: IElement): number;
18
+ getRowCountByColIndex(trList: ITr[], colIndex: number): number;
19
+ getTdListByColIndex(trList: ITr[], colIndex: number): ITd[];
20
+ getTdListByRowIndex(trList: ITr[], rowIndex: number): ITd[];
21
+ computeRowColInfo(element: IElement): void;
22
+ drawRange(ctx: CanvasRenderingContext2D, element: IElement, startX: number, startY: number): void;
23
+ render(ctx: CanvasRenderingContext2D, element: IElement, startX: number, startY: number): void;
24
+ }
@@ -0,0 +1,31 @@
1
+ import { Draw } from '../../Draw';
2
+ export declare class TableTool {
3
+ private readonly MIN_TD_WIDTH;
4
+ private readonly ROW_COL_OFFSET;
5
+ private readonly ROW_COL_QUICK_WIDTH;
6
+ private readonly ROW_COL_QUICK_OFFSET;
7
+ private readonly ROW_COL_QUICK_POSITION;
8
+ private readonly BORDER_VALUE;
9
+ private readonly TABLE_SELECT_OFFSET;
10
+ private draw;
11
+ private canvas;
12
+ private options;
13
+ private position;
14
+ private range;
15
+ private container;
16
+ private toolRowContainer;
17
+ private toolRowAddBtn;
18
+ private toolColAddBtn;
19
+ private toolTableSelectBtn;
20
+ private toolColContainer;
21
+ private toolBorderContainer;
22
+ private anchorLine;
23
+ private mousedownX;
24
+ private mousedownY;
25
+ constructor(draw: Draw);
26
+ dispose(): void;
27
+ render(): void;
28
+ private _setAnchorActive;
29
+ private _mousedown;
30
+ private _mousemove;
31
+ }
@@ -0,0 +1,11 @@
1
+ import { TextDecorationStyle } from '../../../dataset/enum/Text';
2
+ import { IElementFillRect } from '../../../interface/Element';
3
+ export declare abstract class AbstractRichText {
4
+ protected fillRect: IElementFillRect;
5
+ protected fillColor?: string;
6
+ protected fillDecorationStyle?: TextDecorationStyle;
7
+ constructor();
8
+ clearFillInfo(): IElementFillRect;
9
+ recordFillInfo(ctx: CanvasRenderingContext2D, x: number, y: number, width: number, height?: number, color?: string, decorationStyle?: TextDecorationStyle): void;
10
+ abstract render(ctx: CanvasRenderingContext2D): void;
11
+ }
@@ -0,0 +1,7 @@
1
+ import { AbstractRichText } from './AbstractRichText';
2
+ import { Draw } from '../Draw';
3
+ export declare class Highlight extends AbstractRichText {
4
+ private options;
5
+ constructor(draw: Draw);
6
+ render(ctx: CanvasRenderingContext2D): void;
7
+ }