jodit-pro 4.6.18 → 4.6.20

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 (306) hide show
  1. package/es2015/jodit.css +1 -1
  2. package/es2015/jodit.fat.min.js +2 -2
  3. package/es2015/jodit.js +116 -44
  4. package/es2015/jodit.min.js +2 -2
  5. package/es2015/plugins/autocomplete/autocomplete.js +1 -1
  6. package/es2015/plugins/autocomplete/autocomplete.min.js +1 -1
  7. package/es2015/plugins/backup/backup.css +1 -1
  8. package/es2015/plugins/backup/backup.js +1 -1
  9. package/es2015/plugins/backup/backup.min.js +1 -1
  10. package/es2015/plugins/button-generator/button-generator.css +1 -1
  11. package/es2015/plugins/button-generator/button-generator.js +1 -1
  12. package/es2015/plugins/button-generator/button-generator.min.js +1 -1
  13. package/es2015/plugins/change-case/change-case.js +1 -1
  14. package/es2015/plugins/change-case/change-case.min.js +1 -1
  15. package/es2015/plugins/color-picker/color-picker.css +1 -1
  16. package/es2015/plugins/color-picker/color-picker.js +1 -1
  17. package/es2015/plugins/color-picker/color-picker.min.js +1 -1
  18. package/es2015/plugins/emoji/emoji.css +1 -1
  19. package/es2015/plugins/emoji/emoji.js +1 -1
  20. package/es2015/plugins/emoji/emoji.min.js +1 -1
  21. package/es2015/plugins/export-docs/export-docs.js +1 -1
  22. package/es2015/plugins/export-docs/export-docs.min.js +1 -1
  23. package/es2015/plugins/finder/finder.css +1 -1
  24. package/es2015/plugins/finder/finder.js +1 -1
  25. package/es2015/plugins/finder/finder.min.js +1 -1
  26. package/es2015/plugins/google-maps/google-maps.css +1 -1
  27. package/es2015/plugins/google-maps/google-maps.js +1 -1
  28. package/es2015/plugins/google-maps/google-maps.min.js +1 -1
  29. package/es2015/plugins/google-search/google-search.js +1 -1
  30. package/es2015/plugins/google-search/google-search.min.js +1 -1
  31. package/es2015/plugins/highlight-signature/highlight-signature.js +1 -1
  32. package/es2015/plugins/highlight-signature/highlight-signature.min.js +1 -1
  33. package/es2015/plugins/iframe-editor/iframe-editor.css +1 -1
  34. package/es2015/plugins/iframe-editor/iframe-editor.js +1 -1
  35. package/es2015/plugins/iframe-editor/iframe-editor.min.js +1 -1
  36. package/es2015/plugins/keyboard/keyboard.css +1 -1
  37. package/es2015/plugins/keyboard/keyboard.js +1 -1
  38. package/es2015/plugins/keyboard/keyboard.min.js +1 -1
  39. package/es2015/plugins/mobile-view/mobile-view.js +1 -1
  40. package/es2015/plugins/mobile-view/mobile-view.min.js +1 -1
  41. package/es2015/plugins/page-break/page-break.js +1 -1
  42. package/es2015/plugins/page-break/page-break.min.js +1 -1
  43. package/es2015/plugins/paste-code/paste-code.css +1 -1
  44. package/es2015/plugins/paste-code/paste-code.js +1 -1
  45. package/es2015/plugins/paste-code/paste-code.min.js +1 -1
  46. package/es2015/plugins/paste-from-word/paste-from-word.js +1 -1
  47. package/es2015/plugins/paste-from-word/paste-from-word.min.js +1 -1
  48. package/es2015/plugins/show-blocks/show-blocks.js +1 -1
  49. package/es2015/plugins/show-blocks/show-blocks.min.js +1 -1
  50. package/es2015/plugins/todo-list/todo-list.css +1 -1
  51. package/es2015/plugins/todo-list/todo-list.js +1 -1
  52. package/es2015/plugins/todo-list/todo-list.min.js +1 -1
  53. package/es2015/plugins/translate/translate.css +1 -1
  54. package/es2015/plugins/translate/translate.js +1 -1
  55. package/es2015/plugins/translate/translate.min.js +1 -1
  56. package/es2015/plugins/tune-block/tune-block.css +1 -1
  57. package/es2015/plugins/tune-block/tune-block.js +1 -1
  58. package/es2015/plugins/tune-block/tune-block.min.js +1 -1
  59. package/es2018/jodit.css +1 -1
  60. package/es2018/jodit.fat.min.js +2 -2
  61. package/es2018/jodit.js +116 -44
  62. package/es2018/jodit.min.js +2 -2
  63. package/es2018/plugins/autocomplete/autocomplete.js +1 -1
  64. package/es2018/plugins/autocomplete/autocomplete.min.js +1 -1
  65. package/es2018/plugins/backup/backup.css +1 -1
  66. package/es2018/plugins/backup/backup.js +1 -1
  67. package/es2018/plugins/backup/backup.min.js +1 -1
  68. package/es2018/plugins/button-generator/button-generator.css +1 -1
  69. package/es2018/plugins/button-generator/button-generator.js +1 -1
  70. package/es2018/plugins/button-generator/button-generator.min.js +1 -1
  71. package/es2018/plugins/change-case/change-case.js +1 -1
  72. package/es2018/plugins/change-case/change-case.min.js +1 -1
  73. package/es2018/plugins/color-picker/color-picker.css +1 -1
  74. package/es2018/plugins/color-picker/color-picker.js +1 -1
  75. package/es2018/plugins/color-picker/color-picker.min.js +1 -1
  76. package/es2018/plugins/emoji/emoji.css +1 -1
  77. package/es2018/plugins/emoji/emoji.js +1 -1
  78. package/es2018/plugins/emoji/emoji.min.js +1 -1
  79. package/es2018/plugins/export-docs/export-docs.js +1 -1
  80. package/es2018/plugins/export-docs/export-docs.min.js +1 -1
  81. package/es2018/plugins/finder/finder.css +1 -1
  82. package/es2018/plugins/finder/finder.js +1 -1
  83. package/es2018/plugins/finder/finder.min.js +1 -1
  84. package/es2018/plugins/google-maps/google-maps.css +1 -1
  85. package/es2018/plugins/google-maps/google-maps.js +1 -1
  86. package/es2018/plugins/google-maps/google-maps.min.js +1 -1
  87. package/es2018/plugins/google-search/google-search.js +1 -1
  88. package/es2018/plugins/google-search/google-search.min.js +1 -1
  89. package/es2018/plugins/highlight-signature/highlight-signature.js +1 -1
  90. package/es2018/plugins/highlight-signature/highlight-signature.min.js +1 -1
  91. package/es2018/plugins/iframe-editor/iframe-editor.css +1 -1
  92. package/es2018/plugins/iframe-editor/iframe-editor.js +1 -1
  93. package/es2018/plugins/iframe-editor/iframe-editor.min.js +1 -1
  94. package/es2018/plugins/keyboard/keyboard.css +1 -1
  95. package/es2018/plugins/keyboard/keyboard.js +1 -1
  96. package/es2018/plugins/keyboard/keyboard.min.js +1 -1
  97. package/es2018/plugins/mobile-view/mobile-view.js +1 -1
  98. package/es2018/plugins/mobile-view/mobile-view.min.js +1 -1
  99. package/es2018/plugins/page-break/page-break.js +1 -1
  100. package/es2018/plugins/page-break/page-break.min.js +1 -1
  101. package/es2018/plugins/paste-code/paste-code.css +1 -1
  102. package/es2018/plugins/paste-code/paste-code.js +1 -1
  103. package/es2018/plugins/paste-code/paste-code.min.js +1 -1
  104. package/es2018/plugins/paste-from-word/paste-from-word.js +1 -1
  105. package/es2018/plugins/paste-from-word/paste-from-word.min.js +1 -1
  106. package/es2018/plugins/show-blocks/show-blocks.js +1 -1
  107. package/es2018/plugins/show-blocks/show-blocks.min.js +1 -1
  108. package/es2018/plugins/todo-list/todo-list.css +1 -1
  109. package/es2018/plugins/todo-list/todo-list.js +1 -1
  110. package/es2018/plugins/todo-list/todo-list.min.js +1 -1
  111. package/es2018/plugins/translate/translate.css +1 -1
  112. package/es2018/plugins/translate/translate.js +1 -1
  113. package/es2018/plugins/translate/translate.min.js +1 -1
  114. package/es2018/plugins/tune-block/tune-block.css +1 -1
  115. package/es2018/plugins/tune-block/tune-block.js +1 -1
  116. package/es2018/plugins/tune-block/tune-block.min.js +1 -1
  117. package/es2021/jodit.css +1 -1
  118. package/es2021/jodit.fat.min.js +2 -2
  119. package/es2021/jodit.js +114 -43
  120. package/es2021/jodit.min.js +2 -2
  121. package/es2021/plugins/autocomplete/autocomplete.js +1 -1
  122. package/es2021/plugins/autocomplete/autocomplete.min.js +1 -1
  123. package/es2021/plugins/backup/backup.css +1 -1
  124. package/es2021/plugins/backup/backup.js +1 -1
  125. package/es2021/plugins/backup/backup.min.js +1 -1
  126. package/es2021/plugins/button-generator/button-generator.css +1 -1
  127. package/es2021/plugins/button-generator/button-generator.js +1 -1
  128. package/es2021/plugins/button-generator/button-generator.min.js +1 -1
  129. package/es2021/plugins/change-case/change-case.js +1 -1
  130. package/es2021/plugins/change-case/change-case.min.js +1 -1
  131. package/es2021/plugins/color-picker/color-picker.css +1 -1
  132. package/es2021/plugins/color-picker/color-picker.js +1 -1
  133. package/es2021/plugins/color-picker/color-picker.min.js +1 -1
  134. package/es2021/plugins/emoji/emoji.css +1 -1
  135. package/es2021/plugins/emoji/emoji.js +1 -1
  136. package/es2021/plugins/emoji/emoji.min.js +1 -1
  137. package/es2021/plugins/export-docs/export-docs.js +1 -1
  138. package/es2021/plugins/export-docs/export-docs.min.js +1 -1
  139. package/es2021/plugins/finder/finder.css +1 -1
  140. package/es2021/plugins/finder/finder.js +1 -1
  141. package/es2021/plugins/finder/finder.min.js +1 -1
  142. package/es2021/plugins/google-maps/google-maps.css +1 -1
  143. package/es2021/plugins/google-maps/google-maps.js +1 -1
  144. package/es2021/plugins/google-maps/google-maps.min.js +1 -1
  145. package/es2021/plugins/google-search/google-search.js +1 -1
  146. package/es2021/plugins/google-search/google-search.min.js +1 -1
  147. package/es2021/plugins/highlight-signature/highlight-signature.js +1 -1
  148. package/es2021/plugins/highlight-signature/highlight-signature.min.js +1 -1
  149. package/es2021/plugins/iframe-editor/iframe-editor.css +1 -1
  150. package/es2021/plugins/iframe-editor/iframe-editor.js +1 -1
  151. package/es2021/plugins/iframe-editor/iframe-editor.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/mobile-view/mobile-view.js +1 -1
  156. package/es2021/plugins/mobile-view/mobile-view.min.js +1 -1
  157. package/es2021/plugins/page-break/page-break.js +1 -1
  158. package/es2021/plugins/page-break/page-break.min.js +1 -1
  159. package/es2021/plugins/paste-code/paste-code.css +1 -1
  160. package/es2021/plugins/paste-code/paste-code.js +1 -1
  161. package/es2021/plugins/paste-code/paste-code.min.js +1 -1
  162. package/es2021/plugins/paste-from-word/paste-from-word.js +1 -1
  163. package/es2021/plugins/paste-from-word/paste-from-word.min.js +1 -1
  164. package/es2021/plugins/show-blocks/show-blocks.js +1 -1
  165. package/es2021/plugins/show-blocks/show-blocks.min.js +1 -1
  166. package/es2021/plugins/todo-list/todo-list.css +1 -1
  167. package/es2021/plugins/todo-list/todo-list.js +1 -1
  168. package/es2021/plugins/todo-list/todo-list.min.js +1 -1
  169. package/es2021/plugins/translate/translate.css +1 -1
  170. package/es2021/plugins/translate/translate.js +1 -1
  171. package/es2021/plugins/translate/translate.min.js +1 -1
  172. package/es2021/plugins/tune-block/tune-block.css +1 -1
  173. package/es2021/plugins/tune-block/tune-block.js +1 -1
  174. package/es2021/plugins/tune-block/tune-block.min.js +1 -1
  175. package/es2021.en/jodit.css +1 -1
  176. package/es2021.en/jodit.fat.min.js +2 -2
  177. package/es2021.en/jodit.js +114 -43
  178. package/es2021.en/jodit.min.js +2 -2
  179. package/es2021.en/plugins/autocomplete/autocomplete.js +1 -1
  180. package/es2021.en/plugins/autocomplete/autocomplete.min.js +1 -1
  181. package/es2021.en/plugins/backup/backup.css +1 -1
  182. package/es2021.en/plugins/backup/backup.js +1 -1
  183. package/es2021.en/plugins/backup/backup.min.js +1 -1
  184. package/es2021.en/plugins/button-generator/button-generator.css +1 -1
  185. package/es2021.en/plugins/button-generator/button-generator.js +1 -1
  186. package/es2021.en/plugins/button-generator/button-generator.min.js +1 -1
  187. package/es2021.en/plugins/change-case/change-case.js +1 -1
  188. package/es2021.en/plugins/change-case/change-case.min.js +1 -1
  189. package/es2021.en/plugins/color-picker/color-picker.css +1 -1
  190. package/es2021.en/plugins/color-picker/color-picker.js +1 -1
  191. package/es2021.en/plugins/color-picker/color-picker.min.js +1 -1
  192. package/es2021.en/plugins/emoji/emoji.css +1 -1
  193. package/es2021.en/plugins/emoji/emoji.js +1 -1
  194. package/es2021.en/plugins/emoji/emoji.min.js +1 -1
  195. package/es2021.en/plugins/export-docs/export-docs.js +1 -1
  196. package/es2021.en/plugins/export-docs/export-docs.min.js +1 -1
  197. package/es2021.en/plugins/finder/finder.css +1 -1
  198. package/es2021.en/plugins/finder/finder.js +1 -1
  199. package/es2021.en/plugins/finder/finder.min.js +1 -1
  200. package/es2021.en/plugins/google-maps/google-maps.css +1 -1
  201. package/es2021.en/plugins/google-maps/google-maps.js +1 -1
  202. package/es2021.en/plugins/google-maps/google-maps.min.js +1 -1
  203. package/es2021.en/plugins/google-search/google-search.js +1 -1
  204. package/es2021.en/plugins/google-search/google-search.min.js +1 -1
  205. package/es2021.en/plugins/highlight-signature/highlight-signature.js +1 -1
  206. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +1 -1
  207. package/es2021.en/plugins/iframe-editor/iframe-editor.css +1 -1
  208. package/es2021.en/plugins/iframe-editor/iframe-editor.js +1 -1
  209. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +1 -1
  210. package/es2021.en/plugins/keyboard/keyboard.css +1 -1
  211. package/es2021.en/plugins/keyboard/keyboard.js +1 -1
  212. package/es2021.en/plugins/keyboard/keyboard.min.js +1 -1
  213. package/es2021.en/plugins/mobile-view/mobile-view.js +1 -1
  214. package/es2021.en/plugins/mobile-view/mobile-view.min.js +1 -1
  215. package/es2021.en/plugins/page-break/page-break.js +1 -1
  216. package/es2021.en/plugins/page-break/page-break.min.js +1 -1
  217. package/es2021.en/plugins/paste-code/paste-code.css +1 -1
  218. package/es2021.en/plugins/paste-code/paste-code.js +1 -1
  219. package/es2021.en/plugins/paste-code/paste-code.min.js +1 -1
  220. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1 -1
  221. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +1 -1
  222. package/es2021.en/plugins/show-blocks/show-blocks.js +1 -1
  223. package/es2021.en/plugins/show-blocks/show-blocks.min.js +1 -1
  224. package/es2021.en/plugins/todo-list/todo-list.css +1 -1
  225. package/es2021.en/plugins/todo-list/todo-list.js +1 -1
  226. package/es2021.en/plugins/todo-list/todo-list.min.js +1 -1
  227. package/es2021.en/plugins/translate/translate.css +1 -1
  228. package/es2021.en/plugins/translate/translate.js +1 -1
  229. package/es2021.en/plugins/translate/translate.min.js +1 -1
  230. package/es2021.en/plugins/tune-block/tune-block.css +1 -1
  231. package/es2021.en/plugins/tune-block/tune-block.js +1 -1
  232. package/es2021.en/plugins/tune-block/tune-block.min.js +1 -1
  233. package/es5/jodit.css +2 -2
  234. package/es5/jodit.fat.min.js +2 -2
  235. package/es5/jodit.js +123 -45
  236. package/es5/jodit.min.css +2 -2
  237. package/es5/jodit.min.js +2 -2
  238. package/es5/plugins/autocomplete/autocomplete.js +1 -1
  239. package/es5/plugins/autocomplete/autocomplete.min.js +1 -1
  240. package/es5/plugins/backup/backup.css +1 -1
  241. package/es5/plugins/backup/backup.js +1 -1
  242. package/es5/plugins/backup/backup.min.js +1 -1
  243. package/es5/plugins/button-generator/button-generator.css +1 -1
  244. package/es5/plugins/button-generator/button-generator.js +1 -1
  245. package/es5/plugins/button-generator/button-generator.min.js +1 -1
  246. package/es5/plugins/change-case/change-case.js +1 -1
  247. package/es5/plugins/change-case/change-case.min.js +1 -1
  248. package/es5/plugins/color-picker/color-picker.css +1 -1
  249. package/es5/plugins/color-picker/color-picker.js +1 -1
  250. package/es5/plugins/color-picker/color-picker.min.js +1 -1
  251. package/es5/plugins/emoji/emoji.css +1 -1
  252. package/es5/plugins/emoji/emoji.js +1 -1
  253. package/es5/plugins/emoji/emoji.min.js +1 -1
  254. package/es5/plugins/export-docs/export-docs.js +1 -1
  255. package/es5/plugins/export-docs/export-docs.min.js +1 -1
  256. package/es5/plugins/finder/finder.css +1 -1
  257. package/es5/plugins/finder/finder.js +1 -1
  258. package/es5/plugins/finder/finder.min.js +1 -1
  259. package/es5/plugins/google-maps/google-maps.css +1 -1
  260. package/es5/plugins/google-maps/google-maps.js +1 -1
  261. package/es5/plugins/google-maps/google-maps.min.js +1 -1
  262. package/es5/plugins/google-search/google-search.js +1 -1
  263. package/es5/plugins/google-search/google-search.min.js +1 -1
  264. package/es5/plugins/highlight-signature/highlight-signature.js +1 -1
  265. package/es5/plugins/highlight-signature/highlight-signature.min.js +1 -1
  266. package/es5/plugins/iframe-editor/iframe-editor.css +1 -1
  267. package/es5/plugins/iframe-editor/iframe-editor.js +1 -1
  268. package/es5/plugins/iframe-editor/iframe-editor.min.js +1 -1
  269. package/es5/plugins/keyboard/keyboard.css +1 -1
  270. package/es5/plugins/keyboard/keyboard.js +1 -1
  271. package/es5/plugins/keyboard/keyboard.min.js +1 -1
  272. package/es5/plugins/mobile-view/mobile-view.js +1 -1
  273. package/es5/plugins/mobile-view/mobile-view.min.js +1 -1
  274. package/es5/plugins/page-break/page-break.js +1 -1
  275. package/es5/plugins/page-break/page-break.min.js +1 -1
  276. package/es5/plugins/paste-code/paste-code.css +1 -1
  277. package/es5/plugins/paste-code/paste-code.js +1 -1
  278. package/es5/plugins/paste-code/paste-code.min.js +1 -1
  279. package/es5/plugins/paste-from-word/paste-from-word.js +1 -1
  280. package/es5/plugins/paste-from-word/paste-from-word.min.js +1 -1
  281. package/es5/plugins/show-blocks/show-blocks.js +1 -1
  282. package/es5/plugins/show-blocks/show-blocks.min.js +1 -1
  283. package/es5/plugins/todo-list/todo-list.css +1 -1
  284. package/es5/plugins/todo-list/todo-list.js +1 -1
  285. package/es5/plugins/todo-list/todo-list.min.js +1 -1
  286. package/es5/plugins/translate/translate.css +1 -1
  287. package/es5/plugins/translate/translate.js +1 -1
  288. package/es5/plugins/translate/translate.min.js +1 -1
  289. package/es5/plugins/tune-block/tune-block.css +1 -1
  290. package/es5/plugins/tune-block/tune-block.js +1 -1
  291. package/es5/plugins/tune-block/tune-block.min.js +1 -1
  292. package/esm/config.d.ts +2 -2
  293. package/esm/plugins/autocomplete/autocomplete.d.ts +3 -14
  294. package/esm/plugins/autocomplete/autocomplete.js +1 -1
  295. package/esm/plugins/autocomplete/config.d.ts +17 -0
  296. package/esm/plugins/autocomplete/config.js +6 -0
  297. package/esm/plugins/autocomplete/ui/autocomplete.d.ts +2 -1
  298. package/esm/plugins/autocomplete/ui/autocomplete.js +1 -1
  299. package/esm/plugins/autocomplete/ui/item.d.ts +5 -1
  300. package/esm/plugins/autocomplete/ui/item.js +1 -1
  301. package/package.json +1 -1
  302. package/types/config.d.ts +2 -2
  303. package/types/plugins/autocomplete/autocomplete.d.ts +3 -14
  304. package/types/plugins/autocomplete/config.d.ts +17 -0
  305. package/types/plugins/autocomplete/ui/autocomplete.d.ts +2 -1
  306. package/types/plugins/autocomplete/ui/item.d.ts +5 -1
