jodit-pro 4.12.26 → 4.12.32

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 (346) hide show
  1. package/es2015/jodit.css +1 -1
  2. package/es2015/jodit.fat.min.css +1 -1
  3. package/es2015/jodit.fat.min.js +16 -14
  4. package/es2015/jodit.js +419 -122
  5. package/es2015/jodit.min.js +11 -11
  6. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  7. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  8. package/es2015/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  9. package/es2015/plugins/autocomplete/autocomplete.css +62 -0
  10. package/es2015/plugins/autocomplete/autocomplete.js +29 -2
  11. package/es2015/plugins/autocomplete/autocomplete.min.css +1 -0
  12. package/es2015/plugins/autocomplete/autocomplete.min.js +2 -2
  13. package/es2015/plugins/backup/backup.css +1 -1
  14. package/es2015/plugins/backup/backup.js +1 -1
  15. package/es2015/plugins/backup/backup.min.js +1 -1
  16. package/es2015/plugins/button-generator/button-generator.css +1 -1
  17. package/es2015/plugins/button-generator/button-generator.js +1 -1
  18. package/es2015/plugins/button-generator/button-generator.min.js +1 -1
  19. package/es2015/plugins/change-case/change-case.js +1 -1
  20. package/es2015/plugins/change-case/change-case.min.js +1 -1
  21. package/es2015/plugins/color-picker/color-picker.css +1 -1
  22. package/es2015/plugins/color-picker/color-picker.js +1 -1
  23. package/es2015/plugins/color-picker/color-picker.min.js +1 -1
  24. package/es2015/plugins/emoji/emoji.css +1 -1
  25. package/es2015/plugins/emoji/emoji.js +1 -1
  26. package/es2015/plugins/emoji/emoji.min.js +1 -1
  27. package/es2015/plugins/export-docs/export-docs.js +1 -1
  28. package/es2015/plugins/export-docs/export-docs.min.js +1 -1
  29. package/es2015/plugins/finder/finder.css +1 -1
  30. package/es2015/plugins/finder/finder.js +1 -1
  31. package/es2015/plugins/finder/finder.min.js +1 -1
  32. package/es2015/plugins/google-maps/google-maps.css +1 -1
  33. package/es2015/plugins/google-maps/google-maps.js +1 -1
  34. package/es2015/plugins/google-maps/google-maps.min.js +1 -1
  35. package/es2015/plugins/google-search/google-search.js +1 -1
  36. package/es2015/plugins/google-search/google-search.min.js +1 -1
  37. package/es2015/plugins/highlight-signature/highlight-signature.js +1 -1
  38. package/es2015/plugins/highlight-signature/highlight-signature.min.js +1 -1
  39. package/es2015/plugins/iframe-editor/iframe-editor.css +1 -1
  40. package/es2015/plugins/iframe-editor/iframe-editor.js +1 -1
  41. package/es2015/plugins/iframe-editor/iframe-editor.min.js +1 -1
  42. package/es2015/plugins/keyboard/keyboard.css +1 -1
  43. package/es2015/plugins/keyboard/keyboard.js +1 -1
  44. package/es2015/plugins/keyboard/keyboard.min.js +1 -1
  45. package/es2015/plugins/mobile-view/mobile-view.js +1 -1
  46. package/es2015/plugins/mobile-view/mobile-view.min.js +1 -1
  47. package/es2015/plugins/page-break/page-break.js +23 -2
  48. package/es2015/plugins/page-break/page-break.min.js +2 -2
  49. package/es2015/plugins/paste-code/paste-code.css +28 -1
  50. package/es2015/plugins/paste-code/paste-code.js +489 -64
  51. package/es2015/plugins/paste-code/paste-code.min.css +1 -1
  52. package/es2015/plugins/paste-code/paste-code.min.js +4 -2
  53. package/es2015/plugins/paste-from-word/paste-from-word.js +1 -1
  54. package/es2015/plugins/paste-from-word/paste-from-word.min.js +1 -1
  55. package/es2015/plugins/show-blocks/show-blocks.js +1 -1
  56. package/es2015/plugins/show-blocks/show-blocks.min.js +1 -1
  57. package/es2015/plugins/style/style.css +1 -1
  58. package/es2015/plugins/style/style.js +1 -1
  59. package/es2015/plugins/style/style.min.js +1 -1
  60. package/es2015/plugins/templates/templates.css +1 -1
  61. package/es2015/plugins/templates/templates.js +1 -1
  62. package/es2015/plugins/templates/templates.min.js +1 -1
  63. package/es2015/plugins/todo-list/todo-list.css +1 -1
  64. package/es2015/plugins/todo-list/todo-list.js +9 -1
  65. package/es2015/plugins/todo-list/todo-list.min.js +2 -2
  66. package/es2015/plugins/translate/translate.css +1 -1
  67. package/es2015/plugins/translate/translate.js +1 -1
  68. package/es2015/plugins/translate/translate.min.js +1 -1
  69. package/es2015/plugins/tune-block/tune-block.css +1 -1
  70. package/es2015/plugins/tune-block/tune-block.js +1 -1
  71. package/es2015/plugins/tune-block/tune-block.min.js +1 -1
  72. package/es2018/jodit.fat.min.css +1 -1
  73. package/es2018/jodit.fat.min.js +16 -14
  74. package/es2018/jodit.min.js +11 -11
  75. package/es2018/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  76. package/es2018/plugins/autocomplete/autocomplete.min.css +1 -0
  77. package/es2018/plugins/autocomplete/autocomplete.min.js +2 -2
  78. package/es2018/plugins/backup/backup.min.js +1 -1
  79. package/es2018/plugins/button-generator/button-generator.min.js +1 -1
  80. package/es2018/plugins/change-case/change-case.min.js +1 -1
  81. package/es2018/plugins/color-picker/color-picker.min.js +1 -1
  82. package/es2018/plugins/emoji/emoji.min.js +1 -1
  83. package/es2018/plugins/export-docs/export-docs.min.js +1 -1
  84. package/es2018/plugins/finder/finder.min.js +1 -1
  85. package/es2018/plugins/google-maps/google-maps.min.js +1 -1
  86. package/es2018/plugins/google-search/google-search.min.js +1 -1
  87. package/es2018/plugins/highlight-signature/highlight-signature.min.js +1 -1
  88. package/es2018/plugins/iframe-editor/iframe-editor.min.js +1 -1
  89. package/es2018/plugins/keyboard/keyboard.min.js +1 -1
  90. package/es2018/plugins/mobile-view/mobile-view.min.js +1 -1
  91. package/es2018/plugins/page-break/page-break.min.js +2 -2
  92. package/es2018/plugins/paste-code/paste-code.min.css +1 -1
  93. package/es2018/plugins/paste-code/paste-code.min.js +4 -2
  94. package/es2018/plugins/paste-from-word/paste-from-word.min.js +1 -1
  95. package/es2018/plugins/show-blocks/show-blocks.min.js +1 -1
  96. package/es2018/plugins/style/style.min.js +1 -1
  97. package/es2018/plugins/templates/templates.min.js +1 -1
  98. package/es2018/plugins/todo-list/todo-list.min.js +2 -2
  99. package/es2018/plugins/translate/translate.min.js +1 -1
  100. package/es2018/plugins/tune-block/tune-block.min.js +1 -1
  101. package/es2021/jodit.css +1 -1
  102. package/es2021/jodit.fat.min.css +1 -1
  103. package/es2021/jodit.fat.min.js +19 -17
  104. package/es2021/jodit.js +418 -121
  105. package/es2021/jodit.min.js +14 -14
  106. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  107. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  108. package/es2021/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  109. package/es2021/plugins/autocomplete/autocomplete.css +62 -0
  110. package/es2021/plugins/autocomplete/autocomplete.js +29 -2
  111. package/es2021/plugins/autocomplete/autocomplete.min.css +1 -0
  112. package/es2021/plugins/autocomplete/autocomplete.min.js +2 -2
  113. package/es2021/plugins/backup/backup.css +1 -1
  114. package/es2021/plugins/backup/backup.js +1 -1
  115. package/es2021/plugins/backup/backup.min.js +1 -1
  116. package/es2021/plugins/button-generator/button-generator.css +1 -1
  117. package/es2021/plugins/button-generator/button-generator.js +1 -1
  118. package/es2021/plugins/button-generator/button-generator.min.js +1 -1
  119. package/es2021/plugins/change-case/change-case.js +1 -1
  120. package/es2021/plugins/change-case/change-case.min.js +1 -1
  121. package/es2021/plugins/color-picker/color-picker.css +1 -1
  122. package/es2021/plugins/color-picker/color-picker.js +1 -1
  123. package/es2021/plugins/color-picker/color-picker.min.js +1 -1
  124. package/es2021/plugins/emoji/emoji.css +1 -1
  125. package/es2021/plugins/emoji/emoji.js +1 -1
  126. package/es2021/plugins/emoji/emoji.min.js +1 -1
  127. package/es2021/plugins/export-docs/export-docs.js +1 -1
  128. package/es2021/plugins/export-docs/export-docs.min.js +1 -1
  129. package/es2021/plugins/finder/finder.css +1 -1
  130. package/es2021/plugins/finder/finder.js +1 -1
  131. package/es2021/plugins/finder/finder.min.js +1 -1
  132. package/es2021/plugins/google-maps/google-maps.css +1 -1
  133. package/es2021/plugins/google-maps/google-maps.js +1 -1
  134. package/es2021/plugins/google-maps/google-maps.min.js +1 -1
  135. package/es2021/plugins/google-search/google-search.js +1 -1
  136. package/es2021/plugins/google-search/google-search.min.js +1 -1
  137. package/es2021/plugins/highlight-signature/highlight-signature.js +1 -1
  138. package/es2021/plugins/highlight-signature/highlight-signature.min.js +1 -1
  139. package/es2021/plugins/iframe-editor/iframe-editor.css +1 -1
  140. package/es2021/plugins/iframe-editor/iframe-editor.js +1 -1
  141. package/es2021/plugins/iframe-editor/iframe-editor.min.js +1 -1
  142. package/es2021/plugins/keyboard/keyboard.css +1 -1
  143. package/es2021/plugins/keyboard/keyboard.js +1 -1
  144. package/es2021/plugins/keyboard/keyboard.min.js +1 -1
  145. package/es2021/plugins/mobile-view/mobile-view.js +1 -1
  146. package/es2021/plugins/mobile-view/mobile-view.min.js +1 -1
  147. package/es2021/plugins/page-break/page-break.js +23 -2
  148. package/es2021/plugins/page-break/page-break.min.js +2 -2
  149. package/es2021/plugins/paste-code/paste-code.css +28 -1
  150. package/es2021/plugins/paste-code/paste-code.js +488 -64
  151. package/es2021/plugins/paste-code/paste-code.min.css +1 -1
  152. package/es2021/plugins/paste-code/paste-code.min.js +4 -2
  153. package/es2021/plugins/paste-from-word/paste-from-word.js +1 -1
  154. package/es2021/plugins/paste-from-word/paste-from-word.min.js +1 -1
  155. package/es2021/plugins/show-blocks/show-blocks.js +1 -1
  156. package/es2021/plugins/show-blocks/show-blocks.min.js +1 -1
  157. package/es2021/plugins/style/style.css +1 -1
  158. package/es2021/plugins/style/style.js +1 -1
  159. package/es2021/plugins/style/style.min.js +1 -1
  160. package/es2021/plugins/templates/templates.css +1 -1
  161. package/es2021/plugins/templates/templates.js +1 -1
  162. package/es2021/plugins/templates/templates.min.js +1 -1
  163. package/es2021/plugins/todo-list/todo-list.css +1 -1
  164. package/es2021/plugins/todo-list/todo-list.js +9 -1
  165. package/es2021/plugins/todo-list/todo-list.min.js +2 -2
  166. package/es2021/plugins/translate/translate.css +1 -1
  167. package/es2021/plugins/translate/translate.js +1 -1
  168. package/es2021/plugins/translate/translate.min.js +1 -1
  169. package/es2021/plugins/tune-block/tune-block.css +1 -1
  170. package/es2021/plugins/tune-block/tune-block.js +1 -1
  171. package/es2021/plugins/tune-block/tune-block.min.js +1 -1
  172. package/es2021.en/jodit.css +1 -1
  173. package/es2021.en/jodit.fat.min.css +1 -1
  174. package/es2021.en/jodit.fat.min.js +31 -29
  175. package/es2021.en/jodit.js +418 -121
  176. package/es2021.en/jodit.min.js +14 -14
  177. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  178. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  179. package/es2021.en/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  180. package/es2021.en/plugins/autocomplete/autocomplete.css +62 -0
  181. package/es2021.en/plugins/autocomplete/autocomplete.js +29 -2
  182. package/es2021.en/plugins/autocomplete/autocomplete.min.css +1 -0
  183. package/es2021.en/plugins/autocomplete/autocomplete.min.js +2 -2
  184. package/es2021.en/plugins/backup/backup.css +1 -1
  185. package/es2021.en/plugins/backup/backup.js +1 -1
  186. package/es2021.en/plugins/backup/backup.min.js +1 -1
  187. package/es2021.en/plugins/button-generator/button-generator.css +1 -1
  188. package/es2021.en/plugins/button-generator/button-generator.js +1 -1
  189. package/es2021.en/plugins/button-generator/button-generator.min.js +1 -1
  190. package/es2021.en/plugins/change-case/change-case.js +1 -1
  191. package/es2021.en/plugins/change-case/change-case.min.js +1 -1
  192. package/es2021.en/plugins/color-picker/color-picker.css +1 -1
  193. package/es2021.en/plugins/color-picker/color-picker.js +1 -1
  194. package/es2021.en/plugins/color-picker/color-picker.min.js +1 -1
  195. package/es2021.en/plugins/emoji/emoji.css +1 -1
  196. package/es2021.en/plugins/emoji/emoji.js +1 -1
  197. package/es2021.en/plugins/emoji/emoji.min.js +1 -1
  198. package/es2021.en/plugins/export-docs/export-docs.js +1 -1
  199. package/es2021.en/plugins/export-docs/export-docs.min.js +1 -1
  200. package/es2021.en/plugins/finder/finder.css +1 -1
  201. package/es2021.en/plugins/finder/finder.js +1 -1
  202. package/es2021.en/plugins/finder/finder.min.js +1 -1
  203. package/es2021.en/plugins/google-maps/google-maps.css +1 -1
  204. package/es2021.en/plugins/google-maps/google-maps.js +1 -1
  205. package/es2021.en/plugins/google-maps/google-maps.min.js +1 -1
  206. package/es2021.en/plugins/google-search/google-search.js +1 -1
  207. package/es2021.en/plugins/google-search/google-search.min.js +1 -1
  208. package/es2021.en/plugins/highlight-signature/highlight-signature.js +1 -1
  209. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +1 -1
  210. package/es2021.en/plugins/iframe-editor/iframe-editor.css +1 -1
  211. package/es2021.en/plugins/iframe-editor/iframe-editor.js +1 -1
  212. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +1 -1
  213. package/es2021.en/plugins/keyboard/keyboard.css +1 -1
  214. package/es2021.en/plugins/keyboard/keyboard.js +1 -1
  215. package/es2021.en/plugins/keyboard/keyboard.min.js +1 -1
  216. package/es2021.en/plugins/mobile-view/mobile-view.js +1 -1
  217. package/es2021.en/plugins/mobile-view/mobile-view.min.js +1 -1
  218. package/es2021.en/plugins/page-break/page-break.js +23 -2
  219. package/es2021.en/plugins/page-break/page-break.min.js +2 -2
  220. package/es2021.en/plugins/paste-code/paste-code.css +28 -1
  221. package/es2021.en/plugins/paste-code/paste-code.js +488 -64
  222. package/es2021.en/plugins/paste-code/paste-code.min.css +1 -1
  223. package/es2021.en/plugins/paste-code/paste-code.min.js +4 -2
  224. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1 -1
  225. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +1 -1
  226. package/es2021.en/plugins/show-blocks/show-blocks.js +1 -1
  227. package/es2021.en/plugins/show-blocks/show-blocks.min.js +1 -1
  228. package/es2021.en/plugins/style/style.css +1 -1
  229. package/es2021.en/plugins/style/style.js +1 -1
  230. package/es2021.en/plugins/style/style.min.js +1 -1
  231. package/es2021.en/plugins/templates/templates.css +1 -1
  232. package/es2021.en/plugins/templates/templates.js +1 -1
  233. package/es2021.en/plugins/templates/templates.min.js +1 -1
  234. package/es2021.en/plugins/todo-list/todo-list.css +1 -1
  235. package/es2021.en/plugins/todo-list/todo-list.js +9 -1
  236. package/es2021.en/plugins/todo-list/todo-list.min.js +2 -2
  237. package/es2021.en/plugins/translate/translate.css +1 -1
  238. package/es2021.en/plugins/translate/translate.js +1 -1
  239. package/es2021.en/plugins/translate/translate.min.js +1 -1
  240. package/es2021.en/plugins/tune-block/tune-block.css +1 -1
  241. package/es2021.en/plugins/tune-block/tune-block.js +1 -1
  242. package/es2021.en/plugins/tune-block/tune-block.min.js +1 -1
  243. package/es5/jodit.css +2 -2
  244. package/es5/jodit.fat.min.css +1 -1
  245. package/es5/jodit.fat.min.js +2 -2
  246. package/es5/jodit.js +565 -157
  247. package/es5/jodit.min.css +2 -2
  248. package/es5/jodit.min.js +2 -2
  249. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.css +1 -1
  250. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.js +1 -1
  251. package/es5/plugins/ai-assistant-pro/ai-assistant-pro.min.js +1 -1
  252. package/es5/plugins/autocomplete/autocomplete.css +62 -0
  253. package/es5/plugins/autocomplete/autocomplete.js +29 -2
  254. package/es5/plugins/autocomplete/autocomplete.min.css +1 -0
  255. package/es5/plugins/autocomplete/autocomplete.min.js +2 -2
  256. package/es5/plugins/backup/backup.css +1 -1
  257. package/es5/plugins/backup/backup.js +1 -1
  258. package/es5/plugins/backup/backup.min.js +1 -1
  259. package/es5/plugins/button-generator/button-generator.css +1 -1
  260. package/es5/plugins/button-generator/button-generator.js +1 -1
  261. package/es5/plugins/button-generator/button-generator.min.js +1 -1
  262. package/es5/plugins/change-case/change-case.js +1 -1
  263. package/es5/plugins/change-case/change-case.min.js +1 -1
  264. package/es5/plugins/color-picker/color-picker.css +1 -1
  265. package/es5/plugins/color-picker/color-picker.js +1 -1
  266. package/es5/plugins/color-picker/color-picker.min.js +1 -1
  267. package/es5/plugins/emoji/emoji.css +1 -1
  268. package/es5/plugins/emoji/emoji.js +1 -1
  269. package/es5/plugins/emoji/emoji.min.js +1 -1
  270. package/es5/plugins/export-docs/export-docs.js +1 -1
  271. package/es5/plugins/export-docs/export-docs.min.js +1 -1
  272. package/es5/plugins/finder/finder.css +1 -1
  273. package/es5/plugins/finder/finder.js +1 -1
  274. package/es5/plugins/finder/finder.min.js +1 -1
  275. package/es5/plugins/google-maps/google-maps.css +1 -1
  276. package/es5/plugins/google-maps/google-maps.js +1 -1
  277. package/es5/plugins/google-maps/google-maps.min.js +1 -1
  278. package/es5/plugins/google-search/google-search.js +1 -1
  279. package/es5/plugins/google-search/google-search.min.js +1 -1
  280. package/es5/plugins/highlight-signature/highlight-signature.js +1 -1
  281. package/es5/plugins/highlight-signature/highlight-signature.min.js +1 -1
  282. package/es5/plugins/iframe-editor/iframe-editor.css +1 -1
  283. package/es5/plugins/iframe-editor/iframe-editor.js +1 -1
  284. package/es5/plugins/iframe-editor/iframe-editor.min.js +1 -1
  285. package/es5/plugins/keyboard/keyboard.css +1 -1
  286. package/es5/plugins/keyboard/keyboard.js +1 -1
  287. package/es5/plugins/keyboard/keyboard.min.js +1 -1
  288. package/es5/plugins/mobile-view/mobile-view.js +1 -1
  289. package/es5/plugins/mobile-view/mobile-view.min.js +1 -1
  290. package/es5/plugins/page-break/page-break.js +23 -2
  291. package/es5/plugins/page-break/page-break.min.js +2 -2
  292. package/es5/plugins/paste-code/paste-code.css +28 -1
  293. package/es5/plugins/paste-code/paste-code.js +586 -66
  294. package/es5/plugins/paste-code/paste-code.min.css +1 -1
  295. package/es5/plugins/paste-code/paste-code.min.js +2 -2
  296. package/es5/plugins/paste-from-word/paste-from-word.js +1 -1
  297. package/es5/plugins/paste-from-word/paste-from-word.min.js +1 -1
  298. package/es5/plugins/show-blocks/show-blocks.js +1 -1
  299. package/es5/plugins/show-blocks/show-blocks.min.js +1 -1
  300. package/es5/plugins/style/style.css +1 -1
  301. package/es5/plugins/style/style.js +1 -1
  302. package/es5/plugins/style/style.min.js +1 -1
  303. package/es5/plugins/templates/templates.css +1 -1
  304. package/es5/plugins/templates/templates.js +1 -1
  305. package/es5/plugins/templates/templates.min.js +1 -1
  306. package/es5/plugins/todo-list/todo-list.css +1 -1
  307. package/es5/plugins/todo-list/todo-list.js +9 -1
  308. package/es5/plugins/todo-list/todo-list.min.js +2 -2
  309. package/es5/plugins/translate/translate.css +1 -1
  310. package/es5/plugins/translate/translate.js +1 -1
  311. package/es5/plugins/translate/translate.min.js +1 -1
  312. package/es5/plugins/tune-block/tune-block.css +1 -1
  313. package/es5/plugins/tune-block/tune-block.js +1 -1
  314. package/es5/plugins/tune-block/tune-block.min.js +1 -1
  315. package/es5/polyfills.fat.min.js +1 -1
  316. package/es5/polyfills.js +1 -1
  317. package/es5/polyfills.min.js +1 -1
  318. package/esm/config.d.ts +6 -1
  319. package/esm/plugins/all.d.ts +1 -1
  320. package/esm/plugins/all.js +1 -1
  321. package/esm/plugins/autocomplete/autocomplete.d.ts +2 -26
  322. package/esm/plugins/autocomplete/autocomplete.impl.d.ts +31 -0
  323. package/esm/plugins/autocomplete/autocomplete.impl.js +1 -0
  324. package/esm/plugins/autocomplete/autocomplete.js +1 -1
  325. package/esm/plugins/index.d.ts +1 -1
  326. package/esm/plugins/index.js +1 -1
  327. package/esm/plugins/page-break/page-break.js +1 -1
  328. package/esm/plugins/paste-code/config.d.ts +6 -1
  329. package/esm/plugins/paste-code/config.js +1 -1
  330. package/esm/plugins/paste-code/helpers.d.ts +25 -0
  331. package/esm/plugins/paste-code/helpers.js +1 -0
  332. package/esm/plugins/paste-code/paste-code.d.ts +9 -0
  333. package/esm/plugins/paste-code/paste-code.js +1 -1
  334. package/esm/plugins/paste-code/ui/code-tuner/code-tuner.d.ts +87 -0
  335. package/esm/plugins/paste-code/ui/code-tuner/code-tuner.js +3 -0
  336. package/esm/plugins/paste-code/ui/code-tuner/drag.svg.js +1 -0
  337. package/esm/plugins/todo-list/todo-list.js +1 -1
  338. package/package.json +1 -1
  339. package/types/config.d.ts +6 -1
  340. package/types/plugins/autocomplete/autocomplete.d.ts +2 -26
  341. package/types/plugins/autocomplete/autocomplete.impl.d.ts +31 -0
  342. package/types/plugins/index.d.ts +1 -1
  343. package/types/plugins/paste-code/config.d.ts +6 -1
  344. package/types/plugins/paste-code/helpers.d.ts +25 -0
  345. package/types/plugins/paste-code/paste-code.d.ts +9 -0
  346. package/types/plugins/paste-code/ui/code-tuner/code-tuner.d.ts +87 -0
