jodit-pro 4.18.11 → 4.18.13

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 (342) hide show
  1. package/es2015/jodit.css +1 -1
  2. package/es2015/jodit.fat.min.js +6 -6
  3. package/es2015/jodit.js +237 -46
  4. package/es2015/jodit.min.js +14 -14
  5. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  6. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  7. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  8. package/es2015/plugins/autocomplete/autocomplete.css +1 -1
  9. package/es2015/plugins/autocomplete/autocomplete.js +1 -1
  10. package/es2015/plugins/autocomplete/autocomplete.min.js +1 -1
  11. package/es2015/plugins/backup/backup.css +1 -1
  12. package/es2015/plugins/backup/backup.js +1 -1
  13. package/es2015/plugins/backup/backup.min.js +1 -1
  14. package/es2015/plugins/button-generator/button-generator.css +1 -1
  15. package/es2015/plugins/button-generator/button-generator.js +1 -1
  16. package/es2015/plugins/button-generator/button-generator.min.js +1 -1
  17. package/es2015/plugins/change-case/change-case.js +1 -1
  18. package/es2015/plugins/change-case/change-case.min.js +1 -1
  19. package/es2015/plugins/chart/chart.css +1 -1
  20. package/es2015/plugins/chart/chart.js +1 -1
  21. package/es2015/plugins/chart/chart.min.js +1 -1
  22. package/es2015/plugins/color-picker/color-picker.css +1 -1
  23. package/es2015/plugins/color-picker/color-picker.js +1 -1
  24. package/es2015/plugins/color-picker/color-picker.min.js +1 -1
  25. package/es2015/plugins/emoji/emoji.css +1 -1
  26. package/es2015/plugins/emoji/emoji.js +1 -1
  27. package/es2015/plugins/emoji/emoji.min.js +1 -1
  28. package/es2015/plugins/export-docs/export-docs.js +1 -1
  29. package/es2015/plugins/export-docs/export-docs.min.js +1 -1
  30. package/es2015/plugins/finder/finder.css +1 -1
  31. package/es2015/plugins/finder/finder.js +1 -1
  32. package/es2015/plugins/finder/finder.min.js +1 -1
  33. package/es2015/plugins/google-maps/google-maps.css +1 -1
  34. package/es2015/plugins/google-maps/google-maps.js +1 -1
  35. package/es2015/plugins/google-maps/google-maps.min.js +1 -1
  36. package/es2015/plugins/google-search/google-search.js +1 -1
  37. package/es2015/plugins/google-search/google-search.min.js +1 -1
  38. package/es2015/plugins/highlight-signature/highlight-signature.js +1 -1
  39. package/es2015/plugins/highlight-signature/highlight-signature.min.js +1 -1
  40. package/es2015/plugins/iframe-editor/iframe-editor.css +1 -1
  41. package/es2015/plugins/iframe-editor/iframe-editor.js +1 -1
  42. package/es2015/plugins/iframe-editor/iframe-editor.min.js +1 -1
  43. package/es2015/plugins/image-editor-pro/image-editor-pro.css +1 -1
  44. package/es2015/plugins/image-editor-pro/image-editor-pro.js +1 -1
  45. package/es2015/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
  46. package/es2015/plugins/keyboard/keyboard.css +1 -1
  47. package/es2015/plugins/keyboard/keyboard.js +1 -1
  48. package/es2015/plugins/keyboard/keyboard.min.js +1 -1
  49. package/es2015/plugins/math/math.css +1 -1
  50. package/es2015/plugins/math/math.js +1 -1
  51. package/es2015/plugins/math/math.min.js +1 -1
  52. package/es2015/plugins/mobile-view/mobile-view.js +1 -1
  53. package/es2015/plugins/mobile-view/mobile-view.min.js +1 -1
  54. package/es2015/plugins/page-break/page-break.js +1 -1
  55. package/es2015/plugins/page-break/page-break.min.js +1 -1
  56. package/es2015/plugins/paste-code/paste-code.css +1 -1
  57. package/es2015/plugins/paste-code/paste-code.js +1 -1
  58. package/es2015/plugins/paste-code/paste-code.min.js +1 -1
  59. package/es2015/plugins/paste-from-word/paste-from-word.js +1 -1
  60. package/es2015/plugins/paste-from-word/paste-from-word.min.js +1 -1
  61. package/es2015/plugins/show-blocks/show-blocks.js +1 -1
  62. package/es2015/plugins/show-blocks/show-blocks.min.js +1 -1
  63. package/es2015/plugins/style/style.css +1 -1
  64. package/es2015/plugins/style/style.js +1 -1
  65. package/es2015/plugins/style/style.min.js +1 -1
  66. package/es2015/plugins/templates/templates.css +1 -1
  67. package/es2015/plugins/templates/templates.js +1 -1
  68. package/es2015/plugins/templates/templates.min.js +1 -1
  69. package/es2015/plugins/todo-list/todo-list.css +1 -1
  70. package/es2015/plugins/todo-list/todo-list.js +1 -1
  71. package/es2015/plugins/todo-list/todo-list.min.js +1 -1
  72. package/es2015/plugins/translate/translate.css +1 -1
  73. package/es2015/plugins/translate/translate.js +1 -1
  74. package/es2015/plugins/translate/translate.min.js +1 -1
  75. package/es2015/plugins/tune-block/tune-block.css +1 -1
  76. package/es2015/plugins/tune-block/tune-block.js +1 -1
  77. package/es2015/plugins/tune-block/tune-block.min.js +1 -1
  78. package/es2018/jodit.fat.min.js +6 -6
  79. package/es2018/jodit.min.js +6 -6
  80. package/es2018/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  81. package/es2018/plugins/autocomplete/autocomplete.min.js +1 -1
  82. package/es2018/plugins/backup/backup.min.js +1 -1
  83. package/es2018/plugins/button-generator/button-generator.min.js +1 -1
  84. package/es2018/plugins/change-case/change-case.min.js +1 -1
  85. package/es2018/plugins/chart/chart.min.js +1 -1
  86. package/es2018/plugins/color-picker/color-picker.min.js +1 -1
  87. package/es2018/plugins/emoji/emoji.min.js +1 -1
  88. package/es2018/plugins/export-docs/export-docs.min.js +1 -1
  89. package/es2018/plugins/finder/finder.min.js +1 -1
  90. package/es2018/plugins/google-maps/google-maps.min.js +1 -1
  91. package/es2018/plugins/google-search/google-search.min.js +1 -1
  92. package/es2018/plugins/highlight-signature/highlight-signature.min.js +1 -1
  93. package/es2018/plugins/iframe-editor/iframe-editor.min.js +1 -1
  94. package/es2018/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
  95. package/es2018/plugins/keyboard/keyboard.min.js +1 -1
  96. package/es2018/plugins/math/math.min.js +1 -1
  97. package/es2018/plugins/mobile-view/mobile-view.min.js +1 -1
  98. package/es2018/plugins/page-break/page-break.min.js +1 -1
  99. package/es2018/plugins/paste-code/paste-code.min.js +1 -1
  100. package/es2018/plugins/paste-from-word/paste-from-word.min.js +1 -1
  101. package/es2018/plugins/show-blocks/show-blocks.min.js +1 -1
  102. package/es2018/plugins/style/style.min.js +1 -1
  103. package/es2018/plugins/templates/templates.min.js +1 -1
  104. package/es2018/plugins/todo-list/todo-list.min.js +1 -1
  105. package/es2018/plugins/translate/translate.min.js +1 -1
  106. package/es2018/plugins/tune-block/tune-block.min.js +1 -1
  107. package/es2021/jodit.css +1 -1
  108. package/es2021/jodit.fat.min.js +6 -6
  109. package/es2021/jodit.js +237 -46
  110. package/es2021/jodit.min.js +6 -6
  111. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  112. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  113. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  114. package/es2021/plugins/autocomplete/autocomplete.css +1 -1
  115. package/es2021/plugins/autocomplete/autocomplete.js +1 -1
  116. package/es2021/plugins/autocomplete/autocomplete.min.js +1 -1
  117. package/es2021/plugins/backup/backup.css +1 -1
  118. package/es2021/plugins/backup/backup.js +1 -1
  119. package/es2021/plugins/backup/backup.min.js +1 -1
  120. package/es2021/plugins/button-generator/button-generator.css +1 -1
  121. package/es2021/plugins/button-generator/button-generator.js +1 -1
  122. package/es2021/plugins/button-generator/button-generator.min.js +1 -1
  123. package/es2021/plugins/change-case/change-case.js +1 -1
  124. package/es2021/plugins/change-case/change-case.min.js +1 -1
  125. package/es2021/plugins/chart/chart.css +1 -1
  126. package/es2021/plugins/chart/chart.js +1 -1
  127. package/es2021/plugins/chart/chart.min.js +1 -1
  128. package/es2021/plugins/color-picker/color-picker.css +1 -1
  129. package/es2021/plugins/color-picker/color-picker.js +1 -1
  130. package/es2021/plugins/color-picker/color-picker.min.js +1 -1
  131. package/es2021/plugins/emoji/emoji.css +1 -1
  132. package/es2021/plugins/emoji/emoji.js +1 -1
  133. package/es2021/plugins/emoji/emoji.min.js +1 -1
  134. package/es2021/plugins/export-docs/export-docs.js +1 -1
  135. package/es2021/plugins/export-docs/export-docs.min.js +1 -1
  136. package/es2021/plugins/finder/finder.css +1 -1
  137. package/es2021/plugins/finder/finder.js +1 -1
  138. package/es2021/plugins/finder/finder.min.js +1 -1
  139. package/es2021/plugins/google-maps/google-maps.css +1 -1
  140. package/es2021/plugins/google-maps/google-maps.js +1 -1
  141. package/es2021/plugins/google-maps/google-maps.min.js +1 -1
  142. package/es2021/plugins/google-search/google-search.js +1 -1
  143. package/es2021/plugins/google-search/google-search.min.js +1 -1
  144. package/es2021/plugins/highlight-signature/highlight-signature.js +1 -1
  145. package/es2021/plugins/highlight-signature/highlight-signature.min.js +1 -1
  146. package/es2021/plugins/iframe-editor/iframe-editor.css +1 -1
  147. package/es2021/plugins/iframe-editor/iframe-editor.js +1 -1
  148. package/es2021/plugins/iframe-editor/iframe-editor.min.js +1 -1
  149. package/es2021/plugins/image-editor-pro/image-editor-pro.css +1 -1
  150. package/es2021/plugins/image-editor-pro/image-editor-pro.js +1 -1
  151. package/es2021/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
  152. package/es2021/plugins/keyboard/keyboard.css +1 -1
  153. package/es2021/plugins/keyboard/keyboard.js +1 -1
  154. package/es2021/plugins/keyboard/keyboard.min.js +1 -1
  155. package/es2021/plugins/math/math.css +1 -1
  156. package/es2021/plugins/math/math.js +1 -1
  157. package/es2021/plugins/math/math.min.js +1 -1
  158. package/es2021/plugins/mobile-view/mobile-view.js +1 -1
  159. package/es2021/plugins/mobile-view/mobile-view.min.js +1 -1
  160. package/es2021/plugins/page-break/page-break.js +1 -1
  161. package/es2021/plugins/page-break/page-break.min.js +1 -1
  162. package/es2021/plugins/paste-code/paste-code.css +1 -1
  163. package/es2021/plugins/paste-code/paste-code.js +1 -1
  164. package/es2021/plugins/paste-code/paste-code.min.js +1 -1
  165. package/es2021/plugins/paste-from-word/paste-from-word.js +1 -1
  166. package/es2021/plugins/paste-from-word/paste-from-word.min.js +1 -1
  167. package/es2021/plugins/show-blocks/show-blocks.js +1 -1
  168. package/es2021/plugins/show-blocks/show-blocks.min.js +1 -1
  169. package/es2021/plugins/style/style.css +1 -1
  170. package/es2021/plugins/style/style.js +1 -1
  171. package/es2021/plugins/style/style.min.js +1 -1
  172. package/es2021/plugins/templates/templates.css +1 -1
  173. package/es2021/plugins/templates/templates.js +1 -1
  174. package/es2021/plugins/templates/templates.min.js +1 -1
  175. package/es2021/plugins/todo-list/todo-list.css +1 -1
  176. package/es2021/plugins/todo-list/todo-list.js +1 -1
  177. package/es2021/plugins/todo-list/todo-list.min.js +1 -1
  178. package/es2021/plugins/translate/translate.css +1 -1
  179. package/es2021/plugins/translate/translate.js +1 -1
  180. package/es2021/plugins/translate/translate.min.js +1 -1
  181. package/es2021/plugins/tune-block/tune-block.css +1 -1
  182. package/es2021/plugins/tune-block/tune-block.js +1 -1
  183. package/es2021/plugins/tune-block/tune-block.min.js +1 -1
  184. package/es2021.en/jodit.css +1 -1
  185. package/es2021.en/jodit.fat.min.js +6 -6
  186. package/es2021.en/jodit.js +237 -46
  187. package/es2021.en/jodit.min.js +6 -6
  188. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  189. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  190. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  191. package/es2021.en/plugins/autocomplete/autocomplete.css +1 -1
  192. package/es2021.en/plugins/autocomplete/autocomplete.js +1 -1
  193. package/es2021.en/plugins/autocomplete/autocomplete.min.js +1 -1
  194. package/es2021.en/plugins/backup/backup.css +1 -1
  195. package/es2021.en/plugins/backup/backup.js +1 -1
  196. package/es2021.en/plugins/backup/backup.min.js +1 -1
  197. package/es2021.en/plugins/button-generator/button-generator.css +1 -1
  198. package/es2021.en/plugins/button-generator/button-generator.js +1 -1
  199. package/es2021.en/plugins/button-generator/button-generator.min.js +1 -1
  200. package/es2021.en/plugins/change-case/change-case.js +1 -1
  201. package/es2021.en/plugins/change-case/change-case.min.js +1 -1
  202. package/es2021.en/plugins/chart/chart.css +1 -1
  203. package/es2021.en/plugins/chart/chart.js +1 -1
  204. package/es2021.en/plugins/chart/chart.min.js +1 -1
  205. package/es2021.en/plugins/color-picker/color-picker.css +1 -1
  206. package/es2021.en/plugins/color-picker/color-picker.js +1 -1
  207. package/es2021.en/plugins/color-picker/color-picker.min.js +1 -1
  208. package/es2021.en/plugins/emoji/emoji.css +1 -1
  209. package/es2021.en/plugins/emoji/emoji.js +1 -1
  210. package/es2021.en/plugins/emoji/emoji.min.js +1 -1
  211. package/es2021.en/plugins/export-docs/export-docs.js +1 -1
  212. package/es2021.en/plugins/export-docs/export-docs.min.js +1 -1
  213. package/es2021.en/plugins/finder/finder.css +1 -1
  214. package/es2021.en/plugins/finder/finder.js +1 -1
  215. package/es2021.en/plugins/finder/finder.min.js +1 -1
  216. package/es2021.en/plugins/google-maps/google-maps.css +1 -1
  217. package/es2021.en/plugins/google-maps/google-maps.js +1 -1
  218. package/es2021.en/plugins/google-maps/google-maps.min.js +1 -1
  219. package/es2021.en/plugins/google-search/google-search.js +1 -1
  220. package/es2021.en/plugins/google-search/google-search.min.js +1 -1
  221. package/es2021.en/plugins/highlight-signature/highlight-signature.js +1 -1
  222. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +1 -1
  223. package/es2021.en/plugins/iframe-editor/iframe-editor.css +1 -1
  224. package/es2021.en/plugins/iframe-editor/iframe-editor.js +1 -1
  225. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +1 -1
  226. package/es2021.en/plugins/image-editor-pro/image-editor-pro.css +1 -1
  227. package/es2021.en/plugins/image-editor-pro/image-editor-pro.js +1 -1
  228. package/es2021.en/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
  229. package/es2021.en/plugins/keyboard/keyboard.css +1 -1
  230. package/es2021.en/plugins/keyboard/keyboard.js +1 -1
  231. package/es2021.en/plugins/keyboard/keyboard.min.js +1 -1
  232. package/es2021.en/plugins/math/math.css +1 -1
  233. package/es2021.en/plugins/math/math.js +1 -1
  234. package/es2021.en/plugins/math/math.min.js +1 -1
  235. package/es2021.en/plugins/mobile-view/mobile-view.js +1 -1
  236. package/es2021.en/plugins/mobile-view/mobile-view.min.js +1 -1
  237. package/es2021.en/plugins/page-break/page-break.js +1 -1
  238. package/es2021.en/plugins/page-break/page-break.min.js +1 -1
  239. package/es2021.en/plugins/paste-code/paste-code.css +1 -1
  240. package/es2021.en/plugins/paste-code/paste-code.js +1 -1
  241. package/es2021.en/plugins/paste-code/paste-code.min.js +1 -1
  242. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1 -1
  243. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +1 -1
  244. package/es2021.en/plugins/show-blocks/show-blocks.js +1 -1
  245. package/es2021.en/plugins/show-blocks/show-blocks.min.js +1 -1
  246. package/es2021.en/plugins/style/style.css +1 -1
  247. package/es2021.en/plugins/style/style.js +1 -1
  248. package/es2021.en/plugins/style/style.min.js +1 -1
  249. package/es2021.en/plugins/templates/templates.css +1 -1
  250. package/es2021.en/plugins/templates/templates.js +1 -1
  251. package/es2021.en/plugins/templates/templates.min.js +1 -1
  252. package/es2021.en/plugins/todo-list/todo-list.css +1 -1
  253. package/es2021.en/plugins/todo-list/todo-list.js +1 -1
  254. package/es2021.en/plugins/todo-list/todo-list.min.js +1 -1
  255. package/es2021.en/plugins/translate/translate.css +1 -1
  256. package/es2021.en/plugins/translate/translate.js +1 -1
  257. package/es2021.en/plugins/translate/translate.min.js +1 -1
  258. package/es2021.en/plugins/tune-block/tune-block.css +1 -1
  259. package/es2021.en/plugins/tune-block/tune-block.js +1 -1
  260. package/es2021.en/plugins/tune-block/tune-block.min.js +1 -1
  261. package/es5/jodit.css +2 -2
  262. package/es5/jodit.fat.min.js +2 -2
  263. package/es5/jodit.js +245 -46
  264. package/es5/jodit.min.css +2 -2
  265. package/es5/jodit.min.js +2 -2
  266. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  267. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  268. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  269. package/es5/plugins/autocomplete/autocomplete.css +1 -1
  270. package/es5/plugins/autocomplete/autocomplete.js +1 -1
  271. package/es5/plugins/autocomplete/autocomplete.min.js +1 -1
  272. package/es5/plugins/backup/backup.css +1 -1
  273. package/es5/plugins/backup/backup.js +1 -1
  274. package/es5/plugins/backup/backup.min.js +1 -1
  275. package/es5/plugins/button-generator/button-generator.css +1 -1
  276. package/es5/plugins/button-generator/button-generator.js +1 -1
  277. package/es5/plugins/button-generator/button-generator.min.js +1 -1
  278. package/es5/plugins/change-case/change-case.js +1 -1
  279. package/es5/plugins/change-case/change-case.min.js +1 -1
  280. package/es5/plugins/chart/chart.css +1 -1
  281. package/es5/plugins/chart/chart.js +1 -1
  282. package/es5/plugins/chart/chart.min.js +1 -1
  283. package/es5/plugins/color-picker/color-picker.css +1 -1
  284. package/es5/plugins/color-picker/color-picker.js +1 -1
  285. package/es5/plugins/color-picker/color-picker.min.js +1 -1
  286. package/es5/plugins/emoji/emoji.css +1 -1
  287. package/es5/plugins/emoji/emoji.js +1 -1
  288. package/es5/plugins/emoji/emoji.min.js +1 -1
  289. package/es5/plugins/export-docs/export-docs.js +1 -1
  290. package/es5/plugins/export-docs/export-docs.min.js +1 -1
  291. package/es5/plugins/finder/finder.css +1 -1
  292. package/es5/plugins/finder/finder.js +1 -1
  293. package/es5/plugins/finder/finder.min.js +1 -1
  294. package/es5/plugins/google-maps/google-maps.css +1 -1
  295. package/es5/plugins/google-maps/google-maps.js +1 -1
  296. package/es5/plugins/google-maps/google-maps.min.js +1 -1
  297. package/es5/plugins/google-search/google-search.js +1 -1
  298. package/es5/plugins/google-search/google-search.min.js +1 -1
  299. package/es5/plugins/highlight-signature/highlight-signature.js +1 -1
  300. package/es5/plugins/highlight-signature/highlight-signature.min.js +1 -1
  301. package/es5/plugins/iframe-editor/iframe-editor.css +1 -1
  302. package/es5/plugins/iframe-editor/iframe-editor.js +1 -1
  303. package/es5/plugins/iframe-editor/iframe-editor.min.js +1 -1
  304. package/es5/plugins/image-editor-pro/image-editor-pro.css +1 -1
  305. package/es5/plugins/image-editor-pro/image-editor-pro.js +1 -1
  306. package/es5/plugins/image-editor-pro/image-editor-pro.min.js +1 -1
  307. package/es5/plugins/keyboard/keyboard.css +1 -1
  308. package/es5/plugins/keyboard/keyboard.js +1 -1
  309. package/es5/plugins/keyboard/keyboard.min.js +1 -1
  310. package/es5/plugins/math/math.css +1 -1
  311. package/es5/plugins/math/math.js +1 -1
  312. package/es5/plugins/math/math.min.js +1 -1
  313. package/es5/plugins/mobile-view/mobile-view.js +1 -1
  314. package/es5/plugins/mobile-view/mobile-view.min.js +1 -1
  315. package/es5/plugins/page-break/page-break.js +1 -1
  316. package/es5/plugins/page-break/page-break.min.js +1 -1
  317. package/es5/plugins/paste-code/paste-code.css +1 -1
  318. package/es5/plugins/paste-code/paste-code.js +1 -1
  319. package/es5/plugins/paste-code/paste-code.min.js +1 -1
  320. package/es5/plugins/paste-from-word/paste-from-word.js +1 -1
  321. package/es5/plugins/paste-from-word/paste-from-word.min.js +1 -1
  322. package/es5/plugins/show-blocks/show-blocks.js +1 -1
  323. package/es5/plugins/show-blocks/show-blocks.min.js +1 -1
  324. package/es5/plugins/style/style.css +1 -1
  325. package/es5/plugins/style/style.js +1 -1
  326. package/es5/plugins/style/style.min.js +1 -1
  327. package/es5/plugins/templates/templates.css +1 -1
  328. package/es5/plugins/templates/templates.js +1 -1
  329. package/es5/plugins/templates/templates.min.js +1 -1
  330. package/es5/plugins/todo-list/todo-list.css +1 -1
  331. package/es5/plugins/todo-list/todo-list.js +1 -1
  332. package/es5/plugins/todo-list/todo-list.min.js +1 -1
  333. package/es5/plugins/translate/translate.css +1 -1
  334. package/es5/plugins/translate/translate.js +1 -1
  335. package/es5/plugins/translate/translate.min.js +1 -1
  336. package/es5/plugins/tune-block/tune-block.css +1 -1
  337. package/es5/plugins/tune-block/tune-block.js +1 -1
  338. package/es5/plugins/tune-block/tune-block.min.js +1 -1
  339. package/es5/polyfills.fat.min.js +1 -1
  340. package/es5/polyfills.js +1 -1
  341. package/es5/polyfills.min.js +1 -1
  342. package/package.json +1 -1
