jodit-pro 1.3.39 → 2.0.0-beta.10

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 (455) hide show
  1. package/.nvmrc +1 -0
  2. package/CHANGELOG.md +982 -0
  3. package/LICENSE.txt +1 -0
  4. package/README.md +27 -27
  5. package/SECURITY.md +10 -0
  6. package/es2015/jodit.css +4945 -0
  7. package/es2015/jodit.fat.min.css +1 -0
  8. package/es2015/jodit.fat.min.js +10 -0
  9. package/es2015/jodit.js +42706 -0
  10. package/es2015/jodit.min.css +1 -0
  11. package/es2015/jodit.min.js +10 -0
  12. package/es2015/plugins/autocomplete/autocomplete.css +26 -0
  13. package/es2015/plugins/autocomplete/autocomplete.js +473 -0
  14. package/es2015/plugins/autocomplete/autocomplete.min.js +10 -0
  15. package/es2015/plugins/backup/backup.css +48 -0
  16. package/es2015/plugins/backup/backup.js +567 -0
  17. package/{build/plugins/backup/backup.css → es2015/plugins/backup/backup.min.css} +1 -1
  18. package/es2015/plugins/backup/backup.min.js +10 -0
  19. package/es2015/plugins/button-generator/button-generator.css +316 -0
  20. package/es2015/plugins/button-generator/button-generator.js +1363 -0
  21. package/es2015/plugins/button-generator/button-generator.min.css +1 -0
  22. package/es2015/plugins/button-generator/button-generator.min.js +10 -0
  23. package/es2015/plugins/change-case/change-case.js +171 -0
  24. package/es2015/plugins/change-case/change-case.min.js +10 -0
  25. package/es2015/plugins/color-picker/color-picker.css +133 -0
  26. package/es2015/plugins/color-picker/color-picker.js +519 -0
  27. package/es2015/plugins/color-picker/color-picker.min.css +1 -0
  28. package/es2015/plugins/color-picker/color-picker.min.js +10 -0
  29. package/es2015/plugins/emoji/emoji.css +108 -0
  30. package/es2015/plugins/emoji/emoji.js +421 -0
  31. package/es2015/plugins/emoji/emoji.min.css +1 -0
  32. package/es2015/plugins/emoji/emoji.min.js +10 -0
  33. package/es2015/plugins/export-docs/export-docs.js +153 -0
  34. package/es2015/plugins/export-docs/export-docs.min.js +10 -0
  35. package/es2015/plugins/finder/finder.css +1342 -0
  36. package/es2015/plugins/finder/finder.js +3175 -0
  37. package/es2015/plugins/finder/finder.min.css +1 -0
  38. package/es2015/plugins/finder/finder.min.js +10 -0
  39. package/es2015/plugins/google-maps/google-maps.css +397 -0
  40. package/es2015/plugins/google-maps/google-maps.js +2492 -0
  41. package/es2015/plugins/google-maps/google-maps.min.css +1 -0
  42. package/es2015/plugins/google-maps/google-maps.min.js +10 -0
  43. package/es2015/plugins/google-search/google-search.js +108 -0
  44. package/es2015/plugins/google-search/google-search.min.js +10 -0
  45. package/es2015/plugins/highlight-signature/highlight-signature.js +233 -0
  46. package/es2015/plugins/highlight-signature/highlight-signature.min.js +10 -0
  47. package/es2015/plugins/iframe-editor/iframe-editor.css +16 -0
  48. package/es2015/plugins/iframe-editor/iframe-editor.js +310 -0
  49. package/es2015/plugins/iframe-editor/iframe-editor.min.js +10 -0
  50. package/es2015/plugins/keyboard/keyboard.css +48 -0
  51. package/es2015/plugins/keyboard/keyboard.js +539 -0
  52. package/es2015/plugins/keyboard/keyboard.min.js +10 -0
  53. package/es2015/plugins/mobile-view/mobile-view.js +170 -0
  54. package/es2015/plugins/mobile-view/mobile-view.min.js +10 -0
  55. package/es2015/plugins/page-break/page-break.js +181 -0
  56. package/es2015/plugins/page-break/page-break.min.js +10 -0
  57. package/es2015/plugins/paste-code/paste-code.css +21 -0
  58. package/es2015/plugins/paste-code/paste-code.js +320 -0
  59. package/es2015/plugins/paste-code/paste-code.min.js +10 -0
  60. package/es2015/plugins/paste-from-word/paste-from-word.js +1541 -0
  61. package/es2015/plugins/paste-from-word/paste-from-word.min.js +10 -0
  62. package/es2015/plugins/show-blocks/show-blocks.js +645 -0
  63. package/es2015/plugins/show-blocks/show-blocks.min.js +10 -0
  64. package/es2015/plugins/todo-list/todo-list.css +77 -0
  65. package/es2015/plugins/todo-list/todo-list.js +314 -0
  66. package/es2015/plugins/todo-list/todo-list.min.css +1 -0
  67. package/es2015/plugins/todo-list/todo-list.min.js +10 -0
  68. package/es2015/plugins/translate/translate.css +91 -0
  69. package/es2015/plugins/translate/translate.js +630 -0
  70. package/es2015/plugins/translate/translate.min.js +10 -0
  71. package/es2015/plugins/tune-block/tune-block.css +37 -0
  72. package/es2015/plugins/tune-block/tune-block.js +387 -0
  73. package/{build/plugins/tune-block/tune-block.css → es2015/plugins/tune-block/tune-block.min.css} +1 -1
  74. package/es2015/plugins/tune-block/tune-block.min.js +10 -0
  75. package/es2018/jodit.css +4945 -0
  76. package/es2018/jodit.fat.min.css +1 -0
  77. package/es2018/jodit.fat.min.js +10 -0
  78. package/es2018/jodit.js +42762 -0
  79. package/es2018/jodit.min.css +1 -0
  80. package/es2018/jodit.min.js +10 -0
  81. package/es2018/plugins/autocomplete/autocomplete.css +26 -0
  82. package/es2018/plugins/autocomplete/autocomplete.js +471 -0
  83. package/es2018/plugins/autocomplete/autocomplete.min.js +10 -0
  84. package/es2018/plugins/backup/backup.css +48 -0
  85. package/es2018/plugins/backup/backup.js +561 -0
  86. package/{build/plugins/backup/backup.es5.css → es2018/plugins/backup/backup.min.css} +1 -1
  87. package/es2018/plugins/backup/backup.min.js +10 -0
  88. package/es2018/plugins/button-generator/button-generator.css +316 -0
  89. package/es2018/plugins/button-generator/button-generator.js +1387 -0
  90. package/es2018/plugins/button-generator/button-generator.min.css +1 -0
  91. package/es2018/plugins/button-generator/button-generator.min.js +10 -0
  92. package/es2018/plugins/change-case/change-case.js +171 -0
  93. package/es2018/plugins/change-case/change-case.min.js +10 -0
  94. package/es2018/plugins/color-picker/color-picker.css +133 -0
  95. package/es2018/plugins/color-picker/color-picker.js +519 -0
  96. package/es2018/plugins/color-picker/color-picker.min.css +1 -0
  97. package/es2018/plugins/color-picker/color-picker.min.js +10 -0
  98. package/es2018/plugins/emoji/emoji.css +108 -0
  99. package/es2018/plugins/emoji/emoji.js +425 -0
  100. package/es2018/plugins/emoji/emoji.min.css +1 -0
  101. package/es2018/plugins/emoji/emoji.min.js +10 -0
  102. package/es2018/plugins/export-docs/export-docs.js +157 -0
  103. package/es2018/plugins/export-docs/export-docs.min.js +10 -0
  104. package/es2018/plugins/finder/finder.css +1342 -0
  105. package/es2018/plugins/finder/finder.js +3160 -0
  106. package/es2018/plugins/finder/finder.min.css +1 -0
  107. package/es2018/plugins/finder/finder.min.js +10 -0
  108. package/es2018/plugins/google-maps/google-maps.css +397 -0
  109. package/es2018/plugins/google-maps/google-maps.js +2556 -0
  110. package/es2018/plugins/google-maps/google-maps.min.css +1 -0
  111. package/es2018/plugins/google-maps/google-maps.min.js +10 -0
  112. package/es2018/plugins/google-search/google-search.js +108 -0
  113. package/es2018/plugins/google-search/google-search.min.js +10 -0
  114. package/es2018/plugins/highlight-signature/highlight-signature.js +233 -0
  115. package/es2018/plugins/highlight-signature/highlight-signature.min.js +10 -0
  116. package/es2018/plugins/iframe-editor/iframe-editor.css +16 -0
  117. package/es2018/plugins/iframe-editor/iframe-editor.js +310 -0
  118. package/es2018/plugins/iframe-editor/iframe-editor.min.js +10 -0
  119. package/es2018/plugins/keyboard/keyboard.css +48 -0
  120. package/es2018/plugins/keyboard/keyboard.js +539 -0
  121. package/es2018/plugins/keyboard/keyboard.min.js +10 -0
  122. package/es2018/plugins/mobile-view/mobile-view.js +170 -0
  123. package/es2018/plugins/mobile-view/mobile-view.min.js +10 -0
  124. package/es2018/plugins/page-break/page-break.js +181 -0
  125. package/es2018/plugins/page-break/page-break.min.js +10 -0
  126. package/es2018/plugins/paste-code/paste-code.css +21 -0
  127. package/es2018/plugins/paste-code/paste-code.js +318 -0
  128. package/es2018/plugins/paste-code/paste-code.min.js +10 -0
  129. package/es2018/plugins/paste-from-word/paste-from-word.js +1541 -0
  130. package/es2018/plugins/paste-from-word/paste-from-word.min.js +10 -0
  131. package/es2018/plugins/show-blocks/show-blocks.js +645 -0
  132. package/es2018/plugins/show-blocks/show-blocks.min.js +10 -0
  133. package/es2018/plugins/todo-list/todo-list.css +77 -0
  134. package/es2018/plugins/todo-list/todo-list.js +314 -0
  135. package/es2018/plugins/todo-list/todo-list.min.css +1 -0
  136. package/es2018/plugins/todo-list/todo-list.min.js +10 -0
  137. package/es2018/plugins/translate/translate.css +91 -0
  138. package/es2018/plugins/translate/translate.js +639 -0
  139. package/es2018/plugins/translate/translate.min.js +10 -0
  140. package/es2018/plugins/tune-block/tune-block.css +37 -0
  141. package/es2018/plugins/tune-block/tune-block.js +387 -0
  142. package/{build/plugins/tune-block/tune-block.es5.css → es2018/plugins/tune-block/tune-block.min.css} +1 -1
  143. package/es2018/plugins/tune-block/tune-block.min.js +10 -0
  144. package/es2021/jodit.css +4945 -0
  145. package/es2021/jodit.fat.min.css +1 -0
  146. package/es2021/jodit.fat.min.js +10 -0
  147. package/es2021/jodit.js +42643 -0
  148. package/es2021/jodit.min.css +1 -0
  149. package/es2021/jodit.min.js +10 -0
  150. package/es2021/plugins/autocomplete/autocomplete.css +26 -0
  151. package/es2021/plugins/autocomplete/autocomplete.js +463 -0
  152. package/es2021/plugins/autocomplete/autocomplete.min.css +1 -0
  153. package/es2021/plugins/autocomplete/autocomplete.min.js +10 -0
  154. package/es2021/plugins/backup/backup.css +48 -0
  155. package/es2021/plugins/backup/backup.js +554 -0
  156. package/es2021/plugins/backup/backup.min.css +1 -0
  157. package/es2021/plugins/backup/backup.min.js +10 -0
  158. package/es2021/plugins/button-generator/button-generator.css +316 -0
  159. package/es2021/plugins/button-generator/button-generator.js +1382 -0
  160. package/es2021/plugins/button-generator/button-generator.min.css +1 -0
  161. package/es2021/plugins/button-generator/button-generator.min.js +10 -0
  162. package/es2021/plugins/change-case/change-case.js +171 -0
  163. package/es2021/plugins/change-case/change-case.min.js +10 -0
  164. package/es2021/plugins/color-picker/color-picker.css +133 -0
  165. package/es2021/plugins/color-picker/color-picker.js +517 -0
  166. package/es2021/plugins/color-picker/color-picker.min.css +1 -0
  167. package/es2021/plugins/color-picker/color-picker.min.js +10 -0
  168. package/es2021/plugins/emoji/emoji.css +108 -0
  169. package/es2021/plugins/emoji/emoji.js +425 -0
  170. package/es2021/plugins/emoji/emoji.min.css +1 -0
  171. package/es2021/plugins/emoji/emoji.min.js +10 -0
  172. package/es2021/plugins/export-docs/export-docs.js +156 -0
  173. package/es2021/plugins/export-docs/export-docs.min.js +10 -0
  174. package/es2021/plugins/finder/finder.css +1342 -0
  175. package/es2021/plugins/finder/finder.js +3152 -0
  176. package/es2021/plugins/finder/finder.min.css +1 -0
  177. package/es2021/plugins/finder/finder.min.js +10 -0
  178. package/es2021/plugins/google-maps/google-maps.css +397 -0
  179. package/es2021/plugins/google-maps/google-maps.js +2540 -0
  180. package/es2021/plugins/google-maps/google-maps.min.css +1 -0
  181. package/es2021/plugins/google-maps/google-maps.min.js +10 -0
  182. package/es2021/plugins/google-search/google-search.js +107 -0
  183. package/es2021/plugins/google-search/google-search.min.js +10 -0
  184. package/es2021/plugins/highlight-signature/highlight-signature.js +231 -0
  185. package/es2021/plugins/highlight-signature/highlight-signature.min.js +10 -0
  186. package/es2021/plugins/iframe-editor/iframe-editor.css +16 -0
  187. package/es2021/plugins/iframe-editor/iframe-editor.js +308 -0
  188. package/es2021/plugins/iframe-editor/iframe-editor.min.css +1 -0
  189. package/es2021/plugins/iframe-editor/iframe-editor.min.js +10 -0
  190. package/es2021/plugins/keyboard/keyboard.css +48 -0
  191. package/es2021/plugins/keyboard/keyboard.js +537 -0
  192. package/es2021/plugins/keyboard/keyboard.min.css +1 -0
  193. package/es2021/plugins/keyboard/keyboard.min.js +10 -0
  194. package/es2021/plugins/mobile-view/mobile-view.js +168 -0
  195. package/es2021/plugins/mobile-view/mobile-view.min.js +10 -0
  196. package/es2021/plugins/page-break/page-break.js +181 -0
  197. package/es2021/plugins/page-break/page-break.min.js +10 -0
  198. package/es2021/plugins/paste-code/paste-code.css +21 -0
  199. package/es2021/plugins/paste-code/paste-code.js +318 -0
  200. package/es2021/plugins/paste-code/paste-code.min.css +1 -0
  201. package/es2021/plugins/paste-code/paste-code.min.js +10 -0
  202. package/es2021/plugins/paste-from-word/paste-from-word.js +1528 -0
  203. package/es2021/plugins/paste-from-word/paste-from-word.min.js +10 -0
  204. package/es2021/plugins/show-blocks/show-blocks.js +645 -0
  205. package/es2021/plugins/show-blocks/show-blocks.min.js +10 -0
  206. package/es2021/plugins/todo-list/todo-list.css +77 -0
  207. package/es2021/plugins/todo-list/todo-list.js +313 -0
  208. package/es2021/plugins/todo-list/todo-list.min.css +1 -0
  209. package/es2021/plugins/todo-list/todo-list.min.js +10 -0
  210. package/es2021/plugins/translate/translate.css +91 -0
  211. package/es2021/plugins/translate/translate.js +636 -0
  212. package/es2021/plugins/translate/translate.min.css +1 -0
  213. package/es2021/plugins/translate/translate.min.js +10 -0
  214. package/es2021/plugins/tune-block/tune-block.css +37 -0
  215. package/es2021/plugins/tune-block/tune-block.js +385 -0
  216. package/es2021/plugins/tune-block/tune-block.min.css +1 -0
  217. package/es2021/plugins/tune-block/tune-block.min.js +10 -0
  218. package/es2021.en/jodit.css +4945 -0
  219. package/es2021.en/jodit.fat.min.css +1 -0
  220. package/es2021.en/jodit.fat.min.js +10 -0
  221. package/es2021.en/jodit.js +40989 -0
  222. package/es2021.en/jodit.min.css +1 -0
  223. package/es2021.en/jodit.min.js +10 -0
  224. package/es2021.en/plugins/autocomplete/autocomplete.css +26 -0
  225. package/es2021.en/plugins/autocomplete/autocomplete.js +463 -0
  226. package/es2021.en/plugins/autocomplete/autocomplete.min.css +1 -0
  227. package/es2021.en/plugins/autocomplete/autocomplete.min.js +10 -0
  228. package/es2021.en/plugins/backup/backup.css +48 -0
  229. package/es2021.en/plugins/backup/backup.js +554 -0
  230. package/es2021.en/plugins/backup/backup.min.css +1 -0
  231. package/es2021.en/plugins/backup/backup.min.js +10 -0
  232. package/es2021.en/plugins/button-generator/button-generator.css +316 -0
  233. package/es2021.en/plugins/button-generator/button-generator.js +1382 -0
  234. package/es2021.en/plugins/button-generator/button-generator.min.css +1 -0
  235. package/es2021.en/plugins/button-generator/button-generator.min.js +10 -0
  236. package/es2021.en/plugins/change-case/change-case.js +171 -0
  237. package/es2021.en/plugins/change-case/change-case.min.js +10 -0
  238. package/es2021.en/plugins/color-picker/color-picker.css +133 -0
  239. package/es2021.en/plugins/color-picker/color-picker.js +517 -0
  240. package/es2021.en/plugins/color-picker/color-picker.min.css +1 -0
  241. package/es2021.en/plugins/color-picker/color-picker.min.js +10 -0
  242. package/es2021.en/plugins/emoji/emoji.css +108 -0
  243. package/es2021.en/plugins/emoji/emoji.js +425 -0
  244. package/es2021.en/plugins/emoji/emoji.min.css +1 -0
  245. package/es2021.en/plugins/emoji/emoji.min.js +10 -0
  246. package/es2021.en/plugins/export-docs/export-docs.js +156 -0
  247. package/es2021.en/plugins/export-docs/export-docs.min.js +10 -0
  248. package/es2021.en/plugins/finder/finder.css +1342 -0
  249. package/es2021.en/plugins/finder/finder.js +3117 -0
  250. package/es2021.en/plugins/finder/finder.min.css +1 -0
  251. package/es2021.en/plugins/finder/finder.min.js +10 -0
  252. package/es2021.en/plugins/google-maps/google-maps.css +397 -0
  253. package/es2021.en/plugins/google-maps/google-maps.js +2540 -0
  254. package/es2021.en/plugins/google-maps/google-maps.min.css +1 -0
  255. package/es2021.en/plugins/google-maps/google-maps.min.js +10 -0
  256. package/es2021.en/plugins/google-search/google-search.js +107 -0
  257. package/es2021.en/plugins/google-search/google-search.min.js +10 -0
  258. package/es2021.en/plugins/highlight-signature/highlight-signature.js +231 -0
  259. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +10 -0
  260. package/es2021.en/plugins/iframe-editor/iframe-editor.css +16 -0
  261. package/es2021.en/plugins/iframe-editor/iframe-editor.js +308 -0
  262. package/es2021.en/plugins/iframe-editor/iframe-editor.min.css +1 -0
  263. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +10 -0
  264. package/es2021.en/plugins/keyboard/keyboard.css +48 -0
  265. package/es2021.en/plugins/keyboard/keyboard.js +537 -0
  266. package/es2021.en/plugins/keyboard/keyboard.min.css +1 -0
  267. package/es2021.en/plugins/keyboard/keyboard.min.js +10 -0
  268. package/es2021.en/plugins/mobile-view/mobile-view.js +168 -0
  269. package/es2021.en/plugins/mobile-view/mobile-view.min.js +10 -0
  270. package/es2021.en/plugins/page-break/page-break.js +181 -0
  271. package/es2021.en/plugins/page-break/page-break.min.js +10 -0
  272. package/es2021.en/plugins/paste-code/paste-code.css +21 -0
  273. package/es2021.en/plugins/paste-code/paste-code.js +318 -0
  274. package/es2021.en/plugins/paste-code/paste-code.min.css +1 -0
  275. package/es2021.en/plugins/paste-code/paste-code.min.js +10 -0
  276. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1528 -0
  277. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +10 -0
  278. package/es2021.en/plugins/show-blocks/show-blocks.js +322 -0
  279. package/es2021.en/plugins/show-blocks/show-blocks.min.js +10 -0
  280. package/es2021.en/plugins/todo-list/todo-list.css +77 -0
  281. package/es2021.en/plugins/todo-list/todo-list.js +313 -0
  282. package/es2021.en/plugins/todo-list/todo-list.min.css +1 -0
  283. package/es2021.en/plugins/todo-list/todo-list.min.js +10 -0
  284. package/es2021.en/plugins/translate/translate.css +91 -0
  285. package/es2021.en/plugins/translate/translate.js +636 -0
  286. package/es2021.en/plugins/translate/translate.min.css +1 -0
  287. package/es2021.en/plugins/translate/translate.min.js +10 -0
  288. package/es2021.en/plugins/tune-block/tune-block.css +37 -0
  289. package/es2021.en/plugins/tune-block/tune-block.js +385 -0
  290. package/es2021.en/plugins/tune-block/tune-block.min.css +1 -0
  291. package/es2021.en/plugins/tune-block/tune-block.min.js +10 -0
  292. package/es5/jodit.css +5956 -0
  293. package/es5/jodit.fat.min.css +1 -0
  294. package/es5/jodit.fat.min.js +10 -0
  295. package/es5/jodit.js +49879 -0
  296. package/es5/jodit.min.css +15 -0
  297. package/es5/jodit.min.js +10 -0
  298. package/es5/plugins/autocomplete/autocomplete.css +26 -0
  299. package/es5/plugins/autocomplete/autocomplete.js +536 -0
  300. package/es5/plugins/autocomplete/autocomplete.min.css +1 -0
  301. package/es5/plugins/autocomplete/autocomplete.min.js +10 -0
  302. package/es5/plugins/backup/backup.css +48 -0
  303. package/es5/plugins/backup/backup.js +599 -0
  304. package/es5/plugins/backup/backup.min.css +1 -0
  305. package/es5/plugins/backup/backup.min.js +10 -0
  306. package/es5/plugins/button-generator/button-generator.css +316 -0
  307. package/es5/plugins/button-generator/button-generator.js +1310 -0
  308. package/es5/plugins/button-generator/button-generator.min.css +1 -0
  309. package/es5/plugins/button-generator/button-generator.min.js +10 -0
  310. package/es5/plugins/change-case/change-case.js +179 -0
  311. package/es5/plugins/change-case/change-case.min.js +10 -0
  312. package/es5/plugins/color-picker/color-picker.css +133 -0
  313. package/es5/plugins/color-picker/color-picker.js +525 -0
  314. package/es5/plugins/color-picker/color-picker.min.css +1 -0
  315. package/es5/plugins/color-picker/color-picker.min.js +10 -0
  316. package/es5/plugins/emoji/emoji.css +108 -0
  317. package/es5/plugins/emoji/emoji.js +459 -0
  318. package/es5/plugins/emoji/emoji.min.css +1 -0
  319. package/es5/plugins/emoji/emoji.min.js +10 -0
  320. package/es5/plugins/export-docs/export-docs.js +174 -0
  321. package/es5/plugins/export-docs/export-docs.min.js +10 -0
  322. package/es5/plugins/finder/finder.css +1342 -0
  323. package/es5/plugins/finder/finder.js +3335 -0
  324. package/es5/plugins/finder/finder.min.css +1 -0
  325. package/es5/plugins/finder/finder.min.js +10 -0
  326. package/es5/plugins/google-maps/google-maps.css +397 -0
  327. package/es5/plugins/google-maps/google-maps.js +2463 -0
  328. package/es5/plugins/google-maps/google-maps.min.css +1 -0
  329. package/es5/plugins/google-maps/google-maps.min.js +10 -0
  330. package/es5/plugins/google-search/google-search.js +113 -0
  331. package/es5/plugins/google-search/google-search.min.js +10 -0
  332. package/es5/plugins/highlight-signature/highlight-signature.js +253 -0
  333. package/es5/plugins/highlight-signature/highlight-signature.min.js +10 -0
  334. package/es5/plugins/iframe-editor/iframe-editor.css +16 -0
  335. package/es5/plugins/iframe-editor/iframe-editor.js +319 -0
  336. package/es5/plugins/iframe-editor/iframe-editor.min.css +1 -0
  337. package/es5/plugins/iframe-editor/iframe-editor.min.js +10 -0
  338. package/es5/plugins/keyboard/keyboard.css +48 -0
  339. package/es5/plugins/keyboard/keyboard.js +556 -0
  340. package/es5/plugins/keyboard/keyboard.min.css +1 -0
  341. package/es5/plugins/keyboard/keyboard.min.js +10 -0
  342. package/es5/plugins/mobile-view/mobile-view.js +176 -0
  343. package/es5/plugins/mobile-view/mobile-view.min.js +10 -0
  344. package/es5/plugins/page-break/page-break.js +169 -0
  345. package/es5/plugins/page-break/page-break.min.js +10 -0
  346. package/es5/plugins/paste-code/paste-code.css +21 -0
  347. package/es5/plugins/paste-code/paste-code.js +348 -0
  348. package/es5/plugins/paste-code/paste-code.min.css +1 -0
  349. package/es5/plugins/paste-code/paste-code.min.js +10 -0
  350. package/es5/plugins/paste-from-word/paste-from-word.js +1670 -0
  351. package/es5/plugins/paste-from-word/paste-from-word.min.js +10 -0
  352. package/es5/plugins/show-blocks/show-blocks.js +649 -0
  353. package/es5/plugins/show-blocks/show-blocks.min.js +10 -0
  354. package/es5/plugins/todo-list/todo-list.css +77 -0
  355. package/es5/plugins/todo-list/todo-list.js +324 -0
  356. package/es5/plugins/todo-list/todo-list.min.css +1 -0
  357. package/es5/plugins/todo-list/todo-list.min.js +10 -0
  358. package/es5/plugins/translate/translate.css +91 -0
  359. package/es5/plugins/translate/translate.js +657 -0
  360. package/es5/plugins/translate/translate.min.css +1 -0
  361. package/es5/plugins/translate/translate.min.js +10 -0
  362. package/es5/plugins/tune-block/tune-block.css +37 -0
  363. package/es5/plugins/tune-block/tune-block.js +397 -0
  364. package/es5/plugins/tune-block/tune-block.min.css +1 -0
  365. package/es5/plugins/tune-block/tune-block.min.js +10 -0
  366. package/examples/arabic.lang.html +8 -8
  367. package/examples/color-picker.html +6 -6
  368. package/examples/custom-icons.html +8 -8
  369. package/examples/custom-toolbar.html +8 -8
  370. package/examples/example.default.html +6 -6
  371. package/examples/fullsize.html +8 -8
  372. package/examples/index.html +6 -6
  373. package/examples/inline-mode.html +8 -8
  374. package/examples/oneinstance.html +8 -8
  375. package/examples/theme.html +6 -6
  376. package/package.json +6 -22
  377. package/LICENSE.md +0 -3
  378. package/build/jodit.css +0 -1
  379. package/build/jodit.es5.css +0 -8
  380. package/build/jodit.es5.js +0 -1
  381. package/build/jodit.fat.css +0 -1
  382. package/build/jodit.fat.es5.css +0 -1
  383. package/build/jodit.fat.es5.js +0 -1
  384. package/build/jodit.fat.js +0 -1
  385. package/build/jodit.js +0 -1
  386. package/build/plugins/autocomplete/autocomplete.es5.js +0 -1
  387. package/build/plugins/autocomplete/autocomplete.js +0 -1
  388. package/build/plugins/backup/backup.es5.js +0 -1
  389. package/build/plugins/backup/backup.js +0 -1
  390. package/build/plugins/button-generator/button-generator.css +0 -1
  391. package/build/plugins/button-generator/button-generator.es5.css +0 -1
  392. package/build/plugins/button-generator/button-generator.es5.js +0 -1
  393. package/build/plugins/button-generator/button-generator.js +0 -1
  394. package/build/plugins/change-case/change-case.es5.js +0 -1
  395. package/build/plugins/change-case/change-case.js +0 -1
  396. package/build/plugins/color-picker/color-picker.css +0 -1
  397. package/build/plugins/color-picker/color-picker.es5.css +0 -1
  398. package/build/plugins/color-picker/color-picker.es5.js +0 -1
  399. package/build/plugins/color-picker/color-picker.js +0 -1
  400. package/build/plugins/emoji/emoji.css +0 -1
  401. package/build/plugins/emoji/emoji.es5.css +0 -1
  402. package/build/plugins/emoji/emoji.es5.js +0 -1
  403. package/build/plugins/emoji/emoji.js +0 -1
  404. package/build/plugins/export-docs/export-docs.es5.js +0 -1
  405. package/build/plugins/export-docs/export-docs.js +0 -1
  406. package/build/plugins/finder/finder.css +0 -1
  407. package/build/plugins/finder/finder.es5.css +0 -1
  408. package/build/plugins/finder/finder.es5.js +0 -1
  409. package/build/plugins/finder/finder.js +0 -1
  410. package/build/plugins/google-maps/google-maps.css +0 -1
  411. package/build/plugins/google-maps/google-maps.es5.css +0 -1
  412. package/build/plugins/google-maps/google-maps.es5.js +0 -1
  413. package/build/plugins/google-maps/google-maps.js +0 -1
  414. package/build/plugins/google-search/google-search.es5.js +0 -1
  415. package/build/plugins/google-search/google-search.js +0 -1
  416. package/build/plugins/highlight-signature/highlight-signature.es5.js +0 -1
  417. package/build/plugins/highlight-signature/highlight-signature.js +0 -1
  418. package/build/plugins/iframe-editor/iframe-editor.es5.js +0 -1
  419. package/build/plugins/iframe-editor/iframe-editor.js +0 -1
  420. package/build/plugins/keyboard/keyboard.es5.js +0 -1
  421. package/build/plugins/keyboard/keyboard.js +0 -1
  422. package/build/plugins/mobile-view/mobile-view.css +0 -0
  423. package/build/plugins/mobile-view/mobile-view.es5.css +0 -0
  424. package/build/plugins/mobile-view/mobile-view.es5.js +0 -1
  425. package/build/plugins/mobile-view/mobile-view.js +0 -1
  426. package/build/plugins/page-break/page-break.css +0 -1
  427. package/build/plugins/page-break/page-break.es5.css +0 -1
  428. package/build/plugins/page-break/page-break.es5.js +0 -1
  429. package/build/plugins/page-break/page-break.js +0 -1
  430. package/build/plugins/paste-code/paste-code.es5.js +0 -1
  431. package/build/plugins/paste-code/paste-code.js +0 -1
  432. package/build/plugins/paste-from-word/paste-from-word.es5.js +0 -1
  433. package/build/plugins/paste-from-word/paste-from-word.js +0 -1
  434. package/build/plugins/show-blocks/show-blocks.es5.js +0 -1
  435. package/build/plugins/show-blocks/show-blocks.js +0 -1
  436. package/build/plugins/todo-list/todo-list.css +0 -1
  437. package/build/plugins/todo-list/todo-list.es5.css +0 -1
  438. package/build/plugins/todo-list/todo-list.es5.js +0 -1
  439. package/build/plugins/todo-list/todo-list.js +0 -1
  440. package/build/plugins/translate/translate.es5.js +0 -1
  441. package/build/plugins/translate/translate.js +0 -1
  442. package/build/plugins/tune-block/tune-block.es5.js +0 -1
  443. package/build/plugins/tune-block/tune-block.js +0 -1
  444. package/index.html +0 -268
  445. /package/{build/config.js → config.js} +0 -0
  446. /package/{build/plugins/autocomplete/autocomplete.css → es2015/plugins/autocomplete/autocomplete.min.css} +0 -0
  447. /package/{build/plugins/iframe-editor/iframe-editor.css → es2015/plugins/iframe-editor/iframe-editor.min.css} +0 -0
  448. /package/{build/plugins/keyboard/keyboard.css → es2015/plugins/keyboard/keyboard.min.css} +0 -0
  449. /package/{build/plugins/paste-code/paste-code.css → es2015/plugins/paste-code/paste-code.min.css} +0 -0
  450. /package/{build/plugins/translate/translate.css → es2015/plugins/translate/translate.min.css} +0 -0
  451. /package/{build/plugins/autocomplete/autocomplete.es5.css → es2018/plugins/autocomplete/autocomplete.min.css} +0 -0
  452. /package/{build/plugins/iframe-editor/iframe-editor.es5.css → es2018/plugins/iframe-editor/iframe-editor.min.css} +0 -0
  453. /package/{build/plugins/keyboard/keyboard.es5.css → es2018/plugins/keyboard/keyboard.min.css} +0 -0
  454. /package/{build/plugins/paste-code/paste-code.es5.css → es2018/plugins/paste-code/paste-code.min.css} +0 -0
  455. /package/{build/plugins/translate/translate.es5.css → es2018/plugins/translate/translate.min.css} +0 -0
