jodit-pro 4.2.12 → 4.2.18

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 (322) hide show
  1. package/es2015/jodit.css +115 -115
  2. package/es2015/jodit.fat.min.css +1 -1
  3. package/es2015/jodit.fat.min.js +2 -2
  4. package/es2015/jodit.js +938 -844
  5. package/es2015/jodit.min.css +1 -1
  6. package/es2015/jodit.min.js +2 -2
  7. package/es2015/plugins/autocomplete/autocomplete.js +1 -1
  8. package/es2015/plugins/autocomplete/autocomplete.min.js +1 -1
  9. package/es2015/plugins/backup/backup.css +1 -1
  10. package/es2015/plugins/backup/backup.js +7 -7
  11. package/es2015/plugins/backup/backup.min.js +2 -2
  12. package/es2015/plugins/button-generator/button-generator.css +1 -1
  13. package/es2015/plugins/button-generator/button-generator.js +9 -9
  14. package/es2015/plugins/button-generator/button-generator.min.js +2 -2
  15. package/es2015/plugins/change-case/change-case.js +6 -6
  16. package/es2015/plugins/change-case/change-case.min.js +2 -2
  17. package/es2015/plugins/color-picker/color-picker.css +1 -1
  18. package/es2015/plugins/color-picker/color-picker.js +1 -1
  19. package/es2015/plugins/color-picker/color-picker.min.js +1 -1
  20. package/es2015/plugins/emoji/emoji.css +1 -1
  21. package/es2015/plugins/emoji/emoji.js +11 -11
  22. package/es2015/plugins/emoji/emoji.min.js +2 -2
  23. package/es2015/plugins/export-docs/export-docs.js +7 -7
  24. package/es2015/plugins/export-docs/export-docs.min.js +2 -2
  25. package/es2015/plugins/finder/finder.css +1 -1
  26. package/es2015/plugins/finder/finder.js +33 -33
  27. package/es2015/plugins/finder/finder.min.js +2 -2
  28. package/es2015/plugins/google-maps/google-maps.css +1 -1
  29. package/es2015/plugins/google-maps/google-maps.js +2 -2
  30. package/es2015/plugins/google-maps/google-maps.min.js +2 -2
  31. package/es2015/plugins/google-search/google-search.js +6 -6
  32. package/es2015/plugins/google-search/google-search.min.js +2 -2
  33. package/es2015/plugins/highlight-signature/highlight-signature.js +1 -1
  34. package/es2015/plugins/highlight-signature/highlight-signature.min.js +1 -1
  35. package/es2015/plugins/iframe-editor/iframe-editor.css +1 -1
  36. package/es2015/plugins/iframe-editor/iframe-editor.js +8 -8
  37. package/es2015/plugins/iframe-editor/iframe-editor.min.js +2 -2
  38. package/es2015/plugins/keyboard/keyboard.css +1 -1
  39. package/es2015/plugins/keyboard/keyboard.js +15 -15
  40. package/es2015/plugins/keyboard/keyboard.min.js +2 -2
  41. package/es2015/plugins/mobile-view/mobile-view.js +20 -9
  42. package/es2015/plugins/mobile-view/mobile-view.min.js +2 -2
  43. package/es2015/plugins/page-break/page-break.js +8 -8
  44. package/es2015/plugins/page-break/page-break.min.js +2 -2
  45. package/es2015/plugins/paste-code/paste-code.css +1 -1
  46. package/es2015/plugins/paste-code/paste-code.js +7 -7
  47. package/es2015/plugins/paste-code/paste-code.min.js +2 -2
  48. package/es2015/plugins/paste-from-word/paste-from-word.js +1 -1
  49. package/es2015/plugins/paste-from-word/paste-from-word.min.js +1 -1
  50. package/es2015/plugins/show-blocks/show-blocks.js +1 -1
  51. package/es2015/plugins/show-blocks/show-blocks.min.js +1 -1
  52. package/es2015/plugins/todo-list/todo-list.css +1 -1
  53. package/es2015/plugins/todo-list/todo-list.js +7 -7
  54. package/es2015/plugins/todo-list/todo-list.min.js +2 -2
  55. package/es2015/plugins/translate/translate.css +1 -1
  56. package/es2015/plugins/translate/translate.js +9 -9
  57. package/es2015/plugins/translate/translate.min.js +2 -2
  58. package/es2015/plugins/tune-block/tune-block.css +1 -1
  59. package/es2015/plugins/tune-block/tune-block.js +1 -1
  60. package/es2015/plugins/tune-block/tune-block.min.js +1 -1
  61. package/es2018/jodit.css +115 -115
  62. package/es2018/jodit.fat.min.css +1 -1
  63. package/es2018/jodit.fat.min.js +2 -2
  64. package/es2018/jodit.js +938 -846
  65. package/es2018/jodit.min.css +1 -1
  66. package/es2018/jodit.min.js +2 -2
  67. package/es2018/plugins/autocomplete/autocomplete.js +1 -1
  68. package/es2018/plugins/autocomplete/autocomplete.min.js +1 -1
  69. package/es2018/plugins/backup/backup.css +1 -1
  70. package/es2018/plugins/backup/backup.js +7 -7
  71. package/es2018/plugins/backup/backup.min.js +2 -2
  72. package/es2018/plugins/button-generator/button-generator.css +1 -1
  73. package/es2018/plugins/button-generator/button-generator.js +9 -9
  74. package/es2018/plugins/button-generator/button-generator.min.js +2 -2
  75. package/es2018/plugins/change-case/change-case.js +6 -6
  76. package/es2018/plugins/change-case/change-case.min.js +2 -2
  77. package/es2018/plugins/color-picker/color-picker.css +1 -1
  78. package/es2018/plugins/color-picker/color-picker.js +1 -1
  79. package/es2018/plugins/color-picker/color-picker.min.js +1 -1
  80. package/es2018/plugins/emoji/emoji.css +1 -1
  81. package/es2018/plugins/emoji/emoji.js +11 -11
  82. package/es2018/plugins/emoji/emoji.min.js +2 -2
  83. package/es2018/plugins/export-docs/export-docs.js +7 -7
  84. package/es2018/plugins/export-docs/export-docs.min.js +2 -2
  85. package/es2018/plugins/finder/finder.css +1 -1
  86. package/es2018/plugins/finder/finder.js +33 -33
  87. package/es2018/plugins/finder/finder.min.js +2 -2
  88. package/es2018/plugins/google-maps/google-maps.css +1 -1
  89. package/es2018/plugins/google-maps/google-maps.js +2 -2
  90. package/es2018/plugins/google-maps/google-maps.min.js +2 -2
  91. package/es2018/plugins/google-search/google-search.js +6 -6
  92. package/es2018/plugins/google-search/google-search.min.js +2 -2
  93. package/es2018/plugins/highlight-signature/highlight-signature.js +1 -1
  94. package/es2018/plugins/highlight-signature/highlight-signature.min.js +1 -1
  95. package/es2018/plugins/iframe-editor/iframe-editor.css +1 -1
  96. package/es2018/plugins/iframe-editor/iframe-editor.js +8 -8
  97. package/es2018/plugins/iframe-editor/iframe-editor.min.js +2 -2
  98. package/es2018/plugins/keyboard/keyboard.css +1 -1
  99. package/es2018/plugins/keyboard/keyboard.js +15 -15
  100. package/es2018/plugins/keyboard/keyboard.min.js +2 -2
  101. package/es2018/plugins/mobile-view/mobile-view.js +20 -9
  102. package/es2018/plugins/mobile-view/mobile-view.min.js +2 -2
  103. package/es2018/plugins/page-break/page-break.js +8 -8
  104. package/es2018/plugins/page-break/page-break.min.js +2 -2
  105. package/es2018/plugins/paste-code/paste-code.css +1 -1
  106. package/es2018/plugins/paste-code/paste-code.js +7 -7
  107. package/es2018/plugins/paste-code/paste-code.min.js +2 -2
  108. package/es2018/plugins/paste-from-word/paste-from-word.js +1 -1
  109. package/es2018/plugins/paste-from-word/paste-from-word.min.js +1 -1
  110. package/es2018/plugins/show-blocks/show-blocks.js +1 -1
  111. package/es2018/plugins/show-blocks/show-blocks.min.js +1 -1
  112. package/es2018/plugins/todo-list/todo-list.css +1 -1
  113. package/es2018/plugins/todo-list/todo-list.js +7 -7
  114. package/es2018/plugins/todo-list/todo-list.min.js +2 -2
  115. package/es2018/plugins/translate/translate.css +1 -1
  116. package/es2018/plugins/translate/translate.js +9 -9
  117. package/es2018/plugins/translate/translate.min.js +2 -2
  118. package/es2018/plugins/tune-block/tune-block.css +1 -1
  119. package/es2018/plugins/tune-block/tune-block.js +1 -1
  120. package/es2018/plugins/tune-block/tune-block.min.js +1 -1
  121. package/es2021/jodit.css +115 -115
  122. package/es2021/jodit.fat.min.css +1 -1
  123. package/es2021/jodit.fat.min.js +2 -2
  124. package/es2021/jodit.js +932 -840
  125. package/es2021/jodit.min.css +1 -1
  126. package/es2021/jodit.min.js +2 -2
  127. package/es2021/plugins/autocomplete/autocomplete.js +1 -1
  128. package/es2021/plugins/autocomplete/autocomplete.min.js +1 -1
  129. package/es2021/plugins/backup/backup.css +1 -1
  130. package/es2021/plugins/backup/backup.js +7 -7
  131. package/es2021/plugins/backup/backup.min.js +2 -2
  132. package/es2021/plugins/button-generator/button-generator.css +1 -1
  133. package/es2021/plugins/button-generator/button-generator.js +9 -9
  134. package/es2021/plugins/button-generator/button-generator.min.js +2 -2
  135. package/es2021/plugins/change-case/change-case.js +6 -6
  136. package/es2021/plugins/change-case/change-case.min.js +2 -2
  137. package/es2021/plugins/color-picker/color-picker.css +1 -1
  138. package/es2021/plugins/color-picker/color-picker.js +1 -1
  139. package/es2021/plugins/color-picker/color-picker.min.js +1 -1
  140. package/es2021/plugins/emoji/emoji.css +1 -1
  141. package/es2021/plugins/emoji/emoji.js +11 -11
  142. package/es2021/plugins/emoji/emoji.min.js +2 -2
  143. package/es2021/plugins/export-docs/export-docs.js +7 -7
  144. package/es2021/plugins/export-docs/export-docs.min.js +2 -2
  145. package/es2021/plugins/finder/finder.css +1 -1
  146. package/es2021/plugins/finder/finder.js +33 -33
  147. package/es2021/plugins/finder/finder.min.js +2 -2
  148. package/es2021/plugins/google-maps/google-maps.css +1 -1
  149. package/es2021/plugins/google-maps/google-maps.js +2 -2
  150. package/es2021/plugins/google-maps/google-maps.min.js +2 -2
  151. package/es2021/plugins/google-search/google-search.js +6 -6
  152. package/es2021/plugins/google-search/google-search.min.js +2 -2
  153. package/es2021/plugins/highlight-signature/highlight-signature.js +1 -1
  154. package/es2021/plugins/highlight-signature/highlight-signature.min.js +1 -1
  155. package/es2021/plugins/iframe-editor/iframe-editor.css +1 -1
  156. package/es2021/plugins/iframe-editor/iframe-editor.js +8 -8
  157. package/es2021/plugins/iframe-editor/iframe-editor.min.js +2 -2
  158. package/es2021/plugins/keyboard/keyboard.css +1 -1
  159. package/es2021/plugins/keyboard/keyboard.js +15 -15
  160. package/es2021/plugins/keyboard/keyboard.min.js +2 -2
  161. package/es2021/plugins/mobile-view/mobile-view.js +19 -9
  162. package/es2021/plugins/mobile-view/mobile-view.min.js +2 -2
  163. package/es2021/plugins/page-break/page-break.js +8 -8
  164. package/es2021/plugins/page-break/page-break.min.js +2 -2
  165. package/es2021/plugins/paste-code/paste-code.css +1 -1
  166. package/es2021/plugins/paste-code/paste-code.js +7 -7
  167. package/es2021/plugins/paste-code/paste-code.min.js +2 -2
  168. package/es2021/plugins/paste-from-word/paste-from-word.js +1 -1
  169. package/es2021/plugins/paste-from-word/paste-from-word.min.js +1 -1
  170. package/es2021/plugins/show-blocks/show-blocks.js +1 -1
  171. package/es2021/plugins/show-blocks/show-blocks.min.js +1 -1
  172. package/es2021/plugins/todo-list/todo-list.css +1 -1
  173. package/es2021/plugins/todo-list/todo-list.js +7 -7
  174. package/es2021/plugins/todo-list/todo-list.min.js +2 -2
  175. package/es2021/plugins/translate/translate.css +1 -1
  176. package/es2021/plugins/translate/translate.js +9 -9
  177. package/es2021/plugins/translate/translate.min.js +2 -2
  178. package/es2021/plugins/tune-block/tune-block.css +1 -1
  179. package/es2021/plugins/tune-block/tune-block.js +1 -1
  180. package/es2021/plugins/tune-block/tune-block.min.js +1 -1
  181. package/es2021.en/jodit.css +115 -115
  182. package/es2021.en/jodit.fat.min.css +1 -1
  183. package/es2021.en/jodit.fat.min.js +2 -2
  184. package/es2021.en/jodit.js +932 -840
  185. package/es2021.en/jodit.min.css +1 -1
  186. package/es2021.en/jodit.min.js +2 -2
  187. package/es2021.en/plugins/autocomplete/autocomplete.js +1 -1
  188. package/es2021.en/plugins/autocomplete/autocomplete.min.js +1 -1
  189. package/es2021.en/plugins/backup/backup.css +1 -1
  190. package/es2021.en/plugins/backup/backup.js +7 -7
  191. package/es2021.en/plugins/backup/backup.min.js +2 -2
  192. package/es2021.en/plugins/button-generator/button-generator.css +1 -1
  193. package/es2021.en/plugins/button-generator/button-generator.js +9 -9
  194. package/es2021.en/plugins/button-generator/button-generator.min.js +2 -2
  195. package/es2021.en/plugins/change-case/change-case.js +6 -6
  196. package/es2021.en/plugins/change-case/change-case.min.js +2 -2
  197. package/es2021.en/plugins/color-picker/color-picker.css +1 -1
  198. package/es2021.en/plugins/color-picker/color-picker.js +1 -1
  199. package/es2021.en/plugins/color-picker/color-picker.min.js +1 -1
  200. package/es2021.en/plugins/emoji/emoji.css +1 -1
  201. package/es2021.en/plugins/emoji/emoji.js +11 -11
  202. package/es2021.en/plugins/emoji/emoji.min.js +2 -2
  203. package/es2021.en/plugins/export-docs/export-docs.js +7 -7
  204. package/es2021.en/plugins/export-docs/export-docs.min.js +2 -2
  205. package/es2021.en/plugins/finder/finder.css +1 -1
  206. package/es2021.en/plugins/finder/finder.js +33 -33
  207. package/es2021.en/plugins/finder/finder.min.js +2 -2
  208. package/es2021.en/plugins/google-maps/google-maps.css +1 -1
  209. package/es2021.en/plugins/google-maps/google-maps.js +2 -2
  210. package/es2021.en/plugins/google-maps/google-maps.min.js +2 -2
  211. package/es2021.en/plugins/google-search/google-search.js +6 -6
  212. package/es2021.en/plugins/google-search/google-search.min.js +2 -2
  213. package/es2021.en/plugins/highlight-signature/highlight-signature.js +1 -1
  214. package/es2021.en/plugins/highlight-signature/highlight-signature.min.js +1 -1
  215. package/es2021.en/plugins/iframe-editor/iframe-editor.css +1 -1
  216. package/es2021.en/plugins/iframe-editor/iframe-editor.js +8 -8
  217. package/es2021.en/plugins/iframe-editor/iframe-editor.min.js +2 -2
  218. package/es2021.en/plugins/keyboard/keyboard.css +1 -1
  219. package/es2021.en/plugins/keyboard/keyboard.js +15 -15
  220. package/es2021.en/plugins/keyboard/keyboard.min.js +2 -2
  221. package/es2021.en/plugins/mobile-view/mobile-view.js +19 -9
  222. package/es2021.en/plugins/mobile-view/mobile-view.min.js +2 -2
  223. package/es2021.en/plugins/page-break/page-break.js +8 -8
  224. package/es2021.en/plugins/page-break/page-break.min.js +2 -2
  225. package/es2021.en/plugins/paste-code/paste-code.css +1 -1
  226. package/es2021.en/plugins/paste-code/paste-code.js +7 -7
  227. package/es2021.en/plugins/paste-code/paste-code.min.js +2 -2
  228. package/es2021.en/plugins/paste-from-word/paste-from-word.js +1 -1
  229. package/es2021.en/plugins/paste-from-word/paste-from-word.min.js +1 -1
  230. package/es2021.en/plugins/show-blocks/show-blocks.js +1 -1
  231. package/es2021.en/plugins/show-blocks/show-blocks.min.js +1 -1
  232. package/es2021.en/plugins/todo-list/todo-list.css +1 -1
  233. package/es2021.en/plugins/todo-list/todo-list.js +7 -7
  234. package/es2021.en/plugins/todo-list/todo-list.min.js +2 -2
  235. package/es2021.en/plugins/translate/translate.css +1 -1
  236. package/es2021.en/plugins/translate/translate.js +9 -9
  237. package/es2021.en/plugins/translate/translate.min.js +2 -2
  238. package/es2021.en/plugins/tune-block/tune-block.css +1 -1
  239. package/es2021.en/plugins/tune-block/tune-block.js +1 -1
  240. package/es2021.en/plugins/tune-block/tune-block.min.js +1 -1
  241. package/es5/jodit.css +129 -129
  242. package/es5/jodit.fat.min.css +1 -1
  243. package/es5/jodit.fat.min.js +2 -2
  244. package/es5/jodit.js +961 -866
  245. package/es5/jodit.min.css +3 -3
  246. package/es5/jodit.min.js +2 -2
  247. package/es5/plugins/autocomplete/autocomplete.js +1 -1
  248. package/es5/plugins/autocomplete/autocomplete.min.js +1 -1
  249. package/es5/plugins/backup/backup.css +1 -1
  250. package/es5/plugins/backup/backup.js +7 -7
  251. package/es5/plugins/backup/backup.min.js +2 -2
  252. package/es5/plugins/button-generator/button-generator.css +1 -1
  253. package/es5/plugins/button-generator/button-generator.js +9 -9
  254. package/es5/plugins/button-generator/button-generator.min.js +2 -2
  255. package/es5/plugins/change-case/change-case.js +6 -6
  256. package/es5/plugins/change-case/change-case.min.js +2 -2
  257. package/es5/plugins/color-picker/color-picker.css +1 -1
  258. package/es5/plugins/color-picker/color-picker.js +1 -1
  259. package/es5/plugins/color-picker/color-picker.min.js +1 -1
  260. package/es5/plugins/emoji/emoji.css +1 -1
  261. package/es5/plugins/emoji/emoji.js +11 -11
  262. package/es5/plugins/emoji/emoji.min.js +2 -2
  263. package/es5/plugins/export-docs/export-docs.js +7 -7
  264. package/es5/plugins/export-docs/export-docs.min.js +2 -2
  265. package/es5/plugins/finder/finder.css +1 -1
  266. package/es5/plugins/finder/finder.js +33 -33
  267. package/es5/plugins/finder/finder.min.js +2 -2
  268. package/es5/plugins/google-maps/google-maps.css +1 -1
  269. package/es5/plugins/google-maps/google-maps.js +2 -2
  270. package/es5/plugins/google-maps/google-maps.min.js +2 -2
  271. package/es5/plugins/google-search/google-search.js +6 -6
  272. package/es5/plugins/google-search/google-search.min.js +2 -2
  273. package/es5/plugins/highlight-signature/highlight-signature.js +1 -1
  274. package/es5/plugins/highlight-signature/highlight-signature.min.js +1 -1
  275. package/es5/plugins/iframe-editor/iframe-editor.css +1 -1
  276. package/es5/plugins/iframe-editor/iframe-editor.js +8 -8
  277. package/es5/plugins/iframe-editor/iframe-editor.min.js +2 -2
  278. package/es5/plugins/keyboard/keyboard.css +1 -1
  279. package/es5/plugins/keyboard/keyboard.js +15 -15
  280. package/es5/plugins/keyboard/keyboard.min.js +2 -2
  281. package/es5/plugins/mobile-view/mobile-view.js +20 -9
  282. package/es5/plugins/mobile-view/mobile-view.min.js +2 -2
  283. package/es5/plugins/page-break/page-break.js +8 -8
  284. package/es5/plugins/page-break/page-break.min.js +2 -2
  285. package/es5/plugins/paste-code/paste-code.css +1 -1
  286. package/es5/plugins/paste-code/paste-code.js +7 -7
  287. package/es5/plugins/paste-code/paste-code.min.js +2 -2
  288. package/es5/plugins/paste-from-word/paste-from-word.js +1 -1
  289. package/es5/plugins/paste-from-word/paste-from-word.min.js +1 -1
  290. package/es5/plugins/show-blocks/show-blocks.js +1 -1
  291. package/es5/plugins/show-blocks/show-blocks.min.js +1 -1
  292. package/es5/plugins/todo-list/todo-list.css +1 -1
  293. package/es5/plugins/todo-list/todo-list.js +7 -7
  294. package/es5/plugins/todo-list/todo-list.min.js +2 -2
  295. package/es5/plugins/translate/translate.css +1 -1
  296. package/es5/plugins/translate/translate.js +9 -9
  297. package/es5/plugins/translate/translate.min.js +2 -2
  298. package/es5/plugins/tune-block/tune-block.css +1 -1
  299. package/es5/plugins/tune-block/tune-block.js +1 -1
  300. package/es5/plugins/tune-block/tune-block.min.js +1 -1
  301. package/esm/plugins/autocomplete/autocomplete.js +1 -1
  302. package/esm/plugins/backup/config.js +1 -1
  303. package/esm/plugins/button-generator/config.js +1 -1
  304. package/esm/plugins/change-case/config.js +1 -1
  305. package/esm/plugins/emoji/config.js +1 -1
  306. package/esm/plugins/export-docs/config.js +1 -1
  307. package/esm/plugins/finder/browser.js +1 -1
  308. package/esm/plugins/finder/interface.d.ts +69 -0
  309. package/esm/plugins/google-maps/config.js +1 -1
  310. package/esm/plugins/google-maps/interface.d.ts +109 -0
  311. package/esm/plugins/google-search/google-search.js +1 -1
  312. package/esm/plugins/iframe-editor/config.js +1 -1
  313. package/esm/plugins/keyboard/config.js +1 -1
  314. package/esm/plugins/keyboard/keyboard.js +1 -1
  315. package/esm/plugins/mobile-view/config.js +1 -1
  316. package/esm/plugins/page-break/config.js +1 -1
  317. package/esm/plugins/paste-code/config.js +1 -1
  318. package/esm/plugins/todo-list/config.js +1 -1
  319. package/esm/plugins/translate/config.js +1 -1
  320. package/package.json +1 -1
  321. package/types/plugins/finder/interface.d.ts +69 -0
  322. package/types/plugins/google-maps/interface.d.ts +109 -0
