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
@@ -0,0 +1,51 @@
1
+ # Jodit UI System
2
+
3
+ For interface design, Jodit provides a set of components that allow you to build complex interfaces.
4
+ Their advantage is the uniformity of the insert/drop interfaces. Reactivity created by observing the fields of the component.
5
+
6
+ Each UI element must implement the interface [[IIUElement]], and should extend [[UIElement]].
7
+
8
+ > For each element to work, an instance is required when creating it [[IView]]
9
+
10
+ ```ts
11
+ import './style.less'
12
+
13
+ import { UIElement } from 'jodit/src/core/ui';
14
+ import { component } from 'jodit/src/core/decorators';
15
+
16
+ @component()
17
+ export class UISlider extends UIElement {
18
+ className() {
19
+ return 'UISlider';
20
+ }
21
+
22
+ render(): string {
23
+ return `<div>
24
+ <div class="&__wrapper">
25
+ <div class="&__item">1</div>
26
+ <div class="&__item">2</div>
27
+ <div class="&__item">3</div>
28
+ </div>
29
+ </div>`;
30
+ }
31
+ }
32
+ ```
33
+
34
+ Pay attention to the styles. They connect explicitly.
35
+
36
+ File `style.less`
37
+ ```less
38
+ .jodit-ui-slider {
39
+ &__wrapper {
40
+ display: flex;
41
+ overflow: scroll;
42
+ }
43
+
44
+ &__slider-item {
45
+ display: flex;
46
+ width: 200px;
47
+ height: 100px;
48
+ background-color: red;
49
+ }
50
+ }
51
+ ```
@@ -0,0 +1,3 @@
1
+ # Jodit Button UI Element
2
+
3
+ Component for creating buttons.
@@ -1,7 +1,7 @@
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
7
  @import (reference) '../../../../styles/variables';
@@ -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 ui/button
5
9
  */
6
10
 
7
11
  import './button.less';
@@ -17,7 +21,7 @@ import { UIElement } from '../../element';
17
21
  import { Dom } from '../../../dom';
18
22
  import { attr, isString, isFunction } from '../../../helpers';
19
23
  import { Icon } from '../../icon';
20
- import { UIList } from '../../list/list';
24
+ import { UIList } from '../../group';
21
25
  import { autobind, component, watch } from '../../../decorators';
22
26
  import { STATUSES } from '../../../component';
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 ui/button
5
9
  */
6
10
 
7
11
  import './group.less';
@@ -12,7 +16,7 @@ import type {
12
16
  IUIOption,
13
17
  IViewBased
14
18
  } from '../../../../types';
15
- import { UIGroup } from '../../list/group';
19
+ import { UIGroup } from '../../group';
16
20
  import { component } from '../../../decorators';
17
21
  import { UIButton } from '../button/button';
18
22
 
@@ -1,7 +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
+ */
6
+
7
+ /**
8
+ * [[include:core/ui/button/README.md]]
9
+ * @packageDocumentation
10
+ * @module ui/button
5
11
  */
6
12
 
7
13
  export * from './button/button';
@@ -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 ui
5
9
  */
6
10
 