package/es2018/jodit.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
- * Version: v4.6.18
4
+ * Version: v4.6.20
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -7201,6 +7201,27 @@ ToolbarCollection = __decorate([
7201
7201
 
7202
7202
 
7203
7203
 
7204
+ /***/ }),
7205
+
7206
+ /***/ 11691:
7207
+ /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
7208
+
7209
+ /* harmony import */ var jodit_esm_config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6441);
7210
+ /*!
7211
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
7212
+ * See LICENSE.md in the project root for license information.
7213
+ * Copyright (c) 2013-2025 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
7214
+ */
7215
+
7216
+ jodit_esm_config__WEBPACK_IMPORTED_MODULE_0__/* .Config */ .T.prototype.autocomplete = {
7217
+ sources: [],
7218
+ maxItems: 50,
7219
+ isMatchedQuery: (query, value) => value.toLowerCase().indexOf(query.toLowerCase()) === 0,
7220
+ itemRenderer: (item) => { var _a; return (_a = item.title) !== null && _a !== void 0 ? _a : item.value; },
7221
+ insertValueRenderer: (item) => item.value + '&nbsp;'
7222
+ };
7223
+
7224
+
7204
7225
  /***/ }),
7205
7226
 
7206
7227
  /***/ 11787:
@@ -26315,8 +26336,10 @@ function persistent(target, propertyKey) {
26315
26336
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
26316
26337
  /* harmony export */ K: function() { return /* binding */ AutocompleteItem; }
26317
26338
  /* harmony export */ });