@@ -1,10 +1,10 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
- * Version: v4.2.12
4
+ * Version: v4.2.18
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
8
8
 
9
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 o=e();for(var i in o)("object"==typeof exports?exports:t)[i]=o[i]}}(self,(function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[502],{68903:function(t){t.exports='<svg stroke="black" stroke-linejoin="round" stroke-linecap="round" stroke-width="28" viewBox="0 0 256 256" xmlns="http://www.w3.org/2000/svg"> \x3c!-- <rect fill="none" height="256" width="256"/>--\x3e <line fill="none" x1="130" x2="241" y1="54" y2="54"/> <line fill="none" x1="130" x2="241" y1="128" y2="128"/> <line fill="none" x1="130" x2="241" y1="202" y2="202"/> <polyline fill="none" points="92 38 57.3 70 40 54"/> <polyline fill="none" points="92 112 57.3 144 40 128"/> <polyline fill="none" points="92 186 57.3 218 40 202"/> </svg>'},29190:function(t,e,o){"use strict";var i=o(23545),n=o(80004),s=o(68903),r=o.n(s),a=o(91288);a.T.prototype.todoList={className:"todo-list",labelClassName:"todo-list__label",inputFactory:function(t){return t.createInside.element("input",{type:"checkbox",tabindex:-1})}},a.T.prototype.controls.todoList={tooltip:"To-do List",icon:"todo-list",command:"todolist",isActive:function(t){var e=t.s.current();return Boolean(e&&i.J.closest(e,(function(t){return i.J.isElement(t)&&i.J.isTag(t,"ul")&&t.classList.contains("todo-list")}),t.editor))}},n.I.set("todo-list",r())},77185:function(t,e,o){"use strict";o.r(e),o.d(e,{TodoList:function(){return u}});var i=o(31635),n=o(67259),s=o(53557),r=o(23545),a=o(71122),l=o(65564),p=o(66923),c=(o(29190),o(25511)),u=function(t){function e(){var e=t.apply(this,(0,i.fX)([],(0,i.zs)(arguments),!1))||this;return e.buttons=[{name:"todoList",group:"list"}],e.__isOwnCommand=!1,e}return(0,i.C6)(e,t),e.prototype.afterInit=function(t){t.registerCommand("todoList",this.onCommand)},e.prototype.onCommand=function(){try{this.__isOwnCommand=!0,this.jodit.s.commitStyle({element:"ul",attributes:{class:this.j.o.todoList.className},hooks:{afterWrapList:this.__afterWrapList,afterToggleAttribute:this.__afterWrapList}})}finally{this.__isOwnCommand=!1}return!1},e.prototype.__prependInputLabel=function(t){var e=this.jodit,o=this.j.o.todoList,i=o.labelClassName,n=o.inputFactory;if(!t.querySelector("label."+i)){var s=e.createInside.element("label",{contenteditable:"false",class:i}),a=n(e);s.appendChild(a),r.J.prepend(t,s)}},e.prototype.__afterToggleList=function(t,e){return t!==p.PL&&t!==p.dj||!this.__isOwnCommand?t===p.OJ||t===p.dj||t===p.PL?this.__removeInputs(e):void 0:this.__appendInputs(e)},e.prototype.__appendInputs=function(t){t.querySelectorAll("li").forEach(this.__prependInputLabel)},e.prototype.__removeInputs=function(t){t.querySelectorAll("label."+this.j.o.todoList.labelClassName).forEach(r.J.safeRemove)},e.prototype.__beforeToggleOrderedList=function(t,e,o){var i,n="__beforeToggleOrderedList";if(t!==p.dj&&(e.classList.contains(this.j.o.todoList.className)||o.isApplied(e,n))&&("ul"===o.element||"ol"===o.element)&&(null===(i=o.options.attributes)||void 0===i?void 0:i.class)!==this.j.o.todoList.className){var s=r.J.replace(e,o.element,this.jodit.createInside);return o.setApplied(s,n),this.__removeInputs(s),s}},e.prototype.__afterEnter=function(){(0,a.$$)("ul."+this.j.o.todoList.className+" li",this.jodit.editor).forEach(this.__prependInputLabel)},e.prototype.__afterTab=function(){(0,a.$$)("ul:not(."+this.j.o.todoList.className+") > li > label",this.jodit.editor).filter(this.isTodoLeafLabel).forEach(r.J.safeRemove)},e.prototype.__changeSelection=function(t){var e=this.j.s.current();this.isTodoLeafLabel(e)&&(t.preventDefault(),t.stopPropagation(),this.j.s.setCursorAfter(e))},e.prototype.__isEmptyListLeaf=function(t){var e=this;return r.J.isEmpty(t,(function(t){return("input"!==t.nodeName.toLowerCase()||!e.isTodoLeafLabel(t.parentElement))&&n.NO_EMPTY_TAGS.has(t.tagName.toLowerCase())}))},e.prototype.__backSpaceBeforeCases=function(t,e){if(t){var o=r.J.findNotEmptySibling(e,!0);this.isTodoLeafLabel(o)&&r.J.safeRemove(o)}},e.prototype.__isInvisibleForCursor=function(t){if(this.isTodoLeafLabel(t))return!0},e.prototype.__backSpaceAfterDelete=function(){var t=this;(0,a.$$)("label."+this.j.o.todoList.labelClassName,this.jodit.editor).forEach((function(e){e.closest("ul."+t.j.o.todoList.className)?e.previousSibling&&e.parentElement&&r.J.prepend(e.parentElement,e):r.J.safeRemove(e)}))},e.prototype.__afterWrapList=function(t,e){t===p.Zk&&this.__appendInputs(e)},e.prototype.__onClickInput=function(t){var e=t.target;e&&r.J.isTag(e,"input")&&"checkbox"===e.type&&this.isTodoLeafLabel(e.parentElement)&&(0,a.attr)(e,"checked",e.checked?"checked":null)},e.prototype.isTodoLeafLabel=function(t){var e=this.j.o.todoList.labelClassName;return r.J.isHTMLElement(t)&&t.classList.contains(e)},e.prototype.beforeDestruct=function(t){},e.requires=["license"],(0,i.Cg)([s.autobind],e.prototype,"onCommand",null),(0,i.Cg)([s.autobind],e.prototype,"__prependInputLabel",null),(0,i.Cg)([(0,s.watch)(":commitStyleAfterToggleList")],e.prototype,"__afterToggleList",null),(0,i.Cg)([(0,s.watch)(":commitStyleBeforeUnwrapList")],e.prototype,"__beforeToggleOrderedList",null),(0,i.Cg)([(0,s.watch)(":afterEnter")],e.prototype,"__afterEnter",null),(0,i.Cg)([(0,s.watch)(":afterTab")],e.prototype,"__afterTab",null),(0,i.Cg)([(0,s.watch)("j.ed:selectionchange"),(0,s.watch)(":afterEnter")],e.prototype,"__changeSelection",null),(0,i.Cg)([(0,s.watch)(":enterIsEmptyListLeaf")],e.prototype,"__isEmptyListLeaf",null),(0,i.Cg)([(0,s.watch)(":backSpaceBeforeCases")],e.prototype,"__backSpaceBeforeCases",null),(0,i.Cg)([(0,s.watch)(":backSpaceIsMovedIgnore"),(0,s.watch)(":isInvisibleForCursor")],e.prototype,"__isInvisibleForCursor",null),(0,i.Cg)([(0,s.watch)(":backSpaceAfterDelete")],e.prototype,"__backSpaceAfterDelete",null),(0,i.Cg)([s.autobind],e.prototype,"__afterWrapList",null),(0,i.Cg)([(0,s.watch)(":click")],e.prototype,"__onClickInput",null),(0,i.Cg)([s.autobind],e.prototype,"isTodoLeafLabel",null),e}(l.k);c.A.plugins.add("todo-list",u)}},function(t){return t(t.s=77185)}])}));
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 o=e();for(var i in o)("object"==typeof exports?exports:t)[i]=o[i]}}(self,(function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[502],{68903:function(t){t.exports='<svg stroke="black" stroke-linejoin="round" stroke-linecap="round" stroke-width="28" viewBox="0 0 256 256" xmlns="http://www.w3.org/2000/svg"> \x3c!-- <rect fill="none" height="256" width="256"/>--\x3e <line fill="none" x1="130" x2="241" y1="54" y2="54"/> <line fill="none" x1="130" x2="241" y1="128" y2="128"/> <line fill="none" x1="130" x2="241" y1="202" y2="202"/> <polyline fill="none" points="92 38 57.3 70 40 54"/> <polyline fill="none" points="92 112 57.3 144 40 128"/> <polyline fill="none" points="92 186 57.3 218 40 202"/> </svg>'},29190:function(t,e,o){"use strict";var i=o(23545),n=o(80004),s=o(91288),r=o(68903),a=o.n(r);s.T.prototype.todoList={className:"todo-list",labelClassName:"todo-list__label",inputFactory:function(t){return t.createInside.element("input",{type:"checkbox",tabindex:-1})}},s.T.prototype.controls.todoList={tooltip:"To-do List",icon:"todo-list",command:"todolist",isActive:function(t){var e=t.s.current();return Boolean(e&&i.J.closest(e,(function(t){return i.J.isElement(t)&&i.J.isTag(t,"ul")&&t.classList.contains("todo-list")}),t.editor))}},n.I.set("todo-list",a())},77185:function(t,e,o){"use strict";o.r(e),o.d(e,{TodoList:function(){return u}});var i=o(31635),n=o(67259),s=o(53557),r=o(23545),a=o(71122),l=o(65564),p=o(66923),c=(o(29190),o(25511)),u=function(t){function e(){var e=t.apply(this,(0,i.fX)([],(0,i.zs)(arguments),!1))||this;return e.buttons=[{name:"todoList",group:"list"}],e.__isOwnCommand=!1,e}return(0,i.C6)(e,t),e.prototype.afterInit=function(t){t.registerCommand("todoList",this.onCommand)},e.prototype.onCommand=function(){try{this.__isOwnCommand=!0,this.jodit.s.commitStyle({element:"ul",attributes:{class:this.j.o.todoList.className},hooks:{afterWrapList:this.__afterWrapList,afterToggleAttribute:this.__afterWrapList}})}finally{this.__isOwnCommand=!1}return!1},e.prototype.__prependInputLabel=function(t){var e=this.jodit,o=this.j.o.todoList,i=o.labelClassName,n=o.inputFactory;if(!t.querySelector("label."+i)){var s=e.createInside.element("label",{contenteditable:"false",class:i}),a=n(e);s.appendChild(a),r.J.prepend(t,s)}},e.prototype.__afterToggleList=function(t,e){return t!==p.PL&&t!==p.dj||!this.__isOwnCommand?t===p.OJ||t===p.dj||t===p.PL?this.__removeInputs(e):void 0:this.__appendInputs(e)},e.prototype.__appendInputs=function(t){t.querySelectorAll("li").forEach(this.__prependInputLabel)},e.prototype.__removeInputs=function(t){t.querySelectorAll("label."+this.j.o.todoList.labelClassName).forEach(r.J.safeRemove)},e.prototype.__beforeToggleOrderedList=function(t,e,o){var i,n="__beforeToggleOrderedList";if(t!==p.dj&&(e.classList.contains(this.j.o.todoList.className)||o.isApplied(e,n))&&("ul"===o.element||"ol"===o.element)&&(null===(i=o.options.attributes)||void 0===i?void 0:i.class)!==this.j.o.todoList.className){var s=r.J.replace(e,o.element,this.jodit.createInside);return o.setApplied(s,n),this.__removeInputs(s),s}},e.prototype.__afterEnter=function(){(0,a.$$)("ul."+this.j.o.todoList.className+" li",this.jodit.editor).forEach(this.__prependInputLabel)},e.prototype.__afterTab=function(){(0,a.$$)("ul:not(."+this.j.o.todoList.className+") > li > label",this.jodit.editor).filter(this.isTodoLeafLabel).forEach(r.J.safeRemove)},e.prototype.__changeSelection=function(t){var e=this.j.s.current();this.isTodoLeafLabel(e)&&(t.preventDefault(),t.stopPropagation(),this.j.s.setCursorAfter(e))},e.prototype.__isEmptyListLeaf=function(t){var e=this;return r.J.isEmpty(t,(function(t){return("input"!==t.nodeName.toLowerCase()||!e.isTodoLeafLabel(t.parentElement))&&n.NO_EMPTY_TAGS.has(t.tagName.toLowerCase())}))},e.prototype.__backSpaceBeforeCases=function(t,e){if(t){var o=r.J.findNotEmptySibling(e,!0);this.isTodoLeafLabel(o)&&r.J.safeRemove(o)}},e.prototype.__isInvisibleForCursor=function(t){if(this.isTodoLeafLabel(t))return!0},e.prototype.__backSpaceAfterDelete=function(){var t=this;(0,a.$$)("label."+this.j.o.todoList.labelClassName,this.jodit.editor).forEach((function(e){e.closest("ul."+t.j.o.todoList.className)?e.previousSibling&&e.parentElement&&r.J.prepend(e.parentElement,e):r.J.safeRemove(e)}))},e.prototype.__afterWrapList=function(t,e){t===p.Zk&&this.__appendInputs(e)},e.prototype.__onClickInput=function(t){var e=t.target;e&&r.J.isTag(e,"input")&&"checkbox"===e.type&&this.isTodoLeafLabel(e.parentElement)&&(0,a.attr)(e,"checked",e.checked?"checked":null)},e.prototype.isTodoLeafLabel=function(t){var e=this.j.o.todoList.labelClassName;return r.J.isHTMLElement(t)&&t.classList.contains(e)},e.prototype.beforeDestruct=function(t){},e.requires=["license"],(0,i.Cg)([s.autobind],e.prototype,"onCommand",null),(0,i.Cg)([s.autobind],e.prototype,"__prependInputLabel",null),(0,i.Cg)([(0,s.watch)(":commitStyleAfterToggleList")],e.prototype,"__afterToggleList",null),(0,i.Cg)([(0,s.watch)(":commitStyleBeforeUnwrapList")],e.prototype,"__beforeToggleOrderedList",null),(0,i.Cg)([(0,s.watch)(":afterEnter")],e.prototype,"__afterEnter",null),(0,i.Cg)([(0,s.watch)(":afterTab")],e.prototype,"__afterTab",null),(0,i.Cg)([(0,s.watch)("j.ed:selectionchange"),(0,s.watch)(":afterEnter")],e.prototype,"__changeSelection",null),(0,i.Cg)([(0,s.watch)(":enterIsEmptyListLeaf")],e.prototype,"__isEmptyListLeaf",null),(0,i.Cg)([(0,s.watch)(":backSpaceBeforeCases")],e.prototype,"__backSpaceBeforeCases",null),(0,i.Cg)([(0,s.watch)(":backSpaceIsMovedIgnore"),(0,s.watch)(":isInvisibleForCursor")],e.prototype,"__isInvisibleForCursor",null),(0,i.Cg)([(0,s.watch)(":backSpaceAfterDelete")],e.prototype,"__backSpaceAfterDelete",null),(0,i.Cg)([s.autobind],e.prototype,"__afterWrapList",null),(0,i.Cg)([(0,s.watch)(":click")],e.prototype,"__onClickInput",null),(0,i.Cg)([s.autobind],e.prototype,"isTodoLeafLabel",null),e}(l.k);c.A.plugins.add("todo-list",u)}},function(t){return t(t.s=77185)}])}));
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
- * Version: v4.2.12
4
+ * Version: v4.2.18
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
- * Version: v4.2.12
4
+ * Version: v4.2.18
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -37,11 +37,11 @@ module.exports = "<svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\
37
37
 