7
11
  import type {
@@ -0,0 +1,22 @@
1
+ # Jodit Form UI Element
2
+
3
+ Component for creating form interfaces.
4
+
5
+ ```ts
6
+ import { UIForm, UIInput, UIBlock } from 'jodit/src/core/ui';
7
+
8
+ const form = new UIForm(jodit, [
9
+ new UIInput(editor, {
10
+ required: true,
11
+ label: 'URL',
12
+ name: 'url',
13
+ type: 'text',
14
+ placeholder: 'https://'
15
+ }),
16
+ new UIInput(editor, {
17
+ name: 'text',
18
+ label: 'Alternative text'
19
+ }),
20
+ new UIBlock(editor, [button])
21
+ ]);
22
+ ```
@@ -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
+ */
6
+
7
+ /**
8
+ * @module ui/form/block
5
9
  */
6
10
 
7
11
  import './block.less';
8
12
 
9
13
  import type { IUIElement, IViewBased } from '../../../../types';
10
- import { UIGroup } from '../../list/group';
14
+ import { UIGroup } from '../../group';
11
15
  import { attr } from '../../../helpers/utils';
12
16
  import { component } from '../../../decorators';
13
17
 
@@ -1,11 +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
+ */
6
+
7
+ /**
8
+ * [[include:core/ui/form/README.md]]
9
+ * @packageDocumentation
10
+ * @module ui/form
5
11
  */
6
12
 
7
13
  import type { IDictionary, IUIForm, IUIInput, IUISelect } from '../../../types';
8
- import { UIGroup } from '../list/group';
14
+ import { UIGroup } from '../group';
9
15
  import { UIInput, UISelect } from './inputs';
10
16
  import { attr } from '../../helpers/utils';
11
17
  import { component } from '../../decorators';
@@ -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 ui/form
5
9
  */
6
10
 
7
11
  export * from './form';
@@ -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 ui/form/inputs
5
9
  */
6
10
 
7
11
  import './area.less';
@@ -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 ui/form/inputs
5
9
  */
6
10
 
7
11
  import './checkbox.less';
@@ -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 ui/form/inputs
5
9
  */
6
10
 
7
11
  import './file.less';
@@ -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 ui/form/inputs
5
9
  */
6
10
 
7
11
  export * from './input/input';
@@ -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 ui/form/inputs
5
9
  */
6
10
 
7
11
  import './input.less';
@@ -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 ui/form/inputs
5
9
  */
6
10
 
7
11
  import './select.less';
@@ -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 ui/form
5
9
  */
6
10
 
7
11
  export * as inputValidators from './input';
@@ -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 ui/form
5
9
  */
6
10
 
7
11
  import type { IUIInput, IUIInputValidator } 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 ui/form
5
9
  */
6
10
 
7
11
  import type { IUIInputValidator } from '../../../../types';
@@ -0,0 +1 @@
1
+ Group component
@@ -1,7 +1,7 @@
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
7
  @import (reference) '../../../styles/variables';
@@ -1,7 +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
+ */
6
+
7
+ /**
8
+ * [[include:core/ui/group/README.md]]
9
+ * @packageDocumentation
10
+ * @module ui/group
5
11
  */
6
12
 
7
13
  import './group.less';
@@ -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 ui/group
5
9
  */
6
10
 
7
11
  export * from './group';
@@ -1,7 +1,7 @@
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
7
  @import (reference) '../../../styles/variables';
@@ -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 ui/group
5
9
  */
6
10
 
7
11
  import './list.less';
@@ -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 ui/group
5
9
  */
6
10
 
7
11
  import { UIElement } from '../element';
@@ -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 ui/group
5
9
  */
6
10
 
7
11
  import { UIElement } from '../element';
@@ -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 ui
5
9
  */
6
10
 
7
11
  import type {
@@ -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 ui
5
9
  */
6
10
 
7
11
  import type {
@@ -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 ui
5
9
  */
6
10
 
7
11
  import type {
@@ -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 ui
5
9
  */
6
10
 
7
11
  import type {
@@ -10,7 +14,7 @@ import type {
10
14
  IUIIconState,
11
15
  IViewBased
12
16
  } from '../../types';
13
- import { css } from '../helpers/css';
17
+ import { css } from '../helpers';
14
18
 
15
19
  export class Icon {
16
20
  private static icons: IDictionary<string> = {};
@@ -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
+ */
6
+
7
+ /**
8
+ * [[include:core/ui/README.md]]
9
+ * @packageDocumentation
10
+ * @module ui
5
11
  */
6
12
 
7
13
  export * from './element';
8
14
  export * from './button';
9
15
  export * from './popup';
10
- export * from './list';
16
+ export * from './group';
11
17
  export * from './form';
12
18
  export * from './icon';
13
19
  export * from './progress-bar/progress-bar';
@@ -0,0 +1,15 @@
1
+ # Jodit UI Popup
2
+
3
+ The module is used to create pop-up windows next to interface elements.
4
+
5
+ ```js
6
+ import { Popup } from 'jodit/src/core/ui';
7
+
8
+ const popup = new Popup(jodit);
9
+ popup.setContent('Hello world').open(() => ({
10
+ left: 100,
11
+ top: 200
12
+ }));
13
+
14
+ popup.close();
15
+ ```
@@ -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 ui/popup
5
9
  */
6
10
 
7
11
  export * from './popup';
@@ -1,7 +1,7 @@
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
7
  @import (reference) '../../../styles/variables';
@@ -1,7 +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
+ */
6
+
7
+ /**
8
+ * [[include:core/ui/popup/README.md]]
9
+ * @packageDocumentation
10
+ * @module ui/popup
5
11
  */
6
12
 
7
13
  import './popup.less';
@@ -21,6 +27,7 @@ import { Dom } from '../../dom';
21
27
  import {
22
28
  attr,
23
29
  css,
30
+ isFunction,
24
31
  isString,
25
32
  kebabCase,
26
33
  markOwner,
@@ -362,12 +369,15 @@ export class Popup extends UIElement implements IPopup {
362
369
  return;
363
370
  }
364
371
 
365
- if (!e.target) {
372
+ const target =
373
+ (isFunction(e.composedPath) && e.composedPath()[0]) ?? e.target;
374
+
375
+ if (!target) {
366
376
  this.close();
367
377
  return;
368
378
  }
369
379
 
370
- const box = UIElement.closestElement(e.target as Node, Popup);
380
+ const box = UIElement.closestElement(target as Node, Popup);
371
381
 
372
382
  if (box && (this === box || box.closest(this))) {
373
383
  return;
@@ -0,0 +1 @@
1
+ # Jodit Progress Bar UI element
@@ -1,7 +1,7 @@
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
7
  @import (reference) '../../../styles/variables';
@@ -1,7 +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
+ */
6
+
7
+ /**
8
+ * [[include:core/ui/progress-bar/README.md]]
9
+ * @packageDocumentation
10
+ * @module ui/progress-bar
5
11
  */
6
12
 
7
13
  import './progress-bar.less';