@lofcz/pptist 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (444) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +260 -0
  3. package/dist/embed/favicon.ico +0 -0
  4. package/dist/embed/fonts/AlibabaPuHuiTi.woff2 +0 -0
  5. package/dist/embed/fonts/CangerXiaowanzi.woff2 +0 -0
  6. package/dist/embed/fonts/DeYiHei.woff2 +0 -0
  7. package/dist/embed/fonts/FengguangMingrui.woff2 +0 -0
  8. package/dist/embed/fonts/Inter.woff2 +0 -0
  9. package/dist/embed/fonts/JetBrainsMono.woff2 +0 -0
  10. package/dist/embed/fonts/LXGWWenKai.woff2 +0 -0
  11. package/dist/embed/fonts/Literata.woff2 +0 -0
  12. package/dist/embed/fonts/Merriweather.woff2 +0 -0
  13. package/dist/embed/fonts/MiSans.woff2 +0 -0
  14. package/dist/embed/fonts/Montserrat.woff2 +0 -0
  15. package/dist/embed/fonts/OpenSans.woff2 +0 -0
  16. package/dist/embed/fonts/Roboto.woff2 +0 -0
  17. package/dist/embed/fonts/RuiziZhenyan.woff2 +0 -0
  18. package/dist/embed/fonts/ShetuModernSquare.woff2 +0 -0
  19. package/dist/embed/fonts/SourceHanSans.woff2 +0 -0
  20. package/dist/embed/fonts/SourceHanSerif.woff2 +0 -0
  21. package/dist/embed/fonts/SourceSansPro.woff2 +0 -0
  22. package/dist/embed/fonts/SourceSerif4.woff2 +0 -0
  23. package/dist/embed/fonts/SucaiJishiCoolSquare.woff2 +0 -0
  24. package/dist/embed/fonts/SucaiJishiKangkang.woff2 +0 -0
  25. package/dist/embed/fonts/TuniuRounded.woff2 +0 -0
  26. package/dist/embed/fonts/WenDingPLKaiTi.woff2 +0 -0
  27. package/dist/embed/fonts/WenDingPLSongTi.woff2 +0 -0
  28. package/dist/embed/fonts/YousheTitleBlack.woff2 +0 -0
  29. package/dist/embed/fonts/ZcoolHappy.woff2 +0 -0
  30. package/dist/embed/fonts/ZhuQueFangSong.woff2 +0 -0
  31. package/dist/embed/fonts/ZizhiQuXiMai.woff2 +0 -0
  32. package/dist/embed/imgs/template_1.webp +0 -0
  33. package/dist/embed/imgs/template_2.webp +0 -0
  34. package/dist/embed/imgs/template_3.webp +0 -0
  35. package/dist/embed/imgs/template_4.webp +0 -0
  36. package/dist/embed/imgs/template_5.webp +0 -0
  37. package/dist/embed/imgs/template_6.webp +0 -0
  38. package/dist/embed/imgs/template_7.webp +0 -0
  39. package/dist/embed/imgs/template_8.webp +0 -0
  40. package/dist/embed/logo.png +0 -0
  41. package/dist/embed/mocks/AIPPT.json +475 -0
  42. package/dist/embed/mocks/AIPPT_Outline.md +69 -0
  43. package/dist/embed/mocks/imgs.json +482 -0
  44. package/dist/embed/mocks/slides.json +184 -0
  45. package/dist/embed/mocks/template_1.json +1 -0
  46. package/dist/embed/mocks/template_2.json +1 -0
  47. package/dist/embed/mocks/template_3.json +1 -0
  48. package/dist/embed/mocks/template_4.json +1 -0
  49. package/dist/embed/mocks/template_5.json +1 -0
  50. package/dist/embed/mocks/template_6.json +1 -0
  51. package/dist/embed/mocks/template_7.json +1 -0
  52. package/dist/embed/mocks/template_8.json +1 -0
  53. package/dist/embed/pptist-embed.css +2 -0
  54. package/dist/embed/pptist-embed.js +112091 -0
  55. package/dist/types/App.vue.d.ts +3 -0
  56. package/dist/types/components/Button.vue.d.ts +32 -0
  57. package/dist/types/components/ButtonGroup.vue.d.ts +18 -0
  58. package/dist/types/components/ChartDataEditor.vue.d.ts +20 -0
  59. package/dist/types/components/Checkbox.vue.d.ts +23 -0
  60. package/dist/types/components/CheckboxButton.vue.d.ts +20 -0
  61. package/dist/types/components/ColorButton.vue.d.ts +6 -0
  62. package/dist/types/components/ColorListButton.vue.d.ts +6 -0
  63. package/dist/types/components/ColorPicker/Alpha.vue.d.ts +11 -0
  64. package/dist/types/components/ColorPicker/Checkboard.vue.d.ts +12 -0
  65. package/dist/types/components/ColorPicker/EditableInput.vue.d.ts +11 -0
  66. package/dist/types/components/ColorPicker/Hue.vue.d.ts +12 -0
  67. package/dist/types/components/ColorPicker/Saturation.vue.d.ts +12 -0
  68. package/dist/types/components/ColorPicker/index.vue.d.ts +12 -0
  69. package/dist/types/components/Contextmenu/MenuContent.vue.d.ts +8 -0
  70. package/dist/types/components/Contextmenu/index.vue.d.ts +10 -0
  71. package/dist/types/components/Contextmenu/types.d.ts +13 -0
  72. package/dist/types/components/Divider.vue.d.ts +10 -0
  73. package/dist/types/components/Drawer.vue.d.ts +29 -0
  74. package/dist/types/components/FileInput.vue.d.ts +22 -0
  75. package/dist/types/components/FullscreenSpin.vue.d.ts +12 -0
  76. package/dist/types/components/GradientBar.vue.d.ts +14 -0
  77. package/dist/types/components/ImageWaterfallViewer.vue.d.ts +36 -0
  78. package/dist/types/components/Input.vue.d.ts +44 -0
  79. package/dist/types/components/LaTeXEditor/FormulaContent.vue.d.ts +8 -0
  80. package/dist/types/components/LaTeXEditor/SymbolContent.vue.d.ts +6 -0
  81. package/dist/types/components/LaTeXEditor/hfmath.d.ts +2 -0
  82. package/dist/types/components/LaTeXEditor/index.vue.d.ts +20 -0
  83. package/dist/types/components/Message.vue.d.ts +24 -0
  84. package/dist/types/components/Modal.vue.d.ts +34 -0
  85. package/dist/types/components/MoveablePanel.vue.d.ts +44 -0
  86. package/dist/types/components/NumberInput.vue.d.ts +43 -0
  87. package/dist/types/components/OutlineEditor.vue.d.ts +10 -0
  88. package/dist/types/components/Popover.vue.d.ts +41 -0
  89. package/dist/types/components/PopoverMenuItem.vue.d.ts +22 -0
  90. package/dist/types/components/RadioButton.vue.d.ts +19 -0
  91. package/dist/types/components/RadioGroup.vue.d.ts +23 -0
  92. package/dist/types/components/Select.vue.d.ts +38 -0
  93. package/dist/types/components/SelectCustom.vue.d.ts +26 -0
  94. package/dist/types/components/SelectGroup.vue.d.ts +13 -0
  95. package/dist/types/components/Slider.vue.d.ts +21 -0
  96. package/dist/types/components/Switch.vue.d.ts +13 -0
  97. package/dist/types/components/Tabs.vue.d.ts +27 -0
  98. package/dist/types/components/TextArea.vue.d.ts +28 -0
  99. package/dist/types/components/TextColorButton.vue.d.ts +16 -0
  100. package/dist/types/components/WritingBoard.vue.d.ts +30 -0
  101. package/dist/types/configs/animation.d.ts +34 -0
  102. package/dist/types/configs/chart.d.ts +4 -0
  103. package/dist/types/configs/element.d.ts +2 -0
  104. package/dist/types/configs/font.d.ts +4 -0
  105. package/dist/types/configs/hotkey.d.ts +41 -0
  106. package/dist/types/configs/imageClip.d.ts +25 -0
  107. package/dist/types/configs/latex.d.ts +11 -0
  108. package/dist/types/configs/lines.d.ts +16 -0
  109. package/dist/types/configs/mime.d.ts +1 -0
  110. package/dist/types/configs/shapes.d.ts +27 -0
  111. package/dist/types/configs/storage.d.ts +1 -0
  112. package/dist/types/configs/symbol.d.ts +7 -0
  113. package/dist/types/configs/theme.d.ts +11 -0
  114. package/dist/types/directive/clickOutside.d.ts +3 -0
  115. package/dist/types/directive/contextmenu.d.ts +3 -0
  116. package/dist/types/directive/index.d.ts +5 -0
  117. package/dist/types/directive/loading.d.ts +4 -0
  118. package/dist/types/directive/tooltip.d.ts +4 -0
  119. package/dist/types/embed/EmbedRoot.vue.d.ts +7 -0
  120. package/dist/types/embed/agentic/createAgenticApi.d.ts +12 -0
  121. package/dist/types/embed/agentic/fixtures.d.ts +28 -0
  122. package/dist/types/embed/agentic/helpers.d.ts +99 -0
  123. package/dist/types/embed/agentic/types.d.ts +1786 -0
  124. package/dist/types/embed/agentic/validators.d.ts +20 -0
  125. package/dist/types/embed/createController.d.ts +7 -0
  126. package/dist/types/embed/index.d.ts +5 -0
  127. package/dist/types/embed/localeBridge.d.ts +4 -0
  128. package/dist/types/embed/mount.d.ts +12 -0
  129. package/dist/types/embed/types.d.ts +44 -0
  130. package/dist/types/hooks/useAIPPT.d.ts +14 -0
  131. package/dist/types/hooks/useAddSlidesOrElements.d.ts +6 -0
  132. package/dist/types/hooks/useAlignActiveElement.d.ts +5 -0
  133. package/dist/types/hooks/useAlignElementToCanvas.d.ts +5 -0
  134. package/dist/types/hooks/useCombineElement.d.ts +6 -0
  135. package/dist/types/hooks/useCopyAndPasteElement.d.ts +7 -0
  136. package/dist/types/hooks/useCreateElement.d.ts +36 -0
  137. package/dist/types/hooks/useDeleteElement.d.ts +5 -0
  138. package/dist/types/hooks/useExport.d.ts +10 -0
  139. package/dist/types/hooks/useGlobalHotkey.d.ts +2 -0
  140. package/dist/types/hooks/useHideElement.d.ts +6 -0
  141. package/dist/types/hooks/useHistorySnapshot.d.ts +6 -0
  142. package/dist/types/hooks/useImageHandler.d.ts +4 -0
  143. package/dist/types/hooks/useImport.d.ts +10 -0
  144. package/dist/types/hooks/useLink.d.ts +6 -0
  145. package/dist/types/hooks/useLoadSlides.d.ts +4 -0
  146. package/dist/types/hooks/useLockElement.d.ts +6 -0
  147. package/dist/types/hooks/useMoveElement.d.ts +4 -0
  148. package/dist/types/hooks/useOrderElement.d.ts +6 -0
  149. package/dist/types/hooks/usePasteDataTransfer.d.ts +7 -0
  150. package/dist/types/hooks/usePasteEvent.d.ts +2 -0
  151. package/dist/types/hooks/usePasteTextClipboardData.d.ts +8 -0
  152. package/dist/types/hooks/useScaleCanvas.d.ts +7 -0
  153. package/dist/types/hooks/useScreening.d.ts +6 -0
  154. package/dist/types/hooks/useSearch.d.ts +44 -0
  155. package/dist/types/hooks/useSectionHandler.d.ts +8 -0
  156. package/dist/types/hooks/useSelectElement.d.ts +5 -0
  157. package/dist/types/hooks/useShapeFormatPainter.d.ts +4 -0
  158. package/dist/types/hooks/useSlideBackgroundStyle.d.ts +21 -0
  159. package/dist/types/hooks/useSlideHandler.d.ts +16 -0
  160. package/dist/types/hooks/useSlideTheme.d.ts +14 -0
  161. package/dist/types/hooks/useTextFormatPainter.d.ts +4 -0
  162. package/dist/types/hooks/useUniformDisplayElement.d.ts +6 -0
  163. package/dist/types/i18n/cs/canvas/index.d.ts +3 -0
  164. package/dist/types/i18n/cs/common/index.d.ts +3 -0
  165. package/dist/types/i18n/cs/components/index.d.ts +3 -0
  166. package/dist/types/i18n/cs/configs/index.d.ts +3 -0
  167. package/dist/types/i18n/cs/editor/index.d.ts +3 -0
  168. package/dist/types/i18n/cs/export/index.d.ts +3 -0
  169. package/dist/types/i18n/cs/index.d.ts +3 -0
  170. package/dist/types/i18n/cs/mobile/index.d.ts +3 -0
  171. package/dist/types/i18n/cs/screen/index.d.ts +3 -0
  172. package/dist/types/i18n/en/canvas/index.d.ts +3 -0
  173. package/dist/types/i18n/en/common/index.d.ts +3 -0
  174. package/dist/types/i18n/en/components/index.d.ts +3 -0
  175. package/dist/types/i18n/en/configs/index.d.ts +3 -0
  176. package/dist/types/i18n/en/editor/index.d.ts +3 -0
  177. package/dist/types/i18n/en/export/index.d.ts +3 -0
  178. package/dist/types/i18n/en/index.d.ts +3 -0
  179. package/dist/types/i18n/en/mobile/index.d.ts +3 -0
  180. package/dist/types/i18n/en/screen/index.d.ts +3 -0
  181. package/dist/types/i18n/formatters.d.ts +6 -0
  182. package/dist/types/i18n/getLL.d.ts +8 -0
  183. package/dist/types/i18n/i18n-types.d.ts +8863 -0
  184. package/dist/types/i18n/i18n-util.async.d.ts +16 -0
  185. package/dist/types/i18n/i18n-util.d.ts +24 -0
  186. package/dist/types/i18n/i18n-util.sync.d.ts +4 -0
  187. package/dist/types/i18n/i18n-vue.d.ts +9 -0
  188. package/dist/types/i18n/locale.d.ts +12 -0
  189. package/dist/types/i18n/pl/canvas/index.d.ts +3 -0
  190. package/dist/types/i18n/pl/common/index.d.ts +3 -0
  191. package/dist/types/i18n/pl/components/index.d.ts +3 -0
  192. package/dist/types/i18n/pl/configs/index.d.ts +3 -0
  193. package/dist/types/i18n/pl/editor/index.d.ts +3 -0
  194. package/dist/types/i18n/pl/export/index.d.ts +3 -0
  195. package/dist/types/i18n/pl/index.d.ts +3 -0
  196. package/dist/types/i18n/pl/mobile/index.d.ts +3 -0
  197. package/dist/types/i18n/pl/screen/index.d.ts +3 -0
  198. package/dist/types/i18n/sk/canvas/index.d.ts +3 -0
  199. package/dist/types/i18n/sk/common/index.d.ts +3 -0
  200. package/dist/types/i18n/sk/components/index.d.ts +3 -0
  201. package/dist/types/i18n/sk/configs/index.d.ts +3 -0
  202. package/dist/types/i18n/sk/editor/index.d.ts +3 -0
  203. package/dist/types/i18n/sk/export/index.d.ts +3 -0
  204. package/dist/types/i18n/sk/index.d.ts +3 -0
  205. package/dist/types/i18n/sk/mobile/index.d.ts +3 -0
  206. package/dist/types/i18n/sk/screen/index.d.ts +3 -0
  207. package/dist/types/i18n/useI18nContext.d.ts +9 -0
  208. package/dist/types/langs/en.d.ts +854 -0
  209. package/dist/types/langs/zh-CN.d.ts +826 -0
  210. package/dist/types/main.d.ts +5 -0
  211. package/dist/types/services/axios.d.ts +2 -0
  212. package/dist/types/services/fetch.d.ts +2 -0
  213. package/dist/types/services/index.d.ts +34 -0
  214. package/dist/types/store/index.d.ts +6 -0
  215. package/dist/types/store/keyboard.d.ts +16 -0
  216. package/dist/types/store/main.d.ts +919 -0
  217. package/dist/types/store/screen.d.ts +6 -0
  218. package/dist/types/store/slides.d.ts +1576 -0
  219. package/dist/types/store/snapshot.d.ts +21 -0
  220. package/dist/types/types/AIPPT.d.ts +36 -0
  221. package/dist/types/types/edit.d.ts +111 -0
  222. package/dist/types/types/export.d.ts +1 -0
  223. package/dist/types/types/injectKey.d.ts +10 -0
  224. package/dist/types/types/mobile.d.ts +1 -0
  225. package/dist/types/types/slides.d.ts +744 -0
  226. package/dist/types/types/toolbar.d.ts +9 -0
  227. package/dist/types/utils/clipboard.d.ts +9 -0
  228. package/dist/types/utils/common.d.ts +22 -0
  229. package/dist/types/utils/crypto.d.ts +10 -0
  230. package/dist/types/utils/database.d.ts +17 -0
  231. package/dist/types/utils/element.d.ts +304 -0
  232. package/dist/types/utils/emitter.d.ts +23 -0
  233. package/dist/types/utils/font.d.ts +1 -0
  234. package/dist/types/utils/fullscreen.d.ts +3 -0
  235. package/dist/types/utils/htmlParser/format.d.ts +3 -0
  236. package/dist/types/utils/htmlParser/index.d.ts +4 -0
  237. package/dist/types/utils/htmlParser/lexer.d.ts +2 -0
  238. package/dist/types/utils/htmlParser/parser.d.ts +15 -0
  239. package/dist/types/utils/htmlParser/stringify.d.ts +3 -0
  240. package/dist/types/utils/htmlParser/tags.d.ts +4 -0
  241. package/dist/types/utils/htmlParser/types.d.ts +55 -0
  242. package/dist/types/utils/image.d.ts +25 -0
  243. package/dist/types/utils/message.d.ts +28 -0
  244. package/dist/types/utils/portal.d.ts +5 -0
  245. package/dist/types/utils/print.d.ts +7 -0
  246. package/dist/types/utils/prosemirror/commands/replaceText.d.ts +2 -0
  247. package/dist/types/utils/prosemirror/commands/setListStyle.d.ts +4 -0
  248. package/dist/types/utils/prosemirror/commands/setTextAlign.d.ts +5 -0
  249. package/dist/types/utils/prosemirror/commands/setTextIndent.d.ts +3 -0
  250. package/dist/types/utils/prosemirror/commands/toggleList.d.ts +8 -0
  251. package/dist/types/utils/prosemirror/index.d.ts +4 -0
  252. package/dist/types/utils/prosemirror/plugins/index.d.ts +10 -0
  253. package/dist/types/utils/prosemirror/plugins/inputrules.d.ts +7 -0
  254. package/dist/types/utils/prosemirror/plugins/keymap.d.ts +3 -0
  255. package/dist/types/utils/prosemirror/plugins/placeholder.d.ts +2 -0
  256. package/dist/types/utils/prosemirror/schema/index.d.ts +25 -0
  257. package/dist/types/utils/prosemirror/schema/marks.d.ts +18 -0
  258. package/dist/types/utils/prosemirror/schema/nodes.d.ts +11 -0
  259. package/dist/types/utils/prosemirror/utils.d.ts +69 -0
  260. package/dist/types/utils/selection.d.ts +1 -0
  261. package/dist/types/utils/svg2Base64.d.ts +1 -0
  262. package/dist/types/utils/svgPathParser.d.ts +39 -0
  263. package/dist/types/utils/textParser.d.ts +5 -0
  264. package/dist/types/views/Editor/AIPPTDialog.vue.d.ts +3 -0
  265. package/dist/types/views/Editor/Canvas/AlignmentLine.vue.d.ts +10 -0
  266. package/dist/types/views/Editor/Canvas/EditableElement.vue.d.ts +11 -0
  267. package/dist/types/views/Editor/Canvas/ElementCreateSelection.vue.d.ts +8 -0
  268. package/dist/types/views/Editor/Canvas/ElementFloatLayer/AnimationIndex.vue.d.ts +10 -0
  269. package/dist/types/views/Editor/Canvas/ElementFloatLayer/FloatingToolbar/BorderPanel.vue.d.ts +3 -0
  270. package/dist/types/views/Editor/Canvas/ElementFloatLayer/FloatingToolbar/ChartToolbar.vue.d.ts +7 -0
  271. package/dist/types/views/Editor/Canvas/ElementFloatLayer/FloatingToolbar/ImageToolbar.vue.d.ts +7 -0
  272. package/dist/types/views/Editor/Canvas/ElementFloatLayer/FloatingToolbar/LatexToolbar.vue.d.ts +7 -0
  273. package/dist/types/views/Editor/Canvas/ElementFloatLayer/FloatingToolbar/LineToolbar.vue.d.ts +7 -0
  274. package/dist/types/views/Editor/Canvas/ElementFloatLayer/FloatingToolbar/ShapeToolbar.vue.d.ts +11 -0
  275. package/dist/types/views/Editor/Canvas/ElementFloatLayer/FloatingToolbar/TableToolbar.vue.d.ts +7 -0
  276. package/dist/types/views/Editor/Canvas/ElementFloatLayer/FloatingToolbar/TextStyleControls.vue.d.ts +3 -0
  277. package/dist/types/views/Editor/Canvas/ElementFloatLayer/FloatingToolbar/TextToolbar.vue.d.ts +7 -0
  278. package/dist/types/views/Editor/Canvas/ElementFloatLayer/FloatingToolbar/index.vue.d.ts +12 -0
  279. package/dist/types/views/Editor/Canvas/ElementFloatLayer/LinkHandler.vue.d.ts +9 -0
  280. package/dist/types/views/Editor/Canvas/ElementFloatLayer/index.vue.d.ts +11 -0
  281. package/dist/types/views/Editor/Canvas/GridLines.vue.d.ts +3 -0
  282. package/dist/types/views/Editor/Canvas/LinkDialog.vue.d.ts +7 -0
  283. package/dist/types/views/Editor/Canvas/MouseSelection.vue.d.ts +10 -0
  284. package/dist/types/views/Editor/Canvas/Operate/BorderLine.vue.d.ts +10 -0
  285. package/dist/types/views/Editor/Canvas/Operate/CommonElementOperate.vue.d.ts +15 -0
  286. package/dist/types/views/Editor/Canvas/Operate/ImageElementOperate.vue.d.ts +15 -0
  287. package/dist/types/views/Editor/Canvas/Operate/LineElementOperate.vue.d.ts +13 -0
  288. package/dist/types/views/Editor/Canvas/Operate/MultiSelectOperate.vue.d.ts +10 -0
  289. package/dist/types/views/Editor/Canvas/Operate/ResizeHandler.vue.d.ts +10 -0
  290. package/dist/types/views/Editor/Canvas/Operate/RotateHandler.vue.d.ts +3 -0
  291. package/dist/types/views/Editor/Canvas/Operate/ShapeElementOperate.vue.d.ts +17 -0
  292. package/dist/types/views/Editor/Canvas/Operate/TableElementOperate.vue.d.ts +15 -0
  293. package/dist/types/views/Editor/Canvas/Operate/TextElementOperate.vue.d.ts +15 -0
  294. package/dist/types/views/Editor/Canvas/Operate/index.vue.d.ts +16 -0
  295. package/dist/types/views/Editor/Canvas/Ruler.vue.d.ts +14 -0
  296. package/dist/types/views/Editor/Canvas/ShapeCreateCanvas.vue.d.ts +8 -0
  297. package/dist/types/views/Editor/Canvas/ViewportBackground.vue.d.ts +3 -0
  298. package/dist/types/views/Editor/Canvas/hooks/useCommonOperate.d.ts +89 -0
  299. package/dist/types/views/Editor/Canvas/hooks/useDragElement.d.ts +7 -0
  300. package/dist/types/views/Editor/Canvas/hooks/useDragLineElement.d.ts +7 -0
  301. package/dist/types/views/Editor/Canvas/hooks/useDrop.d.ts +3 -0
  302. package/dist/types/views/Editor/Canvas/hooks/useInsertFromCreateSelection.d.ts +12 -0
  303. package/dist/types/views/Editor/Canvas/hooks/useMouseSelection.d.ts +24 -0
  304. package/dist/types/views/Editor/Canvas/hooks/useMoveShapeKeypoint.d.ts +6 -0
  305. package/dist/types/views/Editor/Canvas/hooks/useRotateElement.d.ts +6 -0
  306. package/dist/types/views/Editor/Canvas/hooks/useRotateGroupElement.d.ts +6 -0
  307. package/dist/types/views/Editor/Canvas/hooks/useScaleElement.d.ts +8 -0
  308. package/dist/types/views/Editor/Canvas/hooks/useSelectElement.d.ts +6 -0
  309. package/dist/types/views/Editor/Canvas/hooks/useViewportSize.d.ts +11 -0
  310. package/dist/types/views/Editor/Canvas/index.vue.d.ts +3 -0
  311. package/dist/types/views/Editor/CanvasTool/ChartPool.vue.d.ts +8 -0
  312. package/dist/types/views/Editor/CanvasTool/LinePool.vue.d.ts +8 -0
  313. package/dist/types/views/Editor/CanvasTool/MediaInput.vue.d.ts +23 -0
  314. package/dist/types/views/Editor/CanvasTool/ShapeItemThumbnail.vue.d.ts +7 -0
  315. package/dist/types/views/Editor/CanvasTool/ShapePool.vue.d.ts +8 -0
  316. package/dist/types/views/Editor/CanvasTool/TableGenerator.vue.d.ts +13 -0
  317. package/dist/types/views/Editor/CanvasTool/index.vue.d.ts +3 -0
  318. package/dist/types/views/Editor/ChartDataEditorDialog.vue.d.ts +3 -0
  319. package/dist/types/views/Editor/EditorHeader/HotkeyDoc.vue.d.ts +3 -0
  320. package/dist/types/views/Editor/EditorHeader/index.vue.d.ts +3 -0
  321. package/dist/types/views/Editor/ExportDialog/ExportImage.vue.d.ts +7 -0
  322. package/dist/types/views/Editor/ExportDialog/ExportJSON.vue.d.ts +7 -0
  323. package/dist/types/views/Editor/ExportDialog/ExportPDF.vue.d.ts +7 -0
  324. package/dist/types/views/Editor/ExportDialog/ExportPPTX.vue.d.ts +7 -0
  325. package/dist/types/views/Editor/ExportDialog/ExportSpecificFile.vue.d.ts +7 -0
  326. package/dist/types/views/Editor/ExportDialog/index.vue.d.ts +3 -0
  327. package/dist/types/views/Editor/ImageLibPanel.vue.d.ts +3 -0
  328. package/dist/types/views/Editor/LatexEditorDialog.vue.d.ts +3 -0
  329. package/dist/types/views/Editor/MarkupPanel.vue.d.ts +3 -0
  330. package/dist/types/views/Editor/NotesPanel.vue.d.ts +3 -0
  331. package/dist/types/views/Editor/Remark/Editor.vue.d.ts +10 -0
  332. package/dist/types/views/Editor/Remark/index.vue.d.ts +10 -0
  333. package/dist/types/views/Editor/SearchPanel.vue.d.ts +3 -0
  334. package/dist/types/views/Editor/SelectPanel.vue.d.ts +3 -0
  335. package/dist/types/views/Editor/SymbolPanel.vue.d.ts +3 -0
  336. package/dist/types/views/Editor/Thumbnails/Templates.vue.d.ts +16 -0
  337. package/dist/types/views/Editor/Thumbnails/index.vue.d.ts +3 -0
  338. package/dist/types/views/Editor/Toolbar/ElementAnimationPanel.vue.d.ts +3 -0
  339. package/dist/types/views/Editor/Toolbar/ElementPositionPanel.vue.d.ts +3 -0
  340. package/dist/types/views/Editor/Toolbar/ElementStylePanel/AudioStylePanel.vue.d.ts +3 -0
  341. package/dist/types/views/Editor/Toolbar/ElementStylePanel/ChartStylePanel/ThemeColorsSetting.vue.d.ts +10 -0
  342. package/dist/types/views/Editor/Toolbar/ElementStylePanel/ChartStylePanel/index.vue.d.ts +3 -0
  343. package/dist/types/views/Editor/Toolbar/ElementStylePanel/ImageStylePanel.vue.d.ts +3 -0
  344. package/dist/types/views/Editor/Toolbar/ElementStylePanel/LatexStylePanel.vue.d.ts +3 -0
  345. package/dist/types/views/Editor/Toolbar/ElementStylePanel/LineStylePanel.vue.d.ts +3 -0
  346. package/dist/types/views/Editor/Toolbar/ElementStylePanel/ShapeStylePanel.vue.d.ts +3 -0
  347. package/dist/types/views/Editor/Toolbar/ElementStylePanel/TableStylePanel.vue.d.ts +3 -0
  348. package/dist/types/views/Editor/Toolbar/ElementStylePanel/TextStylePanel.vue.d.ts +3 -0
  349. package/dist/types/views/Editor/Toolbar/ElementStylePanel/VideoStylePanel.vue.d.ts +3 -0
  350. package/dist/types/views/Editor/Toolbar/ElementStylePanel/index.vue.d.ts +3 -0
  351. package/dist/types/views/Editor/Toolbar/MultiPositionPanel.vue.d.ts +3 -0
  352. package/dist/types/views/Editor/Toolbar/MultiStylePanel.vue.d.ts +3 -0
  353. package/dist/types/views/Editor/Toolbar/SlideAnimationPanel.vue.d.ts +3 -0
  354. package/dist/types/views/Editor/Toolbar/SlideDesignPanel/ThemeColorsSetting.vue.d.ts +7 -0
  355. package/dist/types/views/Editor/Toolbar/SlideDesignPanel/ThemeStylesExtract.vue.d.ts +7 -0
  356. package/dist/types/views/Editor/Toolbar/SlideDesignPanel/index.vue.d.ts +3 -0
  357. package/dist/types/views/Editor/Toolbar/common/ElementColorMask.vue.d.ts +3 -0
  358. package/dist/types/views/Editor/Toolbar/common/ElementFilter.vue.d.ts +3 -0
  359. package/dist/types/views/Editor/Toolbar/common/ElementFlip.vue.d.ts +3 -0
  360. package/dist/types/views/Editor/Toolbar/common/ElementOpacity.vue.d.ts +3 -0
  361. package/dist/types/views/Editor/Toolbar/common/ElementOutline.vue.d.ts +8 -0
  362. package/dist/types/views/Editor/Toolbar/common/ElementShadow.vue.d.ts +3 -0
  363. package/dist/types/views/Editor/Toolbar/common/RichTextBase.vue.d.ts +3 -0
  364. package/dist/types/views/Editor/Toolbar/common/SVGLine.vue.d.ts +15 -0
  365. package/dist/types/views/Editor/Toolbar/index.vue.d.ts +3 -0
  366. package/dist/types/views/Editor/index.vue.d.ts +3 -0
  367. package/dist/types/views/Mobile/MobileEditor/ElementToolbar.vue.d.ts +3 -0
  368. package/dist/types/views/Mobile/MobileEditor/Header.vue.d.ts +7 -0
  369. package/dist/types/views/Mobile/MobileEditor/MobileEditableElement.vue.d.ts +9 -0
  370. package/dist/types/views/Mobile/MobileEditor/MobileOperate.vue.d.ts +13 -0
  371. package/dist/types/views/Mobile/MobileEditor/SlideToolbar.vue.d.ts +3 -0
  372. package/dist/types/views/Mobile/MobileEditor/index.vue.d.ts +7 -0
  373. package/dist/types/views/Mobile/MobilePlayer.vue.d.ts +7 -0
  374. package/dist/types/views/Mobile/MobilePreview.vue.d.ts +7 -0
  375. package/dist/types/views/Mobile/MobileThumbnails.vue.d.ts +3 -0
  376. package/dist/types/views/Mobile/index.vue.d.ts +3 -0
  377. package/dist/types/views/Screen/AudienceView.vue.d.ts +3 -0
  378. package/dist/types/views/Screen/BaseView.vue.d.ts +6 -0
  379. package/dist/types/views/Screen/BottomThumbnails.vue.d.ts +3 -0
  380. package/dist/types/views/Screen/CountdownTimer.vue.d.ts +14 -0
  381. package/dist/types/views/Screen/PresenterView.vue.d.ts +6 -0
  382. package/dist/types/views/Screen/ScreenElement.vue.d.ts +11 -0
  383. package/dist/types/views/Screen/ScreenSlide.vue.d.ts +11 -0
  384. package/dist/types/views/Screen/ScreenSlideList.vue.d.ts +10 -0
  385. package/dist/types/views/Screen/SlideThumbnails.vue.d.ts +10 -0
  386. package/dist/types/views/Screen/WritingBoardTool.vue.d.ts +16 -0
  387. package/dist/types/views/Screen/hooks/useExecPlay.d.ts +23 -0
  388. package/dist/types/views/Screen/hooks/useFullscreen.d.ts +5 -0
  389. package/dist/types/views/Screen/hooks/useSlideSize.d.ts +6 -0
  390. package/dist/types/views/Screen/hooks/useSlidesWithTurningMode.d.ts +14 -0
  391. package/dist/types/views/Screen/index.vue.d.ts +3 -0
  392. package/dist/types/views/components/ThumbnailSlide/ThumbnailElement.vue.d.ts +8 -0
  393. package/dist/types/views/components/ThumbnailSlide/index.vue.d.ts +11 -0
  394. package/dist/types/views/components/element/AudioElement/AudioPlayer.vue.d.ts +14 -0
  395. package/dist/types/views/components/element/AudioElement/BaseAudioElement.vue.d.ts +7 -0
  396. package/dist/types/views/components/element/AudioElement/ScreenAudioElement.vue.d.ts +7 -0
  397. package/dist/types/views/components/element/AudioElement/index.vue.d.ts +10 -0
  398. package/dist/types/views/components/element/ChartElement/BaseChartElement.vue.d.ts +8 -0
  399. package/dist/types/views/components/element/ChartElement/Chart.vue.d.ts +14 -0
  400. package/dist/types/views/components/element/ChartElement/chartOption.d.ts +15 -0
  401. package/dist/types/views/components/element/ChartElement/index.vue.d.ts +10 -0
  402. package/dist/types/views/components/element/ElementOutline.vue.d.ts +9 -0
  403. package/dist/types/views/components/element/ImageElement/BaseImageElement.vue.d.ts +7 -0
  404. package/dist/types/views/components/element/ImageElement/ImageClipHandler.vue.d.ts +19 -0
  405. package/dist/types/views/components/element/ImageElement/ImageOutline/ImageEllipseOutline.vue.d.ts +9 -0
  406. package/dist/types/views/components/element/ImageElement/ImageOutline/ImagePolygonOutline.vue.d.ts +10 -0
  407. package/dist/types/views/components/element/ImageElement/ImageOutline/ImageRectOutline.vue.d.ts +12 -0
  408. package/dist/types/views/components/element/ImageElement/ImageOutline/index.vue.d.ts +7 -0
  409. package/dist/types/views/components/element/ImageElement/index.vue.d.ts +10 -0
  410. package/dist/types/views/components/element/ImageElement/useClipImage.d.ts +19 -0
  411. package/dist/types/views/components/element/ImageElement/useFilter.d.ts +6 -0
  412. package/dist/types/views/components/element/LatexElement/BaseLatexElement.vue.d.ts +7 -0
  413. package/dist/types/views/components/element/LatexElement/index.vue.d.ts +10 -0
  414. package/dist/types/views/components/element/LineElement/BaseLineElement.vue.d.ts +7 -0
  415. package/dist/types/views/components/element/LineElement/LinePointMarker.vue.d.ts +13 -0
  416. package/dist/types/views/components/element/LineElement/index.vue.d.ts +10 -0
  417. package/dist/types/views/components/element/ProsemirrorEditor.vue.d.ts +32 -0
  418. package/dist/types/views/components/element/ShapeElement/BaseShapeElement.vue.d.ts +7 -0
  419. package/dist/types/views/components/element/ShapeElement/GradientDefs.vue.d.ts +12 -0
  420. package/dist/types/views/components/element/ShapeElement/PatternDefs.vue.d.ts +7 -0
  421. package/dist/types/views/components/element/ShapeElement/index.vue.d.ts +10 -0
  422. package/dist/types/views/components/element/TableElement/BaseTableElement.vue.d.ts +7 -0
  423. package/dist/types/views/components/element/TableElement/CustomTextarea.vue.d.ts +14 -0
  424. package/dist/types/views/components/element/TableElement/EditableTable.vue.d.ts +23 -0
  425. package/dist/types/views/components/element/TableElement/StaticTable.vue.d.ts +15 -0
  426. package/dist/types/views/components/element/TableElement/index.vue.d.ts +10 -0
  427. package/dist/types/views/components/element/TableElement/useHideCells.d.ts +6 -0
  428. package/dist/types/views/components/element/TableElement/useSubThemeColor.d.ts +6 -0
  429. package/dist/types/views/components/element/TableElement/utils.d.ts +11 -0
  430. package/dist/types/views/components/element/TextElement/BaseTextElement.vue.d.ts +8 -0
  431. package/dist/types/views/components/element/TextElement/index.vue.d.ts +10 -0
  432. package/dist/types/views/components/element/VideoElement/BaseVideoElement.vue.d.ts +7 -0
  433. package/dist/types/views/components/element/VideoElement/ScreenVideoElement.vue.d.ts +7 -0
  434. package/dist/types/views/components/element/VideoElement/VideoPlayer/index.vue.d.ts +15 -0
  435. package/dist/types/views/components/element/VideoElement/VideoPlayer/useMSE.d.ts +3 -0
  436. package/dist/types/views/components/element/VideoElement/index.vue.d.ts +10 -0
  437. package/dist/types/views/components/element/hooks/useElementFill.d.ts +6 -0
  438. package/dist/types/views/components/element/hooks/useElementFlip.d.ts +5 -0
  439. package/dist/types/views/components/element/hooks/useElementOutline.d.ts +9 -0
  440. package/dist/types/views/components/element/hooks/useElementShadow.d.ts +6 -0
  441. package/docs/AGENTIC_BRIDGE.md +513 -0
  442. package/docs/EMBED.md +307 -0
  443. package/docs/RELEASE.md +47 -0
  444. package/package.json +127 -0