38
38
  "use strict";
39
39
  /* harmony import */ var jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(80004);
40
- /* harmony import */ var _assets_swap_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18732);
41
- /* harmony import */ var _assets_swap_svg__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_assets_swap_svg__WEBPACK_IMPORTED_MODULE_1__);
42
- /* harmony import */ var _assets_translate_svg__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4617);
43
- /* harmony import */ var _assets_translate_svg__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_assets_translate_svg__WEBPACK_IMPORTED_MODULE_2__);
44
- /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(91288);
40
+ /* harmony import */ var jodit_config__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(91288);
41
+ /* harmony import */ var _assets_swap_svg__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(18732);
42
+ /* harmony import */ var _assets_swap_svg__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_assets_swap_svg__WEBPACK_IMPORTED_MODULE_2__);
43
+ /* harmony import */ var _assets_translate_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(4617);
44
+ /* harmony import */ var _assets_translate_svg__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_assets_translate_svg__WEBPACK_IMPORTED_MODULE_3__);
45
45
  /*!
46
46
  * Jodit Editor PRO (https://xdsoft.net/jodit/)
47
47
  * See LICENSE.md in the project root for license information.
@@ -51,7 +51,7 @@ module.exports = "<svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\
51
51
 
52
52
 
53
53
 
54
- jodit_config__WEBPACK_IMPORTED_MODULE_3__/* .Config */ .T.prototype.translate = {
54
+ jodit_config__WEBPACK_IMPORTED_MODULE_1__/* .Config */ .T.prototype.translate = {
55
55
  hotkeys: {
56
56
  translateSelection: ['ctrl+shift+o', 'cmd+shift+o'],
57
57
  translateOptions: ['ctrl+shift+p', 'cmd+shift+p']
@@ -64,7 +64,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_3__/* .Config */ .T.prototype.translate =
64
64
  defaultSourceLang: '',
65
65
  defaultTargetLang: 'de'
66
66
  };
67
- jodit_config__WEBPACK_IMPORTED_MODULE_3__/* .Config */ .T.prototype.controls.translate = {
67
+ jodit_config__WEBPACK_IMPORTED_MODULE_1__/* .Config */ .T.prototype.controls.translate = {
68
68
  translate: {
69
69
  tooltip: 'Translate selected text',
70
70
  icon: 'translate',
@@ -82,7 +82,7 @@ jodit_config__WEBPACK_IMPORTED_MODULE_3__/* .Config */ .T.prototype.controls.tra
82
82
  }
83
83
  }
84
84
  };
85
- jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_0__/* .Icon */ .I.set('translate', (_assets_translate_svg__WEBPACK_IMPORTED_MODULE_2___default())).set('translate-swap', (_assets_swap_svg__WEBPACK_IMPORTED_MODULE_1___default()));
85
+ jodit_core_ui_icon__WEBPACK_IMPORTED_MODULE_0__/* .Icon */ .I.set('translate', (_assets_translate_svg__WEBPACK_IMPORTED_MODULE_3___default())).set('translate-swap', (_assets_swap_svg__WEBPACK_IMPORTED_MODULE_2___default()));
86
86
 
87
87
 
88
88
  /***/ }),
@@ -1,10 +1,10 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
- * Version: v4.2.12
4
+ * Version: v4.2.18
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
8
8
 