@@ -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.12.26
4
+ * Version: v4.12.32
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -29,10 +29,12 @@ module.exports = "<svg viewBox=\"0 0 24 24\" xml:space=\"preserve\" xmlns=\"http
29
29
  /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
30
30
 
31
31
  "use strict";
32
- /* harmony import */ var _icon_svg__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(75689);
33
- /* harmony import */ var _icon_svg__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_icon_svg__WEBPACK_IMPORTED_MODULE_0__);
34
- /* harmony import */ var jodit_esm_config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6441);
35
- /* harmony import */ var jodit_esm_core_helpers_html_htmlspecialchars__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(53326);
32
+ /* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(35960);
33
+ /* harmony import */ var _icon_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(75689);
34
+ /* harmony import */ var _icon_svg__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_icon_svg__WEBPACK_IMPORTED_MODULE_1__);
35
+ /* harmony import */ var jodit_esm_config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6441);
36
+ /* harmony import */ var jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(22732);
37
+ /* harmony import */ var jodit_esm_core_helpers_html_htmlspecialchars__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(53326);
36
38
  /*!
37
39
  * Jodit Editor PRO (https://xdsoft.net/jodit/)
38
40
  * See LICENSE.md in the project root for license information.
@@ -40,12 +42,44 @@ module.exports = "<svg viewBox=\"0 0 24 24\" xml:space=\"preserve\" xmlns=\"http
40
42
  */