26318
- /* harmony import */ var jodit_esm_core_helpers_checker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(27613);
26319
- /* harmony import */ var jodit_esm_core_ui_element__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(48538);
26339
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(31635);
26340
+ /* harmony import */ var jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(65478);
26341
+ /* harmony import */ var jodit_esm_core_helpers_checker__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(27613);
26342
+ /* harmony import */ var jodit_esm_core_ui_element__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(48538);
26320
26343
  /*!
26321
26344
  * Jodit Editor PRO (https://xdsoft.net/jodit/)
26322
26345
  * See LICENSE.md in the project root for license information.
@@ -26325,19 +26348,24 @@ function persistent(target, propertyKey) {
26325
26348
 
26326
26349
 
26327
26350
 
26328
- class AutocompleteItem extends jodit_esm_core_ui_element__WEBPACK_IMPORTED_MODULE_1__/* .UIElement */ .D {
26351
+
26352
+
26353
+ let AutocompleteItem = class AutocompleteItem extends jodit_esm_core_ui_element__WEBPACK_IMPORTED_MODULE_3__/* .UIElement */ .D {
26329
26354
  /** @override */
26330
26355
  className() {
26331
26356
  return 'AutocompleteItem';
26332
26357
  }
26333
- constructor(jodit, item) {
26358
+ constructor(jodit, item, onClick) {
26334
26359
  var _a;
26335
26360
  super(jodit);
26336
26361
  this.item = item;
26362
+ this.onClick = onClick;
26363
+ this.value = '';
26337
26364
  const { container } = this;
26338
- if ((0,jodit_esm_core_helpers_checker__WEBPACK_IMPORTED_MODULE_0__/* .isFunction */ .Tn)(item.itemRenderer)) {
26365
+ this.value = item.value;
26366
+ if ((0,jodit_esm_core_helpers_checker__WEBPACK_IMPORTED_MODULE_2__/* .isFunction */ .Tn)(item.itemRenderer)) {
26339
26367
  const elm = item.itemRenderer(item);
26340
- if ((0,jodit_esm_core_helpers_checker__WEBPACK_IMPORTED_MODULE_0__/* .isString */ .Kg)(elm)) {
26368
+ if ((0,jodit_esm_core_helpers_checker__WEBPACK_IMPORTED_MODULE_2__/* .isString */ .Kg)(elm)) {
26341
26369
  container.innerHTML = elm;
26342
26370
  }
26343
26371
  else {
@@ -26348,7 +26376,24 @@ class AutocompleteItem extends jodit_esm_core_ui_element__WEBPACK_IMPORTED_MODUL
26348
26376
  container.innerText = (_a = item.title) !== null && _a !== void 0 ? _a : item.value;
26349
26377
  }
26350
26378
  }
26351
- }
26379
+ onClickPrevent(e) {
26380
+ e.preventDefault();
26381
+ e.stopPropagation();
26382
+ }
26383
+ onClickHandler() {
26384
+ this.onClick(this.value);
26385
+ }
26386
+ };
26387
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
26388
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)('container:mousedown container:touchstart')
26389
+ ], AutocompleteItem.prototype, "onClickPrevent", null);
26390
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
26391
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)('container:click')
26392
+ ], AutocompleteItem.prototype, "onClickHandler", null);
26393
+ AutocompleteItem = (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
26394
+ jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_1__.component
26395
+ ], AutocompleteItem);
26396
+
26352
26397
 