9
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 n=e();for(var a in n)("object"==typeof exports?exports:t)[a]=n[a]}}(self,(function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[954],{18732: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>'},4617: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>'},6865:function(t,e,n){"use strict";var a=n(80004),i=n(18732),o=n.n(i),s=n(4617),r=n.n(s),l=n(91288);l.T.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"},l.T.prototype.controls.translate={translate:{tooltip:"Translate selected text",icon:"translate",command:"translate",exec:function(t){t.execCommand("translate")},list:["Options"],childExec:function(t,e,n){t.execCommand("translate"+n.control.name)},mods:{stroke:!1}}},a.I.set("translate",r()).set("translate-swap",o())},92597:function(t,e,n){"use strict";n.d(e,{l:function(){return o}});var a=n(31635),i=(n(67259),n(28712),n(89281)),o=function(){function t(t){this.jodit=t}return t.prototype.__fetch=function(t,e){var n=this;void 0===e&&(e={});var i=this.jodit.o.translate.googleProviderOptions;return this.jodit.fetch(i.url+"?key="+i.key,{method:"POST",data:(0,a.Cl)((0,a.Cl)({},e),{ui:this.jodit.o.language}),contentType:"application/json; charset=utf-8",withCredentials:!1}).then((function(t){return t.json()})).catch((function(t){try{n.jodit.message.error(t.json().message)}catch(t){}}))},t.prototype.translate=function(t,e,n){return this.__fetch("translate",{q:t,source:e,target:n,format:"html"}).then((function(t){return{text:t.data.translations[0].translatedText}}))},t.prototype.supportedLanguages=function(){return Promise.resolve({langs:i.e})},t}()},89281:function(t,e,n){"use strict";n.d(e,{e:function(){return a}});var a={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"}},27477:function(t,e,n){"use strict";n.r(e),n.d(e,{Translate:function(){return g}});var a=n(31635),i=n(53557),o=n(26986),s=(n(28712),n(54614)),r=n(65564),l=n(13419),c=(n(6865),n(92597)),u=n(62001),h=n(25511),g=function(t){function e(){var e=t.apply(this,(0,a.fX)([],(0,a.zs)(arguments),!1))||this;return e.buttons=[{name:"translate.translate",group:"insert"}],e.state={sourceLang:e.jodit.o.translate.defaultSourceLang||"en",targetLang:e.jodit.o.translate.defaultTargetLang},e}return(0,a.C6)(e,t),e.prototype.__getProvider=function(){var t=this.jodit.options.translate.provider;if((0,o.K)(t)){if("google"===t)return new c.l(this.j);throw new Error("Unknown provider")}return t(this.jodit)},e.prototype.afterInit=function(t){var e=this,n=(0,s.e)(t.o.language,h.A.defaultOptions.language),i=(0,s.e)(t.o.language,n),r=this.__getProvider();t.registerCommand("translateOptions",{exec:function(){return(0,a.sH)(e,void 0,void 0,(function(){var e,n,i,o,s=this;return(0,a.YH)(this,(function(a){switch(a.label){case 0:return e=this.state,(n=t.dlg()).setHeader("Translate options"),[4,r.supportedLanguages()];case 1:return i=a.sent(),o=new u.g(n,this.state,{sourceList:i.langs,targetList:i.langs,onChange:function(t){e=t}}),n.setContent(o),n.setFooter([(0,l.$n)(t,"cancel","Cancel").onAction((function(){return n.close()})),(0,l.$n)(t,"ok","Save","primary").onAction((function(){s.state=e,n.close()}))]),o.bindDestruct(n),n.setSize(500,400).open(!0),[2]}}))}))},hotkeys:t.o.translate.hotkeys.translateOptions}).registerCommand("translate",{exec:function(){var n=t.s.html;if(n)return r.translate(n,e.state.sourceLang&&"auto"!==e.state.sourceLang?e.state.sourceLang:i,e.state.targetLang).then((function(e){t.s.range.deleteContents(),t.s.insertNode(t.createInside.text(e.text))})).catch((function(e){t.message.error((0,o.K)(e)?e:e.message)}));t.message.error("Select text for translate")},hotkeys:t.o.translate.hotkeys.translateSelection})},e.prototype.beforeDestruct=function(t){},e.requires=["license"],(0,a.Cg)([i.persistent],e.prototype,"state",void 0),e}(r.k);h.A.plugins.add("translate",g)},50679:function(t,e,n){"use strict";n.d(e,{F:function(){return h}});var a=n(31635),i=n(67259),o=n(53557),s=n(23545),r=n(9596),l=n(97099),c=n(65685),u=n(18531),h=function(t){function e(e,n){var a,i=t.call(this,e,n)||this;i.options=n,i.state={active:""},i.state.active=n.active;var o=new u.t(e,{placeholder:e.i18n("Filter"),icon:"search",onChange:i.__onChangeFilter,clearButton:!0});return null===(a=i.getElm("input"))||void 0===a||a.appendChild(o.container),i.__onActiveChange(),i}return(0,a.C6)(e,t),e.prototype.className=function(){return"UITranslateList"},Object.defineProperty(e.prototype,"items",{get:function(){return this.getElms("item")},enumerable:!1,configurable:!0}),e.prototype.render=function(t){var e=this,n=[];return Object.keys(t.list).sort().forEach((function(a){var i=t.list[a];n.push("<a role='button' tabindex='0' class='&__item' data-lang='".concat(i,"'>\n\t\t\t\t\t\t<span class='&__item-key'>").concat(i,"</span>\n\t\t\t\t\t\t<span class='&__item-title'>").concat(e.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'>".concat(n.join(""),"</div>\n\t\t</div>")},e.prototype.__onChangeFilter=function(t){this.items.forEach((function(e){var n,a,i=null!==(a=null===(n=e.textContent)||void 0===n?void 0:n.toLowerCase())&&void 0!==a?a:"";(0,l.C)(e,"data-hidden","true"!==(0,l.C)(e,"data-active")&&!i.includes(t.toLowerCase()))}))},e.prototype.__scrollToActive=function(){var t=this.container.querySelector('[data-active="true"]'),e=this.getElm("list");t&&e&&(0,r.scrollIntoViewIfNeeded)(t,e,this.j.od)},e.prototype.onClickItem=function(t){if("keydown"!==t.type||!("key"in t)||t.key===i.KEY_ENTER){var e=t.target;if(s.J.isHTMLElement(e)&&e.getAttribute("data-lang")){var n=(0,l.C)(e,"data-lang");this.options.onChange(n),this.state.active=n}}},e.prototype.__onActiveChange=function(){var t=this;this.items.forEach((function(e){return(0,l.C)(e,"data-active",(0,l.C)(e,"data-lang")===t.state.active)})),this.__scrollToActive()},(0,a.Cg)([(0,o.debounce)()],e.prototype,"__onChangeFilter",null),(0,a.Cg)([(0,o.watch)(":afterOpen")],e.prototype,"__scrollToActive",null),(0,a.Cg)([(0,o.watch)(["container:click","container:keydown"])],e.prototype,"onClickItem",null),(0,a.Cg)([(0,o.watch)("state.active"),(0,o.debounce)()],e.prototype,"__onActiveChange",null),(0,a.Cg)([o.component],e)}(c.D)},62001:function(t,e,n){"use strict";n.d(e,{g:function(){return r}});var a=n(31635),i=n(53557),o=n(76185),s=n(50679),r=function(t){function e(e,n,i){var o,r,l=t.call(this,e)||this;return l.state=n,l.options=i,l.__sourceList=new s.F(e,{list:i.sourceList,active:n.sourceLang,onChange:function(t){l.state.sourceLang=t,l.options.onChange((0,a.Cl)({},l.state))}}),null===(o=l.getElm("source-list"))||void 0===o||o.appendChild(l.__sourceList.container),l.__targetList=new s.F(e,{list:i.targetList,active:n.targetLang,onChange:function(t){l.state.targetLang=t,l.options.onChange((0,a.Cl)({},l.state))}}),null===(r=l.getElm("target-list"))||void 0===r||r.appendChild(l.__targetList.container),l}return(0,a.C6)(e,t),e.prototype.className=function(){return"UITranslateSettings"},e.prototype.render=function(){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>"},e.prototype.__onSwap=function(){var 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((0,a.Cl)({},this.state))},(0,a.Cg)([(0,i.watch)("arrow-swap:click")],e.prototype,"__onSwap",null),(0,a.Cg)([i.component],e)}(o.D$)}},function(t){return t(t.s=27477)}])}));
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 n=e();for(var a in n)("object"==typeof exports?exports:t)[a]=n[a]}}(self,(function(){return(self.webpackChunkjodit_pro=self.webpackChunkjodit_pro||[]).push([[954],{18732: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>'},4617: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>'},6865:function(t,e,n){"use strict";var a=n(80004),i=n(91288),o=n(18732),s=n.n(o),r=n(4617),l=n.n(r);i.T.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"},i.T.prototype.controls.translate={translate:{tooltip:"Translate selected text",icon:"translate",command:"translate",exec:function(t){t.execCommand("translate")},list:["Options"],childExec:function(t,e,n){t.execCommand("translate"+n.control.name)},mods:{stroke:!1}}},a.I.set("translate",l()).set("translate-swap",s())},92597:function(t,e,n){"use strict";n.d(e,{l:function(){return o}});var a=n(31635),i=(n(67259),n(28712),n(89281)),o=function(){function t(t){this.jodit=t}return t.prototype.__fetch=function(t,e){var n=this;void 0===e&&(e={});var i=this.jodit.o.translate.googleProviderOptions;return this.jodit.fetch(i.url+"?key="+i.key,{method:"POST",data:(0,a.Cl)((0,a.Cl)({},e),{ui:this.jodit.o.language}),contentType:"application/json; charset=utf-8",withCredentials:!1}).then((function(t){return t.json()})).catch((function(t){try{n.jodit.message.error(t.json().message)}catch(t){}}))},t.prototype.translate=function(t,e,n){return this.__fetch("translate",{q:t,source:e,target:n,format:"html"}).then((function(t){return{text:t.data.translations[0].translatedText}}))},t.prototype.supportedLanguages=function(){return Promise.resolve({langs:i.e})},t}()},89281:function(t,e,n){"use strict";n.d(e,{e:function(){return a}});var a={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"}},27477:function(t,e,n){"use strict";n.r(e),n.d(e,{Translate:function(){return g}});var a=n(31635),i=n(53557),o=n(26986),s=(n(28712),n(54614)),r=n(65564),l=n(13419),c=(n(6865),n(92597)),u=n(62001),h=n(25511),g=function(t){function e(){var e=t.apply(this,(0,a.fX)([],(0,a.zs)(arguments),!1))||this;return e.buttons=[{name:"translate.translate",group:"insert"}],e.state={sourceLang:e.jodit.o.translate.defaultSourceLang||"en",targetLang:e.jodit.o.translate.defaultTargetLang},e}return(0,a.C6)(e,t),e.prototype.__getProvider=function(){var t=this.jodit.options.translate.provider;if((0,o.K)(t)){if("google"===t)return new c.l(this.j);throw new Error("Unknown provider")}return t(this.jodit)},e.prototype.afterInit=function(t){var e=this,n=(0,s.e)(t.o.language,h.A.defaultOptions.language),i=(0,s.e)(t.o.language,n),r=this.__getProvider();t.registerCommand("translateOptions",{exec:function(){return(0,a.sH)(e,void 0,void 0,(function(){var e,n,i,o,s=this;return(0,a.YH)(this,(function(a){switch(a.label){case 0:return e=this.state,(n=t.dlg()).setHeader("Translate options"),[4,r.supportedLanguages()];case 1:return i=a.sent(),o=new u.g(n,this.state,{sourceList:i.langs,targetList:i.langs,onChange:function(t){e=t}}),n.setContent(o),n.setFooter([(0,l.$n)(t,"cancel","Cancel").onAction((function(){return n.close()})),(0,l.$n)(t,"ok","Save","primary").onAction((function(){s.state=e,n.close()}))]),o.bindDestruct(n),n.setSize(500,400).open(!0),[2]}}))}))},hotkeys:t.o.translate.hotkeys.translateOptions}).registerCommand("translate",{exec:function(){var n=t.s.html;if(n)return r.translate(n,e.state.sourceLang&&"auto"!==e.state.sourceLang?e.state.sourceLang:i,e.state.targetLang).then((function(e){t.s.range.deleteContents(),t.s.insertNode(t.createInside.text(e.text))})).catch((function(e){t.message.error((0,o.K)(e)?e:e.message)}));t.message.error("Select text for translate")},hotkeys:t.o.translate.hotkeys.translateSelection})},e.prototype.beforeDestruct=function(t){},e.requires=["license"],(0,a.Cg)([i.persistent],e.prototype,"state",void 0),e}(r.k);h.A.plugins.add("translate",g)},50679:function(t,e,n){"use strict";n.d(e,{F:function(){return h}});var a=n(31635),i=n(67259),o=n(53557),s=n(23545),r=n(9596),l=n(97099),c=n(65685),u=n(18531),h=function(t){function e(e,n){var a,i=t.call(this,e,n)||this;i.options=n,i.state={active:""},i.state.active=n.active;var o=new u.t(e,{placeholder:e.i18n("Filter"),icon:"search",onChange:i.__onChangeFilter,clearButton:!0});return null===(a=i.getElm("input"))||void 0===a||a.appendChild(o.container),i.__onActiveChange(),i}return(0,a.C6)(e,t),e.prototype.className=function(){return"UITranslateList"},Object.defineProperty(e.prototype,"items",{get:function(){return this.getElms("item")},enumerable:!1,configurable:!0}),e.prototype.render=function(t){var e=this,n=[];return Object.keys(t.list).sort().forEach((function(a){var i=t.list[a];n.push("<a role='button' tabindex='0' class='&__item' data-lang='".concat(i,"'>\n\t\t\t\t\t\t<span class='&__item-key'>").concat(i,"</span>\n\t\t\t\t\t\t<span class='&__item-title'>").concat(e.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'>".concat(n.join(""),"</div>\n\t\t</div>")},e.prototype.__onChangeFilter=function(t){this.items.forEach((function(e){var n,a,i=null!==(a=null===(n=e.textContent)||void 0===n?void 0:n.toLowerCase())&&void 0!==a?a:"";(0,l.C)(e,"data-hidden","true"!==(0,l.C)(e,"data-active")&&!i.includes(t.toLowerCase()))}))},e.prototype.__scrollToActive=function(){var t=this.container.querySelector('[data-active="true"]'),e=this.getElm("list");t&&e&&(0,r.scrollIntoViewIfNeeded)(t,e,this.j.od)},e.prototype.onClickItem=function(t){if("keydown"!==t.type||!("key"in t)||t.key===i.KEY_ENTER){var e=t.target;if(s.J.isHTMLElement(e)&&e.getAttribute("data-lang")){var n=(0,l.C)(e,"data-lang");this.options.onChange(n),this.state.active=n}}},e.prototype.__onActiveChange=function(){var t=this;this.items.forEach((function(e){return(0,l.C)(e,"data-active",(0,l.C)(e,"data-lang")===t.state.active)})),this.__scrollToActive()},(0,a.Cg)([(0,o.debounce)()],e.prototype,"__onChangeFilter",null),(0,a.Cg)([(0,o.watch)(":afterOpen")],e.prototype,"__scrollToActive",null),(0,a.Cg)([(0,o.watch)(["container:click","container:keydown"])],e.prototype,"onClickItem",null),(0,a.Cg)([(0,o.watch)("state.active"),(0,o.debounce)()],e.prototype,"__onActiveChange",null),(0,a.Cg)([o.component],e)}(c.D)},62001:function(t,e,n){"use strict";n.d(e,{g:function(){return r}});var a=n(31635),i=n(53557),o=n(76185),s=n(50679),r=function(t){function e(e,n,i){var o,r,l=t.call(this,e)||this;return l.state=n,l.options=i,l.__sourceList=new s.F(e,{list:i.sourceList,active:n.sourceLang,onChange:function(t){l.state.sourceLang=t,l.options.onChange((0,a.Cl)({},l.state))}}),null===(o=l.getElm("source-list"))||void 0===o||o.appendChild(l.__sourceList.container),l.__targetList=new s.F(e,{list:i.targetList,active:n.targetLang,onChange:function(t){l.state.targetLang=t,l.options.onChange((0,a.Cl)({},l.state))}}),null===(r=l.getElm("target-list"))||void 0===r||r.appendChild(l.__targetList.container),l}return(0,a.C6)(e,t),e.prototype.className=function(){return"UITranslateSettings"},e.prototype.render=function(){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>"},e.prototype.__onSwap=function(){var 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((0,a.Cl)({},this.state))},(0,a.Cg)([(0,i.watch)("arrow-swap:click")],e.prototype,"__onSwap",null),(0,a.Cg)([i.component],e)}(o.D$)}},function(t){return t(t.s=27477)}])}));
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
- * Version: v4.2.12
4
+ * Version: v4.2.18
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
- * Version: v4.2.12
4
+ * Version: v4.2.18
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * jodit-pro - PRO Version of Jodit Editor
3
3
  * Author: Chupurnov Valeriy <chupurnov@gmail.com>
4
- * Version: v4.2.12
4
+ * Version: v4.2.18
5
5
  * Url: https://xdsoft.net/jodit/pro/
6
6
  * License(s): SEE LICENSE IN LICENSE.md
7
7
  */
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- var e=this&&this.__decorate||function(e,t,o,s){var r,i=arguments.length,p=i<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,o):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(e,t,o,s);else for(var n=e.length-1;n>=0;n--)(r=e[n])&&(p=(i<3?r(p):i>3?r(t,o,p):r(t,o))||p);return i>3&&p&&Object.defineProperty(t,o,p),p};import{KEY_DOWN as t,KEY_ENTER as o,KEY_ESC as s,KEY_TAB as r,KEY_UP as i}from"../../core/constants.js";import{autobind as p,debounce as n}from"../../core/decorators.js";import{Dom as l}from"../../core/dom/dom.js";import{isArray as u,isFunction as c,isPromise as a,isString as m,position as h,trim as f}from"../../core/helpers.js";import{Plugin as d}from"../../core/plugin.js";import{Popup as y}from"../../core/ui/popup/popup.js";import{Autocomplete as j}from"./ui/autocomplete.js";import{getTextLeftOfCursor as w,replaceTextLeftOfCursorAfterSpace as g}from"./helpers.js";import{Config as C}from"../../config.js";import{JoditPro as R}from"../../jodit-pro.js";C.prototype.autocomplete={sources:[],maxItems:50,isMatchedQuery:(e,t)=>0===t.toLowerCase().indexOf(e.toLowerCase()),itemRenderer:e=>e.title??e.value,insertValueRenderer:e=>e.value+"&nbsp;"};export class autocomplete extends d{constructor(e){super(e),this.hasStyle=!R.fatMode,this.sources=[]}afterInit(e){this.popup=new y(e),this.popup.setMod("padding",!1),this.list=new j(e),this.popup.setContent(this.list.container),e.e.on("select.autocomplete",(t=>{let o=t.value;c(t.insertValueRenderer)&&(o=t.insertValueRenderer(t)),l.isNode(o)||(o=e.createInside.fromHTML(o)),g(e.s.range,o),this.j.s.setCursorAfter(o),this.j.synchronizeValues(),this.popup.close()})).on("keydown.autocomplete",this.onKeyDown).on("keydown.autocomplete",this.onKeyControlDown,{top:!0}).on("beforeEnter.autocomplete",this.onEnter,{top:!0}).on("autocomplete.autocomplete",this.onAutoComplete).on("registerAutocompleteSource.autocomplete",this.registerAutocompleteSource)}registerAutocompleteSource(e){this.sources.push(e)}static isControlKey(e){return e===t||e===i||e===o||e===r}async onKeyDown(e){if(e.key===s)return void(this.popup.isOpened&&this.popup.close());const{s:t}=this.j;if(autocomplete.isControlKey(e.key)||!t.isInsideArea||!t.isCollapsed)return;const o=this.j.s.sel?.rangeCount?this.j.s.sel?.getRangeAt(0):null,r=o&&w(o).split(" ").pop();if(r&&f(r).length){const e=await this.onAutoComplete(r);if(e.length)return this.openPopup(e)}this.popup.isOpened&&this.popup.close()}onKeyControlDown(e){if(this.popup.isOpened&&autocomplete.isControlKey(e.key)){switch(e.key){case t:this.list.selectNext();break;case i:this.list.selectPrevious();break;case r:this.list.select()}return this.j.e.stopPropagation(e.type),!1}}onEnter(){if(this.popup.isOpened)return this.list.select(),!1}async onAutoComplete(e){const t=[];return await Promise.all(this.sources.concat(this.j.o.autocomplete.sources).map((async o=>{t.push(...await this.resolveFeed(e,o))}))),t}async resolveFeed(e,t,o){let s;if(a(t)&&(t=await t),c(t))s=await t(e);else if(u(t)){const o=t,{isMatchedQuery:r}=this.j.o.autocomplete;s=o.filter((t=>m(t)?r(e,t):r(e,t.value))).map((e=>m(e)?{title:e,value:e}:e))}else s=await this.resolveFeed(e,t.feed,t);if(this.j.isDestructed)return[];if(s&&u(s)){const{itemRenderer:e,insertValueRenderer:t,maxItems:r}=this.j.o.autocomplete;return s=s.map((s=>({itemRenderer:o?.itemRenderer??e,insertValueRenderer:o?.insertValueRenderer??t,...s}))),s.slice(0,r)}return[]}openPopup(e){this.list.build(e),this.popup.open((()=>{const{j:e}=this,t=e.s.range.getBoundingClientRect(),o={left:t.left,top:t.top,height:t.height,width:t.width};if(e.o.iframe&&e.iframe){const t=h(e.iframe,e);o.top+=t.top,o.left+=t.left}return o}))}beforeDestruct(e){e.e.off(this.list).off("keydown.autocomplete",this.onKeyDown).off("autocomplete.autocomplete",this.onAutoComplete).off(".autocomplete"),this.list.destruct(),this.popup.destruct()}}autocomplete.requires=["enter","license"],e([p],autocomplete.prototype,"registerAutocompleteSource",null),e([n()],autocomplete.prototype,"onKeyDown",null),e([p],autocomplete.prototype,"onKeyControlDown",null),e([p],autocomplete.prototype,"onEnter",null),e([p],autocomplete.prototype,"onAutoComplete",null),e([p],autocomplete.prototype,"resolveFeed",null),R.plugins.add("autocomplete",autocomplete);
6
+ var e=this&&this.__decorate||function(e,t,o,s){var r,i=arguments.length,p=i<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,o):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)p=Reflect.decorate(e,t,o,s);else for(var n=e.length-1;n>=0;n--)(r=e[n])&&(p=(i<3?r(p):i>3?r(t,o,p):r(t,o))||p);return i>3&&p&&Object.defineProperty(t,o,p),p};import{KEY_DOWN as t,KEY_ENTER as o,KEY_ESC as s,KEY_TAB as r,KEY_UP as i}from"../../core/constants.js";import{autobind as p,debounce as n}from"../../core/decorators.js";import{Dom as l}from"../../core/dom/dom.js";import{isArray as u,isFunction as c,isPromise as a,isString as m,position as h,trim as f}from"../../core/helpers.js";import{Plugin as d}from"../../core/plugin.js";import{Popup as y}from"../../core/ui/popup/popup.js";import{Config as j}from"../../config.js";import{Autocomplete as w}from"./ui/autocomplete.js";import{getTextLeftOfCursor as g,replaceTextLeftOfCursorAfterSpace as C}from"./helpers.js";import{JoditPro as R}from"../../jodit-pro.js";j.prototype.autocomplete={sources:[],maxItems:50,isMatchedQuery:(e,t)=>0===t.toLowerCase().indexOf(e.toLowerCase()),itemRenderer:e=>e.title??e.value,insertValueRenderer:e=>e.value+"&nbsp;"};export class autocomplete extends d{constructor(e){super(e),this.hasStyle=!R.fatMode,this.sources=[]}afterInit(e){this.popup=new y(e),this.popup.setMod("padding",!1),this.list=new w(e),this.popup.setContent(this.list.container),e.e.on("select.autocomplete",(t=>{let o=t.value;c(t.insertValueRenderer)&&(o=t.insertValueRenderer(t)),l.isNode(o)||(o=e.createInside.fromHTML(o)),C(e.s.range,o),this.j.s.setCursorAfter(o),this.j.synchronizeValues(),this.popup.close()})).on("keydown.autocomplete",this.onKeyDown).on("keydown.autocomplete",this.onKeyControlDown,{top:!0}).on("beforeEnter.autocomplete",this.onEnter,{top:!0}).on("autocomplete.autocomplete",this.onAutoComplete).on("registerAutocompleteSource.autocomplete",this.registerAutocompleteSource)}registerAutocompleteSource(e){this.sources.push(e)}static isControlKey(e){return e===t||e===i||e===o||e===r}async onKeyDown(e){if(e.key===s)return void(this.popup.isOpened&&this.popup.close());const{s:t}=this.j;if(autocomplete.isControlKey(e.key)||!t.isInsideArea||!t.isCollapsed)return;const o=this.j.s.sel?.rangeCount?this.j.s.sel?.getRangeAt(0):null,r=o&&g(o).split(" ").pop();if(r&&f(r).length){const e=await this.onAutoComplete(r);if(e.length)return this.openPopup(e)}this.popup.isOpened&&this.popup.close()}onKeyControlDown(e){if(this.popup.isOpened&&autocomplete.isControlKey(e.key)){switch(e.key){case t:this.list.selectNext();break;case i:this.list.selectPrevious();break;case r:this.list.select()}return this.j.e.stopPropagation(e.type),!1}}onEnter(){if(this.popup.isOpened)return this.list.select(),!1}async onAutoComplete(e){const t=[];return await Promise.all(this.sources.concat(this.j.o.autocomplete.sources).map((async o=>{t.push(...await this.resolveFeed(e,o))}))),t}async resolveFeed(e,t,o){let s;if(a(t)&&(t=await t),c(t))s=await t(e);else if(u(t)){const o=t,{isMatchedQuery:r}=this.j.o.autocomplete;s=o.filter((t=>m(t)?r(e,t):r(e,t.value))).map((e=>m(e)?{title:e,value:e}:e))}else s=await this.resolveFeed(e,t.feed,t);if(this.j.isDestructed)return[];if(s&&u(s)){const{itemRenderer:e,insertValueRenderer:t,maxItems:r}=this.j.o.autocomplete;return s=s.map((s=>({itemRenderer:o?.itemRenderer??e,insertValueRenderer:o?.insertValueRenderer??t,...s}))),s.slice(0,r)}return[]}openPopup(e){this.list.build(e),this.popup.open((()=>{const{j:e}=this,t=e.s.range.getBoundingClientRect(),o={left:t.left,top:t.top,height:t.height,width:t.width};if(e.o.iframe&&e.iframe){const t=h(e.iframe,e);o.top+=t.top,o.left+=t.left}return o}))}beforeDestruct(e){e.e.off(this.list).off("keydown.autocomplete",this.onKeyDown).off("autocomplete.autocomplete",this.onAutoComplete).off(".autocomplete"),this.list.destruct(),this.popup.destruct()}}autocomplete.requires=["enter","license"],e([p],autocomplete.prototype,"registerAutocompleteSource",null),e([n()],autocomplete.prototype,"onKeyDown",null),e([p],autocomplete.prototype,"onKeyControlDown",null),e([p],autocomplete.prototype,"onEnter",null),e([p],autocomplete.prototype,"onAutoComplete",null),e([p],autocomplete.prototype,"resolveFeed",null),R.plugins.add("autocomplete",autocomplete);
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import{extendLang as o}from"../../core/global.js";import{Icon as t}from"../../core/ui/icon.js";import e from"./assets/restore.svg.js";import*as r from"./langs/index.js";import{Config as s}from"../../config.js";s.prototype.backup={interval:30,limit:50,dialogWidth:700,hotkeys:["ctrl+shift+b","cmd+shift+b"]},s.prototype.controls.backup={store:{command:"saveBackup",text:"Save backup now"},restore:{tooltip:"Restore",list:["backup.store"],exec(o){o.execCommand("openBackupDialog")}}},t.set("restore",e),o(r);
6
+ import{extendLang as o}from"../../core/global.js";import{Icon as t}from"../../core/ui/icon.js";import{Config as e}from"../../config.js";import r from"./assets/restore.svg.js";import*as s from"./langs/index.js";e.prototype.backup={interval:30,limit:50,dialogWidth:700,hotkeys:["ctrl+shift+b","cmd+shift+b"]},e.prototype.controls.backup={store:{command:"saveBackup",text:"Save backup now"},restore:{tooltip:"Restore",list:["backup.store"],exec(o){o.execCommand("openBackupDialog")}}},t.set("restore",r),o(s);
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import{isArray as o}from"../../core/helpers/checker/is-array.js";import t from"./icon.svg.js";import{Config as e}from"../../config.js";e.prototype.controls.buttonGenerator={tooltip:"Button generator",icon:t,isActive:o=>Boolean(o.e.fire("isButtonGeneratorOpened")),exec:(o,t)=>{o.e.fire("toggleButtonGenerator",t)}},e.prototype.popup.button=["buttonGenerator"],o(e.prototype.popup.a)&&e.prototype.popup.a.push("buttonGenerator");
6
+ import{isArray as o}from"../../core/helpers/checker/is-array.js";import{Config as t}from"../../config.js";import e from"./icon.svg.js";t.prototype.controls.buttonGenerator={tooltip:"Button generator",icon:e,isActive:o=>Boolean(o.e.fire("isButtonGeneratorOpened")),exec:(o,t)=>{o.e.fire("toggleButtonGenerator",t)}},t.prototype.popup.button=["buttonGenerator"],o(t.prototype.popup.a)&&t.prototype.popup.a.push("buttonGenerator");
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import{dataBind as o}from"../../core/helpers/utils/data-bind.js";import e from"./icon.svg.js";import{Config as c}from"../../config.js";c.prototype.controls.changeCase={tooltip:"Change case",icon:e,list:["lowercase","UPPERCASE","Title Case"],isDisabled:o=>!o.s.current(),exec(e,c,{control:s}){const a=s.command+"Selected",n=s.args&&s.args[0]||o(e,a);if(!n||!s.command)return!1;o(e,a,n),e.execCommand(s.command,null,n)},command:"changeCase"};
6
+ import{dataBind as o}from"../../core/helpers/utils/data-bind.js";import{Config as e}from"../../config.js";import c from"./icon.svg.js";e.prototype.controls.changeCase={tooltip:"Change case",icon:c,list:["lowercase","UPPERCASE","Title Case"],isDisabled:o=>!o.s.current(),exec(e,c,{control:s}){const a=s.command+"Selected",n=s.args&&s.args[0]||o(e,a);if(!n||!s.command)return!1;o(e,a,n),e.execCommand(s.command,null,n)},command:"changeCase"};
@@ -1 +1 @@
1
- import{Emoji as o}from"./ui/emoji.js";import e from"./emoji.json.js";import t from"./emoji.svg.js";import{Config as r}from"../../config.js";r.prototype.emoji={data:()=>e,enableAutoComplete:!0,recentCountLimit:10},r.prototype.controls.emoji={tooltip:"Insert Emoji",icon:t,popup:(e,t,r)=>{e.s.save();const s=o.getInstance(e,(o=>{e.s.restore(),e.s.insertNode(e.createInside.text(o),!0),r()}));return e.e.one("beforePopupClose",(()=>{e.s.restore()})),s.container}};
1
+ import{Config as o}from"../../config.js";import{Emoji as e}from"./ui/emoji.js";import t from"./emoji.json.js";import r from"./emoji.svg.js";o.prototype.emoji={data:()=>t,enableAutoComplete:!0,recentCountLimit:10},o.prototype.controls.emoji={tooltip:"Insert Emoji",icon:r,popup:(o,t,r)=>{o.s.save();const s=e.getInstance(o,(e=>{o.s.restore(),o.s.insertNode(o.createInside.text(e),!0),r()}));return o.e.one("beforePopupClose",(()=>{o.s.restore()})),s.container}};
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import{Dom as o}from"../../core/dom/dom.js";import t from"./assets/export.svg.js";import{Config as r}from"../../config.js";r.prototype.exportDocs={css:"",pdf:{allow:!0,options:{format:"A4",page_orientation:"portrait"}}},r.prototype.controls.exportDocs={tooltip:"Export",isDisabled:t=>o.isEmptyContent(t.editor),icon:t,list:{exportToPdf:"Export to PDF"},command:"exportToPDF"};
6
+ import{Dom as o}from"../../core/dom/dom.js";import{Config as t}from"../../config.js";import r from"./assets/export.svg.js";t.prototype.exportDocs={css:"",pdf:{allow:!0,options:{format:"A4",page_orientation:"portrait"}}},t.prototype.controls.exportDocs={tooltip:"Export",isDisabled:t=>o.isEmptyContent(t.editor),icon:r,list:{exportToPdf:"Export to PDF"},command:"exportToPDF"};
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- var e=this&&this.__decorate||function(e,t,s,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,s):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,s,i);else for(var n=e.length-1;n>=0;n--)(r=e[n])&&(a=(o<3?r(a):o>3?r(t,s,a):r(t,s))||a);return o>3&&a&&Object.defineProperty(t,s,a),a};import{IS_PROD as t,KEY_DELETE as s,KEY_DOWN as i,KEY_ENTER as r,KEY_LEFT as o,KEY_RIGHT as a,KEY_UP as n}from"../../core/constants.js";import{autobind as h,cache as l,component as m,derive as c,watch as p}from"../../core/decorators.js";import{ConfigProto as d,css as u,isAbort as f,isString as g,isValidName as w}from"../../core/helpers.js";import{Dlgs as v}from"../../core/traits.js";import{Dom as b,observable as y}from"../../modules.js";import{Dialog as P}from"../../modules/dialog.js";import{makeDataProvider as R}from"../../modules/file-browser/factories.js";import{openImageEditor as M}from"../../modules/image-editor/image-editor.js";import"./ui/assets/icons/index.js";import{ContextMenuManager as j}from"./helpers/context-menu.js";import{parentPath as F}from"./helpers/helpers.js";import{HistoryManager as S}from"./helpers/history-manager.js";import{LoadingManager as E}from"./helpers/loading-manager.js";import{PersistentStore as C}from"./helpers/persistent-store.js";import{StateManager as _}from"./helpers/state-manager.js";import{UIBrowserHeader as B}from"./ui/header/header.js";import{UILightBox as O}from"./ui/lightboox/lightbox.js";import{UIBrowserPanel as k}from"./ui/panel/panel.js";import{UIProgress as x}from"./ui/progress/progress.js";import{Config as I}from"../../config.js";import{JoditPro as L}from"../../jodit-pro.js";import{license as N}from"../license/license.js";let D=class FileBrowserPro extends P{className(){return"FileBrowserPro"}lock(e="any"){return this.container.classList.add("jodit_disabled"),super.lock(e)}unlock(){return this.container.classList.remove("jodit_disabled"),super.unlock()}status(e,s=!(e instanceof Error)){f(e)||(t||g(e)||console.error(e),this.message.message(g(e)?e:e.message,s?"success":"error",this.options.howLongShowMsg))}get progressbar(){return new x(this,this.stateManager.state)}constructor(e){super(d(Object.assign(e||{},{resizable:!0,draggable:!0,toolbarButtons:e?.toolbarButtons||I.defaultOptions.filebrowser.buttons,buttons:L.atom(["filebrowser.settings","fullsize","dialog.close"])}),I.defaultOptions.filebrowser)),this.dataProvider=R(this,this.options),this.state=y({onSelectCallBack:null,theme:"default",showSideBar:!0,showFavorites:!0,showSettings:!1,showPreview:!1,withFolders:!0,foldersPosition:"bottom",info:"",metaInfo:null,currentPath:"",currentSource:"",currentBaseUrl:"",tree:[],activeElements:[],favorites:[],progress:0,lastSelectedIndex:0,elements:[],messages:[],sources:[],view:"tiles",tileSize:"default",sortBy:"name-asc",filterWord:"",onlyImages:!1}),this.persistent=new C(this,this.state),this.loadingManager=new E(this,this.state),this.stateManager=new _(this.state),this.historyManager=new S(this,this.state),this.contextMenuManager=new j(this),this.header=new B(this,this.options,this.stateManager),this.panel=new k(this,this.stateManager),this.files=this.panel,this.tree=this.panel,N.make(this),!this.persistent.theme&&this.options.theme&&(this.persistent.theme=this.options.theme),this.panel.append(this.progressbar),this.toolbar.setMod("mode","header"),this.setSize(Math.min(this.options.width,screen.width),Math.min(this.options.height,screen.height)).setHeader(this.header),this.onResizeWindow(),this.initUploader(),this.onChangeTheme(),this.fullFillOptions(),this.dataProvider.onProgress((e=>{0===e&&(e=30),this.state.progress=e})),this.e.on("beforeClose",this.removeGlobalListeners),this.e.fire("afterInit"),L.prototype.afterInitHook.call(this)}addDisclaimer(e){this.dialog.appendChild(e)}async open(e=this.o.defaultCallback,t){return this.state.onlyImages=Boolean(t),this.prepareOpening(e),super.open(this.panel.container),this.e.fire("update.filebrowser")}onResizeWindow(){u(this.dialog,{maxWidth:screen.width,minHeight:Math.min(this.options.height,screen.height),minWidth:Math.min(this.options.width,screen.width)})}onChangePath(){const{currentPath:e,currentSource:t}=this.state;this.uploader.setPath(e),this.uploader.setSource(t)}onChangeTheme(){this.setMod("theme",this.state.theme),this.header.setMod("theme",this.state.theme),this.panel.setMod("theme",this.state.theme),this.options.theme=this.state.theme}onToggleSettings(){this.state.showSettings=!this.state.showSettings}prepareOpening(e){this.registerGlobalListeners(),e&&(this.state.onSelectCallBack=t=>{this.close(),e(t)}),this.persistent.syncWithState()}registerGlobalListeners(){this.e.on(this.ow,"keydown",this.onKeyPress)}onKeyPress(e){const{activeElement:t}=this.od;if(!this.state.activeElements.length||!t||!b.isOrContains(this.panel.items.container,t))return;const h=this.state.elements;switch(e.key){case r:return this.onChooseItems();case s:return this.onFileRemove();case a:case o:case i:case n:{const t=e.key===a||e.key===i,s=this.state.lastSelectedIndex;let r;if([a,o].includes(e.key))r=t?h[s+1]?s+1:0:h[s-1]?s-1:h.length-1;else{const{countInRow:e}=this.panel;r=Math.round(((s+1)/e+(t?1:-1))*e-1)}return h[r]&&this.stateManager.addActive(h[r],e.shiftKey),!1}}}removeGlobalListeners(){this.e.off(this.ow,"keydown",this.onKeyPress)}onFileRemove(){this.state.activeElements.length&&this.confirm("Are you sure?","Delete",(e=>{e&&this.__itemsRemove(this.state.activeElements)})).bindDestruct(this)}__itemsRemove(e){if(!e.length)return Promise.resolve();const t=[];return e.forEach((e=>{t.push("folder"===e.type?this.__folderRemove(F(e.path),e.name??"",e.sourceName):this.__removeFile(e.file||e.name||"",e.sourceName))})),this.state.activeElements.forEach((e=>{this.stateManager.isFavorite(e)&&this.stateManager.toggleFavorite(e)})),this.state.activeElements=[],Promise.allSettled(t).then((()=>Promise.allSettled([this.loadingManager.loadItems(),this.loadingManager.loadFolders()])))}__removeFile(e,t){return this.dataProvider.fileRemove(this.state.currentPath,e,t).then((t=>{this.status(t||this.i18n('File "%s" was deleted',e),!0)})).catch(this.status)}__folderRemove(e,t,s){return this.dataProvider.folderRemove(e,t,s).then((i=>{this.status(i||this.i18n('Folder "%s" was deleted',t),!0),this.state.currentPath===e&&(this.state.currentPath=F(e),this.state.currentSource=s)})).catch(this.status)}onFileEdit(){if(1===this.state.activeElements.length){const[e]=this.state.activeElements;M.call(this,e.fileURL,e.file||"",e.path,e.sourceName,void 0,this.status)}}onFolderRename(e){this.prompt("Enter new name","Rename",(t=>{if(!w(t)||t===e.name)return this.status(this.i18n("Enter new name")),!1;this.dataProvider.folderRename(F(e.path),e.name,t,e.sourceName).then((s=>{this.state.activeElements=[],this.status(s,!0),this.state.currentPath=F(e.path)+"/"+t,this.state.currentSource=e.sourceName,this.historyManager.updateCurrent(),this.loadingManager.loadFolders()})).catch(this.status)}),this.i18n("type name"),e.name).bindDestruct(this)}onFolderRemove(e){this.confirm("Are you sure?","Delete",(t=>{t&&this.__itemsRemove([{type:"folder",name:e.name,path:e.path,sourceName:e.sourceName}])})).bindDestruct(this)}onFolderCreate(e){this.prompt("Enter Directory name","Create directory",(t=>{const s=e.path||"/";this.dataProvider.createFolder(t,e.path||"/",e.sourceName).then((()=>{this.state.currentSource===e.sourceName&&this.state.currentPath===s?this.e.fire("update.filebrowser"):(this.state.currentSource=e.sourceName,this.state.currentPath=s),this.historyManager.updateCurrent()}),this.status)}),this.i18n("type name")).bindDestruct(this)}onFileRename(e){const t=e.file||e.name||"";1===this.state.activeElements.length&&t&&this.prompt("Enter new name","Rename",(e=>{if(!w(e))return this.status(this.i18n("Enter new name")),!1;this.dataProvider.fileRename(this.state.currentPath,t,e,this.state.currentSource).then((e=>{this.state.activeElements=[],this.status(e,!0),this.loadingManager.loadItems()})).catch(this.status)}),this.i18n("type name"),t).bindDestruct(this)}onChooseItems(){const e=this.stateManager.state.activeElements;if(e.length){if("folder"===e[0].type)return this.state.currentPath=this.state.currentPath+"/"+e[0].name,this.state.currentSource=e[0].sourceName,void this.e.fire("afterOpenFolder.filebrowser");this.state.onSelectCallBack?this.stateManager.callSelectHandler():this.onOpenLightBox(e[0])}}onOpenLightBox(e){O.open(this,e,this.state.elements)}initUploader(){const e=this,t=d(e.o.uploader||{},I.defaultOptions.uploader),uploadHandler=()=>this.loadingManager.loadItems();e.uploader=e.getInstance("Uploader",t),e.uploader.bind(e.panel.container,uploadHandler,e.status),e.e.on("bindUploader.filebrowser",(t=>{e.uploader.bind(t,uploadHandler,e.status)}))}destruct(){this.removeGlobalListeners(),this.header.destruct(),this.panel.destruct(),super.destruct()}fullFillOptions(){["getLocalFileByUrl","crop","resize","create","fileMove","folderMove","fileRename","folderRename","fileRemove","folderRemove","folder","items","permissions"].forEach((e=>{null!=this.options[e]&&(this.options[e]=d(this.options[e],this.o.ajax))}))}};e([h],D.prototype,"status",null),e([l],D.prototype,"progressbar",null),e([p(":resize",{context:window})],D.prototype,"onResizeWindow",null),e([p(["state.currentPath","state.currentSource"])],D.prototype,"onChangePath",null),e([p("state.theme")],D.prototype,"onChangeTheme",null),e([p(":toggleSettings.filebrowser")],D.prototype,"onToggleSettings",null),e([h],D.prototype,"onKeyPress",null),e([h],D.prototype,"removeGlobalListeners",null),e([p(":fileRemove.filebrowser")],D.prototype,"onFileRemove",null),e([p(":edit.filebrowser")],D.prototype,"onFileEdit",null),e([p(":folderRename.filebrowser")],D.prototype,"onFolderRename",null),e([p(":folderRemove.filebrowser")],D.prototype,"onFolderRemove",null),e([p(":folderCreate.filebrowser")],D.prototype,"onFolderCreate",null),e([p(":fileRename.filebrowser")],D.prototype,"onFileRename",null),e([p(":select.filebrowser")],D.prototype,"onChooseItems",null),e([p(":openLightBox.filebrowser")],D.prototype,"onOpenLightBox",null),D=e([m,c(v)],D);export{D as FileBrowserPro};Object.defineProperty(L.modules,"FileBrowserPro",{value:D,writable:!1,enumerable:!0,configurable:!0});
6
+ var e=this&&this.__decorate||function(e,t,s,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,s):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,s,i);else for(var n=e.length-1;n>=0;n--)(r=e[n])&&(a=(o<3?r(a):o>3?r(t,s,a):r(t,s))||a);return o>3&&a&&Object.defineProperty(t,s,a),a};import{IS_PROD as t,KEY_DELETE as s,KEY_DOWN as i,KEY_ENTER as r,KEY_LEFT as o,KEY_RIGHT as a,KEY_UP as n}from"../../core/constants.js";import{autobind as h,cache as l,component as m,derive as c,watch as p}from"../../core/decorators.js";import{ConfigProto as d,css as u,isAbort as f,isString as g,isValidName as w}from"../../core/helpers.js";import{Dlgs as v}from"../../core/traits.js";import{Config as b}from"../../config.js";import{Dom as y,observable as P}from"../../modules.js";import{Dialog as R}from"../../modules/dialog.js";import{makeDataProvider as M}from"../../modules/file-browser/factories.js";import{openImageEditor as j}from"../../modules/image-editor/image-editor.js";import"./ui/assets/icons/index.js";import{ContextMenuManager as F}from"./helpers/context-menu.js";import{parentPath as S}from"./helpers/helpers.js";import{HistoryManager as E}from"./helpers/history-manager.js";import{LoadingManager as C}from"./helpers/loading-manager.js";import{PersistentStore as _}from"./helpers/persistent-store.js";import{StateManager as B}from"./helpers/state-manager.js";import{UIBrowserHeader as O}from"./ui/header/header.js";import{UILightBox as k}from"./ui/lightboox/lightbox.js";import{UIBrowserPanel as x}from"./ui/panel/panel.js";import{UIProgress as I}from"./ui/progress/progress.js";import{JoditPro as L}from"../../jodit-pro.js";import{license as N}from"../license/license.js";let D=class FileBrowserPro extends R{className(){return"FileBrowserPro"}lock(e="any"){return this.container.classList.add("jodit_disabled"),super.lock(e)}unlock(){return this.container.classList.remove("jodit_disabled"),super.unlock()}status(e,s=!(e instanceof Error)){f(e)||(t||g(e)||console.error(e),this.message.message(g(e)?e:e.message,s?"success":"error",this.options.howLongShowMsg))}get progressbar(){return new I(this,this.stateManager.state)}constructor(e){super(d(Object.assign(e||{},{resizable:!0,draggable:!0,toolbarButtons:e?.toolbarButtons||b.defaultOptions.filebrowser.buttons,buttons:L.atom(["filebrowser.settings","fullsize","dialog.close"])}),b.defaultOptions.filebrowser)),this.dataProvider=M(this,this.options),this.state=P({onSelectCallBack:null,theme:"default",showSideBar:!0,showFavorites:!0,showSettings:!1,showPreview:!1,withFolders:!0,foldersPosition:"bottom",info:"",metaInfo:null,currentPath:"",currentSource:"",currentBaseUrl:"",tree:[],activeElements:[],favorites:[],progress:0,lastSelectedIndex:0,elements:[],messages:[],sources:[],view:"tiles",tileSize:"default",sortBy:"name-asc",filterWord:"",onlyImages:!1}),this.persistent=new _(this,this.state),this.loadingManager=new C(this,this.state),this.stateManager=new B(this.state),this.historyManager=new E(this,this.state),this.contextMenuManager=new F(this),this.header=new O(this,this.options,this.stateManager),this.panel=new x(this,this.stateManager),this.files=this.panel,this.tree=this.panel,N.make(this),!this.persistent.theme&&this.options.theme&&(this.persistent.theme=this.options.theme),this.panel.append(this.progressbar),this.toolbar.setMod("mode","header"),this.setSize(Math.min(this.options.width,screen.width),Math.min(this.options.height,screen.height)).setHeader(this.header),this.onResizeWindow(),this.initUploader(),this.onChangeTheme(),this.fullFillOptions(),this.dataProvider.onProgress((e=>{0===e&&(e=30),this.state.progress=e})),this.e.on("beforeClose",this.removeGlobalListeners),this.e.fire("afterInit"),L.prototype.afterInitHook.call(this)}addDisclaimer(e){this.dialog.appendChild(e)}async open(e=this.o.defaultCallback,t){return this.state.onlyImages=Boolean(t),this.prepareOpening(e),super.open(this.panel.container),this.e.fire("update.filebrowser")}onResizeWindow(){u(this.dialog,{maxWidth:screen.width,minHeight:Math.min(this.options.height,screen.height),minWidth:Math.min(this.options.width,screen.width)})}onChangePath(){const{currentPath:e,currentSource:t}=this.state;this.uploader.setPath(e),this.uploader.setSource(t)}onChangeTheme(){this.setMod("theme",this.state.theme),this.header.setMod("theme",this.state.theme),this.panel.setMod("theme",this.state.theme),this.options.theme=this.state.theme}onToggleSettings(){this.state.showSettings=!this.state.showSettings}prepareOpening(e){this.registerGlobalListeners(),e&&(this.state.onSelectCallBack=t=>{this.close(),e(t)}),this.persistent.syncWithState()}registerGlobalListeners(){this.e.on(this.ow,"keydown",this.onKeyPress)}onKeyPress(e){const{activeElement:t}=this.od;if(!this.state.activeElements.length||!t||!y.isOrContains(this.panel.items.container,t))return;const h=this.state.elements;switch(e.key){case r:return this.onChooseItems();case s:return this.onFileRemove();case a:case o:case i:case n:{const t=e.key===a||e.key===i,s=this.state.lastSelectedIndex;let r;if([a,o].includes(e.key))r=t?h[s+1]?s+1:0:h[s-1]?s-1:h.length-1;else{const{countInRow:e}=this.panel;r=Math.round(((s+1)/e+(t?1:-1))*e-1)}return h[r]&&this.stateManager.addActive(h[r],e.shiftKey),!1}}}removeGlobalListeners(){this.e.off(this.ow,"keydown",this.onKeyPress)}onFileRemove(){this.state.activeElements.length&&this.confirm("Are you sure?","Delete",(e=>{e&&this.__itemsRemove(this.state.activeElements)})).bindDestruct(this)}__itemsRemove(e){if(!e.length)return Promise.resolve();const t=[];return e.forEach((e=>{t.push("folder"===e.type?this.__folderRemove(S(e.path),e.name??"",e.sourceName):this.__removeFile(e.file||e.name||"",e.sourceName))})),this.state.activeElements.forEach((e=>{this.stateManager.isFavorite(e)&&this.stateManager.toggleFavorite(e)})),this.state.activeElements=[],Promise.allSettled(t).then((()=>Promise.allSettled([this.loadingManager.loadItems(),this.loadingManager.loadFolders()])))}__removeFile(e,t){return this.dataProvider.fileRemove(this.state.currentPath,e,t).then((t=>{this.status(t||this.i18n('File "%s" was deleted',e),!0)})).catch(this.status)}__folderRemove(e,t,s){return this.dataProvider.folderRemove(e,t,s).then((i=>{this.status(i||this.i18n('Folder "%s" was deleted',t),!0),this.state.currentPath===e&&(this.state.currentPath=S(e),this.state.currentSource=s)})).catch(this.status)}onFileEdit(){if(1===this.state.activeElements.length){const[e]=this.state.activeElements;j.call(this,e.fileURL,e.file||"",e.path,e.sourceName,void 0,this.status)}}onFolderRename(e){this.prompt("Enter new name","Rename",(t=>{if(!w(t)||t===e.name)return this.status(this.i18n("Enter new name")),!1;this.dataProvider.folderRename(S(e.path),e.name,t,e.sourceName).then((s=>{this.state.activeElements=[],this.status(s,!0),this.state.currentPath=S(e.path)+"/"+t,this.state.currentSource=e.sourceName,this.historyManager.updateCurrent(),this.loadingManager.loadFolders()})).catch(this.status)}),this.i18n("type name"),e.name).bindDestruct(this)}onFolderRemove(e){this.confirm("Are you sure?","Delete",(t=>{t&&this.__itemsRemove([{type:"folder",name:e.name,path:e.path,sourceName:e.sourceName}])})).bindDestruct(this)}onFolderCreate(e){this.prompt("Enter Directory name","Create directory",(t=>{const s=e.path||"/";this.dataProvider.createFolder(t,e.path||"/",e.sourceName).then((()=>{this.state.currentSource===e.sourceName&&this.state.currentPath===s?this.e.fire("update.filebrowser"):(this.state.currentSource=e.sourceName,this.state.currentPath=s),this.historyManager.updateCurrent()}),this.status)}),this.i18n("type name")).bindDestruct(this)}onFileRename(e){const t=e.file||e.name||"";1===this.state.activeElements.length&&t&&this.prompt("Enter new name","Rename",(e=>{if(!w(e))return this.status(this.i18n("Enter new name")),!1;this.dataProvider.fileRename(this.state.currentPath,t,e,this.state.currentSource).then((e=>{this.state.activeElements=[],this.status(e,!0),this.loadingManager.loadItems()})).catch(this.status)}),this.i18n("type name"),t).bindDestruct(this)}onChooseItems(){const e=this.stateManager.state.activeElements;if(e.length){if("folder"===e[0].type)return this.state.currentPath=this.state.currentPath+"/"+e[0].name,this.state.currentSource=e[0].sourceName,void this.e.fire("afterOpenFolder.filebrowser");this.state.onSelectCallBack?this.stateManager.callSelectHandler():this.onOpenLightBox(e[0])}}onOpenLightBox(e){k.open(this,e,this.state.elements)}initUploader(){const e=this,t=d(e.o.uploader||{},b.defaultOptions.uploader),uploadHandler=()=>this.loadingManager.loadItems();e.uploader=e.getInstance("Uploader",t),e.uploader.bind(e.panel.container,uploadHandler,e.status),e.e.on("bindUploader.filebrowser",(t=>{e.uploader.bind(t,uploadHandler,e.status)}))}destruct(){this.removeGlobalListeners(),this.header.destruct(),this.panel.destruct(),super.destruct()}fullFillOptions(){["getLocalFileByUrl","crop","resize","create","fileMove","folderMove","fileRename","folderRename","fileRemove","folderRemove","folder","items","permissions"].forEach((e=>{null!=this.options[e]&&(this.options[e]=d(this.options[e],this.o.ajax))}))}};e([h],D.prototype,"status",null),e([l],D.prototype,"progressbar",null),e([p(":resize",{context:window})],D.prototype,"onResizeWindow",null),e([p(["state.currentPath","state.currentSource"])],D.prototype,"onChangePath",null),e([p("state.theme")],D.prototype,"onChangeTheme",null),e([p(":toggleSettings.filebrowser")],D.prototype,"onToggleSettings",null),e([h],D.prototype,"onKeyPress",null),e([h],D.prototype,"removeGlobalListeners",null),e([p(":fileRemove.filebrowser")],D.prototype,"onFileRemove",null),e([p(":edit.filebrowser")],D.prototype,"onFileEdit",null),e([p(":folderRename.filebrowser")],D.prototype,"onFolderRename",null),e([p(":folderRemove.filebrowser")],D.prototype,"onFolderRemove",null),e([p(":folderCreate.filebrowser")],D.prototype,"onFolderCreate",null),e([p(":fileRename.filebrowser")],D.prototype,"onFileRename",null),e([p(":select.filebrowser")],D.prototype,"onChooseItems",null),e([p(":openLightBox.filebrowser")],D.prototype,"onOpenLightBox",null),D=e([m,c(v)],D);export{D as FileBrowserPro};Object.defineProperty(L.modules,"FileBrowserPro",{value:D,writable:!1,enumerable:!0,configurable:!0});
@@ -0,0 +1,69 @@
1
+ /*!
2
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
+ * See LICENSE.md in the project root for license information.
4
+ * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
+ */
6
+ import type { IDialogOptions, IDictionary, IFileBrowser, IFileBrowserCallBackData, IFileBrowserOptions, IFileBrowserState, IObservable, Nullable } from "../../types";
7
+ import type { ContextMenuManager } from "./helpers/context-menu";
8
+ import type { LoadingManager } from "./helpers/loading-manager";
9
+ import type { PersistentStore } from "./helpers/persistent-store";
10
+ import type { StateManager } from "./helpers/state-manager";
11
+ import type { UIBrowserPanel } from "./ui/panel/panel";
12
+ import type { IViewOptionsPro } from "./types/view";
13
+ export interface IFileBrowserStatePro extends IFileBrowserState {
14
+ theme: string;
15
+ onSelectCallBack: Nullable<(data: IFileBrowserCallBackData) => void>;
16
+ showSideBar: boolean;
17
+ showSettings: boolean;
18
+ showFavorites: boolean;
19
+ showPreview: boolean;
20
+ lastSelectedIndex: number;
21
+ withFolders: boolean;
22
+ foldersPosition: 'top' | 'bottom' | 'default';
23
+ progress: number;
24
+ info: string;
25
+ metaInfo: Nullable<IDictionary>;
26
+ tileSize: 'xsmall' | 'small' | 'default' | 'large' | 'xlarge';
27
+ favorites: IFileBrowserState['activeElements'];
28
+ tree: IFileBrowserTreeItemPro[];
29
+ }
30
+ // @ts-ignore
31
+ export interface IFileBrowserOptionsPro extends IFileBrowserOptions, IDialogOptions, IViewOptionsPro {
32
+ toolbarButtons: IFileBrowserOptions['buttons'];
33
+ maxWidth: number;
34
+ previewOfficeURL: string;
35
+ license: string;
36
+ }
37
+ export interface IFileBrowserTreeItemPro {
38
+ type: 'file' | 'directory' | 'source';
39
+ name: string;
40
+ title?: string;
41
+ isCollapsed?: boolean;
42
+ isActive?: boolean;
43
+ path: string;
44
+ sourceName: string;
45
+ children: IFileBrowserTreeItemPro[];
46
+ }
47
+ export interface IFileBrowserPro extends IFileBrowser<IFileBrowserOptionsPro> {
48
+ readonly state: IFileBrowserStatePro & IObservable;
49
+ readonly persistent: PersistentStore;
50
+ readonly loadingManager: LoadingManager;
51
+ readonly stateManager: StateManager;
52
+ readonly historyManager: IHistoryManager;
53
+ readonly contextMenuManager: ContextMenuManager;
54
+ readonly panel: UIBrowserPanel;
55
+ }
56
+ export interface IHistoryManager {
57
+ canNext(): boolean;
58
+ canPrevious(): boolean;
59
+ push(item: IHistoryItem): void;
60
+ next(): void;
61
+ previous(): void;
62
+ updateCurrent(): void;
63
+ }
64
+ export interface IHistoryItem {
65
+ currentPath: IFileBrowserStatePro['currentPath'];
66
+ currentSource: IFileBrowserStatePro['currentSource'];
67
+ tree: IFileBrowserStatePro['tree'];
68
+ elements: IFileBrowserStatePro['elements'];
69
+ }
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import{COMMAND_OPEN_DIALOG as o}from"./helpers/const.js";import{Config as e}from"../../config.js";e.prototype.googleMaps={saveStateInStorage:!0,useStaticImage:!1,apiUrl:"https://maps.googleapis.com/maps/api/js?key=${j.o.googleMaps.API_KEY}&libraries=geometry,places,drawing&language=${j.o.language}&callback=JoditGoogleReadyHandler",API_KEY:"AIzaSyDjnR03hxN8fo0QJ85Jkkvk2DALTh3eynY",dialog:{size:[700,700]},inlineEditorOptions:{buttons:["bold","italic","link","brush","fontsize","image"]},map:{type:"roadmap",layer:"default",center:"auto",defaultCenter:[-34.397,150.644],defaultZoom:10,zoom:10,size:[500,400],defaultStates:{polyline:{strokeColor:"#5ba4f3",strokeWeight:3},polygon:{strokeColor:"#417706",fillColor:"#5b9302",strokeWeight:1,fillOpacity:.5},marker:{},text:{},circle:{strokeColor:"#da767c",fillColor:"#f34ca8",strokeWeight:1,fillOpacity:.5}}}},e.prototype.controls.googleMaps={tooltip:"Google Maps",icon:"map",command:o};const gmButton=o=>({icon:`edit-${o}`,isActive:e=>e.buffer.get("createMode.gm")===o,exec:e=>{e.e.fire("changeCreateMode.gm",o)}});e.prototype.controls.gm={hand:gmButton("hand"),marker:gmButton("marker"),polyline:gmButton("polyline"),polygon:gmButton("polygon"),circle:gmButton("circle"),text:gmButton("text")};
6
+ import{Config as o}from"../../config.js";import{COMMAND_OPEN_DIALOG as e}from"./helpers/const.js";o.prototype.googleMaps={saveStateInStorage:!0,useStaticImage:!1,apiUrl:"https://maps.googleapis.com/maps/api/js?key=${j.o.googleMaps.API_KEY}&libraries=geometry,places,drawing&language=${j.o.language}&callback=JoditGoogleReadyHandler",API_KEY:"AIzaSyDjnR03hxN8fo0QJ85Jkkvk2DALTh3eynY",dialog:{size:[700,700]},inlineEditorOptions:{buttons:["bold","italic","link","brush","fontsize","image"]},map:{type:"roadmap",layer:"default",center:"auto",defaultCenter:[-34.397,150.644],defaultZoom:10,zoom:10,size:[500,400],defaultStates:{polyline:{strokeColor:"#5ba4f3",strokeWeight:3},polygon:{strokeColor:"#417706",fillColor:"#5b9302",strokeWeight:1,fillOpacity:.5},marker:{},text:{},circle:{strokeColor:"#da767c",fillColor:"#f34ca8",strokeWeight:1,fillOpacity:.5}}}},o.prototype.controls.googleMaps={tooltip:"Google Maps",icon:"map",command:e};const gmButton=o=>({icon:`edit-${o}`,isActive:e=>e.buffer.get("createMode.gm")===o,exec:e=>{e.e.fire("changeCreateMode.gm",o)}});o.prototype.controls.gm={hand:gmButton("hand"),marker:gmButton("marker"),polyline:gmButton("polyline"),polygon:gmButton("polygon"),circle:gmButton("circle"),text:gmButton("text")};
@@ -0,0 +1,109 @@
1
+ /*!
2
+ * Jodit Editor PRO (https://xdsoft.net/jodit/)
3
+ * See LICENSE.md in the project root for license information.
4
+ * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
+ */
6
+ export type MapElementType = 'circle' | 'marker' | 'polyline' | 'polygon' | 'text';
7
+ export type CreateMode = 'hand' | MapElementType;
8
+ interface IMarkerState {
9
+ readonly type: 'marker';
10
+ readonly coordinates: [
11
+ number,
12
+ number
13
+ ];
14
+ readonly showCaption?: boolean;
15
+ readonly title?: string;
16
+ readonly text?: string;
17
+ readonly icon?: string;
18
+ }
19
+ interface IPolylineState {
20
+ readonly type: 'polyline';
21
+ readonly coordinates: number[][];
22
+ readonly strokeColor?: string;
23
+ readonly strokeWeight?: number;
24
+ readonly fillColor?: string;
25
+ }
26
+ interface IPolygonState {
27
+ readonly type: 'polygon';
28
+ readonly coordinates: number[][];
29
+ readonly strokeColor?: string;
30
+ readonly fillColor?: string;
31
+ readonly strokeWeight?: number;
32
+ readonly fillOpacity?: number;
33
+ }
34
+ interface ICircleState {
35
+ readonly type: 'circle';
36
+ readonly coordinates: [
37
+ number,
38
+ number
39
+ ];
40
+ readonly radius: number;
41
+ readonly strokeColor?: string;
42
+ readonly fillColor?: string;
43
+ readonly strokeWeight?: number;
44
+ readonly fillOpacity?: number;
45
+ }
46
+ interface ITextState {
47
+ readonly type: 'text';
48
+ readonly coordinates: [
49
+ number,
50
+ number
51
+ ];
52
+ readonly text: string;
53
+ readonly size: number;
54
+ readonly color?: string;
55
+ }
56
+ export type IUIMapElementState = IMarkerState | IPolylineState | IPolygonState | ICircleState | ITextState;
57
+ export type IGMElement = google.maps.Marker | google.maps.Polygon | google.maps.Polyline | google.maps.Circle;
58
+ export type IUIMapElement = {
59
+ readonly uid: string;
60
+ readonly type: 'marker';
61
+ readonly gme: google.maps.Marker;
62
+ state: IMarkerState;
63
+ } | {
64
+ readonly uid: string;
65
+ readonly type: 'polygon';
66
+ readonly gme: google.maps.Polygon;
67
+ state: IPolygonState;
68
+ } | {
69
+ readonly uid: string;
70
+ readonly type: 'polyline';
71
+ readonly gme: google.maps.Polyline;
72
+ state: IPolylineState;
73
+ } | {
74
+ readonly uid: string;
75
+ readonly type: 'circle';
76
+ readonly gme: google.maps.Circle;
77
+ state: ICircleState;
78
+ } | {
79
+ readonly uid: string;
80
+ readonly type: 'text';
81
+ readonly gme: google.maps.Marker;
82
+ state: ITextState;
83
+ };
84
+ export interface IUIMapBaseState {
85
+ uid: string;
86
+ center: [
87
+ number,
88
+ number
89
+ ];
90
+ size: [
91
+ number,
92
+ number
93
+ ];
94
+ zoom: number;
95
+ type: 'hybrid' | 'roadmap' | 'satellite' | 'terrain';
96
+ layer: 'default' | 'traffic' | 'transit' | 'bicycling';
97
+ controls: {
98
+ zoomControl: boolean;
99
+ mapTypeControl: boolean;
100
+ scaleControl: boolean;
101
+ streetViewControl: boolean;
102
+ rotateControl: boolean;
103
+ fullscreenControl: boolean;
104
+ };
105
+ }
106
+ export interface IUIMapState extends IUIMapBaseState {
107
+ mode: CreateMode;
108
+ elements: IUIMapElementState[];
109
+ }
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import{trim as o}from"../../core/helpers.js";import{Plugin as e}from"../../core/plugin.js";import r from"./icon.svg.js";import{Config as t}from"../../config.js";import{isEditorEmpty as s}from"../placeholder/placeholder.js";import{JoditPro as c}from"../../jodit-pro.js";t.prototype.controls.google={tooltip:"Google search",icon:r,isDisabled:o=>s(o.editor),command:"startSearch"};export class googleSearch extends e{constructor(){super(...arguments),this.buttons=[{name:"google",group:"search"}]}afterInit(e){e.registerCommand("startSearch",{exec:()=>{let r;const{s:t}=e;if(r=t.isCollapsed()?t.current()?.parentElement?.innerText:t.sel?.toString(),r){const e="https://www.google.com/search?q="+encodeURIComponent(o(r));window.open(e,"_blank")}}})}beforeDestruct(o){}}googleSearch.requires=["license"],c.plugins.add("google-search",googleSearch);
6
+ import{trim as o}from"../../core/helpers.js";import{Plugin as e}from"../../core/plugin.js";import{Config as r}from"../../config.js";import t from"./icon.svg.js";import{isEditorEmpty as s}from"../placeholder/placeholder.js";import{JoditPro as c}from"../../jodit-pro.js";r.prototype.controls.google={tooltip:"Google search",icon:t,isDisabled:o=>s(o.editor),command:"startSearch"};export class googleSearch extends e{constructor(){super(...arguments),this.buttons=[{name:"google",group:"search"}]}afterInit(e){e.registerCommand("startSearch",{exec:()=>{let r;const{s:t}=e;if(r=t.isCollapsed()?t.current()?.parentElement?.innerText:t.sel?.toString(),r){const e="https://www.google.com/search?q="+encodeURIComponent(o(r));window.open(e,"_blank")}}})}beforeDestruct(o){}}googleSearch.requires=["license"],c.plugins.add("google-search",googleSearch);
@@ -3,4 +3,4 @@
3
3
  * See LICENSE.md in the project root for license information.
4
4
  * Copyright (c) 2013-2024 Valeriy Chupurnov. All rights reserved. https://xdsoft.net/jodit/pro/
5
5
  */
6
- import{Dom as o}from"../../core/dom/dom.js";import{isArray as r}from"../../core/helpers/checker/is-array.js";import i from"./icon.svg.js";import{Config as e}from"../../config.js";e.prototype.controls.iframeEditor={icon:i,tooltip:"Iframe Editor",exec:(r,i)=>{o.isTag(i,"jodit")&&o.isTag(i.firstElementChild,"iframe")&&(i=i.firstElementChild),r.e.fire("toggleIframeEditor",o.isTag(i,"iframe")?i:null)}},r(e.prototype.popup.iframe)&&e.prototype.popup.iframe.push("iframeEditor");
6
+ import{Dom as o}from"../../core/dom/dom.js";import{isArray as r}from"../../core/helpers/checker/is-array.js";import{Config as i}from"../../config.js";import e from"./icon.svg.js";i.prototype.controls.iframeEditor={icon:e,tooltip:"Iframe Editor",exec:(r,i)=>{o.isTag(i,"jodit")&&o.isTag(i.firstElementChild,"iframe")&&(i=i.firstElementChild),r.e.fire("toggleIframeEditor",o.isTag(i,"iframe")?i:null)}},r(i.prototype.popup.iframe)&&i.prototype.popup.iframe.push("iframeEditor");
@@ -1 +1 @@
1
- import t from"./icon.svg.js";import{Config as e}from"../../config.js";e.prototype.keyboard={defaultLayoutSet:"en",showLayoutSwitcher:!0,extraKeyGroup:"other",extraKeyButtons:[],delayKeyRepeat:350,periodKeyRepeat:100,layoutList:{en:{title:"English",keys:[["` ~ ±","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 *","9 (","0 )","- _","= +","Backspace"],["Tab","q Q","w W","e E","r R","t T","y Y","u U","i I","o O","p P","[ {","] }","\\ |"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","; :","' \"","Enter"],["Shift","z Z","x X","c C","v V","b B","n N","m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},es:{title:"Español",keys:[["º ` ~","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 *","9 (","0 )","- _ |","¡ = +","Backspace"],["Tab","q Q","w W","e E","r R","t T","y Y","u U","i I","o O","p P","[ {","] }","ç Ç \\"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","ñ Ñ ; :","' \"","Enter"],["Shift","z Z","x X","c C","v V","b B","n N","m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},de:{title:"Deutsch",keys:[["` ~ ±","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 * :","9 ( {","0 ) }","- _","= +","Backspace"],["Tab","q Q","w W","e E","r R","t T","z Z","u U","i I","o O","p P","ü Ü [","] }","\\ |"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","ö Ö ;","ä Ä ' \"","Enter"],["Shift","y Y","x X","c C","v V","b B","n N","m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},ru:{title:"Русский",keys:[["` ~ ±","1 ! §",'2 @ "',"3 # :","4 $ <","5 % >","6 ^","7 &","8 *","9 (","0 )","- _","= +","Backspace"],["Tab","й Й","ц Ц","у У","к К","е Е","н Н","г Г","ш Ш","щ Щ","з З","х Х [","ъ ] {","\\ | }"],["Caps","ф Ф","ы Ы","в В","а А","п П","р Р","о О","л Л","д Д","ж Ж ;","э Э '","Enter"],["Shift","я Я","ч Ч","с С","м М","и И","т Т","ь Ь","б Б ,","ю Ю .","/ ?","Shift"],["Options","Space","Options"]]},tr:{title:"Türkçe",keys:[['" é` ~',"1 ! §",'2 @ "',"3 # :","4 $ <","5 % >","6 ^ ±","7 &","8 *","9 ( {","0 ) }","- _ [","= + ]","Backspace"],["Tab","q Q","w W","e E","r R","t T","y Y","u U","ı I","o O","p P","ğ Ğ","ü Ü",", \\ |"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","ş Ş","i̇ İ","Enter"],["Shift","z Z","x X","c C","v V","b B","n N","m M","ö Ö <","ç Ç >",". / ?","Shift"],["Options","Space","Options"]]},iw:{title:"Hebrew",keys:[["` ~ ±","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 *","9 (","0 )","- _","= +","Backspace"],["Tab","/ q Q","' w W","ק e E","ר r R","א t T","ט y Y","ו u U","ן i I","ם o O","פ p P","[ {","] }","\\ |"],["Caps","ש a A","ד s S","ג d D","כ f F","ע g G","י h H","ח j J","ל k K","ך l L","ף ; :","' \"","Enter"],["Shift","ז z Z","ס x X","ב c C","ה v V","נ b B","מ n N","צ m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},tata:{title:"Tata",keys:[["һ Һ` ~","1 ! §",'2 @ "',"3 # :","4 $ <","5 % >","6 ^ ±","7 &","8 *","9 ( {","0 )","- _","= +","Backspace"],["Tab","й Й","ө Ө","у У","к К","е Е","н Н","г Г","ш Ш","ә Ә","з З","х Х [","ү Ү ]","\\ | }"],["Caps","ф Ф","ы Ы","в В","а А","п П","р Р","о О","л Л","д Д","ң Ң ;","э Э '","Enter"],["Shift","я Я","ч Ч","с С","м М","и И","т Т","җ Җ","б Б ,","ю Ю .","ґ Ґ /","Shift"],["Options","Space","Options"]]}},layoutSwitchList:["en","es","de","ru","tr","iw","tata"],keySize:32,layout:[[1,1,1,1,1,1,1,1,1,1,1,1,1,2],[1.5,1,1,1,1,1,1,1,1,1,1,1,1,1.5],[1.8,1,1,1,1,1,1,1,1,1,1,1,2.2],[2.5,1,1,1,1,1,1,1,1,1,1,2.5],[3.5,9,3.5]]},e.prototype.controls.keyboard={tooltip:"Keyboard",icon:t,isActive:t=>Boolean(t.e.fire("isKeyboardOpened")),command:"toggleKeyboard"},e.prototype.controls.extraKeyboardButtons={};
1
+ import{Config as t}from"../../config.js";import e from"./icon.svg.js";t.prototype.keyboard={defaultLayoutSet:"en",showLayoutSwitcher:!0,extraKeyGroup:"other",extraKeyButtons:[],delayKeyRepeat:350,periodKeyRepeat:100,layoutList:{en:{title:"English",keys:[["` ~ ±","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 *","9 (","0 )","- _","= +","Backspace"],["Tab","q Q","w W","e E","r R","t T","y Y","u U","i I","o O","p P","[ {","] }","\\ |"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","; :","' \"","Enter"],["Shift","z Z","x X","c C","v V","b B","n N","m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},es:{title:"Español",keys:[["º ` ~","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 *","9 (","0 )","- _ |","¡ = +","Backspace"],["Tab","q Q","w W","e E","r R","t T","y Y","u U","i I","o O","p P","[ {","] }","ç Ç \\"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","ñ Ñ ; :","' \"","Enter"],["Shift","z Z","x X","c C","v V","b B","n N","m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},de:{title:"Deutsch",keys:[["` ~ ±","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 * :","9 ( {","0 ) }","- _","= +","Backspace"],["Tab","q Q","w W","e E","r R","t T","z Z","u U","i I","o O","p P","ü Ü [","] }","\\ |"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","ö Ö ;","ä Ä ' \"","Enter"],["Shift","y Y","x X","c C","v V","b B","n N","m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},ru:{title:"Русский",keys:[["` ~ ±","1 ! §",'2 @ "',"3 # :","4 $ <","5 % >","6 ^","7 &","8 *","9 (","0 )","- _","= +","Backspace"],["Tab","й Й","ц Ц","у У","к К","е Е","н Н","г Г","ш Ш","щ Щ","з З","х Х [","ъ ] {","\\ | }"],["Caps","ф Ф","ы Ы","в В","а А","п П","р Р","о О","л Л","д Д","ж Ж ;","э Э '","Enter"],["Shift","я Я","ч Ч","с С","м М","и И","т Т","ь Ь","б Б ,","ю Ю .","/ ?","Shift"],["Options","Space","Options"]]},tr:{title:"Türkçe",keys:[['" é` ~',"1 ! §",'2 @ "',"3 # :","4 $ <","5 % >","6 ^ ±","7 &","8 *","9 ( {","0 ) }","- _ [","= + ]","Backspace"],["Tab","q Q","w W","e E","r R","t T","y Y","u U","ı I","o O","p P","ğ Ğ","ü Ü",", \\ |"],["Caps","a A","s S","d D","f F","g G","h H","j J","k K","l L","ş Ş","i̇ İ","Enter"],["Shift","z Z","x X","c C","v V","b B","n N","m M","ö Ö <","ç Ç >",". / ?","Shift"],["Options","Space","Options"]]},iw:{title:"Hebrew",keys:[["` ~ ±","1 ! §","2 @","3 #","4 $","5 %","6 ^","7 &","8 *","9 (","0 )","- _","= +","Backspace"],["Tab","/ q Q","' w W","ק e E","ר r R","א t T","ט y Y","ו u U","ן i I","ם o O","פ p P","[ {","] }","\\ |"],["Caps","ש a A","ד s S","ג d D","כ f F","ע g G","י h H","ח j J","ל k K","ך l L","ף ; :","' \"","Enter"],["Shift","ז z Z","ס x X","ב c C","ה v V","נ b B","מ n N","צ m M",", <",". >","/ ?","Shift"],["Options","Space","Options"]]},tata:{title:"Tata",keys:[["һ Һ` ~","1 ! §",'2 @ "',"3 # :","4 $ <","5 % >","6 ^ ±","7 &","8 *","9 ( {","0 )","- _","= +","Backspace"],["Tab","й Й","ө Ө","у У","к К","е Е","н Н","г Г","ш Ш","ә Ә","з З","х Х [","ү Ү ]","\\ | }"],["Caps","ф Ф","ы Ы","в В","а А","п П","р Р","о О","л Л","д Д","ң Ң ;","э Э '","Enter"],["Shift","я Я","ч Ч","с С","м М","и И","т Т","җ Җ","б Б ,","ю Ю .","ґ Ґ /","Shift"],["Options","Space","Options"]]}},layoutSwitchList:["en","es","de","ru","tr","iw","tata"],keySize:32,layout:[[1,1,1,1,1,1,1,1,1,1,1,1,1,2],[1.5,1,1,1,1,1,1,1,1,1,1,1,1,1.5],[1.8,1,1,1,1,1,1,1,1,1,1,1,2.2],[2.5,1,1,1,1,1,1,1,1,1,1,2.5],[3.5,9,3.5]]},t.prototype.controls.keyboard={tooltip:"Keyboard",icon:e,isActive:t=>Boolean(t.e.fire("isKeyboardOpened")),command:"toggleKeyboard"},t.prototype.controls.extraKeyboardButtons={};