41
43
 
42
44
 
43
- jodit_esm_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.controls.pasteCode = {
44
- icon: (_icon_svg__WEBPACK_IMPORTED_MODULE_0___default()),
45
+
46
+
47
+ jodit_esm_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.controls.pasteCode = {
48
+ icon: (_icon_svg__WEBPACK_IMPORTED_MODULE_1___default()),
45
49
  tooltip: 'Paste code',
46
50
  command: 'pasteCode'
47
51
  };
48
- jodit_esm_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.pasteCode = {
52
+ /**
53
+ * Buttons of the contextual popup shown for a `<pre>` code block.
54
+ * The language dropdown is always prepended by the plugin.
55
+ */ jodit_esm_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.controls.codeBlock = {
56
+ edit: {
57
+ icon: 'pencil',
58
+ tooltip: 'Edit code',
59
+ exec: (jodit, target)=>{
60
+ jodit.e.fire('editPreInPasteCode', target);
61
+ }
62
+ },
63
+ copy: {
64
+ icon: 'copy',
65
+ tooltip: 'Copy code',
66
+ exec: (jodit, target)=>{
67
+ if (jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_3__.Dom.isTag(target, 'pre')) {
68
+ (0,_helpers__WEBPACK_IMPORTED_MODULE_0__.copyCodeToClipboard)(jodit, target);
69
+ }
70
+ }
71
+ },
72
+ remove: {
73
+ icon: 'bin',
74
+ tooltip: 'Delete',
75
+ exec: (jodit, target)=>{
76
+ jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_3__.Dom.safeRemove(target);
77
+ jodit.e.fire('synchro');
78
+ jodit.e.fire('hideCodeTuner.pasteCode');
79
+ }
80
+ }
81
+ };
82
+ jodit_esm_config__WEBPACK_IMPORTED_MODULE_2__.Config.prototype.pasteCode = {
49
83
  globalHighlightLib: false,
50
84
  canonicalLanguageCode (lang) {
51
85
  switch(lang){
@@ -66,7 +100,7 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.pasteCode = {
66
100
  window.Prism.manual = true;
67
101
  },
68
102
  highlight (code, language) {
69
- return typeof Prism !== 'undefined' ? Prism.highlight(code, Prism.languages[language] || Prism.languages.plain, language) : (0,jodit_esm_core_helpers_html_htmlspecialchars__WEBPACK_IMPORTED_MODULE_2__.htmlspecialchars)(code);
103
+ return typeof Prism !== 'undefined' ? Prism.highlight(code, Prism.languages[language] || Prism.languages.plain, language) : (0,jodit_esm_core_helpers_html_htmlspecialchars__WEBPACK_IMPORTED_MODULE_4__.htmlspecialchars)(code);
70
104
  },
71
105
  isLangLoaded (lang) {
72
106
  if (lang === 'html') {
@@ -84,7 +118,13 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.pasteCode = {
84
118
  ]
85
119
  },
86
120
  defaultLanguage: 'html',
87
- insertTemplate: (jodit, language, value)=>`<pre class="language-${language}">${(0,jodit_esm_core_helpers_html_htmlspecialchars__WEBPACK_IMPORTED_MODULE_2__.htmlspecialchars)(value)}</pre>`,
121
+ insertTemplate: (jodit, language, value)=>`<pre class="language-${language}">${(0,jodit_esm_core_helpers_html_htmlspecialchars__WEBPACK_IMPORTED_MODULE_4__.htmlspecialchars)(value)}</pre>`,
122
+ popup: [
123
+ 'codeBlock.edit',
124
+ 'codeBlock.copy',
125
+ '|',
126
+ 'codeBlock.remove'
127
+ ],
88
128
  languages: [
89
129
  {
90
130
  value: 'plaintext',
@@ -194,6 +234,102 @@ jodit_esm_config__WEBPACK_IMPORTED_MODULE_1__.Config.prototype.pasteCode = {
194
234
  };
195
235
 
196
236
 
237
+ /***/ }),
238
+
239
+ /***/ 35960:
240
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
241
+
242
+ "use strict";
243
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
244
+ /* harmony export */ copyCodeToClipboard: function() { return /* binding */ copyCodeToClipboard; },
245
+ /* harmony export */ languageTitle: function() { return /* binding */ languageTitle; },
246
+ /* harmony export */ parseLanguage: function() { return /* binding */ parseLanguage; },
247
+ /* harmony export */ setPreLanguage: function() { return /* binding */ setPreLanguage; }
248
+ /* harmony export */ });
249
+ /* harmony import */ var jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(22732);
250
+ /*!
251
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
252
+ * See LICENSE.md in the project root for license information.
253
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
254
+ */
255
+ /**
256
+ * Returns the inner `<code>` element of a `<pre>` when the pre wraps a single
257
+ * code element, otherwise the pre itself. The language class lives on whichever
258
+ * is returned.
259
+ */ function codeContainer(pre) {
260
+ if (pre.firstElementChild === pre.lastElementChild && jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_0__.Dom.isTag(pre.firstElementChild, 'code')) {
261
+ return pre.firstElementChild;
262
+ }
263
+ return pre;
264
+ }
265
+ /**
266
+ * Reads the canonical language code of a `<pre>` block from its `language-*`
267
+ * class (checked on the pre and on the inner `<code>` element).
268
+ */ function parseLanguage(jodit, pre) {
269
+ let language = null;
270
+ const getLang = (el)=>el.classList.forEach((className)=>{
271
+ const match = /^language-(.+)/.exec(className);
272
+ if (match && match[1]) {
273
+ language = match[1];
274
+ }
275
+ });
276
+ getLang(pre);
277
+ const code = codeContainer(pre);
278
+ if (language == null && code !== pre) {
279
+ getLang(code);
280
+ }
281
+ return jodit.o.pasteCode.canonicalLanguageCode(language || 'html');
282
+ }
283
+ /**
284
+ * Human readable title of a language code, taken from `pasteCode.languages`.
285
+ */ function languageTitle(jodit, lang) {
286
+ const option = jodit.o.pasteCode.languages.find((item)=>String(item.value) === lang);
287
+ return jodit.i18n(String(option ? option.text : lang));
288
+ }
289
+ /**
290
+ * Replaces the `language-*` class on a `<pre>` block (and its inner `<code>`)
291
+ * and asks the paste-code plugin to re-highlight it.
292
+ */ function setPreLanguage(jodit, pre, lang) {
293
+ const strip = (el)=>Array.from(el.classList).forEach((className)=>{
294
+ if (/^language-/.test(className)) {
295
+ el.classList.remove(className);
296
+ }
297
+ });
298
+ strip(pre);
299
+ const code = codeContainer(pre);
300
+ if (code !== pre) {
301
+ strip(code);
302
+ }
303
+ code.classList.add(`language-${lang}`);
304
+ jodit.e.fire('rehighlightPasteCode', pre);
305
+ jodit.e.fire('synchro');
306
+ }
307
+ /**
308
+ * Copies the raw text of a code block to the clipboard and fires
309
+ * `afterCopyCode.pasteCode` with the copied text.
310
+ */ function copyCodeToClipboard(jodit, pre) {
311
+ const text = pre.innerText;
312
+ const { navigator } = jodit.ow;
313
+ if (navigator && navigator.clipboard && navigator.clipboard.writeText) {
314
+ navigator.clipboard.writeText(text).catch(()=>null);
315
+ } else {
316
+ const textarea = jodit.create.element('textarea');
317
+ textarea.value = text;
318
+ textarea.style.position = 'fixed';
319
+ textarea.style.opacity = '0';
320
+ jodit.od.body.appendChild(textarea);
321
+ textarea.select();
322
+ try {
323
+ jodit.od.execCommand('copy');
324
+ } catch (unused) {
325
+ // ignore – clipboard not available
326
+ }
327
+ jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_0__.Dom.safeRemove(textarea);
328
+ }
329
+ jodit.e.fire('afterCopyCode.pasteCode', text);
330
+ }
331
+
332
+
197
333
  /***/ }),
198
334
 
199
335
  /***/ 41406:
@@ -208,15 +344,17 @@ __webpack_require__.r(__webpack_exports__);
208
344
  /* harmony import */ var _swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(82749);
209
345
  /* harmony import */ var _swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(31635);
210
346
  /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(83967);
211
- /* harmony import */ var jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(82758);
212
- /* harmony import */ var jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(65478);
213
- /* harmony import */ var jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(21537);
214
- /* harmony import */ var jodit_esm_core_helpers_checker_is_boolean__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(87612);
215
- /* harmony import */ var jodit_esm_core_helpers_html_htmlspecialchars__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(53326);
216
- /* harmony import */ var jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(50911);
217
- /* harmony import */ var jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(67510);
218
- /* harmony import */ var jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(41409);
219
- /* harmony import */ var jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(2692);
347
+ /* harmony import */ var _ui_code_tuner_code_tuner__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(24397);
348
+ /* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(35960);
349
+ /* harmony import */ var jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(82758);
350
+ /* harmony import */ var jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(65478);
351
+ /* harmony import */ var jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(21537);
352
+ /* harmony import */ var jodit_esm_core_helpers_checker_is_boolean__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(87612);
353
+ /* harmony import */ var jodit_esm_core_helpers_html_htmlspecialchars__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(53326);
354
+ /* harmony import */ var jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(50911);
355
+ /* harmony import */ var jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(67510);
356
+ /* harmony import */ var jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(41409);
357
+ /* harmony import */ var jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(2692);
220
358
  /*!
221
359
  * Jodit Editor PRO (https://xdsoft.net/jodit/)
222
360
  * See LICENSE.md in the project root for license information.
@@ -235,18 +373,21 @@ __webpack_require__.r(__webpack_exports__);
235
373
 
236
374
 
237
375
 
238
- class pasteCode extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_9__.Plugin {
376
+
377
+
378
+ class pasteCode extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_11__.Plugin {
239
379
  className() {
240
380
  return 'pasteCode';
241
381
  }
242
382
  /** @override */ afterInit(jodit) {
243
383
  jodit.registerCommand('pasteCode', ()=>this.__openCodeEditDialog());
384
+ this.__codeTuner = new _ui_code_tuner_code_tuner__WEBPACK_IMPORTED_MODULE_4__.UICodeTuner(jodit);
244
385
  jodit.async.requestIdleCallback(()=>this.__initHighlightLibLoading());
245
386
  }
246
387
  __openCodeEditDialog(defLanguage, defValue, pre) {
247
388
  const jodit = this.j;
248
389
  const form = this.__createForm();
249
- const { code, language } = (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_6__.refs)(form.container);
390
+ const { code, language } = (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_8__.refs)(form.container);
250
391
  if (defLanguage) {
251
392
  language.value = defLanguage;
252
393
  }
@@ -262,11 +403,11 @@ class pasteCode extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_9__.Plugi
262
403
  jodit.s.restore();
263
404
  const newPre = jodit.createInside.fromHTML(jodit.o.pasteCode.insertTemplate(jodit, language.value, code.value));
264
405
  if (pre) {
265
- jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__.Dom.replace(pre, newPre, jodit.createInside, false, true);
406
+ jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__.Dom.replace(pre, newPre, jodit.createInside, false, true);
266
407
  } else {
267
408
  const current = jodit.s.current();
268
- const block = jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__.Dom.up(current, jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__.Dom.isBlock, jodit.editor);
269
- block && !jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__.Dom.isCell(block) ? jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__.Dom.after(block, newPre) : jodit.s.insertNode(newPre);
409
+ const block = jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__.Dom.up(current, jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__.Dom.isBlock, jodit.editor);
410
+ block && !jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__.Dom.isCell(block) ? jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__.Dom.after(block, newPre) : jodit.s.insertNode(newPre);
270
411
  }
271
412
  this.__imdOnChange();
272
413
  return;
@@ -277,18 +418,30 @@ class pasteCode extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_9__.Plugi
277
418
  });
278
419
  dialog.setContent(form.container).open(true);
279
420
  }
