texditor 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 (330) hide show
  1. package/LICENSE.md +9 -0
  2. package/README.md +232 -0
  3. package/dist/core/base/base-model.d.ts +160 -0
  4. package/dist/core/base/base-model.d.ts.map +1 -0
  5. package/dist/core/base/event-manager.d.ts +20 -0
  6. package/dist/core/base/event-manager.d.ts.map +1 -0
  7. package/dist/core/base/index.d.ts +3 -0
  8. package/dist/core/base/index.d.ts.map +1 -0
  9. package/dist/core/base.d.ts +2 -0
  10. package/dist/core/base.mjs +1 -0
  11. package/dist/core/block-manager.d.ts +91 -0
  12. package/dist/core/block-manager.d.ts.map +1 -0
  13. package/dist/core/commands.d.ts +73 -0
  14. package/dist/core/commands.d.ts.map +1 -0
  15. package/dist/core/config.d.ts +11 -0
  16. package/dist/core/config.d.ts.map +1 -0
  17. package/dist/core/events.d.ts +121 -0
  18. package/dist/core/events.d.ts.map +1 -0
  19. package/dist/core/extensions.d.ts +23 -0
  20. package/dist/core/extensions.d.ts.map +1 -0
  21. package/dist/core/history-manager.d.ts +76 -0
  22. package/dist/core/history-manager.d.ts.map +1 -0
  23. package/dist/core/i18n.d.ts +29 -0
  24. package/dist/core/i18n.d.ts.map +1 -0
  25. package/dist/core/models/action-model.d.ts +54 -0
  26. package/dist/core/models/action-model.d.ts.map +1 -0
  27. package/dist/core/models/block-model.d.ts +396 -0
  28. package/dist/core/models/block-model.d.ts.map +1 -0
  29. package/dist/core/models/extension-model.d.ts +25 -0
  30. package/dist/core/models/extension-model.d.ts.map +1 -0
  31. package/dist/core/models/file-action-model.d.ts +20 -0
  32. package/dist/core/models/file-action-model.d.ts.map +1 -0
  33. package/dist/core/models/index.d.ts +7 -0
  34. package/dist/core/models/index.d.ts.map +1 -0
  35. package/dist/core/models/tool-model.d.ts +69 -0
  36. package/dist/core/models/tool-model.d.ts.map +1 -0
  37. package/dist/core/models.d.ts +2 -0
  38. package/dist/core/models.mjs +6 -0
  39. package/dist/core/security/sanitizer.d.ts +65 -0
  40. package/dist/core/security/sanitizer.d.ts.map +1 -0
  41. package/dist/core/selection-api.d.ts +52 -0
  42. package/dist/core/selection-api.d.ts.map +1 -0
  43. package/dist/core/tools.d.ts +27 -0
  44. package/dist/core/tools.d.ts.map +1 -0
  45. package/dist/core/ui/slider.d.ts +50 -0
  46. package/dist/core/ui/slider.d.ts.map +1 -0
  47. package/dist/core/ui/toasts.d.ts +23 -0
  48. package/dist/core/ui/toasts.d.ts.map +1 -0
  49. package/dist/core/ui/virtual-selection.d.ts +171 -0
  50. package/dist/core/ui/virtual-selection.d.ts.map +1 -0
  51. package/dist/entities/actions/convert-action.d.ts +9 -0
  52. package/dist/entities/actions/convert-action.d.ts.map +1 -0
  53. package/dist/entities/actions/create-action.d.ts +8 -0
  54. package/dist/entities/actions/create-action.d.ts.map +1 -0
  55. package/dist/entities/actions/delete-action.d.ts +8 -0
  56. package/dist/entities/actions/delete-action.d.ts.map +1 -0
  57. package/dist/entities/actions/index.d.ts +7 -0
  58. package/dist/entities/actions/index.d.ts.map +1 -0
  59. package/dist/entities/actions/move-down-action.d.ts +9 -0
  60. package/dist/entities/actions/move-down-action.d.ts.map +1 -0
  61. package/dist/entities/actions/move-up-action.d.ts +9 -0
  62. package/dist/entities/actions/move-up-action.d.ts.map +1 -0
  63. package/dist/entities/actions.d.ts +2 -0
  64. package/dist/entities/actions.mjs +6 -0
  65. package/dist/entities/blocks/code/index.d.ts +48 -0
  66. package/dist/entities/blocks/code/index.d.ts.map +1 -0
  67. package/dist/entities/blocks/code/languages.d.ts +4 -0
  68. package/dist/entities/blocks/code/languages.d.ts.map +1 -0
  69. package/dist/entities/blocks/files/actions/DeleteFileAction.d.ts +7 -0
  70. package/dist/entities/blocks/files/actions/DeleteFileAction.d.ts.map +1 -0
  71. package/dist/entities/blocks/files/actions/DownloadFileAction.d.ts +12 -0
  72. package/dist/entities/blocks/files/actions/DownloadFileAction.d.ts.map +1 -0
  73. package/dist/entities/blocks/files/actions/EditFileAction.d.ts +32 -0
  74. package/dist/entities/blocks/files/actions/EditFileAction.d.ts.map +1 -0
  75. package/dist/entities/blocks/files/actions/MoveLeftFileAction.d.ts +8 -0
  76. package/dist/entities/blocks/files/actions/MoveLeftFileAction.d.ts.map +1 -0
  77. package/dist/entities/blocks/files/actions/MoveRightFileAction.d.ts +8 -0
  78. package/dist/entities/blocks/files/actions/MoveRightFileAction.d.ts.map +1 -0
  79. package/dist/entities/blocks/files/index.d.ts +185 -0
  80. package/dist/entities/blocks/files/index.d.ts.map +1 -0
  81. package/dist/entities/blocks/gallery/index.d.ts +60 -0
  82. package/dist/entities/blocks/gallery/index.d.ts.map +1 -0
  83. package/dist/entities/blocks/header/H1.d.ts +4 -0
  84. package/dist/entities/blocks/header/H1.d.ts.map +1 -0
  85. package/dist/entities/blocks/header/H2.d.ts +6 -0
  86. package/dist/entities/blocks/header/H2.d.ts.map +1 -0
  87. package/dist/entities/blocks/header/H3.d.ts +6 -0
  88. package/dist/entities/blocks/header/H3.d.ts.map +1 -0
  89. package/dist/entities/blocks/header/H4.d.ts +6 -0
  90. package/dist/entities/blocks/header/H4.d.ts.map +1 -0
  91. package/dist/entities/blocks/header/H5.d.ts +6 -0
  92. package/dist/entities/blocks/header/H5.d.ts.map +1 -0
  93. package/dist/entities/blocks/header/H6.d.ts +6 -0
  94. package/dist/entities/blocks/header/H6.d.ts.map +1 -0
  95. package/dist/entities/blocks/header/index.d.ts +6 -0
  96. package/dist/entities/blocks/header/index.d.ts.map +1 -0
  97. package/dist/entities/blocks/index.d.ts +14 -0
  98. package/dist/entities/blocks/index.d.ts.map +1 -0
  99. package/dist/entities/blocks/list/index.d.ts +6 -0
  100. package/dist/entities/blocks/list/index.d.ts.map +1 -0
  101. package/dist/entities/blocks/list/ol.d.ts +6 -0
  102. package/dist/entities/blocks/list/ol.d.ts.map +1 -0
  103. package/dist/entities/blocks/paragraph/index.d.ts +6 -0
  104. package/dist/entities/blocks/paragraph/index.d.ts.map +1 -0
  105. package/dist/entities/blocks.d.ts +2 -0
  106. package/dist/entities/blocks.mjs +13 -0
  107. package/dist/entities/extensions/delete-selected.d.ts +9 -0
  108. package/dist/entities/extensions/delete-selected.d.ts.map +1 -0
  109. package/dist/entities/extensions/index.d.ts +5 -0
  110. package/dist/entities/extensions/index.d.ts.map +1 -0
  111. package/dist/entities/extensions/redo.d.ts +8 -0
  112. package/dist/entities/extensions/redo.d.ts.map +1 -0
  113. package/dist/entities/extensions/undo.d.ts +8 -0
  114. package/dist/entities/extensions/undo.d.ts.map +1 -0
  115. package/dist/entities/extensions.d.ts +2 -0
  116. package/dist/entities/extensions.mjs +4 -0
  117. package/dist/entities/tools/bold.d.ts +6 -0
  118. package/dist/entities/tools/bold.d.ts.map +1 -0
  119. package/dist/entities/tools/clear-formatting.d.ts +7 -0
  120. package/dist/entities/tools/clear-formatting.d.ts.map +1 -0
  121. package/dist/entities/tools/index.d.ts +10 -0
  122. package/dist/entities/tools/index.d.ts.map +1 -0
  123. package/dist/entities/tools/inline-code.d.ts +6 -0
  124. package/dist/entities/tools/inline-code.d.ts.map +1 -0
  125. package/dist/entities/tools/italic.d.ts +6 -0
  126. package/dist/entities/tools/italic.d.ts.map +1 -0
  127. package/dist/entities/tools/link.d.ts +35 -0
  128. package/dist/entities/tools/link.d.ts.map +1 -0
  129. package/dist/entities/tools/marker.d.ts +6 -0
  130. package/dist/entities/tools/marker.d.ts.map +1 -0
  131. package/dist/entities/tools/subscript.d.ts +6 -0
  132. package/dist/entities/tools/subscript.d.ts.map +1 -0
  133. package/dist/entities/tools/superscript.d.ts +6 -0
  134. package/dist/entities/tools/superscript.d.ts.map +1 -0
  135. package/dist/entities/tools.d.ts +2 -0
  136. package/dist/entities/tools.mjs +9 -0
  137. package/dist/icons/index.d.ts +42 -0
  138. package/dist/icons/index.d.ts.map +1 -0
  139. package/dist/locales/en.d.ts +66 -0
  140. package/dist/locales/en.d.ts.map +1 -0
  141. package/dist/locales/index.d.ts +4 -0
  142. package/dist/locales/index.d.ts.map +1 -0
  143. package/dist/locales/ru.d.ts +66 -0
  144. package/dist/locales/ru.d.ts.map +1 -0
  145. package/dist/locales.d.ts +2 -0
  146. package/dist/locales.mjs +3 -0
  147. package/dist/main.d.ts +6 -0
  148. package/dist/node_modules/snappykit/dist/snappykit.mjs +440 -0
  149. package/dist/node_modules/sortum/dist/sortum.mjs +588 -0
  150. package/dist/src/core/base/base-model.mjs +184 -0
  151. package/dist/src/core/base/event-manager.mjs +31 -0
  152. package/dist/src/core/block-manager.mjs +499 -0
  153. package/dist/src/core/commands.mjs +311 -0
  154. package/dist/src/core/config.mjs +12 -0
  155. package/dist/src/core/events.mjs +369 -0
  156. package/dist/src/core/extensions.mjs +48 -0
  157. package/dist/src/core/history-manager.mjs +107 -0
  158. package/dist/src/core/i18n.mjs +25 -0
  159. package/dist/src/core/models/action-model.mjs +72 -0
  160. package/dist/src/core/models/block-model.mjs +619 -0
  161. package/dist/src/core/models/extension-model.mjs +28 -0
  162. package/dist/src/core/models/file-action-model.mjs +24 -0
  163. package/dist/src/core/models/tool-model.mjs +80 -0
  164. package/dist/src/core/security/sanitizer.mjs +130 -0
  165. package/dist/src/core/selection-api.mjs +202 -0
  166. package/dist/src/core/tools.mjs +88 -0
  167. package/dist/src/core/ui/slider.mjs +81 -0
  168. package/dist/src/core/ui/toasts.mjs +55 -0
  169. package/dist/src/core/ui/virtual-selection.mjs +205 -0
  170. package/dist/src/entities/actions/convert-action.mjs +43 -0
  171. package/dist/src/entities/actions/create-action.mjs +39 -0
  172. package/dist/src/entities/actions/delete-action.mjs +19 -0
  173. package/dist/src/entities/actions/move-down-action.mjs +22 -0
  174. package/dist/src/entities/actions/move-up-action.mjs +22 -0
  175. package/dist/src/entities/blocks/code/index.mjs +144 -0
  176. package/dist/src/entities/blocks/code/languages.mjs +54 -0
  177. package/dist/src/entities/blocks/files/actions/DeleteFileAction.mjs +21 -0
  178. package/dist/src/entities/blocks/files/actions/DownloadFileAction.mjs +44 -0
  179. package/dist/src/entities/blocks/files/actions/EditFileAction.mjs +111 -0
  180. package/dist/src/entities/blocks/files/actions/MoveLeftFileAction.mjs +24 -0
  181. package/dist/src/entities/blocks/files/actions/MoveRightFileAction.mjs +24 -0
  182. package/dist/src/entities/blocks/files/index.mjs +424 -0
  183. package/dist/src/entities/blocks/gallery/index.mjs +141 -0
  184. package/dist/src/entities/blocks/header/H1.mjs +5 -0
  185. package/dist/src/entities/blocks/header/H2.mjs +16 -0
  186. package/dist/src/entities/blocks/header/H3.mjs +16 -0
  187. package/dist/src/entities/blocks/header/H4.mjs +16 -0
  188. package/dist/src/entities/blocks/header/H5.mjs +16 -0
  189. package/dist/src/entities/blocks/header/H6.mjs +16 -0
  190. package/dist/src/entities/blocks/header/index.mjs +46 -0
  191. package/dist/src/entities/blocks/list/index.mjs +51 -0
  192. package/dist/src/entities/blocks/list/ol.mjs +16 -0
  193. package/dist/src/entities/blocks/paragraph/index.mjs +46 -0
  194. package/dist/src/entities/extensions/delete-selected.mjs +27 -0
  195. package/dist/src/entities/extensions/redo.mjs +22 -0
  196. package/dist/src/entities/extensions/undo.mjs +22 -0
  197. package/dist/src/entities/tools/bold.mjs +16 -0
  198. package/dist/src/entities/tools/clear-formatting.mjs +20 -0
  199. package/dist/src/entities/tools/inline-code.mjs +19 -0
  200. package/dist/src/entities/tools/italic.mjs +16 -0
  201. package/dist/src/entities/tools/link.mjs +89 -0
  202. package/dist/src/entities/tools/marker.mjs +17 -0
  203. package/dist/src/entities/tools/subscript.mjs +17 -0
  204. package/dist/src/entities/tools/superscript.mjs +18 -0
  205. package/dist/src/icons/index.mjs +4 -0
  206. package/dist/src/locales/en.mjs +68 -0
  207. package/dist/src/locales/ru.mjs +68 -0
  208. package/dist/src/store/currentStore.mjs +8 -0
  209. package/dist/src/store/mainStore.mjs +4 -0
  210. package/dist/src/utils/ajax.mjs +35 -0
  211. package/dist/src/utils/common.mjs +26 -0
  212. package/dist/src/utils/icon.mjs +12 -0
  213. package/dist/src/utils/sanitizer.mjs +20 -0
  214. package/dist/src/views/extensions.mjs +18 -0
  215. package/dist/src/views/main.mjs +19 -0
  216. package/dist/src/views/tools.mjs +9 -0
  217. package/dist/store/currentStore.d.ts +15 -0
  218. package/dist/store/currentStore.d.ts.map +1 -0
  219. package/dist/store/mainStore.d.ts +14 -0
  220. package/dist/store/mainStore.d.ts.map +1 -0
  221. package/dist/styles/animations.css +1 -0
  222. package/dist/styles/core/ui/selection.css +1 -0
  223. package/dist/styles/core/ui/slider.css +1 -0
  224. package/dist/styles/entities/blocks/code.css +1 -0
  225. package/dist/styles/entities/blocks/files.css +1 -0
  226. package/dist/styles/entities/blocks/gallery.css +1 -0
  227. package/dist/styles/entities/blocks/list.css +1 -0
  228. package/dist/styles/entities/blocks/paragraph.css +1 -0
  229. package/dist/styles/entities/tools/inline-code.css +1 -0
  230. package/dist/styles/entities/tools/link.css +1 -0
  231. package/dist/styles/texditor.css +1 -0
  232. package/dist/styles/theme.css +42 -0
  233. package/dist/texditor.d.ts +68 -0
  234. package/dist/texditor.d.ts.map +1 -0
  235. package/dist/texditor.mjs +138 -0
  236. package/dist/types/core/base/base-model.d.ts +212 -0
  237. package/dist/types/core/base/base-model.d.ts.map +1 -0
  238. package/dist/types/core/base/event-manager.d.ts +42 -0
  239. package/dist/types/core/base/event-manager.d.ts.map +1 -0
  240. package/dist/types/core/base/index.d.ts +3 -0
  241. package/dist/types/core/base/index.d.ts.map +1 -0
  242. package/dist/types/core/block-manager.d.ts +223 -0
  243. package/dist/types/core/block-manager.d.ts.map +1 -0
  244. package/dist/types/core/commands.d.ts +93 -0
  245. package/dist/types/core/commands.d.ts.map +1 -0
  246. package/dist/types/core/config.d.ts +86 -0
  247. package/dist/types/core/config.d.ts.map +1 -0
  248. package/dist/types/core/events.d.ts +58 -0
  249. package/dist/types/core/events.d.ts.map +1 -0
  250. package/dist/types/core/extensions.d.ts +19 -0
  251. package/dist/types/core/extensions.d.ts.map +1 -0
  252. package/dist/types/core/history-manager.d.ts +72 -0
  253. package/dist/types/core/history-manager.d.ts.map +1 -0
  254. package/dist/types/core/http/index.d.ts +2 -0
  255. package/dist/types/core/http/index.d.ts.map +1 -0
  256. package/dist/types/core/http/response.d.ts +6 -0
  257. package/dist/types/core/http/response.d.ts.map +1 -0
  258. package/dist/types/core/i18n.d.ts +40 -0
  259. package/dist/types/core/i18n.d.ts.map +1 -0
  260. package/dist/types/core/index.d.ts +15 -0
  261. package/dist/types/core/index.d.ts.map +1 -0
  262. package/dist/types/core/models/action-model.d.ts +46 -0
  263. package/dist/types/core/models/action-model.d.ts.map +1 -0
  264. package/dist/types/core/models/block-model.d.ts +404 -0
  265. package/dist/types/core/models/block-model.d.ts.map +1 -0
  266. package/dist/types/core/models/extension-model.d.ts +41 -0
  267. package/dist/types/core/models/extension-model.d.ts.map +1 -0
  268. package/dist/types/core/models/file-action-model.d.ts +36 -0
  269. package/dist/types/core/models/file-action-model.d.ts.map +1 -0
  270. package/dist/types/core/models/index.d.ts +7 -0
  271. package/dist/types/core/models/index.d.ts.map +1 -0
  272. package/dist/types/core/models/tool-model.d.ts +54 -0
  273. package/dist/types/core/models/tool-model.d.ts.map +1 -0
  274. package/dist/types/core/sanitizer.d.ts +27 -0
  275. package/dist/types/core/sanitizer.d.ts.map +1 -0
  276. package/dist/types/core/selection-api.d.ts +116 -0
  277. package/dist/types/core/selection-api.d.ts.map +1 -0
  278. package/dist/types/core/tools.d.ts +35 -0
  279. package/dist/types/core/tools.d.ts.map +1 -0
  280. package/dist/types/core/ui/index.d.ts +4 -0
  281. package/dist/types/core/ui/index.d.ts.map +1 -0
  282. package/dist/types/core/ui/slider.d.ts +45 -0
  283. package/dist/types/core/ui/slider.d.ts.map +1 -0
  284. package/dist/types/core/ui/toasts.d.ts +58 -0
  285. package/dist/types/core/ui/toasts.d.ts.map +1 -0
  286. package/dist/types/core/ui/virtual-selection.d.ts +83 -0
  287. package/dist/types/core/ui/virtual-selection.d.ts.map +1 -0
  288. package/dist/types/entities/blocks/code.d.ts +4 -0
  289. package/dist/types/entities/blocks/code.d.ts.map +1 -0
  290. package/dist/types/entities/blocks/files.d.ts +170 -0
  291. package/dist/types/entities/blocks/files.d.ts.map +1 -0
  292. package/dist/types/entities/blocks/gallery.d.ts +40 -0
  293. package/dist/types/entities/blocks/gallery.d.ts.map +1 -0
  294. package/dist/types/entities/blocks/header.d.ts +4 -0
  295. package/dist/types/entities/blocks/header.d.ts.map +1 -0
  296. package/dist/types/entities/blocks/index.d.ts +7 -0
  297. package/dist/types/entities/blocks/index.d.ts.map +1 -0
  298. package/dist/types/entities/blocks/list.d.ts +4 -0
  299. package/dist/types/entities/blocks/list.d.ts.map +1 -0
  300. package/dist/types/entities/blocks/paragraph.d.ts +4 -0
  301. package/dist/types/entities/blocks/paragraph.d.ts.map +1 -0
  302. package/dist/types/entities/index.d.ts +2 -0
  303. package/dist/types/entities/index.d.ts.map +1 -0
  304. package/dist/types/index.d.ts +5 -0
  305. package/dist/types/index.d.ts.map +1 -0
  306. package/dist/types/texditor.d.ts +66 -0
  307. package/dist/types/texditor.d.ts.map +1 -0
  308. package/dist/types/utils/ajax.d.ts +31 -0
  309. package/dist/types/utils/ajax.d.ts.map +1 -0
  310. package/dist/types/utils/icon.d.ts +10 -0
  311. package/dist/types/utils/icon.d.ts.map +1 -0
  312. package/dist/types/utils/index.d.ts +3 -0
  313. package/dist/types/utils/index.d.ts.map +1 -0
  314. package/dist/utils/ajax.d.ts +9 -0
  315. package/dist/utils/ajax.d.ts.map +1 -0
  316. package/dist/utils/common.d.ts +28 -0
  317. package/dist/utils/common.d.ts.map +1 -0
  318. package/dist/utils/icon.d.ts +12 -0
  319. package/dist/utils/icon.d.ts.map +1 -0
  320. package/dist/utils/index.d.ts +5 -0
  321. package/dist/utils/index.d.ts.map +1 -0
  322. package/dist/utils/sanitizer.d.ts +8 -0
  323. package/dist/utils/sanitizer.d.ts.map +1 -0
  324. package/dist/views/extensions.d.ts +3 -0
  325. package/dist/views/extensions.d.ts.map +1 -0
  326. package/dist/views/main.d.ts +3 -0
  327. package/dist/views/main.d.ts.map +1 -0
  328. package/dist/views/tools.d.ts +2 -0
  329. package/dist/views/tools.d.ts.map +1 -0
  330. package/package.json +75 -0
