jodit 3.10.2 → 3.12.2

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 (843) hide show
  1. package/.github/workflows/docs.yml +16 -0
  2. package/.github/workflows/tests.yml +1 -2
  3. package/.idea/dictionaries/v_chupurnov.xml +1 -0
  4. package/.idea/workspace.xml +303 -269
  5. package/CHANGELOG.MD +63 -7
  6. package/LICENSE.txt +1 -1
  7. package/README.md +6 -4
  8. package/build/jodit.css +85 -85
  9. package/build/jodit.es2018.css +74 -74
  10. package/build/jodit.es2018.en.css +74 -74
  11. package/build/jodit.es2018.en.js +2933 -2707
  12. package/build/jodit.es2018.en.min.css +1 -1
  13. package/build/jodit.es2018.en.min.js +1 -1
  14. package/build/jodit.es2018.js +2807 -2581
  15. package/build/jodit.es2018.min.css +1 -1
  16. package/build/jodit.es2018.min.js +1 -1
  17. package/build/jodit.js +3864 -3537
  18. package/build/jodit.min.css +2 -2
  19. package/build/jodit.min.js +1 -1
  20. package/index.d.ts +1 -1
  21. package/package.json +14 -2
  22. package/src/README.md +55 -0
  23. package/src/config.ts +5 -1
  24. package/src/core/async/README.md +147 -0
  25. package/src/core/{async.ts → async/async.ts} +16 -7
  26. package/src/core/async/index.ts +11 -0
  27. package/src/core/component/README.md +110 -0
  28. package/src/core/component/component.ts +7 -1
  29. package/src/core/component/index.ts +5 -1
  30. package/src/core/component/statuses.ts +5 -1
  31. package/src/core/component/view-component.ts +5 -1
  32. package/src/core/constants.ts +5 -1
  33. package/src/core/create/README.md +57 -0
  34. package/src/core/{create.ts → create/create.ts} +11 -5
  35. package/src/core/create/index.ts +11 -0
  36. package/src/core/decorators/README.md +4 -0
  37. package/src/core/decorators/cache/README.md +17 -0
  38. package/src/core/decorators/{cache.ts → cache/cache.ts} +9 -3
  39. package/src/core/decorators/component/README.md +65 -0
  40. package/src/core/decorators/{component.ts → component/component.ts} +8 -2
  41. package/src/core/decorators/debounce/README.md +44 -0
  42. package/src/core/decorators/{debounce.ts → debounce/debounce.ts} +11 -8
  43. package/src/core/decorators/hook/README.md +16 -0
  44. package/src/core/decorators/{hook.ts → hook/hook.ts} +11 -4
  45. package/src/core/decorators/idle/README.md +1 -0
  46. package/src/core/decorators/{idle.ts → idle/idle.ts} +11 -7
  47. package/src/core/decorators/index.ts +16 -10
  48. package/src/core/decorators/nonenumerable/README.md +15 -0
  49. package/src/core/decorators/{nonenumerable.ts → nonenumerable/nonenumerable.ts} +5 -2
  50. package/src/core/decorators/persistent/README.md +23 -0
  51. package/src/core/decorators/{persistent.ts → persistent/persistent.ts} +9 -6
  52. package/src/core/decorators/wait/README.md +20 -0
  53. package/src/core/decorators/{wait.ts → wait/wait.ts} +9 -6
  54. package/src/core/decorators/watch/README.md +125 -0
  55. package/src/core/decorators/{watch.ts → watch/watch.ts} +16 -14
  56. package/src/core/dom/README.md +13 -0
  57. package/src/core/{dom.ts → dom/dom.ts} +31 -10
  58. package/src/core/dom/index.ts +11 -0
  59. package/src/core/event-emitter/README.md +39 -0
  60. package/src/core/{events → event-emitter}/event-emitter.ts +9 -9
  61. package/src/core/{events → event-emitter}/index.ts +5 -1
  62. package/src/core/{events → event-emitter}/observe-object.ts +17 -8
  63. package/src/core/{events → event-emitter}/store.ts +5 -1
  64. package/src/core/global.ts +12 -12
  65. package/src/core/helpers/README.md +1 -0
  66. package/src/core/helpers/array/as-array.ts +5 -1
  67. package/src/core/helpers/array/index.ts +5 -1
  68. package/src/core/helpers/array/split-array.ts +5 -1
  69. package/src/core/helpers/array/to-array.ts +5 -1
  70. package/src/core/helpers/async/index.ts +5 -1
  71. package/src/core/helpers/async/set-timeout.ts +5 -1
  72. package/src/core/helpers/checker/has-browser-color-picker.ts +5 -1
  73. package/src/core/helpers/checker/index.ts +5 -1
  74. package/src/core/helpers/checker/is-array.ts +5 -1
  75. package/src/core/helpers/checker/is-boolean.ts +5 -1
  76. package/src/core/helpers/checker/is-equal.ts +5 -1
  77. package/src/core/helpers/checker/is-function.ts +5 -1
  78. package/src/core/helpers/checker/is-html-from-word.ts +5 -1
  79. package/src/core/helpers/checker/is-html.ts +5 -1
  80. package/src/core/helpers/checker/is-imp-interface.ts +5 -1
  81. package/src/core/helpers/checker/is-int.ts +5 -1
  82. package/src/core/helpers/checker/is-jodit-object.ts +5 -1
  83. package/src/core/helpers/checker/is-license.ts +5 -1
  84. package/src/core/helpers/checker/is-native-function.ts +5 -1
  85. package/src/core/helpers/checker/is-number.ts +5 -1
  86. package/src/core/helpers/checker/is-numeric.ts +5 -1
  87. package/src/core/helpers/checker/is-plain-object.ts +5 -1
  88. package/src/core/helpers/checker/is-promise.ts +5 -1
  89. package/src/core/helpers/checker/is-string.ts +5 -1
  90. package/src/core/helpers/checker/is-url.ts +5 -1
  91. package/src/core/helpers/checker/is-valid-name.ts +5 -1
  92. package/src/core/helpers/checker/is-void.ts +5 -1
  93. package/src/core/helpers/checker/is-window.ts +5 -1
  94. package/src/core/helpers/color/color-to-hex.ts +5 -1
  95. package/src/core/helpers/color/index.ts +5 -1
  96. package/src/core/helpers/html/apply-styles.ts +6 -2
  97. package/src/core/helpers/html/clean-from-word.ts +5 -1
  98. package/src/core/helpers/html/htmlspecialchars.ts +5 -1
  99. package/src/core/helpers/html/index.ts +5 -1
  100. package/src/core/helpers/html/nl2br.ts +6 -2
  101. package/src/core/helpers/html/strip-tags.ts +6 -2
  102. package/src/core/helpers/index.ts +7 -22
  103. package/src/core/helpers/normalize/index.ts +5 -1
  104. package/src/core/helpers/normalize/normalize-color.ts +5 -1
  105. package/src/core/helpers/normalize/normalize-css-value.ts +5 -1
  106. package/src/core/helpers/normalize/normalize-key-aliases.ts +5 -1
  107. package/src/core/helpers/normalize/normalize-license.ts +5 -1
  108. package/src/core/helpers/normalize/normalize-node.ts +5 -1
  109. package/src/core/helpers/normalize/normalize-path.ts +5 -1
  110. package/src/core/helpers/normalize/normalize-relative-path.ts +5 -1
  111. package/src/core/helpers/normalize/normalize-size.ts +5 -1
  112. package/src/core/helpers/normalize/normalize-url.ts +5 -1
  113. package/src/core/helpers/size/get-content-width.ts +3 -2
  114. package/src/core/helpers/size/get-scroll-parent.ts +11 -5
  115. package/src/core/helpers/size/index.ts +5 -1
  116. package/src/core/helpers/size/inner-width.ts +5 -1
  117. package/src/core/helpers/size/object-size.ts +5 -1
  118. package/src/core/helpers/size/offset.ts +5 -1
  119. package/src/core/helpers/size/position.ts +5 -1
  120. package/src/core/helpers/string/camel-case.ts +5 -1
  121. package/src/core/helpers/string/i18n.ts +6 -2
  122. package/src/core/helpers/string/index.ts +5 -1
  123. package/src/core/helpers/string/kebab-case.ts +5 -1
  124. package/src/core/helpers/string/stringify.ts +5 -1
  125. package/src/core/helpers/string/trim.ts +5 -1
  126. package/src/core/helpers/string/ucfirst.ts +5 -1
  127. package/src/core/helpers/{append-script.ts → utils/append-script.ts} +7 -3
  128. package/src/core/helpers/{browser.ts → utils/browser.ts} +5 -1
  129. package/src/core/helpers/{build-query.ts → utils/build-query.ts} +7 -3
  130. package/src/core/helpers/{complete-url.ts → utils/complete-url.ts} +5 -1
  131. package/src/core/helpers/{config-proto.ts → utils/config-proto.ts} +8 -4
  132. package/src/core/helpers/{convert-media-url-to-video-embed.ts → utils/convert-media-url-to-video-embed.ts} +6 -2
  133. package/src/core/helpers/{css.ts → utils/css.ts} +9 -5
  134. package/src/core/helpers/{ctrl-key.ts → utils/ctrl-key.ts} +5 -1
  135. package/src/core/helpers/{data-bind.ts → utils/data-bind.ts} +8 -4
  136. package/src/core/helpers/{default-language.ts → utils/default-language.ts} +6 -2
  137. package/src/core/helpers/{type.ts → utils/error.ts} +5 -1
  138. package/src/core/helpers/{extend.ts → utils/extend.ts} +6 -2
  139. package/src/core/helpers/utils/get-class-name.ts +5 -1
  140. package/src/core/helpers/utils/get.ts +5 -1
  141. package/src/core/helpers/{human-size-to-bytes.ts → utils/human-size-to-bytes.ts} +5 -1
  142. package/src/core/helpers/utils/index.ts +22 -1
  143. package/src/core/helpers/utils/mark-deprecated.ts +5 -1
  144. package/src/core/helpers/{parse-query.ts → utils/parse-query.ts} +6 -2
  145. package/src/core/helpers/{scroll-into-view.ts → utils/scroll-into-view.ts} +5 -1
  146. package/src/core/helpers/{selector.ts → utils/selector.ts} +13 -9
  147. package/src/core/helpers/utils/set.ts +5 -1
  148. package/src/core/helpers/utils/stack.ts +6 -1
  149. package/src/core/helpers/utils/utils.ts +7 -3
  150. package/src/core/helpers/{val.ts → utils/val.ts} +5 -1
  151. package/src/core/plugin/README.md +133 -0
  152. package/src/core/plugin/index.ts +12 -0
  153. package/src/core/{plugin-system.ts → plugin/plugin-system.ts} +7 -3
  154. package/src/core/{plugin.ts → plugin/plugin.ts} +11 -5
  155. package/src/core/request/README.md +11 -0
  156. package/src/core/request/ajax.ts +23 -14
  157. package/src/core/request/config.ts +5 -1
  158. package/src/core/request/index.ts +5 -1
  159. package/src/core/request/response.ts +13 -5
  160. package/src/core/selection/README.md +20 -0
  161. package/src/core/selection/index.ts +5 -1
  162. package/src/core/selection/select.ts +8 -2
  163. package/src/core/selection/style/api/element-has-same-style.ts +2 -1
  164. package/src/core/selection/style/api/extract.ts +2 -1
  165. package/src/core/selection/style/api/finite-state-machine.ts +1 -1
  166. package/src/core/selection/style/api/get-suit-child.ts +2 -1
  167. package/src/core/selection/style/api/get-suit-parent.ts +2 -1
  168. package/src/core/selection/style/api/index.ts +1 -1
  169. package/src/core/selection/style/api/is-inside-invisible-element.ts +2 -1
  170. package/src/core/selection/style/api/is-normal-node.ts +2 -1
  171. package/src/core/selection/style/api/is-suit-element.ts +2 -1
  172. package/src/core/selection/style/api/toggle/toggle-css.ts +3 -2
  173. package/src/core/selection/style/api/toggle/toggle-ordered-list.ts +2 -1
  174. package/src/core/selection/style/api/toggle-commit-styles.ts +2 -1
  175. package/src/core/selection/style/api/unwrap-children.ts +2 -1
  176. package/src/core/selection/style/api/wrap-and-commit-style.ts +2 -1
  177. package/src/core/selection/style/api/wrap-ordered-list.ts +2 -1
  178. package/src/core/selection/style/api/wrap-unwrapped-text.ts +2 -1
  179. package/src/core/selection/style/apply-style.ts +5 -1
  180. package/src/core/selection/style/commit-style.ts +5 -1
  181. package/src/core/storage/README.md +13 -0
  182. package/src/core/storage/engines/local-storage-provider.ts +5 -1
  183. package/src/core/storage/engines/memory-storage-provider.ts +5 -1
  184. package/src/core/storage/index.ts +5 -1
  185. package/src/core/storage/storage.ts +7 -1
  186. package/src/core/traits/elms.ts +5 -1
  187. package/src/core/traits/index.ts +5 -1
  188. package/src/core/traits/mods.ts +5 -1
  189. package/src/core/ui/README.md +51 -0
  190. package/src/core/ui/button/README.md +3 -0
  191. package/src/core/ui/button/button/button.less +1 -1
  192. package/src/core/ui/button/button/button.ts +6 -2
  193. package/src/core/ui/button/group/group.ts +6 -2
  194. package/src/core/ui/button/index.ts +7 -1
  195. package/src/core/ui/element.ts +5 -1
  196. package/src/core/ui/form/README.md +22 -0
  197. package/src/core/ui/form/block/block.ts +6 -2
  198. package/src/core/ui/form/form.ts +8 -2
  199. package/src/core/ui/form/index.ts +5 -1
  200. package/src/core/ui/form/inputs/area/area.ts +5 -1
  201. package/src/core/ui/form/inputs/checkbox/checkbox.ts +5 -1
  202. package/src/core/ui/form/inputs/file/file.ts +5 -1
  203. package/src/core/ui/form/inputs/index.ts +5 -1
  204. package/src/core/ui/form/inputs/input/input.ts +5 -1
  205. package/src/core/ui/form/inputs/select/select.ts +5 -1
  206. package/src/core/ui/form/validators/index.ts +5 -1
  207. package/src/core/ui/form/validators/input.ts +5 -1
  208. package/src/core/ui/form/validators/select.ts +5 -1
  209. package/src/core/ui/group/README.md +1 -0
  210. package/src/core/ui/{list → group}/group.less +1 -1
  211. package/src/core/ui/{list → group}/group.ts +7 -1
  212. package/src/core/ui/{list → group}/index.ts +5 -1
  213. package/src/core/ui/{list → group}/list.less +1 -1
  214. package/src/core/ui/{list → group}/list.ts +5 -1
  215. package/src/core/ui/{list → group}/separator.ts +5 -1
  216. package/src/core/ui/{list → group}/spacer.ts +5 -1
  217. package/src/core/ui/helpers/buttons.ts +5 -1
  218. package/src/core/ui/helpers/get-control-type.ts +5 -1
  219. package/src/core/ui/helpers/get-strong-control-types.ts +5 -1
  220. package/src/core/ui/icon.ts +6 -2
  221. package/src/core/ui/index.ts +8 -2
  222. package/src/core/ui/popup/README.md +15 -0
  223. package/src/core/ui/popup/index.ts +5 -1
  224. package/src/core/ui/popup/popup.less +1 -1
  225. package/src/core/ui/popup/popup.ts +13 -3
  226. package/src/core/ui/progress-bar/README.md +1 -0
  227. package/src/core/ui/progress-bar/progress-bar.less +1 -1
  228. package/src/core/ui/progress-bar/progress-bar.ts +7 -1
  229. package/src/core/view/README.md +24 -0
  230. package/src/core/view/view-with-toolbar.less +1 -1
  231. package/src/core/view/view-with-toolbar.ts +5 -1
  232. package/src/core/view/view.ts +11 -4
  233. package/src/header.js +1 -1
  234. package/src/index.ts +7 -1
  235. package/src/jodit.ts +7 -1
  236. package/src/langs/README.md +1 -0
  237. package/src/langs/ar.js +1 -1
  238. package/src/langs/cs_cz.js +1 -1
  239. package/src/langs/de.js +1 -1
  240. package/src/langs/en.js +1 -1
  241. package/src/langs/es.js +1 -1
  242. package/src/langs/fa.js +1 -1
  243. package/src/langs/fr.js +1 -1
  244. package/src/langs/he.js +1 -1
  245. package/src/langs/hu.js +1 -1
  246. package/src/langs/id.js +1 -1
  247. package/src/langs/index.ts +8 -1
  248. package/src/langs/it.js +1 -1
  249. package/src/langs/ja.js +1 -1
  250. package/src/langs/ko.js +1 -1
  251. package/src/langs/nl.js +1 -1
  252. package/src/langs/pl.js +1 -1
  253. package/src/langs/pt_br.js +1 -1
  254. package/src/langs/ru.js +1 -1
  255. package/src/langs/tr.js +1 -1
  256. package/src/langs/zh_cn.js +1 -1
  257. package/src/langs/zh_tw.js +1 -1
  258. package/src/modules/README.md +1 -0
  259. package/src/modules/context-menu/README.md +1 -0
  260. package/src/modules/context-menu/context-menu.less +1 -1
  261. package/src/modules/context-menu/context-menu.ts +7 -1
  262. package/src/modules/dialog/README.md +45 -0
  263. package/src/modules/dialog/alert.ts +5 -1
  264. package/src/modules/dialog/confirm.ts +5 -1
  265. package/src/modules/dialog/dialog.less +1 -1
  266. package/src/modules/dialog/dialog.ts +5 -1
  267. package/src/modules/dialog/index.ts +7 -1
  268. package/src/modules/dialog/prompt.ts +5 -1
  269. package/src/modules/file-browser/{README.MD → README.md} +173 -63
  270. package/src/modules/file-browser/builders/context-menu.ts +7 -3
  271. package/src/modules/file-browser/builders/item.ts +5 -1
  272. package/src/modules/file-browser/config.ts +5 -1
  273. package/src/modules/file-browser/data-provider.ts +5 -1
  274. package/src/modules/file-browser/factories.ts +5 -1
  275. package/src/modules/file-browser/file-browser.ts +36 -17
  276. package/src/modules/file-browser/index.ts +13 -0
  277. package/src/modules/file-browser/listeners/native-listeners.ts +8 -4
  278. package/src/modules/file-browser/listeners/self-listeners.ts +7 -4
  279. package/src/modules/file-browser/listeners/state-listeners.ts +7 -4
  280. package/src/modules/file-browser/styles/file-browser.less +1 -1
  281. package/src/modules/file-browser/styles/index.less +1 -1
  282. package/src/modules/file-browser/styles/preview.less +1 -1
  283. package/src/modules/file-browser/ui/files/files.ts +1 -1
  284. package/src/modules/file-browser/ui/index.ts +5 -1
  285. package/src/modules/file-browser/ui/tree/tree.ts +1 -1
  286. package/src/modules/image-editor/README.md +1 -0
  287. package/src/modules/image-editor/image-editor.less +1 -1
  288. package/src/modules/image-editor/image-editor.ts +12 -11
  289. package/src/modules/image-editor/templates/form.ts +5 -1
  290. package/src/modules/index.ts +12 -6
  291. package/src/modules/observer/README.md +0 -0
  292. package/src/modules/observer/command.ts +5 -1
  293. package/src/modules/observer/observer.ts +7 -1
  294. package/src/modules/observer/snapshot.ts +5 -1
  295. package/src/modules/observer/stack.ts +5 -1
  296. package/src/modules/status-bar/README.md +1 -0
  297. package/src/modules/status-bar/status-bar.less +1 -1
  298. package/src/modules/status-bar/status-bar.ts +7 -1
  299. package/src/modules/table/README.md +3 -0
  300. package/src/modules/{table.ts → table/table.ts} +20 -13
  301. package/src/modules/toolbar/README.md +1 -0
  302. package/src/modules/toolbar/button/README.md +1 -0
  303. package/src/modules/toolbar/button/button.less +1 -1
  304. package/src/modules/toolbar/button/button.ts +7 -1
  305. package/src/modules/toolbar/button/content.less +1 -1
  306. package/src/modules/toolbar/button/content.ts +5 -1
  307. package/src/modules/toolbar/button/index.ts +5 -1
  308. package/src/modules/toolbar/collection/README.md +1 -0
  309. package/src/modules/toolbar/collection/collection.less +2 -2
  310. package/src/modules/toolbar/collection/collection.ts +7 -1
  311. package/src/modules/toolbar/collection/editor-collection.ts +5 -1
  312. package/src/modules/toolbar/factory.ts +7 -1
  313. package/src/modules/uploader/README.md +1 -0
  314. package/src/modules/uploader/uploader.less +1 -1
  315. package/src/modules/uploader/uploader.ts +7 -1
  316. package/src/modules/widget/README.md +1 -0
  317. package/src/modules/widget/color-picker/README.md +1 -0
  318. package/src/modules/widget/color-picker/color-picker.less +1 -1
  319. package/src/modules/widget/color-picker/color-picker.ts +7 -1
  320. package/src/modules/widget/file-selector/README.md +1 -0
  321. package/src/modules/widget/file-selector/file-selector.ts +7 -1
  322. package/src/modules/widget/index.ts +7 -1
  323. package/src/modules/widget/tabs/README.md +1 -0
  324. package/src/modules/widget/tabs/tabs.less +1 -1
  325. package/src/modules/widget/tabs/tabs.ts +7 -1
  326. package/src/modules/widget/widget.less +1 -1
  327. package/src/plugins/README.md +3 -0
  328. package/src/plugins/about/about.less +1 -1
  329. package/src/plugins/about/about.ts +5 -1
  330. package/src/plugins/add-new-line/README.md +6 -0
  331. package/src/plugins/add-new-line/add-new-line.less +1 -1
  332. package/src/plugins/add-new-line/add-new-line.ts +13 -1
  333. package/src/plugins/{bold.ts → bold/bold.ts} +9 -5
  334. package/src/plugins/class-span/class-span.ts +5 -1
  335. package/src/plugins/clipboard/clipboard.ts +5 -1
  336. package/src/plugins/clipboard/config.ts +5 -1
  337. package/src/plugins/clipboard/copy-format.ts +5 -1
  338. package/src/plugins/clipboard/drag-and-drop-element.ts +5 -1
  339. package/src/plugins/clipboard/drag-and-drop.ts +7 -8
  340. package/src/plugins/clipboard/index.ts +5 -1
  341. package/src/plugins/clipboard/paste/helpers.ts +5 -1
  342. package/src/plugins/clipboard/paste/paste.ts +5 -1
  343. package/src/plugins/clipboard/paste-storage/paste-storage.less +1 -1
  344. package/src/plugins/clipboard/paste-storage/paste-storage.ts +5 -1
  345. package/src/plugins/{color.ts → color/color.ts} +10 -6
  346. package/src/plugins/error-messages/error-messages.ts +5 -1
  347. package/src/plugins/error-messages/errors-messages.less +1 -1
  348. package/src/plugins/fix/clean-html.ts +5 -1
  349. package/src/plugins/fix/wrap-text-nodes.ts +5 -1
  350. package/src/plugins/focus/README.md +3 -0
  351. package/src/plugins/{focus.ts → focus/focus.ts} +11 -8
  352. package/src/plugins/{font.ts → font/font.ts} +10 -6
  353. package/src/plugins/{format-block.ts → format-block/format-block.ts} +14 -5
  354. package/src/plugins/fullsize/fullsize.less +1 -1
  355. package/src/plugins/fullsize/fullsize.ts +5 -1
  356. package/src/plugins/{iframe.ts → iframe/iframe.ts} +11 -7
  357. package/src/plugins/image/helpers.ts +5 -1
  358. package/src/plugins/image/image-processor.ts +5 -1
  359. package/src/plugins/image/image-properties/image-properties.less +1 -1
  360. package/src/plugins/image/image-properties/image-properties.ts +5 -1
  361. package/src/plugins/image/image-properties/templates/form.ts +5 -1
  362. package/src/plugins/image/image-properties/templates/index.ts +7 -3
  363. package/src/plugins/image/image-properties/templates/{mainTab.ts → main-tab.ts} +5 -1
  364. package/src/plugins/image/image-properties/templates/{positionTab.ts → position-tab.ts} +5 -1
  365. package/src/plugins/image/image.ts +5 -1
  366. package/src/plugins/image/index.ts +5 -1
  367. package/src/plugins/{indent.ts → indent/indent.ts} +11 -7
  368. package/src/plugins/index.ts +23 -17
  369. package/src/plugins/inline-popup/config/config.ts +5 -1
  370. package/src/plugins/inline-popup/config/items/a.ts +5 -1
  371. package/src/plugins/inline-popup/config/items/cells.ts +5 -1
  372. package/src/plugins/inline-popup/config/items/iframe.ts +5 -1
  373. package/src/plugins/inline-popup/config/items/img.ts +5 -1
  374. package/src/plugins/inline-popup/config/items/toolbar.ts +5 -1
  375. package/src/plugins/inline-popup/inline-popup.less +1 -1
  376. package/src/plugins/inline-popup/inline-popup.ts +5 -1
  377. package/src/plugins/insert/hr.ts +5 -1
  378. package/src/plugins/insert/index.ts +5 -1
  379. package/src/plugins/{justify.ts → justify/justify.ts} +9 -5
  380. package/src/plugins/keyboard/backspace/backspace.ts +187 -0
  381. package/src/plugins/keyboard/backspace/cases/check-join-neighbors.ts +117 -0
  382. package/src/plugins/keyboard/backspace/cases/check-join-two-lists.ts +56 -0
  383. package/src/plugins/keyboard/backspace/cases/check-not-collapsed.ts +28 -0
  384. package/src/plugins/keyboard/backspace/cases/check-remove-char.ts +192 -0
  385. package/src/plugins/keyboard/backspace/cases/check-remove-content-not-editable.ts +47 -0
  386. package/src/plugins/keyboard/backspace/cases/check-remove-empty-neighbor.ts +44 -0
  387. package/src/plugins/keyboard/backspace/cases/check-remove-empty-parent.ts +82 -0
  388. package/src/plugins/keyboard/backspace/cases/check-remove-unbreakable-element.ts +48 -0
  389. package/src/plugins/keyboard/backspace/cases/check-table-cell.ts +32 -0
  390. package/src/plugins/keyboard/backspace/cases/check-unwrap-first-list-item.ts +59 -0
  391. package/src/plugins/keyboard/backspace/cases/index.ts +27 -0
  392. package/src/plugins/keyboard/backspace/config.ts +37 -0
  393. package/src/plugins/keyboard/backspace/interface.d.ts +11 -0
  394. package/src/plugins/keyboard/enter.ts +5 -1
  395. package/src/plugins/keyboard/helpers.ts +13 -4
  396. package/src/plugins/keyboard/hotkeys.ts +5 -1
  397. package/src/plugins/keyboard/key-arrow-outside.ts +6 -1
  398. package/src/plugins/{limit.ts → limit/limit.ts} +12 -8
  399. package/src/plugins/link/link.ts +5 -1
  400. package/src/plugins/link/template.ts +5 -1
  401. package/src/plugins/media/file.ts +5 -1
  402. package/src/plugins/media/index.ts +5 -1
  403. package/src/plugins/media/media.ts +5 -1
  404. package/src/plugins/media/video/config.ts +5 -1
  405. package/src/plugins/media/video/index.ts +5 -1
  406. package/src/plugins/{mobile.ts → mobile/mobile.ts} +14 -10
  407. package/src/plugins/{ordered-list.ts → ordered-list/ordered-list.ts} +11 -7
  408. package/src/plugins/placeholder/placeholder.less +1 -1
  409. package/src/plugins/placeholder/placeholder.ts +5 -1
  410. package/src/plugins/{powered-by-jodit.ts → powered-by-jodit/powered-by-jodit.ts} +10 -3
  411. package/src/plugins/print/index.ts +5 -1
  412. package/src/plugins/print/preview.ts +5 -1
  413. package/src/plugins/print/print.ts +5 -1
  414. package/src/plugins/{redo-undo.ts → redo-undo/redo-undo.ts} +9 -5
  415. package/src/plugins/resizer/resizer.less +1 -1
  416. package/src/plugins/resizer/resizer.ts +12 -3
  417. package/src/plugins/search/search.less +1 -1
  418. package/src/plugins/search/search.ts +5 -1
  419. package/src/plugins/{select.ts → select/select.ts} +11 -8
  420. package/src/plugins/size/config.ts +6 -1
  421. package/src/plugins/size/index.ts +5 -1
  422. package/src/plugins/size/resize-handler.ts +5 -1
  423. package/src/plugins/size/size.less +1 -1
  424. package/src/plugins/size/size.ts +5 -1
  425. package/src/plugins/source/README.md +60 -0
  426. package/src/plugins/source/config.ts +18 -3
  427. package/src/plugins/source/const.ts +5 -1
  428. package/src/plugins/source/editor/engines/ace.ts +5 -1
  429. package/src/plugins/source/editor/engines/area.ts +5 -1
  430. package/src/plugins/source/editor/engines/custom.ts +5 -1
  431. package/src/plugins/source/editor/engines/index.ts +5 -1
  432. package/src/plugins/source/editor/factory.ts +25 -16
  433. package/src/plugins/source/editor/sourceEditor.ts +5 -1
  434. package/src/plugins/source/index.ts +7 -1
  435. package/src/plugins/source/source.less +1 -1
  436. package/src/plugins/source/source.ts +5 -1
  437. package/src/plugins/{stat.ts → stat/stat.ts} +11 -7
  438. package/src/plugins/sticky/sticky.less +1 -1
  439. package/src/plugins/sticky/sticky.ts +5 -1
  440. package/src/plugins/symbols/config.ts +5 -1
  441. package/src/plugins/symbols/symbols.less +1 -1
  442. package/src/plugins/symbols/symbols.ts +5 -1
  443. package/src/plugins/table/config.ts +5 -1
  444. package/src/plugins/table/index.ts +5 -1
  445. package/src/plugins/table/resize-cells.ts +5 -1
  446. package/src/plugins/table/select-cells.ts +6 -2
  447. package/src/plugins/table/table-keyboard-navigation.ts +5 -1
  448. package/src/plugins/table/table.less +1 -1
  449. package/src/plugins/table/table.ts +5 -1
  450. package/src/plugins/tooltip/tooltip.less +1 -1
  451. package/src/plugins/tooltip/tooltip.ts +5 -1
  452. package/src/plugins/xpath/xpath.less +1 -1
  453. package/src/plugins/xpath/xpath.ts +5 -1
  454. package/src/polyfills.ts +1 -1
  455. package/src/styles/form.less +1 -1
  456. package/src/styles/icons/README.md +1 -0
  457. package/src/styles/icons/index.ts +7 -1
  458. package/src/styles/index.less +1 -1
  459. package/src/styles/jodit.less +1 -1
  460. package/src/styles/mixins.less +1 -1
  461. package/src/styles/modules/button-group.less +1 -1
  462. package/src/styles/modules/grid.less +1 -1
  463. package/src/styles/modules/icon.less +1 -1
  464. package/src/styles/modules/texticons.less +1 -1
  465. package/src/styles/reset.less +1 -1
  466. package/src/styles/themes/dark.less +1 -1
  467. package/src/styles/variables.less +1 -1
  468. package/src/types/ajax.d.ts +8 -1
  469. package/src/types/async.d.ts +7 -1
  470. package/src/types/context.d.ts +5 -1
  471. package/src/types/core.ts +5 -1
  472. package/src/types/create.d.ts +5 -1
  473. package/src/types/dialog.d.ts +5 -1
  474. package/src/types/events.d.ts +9 -5
  475. package/src/types/file-browser.d.ts +21 -5
  476. package/src/types/form.d.ts +5 -1
  477. package/src/types/index.d.ts +6 -2
  478. package/src/types/jodit.d.ts +5 -1
  479. package/src/types/{observe.d.ts → observer.d.ts} +7 -5
  480. package/src/types/plugin.d.ts +5 -1
  481. package/src/types/popup.d.ts +5 -1
  482. package/src/types/select.d.ts +5 -1
  483. package/src/types/source.d.ts +5 -1
  484. package/src/types/storage.ts +5 -1
  485. package/src/types/style.d.ts +5 -1
  486. package/src/types/toolbar.d.ts +5 -1
  487. package/src/types/traits.d.ts +5 -1
  488. package/src/types/types.d.ts +5 -1
  489. package/src/types/ui.d.ts +5 -1
  490. package/src/types/uploader.d.ts +4 -2
  491. package/src/types/view.d.ts +5 -1
  492. package/src/typings.d.ts +5 -1
  493. package/tsdoc.json +20 -0
  494. package/types/config.d.ts +4 -1
  495. package/types/core/{async.d.ts → async/async.d.ts} +11 -6
  496. package/types/core/async/index.d.ts +9 -0
  497. package/types/core/component/component.d.ts +6 -1
  498. package/types/core/component/index.d.ts +4 -1
  499. package/types/core/component/statuses.d.ts +4 -1
  500. package/types/core/component/view-component.d.ts +4 -1
  501. package/types/core/constants.d.ts +4 -1
  502. package/types/core/{create.d.ts → create/create.d.ts} +7 -2
  503. package/types/core/create/index.d.ts +9 -0
  504. package/types/core/decorators/{cache.d.ts → cache/cache.d.ts} +1 -1
  505. package/types/core/decorators/{component.d.ts → component/component.d.ts} +1 -1
  506. package/types/core/decorators/{debounce.d.ts → debounce/debounce.d.ts} +5 -3
  507. package/types/core/decorators/{hook.d.ts → hook/hook.d.ts} +8 -3
  508. package/types/core/decorators/{idle.d.ts → idle/idle.d.ts} +5 -3
  509. package/types/core/decorators/index.d.ts +15 -10
  510. package/types/core/decorators/{nonenumerable.d.ts → nonenumerable/nonenumerable.d.ts} +4 -2
  511. package/types/core/decorators/{persistent.d.ts → persistent/persistent.d.ts} +5 -3
  512. package/types/core/decorators/{wait.d.ts → wait/wait.d.ts} +5 -3
  513. package/types/core/decorators/{watch.d.ts → watch/watch.d.ts} +7 -2
  514. package/types/core/{dom.d.ts → dom/dom.d.ts} +12 -3
  515. package/types/core/dom/index.d.ts +9 -0
  516. package/types/core/{events → event-emitter}/event-emitter.d.ts +7 -7
  517. package/types/core/{events → event-emitter}/index.d.ts +4 -1
  518. package/types/core/{events → event-emitter}/observe-object.d.ts +7 -4
  519. package/types/core/{events → event-emitter}/store.d.ts +4 -1
  520. package/types/core/global.d.ts +7 -4
  521. package/types/core/helpers/array/as-array.d.ts +1 -1
  522. package/types/core/helpers/array/index.d.ts +4 -1
  523. package/types/core/helpers/array/split-array.d.ts +1 -1
  524. package/types/core/helpers/array/to-array.d.ts +1 -1
  525. package/types/core/helpers/async/index.d.ts +4 -1
  526. package/types/core/helpers/async/set-timeout.d.ts +4 -1
  527. package/types/core/helpers/checker/has-browser-color-picker.d.ts +4 -1
  528. package/types/core/helpers/checker/index.d.ts +4 -1
  529. package/types/core/helpers/checker/is-array.d.ts +4 -1
  530. package/types/core/helpers/checker/is-boolean.d.ts +4 -1
  531. package/types/core/helpers/checker/is-equal.d.ts +1 -1
  532. package/types/core/helpers/checker/is-function.d.ts +4 -1
  533. package/types/core/helpers/checker/is-html-from-word.d.ts +4 -1
  534. package/types/core/helpers/checker/is-html.d.ts +1 -1
  535. package/types/core/helpers/checker/is-imp-interface.d.ts +4 -1
  536. package/types/core/helpers/checker/is-int.d.ts +1 -1
  537. package/types/core/helpers/checker/is-jodit-object.d.ts +4 -1
  538. package/types/core/helpers/checker/is-license.d.ts +1 -1
  539. package/types/core/helpers/checker/is-native-function.d.ts +4 -1
  540. package/types/core/helpers/checker/is-number.d.ts +4 -1
  541. package/types/core/helpers/checker/is-numeric.d.ts +1 -1
  542. package/types/core/helpers/checker/is-plain-object.d.ts +4 -1
  543. package/types/core/helpers/checker/is-promise.d.ts +4 -1
  544. package/types/core/helpers/checker/is-string.d.ts +4 -1
  545. package/types/core/helpers/checker/is-url.d.ts +4 -1
  546. package/types/core/helpers/checker/is-valid-name.d.ts +4 -1
  547. package/types/core/helpers/checker/is-void.d.ts +4 -1
  548. package/types/core/helpers/checker/is-window.d.ts +4 -1
  549. package/types/core/helpers/color/color-to-hex.d.ts +4 -1
  550. package/types/core/helpers/color/index.d.ts +4 -1
  551. package/types/core/helpers/html/apply-styles.d.ts +1 -1
  552. package/types/core/helpers/html/clean-from-word.d.ts +1 -1
  553. package/types/core/helpers/html/htmlspecialchars.d.ts +4 -1
  554. package/types/core/helpers/html/index.d.ts +4 -1
  555. package/types/core/helpers/html/nl2br.d.ts +4 -1
  556. package/types/core/helpers/html/strip-tags.d.ts +1 -1
  557. package/types/core/helpers/index.d.ts +6 -19
  558. package/types/core/helpers/normalize/index.d.ts +4 -1
  559. package/types/core/helpers/normalize/normalize-color.d.ts +1 -1
  560. package/types/core/helpers/normalize/normalize-css-value.d.ts +1 -1
  561. package/types/core/helpers/normalize/normalize-key-aliases.d.ts +1 -1
  562. package/types/core/helpers/normalize/normalize-license.d.ts +4 -1
  563. package/types/core/helpers/normalize/normalize-node.d.ts +1 -1
  564. package/types/core/helpers/normalize/normalize-path.d.ts +1 -1
  565. package/types/core/helpers/normalize/normalize-relative-path.d.ts +4 -1
  566. package/types/core/helpers/normalize/normalize-size.d.ts +4 -1
  567. package/types/core/helpers/normalize/normalize-url.d.ts +4 -1
  568. package/types/core/helpers/size/get-content-width.d.ts +2 -2
  569. package/types/core/helpers/size/get-scroll-parent.d.ts +4 -1
  570. package/types/core/helpers/size/index.d.ts +4 -1
  571. package/types/core/helpers/size/inner-width.d.ts +4 -1
  572. package/types/core/helpers/size/object-size.d.ts +1 -1
  573. package/types/core/helpers/size/offset.d.ts +4 -1
  574. package/types/core/helpers/size/position.d.ts +4 -1
  575. package/types/core/helpers/string/camel-case.d.ts +4 -1
  576. package/types/core/helpers/string/i18n.d.ts +4 -1
  577. package/types/core/helpers/string/index.d.ts +4 -1
  578. package/types/core/helpers/string/kebab-case.d.ts +4 -1
  579. package/types/core/helpers/string/stringify.d.ts +1 -1
  580. package/types/core/helpers/string/trim.d.ts +1 -1
  581. package/types/core/helpers/string/ucfirst.d.ts +4 -1
  582. package/types/core/helpers/{append-script.d.ts → utils/append-script.d.ts} +5 -2
  583. package/types/core/helpers/{browser.d.ts → utils/browser.d.ts} +4 -1
  584. package/types/core/helpers/{build-query.d.ts → utils/build-query.d.ts} +5 -2
  585. package/types/core/helpers/{complete-url.d.ts → utils/complete-url.d.ts} +4 -1
  586. package/types/core/helpers/{config-proto.d.ts → utils/config-proto.d.ts} +5 -2
  587. package/types/core/helpers/{convert-media-url-to-video-embed.d.ts → utils/convert-media-url-to-video-embed.d.ts} +1 -1
  588. package/types/core/helpers/{css.d.ts → utils/css.d.ts} +5 -2
  589. package/types/core/helpers/{ctrl-key.d.ts → utils/ctrl-key.d.ts} +4 -1
  590. package/types/core/helpers/{data-bind.d.ts → utils/data-bind.d.ts} +5 -2
  591. package/types/core/helpers/{default-language.d.ts → utils/default-language.d.ts} +1 -1
  592. package/types/core/helpers/{type.d.ts → utils/error.d.ts} +4 -1
  593. package/types/core/helpers/{extend.d.ts → utils/extend.d.ts} +1 -1
  594. package/types/core/helpers/utils/get-class-name.d.ts +4 -1
  595. package/types/core/helpers/utils/get.d.ts +4 -1
  596. package/types/core/helpers/{human-size-to-bytes.d.ts → utils/human-size-to-bytes.d.ts} +4 -1
  597. package/types/core/helpers/utils/index.d.ts +21 -1
  598. package/types/core/helpers/utils/mark-deprecated.d.ts +4 -1
  599. package/types/core/helpers/{parse-query.d.ts → utils/parse-query.d.ts} +5 -2
  600. package/types/core/helpers/{scroll-into-view.d.ts → utils/scroll-into-view.d.ts} +4 -1
  601. package/types/core/helpers/{selector.d.ts → utils/selector.d.ts} +5 -2
  602. package/types/core/helpers/utils/set.d.ts +4 -1
  603. package/types/core/helpers/utils/stack.d.ts +4 -1
  604. package/types/core/helpers/utils/utils.d.ts +4 -1
  605. package/types/core/helpers/{val.d.ts → utils/val.d.ts} +4 -1
  606. package/types/core/plugin/index.d.ts +10 -0
  607. package/types/core/{plugin-system.d.ts → plugin/plugin-system.d.ts} +5 -2
  608. package/types/core/{plugin.d.ts → plugin/plugin.d.ts} +8 -3
  609. package/types/core/request/ajax.d.ts +7 -2
  610. package/types/core/request/config.d.ts +4 -1
  611. package/types/core/request/index.d.ts +4 -1
  612. package/types/core/request/response.d.ts +6 -2
  613. package/types/core/selection/index.d.ts +4 -1
  614. package/types/core/selection/select.d.ts +6 -1
  615. package/types/core/selection/style/api/element-has-same-style.d.ts +2 -1
  616. package/types/core/selection/style/api/extract.d.ts +2 -1
  617. package/types/core/selection/style/api/finite-state-machine.d.ts +1 -1
  618. package/types/core/selection/style/api/get-suit-child.d.ts +2 -1
  619. package/types/core/selection/style/api/get-suit-parent.d.ts +2 -1
  620. package/types/core/selection/style/api/index.d.ts +1 -1
  621. package/types/core/selection/style/api/is-inside-invisible-element.d.ts +2 -1
  622. package/types/core/selection/style/api/is-normal-node.d.ts +2 -1
  623. package/types/core/selection/style/api/is-suit-element.d.ts +2 -1
  624. package/types/core/selection/style/api/toggle/toggle-css.d.ts +2 -1
  625. package/types/core/selection/style/api/toggle/toggle-ordered-list.d.ts +2 -1
  626. package/types/core/selection/style/api/toggle-commit-styles.d.ts +2 -1
  627. package/types/core/selection/style/api/unwrap-children.d.ts +2 -1
  628. package/types/core/selection/style/api/wrap-and-commit-style.d.ts +2 -1
  629. package/types/core/selection/style/api/wrap-ordered-list.d.ts +2 -1
  630. package/types/core/selection/style/api/wrap-unwrapped-text.d.ts +2 -1
  631. package/types/core/selection/style/apply-style.d.ts +4 -1
  632. package/types/core/selection/style/commit-style.d.ts +4 -1
  633. package/types/core/storage/engines/local-storage-provider.d.ts +4 -1
  634. package/types/core/storage/engines/memory-storage-provider.d.ts +4 -1
  635. package/types/core/storage/index.d.ts +4 -1
  636. package/types/core/storage/storage.d.ts +6 -1
  637. package/types/core/traits/elms.d.ts +4 -1
  638. package/types/core/traits/index.d.ts +4 -1
  639. package/types/core/traits/mods.d.ts +4 -1
  640. package/types/core/ui/button/button/button.d.ts +4 -1
  641. package/types/core/ui/button/group/group.d.ts +5 -2
  642. package/types/core/ui/button/index.d.ts +6 -1
  643. package/types/core/ui/element.d.ts +4 -1
  644. package/types/core/ui/form/block/block.d.ts +5 -2
  645. package/types/core/ui/form/form.d.ts +7 -2
  646. package/types/core/ui/form/index.d.ts +4 -1
  647. package/types/core/ui/form/inputs/area/area.d.ts +4 -1
  648. package/types/core/ui/form/inputs/checkbox/checkbox.d.ts +4 -1
  649. package/types/core/ui/form/inputs/file/file.d.ts +4 -1
  650. package/types/core/ui/form/inputs/index.d.ts +4 -1
  651. package/types/core/ui/form/inputs/input/input.d.ts +4 -1
  652. package/types/core/ui/form/inputs/select/select.d.ts +4 -1
  653. package/types/core/ui/form/validators/index.d.ts +4 -1
  654. package/types/core/ui/form/validators/input.d.ts +4 -1
  655. package/types/core/ui/form/validators/select.d.ts +4 -1
  656. package/types/core/ui/{list → group}/group.d.ts +6 -1
  657. package/types/core/ui/{list → group}/index.d.ts +4 -1
  658. package/types/core/ui/{list → group}/list.d.ts +4 -1
  659. package/types/core/ui/{list → group}/separator.d.ts +4 -1
  660. package/types/core/ui/{list → group}/spacer.d.ts +4 -1
  661. package/types/core/ui/helpers/buttons.d.ts +4 -1
  662. package/types/core/ui/helpers/get-control-type.d.ts +4 -1
  663. package/types/core/ui/helpers/get-strong-control-types.d.ts +4 -1
  664. package/types/core/ui/icon.d.ts +4 -1
  665. package/types/core/ui/index.d.ts +7 -2
  666. package/types/core/ui/popup/index.d.ts +4 -1
  667. package/types/core/ui/popup/popup.d.ts +6 -1
  668. package/types/core/ui/progress-bar/progress-bar.d.ts +6 -1
  669. package/types/core/view/view-with-toolbar.d.ts +4 -1
  670. package/types/core/view/view.d.ts +9 -4
  671. package/types/index.d.ts +6 -1
  672. package/types/jodit.d.ts +6 -1
  673. package/types/langs/index.d.ts +6 -1
  674. package/types/modules/context-menu/context-menu.d.ts +6 -1
  675. package/types/modules/dialog/alert.d.ts +4 -1
  676. package/types/modules/dialog/confirm.d.ts +4 -1
  677. package/types/modules/dialog/dialog.d.ts +4 -1
  678. package/types/modules/dialog/index.d.ts +6 -1
  679. package/types/modules/dialog/prompt.d.ts +4 -1
  680. package/types/modules/file-browser/builders/context-menu.d.ts +6 -3
  681. package/types/modules/file-browser/builders/item.d.ts +4 -1
  682. package/types/modules/file-browser/config.d.ts +1 -1
  683. package/types/modules/file-browser/data-provider.d.ts +4 -1
  684. package/types/modules/file-browser/factories.d.ts +4 -1
  685. package/types/modules/file-browser/file-browser.d.ts +10 -4
  686. package/types/modules/file-browser/index.d.ts +11 -0
  687. package/types/modules/file-browser/listeners/native-listeners.d.ts +6 -4
  688. package/types/modules/file-browser/listeners/self-listeners.d.ts +6 -3
  689. package/types/modules/file-browser/listeners/state-listeners.d.ts +6 -3
  690. package/types/modules/file-browser/ui/files/files.d.ts +1 -1
  691. package/types/modules/file-browser/ui/index.d.ts +4 -1
  692. package/types/modules/file-browser/ui/tree/tree.d.ts +1 -1
  693. package/types/modules/image-editor/image-editor.d.ts +12 -10
  694. package/types/modules/image-editor/templates/form.d.ts +4 -1
  695. package/types/modules/index.d.ts +11 -6
  696. package/types/modules/observer/command.d.ts +4 -1
  697. package/types/modules/observer/observer.d.ts +6 -1
  698. package/types/modules/observer/snapshot.d.ts +4 -1
  699. package/types/modules/observer/stack.d.ts +4 -1
  700. package/types/modules/status-bar/status-bar.d.ts +6 -1
  701. package/types/modules/{table.d.ts → table/table.d.ts} +7 -7
  702. package/types/modules/toolbar/button/button.d.ts +6 -1
  703. package/types/modules/toolbar/button/content.d.ts +4 -1
  704. package/types/modules/toolbar/button/index.d.ts +4 -1
  705. package/types/modules/toolbar/collection/collection.d.ts +6 -1
  706. package/types/modules/toolbar/collection/editor-collection.d.ts +4 -1
  707. package/types/modules/toolbar/factory.d.ts +6 -1
  708. package/types/modules/uploader/uploader.d.ts +6 -1
  709. package/types/modules/widget/color-picker/color-picker.d.ts +6 -1
  710. package/types/modules/widget/file-selector/file-selector.d.ts +6 -1
  711. package/types/modules/widget/index.d.ts +6 -1
  712. package/types/modules/widget/tabs/tabs.d.ts +6 -1
  713. package/types/plugins/about/about.d.ts +4 -1
  714. package/types/plugins/add-new-line/add-new-line.d.ts +12 -1
  715. package/types/plugins/{bold.d.ts → bold/bold.d.ts} +6 -3
  716. package/types/plugins/class-span/class-span.d.ts +4 -1
  717. package/types/plugins/clipboard/clipboard.d.ts +4 -1
  718. package/types/plugins/clipboard/config.d.ts +1 -1
  719. package/types/plugins/clipboard/copy-format.d.ts +4 -1
  720. package/types/plugins/clipboard/drag-and-drop-element.d.ts +1 -1
  721. package/types/plugins/clipboard/drag-and-drop.d.ts +1 -1
  722. package/types/plugins/clipboard/index.d.ts +4 -1
  723. package/types/plugins/clipboard/paste/helpers.d.ts +4 -1
  724. package/types/plugins/clipboard/paste/paste.d.ts +4 -1
  725. package/types/plugins/clipboard/paste-storage/paste-storage.d.ts +4 -1
  726. package/types/plugins/{color.d.ts → color/color.d.ts} +5 -2
  727. package/types/plugins/error-messages/error-messages.d.ts +4 -1
  728. package/types/plugins/fix/clean-html.d.ts +4 -1
  729. package/types/plugins/fix/wrap-text-nodes.d.ts +4 -1
  730. package/types/plugins/{focus.d.ts → focus/focus.d.ts} +8 -6
  731. package/types/plugins/{font.d.ts → font/font.d.ts} +6 -3
  732. package/types/plugins/{format-block.d.ts → format-block/format-block.d.ts} +5 -2
  733. package/types/plugins/fullsize/fullsize.d.ts +4 -1
  734. package/types/plugins/{iframe.d.ts → iframe/iframe.d.ts} +6 -3
  735. package/types/plugins/image/helpers.d.ts +1 -1
  736. package/types/plugins/image/image-processor.d.ts +4 -1
  737. package/types/plugins/image/image-properties/image-properties.d.ts +4 -1
  738. package/types/plugins/image/image-properties/templates/form.d.ts +4 -1
  739. package/types/plugins/image/image-properties/templates/index.d.ts +6 -3
  740. package/types/plugins/image/image-properties/templates/{mainTab.d.ts → main-tab.d.ts} +4 -1
  741. package/types/plugins/image/image-properties/templates/{positionTab.d.ts → position-tab.d.ts} +4 -1
  742. package/types/plugins/image/image.d.ts +4 -1
  743. package/types/plugins/image/index.d.ts +4 -1
  744. package/types/plugins/{indent.d.ts → indent/indent.d.ts} +6 -3
  745. package/types/plugins/index.d.ts +22 -17
  746. package/types/plugins/inline-popup/config/config.d.ts +4 -1
  747. package/types/plugins/inline-popup/inline-popup.d.ts +4 -1
  748. package/types/plugins/insert/hr.d.ts +4 -1
  749. package/types/plugins/insert/index.d.ts +4 -1
  750. package/types/plugins/{justify.d.ts → justify/justify.d.ts} +5 -2
  751. package/types/plugins/keyboard/backspace/backspace.d.ts +31 -0
  752. package/types/plugins/keyboard/backspace/cases/check-join-neighbors.d.ts +10 -0
  753. package/types/plugins/keyboard/backspace/cases/check-join-two-lists.d.ts +20 -0
  754. package/types/plugins/keyboard/backspace/cases/check-not-collapsed.d.ts +20 -0
  755. package/types/plugins/keyboard/backspace/cases/check-remove-char.d.ts +21 -0
  756. package/types/plugins/keyboard/backspace/cases/check-remove-content-not-editable.d.ts +11 -0
  757. package/types/plugins/keyboard/backspace/cases/check-remove-empty-neighbor.d.ts +20 -0
  758. package/types/plugins/keyboard/backspace/cases/check-remove-empty-parent.d.ts +21 -0
  759. package/types/plugins/keyboard/backspace/cases/check-remove-unbreakable-element.d.ts +21 -0
  760. package/types/plugins/keyboard/backspace/cases/check-table-cell.d.ts +21 -0
  761. package/types/plugins/keyboard/backspace/cases/check-unwrap-first-list-item.d.ts +21 -0
  762. package/types/plugins/keyboard/backspace/cases/index.d.ts +8 -0
  763. package/types/plugins/keyboard/backspace/config.d.ts +20 -0
  764. package/types/plugins/keyboard/enter.d.ts +4 -1
  765. package/types/plugins/keyboard/helpers.d.ts +6 -3
  766. package/types/plugins/keyboard/hotkeys.d.ts +4 -1
  767. package/types/plugins/keyboard/key-arrow-outside.d.ts +4 -1
  768. package/types/plugins/{limit.d.ts → limit/limit.d.ts} +7 -4
  769. package/types/plugins/link/link.d.ts +4 -1
  770. package/types/plugins/link/template.d.ts +4 -1
  771. package/types/plugins/media/file.d.ts +4 -1
  772. package/types/plugins/media/index.d.ts +4 -1
  773. package/types/plugins/media/media.d.ts +4 -1
  774. package/types/plugins/media/video/config.d.ts +1 -1
  775. package/types/plugins/media/video/index.d.ts +4 -1
  776. package/types/plugins/{mobile.d.ts → mobile/mobile.d.ts} +6 -3
  777. package/types/plugins/{ordered-list.d.ts → ordered-list/ordered-list.d.ts} +6 -3
  778. package/types/plugins/placeholder/placeholder.d.ts +4 -1
  779. package/types/plugins/{powered-by-jodit.d.ts → powered-by-jodit/powered-by-jodit.d.ts} +9 -3
  780. package/types/plugins/print/index.d.ts +4 -1
  781. package/types/plugins/print/preview.d.ts +4 -1
  782. package/types/plugins/print/print.d.ts +4 -1
  783. package/types/plugins/{redo-undo.d.ts → redo-undo/redo-undo.d.ts} +6 -3
  784. package/types/plugins/resizer/resizer.d.ts +4 -1
  785. package/types/plugins/search/search.d.ts +4 -1
  786. package/types/plugins/{select.d.ts → select/select.d.ts} +6 -4
  787. package/types/plugins/size/config.d.ts +5 -0
  788. package/types/plugins/size/index.d.ts +4 -1
  789. package/types/plugins/size/resize-handler.d.ts +4 -1
  790. package/types/plugins/size/size.d.ts +4 -1
  791. package/types/plugins/source/config.d.ts +16 -3
  792. package/types/plugins/source/const.d.ts +4 -1
  793. package/types/plugins/source/editor/engines/ace.d.ts +4 -1
  794. package/types/plugins/source/editor/engines/area.d.ts +4 -1
  795. package/types/plugins/source/editor/engines/index.d.ts +4 -1
  796. package/types/plugins/source/editor/factory.d.ts +5 -2
  797. package/types/plugins/source/editor/sourceEditor.d.ts +4 -1
  798. package/types/plugins/source/index.d.ts +6 -1
  799. package/types/plugins/source/source.d.ts +4 -1
  800. package/types/plugins/{stat.d.ts → stat/stat.d.ts} +3 -3
  801. package/types/plugins/sticky/sticky.d.ts +4 -1
  802. package/types/plugins/symbols/config.d.ts +1 -1
  803. package/types/plugins/symbols/symbols.d.ts +4 -1
  804. package/types/plugins/table/config.d.ts +1 -1
  805. package/types/plugins/table/index.d.ts +4 -1
  806. package/types/plugins/table/resize-cells.d.ts +4 -1
  807. package/types/plugins/table/select-cells.d.ts +4 -1
  808. package/types/plugins/table/table-keyboard-navigation.d.ts +4 -1
  809. package/types/plugins/table/table.d.ts +4 -1
  810. package/types/plugins/tooltip/tooltip.d.ts +4 -1
  811. package/types/plugins/xpath/xpath.d.ts +4 -1
  812. package/types/styles/icons/index.d.ts +6 -1
  813. package/types/types/core.d.ts +4 -1
  814. package/types/types/storage.d.ts +4 -1
  815. package/types/types/types/ajax.d.ts +8 -1
  816. package/types/types/types/async.d.ts +7 -1
  817. package/types/types/types/context.d.ts +5 -1
  818. package/types/types/types/core.ts +5 -1
  819. package/types/types/types/create.d.ts +5 -1
  820. package/types/types/types/dialog.d.ts +5 -1
  821. package/types/types/types/events.d.ts +9 -5
  822. package/types/types/types/file-browser.d.ts +21 -5
  823. package/types/types/types/form.d.ts +5 -1
  824. package/types/types/types/index.d.ts +6 -2
  825. package/types/types/types/jodit.d.ts +5 -1
  826. package/types/types/types/{observe.d.ts → observer.d.ts} +7 -5
  827. package/types/types/types/plugin.d.ts +5 -1
  828. package/types/types/types/popup.d.ts +5 -1
  829. package/types/types/types/select.d.ts +5 -1
  830. package/types/types/types/source.d.ts +5 -1
  831. package/types/types/types/storage.ts +5 -1
  832. package/types/types/types/style.d.ts +5 -1
  833. package/types/types/types/toolbar.d.ts +5 -1
  834. package/types/types/types/traits.d.ts +5 -1
  835. package/types/types/types/types.d.ts +5 -1
  836. package/types/types/types/ui.d.ts +5 -1
  837. package/types/types/types/uploader.d.ts +4 -2
  838. package/types/types/types/view.d.ts +5 -1
  839. package/src/core/decorators/spy.ts +0 -55
  840. package/src/core/helpers/each.ts +0 -61
  841. package/src/plugins/keyboard/delete.ts +0 -768
  842. package/types/core/helpers/each.d.ts +0 -20
  843. package/types/plugins/keyboard/delete.d.ts +0 -163
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  export const completeUrl = (url: string): string => {
@@ -1,13 +1,17 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
5
  */
6
6
 
7
- import type { IDictionary } from '../../types';
7
+ /**
8
+ * @module helpers/utils
9
+ */
10
+
11
+ import type { IDictionary } from '../../../types';
8
12
  import { isAtom } from './extend';
9
- import { isArray, isPlainObject, isString, isVoid } from './checker';
10
- import { Config } from '../../config';
13
+ import { isArray, isPlainObject, isString, isVoid } from '../checker';
14
+ import { Config } from '../../../config';
11
15
  import { keys } from './utils';
12
16
  /**
13
17
  * @example
@@ -1,10 +1,14 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
5
  */
6
6
 
7
- import { isURL } from './checker/';
7
+ /**
8
+ * @module helpers/utils
9
+ */
10
+
11
+ import { isURL } from '../checker/';
8
12
  import { parseQuery } from './parse-query';
9
13
 
10
14
  /**
@@ -1,13 +1,17 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
5
  */
6
6
 
7
- import type { IStyle, StyleValue } from '../../types';
8
- import { isPlainObject, isNumeric, isVoid, isBoolean } from './checker/';
9
- import { normalizeCssValue } from './normalize/';
10
- import { camelCase, kebabCase } from './string/';
7
+ /**
8
+ * @module helpers/utils
9
+ */
10
+
11
+ import type { IStyle, StyleValue } from '../../../types';
12
+ import { isPlainObject, isNumeric, isVoid, isBoolean } from '../checker/';
13
+ import { normalizeCssValue } from '../normalize/';
14
+ import { camelCase, kebabCase } from '../string/';
11
15
 
12
16
  export function css(
13
17
  element: HTMLElement,
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  /**
@@ -1,12 +1,16 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
5
  */
6
6
 
7
- import type { IEventEmitter, IViewComponent, Nullable } from '../../types';
8
- import { ViewComponent } from '../component';
9
- import { isViewObject } from './checker';
7
+ /**
8
+ * @module helpers/utils
9
+ */
10
+
11
+ import type { IEventEmitter, IViewComponent, Nullable } from '../../../types';
12
+ import { ViewComponent } from '../../component';
13
+ import { isViewObject } from '../checker';
10
14
 
11
15
  const store = new WeakMap();
12
16
 
@@ -1,10 +1,14 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
5
  */
6
6
 
7
- import { isString } from './checker';
7
+ /**
8
+ * @module helpers/utils
9
+ */
10
+
11
+ import { isString } from '../checker';
8
12
 
9
13
  /**
10
14
  * Try define user language
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  /**
@@ -1,10 +1,14 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
5
  */
6
6
 
7
- import { stringify } from './string/stringify';
7
+ /**
8
+ * @module helpers/utils
9
+ */
10
+
11
+ import { stringify } from '../string/stringify';
8
12
 
9
13
  export function isAtom(obj: unknown): boolean {
10
14
  return obj && (obj as any).isAtom;
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  import type { IDictionary } from '../../../types';
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  import type { IDictionary, Nullable } from '../../../types';
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  /**
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  export * from './mark-deprecated';
@@ -10,3 +14,20 @@ export * from './get';
10
14
  export * from './set';
11
15
  export * from './get-class-name';
12
16
  export * from './stack';
17
+ export * from './append-script';
18
+ export * from './browser';
19
+ export * from './build-query';
20
+ export * from './complete-url';
21
+ export * from './config-proto';
22
+ export * from './convert-media-url-to-video-embed';
23
+ export * from './css';
24
+ export * from './ctrl-key';
25
+ export * from './data-bind';
26
+ export * from './default-language';
27
+ export * from './extend';
28
+ export * from './human-size-to-bytes';
29
+ export * from './parse-query';
30
+ export * from './scroll-into-view';
31
+ export * from './selector';
32
+ export * from './error';
33
+ export * from './val';
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  /**
@@ -1,10 +1,14 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
5
  */
6
6
 
7
- import type { IDictionary } from '../../types';
7
+ /**
8
+ * @module helpers/utils
9
+ */
10
+
11
+ import type { IDictionary } from '../../../types';
8
12
 
9
13
  /**
10
14
  * Parse query string
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  export const inView = (
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  import type {
@@ -9,15 +13,15 @@ import type {
9
13
  IDictionary,
10
14
  IUIElement,
11
15
  Nullable
12
- } from '../../types/';
13
- import { IS_IE } from '../constants';
14
- import { isString } from './checker';
16
+ } from '../../../types/';
17
+ import { IS_IE } from '../../constants';
18
+ import { isString } from '../checker';
15
19
  import { attr } from './utils';
16
- import { error } from './type';
17
- import { Dom } from '../dom';
18
- import { camelCase } from './string';
19
- import { toArray } from './array';
20
- import { UIElement } from '../ui';
20
+ import { error } from './error';
21
+ import { Dom } from '../../dom';
22
+ import { camelCase } from '../string';
23
+ import { toArray } from '../array';
24
+ import { UIElement } from '../../ui';
21
25
 
22
26
  let temp = 1;
23
27
 
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  import type { IDictionary } from '../../../types';
@@ -1,8 +1,13 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
5
  */
6
+
7
+ /**
8
+ * @module helpers/utils
9
+ */
10
+
6
11
  import type { CanUndef } from '../../../types';
7
12
 
8
13
  export class LimitedStack<T> {
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  import type {
@@ -16,10 +20,10 @@ import type {
16
20
  import { isFunction } from '../checker/is-function';
17
21
  import { isPromise } from '../checker/is-promise';
18
22
  import { get } from './get';
19
- import { dataBind } from '../data-bind';
23
+ import { dataBind } from './data-bind';
20
24
  import { isVoid } from '../checker/is-void';
21
25
  import { isPlainObject, isString } from '../checker';
22
- import { css } from '../css';
26
+ import { css } from './css';
23
27
  import { CamelCaseToKebabCase } from '../string';
24
28
 
25
29
  /**
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module helpers/utils
5
9
  */
6
10
 
7
11
  export const val = (
@@ -0,0 +1,133 @@
1
+ Jodit plugins are designed to extend the basic functionality of the editor.
2
+ There are built-in plugins, without which the editor will not work correctly. There are plugins that add completely new functionality.
3
+ You can write your own plugin that will either change the current behavior of the editor or add a new function.
4
+
5
+ Plugins can be both simple functions and complex classes.
6
+
7
+ In the simplest case, it's just a function that receives a Jodit instance as input.
8
+
9
+ ```js
10
+ Jodit.plugins.add('alertMyId', function (jodit) {
11
+ alert(jodit.id);
12
+ });
13
+ ```
14
+
15
+ The moment you create an instance of Jodit, all plugins are initialized.
16
+
17
+ ```js
18
+ const editor = Jodit.make('#editorId'); // alert('editorId')
19
+ ```
20
+
21
+ This is usually not what you expect. You probably want the plugin to take action on certain events.
22
+ The [EventEmiter](https://github.com/xdan/jodit/blob/master/src/types/events.d.ts#L9) editor will help you with this.
23
+
24
+ ```js
25
+ Jodit.plugins.add('keyLogger', function (jodit) {
26
+ jodit.events.on('keydown', (e) => {
27
+ sendAnalytics('keydown', e.key);
28
+ });
29
+ });
30
+ ```
31
+
32
+ As mentioned above, plugins can be more complex than just a function. A plugin can be a class:
33
+
34
+ ```js
35
+ class resizeEditor {
36
+ hasStyle = true;
37
+
38
+ buttons = [
39
+ {
40
+ name: 'custom',
41
+ group: 'other'
42
+ }
43
+ ];
44
+
45
+ requires = ['enter', 'drag-and-drop'];
46
+
47
+ init(jodit: IJodit): void {
48
+ jodit.events.on('afterInit', () => {
49
+ Jodit.ns.Helpers.css(jodit.editor, {
50
+ width: 400
51
+ });
52
+ });
53
+ }
54
+
55
+ destruct() {
56
+ Jodit.ns.Helpers.css(this.jodit.editor, {
57
+ width: null
58
+ });
59
+ }
60
+ }
61
+
62
+ Jodit.plugins.add('resizeEditor', resizeEditor);
63
+ ```
64
+
65
+ ### hasStyle
66
+
67
+ - Type: boolean
68
+ - Default: false
69
+
70
+ Jodit will try to load the styles along the same path as the plugin is loaded.
71
+
72
+ ### buttons
73
+
74
+ - Type: Array<IPluginButton>
75
+ - Default: `[]`
76
+
77
+ ```typescript
78
+ export interface IPluginButton {
79
+ name: string;
80
+ group?: ButtonGroup;
81
+ position?: number;
82
+ options?: IControlType;
83
+ }
84
+
85
+ export type ButtonGroup =
86
+ | string
87
+ | 'source'
88
+ | 'font-style'
89
+ | 'script'
90
+ | 'list'
91
+ | 'indent'
92
+ | 'font'
93
+ | 'color'
94
+ | 'media'
95
+ | 'state'
96
+ | 'clipboard'
97
+ | 'insert'
98
+ | 'history'
99
+ | 'search'
100
+ | 'other'
101
+ | 'info';
102
+ ```
103
+
104
+ Buttons to be automatically added to the editor's button groups.
105
+ Those. if the plugin is connected, the button will appear in the list, if not connected, it will disappear.
106
+
107
+ ```js
108
+ Jodit.defaultOptions.controls.insertTime = {
109
+ icon: require('./icon.svg'),
110
+ tooltip: 'Insert Time',
111
+ exec: (editor: IJodit) => {
112
+ editor.s.insertHTML(new Date().toTimeString());
113
+ }
114
+ };
115
+
116
+ class insertTimePlugin {
117
+ buttons = [
118
+ {
119
+ name: 'insertTime',
120
+ group: 'insert'
121
+ }
122
+ ];
123
+ }
124
+
125
+ Jodit.plugins.add('insertTimePlugin', insertTimePlugin);
126
+ ```
127
+
128
+ ### requires
129
+
130
+ - Type: Array<string>
131
+ - Default: []
132
+
133
+ If your plugin depends on other plugins, then it must be initialized after them.
@@ -0,0 +1,12 @@
1
+ /*!
2
+ * Jodit Editor (https://xdsoft.net/jodit/)
3
+ * Released under MIT see LICENSE.txt in the project root for license information.
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module plugin
9
+ */
10
+
11
+ export * from './plugin-system';
12
+ export * from './plugin';
@@ -1,7 +1,11 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
+ */
6
+
7
+ /**
8
+ * @module plugin
5
9
  */
6
10
 
7
11
  import type {
@@ -14,7 +18,7 @@ import type {
14
18
  PluginType,
15
19
  CanPromise,
16
20
  CanUndef
17
- } from '../types';
21
+ } from '../../types';
18
22
 
19
23
  import {
20
24
  isInitable,
@@ -27,7 +31,7 @@ import {
27
31
  kebabCase,
28
32
  callPromise,
29
33
  isArray
30
- } from './helpers';
34
+ } from '../helpers';
31
35
 
32
36
  /**
33
37
  * Jodit plugin system
@@ -1,13 +1,19 @@
1
1
  /*!
2
2
  * Jodit Editor (https://xdsoft.net/jodit/)
3
3
  * Released under MIT see LICENSE.txt in the project root for license information.
4
- * Copyright (c) 2013-2021 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
4
+ * Copyright (c) 2013-2022 Valeriy Chupurnov. All rights reserved. https://xdsoft.net
5
5
  */
6
6
 
7
- import type { IJodit, IPlugin, IViewBased } from '../types';
8
- import { ViewComponent, STATUSES } from './component';
9
- import { autobind } from './decorators';
10
- import { isJoditObject } from './helpers';
7
+ /**
8
+ * [[include:core/plugin/README.md]]
9
+ * @packageDocumentation
10
+ * @module plugin
11
+ */
12
+
13
+ import type { IJodit, IPlugin, IViewBased } from '../../types';
14
+ import { ViewComponent, STATUSES } from '../component';
15
+ import { autobind } from '../decorators';
16
+ import { isJoditObject } from '../helpers';
11
17
 
12
18
  export abstract class Plugin<T extends IViewBased = IJodit>
13
19
  extends ViewComponent<T>
@@ -0,0 +1,11 @@
1
+ The module is responsible for sending requests over the network:
2
+
3
+ ```js
4
+ const ajax = new Jodit.modules.Ajax(jodit, {
5
+ url: 'https://xdsoft.net'
6
+ });
7
+
8
+ ajax.send().then((resp) => console.log(resp.text()));
9
+ ```
10
+
11
+ The second argument can be settings [[AjaxOptions]]