280
- /** @override */ beforeDestruct(jodit) {}
421
+ /** @override */ beforeDestruct(jodit) {
422
+ var _this___codeTuner;
423
+ (_this___codeTuner = this.__codeTuner) === null || _this___codeTuner === void 0 ? void 0 : _this___codeTuner.destruct();
424
+ }
425
+ /**
426
+ * Re-highlights a code block, e.g. after its language was changed from the
427
+ * contextual popup.
428
+ */ onRehighlightPasteCode(pre) {
429
+ if (jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__.Dom.isTag(pre, 'pre')) {
430
+ (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_8__.attr)(pre, 'contenteditable', false);
431
+ this.__highlightCode(pre).catch(()=>null);
432
+ }
433
+ }
281
434
  __createForm() {
282
435
  const { jodit } = this;
283
- return new jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_10__.UIForm(jodit, [
284
- new jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_10__.UISelect(jodit, {
436
+ return new jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_12__.UIForm(jodit, [
437
+ new jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_12__.UISelect(jodit, {
285
438
  name: 'language',
286
439
  label: 'Language',
287
440
  value: jodit.o.pasteCode.defaultLanguage,
288
441
  options: jodit.o.pasteCode.languages,
289
442
  required: true
290
443
  }),
291
- new jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_10__.UITextArea(jodit, {
444
+ new jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_12__.UITextArea(jodit, {
292
445
  label: 'Code view',
293
446
  resizable: false,
294
447
  name: 'code',
@@ -300,15 +453,15 @@ class pasteCode extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_9__.Plugi
300
453
  });
301
454
  }
302
455
  __createDialog(onSave, onCancel) {
303
- const dialog = new jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__.Dialog({
456
+ const dialog = new jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__.Dialog({
304
457
  language: this.j.o.language
305
458
  });
306
459
  dialog.setHeader('Insert/Edit Code Sample').setSize(this.j.o.pasteCode.dialog.width, this.j.o.pasteCode.dialog.height).setFooter([
307
- (0,jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_10__.Button)(dialog, '', 'Cancel', 'default').onAction(()=>{
460
+ (0,jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_12__.Button)(dialog, '', 'Cancel', 'default').onAction(()=>{
308
461
  dialog.close();
309
462
  onCancel();
310
463
  }),
311
- (0,jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_10__.Button)(dialog, 'save', 'Save', 'primary').onAction(()=>{
464
+ (0,jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_12__.Button)(dialog, 'save', 'Save', 'primary').onAction(()=>{
312
465
  dialog.close();
313
466
  onSave();
314
467
  })
@@ -319,9 +472,9 @@ class pasteCode extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_9__.Plugi
319
472
  this.__imdOnChange();
320
473
  }
321
474
  __imdOnChange() {
322
- (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_6__.$$)('pre', this.j.editor).forEach((pre)=>{
323
- if (!(0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_6__.attr)(pre, 'contenteditable')) {
324
- (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_6__.attr)(pre, 'contenteditable', false);
475
+ (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_8__.$$)('pre', this.j.editor).forEach((pre)=>{
476
+ if (!(0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_8__.attr)(pre, 'contenteditable')) {
477
+ (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_8__.attr)(pre, 'contenteditable', false);
325
478
  this.__highlightCode(pre).catch(()=>null);
326
479
  }
327
480
  });
@@ -331,38 +484,25 @@ class pasteCode extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_9__.Plugi
331
484
  const language = this.__parseLanguage(pre);
332
485
  const { highlight } = yield this.__initHighlightLibLoading(language);
333
486
  let container = pre;
334
- if (pre.firstElementChild === pre.lastElementChild && jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__.Dom.isTag(pre.firstElementChild, 'code')) {
487
+ if (pre.firstElementChild === pre.lastElementChild && jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__.Dom.isTag(pre.firstElementChild, 'code')) {
335
488
  container = pre.firstElementChild;
336
489
  }
337
490
  container.innerHTML = highlight(container.innerText, language);
338
491
  }).call(this);
339
492
  }
340
493
  onPreEdit(e) {
341
- const pre = jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__.Dom.isNode(e) && jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__.Dom.isTag(e, 'pre') ? e : jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__.Dom.closest(e.target, 'pre', this.j.editor);
494
+ const pre = jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__.Dom.isNode(e) && jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__.Dom.isTag(e, 'pre') ? e : jodit_esm_modules__WEBPACK_IMPORTED_MODULE_13__.Dom.closest(e.target, 'pre', this.j.editor);
342
495
  if (pre) {
343
496
  const language = this.__parseLanguage(pre);
344
497
  this.__openCodeEditDialog(language, pre.innerText, pre);
345
498
  }
346
499
  }
347
500
  __parseLanguage(pre) {
348
- let language = null;
349
- const getLang = (code)=>code.classList.forEach((className)=>{
350
- if (/language-/.test(className)) {
351
- const lng = /language-(.*)/.exec(className);
352
- if (lng && lng[1]) {
353
- language = lng[1];
354
- }
355
- }
356
- });
357
- getLang(pre);
358
- if (language == null && pre.firstElementChild === pre.lastElementChild && jodit_esm_modules__WEBPACK_IMPORTED_MODULE_11__.Dom.isTag(pre.firstElementChild, 'code')) {
359
- getLang(pre.firstElementChild);
360
- }
361
- return this.jodit.o.pasteCode.canonicalLanguageCode(language || 'html');
501
+ return (0,_helpers__WEBPACK_IMPORTED_MODULE_5__.parseLanguage)(this.jodit, pre);
362
502
  }
363
503
  onAfterGetValueFromEditor(data) {
364
504
  const strip = (_, pre, _1, endPreStart, content, endPre)=>{
365
- return `${pre.trim()}${endPreStart}${(0,jodit_esm_core_helpers_html_htmlspecialchars__WEBPACK_IMPORTED_MODULE_8__.htmlspecialchars)((0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_6__.stripTags)(content, this.j.ed, new Set([
505
+ return `${pre.trim()}${endPreStart}${(0,jodit_esm_core_helpers_html_htmlspecialchars__WEBPACK_IMPORTED_MODULE_10__.htmlspecialchars)((0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_8__.stripTags)(content, this.j.ed, new Set([
366
506
  'br'
367
507
  ])))}${endPre}`;
368
508
  };
@@ -379,24 +519,26 @@ class pasteCode extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_9__.Plugi
379
519
  name: 'pasteCode',
380
520
  group: 'clipboard'
381
521
  }
382
- ]), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "__highlightLibJSIsLoaded", false), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "__loadLanguage", new Map()), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "__initHighlightLibLoading", (language)=>(0,_swc_helpers_async_to_generator__WEBPACK_IMPORTED_MODULE_0__._)(function*() {
522
+ ]), /**
523
+ * Contextual UI (drag anchor + popup toolbar) for existing code blocks
524
+ */ (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "__codeTuner", void 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "__highlightLibJSIsLoaded", false), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "__loadLanguage", new Map()), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_1__._)(this, "__initHighlightLibLoading", (language)=>(0,_swc_helpers_async_to_generator__WEBPACK_IMPORTED_MODULE_0__._)(function*() {
383
525
  const { globalHighlightLib, highlightLib: { css, js, langUrl, highlight, isLangLoaded, beforeLibLoad, afterLibLoad } } = _this.j.o.pasteCode;
384
526
  if (!_this.__highlightLibJSIsLoaded && !globalHighlightLib) {
385
527
  _this.__highlightLibJSIsLoaded = Promise.resolve(beforeLibLoad === null || beforeLibLoad === void 0 ? void 0 : beforeLibLoad()).then(()=>waitingPromise(_this.async, Promise.allSettled([
386
- (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_6__.loadNextStyle)(_this.jodit, css).catch(()=>null),
387
- (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_6__.loadNext)(_this.jodit, js).catch(()=>null)
528
+ (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_8__.loadNextStyle)(_this.jodit, css).catch(()=>null),
529
+ (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_8__.loadNext)(_this.jodit, js).catch(()=>null)
388
530
  ]))).then(()=>afterLibLoad === null || afterLibLoad === void 0 ? void 0 : afterLibLoad());
389
531
  }
390
- if (!(0,jodit_esm_core_helpers_checker_is_boolean__WEBPACK_IMPORTED_MODULE_7__.isBoolean)(_this.__highlightLibJSIsLoaded)) {
532
+ if (!(0,jodit_esm_core_helpers_checker_is_boolean__WEBPACK_IMPORTED_MODULE_9__.isBoolean)(_this.__highlightLibJSIsLoaded)) {
391
533
  yield _this.__highlightLibJSIsLoaded;
392
534
  }
393
535
  if (language && !isLangLoaded(language) && !globalHighlightLib) {
394
536
  if (!_this.__loadLanguage.has(language)) {
395
- if (!jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_4__.IS_PROD) {
537
+ if (!jodit_esm_core_constants__WEBPACK_IMPORTED_MODULE_6__.IS_PROD) {
396
538
  // eslint-disable-next-line no-console
397
539
  console.log('Load language', language, 'for paste-code');
398
540
  }
399
- _this.__loadLanguage.set(language, waitingPromise(_this.async, (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_6__.appendScriptAsync)(_this.jodit, langUrl(language)).catch(()=>null)));
541
+ _this.__loadLanguage.set(language, waitingPromise(_this.async, (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_8__.appendScriptAsync)(_this.jodit, langUrl(language)).catch(()=>null)));
400
542
  }
401
543
  yield _this.__loadLanguage.get(language);
402
544
  }
@@ -410,33 +552,316 @@ class pasteCode extends jodit_esm_core_plugin__WEBPACK_IMPORTED_MODULE_9__.Plugi
410
552
  'license'
411
553
  ]);
412
554
  (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_2__.__decorate)([
413
- jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_5__.autobind
555
+ jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_7__.autobind
414
556
  ], pasteCode.prototype, "__openCodeEditDialog", null);
415
557
  (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_2__.__decorate)([
416
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_5__.watch)([
558
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_7__.watch)('?:rehighlightPasteCode')
559
+ ], pasteCode.prototype, "onRehighlightPasteCode", null);
560
+ (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_2__.__decorate)([
561
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_7__.watch)([
417
562
  '?:change',
418
563
  '?:afterInit'
419
564
  ]),
420
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_5__.debounce)()
565
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_7__.debounce)()
421
566
  ], pasteCode.prototype, "__onChange", null);
422
567
  (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_2__.__decorate)([
423
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_5__.watch)([
568
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_7__.watch)([
424
569
  '?:dblclick',
425
570
  '?:editPreInPasteCode'
426
571
  ])
427
572
  ], pasteCode.prototype, "onPreEdit", null);
428
573
  (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_2__.__decorate)([
429
- (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_5__.watch)('?:afterGetValueFromEditor')
574
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_7__.watch)('?:afterGetValueFromEditor')
430
575
  ], pasteCode.prototype, "onAfterGetValueFromEditor", null);
431
576
  pasteCode = (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_2__.__decorate)([
432
- jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_5__.component
577
+ jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_7__.component
433
578
  ], pasteCode);
434
579
  function waitingPromise(async, promise) {
435
580
  return async.promise((resolve, reject)=>{
436
581
  promise.then(resolve).catch(reject);
437
582
  }).catch(()=>null);
438
583
  }
439
- jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_12__.JoditPro.plugins.add('paste-code', pasteCode);
584
+ jodit_pro_jodit_pro__WEBPACK_IMPORTED_MODULE_14__.JoditPro.plugins.add('paste-code', pasteCode);
585
+
586
+
587
+ /***/ }),
588
+
589
+ /***/ 24397:
590
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
591
+
592
+ "use strict";
593
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
594
+ /* harmony export */ UICodeTuner: function() { return /* binding */ UICodeTuner; }
595
+ /* harmony export */ });
596
+ /* harmony import */ var _swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(82749);
597
+ /* harmony import */ var _swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(31635);
598
+ /* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(35960);
599
+ /* harmony import */ var jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(65478);
600
+ /* harmony import */ var jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(22732);
601
+ /* harmony import */ var jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(21537);
602
+ /* harmony import */ var jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(67510);
603
+ /* harmony import */ var jodit_esm_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(21491);
604
+ /*!
605
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
606
+ * See LICENSE.md in the project root for license information.
607
+ * Copyright (c) 2013-2026 Valerii Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
608
+ */
609
+
610
+
611
+
612
+
613
+
614
+
615
+
616
+
617
+ const ANCHOR_WIDTH = 16;
618
+ const ANCHOR_GAP = 6;
619
+ class UICodeTuner extends jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_6__.UIElement {
620
+ className() {
621
+ return 'UICodeTuner';
622
+ }
623
+ render() {
624
+ return `<div>
625
+ <div class="&__anchor" title="~Drag to move the code block~"></div>
626
+ </div>`;
627
+ }
628
+ /**
629
+ * Handler: hovering a code block shows the drag anchor next to it.
630
+ */ onEditorMouseMove(e) {
631
+ const block = jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_4__.Dom.closest(e.target, 'pre', this.j.editor);
632
+ if (block) {
633
+ this.__cancelHide();
634
+ this.show(block);
635
+ }
636
+ // Hiding is driven by `__onPointerMove` (the block + gutter hot zone).
637
+ }
638
+ /**
639
+ * Handler: clicking a code block opens its popup toolbar; clicking anywhere
640
+ * else in the editor closes the tuner.
641
+ */ onEditorClick(e) {
642
+ const block = jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_4__.Dom.closest(e.target, 'pre', this.j.editor);
643
+ if (block) {
644
+ this.__cancelHide();
645
+ this.show(block);
646
+ this.openToolbar();
647
+ } else {
648
+ this.forceHide();
649
+ }
650
+ }
651
+ /**
652
+ * Shows the anchor for the given code block.
653
+ */ show(block) {
654
+ this.currentBlock = block;
655
+ if (!this.isShown) {
656
+ this.isShown = true;
657
+ if (this.container.parentNode == null) {
658
+ this.j.od.body.appendChild(this.container);
659
+ }
660
+ // Track the pointer globally so the anchor stays visible while the
661
+ // cursor travels across the gutter from the block to the grip, and
662
+ // hides only once it leaves the whole block + gutter region.
663
+ this.j.e.on(this.j.ow, 'mousemove', this.__onPointerMove);
664
+ // The anchor is `position: fixed`, so it must follow the block on
665
+ // page/editor scroll and window resize.
666
+ this.j.e.on(this.j.ow, 'scroll resize', this.__onReposition).on(this.j.editor, 'scroll', this.__onReposition);
667
+ }
668
+ this.calcPosition();
669
+ }
670
+ /**
671
+ * Soft hide — keeps the UI while the popup toolbar is open.
672
+ */ hide() {
673
+ if (this.popup.isOpened) {
674
+ return;
675
+ }
676
+ this.forceHide();
677
+ }
678
+ /**
679
+ * Handler: a click outside the editor closes the tuner — unless it landed on
680
+ * the anchor/grip itself (which lives in the document body, so Jodit reports
681
+ * it as an "outside" click).
682
+ */ onOutsideClick(e) {
683
+ if (e && jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_4__.Dom.isOrContains(this.container, e.target)) {
684
+ return;
685
+ }
686
+ this.forceHide();
687
+ }
688
+ /**
689
+ * Hard hide — closes the popup and removes the anchor.
690
+ */ forceHide() {
691
+ this.__cancelHide();
692
+ if (!this.isShown) {
693
+ return;
694
+ }
695
+ this.isShown = false;
696
+ this.j.e.off(this.j.ow, 'mousemove', this.__onPointerMove).off(this.j.ow, 'scroll resize', this.__onReposition).off(this.j.editor, 'scroll', this.__onReposition);
697
+ this.popup.close();
698
+ jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_4__.Dom.safeRemove(this.container);
699
+ }
700
+ /**
701
+ * Global pointer tracking: keep the tuner shown while the pointer is within
702
+ * the block + left gutter + grip region (one continuous hot zone, so there
703
+ * is no seam between the block and the anchor), and hide it shortly after
704
+ * the pointer leaves that region.
705
+ */ __onPointerMove(e) {
706
+ if (!this.isShown || this.popup.isOpened) {
707
+ return;
708
+ }
709
+ if (this.__inActiveZone(e.clientX, e.clientY)) {
710
+ this.__cancelHide();
711
+ } else {
712
+ this.__scheduleHide();
713
+ }
714
+ }
715
+ __inActiveZone(x, y) {
716
+ const b = (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_5__.position)(this.currentBlock, this.j);
717
+ return x >= b.left - ANCHOR_WIDTH - ANCHOR_GAP - 6 && x <= b.left + b.width && y >= b.top - 6 && y <= b.top + b.height + 6;
718
+ }
719
+ __scheduleHide() {
720
+ // Idempotent: a continuous stream of mousemove events must not keep
721
+ // resetting the timer, otherwise the anchor would never hide while the
722
+ // pointer is moving over non-code areas.
723
+ if (this.__hideTimer) {
724
+ return;
725
+ }
726
+ this.__hideTimer = this.j.async.setTimeout(()=>{
727
+ this.__hideTimer = 0;
728
+ this.hide();
729
+ }, 150);
730
+ }
731
+ __cancelHide() {
732
+ if (this.__hideTimer) {
733
+ this.j.async.clearTimeout(this.__hideTimer);
734
+ this.__hideTimer = 0;
735
+ }
736
+ }
737
+ /**
738
+ * Recalculates the anchor and popup position. Bound to everything that can
739
+ * move the code block: editor/page scroll, resize and content changes.
740
+ */ __onReposition() {
741
+ if (!this.isShown) {
742
+ return;
743
+ }
744
+ // The block may have been removed/replaced by an edit.
745
+ if (!this.j.editor.contains(this.currentBlock)) {
746
+ this.forceHide();
747
+ return;
748
+ }
749
+ this.calcPosition();
750
+ }
751
+ onEditorChange() {
752
+ this.__onReposition();
753
+ }
754
+ /**
755
+ * Places the anchor in the gutter to the left of the code block.
756
+ */ calcPosition() {
757
+ const box = (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_5__.position)(this.currentBlock, this.j);
758
+ (0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_5__.css)(this.container, {
759
+ left: Math.round(box.left - ANCHOR_WIDTH - ANCHOR_GAP),
760
+ top: Math.round(box.top + 4)
761
+ });
762
+ if (this.popup.isOpened) {
763
+ this.popup.updatePosition();
764
+ }
765
+ }
766
+ /**
767
+ * Builds and shows the popup toolbar below the code block.
768
+ */ openToolbar() {
769
+ this.toolbar.build([
770
+ this.__languageControl(),
771
+ ...this.j.o.pasteCode.popup
772
+ ], this.currentBlock);
773
+ this.popup.setContent(this.toolbar.container);
774
+ if (this.popup.isOpened) {
775
+ this.popup.updatePosition();
776
+ } else {
777
+ this.popup.open(()=>(0,jodit_esm_core_helpers__WEBPACK_IMPORTED_MODULE_5__.position)(this.currentBlock, this.j));
778
+ }
779
+ }
780
+ /**
781
+ * The language dropdown control. Its list is built from
782
+ * `pasteCode.languages` so it always reflects the editor configuration.
783
+ */ __languageControl() {
784
+ const languages = {};
785
+ this.j.o.pasteCode.languages.forEach((option)=>{
786
+ languages[String(option.value)] = String(option.text);
787
+ });
788
+ return {
789
+ name: 'language',
790
+ list: languages,
791
+ tooltip: 'Language',
792
+ // Render the current language straight away so the button does not
793
+ // flash from its name to the value and jitter the popup width.
794
+ text: (0,_helpers__WEBPACK_IMPORTED_MODULE_2__.languageTitle)(this.j, (0,_helpers__WEBPACK_IMPORTED_MODULE_2__.parseLanguage)(this.j, this.currentBlock)),
795
+ childTemplate: (_jodit, _key, value)=>this.j.i18n(value),
796
+ update: (_jodit, button)=>{
797
+ const pre = button.target;
798
+ if (jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_4__.Dom.isTag(pre, 'pre')) {
799
+ button.setState({
800
+ text: (0,_helpers__WEBPACK_IMPORTED_MODULE_2__.languageTitle)(this.j, (0,_helpers__WEBPACK_IMPORTED_MODULE_2__.parseLanguage)(this.j, pre)),
801
+ icon: {
802
+ name: ''
803
+ }
804
+ });
805
+ }
806
+ },
807
+ childExec: (_jodit, target, { control })=>{
808
+ const lang = String(control.args && control.args[0] || 'plaintext');
809
+ if (jodit_esm_core_dom__WEBPACK_IMPORTED_MODULE_4__.Dom.isTag(target, 'pre')) {
810
+ (0,_helpers__WEBPACK_IMPORTED_MODULE_2__.setPreLanguage)(this.j, target, lang);
811
+ this.j.e.fire('hideCodeTuner.pasteCode');
812
+ }
813
+ }
814
+ };
815
+ }
816
+ /**
817
+ * Handler: start dragging the whole block by its anchor. The actual drag is
818
+ * performed by the base `drag-and-drop-element` plugin.
819
+ */ onAnchorMouseDown(e) {
820
+ e.preventDefault();
821
+ // Keep the grip visible while it is being grabbed — the base
822
+ // drag-and-drop plugin takes over the visuals. The grip hides on its own
823
+ // once the pointer leaves the hot zone (see `__onPointerMove`).
824
+ this.popup.close();
825
+ this.j.e.fire('startDragElement', this.currentBlock, e);
826
+ }
827
+ destruct() {
828
+ this.forceHide();
829
+ this.popup.destruct();
830
+ super.destruct();
831
+ }
832
+ constructor(...args){
833
+ super(...args), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "toolbar", (0,jodit_esm_modules_toolbar_factory__WEBPACK_IMPORTED_MODULE_7__.makeCollection)(this.j, this)), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "popup", new jodit_esm_core_ui__WEBPACK_IMPORTED_MODULE_6__.Popup(this.j, false)), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "isShown", false), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "__hideTimer", 0), (0,_swc_helpers_define_property__WEBPACK_IMPORTED_MODULE_0__._)(this, "currentBlock", void 0);
834
+ }
835
+ }
836
+ (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
837
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.watch)('j.editor:mousemove'),
838
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.throttle)(50)
839
+ ], UICodeTuner.prototype, "onEditorMouseMove", null);
840
+ (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
841
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.watch)('j.editor:click')
842
+ ], UICodeTuner.prototype, "onEditorClick", null);
843
+ (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
844
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.watch)(':outsideClick')
845
+ ], UICodeTuner.prototype, "onOutsideClick", null);
846
+ (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
847
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.watch)(':hideCodeTuner.pasteCode')
848
+ ], UICodeTuner.prototype, "forceHide", null);
849
+ (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
850
+ jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.autobind
851
+ ], UICodeTuner.prototype, "__onPointerMove", null);
852
+ (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
853
+ jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.autobind
854
+ ], UICodeTuner.prototype, "__onReposition", null);
855
+ (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
856
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.watch)(':change :resize :afterSetMode'),
857
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.throttle)(10)
858
+ ], UICodeTuner.prototype, "onEditorChange", null);
859
+ (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
860
+ (0,jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.watch)('anchor:mousedown')
861
+ ], UICodeTuner.prototype, "onAnchorMouseDown", null);
862
+ UICodeTuner = (0,_swc_helpers_ts_decorate__WEBPACK_IMPORTED_MODULE_1__.__decorate)([
863
+ jodit_esm_core_decorators__WEBPACK_IMPORTED_MODULE_3__.component
864
+ ], UICodeTuner);
440
865
 
441
866
 
442
867
  /***/ })