26353
26398
 
26354
26399
  /***/ }),
@@ -39350,33 +39395,52 @@ let Autocomplete = class Autocomplete extends jodit_esm_core_ui_group_group__WEB
39350
39395
  super(...arguments);
39351
39396
  this.elements = [];
39352
39397
  this.currentSelection = -1;
39398
+ this.__previousList = [];
39353
39399
  }
39354
39400
  /** @override */
39355
39401
  className() {
39356
39402
  return 'Autocomplete';
39357
39403
  }
39358
- onChangeSelection(_, previous) {
39359
- var _a;
39360
- previous != null && ((_a = this.elements[previous]) === null || _a === void 0 ? void 0 : _a.setMod('active', false));
39361
- this.elements[this.currentSelection].setMod('active', true);
39362
- this.elements[this.currentSelection].container.scrollIntoView(false);
39404
+ onChangeSelection() {
39405
+ var _a, _b;
39406
+ this.elements.forEach((elm) => elm.setMod('active', false));
39407
+ (_a = this.elements[this.currentSelection]) === null || _a === void 0 ? void 0 : _a.setMod('active', true);
39408
+ (_b = this.elements[this.currentSelection]) === null || _b === void 0 ? void 0 : _b.container.scrollIntoView(false);
39363
39409
  }
39364
39410
  build(list) {
39365
- this.clear();
39366
- list.forEach((elm, index) => {
39367
- const item = new _item__WEBPACK_IMPORTED_MODULE_1__/* .AutocompleteItem */ .K(this.jodit, elm);
39368
- this.j.e
39369
- .on(item.container, 'mousedown touchstart', (e) => {
39370
- e.preventDefault();
39371
- })
39372
- .on(item.container, 'click', () => {
39373
- this.currentSelection = index;
39411
+ var _a;
39412
+ const currentValue = (_a = this.elements[this.currentSelection]) === null || _a === void 0 ? void 0 : _a.item.value;
39413
+ const removed = [];
39414
+ let elementIndex = -1;
39415
+ for (let i = 0; i < list.length; i += 1) {
39416
+ elementIndex += 1;
39417
+ if (this.__previousList[i] != null &&
39418
+ list[i].value === this.__previousList[i].value) {
39419
+ continue;
39420
+ }
39421
+ if (this.elements[elementIndex]) {
39422
+ removed.push(this.elements[elementIndex]);
39423
+ elementIndex += 1;
39424
+ }
39425
+ const item = new _item__WEBPACK_IMPORTED_MODULE_1__/* .AutocompleteItem */ .K(this.jodit, list[i], (value) => {
39426
+ this.currentSelection = list.findIndex((item) => item.value === value);
39374
39427
  this.select();
39375
39428
  });
39376
- this.append(item);
39429
+ this.append(item, elementIndex);
39430
+ }
39431
+ for (let fromIndex = elementIndex + 1; fromIndex < this.elements.length; fromIndex += 1) {
39432
+ removed.push(this.elements[fromIndex]);
39433
+ }
39434
+ removed.forEach((item) => {
39435
+ this.remove(item);
39436
+ item.destruct();
39377
39437
  });
39378
- this.currentSelection = 0;
39379
- this.onChangeSelection();
39438
+ const previosSelection = this.currentSelection;
39439
+ this.currentSelection = Math.max(0, list.findIndex((elm) => elm.value === currentValue));
39440
+ if (previosSelection === this.currentSelection) {
39441
+ this.onChangeSelection();
39442
+ }
39443
+ this.__previousList = [...list];
39380
39444
  }
39381
39445
  selectNext() {
39382
39446
  if (this.currentSelection + 1 <= this.elements.length - 1) {
@@ -43368,7 +43432,7 @@ __webpack_require__.r(__webpack_exports__);
43368
43432
  * ```
43369
43433
  * @packageDocumentation
43370
43434
  * @module constants
43371
- */ const APP_VERSION = "4.6.18";
43435
+ */ const APP_VERSION = "4.6.20";
43372
43436
  // prettier-ignore
43373
43437
  const ES = "es2018";
43374
43438
  const IS_ES_MODERN = true;
@@ -46212,9 +46276,9 @@ __webpack_require__.r(__webpack_exports__);
46212
46276
  /* harmony export */ autocomplete: function() { return /* binding */ autocomplete; }
46213
46277
  /* harmony export */ });
46214
46278
  /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(31635);
46215
- /* harmony import */ var _ui_autocomplete__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(78630);
46216
- /* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(91876);
46217
- /* harmony import */ var jodit_esm_config__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6441);
46279
+ /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(11691);
46280
+ /* harmony import */ var _ui_autocomplete__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(78630);
46281
+ /* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(91876);
46218
46282
  /* harmony import */ var jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(82758);
46219
46283
  /* harmony import */ var jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(65478);
46220
46284
  /* harmony import */ var jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(2748);
@@ -46238,26 +46302,27 @@ __webpack_require__.r(__webpack_exports__);
46238
46302
 
46239
46303
 
46240
46304
 
46241
- jodit_esm_config__WEBPACK_IMPORTED_MODULE_3__/* .Config */ .T.prototype.autocomplete = {
46242
- sources: [],
46243
- maxItems: 50,
46244
- isMatchedQuery: (query, value) => value.toLowerCase().indexOf(query.toLowerCase()) === 0,
46245
- itemRenderer: (item) => { var _a; return (_a = item.title) !== null && _a !== void 0 ? _a : item.value; },
46246
- insertValueRenderer: (item) => item.value + '&nbsp;'
46247
- };
46248
46305
  class autocomplete extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_8__/* .Plugin */ .k {
46249
- constructor(jodit) {
46250
- super(jodit);
46306
+ constructor() {
46307
+ super(...arguments);
46251
46308
  /** @override */
46252
46309
  this.hasStyle = !jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_10__/* .JoditPro */ .A.fatMode;
46253
46310
  this.sources = [];
46254
46311
  }
46312
+ get list() {
46313
+ return new _ui_autocomplete__WEBPACK_IMPORTED_MODULE_2__/* .Autocomplete */ .j(this.jodit);
46314
+ }
46315
+ get popup() {
46316
+ const popup = new jodit_esm_core_ui_popup_popup__WEBPACK_IMPORTED_MODULE_9__/* .Popup */ .z(this.jodit);
46317
+ popup.setMod('padding', false);
46318
+ popup.setContent(this.list.container);
46319
+ this.jodit.e.on(popup, 'beforeClose', () => {
46320
+ this.list.currentSelection = 0;
46321
+ });
46322
+ return popup;
46323
+ }
46255
46324
  /** @override */
46256
46325
  afterInit(jodit) {
46257
- this.popup = new jodit_esm_core_ui_popup_popup__WEBPACK_IMPORTED_MODULE_9__/* .Popup */ .z(jodit);
46258
- this.popup.setMod('padding', false);
46259
- this.list = new _ui_autocomplete__WEBPACK_IMPORTED_MODULE_1__/* .Autocomplete */ .j(jodit);
46260
- this.popup.setContent(this.list.container);
46261
46326
  jodit.e
46262
46327
  .on('select.autocomplete', (item) => {
46263
46328
  let insertValue = item.value;
@@ -46267,7 +46332,7 @@ class autocomplete extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_8__/*
46267
46332
  if (!jodit_esm_core_dom_dom__WEBPACK_IMPORTED_MODULE_6__/* .Dom */ .J.isNode(insertValue)) {
46268
46333
  insertValue = jodit.createInside.fromHTML(insertValue);
46269
46334
  }
46270
- (0,_helpers__WEBPACK_IMPORTED_MODULE_2__/* .replaceTextLeftOfCursorAfterSpace */ .s)(jodit.s.range, insertValue);
46335
+ (0,_helpers__WEBPACK_IMPORTED_MODULE_3__/* .replaceTextLeftOfCursorAfterSpace */ .s)(jodit.s.range, insertValue);
46271
46336
  this.j.s.setCursorAfter(insertValue);
46272
46337
  this.j.synchronizeValues();
46273
46338
  this.popup.close();
@@ -46304,7 +46369,7 @@ class autocomplete extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_8__/*
46304
46369
  const range = ((_a = this.j.s.sel) === null || _a === void 0 ? void 0 : _a.rangeCount)
46305
46370
  ? (_b = this.j.s.sel) === null || _b === void 0 ? void 0 : _b.getRangeAt(0)
46306
46371
  : null;
46307
- const query = range && (0,_helpers__WEBPACK_IMPORTED_MODULE_2__/* .getTextLeftOfCursor */ .I)(range).split(' ').pop();
46372
+ const query = range && (0,_helpers__WEBPACK_IMPORTED_MODULE_3__/* .getTextLeftOfCursor */ .I)(range).split(' ').pop();
46308
46373
  if (query && (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_7__.trim)(query).length) {
46309
46374
  const result = await this.onAutoComplete(query);
46310
46375
  if (result.length) {
@@ -46414,6 +46479,7 @@ class autocomplete extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_8__/*
46414
46479
  beforeDestruct(jodit) {
46415
46480
  jodit.e
46416
46481
  .off(this.list)
46482
+ .off(this.popup)
46417
46483
  .off('keydown.autocomplete', this.onKeyDown)
46418
46484
  .off('autocomplete.autocomplete', this.onAutoComplete)
46419
46485
  .off('.autocomplete');
@@ -46423,6 +46489,12 @@ class autocomplete extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_8__/*
46423
46489
  }
46424
46490
  /** @override */
46425
46491
  autocomplete.requires = ['enter', 'license'];
46492
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
46493
+ jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_5__.cache
46494
+ ], autocomplete.prototype, "list", null);
46495
+ (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
46496
+ jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_5__.cache
46497
+ ], autocomplete.prototype, "popup", null);
46426
46498
  (0,tslib__WEBPACK_IMPORTED_MODULE_0__/* .__decorate */ .Cg)([
46427
46499
  jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_5__.autobind
46428
46500
  ], autocomplete.prototype, "registerAutocompleteSource", null);