@@ -0,0 +1,121 @@
1
+ import { TexditorEventBase, Texditor, Events as IEvents } from '../types';
2
+ import { default as EventManager } from './base/event-manager';
3
+ export default class Events extends EventManager implements IEvents {
4
+ /** Reference to the main editor instance */
5
+ private editor;
6
+ /** Unique identifier for event listeners to prevent conflicts */
7
+ private eventId;
8
+ private isPaused;
9
+ constructor(editor: Texditor);
10
+ /** @see IEvents.refresh */
11
+ refresh(): void;
12
+ /** @see IEvents.change */
13
+ change(event: TexditorEventBase): void;
14
+ /**
15
+ * Handles focus events on blocks
16
+ * @param evt - Focus event
17
+ */
18
+ private onFocusHandle;
19
+ /**
20
+ * Handles click events on blocks
21
+ * @param evt - Mouse event
22
+ */
23
+ private onClickHandle;
24
+ /**
25
+ * Handles blur events on blocks
26
+ * @param evt - Focus event
27
+ */
28
+ private onBlurHandle;
29
+ /**
30
+ * Handles keyup events on blocks
31
+ * @param evt - Keyboard event
32
+ */
33
+ private onKeyUpHandle;
34
+ /**
35
+ * Sets the current block index based on target
36
+ * @param target - Event target
37
+ */
38
+ private setIndexByTarget;
39
+ /**
40
+ * Sets the current block index and updates active item styling
41
+ * @param index - Block index to set as current
42
+ */
43
+ private setIndex;
44
+ /**
45
+ * Handles document-level keydown events for global shortcuts
46
+ * @param evt - Keyboard event
47
+ */
48
+ private onDocumentKeyDownHandle;
49
+ /**
50
+ * Handles keydown events with special behavior for Enter, Backspace, etc.
51
+ * @param evt - Keyboard event
52
+ */
53
+ private onKeyDownHandle;
54
+ /**
55
+ * Handles keyboard shortcuts for undo/redo operations
56
+ * @param evt - Keyboard event
57
+ * @returns True if undo/redo was handled
58
+ */
59
+ private handleHistoryShortcuts;
60
+ /**
61
+ * Builds a structured paste map from child nodes, classifying them as blocks, text nodes, or generic nodes.
62
+ * @param childNodes - The child nodes to process.
63
+ * @returns A paste map with the determined schema and classified items.
64
+ */
65
+ private createPasteMap;
66
+ /**
67
+ * Handles paste events with smart content parsing
68
+ * @param evt - Clipboard event
69
+ */
70
+ private onPasteHandle;
71
+ /**
72
+ * The basic DOM event
73
+ * @param name - Event Name
74
+ * @param evt - The DOM event object.
75
+ */
76
+ private defEvent;
77
+ /**
78
+ * Prevents default drag start behavior
79
+ * @param evt - Drag event
80
+ */
81
+ private onDragStart;
82
+ /**
83
+ * Prevents default drag leave behavior
84
+ * @param evt - Drag event
85
+ */
86
+ private onDragLeave;
87
+ /**
88
+ * Prevents default drag over behavior
89
+ * @param evt - Drag event
90
+ */
91
+ private onDragOver;
92
+ /**
93
+ * Prevents default drag behavior
94
+ * @param evt - Drag event
95
+ */
96
+ private onDrag;
97
+ /**
98
+ * Prevents default drag end behavior
99
+ * @param evt - Drag event
100
+ */
101
+ private onDragEnd;
102
+ /**
103
+ * Prevents default drop behavior
104
+ * @param evt - Drag event
105
+ */
106
+ private onDrop;
107
+ /**
108
+ * Handles selection change events
109
+ * Updates tools and actions based on current selection
110
+ * @param evt - Event
111
+ */
112
+ private onSelectionChangeHandle;
113
+ /**
114
+ * Provides the parent component with access to the child's current editor instance.
115
+ * Returns the editor object if initialized, or `null` otherwise.
116
+ */
117
+ protected provideEditor(): Texditor | null;
118
+ /** @see IEvents.destroy */
119
+ destroy(): void;
120
+ }
121
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/core/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAKV,iBAAiB,EACjB,QAAQ,EACR,MAAM,IAAI,OAAO,EAClB,MAAM,SAAS,CAAC;AAIjB,OAAO,YAAY,MAAM,sBAAsB,CAAC;AAwBhD,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,YAAa,YAAW,OAAO;IACjE,4CAA4C;IAC5C,OAAO,CAAC,MAAM,CAAW;IAEzB,iEAAiE;IACjE,OAAO,CAAC,OAAO,CAA0B;IAEzC,OAAO,CAAC,QAAQ,CAAkB;gBAEtB,MAAM,EAAE,QAAQ;IAK5B,2BAA2B;IAC3B,OAAO,IAAI,IAAI;IAmCf,0BAA0B;IAC1B,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;IA0BtC;;;OAGG;IACH,OAAO,CAAC,aAAa;IAUrB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAWrB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAQpB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAmBrB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAaxB;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAuBhB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAiC/B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAoJvB;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;;;OAIG;IACH,OAAO,CAAC,cAAc;IA0GtB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAiLrB;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAYhB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAInB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAInB;;;OAGG;IACH,OAAO,CAAC,UAAU;IAIlB;;;OAGG;IACH,OAAO,CAAC,MAAM;IAId;;;OAGG;IACH,OAAO,CAAC,SAAS;IAIjB;;;OAGG;IACH,OAAO,CAAC,MAAM;IAId;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IA8D/B;;;OAGG;IACH,SAAS,CAAC,aAAa,IAAI,QAAQ,GAAG,IAAI;IAI1C,2BAA2B;IAC3B,OAAO,IAAI,IAAI;CA+BhB"}
@@ -0,0 +1,23 @@
1
+ import { ExtensionModel, Extensions as IExtensions, Texditor } from '../types';
2
+ export default class Extensions implements IExtensions {
3
+ /** Reference to the main editor instance */
4
+ private editor;
5
+ /** Collection of extensions models */
6
+ private extensions;
7
+ /** Unique identifier for event listeners to prevent conflicts */
8
+ private eventId;
9
+ constructor(editor: Texditor);
10
+ /** @see IExtensions.getExtensions */
11
+ getExtensions(): ExtensionModel[];
12
+ /** @see IExtensions.refresh */
13
+ refresh(): void;
14
+ /**
15
+ * Sets up fixed positioning behavior for extensions bar.
16
+ * Attaches scroll, load, and resize event listeners.
17
+ * Makes extensions bar sticky when scrolling past editor.
18
+ */
19
+ __apply(): void;
20
+ /** @see IExtensions.destroy */
21
+ destroy(): void;
22
+ }
23
+ //# sourceMappingURL=extensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../src/core/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA6B,cAAc,EAAE,UAAU,IAAI,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAI9G,MAAM,CAAC,OAAO,OAAO,UAAW,YAAW,WAAW;IACpD,4CAA4C;IAC5C,OAAO,CAAC,MAAM,CAAW;IAEzB,sCAAsC;IACtC,OAAO,CAAC,UAAU,CAAwB;IAE1C,iEAAiE;IACjE,OAAO,CAAC,OAAO,CAAmC;gBAEtC,MAAM,EAAE,QAAQ;IAW5B,qCAAqC;IACrC,aAAa,IAAI,cAAc,EAAE;IAIjC,+BAA+B;IAC/B,OAAO,IAAI,IAAI;IAcf;;;;OAIG;IACH,OAAO,IAAI,IAAI;IA+Cf,+BAA+B;IAC/B,OAAO;CAQR"}
@@ -0,0 +1,76 @@
1
+ import { HistoryManager as IHistoryManager, Texditor } from '../types';
2
+ export default class HistoryManager implements IHistoryManager {
3
+ private editor;
4
+ private history;
5
+ private future;
6
+ private maxHistorySize;
7
+ private currentState;
8
+ private isRestoring;
9
+ private saveInterval;
10
+ private saveTimer;
11
+ constructor(editor: Texditor);
12
+ /**
13
+ * Schedule state saving with interval-based debouncing
14
+ */
15
+ scheduleSave(): void;
16
+ /**
17
+ * Immediately save the current editor state
18
+ */
19
+ save(): void;
20
+ /**
21
+ * Perform the actual state saving operation
22
+ */
23
+ private doSave;
24
+ /**
25
+ * Compare two history states for equality
26
+ * @param state1 - First state to compare
27
+ * @param state2 - Second state to compare
28
+ * @returns True if states are equal, false otherwise
29
+ */
30
+ private statesEqual;
31
+ /**
32
+ * Deep equality check for objects/arrays
33
+ */
34
+ private isDeepEqual;
35
+ /**
36
+ * Undo the last operation
37
+ * @returns True if undo was successful, false otherwise
38
+ */
39
+ undo(): boolean;
40
+ /**
41
+ * Redo the previously undone operation
42
+ * @returns True if redo was successful, false otherwise
43
+ */
44
+ redo(): boolean;
45
+ /**
46
+ * Clear all history and future states
47
+ */
48
+ clear(): void;
49
+ /**
50
+ * Get current editor selection range
51
+ * @returns Object with start and end positions of selection
52
+ */
53
+ private getEditorSelection;
54
+ /**
55
+ * Restore editor to a specific historical state
56
+ * @param type - Type of action
57
+ * @param state - Current state of history
58
+ */
59
+ private restoreState;
60
+ /**
61
+ * Check if undo operation is available
62
+ * @returns True if undo is possible, false otherwise
63
+ */
64
+ canUndo(): boolean;
65
+ /**
66
+ * Check if redo operation is available
67
+ * @returns True if redo is possible, false otherwise
68
+ */
69
+ canRedo(): boolean;
70
+ /**
71
+ * Set the save interval duration
72
+ * @param interval - Interval duration in milliseconds
73
+ */
74
+ setSaveInterval(interval: number): void;
75
+ }
76
+ //# sourceMappingURL=history-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history-manager.d.ts","sourceRoot":"","sources":["../../src/core/history-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA2C,cAAc,IAAI,eAAe,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEpH,MAAM,CAAC,OAAO,OAAO,cAAe,YAAW,eAAe;IAC5D,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,cAAc,CAAe;IACrC,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,SAAS,CAA8C;gBAEnD,MAAM,EAAE,QAAQ;IAI5B;;OAEG;IACH,YAAY,IAAI,IAAI;IAapB;;OAEG;IACH,IAAI,IAAI,IAAI;IAWZ;;OAEG;IACH,OAAO,CAAC,MAAM;IAgDd;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAOnB;;OAEG;IACH,OAAO,CAAC,WAAW;IA2BnB;;;OAGG;IACH,IAAI,IAAI,OAAO;IAuBf;;;OAGG;IACH,IAAI,IAAI,OAAO;IAuBf;;OAEG;IACH,KAAK,IAAI,IAAI;IAUb;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;;OAIG;IACH,OAAO,CAAC,YAAY;IAWpB;;;OAGG;IACH,OAAO,IAAI,OAAO;IAIlB;;;OAGG;IACH,OAAO,IAAI,OAAO;IAIlB;;;OAGG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;CAGxC"}
@@ -0,0 +1,29 @@
1
+ import { I18N as II18N, Texditor } from '../types';
2
+ export default class I18N implements II18N {
3
+ /** Reference to the editor instance */
4
+ private editor;
5
+ /** Current active locale code */
6
+ private locale;
7
+ /** Default fallback locale code */
8
+ private defaultLocale;
9
+ /** Collection of translation dictionaries keyed by locale code */
10
+ private translations;
11
+ /**
12
+ * Create a new i18n instance
13
+ * @param editor - Editor instance reference
14
+ */
15
+ constructor(editor: Texditor);
16
+ /**
17
+ * @see II18N.getLocale
18
+ */
19
+ getLocale(): string;
20
+ /**
21
+ * @see II18N.getDefaultLocale
22
+ */
23
+ getDefaultLocale(): string;
24
+ /**
25
+ * @see II18N.get
26
+ */
27
+ get(key: string, def?: string): string;
28
+ }
29
+ //# sourceMappingURL=i18n.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/core/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,IAAI,KAAK,EAAiB,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGtE,MAAM,CAAC,OAAO,OAAO,IAAK,YAAW,KAAK;IACxC,uCAAuC;IACvC,OAAO,CAAC,MAAM,CAAW;IAEzB,iCAAiC;IACjC,OAAO,CAAC,MAAM,CAAgB;IAE9B,mCAAmC;IACnC,OAAO,CAAC,aAAa,CAAgB;IAErC,kEAAkE;IAClE,OAAO,CAAC,YAAY,CAAsC;IAE1D;;;OAGG;gBACS,MAAM,EAAE,QAAQ;IAgB5B;;OAEG;IACH,SAAS,IAAI,MAAM;IAInB;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,GAAE,MAAW,GAAG,MAAM;CAW3C"}
@@ -0,0 +1,54 @@
1
+ import { ActionModelConfig, ActionModel as IActionModel, ActionModelConstructor, ActionElement, BlockElement } from '../../types';
2
+ import { default as BaseModel } from '../base/base-model';
3
+ export default class ActionModel extends BaseModel<ActionElement> implements IActionModel {
4
+ /** Block element */
5
+ private blockElement;
6
+ /**
7
+ * Set up global configuration
8
+ * @param config - Partial configuration
9
+ * @returns Model constructor
10
+ */
11
+ static setup(config: Partial<ActionModelConfig>): ActionModelConstructor;
12
+ /**
13
+ * @see IActionModel.getBlockElement
14
+ */
15
+ getBlockElement(): BlockElement | null;
16
+ /**
17
+ * Parent model configuration
18
+ * @returns Parent model configuration
19
+ */
20
+ protected parentConfig(): Partial<ActionModelConfig>;
21
+ /**
22
+ * Parent hook called after model node creation
23
+ * @param el - Created model node
24
+ * @returns void
25
+ */
26
+ protected parentOnCreateElement(el: ActionElement): void;
27
+ /**
28
+ * Handle confirmation flow for actions that require user verification
29
+ * @param evt - Basic event
30
+ */
31
+ protected confirm(evt: MouseEvent): void;
32
+ /**
33
+ * Parent hook called after model node clicked
34
+ * @param evt - Basic event
35
+ * @returns void
36
+ */
37
+ protected parentOnClick(evt: MouseEvent): void;
38
+ /**
39
+ * Create and return the dropdown menu element
40
+ * @returns Empty div element as placeholder for dropdown content
41
+ */
42
+ protected dropdown(): HTMLElement;
43
+ /**
44
+ * Check if action shows a menu on click
45
+ * @returns True if action has a menu, false otherwise
46
+ */
47
+ isDropdown(): boolean;
48
+ /**
49
+ * @see IActionModel.isConfirm
50
+ */
51
+ isConfirm(): boolean;
52
+ __setBlockElement(blockElement: BlockElement): void;
53
+ }
54
+ //# sourceMappingURL=action-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action-model.d.ts","sourceRoot":"","sources":["../../../src/core/models/action-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,WAAW,IAAI,YAAY,EAC3B,sBAAsB,EACtB,aAAa,EACb,YAAY,EACb,MAAM,SAAS,CAAC;AAIjB,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAE3C,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,SAAS,CAAC,aAAa,CAAE,YAAW,YAAY;IACvF,oBAAoB;IACpB,OAAO,CAAC,YAAY,CAA6B;IAEjD;;;;OAIG;WACW,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,sBAAsB;IAI/E;;OAEG;IACH,eAAe,IAAI,YAAY,GAAG,IAAI;IAItC;;;OAGG;IACH,SAAS,CAAC,YAAY,IAAI,OAAO,CAAC,iBAAiB,CAAC;IASpD;;;;OAIG;IACH,SAAS,CAAC,qBAAqB,CAAC,EAAE,EAAE,aAAa,GAAG,IAAI;IAkBxD;;;OAGG;IACH,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI;IAoCxC;;;;OAIG;IACH,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI;IA6B9C;;;OAGG;IACH,SAAS,CAAC,QAAQ,IAAI,WAAW;IAIjC;;;OAGG;IACH,UAAU,IAAI,OAAO;IAIrB;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB,iBAAiB,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI;CAGpD"}