@@ -0,0 +1,630 @@
1
+ /*!
2
+ * jodit-pro - PRO Version of Jodit Editor
3
+ * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
+ * Version: v2.0.0-beta.10
5
+ * Url: https://xdsoft.net/jodit/pro/
6
+ * License(s): SEE LICENSE IN LICENSE.md
7
+ */
8
+
9
+ (function webpackUniversalModuleDefinition(root, factory) {
10
+ if(typeof exports === 'object' && typeof module === 'object')
11
+ module.exports = factory();
12
+ else if(typeof define === 'function' && define.amd)
13
+ define([], factory);
14
+ else {
15
+ var a = factory();
16
+ for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];
17
+ }
18
+ })(self, function() {
19
+ return (self["webpackChunkjodit_pro"] = self["webpackChunkjodit_pro"] || []).push([[81],{
20
+
21
+ /***/ 9026:
22
+ /***/ (function(module) {
23
+
24
+ module.exports = "<svg viewBox=\"0 0 48 48\" xmlns=\"http://www.w3.org/2000/svg\"> <path d=\"M13.98 22L6 30l7.98 8v-6H28v-4H13.98v-6zM42 18l-7.98-8v6H20v4h14.02v6L42 18z\"/> <path d=\"M0 0h48v48H0z\" fill=\"none\"/> </svg>"
25
+
26
+ /***/ }),
27
+
28
+ /***/ 70134:
29
+ /***/ (function(module) {
30
+
31
+ module.exports = "<svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"> <path d=\"M4.545 6.714 4.11 8H3l1.862-5h1.284L8 8H6.833l-.435-1.286H4.545zm1.634-.736L5.5 3.956h-.049l-.679 2.022H6.18z\"/> <path d=\"M0 2a2 2 0 0 1 2-2h7a2 2 0 0 1 2 2v3h3a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-3H2a2 2 0 0 1-2-2V2zm2-1a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H2zm7.138 9.995c.193.301.402.583.63.846-.748.575-1.673 1.001-2.768 1.292.178.217.451.635.555.867 1.125-.359 2.08-.844 2.886-1.494.777.665 1.739 1.165 2.93 1.472.133-.254.414-.673.629-.89-1.125-.253-2.057-.694-2.82-1.284.681-.747 1.222-1.651 1.621-2.757H14V8h-3v1.047h.765c-.318.844-.74 1.546-1.272 2.13a6.066 6.066 0 0 1-.415-.492 1.988 1.988 0 0 1-.94.31z\"/> </svg>"
32
+
33
+ /***/ }),
34
+
35
+ /***/ 50461:
36
+ /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
37
+
38
+ "use strict";
39
+ /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(77628);
40
+ /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(10503);
41
+ /*!
42
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
43
+ * See LICENSE.md in the project root for license information.
44
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
45
+ */
46
+
47
+
48
+ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.translate = {
49
+ hotkeys: {
50
+ translateSelection: ['ctrl+shift+o', 'cmd+shift+o'],
51
+ translateOptions: ['ctrl+shift+p', 'cmd+shift+p']
52
+ },
53
+ provider: 'google',
54
+ googleProviderOptions: {
55
+ url: 'https://translation.googleapis.com/language/translate/v2',
56
+ key: ''
57
+ },
58
+ defaultSourceLang: '',
59
+ defaultTargetLang: 'de'
60
+ };
61
+ jodit_config__WEBPACK_IMPORTED_MODULE_0__.Config.prototype.controls.translate = {
62
+ translate: {
63
+ tooltip: 'Translate selected text',
64
+ icon: 'translate',
65
+ command: 'translate',
66
+ exec(editor) {
67
+ editor.execCommand('translate');
68
+ },
69
+ list: ['Options'],
70
+ childExec(editor, _, { control }) {
71
+ editor.execCommand('translate' + control.name);
72
+ },
73
+ mods: {
74
+ stroke: false
75
+ }
76
+ }
77
+ };
78
+ jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_1__/* .Icon.set */ .J.set('translate', __webpack_require__(70134)).set('translate-swap', __webpack_require__(9026));
79
+
80
+
81
+ /***/ }),
82
+
83
+ /***/ 88987:
84
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
85
+
86
+ "use strict";
87
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
88
+ /* harmony export */ "A": function() { return /* binding */ GoogleTranslateProvider; }
89
+ /* harmony export */ });
90
+ /* harmony import */ var jodit_core_helpers_utils_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(52378);
91
+ /* harmony import */ var jodit_core_helpers_utils_assert__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jodit_core_helpers_utils_assert__WEBPACK_IMPORTED_MODULE_0__);
92
+ /* harmony import */ var jodit_core_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(11612);
93
+ /* harmony import */ var _languages__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(89569);
94
+ /*!
95
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
96
+ * See LICENSE.md in the project root for license information.
97
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
98
+ */
99
+
100
+
101
+
102
+ class GoogleTranslateProvider {
103
+ constructor(jodit) {
104
+ this.jodit = jodit;
105
+ }
106
+ __fetch(command, data = {}) {
107
+ const opt = this.jodit.o.translate.googleProviderOptions;
108
+ void 0;
109
+ return this.jodit
110
+ .fetch(opt.url + '?key=' + opt.key, {
111
+ method: 'POST',
112
+ data: Object.assign(Object.assign({}, data), { ui: this.jodit.o.language }),
113
+ contentType: 'application/json; charset=utf-8',
114
+ withCredentials: false
115
+ })
116
+ .then((resp) => resp.json())
117
+ .catch((resp) => {
118
+ try {
119
+ this.jodit.message.error(resp.json().message);
120
+ }
121
+ catch (e) {
122
+ if (!jodit_core_constants__WEBPACK_IMPORTED_MODULE_1__.IS_PROD) {
123
+ console.error(e);
124
+ }
125
+ }
126
+ });
127
+ }
128
+ translate(q, source, target) {
129
+ return this.__fetch('translate', {
130
+ q,
131
+ source,
132
+ target,
133
+ format: 'html'
134
+ }).then((resp) => {
135
+ return { text: resp.data.translations[0].translatedText };
136
+ });
137
+ }
138
+ supportedLanguages() {
139
+ return Promise.resolve({
140
+ langs: _languages__WEBPACK_IMPORTED_MODULE_2__/* .languages */ .M
141
+ });
142
+ }
143
+ }
144
+
145
+
146
+ /***/ }),
147
+
148
+ /***/ 89569:
149
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
150
+
151
+ "use strict";
152
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
153
+ /* harmony export */ "M": function() { return /* binding */ languages; }
154
+ /* harmony export */ });
155
+ /*!
156
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
157
+ * See LICENSE.md in the project root for license information.
158
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
159
+ */
160
+ const languages = {
161
+ Afrikaans: 'af',
162
+ Albanian: 'sq',
163
+ Amharic: 'am',
164
+ Arabic: 'ar',
165
+ Armenian: 'hy',
166
+ 'Assamese*': 'as',
167
+ 'Aymara*': 'ay',
168
+ Azerbaijani: 'az',
169
+ 'Bambara*': 'bm',
170
+ Basque: 'eu',
171
+ Belarusian: 'be',
172
+ Bengali: 'bn',
173
+ 'Bhojpuri*': 'bho',
174
+ Bosnian: 'bs',
175
+ Bulgarian: 'bg',
176
+ Catalan: 'ca',
177
+ Cebuano: 'ceb',
178
+ 'Chinese (Simplified)': 'zh-CN',
179
+ 'Chinese (Traditional)': 'zh-TW',
180
+ Corsican: 'co',
181
+ Croatian: 'hr',
182
+ Czech: 'cs',
183
+ Danish: 'da',
184
+ 'Dhivehi*': 'dv',
185
+ 'Dogri*': 'doi',
186
+ Dutch: 'nl',
187
+ English: 'en',
188
+ Esperanto: 'eo',
189
+ Estonian: 'et',
190
+ 'Ewe*': 'ee',
191
+ 'Filipino (Tagalog)': 'fil',
192
+ Finnish: 'fi',
193
+ French: 'fr',
194
+ Frisian: 'fy',
195
+ Galician: 'gl',
196
+ Georgian: 'ka',
197
+ German: 'de',
198
+ Greek: 'el',
199
+ 'Guarani*': 'gn',
200
+ Gujarati: 'gu',
201
+ 'Haitian Creole': 'ht',
202
+ Hausa: 'ha',
203
+ Hawaiian: 'haw',
204
+ Hebrew: 'he',
205
+ Hindi: 'hi',
206
+ Hmong: 'hmn',
207
+ Hungarian: 'hu',
208
+ Icelandic: 'is',
209
+ Igbo: 'ig',
210
+ 'Ilocano*': 'ilo',
211
+ Indonesian: 'id',
212
+ Irish: 'ga',
213
+ Italian: 'it',
214
+ Japanese: 'ja',
215
+ Kannada: 'kn',
216
+ Kazakh: 'kk',
217
+ Khmer: 'km',
218
+ Kinyarwanda: 'rw',
219
+ 'Konkani*': 'gom',
220
+ Korean: 'ko',
221
+ 'Krio*': 'kri',
222
+ Kurdish: 'ku',
223
+ 'Kurdish (Sorani)*': 'ckb',
224
+ Kyrgyz: 'ky',
225
+ Lao: 'lo',
226
+ Latin: 'la',
227
+ Latvian: 'lv',
228
+ 'Lingala*': 'ln',
229
+ Lithuanian: 'lt',
230
+ 'Luganda*': 'lg',
231
+ Luxembourgish: 'lb',
232
+ Macedonian: 'mk',
233
+ 'Maithili*': 'mai',
234
+ Malagasy: 'mg',
235
+ Malay: 'ms',
236
+ Malayalam: 'ml',
237
+ Maltese: 'mt',
238
+ Maori: 'mi',
239
+ Marathi: 'mr',
240
+ 'Meiteilon (Manipuri)*': 'mni-Mtei',
241
+ Mizo: 'lus',
242
+ Mongolian: 'mn',
243
+ 'Myanmar (Burmese)': 'my',
244
+ Nepali: 'ne',
245
+ Norwegian: 'no',
246
+ 'Nyanja (Chichewa)': 'ny',
247
+ 'Odia (Oriya)': 'or',
248
+ 'Oromo*': 'om',
249
+ Pashto: 'ps',
250
+ Persian: 'fa',
251
+ Polish: 'pl',
252
+ Portuguese: 'pt',
253
+ Punjabi: 'pa',
254
+ 'Quechua*': 'qu',
255
+ Romanian: 'ro',
256
+ Russian: 'ru',
257
+ Samoan: 'sm',
258
+ 'Sanskrit*': 'sa',
259
+ 'Scots Gaelic': 'gd',
260
+ 'Sepedi*': 'nso',
261
+ Serbian: 'sr',
262
+ Sesotho: 'st',
263
+ Shona: 'sn',
264
+ Sindhi: 'sd',
265
+ 'Sinhala (Sinhalese)': 'si',
266
+ Slovak: 'sk',
267
+ Slovenian: 'sl',
268
+ Somali: 'so',
269
+ Spanish: 'es',
270
+ Sundanese: 'su',
271
+ Swahili: 'sw',
272
+ Swedish: 'sv',
273
+ 'Tagalog (Filipino)': 'tl',
274
+ Tajik: 'tg',
275
+ Tamil: 'ta',
276
+ Tatar: 'tt',
277
+ Telugu: 'te',
278
+ Thai: 'th',
279
+ 'Tigrinya*': 'ti',
280
+ 'Tsonga*': 'ts',
281
+ Turkish: 'tr',
282
+ Turkmen: 'tk',
283
+ 'Twi (Akan)*': 'ak',
284
+ Ukrainian: 'uk',
285
+ Urdu: 'ur',
286
+ Uyghur: 'ug',
287
+ Uzbek: 'uz',
288
+ Vietnamese: 'vi',
289
+ Welsh: 'cy',
290
+ Xhosa: 'xh',
291
+ Yiddish: 'yi',
292
+ Yoruba: 'yo',
293
+ Zulu: 'zu'
294
+ };
295
+
296
+
297
+ /***/ }),
298
+
299
+ /***/ 46753:
300
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
301
+
302
+ "use strict";
303
+ __webpack_require__.r(__webpack_exports__);
304
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
305
+ /* harmony export */ "Translate": function() { return /* binding */ Translate; }
306
+ /* harmony export */ });
307
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(97582);
308
+ /* harmony import */ var jodit_core_plugin__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7324);
309
+ /* harmony import */ var _JoditPro__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(88292);
310
+ /* harmony import */ var jodit_core_helpers_utils_assert__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52378);
311
+ /* harmony import */ var jodit_core_helpers_utils_assert__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(jodit_core_helpers_utils_assert__WEBPACK_IMPORTED_MODULE_2__);
312
+ /* harmony import */ var jodit_core_helpers_checker_is_string__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(4682);
313
+ /* harmony import */ var jodit_core_helpers_utils_default_language__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(3262);
314
+ /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(50526);
315
+ /* harmony import */ var _providers_google_google__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(88987);
316
+ /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(50461);
317
+ /* harmony import */ var _ui_settings_settings__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(16874);
318
+ /* harmony import */ var jodit_core_ui_button_button_button__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(53025);
319
+ /*!
320
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
321
+ * See LICENSE.md in the project root for license information.
322
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
323
+ */
324
+
325
+
326
+
327
+
328
+
329
+
330
+
331
+
332
+
333
+
334
+
335
+
336
+ class Translate extends jodit_core_plugin__WEBPACK_IMPORTED_MODULE_0__/* .Plugin */ .S {
337
+ constructor() {
338
+ super(...arguments);
339
+ this.buttons = [
340
+ {
341
+ name: 'translate.translate',
342
+ group: 'insert'
343
+ }
344
+ ];
345
+ this.state = {
346
+ sourceLang: this.jodit.o.translate.defaultSourceLang || 'en',
347
+ targetLang: this.jodit.o.translate.defaultTargetLang
348
+ };
349
+ }
350
+ __getProvider() {
351
+ const { provider } = this.jodit.options.translate;
352
+ if ((0,jodit_core_helpers_checker_is_string__WEBPACK_IMPORTED_MODULE_8__/* .isString */ .H)(provider)) {
353
+ switch (provider) {
354
+ case 'google':
355
+ return new _providers_google_google__WEBPACK_IMPORTED_MODULE_4__/* .GoogleTranslateProvider */ .A(this.j);
356
+ default:
357
+ throw new Error('Unknown provider');
358
+ }
359
+ }
360
+ void 0;
361
+ return provider(this.jodit);
362
+ }
363
+ afterInit(jodit) {
364
+ const defaultLanguage = (0,jodit_core_helpers_utils_default_language__WEBPACK_IMPORTED_MODULE_9__/* .defaultLanguage */ .X)(jodit.o.language, _JoditPro__WEBPACK_IMPORTED_MODULE_1__/* .JoditPro.defaultOptions.language */ .y.defaultOptions.language), language = (0,jodit_core_helpers_utils_default_language__WEBPACK_IMPORTED_MODULE_9__/* .defaultLanguage */ .X)(jodit.o.language, defaultLanguage);
365
+ const provider = this.__getProvider();
366
+ jodit
367
+ .registerCommand('translateOptions', {
368
+ exec: () => (0,tslib__WEBPACK_IMPORTED_MODULE_10__/* .__awaiter */ .mG)(this, void 0, void 0, function* () {
369
+ let newState = this.state;
370
+ const dlg = jodit.dlg();
371
+ dlg.setHeader('Translate options');
372
+ const langs = yield provider.supportedLanguages();
373
+ const settings = new _ui_settings_settings__WEBPACK_IMPORTED_MODULE_6__/* .UITranslateSettings */ .h(dlg, this.state, {
374
+ sourceList: langs.langs,
375
+ targetList: langs.langs,
376
+ onChange(state) {
377
+ newState = state;
378
+ }
379
+ });
380
+ dlg.setContent(settings);
381
+ dlg.setFooter([
382
+ (0,jodit_core_ui_button_button_button__WEBPACK_IMPORTED_MODULE_7__/* .Button */ .zx)(jodit, 'cancel', 'Cancel').onAction(() => dlg.close()),
383
+ (0,jodit_core_ui_button_button_button__WEBPACK_IMPORTED_MODULE_7__/* .Button */ .zx)(jodit, 'ok', 'Save', 'primary').onAction(() => {
384
+ this.state = newState;
385
+ dlg.close();
386
+ })
387
+ ]);
388
+ settings.bindDestruct(dlg);
389
+ dlg.setSize(500, 400).open(true);
390
+ }),
391
+ hotkeys: jodit.o.translate.hotkeys.translateOptions
392
+ })
393
+ .registerCommand('translate', {
394
+ exec: () => {
395
+ const selection = jodit.s.html;
396
+ if (!selection) {
397
+ jodit.message.error('Select text for translate');
398
+ return;
399
+ }
400
+ return provider
401
+ .translate(selection, !this.state.sourceLang ||
402
+ this.state.sourceLang === 'auto'
403
+ ? language
404
+ : this.state.sourceLang, this.state.targetLang)
405
+ .then((response) => {
406
+ const range = jodit.s.range;
407
+ range.deleteContents();
408
+ jodit.s.insertNode(jodit.createInside.text(response.text));
409
+ })
410
+ .catch((error) => {
411
+ jodit.message.error((0,jodit_core_helpers_checker_is_string__WEBPACK_IMPORTED_MODULE_8__/* .isString */ .H)(error) ? error : error.message);
412
+ });
413
+ },
414
+ hotkeys: jodit.o.translate.hotkeys.translateSelection
415
+ });
416
+ }
417
+ beforeDestruct(jodit) { }
418
+ }
419
+ Translate.requires = ['license'];
420
+ (0,tslib__WEBPACK_IMPORTED_MODULE_10__/* .__decorate */ .gn)([
421
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_3__.persistent
422
+ ], Translate.prototype, "state", void 0);
423
+ _JoditPro__WEBPACK_IMPORTED_MODULE_1__/* .JoditPro.plugins.add */ .y.plugins.add('translate', Translate);
424
+
425
+
426
+ /***/ }),
427
+
428
+ /***/ 48458:
429
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
430
+
431
+ "use strict";
432
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
433
+ /* harmony export */ "r": function() { return /* binding */ UITranslateList; }
434
+ /* harmony export */ });
435
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(97582);
436
+ /* harmony import */ var jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(84789);
437
+ /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(50526);
438
+ /* harmony import */ var jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(44913);
439
+ /* harmony import */ var jodit_core_helpers_utils_attr__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(77233);
440
+ /* harmony import */ var jodit_core_ui_form_inputs_input_input__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(77902);
441
+ /* harmony import */ var jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(95582);
442
+ /* harmony import */ var jodit_core_constants__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(11612);
443
+ /*!
444
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
445
+ * See LICENSE.md in the project root for license information.
446
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
447
+ */
448
+
449
+
450
+
451
+
452
+
453
+
454
+
455
+
456
+
457
+ let UITranslateList = class UITranslateList extends jodit_core_ui_element__WEBPACK_IMPORTED_MODULE_0__/* .UIElement */ .u {
458
+ className() {
459
+ return 'UITranslateList';
460
+ }
461
+ get items() {
462
+ return this.getElms('item');
463
+ }
464
+ render(options) {
465
+ const list = [];
466
+ Object.keys(options.list)
467
+ .sort()
468
+ .forEach((lang) => {
469
+ const key = options.list[lang];
470
+ list.push(`<a role='button' tabindex='0' class='&__item' data-lang='${key}'>
471
+ <span class='&__item-key'>${key}</span>
472
+ <span class='&__item-title'>${this.j.i18n(lang)}</span>
473
+ </a>`);
474
+ });
475
+ return `<div class='&'>
476
+ <div class='&__input'></div>
477
+ <div class='&__list'>${list.join('')}</div>
478
+ </div>`;
479
+ }
480
+ constructor(jodit, options) {
481
+ var _a;
482
+ super(jodit, options);
483
+ this.options = options;
484
+ this.state = {
485
+ active: ''
486
+ };
487
+ this.state.active = options.active;
488
+ const input = new jodit_core_ui_form_inputs_input_input__WEBPACK_IMPORTED_MODULE_4__/* .UIInput */ .u(jodit, {
489
+ placeholder: jodit.i18n('Filter'),
490
+ icon: 'search',
491
+ onChange: this.__onChangeFilter,
492
+ clearButton: true
493
+ });
494
+ (_a = this.getElm('input')) === null || _a === void 0 ? void 0 : _a.appendChild(input.container);
495
+ this.__onActiveChange();
496
+ }
497
+ __onChangeFilter(value) {
498
+ this.items.forEach((elm) => {
499
+ var _a, _b;
500
+ const key = (_b = (_a = elm.textContent) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== null && _b !== void 0 ? _b : '';
501
+ (0,jodit_core_helpers_utils_attr__WEBPACK_IMPORTED_MODULE_3__/* .attr */ .L)(elm, 'data-hidden', (0,jodit_core_helpers_utils_attr__WEBPACK_IMPORTED_MODULE_3__/* .attr */ .L)(elm, 'data-active') !== 'true' &&
502
+ !key.includes(value.toLowerCase()));
503
+ });
504
+ }
505
+ __scrollToActive() {
506
+ const active = this.container.querySelector('[data-active="true"]');
507
+ const list = this.getElm('list');
508
+ active && list && (0,jodit_core_helpers__WEBPACK_IMPORTED_MODULE_5__.scrollIntoViewIfNeeded)(active, list, this.j.od);
509
+ }
510
+ onClickItem(e) {
511
+ if (e.type === 'keydown' && 'key' in e && e.key !== jodit_core_constants__WEBPACK_IMPORTED_MODULE_6__.KEY_ENTER) {
512
+ return;
513
+ }
514
+ const target = e.target;
515
+ if (jodit_core_dom_dom__WEBPACK_IMPORTED_MODULE_2__/* .Dom.isHTMLElement */ .i.isHTMLElement(target) && target.getAttribute('data-lang')) {
516
+ const newValue = (0,jodit_core_helpers_utils_attr__WEBPACK_IMPORTED_MODULE_3__/* .attr */ .L)(target, 'data-lang');
517
+ this.options.onChange(newValue);
518
+ this.state.active = newValue;
519
+ }
520
+ }
521
+ __onActiveChange() {
522
+ this.items.forEach((elm) => (0,jodit_core_helpers_utils_attr__WEBPACK_IMPORTED_MODULE_3__/* .attr */ .L)(elm, 'data-active', (0,jodit_core_helpers_utils_attr__WEBPACK_IMPORTED_MODULE_3__/* .attr */ .L)(elm, 'data-lang') === this.state.active));
523
+ this.__scrollToActive();
524
+ }
525
+ };
526
+ (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
527
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.debounce)()
528
+ ], UITranslateList.prototype, "__onChangeFilter", null);
529
+ (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
530
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)(':afterOpen')
531
+ ], UITranslateList.prototype, "__scrollToActive", null);
532
+ (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
533
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)(['container:click', 'container:keydown'])
534
+ ], UITranslateList.prototype, "onClickItem", null);
535
+ (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
536
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)('state.active'),
537
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.debounce)()
538
+ ], UITranslateList.prototype, "__onActiveChange", null);
539
+ UITranslateList = (0,tslib__WEBPACK_IMPORTED_MODULE_7__/* .__decorate */ .gn)([
540
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.component
541
+ ], UITranslateList);
542
+
543
+
544
+ /***/ }),
545
+
546
+ /***/ 16874:
547
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
548
+
549
+ "use strict";
550
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
551
+ /* harmony export */ "h": function() { return /* binding */ UITranslateSettings; }
552
+ /* harmony export */ });
553
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(97582);
554
+ /* harmony import */ var jodit_core_ui__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(75004);
555
+ /* harmony import */ var jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(50526);
556
+ /* harmony import */ var _list_list__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(48458);
557
+ /*!
558
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
559
+ * See LICENSE.md in the project root for license information.
560
+ * Copyright (c) 2013-2023 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
561
+ */
562
+
563
+
564
+
565
+
566
+
567
+ let UITranslateSettings = class UITranslateSettings extends jodit_core_ui__WEBPACK_IMPORTED_MODULE_0__/* .UIElement */ .u1 {
568
+ className() {
569
+ return 'UITranslateSettings';
570
+ }
571
+ render() {
572
+ return `<div>
573
+ <div class='&__list &__source-list'></div>
574
+ <div class='&__arrow'>
575
+ <a class='&__arrow-swap'>*translate-swap*</a>
576
+ </div>
577
+ <div class='&__list &__target-list'></div>
578
+ </div>`;
579
+ }
580
+ constructor(jodit, state, options) {
581
+ var _a, _b;
582
+ super(jodit);
583
+ this.state = state;
584
+ this.options = options;
585
+ this.__sourceList = new _list_list__WEBPACK_IMPORTED_MODULE_2__/* .UITranslateList */ .r(jodit, {
586
+ list: options.sourceList,
587
+ active: state.sourceLang,
588
+ onChange: (lang) => {
589
+ this.state.sourceLang = lang;
590
+ this.options.onChange(Object.assign({}, this.state));
591
+ }
592
+ });
593
+ (_a = this.getElm('source-list')) === null || _a === void 0 ? void 0 : _a.appendChild(this.__sourceList.container);
594
+ this.__targetList = new _list_list__WEBPACK_IMPORTED_MODULE_2__/* .UITranslateList */ .r(jodit, {
595
+ list: options.targetList,
596
+ active: state.targetLang,
597
+ onChange: (lang) => {
598
+ this.state.targetLang = lang;
599
+ this.options.onChange(Object.assign({}, this.state));
600
+ }
601
+ });
602
+ (_b = this.getElm('target-list')) === null || _b === void 0 ? void 0 : _b.appendChild(this.__targetList.container);
603
+ }
604
+ __onSwap() {
605
+ const tmp = this.state.sourceLang;
606
+ this.state.sourceLang = this.state.targetLang;
607
+ this.state.targetLang = tmp;
608
+ this.__sourceList.state.active = this.state.sourceLang;
609
+ this.__targetList.state.active = this.state.targetLang;
610
+ this.options.onChange(Object.assign({}, this.state));
611
+ }
612
+ };
613
+ (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
614
+ (0,jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.watch)('arrow-swap:click')
615
+ ], UITranslateSettings.prototype, "__onSwap", null);
616
+ UITranslateSettings = (0,tslib__WEBPACK_IMPORTED_MODULE_3__/* .__decorate */ .gn)([
617
+ jodit_core_decorators__WEBPACK_IMPORTED_MODULE_1__.component
618
+ ], UITranslateSettings);
619
+
620
+
621
+ /***/ })
622
+
623
+ },
624
+ /******/ function(__webpack_require__) { // webpackRuntimeModules
625
+ /******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
626
+ /******/ var __webpack_exports__ = (__webpack_exec__(46753));
627
+ /******/ return __webpack_exports__;
628
+ /******/ }
629
+ ]);
630
+ });
@@ -0,0 +1,10 @@
1
+ /*!
2
+ * jodit-pro - PRO Version of Jodit Editor
3
+ * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
+ * Version: v2.0.0-beta.10
5
+ * Url: https://xdsoft.net/jodit/pro/
6
+ * License(s): SEE LICENSE IN LICENSE.md
7
+ */
8
+
9
+
10
+ !function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var a=e();for(var n in a)("object"==typeof exports?exports:t)[n]=a[n]}}(self,(function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[81],{9026:function(t){t.exports='<svg viewBox="0 0 48 48" xmlns="http://www.w3.org/2000/svg"> <path d="M13.98 22L6 30l7.98 8v-6H28v-4H13.98v-6zM42 18l-7.98-8v6H20v4h14.02v6L42 18z"/> <path d="M0 0h48v48H0z" fill="none"/> </svg>'},70134:function(t){t.exports='<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"> <path d="M4.545 6.714 4.11 8H3l1.862-5h1.284L8 8H6.833l-.435-1.286H4.545zm1.634-.736L5.5 3.956h-.049l-.679 2.022H6.18z"/> <path d="M0 2a2 2 0 0 1 2-2h7a2 2 0 0 1 2 2v3h3a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-3H2a2 2 0 0 1-2-2V2zm2-1a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H2zm7.138 9.995c.193.301.402.583.63.846-.748.575-1.673 1.001-2.768 1.292.178.217.451.635.555.867 1.125-.359 2.08-.844 2.886-1.494.777.665 1.739 1.165 2.93 1.472.133-.254.414-.673.629-.89-1.125-.253-2.057-.694-2.82-1.284.681-.747 1.222-1.651 1.621-2.757H14V8h-3v1.047h.765c-.318.844-.74 1.546-1.272 2.13a6.066 6.066 0 0 1-.415-.492 1.988 1.988 0 0 1-.94.31z"/> </svg>'},50461:function(t,e,a){"use strict";var n=a(77628),s=a(10503);n.Config.prototype.translate={hotkeys:{translateSelection:["ctrl+shift+o","cmd+shift+o"],translateOptions:["ctrl+shift+p","cmd+shift+p"]},provider:"google",googleProviderOptions:{url:"https://translation.googleapis.com/language/translate/v2",key:""},defaultSourceLang:"",defaultTargetLang:"de"},n.Config.prototype.controls.translate={translate:{tooltip:"Translate selected text",icon:"translate",command:"translate",exec(t){t.execCommand("translate")},list:["Options"],childExec(t,e,{control:a}){t.execCommand("translate"+a.name)},mods:{stroke:!1}}},s.J.set("translate",a(70134)).set("translate-swap",a(9026))},88987:function(t,e,a){"use strict";a.d(e,{A:function(){return s}}),a(52378),a(11612);var n=a(89569);class s{constructor(t){this.jodit=t}__fetch(t,e={}){const a=this.jodit.o.translate.googleProviderOptions;return this.jodit.fetch(a.url+"?key="+a.key,{method:"POST",data:Object.assign(Object.assign({},e),{ui:this.jodit.o.language}),contentType:"application/json; charset=utf-8",withCredentials:!1}).then((t=>t.json())).catch((t=>{try{this.jodit.message.error(t.json().message)}catch(t){}}))}translate(t,e,a){return this.__fetch("translate",{q:t,source:e,target:a,format:"html"}).then((t=>({text:t.data.translations[0].translatedText})))}supportedLanguages(){return Promise.resolve({langs:n.M})}}},89569:function(t,e,a){"use strict";a.d(e,{M:function(){return n}});const n={Afrikaans:"af",Albanian:"sq",Amharic:"am",Arabic:"ar",Armenian:"hy","Assamese*":"as","Aymara*":"ay",Azerbaijani:"az","Bambara*":"bm",Basque:"eu",Belarusian:"be",Bengali:"bn","Bhojpuri*":"bho",Bosnian:"bs",Bulgarian:"bg",Catalan:"ca",Cebuano:"ceb","Chinese (Simplified)":"zh-CN","Chinese (Traditional)":"zh-TW",Corsican:"co",Croatian:"hr",Czech:"cs",Danish:"da","Dhivehi*":"dv","Dogri*":"doi",Dutch:"nl",English:"en",Esperanto:"eo",Estonian:"et","Ewe*":"ee","Filipino (Tagalog)":"fil",Finnish:"fi",French:"fr",Frisian:"fy",Galician:"gl",Georgian:"ka",German:"de",Greek:"el","Guarani*":"gn",Gujarati:"gu","Haitian Creole":"ht",Hausa:"ha",Hawaiian:"haw",Hebrew:"he",Hindi:"hi",Hmong:"hmn",Hungarian:"hu",Icelandic:"is",Igbo:"ig","Ilocano*":"ilo",Indonesian:"id",Irish:"ga",Italian:"it",Japanese:"ja",Kannada:"kn",Kazakh:"kk",Khmer:"km",Kinyarwanda:"rw","Konkani*":"gom",Korean:"ko","Krio*":"kri",Kurdish:"ku","Kurdish (Sorani)*":"ckb",Kyrgyz:"ky",Lao:"lo",Latin:"la",Latvian:"lv","Lingala*":"ln",Lithuanian:"lt","Luganda*":"lg",Luxembourgish:"lb",Macedonian:"mk","Maithili*":"mai",Malagasy:"mg",Malay:"ms",Malayalam:"ml",Maltese:"mt",Maori:"mi",Marathi:"mr","Meiteilon (Manipuri)*":"mni-Mtei",Mizo:"lus",Mongolian:"mn","Myanmar (Burmese)":"my",Nepali:"ne",Norwegian:"no","Nyanja (Chichewa)":"ny","Odia (Oriya)":"or","Oromo*":"om",Pashto:"ps",Persian:"fa",Polish:"pl",Portuguese:"pt",Punjabi:"pa","Quechua*":"qu",Romanian:"ro",Russian:"ru",Samoan:"sm","Sanskrit*":"sa","Scots Gaelic":"gd","Sepedi*":"nso",Serbian:"sr",Sesotho:"st",Shona:"sn",Sindhi:"sd","Sinhala (Sinhalese)":"si",Slovak:"sk",Slovenian:"sl",Somali:"so",Spanish:"es",Sundanese:"su",Swahili:"sw",Swedish:"sv","Tagalog (Filipino)":"tl",Tajik:"tg",Tamil:"ta",Tatar:"tt",Telugu:"te",Thai:"th","Tigrinya*":"ti","Tsonga*":"ts",Turkish:"tr",Turkmen:"tk","Twi (Akan)*":"ak",Ukrainian:"uk",Urdu:"ur",Uyghur:"ug",Uzbek:"uz",Vietnamese:"vi",Welsh:"cy",Xhosa:"xh",Yiddish:"yi",Yoruba:"yo",Zulu:"zu"}},46753:function(t,e,a){"use strict";a.r(e),a.d(e,{Translate:function(){return g}});var n=a(97582),s=a(7324),i=a(88292),o=(a(52378),a(4682)),r=a(3262),l=a(50526),c=a(88987),h=(a(50461),a(16874)),u=a(53025);class g extends s.S{constructor(){super(...arguments),this.buttons=[{name:"translate.translate",group:"insert"}],this.state={sourceLang:this.jodit.o.translate.defaultSourceLang||"en",targetLang:this.jodit.o.translate.defaultTargetLang}}__getProvider(){const{provider:t}=this.jodit.options.translate;if((0,o.H)(t)){if("google"===t)return new c.A(this.j);throw new Error("Unknown provider")}return t(this.jodit)}afterInit(t){const e=(0,r.X)(t.o.language,i.y.defaultOptions.language),a=(0,r.X)(t.o.language,e),s=this.__getProvider();t.registerCommand("translateOptions",{exec:()=>(0,n.mG)(this,void 0,void 0,(function*(){let e=this.state;const a=t.dlg();a.setHeader("Translate options");const n=yield s.supportedLanguages(),i=new h.h(a,this.state,{sourceList:n.langs,targetList:n.langs,onChange(t){e=t}});a.setContent(i),a.setFooter([(0,u.zx)(t,"cancel","Cancel").onAction((()=>a.close())),(0,u.zx)(t,"ok","Save","primary").onAction((()=>{this.state=e,a.close()}))]),i.bindDestruct(a),a.setSize(500,400).open(!0)})),hotkeys:t.o.translate.hotkeys.translateOptions}).registerCommand("translate",{exec:()=>{const e=t.s.html;if(e)return s.translate(e,this.state.sourceLang&&"auto"!==this.state.sourceLang?this.state.sourceLang:a,this.state.targetLang).then((e=>{t.s.range.deleteContents(),t.s.insertNode(t.createInside.text(e.text))})).catch((e=>{t.message.error((0,o.H)(e)?e:e.message)}));t.message.error("Select text for translate")},hotkeys:t.o.translate.hotkeys.translateSelection})}beforeDestruct(t){}}g.requires=["license"],(0,n.gn)([l.persistent],g.prototype,"state",void 0),i.y.plugins.add("translate",g)},48458:function(t,e,a){"use strict";a.d(e,{r:function(){return u}});var n=a(97582),s=a(84789),i=a(50526),o=a(44913),r=a(77233),l=a(77902),c=a(95582),h=a(11612);let u=class t extends s.u{className(){return"UITranslateList"}get items(){return this.getElms("item")}render(t){const e=[];return Object.keys(t.list).sort().forEach((a=>{const n=t.list[a];e.push(`<a role='button' tabindex='0' class='&__item' data-lang='${n}'>\n\t\t\t\t\t\t<span class='&__item-key'>${n}</span>\n\t\t\t\t\t\t<span class='&__item-title'>${this.j.i18n(a)}</span>\n\t\t\t\t\t</a>`)})),`<div class='&'>\n\t\t\t<div class='&__input'></div>\n\t\t\t<div class='&__list'>${e.join("")}</div>\n\t\t</div>`}constructor(t,e){var a;super(t,e),this.options=e,this.state={active:""},this.state.active=e.active;const n=new l.u(t,{placeholder:t.i18n("Filter"),icon:"search",onChange:this.__onChangeFilter,clearButton:!0});null===(a=this.getElm("input"))||void 0===a||a.appendChild(n.container),this.__onActiveChange()}__onChangeFilter(t){this.items.forEach((e=>{var a,n;const s=null!==(n=null===(a=e.textContent)||void 0===a?void 0:a.toLowerCase())&&void 0!==n?n:"";(0,r.L)(e,"data-hidden","true"!==(0,r.L)(e,"data-active")&&!s.includes(t.toLowerCase()))}))}__scrollToActive(){const t=this.container.querySelector('[data-active="true"]'),e=this.getElm("list");t&&e&&(0,c.scrollIntoViewIfNeeded)(t,e,this.j.od)}onClickItem(t){if("keydown"===t.type&&"key"in t&&t.key!==h.KEY_ENTER)return;const e=t.target;if(o.i.isHTMLElement(e)&&e.getAttribute("data-lang")){const t=(0,r.L)(e,"data-lang");this.options.onChange(t),this.state.active=t}}__onActiveChange(){this.items.forEach((t=>(0,r.L)(t,"data-active",(0,r.L)(t,"data-lang")===this.state.active))),this.__scrollToActive()}};(0,n.gn)([(0,i.debounce)()],u.prototype,"__onChangeFilter",null),(0,n.gn)([(0,i.watch)(":afterOpen")],u.prototype,"__scrollToActive",null),(0,n.gn)([(0,i.watch)(["container:click","container:keydown"])],u.prototype,"onClickItem",null),(0,n.gn)([(0,i.watch)("state.active"),(0,i.debounce)()],u.prototype,"__onActiveChange",null),u=(0,n.gn)([i.component],u)},16874:function(t,e,a){"use strict";a.d(e,{h:function(){return r}});var n=a(97582),s=a(75004),i=a(50526),o=a(48458);let r=class t extends s.u1{className(){return"UITranslateSettings"}render(){return"<div>\n\t\t\t<div class='&__list &__source-list'></div>\n\t\t\t<div class='&__arrow'>\n\t\t\t\t<a class='&__arrow-swap'>*translate-swap*</a>\n\t\t\t</div>\n\t\t\t<div class='&__list &__target-list'></div>\n\t\t</div>"}constructor(t,e,a){var n,s;super(t),this.state=e,this.options=a,this.__sourceList=new o.r(t,{list:a.sourceList,active:e.sourceLang,onChange:t=>{this.state.sourceLang=t,this.options.onChange(Object.assign({},this.state))}}),null===(n=this.getElm("source-list"))||void 0===n||n.appendChild(this.__sourceList.container),this.__targetList=new o.r(t,{list:a.targetList,active:e.targetLang,onChange:t=>{this.state.targetLang=t,this.options.onChange(Object.assign({},this.state))}}),null===(s=this.getElm("target-list"))||void 0===s||s.appendChild(this.__targetList.container)}__onSwap(){const t=this.state.sourceLang;this.state.sourceLang=this.state.targetLang,this.state.targetLang=t,this.__sourceList.state.active=this.state.sourceLang,this.__targetList.state.active=this.state.targetLang,this.options.onChange(Object.assign({},this.state))}};(0,n.gn)([(0,i.watch)("arrow-swap:click")],r.prototype,"__onSwap",null),r=(0,n.gn)([i.component],r)}},function(t){return t(t.s=46753)}])}));