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,52 @@
1
+ import { SelectionState, SelectionAPI as ISelectionAPI, Texditor } from '../types';
2
+ export default class SelectionAPI implements ISelectionAPI {
3
+ /** Reference to the main editor instance */
4
+ private editor;
5
+ /** Currently stored selection data (element and cursor position) */
6
+ private state;
7
+ /**
8
+ * Creates a new SelectionAPI instance
9
+ * @param editor - Reference to the main Texditor instance
10
+ */
11
+ constructor(editor: Texditor);
12
+ /** @see ISelectionAPI.setState */
13
+ setState(state: SelectionState): void;
14
+ /** @see ISelectionAPI.getState */
15
+ getState(): SelectionState;
16
+ /** @see ISelectionAPI.clearState */
17
+ clearState(): void;
18
+ /** @see ISelectionAPI.selectCurrent */
19
+ applyState(): void;
20
+ /** @see ISelectionAPI.select */
21
+ select(startPos: number, endPos: number, container?: Element, scrollToContainer?: boolean): void;
22
+ /** @see ISelectionAPI.insert */
23
+ insert(content: string, isHtml?: boolean, strip?: boolean): boolean;
24
+ /** @see ISelectionAPI.insertText */
25
+ insertText(content: string, stripTags?: boolean): boolean;
26
+ /** @see ISelectionAPI.splitContent */
27
+ splitContent(container?: HTMLElement | null): string;
28
+ /** @see ISelectionAPI.findTags */
29
+ findTags(container: Element | HTMLElement, children?: boolean): HTMLElement[];
30
+ /** @see ISelectionAPI.getSelection */
31
+ getSelection(): Selection | null;
32
+ /** @see ISelectionAPI.getRange */
33
+ getRange(index?: number): Range | null;
34
+ /** @see ISelectionAPI.getAbsoluteOffset */
35
+ getAbsoluteOffset(container: Node, offset: number): number;
36
+ /**
37
+ * Recursively searches through nodes to find text nodes
38
+ * @param container - Root container node
39
+ * @param startNode - Starting node for search
40
+ * @param predicate - Predicate function to test nodes
41
+ * @param excludeSibling - Whether to exclude sibling traversal
42
+ * @returns True if predicate found a match
43
+ */
44
+ private searchNode;
45
+ /** @see ISelectionAPI.getOffset */
46
+ getOffset(container?: Node | HTMLElement | null): [number, number];
47
+ /** @see ISelectionAPI.getBounds */
48
+ getBounds(): DOMRect | null;
49
+ /** @see ISelectionAPI.getFirstLineBounds */
50
+ getFirstLineBounds(): DOMRect | null;
51
+ }
52
+ //# sourceMappingURL=selection-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selection-api.d.ts","sourceRoot":"","sources":["../../src/core/selection-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,IAAI,aAAa,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEvF,MAAM,CAAC,OAAO,OAAO,YAAa,YAAW,aAAa;IACxD,4CAA4C;IAC5C,OAAO,CAAC,MAAM,CAAW;IAEzB,oEAAoE;IACpE,OAAO,CAAC,KAAK,CAMX;IAEF;;;OAGG;gBACS,MAAM,EAAE,QAAQ;IAI5B,kCAAkC;IAClC,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAIrC,kCAAkC;IAClC,QAAQ,IAAI,cAAc;IAI1B,oCAAoC;IACpC,UAAU,IAAI,IAAI;IAUlB,uCAAuC;IACvC,UAAU,IAAI,IAAI;IAOlB,gCAAgC;IAChC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,iBAAiB,GAAE,OAAe,GAAG,IAAI;IA8FvG,gCAAgC;IAChC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAO,EAAE,KAAK,UAAO,GAAG,OAAO;IAgC7D,oCAAoC;IACpC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,UAAO,GAAG,OAAO;IAItD,sCAAsC;IACtC,YAAY,CAAC,SAAS,CAAC,EAAE,WAAW,GAAG,IAAI,GAAG,MAAM;IAoFpD,kCAAkC;IAClC,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,WAAW,EAAE,QAAQ,GAAE,OAAc,GAAG,WAAW,EAAE;IA4CnF,sCAAsC;IACtC,YAAY,IAAI,SAAS,GAAG,IAAI;IAIhC,kCAAkC;IAClC,QAAQ,CAAC,KAAK,GAAE,MAAU,GAAG,KAAK,GAAG,IAAI;IAUzC,2CAA2C;IAC3C,iBAAiB,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM;IAqBjD;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU;IAwClB,mCAAmC;IACnC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI,GAAG,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAqElE,mCAAmC;IACnC,SAAS,IAAI,OAAO,GAAG,IAAI;IAQ3B,4CAA4C;IAC5C,kBAAkB,IAAI,OAAO,GAAG,IAAI;CA0BrC"}
@@ -0,0 +1,27 @@
1
+ import { Texditor, ToolModel, Tools as ITools } from '../types';
2
+ export default class Tools implements ITools {
3
+ /** Reference to the editor instance */
4
+ private editor;
5
+ /** Collection of tool models available in the toolbar */
6
+ private tools;
7
+ /** Unique identifier for event listeners to prevent conflicts */
8
+ private eventId;
9
+ /**
10
+ * Create a new tools manager instance
11
+ * @param editor - Editor instance reference
12
+ */
13
+ constructor(editor: Texditor);
14
+ /** @see ITools.show */
15
+ show(): void;
16
+ /** @see ITools.hide */
17
+ hide(): void;
18
+ /** @see ITools.syncHighlight */
19
+ syncHighlight(): void;
20
+ /** @see ITools.getTools */
21
+ getTools(): ToolModel[];
22
+ /** @see ITools.getModelByTagName */
23
+ getModelByTagName(tagName: string): ToolModel | null;
24
+ /** @see ITools.destroy */
25
+ destroy(): void;
26
+ }
27
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/core/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAwB,SAAS,EAAe,KAAK,IAAI,MAAM,EAAE,MAAM,SAAS,CAAC;AA4BvG,MAAM,CAAC,OAAO,OAAO,KAAM,YAAW,MAAM;IAC1C,uCAAuC;IACvC,OAAO,CAAC,MAAM,CAAW;IACzB,yDAAyD;IACzD,OAAO,CAAC,KAAK,CAAmB;IAChC,iEAAiE;IACjE,OAAO,CAAC,OAAO,CAAoC;IAEnD;;;OAGG;gBACS,MAAM,EAAE,QAAQ;IAuB5B,uBAAuB;IACvB,IAAI,IAAI,IAAI;IA4DZ,uBAAuB;IACvB,IAAI,IAAI,IAAI;IAcZ,gCAAgC;IAChC,aAAa,IAAI,IAAI;IA8BrB,2BAA2B;IAC3B,QAAQ,IAAI,SAAS,EAAE;IAIvB,oCAAoC;IACpC,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAWpD,0BAA0B;IAC1B,OAAO;CAOR"}
@@ -0,0 +1,50 @@
1
+ import { Slider as ISlider, SliderOptions } from '../../types';
2
+ export default class Slider implements ISlider {
3
+ private container;
4
+ private slider;
5
+ private slides;
6
+ private dotsContainer?;
7
+ private currentIndex;
8
+ private options;
9
+ private defaultOptions;
10
+ /**
11
+ * Creates a new Slider instance
12
+ * @param container - The DOM element containing the slides
13
+ * @param options - Configuration options for the slider
14
+ */
15
+ constructor(container: HTMLElement, options?: SliderOptions);
16
+ /**
17
+ * Iterates through each direct child element of the container
18
+ * @param callback - Function to execute for each slide
19
+ */
20
+ private eachSlides;
21
+ /**
22
+ * Initializes the slider by creating all necessary UI elements
23
+ */
24
+ private init;
25
+ /**
26
+ * Creates and appends navigation buttons (prev/next)
27
+ */
28
+ private createButtons;
29
+ /**
30
+ * Creates and appends dot indicators for slide navigation
31
+ */
32
+ private createDots;
33
+ /**
34
+ * Updates the active state of dot indicators based on current slide
35
+ */
36
+ private updateActiveDot;
37
+ /**
38
+ * Updates the slider's transform position for the current slide
39
+ */
40
+ private updateSliderPosition;
41
+ /** @see ISlider.goToSlide */
42
+ goToSlide(index: number): void;
43
+ /** @see ISlider.next */
44
+ next(): void;
45
+ /** @see ISlider.prev */
46
+ prev(): void;
47
+ /** @see ISlider.destroy */
48
+ destroy(): void;
49
+ }
50
+ //# sourceMappingURL=slider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../../src/core/ui/slider.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,6BAA6B,CAAC;AAErC,MAAM,CAAC,OAAO,OAAO,MAAO,YAAW,OAAO;IAC5C,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,aAAa,CAAC,CAAc;IACpC,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,OAAO,CAAgB;IAE/B,OAAO,CAAC,cAAc,CAEpB;IAEF;;;;OAIG;gBACS,SAAS,EAAE,WAAW,EAAE,OAAO,GAAE,aAAkB;IA+B/D;;;OAGG;IACH,OAAO,CAAC,UAAU;IAUlB;;OAEG;IACH,OAAO,CAAC,IAAI;IAOZ;;OAEG;IACH,OAAO,CAAC,aAAa;IAqBrB;;OAEG;IACH,OAAO,CAAC,UAAU;IAqBlB;;OAEG;IACH,OAAO,CAAC,eAAe;IAcvB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAM5B,6BAA6B;IAC7B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAkB9B,wBAAwB;IACxB,IAAI,IAAI,IAAI;IAIZ,wBAAwB;IACxB,IAAI,IAAI,IAAI;IAIZ,2BAA2B;IAC3B,OAAO,IAAI,IAAI;CAmBhB"}
@@ -0,0 +1,23 @@
1
+ import { ToastOptions, Toasts as IToasts } from '../../types';
2
+ export default class Toasts implements IToasts {
3
+ private toastsNode;
4
+ private defaultClassName;
5
+ private defaultTimeout;
6
+ private defaultParent;
7
+ private defaultInsertType;
8
+ private activeToast;
9
+ constructor(defaultParent?: Element | null, className?: string, defaultTimeout?: number, defaultInsertType?: 'prepend' | 'append' | 'before' | 'after');
10
+ /**
11
+ * Displays a toast notification with the given message and options.
12
+ * Creates a container if one doesn't exist and handles automatic cleanup
13
+ * when all toasts are removed.
14
+ */
15
+ add(message: string, options?: ToastOptions): void;
16
+ /**
17
+ * Removes all active toast notifications immediately
18
+ * and cleans up the container element.
19
+ */
20
+ clear(): void;
21
+ private createToasts;
22
+ }
23
+ //# sourceMappingURL=toasts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toasts.d.ts","sourceRoot":"","sources":["../../../src/core/ui/toasts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,SAAS,CAAC;AAG1D,MAAM,CAAC,OAAO,OAAO,MAAO,YAAW,OAAO;IAC5C,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,iBAAiB,CAA4C;IACrE,OAAO,CAAC,WAAW,CAA4B;gBAG7C,aAAa,CAAC,EAAE,OAAO,GAAG,IAAI,EAC9B,SAAS,GAAE,MAA2B,EACtC,cAAc,GAAE,MAAa,EAC7B,iBAAiB,GAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAmB;IAQ1E;;;;OAIG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,IAAI;IAmFtD;;;OAGG;IACH,KAAK,IAAI,IAAI;IAQb,OAAO,CAAC,YAAY;CAKrB"}
@@ -0,0 +1,171 @@
1
+ import { VirtualSelection as IVirtualSelection, VirtualSelectionOptions } from '../../types/core/ui/virtual-selection';
2
+ export default class VirtualSelection implements IVirtualSelection {
3
+ private options;
4
+ private blocks;
5
+ private isDragging;
6
+ private isLassoActive;
7
+ private hasMoved;
8
+ private isTouchScrolling;
9
+ private startedInContentEditable;
10
+ private contentEditableStartPoint;
11
+ private startPointInDocument;
12
+ private currentPointInDocument;
13
+ private selectedIndices;
14
+ private selectionRect;
15
+ private eventId;
16
+ private autoScrollInterval;
17
+ private startBlock;
18
+ private touchDelayTimeout;
19
+ private pendingLassoActivation;
20
+ private rafId;
21
+ private needsUpdate;
22
+ private cachedLassoRect;
23
+ private cachedSelectedIndices;
24
+ constructor(options: VirtualSelectionOptions);
25
+ /**
26
+ * Sets the CSS touch-action property on the selection zone.
27
+ * @param value - The touch-action CSS value (e.g., 'none', 'pan-y')
28
+ */
29
+ private setTouchAction;
30
+ /**
31
+ * Initializes the VirtualSelection instance.
32
+ * Refreshes blocks, creates DOM elements, attaches event listeners, and sets initial touch behavior
33
+ */
34
+ private init;
35
+ /**
36
+ * Checks if an element or any of its ancestors is inside a contentEditable container.
37
+ * @param el - The DOM element to check
38
+ * @returns True if the element is inside contentEditable, false otherwise
39
+ */
40
+ private isInsideContentEditable;
41
+ /**
42
+ * Gets the full bounding rectangle of a block including its visual boundaries.
43
+ * @param block - The block element
44
+ * @returns DOMRect with full block dimensions in document coordinates
45
+ */
46
+ private getFullBlockRect;
47
+ /**
48
+ * Checks if the cursor has completely exited the block's visual boundaries.
49
+ * @param currentPoint - Current cursor point
50
+ * @param startBlock - The block where selection started
51
+ * @returns True if cursor is outside block boundaries by at least exitTolerance
52
+ */
53
+ private hasExitedBlockBoundaries;
54
+ /** @see IVirtualSelection.refreshBlocks */
55
+ refreshBlocks(): void;
56
+ /**
57
+ * Creates the visual selection rectangle element for lasso selection.
58
+ */
59
+ private createElements;
60
+ /**
61
+ * Attaches event listeners for mouse and touch interactions.
62
+ */
63
+ private attachEvents;
64
+ /**
65
+ * Converts viewport coordinates to document coordinates.
66
+ * @param x - X coordinate relative to viewport
67
+ * @param y - Y coordinate relative to viewport
68
+ * @returns Object with x and y coordinates relative to document
69
+ */
70
+ private viewportToDocument;
71
+ /**
72
+ * Converts document coordinates to viewport coordinates.
73
+ * @param x - X coordinate relative to document
74
+ * @param y - Y coordinate relative to document
75
+ * @returns Object with x and y coordinates relative to viewport
76
+ */
77
+ private documentToViewport;
78
+ /**
79
+ * Finds the block element at the specified point.
80
+ * @param x - X coordinate in document
81
+ * @param y - Y coordinate in document
82
+ * @returns The block element or null
83
+ */
84
+ private getBlockAtPoint;
85
+ /**
86
+ * Starts automatic scrolling when cursor approaches viewport edges during lasso selection.
87
+ */
88
+ private startAutoScroll;
89
+ /**
90
+ * Stops the auto-scroll interval.
91
+ */
92
+ private stopAutoScroll;
93
+ /**
94
+ * Activates lasso selection mode.
95
+ * Prevents scrolling, disables touch actions, and triggers onLassoStart callback.
96
+ */
97
+ private startLassoMode;
98
+ /**
99
+ * Deactivates lasso selection mode
100
+ * Restores touch actions, stops auto-scroll, hides selection rectangle, and triggers onLassoEnd
101
+ */
102
+ private stopLassoMode;
103
+ /**
104
+ * Schedules an update via requestAnimationFrame to batch DOM changes
105
+ */
106
+ private scheduleUpdate;
107
+ /**
108
+ * Performs the actual DOM update (batched via RAF)
109
+ */
110
+ private performUpdate;
111
+ /**
112
+ * Compares two sets for equality
113
+ */
114
+ private areSetsEqual;
115
+ /**
116
+ * Cancels pending requestAnimationFrame
117
+ */
118
+ private cancelRAF;
119
+ /**
120
+ * Updates the position and size of the selection rectangle based on drag points.
121
+ */
122
+ private updateSelectionRect;
123
+ /**
124
+ * Calculates which blocks intersect with the lasso selection rectangle.
125
+ * Updates selected indexes and visual states.
126
+ */
127
+ private updateLassoSelection;
128
+ /**
129
+ * Applies or removes the selected class on blocks based on current selection.
130
+ * Triggers onSelectionChange callback with updated selection data.
131
+ */
132
+ private updateBlocksVisuals;
133
+ /**
134
+ * Handles mouse down event to initiate selection.
135
+ * @param e - The mouse event
136
+ * @private
137
+ */
138
+ private onMouseDown;
139
+ /**
140
+ * Handles mouse move event for lasso selection.
141
+ * @param e - The mouse event
142
+ */
143
+ private onMouseMove;
144
+ /**
145
+ * Handles mouse up event to finalize selection.
146
+ */
147
+ private onMouseUp;
148
+ /**
149
+ * Handles touch start event for mobile selection.
150
+ * @param e - The touch event
151
+ */
152
+ private onTouchStart;
153
+ /**
154
+ * Handles touch move event for lasso selection on mobile devices.
155
+ * @param e - The touch event
156
+ */
157
+ private onTouchMove;
158
+ /**
159
+ * Handles touch end event to finalize selection on mobile devices.
160
+ */
161
+ private onTouchEnd;
162
+ /** @see IVirtualSelection.getSelectedIndices */
163
+ getSelectedIndices(): number[];
164
+ /** @see IVirtualSelection.getSelectedBlocks */
165
+ getSelectedBlocks(): HTMLElement[];
166
+ /** @see IVirtualSelection.clearSelection */
167
+ clearSelection(): void;
168
+ /** @see IVirtualSelection.destroy */
169
+ destroy(): void;
170
+ }
171
+ //# sourceMappingURL=virtual-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtual-selection.d.ts","sourceRoot":"","sources":["../../../src/core/ui/virtual-selection.ts"],"names":[],"mappings":"AAAA,OAAO,gCAAgC,CAAC;AACxC,OAAO,EAAE,gBAAgB,IAAI,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAGnH,MAAM,CAAC,OAAO,OAAO,gBAAiB,YAAW,iBAAiB;IAChE,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,yBAAyB,CAAkB;IACnD,OAAO,CAAC,oBAAoB,CAAkB;IAC9C,OAAO,CAAC,sBAAsB,CAAkB;IAChD,OAAO,CAAC,eAAe,CAA0B;IACjD,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,kBAAkB,CAAuB;IACjD,OAAO,CAAC,UAAU,CAA4B;IAG9C,OAAO,CAAC,iBAAiB,CAAuB;IAChD,OAAO,CAAC,sBAAsB,CAAS;IAGvC,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,eAAe,CAAwB;IAC/C,OAAO,CAAC,qBAAqB,CAA0B;gBAE3C,OAAO,EAAE,uBAAuB;IAkB5C;;;OAGG;IACH,OAAO,CAAC,cAAc;IAItB;;;OAGG;IACH,OAAO,CAAC,IAAI;IAOZ;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IAS/B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAkBxB;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAkChC,2CAA2C;IAC3C,aAAa,IAAI,IAAI;IAerB;;OAEG;IACH,OAAO,CAAC,cAAc;IAiBtB;;OAEG;IACH,OAAO,CAAC,YAAY;IAYpB;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAUvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAyBvB;;OAEG;IACH,OAAO,CAAC,cAAc;IAOtB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAatB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAmBrB;;OAEG;IACH,OAAO,CAAC,cAAc;IActB;;OAEG;IACH,OAAO,CAAC,aAAa;IAyCrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAQpB;;OAEG;IACH,OAAO,CAAC,SAAS;IAQjB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiB3B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAoB3B;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAenB;;;OAGG;IACH,OAAO,CAAC,WAAW;IA4BnB;;OAEG;IACH,OAAO,CAAC,SAAS;IAqBjB;;;OAGG;IACH,OAAO,CAAC,YAAY;IA2BpB;;;OAGG;IACH,OAAO,CAAC,WAAW;IA+DnB;;OAEG;IACH,OAAO,CAAC,UAAU;IAwBlB,gDAAgD;IAChD,kBAAkB,IAAI,MAAM,EAAE;IAI9B,+CAA+C;IAC/C,iBAAiB,IAAI,WAAW,EAAE;IAMlC,4CAA4C;IAC5C,cAAc,IAAI,IAAI;IAKtB,qCAAqC;IACrC,OAAO,IAAI,IAAI;CAkChB"}
@@ -0,0 +1,9 @@
1
+ import { ActionModelConfig } from '../../types';
2
+ import { default as ActionModel } from '../../core/models/action-model';
3
+ /** Convert a block */
4
+ export default class ConvertAction extends ActionModel {
5
+ protected configure(): Partial<ActionModelConfig>;
6
+ protected dropdown(): HTMLElement;
7
+ isVisible(): boolean;
8
+ }
9
+ //# sourceMappingURL=convert-action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convert-action.d.ts","sourceRoot":"","sources":["../../../src/entities/actions/convert-action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAoB,MAAM,SAAS,CAAC;AAEnE,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAMrD,sBAAsB;AACtB,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,WAAW;IACpD,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,iBAAiB,CAAC;IASjD,SAAS,CAAC,QAAQ,IAAI,WAAW;IAoDjC,SAAS,IAAI,OAAO;CAQrB"}
@@ -0,0 +1,8 @@
1
+ import { ActionModelConfig } from '../../types';
2
+ import { default as ActionModel } from '../../core/models/action-model';
3
+ /** Create a block */
4
+ export default class CreateAction extends ActionModel {
5
+ protected configure(): Partial<ActionModelConfig>;
6
+ protected dropdown(): HTMLElement;
7
+ }
8
+ //# sourceMappingURL=create-action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-action.d.ts","sourceRoot":"","sources":["../../../src/entities/actions/create-action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEnE,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAMrD,qBAAqB;AACrB,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,WAAW;IACnD,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,iBAAiB,CAAC;IASjD,SAAS,CAAC,QAAQ,IAAI,WAAW;CAgDlC"}
@@ -0,0 +1,8 @@
1
+ import { ActionModelConfig } from '../../types';
2
+ import { default as ActionModel } from '../../core/models/action-model';
3
+ /** Delete a block */
4
+ export default class DeleteAction extends ActionModel {
5
+ protected configure(): Partial<ActionModelConfig>;
6
+ protected onClick(): void;
7
+ }
8
+ //# sourceMappingURL=delete-action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-action.d.ts","sourceRoot":"","sources":["../../../src/entities/actions/delete-action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAErD,qBAAqB;AACrB,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,WAAW;IACnD,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,iBAAiB,CAAC;IASjD,SAAS,CAAC,OAAO,IAAI,IAAI;CAI1B"}
@@ -0,0 +1,7 @@
1
+ import { default as ConvertAction } from './convert-action';
2
+ import { default as CreateAction } from './create-action';
3
+ import { default as DeleteAction } from './delete-action';
4
+ import { default as MoveDownAction } from './move-down-action';
5
+ import { default as MoveUpAction } from './move-up-action';
6
+ export { ConvertAction, CreateAction, DeleteAction, MoveDownAction, MoveUpAction };
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/entities/actions/index.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAC3C,OAAO,cAAc,MAAM,oBAAoB,CAAC;AAChD,OAAO,YAAY,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { ActionModelConfig } from '../../types';
2
+ import { default as ActionModel } from '../../core/models/action-model';
3
+ /** Move the block down */
4
+ export default class MoveDownAction extends ActionModel {
5
+ protected configure(): Partial<ActionModelConfig>;
6
+ protected onClick(): void;
7
+ isVisible(): boolean;
8
+ }
9
+ //# sourceMappingURL=move-down-action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move-down-action.d.ts","sourceRoot":"","sources":["../../../src/entities/actions/move-down-action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,0BAA0B;AAC1B,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,WAAW;IACrD,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAQjD,SAAS,CAAC,OAAO,IAAI,IAAI;IAYzB,SAAS,IAAI,OAAO;CAIrB"}
@@ -0,0 +1,9 @@
1
+ import { ActionModelConfig } from '../../types';
2
+ import { default as ActionModel } from '../../core/models/action-model';
3
+ /** Move the block up */
4
+ export default class MoveUpAction extends ActionModel {
5
+ protected configure(): Partial<ActionModelConfig>;
6
+ protected onClick(): void;
7
+ isVisible(): boolean;
8
+ }
9
+ //# sourceMappingURL=move-up-action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move-up-action.d.ts","sourceRoot":"","sources":["../../../src/entities/actions/move-up-action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAErD,wBAAwB;AACxB,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,WAAW;IACnD,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAQjD,SAAS,CAAC,OAAO,IAAI,IAAI;IAYzB,SAAS,IAAI,OAAO;CAIrB"}
@@ -0,0 +1,2 @@
1
+ export * from './actions/index'
2
+ export {}
@@ -0,0 +1,6 @@
1
+ import e from "../src/entities/actions/convert-action.mjs";
2
+ import t from "../src/entities/actions/create-action.mjs";
3
+ import n from "../src/entities/actions/delete-action.mjs";
4
+ import r from "../src/entities/actions/move-down-action.mjs";
5
+ import i from "../src/entities/actions/move-up-action.mjs";
6
+ export { e as ConvertAction, t as CreateAction, n as DeleteAction, r as MoveDownAction, i as MoveUpAction };
@@ -0,0 +1,48 @@
1
+ import { BlockSchema, BlockElement, BlockModelConfig, BlockCreateSchema } from '../../../types';
2
+ import { default as BlockModel } from '../../../core/models/block-model';
3
+ export default class Code extends BlockModel {
4
+ /**
5
+ * Configure block model
6
+ * @returns Partial configuration object
7
+ */
8
+ protected configure(): Partial<BlockModelConfig>;
9
+ /**
10
+ * Composes the code block UI
11
+ */
12
+ protected onCompose(): void;
13
+ /**
14
+ * Initializes the code block UI — language selector and line break info
15
+ * @param blockElement - block DOM element
16
+ */
17
+ private init;
18
+ /**
19
+ * Handles keydown events. Creates a new block on Ctrl+Enter.
20
+ * @param evt - Keyboard event
21
+ * @returns False if handled, true otherwise
22
+ */
23
+ protected onKeyDown(evt: KeyboardEvent): boolean;
24
+ /**
25
+ * Saves block data to output format
26
+ * @param blockSchema - Block schema
27
+ * @param _blockElement - Block element
28
+ * @returns The modified block output.
29
+ */
30
+ protected save(blockSchema: BlockSchema, blockElement?: BlockElement): BlockSchema;
31
+ /**
32
+ * Parses block schema into create schema
33
+ * @param item - Raw block schema
34
+ * @returns Parsed create schema
35
+ */
36
+ protected parse(item: BlockSchema): BlockCreateSchema;
37
+ /**
38
+ * Re-initializes the block after conversion
39
+ * @param newBlockElement - New block DOM element
40
+ * @returns The initialized block element
41
+ */
42
+ afterConvert(newBlockElement: BlockElement): BlockElement;
43
+ /**
44
+ * Destroy the model instance and clean up the resources
45
+ */
46
+ destroy(): void;
47
+ }
48
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/entities/blocks/code/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EAElB,MAAM,SAAS,CAAC;AAqBjB,OAAO,UAAU,MAAM,2BAA2B,CAAC;AAEnD,OAAO,mCAAmC,CAAC;AAE3C,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,UAAU;IAC1C;;;OAGG;IACH,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAyBhD;;OAEG;IACH,SAAS,CAAC,SAAS,IAAI,IAAI;IAK3B;;;OAGG;IACH,OAAO,CAAC,IAAI;IA0LZ;;;;OAIG;IACH,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO;IAYhD;;;;;OAKG;IACH,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,WAAW;IAelF;;;;OAIG;IACH,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,GAAG,iBAAiB;IAYrD;;;;OAIG;IACH,YAAY,CAAC,eAAe,EAAE,YAAY,GAAG,YAAY;IAMzD;;OAEG;IACH,OAAO,IAAI,IAAI;CAIhB"}
@@ -0,0 +1,4 @@
1
+ import { CodeLanguages } from '../../../types';
2
+ declare const CodeLanguages: CodeLanguages;
3
+ export default CodeLanguages;
4
+ //# sourceMappingURL=languages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"languages.d.ts","sourceRoot":"","sources":["../../../../src/entities/blocks/code/languages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,QAAA,MAAM,aAAa,EAAE,aAkDpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { FileActionModelConfig } from '../../../../types';
2
+ import { default as FileActionModel } from '../../../../core/models/file-action-model';
3
+ export default class DeleteFileAction extends FileActionModel {
4
+ protected configure(): Partial<FileActionModelConfig>;
5
+ protected onClick(_evt: MouseEvent): void;
6
+ }
7
+ //# sourceMappingURL=DeleteFileAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeleteFileAction.d.ts","sourceRoot":"","sources":["../../../../../src/entities/blocks/files/actions/DeleteFileAction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,eAAe,MAAM,iCAAiC,CAAC;AAE9D,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,eAAe;IAC3D,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAQrD,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;CAgB1C"}
@@ -0,0 +1,12 @@
1
+ import { FileActionModelConfig, FileActionElement } from '../../../../types';
2
+ import { default as FileActionModel } from '../../../../core/models/file-action-model';
3
+ export default class DownloadFileAction extends FileActionModel {
4
+ protected configure(): Partial<FileActionModelConfig>;
5
+ protected onClick(): void;
6
+ /**
7
+ * Hook called after mounting to the DOM
8
+ * @param _el - The mounted DOM element
9
+ */
10
+ protected onMount(node: FileActionElement): void;
11
+ }
12
+ //# sourceMappingURL=DownloadFileAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DownloadFileAction.d.ts","sourceRoot":"","sources":["../../../../../src/entities/blocks/files/actions/DownloadFileAction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAExE,OAAO,eAAe,MAAM,iCAAiC,CAAC;AAG9D,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,eAAe;IAC7D,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,qBAAqB,CAAC;IASrD,SAAS,CAAC,OAAO,IAAI,IAAI;IAyBzB;;;OAGG;IACH,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;CAgBjD"}
@@ -0,0 +1,32 @@
1
+ import { FileActionModelConfig } from '../../../../types';
2
+ import { default as FileActionModel } from '../../../../core/models/file-action-model';
3
+ /**
4
+ * Handles the "edit" action for file items.
5
+ * Creates a popup form to edit file name, caption, and description.
6
+ */
7
+ export default class EditFileAction extends FileActionModel {
8
+ /** Reference to the popup DOM element */
9
+ private popupNode;
10
+ /** Stores timeout IDs for error message hiding */
11
+ private timeouts;
12
+ /**
13
+ * Configures the action with name and icon
14
+ */
15
+ protected configure(): Partial<FileActionModelConfig>;
16
+ /** Handles click event */
17
+ protected onClick(): void;
18
+ /**
19
+ * Creates and displays the edit popup forms
20
+ */
21
+ protected createPopup(): void;
22
+ /**
23
+ * Handles save button click
24
+ * @param _evt - Click event
25
+ */
26
+ protected saveHandler(_evt: MouseEvent): void;
27
+ /** Removes the popup and cleans up event listeners */
28
+ private removePopup;
29
+ /** Cleanup when destroying the action */
30
+ destroy(): void;
31
+ }
32
+ //# sourceMappingURL=EditFileAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditFileAction.d.ts","sourceRoot":"","sources":["../../../../../src/entities/blocks/files/actions/EditFileAction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAmB,MAAM,SAAS,CAAC;AAEtE,OAAO,eAAe,MAAM,iCAAiC,CAAC;AAoB9D;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,eAAe;IACzD,yCAAyC;IACzC,OAAO,CAAC,SAAS,CAA4B;IAC7C,kDAAkD;IAClD,OAAO,CAAC,QAAQ,CAA0C;IAE1D;;OAEG;IACH,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAOrD,2BAA2B;IAC3B,SAAS,CAAC,OAAO,IAAI,IAAI;IAIzB;;OAEG;IACH,SAAS,CAAC,WAAW;IAyIrB;;;OAGG;IACH,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU;IAyFtC,sDAAsD;IACtD,OAAO,CAAC,WAAW;IAQnB,yCAAyC;IACzC,OAAO,IAAI,IAAI;CAGhB"}
@@ -0,0 +1,8 @@
1
+ import { FileActionModelConfig } from '../../../../types';
2
+ import { default as FileActionModel } from '../../../../core/models/file-action-model';
3
+ export default class MoveLeftFileAction extends FileActionModel {
4
+ protected configure(): Partial<FileActionModelConfig>;
5
+ onClick(): void;
6
+ isVisible(): boolean;
7
+ }
8
+ //# sourceMappingURL=MoveLeftFileAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MoveLeftFileAction.d.ts","sourceRoot":"","sources":["../../../../../src/entities/blocks/files/actions/MoveLeftFileAction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,eAAe,MAAM,iCAAiC,CAAC;AAE9D,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,eAAe;IAC7D,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAOrD,OAAO;IAWP,SAAS,IAAI,OAAO;CASrB"}
@@ -0,0 +1,8 @@
1
+ import { FileActionModelConfig } from '../../../../types';
2
+ import { default as FileActionModel } from '../../../../core/models/file-action-model';
3
+ export default class MoveRightFileAction extends FileActionModel {
4
+ protected configure(): Partial<FileActionModelConfig>;
5
+ onClick(): void;
6
+ isVisible(): boolean;
7
+ }
8
+ //# sourceMappingURL=MoveRightFileAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MoveRightFileAction.d.ts","sourceRoot":"","sources":["../../../../../src/entities/blocks/files/actions/MoveRightFileAction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,eAAe,MAAM,iCAAiC,CAAC;AAE9D,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,eAAe;IAC9D,SAAS,CAAC,SAAS,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAOrD,OAAO;IAWP,SAAS,IAAI,OAAO;CASrB"}