package/es2015/jodit.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valerii <chupurnov@gmail.com>
4
- * Version: v4.18.11
4
+ * Version: v4.18.13
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1814,7 +1814,7 @@ __webpack_require__.r(__webpack_exports__);
1814
1814
  * ```
1815
1815
  * @packageDocumentation
1816
1816
  * @module constants
1817
- */ const APP_VERSION = "4.18.11";
1817
+ */ const APP_VERSION = "4.18.13";
1818
1818
  // prettier-ignore
1819
1819
  const ES = "es2015";
1820
1820
  const IS_ES_MODERN = true;
@@ -15477,6 +15477,12 @@ let UITooltip = UITooltip_1 = class UITooltip extends _element_js__WEBPACK_IMPOR
15477
15477
  if (!isOwn) {
15478
15478
  return;
15479
15479
  }
15480
+ // A dialog's `aria-label` is its title and a file input's names its
15481
+ // click target. Neither is a tooltip, and both boxes would put one off
15482
+ // the screen
15483
+ if ((0,_helpers_utils_index_js__WEBPACK_IMPORTED_MODULE_6__.attr)(e.target, 'role') === 'dialog' || _dom_index_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isTag(e.target, 'input') && e.target.type === 'file') {
15484
+ return;
15485
+ }
15480
15486
  this.__currentTarget = e.target;
15481
15487
  const target = e.target;
15482
15488
  this.__open(()=>{
@@ -20205,7 +20211,8 @@ function addClassNames(className, elm) {
20205
20211
  Controls: 'عناصر التحكم',
20206
20212
  'Start at...': 'البدء من...',
20207
20213
  'Start numbering at': 'بدء الترقيم من',
20208
- 'Number for the first item': 'رقم العنصر الأول'
20214
+ 'Number for the first item': 'رقم العنصر الأول',
20215
+ Close: 'إغلاق'
20209
20216
  });
20210
20217
 
20211
20218
 
@@ -20449,7 +20456,8 @@ function addClassNames(className, elm) {
20449
20456
  Controls: 'İdarəetmə elementləri',
20450
20457
  'Start at...': 'Başlanğıc nömrəsi...',
20451
20458
  'Start numbering at': 'Nömrələmənin başlanğıcı',
20452
- 'Number for the first item': 'Birinci bəndin nömrəsi'
20459
+ 'Number for the first item': 'Birinci bəndin nömrəsi',
20460
+ Close: 'Bağla'
20453
20461
  });
20454
20462
 
20455
20463
 
@@ -20685,7 +20693,8 @@ function addClassNames(className, elm) {
20685
20693
  Controls: 'Ovládací prvky',
20686
20694
  'Start at...': 'Začít od...',
20687
20695
  'Start numbering at': 'Začít číslování od',
20688
- 'Number for the first item': 'Číslo první položky'
20696
+ 'Number for the first item': 'Číslo první položky',
20697
+ Close: 'Zavřít'
20689
20698
  });
20690
20699
 
20691
20700
 
@@ -20925,7 +20934,8 @@ function addClassNames(className, elm) {
20925
20934
  Controls: 'Steuerelemente',
20926
20935
  'Start at...': 'Beginnen bei...',
20927
20936
  'Start numbering at': 'Nummerierung beginnen bei',
20928
- 'Number for the first item': 'Nummer des ersten Eintrags'
20937
+ 'Number for the first item': 'Nummer des ersten Eintrags',
20938
+ Close: 'Schließen'
20929
20939
  });
20930
20940
 
20931
20941
 
@@ -21182,7 +21192,8 @@ function addClassNames(className, elm) {
21182
21192
  Controls: 'Controles',
21183
21193
  'Start at...': 'Empezar en...',
21184
21194
  'Start numbering at': 'Empezar la numeración en',
21185
- 'Number for the first item': 'Número del primer elemento'
21195
+ 'Number for the first item': 'Número del primer elemento',
21196
+ Close: 'Cerrar'
21186
21197
  });
21187
21198
 
21188
21199
 
@@ -21417,7 +21428,8 @@ function addClassNames(className, elm) {
21417
21428
  Controls: 'کنترل‌ها',
21418
21429
  'Start at...': 'شروع از...',
21419
21430
  'Start numbering at': 'شروع شماره‌گذاری از',
21420
- 'Number for the first item': 'شماره‌ی نخستین مورد'
21431
+ 'Number for the first item': 'شماره‌ی نخستین مورد',
21432
+ Close: 'بستن'
21421
21433
  });
21422
21434
 
21423
21435
 
@@ -21658,7 +21670,8 @@ function addClassNames(className, elm) {
21658
21670
  Controls: 'Säätimet',
21659
21671
  'Start at...': 'Aloita numerosta...',
21660
21672
  'Start numbering at': 'Aloita numerointi numerosta',
21661
- 'Number for the first item': 'Ensimmäisen kohdan numero'
21673
+ 'Number for the first item': 'Ensimmäisen kohdan numero',
21674
+ Close: 'Sulje'
21662
21675
  });
21663
21676
 
21664
21677
 
@@ -21893,7 +21906,8 @@ function addClassNames(className, elm) {
21893
21906
  Controls: 'Commandes',
21894
21907
  'Start at...': 'Commencer à...',
21895
21908
  'Start numbering at': 'Commencer la numérotation à',
21896
- 'Number for the first item': 'Numéro du premier élément'
21909
+ 'Number for the first item': 'Numéro du premier élément',
21910
+ Close: 'Fermer'
21897
21911
  });
21898
21912
 
21899
21913
 
@@ -22128,7 +22142,8 @@ function addClassNames(className, elm) {
22128
22142
  Controls: 'פקדים',
22129
22143
  'Start at...': 'התחל מ...',
22130
22144
  'Start numbering at': 'התחל מספור מ',
22131
- 'Number for the first item': 'מספר הפריט הראשון'
22145
+ 'Number for the first item': 'מספר הפריט הראשון',
22146
+ Close: 'סגור'
22132
22147
  });
22133
22148
 
22134
22149
 
@@ -22365,7 +22380,8 @@ function addClassNames(className, elm) {
22365
22380
  Controls: 'Vezérlők',
22366
22381
  'Start at...': 'Kezdőszám...',
22367
22382
  'Start numbering at': 'Számozás kezdőértéke',
22368
- 'Number for the first item': 'Az első elem száma'
22383
+ 'Number for the first item': 'Az első elem száma',
22384
+ Close: 'Bezárás'
22369
22385
  });
22370
22386
 
22371
22387
 
@@ -22601,7 +22617,8 @@ function addClassNames(className, elm) {
22601
22617
  Controls: 'Kontrol',
22602
22618
  'Start at...': 'Mulai dari...',
22603
22619
  'Start numbering at': 'Mulai penomoran dari',
22604
- 'Number for the first item': 'Nomor untuk item pertama'
22620
+ 'Number for the first item': 'Nomor untuk item pertama',
22621
+ Close: 'Tutup'
22605
22622
  });
22606
22623
 
22607
22624
 
@@ -22841,7 +22858,8 @@ function addClassNames(className, elm) {
22841
22858
  Controls: 'Controlli',
22842
22859
  'Start at...': 'Inizia da...',
22843
22860
  'Start numbering at': 'Inizia la numerazione da',
22844
- 'Number for the first item': 'Numero del primo elemento'
22861
+ 'Number for the first item': 'Numero del primo elemento',
22862
+ Close: 'Chiudi'
22845
22863
  });
22846
22864
 
22847
22865
 
@@ -23081,7 +23099,8 @@ function addClassNames(className, elm) {
23081
23099
  Controls: 'コントロール',
23082
23100
  'Start at...': '開始番号...',
23083
23101
  'Start numbering at': '番号の開始値',
23084
- 'Number for the first item': '最初の項目の番号'
23102
+ 'Number for the first item': '最初の項目の番号',
23103
+ Close: '閉じる'
23085
23104
  });
23086
23105
 
23087
23106
 
@@ -23327,7 +23346,8 @@ function addClassNames(className, elm) {
23327
23346
  Controls: '컨트롤',
23328
23347
  'Start at...': '시작 번호...',
23329
23348
  'Start numbering at': '번호 매기기 시작 값',
23330
- 'Number for the first item': '첫 번째 항목의 번호'
23349
+ 'Number for the first item': '첫 번째 항목의 번호',
23350
+ Close: '닫기'
23331
23351
  });
23332
23352
 
23333
23353
 
@@ -23562,7 +23582,8 @@ function addClassNames(className, elm) {
23562
23582
  Controls: 'Удирдлага',
23563
23583
  'Start at...': 'Эхлэх дугаар...',
23564
23584
  'Start numbering at': 'Дугаарлалт эхлэх',
23565
- 'Number for the first item': 'Эхний зүйлийн дугаар'
23585
+ 'Number for the first item': 'Эхний зүйлийн дугаар',
23586
+ Close: 'Хаах'
23566
23587
  });
23567
23588
 
23568
23589
 
@@ -23798,7 +23819,8 @@ function addClassNames(className, elm) {
23798
23819
  Controls: 'Bedieningselementen',
23799
23820
  'Start at...': 'Beginnen bij...',
23800
23821
  'Start numbering at': 'Nummering beginnen bij',
23801
- 'Number for the first item': 'Nummer van het eerste item'
23822
+ 'Number for the first item': 'Nummer van het eerste item',
23823
+ Close: 'Sluiten'
23802
23824
  });
23803
23825
 
23804
23826
 
@@ -24042,7 +24064,8 @@ function addClassNames(className, elm) {
24042
24064
  Controls: 'Kontroller',
24043
24065
  'Start at...': 'Start på...',
24044
24066
  'Start numbering at': 'Start nummereringen på',
24045
- 'Number for the first item': 'Nummer for første punkt'
24067
+ 'Number for the first item': 'Nummer for første punkt',
24068
+ Close: 'Lukk'
24046
24069
  });
24047
24070
 
24048
24071
 
@@ -24277,7 +24300,8 @@ function addClassNames(className, elm) {
24277
24300
  Controls: 'Elementy sterujące',
24278
24301
  'Start at...': 'Zacznij od...',
24279
24302
  'Start numbering at': 'Rozpocznij numerowanie od',
24280
- 'Number for the first item': 'Numer pierwszego elementu'
24303
+ 'Number for the first item': 'Numer pierwszego elementu',
24304
+ Close: 'Zamknij'
24281
24305
  });
24282
24306
 
24283
24307
 
@@ -24517,7 +24541,8 @@ function addClassNames(className, elm) {
24517
24541
  Controls: 'Controles',
24518
24542
  'Start at...': 'Começar em...',
24519
24543
  'Start numbering at': 'Começar a numeração em',
24520
- 'Number for the first item': 'Número do primeiro item'
24544
+ 'Number for the first item': 'Número do primeiro item',
24545
+ Close: 'Fechar'
24521
24546
  });
24522
24547
 
24523
24548
 
@@ -24751,7 +24776,8 @@ function addClassNames(className, elm) {
24751
24776
  Controls: 'Элементы управления',
24752
24777
  'Start at...': 'Начать с...',
24753
24778
  'Start numbering at': 'Начать нумерацию с',
24754
- 'Number for the first item': 'Номер первого пункта'
24779
+ 'Number for the first item': 'Номер первого пункта',
24780
+ Close: 'Закрыть'
24755
24781
  });
24756
24782
 
24757
24783
 
@@ -24993,7 +25019,8 @@ function addClassNames(className, elm) {
24993
25019
  Controls: 'Ovládacie prvky',
24994
25020
  'Start at...': 'Začať od...',
24995
25021
  'Start numbering at': 'Začať číslovanie od',
24996
- 'Number for the first item': 'Číslo prvej položky'
25022
+ 'Number for the first item': 'Číslo prvej položky',
25023
+ Close: 'Zavrieť'
24997
25024
  });
24998
25025
 
24999
25026
 
@@ -25236,7 +25263,8 @@ function addClassNames(className, elm) {
25236
25263
  Controls: 'Kontroller',
25237
25264
  'Start at...': 'Börja på...',
25238
25265
  'Start numbering at': 'Börja numreringen på',
25239
- 'Number for the first item': 'Nummer för första punkten'
25266
+ 'Number for the first item': 'Nummer för första punkten',
25267
+ Close: 'Stäng'
25240
25268
  });
25241
25269
 
25242
25270
 
@@ -25471,7 +25499,8 @@ function addClassNames(className, elm) {
25471
25499
  Controls: 'Kontroller',
25472
25500
  'Start at...': 'Başlangıç numarası...',
25473
25501
  'Start numbering at': 'Numaralandırma başlangıcı',
25474
- 'Number for the first item': 'İlk öğenin numarası'
25502
+ 'Number for the first item': 'İlk öğenin numarası',
25503
+ Close: 'Kapat'
25475
25504
  });
25476
25505
 
25477
25506
 
@@ -25705,7 +25734,8 @@ function addClassNames(className, elm) {
25705
25734
  Controls: 'Елементи керування',
25706
25735
  'Start at...': 'Почати з...',
25707
25736
  'Start numbering at': 'Почати нумерацію з',
25708
- 'Number for the first item': 'Номер першого пункту'
25737
+ 'Number for the first item': 'Номер першого пункту',
25738
+ Close: 'Закрити'
25709
25739
  });
25710
25740
 
25711
25741
 
@@ -25941,7 +25971,8 @@ function addClassNames(className, elm) {
25941
25971
  Controls: '播放控件',
25942
25972
  'Start at...': '起始于...',
25943
25973
  'Start numbering at': '编号起始值',
25944
- 'Number for the first item': '第一项的编号'
25974
+ 'Number for the first item': '第一项的编号',
25975
+ Close: '关闭'
25945
25976
  });
25946
25977
 
25947
25978
 
@@ -26176,7 +26207,8 @@ function addClassNames(className, elm) {
26176
26207
  Controls: '播放控制項',
26177
26208
  'Start at...': '起始於...',
26178
26209
  'Start numbering at': '編號起始值',
26179
- 'Number for the first item': '第一項的編號'
26210
+ 'Number for the first item': '第一項的編號',
26211
+ Close: '關閉'
26180
26212
  });
26181
26213
 
26182
26214
 
@@ -26597,6 +26629,9 @@ var Dialog_1;
26597
26629
 
26598
26630
 
26599
26631
 
26632
+ /**
26633
+ * A position from 0 up to `max`, or 0 when the panel is larger than the window
26634
+ */ const clampToWindow = (value, max)=>Math.max(0, Math.min(value, max));
26600
26635
  _config_js__WEBPACK_IMPORTED_MODULE_13__.Config.prototype.dialog = {
26601
26636
  namespace: '',
26602
26637
  extraButtons: [],
@@ -26616,6 +26651,7 @@ _config_js__WEBPACK_IMPORTED_MODULE_13__.Config.prototype.dialog = {
26616
26651
  _config_js__WEBPACK_IMPORTED_MODULE_13__.Config.prototype.controls.dialog = {
26617
26652
  close: {
26618
26653
  icon: 'cancel',
26654
+ tooltip: 'Close',
26619
26655
  exec: (dialog)=>{
26620
26656
  dialog.close();
26621
26657
  }
@@ -26689,6 +26725,11 @@ _config_js__WEBPACK_IMPORTED_MODULE_13__.Config.prototype.controls.dialog = {
26689
26725
  this.startY = e.clientY;
26690
26726
  this.startPoint.x = (0,_core_helpers_utils_index_js__WEBPACK_IMPORTED_MODULE_8__.css)(this.dialog, 'left');
26691
26727
  this.startPoint.y = (0,_core_helpers_utils_index_js__WEBPACK_IMPORTED_MODULE_8__.css)(this.dialog, 'top');
26728
+ // Rounded up: at the right edge a fraction of a pixel less room would
26729
+ // wrap the header of a panel that has no width of its own
26730
+ const { width, height } = this.dialog.getBoundingClientRect();
26731
+ this.startPoint.w = Math.ceil(width);
26732
+ this.startPoint.h = Math.ceil(height);
26692
26733
  this.setMaxZIndex();
26693
26734
  if (e.cancelable) {
26694
26735
  e.preventDefault();
@@ -26704,7 +26745,11 @@ _config_js__WEBPACK_IMPORTED_MODULE_13__.Config.prototype.controls.dialog = {
26704
26745
  }
26705
26746
  __onMouseMove(e) {
26706
26747
  if (this.draggable && this.o.draggable) {
26707
- this.setPosition(this.startPoint.x + e.clientX - this.startX, this.startPoint.y + e.clientY - this.startY);
26748
+ const { documentElement } = this.od;
26749
+ // Keep the whole panel in the window at the size it had when the
26750
+ // drag began. A panel with no width of its own would otherwise
26751
+ // shrink as it neared the right edge, and then leave the window
26752
+ this.setPosition(clampToWindow(this.startPoint.x + e.clientX - this.startX, (documentElement.clientWidth || this.ow.innerWidth) - this.startPoint.w), clampToWindow(this.startPoint.y + e.clientY - this.startY, (documentElement.clientHeight || this.ow.innerHeight) - this.startPoint.h));
26708
26753
  if (this.e) {
26709
26754
  /**
26710
26755
  * Fired when dialog box is moved
@@ -26830,8 +26875,8 @@ _config_js__WEBPACK_IMPORTED_MODULE_13__.Config.prototype.controls.dialog = {
26830
26875
  }
26831
26876
  // strings on purpose: `css()` would truncate fractional pixels
26832
26877
  ;(0,_core_helpers_utils_index_js__WEBPACK_IMPORTED_MODULE_8__.css)(this.dialog, {
26833
- left: (x || left) + 'px',
26834
- top: (y || top) + 'px'
26878
+ left: (x !== null && x !== void 0 ? x : left) + 'px',
26879
+ top: (y !== null && y !== void 0 ? y : top) + 'px'
26835
26880
  });
26836
26881
  return this;
26837
26882
  }
@@ -35043,8 +35088,21 @@ let UiAiAssistant = class UiAiAssistant extends _core_ui_element_js__WEBPACK_IMP
35043
35088
  this.__toggleSubmitButton(true);
35044
35089
  }
35045
35090
  };
35046
- this.__submitButton = (0,_core_ui_index_js__WEBPACK_IMPORTED_MODULE_4__.Button)(jodit, 'ai-assistant', '').onAction(onSubmit);
35047
- this.__tryAgainButton = (0,_core_ui_index_js__WEBPACK_IMPORTED_MODULE_4__.Button)(jodit, 'update', '', 'initial').onAction(onSubmit);
35091
+ this.__submitButton = (0,_core_ui_index_js__WEBPACK_IMPORTED_MODULE_4__.Button)(jodit, {
35092
+ icon: {
35093
+ name: 'ai-assistant'
35094
+ },
35095
+ name: 'ai-assistant',
35096
+ tooltip: 'Submit'
35097
+ }).onAction(onSubmit);
35098
+ this.__tryAgainButton = (0,_core_ui_index_js__WEBPACK_IMPORTED_MODULE_4__.Button)(jodit, {
35099
+ icon: {
35100
+ name: 'update'
35101
+ },
35102
+ name: 'update',
35103
+ tooltip: 'Try Again',
35104
+ variant: 'initial'
35105
+ }).onAction(onSubmit);
35048
35106
  this.promptInput = new _core_ui_index_js__WEBPACK_IMPORTED_MODULE_4__.UITextArea(jodit, {
35049
35107
  name: 'prompt',
35050
35108
  required: true,
@@ -35406,6 +35464,9 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_2__.pluginSystem.add('backspace', backs
35406
35464
  * Check if two separate elements can be connected
35407
35465
  * @private
35408
35466
  */ function checkJoinNeighbors(jodit, fakeNode, backspace) {
35467
+ if (checkJoinBareText(jodit, fakeNode, backspace)) {
35468
+ return true;
35469
+ }
35409
35470
  let nextBox = fakeNode, mainClosestBox = nextBox;
35410
35471
  // Find the main big closest element
35411
35472
  while(nextBox && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.findNotEmptySibling(nextBox, backspace) && nextBox.parentElement !== jodit.editor){
@@ -35433,7 +35494,7 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_2__.pluginSystem.add('backspace', backs
35433
35494
  return true;
35434
35495
  }
35435
35496
  const box = findCaretBox(fakeNode, mainClosestBox);
35436
- if (sibling && (checkPullNextLine(jodit, fakeNode, box, sibling, backspace) || checkMoveListContent(jodit, box, sibling, backspace) || moveContentAndRemoveEmpty(jodit, box, findEdgeBlock(resolveTableSibling(sibling, backspace), backspace, jodit.editor), backspace))) {
35497
+ if (sibling && (checkPullNextLine(jodit, fakeNode, box, sibling, backspace) || checkMoveListContent(jodit, box, sibling, backspace) || checkJoinInlineSibling(jodit, box, sibling, backspace) || moveContentAndRemoveEmpty(jodit, box, findEdgeBlock(resolveTableSibling(sibling, backspace), backspace, jodit.editor), backspace))) {
35437
35498
  jodit.s.setCursorBefore(fakeNode);
35438
35499
  return true;
35439
35500
  }
@@ -35518,6 +35579,70 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_2__.pluginSystem.add('backspace', backs
35518
35579
  }
35519
35580
  return true;
35520
35581
  }
35582
+ /**
35583
+ * A block next to bare text in the same parent joins that text, as the
35584
+ * browsers do: `<li>one<p>|two</p></li>` gives `<li>one|two</li>`, and
35585
+ * `<li><p>one|</p>two</li>` gives `<li><p>one|two</p></li>`
35586
+ * @private
35587
+ */ function checkJoinInlineSibling(jodit, box, sibling, backspace) {
35588
+ if (_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(sibling) || !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(box) || _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isList(box) || // The caret's block is nested deeper than the text: `text<div><p>|x</p></div>`
35589
+ box.parentNode !== sibling.parentNode || Array.from(box.childNodes).some((node)=>_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(node))) {
35590
+ return false;
35591
+ }
35592
+ if (backspace) {
35593
+ // Text after the block keeps its own line
35594
+ const next = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.findNotEmptySibling(box, false);
35595
+ if (next && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(next) && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(next, 'br')) {
35596
+ _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.after(box, jodit.createInside.element('br'));
35597
+ }
35598
+ _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.unwrap(box);
35599
+ return true;
35600
+ }
35601
+ const filter = (0,_helpers_js__WEBPACK_IMPORTED_MODULE_2__.getMoveFilter)(jodit);
35602
+ for(let node = sibling; node && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(node);){
35603
+ const next = node.nextSibling;
35604
+ if (_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(node, 'br')) {
35605
+ _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.safeRemove(node);
35606
+ break;
35607
+ }
35608
+ filter(node) ? _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.append(box, node) : _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.safeRemove(node);
35609
+ node = next;
35610
+ }
35611
+ return true;
35612
+ }
35613
+ /**
35614
+ * Bare text next to a block in the same parent, as the browsers join them:
35615
+ * Backspace in `<div><p>a</p>|b</div>` gives `<div><p>a|b</p></div>`, Delete
35616
+ * in `<div>a|<p>b</p>c</div>` gives `<div>a|b<br>c</div>`
35617
+ */ function checkJoinBareText(jodit, fakeNode, backspace) {
35618
+ const block = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.findNotEmptySibling(fakeNode, backspace);
35619
+ if (!_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isElement(block) || !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(block) || _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isList(block) || _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(block, 'table') || _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isCell(block) || !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isContentEditable(block, jodit.editor) || Array.from(block.childNodes).some((node)=>_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(node))) {
35620
+ return false;
35621
+ }
35622
+ const filter = (0,_helpers_js__WEBPACK_IMPORTED_MODULE_2__.getMoveFilter)(jodit);
35623
+ if (backspace) {
35624
+ // The caret's line goes to the end of the block before it
35625
+ for(let node = fakeNode; node && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(node);){
35626
+ const next = node.nextSibling;
35627
+ if (_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(node, 'br')) {
35628
+ _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.safeRemove(node);
35629
+ break;
35630
+ }
35631
+ filter(node) ? _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.append(block, node) : _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.safeRemove(node);
35632
+ node = next;
35633
+ }
35634
+ } else {
35635
+ // The block's content joins the caret's line, and text after the
35636
+ // block keeps its own line
35637
+ const next = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.findNotEmptySibling(block, false);
35638
+ if (next && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock(next) && !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(next, 'br')) {
35639
+ _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.after(block, jodit.createInside.element('br'));
35640
+ }
35641
+ _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.unwrap(block);
35642
+ }
35643
+ jodit.s.setCursorBefore(fakeNode);
35644
+ return true;
35645
+ }
35521
35646
  function checkMoveListContent(jodit, mainClosestBox, sibling, backspace) {
35522
35647
  // Process UL/LI/OL cases
35523
35648
  const siblingIsList = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(sibling, _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.LIST_TAGS);
@@ -35721,10 +35846,11 @@ function getNextInlineSibling(sibling, backspace, root) {
35721
35846
  let nextSibling = _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.sibling(sibling, backspace);
35722
35847
  if (!nextSibling && sibling.parentNode && sibling.parentNode !== root) {
35723
35848
  nextSibling = (0,_helpers_js__WEBPACK_IMPORTED_MODULE_3__.findMostNestedNeighbor)(sibling, !backspace, root, true);
35724
- // Do not cross a list-item boundary. At the start of a list item the
35725
- // neighbor can be the text of the parent/previous item; deleting a char
35726
- // there is wrong — the list cases must handle the outdent/merge (#1277).
35727
- if (nextSibling && _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(sibling, 'li', root) !== _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(nextSibling, 'li', root)) {
35849
+ // Do not cross a block boundary. At the start of a list item the
35850
+ // neighbor can be the text of the parent/previous item (#1277), and at
35851
+ // the start of a paragraph the text before it in the same parent
35852
+ // (#1693); deleting a char there is wrong — the join cases handle them.
35853
+ if (nextSibling && _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(sibling, _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, root) !== _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(nextSibling, _core_dom_index_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isBlock, root)) {
35728
35854
  return null;
35729
35855
  }
35730
35856
  }
@@ -36086,6 +36212,66 @@ function isSpace(char) {
36086
36212
  }
36087
36213
 
36088
36214
 
36215
+ /***/ }),
36216
+
36217
+ /***/ 70921:
36218
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
36219
+
36220
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
36221
+ /* harmony export */ checkUnwrapListItem: function() { return /* binding */ checkUnwrapListItem; }
36222
+ /* harmony export */ });
36223
+ /* harmony import */ var _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2748);
36224
+ /*!
36225
+ * Jodit Editor (https://xdsoft.net/jodit/)
36226
+ * Released under MIT see LICENSE.txt in the project root for license information.
36227
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net
36228
+ */
36229
+ /**
36230
+ * Backspace at the start of a later list item takes the bullet off, as Word
36231
+ * does: the item becomes a paragraph where it was, and the list is split
36232
+ * around it. A split `<ol>` carries its numbering on with `start`.
36233
+ *
36234
+ * @example
36235
+ * ```html
36236
+ * <ol><li>first</li><li>|second</li><li>third</li></ol>
36237
+ * ```
36238
+ * Result
36239
+ * ```html
36240
+ * <ol><li>first</li></ol><p>|second</p><ol start="2"><li>third</li></ol>
36241
+ * ```
36242
+ *
36243
+ * @private
36244
+ */ function checkUnwrapListItem(jodit, fakeNode, backspace) {
36245
+ if (!backspace) {
36246
+ return false;
36247
+ }
36248
+ const li = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.closest(fakeNode, 'li', jodit.editor);
36249
+ const list = li ? li.parentElement : null;
36250
+ if (!li || !_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isList(list) || !li.previousElementSibling || _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isEmpty(li) || Array.from(li.childNodes).some((node)=>_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isBlock(node)) || !jodit.s.cursorInTheEdge(true, li)) {
36251
+ return false;
36252
+ }
36253
+ const p = jodit.createInside.element(jodit.o.enterBlock);
36254
+ _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.after(list, p);
36255
+ if (li.nextElementSibling) {
36256
+ const rest = list.cloneNode(false);
36257
+ // Two lists cannot share one id
36258
+ rest.removeAttribute('id');
36259
+ while(li.nextSibling){
36260
+ _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.append(rest, li.nextSibling);
36261
+ }
36262
+ if (_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.isTag(list, 'ol')) {
36263
+ const start = parseInt(list.getAttribute('start') || '1', 10) || 1;
36264
+ rest.setAttribute('start', String(start + list.children.length - 1));
36265
+ }
36266
+ _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.after(p, rest);
36267
+ }
36268
+ _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.moveContent(li, p);
36269
+ _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_0__.Dom.safeRemove(li);
36270
+ jodit.s.setCursorBefore(fakeNode);
36271
+ return true;
36272
+ }
36273
+
36274
+
36089
36275
  /***/ }),
36090
36276
 
36091
36277
  /***/ 14630:
@@ -36101,6 +36287,7 @@ function isSpace(char) {
36101
36287
  /* harmony import */ var _check_remove_unbreakable_element_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(56825);
36102
36288
  /* harmony import */ var _check_table_cell_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(90240);
36103
36289
  /* harmony import */ var _check_unwrap_first_list_item_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(68034);
36290
+ /* harmony import */ var _check_unwrap_list_item_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(70921);
36104
36291
  /*!
36105
36292
  * Jodit Editor (https://xdsoft.net/jodit/)
36106
36293
  * Released under MIT see LICENSE.txt in the project root for license information.
@@ -36114,6 +36301,7 @@ function isSpace(char) {
36114
36301
 
36115
36302
 
36116
36303
 
36304
+
36117
36305
  /**
36118
36306
  * Ordered delete/backspace cases with stable keys. The first one returning
36119
36307
  * `true` wins. The keys are stable across minified builds (function names are
@@ -36148,6 +36336,10 @@ function isSpace(char) {
36148
36336
  'join-two-lists',
36149
36337
  _check_join_two_lists_js__WEBPACK_IMPORTED_MODULE_1__.checkJoinTwoLists
36150
36338
  ],
36339
+ [
36340
+ 'unwrap-list-item',
36341
+ _check_unwrap_list_item_js__WEBPACK_IMPORTED_MODULE_9__.checkUnwrapListItem
36342
+ ],
36151
36343
  [
36152
36344
  'join-neighbors',
36153
36345
  _check_join_neighbors_js__WEBPACK_IMPORTED_MODULE_0__.checkJoinNeighbors
@@ -36400,13 +36592,13 @@ _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.subscript = {
36400
36592
  tags: [
36401
36593
  'sub'
36402
36594
  ],
36403
- tooltip: 'subscript'
36595
+ tooltip: 'Subscript'
36404
36596
  };
36405
36597
  _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.superscript = {
36406
36598
  tags: [
36407
36599
  'sup'
36408
36600
  ],
36409
- tooltip: 'superscript'
36601
+ tooltip: 'Superscript'
36410
36602
  };
36411
36603
  _config_js__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.bold = {
36412
36604
  tagRegExp: /^(strong|b)$/i,
@@ -39840,7 +40032,7 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_1__.pluginSystem.add('dtd', dtd);
39840
40032
  ]);
39841
40033
  let block = (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_6__.getBlockWrapper)(fake, jodit);
39842
40034
  const isLi = _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_2__.Dom.isLeaf(block);
39843
- // if use <br> defaultTag for break line or when was entered SHIFt key or in <td> or <th> or <blockquote>
40035
+ // if use <br> defaultTag for break line or when was entered SHIFt key or in <td>, <th> or <blockquote> without an inner block
39844
40036
  if ((!isLi || (event === null || event === void 0 ? void 0 : event.shiftKey)) && (0,_helpers_index_js__WEBPACK_IMPORTED_MODULE_6__.checkBR)(fake, jodit, event === null || event === void 0 ? void 0 : event.shiftKey, block)) {
39845
40037
  return false;
39846
40038
  }
@@ -39901,10 +40093,9 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_3__.pluginSystem.add('enter', enter);
39901
40093
  * Checks the possibility and necessity of inserting a BR instead of a block
39902
40094
  * @private
39903
40095
  */ function checkBR(fake, jodit, shiftKeyPressed, block) {
39904
- const isMultiLineBlock = Boolean(_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(fake, [
39905
- 'pre',
39906
- 'blockquote'
39907
- ], jodit.editor));
40096
+ // Text in a <pre>, or bare text in a quote, gets a BR. A real block inside
40097
+ // a quote (<p>, <h3>, ...) is split like anywhere else, as in a cell below.
40098
+ const isMultiLineBlock = Boolean(_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(fake, 'pre', jodit.editor)) || (block ? _core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.isTag(block, 'blockquote') : Boolean(_core_dom_dom_js__WEBPACK_IMPORTED_MODULE_1__.Dom.closest(fake, 'blockquote', jodit.editor)));
39908
40099
  // A cell itself can't be split into two cells, so bare cell content gets
39909
40100
  // a BR. But when the cell already holds a real block (<p>, <h3>, ...) that
39910
40101
  // block is split like anywhere else, otherwise every line of the cell
@@ -39914,7 +40105,7 @@ _core_global_js__WEBPACK_IMPORTED_MODULE_3__.pluginSystem.add('enter', enter);
39914
40105
  'th'
39915
40106
  ], jodit.editor)));
39916
40107
  const isBRMode = jodit.o.enter.toLowerCase() === _core_constants_js__WEBPACK_IMPORTED_MODULE_0__.BR.toLowerCase();
39917
- // if you use <br> defaultTag for break line or when was entered SHIFt key or in <td> or <th> or <blockquote>
40108
+ // if you use <br> defaultTag for break line or when was entered SHIFt key or in <td>, <th> or <blockquote> without an inner block
39918
40109
  if (isBRMode || isCell || shiftKeyPressed && !isMultiLineBlock || !shiftKeyPressed && isMultiLineBlock) {
39919
40110
  // 2 BR before
39920
40111
  if (isMultiLineBlock && checkSeveralBR(fake)) {