@@ -0,0 +1,9 @@
1
+ export declare const enum ToolbarStates {
2
+ EL_ANIMATION = "elAnimation",
3
+ EL_STYLE = "elStyle",
4
+ EL_POSITION = "elPosition",
5
+ SLIDE_DESIGN = "slideDesign",
6
+ SLIDE_ANIMATION = "slideAnimation",
7
+ MULTI_STYLE = "multiStyle",
8
+ MULTI_POSITION = "multiPosition"
9
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 复制文本到剪贴板
3
+ * @param text 文本内容
4
+ */
5
+ export declare const copyText: (text: string) => Promise<unknown>;
6
+ export declare const readClipboard: () => Promise<string>;
7
+ export declare const pasteCustomClipboardString: (text: string) => any;
8
+ export declare const pasteExcelClipboardString: (text: string) => string[][] | null;
9
+ export declare const pasteHTMLTableClipboardString: (text: string) => string[][] | null;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Pad the number of digits
3
+ * @param digit number
4
+ * @param len length
5
+ */
6
+ export declare const fillDigit: (digit: number, len: number) => string;
7
+ /**
8
+ * Check the device
9
+ */
10
+ export declare const isPC: () => boolean;
11
+ /**
12
+ * Check the URL string
13
+ */
14
+ export declare const isValidURL: (url: string) => boolean;
15
+ /**
16
+ * HTML转纯文本
17
+ */
18
+ export declare const htmlToText: (html: string) => string;
19
+ /**
20
+ * 浮点数比较
21
+ */
22
+ export declare const isFloatEqual: (a: number, b: number, epsilon?: number) => boolean;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Encrypt
3
+ * @param msg String to be encrypted
4
+ */
5
+ export declare const encrypt: (msg: string) => string;
6
+ /**
7
+ * Decrypt
8
+ * @param ciphertext String to be decrypted
9
+ */
10
+ export declare const decrypt: (ciphertext: string) => string;
@@ -0,0 +1,17 @@
1
+ import Dexie, { type EntityTable } from 'dexie';
2
+ import type { Slide } from '../types/slides';
3
+ export interface writingBoardImg {
4
+ id: string;
5
+ dataURL: string;
6
+ }
7
+ export interface Snapshot {
8
+ id: number;
9
+ index: number;
10
+ slides: Slide[];
11
+ }
12
+ export declare const deleteDiscardedDB: () => Promise<void>;
13
+ declare const db: Dexie & {
14
+ snapshots: EntityTable<Snapshot, "id">;
15
+ writingBoardImgs: EntityTable<writingBoardImg, "id">;
16
+ };
17
+ export { db };
@@ -0,0 +1,304 @@
1
+ import type { PPTElement, PPTLineElement, Slide } from '../types/slides';
2
+ interface RotatedElementData {
3
+ left: number;
4
+ top: number;
5
+ width: number;
6
+ height: number;
7
+ rotate: number;
8
+ }
9
+ interface Point {
10
+ x: number;
11
+ y: number;
12
+ }
13
+ interface IdMap {
14
+ [id: string]: string;
15
+ }
16
+ /**
17
+ * Bounding box of an element's rect after rotation on the canvas.
18
+ * @param element Position, size, and rotation of the element
19
+ */
20
+ export declare const getRectRotatedRange: (element: RotatedElementData) => {
21
+ xRange: number[];
22
+ yRange: number[];
23
+ };
24
+ /**
25
+ * Offset between an element's axis-aligned bounds before and after rotation.
26
+ * @param element Position, size, and rotation of the element
27
+ */
28
+ export declare const getRectRotatedOffset: (element: RotatedElementData) => {
29
+ offsetX: number;
30
+ offsetY: number;
31
+ };
32
+ /**
33
+ * Axis-aligned bounds of a single element on the canvas.
34
+ * @param element Element data
35
+ */
36
+ export declare const getElementRange: (element: PPTElement) => {
37
+ minX: number;
38
+ maxX: number;
39
+ minY: number;
40
+ maxY: number;
41
+ };
42
+ /**
43
+ * Combined axis-aligned bounds of multiple elements on the canvas.
44
+ * @param elementList Elements to measure
45
+ */
46
+ export declare const getElementListRange: (elementList: PPTElement[]) => {
47
+ minX: number;
48
+ maxX: number;
49
+ minY: number;
50
+ maxY: number;
51
+ };
52
+ /**
53
+ * Whether the selection is the full membership of a single group.
54
+ * @param elements Selected elements
55
+ */
56
+ export declare const isSingleGroupSelection: (elements: PPTElement[]) => boolean;
57
+ /**
58
+ * Whether the group can be rotated as a unit.
59
+ * @param elements Group members
60
+ */
61
+ export declare const canRotateGroupElements: (elements: PPTElement[]) => boolean;
62
+ /**
63
+ * Center of the combined bounds of a set of elements.
64
+ * @param elements Elements in the group
65
+ * @param rotate Reference rotation: bounds are aligned to this angle before computing the center
66
+ */
67
+ export declare const getGroupElementCenter: (elements: PPTElement[], rotate?: number) => Point;
68
+ /**
69
+ * Normalize an angle to the [-180, 180] range.
70
+ * @param angle Angle in degrees
71
+ */
72
+ export declare const normalizeAngle: (angle: number) => number;
73
+ /**
74
+ * Rotate a point around a center by the given angle.
75
+ * @param point Point to rotate
76
+ * @param center Rotation center
77
+ * @param angle Rotation in degrees
78
+ */
79
+ export declare const rotatePoint: (point: Point, center: Point, angle: number) => Point;
80
+ /**
81
+ * Rotate a rect-like element by rotating its center and adding to `rotate`.
82
+ * @param element Element to rotate
83
+ * @param center Group rotation center
84
+ * @param angle Rotation in degrees
85
+ */
86
+ export declare const rotateRectLikeElement: (element: Exclude<PPTElement, PPTLineElement>, center: Point, angle: number) => {
87
+ left: number;
88
+ top: number;
89
+ rotate: number;
90
+ type: "text";
91
+ content: string;
92
+ defaultFontName: string;
93
+ defaultColor: string;
94
+ outline?: import("../types/slides").PPTElementOutline;
95
+ fill?: string;
96
+ lineHeight?: number;
97
+ wordSpace?: number;
98
+ opacity?: number;
99
+ shadow?: import("../types/slides").PPTElementShadow;
100
+ paragraphSpace?: number;
101
+ vertical?: boolean;
102
+ textType?: import("../types/slides").TextType;
103
+ inset?: import("../types/slides").TextInset;
104
+ id: string;
105
+ lock?: boolean;
106
+ groupId?: string;
107
+ width: number;
108
+ height: number;
109
+ link?: import("../types/slides").PPTElementLink;
110
+ name?: string;
111
+ } | {
112
+ left: number;
113
+ top: number;
114
+ rotate: number;
115
+ type: "image";
116
+ fixedRatio: boolean;
117
+ src: string;
118
+ outline?: import("../types/slides").PPTElementOutline;
119
+ filters?: import("../types/slides").ImageElementFilters;
120
+ clip?: import("../types/slides").ImageElementClip;
121
+ flipH?: boolean;
122
+ flipV?: boolean;
123
+ shadow?: import("../types/slides").PPTElementShadow;
124
+ radius?: number;
125
+ colorMask?: string;
126
+ imageType?: import("../types/slides").ImageType;
127
+ id: string;
128
+ lock?: boolean;
129
+ groupId?: string;
130
+ width: number;
131
+ height: number;
132
+ link?: import("../types/slides").PPTElementLink;
133
+ name?: string;
134
+ } | {
135
+ left: number;
136
+ top: number;
137
+ rotate: number;
138
+ type: "shape";
139
+ viewBox: [number, number];
140
+ path: string;
141
+ fixedRatio: boolean;
142
+ fill: string;
143
+ gradient?: import("../types/slides").Gradient;
144
+ pattern?: string;
145
+ outline?: import("../types/slides").PPTElementOutline;
146
+ opacity?: number;
147
+ flipH?: boolean;
148
+ flipV?: boolean;
149
+ shadow?: import("../types/slides").PPTElementShadow;
150
+ special?: boolean;
151
+ text?: import("../types/slides").ShapeText;
152
+ pathFormula?: import("../types/slides").ShapePathFormulasKeys;
153
+ keypoints?: number[];
154
+ id: string;
155
+ lock?: boolean;
156
+ groupId?: string;
157
+ width: number;
158
+ height: number;
159
+ link?: import("../types/slides").PPTElementLink;
160
+ name?: string;
161
+ } | {
162
+ left: number;
163
+ top: number;
164
+ rotate: number;
165
+ type: "chart";
166
+ fill?: string;
167
+ chartType: import("../types/slides").ChartType;
168
+ data: import("../types/slides").ChartData;
169
+ options?: import("../types/slides").ChartOptions;
170
+ outline?: import("../types/slides").PPTElementOutline;
171
+ themeColors: string[];
172
+ textColor?: string;
173
+ lineColor?: string;
174
+ id: string;
175
+ lock?: boolean;
176
+ groupId?: string;
177
+ width: number;
178
+ height: number;
179
+ link?: import("../types/slides").PPTElementLink;
180
+ name?: string;
181
+ } | {
182
+ left: number;
183
+ top: number;
184
+ rotate: number;
185
+ type: "table";
186
+ outline: import("../types/slides").PPTElementOutline;
187
+ theme?: import("../types/slides").TableTheme;
188
+ colWidths: number[];
189
+ cellMinHeight: number;
190
+ data: import("../types/slides").TableCell[][];
191
+ id: string;
192
+ lock?: boolean;
193
+ groupId?: string;
194
+ width: number;
195
+ height: number;
196
+ link?: import("../types/slides").PPTElementLink;
197
+ name?: string;
198
+ } | {
199
+ left: number;
200
+ top: number;
201
+ rotate: number;
202
+ type: "latex";
203
+ latex: string;
204
+ path: string;
205
+ color: string;
206
+ strokeWidth: number;
207
+ viewBox: [number, number];
208
+ fixedRatio: boolean;
209
+ id: string;
210
+ lock?: boolean;
211
+ groupId?: string;
212
+ width: number;
213
+ height: number;
214
+ link?: import("../types/slides").PPTElementLink;
215
+ name?: string;
216
+ } | {
217
+ left: number;
218
+ top: number;
219
+ rotate: number;
220
+ type: "video";
221
+ src: string;
222
+ autoplay: boolean;
223
+ poster?: string;
224
+ ext?: string;
225
+ id: string;
226
+ lock?: boolean;
227
+ groupId?: string;
228
+ width: number;
229
+ height: number;
230
+ link?: import("../types/slides").PPTElementLink;
231
+ name?: string;
232
+ } | {
233
+ left: number;
234
+ top: number;
235
+ rotate: number;
236
+ type: "audio";
237
+ fixedRatio: boolean;
238
+ color: string;
239
+ loop: boolean;
240
+ autoplay: boolean;
241
+ src: string;
242
+ ext?: string;
243
+ id: string;
244
+ lock?: boolean;
245
+ groupId?: string;
246
+ width: number;
247
+ height: number;
248
+ link?: import("../types/slides").PPTElementLink;
249
+ name?: string;
250
+ };
251
+ /**
252
+ * Rotate a line element by rotating all control points and rebuilding line data.
253
+ * @param element Line element
254
+ * @param center Group rotation center
255
+ * @param angle Rotation in degrees
256
+ */
257
+ export declare const rotateLineElement: (element: PPTLineElement, center: Point, angle: number) => PPTLineElement;
258
+ export declare const getLineElementLength: (element: PPTLineElement) => number;
259
+ export declare const getBroken2LineDirection: (element: PPTLineElement) => import("../types/slides").Broken2LineDirection;
260
+ export interface AlignLine {
261
+ value: number;
262
+ range: [number, number];
263
+ }
264
+ /**
265
+ * Deduplicate alignment snap lines at the same position; merge their ranges to min/max.
266
+ * @param lines Alignment snap lines
267
+ */
268
+ export declare const uniqAlignLines: (lines: AlignLine[]) => AlignLine[];
269
+ /**
270
+ * Map each slide id to a new id (used when duplicating slides to preserve references).
271
+ * @param slides Slide list
272
+ */
273
+ export declare const createSlideIdMap: (slides: Slide[]) => IdMap;
274
+ /**
275
+ * Map each element (and group) id to a new id when copying elements.
276
+ * e.g. two grouped elements keep the same new groupId after copy.
277
+ * @param elements Element list
278
+ */
279
+ export declare const createElementIdMap: (elements: PPTElement[]) => {
280
+ groupIdMap: IdMap;
281
+ elIdMap: IdMap;
282
+ };
283
+ /**
284
+ * Derive table sub-theme colors (with alpha) from a theme color.
285
+ * @param themeColor Base theme color
286
+ */
287
+ export declare const getTableSubThemeColor: (themeColor: string) => string[];
288
+ /**
289
+ * SVG path `d` attribute for a line element (logical geometry).
290
+ * @param element Line element
291
+ */
292
+ export declare const getLineElementPath: (element: PPTLineElement) => string;
293
+ /**
294
+ * SVG path for rendering a line: markers stay at original start/end; stroke is inset at caps.
295
+ * @param element Line element
296
+ */
297
+ export declare const getLineElementRenderPath: (element: PPTLineElement) => string;
298
+ /**
299
+ * Whether an element is fully visible within a scroll parent's viewport (vertical).
300
+ * @param element DOM element
301
+ * @param parent Scroll container
302
+ */
303
+ export declare const isElementInViewport: (element: HTMLElement, parent: HTMLElement) => boolean;
304
+ export {};
@@ -0,0 +1,23 @@
1
+ import { type Emitter } from 'mitt';
2
+ export declare const enum EmitterEvents {
3
+ RICH_TEXT_COMMAND = "RICH_TEXT_COMMAND",
4
+ SYNC_RICH_TEXT_ATTRS_TO_STORE = "SYNC_RICH_TEXT_ATTRS_TO_STORE",
5
+ OPEN_CHART_DATA_EDITOR = "OPEN_CHART_DATA_EDITOR",
6
+ OPEN_LATEX_EDITOR = "OPEN_LATEX_EDITOR"
7
+ }
8
+ export interface RichTextAction {
9
+ command: string;
10
+ value?: string;
11
+ }
12
+ export interface RichTextCommand {
13
+ target?: string;
14
+ action: RichTextAction | RichTextAction[];
15
+ }
16
+ type Events = {
17
+ [EmitterEvents.RICH_TEXT_COMMAND]: RichTextCommand;
18
+ [EmitterEvents.SYNC_RICH_TEXT_ATTRS_TO_STORE]: void;
19
+ [EmitterEvents.OPEN_CHART_DATA_EDITOR]: void;
20
+ [EmitterEvents.OPEN_LATEX_EDITOR]: void;
21
+ };
22
+ declare const emitter: Emitter<Events>;
23
+ export default emitter;
@@ -0,0 +1 @@
1
+ export declare const isSystemFont: (font: string) => boolean;
@@ -0,0 +1,3 @@
1
+ export declare const enterFullscreen: () => void;
2
+ export declare const exitFullscreen: () => void;
3
+ export declare const isFullscreen: () => boolean;
@@ -0,0 +1,3 @@
1
+ import type { HTMLNode, AST } from './types';
2
+ export declare const splitHead: (str: string, sep: string) => string[];
3
+ export declare const format: (nodes: HTMLNode[]) => AST[];
@@ -0,0 +1,4 @@
1
+ import { toHTML } from './stringify';
2
+ export type { AST } from './types';
3
+ export declare const toAST: (str: string) => import("./types").AST[];
4
+ export { toHTML };
@@ -0,0 +1,2 @@
1
+ import type { Token } from './types';
2
+ export declare const lexer: (str: string) => Token[];
@@ -0,0 +1,15 @@
1
+ import type { Token, HTMLNode } from './types';
2
+ interface StackItem {
3
+ tagName: string | null;
4
+ children: HTMLNode[];
5
+ }
6
+ interface State {
7
+ stack: StackItem[];
8
+ cursor: number;
9
+ tokens: Token[];
10
+ }
11
+ export declare const parser: (tokens: Token[]) => HTMLNode[];
12
+ export declare const hasTerminalParent: (tagName: string, stack: StackItem[]) => boolean;
13
+ export declare const rewindStack: (stack: StackItem[], newLength: number) => void;
14
+ export declare const parse: (state: State) => void;
15
+ export {};
@@ -0,0 +1,3 @@
1
+ import type { AST, ElementAttribute } from './types';
2
+ export declare const formatAttributes: (attributes: ElementAttribute[]) => string;
3
+ export declare const toHTML: (tree: AST[]) => string;
@@ -0,0 +1,4 @@
1
+ export declare const childlessTags: string[];
2
+ export declare const closingTags: string[];
3
+ export declare const closingTagAncestorBreakers: Record<string, string[]>;
4
+ export declare const voidTags: string[];
@@ -0,0 +1,55 @@
1
+ export interface ElementAttribute {
2
+ key: string;
3
+ value: string | null;
4
+ }
5
+ export interface CommentElement {
6
+ type: 'comment';
7
+ content: string;
8
+ }
9
+ export interface TextElement {
10
+ type: 'text';
11
+ content: string;
12
+ }
13
+ export interface NormalElement {
14
+ type: 'element';
15
+ tagName: string;
16
+ children: HTMLNode[];
17
+ attributes: string[];
18
+ }
19
+ export type HTMLNode = CommentElement | TextElement | NormalElement;
20
+ export interface ElementAST {
21
+ type: 'element';
22
+ tagName: string;
23
+ children: AST[];
24
+ attributes: ElementAttribute[];
25
+ }
26
+ export interface CommentOrTextAST {
27
+ type: 'comment' | 'text';
28
+ content: string;
29
+ }
30
+ export type AST = CommentOrTextAST | ElementAST;
31
+ export interface TagStartToken {
32
+ type: 'tag-start';
33
+ close: boolean;
34
+ }
35
+ export interface TagEndToken {
36
+ type: 'tag-end';
37
+ close: boolean;
38
+ }
39
+ export interface TagToken {
40
+ type: 'tag';
41
+ content: string;
42
+ }
43
+ export interface TextToken {
44
+ type: 'text';
45
+ content: string;
46
+ }
47
+ export interface CommentToken {
48
+ type: 'comment';
49
+ content: string;
50
+ }
51
+ export interface AttributeToken {
52
+ type: 'attribute';
53
+ content: string;
54
+ }
55
+ export type Token = TagStartToken | TagEndToken | TagToken | TextToken | CommentToken | AttributeToken;
@@ -0,0 +1,25 @@
1
+ interface ImageSize {
2
+ width: number;
3
+ height: number;
4
+ }
5
+ /**
6
+ * Get the intrinsic width and height of an image.
7
+ * @param src Image URL
8
+ */
9
+ export declare const getImageSize: (src: string) => Promise<ImageSize>;
10
+ /**
11
+ * Read an image file as a data URL.
12
+ * @param file Image file
13
+ */
14
+ export declare const getImageDataURL: (file: File) => Promise<string>;
15
+ /**
16
+ * Check whether a string is SVG markup.
17
+ * @param text Text to validate
18
+ */
19
+ export declare const isSVGString: (text: string) => boolean;
20
+ /**
21
+ * Convert SVG markup to a File.
22
+ * @param svg SVG markup
23
+ */
24
+ export declare const svg2File: (svg: string) => File;
25
+ export {};
@@ -0,0 +1,28 @@
1
+ import { type AppContext } from 'vue';
2
+ export interface MessageOptions {
3
+ type?: 'info' | 'success' | 'warning' | 'error' | 'loading';
4
+ title?: string;
5
+ message?: string;
6
+ duration?: number;
7
+ closable?: boolean;
8
+ ctx?: AppContext;
9
+ onClose?: () => void;
10
+ }
11
+ export type MessageTypeOptions = Omit<MessageOptions, 'type' | 'message'>;
12
+ export interface MessageIntance {
13
+ id: string;
14
+ close: () => void;
15
+ }
16
+ export type MessageFn = (message: string, options?: MessageTypeOptions) => MessageIntance;
17
+ export interface Message {
18
+ (options: MessageOptions): MessageIntance;
19
+ info: MessageFn;
20
+ success: MessageFn;
21
+ error: MessageFn;
22
+ warning: MessageFn;
23
+ loading: MessageFn;
24
+ closeAll: () => void;
25
+ _context?: AppContext | null;
26
+ }
27
+ declare const message: Message;
28
+ export default message;
@@ -0,0 +1,5 @@
1
+ export declare function setPptistPortalTarget(target: HTMLElement | null): void;
2
+ export declare function clearPptistPortalTarget(target: HTMLElement): void;
3
+ export declare function getPptistPortalTarget(): HTMLElement;
4
+ export declare function queryPptist<T extends Element = Element>(selector: string): T | null;
5
+ export declare function queryPptistAll<T extends Element = Element>(selector: string): NodeListOf<T>;
@@ -0,0 +1,7 @@
1
+ interface PageSize {
2
+ width: number;
3
+ height: number;
4
+ margin: number;
5
+ }
6
+ export declare const print: (printNode: HTMLElement, size: PageSize) => void;
7
+ export {};
@@ -0,0 +1,2 @@
1
+ import { EditorView } from 'prosemirror-view';
2
+ export declare const replaceText: (view: EditorView, newText: string) => void;
@@ -0,0 +1,4 @@
1
+ import type { EditorView } from 'prosemirror-view';
2
+ type Style = Record<string, string>;
3
+ export declare const setListStyle: (view: EditorView, style: Style | Style[]) => import("prosemirror-state").Transaction | undefined;
4
+ export {};
@@ -0,0 +1,5 @@
1
+ import type { Schema } from 'prosemirror-model';
2
+ import type { Transaction } from 'prosemirror-state';
3
+ import type { EditorView } from 'prosemirror-view';
4
+ export declare const setTextAlign: (tr: Transaction, schema: Schema, alignment: string) => Transaction;
5
+ export declare const alignmentCommand: (view: EditorView, alignment: string) => void;
@@ -0,0 +1,3 @@
1
+ import type { EditorView } from 'prosemirror-view';
2
+ export declare const indentCommand: (view: EditorView, delta: number) => boolean;
3
+ export declare const textIndentCommand: (view: EditorView, delta: number) => boolean;
@@ -0,0 +1,8 @@
1
+ import type { NodeType } from 'prosemirror-model';
2
+ import type { Transaction, EditorState } from 'prosemirror-state';
3
+ interface TextStyleAttr {
4
+ color?: string;
5
+ fontsize?: string;
6
+ }
7
+ export declare const toggleList: (listType: NodeType, itemType: NodeType, listStyleType: string, textStyleAttr?: TextStyleAttr) => (state: EditorState, dispatch: (tr: Transaction) => void) => boolean;
8
+ export {};
@@ -0,0 +1,4 @@
1
+ import { type DirectEditorProps, EditorView } from 'prosemirror-view';
2
+ import { type PluginOptions } from './plugins/index';
3
+ export declare const createDocument: (content: string) => import("prosemirror-model").Node;
4
+ export declare const initProsemirrorEditor: (dom: Element, content: string, props: Omit<DirectEditorProps, "state">, pluginOptions?: PluginOptions) => EditorView;
@@ -0,0 +1,10 @@
1
+ import type { Schema } from 'prosemirror-model';
2
+ export interface PluginOptions {
3
+ placeholder?: string;
4
+ }
5
+ export declare const buildPlugins: (schema: Schema, options?: PluginOptions) => (import("prosemirror-state").Plugin<{
6
+ transform: import("prosemirror-state").Transaction;
7
+ from: number;
8
+ to: number;
9
+ text: string;
10
+ } | null> | import("prosemirror-state").Plugin<any>)[];
@@ -0,0 +1,7 @@
1
+ import type { Schema } from 'prosemirror-model';
2
+ export declare const buildInputRules: (schema: Schema) => import("prosemirror-state").Plugin<{
3
+ transform: import("prosemirror-state").Transaction;
4
+ from: number;
5
+ to: number;
6
+ text: string;
7
+ } | null>;
@@ -0,0 +1,3 @@
1
+ import type { Schema } from 'prosemirror-model';
2
+ import type { Command } from 'prosemirror-state';
3
+ export declare const buildKeymap: (schema: Schema) => Record<string, Command>;
@@ -0,0 +1,2 @@
1
+ import { Plugin } from 'prosemirror-state';
2
+ export declare const placeholderPlugin: (placeholder: string) => Plugin<any>;
@@ -0,0 +1,25 @@
1
+ export declare const schemaNodes: {
2
+ doc: import("prosemirror-model").NodeSpec;
3
+ paragraph: import("prosemirror-model").NodeSpec;
4
+ blockquote: import("prosemirror-model").NodeSpec;
5
+ text: import("prosemirror-model").NodeSpec;
6
+ ordered_list: import("prosemirror-model").NodeSpec;
7
+ bullet_list: import("prosemirror-model").NodeSpec;
8
+ list_item: import("prosemirror-model").NodeSpec;
9
+ };
10
+ export declare const schemaMarks: {
11
+ em: import("prosemirror-model").MarkSpec;
12
+ strong: import("prosemirror-model").MarkSpec;
13
+ fontsize: import("prosemirror-model").MarkSpec;
14
+ fontname: import("prosemirror-model").MarkSpec;
15
+ code: import("prosemirror-model").MarkSpec;
16
+ textgradient: import("prosemirror-model").MarkSpec;
17
+ forecolor: import("prosemirror-model").MarkSpec;
18
+ backcolor: import("prosemirror-model").MarkSpec;
19
+ subscript: import("prosemirror-model").MarkSpec;
20
+ superscript: import("prosemirror-model").MarkSpec;
21
+ strikethrough: import("prosemirror-model").MarkSpec;
22
+ underline: import("prosemirror-model").MarkSpec;
23
+ link: import("prosemirror-model").MarkSpec;
24
+ mark: import("prosemirror-model").MarkSpec;
25
+ };